:root{--bg: #14121c;--panel: #1a1a2e;--panel-border: #4a4a6a;--gold: #ffd700;--gold-soft: rgba(255, 215, 0, .18);--text: #e8e6f0;--text-dim: #a7a4bd;--pos: #5fe08a;--neg: #ff6a6a}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:var(--bg);color:var(--text);font-family:Segoe UI,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}#tree{position:fixed;top:0;right:0;bottom:0;left:0;display:block;cursor:grab;touch-action:none}#tree.dragging{cursor:grabbing}#topbar{position:fixed;top:0;left:0;right:0;height:52px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:linear-gradient(180deg,#14121cf5,#14121cb8);border-bottom:1px solid rgba(255,215,0,.16);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:10}.brand{font-size:18px;font-weight:700;letter-spacing:.02em;background:linear-gradient(120deg,#f0d489,#c8743a);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.brand span{font-weight:400;opacity:.75;-webkit-text-fill-color:var(--text-dim)}.controls{display:flex;align-items:center;gap:12px}.field{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-dim)}#race{background:var(--panel);color:var(--text);border:1px solid var(--panel-border);border-radius:6px;padding:5px 8px;font-size:13px;cursor:pointer}#center,#clear{background:var(--panel);color:var(--text);border:1px solid var(--panel-border);border-radius:6px;padding:6px 12px;font-size:13px;cursor:pointer;transition:border-color .15s,color .15s}#center:hover{border-color:var(--gold);color:var(--gold)}#clear:hover{border-color:var(--neg);color:var(--neg)}.count{font-size:13px;font-variant-numeric:tabular-nums;color:var(--gold);background:var(--gold-soft);border:1px solid var(--gold-soft);border-radius:999px;padding:4px 12px;white-space:nowrap}.zoom{min-width:48px;text-align:center;font-variant-numeric:tabular-nums;font-size:13px;color:var(--gold);border:1px solid var(--gold-soft);border-radius:999px;padding:4px 10px}#wiki-link{font-size:13px;color:var(--text-dim);text-decoration:none;border-bottom:1px dashed transparent}#wiki-link:hover{color:var(--gold);border-bottom-color:var(--gold-soft)}#legend{position:fixed;right:14px;bottom:48px;background:#1a1a2ed1;border:1px solid var(--panel-border);border-radius:10px;padding:10px 12px;font-size:12px;color:var(--text-dim);z-index:9;max-width:220px}#legend h4{margin:0 0 6px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--gold)}#legend .row{display:flex;align-items:center;gap:8px;margin:3px 0}#legend .dot{border-radius:50%;flex:none;border:1px solid rgba(255,255,255,.3)}#legend .sep{height:1px;background:var(--panel-border);margin:8px 0}#planner{position:fixed;left:14px;bottom:48px;display:flex;flex-direction:column;gap:10px;background:#1a1a2ed1;border:1px solid var(--panel-border);border-radius:10px;padding:12px;z-index:9;width:190px}#planner h4{margin:0;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--gold)}#planner .field{flex-direction:column;align-items:stretch;gap:4px}#planner .race-pick{display:flex;align-items:center;gap:6px}#planner .race-pick #race{flex:1;min-width:0}.race-face{flex:none;width:23px;height:30px;image-rendering:pixelated;background-repeat:no-repeat;background-size:92px 30px;background-position:0 0;border-radius:4px}#planner .planner-row{display:flex;align-items:center;gap:8px}#planner .planner-row .count{flex:1;text-align:center;padding:4px 8px;font-size:12px}#planner .planner-row #clear{flex:none;padding:4px 10px;font-size:12px}.tooltip{position:fixed;z-index:20;max-width:240px;background:var(--panel);border:1px solid var(--gold);border-radius:8px;padding:8px 10px;font-size:13px;line-height:1.45;pointer-events:none;box-shadow:0 8px 24px #00000080}.tooltip .t-title{font-weight:700;color:#fff;margin-bottom:2px}.tooltip .t-desc{color:var(--text-dim);margin-bottom:4px}.tooltip .t-sep{height:1px;background:#3a3a52;margin:5px 0}.tooltip .t-mod{white-space:nowrap}.tooltip .t-mod.pos{color:var(--pos)}.tooltip .t-mod.neg{color:var(--neg)}#hint{position:fixed;bottom:0;left:0;right:0;height:36px;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--text-dim);background:linear-gradient(0deg,rgba(20,18,28,.92),transparent);z-index:9}#hint strong{color:var(--gold);font-weight:600}@media (max-width: 640px){.brand span,#legend,#wiki-link{display:none}}
