:root{--background:#0b0d12;--surface-container:#151922;--surface-container-high:#1d2230;--outline:#2b3242;--on-surface:#eceff4;--on-surface-variant:#8d96a8;--primary:#4c8dff;--tertiary:#f5c518;--live:#f04452;--ok:#4ade80;--radius:12px;--screen:16px;--bg:var(--background);--panel:var(--surface-container);--panel2:var(--surface-container-high);--text:var(--on-surface);--muted:var(--on-surface-variant);--accent:var(--primary);--warn:var(--tertiary);--bad:var(--live)}*{box-sizing:border-box}[hidden]{display:none!important}html{color-scheme:dark}body{background:var(--background);color:var(--on-surface);margin:0;font:16px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:var(--primary);text-decoration:none}main{max-width:1200px;padding:16px var(--screen) 104px;margin:0 auto}h1{margin:8px 0 16px;font-size:1.5rem;font-weight:700}h2{margin:24px 0 8px;font-size:1.15rem}.muted{color:var(--on-surface-variant);font-size:.9rem}.card{background:var(--surface-container);border-radius:var(--radius);margin-bottom:8px;padding:12px 16px}.row{align-items:center;gap:12px;display:flex}.grow{flex:1;min-width:0}.ellipsis{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.pill{background:var(--surface-container-high);color:var(--on-surface-variant);border-radius:99px;padding:2px 8px;font-size:.78rem;display:inline-block}.pill.live{background:var(--live);color:#fff;font-weight:700}.pill.ok{color:var(--ok);background:#14532d}label{color:var(--on-surface-variant);margin:12px 0 4px;font-size:.85rem;display:block}input,select,textarea{border-radius:var(--radius);border:1px solid var(--outline);background:var(--surface-container-high);width:100%;color:var(--on-surface);font:inherit;padding:12px}textarea{min-height:120px;font-family:ui-monospace,monospace;font-size:.8rem}button,.btn{background:var(--primary);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:99px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-weight:600;display:inline-flex}button.secondary,.btn.secondary{background:var(--surface-container-high);color:var(--on-surface)}button.danger{color:#ffb4b4;background:#3a1416}button:disabled{opacity:.6;cursor:default}.stars{flex-direction:row-reverse;justify-content:flex-end;gap:4px;display:flex}.stars input{display:none}.stars label{color:var(--outline);cursor:pointer;margin:0;font-size:2rem}.stars input:checked~label,.stars label:hover,.stars label:hover~label{color:var(--tertiary)}.poster{object-fit:cover;background:var(--surface-container-high);border-radius:8px;flex:none;width:56px;height:84px}.flash{border-radius:var(--radius);color:var(--ok);background:#14532d;margin-bottom:12px;padding:10px 12px}.error{border-radius:var(--radius);color:#ffb4b4;background:#3a1416;margin-bottom:12px;padding:10px 12px}.grid2{grid-template-columns:1fr 1fr;gap:8px;display:grid}.badge{background:var(--live);color:#fff;border-radius:9px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.7rem;font-weight:700;display:inline-grid}.iconbtn{background:var(--surface-container-high);min-width:40px;color:var(--on-surface);border-radius:var(--radius);padding:8px 10px}.code{letter-spacing:.2em;font:700 2rem ui-monospace,monospace}.chips,.viewers{scrollbar-width:none;gap:8px;margin:0 0 12px;display:flex;overflow-x:auto}.chip{background:var(--surface-container-high);color:var(--on-surface);white-space:nowrap;border:1px solid var(--outline);border-radius:99px;flex:none;padding:6px 14px;font-size:.9rem}.chip.on{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:600}.section{color:var(--on-surface);align-items:center;gap:2px;margin:24px 0 8px;font-size:1.2rem;font-weight:700;display:flex}a.section:hover{color:var(--primary)}.hub-row{scroll-snap-type:x proximity;scrollbar-width:thin;gap:12px;padding-bottom:6px;display:flex;overflow-x:auto}.hub-row .poster-card{scroll-snap-align:start;flex:none;width:128px}.poster-grid{grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:16px 12px;display:grid}.poster-card{color:var(--on-surface);flex-direction:column;gap:4px;min-width:0;display:flex}.poster-card .poster{aspect-ratio:2/3;border-radius:var(--radius);width:100%;height:auto;color:var(--on-surface-variant);place-items:center;display:grid;position:relative;overflow:hidden}.poster-card .poster img{object-fit:cover;width:100%;height:100%}.poster-card:hover .poster{outline:2px solid var(--primary)}.poster-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.9rem;font-weight:500;line-height:1.25;display:-webkit-box;overflow:hidden}.poster-meta{color:var(--on-surface-variant);font-size:.8rem}.rating{color:var(--tertiary);background:#000c;border-radius:6px;align-items:center;gap:2px;padding:2px 6px;font-size:.75rem;font-weight:700;display:inline-flex;position:absolute;bottom:6px;left:6px}.mark{border-radius:50%;place-items:center;width:24px;height:24px;display:grid;position:absolute;top:6px;right:6px}.mark.want{background:var(--primary);color:#fff}.mark.seen{color:var(--ok);background:#000c}.top{align-items:center;gap:12px;margin:4px 0 12px;display:flex}.top h1{flex:1;margin:0}.top .back{color:var(--on-surface);border-radius:50%;place-items:center;width:40px;height:40px;margin-left:-8px;display:grid}nav.tabs{background:var(--surface-container);border-top:1px solid var(--outline);padding-bottom:env(safe-area-inset-bottom);z-index:10;display:flex;position:fixed;bottom:0;left:0;right:0}nav.tabs a{color:var(--on-surface-variant);flex-direction:column;flex:1;align-items:center;gap:2px;padding:8px 2px 10px;font-size:.75rem;display:flex;position:relative}nav.tabs a .ind{border-radius:15px;place-items:center;width:56px;height:30px;display:grid}nav.tabs a.on{color:var(--on-surface);font-weight:600}nav.tabs a.on .ind{background:color-mix(in srgb, var(--primary) 28%, transparent);color:var(--primary)}nav.tabs .badge{position:absolute;top:4px;left:calc(50% + 8px)}@media (width>=840px){nav.tabs{border-top:0;border-right:1px solid var(--outline);flex-direction:column;justify-content:flex-start;gap:8px;width:88px;padding:24px 0;top:0;right:auto}nav.tabs a{flex:none}main{margin-left:88px;padding:24px 32px 48px}.poster-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.hub-row .poster-card{width:150px}}
