:root{--bg: #050810;--ink: #eef6ff;--muted: #9db4c9;--line: rgba(0, 220, 255, .22);--panel: linear-gradient(180deg, rgba(16, 32, 58, .55), rgba(8, 14, 28, .42));--sans: "IBM Plex Sans", "IBM Plex Sans JP", "Hiragino Sans", sans-serif;--serif: "Newsreader", "Hiragino Mincho ProN", serif;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;height:100%;height:100dvh;background:var(--bg);color:var(--ink);font-family:var(--sans);overscroll-behavior:none}body{overflow:hidden;-webkit-tap-highlight-color:transparent}#map{position:absolute;inset:0;width:100%;height:100%;display:block;cursor:grab;background:transparent;touch-action:none;-webkit-user-select:none;user-select:none}.grain{pointer-events:none;position:fixed;inset:0;z-index:1;opacity:.045;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.vignette{pointer-events:none;position:fixed;inset:0;z-index:1;background:radial-gradient(ellipse at 50% 42%,transparent 30%,rgba(5,8,16,.55) 100%),linear-gradient(180deg,rgba(0,220,255,.06),transparent 18%,transparent 82%,rgba(255,70,210,.06))}.hud,.rail,.inspector,.foot{position:fixed;z-index:2;-webkit-backdrop-filter:blur(22px) saturate(1.35);backdrop-filter:blur(22px) saturate(1.35);background:var(--panel);border:1px solid var(--line);border-radius:18px;box-shadow:0 0 40px #00dcff14,0 0 28px #ff46d214,inset 0 1px #ffffff29}.hud{top:18px;left:18px;right:18px;display:flex;justify-content:space-between;gap:18px;align-items:flex-end;padding:14px 18px}.brand-row{display:flex;flex-wrap:nowrap;align-items:center;gap:10px;min-width:0}a.nav-status{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex-shrink:0;box-sizing:border-box;min-height:44px;padding:0 14px;border-radius:999px;text-decoration:none;font-size:12px;font-weight:600;letter-spacing:.04em;line-height:1;white-space:nowrap;color:#050810;background:linear-gradient(105deg,#00dcff,#c9a8ff 42%,#ff7ae9 78%,#ff46d2);box-shadow:0 0 18px #00dcff47,0 0 16px #ff46d238,inset 0 1px #ffffff8c;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:transform .22s cubic-bezier(.22,1.4,.36,1),box-shadow .22s ease,filter .22s ease}a.nav-status:visited{color:#050810}a.nav-status:hover{color:#050810;transform:translateY(-1px) scale(1.03);filter:brightness(1.06);box-shadow:0 0 24px #00dcff66,0 0 22px #ff46d252,inset 0 1px #ffffffb3}a.nav-status:active{transform:translateY(1px) scale(.98);filter:brightness(.96)}a.nav-status:focus-visible{outline:2px solid #ff7ae9;outline-offset:3px}.nav-status-ico{width:14px;height:14px;flex-shrink:0}.nav-status-dot{transform-origin:8px 8px;animation:nav-status-pulse 1.8s ease-in-out infinite}@keyframes nav-status-pulse{50%{opacity:.5}}@media(prefers-reduced-motion:reduce){a.nav-status{transition:none}a.nav-status:hover,a.nav-status:active{transform:none;filter:none}.nav-status-dot{animation:none}}.kicker{margin:0;letter-spacing:.16em;text-transform:uppercase;font-size:10px;color:#94a3b8}h1{margin:2px 0 0;font-family:var(--serif);font-size:28px;font-weight:650;letter-spacing:-.03em;color:#00dcff;text-shadow:0 0 14px rgba(0,220,255,.45)}.lookup{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;flex:1;justify-content:flex-end}.field{display:grid;gap:4px;font-size:11px;color:var(--muted)}.field.grow{flex:1;min-width:260px;max-width:520px}input[type=text],input[type=search]{width:100%;background:#ffffff0a;border:1px solid rgba(0,245,255,.35);border-radius:999px;color:var(--ink);font:inherit;padding:8px 14px}input[type=search]:focus{outline:0;border-color:#ff46d2;box-shadow:0 0 0 3px #ff46d22e,0 0 16px #00dcff33}input[type=range]{width:160px;accent-color:#00dcff}button{font:inherit;border:0;background:linear-gradient(90deg,#00dcff,#ff46d2);color:#050810;padding:9px 16px;cursor:pointer;border-radius:999px;font-weight:600;box-shadow:0 0 18px #00dcff47;touch-action:manipulation}button.icon{display:none;min-width:44px;padding:8px 10px}.scrim{position:fixed;inset:0;z-index:3;background:#0508108c}button:disabled{opacity:.45;cursor:wait}.rail{top:96px;left:18px;width:300px;padding:16px 18px 18px;max-height:calc(100vh - 160px);overflow:auto}.inspector{top:96px;right:18px;width:340px;padding:16px 18px 18px;max-height:calc(100vh - 160px);overflow:auto}.rail h2,.inspector h2,.inspector h3,.howto summary{margin:0 0 8px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:500}.howto summary{cursor:pointer;list-style:none}.howto summary::-webkit-details-marker{display:none}.howto summary:before{content:"▸ ";color:#00dcff}.howto[open] summary:before{content:"▾ "}.howto .legend,.howto .fine{margin-top:8px}.rail section+section{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.legend{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:12px;line-height:1.45}.legend li{display:grid;grid-template-columns:22px 1fr;gap:8px;align-items:center}.swatch{width:16px;height:16px;border-radius:99px;justify-self:center}.swatch.size{background:#e2e8f0;width:10px;height:10px;box-shadow:8px 0 0 4px #94a3b8,18px 0 0 7px #0f172a;border-radius:99px}.swatch.tone,.heatbar{background:linear-gradient(90deg,#2929ff 0 8.33%,#2977ff 8.33% 16.67%,#29c6ff 16.67% 25%,#29ffea 25% 33.33%,#29ff9f 33.33% 41.67%,#29ff50 41.67% 50%,#50ff29 50% 58.33%,#9fff29 58.33% 66.67%,#ecff29 66.67% 75%,#ffc529 75% 83.33%,#ff7629 83.33% 91.67%,#ff2929 91.67% 100%);box-shadow:0 0 10px #2929ff59}body.cb .swatch.tone,body.cb .heatbar{background:linear-gradient(90deg,#440154,#31688e,#35b779,#fde725)}.gate{position:fixed;inset:0;z-index:9;display:grid;place-items:center;padding:18px;background:#050810b8}.gate[hidden]{display:none}.gate-card{width:min(420px,100%);padding:22px 20px 18px;border-radius:18px;border:1px solid var(--line);background:var(--panel);-webkit-backdrop-filter:blur(22px) saturate(1.35);backdrop-filter:blur(22px) saturate(1.35);box-shadow:0 0 40px #00dcff1f}.gate-card p{margin:0 0 10px;font-size:14px;line-height:1.5;color:var(--ink)}.gate-card .kicker{margin-bottom:12px;color:#00dcff}.gate-card button{margin-top:8px}.langs{display:flex;flex-wrap:wrap;gap:6px}.langs button{background:#ffffff0a;color:var(--ink);border:1px solid var(--line);padding:4px 9px;font-size:11px;font-weight:500;border-radius:999px}.langs button.on{background:#00dcffd9;color:#050810;border-color:#00dcffe6;box-shadow:0 0 12px #00dcff66}.legend li:has(.heatbar){grid-template-columns:1fr}.heatbar{display:block;height:10px;width:100%;border-radius:99px;background:linear-gradient(90deg,#2929ff 0 8.33%,#2977ff 8.33% 16.67%,#29c6ff 16.67% 25%,#29ffea 25% 33.33%,#29ff9f 33.33% 41.67%,#29ff50 41.67% 50%,#50ff29 50% 58.33%,#9fff29 58.33% 66.67%,#ecff29 66.67% 75%,#ffc529 75% 83.33%,#ff7629 83.33% 91.67%,#ff2929 91.67% 100%);box-shadow:0 0 12px #ff292938,0 0 18px #2929ff33;opacity:.92}.swatch.find{background:#1e293b;box-shadow:0 0 0 2px #f8fafc}.swatch.saved{background:#1a0614;box-shadow:0 0 0 2px #ff7ae9,0 0 10px #ff7ae9}a.ss58-go{color:#ff7ae9;word-break:break-all}.swatch.note{background:transparent;box-shadow:0 0 0 1px #00dcff,0 0 0 3px #ffdc82,0 0 0 5px #ff46d2}.seg{display:flex;gap:6px;flex-wrap:wrap}.seg button{background:#ffffff0a;color:var(--ink);border:1px solid var(--line);box-shadow:none;padding:5px 10px;font-size:11px}.seg button.on{background:#00dcffd9;color:#050810}#event-testnet{margin:0 0 6px}#event-testnet.on{background:#ffd08038;color:#ffe7b0}.suggest-box{margin:10px 0 0}.suggest-box .fine{margin:0 0 6px}.chip-row{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 8px}.chip-row button{background:#00dcff14;color:var(--ink);border:1px solid var(--line);box-shadow:none;padding:3px 8px;font-size:11px;font-weight:500}.chip-row button.pin{border-color:#ffdc8273}button.slim{padding:6px 12px;font-size:12px;margin-top:6px}.path-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}select{width:100%;background:#ffffff0a;border:1px solid rgba(0,220,255,.32);border-radius:10px;color:var(--ink);font:inherit;padding:6px 8px}.tip{position:fixed;z-index:5;pointer-events:none;max-width:240px;padding:8px 10px;border-radius:10px;background:#081020d1;border:1px solid rgba(0,220,255,.28);color:#eef6ff;font-size:12px;line-height:1.4;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.tip b{display:block;font-size:13px;margin-bottom:2px}.chip{display:inline-flex;align-items:stretch;border:1px solid var(--line);border-radius:99px;overflow:hidden;background:#00dcff14;font-size:11px}.chip.iso{border-color:#50ffd2bf;background:#50ffd229}.chip>span{padding:3px 8px;line-height:1.4}.chip-row .chip button{background:transparent;border:0;border-radius:0;box-shadow:none;padding:3px 8px}.chip button.x{opacity:.65;padding-inline:6px}.fine,.muted{color:var(--muted);font-size:12px;line-height:1.5}.check{display:flex;gap:8px;align-items:center;font-size:13px;margin:0}.filter-row{display:flex;align-items:flex-start;gap:6px;margin:0 0 8px}.filter-row .check,.filter-row .field{flex:1;min-width:0}.filter-row .field{margin:0}button.help{flex:none;width:18px;height:18px;min-width:18px;padding:0;margin-top:1px;border-radius:4px;font-size:11px;font-weight:700;line-height:18px;letter-spacing:0;background:#ffffff0f;color:var(--muted);border:1px solid var(--line);box-shadow:none}button.help:hover,button.help[aria-expanded=true]{color:#00dcff;border-color:#00dcff8c;background:#00dcff1f}.help-pop{position:fixed;z-index:8;max-width:min(280px,calc(100vw - 24px));padding:9px 11px;font-size:12px;line-height:1.45;color:#eef6ff;background:#081020f0;border:1px solid rgba(0,220,255,.35);border-radius:10px;box-shadow:0 8px 24px #00000059;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.rooms,.did{font-size:11px;line-height:1.55;color:var(--muted);word-break:break-all}.foot{left:18px;right:18px;bottom:14px;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:8px 14px;font-size:11px;color:var(--muted)}.foot #status{color:#e2e8f0;text-align:right}.foot .fine{text-align:center;flex:1}.inspector h2:first-child,.panel-bar h2{text-transform:none;letter-spacing:0;font-family:var(--serif);font-size:22px;color:#00dcff;text-shadow:0 0 12px rgba(0,220,255,.4)}.panel-bar{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.panel-bar h2{margin:0;flex:1;min-width:0}.panel-close{flex:none;width:36px;height:36px;min-width:36px;padding:0;margin:-4px -6px 0 0;border-radius:99px;font-size:22px;font-weight:500;line-height:36px;background:#ffffff0f;color:var(--ink);border:1px solid var(--line);box-shadow:none}.rail-bar{display:none}.inspector button.on{outline:1px solid rgba(80,255,210,.7);background:#50ffd22e;color:var(--ink);box-shadow:none}dl{display:grid;gap:8px;margin:12px 0}dl div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:6px;font-size:13px}dl.notes div{display:grid;grid-template-columns:52px 1fr;align-items:start}dt{color:var(--muted)}dd{margin:0;text-align:right;word-break:break-word}.inspector .nlabel{margin:8px 0 4px;font-size:11px}.inspector .neighbors{margin-bottom:6px}.inspector .neighbors button{margin-top:0}.rail input[type=range]{width:100%}.chips{display:flex;flex-wrap:wrap;gap:6px}.chips span{border:1px solid rgba(0,245,255,.35);padding:2px 7px;font-size:11px;border-radius:99px}.note,.samples{font-size:12px;line-height:1.5;word-break:break-word}.samples{padding-left:16px;margin:0}@media(max-width:980px){button.icon{display:inline-flex;justify-content:center;align-items:center;min-width:44px;min-height:44px}.hud{top:max(8px,env(safe-area-inset-top));left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));flex-wrap:wrap;align-items:center;gap:8px 10px;padding:10px 12px}.kicker{display:none}h1{font-size:20px;margin:0}.brand-row{gap:8px}a.nav-status{padding:0 12px;letter-spacing:.02em}.hud .brand{order:1;flex:1;min-width:0}#menu{order:2;margin-left:auto}.lookup{order:3;flex:1 1 100%;width:100%;justify-content:flex-end;gap:8px}.hud button{min-height:40px}.field.grow{min-width:0;max-width:none;flex:1 1 100%}input[type=text],input[type=search]{font-size:16px;padding:10px 14px}.rail{display:block;top:max(8px,env(safe-area-inset-top));left:auto;right:max(8px,env(safe-area-inset-right));bottom:max(8px,env(safe-area-inset-bottom));width:min(300px,calc(100vw - 16px));max-height:none;border-radius:18px;z-index:4;transform:translate(calc(100% + 24px));transition:transform .2s ease;padding:16px 18px 18px;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.rail.open{transform:none}.rail-bar{display:flex;justify-content:flex-end;position:sticky;top:-16px;z-index:1;margin:-8px -6px 4px 0;padding:4px 0 8px;background:linear-gradient(180deg,rgba(12,24,42,.92),rgba(12,24,42,.72) 70%,transparent)}.rail-bar .panel-close{margin:0}.inspector{display:block;top:auto;right:max(8px,env(safe-area-inset-right));left:max(8px,env(safe-area-inset-left));bottom:max(52px,calc(44px + env(safe-area-inset-bottom)));width:auto;max-height:min(42vh,380px);z-index:3;padding-bottom:14px;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.inspector:not(.open){display:none}.foot{left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));bottom:max(8px,env(safe-area-inset-bottom));gap:8px;padding:6px 10px;font-size:10px}.foot .fine{display:none}button.help{width:28px;height:28px;min-width:28px;line-height:28px;margin-top:0}.chip-row .chip button,.seg button,.langs button{min-height:32px;padding:6px 10px}.filter-row .field input[type=range]{width:100%;min-height:28px}.hud .field>span{display:none}}
