@font-face{font-family:"CiLv Serif";src:local("Noto Serif SC"),local("Source Han Serif SC"),url(/fonts/NotoSerifSC-Regular.subset.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"CiLv Serif";src:local("Noto Serif SC Medium"),local("Source Han Serif SC Medium"),url(/fonts/NotoSerifSC-Medium.subset.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}:root{color-scheme:light;--paper: #efede6;--paper-2: #e7e4db;--paper-3: #f7f4ec;--surface: #ffffff;--surface-hover: #ffffff;--track: #e2ded3;--mark: #f3e2d6;--ink: #1c1b19;--ink-2: #4a4740;--ink-3: #6e6a60;--cinnabar: #9c3a2b;--indigo: #2c4a5a;--rule: #c9c4b6;--ok: #4a6b52;--warn: #8a6a24;--unknown: #a8a29a;--font-kai: "Kaiti SC", "STKaiti", "KaiTi", "CiLv Serif", "Songti SC", "SimSun", serif;--font-song: "CiLv Serif", "Songti SC", "STSong", "SimSun", serif;--font-sans: "PingFang SC", "Microsoft YaHei", "Hiragino Sans GB", "CiLv Serif", system-ui, sans-serif;--font-mono: "JetBrains Mono", "SFMono-Regular", Consolas, monospace;--radius: 2px}:root[data-theme=dark]{color-scheme:dark;--paper: #17160f;--paper-2: #1e1c15;--paper-3: #24221a;--surface: #201e17;--surface-hover: #2b2820;--track: #3a3630;--mark: #4a3423;--ink: #e9e3d4;--ink-2: #c9c2b0;--ink-3: #9c9482;--cinnabar: #d76a58;--indigo: #8badc1;--rule: #3c382d;--ok: #86b492;--warn: #cfa963;--unknown: #6d6859}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:13px;line-height:1.6;-webkit-font-smoothing:antialiased}html{background:var(--paper)}::selection{background:var(--cinnabar);color:var(--paper-3)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--rule);border:3px solid var(--paper)}a{color:var(--indigo);text-decoration:none}a:hover{text-decoration:underline}button,input,textarea,select{font-family:inherit;font-size:inherit;color:inherit}button{border:1px solid var(--rule);background:var(--paper-3);border-radius:var(--radius);padding:5px 12px;cursor:pointer;min-height:32px}button:hover{background:var(--surface-hover)}button:focus-visible,a:focus-visible,textarea:focus-visible,input:focus-visible{outline:2px solid var(--indigo);outline-offset:2px}button:disabled{color:var(--ink-3);cursor:not-allowed;background:var(--paper-2)}.shell{min-height:100%;border:1px solid var(--rule);background:var(--paper);display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:14px;padding:10px 18px;border-bottom:1px solid var(--rule)}.brand{font-family:var(--font-song);font-size:15px;font-weight:500;letter-spacing:.04em}.brand:before{content:"";display:inline-block;width:3px;height:15px;margin-right:8px;vertical-align:-2px;background:var(--cinnabar)}.brand small{font-family:var(--font-sans);font-size:11px;color:var(--ink-3);letter-spacing:0;margin-left:8px;font-weight:400}.tag{font-size:11px;color:var(--ink-2);border:1px solid var(--rule);background:var(--paper-2);padding:3px 8px;border-radius:var(--radius);white-space:nowrap}.theme-toggle{min-height:24px;padding:3px 8px;font-size:11px;cursor:pointer}.theme-toggle:hover{background:var(--paper-3)}.global-search{display:flex;align-items:center;gap:6px}.global-search input{width:200px;min-height:26px;padding:3px 8px;font-size:12px;color:var(--ink);background:var(--paper-2);border:1px solid var(--rule);border-radius:var(--radius)}.global-search input:focus-visible{outline:2px solid var(--indigo);outline-offset:1px}.global-search button{min-height:26px;padding:3px 10px;font-size:12px;cursor:pointer}.help{position:relative}.help-panel{position:absolute;right:0;top:calc(100% + 8px);z-index:40;width:min(460px,calc(100vw - 48px));max-height:72vh;overflow-y:auto;padding:14px 16px;text-align:left;background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);box-shadow:0 8px 24px #00000024}.help-panel h3{margin:12px 0 6px;font-size:12px;font-weight:600;letter-spacing:.06em;color:var(--ink-2)}.help-panel h3:first-child{margin-top:0}.help-block{margin-bottom:8px}.help-block b{font-size:12px;color:var(--ink)}.help-block p{margin:2px 0 0;font-size:12px;line-height:1.6;color:var(--ink-2)}.help-table{width:100%;font-size:12px}.help-table th{text-align:left;vertical-align:top;color:var(--ink-2);font-weight:500;padding:3px 8px 3px 0}.help-table td{padding:3px 0;line-height:1.6;color:var(--ink-2)}.help-list{margin:0;padding-left:18px;font-size:12px;line-height:1.8;color:var(--ink-2)}.banner{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:7px 18px;border-bottom:1px solid var(--rule);background:var(--paper-2);font-size:11px;color:var(--ink-2)}.spacer{flex:1}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:5px;background:var(--unknown);vertical-align:middle}.dot.ok{background:var(--ok)}.dot.bad{background:var(--cinnabar)}.body{display:grid;grid-template-columns:148px minmax(0,1fr);flex:1;min-height:0}.side{border-right:1px solid var(--rule);padding:14px 0}.side h4{margin:0;padding:8px 14px 4px;font-size:11px;font-weight:500;color:var(--ink-3);letter-spacing:.06em}.side a{display:block;padding:6px 14px;color:var(--ink-2);border-left:2px solid transparent}.side a:hover{background:var(--paper-3);text-decoration:none}.side a.active{color:var(--ink);border-left-color:var(--cinnabar);background:var(--paper-3)}.content{padding:20px 24px 40px;min-width:0}h1{font-family:var(--font-song);font-size:21px;font-weight:500;margin:0 0 2px;letter-spacing:.03em}h2{font-size:14px;font-weight:500;margin:24px 0 8px}.sub{font-size:11px;color:var(--ink-3);margin-bottom:14px}.panel{border:1px solid var(--rule);background:var(--paper-3);padding:14px 16px;border-radius:var(--radius)}.panel+.panel{margin-top:12px}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}textarea{width:100%;min-height:132px;padding:10px 12px;border:1px solid var(--rule);border-radius:var(--radius);background:var(--surface);line-height:1.7;resize:vertical}.field{padding:6px 10px;min-height:32px;border:1px solid var(--rule);border-radius:var(--radius);background:var(--surface);color:var(--ink)}.field:focus-visible{outline:2px solid var(--indigo);outline-offset:2px}.empty{margin-top:16px;padding:26px 24px 22px;border:1px dashed var(--rule);background:var(--paper-3);text-align:center}.empty-mark{font-family:var(--font-song);font-size:40px;line-height:1;color:var(--rule);margin-bottom:10px}.empty h3{font-family:var(--font-song);font-size:16px;font-weight:500;margin:0 0 6px}.empty .row{justify-content:center}.empty p{max-width:600px;margin-left:auto;margin-right:auto}.chip{padding:3px 11px;min-height:26px;border:1px solid var(--rule);border-radius:999px;background:var(--surface);font-size:11px;color:var(--ink-2)}.chip:hover{border-color:var(--cinnabar);color:var(--cinnabar);background:var(--surface)}.cases{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px}.case{display:flex;flex-direction:column;justify-content:space-between;gap:10px;padding:12px 14px;border:1px solid var(--rule);background:var(--paper-3);border-top:2px solid var(--cinnabar)}.case h3{font-family:var(--font-song);font-size:14px;font-weight:500;margin:0 0 4px}.case p{margin:0;font-size:11px;line-height:1.65;color:var(--ink-3)}.case .chip{align-self:flex-start}.case .chip:disabled{opacity:.6}.active-chip{border-color:var(--cinnabar);color:var(--cinnabar);background:var(--surface-hover)}button.case{font:inherit;text-align:left;cursor:pointer;min-height:0}button.case:hover{background:var(--surface-hover)}.linkish{border:0;padding:0;min-height:0;background:none;color:var(--indigo);text-align:left;cursor:pointer}.linkish:hover{background:none;text-decoration:underline}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.stat{border:1px solid var(--rule);background:var(--paper-3);padding:10px 12px}.stat span{display:block;font-size:11px;color:var(--ink-3);margin-bottom:4px}.stat strong{font-size:21px;font-weight:500;font-variant-numeric:tabular-nums}table{width:100%;border-collapse:collapse;font-size:12px;table-layout:fixed}th{text-align:left;font-weight:500;color:var(--ink-3);font-size:11px;padding:6px 8px;border-bottom:1px solid var(--rule)}td{padding:6px 8px;border-bottom:1px solid var(--rule);color:var(--ink-2);vertical-align:top;overflow-wrap:anywhere}td.num{font-variant-numeric:tabular-nums;color:var(--ink)}.verses{display:flex;flex-direction:column;gap:6px;margin:14px 0;overflow-x:auto;padding-bottom:2px}.verse{display:flex;gap:0;flex-wrap:nowrap;width:fit-content}.ch{position:relative;width:40px;height:70px;border:1px solid var(--rule);margin-right:-1px;background:var(--paper-3);border-radius:var(--radius);display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;font-family:var(--font-kai);font-size:21px;line-height:1}.ch u{text-decoration:none;font-family:var(--font-sans);font-size:10px;letter-spacing:-.2px;white-space:nowrap;color:var(--ink-3);margin-top:7px}.ch.ping{border-bottom:3px solid var(--indigo)}.ch.ze{border-bottom:3px solid var(--cinnabar)}.ch.ping:after,.ch.ze:after{position:absolute;top:1px;right:3px;font-size:9px;font-family:var(--font-sans)}.ch.ping:after{content:"○";color:var(--indigo)}.ch.ze:after{content:"●";color:var(--cinnabar)}.ch.unknown{border-bottom:3px dotted var(--unknown)}.ch.unknown:after{content:"◌";color:var(--unknown);position:absolute;top:1px;right:3px;font-size:9px}.ch.selected{outline:1px solid var(--ink);background:var(--surface);z-index:2}.split{display:flex;align-items:center;gap:8px;margin:4px 0;color:var(--cinnabar)}.split i{flex:1;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);height:3px}.kv{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-bottom:1px dotted var(--rule)}.kv span{color:var(--ink-2)}.kv b{font-weight:500;text-align:right}.note{margin-top:10px;padding:8px 10px;border-left:2px solid var(--cinnabar);background:var(--paper-3);color:var(--ink-2)}.mono{font-family:var(--font-mono);font-size:11px}.pill{display:inline-block;font-size:10px;padding:1px 6px;border:1px solid var(--rule);background:var(--paper-3);border-radius:var(--radius);color:var(--ink-2);white-space:nowrap}.pill.verified{border-color:var(--ok);color:var(--ok)}.pill.unverified{border-color:var(--cinnabar);color:var(--cinnabar)}.answer{white-space:pre-wrap;font-family:var(--font-song);font-size:15px;line-height:1.9;background:var(--surface);border:1px solid var(--rule);padding:14px 16px;border-radius:var(--radius)}.list{max-height:420px;overflow:auto;border:1px solid var(--rule);background:var(--surface)}.list button{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid var(--rule);border-radius:0;background:transparent;padding:8px 10px;min-height:0}.list button:hover{background:var(--paper-3)}.list button.active{background:var(--paper-3);border-left:2px solid var(--cinnabar)}.muted{color:var(--ink-3)}.error{border-left:2px solid var(--cinnabar);background:var(--paper-3);padding:10px 12px;color:var(--ink)}.split-2{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px}@media(max-width:1024px){.body{grid-template-columns:1fr}.side{border-right:0;border-bottom:1px solid var(--rule);display:flex;flex-wrap:wrap;gap:4px;padding:8px 10px}.side h4{padding:4px 6px}.split-2{grid-template-columns:1fr}.ch{width:34px;height:64px;font-size:19px}button,.field{min-height:44px}.global-search input{width:130px;min-height:44px}.global-search button,.theme-toggle{min-height:44px}.help-panel{width:calc(100vw - 32px)}}@keyframes luoge{0%{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}.verses.reveal .ch{animation:luoge .24s cubic-bezier(.2,.7,.3,1) both}@keyframes evid{0%{box-shadow:inset 0 0 0 2px var(--cinnabar);background:var(--surface)}to{box-shadow:inset 0 0 0 2px #9c3a2b00}}.verse.hit .ch{animation:evid .9s ease-out 1}.verse.hit{outline:1px solid var(--cinnabar);outline-offset:3px}svg [role=button]:focus-visible{outline:2px solid var(--cinnabar);outline-offset:2px}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
