/* Builder's Atlas: midnight library, warm paper, brass, ceramic sage. */
:root{--bg:#101e29;--paper:#172935;--panel:#1d3340;--ink:#eee9dc;--muted:#acb9bc;--line:#304552;--blue:#b4d3c8;--accent:#acccba;--soft:#233b47;--yellow:#d6b67e;--green:#a8cbb0;--red:#f1b0a3;--header:#101e29f5}
:root[data-theme=light]{--bg:#f1f3ef;--paper:#fff;--panel:#e7efeb;--ink:#203b43;--muted:#52696d;--line:#cbd8d4;--blue:#366854;--accent:#416e5c;--soft:#e0eae6;--yellow:#8b6224;--green:#416e5c;--red:#a54332;--header:#f1f3eff5}
select option{background:var(--paper);color:var(--ink)}
body{background:var(--bg)}h1,h2,h3{color:var(--ink)}.brand-mark{background:#bfd3bc;color:#1d363c;box-shadow:inset 0 1px 0 #fff8,0 3px 0 #566c62;border-radius:10px;transform:rotate(-5deg)}.brand{font-weight:700;letter-spacing:-.65px}.eyebrow{letter-spacing:0;text-transform:none}.simple-header{max-width:1280px;height:92px;padding:0 42px;border-bottom:1px solid var(--line);background:transparent;backdrop-filter:none;position:relative}.dictionary-launch{color:var(--ink)}.xp{color:var(--yellow);background:transparent;border:0;font-weight:500}.primary{background:#aecab5;color:#18362d;border-color:#cce0c9;box-shadow:0 3px 0 #577568}.primary:hover{background:#c1d9c3;color:#18362d}.guide-main{padding-top:45px}.guide-main footer{font-size:12px}.entry-header{max-width:1480px;margin:auto;height:90px;padding:0 48px;border:0;background:transparent;position:relative;backdrop-filter:none}.entry-header>span{font-size:12px;color:var(--muted)}.entry-main{display:grid;grid-template-columns:minmax(0,1.22fr) minmax(390px,.85fr);max-width:1480px;margin:0 auto;padding:0 48px 38px;gap:64px;align-items:center;min-height:calc(100dvh - 90px)}.entry-story{align-self:stretch;display:flex;flex-direction:column;justify-content:center;min-width:0}.entry-art{position:relative;border-radius:160px 160px 18px 18px;overflow:hidden;background:#152c42;border:1px solid #48627655}.entry-art img{display:block;width:100%;height:auto;aspect-ratio:1.5;object-fit:cover}.entry-story-copy{padding:29px 4px 14px}.edition-label{font-size:12px;color:var(--yellow);display:block;margin-bottom:14px}.entry-story h1{font-size:clamp(30px,3vw,46px);letter-spacing:-1.7px;line-height:1.17;max-width:640px;margin-bottom:17px;font-weight:600}.entry-story p{font-size:15px;color:var(--muted);line-height:1.7;margin:0}.entry-facts{display:flex;gap:28px;margin-top:25px;border-top:1px solid var(--line);padding-top:22px;font-size:12px;color:var(--muted)}.entry-facts b{display:block;font-family:Manrope,sans-serif;font-size:22px;color:var(--ink);font-weight:600;margin-bottom:5px}.entry-form-panel{border-left:1px solid var(--line);padding:15px 0 15px 60px}.entry-form-inner{max-width:390px;margin:auto}.bookplate{display:block;color:var(--yellow);font-size:12px;margin-bottom:16px}.entry-form-inner h2{font-size:clamp(25px,2.2vw,32px);letter-spacing:-1.2px;font-weight:600;margin:0 0 14px;line-height:1.25}.entry-intro{font-size:14px;color:var(--muted);line-height:1.75;margin:0 0 28px}.entry-form-inner .field{font-size:13px;margin-bottom:20px;gap:8px}.entry-form-inner input{font-size:14px!important;min-height:50px!important;background:var(--paper)!important;border-radius:8px!important;padding:13px 15px!important}.entry-form-inner input::placeholder{color:var(--muted);opacity:.85}.field-hint{font-size:11px;color:var(--muted);font-weight:400}.entry-privacy{font-size:11px;color:var(--muted);line-height:1.65;margin:6px 0 21px}.entry-submit{display:flex;align-items:center;justify-content:space-between;width:100%;background:#bfd3bc;border:1px solid #d3e3c8;color:#20392e;border-radius:9px;min-height:54px;font-size:14px;font-weight:700;box-shadow:0 3px 0 #5c7b63;padding:15px 20px}.entry-submit:hover{background:#d0e0c9;border-color:#dfecd9}.entry-submit:disabled{cursor:wait;opacity:.7}.entry-submit>span:last-child{font-size:21px;font-weight:400}.entry-status{font-size:11px;color:var(--muted);text-align:center;line-height:1.6;min-height:18px;margin:14px 0 25px}.entry-error{font-size:13px;padding:12px 14px;border-left:2px solid var(--red);color:var(--red);background:var(--paper);line-height:1.5}.entry-signoff{display:flex;gap:13px;align-items:center;border-top:1px solid var(--line);padding-top:20px}.entry-signoff>span{font-size:27px;color:var(--yellow)}.entry-signoff p{font-size:12px;line-height:1.7;color:var(--muted);margin:0}.entry-signoff a{color:var(--ink)}.entry-about{display:inline-flex;align-items:center;font-size:11px;color:var(--muted);min-height:44px;margin-top:5px}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
/* Chapter atlas. */
#app[data-screen=atlas] .guide-main{max-width:1280px;padding:30px 42px 25px}.atlas-topline{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:13px;color:var(--muted);margin-bottom:24px}.atlas-topline .chapter-select select{background:transparent;max-width:320px;padding:10px 34px 10px 14px;font-size:12px;color:var(--ink);border-color:var(--line)}.atlas-hero{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:12px;min-height:440px;position:relative;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:var(--paper)}.atlas-copy{padding:38px 0 40px 42px;position:relative;z-index:1}.chapter-location{display:flex;align-items:center;gap:10px;color:var(--yellow);font-size:12px;margin-bottom:24px}.chapter-location>span{font-size:21px}.atlas-copy h1{font-size:clamp(34px,3.7vw,50px);line-height:1.12;font-weight:600;letter-spacing:-2px;margin:0 0 23px;max-width:470px}.atlas-description{font-size:15px;line-height:1.8;color:var(--muted);max-width:34ch;margin-bottom:25px}.atlas-cta{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;background:#bed3bb;color:#20392e;font-weight:700;font-size:14px;min-height:51px;padding:15px 24px;border-radius:9px;box-shadow:0 3px 0 #5c7b63;border:1px solid #d3e3c8}.atlas-cta:hover{background:#d0e0c9}.atlas-progress{max-width:260px;margin-top:30px}.atlas-progress progress{margin:0 0 10px;width:100%;height:4px;background:var(--line)}.atlas-progress span{font-size:11px;color:var(--muted)}.atlas-model{margin:0;min-width:0;position:relative;align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding:12px 0 18px}.world-viewport{position:relative;width:100%;height:380px;touch-action:pan-y}.world-viewport canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.world-viewport img{position:absolute;inset:3%;width:94%;height:94%;object-fit:cover;border-radius:14px}.world-viewport[data-fallback=true] canvas{display:none}.atlas-model figcaption{font-size:12px;color:var(--ink);text-align:center;line-height:1.8;padding:0 20px}.atlas-model figcaption span{display:block;font-size:10px;color:var(--muted)}.atlas-body{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(250px,.7fr);gap:78px;align-items:start;margin-top:44px}.trail-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:20px}.trail-heading h2{font-size:15px;letter-spacing:-.3px;font-weight:600;margin:0}.trail-heading>span{font-size:11px;color:var(--muted);white-space:nowrap}.learning-trail{margin:0;padding:16px 0 0;list-style:none}.trail-stop{min-height:94px;padding:15px 0;gap:22px}.trail-stop:nth-child(n){margin-left:0}.trail-stop:before{left:24px;top:69px;height:35px;width:1px;transform:none!important;background:var(--line)}.trail-node{width:50px;height:48px;border-radius:15px;background:var(--paper);border:1px solid #48606c;box-shadow:0 3px 0 #0a151d;color:var(--muted);font-size:15px}.trail-node:hover{box-shadow:0 1px 0 #0a151d}.trail-stop.current .trail-node{background:#b8d0bd;color:#233c30;border-color:#d4e3ce;box-shadow:0 3px 0 #5c7b63,0 0 0 5px #b8d0bd0a}.trail-stop.complete .trail-node{background:#2b473e;border-color:#506f5e;color:#d0e6c5;box-shadow:0 3px 0 #162f23}.trail-stop.current .trail-label{color:var(--yellow);font-weight:500}.trail-label{font-size:10px;margin-bottom:5px}.trail-stop h2{font-size:15px;max-width:none;line-height:1.55;font-weight:500}.trail-stop h2 a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;color:var(--ink)}.trail-stop h2 a:hover{text-decoration:underline}.trail-stop p{font-size:12px;margin:2px 0 0}.practice-stop .trail-node{font-size:23px;border-radius:15px;color:var(--yellow)}.atlas-fieldnote{display:block;position:static;top:auto;max-height:none;border:1px solid var(--line);padding:30px 29px 24px;border-radius:13px;background:var(--paper);margin:0;overflow:visible}.fieldnote-icon{font-size:30px;color:var(--yellow)}.atlas-fieldnote h2{font-size:18px;line-height:1.5;font-weight:500;margin:20px 0 16px}.atlas-fieldnote p{font-size:14px;line-height:1.9;color:var(--muted);margin:0 0 25px}.fieldnote-signature{font-size:11px;color:var(--yellow)}.fieldnote-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:27px;padding-top:18px}.fieldnote-bottom span{font-size:10px;line-height:1.7;color:var(--muted)}.fieldnote-bottom b{font-size:32px;font-weight:400;color:var(--yellow);opacity:.7}.path-next{padding:25px 0 0 72px}
/* The lesson remains a quiet reading surface; its little stage gains room and depth. */
.player-header{height:93px;max-width:1060px}.player-progress progress{height:6px}.player-progress progress::-webkit-progress-value{background:#a8cbb0}.player-main{max-width:850px;padding:20px 36px 32px}.player-heading h1{font-weight:600;font-size:35px;letter-spacing:-1.2px;max-width:760px}.player-heading .eyebrow{color:var(--yellow);font-size:12px;margin-bottom:15px}.player-situation{border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:20px 23px}.situation-marker{color:var(--yellow)}.player-situation p{font-size:16px;line-height:1.8}.simple-scene{margin:20px 0 22px}.simple-scene .viewport{height:290px;border-radius:18px;background:var(--paper);border:1px solid var(--line);overflow:hidden}.simple-scene figcaption{margin-top:17px}.figure-label{font-size:11px;margin-bottom:14px}.scene-facts{gap:10px}.scene-facts li{border-radius:0 0 6px 6px;padding:13px 12px 16px;background:transparent}.scene-facts li>strong{font-size:12px;line-height:1.65}.fact-heading{font-size:10px}.learn-copy .everyday-bridge{border-color:var(--yellow);padding-left:18px;font-size:15px}.everyday-bridge>span{color:var(--yellow);font-size:11px;margin-bottom:7px}.learn-copy .plain-idea{font-size:16px;line-height:1.85}.lesson-keepsake{display:flex;gap:15px;padding:20px 22px;margin:26px 0;background:var(--paper);border:1px solid var(--line);border-radius:11px}.lesson-keepsake>span{font-size:25px;color:var(--yellow)}.lesson-keepsake>div>span{font-size:11px;color:var(--yellow)}.lesson-keepsake p{font-size:14px;line-height:1.75;margin:6px 0 0;color:var(--ink)}.player-action{background:#bfd3bc;border-color:#d3e3c8;color:#20392e;box-shadow:0 3px 0 #5c7b63;border-radius:9px}.player-action:hover:not(:disabled){background:#d0e0c9;border-color:#dfecd9}.player-bottom{padding-top:20px;padding-bottom:24px}.player-action:disabled{background:var(--soft);color:var(--muted);box-shadow:0 3px 0 #0a151d}.answer-option{border-width:1px;box-shadow:0 3px 0 #0a151d;border-radius:11px}.answer-option:has(:checked){background:#233c37;color:var(--ink);border-color:#94bda6;box-shadow:0 3px 0 #42634d}.lesson-player:not([data-stage=learn]) .simple-scene .viewport{height:170px}.lesson-player:not([data-stage=learn]) .simple-scene{margin:13px 0 20px}.lesson-player:not([data-stage=learn]) .player-heading h1{font-size:21px}.lesson-player:not([data-stage=learn]) .player-situation p{font-size:14px}#answer-form legend{font-size:23px;font-weight:600}.floating-label{background:#213744;border-color:#aacbbb;color:#eee9dc}.floating-label.active{background:#d5b982;color:#20392e;box-shadow:none}.no-webgl .scene-fallback{padding:26px 20px}.no-webgl .scene-fallback>span{color:var(--yellow)}.simple-scene.no-webgl .viewport{height:auto;min-height:145px}.more-menu nav button{font-size:14px!important}.more-menu{z-index:10}
:root[data-theme=light] .entry-submit,:root[data-theme=light] .atlas-cta,:root[data-theme=light] .player-action{background:#345e4d;color:#fff;border-color:#547d69;box-shadow:0 3px 0 #1c4031}:root[data-theme=light] .atlas-fieldnote{background:#e7eeE8}:root[data-theme=light] .answer-option:has(:checked){background:#e0eee3;color:var(--ink)}:root[data-theme=light] .everyday-bridge>span,:root[data-theme=light] .trail-stop.current .trail-label{color:var(--yellow)}:root[data-theme=light] .trail-node{background:#e4ede7;box-shadow:0 3px 0 #b7c6bf}:root[data-theme=light] .trail-stop.current .trail-node{background:#365e4b;color:#fff}:root[data-theme=light] .scene-facts li b{color:#456b70}:root[data-theme=light] .scene-facts li:nth-child(2) b{color:#785994}:root[data-theme=light] .scene-facts li:nth-child(3) b{color:#8b6224}:root[data-theme=light] .scene-facts li:nth-child(4) b{color:#3c704a}
@media(min-width:1500px){.entry-main{gap:80px}.entry-form-panel{padding-left:80px}}
@media(max-width:1000px){.entry-main{gap:35px;padding:0 30px 30px;grid-template-columns:1fr 1fr}.entry-header{padding:0 30px}.entry-form-panel{padding-left:32px}.entry-story h1{font-size:32px}.entry-facts{gap:19px}.entry-facts span{font-size:10px}.atlas-copy{padding-left:28px}.atlas-copy h1{font-size:38px}.atlas-body{gap:30px;grid-template-columns:1.5fr .9fr}.world-viewport{height:350px}.atlas-fieldnote{padding:25px 22px}.trail-heading{align-items:flex-start;flex-direction:column;gap:7px}}
@media(max-width:720px){.entry-header{height:72px;padding:0 22px}.entry-header>span{display:none}.entry-header .brand{font-size:17px}.entry-main{display:flex;flex-direction:column;gap:28px;padding:0 22px 25px;min-height:0}.entry-story{display:grid;grid-template-columns:1fr;gap:17px}.entry-art{max-height:240px;border-radius:90px 90px 12px 12px}.entry-art img{aspect-ratio:1.6;max-height:240px;object-position:50% 58%}.entry-story-copy{padding:0}.entry-story h1{font-size:29px;line-height:1.2;letter-spacing:-1px;margin-bottom:11px}.edition-label{font-size:11px;margin-bottom:10px}.entry-story p{font-size:13px}.entry-story p br{display:none}.entry-facts{display:none}.entry-form-panel{padding:26px 0 0;border-left:0;border-top:1px solid var(--line);width:100%}.entry-form-inner{max-width:none}.bookplate{font-size:11px;margin-bottom:13px}.entry-form-inner h2{font-size:25px}.entry-intro{font-size:13px;margin-bottom:23px}.entry-privacy{font-size:11px}.entry-signoff{padding-top:18px}.entry-status{margin-bottom:21px}.simple-header{height:75px;padding:0 20px}.simple-header .brand{font-size:16px}.simple-header .xp{display:none}#app[data-screen=atlas] .guide-main{padding:20px 20px 25px}.atlas-topline{gap:10px;flex-wrap:wrap;margin-bottom:20px;font-size:12px}.atlas-topline>span{display:none}.atlas-topline .chapter-select{width:100%}.atlas-topline .chapter-select select{width:100%;max-width:none;font-size:12px}.atlas-hero{display:flex;flex-direction:column;gap:0;min-height:0;border-radius:17px}.atlas-copy{padding:27px 25px 0;width:100%}.chapter-location{font-size:11px;margin-bottom:18px}.atlas-copy h1{font-size:34px;letter-spacing:-1.2px;line-height:1.13;margin-bottom:18px}.atlas-description{font-size:14px;margin-bottom:21px;max-width:35ch}.atlas-cta{font-size:13px;min-height:48px;width:100%}.atlas-progress{max-width:none;margin-top:25px}.atlas-progress span{font-size:10px}.atlas-model{width:100%;padding:0 0 21px}.world-viewport{height:285px;max-width:430px;margin:auto}.atlas-model figcaption{font-size:11px}.atlas-model figcaption span{font-size:10px}.atlas-body{display:flex;flex-direction:column;gap:32px;margin-top:32px}.chapter-lessons{width:100%}.trail-heading{display:flex;flex-direction:row;align-items:center;gap:18px}.trail-heading h2{font-size:14px;max-width:21ch;line-height:1.6}.trail-heading>span{font-size:10px}.learning-trail{padding-top:15px}.trail-stop{gap:18px;min-height:97px}.trail-stop h2{font-size:14px}.trail-node{width:48px;height:47px;border-radius:14px}.trail-stop:nth-child(n){margin-left:0}.trail-stop:before{left:23px;top:68px;height:40px}.trail-label{font-size:10px}.atlas-fieldnote{width:100%;padding:25px}.atlas-fieldnote h2{margin:12px 0 12px;font-size:17px}.atlas-fieldnote p{font-size:14px;margin-bottom:20px}.fieldnote-bottom{margin-top:21px;padding-top:15px}.fieldnote-bottom b{font-size:27px}.path-next{padding-left:0;padding-top:20px}.player-main{padding:15px 21px 24px}.player-header{height:78px;padding:12px 15px}.player-heading h1{font-size:27px;letter-spacing:-.8px;margin-bottom:20px}.player-heading .eyebrow{font-size:11px}.player-situation{padding:16px}.player-situation p{font-size:14px;line-height:1.75}.simple-scene .viewport{height:215px;border-radius:12px}.simple-scene{margin:18px 0 20px}.scene-facts{gap:8px}.scene-facts li{padding:10px 8px}.scene-facts li>strong{font-size:11px}.fact-heading{font-size:10px}.learn-copy .everyday-bridge{font-size:14px;padding-left:14px}.learn-copy .plain-idea{font-size:15px}.lesson-keepsake{padding:17px;gap:12px;margin:22px 0}.lesson-keepsake>span{font-size:21px}.lesson-keepsake p{font-size:13px}.player-bottom{padding:17px 21px max(21px,env(safe-area-inset-bottom))}.lesson-player:not([data-stage=learn]) .player-heading h1{font-size:18px}.lesson-player:not([data-stage=learn]) .simple-scene .viewport{height:145px}.lesson-player:not([data-stage=learn]) .player-situation p{font-size:13px}#answer-form legend{font-size:20px}.answer-option{font-size:14px;min-height:66px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

.brand{min-height:44px}.guide-main footer a,.entry-signoff a{display:inline-flex;align-items:center;min-height:44px}.entry-signoff a{margin-block:-10px}

.locked-lab{opacity:.55;box-shadow:none;cursor:default}.learn-first{max-width:670px;margin:35px auto 70px}.learn-first h1{font-weight:600}.learn-first .small{margin-top:25px}

.entry-phone-row{display:grid;grid-template-columns:minmax(0,145px) minmax(0,1fr);gap:12px}.entry-phone-row .field{min-width:0;margin-bottom:0}.entry-phone-row input,.entry-phone-row select{min-width:0;width:100%}.entry-phone-row select{min-height:50px;background:var(--paper);font-size:13px;padding:12px 8px}.phone-hint{margin:8px 0 20px}
@media(max-width:430px){.entry-phone-row{grid-template-columns:minmax(0,125px) minmax(0,1fr);gap:10px}}
