@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;550;600;650;700&family=Manrope:wght@500;600;650;700;800&display=swap');
:root{--bg:#f9f9f8;--ink:#4a4437;--line:#e8e6e1;--accent:#8f7e5e;--font:'DM Sans',sans-serif;--heading:'Manrope',sans-serif}
*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--bg);font:13px var(--font)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none}button:hover{filter:brightness(.96)}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #b0a682;outline-offset:3px}[hidden]{display:none!important}svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}
.app-header{height:66px;background:#fff;border-bottom:1px solid var(--line);padding:0 28px;display:flex;align-items:center;gap:48px}.brand{display:flex;align-items:center;gap:9px;color:#4a4437;text-decoration:none;font:800 28px var(--heading);letter-spacing:-1.5px}.brand-mark{width:36px;height:36px;display:grid;place-items:center;flex-shrink:0;color:var(--accent)}.brand-mark svg{width:100%;height:100%;stroke-width:2;fill:none;stroke:currentColor}.brand-mark .sun-rays{stroke-width:1.8}.brand-two{color:#897858}.brand-dot{color:#827960}.app-header nav{display:flex;align-self:stretch;gap:26px}.nav-item{font-size:12px;color:#787058;padding:0 2px;border-bottom:2px solid transparent}.nav-item.active{color:var(--accent);border-color:var(--accent);font-weight:600}.header-end{margin-left:auto;display:flex;align-items:center;gap:18px}.local-badge{font-size:11px;display:flex;align-items:center;gap:7px;color:#7f775e}.local-dot{display:inline-block;flex-shrink:0;width:5px;height:5px;background:#ffffff;border-radius:50%}.icon-button{width:30px;height:30px;display:inline-grid;place-items:center;border-radius:5px;color:#7c715c}.icon-button:hover{background:#ffffff}.icon-button svg{width:17px;height:17px}
main{max-width:1800px;margin:auto;padding:0 26px}.workshop-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 0 22px}.workshop-heading h1{font:650 23px/1.4 var(--heading);letter-spacing:-.7px;margin:0 0 5px}.workshop-heading p{color:#7c745c;font-size:12px;margin:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 13px;border:1px solid transparent;border-radius:5px;min-height:35px;font-size:11px;font-weight:550;white-space:nowrap}.button svg{width:14px;height:14px}.secondary{background:#fff;border-color:#e3e8ed;color:#797159}.primary{background:#ffffff;border-color:#e3e8ed;color:#fff}.editor-shell{border:1px solid #e3e8ed;border-radius:8px;background:#fff;overflow:hidden;box-shadow:0 3px 12px #243d5006}.flow-toolbar{height:70px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;gap:15px;background:#fff;border-bottom:1px solid var(--line)}.flow-name-wrap{display:flex;align-items:center;gap:12px;min-width:0}.flow-logo{width:34px;height:34px;background:#ffffff;color:#7c745c;border:1px solid #e3e8ed;border-radius:6px;display:grid;place-items:center}.flow-logo svg{width:18px;height:18px}.flow-name-wrap input{display:block;width:275px;max-width:100%;background:none;border:0;padding:0 0 5px;font-size:13px;font-weight:600}.save-status{font-size:10px;color:#847c62;display:flex;align-items:center;gap:5px}.flow-actions{display:flex;align-items:center;gap:8px}.more-menu{position:relative}.more-menu>summary{list-style:none;font-size:20px;line-height:1;padding-bottom:7px}.more-menu>summary::-webkit-details-marker{display:none}.menu-popover{position:absolute;right:0;top:36px;width:190px;padding:5px;background:#fff;border:1px solid var(--line);border-radius:6px;box-shadow:0 8px 25px #243d501c;z-index:15}.menu-popover button{display:block;text-align:left;font-size:11px;padding:10px;width:100%;border-radius:3px}.menu-popover button:hover{background:#ffffff}.editor-body{display:flex;height:460px;position:relative}.palette{width:185px;flex-shrink:0;display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--line);background:#fbfaf9;padding:17px 12px}.panel-title{font-size:12px;font-weight:600;margin-bottom:13px}.search-box{border:1px solid #e3e8ed;background:#fff;border-radius:4px;padding:7px;display:flex;align-items:center;gap:5px;margin-bottom:10px}.search-box svg{width:13px;height:13px;color:#837b60}.search-box input{border:0;background:none;min-width:0;width:100%;outline:none;font-size:11px}.search-box input::placeholder{color:#888064}#palette-list{overflow-y:auto;flex:1;min-height:0}.palette-label{font-size:9px;letter-spacing:.5px;font-weight:500;color:#847d62;margin:15px 3px 5px}.palette-block{display:flex;align-items:center;gap:9px;text-align:left;width:100%;padding:8px 4px;border-radius:5px}.palette-block:hover{background:#ffffff}.palette-block strong{font-size:12px;font-weight:500;display:block}.palette-block .plus{font-size:16px;color:#877f64;margin-left:auto}.block-icon{width:28px;height:28px;flex-shrink:0;display:grid;place-items:center;border-radius:5px}.block-icon svg{width:15px;height:15px}.source{color:#80755e;background:#ffffff}.map,.filter,.merge,.limit{color:#7c735b;background:#ffffff}.output{color:#766d57;background:#ffffff}.xslt,.script{color:#7d725c;background:#ffffff}.palette-advanced{margin-top:13px;border-top:1px solid #e3e8ed;padding-top:12px}.palette-advanced>summary{font-size:10px;color:#837b60;cursor:pointer}.palette-advanced .palette-block strong{font-size:11px}.palette-tip{font-size:10px;line-height:1.7;color:#877e63;border-top:1px solid #e3e8ed;padding-top:12px;margin-top:12px;flex-shrink:0}.palette-empty{font-size:11px;color:#80785f;padding:10px 3px;line-height:1.7}
.canvas-column{flex:1;min-width:0;display:flex;flex-direction:column;background:#fefdfc}.canvas-topline{display:flex;justify-content:space-between;align-items:center;height:39px;padding:0 16px;gap:10px;border-bottom:1px solid #e3e8ed;color:#847c61;font-size:10px;background:#fdfdfc;flex-shrink:0}.text-button{font-size:10px;color:#80795f;display:flex;align-items:center;gap:5px;padding:5px}.text-button svg{width:11px;height:11px}.canvas-viewport{flex:1;min-height:0;position:relative;overflow:auto;overscroll-behavior:contain;background-color:#fefdfc;background-image:radial-gradient(#ffffff .8px,transparent .8px);background-size:18px 18px}.canvas{position:relative;transform-origin:top left;width:1040px;height:400px}.connections{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.connection{stroke:#c1b9a3;stroke-width:3;fill:none;pointer-events:stroke;cursor:pointer;stroke-linecap:round;filter:drop-shadow(0 1px 0 #fff)}.connection:hover{stroke:#c4b584;stroke-width:5}.connection-dot{fill:#beb59c;stroke:#fff;stroke-width:1}.node{position:absolute;width:215px;border:1px solid #e3e8ed;border-radius:6px;background:#fff;box-shadow:0 3px 7px #243d500e;touch-action:none;user-select:none}.node.selected{border-color:#e3e8ed;box-shadow:0 0 0 3px #243d5026,0 4px 12px #243d5015}.node.ran{border-color:#e3e8ed}.node-head{padding:10px 11px;display:flex;align-items:center;gap:8px;background:linear-gradient(#ffffff,#ffffff);border-bottom:1px solid #e3e8ed;border-radius:5px 5px 0 0;cursor:grab}.node-head:active{cursor:grabbing}.node-head strong{font-size:12px;font-weight:600;color:#837a5d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.node-head .block-icon{width:22px;height:22px;background:#ffffff65;border:1px solid #e3e8ed;border-radius:4px;color:#837b60}.node-head .block-icon svg{width:13px;height:13px}.node-step{margin-left:auto;color:#8b8266;font-size:9px}.node[data-type="source"] .node-head{background:linear-gradient(#ffffff,#ffffff);border-color:#e3e8ed}.node[data-type="source"] .node-head strong{color:#837961}.node[data-type="source"]{border-color:#e3e8ed}.node[data-type="source"] .node-head .block-icon{color:#8a8066;border-color:#e3e8ed}.node[data-type="output"] .node-head{background:linear-gradient(#ffffff,#ffffff);border-color:#e3e8ed}.node[data-type="output"] .node-head strong{color:#786e59}.node[data-type="output"]{border-color:#e3e8ed}.node[data-type="output"] .node-head .block-icon{color:#80745e;border-color:#e3e8ed}.node-detail{padding:15px 13px 17px;font-size:11px;line-height:1.7;min-height:70px;color:#837c61;background:#fefdfb;border-radius:0 0 5px 5px}.node-detail strong{display:block;font-size:12px;color:#7a6f5b;font-weight:500;margin-top:2px}.node-status{position:absolute;right:8px;bottom:6px;font-size:8px;color:#7d765c}.port{position:absolute;top:50%;transform:translateY(-50%);width:15px;height:15px;padding:0;border:2px solid #e3e8ed;background:linear-gradient(#fff,#ffffff);box-shadow:0 0 0 3px #fff;border-radius:50%;z-index:2}.port.in{left:-8px}.port.out{right:-8px}.port:hover,.port.connecting{background:#ffffff;border-color:#e3e8ed;box-shadow:0 0 0 5px #243d5050}.canvas-bottom{height:34px;display:flex;align-items:center;justify-content:space-between;padding:0 13px;color:#867e63;font-size:9px;background:#fcfcfb;border-top:1px solid #e3e8ed;flex-shrink:0}.zoom-controls{display:flex;align-items:center;gap:9px}.zoom-controls button{font-size:16px;color:#837a60;padding:2px}.zoom-controls svg{width:12px;height:12px}.zoom-controls span{min-width:34px;text-align:center;font-size:9px}
.inspector{position:absolute;top:10px;right:10px;bottom:10px;width:265px;background:#fff;border:1px solid #e3e8ed;border-radius:7px;padding:17px;overflow:auto;z-index:7;box-shadow:-7px 5px 30px #243d5014}.inspector-heading{display:flex;align-items:center;justify-content:space-between;font-size:11px;font-weight:600;margin-bottom:20px;color:#837a60}.inspector-heading button{font-size:20px;color:#898266;line-height:1}.selected-block{display:flex;align-items:center;gap:9px;margin-bottom:17px}.selected-block strong{font-size:13px;font-weight:600}.selected-block small{display:block;color:#847c61;font-size:10px;margin-top:4px}.settings-label{font-size:11px;color:#81795f;display:block;margin:16px 0 7px}.settings-input{width:100%;border:1px solid #e3e8ed;border-radius:4px;padding:9px;background:#fdfdfc;font-size:12px;min-width:0}.settings-input.code{font:10px/1.7 Consolas,monospace;min-height:110px;resize:vertical}.settings-note{color:#877e63;font-size:11px;line-height:1.8;margin:10px 0}.field-option{display:flex;align-items:center;gap:9px;padding:9px 0;font-size:12px;border-bottom:1px solid #e3e8ed;cursor:pointer}.field-option input{accent-color:#bfb290;width:14px;height:14px}.advanced-settings{margin-top:20px;padding-top:14px;border-top:1px solid #e3e8ed}.advanced-settings>summary{font-size:10px;color:#847c62;cursor:pointer}.security-heading{display:flex;align-items:center;gap:6px;font-size:11px;margin:18px 0 10px;color:#80785e}.security-heading svg{width:13px;height:13px}.policy-row{display:flex;justify-content:space-between;align-items:center;font-size:10px;margin:12px 0;color:#837a60}.policy-row select{font-size:10px;border:1px solid #e3e8ed;border-radius:4px;background:#fdfdfb;padding:5px}.security-note{font-size:10px;line-height:1.7;color:#877f64}.delete-button{color:#7e755d;font-size:10px;margin-top:20px;padding:5px 0}
.console{border-top:1px solid var(--line)}.console-toolbar{height:43px;border-bottom:1px solid #e3e8ed;display:flex;align-items:center;justify-content:space-between;padding:0 18px;gap:10px}.console-tabs{display:flex;align-items:stretch;height:100%;gap:23px}.console-tabs button{font-size:11px;border-bottom:2px solid transparent;color:#877e64;display:flex;align-items:center;gap:7px;padding:0}.console-tabs button.selected{color:#7d745c;border-color:#e3e8ed}.tab-count{background:#ffffff;color:#857e63;padding:2px 5px;font-size:8px;border-radius:3px}.console-meta{color:#877e63;font-size:10px;display:flex;align-items:center;gap:7px}.console-content{height:180px;overflow:auto;background:#fff}.console-content pre{font:11px/1.8 Consolas,monospace;margin:0;padding:16px 20px;color:#7f765e;white-space:pre-wrap}.empty-result{height:100%;display:flex;justify-content:center;align-items:center;gap:14px;color:#898266}.empty-symbol{font:35px Georgia;color:#8f826a}.empty-result strong{font-size:12px;font-weight:500;color:#867d63}.empty-result p{font-size:11px;margin:6px 0 0;color:#8e8569}.result-table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}.result-table th{position:sticky;top:0;background:#fdfcfa;font-size:10px;font-weight:500;color:#857c62;padding:10px 23px;border-bottom:1px solid #e3e8ed}.result-table td{padding:11px 23px;border-bottom:1px solid #e3e8ed;color:#80775e}.result-table tr:last-child td{border:0}.log-row{display:flex;align-items:center;gap:10px;padding:12px 20px;border-bottom:1px solid #e3e8ed;font-size:11px;color:#887f65}.log-row strong{font-weight:500;color:#837a61}.log-row span:last-child{margin-left:auto}.error-message{padding:20px;color:#817a5f;font-size:12px}.page-footer{padding:15px 2px 20px;display:flex;align-items:center;justify-content:space-between;gap:15px;color:#888064;font-size:10px}.page-footer>span:first-child{display:flex;align-items:center;gap:6px}
#secondary-view{padding:35px 0}.secondary-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px;gap:20px}.secondary-heading h1{font:650 25px var(--heading);letter-spacing:-.6px;margin:0 0 10px}.secondary-heading p{font-size:12px;color:#847b62}.eyebrow{font-size:9px;color:#8b8366;letter-spacing:.6px;margin-bottom:10px}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.template-card{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:25px;background:#fff;border:1px solid #e3e8ed;border-radius:7px;min-height:260px}.template-card:hover{border-color:#e3e8ed}.template-graphic{display:flex;align-items:center;gap:8px;margin:5px 0 25px}.template-graphic .block-icon{width:35px;height:35px}.template-graphic>span:not(.block-icon){color:#8d8468}.template-card h2{font:600 16px var(--heading);margin:0 0 10px}.template-card p{font-size:12px;line-height:1.8;color:#847b61;margin:0 0 22px}.template-link{font-size:11px;color:#847d62;margin-top:auto}.service-card{padding:25px;background:#fff;border:1px solid #e3e8ed;border-radius:7px;max-width:800px}.service-card h2{font:600 19px var(--heading);margin:12px 0}.service-card p{font-size:12px;color:#847b61;line-height:1.8}.endpoint{display:flex;align-items:center;gap:12px;border:1px solid #e3e8ed;background:#fcfbf9;padding:14px;border-radius:5px;margin:20px 0}.endpoint strong{font-size:9px;color:#857962;background:#ffffff;padding:4px;border-radius:3px}.endpoint a{font:12px Consolas,monospace;color:#837b61;word-break:break-all}.endpoint button{margin-left:auto}.activity-empty{text-align:center;padding:50px 25px;border:1px dashed #e3e8ed;border-radius:7px;color:#887c65}.activity-empty h2{font:600 20px var(--heading)}.activity-empty p{font-size:12px;margin-bottom:20px}
dialog{width:500px;max-width:calc(100% - 25px);border:1px solid #e3e8ed;border-radius:9px;padding:28px;color:#80775e;box-shadow:0 25px 100px #243d5030}dialog::backdrop{background:#ffffff55;backdrop-filter:blur(3px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:.8px;color:#8b8366}dialog h2{font:600 26px/1.4 var(--heading);letter-spacing:-.8px;color:#847b61}dialog ol{padding-left:18px;font-size:12px;line-height:1.8}dialog li{padding:6px 0}dialog li strong{font-weight:600;color:#857e63}dialog p{font-size:11px;line-height:1.8;color:#897c65}.shortcut{margin-top:22px;padding-top:16px;border-top:1px solid #e3e8ed;font-size:9px;display:flex;justify-content:space-between;gap:15px;color:#8b7e66}.toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%,15px);background:#ffffff;color:#fff;padding:12px 20px;border-radius:6px;box-shadow:0 5px 22px #243d5020;font-size:12px;z-index:100;opacity:0;pointer-events:none;transition:.2s;max-width:calc(100vw - 25px)}.toast.visible{opacity:1;transform:translate(-50%,0)}
@media(min-height:900px){.editor-body{height:540px}.console-content{height:200px}}
@media(max-width:1000px){main{padding:0 18px}.app-header{padding:0 20px}.palette{width:160px}.workshop-heading h1{font-size:21px}.flow-name-wrap input{width:245px}.editor-body{height:480px}.canvas-topline{font-size:9px}}
@media(max-width:650px){.app-header{height:58px;padding:0 13px;gap:12px}.brand{font-size:21px;gap:5px}.brand-mark{width:30px;height:30px}.app-header nav{gap:12px}.nav-item{font-size:10px}.header-end{gap:2px}.local-badge{display:none}.icon-button{width:24px}.workshop-heading{padding:20px 0 17px;align-items:flex-start}.workshop-heading h1{font-size:19px;max-width:230px}.workshop-heading p{font-size:11px}.workshop-heading>.button{font-size:0;padding:8px;min-height:31px}.workshop-heading>.button svg{width:15px;height:15px}main{padding:0 10px}.flow-toolbar{height:auto;padding:13px;flex-wrap:wrap;gap:13px}.flow-logo{display:none}.flow-name-wrap input{width:245px;font-size:12px}.save-status{font-size:9px}.flow-actions{width:100%;justify-content:flex-end;gap:6px}.button{font-size:10px;padding:8px 11px;min-height:32px}.palette{width:48px;padding:12px 7px}.panel-title,.search-box,.palette-label,.palette-tip,.palette-block>span:not(.block-icon){display:none}.palette-block{padding:7px 0;justify-content:center}.palette-block .block-icon{width:28px;height:28px}.palette-advanced>summary{font-size:0;list-style:none;text-align:center}.palette-advanced>summary::after{content:'···';font-size:17px}.palette-advanced>summary::-webkit-details-marker{display:none}.canvas-topline{height:36px;padding:0 9px;font-size:8px;align-items:center}.canvas-topline>span{max-width:165px;line-height:1.6}.text-button{font-size:9px;padding:3px}.text-button svg{display:none}.editor-body{height:410px}.inspector{width:min(265px,calc(100% - 20px));right:6px;top:6px;bottom:6px;padding:15px}.console-content{height:185px}.console-toolbar{padding:0 13px}.console-tabs{gap:18px}.console-tabs button{font-size:10px}.console-meta{font-size:8px}.canvas-bottom{padding:0 9px;font-size:8px}.zoom-controls{gap:7px}.empty-result{padding:20px;gap:9px}.empty-result strong{font-size:11px}.empty-result p{font-size:10px}.empty-symbol{font-size:30px}.result-table th,.result-table td{padding:10px 13px;font-size:10px}.page-footer{font-size:9px}.page-footer>span:last-child{display:none}.card-grid{grid-template-columns:1fr}.secondary-heading h1{font-size:22px}.secondary-heading>.button{font-size:0;padding:8px}.secondary-heading>.button svg{width:14px}.endpoint{flex-wrap:wrap}.service-card{padding:18px}.shortcut{flex-direction:column}.log-row{font-size:10px;gap:7px}}

.node.reversed .port.in{left:auto;right:-8px}.node.reversed .port.out{right:auto;left:-8px}.connection{stroke:#b1a893}.node-head strong{color:#847b5e}.node-detail strong{color:#7d745c}.node[data-type=source] .node-head strong{color:#91866b}.node[data-type=output] .node-head strong{color:#837860}
.palette-block{padding:5px 4px}.palette-block .block-icon{width:26px;height:26px}.palette-label{margin-top:11px;margin-bottom:4px}.palette-tip{font-size:9px;padding-top:9px;margin-top:9px}.node-head strong{font-size:13px}.result-table td{color:#827b60}.console-tabs button.selected{color:#847b5e}.palette-advanced{padding-top:10px;margin-top:10px}
.connection-hit{fill:none;stroke:transparent;stroke-width:18;pointer-events:stroke;cursor:pointer}.connection{pointer-events:none}.connection-hit:hover + .connection,.connection-hit:focus + .connection{stroke:#a9966c;stroke-width:4}.connection-hit:focus{outline:none}
.example-story{display:flex;align-items:center;justify-content:space-between;gap:25px;margin:0 0 22px;padding:24px 28px;border:1px solid #e3e8ed;border-radius:8px;background:linear-gradient(110deg,#ffffff 0%,#faf9f8 60%,#ffffff 100%)}
.example-kicker{font-size:8px;letter-spacing:1.4px;font-weight:600;color:#817760}.example-intro h2{font:700 25px/1.3 var(--heading);letter-spacing:-.8px;margin:10px 0 8px;color:#5d5744}.example-intro h2>span{font:500 13px var(--font);letter-spacing:0;display:block;margin-top:5px;color:#9c9179}.example-intro p{font-size:11px;color:#81775f;line-height:1.7;margin:0;max-width:440px}.example-tags{display:flex;flex-wrap:wrap;gap:15px;margin-top:14px;font-size:8px;color:#81795f}.example-tags>span{display:flex;align-items:center;gap:5px}.security-tag{color:#91896c!important}.example-route{display:flex;gap:14px;align-items:center;flex-shrink:0}.format-stamp,.transform-stamp{width:76px;height:72px;border:1px solid #e3e8ed;border-radius:8px;background:#fffc;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font:600 20px var(--heading);color:#81755f;box-shadow:0 3px 8px #243d5005}.format-stamp small,.transform-stamp small{font:500 6px var(--font);letter-spacing:1px;color:#81775f}.transform-stamp{transform:rotate(-5deg);background:#ffffff;border-color:#e3e8ed;color:#887d58}.json-stamp{background:#ffffff;border-color:#e3e8ed;color:#81775f}.route-arrow{font:20px Georgia;color:#83785e}.live-example .editor-body{height:560px}.live-example .console-content{height:360px}.live-example .palette{width:175px}.live-example .node[data-type=xslt] .node-head{background:linear-gradient(#ffffff,#ffffff)}.live-example .node[data-type=sort] .node-head{background:linear-gradient(#ffffff,#ffffff)}.sort{background:#ffffff;color:#81765f}.source-note{padding:12px 20px;font-size:10px;background:#ffffff;border-bottom:1px solid #e3e8ed;color:#817860}.source-note a,.inline-link{color:#83785e;font-size:10px;text-decoration:none}.inline-link:hover,.source-note a:hover{text-decoration:underline}.page-footer a{color:inherit;text-decoration:none}.energy-result{padding:22px 25px}.energy-result-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.energy-result-heading h2{font:600 17px var(--heading);letter-spacing:-.3px;margin:7px 0;color:#787059}.energy-result-heading p{font-size:10px;color:#81785f;margin:0}.result-total{font:600 28px var(--heading);color:#867a5b;text-align:right}.result-total small{display:block;font:9px var(--font);color:#81785f;margin-top:4px}.energy-bars{display:grid;gap:14px}.energy-bar-row{display:grid;grid-template-columns:32px 95px 1fr 70px;align-items:center;gap:12px}.country-code{width:32px;height:29px;background:#ffffff;border:1px solid #e3e8ed;color:#847a5c;border-radius:5px;display:grid;place-items:center;font-size:8px;font-weight:600;letter-spacing:.6px}.country-label{font-size:12px;color:#968971}.country-label small{display:block;font-size:8px;color:#837a5d;margin-top:4px}.energy-track{height:9px;background:#ffffff;border-radius:3px;overflow:hidden}.energy-track>span{display:block;height:100%;border-radius:3px;background:linear-gradient(90deg,#ffffff,#ffffff)}.energy-bar-row:nth-child(1) .energy-track>span{background:linear-gradient(90deg,#ffffff,#ffffff)}.energy-bar-row>strong{font:600 18px var(--heading);color:#82785e;text-align:right}.energy-bar-row:first-child>strong{color:#81785f}.energy-bar-row>strong small{font:10px var(--font);color:#807860}.energy-provenance{margin-top:20px;border-top:1px solid #e3e8ed;padding-top:13px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:7px;font-size:8px;color:#82785e}.energy-provenance a{font-size:8px;color:#82795e;text-decoration:none}.service-formats{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:20px}.service-formats a{font-size:11px;color:#83795e;text-decoration:none}.service-formats a:hover{text-decoration:underline}.curl-example{padding:13px;background:#ffffff;border-radius:4px;font-size:11px;color:#857a5b;overflow:auto}.running svg{animation:pulse 1s infinite}.template-card:first-child:has([class*=xslt]){background:#ffffff;border-color:#e3e8ed}.template-card:first-child:has([class*=xslt]) .eyebrow{color:#867c5a}.template-graphic{flex-wrap:wrap}
@keyframes pulse{50%{opacity:.3}}
@media(max-width:1000px){.example-route{gap:8px}.format-stamp,.transform-stamp{width:58px;height:61px;font-size:17px}.format-stamp small,.transform-stamp small{font-size:5px;letter-spacing:.5px}.example-story{padding:22px;gap:20px}.example-intro p{max-width:330px}.live-example .palette{width:155px}.energy-result-heading h2{font-size:15px}.country-label{font-size:11px}}
@media(max-width:650px){.workshop-heading{padding:17px 0}.example-story{display:block;padding:19px;margin-bottom:15px}.example-intro h2{font-size:24px}.example-intro p{font-size:11px}.example-intro h2>span{font-size:12px}.example-tags{gap:10px;font-size:7px}.example-kicker{font-size:7px;letter-spacing:1px}.example-route{justify-content:flex-start;margin-top:20px;gap:15px}.format-stamp,.transform-stamp{width:55px;height:48px;font-size:15px;gap:5px}.format-stamp small,.transform-stamp small{font-size:4px}.route-arrow{font-size:16px}.live-example .palette{width:48px}.live-example .editor-body{height:470px}.live-example .console-content{height:395px}.energy-result{padding:18px 14px}.energy-result-heading h2{font-size:15px;line-height:1.5;max-width:210px}.energy-result-heading p{font-size:9px;line-height:1.7}.energy-result-heading{gap:7px;margin-bottom:22px}.result-total{font-size:24px}.result-total small{font-size:7px;max-width:40px}.energy-bar-row{grid-template-columns:24px 63px 1fr 53px;gap:8px}.country-code{width:24px;height:26px;font-size:6px}.country-label{font-size:10px}.country-label small{font-size:7px}.energy-bar-row>strong{font-size:14px}.energy-bar-row>strong small{font-size:8px}.energy-bars{gap:18px}.energy-provenance{font-size:7px;line-height:1.8}.console-tabs{gap:12px}.console-tabs button{font-size:9px}.console-meta{max-width:100px;font-size:7px;white-space:normal;text-align:right}.service-formats{gap:12px}.service-formats a{font-size:10px}.curl-example{font-size:9px}}
@media(prefers-reduced-motion:reduce){.running svg{animation:none}}

:root{--bg:#f8f5ef;--ink:#40382c;--line:#e6dece;--accent:#9b8042}.primary{background:#ffffff;border-color:#e3e8ed}.brand-two,.brand-mark{color:#a18446}.canvas-viewport{background-color:#ffffff;background-image:radial-gradient(#ffffff .8px,transparent .8px)}.node-head{background:linear-gradient(#ffffff,#ffffff)}.node[data-type=source] .node-head{background:linear-gradient(#ffffff,#ffffff)}.node[data-type=output] .node-head{background:linear-gradient(#ffffff,#ffffff)}.live-example .node[data-type=xslt] .node-head,.node[data-type=normalize] .node-head{background:linear-gradient(#ffffff,#ffffff)}.energy-track>span{background:linear-gradient(90deg,#ffffff,#ffffff)}.energy-bar-row:nth-child(1) .energy-track>span{background:linear-gradient(90deg,#ffffff,#ffffff)}.example-story{background:linear-gradient(110deg,#ffffff,#ffffff 65%,#ffffff)}.error-message{color:#99553c}.toast{background:#ffffff}.settings-input{background:#ffffff}.block-icon{color:#927946}.source,.output,.map,.filter,.merge,.limit,.xslt,.script,.sort,.normalize{background:#ffffff;color:#997f48}
.live-preview{padding:23px 25px}.live-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.live-preview-heading h2{font:600 20px var(--heading);letter-spacing:-.6px;color:#695535;margin:9px 0}.live-preview-heading p{font-size:11px;line-height:1.8;color:#8d7d62;margin:0;max-width:530px}.live-example .console-content:has(.live-preview){height:480px}.book-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.book-card{display:flex;gap:15px;padding:16px;background:#ffffff;border:1px solid #e3e8ed;border-radius:6px;min-width:0}.book-cover{width:76px;height:115px;flex-shrink:0;background:linear-gradient(125deg,#ffffff,#ffffff);border-radius:2px 4px 4px 2px;position:relative;box-shadow:3px 4px 7px #243d5015;overflow:hidden;border-left:3px solid #e3e8ed}.book-cover>span{display:grid;place-items:center;position:absolute;inset:0;color:#a58b58;font-size:32px}.book-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.book-copy{display:flex;flex-direction:column;min-width:0}.book-copy>small{font-size:9px;letter-spacing:.7px;color:#ac925e}.book-copy h3{font:600 13px/1.5 var(--heading);margin:7px 0 6px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.book-copy h3 a,.repo-card h3 a,.quake-list h3 a{color:inherit;text-decoration:none}.book-copy h3 a:hover,.repo-card h3 a:hover,.quake-list h3 a:hover{text-decoration:underline}.book-copy p{font-size:10px;color:#9b8a6a;line-height:1.7;margin:0}.book-editions{font-size:9px;color:#ae955e;margin-top:auto;padding-top:9px}.repo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.repo-card{border:1px solid #e3e8ed;background:#ffffff;border-radius:6px;padding:18px;min-width:0}.repo-symbol{float:right;color:#b59a5d;font-size:20px}.repo-card h3{font:600 14px var(--heading);color:#7d6438;margin:2px 0 12px;word-break:break-word}.repo-card>p{font-size:11px;line-height:1.8;color:#968362;min-height:39px;margin:0 0 12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.repo-stats{display:flex;gap:15px;align-items:center;font-size:10px;color:#ab9365;border-top:1px solid #e3e8ed;padding-top:12px}.repo-stats strong{font-size:13px;font-weight:500;color:#a18343}.repo-card>small{font-size:8px;color:#ac9976;display:block;margin-top:9px}.quake-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:22px;align-items:start}.quake-map{background:#ffffff;border:1px solid #e3e8ed;border-radius:6px;padding:15px 12px;position:sticky;top:0}.quake-map svg{width:100%;height:auto;display:block;fill:none}.quake-map .map-grid{stroke:#ddcfaf;stroke-width:1;stroke-dasharray:3 5}.quake-map circle{fill:#bb9c56;fill-opacity:.6;stroke:#927039;stroke-width:1}.quake-map text{font:9px sans-serif;fill:#b59b68;stroke:none}.quake-map p{font-size:8px;color:#a68c55;text-align:center;line-height:1.7;margin:12px 0 0}.quake-list{display:grid;gap:11px}.quake-list article{display:flex;gap:11px;align-items:center;border-bottom:1px solid #e3e8ed;padding-bottom:11px}.quake-list article:last-child{border:0}.magnitude{width:43px;height:43px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font:600 17px var(--heading);color:#a48544;background:#ffffff;border-radius:5px;border:1px solid #e3e8ed}.magnitude small{font:6px var(--font);letter-spacing:.8px;color:#baa36e}.quake-list h3{font-size:11px;line-height:1.7;font-weight:500;color:#8d7347;margin:0 0 3px}.quake-list p{font-size:8px;line-height:1.8;color:#ad9670;margin:0}.services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.services-grid .service-card{max-width:none;min-width:0;display:flex;flex-direction:column}.services-grid .service-card h2{font-size:17px;line-height:1.5}.services-grid .service-card>p{font-size:11px;margin-bottom:auto}.services-grid .endpoint{padding:11px;gap:7px}.services-grid .endpoint a{font-size:10px}.services-grid .service-formats{gap:11px}.services-grid .service-formats a{font-size:10px}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.template-card[data-template=books],.template-card[data-template=quakes],.template-card[data-template=github]{background:#ffffff;border-color:#e3e8ed}.template-card:hover{box-shadow:0 5px 18px #243d5010}.format-stamp{font-size:17px}.example-intro h2{max-width:480px}
@media(min-width:1350px){.card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.book-grid,.repo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.live-preview{padding:18px 13px}.live-preview-heading{gap:10px}.live-preview-heading h2{font-size:18px;line-height:1.5}.live-preview-heading p{font-size:9px}.book-grid,.repo-grid,.services-grid,.card-grid{grid-template-columns:1fr}.book-card{padding:14px;gap:15px}.book-cover{width:72px;height:105px}.book-copy h3{font-size:13px}.live-example .console-content:has(.live-preview){height:480px}.quake-layout{grid-template-columns:1fr;gap:20px}.quake-map{position:static}.quake-map svg{max-height:130px}.quake-list h3{font-size:11px}.quake-list p{font-size:9px}.services-grid .service-card h2{font-size:19px}.repo-card h3{font-size:14px}.format-stamp{font-size:13px}.example-intro h2{font-size:23px;line-height:1.4}.services-grid{gap:16px}}
.example-kicker,.eyebrow,.book-copy>small,.book-copy p,.book-editions,.repo-card>small,.quake-list p,.energy-provenance,.energy-provenance a{color:#806d4f}

/* Warm paper and gold, with blue anchors for hierarchy and interaction. */
:root{--ink:#273d50;--accent:#245b82;--muted:#5b6870;--blue-soft:#e8f0f5;--gold-ink:#73591f;--line:#dcd9d0}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-color:var(--accent)}
.brand{color:#193e5b}.brand-two,.brand-mark{color:#a18446}.brand-dot{color:#61717b}
.nav-item,.local-badge,.icon-button{color:#526676}.nav-item.active{color:var(--accent);border-color:var(--accent)}.local-dot{background:#397a86}
.primary{background:#245b82;border-color:#245b82;box-shadow:0 2px 4px #173e6117}.primary:hover{background:#194766}.secondary{border-color:#c5d2db;color:#245b82}.icon-button:hover{background:var(--blue-soft)}
.workshop-heading p,.secondary-heading p,.service-card p,.template-card p,.page-footer{color:var(--muted)}
.editor-shell{border-color:#c9d0d3;box-shadow:0 4px 18px #193e5b08}.flow-logo{background:var(--blue-soft);border-color:#cfdee8;color:#245b82}.save-status{color:#536b74}
.panel-title,.inspector-heading,.selected-block strong{color:#244b68}.search-box{border-color:#d2dadd}.search-box svg,.search-box input::placeholder,.palette-label,.palette-tip,.palette-empty,.palette-advanced>summary{color:#647079}.palette-block:hover{background:var(--blue-soft)}.palette-block .plus{color:#50718b}
.source,.output{background:#e0edf5;color:#245b82}.map,.filter,.merge,.limit,.xslt,.script,.sort,.normalize{background:#ffffff;color:#73591f}
.canvas-topline,.canvas-bottom{color:#5d6c77;border-color:#e1e4e3}.text-button,.zoom-controls button{color:#245b82}
.connection{stroke:#326b94;stroke-width:4.5}.connection-dot{fill:#245b82}.connection-hit:hover + .connection,.connection-hit:focus + .connection{stroke:#194766;stroke-width:5.5}
.node{border-color:#e3e8ed;box-shadow:0 3px 8px #193e5b0d}.node.selected{border-color:#245b82;box-shadow:0 0 0 3px #245b821a,0 4px 12px #193e5b12}.node.ran{border-color:#7c9eb3}
.node-head strong,.node-detail strong{color:#344756}.node-head .block-icon{color:#73591f;border-color:#e3e8ed}.node-step{color:#72694e}.node-detail{color:#5c6971}.node-status{color:#4d6c78}
.node[data-type=source],.node[data-type=output]{border-color:#a9c1d2}.node[data-type=source] .node-head,.node[data-type=output] .node-head{background:linear-gradient(#edf4f8,#dce9f1);border-color:#c6d9e6}.node[data-type=source] .node-head strong,.node[data-type=output] .node-head strong{color:#204f72}.node[data-type=source] .node-head .block-icon,.node[data-type=output] .node-head .block-icon{color:#245b82;border-color:#c2d5e2}
.port{border-color:#326b94;border-width:2.5px;background:#fff}.port:hover,.port.connecting{background:#245b82;border-color:#245b82;box-shadow:0 0 0 5px #245b8226}
.settings-label,.settings-note,.selected-block small,.advanced-settings>summary,.security-heading,.policy-row,.security-note{color:#5b6870}.settings-input{border-color:#ccd5da}.field-option input{accent-color:#245b82}.inspector{border-color:#bfcfd9;box-shadow:-7px 5px 30px #193e5b14}
.console-tabs button,.console-meta{color:#5b6870}.console-tabs button.selected{color:#245b82;border-color:#245b82;font-weight:600}.tab-count{color:#245b82;background:var(--blue-soft)}.console-content pre,.result-table td,.log-row,.log-row strong{color:#445a68}.result-table th{color:#526676;background:#f4f7f8}.empty-result strong{color:#344f62}.empty-result p{color:#647079}.empty-symbol{color:#738da0}
.example-story{border-color:#e3e8ed;box-shadow:inset 3px 0 #243d50}.example-kicker,.eyebrow{color:#245b82}.example-intro h2,.live-preview-heading h2,.energy-result-heading h2{color:#193e5b}.example-intro h2>span,.example-intro p,.example-tags,.live-preview-heading p,.energy-result-heading p{color:#5b6870}.security-tag{color:#486c78!important}
.format-stamp,.json-stamp{background:#eaf2f7;border-color:#b9d0df;color:#245b82}.format-stamp small{color:#46677f}.transform-stamp{color:#73591f;background:#ffffff;border-color:#e3e8ed}.transform-stamp small{color:#73591f}.route-arrow{color:#537892}
.source-note{color:#5b6870}.source-note a,.inline-link,.service-formats a,.endpoint a,.energy-provenance a{color:#245b82}.source-note a,.inline-link,.service-formats a,.energy-provenance a{text-decoration:underline;text-decoration-color:#245b8240;text-underline-offset:3px}.endpoint{border-color:#cedae1;background:#f3f7f9}.endpoint strong{color:#245b82;background:#e1edf5}.curl-example{background:#f1f4f5;color:#3e596b}
.template-card,.template-card[data-template=books],.template-card[data-template=quakes],.template-card[data-template=github],.template-card:first-child:has([class*=xslt]){border-color:#e3e8ed}.template-card:hover{border-color:#658ca6;box-shadow:0 5px 18px #193e5b12}.template-link{color:#245b82;font-weight:600}.template-graphic>span:not(.block-icon){color:#658ca6}.template-card:first-child:has([class*=xslt]) .eyebrow{color:#245b82}
.result-total,.energy-bar-row>strong,.energy-bar-row:first-child>strong{color:#245b82}.result-total small,.country-label small,.energy-bar-row>strong small,.energy-provenance{color:#5b6870}.country-label{color:#344f62}.country-code{color:#245b82;background:#e8f0f5;border-color:#cedce6}.energy-track{background:#ffffff}
.book-copy h3,.repo-card h3,.quake-list h3{color:#204f72}.book-copy>small,.book-copy p,.book-editions,.repo-card>p,.repo-card>small,.quake-list p{color:#5b6870}.repo-stats{color:#65717a}.repo-stats strong{color:#73591f}.magnitude{color:#245b82;background:#e7f0f6;border-color:#c5d9e6}.magnitude small{color:#46677f}.quake-map .map-grid{stroke:#c7c8bc}.quake-map circle{fill:#39799f;fill-opacity:.75;stroke:#245b82}.quake-map text,.quake-map p{fill:#526676;color:#526676}
dialog{color:#445a68;border-color:#bdccd6}dialog h2,dialog li strong{color:#193e5b}.dialog-heading,dialog p,.shortcut{color:#5b6870}.toast{background:#204f72}

/* White surfaces throughout; gold is reserved for compact accents. */
:root{--bg:#fff;--line:#e2e7eb}
html,body,.app-header{background:#fff;background-image:none}
.app-header{border-bottom-color:#e2e7eb}
.workshop-heading{background:#fff;box-shadow:none;clip-path:none;margin-bottom:20px}
.example-story{background:#fff;border-color:#dfe5e9}
.palette,.canvas-column,.canvas-topline,.canvas-bottom,.node-detail,.settings-input{background:#fff}
.canvas-viewport{background-color:#fff;background-image:radial-gradient(#edf0f3 .7px,transparent .7px)}
.node-head,.live-example .node[data-type=sort] .node-head,.live-example .node[data-type=xslt] .node-head,.node[data-type=normalize] .node-head{background:#ffffff;border-bottom-color:#e3e8ed}
.node[data-type=source] .node-head,.node[data-type=output] .node-head{background:#fff}
.template-card[data-template=books],.template-card[data-template=quakes],.template-card[data-template=github],.template-card:first-child:has([class*=xslt]),.book-card,.repo-card{background:#fff;border-color:#dfe5e9}
.source-note,.quake-map{background:#fff;border-color:#e2e7eb}.energy-track{background:#f4f6f8}
.energy-track>span{background:#89acc4}.energy-bar-row:nth-child(1) .energy-track>span{background:#245b82}

/* Stronger foregrounds and outlines on white; connection styles stay above. */
:root{--ink:#172f43;--muted:#405466;--accent:#174f78;--line:#b3c2cf;--gold-ink:#73521b}
svg{stroke-width:2}
.brand{color:#153b59}.brand-two,.brand-mark{color:#896622}.brand-dot{color:#354e62}.brand-mark svg{stroke-width:2.3}.brand-mark .sun-rays{stroke-width:2.1}
.app-header{border-bottom-color:#aebfcd}.nav-item,.local-badge,.icon-button{color:#354f64}.nav-item{font-weight:550}.nav-item.active{color:#174f78;font-weight:700}.icon-button:hover,.menu-popover button:hover{background:#edf3f8}
.primary{background:#194f77;border-color:#194f77;font-weight:650;box-shadow:0 2px 5px #173e6129}.primary:hover{background:#123d5d}.secondary{color:#174f78;border-color:#718ba1;font-weight:600}.secondary:hover{background:#f1f6fa}
.editor-shell{border-color:#8ea5b8;box-shadow:0 4px 18px #173e6112}.flow-logo{border-color:#7e9ab0;color:#174f78}.flow-name-wrap input{color:#172f43;font-weight:700}.save-status{color:#40596a}
.panel-title,.inspector-heading,.selected-block strong{color:#193e5b;font-weight:700}.palette-label{color:#405466;font-weight:650}.palette-block strong{font-weight:600}.palette-block .plus{color:#245575}.search-box{border-color:#7890a4}.search-box svg,.search-box input::placeholder{color:#4c6070}.palette-tip,.palette-empty,.palette-advanced>summary{color:#405466}
.source,.output{color:#174f78;border:1px solid #93afc3;background:#edf4f9}.map,.filter,.merge,.limit,.xslt,.script,.sort,.normalize{color:#73521b;border:1px solid #b0a18a;background:#fff}.block-icon{color:#73521b}
.canvas-topline,.canvas-bottom{color:#405466;border-color:#bac8d3}.text-button,.zoom-controls button{color:#174f78;font-weight:600}.canvas-viewport{background-image:radial-gradient(#d8e0e7 .75px,transparent .75px)}
.node,.node.ran{border-color:#8da3b5;box-shadow:0 3px 9px #173e611c}.node.selected{border-color:#174f78;box-shadow:0 0 0 3px #174f7826,0 4px 12px #173e6124}.node[data-type=source],.node[data-type=output]{border-color:#5e85a3}
.node-head,.live-example .node[data-type=xslt] .node-head,.live-example .node[data-type=sort] .node-head,.node[data-type=normalize] .node-head{border-bottom-color:#b9c6d1}.node[data-type=source] .node-head,.node[data-type=output] .node-head{border-bottom-color:#9bb5c8}
.node-head strong,.node-detail strong{color:#1c374d;font-weight:650}.node[data-type=source] .node-head strong,.node[data-type=output] .node-head strong{color:#174a70}.node-head .block-icon{color:#73521b;border-color:#b0a18a}.node[data-type=source] .node-head .block-icon,.node[data-type=output] .node-head .block-icon{color:#174f78;border-color:#93afc3}.node-detail{color:#405466}.node-step{color:#65502c;font-weight:600}.node-status{color:#355b6d}
.inspector{border-color:#819db2;box-shadow:-7px 5px 30px #173e6124}.inspector-heading button{color:#35536a}.selected-block small,.settings-label,.settings-note,.advanced-settings>summary,.security-heading,.policy-row,.security-note{color:#405466}.settings-label{font-weight:600}.settings-input,.policy-row select{border-color:#7890a4;color:#243e53}.field-option,.advanced-settings,.palette-advanced,.palette-tip{border-color:#becbd5}.delete-button{color:#983c2f;font-weight:600}
.console-toolbar{border-color:#becbd5}.console-tabs button,.console-meta{color:#405466}.console-tabs button{font-weight:550}.console-tabs button.selected{color:#174f78;border-color:#174f78;font-weight:700}.tab-count{color:#174f78;border:1px solid #a3b9ca;font-weight:600}.console-content pre,.result-table td,.log-row,.log-row strong{color:#2e485c}.result-table th{color:#29485e;font-weight:650;border-color:#adbfcd}.result-table td,.log-row{border-color:#cfdae2}.empty-result,.empty-result p{color:#405466}.empty-result strong{color:#25465f;font-weight:600}.empty-symbol{color:#4d718d}
.example-story{border-color:#9aafbf;box-shadow:inset 3px 0 #194f77}.example-kicker,.eyebrow{color:#174f78;font-weight:650}.example-intro h2,.live-preview-heading h2,.energy-result-heading h2{color:#153b59}.example-intro h2>span,.example-intro p,.example-tags,.live-preview-heading p,.energy-result-heading p{color:#405466}.security-tag{color:#315b69!important}
.format-stamp,.json-stamp{color:#174f78;border-color:#7d9db5;background:#f1f6fa;box-shadow:0 2px 5px #173e6112}.format-stamp small{color:#355771;font-weight:600}.transform-stamp{color:#73521b;border-color:#a38a5e;box-shadow:0 2px 5px #173e6112}.transform-stamp small{color:#73521b;font-weight:600}.route-arrow{color:#315d7f}
.source-note{color:#405466;border-color:#becbd5}.source-note a,.inline-link,.service-formats a,.endpoint a,.energy-provenance a{color:#174f78;text-decoration-color:#174f7870}.endpoint{border-color:#90a8bb;background:#f6f9fb}.endpoint strong{color:#174f78;font-weight:700;border:1px solid #a1b7c8}.curl-example{color:#2a465d;background:#f5f8fa;border:1px solid #becbd5}
.template-card,.template-card[data-template=books],.template-card[data-template=quakes],.template-card[data-template=github],.template-card:first-child:has([class*=xslt]),.service-card,.book-card,.repo-card{border-color:#98adbd;box-shadow:0 2px 7px #173e610d}.template-card:hover{border-color:#315d7f;box-shadow:0 5px 18px #173e6124}.template-card h2,.service-card h2,.book-copy h3,.repo-card h3,.quake-list h3{color:#193e5b;font-weight:650}.template-link{color:#174f78;font-weight:650}.template-graphic>span:not(.block-icon){color:#3d6584}.activity-empty{color:#405466;border-color:#8da3b5}
.book-copy>small,.book-copy p,.book-editions,.repo-card>p,.repo-card>small,.quake-list p,.repo-stats{color:#405466}.book-cover{border-color:#98adbd}.book-cover>span,.repo-symbol,.repo-stats strong{color:#73521b}.repo-stats,.quake-list article,.energy-provenance{border-color:#becbd5}.repo-stats strong{font-weight:650}.country-label{color:#29485e}.country-code,.magnitude{color:#174f78;border-color:#8da9bd}.country-label small,.energy-bar-row>strong small,.result-total small,.energy-provenance{color:#405466}.energy-track>span{background:#4c7d9f}
.quake-map{border-color:#98adbd}.quake-map .map-grid{stroke:#aabcc9}.quake-map circle{fill:#28678f;fill-opacity:.9;stroke:#174f78}.quake-map text,.quake-map p{fill:#405466;color:#405466}.magnitude small{color:#355771}
dialog{border-color:#819db2;color:#2e485c}dialog::backdrop{background:#172f4359}.dialog-heading,dialog p,.shortcut{color:#405466}.shortcut{border-color:#becbd5}.error-message{color:#923b2e}.toast{background:#194f77;font-weight:550}

/* Accounts and billing share the workshop's white, blue and gold identity. */
.usage-section{margin-top:24px}.usage-overview-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;flex-wrap:wrap}.usage-overview-heading h2{margin-top:8px}.usage-badge{display:inline-block;padding:6px 10px;border:1px solid #7c9db6;border-radius:5px;background:#f5f9fc;color:#194f77;font-size:11px;line-height:1.6;white-space:nowrap}.usage-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:30px 0}.usage-metrics>div{padding:22px;border:1px solid #819db2;border-radius:6px;border-top:3px solid #245b82}.usage-metrics strong{display:block;font:700 36px/1.2 var(--heading);color:#194f77;overflow-wrap:anywhere}.usage-metrics span{display:block;font-size:12px;color:#405466;margin-top:12px;line-height:1.8}.usage-progress{width:100%;height:13px;accent-color:#245b82}.usage-rules p{margin:15px 0}.usage-table-wrap{max-width:100%;overflow:auto}.usage-table{width:100%;border-collapse:collapse;font-size:12px;line-height:1.7;text-align:left}.usage-table th{color:#193e5b;border-bottom:2px solid #7890a4;padding:12px 12px;font-weight:700;white-space:nowrap}.usage-table td{color:#2c465b;padding:16px 12px;border-bottom:1px solid #becbd5;vertical-align:top}.usage-table td:first-child{white-space:nowrap}.usage-table td small{display:block;max-width:300px;font-size:11px;margin-top:6px}.usage-table .button{min-height:32px;padding:6px 10px;font-size:11px}.usage-empty{padding:35px 15px;border:1px dashed #819db2;border-radius:6px;font-size:13px;line-height:1.8;color:#405466;margin-top:18px}.usage-triggers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:25px}.usage-trigger{border:1px solid #819db2;border-radius:6px;padding:20px;min-width:0}.usage-trigger-heading{display:flex;align-items:center;gap:12px;justify-content:space-between;flex-wrap:wrap}.usage-trigger h3{font:650 18px var(--heading);color:#193e5b;margin:0}.usage-trigger .account-field{margin-top:20px}.usage-trigger small{display:block;font-size:11px;line-height:1.8;color:#405466;margin-top:20px}.usage-events{list-style:none;padding:0;max-height:330px;overflow:auto}.usage-events li,.usage-step-list li{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid #becbd5;font-size:12px;color:#2c465b}.usage-step-list{padding:0;list-style:none}.usage-step-list span{font-size:11px;white-space:nowrap}.usage-dialog{max-width:640px;width:calc(100% - 32px);max-height:calc(100vh - 40px);padding:28px;border:1px solid #7890a4;border-radius:9px;background:#fff;color:#193e5b}.usage-dialog::backdrop{background:#15364f66}.usage-dialog h2{font:650 25px/1.4 var(--heading);letter-spacing:-.5px}.usage-dialog p{font-size:13px;line-height:1.8;color:#405466}.usage-dialog .dialog-heading button{border:0;background:#fff;color:#193e5b;font-size:25px;cursor:pointer}.usage-estimate{padding:20px;border:1px solid #819db2;border-left:3px solid #a78233;border-radius:5px;margin:22px 0}.usage-estimate strong{display:block;font:700 29px var(--heading);color:#194f77}.usage-estimate span{display:block;font-size:12px;margin-top:8px}.usage-projection{font-weight:600}.account-tabs{flex-wrap:wrap;gap:5px 25px}
@media(max-width:900px){.usage-triggers{grid-template-columns:1fr}.usage-metrics{gap:12px}.usage-metrics>div{padding:18px 14px}.usage-metrics strong{font-size:29px}}
@media(max-width:600px){.usage-metrics{grid-template-columns:1fr}.usage-metrics>div{display:flex;align-items:center;gap:20px}.usage-metrics strong{font-size:31px}.usage-metrics span{margin:0}.usage-dialog{padding:21px 18px}.usage-dialog h2{font-size:22px}.usage-estimate strong{font-size:25px}.usage-events li,.usage-step-list li{flex-wrap:wrap;gap:7px}.usage-table{min-width:640px}}
.app-header{gap:32px}.brand{white-space:nowrap}.account-actions{display:flex;align-items:center;gap:14px}.account-actions a{text-decoration:none}.account-login{font-size:12px;font-weight:600;color:#194f77;white-space:nowrap}.account-login:hover{text-decoration:underline}.account-actions .button{min-height:35px}
#account-view{padding:34px 0 55px;max-width:1180px;margin:auto}.account-page-heading{margin-bottom:30px}.account-page-heading h1{font:700 29px/1.35 var(--heading);letter-spacing:-.8px;margin:10px 0}.account-page-heading p{font-size:14px;color:var(--muted);line-height:1.7;margin:0}.account-layout{display:grid;grid-template-columns:.85fr 1.3fr;gap:28px;align-items:start}.account-aside,.account-panel{background:#fff;border:1px solid #98adbd;border-radius:8px;padding:28px;min-width:0}.account-aside{border-left:3px solid #194f77;padding:30px}.account-aside h2,.account-panel h2{font:650 22px/1.4 var(--heading);letter-spacing:-.5px;margin:10px 0 20px}.account-aside p,.account-panel p{font-size:13px;line-height:1.85;color:var(--muted)}.account-aside>a:not(.button),.account-panel a:not(.button),.account-notice a{color:#194f77;text-underline-offset:3px;line-height:1.7}.account-aside>.button{color:#fff}.account-steps{list-style:none;padding:0;margin:30px 0}.account-steps li{display:flex;align-items:center;gap:13px;padding:12px 0;color:#405466;font-size:13px}.account-steps li>span{width:29px;height:29px;border:1px solid #98adbd;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:650}.account-steps .current{color:#194f77;font-weight:700}.account-steps .current>span{color:#fff;background:#194f77;border-color:#194f77}.account-steps .complete>span{color:#73521b;border-color:#a38a5e}.account-fields{display:grid;gap:19px;margin:22px 0}.account-field{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:600;color:#243e53}.account-field input,.account-field select{width:100%;min-width:0;min-height:42px;border:1px solid #7890a4;border-radius:5px;background:#fff;padding:10px 12px;font-size:14px;font-weight:400;color:#172f43}.account-field input:focus,.account-field select:focus{outline:2px solid #245b82;outline-offset:2px}.account-fields>small{font-size:11px;color:#405466;margin-top:-11px}.account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.account-form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:25px}.account-panel .button,.account-aside .button{font-size:12px;min-height:40px;padding:10px 16px;text-decoration:none}.account-text-link{display:block;margin-top:20px;font-size:12px}.account-passkey{display:flex;width:100%;margin-top:18px}.account-check{display:flex;gap:12px;align-items:flex-start;font-size:12px;line-height:1.8;color:#405466}.account-check input{margin-top:5px;accent-color:#194f77}.account-summary{display:grid;gap:12px;border:1px solid #aebfcd;border-radius:6px;padding:20px;font-size:13px;color:#405466}.account-summary strong{font-size:17px;color:#193e5b}.account-error,.account-notice{padding:14px 16px;border:1px solid #acbcc9;border-radius:5px;font-size:12px;line-height:1.8;margin:15px 0}.account-error{color:#923b2e;border-color:#bd8277;background:#fff}.account-notice{color:#29485e;background:#f5f9fc}.account-narrow{max-width:660px;margin:0 auto}.local-mailbox{margin:25px 0;padding:18px;border:1px dashed #819db2;border-radius:6px}.local-mailbox strong{font-size:12px}.local-mailbox p{font-size:11px}.local-mailbox a{display:block;margin:12px 0;font-size:12px}.account-tabs{display:flex;gap:25px;border-bottom:1px solid #aebfcd;margin-bottom:28px}.account-tabs a{padding:13px 0;font-size:13px;text-decoration:none;color:#405466;border-bottom:3px solid transparent}.account-tabs a[aria-current]{color:#194f77;border-color:#194f77;font-weight:700}.passkey-list{padding:0;list-style:none;font-size:12px;color:#405466}.passkey-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid #becbd5}.totp-qr{display:block;width:220px;max-width:100%;margin:20px 0}.totp-secret{display:block;padding:13px;border:1px solid #98adbd;word-break:break-all;border-radius:4px}.recovery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:18px}.recovery-grid code{border:1px solid #98adbd;padding:12px;text-align:center;font-size:13px}.billing-layout{display:grid;grid-template-columns:.75fr 1.4fr;gap:26px;align-items:start}.plan-price{font:700 30px var(--heading);color:#194f77;border-top:1px solid #becbd5;padding-top:23px;margin-top:25px}.plan-price small{display:block;font:12px/1.8 var(--font);color:#405466;margin-top:12px}.account-status{display:inline-block;color:#73521b;border:1px solid #a38a5e;border-radius:4px;font-size:11px;padding:7px 10px;margin-top:15px}.payment-methods{display:grid;gap:12px;margin-top:25px}.payment-method{display:flex;text-align:left;align-items:center;gap:17px;width:100%;border:1px solid #819db2;border-radius:6px;padding:19px 17px;background:#fff}.payment-method:not(:disabled):hover{border-color:#194f77;background:#f6f9fc}.payment-method:disabled{opacity:1;cursor:not-allowed;filter:none;border-color:#aebfcd}.payment-symbol{display:grid;place-items:center;width:40px;height:40px;flex-shrink:0;border:1px solid #93afc3;border-radius:7px;color:#194f77;font:700 22px var(--heading)}.payment-method>span:last-child{min-width:0}.payment-method strong{display:block;font-size:13px;color:#193e5b}.payment-method small{display:block;font-size:11px;line-height:1.8;color:#405466;margin-top:6px}.payment-method em{font-size:10px;font-style:normal;color:#194f77;display:block;margin-top:8px;font-weight:600}.billing-history,.payment-return{margin-top:26px}.billing-orders article{display:flex;align-items:center;gap:22px;flex-wrap:wrap;border-top:1px solid #becbd5;padding:17px 0;font-size:12px}.billing-orders strong{font-size:15px;color:#193e5b}.order-status{padding:6px 9px;border:1px solid #98adbd;border-radius:4px}.receipt{margin-top:24px}.receipt>strong{font-size:25px;color:#194f77}
@media(max-width:1100px){.app-header{flex-wrap:wrap;height:auto;min-height:66px;gap:0 24px;padding-top:12px}.app-header nav{order:3;width:100%;min-height:44px}.header-end{margin-left:auto}.app-header nav .nav-item{padding:12px 2px}}
@media(max-width:800px){.account-layout,.billing-layout{grid-template-columns:1fr}.account-aside{padding:22px}.account-aside h2{font-size:22px}.account-steps{display:flex;flex-wrap:wrap;gap:5px 17px;margin:18px 0}.account-steps li{padding:7px 0;gap:7px;font-size:11px}.account-steps li>span{width:24px;height:24px}.local-badge{display:none}}
@media(max-width:650px){.app-header{padding:12px 13px 0;gap:0 12px}.app-header nav{order:2;width:auto;min-height:42px;flex:1;justify-content:flex-end;gap:12px}.header-end{order:3;width:100%;margin:5px 0 10px;justify-content:space-between}.account-actions{gap:16px;flex-wrap:wrap}.account-login{font-size:12px}.account-actions .button{font-size:11px;min-height:34px}.account-page-heading h1{font-size:25px}.account-page-heading p{font-size:12px}.account-panel{padding:21px 18px}.account-panel h2{font-size:20px}.account-grid{grid-template-columns:1fr;gap:20px}.account-tabs{gap:20px}.account-tabs a{font-size:11px}.account-layout{gap:18px}.account-steps{gap:5px 12px}.account-steps li{font-size:10px}.account-aside>p{font-size:12px}.account-form-actions{gap:10px}.payment-method{padding:15px 12px;gap:12px}.payment-method small{font-size:10px}.payment-symbol{width:33px;height:36px}.plan-price{font-size:26px}.billing-orders article{gap:13px}.workshop-heading h1{max-width:270px}.workshop-heading p{font-size:10px;line-height:1.9;max-width:280px}}
@media print{body *{visibility:hidden}.receipt,.receipt *{visibility:visible}.receipt{position:absolute;inset:0;border:0;box-shadow:none}.receipt button{display:none}}
@media(max-width:650px){.account-layout>.account-panel{grid-row:1}.account-layout>.account-aside{grid-row:2}}

/* Listeners and documents use the same white surfaces and blue contrast. */
.listener-grid,.dom-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.listener-card{min-width:0}.listener-card .settings-label{display:block;margin-top:22px}.listener-card .settings-input{max-width:250px}.listener-status{min-height:44px;font-size:12px;line-height:1.8;color:#29485e}.listener-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:18px 0}.listener-card>.text-button{margin-top:16px}.dom-lab{margin-top:30px}.dom-columns{margin:24px 0}.dom-example{min-width:0;border:1px solid #98adbd;border-radius:6px;padding:22px;background:#fff}.dom-example h3{font-size:15px;color:#174f78;margin:0 0 18px}.dom-example .button{margin:0 6px 10px 0}#dom-demo-items{max-height:170px;overflow:auto;font-size:13px;line-height:1.8}#dom-live-output article{border-top:1px solid #bac8d3;padding:12px 0}#dom-live-output strong{font-size:12px;color:#174f78}#dom-live-output p{font:12px monospace;margin:5px 0;overflow-wrap:anywhere}.document-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid #bac8d3;font-size:13px}.document-preview{width:100%;height:400px;border:0;background:#fff}.console-tabs{overflow-x:auto}.console-tabs button{flex-shrink:0}
.web-result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}.web-result-card{padding:20px;border:1px solid #98adbd;border-radius:6px;min-width:0;background:#fff}.web-result-card h3{font-size:14px;line-height:1.6;color:#174f78;margin:10px 0;overflow-wrap:anywhere}.web-result-card h3 a{color:inherit;text-decoration:none}.web-result-card h3 a:hover{text-decoration:underline}.web-result-card p{color:#405466;font-size:11px}
@media(max-width:750px){.listener-grid,.dom-columns{grid-template-columns:1fr}.dom-example{padding:17px}.app-header nav{order:3;width:100%;flex-basis:100%;justify-content:flex-start;gap:22px;overflow:auto}.dom-lab{padding:20px}.listener-card{padding:22px}.secondary-heading{flex-wrap:wrap}}

/* Policy editor: complete action configuration without changing the pipe palette. */
.policy-shell{border:1px solid #819db2;border-radius:8px;background:#fff;overflow:hidden}.policy-toolbar,.policy-rule-heading{padding:22px 25px;border-bottom:1px solid #b3c2cf}.policy-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:14px 25px}.policy-toolbar .listener-actions{margin:0;gap:10px}.policy-field{display:flex;flex-direction:column;gap:9px;min-width:0;color:#243e53;font-size:12px;font-weight:600}.policy-field input,.policy-field select,.policy-field textarea{min-width:0;width:100%;border:1px solid #7890a4;border-radius:5px;padding:10px 12px;background:#fff;color:#172f43;font-size:13px;font-weight:400}.policy-name{min-width:240px;flex:1}.policy-name input{font-weight:650}.policy-toolbar #policy-save-status{width:100%;font-size:11px;color:#405466}.policy-rule-tabs{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:24px}.policy-rule-fields,.policy-test-fields{display:grid;grid-template-columns:1.5fr 1.2fr 1fr .7fr;gap:18px}.policy-action-heading{display:flex;flex-wrap:wrap;gap:12px;padding:22px 25px 0;color:#29485e;font-size:12px}.policy-action-heading span{color:#405466}.policy-action-palette{display:flex;flex-wrap:wrap;gap:10px;padding:19px 25px 23px;border-bottom:1px solid #b3c2cf}.policy-action-tool{display:flex;flex-direction:column;align-items:center;gap:9px;min-width:70px;padding:12px 10px;border:1px solid #a6b8c6;border-radius:6px;background:#fff}.policy-action-tool>span{color:#174f78;font-size:23px;line-height:1.1;font-family:system-ui}.policy-action-tool strong{font-size:11px;font-weight:600;color:#29485e}.policy-action-tool:hover{border-color:#174f78;background:#f5f9fc}.policy-trash{margin-left:auto}.policy-trash>span{color:#73521b}.policy-path-scroll{overflow-x:auto;background:#fff}.policy-path{display:flex;align-items:center;gap:36px;min-width:max-content;min-height:220px;padding:45px 32px;position:relative;background:linear-gradient(#326b94,#326b94) center/ calc(100% - 110px) 4.5px no-repeat}.policy-endpoint{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;width:65px;background:#fff;color:#29485e;flex-shrink:0}.policy-endpoint>span{font-size:30px;color:#174f78}.policy-endpoint strong{font-size:11px}.policy-action-node{position:relative;background:#fff;border:1px solid #5e85a3;box-shadow:0 3px 9px #173e611c;border-radius:6px;padding:18px 14px 12px;min-width:170px;max-width:210px;display:flex;flex-direction:column;align-items:center;gap:9px;color:#174f78}.policy-action-symbol{font-size:25px;line-height:1.2}.policy-action-node strong{font-size:12px;max-width:180px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.policy-action-node small{font:10px monospace;color:#405466;max-width:175px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.policy-configure{font-size:10px;text-decoration:underline;text-underline-offset:3px;margin-top:2px}.policy-action-node.selected{border-color:#174f78;box-shadow:0 0 0 3px #174f7826}.policy-add-slot{background:#fff;border:1px dashed #5e85a3;border-radius:50%;width:34px;height:34px;color:#174f78;font-size:22px}.policy-configured{border-top:1px solid #b3c2cf;padding:18px 25px;color:#29485e}.policy-configured summary{cursor:pointer;font-size:12px;font-weight:600}.policy-configured button{display:block;padding:13px 0;font-size:12px;text-align:left}.policy-test{margin-top:25px}.policy-test-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:15px}.policy-test-heading h2{margin:7px 0 20px}.policy-test-fields{margin:20px 0}.policy-code{font:12px/1.7 Consolas,monospace!important;min-height:155px;resize:vertical;white-space:pre;tab-size:2}.policy-result{margin-top:23px;border-top:1px solid #b3c2cf;padding-top:18px;font-size:12px;line-height:1.8}.policy-result pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#fff;border:1px solid #b3c2cf;border-radius:5px;padding:18px;font:12px/1.8 Consolas,monospace;max-height:450px;overflow:auto}.policy-runtime-note{padding:22px 0;color:#405466;font-size:12px;line-height:1.9}.policy-runtime-note summary{cursor:pointer;font-weight:600;color:#174f78}.policy-dialog,.policy-tool-dialog{width:min(960px,calc(100vw - 32px));max-height:90vh;overflow:auto;padding:26px 30px;border:1px solid #819db2;border-radius:9px;color:#172f43;background:#fff;box-shadow:0 15px 65px #173e6140}.policy-dialog::backdrop,.policy-tool-dialog::backdrop{background:#172f4366}.policy-tool-dialog{width:min(850px,calc(100vw - 32px))}.policy-dialog h2{font:650 25px var(--heading);margin:18px 0 8px}.policy-dialog-tabs{display:flex;gap:25px;border-bottom:1px solid #b3c2cf;margin:25px 0}.policy-dialog-tabs button{padding:12px 3px;border-bottom:3px solid transparent;color:#405466}.policy-dialog-tabs button[aria-selected=true]{color:#174f78;border-color:#174f78;font-weight:700}.policy-section-title{font-size:13px;letter-spacing:.4px;border-bottom:1px solid #b3c2cf;margin:25px 0 20px;padding:10px 0;color:#174f78}.policy-context{display:grid;grid-template-columns:1fr 190px 16px;gap:12px;align-items:end}.policy-required{color:#73521b;align-self:center;margin-top:20px}.policy-modes{border:0;padding:0;margin:20px 0;color:#243e53;font-size:12px}.policy-modes legend{font-weight:600;margin-bottom:12px}.policy-modes label{display:flex;align-items:center;gap:10px;padding:8px 0}.policy-modes input{accent-color:#174f78}.policy-modes.inline{display:flex;gap:25px}.policy-modes.inline legend{float:left;margin:12px 20px 0 0}.policy-resource{margin-top:20px}.policy-resource>.policy-field{margin-bottom:15px}.policy-file-row{display:flex;align-items:end;flex-wrap:wrap;gap:9px;margin-bottom:20px}.policy-file-row>.policy-field{min-width:200px;flex:1}.policy-file-row .button{padding:10px 12px;font-size:11px}.policy-rewrite-row{display:flex;align-items:end;gap:10px;margin-top:23px}.policy-rewrite-row>.policy-field{flex:1}.policy-dialog .policy-field+.policy-field,.policy-tool-dialog .policy-field+.policy-field{margin-top:20px}.policy-dialog-footer{display:flex;flex-wrap:wrap;gap:10px;border-top:1px solid #b3c2cf;margin-top:30px;padding-top:22px}.policy-dialog-footer>span{flex:1}.policy-tool-dialog .policy-code{min-height:350px}.policy-advanced-panel>.policy-field{margin-bottom:20px}.policy-dialog .settings-note{line-height:1.9}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.app-header nav{white-space:nowrap}
@media(max-width:1350px){.app-header{flex-wrap:wrap;height:auto;gap:0 25px;padding-top:12px}.app-header nav{order:3;width:100%;min-height:44px;overflow:auto}.app-header nav .nav-item{padding:12px 2px}.header-end{margin-left:auto}}
@media(max-width:750px){.policy-toolbar,.policy-rule-heading{padding:18px}.policy-rule-fields,.policy-test-fields{grid-template-columns:1fr 1fr}.policy-action-palette{padding:18px;gap:8px}.policy-action-tool{min-width:65px}.policy-trash{margin-left:0}.policy-action-heading{padding:18px 18px 0}.policy-path{gap:25px;padding:35px 20px}.policy-dialog,.policy-tool-dialog{padding:20px 18px}.policy-context{grid-template-columns:1fr 100px 10px}.policy-dialog-footer>span{display:none}.policy-file-row>.policy-field{flex-basis:100%}.policy-rewrite-row{flex-wrap:wrap}.policy-rewrite-row>.policy-field{flex-basis:100%}.policy-test{padding:20px}.app-header nav{gap:22px;justify-content:flex-start}}
.ws-stack{margin-top:25px}.ws-stack-scroll{overflow:auto}.ws-stack .result-table{min-width:650px}.ws-stack .result-table td{white-space:normal;line-height:1.8}.ws-stack .result-table th:first-child{min-width:180px}.ws-stack .result-table th:nth-child(2){min-width:190px}
@media(max-width:650px){.secondary-heading>.button{font-size:11px;padding:10px 12px}}

/* Shared gateway workbench: one set of original icons across the ribbon, palette and path. */
.gateway-workshop{background:#fff;border:1px solid #819db2;border-radius:8px;overflow:hidden}.gateway-ribbon-heading{display:flex;align-items:center;flex-wrap:wrap;gap:14px;padding:16px 20px 0;color:#243e53;font-size:12px}.gateway-ribbon-heading>span{color:#405466;font-size:11px}.gateway-action-ribbon{display:flex;align-items:stretch;gap:6px;padding:14px 17px 17px;overflow-x:auto;border-bottom:1px solid #b3c2cf}.gateway-action{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:9px;border:1px solid transparent;border-radius:5px;padding:10px 8px;min-width:75px;color:#174f78;flex-shrink:0;background:#fff}.gateway-action:hover,.gateway-action:focus-visible{border-color:#819db2;background:#f4f8fb}.gateway-icon{width:25px;height:25px;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round}.gateway-action strong{display:block;font-size:11px;font-weight:650;color:#243e53}.gateway-action small{display:block;font-size:9px;margin-top:4px;color:#405466}.gateway-trash{margin-left:auto;color:#73521b}.workspace-switch{display:flex;align-items:stretch;gap:24px;padding:0 20px;border-bottom:1px solid #b3c2cf;overflow:auto}.workspace-switch button{white-space:nowrap;padding:15px 2px;border-bottom:3px solid transparent;font-size:12px;color:#405466}.workspace-switch button[aria-selected=true]{border-color:#174f78;color:#174f78;font-weight:700}.workspace-switch>span{margin-left:auto;white-space:nowrap;align-self:center;font-size:10px;color:#73521b}.gateway-workshop>.example-story{border:0;border-bottom:1px solid #b3c2cf;border-radius:0;box-shadow:none;margin:0;padding:22px 25px;min-height:150px}.gateway-workshop>.example-story h2{font-size:24px}.gateway-workshop>.example-story .example-intro h2>span{font-size:13px}.gateway-workshop>.editor-shell{border:0;border-radius:0;margin:0}.gateway-workshop .transform-stamp{min-width:90px;width:auto;font-size:16px;padding:16px 10px}.message-workspace{display:grid;grid-template-columns:180px minmax(0,1fr);align-items:stretch}.message-action-palette{border-right:1px solid #b3c2cf;padding:19px 12px;background:#fff}.message-action-palette>.panel-title{font-size:12px;padding:0 5px 12px}.message-palette-action{display:flex;align-items:center;gap:11px;padding:10px 8px;width:100%;text-align:left;border-radius:5px;color:#174f78}.message-palette-action:hover{background:#f4f8fb}.message-palette-action .gateway-icon{width:21px;height:21px;flex-shrink:0}.message-palette-action strong{font-size:11px;font-weight:600;display:block;color:#243e53}.message-palette-action small{font-size:9px;color:#405466;display:block;margin-top:2px}.message-formats{display:flex;flex-wrap:wrap;gap:7px;border-top:1px solid #b3c2cf;padding:19px 5px;margin-top:15px}.message-formats>strong{width:100%;font-size:10px;margin-bottom:5px;color:#405466}.message-formats>span{font-size:9px;border:1px solid #a6b8c6;border-radius:3px;padding:4px 6px;color:#174f78}.message-formats p{font-size:10px;color:#73521b;display:flex;align-items:center;gap:6px;margin:12px 0 0}.message-formats .gateway-icon{width:19px;height:19px}#message-policy-host{min-width:0}.embedded-policy-editor>.secondary-heading,.embedded-policy-editor .policy-action-heading,.embedded-policy-editor .policy-action-palette{display:none}.embedded-policy-editor .policy-shell{border:0;border-radius:0}.embedded-policy-editor .policy-test,.embedded-policy-editor .ws-stack{margin:25px 22px;max-width:none}.embedded-policy-editor .policy-runtime-note{padding:0 22px 25px}.embedded-policy-editor .policy-path{min-height:235px}.policy-action-tool>.gateway-icon{width:25px;height:25px;color:#174f78}.policy-action-node .gateway-icon{width:28px;height:28px}.policy-endpoint>.gateway-icon{width:34px;height:34px}.palette-message-actions{border-top:1px solid #b3c2cf;margin-top:15px;padding-top:14px}.palette-message-actions>summary{font-size:10px;color:#405466;font-weight:600;cursor:pointer;margin-bottom:9px}.palette-message-actions .block-icon{background:#fff;color:#174f78}.palette-message-actions .gateway-icon{width:18px;height:18px}
@media(max-width:750px){.gateway-action-ribbon{padding:10px;gap:1px}.gateway-action{min-width:66px;padding:10px 5px}.gateway-ribbon-heading{padding:15px 13px 0}.gateway-ribbon-heading>span{font-size:10px}.workspace-switch{gap:18px;padding:0 12px}.workspace-switch button{font-size:10px}.workspace-switch>span{display:none}.gateway-workshop>.example-story{padding:20px 17px}.message-workspace{grid-template-columns:48px minmax(0,1fr)}.message-action-palette{padding:10px 4px}.message-action-palette>.panel-title,.message-palette-action>span,.message-formats{display:none}.message-palette-action{padding:12px 7px}.message-palette-action .gateway-icon{width:22px;height:22px}.embedded-policy-editor .policy-test,.embedded-policy-editor .ws-stack{margin:20px 12px}.embedded-policy-editor .policy-rule-fields{grid-template-columns:1fr}.embedded-policy-editor .policy-name{min-width:0}.palette-message-actions>summary{font-size:0}.palette-message-actions>summary::after{content:'⋯';font-size:17px;display:block;text-align:center}}
.soapaction-setting{display:flex;gap:18px;align-items:end;border:1px solid #a6b8c6;border-radius:5px;padding:16px;margin-top:24px;background:#fff}.soapaction-setting>.policy-field{flex:1}.soapaction-save{display:flex;align-items:center;gap:8px;padding:12px 0;color:#174f78;font-size:12px;font-weight:600}.soapaction-save input{accent-color:#174f78}.xslt-parameters{margin:25px 0;color:#243e53;font-size:12px}.xslt-parameters .policy-test-heading{margin-bottom:15px}.xslt-parameter{display:grid;grid-template-columns:1fr 105px 1.2fr 35px;gap:10px;align-items:end;margin:12px 0}.xslt-parameter .policy-field+.policy-field{margin:0}.xslt-parameter .button{padding:10px}.policy-dialog .policy-basic-panel>.policy-field{margin-bottom:20px}
.embedded-policy-editor .policy-path{gap:24px;padding:35px 24px;min-height:205px}.embedded-policy-editor .policy-action-node{min-width:130px;max-width:150px;padding:16px 10px 12px}.embedded-policy-editor .policy-action-node strong{max-width:130px;font-size:11px}.embedded-policy-editor .policy-action-node small{max-width:125px;font-size:9px}.embedded-policy-editor .policy-endpoint{width:52px}
.policy-path>.policy-endpoint:last-child{margin-left:auto}
@media(max-width:650px){.soapaction-setting{padding:12px;gap:12px}.xslt-parameter{grid-template-columns:1fr 75px}.xslt-parameter>.policy-field:nth-child(3){grid-column:1}.xslt-parameter>.button{grid-column:2;justify-self:end;width:35px}}
