:root{color-scheme:dark;--bg: #0b0f15;--bg-elevated: #10151d;--surface: #151b24;--surface-2: #1c2430;--surface-3: #252f3d;--border: #283241;--border-strong: #3a4659;--text: #e9eef5;--text-muted: #9aa8b8;--text-subtle: #75849a;--accent: #5ea3ff;--accent-strong: #3b8bff;--accent-soft: rgba(94, 163, 255, .14);--accent-contrast: #06101f;--favorite: #ff5b7f;--favorite-soft: rgba(255, 91, 127, .16);--success: #3ecf8e;--warning: #f5b94a;--warning-soft: rgba(245, 185, 74, .12);--danger: #ff6b6b;--danger-soft: rgba(255, 107, 107, .12);--radius-sm: 8px;--radius: 12px;--radius-lg: 18px;--shadow: 0 10px 30px rgba(0, 0, 0, .35);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .25);--font: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--gutter: 16px;--content-width: 1280px;--header-height: 60px;--bottom-nav-height: 64px;--tap: 44px;--ease: cubic-bezier(.2, .7, .2, 1)}@media(min-width:768px){:root{--gutter: 24px;--header-height: 68px}}@media(min-width:1100px){:root{--gutter: 32px}}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{min-height:100vh;min-height:100dvh;font-family:var(--font);font-size:16px;line-height:1.5;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;overflow-x:hidden}img,svg{display:block;max-width:100%}button,input,select{font:inherit;color:inherit}button{cursor:pointer;background:none;border:0;padding:0}button:disabled{cursor:not-allowed}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}ul,ol{padding:0;list-style:none}h1,h2,h3{line-height:1.2;letter-spacing:-.01em}h1{font-size:clamp(1.6rem,1.2rem + 1.6vw,2.3rem);font-weight:750}h2{font-size:1.25rem;font-weight:700}h3{font-size:1rem;font-weight:650}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}::selection{background:var(--accent-soft)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.muted{color:var(--text-muted)}.small{font-size:.875rem}.center{text-align:center}.capitalize:first-letter{text-transform:uppercase}.hide-mobile{display:none!important}@media(min-width:768px){.hide-mobile{display:revert!important}}.app{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}.main{flex:1;width:100%;max-width:var(--content-width);margin:0 auto;padding:20px var(--gutter) 32px;outline:none}.skip-link{position:absolute;left:12px;top:-60px;z-index:100;padding:10px 14px;border-radius:var(--radius-sm);background:var(--accent);color:var(--accent-contrast);font-weight:600}.skip-link:focus{top:12px}.site-header{position:sticky;top:0;z-index:40;background:#0b0f15d9;backdrop-filter:saturate(160%) blur(12px);-webkit-backdrop-filter:saturate(160%) blur(12px);border-bottom:1px solid var(--border)}.site-header-inner{display:flex;align-items:center;gap:16px;height:var(--header-height);max-width:var(--content-width);margin:0 auto;padding:0 var(--gutter)}.brand{display:flex;align-items:center;gap:10px;color:var(--text);font-weight:750;font-size:1.05rem;letter-spacing:-.02em}.brand:hover{text-decoration:none}.brand-mark{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:linear-gradient(135deg,var(--accent),#8f6bff);color:var(--accent-contrast)}.top-nav{display:none}.header-actions{display:flex;align-items:center;gap:8px;margin-left:auto}@media(min-width:768px){.top-nav{display:flex;gap:4px;margin-left:24px}.top-nav-link{display:flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border-radius:999px;color:var(--text-muted);font-weight:550;transition:background .15s,color .15s}.top-nav-link:hover{color:var(--text);background:var(--surface);text-decoration:none}.top-nav-link.is-active{color:var(--text);background:var(--surface-2)}}.account{position:relative}.account-button{display:flex;align-items:center;gap:10px;min-height:var(--tap);padding:4px;border-radius:999px}.account-button:hover .avatar{filter:brightness(1.15)}.avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--surface-3);color:var(--text);font-weight:700}.account-email{display:none;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted);font-size:.9rem}@media(min-width:1100px){.account-email{display:block;padding-right:10px}}.account-menu{position:absolute;right:0;top:calc(100% + 8px);width:min(280px,calc(100vw - 2 * var(--gutter)));padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);animation:pop-in .15s var(--ease)}.account-menu-email{display:grid;gap:2px;margin-bottom:12px;color:var(--text-muted);font-size:.85rem}.account-menu-email strong{overflow:hidden;text-overflow:ellipsis;color:var(--text);font-size:.95rem}.session-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 16px;padding:10px var(--gutter);background:var(--warning-soft);border-bottom:1px solid rgba(245,185,74,.3);color:var(--text);font-size:.95rem;text-align:center}.bottom-nav{position:fixed;inset:auto 0 0;z-index:40;display:grid;grid-template-columns:repeat(3,1fr);height:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:#10151df0;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--border)}.bottom-nav-link{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--text-subtle);font-size:.75rem;font-weight:600}.bottom-nav-link:hover{text-decoration:none}.bottom-nav-link.is-active{color:var(--accent)}.bottom-nav-icon{position:relative}.app{padding-bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom))}@media(min-width:768px){.bottom-nav{display:none}.app{padding-bottom:0}}.count-badge{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--surface-3);color:var(--text);font-size:.72rem;font-weight:700}.count-badge--dot{position:absolute;top:-6px;right:-12px;min-width:18px;height:18px;padding:0 5px;background:var(--favorite);color:#fff;font-size:.68rem}.site-footer{border-top:1px solid var(--border);background:var(--bg-elevated)}.site-footer-inner{display:flex;flex-direction:column;gap:12px;align-items:center;max-width:var(--content-width);margin:0 auto;padding:20px var(--gutter);text-align:center}.tmdb-link{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--text-subtle);font-size:.8rem}.tmdb-link:hover{color:var(--text-muted);text-decoration:none}.tmdb-logo{height:14px;opacity:.85}.footer-link{color:var(--text-muted);font-size:.85rem}@media(min-width:768px){.site-footer-inner{flex-direction:row;justify-content:space-between;text-align:left}.tmdb-link{flex-direction:row;gap:12px}}.page-header{margin-bottom:20px}.page-header--row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 16px}.page-subtitle{margin-top:6px;color:var(--text-muted)}@keyframes pop-in{0%{opacity:0;transform:translateY(-4px) scale(.98)}}@keyframes fade-in{0%{opacity:0}}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--tap);padding:0 18px;border:1px solid transparent;border-radius:999px;font-weight:600;line-height:1;white-space:nowrap;transition:background .15s,border-color .15s,color .15s,transform .1s}.button:hover{text-decoration:none}.button:active:not(:disabled){transform:scale(.98)}.button:disabled{opacity:.55}.button--primary{background:var(--accent);color:var(--accent-contrast)}.button--primary:hover:not(:disabled){background:#7ab4ff}.button--secondary{background:var(--surface-2);border-color:var(--border);color:var(--text)}.button--secondary:hover:not(:disabled){background:var(--surface-3);border-color:var(--border-strong)}.button--ghost{color:var(--text)}.button--ghost:hover:not(:disabled){background:var(--surface)}.button--small{min-height:38px;padding:0 14px;font-size:.9rem}.button--large{min-height:50px;font-size:1.02rem}.button--block{width:100%}.icon-button{display:inline-grid;place-items:center;width:var(--tap);height:var(--tap);border-radius:50%;color:var(--text-muted);transition:background .15s,color .15s}.icon-button:hover{background:var(--surface-2);color:var(--text)}.icon-button--small{width:32px;height:32px}.link-button{color:var(--accent);font-weight:600;text-decoration:underline;text-underline-offset:2px}.favorite-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;color:var(--text);transition:transform .15s var(--ease),background .15s,color .15s}.favorite-button:active:not(:disabled){transform:scale(.9)}.favorite-button.is-active{color:var(--favorite)}.favorite-button.is-active .icon{animation:heart-pop .3s var(--ease)}.favorite-button--overlay{width:var(--tap);height:var(--tap);border-radius:50%;background:#080b10b8;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);box-shadow:var(--shadow-sm)}.favorite-button--overlay:hover{background:#080b10e6}.favorite-button--full{min-height:var(--tap);padding:0 18px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);font-weight:600}.favorite-button--full.is-active{border-color:#ff5b7f73;background:var(--favorite-soft)}.favorite-button--plain{width:var(--tap);height:var(--tap);border-radius:50%}.favorite-button--plain:hover{background:var(--favorite-soft)}.favorite-button:disabled{opacity:.6}@keyframes heart-pop{50%{transform:scale(1.25)}}.field{display:grid;gap:6px}.field label{font-size:.9rem;font-weight:600}.input,.select{width:100%;min-height:48px;padding:0 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);font-size:1rem;transition:border-color .15s,box-shadow .15s}.input:focus,.select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.input.has-error{border-color:var(--danger)}.field-error{color:var(--danger);font-size:.85rem}.select-wrap{display:block;min-width:0}.select{min-height:40px;padding-right:36px;border-radius:999px;background-color:var(--surface-2);appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--text-muted) 50%),linear-gradient(135deg,var(--text-muted) 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px;background-repeat:no-repeat;text-overflow:ellipsis}.password-field{position:relative}.password-field .input{padding-right:52px}.password-toggle{position:absolute;top:2px;right:2px}.password-rules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px;margin-top:4px;color:var(--text-subtle);font-size:.82rem}.password-rules li{display:flex;align-items:center;gap:6px}.password-rules li.is-ok{color:var(--success)}.chip{display:inline-flex;align-items:center;min-height:38px;padding:0 14px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text-muted);font-size:.9rem;font-weight:550;white-space:nowrap;transition:background .15s,color .15s,border-color .15s}.chip:hover{color:var(--text);border-color:var(--border-strong)}.chip.is-active{background:var(--accent-soft);border-color:#5ea3ff80;color:var(--text)}.badge{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:6px;background:var(--surface-3);color:var(--text);font-size:.74rem;font-weight:650;white-space:nowrap}.badge--accent{background:var(--accent-soft);color:#a9cdff}.tag-list{display:flex;flex-wrap:wrap;gap:6px}.tag{padding:4px 10px;border-radius:999px;background:var(--surface-2);color:var(--text-muted);font-size:.82rem}.meta-list{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;color:var(--text-muted);font-size:.92rem}.meta-list li{display:inline-flex;align-items:center;gap:6px}.episode-code{font-variant-numeric:tabular-nums;font-weight:700;color:var(--accent);letter-spacing:.01em}.eyebrow,.section-label{color:var(--text-subtle);font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.section-label--sub{margin-top:16px}.card{padding:16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.section{margin-top:28px}.section-title{margin-bottom:12px}.prose{max-width:70ch;color:#cfd8e3}.poster{width:100%;height:100%;object-fit:cover;background:var(--surface-2)}.provider-logos{display:flex;flex-wrap:wrap;gap:8px}.provider-logos img{width:40px;height:40px;border-radius:10px;box-shadow:var(--shadow-sm)}.provider-logos--sm{gap:5px}.provider-logos--sm img{width:22px;height:22px;border-radius:6px}.provider-name{display:inline-flex;align-items:center;height:28px;padding:0 10px;border-radius:6px;background:var(--surface-3);font-size:.8rem}.attribution{margin-top:12px;color:var(--text-subtle);font-size:.78rem}.state{display:flex;flex-direction:column;align-items:center;gap:10px;max-width:520px;margin:24px auto;padding:32px 20px;text-align:center;animation:fade-in .25s var(--ease)}.state h2{font-size:1.2rem}.state p,.state-text{color:var(--text-muted)}.state--empty,.state--error{border:1px dashed var(--border-strong);border-radius:var(--radius-lg);background:var(--bg-elevated)}.state--error{border-style:solid;border-color:#ff6b6b59}.state--error .icon{color:var(--danger)}.state-icon{display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:var(--accent-soft);color:var(--accent)}.state-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px}.spinner-wrap{display:grid;place-items:center;padding:24px}.spinner{width:28px;height:28px;border:3px solid var(--surface-3);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.inline-alert{display:flex;align-items:flex-start;gap:10px;margin:12px 0;padding:12px 14px;border:1px solid rgba(245,185,74,.35);border-radius:var(--radius-sm);background:var(--warning-soft);font-size:.93rem}.inline-alert .icon{flex:none;margin-top:2px;color:var(--warning)}.inline-alert--error{border-color:#ff6b6b66;background:var(--danger-soft)}.inline-alert--error .icon{color:var(--danger)}.inline-alert--info{border-color:#5ea3ff59;background:var(--accent-soft)}.inline-alert--info .icon{color:var(--accent)}.toast-region{position:fixed;left:50%;bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom) + 12px);z-index:60;display:grid;gap:8px;width:min(440px,calc(100vw - 2 * var(--gutter)));transform:translate(-50%);pointer-events:none}.toast{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 8px 8px 16px;border:1px solid var(--border-strong);border-left:4px solid var(--accent);border-radius:var(--radius);background:var(--surface-2);box-shadow:var(--shadow);font-size:.93rem;pointer-events:auto;animation:toast-in .22s var(--ease)}.toast--success{border-left-color:var(--success)}.toast--error{border-left-color:var(--danger)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}@media(min-width:768px){.toast-region{bottom:24px}}.modal{width:100%;max-width:100%;max-height:100%;margin:auto 0 0;padding:0;border:0;background:transparent;color:var(--text)}.modal::backdrop{background:#03060ab8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal-content{position:relative;max-height:92dvh;overflow-y:auto;border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--surface);box-shadow:var(--shadow);animation:sheet-up .25s var(--ease);overscroll-behavior:contain}.modal-close{position:absolute;top:10px;right:10px;z-index:2;background:#080b10b3;color:var(--text)}@keyframes sheet-up{0%{transform:translateY(24px);opacity:0}}@media(min-width:768px){.modal{width:min(640px,calc(100vw - 48px));margin:auto}.modal-content{max-height:88vh;border-radius:var(--radius-lg)}}.calendar-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.month-switcher{display:flex;align-items:center;gap:4px;flex:1 1 auto;min-width:0}.month-title{min-width:9.5ch;font-size:1.3rem;text-align:center}.calendar-toolbar-actions{display:flex;align-items:center;gap:8px;min-width:0;flex:1 1 100%}.calendar-toolbar-actions .select-wrap{flex:1;min-width:0}.calendar-summary{margin-bottom:12px}@media(min-width:768px){.month-switcher{flex:none}.month-title{min-width:11ch;font-size:1.5rem}.calendar-toolbar-actions{flex:none}.calendar-toolbar-actions .select-wrap{width:260px}}.agenda{display:grid;gap:18px}.agenda-date{position:sticky;top:var(--header-height);z-index:5;display:flex;align-items:baseline;gap:8px;margin:0 calc(-1 * var(--gutter)) 8px;padding:8px var(--gutter);background:#0b0f15eb;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--text-muted);font-size:.92rem;font-weight:650}.agenda-date span:last-child:first-letter{text-transform:uppercase}.agenda-relative{color:var(--accent);font-weight:750}.agenda-day.is-today .agenda-date{color:var(--text)}.agenda-day.is-past{opacity:.72}.agenda-none{padding:4px 2px}.episode-list{display:grid;gap:8px}.episode-row{display:flex;align-items:center;gap:12px;width:100%;min-height:76px;padding:10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);text-align:left;transition:background .15s,border-color .15s,transform .1s}.episode-row:hover{background:var(--surface-2);border-color:var(--border-strong)}.episode-row:active{transform:scale(.99)}.episode-row-poster{flex:none;width:44px;height:66px;border-radius:6px}.episode-row-body{display:grid;gap:3px;min-width:0}.episode-row-show{overflow:hidden;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.episode-row-meta{display:flex;gap:8px;min-width:0;font-size:.88rem}.episode-row-name{overflow:hidden;color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap}.episode-row-footer{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:2px}.calendar-layout{display:grid;gap:20px;transition:opacity .2s}.calendar-layout.is-loading .month-grid{opacity:.55;pointer-events:none}.month-grid{overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--border);transition:opacity .2s}.month-grid-weekdays,.month-grid-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px}.month-grid-week{margin-top:1px}.month-grid-weekday{padding:10px 0;background:var(--bg-elevated);color:var(--text-subtle);font-size:.78rem;font-weight:700;letter-spacing:.06em;text-align:center;text-transform:uppercase}.day-cell{display:flex;flex-direction:column;gap:4px;min-width:0;min-height:104px;padding:6px;background:var(--surface);transition:background .15s}.day-cell.is-outside{background:var(--bg-elevated)}.day-cell.is-outside .day-number{color:var(--text-subtle);opacity:.5}.day-cell.is-selected{background:var(--surface-2);box-shadow:inset 0 0 0 2px var(--accent-soft)}.day-number{display:grid;place-items:center;align-self:flex-start;width:30px;height:30px;border-radius:50%;color:var(--text-muted);font-size:.88rem;font-weight:650;font-variant-numeric:tabular-nums}button.day-number:hover{background:var(--surface-3);color:var(--text)}.day-cell.has-items .day-number{color:var(--text)}.day-cell.is-today .day-number{background:var(--accent);color:var(--accent-contrast)}.day-events{display:grid;gap:3px;min-width:0}.event-chip{display:flex;align-items:center;gap:6px;width:100%;min-width:0;min-height:30px;padding:3px 6px 3px 3px;border-radius:6px;background:var(--accent-soft);text-align:left;font-size:.78rem;line-height:1.2;transition:background .15s}.event-chip:hover{background:#5ea3ff42}.event-chip-poster{display:none;flex:none;width:18px;height:27px;border-radius:3px;object-fit:cover}.event-chip-text{display:grid;min-width:0}.event-chip-show{overflow:hidden;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.event-chip-code{color:#a9cdff;font-size:.72rem;font-variant-numeric:tabular-nums}.event-more{min-height:26px;padding:0 6px;border-radius:6px;color:var(--text-muted);font-size:.75rem;font-weight:650;text-align:left}.event-more:hover{background:var(--surface-3);color:var(--text)}.day-panel{padding:16px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elevated)}.day-panel-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin-bottom:12px;font-size:1.05rem}@media(min-width:1100px){.calendar-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start}.day-panel{position:sticky;top:calc(var(--header-height) + 16px);max-height:calc(100vh - var(--header-height) - 32px);overflow-y:auto}.day-cell{min-height:124px;padding:8px}.event-chip-poster{display:block}}.episode-dialog-still{width:100%;aspect-ratio:16 / 9;object-fit:cover;background:var(--surface-2)}.episode-dialog-still--empty{display:grid;place-items:center;color:var(--text-subtle)}.episode-dialog-body{display:grid;gap:14px;padding:18px var(--gutter) calc(22px + env(safe-area-inset-bottom))}.episode-dialog-title{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:1.3rem}.episode-dialog-overview{color:#cfd8e3}.episode-dialog-providers{display:grid;gap:10px;padding-top:14px;border-top:1px solid var(--border)}.episode-dialog-providers .attribution{margin-top:0}.episode-dialog-actions{display:flex;flex-wrap:wrap;gap:10px}.episode-dialog-actions .button{flex:1 1 140px}.search-hero{display:grid;gap:12px;justify-items:center;margin:12px auto 24px;max-width:720px;text-align:center}.search-hero h1{background:linear-gradient(120deg,#fff 30%,#9cc6ff);-webkit-background-clip:text;background-clip:text;color:transparent}.search-hero.is-compact{margin:0 auto 18px}.search-form{position:relative;width:100%;margin-top:8px}.search-form-icon{position:absolute;top:50%;left:18px;color:var(--text-subtle);transform:translateY(-50%);pointer-events:none}.search-input{width:100%;min-height:54px;padding:0 52px 0 50px;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface);font-size:1.05rem;box-shadow:var(--shadow-sm);transition:border-color .15s,box-shadow .15s}.search-input::-webkit-search-cancel-button{display:none}.search-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.search-clear{position:absolute;top:50%;right:5px;transform:translateY(-50%)}.suggestions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.results-count{margin-bottom:12px}.card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}@media(min-width:600px){.card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:900px){.card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}}@media(min-width:1100px){.card-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}.show-card{position:relative;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);transition:transform .2s var(--ease),border-color .2s,box-shadow .2s}.show-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow);transform:translateY(-3px)}.show-card-link{display:flex;flex-direction:column;height:100%;color:inherit}.show-card-link:hover{text-decoration:none}.show-card-poster{aspect-ratio:2 / 3;overflow:hidden;background:var(--surface-2)}.show-card-poster .poster{transition:transform .35s var(--ease)}.show-card:hover .show-card-poster .poster{transform:scale(1.04)}.show-card-body{display:grid;gap:4px;padding:10px 12px 12px}.show-card-title{display:-webkit-box;overflow:hidden;font-size:.95rem;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.show-card-meta{display:flex;align-items:center;gap:10px;color:var(--text-muted);font-size:.82rem}.rating{display:inline-flex;align-items:center;gap:3px;color:#f7c948;font-weight:650}.show-card-overview{display:none}@media(min-width:768px){.show-card-overview{display:-webkit-box;overflow:hidden;color:var(--text-subtle);font-size:.82rem;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3}}.show-card-favorite{position:absolute;top:8px;right:8px}.show-hero{position:relative;display:grid;grid-template-columns:110px minmax(0,1fr);gap:16px;align-items:start;margin:-20px calc(-1 * var(--gutter)) 0;padding:24px var(--gutter);isolation:isolate}.show-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(11,15,21,.55),var(--bg) 92%),var(--backdrop, none) center / cover no-repeat;opacity:.9}.show-hero-poster{overflow:hidden;aspect-ratio:2 / 3;border-radius:var(--radius);box-shadow:var(--shadow)}.show-hero-info{display:grid;gap:10px;min-width:0}.show-title{font-size:clamp(1.4rem,1.1rem + 2vw,2.6rem);overflow-wrap:anywhere}.show-actions{display:flex;flex-wrap:wrap;gap:10px;grid-column:1 / -1}.show-actions>*{flex:1 1 150px}@media(min-width:768px){.show-hero{grid-template-columns:220px minmax(0,1fr);grid-template-rows:1fr auto;column-gap:28px;row-gap:16px;padding:40px var(--gutter) 32px}.show-hero-poster{grid-row:1 / span 2}.show-hero-info{align-self:end}.show-actions{grid-column:2}.show-actions>*{flex:none}}.show-content{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;margin-top:8px}.show-main,.show-aside{min-width:0}@media(min-width:1100px){.show-content{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:40px}.show-aside{position:sticky;top:calc(var(--header-height) + 16px)}}.show-aside .card{display:grid;gap:12px}.next-episode{display:grid;gap:6px;width:100%;border-color:#5ea3ff59;background:linear-gradient(135deg,#5ea3ff1f,#8f6bff14);text-align:left;transition:border-color .15s}.next-episode:not(.is-static):hover{border-color:var(--accent)}.next-episode.is-static{border-color:var(--border);background:var(--surface)}.next-episode-title{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:1.1rem;font-weight:700}.next-episode-date{display:flex;align-items:center;gap:6px;color:var(--text-muted)}.season-tabs{display:flex;gap:8px;margin:0 calc(-1 * var(--gutter)) 12px;padding:2px var(--gutter) 6px;overflow-x:auto;scrollbar-width:thin;scroll-snap-type:x proximity}.season-tabs .chip{scroll-snap-align:start}@media(min-width:768px){.season-tabs{flex-wrap:wrap;margin:0 0 14px;padding:0;overflow:visible}}.season-episodes{display:grid;gap:6px}.season-episode{display:flex;align-items:center;gap:12px;width:100%;min-height:60px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);text-align:left;transition:background .15s,border-color .15s}.season-episode:hover{background:var(--surface-2);border-color:var(--border-strong)}.season-episode.is-upcoming{border-color:#5ea3ff4d}.season-episode-number{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:50%;background:var(--surface-2);color:var(--text-muted);font-size:.85rem;font-weight:700;font-variant-numeric:tabular-nums}.season-episode-body{display:grid;flex:1;min-width:0}.season-episode-name{overflow:hidden;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.season-episode-meta{color:var(--text-muted);font-size:.85rem}.season-episode-badges{display:flex;gap:6px}.favorites-grid{display:grid;gap:12px}@media(min-width:768px){.favorites-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}@media(min-width:1100px){.favorites-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.favorite-card{position:relative;display:grid;grid-template-columns:88px minmax(0,1fr);gap:14px;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);animation:fade-in .2s var(--ease)}@media(min-width:768px){.favorite-card{grid-template-columns:110px minmax(0,1fr)}}.favorite-card-poster{overflow:hidden;aspect-ratio:2 / 3;border-radius:var(--radius-sm)}.favorite-card-body{display:flex;flex-direction:column;gap:6px;min-width:0;padding-right:40px}.favorite-card-title{font-size:1.05rem;overflow-wrap:anywhere}.favorite-card-title a{color:var(--text)}.favorite-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:8px}.favorite-card-remove{position:absolute;top:6px;right:6px}.auth-page{display:grid;place-items:start center;padding-top:8px}.auth-card{display:grid;gap:16px;width:100%;max-width:420px;padding:24px 20px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow)}.auth-card .inline-alert{margin:0}@media(min-width:768px){.auth-page{padding-top:40px}.auth-card{padding:32px}}.auth-switch{color:var(--text-muted);font-size:.93rem;text-align:center}.prose-page{display:grid;gap:14px;max-width:68ch}.prose-page h2{margin-top:12px}.prose-page p,.prose-page li{color:#cfd8e3}.prose-page ol{display:grid;gap:6px;padding-left:1.3em;list-style:decimal}.prose-page.center{margin:40px auto;justify-items:center}
