/* Paxelle — brand stylesheet. Neon cyber: deep-space bg, violet/blue/magenta glow. */
:root{
  --blue:#3000FF; --violet:#8000FF; --magenta:#C026D3;
  --bg:#0D001A; --bg2:#15042b; --ink:#FFFFFF; --muted:#b9a8d6;
  --line:rgba(160,120,255,.22);
  --glow:0 0 24px rgba(128,0,255,.55), 0 0 64px rgba(48,0,255,.30);
  --grad:linear-gradient(100deg,var(--blue),var(--violet) 55%,var(--magenta));
  --sans:'Segoe UI',Inter,system-ui,-apple-system,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;font-family:var(--sans);color:var(--ink);background:var(--bg);
  line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden;
}
body::before{ /* ambient nebula */
  content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;
  background:
    radial-gradient(60% 50% at 18% 8%,rgba(48,0,255,.32),transparent 60%),
    radial-gradient(55% 45% at 88% 22%,rgba(192,38,211,.26),transparent 60%),
    radial-gradient(70% 60% at 50% 110%,rgba(128,0,255,.22),transparent 60%),
    var(--bg);
}
body::after{ /* faint scanlines */
  content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.05;
  background:repeating-linear-gradient(0deg,#fff 0 1px,transparent 1px 3px);
}
a{color:#d9c6ff;text-decoration:none}
a:hover{color:#fff}
.wrap{max-width:1080px;margin:0 auto;padding:0 22px}
.wrap.narrow{max-width:620px}
.skip{position:absolute;left:-999px}
.skip:focus{left:8px;top:8px;background:#000;padding:8px;z-index:99}

/* ---- header ---- */
.site-head{
  position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:18px;
  padding:14px 22px;backdrop-filter:blur(10px);
  background:rgba(13,0,26,.6);border-bottom:1px solid var(--line);
}
.brand{display:flex;align-items:center;gap:10px}
.brand-word{font-weight:800;letter-spacing:.18em;font-size:1.05rem}
.site-nav{margin-left:auto;display:flex;align-items:center;gap:18px;font-weight:600;font-size:.92rem}
.site-nav a.on{color:#fff}
.nav-cta{padding:8px 14px;border-radius:999px;background:var(--grad);color:#fff!important;box-shadow:var(--glow)}
.lang{border:1px solid var(--line);padding:6px 10px;border-radius:999px;font-size:.82rem}

/* ---- wordmark / glitch ---- */
.wordmark{
  font-weight:900;letter-spacing:.12em;line-height:1;margin:.1em 0;
  font-size:clamp(2.8rem,9vw,6.2rem);
  background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 0 18px rgba(128,0,255,.55));
}
.wordmark.sm{font-size:1.4rem;filter:none}
.glitch{position:relative}
.glitch::before,.glitch::after{
  content:attr(data-text);position:absolute;inset:0;clip-path:inset(0);opacity:.7;
}
.glitch::before{color:var(--magenta);transform:translate(2px,0);mix-blend-mode:screen;animation:gl 3.6s infinite}
.glitch::after{color:var(--blue);transform:translate(-2px,0);mix-blend-mode:screen;animation:gl 2.7s infinite reverse}
@keyframes gl{0%,92%,100%{clip-path:inset(0 0 100% 0)}93%{clip-path:inset(20% 0 40% 0)}96%{clip-path:inset(60% 0 8% 0)}}
@media (prefers-reduced-motion:reduce){.glitch::before,.glitch::after{display:none}}

/* ---- hero ---- */
.hero{position:relative;padding:64px 22px 28px}
.hero-grid{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center}
.kicker{text-transform:uppercase;letter-spacing:.22em;font-size:.78rem;color:var(--muted);margin:0}
.hero-title{font-size:clamp(1.4rem,3.4vw,2.1rem);font-weight:800;margin:.2em 0 .3em}
.hero-sub{color:var(--muted);font-size:1.05rem;max-width:34ch}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.hero-portrait img{width:100%;max-width:520px;border-radius:18px;
  box-shadow:0 0 0 1px var(--line),0 30px 80px rgba(0,0,0,.6),var(--glow)}
.taken-over{text-align:center;margin:34px auto 0;font-weight:700;letter-spacing:.08em;color:var(--muted)}
.taken-over .px{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.taken-over .ch6{display:inline-block;border:1px solid var(--magenta);border-radius:8px;padding:2px 10px;color:#fff;box-shadow:var(--glow)}

/* ---- buttons ---- */
.btn{display:inline-block;font-weight:700;padding:12px 22px;border-radius:999px;border:1px solid transparent;cursor:pointer;font-size:.95rem;transition:transform .12s,box-shadow .2s}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--grad);color:#fff!important;box-shadow:var(--glow)}
.btn-ghost{border-color:var(--line);color:#e7dbff!important;background:rgba(255,255,255,.03)}
.btn.big{padding:15px 30px;font-size:1.05rem}
.btn.sm{padding:8px 14px;font-size:.85rem}

/* ---- sections ---- */
section h2{font-size:clamp(1.6rem,4vw,2.4rem);font-weight:800;letter-spacing:.02em;margin:0 0 .2em}
.section-sub{color:var(--muted);margin:0 0 26px}
.about{padding:60px 0}
.about-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:30px;align-items:center}
.about .lead{font-size:1.15rem;color:#e9defb}
.about-avatar img{width:100%;max-width:260px;border-radius:50%;box-shadow:var(--glow);border:1px solid var(--line)}

.story{padding:60px 0;border-top:1px solid var(--line)}
.weeks{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;counter-reset:wk}
.week{position:relative;background:linear-gradient(180deg,var(--bg2),rgba(21,4,43,.4));border:1px solid var(--line);border-radius:14px;padding:20px 18px;overflow:hidden}
.week .wk{font-weight:900;font-size:1.4rem;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.week h3{font-size:1rem;margin:.4em 0 .3em}
.week p{color:var(--muted);font-size:.92rem;margin:0}
.week::after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--grad)}

.watch{padding:60px 0;border-top:1px solid var(--line);text-align:center}
.watch-row{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;margin:24px 0 30px}
.watch-item{display:flex;align-items:center;gap:10px;padding:14px 22px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.03);font-weight:700;color:#fff!important}
.watch-item:hover{box-shadow:var(--glow);border-color:var(--violet)}
.wi-icon{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:6px;background:var(--grad);font-size:.85rem;font-weight:900}

/* ---- upload page ---- */
.up-hero{padding:54px 0 10px}
.up-hero-grid{display:flex;align-items:center;gap:26px;justify-content:space-between;flex-wrap:wrap}
.up-hero h1{font-size:clamp(2rem,6vw,3.4rem);font-weight:900;margin:0}
.up-avatar{width:160px;height:160px;border-radius:50%;box-shadow:var(--glow);border:1px solid var(--line)}
.how{padding:30px 0}
.steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.steps li{background:var(--bg2);border:1px solid var(--line);border-radius:14px;padding:22px}
.steps .num{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--grad);font-weight:900;box-shadow:var(--glow)}
.steps h3{margin:.5em 0 .2em}
.steps p{color:var(--muted);margin:0}

.form-wrap{padding:20px 0 60px}
.card{background:linear-gradient(180deg,var(--bg2),rgba(21,4,43,.5));border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:0 20px 60px rgba(0,0,0,.45)}
.upload-form .field{display:block;margin-bottom:16px}
.field>span{display:block;font-weight:600;margin-bottom:6px;color:#e7dbff}
.field input[type=text],.field input[type=password],.field input[type=email]{width:100%;padding:13px 14px;border-radius:10px;border:1px solid var(--line);background:rgba(0,0,0,.35);color:#fff;font-size:1rem}
.field input:focus{outline:none;border-color:var(--violet);box-shadow:0 0 0 3px rgba(128,0,255,.25)}
.field.file input{width:100%;padding:12px;border:1px dashed var(--line);border-radius:10px;background:rgba(0,0,0,.25);color:var(--muted)}
.consent{display:flex;gap:12px;align-items:flex-start;margin:8px 0 18px;color:#e7dbff;font-size:.95rem}
.consent input{margin-top:4px;width:18px;height:18px;accent-color:var(--violet)}
.micro{color:var(--muted);font-size:.82rem;margin:16px 0 0}
.errors{background:rgba(192,38,211,.14);border:1px solid var(--magenta);border-radius:10px;padding:12px 16px;margin-bottom:18px}
.errors p{margin:.2em 0}
.thanks{text-align:center}

/* ---- footer ---- */
.site-foot{border-top:1px solid var(--line);margin-top:30px;padding:40px 22px;text-align:center}
.foot-tagline{font-weight:800;font-size:1.2rem;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;min-height:1.4em}
.foot-social{display:flex;gap:18px;justify-content:center;margin:18px 0;font-weight:600}
.foot-meta{color:var(--muted);font-size:.85rem;display:flex;flex-direction:column;gap:4px}

/* ---- admin ---- */
.page-admin{background:#0a0014}
.admin-login{display:grid;place-items:center;min-height:100vh}
.login-card{width:min(380px,92vw);text-align:center}
.admin-head{display:flex;align-items:center;gap:16px;padding:14px 22px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.admin-tabs{display:flex;gap:14px;margin-left:auto;font-size:.9rem;font-weight:600}
.admin-tabs a.on{color:#fff;border-bottom:2px solid var(--magenta)}
.logout{margin-left:14px}
.admin-main{max-width:1180px;margin:0 auto;padding:24px 22px}
.review-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}
.sub{padding:0;overflow:hidden}
.sub-media{aspect-ratio:16/10;background:#000;display:grid;place-items:center}
.sub-media video,.sub-media img{width:100%;height:100%;object-fit:contain;background:#000}
.sub-meta{padding:12px 14px 4px}
.sub-meta .by{color:var(--muted)}
.badge{float:right;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;padding:2px 8px;border-radius:999px}
.b-pending{background:rgba(192,38,211,.25)}
.b-approved{background:rgba(40,200,120,.25)}
.b-rejected{background:rgba(120,120,120,.25)}
.small{font-size:.78rem}
.sub-actions{display:flex;gap:8px;flex-wrap:wrap;padding:12px 14px 16px}
.inline{display:inline}
.btn-approve{background:linear-gradient(100deg,#1ca567,#2ee08a);color:#04200f!important}
.btn-reject{background:rgba(255,255,255,.06);border:1px solid var(--line);color:#f3d9ff!important}
.muted{color:var(--muted)}
.empty{padding:40px;text-align:center}

/* ---- accounts / my uploads ---- */
.site-nav .signout{color:var(--muted)}
.auth-wrap h1{font-size:clamp(1.8rem,5vw,2.6rem);margin:.2em 0}
.auth-wrap .upload-form{margin-top:18px}
.signed-as{margin:0 0 12px}
.my-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin-top:8px}
.my-card{display:flex;gap:14px;align-items:center;padding:16px}
.my-thumb .ico{font-size:2rem;display:grid;place-items:center;width:54px;height:54px;border-radius:12px;background:rgba(128,0,255,.18);border:1px solid var(--line)}
.my-meta .badge{float:none;display:inline-block;margin-bottom:6px}
.b-aired{background:linear-gradient(100deg,rgba(48,0,255,.4),rgba(192,38,211,.4))}
.btn-aired{background:linear-gradient(100deg,var(--blue),var(--magenta));color:#fff!important}

/* Social sign-in */
.social-auth{max-width:620px;margin:18px auto 0}
.social-sep{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:.85rem;margin:6px 0 14px;text-transform:uppercase;letter-spacing:.12em}
.social-sep::before,.social-sep::after{content:"";flex:1;height:1px;background:var(--line)}
.btn-social{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;margin:0 0 10px;background:rgba(255,255,255,.04);border:1px solid var(--line);color:#fff!important}
.btn-social:hover{border-color:var(--violet);background:rgba(128,0,255,.12)}
.btn-social .s-ico{width:18px;height:18px;border-radius:4px;flex:0 0 auto;background:var(--grad)}
.btn-social.s-google .s-ico{background:#fff}
.btn-social.s-facebook .s-ico{background:#1877f2}
.btn-social.s-instagram .s-ico{background:radial-gradient(circle at 30% 110%,#fdf497,#fd5949 45%,#d6249f 60%,#285aeb 90%)}

@media(max-width:820px){
  .hero-grid,.about-grid,.weeks,.steps{grid-template-columns:1fr}
  .hero-portrait{order:-1}
  .weeks{grid-template-columns:repeat(2,1fr)}
  .site-nav{gap:12px;font-size:.82rem}
}
