.shell[data-v-a993b3b5]{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.route-bar[data-v-a993b3b5]{position:fixed;top:0;left:0;height:2px;width:20%;background:var(--c-primary);z-index:var(--z-progress);animation:route-grow-a993b3b5 1.6s ease-out forwards}.route-bar.done[data-v-a993b3b5]{animation:none;width:100%;opacity:0;transition:width .15s ease,opacity .25s ease .1s}@keyframes route-grow-a993b3b5{0%{width:8%}to{width:82%}}.to-top[data-v-a993b3b5]{position:fixed;right:22px;bottom:88px;z-index:var(--z-to-top);width:var(--tap);height:var(--tap);border:1px solid var(--c-line-2);border-radius:var(--r-sm);background:var(--c-paper-2);color:var(--c-ink-2);font-family:var(--f-serif);font-size:var(--fs-body);box-shadow:var(--shadow-float);transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease)}@media(hover:hover){.to-top[data-v-a993b3b5]:hover{background:var(--c-rule);color:var(--c-paper-2);border-color:var(--c-rule)}}.masthead[data-v-a993b3b5]{background:var(--c-paper);padding:18px var(--page-x) 0}.mast-inner[data-v-a993b3b5]{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px}.mast-side[data-v-a993b3b5]{display:flex;flex-direction:column;gap:2px;font-size:var(--fs-meta);font-family:var(--f-mono);color:var(--c-ink-3);letter-spacing:.5px}.mast-date .num[data-v-a993b3b5]{font-size:var(--fs-note);color:var(--c-ink-2)}.mast-issue[data-v-a993b3b5]{align-items:flex-end;text-align:right}.mast-brand[data-v-a993b3b5]{text-align:center;padding:0 12px}.mast-name[data-v-a993b3b5]{margin:0;font-family:var(--f-serif);font-size:var(--fs-hero);font-weight:900;letter-spacing:10px;text-indent:10px;line-height:1.25;color:var(--c-primary)}.mast-slogan[data-v-a993b3b5]{margin:2px 0 0;font-size:var(--fs-meta);letter-spacing:var(--ls-band);color:var(--c-ink-3)}.mast-rule[data-v-a993b3b5]{max-width:1080px;margin:14px auto 0;border-top:3px solid var(--c-rule);border-bottom:1px solid var(--c-rule);height:3px}.nav[data-v-a993b3b5]{position:sticky;top:0;z-index:var(--z-nav);background:var(--bar-bg);-webkit-backdrop-filter:var(--bar-blur);backdrop-filter:var(--bar-blur);border-bottom:1px solid var(--c-line-2);box-shadow:var(--bar-shadow)}.nav-inner[data-v-a993b3b5]{max-width:1080px;margin:0 auto;padding:0 20px;height:46px;display:flex;align-items:center}.links[data-v-a993b3b5]{flex:1;align-self:stretch;display:flex;justify-content:center;align-items:stretch}.links a[data-v-a993b3b5]{position:relative;display:flex;align-items:center;padding:0 26px;font-size:var(--fs-body);letter-spacing:var(--ls-label);color:var(--c-ink-2);font-family:var(--f-serif);transition:color var(--dur) var(--ease);white-space:nowrap;flex-shrink:0}.links a+a[data-v-a993b3b5]:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:1px;height:14px;background:var(--c-line-2)}@media(hover:hover){.links a[data-v-a993b3b5]:hover{color:var(--c-ink)}}.links a[data-v-a993b3b5]:focus-visible{outline-offset:-4px}.links a.on[data-v-a993b3b5]{color:var(--c-primary);font-weight:700}.links a.on[data-v-a993b3b5]:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--c-primary)}.nav-side[data-v-a993b3b5]{position:absolute;right:20px;display:flex;align-items:center}.nav-inner[data-v-a993b3b5]{position:relative}.nav-login[data-v-a993b3b5]{padding:4px 14px;border:1px solid var(--c-primary-line);border-radius:var(--r-sm);font-size:var(--fs-note);color:var(--c-primary);transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease)}@media(hover:hover){.nav-login[data-v-a993b3b5]:hover{background:var(--c-primary);color:#fff}}.body[data-v-a993b3b5]{flex:1}.tabbar[data-v-a993b3b5],.nav-brand[data-v-a993b3b5]{display:none}@media(max-width:780px){.tabbar[data-v-a993b3b5]{position:fixed;left:0;right:0;bottom:0;z-index:var(--z-nav);display:flex;height:var(--tabbar-h);padding-bottom:env(safe-area-inset-bottom,0px);background:var(--bar-bg);-webkit-backdrop-filter:var(--bar-blur);backdrop-filter:var(--bar-blur);border-top:1px solid var(--c-line-2)}.tab[data-v-a993b3b5]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:10.5px;line-height:1.2;color:var(--tab-c)}.tab.on[data-v-a993b3b5]{color:var(--tab-on);font-weight:600}.tab-ic[data-v-a993b3b5]{display:block;width:24px;height:24px}.shell.with-tab[data-v-a993b3b5]{padding-bottom:var(--tabbar-h)}.shell.with-tab .to-top[data-v-a993b3b5]{bottom:calc(var(--tabbar-h) + 16px)}.masthead.m-hide[data-v-a993b3b5]{display:none}.nav-brand[data-v-a993b3b5]{display:flex;align-items:center;flex:none;padding:0 10px 0 2px;margin-right:2px;font:900 var(--fs-body)/1 var(--f-serif);letter-spacing:1px;color:var(--c-primary);border-right:1px solid var(--c-line-2);height:18px;align-self:center}}.notice[data-v-a993b3b5]{width:100%;max-width:1080px;margin:var(--sp-3) auto -6px;padding:0 var(--page-x)}.notice-in[data-v-a993b3b5]{display:flex;align-items:center;gap:10px;padding:6px 12px;background:var(--c-fill);border:1px solid var(--c-line);border-left:3px solid var(--c-primary);border-radius:0 var(--r-sm) var(--r-sm) 0;font-size:var(--fs-meta);line-height:var(--lh-snug);color:var(--c-ink-2)}.notice-tag[data-v-a993b3b5]{flex:none;padding:1px 6px;border:1px solid var(--c-primary-line);border-radius:var(--r-sm);background:var(--c-paper);font-size:var(--fs-caption);font-weight:700;line-height:1.35;letter-spacing:.08em;color:var(--c-primary)}.notice-t[data-v-a993b3b5]{min-width:0;flex:1;font-size:var(--fs-meta);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notice.warn .notice-in[data-v-a993b3b5]{background:var(--c-warn-wash);border-color:var(--c-warn-line);border-left-color:var(--c-warn);color:var(--c-warn)}.notice.warn .notice-tag[data-v-a993b3b5]{border-color:var(--c-warn-line);background:#a074261f;color:var(--c-warn)}@media(max-width:780px){.notice[data-v-a993b3b5]{margin-bottom:-2px}.notice-in[data-v-a993b3b5]{align-items:flex-start;padding:6px 10px}.notice-t[data-v-a993b3b5]{white-space:normal;word-break:break-all;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}.foot[data-v-a993b3b5]{padding:0 20px 36px;text-align:center;color:var(--c-ink-4);font-size:var(--fs-meta)}.foot-rule[data-v-a993b3b5]{max-width:1080px;margin:0 auto 16px;border-top:1px solid var(--c-rule);border-bottom:3px solid var(--c-rule);height:3px}.foot-fin[data-v-a993b3b5]{margin:0 0 6px;font-family:var(--f-serif);font-size:var(--fs-note);letter-spacing:4px;color:var(--c-ink-3)}.foot p[data-v-a993b3b5]{margin:0}.foot p+p[data-v-a993b3b5]{margin-top:6px}@media(max-width:780px){.masthead[data-v-a993b3b5]{padding:12px var(--page-x) 0}.mast-inner[data-v-a993b3b5]{grid-template-columns:1fr;gap:0}.mast-side[data-v-a993b3b5]{display:none}.mast-side.mast-date[data-v-a993b3b5]{display:flex;flex-direction:row;justify-content:center;gap:var(--sp-2);order:2;margin-top:var(--sp-1)}.mast-name[data-v-a993b3b5]{font-size:var(--fs-h1);letter-spacing:6px;text-indent:6px}.mast-slogan[data-v-a993b3b5]{letter-spacing:2px}.mast-rule[data-v-a993b3b5]{margin-top:10px}.nav-inner[data-v-a993b3b5]{padding:0 10px;height:42px}.links[data-v-a993b3b5]{justify-content:flex-start;overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent)}.links[data-v-a993b3b5]::-webkit-scrollbar{display:none}.links a[data-v-a993b3b5]{padding:0 12px;font-size:var(--fs-ui);letter-spacing:var(--ls-soft)}.nav-side[data-v-a993b3b5]{position:static;margin-left:4px}.nav-login[data-v-a993b3b5]{padding:3px 10px;font-size:var(--fs-meta);white-space:nowrap}.to-top[data-v-a993b3b5]{right:12px;bottom:calc(96px + env(safe-area-inset-bottom,0px));opacity:.85}}@media(max-width:400px){.nav-inner[data-v-a993b3b5]{padding:0 8px}.links a[data-v-a993b3b5]{padding:0 10px;font-size:var(--fs-ui);letter-spacing:0}.nav-login[data-v-a993b3b5]{padding:3px 8px;font-size:var(--fs-meta)}}@media(pointer:coarse){.nav-login[data-v-a993b3b5]{min-height:var(--tap-inline);display:inline-flex;align-items:center}}:root{--c-primary: #B3261E;--c-primary-deep: #8E1D17;--c-primary-wash: rgba(179, 38, 30, .05);--c-primary-wash-2: rgba(179, 38, 30, .09);--c-primary-line: rgba(179, 38, 30, .38);--c-ink: #16181B;--c-ink-2: #4A4E55;--c-ink-3: #62676F;--c-ink-4: #71767E;--c-line: rgba(22, 24, 27, .1);--c-line-2: rgba(22, 24, 27, .2);--c-rule: #16181B;--c-fill: rgba(22, 24, 27, .04);--c-fill-2: rgba(22, 24, 27, .07);--c-paper: #FFFFFF;--c-paper-2: #FFFFFF;--c-tint: #F2F3F4;--c-mint: #EAF2EC;--c-warn: #8A5A0B;--c-warn-wash: rgba(160, 116, 38, .09);--c-warn-line: rgba(160, 116, 38, .26);--c-ok: #22633C;--c-ok-wash: rgba(34, 99, 60, .07);--c-ok-line: rgba(34, 99, 60, .35);--c-skel: rgba(22, 24, 27, .06);--c-skel-shine: rgba(255, 255, 255, .75);--c-selection: rgba(179, 38, 30, .16);--c-scroll: rgba(22, 24, 27, .26);--c-scroll-thumb: rgba(22, 24, 27, .22);--c-scroll-hover: rgba(22, 24, 27, .42);--c-on-ink-2: rgba(255, 255, 255, .75);--c-primary-rule: rgba(179, 38, 30, .14);--c-scrim: rgba(22, 24, 27, .52);--c-paper-veil: rgba(255, 255, 255, .96);--c-ink-veil: rgba(22, 24, 27, .72);--c-warn-veil: rgba(138, 90, 11, .92);--c-scale-1: rgba(179, 38, 30, .22);--c-scale-2: rgba(179, 38, 30, .45);--c-scale-3: rgba(179, 38, 30, .7);--c-scale-4: var(--c-primary);--c-pan-baidu: #1F64D6;--c-pan-quark: #5A3FD9;--c-pan-aliyun: #B34A00;--c-pan-weiyun: #0A6FA0;--shadow-hard: 3px 3px 0 var(--c-rule);--shadow-hard-sm: 2px 2px 0 var(--c-rule);--shadow-float: 0 2px 8px rgba(22, 24, 27, .08);--shadow-soft: 0 4px 14px rgba(22, 24, 27, .08);--shadow-pop: 0 20px 52px rgba(22, 24, 27, .22), 0 2px 8px rgba(22, 24, 27, .08);--bar-bg: rgba(255, 255, 255, .98);--bar-blur: blur(12px);--bar-shadow: 0 2px 8px rgba(22, 24, 27, .04);--bar-shadow-up: 0 -2px 10px rgba(22, 24, 27, .05);--tab-c: #8B919B;--tab-on: #F85F69;--tabbar-h: calc(52px + env(safe-area-inset-bottom, 0px)) ;--glass: var(--c-paper-2);--glass-hi: var(--c-paper-2);--glass-solid: var(--c-paper-2);--glass-edge: var(--c-line-2);--glass-shadow: none;--focus-ring: 2px solid var(--c-primary);--focus-offset: 2px;--r-sm: 2px;--r-md: 2px;--r-lg: 3px;--r-xl: 4px;--r-pill: 3px;--r-search: 19px;--r-dot: 50%;--f-serif: "Noto Serif SC", "Source Han Serif SC", "Songti SC", "STSong", "SimSun", Georgia, serif;--f-mono: "SF Mono", "JetBrains Mono", Menlo, Consolas, "Liberation Mono", "Courier New", monospace;--f-num: var(--f-mono);--f-sans: -apple-system, BlinkMacSystemFont, "PingFang SC", "Helvetica Neue", "Microsoft YaHei", sans-serif;--fs-caption: 11px;--fs-meta: 12px;--fs-note: 13px;--fs-ui: 14px;--fs-body: 15px;--fs-h4: 16px;--fs-read: 17px;--fs-h3: 20px;--fs-h2: 24px;--fs-h1: 28px;--fs-display: 32px;--fs-hero: 40px;--lh-tight: 1.3;--lh-snug: 1.5;--lh-base: 1.6;--lh-relaxed: 1.8;--lh-read: 1.95;--ls-band: 3px;--ls-label: 2px;--ls-soft: 1px;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--sp-10: 40px;--card-pad: 14px;--page-x: 20px;--sec-gap: 32px;--z-toolbar: 50;--z-float: 90;--z-to-top: 95;--z-nav: 100;--z-progress: 120;--z-modal: 300;--z-lightbox: 400;--z-toast: 1000;--dur-fast: .12s;--dur: .15s;--ease: ease;--tap: 40px;--tap-inline: 32px}@media(max-width:640px){:root{--page-x: 14px;--sec-gap: 24px}}@media(max-width:400px){:root{--page-x: 12px;--sec-gap: 22px}}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--c-paper);font-family:var(--f-sans);color:var(--c-ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-size:var(--fs-body);line-height:var(--lh-base)}a{color:inherit;text-decoration:none}::selection{background:var(--c-selection)}*{scrollbar-width:thin;scrollbar-color:var(--c-scroll) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--c-scroll-thumb);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--c-scroll-hover)}:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}button{font:inherit;border:none;background:none;cursor:pointer;padding:0;color:inherit}input,textarea{font:inherit;color:inherit}h1,h2,h3,h4{font-family:var(--f-serif)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:var(--sp-2);top:-48px;z-index:var(--z-toast);padding:var(--sp-2) var(--sp-3);background:var(--c-rule);color:#fff;font-size:var(--fs-note)}.skip-link:focus{top:var(--sp-2)}.g-card{position:relative;background:var(--c-paper-2);border:1px solid var(--c-line-2);border-radius:var(--r-lg);box-shadow:var(--glass-shadow)}.g-card-hi{position:relative;background:var(--c-paper-2);border:2px solid var(--c-rule);border-radius:0;box-shadow:var(--shadow-hard)}.glass-bar{background:var(--bar-bg);-webkit-backdrop-filter:var(--bar-blur);backdrop-filter:var(--bar-blur);border-bottom:1px solid var(--c-line);box-shadow:var(--bar-shadow)}.sec-head{display:flex;align-items:center;gap:10px;margin:0 0 12px}.sec-head:after{content:"";order:1;flex:1 1 12px;min-width:12px;height:1px;background:var(--c-line)}.sec-head>:not(.sec-title):not(.sec-sub){order:2}.sec-title{position:relative;flex:none;margin:0;padding:0 0 0 13px;color:var(--c-ink);font:700 var(--fs-read)/1.4 var(--f-serif);letter-spacing:var(--ls-soft);white-space:nowrap}.sec-title:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:6px;height:16px;background:var(--c-primary)}.sec-sub{flex:0 1 auto;min-width:0;font-family:var(--f-mono);font-size:var(--fs-caption);color:var(--c-ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sec-head--inline{gap:10px;margin:0 0 12px;border:0}.sec-head--inline .sec-title{font-size:var(--fs-h4)}.sec-link{font-size:var(--fs-note);color:var(--c-primary);white-space:nowrap}.sec-link+.sec-link{margin-left:var(--sp-2)}.sec-link.quiet{color:var(--c-ink-3)}.sec-link:disabled{opacity:.5;cursor:not-allowed}@media(hover:hover){.sec-link:hover:not(:disabled){text-decoration:underline}.sec-link.quiet:hover:not(:disabled){color:var(--c-primary)}}.sec{margin-top:var(--sec-gap)}.np-cols{display:grid;gap:0;overflow:hidden}.np-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.np-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.page .np-cols>.a-card,.page .np-cols>.t-card{margin:-1px 0 0 -1px;padding:14px 18px 16px;border:0;border-left:1px solid var(--c-line-2);border-top:1px solid var(--c-line);background:none;box-shadow:none;transform:none}.page .np-cols-3>:nth-child(3n+1){padding-left:0}.page .np-cols-3>:nth-child(3n){padding-right:0}.page .np-cols-2>:nth-child(odd){padding-left:0}.page .np-cols-2>:nth-child(2n){padding-right:0}.seg{display:inline-flex;align-self:stretch}.seg-item{position:relative;display:inline-flex;align-items:center;padding:0 14px;font:var(--fs-ui) var(--f-serif);letter-spacing:var(--ls-soft);color:var(--c-ink-2);white-space:nowrap;min-height:36px;transition:color var(--dur) var(--ease)}.seg-item+.seg-item:before{content:"";position:absolute;left:0;top:50%;width:1px;height:13px;transform:translateY(-50%);background:var(--c-line-2)}.seg-item.on{color:var(--c-primary);font-weight:700}.seg-item.on:after{content:"";position:absolute;left:14px;right:14px;bottom:-1px;height:2px;background:var(--c-primary)}.seg-n{margin-left:var(--sp-1);font-family:var(--f-mono);font-size:var(--fs-meta);font-weight:400;color:var(--c-primary)}.seg-lg .seg-item{padding:10px 18px;font-size:var(--fs-h4)}.seg-lg .seg-item.on:after{left:18px;right:18px}.seg .seg-item:first-child{padding-left:0}.seg .seg-item:last-child{padding-right:0}.seg .seg-item:first-child:after{left:0}.seg .seg-item:last-child:after{right:0}@media(hover:hover){.seg-item:hover:not(.on){color:var(--c-ink)}}.pill{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:var(--r-sm);border:1px solid var(--c-line-2);background:var(--c-paper-2);color:var(--c-ink-2);font-size:var(--fs-note);cursor:pointer;transition:border-color var(--dur) var(--ease),background-color var(--dur) var(--ease),color var(--dur) var(--ease);user-select:none;white-space:nowrap}@media(hover:hover){.pill:hover{border-color:var(--c-ink-3);color:var(--c-ink)}}.pill.on{border-color:var(--c-primary);background:var(--c-primary-wash);color:var(--c-primary);font-weight:600}.pill:disabled{opacity:.45;cursor:not-allowed}.pill-flat{padding:3px 9px;border:1px solid transparent;background:none;font-family:var(--f-sans);font-size:var(--fs-ui);color:var(--c-ink-2)}@media(hover:hover){.pill-flat:hover:not(:disabled):not(.on){border-color:var(--c-line-2);color:var(--c-ink)}}.pill-flat.on{border-color:var(--c-primary-line);background:var(--c-primary-wash);color:var(--c-primary);font-weight:600}.pill-flat:first-child:not(.on){padding-left:0}.tag{display:inline-block;padding:1px 7px;border:1px solid var(--c-primary-line);border-radius:var(--r-sm);background:var(--c-primary-wash);color:var(--c-primary);font-size:var(--fs-meta);line-height:var(--lh-base)}.tag-plain{display:inline-block;padding:1px 7px;border:1px solid var(--c-line-2);border-radius:var(--r-sm);background:var(--c-tint);color:var(--c-ink-2);font-size:var(--fs-meta);line-height:var(--lh-base)}.ink-lab{padding:2px 7px;background:var(--c-rule);color:#fff;font:var(--fs-meta)/var(--lh-snug) var(--f-serif);letter-spacing:var(--ls-label)}.stamp{display:inline-block;padding:1px 8px;border:1px solid var(--c-line-2);color:var(--c-ink-2);font-family:var(--f-serif);font-size:var(--fs-meta);line-height:var(--lh-snug);white-space:nowrap}.stamp-ok{color:var(--c-ok);border-color:var(--c-ok-line);background:var(--c-ok-wash)}.stamp-warn{color:var(--c-warn);border-color:var(--c-warn-line);background:var(--c-warn-wash)}.stamp-red{color:var(--c-primary);border-color:var(--c-primary-line);background:var(--c-primary-wash)}.stamp-mute{color:var(--c-ink-4)}.callout{padding:var(--sp-3) var(--sp-4);border:1px dashed var(--c-line-2);font:var(--fs-note)/var(--lh-relaxed) var(--f-serif);color:var(--c-ink-2)}.callout.warn{border:1px solid var(--c-warn-line);background:var(--c-warn-wash);color:var(--c-warn)}.callout.rail{border:1px solid var(--c-rule);border-left:4px solid var(--c-primary)}.callout.rail.ok{border-left-color:var(--c-ok)}.callout.rail.warn{border:1px solid var(--c-rule);border-left:4px solid var(--c-warn)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:7px 18px;border-radius:var(--r-md);font-family:inherit;font-size:var(--fs-ui);font-weight:600;line-height:var(--lh-snug);gap:6px;white-space:nowrap;cursor:pointer;user-select:none;transition:background-color var(--dur-fast),border-color var(--dur-fast),color var(--dur-fast),transform var(--dur-fast),box-shadow var(--dur-fast)}.btn-primary{background:var(--c-primary);color:#fff;border:1px solid var(--c-rule);box-shadow:var(--shadow-hard-sm)}@media(hover:hover){.btn-primary:hover:not(:disabled):not(.disabled){background:var(--c-primary-deep)}}.btn-primary:active:not(:disabled):not(.disabled){transform:translate(2px,2px);box-shadow:none}.btn-primary:focus-visible{outline-offset:3px}.btn-ghost,.btn-more{border:1px solid var(--c-line-2);background:var(--c-paper-2);color:var(--c-ink-2)}@media(hover:hover){.btn-ghost:hover:not(:disabled):not(.disabled):not(.on),.btn-more:hover:not(:disabled):not(.disabled){border-color:var(--c-rule);color:var(--c-ink);background:var(--c-fill)}}.btn-ghost:active:not(:disabled):not(.disabled),.btn-more:active:not(:disabled):not(.disabled){background:var(--c-fill-2)}.btn-ghost.on,.btn-ghost.is-cta{border-color:var(--c-primary-line);color:var(--c-primary)}.btn:disabled,.btn.disabled{opacity:.45;cursor:not-allowed}.btn-primary:disabled,.btn-primary.disabled{box-shadow:none}.btn-sm{min-height:30px;padding:4px 12px;font-size:var(--fs-note)}.btn-lg{min-height:44px;padding:10px 24px;font-size:var(--fs-body);letter-spacing:var(--ls-label);min-width:140px}.btn-block{width:100%}.btn-more{border-color:var(--c-line-2);color:var(--c-ink-2);letter-spacing:var(--ls-soft);min-width:180px}.btn-join{min-height:38px;box-shadow:none}.btn-join:active:not(:disabled):not(.disabled){transform:none}.op{display:inline-flex;align-items:center;padding:3px 8px;font-size:var(--fs-meta);color:var(--c-ink-3);transition:color var(--dur) var(--ease),border-color var(--dur) var(--ease),background-color var(--dur) var(--ease)}.op{border-radius:var(--r-sm)}.op.main{color:var(--c-primary);border:1px solid var(--c-primary-line)}@media(hover:hover){.op:hover:not(:disabled){color:var(--c-ink);text-decoration:underline}.op.main:hover:not(:disabled){color:var(--c-primary)}.op.del:hover:not(:disabled){color:var(--c-primary)}}.icon-btn{border-radius:var(--r-sm);display:inline-flex;align-items:center;justify-content:center;flex:none;width:30px;height:30px;border:1px solid var(--c-line-2);background:var(--c-paper);color:var(--c-ink-2);font-size:var(--fs-read);line-height:1;transition:background-color var(--dur-fast),border-color var(--dur-fast),color var(--dur-fast)}@media(hover:hover){.icon-btn:hover:not(:disabled){border-color:var(--c-primary-line);background:var(--c-primary-wash);color:var(--c-primary)}}.input{width:100%;min-width:0;min-height:38px;padding:7px 12px;border:1px solid var(--c-line-2);border-radius:var(--r-sm);background:var(--c-paper);font:var(--fs-ui)/var(--lh-snug) var(--f-sans);color:var(--c-ink);transition:border-color var(--dur-fast),box-shadow var(--dur-fast)}@media(hover:hover){.input:hover:not(:focus):not(:disabled){border-color:var(--c-ink-4)}}.input::placeholder{color:var(--c-ink-4)}.input:focus{outline:none;border-color:var(--c-primary);box-shadow:0 0 0 2px var(--c-primary-wash-2)}.input:focus-visible{outline:none}.input:disabled{background:var(--c-fill);cursor:not-allowed}textarea.input{line-height:var(--lh-relaxed);resize:vertical}.input.mono{font-family:var(--f-mono)}.input-wrap{position:relative;display:flex}.input-wrap .input{padding-right:34px}.input-clear{position:absolute;right:var(--sp-1);top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;color:var(--c-ink-4);font-size:var(--fs-read);line-height:1}@media(hover:hover){.input-clear:hover{background:var(--c-fill);color:var(--c-ink)}}.press{transition:transform var(--dur-fast) var(--ease)}.press:active{transform:scale(.985)}.lift{transition:transform var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}@media(hover:hover){.lift:hover{border-color:var(--c-ink-4);box-shadow:var(--shadow-soft);transform:translateY(-1px)}}.skel{position:relative;overflow:hidden;background:var(--c-skel);border-radius:var(--r-sm);color:transparent!important}.skel:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,var(--c-skel-shine),transparent);animation:skel-sweep 1.3s infinite}@keyframes skel-sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}.skel-h60{height:60px}.skel-h84{height:84px}.skel-h120{height:120px}.skel-h140{height:140px}.skel-h150{height:150px}.skel-h220{height:220px}.skel-h420{height:420px}.skel-gap{margin-top:14px}.rise{animation:rise-in .26s ease backwards}@keyframes rise-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.empty{padding:48px var(--sp-5);text-align:center;color:var(--c-ink-3);font-size:var(--fs-ui)}.empty-t{margin:0;font-size:var(--fs-ui);line-height:var(--lh-base);color:var(--c-ink-2)}.empty-s{margin:6px 0 0;font-size:var(--fs-note);line-height:var(--lh-base);color:var(--c-ink-4)}.empty .btn{margin:var(--sp-4) var(--sp-1) 0}.empty.boxed{border:1px dashed var(--c-line-2);border-radius:var(--r-lg)}.modal{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--sp-4);background:var(--c-scrim);-webkit-backdrop-filter:blur(2.5px);backdrop-filter:blur(2.5px);overscroll-behavior:contain;animation:modal-in var(--dur) var(--ease) backwards}@keyframes modal-in{0%{opacity:0}to{opacity:1}}@keyframes sheet-pop{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-sheet{position:relative;width:min(var(--sheet-w, 380px),100%);max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow:auto;padding:24px 24px 20px;background:var(--c-paper);border:1px solid var(--c-line-2);border-top:3px solid var(--c-rule);border-radius:0 0 var(--r-md) var(--r-md);box-shadow:var(--shadow-pop);display:flex;flex-direction:column;align-items:center;gap:var(--sp-3);text-align:center;animation:sheet-pop .18s var(--ease) backwards}.modal-close{position:absolute;top:14px;right:14px}.modal-title{margin:0;font:700 var(--fs-h3)/var(--lh-snug) var(--f-serif);color:var(--c-ink)}@keyframes sheet-up{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:640px){.modal{align-items:flex-end;padding:0}.modal-sheet{width:100%;max-height:88vh;max-height:88dvh;border:0;border-top:3px solid var(--c-rule);border-radius:0;padding:22px 18px calc(18px + env(safe-area-inset-bottom,0px));box-shadow:0 -8px 28px #16181b29;animation:sheet-up .2s var(--ease) backwards}}.modal-sub{margin:0;font-size:var(--fs-note);line-height:var(--lh-relaxed);color:var(--c-ink-3)}.modal-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--sp-2);margin-top:var(--sp-1)}.modal-qr{display:block;width:210px;max-width:100%;height:auto;aspect-ratio:1;padding:8px;background:var(--c-paper);border:1px solid var(--c-line-2);border-radius:var(--r-sm)}.ledger-more{display:block;width:100%;min-height:44px;padding:var(--sp-3) 0;border-bottom:1px solid var(--c-line);font:var(--fs-note) var(--f-sans);color:var(--c-primary);text-align:center;transition:background-color var(--dur-fast)}.ledger-more:disabled{opacity:.45;cursor:not-allowed}@media(hover:hover){.ledger-more:hover:not(:disabled){background:var(--c-primary-wash)}}.a-quiet{color:var(--c-ink-3);border-bottom:1px solid var(--c-line-2)}.a-red{color:var(--c-primary);border-bottom:1px solid var(--c-primary-line)}@media(hover:hover){.a-quiet:hover{color:var(--c-primary);border-bottom-color:var(--c-primary-line)}.a-red:hover{border-bottom-color:var(--c-primary)}}.page{max-width:1080px;margin:0 auto;padding:var(--sp-5) var(--page-x) 64px}.page-narrow{max-width:760px}.toast-wrap{position:fixed;left:50%;bottom:calc(48px + env(safe-area-inset-bottom,0px));transform:translate(-50%);z-index:var(--z-toast);display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none}.toast{max-width:min(78vw,420px);padding:10px 16px;border-radius:var(--r-xl);background:#16181be0;color:#fff;font:var(--fs-note)/var(--lh-snug) var(--f-sans);text-align:center;overflow-wrap:anywhere;animation:rise-in .2s ease both;box-shadow:var(--shadow-float)}body.has-tabbar .toast-wrap{bottom:calc(var(--tabbar-h) + 24px)}@media(max-width:900px){.np-cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}.page .np-cols-3>:nth-child(n){padding-left:18px;padding-right:18px}.page .np-cols-3>:nth-child(odd){padding-left:0}.page .np-cols-3>:nth-child(2n){padding-right:0}.page .np-cols-3>:nth-child(3):last-child{grid-column:1 / -1;padding-right:0}.toast-wrap{bottom:calc(76px + env(safe-area-inset-bottom,0px))}}@media(max-width:780px){.np-cols-2{grid-template-columns:minmax(0,1fr)}.page .np-cols-2>:nth-child(n){padding-left:0;padding-right:0}}@media(max-width:640px){.page{padding:var(--sp-3) var(--page-x) 48px}.sec-head:not(.sec-head--inline) .sec-title{font-size:var(--fs-h4)}.np-cols-3{grid-template-columns:minmax(0,1fr)}.page .np-cols-3>:nth-child(n){padding-left:0;padding-right:0}.page .np-cols-3>:nth-child(3):last-child{grid-column:auto}.modal-actions>.btn{flex:1 1 auto}}@media(pointer:coarse){.sec-link{display:inline-flex;align-items:center;min-height:var(--tap-inline)}.seg-item{min-height:var(--tap)}.btn-sm{min-height:36px}.op{min-height:var(--tap-inline)}.icon-btn{width:var(--tap);height:var(--tap)}.input-clear{right:0;width:var(--tap);height:var(--tap)}.input-wrap .input{padding-right:calc(var(--tap) + 4px)}.pill{min-height:var(--tap-inline)}}@media(prefers-reduced-motion:reduce){.rise{animation:none}.skel:after{animation:none}.toast{animation:none}*,*:before,*:after{transition-duration:.01ms!important;scroll-behavior:auto!important}}@media(prefers-reduced-motion:reduce){.modal{animation:none}}.ssr{max-width:760px;margin:0 auto;padding:24px 16px 48px;color:var(--c-ink);line-height:1.8}.ssr h1{margin:12px 0;font-size:26px;line-height:1.4}.ssr h2{margin:28px 0 8px;font-size:18px}.ssr p{margin:0 0 12px}.ssr a{color:var(--c-ink)}.ssr ul{margin:0;padding-left:20px}.ssr li{margin:6px 0}.ssr li span,.ssr-meta,.ssr-crumb,.ssr-sub,.ssr-kicker{color:var(--c-ink-3);font-size:14px}.ssr blockquote{margin:0;font-family:var(--f-serif)}.ssr-nav{margin-top:40px;padding-top:12px;border-top:1px solid var(--c-line)}.ssr-nav ul{display:flex;flex-wrap:wrap;gap:4px 16px;padding:0;list-style:none}
