.sp-group[data-v-1791cc75]{margin-bottom:14px}.sp-group[data-v-1791cc75]:last-child{margin-bottom:0}.sp-label[data-v-1791cc75]{font-family:var(--sans);color:var(--ink-faint);letter-spacing:2px;margin-bottom:8px;font-size:11px;font-weight:600}.sp-options[data-v-1791cc75]{gap:6px;display:flex}.sp-opt[data-v-1791cc75]{border:1px solid var(--border);font-family:var(--sans);color:var(--ink-mid);cursor:pointer;background:0 0;border-radius:4px;flex:1;padding:6px 8px;font-size:12px;transition:color .15s,border-color .15s,background-color .15s}.sp-opt[data-v-1791cc75]:hover{border-color:var(--ink);color:var(--ink)}.sp-opt.active[data-v-1791cc75]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.sp-opt.active .sp-theme-dot[data-v-1791cc75]{border-color:var(--paper)}.sp-theme[data-v-1791cc75]{padding-left:22px;position:relative}.sp-theme-dot[data-v-1791cc75]{border:1px solid var(--border);border-radius:50%;width:8px;height:8px;position:absolute;top:50%;left:8px;transform:translateY(-50%)}.sp-theme-dot.dot-light[data-v-1791cc75]{background:#faf6ee}.sp-theme-dot.dot-sepia[data-v-1791cc75]{background:#f0e4c8}.sp-theme-dot.dot-dark[data-v-1791cc75]{background:#1c1c1e;border-color:#48484a}.sp-theme-dot.dot-oled[data-v-1791cc75]{background:#000;border-color:#333}.sp-size-row[data-v-1791cc75]{justify-content:center;align-items:center;gap:6px;display:flex}.sp-size-btn[data-v-1791cc75]{border:1px solid var(--border);width:28px;height:28px;font-family:var(--sans);color:var(--ink-mid);cursor:pointer;background:0 0;border-radius:4px;justify-content:center;align-items:center;font-size:14px;transition:color .15s,border-color .15s;display:flex}.sp-size-btn[data-v-1791cc75]:hover{border-color:var(--ink);color:var(--ink)}.sp-size-val[data-v-1791cc75]{font-family:var(--sans);color:var(--ink);text-align:center;font-variant-numeric:tabular-nums;min-width:32px;font-size:13px}.sp-shortcuts[data-v-1791cc75]{border-top:1px solid var(--border-light);flex-wrap:wrap;gap:4px 8px;margin-top:2px;padding-top:10px;display:flex}.sp-sc[data-v-1791cc75]{font-family:var(--sans);color:var(--ink-faint);letter-spacing:1px;align-items:center;gap:3px;font-size:10px;display:inline-flex}.sp-sc kbd[data-v-1791cc75]{border:1px solid var(--border);min-width:18px;height:16px;font-family:var(--sans);color:var(--ink-light);background:var(--surface);border-radius:2px;justify-content:center;align-items:center;padding:0 3px;font-size:9px;display:inline-flex}.rt[data-v-3ad2c664]{bottom:max(24px, calc(16px + env(safe-area-inset-bottom,0px)));z-index:500;position:fixed;right:24px}@media (width<=768px){.rt[data-v-3ad2c664]{bottom:max(16px, calc(12px + env(safe-area-inset-bottom,0px)));right:16px}.rt-panel[data-v-3ad2c664]{overscroll-behavior:contain;width:auto;max-height:60vh;padding-bottom:max(16px, env(safe-area-inset-bottom,0px));animation:slideUpMobile-3ad2c664 .3s var(--ease-out-expo,cubic-bezier(.16, 1, .3, 1));border-radius:16px 16px 0 0;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}@keyframes slideUpMobile-3ad2c664{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}}.rt-fab[data-v-3ad2c664]{border:1px solid var(--border);background:var(--surface);width:44px;height:44px;color:var(--ink-mid);cursor:pointer;box-shadow:0 4px 16px rgba(var(--shadow-rgb), .12);border-radius:50%;justify-content:center;align-items:center;font-size:16px;transition:background .25s cubic-bezier(.4,0,.2,1),border-color .25s cubic-bezier(.4,0,.2,1),color .25s cubic-bezier(.4,0,.2,1),transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s cubic-bezier(.4,0,.2,1);display:flex}.rt-fab[data-v-3ad2c664]:hover{background:var(--ink);color:var(--paper);border-color:var(--ink);transform:scale(1.05)}.rt-icon[data-v-3ad2c664]{font-family:var(--sans);font-size:15px;font-weight:600}.rt-panel[data-v-3ad2c664]{background:var(--surface);border:1px solid var(--border);width:220px;box-shadow:0 8px 32px rgba(var(--shadow-rgb), .16);animation:slideUp-3ad2c664 .25s var(--ease-out-expo,cubic-bezier(.16, 1, .3, 1));border-radius:8px;padding:16px;position:absolute;bottom:56px;right:0}@keyframes slideUp-3ad2c664{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.rt-backdrop[data-v-3ad2c664]{z-index:-1;position:fixed;inset:0}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page-fade-enter-active{transition:opacity .15s ease, transform .2s var(--ease-out-expo,cubic-bezier(.16, 1, .3, 1))}.page-fade-leave-active{transition:opacity .1s}.page-fade-enter-from{opacity:0;transform:translateY(8px)}.page-fade-leave-to{opacity:0}.about-overlay{background:rgba(var(--shadow-rgb), .3);z-index:200;justify-content:center;align-items:center;animation:.2s aboutFadeIn;display:flex;position:fixed;inset:0}@keyframes aboutFadeIn{0%{opacity:0}to{opacity:1}}.about-close{border:1px solid var(--border);width:36px;height:36px;color:var(--ink-light);cursor:pointer;z-index:1;background:0 0;border-radius:4px;font-size:16px;transition:background .15s,color .15s;position:absolute;top:16px;right:16px}.about-close:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}.about-pane-h{background:var(--paper);width:min(600px,90vw);max-height:85vh;box-shadow:0 16px 48px rgba(var(--shadow-rgb), .15);border-radius:12px;padding:40px;animation:.25s cubic-bezier(.16,1,.3,1) aboutSlideUp;position:relative;overflow-y:auto}@keyframes aboutSlideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.about-logo{object-fit:contain;width:auto;height:64px;margin:0 auto 32px;display:block}.about-h-body{color:var(--ink-mid);font-size:15px;line-height:2.2}.about-h-body :deep(h2){letter-spacing:3px;color:var(--ink);border-bottom:1px solid var(--border);margin-bottom:12px;padding-bottom:10px;font-size:18px;font-weight:700}.about-h-body :deep(p){text-align:justify;text-indent:2em;margin-bottom:10px}.about-h-body :deep(p:last-child){margin-bottom:0}.about-h-body :deep(.about-block){background:var(--surface);border:1px solid var(--border-light);border-radius:8px;margin-bottom:32px;padding:28px}.about-h-body :deep(.about-block:last-child){margin-bottom:0}.about-pane-v{writing-mode:vertical-rl;text-orientation:mixed;background:var(--paper);overscroll-behavior:contain;height:100dvh;box-shadow:8px 0 32px rgba(var(--shadow-rgb), .1);padding:32px 28px;animation:.25s cubic-bezier(.16,1,.3,1) aboutSlideInV;position:relative;overflow-x:auto}@keyframes aboutSlideInV{0%{transform:translate(-100%)}to{transform:translate(0)}}.about-pane-v .about-close{margin-bottom:20px;position:static}.about-v-body{color:var(--ink-mid);max-height:80vh;font-size:16px;line-height:2.4;overflow-x:auto}.about-v-body :deep(p){text-indent:0;margin-left:16px}.about-v-body :deep(.about-versions){border-top:1px solid var(--border-light);margin-left:16px;padding-top:24px}.about-versions{border-top:1px solid var(--border-light);font-family:var(--sans);color:var(--ink-faint);letter-spacing:1px;margin-top:32px;padding-top:16px;font-size:12px}.route-loading{justify-content:center;align-items:center;min-height:100dvh;display:flex}.ann-target{cursor:help;border-color:var(--vermillion);-webkit-box-decoration-break:clone;box-decoration-break:clone;text-decoration:none;transition:background .2s,box-shadow .2s}ruby.ann-target,rt.ann-num,sup.ann-num{text-decoration:none}.ann-target.pronunciation{border-color:var(--jade)}.ann-target.pronunciation.semantic{border-color:var(--gold)}.ann-target.person{border-color:var(--ann-person)}.ann-target.place{border-color:var(--ann-place)}.ann-target.event{border-color:var(--ann-event)}.ann-target.date{border-color:var(--ann-date)}.ann-target.allusion{border-color:var(--ann-allusion)}.ann-target{border-bottom-style:solid;border-bottom-width:2px}.ann-target.ann-overlap{border-bottom-style:double;border-bottom-width:3px}[data-layout=vertical] .ann-target,.v-scroll .ann-target,.part-block--vertical .ann-target{background-image:linear-gradient(to bottom, var(--vermillion), var(--vermillion));background-position:100%;background-repeat:no-repeat;background-size:2px 100%;border-bottom:none;border-right:none;padding-right:0}[data-layout=vertical] .ann-target.ann-overlap,.v-scroll .ann-target.ann-overlap,.part-block--vertical .ann-target.ann-overlap{background-size:3px 100%;padding-right:0}.v-scroll .ann-target.pronunciation,[data-layout=vertical] .ann-target.pronunciation,.part-block--vertical .ann-target.pronunciation{background-image:linear-gradient(to bottom, var(--jade), var(--jade))}.v-scroll .ann-target.pronunciation.semantic,[data-layout=vertical] .ann-target.pronunciation.semantic,.part-block--vertical .ann-target.pronunciation.semantic{background-image:linear-gradient(to bottom, var(--gold), var(--gold))}.v-scroll .ann-target.person,[data-layout=vertical] .ann-target.person,.part-block--vertical .ann-target.person{background-image:linear-gradient(to bottom, var(--ann-person), var(--ann-person))}.v-scroll .ann-target.place,[data-layout=vertical] .ann-target.place,.part-block--vertical .ann-target.place{background-image:linear-gradient(to bottom, var(--ann-place), var(--ann-place))}.v-scroll .ann-target.event,[data-layout=vertical] .ann-target.event,.part-block--vertical .ann-target.event{background-image:linear-gradient(to bottom, var(--ann-event), var(--ann-event))}.v-scroll .ann-target.date,[data-layout=vertical] .ann-target.date,.part-block--vertical .ann-target.date{background-image:linear-gradient(to bottom, var(--ann-date), var(--ann-date))}.v-scroll .ann-target.allusion,[data-layout=vertical] .ann-target.allusion,.part-block--vertical .ann-target.allusion{background-image:linear-gradient(to bottom, var(--ann-allusion), var(--ann-allusion))}.ann-target:hover{background:color-mix(in srgb, var(--vermillion) 10%, transparent);box-shadow:0 var(--ann-shadow-y,2px) 8px color-mix(in srgb, var(--vermillion) 8%, transparent)}.ann-target.pronunciation:hover{background:color-mix(in srgb, var(--jade) 10%, transparent);box-shadow:0 var(--ann-shadow-y,2px) 8px color-mix(in srgb, var(--jade) 8%, transparent)}.ann-target.person:hover{background:color-mix(in srgb, var(--ann-person) 10%, transparent);box-shadow:0 var(--ann-shadow-y,2px) 8px color-mix(in srgb, var(--ann-person) 8%, transparent)}.ann-target.place:hover{background:color-mix(in srgb, var(--ann-place) 10%, transparent);box-shadow:0 var(--ann-shadow-y,2px) 8px color-mix(in srgb, var(--ann-place) 8%, transparent)}.ann-target.event:hover{background:color-mix(in srgb, var(--ann-event) 10%, transparent);box-shadow:0 var(--ann-shadow-y,2px) 8px color-mix(in srgb, var(--ann-event) 8%, transparent)}.ann-target.date:hover{background:color-mix(in srgb, var(--ann-date) 10%, transparent);box-shadow:0 var(--ann-shadow-y,2px) 8px color-mix(in srgb, var(--ann-date) 8%, transparent)}.ann-target.allusion:hover{background:color-mix(in srgb, var(--ann-allusion) 10%, transparent);box-shadow:0 var(--ann-shadow-y,2px) 8px color-mix(in srgb, var(--ann-allusion) 8%, transparent)}.ann-target.etymology:hover{background:color-mix(in srgb, var(--ann-etymology) 10%, transparent);box-shadow:0 var(--ann-shadow-y,2px) 8px color-mix(in srgb, var(--ann-etymology) 8%, transparent)}.ann-target.commentary:hover{background:color-mix(in srgb, var(--ann-commentary) 10%, transparent);box-shadow:0 var(--ann-shadow-y,2px) 8px color-mix(in srgb, var(--ann-commentary) 8%, transparent)}.ann-target.translation:hover{background:color-mix(in srgb, var(--ann-translation) 10%, transparent);box-shadow:0 var(--ann-shadow-y,2px) 8px color-mix(in srgb, var(--ann-translation) 8%, transparent)}.ann-kind-badge.pronunciation{background:var(--jade);color:var(--paper)}.ann-kind-badge.semantic{background:var(--vermillion);color:var(--paper)}.ann-kind-badge.etymology{background:var(--ann-etymology);color:var(--paper)}.ann-kind-badge.note,.ann-kind-badge.definition{background:var(--ink);color:var(--paper)}.ann-kind-badge.commentary{background:var(--ann-commentary);color:var(--paper)}.ann-kind-badge.translation{background:var(--ann-translation);color:var(--paper)}.ann-kind-badge.person{background:var(--ann-person);color:var(--paper)}.ann-kind-badge.place{background:var(--ann-place);color:var(--paper)}.ann-kind-badge.event{background:var(--ann-event);color:var(--paper)}.ann-kind-badge.date{background:var(--ann-date);color:var(--paper)}.ann-kind-badge.allusion{background:var(--ann-allusion);color:var(--paper)}.ann-num{color:var(--vermillion);font-family:var(--sans);letter-spacing:0;vertical-align:super;-webkit-user-select:none;user-select:none;margin-right:1px;font-size:10px;font-weight:600}.v-scroll .ann-num,.part-block--vertical .ann-num{text-align:left;vertical-align:baseline;ruby-position:under;font-size:.45em}.v-scroll .ann-num-long,.part-block--vertical .ann-num-long{font-size:.38em}:root,[data-theme=light]{--ink:#1a1a1a;--ink-mid:#4a3f35;--ink-light:#7a6e5f;--ink-faint:#a89b8a;--paper:#faf6ee;--paper-warm:#f5f0e5;--paper-deep:#ebe4d4;--surface:#fff;--surface-warm:#fffdf8;--vermillion:#c23a2b;--vermillion-light:#d4554a;--gold:#9a7d3a;--gold-light:#c9a84c;--jade:#3a6b5e;--ann-person:#3a5a8c;--ann-place:#8b6914;--ann-event:#6b4c8a;--ann-date:#2a7a7a;--ann-allusion:#b5651d;--ann-etymology:#6b5b95;--ann-commentary:#c0392b;--ann-translation:#2c6e49;--border:#d8cdb8;--border-light:#e8e0d0;--shadow-rgb:26,26,26;--selection-text:#fff}[data-theme=sepia]{--ink:#4a3f2e;--ink-mid:#6b5d4a;--ink-light:#8a7a66;--ink-faint:#a8997f;--paper:#f0e4c8;--paper-warm:#e8d8b8;--paper-deep:#dcc8a0;--surface:#f8eed8;--surface-warm:#f5ead0;--vermillion:#a8321f;--vermillion-light:#c44535;--gold:#8a6d2a;--gold-light:#b89540;--jade:#2d5a4e;--ann-person:#3a5a8c;--ann-place:#8b6914;--ann-event:#6b4c8a;--ann-date:#2a7a7a;--ann-allusion:#b5651d;--ann-etymology:#6b5b95;--ann-commentary:#c0392b;--ann-translation:#2c6e49;--border:#c9b896;--border-light:#d8cab0;--shadow-rgb:74,63,46;--selection-text:#fff}[data-theme=dark]{--ink:#e8e0d0;--ink-mid:#c8bfae;--ink-light:#9a9185;--ink-faint:#6a6258;--paper:#1c1c1e;--paper-warm:#2a2a2c;--paper-deep:#3a3a3c;--surface:#2c2c2e;--surface-warm:#323234;--vermillion:#e05545;--vermillion-light:#e87060;--gold:#c9a84c;--gold-light:#d8b860;--jade:#5aaa98;--ann-person:#6a8ab4;--ann-place:#b8943a;--ann-event:#9a7cb4;--ann-date:#5ab4b4;--ann-allusion:#d4843a;--ann-etymology:#9a8ab4;--ann-commentary:#e06050;--ann-translation:#5ab48a;--border:#48484a;--border-light:#555557;--shadow-rgb:0,0,0;--selection-text:#fff}[data-theme=oled]{--ink:#fff;--ink-mid:#d0d0d0;--ink-light:#909090;--ink-faint:#606060;--paper:#000;--paper-warm:#0a0a0a;--paper-deep:#141414;--surface:#0a0a0a;--surface-warm:#101010;--vermillion:#f44;--vermillion-light:#f66;--gold:#e8c840;--gold-light:#f0d860;--jade:#40c8a8;--ann-person:#6a8ab4;--ann-place:#b8943a;--ann-event:#9a7cb4;--ann-date:#5ab4b4;--ann-allusion:#d4843a;--ann-etymology:#9a8ab4;--ann-commentary:#ff5050;--ann-translation:#40c890;--border:#333;--border-light:#444;--shadow-rgb:0,0,0;--selection-text:#fff}:root{--serif:"Noto Serif TC", "HanaMin", "宋體-繁", serif;--sans:"Noto Sans TC", "HanaMin", "PingFang TC", sans-serif;--nav-width:56px;--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--dur-fast:.15s;--dur-mid:.25s;--dur-slow:.4s}*,:before,:after{box-sizing:border-box;margin:0;padding:0}[data-theme=dark],[data-theme=oled]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;hanging-punctuation:first last;scroll-padding-top:56px}body{font-family:var(--serif);background:var(--paper);color:var(--ink);overscroll-behavior-y:contain;min-height:100dvh;line-height:1.8;overflow-x:hidden}::selection{background:var(--vermillion);color:var(--selection-text)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--ink-faint)}a{color:inherit;text-decoration:none}button{font-family:inherit}button.unstyled{font:inherit;color:inherit;cursor:pointer;text-align:inherit;appearance:none;background:0 0;border:none;padding:0;display:inline}button,a,[role=button],[tabindex="0"]{touch-action:manipulation;-webkit-tap-highlight-color:transparent}.tabular-nums{font-variant-numeric:tabular-nums}[data-section-key]{scroll-margin-top:56px}.skip-link{z-index:10000;background:var(--vermillion);color:var(--paper);font-family:var(--sans);border-radius:4px;padding:8px 16px;font-size:14px;font-weight:700;text-decoration:none;position:absolute;top:-100%;left:16px}.skip-link:focus{top:16px}:focus-visible{outline:2px solid var(--vermillion);outline-offset:2px}button:focus-visible{outline:2px solid var(--vermillion);outline-offset:2px;border-radius:4px}@keyframes ann-flash-anim{0%{background:color-mix(in srgb, var(--vermillion) 25%, transparent);box-shadow:0 0 12px color-mix(in srgb, var(--vermillion) 15%, transparent)}to{box-shadow:none;background:0 0}}#app-loading{background:var(--paper);z-index:9999;flex-direction:column;justify-content:center;align-items:center;transition:opacity .5s,transform .5s;display:flex;position:fixed;inset:0}#app-loading.fade-out{opacity:0;pointer-events:none;transform:scale(1.02)}#app-loading .line{background:linear-gradient(180deg, var(--vermillion), transparent);width:1px;height:40px;animation:lineGrow .6s .3s var(--ease-out-expo) forwards;transform-origin:top;margin-top:24px;transform:scaleY(0)}@keyframes lineGrow{to{transform:scaleY(1)}}@keyframes enterUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes cardEnter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@media (width<=768px){:root{--nav-width:44px}}.v-page{height:100dvh;margin-right:calc(var(--nav-width,56px) + env(safe-area-inset-right,0px));scrollbar-width:thin;scrollbar-color:var(--gold) transparent;overscroll-behavior-x:contain;flex-direction:row-reverse;display:flex;overflow:auto hidden}.v-page::-webkit-scrollbar{height:3px}.v-page::-webkit-scrollbar-thumb{background:var(--gold);border-radius:2px}.ld-wrap{width:56px;height:56px;position:relative;overflow:hidden}.ld-wrap--lg{width:72px;height:72px}.ld-base,.ld-fill{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.ld-base{filter:grayscale()opacity(.25)}.ld-char{font-family:var(--serif);justify-content:center;align-items:center;font-weight:900;line-height:1;display:flex;position:absolute;inset:0}.ld-char--base{color:var(--ink-faint);font-size:28px}.ld-wrap--lg .ld-char--base{font-size:36px}.ld-char--fill{color:var(--vermillion);font-size:28px}.ld-wrap--lg .ld-char--fill{font-size:36px}.ld-liquid{animation:3s ease-in-out infinite liquidRise;position:absolute;inset:0}.ld-liquid:before,.ld-liquid:after{content:"";background:var(--paper);width:200%;position:absolute;left:-50%}.ld-liquid:before{border-radius:38%;height:18px;animation:1.4s ease-in-out infinite alternate waveA;bottom:calc(100% - 2px)}.ld-liquid:after{opacity:.7;border-radius:44%;height:12px;animation:.9s ease-in-out infinite alternate waveB;bottom:calc(100% - 5px)}@keyframes liquidRise{0%{transform:translateY(100%)}18%{transform:translateY(70%)}40%{transform:translateY(45%)}60%{transform:translateY(25%)}78%{transform:translateY(10%)}92%{transform:translateY(2%)}to{transform:translateY(0%)}}@keyframes waveA{0%{transform:translate(-10%)rotate(-2deg)}to{transform:translate(10%)rotate(2deg)}}@keyframes waveB{0%{transform:translate(7%)rotate(1.5deg)}to{transform:translate(-7%)rotate(-1.5deg)}}.v-root,.h-root{transition:opacity .2s}[data-theme=dark] .v-scroll,[data-theme=oled] .v-scroll{box-shadow:0 0 40px color-mix(in srgb, var(--vermillion) 3%, transparent), 0 4px 16px rgba(var(--shadow-rgb), .2)}[data-theme=dark] .sb-vertical,[data-theme=oled] .sb-vertical{border-right-color:var(--border-light)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
