:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--theme-primary:#8a8478;--theme-primary-focus:#6e695f;--theme-primary-opacity:#4a474229;--bg-primary:#e9e6e0;--bg-tertiary:#f6f3ec;--bg-quaternary:#ddd8d0;--ink:#4a4742;--body:#5c5854;--muted:#7a756f;--faint:#9a948c;--verified:#5a706c;--verified-fill:#eceae4;--attention:#7d6a6e;--attention-fill:#d6c4c885;--line:#ddd8d0;--paper:#f6f3ece0;--dock:#f6f3ec80;--cream:#f6f3ec;--mono:"Geist Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--sans:Geist, "Noto Sans SC", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;--shadow:0 1px 2px #0c0d0e0a, 0 8px 24px #0c0d0e0f;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--radius:var(--space-3)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{color:var(--ink);background:var(--bg-primary);font-family:var(--sans);font-size:16px;font-weight:400;line-height:1.55}button,input{font:inherit;color:inherit}.shell{grid-template-rows:auto 1fr;height:100%;min-height:0;display:grid}.body{grid-template-columns:72px 1fr;min-height:0;transition:grid-template-columns .28s cubic-bezier(.4,0,.2,1);display:grid}:is(.body:has(.dock:hover),.body:has(.dock:focus-within)){grid-template-columns:220px 1fr}.is-graph .body{grid-template-columns:1fr}.is-graph .dock{display:none}.dock{z-index:50;position:relative;overflow:hidden}.dock:before{content:"";pointer-events:none;background:linear-gradient(90deg,#f6f3ecf2 0%,#e9e6e073 50%,#e9e6e000 100%);width:72px;animation:3.2s ease-in-out infinite edge-wave;position:absolute;top:0;bottom:0;left:0}.dock-hint{width:22px;font:600 15px/.85 var(--mono);color:#4a47429e;pointer-events:none;z-index:1;letter-spacing:-.12em;flex-direction:column;align-items:center;display:flex;position:absolute;top:50%;left:8px;transform:translateY(-50%)}.dock-hint span{animation:1.5s ease-in-out infinite chevron-wave;display:block}.dock-hint span:nth-child(2){animation-delay:.12s}.dock-hint span:nth-child(3){animation-delay:.24s}@keyframes edge-wave{0%,to{opacity:.72}50%{opacity:1}}@keyframes chevron-wave{0%,to{opacity:.35;transform:translate(0)}50%{opacity:1;transform:translate(4px)}}.dock:hover:before,.dock:focus-within:before,.dock:hover .dock-hint,.dock:focus-within .dock-hint{opacity:0}.dock-inner{background:var(--cream);-webkit-backdrop-filter:saturate(1.4)blur(18px);border-right:.5px solid var(--line);width:220px;box-shadow:var(--shadow);flex-direction:column;gap:4px;padding:28px 16px 32px;transition:transform .28s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;top:0;bottom:0;left:0;overflow:auto;transform:translate(calc(4px - 100%))}.dock:hover .dock-inner,.dock:focus-within .dock-inner{transform:translate(0)}.dock-g{margin:0 0 20px}.dock-g>summary{cursor:pointer;font-family:var(--sans);letter-spacing:-.01em;color:var(--ink);background:var(--paper);box-shadow:var(--shadow);border:.5px solid #ffffffbf;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;margin:0 0 6px;padding:9px 12px;font-size:14px;font-weight:600;list-style:none;transition:background .18s,transform .18s;display:flex}.dock-g>summary:after{content:"";border-right:1.5px solid var(--muted);border-bottom:1.5px solid var(--muted);flex:none;width:6px;height:6px;transition:transform .18s;transform:rotate(-45deg)}.dock-g[open]>summary:after{transform:rotate(45deg)}.dock-g>summary:hover,.dock-g>summary:focus-visible{color:var(--ink);background:var(--bg-primary);outline:none}.dock-g[open]>summary{background:var(--theme-primary-opacity);border-color:#8a84784d}.dock-s>summary{cursor:pointer;font:600 14px/1.35 var(--sans);color:var(--ink);border-radius:8px;padding:8px;list-style:none}.dock-s.is-now>summary{background:var(--bg-primary)}.dock-s>summary:hover,.dock-s>summary:focus-visible{color:var(--ink);background:var(--bg-primary);outline:none}.dock-g>summary::-webkit-details-marker{display:none}.dock-s>summary::-webkit-details-marker{display:none}.dock-s{margin:0 0 8px;padding-left:0}.dock-s button{text-align:left;width:100%;color:var(--muted);font:400 12.5px/1.4 var(--sans);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px 8px 6px 16px;display:block}.dock-s button:hover,.dock-s button:focus-visible{color:var(--ink);background:var(--bg-primary);outline:none}.dock-s button.on{color:var(--ink);background:var(--theme-primary-opacity);font-weight:500}.stage{grid-template-rows:auto 1fr;min-width:0;height:100%;min-height:0;display:grid}.top{align-items:center;gap:var(--space-4);background:var(--cream);border-bottom:.5px solid var(--line);padding:10px 20px;display:flex}.logo{letter-spacing:-.02em;font-size:16px;font-weight:600}.tabs{gap:4px;display:flex}.tab{cursor:pointer;color:var(--muted);font:500 14px/1.3 var(--sans);background:0 0;border:0;border-radius:8px;padding:9px 12px}.tab:hover,.tab:focus-visible{color:var(--ink);background:var(--bg-primary);outline:none}.tab.on{color:var(--ink);background:var(--theme-primary-opacity);font-weight:600}.search{margin-left:auto}.search input{border:.5px solid var(--line);background:var(--cream);width:160px;box-shadow:var(--shadow);border-radius:8px;padding:8px 12px}.main,.pane{height:100%;min-height:0}.entry{grid-template-rows:auto auto 1fr;row-gap:10px;height:100%;padding:20px 24px 24px;display:grid}.crumb{color:var(--faint);font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;margin:0 0 4px;font-size:11px;font-weight:500}.entry-head{align-items:baseline;gap:12px;margin-bottom:4px;display:flex}.entry-head h2{letter-spacing:-.03em;margin:0;font-size:clamp(26px,3vw,34px);font-weight:600;line-height:1.3}.tip{font-family:var(--mono);color:var(--verified);border-bottom:.5px dashed var(--verified);cursor:default;font-size:11px;position:relative}.tip:hover:after{content:attr(data-tip);background:var(--ink);color:var(--cream);white-space:nowrap;z-index:2;border-radius:8px;padding:4px 8px;position:absolute;top:120%;left:0}.entry-scroll{scrollbar-width:none;-ms-overflow-style:none;grid-template-areas:"gloss""lead""body""map";gap:22px;min-height:0;padding-bottom:32px;display:grid;overflow:auto}.entry-scroll::-webkit-scrollbar{display:none}.gloss{grid-area:gloss;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;display:grid}.gloss-card{background:var(--paper);border-radius:var(--radius);box-shadow:var(--shadow);will-change:transform;border:.5px solid #ffffffbf;padding:16px 18px;transition:transform .28s cubic-bezier(.4,0,.2,1)}.gloss-card:hover{transform:translateY(-2px)}.gloss-card h3{margin:0 0 8px;font-size:13px;font-weight:600;line-height:1.4}.gloss-card p{color:var(--body);margin:0;font-size:13.5px;line-height:1.6}.lead{max-width:46em;color:var(--body);grid-area:lead;font-size:16px;line-height:1.75}.lead p{margin:0 0 14px}.lead ul{flex-direction:column;gap:8px;margin:8px 0 0;padding-left:1.15em;display:flex}.entry-body{grid-area:body;max-width:52em}.entry-body p{color:var(--body);margin:0 0 12px;line-height:1.7}.entry-body h3{letter-spacing:-.02em;color:var(--ink);margin:36px 0 12px;font-size:18px;font-weight:600}.entry-body table{border-collapse:collapse;background:var(--cream);width:100%;box-shadow:var(--shadow);border-radius:14px;font-size:14px;overflow:hidden}.entry-body th,.entry-body td{text-align:left;vertical-align:top;border-bottom:.5px solid var(--line);padding:12px 14px}.entry-body th{color:var(--muted);background:#e9e6e0b3;font-size:12px;font-weight:500}.entry-body tr:last-child td{border-bottom:0}.aside{color:var(--muted);margin:18px 0 0;font-size:14.5px;line-height:1.65}.aside summary{pointer-events:none;font-weight:600}.watch-entry .word-head{font-size:11px;font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--faint);margin:16px 0 8px;font-weight:500}.word-list{columns:3;margin:0;padding:0;list-style:none}.word-list li{break-inside:avoid;padding:4px 0}.geo-map,.terms-table-wrap{grid-area:map;margin:0}.terms-table-bar{justify-content:space-between;align-items:center;gap:12px;margin:0 0 10px;display:flex}.terms-search{border:.5px solid var(--line);background:var(--paper);border-radius:8px;flex:1;max-width:320px;padding:7px 12px;font-size:13px}.terms-count{color:var(--faint);white-space:nowrap;font-size:12px}.terms-table-scroll{border:.5px solid var(--line);background:var(--paper);max-height:60vh;box-shadow:var(--shadow);scrollbar-width:none;-ms-overflow-style:none;border-radius:12px;overflow:auto}.terms-table-scroll::-webkit-scrollbar{display:none}.terms-table{border-collapse:collapse;width:100%;font-size:12.5px}.terms-table th,.terms-table td{border-bottom:.5px solid var(--line);text-align:left;white-space:nowrap;padding:7px 10px}.terms-table th{background:var(--cream);color:var(--ink);z-index:1;font-weight:600;position:sticky;top:0}.terms-table tbody tr:hover{background:var(--bg-primary)}.geo-map svg{aspect-ratio:960/420;background:var(--cream);width:100%;height:auto;box-shadow:var(--shadow);border:.5px solid #ffffffb3;border-radius:14px}.geo-land{fill:#d8d3cb;stroke:#cfc9bf;stroke-width:.4px}.geo-land.is-ban{fill:#c9b0b4}.geo-land.is-passive{fill:#9aafb6}.geo-land.is-open{fill:#d8d3cb}.geo-pin{fill:#9aafb6}.geo-label{fill:var(--ink);font-size:10px}.geo-label.is-ban{fill:#7d6a6e}.geo-map figcaption{color:var(--muted);align-items:center;gap:16px;font-size:13px;display:flex}.geo-map ul{gap:12px;margin:0;padding:0;list-style:none;display:flex}.geo-swatch{border-radius:2px;width:10px;height:10px;margin-right:6px;display:inline-block}.geo-swatch.is-ban{background:#c9b0b4}.geo-swatch.is-passive{background:#9aafb6}.geo-swatch.is-open{border:.5px solid var(--line);background:#d8d3cb}.graph-scroll{position:relative;overflow:hidden}.graph{background:var(--cream);width:100%;height:min(70vh,480px);box-shadow:var(--shadow);touch-action:none;cursor:grab;border:.5px solid #ffffffb3;border-radius:14px}.graph:active{cursor:grabbing}.graph-reset{border:.5px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer;box-shadow:var(--shadow);border-radius:6px;padding:4px 10px;font-size:12px;position:absolute;bottom:10px;right:10px}.graph line{stroke:var(--line);stroke-width:1px;transition:stroke .15s,stroke-width .15s}.graph line.is-lit{stroke:var(--theme-primary);stroke-width:1.6px}.g-node{cursor:grab}.g-node:active{cursor:grabbing}.g-node circle{stroke:var(--cream);stroke-width:2px;filter:drop-shadow(0 1px 2px #0c0d0e1f);transition:r .15s}.g-node.is-hover circle{r:21}.g-node text{fill:var(--ink);pointer-events:none;font-size:11px;font-weight:500}.hits{padding:24px;list-style:none}.hits button{cursor:pointer;background:0 0;border:0;padding:8px 0}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
