:root{color-scheme:dark;--bg: #000;--bg2: #121214;--card: #1c1c1e;--card2: #2c2c2e;--line: #2a2a2d;--text: #f2f2f7;--dim: #8e8e93;--dim2: #636366;--accent: #b150e2;--accent2: #d17aff;--ok: #34c759;--danger: #ff453a;--tab-h: 56px;--mini-h: 64px;--sat: env(safe-area-inset-top, 0px);--sab: env(safe-area-inset-bottom, 0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;background:var(--bg);color:var(--text);font:16px/1.4 -apple-system,SF Pro Text,Hiragino Sans,Noto Sans JP,system-ui,sans-serif}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}input,select{font:inherit}img{display:block}svg{display:block}.screen{padding:calc(var(--sat) + 8px) 16px calc(var(--tab-h) + var(--mini-h) + var(--sab) + 24px);min-height:100vh}.screen.no-mini{padding-bottom:calc(var(--tab-h) + var(--sab) + 24px)}.title{font-size:32px;font-weight:700;letter-spacing:-.4px;margin:8px 0 14px}.h{font-size:20px;font-weight:700;margin:22px 0 10px;display:flex;justify-content:space-between;align-items:baseline}.h small{font-size:14px;color:var(--accent2);font-weight:500}.navrow{display:flex;align-items:center;height:44px;margin:0 -4px 4px}.navrow .back{display:flex;align-items:center;gap:2px;color:var(--accent2);font-size:17px;padding:8px 4px}.empty{color:var(--dim);text-align:center;padding:48px 20px;font-size:15px}.err{color:var(--danger);background:#ff453a1f;padding:10px 14px;border-radius:12px;font-size:14px;margin:0 0 12px}.note{color:var(--dim);font-size:13px;margin:6px 0 12px}.loading{color:var(--dim);font-size:14px;padding:24px;text-align:center}.tabbar{position:fixed;left:0;right:0;bottom:0;height:calc(var(--tab-h) + var(--sab));padding-bottom:var(--sab);background:#121214eb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--line);display:flex;z-index:20}.tabbar button{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:10px;color:var(--dim)}.tabbar button.on{color:var(--accent2)}.tabbar svg{width:26px;height:26px}.mini{position:fixed;left:8px;right:8px;bottom:calc(var(--tab-h) + var(--sab) + 8px);height:var(--mini-h);background:#2c2c2ef5;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:14px;display:flex;align-items:center;gap:12px;padding:8px 10px;z-index:21;box-shadow:0 6px 24px #00000080}.mini img,.mini .ph{width:48px;height:48px;border-radius:8px;flex:none;background:var(--card2)}.mini .t{flex:1;min-width:0}.mini .t b{display:block;font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini .t span{font-size:12px;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.mini .ctl{display:flex;gap:6px}.mini .ctl button{width:40px;height:40px;display:grid;place-items:center}.mini .ctl svg{width:26px;height:26px}.mini .bar{position:absolute;left:10px;right:10px;bottom:0;height:2px;background:var(--dim2);border-radius:2px;overflow:hidden}.mini .bar i{display:block;height:100%;background:var(--accent2);width:0}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.grid .cell{display:block;cursor:pointer}.grid img,.grid .ph{width:100%;aspect-ratio:1;border-radius:10px;background:var(--card2);object-fit:cover;box-shadow:0 2px 10px #0006}.eps{list-style:none;margin:0;padding:0}.ep{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);align-items:flex-start}.ep img,.ep .ph{width:56px;height:56px;border-radius:8px;flex:none;background:var(--card2);object-fit:cover}.ep .body{flex:1;min-width:0}.ep .date{font-size:12px;color:var(--dim);margin-bottom:2px}.ep .name{font-size:15px;font-weight:600;line-height:1.3;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.ep .show{font-size:13px;color:var(--dim);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ep .foot{display:flex;align-items:center;gap:10px;margin-top:8px}.ep .play{display:flex;align-items:center;gap:6px;background:var(--card2);border-radius:20px;padding:6px 12px 6px 8px;font-size:13px;font-weight:600}.ep .play svg{width:18px;height:18px}.ep .play.now{background:var(--accent)}.ep .prog{flex:1;height:3px;background:var(--card2);border-radius:2px;overflow:hidden}.ep .prog i{display:block;height:100%;background:var(--accent2)}.ep .badge{font-size:11px;color:var(--ok);font-weight:600}.ep.done .name,.ep.done .date{color:var(--dim2)}.ep .chk{color:var(--dim2);font-size:12px}.showhd{display:flex;gap:16px;align-items:flex-start;margin-bottom:8px}.showhd img,.showhd .ph{width:132px;height:132px;border-radius:14px;flex:none;background:var(--card2);box-shadow:0 6px 20px #00000080}.showhd .meta{flex:1;min-width:0;padding-top:4px}.showhd h1{font-size:20px;font-weight:700;margin:0 0 4px;line-height:1.25}.showhd .by{color:var(--dim);font-size:14px}.showhd .sub{margin-top:12px;display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:20px;font-size:14px;font-weight:600;background:var(--accent);color:#fff}.showhd .sub.on{background:var(--card2);color:var(--text)}.showhd .cap{display:block;margin-top:8px;font-size:12px;color:var(--ok)}.ephd{display:flex;gap:14px;align-items:center;margin-bottom:16px}.ephd img,.ephd .ph{width:92px;height:92px;border-radius:12px;flex:none;background:var(--card2)}.ephd .meta{flex:1;min-width:0}.ephd .date{font-size:12px;color:var(--dim)}.ephd h1{font-size:18px;font-weight:700;margin:2px 0 4px;line-height:1.3}.ephd .show{font-size:14px;color:var(--accent2)}.bigplay{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;height:50px;border-radius:14px;background:var(--accent);color:#fff;font-size:16px;font-weight:700;margin-bottom:18px}.bigplay svg{width:22px;height:22px}.notes{white-space:pre-wrap;word-break:break-word;color:#d1d1d6;font-size:15px;line-height:1.6}.search{position:sticky;top:0;padding:4px 0 10px;background:var(--bg);z-index:5}.search input{width:100%;height:40px;border-radius:12px;border:0;background:var(--card);color:var(--text);padding:0 14px 0 38px;font-size:16px;outline:none}.search svg{position:absolute;left:12px;top:12px;width:18px;height:18px;color:var(--dim)}.rows{list-style:none;margin:0;padding:0}.row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.row img,.row .ph{width:60px;height:60px;border-radius:10px;flex:none;background:var(--card2);object-fit:cover}.row .t{flex:1;min-width:0}.row .t b{display:block;font-size:15px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row .t span{font-size:13px;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.row .add{width:34px;height:34px;border-radius:50%;background:var(--card2);display:grid;place-items:center;color:var(--accent2);font-size:22px;font-weight:300}.row .add.on{background:var(--accent);color:#fff;font-size:16px}.group{background:var(--card);border-radius:14px;margin-bottom:18px;overflow:hidden}.group .gh{font-size:12px;color:var(--dim);text-transform:uppercase;letter-spacing:.4px;padding:12px 16px 6px}.cell{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:8px 16px;border-top:1px solid var(--line)}.cell:first-child,.gh+.cell{border-top:0}.cell label{font-size:15px}.cell input[type=password],.cell input[type=text]{flex:1;text-align:right;background:none;border:0;color:var(--text);outline:none;min-width:0;font-size:15px}.cell select{background:none;border:0;color:var(--accent2);text-align:right;outline:none;font-size:15px;max-width:60%;direction:rtl}.seg{display:inline-flex;background:var(--card2);border-radius:9px;padding:2px}.seg button{padding:5px 12px;border-radius:7px;font-size:13px;color:var(--dim)}.seg button.on{background:#48484a;color:var(--text);font-weight:600}.cell.act{color:var(--accent2);justify-content:flex-start}.cell.act.danger{color:var(--danger)}.gfoot{font-size:12px;color:var(--dim);padding:0 16px 10px}.sheet{position:fixed;inset:0;z-index:40;background:linear-gradient(180deg,#2a1a33,#0e0b12,#000);transform:translateY(100%);transition:transform .32s cubic-bezier(.32,.72,0,1);overflow-y:auto;-webkit-overflow-scrolling:touch}.sheet.open{transform:translateY(0)}.sheet .in{padding:calc(var(--sat) + 8px) 24px calc(var(--sab) + 32px);max-width:520px;margin:0 auto}.sheet .handle{width:36px;height:5px;background:#ffffff59;border-radius:3px;margin:4px auto 18px}.sheet .art{width:min(72vw,320px);aspect-ratio:1;margin:0 auto 26px;border-radius:16px;background:var(--card2);box-shadow:0 16px 48px #0009;object-fit:cover;transition:transform .3s}.sheet .art.paused{transform:scale(.88)}.sheet .ttl{font-size:18px;font-weight:700;line-height:1.3;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.sheet .shw{color:var(--accent2);font-size:15px;margin-top:3px}.scrub{width:100%;margin:22px 0 0;height:28px;appearance:none;-webkit-appearance:none;background:transparent}.scrub::-webkit-slider-runnable-track{height:4px;border-radius:2px;background:linear-gradient(90deg,#e5e5ea var(--p, 0%),rgba(255,255,255,.25) var(--p, 0%))}.scrub::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:#fff;margin-top:-5px}.times{display:flex;justify-content:space-between;font-size:12px;color:#ffffff8c;margin-top:2px;font-variant-numeric:tabular-nums}.ctls{display:flex;align-items:center;justify-content:center;gap:34px;margin:18px 0 8px}.ctls .sk{width:52px;height:52px;display:grid;place-items:center;color:#fff;position:relative}.ctls .sk svg{width:40px;height:40px}.ctls .sk small{position:absolute;font-size:10px;font-weight:700;top:19px}.ctls .pp{width:78px;height:78px;border-radius:50%;background:#fff;color:#000;display:grid;place-items:center}.ctls .pp svg{width:40px;height:40px}.sub{display:flex;justify-content:space-between;align-items:center;margin:10px 0 0}.sub .rate{font-size:14px;font-weight:700;color:#fffc;padding:6px 10px;border-radius:8px;background:#ffffff1a}.sub .sleep{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#ffffff8c;padding:6px 10px;border-radius:8px}.sub .sleep.on{color:#fff;background:#ffffff1a}.cap{margin-top:26px;background:#ffffff12;border-radius:16px;padding:16px}.cap .st{font-size:12px;color:#ffffff8c;display:flex;justify-content:space-between;align-items:center}.cap .st button{color:var(--accent2);font-weight:600;font-size:13px}.cap .st .hint{font-size:11px;color:#ffffff59}.cap .dimtext{color:#ffffff80}.cap .en{font-size:16px;line-height:1.5;margin:10px 0 8px}.cap .ja{font-size:16px;line-height:1.6;color:#e9d4ff;margin:0}.cap .nav{display:flex;justify-content:space-between;margin-top:12px}.cap .nav button{font-size:13px;color:#ffffffb3;padding:6px 0}.cap .prep{width:100%;height:44px;border-radius:12px;background:#ffffff24;font-weight:600;margin-top:10px}.sheet .close{position:absolute;right:16px;top:calc(var(--sat) + 10px);width:34px;height:34px;border-radius:50%;background:#ffffff1f;display:grid;place-items:center}.sw{width:51px;height:31px;border-radius:16px;background:#39393d;position:relative;transition:background .2s;flex:none}.sw i{position:absolute;top:2px;left:2px;width:27px;height:27px;border-radius:50%;background:#fff;box-shadow:0 2px 6px #0006;transition:left .2s}.sw.on{background:var(--ok)}.sw.on i{left:22px}.h .seg{font-size:12px}.lyrics{position:fixed;inset:0;z-index:50;background:linear-gradient(180deg,#3a2447,#1a1224 40%,#0a0810);display:flex;flex-direction:column;transform:translateY(100%);transition:transform .32s cubic-bezier(.32,.72,0,1)}.lyrics.open{transform:translateY(0)}.lhd{display:flex;align-items:center;gap:12px;padding:calc(var(--sat) + 12px) 20px 10px}.lhd .lt{flex:1;min-width:0}.lhd .lt b{display:block;font-size:15px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lhd .lt span{font-size:13px;color:var(--accent2)}.lhd .lt em{display:block;font-style:normal;font-size:11px;color:#ffffff80;margin-top:2px;min-height:1em}.lhd .close{width:34px;height:34px;border-radius:50%;background:#ffffff1f;display:grid;place-items:center;flex:none}.lscroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:30vh 24px 40vh;mask-image:linear-gradient(180deg,transparent 0,#000 12%,#000 80%,transparent 100%);-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 12%,#000 80%,transparent 100%)}.line{padding:12px 0;opacity:.35;transition:opacity .3s,transform .3s;transform-origin:left center;cursor:pointer}.line .en{margin:0;font-size:22px;font-weight:700;line-height:1.35;letter-spacing:-.2px}.line .ja{margin:5px 0 0;font-size:14px;font-weight:400;line-height:1.5;color:#e9d4ffd9;min-height:1em}.line.cur .ja{color:#e9d4ff}.line.past{opacity:.5}.line.cur{opacity:1;transform:scale(1.02)}.lctl{display:flex;align-items:center;justify-content:center;gap:22px;padding:10px 20px calc(var(--sab) + 18px);background:#00000040;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.lctl button{width:44px;height:44px;display:grid;place-items:center;color:#fff}.lctl button svg{width:30px;height:30px}.lctl .pp{width:56px;height:56px;border-radius:50%;background:#fff;color:#000}.lctl .pp svg{width:28px;height:28px}.lctl .lt1,.lctl .lt2{font-size:12px;color:#fff9;width:48px;font-variant-numeric:tabular-nums}.lctl .lt2{text-align:right}.carousel{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 16px 12px;margin:0 -16px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.carousel::-webkit-scrollbar{display:none}.card{flex:0 0 156px;scroll-snap-align:start;cursor:pointer}.cart{position:relative}.cart img,.cart .ph{width:156px;height:156px;border-radius:12px;background:var(--card2);object-fit:cover;box-shadow:0 4px 14px #00000073}.cplay{position:absolute;right:8px;bottom:8px;width:38px;height:38px;border-radius:50%;background:#0009;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:grid;place-items:center;color:#fff}.cplay svg{width:22px;height:22px}.cplay.now{background:var(--accent)}.cshow{font-size:11px;color:var(--accent2);font-weight:600;margin-top:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ctitle{font-size:13px;font-weight:600;line-height:1.3;margin-top:2px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.cmeta{font-size:11px;color:var(--dim);margin-top:3px}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#0a84ff;margin-right:6px;vertical-align:1px}.navrow .sp{flex:1}.navrow .icon{width:36px;height:36px;display:grid;place-items:center;color:var(--accent2)}.showdesc{color:#d1d1d6;font-size:14px;line-height:1.55;margin:10px 0 6px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;white-space:pre-wrap;cursor:pointer}.showdesc.open{display:block;-webkit-line-clamp:unset}.extlink{display:inline-block;font-size:13px;color:var(--accent2);text-decoration:none;margin-bottom:4px}.eprow{display:flex;gap:18px;margin:-6px 0 16px}.eprow .link{font-size:14px;color:var(--accent2)}.eprow .link.danger{color:var(--danger)}.row .rt{flex:1;min-width:0;display:flex;gap:12px;align-items:center;cursor:pointer}.cap .en .w,.line.cur .en .w{color:#ffffff73;transition:color .15s}.cap .en .w.done,.line.cur .en .w.done,.cap .en .w.on,.line.cur .en .w.on{color:#fff}.ep .foot .sp{flex:1}.ep .dls{width:22px;display:grid;place-items:center}.dlok{font-style:normal;color:var(--ok);font-size:13px;font-weight:700}.ring{width:16px;height:16px;border-radius:50%;background:conic-gradient(var(--accent2) var(--p, 0%),var(--card2) 0);position:relative}.ring:after{content:"";position:absolute;inset:4px;border-radius:50%;background:var(--bg)}.ep .more{width:32px;height:32px;border-radius:50%;color:var(--dim);font-size:18px;display:grid;place-items:center}.ep .more:active{background:var(--card2)}.scrim{position:fixed;inset:0;background:#0000008c;z-index:60}.asheet{position:fixed;left:8px;right:8px;bottom:calc(var(--sab) + 8px);z-index:61;background:var(--card);border-radius:16px;overflow:hidden}.asheet .ahd{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line)}.asheet .ahd img,.asheet .ahd .ph{width:44px;height:44px;border-radius:8px;background:var(--card2)}.asheet .ahd .t{min-width:0}.asheet .ahd b{display:block;font-size:14px;font-weight:600;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.asheet .ahd span{font-size:12px;color:var(--dim)}.asheet>button{display:block;width:100%;text-align:left;padding:14px 16px;font-size:16px;border-top:1px solid var(--line)}.asheet>button:active{background:var(--card2)}.asheet>button.cancel{text-align:center;color:var(--accent2);font-weight:600}.queue{margin-top:18px}.qh{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#fff9;margin-bottom:6px}.qh button{color:var(--accent2);font-size:13px}.qrow{display:flex;align-items:center;gap:10px;padding:8px 0;border-top:1px solid rgba(255,255,255,.08);cursor:pointer}.qrow img,.qrow .ph{width:40px;height:40px;border-radius:6px;background:var(--card2)}.qrow .t{flex:1;min-width:0}.qrow .t b{display:block;font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qrow .t span{font-size:12px;color:#ffffff80}.qrow .x{width:30px;height:30px;color:#ffffff80}.shw .off{font-style:normal;font-size:11px;color:var(--ok);margin-left:6px}.cell .val{color:var(--dim);font-size:15px}.entry{display:flex;align-items:center;gap:12px;margin-top:16px;padding:12px 14px;background:var(--card);border-radius:14px;cursor:pointer}.entry svg:first-child{color:var(--accent2)}.entry span{flex:1;font-size:15px;font-weight:600}.entry b{font-size:13px;color:var(--dim);font-weight:500}.entry svg:last-child{transform:rotate(180deg);color:var(--dim2)}.navrow .icon.danger{color:var(--danger)}.dim.small{font-size:12px;color:var(--dim)}.actions{display:flex;justify-content:space-around;margin:-4px 0 18px}.act{display:flex;flex-direction:column;align-items:center;gap:5px;color:var(--dim);font-size:11px;min-width:64px}.act svg,.act .ring.big{width:26px;height:26px}.act.on{color:var(--accent2)}.ring.big:after{inset:6px}.sub .qbtn{position:relative;display:grid;place-items:center;width:40px;height:34px;border-radius:8px;color:#ffffff8c}.sub .qbtn.on{color:#fff;background:#ffffff1a}.sub .qbtn b{position:absolute;top:-4px;right:-2px;font-size:10px;background:var(--accent);color:#fff;border-radius:8px;padding:1px 5px}.qwrap{position:fixed;inset:0;z-index:46;pointer-events:none}.qwrap .qscrim{position:absolute;inset:0;background:#00000073;opacity:0;transition:opacity .25s}.qwrap.open{pointer-events:auto}.qwrap.open .qscrim{opacity:1}.qpanel{position:absolute;left:0;right:0;bottom:0;max-height:70vh;background:#1c1c1e;border-radius:18px 18px 0 0;transform:translateY(110%);transition:transform .3s cubic-bezier(.32,.72,0,1);display:flex;flex-direction:column;box-shadow:0 -8px 30px #00000080}.qwrap.open .qpanel{transform:translateY(0)}.qpanel .qclose{width:34px;height:34px;border-radius:50%;background:#ffffff1f;display:grid;place-items:center}.qpanel .qh{padding:16px 18px 8px;font-size:15px;font-weight:700;color:var(--text);margin:0}.qpanel .qh div{display:flex;align-items:center;gap:12px}.qpanel .qlist{overflow-y:auto;padding:0 18px calc(var(--sab) + 16px)}.qpanel .empty{padding:28px 10px}.qpanel .empty small{color:var(--dim2)}body.lock{overflow:hidden;position:fixed;width:100%;height:100%}.sheet,.lyrics,.qpanel{overscroll-behavior:contain}.sheet .handle{width:36px;height:5px}#toast{position:fixed;left:50%;bottom:calc(var(--tab-h) + var(--mini-h) + var(--sab) + 20px);transform:translate(-50%,12px);background:#3c3c40f5;color:#fff;font-size:14px;font-weight:600;padding:10px 18px;border-radius:20px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:70;white-space:nowrap}#toast.on{opacity:1;transform:translate(-50%)}.cap .st>span:last-child{display:inline-flex;align-items:center;gap:10px}.cap .syncbtn{font-size:12px;color:#ffffff8c;padding:3px 8px;border-radius:8px;background:#ffffff14;font-weight:600}.cap .syncbtn.on{color:#fff;background:#ffffff2e}.cap .offv{color:var(--accent2);font-weight:700}.syncbar{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;margin:10px 0 4px}.syncbar button{font-size:12px;font-weight:600;padding:7px 10px;border-radius:10px;background:#ffffff1f;color:#fff}.syncbar button.rst{background:none;color:#ffffff8c}.syncbar b{min-width:52px;text-align:center;font-variant-numeric:tabular-nums;color:var(--accent2)}.synchint{margin:4px 0 0;font-size:11px;color:#fff6;text-align:center}
