.drawing-toolbar{z-index:10010;border:1px solid var(--border);background:var(--panel,#fffdf7);pointer-events:auto;border-radius:12px;gap:4px;padding:6px;display:flex;position:absolute;top:12px;left:50%;transform:translate(-50%);box-shadow:0 3px 16px #30362e12}.spatial-board .drawing-toolbar button{width:38px;height:38px;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:0;font-size:23px}.spatial-board .drawing-toolbar button[aria-pressed=true],.drawing-inspector button[aria-pressed=true]{color:#3540a0;background:#e2e7ff;outline:1px solid #8990e0}.drawing-create-surface{z-index:9990;cursor:crosshair;touch-action:none;position:absolute;inset:0}.drawing-create-surface[data-drawing-tool=text]{cursor:text}.board-drawing{pointer-events:none;position:absolute}.drawing-box{pointer-events:none;touch-action:none;display:block;overflow:visible}.drawing-text-surface{box-sizing:border-box;touch-action:none;border:0;width:100%;min-width:0;height:100%;margin:0;padding:0}.drawing-text-content{box-sizing:border-box;-webkit-user-select:none;user-select:none;min-height:100%;padding:4px}.spatial-board textarea.drawing-text-editor{width:100%;height:100%;min-height:0;box-shadow:none;resize:none;box-sizing:border-box;touch-action:auto;background:0 0;border:0;border-radius:0;outline:none;margin:0;padding:4px;display:block;overflow:hidden}.drawing-selection{z-index:10000;pointer-events:none;outline:1px solid #8990e0;position:absolute}.spatial-board button.drawing-selection-body{pointer-events:auto;cursor:move;touch-action:none;background:0 0;border:0;border-radius:0;margin:0;padding:0;position:absolute;inset:0}.spatial-board button.drawing-handle{pointer-events:auto;touch-action:none;background:#fff;border:1px solid #8990e0;border-radius:2px;width:9px;height:9px;min-height:0;padding:0;position:absolute}.handle-nw{cursor:nwse-resize;top:0;left:0}.handle-n{cursor:ns-resize;top:0;left:50%}.handle-ne{cursor:nesw-resize;top:0;left:100%}.handle-e{cursor:ew-resize;top:50%;left:100%}.handle-se{cursor:nwse-resize;top:100%;left:100%}.handle-s{cursor:ns-resize;top:100%;left:50%}.handle-sw{cursor:nesw-resize;top:100%;left:0}.handle-w{cursor:ew-resize;top:50%;left:0}.drawing-inspector{z-index:10010;background:var(--panel,#fffdf7);border:1px solid var(--border);width:254px;max-height:calc(100% - 146px);color:var(--text);pointer-events:auto;border-radius:12px;padding:14px;font:12px system-ui,sans-serif;position:absolute;top:70px;left:12px;overflow-y:auto;box-shadow:0 3px 16px #30362e12}.drawing-inspector-title{margin-bottom:14px;font-size:14px;font-weight:600}.drawing-inspector fieldset{border:0;min-width:0;margin:0 0 14px;padding:0}.drawing-inspector .drawing-appearance-fields{margin:0}.drawing-inspector legend{margin-bottom:64px;padding:0}.drawing-inspector label{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:14px;display:flex}.drawing-inspector label>span{color:var(--muted)}.drawing-inspector input[type=number],.drawing-inspector select{border:1px solid var(--border);width:100%;min-height:30px;font:inherit;background:0 0;border-radius:6px;padding:5px 8px}.drawing-inspector input[type=range]{width:100%;padding:0}.drawing-palette>div,.drawing-choice-row{flex-wrap:wrap;gap:6px;display:flex}.spatial-board .drawing-palette button,.drawing-palette input[type=color]{cursor:pointer;border:1px solid #30362e22;border-radius:4px;width:22px;height:22px;min-height:0;padding:0}.drawing-palette input[type=color]{margin-left:4px}.drawing-palette button.is-transparent{background-image:repeating-conic-gradient(#ddd 0% 25%,#fff 0% 50%);background-size:8px 8px}.spatial-board .drawing-choice-row button{min-width:32px;min-height:32px;color:var(--text);cursor:pointer;font:inherit;background:#30362e08;border:0;border-radius:6px;padding:4px 8px}.drawing-inspector details{margin-bottom:14px}.drawing-inspector summary{cursor:pointer;margin-bottom:12px}@media (max-width:699px){.drawing-inspector{width:auto;max-height:38%;inset:auto 8px 64px}}.spatial-board .drawing-inspector input[type=color]{border:1px solid #30362e22;border-radius:4px;flex:0 0 22px;width:22px;min-width:0;height:22px;min-height:0;padding:0}.spatial-board .drawing-inspector select,.spatial-board .drawing-inspector input[type=number]{width:100%}.spatial-board .drawing-choice-row button,.spatial-board .drawing-toolbar button{place-items:center;display:grid}.spatial-board.is-compact .drawing-toolbar{top:56px}.manual-builder .spatial-board button.drawing-selection-body,.manual-builder .spatial-board button.drawing-selection-body:hover:not(:disabled),.manual-builder .spatial-board button.drawing-selection-body:active{box-shadow:none;background:0 0;min-height:0}.manual-builder .spatial-board .drawing-inspector input[type=color]{appearance:none;flex:0 0 26px;width:26px;height:26px;min-height:0;padding:2px}.drawing-inspector input[type=color]::-webkit-color-swatch-wrapper{padding:0}.drawing-inspector input[type=color]::-webkit-color-swatch{border:0;border-radius:2px}.drawing-inspector input[type=color]::-moz-color-swatch{border:0;border-radius:2px}.manual-builder .spatial-board .drawing-palette button[data-color-swatch]{outline:none;flex:0 0 26px;width:26px;height:26px;position:relative}.manual-builder .spatial-board .drawing-palette button[data-selected=true]{outline-offset:2px;outline:2px solid #5964ce}.drawing-swatch-check{color:#fff;text-shadow:0 1px 2px #000,0 0 2px #000;font-size:16px;font-weight:700}.drawing-sizing-help{color:var(--muted);margin:-4px 0 14px;line-height:1.5}.manual-builder .drawing-inspector label.drawing-custom-color{justify-content:flex-start;margin:10px 0 0;display:flex}.manual-builder .spatial-board .drawing-inspector input[data-custom-selected=true]{outline-offset:2px;outline:2px solid #5964ce}
.spatial-board{color:var(--text,#30362e);background:var(--bg,#eee9dc);border:1px solid var(--border);border-radius:12px;position:relative;overflow:hidden}.board-toolbar button,.board-item-tools button,.board-selection button,.board-resize,.board-expand,.board-area-banner button,.board-convert button,.board-toolbar summary,.board-selection summary{border:1px solid var(--border);background:var(--panel,#fffbef);min-height:40px;color:inherit;cursor:pointer;font:inherit;border-radius:8px;padding:8px 12px;font-size:13px}.spatial-board button:disabled{opacity:.5;cursor:default}.board-camera-tools button[aria-pressed=true],.board-convert .board-primary{background:var(--accent,#285e56);color:#fff}.spatial-board :focus-visible,.board-convert :focus-visible{outline:3px solid var(--accent,#285e56);outline-offset:3px}.board-toolbar{border-bottom:1px solid var(--border);background:var(--panel);flex-wrap:wrap;align-items:center;gap:6px;padding:8px;display:flex}.board-toolbar output{text-align:center;font-variant-numeric:tabular-nums;min-width:45px;font-size:13px}.board-viewport{isolation:isolate;touch-action:none;overscroll-behavior:contain;background-image:radial-gradient(var(--border) 1px, transparent 1px);background-size:24px 24px;height:min(68dvh,760px);min-height:360px;position:relative;overflow:hidden}.board-viewport.is-panning{cursor:grab}.board-world{transform-origin:0 0;pointer-events:none;position:absolute;inset:0}.board-area{border:2px dashed var(--accent);position:absolute;box-shadow:0 0 0 100000px #30362e15}.board-area span{color:var(--accent);white-space:nowrap;font-size:13px;position:absolute;bottom:100%}.board-item{transform-origin:0 0;background:var(--panel);border:1px solid var(--border);border-radius:12px;flex-direction:column;min-width:0;display:flex;position:absolute}.board-item[hidden]{display:none}.board-item.is-selected{outline:2px solid var(--accent);outline-offset:2px}.spatial-board:not(.is-workspace)>.board-selection{z-index:1000;position:absolute;bottom:16px;left:12px;right:12px}.board-content{overscroll-behavior:contain;touch-action:auto;flex:1;min-height:0;padding:12px;overflow:auto}.board-content>.recipe-layout{min-height:100%}.board-item[data-board-component=displays\/Readout]>.board-content{padding:8px;overflow:visible}.board-item[data-board-component=displays\/Readout]>.board-content>.recipe-layout{height:auto;min-height:0}.board-item[data-board-leaf=true] .board-content,.board-item[data-board-leaf=true] .recipe-author-item,.board-item[data-board-leaf=true] .recipe-layout,.board-item[data-board-leaf=true] .composition-display-scene,.board-item[data-board-leaf=true] .composition-plane{height:100%}.board-item[data-board-leaf=true] .recipe-author-item{width:100%;max-width:none;margin:0}.board-item[data-board-leaf=true] .composition-town{width:100%;height:100%;min-height:0;max-height:none}.board-item[data-board-leaf=true] .composition-display,.board-item[data-board-leaf=true] .composition-cartesian{aspect-ratio:auto;height:100%;min-height:0;max-height:none}.board-item-tools{border-bottom:1px solid var(--border);display:flex}.board-item-tools button{text-align:left;cursor:grab;touch-action:none;border:none;border-radius:12px 12px 0 0;width:100%}.board-item-tools .board-item-edit{text-align:center;cursor:pointer;flex-shrink:0;width:36px}.board-item-tools .board-item-expand-header{border-left:1px solid var(--border);cursor:pointer;border-radius:0 12px 0 0;flex-shrink:0;width:40px;min-width:40px;height:40px;min-height:40px;padding:0;position:static}.spatial-board .board-resize{cursor:nwse-resize;touch-action:none;z-index:2;background:color-mix(in srgb, var(--accent) 10%, var(--panel));width:34px;height:34px;min-height:34px;color:var(--accent);border-radius:10px 0;padding:0;position:absolute;bottom:0;right:0}.spatial-board .board-resize:hover{background:var(--accent);color:#fff}.board-expand{z-index:4;border-radius:9px;width:38px;min-width:38px;height:38px;min-height:38px;padding:0;position:absolute;top:8px;right:8px;box-shadow:0 4px 14px #30362e18}.board-selection{border-top:1px solid var(--border);background:var(--panel);flex-wrap:wrap;align-items:center;gap:8px;padding:8px;font-size:13px;display:flex}.board-selection details{flex-basis:100%}.board-geometry{flex-wrap:wrap;align-items:end;gap:8px;padding:12px 0;display:flex}.board-geometry strong{flex-basis:100%}.board-geometry label{text-transform:capitalize;flex-direction:column;align-items:start;gap:4px;display:flex}.board-geometry input{width:90px}.board-geometry select{width:150px}.board-toolbar input,.board-toolbar select,.board-geometry input{border:1px solid var(--border);background:var(--panel);min-height:40px;color:inherit;border-radius:8px;max-width:100%;padding:8px}.board-help{color:var(--muted,#626c60);margin:0;padding:8px 12px;font-size:12px}.board-empty{text-align:center;pointer-events:none;position:absolute;inset:25% 16px auto}.board-convert{background:var(--panel);border-bottom:1px solid var(--border);padding:16px}.board-convert p{margin:0 0 12px}.board-convert button{margin-right:8px}.board-navigator{position:relative}.board-navigator>div{z-index:100;background:var(--panel);border:1px solid var(--border);border-radius:12px;gap:8px;width:min(280px,80vw);max-height:300px;padding:12px;display:grid;position:absolute;top:100%;right:0;overflow:auto;box-shadow:0 8px 24px #30362e20}.board-item.is-immersive{z-index:1;border:0;border-radius:0;inset:0}.board-item.is-immersive .board-content{padding:0}.board-item.is-immersive .composition-canvas{height:100%}.board-item.is-overlay{z-index:10;width:min(320px,35%);max-height:90%;box-shadow:0 8px 24px #30362e20}.board-item.is-overlay.anchor-left{left:12px}.board-item.is-overlay.anchor-right{right:12px}.board-item.is-overlay.anchor-bottom{width:auto;left:12px;right:12px}.board-readability{z-index:100;background:var(--panel);text-align:center;place-content:center;padding:32px;display:grid;position:absolute;inset:0}.board-sr{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:700px){.board-toolbar{gap:4px}.board-toolbar button,.board-toolbar summary,.board-selection button,.board-selection summary{min-height:44px}.board-viewport{height:60dvh;min-height:320px}.board-viewport .board-item.is-overlay{width:auto;max-height:60%;left:8px;right:8px}.board-geometry input{width:70px}}.recipe-lesson:has(.spatial-board){max-width:none;padding:16px}.board-item[data-board-leaf=true] .board-content>.recipe-layout{flex-direction:column;display:flex}.spatial-board .board-item-tools button[aria-pressed=true]{background:var(--panel);color:var(--text)}.board-item.is-immersive .board-content>.recipe-layout,.board-item.is-immersive .composition-town{height:100%;min-height:0}.board-item[data-board-scene=true]>.board-content{padding:0}.board-item[data-board-scene=true]>.board-content>.recipe-panel{border:0;border-radius:0;padding:0}.board-item[data-board-scene=true] .recipe-component-item{flex:1;height:100%;min-height:0}.board-viewport.has-overlays .board-item.is-immersive{right:min(344px,38%)}@media (max-width:700px){.recipe-lesson:has(.spatial-board){padding:8px}.board-viewport.has-overlays .board-item.is-immersive{bottom:38%;right:0}.board-viewport .board-item.is-overlay{height:32%}}.board-area-banner{background:var(--panel);flex-wrap:wrap;align-items:center;gap:12px;padding:12px;font-size:13px;display:flex}.board-area-move,.board-area-resize{pointer-events:auto;touch-action:none;position:absolute}.board-area-move{top:-44px;left:0}.board-area-resize{bottom:-24px;right:-24px}.board-world:has(.board-area-move){z-index:1000}.board-item.is-immersive .recipe-author-item{flex-direction:column;height:100%;min-height:0;display:flex}.board-item.is-immersive .composition-town{flex:1;width:100%;max-height:none}.spatial-board{--recipe-accent:var(--accent,#285e56)}.board-selection .board-selection-actions{flex-basis:auto}.board-selection-actions>div{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.board-selection-actions[data-compact=false]>summary{display:none}@media (max-width:699px){.board-selection-actions>div{padding:8px 0}}.spatial-board.is-compact .board-viewport .board-item.is-overlay{width:auto;max-height:60%;left:8px;right:8px}.spatial-board.is-compact .board-toolbar button,.spatial-board.is-compact .board-toolbar summary,.spatial-board.is-compact .board-selection button,.spatial-board.is-compact .board-selection summary{min-height:44px}.board-camera-tools,.board-workspace-tools{align-items:center;gap:4px;display:flex}.board-camera-tools{position:relative}.board-navigation-help{position:static}.board-navigation-help>div{background:var(--panel);border:1px solid var(--border);border-radius:12px;width:min(300px,100vw - 32px);padding:16px;font-size:13px;position:absolute;bottom:calc(100% + 12px);left:0;box-shadow:0 6px 24px #30362e1a}.board-toolbar:not(.is-floating) .board-navigation-help>div{z-index:1200;top:100%;bottom:auto}.recipe-lesson.is-board-workspace{flex-direction:column;height:100%;padding:0;display:flex;position:relative}.recipe-lesson.is-board-workspace>header{display:none}.spatial-board.is-workspace{background:var(--panel);border:0;border-radius:0;flex-direction:column;flex:1;height:100%;min-height:0;display:flex}.is-workspace .board-viewport{flex:1;height:auto;min-height:0}.is-workspace .board-toolbar.is-floating{z-index:1100;border:0;height:0;padding:0}.is-workspace .is-floating .board-camera-tools,.is-workspace .is-floating .board-workspace-tools,.is-workspace .board-selection{z-index:1100;background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:5px;position:absolute;box-shadow:0 6px 24px #30362e12}.is-workspace .is-floating .board-camera-tools{bottom:calc(var(--builder-composer-height,0px) + 24px);left:12px}.is-workspace .is-floating .board-workspace-tools{top:12px;right:12px}.is-workspace .board-toolbar button,.is-workspace .board-toolbar summary,.is-workspace .board-selection button,.is-workspace .board-selection summary{white-space:nowrap;background:0 0;border:0;min-height:34px;padding:6px 9px;font-size:12px}.is-workspace .board-toolbar button:hover,.is-workspace .board-selection button:hover,.is-workspace summary:hover{background:var(--bg)}.is-workspace .board-camera-tools button[aria-pressed=true]{color:var(--accent);background:#285e5618}.is-workspace .board-help{display:none}.is-workspace .board-selection{bottom:calc(var(--builder-composer-height,0px) + 24px);flex-wrap:nowrap;gap:2px;width:max-content;max-width:calc(100% - 24px);left:50%;transform:translate(-50%)}.is-workspace .board-selection strong{color:var(--muted);white-space:nowrap;padding:0 10px;font-size:12px;font-weight:400}.is-workspace .board-selection>button:first-of-type{border-left:1px solid var(--border);order:10;font-size:18px}.is-workspace .board-selection>button:nth-of-type(4){color:#a14638}.is-workspace .board-selection details{flex-basis:auto;position:relative}.is-workspace .board-selection-actions>div,.is-workspace .board-placement-menu[open]{background:var(--panel);border:1px solid var(--border);border-radius:12px;max-height:min(400px,60dvh);padding:12px;overflow:auto;box-shadow:0 6px 24px #30362e1a}.is-workspace .board-selection-actions>div{width:min(300px,100vw - 32px);display:grid;position:absolute;bottom:calc(100% + 14px);right:0}.is-workspace .board-placement-menu[open]{width:min(340px,100vw - 24px);position:absolute;bottom:0;right:0}.is-workspace .board-area-banner{z-index:1200;border:1px solid var(--border);border-radius:12px;width:min(400px,100% - 24px);position:absolute;top:12px;left:12px;box-shadow:0 6px 24px #30362e1a}.is-workspace .board-item-tools button{white-space:nowrap;text-overflow:ellipsis;background:0 0;border:0;border-radius:0;min-width:0;min-height:34px;padding:6px 10px;font-size:12px;overflow:hidden}.is-workspace .board-item-tools{border-radius:12px 12px 0 0;overflow:hidden}.is-workspace .board-navigation-help>summary{text-align:center;border-left:1px solid var(--border);border-radius:0;width:34px;list-style:none}.is-workspace .board-navigation-help>summary::-webkit-details-marker{display:none}.is-workspace .board-content{padding:8px}.is-workspace .board-content .recipe-author-item{background:0 0;border:0;padding:0}.is-workspace .board-resize{width:30px;min-height:30px}@media (max-width:700px){.is-workspace .board-area-banner{top:76px}.is-workspace .board-toolbar button,.is-workspace .board-toolbar summary,.is-workspace .board-selection button,.is-workspace .board-selection summary{min-height:44px}.is-workspace .board-selection{flex-wrap:wrap;justify-content:center;gap:0}.is-workspace .board-selection strong{padding:0 5px}.is-workspace .board-workspace-tools{max-width:calc(100% - 24px)}.is-workspace .board-resize{width:44px;min-height:44px}}.spatial-board .board-item[data-board-scene=true]{background:0 0;border:0;border-radius:0}.spatial-board .board-item[data-board-scene=true]>.board-content{height:100%;padding:0;overflow:visible}.spatial-board .board-item-tools{z-index:6;background:0 0;border:0;position:absolute;bottom:100%;left:0;right:0}.spatial-board .board-item-tools button{background:var(--panel);border:1px solid var(--border);border-bottom:0;border-radius:8px 8px 0 0;align-items:center;gap:8px;min-height:36px;padding:6px 10px;font-size:13px;display:flex}.board-item-tools button>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.spatial-board .board-item-tools .board-item-edit{justify-content:center;padding:0}.board-item[data-board-leaf=true]>.board-content>.recipe-layout,.board-item[data-board-leaf=true] .recipe-author-item{height:100%;min-height:0}.board-item[data-board-scene=true] .composition-display-scene,.board-item[data-board-scene=true] .composition-plane{gap:0;height:100%;min-height:0;position:relative}.spatial-board .board-item[data-board-scene=true] .composition-display,.spatial-board .board-item[data-board-scene=true] .composition-cartesian{width:100%;height:100%;min-height:0;max-height:none;position:absolute;inset:0}.board-item[data-board-scene=true] .scene-toolbar{z-index:5;max-width:calc(100% - 24px);position:absolute;top:12px;right:12px}.board-item:not([data-tools-visible=true]) :is(.board-item-tools,.board-resize,.board-expand,.scene-toolbar,.recipe-camera-controls){visibility:hidden;pointer-events:none}.board-item[data-board-scene=true] .scene-guidance{z-index:4;max-width:calc(100% - 24px);margin:0;padding:8px 12px;font-size:13px;position:absolute;bottom:12px;left:12px}.board-item[data-board-scene=true] figure>.scene-guidance,.board-item[data-board-scene=true] figure>figcaption,.board-item[data-board-scene=true] .scene-caption{z-index:auto;max-width:100%;box-shadow:none;text-align:center;color:var(--text-dim,#64748b);background:0 0;border:none;margin:8px auto 0;padding:0 8px;font-size:12px;line-height:1.4;position:static;bottom:auto;left:auto}.board-item[data-board-scene=true] .scene-help[open]{max-height:calc(100% - 84px);overflow:auto}.spatial-board .board-resize{border:1px solid color-mix(in srgb, var(--accent) 55%, var(--border));background:var(--panel);width:30px;height:30px;min-height:30px;color:var(--accent);z-index:7;opacity:1;border-radius:9px;place-items:center;padding:6px;transition:background .12s,color .12s,transform .12s,box-shadow .12s;display:grid;bottom:-7px;right:-7px;box-shadow:0 3px 10px #30362e2e}.spatial-board .board-resize:hover,.spatial-board .board-resize:focus-visible{background:var(--accent);color:#fff;transform:scale(1.08);box-shadow:0 5px 14px #30362e3d}.spatial-board .board-resize>svg{width:16px;height:16px}.spatial-board .board-item:is([data-board-component=displays\/Text],[data-board-component=displays\/Box]){background:0 0;border:0;border-radius:0}.spatial-board .board-item:is([data-board-component=displays\/Text],[data-board-component=displays\/Box])>.board-content{padding:0;overflow:visible}.spatial-board .board-item[data-board-component=displays\/Text] .recipe-text-card{padding:8px;overflow:visible}.board-item[data-board-component=displays\/Box][data-board-authoring=false]{pointer-events:none}.board-content>.recipe-panel{box-shadow:none;background:0 0;border:0;padding:0}.board-item[data-board-scene=true] .recipe-camera-controls{z-index:5}.is-workspace .board-toolbar .scene-icon-button.scene-icon-button{padding:0}@media (max-width:700px){.spatial-board .board-item-tools button{min-height:44px}}.is-auto-layout .board-content>.recipe-layout{min-height:0}.is-auto-layout .composition-display-scene{flex:none;height:380px;position:relative}.is-auto-layout .composition-display-scene>.composition-display{width:100%;height:100%;min-height:0;max-height:none;position:absolute;inset:0}.is-auto-layout .composition-display-scene>.scene-toolbar{z-index:5;position:absolute;top:12px;right:12px}.is-auto-layout .composition-display-scene>.scene-guidance{z-index:4;max-width:calc(100% - 24px);margin:0;padding:8px 12px;position:absolute;bottom:12px;left:12px}.is-auto-layout .board-content .projectile-scene,.is-auto-layout .board-content .math-scene-svg{max-height:380px}.is-auto-layout .board-content .composition-town{height:420px;min-height:0;max-height:none}.board-group-label{color:var(--text);font-size:14px;font-weight:600;position:absolute}.board-marquee{z-index:10005;pointer-events:none;background:#5964ce18;border:1px solid #5964ce;position:absolute}.board-viewport.is-right-panning,.board-viewport.is-right-panning *{cursor:grabbing}.is-auto-layout .composition-display-scene:has([data-gas-volume]){height:clamp(192px,33.6vh,336px)}.is-auto-layout .board-item[data-board-leaf=true]>.board-content>.recipe-layout{height:auto}.is-auto-layout .board-item[data-board-scene=true] .recipe-component-item{flex:none;height:auto}@media (max-width:600px) and (max-height:650px){.is-auto-layout .composition-display-scene:has([data-gas-volume]){height:120px}}.spatial-board.is-responsive-layout .board-item>.board-content{overflow:visible}.spatial-board.is-responsive-layout .board-item:not([data-board-scene=true])>.board-content>.recipe-layout{flex:none;width:100%;height:auto;min-height:0}:is(.spatial-board.is-responsive-layout .board-item[data-board-scene=true]:has(.math-activity),.spatial-board.is-responsive-layout .board-item[data-board-scene=true]:has(.counting-activity)){background:#fffcf4;border:1px solid #cec8b8;border-radius:18px}.board-item[data-board-scene=true] .recipe-scene-content:has(>svg[viewBox]:only-child){grid-template-rows:minmax(0,1fr);height:100%;min-height:0}.board-item[data-board-scene=true] .recipe-scene-content>svg[viewBox]:only-child{width:100%;height:100%;max-height:100%;display:block}.board-view-warning{z-index:1150;color:#654811;background:#fff7df;border:1px solid #ad7c28;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;width:min(440px,100% - 24px);padding:12px;font-size:13px;display:flex;position:absolute;top:64px;left:12px}.board-view-warning output{flex-basis:100%}.board-view-warning button{background:var(--panel);color:inherit;cursor:pointer;border:1px solid #ad7c28;border-radius:6px;padding:6px 10px}.board-item.is-outside-view{outline-offset:3px;outline:2px dashed #ad7c28}.board-item.is-outside-view.is-selected{outline-style:solid;outline-color:var(--accent)}.component-dialog.component-dialog.board-settings-dialog{width:680px}.component-dialog.board-settings-dialog .component-dialog-body{flex-direction:column;gap:18px;display:flex}.board-settings-section{border:1px solid var(--surface-line);background:#fffefb;border-radius:16px;flex-direction:column;gap:16px;padding:20px;display:flex}.component-dialog.board-settings-dialog .board-settings-section-heading{flex-direction:row;align-items:flex-start;gap:12px;display:flex}.component-dialog.board-settings-dialog .board-settings-section-heading>.builder-icon{color:#285e56;margin-top:3px}.component-dialog.board-settings-dialog .board-settings-section-heading h3{margin:0;font-size:15px;line-height:1.5}.component-dialog.board-settings-dialog p,.component-dialog.board-settings-dialog small{color:var(--surface-muted);margin:0;font-size:12px;line-height:1.6}.component-dialog.board-settings-dialog label{flex-direction:column;align-items:stretch;gap:7px;margin:0;font-size:13px;font-weight:600;display:flex}.component-dialog.board-settings-dialog input:not([type=radio]):not([type=checkbox]),.component-dialog.board-settings-dialog select{border:1px solid var(--surface-line);color:#303b32;width:100%;min-width:0;min-height:42px;font:inherit;background:#fff;border-radius:10px;padding:9px 12px;font-weight:400}.component-dialog.board-settings-dialog input[type=checkbox],.component-dialog.board-settings-dialog input[type=radio]{width:18px;height:18px;min-height:18px;box-shadow:none;accent-color:#285e56;border:0;flex:0 0 18px;margin:2px 0 0;padding:0}.component-dialog.board-settings-dialog .board-learner-view>label{flex-direction:row;align-items:flex-start;gap:12px}.component-dialog.board-settings-dialog label:has(>input[type=checkbox]){flex-direction:row;align-items:flex-start;gap:12px}.component-dialog.board-settings-dialog label span{flex-direction:column;gap:3px;display:flex}.component-dialog.board-settings-dialog label small{font-weight:400}.component-dialog.board-settings-dialog .board-learner-view{border:0;grid-template-columns:1fr 1fr;gap:10px;min-width:0;margin:0;padding:0;display:grid}.component-dialog.board-settings-dialog .board-learner-view>label{border:1px solid var(--surface-line);cursor:pointer;background:#fff;border-radius:12px;padding:14px}.component-dialog.board-settings-dialog .board-learner-view>label:has(input:checked){background:#eef4e9;border-color:#85a291;box-shadow:inset 0 0 0 1px #85a291}.component-dialog.board-settings-dialog .board-learner-view>label:hover{border-color:#85a291}.board-boundary-settings{flex-direction:column;grid-column:1/-1;gap:14px;display:flex}.board-settings-actions{flex-wrap:wrap;gap:8px;display:flex}.component-dialog.board-settings-dialog .board-settings-details{border-top:1px solid var(--surface-line);padding-top:12px}.component-dialog.board-settings-dialog .board-settings-details summary{cursor:pointer;color:#285e56;padding:4px 0;font-size:13px;font-weight:600}.component-dialog.board-settings-dialog .board-settings-details[open]>p,.component-dialog.board-settings-dialog .board-settings-details[open]>label{margin-top:12px}.component-dialog.board-settings-dialog .board-geometry{grid-template-columns:1fr 1fr;gap:12px;margin:0;display:grid}.component-dialog.board-settings-dialog .board-geometry>strong{display:none}.component-dialog.board-settings-dialog .board-geometry>button{grid-column:1/-1;justify-self:start}.board-start-view{background:#f1f5ec;border-radius:12px;flex-direction:column;align-items:flex-start;gap:10px;padding:16px;display:flex}.board-start-view strong{font-size:13px}.board-start-view-saved{align-items:center;gap:6px;display:flex}.board-start-view-saved .builder-icon{width:15px;height:15px}.component-dialog.board-settings-dialog .board-flow-option{border-top:1px solid var(--surface-line);flex-direction:column;align-items:flex-start;gap:12px;padding-top:16px;display:flex}.board-settings-feedback{color:#285e56;font-size:12px}.board-settings-feedback:empty{display:none}.board-sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:600px){.board-settings-section{padding:14px}.component-dialog.board-settings-dialog .board-learner-view{grid-template-columns:1fr}.component-dialog.board-settings-dialog .component-dialog-body{padding:14px}.component-dialog.board-settings-dialog .board-settings-actions>button{width:100%}}@media (max-width:700px){.is-workspace:has(>.board-selection) .is-floating .board-camera-tools{bottom:calc(var(--builder-composer-height,0px) + 88px)}}.is-workspace .board-navigation-help>div{max-height:max(100px, calc(100dvh - var(--builder-composer-height,0px) - 260px));overflow:auto}
.recipe-lesson{--recipe-accent:var(--accent,#285e56);--lesson-ink:var(--ink,#30362e);--lesson-muted:var(--muted,#626c60);--lesson-panel:var(--panel,#fffdf7);--lesson-border:var(--border,#d5d0c3);max-width:1180px;color:var(--lesson-ink);margin:auto;padding:clamp(1rem,3vw,2.5rem)}.recipe-lesson>header{max-width:760px;margin-bottom:1.5rem}.recipe-lesson>header h1{margin:0 0 .45rem;font-size:clamp(1.7rem,4vw,2.6rem);line-height:1.08}.recipe-lesson>header p{color:var(--lesson-muted);line-height:1.6}.recipe-layout{flex-direction:column;min-width:0;display:flex}.recipe-row{flex-flow:wrap}.recipe-column>.recipe-layout{width:100%}.recipe-grid,.recipe-split{grid-template-columns:repeat(var(--desktop-columns,1), minmax(0, 1fr));align-items:start;display:grid}.recipe-panel{border:1px solid var(--lesson-border);background:var(--lesson-panel);border-radius:14px;padding:clamp(.9rem,2vw,1.35rem);box-shadow:0 1px 1px #282c250a}.recipe-layout svg:not(svg svg):not(.scene-icon-button svg){width:100%;max-height:480px}.recipe-layout output{overflow-wrap:anywhere;display:block}.recipe-callout{background:#edf5ff;border-radius:8px;padding:1rem}.recipe-text-card{width:100%;min-width:0;height:100%;min-height:0;box-shadow:none;background:0 0;border:0;border-radius:0;align-items:flex-start;padding:clamp(10px,4%,18px);display:flex;overflow:visible}.recipe-text-content{min-width:0;max-width:68ch;color:var(--lesson-ink);overflow-wrap:anywhere;margin:0;font-size:.95rem;line-height:1.5}.recipe-text-content.is-heading{font-size:clamp(1.05rem,2.5vw,1.4rem);line-height:1.25}.recipe-text-content.is-callout{color:color-mix(in srgb, var(--lesson-ink) 88%, var(--recipe-accent));font-weight:500}.recipe-formula{color:var(--recipe-accent,#245bcb);font:600 1.1em ui-monospace,monospace}.recipe-legend{flex-wrap:wrap;gap:.75rem;padding:0;list-style:none;display:flex}.recipe-legend li{align-items:center;gap:.35rem;display:inline-flex}.recipe-legend span{border-radius:50%;width:.85rem;height:.85rem}.recipe-layout[aria-disabled=true]{opacity:.6}.recipe-runtime-actions button{border:1px solid var(--lesson-border);cursor:pointer;border-radius:7px;padding:.55rem .85rem}.recipe-author-item{border:1px solid #0000;border-radius:10px;min-width:0;position:relative}.recipe-author-item:has(svg){width:100%;max-width:760px;margin-inline:auto}.recipe-author-item:hover,.recipe-author-item:focus-within{border-color:color-mix(in srgb, var(--recipe-accent,#245bcb) 45%, transparent)}.recipe-author-item.is-selected{outline:2px solid var(--recipe-accent,#245bcb);outline-offset:3px}.recipe-lesson :is(h2,h3,h4,p,figure){margin-block-start:0}.recipe-lesson .recipe-layout>h3{margin-bottom:0;font-size:1rem;font-weight:600}.recipe-lesson .recipe-panel{box-shadow:none;border-radius:12px}.catalog-form{gap:14px;min-width:0;display:grid;container-type:inline-size}.catalog-form-title{margin:0;font-size:14px;font-weight:600;line-height:1.4}.catalog-form .catalog-field-group{border:0;border-radius:0;min-width:0;margin:0;padding:0}.catalog-field-group>legend{color:var(--muted,#626c60);margin-bottom:10px;padding:0;font-size:13px;font-weight:600}.catalog-field-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr));gap:14px 16px;display:grid}.catalog-field-grid>fieldset{grid-column:1/-1}.catalog-form .catalog-field,.catalog-field{align-content:start;gap:7px;min-width:0;margin:0;font-size:13px;line-height:1.5;display:grid}.catalog-field>span:first-child{align-items:baseline;gap:6px;font-weight:500;display:flex}.catalog-field small{color:var(--muted,#626c60);font-weight:400}.catalog-field input,.catalog-field select,.catalog-exact-value input,.catalog-slider-number{box-sizing:border-box;border:1px solid var(--border,#d5d0c3);width:100%;min-width:0;min-height:42px;color:var(--ink,#30362e);background:var(--panel,#fffdf7);font-variant-numeric:tabular-nums;border-radius:7px;padding:9px 11px;font-size:14px}.catalog-field input[aria-invalid=true]{border-color:#9b3b35}.catalog-slider{gap:4px;min-width:0;padding:8px 4px;display:grid}.catalog-slider-heading{justify-content:space-between;align-items:baseline;gap:12px;font-size:16px;display:flex}.catalog-form .catalog-slider-heading label{margin:0;font-weight:600;display:block}.catalog-form .catalog-exact-value{flex-wrap:nowrap;margin:0;display:flex}.catalog-current-value{font-variant-numeric:tabular-nums;align-items:baseline;gap:5px;font-weight:600;display:inline-flex}.catalog-current-value small{color:var(--muted,#626c60);font-weight:400}.catalog-slider-inputs{grid-template-columns:1fr;align-items:center;gap:14px;display:grid}.catalog-slider-inputs input[type=range]{width:100%;min-width:0;min-height:42px;accent-color:var(--accent,#285e56);cursor:pointer;appearance:none;background:0 0;border:0;padding:0}.catalog-slider-inputs input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--recipe-accent,#285e56) var(--slider-fill), #dedbce var(--slider-fill));border-radius:8px;height:8px}.catalog-slider-inputs input[type=range]::-webkit-slider-thumb{appearance:none;border:3px solid var(--panel,#fffbef);background:var(--recipe-accent,#285e56);width:22px;height:22px;box-shadow:0 0 0 1px var(--recipe-accent,#285e56);border-radius:50%;margin-top:-7px}.catalog-slider-inputs input[type=range]::-moz-range-track{background:#dedbce;border:0;border-radius:8px;height:8px}.catalog-slider-inputs input[type=range]::-moz-range-progress{background:var(--recipe-accent,#285e56);border-radius:8px;height:8px}.catalog-slider-inputs input[type=range]::-moz-range-thumb{border:3px solid var(--panel,#fffbef);background:var(--recipe-accent,#285e56);width:16px;height:16px;box-shadow:0 0 0 1px var(--recipe-accent,#285e56);border-radius:50%}.catalog-slider .catalog-slider-heading .catalog-exact-value{flex:none;gap:6px;width:auto}.catalog-form .catalog-slider .catalog-slider-heading .catalog-exact-value input{text-align:right;border-color:#0000;border-bottom-color:var(--border,#d5cdbb);background:0 0;border-radius:0;width:96px;min-height:44px;padding:4px 8px;font-size:24px;font-weight:500}.catalog-form .catalog-slider .catalog-slider-heading .catalog-exact-value input:hover{border-bottom-color:var(--recipe-accent)}.catalog-slider .catalog-slider-heading .catalog-exact-value>span:not(.sr-only){font-size:15px}.catalog-slider-limits{color:var(--lesson-muted,#626c60);font-variant-numeric:tabular-nums;justify-content:space-between;gap:12px;font-size:12px;display:flex}.catalog-exact-value{color:var(--muted,#626c60);align-items:center;gap:5px;font-size:12px;display:flex}.catalog-exact-value .sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.catalog-form .catalog-toggle,.catalog-toggle{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;min-height:42px;margin:0;font-size:13px;display:flex}.catalog-toggle-copy{gap:4px;display:grid}.catalog-toggle-copy strong{font-weight:500}.catalog-toggle-copy small{color:var(--muted,#626c60)}.catalog-toggle input[type=checkbox]{width:19px;height:19px;min-height:0;accent-color:var(--accent,#285e56);margin:0}.recipe-lesson .recipe-action,.catalog-form .recipe-action,.recipe-action{border:1px solid var(--border,#d5d0c3);background:var(--panel,#fffdf7);width:fit-content;min-height:42px;color:var(--ink,#30362e);cursor:pointer;border-radius:7px;justify-content:center;align-items:center;gap:7px;padding:9px 15px;font-size:13px;font-weight:500;line-height:1.4;display:inline-flex}.recipe-lesson .recipe-action--primary,.catalog-form .recipe-action--primary{color:#fffdf7;background:var(--accent,#285e56);border-color:var(--accent,#285e56)}.recipe-lesson .recipe-action--quiet{color:var(--muted,#626c60);background:0 0;border-color:#0000}.recipe-action:hover:not(:disabled){filter:brightness(.96)}.recipe-action:disabled{opacity:.5;cursor:not-allowed}.catalog-feedback{overflow-wrap:anywhere;margin:0;font-size:12px;line-height:1.6;display:block}.catalog-help{color:var(--muted,#626c60);margin:0;font-size:12px;line-height:1.6}.catalog-feedback--success{color:var(--accent,#285e56)}.catalog-feedback--error{color:#9b3b35}.recipe-measurement{gap:12px;padding:12px 4px;display:grid}.recipe-layout .recipe-measurement-value{color:var(--recipe-accent);letter-spacing:-.04em;font-variant-numeric:tabular-nums;word-break:break-word;flex-wrap:wrap;align-items:baseline;gap:7px;font-size:clamp(2rem,3.2vw,3rem);font-weight:550;line-height:1.2;display:flex}.recipe-layout .recipe-measurement-value--text{letter-spacing:-.01em;word-break:normal;font-size:clamp(1.15rem,1.8vw,1.45rem);font-weight:550;line-height:1.35;display:block}.recipe-measurement-value small{letter-spacing:0;color:var(--muted,#626c60);font-size:16px;font-weight:400}.recipe-measurement-label{color:var(--lesson-ink,#30362e);font-size:15px;font-weight:500}.recipe-component-item[data-component-definition=appearance\/Projectile]{min-height:0;display:grid}.recipe-component-item[data-component-definition=appearance\/Projectile]>:is(.projectile-legend,.simulation-surface){grid-area:1/1}.recipe-component-item[data-component-definition=appearance\/Projectile] .projectile-legend{z-index:1;pointer-events:none;place-self:start;gap:8px;margin:14px;display:flex}.recipe-component-item[data-component-definition=appearance\/Projectile] .projectile-legend>div{color:#285e56;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffdf7e8;border:1px solid #cbd9d3;border-radius:9px;gap:2px;min-width:150px;padding:9px 11px;display:grid;box-shadow:0 4px 16px #30362e0a}.recipe-component-item[data-component-definition=appearance\/Projectile] .projectile-legend>.is-comparison{color:#8a5d19;border-color:#e1c996}.recipe-component-item[data-component-definition=appearance\/Projectile] .projectile-legend strong{font-size:13px;line-height:1.3}.recipe-component-item[data-component-definition=appearance\/Projectile] .projectile-legend span{color:currentColor;font-size:11px;line-height:1.35}.recipe-component-item[data-component-definition=appearance\/Projectile] .simulation-surface{align-self:stretch;min-height:0}.recipe-component-item[data-component-definition=appearance\/Projectile] .projectile-scene{height:100%}.recipe-lesson .recipe-measurement{gap:7px;width:100%;padding:0}.recipe-lesson .recipe-measurement-label{letter-spacing:.01em;color:#596158;font-size:13px;font-weight:600}.recipe-lesson .recipe-measurement-value{letter-spacing:-.045em;gap:5px;font-size:clamp(2rem,3vw,2.65rem);font-weight:600;line-height:1}.recipe-lesson .recipe-measurement-value small{font-size:13px;font-weight:500}.recipe-measurement-value.recipe-measurement-value--text,.recipe-lesson .recipe-measurement-value.recipe-measurement-value--text{letter-spacing:-.01em;word-break:normal;font-size:clamp(1.15rem,1.8vw,1.45rem);font-weight:600;line-height:1.35;display:block}@media (max-width:700px){.recipe-component-item[data-component-definition=appearance\/Projectile] .projectile-legend{flex-direction:column;gap:5px;margin:8px}.recipe-component-item[data-component-definition=appearance\/Projectile] .projectile-legend>div{min-width:132px;padding:6px 8px}}.recipe-layout .recipe-status{color:var(--muted,#626c60);font-size:var(--recipe-font-size,13px);align-items:center;gap:8px;line-height:1.6;display:flex}.recipe-status-dot{background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.recipe-layout .recipe-status--success{color:var(--ok,#467e53)}.recipe-layout .recipe-status--warning{color:#856020}.recipe-layout .recipe-status--error{color:#9b3b35}.recipe-playback{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.recipe-playback-state{color:var(--muted,#626c60);font-size:12px}.recipe-scene-content{gap:16px;min-width:0;display:grid}.recipe-scene-content .math-readout{border:0;border-top:1px solid var(--lesson-border);background:0 0;border-radius:0;padding:16px 0 0}.property-inspector{border:1px solid var(--lesson-border,var(--border,#d5d0c3));background:color-mix(in srgb, var(--lesson-panel,var(--panel,#fffdf7)) 76%, transparent);border-radius:11px;gap:14px;min-width:0;padding:clamp(14px,2.5vw,20px);display:grid;container-type:inline-size}.property-inspector__header{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.property-inspector__header h3,.entity-inspector__editing h3{margin:0;font-size:14px;line-height:1.4}.property-inspector__header>span{color:var(--lesson-muted,var(--text-dim,#626c60));white-space:nowrap;font-size:11px}.property-inspector__group{gap:7px;min-width:0;display:grid}.property-inspector__group h4{color:var(--lesson-muted,var(--text-dim,#626c60));letter-spacing:.05em;text-transform:uppercase;margin:0;font-size:11px;font-weight:600}.property-inspector__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:1px 22px;margin:0;display:grid}.property-inspector__row{border-bottom:1px solid color-mix(in srgb, var(--lesson-border,var(--border,#d5d0c3)) 65%, transparent);grid-template-columns:minmax(64px,1fr) minmax(0,2fr);align-items:baseline;gap:12px;min-width:0;padding-block:9px;display:grid}.property-inspector__row dt{min-width:0;color:var(--lesson-muted,var(--text-dim,#626c60));overflow-wrap:anywhere;font-size:12px;line-height:1.45}.property-inspector__row dd{min-width:0;color:var(--lesson-ink,var(--text,#30362e));font-variant-numeric:tabular-nums;text-align:right;overflow-wrap:anywhere;justify-content:end;align-items:baseline;gap:5px;margin:0;font-size:13px;font-weight:600;display:inline-flex}.property-inspector__row dd small{color:var(--lesson-muted,var(--text-dim,#626c60));font-size:.85em;font-weight:400}.property-inspector__row--empty dd,.property-inspector__row--unavailable dd,.property-inspector__row--invalid dd{color:var(--lesson-muted,var(--text-dim,#626c60));font-weight:400}.property-inspector__row--invalid dd{color:var(--danger,#9b3b35)}.property-inspector__note{color:var(--lesson-muted,var(--text-dim,#626c60));margin:0;font-size:12px;line-height:1.5}.entity-inspector{border-top:1px solid var(--border,#d5d0c3);border-bottom:1px solid var(--border,#d5d0c3)}.entity-inspector>summary{cursor:pointer;min-height:44px;padding:12px 2px;font-size:13px;font-weight:600}.entity-inspector__content{gap:16px;padding:4px 0 18px;display:grid}.entity-inspector__editing{border:1px solid var(--border,#d5d0c3);background:var(--panel,#fffdf7);border-radius:11px;gap:12px;padding:clamp(14px,2.5vw,20px);display:grid}.entity-inspector__notes>summary{cursor:pointer;min-height:42px;color:var(--lesson-muted,var(--text-dim,#626c60));padding-block:10px;font-size:12px}.entity-inspector__notes ul{color:var(--lesson-muted,var(--text-dim,#626c60));margin:0;padding:0 0 0 20px;font-size:12px;line-height:1.6}.entity-picker{gap:7px;min-width:0;display:grid}.entity-picker label{gap:7px;min-width:0;font-size:13px;font-weight:500;display:grid}.entity-picker select{border:1px solid var(--lesson-border,var(--border,#d5d0c3));width:100%;min-width:0;min-height:42px;color:var(--lesson-ink,var(--text,#30362e));background:var(--lesson-panel,var(--panel,#fffdf7));border-radius:7px;padding:9px 34px 9px 11px;font-size:14px}.entity-picker select[aria-invalid=true]{border-color:var(--danger,#9b3b35)}.entity-picker__accepted{color:var(--lesson-muted,var(--text-dim,#626c60));margin:0;font-size:12px}.recipe-lesson .bridge-demo__inspector{border:1px solid var(--lesson-border,var(--border,#d5d0c3));background:color-mix(in srgb, var(--lesson-panel,var(--panel,#fffdf7)) 76%, transparent);border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 18px;min-width:0;padding:14px 16px;font-size:12px;display:grid;position:static}.recipe-lesson .bridge-demo__inspector b,.recipe-lesson .bridge-demo__disclaimer{grid-column:1/-1}.recipe-lesson .bridge-demo__inspector span{color:var(--lesson-muted,var(--text-dim,#626c60))}.recipe-lesson details.recipe-layout{grid-column:1/-1;gap:14px}.recipe-lesson details.recipe-layout>summary{cursor:pointer;color:var(--lesson-muted);padding-block:10px;font-size:13px}.recipe-lesson details.recipe-layout[open]>summary{margin-bottom:12px}.recipe-author-item{padding:6px}.recipe-lesson .recipe-author-item .recipe-author-label{z-index:1;background:0 0;align-items:center;gap:8px;min-height:24px;padding:0 0 6px;font-size:11px;display:flex;position:absolute;top:-8px;right:0}.recipe-lesson .recipe-author-item .recipe-author-label>span{color:var(--lesson-muted);font-size:11px;font-weight:400}.recipe-lesson .recipe-author-item .recipe-author-label button{min-height:24px;color:var(--recipe-accent);background:0 0;border:0;padding:.25rem .55rem;font-size:16px}.recipe-lesson .recipe-author-item{padding:18px 6px 6px}.recipe-lesson .recipe-author-label>span{display:none}.recipe-lesson .recipe-row{align-items:center}.recipe-lesson .recipe-row>.recipe-layout{flex:none;max-width:100%}.catalog-form--action{container-type:normal}.recipe-lesson .recipe-row .recipe-author-item{padding-top:6px}.recipe-lesson .recipe-row .recipe-author-label{top:-18px}.recipe-lesson .recipe-action--primary:hover:not(:disabled){color:#fffdf7;background:#1c4942;border-color:#1c4942}.recipe-lesson .recipe-author-label button:hover:not(:disabled){background:0 0}.recipe-lesson .recipe-author-item:not(.is-selected):not(:focus-within):not(:hover) .recipe-author-label>span{visibility:hidden}.recipe-lesson :is(input,select,button,summary):focus-visible{outline:2px solid var(--recipe-accent);outline-offset:3px}@container (max-width:260px){.catalog-slider-inputs{grid-template-columns:1fr;gap:6px}.catalog-exact-value{max-width:120px}}@container (max-width:460px){.property-inspector__list,.recipe-lesson .bridge-demo__inspector{grid-template-columns:1fr}}.recipe-disconnected,.recipe-empty-layout{border:1px dashed var(--lesson-border);background:color-mix(in srgb, var(--lesson-panel) 60%, transparent);border-radius:9px;padding:1rem}.recipe-disconnected p,.recipe-empty-layout p{color:var(--lesson-muted);margin:.3rem 0 .75rem}.recipe-runtime-actions{border-top:1px solid var(--lesson-border);flex-wrap:wrap;gap:.6rem;margin-top:1.5rem;padding-top:1rem;display:flex}.recipe-table{overflow-x:auto}.recipe-table td,.recipe-table th{border-bottom:1px solid #dbe2ea;padding:.3rem}@media (max-width:760px){.recipe-grid,.recipe-split{grid-template-columns:repeat(var(--mobile-columns,1), minmax(0, 1fr))}.recipe-row{flex-direction:column}.recipe-lesson{padding:.9rem}.recipe-lesson .bridge-demo__inspector{grid-template-columns:1fr}}.simulation-surface{width:100%;min-width:0}.simulation-surface>section>svg{width:100%;max-width:100%;display:block}.simulation-feedback{color:var(--danger,#a14638);overflow-wrap:anywhere;font-size:.875rem;line-height:1.5;display:block}.simulation-feedback:not(:empty){padding:8px 0}.simulation-surface svg :focus-visible{outline:3px solid var(--accent);outline-offset:3px}.math-stepper>.catalog-field{flex:1;min-width:90px}.math-stepper>button{white-space:normal;min-height:44px}.recipe-legend svg{flex:0 0 32px}.recipe-camera-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.recipe-camera-controls .catalog-toggle{flex-basis:100%}.recipe-camera-help,.recipe-motion-policy p{color:var(--text-dim);font-size:.875rem;line-height:1.5}.recipe-camera-help.scene-guidance{margin:0}.recipe-motion-policy{gap:8px;max-width:560px;display:grid}.composition-town:has(.recipe-camera-controls){flex-direction:column;height:560px;min-height:420px;max-height:none;display:flex}.recipe-camera-controls .scene-toolbar{flex:none}.recipe-camera-controls .catalog-toggle{margin-left:auto}.composition-town:has(.recipe-camera-controls)>div:last-child{flex:1;min-height:240px}@media (max-width:650px){.recipe-camera-controls button{flex:110px}.math-stepper{flex-wrap:wrap}}.recipe-legend svg{width:32px;height:16px;max-height:16px}.simulation-scroll{overscroll-behavior-inline:contain;max-width:100%;overflow-x:auto}.simulation-scroll:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.measurement-family{flex-wrap:wrap;gap:16px;display:flex}.composition-town:has(.recipe-camera-controls){touch-action:auto;overflow:visible}.recipe-camera-controls,fieldset.math-stepper{border:0;min-width:0;margin:0;padding:0}.recipe-lesson .recipe-action--primary,.catalog-form .recipe-action--primary{min-height:44px}.catalog-field-grid>.catalog-field{grid-template-rows:subgrid;grid-row:span 2;align-content:start;display:grid}.catalog-field-grid>.catalog-field>input,.catalog-field-grid>.catalog-field>select{align-self:start}.recipe-layout .math-scene-svg{height:auto;max-height:none}.simulation-surface--scrollable{overscroll-behavior:contain;max-height:480px;overflow:auto}.simulation-surface--scrollable:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.recipe-component-item[data-decoration=box]{width:100%;height:100%;min-height:48px;padding:0}.recipe-box-content{width:100%;height:100%}.recipe-text-content{white-space:pre-wrap}.recipe-lesson .math-readout--counting{text-align:left;background:0 0;border:0;padding:8px}.recipe-lesson .math-count-label{font:500 14px / 1.4 var(--font-sans);margin-bottom:12px;display:block}.recipe-lesson .math-readout--counting .math-equation{font:500 52px / 1.1 var(--font-sans);font-variant-numeric:tabular-nums}.recipe-component-item[data-component-definition=appearance\/Projectile] .simulation-surface>section:first-child,.recipe-component-item[data-component-definition=appearance\/counting] .simulation-surface>section:first-child,.recipe-component-item[data-component-definition=appearance\/arithmetic] .simulation-surface>section:first-child,.recipe-component-item[data-component-definition=appearance\/counting] .recipe-scene-content,.recipe-component-item[data-component-definition=appearance\/arithmetic] .recipe-scene-content,.recipe-component-item[data-component-definition=appearance\/counting] .simulation-surface,.recipe-component-item[data-component-definition=appearance\/arithmetic] .simulation-surface{height:100%;min-height:0}.recipe-component-item .arithmetic-scene{height:100%}.task-control{gap:16px;display:grid}.task-operation{background:#e9e7dc;border-radius:12px;gap:4px;padding:4px;display:flex}.recipe-lesson .task-operation button{min-height:44px;font:inherit;color:#536057;cursor:pointer;background:0 0;border:0;border-radius:9px;flex:1}.recipe-lesson .task-operation button[aria-pressed=true]{color:#fffdf7;background:#285e56}.task-operation button:focus-visible{outline-offset:2px;outline:3px solid #a5752b}.task-numbers{grid-template-columns:1fr 1fr;gap:16px;display:grid}.recipe-lesson .task-control .experiment-number input[type=text]{font-variant-numeric:tabular-nums;min-height:44px;font-size:22px}.task-control-hint{color:var(--muted);margin:0;font-size:12px;line-height:1.4}.recipe-lesson .math-readout--arithmetic{text-align:left;background:0 0;border:0;padding:8px}.recipe-lesson .math-readout--arithmetic .math-equation{font:500 34px / 1.2 var(--font-sans);color:#285e56;font-variant-numeric:tabular-nums}.recipe-lesson .math-readout--arithmetic p{margin:8px 0 0;font-size:14px}.recipe-component-item[data-component-definition=appearance\/Projectile]>.recipe-scene-content{grid-template-rows:minmax(0,1fr);gap:0;height:100%;min-height:0}.recipe-component-item[data-component-definition=appearance\/Projectile]>.recipe-scene-content>:is(.projectile-legend,.simulation-surface){grid-area:1/1}.recipe-component-item[data-component-definition=appearance\/Projectile]>.recipe-scene-content>.simulation-surface{height:100%;min-height:0}.recipe-lesson .recipe-component-item[data-component-definition=controls\/Button],.recipe-lesson .recipe-component-item[data-component-definition=controls\/Button] .catalog-form--action,.recipe-lesson .recipe-component-item[data-component-definition=controls\/Button] .catalog-form--action>button{align-self:stretch;width:100%}@container (max-width:180px){.catalog-slider .catalog-slider-heading{gap:4px}.catalog-slider .catalog-slider-heading>label:first-child{font-size:13px;line-height:1.25}.catalog-form .catalog-slider .catalog-slider-heading .catalog-exact-value input{width:48px;padding:4px;font-size:20px}}.task-operation{border:0;min-width:0;margin:0}.math-activity,.counting-activity{flex-direction:column;gap:12px;height:100%;min-height:0;padding:20px;display:flex}.math-activity-heading{color:#285e56;margin:0;font-size:20px;font-weight:600;line-height:1.3}.math-activity-hint{color:#536057;margin:0;font-size:14px;line-height:1.4}.recipe-component-item .math-activity>.simulation-surface,.recipe-component-item .counting-activity>.simulation-surface{flex:1;height:auto;min-height:0}.recipe-lesson .math-activity-action{color:#fffdf7;width:100%;min-height:48px;font:600 16px / 1.3 var(--font-sans);cursor:pointer;background:#285e56;border:1px solid #285e56;border-radius:12px}.recipe-lesson .math-activity-action:hover{background:#1c4942}.recipe-lesson :is(.math-readout--arithmetic,.math-readout--counting){text-align:left;padding:0}.recipe-lesson .bridge-demo__inspector{background:0 0;border:0;min-width:0;padding:0;font-size:14px;line-height:1.5;position:static}.bridge-member-hint h3{color:#285e56;margin:0 0 12px;font-size:16px}.bridge-member-hint p{color:#536057;margin:0;font-size:14px;line-height:1.5}@container (max-width:360px){.math-activity,.counting-activity{padding:16px}.math-activity-heading{font-size:17px}}.spatial-board.is-responsive-layout .math-readout{text-align:left}.spatial-board.is-responsive-layout .board-item[data-board-component=appearance\/Bridge] .bridge-demo{background:#fffcf4;border:1px solid #cec8b8;border-radius:18px;height:100%;min-height:0;margin:0;padding:0;overflow:visible}.spatial-board.is-responsive-layout .board-item[data-board-component=appearance\/Bridge] .simulation-surface,.spatial-board.is-responsive-layout .board-item[data-board-component=appearance\/Bridge] .simulation-surface>section{height:100%;min-height:0}.spatial-board.is-responsive-layout .board-item[data-board-component=appearance\/Bridge] svg{border-radius:18px;height:100%}:is(.activity-control,.scalar-control--parameter){flex-direction:column;gap:16px;min-width:0;padding:8px;display:flex}.number-field-heading{display:contents}.catalog-form .number-field-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.recipe-lesson .catalog-form .number-field-heading>input[type=text]{text-align:right;flex-shrink:1;width:88px;min-width:0;min-height:44px;font-size:24px}.catalog-form .number-field-heading>label{flex:1}.recipe-lesson .catalog-form .number-field--slider:not(.number-field--compact) .number-field-heading>input[type=text]{flex-shrink:0;width:112px}.scalar-control{min-width:0}.recipe-lesson:has([data-component-definition=appearance\/chemistry-gas-equilibrium]) .board-content:has(.scalar-control){padding:20px}.recipe-lesson:has([data-component-definition=appearance\/chemistry-gas-equilibrium]) .recipe-stack:has(.scalar-control){flex-direction:column;display:flex}.recipe-lesson:has([data-component-definition=appearance\/chemistry-gas-equilibrium]) .recipe-measurement-value{white-space:nowrap;font-size:40px;display:block}.recipe-lesson:has([data-component-definition=appearance\/chemistry-gas-equilibrium]) .recipe-measurement-value>small{display:block}:is(.activity-control,.scalar-control--parameter) .number-field-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}:is(.activity-control,.scalar-control--parameter) .number-field-heading>label{color:var(--text);font-size:15px;font-weight:500}.recipe-lesson :is(.activity-control,.scalar-control--parameter) .number-field-heading>input[type=text]{color:#285e56;text-align:right;width:88px;min-height:48px;font:500 26px / 1.2 var(--font-sans);font-variant-numeric:tabular-nums;background:#fffcf4;border:1px solid #b7c4b9;border-radius:8px;padding:6px 10px}.recipe-lesson :is(.activity-control,.scalar-control--parameter) .number-field-range{accent-color:#285e56;cursor:pointer;border:0;width:100%;min-height:44px;padding:0}.recipe-lesson :is(.math-readout--equal-groups,.math-readout--fraction-builder,.math-readout--fraction-number-line) .math-equation{font:500 30px / 1.25 var(--font-sans);font-variant-numeric:tabular-nums}:is(.activity-control,.scalar-control--parameter) .experiment-number{gap:4px;margin:0}:is(.activity-control,.scalar-control--parameter) .experiment-number+.experiment-number,:is(.activity-control,.scalar-control--parameter) .exploration-fraction+.exploration-fraction{border-top:1px solid #ded8c8;padding-top:12px}:is(.activity-control,.scalar-control--parameter) .fraction-entry{grid-template-columns:1fr 112px;align-items:center;gap:12px;display:grid}.recipe-lesson :is(.activity-control,.scalar-control--parameter) .fraction-entry input[type=text]{text-align:center;color:#285e56;min-height:48px;font:500 26px / 1.2 var(--font-sans)}.fraction-entry .experiment-error{grid-column:1/-1}.recipe-lesson :is(.activity-control,.scalar-control--parameter) :is(input,button):focus-visible{outline-offset:3px;outline:3px solid #a5752b}.recipe-lesson :is(.activity-control,.scalar-control--parameter) input[aria-invalid=true]{border-color:#a53623}:is(.activity-control,.scalar-control--parameter) h3{color:#285e56;margin:0;font-size:18px}:is(.activity-control,.scalar-control--parameter) p{color:#536057;margin:0;font-size:14px;line-height:1.5}.exploration-fraction{border:0;flex-direction:column;gap:10px;min-width:0;margin:0;padding:0;display:flex}.exploration-fraction legend{margin-bottom:8px;font-weight:600}:is(.activity-control,.scalar-control--parameter) .recipe-action{width:100%;min-height:48px}:is(.activity-control,.scalar-control--parameter) .task-operation{flex-wrap:wrap}:is(.activity-control,.scalar-control--parameter) .task-operation button{flex:1;min-height:44px}.number-line-activity .catalog-field{margin:0}.recipe-lesson .math-readout--equal-groups,.recipe-lesson .math-readout--fraction-builder,.recipe-lesson .math-readout--fraction-number-line{text-align:left;padding:0}.recipe-lesson .math-readout--equal-groups .math-equation,.recipe-lesson .math-readout--fraction-number-line .math-equation{overflow-wrap:anywhere;font-size:24px}.probability-scene{flex-direction:column;gap:12px;height:100%;min-height:0;padding:20px;display:flex}.probability-scene .simulation-surface{flex:1;min-height:100px}.recipe-component-item:is([data-component-definition=appearance\/equal-groups],[data-component-definition=appearance\/fraction-number-line],[data-component-definition=appearance\/fraction-builder],[data-component-definition=appearance\/coordinates],[data-component-definition=appearance\/ratio],[data-component-definition=appearance\/area-perimeter],[data-component-definition=appearance\/probability]) .recipe-scene-content,.grouping-activity .simulation-surface>section:first-child,.number-line-activity .simulation-surface>section:first-child,.probability-scene .simulation-surface>section:first-child{height:100%;min-height:0}.recipe-layout .grouping-activity .math-scene-svg,.recipe-layout .number-line-activity svg,.recipe-layout .probability-scene svg{height:100%;max-height:none}.recipe-component-item:is([data-component-definition=appearance\/fraction-builder],[data-component-definition=appearance\/coordinates],[data-component-definition=appearance\/ratio],[data-component-definition=appearance\/area-perimeter]) .simulation-surface,.recipe-component-item:is([data-component-definition=appearance\/fraction-builder],[data-component-definition=appearance\/coordinates],[data-component-definition=appearance\/ratio],[data-component-definition=appearance\/area-perimeter]) .simulation-surface>section:first-child{height:100%;min-height:0}.recipe-component-item:is([data-component-definition=appearance\/fraction-builder],[data-component-definition=appearance\/coordinates],[data-component-definition=appearance\/ratio],[data-component-definition=appearance\/area-perimeter]) svg{height:100%;max-height:none}@media (max-width:700px){.activity-control:has(.number-field--slider){grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;padding:0;display:grid}.activity-control:has(.number-field--slider)>p{grid-column:1/-1}:is(.activity-control,.scalar-control--parameter) .number-field-heading{flex-direction:column;align-items:stretch;gap:4px}:is(.activity-control,.scalar-control--parameter) .number-field-heading>label{min-height:38px;line-height:1.25}.recipe-lesson :is(.activity-control,.scalar-control--parameter) .number-field-heading>input[type=text]{width:100%}:is(.activity-control,.scalar-control--parameter) .experiment-number+.experiment-number,:is(.activity-control,.scalar-control--parameter) .exploration-fraction+.exploration-fraction{border-top:0;padding-top:0}}:is(.spatial-board.is-responsive-layout .board-item[data-board-scene=true]:has(.probability-scene),.spatial-board.is-responsive-layout .board-item[data-board-component=appearance\/fraction-builder],.spatial-board.is-responsive-layout .board-item[data-board-component=appearance\/ratio],.spatial-board.is-responsive-layout .board-item[data-board-component=appearance\/area-perimeter],.spatial-board.is-responsive-layout .board-item[data-board-component=appearance\/coordinates]){background:#fffcf4;border:1px solid #cec8b8;border-radius:18px}.recipe-component-item[data-component-definition=appearance\/fraction-builder] .recipe-scene-content{padding:16px}.recipe-lesson:has(:is(.activity-control,.scalar-control--parameter)) .spatial-board.is-compact .board-toolbar.is-floating{background:#eee9dc;border-bottom:1px solid #d5cdbb;flex-shrink:0;justify-content:flex-end;height:50px;min-height:50px;padding:4px 12px;display:flex;position:relative}.recipe-lesson:has(:is(.activity-control,.scalar-control--parameter)) .spatial-board.is-compact .is-floating .board-workspace-tools{box-shadow:none;background:0 0;border:0;padding:0;position:static}.trial-summary{flex-direction:column;gap:12px;display:flex}@media (min-width:701px) and (max-height:700px){.recipe-lesson :is(.activity-control,.scalar-control--parameter) .number-field-heading>input[type=text],.recipe-lesson :is(.activity-control,.scalar-control--parameter) .fraction-entry input[type=text]{min-height:64px;font-size:32px}.recipe-lesson :is(.activity-control,.scalar-control--parameter) .number-field-range,.recipe-lesson :is(.activity-control,.scalar-control--parameter) .task-operation button,.recipe-lesson :is(.activity-control,.scalar-control--parameter) .recipe-action{min-height:64px}.recipe-lesson:has(:is(.activity-control,.scalar-control--parameter)) .math-activity-action{min-height:64px}}.trial-summary h3{color:#285e56;margin:0;font-size:16px}.trial-summary p{margin:0;font-size:14px;line-height:1.4}.trial-summary-values{grid-template-columns:1fr 1fr;gap:12px;display:grid}.trial-summary-values span{margin-bottom:6px;font-size:13px;display:block}.trial-summary-values strong{color:#285e56;font-size:26px;font-weight:600}.control-unconfigured{gap:12px;padding:12px;display:grid}.control-unconfigured p{margin:0}.control-unconfigured input:disabled{opacity:.5}.control-unconfigured .number-field-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.control-unconfigured .number-field-heading input{width:88px;min-height:44px}.control-unconfigured p{font-size:14px;line-height:1.4}@media (max-width:700px){.recipe-stack:has(>.recipe-stack>.recipe-component-item>.scalar-control--parameter){grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;display:grid}.recipe-stack:has(>.recipe-stack>.recipe-component-item>.scalar-control--parameter)>h3{grid-column:1/-1}.scalar-control--parameter{padding:0}}.recipe-lesson:has([data-component-definition=appearance\/coordinates]) .board-content:has(.scalar-control--parameter){padding:24px}.recipe-lesson:has([data-component-definition=appearance\/coordinates]) .recipe-stack:has(>.recipe-stack>.recipe-component-item>.scalar-control--parameter){flex-direction:column;display:flex}.recipe-lesson:has([data-component-definition=appearance\/coordinates]) .scalar-control--parameter{padding:0}.recipe-lesson:has([data-component-definition=appearance\/coordinates]) .scalar-control--parameter .number-field-heading{flex-direction:row;align-items:center;gap:12px}.recipe-lesson:has([data-component-definition=appearance\/coordinates]) .scalar-control--parameter .number-field-heading>label{min-height:0}.recipe-lesson:has([data-component-definition=appearance\/coordinates]) .scalar-control--parameter .number-field-heading>input[type=text]{width:88px}.recipe-lesson:has([data-component-definition=appearance\/coordinates]) .number-field-heading>span{display:none}.recipe-explanation{pointer-events:auto;max-width:72ch;font-size:14px}.recipe-explanation summary{cursor:pointer;min-height:32px;color:var(--text-dim);align-items:center;display:flex}.recipe-explanation[open]{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:8px 12px}.recipe-explanation p{white-space:pre-line}.recipe-playback{gap:10px;width:100%;display:grid}.recipe-playback-label{overflow-wrap:anywhere;font-size:14px;font-weight:600}.recipe-playback-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.recipe-playback .recipe-action{border-radius:10px;min-width:116px;min-height:48px;font-size:15px}.recipe-playback .playback-icon{fill:currentColor;flex:none;width:18px;height:18px}.recipe-playback-state{font-size:13px}.recipe-lesson .catalog-form .number-field-heading>label{font-size:15px;font-weight:600;line-height:1.35}.catalog-slider-inputs input[type=range]{min-height:44px}.catalog-form .catalog-help{font-size:13px;line-height:1.5}.recipe-playback .recipe-action--primary{background:var(--accent,#285e56);border-color:var(--accent,#285e56);color:#fffbef}:is(.catalog-form,.recipe-playback) :is(button,input,select):focus-visible{outline:3px solid var(--accent,#285e56);outline-offset:3px}.board-item[data-board-component^=controls\/]>.board-content>.recipe-layout{height:auto;min-height:0}.recipe-layout .recipe-playback svg.playback-icon{width:18px;height:18px;max-height:18px}.spatial-board .board-item[data-board-component=controls\/Button]{box-shadow:none;background:0 0;border-color:#0000}.spatial-board .board-item:has(.recipe-playback){box-shadow:none;background:0 0;border-color:#0000}.recipe-lesson .catalog-form .number-field-heading>input[type=text],.recipe-lesson .catalog-form select,.recipe-lesson .catalog-form .recipe-action,.recipe-lesson .catalog-slider-inputs input[type=range]{min-height:48px}.recipe-component-item[data-component-definition=appearance\/EclipseGeometry]>.recipe-scene-content{grid-template-rows:minmax(0,1fr);height:100%;min-height:0}.eclipse-scene{grid-template-rows:minmax(0,1fr) auto;align-content:stretch;gap:12px;height:100%;min-height:0;margin:0;display:grid}.eclipse-scene>svg{width:100%;height:100%;min-height:0;max-height:100%;display:block}.eclipse-scene figcaption{color:var(--muted,#626c60);font-size:14px;line-height:1.5}.catalog-choice{border:0;min-width:0;margin:0;padding:0}.catalog-choice legend{margin-bottom:12px;padding:0;font-size:15px;font-weight:600}.catalog-choice-options{flex-wrap:wrap;gap:8px;display:flex}.catalog-choice-options label{flex:1;margin:0;display:flex;position:relative}.catalog-choice-options input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute}.catalog-choice-options span{border:1px solid var(--border);width:100%;min-height:48px;color:var(--accent);background:var(--panel);border-radius:8px;justify-content:center;align-items:center;padding:8px 14px;display:flex}.catalog-choice-options input:checked+span{color:#fffbef;background:var(--accent);border-color:var(--accent);font-weight:600}.catalog-choice-options input:focus-visible+span{outline:3px solid var(--accent);outline-offset:3px}.recipe-event{color:var(--accent);padding:12px 4px;font-size:18px;font-weight:600;line-height:1.4;display:block}.recipe-lesson .catalog-form{gap:8px}.recipe-lesson .catalog-form .catalog-field{gap:2px}.recipe-lesson .catalog-form .catalog-help{margin:0}.recipe-lesson .catalog-form .number-field--compact{grid-template-columns:minmax(0,1fr) 88px;gap:6px 12px}.recipe-lesson .catalog-form .number-field--compact .number-field-heading{display:contents}.recipe-lesson .catalog-form .number-field--compact .number-field-heading>label{grid-area:1/1/auto/-1}.recipe-lesson .catalog-form .number-field--compact .number-field-heading>input{grid-area:2/2;min-height:56px}.recipe-lesson .catalog-form .number-field--compact .catalog-slider-inputs{grid-area:2/1}.recipe-lesson .catalog-form .number-field--compact input[type=range]{min-height:56px}.recipe-lesson .catalog-form .number-field--compact .experiment-error{grid-column:1/-1}.recipe-disclosure>summary{cursor:pointer;border:1px solid var(--lesson-border);background:var(--lesson-panel);border-radius:10px;padding:.75rem}.recipe-disclosure__content{box-sizing:border-box;overscroll-behavior:contain;max-height:min(50dvh,360px);padding:12px 4px 96px;overflow-y:auto}
.chemistry-assembly{gap:24px;display:grid}.chemistry-experiment h2,.chemistry-experiment h3{font-family:Georgia,serif}.chemistry-experiment h2{margin:0;font-size:24px}.chemistry-experiment h3{margin:0 0 12px;font-size:18px}.chem-scene-heading{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:8px;display:flex}.chem-scene-heading p{color:#606658;text-align:right;margin:0;font-size:13px}.chemistry-experiment figure{margin:0}.chemistry-experiment svg{width:100%;height:auto;max-height:410px;display:block}.chemistry-experiment svg text{fill:currentColor;font-size:14px}.chemistry-experiment figcaption,.chemistry-experiment .chem-caption{color:#606658;text-align:center;margin-top:8px;font-size:13px;line-height:1.45}.chemistry-experiment button,.chemistry-experiment input{border:1px solid var(--border,#797a6c);background:var(--panel,#fffbef);min-height:44px;color:inherit;font:inherit;border-radius:9px;padding:8px 10px}.chemistry-experiment button{cursor:pointer}.chemistry-experiment button:disabled{opacity:.6;cursor:default}.chemistry-experiment .chem-primary{border-color:var(--accent,#285e56);background:var(--accent,#285e56);width:100%;color:var(--panel,#fffbef);font-weight:600}.chem-panel-title{margin:0 0 12px;font:21px/1.25 Georgia,serif}.chem-coach,.chem-insight{color:#555e51;margin:0 0 14px;font-size:14px}.chem-insight{margin:12px 0 0}.chem-key-results{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.chem-key-results--three{grid-template-columns:repeat(3,minmax(0,1fr))}.chem-key-results>div{background:#f3eddf;border-radius:10px;gap:3px;min-width:0;padding:9px;display:grid}.chem-key-results span{color:#606658;font-size:11px}.chem-key-results strong{color:var(--accent,#285e56);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:16px}.chem-feedback{min-height:20px;display:block}.chem-input{margin:0}.chem-input label,.chem-coefficients label{margin-bottom:6px;font-size:13px;display:block}.chem-input>div{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.chemistry-experiment input{width:100%;min-width:0}.chem-input small{color:#606658;margin-top:4px;font-size:12px;display:block}.chem-equation{text-align:center;margin:6px 0;font:clamp(24px,4vw,36px)/1.2 Georgia,serif}.chem-balance-state{text-align:center;margin:0 0 8px;font-weight:600}.chem-molecules{flex-wrap:wrap;gap:14px;display:flex}.chem-species{flex:110px}.chem-species>span{color:#606658;font-size:13px;display:block}.chem-molecule-tokens{flex-wrap:wrap;gap:7px;margin-top:10px;display:flex}.chem-molecule{border:1px solid #797a6c;border-radius:20px;padding:4px;display:inline-flex}.chem-atom{background:#e0e9e1;border-radius:50%;place-items:center;width:24px;height:24px;font-size:14px;display:inline-grid}.chem-atom-O{background:#eedbc8}.chem-atom-C{background:#dfd9ed}.chem-coefficients{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0;display:grid}.chem-coefficients input{text-align:center}.chem-element-summary{flex-wrap:wrap;gap:8px;display:flex}.chem-element-summary>div{border:1px solid var(--danger,#bb5e50);background:#fff5f1;border-radius:9px;flex:86px;grid-template-columns:auto 1fr;gap:2px 8px;padding:8px;display:grid}.chem-element-summary>.is-matched{border-color:var(--ok,#467e53);background:#eef6ed}.chem-element-summary small{color:#606658;grid-column:1/-1}.chem-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.chem-actions button{flex:70px;font-size:13px}.chem-reset{width:100%;color:var(--accent,#285e56);margin-top:14px}.chem-details>summary{min-height:44px;color:var(--accent,#285e56);cursor:pointer;align-items:center;font-size:14px;display:flex}.chem-details-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:16px;padding:16px 0;display:grid}.chem-details-grid>section{border:1px solid var(--border,#d5cdbb);background:#fffbee80;border-radius:12px;min-width:0;padding:16px}.chem-details-grid dl{grid-template-columns:minmax(0,1fr) auto;gap:8px 16px;margin:0;display:grid}.chem-details-grid dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.chem-table-wrap{overflow-x:auto}.chemistry-experiment table{border-collapse:collapse;width:100%}.chemistry-experiment :is(th,td){border-bottom:1px solid var(--border,#d5cdbb);text-align:left;padding:8px 4px}.chemistry-experiment caption{text-align:left;margin-bottom:8px}.chem-assumptions{color:#606658;font-size:14px}.chem-assumptions p{margin:6px 0}.chem-particles{flex-wrap:wrap;justify-content:center;gap:4px;margin-top:8px;display:flex}.chem-particles span{color:#fffbef;border-radius:50%;place-items:center;width:26px;height:26px;font-size:13px;display:grid}.chem-particle-a{background:#285e56}.chem-particle-b{background:#885410}@media (max-width:760px){.chem-scene-heading{text-align:center;display:block}.chem-scene-heading p{text-align:center;margin-top:6px}.chemistry-experiment svg{max-height:320px}.chem-key-results--three{grid-template-columns:repeat(2,minmax(0,1fr))}.chem-key-results--three>div:last-child{grid-column:1/-1}.chem-coefficients{grid-template-columns:repeat(3,minmax(0,1fr))}}
.dynamic-systems-assembly{gap:24px;display:grid}.dynamic-systems-experiment h2{margin:0 0 8px;font:24px/1.25 Georgia,serif}.dynamic-systems-experiment figure{margin:0}.dynamic-systems-experiment svg{width:100%;height:auto;max-height:390px;display:block}.dynamic-systems-experiment figcaption{color:#606658;text-align:center;margin-top:8px;font-size:13px}.dynamic-chart svg line{stroke:#9a927f;stroke-width:1px}.dynamic-chart svg text{fill:currentColor;font-size:13px}.dynamic-line{fill:none;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round}.dynamic-line--compound{stroke:#285e56}.dynamic-line--simple{stroke:#b56b2b;stroke-dasharray:8 6}.dynamic-key{background:#285e56;width:18px;height:3px;margin:0 4px 3px 12px;display:inline-block}.dynamic-key--simple{background:#b56b2b}.traffic-road{fill:none;stroke:#7c7c72;stroke-width:48px}.traffic-road-inner{fill:#f3eddf;stroke:#fffbe8;stroke-width:3px}.traffic-car{fill:#285e56;stroke:#fffbe8;stroke-width:2px}.traffic-car.is-slow{fill:#d67b24}.traffic-visual text{fill:#4e554b;font-size:15px}.queue-visual{place-content:center;gap:24px;min-height:290px;display:grid}.queue-stations{justify-content:center;gap:18px;display:flex}.queue-cashier{color:#777;text-align:center;background:#ede9df;border:2px solid #b9b2a2;border-radius:14px;min-width:126px;padding:16px;display:grid}.queue-cashier>span{font-size:38px}.queue-cashier.is-open{color:#285e56;background:#edf4ee;border-color:#285e56}.queue-customers{justify-content:center;align-items:end;gap:6px;min-height:90px;display:flex}.queue-customers>div{width:30px;height:calc(44px + var(--wait) * .45px);color:#fffbef;text-align:center;background:#b56b2b;border-radius:18px;align-content:end;padding-bottom:4px;display:grid}.queue-customers small{font-size:9px}.dynamic-panel-title{margin:0 0 8px;font:21px/1.25 Georgia,serif}.dynamic-coach{color:#555e51;margin:0 0 14px;font-size:14px}.dynamic-systems-experiment button,.dynamic-systems-experiment input{border:1px solid var(--border,#797a6c);background:var(--panel,#fffbef);min-height:44px;color:inherit;font:inherit;border-radius:9px;padding:8px 10px}.dynamic-systems-experiment button{cursor:pointer}.dynamic-systems-experiment button:disabled{opacity:.55;cursor:default}.dynamic-systems-experiment .dynamic-primary{border-color:var(--accent,#285e56);background:var(--accent,#285e56);color:#fffbef;width:100%;font-weight:650}.dynamic-results{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.dynamic-results>div{background:#f3eddf;border-radius:10px;gap:3px;min-width:0;padding:9px;display:grid}.dynamic-results span{color:#606658;font-size:11px}.dynamic-results strong{color:var(--accent,#285e56);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:15px}.dynamic-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.dynamic-actions button{flex:72px;font-size:13px}.dynamic-reset{width:100%;color:var(--accent,#285e56);margin-top:14px}.dynamic-feedback{min-height:20px;display:block}.dynamic-details>summary{min-height:44px;color:var(--accent,#285e56);cursor:pointer;align-items:center;display:flex}.dynamic-details-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:14px;padding:14px 0;display:grid}.dynamic-input label{margin-bottom:5px;font-size:13px;display:block}.dynamic-input>div{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.dynamic-input input{width:100%;min-width:0}.dynamic-input small{color:#606658;font-size:12px}.dynamic-assumptions{color:#606658;font-size:14px}.dynamic-assumptions p{margin:6px 0}@media (max-width:520px){.dynamic-results{grid-template-columns:minmax(0,1fr)}.queue-cashier{min-width:106px;padding:10px}.queue-customers{gap:3px;overflow:hidden}.queue-customers>div{width:23px}}@media (prefers-reduced-motion:reduce){.dynamic-systems-experiment *{scroll-behavior:auto;transition-duration:.01ms;animation-duration:.01ms}}.traffic-visual{align-content:center;gap:12px;height:100%;margin:0;display:grid}.traffic-visual>svg{width:100%;display:block}.traffic-road{stroke:#555b55}.traffic-lane{fill:none;stroke:#e9e3d3;stroke-width:1.5px;stroke-dasharray:9 10}.traffic-vehicle .traffic-car{fill:#78b9a6;stroke:#183f39;stroke-width:1px}.traffic-vehicle.is-slow .traffic-car{fill:#efb85f;stroke:#6f4817}.traffic-tire{fill:#242b26}.traffic-window{fill:#e9f1e9;opacity:.9}.traffic-headlights{stroke:#fffbef;stroke-width:2px}.traffic-taillights{stroke:#71382b;stroke-width:2px}.is-slow .traffic-taillights{stroke:#ff5949;stroke-width:3px}.traffic-lead-ring{fill:none;stroke:#fffbea;stroke-width:2px}.traffic-visual .traffic-car-number{fill:#172f2b;font-size:10px;font-weight:700}.traffic-visual figcaption{color:var(--text,#30362e);flex-wrap:wrap;justify-content:center;gap:10px 18px;font-size:13px;line-height:1.5;display:flex}.traffic-key{align-items:center;gap:6px;display:inline-flex}.traffic-key i{background:#78b9a6;border:1px solid #183f39;border-radius:4px;justify-content:center;align-items:center;width:22px;height:14px;font-size:10px;font-style:normal;display:inline-flex}.traffic-key.is-slow i{background:#efb85f;border-color:#6f4817}.traffic-key.is-lead i{background:0 0;border:2px solid #285e56;height:20px}
.natural-systems-experiment{--natural-border:#c8d3c7;--natural-panel:#f4f8f2}.natural-instance-grid{gap:20px;display:grid}.natural-instance{border:1px solid var(--natural-border);background:#fbfdf9;border-radius:18px;grid-template-columns:minmax(0,1fr) minmax(190px,240px);gap:14px 20px;padding:18px;display:grid}.natural-instance>header,.natural-scene{grid-column:1}.natural-instance>header h2,.natural-scene h3{margin:0}.natural-instance>header p{color:#586456;margin:4px 0 0}.natural-scene{min-width:0}.natural-figure{text-align:center;margin:8px 0}.natural-figure svg{color:#303b31;width:100%;max-height:390px;display:block}.natural-figure figcaption{color:#586456;font-size:14px}.natural-insight{background:#edf6e9;border-left:4px solid #5a875b;margin:10px 0 0;padding:10px 12px}.natural-result{color:#fff;background:#24482e;border-radius:14px;grid-area:1/2/span 2;align-self:start;gap:2px;padding:16px;display:grid}.natural-result strong{font-size:clamp(22px,3vw,32px);line-height:1.15}.natural-result span{font-size:13px}.natural-controls{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end;gap:10px;display:grid}.natural-controls button,.natural-playback button,.natural-number-control input{min-height:44px;font:inherit;border:1px solid #7a8d78;border-radius:9px}.natural-controls button,.natural-playback button{color:#213a27;cursor:pointer;background:#eef5eb;padding:8px 12px}.natural-controls button:hover,.natural-playback button:hover{background:#dcebd8}.natural-controls button:focus-visible,.natural-playback button:focus-visible,.natural-number-control input:focus-visible{outline-offset:2px;outline:3px solid #b65d2e}.natural-number-control{gap:4px;display:grid}.natural-number-control>div{grid-template-columns:minmax(0,1fr) auto;gap:6px;display:grid}.natural-number-control input{color:#20271f;background:#fff;width:100%;padding:7px}.natural-number-control small{color:#586456}.natural-controls details{border:1px solid var(--natural-border);border-radius:9px;align-self:stretch;padding:8px}.natural-controls summary{cursor:pointer}.natural-readouts{grid-column:1/-1}.natural-readouts summary{cursor:pointer;font-weight:650}.natural-readouts dl{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px;display:grid}.natural-readouts dl div{background:var(--natural-panel);border-radius:8px;padding:8px}.natural-readouts dt{color:#586456;font-size:13px}.natural-readouts dd{overflow-wrap:anywhere;margin:2px 0 0;font-weight:650}.natural-playback{gap:8px;display:grid}.natural-playback button:disabled{opacity:.5;cursor:default}.natural-time{background:var(--natural-panel);border-radius:10px;gap:3px;margin-top:16px;padding:12px;display:grid}.natural-time span{color:#586456;font-size:13px}.natural-time strong{font-size:22px}@media (max-width:720px){.natural-systems-experiment{width:min(100% - 24px,1180px)}.natural-instance{grid-template-columns:minmax(0,1fr);padding:13px}.natural-instance>header,.natural-scene,.natural-result,.natural-controls,.natural-readouts{grid-column:1}.natural-result{grid-row:auto}.natural-controls{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.natural-systems-experiment *{scroll-behavior:auto;transition-duration:.01ms;animation-duration:.01ms}}
.math-experiment{width:100%;max-width:1360px;color:var(--text);flex:1;margin:0 auto;padding:32px clamp(16px,4vw,48px) 40px}.math-intro{margin-bottom:24px}.math-grade{color:var(--text-dim);letter-spacing:.13em;font:700 11px system-ui}.math-intro h1{margin:10px 0;font:36px Georgia,serif}.math-intro p{max-width:780px;color:var(--text-dim);line-height:1.6}.math-workspace{grid-template-columns:minmax(0,1fr) 285px;align-items:start;gap:24px;display:grid}.math-stage{border:1px solid var(--border);background:var(--panel);border-radius:22px;overflow:hidden}.math-scene-scroll{padding-top:10px;overflow-x:auto}.math-stage svg{width:100%;min-width:580px;display:block}.math-experiment--fraction-number-line .math-stage svg{min-width:900px}.math-experiment--fraction-builder .math-stage svg{min-width:660px}.math-controls{border:1px solid var(--border);background:var(--panel);border-radius:18px;flex-direction:column;gap:18px;padding:24px;display:flex}.math-controls h2{margin:0;font:24px Georgia,serif}.math-controls label{flex-direction:column;gap:8px;font:600 13px system-ui;display:flex}.math-controls select{border:1px solid var(--border);background:var(--panel);color:var(--text);border-radius:8px;width:100%;min-height:44px;padding:10px}.math-stepper{align-items:center;gap:6px;display:flex}.math-stepper input{text-align:center;border:1px solid var(--border);background:var(--panel);width:80px;min-width:0;min-height:44px;color:var(--text);border-radius:8px;flex:1}.math-controls button{border:1px solid var(--border);background:var(--panel);min-height:44px;color:var(--text);cursor:pointer;border-radius:8px;padding:10px 12px;font:600 13px system-ui}.math-controls button:hover{border-color:var(--accent);background:#e6ecdf}.math-controls button:disabled{opacity:.45;cursor:default}.math-controls button:focus-visible,.math-controls input:focus-visible,.math-controls select:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.math-actions{flex-wrap:wrap;gap:8px;display:flex}.math-fraction-input{border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:12px;min-width:0;margin-bottom:12px;padding:12px;display:flex}.math-fraction-input legend{padding:0 5px;font-weight:700}.math-readout{border-top:1px solid var(--border);text-align:center;background:var(--panel);padding:24px}.math-equation{color:var(--accent);font:38px Georgia,serif}.math-readout p{margin:10px 0 0;font:14px/1.6 system-ui}.math-feedback{color:var(--accent);font-weight:700}.math-hint{color:var(--text-dim);font:12px/1.6 system-ui}.math-error,.math-controls [role=alert]{color:#a53623;font:12px/1.5 system-ui}.math-scene-label{fill:var(--text);font:600 17px system-ui}.math-object-control{cursor:pointer;outline:none}.math-object-control:focus-visible>g circle,.math-object-control:focus-visible rect{stroke:#a53623;stroke-width:4px}.math-object-control[aria-disabled=true]{cursor:default}.math-token{transition:transform .35s,fill .2s}.math-token circle,.math-stage rect{transition:fill .2s}.math-jump{animation:.35s both math-appear}@keyframes math-appear{0%{opacity:0}to{opacity:1}}@media (max-width:850px){.math-workspace{grid-template-columns:1fr}.math-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.math-controls h2,.math-controls>.math-actions,.math-controls>.math-hint{grid-column:1/-1}.math-intro h1{font-size:29px}}@media (max-width:460px){.math-controls{grid-template-columns:1fr}.math-equation{font-size:30px}}.circle-appearance{grid-template-rows:minmax(0,1fr) auto auto;gap:8px;height:100%;display:grid}.circle-appearance>svg{width:100%;height:100%;min-height:0}.circle-appearance>button{justify-self:start}@media (prefers-reduced-motion:reduce){.math-token,.math-token circle,.math-stage rect{transition:none}.math-jump{animation:none}}.math-scroll-hint{color:var(--text-dim);padding:0 20px;font:12px/1.5 system-ui;display:none}@media (max-width:650px){.math-scroll-hint{display:block}}.math-experiment--young{max-width:1080px}.math-experiment--young .math-workspace{grid-template-columns:minmax(0,1fr);gap:16px}.math-experiment--young .math-controls{background:0 0;border:0;flex-direction:column;gap:20px;padding:0;display:flex}.math-grownups{align-self:center;width:100%;max-width:700px}.math-grownups summary{width:fit-content;color:var(--text-dim);cursor:pointer;margin:0 auto;padding:12px;font:14px system-ui}.math-grownups summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:8px}.math-grownups-content{border:1px solid var(--border);background:var(--panel);border-radius:18px;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:12px;padding:24px;display:grid}.math-grownups-content>.math-hint,.math-grownups-content>.math-actions{grid-column:1/-1}.math-experiment--young .math-intro p{color:var(--text);font-size:20px}.math-experiment--young .math-readout p{font-size:18px}.pg-grownup-prompts{border-top:1px solid var(--border)}.pg-grownup-prompts>summary{color:var(--text-dim);cursor:pointer;padding:16px 24px;font-size:13px}@media (max-width:460px){.math-grownups-content{grid-template-columns:1fr}}
.systems-scene{width:100%;color:var(--lesson-ink,#30362e);margin:0}.systems-scene figcaption{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.systems-scene figcaption strong{letter-spacing:-.4px;font-size:23px;font-weight:650;line-height:1.2}.systems-scene figcaption span{color:var(--lesson-muted,#626c60);font-size:16px;line-height:1.4}.systems-scene svg{width:100%;display:block;overflow:visible}.systems-scene svg text{fill:#30362e;font-family:inherit}.systems-label{font-size:17px;font-weight:600}.systems-small{font-size:15px}.systems-value{fill:#285e56;font-size:21px;font-weight:650}.systems-scene .systems-warning{fill:#8d5d22;font-weight:650}.systems-footnote{color:var(--lesson-muted,#626c60);margin:8px 0 0;font-size:14px;line-height:1.45}.systems-limiter{color:#725123;background:#f4ecd9;border-radius:8px;align-items:baseline;gap:12px;margin:8px 0;padding:10px 14px;font-size:16px;display:flex}.systems-limiter strong{font-size:20px}.systems-map-key{flex-wrap:wrap;gap:8px 16px;font-size:13px;display:flex}.systems-map-key span{align-items:center;gap:6px;display:flex}.systems-map-key i{border-radius:3px;width:18px;height:18px;display:inline-block}.map-unburned{background:#d4dfbd}.map-treated{background:repeating-linear-gradient(135deg,#e6d7af,#e6d7af 3px,#795e32 3px 4px)}.map-low{background:radial-gradient(circle,#715522 2px,#e4a656 3px)}.map-high{background:#a14c35}.systems-trace{align-items:center;gap:16px;font-size:16px;display:flex}.systems-trace button{border:1px solid var(--lesson-border);background:var(--lesson-panel);min-height:50px;color:var(--lesson-ink);font:inherit;cursor:pointer;border-radius:8px;padding:8px 14px}.systems-trace button:focus-visible{outline:3px solid var(--recipe-accent);outline-offset:3px}.recipe-lesson:has(.systems-scene) .board-item:not([data-board-scene=true])>.board-content{padding:20px}.recipe-lesson:has(.systems-scene) .board-content>.recipe-layout{justify-content:flex-start}.recipe-lesson:has(.systems-scene) .recipe-status{align-items:flex-start;line-height:1.5}.recipe-lesson:has(.systems-scene) .recipe-status-dot{margin-top:8px}.recipe-lesson:has(.systems-scene) .number-field--compact{row-gap:10px}.recipe-lesson:has(.systems-scene) .catalog-form .catalog-help{padding-top:4px}.food-explorer-toolbar{align-items:center;gap:12px;margin:16px 0 12px;display:flex}.food-explorer button,.food-population-control button,.food-population-control select{color:#30362e;min-height:56px;font:inherit;cursor:pointer;background:#fffbef;border:1px solid #c7cebf;border-radius:8px;padding:10px 14px}.food-explorer button:disabled{opacity:.45;cursor:default}.food-explorer :is(button,a):focus-visible,.food-population-control :is(button,select):focus-visible{outline-offset:3px;outline:3px solid #285e56}.food-population-control{flex-direction:column;gap:12px;display:flex}.food-population-control>label{margin-bottom:-8px;font-size:15px;font-weight:600}.food-population-control select{width:100%;padding-right:8px}.food-population-control .catalog-form{gap:10px}.food-control-actions{gap:10px;display:flex}.food-control-actions button{flex:1;padding-inline:8px;font-size:14px}.food-population-control .food-reset{background:0 0;align-self:flex-start}.food-species-dialog{color:#30362e;background:#fffbef;border:1px solid #bdcaba;border-radius:16px;width:min(700px,100vw - 48px);max-height:calc(100vh - 64px);padding:28px;box-shadow:0 16px 70px #30362e30}.food-species-dialog::backdrop{background:#30362e66}.food-dialog-close{margin:0 0 24px auto;display:block}.food-species-heading{align-items:center;gap:16px;display:flex}.food-species-heading>span{font-size:36px}.food-species-heading>div{flex-direction:column;flex:1;gap:6px;display:flex}.food-species-heading strong{font-size:24px}.food-species-heading a{color:#285e56;font-size:14px}.food-species-detail>p{margin:24px 0;font-size:16px;line-height:1.6}.food-diet-links{flex-direction:column;align-items:stretch;gap:10px;display:flex}.recipe-lesson:has(.systems-scene):not(:has(.food-explorer)) .board-content>.recipe-layout:has(>.recipe-component-item[data-component-definition=displays\/StatusMessage]){grid-template-columns:120px minmax(0,1fr);align-items:start;display:grid}.recipe-lesson:has(.systems-scene) .board-content>.recipe-layout:has(>.recipe-component-item[data-component-definition=displays\/StatusMessage]) .recipe-status-dot{display:none}.food-diet-columns{grid-template-columns:1fr 1fr;gap:24px;display:grid}.food-diet-links h3{margin:0 0 8px;font-size:16px}.recipe-lesson:has(.systems-scene) .number-field--compact .experiment-error{max-width:none}.recipe-lesson:has(.systems-scene) .catalog-form:has(.number-field--compact .experiment-error)>.catalog-help{display:none}.food-path{grid-template-columns:1fr 28px 1fr 28px 1fr;align-items:start;gap:10px;margin-top:28px;display:grid}.food-path section{min-width:0}.food-path h3{margin:0 0 14px;font-size:16px}.food-path .food-path-card{text-align:center;background:#f8f4e8;flex-direction:column;align-items:center;gap:16px;width:100%;min-height:218px;padding:20px 12px;display:flex}.food-path .food-path-card.is-selected{background:#e1ece3;border:2px solid #39776d}.food-path-animal{font-size:56px;line-height:1.1}.food-path-card strong{font-size:20px}.food-path-card>span:not(.food-path-animal){font-size:14px}.food-path-card small{color:#285e56;font-size:13px}.food-path-arrow{color:#39776d;align-self:start;margin-top:134px;font-size:28px}.food-path section>p{margin:18px 0 0;font-size:15px;line-height:1.5}.food-path label{flex-direction:column;gap:8px;margin-top:18px;font-size:14px;display:flex}.food-path select{width:100%;font:inherit;background:#fffbef;border:1px solid #c7cebf;border-radius:8px;min-height:56px;padding:8px}.food-path-empty{border:1px dashed #c7cebf;border-radius:8px;align-items:center;min-height:218px;padding:24px;font-size:15px;line-height:1.6;display:flex}.food-path-sentence{background:#f2ead8;border-radius:8px;margin:24px 0 12px;padding:16px 20px;font-size:17px;line-height:1.5}.food-directory h2{margin-top:0}.food-directory>label{flex-direction:column;gap:8px;display:flex}.food-directory input{min-height:48px;font:inherit;border:1px solid #c7cebf;border-radius:8px;padding:12px}.food-directory-list{grid-template-columns:1fr 1fr;gap:12px;margin-top:24px;display:grid}.food-directory-list button{text-align:left;grid-template-columns:36px 1fr;gap:6px 12px;display:grid}.food-directory-list button>span:first-child{grid-row:span 2;font-size:28px}.food-directory-list button>span:last-child{font-size:13px}.factory-station{cursor:pointer}.factory-station:focus-visible{outline:none}.factory-station:focus-visible rect:first-child{stroke:#285e56;stroke-width:4px}.factory-warning{fill:#8d5d22;font-size:13px;font-weight:650}.fire-edit-toolbar{align-items:center;gap:12px;margin-top:12px;display:flex}.fire-edit-toolbar button{color:#30362e;min-height:48px;font:inherit;cursor:pointer;background:#fffbef;border:1px solid #c7cebf;border-radius:8px;padding:8px 12px}.fire-edit-toolbar span{color:#626c60;font-size:13px}.fire-edit-toolbar button:focus-visible{outline-offset:2px;outline:3px solid #285e56}.fire-tree{cursor:pointer;outline:none}.fire-tree:hover .fire-cell,.fire-tree:focus-visible .fire-cell{stroke:#203e36;stroke-width:2px}.factory-operation{font-size:12px}.factory-floor-label{letter-spacing:1px;fill:#626c60;font-size:10px}.food-path{border:0;min-width:0;padding:0}.wildfire-scene>svg{height:300px}
.science-scene,.science-panel{color:var(--text,#30362e);box-sizing:border-box;min-width:0;font-family:inherit}.science-scene{background:#fffbef;border:1px solid #d5cdbb;border-radius:22px;flex-direction:column;height:100%;display:flex;overflow:hidden}.science-scene-heading{justify-content:space-between;align-items:center;gap:16px;padding:24px 32px 0;display:flex}.science-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:#6a7666;font-size:12px;font-weight:600}.science-stage{color:#285e56;font-size:15px;font-weight:600}.science-question{letter-spacing:-.035em;margin:12px 32px 0;font-size:28px;font-weight:600;line-height:1.25}.science-scene svg{box-sizing:border-box;fill:#30362e;flex:1;width:100%;min-height:0;padding:12px 20px 16px;display:block}.science-scene svg text{font-family:inherit}.science-svg-title{font-size:18px;font-weight:550}.science-scene svg [role=button]{cursor:pointer;outline:none}.science-scene svg [role=button]:focus-visible{filter:drop-shadow(0 0 3px #285e56);outline-offset:4px;outline:3px solid #285e56}.science-panel{background:0 0;border:0;height:100%;padding:18px 24px}.science-panel h2{letter-spacing:-.025em;margin:12px 0;font-size:28px;font-weight:600;line-height:1.2}.science-panel p{line-height:1.55}.science-panel button{font:inherit;color:#35463b;cursor:pointer;background:#fffbef;border:1px solid #c9c6b5;border-radius:12px;min-height:60px;padding:14px 22px;font-size:16px;font-weight:550;line-height:1.25}.science-panel button.science-primary{color:#fff;background:#285e56;border-color:#285e56}.science-panel button:hover{background:#edf0e4;border-color:#285e56}.science-panel button.science-primary:hover{background:#1f4b45}.science-panel button:disabled{opacity:.5;cursor:default}.science-panel :is(button,select):focus-visible{outline-offset:4px;outline:3px solid #285e56}.science-actions{flex-direction:column;justify-content:center;align-items:flex-end;gap:12px;padding:12px 0;display:flex}.science-action-line{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.science-action-hint{color:#68735f;margin:0;font-size:14px}.science-choice{flex-direction:column;gap:10px;font-size:14px;font-weight:550;display:flex}.science-choice select{appearance:auto;font:inherit;color:#30362e;background:#fffbef;border:1px solid #c9c6b4;border-radius:12px;width:100%;min-height:60px;padding:12px 16px;font-size:16px;font-weight:450}.science-choices{padding:8px 0}.science-story{flex-direction:column;justify-content:center;gap:14px;padding:12px 0;display:flex}.science-explanation{max-width:700px;margin:0;font-size:18px;line-height:1.5}.science-stage-progress{align-items:center;gap:8px;display:flex}.science-stage-progress span{background:#d8dece;border-radius:4px;width:24px;height:5px}.science-stage-progress span[data-complete=true]{background:#8fa899}.science-stage-progress span[data-current=true]{background:#285e56;width:42px}.science-layer-note{padding:32px 0}.science-layer-note>p{margin:24px 0;font-size:20px}.science-layer-note .science-subtle{color:#68735f;font-size:14px}.science-material{color:#3e624d;background:#e6eddf;border-radius:8px;padding:8px 12px;font-size:15px;display:inline-block}.science-immune-actions,.science-invasive-actions{align-items:flex-start}.science-invasive-actions .science-action-line{flex-direction:column;align-items:stretch;width:100%}.science-immune-story .science-explanation,.science-invasive-story .science-explanation{font-size:20px}.science-plates-story .science-explanation{font-size:16px}.recipe-component-item[data-component-definition^=appearance\/science-]>.recipe-scene-content{flex-direction:column;gap:0;height:100%;min-height:0;display:flex}.recipe-component-item[data-component-definition^=appearance\/science-]{height:100%;min-height:0}.recipe-component-item[data-component-definition^=appearance\/science-] .science-scene{flex:1;min-height:0}.board-item:has(.science-panel)>.board-content{background:0 0;padding:0}.board-item:has(.science-panel){box-shadow:none;background:0 0;border:0}@media (prefers-reduced-motion:reduce){.science-scene *{transition:none!important;animation:none!important}}@media (max-width:900px){.science-question{font-size:24px}}.science-scene-hint{color:#68735f;font-size:14px}.science-panel.science-investigation{background:#fffbef;border:1px solid #c9c6b5;border-radius:20px;width:min(920px,100vw - 48px);height:auto;max-height:calc(100dvh - 48px);padding:28px;bottom:auto;overflow:auto}.science-investigation::backdrop{background:#1e2c2373}.science-dialog-heading{justify-content:space-between;align-items:center;gap:24px;margin-bottom:16px;display:flex}.science-dialog-heading h2{margin:0}.science-condition{margin:24px 0}.science-condition>button{margin-top:16px}.science-investigation-actions{flex-wrap:wrap;gap:12px;margin:24px 0;display:flex}.science-investigation .science-subtle{color:#68735f;font-size:14px}.science-comparison-scenes{grid-template-columns:1fr 1fr;gap:20px;display:grid}.science-comparison-scenes .science-scene{height:340px}.science-comparison-scenes .science-question{font-size:20px}.science-comparison-scenes .science-scene-hint{display:none}.science-comparison-scenes ul{padding-left:20px;font-size:15px;line-height:1.5}.science-changed-conditions{font-size:14px}.science-changed-conditions dt{font-weight:600}.science-changed-conditions dd{margin:4px 0 16px}.science-choices{align-items:center;display:flex}.science-investigation-trigger{width:100%}@media (max-width:650px){.science-comparison-scenes{grid-template-columns:1fr}.science-panel.science-investigation{width:calc(100vw - 24px);padding:20px}}.science-error-toggle{cursor:pointer;align-items:center;gap:12px;min-height:60px;font-size:16px;font-weight:550;display:flex}.science-error-toggle input{appearance:none;cursor:pointer;background:#d8dece;border:1px solid #789879;border-radius:20px;flex-shrink:0;width:44px;height:26px;margin:0}.science-error-toggle input:before{content:"";background:#fffbef;border-radius:50%;width:18px;height:18px;margin:3px;display:block}.science-error-toggle input:checked{background:#285e56}.science-error-toggle input:checked:before{transform:translate(18px)}.science-error-toggle input:focus-visible{outline-offset:4px;outline:3px solid #285e56}.science-cell-actions .science-action-line{flex-wrap:nowrap}.science-cell-actions button{padding-inline:16px}
