:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#14353b;background:#f5f2e9;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 10% 3%,#e8f4e9 0,transparent 28%),radial-gradient(circle at 95% 15%,#fff0c4 0,transparent 24%),#f5f2e9}button{font:inherit;cursor:pointer}button:focus-visible{outline:4px solid #f5a524;outline-offset:3px}img{max-width:100%}.masthead{background:#123d44;color:white}.masthead-inner{max-width:1440px;margin:auto;padding:15px 32px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:11px;font-size:.78rem;letter-spacing:.16em;font-weight:800}.brand strong{color:#f8c95c}.brand-mark{font-size:2rem;color:#f8c95c;line-height:1}.icon-button{background:#ffffff20;border:1px solid #ffffff45;color:white;border-radius:12px;width:42px;height:42px;font-size:1.55rem}.app-shell{max-width:1440px;margin:auto;padding:0 32px 25px}.hero{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:35px 0 27px}.eyebrow,.lesson-kicker{margin:0 0 8px;text-transform:uppercase;letter-spacing:.16em;color:#247e80;font-size:.78rem;font-weight:900}.hero h1{font-size:clamp(2.2rem,4.2vw,4.4rem);letter-spacing:-.055em;line-height:1.03;margin:0;max-width:850px}.hero h1 em{color:#d48518;font-style:normal}.hero-copy{font-size:1.05rem;line-height:1.55;max-width:690px;margin:16px 0 0;color:#4b6262}.hero-badge{background:#fbd06a;border:7px solid #ffedb1;border-radius:50%;width:145px;height:145px;flex:none;display:grid;align-content:center;text-align:center;box-shadow:0 10px 30px #bea34330;transform:rotate(9deg)}.hero-badge span{font-weight:950;font-size:2.3rem;line-height:1}.hero-badge small{font-weight:700;font-size:.72rem}.step-nav{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:0 0 21px}.step-button{border:1px solid #d9ddd4;background:#fffef9;border-radius:15px;padding:12px 9px;display:flex;align-items:center;gap:9px;text-align:left;color:#476164;min-height:62px}.step-button .num{display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:50%;background:#e9f1ec;color:#1f6c70;font-weight:900}.step-button span:last-child{font-size:.82rem;font-weight:800;line-height:1.2}.step-button.active{background:#123d44;color:white;border-color:#123d44;box-shadow:0 8px 18px #123d4430}.step-button.active .num{background:#f8c95c;color:#123d44}.lesson{background:#fffefa;border:1px solid #e5e4d7;border-radius:25px;box-shadow:0 16px 55px #233b3511;overflow:hidden}.lesson-header{padding:28px 31px 20px;border-bottom:1px solid #ecece3;display:flex;justify-content:space-between;gap:15px}.lesson-header h2{margin:0;font-size:clamp(1.55rem,2.5vw,2.35rem);letter-spacing:-.04em}.lesson-header p:last-child{margin:8px 0 0;color:#516666;line-height:1.5}.lesson-count{align-self:flex-start;white-space:nowrap;border-radius:50px;background:#eef5f0;padding:9px 13px;color:#2a7170;font-weight:900;font-size:.82rem}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 315px;align-items:stretch}.stage{padding:26px;min-height:550px}.coach{background:#eef6f0;border-left:1px solid #dbe7da;padding:26px}.coach h3{font-size:1.1rem;margin:0 0 13px}.coach p{line-height:1.5;color:#3f5a59}.coach-card{background:white;border:1px solid #dae7df;border-radius:17px;padding:18px;margin-bottom:15px}.coach-card h4{margin:0 0 8px;font-size:1rem}.coach-card p{margin:0}.prompt{background:#fff2c9;border-left:5px solid #e4a926;border-radius:8px;padding:13px 15px;color:#57471c;font-weight:750;line-height:1.4}.lesson-footer{padding:17px 27px;border-top:1px solid #ecece3;display:flex;justify-content:space-between;gap:12px}.button{border:0;border-radius:12px;padding:11px 16px;font-weight:800;min-height:44px}.button.primary{background:#146c72;color:white}.button.quiet{background:#edf2ee;color:#23575b}.button.gold{background:#f6c252;color:#243e3d}.button:disabled{opacity:.45;cursor:not-allowed}.button.tiny{padding:7px 10px;min-height:34px;font-size:.85rem}.button.active{box-shadow:inset 0 0 0 3px #0f777a}.controls,.segmented{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin-bottom:18px}.segmented .button{background:#eef3ef}.segmented .button.active{background:#144e55;color:white;box-shadow:none}.stage-layout{display:grid;grid-template-columns:minmax(310px,580px) minmax(210px,1fr);gap:24px;align-items:start}.board-wrap{max-width:580px}.board{position:relative;width:100%;aspect-ratio:1;background:#c6d9bd;border:9px solid #235a59;border-radius:15px;box-shadow:0 10px 22px #153d3c28;overflow:hidden;isolation:isolate}.board-grid{position:absolute;inset:0;display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(5,1fr);z-index:3}.board-cell{border:1px solid #2243404f;background:transparent;color:transparent;padding:0;position:relative}.board-cell:hover{background:#fff8ba55}.board-cell.candidate:after{content:"+";position:absolute;inset:24%;border-radius:50%;background:#13756dcd;color:white;font-size:1.25rem;font-weight:900;display:grid;place-items:center}.board-cell.highlight{background:#f9d44872;box-shadow:inset 0 0 0 4px #e1a323}.board-cell.castle-choice:hover{background:#f5c84a77}.placed-image{position:absolute;z-index:1;width:40%;height:20%;max-width:none;object-fit:fill;transform-origin:50% 50%;pointer-events:none}.starter-image{position:absolute;width:20%;height:20%;object-fit:cover;z-index:2}.castle-symbol{position:absolute;width:20%;height:20%;z-index:4;display:grid;place-items:center;pointer-events:none;font-size:clamp(1.7rem,4vw,3.4rem);filter:drop-shadow(0 3px 2px #174e46)}.board-help{font-size:.86rem;color:#5a6a67;line-height:1.4;margin:11px 0 0}.tile-tray{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tile-card{border:2px solid #dbe4dc;background:white;border-radius:12px;padding:7px;display:grid;gap:5px;text-align:left;color:#193d42;box-shadow:0 3px 10px #274e4310}.tile-card img{width:100%;aspect-ratio:2/1;object-fit:cover;border-radius:6px}.tile-card strong{font-size:.8rem;line-height:1.2}.tile-card.selected{border-color:#d08c16;background:#fff5db;box-shadow:0 0 0 3px #f4d17566}.tile-card.used{opacity:.42}.tile-card:disabled{cursor:not-allowed}.tray-heading{font-weight:900;font-size:1rem;margin:0 0 11px}.status{border-radius:13px;padding:12px 14px;background:#e9f3ed;color:#255a58;font-weight:750;line-height:1.45;margin:12px 0}.status.warning{background:#fff0da;color:#794614}.status.success{background:#dcf5db;color:#256244}.math-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:19px}.math-strip div{background:#eaf3ea;padding:13px;border-radius:12px;text-align:center}.math-strip strong{display:block;font-size:1.45rem;color:#174c54}.math-strip span{font-size:.78rem;font-weight:750;color:#4c6460}.metric{background:white;border:1px solid #dde8dd;border-radius:15px;padding:15px;margin-bottom:12px}.metric .big{font-size:1.9rem;font-weight:950;color:#bd7718}.metric small{display:block;color:#57716a}.formula{font-size:1.7rem;font-weight:950;color:#1c6269;letter-spacing:-.03em}.legend-item{display:flex;gap:9px;align-items:center;margin:8px 0;font-weight:750}.legend-dot{width:17px;height:17px;border-radius:5px;flex:none}.gallery-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:15px}.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.gallery-card{border:2px solid #dce7dc;border-radius:13px;background:white;padding:6px;text-align:left}.gallery-card:hover{border-color:#ca941c}.gallery-card img{display:block;width:100%;aspect-ratio:2/1;object-fit:cover;border-radius:6px}.gallery-card span{font-weight:900;font-size:.8rem;display:block;margin:5px 3px 1px}.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.stat{border-radius:10px;padding:11px;background:white;display:flex;justify-content:space-between;gap:5px;font-weight:750}.stat strong{font-size:1.12rem}.flow{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0 20px}.flow div{background:#eef5ef;padding:13px;border-radius:11px;font-weight:800;font-size:.85rem;text-align:center}.flow b{display:block;color:#13787b;font-size:1.2rem}.comparison{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.comparison .tile-card{padding:10px}.site-footer{display:flex;justify-content:space-between;gap:15px;color:#6a7770;font-size:.75rem;padding:19px 2px}.site-footer span:last-child{text-align:right}@media(max-width:1120px){.step-nav{grid-template-columns:repeat(3,1fr)}.workspace{grid-template-columns:minmax(0,1fr) 270px}.stage-layout{grid-template-columns:minmax(260px,1fr) 205px;gap:15px}.stage{padding:19px}.coach{padding:20px}}@media(max-width:800px){.app-shell{padding:0 14px 18px}.masthead-inner{padding:12px 16px}.hero{padding:22px 0;gap:10px}.hero-badge{width:100px;height:100px;border-width:4px}.hero-badge span{font-size:1.6rem}.hero-badge small{font-size:.6rem}.step-nav{grid-template-columns:repeat(3,1fr)}.workspace{display:block}.coach{border-left:0;border-top:1px solid #dbe7da}.stage-layout{grid-template-columns:1fr}.board-wrap{margin:auto;width:min(100%,560px)}.gallery-grid{grid-template-columns:repeat(3,1fr)}.tile-tray{grid-template-columns:repeat(4,1fr)}.lesson-header{padding:23px 19px}.lesson-count{display:none}}@media(max-width:520px){.hero-badge{display:none}.hero h1{font-size:2.25rem}.hero-copy{font-size:.92rem}.step-nav{grid-template-columns:repeat(2,1fr)}.step-button{min-height:51px;padding:8px}.step-button span:last-child{font-size:.72rem}.stage{padding:13px}.coach{padding:17px}.tile-tray{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:repeat(2,1fr)}.math-strip{grid-template-columns:1fr}.lesson-footer{padding:13px;gap:7px}.lesson-footer .button{font-size:.82rem;padding:9px}.site-footer{display:block;text-align:center}.site-footer span{display:block;margin-bottom:4px}.site-footer span:last-child{text-align:center}}
