*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --gold:#ffd700;--gold2:#ffb347;--dark:#0a0a0f;--card:#12121a;
  --text:#f5f5f5;--muted:#aaa;--green:#00c853;--blue:#2196f3;
}
html,body{height:100%;font-family:'Outfit',sans-serif;background:var(--dark);color:var(--text);overflow-x:hidden}
body{background:radial-gradient(ellipse at 50% 0%,#1a1030 0%,var(--dark) 60%)}

.screen{position:fixed;inset:0;display:none;align-items:center;justify-content:center;flex-direction:column;z-index:1}
.screen.active{display:flex}

/* Landing — ENDELEA ni button ya kawaida, si circle */
.endelea-wrap{
  width:min(88vw,360px);
  display:flex;
  align-items:center;
  justify-content:center;
}
.btn-endelea{
  width:100%;
  min-height:72px;
  padding:1rem 1.5rem;
  border:0;
  border-radius:18px;
  cursor:pointer;
  background:#0b0d17;
  color:#fff;
  font:800 1.25rem/1.1 'Outfit',sans-serif;
  position:relative;
  z-index:3;
  text-shadow:0 2px 8px rgba(0,0,0,.5);
  box-shadow:0 10px 30px rgba(0,0,0,.28);
  overflow:visible;
  isolation:isolate;
  animation:landingShake .8s ease-in-out infinite;
}
.btn-endelea::before{
  content:'';
  position:absolute;
  inset:-2px;
  border-radius:20px;
  padding:2px;
  background:conic-gradient(from 0deg,
    transparent 0deg 42deg,
    #ff73d1 42deg 70deg,
    #8c7bff 70deg 92deg,
    transparent 92deg 135deg,
    #61d8ff 135deg 162deg,
    transparent 162deg 220deg,
    #ff73d1 220deg 248deg,
    #8c7bff 248deg 275deg,
    transparent 275deg 360deg);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  animation:rotateBorder 2.2s linear infinite;
  pointer-events:none;
  z-index:-1;
}
.btn-endelea::after{
  content:'';
  position:absolute;
  inset:0;
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,0));
  pointer-events:none;
  z-index:-1;
}
.btn-endelea:active{transform:scale(.98)}

/* Hub */
#hub{padding:1rem;overflow-y:auto;align-items:stretch;justify-content:flex-start;padding-top:2rem}
.hub-hint{text-align:center;font-size:.9rem;color:var(--muted);margin-bottom:1.2rem;padding:0 .5rem;line-height:1.5}
#content-list{display:flex;flex-direction:column;gap:.8rem;max-width:420px;width:100%;margin:0 auto}
#unlocked-area{max-width:420px;width:100%;margin:1.5rem auto 2rem}

.content-btn{
  display:flex;align-items:center;gap:.8rem;padding:.6rem;
  background:rgba(18,18,26,.9);border-radius:16px;cursor:pointer;
  border:1px solid var(--gold);position:relative;overflow:hidden;transition:transform .2s;
}
.content-btn.mini{transform:scale(.75);opacity:.85;margin:-.3rem 0}
.content-btn .gold-bg{position:absolute;inset:-2px;border-radius:18px;z-index:0;opacity:.6}
.content-btn .inner{position:relative;z-index:1;display:flex;align-items:center;gap:.8rem;width:100%}
.content-btn .thumb{width:80px;height:80px;border-radius:12px;object-fit:cover;flex-shrink:0;background:#222}
.content-btn .thumb-wrap{width:80px;height:80px;border-radius:12px;overflow:hidden;flex-shrink:0;background:#222}
.content-btn video.thumb{width:80px;height:80px;border-radius:12px;object-fit:cover;display:block}
.thumb-wrap.no-video{background:linear-gradient(135deg,#ff6b35,#7b2ff7,#00d4ff);background-size:200% 200%;animation:gradientShift 2s ease infinite}
.thumb-wrap.no-video video{display:none}
#intro-video.intro-fallback{background:linear-gradient(160deg,#1a1030,#ff6b35,#7b2ff7,#00d4ff);background-size:400% 400%;animation:gradientShift 3s ease infinite}
.content-btn .label{font:800 1.05rem/1.2 'Outfit',sans-serif;flex:1}
.content-btn .badge{font-size:.7rem;background:var(--green);padding:2px 8px;border-radius:20px;margin-left:auto}

/* Unlocked videos */
.unlocked-section{margin-bottom:1.5rem}
.unlocked-section h3{font:800 1rem 'Outfit';color:var(--gold);margin-bottom:.6rem;display:flex;align-items:center;gap:.4rem}
.unlocked-section h3::before{content:'✓';background:var(--green);width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;color:#fff}
.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}
.video-thumb{aspect-ratio:9/16;border-radius:10px;background:#222;cursor:pointer;overflow:hidden;position:relative}
.video-thumb video,.video-thumb img{width:100%;height:100%;object-fit:cover}
.video-thumb::after{content:'▶';position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.3);font-size:1.2rem;opacity:0;transition:.2s}
.video-thumb:hover::after{opacity:1}

/* Fullscreen video & flash */
#intro-video video,#flash-screen img{width:100%;max-width:100vw;height:100vh;object-fit:cover;background:#000}
#flash-screen img{aspect-ratio:9/16;max-height:100vh;margin:auto}

/* Modal */
.modal{position:fixed;inset:0;background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center;z-index:100;padding:1rem}
.modal.hidden{display:none!important}
.pay-card{width:100%;max-width:360px;border-radius:24px;padding:1.5rem;text-align:center;position:relative}
.gold-card{background:linear-gradient(160deg,#2a2000 0%,#1a1500 30%,#0d0a00 100%);border:2px solid var(--gold);box-shadow:0 0 40px rgba(255,215,0,.3),inset 0 1px 0 rgba(255,215,0,.2)}
.pay-logos{display:flex;justify-content:center;gap:.6rem;margin-bottom:1rem;flex-wrap:wrap}
.pay-logos img{height:32px;opacity:.5;transition:.3s;border-radius:6px}
.pay-logos img.active{opacity:1;transform:scale(1.15);filter:none}
.pay-card h2{font:800 1.2rem 'Outfit';color:var(--gold);margin-bottom:.4rem}
.pay-desc{font-size:.85rem;color:var(--muted);margin-bottom:1rem;line-height:1.4}
.amount-box{font:800 2.2rem 'Outfit';color:var(--gold);margin-bottom:1rem}
.amount-box small{font-size:1rem;vertical-align:super;margin-right:2px}
.phone-wrap{position:relative;margin-bottom:.8rem}
.phone-wrap input{width:100%;padding:.9rem 1rem .9rem 5.5rem;border:2px solid rgba(255,215,0,.4);border-radius:12px;background:rgba(0,0,0,.4);color:#fff;font:600 1.1rem 'Outfit';outline:none}
.phone-wrap input:focus{border-color:var(--gold);box-shadow:0 0 15px rgba(255,215,0,.3)}
.net-badge{position:absolute;left:.8rem;top:50%;transform:translateY(-50%);font-size:.65rem;background:rgba(255,215,0,.2);color:var(--gold);padding:2px 6px;border-radius:6px;max-width:4.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pay-status{font-size:.8rem;min-height:1.2rem;margin-bottom:.6rem;color:var(--gold2)}
.btn-lipa{width:100%;padding:1rem;border:none;border-radius:50px;cursor:pointer;font:800 1.1rem 'Outfit';color:#fff;background:linear-gradient(135deg,#00c853,#00e676);position:relative;box-shadow:none}

/* Player */
#player-modal{background:rgba(0,0,0,.95)}
#player-vid{max-width:100%;max-height:90vh;border-radius:12px}
.player-close{position:absolute;top:1rem;right:1rem;background:none;border:none;color:#fff;font-size:2rem;cursor:pointer;z-index:101}
