/* Base */
:root{--bg:#0f1115;--panel:#161a22;--panel-2:#1d2330;--text:#e6e8ee;--muted:#aab1c5;--primary:#5b8cff;--primary-600:#4a77e6;--primary-rgb:91,140,255;--primary-soft:rgba(var(--primary-rgb),.14);--primary-border:rgba(var(--primary-rgb),.42);--focus-ring:0 0 0 3px rgba(var(--primary-rgb),.28);--danger:#ff5d5d;--success:#36c78a;--border:#273043;--radius:10px;--radius-sm:8px;--shadow:0 8px 24px rgba(0,0,0,.25);--scrollbar-size:10px;--scrollbar-track:#111620;--scrollbar-thumb:#465168;--scrollbar-thumb-hover:#62708b;--scrollbar-thumb-active:#7895d8;--content-max-width:1380px;--catalog-card-width:178px;--media-detail-aside-width:310px}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text)}
body[data-media-type="movie"]{--bg:#130f0d;--panel:#1d1714;--panel-2:#29201b;--primary:#f08a4b;--primary-600:#d96f34;--primary-rgb:240,138,75;--primary-soft:rgba(var(--primary-rgb),.13);--primary-border:rgba(var(--primary-rgb),.43);--border:#49362d;--scrollbar-track:#17100d;--scrollbar-thumb:#6a4a3a;--scrollbar-thumb-hover:#8c6049;--scrollbar-thumb-active:#bd7954;background:radial-gradient(circle at 14% -8%,rgba(var(--primary-rgb),.13),transparent 32rem),var(--bg)}
[hidden]{display:none!important}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.ui-icon-sprite{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.ui-icon{display:inline-block;width:1em;height:1em;flex:0 0 auto;overflow:visible;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.12em}

/* Shared page and component scrollbar */
html.app-scrollbar{scrollbar-gutter:stable both-edges}
.app-scrollbar{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}
.app-scrollbar::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}
.app-scrollbar::-webkit-scrollbar-track{background:var(--scrollbar-track)}
.app-scrollbar::-webkit-scrollbar-thumb{min-width:34px;min-height:34px;border:2px solid var(--scrollbar-track);border-radius:999px;background:var(--scrollbar-thumb);background-clip:padding-box}
.app-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover);background-clip:padding-box}
.app-scrollbar::-webkit-scrollbar-thumb:active{background:var(--scrollbar-thumb-active);background-clip:padding-box}
.app-scrollbar::-webkit-scrollbar-corner{background:var(--scrollbar-track)}
.app-scrollbar::-webkit-scrollbar-button{display:none;width:0;height:0}

/* Layout */
.container{max-width:var(--content-max-width);margin:0 auto;padding:16px 16px 72px}
.header-flex{display:flex;align-items:center;gap:16px}
.container.header-flex{padding-bottom:0}
.container.page-main{padding-top:50px}
.page-main .page-top-heading{margin-top:-8px}
.logo{font-weight:800;color:var(--text);text-decoration:none;font-size:20px;letter-spacing:0}
.header-flex .search-form{flex:1}
.nav{display:flex;align-items:center;gap:8px}
.auth-box{display:flex;align-items:center;gap:8px;margin-left:auto}
.welcome{color:var(--muted);font-size:14px}
.profile-link{display:inline-flex;min-width:0;align-items:center;gap:8px;padding:4px 7px 4px 4px;border:1px solid transparent;border-radius:999px;color:var(--text);text-decoration:none;transition:border-color .16s ease,background .16s ease}
.profile-link:hover,.profile-link:focus-visible{border-color:var(--primary-border);background:var(--primary-soft)}
.profile-link:focus-visible{outline:0;box-shadow:var(--focus-ring)}
.profile-avatar{display:inline-flex;width:30px;height:30px;flex:0 0 auto;align-items:center;justify-content:center;border:1px solid rgba(126,160,255,.42);border-radius:50%;background:linear-gradient(145deg,#6c97ff,#4a64b8);color:#fff;font-size:12px;font-weight:900;box-shadow:0 4px 12px rgba(50,88,180,.25)}
.profile-name{max-width:150px;overflow:hidden;font-weight:750;text-overflow:ellipsis;white-space:nowrap}
.btn.header-logout{border:1px solid rgba(255,93,93,.28);background:rgba(255,93,93,.09);color:#ffc4cc}
.btn.header-logout:hover{border-color:rgba(255,93,93,.45);background:rgba(255,93,93,.17)}
.guest-language-form{display:flex;margin:0}
.guest-language-toggle{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;padding:0;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;font:inherit;font-size:12px;font-weight:850;transition:border-color .16s ease,background .16s ease,color .16s ease}
.guest-language-toggle:hover{border-color:#4a5a78;background:#171d28;color:var(--text)}
/* Search */
.search-form{position:relative}
#search-input{width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--panel);color:var(--text);outline:none}
#search-input::placeholder{color:#72809d}
.suggestions{position:absolute;top:48px;left:0;right:0;background:var(--panel-2);border:1px solid var(--border);border-radius:12px;z-index:5;display:none;max-height:360px;overflow:auto;box-shadow:var(--shadow)}
.suggestion{display:flex;gap:10px;padding:10px;cursor:pointer;align-items:center}
.suggestion:hover,.suggestion.is-active{background:#222838}
.suggestion.is-active{outline:2px solid rgba(91,140,255,.55);outline-offset:-2px}
.suggestion .subtitle{color:var(--muted);font-size:.9em}
.suggestion-state{cursor:default;color:var(--text)}
.suggestion-state:hover{background:transparent}
.suggestion-loading{min-height:72px;justify-content:center;text-align:center}
.suggestion-loading-text{font-weight:600}
.suggestion-spinner{width:22px;height:22px;flex:0 0 auto;border:3px solid rgba(170,177,197,.28);border-top-color:var(--primary);border-radius:50%;animation:suggestion-spin .8s linear infinite}
@keyframes suggestion-spin{to{transform:rotate(360deg)}}
.suggestion img{width:36px;height:52px;object-fit:cover;border-radius:6px}

/* Cards */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;margin-top:16px}
.card{border:1px solid var(--border);border-radius:14px;overflow:hidden;text-decoration:none;color:inherit;display:block;background:var(--panel);transition:transform .15s ease, box-shadow .2s ease}
.card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.card img{width:100%;height:260px;object-fit:cover}
.card-poster-placeholder{display:block;width:100%;height:260px;object-fit:cover;background:#101827}
.card-body{padding:10px}
.card .title{font-weight:700}
.card .subtitle{color:var(--muted);font-size:0.9em}
.card-progress{display:grid;gap:6px;margin-top:8px;padding-top:8px;border-top:1px solid rgba(56,68,91,.72)}
.card-progress-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#dce5f8;font-size:12px}
.card-progress-summary strong{font-weight:780}
.card-progress-summary span{color:#9ab7ff;font-weight:850}
.card-progress-last{min-width:0;min-height:17px;overflow:hidden;color:var(--muted);font-size:11px;line-height:1.4;text-overflow:ellipsis;white-space:nowrap}
.card-progress.is-complete .card-progress-last{color:#9be7bf;font-weight:750}
.card-progress-bar{display:block;width:100%;overflow:hidden;appearance:none;-webkit-appearance:none;border:0;border-radius:999px;background:#263148;color:var(--primary)}
.card-progress-bar{height:7px}
.card-progress-bar::-webkit-progress-bar{border-radius:999px;background:#263148}
.card-progress-bar::-webkit-progress-value{border-radius:999px;background:linear-gradient(90deg,#507fe9,#78a1ff);transition:width .2s ease}
.card-progress-bar::-moz-progress-bar{border-radius:999px;background:linear-gradient(90deg,#507fe9,#78a1ff)}
.card-progress.is-complete .card-progress-bar::-webkit-progress-value{background:linear-gradient(90deg,#2eaf78,#58d69d)}
.card-progress.is-complete .card-progress-bar::-moz-progress-bar{background:linear-gradient(90deg,#2eaf78,#58d69d)}

/* Show page */
.poster-placeholder{display:block;aspect-ratio:2/3;object-fit:cover;background:#101827;border:1px solid var(--border);padding:0}
.poster-placeholder-image{display:block;width:100%;height:100%;object-fit:cover}
.show-action-box{display:contents}
.show-primary-actions{display:flex;align-items:center;gap:10px;margin-top:1em;flex-wrap:nowrap}
.show-primary-actions:not(:has(> :not([hidden]))){display:none}
.show-primary-actions .btn,.show-primary-actions .btn:visited{display:inline-flex;min-height:0;flex:0 0 auto;align-items:center;padding:5px 8px;border:1px solid rgba(73,88,116,.72);border-radius:8px;background:rgba(35,44,61,.48);color:#b8c5da;font-size:13px;line-height:1.35;text-align:left;text-decoration:none;white-space:nowrap;transition:border-color .16s ease,background .16s ease,color .16s ease}
.show-primary-actions .btn:hover{border-color:rgba(102,127,174,.78);background:rgba(50,65,91,.66);color:#edf3ff;text-decoration:none}
.show-primary-actions .btn:focus-visible{border-color:#648ff5;outline:0;box-shadow:0 0 0 3px rgba(91,140,255,.18)}
.show-primary-actions .btn.secondary{border:1px solid rgba(73,88,116,.72);background:rgba(35,44,61,.48);color:#b8c5da}
.show-rating-sources{display:flex;min-width:0;align-items:center;gap:5px;flex-wrap:wrap}
.show-rating-source{display:inline-flex;min-height:30px;align-items:center;gap:5px;padding:4px 7px;border:1px solid rgba(55,68,92,.72);border-radius:8px;background:rgba(24,31,44,.6);color:#9da9bd;font-size:11px;line-height:1.2;text-decoration:none;white-space:nowrap}
.show-rating-source-icon{display:block;width:16px;height:16px;flex:0 0 16px;object-fit:contain}
.show-rating-source-icon-metacritic{padding:2px;border-radius:50%;background:#f5c842}
.show-rating-source-score{display:inline-flex;align-items:baseline;gap:2px}
a.show-rating-source:hover,button.show-rating-source:hover{border-color:rgba(94,119,165,.78);background:rgba(43,55,77,.72);color:#dbe5f7;text-decoration:none}
a.show-rating-source:focus-visible,button.show-rating-source:focus-visible{border-color:#648ff5;outline:0;box-shadow:0 0 0 3px rgba(91,140,255,.18)}
button.show-rating-source{font-family:inherit;cursor:pointer}
.show-watch-progress{display:flex;align-items:center;justify-content:flex-end;gap:22px;min-width:max-content}
.show-watch-progress-copy{display:grid;min-width:146px;gap:10px;text-align:right}
.show-watch-progress-copy strong{color:#aeb7c8;font-size:17px;font-weight:680;line-height:1.2}
.show-watch-progress-last{min-width:0;overflow:hidden;color:#aeb7c8;font-size:16px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}
.show-watch-progress-action{position:relative;display:flex;width:126px;aspect-ratio:1;flex:0 0 auto;align-items:center;justify-content:center;flex-direction:column;gap:3px;padding:14px;border:0;border-radius:50%;background:transparent;color:#f4f7ff;cursor:pointer;transition:transform .18s ease,filter .18s ease}
.show-watch-progress-action:hover{transform:translateY(-2px);filter:drop-shadow(0 8px 15px rgba(42,91,204,.3))}
.show-watch-progress-action:focus-visible{outline:3px solid rgba(91,140,255,.55);outline-offset:4px}
.show-watch-progress-action:disabled{cursor:wait;opacity:.65}
.show-watch-progress-action.is-loading{animation:show-progress-pulse .8s ease-in-out infinite alternate}
.show-watch-progress-ring{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.show-watch-progress-ring-track,.show-watch-progress-ring-value{fill:none;stroke-width:6}
.show-watch-progress-ring-track{stroke:#273249}
.show-watch-progress-ring-value{stroke:#5b8cff;stroke-linecap:round;transform:rotate(-90deg);transform-origin:50% 50%;transition:stroke-dasharray .24s ease}
.show-watch-progress-action-code{position:relative;color:#f7f9ff;font-size:26px;font-weight:900;line-height:1;letter-spacing:-.035em}
.show-watch-progress-action-label{position:relative;max-width:86px;color:#cbd5ea;font-size:12px;line-height:1.15;text-align:center}
.show-watch-progress-action-replay .show-watch-progress-ring-value{stroke:var(--success)}
.show-watch-progress-action-replay:hover{filter:drop-shadow(0 8px 15px rgba(54,199,138,.25))}
.show-watch-progress-action-replay .show-watch-progress-action-code{font-size:22px}
.show-watch-progress-action-replay .show-watch-progress-action-label{font-size:11px}
@keyframes show-progress-pulse{from{opacity:.55}to{opacity:.9}}

/* Show details: movie-style geometry with the series color system */
.show-main{max-width:var(--content-max-width);padding-top:28px!important}
.show-page{display:grid;gap:26px;padding-bottom:44px}
.show-detail-hero{--hero-backdrop-opacity:.2;--hero-shade-left:.9;--hero-shade-middle:.76;--hero-shade-right:.48;--hero-shade-bottom:.84;position:relative;isolation:isolate;min-height:520px;overflow:hidden;border:1px solid #334665;border-radius:24px;background:#121a29;box-shadow:0 24px 65px rgba(0,0,0,.3)}
.show-detail-backdrop{position:absolute;z-index:-3;inset:0;width:100%;height:100%;object-fit:cover;opacity:var(--hero-backdrop-opacity);filter:blur(1px) saturate(.9) contrast(1.06);transform:scale(1.015)}
.show-detail-hero-shade{position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,rgba(12,18,31,var(--hero-shade-left)) 4%,rgba(15,23,39,var(--hero-shade-middle)) 44%,rgba(14,21,35,var(--hero-shade-right))),linear-gradient(0deg,rgba(12,18,30,var(--hero-shade-bottom)),transparent 62%)}
.show-detail-hero-content{position:relative;display:grid;min-height:520px;grid-template-columns:260px minmax(0,1fr);align-items:end;gap:36px;padding:36px}
.show-detail-poster-column{display:grid;align-self:start;justify-items:center;gap:12px;padding-top:8px}
.show-detail-poster-frame{overflow:hidden;border:1px solid rgba(164,190,255,.23);border-radius:16px;background:#0d1421;box-shadow:0 18px 45px rgba(0,0,0,.38)}
.show-poster-plan-button,.movie-plan-button{min-width:132px;height:38px;min-height:38px;overflow:hidden;padding:8px 11px;text-overflow:ellipsis;white-space:nowrap}
.show-detail-poster{display:block;width:100%;aspect-ratio:2/3;object-fit:cover}
.show-detail-poster-placeholder{border:0;border-radius:0;background:#121b2b}
.show-detail-hero-copy{min-width:0;align-self:start;padding:0 0 2px}
.show-detail-hero-copy h1{max-width:950px;margin:0;color:#f5f8ff;font-size:clamp(36px,5vw,64px);font-weight:880;line-height:1.02;letter-spacing:-.035em;text-wrap:balance}
.show-detail-original-title{margin-top:9px;color:#b9c7e2;font-size:18px;line-height:1.35}
.show-detail-kicker{margin-bottom:7px;color:#91afff;font-size:12px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.show-detail-facts-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:24px;margin-top:22px}
.show-detail-facts{display:flex;min-width:0;align-items:stretch;gap:8px;margin:0;padding:0;list-style:none;flex-wrap:wrap}
.show-detail-facts li{display:grid;align-content:center;gap:3px;min-height:52px;padding:8px 11px;border:1px solid rgba(129,163,237,.27);border-radius:10px;background:rgba(18,27,45,.68);backdrop-filter:blur(7px)}
.show-detail-facts strong{color:#94acd8;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.show-detail-facts span{color:#e7edf9;font-size:13px;line-height:1.3}
.show-detail-facts .show-status-fact{--show-status-accent:#9ca9bd;--show-status-border:rgba(129,145,170,.27);--show-status-bg:rgba(85,101,128,.09);border-color:var(--show-status-border);background:linear-gradient(var(--show-status-bg),var(--show-status-bg)),rgba(18,27,45,.68)}
.show-status-fact--active{--show-status-accent:#86bea5;--show-status-border:rgba(102,159,134,.34);--show-status-bg:rgba(64,123,96,.1)}
.show-status-fact--ended{--show-status-accent:#aeb8c9;--show-status-border:rgba(132,145,166,.3);--show-status-bg:rgba(91,104,125,.08)}
.show-status-fact--upcoming{--show-status-accent:#c1ad78;--show-status-border:rgba(168,145,91,.33);--show-status-bg:rgba(128,103,49,.09)}
.show-status-fact--pending{--show-status-accent:#aaa0c4;--show-status-border:rgba(139,125,170,.32);--show-status-bg:rgba(99,82,132,.09)}
.show-detail-facts .show-status-fact span{display:inline-flex;align-items:center;gap:6px;color:var(--show-status-accent)}
.show-status-fact span::before{content:"";width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:currentColor;opacity:.78}
.show-detail-hero .show-primary-actions{gap:8px;margin-top:18px;flex-wrap:wrap}
.show-detail-hero .show-primary-actions .btn,.show-detail-hero .show-primary-actions .btn:visited{border-color:rgba(114,145,210,.5);background:rgba(34,50,78,.72);color:#dbe6fb}
.show-detail-hero .show-primary-actions .btn,.show-detail-hero .show-primary-actions .btn:visited,.movie-primary-actions .btn{min-height:38px;padding:9px 13px;border-radius:10px;font-family:inherit;font-size:14px;line-height:1.35}
.show-detail-hero .show-primary-actions .btn:not(.secondary){border-color:transparent;background:var(--primary);color:#fff}
.show-detail-hero .show-primary-actions .btn:hover{border-color:#7192d6;background:#304b7c;color:#fff}
.show-detail-hero .show-primary-actions .btn:not(.secondary):hover{border-color:transparent;background:var(--primary-600)}
.show-rating-block{display:grid;gap:7px}
.show-control-label,.movie-control-label{font-size:11px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
.show-control-label{color:#9aaed2}
.show-rating-control{display:flex;min-height:38px;align-items:center;gap:8px;flex-wrap:wrap}
.stars.show-rating-stars,.movie-rating-stars{display:flex;align-items:center;gap:3px}
.show-rating-stars .star,.movie-rating-star{display:inline-flex;width:34px;height:38px;align-items:center;justify-content:center;padding:0;border:1px solid transparent;border-radius:8px;background:transparent;cursor:pointer;font-family:inherit;font-size:24px;font-weight:400;line-height:1;transition:color .14s ease,background .14s ease,transform .14s ease}
.show-rating-stars .star .ui-icon,.movie-rating-star .ui-icon{width:22px;height:22px}
.show-rating-stars .star{color:#4d5a72}
.show-rating-stars .star:hover,.show-rating-stars .star.filled,.movie-rating-star:hover,.movie-rating-star.is-active{color:#ffc04d;background:rgba(255,192,77,.08)}
.show-rating-stars .star.filled .ui-icon,.movie-rating-star.is-active .ui-icon{fill:currentColor}
.show-rating-stars .star:hover,.movie-rating-star:hover{transform:translateY(-1px)}
.show-detail-content-grid{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"summary" "aside" "seasons";align-items:start;gap:22px}
.show-detail-content-grid.has-aside{grid-template-columns:minmax(0,1fr) var(--media-detail-aside-width);grid-template-rows:max-content minmax(0,1fr);grid-template-areas:"summary aside" "seasons aside"}
.show-detail-summary-section{grid-area:summary;min-width:0}
.show-detail-section,.show-detail-side-card{border:1px solid var(--border);border-radius:18px;background:rgba(22,28,40,.88);box-shadow:0 14px 34px rgba(0,0,0,.12)}
.show-detail-section,.movie-section{padding:24px}
.show-detail-section-heading,.movie-section-heading{margin-bottom:18px}
.show-detail-section-heading h2,.show-detail-side-card h2,.movie-section-heading h2,.movie-side-card h2{margin:0;font-size:25px;line-height:1.18;letter-spacing:-.02em}
.show-detail-section-heading h2,.show-detail-side-card h2{color:#f1f5ff}
.show-detail-summary,.movie-summary{font-size:16px;line-height:1.72}
.show-detail-summary{color:#d7deed}
.show-detail-summary>:first-child{margin-top:0}
.show-detail-summary>:last-child{margin-bottom:0}
.show-detail-seasons-section{grid-area:seasons;min-width:0}
.show-detail-seasons-section .seasons-toggle{margin:0;padding-bottom:12px}
.show-detail-content-aside,.movie-content-aside{position:sticky;top:16px;display:grid;align-self:start;gap:14px}
.show-detail-content-aside{grid-area:aside}
.show-detail-side-card,.movie-side-card{padding:18px}
.show-detail-side-card h2,.movie-side-card h2{margin-bottom:14px;font-size:19px}
.show-detail-rating-list,.movie-external-ratings{display:grid;width:100%;gap:8px}
.show-detail-rating-list .show-rating-source,.movie-external-rating{display:grid;width:100%;grid-template-columns:28px minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:center;gap:2px 11px;padding:10px;border-radius:11px;color:inherit;font:inherit;text-align:left;text-decoration:none}
.show-detail-rating-list .show-rating-source{border:1px solid #35435c;background:#171f2d}
.show-detail-rating-list .show-rating-source:hover{border-color:var(--primary-border);background:#202c41}
.show-detail-rating-list .show-rating-source-icon,.movie-external-rating-icon{display:block;width:28px;height:28px;grid-row:1/3;flex:0 0 28px;object-fit:contain}
.show-detail-rating-list .show-rating-source-label,.movie-external-rating-label{min-width:0;overflow:hidden;font-size:10px;font-weight:850;line-height:1;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}
.show-detail-rating-list .show-rating-source-label{color:#aebbd2}
.show-detail-rating-list .show-rating-source-score,.movie-external-rating-score{display:inline-flex;grid-column:2;align-items:baseline;justify-self:start;gap:2px;line-height:1}
.show-detail-rating-list .show-rating-source-score strong,.movie-external-rating-score strong{font-size:19px;font-weight:700;line-height:1}
.show-detail-rating-list .show-rating-source-score strong{color:#f4f7ff}
.show-detail-rating-list .show-rating-source-score small,.movie-external-rating-score small{font-size:11px}
.show-detail-rating-list .show-rating-source-score small{color:#8491a8}
.show-detail-rating-list .show-rating-source-local .show-rating-source-score strong,.movie-external-rating-local .movie-external-rating-score strong{color:#f2c66d}
.media-rating-votes{grid-column:3;grid-row:1/3;align-self:center;color:var(--muted);font-size:9px;font-weight:650;line-height:1.25;text-align:right;white-space:nowrap}
.show-sidebar-rating,.movie-sidebar-rating{display:grid;gap:7px;margin-top:14px;padding-top:14px;text-align:left}
.show-sidebar-rating{border-top:1px solid #35435c}
.show-detail-provider-list,.movie-provider-list{display:grid;gap:8px}
.show-detail-provider,.movie-provider{position:relative;display:grid;gap:3px;padding:10px 32px 10px 11px;border-radius:11px;color:inherit;text-decoration:none}
.show-detail-provider{border:1px solid #35435c;background:#171f2d}
a.show-detail-provider:hover{border-color:var(--primary-border);background:#202c41}
.show-detail-provider strong,.movie-provider strong{font-size:13px}
.show-detail-provider strong{color:#e7edf8}
.show-detail-provider span,.movie-provider span{font-size:10px;line-height:1.35}
.show-detail-provider span{color:#9eabc1}
.show-detail-provider b,.movie-provider b{position:absolute;top:50%;right:11px;font-size:14px;transform:translateY(-50%)}
.show-detail-provider b .ui-icon,.movie-provider b .ui-icon{width:14px;height:14px}
.show-detail-provider b{color:#91afff}
.show-detail-provider-note,.movie-provider-note{margin:12px 0 0;font-size:10px;line-height:1.45}
.show-detail-provider-note{color:#8997ad}
.show-page a:focus-visible,.show-page button:focus-visible{outline:0;box-shadow:var(--focus-ring)}
.media-auth-hint{margin:12px 0 0;color:var(--muted);font-size:12px;line-height:1.4}
.show-auth-hint{color:#aebddd}
.seasons-toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:38px 0 0;padding-bottom:12px;border-bottom:1px solid rgba(49,61,84,.72)}
.seasons-title{margin:0;font-size:24px;line-height:1.2;letter-spacing:-.015em}
.seasons-heading-actions{display:flex;align-items:center;gap:5px}
.season-mobile-mark-all{display:none}
.seasons-toggle #toggle-download-view{display:inline-flex;align-items:center;gap:7px;padding:7px 9px;border-color:transparent;background:transparent;color:#9da9bd;font-size:14px}
.seasons-toggle #toggle-download-view .ui-icon{width:19px;height:19px;color:#b9c7df}
.seasons-toggle #toggle-download-view:hover{border-color:transparent;background:rgba(91,140,255,.09);color:#e0e7f5}
.seasons{position:relative}
.seasons>.tabs{min-height:36px;margin:14px 0 16px;padding-right:174px}
.season-actions{position:absolute;z-index:1;top:14px;right:0;margin:0}
.season-actions .mark-all{display:inline-flex;align-items:center;gap:7px;padding:8px 9px;border:0;background:transparent;color:#98a5ba;font-size:13px;font-weight:650}
.season-actions .mark-all .ui-icon{width:19px;height:19px;color:#aebfe0}
.season-actions .mark-all:hover{background:rgba(91,140,255,.09);color:#e0e7f5}

/* Buttons */
.btn{display:inline-block;padding:10px 14px;background:var(--primary);color:#fff;border-radius:10px;text-decoration:none;border:none;cursor:pointer;transition:background .2s ease,opacity .2s ease}
.btn:hover{background:var(--primary-600)}
.btn.secondary{background:transparent;color:var(--text);border:1px solid var(--border)}
.btn.danger{border:1px solid rgba(255,93,93,.45);background:#8f2e3e;color:#fff}
.btn.danger:hover{background:#a83a4c}
.btn.small{padding:7px 10px;border-radius:8px;font-size:14px}
.btn.action-with-icon{display:inline-flex;align-items:center;justify-content:center;gap:7px}
.btn.link{background:transparent;color:var(--muted);border:none;padding:0}
.btn.link:hover{color:#c2c9da}
.btn:disabled,.btn[aria-disabled="true"]{opacity:.58;cursor:not-allowed}
.btn:disabled:hover,.btn[aria-disabled="true"]:hover{background:var(--primary)}
.btn.secondary:disabled:hover,.btn.secondary[aria-disabled="true"]:hover{background:transparent}
.btn.is-loading{display:inline-flex;align-items:center;justify-content:center;gap:8px;opacity:.86;cursor:progress;white-space:nowrap}
.btn.is-loading::before{content:"";width:14px;height:14px;flex:0 0 auto;border:2px solid rgba(170,177,197,.35);border-top-color:currentColor;border-radius:50%;animation:suggestion-spin .8s linear infinite}

/* Tabs */
.tabs{display:flex;gap:8px;margin:12px 0;flex-wrap:wrap}
.tab-btn{padding:8px 12px;border:1px solid var(--border);background:var(--panel);border-radius:10px;cursor:pointer;color:var(--text);display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.2}
.tab-btn.active{background:#2a3346}
.library-tabs{max-width:100%;margin-bottom:12px;overflow-x:auto;scrollbar-width:thin}
.library-tabs .tab-btn{flex:0 0 auto;white-space:nowrap}

/* Episodes */
.episodes{list-style:none;margin:0;padding:6px 12px;background:var(--panel);border:1px solid var(--border);border-radius:12px}
.episodes li{display:flex;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--border);padding:6px 0}
.episodes li:last-child{border-bottom:none}
.episodes li.is-upcoming{margin:0 -6px;padding:6px;border-radius:8px;background:rgba(91,140,255,.035)}
.episodes li.is-upcoming .ep-title-main,.episodes li.is-upcoming .airdate{color:#929db2}
.episodes li.is-upcoming .airdate::before{content:"";display:inline-block;width:5px;height:5px;margin:0 7px 2px 0;border-radius:50%;background:#6685c5}
.ep-row{display:flex;align-items:center;justify-content:space-between;padding:4px 0;gap:10px}
.ep-title{margin-left:8px;flex:1;min-width:0;background:transparent;color:inherit;border:none;cursor:pointer;text-align:left;padding:4px 0;display:flex;flex-direction:column;gap:2px}
.ep-title:hover{color:#cbd4e6}
.ep-title:disabled{color:#7f899d;cursor:default}
.ep-title:disabled:hover{color:#7f899d}
.ep-title-main{display:block;max-width:100%;white-space:normal;overflow-wrap:anywhere;word-break:normal;line-height:1.35}
.episode-summary-secondary{color:var(--muted);font-size:.9em}
.ep-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}
.episode-facts{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:.9em;white-space:nowrap}
.episode-facts span+span::before{content:"·";margin-right:7px;color:#5f6b82}
.ep-details{color:var(--muted);padding:6px 4px 10px 36px;line-height:1.5}
.episode-summary-primary{color:var(--text)}
.episode-summary-divider{height:1px;margin:10px 0;border:0;background:var(--border)}
.episode-summary-secondary{margin-top:6px}
.episode-summary-title-en{margin-bottom:4px;color:#cbd4e6;font-weight:600}
.episode-summary-text-en{color:var(--muted)}
.season-translation-status{display:flex;align-items:center;gap:8px;margin:8px 0 12px;color:var(--muted);font-size:14px}
.season-translation-status[hidden]{display:none}
.season-translation-spinner{width:16px;height:16px;flex:0 0 auto;border:2px solid rgba(170,177,197,.28);border-top-color:var(--primary);border-radius:50%;animation:suggestion-spin .8s linear infinite}

/* Pretty checkbox for watched (centered crisp tick, no overflow, brand color) */
.watch-toggle,.review-public-checkbox{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:22px;height:22px;border-radius:6px;position:relative;background:#121722;border:1px solid #33405b;cursor:pointer;transition:background .2s ease, border-color .2s ease, box-shadow .2s ease;outline:none;display:inline-block;overflow:hidden}
.watch-toggle:hover,.review-public-checkbox:hover{border-color:#3b4866}
.watch-toggle:focus-visible,.review-public-checkbox:focus-visible{box-shadow:0 0 0 3px rgba(91,140,255,.35);border-color:var(--primary)}
/* Inline Lucide check avoids a separate late-loading icon request. */
.watch-toggle::before,.review-public-checkbox::before{content:"";position:absolute;left:50%;top:50%;width:14px;height:14px;background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0yMCA2IDkgMTdsLTUtNSIvPjwvc3ZnPg==") center/contain no-repeat;transform:translate(-50%,-50%) scale(0);transform-origin:center;transition:transform .14s ease}
/* use brand primary color */
.watch-toggle:checked,.review-public-checkbox:checked{background:var(--primary);border-color:var(--primary);box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}
.watch-toggle:checked::before,.review-public-checkbox:checked::before{transform:translate(-50%,-50%) scale(1)}

/* Episode airdate */
.airdate{color:inherit;font-size:inherit}

/* Stars */
.stars{display:inline-flex;gap:6px;cursor:pointer}
.star{padding:0;border:0;background:transparent;color:#6b748a;font:inherit;font-size:20px;line-height:1;cursor:pointer;transition:color .15s ease,transform .15s ease}
.star.filled{color:#f7b500}
.star .ui-icon{width:20px;height:20px}
.star.filled .ui-icon{fill:currentColor}
.star:hover{transform:translateY(-1px)}
.star:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:3px}
.star:disabled{cursor:wait;opacity:.72}
.episode-note-button{padding:5px 7px;border:1px solid transparent;border-radius:7px;background:transparent;color:#8f9ab0;font-size:12px;line-height:1;white-space:nowrap;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}
.episode-note-button:hover,.episode-note-button:focus-visible{border-color:#39465f;background:#171e2a;color:#d4dded;outline:0}
.episode-note-button.has-note{border-color:rgba(91,140,255,.32);background:rgba(91,140,255,.09);color:#a9c1ff}

/* Reviews and private notes */
.review-editor-dialog,.episode-note-dialog{width:min(620px,calc(100vw - 32px))}
.modal-dialog.reviews-list-dialog{position:absolute;top:16px;right:auto;bottom:16px;left:50%;display:flex;width:min(760px,calc(100vw - 32px));max-width:none;max-height:none;margin:0;overflow:hidden;flex-direction:column;transform:translateX(-50%)}
.review-editor-body{display:grid;gap:15px}
.review-rating-fieldset{min-width:0;margin:0;padding:0;border:0}
.review-completion-message{margin-bottom:14px;color:#cbd5e1;font-size:14px;line-height:1.5}
.review-rating-fieldset legend,.review-text-field>span{display:block;margin-bottom:7px;color:#cbd3e3;font-size:13px;font-weight:750}
.review-editor-stars{gap:9px}
.review-editor-star{font-size:30px}
.review-text-field{display:block}
.review-text-field textarea{display:block;width:100%;resize:vertical;min-height:126px;padding:12px 13px;border:1px solid #34405a;border-radius:10px;background:#10151f;color:var(--text);font:inherit;line-height:1.5;outline:0}
.review-text-field textarea:focus{border-color:#648ff5;box-shadow:0 0 0 3px rgba(91,140,255,.16)}
.review-text-field textarea::placeholder{color:#77839a}
.review-public-toggle{display:flex;align-items:flex-start;gap:11px;padding:12px;border:1px solid #303b50;border-radius:11px;background:#121824;cursor:pointer}
.review-public-toggle input.review-public-checkbox{flex:0 0 auto;margin:1px 0 0}
.review-public-toggle span{display:grid;gap:3px}
.review-public-toggle strong{font-size:14px}
.review-public-toggle small,.review-field-hint{color:var(--muted);font-size:12px;line-height:1.4}
.review-form-status{min-height:19px;color:#8eddb6;font-size:13px}
.review-form-status.is-error,.review-list-state.is-error{color:#ffafba}
.modal-body.reviews-list-body{flex:1 1 auto;min-height:0;margin-bottom:0;overflow:auto;padding-right:4px}
.review-list-state{display:flex;min-height:100px;align-items:center;justify-content:center;color:var(--muted);text-align:center}
.review-list-empty{flex-direction:column;gap:8px}
.review-list-empty p{margin:0}
.review-list-first-action{margin-top:4px;font:inherit}
.viewer-review{padding:14px 2px;border-bottom:1px solid var(--border)}
.viewer-review:first-child{padding-top:3px}
.viewer-review:last-child{border-bottom:0}
.viewer-review-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}
.viewer-review-heading strong{min-width:0;overflow-wrap:anywhere;color:#edf1f9;font-size:14px}
.viewer-review-rating{display:inline-flex;flex:0 0 auto;align-items:center;gap:2px;color:#596479}
.viewer-review-rating .ui-icon{width:14px;height:14px}
.viewer-review-rating .ui-icon.is-filled{fill:currentColor;color:#f7b500}
.viewer-review p{margin:9px 0 0;color:#c7cfdd;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}

/* Auth forms */
.auth-form{max-width:440px;background:var(--panel);padding:16px;border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow)}
.auth-form .form-row input{min-height:50px;padding:13px 15px;font-size:16px;line-height:1.35}
.password-field-control{position:relative;width:100%;min-width:0}
.auth-form .password-field-control input,.profile-fields .password-field-control input{width:100%;padding-right:49px}
.password-visibility-toggle{position:absolute;top:50%;right:5px;display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;padding:0;transform:translateY(-50%);border:0;border-radius:8px;background:transparent;color:#8f9bb0;cursor:pointer;transition:background .16s ease,color .16s ease,box-shadow .16s ease}
.password-visibility-toggle:hover{background:rgba(var(--primary-rgb),.12);color:color-mix(in srgb,var(--primary) 72%,white)}
.password-visibility-toggle:focus-visible{outline:0;box-shadow:var(--focus-ring)}
.password-visibility-toggle .ui-icon{width:19px;height:19px}
.form-row{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}
.form-row label{color:var(--muted);font-size:14px}
.form-row input,.form-row select{padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:#121722;color:var(--text);outline:none}
.form-row select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--muted) 50%),linear-gradient(135deg, var(--muted) 50%, transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 12px) 50%;background-size:6px 6px,6px 6px;background-repeat:no-repeat}
.app-select-native{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
.app-select{position:relative;width:100%;min-width:0}
.app-select-trigger{display:flex;width:100%;min-height:48px;align-items:center;justify-content:space-between;gap:12px;padding:10px 13px;border:1px solid #303b50;border-radius:10px;background:#101620;color:var(--text);font:inherit;line-height:1.35;text-align:left;cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}
.app-select-trigger:hover{border-color:#465571;background:#141b28}
.app-select-trigger:focus-visible,.app-select.is-open .app-select-trigger{border-color:#648ff5;outline:0;box-shadow:0 0 0 3px rgba(91,140,255,.16)}
.app-select-trigger:disabled{cursor:not-allowed;opacity:.58}
.app-select-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.app-select-chevron{width:16px;height:16px;flex:0 0 auto;color:#9da9bf;transition:transform .16s ease}
.app-select.is-open .app-select-chevron{transform:rotate(180deg)}
.app-select-menu{position:fixed;z-index:1000;display:none;max-height:min(280px,calc(100vh - 16px));overflow:auto;padding:5px;border:1px solid #35425a;border-radius:10px;background:#141a25;box-shadow:0 18px 42px rgba(0,0,0,.42)}
.app-select.is-open .app-select-menu{display:grid;gap:2px}
.app-select-option{display:flex;width:100%;align-items:center;padding:9px 10px;border:0;border-radius:7px;background:transparent;color:var(--text);font:inherit;line-height:1.25;text-align:left;cursor:pointer}
.app-select-option:hover,.app-select-option:focus-visible{background:#232d40;outline:0}
.app-select-option.is-selected{background:rgba(91,140,255,.18);color:#dce7ff;font-weight:750}
.app-select-option-check{width:16px;height:16px;margin-left:auto;color:#8fb0ff}
.app-select-option:disabled{cursor:not-allowed;opacity:.45}
.app-select.is-compact{min-width:128px}
.app-select.is-compact .app-select-trigger{min-height:34px;padding:7px 10px;border-radius:8px;font-size:13px}
.app-select.is-compact .app-select-menu{font-size:13px}
.app-select.is-compact .app-select-option{padding:8px 9px}
.form-actions{display:flex;gap:10px;align-items:center}
.error{background:#2b1620;border:1px solid #6a1e32;color:#ffb3c1;padding:10px;border-radius:10px;margin-bottom:12px}
.success{background:#11231a;border:1px solid #1e6a42;color:#b6ffdd;padding:10px;border-radius:10px;margin-bottom:12px}
.profile-body{background:radial-gradient(circle at 50% -14%,rgba(var(--primary-rgb),.14),transparent 34rem),var(--bg)}
.profile-page{display:grid;width:100%;max-width:788px;gap:16px;min-width:0;margin:0 auto}
.profile-hero{padding:0 2px 8px}
.profile-hero .page-top-heading{margin-top:-10px}
.profile-hero h1{margin-bottom:7px;font-size:clamp(30px,5vw,44px);line-height:1.08;letter-spacing:-.035em}
.profile-hero p{max-width:620px;margin:0;color:var(--muted);line-height:1.55}
.profile-settings-form{display:grid;gap:14px}
.profile-feedback{margin:0}
.profile-settings-card{overflow:hidden;border:1px solid #2b3549;border-radius:16px;background:linear-gradient(145deg,rgba(27,33,46,.98),rgba(18,23,33,.98));box-shadow:0 14px 36px rgba(0,0,0,.17)}
.profile-section-heading{display:flex;align-items:flex-start;gap:13px;padding:18px 20px 15px;border-bottom:1px solid rgba(56,68,91,.72);background:linear-gradient(180deg,rgba(35,44,62,.55),rgba(27,33,46,.2))}
.profile-section-heading h2{margin:0;color:#f3f6ff;font-size:18px;line-height:1.25}
.profile-section-heading p{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.45}
.profile-section-icon{display:inline-flex;width:36px;height:36px;flex:0 0 auto;align-items:center;justify-content:center;border:1px solid var(--primary-border);border-radius:11px;background:var(--primary-soft);color:var(--primary);font-size:18px;font-weight:900}
.profile-fields{display:grid;gap:14px;padding:18px 20px 20px}
.profile-fields-account,.profile-password-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.profile-fields-account-options{padding-top:0}
.profile-fields .form-row{min-width:0;margin:0}
.profile-fields .form-row input,.profile-fields .form-row select{width:100%;min-height:48px;background:#101620;border-color:#303b50;font:inherit;line-height:1.35;transition:border-color .16s ease,box-shadow .16s ease}
.profile-fields .form-row input{padding-top:10px;padding-bottom:12px}
.profile-fields .form-row input:focus,.profile-fields .form-row select:focus{border-color:#648ff5;box-shadow:0 0 0 3px rgba(91,140,255,.16)}
.profile-fields .form-row label{color:#c3cbda;font-weight:700}
.profile-field-hint{color:#7f8ba3;font-size:12px;line-height:1.45}
.profile-display-option{display:flex;align-items:flex-start;gap:10px;padding:13px;border:1px solid #303b50;border-radius:11px;background:#101620;cursor:pointer}
.profile-display-option .watch-toggle{width:22px;min-width:22px;height:22px;min-height:22px;flex:0 0 auto;margin-top:1px}
.profile-display-option span{display:grid;gap:4px;min-width:0}
.profile-display-option strong{color:#e7ecf8;font-size:14px;line-height:1.3}
.profile-display-option small{color:var(--muted);font-size:12px;line-height:1.4}
.profile-current-password{max-width:100%}
.profile-save-bar{display:flex;justify-content:flex-end;padding-top:2px}
.profile-save{min-width:148px;font-weight:820;box-shadow:0 9px 22px rgba(48,94,205,.26)}
.profile-dev-panel{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px 18px;border:1px solid rgba(113,84,192,.42);border-radius:16px;background:linear-gradient(135deg,rgba(48,37,77,.72),rgba(22,26,36,.98));box-shadow:0 14px 34px rgba(0,0,0,.15)}
.profile-dev-icon{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;border:1px solid rgba(174,142,255,.38);border-radius:12px;background:rgba(151,112,255,.13);color:#d3c2ff;font-size:13px;font-weight:900}
.profile-dev-icon .ui-icon{width:21px;height:21px}
.profile-dev-copy{min-width:0}
.profile-dev-title{font-weight:820;color:#f2f5ff}
.profile-dev-text{margin-top:3px;color:#b2b4c7;font-size:13px;line-height:1.4}
.profile-dev-action{display:inline-flex;align-items:center;gap:9px;white-space:nowrap}
.profile-notification-form{display:grid;gap:18px;padding:18px 20px 20px}
.profile-notification-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.profile-notification-option{display:flex;gap:10px;padding:13px;border:1px solid #303b50;border-radius:11px;background:#101620;cursor:pointer}
.profile-notification-option input.profile-notification-checkbox,.profile-channel-enabled input.profile-notification-checkbox{flex:0 0 auto;margin-top:1px}
.profile-notification-option span{display:grid;gap:4px;min-width:0}
.profile-notification-option strong{color:#e7ecf8;font-size:14px;line-height:1.3}
.profile-notification-option small{color:var(--muted);font-size:12px;line-height:1.4}
.profile-notification-channels{display:grid;gap:10px}
.profile-notification-channel{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border:1px solid #303b50;border-radius:11px;background:#111722}
.profile-notification-channel h3{margin:0 0 4px;font-size:16px}
.profile-notification-channel p{margin:0;color:var(--muted);font-size:13px;line-height:1.4}
.profile-notification-channel-actions{display:flex;align-items:center;gap:12px;flex:0 0 auto}
.profile-channel-enabled{display:flex;align-items:center;gap:7px;color:#cbd4e6;font-size:13px;cursor:pointer}
.profile-notification-footer{display:flex;align-items:center;justify-content:space-between;gap:14px}
.profile-notification-feedback{min-height:20px;color:var(--muted);font-size:13px}
.profile-notification-feedback.success{color:#aef5cf}.profile-notification-feedback.error{color:#ffc0c8}

/* Profile overview and section navigation */
.profile-main{max-width:var(--content-max-width)}
.profile-page{display:grid;width:100%;max-width:1180px;gap:20px;margin:0 auto;padding-bottom:28px}
.profile-hero{display:flex;align-items:center;gap:16px;padding:0 2px 5px}
.profile-hero-avatar{display:inline-flex;width:58px;height:58px;flex:0 0 auto;align-items:center;justify-content:center;border:1px solid var(--primary-border);border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 88%,white),color-mix(in srgb,var(--primary) 64%,#172033));color:#fff;font-size:28px;font-weight:900;box-shadow:0 12px 30px rgba(var(--primary-rgb),.28)}
.profile-kicker,.profile-section-kicker{margin-bottom:5px;font-size:11px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.profile-kicker{color:var(--primary)}
.profile-section-kicker{color:#8eafff}
.profile-hero .page-top-heading{margin:0 0 4px;font-size:clamp(30px,4vw,42px)}
.profile-hero p{max-width:720px;margin:0;color:var(--muted);font-size:14px;line-height:1.5}
.profile-layout{display:grid;grid-template-columns:210px minmax(0,1fr);align-items:start;gap:22px}
.profile-menu-shell{min-width:0}
.profile-menu{position:sticky;top:16px;display:grid;gap:7px;padding:9px;border:1px solid rgba(var(--primary-rgb),.3);border-radius:16px;background:linear-gradient(160deg,color-mix(in srgb,var(--panel-2) 88%,var(--primary)),color-mix(in srgb,var(--panel) 94%,#080b10));box-shadow:0 16px 38px rgba(0,0,0,.19),0 0 28px rgba(var(--primary-rgb),.06)}
.profile-menu-item{display:grid;min-width:0;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;padding:9px 10px;border:1px solid transparent;border-radius:11px;color:color-mix(in srgb,var(--muted) 82%,var(--primary));font-size:13px;font-weight:760;line-height:1.3;text-decoration:none;transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease}
.profile-menu-item:hover{border-color:var(--primary-border);background:var(--primary-soft);color:#f0f2f7;transform:translateX(2px)}
.profile-menu-item.is-active{border-color:var(--primary-border);background:linear-gradient(135deg,rgba(var(--primary-rgb),.22),rgba(var(--primary-rgb),.08));color:#eef4ff;box-shadow:inset 3px 0 var(--primary)}
.profile-menu-item:focus-visible{outline:0;border-color:var(--primary);box-shadow:var(--focus-ring)}
.profile-menu-icon{display:inline-flex;width:32px;height:32px;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--border) 78%,var(--primary));border-radius:9px;background:color-mix(in srgb,var(--panel) 90%,#090b0f);color:color-mix(in srgb,var(--muted) 76%,var(--primary));font-size:16px;font-weight:900}
.profile-menu-item.is-active .profile-menu-icon{border-color:var(--primary-border);background:var(--primary-soft);color:var(--primary)}
.profile-content{display:grid;min-width:0;gap:14px}
.profile-panel{display:grid;min-width:0;gap:14px}
.profile-panel[hidden]{display:none!important}
.profile-panel[aria-busy="true"]{cursor:progress}
.profile-statistics-view[data-profile-panel-loaded="false"] .profile-overview-badge,
.profile-statistics-view[data-profile-panel-loaded="false"] .profile-metric strong,
.profile-statistics-view[data-profile-panel-loaded="false"] .profile-watch-time-button strong,
.profile-statistics-view[data-profile-panel-loaded="false"] .profile-time-track span,
.profile-statistics-view[data-profile-panel-loaded="false"] .profile-time-legend strong,
.profile-statistics-view[data-profile-panel-loaded="false"] .profile-genre-list,
.profile-statistics-view[data-profile-panel-loaded="false"] .profile-mini-metrics strong,
.profile-statistics-view[data-profile-panel-loaded="false"] .profile-completion-heading strong,
.profile-statistics-view[data-profile-panel-loaded="false"] .profile-completion-track span,
.profile-statistics-view[data-profile-panel-loaded="false"] .profile-completion-legend b,
.profile-statistics-view[data-profile-panel-loaded="false"] .profile-genre-bars{visibility:hidden}
.profile-achievements-view[data-profile-panel-loaded="false"] .achievement-collection-score strong,
.profile-achievements-view[data-profile-panel-loaded="false"] .achievement-collection-progress span{visibility:hidden}
.profile-statistics-view[data-profile-panel-loaded="false"] .profile-share-button,
.profile-statistics-view[data-profile-panel-loaded="false"] .profile-watch-time-button{pointer-events:none;opacity:.58}
.achievement-tracking-settings-placeholder{min-height:1px}
.profile-settings-form{display:contents}
.profile-feedback{margin:0}

.profile-empty-state{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:15px 17px;border:1px solid var(--primary-border);border-radius:15px;background:linear-gradient(135deg,rgba(var(--primary-rgb),.14),color-mix(in srgb,var(--panel) 96%,#090b0f))}
.profile-empty-icon{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;border:1px solid var(--primary-border);border-radius:12px;background:var(--primary-soft);color:color-mix(in srgb,var(--primary) 70%,white);font-size:18px}
.profile-empty-icon .ui-icon{width:20px;height:20px}
.profile-empty-state strong{color:#f1f5ff;font-size:15px}
.profile-empty-state p{margin:4px 0 0;color:#9aa7bd;font-size:12px;line-height:1.45}
.profile-empty-actions{display:flex;align-items:center;gap:8px}
.profile-empty-actions .movie-button{border-color:#9b5737;background:#c96736;color:#fff}

.profile-stats-overview,.profile-insight-card,.profile-media-stat{border:1px solid #343943;border-radius:17px;box-shadow:0 16px 42px rgba(0,0,0,.18)}
.profile-stats-overview{--profile-general-accent:#57d2c1;--profile-general-soft:rgba(87,210,193,.11);overflow:hidden;border-color:rgba(87,210,193,.33);background:linear-gradient(145deg,rgba(22,31,31,.98),rgba(15,21,22,.98))}
.profile-insight-card{background:linear-gradient(145deg,rgba(26,28,33,.98),rgba(17,19,23,.98))}
.profile-media-stat{border-color:#2c374c;background:linear-gradient(145deg,rgba(26,33,47,.98),rgba(16,21,31,.98))}
.profile-stats-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:19px 20px 17px;border-bottom:1px solid rgba(87,210,193,.24);background:radial-gradient(circle at 92% 0,rgba(87,210,193,.14),transparent 38%),linear-gradient(180deg,rgba(35,44,62,.52),rgba(27,33,46,.15))}
.profile-stats-overview .profile-section-kicker{color:var(--profile-general-accent)}
.profile-stats-heading h2,.profile-media-stat-header h2{margin:0;color:#f4f7ff;font-size:20px;line-height:1.25}
.profile-stats-heading p,.profile-media-stat-header p{margin:5px 0 0;color:#98a5bb;font-size:12px;line-height:1.45}
.profile-stats-actions{display:flex;max-width:310px;flex:0 0 auto;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.profile-overview-badge{flex:0 0 auto;padding:7px 10px;border:1px solid rgba(87,210,193,.34);border-radius:999px;background:var(--profile-general-soft);color:#a9eee5;font-size:11px;font-weight:800;white-space:nowrap}
.profile-share-button{display:inline-flex;min-height:31px;align-items:center;justify-content:center;gap:7px;padding:7px 10px;border:1px solid rgba(87,210,193,.42);border-radius:9px;background:rgba(87,210,193,.14);color:#c5f7f0;cursor:pointer;font-family:inherit;font-size:11px;font-weight:800;line-height:1;transition:border-color .18s ease,background .18s ease,transform .18s ease}
.profile-share-button:hover{border-color:rgba(87,210,193,.72);background:rgba(87,210,193,.23);transform:translateY(-1px)}
.profile-share-button:focus-visible{outline:2px solid var(--profile-general-accent);outline-offset:2px}
.profile-share-button:disabled{cursor:wait;opacity:.7;transform:none}
.profile-share-button .ui-icon{width:15px;height:15px}
.profile-share-status{width:100%;min-height:13px;color:#8ebbb6;font-size:10px;line-height:1.3;text-align:right}
.profile-metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#29413f}
.profile-metric-grid-general{grid-template-columns:repeat(4,minmax(0,1fr))}
.profile-metric{display:grid;min-width:0;align-content:start;gap:3px;padding:16px 17px;background:#141d1e}
.profile-metric::before{content:"";width:24px;height:3px;margin-bottom:8px;border-radius:999px;background:var(--profile-general-accent,#6895ff)}
.profile-metric-label{overflow:hidden;color:#9aa7bc;font-size:11px;font-weight:760;letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap}
.profile-metric strong{color:#f4f7ff;font-size:25px;font-weight:880;line-height:1.12;letter-spacing:-.035em}
.profile-metric strong em{margin-left:3px;color:#76839a;font-size:12px;font-style:normal;font-weight:700;letter-spacing:0}
.profile-metric small{color:#737f94;font-size:10px;line-height:1.35}

.profile-common-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.profile-insight-card{display:grid;align-content:start;gap:16px;padding:17px 18px}
.profile-insight-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.profile-insight-heading>div{display:grid;gap:3px}
.profile-insight-heading span{color:#96a3b8;font-size:11px;font-weight:760}
.profile-insight-heading strong{color:#edf2ff;font-size:16px}
.profile-insight-heading>small{max-width:145px;color:#6f7c91;font-size:10px;line-height:1.35;text-align:right}
.profile-time-track{display:flex;height:10px;overflow:hidden;border-radius:999px;background:#2a2e35;box-shadow:inset 0 1px 2px rgba(0,0,0,.35)}
.profile-time-track span{display:block;min-width:0;transition:width .3s ease}
.profile-time-shows{background:linear-gradient(90deg,#4f7ee9,#80a7ff)}
.profile-time-movies{background:linear-gradient(90deg,#dc6d3a,#f2a16f)}
.profile-time-legend{display:flex;align-items:center;justify-content:space-between;gap:16px;color:#a4afc1;font-size:11px}
.profile-time-legend span{display:flex;align-items:center;gap:6px}
.profile-time-legend strong{color:#eef3ff}
.profile-dot{display:inline-block;width:7px;height:7px;border-radius:50%}
.profile-dot-show{background:#70a0ff}.profile-dot-movie{background:#eb8652}
.profile-genre-list{display:flex;flex-wrap:wrap;gap:7px}
.profile-genre-chip{display:inline-flex;max-width:100%;align-items:center;gap:7px;padding:7px 8px 7px 10px;border:1px solid #3b4049;border-radius:999px;background:#15171b;color:#e1e5ec;font-size:11px;white-space:nowrap}
.profile-genre-chip b{overflow:hidden;font-weight:760;text-overflow:ellipsis}.profile-genre-chip small{display:inline-flex;min-width:max-content;min-height:20px;align-items:center;justify-content:center;padding:0 7px;border-radius:999px;background:#2b2f36;color:#bbc1cc;font-size:9px;font-weight:850;white-space:nowrap}
.profile-empty-copy{display:block;padding:10px 0;color:#77849a;font-size:11px;line-height:1.45}

.profile-media-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px}
.profile-media-stat{--media-stat-accent:#6d9bff;--media-stat-soft:rgba(91,140,255,.12);--media-stat-border:rgba(91,140,255,.36);overflow:hidden}
.profile-media-stat-movies{--media-stat-accent:#ed854f;--media-stat-soft:rgba(222,111,57,.12);--media-stat-border:rgba(222,111,57,.36);border-color:#513b31;background:linear-gradient(145deg,rgba(35,26,22,.98),rgba(22,17,15,.98))}
.profile-media-stat-header{display:flex;align-items:flex-start;gap:12px;padding:18px;border-bottom:1px solid var(--media-stat-border);background:linear-gradient(180deg,var(--media-stat-soft),transparent)}
.profile-media-stat-movies .profile-section-kicker{color:#e99568}
.profile-media-symbol{display:inline-flex;width:39px;height:39px;flex:0 0 auto;align-items:center;justify-content:center;border:1px solid var(--media-stat-border);border-radius:11px;background:var(--media-stat-soft);color:var(--media-stat-accent);font-size:11px;font-weight:900;letter-spacing:.04em}
.profile-media-symbol .ui-icon{width:20px;height:20px}
.profile-mini-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--media-stat-border)}
.profile-mini-metrics-shows{grid-template-columns:repeat(3,minmax(0,1fr))}
.profile-mini-metrics-movies{grid-template-columns:repeat(2,minmax(0,1fr))}
.profile-mini-metrics div{display:grid;gap:4px;padding:13px 15px;background:#141b27}
.profile-media-stat-movies .profile-mini-metrics div{background:#19120f}
.profile-mini-metrics span{color:#8693a9;font-size:10px;font-weight:720}
.profile-mini-metrics strong{overflow:hidden;color:#eff4ff;font-size:18px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}
.profile-watch-time-button{display:block;width:100%;min-width:0;margin:-2px -4px;padding:2px 4px;border:0;border-radius:6px;background:transparent;color:inherit;cursor:pointer;font:inherit;text-align:left;transition:background .16s ease,color .16s ease}
.profile-watch-time-button:hover{background:var(--primary-soft);color:color-mix(in srgb,var(--primary) 76%,white)}
.profile-watch-time-button:focus-visible{outline:0;box-shadow:var(--focus-ring)}
.profile-watch-time [data-fit-text]{display:block;width:100%;min-width:0;overflow:visible;font-size:var(--profile-fit-text-size);letter-spacing:-.025em;text-overflow:clip;white-space:nowrap}
.profile-watch-time [data-fit-text]:not([data-fit-text-ready="true"]){visibility:hidden}
.profile-watch-time [data-fit-text].is-fit-text-wrapped{overflow-wrap:anywhere;white-space:normal}
.profile-mini-metrics .profile-last-watched{grid-column:1/-1;justify-items:center;text-align:center}
.profile-mini-metrics .profile-last-watched strong{font-size:15px;overflow:visible;text-overflow:clip;white-space:normal}
.profile-media-stat-movies .profile-mini-metrics strong{color:#fff1e8}
.profile-media-section{display:grid;gap:10px;padding:15px 17px;border-top:1px solid rgba(50,61,82,.68)}
.profile-media-stat-movies .profile-media-section{border-top-color:rgba(88,61,48,.7)}
.profile-media-section h3{margin:0;color:#cbd5e8;font-size:11px;font-weight:820;letter-spacing:.06em;text-transform:uppercase}
.profile-media-stat-movies .profile-media-section h3{color:#dfc4b4}
.profile-completion-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.profile-completion-heading strong{color:var(--media-stat-accent);font-size:17px;font-variant-numeric:tabular-nums}
.profile-completion-track{height:8px;overflow:hidden;border-radius:999px;background:#293247;box-shadow:inset 0 1px 2px rgba(0,0,0,.3)}
.profile-media-stat-movies .profile-completion-track{background:#39271f}
.profile-completion-track span{display:block;height:100%;min-width:0;border-radius:inherit;background:linear-gradient(90deg,var(--media-stat-accent),color-mix(in srgb,var(--media-stat-accent) 58%,white));transition:width .3s ease}
.profile-completion-legend{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;color:#8390a6;font-size:10px;line-height:1.35}
.profile-completion-legend span:last-child{text-align:right}
.profile-completion-legend b{color:#d9e2f2;font-size:11px}
.profile-watch-time-dialog{width:min(440px,calc(100vw - 24px));max-width:none;padding:20px}
.profile-watch-time-dialog .modal-header{padding-right:36px;font-size:20px}
.profile-watch-time-modal-body{display:grid;gap:14px;margin:0}
.profile-watch-time-current{display:grid;gap:3px;padding:12px 13px;border:1px solid var(--primary-border);border-radius:11px;background:var(--primary-soft)}
.profile-watch-time-current span{color:var(--muted);font-size:10px;font-weight:760}
.profile-watch-time-current strong{color:var(--text);font-size:17px;line-height:1.3;overflow-wrap:anywhere}
.profile-watch-time-breakdown{display:grid;gap:1px;overflow:hidden;border:1px solid var(--border);border-radius:11px;background:var(--border)}
.profile-watch-time-breakdown-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:12px 13px;background:var(--panel-2)}
.profile-watch-time-breakdown-row span{color:var(--muted);font-size:12px;font-weight:720}
.profile-watch-time-breakdown-row strong{color:var(--text);font-size:19px;font-weight:880;font-variant-numeric:tabular-nums;line-height:1.15}
.profile-media-stat-movies .profile-completion-legend b{color:#f3d8c7}
.profile-genre-bars{display:grid;gap:9px}
.profile-genre-bar{display:grid;gap:5px}
.profile-genre-bar>div{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#bcc8dc;font-size:11px}
.profile-genre-bar small{color:#748198;font-size:9px}
.profile-genre-bar>i{display:block;height:5px;overflow:hidden;border-radius:999px;background:#293247}
.profile-media-stat-movies .profile-genre-bar>i{background:#39271f}
.profile-genre-bar>i>b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--media-stat-accent),color-mix(in srgb,var(--media-stat-accent) 60%,white));min-width:3px}

.profile-settings-card{width:100%}
.profile-save-bar{display:flex;justify-content:flex-end;padding:0 20px 20px}
.profile-dev-panel{margin-top:0}

.profile-data-import{--import-state:var(--muted)}
.profile-import-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(300px,.92fr);align-items:start;gap:16px;padding:18px 20px 20px}
.profile-import-source{display:grid;min-width:0;gap:14px;padding:17px;border:1px solid color-mix(in srgb,var(--border) 78%,var(--primary));border-radius:14px;background:color-mix(in srgb,var(--panel) 94%,#090b10)}
.profile-import-source-copy{display:grid;gap:5px}
.profile-import-source-copy .profile-section-kicker{margin:0;color:var(--primary)}
.profile-import-source-copy h3{margin:0;color:#f2f6ff;font-size:18px;line-height:1.3}
.profile-import-source-copy p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}
.profile-import-privacy-note{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:9px;padding:11px 12px;border:1px solid var(--primary-border);border-radius:11px;background:var(--primary-soft);color:color-mix(in srgb,var(--primary) 56%,white)}
.profile-import-privacy-note .ui-icon{width:17px;height:17px;margin-top:1px}
.profile-import-privacy-note p{margin:0;color:color-mix(in srgb,var(--muted) 78%,var(--primary));font-size:11px;line-height:1.5}
.profile-import-folder{display:grid;min-height:142px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;padding:20px;border:1px dashed var(--primary-border);border-radius:14px;background:linear-gradient(135deg,var(--primary-soft),color-mix(in srgb,var(--panel) 96%,#090b10));cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease}
.profile-import-folder:hover{border-color:var(--primary);background:linear-gradient(135deg,rgba(var(--primary-rgb),.2),color-mix(in srgb,var(--panel) 92%,var(--primary)));transform:translateY(-1px)}
.profile-import-source input:focus-visible+.profile-import-folder{outline:0;border-color:var(--primary);box-shadow:var(--focus-ring)}
.profile-import-folder.is-disabled{cursor:progress;opacity:.62;pointer-events:none;transform:none}
.profile-import-folder-icon{display:inline-flex;width:48px;height:48px;align-items:center;justify-content:center;border:1px solid var(--primary-border);border-radius:14px;background:rgba(var(--primary-rgb),.16);color:color-mix(in srgb,var(--primary) 66%,white);font-size:23px}
.profile-import-folder>span:last-child{display:grid;min-width:0;gap:5px}
.profile-import-folder strong{color:#eef4ff;font-size:15px;line-height:1.35}
.profile-import-folder small{color:#8996ab;font-size:11px;line-height:1.45}
.profile-import-selection{min-height:17px;margin:0;color:#8794aa;font-size:11px;line-height:1.45;overflow-wrap:anywhere}
.profile-import-selection.is-error{color:#ffafba}
.profile-import-source-actions{display:flex;justify-content:flex-start}
.profile-import-monitor{position:sticky;top:16px;display:grid;min-width:0;gap:13px;padding:16px;border:1px solid color-mix(in srgb,var(--border) 78%,var(--primary));border-radius:14px;background:linear-gradient(155deg,color-mix(in srgb,var(--panel-2) 92%,var(--primary)),color-mix(in srgb,var(--panel) 96%,#090b10));box-shadow:0 14px 32px rgba(0,0,0,.16)}
.profile-import-monitor[data-import-stage="analysis"],.profile-import-monitor[data-import-stage="summary"],.profile-import-monitor[data-import-stage="queued"],.profile-import-monitor[data-import-stage="import"]{--import-state:var(--primary)}
.profile-import-monitor[data-import-stage="result"]{--import-state:var(--success)}
.profile-import-monitor[data-import-stage="failed"]{--import-state:var(--danger)}
.profile-import-monitor-heading{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px}
.profile-import-monitor-heading h3{margin:0;color:#f0f4ff;font-size:16px;line-height:1.3}
.profile-import-monitor-heading p{margin:4px 0 0;color:#929eb3;font-size:11px;line-height:1.45}
.profile-import-status-indicator{display:block;width:11px;height:11px;margin-top:5px;border:2px solid color-mix(in srgb,var(--import-state) 72%,white);border-radius:50%;background:var(--import-state);box-shadow:0 0 0 4px color-mix(in srgb,var(--import-state) 17%,transparent)}
.profile-import-monitor[data-import-stage="analysis"] .profile-import-status-indicator,.profile-import-monitor[data-import-stage="queued"] .profile-import-status-indicator,.profile-import-monitor[data-import-stage="import"] .profile-import-status-indicator{border-top-color:transparent;background:transparent;animation:suggestion-spin .8s linear infinite}
.profile-import-counts{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
.profile-import-counts>div{display:grid;min-width:0;gap:4px;padding:10px 11px;border:1px solid color-mix(in srgb,var(--border) 84%,var(--primary));border-radius:10px;background:color-mix(in srgb,var(--panel) 92%,#090b10)}
.profile-import-counts span{overflow:hidden;color:#8895aa;font-size:10px;font-weight:740;text-overflow:ellipsis;white-space:nowrap}
.profile-import-counts strong{color:#edf3ff;font-size:20px;font-weight:860;font-variant-numeric:tabular-nums;line-height:1.15}
.profile-import-achievement-notice{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:9px;padding:10px 11px;border:1px solid rgba(211,171,84,.35);border-radius:10px;background:rgba(211,171,84,.09)}
.profile-import-achievement-notice .ui-icon{width:17px;height:17px;margin-top:1px;color:#edcb77}
.profile-import-achievement-notice>div{display:grid;gap:3px}
.profile-import-achievement-notice strong{color:#f2db9e;font-size:11px;line-height:1.35}
.profile-import-achievement-notice small{color:#a99d7e;font-size:10px;line-height:1.45}
.profile-import-progress{display:grid;gap:7px}
.profile-import-progress-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.profile-import-progress-heading strong{color:#cbd6e8;font-size:11px}
.profile-import-progress-heading span{color:color-mix(in srgb,var(--primary) 68%,white);font-size:11px;font-weight:850;font-variant-numeric:tabular-nums;white-space:nowrap}
.profile-import-progress-bar{width:100%;height:8px}
.profile-import-progress-bar::-webkit-progress-value{background:linear-gradient(90deg,color-mix(in srgb,var(--primary) 82%,#20345d),color-mix(in srgb,var(--primary) 70%,white))}
.profile-import-progress-bar::-moz-progress-bar{background:linear-gradient(90deg,color-mix(in srgb,var(--primary) 82%,#20345d),color-mix(in srgb,var(--primary) 70%,white))}
.profile-import-progress>small{min-height:15px;color:#8794a9;font-size:10px;line-height:1.45;overflow-wrap:anywhere}
.profile-import-feedback{min-height:18px;color:#95a2b7;font-size:11px;line-height:1.45}
.profile-import-feedback.is-success{color:#9be7bf}
.profile-import-feedback.is-error{color:#ffafba}
.profile-import-feedback.is-warning{color:#e6c77e}
.profile-import-failures{display:grid;gap:8px;padding-top:2px;border-top:1px solid color-mix(in srgb,var(--border) 85%,var(--danger))}
.profile-import-failures-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.profile-import-failures-heading h4{margin:0;color:#ffc5cd;font-size:12px;line-height:1.35}
.profile-import-failures-heading span{display:inline-flex;min-width:24px;min-height:22px;align-items:center;justify-content:center;padding:2px 7px;border-radius:999px;background:rgba(255,93,93,.12);color:#ffc0c8;font-size:10px;font-weight:850}
.profile-import-failure-list{display:grid;max-height:330px;gap:7px;margin:0;padding:0;overflow:auto;list-style:none}
.profile-import-failure-list li{display:grid;gap:3px;padding:9px 10px;border:1px solid rgba(255,93,93,.22);border-radius:9px;background:rgba(57,24,31,.44)}
.profile-import-failure-list strong{color:#f3dce0;font-size:11px;line-height:1.35;overflow-wrap:anywhere}
.profile-import-failure-list span{color:#bd99a0;font-size:10px;line-height:1.45;overflow-wrap:anywhere}
.profile-import-failure-list small{color:#916f77;font-size:9px;line-height:1.35}
.profile-import-warnings{border-top-color:color-mix(in srgb,var(--border) 85%,#f2b94b)}
.profile-import-warnings .profile-import-failures-heading h4{color:#ffe0a3}
.profile-import-warnings .profile-import-failures-heading span{background:rgba(242,185,75,.12);color:#ffe0a3}
.profile-import-warnings .profile-import-failure-list li{border-color:rgba(242,185,75,.24);background:rgba(62,45,19,.42)}
.profile-import-warnings .profile-import-failure-list strong{color:#f6e8cb}
.profile-import-warnings .profile-import-failure-list span{color:#cbb78e}
.profile-import-warnings .profile-import-failure-list small{color:#9f8a63}

.achievement-collection{overflow:hidden;border:1px solid rgba(126,105,213,.42);border-radius:18px;background:radial-gradient(circle at 86% 0,rgba(127,96,231,.17),transparent 34%),linear-gradient(145deg,rgba(26,27,39,.99),rgba(15,18,27,.99));box-shadow:0 18px 46px rgba(0,0,0,.22)}
.achievement-collection-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:21px 22px 18px;border-bottom:1px solid rgba(120,104,185,.28)}
.achievement-collection-header h2{margin:0;color:#f5f3ff;font-size:22px;line-height:1.2}
.achievement-collection-header p{max-width:620px;margin:6px 0 0;color:#9f9caf;font-size:12px;line-height:1.5}
.achievement-collection-score{display:grid;min-width:94px;justify-items:end;text-align:right}
.achievement-collection-score strong{color:#f4d47d;font-size:30px;font-weight:900;line-height:1}
.achievement-collection-score strong span{color:#817d8e;font-size:15px}
.achievement-collection-score small{margin-top:6px;color:#9893a7;font-size:10px;font-weight:760;text-transform:uppercase}
.achievement-tracking-disabled{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin:15px 18px 10px}
.achievement-tracking-disabled>div{display:grid;gap:5px}
.achievement-tracking-disabled small{color:#9691a5;font-size:11px;line-height:1.45}
.achievement-tracking-enable{white-space:nowrap}
.achievement-tracking-settings{margin:12px 18px 8px;border:1px solid rgba(126,105,213,.24);border-radius:11px;background:rgba(15,17,26,.55)}
.achievement-tracking-settings summary{display:flex;align-items:center;gap:8px;padding:10px 12px;color:#9893aa;font-size:11px;font-weight:700;cursor:pointer;list-style:none}
.achievement-tracking-settings summary::-webkit-details-marker{display:none}
.achievement-tracking-settings summary::after{content:'+';margin-left:auto;color:#706b80;font-size:16px;line-height:1}
.achievement-tracking-settings[open] summary::after{content:'\2212'}
.achievement-tracking-settings summary:hover{color:#d8d1ed}
.achievement-tracking-settings summary:focus-visible{outline:2px solid #9d82f0;outline-offset:2px}
.achievement-tracking-settings .ui-icon{width:14px;height:14px}
.achievement-tracking-settings-body{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 12px 12px}
.achievement-tracking-settings-body p{max-width:650px;margin:0;color:#8f8a9d;font-size:11px;line-height:1.45}
.achievement-collection-progress{height:5px;background:#252330}
.achievement-collection-progress>span{display:block;height:100%;border-radius:0 999px 999px 0;background:linear-gradient(90deg,#7c63dc,#f0c866);box-shadow:0 0 16px rgba(209,172,99,.34)}
.achievement-filter-stack{display:grid;gap:8px;padding:15px 18px 4px}
.achievement-filter-row{display:grid;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:10px}
.achievement-filter-label{color:#8f8a9d;font-size:10px;font-weight:700;line-height:1.3}
.achievement-filters{display:flex;min-width:0;gap:7px;overflow-x:auto;scrollbar-width:thin}
.achievement-filter{min-height:44px;padding:9px 13px;border:1px solid #3b3949;border-radius:999px;background:#171923;color:#aaa7b8;cursor:pointer;font:inherit;font-size:11px;font-weight:650;white-space:nowrap;transition:border-color .16s ease,background .16s ease,color .16s ease}
.achievement-filter:hover{border-color:#6f619c;color:#e8e2fb}
.achievement-filter.is-active{border-color:rgba(222,183,96,.48);background:rgba(211,171,84,.12);color:#f2d994}
.achievement-filter:focus-visible{outline:2px solid #9d82f0;outline-offset:2px}
.achievement-groups{display:grid;gap:14px;padding:14px 18px 20px}
.achievement-family{overflow:hidden;border:1px solid rgba(67,65,84,.9);border-radius:15px;background:rgba(16,18,27,.82)}
.achievement-family[hidden]{display:none}
.achievement-family-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border-bottom:1px solid rgba(62,61,77,.78);background:linear-gradient(90deg,rgba(124,99,220,.1),rgba(23,25,35,.42))}
.achievement-family-header h3{margin:0;color:#e7e4ef;font-size:13px;font-weight:820;letter-spacing:.02em}
.achievement-family-score{display:flex;flex:0 0 auto;align-items:baseline;gap:7px;color:#8e899c}
.achievement-family-score strong{display:flex;align-items:baseline;color:#e3c779;font-size:15px;font-variant-numeric:tabular-nums}
.achievement-family-score strong i{margin:0 2px;color:#777285;font-size:10px;font-style:normal}
.achievement-family-score small{font-size:9px;font-weight:750;text-transform:uppercase}
.achievement-family-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:11px;background:rgba(10,12,19,.2)}
.achievement-card{--achievement-category:#9f9bad;--achievement-rarity:#a9b5c8;display:grid;min-width:0;grid-template-columns:80px minmax(0,1fr);align-items:start;gap:13px;padding:12px;border:1px solid #363746;border-radius:13px;background:linear-gradient(145deg,#1b1e2a,#141720);box-shadow:inset 3px 0 0 color-mix(in srgb,var(--achievement-rarity) 64%,transparent);transition:border-color .18s ease,transform .18s ease,opacity .18s ease}
.achievement-card[hidden]{display:none}
.achievement-card[data-achievement-category="start"]{--achievement-category:#78b6f0}
.achievement-card[data-achievement-category="progress"]{--achievement-category:#a89aef}
.achievement-card[data-achievement-category="criticism"]{--achievement-category:#e3b56b}
.achievement-card[data-achievement-category="habits"]{--achievement-category:#7dc69a}
.achievement-card[data-achievement-category="time_of_day"]{--achievement-category:#dd9e72}
.achievement-card[data-achievement-category="exploration"]{--achievement-category:#71c8c3}
.achievement-card[data-achievement-category="genre"]{--achievement-category:#c398ef}
.achievement-card[data-achievement-category="seasonal"]{--achievement-category:#e0a7d6}
.achievement-card[data-achievement-category="humor"]{--achievement-category:#ee987e}
.achievement-card[data-achievement-rarity="common"]{--achievement-rarity:#9dabc1}
.achievement-card[data-achievement-rarity="rare"]{--achievement-rarity:#d8bc73}
.achievement-card[data-achievement-rarity="epic"]{--achievement-rarity:#c18bea}
.achievement-card[data-achievement-rarity="legendary"]{--achievement-rarity:#f0a05f}
.achievement-card.is-unlocked:hover{border-color:color-mix(in srgb,var(--achievement-rarity) 52%,#454354);transform:translateY(-2px)}
.achievement-art-shell{position:relative;display:grid;width:80px;height:80px;overflow:hidden;place-items:center;border:1px solid color-mix(in srgb,var(--achievement-rarity) 44%,#454354);border-radius:12px;background:#0e1320}
.achievement-art{display:block;width:100%;height:100%;object-fit:cover}
.achievement-card.is-unlocked .achievement-art{filter:saturate(.92) contrast(1.03)}
.achievement-card.is-locked{border-style:dashed;background:rgba(17,19,27,.64)}
.achievement-card.is-locked .achievement-art-shell{border-color:#4a4a58;background:#1b1c25;box-shadow:inset 0 0 20px rgba(0,0,0,.48)}
.achievement-card.is-locked .achievement-art-shell::after{position:absolute;inset:0;background:radial-gradient(circle at 50% 44%,transparent 35%,rgba(4,5,10,.5) 100%);content:"";pointer-events:none}
.achievement-card.is-locked .achievement-art{filter:grayscale(1) brightness(.42) contrast(1.32);opacity:.92}
.achievement-card.is-secret .achievement-art-shell::after{display:none}
.achievement-lock-art{position:relative;display:block;width:40px;height:44px;color:#8f8aa3}
.achievement-lock-art::before{position:absolute;top:2px;left:9px;width:22px;height:23px;border:4px solid currentColor;border-bottom:0;border-radius:13px 13px 0 0;content:""}
.achievement-lock-art::after{position:absolute;right:2px;bottom:1px;left:2px;height:28px;border:1px solid #777187;border-radius:8px;background:linear-gradient(145deg,#4b4758,#302e3a);box-shadow:0 7px 18px rgba(0,0,0,.3);content:""}
.achievement-card-copy{display:grid;min-width:0;align-content:start;gap:6px}
.achievement-card-copy h4{margin:0;color:#f2f2f7;font-size:15px;line-height:1.3;overflow-wrap:anywhere}
.achievement-card-description{margin:0;color:#aaa8b5;font-size:11px;line-height:1.5;overflow-wrap:anywhere}
.achievement-card.is-known .achievement-card-copy h4{color:#dddbe5}
.achievement-card.is-known .achievement-card-description{color:#9c99a7}
.achievement-card.is-secret .achievement-card-copy h4{color:#bbb7c7}
.achievement-card.is-secret .achievement-card-description{color:#918d9d}
.achievement-badges{display:flex;min-width:0;flex-wrap:wrap;gap:5px}
.achievement-badge{display:inline-flex;min-height:22px;align-items:center;padding:3px 8px;border:1px solid;border-radius:999px;font-size:10px;font-weight:600;letter-spacing:.02em;line-height:1.2}
.achievement-badge-category{border-color:color-mix(in srgb,var(--achievement-category) 38%,transparent);background:color-mix(in srgb,var(--achievement-category) 10%,transparent);color:var(--achievement-category)}
.achievement-badge-rarity{border-color:color-mix(in srgb,var(--achievement-rarity) 42%,transparent);background:color-mix(in srgb,var(--achievement-rarity) 11%,transparent);color:var(--achievement-rarity)}
.achievement-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:5px 8px;margin-top:1px}
.achievement-card-meta strong{color:#d8d4e2;font-size:10px;font-weight:760}
.achievement-card-meta span{padding:2px 6px;border-radius:999px;background:#262733;color:#9693a2;font-size:9px;line-height:1.3}
.achievement-received-at,.achievement-locked-label{color:#9793a2;font-size:9px;font-weight:680;line-height:1.4}
.achievement-locked-label{color:#888493}
.achievement-progress-list{display:grid;gap:8px;margin-top:2px}
.achievement-progress-segment{display:grid;gap:4px}
.achievement-progress-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;color:#aaa7b5;font-size:9px;line-height:1.35}
.achievement-progress-heading span{min-width:0;overflow-wrap:anywhere}
.achievement-progress-heading small{flex:0 0 auto;color:#b6b1c1;font-size:9px;font-weight:760;font-variant-numeric:tabular-nums;white-space:nowrap}
.achievement-progress-track{height:5px;overflow:hidden;border-radius:999px;background:#2b2b35;box-shadow:inset 0 1px 2px rgba(0,0,0,.24)}
.achievement-progress-track>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,color-mix(in srgb,var(--achievement-rarity) 70%,#7066ad),var(--achievement-rarity))}
.achievement-filter-empty{padding:26px 18px;border:1px dashed #403d4d;border-radius:14px;color:#9692a2;font-size:12px;text-align:center}
.achievement-filter-empty[hidden]{display:none}

.achievement-toast{position:fixed;z-index:120;right:22px;bottom:22px;display:grid;width:min(390px,calc(100vw - 28px));grid-template-columns:74px minmax(0,1fr);align-items:center;gap:13px;padding:10px;border:1px solid rgba(227,190,103,.52);border-radius:16px;background:linear-gradient(145deg,rgba(27,28,39,.98),rgba(14,17,24,.98));box-shadow:0 22px 60px rgba(0,0,0,.46),0 0 28px rgba(180,137,61,.12);opacity:0;pointer-events:none;transform:translateY(18px) scale(.98);transition:opacity .22s ease,transform .22s ease}
.achievement-toast.is-visible{opacity:1;transform:translateY(0) scale(1)}
.achievement-toast-image{display:block;width:74px;height:74px;border:1px solid rgba(227,190,103,.35);border-radius:12px;object-fit:cover}
.achievement-toast-copy{display:grid;min-width:0;gap:4px}
.achievement-toast-kicker{color:#e9c56f;font-size:9px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.achievement-toast-copy strong{display:-webkit-box;overflow:hidden;color:#fff7e5;font-size:15px;line-height:1.32;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.achievement-toast-copy small{color:#8f8c99;font-size:10px}

@media(max-width:1040px){
  .profile-layout{grid-template-columns:1fr}
  .profile-menu{position:static;grid-template-columns:repeat(3,minmax(0,1fr))}
  .profile-menu-item{grid-template-columns:30px minmax(0,1fr);padding:8px}
  .profile-menu-icon{width:29px;height:29px}
}
@media(max-width:900px){
  .profile-import-layout{grid-template-columns:1fr}
  .profile-import-monitor{position:static}
}
@media(max-width:820px){
  .profile-media-columns{grid-template-columns:1fr}
}
@media(max-width:720px){
  .profile-page{gap:16px}
  .profile-hero{align-items:flex-start}
  .profile-hero-avatar{width:48px;height:48px;border-radius:15px;font-size:18px}
  .profile-menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:7px}
  .profile-menu-item:hover{transform:none}
  .profile-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .profile-common-grid{grid-template-columns:1fr}
  .profile-empty-state{grid-template-columns:auto minmax(0,1fr)}
  .profile-empty-actions{grid-column:1/-1}
  .profile-stats-heading{display:grid}
  .profile-stats-actions{max-width:none;justify-content:flex-start}
  .profile-share-status{text-align:left}
  .achievement-family-grid{grid-template-columns:1fr}
  .profile-import-layout{padding-right:15px;padding-left:15px}
}
@media(max-width:440px){
  .profile-menu-item{font-size:11px}
  .profile-metric{padding:14px 12px}
  .profile-metric strong{font-size:21px}
  .profile-stats-heading{padding:17px 15px}
  .profile-insight-heading{display:grid}
  .profile-insight-heading>small{max-width:none;text-align:left}
  .profile-time-legend{align-items:flex-start;flex-direction:column;gap:7px}
  .profile-empty-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .profile-empty-actions .btn{width:100%}
  .achievement-collection-header{display:grid;padding:17px 15px}
  .achievement-collection-score{min-width:0;justify-items:start;text-align:left}
  .achievement-tracking-disabled{grid-template-columns:auto minmax(0,1fr);margin-inline:15px}
  .achievement-tracking-enable{grid-column:1/-1;width:100%}
  .achievement-tracking-settings{margin-inline:15px}
  .achievement-tracking-settings-body{align-items:stretch;flex-direction:column}
  .achievement-filter-stack{padding-right:14px;padding-left:14px}
  .achievement-filter-row{grid-template-columns:1fr;gap:5px}
  .achievement-groups{padding:12px 14px 17px}
  .achievement-family-header{align-items:flex-start}
  .achievement-card{grid-template-columns:80px minmax(0,1fr);gap:11px;padding:10px}
  .achievement-toast{right:14px;bottom:14px;grid-template-columns:62px minmax(0,1fr)}
  .achievement-toast-image{width:62px;height:62px}
}

@media(prefers-reduced-motion:reduce){
  .achievement-card,.achievement-toast,.profile-import-folder{transition:none}
  .profile-import-monitor .profile-import-status-indicator{animation:none!important}
}

/* Modal */
.modal{position:fixed;inset:0;display:none;z-index:20}
.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.6);backdrop-filter:blur(4px)}
.modal-dialog{position:relative;max-height:calc(90vh - 16px);margin:10vh auto 0;max-width:560px;overflow-y:auto;background:var(--panel);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:16px}
.modal-header{font-weight:700;margin-bottom:8px}
.modal-close{position:absolute;top:10px;right:10px;display:inline-flex;width:30px;height:30px;align-items:center;justify-content:center;padding:0;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);font-size:22px;line-height:1;cursor:pointer}
.modal-close .ui-icon{width:18px;height:18px}
.modal-close:hover,.modal-close:focus-visible{border-color:var(--primary-border);background:var(--primary-soft);color:var(--text);outline:none}
/* Make modal text more readable */
.modal-body{color:var(--text);margin-bottom:12px;line-height:1.55}
.modal-body ul{margin:6px 0 0;padding-left:18px}
.modal-body li{margin:4px 0}
/* Keep link color consistent inside modals (no purple visited) */
.modal a:not(.btn),.modal a:not(.btn):visited{color:var(--primary);text-decoration:none}
.modal a:not(.btn):hover,.modal a:not(.btn):active,.modal a:not(.btn):focus{color:var(--primary-600);text-decoration:underline}
.modal-actions{display:flex;gap:10px;justify-content:flex-end}
.confirm-modal .btn.confirm-bulk{border:1px solid rgba(120,161,255,.6);background:linear-gradient(90deg,#507fe9,#78a1ff);color:#fff}
.confirm-modal .btn.confirm-bulk:hover{background:linear-gradient(90deg,#507fe9,#78a1ff);filter:brightness(1.08)}
.confirm-modal .btn.confirm-bulk:focus-visible{outline:3px solid rgba(120,161,255,.3);outline-offset:2px}

/* Show cast and credits */
body.modal-open{overflow:hidden}
.show-people-modal.is-open{display:block}
.show-people-dialog{display:flex;width:min(1240px,calc(100vw - 32px));max-width:none;max-height:calc(100vh - 48px);min-height:min(680px,calc(100vh - 48px));margin:24px auto 0;padding:0;overflow:hidden;flex-direction:column}
.show-people-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:20px 64px 15px 22px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,#1b2130,var(--panel))}
.show-people-header h2{margin:2px 0 0;font-size:26px;letter-spacing:-.02em}
.show-people-kicker,.person-kicker,.person-section-kicker{color:#9ab7ff;font-size:12px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}
.show-people-tabs{flex:0 0 auto;margin:0;padding:12px 22px;overflow-x:auto;flex-wrap:nowrap;border-bottom:1px solid var(--border);background:#131821;scrollbar-width:thin}
.show-people-tab{flex:0 0 auto;gap:8px;white-space:nowrap}
.show-people-tab.active{border-color:#536786;background:#29344a;color:#fff}
.show-people-tab-count{display:inline-flex;min-width:22px;height:20px;align-items:center;justify-content:center;padding:0 6px;border-radius:999px;background:rgba(8,12,20,.52);color:#c7d6f6;font-size:11px;font-weight:850}
.show-people-body{flex:1 1 auto;min-height:0;margin:0;padding:20px 22px 24px;overflow:auto;overscroll-behavior:contain;background:#10141c}
.people-cast-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(176px,1fr));gap:16px;align-items:start}
.people-cast-guest-heading{grid-column:1/-1;margin:16px 0 0;padding-top:20px;border-top:1px solid #344158;color:#dce7ff;font-size:18px;line-height:1.3}
.people-cast-guest-heading:first-child{margin-top:0;padding-top:0;border-top:0}
.people-cast-card{position:relative;display:block;min-width:0;overflow:hidden;border:1px solid #2c3850;border-radius:12px;background:#111722;color:inherit;text-decoration:none;box-shadow:0 8px 22px rgba(0,0,0,.18);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
a.people-cast-card:hover{transform:translateY(-2px);border-color:#526585;box-shadow:0 13px 28px rgba(0,0,0,.27)}
.people-cast-photo{position:relative;width:100%;aspect-ratio:2/3;overflow:hidden;background:#0d1320}
.people-cast-photo img{display:block;width:100%;height:100%;object-fit:cover}
.people-character-placeholder,.person-photo-placeholder{display:block;width:100%;height:100%;min-height:100%;object-fit:cover;background:#101725}
.people-cast-overlay{position:absolute;right:0;bottom:0;left:0;display:flex;min-height:88px;justify-content:flex-end;flex-direction:column;gap:3px;padding:28px 11px 10px;background:linear-gradient(180deg,transparent,rgba(4,7,12,.92) 58%,rgba(4,7,12,.98));text-shadow:0 1px 3px #000}
.people-cast-overlay strong{overflow-wrap:anywhere;color:#fff;font-size:15px;line-height:1.25}
.people-cast-overlay span{overflow-wrap:anywhere;color:#d7deec;font-size:11px;line-height:1.35}
.people-cast-overlay .people-cast-episodes{color:#aac6ff}
.people-cast-card:focus-visible,.people-credit-name:focus-visible,.show-people-tab:focus-visible{outline:3px solid rgba(91,140,255,.62);outline-offset:2px}
.people-credits-list{display:grid;gap:12px}
.people-credit-card{padding:15px 16px;border:1px solid var(--border);border-radius:12px;background:linear-gradient(145deg,#171d29,#131821)}
.people-credit-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.people-credit-name{color:#f0f3fb;font-size:18px;font-weight:820;line-height:1.3;text-decoration:none}
a.people-credit-name:hover{color:#abc1f8}
.people-credit-roles{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}
.people-credit-roles span{display:inline-flex;min-height:25px;align-items:center;padding:4px 8px;border:1px solid #33415b;border-radius:999px;background:#111827;color:#cbd5e8;font-size:11px;font-weight:720}
.people-credit-meta{display:flex;align-items:center;gap:8px;margin-top:9px;flex-wrap:wrap;color:var(--muted);font-size:13px}
.people-credit-meta span+span::before{content:"·";margin-right:8px;color:#59657b}
.people-credit-episodes{margin-top:12px;border-top:1px solid rgba(39,48,67,.86);padding-top:10px}
.people-credit-episodes summary{width:max-content;max-width:100%;color:#9bb7f7;font-size:13px;font-weight:760;cursor:pointer}
.people-credit-episodes summary:hover{color:#c1d2fa}
.people-episode-list{display:grid;gap:0;margin:10px 0 0;padding:0;list-style:none;border:1px solid var(--border);border-radius:9px;background:#10151f}
.people-episode-list li{padding:9px 11px;border-bottom:1px solid rgba(39,48,67,.72)}
.people-episode-list li:last-child{border-bottom:0}
.people-episode-heading{display:flex;align-items:baseline;gap:9px;min-width:0}
.people-episode-heading strong{flex:0 0 auto;color:#a8c0ff;font-size:12px;letter-spacing:.03em}
.people-episode-heading span{min-width:0;overflow-wrap:anywhere;color:#e2e7f2;font-size:13px}
.people-episode-meta{margin-top:3px;color:#818da5;font-size:11px}

/* Person page */
.person-page{display:grid;gap:30px;min-width:0}
.person-header{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:32px;align-items:start;margin-top:18px}
.person-portrait-frame{width:100%;aspect-ratio:2/3;overflow:hidden;border:1px solid var(--border);border-radius:14px;background:var(--panel);box-shadow:var(--shadow)}
.person-portrait{display:block;width:100%;height:100%;object-fit:cover}
.person-intro{min-width:0;padding-top:7px}
.person-intro h1{margin:6px 0 18px;font-size:clamp(34px,5vw,54px);line-height:1.03;letter-spacing:-.04em;overflow-wrap:anywhere}
.person-facts{display:grid;max-width:680px;gap:0;margin:0;border-top:1px solid var(--border)}
.person-facts>div{display:grid;grid-template-columns:minmax(130px,190px) minmax(0,1fr);gap:18px;padding:12px 0;border-bottom:1px solid var(--border)}
.person-facts dt{color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.person-facts dd{margin:0;color:#e4e9f4;overflow-wrap:anywhere}
.person-load-status{display:inline-flex;align-items:center;gap:8px;margin-top:16px;padding:8px 11px;border:1px solid var(--primary-border);border-radius:9px;background:var(--primary-soft);color:var(--text);font-size:13px}
.person-load-status::before{content:"";width:13px;height:13px;border:2px solid rgba(170,177,197,.3);border-top-color:var(--primary);border-radius:50%;animation:suggestion-spin .8s linear infinite}
.person-load-status.is-error{border-color:rgba(255,93,93,.45);background:rgba(255,93,93,.1);color:#ffc8cf}
.person-load-status.is-error::before{content:"";display:block;height:16px;width:16px;border:0;background:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjEwIi8+PHBhdGggZD0iTTEyIDh2NCIvPjxwYXRoIGQ9Ik0xMiAxNmguMDEiLz48L3N2Zz4=") center/contain no-repeat;animation:none}
.person-biographies{display:grid;grid-template-columns:minmax(0,1fr)}
.person-biography-card{min-width:0;padding:20px;border:1px solid var(--border);border-radius:14px;background:linear-gradient(145deg,var(--panel-2),var(--panel))}
.person-biography-card h2{margin:0 0 12px;font-size:18px}
.person-biography-text{color:#cbd3e2;line-height:1.65;white-space:pre-line;overflow-wrap:anywhere}
.person-biography-divider{margin:18px 0 16px}
.person-biography-secondary{color:var(--muted);font-size:.92em}
.person-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px;padding-bottom:11px;border-bottom:1px solid var(--border)}
.person-section-heading h2{margin:4px 0 0;font-size:26px;letter-spacing:-.02em}
.person-filmography-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:15px}
.person-show-card{--person-card-accent:var(--primary);--person-card-border:var(--border);--person-card-border-hover:var(--primary-border);--person-card-surface:var(--panel);--person-card-poster-surface:var(--panel);--person-card-title:#f0f3fa;--person-card-meta:var(--muted);position:relative;display:flex;min-width:0;overflow:hidden;flex-direction:column;border:1px solid var(--person-card-border);border-radius:12px;background:var(--person-card-surface);color:inherit;text-decoration:none;box-shadow:inset 0 3px 0 color-mix(in srgb,var(--person-card-accent) 72%,transparent);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.person-show-card[data-media-type="series"]{--person-card-accent:#6f9cff;--person-card-border:#354968;--person-card-border-hover:#6f9cff;--person-card-surface:linear-gradient(145deg,#171f2d,#111823);--person-card-poster-surface:#0d1421;--person-card-title:#edf3ff;--person-card-meta:#9dacc6}
.person-show-card[data-media-type="movie"]{--person-card-accent:#f08a4b;--person-card-border:#5a4033;--person-card-border-hover:#f08a4b;--person-card-surface:linear-gradient(145deg,#261b16,#1a120f);--person-card-poster-surface:#17100d;--person-card-title:#fff1e8;--person-card-meta:#b99a87}
a.person-show-card:hover{transform:translateY(-3px);border-color:var(--person-card-border-hover);box-shadow:inset 0 3px 0 var(--person-card-accent),0 14px 30px rgba(0,0,0,.27)}
.person-show-card:focus-visible{outline:3px solid var(--person-card-accent);outline-offset:2px}
.person-show-poster{display:flex;width:100%;aspect-ratio:2/3;align-items:center;justify-content:center;overflow:hidden;border-bottom:1px solid var(--person-card-border);background:var(--person-card-poster-surface)}
.person-show-poster img{display:block;width:100%;height:100%;object-fit:cover}
.person-show-poster-placeholder{display:block;width:100%;height:100%;object-fit:cover}
.person-show-card-body{display:flex;min-width:0;flex:1;flex-direction:column;gap:4px;padding:11px}
.person-show-card-body strong{display:-webkit-box;overflow:hidden;color:var(--person-card-title);line-height:1.3;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.person-show-card-body>span{overflow:hidden;color:var(--person-card-meta);font-size:12px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}
.person-show-card-body .person-show-roles{margin-top:5px;color:var(--person-card-accent);white-space:normal}
.person-filmography-empty{margin:0}

/* Inline notices */
.notice{background:#1a2435;border:1px solid var(--border);color:#cbd4e6;padding:12px;border-radius:10px}
.notice.info{background:#142238}

/* Show navigation loading */
.show-loading-overlay{position:fixed;inset:0;z-index:50;display:none;align-items:center;justify-content:center;background:rgba(10,12,18,.78);backdrop-filter:blur(8px);padding:20px}
.show-loading-overlay.active{display:flex}
.show-loading-panel{width:min(520px,100%);padding:22px;border:1px solid var(--border);border-radius:8px;background:#121722;box-shadow:var(--shadow)}
.show-loading-kicker{color:var(--muted);font-size:14px;margin-bottom:8px}
.show-loading-phrase{min-height:64px;font-size:26px;font-weight:800;line-height:1.22;color:var(--text);animation:show-loading-phrase-in .42s ease both}
.show-loading-phrase.swap{animation:show-loading-phrase-swap .42s ease both}
.show-loading-progress{height:8px;margin-top:18px;border-radius:999px;overflow:hidden;background:#263148}
.show-loading-progress-fill{height:100%;width:0;border-radius:999px;background:var(--primary);transition:width .28s ease}
.show-loading-hint{margin-top:10px;color:var(--muted);font-size:14px}
.show-loading-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.show-loading-actions[hidden]{display:none}
@keyframes show-loading-phrase-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes show-loading-phrase-swap{0%{opacity:0;transform:translateY(12px)}100%{opacity:1;transform:translateY(0)}}

/* My page card overrides: equalize card heights across tabs; avoid poster crop; blur-fill empty space */
.my-page .grid{grid-template-columns:repeat(auto-fill,var(--catalog-card-width));align-items:stretch;justify-content:start}
.library-controls{display:grid;gap:14px;margin:18px 0 20px;padding:16px;border:1px solid #2b3549;border-radius:16px;background:linear-gradient(145deg,rgba(21,28,41,.96),rgba(16,21,31,.96));box-shadow:0 12px 30px rgba(0,0,0,.12)}
.library-controls:not(.is-ready)>*{visibility:hidden}
.library-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}
.library-search{position:relative;display:block}
.library-search-icon{position:absolute;top:50%;left:14px;color:#8e9bb2;font-size:21px;line-height:1;transform:translateY(-54%);pointer-events:none}
.library-search-icon .ui-icon{display:block;width:20px;height:20px}
.library-search input{width:100%;min-height:44px;padding:10px 38px 10px 43px;border:1px solid #34415a;border-radius:11px;background:#0f151f;color:var(--text);font:inherit;outline:0;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}
.library-search input::placeholder{color:#7f8ba1}
.library-search input:hover{background:#121925;border-color:#44526c}
.library-search input:focus{border-color:#648ff5;box-shadow:0 0 0 3px rgba(91,140,255,.16)}
.library-filter-toggle{min-width:150px;white-space:nowrap}
.library-filter-panel{display:grid;gap:14px}
.library-sort-field{max-width:260px}
.library-filter-fields{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:10px}
.library-control-field{display:grid;min-width:0;min-height:60px;align-content:start;gap:6px;color:#9da9bd;font-size:12px;font-weight:760}
.library-control-field>.app-select{font-size:13px;font-weight:500}
.library-control-field>.app-select .app-select-trigger{min-height:40px;background:#101620}
.library-control-field>.app-select .app-select-trigger.has-selection{border-color:#4d6da8;background:#142039}
.library-controls-footer{display:flex;min-height:34px;align-items:center;justify-content:space-between;gap:12px;padding-top:2px}
.library-result-count{color:var(--muted);font-size:13px}
.library-reset{min-height:34px;padding:7px 12px;font-size:13px}
.library-tab-count{display:inline-flex;min-width:22px;min-height:22px;align-items:center;justify-content:center;margin-left:5px;padding:2px 6px;border-radius:999px;background:rgba(143,176,255,.1);color:#a9bde9;font-size:11px;font-weight:850}
.tab-btn.active .library-tab-count{background:rgba(91,140,255,.22);color:#dbe6ff}
.library-filter-empty{max-width:560px;margin:22px 0;padding:18px;border:1px dashed #35415a;border-radius:12px;background:rgba(18,23,34,.58);color:var(--muted);line-height:1.5}
.my-page .card-wrap{display:flex;width:var(--catalog-card-width);min-height:0}
.my-page .card-wrap[hidden]{display:none}
/* Card follows the standard poster width instead of stretching across a sparse row. */
.my-page .card{display:flex;flex:1;flex-direction:column;height:100%}
/* Every poster gets the same 2:3 frame; non-standard artwork remains uncropped. */
.my-page .poster-box{position:relative;width:100%;aspect-ratio:2/3;flex:0 0 auto;min-height:0;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:center;overflow:hidden;background:#0e1422}
.my-page .poster-box.poster-placeholder{padding:0}
.my-page .poster-box.poster-placeholder::before{display:none}
/* Blurred background from the same poster to fill side/top/bottom gaps. */
.my-page .poster-box::before{display:none}
.my-page .poster-box-backdrop{position:absolute;inset:0;z-index:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;filter:blur(14px) brightness(.7);transform:scale(1.15);border-bottom:0}
/* Actual poster image — never cropped, scales down as needed. */
.my-page .poster-box img:not(.poster-box-backdrop){position:relative;z-index:1;max-width:100%;max-height:100%;height:auto;width:auto;object-fit:contain;border-bottom:0}
/* JavaScript assigns row-local track heights for the currently visible library tab. */
.my-page .card-body{display:flex;flex:1;flex-direction:column;padding:10px}
.my-page .card .title{display:-webkit-box;height:var(--library-title-height,auto);overflow:hidden;line-height:1.25;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.my-page .card .subtitle{display:-webkit-box;height:var(--library-subtitle-height,auto);overflow:hidden;line-height:1.35;-webkit-line-clamp:1;-webkit-box-orient:vertical}
.my-page .card .subtitle.is-empty{visibility:hidden}
.library-card-meta{display:flex;height:var(--library-meta-height,auto);min-height:var(--library-meta-height,0);align-items:center;gap:8px;margin-top:5px;color:#92a0b8;font-size:11px;font-weight:750}
.library-card-meta span+span{color:#f3c96a}
.card-wrap{position:relative}
.card-remove{position:absolute;top:6px;right:6px;z-index:3;display:inline-flex;width:28px;height:28px;align-items:center;justify-content:center;padding:0;border:0;border-radius:50%;background:rgba(0,0,0,.6);color:#fff;cursor:pointer}
.card-remove .ui-icon{width:14px;height:14px}
.card-remove:hover{background:rgba(0,0,0,.76)}
.library-rating-value{display:inline-flex;align-items:center;gap:4px}
.library-rating-value .ui-icon{width:13px;height:13px;fill:currentColor}

/* Signed-in home: what to watch next */
.home-body{background:
  radial-gradient(circle at 14% -8%,rgba(91,140,255,.15),transparent 30rem),
  radial-gradient(circle at 92% 16%,rgba(105,72,180,.09),transparent 28rem),
  var(--bg)}
.container.home-main{max-width:var(--content-max-width)}
.home-dashboard{display:grid;min-width:0;gap:30px}
.home-feedback{margin:0;border-color:rgba(255,93,93,.45);background:rgba(255,93,93,.1);color:#ffc8cf}
.home-section-kicker{margin-bottom:7px;color:#9ab7ff;font-size:12px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.home-priority-section,.home-feed-section{display:grid;min-width:0;gap:14px}
.home-priority-section{padding:22px;border:1px solid var(--border);border-radius:18px;background:rgba(15,19,28,.6)}
.home-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.home-section-heading h2{margin:0;font-size:27px;line-height:1.15;letter-spacing:-.02em}
.home-section-heading p{max-width:480px;margin:0;color:var(--muted);font-size:14px;line-height:1.45;text-align:right}
.home-section-heading.compact{padding-bottom:2px;border-bottom:1px solid rgba(39,48,67,.7)}
.home-section-heading.compact h2{font-size:23px}
.home-card{position:relative;display:grid;grid-template-columns:112px minmax(0,1fr);flex:0 0 min(370px,88vw);width:min(370px,88vw);min-height:228px;overflow:hidden;border:1px solid #2c3850;border-radius:16px;background:linear-gradient(145deg,#171d29,#131821);box-shadow:0 12px 30px rgba(0,0,0,.16);cursor:pointer;scroll-snap-align:start;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}
.home-card:hover{transform:translateY(-2px);border-color:#42516f;box-shadow:0 18px 38px rgba(0,0,0,.23)}
.home-card-link{position:absolute;inset:0;z-index:1;border-radius:inherit}
.home-card-featured{grid-template-columns:230px minmax(0,1fr);width:100%;min-height:350px;background:linear-gradient(120deg,#192235,#141923)}
.home-card-poster{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;min-height:100%;overflow:hidden;border-right:1px solid var(--border);background:#0c121d;text-decoration:none}
.home-card-poster-backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:blur(15px) brightness(.52) saturate(.85);transform:scale(1.16)}
.home-card-poster-image{position:relative;z-index:1;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 8px 18px rgba(0,0,0,.35))}
.home-card-poster.poster-placeholder{padding:0;border-radius:0;border-top:0;border-left:0;border-bottom:0}
.home-poster-placeholder{object-fit:cover;filter:none}
.home-card-content{display:flex;min-width:0;flex-direction:column;align-items:flex-start;padding:16px}
.home-card-featured .home-card-content{justify-content:center;padding:28px 32px}
.home-card-topline{display:flex;width:100%;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.home-card-signal{display:inline-flex;align-items:center;min-height:24px;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:850;line-height:1.1}
.home-card-signal{margin-left:auto;border:1px solid rgba(54,199,138,.34);background:rgba(54,199,138,.1);color:#9cebc7;text-align:right}
.home-card-title{max-width:100%;overflow:hidden;color:#f4f6fd;text-decoration:none;text-overflow:ellipsis;font-size:19px;font-weight:870;line-height:1.18;white-space:nowrap}
.home-card:hover .home-card-title{color:#fff}
.home-card-featured .home-card-title{font-size:clamp(25px,3vw,36px);white-space:normal}
.home-card-subtitle{width:100%;margin-top:3px;overflow:hidden;color:var(--muted);font-size:13px;text-overflow:ellipsis;white-space:nowrap}
.home-episode-label{margin-top:18px;color:#8491aa;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.home-episode-heading{display:flex;width:100%;align-items:baseline;gap:8px;margin-top:4px;min-width:0}
.home-episode-code{flex:0 0 auto;color:#a8c0ff;font-size:12px;font-weight:900;letter-spacing:.04em}
.home-episode-name{min-width:0;overflow:hidden;color:#e8edf9;font-weight:760;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}
.home-card-featured .home-episode-name{font-size:20px;white-space:normal}
.home-episode-meta{display:flex;min-height:20px;align-items:center;gap:6px;margin-top:6px;color:var(--muted);font-size:12px;line-height:1.35}
.home-card-actions{position:relative;z-index:2;display:flex;align-items:center;gap:8px;margin-top:auto;padding-top:16px;flex-wrap:wrap}
.home-card-actions .btn{white-space:nowrap}
.home-card:not(.home-card-featured) .home-card-actions .btn{padding:7px 9px;border-radius:8px;font-size:12px}
.home-card-waiting{margin-top:18px;color:var(--muted);font-size:13px;line-height:1.4}
.home-card-row{display:flex;min-width:0;width:100%;gap:14px;overflow-x:auto;padding:2px 2px 12px;scroll-snap-type:x proximity}
.home-card-row::-webkit-scrollbar{height:8px}
.home-card-row::-webkit-scrollbar-thumb{border-radius:999px;background:#34415b}
.home-section-empty{display:flex;min-height:86px;flex-direction:column;justify-content:center;gap:4px;padding:18px;border:1px dashed #34415b;border-radius:14px;background:rgba(18,23,34,.6);color:var(--muted)}
.home-section-empty strong{color:#e6ebf8}
.home-empty-library{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;padding:26px;border:1px dashed #3a4965;border-radius:18px;background:rgba(19,25,37,.78)}
.home-empty-library h2{margin:0 0 5px}
.home-empty-library p{margin:0;color:var(--muted);line-height:1.5}
.home-empty-icon{display:flex;width:48px;height:48px;align-items:center;justify-content:center;border-radius:14px;background:rgba(91,140,255,.16);color:#a9c2ff;font-size:18px}
.home-empty-icon .ui-icon{width:21px;height:21px}
.home-data-notice{margin-top:-14px}
.home-card-link:focus-visible{outline:3px solid rgba(91,140,255,.6);outline-offset:-4px}
.home-card button:focus-visible,.home-empty-library a:focus-visible{outline:3px solid rgba(91,140,255,.5);outline-offset:2px}
/* Responsive */
@media(max-width:900px){
  .show-detail-hero-content{grid-template-columns:210px minmax(0,1fr);gap:24px;padding:25px}
  .show-detail-content-grid.has-aside{grid-template-columns:1fr;grid-template-rows:none;grid-template-areas:"summary" "aside" "seasons"}
  .show-detail-content-aside,.movie-content-aside{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}
  .show-detail-content-aside>.show-detail-side-card:only-child{grid-column:1/-1}
  .show-watch-progress{gap:14px}
  .show-watch-progress-copy{min-width:126px}
  .show-watch-progress-action{width:108px}
  .show-watch-progress-action-code{font-size:22px}
  .show-watch-progress-last{font-size:14px}
  .show-watch-progress-copy strong{font-size:15px}
  .library-filter-fields{grid-template-columns:repeat(3,minmax(120px,1fr))}
}
@media(max-width:720px){
  .show-main{padding-top:18px!important}
  .show-detail-content-grid.has-aside{grid-template-areas:"seasons" "summary" "aside"}
  .show-detail-hero{min-height:0;border-radius:18px}
  .show-detail-hero-shade{background:linear-gradient(0deg,rgba(12,18,31,var(--hero-shade-left)) 25%,rgba(14,22,38,var(--hero-shade-right)))}
  .show-detail-hero-content{min-height:0;grid-template-columns:1fr;justify-items:center;gap:22px;padding:22px}
  .show-detail-poster-frame{width:min(220px,70vw)}
  .show-detail-hero-copy{width:100%;padding:0;text-align:center}
  .show-detail-hero-copy h1{font-size:clamp(34px,10vw,48px)}
  .show-detail-facts,.show-detail-hero .show-primary-actions{justify-content:center}
  .show-detail-facts-row{grid-template-columns:1fr}
  .show-detail-facts-row>.show-watch-progress{justify-self:stretch}
  .show-detail-content-aside,.movie-content-aside{grid-template-columns:1fr}
  .show-detail-section,.movie-section{padding:19px}
  .show-watch-progress{display:grid;width:100%;max-width:none;min-width:0;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);justify-content:stretch;gap:10px;margin-top:4px}
  .show-watch-progress-copy{width:max-content;max-width:100%;min-width:0;justify-self:end;text-align:right}
  .show-watch-progress-action{grid-column:2}
  .show-detail-hero .show-primary-actions{width:100%;min-width:0;gap:7px}
  .show-detail-hero .show-primary-actions .btn:not(.link),.show-detail-hero .show-primary-actions .btn:visited{min-width:0;max-width:100%;flex:0 1 auto;overflow:hidden;text-overflow:ellipsis}
  /* allow multiple compact poster-width cards on narrow screens */
  .my-page .grid{grid-template-columns:repeat(auto-fill,minmax(140px,160px))}
  .my-page .card-wrap{width:auto}
  .my-page .card{height:auto}
  .library-filter-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
  .library-sort-field{max-width:none}
  .home-section-heading{display:block}
  .home-section-heading p{margin-top:5px;text-align:left}
  .home-card-featured{grid-template-columns:138px minmax(0,1fr);min-height:310px}
  .home-card-featured .home-card-content{padding:20px}
  .home-card-featured .home-card-title{font-size:24px}
  .home-empty-library{grid-template-columns:auto minmax(0,1fr)}
  .home-empty-library .btn{grid-column:1/-1;text-align:center}
  .show-rating-sources{width:100%;flex-basis:100%}
  .seasons-toggle{gap:8px;margin-top:30px}
  .seasons-heading-actions{gap:4px}
  .season-mobile-mark-all{display:inline-flex;width:28px;height:28px;flex:0 0 auto;align-items:center;justify-content:center;padding:0;border:1px solid #3b4b68;border-radius:7px;background:#172033;color:#b9caff;font-size:13px;line-height:1;cursor:pointer}
  .season-mobile-mark-all .ui-icon{width:17px;height:17px}
  .season-mobile-mark-all:hover{border-color:#5c78ad;background:#202d46;color:#fff}
  .season-mobile-mark-all:focus-visible{border-color:#648ff5;outline:0;box-shadow:0 0 0 3px rgba(91,140,255,.18)}
  .seasons>.tabs{padding-right:0}
  .season-actions{display:none}
  .modal-dialog.reviews-list-dialog{top:16px;bottom:16px}
}
@media(max-width:520px){
  .show-detail-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .show-detail-facts li{text-align:left}
  .ep-row{align-items:flex-start;flex-wrap:wrap}
  .ep-actions{width:100%;min-width:0;justify-content:flex-end;gap:8px;padding-left:30px;flex-wrap:wrap}
  .episode-facts{justify-content:flex-end;white-space:normal;flex-wrap:wrap}
}
@media(max-width:420px){
  .show-detail-hero-content{padding:16px}
  .show-detail-poster-frame{width:min(180px,62vw)}
  .show-detail-original-title{font-size:15px}
  .show-detail-hero .show-primary-actions .btn{flex:1 1 auto}
  .show-rating-stars .star{width:32px}
  .show-watch-progress{gap:8px}
  .show-watch-progress-copy{min-width:0}
  .show-watch-progress-action{width:96px}
  .show-watch-progress-action-code{font-size:20px}
  .show-watch-progress-last{font-size:13px}
  .show-watch-progress-copy strong{font-size:14px}
  .seasons-title{font-size:21px}
  .seasons-toggle #toggle-download-view{gap:5px;padding:5px;font-size:12px}
  .seasons-toggle #toggle-download-view .ui-icon{width:18px;height:18px}
  .my-page .grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .my-page .card{height:auto}
  .library-controls{margin-left:-4px;margin-right:-4px;padding:12px;border-radius:13px}
  .library-search-row{grid-template-columns:1fr}
  .library-filter-toggle{width:100%}
  .library-filter-fields{grid-template-columns:1fr}
  .container.home-main{padding-left:12px;padding-right:12px}
  .home-dashboard{gap:24px}
  .home-priority-section{padding:16px;border-radius:14px}
  .home-card,.home-card-featured{grid-template-columns:104px minmax(0,1fr);min-height:270px;border-radius:13px}
  .home-card-featured{width:100%}
  .home-card-row .home-card{flex-basis:calc(100vw - 48px);width:calc(100vw - 48px)}
  .home-card-featured .home-card-content,.home-card-content{padding:14px}
  .home-card-featured .home-card-title{font-size:21px}
  .home-card-featured .home-episode-name{font-size:16px}
  .home-card-actions{gap:6px}
  .home-card-actions .btn{padding:7px 8px;font-size:12px}
  .review-editor-dialog,.episode-note-dialog{width:calc(100vw - 16px);margin-top:8px}
  .modal-dialog.review-editor-dialog,.modal-dialog.episode-note-dialog{max-height:calc(100vh - 16px)}
  .modal-dialog.reviews-list-dialog{top:8px;bottom:8px;width:calc(100vw - 16px)}
}

/* Mobile and responsive enhancements */
/* Improve search input size and suggestions usability */
.search-form #search-input{padding:14px 16px;font-size:16px}
.search-form .suggestions{top:calc(100% + 6px);max-height:70vh}
.suggestion img{width:48px;height:72px}

/* Header: make search full width on small screens */
@media(max-width:720px){
  .header-flex{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px 8px}
  .header-flex .logo{grid-column:1;grid-row:1}
  .header-flex .search-form{grid-column:1/-1;grid-row:3;width:100%;min-width:0}
  .header-flex .nav{grid-column:1/-1;grid-row:2;display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .header-flex .nav .btn{width:100%}
  .auth-box{grid-column:2/4;grid-row:1;justify-self:end;min-width:0;margin-left:0}
  .auth-box .welcome{display:inline-flex}
  .profile-link{min-width:0}
  .profile-name{max-width:112px}
  .guest-language-toggle{width:44px;height:44px;border-radius:10px}
}

/* Make search results on the home page look like My Series */
.search-page .grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}
.search-page .card img{height:auto;aspect-ratio:2/3;object-fit:contain;background:#0e1422}
.search-page .card-poster-placeholder{height:auto;aspect-ratio:2/3}

/* Recommendations */
.recommendations-page{display:grid;gap:30px;padding-bottom:34px}
.recommendations-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px}
.recommendations-hero h1{margin-bottom:8px}
.recommendations-hero p{max-width:760px;margin:0;color:var(--muted);line-height:1.55}
.recommendations-hero .btn{flex:none}
.recommendation-status{display:grid;gap:5px;margin:0}
.recommendation-status-error{border-color:rgba(255,93,93,.45);background:rgba(77,24,34,.45);color:#ffd2d8}
.recommendation-section{display:grid;gap:4px}
.recommendation-section .grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));align-items:stretch}
.recommendation-card{display:flex;min-width:0;flex-direction:column}
.recommendation-card-link{display:flex;min-width:0;flex:1;flex-direction:column;color:inherit;text-decoration:none}
.recommendation-card img{height:auto;aspect-ratio:2/3;object-fit:cover;background:#0e1422}
.recommendation-card .card-body{display:flex;flex:1;flex-direction:column;gap:4px}
.recommendation-card .title{display:block;overflow:visible;overflow-wrap:anywhere;line-height:1.3}
.recommendation-genres{display:block;overflow:visible;overflow-wrap:anywhere;color:var(--muted);font-size:12px;line-height:1.4}
.recommendation-reason{margin-top:auto;padding-top:9px;border-top:1px solid rgba(56,68,91,.72);color:#9ab7ff;font-size:12px;line-height:1.4}
.recommendation-card-action{padding:0 12px 12px}
.recommendation-plan-button{display:inline-flex;width:100%;align-items:center;justify-content:center;gap:7px}
.recommendation-plan-button .ui-icon{width:16px;height:16px}
.recommendation-plan-button.is-planned:disabled{border-color:rgba(var(--primary-rgb),.38);background:rgba(var(--primary-rgb),.12);color:var(--primary);opacity:1}
.recommendation-plan-button.is-planned:disabled:hover{background:rgba(var(--primary-rgb),.12)}
.recommendation-empty{margin-top:-8px}

/* Similar media modal */
.similar-media-dialog{display:flex;width:min(1180px,calc(100vw - 32px));max-width:none;max-height:calc(100vh - 32px);margin:16px auto 0;padding:0;overflow:hidden;flex-direction:column}
.similar-media-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:20px 64px 15px 22px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,color-mix(in srgb,var(--panel) 88%,var(--primary)),var(--panel))}
.similar-media-header h2{margin:2px 0 0;font-size:26px;letter-spacing:-.02em}
.similar-media-kicker{color:var(--primary);font-size:12px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}
.similar-media-body{min-height:260px;margin:0;padding:20px 22px 24px;overflow:auto;overscroll-behavior:contain;background:#10141c}
.similar-media-state{display:flex;min-height:210px;align-items:center;justify-content:center;gap:12px;color:var(--muted);text-align:left}
.similar-media-state>div{display:grid;max-width:520px;gap:4px}
.similar-media-state strong{color:var(--text);font-size:16px;line-height:1.35}
.similar-media-state span:not(.suggestion-spinner){font-size:13px;line-height:1.5}
.similar-media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px;align-items:stretch}
.similar-media-card{display:flex;min-width:0;flex-direction:column}
.similar-media-card img{height:auto;aspect-ratio:2/3;object-fit:cover;background:#0e1422}
.similar-media-card .card-body{display:flex;min-width:0;flex:1;flex-direction:column;gap:4px}
.similar-media-card .title{overflow-wrap:anywhere;line-height:1.3}
.similar-media-retry{display:block;margin:0 auto}
.similar-media-retry[hidden]{display:none}

/* Download table */
.download-modal-dialog{width:min(1180px,calc(100vw - 32px));max-width:none;max-height:calc(100vh - 32px);margin:16px auto 0;overflow:hidden;padding:18px}
.download-modal-body{max-height:calc(100vh - 92px);margin:0;overflow:auto;padding-top:4px}
.download-table{margin-top:2px}
@media (max-width:720px){
  .similar-media-dialog{width:calc(100vw - 16px);max-height:calc(100vh - 16px);margin:8px auto 0;border-radius:12px}
  .similar-media-header{padding:17px 54px 13px 15px}
  .similar-media-header h2{font-size:22px}
  .similar-media-body{padding:14px}
  .similar-media-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .download-modal-dialog{width:calc(100vw - 16px);max-height:calc(100vh - 16px);margin:8px auto 0;padding:13px}
  .download-modal-body{max-height:calc(100vh - 76px)}
}
.torrent-sort-tools{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 7px}
.torrent-sort-hint{color:var(--muted);font-size:12px;line-height:1.35}
.torrent-multisort-toggle{flex:0 0 auto}
.torrent-multisort-toggle[aria-pressed="true"]{border-color:#5b8cff;background:#263d70;color:#fff}
.torrent-table-wrap{width:100%;overflow:auto;border:1px solid #2c3851;border-radius:8px;background:#111722;box-shadow:0 14px 30px rgba(0,0,0,.22)}
.torrent-table{width:100%;min-width:920px;border-collapse:separate;border-spacing:0;table-layout:fixed;color:var(--text)}
.torrent-col-season{width:82px}
.torrent-col-video{width:154px}
.torrent-col-size{width:98px}
.torrent-col-seeds{width:78px}
.torrent-col-added{width:112px}
.torrent-col-download{width:100px}
.torrent-table th{position:sticky;top:0;z-index:1;padding:0;border-bottom:1px solid #33405a;background:#151d2a;color:#dbe6ff;text-align:left;font-size:13px;font-weight:700}
.torrent-table th:not(:first-child),.torrent-table td:not(:first-child){border-left:1px solid rgba(88,104,135,.32)}
.torrent-table th:last-child{padding:12px 10px;text-align:center}
.torrent-table td{padding:12px 10px;border-bottom:1px solid #263248;vertical-align:middle;background:#121822}
.torrent-table tbody tr:nth-child(even) td{background:#151c27}
.torrent-table tbody tr:hover td{background:#1a2434}
.torrent-table tbody tr:last-child td{border-bottom:0}
.torrent-sort{display:inline-flex;width:100%;min-height:42px;align-items:center;gap:6px;padding:12px 10px;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}
.torrent-sort:hover{color:#ffffff;background:rgba(91,140,255,.08)}
.torrent-sort-direction{display:inline-flex;align-items:center;gap:2px;color:#8fb0ff;font-size:11px;font-weight:850}
.torrent-sort-direction .ui-icon{width:13px;height:13px}
.torrent-title{display:flex;width:100%;align-items:flex-start;gap:8px;padding:0;border:0;background:transparent;color:var(--text);font:inherit;line-height:1.35;text-align:left;cursor:pointer;white-space:normal}
.torrent-title:hover{color:#d6e1ff}
.torrent-pin{flex:0 0 auto;display:inline-flex;align-items:center;min-height:22px;padding:2px 7px;border:1px solid rgba(91,140,255,.42);border-radius:999px;background:rgba(91,140,255,.14);color:#aecaff;font-size:12px;font-weight:700}
.torrent-video{display:flex;flex-wrap:wrap;gap:5px}
.video-pill{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border:1px solid transparent;border-radius:999px;font-size:12px;font-weight:800;line-height:1;white-space:nowrap}
.video-uhd{border-color:rgba(91,140,255,.5);background:rgba(91,140,255,.18);color:#b9cbff}
.video-hd{border-color:rgba(54,199,138,.48);background:rgba(54,199,138,.14);color:#9af0c6}
.video-sd{border-color:rgba(170,177,197,.34);background:rgba(170,177,197,.1);color:#c3cad9}
.video-hdr{border-color:rgba(247,181,0,.5);background:rgba(247,181,0,.16);color:#ffd978}
.video-dv{border-color:rgba(178,132,255,.48);background:rgba(178,132,255,.16);color:#d8c2ff}
.video-muted{color:#7f8ba7;font-size:13px}
.torrent-season-cell,.torrent-size-cell,.torrent-seeds-cell,.torrent-added-cell,.torrent-download-cell{text-align:center;white-space:nowrap}
.torrent-season-cell{color:#d4dff5;font-weight:750}
.torrent-size-cell{color:#e8eefc}
.torrent-seeds-cell{color:#8ef5bf;font-weight:800}
.torrent-added-cell{color:#c2cadc}
.torrent-download{width:76px;text-align:center;background:#121a29;border-color:#34425e}
.torrent-download:hover{background:#1d2a40}
.torrent-empty{padding:22px 12px!important;text-align:center;color:var(--muted)}
.download-error{margin-top:8px}
.torrent-details-title{margin-bottom:8px;font-weight:600}
.torrent-details-list{margin-top:6px;padding-left:18px}
@media(max-width:720px){
  .torrent-sort-tools{align-items:flex-start;flex-direction:column}
  .torrent-table{min-width:820px}
  .torrent-col-season{width:74px}
  .torrent-col-video{width:136px}
  .torrent-col-size{width:90px}
  .torrent-col-added{width:104px}
}

/* Smaller screens tweaks */
@media(max-width:720px){
  .suggestion img{width:56px;height:84px}
  .search-page .grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}
  .recommendations-hero{display:grid;align-items:start;gap:16px}
  .recommendations-hero .btn{justify-self:start}
  .recommendation-section .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  /* Keep library tabs on one scrollable row. */
  .my-page .tabs{flex-wrap:nowrap}
  .my-page .tabs .tab-btn{flex:0 0 auto;min-width:max-content;text-align:center}
}
@media(max-width:420px){
  .search-page .grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}
}

/* Diagnostics */
.diagnostics-body{--diagnostics-bg:#0d1017;--diagnostics-surface:#121722;--diagnostics-surface-soft:#111722;--diagnostics-surface-raised:#151d2a;--diagnostics-surface-control:#101722;--diagnostics-surface-deep:#0d121c;--diagnostics-surface-poster:#0b1019;--diagnostics-placeholder:#101827;--diagnostics-border:#2c3851;--diagnostics-border-soft:#263248;--diagnostics-border-strong:#33405b;--diagnostics-divider:#29344a;--diagnostics-track:#263148;--diagnostics-text:#dbe6ff;--diagnostics-text-strong:#f2f5ff;--diagnostics-text-soft:#c8d8ff;--diagnostics-text-detail:#cbd4e6;--diagnostics-kicker:#8fb0ff;--diagnostics-neutral-accent:#6d8fd6;--diagnostics-memory-accent:#5fa6cf;--diagnostics-core-accent:#718fd0;background:var(--diagnostics-bg)}
.diagnostics-body[data-diagnostics-theme="movie"]{--bg:#130f0d;--panel:#1d1714;--panel-2:#29201b;--text:#f2e9e4;--muted:#bca99e;--primary:#f08a4b;--primary-600:#d96f34;--primary-rgb:240,138,75;--primary-soft:rgba(var(--primary-rgb),.13);--primary-border:rgba(var(--primary-rgb),.43);--focus-ring:0 0 0 3px rgba(var(--primary-rgb),.27);--border:#49362d;--scrollbar-track:#17100d;--scrollbar-thumb:#6a4a3a;--scrollbar-thumb-hover:#8c6049;--scrollbar-thumb-active:#bd7954;--diagnostics-bg:#100d0b;--diagnostics-surface:#1b1512;--diagnostics-surface-soft:#17120f;--diagnostics-surface-raised:#211813;--diagnostics-surface-control:#1a130f;--diagnostics-surface-deep:#100c0a;--diagnostics-surface-poster:#120d0a;--diagnostics-placeholder:#1b120e;--diagnostics-border:#543a2d;--diagnostics-border-soft:#422e25;--diagnostics-border-strong:#644535;--diagnostics-divider:#493227;--diagnostics-track:#3b2a22;--diagnostics-text:#ffe7d8;--diagnostics-text-strong:#fff3ec;--diagnostics-text-soft:#f2c5aa;--diagnostics-text-detail:#d7b5a1;--diagnostics-kicker:#ffac78;--diagnostics-neutral-accent:#d98250;--diagnostics-memory-accent:#d59a6e;--diagnostics-core-accent:#c9784b;background:radial-gradient(circle at 14% -8%,rgba(var(--primary-rgb),.13),transparent 32rem),var(--diagnostics-bg)}
html[data-diagnostics-theme="movie"]{--scrollbar-track:#17100d;--scrollbar-thumb:#6a4a3a;--scrollbar-thumb-hover:#8c6049;--scrollbar-thumb-active:#bd7954}
.container.diagnostics-main{max-width:var(--content-max-width)}
.diagnostics-page{padding-bottom:60px}
.diagnostics-back{display:inline-flex;align-items:center;gap:9px;margin-bottom:18px;color:var(--diagnostics-text);text-decoration:none;font-weight:760}
.diagnostics-back:hover{color:#fff}
.diagnostics-back-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--border);border-radius:8px;background:var(--diagnostics-surface-raised);color:var(--diagnostics-text-soft);font-size:18px;line-height:1}
.diagnostics-back-icon .ui-icon{width:17px;height:17px}
.diagnostics-topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin:10px 0 18px}
.diagnostics-topbar>div:first-child{min-width:0}
.diagnostics-theme-switch{display:inline-flex;flex:none;gap:3px;padding:3px;border:1px solid var(--diagnostics-border);border-radius:10px;background:var(--diagnostics-surface-soft)}
.diagnostics-theme-option{display:inline-flex;min-height:36px;align-items:center;gap:7px;padding:7px 10px;border:0;border-radius:7px;background:transparent;color:var(--muted);cursor:pointer;font:inherit;font-size:13px;font-weight:760;transition:background .16s ease,color .16s ease,box-shadow .16s ease}
.diagnostics-theme-option .ui-icon{width:17px;height:17px}
.diagnostics-theme-option:hover{background:rgba(var(--primary-rgb),.08);color:var(--text)}
.diagnostics-theme-option:focus-visible{outline:0;box-shadow:var(--focus-ring)}
.diagnostics-theme-option.is-active{background:var(--primary-soft);color:var(--diagnostics-text-strong);box-shadow:inset 0 0 0 1px var(--primary-border)}
.diagnostics-body .diagnostics-tabs .tab-btn.active{border-color:var(--primary-border);background:var(--primary-soft)}
.diagnostics-body .app-select-trigger{border-color:var(--diagnostics-border);background:var(--diagnostics-surface-control)}
.diagnostics-body .app-select-trigger:hover{border-color:var(--diagnostics-border-strong);background:var(--diagnostics-surface-raised)}
.diagnostics-body .app-select-trigger:focus-visible,.diagnostics-body .app-select.is-open .app-select-trigger{border-color:var(--primary-border);box-shadow:var(--focus-ring)}
.diagnostics-body .app-select-chevron{color:var(--diagnostics-text-soft)}
.diagnostics-body .app-select-menu{border-color:var(--diagnostics-border);background:var(--diagnostics-surface-raised)}
.diagnostics-body .app-select-option:hover,.diagnostics-body .app-select-option:focus-visible{background:var(--diagnostics-surface-soft)}
.diagnostics-body .app-select-option.is-selected{background:var(--primary-soft);color:var(--diagnostics-text-strong)}
.diagnostics-body .app-select-option-check{color:var(--primary)}
.diagnostics-kicker{color:var(--diagnostics-kicker);font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.diagnostics-page h1{margin:4px 0 6px;font-size:32px;line-height:1.15}
.diagnostics-page h2{margin:0;font-size:19px;line-height:1.2}
.diagnostics-updated,.diagnostics-muted{color:var(--muted);font-size:13px;line-height:1.45}
.diagnostics-tabs{display:flex;gap:8px;margin:6px 0 16px;flex-wrap:wrap}
.diagnostics-tabs .tab-btn{min-width:136px}
.diagnostics-tab-panel[hidden]{display:none}
.diagnostics-section{margin-top:18px;padding-top:18px;border-top:1px solid var(--border)}
.diagnostics-section-first{margin-top:0;padding-top:0;border-top:0}
.diagnostics-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:12px}
.diagnostics-system-head{align-items:center}
.diagnostics-system-live{display:inline-flex;align-items:center;gap:8px;flex:none;padding:7px 10px;border:1px solid rgba(54,199,138,.3);border-radius:999px;background:rgba(54,199,138,.09);color:#aef5cf;font-size:12px;font-weight:760}
.diagnostics-system-live-dot{width:8px;height:8px;border-radius:50%;background:#48d69d;box-shadow:0 0 0 4px rgba(72,214,157,.12)}
.diagnostics-system-live.is-paused{border-color:var(--diagnostics-border-strong);background:var(--diagnostics-surface-raised);color:var(--muted)}
.diagnostics-system-live.is-paused .diagnostics-system-live-dot{background:#7b879d;box-shadow:none}
.diagnostics-system-live.is-error{border-color:rgba(255,93,93,.38);background:rgba(255,93,93,.1);color:#ffc0c8}
.diagnostics-system-live.is-error .diagnostics-system-live-dot{background:#ff6f7f;box-shadow:0 0 0 4px rgba(255,111,127,.12)}
.diagnostics-system-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.diagnostics-system-card{--system-accent:var(--diagnostics-neutral-accent);display:flex;min-width:0;min-height:208px;flex-direction:column;padding:16px;border:1px solid var(--border);border-radius:10px;background:linear-gradient(145deg,color-mix(in srgb,var(--system-accent) 7%,transparent),transparent 55%),var(--diagnostics-surface);overflow:hidden}
.diagnostics-system-card-cpu{--system-accent:var(--primary)}
.diagnostics-system-card-memory{--system-accent:var(--diagnostics-memory-accent)}
.diagnostics-system-card-label{color:var(--diagnostics-text);font-size:14px;font-weight:800}
.diagnostics-system-card-value{display:flex;align-items:baseline;gap:4px;margin:17px 0 13px;color:var(--diagnostics-text-strong);font-variant-numeric:tabular-nums}
.diagnostics-system-card-value strong{font-size:38px;font-weight:880;line-height:1}
.diagnostics-system-card-value span{color:var(--muted);font-size:17px;font-weight:750}
.diagnostics-system-progress{height:7px;border-radius:999px;overflow:hidden;background:var(--diagnostics-track)}
.diagnostics-system-progress>span{display:block;width:0;height:100%;border-radius:inherit;background:var(--system-accent);transition:width .4s ease}
.diagnostics-system-card-detail{margin-top:10px;color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}
.diagnostics-system-sparkline{width:100%;height:52px;margin-top:auto;padding-top:16px;color:var(--system-accent);overflow:visible}
.diagnostics-system-sparkline polyline{fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.diagnostics-system-facts{display:grid;gap:0;margin:11px 0 0}
.diagnostics-system-facts div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:9px 0;border-top:1px solid var(--diagnostics-divider)}
.diagnostics-system-facts dt{color:var(--muted);font-size:12px;line-height:1.35}
.diagnostics-system-facts dd{margin:0;color:var(--diagnostics-text);font-size:12px;font-weight:750;line-height:1.35;text-align:right;font-variant-numeric:tabular-nums}
.diagnostics-system-cores{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}
.diagnostics-system-core{--system-accent:var(--diagnostics-core-accent);display:grid;gap:10px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--diagnostics-surface)}
.diagnostics-system-core-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px}
.diagnostics-system-core-head strong{color:var(--diagnostics-text-strong);font-size:16px;font-variant-numeric:tabular-nums}
.diagnostics-flash{margin:12px 0;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--diagnostics-surface-raised);color:var(--diagnostics-text)}
.diagnostics-flash.ok{border-color:rgba(54,199,138,.45);background:rgba(54,199,138,.12);color:#aef5cf}
.diagnostics-flash.error{border-color:rgba(255,93,93,.5);background:rgba(255,93,93,.12);color:#ffc0c8}
.diagnostics-flash.info{border-color:var(--primary-border);background:var(--primary-soft);color:var(--diagnostics-text-soft)}
.diagnostics-checks{display:flex;gap:8px;flex-wrap:wrap}
.diagnostics-checks.is-single{align-items:center;gap:12px;padding:12px;border:1px solid var(--diagnostics-border);border-radius:8px;background:var(--diagnostics-surface-soft)}
.diagnostics-run-all{min-width:172px;font-weight:850}
.diagnostics-check-results{display:grid;gap:8px;margin-top:10px}
.diagnostics-check-result{padding:9px 10px;border:1px solid var(--border);border-radius:8px;background:var(--diagnostics-surface);color:var(--diagnostics-text)}
.diagnostics-check-result.is-ok{border-color:rgba(54,199,138,.4);color:#aef5cf}
.diagnostics-check-result.is-error{border-color:rgba(255,93,93,.48);color:#ffc0c8}
.diagnostics-stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}
.diagnostics-stat{padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--diagnostics-surface)}
.diagnostics-stat-value{font-size:26px;font-weight:850;line-height:1;color:var(--diagnostics-text-strong)}
.diagnostics-stat-label{margin-top:7px;color:var(--muted);font-size:13px;line-height:1.35}
.diagnostics-errors{display:grid;gap:8px}
.diagnostics-empty{padding:14px;border:1px dashed var(--diagnostics-border-strong);border-radius:8px;color:var(--muted);background:var(--diagnostics-surface-soft)}
.diagnostics-error{border:1px solid var(--border);border-radius:8px;background:var(--diagnostics-surface);overflow:hidden}
.diagnostics-error[open]{border-color:var(--diagnostics-border-strong)}
.diagnostics-error summary{display:flex;align-items:center;justify-content:space-between;gap:14px;cursor:pointer;padding:12px;list-style:none}
.diagnostics-error summary::-webkit-details-marker{display:none}
.diagnostics-error-title{font-weight:750;line-height:1.35;color:var(--diagnostics-text-strong)}
.diagnostics-error-meta{color:var(--muted);font-size:12px;text-align:right;white-space:nowrap}
.diagnostics-error-body{padding:0 12px 12px}
.diagnostics-error-tech{margin-bottom:8px;color:var(--diagnostics-text-detail);font-size:13px}
.diagnostics-json-block{display:grid;gap:6px}
.diagnostics-json-actions{display:flex;justify-content:flex-end}
.diagnostics-json-copy{min-width:142px}
.diagnostics-json{max-height:260px;overflow:auto;margin:0;padding:10px;border:1px solid var(--diagnostics-border);border-radius:8px;background:var(--diagnostics-surface-deep);color:var(--diagnostics-text);font-size:12px;line-height:1.45;white-space:pre-wrap}
.diagnostics-table-wrap{width:100%;overflow:auto;border:1px solid var(--diagnostics-border);border-radius:8px;background:var(--diagnostics-surface-soft)}
.diagnostics-table{width:100%;min-width:760px;border-collapse:separate;border-spacing:0;color:var(--text)}
.diagnostics-table th,.diagnostics-table td{padding:10px;border-bottom:1px solid var(--diagnostics-border-soft);text-align:left;vertical-align:top}
.diagnostics-table th{position:sticky;top:0;background:var(--diagnostics-surface-raised);color:var(--diagnostics-text);font-size:13px}
.diagnostics-table tr:last-child td{border-bottom:0}
.diagnostics-table-title{font-weight:760}
.diagnostics-table details summary{cursor:pointer;color:var(--diagnostics-text)}
.diagnostics-task-link{display:inline-block;max-width:360px;color:var(--diagnostics-text-strong);text-decoration:none;font-weight:780;line-height:1.3;overflow-wrap:anywhere}
.diagnostics-task-link:hover{color:#fff;text-decoration:underline}
.diagnostics-task-detail{margin-top:3px;color:var(--muted);font-size:12px;line-height:1.35}
.diagnostics-task-status{font-weight:760;white-space:nowrap}
.diagnostics-task-status.is-running{color:var(--diagnostics-text-soft)}
.diagnostics-task-status.is-queued{color:#ffd978}
.diagnostics-task-status.is-done{color:#aef5cf}
.diagnostics-task-status.is-failed{color:#ffc0c8}
.diagnostics-task-progress{width:180px;max-width:100%;height:7px;border-radius:999px;overflow:hidden;background:var(--diagnostics-track)}
.diagnostics-task-progress-fill{height:100%;width:0;border-radius:999px;background:var(--primary);transition:width .55s ease}
.diagnostics-task-progress-text{margin-top:5px;max-width:260px;color:var(--muted);font-size:12px;line-height:1.35}
.diagnostics-task-stages{display:grid;width:320px;max-width:40vw;gap:9px}
.diagnostics-task-stage{display:grid;gap:4px}
.diagnostics-task-stage-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px;line-height:1.3}
.diagnostics-task-stage-label{min-width:0;color:var(--diagnostics-text);font-weight:700}
.diagnostics-task-stage-value{flex:none;white-space:nowrap;font-variant-numeric:tabular-nums}
.diagnostics-task-stage-progress{width:100%;height:6px}
.diagnostics-task-stage-queue{color:var(--muted);font-size:11px;line-height:1.3;font-variant-numeric:tabular-nums}
.diagnostics-task-stage.is-done .diagnostics-task-progress-fill{background:#48d69d}
.diagnostics-task-stage.is-failed .diagnostics-task-progress-fill{background:#ff6f7f}
.diagnostics-task-stage.is-queued .diagnostics-task-progress-fill,.diagnostics-task-stage.is-idle .diagnostics-task-progress-fill{background:#7b879d}
@keyframes diagnostics-stage-indeterminate{from{transform:translateX(-135%)}to{transform:translateX(335%)}}
.diagnostics-task-stage.is-indeterminate .diagnostics-task-progress-fill{width:30%!important;animation:diagnostics-stage-indeterminate 1.25s ease-in-out infinite;transition:none}
.diagnostics-task-stage-message{max-width:320px;margin-top:8px}
.diagnostics-task-retry{margin-top:8px}
.diagnostics-background-controls{display:flex;align-items:flex-end;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.diagnostics-background-retry-all{align-self:flex-end}
.diagnostics-background-control{display:grid;gap:4px;color:var(--muted);font-size:12px;font-weight:700}
.diagnostics-background-control .app-select{min-width:128px}
.diagnostics-background-pagination{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:12px}
.diagnostics-background-pages{display:flex;align-items:center;gap:5px}
.diagnostics-background-page{min-width:34px;padding-inline:9px}
.diagnostics-background-page.is-active{border-color:var(--primary-border);background:var(--primary-soft);color:var(--diagnostics-text);opacity:1}
.diagnostics-background-page-ellipsis{padding:0 2px;color:var(--muted)}
.diagnostics-background-page-info{color:var(--muted);font-size:13px}
.diagnostics-cache-head-actions{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.diagnostics-recommendation-form{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:12px;align-items:end}
.diagnostics-recommendation-form label{display:grid;min-width:0;gap:5px;color:var(--muted);font-size:12px;font-weight:700}
.diagnostics-recommendation-form input{width:100%;min-height:38px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--diagnostics-surface-control);color:var(--text)}
.diagnostics-recommendation-form .app-select{width:100%;min-width:0}
.diagnostics-recommendation-submit{min-height:38px}
.diagnostics-recommendation-result{min-height:18px;margin-top:12px}
.diagnostics-notification-admin-hint{margin-top:12px}
.diagnostics-api-head{align-items:flex-end}
.diagnostics-api-period-controls{display:flex;align-items:flex-end;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.diagnostics-api-period-buttons{display:flex;gap:6px;flex-wrap:wrap}
.diagnostics-api-period{min-width:74px}
.diagnostics-api-period.is-active{border-color:var(--primary-border);background:var(--primary-soft);color:var(--diagnostics-text-strong)}
.diagnostics-api-date-control{display:grid;gap:4px;color:var(--muted);font-size:12px;font-weight:700}
.diagnostics-api-date-control input{min-height:36px;padding:7px 10px;border:1px solid var(--border);border-radius:8px;background:var(--diagnostics-surface-control);color:var(--text);color-scheme:dark;font:inherit}
.diagnostics-api-date-control input:focus{border-color:var(--primary-border);outline:2px solid var(--primary-soft);outline-offset:1px}
.diagnostics-api-period-summary{min-height:20px;margin:0 0 12px}
.diagnostics-api-usage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}
.diagnostics-api-card{--api-accent:var(--diagnostics-neutral-accent);display:grid;align-content:start;gap:11px;min-height:174px;padding:14px;border:1px solid var(--border);border-radius:10px;background:var(--diagnostics-surface)}
.diagnostics-api-card[data-service="tmdb"]{--api-accent:#4f91ad}
.diagnostics-api-card[data-service="google_translate"]{--api-accent:#7185bb}
.diagnostics-api-card[data-service="thetvdb"]{--api-accent:#8876b2}
.diagnostics-api-card[data-service="kinopoisk"]{--api-accent:#b99a54}
.diagnostics-api-card[data-service="mdblist"]{--api-accent:#637fc1}
.diagnostics-api-card-head{display:flex;align-items:center;gap:8px;color:var(--diagnostics-text);font-size:14px;font-weight:800}
.diagnostics-api-card-dot{width:9px;height:9px;border-radius:50%;background:var(--api-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--api-accent) 15%,transparent)}
.diagnostics-api-card-value{font-size:30px;font-weight:870;line-height:1;color:var(--diagnostics-text-strong);font-variant-numeric:tabular-nums}
.diagnostics-api-card-unit{margin-top:-6px;color:var(--muted);font-size:12px}
.diagnostics-api-card-bar{height:6px;border-radius:999px;overflow:hidden;background:var(--diagnostics-track)}
.diagnostics-api-card-bar-fill{height:100%;min-width:0;border-radius:inherit;background:var(--api-accent)}
.diagnostics-api-card-operations{display:grid;gap:6px;color:var(--diagnostics-text-detail);font-size:12px;line-height:1.35}
.diagnostics-api-card-operation{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px}
.diagnostics-api-card-operation strong{color:var(--diagnostics-text-strong);font-variant-numeric:tabular-nums;font-weight:760}
.diagnostics-api-card-details{display:grid;gap:4px;padding-top:10px;border-top:1px solid var(--diagnostics-divider);color:var(--muted);font-size:12px;line-height:1.35}
.diagnostics-api-card-details strong{color:var(--diagnostics-text);font-weight:720}
.diagnostics-api-quota-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.diagnostics-api-quota-card{--quota-accent:#7185bb;display:grid;grid-template-columns:124px minmax(0,1fr);align-items:center;gap:18px;min-height:174px;padding:16px;border:1px solid var(--border);border-radius:10px;background:var(--diagnostics-surface)}
.diagnostics-api-quota-card[data-service="kinopoisk"]{--quota-accent:#b99a54}
.diagnostics-api-quota-card[data-service="mdblist"]{--quota-accent:#637fc1}
.diagnostics-api-quota-ring{display:grid;width:112px;height:112px;padding:9px;border-radius:50%;background:conic-gradient(var(--quota-accent) calc(var(--quota-percent,0) * 1%),var(--diagnostics-track) 0);box-shadow:inset 0 0 0 1px rgba(255,255,255,.025)}
.diagnostics-api-quota-ring-inner{display:flex;align-items:center;justify-content:center;flex-direction:column;border-radius:50%;background:var(--diagnostics-surface);box-shadow:0 0 0 1px rgba(255,255,255,.035)}
.diagnostics-api-quota-value{font-size:25px;font-weight:880;line-height:1;color:var(--diagnostics-text-strong);font-variant-numeric:tabular-nums}
.diagnostics-api-quota-label{margin-top:5px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em}
.diagnostics-api-quota-body{display:grid;gap:7px;min-width:0}
.diagnostics-api-quota-title{font-size:18px;font-weight:840;color:var(--diagnostics-text-strong)}
.diagnostics-api-quota-total{color:var(--diagnostics-text-detail);font-size:14px;font-weight:720}
.diagnostics-api-quota-meta{color:var(--muted);font-size:12px;line-height:1.4}
.diagnostics-api-quota-empty .diagnostics-api-quota-ring{background:var(--diagnostics-track)}
.diagnostics-cache-control{display:grid;gap:4px;color:var(--muted);font-size:12px;font-weight:700}
.diagnostics-cache-control .app-select{min-width:96px}
.diagnostics-cache-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));gap:14px}
.diagnostics-cache-card{display:grid;grid-template-columns:136px minmax(0,1fr);gap:14px;min-height:214px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--diagnostics-surface)}
.diagnostics-cache-poster{display:flex;align-items:center;justify-content:center;align-self:stretch;min-height:190px;border:1px solid var(--diagnostics-border-soft);border-radius:8px;overflow:hidden;background:var(--diagnostics-surface-poster);text-decoration:none}
.diagnostics-cache-poster img{width:100%;height:100%;min-height:190px;object-fit:cover;display:block}
.diagnostics-cache-placeholder{display:block;width:100%;height:100%;min-height:190px;object-fit:cover;background:var(--diagnostics-placeholder)}
.diagnostics-cache-body{min-width:0;display:flex;flex-direction:column;justify-content:space-between;gap:12px}
.diagnostics-cache-title{color:var(--diagnostics-text-strong);text-decoration:none;font-size:18px;font-weight:850;line-height:1.25;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.diagnostics-cache-title:hover{color:#fff}
.diagnostics-cache-card.is-preloading{border-color:var(--primary-border)}
.diagnostics-cache-card.is-error{border-color:rgba(255,93,93,.48)}
.diagnostics-cache-progress-wrap{display:grid;gap:6px}
.diagnostics-cache-progress{height:7px;border-radius:999px;overflow:hidden;background:var(--diagnostics-track)}
.diagnostics-cache-progress-fill{height:100%;width:0;border-radius:999px;background:var(--primary);transition:width .25s ease}
.diagnostics-cache-progress-text{color:var(--diagnostics-text-soft);font-size:12px;line-height:1.35}
.diagnostics-cache-progress-text.is-error{color:#ffc0c8}
.diagnostics-cache-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}
@media(max-width:720px){
  .diagnostics-theme-option span{display:none}
  .diagnostics-theme-option{width:38px;justify-content:center;padding-inline:8px}
  .diagnostics-section-head{display:block}
  .diagnostics-section-head .diagnostics-muted{margin-top:4px}
  .diagnostics-system-live{margin-top:12px}
  .diagnostics-system-summary{grid-template-columns:1fr}
  .diagnostics-system-card{min-height:190px}
  .diagnostics-system-cores{grid-template-columns:repeat(2,minmax(0,1fr))}
  .diagnostics-background-controls{justify-content:flex-start;margin-top:10px}
  .diagnostics-api-period-controls{justify-content:flex-start;margin-top:12px}
  .diagnostics-api-quota-grid{grid-template-columns:1fr}
  .diagnostics-background-pagination{justify-content:space-between;flex-wrap:wrap}
  .diagnostics-error summary{display:block}
  .diagnostics-error-meta{display:block;margin-top:5px;text-align:left;white-space:normal}
  .diagnostics-page h1{font-size:26px}
  .diagnostics-cache-grid{grid-template-columns:1fr}
  .diagnostics-recommendation-form{grid-template-columns:repeat(2,minmax(0,1fr))}
  .diagnostics-recommendation-submit{grid-column:1/-1}
  .profile-fields-account,.profile-password-grid{grid-template-columns:1fr}
  .profile-notification-options{grid-template-columns:1fr}
  .profile-notification-channel{align-items:flex-start;flex-direction:column}
  .profile-notification-channel-actions{width:100%;justify-content:space-between}
  .profile-save-bar{justify-content:stretch}
  .profile-save{width:100%}
  .profile-dev-panel{grid-template-columns:auto minmax(0,1fr)}
  .profile-dev-action{grid-column:1/-1;width:100%;justify-content:space-between}
}
@media(max-width:420px){
  .diagnostics-system-cores{grid-template-columns:1fr}
  .diagnostics-api-period-buttons{display:grid;grid-template-columns:repeat(2,1fr);width:100%}
  .diagnostics-api-period{width:100%}
  .diagnostics-api-date-control{width:100%}
  .diagnostics-api-quota-card{grid-template-columns:94px minmax(0,1fr);gap:12px;padding:13px}
  .diagnostics-api-quota-ring{width:88px;height:88px;padding:7px}
  .diagnostics-api-quota-value{font-size:20px}
  .diagnostics-cache-card{grid-template-columns:104px minmax(0,1fr)}
  .diagnostics-cache-poster,.diagnostics-cache-poster img,.diagnostics-cache-placeholder{min-height:156px}
  .diagnostics-cache-title{font-size:16px}
}

@media(max-width:720px){
  .show-people-dialog{width:calc(100vw - 16px);max-height:calc(100vh - 16px);min-height:calc(100vh - 16px);margin:8px auto 0;border-radius:12px}
  .show-people-header{padding:17px 54px 13px 15px}
  .show-people-header h2{font-size:22px}
  .show-people-tabs{padding:10px 14px}
  .show-people-body{padding:14px}
  .people-cast-grid{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:10px}
  .people-credit-header{display:block}
  .people-credit-roles{justify-content:flex-start;margin-top:8px}
  .people-credit-meta span+span::before{display:none}
  .person-page{gap:24px}
  .person-header{grid-template-columns:1fr;justify-items:center;gap:19px;margin-top:8px;text-align:center}
  .person-portrait-frame{width:min(270px,100%)}
  .person-intro{width:100%;padding-top:0}
  .person-intro h1{margin-top:5px;font-size:38px}
  .person-facts{width:min(100%,480px);margin-inline:auto}
  .person-facts>div{grid-template-columns:1fr;gap:4px;text-align:center}
  .person-load-status{justify-content:center}
  .person-biographies{grid-template-columns:1fr}
  .person-filmography-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}
}

@media(max-width:420px){
  .show-people-tabs{gap:6px}
  .show-people-tab{padding:7px 9px;font-size:13px}
  .people-cast-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .people-cast-overlay{min-height:75px;padding:24px 9px 8px}
  .people-cast-overlay strong{font-size:13px}
  .people-cast-overlay span{font-size:10px}
  .people-credit-card{padding:13px}
  .people-episode-heading{display:block}
  .people-episode-heading span{display:block;margin-top:2px}
  .person-intro h1{font-size:33px}
  .person-facts>div{grid-template-columns:1fr;gap:4px}
  .person-biography-card{padding:16px}
  .person-section-heading h2{font-size:23px}
  .person-filmography-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
}

/* Release calendar */
.calendar-main{max-width:var(--content-max-width)}
.calendar-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin:-2px 0 24px}
.calendar-kicker{margin-bottom:7px;color:#91afff;font-size:12px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.calendar-hero h1{margin:0;font-size:clamp(30px,4vw,46px);line-height:1.05}
.calendar-hero p{max-width:690px;margin:10px 0 0;color:var(--muted);font-size:16px;line-height:1.55}
.calendar-summary{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.calendar-stat{display:grid;min-width:82px;gap:2px;padding:10px 13px;border:1px solid var(--border);border-radius:12px;background:#151a24;color:var(--muted);font-size:11px;font-weight:750;text-transform:uppercase}
.calendar-stat strong{color:var(--text);font-size:22px;line-height:1}
.calendar-stat-upcoming{border-color:rgba(91,140,255,.38)}
.calendar-stat-aired{border-color:rgba(54,199,138,.35)}
.calendar-stat-missed{border-color:rgba(255,164,76,.36)}
.calendar-shell{overflow:hidden;border:1px solid var(--border);border-radius:18px;background:#121721;box-shadow:0 18px 44px rgba(0,0,0,.18)}
.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,#191f2b,#151a24)}
.calendar-period-nav{display:flex;align-items:center;gap:13px}
.calendar-period-nav h2{min-width:260px;margin:0;text-align:center;font-size:20px}
.calendar-today{display:block;margin-top:3px;color:#91afff;text-align:center;text-decoration:none;font-size:12px;font-weight:750}
.calendar-arrow{display:flex;width:38px;height:38px;align-items:center;justify-content:center;border:1px solid #34405a;border-radius:10px;background:#111722;color:var(--text);text-decoration:none;font-size:28px;line-height:1}
.calendar-arrow .ui-icon{width:21px;height:21px}
.calendar-arrow:hover{border-color:#5b8cff;background:#1b2740}
.calendar-view-switch{display:flex;padding:3px;border:1px solid #303a50;border-radius:11px;background:#10151e}
.calendar-view-switch a{padding:8px 14px;border-radius:8px;color:var(--muted);text-decoration:none;font-size:13px;font-weight:800}
.calendar-view-switch a.is-active{background:#2a3b65;color:#fff;box-shadow:inset 0 0 0 1px rgba(126,160,255,.25)}
.calendar-grid{display:grid;background:var(--border);gap:1px}
.calendar-grid-week{grid-template-columns:repeat(7,minmax(0,1fr))}
.calendar-grid-month{grid-template-columns:repeat(7,minmax(0,1fr))}
.calendar-day{min-width:0;min-height:250px;background:#121721}
.calendar-grid-month .calendar-day{min-height:190px}
.calendar-day.is-today{background:linear-gradient(180deg,rgba(58,88,155,.2),#121721 96px)}
.calendar-day.is-outside{background:#0e1219;opacity:.58}
.calendar-day-head{display:flex;align-items:center;justify-content:space-between;padding:11px 12px;border-bottom:1px solid rgba(49,59,80,.65);color:var(--muted);font-size:11px;font-weight:850;text-transform:uppercase}
.calendar-day-head strong{display:flex;width:28px;height:28px;align-items:center;justify-content:center;border-radius:50%;color:#dce5f8;font-size:14px}
.calendar-day.is-today .calendar-day-head strong{background:var(--primary);color:#fff;box-shadow:0 5px 14px rgba(60,99,193,.36)}
.calendar-events{display:grid;gap:8px;padding:9px}
.calendar-event{position:relative;display:grid;grid-template-columns:32px minmax(0,1fr);gap:8px;min-width:0;padding:8px;border:1px solid #2c3549;border-left-width:3px;border-radius:10px;background:#171d28;color:inherit;text-decoration:none;transition:border-color .16s ease,transform .16s ease,background .16s ease}
.calendar-event:hover{z-index:1;border-color:#617fc2;background:#1d2636;transform:translateY(-1px)}
.calendar-event img{width:32px;height:46px;border-radius:6px;object-fit:cover;background:#0d121a}
.calendar-event:not(:has(img)){grid-template-columns:1fr}
.calendar-event-upcoming{border-left-color:#6d99ff}
.calendar-event-aired{border-left-color:#43ce91}
.calendar-event-missed{border-left-color:#ff9e52}
.calendar-event-copy{display:block;min-width:0}
.calendar-event-copy strong,.calendar-event-copy span{display:block;overflow:hidden;text-overflow:ellipsis}
.calendar-event-copy strong{color:#f3f6ff;font-size:12px;line-height:1.3;white-space:nowrap}
.calendar-event-copy span{margin-top:3px;color:#aab4c9;font-size:10px;line-height:1.35;white-space:nowrap}
.calendar-event-copy em{display:inline-block;margin-top:5px;color:#8daffd;font-size:9px;font-style:normal;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.calendar-event-aired .calendar-event-copy em{color:#75dca9}
.calendar-event-missed .calendar-event-copy em{color:#ffb276}
.calendar-no-events{padding:5px 3px;color:#5f687a;font-size:11px}
.calendar-empty{padding:64px 22px;text-align:center}
.calendar-empty strong{display:block;font-size:24px}
.calendar-empty p{max-width:520px;margin:10px auto 20px;color:var(--muted);line-height:1.5}
.calendar-pending{margin:0;padding:12px 18px;border-top:1px solid var(--border);color:var(--muted);font-size:12px}
@media(max-width:1050px){
  .calendar-grid-week,.calendar-grid-month{grid-template-columns:repeat(2,minmax(0,1fr))}
  .calendar-grid-month .calendar-day,.calendar-day{min-height:180px}
}
@media(max-width:720px){
  .header-flex .nav{grid-template-columns:repeat(3,minmax(0,1fr))}
  .calendar-hero{display:block}
  .calendar-summary{justify-content:flex-start;margin-top:16px}
  .calendar-toolbar{align-items:stretch;flex-direction:column}
  .calendar-period-nav{justify-content:space-between}
  .calendar-period-nav h2{min-width:0;font-size:18px}
  .calendar-view-switch a{flex:1;text-align:center}
  .calendar-grid-week,.calendar-grid-month{grid-template-columns:1fr}
  .calendar-day,.calendar-grid-month .calendar-day{min-height:0}
  .calendar-day.is-outside{display:none}
  .calendar-events{padding:10px 12px 14px}
  .calendar-event{grid-template-columns:38px minmax(0,1fr)}
  .calendar-event img{width:38px;height:55px}
  .calendar-event-copy strong{font-size:14px}
  .calendar-event-copy span{font-size:12px}
}

/* PWA viewport and mobile touch ergonomics */
html{background:var(--bg)}
body{min-height:100%;padding-top:env(safe-area-inset-top)}
.container{
  padding-right:max(16px,env(safe-area-inset-right));
  padding-bottom:calc(72px + env(safe-area-inset-bottom));
  padding-left:max(16px,env(safe-area-inset-left));
}
@media(display-mode:standalone){
  body{overscroll-behavior-y:none}
}
@media(max-width:720px){
  .logo{display:inline-flex;min-height:44px;align-items:center}
  .btn:not(.link){display:inline-flex;min-height:44px;align-items:center;justify-content:center}
  .auth-form input,.profile-settings-form input,.profile-settings-form select{min-height:44px;font-size:16px}
}
@media(max-width:420px){
  .container{
    padding-right:max(12px,env(safe-area-inset-right));
    padding-left:max(12px,env(safe-area-inset-left));
  }
  .profile-name{display:none}
  .profile-link{padding-right:4px}
  .auth-box{flex-wrap:nowrap}
  .header-logout{padding-inline:11px}
  .profile-hero h1{font-size:31px}
  .profile-section-heading,.profile-fields{padding-right:15px;padding-left:15px}
  .profile-dev-panel{padding:15px}
}

/* Media mode switch and movie mode */
html:has(body[data-media-type="movie"]){background:#130f0d}
.media-mode-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));flex:0 0 auto;gap:3px;padding:3px;border:1px solid var(--border);border-radius:12px;background:rgba(12,16,23,.72);box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}
.media-mode-option{display:flex;min-height:36px;align-items:center;justify-content:center;padding:7px 11px;border-radius:9px;color:var(--muted);font-size:13px;font-weight:820;line-height:1;text-decoration:none;transition:background .16s ease,color .16s ease,box-shadow .16s ease}
.media-mode-option:hover{background:var(--primary-soft);color:var(--text)}
.media-mode-option.is-active{background:var(--primary);color:#fff;box-shadow:0 5px 15px rgba(var(--primary-rgb),.22)}
.media-mode-option:focus-visible,.movie-page a:focus-visible,.movie-page button:focus-visible,.movie-search-card:focus-visible,.movie-library-page a:focus-visible,.movie-library-page button:focus-visible{outline:0;box-shadow:var(--focus-ring)}
.header-flex .search-form{min-width:180px}
body[data-media-type="movie"] .media-mode-switch{background:rgba(24,16,12,.82)}
body[data-media-type="movie"] .profile-avatar{border-color:var(--primary-border);background:linear-gradient(145deg,#f4a064,#a9542d);box-shadow:0 4px 12px rgba(var(--primary-rgb),.22)}
body[data-media-type="movie"] .suggestion:hover,body[data-media-type="movie"] .suggestion.is-active{background:#39271f}
body[data-media-type="movie"] .suggestion.is-active{outline-color:rgba(var(--primary-rgb),.58)}
body[data-media-type="movie"] .tab-btn.active{border-color:var(--primary-border);background:var(--primary-soft)}
body[data-media-type="movie"] #movie-crew-modal .show-people-kicker{color:var(--primary)}
body[data-media-type="movie"] #movie-crew-modal .show-people-tab-count{color:#ffd8c0}
body[data-media-type="movie"] #movie-crew-modal a.people-credit-name:hover{color:#ffc7a5}
body[data-media-type="movie"] #movie-crew-modal .people-credit-name:focus-visible,body[data-media-type="movie"] #movie-crew-modal .show-people-tab:focus-visible{outline-color:rgba(var(--primary-rgb),.62)}
body[data-media-type="movie"] .library-controls{border-color:#503a30;background:linear-gradient(145deg,rgba(34,25,21,.97),rgba(23,17,14,.97))}
body[data-media-type="movie"] .movie-library-page .library-search-icon{color:#d39a76}
body[data-media-type="movie"] .movie-library-page .library-search input{border-color:#5b4032;background:#18110e}
body[data-media-type="movie"] .movie-library-page .library-search input::placeholder{color:#a9785d}
body[data-media-type="movie"] .movie-library-page .library-search input:hover{border-color:#74503d;background:#1e1511}
body[data-media-type="movie"] .library-search input:focus{border-color:var(--primary);box-shadow:var(--focus-ring)}
body[data-media-type="movie"] .movie-library-page .library-control-field{color:#c69a7d}
body[data-media-type="movie"] .movie-library-page .library-control-field>.app-select .app-select-trigger{border-color:#563d31;background:#1a120f}
body[data-media-type="movie"] .movie-library-page .library-control-field>.app-select .app-select-trigger:hover{border-color:#76513e;background:#211713}
body[data-media-type="movie"] .movie-library-page .app-select-trigger:focus-visible,body[data-media-type="movie"] .movie-library-page .app-select.is-open .app-select-trigger{border-color:var(--primary);box-shadow:var(--focus-ring)}
body[data-media-type="movie"] .movie-library-page .app-select-menu{border-color:#5e4235;background:#211713}
body[data-media-type="movie"] .movie-library-page .app-select-option:hover,body[data-media-type="movie"] .movie-library-page .app-select-option:focus-visible{background:#3a281f}
body[data-media-type="movie"] .movie-library-page .app-select-option.is-selected{background:var(--primary-soft);color:#ffe4d3}
body[data-media-type="movie"] .movie-library-page .app-select-option-check{color:#f4a675}
body[data-media-type="movie"] .library-control-field>.app-select .app-select-trigger.has-selection{border-color:var(--primary-border);background:var(--primary-soft)}
body[data-media-type="movie"] .library-tab-count{background:rgba(var(--primary-rgb),.1);color:#efb18b}
body[data-media-type="movie"] .tab-btn.active .library-tab-count{background:rgba(var(--primary-rgb),.22);color:#ffe1cf}
body[data-media-type="movie"] .movie-library-page .library-filter-empty{border-color:#604336;background:rgba(31,21,17,.68)}
body[data-media-type="movie"] .home-section-kicker{color:#f2a06e}
body[data-media-type="movie"] .recommendation-reason{border-top-color:rgba(var(--primary-rgb),.3);color:#efb18b}
body[data-media-type="movie"] .recommendation-card img{background:#1a120f}
body[data-media-type="movie"] .person-kicker,body[data-media-type="movie"] .person-section-kicker{color:#f2a06e}

/* Movie download table */
body[data-media-type="movie"] .download-table[data-media-type="movie"] .torrent-multisort-toggle[aria-pressed="true"]{border-color:var(--primary);background:#6b3b25;color:#fff}
body[data-media-type="movie"] .download-table[data-media-type="movie"] .torrent-table-wrap{border-color:#5a4034;background:#17100d}
body[data-media-type="movie"] .download-table[data-media-type="movie"] .torrent-table th{border-bottom-color:#654637;background:#261a15;color:#ffe2d0}
body[data-media-type="movie"] .download-table[data-media-type="movie"] .torrent-table th:not(:first-child),body[data-media-type="movie"] .download-table[data-media-type="movie"] .torrent-table td:not(:first-child){border-left-color:rgba(143,91,62,.35)}
body[data-media-type="movie"] .download-table[data-media-type="movie"] .torrent-table td{border-bottom-color:#463127;background:#19120f}
body[data-media-type="movie"] .download-table[data-media-type="movie"] .torrent-table tbody tr:nth-child(even) td{background:#1e1612}
body[data-media-type="movie"] .download-table[data-media-type="movie"] .torrent-table tbody tr:hover td{background:#2b1e18}
body[data-media-type="movie"] .download-table[data-media-type="movie"] .torrent-sort:hover{color:#fff;background:var(--primary-soft)}
body[data-media-type="movie"] .download-table[data-media-type="movie"] .torrent-sort-direction{color:#f4a675}
body[data-media-type="movie"] .download-table[data-media-type="movie"] .torrent-title:hover{color:#ffd8c0}
body[data-media-type="movie"] .download-table[data-media-type="movie"] .torrent-pin{border-color:var(--primary-border);background:var(--primary-soft);color:#ffc8a7}
body[data-media-type="movie"] .download-table[data-media-type="movie"] .video-uhd{border-color:var(--primary-border);background:var(--primary-soft);color:#ffc8a7}
body[data-media-type="movie"] .download-table[data-media-type="movie"] .torrent-season-cell{color:#ead2c3}
body[data-media-type="movie"] .download-table[data-media-type="movie"] .torrent-size-cell{color:#f3e6de}
body[data-media-type="movie"] .download-table[data-media-type="movie"] .torrent-added-cell{color:#d6c0b2}
body[data-media-type="movie"] .download-table[data-media-type="movie"] .torrent-download{border-color:#624434;background:#211711}
body[data-media-type="movie"] .download-table[data-media-type="movie"] .torrent-download:hover{border-color:var(--primary-border);background:#352319;color:#ffd8c0}
body[data-media-type="movie"] .download-modal .modal-close:hover,body[data-media-type="movie"] .download-modal .modal-close:focus-visible{background:#34231b}

/* Profile settings follow the currently selected movie palette. */
body.profile-body[data-media-type="movie"]{background:radial-gradient(circle at 50% -14%,rgba(var(--primary-rgb),.14),transparent 34rem),var(--bg)}
body[data-media-type="movie"] .profile-settings-card{border-color:#503a30;background:linear-gradient(145deg,rgba(34,25,21,.98),rgba(23,17,14,.98))}
body[data-media-type="movie"] .profile-section-heading{border-bottom-color:rgba(105,72,56,.72);background:linear-gradient(180deg,rgba(67,44,34,.55),rgba(34,25,21,.2))}
body[data-media-type="movie"] .profile-section-heading h2{color:#fff4ed}
body[data-media-type="movie"] .profile-section-icon{border-color:var(--primary-border);background:var(--primary-soft);color:#ffc7a5}
body[data-media-type="movie"] .profile-fields .form-row input,body[data-media-type="movie"] .profile-fields .form-row select{border-color:#563d31;background:#18110e}
body[data-media-type="movie"] .profile-fields .form-row input:focus,body[data-media-type="movie"] .profile-fields .form-row select:focus{border-color:var(--primary);box-shadow:var(--focus-ring)}
body[data-media-type="movie"] .profile-fields .form-row label{color:#dec7b8}
body[data-media-type="movie"] .profile-field-hint{color:#aa8874}
body[data-media-type="movie"] .profile-display-option,body[data-media-type="movie"] .profile-notification-option{border-color:#563d31;background:#18110e}
body[data-media-type="movie"] .profile-display-option strong,body[data-media-type="movie"] .profile-notification-option strong{color:#f5e7de}
body[data-media-type="movie"] .profile-notification-channel{border-color:#563d31;background:#1a120f}
body[data-media-type="movie"] .profile-channel-enabled{color:#dec7b8}
body[data-media-type="movie"] .profile-page .watch-toggle{border-color:#624737;background:#1b130f}
body[data-media-type="movie"] .profile-page .watch-toggle:hover{border-color:#8b5e47}
body[data-media-type="movie"] .profile-page .watch-toggle:focus-visible{border-color:var(--primary);box-shadow:var(--focus-ring)}
body[data-media-type="movie"] .profile-page .app-select-trigger{border-color:#563d31;background:#18110e}
body[data-media-type="movie"] .profile-page .app-select-trigger:hover{border-color:#76513e;background:#211713}
body[data-media-type="movie"] .profile-page .app-select-trigger:focus-visible,body[data-media-type="movie"] .profile-page .app-select.is-open .app-select-trigger{border-color:var(--primary);box-shadow:var(--focus-ring)}
body[data-media-type="movie"] .profile-page .app-select-menu{border-color:#5e4235;background:#211713}
body[data-media-type="movie"] .profile-page .app-select-option:hover,body[data-media-type="movie"] .profile-page .app-select-option:focus-visible{background:#3a281f}
body[data-media-type="movie"] .profile-page .app-select-option.is-selected{background:var(--primary-soft);color:#ffe4d3}
body[data-media-type="movie"] .profile-page .app-select-option-check{color:#f4a675}
body[data-media-type="movie"] .profile-save{box-shadow:0 9px 22px rgba(var(--primary-rgb),.22)}

/* Movie search */
.movie-search-main{max-width:var(--content-max-width)}
.movie-search-intro{max-width:760px}
.movie-search-intro h1{margin-top:0;margin-bottom:8px}
.movie-search-intro p{margin:0;color:var(--muted);font-size:16px;line-height:1.55}
.movie-section-kicker{margin-bottom:7px;color:#f2a06e;font-size:12px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.movie-search-error{margin-top:20px;border-color:rgba(255,93,93,.42);background:rgba(86,30,30,.25)}
.movie-search-results{margin-top:24px}
.movie-search-card{display:flex;min-width:0;flex-direction:column}
.movie-search-card .card-body{display:flex;min-width:0;flex:1;flex-direction:column;gap:4px}
.movie-search-card .subtitle.is-empty{display:none}
.movie-card-genres{margin-top:auto;padding-top:8px;color:#d2a080;font-size:12px;line-height:1.4}

/* Movie library */
.my-movies-main{max-width:var(--content-max-width)}
.movie-library-page .page-top-heading{margin-top:0;margin-bottom:12px}
.movie-library-page .card-body{min-height:116px}
.movie-library-page .library-card-meta{margin-top:auto;padding-top:8px}
.movie-library-filter-fields{grid-template-columns:repeat(4,minmax(120px,1fr))}

/* Movie details */
.movie-main{max-width:var(--content-max-width);padding-top:28px!important}
.movie-page{display:grid;gap:26px;padding-bottom:44px}
.movie-hero{--hero-backdrop-opacity:.3;--hero-shade-left:.9;--hero-shade-middle:.74;--hero-shade-right:.44;--hero-shade-bottom:.82;position:relative;isolation:isolate;min-height:520px;overflow:hidden;border:1px solid #52392d;border-radius:24px;background:#1d1511;box-shadow:0 24px 65px rgba(0,0,0,.3)}
.movie-backdrop{position:absolute;z-index:-3;inset:0;width:100%;height:100%;object-fit:cover;opacity:var(--hero-backdrop-opacity);filter:saturate(.92) contrast(1.04)}
.movie-hero-shade{position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,rgba(19,12,9,var(--hero-shade-left)) 4%,rgba(22,14,10,var(--hero-shade-middle)) 42%,rgba(20,13,10,var(--hero-shade-right))),linear-gradient(0deg,rgba(18,12,9,var(--hero-shade-bottom)),transparent 62%)}
.movie-hero-content{position:relative;display:grid;min-height:520px;grid-template-columns:260px minmax(0,1fr);align-items:end;gap:36px;padding:36px}
.movie-poster-column{display:grid;align-self:start;justify-items:center;gap:12px;padding-top:8px}
.movie-poster-frame{overflow:hidden;border:1px solid rgba(255,210,183,.2);border-radius:16px;background:#17100d;box-shadow:0 18px 45px rgba(0,0,0,.36)}
.movie-poster{display:block;width:100%;aspect-ratio:2/3;object-fit:cover}
.movie-poster-placeholder{border:0;border-radius:0;background:#211711}
.movie-hero-copy{min-width:0;align-self:start;padding:0 0 2px}
.movie-hero-copy h1{max-width:950px;margin:0;color:#fff7f2;font-size:clamp(36px,5vw,64px);font-weight:880;line-height:1.02;letter-spacing:-.035em;text-wrap:balance}
.movie-original-title{margin-top:9px;color:#d5b9a8;font-size:18px;line-height:1.35}
.movie-facts-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;margin-top:22px}
.movie-facts{display:flex;min-width:0;max-width:980px;align-items:stretch;gap:8px;margin:0;padding:0;list-style:none;flex-wrap:wrap}
.movie-facts li{display:grid;align-content:center;gap:3px;min-height:52px;padding:8px 11px;border:1px solid rgba(215,157,121,.25);border-radius:10px;background:rgba(29,19,14,.64);backdrop-filter:blur(7px)}
.movie-facts strong{color:#c59b82;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.movie-facts span{color:#f1e4dc;font-size:13px;line-height:1.3}
.movie-primary-actions{display:flex;align-items:center;gap:8px;margin-top:18px;flex-wrap:wrap}
.movie-control-label{color:#bfa89a}
.movie-state-button{min-height:38px;padding:8px 11px}
.movie-state-button.is-active{border-color:var(--primary-border);background:var(--primary-soft);color:#ffd9c2}
.movie-state-button.is-active:hover{background:rgba(var(--primary-rgb),.2)}
.movie-watch-action{position:relative;display:flex;width:126px;aspect-ratio:1;flex:0 0 auto;align-items:center;justify-content:center;flex-direction:column;gap:3px;padding:14px;border:0;border-radius:50%;background:transparent;color:#f4f7ff;cursor:pointer;font:inherit;transition:transform .18s ease,filter .18s ease}
.movie-watch-action:hover{background:transparent;color:#fff;transform:translateY(-2px);filter:drop-shadow(0 8px 15px rgba(var(--primary-rgb),.28))}
.movie-watch-action.is-active,.movie-watch-action.is-active:hover{border:0;background:transparent;color:#f4f7ff;filter:drop-shadow(0 8px 15px rgba(54,199,138,.25))}
.movie-watch-action-ring{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.movie-watch-action-ring-track,.movie-watch-action-ring-value{fill:none;stroke-width:6}
.movie-watch-action-ring-track{stroke:#50382d}
.movie-watch-action-ring-value{stroke:var(--primary);stroke-linecap:round;stroke-dasharray:0 100;transition:stroke-dasharray .2s ease}
.movie-watch-action.is-active .movie-watch-action-ring-value{stroke:var(--success);stroke-dasharray:100 100}
.movie-watch-action-content{position:relative;display:flex;width:100%;height:100%;align-items:center;justify-content:center;flex-direction:column;gap:3px}
.movie-watch-action-content strong{color:var(--success);font-size:26px;font-weight:900;line-height:1}
.movie-watch-action-content strong .ui-icon{display:block;width:24px;height:24px}
.movie-watch-action-content span{max-width:86px;color:#cbd5ea;font-size:12px;font-weight:400;line-height:1.15;text-align:center}
.movie-rating-star{color:#68544a}
.movie-page.is-saving .movie-rating-star,.movie-page.is-saving .movie-state-button{cursor:progress}
.movie-auth-hint{color:#c9aa98}
.movie-action-status{margin-top:12px;color:#ffc4cc;font-size:12px;line-height:1.4}
.movie-content-grid{display:grid;grid-template-columns:minmax(0,1fr) var(--media-detail-aside-width);align-items:start;gap:22px}
.movie-content-main{display:grid;min-width:0;gap:22px}
.movie-section,.movie-side-card{border:1px solid var(--border);border-radius:18px;background:rgba(29,23,20,.86);box-shadow:0 14px 34px rgba(0,0,0,.12)}
.movie-section-heading h2,.movie-side-card h2{color:#f6ede8}
.movie-summary{margin:0;color:#dfd3cc;white-space:pre-line}
.movie-cast-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));align-items:stretch;gap:12px}
.movie-person-card{display:flex;min-width:0;overflow:hidden;flex-direction:column;border:1px solid #4b372e;border-radius:13px;background:#211915;color:inherit;text-decoration:none}
.movie-person-card:hover{border-color:var(--primary-border);transform:translateY(-2px)}
.movie-person-photo{aspect-ratio:2/3;overflow:hidden;background:#17110e}
.movie-person-photo img{display:block;width:100%;height:100%;object-fit:cover}
.movie-person-placeholder{filter:saturate(.66)}
.movie-person-copy{display:grid;flex:1;align-content:start;gap:4px;padding:10px}
.movie-person-copy strong{color:#f3e9e3;font-size:14px;line-height:1.3;overflow-wrap:anywhere}
.movie-person-copy span{color:#bca89c;font-size:11px;line-height:1.4;overflow-wrap:anywhere}
.movie-external-rating{border:1px solid #49352c;background:#211915}
.movie-external-rating:hover{border-color:var(--primary-border);background:#2b1e18}
.movie-external-rating-icon-metacritic,.show-detail-rating-list .show-rating-source-icon-metacritic{padding:2px;border-radius:50%;background:#f5c842}
.movie-external-rating-label{color:#ad9587}
.movie-external-rating-score strong{color:#fff1e8}
.movie-external-rating-score small{color:#a98f80}
.show-detail-rating-list .show-rating-source.show-rating-source-local,.movie-external-rating.movie-external-rating-local{border-color:rgba(var(--primary-rgb),.52);background:linear-gradient(135deg,rgba(var(--primary-rgb),.14),rgba(var(--primary-rgb),.055));box-shadow:inset 0 0 0 1px rgba(var(--primary-rgb),.06),0 5px 14px rgba(var(--primary-rgb),.07)}
.movie-external-rating.movie-external-rating-local{cursor:pointer}
.movie-external-rating.movie-external-rating-local:hover{border-color:rgba(var(--primary-rgb),.72);background:linear-gradient(135deg,rgba(var(--primary-rgb),.18),rgba(var(--primary-rgb),.075));box-shadow:inset 0 0 0 1px rgba(var(--primary-rgb),.09),0 7px 17px rgba(var(--primary-rgb),.1)}
body[data-media-type="movie"] #movie-review-modal .review-rating-fieldset legend,body[data-media-type="movie"] #movie-review-modal .review-text-field>span{color:#e8d8ce}
body[data-media-type="movie"] #movie-review-modal .review-editor-star{color:#765b4d}
body[data-media-type="movie"] #movie-review-modal .review-editor-star:hover,body[data-media-type="movie"] #movie-review-modal .review-editor-star.filled{color:var(--primary)}
body[data-media-type="movie"] #movie-review-modal .review-text-field textarea{border-color:#5a4034;background:#17110e;color:#f6ede8}
body[data-media-type="movie"] #movie-review-modal .review-text-field textarea:hover{border-color:#74503d}
body[data-media-type="movie"] #movie-review-modal .review-text-field textarea:focus{border-color:var(--primary);box-shadow:var(--focus-ring)}
body[data-media-type="movie"] #movie-review-modal .review-text-field textarea::placeholder{color:#9d7f6e}
body[data-media-type="movie"] #movie-review-modal .review-public-toggle{border-color:#563d31;background:#1a120f}
body[data-media-type="movie"] #movie-review-modal .review-public-toggle:hover{border-color:#76513e;background:#211713}
body[data-media-type="movie"] #movie-review-modal .review-public-toggle small{color:#b79e90}
body[data-media-type="movie"] #movie-review-modal .review-public-checkbox{border-color:#624737;background:#1b130f}
body[data-media-type="movie"] #movie-review-modal .review-public-checkbox:hover{border-color:#8b5e47}
body[data-media-type="movie"] #movie-review-modal .review-public-checkbox:focus-visible{border-color:var(--primary);box-shadow:var(--focus-ring)}
body[data-media-type="movie"] #movie-review-modal .review-public-checkbox:checked{border-color:var(--primary);background:var(--primary)}
.movie-sidebar-rating{border-top:1px solid #49352c}
.movie-provider{border:1px solid #49352c;background:#211915}
a.movie-provider:hover{border-color:var(--primary-border);background:#2b1e18}
.movie-provider strong{color:#f2e7e0}
.movie-provider span{color:#b49e91}
.movie-provider b{color:#df9568}
.movie-provider-note{color:#9f8d82}

@media(max-width:1100px) and (min-width:721px){
  .header-flex{display:grid;grid-template-columns:auto auto minmax(180px,1fr) auto;gap:10px 12px}
  .header-flex .logo{grid-column:1;grid-row:1}
  .header-flex .media-mode-switch{grid-column:2;grid-row:1}
  .header-flex .search-form{grid-column:3;grid-row:1}
  .header-flex .auth-box{grid-column:4;grid-row:1}
  .header-flex .nav{grid-column:1/-1;grid-row:2;justify-self:end}
  .show-detail-facts,.movie-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}
  .show-detail-facts li,.movie-facts li{min-width:0}
  .show-detail-facts-row{grid-template-columns:minmax(0,1fr) clamp(210px,24vw,230px);align-items:start;gap:14px}
  .show-detail-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .show-detail-facts-row>.show-watch-progress{width:100%;min-width:0;align-self:start;justify-self:end;gap:10px}
  .show-detail-facts-row .show-watch-progress-copy{min-width:0;flex:1 1 0}
}
@media(min-width:721px){
  .movie-hero:has(.movie-plan-button[hidden]),.movie-hero:has(.movie-plan-button[hidden]) .movie-hero-content,
  .movie-hero:not(:has(.movie-plan-button)),.movie-hero:not(:has(.movie-plan-button)) .movie-hero-content,
  .show-detail-hero:has(.to-watch-box[hidden]),.show-detail-hero:has(.to-watch-box[hidden]) .show-detail-hero-content,
  .show-detail-hero:not(:has(#to-watch-btn)),.show-detail-hero:not(:has(#to-watch-btn)) .show-detail-hero-content{min-height:478px}
}
@media(max-width:900px){
  .movie-poster-column,.show-detail-poster-column{padding-top:105px}
  .movie-hero-content{grid-template-columns:210px minmax(0,1fr);gap:24px;padding:25px}
  .movie-content-grid{grid-template-columns:1fr}
  .movie-watch-action{width:108px}
}
@media(max-width:720px){
  .header-flex .media-mode-switch{grid-column:1/-1;grid-row:2;width:100%}
  .header-flex .nav{grid-column:1/-1;grid-row:3;grid-template-columns:repeat(2,minmax(0,1fr))}
  .header-flex .nav.movie-nav{grid-template-columns:repeat(2,minmax(0,1fr))}
  .header-flex .search-form{grid-column:1/-1;grid-row:4}
  .movie-main{padding-top:18px!important}
  .movie-hero{min-height:0;border-radius:18px}
  .movie-hero-shade{background:linear-gradient(0deg,rgba(19,12,9,var(--hero-shade-left)) 25%,rgba(20,13,10,var(--hero-shade-right)))}
  .movie-hero-content{min-height:0;grid-template-columns:1fr;justify-items:center;gap:22px;padding:22px}
  .movie-poster-column,.show-detail-poster-column{padding-top:0}
  .movie-poster-frame{width:min(220px,70vw)}
  .movie-hero-copy{width:100%;padding:0;text-align:center}
  .movie-hero-copy h1{font-size:clamp(34px,10vw,48px)}
  .movie-facts,.movie-primary-actions{justify-content:center}
  .movie-facts-row{grid-template-columns:1fr;justify-items:center}
  .media-auth-hint,.movie-action-status{width:100%;text-align:center}
  .movie-cast-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
  .movie-library-filter-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
  .movie-cast-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .movie-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .movie-facts li{text-align:left}
}
@media(max-width:420px){
  .media-mode-option{min-height:40px}
  .movie-hero-content{padding:16px}
  .movie-poster-frame{width:min(180px,62vw)}
  .movie-original-title{font-size:15px}
  .movie-primary-actions .btn{flex:1 1 auto}
  .movie-plan-button,.show-poster-plan-button{width:100%}
  .movie-watch-action{width:96px}
  .movie-rating-star{width:32px}
  .movie-library-filter-fields{grid-template-columns:1fr}
}
