:root{--bg:#070912;--panel:#0e1221;--panel2:#13182b;--line:#242b43;--text:#f5f7ff;--muted:#929bb7;--accent:#6ee7ff;--accent2:#8b5cf6;--ok:#31d08b;--bad:#ff647c;--shadow:0 20px 60px rgba(0,0,0,.35)}*{box-sizing:border-box}html,body{margin:0;background:radial-gradient(circle at 20% 0,#151a38 0,#070912 38%);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;min-height:100%}button,input{font:inherit}.hidden{display:none!important}.muted{color:var(--muted)}.eyebrow{margin:0 0 6px;letter-spacing:.14em;font-size:.72rem;font-weight:800;color:var(--accent)}.gate{min-height:100vh;display:grid;place-items:center;padding:24px}.gate-card{width:min(860px,100%);padding:38px;border:1px solid var(--line);border-radius:28px;background:linear-gradient(145deg,rgba(19,24,43,.92),rgba(10,13,26,.96));box-shadow:var(--shadow)}.brand-mark,.logo span{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#06111a;font-weight:1000;box-shadow:0 0 35px rgba(110,231,255,.25)}.gate h1{font-size:clamp(2rem,5vw,4rem);margin:.35rem 0}.provider-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:26px}.provider-card{padding:20px;text-align:left;background:var(--panel2);color:var(--text);border:1px solid var(--line);border-radius:20px;cursor:pointer;transition:.2s}.provider-card:hover{transform:translateY(-2px);border-color:#4a5f8e}.provider-card b{display:block;font-size:1.1rem;margin-bottom:5px}.provider-card small{color:var(--muted)}.gate-actions{margin-top:16px}.btn{border:0;border-radius:14px;padding:12px 16px;font-weight:800;cursor:pointer}.btn.primary{background:linear-gradient(135deg,var(--accent),#60a5fa);color:#06111a}.btn.secondary{background:#171d32;color:#dce5ff;border:1px solid var(--line)}.diag-panel{margin-top:18px;border:1px solid var(--line);border-radius:18px;padding:16px;background:#090c16}.diag-row{display:grid;grid-template-columns:1fr auto;gap:10px;padding:10px 0;border-bottom:1px solid #1a2033}.diag-row:last-child{border:0}.ok{color:var(--ok)}.bad{color:var(--bad)}.app{display:grid;grid-template-columns:220px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:20px 14px;border-right:1px solid var(--line);background:rgba(8,10,19,.9);backdrop-filter:blur(18px);display:flex;flex-direction:column}.logo{display:flex;align-items:center;gap:10px;padding:4px 8px 22px}.logo span{width:34px;height:34px;border-radius:11px}.sidebar nav{display:grid;gap:7px}.nav{border:0;background:transparent;color:var(--muted);padding:12px 14px;border-radius:13px;text-align:left;cursor:pointer;display:flex;gap:11px;align-items:center}.nav:hover,.nav.active{color:var(--text);background:#151b2f}.logout{margin-top:auto}.topbar{padding:28px 30px 18px;display:flex;justify-content:space-between;align-items:end;gap:20px}.topbar h2{margin:0;font-size:1.8rem}.search-wrap input{width:min(380px,40vw);background:#101528;border:1px solid var(--line);color:var(--text);padding:12px 15px;border-radius:14px;outline:none}.hero{margin:0 30px 26px;padding:34px;min-height:220px;border:1px solid #263154;border-radius:26px;background:radial-gradient(circle at 82% 40%,rgba(139,92,246,.3),transparent 28%),linear-gradient(135deg,#101936,#0b1020 55%);display:flex;align-items:end}.hero h1{max-width:700px;font-size:clamp(2rem,5vw,4.2rem);line-height:.95;margin:8px 0 14px}.content{padding:0 30px 90px}.section-head{display:flex;align-items:center;justify-content:space-between;margin:22px 0 12px}.chips{display:flex;gap:8px;overflow:auto;padding:4px 0 12px}.chip{white-space:nowrap;border:1px solid var(--line);background:#101528;color:var(--muted);border-radius:999px;padding:9px 13px;cursor:pointer}.chip.active{color:#071019;background:var(--accent);border-color:transparent}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:14px}.card{position:relative;overflow:hidden;min-height:250px;border:1px solid var(--line);background:var(--panel);border-radius:18px;cursor:pointer;transition:.2s}.card:hover{transform:translateY(-3px);border-color:#465378}.poster{width:100%;aspect-ratio:2/3;object-fit:cover;background:linear-gradient(135deg,#1e294a,#101528)}.card.live .poster{aspect-ratio:16/10}.card-body{padding:12px}.card-title{font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-sub{font-size:.78rem;color:var(--muted);margin-top:5px}.skeleton-grid{height:260px;border-radius:20px;background:linear-gradient(90deg,#0d1120,#151b31,#0d1120);background-size:200% 100%;animation:shine 1.4s infinite}@keyframes shine{to{background-position:-200% 0}}.modal{position:fixed;inset:0;z-index:40;background:rgba(0,0,0,.76);display:grid;place-items:center;padding:18px}.modal-card{position:relative;width:min(1000px,96vw);max-height:92vh;overflow:auto;background:#090d19;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow)}.close{position:absolute;right:12px;top:10px;z-index:3;width:38px;height:38px;border-radius:50%;border:0;background:rgba(5,8,15,.75);color:white;font-size:1.6rem;cursor:pointer}.player-card video{display:block;width:100%;aspect-ratio:16/9;background:#000;border-radius:22px 22px 0 0}.player-meta{padding:18px}.series-card{padding:26px}.episode{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px;border-bottom:1px solid var(--line)}.episode button{flex:none}.bottom-nav{display:none}.toast{position:fixed;z-index:100;right:18px;bottom:18px;padding:12px 14px;background:#161c30;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);opacity:0;pointer-events:none;transform:translateY(10px);transition:.2s}.toast.show{opacity:1;transform:none}@media(max-width:760px){.provider-grid{grid-template-columns:1fr}.gate-card{padding:24px}.app{display:block}.sidebar{display:none}.topbar{padding:18px 16px 14px;align-items:center}.search-wrap input{width:48vw}.hero{margin:0 16px 20px;padding:24px;min-height:180px}.hero h1{font-size:2.25rem}.content{padding:0 16px 90px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.card{min-height:0}.bottom-nav{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:10px;right:10px;bottom:10px;z-index:20;padding:7px;background:rgba(12,15,28,.94);border:1px solid var(--line);border-radius:18px;backdrop-filter:blur(20px)}.bottom-nav .nav{justify-content:center;flex-direction:column;gap:2px;padding:7px;font-size:1.1rem}.bottom-nav small{font-size:.64rem}.topbar h2{font-size:1.35rem}.series-card{padding:18px 12px}.episode{align-items:flex-start}.provider-card{padding:17px}}

#playerStatus { white-space: pre-wrap; }
