:root{--bg:#f6f5f2;--surface:#fff;--surface-2:#efede8;--text:#17161a;--muted:#6e6c72;--line:#00000012;--accent:#d9480f;--star:#e9a400;--live:#e03131;--seg-bg:#0000000f;--seg-on:#fff;--tile:#fff;--row-hover:#0000000a;--notice-bg:#fff3cd;--notice-text:#6b4e00;--shadow-card:0 1px 2px #00000014, 0 6px 18px #0000000f;--font-display:ui-rounded, "SF Pro Rounded", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0e0e10;--surface:#18181b;--surface-2:#232327;--text:#f3f3f4;--muted:#9c9ca3;--line:#ffffff14;--accent:#ff9f43;--star:#ffd166;--live:#ff5a5f;--seg-bg:#ffffff14;--seg-on:#ffffff2b;--tile:#f4f4f5;--row-hover:#ffffff0d;--notice-bg:#3a3014;--notice-text:#f3d98b;--shadow-card:0 1px 2px #00000080, 0 8px 24px #00000059}}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;margin:0;font:16px/1.35 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif}a{color:inherit}button{font:inherit;color:inherit}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app{z-index:1;max-width:760px;min-height:100dvh;padding-bottom:env(safe-area-inset-bottom);margin:0 auto;position:relative}.muted{color:var(--muted)}.small{font-size:.85rem}.accent{color:var(--accent)}.tabs{align-items:baseline;gap:16px;display:flex}.tabs button{appearance:none;font-family:var(--font-display);letter-spacing:-.03em;color:color-mix(in srgb, var(--muted) 55%, transparent);cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0;font-size:1.95rem;font-weight:800;line-height:1.1;transition:font-size .2s,color .15s}.tabs button[aria-selected=true]{color:var(--text)}.top.stuck .tabs button{font-size:1.3rem}.subtitle{color:var(--muted);font-variant-numeric:tabular-nums;align-items:center;min-height:1.7rem;margin:4px 0 0;font-size:.9rem;font-weight:600;display:flex}.chips{gap:6px;margin-top:6px;display:flex}.chip{background:var(--seg-bg);color:var(--muted);cursor:pointer;white-space:nowrap;border:0;border-radius:999px;padding:5px 12px;font-size:.85rem;font-weight:650}.chip[aria-checked=true]{background:var(--text);color:var(--bg)}.top.stuck .subtitle,.top.stuck .chips{margin-top:2px}.icon-btn{width:36px;height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;padding:0;display:inline-grid}.icon-btn.round{background:var(--seg-bg);color:var(--text);border-radius:50%;flex:none}.icon-btn:disabled{opacity:.3}.icon-btn.star-on{color:var(--star)}.top{z-index:3;padding:calc(env(safe-area-inset-top) + 16px) max(16px, env(safe-area-inset-right)) 10px max(16px, env(safe-area-inset-left));border-bottom:1px solid #0000;transition:background .2s,border-color .2s;position:sticky;top:0}.top.stuck{background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:saturate(1.8)blur(18px);backdrop-filter:saturate(1.8)blur(18px);border-bottom-color:var(--line)}.segmented{background:var(--seg-bg);border-radius:11px;padding:3px;display:inline-flex}.segmented button{appearance:none;color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:8px;padding:6px 12px;font-size:.88rem;font-weight:650;transition:background .15s,color .15s}.segmented button[aria-checked=true]{background:var(--seg-on);color:var(--text);box-shadow:0 1px 3px #00000026}.segmented.views{display:flex}.segmented.views button{flex:1;padding:8px 12px;font-size:.95rem}.segmented.small button{padding:4px 9px;font-size:.8rem}main{padding:0 max(8px, env(safe-area-inset-right)) 0 max(8px, env(safe-area-inset-left))}.section-title{font-family:var(--font-display);letter-spacing:-.015em;margin:22px 8px 6px;font-size:1.25rem;font-weight:750}.list{margin:0;padding:2px 0 0;list-style:none}.row{--row-h:72px;width:100%;height:calc(var(--row-h) + 14px);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:16px;grid-template-columns:128px minmax(0,1fr);align-items:center;gap:12px;padding:7px 8px;transition:background .15s;display:grid}div.row{cursor:default}@media (hover:hover){button.row:hover{background:var(--row-hover)}}button.row:active{background:var(--row-hover)}.logo{background:var(--tile);border-radius:10px;flex:none;place-items:center;width:40px;height:40px;display:grid;position:relative;box-shadow:inset 0 0 0 1px #0000000f}.logo img{object-fit:contain;width:30px;height:30px}.logo-fallback{color:#333;text-align:center;padding:2px;font-size:.55rem;font-weight:700;line-height:1.1;overflow:hidden}.logo-num,.logo-fav{display:none}.badge{z-index:1;background:#fffffff2;border-radius:7px;align-items:center;height:22px;padding:0 5px;display:inline-flex;position:absolute;top:5px;left:5px;box-shadow:0 1px 4px #0000004d}.badge img{object-fit:contain;width:30px;height:17px}.badge-name{color:#17171c;white-space:nowrap;font-size:.6rem;font-weight:700}.thumb{aspect-ratio:16/9;border-radius:12px;place-items:center;width:100%;display:grid;position:relative;overflow:hidden}.row .thumb{box-shadow:inset 0 0 0 1px #ffffff0f}.thumb>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.thumb-progress{background:#00000073;height:4px;position:absolute;bottom:0;left:0;right:0}.thumb-progress>span{background:var(--live);border-radius:0 2px 2px 0;height:100%;display:block}.thumb-lg .thumb-progress{height:5px}.row-text{flex-direction:column;gap:1px;min-width:0;display:flex}.line-1,.line-title,.line-3{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.line-1{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.78rem}.line-1 strong{font-weight:750}.line-title{letter-spacing:-.005em;font-size:1rem;font-weight:680;line-height:1.3}.line-3{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.82rem}.next-time{margin-right:3px;font-weight:650}.empty{color:var(--muted);text-align:center;padding:48px 0}.notice{background:var(--notice-bg);color:var(--notice-text);border-radius:12px;margin:12px 8px 0;padding:8px 12px;font-size:.85rem}.foot{text-align:center;color:var(--muted);padding:24px 16px 32px;font-size:.78rem}@media (width>=560px){.row{--row-h:99px;grid-template-columns:176px minmax(0,1fr);gap:16px}.line-title{font-size:1.08rem}}.toast{left:50%;bottom:calc(18px + env(safe-area-inset-bottom));z-index:10;color:#fff;white-space:nowrap;background:#232327;border-radius:14px;align-items:center;gap:14px;padding:10px 10px 10px 16px;font-size:.9rem;animation:.2s ease-out toast-in;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 8px 30px #00000059}.toast button{color:#fff;cursor:pointer;background:#ffffff24;border:0;border-radius:9px;padding:6px 10px;font-weight:700}.sheet{background:var(--surface);width:100%;max-width:560px;max-height:92dvh;color:var(--text);overscroll-behavior:contain;border:0;border-radius:22px 22px 0 0;margin:auto auto 0;padding:0;overflow:auto}.sheet::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#00000080}.sheet[open]{animation:.24s cubic-bezier(.2,.8,.2,1) sheet-in}@keyframes sheet-in{0%{opacity:0;transform:translateY(48px)}}@media (width>=600px){.sheet{border-radius:22px;margin:auto}}.sheet-body{padding-bottom:calc(22px + env(safe-area-inset-bottom))}.sheet-hero{position:relative}.sheet-hero .thumb{border-radius:0}.sheet-hero-shade{pointer-events:none;background:linear-gradient(#00000040 0%,#0000 30% 45%,#000000d1 100%);position:absolute;inset:0}.sheet-close{z-index:2;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#00000073;border:0;border-radius:50%;place-items:center;width:34px;height:34px;display:grid;position:absolute;top:12px;right:12px}.sheet-hero-text{z-index:1;color:#fff;position:absolute;bottom:16px;left:20px;right:20px}.sheet-hero-channel{opacity:.95;align-items:center;gap:8px;font-size:.85rem;font-weight:650;display:flex}.sheet-hero-channel .badge{position:static}.live-pill{background:var(--live);color:#fff;text-transform:uppercase;letter-spacing:.04em;border-radius:999px;margin-left:auto;padding:2px 8px;font-size:.72rem;font-weight:800}.sheet-title{font-family:var(--font-display);letter-spacing:-.02em;text-shadow:0 2px 12px #00000073;margin:6px 0 0;font-size:1.65rem;font-weight:800;line-height:1.1}.sheet-content{padding:14px 20px 0}.sheet-sub{margin:0 0 4px;font-weight:650}.sheet-meta{color:var(--muted);font-variant-numeric:tabular-nums;margin:0;font-size:.88rem}.sheet-meta strong{color:var(--text)}.cap{display:inline-block}.cap:first-letter{text-transform:uppercase}.sheet-actions{gap:8px;margin-top:16px;display:flex}.action{background:var(--surface-2);color:var(--text);cursor:pointer;border:0;border-radius:14px;flex-direction:column;flex:1;align-items:center;gap:4px;padding:10px 6px;font-size:.78rem;font-weight:650;transition:background .15s,color .15s;display:flex}.action.on{background:color-mix(in srgb, var(--accent) 18%, var(--surface-2));color:var(--accent)}.action.on.star{background:color-mix(in srgb, var(--star) 20%, var(--surface-2));color:color-mix(in srgb, var(--star) 70%, var(--text))}.action:disabled{opacity:.6}.sheet-desc{margin:16px 0 0;line-height:1.55}.sheet-h3{font-family:var(--font-display);margin:24px 0 6px;font-size:1rem;font-weight:750}.upcoming{margin:0;padding:0;list-style:none}.upcoming li{border-top:1px solid var(--line);gap:12px;padding:9px 0;font-size:.92rem;display:flex}.up-time{font-variant-numeric:tabular-nums;font-weight:700}.up-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.settings-body{padding:16px 20px calc(24px + env(safe-area-inset-bottom))}.settings-head{justify-content:space-between;align-items:center;display:flex}.settings-head h2{font-family:var(--font-display);margin:0;font-size:1.5rem;font-weight:800}.settings-h3{font-family:var(--font-display);margin:20px 0 2px;font-size:1.05rem;font-weight:750}.settings-h3+p{margin:0 0 8px}.settings-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.ch-group h4{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:14px 0 4px;font-size:.75rem}.ch-list{margin:0;padding:0;list-style:none}.ch-list li{border-top:1px solid var(--line);align-items:center;gap:12px;padding:6px 0;display:flex}.ch-list-name.is-hidden,.ch-list-name.is-hidden+.icon-btn{opacity:.4}.ch-list li{background:var(--surface);position:relative}.ch-list li.shifting{transition:transform .18s}.ch-list li.dragging{z-index:2;box-shadow:var(--shadow-card);border-radius:12px}.handle{width:28px;height:36px;color:var(--muted);cursor:grab;touch-action:none;background:0 0;border:0;place-items:center;margin-left:-6px;padding:0;display:grid}.dragging .handle{cursor:grabbing}.settings-h3-row{justify-content:space-between;align-items:baseline;display:flex}.link{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.ch-list-name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-weight:600;overflow:hidden}.settings-foot{text-align:center;color:var(--muted);margin-top:24px;font-size:.78rem}.pill{background:var(--surface-2);cursor:pointer;border:0;border-radius:999px;padding:8px 14px;font-size:.88rem;font-weight:650}.pill.primary{background:var(--accent);color:#fff}.pill:disabled{opacity:.5;cursor:default}.input{min-width:0;font:inherit;border:1px solid var(--line);background:var(--bg);color:var(--text);border-radius:12px;flex:1;padding:9px 12px;font-size:16px}.error{color:var(--live);font-size:.85rem}.ok{color:#2f9e44;align-items:center;gap:4px;font-size:.85rem;font-weight:600;display:inline-flex}.fab{right:max(18px, env(safe-area-inset-right));bottom:calc(18px + env(safe-area-inset-bottom));z-index:5;background:color-mix(in srgb, var(--surface) 78%, transparent);-webkit-backdrop-filter:blur(16px)saturate(1.6);backdrop-filter:blur(16px)saturate(1.6);width:52px;height:52px;color:var(--text);box-shadow:0 6px 20px #00000038, inset 0 0 0 1px var(--line);cursor:pointer;border:0;border-radius:50%;place-items:center;display:grid;position:fixed}.fab:active{transform:scale(.94)}.toast{max-width:calc(100% - 100px);left:16px;transform:none}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}
