:root{color-scheme:dark;--bg:#09121b;--panel:#111f2b;--panel2:#162b37;--stroke:#27414c;--txt:#eaf4f4;--muted:#94adb7;--teal:#5bdac5;--gold:#ebc57a;--red:#ef8a87;--blue:#83b6f4;font-family:Manrope,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;min-height:100dvh;background:radial-gradient(ellipse at 80% -10%,#20404b 0,transparent 40%),linear-gradient(160deg,#09121b,#0b1720 65%);color:var(--txt)}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:default}.wrap{max-width:950px;padding:22px 18px 106px;margin:0 auto}.top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:26px}.brand{display:flex;align-items:center;gap:11px;font-family:'Space Grotesk',sans-serif;font-size:20px;font-weight:700;letter-spacing:.035em}.logo{width:36px;height:36px;border:1px solid #468074;border-radius:11px;display:grid;place-items:center;color:var(--teal);font-size:25px;font-weight:700}.dot{width:8px;height:8px;display:inline-block;border-radius:99px;background:var(--teal);margin-right:6px}.online{font-size:11px;color:var(--muted)}.eyebrow{text-transform:uppercase;color:var(--teal);font-weight:800;letter-spacing:.2em;font-size:10px}.hero{padding:25px 0 8px}.hero h1{font:700 clamp(31px,7vw,46px)/1.12 'Space Grotesk',sans-serif;letter-spacing:-.045em;margin:10px 0}.lead{line-height:1.6;color:var(--muted);font-size:14px;max-width:570px}.card{background:linear-gradient(135deg,rgba(23,44,56,.97),rgba(13,27,39,.98));border:1px solid var(--stroke);border-radius:18px;padding:19px;margin:16px 0;box-shadow:0 10px 40px #0002}.card h2{font:600 20px 'Space Grotesk',sans-serif;letter-spacing:-.02em;margin:0 0 13px}.card h3{margin:0 0 8px;font-size:15px}.muted{color:var(--muted)}.small{font-size:12px}.micro{font-size:10px}.row{display:flex;align-items:center;gap:12px}.between{justify-content:space-between}.stack{display:grid;gap:13px}.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.stat{padding:13px;border:1px solid var(--stroke);background:#0d202a;border-radius:13px}.stat b{display:block;margin-top:6px;font:700 22px 'Space Grotesk',sans-serif}.badge{display:inline-block;padding:5px 9px;border:1px solid #347d77;color:var(--teal);background:#14362f;border-radius:99px;font-size:10px;font-weight:800;letter-spacing:.03em}.badge.gold{color:var(--gold);border-color:#765f38;background:#382e1f}.badge.red{color:var(--red);border-color:#764544;background:#402725}.btn{border-radius:11px;padding:11px 14px;border:1px solid var(--stroke);background:#1e3540;color:var(--txt);font-weight:800;font-size:12px;min-height:42px;transition:.15s}.btn:hover{border-color:#669b9a}.btn.primary{background:var(--teal);color:#052127;border-color:var(--teal)}.btn.ghost{background:transparent}.btn.danger{color:var(--red)}.btn.full{width:100%}.field{border:1px solid var(--stroke);background:#071720;color:var(--txt);border-radius:10px;padding:11px 12px;width:100%;min-height:42px;outline:0}.field:focus{border-color:var(--teal)}label{display:block;font-size:12px;color:var(--muted);margin:0 0 5px}.tabs{position:fixed;bottom:0;left:0;right:0;z-index:10;background:#091923f0;backdrop-filter:blur(18px);border-top:1px solid var(--stroke);display:flex;justify-content:center;padding:7px 8px max(11px,env(safe-area-inset-bottom))}.tabs button{flex:1;max-width:145px;display:grid;justify-items:center;gap:5px;font-size:10px;font-weight:800;color:var(--muted);border:0;background:transparent;padding:8px 2px}.tabs button span{font-size:20px}.tabs button.active{color:var(--teal)}.quest{padding:15px;border:1px solid var(--stroke);border-radius:14px;background:#0d202a;margin:12px 0}.quest.done{border-color:#33594d;opacity:.72}.quest .qtitle{font-weight:800;margin:7px 0}.quest .desc{font-size:12px;line-height:1.7;color:var(--muted)}.quest .meta{font-size:10px;color:var(--gold);letter-spacing:.08em}.progress{height:7px;background:#233946;border-radius:10px;overflow:hidden}.progress>span{display:block;height:100%;background:linear-gradient(90deg,#42a89e,#8be2cd)}.item{display:flex;align-items:start;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid #26404a}.item:last-child{border-bottom:0}.item strong{font-size:13px}.story{line-height:1.8;color:#cedcde;font-size:13px}.divider{height:1px;background:var(--stroke);margin:15px 0}.choice{display:flex;flex-direction:column;gap:8px}.notice{padding:12px 14px;border-left:3px solid var(--gold);background:#47382033;border-radius:7px;font-size:12px;line-height:1.7}.lock{font-size:38px;text-align:center;padding:13px}.footer-note{font-size:11px;line-height:1.7;color:var(--muted)}#toast{position:fixed;z-index:30;top:20px;left:50%;transform:translateX(-50%);background:#235148;color:#fff;border-radius:12px;padding:12px 18px;box-shadow:0 12px 40px #0008;font-size:12px;max-width:min(90vw,400px);display:none}.person{display:flex;align-items:center;gap:13px}.avatar{display:grid;place-items:center;width:53px;height:53px;border-radius:16px;background:#1b3b3b;font-size:28px;flex-shrink:0}.space{height:10px}.log{max-height:330px;overflow:auto}.log p{margin:0;padding:11px 0;border-bottom:1px solid var(--stroke);font-size:12px;line-height:1.6}.clickable{cursor:pointer}.mini-actions{display:flex;gap:7px;flex-wrap:wrap}.mini-actions .btn{min-height:34px;padding:7px 10px}.rule{font-size:12px;color:var(--muted);line-height:1.7}.skeleton{height:12px;background:#31505a;border-radius:4px;animation:pulse 1.5s infinite alternate}@keyframes pulse{to{opacity:.45}}@media(min-width:650px){.wrap{padding-top:29px}.grid-main{display:grid;grid-template-columns:1.15fr .85fr;gap:16px}.grid-main>.card{margin-top:0}.tabs{left:50%;transform:translateX(-50%);width:max-content;border:1px solid var(--stroke);border-radius:20px 20px 0 0;min-width:590px}.tabs button{min-width:105px}}@media(max-width:380px){.wrap{padding-inline:13px}.card{padding:15px}.brand{font-size:17px}}

.gold-text{color:var(--gold)}.danger-text{color:var(--red)}.field,select.field{width:100%;background:#061923;color:var(--txt);border:1px solid #284d57;border-radius:12px;padding:13px 14px;min-height:46px}select.field{appearance:auto}.card .stat b{overflow-wrap:anywhere;font-size:clamp(15px,3.6vw,23px)}.item{gap:10px;overflow-wrap:anywhere}@media(max-width:500px){.wrap{padding:18px 15px 120px}.card{padding:16px}.stat{padding:12px}}

/* 0.3: six-tab bottom navigation and long evidence notes */
@media(max-width:480px){.tabs button{font-size:9px;min-width:0}.tabs button span{font-size:19px}.tabs{padding-left:2px;padding-right:2px}.wrap{padding-bottom:124px}}
.quest input.field{font-size:14px}.card .notice{overflow-wrap:anywhere}.badge{max-width:100%;overflow-wrap:anywhere}

/* 0.4: seven mobile tabs, shared ledger and action buttons. */
@media(min-width:650px){.tabs{min-width:680px}.tabs button{min-width:90px}}
@media(max-width:520px){.tabs button{font-size:8px;padding:7px 1px}.tabs button span{font-size:17px}.row.between{flex-wrap:wrap}}
.card .choice button{width:100%}.card .item strong{overflow-wrap:anywhere}

/* 0.5: expedition notes and eight tabs on narrow phones */
textarea.field{resize:vertical;min-height:96px;line-height:1.5}
@media(max-width:500px){.tabs button{font-size:7.5px}.tabs button span{font-size:16px}.tabs{padding-inline:1px}.tabs button{padding-inline:0}}
/* 0.5 Atlas three systems: nine tabs, central navigation focus */
.tabs button{min-width:0}
.tabs button:nth-child(5){color:var(--teal);border:1px solid #315a5c;border-radius:13px;background:#143037}
.tabs button:nth-child(5).active{background:#285552;border-color:#62ceb9;color:#e6fffa}
.tabs button:nth-child(5) span{font-size:23px}
@media(min-width:650px){.tabs{width:min(940px,96vw);min-width:0}.tabs button{min-width:0;max-width:105px}}
@media(max-width:500px){.tabs{justify-content:space-evenly;gap:0}.tabs button{font-size:7px;line-height:1.15;padding:7px 0;max-width:none}.tabs button span{font-size:15px}.tabs button:nth-child(5) span{font-size:19px}}
@media(max-width:350px){.tabs button{font-size:6.5px}.tabs button span{font-size:14px}}
.atlas-system-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0}
.atlas-system-switch .btn{font-size:13px}
.atlas-meta,.atlas-bodies,.atlas-actions{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0}
.atlas-bodies .btn{padding:8px 11px;min-height:34px;font-weight:600}
.atlas-viewport{border:1px solid #31535f;background:radial-gradient(ellipse at 50% 50%,#142936,#050e18 75%);overflow:hidden;position:relative;border-radius:14px;margin:14px 0}
.atlas-system-svg,.atlas-surface-svg{display:block;width:100%;height:auto;min-height:160px;max-height:480px;user-select:none}
.atlas-system-svg text{fill:#bcd0d4;font-size:12px;paint-order:stroke;stroke:#09161a;stroke-width:3px;font-weight:700}
.atlas-orbital-object,.atlas-poi-marker{cursor:pointer;outline:0}.atlas-orbital-object:hover circle,.atlas-orbital-object:focus circle{filter:drop-shadow(0 0 7px #9befdd)}
.atlas-filters{display:grid;grid-template-columns:1.4fr 1fr;gap:10px}.atlas-place{border-bottom:1px solid var(--stroke);display:flex;align-items:center;gap:12px;padding:10px 0;min-width:0}
.atlas-place>div{flex:1;min-width:0;overflow-wrap:anywhere}.atlas-place strong{font-size:12px}.atlas-place .btn{font-size:10px;min-height:33px;padding:7px 10px}
.atlas-nav-pin{display:flex;align-items:start;justify-content:space-between;gap:6px;padding:9px 0;flex-wrap:wrap;overflow-wrap:anywhere}
.atlas-nav-pin>div{min-width:0;flex:1}.atlas-group{border:1px solid var(--stroke);border-radius:12px;margin:8px 0;padding:8px 12px}
.atlas-group summary,.quest-chapter summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:9px;font-weight:750;color:var(--txt);padding:6px 0}
.atlas-group-line{display:grid;grid-template-columns:20px 1fr auto;align-items:center;gap:7px;padding:7px 0;border-bottom:1px solid #26414c;font-size:12px}
.atlas-group-line:last-child{border:0}.atlas-group-line small{font-size:9px;color:var(--muted)}
.quest-chapter{border:1px solid var(--stroke);border-radius:14px;margin:12px 0;padding:12px;background:#10242e}
.quest-chapter summary{font-size:14px}.quest-brief{background:#08202a;border-left:2px solid var(--teal);padding:12px;margin:13px 0;border-radius:8px;color:#d2e5e6;font-size:12px;line-height:1.6}
.quest-brief strong{display:block;color:var(--teal);margin:0 0 4px}.quest-brief p{margin:0 0 10px}
.quest-brief p:last-child{margin:0}.locked-quest{background:linear-gradient(135deg,#121e33,#0b2228);border-color:#443d67}
.xian-cipher{background:repeating-linear-gradient(125deg,#162237,#162237 8px,#18283a 9px);border:1px solid #443d67;border-radius:11px;padding:12px;margin:10px 0;overflow-wrap:anywhere;word-break:break-all;letter-spacing:.1em}
.cipher-title{font:700 19px/1.6 Georgia,serif;color:#c7b1ff}
.cipher-brief{font:400 14px/1.6 Georgia,serif;color:#927eb8;max-height:100px;overflow:hidden}
@media(max-width:530px){.atlas-filters{grid-template-columns:1fr}.atlas-viewport{margin:9px -8px}.atlas-system-svg text{font-size:10px}.atlas-place .btn{padding:7px;max-width:82px}.atlas-group-line{grid-template-columns:16px 1fr}.atlas-group-line small{grid-column:2}}

/* 0.5.2 body atlas: a non-geographic interactive catalogue before geo-grid. */
.atlas-viewport:has(.atlas-world-header){padding:13px;overflow:visible;background:linear-gradient(145deg,#07141d,#0c2230)}
.atlas-world-header{display:grid;grid-template-columns:110px minmax(0,1fr);align-items:center;gap:14px;padding:6px 4px 14px}
.atlas-world-globe{width:100px;height:100px;border-radius:50%;position:relative;overflow:hidden;background:radial-gradient(circle at 30% 28%,#438c91,#165262 43%,#0c253d 73%,#06111d 100%);box-shadow:inset -14px -12px 25px #050d1899,0 0 24px #56b5b022;display:grid;place-items:center}
.atlas-world-globe span{color:#bff8e8;font-size:47px;text-shadow:0 0 18px #d2faf0}
.atlas-world-arc{position:absolute;inset:15% -22%;border:1px solid #8cbdc470;border-radius:50%;transform:rotate(-32deg)}
.atlas-world-info h3{margin:2px 0 6px;font-size:21px}.atlas-world-info p{font-size:11px;line-height:1.6;color:#9cb9c0;margin:0}
.atlas-category-bar{display:flex;gap:6px;overflow-x:auto;scrollbar-width:thin;padding:6px 1px 11px}.atlas-category-bar .btn{flex-shrink:0;font-weight:600;min-height:34px;padding:6px 9px}
.atlas-world-points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:4px 0 14px}
.atlas-world-point{background:#122e3a;border:1px solid #315561;border-radius:10px;color:#dae8e9;padding:10px;text-align:left;display:flex;align-items:flex-start;gap:8px;min-width:0;cursor:pointer;min-height:56px}
.atlas-world-point span:first-child{font-size:19px}.atlas-world-point span:last-child{font-size:12px;font-weight:700;overflow-wrap:anywhere}.atlas-world-point small{display:block;color:#91aeb8;font-size:10px;font-weight:400;margin-top:5px}
.atlas-world-point.active{border-color:#73dbc5;background:#174b4b}.atlas-world-point:hover{border-color:#80c9ba}
.atlas-world-selection{padding:13px;border:1px solid #4a8a80;background:#12392e70;border-radius:12px}.atlas-world-selection p{font-size:11px;line-height:1.6;color:#bed3d2}
.atlas-world-geo-note{margin-top:13px;padding:10px 12px;font-size:11px;color:#adc9d0;border-left:2px solid #6cbfb4;background:#0e1b2c}
.atlas-geo-details{border:1px solid #375965;border-radius:12px;padding:12px;margin:12px 0}.atlas-geo-details summary{font-size:12px;font-weight:700;cursor:pointer}.atlas-geo-details svg{width:100%;max-height:380px;display:block;margin-top:10px}
@media(max-width:450px){.atlas-world-header{grid-template-columns:74px minmax(0,1fr);gap:10px}.atlas-world-globe{width:70px;height:70px}.atlas-world-globe span{font-size:30px}.atlas-world-points{grid-template-columns:1fr}.atlas-world-point{min-height:45px}.atlas-viewport:has(.atlas-world-header){margin-inline:-8px;padding:10px}}

/* 0.5.3: Unified, searchable Stanton navigation journal, sourced from atlasAll(). */
.navj-summary{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}
.navj-filters{display:grid;grid-template-columns:1.25fr 1fr;gap:10px}
.navj-places{border-top:1px solid var(--stroke);margin:14px 0 8px}
.navj-place{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:10px;align-items:center;border-bottom:1px solid var(--stroke);padding:12px 2px;min-width:0}
.navj-place.navj-current{background:#16463855;border-left:3px solid #7ae6b7;padding-left:9px}
.navj-icon{font-size:23px;align-self:start}
.navj-info{min-width:0;overflow-wrap:anywhere}.navj-info strong{font-size:13px;display:block;margin:0 0 5px}.navj-info .micro{line-height:1.65}
.navj-buttons{display:flex;gap:5px;align-items:center;flex-wrap:wrap;justify-content:flex-end;max-width:225px}
.navj-buttons .btn{font-size:11px;min-height:32px;padding:6px 8px}
.navj-place .btn:disabled{opacity:.56;cursor:default}
@media(max-width:640px){.navj-place{grid-template-columns:24px minmax(0,1fr);align-items:start}.navj-buttons{grid-column:2;max-width:unset;justify-content:flex-start}.navj-buttons .btn{min-width:70px}}
@media(max-width:400px){.navj-filters{grid-template-columns:1fr}.navj-buttons .btn{font-size:10px}}

/* 0.7: private contacts and consequential episode cards */
#living-galaxy .quest strong{overflow-wrap:anywhere}
#living-galaxy .quest .row.between{flex-wrap:wrap}
#living-galaxy textarea.field{margin-bottom:9px}
#living-galaxy .xian-cipher{word-break:normal}
@media(max-width:480px){#living-galaxy .grid2{grid-template-columns:repeat(2,minmax(0,1fr))}#living-galaxy .stat b{font-size:21px}}
