/* Pocket TV — mobile-first, one column, thumb-sized controls, fixed WhatsApp bar.
   On wide screens the same column is centred on a pale backdrop, like an app shell. */
:root{
  color-scheme:dark;
  --outer:#e9efe9;
  --bg:#0c1714;
  --card:#14241f;
  --card-2:#1b3029;
  --line:rgba(255,255,255,.1);
  --ink:#f2f8f5;
  --soft:#bdd0c8;
  --mute:#8fa89d;
  --mint:#4cf0b4;
  --mint-ink:#04251a;
  --sun:#ffd166;
  --live:#d92d4b;
  --font:'Onest',system-ui,-apple-system,'Segoe UI',sans-serif;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
[id]{scroll-margin-top:76px}
body{margin:0;font-family:var(--font);font-size:1rem;line-height:1.55;color:var(--ink);background:var(--outer);-webkit-font-smoothing:antialiased}
img,svg{max-width:100%}
h1,h2,h3,p,ul,ol,dl,dd{margin:0}
ul,ol{padding:0;list-style:none}
a{color:inherit;text-decoration:none}
b{font-weight:700}
h1,h2,h3{letter-spacing:-.025em}
:focus-visible{outline:3px solid var(--mint);outline-offset:3px;border-radius:8px}
.ico{width:22px;height:22px;flex:none;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}

.app{position:relative;max-width:520px;min-height:100vh;margin:0 auto;background:var(--bg);padding-bottom:calc(96px + env(safe-area-inset-bottom))}
@media (min-width:640px){
  body{padding:24px 0}
  .app{border-radius:36px;overflow:clip;min-height:calc(100vh - 48px)}
}

/* ---------- top bar + menu ---------- */
.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:rgba(12,23,20,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.logo{display:inline-flex;align-items:center;gap:10px;font-weight:800;font-size:1.2rem;letter-spacing:-.02em}
.logo i{position:relative;display:block;width:30px;height:30px;border-radius:10px;background:var(--mint)}
.logo i::after{content:"";position:absolute;left:11px;top:9px;width:10px;height:12px;background:var(--mint-ink);clip-path:polygon(0 0,100% 50%,0 100%)}
.menu-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:48px;height:48px;border:0;border-radius:14px;background:var(--card);cursor:pointer}
.menu-btn span{width:20px;height:2px;border-radius:2px;background:var(--ink)}
.menu-panel{position:fixed;z-index:40;top:0;bottom:0;left:50%;translate:-50% 0;width:min(100%,520px);padding:80px 24px 40px;overflow-y:auto;background:var(--bg)}
.menu-panel[hidden]{display:none}
.menu-close{position:absolute;top:12px;right:20px;display:grid;place-items:center;width:48px;height:48px;border:0;border-radius:14px;background:var(--card);color:var(--ink);cursor:pointer}
.menu-panel nav{display:grid}
.menu-panel nav a{padding:16px 0;border-bottom:1px solid var(--line);font-size:1.6rem;font-weight:800;letter-spacing:-.02em}

/* ---------- shared controls ---------- */
.big{
  display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:58px;margin-top:12px;padding:0 20px;border:0;border-radius:18px;cursor:pointer;
  font:800 1.1rem/1.1 var(--font);color:var(--mint-ink);background:var(--mint);transition:transform .15s;
}
.big:active{transform:scale(.98)}
.big.outline{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 2px rgba(255,255,255,.22)}
.big.dark{background:var(--mint-ink);color:var(--mint)}
.big.sm{min-height:52px;font-size:1rem}

/* ---------- hero ---------- */
.hero{padding:8px 20px 28px}
.pill{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;background:var(--card-2);font-size:.82rem;font-weight:700;color:var(--mint)}
.pill i{width:8px;height:8px;border-radius:50%;background:var(--mint)}
.hero h1{margin-top:16px;font-size:clamp(2.3rem,9.5vw,2.9rem);font-weight:800;line-height:1.05;letter-spacing:-.03em;text-wrap:balance}
.hero h1 span{color:var(--mint)}
.lead{margin:14px 0 6px;font-size:1.05rem;color:var(--soft)}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.chips li{padding:9px 13px;border-radius:12px;background:var(--card);font-size:.86rem;font-weight:600;color:var(--soft)}
.tv{position:relative;height:170px;margin-top:22px;border-radius:20px;background:linear-gradient(135deg,#1f6f5a,#0f3a30)}
.tv::before{content:"";position:absolute;left:50%;top:50%;width:54px;height:54px;margin:-27px;border-radius:50%;background:#fff}
.tv::after{content:"";position:absolute;left:50%;top:50%;width:20px;height:24px;margin:-12px -6px;background:#0f3a30;clip-path:polygon(0 0,100% 50%,0 100%)}
.badge{position:absolute;left:14px;top:14px;padding:4px 10px;border-radius:8px;background:var(--live);font-size:.75rem;font-weight:800;color:#fff}
.sports{display:flex;gap:8px;margin:14px -20px 0;padding:0 20px 4px;overflow-x:auto;scrollbar-width:none}
.sports::-webkit-scrollbar{display:none}
.sports li{flex:none;padding:8px 14px;border:1px solid var(--line);border-radius:999px;font-size:.88rem;font-weight:700;color:var(--soft)}

/* ---------- sections ---------- */
.sec{padding:40px 20px 8px}
.sec h2{font-size:1.85rem;font-weight:800;line-height:1.1;text-wrap:balance}
.sub{margin-top:10px;font-size:1rem;color:var(--soft)}
.sub+.sub{margin-top:12px}
.sec .big{margin-top:14px}
.sec h2+.sub+*{margin-top:20px}

.swipe{display:flex;gap:12px;margin:20px -20px 0;padding:0 20px 12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:20px;scrollbar-width:thin;scrollbar-color:var(--card-2) transparent}
.sc{flex:0 0 min(228px,70%);scroll-snap-align:start;min-height:230px;padding:18px;border-radius:20px;background:var(--card)}
.ic{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:14px;background:var(--card-2);color:var(--mint)}
.sc h3{margin-top:14px;font-size:1.2rem;font-weight:800;line-height:1.15}
.sc p{margin-top:6px;font-size:.92rem;line-height:1.45;color:var(--soft)}

.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:22px}
.stats div{padding:16px 10px;border-radius:18px;background:var(--card);text-align:center}
.stats dd{font-size:1.65rem;font-weight:800;letter-spacing:-.03em;color:var(--mint)}
.stats dt{margin-top:2px;font-size:.78rem;font-weight:600;color:var(--soft)}

.steps{display:grid;gap:12px}
.steps li{display:flex;gap:14px;padding:16px;border-radius:18px;background:var(--card)}
.steps .n{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:50%;background:var(--mint);color:var(--mint-ink);font-weight:800}
.steps h3,.dev h3{font-size:1.08rem;font-weight:800;line-height:1.2}
.steps p,.dev p{margin-top:3px;font-size:.92rem;line-height:1.45;color:var(--soft)}

.dev{display:grid;gap:10px}
.dev li{display:flex;gap:14px;align-items:center;padding:16px;border-radius:18px;background:var(--card)}
.mini{margin:30px 0 14px;font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.incl{display:grid;gap:14px}
.incl li{display:flex;gap:12px}
.incl .ico{margin-top:2px;color:var(--mint);stroke-width:2.6}
.incl b{display:block}
.incl span{font-size:.92rem;line-height:1.45;color:var(--soft)}
.note{margin-top:24px;padding:18px;border:1px dashed rgba(255,255,255,.22);border-radius:18px}
.note p{color:var(--soft)}
.note .big{margin-top:14px}

.plan{position:relative;margin-top:16px;padding:22px;border-radius:24px;background:var(--card)}
.plan h3{font-size:.95rem;font-weight:700;opacity:.8}
.price{margin:4px 0 14px}
.price b{font-size:3rem;font-weight:800;line-height:1;letter-spacing:-.03em}
.price small{font-size:.95rem;font-weight:600;opacity:.7}
.plan ul{display:grid;gap:8px}
.plan li{display:flex;gap:10px;font-size:.95rem}
.plan li .ico{width:20px;height:20px;margin-top:2px;color:var(--mint)}
.plan .big{margin-top:20px}
.plan.featured{background:var(--mint);color:var(--mint-ink)}
.plan.featured li .ico{color:var(--mint-ink)}
.tag{display:inline-block;margin-bottom:8px;padding:4px 10px;border-radius:8px;background:var(--mint-ink);color:var(--mint);font-size:.75rem;font-weight:800}

.chat{display:grid;gap:8px;margin-top:20px}
.chat p{max-width:86%;padding:10px 14px;border-radius:16px;font-size:.92rem;line-height:1.4}
.chat .in{background:var(--card);border-bottom-left-radius:4px}
.chat .out{justify-self:end;background:#1f4a3b;border-bottom-right-radius:4px}
.big-chips{margin-top:18px}
.big-chips li{padding:10px 14px}

.faq{margin-top:20px}
.faq details{margin-bottom:8px;border-radius:16px;background:var(--card)}
.faq summary{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:58px;padding:14px 18px;cursor:pointer;list-style:none;font-weight:700;line-height:1.3}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";flex:none;font-size:1.5rem;font-weight:500;line-height:1;color:var(--mint);transition:rotate .2s}
.faq details[open] summary::after{rotate:45deg}
.faq details p{padding:0 18px 18px;font-size:.95rem;color:var(--soft)}

.form{display:grid;gap:14px;margin-top:22px}
.form label{display:grid;gap:6px;font-size:.88rem;font-weight:700;color:var(--soft)}
.form input,.form select,.form textarea{width:100%;min-height:54px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--card);color:var(--ink);font:500 1rem var(--font)}
.form textarea{min-height:112px;resize:vertical}
.form ::placeholder{color:var(--mute)}
.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--mint)}
.form .big{margin-top:4px}
.form-note{text-align:center;font-size:.88rem;color:var(--mute)}
.form .big.sent{background:var(--sun)}
.info{display:grid;gap:12px;margin-top:26px}
.info li{display:flex;gap:14px;align-items:center;font-size:.95rem;color:var(--soft)}
.info b{display:block;color:var(--ink)}

footer{margin-top:40px;padding:30px 20px 24px;border-top:1px solid var(--line)}
footer p{margin-top:14px;font-size:.92rem;color:var(--soft)}
footer .legal{font-size:.8rem;line-height:1.5;color:var(--mute)}

/* ---------- fixed WhatsApp bar ---------- */
.sticky{position:fixed;z-index:30;bottom:0;left:50%;translate:-50% 0;width:min(100%,520px);padding:12px 16px calc(16px + env(safe-area-inset-bottom));background:linear-gradient(to top,var(--bg) 72%,transparent);transition:opacity .25s,translate .25s}
.sticky .big{margin:0}
.sticky.hide{opacity:0;pointer-events:none;translate:-50% 24px}

/* ---------- motion ---------- */
.reveal{opacity:0;translate:0 18px;transition:opacity .6s ease,translate .6s ease}
.reveal.in{opacity:1;translate:0 0}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal{opacity:1;translate:none;transition:none}
  .big,.sticky{transition:none}
}

@media (min-width:640px){
  .hero,.sec,footer{padding-left:32px;padding-right:32px}
  .swipe,.sports{margin-left:-32px;margin-right:-32px;padding-left:32px;padding-right:32px}
  .topbar{padding:14px 32px}
  .sc{flex-basis:240px}
  .swipe{scroll-padding-inline:32px}
}
