:root{--rind: oklch(68% .105 158);--rind-2: oklch(76% .095 158);--rind-tint: oklch(32% .035 158);--rind-line: oklch(46% .055 158);--flesh: oklch(68% .155 25);--flesh-deep: oklch(60% .145 25);--flesh-tint: oklch(68% .155 25 / .18);--fresh: oklch(72% .115 150);--fresh-tint: oklch(34% .04 150);--seed: oklch(96% .008 155);--ink-2: oklch(80% .01 155);--seed-muted: oklch(70% .012 155);--paper: oklch(21% .012 158);--paper-2: oklch(25% .014 158);--paper-3: oklch(29% .015 158);--rule: oklch(34% .018 158);--rule-soft: oklch(30% .015 158);--tint-ink: oklch(96% .008 155);--bg-page: oklch(21% .012 158);--bg-card: oklch(25% .014 158);--bg-card-active: oklch(29% .015 158);--bg-card-hover: oklch(29% .015 158);--bg-input: oklch(29% .015 158);--bg-modal: oklch(25% .014 158);--accent: oklch(68% .105 158);--accent-hover: oklch(76% .095 158);--accent-ghost: oklch(32% .035 158);--accent-shadow: oklch(68% .105 158 / .3);--accent-08: oklch(68% .105 158 / .08);--accent-12: oklch(68% .105 158 / .12);--accent-14: oklch(68% .105 158 / .14);--accent-20: oklch(68% .105 158 / .2);--accent-30: oklch(68% .105 158 / .3);--accent-35: oklch(68% .105 158 / .35);--accent-45: oklch(68% .105 158 / .45);--accent-55: oklch(68% .105 158 / .55);--emph: oklch(68% .155 25);--emph-hover: oklch(60% .145 25);--emph-ghost: oklch(68% .155 25 / .18);--emph-shadow: oklch(68% .155 25 / .3);--emph-55: oklch(68% .155 25 / .55);--emph-12: oklch(68% .155 25 / .12);--text-primary: oklch(96% .008 155);--text-secondary: oklch(80% .01 155);--text-tertiary: oklch(70% .012 155);--text-muted: oklch(70% .012 155);--text-on-accent: oklch(18% .015 158);--indicator-on-dark: #fff;--text-on-dark: #fff;--border-subtle: oklch(34% .018 158);--border-input: oklch(34% .018 158);--border-card-hover: oklch(46% .055 158);--border-hairline: oklch(30% .015 158);--border-strong: oklch(46% .055 158);--overlay-scrim: rgb(0 0 0 / .65);--overlay-scrim-soft: rgb(0 0 0 / .45);--ambient-1: oklch(68% .105 158 / .12);--ambient-2: oklch(68% .155 25 / .06);--banner-h: 32px;--banner-bg: color-mix(in srgb, oklch(68% .105 158) 16%, oklch(21% .012 158));--banner-fg: oklch(96% .008 155);--z-banner: calc(var(--z-sticky) + 10);--glass-bg: rgb(28 36 31 / .66);--glass-border: oklch(46% .055 158 / .5);--glass-blur: 16px;--glass-saturate: 140%;--color-today: oklch(72% .115 150);--color-hotrank: oklch(68% .155 25);--color-success: oklch(72% .115 150);--color-success-light: oklch(88% .09 150);--color-warn: oklch(80% .11 75);--color-warn-deep: oklch(72% .13 70);--color-danger: oklch(68% .155 25);--accent-grad-from: oklch(68% .155 25);--accent-grad-to: oklch(62% .15 25);--accent-inset: rgb(0 0 0 / .18);--mask-solid: #000;--fs-3xs: 10px;--fs-2xs: 11px;--fs-xs: 12px;--fs-sm: 12.5px;--fs-base: 13px;--fs-md: 14px;--fs-lg: 15px;--fs-xl: 16px;--fs-2xl: 18px;--fs-3xl: 22px;--fs-4xl: 26px;--fs-hero: 30px;--fs-display: 54px;--fw-normal: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--fw-black: 800;--lh-flat: 1.05;--lh-tight: 1.2;--lh-snug: 1.35;--lh-normal: 1.6;--lh-relaxed: 1.75;--lh-loose: 2;--font-serif: "Songti SC", "STSong", "Source Han Serif SC", "Noto Serif SC", "SimSun", Georgia, serif;--container-sm: 430px;--container-md: 720px;--container-xl: 1400px;--space-0-5: 2px;--space-1: 4px;--space-1-5: 6px;--space-2: 8px;--space-2-5: 10px;--space-3: 12px;--space-3-5: 14px;--space-4: 16px;--space-4-5: 18px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--section-gap: var(--space-4);--section-gap-lg: 20px;--r-chip: 5px;--r-btn: 7px;--r-card: 10px;--radius-xs: var(--r-chip);--radius-sm: var(--r-btn);--radius-md: var(--r-btn);--radius-lg: var(--r-card);--radius-xl: var(--r-card);--radius-pill: 999px;--radius-circle: 50%;--shadow-soft-sm: 0 1px 2px oklch(20% .012 155 / .06), 0 2px 8px oklch(20% .012 155 / .05);--shadow-soft-md: 0 2px 6px oklch(20% .012 155 / .07), 0 6px 18px oklch(20% .012 155 / .07);--shadow-sm: var(--shadow-soft-sm);--shadow-card: var(--shadow-soft-sm);--shadow-md: var(--shadow-soft-md);--shadow-float: var(--shadow-soft-md);--shadow-lg: var(--shadow-soft-md);--accent-coin: oklch(72% .115 150);--accent-coin-light: oklch(88% .09 150);--accent-coin-deep: oklch(28% .05 150);--accent-invite: oklch(68% .155 25);--accent-promo: oklch(62% .15 25);--tier-gold-1: #ffd700;--tier-gold-2: #ffaa00;--tier-gold-3: #ffa500;--tier-gold-ink: #4a3200;--tier-silver-1: #e8e8e8;--tier-silver-2: #b0b0b0;--tier-silver-3: #c0c0c0;--tier-silver-4: #999999;--tier-silver-ink: #2b2b2b;--tier-bronze-1: #f0a060;--tier-bronze-2: #c06030;--tier-bronze-ink: #3d2000;--tier-copper-1: #cd7f32;--tier-copper-2: #a0522d;--z-sticky: 100;--z-dropdown: 300;--z-modal: 1000;--z-toast: 1100;--z-overlay: 1200;--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--tap-min: 44px;--ease-out-quart: cubic-bezier(.22, 1, .36, 1);--ease-out-soft: cubic-bezier(.33, 1, .68, 1);--poster-ratio: 145%;--thumb-ratio: 66.67%}html.light{--paper: oklch(98.6% .005 155);--paper-2: oklch(96.2% .011 155);--paper-3: oklch(93% .016 155);--rule: oklch(88.5% .013 155);--rule-soft: oklch(92.5% .01 155);--seed: oklch(20% .012 155);--ink-2: oklch(37% .011 155);--seed-muted: oklch(48% .011 155);--rind: oklch(44% .095 158);--rind-2: oklch(52% .095 158);--rind-tint: oklch(94% .028 158);--rind-line: oklch(80% .045 158);--flesh: oklch(48% .17 25);--flesh-deep: oklch(40% .15 25);--flesh-tint: oklch(48% .17 25 / .1);--fresh: oklch(50% .115 150);--fresh-tint: oklch(94% .035 150);--tint-ink: oklch(48% .17 25);--bg-page: oklch(98.6% .005 155);--bg-card: oklch(96.2% .011 155);--bg-card-active: oklch(93% .016 155);--bg-card-hover: oklch(93% .016 155);--bg-input: oklch(93% .016 155);--bg-modal: oklch(96.2% .011 155);--accent: oklch(44% .095 158);--accent-hover: oklch(52% .095 158);--accent-ghost: oklch(94% .028 158);--accent-shadow: oklch(44% .095 158 / .22);--accent-08: oklch(44% .095 158 / .08);--accent-12: oklch(44% .095 158 / .12);--accent-14: oklch(44% .095 158 / .14);--accent-20: oklch(44% .095 158 / .2);--accent-30: oklch(44% .095 158 / .3);--accent-35: oklch(44% .095 158 / .35);--accent-45: oklch(44% .095 158 / .45);--accent-55: oklch(44% .095 158 / .55);--emph: oklch(48% .17 25);--emph-hover: oklch(40% .15 25);--emph-ghost: oklch(48% .17 25 / .1);--emph-shadow: oklch(48% .17 25 / .22);--emph-55: oklch(48% .17 25 / .5);--emph-12: oklch(48% .17 25 / .1);--text-primary: oklch(20% .012 155);--text-secondary: oklch(37% .011 155);--text-tertiary: oklch(48% .011 155);--text-muted: oklch(48% .011 155);--text-on-accent: #fff;--border-subtle: oklch(88.5% .013 155);--border-input: oklch(88.5% .013 155);--border-card-hover: oklch(80% .045 158);--border-hairline: oklch(92.5% .01 155);--border-strong: oklch(80% .045 158);--overlay-scrim: rgb(15 23 42 / .45);--overlay-scrim-soft: rgb(15 23 42 / .3);--ambient-1: oklch(44% .095 158 / .07);--ambient-2: oklch(48% .17 25 / .04);--banner-bg: color-mix(in srgb, oklch(44% .095 158) 8%, oklch(98.6% .005 155));--banner-fg: oklch(20% .012 155);--glass-bg: rgb(255 255 255 / .7);--glass-border: oklch(44% .095 158 / .12);--glass-saturate: 130%;--color-today: oklch(50% .115 150);--color-hotrank: oklch(48% .17 25);--color-success: oklch(50% .115 150);--color-success-light: oklch(88% .09 150);--color-warn: oklch(50% .13 70);--color-danger: oklch(48% .17 25);--accent-coin: oklch(50% .115 150);--accent-coin-light: oklch(44% .1 150);--accent-coin-deep: oklch(30% .06 150);--accent-invite: oklch(48% .17 25);--accent-promo: oklch(40% .15 25);--accent-grad-from: oklch(48% .17 25);--accent-grad-to: oklch(40% .15 25)}*{box-sizing:border-box}@media (max-width: 640px){html{overscroll-behavior-y:none;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{-webkit-tap-highlight-color:transparent}input,textarea,select{font-size:var(--fs-xl)}}html{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar{display:none;width:0;height:0}*{scrollbar-width:none;-ms-overflow-style:none}*::-webkit-scrollbar{display:none;width:0;height:0}body{margin:0;background:var(--bg-page);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;transition:background .35s,color .35s}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(80% 34% at 50% 0%,var(--ambient-1),transparent 70%),radial-gradient(50% 30% at 0% 0%,var(--ambient-2),transparent 70%),radial-gradient(50% 30% at 100% 0%,var(--ambient-2),transparent 70%)}#app{min-height:100vh;min-height:100dvh}.page{width:100%;max-width:var(--container-sm);margin:0 auto;min-height:100vh;min-height:100dvh;padding-top:0;padding-left:calc(var(--space-3-5) + var(--safe-left));padding-right:calc(var(--space-3-5) + var(--safe-right));padding-bottom:calc(var(--space-8) + var(--safe-bottom))}@media (min-width: 768px){.page{max-width:var(--container-md);padding-left:var(--space-6);padding-right:var(--space-6);padding-bottom:var(--space-10)}}@media (min-width: 1024px){.page{max-width:var(--container-xl);padding-left:var(--space-8);padding-right:var(--space-8);padding-bottom:var(--space-12)}}.page-title{margin:0;font-size:var(--fs-3xl);font-weight:var(--fw-bold);line-height:var(--lh-tight);color:var(--text-primary)}.block-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2-5);margin-bottom:var(--space-3-5)}.block-title{display:flex;align-items:center;gap:var(--space-2);min-width:0}.block-title h3{margin:0;font-size:var(--fs-2xl);font-weight:var(--fw-bold);color:var(--text-primary)}.accent-bar{width:3px;height:16px;border-radius:var(--radius-pill);background:var(--accent);flex-shrink:0}.count-pill{flex-shrink:0;padding:var(--space-0-5) var(--space-2);border-radius:var(--radius-pill);background:var(--bg-input);color:var(--text-tertiary);font-size:var(--fs-xs)}.hero-title{margin:0;font-size:var(--fs-3xl);font-weight:var(--fw-bold);line-height:var(--lh-tight);color:var(--text-primary)}.hero-desc{margin:var(--space-1) 0 0;font-size:var(--fs-base);color:var(--text-muted);line-height:var(--lh-snug)}.back-btn,.cat-back,.gal-back,.search-back{border:none;background:var(--bg-input);color:var(--text-secondary);font-size:var(--fs-base);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;margin-bottom:var(--space-2-5);transition:color .2s var(--ease-out-quart),background .2s var(--ease-out-quart)}@media (hover: hover) and (pointer: fine){.back-btn:hover,.cat-back:hover,.gal-back:hover,.search-back:hover{color:var(--accent);background:var(--accent-ghost)}}.back-btn:active,.cat-back:active,.gal-back:active,.search-back:active{opacity:.7}@media (max-width: 640px){.back-btn,.cat-back,.gal-back,.search-back{min-height:var(--tap-min);display:inline-flex;align-items:center}}.banner-bar{position:fixed;top:0;left:0;right:0;z-index:var(--z-banner);height:calc(var(--banner-h) + var(--safe-top));padding-top:var(--safe-top);display:flex;align-items:center;justify-content:center;background:var(--banner-bg);backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));color:var(--banner-fg);font-size:var(--fs-xs);overflow:hidden}.banner-bar:before{content:"";position:absolute;left:0;top:var(--safe-top);bottom:0;width:3px;background:var(--accent);pointer-events:none}.banner-text{white-space:nowrap;animation:bannerSlideAcross var(--slide-duration, 8s) linear forwards}@keyframes bannerSlideAcross{0%{transform:translate(100%)}to{transform:translate(-100%)}}.banner-close{position:absolute;right:var(--space-2);top:var(--safe-top);bottom:0;display:flex;align-items:center;padding:0 var(--space-2);background:none;border:none;color:var(--banner-fg);opacity:.75;font-size:var(--fs-md);cursor:pointer;line-height:var(--lh-tight)}.slide-down-enter-active,.slide-down-leave-active{transition:transform .3s,opacity .3s}.slide-down-enter-from,.slide-down-leave-to{transform:translateY(-100%);opacity:0}.brand-sub{margin:var(--space-1) 0 0;font-size:var(--fs-base);color:var(--text-tertiary)}.header-actions{display:flex;align-items:center;gap:var(--space-2)}.search{display:flex;align-items:center;height:52px;border-radius:var(--radius-pill);background:var(--bg-input);border:1px solid var(--border-input);box-shadow:var(--shadow-sm);padding:0 var(--space-1-5) 0 var(--space-3-5);margin-bottom:var(--space-2-5);transition:border-color .2s,box-shadow .2s}.search:focus-within,.search.is-focus{border-color:var(--emph-55);box-shadow:0 0 0 3px var(--emph-12),var(--shadow-sm)}.search-input{flex:1;height:100%;background:transparent;border:none;color:var(--text-primary);font-size:var(--fs-lg);padding:0 var(--space-2-5);min-width:0;outline:none}.search-input::placeholder{color:var(--text-muted)}.search-btn{flex-shrink:0;height:40px;padding:0 var(--space-4-5);border-radius:var(--radius-pill);border:none;background:var(--emph);color:var(--text-on-accent);font-size:var(--fs-lg);font-weight:var(--fw-semibold);cursor:pointer;transition:transform .18s,background .18s}@media (hover: hover) and (pointer: fine){.search-btn:hover{background:var(--emph-hover)}}.search-btn:active{transform:scale(.95)}.search-btn:focus-visible,.search-input:focus-visible{outline:2px solid var(--emph);outline-offset:2px}.plate{width:100%;margin:0 auto}.plate+.plate{border-top:1px solid var(--border-subtle);margin-top:var(--space-12);padding-top:var(--space-10)}@media (max-width: 640px){.plate+.plate{margin-top:var(--space-8);padding-top:var(--space-6)}}.report-entry{text-align:center;margin:var(--space-2-5) 0 var(--space-1)}.report-entry-link{background:none;border:none;color:var(--text-muted);font-size:var(--fs-sm);text-decoration:underline;cursor:pointer;padding:var(--space-0-5) var(--space-2-5)}.report-entry-link:active{color:var(--text-secondary)}.report-entry-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-xs)}.list{display:flex;flex-direction:column;gap:var(--space-3-5)}.skeleton{display:flex;gap:var(--space-3);padding:var(--space-3) var(--space-3-5);background:var(--bg-card);border-radius:var(--radius-lg)}.empty{text-align:center;padding:var(--space-10) 0;color:var(--text-tertiary);font-size:var(--fs-md);line-height:var(--lh-normal)}.pagination{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-4-5) 0 var(--space-1);flex-wrap:wrap}.pg{min-width:36px;height:36px;padding:0 var(--space-3);border:1px solid var(--border-input);border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font-size:var(--fs-md);cursor:pointer;transition:transform .16s var(--ease-out-soft),background .2s,color .2s,border-color .2s}@media (hover: hover) and (pointer: fine){.pg:hover:not(.disabled):not(.active){border-color:var(--accent);color:var(--text-primary)}}.pg:active:not(.disabled){transform:scale(.94)}.pg:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pg.active{background:var(--accent);border-color:var(--accent);color:var(--text-on-accent);font-weight:var(--fw-bold);box-shadow:0 4px 14px var(--accent-ghost)}.pg.disabled{opacity:.4;cursor:default}.pg-jump{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--fs-xs);color:var(--text-muted);margin-left:var(--space-1)}.pg-jump input{width:52px;height:32px;border-radius:var(--radius-xs);border:1px solid var(--border-input);background:var(--bg-input);color:var(--text-primary);text-align:center;outline:none}.reveal{opacity:0;transform:translateY(14px);transition:opacity .5s var(--ease-out-soft),transform .5s var(--ease-out-soft)}.reveal.in{opacity:1;transform:translateY(0)}.poster-thumb.skeleton{position:relative;overflow:hidden}.poster-thumb.skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 20%,var(--border-strong) 50%,transparent 80%);transform:translate(-100%);animation:shimmer 1.6s infinite}@keyframes shimmer{to{transform:translate(100%)}}@keyframes shimmer-bg{0%{background-position:100% 0}to{background-position:-100% 0}}.poster-thumb .thumb-img{opacity:0;transition:opacity .4s var(--ease-out-soft)}.poster-thumb .thumb-img.loaded{opacity:1}@media (max-width: 640px){.pg{min-width:var(--tap-min);height:var(--tap-min)}.pg-jump input{height:var(--tap-min)}}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){:root,html.light{--glass-bg: var(--bg-card);--glass-blur: 0px}}@media (prefers-reduced-transparency: reduce){:root,html.light{--glass-bg: var(--bg-card);--glass-blur: 0px}}
