:root{color-scheme:dark;--bg:#0a1013;--panel:#101a1f;--line:#26363d;--text:#e7efee;--muted:#91a8ad;--accent:#a9ef79;font-family:Inter,Segoe UI,Arial,sans-serif;font-size:14px}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 15% 0%,#18302d 0%,transparent 48%),var(--bg);color:var(--text)}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button,select{color:var(--text);background:#18262d;border:1px solid var(--line);border-radius:7px;padding:9px 12px}button,summary{cursor:pointer}button:hover{background:#263b43}button:disabled{opacity:.4;cursor:not-allowed}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.shell{max-width:1512px;margin:auto;padding:0 42px}.masthead{height:78px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:22px;font-size:11px;letter-spacing:1.5px}.brand{display:flex;align-items:center;gap:9px;font-weight:800;font-size:13px}.brand-mark{padding:7px 9px;background:var(--accent);color:var(--bg);font-size:17px;border-radius:4px}.muted,.hint{color:var(--muted)}.environment{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:10px;color:#b3c7c8}.environment>span{width:6px;height:6px;border-radius:50%;background:var(--accent)}.embed-link{color:var(--muted);letter-spacing:0}.intro{display:flex;justify-content:space-between;align-items:center;padding:37px 0 25px;gap:20px}.eyebrow{font-size:10px;letter-spacing:1.8px;color:var(--accent);font-weight:650;margin:0 0 13px}h1{font-size:clamp(30px,3.5vw,49px);letter-spacing:-2px;margin:0 0 12px;font-weight:650}h1 span{color:var(--accent)}.lede{color:var(--muted);margin:0;font-size:14px}.session-stamp{display:grid;gap:8px;font-size:10px;text-align:right;letter-spacing:.8px}.session-stamp strong{font-size:12px;font-weight:500}.notice{font-size:12px;color:var(--muted);padding:10px 13px;background:#11211c;border:1px solid #294235;border-radius:6px;margin-bottom:20px}.notice.error{color:#ffd5cc;background:#422320;border-color:#a86655}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;border:1px solid var(--line);background:var(--line);border-radius:10px;overflow:hidden;margin-bottom:22px}.metrics>div{background:#101a1ee8;padding:19px 23px}.metrics span{font-size:9px;letter-spacing:1.5px;color:var(--muted)}.metrics strong{display:block;font-size:32px;line-height:1.6;font-weight:500;letter-spacing:-1px}.metrics small{font-size:10px;color:var(--muted)}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 278px;gap:20px;align-items:start}.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;overflow:hidden}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:21px 22px}.panel-heading .eyebrow{font-size:9px;margin-bottom:7px}h2{font-size:18px;font-weight:550;margin:0;letter-spacing:-.4px}.segmented{display:flex;padding:3px;background:#091216;border-radius:7px;border:1px solid var(--line)}.segmented button{font-size:11px;border:0;background:transparent;color:var(--muted);padding:8px 12px}.segmented button[aria-pressed=true]{color:var(--accent);background:#21332b}.map-wrap{position:relative;background:radial-gradient(ellipse at center,#172a2c,#0b151b);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:45px 15px 35px}.map-hud,.map-footer{position:absolute;left:20px;right:20px;display:flex;align-items:center;justify-content:space-between;font-family:Consolas,monospace;color:var(--muted);font-size:9px;letter-spacing:.7px;gap:10px}.map-hud{top:17px}.map-hud #clock{color:var(--accent);font-size:18px;letter-spacing:2px}.map-footer{bottom:14px;font-size:8px}#world{display:block;width:100%;height:auto;max-height:510px;overflow:visible}.region{cursor:pointer}.region .tile{fill:#1c3034;stroke:#416068;stroke-width:.23;transition:fill .15s}.region:hover .tile,.region[aria-pressed=true] .tile{fill:#304e43;stroke:var(--accent);stroke-width:.4}.region text{fill:#a3babe;font-family:Consolas,monospace;font-size:1.55px;pointer-events:none}.region[aria-pressed=true] text{fill:#d2f5b9}.connector{stroke:#38545b;stroke-width:1.1;fill:none;stroke-linecap:round}.trail{fill:none;stroke-width:.42;opacity:.55;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.marker{stroke:#f2f7ed;stroke-width:.2;pointer-events:none}.transport{padding:17px 20px;display:flex;align-items:center;gap:10px}.play{background:var(--accent);color:#152117;border:0;min-width:80px;font-weight:700}.play:hover{background:#c3ffa0}.timeline{flex:1;min-width:50px}.timeline input{width:100%;margin:0;accent-color:var(--accent);cursor:pointer}.timeline>span{display:flex;justify-content:space-between;color:var(--muted);font-family:Consolas,monospace;font-size:9px;margin-top:4px}.speed select{font-size:11px;padding:8px}.map-note{font-size:11px;line-height:1.6;color:var(--muted);margin:0;padding:0 20px 17px}.sidebar{display:grid;gap:16px}.roster .panel-heading{padding:20px 18px 0}.roster h2{font-size:17px}.text-button{background:none;border:0;color:var(--accent);font-size:10px;padding:5px;white-space:nowrap}.hint{font-size:10px;line-height:1.7;margin:10px 18px}#players{padding:3px 10px 13px}.player{display:flex;align-items:center;padding:7px 8px;gap:9px;border-radius:6px;cursor:pointer}.player:hover{background:#1a2a30}.player input{accent-color:var(--accent);margin:0}.player .swatch{width:7px;height:7px;border-radius:50%;background:var(--player-color)}.player-name{font-size:11px}.player-state{margin-left:auto;font-size:9px;color:var(--muted)}.player:has(input:not(:checked)){opacity:.5}.inspector{padding:20px}.inspector .eyebrow{font-size:9px;margin-bottom:10px}.inspector>p{font-size:11px;line-height:1.7;color:var(--muted)}.inspector .hint{margin:12px 0 0;font-size:10px}.inspector dl{margin:17px 0 0;display:flex;gap:28px}.inspector dt{font-size:10px;color:var(--muted);margin-bottom:5px}.inspector dd{font-size:25px;margin:0;color:var(--accent)}.evidence{margin-top:20px}summary{padding:18px 22px;font-size:12px}summary span{color:var(--muted);font-size:11px;float:right}.evidence-body{padding:0 22px 20px;color:var(--muted);font-size:12px;line-height:1.8;max-width:950px}.evidence-body button{font-size:11px;color:var(--accent)}footer{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px;color:var(--muted);padding:26px 0 30px;gap:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1600px){.shell{padding:0 50px}}@media(max-width:1000px){.shell{padding:0 22px}.workspace{grid-template-columns:minmax(0,1fr) 240px}.panel-heading{padding:17px 15px}.metrics>div{padding:15px}.metrics small{font-size:9px}.session-stamp{display:none}.map-footer{font-size:7px}}@media(max-width:760px){.shell{padding:0 15px}.masthead{height:60px;gap:10px}.environment{font-size:8px;letter-spacing:.6px}.embed-link{display:none}.intro{padding:25px 0 20px}.eyebrow{font-size:8px}.lede{font-size:12px;line-height:1.6}.metrics{grid-template-columns:repeat(2,1fr);margin-bottom:15px}.metrics strong{font-size:27px}.metrics span{font-size:8px}.workspace{grid-template-columns:1fr;gap:15px}.sidebar{grid-template-columns:1fr 1fr;gap:12px}.roster .panel-heading{padding:17px 12px 0}.roster h2{font-size:15px}.roster .hint{margin:9px 12px}.inspector{padding:17px 12px}.inspector dl{gap:14px}.segmented button{padding:7px 9px;font-size:10px}.transport{padding:14px 10px;gap:6px}.play{min-width:64px;padding:9px 8px}.map-footer span:last-child{display:none}.map-footer{font-size:8px}.map-hud{left:12px;right:12px;font-size:8px}.map-wrap{padding:45px 9px 32px}summary{padding:17px 13px}summary span{float:none;display:block;margin-top:8px;margin-left:15px}.player-state{font-size:8px}.player{padding:7px 3px;gap:6px}.player-name{font-size:10px}footer{font-size:8px;letter-spacing:.4px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
html[data-embedded] .masthead{height:52px}html[data-embedded] .intro{padding:22px 0 20px}html[data-embedded] h1{font-size:32px}html[data-embedded] .session-stamp,html[data-embedded] .embed-link,html[data-embedded] footer{display:none}html[data-embedded] .shell{padding:0 18px}html[data-embedded] .metrics>div{padding:13px 16px}
