:root{--bg:#070a14;--panel:#0e1322;--line:#1f2740;--line-strong:#3a4670;--text:#e6eaf5;--mute:#8e9ab8;--dim:#6f7b99;--accent:#c9b6ff;--raised:#141b30;--sans:ui-sans-serif, -apple-system, "Segoe UI", Helvetica, Arial, sans-serif;--serif:Georgia, "Times New Roman", serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--sans);overflow:hidden}button{font:inherit;color:inherit}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app{height:100%;display:flex}.stage{flex:1;min-width:0;position:relative}.panel{background:var(--panel);border-left:1px solid var(--line);flex:none;width:360px;padding:22px 22px 30px;overflow-y:auto}.map{position:absolute;inset:0;overflow:hidden}.map canvas{cursor:grab;touch-action:none;width:100%;height:100%;display:block}.map-labels{pointer-events:none;position:absolute;inset:0;overflow:hidden}.map-label{white-space:nowrap;font:13px var(--sans);color:#dfe5f4;will-change:transform;background:#070a14cc;border-radius:6px;justify-content:center;align-items:center;display:flex;position:absolute;top:0;left:0}.map-label.p0{font:600 17px var(--serif);color:#fff;background:#070a14d9}.map-label.p2{color:#fff}.map-label.p3{color:#c9d2e8}.topbar{pointer-events:none;flex-wrap:wrap;align-items:center;gap:16px;display:flex;position:absolute;top:16px;left:20px;right:20px}.topbar>*{pointer-events:auto}.wordmark{font-family:var(--serif);letter-spacing:.02em;font-size:20px}.message{text-align:center;background:var(--bg);flex-direction:column;justify-content:center;align-items:center;height:100%;padding:24px;display:flex}.message h1{font:400 26px var(--serif);margin:0 0 10px}.message p{color:var(--mute);max-width:40ch;margin:0;line-height:1.5}.panel h1{font:400 28px/1.15 var(--serif);text-wrap:balance;margin:8px 0 10px}@media (width<=800px){.app{flex-direction:column}.panel{border-left:0;border-top:1px solid var(--line);width:auto;height:45%}}.pill{cursor:pointer;border:1px solid var(--line);background:#141b30d1;border-radius:999px;align-items:center;gap:7px;padding:6px 13px;font-size:12.5px;display:inline-flex}.pill:hover:not(:disabled){border-color:var(--line-strong)}.pill:disabled{opacity:.45;cursor:default}.view-switch,.filters,.list-buttons{flex-wrap:wrap;gap:6px;display:flex}.view-switch .pill[aria-pressed=true],.list-buttons .pill[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#151028;font-weight:600}.filters .pill[aria-pressed=false]{opacity:.5;text-decoration:line-through}.filters .pill:disabled{opacity:1}.bottombar{pointer-events:none;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex;position:absolute;bottom:16px;left:20px;right:20px}.bottombar>*{pointer-events:auto}.controls{flex-wrap:wrap;align-items:center;gap:8px 22px;display:flex}.switch-label{letter-spacing:.08em;text-transform:uppercase;color:var(--mute);align-self:center;margin-right:2px;font-size:11px}.hint{color:var(--mute);pointer-events:none;font-size:11px}.dot{border-radius:50%;flex:none;width:9px;height:9px;display:inline-block}.panel .back{margin-bottom:16px}.kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--mute);align-items:center;gap:8px;font-size:11px;display:flex}.list-buttons{margin:0 0 14px}.definition{color:#cfd6ea;margin:0 0 12px;font-size:14.5px;line-height:1.55}.more{color:var(--mute);margin:0 0 6px;font-size:12.5px}.source{color:var(--dim);margin:0;font-size:11.5px}.panel h2{letter-spacing:.12em;text-transform:uppercase;color:var(--mute);margin:24px 0 4px;font-size:11px;font-weight:600}.sub{color:var(--dim);margin:0 0 8px;font-size:11.5px}.empty{color:var(--mute);margin:6px 0;font-size:13px}.row{text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;width:100%;padding:9px 10px;display:block}.row:hover,.row:focus-visible{background:var(--raised);border-color:var(--line)}.row-title{font-size:14px;display:block}.row-meta{color:var(--mute);margin-top:1px;font-size:12px;display:block}.bar{background:#1c2440;border-radius:2px;height:3px;margin-top:7px;display:block;overflow:hidden}.bar i{background:var(--accent);border-radius:2px;height:100%;display:block}.row-action{color:var(--accent);margin-top:8px;font-size:12px;display:none}.row:hover .row-action,.row:focus-visible .row-action{display:block}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:12.5px;display:inline-flex}.chip:hover{border-color:var(--line-strong);background:var(--raised)}.fold{color:var(--dim);cursor:pointer;background:0 0;border:none;margin-top:8px;padding:2px 0;font-size:12px;text-decoration:underline}.fold:hover{color:inherit}.link{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0}.link:hover{text-decoration:underline}.attribution{border-top:1px solid var(--line);color:var(--dim);margin-top:32px;padding-top:14px;font-size:11.5px}.attribution ul{margin:4px 0 0;padding:0;list-style:none}@media (hover:none){.row-action{display:block}}@media (width<=800px){.hint{display:none}}.spacer{flex:1}.search{width:250px;max-width:100%;position:relative}.search input{width:100%;font:13px var(--sans);color:var(--text);border:1px solid var(--line);background:#141b30d1;border-radius:999px;padding:7px 13px}.search input::placeholder{color:var(--mute)}.search ul{z-index:5;background:var(--panel);border:1px solid var(--line);border-radius:12px;margin:0;padding:5px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0;box-shadow:0 10px 30px #00000080}.search li{cursor:pointer;border-radius:8px;padding:7px 10px;font-size:13px}.search li[aria-selected=true]{background:var(--raised)}.hit-sub{color:var(--mute);margin-left:4px;font-size:11.5px}.topbar>.pill[aria-pressed=true],.controls>.pill[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#151028;font-weight:600}.my-lists h3{color:var(--dim);margin:12px 0 2px;font-size:12px;font-weight:600}.list-entries{margin:0;padding:0;list-style:none}.list-entries li{position:relative}.entry-detail{pointer-events:none;margin-top:-6px;padding:0 10px 6px}
