:root{color-scheme:dark;--bg:#0c1218;--panel:#151d25;--raised:#1b252f;--line:#2a3642;--text:#e9edf2;--muted:#9caebb;--copper:#efb079;--teal:#86d9c3;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--text);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 8% 12%,#62412620,transparent 35%),var(--bg);font-size:14px;line-height:1.6}a{color:var(--copper);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:4px}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--teal);outline-offset:5px}button{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.14;letter-spacing:-.035em}h1{font-size:clamp(48px,6vw,78px);font-weight:650;line-height:1.02;margin:22px 0}h1>span{color:var(--copper)}h2{font-size:30px;font-weight:600}h3{font-size:21px;font-weight:600}.muted{color:var(--muted)}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--copper);display:flex;gap:9px;align-items:center}.spark{width:7px;height:7px;background:var(--copper);transform:rotate(45deg)}[hidden]{display:none!important}.sr-only,.skip-link:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link:focus{position:fixed;top:12px;left:12px;z-index:99;background:var(--bg);padding:12px}.site-header{min-height:84px;border-bottom:1px solid #ffffff0c;padding:18px max(5vw,20px);display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;gap:11px;align-items:center;color:var(--text);font-weight:650;font-size:18px;letter-spacing:-.5px}.brand>span>span{color:var(--copper)}.brand:hover{text-decoration:none}.site-header nav{display:flex;gap:28px;font-size:12px}.site-header nav a{color:var(--muted)}.site-header nav a[aria-current]{color:var(--copper)}.shell{max-width:1240px;padding:0 36px;margin:0 auto}.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:90px;align-items:center;padding:76px 0 64px}.lead{max-width:510px;font-size:17px;line-height:1.85;color:#bdc8d3}.trust-line{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:27px;font-size:11px;color:#b8c8d3}.trust-line i{color:var(--teal);font-style:normal;margin-right:4px}.field-note{border:1px solid var(--line);border-radius:14px;background:linear-gradient(125deg,#1c252c,#131b23);padding:28px 30px;position:relative}.note-number{font-family:monospace;font-size:10px;color:#718494;letter-spacing:2px}.field-note h2{font-size:24px;line-height:1.25;margin-top:10px}.field-note ol{list-style:none;padding:0;margin:23px 0 20px;display:grid;gap:20px}.field-note li{display:flex;gap:15px;font-size:12px}.field-note li>span{font-family:monospace;color:var(--copper);font-size:10px;padding-top:3px}.field-note p{font-size:12px;color:var(--muted);line-height:1.7;margin-top:4px}.field-note code{color:#d7e1ea;font-size:11px}.field-note>a{font-size:12px}.text-button{background:none;border:0;padding:5px 0;color:var(--copper);font-size:12px;font-weight:600;text-align:left}.text-button:hover{text-decoration:underline;text-underline-offset:3px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.section-heading h2{margin-top:9px}.section-heading>a{font-size:12px}.preview-tag{letter-spacing:.5px;border:1px solid #66482e;border-radius:4px;padding:1px 6px;font-size:8px;color:#e0ac80}.drop-zone{border:1px dashed #6d5540;border-radius:14px;background:linear-gradient(120deg,#35281c35,#17212c88);padding:32px;display:flex;gap:25px;align-items:center;transition:background .15s,border-color .15s}.drop-zone.is-dragging{border-color:var(--teal);background:#17352f}.drop-zone.is-busy{opacity:.5;pointer-events:none}.upload-mark{border:1px solid #77533060;background:#59402c30;color:var(--copper);width:64px;height:68px;display:grid;place-items:center;border-radius:13px;flex-shrink:0}.upload-mark svg{width:32px;height:32px}.drop-copy{flex:1}.drop-copy h3{font-size:23px;margin-bottom:7px}.drop-copy p{font-size:12px;color:#afbeca}.drop-copy strong{font-weight:500;color:#dde3e9}.drop-copy>span{display:block;color:#879ba9;font-size:11px;margin-top:5px}.drop-actions{display:flex;flex-direction:column;gap:8px;align-items:center}.button{display:inline-flex;justify-content:center;align-items:center;gap:15px;min-height:43px;border:1px solid var(--line);border-radius:7px;padding:10px 17px;font-size:12px;font-weight:650;white-space:nowrap;text-decoration:none}.button:hover{text-decoration:none;filter:brightness(1.09)}.primary{background:var(--copper);border-color:var(--copper);color:#291b10}.secondary{background:var(--panel);color:var(--text)}.privacy-note{display:flex;align-items:flex-start;gap:9px;color:#8fa1af;font-size:11px;margin:14px 0 0}.privacy-note svg{width:12px;height:14px;flex-shrink:0;margin-top:2px}.status{color:var(--teal);font-size:12px;margin-top:12px;min-height:19px}.progress-panel{display:grid;grid-template-columns:minmax(140px,1fr) 2fr auto;gap:25px;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:22px;margin-top:15px}.progress-panel strong{display:block}.progress-panel span{font-size:11px;color:var(--muted);display:block}progress{width:100%;height:7px;accent-color:var(--teal)}.error-panel{border:1px solid #a65e52;background:#4f25272b;padding:22px;border-radius:10px;margin-top:15px}.error-panel h3{font-size:18px;color:#ffc6b2}.error-panel p{margin:9px 0;color:#d6b9b3}.error-panel a{font-size:12px}.report{margin-top:50px;scroll-margin-top:24px}.report-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.report-heading h2{margin:10px 0}.report-heading .muted{font-size:12px;overflow-wrap:anywhere}.report-actions{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.stat{border:1px solid var(--line);border-radius:10px;padding:21px;background:var(--panel)}.stat span{font-size:11px;color:var(--muted);display:block}.stat strong{font-size:28px;font-weight:600;letter-spacing:-1px;display:block;margin-top:5px}.stat small{font-size:10px;color:#8196a7}.report-nav{display:flex;gap:25px;border-bottom:1px solid var(--line);margin:24px 0}.report-nav button{border:0;border-bottom:2px solid transparent;padding:14px 0;background:transparent;font-size:12px;color:var(--muted)}.report-nav button[aria-selected=true]{border-color:var(--copper);color:var(--copper)}.overview-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:16px}.surface{background:var(--panel);border:1px solid var(--line);border-radius:11px;padding:25px}.surface h3{font-size:21px}.surface .section-heading{align-items:flex-end}.surface .eyebrow{font-size:8px}.surface .section-heading h3{margin-top:8px}.surface .section-heading>.muted{font-size:10px}.activity-chart{min-height:145px;display:flex;align-items:center}.activity-chart svg{width:100%;height:145px;overflow:visible}.chart-caption{font-size:11px;line-height:1.75;color:#92a7b7;margin:10px 0 15px}.coverage-number{font-size:42px;color:var(--teal);letter-spacing:-2px;line-height:1;margin:20px 0 5px}.coverage-card p:not(.eyebrow){color:#9db0bf;font-size:12px;line-height:1.8;margin:10px 0}.coverage-card button{display:block;margin-top:8px}.next-step{margin-top:16px;display:flex;align-items:center;justify-content:space-between;gap:35px}.next-step h3{margin:9px 0}.next-step p:not(.eyebrow){color:var(--muted);font-size:12px;max-width:590px}.dungeon-links{display:flex;flex-direction:column;gap:8px}.table-tools{display:flex;gap:18px;margin:12px 0 20px}.table-tools label{display:grid;gap:7px;color:var(--muted);font-size:11px;min-width:200px}.table-tools input,.table-tools select{border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--text);padding:11px;min-height:43px}.table-scroll{overflow:auto;border:1px solid var(--line);border-radius:9px}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{font-size:10px;color:var(--muted);font-weight:500;background:#19232e;text-transform:uppercase;letter-spacing:.7px;padding:14px 18px}td{padding:16px 18px;border-top:1px solid var(--line);font-size:12px;font-variant-numeric:tabular-nums}td:first-child{color:var(--teal);font-weight:600}.no-data{padding:30px;color:var(--muted);text-align:center}.pagination{display:flex;gap:14px;justify-content:flex-end;align-items:center;font-size:11px;color:var(--muted);margin-top:12px}#playerCount{font-size:11px;margin-top:12px}.encounter-list{display:grid;gap:10px}.encounter-card{display:flex;justify-content:space-between;gap:20px;border:1px solid var(--line);background:var(--panel);border-radius:9px;padding:20px}.encounter-card h3{font-size:17px}.encounter-card p{color:var(--muted);font-size:11px;margin-top:7px}.encounter-badge{color:var(--copper);font-size:11px}.quality-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.quality-grid>div{padding:20px;border:1px solid var(--line);border-radius:8px}.quality-grid dt{font-size:10px;color:var(--muted)}.quality-grid dd{margin:7px 0 0;font-size:17px}.warning-list{display:grid;gap:10px;margin:18px 0}.warning{border-left:2px solid var(--copper);padding:12px 18px;background:#362b222f;color:#d3b798;font-size:12px;line-height:1.8}.quality-explainer p{font-size:12px;color:var(--muted);margin:15px 0}.quality-explainer a{font-size:12px}.bottom-guide{margin:65px 0 70px;padding-top:40px;border-top:1px solid var(--line)}.bottom-guide h2{margin-top:10px;font-size:27px}.quick-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:25px}.quick-links>a{border:1px solid var(--line);border-radius:8px;padding:19px;color:var(--text)}.quick-links>a:hover{border-color:#70533c;text-decoration:none}.quick-links>a>span{font-size:10px;color:var(--muted);display:block;margin-bottom:7px}.quick-links strong{font-size:12px;font-weight:600;display:flex;justify-content:space-between;gap:15px}.quick-links strong span{color:var(--copper)}.site-footer{padding:30px max(5vw,20px);border-top:1px solid #ffffff0b;display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px;color:#8498a8;font-size:11px}.site-footer strong{color:#c0cdd7;font-size:14px}.site-footer nav{display:flex;gap:23px;align-items:center}.site-footer nav a{color:#bdc8d2}.site-footer small{flex-basis:100%;font-size:10px}.demo-badge{color:var(--copper)}
@media(max-width:1000px){.hero{gap:40px}.drop-zone{gap:20px;padding:25px}.upload-mark{display:none}.shell{padding:0 28px}.overview-grid{grid-template-columns:1.3fr 1fr}}
@media(max-width:720px){.site-header{padding:17px 20px;gap:18px;flex-wrap:wrap}.site-header nav{gap:23px;font-size:11px}.brand{font-size:17px}.shell{padding:0 20px}.hero{grid-template-columns:1fr;padding:42px 0 36px;gap:28px}h1{font-size:57px}.lead{font-size:15px}.field-note{padding:22px}.field-note h2{font-size:22px}.field-note h2 br{display:none}.field-note ol{gap:15px}.drop-zone{flex-direction:column;align-items:stretch;gap:20px;padding:24px}.drop-actions{align-items:stretch}.drop-actions .text-button{text-align:center}.section-heading{align-items:flex-end}.section-heading>a{font-size:11px;max-width:90px}.section-heading h2{font-size:26px}.progress-panel{grid-template-columns:1fr auto;gap:15px}.progress-panel progress{grid-column:1/-1;grid-row:2}.report-heading{align-items:flex-start;flex-direction:column}.report-actions{align-items:flex-start}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat{padding:17px}.stat strong{font-size:26px}.report-nav{gap:23px;overflow-x:auto}.report-nav button{white-space:nowrap}.overview-grid{grid-template-columns:1fr}.next-step{align-items:stretch;flex-direction:column;gap:20px}.surface{padding:21px}.table-tools{flex-direction:column;gap:12px}.table-tools input,.table-tools select{font-size:16px}.quality-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-links{grid-template-columns:1fr;gap:10px}.quick-links>a{padding:18px}.bottom-guide{margin-top:44px}.site-footer nav{gap:17px}.encounter-card{flex-direction:column;gap:8px}.trust-line{font-size:10px;gap:10px 14px}.privacy-note{font-size:10px}.field-note ol p{font-size:11px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:24px}.hero-actions>a{font-size:11px}.hero-actions+.trust-line{margin-top:19px}

.report-heading>div,.encounter-card>div{min-width:0}#reportTitle,.encounter-card h3,.quality-grid dd{overflow-wrap:anywhere}
.session-chooser{display:grid;grid-template-columns:minmax(190px,1fr) minmax(250px,1.2fr);gap:12px 28px;align-items:center;padding:22px 25px;border:1px solid #78583b;border-radius:10px;background:linear-gradient(110deg,#3b2a1c55,#151d25);margin-bottom:20px}.session-chooser label{display:block;color:var(--copper);font-size:16px;font-weight:650}.session-chooser p{font-size:11px;line-height:1.8;color:var(--muted);margin-top:5px}.session-chooser select,.playback-controls select{border:1px solid #4b5b67;background:#111a23;color:var(--text);padding:12px;min-height:44px;border-radius:7px;width:100%;min-width:0}.session-chooser>a{font-size:11px}.positions-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.positions-heading h3{margin-top:8px}.positions-heading>a{font-size:11px}.position-empty p{color:var(--muted);margin:12px 0;font-size:13px}.position-empty a{font-size:12px}.position-filters{border:0;padding:0;margin:20px 0;display:flex;flex-wrap:wrap;gap:12px 24px}.position-filters legend{font-size:11px;color:var(--muted);margin-bottom:9px}.position-filters label{display:flex;gap:9px;align-items:center;font-size:12px;cursor:pointer;min-height:32px}.position-filters input{accent-color:var(--teal);width:16px;height:16px}.actor-player{color:var(--teal)}.actor-pet{color:#c3a1f0}.actor-creature{color:var(--copper)}.position-layout{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:18px}.position-stage{min-width:0}.position-stage canvas{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:10px;background:#0d151d}.position-stage .chart-caption{margin-bottom:0}.position-actors-panel{border:1px solid var(--line);background:var(--panel);border-radius:10px;padding:18px;min-width:0}.position-actors-panel h4{font-size:11px;color:var(--muted);font-weight:500;line-height:1.6;margin:0 0 13px}.position-actors{list-style:none;padding:0;margin:0;max-height:300px;overflow:auto}.position-actors li{padding:8px 0;border-bottom:1px solid #ffffff09;font-size:11px}.position-actors strong{font-weight:600;display:block;overflow-wrap:anywhere}.position-actors span{font-size:10px;color:var(--muted);display:block}.position-actors .no-data{padding:10px 0;text-align:left;line-height:1.8}.playback-controls{padding:22px 0 4px}.playback-buttons{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.playback-buttons label{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:11px;margin-left:auto}.playback-controls select{width:80px;padding:10px}.position-timeline{display:grid;grid-template-columns:1fr auto;gap:6px 20px;margin-top:20px;font-size:11px;color:var(--muted);align-items:center}.position-timeline output{font-variant-numeric:tabular-nums;color:var(--text)}.position-timeline input{grid-column:1/-1;width:100%;height:32px;accent-color:var(--teal);cursor:pointer;margin:0}.playback-controls .chart-caption{margin-bottom:0}
@media(max-width:720px){.session-chooser{grid-template-columns:1fr;padding:18px;gap:13px}.session-chooser select{font-size:16px}.session-chooser option{font-size:14px}.positions-heading{align-items:flex-start}.positions-heading>a{max-width:95px}.position-layout{grid-template-columns:1fr}.position-actors-panel{padding:16px}.position-actors{max-height:170px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}.position-actors .no-data{grid-column:1/-1}.position-actors-panel h4{margin-bottom:6px}.position-filters{gap:7px 17px}.playback-buttons{gap:10px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.playback-buttons .button{white-space:normal;text-align:center;padding:9px 10px;font-size:11px;min-height:44px}.playback-buttons>button:first-child{grid-column:1/-1}.playback-buttons label{margin-left:0;grid-column:1/-1}.playback-controls select{font-size:16px}.position-stage canvas{min-height:175px}}
