:root{--ink: #0e0c11;--ink-2: #15121b;--ink-3: #1c1826;--line: #2b2536;--paper: #efe9dd;--muted: #9a90a6;--shu: #ff4d3b;--shu-deep: #d8331f;--gold: #d3a63c;--radius: 12px;--shadow: 0 24px 60px -28px rgba(0, 0, 0, .9);--mincho: "Shippori Mincho", "Times New Roman", serif;--gothic: "Zen Kaku Gothic New", system-ui, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;color:var(--paper);font-family:var(--gothic);-webkit-font-smoothing:antialiased;background:radial-gradient(1100px 520px at 88% -8%,rgba(255,77,59,.1),transparent 62%),radial-gradient(820px 480px at -5% 2%,rgba(211,166,60,.06),transparent 55%),var(--ink)}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;opacity:.04;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}img{display:block;max-width:100%}.container{max-width:1200px;margin:0 auto;padding:0 28px;position:relative;z-index:2}.navbar{position:sticky;top:0;z-index:50;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0e0c11c7;border-bottom:1px solid var(--line)}.navbar-inner{display:flex;align-items:center;gap:22px;height:70px}.brand{font-family:var(--mincho);font-weight:800;font-size:24px;letter-spacing:.5px;display:inline-flex;align-items:baseline;gap:.5ch}.brand:before{content:"鏡";color:var(--shu);font-size:26px;line-height:1}.brand span{color:var(--shu)}.nav-links{display:flex;gap:22px;margin-left:6px}.nav-links a{color:var(--muted);font-weight:500;font-size:15px;letter-spacing:.2px;padding:4px 0;position:relative;transition:color .15s}.nav-links a:after{content:"";position:absolute;left:0;right:100%;bottom:-2px;height:2px;background:var(--shu);transition:right .2s ease}.nav-links a:hover{color:var(--paper)}.nav-links a:hover:after,.nav-links a.active:after{right:0}.nav-links a.active{color:var(--paper)}.nav-spacer{flex:1}.search-mini{display:flex;align-items:center;gap:8px;background:var(--ink-2);border:1px solid var(--line);border-radius:999px;padding:9px 16px;min-width:240px;transition:border-color .15s}.search-mini:focus-within{border-color:var(--gold)}.search-mini input{background:none;border:none;color:var(--paper);outline:none;width:100%;font-size:14px}.search-mini input::placeholder{color:var(--muted)}.btn{border:1px solid var(--line);background:var(--ink-2);color:var(--paper);padding:10px 18px;border-radius:10px;font-weight:500;font-size:14px;letter-spacing:.2px;transition:transform .12s,border-color .15s,background .15s,color .15s}.btn:hover{transform:translateY(-1px);border-color:var(--gold);color:var(--paper)}.btn-accent{background:var(--shu);border-color:var(--shu);color:#fff;font-weight:700;box-shadow:0 10px 24px -12px var(--shu-deep)}.btn-accent:hover{background:var(--shu-deep);border-color:var(--shu-deep)}.btn-ghost{background:transparent}.btn-block{width:100%;justify-content:center}.btn:disabled{opacity:.5;cursor:default;transform:none}.hero{position:relative;border-radius:20px;overflow:hidden;margin:32px 0 46px;min-height:380px;border:1px solid var(--line);box-shadow:var(--shadow)}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center 25%;filter:saturate(1.05) contrast(1.02)}.hero-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(95deg,#0e0c11f7,#0e0c11cc 42%,#0e0c1126),linear-gradient(0deg,rgba(14,12,17,.7) 0%,transparent 40%)}.hero:after{content:"鏡";position:absolute;right:3%;top:50%;transform:translateY(-50%);font-family:var(--mincho);font-weight:800;font-size:340px;line-height:1;color:#ff4d3b12;pointer-events:none;-webkit-user-select:none;user-select:none}.hero-body{position:relative;z-index:2;padding:52px;max-width:580px}.hero-eyebrow{color:var(--gold);font-weight:700;letter-spacing:3px;font-size:12px;text-transform:uppercase;padding-left:14px;position:relative}.hero-eyebrow:before{content:"最新";margin-right:10px;color:var(--shu);letter-spacing:1px}.hero-eyebrow:after{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:16px;background:var(--shu)}.hero h1{font-family:var(--mincho);font-weight:800;font-size:46px;line-height:1.08;margin:16px 0;letter-spacing:-.5px}.hero p{color:var(--paper);opacity:.82;line-height:1.7;margin:0 0 26px;max-width:480px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.section-head{display:flex;align-items:center;gap:16px;margin:10px 0 22px}.section-head h2{font-family:var(--mincho);font-weight:700;font-size:26px;margin:0;letter-spacing:.3px;position:relative;padding-left:16px}.section-head h2:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:22px;background:var(--shu);border-radius:2px}.section-head .eyebrow{color:var(--muted);font-size:13px;letter-spacing:.3px}.section-head .eyebrow:before{content:"· ";color:var(--gold)}.section-head:after{content:"";flex:1;height:1px;background:var(--line)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(176px,1fr));gap:22px}.card{display:block}.card-poster{position:relative;aspect-ratio:2 / 3;border-radius:var(--radius);overflow:hidden;background:var(--ink-3);border:1px solid var(--line);transition:transform .2s,box-shadow .2s,border-color .2s}.card-poster img{width:100%;height:100%;object-fit:cover}.card-poster:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;opacity:0;background:linear-gradient(160deg,rgba(255,255,255,.16) 0%,transparent 42%);transition:opacity .2s}.card:hover .card-poster{transform:translateY(-5px);border-color:var(--shu);box-shadow:0 22px 42px -20px #ff4d3b8c}.card:hover .card-poster:before{opacity:1}.card-year{position:absolute;top:9px;left:9px;z-index:2;background:#0e0c11d1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--gold);border:1px solid rgba(211,166,60,.35);font-size:12px;font-weight:700;padding:3px 9px;border-radius:7px}.card-title{margin:12px 2px 0;font-weight:700;font-size:15px;line-height:1.32;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-sub{margin:3px 2px 0;color:var(--muted);font-size:13px;font-style:italic;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.title-head{display:grid;grid-template-columns:270px 1fr;gap:36px;margin:32px 0}.title-poster{border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow)}.title-meta h1{font-family:var(--mincho);font-weight:800;font-size:36px;margin:0 0 4px;letter-spacing:-.3px}.title-meta .en{color:var(--muted);font-style:italic;margin:0 0 18px}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.chip{background:var(--ink-2);border:1px solid var(--line);color:var(--muted);padding:5px 13px;border-radius:999px;font-size:13px}.title-desc{color:var(--paper);opacity:.8;line-height:1.75;margin:18px 0}.title-actions{display:flex;gap:12px;margin-top:10px}.player-wrap{margin:10px 0 26px}.player-shell{border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);background:#000;box-shadow:var(--shadow)}.player-shell video{width:100%;display:block;aspect-ratio:16 / 9;background:#000}.episodes{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.ep-btn{border:1px solid var(--line);background:var(--ink-2);color:var(--muted);padding:8px 15px;border-radius:9px;font-weight:700;font-size:14px;transition:all .12s}.ep-btn:hover{color:var(--paper);border-color:var(--gold)}.ep-btn.active{background:var(--shu);border-color:var(--shu);color:#fff}.comments{margin:46px 0}.comment-form textarea{width:100%;min-height:96px;resize:vertical;padding:15px;background:var(--ink-2);border:1px solid var(--line);border-radius:var(--radius);color:var(--paper);font-family:inherit;font-size:15px;outline:none}.comment-form textarea:focus{border-color:var(--shu)}.comment{display:flex;gap:14px;padding:20px 0;border-bottom:1px solid var(--line)}.avatar{width:44px;height:44px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--shu),var(--gold));display:grid;place-items:center;font-weight:700;color:#1a0a08;font-family:var(--mincho)}.comment-body .meta{display:flex;gap:10px;align-items:baseline;margin-bottom:5px}.comment-body .who{font-weight:700}.comment-body .when{color:var(--muted);font-size:12px}.comment-body p{margin:0;line-height:1.65;white-space:pre-wrap}.auth-wrap{max-width:420px;margin:64px auto;position:relative;z-index:2}.auth-card{background:var(--ink-2);border:1px solid var(--line);border-radius:18px;padding:36px;box-shadow:var(--shadow)}.auth-card h1{font-family:var(--mincho);font-weight:800;font-size:28px;margin:0 0 6px}.auth-card .sub{color:var(--muted);margin:0 0 26px;font-size:14px}.field{margin-bottom:15px}.field label{display:block;font-size:13px;color:var(--muted);margin-bottom:6px}.field input{width:100%;padding:12px 15px;background:var(--ink);border:1px solid var(--line);border-radius:10px;color:var(--paper);font-size:15px;outline:none}.field input:focus{border-color:var(--shu)}.auth-alt{text-align:center;margin-top:20px;color:var(--muted);font-size:14px}.auth-alt a{color:var(--shu);font-weight:700}.site-footer{margin-top:80px;border-top:1px solid var(--line);background:#0e0c1199;position:relative;z-index:2}.site-footer .container{padding-top:40px;padding-bottom:48px}.footer-top{display:flex;justify-content:space-between;gap:32px;flex-wrap:wrap}.footer-brand{font-family:var(--mincho);font-weight:800;font-size:22px}.footer-brand:before{content:"鏡 ";color:var(--shu)}.footer-tagline{color:var(--muted);font-size:14px;margin-top:8px;max-width:320px;line-height:1.6}.footer-cols{display:flex;gap:56px}.footer-col h4{font-size:13px;text-transform:uppercase;letter-spacing:1px;color:var(--gold);margin:0 0 12px;font-weight:700}.footer-col a{display:block;color:var(--muted);font-size:14px;margin-bottom:8px;transition:color .15s}.footer-col a:hover{color:var(--paper)}.footer-bottom{margin-top:36px;padding-top:22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;color:var(--muted);font-size:13px}.error-banner{background:#ff4d3b1f;border:1px solid var(--shu);color:#ffb7ae;padding:12px 16px;border-radius:10px;margin-bottom:16px;font-size:14px}.empty{text-align:center;color:var(--muted);padding:64px 20px}.spinner{width:34px;height:34px;border:3px solid var(--line);border-top-color:var(--shu);border-radius:50%;animation:spin .8s linear infinite;margin:64px auto}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(90deg,var(--ink-3),var(--ink-2),var(--ink-3));background-size:200% 100%;animation:shine 1.3s linear infinite;border-radius:var(--radius)}@keyframes shine{to{background-position:-200% 0}}@media (max-width: 760px){.title-head{grid-template-columns:1fr}.title-poster{max-width:210px}.hero h1{font-size:32px}.hero:after{font-size:200px}.nav-links{display:none}.footer-top{flex-direction:column}.footer-cols{gap:40px}}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}.card-badge{position:absolute;z-index:3;font-size:11px;font-weight:700;letter-spacing:.2px;padding:3px 8px;border-radius:7px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.card-badge-year{top:9px;left:9px;background:#0e0c11d1;color:var(--gold);border:1px solid rgba(211,166,60,.35)}.card-badge-ep{top:9px;right:9px;background:#0e0c11d1;color:var(--muted);border:1px solid var(--line)}.card-badge-airing{top:9px;right:9px;background:#0e0c11d9;color:#6ee7b7;border:1px solid rgba(110,231,183,.3);font-size:10px}.card-badge-custom{top:9px;right:9px;background:#0e0c11d9;color:var(--shu);border:1px solid rgba(255,77,59,.35)}.card-overlay{position:absolute;bottom:0;left:0;right:0;z-index:2;background:linear-gradient(0deg,rgba(10,8,14,.97) 0%,rgba(10,8,14,.7) 55%,transparent 100%);padding:52px 12px 12px;transition:padding .2s}.card:hover .card-overlay{padding-bottom:14px}.card-overlay-genre{display:block;font-size:10px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:var(--gold);margin-bottom:5px;opacity:.8}.card-overlay-title{font-weight:700;font-size:13px;line-height:1.35;color:var(--paper);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-poster img{transition:transform .3s ease}.card:hover .card-poster img{transform:scale(1.05)}.row-scroll{display:flex;gap:16px;overflow-x:auto;padding-bottom:12px;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--line) transparent;margin-bottom:40px}.row-scroll::-webkit-scrollbar{height:4px}.row-scroll::-webkit-scrollbar-track{background:transparent}.row-scroll::-webkit-scrollbar-thumb{background:var(--line);border-radius:4px}.row-scroll .card{flex-shrink:0;width:154px;scroll-snap-align:start}.card-progress{position:absolute;bottom:0;left:0;right:0;z-index:5;height:3px;background:#ffffff1f}.card-progress-fill{height:100%;background:var(--shu);border-radius:2px;transition:width .3s}.title-backdrop-wrap{position:relative}.title-backdrop{position:absolute;top:0;left:50%;transform:translate(-50%);width:100vw;height:520px;overflow:hidden;pointer-events:none;z-index:0}.title-backdrop img{width:100%;height:100%;object-fit:cover;object-position:top;filter:blur(80px) saturate(.6);transform:scale(1.15);opacity:.22}.title-backdrop:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,rgba(14,12,17,.08) 0%,rgba(14,12,17,.55) 60%,var(--ink) 100%)}.title-head{position:relative;z-index:1}.hero{min-height:440px}.hero-genres{display:flex;gap:7px;margin-bottom:20px;flex-wrap:wrap}.hero-genres .chip{font-size:12px;padding:4px 11px;background:#ffffff14;border-color:#ffffff26;color:#efe9ddbf}.hero-meta{color:var(--muted);font-size:13px;margin-bottom:14px;letter-spacing:.3px}
