:root{color-scheme:dark;--bg:#0b1420;--panel:#142634;--line:#34505c;--ink:#edf1e9;--muted:#b1c3cb;--mint:#b3e5c8;--gold:#f5d295;--purple:#d6b3f4;font-family:system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-padding-top:1rem}body{margin:0;background:radial-gradient(ellipse at 85% 0,#16313c,transparent 45%),var(--bg);color:var(--ink);line-height:1.6}a{color:var(--mint)}button,.button,select{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.7rem 1rem;border:1px solid #72958f;border-radius:9px;background:#173133;color:var(--mint);font-weight:650;text-decoration:none;cursor:pointer;gap:.5rem}button:hover,.button:hover{background:#274640;border-color:var(--mint)}button:disabled{cursor:not-allowed;opacity:.5}.primary{background:var(--mint);color:#142a24}.primary:hover{background:#d6f3df;color:#142a24}.quiet{background:transparent;font-size:.85rem}button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px}h1,h2{font-family:Georgia,serif;line-height:1.15}h1{font-size:clamp(2.8rem,5vw,4.8rem);letter-spacing:-.04em;margin:.8rem 0 1.4rem}h1 em{font-weight:400;color:var(--mint)}h2{font-size:clamp(1.6rem,3vw,2.1rem);margin:.6rem 0 1rem}h3{font-size:1rem;line-height:1.4}p{color:var(--muted)}.eyebrow{font-size:.65rem;letter-spacing:.18em;font-weight:800;color:var(--gold)}.small-note{font-size:.78rem;color:var(--muted)}.site-header,footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;max-width:1240px;margin:auto;padding:1.4rem 2rem;border-bottom:1px solid var(--line)}.brand{font-size:.9rem;letter-spacing:.12em;font-weight:750;text-decoration:none}.brand small{display:block;font-size:.58rem;letter-spacing:.2em;color:var(--muted)}nav{display:flex;gap:1.5rem;font-size:.85rem}nav a{text-decoration:none}main{max-width:1160px;padding:0 2rem;margin:auto}.intro{display:flex;justify-content:space-between;align-items:center;padding:3rem 0 2rem;gap:2rem}.intro>div:first-child{max-width:640px}.intro-mark{width:240px;height:240px;position:relative;display:grid;place-items:center;flex-shrink:0}.compass{font-family:Georgia,serif;font-size:120px;color:var(--gold);text-shadow:0 0 70px #b3e5c866}.orbit{position:absolute;inset:12px;border:1px solid #a5cab65c;border-radius:50%}.orbit-one{transform:rotate(-25deg) scaleY(.6)}.orbit-two{transform:rotate(35deg) scaleY(.6)}.orbit-note{position:absolute;bottom:2px;font-size:.55rem;letter-spacing:.15em;color:var(--mint)}.notice{border:1px solid var(--line);border-radius:9px;background:#12242d;padding:.7rem 1rem;font-size:.8rem}.role-options{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.onboarding{padding:1rem 0 2rem}.role-card{display:flex;flex-direction:column;align-items:start;text-align:left;padding:1.5rem;background:var(--panel)}.role-card .role-symbol{font-size:2rem;color:var(--gold)}.role-card small{color:var(--muted);font-weight:400;line-height:1.6}.progress-strip{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:1rem;padding:1.25rem 0;margin:1.5rem 0;border-block:1px solid var(--line)}.progress-strip small{display:block;font-size:.6rem;letter-spacing:.14em;color:var(--muted)}.progress-strip strong{font-size:1.4rem;color:var(--mint)}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:1.5rem;align-items:start}.main-column{min-width:0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:1rem}.section-heading>.small-note{max-width:130px}.world-map{height:300px;position:relative;overflow:hidden;border:1px solid var(--line);border-radius:18px}.world-map>svg{width:100%;height:100%;position:absolute;inset:0}.region-buttons{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;padding:1rem;height:100%;align-items:center}.region-button{min-width:0;display:flex;flex-direction:column;text-align:center;font-size:.78rem;background:#122c32ed;border-color:#638c7d;padding:.7rem .4rem;min-height:105px;box-shadow:0 8px 25px #0004}.region-button:nth-child(2){align-self:start;margin-top:10px}.region-button .region-symbol{font-size:1.5rem;color:var(--gold)}.region-button[aria-pressed=true]{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}.region-button small{font-size:.65rem;font-weight:400}.region-detail{padding:1.5rem 0}.quest-list{display:grid;gap:.65rem}.quest-card{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:.8rem;padding:1rem;border:1px solid var(--line);border-radius:11px;background:var(--panel)}.quest-card h3{margin:0 0 .2rem}.quest-card p{margin:0;font-size:.75rem}.quest-symbol{font-size:1.5rem;color:var(--gold)}.quest-card.done{border-color:#70947b}.quest-card button{font-size:.8rem;white-space:nowrap;padding:.5rem .7rem}.character-panel{border:1px solid var(--line);border-radius:16px;padding:1.3rem;background:linear-gradient(#1a3038,#13232e)}.avatar{width:75px;height:75px;border:1px solid #9ab6a0;border-radius:24px;display:grid;place-items:center;font-size:2.4rem;color:var(--gold);background:radial-gradient(circle,#34584b,#1a3038);margin-bottom:1.5rem}.character-panel h2{font-size:1.5rem}.character-panel>p{font-size:.85rem}.skills{display:grid;gap:.5rem;font-size:.8rem}.skill-row{display:flex;justify-content:space-between;gap:1rem}.skill-row strong{color:var(--mint)}.relic{display:block;border:1px solid #b09c65;border-radius:8px;padding:.55rem .7rem;color:var(--gold);font-size:.8rem;margin:.5rem 0}.journal-entry{padding:.6rem 0;border-bottom:1px solid var(--line);font-size:.8rem}.journal-entry strong{color:var(--mint)}.journal-entry p{font-size:.75rem}.camp{margin-top:1.5rem;font-size:.8rem}.camp summary{cursor:pointer;color:var(--mint);padding:.5rem 0}.camp label{display:block;margin:.5rem 0}.camp select{max-width:100%;width:100%;min-height:44px;background:#13232e;color:var(--ink);border:1px solid var(--line);border-radius:6px;padding:.5rem}.camp button{margin-top:1rem}.quest-panel{border:1px solid #73988d;border-radius:16px;padding:1.6rem;background:var(--panel)}.quest-panel h2{margin-bottom:.8rem}.speaker{font-size:.8rem;color:var(--gold)}.story{font-size:1.05rem}.field-note{padding:.8rem 1rem;background:#213b3e;border-left:3px solid var(--mint);border-radius:0 8px 8px 0;margin:1.3rem 0}.field-note strong{font-size:.75rem;letter-spacing:.08em;color:var(--mint)}.field-note p{font-size:.9rem;margin:.3rem 0}.activity-heading{font-size:1.1rem;color:var(--ink)}.activity-actions{display:flex;gap:.6rem;flex-wrap:wrap;margin:1rem 0}.memory-clue,.memory-entry{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}.rune{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;min-width:58px;min-height:65px;border:1px solid var(--line);border-radius:9px;background:#0d202a;padding:.5rem}.rune b{font-size:1.6rem;line-height:1.2}.rune small{font-size:.65rem;color:var(--muted)}.rune-options{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem}.rune-options button{min-height:65px;flex-direction:column;gap:0}.rune-options b{font-size:1.6rem}.rune-options small{font-size:.7rem;color:var(--muted)}.answer-options{display:grid;gap:.7rem;margin:1rem 0}.answer-options button{text-align:left;justify-content:start;color:var(--ink);font-weight:500;background:#1b343f}.answer-options button.correct{border-color:var(--mint);background:#244a3a}.answer-options button.incorrect{border-color:#e7af9b}.hint{font-size:.9rem;border-top:1px solid var(--line);padding-top:.8rem}.hint summary{cursor:pointer;color:var(--gold);padding:.3rem 0}.battle-bars{display:flex;gap:1rem;justify-content:space-between;margin:1rem 0;font-size:.8rem}.battle-bars strong{display:block;color:var(--gold);font-size:1rem}.battle-bars progress{width:100%;height:10px;accent-color:var(--mint)}.battle-bars>div{flex:1;min-width:0}.route-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;max-width:390px;margin:1rem auto}.route-cell{padding:.25rem;min-width:0;aspect-ratio:1;min-height:44px;background:#203f47;border:1px solid #53747d;font-size:1.1rem;color:var(--ink)}.route-cell.blocked{background:repeating-linear-gradient(45deg,#152733,#152733 5px,#21333f 5px,#21333f 8px);border-color:#314652;opacity:1;color:#8ba0aa}.route-cell.current{background:var(--mint);color:#122c24;border:2px solid var(--gold)}.route-cell.visited{border-color:var(--gold)}.route-legend{font-size:.8rem;line-height:1.8}.choice-outcome{padding:1rem;border:1px solid #ab9e70;border-radius:10px;margin:1rem 0}.choice-outcome h3{color:var(--gold)}.reward{padding:1rem;border:1px solid var(--mint);border-radius:12px;background:#1c3e34;margin:1rem 0}.reward h3{color:var(--mint)}.ending{padding:1.6rem;background:linear-gradient(135deg,#284138,#222d41);border:1px solid var(--gold);border-radius:14px;margin:1.5rem 0}.ending .button{margin:.5rem .4rem .5rem 0}.ending-choice{font-size:.9rem;padding-left:1rem;border-left:2px solid var(--gold)}.play-note{border-top:1px solid var(--line);padding:2rem 0;margin-top:3rem;max-width:850px}.play-note p{font-size:.85rem}#quest-feedback{margin:1rem 0;color:var(--gold);font-size:.9rem}footer{border-top:1px solid var(--line);border-bottom:0;font-size:.8rem}[hidden]{display:none!important}@media(max-width:900px){.workspace{grid-template-columns:minmax(0,1fr) 235px;gap:1rem}main{padding:0 1rem}.intro-mark{width:190px;height:190px}.region-button{font-size:.7rem}.character-panel{padding:1rem}.quest-card{grid-template-columns:30px minmax(0,1fr)}.quest-card button{grid-column:2;justify-self:start}}@media(max-width:650px){.site-header,footer{padding:1rem;align-items:start;flex-direction:column;gap:.8rem}nav{gap:1rem}.intro{padding:2rem 0 1rem;gap:0}.intro-mark{display:none}h1{font-size:2.9rem}.role-options{grid-template-columns:1fr}.role-card{padding:1rem}.progress-strip{grid-template-columns:1.7fr 1fr 1fr 1fr;gap:.4rem}.progress-strip strong{font-size:1rem}.progress-strip small{font-size:.5rem}.workspace{grid-template-columns:1fr}.world-map{height:240px}.region-buttons{padding:.6rem;gap:.4rem}.region-button{font-size:.65rem;padding:.5rem .2rem;min-height:100px}.region-button .region-symbol{font-size:1.3rem}.region-button small{font-size:.58rem}.section-heading>.small-note{display:none}.quest-panel{padding:1rem}.character-panel{display:grid;grid-template-columns:1fr;gap:0}.avatar{margin-bottom:.5rem}.route-grid{gap:4px}.route-cell{min-height:44px}.play-note{margin-top:2rem}#quest-title{font-size:1.8rem}}

:root{--bg-gradient:radial-gradient(ellipse at 85% 0,#183842 0%,#0b1420 55%,#060b12 100%);--panel-glass:rgba(20,38,52,0.75);--panel-glass-border:rgba(114,165,175,0.28);--mint-glow:rgba(179,229,200,0.25);--gold-glow:rgba(245,210,149,0.3);--shadow-card:0 10px 30px -5px rgba(0,0,0,0.45);--transition:all .22s cubic-bezier(0.16,1,0.3,1)}body{background:var(--bg-gradient);background-attachment:fixed;letter-spacing:-0.01em}.site-header{backdrop-filter:blur(12px);background:rgba(11,20,32,0.85);position:sticky;top:0;z-index:50;transition:var(--transition)}button,.button{transition:var(--transition);box-shadow:0 4px 14px rgba(0,0,0,0.25)}button:hover,.button:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(0,0,0,0.35),0 0 15px var(--mint-glow)}button:active,.button:active{transform:translateY(1px)}.role-card{border:1px solid var(--panel-glass-border);border-radius:14px;background:linear-gradient(145deg,#162c3b 0%,#111e29 100%);transition:var(--transition);box-shadow:var(--shadow-card)}.role-card:hover{border-color:var(--mint);transform:translateY(-3px);box-shadow:0 12px 35px -5px rgba(0,0,0,0.6),0 0 20px var(--mint-glow)}.progress-strip{border-radius:14px;background:linear-gradient(135deg,rgba(22,44,59,0.45),rgba(16,28,48,0.45));backdrop-filter:blur(8px);border:1px solid var(--panel-glass-border);padding:1.25rem 1.5rem;box-shadow:var(--shadow-card)}.world-map{border:1px solid rgba(114,165,175,0.35);box-shadow:0 15px 45px rgba(0,0,0,0.5),inset 0 0 40px rgba(16,28,48,0.8)}.region-button{backdrop-filter:blur(10px);transition:var(--transition)}.region-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 25px rgba(0,0,0,0.5),0 0 15px var(--mint-glow)}.quest-card{border:1px solid var(--panel-glass-border);background:linear-gradient(145deg,rgba(20,38,52,0.8),rgba(16,28,40,0.8));backdrop-filter:blur(6px);transition:var(--transition);box-shadow:0 4px 15px rgba(0,0,0,0.25)}.quest-card:hover{border-color:rgba(179,229,200,0.5);transform:translateX(3px);box-shadow:0 6px 20px rgba(0,0,0,0.35),0 0 12px var(--mint-glow)}.quest-card.done{border-color:#639c7b;background:linear-gradient(145deg,rgba(24,46,42,0.8),rgba(16,32,30,0.8))}.character-panel{box-shadow:var(--shadow-card);backdrop-filter:blur(8px);border:1px solid var(--panel-glass-border)}.avatar{box-shadow:0 8px 25px rgba(0,0,0,0.4),0 0 20px rgba(245,210,149,0.2);transition:var(--transition)}.avatar:hover{transform:scale(1.05)}.quest-panel{box-shadow:0 20px 60px rgba(0,0,0,0.55);border:1px solid rgba(115,152,141,0.5);background:linear-gradient(155deg,#162c3b 0%,#101c27 100%)}.field-note{box-shadow:inset 0 0 20px rgba(0,0,0,0.25)}.rune{transition:var(--transition)}.rune:hover{border-color:var(--mint);transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,0.4)}.route-cell{transition:var(--transition)}.route-cell:hover:not(.blocked){border-color:var(--mint);filter:brightness(1.2)}