:root{color-scheme:light;--plane: #f9f9f7;--surface-1: #fcfcfb;--border: #e4e3df;--text-primary: #0b0b0b;--text-secondary: #52514e;--text-muted: #7c7b76;--series-1: #2a78d6;--series-2: #eb6834;--good: #0ca30c;--warning: #fab219;--critical: #d03b3b;--grid: #ebeae6;--owner: #b8860b;--owner-bg: #fbf4e0;--q-poor: #9d9d9d;--q-common: #ffffff;--q-uncommon: #1eff00;--q-rare: #0070dd;--q-epic: #a335ee;--q-legendary: #ff8000;--q-artifact: #e6cc80;--cls-warrior: #c79c6e;--cls-paladin: #f58cba;--cls-hunter: #abd473;--cls-rogue: #fff569;--cls-priest: #ffffff;--cls-shaman: #0070de;--cls-mage: #69ccf0;--cls-warlock: #9482c9;--cls-druid: #ff7d0a;--ch-say: #ffffff;--ch-yell: #ff3f40;--ch-guild: #3ce13f;--ch-party: #aaabfe;--ch-whisper: #ff7eff;--ch-channel: #fec1c0;--ch-emote: #ff8040}:root[data-theme=light],:root:not([data-theme=dark]){--q-common: #3a3a3a;--cls-priest: #6b6b6b;--ch-say: #2b2b2b}:root[data-theme=dark]{--q-common: #ffffff;--cls-priest: #ffffff;--ch-say: #ffffff}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--q-common: #ffffff;--cls-priest: #ffffff;--ch-say: #ffffff}}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--plane: #0d0d0d;--surface-1: #1a1a19;--border: #34342f;--text-primary: #ffffff;--text-secondary: #c3c2b7;--text-muted: #8f8e85;--series-1: #3987e5;--series-2: #d95926;--grid: #2a2a27;--owner: #ffd25e;--owner-bg: #2a2411}}:root[data-theme=dark]{color-scheme:dark;--plane: #0d0d0d;--surface-1: #1a1a19;--border: #34342f;--text-primary: #ffffff;--text-secondary: #c3c2b7;--text-muted: #8f8e85;--series-1: #3987e5;--series-2: #d95926;--grid: #2a2a27;--owner: #ffd25e;--owner-bg: #2a2411}*{box-sizing:border-box}body{margin:0;background:var(--plane);color:var(--text-primary);font:14px/1.5 ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}.wrap{max-width:1400px;margin:0 auto;padding:24px 20px 64px}header{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;margin-bottom:20px}h1{font-size:20px;font-weight:650;margin:0;letter-spacing:-.01em}.sub{color:var(--text-muted);font-size:13px}.pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:550;border:1px solid var(--border)}.dot{width:8px;height:8px;border-radius:50%;flex:none}a.pill{text-decoration:none;color:var(--text-secondary)}a.pill:hover{color:var(--text-primary);border-color:var(--text-muted)}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:20px}.tile{background:var(--surface-1);border:1px solid var(--border);border-radius:10px;padding:14px 16px}.tile .label{color:var(--text-secondary);font-size:12px;font-weight:550;text-transform:uppercase;letter-spacing:.04em}.tile .value{font-size:28px;font-weight:640;margin-top:4px;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.tile .note{color:var(--text-muted);font-size:12px;margin-top:2px;font-variant-numeric:tabular-nums}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pov{display:grid;grid-template-columns:260px 1fr;gap:16px}@media(max-width:860px){.pov{grid-template-columns:1fr}}.pov-list{max-height:420px;overflow-y:auto;border:1px solid var(--border);border-radius:8px}.pov-row{display:flex;align-items:baseline;gap:8px;padding:7px 10px;cursor:pointer;border-bottom:1px solid var(--grid);font-size:13px}.pov-row:last-child{border-bottom:0}.pov-row:hover{background:var(--grid)}.pov-row[aria-selected=true]{background:var(--grid);box-shadow:inset 3px 0 0 var(--series-1)}.pov-row[aria-selected=true] .who{color:var(--text-primary);font-weight:700}.pov-row .lvl{color:var(--text-muted);font-variant-numeric:tabular-nums}.pov-row .who{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pov-row.is-human .who{color:var(--owner)}.pov-dot{width:7px;height:7px;border-radius:50%;flex:none}.pov-detail{font-size:13px}.pov-detail h3{margin:0 0 2px;font-size:15px}.pov-chat{min-height:150px;max-height:340px;overflow-y:auto;margin:8px 0;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--plane);display:flex;flex-direction:column;gap:8px}.pov-chat .line{max-width:85%;align-self:flex-start;padding:6px 11px 7px;border-radius:12px;background:var(--surface-1);border:1px solid var(--border);font-size:13.5px;overflow-wrap:anywhere}.pov-chat .line .who{display:block;font-size:11px;font-weight:600;letter-spacing:.02em;margin-bottom:2px;color:var(--text-secondary)}.pov-chat .line.mine{align-self:flex-end;background:var(--series-1);border-color:transparent;color:#fff}.pov-chat .line.mine .who{color:#fffc}:root[data-theme=dark] .pov-chat .line.mine{background:#2563c4}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .pov-chat .line.mine{background:#2563c4}}.pov-chat .line.act{align-self:center;max-width:95%;background:none;border:1px dashed var(--border);color:var(--text-muted);font-family:ui-monospace,monospace;font-size:11px;text-align:center}.pov-chat .line.act .who{display:inline;margin:0 4px 0 0}.pov-chat .chat-empty{margin:auto;max-width:80%;text-align:center;color:var(--text-muted);font-size:13px;line-height:1.5}.pov-chat .chat-empty b{color:var(--text-secondary)}.pov-chat .pending{display:inline-flex;gap:4px;padding:3px 1px}.pov-chat .pending i{width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.4;animation:pov-think 1.1s ease-in-out infinite}.pov-chat .pending i:nth-child(2){animation-delay:.15s}.pov-chat .pending i:nth-child(3){animation-delay:.3s}@keyframes pov-think{0%,to{transform:translateY(0);opacity:.35}50%{transform:translateY(-3px);opacity:1}}.pov-chatbar{display:flex;align-items:center;gap:8px;margin-top:2px;padding:4px 4px 4px 14px;background:var(--surface-1);border:1px solid var(--border);border-radius:999px}.pov-chatbar:focus-within{border-color:var(--series-1)}.pov-chatbar input{flex:1;min-width:0;border:0;outline:none;background:none;color:var(--text-primary);font-size:16px;padding:9px 0}.pov-chatbar input::placeholder{color:var(--text-muted)}.pov-chatbar input:disabled{opacity:.5}.pov-send{flex:none;width:42px;height:42px;border:0;border-radius:50%;background:var(--series-1);color:#fff;cursor:pointer;display:grid;place-items:center;transition:transform .06s}.pov-send:active{transform:scale(.94)}.pov-send:disabled{opacity:.4;cursor:default}.pov-send svg{width:18px;height:18px;fill:currentColor}.pov-star{flex:none;border:0;background:none;padding:3px;margin:0 -4px;cursor:pointer;color:var(--text-muted);opacity:.5}.pov-star:hover,.pov-star:focus-visible{opacity:1;color:var(--owner);outline:none}.pov-star.on{color:var(--owner);opacity:1}.pov-star svg{display:block;width:15px;height:15px;fill:currentColor}.favtoggle{font:inherit;font-size:12px;font-weight:550;cursor:pointer;display:inline-flex;align-items:center;gap:6px;padding:4px 11px;border-radius:999px;border:1px solid var(--border);background:var(--plane);color:var(--text-secondary);white-space:nowrap}.favtoggle:hover{border-color:var(--text-muted)}.favtoggle.on{border-color:var(--owner);color:var(--owner);background:var(--owner-bg)}.favtoggle svg{width:12px;height:12px;fill:currentColor;flex:none}.pov-field{margin-bottom:9px}.pov-field b{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:2px}.pov-bar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:12px 0 4px}.pov-bar button{font:inherit;padding:5px 11px;border-radius:6px;border:1px solid var(--border);background:var(--plane);color:var(--text-primary);cursor:pointer}.pov-bar button:hover:not(:disabled){border-color:var(--text-muted)}.pov-bar button:disabled{opacity:.5;cursor:not-allowed}.pov-note{color:var(--text-muted);font-size:12px}.pov-note.err{color:var(--critical)}.pov-hook{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12px;background:var(--plane);border:1px solid var(--border);border-radius:6px;padding:8px 10px;margin-top:8px;white-space:pre-wrap;word-break:break-all}.pov-hook.agent-held{white-space:normal;border-color:var(--accent, var(--border));font-family:inherit}.linkish{background:none;border:0;padding:0;font:inherit;color:var(--text-muted);text-decoration:underline;cursor:pointer}.linkish:hover{color:var(--text)}.chip{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:999px;border:1px solid var(--border);background:var(--plane);font-size:12px;line-height:1.7;white-space:nowrap}.chip .swatch,.chip .cdot{width:8px;height:8px;border-radius:50%;flex:none}.chip.solid{border-color:transparent}.chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.chip.lvl{font-variant-numeric:tabular-nums;font-weight:600}.chip.owner{border-color:var(--owner);background:var(--owner-bg);color:var(--owner)}.chip.live{border-color:var(--good);color:var(--good)}.chip.held{border-color:var(--series-2);color:var(--series-2)}.q{font-weight:600}.skill-bar{display:block;height:3px;border-radius:2px;margin-top:3px;background:var(--grid);overflow:hidden}.skill-bar i{display:block;height:100%;background:var(--series-1)}.pov-search{font:inherit;padding:4px 8px;border-radius:6px;border:1px solid var(--border);background:var(--plane);color:var(--text-primary);width:190px}@media(pointer:coarse){.pov-search{font-size:16px}}@media(max-width:900px){.grid2{grid-template-columns:1fr}}.card{background:var(--surface-1);border:1px solid var(--border);border-radius:10px;padding:16px;margin-bottom:16px}.card h2{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin:0 0 12px}.legend{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12px;color:var(--text-secondary);margin-bottom:8px}.legend span{display:inline-flex;align-items:center;gap:6px}.swatch{width:10px;height:2px;border-radius:1px}.scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;font-weight:550;color:var(--text-secondary);font-size:12px;padding:6px 10px 6px 0;border-bottom:1px solid var(--border);white-space:nowrap}td{padding:7px 10px 7px 0;border-bottom:1px solid var(--grid);vertical-align:top}td.num{text-align:right;font-variant-numeric:tabular-nums;padding-right:16px}tr:last-child td{border-bottom:none}.feed{max-height:340px;overflow-y:auto;font-size:13px}.msg{padding:5px 0;border-bottom:1px solid var(--grid)}.msg .who{font-weight:600;margin-right:5px}.msg .chan{color:var(--text-muted);font-size:11px;text-transform:uppercase;letter-spacing:.03em;margin-right:6px}.msg .body{color:var(--text-secondary)}.cdot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:6px;border:1px solid var(--border)}.goal{padding:7px 0;border-bottom:1px solid var(--grid)}.goal .who{font-weight:600}.goal .what{color:var(--text-secondary)}.empty{color:var(--text-muted);font-style:italic;padding:12px 0}svg{display:block;width:100%;height:auto}.axis{stroke:var(--border);stroke-width:1}.gridline{stroke:var(--grid);stroke-width:1}.tick{fill:var(--text-muted);font-size:10px}.radar{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}@media(max-width:700px){.radar{grid-template-columns:1fr}}.pane{background:#011d28;border:1px solid #232c47;border-radius:8px;overflow:hidden;position:relative;width:100%}.pane .title{position:absolute;top:8px;left:10px;z-index:2;color:#8fa3d8;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.pane .count{position:absolute;top:8px;right:10px;z-index:2;color:#4b5b8a;font-size:11px;font-variant-numeric:tabular-nums}.terrain-img{pointer-events:none}.blip{fill-opacity:.85;paint-order:stroke fill;stroke:#0a0f1e;stroke-width:1.1px;vector-effect:non-scaling-stroke}.blip:hover{fill-opacity:1;stroke:#fff;stroke-width:1.6;vector-effect:non-scaling-stroke}.blip.you{fill-opacity:1}.you-ring{fill:none;stroke:#ffd25e;stroke-width:1;vector-effect:non-scaling-stroke;transform-box:fill-box;transform-origin:center;animation:pulse 2s ease-out infinite}@keyframes pulse{0%{transform:scale(1);opacity:.9}to{transform:scale(3);opacity:0}}.pane svg{cursor:grab;touch-action:none}.blip[data-guid]{cursor:pointer}.blip.picked{fill-opacity:1;stroke:#fff;stroke-width:2.2;vector-effect:non-scaling-stroke}.pick-ring{fill:none;stroke:#c9d6ff;stroke-width:1.4;vector-effect:non-scaling-stroke;transform-box:fill-box;transform-origin:center;animation:pulse 2s ease-out infinite}.pick-label{fill:#eef2ff;font-size:3.2px;font-weight:700;paint-order:stroke;stroke:#0a0f1e;stroke-width:1.2px}.pane svg.dragging{cursor:grabbing}.radar-hint{color:var(--text-muted);font-size:11px;margin-top:6px}button.chip.is-tap{font:inherit;cursor:pointer}button.chip.is-tap:hover,button.chip.is-tap:focus-visible{border-color:var(--text-muted);outline:none}@media(pointer:coarse){button.chip.is-tap{padding-top:6px;padding-bottom:6px}}.who-name{font:inherit;font-weight:600;background:none;border:0;padding:0;margin:0;text-align:left}.who-name.is-link{cursor:pointer;border-radius:3px}.who-name.is-link:hover,.who-name.is-link:focus-visible{text-decoration:underline;text-underline-offset:2px;outline:none}@media(pointer:coarse){.who-name.is-link{padding:2px 0}}#tip{position:fixed;z-index:40;pointer-events:none;display:none;background:#0d1428;border:1px solid #35447a;border-radius:6px;padding:5px 8px;font-size:12px;line-height:1.35;color:#e8ecf8;box-shadow:0 4px 14px #00000080;white-space:nowrap}#tip b{font-weight:620}#tip .meta{color:#93a3cd}.radar-legend{display:flex;flex-wrap:wrap;gap:10px 14px;margin-top:10px;font-size:12px;color:var(--text-secondary)}.radar-legend span{display:inline-flex;align-items:center;gap:5px}.radar-legend i{width:9px;height:9px;border-radius:50%;flex:none}.cardhead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.cardhead h2{margin:0}.cardhead select{background:var(--plane);color:var(--text-primary);border:1px solid var(--border);border-radius:6px;padding:3px 6px;font:inherit;font-size:12px;max-width:55%}@media(max-width:560px){.cardhead>:not(h2){flex:1 0 100%}.cardhead>span{display:flex;gap:8px}.cardhead .pov-search{flex:1;width:auto;min-width:0}.cardhead select{max-width:none}}.msg .zone{color:var(--text-muted);font-size:11px;margin-left:6px}.mine{border-left:2px solid var(--owner);padding-left:7px;margin-left:-9px;background:var(--owner-bg)}.mine .who,.mine .name{color:var(--owner);font-weight:650}.owner-ring{fill:none;stroke:var(--owner);stroke-width:1.4;vector-effect:non-scaling-stroke}.owner-label{fill:var(--owner);font-size:3px;font-weight:700;paint-order:stroke;stroke:#0a0f1e;stroke-width:1.1px}.pane svg{width:100%;height:auto}.rel-bar{display:flex;height:8px;border-radius:999px;overflow:hidden;background:var(--surface-2, rgba(255, 255, 255, .06))}.rel-bar>span{display:block;height:100%}.rel-bar>span:not([style*="width: 0%"]){min-width:2px}
