
/* ── DETAIL PAGE ────────────────────────────────────────────── */
.det-hero{position:relative;min-height:65vh;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden}
.det-backdrop{position:absolute;inset:0;background-size:cover;background-position:center top}
.det-backdrop-grad{position:absolute;inset:0;background:linear-gradient(to top,var(--bg) 0%,rgba(0,0,0,.85) 30%,rgba(0,0,0,.2) 65%,transparent 100%)}
.det-back{position:absolute;top:72px;left:var(--page-pad);width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.1);border:1.5px solid rgba(255,255,255,.2);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;color:var(--text);transition:all var(--t);z-index:5;flex-shrink:0}
.det-back:hover{background:var(--accent-d);border-color:var(--accent);color:var(--accent)}
.det-hero-c{position:relative;z-index:2;padding:0 var(--page-pad) 36px;max-width:760px}
.det-info{min-width:0}
.det-type-badge{display:inline-block;font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--accent);margin-bottom:8px}
.det-title{font-size:clamp(28px,5vw,48px);font-weight:900;line-height:1.05;letter-spacing:-1px;margin-bottom:12px}
.det-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:20px}
.det-rating{display:flex;align-items:center;gap:5px;font-size:13px;font-weight:600;color:var(--accent)}
.det-year{font-size:13px;color:var(--text-s)}
.det-runtime{font-size:13px;color:var(--text-s);background:var(--bg-surf);border:1px solid var(--border);border-radius:4px;padding:2px 8px}
.det-genres{display:flex;gap:6px;flex-wrap:wrap}
.det-genre{font-size:11.5px;padding:3px 9px;border-radius:5px;background:rgba(255,255,255,.07);border:1px solid var(--border);color:var(--text-s)}
.det-btns{display:flex;align-items:flex-end;gap:20px}
.det-btn-wrap{display:flex;flex-direction:column;align-items:center;gap:8px}
.det-btn-lbl{font-size:10.5px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;color:var(--text-s)}
.det-btn-lbl.accent{color:var(--brand)}
.det-btn-play{width:68px;height:68px;border-radius:50%;background:var(--brand);color:var(--bg);display:flex;align-items:center;justify-content:center;box-shadow:var(--brand-glow);padding-left:4px;transition:transform var(--t),filter var(--t)}
.det-btn-play:hover{transform:scale(1.08);filter:brightness(1.1)}
.det-btn-sm{width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.12);border:1.5px solid rgba(255,255,255,.2);color:var(--text);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;transition:all var(--t)}
.det-btn-sm:hover{background:rgba(255,255,255,.2);transform:scale(1.06)}
.det-btn-sm.in-list{border-color:var(--accent) !important;color:var(--accent) !important;background:var(--accent-d) !important}
.hbtn.in-list{border-color:rgba(255,255,255,.35) !important;color:var(--text) !important;background:rgba(255,255,255,.15) !important}
/* ── DETAIL MY LIST PAGE ──────────────────────────────────────────── */
.mylist-hd{padding:80px var(--page-pad) 24px}
.mylist-title{font-size:clamp(22px,4vw,34px);font-weight:900;letter-spacing:-1px;margin-bottom:6px}
.mylist-sub{font-size:13.5px;color:var(--text-s)}
.mylist-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:16px;padding:0 var(--page-pad) 80px}
.mylist-empty{display:flex;flex-direction:column;align-items:center;gap:14px;padding:80px var(--page-pad);text-align:center}
.mylist-empty-icon{font-size:52px;opacity:.25}
.mylist-empty-title{font-size:20px;font-weight:700;margin-bottom:2px}
.mylist-empty-desc{font-size:14px;color:var(--text-s);max-width:300px;line-height:1.65}
.mylist-disc-btn{height:42px;padding:0 24px;border-radius:9px;background:var(--accent);color:var(--bg);font-size:13.5px;font-weight:700;border:none;cursor:pointer;transition:filter var(--t)}
.mylist-disc-btn:hover{filter:brightness(1.1)}
.mylist-rm{position:absolute;top:6px;right:6px;z-index:5;width:26px;height:26px;border-radius:50%;background:rgba(0,0,0,.72);border:1px solid var(--border-h);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--t);color:var(--text-s);flex-shrink:0}
.mylist-rm:hover{color:var(--text);background:rgba(0,0,0,.9) !important}
.mylist-grid .card:hover .mylist-rm{opacity:1}
.det-body{padding:0 var(--page-pad) 80px}
.det-desc{font-size:15px;line-height:1.7;color:var(--text-s);max-width:720px;margin-bottom:20px}
.ai-card{max-width:720px;margin-bottom:36px;padding:15px 18px;border-radius:10px;background:#090f0b;box-shadow:0 0 0 1px rgba(0,230,118,.28),0 0 18px rgba(0,230,118,.08),0 0 40px rgba(0,230,118,.04);display:flex;flex-direction:column;gap:9px}
.ai-card-hd{display:flex;align-items:center;gap:7px}
.ai-card-icon{font-size:12px;color:var(--brand);line-height:1}
.ai-card-lbl{font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--brand);opacity:.8}
.ai-card-text{font-size:13.5px;line-height:1.62;color:rgba(241,245,249,.48);margin:0}
.det-section-lbl{font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--text-s);margin-bottom:14px}
/* cast */
.cast-row{display:flex;gap:14px;overflow-x:auto;scrollbar-width:none;margin-bottom:40px;padding-bottom:4px}
.cast-row::-webkit-scrollbar{display:none}
.cast-card{display:flex;flex-direction:column;align-items:center;gap:8px;width:76px;cursor:default;flex-shrink:0}
.cast-av{width:64px;height:64px;border-radius:50%;background:var(--bg-surf);border:1.5px solid var(--border-h);display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;color:var(--accent);overflow:hidden}
    .cast-name{font-size:11px;text-align:center;color:var(--text-s);line-height:1.3;word-break:break-word}
    /* reviews */
    .rev-row{display:flex;gap:14px;overflow-x:auto;scrollbar-width:none;margin-bottom:40px;padding-bottom:4px}
    .rev-row::-webkit-scrollbar{display:none}
    .rev-card{flex-shrink:0;width:320px;background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:18px;display:flex;flex-direction:column;gap:12px;transition:all var(--t);cursor:default}
    .rev-card:hover{border-color:var(--border-h);background:var(--bg-surf)}
    .rev-hd{display:flex;align-items:center;gap:12px}
    .rev-av{width:38px;height:38px;border-radius:50%;background:var(--bg-surf);border:1px solid var(--border-h);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:var(--accent);flex-shrink:0}
    .rev-meta{flex:1;min-width:0}
    .rev-name{font-size:13px;font-weight:700;color:var(--text);margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
    .rev-date{font-size:11px;color:var(--text-m)}
    .rev-stars{display:flex;align-items:center;gap:4px;font-size:13px;font-weight:700;color:var(--star);flex-shrink:0}
    .rev-stars-num{color:var(--text)}
    .rev-stars-max{color:var(--text-m);font-weight:500;font-size:11.5px}
    .rev-text{font-size:13.5px;line-height:1.55;color:var(--text-s);display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
    /* episodes */
.det-episodes{margin-bottom:40px}
.season-tabs{display:none;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:12px;margin-bottom:16px}
.season-tabs::-webkit-scrollbar{display:none}
.season-tab{height:34px;padding:0 16px;border-radius:6px;border:1.5px solid var(--border-h);background:var(--bg-surf);color:var(--text-s);font-family:inherit;font-size:12.5px;font-weight:600;cursor:pointer;white-space:nowrap;transition:all var(--t);flex-shrink:0}
.season-tab:hover{color:var(--text);border-color:var(--accent)}
.season-tab.on{background:var(--accent);border-color:var(--accent);color:var(--bg)}
.season-select{display:block;background:var(--bg-surf);color:var(--text);border:1.5px solid var(--border-h);border-radius:6px;padding:0 32px 0 12px;height:36px;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;outline:none;min-width:160px;margin-bottom:16px;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23A8B2C0' viewBox='0 0 24 24'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}
.season-select:focus{border-color:var(--accent)}
.ep-list{display:flex;flex-direction:column;gap:8px}
.ep-card{display:flex;align-items:center;gap:14px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:10px;cursor:pointer;transition:background var(--t)}
.ep-card:hover{background:var(--bg-surf)}
.ep-thumb{width:124px;height:70px;border-radius:6px;overflow:hidden;flex-shrink:0;position:relative;background:var(--bg-surf)}
.ep-thumb-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.5);opacity:0;transition:opacity var(--t);padding-left:3px}
.ep-card:hover .ep-thumb-play{opacity:1}
.ep-info{flex:1;min-width:0}
.ep-num{font-size:11px;color:var(--text-s);font-weight:600;margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}
.ep-title{font-size:14px;font-weight:700;margin-bottom:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ep-desc{font-size:12.5px;color:var(--text-s);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.5}
.ep-runtime{font-size:11.5px;color:var(--text-m);margin-top:5px}
.ep-play-btn{width:38px;height:38px;border-radius:50%;background:var(--accent-d);border:1.5px solid var(--accent);color:var(--accent);display:flex;align-items:center;justify-content:center;padding-left:2px;flex-shrink:0;transition:all var(--t)}
.ep-card:hover .ep-play-btn{background:var(--accent);color:var(--bg);transform:scale(1.06)}
/* more like this row */
.det-more{margin-top:0}