:root{--bg:#f6f3ec;--panel:#ffffffdb;--surface:#fffffff0;--surface-strong:#eef1f4;--text:#425066;--text-strong:#15233a;--muted:#66758c;--border:#15233a1f;--accent:#f48024;--accent-soft:#f2b84b;--accent-strong:#a54a02;--shadow:0 24px 50px #1a273f14, 0 10px 20px #1a273f0d;--sans:"Avenir Next", "Trebuchet MS", "Segoe UI", sans-serif;--heading:"Georgia", "Times New Roman", serif;--mono:"SFMono-Regular", "SF Mono", Consolas, monospace;color:var(--text);font:16px/1.55 var(--sans);font-synthesis:none;letter-spacing:.01em;text-rendering:optimizelegibility;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;background:radial-gradient(circle at top,#ffd59a8c,#0000 28%),linear-gradient(#f7f2e8 0%,#eef4f7 100%)}*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip}body{min-width:320px;margin:0;overflow-x:clip}body:before{content:"";pointer-events:none;z-index:-1;background-color:#0000;background-image:linear-gradient(90deg,#15233a08 1px,#0000 1px),linear-gradient(#15233a08 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:28px 28px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:fixed;inset:0}button,textarea{font:inherit}h1,h2,h3{color:var(--text-strong);font-family:var(--heading);margin:0;line-height:1.08}h1{letter-spacing:-.04em;margin-bottom:14px;font-size:clamp(2.6rem,5vw,4.8rem)}h2{letter-spacing:-.02em;font-size:clamp(1.5rem,2vw,2rem)}h3{margin-bottom:8px;font-size:1.25rem}p{margin:0}a{color:inherit}#root{width:100%;min-width:0;max-width:1320px;min-height:100svh;margin:0 auto}.app-shell{padding:32px 24px 48px}.workspace{grid-template-columns:minmax(0,1fr);gap:24px;min-width:0;display:grid}.panel{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:28px;min-width:0;padding:24px}.panel-grid{grid-template-columns:minmax(0,1.7fr) minmax(320px,1fr);gap:24px;min-width:0;display:grid}.auth-grid,.lower-grid{align-items:start}.studio-work-grid{grid-template-columns:minmax(0,1.35fr) minmax(300px,1fr);align-items:start;gap:24px;min-width:0;display:grid}.studio-work-grid .play-panel.sticky-live-preview{align-self:start;max-height:calc(100vh - 32px);position:sticky;top:16px;overflow:auto}.panel-header{justify-content:space-between;align-items:start;gap:16px;margin-bottom:20px;display:flex}.eyebrow{color:var(--accent-strong);letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px;font-size:.8rem;font-weight:700}.hero-panel{border:1px solid var(--border);box-shadow:var(--shadow);background:radial-gradient(circle at 0 0,#ffd4a7d9,#0000 34%),radial-gradient(circle at 100%,#6893ff2e,#0000 28%),linear-gradient(135deg,#fff8eef5,#f5f9fffa);border-radius:36px;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:24px;margin-bottom:24px;padding:32px;display:grid;position:relative;overflow:hidden}.hero-panel:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#0c25440f,#0000);position:absolute;inset:0}.hero-copy,.hero-status,.auth-panel,.library-panel,.wizard-panel,.help-panel,.spec-panel,.spec-standalone,.play-panel,.explain-panel,.share-panel{z-index:1;position:relative}.hero-summary{max-width:60ch;font-size:1.05rem}.hero-status-compact{max-width:360px}.studio-north-star-lead{margin-bottom:0}.studio-stages-sub{max-width:70ch;margin:10px 0 0}.studio-stages-split{grid-template-columns:minmax(260px,.95fr) minmax(0,1.25fr);align-items:start;gap:24px;min-width:0;display:grid}.studio-stages-rail{flex-direction:column;gap:16px;min-width:0;display:flex}.studio-stages-editor{flex-direction:column;gap:18px;min-width:0;display:flex}.progress-panel-rail{margin-bottom:0}.checklist-rail-vertical{grid-template-columns:1fr}.reflection-pivot-hint{background:var(--surface-strong);border:1px solid var(--border);border-radius:22px;padding:20px}.studio-game-panel{min-width:0}.studio-game-panel .play-panel{margin:0}.outcomes-panel-reflect{background:var(--surface);border:1px solid var(--border);border-radius:18px;margin-bottom:18px;padding:16px 18px}.reflection-roadmap-panel .outcomes-panel-reflect{margin-top:0}.legacy-cyoa-details{border-top:1px solid #15233a1f;margin-top:12px;padding-top:12px}.legacy-cyoa-details summary{color:var(--muted);cursor:pointer;margin-bottom:10px;font-size:.88rem;font-weight:600}.flowchart-legacy-wrap{max-height:min(70vh,560px);margin-top:10px;overflow:auto}.build-deprecated-cyoa{border-top:1px solid var(--border);margin-top:14px;padding-top:14px}.build-deprecated-cyoa summary{color:var(--muted);cursor:pointer;margin-bottom:10px;font-weight:600}.build-deprecated-cyoa .inline-note{margin-bottom:12px}.landing-hero{align-items:start}.landing-actions{flex-wrap:wrap;gap:12px;margin-top:22px;display:flex}.hero-status{gap:16px;display:grid}.status-card{background:#ffffffa6;border:1px solid #0c254414;border-radius:22px;padding:18px}.auth-copy{max-width:62ch;margin-bottom:16px}.signin-box,.account-card,.saved-game-card,.auth-status-row{background:var(--surface);border:1px solid var(--border);border-radius:22px;padding:18px}.signin-box{gap:12px;margin-bottom:16px;display:grid}.google-signin-block{gap:10px;display:grid}.google-signin-label{color:var(--text-strong);letter-spacing:.02em;margin:0;font-size:1.1rem;font-weight:700}.google-signin-hint{color:var(--muted);max-width:42ch;margin:0;font-size:.92rem;line-height:1.45}.google-button-wrap{flex-wrap:wrap;align-items:center;gap:12px;min-height:48px;display:flex}.google-button{min-width:200px;min-height:44px}.account-card{grid-template-columns:auto 1fr;align-items:center;gap:14px;margin-bottom:16px;display:grid}.account-avatar{object-fit:cover;border-radius:999px;width:52px;height:52px}.auth-status-row{gap:8px;margin-bottom:16px;display:grid}.auth-actions{flex-wrap:wrap;gap:12px;display:flex}.runtime-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.play-panel .panel-header{flex-wrap:wrap;align-items:flex-start;gap:12px}.play-panel .panel-header .runtime-actions{flex:220px;justify-content:flex-end}.error-text{color:#b42318}.ai-spec-active{color:var(--muted);background:#6893ff14;border-radius:12px;margin:0 0 12px;padding:10px 14px}.inline-note{color:var(--muted)}.saved-games-list{gap:12px;display:grid}.saved-game-card{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.saved-game-actions{gap:8px;display:flex}.examples-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;display:grid}.example-card{background:var(--surface);border:1px solid var(--border);border-radius:22px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px;display:grid}.example-link{align-self:center;text-decoration:none}.public-hero{text-align:left}.status-label{color:var(--muted);text-transform:uppercase;margin-bottom:10px;font-size:.8rem;display:block}.level-rail-hint{max-width:72ch;margin:0 0 14px}.level-rail{flex-wrap:wrap;justify-content:space-between;align-items:stretch;gap:0;margin-bottom:20px;display:flex}.level-rail-segment{flex:1 1 0;gap:0;min-width:min(140px,100%);display:flex}.level-rail-connector{color:var(--muted);-webkit-user-select:none;user-select:none;flex:none;align-items:center;padding:0 6px;font-size:1rem;font-weight:600;display:flex}.level-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:20px;display:grid}.level-card,.check-item,.ghost-button,.secondary-button,.primary-button{transition:transform .16s,border-color .16s,background .16s,box-shadow .16s}.level-card{background:var(--surface);border:1px solid var(--border);color:inherit;cursor:pointer;text-align:left;border-radius:22px;min-height:190px;padding:18px}.level-card-compact{text-align:left;flex:auto;min-height:0;padding:12px 14px}.level-card-compact .level-age{margin-bottom:6px;font-size:.78rem}.level-card-compact strong{margin-bottom:6px;font-size:1rem;display:block}.level-compact-intent{color:var(--muted);margin:0;font-size:.82rem;line-height:1.4;display:block}.level-card:hover,.check-item:hover,.ghost-button:hover,.secondary-button:hover,.primary-button:hover{border-color:var(--accent);transform:translateY(-1px)}.level-card.active{border-color:var(--accent);background:linear-gradient(#f4802424,#ffffffe6);box-shadow:0 16px 30px #344d6e1a}.level-age{color:var(--muted);margin-bottom:12px;font-size:.85rem;display:block}.level-card strong,.status-card strong,.progress-copy strong,.play-stats strong,.feedback-grid p{color:var(--text-strong)}.level-card p,.level-card small{display:block}.level-card small{color:var(--muted);margin-top:12px}.level-table{border:1px solid var(--border);border-radius:22px;overflow:hidden}.level-row{background:var(--surface);grid-template-columns:minmax(90px,.6fr) minmax(0,1.1fr) minmax(0,.9fr) minmax(0,1fr);gap:12px;padding:14px 16px;display:grid}.level-row+.level-row{border-top:1px solid var(--border)}.level-row-head{background:var(--surface-strong);color:var(--muted);font-size:.88rem;font-weight:700}.progress-panel{background:var(--surface);border:1px solid var(--border);border-radius:22px;margin-bottom:20px;padding:18px}.progress-copy{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.progress-bar{background:#0c254414;border-radius:999px;height:10px;margin-bottom:16px;overflow:hidden}.progress-bar span{background:linear-gradient(90deg, var(--accent), var(--accent-soft));height:100%;display:block}.checklist{grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:10px;display:grid}.check-item{border:1px solid var(--border);color:inherit;cursor:pointer;text-align:left;background:#fff;border-radius:16px;grid-template-columns:28px 1fr;align-items:center;gap:10px;min-height:64px;padding:10px 12px;display:grid}.check-item span{background:var(--surface-strong);color:var(--accent-strong);border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;font-weight:700;display:inline-flex}.check-item.active{border-color:var(--accent);box-shadow:0 10px 20px #344d6e14}.question-card,.debug-panel,.outcomes-panel,.help-block,.play-log,.share-panel,.spec-summary,pre,textarea,.feedback-grid article,.explain-grid article{background:var(--surface);border:1px solid var(--border);border-radius:22px}.question-card,.debug-panel,.outcomes-panel,.help-block,.play-log,.share-panel,.spec-summary,pre{padding:20px}.question-meta{color:var(--muted);gap:12px;margin-bottom:16px;display:flex}.phase-pill{color:var(--accent-strong);text-transform:uppercase;background:#f480241f;border-radius:999px;padding:4px 10px;font-size:.8rem;font-weight:700;display:inline-flex}.question-prompt{color:var(--text-strong);margin-bottom:10px;font-size:1.15rem}.question-help{color:var(--muted);margin-bottom:18px}.field-label{color:var(--text-strong);margin-bottom:10px;font-weight:700;display:inline-block}textarea{color:inherit;font:inherit;resize:vertical;width:100%;min-height:168px;padding:16px}textarea:focus-visible,.ghost-button:focus-visible,.primary-button:focus-visible,.secondary-button:focus-visible,.level-card:focus-visible,.check-item:focus-visible{outline-offset:2px;outline:3px solid #f4802440}.field-footer{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:10px;display:flex}.wizard-actions,.verb-row{flex-wrap:wrap;gap:12px;margin-top:18px;display:flex}.touch-row{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));display:grid}.ghost-button,.secondary-button,.primary-button{cursor:pointer;font:inherit;border-radius:999px;padding:10px 16px}.ghost-button,.secondary-button{border:1px solid var(--border);color:var(--text-strong);background:0 0}.primary-button{background:linear-gradient(135deg, var(--accent), var(--accent-soft));color:#fff;border:1px solid #0000}.primary-button:disabled,.secondary-button:disabled{cursor:not-allowed;opacity:.45;transform:none}.touch-button{min-height:56px;padding:14px 18px}.compact-button{padding:6px 12px}.outcomes-panel ul,.help-block ul,.help-block ol{margin:0;padding-left:18px}.debug-panel{margin-top:20px}.debug-intro{margin:10px 0 16px}.debug-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.debug-grid article{border:1px solid var(--border);background:#fff;border-radius:18px;padding:16px}.debug-grid span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:.78rem;font-weight:700;display:block}.debug-grid p+span{margin-top:12px}.outcomes-panel li,.help-block li{margin-bottom:8px}.help-panel{gap:16px;display:grid}.help-block h3,.explain-grid h3{margin-bottom:10px}.spec-summary{margin-bottom:16px}pre{color:var(--text-strong);font-family:var(--mono);min-width:0;max-width:100%;margin:0;font-size:.86rem;line-height:1.55;overflow:auto}.spec-standalone pre{overflow-wrap:anywhere;white-space:pre-wrap;word-break:break-word;max-height:min(55vh,520px)}.play-lead{color:var(--text-strong);margin-bottom:18px;font-size:1.05rem}.three-beat-arc{max-width:100%}.three-beat-intro{margin-bottom:14px}.three-beat-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;margin-bottom:12px;padding:14px 16px}.three-beat-label{color:var(--accent-strong);letter-spacing:.04em;text-transform:uppercase;margin:0 0 8px;font-size:.78rem}.three-beat-body{overflow-wrap:anywhere;margin:0;font-size:.88rem;line-height:1.5}.three-beat-body p{margin:0 0 .6em}.three-beat-body p:last-child{margin-bottom:0}.three-beat-perspective-callout{background:linear-gradient(135deg,#1565c012,#a54a020d);border:1px solid #1565c033;border-left:4px solid #1565c0;border-radius:0 14px 14px 0;margin-bottom:14px;padding:14px 16px}.three-beat-perspective-eyebrow{color:#1045a0;letter-spacing:.09em;text-transform:uppercase;margin-bottom:6px;font-size:.72rem;font-weight:700}.three-beat-perspective-who{color:var(--text-strong);margin-bottom:8px;font-size:.94rem;line-height:1.45}.three-beat-perspective-rule{color:var(--text-strong);margin-bottom:8px;font-size:.86rem;line-height:1.45}.three-beat-rule-label{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;margin-right:2px;font-size:.78rem;font-weight:700}.three-beat-perspective-design-note{color:var(--muted);margin:0;font-size:.82rem;font-style:italic;line-height:1.45}.three-beat-rubric{background:#fff8ebb3;border:1px solid #f5b43c59;border-radius:14px;margin-top:4px;padding:12px 14px}.three-beat-rubric-eyebrow{color:#a54a02;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:.72rem;font-weight:700}.three-beat-rubric-text{color:var(--text-strong);margin:0;font-size:.84rem;line-height:1.5}.play-surface{margin-top:16px}.play-surface.mobile-enabled{background:linear-gradient(#0f1725,#16253a);border-radius:28px;margin-top:18px;padding:18px}.phone-shell{background:linear-gradient(#fffffff5,#f6f8fbf0);border:1px solid #15233a1f;border-radius:28px;max-width:100%;margin:0 auto;overflow:hidden}.phone-shell.landscape{aspect-ratio:16/9;max-width:860px}.phone-status-bar{color:var(--muted);background:#15233a0f;justify-content:space-between;align-items:center;gap:8px;min-width:0;padding:10px 14px;font-size:.82rem;display:flex}.phone-status-bar>span:first-child{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.phone-stage{-webkit-overflow-scrolling:touch;min-height:0;max-height:min(72vh,720px);padding:18px;overflow:hidden auto}.prototype-phone-stage{padding:14px 14px 20px}.investigation-hud-stage{flex-direction:column;gap:10px;min-height:min(52vh,500px);display:flex}.investigation-hud-iframe{background:#0b1220;border:1px solid #15233a59;border-radius:14px;flex:auto;width:100%;min-height:380px}.investigation-hud-placeholder .play-lead{margin-bottom:8px}.investigation-hud-actions{margin-top:0}.investigation-hud-error{width:100%;margin:0}.legacy-canvas-details{border-top:1px solid #15233a1f;margin-top:4px;padding-top:12px}.legacy-canvas-details summary{color:var(--muted);cursor:pointer;margin-bottom:10px;font-size:.82rem}.flowchart-phone-stage{padding:14px 14px 20px}.flowchart-play{max-width:100%}.flowchart-intro-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;margin-bottom:14px;padding:14px 16px}.flowchart-intro-lead{color:var(--text-strong);margin-bottom:12px;font-size:.95rem;font-weight:600}.flowchart-turns-row{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:10px;display:flex}.flowchart-turns-label{color:var(--text-muted);text-transform:uppercase;margin-right:2px;font-size:.8rem;font-weight:600}.flowchart-turns-btn{background:var(--surface);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;border-radius:999px;padding:4px 12px;font-size:.78rem;font-weight:600;transition:background .15s,color .15s,border-color .15s}.flowchart-turns-btn:hover{background:var(--surface-raised);border-color:var(--border-strong);color:var(--text-strong)}.flowchart-turns-btn-active{background:var(--accent);border-color:var(--accent);color:#fff}.flowchart-turns-btn-active:hover{background:var(--accent-hover,var(--accent));border-color:var(--accent-hover,var(--accent));color:#fff}.flowchart-ai-btn{margin-top:4px;font-size:.82rem}.flowchart-ai-note{color:var(--text-muted);margin-top:6px;font-size:.78rem}.flowchart-ai-reset-link{color:var(--accent);cursor:pointer;font-size:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.flowchart-ai-reset-link:hover{color:var(--accent-hover,var(--accent))}.flowchart-lens-legend{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.flowchart-lens-chip{border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-size:.8rem;font-weight:600;display:inline-flex}.lens-obj-chip{color:#1045a0;background:#1565c01a;border:1px solid #1565c040}.lens-sub-chip{color:#8b3a00;background:#a54a021a;border:1px solid #a54a0240}.flowchart-lens-chip-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.lens-obj-chip .flowchart-lens-chip-dot{background:#1565c0}.lens-sub-chip .flowchart-lens-chip-dot{background:#a54a02}.flowchart-intro-note{color:var(--muted);margin:0;font-size:.82rem;line-height:1.45}.flowchart-intro{margin-bottom:12px}.flowchart-nodes{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:4px 2px;margin-bottom:14px;display:flex}.flowchart-node-wrap{flex-wrap:nowrap;align-items:center;gap:2px;display:flex}.flowchart-node{background:var(--surface);border:1px solid var(--border);color:inherit;cursor:pointer;font:inherit;text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:2px;min-width:64px;padding:8px 10px;transition:border-color .15s,background .15s;display:flex}.flowchart-node:hover{border-color:#f4802459}.flowchart-node-current{background:linear-gradient(135deg,#f4802433,#f480240f);border-color:#f4802480;font-weight:700}.flowchart-node-past{opacity:.72}.flowchart-node-num{color:var(--muted);letter-spacing:.04em;font-size:.72rem;font-weight:700}.flowchart-node-current .flowchart-node-num{color:var(--text-strong)}.flowchart-node-label{font-size:.78rem;line-height:1.2}.flowchart-edge{color:var(--muted);-webkit-user-select:none;user-select:none;padding:0 2px;font-size:.85rem}.flowchart-detail{background:var(--surface);border:1px solid var(--border);border-radius:16px;min-height:100px;margin-bottom:14px;padding:16px 18px}.flowchart-detail-title{color:var(--text-strong);margin:0 0 10px;font-size:1.05rem;font-weight:700;line-height:1.3}.flowchart-detail-body{overflow-wrap:anywhere;margin:0;font-size:.88rem;line-height:1.5}.flowchart-detail-body p{margin:0 0 .65em}.flowchart-detail-body p:last-child{margin-bottom:0}.flowchart-breadcrumb{background:var(--surface-strong,#15233a0a);color:var(--text-strong);overflow-wrap:anywhere;border-radius:10px;margin:0 0 12px;padding:8px 12px;font-size:.82rem;line-height:1.5}.flowchart-breadcrumb-label{color:var(--muted);font-weight:600}.flowchart-breadcrumb-step{color:var(--text-strong)}.flowchart-breadcrumb-sep{color:var(--muted);padding:0 2px}.flowchart-choices{flex-direction:column;gap:10px;margin-bottom:14px;display:flex}.flowchart-choice-btn{text-align:left;width:100%}.lens-obj{background:linear-gradient(135deg,#1565c024,#1565c00f)!important;border-color:#1565c059!important}.lens-obj:hover{background:linear-gradient(135deg,#1565c038,#1565c01f)!important;border-color:#1565c08c!important}.lens-sub{background:linear-gradient(135deg,#a54a0221,#a54a020d)!important;border-color:#a54a024d!important}.lens-sub:hover{background:linear-gradient(135deg,#a54a0233,#a54a021a)!important;border-color:#a54a0280!important}.flowchart-choice-groups{flex-direction:column;gap:10px;margin-bottom:14px;display:flex}.flowchart-choice-group{border-radius:14px;padding:12px 14px;overflow:hidden}.flowchart-group-obj{background:#1565c00d;border:1px solid #1565c02e}.flowchart-group-sub{background:#a54a020d;border:1px solid #a54a022e}.flowchart-group-header{margin-bottom:10px}.flowchart-choice-group-label{letter-spacing:.05em;text-transform:uppercase;margin:0 0 2px;font-size:.8rem;font-weight:700}.flowchart-group-obj .flowchart-choice-group-label{color:#1045a0}.flowchart-group-sub .flowchart-choice-group-label{color:#8b3a00}.flowchart-group-desc{color:var(--muted);margin:0;font-size:.78rem}.flowchart-choice-label-text{vertical-align:middle}.flowchart-perspective-badge{letter-spacing:.06em;text-transform:uppercase;vertical-align:middle;border-radius:999px;margin-left:8px;padding:2px 8px;font-size:.65rem;font-weight:700;display:inline-block}.flowchart-badge-obj{color:#1045a0;background:#1565c026}.flowchart-badge-sub{color:#8b3a00;background:#a54a0224}.flowchart-score-panel{border-radius:16px;margin-bottom:14px;padding:14px 16px}.flowchart-score-strong{background:#2e7d3214;border:1px solid #2e7d324d}.flowchart-score-solid{background:#fff8ebb3;border:1px solid #f5b43c61}.flowchart-score-partial{background:#e651000f;border:1px solid #e6510040}.flowchart-score-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:10px;display:flex}.flowchart-score-eyebrow{letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:700}.flowchart-score-strong .flowchart-score-eyebrow{color:#2e7d32}.flowchart-score-solid .flowchart-score-eyebrow{color:#a54a02}.flowchart-score-partial .flowchart-score-eyebrow{color:#bf360c}.flowchart-score-tier{border-radius:999px;padding:3px 10px;font-size:.75rem;font-weight:700}.flowchart-tier-strong{color:#1b5e20;background:#2e7d3221}.flowchart-tier-solid{color:#7a4900;background:#f5b43c2e}.flowchart-tier-partial{color:#bf360c;background:#e651001f}.flowchart-score-line{margin:0 0 .6em;font-size:.86rem;line-height:1.5}.flowchart-score-line:last-child{margin-bottom:0}.flowchart-ending{color:var(--muted);margin-bottom:12px;font-size:.88rem}.flowchart-source-hint{margin-top:10px;margin-bottom:0}.flowchart-nav{flex-wrap:wrap;justify-content:flex-start;gap:10px;display:flex}.flowchart-play-touch .flowchart-nav{grid-template-columns:1fr;display:grid}@media (width<=520px){.flowchart-nodes{gap:6px 4px}.flowchart-edge{display:none}.flowchart-node-wrap{flex:calc(50% - 6px);justify-content:center}.flowchart-node{flex:1;min-width:0}}.fix-bugs-panel{background:var(--surface);border:1px solid var(--border);border-radius:16px;margin-top:12px;padding:14px 16px 16px}.fix-bugs-report{white-space:pre-wrap;word-break:break-word;background:#15233a0a;border-radius:12px;max-height:240px;margin:8px 0 0;padding:12px 14px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.82rem;line-height:1.45;overflow:auto}.fix-bugs-actions{flex-direction:column;gap:8px;margin-top:12px;display:flex}.fix-bugs-apply-hint{margin:0}.preview-tab-row{flex-wrap:wrap;gap:8px;margin:12px 0 4px;display:flex}.preview-tab{background:var(--surface);border:1px solid var(--border);color:var(--muted);cursor:pointer;font:inherit;border-radius:999px;min-height:44px;padding:8px 16px;font-weight:600}.preview-tab:hover{color:var(--text-strong);border-color:#f4802459}.preview-tab-active{color:var(--text-strong);background:linear-gradient(135deg,#f480242e,#f480240f);border-color:#f4802473}.inline-note-tight{max-width:100%;margin:0;display:inline-block}.prototype-ai-actions{flex-direction:column;align-items:flex-start;gap:10px;margin-top:14px;display:flex}.canvas-prototype-wrap{width:100%}.canvas-prototype-hud{flex-direction:column;gap:6px;margin-bottom:10px;display:flex}.canvas-prototype-hud strong{font-size:1rem;display:block}.canvas-prototype-sub{color:var(--muted);margin-top:4px;font-size:.85rem;display:block}.canvas-prototype-world-hint{color:var(--text-strong);margin:4px 0 0;font-size:.86rem;line-height:1.45}.canvas-prototype-character{background:var(--surface);border:1px solid var(--border);border-radius:14px;margin-top:8px;padding:12px 14px}.canvas-prototype-char-label{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;font-size:.72rem;font-weight:700;display:block}.canvas-prototype-character strong{margin-top:6px;font-size:.98rem}.canvas-prototype-char-blurb{color:var(--muted);margin-top:4px;font-size:.84rem;line-height:1.4;display:block}.canvas-prototype-legend{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-top:10px;display:grid}.canvas-prototype-legend>div{background:var(--surface);border:1px solid var(--border);border-radius:12px;min-height:72px;padding:10px 10px 10px 36px;position:relative}.canvas-prototype-legend p{color:var(--muted);margin:4px 0 0;font-size:.8rem;line-height:1.35}.canvas-prototype-legend-title{color:var(--text-strong);letter-spacing:.05em;text-transform:uppercase;font-size:.78rem;font-weight:700}.canvas-prototype-swatch{border:1px solid #15233a33;border-radius:50%;width:14px;height:14px;position:absolute;top:14px;left:12px}.canvas-prototype-swatch-duo{border-radius:6px}.canvas-prototype-stats{flex-direction:column;gap:4px;font-size:.82rem;display:flex}.canvas-prototype-hazard{color:var(--muted)}.canvas-prototype-canvas-row{width:100%;position:relative}.canvas-prototype-surface{aspect-ratio:480/280;background:#0f1725;border-radius:16px;width:100%;max-width:100%;height:auto;display:block}.canvas-prototype-overlay{text-align:center;background:#15233ae0;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:16px;display:flex;position:absolute;inset:0}.canvas-prototype-overlay p{color:#fff;max-width:36ch;margin:0}.canvas-prototype-goal{margin:12px 0 0;font-size:.88rem;line-height:1.45}.canvas-prototype-keys{margin-top:10px}.canvas-prototype-touch{margin-top:12px}.canvas-prototype-dpad{grid-template-columns:1fr 1fr 1fr;gap:8px;max-width:280px;display:grid}.canvas-prototype-dpad .touch-button{min-height:48px}.play-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.play-stats div,.feedback-grid article{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:16px}.play-stats span,.feedback-grid span{color:var(--muted);text-transform:uppercase;margin-bottom:10px;font-size:.85rem;display:block}.feedback-grid,.explain-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.play-log{gap:10px;margin-top:18px;display:grid}.thumb-controls{grid-template-columns:1fr 1fr;gap:12px;margin-top:14px;display:grid}.hidden-controls{display:none}.share-panel textarea{min-height:148px}@media (width<=1100px){.hero-panel,.panel-grid,.studio-work-grid,.studio-stages-split{grid-template-columns:1fr}.studio-work-grid .play-panel.sticky-live-preview,.studio-game-panel .play-panel.sticky-live-preview{max-height:none;position:static;overflow:visible}.level-rail{flex-direction:column;gap:10px}.level-rail-segment{flex:none;width:100%}.level-rail-connector{display:none}.level-grid,.play-stats,.feedback-grid,.explain-grid,.level-row{grid-template-columns:1fr}}@media (width<=720px){.canvas-prototype-hud{-webkit-overflow-scrolling:touch;max-height:min(38vh,320px);padding-right:4px;overflow:hidden auto}.app-shell{padding:16px 12px 32px}.hero-panel,.panel{border-radius:24px;padding:18px}.panel-header,.progress-copy,.field-footer{flex-direction:column;align-items:flex-start}.checklist{grid-template-columns:1fr 1fr}.runtime-actions{justify-content:flex-start}.thumb-controls{grid-template-columns:1fr}.phone-stage{padding:14px}.saved-game-card,.example-card{grid-template-columns:1fr}.landing-actions{flex-direction:column;align-items:flex-start}}.site-footer{border-top:1px solid var(--border);color:var(--muted);margin-top:8px;padding-top:20px;font-size:.85rem;line-height:1.45}.site-footer-inner{max-width:52rem;margin:0}.site-footer a{color:var(--accent-strong)}.cc-badge{border:1px solid var(--border);letter-spacing:.04em;vertical-align:middle;white-space:nowrap;border-radius:6px;padding:2px 8px;font-size:.75rem;font-weight:700;text-decoration:none;display:inline-block}.cc-badge:hover{border-color:var(--accent-soft)}.build-copy{color:var(--text);max-width:52rem;margin:0;line-height:1.55}.novelty-pedagogy-panel{background:linear-gradient(145deg,#fffcf6fa,#f0f7ffeb);border-color:#0c25441a}.novelty-pedagogy-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;display:grid}.novelty-pedagogy-card{background:#ffffffb8;border:1px solid #0c254414;border-radius:20px;padding:20px 22px}.novelty-pedagogy-card-title{color:var(--accent-strong,#a54a02);letter-spacing:.04em;text-transform:uppercase;margin:0 0 14px;font-size:1rem}.novelty-pedagogy-list{color:#3a4a5e;gap:12px;margin:0;padding-left:1.15rem;line-height:1.5;display:grid}.novelty-pedagogy-list li{padding-left:4px}.novelty-pedagogy-lede{max-width:58ch;margin:0 0 16px;line-height:1.5}.novelty-pedagogy-spine-label{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin:0 0 8px;font-size:.78rem;font-weight:700}.novelty-pedagogy-spine{gap:8px;margin:0 0 14px;padding:0;line-height:1.45;list-style:none;display:grid}.novelty-pedagogy-spine li{padding-left:0}.novelty-pedagogy-spine span{color:var(--accent-strong,#a54a02);letter-spacing:.06em;text-transform:uppercase;vertical-align:top;min-width:5.5rem;margin-right:8px;font-size:.8rem;font-weight:700;display:inline-block}.novelty-pedagogy-foot{max-width:52ch;margin:0}@media (width<=900px){.novelty-pedagogy-grid{grid-template-columns:1fr}}.tutorial-example-panel{background:#f5bd4f1a;border:1px solid #a54a0226;border-radius:20px;margin-bottom:22px;padding:18px 20px 20px}.tutorial-example-title{margin:0 0 8px;font-size:1.15rem}.tutorial-example-copy{max-width:72ch;margin-bottom:14px}.revision-request-panel{background:#6893ff0f;border:1px solid #0c25441a;border-radius:20px;margin-bottom:22px;padding:18px 20px 20px}.revision-request-header{margin-bottom:8px}.revision-request-title{margin:0;font-size:1.15rem}.revision-request-hint{color:var(--muted);max-width:70ch;margin:0 0 14px;font-size:.92rem;line-height:1.45}.revision-request-textarea{resize:vertical;min-height:100px}.revision-request-actions{flex-direction:column;align-items:flex-start;gap:10px;margin-top:14px;display:flex}.revision-request-ai-hint{max-width:62ch;margin:0}.reflection-stage-card{margin-top:10px}.design-framing-panel .design-loop-panel{margin-bottom:16px}.design-framing-panel .progress-panel{margin-bottom:0}.checklist-framing{grid-template-columns:repeat(auto-fit,minmax(118px,1fr))}.north-star-panel{background:linear-gradient(135deg,#6893ff14,#f480240f);border-color:#6893ff38}.north-star-callout-title{color:var(--text-strong);font-family:var(--heading);margin:0 0 10px;font-size:1.05rem;font-weight:600}.north-star-callout p{max-width:85ch;margin:0}.facilitator-help-details{max-width:100%}.facilitator-help-summary{color:var(--text-strong);cursor:pointer;font-family:var(--heading);padding:4px 0;font-size:1.1rem;font-weight:600;list-style-position:outside}.facilitator-help-body{border-top:1px solid var(--border);margin-top:14px;padding-top:8px}.facilitator-help-panel .help-block{margin-top:16px}.facilitator-help-panel .help-block:first-of-type{margin-top:8px}.design-loop-panel{background:var(--surface-strong);border:1px solid var(--border);border-radius:18px;margin-bottom:20px;padding:16px 18px}.design-loop-title{color:var(--text-strong);font-family:var(--heading);margin:0 0 10px;font-size:1.05rem;font-weight:600}.design-loop-steps{color:var(--text);margin:0;padding-left:1.25rem;font-size:.92rem;line-height:1.5}.design-loop-steps li{margin-bottom:8px}.design-loop-steps li:last-child{margin-bottom:0}.loop-preview-button{vertical-align:middle;padding:6px 12px;font-size:.85rem;display:inline-flex}.tweak-note{margin-top:10px}.build-panel-header{flex-wrap:wrap;align-items:flex-start;gap:12px}.build-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}@media (width<=720px){.build-actions{justify-content:flex-start;width:100%}}
