.manual-builder[data-tab=Connections] .builder-settings-nav,.manual-builder[data-tab=Connections] .builder-mobile-settings{display:none}.manual-builder[data-tab=Connections] .builder-layout{align-items:stretch}.manual-builder[data-tab=Connections][data-inspector=true] .builder-layout{grid-template-columns:minmax(0,1fr) 304px}.manual-builder .connection-workspace{background:#f7f5ed;height:max(560px,100dvh - 154px)}.connection-workspace-header{border-bottom:1px solid var(--border);background:var(--panel);justify-content:space-between;align-items:center;gap:16px;padding:14px 24px;display:flex}.connection-workspace-title{gap:2px;display:grid}.connection-workspace-title strong{font-size:16px}.connection-workspace-title>span{color:#626c60;font-size:13px}.connection-workspace-actions{align-items:center;gap:8px;display:flex}.manual-builder .connection-workspace-actions select{width:190px;font-size:14px}.manual-builder .connection-workspace-actions button,.connection-options>summary{padding:10px 12px;font-size:14px}.connection-options{position:relative}.connection-options>summary{cursor:pointer;border:1px solid var(--border);text-align:center;border-radius:8px;min-width:44px;min-height:44px;list-style:none}.connection-options>summary::-webkit-details-marker{display:none}.connection-options>div{z-index:7;background:var(--panel);border:1px solid var(--border);border-radius:12px;width:270px;padding:16px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 8px 28px #30362e1a}.connection-options p{color:#626c60;margin:8px 0 0;font-size:13px}.connection-navigation{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.manual-builder .connection-navigation .builder-canvas-scroll{cursor:grab;touch-action:none;overscroll-behavior:contain;background:radial-gradient(#c9cdbf .8px,#0000 .8px) 0 0/24px 24px;border:0;flex:1;height:auto;min-height:360px;position:relative;overflow:hidden}.manual-builder .connection-navigation .builder-canvas{background:0 0;position:absolute;top:0;left:0}.manual-builder .connection-camera-tools{z-index:4;border:1px solid var(--border);background:var(--panel);border-radius:10px;flex-wrap:nowrap;align-items:center;gap:4px;padding:5px;display:flex;position:absolute;bottom:20px;left:20px;box-shadow:0 6px 24px #30362e12}.connection-camera-tools output{min-width:48px;font-size:13px}.connection-help{border-left:1px solid var(--border);position:relative}.connection-help summary{text-align:center;cursor:pointer;min-width:40px;min-height:40px;padding:8px;font-weight:600;list-style:none}.connection-help summary::-webkit-details-marker{display:none}.connection-help>div{background:var(--panel);border:1px solid var(--border);border-radius:12px;width:300px;padding:16px;font-size:14px;position:absolute;bottom:calc(100% + 16px);left:-240px;box-shadow:0 8px 28px #30362e20}.connection-help p{margin-bottom:0}.connection-legend{color:#626c60;pointer-events:none;gap:16px;font-size:12px;display:flex;position:absolute;top:16px;left:20px}.connection-legend>span{align-items:center;gap:6px;display:flex}.connection-legend i{font-style:normal}.legend-action{color:#a77239}.legend-data{color:#36786b}.legend-placement{color:#816798}.manual-builder .connection-node{background:#fffef9;border:1px solid #d6dacd;border-radius:14px;width:248px;position:absolute;overflow:visible;box-shadow:0 4px 16px #30362e0b}.manual-builder .connection-node.is-selected{outline-offset:2px;border-color:#285e56;outline:2px solid #285e56;box-shadow:0 5px 24px #285e5614}.manual-builder .connection-node.is-compatible{outline-offset:4px;outline:2px dashed #a77239}.manual-builder .connection-node-heading{text-align:left;touch-action:none;cursor:grab;background:0 0;border:0;border-radius:14px 14px 0 0;align-items:center;gap:12px;width:100%;padding:10px 16px;display:flex}.manual-builder .connection-node-heading[aria-pressed=true]{background:#f2f6ed}.connection-node-icon{color:#285e56;background:#e8eee3;border-radius:10px;flex:0 0 36px;place-items:center;height:36px;font-size:22px;display:grid}.connection-node--control .connection-node-icon{color:#8c5d2c;background:#f4ebda}.connection-node--result .connection-node-icon{color:#36786b;background:#e6f0e9}.connection-node--view .connection-node-icon{color:#61735c;background:#eef0e8}.connection-node-title{gap:3px;min-width:0;display:grid}.connection-node-title small{color:#626c60;font-size:11px;font-weight:500;line-height:1.2}.connection-node-title strong{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:15px;line-height:1.25;display:-webkit-box;overflow:hidden}.connection-node-title>span{color:#626c60;white-space:nowrap;text-overflow:ellipsis;font-size:11px;line-height:1.3;overflow:hidden}.connection-node-ports{border-top:1px solid #e9ebdf;padding-bottom:0}.connection-port-row{grid-template-columns:1fr 1fr;align-items:center;display:grid}.manual-builder .connection-port{background:0 0;border:0;border-radius:6px;align-items:center;width:100%;min-width:0;min-height:40px;padding:6px 14px;font-size:12px;display:flex;position:relative}.manual-builder .connection-port--output{text-align:right;justify-content:flex-end}.connection-port-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.manual-builder .connection-port .connection-port-handle{color:#36786b;background:#fffef9;border:1px solid #d6dacd;border-radius:50%;place-items:center;width:22px;height:22px;padding:0;font-size:14px;display:grid;position:absolute;left:-12px}.manual-builder .connection-port--output .connection-port-handle{left:auto;right:-12px}.manual-builder .connection-port--action .connection-port-handle{color:#a77239}.manual-builder .connection-port--placement .connection-port-handle{color:#816798}.manual-builder .connection-port:hover:not(:disabled) .connection-port-handle,.manual-builder .connection-port:focus-visible .connection-port-handle{border-color:currentColor;box-shadow:0 0 0 3px #dfe8d9}.connection-node-additions{border-top:1px solid #e9ebdf;justify-content:space-between;gap:8px;padding:8px 12px;display:flex}.manual-builder .connection-node-additions button{background:0 0;border:0;min-height:36px;padding:6px 8px;font-size:12px}.manual-builder .connection-wires{pointer-events:none;position:absolute;inset:0;overflow:visible}.connection-wire{transition:opacity .12s}.connection-wire.is-muted{opacity:.25}.connection-wire-line{fill:none;stroke-width:2px}.connection-wire.is-related .connection-wire-line{fill:none;stroke-width:3px}.connection-wires .connection-wire-hit{stroke:#0000;stroke-width:20px;fill:none;pointer-events:stroke;cursor:pointer}.connection-wires .connection-wire-hit:focus-visible,.composition-graph .connection-wires .connection-wire-hit:focus{outline:none}.connection-wire:hover .connection-wire-line{fill:none;stroke-width:3px}.connection-wire.is-selected .connection-wire-line{stroke-width:4px;vector-effect:non-scaling-stroke}.manual-builder .connection-composer{z-index:6;border:1px solid var(--border);background:var(--panel);border-radius:14px;width:min(330px,100% - 40px);padding:16px;position:absolute;top:16px;right:20px;box-shadow:0 8px 32px #30362e20}.connection-composer header{justify-content:space-between;align-items:center;gap:12px;display:flex}.manual-builder .connection-composer header button{background:0 0;border:0;min-width:44px;font-size:20px}.connection-composer p,.connection-composer footer span{color:#626c60;font-size:13px}.connection-composer footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.connection-empty{background:var(--panel);border:1px solid var(--border);text-align:center;border-radius:16px;width:min(320px,80%);padding:24px;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}.manual-builder .connection-inspector{border-left:1px solid var(--border);max-height:max(560px,100dvh - 154px);padding:24px 20px;overflow-y:auto}.connection-inspector-kind{color:#626c60;margin:0 44px 6px 0;font-size:12px}.manual-builder .connection-inspector h2{margin-bottom:20px;font-size:20px}.connection-binding-summary{text-align:center;background:#edf1e6;border-radius:12px;justify-items:center;gap:5px;margin-bottom:20px;padding:16px;display:grid}.connection-binding-summary>span{color:#626c60;font-size:13px}.connection-binding-summary strong{font-size:15px}.manual-builder .connection-inspector .connection-edit-lesson{text-align:left;width:100%;margin:12px 0;font-size:14px}.connection-related-items{gap:6px;display:grid}.manual-builder .connection-related-items button{text-align:left;align-items:center;gap:10px;display:flex}.connection-related-items button>span:last-child{margin-left:auto}.connection-inspector-additions{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.connection-position>div{grid-template-columns:1fr 1fr;gap:12px;display:grid}.manual-builder .connection-remove{color:#963e32;border-color:#d8beb4;margin-top:24px;font-size:14px}@media (max-width:800px){.manual-builder[data-tab=Connections][data-inspector=true] .builder-layout{grid-template-columns:minmax(0,1fr)}.manual-builder .connection-workspace{height:max(560px,100dvh - 180px)}.connection-workspace-header{flex-wrap:wrap;gap:10px;padding:12px 16px}.connection-workspace-title{align-items:baseline;gap:12px;display:flex}.connection-workspace-actions{width:100%}.manual-builder .connection-workspace-actions select{flex:1;width:0}.manual-builder .connection-inspector{z-index:8;border:1px solid var(--border);border-radius:16px;max-height:40dvh;padding:20px;position:fixed;bottom:12px;left:12px;right:12px;box-shadow:0 4px 32px #30362e26}.manual-builder .connection-camera-tools{bottom:12px;left:12px}.connection-legend{gap:12px;font-size:11px;left:16px}}@media (prefers-reduced-motion:reduce){.connection-wire{transition:none}}.manual-builder .builder-canvas-scroll.is-panning{cursor:grabbing}.connection-wires .wire-action .connection-wire-line{stroke:#a77239}.connection-wires .wire-data .connection-wire-line{stroke:#36786b}.connection-wires .wire-placement .connection-wire-line{stroke:#816798;stroke-dasharray:5 5}.manual-builder .connection-node-edit{width:40px;height:40px;min-height:40px;color:var(--muted,#626c60);background:0 0;border:0;border-radius:8px;place-items:center;padding:0;display:grid;position:absolute;top:8px;right:8px}.manual-builder .connection-node-heading{padding-right:56px}.manual-builder .connection-group{pointer-events:none;background:#80956b0d;border:2px dashed #80956b;border-radius:14px;position:absolute}.manual-builder .connection-group.is-selected{background:#4367b20f;border-color:#4367b2}.manual-builder .connection-group-header{pointer-events:auto;background:var(--panel,#fffbef);border:1px solid #c9d3c0;border-radius:10px;align-items:center;max-width:calc(100% - 24px);display:flex;position:absolute;top:6px;left:12px;overflow:hidden;box-shadow:0 2px 6px #30362e0f}.manual-builder .connection-group-label{cursor:grab;touch-action:none;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;border-radius:0;min-width:0;padding:8px 12px;font-size:14px;font-weight:600;overflow:hidden}.manual-builder .connection-group-edit{width:44px;color:var(--muted,#626c60);background:0 0;border:0;border-left:1px solid #dce2d5;border-radius:0;flex:0 0 44px;place-items:center;padding:0;display:grid}.manual-builder .connection-group-header button:focus-visible{outline-offset:-3px}.connection-marquee{pointer-events:none;z-index:3;background:#4367b224;border:1px solid #4367b2;position:absolute}.connection-context-menu{z-index:30;border:1px solid var(--border);background:#faf8f1;border-radius:10px;min-width:200px;padding:6px;display:grid;position:fixed;box-shadow:0 6px 24px #0000002e}.manual-builder .connection-context-menu button{text-align:left;background:0 0;border:0;padding:9px}.manual-builder .connection-context-menu button:hover{background:#e9edde}.manual-builder .connection-navigation .builder-canvas,.manual-builder .connection-wires{overflow:visible}.builder-action-history{position:relative}.builder-action-history summary{cursor:pointer}.builder-action-history>div{z-index:20;border:1px solid var(--border);background:#faf8f1;border-radius:10px;width:min(360px,85vw);max-height:360px;padding:14px;position:absolute;top:100%;right:0;overflow:auto;box-shadow:0 6px 24px #00000026}.builder-action-history li{padding:4px 0}.builder-action-history .is-undone{opacity:.55}.connection-workspace-actions{flex-wrap:wrap;justify-content:flex-end}@media (max-width:800px){.connection-workspace-header{flex-wrap:wrap}.connection-workspace-actions{justify-content:flex-start;width:100%}}.composition-graph .connection-workspace-header{z-index:4;border:1px solid var(--border);border-radius:12px;gap:12px;width:auto;max-width:calc(100% - 24px);padding:8px;position:absolute;top:12px;right:12px;box-shadow:0 2px 8px #30362e0c}.composition-graph .connection-workspace{position:relative}.composition-graph .connection-workspace-title{display:none}@media (max-width:800px){.composition-graph .connection-workspace-header{flex-wrap:nowrap}.composition-graph .connection-workspace-actions{flex-wrap:nowrap;width:auto}}.composition-graph .connection-selection-actions{z-index:4;border:1px solid var(--border);background:var(--panel,#fffdf7);border-radius:10px;flex-wrap:wrap;align-items:center;gap:6px;width:fit-content;max-width:calc(100% - 24px);padding:8px;display:flex;position:absolute;top:calc(100% + 8px);left:12px;box-shadow:0 4px 12px #30362e14}@media (max-width:800px){.manual-builder .composition-graph .connection-workspace-actions select{flex:none;width:180px}}
.composition-builder{--ink:var(--text,#30362e);--paper:var(--bg,#eee9dc);--muted:#626c60;color:var(--ink);background:var(--paper);min-height:100dvh;padding:0}.composition-builder *{box-sizing:border-box}.composition-notice{background:#fff2d8;border-radius:6px;margin-bottom:12px;padding:12px;display:block}.composition-workspace{isolation:isolate;grid-template-columns:190px minmax(0,1fr);align-items:start;gap:12px;display:grid}.composition-workspace:has(.composition-settings-fields){grid-template-columns:175px minmax(0,1fr) 280px}.composition-builder.is-expanded .composition-workspace{display:block}.composition-inventory,.composition-settings-fields{background:var(--panel,white);border:1px solid var(--border,#ccc);border-radius:8px;min-width:0;padding:12px}.composition-inventory h2{margin:18px 0 8px;font-size:14px}.composition-inventory h2:first-child{margin-top:0}.composition-inventory>button{text-align:left;overflow-wrap:anywhere;align-items:center;gap:6px;width:100%;margin-bottom:6px;display:flex}.composition-inventory small{color:var(--muted);margin-left:auto;font-size:10px}.composition-color{border-radius:50%;flex-shrink:0;width:10px;height:10px}.composition-preview{border:1px solid var(--border);background:color-mix(in srgb, var(--panel) 72%, var(--paper));border-radius:16px;width:min(100%,1240px);min-width:0;margin:0 auto;overflow:hidden;box-shadow:0 16px 40px #2a2d2514}.composition-preview.is-mobile{width:390px;max-width:100%;margin-inline:auto}.composition-settings-fields header,.composition-library header{align-items:center;gap:8px;display:flex}.composition-settings-fields h2,.composition-library h2{flex:1;font-size:17px}.composition-settings-fields label,.composition-library label{flex-direction:column;gap:5px;margin:12px 0;font-size:13px;display:flex}.composition-settings-fields input,.composition-settings-fields select,.composition-settings-fields textarea,.composition-library input,.composition-library select{border:1px solid var(--border,#ccc);background:var(--paper,#faf8f1);width:100%;min-width:0;min-height:38px;color:var(--ink,#252a28);border-radius:5px;padding:7px}.composition-settings-fields input[type=color]{padding:3px}.composition-settings-fields input[type=checkbox]{width:18px;min-height:18px}.composition-settings-fields input[type=range]{border:none;padding:0}.composition-settings-fields label.composition-toggle{flex-direction:row;align-items:center}.composition-settings-fields fieldset{border:1px solid var(--border,#ccc);border-radius:6px;min-width:0;margin:12px 0;padding:10px}.composition-settings-fields p,.composition-library p{color:var(--muted,#656b66);font-size:12px;line-height:1.6}.composition-number{grid-template-columns:minmax(0,1fr) 80px;align-items:center;gap:8px;display:grid}.composition-object-actions{flex-wrap:wrap;gap:6px;margin:14px 0;display:flex}.composition-library{border:1px solid var(--border,#ccc);background:var(--panel,white);width:540px;max-width:calc(100vw - 24px);max-height:85vh;color:var(--ink);border-radius:12px;padding:20px}.composition-library::backdrop{background:#18232170}.composition-library nav{gap:6px;display:flex}.composition-library>button{text-align:left;flex-direction:column;gap:6px;width:100%;margin:8px 0;display:flex}.composition-library>button span{font-size:12px;line-height:1.5}@container (max-width:650px){.composition-lesson-body{grid-template-columns:1fr}.composition-town{height:360px}}@media (max-width:1100px){.composition-workspace:has(.composition-settings-fields){grid-template-columns:150px minmax(0,1fr) 245px}}@media (max-width:800px){.composition-builder{padding:10px}:is(.composition-workspace,.composition-workspace:has(.composition-settings-fields)){flex-direction:column;display:flex}.composition-inventory{flex-wrap:wrap;gap:6px;width:100%;display:flex}.composition-inventory h2{width:100%;margin:8px 0 3px}.composition-inventory>button{width:auto;max-width:100%}.composition-inventory small{display:none}.composition-preview{order:3;width:100%}.composition-settings-fields{order:2;width:100%}}.composition-inventory-toggle{display:none}.composition-inventory-content>button{text-align:left;overflow-wrap:anywhere;align-items:center;gap:6px;width:100%;margin-bottom:6px;display:flex}@media (max-width:800px){.composition-inventory-toggle{text-align:left;width:100%;display:block}.composition-inventory-content{flex-wrap:wrap;gap:6px;width:100%;display:flex}.composition-inventory-content[data-open=false]{display:none}.composition-inventory-content>button{width:auto;max-width:100%}}:is(.composition-builder .composition-workspace,.composition-builder .composition-workspace:has(.composition-settings-fields)){display:block}.composition-builder .composition-preview{margin-top:18px}.composition-builder .composition-preview.is-mobile{width:min(390px,100vw - 24px)}.composition-graph[hidden],.composition-preview[hidden]{display:none}.composition-builder:has(.composition-preview.is-board-workspace:not([hidden])){flex-direction:column;height:100dvh;min-height:0;display:flex;overflow:hidden}.composition-builder:has(.composition-preview.is-board-workspace:not([hidden]))>.composition-workspace{flex:1;min-height:0;position:relative}.composition-builder .composition-preview.is-board-workspace{width:100%;height:100%;box-shadow:none;border:0;border-radius:0;margin:0;padding:0}.composition-builder.is-expanded .recipe-lesson.is-board-workspace>header{background:0 0;border:0;flex:none;padding:16px 24px;display:block}.composition-builder.is-expanded .recipe-lesson.is-board-workspace>header h1{font:600 28px / 1.2 var(--font-sans);margin:0 0 6px}.composition-builder.is-expanded .recipe-lesson.is-board-workspace>header p{color:var(--text-dim);margin:0;font-size:14px}.composition-builder.is-expanded .spatial-board.is-workspace{background:0 0}@media (max-width:700px){.composition-builder.is-expanded .recipe-lesson.is-board-workspace>header{padding:12px 16px}.composition-builder.is-expanded .recipe-lesson.is-board-workspace>header h1{font-size:22px}}.composition-graph .connection-workspace{flex-direction:column;min-height:520px;display:flex}.composition-graph .connection-camera-tools{align-items:center;display:flex}.composition-view-menu{position:relative}.composition-view-menu>summary{cursor:pointer;padding:10px}.composition-view-menu>div{z-index:8;border:1px solid var(--border);background:var(--panel);border-radius:8px;width:220px;padding:12px;position:absolute;top:100%;right:0}.composition-view-menu button{width:100%;margin-bottom:6px}.composition-builder .composition-notice{border-radius:0;margin:0}.composition-connection-status{z-index:5;background:var(--panel);border:1px solid var(--border);border-radius:12px;max-width:330px;padding:14px;font-size:13px;position:absolute;bottom:20px;right:20px;box-shadow:0 4px 24px #30362e18}.composition-connection-status p{margin:0 0 10px}.composition-connection-status button{margin:4px 4px 0 0}.connection-wire-preview{stroke:#36786b;stroke-dasharray:6 4;pointer-events:none}.component-dialog{--ink:var(--text,#30362e);--paper:var(--bg,#eee9dc);--muted:#626c60;color:var(--ink);background:var(--panel,#fffbef);border:1px solid var(--border,#cec8bb);border-radius:16px;width:480px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 40px);padding:0;box-shadow:0 20px 80px #18232138}.component-dialog.is-wide{width:1040px}.component-dialog::backdrop{background:#18232170}.component-dialog>header,.component-dialog>footer{background:var(--panel);align-items:center;gap:12px;padding:16px 20px;display:flex}.component-dialog>header{border-bottom:1px solid var(--border)}.component-dialog>header h2{flex:1;margin:0;font-size:18px}.component-dialog>header>div{flex:1;min-width:0}.component-dialog-type{color:var(--text-dim);margin:5px 0 0;font-size:13px}.control-type-settings{border:1px solid var(--border);border-radius:10px;margin:0 0 16px;padding:12px}.component-dialog>footer{border-top:1px solid var(--border);justify-content:flex-end}.component-dialog-body{padding:20px}.component-dialog .builder-inspector,.component-dialog .connection-inspector{border:0;width:100%;max-height:none;padding:0}.component-dialog .inspector-close,.component-dialog .connection-inspector-close{display:none}.composition-component-settings{grid-template-columns:1fr;gap:24px;display:grid}.composition-component-settings.has-visual{grid-template-columns:minmax(240px,.8fr) minmax(0,1.3fr);align-items:start}.composition-settings-fields{background:0 0;border:0;border-radius:0;padding:0}.composition-settings-fields details{border-top:1px solid var(--border);margin:16px 0;padding-top:10px}.composition-settings-fields summary{cursor:pointer;font-size:14px}.composition-settings-fields h2{margin:0}.composition-settings-fields .composition-number input[type=range]{width:100%;min-width:0}.composition-settings-visual{min-width:0;position:sticky;top:0}.composition-settings-visual h3{margin:0 0 12px;font-size:14px}.component-visual-editor{border:1px solid var(--border);background:var(--paper);border-radius:10px;padding:10px}.component-visual-editor .composition-town{height:400px}.composition-library nav{flex-wrap:wrap}.composition-library button{font-size:14px}.composition-build-empty{text-align:center;border:1px dashed var(--border);border-radius:12px;padding:60px 24px}.composition-draft-hint,.composition-unconnected-help{color:var(--muted);font-size:14px}@media (max-width:800px){.composition-builder{padding:0}.composition-component-settings.has-visual{grid-template-columns:1fr}.composition-settings-visual{grid-row:1;position:static}.component-dialog{max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.component-dialog-body{padding:14px}.composition-graph .connection-workspace-header{flex-wrap:wrap;gap:8px;padding:10px 12px}.composition-graph .connection-workspace-actions{width:100%}.composition-graph .connection-workspace-actions select{flex:1}.composition-graph .connection-workspace{height:max(560px,100dvh - 240px)}.composition-graph .connection-legend{gap:10px;font-size:10px;left:12px}.composition-connection-status{max-width:none;bottom:85px;left:12px;right:12px}.composition-builder .composition-preview{padding:12px}}.manual-builder:not(.composition-builder) .component-dialog .builder-inspector{border:0;padding:0}.manual-builder .component-dialog .builder-inspector h2{display:none}.manual-builder[data-tab=Connections] .builder-mobile-settings{display:block}.component-dialog[open]{flex-direction:column;display:flex}.component-dialog>header,.component-dialog>footer{flex-shrink:0}.component-dialog-body{min-height:0;overflow-y:auto}.connection-port{touch-action:none}.composition-fraction-pieces .math-scene-label{display:none}.composition-fraction-pieces rect[fill=\#245bcb]{fill:var(--fraction-color,#245bcb)}.composition-fraction-pieces rect[stroke=\#245bcb]{stroke:var(--fraction-color,#245bcb)}.component-library-dialog .component-dialog-body{flex-direction:column;padding:0;display:flex;overflow:hidden}.composition-catalog{flex-direction:column;height:min(690px,100dvh - 190px);min-height:0;display:flex}.catalog-controls{border-bottom:1px solid var(--border);background:var(--panel);flex-shrink:0;padding:18px 22px}.manual-builder .catalog-controls label{color:var(--muted);gap:5px;margin:0;font-size:12px}.catalog-search input{width:100%}.catalog-filters{grid-template-columns:1.25fr 1fr 1fr;gap:12px;margin-top:12px;display:grid}.catalog-filters select{width:100%;font-size:13px}.catalog-feedback{padding-top:10px;font-size:14px;display:block}.builder-feedback{border:1px solid var(--border);background:var(--panel);color:var(--ink);border-radius:10px;grid-template-columns:auto minmax(0,1fr);gap:3px 10px;margin:12px;padding:12px 14px;display:grid}.builder-feedback>strong{grid-column:1/-1}.builder-feedback>strong>span{border-radius:50%;place-items:center;width:1.4rem;height:1.4rem;margin-right:5px;display:inline-grid}.builder-feedback p{grid-column:1/-1;margin:2px 0;line-height:1.45}.builder-feedback.is-error{background:#fff3f0;border-color:#c45a4b}.builder-feedback.is-error>strong>span{color:#fff;background:#c45a4b}.builder-feedback.is-success{background:#f0f8f1;border-color:#5c8d6b}.builder-feedback.is-success>strong>span{color:#fff;background:#5c8d6b}.builder-feedback details{grid-column:1/-1}.builder-feedback pre{white-space:pre-wrap;max-height:150px;font-size:11px;overflow:auto}.catalog-import-flow,.catalog-detail{min-height:0;padding:clamp(18px,4vw,34px);overflow-y:auto}.catalog-import-flow>h3,.catalog-detail>h3{margin-bottom:6px}.catalog-file-drop{border:2px dashed var(--border);background:var(--bg);text-align:center;border-radius:14px;justify-items:center;gap:8px;margin:20px 0;padding:28px;display:grid}.catalog-file-drop p{color:var(--muted);margin:0}.catalog-import-review{border:1px solid var(--border);background:var(--panel);border-radius:12px;padding:18px}.catalog-import-flow textarea{width:100%;margin:10px 0;font:11px/1.45 ui-monospace,monospace}.catalog-schematic{border:1px solid var(--border);background:var(--bg);border-radius:12px;margin:20px 0;padding:18px}.catalog-schematic>div{flex-wrap:wrap;gap:8px;display:flex}.catalog-schematic span{background:var(--panel);border-radius:999px;padding:8px 11px;font-size:12px}.catalog-schematic figcaption{color:var(--muted);margin-top:12px;font-size:12px}.catalog-browse{flex:1;grid-template-columns:200px minmax(0,1fr);min-height:0;display:grid}.catalog-browse[hidden]{display:none}.catalog-sections{background:var(--bg);border-right:1px solid var(--border);padding:18px 12px;overflow-y:auto}.catalog-sections>p{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 10px 12px;font-size:11px}.manual-builder .catalog-sections button{text-align:left;background:0 0;border:0;align-items:center;gap:8px;width:100%;padding:9px;font-size:13px;display:flex}.catalog-sections button span:nth-child(2){flex:1}.catalog-sections button small{color:var(--muted)}.catalog-results{overscroll-behavior:contain;min-height:0;padding:0 22px 22px;overflow-y:auto}.catalog-result-count{color:var(--muted);margin:16px 0;font-size:12px;display:block}.catalog-results section{scroll-margin-top:16px}.manual-builder .catalog-results h3{align-items:center;gap:10px;margin:24px 0 12px;font-size:15px;display:flex}.catalog-results h3 small{color:var(--muted);font-size:12px;font-weight:400}.catalog-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.catalog-card-grid article{border:1px solid var(--border);background:var(--panel);border-radius:12px;flex-direction:column;min-width:0;padding:18px;display:flex}.catalog-card-heading{align-items:flex-start;gap:12px;display:flex}.catalog-card-heading>div{min-width:0}.catalog-card-heading strong{overflow-wrap:anywhere;font-size:16px;line-height:1.3}.catalog-card-icon{background:var(--bg);width:34px;height:34px;color:var(--accent);border-radius:9px;flex-shrink:0;place-items:center;font-size:23px;display:grid}.catalog-kind{color:var(--muted);margin-top:4px;font-size:11px;display:block}.catalog-card-grid article p{margin:14px 0 10px;font-size:13px;line-height:1.55}.catalog-placement{color:var(--muted);margin-top:auto;font-size:12px;line-height:1.5;display:block}.catalog-card-actions{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.manual-builder .catalog-card-actions button{padding:8px 10px;font-size:12px}.manual-builder .catalog-card-actions button:last-child{background:0 0;border-color:#0000}.catalog-empty{text-align:center;padding:24px}.catalog-empty p{color:var(--muted);font-size:14px}.catalog-detail{min-height:0;padding:22px;overflow-y:auto}.catalog-detail h3{margin-bottom:8px;font-size:24px}.catalog-detail p,.catalog-detail li{font-size:14px}.catalog-detail li{margin:8px 0}.catalog-detail li small{color:var(--muted);margin-left:8px}.catalog-detail-add{background:var(--bg);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:20px 0;padding:16px;display:flex}.catalog-detail-add label{gap:6px;min-width:0;display:grid}.catalog-detail-add select{max-width:100%}.catalog-detail-add p{margin:0}.catalog-detail details,.catalog-import{border-top:1px solid var(--border);margin-top:22px;padding:16px 0}.catalog-detail fieldset{min-width:0}.composition-catalog summary,.composite-interface-editor summary{cursor:pointer;align-items:center;gap:8px;font-size:14px;list-style:none;display:flex}.composition-catalog summary::-webkit-details-marker{display:none}.composite-interface-editor summary::-webkit-details-marker{display:none}.composition-catalog summary:before,.composite-interface-editor summary:before{content:"›";font-size:22px;transition:transform .15s}.composition-catalog details[open]>summary:before,.composite-interface-editor[open]>summary:before{transform:rotate(90deg)}.composite-interface-editor{margin:0 0 24px}.composite-interface-editor p{color:var(--muted);font-size:13px}.composite-interface-editor summary span{color:var(--muted);margin-left:auto;font-size:12px}.composite-interface-editor fieldset{border:1px solid var(--border);border-radius:8px;padding:12px}.composite-interface-choice{border-bottom:1px solid var(--border);padding:4px 0}.composite-interface-choice:last-child{border-bottom:0}.composite-interface-choice small{color:var(--muted);font-size:11px;display:block}.manual-builder .composite-port-name{margin-left:26px;font-size:12px}.connection-node--composite{border-color:var(--accent,#647556)}.builder-sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.composition-builder .composition-toolbar{grid-template-columns:auto minmax(100px,1fr) auto repeat(4,auto);gap:8px;padding:6px 16px;display:grid}.composition-toolbar>a{white-space:nowrap;margin-right:4px;font-size:13px;text-decoration:none}.manual-builder .composition-document-title{min-width:0;margin:0}.manual-builder .composition-document-title input{background:0 0;border-color:#0000;width:100%;padding:8px;font-size:18px;font-weight:600}.manual-builder .composition-document-title input:hover{border-color:var(--border)}.composition-save-state{color:var(--muted);white-space:nowrap;font-size:11px}.manual-builder .composition-toolbar>button{white-space:nowrap;font-size:13px}.composition-document-menu summary{align-items:center;gap:6px;min-height:44px;font-size:13px;display:flex}.composition-document-menu>div>details{margin-bottom:8px}.composition-document-menu .builder-action-history>div{width:100%;box-shadow:none;max-height:240px;position:static}.composition-builder .composition-tabs{flex-wrap:nowrap;align-items:center;gap:8px;padding:4px 16px;display:flex}.composition-mode-switch{background:var(--bg);border:1px solid var(--border);border-radius:10px;gap:3px;min-width:0;margin:0;padding:3px;display:flex}.manual-builder .composition-mode-switch button{background:0 0;border:0;min-height:36px;padding:8px 10px;font-size:13px}.manual-builder .composition-mode-switch button[aria-pressed=true]{background:var(--panel);box-shadow:0 1px 4px #30362e15}.composition-tabs>details{margin-left:auto}.manual-builder .composition-tabs>button{background:0 0;border-color:#0000;font-size:13px}.manual-builder .composition-appearance-toggle{border-color:var(--border);background:var(--panel);align-items:center;gap:7px;display:inline-flex}.composition-appearance-toggle svg{fill:none;stroke:currentColor;stroke-width:1.8px;width:18px;height:18px}.manual-builder .composition-appearance-toggle[aria-pressed=true]{color:#fff;border-color:var(--accent);background:var(--accent)}.composition-preview.is-appearance-preview .spatial-board{border-radius:0}.toolbar-short-label{display:none}@media (max-width:700px){.manual-builder .composition-toolbar>button{padding:8px;font-size:12px}.composition-document-menu>summary{gap:2px;padding:8px 4px;font-size:12px}.composition-document-menu>div{width:min(300px,100vw - 24px);left:50%;right:auto;transform:translate(-50%)}.manual-builder .composition-mode-switch button,.manual-builder .composition-tabs>button{padding:8px;font-size:12px}.composition-builder .composition-toolbar{grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;padding:6px 12px}.composition-toolbar>a{grid-column:1/3}.composition-document-title{grid-column:3/-1}.manual-builder .composition-document-title input{font-size:15px}.composition-toolbar>.composition-storage{grid-area:2/1/auto/3}.composition-storage>div{left:0;right:auto}.composition-toolbar>.builder-primary{grid-area:2/6}.composition-toolbar>.composition-save-action{grid-area:2/5}.composition-toolbar .toolbar-full-label,.composition-tabs .toolbar-full-label{display:none}.composition-toolbar .toolbar-short-label,.composition-tabs .toolbar-short-label{display:inline}.composition-builder .composition-tabs{gap:4px;padding:4px 12px}.catalog-controls{padding:12px}.catalog-filters{grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.catalog-filters>label:first-child{grid-column:1/-1}.catalog-filters select{min-height:38px;padding:7px 9px;font-size:12px}.catalog-browse{flex-direction:column;display:flex}.catalog-sections{border-right:0;border-bottom:1px solid var(--border);flex-shrink:0;gap:6px;padding:8px 12px;display:flex;overflow-x:auto}.catalog-sections>p{display:none}.manual-builder .catalog-sections button{white-space:nowrap;flex-shrink:0;width:auto;min-height:36px;padding:6px 8px;font-size:12px}.catalog-results{padding:0 12px 12px}.catalog-card-grid{grid-template-columns:1fr}.catalog-detail{padding:16px}.catalog-detail-add{flex-wrap:wrap}.composition-catalog{height:calc(100dvh - 165px)}}@media (prefers-reduced-motion:reduce){.composition-catalog summary:before{transition:none}}.manual-builder summary{cursor:pointer;align-items:center;gap:10px;list-style:none;display:flex}.manual-builder summary::-webkit-details-marker{display:none}.manual-builder summary::marker{content:""}.manual-builder summary:before{content:"";opacity:.65;border-bottom:1.7px solid;border-right:1.7px solid;flex:0 0 7px;width:7px;height:7px;margin:0 3px;transition:transform .15s;transform:rotate(-45deg)}.manual-builder details[open]>summary:before{transform:rotate(45deg)}.manual-builder.composition-builder select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236e776b' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E");background-position:right 11px center;background-repeat:no-repeat;padding-right:34px}.manual-builder .composition-document-menu>summary{border:1px solid var(--border);border-radius:9px;flex-direction:row-reverse;justify-content:center;min-height:40px;padding:9px 13px}.composition-document-menu>summary:hover,.composition-document-menu[open]>summary{background:var(--bg)}.manual-builder .composition-document-menu>div{border-radius:14px;width:min(340px,100vw - 24px);margin-top:10px;padding:12px;box-shadow:0 16px 48px #30362e24,0 2px 8px #30362e0d}.composition-document-menu>div>details{border-bottom:1px solid var(--border);padding:4px 0 10px}.manual-builder .composition-document-menu>div summary{border-radius:7px;padding:10px 8px;font-weight:550}.composition-document-menu>div summary:hover{background:var(--bg)}.manual-builder .composition-settings-fields summary{padding:8px 0;font-weight:550}.manual-builder summary:focus-visible,.manual-builder .input-editor-choice:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.catalog-controls{padding:20px 24px}.manual-builder .catalog-search input{background-color:var(--bg);min-height:46px;padding-left:15px}.catalog-filters{margin-bottom:14px}.catalog-results{background:color-mix(in srgb, var(--bg) 45%, var(--panel))}.catalog-card-grid{gap:16px}.catalog-card-grid article{border-radius:14px;padding:20px;transition:border-color .15s,box-shadow .15s;box-shadow:0 2px 5px #30362e06}.catalog-card-grid article:hover{border-color:color-mix(in srgb, var(--accent) 45%, var(--border));box-shadow:0 5px 16px #30362e0c}.catalog-card-icon{background:color-mix(in srgb, var(--accent) 9%, var(--panel));width:40px;height:40px}.catalog-card-actions{border-top:1px solid var(--border);padding-top:14px}.manual-builder .catalog-sections button{border-radius:8px;margin-bottom:4px;line-height:1.5}.manual-builder .catalog-sections button:hover:not(:disabled){background:var(--panel);color:var(--accent)}.catalog-results h3 small{background:var(--panel);border:1px solid var(--border);border-radius:20px;padding:2px 7px}.input-editor-hint{color:var(--muted);margin-top:0;font-size:14px;line-height:1.6}.input-editor-section{border-top:1px solid var(--border);padding:18px 0}.input-editor-section h3{margin:0 0 12px;font-size:14px}.input-editor-section p{color:var(--muted);font-size:13px}.manual-builder .input-editor-choice{text-align:left;justify-content:space-between;align-items:center;gap:12px;width:100%;margin:6px 0;padding:12px;font-size:13px;display:flex}.input-editor-choice small{color:var(--accent);flex-shrink:0}.input-editor-connection{justify-content:space-between;align-items:center;gap:12px;font-size:13px;display:flex}.manual-builder .input-editor-search{gap:8px;margin:12px 0 20px;font-size:13px;display:grid}.composition-plane-navigation{flex-wrap:wrap;align-items:center;gap:8px;padding:12px 0 16px;display:flex}.manual-builder .composition-plane-navigation button{border-radius:8px;min-height:38px;padding:8px 13px;font-size:13px}.composition-plane-navigation button:last-child{margin-left:8px}.manual-builder .recipe-author-label{background:0 0;gap:16px;padding:12px 4px}.manual-builder .recipe-author-label>span{color:var(--ink);letter-spacing:-.02em;font-size:17px;font-weight:600}@media (max-width:700px){.catalog-controls{padding:14px}.catalog-card-grid article{padding:16px}.manual-builder .composition-tabs>details>summary{font-size:12px}.manual-builder .composition-tabs>details>summary:after{content:none}}@media (prefers-reduced-motion:reduce){.manual-builder summary:before,.catalog-card-grid article{transition:none}}.composition-graph .connection-port--input:hover,.composition-graph .connection-port--input:focus-visible{background:color-mix(in srgb, var(--accent) 8%, var(--panel));border-radius:6px}.composition-graph .connection-port--input:hover .connection-port-label{text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--accent) 40%, transparent);text-decoration-color:color-mix(in srgb, var(--accent) 40%, transparent);text-underline-offset:4px}.manual-builder .input-editor-dialog{width:580px}.manual-builder .input-editor-dialog .component-dialog-body{flex-direction:column;padding:20px 24px;display:flex;overflow:auto}.manual-builder .input-editor-modes{background:var(--bg);border-radius:10px;flex-shrink:0;gap:4px;padding:4px;display:flex}.manual-builder .input-editor-modes button{white-space:nowrap;background:0 0;border:0;flex:1;min-height:38px;padding:9px 10px;font-size:13px}.manual-builder .input-editor-modes button[aria-pressed=true]{background:var(--panel);color:var(--accent);font-weight:600;box-shadow:0 1px 4px #30362e18}.manual-builder .input-editor-hint{margin:16px 0 20px;font-size:13px}.manual-builder .input-editor-section{border:0;padding:0}.manual-builder .input-editor-section h3{color:var(--muted);justify-content:space-between;margin:0 0 10px;font-size:12px;font-weight:500;display:flex}.manual-builder .input-editor-section .catalog-form{background:var(--bg);border:1px solid var(--border);border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;padding:20px;display:grid}.manual-builder .input-editor-section .catalog-form label{gap:8px;margin:0;font-size:13px;font-weight:500;display:grid}.manual-builder .input-editor-section .catalog-form input{background:var(--panel);width:100%;min-height:44px}.manual-builder .input-editor-section .catalog-form>button[type=submit]{background:var(--accent,#285e56);color:#fff;border:1px solid var(--accent,#285e56);border-radius:8px;width:auto;min-height:44px;padding:10px 18px;font-size:13px;font-weight:600}.manual-builder .input-editor-section .catalog-form>button[type=submit]:hover{filter:brightness(.92)}.manual-builder .input-editor-section .catalog-form>output{grid-column:1/-1;font-size:12px}.manual-builder .input-editor-section .catalog-form>output:empty{display:none}.manual-builder .input-editor-section .catalog-form>fieldset{grid-column:1/-1;min-width:0}.manual-builder .input-editor-options{overscroll-behavior:contain;min-height:0;max-height:min(420px,45dvh);overflow:auto}.manual-builder .input-editor-options:empty{display:none}.manual-builder .input-editor-search{margin:0 0 16px;font-size:12px}.manual-builder .input-editor-choice{border:0;border-bottom:1px solid var(--border);background:0 0;border-radius:0;min-height:48px;margin:0;padding:12px 8px}.manual-builder .input-editor-choice:hover{background:var(--bg)}.manual-builder .input-editor-choice small{font-size:12px}.manual-builder .input-editor-connection{background:var(--bg);border-radius:8px;margin-bottom:12px;padding:8px 12px}.manual-builder .input-editor-dialog>footer{padding:12px 24px}.manual-builder .input-editor-dialog>footer button{min-height:36px;color:var(--muted);background:0 0;border:0;padding:6px 12px;font-size:13px}.manual-builder .component-library-dialog{width:1120px;height:min(840px,100dvh - 40px)}.manual-builder .component-library-dialog>header{padding:14px 22px}.manual-builder .component-library-dialog>header button{width:34px;min-height:34px;padding:4px}.manual-builder .composition-catalog{flex:1;height:auto}.manual-builder .catalog-controls{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:14px 22px;display:grid}.manual-builder .catalog-controls[hidden],.manual-builder .catalog-filters[hidden]{display:none}.manual-builder .catalog-search{grid-area:1/1}.manual-builder .catalog-search input{min-height:40px;padding:9px 12px;font-size:13px}.manual-builder .catalog-filter-toggle{grid-area:1/2;align-items:center;gap:7px;display:flex}.manual-builder .catalog-import-button{grid-area:1/3}.manual-builder .catalog-controls>button{min-height:38px;padding:8px 12px;font-size:12px}.manual-builder .catalog-filter-toggle[aria-expanded=true]{background:var(--bg);border-color:var(--accent)}.catalog-filter-dot{background:var(--accent);border-radius:50%;width:6px;height:6px}.manual-builder .catalog-filters{grid-column:1/-1;gap:14px;margin:0;padding-top:4px}.manual-builder .catalog-filters label{font-size:11px}.manual-builder .catalog-filters select{min-height:36px;padding-top:7px;padding-bottom:7px;font-size:12px}.manual-builder .catalog-controls>.builder-feedback{grid-column:1/-1;margin:0}.manual-builder .catalog-browse{grid-template-columns:190px minmax(0,1fr)}.manual-builder .catalog-sections{padding:16px 10px}.manual-builder .catalog-sections>p{margin:0 10px 10px;font-size:10px}.manual-builder .catalog-sections button{gap:8px;min-height:36px;margin:0 0 3px;padding:8px 10px;font-size:12px;line-height:1.35}.manual-builder .catalog-sections button[aria-pressed=true]{background:color-mix(in srgb, var(--accent) 10%, var(--panel));color:var(--accent);font-weight:600}.manual-builder .catalog-sections button>span:first-child{text-align:center;flex-shrink:0;width:16px}.manual-builder .catalog-results{padding:0 20px 20px}.manual-builder .catalog-results h3{margin-top:18px}.manual-builder .catalog-card-grid article{padding:16px}.manual-builder .catalog-card-heading strong{font-size:15px}.manual-builder .catalog-card-grid article p{margin:12px 0 8px}.manual-builder .catalog-card-actions{margin-top:10px;padding-top:10px}.manual-builder .component-library-dialog>footer{padding:8px 20px}.manual-builder .component-library-dialog>footer button{min-height:32px;color:var(--muted);background:0 0;border-color:#0000;padding:5px 10px;font-size:12px}.manual-builder .component-dialog-body,.manual-builder .catalog-results,.manual-builder .catalog-sections,.manual-builder .input-editor-options{scrollbar-width:thin;scrollbar-color:#b8bbae66 transparent}.manual-builder .component-dialog-body::-webkit-scrollbar{width:5px;height:5px}.manual-builder .catalog-results::-webkit-scrollbar{width:5px;height:5px}.manual-builder .catalog-sections::-webkit-scrollbar{width:5px;height:5px}.manual-builder .input-editor-options::-webkit-scrollbar{width:5px;height:5px}.manual-builder .component-dialog-body::-webkit-scrollbar-thumb{background:#b8bbae88;border-radius:8px}.manual-builder .catalog-results::-webkit-scrollbar-thumb{background:#b8bbae88;border-radius:8px}.manual-builder .catalog-sections::-webkit-scrollbar-thumb{background:#b8bbae88;border-radius:8px}.manual-builder .input-editor-options::-webkit-scrollbar-thumb{background:#b8bbae88;border-radius:8px}.manual-builder .catalog-sections::-webkit-scrollbar-track{background:0 0}.manual-builder .catalog-results::-webkit-scrollbar-track{background:0 0}.manual-builder .composition-graph .connection-selection-actions{border-radius:12px;flex-wrap:nowrap;gap:4px;width:max-content;max-width:calc(100% - 32px);padding:6px 8px;top:auto;bottom:22px;left:50%;transform:translate(-50%);box-shadow:0 6px 24px #30362e1a}.manual-builder .connection-selection-actions>span{white-space:nowrap;color:var(--muted);border-right:1px solid var(--border);margin-right:4px;padding:0 12px 0 6px;font-size:12px}.manual-builder .connection-selection-actions button{white-space:nowrap;background:0 0;border:0;min-height:34px;padding:6px 10px;font-size:12px}.manual-builder .connection-selection-actions button:hover:not(:disabled){background:var(--bg)}.manual-builder .connection-selection-actions .selection-delete{color:#a14638}.manual-builder .connection-selection-actions .selection-clear{border-left:1px solid var(--border);border-radius:0;order:10;width:30px;padding:4px;font-size:18px}.manual-builder .composition-graph .connection-workspace-header{border-radius:10px;padding:5px}.manual-builder .composition-graph .connection-workspace-actions{gap:5px}.manual-builder .composition-graph .connection-workspace-actions select{background-color:#0000;border-color:#0000;width:180px;min-height:34px;padding-top:6px;padding-bottom:6px;font-size:12px}.manual-builder .composition-graph .connection-workspace-actions>button{background:0 0;border-color:#0000;min-height:34px;padding:6px 10px;font-size:12px}@media (max-width:700px){.manual-builder .component-library-dialog{height:calc(100dvh - 16px)}.manual-builder .catalog-controls{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:10px 12px}.manual-builder .catalog-search{grid-column:1/-1}.manual-builder .catalog-filter-toggle{grid-area:2/1;justify-self:start}.manual-builder .catalog-import-button{grid-area:2/2}.manual-builder .catalog-filters{grid-template-columns:1fr}.manual-builder .catalog-sections{padding:8px 12px}.manual-builder .catalog-sections button{min-height:34px;margin:0}.manual-builder .catalog-results{padding:0 12px 12px}.manual-builder .input-editor-dialog .component-dialog-body{padding:16px}.manual-builder .input-editor-modes button{padding:8px 6px;font-size:12px}.manual-builder .input-editor-section .catalog-form{grid-template-columns:1fr;padding:14px}.manual-builder .input-editor-section .catalog-form>button{width:100%}.manual-builder .composition-graph .connection-selection-actions{flex-wrap:wrap;justify-content:center;gap:2px;width:max-content;bottom:78px}.manual-builder .connection-selection-actions button{min-height:40px}}.manual-builder .input-editor-modes{border:0;min-width:0;margin:0}.manual-builder .connection-selection-actions{min-width:0;margin:0}@media (min-width:701px) and (max-width:1100px){.manual-builder .composition-graph .connection-selection-actions{bottom:78px}}.composition-builder .composition-mode-switch,.composition-actions{flex-shrink:0}.composition-builder.is-expanded .composition-toolbar{grid-template-columns:auto minmax(0,1fr)}.manual-builder .composition-return{color:var(--accent);background:0 0;border-color:#0000;padding-inline:4px}.composition-builder.is-expanded .composition-document-title{grid-column:auto}.manual-builder .composition-storage>summary{min-height:44px;color:var(--muted);white-space:nowrap;align-items:center;gap:6px;padding:4px;display:flex}.manual-builder .composition-storage>summary:before{display:none}.composition-settings-menu>div{z-index:60;box-shadow:0 8px 24px #30362e20}.composition-storage>div{z-index:60;width:min(320px,100vw - 24px);line-height:1.6;box-shadow:0 8px 24px #30362e20}.composition-storage .builder-local-notice{border:0;padding:0}.composition-actions>details>summary{min-height:44px;padding:8px}.composition-actions .composition-document-menu>div{z-index:60;overscroll-behavior:contain;width:min(300px,100vw - 24px);max-height:min(560px,100dvh - 170px);position:absolute;left:auto;right:0;overflow-y:auto;transform:none;box-shadow:0 8px 24px #30362e20}.composition-document-menu>div>a{min-height:44px;color:var(--accent);border-radius:8px;padding:10px 14px;text-decoration:none;display:block}.composition-document-menu>div>button{text-align:left}.composition-document-menu>div>a:hover{background:var(--bg)}.manual-builder .composition-document-menu .composition-clear-action{border:0;border-top:1px solid var(--border);color:var(--danger,#a43b32);border-radius:0;margin-top:12px;padding-top:14px}@media (min-width:701px) and (max-width:1050px){.composition-toolbar .toolbar-full-label{display:none}.composition-toolbar .toolbar-short-label{display:inline}}@media (max-width:480px){.manual-builder .composition-storage>summary{gap:3px}.composition-save-state{white-space:normal;line-height:1.3}.manual-builder .composition-settings-menu>summary,.manual-builder .composition-document-menu>summary{justify-content:center;min-width:44px;min-height:44px;padding:8px}.manual-builder .composition-settings-menu>summary:before,.manual-builder .composition-document-menu>summary:before{display:none}}.builder-composer{z-index:40;pointer-events:auto;width:min(640px,100% - 32px);transition:width .2s,transform .2s;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.builder-composer .command-bar{width:100%}@media (max-width:768px){.builder-composer{width:calc(100% - 24px);bottom:14px}}.catalog-ai-input-row button:disabled{opacity:.5;cursor:not-allowed}.is-constructing .connection-node{animation:.18s ease-out construction-enter}.is-constructing .connection-node.is-changing{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 35%, transparent)}.is-constructing .connection-wire-line{stroke-dasharray:1200;animation:.26s ease-out construction-wire}.construction-follow{align-items:center;gap:6px;font-size:13px;display:flex}.construction-board-preview{width:100%;padding:24px}.construction-board-items{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.construction-board-item{border:1px dashed var(--border);background:var(--panel);border-radius:12px;flex-direction:column;gap:12px;padding:20px;animation:.18s ease-out construction-enter;display:flex}.construction-board-item.is-appearance{min-height:220px}.construction-board-item span{color:var(--muted);font-size:14px}@keyframes construction-enter{0%{opacity:0}to{opacity:1}}@keyframes construction-wire{0%{stroke-dashoffset:1200px}to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){.is-constructing .connection-node,.is-constructing .connection-wire-line,.construction-board-item{animation:none}}@media (max-width:768px){.composition-graph .connection-camera-tools{bottom:calc(var(--builder-composer-height,140px) + 28px)}}
.composition-builder.manual-builder{--paper:#f0f1e9;--muted:#647066;background:var(--paper)}.composition-builder.manual-builder .composition-toolbar{background:#fffdf7;border-bottom:1px solid #dce1d4;padding-block:10px}.composition-builder.manual-builder .composition-tabs{background:#fffdf7;border-bottom:1px solid #dce1d4;gap:12px;padding-block:10px}.composition-builder .composition-mode-switch{background:#eff1e8;border-color:#dce1d4}.composition-builder.manual-builder .composition-mode-switch button[aria-pressed=true]{color:var(--accent);background:#fffdf7;font-weight:600}.composition-builder.manual-builder .composition-tabs>button[data-composition-add]{color:var(--accent);background:#eaf0e3;border:1px solid #bccdbb;border-radius:9px;align-items:center;padding-inline:14px;font-weight:600;display:inline-flex}.composition-builder.manual-builder .composition-document-title input{letter-spacing:-.025em;border-radius:8px;font-size:17px}.composition-builder.manual-builder .composition-document-title input:focus{background:#f3f5ed}.composition-builder .connection-workspace-header{background:#f8f9f3;border-bottom-color:#dce1d4}.composition-builder .connection-workspace-title strong{font-size:13px}.composition-builder .connection-workspace-title>span{font-size:12px}.composition-graph:has(.builder-welcome) :is(.connection-workspace-header,.connection-camera-tools,.connection-legend){display:none}.composition-builder .builder-welcome{background:#fffdf7;border:1px solid #dce1d4;border-radius:22px;width:min(590px,100% - 40px);padding:30px 32px 24px;top:40%;box-shadow:0 16px 50px #30362e0a}.builder-welcome-diagram{color:var(--accent);justify-content:center;align-items:center;margin-bottom:22px;display:flex}.builder-welcome-diagram>span{background:#e9efdf;border:1px solid #d6dfca;border-radius:14px;place-items:center;width:48px;height:48px;display:grid}.builder-welcome-diagram>span:nth-of-type(2){background:var(--accent);color:#fffdf7;width:58px;height:58px}.builder-welcome-diagram .builder-icon{width:23px;height:23px}.builder-welcome-diagram i{background:#b6c6af;width:36px;height:1px}.builder-welcome-eyebrow{color:var(--accent);letter-spacing:.15em;font-size:10px;font-weight:700}.composition-builder.manual-builder .builder-welcome h2{letter-spacing:-.035em;margin:10px 0 12px;font-size:30px;font-weight:600;line-height:1.15}.builder-welcome>p{max-width:420px;color:var(--muted);margin:0 auto;font-size:14px;line-height:1.7}.builder-welcome-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin:22px 0 26px;display:flex}.composition-builder.manual-builder .builder-welcome-actions button{border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 14px;font-size:13px;display:inline-flex}.composition-builder .builder-welcome-actions .builder-primary{background:var(--accent);color:#fffdf7;border-color:var(--accent)}.builder-welcome-steps{text-align:left;border-top:1px solid #e1e5d9;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0;padding:20px 0 0;list-style:none;display:grid}.builder-welcome-steps li{align-items:flex-start;gap:8px;display:flex}.builder-welcome-steps li>span{height:22px;color:var(--accent);background:#edf1e5;border-radius:50%;flex:0 0 22px;place-items:center;font-size:10px;font-weight:600;display:grid}.builder-welcome-steps strong{font-size:11px;font-weight:600;line-height:1.5;display:block}.builder-welcome-steps small{color:var(--muted);margin-top:4px;font-size:11px;line-height:1.55;display:block}.builder-assistant-label{color:var(--muted);justify-content:center;align-items:center;gap:6px;padding:8px 12px;font-size:11px;display:flex}.builder-assistant-label .builder-icon{flex-basis:13px;width:13px;height:13px}.builder-assistant-label>span{border-left:1px solid #bdc6b6;margin-left:2px;padding-left:8px}@media (max-width:640px){.composition-builder .builder-welcome{width:calc(100% - 24px);max-height:calc(100dvh - var(--builder-composer-height,120px) - 210px);border-radius:16px;padding:22px 18px;top:16px;overflow-y:auto;transform:translate(-50%)}.composition-builder.manual-builder .builder-welcome h2{font-size:25px}.builder-welcome-diagram{display:none}.builder-welcome>p{font-size:13px}.builder-welcome-actions{margin:16px 0 18px}.builder-welcome-actions button{width:100%}.builder-welcome-steps{grid-template-columns:1fr;gap:10px;padding-top:16px}.builder-welcome-steps small{margin-top:0}.builder-assistant-label>span{display:none}}@media (min-width:641px) and (max-height:750px){.builder-welcome-diagram{display:none}.composition-builder .builder-welcome{padding-block:20px;top:35%}.builder-welcome-steps{padding-top:12px}.builder-welcome-actions{margin-block:16px}}
.manual-builder,.builder-start{--builder-border:var(--border,#d5cdbb);color:var(--text,#30362e);background:var(--bg,#eee9dc);font-family:var(--font-sans,sans-serif);min-height:100dvh;font-size:16px;line-height:1.5}.manual-builder *,.builder-start *{box-sizing:border-box}.manual-builder button:where(:not(.command-bar *)),.builder-start button,.manual-builder select:where(:not(.command-bar *)),.manual-builder input:where(:not([type=range]):not([type=checkbox]):not([type=radio])):where(:not(.command-bar *)),.manual-builder textarea:where(:not(.command-bar *)){font:inherit;color:inherit;border:1px solid var(--builder-border);background:var(--panel,#fffbef);border-radius:8px;max-width:100%;min-height:44px;padding:10px 14px}.manual-builder button,.builder-start button{cursor:pointer}.manual-builder button:disabled:where(:not(.command-bar *)){opacity:.5;cursor:default}.manual-builder :focus-visible:where(:not(.command-bar *)),.builder-start :focus-visible{outline:3px solid var(--accent);outline-offset:3px}.manual-builder label{gap:6px;margin:12px 0;display:grid}.manual-builder label:has(input[type=checkbox]){align-items:center;gap:10px;display:flex}.manual-builder input,.manual-builder select,.manual-builder textarea:where(:not(.command-bar *)){min-width:0}.manual-builder textarea:where(:not(.command-bar *)){resize:vertical;width:100%;min-height:100px}.manual-builder h1:not(.recipe-lesson *),.manual-builder h2:not(.recipe-lesson *),.manual-builder h3:not(.recipe-lesson *){line-height:1.25}.manual-builder h1:not(.recipe-lesson *){overflow-wrap:anywhere;min-width:0;margin:0;font-size:20px}.manual-builder h2:not(.recipe-lesson *){margin:0 0 20px;font-size:20px}.manual-builder h3:not(.recipe-lesson *){margin:24px 0 12px;font-size:16px}.manual-builder .builder-primary,.builder-start .builder-primary{background:var(--accent);color:var(--panel);border-color:var(--accent)}.builder-toolbar{border-bottom:1px solid var(--border);background:var(--panel);flex-wrap:wrap;align-items:center;gap:12px;padding:16px 24px;display:flex}.builder-toolbar h1{flex:1}.builder-tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:8px;padding:12px 24px;display:flex}.builder-tabs button[aria-pressed=true]{border-color:var(--accent);background:#dce6d7}.builder-tabs button:nth-child(3){margin-right:auto}.builder-layout{grid-template-columns:minmax(0,1fr);align-items:start;display:grid}.manual-builder[data-inspector=true] .builder-layout{grid-template-columns:minmax(0,1fr) 340px}.builder-preview-column{min-width:0}.builder-preview{padding:24px}.builder-preview>header{align-items:center;gap:8px;margin-bottom:16px;display:flex}.builder-preview>header strong{margin-right:auto}.builder-preview>header button[aria-pressed=true]{border-color:var(--accent);background:#dce6d7}.builder-preview-surface{background:var(--panel);border:1px solid var(--border);border-radius:12px;width:100%;max-width:1240px;margin:auto;container-type:inline-size}.builder-preview-surface.is-mobile{max-width:390px}.builder-preview>button{margin-top:16px}.builder-workspace{min-width:0;display:none}.manual-builder[data-tab=Connections] .builder-workspace{flex-direction:column;display:flex}.manual-builder[data-tab=Connections]:not(.manual-builder--expanded) .builder-preview-column,.manual-builder--expanded .builder-workspace{display:none}.manual-builder--expanded .builder-layout{grid-template-columns:minmax(0,1fr)}.builder-inspector{background:var(--panel);border-left:1px solid var(--border);overflow-wrap:anywhere;min-width:0;padding:24px;position:relative}.builder-inspector>button:not(.inspector-close){margin:4px 4px 4px 0}.builder-inspector fieldset{border:1px solid var(--border);border-radius:8px;min-width:0;margin:16px 0}.builder-inspector details{border-top:1px solid var(--border);margin-top:16px;padding-block:12px}.builder-inspector summary{cursor:pointer;align-items:center;min-height:44px;font-weight:600;display:flex}.inspector-close{float:right;margin:-8px -8px 8px 8px;font-size:24px;line-height:1}.builder-inspector>h2{padding-right:36px}.builder-component-dialog{border:1px solid var(--border);background:var(--panel);width:min(480px,100vw - 32px);max-height:calc(100dvh - 48px);color:var(--text);border-radius:16px;padding:0}.builder-component-dialog::backdrop{background:#30362e66}.builder-palette{padding:24px}.builder-palette>button:not(.inspector-close){text-align:left;width:100%;margin-bottom:8px}.builder-palette input{width:100%}.builder-file-menu{position:relative}.builder-file-menu>summary{border:1px solid var(--border);cursor:pointer;border-radius:8px;min-height:44px;padding:10px 14px}.builder-file-menu>div{z-index:5;border:1px solid var(--border);background:var(--panel);border-radius:12px;width:min(340px,100vw - 32px);max-height:70dvh;padding:16px;position:absolute;right:0;overflow:auto;box-shadow:0 8px 24px #30362e22}.builder-file-menu button{text-align:left;width:100%;margin-bottom:8px;display:block}.builder-import input{width:100%}.builder-library{margin-top:24px}.builder-library>div{gap:8px;margin-top:12px;display:grid}.builder-notice{background:#e4eadc;padding:12px 24px;display:block}.builder-recovery{padding:24px}.builder-recovery textarea{min-height:180px}.builder-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:480px;padding:32px;display:flex}.builder-empty h2,.builder-empty p{max-width:440px;margin:0}.builder-empty button{background:var(--accent);color:var(--panel);margin-top:12px}.empty-canvas-art{border:1px dashed var(--border);background:radial-gradient(var(--border) 1px, transparent 1px) 0 0 / 12px 12px;border-radius:12px;width:120px;height:90px}.empty-canvas-art--line{background:linear-gradient(transparent 49%, var(--border) 49%, var(--border) 51%, transparent 51%), linear-gradient(90deg, transparent 49%, var(--border) 49%, var(--border) 51%, transparent 51%)}.builder-start{padding:24px 32px 64px}.builder-start-nav{justify-content:space-between;align-items:center;display:flex}.builder-setup-content{max-width:1100px;margin:64px auto 0}.builder-eyebrow{color:var(--accent);letter-spacing:.08em;font-size:13px;font-weight:600}.builder-start h1{max-width:850px;margin:16px 0;font-family:Georgia,serif;font-size:clamp(30px,4vw,46px);line-height:1.15}.builder-start h2{font-size:20px}.builder-setup-content>p{max-width:680px}.builder-templates{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:32px 0;display:grid}.builder-templates>button{text-align:left;border-radius:12px;flex-direction:column;gap:12px;padding:20px;display:flex}.builder-templates>button[aria-pressed=true]{border-color:var(--accent);outline:2px solid var(--accent);outline-offset:2px}.builder-templates strong{font-size:18px}.builder-templates small{color:#53604d;margin-top:auto}.setup-actions{justify-content:flex-end;gap:12px;margin:24px 0 40px;display:flex}.setup-secondary{border-top:1px solid var(--border);padding:20px 0}.setup-secondary summary{cursor:pointer;min-height:44px}.setup-template-links{flex-wrap:wrap;gap:12px;display:flex}.setup-resume{background:var(--panel);border:1px solid var(--border);border-radius:12px;margin:24px 0;padding:24px}.setup-art{background:#e5e9dd;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;height:110px;display:flex}.setup-art--gas{background:radial-gradient(var(--accent) 2px, transparent 2px) 0 0 / 24px 24px, #e5e9dd}.setup-art--fractions span{border:1px solid var(--accent);background:#749c88;width:20%;height:28px}.setup-art--line{background:linear-gradient(#0000 49%,#99ac9b 49% 51%,#0000 51%),linear-gradient(90deg,#0000 49%,#99ac9b 49% 51%,#0000 51%),#e5e9dd}.setup-art--town span{border:1px solid var(--accent);background:#94ab88;width:28px;height:40px;transform:skewY(-12deg)}.builder-layout-options{grid-template-columns:repeat(2,minmax(0,1fr));max-width:850px}.layout-thumbnail{border:1px solid var(--border);background:#eee9dc;border-radius:8px;gap:10px;width:100%;height:180px;padding:12px;display:flex;position:relative}.thumbnail-scene{background:radial-gradient(#9cad98 1px,#0000 1px) 0 0/12px 12px,#e3e8da;border-radius:6px;flex:1}.thumbnail-panel{background:var(--panel);border-radius:6px;align-content:center;gap:14px;width:30%;padding:12px;display:grid}.thumbnail-panel i{background:#9aad93;border-radius:3px;height:8px}.layout-thumbnail--bottom{flex-direction:column}.layout-thumbnail--bottom .thumbnail-panel{align-items:center;width:100%;height:40px;display:flex}.layout-thumbnail--bottom i{flex:1}.layout-thumbnail--floating .thumbnail-panel{height:110px;position:absolute;top:24px;right:20px;box-shadow:0 2px 8px #30362e22}.manual-create-entry{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin:20px auto 0;display:flex}.manual-create-entry a{border:1px solid var(--border);background:var(--panel);border-radius:8px;min-height:44px;padding:12px 20px;font-weight:600}.manual-create-entry span{font-size:14px}.authored-lesson{color:#233d35;padding:16px;line-height:1.45}.authored-instruction{overflow-wrap:anywhere;margin:0 0 18px;font-size:18px;font-weight:500}.authored-body{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:20px;display:grid}.authored-scene{min-width:0;position:relative}.authored-scene>svg{width:100%;height:auto;max-height:550px;display:block}.authored-scene figure{margin:0}.authored-scene figure svg{width:100%;max-height:520px}.authored-panel{background:#f3f6ee;border:1px solid #dce3d5;border-radius:12px;min-width:0;padding:16px}.authored-control{margin:12px 0}.authored-control input[type=range]{accent-color:#285e4b;width:100%}.authored-control input[type=number],.authored-control select{width:100%}.authored-control label{gap:8px;display:grid}.authored-control button{width:100%}.authored-result{gap:3px;margin-bottom:14px;display:grid}.authored-result strong{overflow-wrap:anywhere;font-size:24px}.authored-result span{font-size:12px}.authored-details{border-top:1px solid #d7dfd1;margin-top:18px;padding-top:14px}.authored-details summary{cursor:pointer}.authored-details .authored-control{max-width:400px}.authored-lesson--bottom .authored-body{grid-template-columns:1fr}.authored-lesson--bottom .authored-panel{flex-wrap:wrap;gap:20px;display:flex}.authored-town{background:#e8efdd;border-radius:12px;height:480px;min-height:280px;overflow:hidden}.authored-lesson--floating .authored-body{display:block;position:relative}.authored-lesson--floating .authored-panel{background:#fffffff0;width:260px;max-height:460px;position:absolute;top:14px;right:14px;overflow:auto}.manual-builder .inspect-object{z-index:1;opacity:.8;font-size:11px;position:absolute;top:0;left:0}@container (max-width:700px){.authored-body{grid-template-columns:1fr;gap:12px}.authored-lesson{padding:12px}.authored-instruction{font-size:16px}.authored-scene>svg,.authored-scene figure svg{max-height:260px}.authored-panel{padding:12px}.authored-lesson--floating .authored-panel{width:auto;max-height:none;margin-top:10px;position:static}.authored-town{height:300px}.authored-result strong{font-size:22px}.authored-control{margin:10px 0}}.authored-lesson{color:var(--text);padding:24px}.authored-panel{border-color:var(--border);background:#edf0e4}.authored-details{border-color:var(--border)}.authored-details summary{align-items:center;min-height:44px;font-weight:600;display:flex}.authored-details-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:24px;margin-top:16px;display:grid}.authored-details-grid .authored-control{margin:0}.authored-control{position:relative}.manual-builder .edit-component{margin:8px 0;padding:6px 10px;font-size:13px}.authored-panel-empty{gap:12px;padding:12px 0;display:grid}@media (max-width:1000px){.builder-templates{grid-template-columns:repeat(2,minmax(0,1fr))}.manual-builder[data-inspector=true] .builder-layout{grid-template-columns:minmax(0,1fr) 300px}}@media (max-width:800px){.manual-builder[data-inspector=true] .builder-layout{grid-template-columns:minmax(0,1fr)}.builder-inspector{border:0;border-bottom:1px solid var(--border);grid-row:1}.builder-tabs{padding:12px 16px}.builder-preview{padding:16px}.builder-toolbar{gap:8px;padding:12px 16px}.builder-toolbar h1{flex-basis:calc(100% - 130px)}.builder-setup-content{margin-top:40px}.builder-start{padding:20px 20px 40px}.builder-empty{min-height:360px;padding:24px}}@media (max-width:500px){.builder-templates,.builder-layout-options{grid-template-columns:minmax(0,1fr)}.builder-templates>button{grid-template-columns:70px minmax(0,1fr);gap:8px 16px;padding:16px;display:grid}.builder-templates .setup-art{grid-row:span 3;height:100%;min-height:90px}.builder-layout-options>button{display:flex}.builder-templates strong{font-size:17px}.builder-templates span{font-size:14px}.builder-preview>header{flex-wrap:wrap}.builder-preview>header strong{flex:1}.builder-start h1{font-size:32px}.setup-actions{flex-wrap:wrap}}.authored-result{position:relative}.manual-builder .authored-control .edit-component,.manual-builder .authored-result .edit-component{width:auto;min-width:44px;min-height:44px;margin:0;padding:6px 10px;font-size:12px;position:absolute;top:0;right:0}.authored-control:has(.edit-component)>button:not(.edit-component){width:calc(100% - 56px)}.authored-control:has(.edit-component)>label{padding-top:6px}.authored-control:has(.edit-component)>label>output{padding-right:56px}.authored-result:has(.edit-component){min-height:60px;padding-right:56px}.authored-details summary,.builder-inspector summary{padding:10px 0;display:list-item}.manual-builder .inspect-object{opacity:1;font-size:13px}.object-additions,.builder-settings-nav{flex-wrap:wrap;gap:8px;display:flex}.builder-small-label,.builder-mobile-settings,.builder-mobile-actions{display:none}@media (max-width:500px){.builder-desktop-action,.builder-wide-label,.builder-settings-nav{display:none}.builder-small-label{display:inline}.builder-mobile-settings,.builder-mobile-actions{display:block}.builder-mobile-settings{position:relative}.builder-mobile-settings>summary{border:1px solid var(--border);cursor:pointer;background:var(--panel);border-radius:8px;min-height:44px;padding:10px 12px}.builder-mobile-settings>div{z-index:5;background:var(--panel);border:1px solid var(--border);border-radius:12px;width:220px;padding:12px;position:absolute;right:0;box-shadow:0 6px 20px #30362e22}.builder-mobile-settings button{text-align:left;width:100%;margin:4px 0;display:block}.builder-tabs{gap:8px}.builder-tabs>button:nth-child(3){margin-right:0}.builder-preview>header button{display:none}.builder-toolbar .builder-file-menu>div{left:-90px;right:auto}.builder-preview{padding:16px}}.manual-builder button:hover:not(:disabled),.builder-start button:hover:not(:disabled){background:#e4eadc;border-color:#8c9e86}.manual-builder .builder-primary:hover:not(:disabled),.builder-start .builder-primary:hover:not(:disabled),.manual-builder .builder-empty button:hover:not(:disabled){color:#fffbef;background:#1c4942;border-color:#1c4942}.manual-builder button[aria-pressed=true]:hover:not(:disabled),.builder-start button[aria-pressed=true]:hover:not(:disabled){border-color:var(--accent);background:#d3e0cd}.builder-dimension-options{grid-template-columns:repeat(2,minmax(0,1fr))}.component-category-tabs{flex-wrap:wrap;gap:8px;margin:16px 0;display:flex}.component-category-tabs button[aria-pressed=true]{border-color:var(--accent);background:#dce6d7}.manual-builder .component-choice{text-align:left;flex-direction:column;gap:4px;width:100%;margin-bottom:8px;display:flex}.manual-builder .component-choice small,.manual-builder .field-help{color:#53604d;font-size:14px}.manual-builder .field-error{color:#963e32;font-size:14px}.lesson-settings .field-help{margin:4px 0 12px}.lesson-settings label:has(+.field-help){margin-bottom:4px}.authored-instruction-row{align-items:start;gap:12px;display:flex}.authored-instruction-row .authored-instruction{flex:1}.authored-instruction-row .edit-component{flex-shrink:0}@media (max-width:500px){.builder-dimension-options{grid-template-columns:minmax(0,1fr)}.authored-instruction-row{flex-wrap:wrap}}.authored-additions{border-top:1px dashed var(--border);flex-wrap:wrap;gap:8px;margin-top:12px;padding-top:12px;display:flex}
