:root{color-scheme:dark;--red:#ff364c;--muted:#9e9da9;--border:rgba(255,255,255,.13)}*{box-sizing:border-box}body{margin:0;background:#0c0d13;color:#f6f4f7;font:20px Arial,sans-serif;min-height:100vh}button,input,select{font:inherit}button,a,input,select{outline-offset:5px}button{cursor:pointer;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #fff}button:hover{filter:brightness(1.12)}[hidden]{display:none!important}.ambient{position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at 77% 4%,#50132188 0,transparent 48%),radial-gradient(ellipse at 6% 88%,#1f183844 0,transparent 45%)}.topbar,main,footer{position:relative}.topbar{height:110px;padding:25px 4.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff08}.brand{display:flex;align-items:center;gap:13px;font-size:29px;letter-spacing:2px}.brand b{color:var(--red)}.brand-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:linear-gradient(145deg,#ff5263,#b7002c);font-size:33px;font-weight:bold;box-shadow:0 5px 24px #f0254030}.top-actions{display:flex;align-items:center;gap:20px;color:#bdbbc6;font-size:16px}.connection:before,.status-dot{content:'';display:inline-block;background:#70dfaa;width:7px;height:7px;border-radius:50%;margin-right:9px}.icon-button{background:#ffffff08;border:1px solid var(--border);border-radius:11px;padding:10px 14px;min-width:46px;font-size:24px}main{padding:35px 4.5% 90px;max-width:1920px;margin:auto}.login-view{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:8%;min-height:calc(100vh - 240px)}.eyebrow{font-size:13px;letter-spacing:3px;color:#ed7280;font-weight:bold}.welcome h1{font-size:58px;line-height:1.12;letter-spacing:-2px;margin:23px 0}.welcome p{color:var(--muted);line-height:1.7;font-size:21px}.welcome-tags{display:flex;gap:12px;margin-top:35px}.welcome-tags span{font-size:15px;border:1px solid #ffffff18;border-radius:25px;padding:10px 17px}.login-card{max-width:440px;width:100%;padding:30px 34px;background:#17171edb;border:1px solid var(--border);border-radius:22px;box-shadow:0 15px 80px #0005}.login-card h2{font-size:29px;margin:17px 0 25px}.login-card label{display:block;font-size:16px;color:#c1bcc6;margin:14px 0 9px}input,select{color:#fff;background:#0d0e15;border:1px solid #393440;border-radius:10px;padding:13px 15px;width:100%;min-height:48px}.password-field{display:flex;border:1px solid #393440;border-radius:10px;background:#0d0e15}.password-field input{border:0;background:transparent;min-width:0}.password-field button{border:0;background:transparent;color:#c0bac3;padding:8px 16px}.primary{border:0;border-radius:10px;background:linear-gradient(100deg,#e52240,#f54155);color:white;min-height:50px;padding:14px 20px;font-weight:bold;display:flex;justify-content:center;gap:18px}.login-card .primary,.login-card .secondary{width:100%;margin-top:17px}.secondary{border:1px solid var(--border);border-radius:10px;background:#ffffff07;color:#e8e3eb;padding:12px 17px;font-size:16px}.login-help,.login-card a{font-size:13px;line-height:1.7;color:#8f8998;text-align:center;display:block}.error{font-size:15px;color:#ff909b;line-height:1.5;min-height:0}.consent{display:flex!important;align-items:flex-start;gap:10px;font-size:13px!important;line-height:1.5}.consent input{width:18px;min-height:18px;margin:0}.home-heading{padding:16px 0 33px}.home-heading h1{font-size:45px;letter-spacing:-1.5px;margin:17px 0 10px}.home-heading p{color:var(--muted);margin:0;font-size:19px}.menu-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.menu-card{border:1px solid #ffffff1f;min-height:225px;border-radius:19px;text-align:left;padding:26px;position:relative;overflow:hidden;transition:transform .15s,border-color .15s;background:#191a25}.menu-card:before{content:'';position:absolute;width:190px;height:190px;border-radius:100%;background:#ffffff08;right:-35px;top:-30px}.menu-card:hover,.menu-card:focus{transform:translateY(-5px);border-color:#fff}.live{background:linear-gradient(145deg,#6a162b,#221522)}.movies{background:linear-gradient(145deg,#382263,#1a1628)}.series{background:linear-gradient(145deg,#1b4161,#151f2b)}.favorites{background:linear-gradient(145deg,#38504a,#182b25)}.menu-icon{font-size:46px;line-height:1;display:block;margin-bottom:27px;color:#ffffffbd}.menu-card strong{font-size:25px;display:block;letter-spacing:-.5px}.menu-card small{display:block;font-size:13px;color:#bfb4c4;margin-top:10px;line-height:1.5}.feature-strip{border:1px solid #ffffff0c;border-radius:16px;background:#ffffff03;margin-top:29px;padding:21px 28px;display:flex;align-items:center;justify-content:space-between;overflow:hidden}.feature-strip strong{font-size:18px}.feature-strip p{font-size:14px;color:#96919f;margin-bottom:0}.feature-monogram{font-size:58px;font-weight:bold;color:#ffffff05;letter-spacing:9px}.catalog-heading{display:flex;align-items:center;gap:22px}.catalog-heading h1{font-size:32px;flex:1}.catalog-controls{display:flex;align-items:flex-end;gap:22px;margin:14px 0 30px;font-size:15px}.catalog-controls label{width:260px;color:#a8a0b0}.catalog-controls input,.catalog-controls select{margin-top:9px}.search-label{flex:1}.catalog-controls>span{align-self:center;color:#9f98a6}.catalog-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:19px}.content-card{border:1px solid #ffffff15;border-radius:13px;padding:0;background:#18171f;overflow:hidden;text-align:left;min-height:200px}.content-card img{width:100%;height:155px;object-fit:cover;background:#221e2e}.content-card .placeholder{height:155px;display:grid;place-items:center;font-size:48px;color:#8d7587;background:linear-gradient(135deg,#3d1a31,#161e35)}.content-card strong{display:block;font-size:16px;padding:16px;line-height:1.5}.content-card:focus{border-color:#fff}#catalog-message{color:#aaa0ae;font-size:17px}footer{position:fixed;bottom:0;left:0;right:0;min-height:67px;padding:17px 4.5%;background:#101017ed;border-top:1px solid #ffffff0c;display:flex;align-items:center;justify-content:space-between;font-size:13px;gap:20px;color:#94909d}footer>span:first-child{font-weight:bold;color:#eee7ef}footer small{font-weight:normal;margin-left:8px;color:#81798b}.device-identity{display:flex;gap:24px;font-size:12px}.device-identity b{color:#c1b8c6;letter-spacing:.6px}.notice{position:fixed;top:115px;left:50%;transform:translateX(-50%);z-index:20;max-width:650px;background:#26222e;color:#eee;border:1px solid #8b667d;border-radius:14px;padding:18px;font-size:16px}dialog{background:#19171f;color:#e9e2eb;border:1px solid #594350;border-radius:20px;padding:38px;max-width:570px;font-size:17px}dialog::backdrop{background:#000a}dialog p{color:#b7a8b7;line-height:1.6;font-size:15px}.dialog-close{position:absolute;right:18px;top:14px;background:none;color:#fff;border:0;font-size:30px}dl{display:grid;grid-template-columns:auto 1fr;gap:15px;font-size:16px}dt{color:#96849d}dd{margin:0;word-break:break-all}.playback{position:fixed;inset:0;background:#000;z-index:40}video,#avplay{width:100%;height:100%;object-fit:contain;position:absolute;inset:0}#avplay{display:none}.playback-controls{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#000e);padding:60px 4.5% 30px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}.playback-controls strong{flex:1}.playback-controls p{width:100%;font-size:15px;color:#e2a7af}.playback-controls .secondary{background:#19141bc9}#demo-badge{color:#baa790;font-size:12px}@media(min-width:1700px) and (min-height:900px){body{font-size:25px}.topbar{height:145px}.login-view{min-height:calc(100vh - 310px)}.welcome h1{font-size:78px}.login-card{max-width:560px;padding:45px}.login-card h2{font-size:37px}.login-card input{min-height:62px}.menu-card{min-height:310px;padding:38px}.menu-icon{font-size:70px}.menu-card strong{font-size:34px}.menu-card small{font-size:19px}.home-heading h1{font-size:64px}.content-card img,.content-card .placeholder{height:235px}.content-card strong{font-size:22px}}@media(max-width:1000px){.topbar{height:90px}.connection{display:none}.welcome h1{font-size:43px}.login-view{gap:5%}.login-card{padding:25px}.menu-grid{gap:14px}.menu-card{padding:18px;min-height:195px}.menu-card strong{font-size:20px}.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.device-identity{gap:10px;flex-direction:column;font-size:11px}.welcome-tags{flex-wrap:wrap}.home-heading h1{font-size:35px}}@media(max-width:650px){body{font-size:16px}.topbar{padding:20px 6%;height:85px}.brand{font-size:23px}.brand-mark{width:38px;height:38px;font-size:28px}.top-actions{gap:10px}#clock{display:none}main{padding:25px 6% 125px}.login-view{display:block}.welcome h1{font-size:36px;margin:13px 0}.welcome p{font-size:16px}.welcome-tags{display:none}.login-card{margin-top:25px;max-width:none}.eyebrow{font-size:11px}.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.menu-card{min-height:190px}.menu-card small{font-size:12px}.home-heading h1{font-size:31px}.home-heading p{font-size:16px}.feature-strip{padding:20px}.feature-monogram{display:none}footer{padding:16px 6%;flex-wrap:wrap;gap:11px;font-size:11px}#demo-badge{order:3;width:100%;font-size:10px}.catalog-heading{gap:10px}.catalog-heading h1{font-size:25px}.catalog-controls{flex-wrap:wrap;gap:15px}.catalog-controls label{width:100%;flex:auto}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.content-card img,.content-card .placeholder{height:125px}.content-card strong{font-size:14px}.content-card{min-height:180px}.playback-controls{padding-top:35px}.playback-controls strong{flex:auto;font-size:14px}.playback-controls .secondary{font-size:13px}dialog{width:90%;padding:27px}dl{grid-template-columns:1fr;gap:8px}dd{margin-bottom:10px}}
[hidden]{display:none!important}button:focus,input:focus,select:focus,a:focus{outline:3px solid #ffb8c2;outline-offset:4px}
@media(min-width:651px) and (max-height:800px){.topbar{height:88px}main{padding-top:24px;padding-bottom:96px}.home-heading{padding:6px 0 22px}.home-heading h1{font-size:36px}.menu-card{min-height:185px;padding:22px}.menu-icon{font-size:36px;margin-bottom:18px}.feature-strip{padding:16px 22px;margin-top:20px}.feature-monogram{font-size:45px}}

/* DAL RED 0.2 — controles adaptáveis à TV e ao zoom do navegador. */
body { overflow-x:hidden; }
.ambient,.playback { top:0;right:0;bottom:0;left:0; }
dialog:not([open]) { display:none; }
button, select, input { min-width:0; }
.quick-actions,.button-row { display:flex; flex-wrap:wrap; gap:12px; margin:22px 0; }
.continue-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.continue-grid .content-card { min-height:0; }
.continue-grid .content-card img,.continue-grid .content-card .placeholder { height:100px; }
.section-heading h2 { font-size:23px; margin:25px 0 16px; }
.content-card { position:relative; }
.content-card .card-kind { display:block; font-size:12px; color:#b7a6bb; padding:0 16px 15px; }
.content-card.locked .placeholder { color:#f4afb9; background:linear-gradient(145deg,#311520,#19151f); }
.card-progress { width:100%; height:4px; background:#41333d; border:0; }
.card-progress::-webkit-progress-bar { background:#41333d; }
.card-progress::-webkit-progress-value { background:var(--red); }
.catalog-controls { flex-wrap:wrap; }
.catalog-controls label { flex:0 1 240px; }
.catalog-controls .search-label { flex:1 1 250px; }
.catalog-controls>span { white-space:nowrap; }
dialog { z-index:100; width:92%; max-height:88vh; overflow-y:auto; }
dialog h2 { margin:10px 0 24px; }
dialog h3 { font-size:22px; margin:0 0 18px; }
dialog label { display:block; font-size:16px; color:#cec0cf; margin:16px 0; }
dialog label select,dialog label input { margin-top:8px; }
dialog .primary { margin-top:20px; }
#settings-dialog { max-width:1080px; padding:32px; }
.settings-heading { padding-right:30px; }
.settings-layout { display:grid; grid-template-columns:210px minmax(0,1fr); gap:28px; }
.settings-nav { display:flex; flex-direction:column; gap:8px; border-right:1px solid var(--border); padding-right:22px; }
.settings-nav button { text-align:left; border:1px solid transparent; background:transparent; color:#b5a7bb; border-radius:10px; padding:14px; font-size:17px; }
.settings-nav button.active { background:#ff364c1c; color:#fff; border-color:#ff364c40; }
.settings-content { min-width:0; }
.settings-content section>label>select { max-width:100%; }
.settings-content section>p { font-size:14px; }
.settings-content .toggle-row { display:flex; align-items:center; gap:12px; }
.toggle-row input { width:20px; min-height:20px; margin:0; accent-color:var(--red); }
.setting-status { background:#ffffff07; border:1px solid var(--border); border-radius:10px; padding:13px; font-size:16px; }
.pin-fields { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.pin-fields input { text-align:center; letter-spacing:6px; }
#pin-dialog { max-width:390px; }
#parental-pin { text-align:center; letter-spacing:14px; font-size:27px; }
.pin-keypad { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:20px; }
.pin-keypad button { border:1px solid var(--border); background:#28212d; border-radius:10px; min-height:45px; font-size:22px; }
#pin-form>.primary { width:100%; }
#category-manager { margin-top:20px; }
.category-row { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:16px; align-items:center; border-top:1px solid var(--border); padding:12px 0; font-size:16px; }
.category-row strong { font-size:16px; overflow-wrap:anywhere; }
.category-row label { display:flex; align-items:center; gap:8px; margin:0; font-size:13px; }
.category-row input { width:18px; min-height:18px; margin:0; accent-color:var(--red); }
#details-dialog { max-width:1050px; }
.details-layout { display:grid; grid-template-columns:210px minmax(0,1fr); gap:28px; align-items:start; }
.details-layout>img { width:100%; max-height:320px; object-fit:cover; border-radius:13px; }
.details-layout.no-image { grid-template-columns:1fr; }
#details-title { overflow-wrap:anywhere; }
#details-meta { color:#fa8a98; }
#details-cast { font-size:13px; }
#season-section { border-top:1px solid var(--border); padding-top:10px; margin-top:20px; }
#season-select { max-width:250px; }
#episode-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.episode-button { text-align:left; }
#guide-dialog { max-width:700px; }
.epg-row { border-bottom:1px solid var(--border); padding:14px 0; font-size:16px; }
.epg-row time { display:block; color:#e78c9a; margin-bottom:7px; font-size:14px; }
.epg-row p { margin-bottom:0; }
.tmdb-credit { display:block; color:#897991; font-size:11px; margin-top:25px; }
.playback-controls { display:block; padding:80px 4% 24px; transition:opacity .2s; }
.playback.controls-hidden .playback-controls,.playback.controls-hidden .player-brand { opacity:0; pointer-events:none; }
.player-title-row { display:flex; align-items:center; gap:20px; margin-bottom:20px; }
.playing-heading { flex:1; min-width:0; }
.playing-heading strong { font-size:23px; overflow-wrap:anywhere; display:block; }
.playing-heading small { display:block; font-size:12px; color:#c1aab8; margin-top:8px; }
.playing-heading p { margin:8px 0 0; font-size:14px; color:#fff; }
.player-brand { position:absolute; right:4%; top:4%; color:#ffffff5e; font-size:22px; font-weight:bold; letter-spacing:3px; }
.player-brand b { color:#ff364c90; }
.live-badge { background:#cf1935; font-size:11px; border-radius:5px; padding:7px 10px; font-weight:bold; }
.seek-row { display:flex; align-items:center; gap:16px; font-size:13px; margin-bottom:16px; }
.seek-row input { flex:1; margin:0; padding:0; min-height:24px; accent-color:var(--red); background:transparent; border:0; }
.player-actions { display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
.player-actions .secondary { font-size:14px; padding:11px 15px; }
.player-actions .primary { margin:0; font-size:14px; }
.player-options { display:flex; flex-wrap:wrap; gap:12px; margin-top:18px; }
.player-options label { font-size:12px; color:#d8c8d4; flex:0 1 180px; }
.quick-choice { flex:0 1 auto; font-size:12px; color:#d8c8d4; }
.quick-choice>div { display:flex; gap:4px; margin-top:7px; }
.quick-choice button { border:1px solid #6c4f6260; padding:11px 13px; font-size:14px; border-radius:8px; background:#211923ed; }
.quick-choice button.active { color:#fff; background:#b8223e; border-color:#ef6476; }
.quick-choice button:disabled { opacity:.4; cursor:default; }
.player-options select { display:block; margin-top:7px; background:#201822ed; min-height:40px; padding:8px 12px; font-size:14px; }
.playback-controls p#playback-message { margin-bottom:0; color:#ffb3bf; }
.buffering { position:absolute; left:50%; top:38%; transform:translate(-50%,-50%); text-align:center; font-size:15px; border-radius:15px; background:#151019ce; padding:25px; }
.buffering span { display:block; width:36px; height:36px; margin:auto; border:3px solid #ff364c35; border-top-color:#ff364c; border-radius:50%; animation:spin 1s linear infinite; }
@keyframes spin { to { transform:rotate(360deg); } }
.subtitles { position:absolute; bottom:14%; left:10%; right:10%; text-align:center; font-size:28px; color:white; text-shadow:0 2px 4px black; pointer-events:none; }
@media(min-width:1700px) and (min-height:900px) { #settings-dialog,#details-dialog { max-width:1250px; padding:42px; } dialog label,.settings-nav button { font-size:21px; } dialog h3 { font-size:28px; } .settings-content section>p { font-size:18px; } .player-actions .secondary,.player-options select { font-size:19px; } .playing-heading strong { font-size:31px; } .continue-grid .content-card img,.continue-grid .content-card .placeholder { height:145px; } }
@media(max-width:800px) { .settings-layout { grid-template-columns:160px minmax(0,1fr); gap:18px; } .settings-nav { padding-right:12px; } .settings-nav button { padding:12px 8px; font-size:14px; } .pin-fields { grid-template-columns:1fr; gap:0; } .pin-fields label { margin:8px 0; } .details-layout { grid-template-columns:140px minmax(0,1fr); gap:18px; } .continue-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:650px) { #settings-dialog,#details-dialog { padding:25px 20px; max-height:90vh; } .settings-layout { display:block; } .settings-nav { flex-direction:row; overflow:auto; border:0; border-bottom:1px solid var(--border); padding:0 0 12px; margin-bottom:20px; } .settings-nav button { white-space:nowrap; } .details-layout { display:block; } .details-layout>img { max-width:140px; max-height:150px; margin-bottom:20px; } #episode-list { grid-template-columns:1fr; } .catalog-controls label,.catalog-controls .search-label { flex:1 1 100%; } .player-title-row { gap:12px; margin-bottom:15px; } .playing-heading strong { font-size:16px; } .player-actions .secondary { font-size:12px; padding:9px; } .player-options label { flex:1 1 27%; } .player-options select { font-size:12px; padding:7px; } .playback-controls { padding:45px 4% 18px; max-height:85vh; overflow:auto; } .category-row { grid-template-columns:1fr auto; gap:12px; } .category-row strong { grid-column:1/-1; } .quick-actions { gap:9px; } .quick-actions .secondary { font-size:13px; } }
@media(max-height:520px) and (min-width:651px) { .player-options { margin-top:10px; } .playback-controls { padding-top:35px; max-height:85vh; overflow:auto; } .player-title-row { margin-bottom:10px; } .settings-heading h2 { margin-bottom:18px; } }
@media(max-width:650px){.quick-choice { flex:1 1 100%; }.quick-choice button { flex:1; padding:9px; font-size:12px; }.player-options label { flex:1 1 28%; }.player-options { gap:10px; }.playback-controls { max-height:90vh; }}
@media(min-width:1700px) and (min-height:900px) {
  .topbar { height:110px; }
  main { padding-top:24px; padding-bottom:60px; }
  .home-heading { padding:10px 0 22px; }
  .home-heading h1 { font-size:48px; margin:15px 0 10px; }
  .menu-card { min-height:230px; padding:28px; }
  .menu-icon { font-size:50px; margin-bottom:22px; }
  .menu-card strong { font-size:28px; }
  .menu-card small { font-size:16px; }
  .continue-grid .content-card img,.continue-grid .content-card .placeholder { height:105px; }
  .continue-grid .content-card strong { font-size:18px; padding:12px 16px; }
  .feature-strip { margin-top:22px; padding:16px 25px; }
}
#continue-section:not([hidden]) + .feature-strip { display:none; }
@media(min-width:651px) and (max-height:800px) {
  .topbar { height:72px; padding-top:15px; padding-bottom:15px; }
  .home-heading { padding:5px 0 16px; }
  .home-heading h1 { font-size:32px; margin:12px 0 8px; }
  .menu-card { min-height:155px; padding:20px; }
  .menu-icon { font-size:32px; margin-bottom:12px; }
  .quick-actions { margin:16px 0; }
  .continue-grid .content-card img,.continue-grid .content-card .placeholder { height:60px; }
  .continue-grid .content-card strong { padding:10px 14px; font-size:15px; }
  .continue-grid .card-kind { padding-bottom:10px; }
  .section-heading h2 { font-size:20px; margin:18px 0 12px; }
}

/* HD: espaço para a barra inferior */
@media(min-width:651px) and (max-height:800px){main{padding-bottom:66px}.menu-card{min-height:150px}}

.buffer-setting{border:1px solid var(--border);border-radius:14px;padding:14px 18px;margin:16px 0}.buffer-setting h3{margin-top:0}.buffer-setting p{line-height:1.5}.live-mode-info{color:#b9c7bb;font-size:14px;margin:8px 0 0}#quick-football.active{border-color:#64d08b;color:#89e3a9;background:#173024}#football-dialog{max-width:660px;width:calc(100vw - 48px)}.football-risk{background:#39251b;border:1px solid #f0aa55;color:#ffce92;border-radius:12px;padding:16px;line-height:1.5}#football-dialog p{line-height:1.5}.legacy-dialog #football-dialog{z-index:130;max-width:660px}
