:root{--bg:#02070b;--panel:#061018;--cyan:#10d9ff;--red:#ff3b35;--gold:#f4b94a;--purple:#a65bff;--line:rgba(23,198,235,.35);--text:#eaf6f8}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:#02070b;color:var(--text);font-family:"Arial Narrow",Arial,sans-serif;letter-spacing:.03em}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}.site-header{position:sticky;top:0;z-index:20;height:58px;padding:0 18px;display:grid;grid-template-columns:150px 1fr 190px;align-items:center;border-bottom:1px solid var(--line);background:rgba(2,7,11,.94)}.story-logo{display:grid;line-height:.85}.story-logo strong{font-size:19px}.story-logo span{font-size:11px}.story-logo b{color:var(--red)}.site-header nav{display:flex;justify-content:center;gap:3vw;font-size:10px;font-weight:800;text-transform:uppercase}.site-header nav a:hover{color:var(--cyan)}.system-button{padding:11px;border:1px solid var(--red);color:#fff;text-align:center;font-size:11px;font-weight:900;box-shadow:0 0 12px #f3343344}.hero{min-height:335px;display:grid;grid-template-columns:34% 1fr 220px;border-bottom:1px solid var(--line);background:radial-gradient(circle at 65% 35%,#082e43,transparent 30%),linear-gradient(90deg,#04101a,#08040a)}.hero-copy{padding:20px}.warning{display:inline-block;padding:7px;border:1px solid var(--red);color:var(--red);font-size:9px}.hero h1{margin:12px 0;font-size:50px;line-height:.9}.hero h1 span,.hero-copy strong{color:var(--red)}.hero-copy>p:not(.warning){max-width:340px;font-size:14px;line-height:1.5}.hero-copy em{color:var(--cyan)}.actions{display:flex;gap:14px;margin:14px 0}.actions a{min-width:145px;padding:11px;text-align:center;font-size:11px;font-weight:800}.red-button{border:1px solid var(--red);background:#401010}.cyan-button{border:1px solid var(--cyan);color:var(--cyan)}.hero-copy small{font-size:7px;color:#839ba5}.hero-copy small b{color:#4ee4ae}.hero-copy small i{color:var(--red)}.character-art{position:relative;overflow:hidden;border-inline:1px solid #163645}.city{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 28px,#0b3442 29px 30px),linear-gradient(0deg,#07131d,#11172a)}.tapestry{position:absolute;right:8%;top:7%;font-size:130px;color:var(--red);text-shadow:0 0 25px var(--red)}.ernest,.maya{position:absolute;bottom:0;display:grid;place-items:center;border:2px solid #364b5d;background:linear-gradient(145deg,#17232e,#03080c);font-weight:900}.ernest{left:20%;width:180px;height:270px;clip-path:polygon(25% 0,80% 8%,100% 100%,0 100%);font-size:70px}.maya{left:47%;width:145px;height:190px;clip-path:polygon(45% 0,85% 20%,100% 100%,0 100%,10% 25%);font-size:55px;color:var(--cyan)}.metrics{margin:18px 12px;padding:12px;border:1px solid var(--cyan);background:#041019cc}.metrics h2{margin-bottom:12px;color:var(--cyan);font-size:13px}.metrics p{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #17414d;font-size:10px}.metrics p b{color:var(--cyan)}.metrics p strong{color:var(--red)}.chart{padding:15px;color:var(--red);font-size:24px}.metrics h3{padding:12px;border:1px solid var(--red);color:var(--red);font-size:10px}.numbered{display:grid;grid-template-columns:200px 1fr;border-bottom:1px solid var(--line)}.numbered>header{padding:15px;border-right:1px solid var(--line);background:#03101a}.numbered>header>b{color:var(--cyan);font-size:22px}.numbered>header h2{margin:7px 0;font-size:21px}.numbered>header p{color:#4ca9bd;font-size:9px}.subject,.test{padding:12px}.subject>p,.test>p{color:var(--red);font-size:9px}.subject h3{font-size:13px}.subject>span{font-size:9px}.choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:10px}.choice-grid button{min-height:105px;padding:13px;display:grid;grid-template-columns:45px 1fr;text-align:left;border:1px solid;background:#061018}.choice-grid button:first-letter{font-size:32px}.choice-grid b{font-size:11px}.choice-grid small{font-size:8px;line-height:1.6}.danger{border-color:var(--red)!important;color:#ff8a86}.safe{border-color:var(--cyan)!important;color:#78eaff}.purple{border-color:var(--purple)!important;color:#d1a7ff}.test{display:grid;gap:8px}.test h3{padding:12px;border:1px solid #1c4552;font-size:11px}.answers{display:grid;grid-template-columns:1fr 1fr;gap:8px}.answers button{padding:11px;border:1px solid #173d49;background:#07131b;text-align:left;font-size:9px}.answers .selected{border-color:var(--cyan);color:var(--cyan)}.numbered:has(.test){grid-template-columns:200px 1fr 300px}.classifications{padding:10px}.classifications p{padding:9px;border:1px solid;font-size:9px}.classifications p:nth-child(1){color:var(--cyan)}.classifications p:nth-child(2){color:var(--gold)}.classifications p:nth-child(3){color:var(--red)}.classifications p:nth-child(4){color:#b7d4e0}.cards-section>div{padding:10px}.feature-grid,.business-grid,.world-grid,.route-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.feature-grid article,.business-grid article,.world-grid article,.route-grid article{min-height:120px;padding:13px;border:1px solid var(--line);background:#061018;color:var(--cyan);text-align:center}.feature-grid article{font-size:30px}.feature-grid h3{font-size:11px}.feature-grid p,.world-grid p,.route-grid p{margin-top:8px;color:#c4d4d8;font-size:8px;line-height:1.5}.business-grid{grid-template-columns:repeat(5,1fr)}.business-grid article,.world-grid article{display:grid;gap:8px;align-content:center;font-size:25px}.business-grid b,.world-grid b,.route-grid b{font-size:9px}.business-grid span{font-size:8px}.business-grid article:nth-child(2),.business-grid article:nth-child(3),.business-grid article:nth-child(5){color:var(--gold);border-color:#9d722c}.world-grid{grid-template-columns:repeat(5,1fr)}.character-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.character-grid article{min-height:130px;padding:12px;display:grid;grid-template-columns:90px 1fr;border:1px solid var(--line);background:#061018}.character-grid span{grid-row:1/5;width:75px;display:grid;place-items:center;background:#132a36;font-size:40px}.character-grid h3{font-size:13px}.character-grid b{color:var(--cyan);font-size:9px}.character-grid p{font-size:8px}.route-grid article:nth-child(2){color:var(--red);border-color:var(--red)}.route-grid article:nth-child(3){color:var(--purple);border-color:var(--purple)}footer{padding:12px 18px;display:grid;grid-template-columns:150px 1fr 220px;align-items:center;border-top:1px solid var(--line)}footer>p{text-align:center;font-size:11px;letter-spacing:.5em}footer>p b{color:var(--red)}footer small{font-size:7px;text-align:right}
@media(max-width:900px){.site-header{grid-template-columns:130px 1fr}.site-header nav{display:none}.system-button{justify-self:end}.hero{grid-template-columns:1fr}.character-art{min-height:300px}.metrics{display:none}.numbered,.numbered:has(.test){grid-template-columns:150px 1fr}.classifications{grid-column:1/-1}.business-grid,.world-grid{grid-template-columns:repeat(2,1fr)}.character-grid{grid-template-columns:1fr}}
@media(max-width:600px){.site-header{height:auto;padding:10px;grid-template-columns:1fr}.system-button{display:none}.hero h1{font-size:38px}.numbered,.numbered:has(.test){grid-template-columns:1fr}.numbered>header{border-right:0}.choice-grid,.feature-grid,.business-grid,.world-grid,.route-grid,.answers{grid-template-columns:1fr}.character-art{min-height:260px}.ernest{left:5%}.maya{left:45%}footer{grid-template-columns:1fr;gap:12px;text-align:center}footer small{text-align:center}}
dialog{width:min(540px,calc(100% - 30px));padding:30px;border:1px solid var(--cyan);background:#041019;color:#fff}dialog::backdrop{background:#010507e8}#closeDialog{position:absolute;right:10px;top:8px;border:0;background:none;color:#fff;font-size:24px}#dialogKicker{color:var(--red);font-size:9px}#dialogTitle{margin:12px 0}.choice-grid button.selected{box-shadow:0 0 22px currentColor;transform:translateY(-2px)}#resetProgress{position:fixed;right:12px;bottom:12px;z-index:30;padding:7px;border:1px solid #713b39;background:#120808;color:#c37d79;font-size:7px}body[data-world-state=harvest]{filter:saturate(.55)}body[data-world-state=delay] .site-header{box-shadow:0 2px 20px #ff3b3555}body[data-world-state=forge]{--line:rgba(166,91,255,.5)}.route-sprites article{cursor:pointer;transition:.2s}.route-sprites article:hover{transform:translateY(-3px)}
