/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}}:root{--ink:#14231d;--muted:#617069;--paper:#f5f4eb;--panel:#fffef9;--green:#0d704d;--green-dark:#074d36;--lime:#d9f25b;--orange:#ff8b42;--line:#d9ddd3}*{box-sizing:border-box}html{background:var(--paper)}body{color:var(--ink);background:var(--paper);margin:0;font-family:Arial,Helvetica,sans-serif}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent}.launch-shell{background:var(--green-dark);color:#fff;place-items:center;min-height:100svh;padding:24px;display:grid;position:relative;overflow:hidden}.launch-shell:before{content:"";opacity:.14;background-image:linear-gradient(#ffffff29 1px,#0000 1px),linear-gradient(90deg,#ffffff29 1px,#0000 1px);background-size:42px 42px;position:absolute;inset:0}.ambient{filter:blur(10px);opacity:.6;border-radius:999px;position:absolute}.ambient-one{background:#3e9b69;width:360px;height:360px;top:-150px;right:-110px}.ambient-two{opacity:.25;background:#badb3f;width:240px;height:240px;bottom:-150px;left:-80px}.launch-card{z-index:1;text-align:center;width:min(100%,510px);position:relative}.game-mark,.brand-icon{background:var(--lime);color:var(--green-dark);border-radius:18px;place-items:center;font-weight:900;display:grid}.game-mark{width:72px;height:72px;margin:0 auto 26px;font-size:26px;transform:rotate(-3deg);box-shadow:0 12px #0000001f}.eyebrow{color:var(--lime);letter-spacing:.15em;margin:0 0 13px;font-size:12px;font-weight:800}.eyebrow.dark{color:var(--green)}.launch-card h1{letter-spacing:-.055em;margin:0;font-size:clamp(48px,11vw,76px);line-height:.92}.launch-card h1 span{color:var(--lime)}.lead{color:#d8e4dc;max-width:440px;margin:24px auto 34px;font-size:17px;line-height:1.6}.name-field{text-align:left;display:block}.name-field span{color:#e7eee9;margin:0 0 8px;font-size:13px;font-weight:700;display:block}.name-field input{color:#fff;background:#ffffff1a;border:1px solid #ffffff59;border-radius:14px;outline:none;width:100%;min-height:56px;padding:0 18px;font-size:16px}.name-field input::placeholder{color:#a9bcb1}.name-field input:focus{border-color:var(--lime);box-shadow:0 0 0 3px #d9f25b33}.primary-button{background:var(--lime);width:100%;min-height:56px;color:var(--green-dark);cursor:pointer;border:0;border-radius:14px;margin-top:14px;padding:0 20px;font-weight:900;transition:transform .15s,box-shadow .15s;box-shadow:0 7px #96a932}.primary-button:active:not(:disabled){transform:translateY(5px);box-shadow:0 2px #96a932}.primary-button:disabled{opacity:.45;cursor:not-allowed}.microcopy{color:#9eb2a6;margin:20px 0 0;font-size:12px}.launch-fields-row{grid-template-columns:.75fr 1.25fr;gap:12px;margin-top:12px;display:grid}.launch-error{color:#8b3d12;text-align:left;background:#fff0e5;border-radius:12px;margin-top:14px;padding:12px 14px;font-size:13px;line-height:1.45}.teacher-entry-link{color:#d9e7de;text-underline-offset:3px;margin-top:10px;font-size:12px;display:inline-block}.dashboard-shell{background:var(--paper);min-height:100svh}.topbar{background:var(--panel);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:74px;padding:12px max(20px,50% - 525px);display:flex}.brand-button{color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;display:flex}.brand-icon{border-radius:11px;width:42px;height:42px;font-size:16px}.brand-button strong,.brand-button small{display:block}.brand-button strong{font-size:14px}.brand-button small{color:var(--muted);margin-top:2px}.player-strip{align-items:center;gap:10px;display:flex}.session-chip{color:var(--green-dark);background:#e4eee7;border-radius:999px;padding:9px 12px;font-size:12px;font-weight:800}.change-player-button{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:11px;font-weight:800}.xp-chip{color:var(--green-dark);background:#eff4d6;border-radius:999px;padding:9px 12px;font-size:13px;font-weight:800}.avatar{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:38px;height:38px;font-weight:800;display:grid}.dashboard-content{width:min(100% - 32px,1050px);margin:0 auto;padding:50px 0 80px}.welcome-row{justify-content:space-between;align-items:center;gap:28px;display:flex}.welcome-row h1{letter-spacing:-.04em;margin:0;font-size:clamp(32px,5vw,48px)}.welcome-row p:not(.eyebrow){max-width:650px;color:var(--muted);line-height:1.7}.progress-ring{--progress:0deg;background:conic-gradient(var(--green) var(--progress), #dfe3d7 0);border-radius:50%;flex:none;place-items:center;width:112px;height:112px;display:grid;position:relative}.progress-ring:before{content:"";background:var(--paper);border-radius:50%;width:88px;height:88px;position:absolute}.progress-ring div{text-align:center;position:relative}.progress-ring strong,.progress-ring span{display:block}.progress-ring strong{font-size:22px}.progress-ring span{color:var(--muted);font-size:11px}.mission-map{margin-top:54px}.section-heading{justify-content:space-between;align-items:end;margin-bottom:19px;display:flex}.section-heading h2{letter-spacing:-.025em;margin:0;font-size:25px}.section-heading>span{color:var(--muted);font-size:13px}.mission-list{gap:12px;display:grid}.mission-card{border:1px solid var(--line);text-align:left;background:var(--panel);width:100%;min-height:110px;color:var(--ink);border-radius:20px;grid-template-columns:70px 1fr auto;align-items:center;gap:20px;padding:20px 24px;transition:transform .18s,box-shadow .18s;display:grid}.mission-card:not(:disabled){cursor:pointer}.mission-card:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 10px 25px #14231d14}.mission-card.active{border:2px solid var(--green);box-shadow:0 7px #b7cbbb}.mission-card.locked{opacity:.52}.mission-number{background:#edf0e9;border-radius:16px;place-items:center;width:58px;height:58px;font-size:17px;font-weight:900;display:grid}.mission-card.active .mission-number{background:var(--green);color:#fff}.mission-card.done .mission-number{background:var(--lime);color:var(--green-dark)}.mission-copy small,.mission-copy strong,.mission-copy em{display:block}.mission-copy small{color:var(--green);letter-spacing:.12em;font-size:10px;font-weight:900}.mission-copy strong{margin-top:4px;font-size:19px}.mission-copy em{color:var(--muted);margin-top:7px;font-size:13px;font-style:normal}.mission-action{color:var(--green);font-size:13px;font-weight:800}.mission-card.locked .mission-action{color:var(--muted)}.mission-shell{background:var(--paper);min-height:100svh}.mission-topbar{background:var(--panel);border-bottom:1px solid var(--line);grid-template-columns:44px 1fr 44px;align-items:center;gap:16px;min-height:70px;padding:12px max(18px,50% - 460px);display:grid}.icon-button{border:1px solid var(--line);width:44px;height:44px;color:var(--ink);cursor:pointer;background:0 0;border-radius:12px;font-size:22px}.mission-progress{background:#dfe3d7;border-radius:999px;height:9px;overflow:hidden}.mission-progress span{border-radius:inherit;background:var(--green);height:100%;transition:width .35s;display:block}.step-counter{color:var(--muted);text-align:right;font-size:12px;font-weight:800}.mission-stage{width:min(100% - 32px,920px);margin:0 auto;padding:46px 0 80px}.stage-intro h1{letter-spacing:-.04em;margin:0;font-size:clamp(32px,6vw,48px)}.stage-intro>p:last-child{max-width:650px;color:var(--muted);line-height:1.65}.growth-machine{grid-template-columns:repeat(4,1fr);gap:12px;margin:34px 0;display:grid}.growth-node{background:var(--panel);border:1px solid var(--line);border-radius:18px;flex-direction:column;justify-content:center;min-height:134px;padding:18px;display:flex;position:relative}.growth-node:first-child{background:var(--green-dark);color:#fff}.period-label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:800}.growth-node:first-child .period-label{color:#bcd0c4}.growth-node strong{margin-top:8px;font-size:16px;display:block}.growth-node small{color:var(--green);margin-top:8px;font-weight:700}.multiplier{z-index:2;background:var(--lime);color:var(--green-dark);border-radius:999px;padding:6px 8px;font-size:11px;font-weight:900;position:absolute;top:50%;right:-28px;transform:translateY(-50%)}.question-panel{background:var(--panel);border:1px solid var(--line);border-radius:24px;padding:28px}.question-label{color:var(--green);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:10px;font-size:12px;font-weight:900;display:flex}.question-label span{background:#e4f1e9;border-radius:8px;place-items:center;width:28px;height:28px;display:grid}.question-label p{margin:0}.question-panel h2{max-width:680px;margin:18px 0 22px;font-size:23px;line-height:1.35}.option-list{gap:10px;display:grid}.option-list button{border:1px solid var(--line);width:100%;min-height:54px;color:var(--ink);text-align:left;cursor:pointer;background:#fbfbf6;border-radius:13px;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.option-list button:not(:disabled):hover{border-color:var(--green)}.option-list button.correct{border-color:var(--green);background:#e3f3e9}.option-list button b{color:var(--muted);font-size:22px}.feedback{border-radius:13px;align-items:flex-start;gap:11px;margin-top:15px;padding:14px;display:flex}.feedback span{border-radius:50%;flex:none;place-items:center;width:26px;height:26px;font-weight:900;display:grid}.feedback p{margin:2px 0 0;font-size:14px;line-height:1.5}.feedback.success{color:#07553a;background:#e2f2e8}.feedback.success span{background:var(--green);color:#fff}.feedback.retry{color:#914316;background:#fff0e5}.feedback.retry span{background:var(--orange);color:#fff}.mission-next{max-width:260px;margin-left:auto;display:block}.proof-layout{grid-template-columns:250px 1fr;align-items:start;gap:22px;margin-top:34px;display:grid}.proof-trail{background:var(--green-dark);color:#fff;border-radius:20px;padding:22px}.proof-trail>p{color:#bbcec3;letter-spacing:.1em;text-transform:uppercase;margin:0 0 18px;font-size:11px;font-weight:900}.trail-line{opacity:.42;grid-template-columns:34px 1fr;align-items:center;gap:10px;min-height:56px;display:grid}.trail-line+.trail-line{border-top:1px solid #ffffff21}.trail-line>span{border:1px solid #ffffff47;border-radius:9px;place-items:center;width:28px;height:28px;font-size:11px;font-weight:800;display:grid}.trail-line strong{font-size:14px}.trail-line.current{opacity:1}.trail-line.current>span{background:var(--lime);color:var(--green-dark);border-color:#0000}.trail-line.revealed{opacity:1;color:var(--lime)}.proof-card{border:1px solid var(--line);background:var(--panel);border-radius:24px;padding:28px}.proof-label,.worked-step{color:var(--green);letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:900}.formula-display{color:var(--green-dark);text-align:center;background:#ecf1e9;border-radius:16px;margin:18px 0;padding:26px 18px;font-family:Georgia,Times New Roman,serif;font-size:clamp(26px,5vw,38px)}.proof-card h2{margin:0 0 20px;font-size:21px;line-height:1.4}.formula-options{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.formula-options button{border:1px solid var(--line);min-height:70px;color:var(--ink);cursor:pointer;background:#fbfbf6;border-radius:14px;padding:12px;font-family:Georgia,Times New Roman,serif;font-size:20px}.formula-options button:not(:disabled):hover{border-color:var(--green)}.formula-options button.selected.right{border-color:var(--green);color:var(--green-dark);background:#e3f3e9}.formula-options button.selected.wrong{border-color:var(--orange);color:#914316;background:#fff0e5}.pattern-strip{grid-template-columns:repeat(4,1fr);gap:10px;margin:34px 0 18px;display:grid}.pattern-strip>div{border:1px solid var(--line);background:var(--panel);border-radius:17px;flex-direction:column;justify-content:center;align-items:center;min-height:115px;padding:15px;display:flex}.pattern-strip span{color:var(--muted);font-size:12px;font-weight:800}.pattern-strip strong{color:var(--green-dark);margin-top:12px;font-family:Georgia,Times New Roman,serif;font-size:19px}.pattern-strip .mystery{border:2px dashed var(--green);background:#eaf3e8}.pattern-strip .mystery strong{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:40px;height:40px;font-family:Arial,sans-serif;display:grid}.formula-question{margin-top:0}.vault-open{background:var(--green-dark);color:#fff;border-radius:28px;margin-top:34px;padding:40px;box-shadow:0 12px #b9cbbd}.vault-open>p{color:var(--lime);text-align:center;letter-spacing:.13em;margin:0;font-size:11px;font-weight:900}.master-formula{color:var(--lime);text-align:center;margin:24px auto 34px;font-family:Georgia,Times New Roman,serif;font-size:clamp(38px,8vw,68px)}.master-formula sub,.master-formula sup,.result-concept sub,.result-concept sup{font-size:.55em}.symbol-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.symbol-grid>div{background:#ffffff1a;border-radius:13px;grid-template-columns:50px 1fr;align-items:center;gap:10px;padding:14px;display:grid}.symbol-grid strong{color:var(--lime);font-family:Georgia,Times New Roman,serif;font-size:22px}.symbol-grid span{color:#d5e1da;font-size:13px;line-height:1.45}.concept-link{border-left:4px solid var(--lime);background:#ffffff14;margin-top:18px;padding:18px}.concept-link span{color:var(--lime);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:900}.concept-link p{margin:7px 0 0;line-height:1.55}.vault-open .mission-next{box-shadow:0 7px #00000040}.scenario-card{background:var(--green-dark);color:#fff;border-radius:22px;margin:32px 0 14px;padding:26px 28px}.scenario-card>span{color:var(--lime);letter-spacing:.12em;font-size:10px;font-weight:900}.scenario-card p{margin:10px 0 0;font-size:18px;line-height:1.65}.example-panel{margin-top:0}.option-list button.incorrect{border-color:var(--orange);background:#fff0e5}.arena-gate{background:var(--green-dark);color:#fff;text-align:center;border-radius:28px;margin-top:34px;padding:38px}.arena-clock{color:var(--lime);letter-spacing:-.05em;font-size:clamp(54px,13vw,90px);font-weight:900}.arena-rules{grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0;display:grid}.arena-rules>div{background:#ffffff1a;border-radius:14px;padding:16px 10px}.arena-rules strong,.arena-rules span{display:block}.arena-rules strong{color:var(--lime);font-size:20px}.arena-rules span{color:#c8d7cf;margin-top:5px;font-size:11px}.arena-gate>p{color:#c8d7cf;font-size:13px}.arena-start{max-width:370px}.arena-shell{background:var(--green-dark);color:#fff;min-height:100svh}.arena-topbar{border-bottom:1px solid #ffffff1f;grid-template-columns:46px 1fr 1fr auto;align-items:center;gap:18px;min-height:80px;padding:12px max(18px,50% - 450px);display:grid}.dark-button{color:#fff;border-color:#ffffff3d}.arena-stat small,.arena-stat strong{display:block}.arena-stat small{color:#a8bbb0;letter-spacing:.12em;font-size:9px;font-weight:900}.arena-stat strong{color:var(--lime);margin-top:2px;font-size:18px}.timer-chip{background:var(--lime);min-width:92px;color:var(--green-dark);text-align:center;border-radius:12px;padding:12px 15px;font-size:20px;font-weight:900}.timer-chip.urgent{background:var(--orange);color:#fff;animation:1s infinite pulse}@keyframes pulse{50%{opacity:.5}}.arena-stage{width:min(100% - 32px,820px);margin:0 auto;padding:34px 0 80px}.streak-line{justify-content:flex-end;align-items:center;gap:8px;display:flex}.streak-line span{color:#a8bbb0;font-size:12px}.streak-line strong{color:var(--lime);background:#ffffff1a;border-radius:10px;padding:7px 10px}.arena-question{background:var(--panel);color:var(--ink);border-radius:26px;margin-top:20px;padding:34px}.arena-question>p{color:var(--green);letter-spacing:.12em;margin:0;font-size:10px;font-weight:900}.arena-question h1{letter-spacing:-.025em;margin:15px 0 28px;font-size:clamp(23px,5vw,34px);line-height:1.35}.arena-options{grid-template-columns:1fr 1fr;gap:11px;display:grid}.arena-options button{border:1px solid var(--line);min-height:76px;color:var(--ink);text-align:left;cursor:pointer;background:#fbfbf6;border-radius:15px;align-items:center;gap:12px;padding:14px;display:flex}.arena-options button>span{width:34px;height:34px;color:var(--green-dark);background:#e7ebe3;border-radius:10px;flex:none;place-items:center;font-size:12px;font-weight:900;display:grid}.arena-options button>strong{font-size:15px;line-height:1.35}.arena-options button.right{border-color:var(--green);background:#e3f3e9}.arena-options button.wrong{border-color:var(--orange);background:#fff0e5}.arena-feedback{border-radius:14px;margin-top:16px;padding:16px}.arena-feedback.right{color:#07553a;background:#e2f2e8}.arena-feedback.wrong{color:#914316;background:#fff0e5}.arena-feedback p{margin:6px 0 13px;font-size:13px;line-height:1.5}.arena-feedback button{color:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:900}.result-shell{background:var(--green-dark);place-items:center;min-height:100svh;padding:30px 18px;display:grid}.result-card{background:var(--panel);text-align:center;border-radius:30px;width:min(100%,680px);padding:38px;box-shadow:0 14px #0000002e}.result-seal{background:var(--lime);width:74px;height:74px;color:var(--green-dark);border-radius:22px;place-items:center;margin:0 auto 20px;font-size:34px;font-weight:900;display:grid;transform:rotate(-4deg)}.result-card h1{letter-spacing:-.045em;margin:0;font-size:clamp(34px,7vw,52px)}.result-name{color:var(--muted);margin:9px 0 24px;font-size:18px}.result-score{background:var(--green-dark);color:#fff;border-radius:18px;padding:23px}.result-score span,.result-score strong,.result-score small{display:block}.result-score span{color:#b8c9bf;letter-spacing:.12em;font-size:10px;font-weight:900}.result-score strong{color:var(--lime);font-size:56px}.result-score small{color:#b8c9bf}.result-stats{grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0;display:grid}.result-stats>div{background:#edf0e9;border-radius:14px;padding:16px 8px}.result-stats strong,.result-stats span{display:block}.result-stats strong{color:var(--green-dark);font-size:23px}.result-stats span{color:var(--muted);margin-top:4px;font-size:10px}.result-concept{border:1px solid var(--line);border-radius:16px;padding:20px}.result-concept>span{color:var(--green);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:900}.result-concept>strong{color:var(--green-dark);margin:12px 0;font-family:Georgia,Times New Roman,serif;font-size:30px;display:block}.result-concept p{color:var(--muted);margin:0;font-size:13px;line-height:1.55}.screenshot-note{color:var(--muted);font-size:11px}.result-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.result-actions button{border:1px solid var(--line);min-height:48px;color:var(--green-dark);cursor:pointer;background:0 0;border-radius:12px;font-weight:800}.result-actions button.solid{border-color:var(--green);background:var(--green);color:#fff;grid-column:1/-1}.teacher-shell{background:#f3f5ef;min-height:100svh}.teacher-topbar{background:var(--panel);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:74px;padding:12px max(20px,50% - 610px);display:flex}.teacher-topbar .brand-button{text-decoration:none}.teacher-user{color:var(--muted);align-items:center;gap:9px;font-size:13px;font-weight:700;display:flex}.live-dot{background:#20a566;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 5px #dff2e8}.teacher-content{width:min(100% - 32px,1220px);margin:0 auto;padding:42px 0 80px}.teacher-heading{justify-content:space-between;align-items:end;gap:24px;display:flex}.teacher-heading h1{letter-spacing:-.04em;margin:0;font-size:clamp(32px,5vw,48px)}.teacher-heading p:not(.eyebrow){color:var(--muted);margin:8px 0 0}.teacher-primary,.create-session-card button,.student-table-card button{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:12px;min-height:44px;padding:0 17px;font-weight:800}.create-session-card{border:1px solid var(--line);background:var(--panel);border-radius:18px;grid-template-columns:1.4fr 1fr auto;align-items:end;gap:12px;margin-top:22px;padding:20px;display:grid}.create-session-card label span,.teacher-controls label span{color:var(--muted);text-transform:uppercase;letter-spacing:.07em;margin-bottom:7px;font-size:11px;font-weight:800;display:block}.create-session-card input,.teacher-controls select{border:1px solid var(--line);width:100%;min-height:44px;color:var(--ink);background:#fff;border-radius:11px;outline:none;padding:0 13px}.create-session-card input:focus,.teacher-controls select:focus{border-color:var(--green);box-shadow:0 0 0 3px #e3f0e8}.create-session-card button:disabled{opacity:.45;cursor:not-allowed}.teacher-error{color:#8b3d12;background:#fff0e5;border-radius:12px;margin-top:16px;padding:13px 15px}.teacher-controls{grid-template-columns:minmax(220px,1.4fr) minmax(150px,.7fr) auto auto;align-items:end;gap:12px;margin-top:28px;display:grid}.session-toggle,.export-button{border:1px solid var(--green);min-height:44px;color:var(--green);cursor:pointer;background:0 0;border-radius:11px;padding:0 15px;font-weight:800}.session-toggle.close{color:#95431a;border-color:#ba5d2c}.export-button:disabled{opacity:.45;cursor:not-allowed}.session-banner{border-radius:16px;grid-template-columns:auto auto 1fr;align-items:center;gap:14px;margin-top:18px;padding:17px 20px;display:grid}.session-banner.active{background:var(--green-dark);color:#fff}.session-banner.closed{color:var(--ink);background:#e4e7df}.session-banner>span{background:var(--lime);color:var(--green-dark);text-transform:uppercase;border-radius:8px;padding:7px 9px;font-size:10px;font-weight:900}.session-banner.closed>span{background:#c8cdc3}.session-banner strong{letter-spacing:.08em;font-size:20px}.session-banner p{color:inherit;opacity:.75;margin:0;font-size:12px}.teacher-stats{grid-template-columns:repeat(4,1fr);gap:12px;margin-top:18px;display:grid}.teacher-stats>div{border:1px solid var(--line);background:var(--panel);border-radius:17px;padding:20px}.teacher-stats span,.teacher-stats strong{display:block}.teacher-stats span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:800}.teacher-stats strong{color:var(--green-dark);margin-top:8px;font-size:30px}.student-table-card{border:1px solid var(--line);background:var(--panel);border-radius:20px;margin-top:18px;overflow:hidden}.table-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:20px 22px;display:flex}.table-heading h2{margin:0;font-size:20px}.table-heading p{color:var(--muted);margin:5px 0 0;font-size:11px}.student-table-wrap{overflow-x:auto}.student-table{border-collapse:collapse;width:100%;min-width:850px}.student-table th{color:var(--muted);text-align:left;text-transform:uppercase;letter-spacing:.06em;background:#edf1ea;padding:12px 15px;font-size:10px}.student-table td{vertical-align:middle;border-top:1px solid #e7e9e3;padding:15px;font-size:13px}.student-table td strong,.student-table td span:not(.status-pill){display:block}.student-table td span:not(.status-pill){color:var(--muted);margin-top:4px;font-size:11px}.status-pill{border-radius:999px;padding:6px 9px;font-size:10px;font-weight:900;display:inline-block}.status-pill.live{color:#08613f;background:#dcf3e6}.status-pill.done{color:#4e6009;background:#eaf1bb}.status-pill.idle{color:#697069;background:#e9ebe7}.empty-table{color:var(--muted);text-align:center;padding:50px!important}.teacher-auth-shell{background:var(--green-dark);place-items:center;min-height:100svh;padding:24px;display:grid}.teacher-auth-card{background:var(--panel);text-align:center;border-radius:24px;width:min(100%,520px);padding:36px}.teacher-auth-card h1{margin:0;font-size:32px}.teacher-auth-card p:not(.eyebrow){color:var(--muted);line-height:1.6}.teacher-link-button{background:var(--green);color:#fff;border-radius:12px;margin-top:20px;padding:14px;font-weight:800;text-decoration:none;display:block}@media (width<=720px){.topbar{padding-inline:16px}.brand-button small,.xp-chip,.session-chip,.change-player-button{display:none}.dashboard-content{padding-top:34px}.welcome-row{align-items:flex-start}.progress-ring{width:90px;height:90px}.progress-ring:before{width:70px;height:70px}.mission-card{grid-template-columns:52px 1fr;gap:14px;padding:16px}.mission-number{border-radius:14px;width:48px;height:48px}.mission-action{grid-column:2}.growth-machine{grid-template-columns:1fr 1fr;gap:20px 10px}.multiplier{right:-19px}.growth-node:nth-child(2) .multiplier{inset:auto auto -17px 50%;transform:translate(-50%)rotate(90deg)}.proof-layout{grid-template-columns:1fr}.proof-trail{grid-template-columns:repeat(4,1fr);gap:6px;padding:14px;display:grid}.proof-trail>p{grid-column:1/-1;margin-bottom:5px}.trail-line{text-align:center;min-height:0;display:block}.trail-line+.trail-line{border:0}.trail-line>span{margin:0 auto 7px}.trail-line strong{font-size:10px}.formula-options{grid-template-columns:1fr}.formula-options button{min-height:56px}.pattern-strip{grid-template-columns:1fr 1fr}.teacher-content{padding-top:28px}.teacher-heading{align-items:flex-start}.create-session-card,.teacher-controls{grid-template-columns:1fr 1fr}.create-session-card label:first-child{grid-column:1/-1}.teacher-stats{grid-template-columns:1fr 1fr}.session-banner{grid-template-columns:auto 1fr}.session-banner p{grid-column:1/-1}}@media (width<=460px){.launch-shell{padding:24px 18px}.game-mark{width:62px;height:62px}.launch-fields-row{grid-template-columns:1fr}.welcome-row{display:block}.progress-ring{margin-top:24px}.section-heading{align-items:flex-start}.section-heading>span{display:none}.mission-copy em{line-height:1.45}.mission-stage{padding-top:32px}.question-panel{padding:20px 16px}.growth-node{min-height:120px;padding:14px 12px}.growth-node strong{font-size:14px}.growth-node small{font-size:11px}.mission-next{max-width:none}.vault-open{padding:26px 18px}.symbol-grid{grid-template-columns:1fr}.arena-gate{padding:28px 16px}.arena-rules{gap:6px}.arena-rules strong{font-size:16px}.arena-topbar{grid-template-columns:44px 1fr auto;gap:10px}.arena-stat:nth-of-type(2){display:none}.timer-chip{min-width:80px;font-size:17px}.arena-question{padding:24px 16px}.arena-options{grid-template-columns:1fr}.result-card{padding:28px 16px}.result-stats{gap:5px}.result-actions{grid-template-columns:1fr}.result-actions button.solid{grid-column:auto}.teacher-heading{display:block}.teacher-primary{width:100%;margin-top:18px}.create-session-card,.teacher-controls{grid-template-columns:1fr}.create-session-card label:first-child{grid-column:auto}}
