:root{color-scheme:dark;--bg:#080a10;--panel:#121620;--line:#2b3241;--text:#f4f4f7;--muted:#a6abb9;--cyan:#6bd7d2;--blue:#4ab9e8;--purple:#a86aeb;--gold:#f2cf79}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 8% 16%,rgba(31,99,136,.2),transparent 31%),radial-gradient(ellipse at 92% 20%,rgba(119,70,157,.18),transparent 32%),#080a10;color:var(--text);font:14px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.app{max-width:1280px;margin:auto;min-height:100vh;padding:0 20px 84px;background:rgba(8,10,16,.86)}.topbar{min-height:66px;display:flex;align-items:center;gap:18px;border-bottom:1px solid #ffffff16;position:sticky;top:0;z-index:10;background:rgba(8,10,16,.96);backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:9px;white-space:nowrap;font-weight:900;letter-spacing:.03em;font-size:16px}.brand-mark{width:29px;height:29px;border-radius:50% 50% 50% 8px;display:grid;place-items:center;background:linear-gradient(145deg,#45c4ef,#8651d5);box-shadow:0 0 19px #3287a566}.brand-mark:after{content:"▶";font-size:10px;margin-left:2px}.main-nav{display:flex;align-items:center;gap:15px;overflow:auto;white-space:nowrap;font-size:12px;color:#d2d4dc}.main-nav a{padding:8px 0}.main-nav a:hover,.main-nav a.active{color:#86d8ef}.page-main{padding-top:22px}.page-title{display:flex;justify-content:space-between;align-items:end;gap:16px;margin:0 0 16px}.page-title h1{font-size:26px;line-height:1.1;margin:0}.page-title p{margin:5px 0 0;color:var(--muted);font-size:12px}.hint{color:#a5c8d7;font-size:10px}.toolbar{display:flex;gap:10px;align-items:center;margin:12px 0 16px}.query{flex:1;min-width:0;border:1px solid #343a49;border-radius:11px;padding:11px 13px;background:#151923;color:white;outline:none}.query:focus{border-color:#57bed8;box-shadow:0 0 0 2px #57bed822}.action{border:1px solid #367b8c;border-radius:9px;padding:10px 14px;background:linear-gradient(100deg,#2aa9d4,#6e69dd);color:#fff;font-size:12px;font-weight:800;cursor:pointer}.filters{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.filter{border:1px solid #343b4a;border-radius:18px;padding:6px 12px;background:#131721;color:#c9ced7;font-size:10px;cursor:pointer}.filter.active,.filter:hover{border-color:#4dc2df;background:#153140;color:#dff8ff}.grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.title-card{min-width:0;overflow:hidden;border:1px solid #282e3a;border-radius:10px;background:linear-gradient(150deg,#171b26,#11141d);transition:transform .18s,border-color .18s}.title-card:hover{transform:translateY(-3px);border-color:#577e9a}.cover{display:block;position:relative;aspect-ratio:2/2.85;background:linear-gradient(140deg,#34465a,#755083 55%,#b4866c);overflow:hidden}.cover img{width:100%;height:100%;object-fit:cover;display:block}.cover-tag{position:absolute;top:8px;left:8px;border-radius:5px;padding:3px 6px;background:#0b0e16df;font-size:8px;font-weight:850;color:#b9edf2}.title-info{padding:8px 9px 10px}.title-info h2{font-size:11px;line-height:1.35;margin:0 0 5px;min-height:28px}.title-meta{font-size:9px;color:#a9adba;min-height:13px}.title-actions{display:flex;justify-content:space-between;align-items:center;margin-top:7px;gap:4px}.title-actions a{font-size:9px;color:#8cdbef}.score{font-size:9px;color:var(--gold);white-space:nowrap}.score small{font-size:8px;color:#969baa}.heart{border:0;background:none;color:#d7d6df;font-size:18px;line-height:1;cursor:pointer;padding:0 3px}.heart.on{color:#ff83a9}.status{color:#afb4c1;font-size:12px;min-height:22px;margin:8px 0}.load-more{display:block;margin:18px auto 0;border:1px solid #36748a;border-radius:8px;background:#11222b;color:#d6f6ff;padding:10px 17px;font-size:11px;font-weight:800;cursor:pointer}.load-more:disabled{opacity:.5;cursor:wait}.empty{color:#aeb1bd;font-size:12px;padding:20px 8px;grid-column:1/-1;border:1px dashed #343a49;border-radius:10px}.detail-hero{display:grid;grid-template-columns:minmax(150px,240px) 1fr;gap:22px;align-items:start;padding:18px;border:1px solid var(--line);border-radius:14px;background:#11141de8}.detail-cover{width:100%;border-radius:9px}.detail-copy h1{margin:0 0 8px;font-size:26px}.detail-copy p{color:#b8bdca;font-size:12px}.season-list{display:grid;gap:11px;margin-top:20px}.season{border:1px solid #343b4a;border-radius:11px;background:#11151e;overflow:hidden}.season summary{cursor:pointer;list-style:none;padding:13px 15px;font-weight:800}.season summary::-webkit-details-marker{display:none}.season summary:after{content:"＋";float:right;color:var(--cyan)}.season[open] summary:after{content:"−"}.season small{display:block;color:#aeb4c0;font-weight:400;margin-top:3px}.episode-list{margin:0;padding:0 18px 15px 42px;display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:6px 12px;color:#d4d6df;font-size:11px}.episode-list li{padding:5px 0;border-bottom:1px solid #252b37}.season-links{padding:0 15px 13px;color:var(--muted);font-size:11px}.season-links a{color:#8eddf1}.season-links strong{color:var(--text)}.note{border:1px solid #3b3447;border-radius:9px;background:#17131d;color:#c6bfd2;padding:12px;font-size:11px;margin-top:14px}.guest-note{padding:10px 12px;border:1px solid #3b3447;border-radius:9px;background:#17131d;color:#c6bfd2;font-size:11px;margin:12px 0}.bottom-nav{display:none}.footer{margin-top:26px;padding-top:14px;border-top:1px solid #272b36;color:#9095a2;font-size:10px}.footer a{color:#8eddf1}@media(max-width:1000px){.grid{grid-template-columns:repeat(5,minmax(0,1fr))}.topbar{flex-wrap:wrap;padding:8px 0;gap:8px}.main-nav{width:100%;order:3}}@media(max-width:680px){.app{padding:0 12px 86px}.page-main{padding-top:17px}.page-title h1{font-size:22px}.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.title-info{padding:7px}.title-info h2{font-size:10px}.topbar{position:static}.main-nav{display:none}.bottom-nav{position:fixed;display:grid;grid-template-columns:repeat(6,1fr);left:0;right:0;bottom:0;z-index:20;padding:8px 4px calc(8px + env(safe-area-inset-bottom));background:rgba(9,12,19,.97);border-top:1px solid #333b49;backdrop-filter:blur(14px)}.bottom-nav a{display:flex;flex-direction:column;align-items:center;gap:3px;color:#aeb6c5;font-size:9px}.bottom-nav a.active{color:#7ee1ef}.bottom-nav b{font-size:17px;font-weight:600}.toolbar{gap:7px}.detail-hero{grid-template-columns:100px 1fr;gap:12px;padding:12px}.detail-copy h1{font-size:20px}.episode-list{grid-template-columns:repeat(2,minmax(0,1fr));padding-left:34px}}

.relation-list{display:grid;gap:10px;margin-top:12px}.relation-group{padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:#11151e}.relation-group>strong{display:block;color:var(--cyan);font-size:11px;margin-bottom:7px}.relation-group>div{display:flex;gap:8px;flex-wrap:wrap}.relation-link{display:inline-block;border:1px solid #343b4a;border-radius:7px;padding:6px 8px;color:#8eddf1;font-size:10px}.episode-subtitle{display:block;color:var(--muted);font-size:10px}.detail-section{margin-top:18px}.detail-section .section-head h2{font-size:17px;margin:0}.detail-section .section-head p{font-size:11px;color:var(--muted)}

[hidden]{display:none!important}
.release-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:9px;margin:12px 0}.release-info-card{min-width:0;padding:10px 12px;border:1px solid #343b4a;border-radius:9px;background:#131721}.release-info-card span{display:block;color:#aeb4c0;font-size:10px;margin-bottom:4px}.release-info-card strong{font-size:12px;overflow-wrap:anywhere}.release-subheading{font-size:13px;margin:14px 0 8px}.release-episodes{display:grid;gap:7px}.release-episode{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 11px;border:1px solid #343b4a;border-radius:8px;background:#11151e}.release-episode strong{font-size:11px}.release-episode small{color:#aeb4c0;font-size:10px;text-align:right}@media(max-width:680px){.release-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.release-episode{align-items:flex-start;flex-direction:column;gap:3px}.release-episode small{text-align:left}}

/* Internal season/episode browser */
.season summary{touch-action:manipulation}.season .status{margin:0 16px 12px;padding:8px;border-radius:6px;background:#0d121b;font-size:10px}.season summary small{font-size:10px}.detail-section .section-head{margin-bottom:10px}.season[open]{border-color:#42879a}
.schedule-days{display:grid;gap:14px;margin-top:12px}.schedule-day{padding:12px;border:1px solid var(--line);border-radius:11px;background:#10141d}.schedule-day>h3{margin:0 0 9px;font-size:14px;color:#dff8ff}.schedule-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:8px}.schedule-entry{padding:10px;border:1px solid #343b4a;border-radius:8px;background:#131721}.schedule-time{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.schedule-time time{font-size:14px;font-weight:900;color:var(--cyan)}.schedule-time span{font-size:9px;color:var(--muted)}.schedule-entry h4{font-size:11px;line-height:1.35;margin:6px 0}.schedule-entry p{font-size:10px;color:#b6bbc6;margin:3px 0}.schedule-entry a{display:inline-block;margin-top:6px;color:#8eddf1;font-size:10px}.schedule-entry a:hover{text-decoration:underline}.schedule-categories{display:grid;gap:22px;margin-top:14px}.schedule-categories h3{margin:0;font-size:16px;color:#dff8ff}.schedule-categories .section-head{margin:0 0 8px}.schedule-categories .status{margin-top:8px} 
