:root{--text-primary:#102235;--text-secondary:#4b6073;--text-muted:#687c8e;--surface-app:#edf4f8;--surface-solid:#fff;--surface-glass:#ffffffc7;--surface-glass-dense:#ffffffeb;--border-glass:#ffffffdb;--glass-background:linear-gradient(145deg, #fffffcd6, #f6f9f4ad);--glass-border:#fffffff0;--glass-radius:18px;--glass-shadow:0 16px 42px #14313d30, inset 0 1px 0 #ffffffe6, inset 0 -1px 0 #ffffff47;--divider:#d8e3ea;--action:#246bfe;--action-hover:#1554d8;--focus:#0b5fff;--success:#16834a;--warning:#a85a00;--failure:#d92d20;--tension:#246bfe;--compression:#e76513;--member-neutral:#8195a5;--world-sky:#bdeaff;--world-grass:#78c96b;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--ease-drawer:cubic-bezier(.32, .72, 0, 1);--motion-press:.14s;--motion-hover:.15s;--motion-panel:.2s;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{background:var(--surface-app);min-height:100%;color:var(--text-primary);margin:0}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Segoe UI,sans-serif;font-size:15px;line-height:1.47;overflow:hidden}button,input,textarea,select{font:inherit}button,select,input,textarea{color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}button{transition:transform var(--motion-press) var(--ease-out), color var(--motion-hover) ease, background-color var(--motion-hover) ease, border-color var(--motion-hover) ease, opacity .12s ease}select,input,textarea{transition:color var(--motion-hover) ease, background-color var(--motion-hover) ease, border-color var(--motion-hover) ease, opacity .12s ease}button:not(:disabled):active:not(:focus-visible){transform:scale(.97)}@media (hover:hover) and (pointer:fine){.play-button:not(:disabled):hover{transform:translateY(-1px)}}.app-shell{background:radial-gradient(circle at 70% 15%,#f9fdff 0,#0000 38%),linear-gradient(145deg,#eaf3f8,#dbeaf2);min-width:1180px;height:100vh;min-height:700px;overflow:hidden}.glass-panel{background:var(--glass-background);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(26px)saturate(145%);backdrop-filter:blur(26px)saturate(145%);box-shadow:var(--glass-shadow);border-radius:var(--glass-radius)}.topbar{z-index:20;border-radius:17px;grid-template-columns:230px 1fr 104px;align-items:center;height:64px;margin:10px 14px 0;padding:0 12px 0 16px;display:grid;position:relative}.brand{align-items:center;gap:10px;display:flex}.brand-mark{color:#fff;background:linear-gradient(145deg,#377cfe,#1958d9);border-radius:11px;place-items:center;width:38px;height:38px;display:grid;box-shadow:0 8px 16px #246bfe40}.brand-mark svg{width:21px}.brand strong,.brand span{line-height:1.2;display:block}.brand strong{letter-spacing:-.02em;font-size:17px}.brand span{color:var(--text-muted);margin-top:2px;font-size:12px}.phase-progress{justify-content:center;gap:22px;margin:0;padding:0;list-style:none;display:flex}.phase-progress li{color:var(--text-muted);align-items:center;gap:7px;font-size:13px;font-weight:600;display:flex;position:relative}.phase-progress li:after{content:"";background:#cbd9e2;width:15px;height:1px;position:absolute;right:-19px}.phase-progress li:last-child:after{display:none}.phase-progress li>span{background:#ffffffa6;border:1px solid #c6d5df;border-radius:50%;place-items:center;width:24px;height:24px;font-size:12px;display:grid}.phase-progress li svg{width:14px}.phase-progress li.active{color:var(--text-primary)}.phase-progress li.active>span{color:#fff;background:var(--action);border-color:var(--action);box-shadow:0 4px 10px #246bfe40}.phase-progress li.complete{color:var(--success)}.phase-progress li.complete>span{color:#fff;background:var(--success);border-color:var(--success)}.icon-button{background:#ffffff9e;border:0;border-radius:12px;justify-content:center;align-items:center;gap:7px;min-width:44px;min-height:44px;font-size:13px;font-weight:600;display:inline-flex}.icon-button:hover{background:#fff}.icon-button svg{width:17px}.activity-live{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:fixed;overflow:hidden}.inspect-layout,.hypothesis-layout,.analyze-layout{grid-template-columns:minmax(0,1fr) 336px;gap:14px;height:calc(100vh - 74px);min-height:626px;padding:14px;display:grid}.world-stage{background:var(--world-sky);border-radius:24px;min-width:0;position:relative;overflow:hidden;box-shadow:0 14px 34px #2d5e7524}.world-stage.evidence-active:after{content:"";pointer-events:none;background:#ecf7fa14;position:absolute;inset:0}.bridge-world,.world-fallback{width:100%;height:100%;min-height:400px;position:relative;overflow:hidden}.bridge-world:before,.bridge-world--side:before{content:none}.bridge-world canvas{z-index:1;display:block;position:relative}.world-caption,.fallback-status{z-index:2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text-secondary);background:#ffffffd1;border:1px solid #ffffffe6;border-radius:10px;padding:8px 12px;font-size:12px;font-weight:600;position:absolute;bottom:16px;left:16px}.world-controls{z-index:3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd1;border:1px solid #ffffffe6;border-radius:12px;gap:4px;padding:4px;display:flex;position:absolute;top:16px;right:16px}.world-controls button{min-height:36px;color:var(--text-secondary);background:0 0;border:0;border-radius:8px;padding:0 10px;font-size:12px;font-weight:650}.world-controls button[aria-pressed=true]{color:#174fba;background:#e8f0ff}.world-controls button:hover{background:#fff}.world-controls svg{width:15px}.world-fallback{background:linear-gradient(#c5edff,#effbff);place-items:center;display:grid}.world-fallback .bridge-svg{width:94%}.world-loading{height:calc(100vh - 74px);color:var(--text-secondary);place-items:center;font-weight:600;display:grid}.welcome-panel,.task-panel,.evidence-panel,.editor-panel,.conclusion-panel{scrollbar-width:thin;scrollbar-color:#b7c9d3 transparent;align-self:stretch;padding:24px;overflow-y:auto}.welcome-panel{flex-direction:column;justify-content:center;display:flex}.challenge-icon,.panel-icon{color:#fff;background:linear-gradient(145deg,#377cfe,#1958d9);border-radius:14px;place-items:center;width:46px;height:46px;display:grid;box-shadow:0 9px 22px #246bfe38}.challenge-icon{border-radius:16px;width:54px;height:54px}.challenge-icon svg{width:28px}.welcome-panel h1,.task-panel h1,.canvas-heading h1,.compare-heading h1,.conclusion-bridge h1{letter-spacing:-.035em;margin:19px 0 10px;font-size:30px;line-height:1.18}.welcome-panel>p,.panel-intro,.editor-panel>p{color:var(--text-secondary);margin:0;font-size:15px;line-height:1.55}.mission-list{gap:12px;margin:27px 0;display:grid}.mission-list span{color:var(--text-secondary);align-items:center;gap:12px;font-weight:550;display:flex}.mission-list b{width:28px;height:28px;color:var(--action);background:#e9f1ff;border-radius:9px;place-items:center;display:grid}.model-note,.evidence-note{color:var(--text-muted);text-align:center;justify-content:center;align-items:center;gap:7px;margin:14px 0 0;font-size:12px;display:flex}.model-note svg,.evidence-note svg{width:15px}.primary-button,.secondary-button{border:0;border-radius:12px;justify-content:center;align-items:center;gap:9px;min-height:44px;padding:0 16px;font-size:14px;font-weight:650;display:inline-flex}.primary-button{color:#fff;background:var(--action);box-shadow:0 8px 17px #246bfe36}.primary-button:hover:not(:disabled){background:var(--action-hover);box-shadow:0 9px 19px #246bfe40}.primary-button svg,.secondary-button svg{width:17px}.secondary-button{color:var(--text-primary);border:1px solid var(--divider);background:#fff}.secondary-button:hover:not(:disabled){background:#f9fcfd;border-color:#9eb4c2}.full{width:100%}.task-panel{padding:19px 22px 22px}.task-panel .panel-icon{border-radius:12px;width:40px;height:40px}.task-panel h1{margin:12px 0 3px;font-size:24px}.task-panel .panel-intro{font-size:13px}.field-group{border:0;margin:15px 0 0;padding:0}.field-group>label,.field-group>legend{color:var(--text-primary);margin-bottom:7px;font-size:13px;font-weight:650;display:block}.field-group select,.field-group input:not([type=range]):not([type=checkbox]),.field-group textarea,.conclusion-panel textarea{background:#fff;border:1px solid #c9d8e1;border-radius:11px;width:100%;min-height:44px;padding:10px 12px;font-size:14px}.field-group textarea{resize:vertical;min-height:68px}.selection-hint{color:var(--text-muted);align-items:center;gap:5px;margin:-2px 0 7px;font-size:11px;display:flex}.selection-hint svg{width:13px}.segmented-field{grid-template-columns:1fr 1fr;gap:7px;display:grid}.segmented-field legend{grid-column:1/-1}.segment,.mode-choice{min-height:42px;color:var(--text-secondary);background:#ffffffbd;border:1px solid #cddae2;border-radius:10px;font-size:12px;font-weight:600}.segment.active,.mode-choice.active{color:#174fba;background:#edf4ff;border-color:#76a4ff;box-shadow:inset 0 0 0 1px #246bfe24}.mode-grid{grid-template-columns:1fr 1fr;gap:7px;display:grid}.mode-grid legend{grid-column:1/-1}.mode-choice{text-align:left;min-height:50px;padding:7px}.mode-choice span,.mode-choice small{display:block}.mode-choice small{color:var(--text-muted);margin-top:1px;font-size:10px;font-weight:500}.check-row{flex-wrap:wrap;gap:8px 14px;display:flex}.check-row legend{width:100%}.check-row label{color:var(--text-secondary);font-size:12px}.check-row input{accent-color:var(--action)}.confidence-row label{justify-content:space-between;display:flex}.confidence-row input{width:100%;accent-color:var(--action)}.form-note{color:var(--text-muted);text-align:center;margin:7px 0 0;font-size:11px}.bridge-svg{width:100%;height:auto;display:block;overflow:visible}.svg-hill.far{fill:#a9d885;opacity:.75}.svg-hill.near{fill:#78c96b}.svg-water{fill:url(#water-gradient)}.deck-guide{stroke:#10223529;stroke-width:3px;stroke-dasharray:7 7}.svg-member-group{cursor:pointer;outline:none}.svg-member-group:focus-visible line:first-of-type{stroke:var(--focus)}.svg-member-group.failed{filter:drop-shadow(0 0 5px #d92d2073)}.svg-node{fill:#fff;stroke:#668196;stroke-width:3px;cursor:pointer}.svg-node.locked{fill:#dbe5ea;cursor:default}.svg-node.selected{fill:var(--action);stroke:#fff;stroke-width:4px}.support{fill:#60798a}.failure-label{fill:var(--failure);paint-order:stroke;stroke:#fff;stroke-width:4px;font-size:14px;font-weight:750}.node-label{fill:var(--action);paint-order:stroke;stroke:#fff;stroke-width:4px;font-size:14px;font-weight:700}.build-layout{grid-template-columns:72px minmax(0,1fr) 336px;gap:14px;height:calc(100vh - 74px);padding:14px;display:grid}.tool-rail{color:var(--text-secondary);flex-direction:column;align-items:center;gap:8px;padding:14px 8px;font-size:12px;font-weight:650;display:flex}.tool-brand{color:#fff;background:var(--action);border-radius:12px;place-items:center;width:44px;height:44px;display:grid}.tool-brand svg{width:20px}.workspace-card{background:#ffffffe8;border:1px solid #ffffffe6;border-radius:24px;box-shadow:0 14px 34px #2d5e751f}.build-canvas{flex-direction:column;min-width:0;padding:18px 22px 10px;display:flex;overflow:hidden}.canvas-heading,.compare-heading{justify-content:space-between;align-items:flex-start;gap:22px;display:flex}.eyebrow{color:var(--action);letter-spacing:.05em;text-transform:uppercase;font-size:12px;font-weight:750}.canvas-heading h1,.compare-heading h1,.conclusion-bridge h1{margin:3px 0 0;font-size:25px}.budget{text-align:right;background:#edf8f1;border:1px solid #caead7;border-radius:12px;padding:8px 13px}.budget.over{background:#fff0ee;border-color:#ffc7c1}.budget span,.budget small,.budget strong{line-height:1.2;display:block}.budget span,.budget small{color:var(--text-muted);font-size:10px}.budget strong{margin:2px 0;font-size:16px}.build-canvas .bridge-svg{flex:1;min-height:0}.status-line{color:var(--text-secondary);background:#f4f8fa;border-radius:10px;margin:0 -4px;padding:8px 12px;font-size:12px}.editor-panel{padding:20px}.editor-panel h2,.conclusion-panel h2{margin:0 0 4px;font-size:18px}.editor-section{border-top:1px solid var(--divider);padding:14px 0}.editor-section:first-of-type{margin-top:14px}.editor-section>label{color:var(--text-secondary);align-items:center;gap:6px;margin-bottom:7px;font-size:12px;font-weight:650;display:flex}.editor-section>label svg{width:14px}.editor-label{color:var(--text-secondary);margin-bottom:7px;font-size:12px;font-weight:650}.editor-label.icon-label{align-items:center;gap:6px;display:flex}.editor-label.icon-label svg{width:14px}.editor-section>strong{margin-bottom:9px;font-size:15px;display:block}.section-buttons{grid-template-columns:repeat(3,1fr);gap:5px;margin-bottom:8px;display:grid}.section-button{background:#fff;border:1px solid #ccd9e1;border-radius:9px;min-height:49px;padding:5px;font-size:11px}.section-button span,.section-button small{display:block}.section-button small{color:var(--text-muted)}.section-button.active{color:#174fba;background:#edf4ff;border-color:#76a4ff}.danger-button{width:100%;color:var(--failure)}.connect-row{grid-template-columns:1fr auto 1fr;align-items:center;gap:6px;margin-bottom:7px;display:grid}.connect-row select{background:#fff;border:1px solid #c9d8e1;border-radius:9px;min-width:0;height:40px;padding:0 7px}.editor-section .secondary-button{width:100%}.nudge-grid{grid-template-columns:repeat(3,40px);grid-template-areas:".up.""left down right";gap:5px;width:132px;margin:auto;display:grid}.nudge-grid button{background:#fff;border:1px solid #c9d8e1;border-radius:9px;width:40px;height:40px}.nudge-grid button:first-child{grid-area:up}.nudge-grid button:nth-child(2){grid-area:left}.nudge-grid button:nth-child(3){grid-area:down}.nudge-grid button:nth-child(4){grid-area:right}.nudge-grid svg{width:16px}.test-layout{height:calc(100vh - 74px);padding:14px;position:relative}.test-layout .world-stage{width:100%;height:100%}.test-status{z-index:4;min-width:205px;padding:12px 15px;position:absolute;top:30px;left:30px}.test-status span,.test-status strong,.test-status small{display:block}.test-status span,.test-status small{color:var(--text-muted);font-size:11px}.test-status strong{margin:2px 0;font-size:17px}.replay-strip{z-index:5;grid-template-columns:44px 1fr 110px;align-items:center;gap:12px;width:min(720px,100% - 80px);min-height:66px;padding:11px 15px;display:grid;position:absolute;bottom:30px;left:50%;transform:translate(-50%)}.play-button{color:#fff;background:var(--action);border:0;border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.play-button svg{width:18px}.replay-strip input,.compare-scrubber input{width:100%;accent-color:var(--action)}.replay-strip>span{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:12px}.replay-strip.with-continue{grid-template-columns:44px 1fr 90px 138px}.reduced-continue{min-height:40px;padding-inline:12px}.invalid-result{text-align:center;place-content:center;justify-items:center;height:calc(100vh - 100px);margin:14px;padding:30px;display:grid}.invalid-result>svg{width:46px;height:46px;color:var(--failure)}.invalid-result h1{margin:15px 0 5px}.invalid-result p{max-width:520px;color:var(--text-secondary)}.evidence-panel{padding:18px}.evidence-header{align-items:flex-start;gap:11px;display:flex}.panel-icon.danger{width:42px;height:42px;color:var(--failure);box-shadow:none;background:#fff0ee}.evidence-header h2{margin:1px 0 0;font-size:18px;line-height:1.25}.legend{color:var(--text-secondary);background:#ffffffb8;border-radius:10px;gap:13px;margin:14px 0 11px;padding:9px 10px;font-size:11px;display:flex}.legend span{align-items:center;gap:5px;display:flex}.legend-line{border-radius:3px;width:18px;height:5px}.legend-line.tension{background:repeating-linear-gradient(90deg,var(--tension),var(--tension) 5px,#a8c5ff 5px,#a8c5ff 7px)}.legend-line.compression{background:repeating-linear-gradient(135deg,var(--compression),var(--compression) 4px,#ffd2b7 4px,#ffd2b7 7px)}.selected-evidence{grid-template-columns:repeat(3,1fr);gap:5px;display:grid}.selected-evidence>div{background:#fff;border:1px solid #e0e8ed;border-radius:9px;padding:9px 8px}.selected-evidence span,.selected-evidence strong{display:block}.selected-evidence span{color:var(--text-muted);font-size:9px}.selected-evidence strong{margin-top:2px;font-size:12px}.critical-list,.chart-wrap,.mentor-card{background:#ffffffeb;border:1px solid #e0e8ed;border-radius:12px;margin-top:11px;padding:11px}.section-title{align-items:center;gap:7px;font-size:12px;display:flex}.section-title svg{width:15px;color:var(--action)}.critical-row{border-bottom:1px solid #eef2f4;grid-template-columns:23px 1fr auto;align-items:center;gap:7px;padding:7px 0;display:grid}.critical-row:last-child{border:0;padding-bottom:0}.rank{width:22px;height:22px;color:var(--text-muted);background:#eef4f7;border-radius:7px;place-items:center;font-size:10px;font-weight:700;display:grid}.critical-row>span:not(.rank),.critical-row>span small{display:block}.critical-row>span{font-size:11px;font-weight:650}.critical-row small{color:var(--text-muted);font-size:9px;font-weight:500}.critical-row>strong{font-variant-numeric:tabular-nums;font-size:12px}.chart-heading{justify-content:space-between;font-size:11px;display:flex}.chart-heading span{color:var(--action);font-weight:700}.chart-wrap svg{width:100%;margin-top:3px;display:block;overflow:visible}.chart-line{fill:none;stroke:var(--action);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.chart-threshold{stroke:var(--failure);stroke-width:1.5px;stroke-dasharray:5 4}.chart-marker{stroke:#667f90;stroke-width:1px}.chart-dot{fill:#fff;stroke:var(--action);stroke-width:3px}.chart-label{fill:var(--text-muted);font-size:10px}.chart-label.failure{fill:var(--failure);font-weight:650}.chart-empty{color:var(--text-muted);padding:16px;font-size:12px}.mentor-card{background:#f5f8ff;border-color:#c6d9ff}.mentor-heading{color:#174fba;align-items:center;gap:6px;font-size:11px;display:flex}.mentor-heading svg{width:16px}.mentor-heading span{background:#e3edff;border-radius:999px;margin-left:auto;padding:3px 7px;font-size:9px}.mentor-card p{color:var(--text-secondary);margin:8px 0 0;font-size:12px;line-height:1.45}.mentor-loading{animation:1.2s ease-in-out infinite alternate fadePulse}.fallback-note{color:var(--text-muted);align-items:center;gap:4px;margin-top:7px;font-size:9px;display:flex}.fallback-note svg{width:12px}.mentor-hint-button{color:#174fba;background:#fff;border:1px solid #bcd1fb;border-radius:9px;width:100%;min-height:36px;margin-top:9px;font-size:11px;font-weight:650}.mentor-hint-button:hover:not(:disabled){background:#edf4ff}.evidence-panel .primary-button{margin-top:11px}.reflection-field{margin-top:10px}.reflection-field label{margin-bottom:5px;font-size:11px;font-weight:650;display:block}.reflection-field textarea{resize:vertical;background:#fff;border:1px solid #c9d8e1;border-radius:10px;width:100%;min-height:58px;padding:9px 10px;font-size:12px;line-height:1.4}.evidence-scrubber{grid-template-columns:1fr auto;align-items:center;gap:4px 9px;margin:10px 0 0;display:grid}.evidence-scrubber label{color:var(--text-secondary);font-size:11px;font-weight:650}.evidence-scrubber input{width:100%;accent-color:var(--action);grid-column:1/-1}.evidence-scrubber span{color:var(--text-muted);font-variant-numeric:tabular-nums;grid-area:1/2;font-size:10px}.compare-workspace{width:100%;height:100vh;position:relative;overflow:hidden}.comparison-world-stage{box-shadow:none;border-radius:0;position:absolute;inset:0}.comparison-world-stage .world-controls{display:none}.compare-heading{z-index:8;width:390px;padding:16px 18px;display:block;position:absolute;top:103px;left:20px}.compare-heading h1{max-width:340px;margin:4px 0 5px;font-size:24px}.compare-heading p{color:var(--text-secondary);margin:0;font-size:12px}.compare-continue{z-index:9;min-width:176px;position:absolute;top:104px;right:20px}.compare-pip{z-index:8;transform-origin:0 100%;width:340px;padding:10px;position:absolute;bottom:20px;left:20px;overflow:hidden}.compare-pip header{justify-content:space-between;align-items:center;gap:8px;min-height:32px;padding:0 2px 8px 5px;display:flex}.compare-pip header>span{min-width:0;color:var(--text-primary);white-space:nowrap;align-items:center;gap:6px;font-size:11px;font-weight:720;display:flex}.compare-pip header>span svg{width:14px;height:14px;color:var(--action)}.compare-pip-expand{min-height:44px;color:var(--text-secondary);background:#ffffffa8;border:1px solid #7e97a640;border-radius:10px;align-items:center;gap:5px;padding:0 10px;font-size:10px;font-weight:680;display:inline-flex}.compare-pip-expand svg{width:12px;height:12px}.compare-pip-picture{background:#aee8f7;border:1px solid #ffffffd1;border-radius:13px;height:154px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #1b445214}.compare-pip-picture .bridge-world{height:100%;min-height:0}.compare-pip-picture .world-controls,.compare-pip-picture .world-caption{display:none}.compare-pip-picture>span{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#102235b8;border-radius:8px;padding:4px 8px;font-size:10px;font-weight:720;position:absolute;bottom:9px;left:9px}.compare-deltas{z-index:8;width:316px;padding:14px 15px;position:absolute;bottom:20px;right:20px}.compare-deltas-heading{border-bottom:1px solid #738e9e33;justify-content:space-between;align-items:center;gap:10px;padding-bottom:10px;display:flex}.compare-deltas-heading span{font-size:12px;font-weight:740}.compare-deltas-heading strong{color:var(--action);font-size:10px}.compare-deltas dl{margin:0}.compare-deltas dl>div{border-bottom:1px solid #738e9e24;grid-template-columns:1fr auto;align-items:center;min-height:42px;display:grid}.compare-deltas dl>div:last-child{border-bottom:0}.compare-deltas dt{color:var(--text-muted);font-size:10px}.compare-deltas dd{font-variant-numeric:tabular-nums;align-items:center;gap:7px;margin:0;font-size:11px;display:flex}.compare-deltas dd span{color:var(--text-muted);-webkit-text-decoration:line-through #687c8e73;text-decoration:line-through #687c8e73}.compare-deltas dd svg{width:12px;color:var(--action)}.compare-deltas dd strong{text-align:right;min-width:54px}.compare-scrubber{z-index:9;border-radius:17px;grid-template-columns:130px 1fr 42px;align-items:center;gap:12px;width:min(490px,100vw - 724px);min-height:58px;padding:9px 15px;font-size:11px;display:grid;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.compare-scrubber strong{text-align:right;font-variant-numeric:tabular-nums}.conclusion-layout{grid-template-columns:minmax(0,1fr) 390px;gap:14px;height:calc(100vh - 74px);padding:14px;display:grid}.conclusion-bridge{padding:21px;overflow:hidden}.conclusion-bridge .bridge-svg{height:calc(100% - 76px)}.conclusion-panel{padding:20px}.conclusion-panel label{color:var(--text-primary);margin-top:11px;font-size:12px;font-weight:650;display:block}.conclusion-panel textarea{resize:vertical;min-height:58px;margin-top:5px;font-weight:450;display:block}.conclusion-panel .primary-button{margin-top:13px}.conclusion-panel .secondary-button{margin-top:7px}.assessment-card{background:#eef9f2;border:1px solid #b9dfc7;border-radius:12px;margin-top:11px;padding:12px}.assessment-card>strong{color:var(--success)}.assessment-card p{color:var(--text-secondary);margin:5px 0 0;font-size:11px}.assessment-scores{grid-template-columns:1fr 1fr;gap:5px;margin-top:9px;display:grid}.assessment-scores span{color:var(--text-secondary);text-transform:capitalize;background:#ffffffb8;border-radius:7px;justify-content:space-between;gap:8px;padding:5px 7px;font-size:9px;display:flex}.assessment-scores b{color:var(--text-primary);font-variant-numeric:tabular-nums}.app-shell{isolation:isolate;background:#9eddf4;position:relative}.floating-header{z-index:30;pointer-events:none;height:94px;position:absolute;inset:0 0 auto}.floating-header>*{pointer-events:auto}.brand-island{border-radius:20px;width:288px;min-height:70px;padding:12px 15px;position:absolute;top:15px;left:16px}.brand-island .brand-mark{border-radius:13px;width:45px;height:45px;box-shadow:0 8px 20px #1c60f045}.brand-island .brand-mark svg{width:24px;height:24px}.brand-island.brand{gap:12px}.brand-island.brand strong{letter-spacing:-.025em;font-size:18px}.brand-island.brand span{margin-top:2px;font-size:12.5px}.progress-island{border-radius:20px;justify-content:center;align-items:center;width:min(590px,100vw - 530px);min-height:70px;padding:11px 22px;display:flex;position:absolute;top:15px;left:calc(50% + 52px);transform:translate(-50%)}.reset-button{border-radius:15px;min-width:104px;min-height:50px;padding:0 15px;position:absolute;top:15px;right:16px}.phase-header--redesign .brand-island,.phase-header--redesign .progress-island{display:none}.phase-header--redesign .reset-button{top:16px}.phase-progress{justify-content:space-between;gap:0;width:100%}.phase-progress li{letter-spacing:-.01em;flex:none;gap:8px;font-size:12.5px}.phase-progress li:after{background:#4c69795c;width:20px;right:-26px}.phase-progress li>span{background:#ffffff8f;border-color:#6f8b9957;width:28px;height:28px;font-size:12px}.phase-progress li.active>span{box-shadow:0 5px 13px #246bfe47}.immersive-layout{width:100%;height:100vh;position:absolute;inset:0;overflow:hidden}.immersive-layout>.world-stage,.test-layout>.world-stage{width:100%;min-width:0;height:100%;box-shadow:none;border-radius:0;position:absolute;inset:0}.immersive-layout .bridge-world,.immersive-layout .world-fallback,.test-layout .bridge-world,.test-layout .world-fallback{width:100%;height:100%;min-height:0}.world-stage.evidence-active:after{background:linear-gradient(90deg,#041f3214,#0000 30%,#ecf7fa0a)}.inspect-layout,.hypothesis-layout,.analyze-layout{min-height:0;padding:0;display:block}.inspect-layout .welcome-panel,.hypothesis-layout .task-panel,.analyze-layout .evidence-panel,.conclusion-layout .conclusion-panel{z-index:10;border-radius:22px;width:356px;max-height:calc(100vh - 112px);position:absolute}.inspect-layout .welcome-panel{background:linear-gradient(155deg,#fffdf4f0,#faf8eede);border-radius:23px;justify-content:flex-start;width:312px;max-height:calc(100vh - 142px);padding:22px 23px 21px;bottom:40px;left:28px;box-shadow:0 22px 54px #15303940,inset 0 1px #fffffff5}.inspect-layout .welcome-panel .challenge-icon{border-radius:14px;width:46px;height:46px;margin-bottom:14px;position:static}.inspect-layout .welcome-panel .challenge-icon svg{width:24px;height:24px}.inspect-layout .welcome-panel>.eyebrow{display:none}.inspect-layout .welcome-panel h1{letter-spacing:-.035em;max-width:none;margin:0 0 9px;font-size:24px;line-height:1.12}.inspect-layout .welcome-panel>p{font-size:13px;line-height:1.46}.inspect-layout .mission-list{gap:8px;margin:14px 0 15px}.inspect-layout .mission-list span{gap:9px;font-size:12.5px;font-weight:560}.inspect-layout .mission-list b{background:#ffffffad;border-radius:50%;flex:0 0 25px;width:25px;height:25px;font-size:13px}.inspect-layout .welcome-panel .primary-button{border-radius:13px;min-height:47px;font-size:13.5px;box-shadow:0 10px 22px #246bfe42,inset 0 1px #ffffff3d}.inspect-status-strip{z-index:12;color:#2e4658;white-space:nowrap;background:linear-gradient(145deg,#fffdf4e6,#f9f8eed1);border-radius:18px;justify-content:center;align-items:center;gap:16px;width:452px;min-height:48px;padding:0 18px;font-size:12.5px;font-weight:560;display:flex;position:absolute;bottom:18px;right:18px}.inspect-status-strip span{align-items:center;gap:8px;display:inline-flex}.inspect-status-strip svg{width:17px;height:17px}.inspect-status-strip i{background:#5269743d;width:1px;height:24px}.hypothesis-layout .task-panel,.analyze-layout .evidence-panel,.conclusion-layout .conclusion-panel{top:86px;bottom:18px;right:18px;overflow-y:auto}.hypothesis-layout .task-panel{padding:18px 20px 20px}.analyze-layout .evidence-panel{padding:16px}.hypothesis-layout .world-controls,.analyze-layout .world-controls,.conclusion-layout .world-controls{top:16px;right:394px}.phase-header--inspect .reset-button{border-left-color:#647f8b33;border-radius:0 15px 15px 0}.inspect-layout .world-controls{border-right:0;border-radius:15px 0 0 15px;gap:2px;min-height:50px;padding:4px 5px;top:15px;right:119px}.inspect-layout .world-controls button{min-height:40px;padding-inline:8px}.inspect-layout .world-caption{display:none}.hypothesis-layout .world-caption,.analyze-layout .world-caption,.conclusion-layout .world-caption{bottom:18px;left:18px}.test-layout{height:100vh;padding:0;position:absolute;inset:0}.test-status{border-radius:16px;top:88px;left:20px}.test-layout .world-controls{top:88px;right:18px}.test-layout .world-caption{bottom:108px;left:20px}.replay-strip{border-radius:20px;bottom:20px}.build-layout{height:100vh;padding:90px 16px 16px}.build-drafting-layout{background:#10252d;min-height:0;padding:0;display:block;position:relative;overflow:hidden}.build-drafting-stage{position:absolute;inset:0;overflow:hidden}.build-projected-stage .bridge-world{background:#aee4f5;width:100%;height:100%;min-height:0}.build-projected-stage .bridge-world--build:before{background:#aee4f5}.build-projected-stage .bridge-world--build canvas{cursor:grab}.build-projected-stage .bridge-world--build canvas:active{cursor:grabbing}.build-camera-reset{z-index:6;min-height:40px;color:var(--text-secondary);-webkit-backdrop-filter:blur(20px)saturate(140%);backdrop-filter:blur(20px)saturate(140%);background:#fffdf4e0;border:1px solid #fffffff5;border-radius:13px;align-items:center;gap:7px;padding:0 13px;font-size:12px;font-weight:700;display:inline-flex;position:absolute;bottom:20px;left:96px;box-shadow:0 12px 30px #08222b30}.build-camera-reset svg{width:15px}.build-svg-fallback{background:#10252d;position:absolute;inset:0}.build-svg-fallback .bridge-svg{width:100%;height:100%}.bridge-svg--drafting{object-fit:cover;background:#10252d;width:100%;height:100%;display:block}.bridge-svg--drafting .deck-guide{stroke:#ffffff40}.bridge-svg--drafting .support{fill:#dde9ea}.bridge-svg--drafting .svg-node{stroke:#ffffffe6}.drafting-scale text{fill:#ebf7f8bd;font-size:12px;font-weight:650}.drafting-scale path{fill:none;stroke:#ebf7f894;stroke-width:2px}.build-drafting-layout .glass-panel{background:linear-gradient(145deg,#fffdf4ed,#faf8eed6);border-color:#fffffff5;box-shadow:0 18px 46px #08222b3d,inset 0 1px #fffffffa}.build-brief-island{z-index:6;width:292px;min-height:68px;padding:12px 16px;position:absolute;top:18px;left:96px}.build-brief-island h1{letter-spacing:-.03em;margin:3px 0 0;font-size:19px}.build-budget-island{z-index:7;background:linear-gradient(145deg,#fffdecf7,#fff7d3e6);border-color:#fffffffa;width:430px;min-height:72px;padding:12px 20px;position:absolute;top:16px;left:50%;transform:translate(-50%)}.build-budget-copy{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.build-budget-copy span{color:var(--text-secondary);font-size:12px;font-weight:750}.build-budget-copy strong{font-variant-numeric:tabular-nums;font-size:20px}.build-budget-copy small{color:var(--text-muted);font-size:11px}.build-budget-island progress{width:100%;height:8px;accent-color:var(--success);border:0;border-radius:999px;margin-top:7px;display:block;overflow:hidden}.build-budget-island.over{background:#ffebe8e0;border-color:#ffbfb7e6}.build-budget-island.over progress{accent-color:var(--failure)}.build-status-island{z-index:6;text-align:center;width:min(470px,42vw);margin:0;padding:10px 14px;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.build-projection-badge{z-index:7;color:var(--text-secondary);padding:7px 12px;font-size:10px;font-weight:720;position:absolute;top:99px;left:50%;transform:translate(-50%)}.build-tool-island{z-index:8;width:72px;padding:10px 8px;position:absolute;top:50%;left:18px;transform:translateY(-50%)}.build-tool-island small{color:var(--text-muted);font-size:9px}.builder-tools{gap:7px;width:100%;margin-top:7px;display:grid}.builder-tools button{width:100%;min-height:54px;color:var(--text-secondary);background:#ffffff6b;border:1px solid #0000;border-radius:12px;place-items:center;gap:2px;padding:6px 2px;font-size:9px;font-weight:750;display:grid}.builder-tools button svg{width:18px;height:18px}.builder-tools button.active{color:#fff;background:var(--action);border-color:#246bfead;box-shadow:0 7px 16px #246bfe40,inset 0 1px #ffffff3d}.build-editor-island{z-index:8;flex-direction:column;width:304px;max-height:calc(100vh - 126px);padding:17px;display:flex;position:absolute;top:auto;bottom:24px;right:18px;overflow-y:auto}.build-editor-island.is-collapsed{width:304px;overflow:hidden}.editor-empty-state{justify-items:start;gap:4px;display:grid}.editor-empty-state>svg{width:34px;height:34px;color:var(--action);background:#246bfe1f;border-radius:11px;margin-bottom:4px;padding:7px}.editor-empty-state h2{letter-spacing:-.025em;margin:2px 0 1px;font-size:18px}.editor-empty-state p{color:var(--text-secondary);margin:0;font-size:12px;line-height:1.45}.part-picker{width:100%;color:var(--text-secondary);gap:5px;margin-top:8px;font-size:11px;font-weight:700;display:grid}.part-picker select{width:100%;min-height:42px;color:var(--text-primary);font:inherit;background:#ffffffd1;border:1px solid #57758333;border-radius:11px;padding:0 11px}.build-drafting-layout .editor-panel>p,.context-editor>p{color:var(--text-secondary);margin:5px 0 0;font-size:12px;line-height:1.46}.build-drafting-layout .editor-section{padding:11px 0}.build-budget-meta{color:var(--text-muted);justify-content:space-between;margin-top:6px;font-size:10px;font-weight:700;display:flex}.budget-negative{color:var(--failure)}.editor-heading-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.editor-heading-row h2{margin-top:2px}.design-change-count{background:var(--action);color:#fff;border-radius:10px;place-items:center;min-width:30px;height:30px;font-weight:800;display:grid}.context-editor{flex:none}.tool-state-icon{width:34px;height:34px;color:var(--action);background:#246bfe1c;border-radius:11px;flex:0 0 34px;place-items:center;display:grid}.tool-state-icon svg{width:17px}.part-facts{grid-template-columns:1.35fr .85fr;gap:7px;margin-top:12px;display:grid}.part-facts span{background:#ffffff94;border:1px solid #5e798621;border-radius:11px;min-width:0;padding:9px 10px}.part-facts small,.part-facts strong{display:block}.part-facts small{color:var(--text-muted);text-transform:uppercase;letter-spacing:.045em;font-size:9px;font-weight:700}.part-facts strong{text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:12px;overflow:hidden}.member-material-section{margin-top:10px}.section-buttons{gap:7px}.section-button{min-height:72px;padding:8px 5px 6px;position:relative;overflow:hidden}.section-button>svg{width:13px;height:13px;color:var(--action);position:absolute;top:5px;right:5px}.section-swatch{background:#269e9c;border-radius:99px;width:30px;height:4px;margin:0 auto 7px;display:block;box-shadow:0 2px 5px #175c5e33}.section-swatch-1{background:#55c7bd;height:3px}.section-swatch-2{background:#269e9c;height:5px}.section-swatch-3{background:#246d79;height:7px}.node-state-dot{border-radius:50%;width:13px;height:13px;margin-top:7px;box-shadow:0 0 0 5px #246bfe14}.node-state-dot.movable{background:var(--action)}.node-state-dot.fixed{background:#8195a5;box-shadow:0 0 0 5px #64788717}.joint-move-section{margin-top:10px}.nudge-grid button{position:relative}.microcopy{color:var(--text-muted);text-align:center;margin:10px 0 0;font-size:10px;line-height:1.45}.connection-progress{grid-template-columns:1fr 42px 1fr;align-items:center;margin:22px 5px 18px;display:grid}.connection-progress>span{min-width:58px;color:var(--text-muted);justify-items:center;gap:5px;font-size:12px;font-weight:800;display:grid}.connection-progress>span svg{width:14px}.connection-progress>span small{font-size:10px;font-weight:700}.connection-progress>span.active,.connection-progress>span.complete{color:var(--action)}.connection-progress>i{background:#536f7f38;border-radius:99px;height:2px}.connection-progress:has(.complete)>i{background:linear-gradient(90deg, var(--action), #246bfe2e)}.connection-keyboard-picker{margin:0 0 9px}.builder-tip{color:var(--text-secondary);background:#ebf3ffb8;border:1px solid #4080f224;border-radius:12px;gap:3px;margin-top:13px;padding:11px 12px;font-size:10px;line-height:1.45;display:grid}.builder-tip strong{color:#174fba;font-size:10px}.fixed-joint-note{margin-top:16px}.builder-test-dock{background:linear-gradient(#0000,#faf8eec7 18%);border-top:1px solid #647c8824;margin-top:14px;padding-top:12px}.build-test-button{box-shadow:0 10px 24px #1476ff47}.test-readiness{min-height:18px;color:var(--text-muted);text-align:center;justify-content:center;align-items:center;gap:4px;margin:6px 0 0;font-size:10px;display:flex}.test-readiness svg{width:12px}.test-readiness.ready{color:var(--success);font-weight:700}.bridge-html-label{z-index:20!important}.bridge-node-hotspot-wrap{z-index:18!important}.bridge-member-hotspot-wrap{z-index:17!important}.bridge-node-hotspot{background:0 0;border:0;border-radius:50%;place-items:center;width:34px;height:34px;padding:0;display:grid}.bridge-node-hotspot span{opacity:0;width:9px;height:9px;transition:opacity var(--motion-hover) ease, transform var(--motion-hover) var(--ease-out);background:#246bfe1f;border:2px solid #ffffffe6;border-radius:50%;transform:scale(.82)}.bridge-node-hotspot.is-attention{width:48px;height:48px}.bridge-node-hotspot.is-attention span{opacity:1;background:#f3bf45;width:15px;height:15px;animation:1.55s ease-in-out infinite lesson-target-pulse;transform:scale(1);box-shadow:0 0 0 7px #ffffffe0,0 0 0 13px #f3bf4557,0 6px 18px #4a310042}.bridge-node-hotspot:focus-visible span,.bridge-node-hotspot.is-selected span{opacity:1;transform:scale(1);box-shadow:0 0 0 7px #246bfe26}.bridge-node-hotspot.is-connection-start span{opacity:1;background:#f2ad20;transform:scale(1);box-shadow:0 0 0 7px #f2ad2033}.bridge-node-hotspot.is-attention:focus-visible span,.bridge-node-hotspot.is-attention.is-selected span,.bridge-node-hotspot.is-attention.is-connection-start span{animation:none}.bridge-member-hotspot{background:0 0;border:0;border-radius:50%;place-items:center;width:28px;height:28px;padding:0;display:grid}.bridge-member-hotspot span{opacity:0;width:7px;height:7px;transition:opacity var(--motion-hover) ease, transform var(--motion-hover) var(--ease-out);background:#246bfe29;border:2px solid #ffffffeb;border-radius:50%;transform:scale(.82)}@keyframes lesson-target-pulse{0%,to{transform:scale(.94);box-shadow:0 0 0 7px #ffffffe0,0 0 0 12px #f3bf4547,0 6px 18px #4a310038}50%{transform:scale(1.08);box-shadow:0 0 0 7px #fffffff5,0 0 0 17px #f3bf451f,0 8px 22px #4a31004d}}.bridge-member-hotspot:focus-visible span,.bridge-member-hotspot.is-selected span{opacity:1;transform:scale(1);box-shadow:0 0 0 6px #246bfe24}.bridge-part-label{z-index:20;pointer-events:none;min-width:178px;color:var(--text-primary);-webkit-backdrop-filter:blur(18px)saturate(145%);backdrop-filter:blur(18px)saturate(145%);opacity:1;transform-origin:50% 100%;transition:opacity var(--motion-hover) var(--ease-out), transform var(--motion-hover) var(--ease-out);text-align:left;background:linear-gradient(145deg,#fffffcf2,#f9f9f1e0);border:1px solid #fffffffa;border-radius:12px;gap:1px;padding:8px 10px 9px;display:grid;position:relative;transform:translateY(-2px)scale(1);box-shadow:0 12px 30px #08222b38,inset 0 1px #fffffff0}.bridge-part-label:after{content:"";background:#fafaf3eb;border-bottom:1px solid #fffffff5;border-right:1px solid #fffffff5;width:10px;height:10px;position:absolute;bottom:-5px;left:calc(50% - 5px);transform:rotate(45deg)}.bridge-part-label span{color:var(--action);letter-spacing:.075em;text-transform:uppercase;font-size:8px;font-weight:800}.bridge-part-label strong{font-size:12px;line-height:1.2}.bridge-part-label small{color:var(--text-secondary);white-space:nowrap;font-size:9px}.bridge-part-label.is-selected{border-color:#4f84fa7a;box-shadow:0 12px 30px #08222b2e,0 0 0 2px #246bfe1f}@starting-style{.bridge-part-label{opacity:0;transform:translateY(3px)scale(.98)}}.build-editor-island>*,.builder-context-panel,.build-context-panel{opacity:1;transition:opacity var(--motion-panel) var(--ease-out), transform var(--motion-panel) var(--ease-out);transform:translateY(0)}@starting-style{.build-editor-island>*,.builder-context-panel,.build-context-panel{opacity:0;transform:translateY(6px)}}:is(.build-drafting-layout:has(:focus-visible) .build-editor-island>*,.build-drafting-layout:has(:focus-visible) .builder-context-panel,.build-drafting-layout:has(:focus-visible) .build-context-panel){transition-duration:0s;transform:none}.build-tool-button,.builder-tool-button,.context-tool-button{min-width:44px;min-height:44px;color:var(--text-secondary);background:#ffffffa8;border:1px solid #5f7b8833;border-radius:12px;place-items:center;display:inline-grid;box-shadow:inset 0 1px #fffc}.build-tool-button[aria-pressed=true],.builder-tool-button[aria-pressed=true],.context-tool-button[aria-pressed=true]{color:#fff;background:var(--action);border-color:#246bfead;box-shadow:0 7px 16px #246bfe40,inset 0 1px #ffffff3d}.build-part-label,.builder-part-label{pointer-events:none;min-width:132px;color:var(--text-primary);-webkit-backdrop-filter:blur(18px)saturate(140%);backdrop-filter:blur(18px)saturate(140%);opacity:1;transform-origin:50% 100%;transition:opacity var(--motion-hover) var(--ease-out), transform var(--motion-hover) var(--ease-out), color var(--motion-hover) ease, background-color var(--motion-hover) ease;background:#fffdf4e6;border:1px solid #fffffff2;border-radius:11px;padding:8px 10px;transform:translateY(0)scale(1);box-shadow:0 10px 26px #08222b2e}.build-part-label[data-entering=true],.builder-part-label[data-entering=true]{opacity:0;transform:translateY(4px)scale(.98)}@media (hover:hover) and (pointer:fine){.bridge-node-hotspot:hover span{opacity:1;transform:scale(1);box-shadow:0 0 0 7px #246bfe26}.bridge-member-hotspot:hover span{opacity:1;transform:scale(1);box-shadow:0 0 0 6px #246bfe24}.build-tool-button:not(:disabled):hover,.builder-tool-button:not(:disabled):hover,.context-tool-button:not(:disabled):hover,.section-button:not(:disabled):hover,.nudge-grid button:not(:disabled):hover,.build-camera-reset:not(:disabled):hover{background-color:#f7fbfff5;border-color:#246bfe6b}.build-tool-button:not(:disabled):active:not(:focus-visible),.builder-tool-button:not(:disabled):active:not(:focus-visible),.context-tool-button:not(:disabled):active:not(:focus-visible),.section-button:not(:disabled):active:not(:focus-visible),.nudge-grid button:not(:disabled):active:not(:focus-visible),.build-camera-reset:not(:disabled):active:not(:focus-visible){transform:scale(.97)}.svg-member-group{transform-box:fill-box;transform-origin:50%;transition:transform var(--motion-press) var(--ease-out), opacity var(--motion-hover) ease}.svg-member-group:hover{transform:scale(1.01)}.svg-member-group:active:not(:focus-visible){transform:scale(.99)}.svg-node{transform-box:fill-box;transform-origin:50%;transition:transform var(--motion-press) var(--ease-out), fill var(--motion-hover) ease, stroke var(--motion-hover) ease, opacity var(--motion-hover) ease}.svg-node:not(.locked):hover{transform:scale(1.14)}}.compare-workspace{background:#9eddf4}@media (hover:hover) and (pointer:fine){.compare-pip-expand:hover{color:var(--action);background:#fff;border-color:#246bfe57}.compare-pip:hover{box-shadow:0 20px 48px #14313d3d,inset 0 1px #ffffffe6}}.conclusion-layout{height:100vh;padding:0;display:block}.conclusion-evidence{z-index:8;border-radius:20px;width:390px;max-height:260px;padding:16px 18px;position:absolute;bottom:20px;left:20px;overflow:hidden}.conclusion-evidence h1{letter-spacing:-.025em;margin:4px 0 2px;font-size:23px}.conclusion-evidence .bridge-svg{height:150px}.conclusion-layout .conclusion-panel{width:382px;padding:17px 19px}.conclusion-panel textarea{min-height:52px}.conclusion-panel label{margin-top:9px}.world-caption,.fallback-status,.world-controls{-webkit-backdrop-filter:blur(20px)saturate(140%);backdrop-filter:blur(20px)saturate(140%);background:#ffffffb8;border-color:#ffffffd1;box-shadow:0 12px 30px #18404e26}.world-caption{border-radius:12px}.world-controls{border-radius:14px}.small-screen-message{display:none}@keyframes fadePulse{0%{opacity:.55}to{opacity:1}}@media (width<=1179px),(height<=699px){.app-shell>:not(.small-screen-message){display:none!important}.app-shell{place-items:center;min-width:0;min-height:0;padding:24px;display:grid}.small-screen-message{text-align:center;justify-items:center;max-width:410px;display:grid}.small-screen-message svg{width:42px;height:42px;color:var(--action)}.small-screen-message h1{margin:16px 0 5px;font-size:25px}.small-screen-message p{color:var(--text-secondary);margin:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{animation:none!important}button,select,input,textarea{transition-property:color,background-color,border-color,box-shadow,opacity!important;transition-duration:.12s!important;transition-timing-function:ease!important;transform:none!important}.build-editor-island>*,.builder-context-panel,.build-context-panel,.build-part-label,.builder-part-label,.bridge-part-label{transition-property:opacity,color,background-color!important;transition-duration:.12s!important;transition-timing-function:ease!important;transform:none!important}.svg-member-group,.svg-node{transition:opacity .12s,fill .12s,stroke .12s!important;transform:none!important}}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.glass-panel{background:#f8fbfd}}.learning-lab-app{background:#a9ddf3 url(/assets/loadlab-canyon-environment-v1.png) 50%/cover no-repeat;width:100vw;min-width:1024px;height:100vh;min-height:680px;position:relative;overflow:hidden}.learning-lab-app:after{content:"";z-index:0;pointer-events:none;background:linear-gradient(#ffffff0d,#2777b10f);position:absolute;inset:0}.lesson-stage-shell{z-index:1;opacity:1;width:100%;height:100%;transition:opacity .28s var(--ease-out);position:relative}.lesson-stage-shell--fading-out,.lesson-stage-shell--fading-in{opacity:0;pointer-events:none}.learning-header{z-index:20;position:absolute;top:18px;right:24px}.learning-reset{width:108px;height:50px;color:var(--text-secondary);border:0;justify-content:center;align-items:center;gap:7px;font-size:13px;font-weight:680;display:inline-flex}.learning-reset svg{width:16px}.lesson-update-notice{z-index:30;grid-template-columns:28px 1fr 32px;align-items:center;gap:9px;width:min(340px,100vw - 160px);min-height:58px;padding:10px 12px;display:grid;position:absolute;top:18px;left:18px}.lesson-update-notice>svg{color:#2f6df6;width:21px}.lesson-update-notice p{margin:0}.lesson-update-notice strong,.lesson-update-notice span{display:block}.lesson-update-notice strong{font-size:12px}.lesson-update-notice span{color:var(--text-secondary);margin-top:2px;font-size:10px}.lesson-update-notice button{width:32px;height:32px;color:var(--text-muted);background:#ffffff8c;border:0;border-radius:9px;place-items:center;padding:0;display:grid}.lesson-update-notice button svg{width:15px}.learning-workspace,.bridge-test-workspace,.bridge-review-workspace{z-index:1;width:100%;height:100%;position:relative}.learning-stage{width:100%;height:100%;position:relative;overflow:hidden}.learning-title{z-index:6;text-align:center;width:min(600px,49vw);padding:15px 24px;position:absolute;top:24px;left:50%;transform:translate(-50%)}.learning-title span,.test-copy span,.review-question>span{color:#2f6df6;letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:780}.learning-title h1{letter-spacing:-.04em;margin:3px 0;font-size:clamp(24px,2.4vw,34px);line-height:1.08}.learning-title h1:focus,.test-copy h1:focus,.review-question h1:focus,.completion-card h1:focus{outline:none}.learning-title p{color:var(--text-secondary);margin:0;font-size:14px}.learning-bridge{z-index:2;width:100%;height:100%;position:absolute;inset:0}.bridge-visualization--lesson{width:100%;height:100%}.learning-bridge .bridge-world,.learning-bridge .world-fallback{width:100%;height:100%;min-height:0}.learning-bridge .bridge-world canvas{cursor:default}.learning-bridge .world-caption{display:none}.learning-bridge .bridge-svg{width:100%;height:100%;overflow:visible}.learning-bridge .svg-hill,.learning-bridge .svg-water,.learning-bridge .support{opacity:0}.learning-bridge .lesson-road-outline{stroke:#fffffff0;stroke-width:18px;stroke-linecap:round}.learning-bridge .lesson-road .deck-guide{opacity:1;stroke:#5b6870;stroke-width:11px;stroke-dasharray:none;stroke-linecap:round}.learning-bridge .svg-member-group line:first-child{stroke:#fffffff5}.learning-bridge .svg-member-group line:nth-child(2){stroke:#343d49}.learning-bridge .svg-node{fill:#f7f8fa;stroke:#7c8794;stroke-width:5px;r:10}.learning-bridge .svg-node.selected{fill:#2f6df6;stroke:#fff}.learning-bridge g[role=button]:focus-visible{outline:none}.learning-bridge g[role=button]:focus-visible .svg-node{fill:#2f6df6;stroke:#fff;stroke-width:7px}.learning-stage.motion-collapsing .learning-feedback,.learning-stage.motion-falling .learning-feedback{opacity:.65}.beam-tray{z-index:7;width:250px;padding:18px;position:absolute;bottom:28px;left:28px}.beam-tray>div:first-child{justify-content:space-between;align-items:baseline;display:flex}.beam-tray span{color:var(--text-secondary);font-weight:680}.beam-tray strong{letter-spacing:-.04em;font-size:29px}.beam-tray p{min-height:36px;color:var(--text-muted);align-items:flex-start;gap:6px;margin:7px 0 10px;font-size:11px;line-height:1.4;display:flex}.beam-tray p svg{color:#a74d25;flex:none;width:14px}.beam-tray button{color:#2e5fca;background:#ffffffad;border:1px solid #d8e2e9;border-radius:10px;align-items:center;gap:7px;min-height:36px;padding:0 10px;font-size:12px;font-weight:680;display:inline-flex}.beam-tray button svg{width:15px}.coach-widget{--coach-size:clamp(148px, 12vw, 164px);z-index:9;width:var(--coach-size);height:var(--coach-size);pointer-events:none;position:absolute;bottom:12px;right:18px}.coach-character-frame{transform-origin:50% 100%;animation:coachPoseIn .36s var(--ease-out) both;position:absolute;inset:0}.coach-character{filter:drop-shadow(0 9px 8px #19363733);transform-origin:50% 100%;-webkit-user-select:none;user-select:none;width:100%;height:auto;animation:3.8s ease-in-out infinite coachIdle;display:block}.coach-widget--failure .coach-character-frame{animation-name:coachPointIn}.coach-widget--failure .coach-character{animation-name:coachPointIdle}.coach-launcher,.coach-bubble button{color:#2e5fca;background:#ffffffc7;border:1px solid #d8e2e9;justify-content:center;align-items:center;gap:7px;min-height:36px;font-size:12px;font-weight:720;display:inline-flex}.coach-launcher{z-index:3;right:12px;bottom:calc(var(--coach-size) - 16px);pointer-events:auto;transform-origin:74% 100%;width:138px;min-height:46px;animation:coachBubbleIn .26s var(--ease-out) both;border-color:#ffffffeb;border-radius:16px;padding:0 15px;position:absolute}.coach-launcher:before,.coach-bubble:before{content:"";z-index:-1;background:#ffffffe6;border-bottom:1px solid #fffffff2;border-right:1px solid #fffffff2;width:18px;height:18px;position:absolute;transform:rotate(45deg)}.coach-launcher:before{bottom:-9px;right:48px}.coach-launcher svg{color:#2f6df6;width:17px}.coach-bubble{z-index:4;right:0;bottom:calc(var(--coach-size) - 17px);pointer-events:auto;transform-origin:calc(100% - 76px) 100%;width:min(304px,100vw - 36px);max-height:calc(100vh - 188px);animation:coachBubbleIn .26s var(--ease-out) both;border-color:#fffffff0;border-radius:18px;padding:17px 17px 16px;position:absolute;overflow-y:auto;box-shadow:0 18px 42px #1f55b42e,inset 0 0 0 1px #2f6df60d}.coach-bubble:before{bottom:-9px;right:72px}.coach-bubble-heading{color:#2f6df6;align-items:center;gap:8px;min-height:26px;display:flex}.coach-bubble-heading strong{font-size:14px}.coach-bubble-heading small{color:#174fba;letter-spacing:.04em;text-transform:uppercase;background:#e8f0ff;border-radius:999px;margin-left:auto;padding:3px 7px;font-size:9px;font-weight:800}.coach-bubble-heading button{width:30px;min-height:30px;color:var(--text-secondary);background:0 0;border:0;border-radius:9px;padding:0}.coach-bubble-heading button:hover{background:#2f6df614}.coach-bubble-heading svg{width:17px}.coach-stage-hint{color:var(--text-primary);margin:8px 0 1px;font-size:14px;font-weight:650;line-height:1.4}.coach-conversation{scrollbar-width:thin;scrollbar-color:#b7c9d3 transparent;gap:7px;max-height:180px;margin:10px -3px 10px 0;padding-right:3px;display:grid;overflow-y:auto}.coach-turn{background:#ffffffb8;border-radius:10px;padding:8px 9px}.coach-turn--user{background:#eaf1ff;margin-left:22px}.coach-turn--loading{animation:1.2s ease-in-out infinite alternate fadePulse}.coach-turn span{color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;margin-bottom:2px;font-size:9px;font-weight:800;display:block}.coach-turn p{color:var(--text-primary);margin:0;font-size:12px;font-weight:620;line-height:1.38}.coach-actions{justify-items:start;gap:7px;display:grid}.coach-actions button{background:#fffc;border-color:#bcd1fb;border-radius:9px;padding:0 10px}.coach-actions button svg,.coach-reply button svg,.coach-rebuild svg{width:15px}.coach-reply{grid-template-columns:1fr auto;gap:7px;margin-top:10px;display:grid}.coach-reply label{color:var(--text-secondary);grid-column:1/-1;font-size:10px;font-weight:750}.coach-reply textarea{resize:vertical;background:#ffffffd1;border:1px solid #d4dfe7;border-radius:10px;min-height:58px;padding:8px 9px;font-size:12px;line-height:1.35}.coach-reply button{border-radius:9px;align-self:end;min-width:68px;padding:0 9px}.coach-deepest{color:var(--text-secondary);margin:10px 0;font-size:12px;line-height:1.4}.coach-bubble .coach-rebuild{color:#fff;background:#2f6df6;border-color:#2f6df6;border-radius:10px;width:100%;margin-top:10px;padding:0 10px}@keyframes coachPoseIn{0%{opacity:0;transform:translateY(8px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes coachPointIn{0%{opacity:.7;transform:translateY(7px)scale(.94)rotate(1deg)}65%{opacity:1;transform:translateY(-2px)scale(1.025)rotate(-.5deg)}to{opacity:1;transform:translateY(0)scale(1)rotate(0)}}@keyframes coachIdle{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-3px)rotate(-.35deg)}}@keyframes coachPointIdle{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-3px)rotate(.35deg)}}@keyframes coachBubbleIn{0%{opacity:0;transform:translateY(7px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}.test-dock{z-index:8;width:190px;padding:8px;position:absolute;bottom:26px;left:50%;transform:translate(-50%)}.test-dock .learning-test-button{width:100%}.prediction-dock{z-index:8;grid-template-columns:minmax(150px,1fr) 1.25fr 190px;align-items:center;gap:12px;width:min(660px,52vw);padding:14px;display:grid;position:absolute;bottom:26px;left:50%;transform:translate(-50%)}.prediction-dock>div:first-child strong,.prediction-dock>div:first-child span{display:block}.prediction-dock>div:first-child strong{font-size:13px}.prediction-dock>div:first-child span{color:var(--text-muted);margin-top:3px;font-size:11px}.prediction-buttons{grid-template-columns:1fr 1fr;gap:7px;display:grid}.prediction-buttons button{min-height:48px;color:var(--text-secondary);background:#ffffffb3;border:1px solid #d4dfe7;border-radius:11px;justify-content:center;align-items:center;gap:6px;padding:0 9px;font-size:12px;font-weight:680;display:flex}.prediction-buttons button svg{width:15px}.prediction-buttons button.selected{color:#2358c6;background:#edf3ff;border-color:#2f6df6;box-shadow:inset 0 0 0 1px #2f6df62e}.learning-test-button{border-radius:15px;min-height:54px;font-size:14px}.learning-test-button svg{width:19px}.learning-feedback{z-index:12;justify-content:space-between;align-items:center;gap:14px;width:min(610px,48vw);min-height:66px;padding:12px 14px 12px 20px;display:flex;position:absolute;bottom:116px;left:50%;transform:translate(-50%)}.learning-feedback p{color:var(--text-primary);margin:0;font-weight:650}.learning-feedback>svg{color:#16834a;width:24px}.learning-feedback.success{background:#f1fff7eb;border-color:#16834a52}.learning-feedback .primary-button{min-width:130px}.learning-workspace--bridge .learning-title{width:min(600px,48vw)}.blocked-brace-label{color:#8e3718;letter-spacing:.04em;text-transform:uppercase;background:#fff2e5e6;border:1px solid #97411b57;border-radius:7px;align-items:center;min-height:23px;padding:4px 7px;font-size:9px;font-weight:800;display:inline-flex;box-shadow:0 5px 14px #4b251224}.svg-blocked-brace line{stroke:#b25d25;stroke-width:7px;stroke-dasharray:8 7;opacity:.48}.svg-blocked-brace path{fill:none;stroke:#8e3718;stroke-width:4px;stroke-linecap:round}.svg-blocked-brace text{fill:#8e3718;font-size:11px;font-weight:800}.bridge-test-stage,.review-stage,.completion-stage{width:100%;height:100%;position:relative}.bridge-test-stage .bridge-world,.bridge-test-fallback{width:100%;height:100%;position:absolute;inset:0}.bridge-test-fallback{background:#b5e4f7b8;place-items:center;display:grid}.bridge-test-fallback .bridge-svg{width:min(1100px,85vw)}.bridge-test-stage .world-controls{display:none}.test-copy{z-index:6;width:420px;padding:20px 22px;position:absolute;top:116px;left:28px}.test-copy h1{letter-spacing:-.04em;margin:4px 0 6px;font-size:29px}.test-copy p{color:var(--text-secondary);margin:0}.test-outcome{z-index:6;align-items:center;gap:12px;width:340px;padding:18px;display:flex;position:absolute;top:116px;right:28px}.test-outcome>svg{color:#fff;background:#2f6df6;border-radius:50%;width:34px;height:34px;padding:7px}.test-outcome.visible>svg{background:#1f9d66}.test-outcome strong,.test-outcome span{display:block}.test-outcome strong{font-size:16px}.test-outcome span{color:var(--text-secondary);margin-top:3px;font-size:12px}.test-controls{z-index:8;grid-template-columns:120px 1fr 46px auto;align-items:center;gap:13px;width:min(820px,70vw);min-height:76px;padding:11px 13px;display:grid;position:absolute;bottom:28px;left:50%;transform:translate(-50%)}.test-play{color:#fff;background:#2f6df6;border:0;border-radius:13px;justify-content:center;align-items:center;gap:8px;min-height:52px;font-weight:720;display:flex}.test-play svg{width:18px}.test-controls>span{color:var(--text-secondary);font-weight:700}.test-controls input{accent-color:#2f6df6;width:100%}.review-stage{padding:0;position:relative;overflow:hidden}.review-bridge{background:#b1e2f5b3;position:absolute;inset:0;overflow:hidden}.review-bridge .bridge-world,.review-bridge .world-fallback{width:100%;height:100%;min-height:0}.review-bridge .world-controls,.review-bridge .world-caption{display:none}.review-scene-label{z-index:5;color:var(--text-secondary);background:#ffffffdb;border:1px solid #ffffffeb;border-radius:11px;padding:9px 12px;font-size:12px;font-weight:720;position:absolute;bottom:28px;left:28px;box-shadow:0 10px 28px #18404e29}.review-question{z-index:7;width:400px;padding:24px;position:absolute;top:86px;bottom:28px;right:28px;overflow-y:auto}.review-question h1{letter-spacing:-.04em;margin:7px 0 8px;font-size:29px;line-height:1.12}.review-question>p{color:var(--text-secondary);margin:0 0 18px}.review-options{gap:10px;display:grid}.review-options button{min-height:68px;color:var(--text-secondary);text-align:left;background:#ffffffa6;border:1px solid #d6e0e7;border-radius:14px;grid-template-columns:25px 1fr;align-items:center;gap:10px;padding:12px 14px;font-weight:650;display:grid}.review-options button>span,.review-options button>svg{border:1px solid #c6d4de;border-radius:50%;width:23px;height:23px;padding:4px}.review-options button.selected{color:#1e52bf;background:#edf3ff;border-color:#2f6df6}.review-options button.selected>svg{color:#fff;background:#2f6df6;border-color:#2f6df6}.review-options.compact{gap:7px}.review-options.compact button{min-height:48px;padding-block:7px}.review-reason{color:var(--text-primary);gap:6px;margin-top:12px;font-size:12px;font-weight:720;display:grid}.review-reason select{width:100%;min-height:50px;color:var(--text-secondary);background:#ffffffc2;border:1px solid #d4dfe7;border-radius:11px;padding:0 38px 0 12px;font-size:12px}.review-submit{width:100%;margin-top:18px}.review-feedback{border-radius:11px;margin-top:12px;padding:12px 14px;font-size:13px;font-weight:650}.review-feedback.correct{color:#12663e;background:#eafaf1}.review-feedback.try-again{color:#91500b;background:#fff5e5}.completion-stage{z-index:2;place-items:center;display:grid}.completion-card{text-align:center;width:min(520px,80vw);padding:36px}.completion-icon{color:#fff;background:#2f6df6;border-radius:22px;place-items:center;width:66px;height:66px;margin:0 auto;display:grid;box-shadow:0 13px 30px #2f6df64d}.completion-icon svg{width:30px}.completion-card h1{letter-spacing:-.05em;margin:20px 0 8px;font-size:36px}.completion-card>p{max-width:420px;color:var(--text-secondary);margin:0 auto 24px;font-size:15px}.completion-actions{grid-template-columns:1.2fr 1fr;gap:10px;display:grid}.completion-actions button{min-height:50px;color:var(--text-secondary);background:#ffffffc2;border:1px solid #d5e0e7;border-radius:13px;justify-content:center;align-items:center;gap:8px;font-weight:720;display:inline-flex}.completion-actions .primary-button{color:#fff;background:#2f6df6;border-color:#2f6df6}.completion-actions svg{width:18px}.learning-loading{width:100vw;height:100vh;color:var(--text-secondary);background:#d9f0f9;place-items:center;font-weight:700;display:grid}@media (width<=1180px){.learning-lab-app{min-width:0;overflow:auto}.learning-header{right:14px}.learning-bridge{width:100%}.coach-widget{--coach-size:148px;bottom:10px;right:14px}.coach-bubble{width:286px}.beam-tray{width:210px;left:16px}.test-dock{width:190px}.learning-feedback{bottom:154px}}@media (prefers-reduced-motion:reduce){.lesson-stage-shell{transition:none}.bridge-node-hotspot.is-attention span,.learning-stage .learning-bridge,.coach-character-frame,.coach-character,.coach-launcher,.coach-bubble{animation:none}}
