
:root{
  --bg:#030814;
  --bg2:#081326;
  --bg3:#0d1b35;
  --card:rgba(255,255,255,.09);
  --line:rgba(180,225,255,.18);
  --line-strong:rgba(180,225,255,.28);
  --text:#eef8ff;
  --muted:#adc2da;
  --cyan:#7dd3fc;
  --blue:#3b82f6;
  --violet:#2563eb;
  --pink:#7dd3fc;
  --gold:#fbbf24;
  --green:#60a5fa;
  --shadow:0 20px 60px rgba(5,18,40,.35), 0 0 42px rgba(56,189,248,.14);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-height:100vh;font-family:'Plus Jakarta Sans',system-ui,sans-serif;color:var(--text);background:linear-gradient(180deg,#030814 0%,#071327 36%,#08152e 100%);overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}

.sky-layer,.starfield,.nebula,.planet,.rocket-scene,.rocket-fleet{position:fixed;pointer-events:none;z-index:0}
.sky-layer{inset:0;background:radial-gradient(circle at 12% 18%,rgba(59,130,246,.20),transparent 18%),radial-gradient(circle at 80% 10%,rgba(125,211,252,.16),transparent 16%),radial-gradient(circle at 78% 65%,rgba(139,92,246,.18),transparent 22%),linear-gradient(180deg,rgba(6,14,29,.75),rgba(5,13,27,.88));}
.starfield{inset:-20vh 0 0 0;opacity:.95;background-repeat:repeat;will-change:transform,opacity}
.starfield::before,.starfield::after{content:"";position:absolute;inset:0;background-repeat:repeat;pointer-events:none}
.starfield-a{background-image:radial-gradient(circle,rgba(255,255,255,.98) 0 1.4px,transparent 2.2px);background-size:115px 115px;animation:driftA 32s linear infinite}
.starfield-a::before{background-image:radial-gradient(circle,rgba(125,211,252,.95) 0 1.3px,transparent 2px);background-size:170px 170px;animation:twinkleSky 3.4s ease-in-out infinite}
.starfield-a::after{background-image:radial-gradient(circle,rgba(125,211,252,.72) 0 1.1px,transparent 2px);background-size:240px 240px;animation:driftC 50s linear infinite}
.starfield-b{background-image:radial-gradient(circle,rgba(191,219,254,.86) 0 1.2px,transparent 2px);background-size:190px 190px;opacity:.62;animation:driftB 48s linear infinite}
.starfield-b::before{background-image:radial-gradient(circle,rgba(255,255,255,.75) 0 1px,transparent 2px);background-size:80px 80px;animation:twinkleSky 4.8s ease-in-out infinite reverse}
@keyframes driftA{from{transform:translateY(-120px)}to{transform:translateY(180px)}}
@keyframes driftB{from{transform:translateX(0) translateY(-160px)}to{transform:translateX(-120px) translateY(220px)}}
@keyframes driftC{from{transform:translateX(-80px) translateY(80px)}to{transform:translateX(120px) translateY(-180px)}}
@keyframes twinkleSky{0%,100%{opacity:.35;filter:brightness(.8)}50%{opacity:1;filter:brightness(1.45)}}to{transform:translateX(-110px) translateY(220px)}}
.nebula{filter:blur(70px);opacity:.58;border-radius:50%}
.nebula-left{width:340px;height:340px;left:-100px;top:260px;background:radial-gradient(circle,#2dd4bf,transparent 62%)}
.nebula-right{width:380px;height:380px;right:-120px;top:140px;background:radial-gradient(circle,#2563eb,transparent 60%)}
.planet{border-radius:50%;box-shadow:inset -18px -18px 50px rgba(0,0,0,.22),0 0 28px rgba(255,255,255,.08)}
.planet-a{width:120px;height:120px;right:10%;top:22%;background:radial-gradient(circle at 32% 32%,#fef3c7,#fb7185 45%,#7c3aed 90%);opacity:.75}
.planet-b{width:72px;height:72px;left:10%;top:16%;background:radial-gradient(circle at 36% 30%,#dbeafe,#38bdf8 52%,#1d4ed8 95%);opacity:.76}
.rocket-scene{right:3vw;top:18vh;width:220px;height:220px;animation:floatRocket 8s ease-in-out infinite}
.rocket-trail{position:absolute;right:92px;top:104px;width:110px;height:12px;border-radius:999px;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(125,211,252,.65));filter:blur(2px)}
.rocket-body{position:absolute;right:22px;top:56px;width:90px;height:120px;border-radius:52px 52px 34px 34px;background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(196,234,255,.9) 35%,rgba(91,163,255,.88) 70%,rgba(44,92,210,.92));transform:rotate(35deg);box-shadow:0 20px 40px rgba(59,130,246,.25),0 0 28px rgba(255,255,255,.12)}
.rocket-window{position:absolute;width:24px;height:24px;border-radius:50%;left:33px;top:28px;background:radial-gradient(circle at 35% 35%,#eff6ff,#38bdf8 65%,#1d4ed8);border:3px solid rgba(255,255,255,.7)}
.rocket-fin{position:absolute;bottom:14px;width:22px;height:32px;background:linear-gradient(180deg,#fb7185,#ef4444);border-radius:12px}
.fin-left{left:-12px;transform:skewY(18deg) rotate(-18deg)}
.fin-right{right:-10px;transform:skewY(-18deg) rotate(16deg)}
.rocket-flame{position:absolute;left:32px;bottom:-18px;width:20px;height:30px;border-radius:50% 50% 70% 70%;background:linear-gradient(180deg,#fde68a,#fb923c,#ef4444);filter:blur(.2px)}
.flame-a{transform:rotate(8deg);animation:flame .7s ease-in-out infinite}
.flame-b{left:40px;width:14px;height:24px;background:linear-gradient(180deg,#fff7ed,#facc15,#fb7185);animation:flame .55s ease-in-out infinite reverse}
.sparkles span{position:absolute;width:8px;height:8px;border-radius:50%;background:#e0f2fe;box-shadow:0 0 16px rgba(255,255,255,.9)}
.sparkles span:nth-child(1){top:42px;left:40px;animation:twinkle 2.2s infinite}
.sparkles span:nth-child(2){top:26px;right:28px;animation:twinkle 1.8s infinite .3s}
.sparkles span:nth-child(3){top:130px;left:12px;animation:twinkle 2.5s infinite .5s}
.sparkles span:nth-child(4){bottom:26px;right:72px;animation:twinkle 1.9s infinite .8s}
.sparkles span:nth-child(5){bottom:20px;left:74px;animation:twinkle 2.1s infinite .2s}
.sparkles span:nth-child(6){top:88px;right:4px;animation:twinkle 1.5s infinite .4s}
@keyframes floatRocket{50%{transform:translateY(-14px) translateX(-8px) rotate(-2deg)}}
@keyframes flame{50%{transform:scaleY(1.16) translateY(2px)}}
@keyframes twinkle{50%{opacity:.25;transform:scale(.55)}}

.wrap{position:relative;z-index:2;width:min(1180px,calc(100% - 26px));margin:0 auto;padding-bottom:36px}
.glass{background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.055));border:1px solid var(--line);backdrop-filter:blur(18px) saturate(140%);box-shadow:var(--shadow)}
.soft-card{padding:28px}
.nav{position:sticky;top:12px;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-radius:28px;margin-top:14px}
.brand{display:flex;align-items:center;gap:12px;font-weight:800;font-size:1.08rem}
.brand img{width:50px;height:50px;object-fit:cover;border-radius:16px;border:1px solid var(--line-strong)}
.links{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.links a{padding:10px 14px;border-radius:999px;color:var(--muted);transition:.22s;background:rgba(255,255,255,.02)}
.links a:hover,.links .admin{color:#fff;background:rgba(125,211,252,.12)}

.hero{min-height:88vh;display:grid;grid-template-columns:1.3fr .9fr;gap:22px;align-items:center;padding:52px 0 28px}
.pill{display:inline-flex;gap:10px;align-items:center;padding:10px 14px;border-radius:999px;background:rgba(125,211,252,.10);border:1px solid rgba(125,211,252,.18);color:#dff7ff;font-size:.92rem;margin-bottom:18px}
.hero h1{margin:0 0 12px;font-size:clamp(2.4rem,6vw,4.7rem);line-height:1.03;letter-spacing:-.03em}
.grad{background:linear-gradient(90deg,#fff,#93c5fd 35%,#67e8f9 65%,#e9d5ff);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 18px rgba(125,211,252,.26)}
.lead{margin:0;color:var(--muted);font-size:1.04rem;line-height:1.85;max-width:720px}
.lead b{display:block;color:var(--text);font-size:1.12rem;margin-bottom:6px}
.cta{display:flex;gap:14px;flex-wrap:wrap;margin:24px 0}
.btn{display:inline-flex;align-items:center;gap:10px;padding:13px 18px;border-radius:16px;font-weight:800;border:1px solid transparent;transition:.22s}
.btn.primary{background:linear-gradient(135deg,#38bdf8,#2563eb);color:white;box-shadow:0 12px 34px rgba(37,99,235,.3)}
.btn.secondary{background:rgba(255,255,255,.06);border-color:var(--line);color:#fff}
.btn:hover{transform:translateY(-2px)}
.terminal{padding:16px 18px;border-radius:22px;max-width:520px}
.terminal p{margin:0;color:#d8ecff;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;line-height:1.8;font-size:.93rem}
.hero-card{padding:24px;border-radius:34px;position:relative;overflow:hidden;min-height:320px;display:flex;flex-direction:column;justify-content:space-between}
.hero-card::before{content:"";position:absolute;inset:auto -20% -24% auto;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(59,130,246,.34),transparent 62%);filter:blur(10px)}
.hero-card-top{display:flex;gap:16px;align-items:center}
.avatarBox{width:96px;height:96px;border-radius:28px;overflow:hidden;border:1px solid var(--line-strong);background:rgba(255,255,255,.08)}
.avatarBox img{width:100%;height:100%;object-fit:cover}
.hero-card h2{margin:0 0 6px;font-size:2rem}
.hero-card p{margin:0;color:var(--muted)}
.scan{margin-top:22px;display:inline-flex;align-items:center;gap:10px;padding:12px 16px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);font-weight:800;letter-spacing:.08em;font-size:.82rem;text-transform:uppercase}
.mini-orbit{position:absolute;right:16px;bottom:16px;width:180px;height:180px;opacity:.65}
.mini-orbit::before,.mini-orbit::after,.mini-orbit span{content:"";position:absolute;inset:0;border:1px solid rgba(147,197,253,.18);border-radius:50%}
.mini-orbit::after{inset:18px}
.mini-orbit span{inset:42px}

.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:10px 0 42px}
.stat{padding:18px 16px;border-radius:24px;text-align:center}
.stat b{display:block;font-size:1.65rem;margin-bottom:6px}
.stat small{display:block;color:#fff;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.stat span{display:block;color:var(--muted);font-size:.9rem;margin-top:8px}

.section{padding:24px 0 14px}
.section-head{margin-bottom:20px}
.section-head span{display:inline-block;padding:8px 12px;border-radius:999px;border:1px solid rgba(125,211,252,.2);background:rgba(125,211,252,.08);text-transform:uppercase;letter-spacing:.28em;font-size:.73rem;color:#d6f6ff}
.section-head h2{margin:14px 0 8px;font-size:clamp(2rem,4vw,3.2rem);letter-spacing:-.03em}
.section-head p{max-width:700px;color:var(--muted);margin:0;line-height:1.8}

.about-grid,.projects,.ecosystem-grid,.highlight-row,.socials,.team-grid{display:grid;gap:18px}
.about-grid{grid-template-columns:repeat(3,1fr)}
.story-card,.eco-panel,.highlight-card,.purpose,.quote,.project{border-radius:28px;padding:22px;position:relative;overflow:hidden}
.story-card i,.highlight-card i{width:58px;height:58px;display:grid;place-items:center;border-radius:20px;background:rgba(125,211,252,.1);border:1px solid rgba(125,211,252,.18);font-size:1.45rem;color:#c4f1ff;margin-bottom:16px}
.story-card h3,.highlight-card h3{margin:0 0 10px;font-size:1.4rem}
.story-card p,.highlight-card p,.purpose p,.quote{color:var(--muted);line-height:1.82}

.timeline{position:relative;display:grid;gap:18px;padding-left:22px}
.timeline::before{content:"";position:absolute;left:8px;top:8px;bottom:8px;width:2px;background:linear-gradient(180deg,rgba(125,211,252,.36),rgba(139,92,246,.18))}
.time-item{padding:18px 20px 18px 24px;border-radius:22px;background:rgba(255,255,255,.06);border:1px solid var(--line);position:relative;box-shadow:var(--shadow)}
.time-item::before{content:"";position:absolute;left:-22px;top:26px;width:14px;height:14px;border-radius:50%;background:#7dd3fc;box-shadow:0 0 18px rgba(125,211,252,.45)}
.time-item b{font-size:.78rem;letter-spacing:.25em;text-transform:uppercase;color:#d5f3ff}
.time-item h3{margin:8px 0 6px;font-size:1.25rem}.time-item p{margin:0;color:var(--muted);line-height:1.75}

.projects{grid-template-columns:repeat(3,1fr)}
.project{min-height:250px;display:flex;flex-direction:column;gap:12px}
.project::after{content:"";position:absolute;inset:auto -10% -25% auto;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(59,130,246,.22),transparent 60%)}
.project-top{display:flex;justify-content:space-between;align-items:center;gap:12px}
.project-icon{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);font-size:1.3rem}
.project .tag{font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;color:#d4efff;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1)}
.project h3{margin:0;font-size:1.42rem}
.project p{margin:0;color:var(--muted);line-height:1.8;flex:1}
.project a{display:inline-flex;align-items:center;gap:10px;margin-top:6px;font-weight:800;color:#e3f7ff}
.project.cyan .project-icon{box-shadow:0 0 18px rgba(125,211,252,.26)}
.project.violet .project-icon{box-shadow:0 0 18px rgba(147,197,253,.26)}
.project.green .project-icon{box-shadow:0 0 18px rgba(96,165,250,.26)}

.ecosystem-grid{grid-template-columns:repeat(2,1fr)}
.full-row{grid-column:1/-1}
.eco-panel{padding:22px}
.eco-title{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.eco-title i{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);color:#ddf7ff}
.eco-title h3{margin:0;font-size:1.3rem}
.entity-list{display:grid;gap:12px}
.entity-item{padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}
.entity-item strong{display:block;font-size:1rem;margin-bottom:4px}
.entity-item small{display:block;color:#dff4ff;font-weight:700;margin-bottom:6px;opacity:.88}
.entity-item p{margin:0;color:var(--muted);line-height:1.72;font-size:.94rem}
.team-grid{grid-template-columns:repeat(3,1fr);margin-top:4px}
.team-card{padding:18px;border-radius:22px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09)}
.team-card .team-top{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.team-avatar{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(125,211,252,.18),rgba(139,92,246,.14));border:1px solid rgba(125,211,252,.18);font-size:1.1rem}
.team-card h4{margin:0;font-size:1.04rem}.team-card small{color:#dff4ff;display:block;font-weight:700;margin-top:4px}.team-card p{margin:10px 0 0;color:var(--muted);line-height:1.7;font-size:.93rem}

.skills{display:flex;flex-wrap:wrap;gap:12px}
.skills span,.social{display:inline-flex;align-items:center;gap:10px;padding:13px 16px;border-radius:18px;background:rgba(255,255,255,.07);border:1px solid var(--line);box-shadow:var(--shadow)}
.skills span{font-weight:700}
.socials{grid-template-columns:repeat(3,1fr)}
.social{font-weight:700;min-height:62px}
.social i{font-size:1.2rem;color:#c7f1ff}
.highlight-row{grid-template-columns:repeat(3,1fr)}
.purpose{line-height:1.86}.purpose p{margin:0 0 12px}.purpose p:last-child{margin-bottom:0}
.quote{font-size:1.05rem}
.quote footer{margin-top:14px;color:#e4f5ff;font-weight:800}

.footer{margin-top:18px;border-radius:28px;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#d7ecff}
.foot-note{color:var(--muted);font-size:.95rem}

.warn{position:fixed;right:12px;bottom:12px;z-index:45;padding:12px 14px;border-radius:14px;background:rgba(15,23,42,.85);border:1px solid rgba(125,211,252,.28);box-shadow:0 0 30px rgba(125,211,252,.18);font-weight:800;letter-spacing:.08em;transform:translateY(120px);transition:.25s;font-size:.84rem}
.warn.show{transform:translateY(0)}
.scroll-hint{position:fixed;right:18px;bottom:20px;z-index:15;width:50px;height:50px;border:none;border-radius:50%;background:linear-gradient(135deg,#0ea5e9,#2563eb);color:white;box-shadow:0 14px 34px rgba(37,99,235,.3);cursor:pointer}

.reveal{opacity:0;transform:translateY(26px) scale(.985);transition:opacity .7s ease,transform .7s ease}
.reveal[data-reveal="left"]{transform:translateX(-26px);}
.reveal[data-reveal="right"]{transform:translateX(26px);}
.reveal[data-reveal="zoom"]{transform:scale(.94);}
.reveal.show{opacity:1;transform:none}

.admin-page{position:relative;z-index:2;width:min(1080px,calc(100% - 24px));margin:24px auto;padding-bottom:36px}
.panel{padding:22px;border-radius:28px;margin-bottom:18px}.panel h1{margin:0 0 8px;font-size:clamp(2rem,5vw,3rem)}
.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.full{grid-column:1/-1}
.field label{display:block;margin-bottom:8px;color:#e6f6ff;font-weight:800}.input,.textarea{width:100%;padding:14px 16px;border-radius:18px;border:1px solid var(--line);background:rgba(255,255,255,.06);color:#fff;font:inherit}.textarea{min-height:110px;resize:vertical}.input:focus,.textarea:focus{outline:none;border-color:#7dd3fc;box-shadow:0 0 0 3px rgba(125,211,252,.12)}
.panel-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.btn.ok{background:linear-gradient(135deg,#10b981,#059669);color:white}.btn.danger{background:linear-gradient(135deg,#f43f5e,#e11d48);color:white}

@media (max-width: 1100px){
  .hero{grid-template-columns:1fr}
  .projects,.about-grid,.highlight-row,.socials,.ecosystem-grid,.team-grid,.stats{grid-template-columns:repeat(2,1fr)}
  .rocket-scene{right:-4vw;top:20vh;transform:scale(.86)}
}
@media (max-width: 760px){
  .wrap{width:min(100% - 18px,1000px)}
  .nav{padding:10px 12px;gap:10px;flex-direction:column;align-items:stretch}
  .brand{justify-content:center}
  .links{justify-content:center}
  .soft-card,.hero-card,.story-card,.project,.eco-panel,.highlight-card,.purpose,.footer,.panel{padding:18px}
  .hero{min-height:auto;padding:28px 0 18px}
  .stats,.projects,.about-grid,.highlight-row,.socials,.ecosystem-grid,.team-grid,.form-grid{grid-template-columns:1fr}
  .hero h1{font-size:2.5rem}
  .hero-card-top{align-items:flex-start}
  .terminal{max-width:none}
  .footer{flex-direction:column;align-items:flex-start}
  .rocket-scene{width:154px;height:154px;top:88px;right:-18px;opacity:.8}
  .planet-a{width:82px;height:82px;right:6%;top:17%}
  .planet-b{width:56px;height:56px;left:4%;top:12%}
}
@media (max-width: 520px){
  .links a{padding:8px 12px;font-size:.92rem}
  .brand img{width:44px;height:44px}
  .pill{font-size:.84rem}
  .lead{font-size:.98rem}
  .section-head h2{font-size:2rem}
  .quote{font-size:1rem}
  .rocket-scene{display:none}
}


/* RESTORE: animated portfolio core avatar frame */
.hero-card-top{
  position: relative;
  z-index: 2;
}
.avatarBox{
  position: relative;
  overflow: visible !important;
  isolation: isolate;
  animation: avatarFloat 4.8s ease-in-out infinite;
}
.avatarBox img{
  border-radius: 28px;
  position: relative;
  z-index: 3;
  box-shadow: 0 0 0 1px rgba(255,255,255,.18), 0 18px 42px rgba(56,189,248,.20);
}
.avatarBox::before,
.avatarBox::after{
  content:"";
  position:absolute;
  inset:-9px;
  border-radius:32px;
  pointer-events:none;
}
.avatarBox::before{
  z-index:1;
  background:
    linear-gradient(90deg, rgba(125,211,252,.0), rgba(125,211,252,.75), rgba(139,92,246,.0)) top left/70% 2px no-repeat,
    linear-gradient(180deg, rgba(125,211,252,.0), rgba(147,197,253,.72), rgba(125,211,252,.0)) top right/2px 72% no-repeat,
    linear-gradient(90deg, rgba(139,92,246,.0), rgba(56,189,248,.66), rgba(125,211,252,.0)) bottom right/70% 2px no-repeat,
    linear-gradient(180deg, rgba(56,189,248,.0), rgba(125,211,252,.72), rgba(125,211,252,.0)) bottom left/2px 72% no-repeat;
  filter: drop-shadow(0 0 14px rgba(125,211,252,.35));
  animation: borderOrbit 4s linear infinite;
}
.avatarBox::after{
  z-index:0;
  inset:-18px;
  background: radial-gradient(circle, rgba(125,211,252,.20), rgba(139,92,246,.10) 42%, transparent 68%);
  filter: blur(7px);
  animation: pulseFrame 2.8s ease-in-out infinite;
}
.hero-card .avatarBox + div{
  position: relative;
}
.hero-card .avatarBox + div::after{
  content:"";
  display:block;
  width:120px;
  height:1px;
  margin-top:12px;
  background:linear-gradient(90deg, rgba(125,211,252,.9), rgba(139,92,246,.15), transparent);
  box-shadow:0 0 16px rgba(125,211,252,.45);
  animation: scanLine 2.4s ease-in-out infinite;
}
@keyframes avatarFloat{
  0%,100%{transform:translateY(0) rotate(0)}
  50%{transform:translateY(-7px) rotate(.8deg)}
}
@keyframes borderOrbit{
  0%{transform:rotate(0deg) scale(1)}
  50%{transform:rotate(180deg) scale(1.045)}
  100%{transform:rotate(360deg) scale(1)}
}
@keyframes pulseFrame{
  0%,100%{opacity:.45; transform:scale(.95)}
  50%{opacity:.85; transform:scale(1.06)}
}
@keyframes scanLine{
  0%,100%{opacity:.35; transform:translateX(0)}
  50%{opacity:1; transform:translateX(12px)}
}

.project.pink .project-icon{box-shadow:0 0 18px rgba(125,211,252,.30)}


/* Personal + music update */
.intro-bubble{
  margin-top:18px;
  padding:14px 16px;
  border-radius:22px;
  display:grid;
  gap:6px;
  max-width:560px;
}
.intro-bubble b{font-size:1.02rem;color:#fff}
.intro-bubble span{color:var(--muted);line-height:1.65;font-size:.92rem}

.interest-grid,.watch-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.interest-card,.watch-card{
  border-radius:26px;
  padding:20px;
  background:linear-gradient(180deg,rgba(255,255,255,.11),rgba(255,255,255,.05));
  border:1px solid var(--line);
  backdrop-filter:blur(18px) saturate(140%);
  box-shadow:var(--shadow);
  position:relative;
  overflow:hidden;
}
.interest-card::after,.watch-card::after{
  content:"";
  position:absolute;
  right:-44px;
  bottom:-44px;
  width:130px;
  height:130px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(125,211,252,.18),transparent 66%);
}
.interest-card i{
  width:54px;height:54px;
  border-radius:18px;
  display:grid;place-items:center;
  background:rgba(125,211,252,.10);
  border:1px solid rgba(125,211,252,.18);
  color:#d6f7ff;
  font-size:1.35rem;
  margin-bottom:14px;
}
.interest-card h3,.watch-card h3{margin:0 0 8px;font-size:1.22rem}
.interest-card p,.watch-card p{margin:0;color:var(--muted);line-height:1.72;font-size:.94rem}
.watch-card .status{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.10);
  color:#e6f7ff;
  font-weight:800;
  font-size:.76rem;
  margin-bottom:12px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.music-room{
  border-radius:34px;
  padding:22px;
  display:grid;
  grid-template-columns:260px 1fr;
  gap:24px;
  align-items:center;
}
.music-cover{
  position:relative;
  width:100%;
  aspect-ratio:1/1;
  border-radius:32px;
  overflow:hidden;
  border:1px solid var(--line-strong);
  box-shadow:0 20px 60px rgba(37,99,235,.18);
}
.music-cover img{
  width:100%;
  height:100%;
  object-fit:cover;
  filter:saturate(1.12) contrast(1.05);
}
.music-cover::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(125,211,252,.16),rgba(139,92,246,.22),rgba(125,211,252,.12));
  mix-blend-mode:screen;
}
.disc{
  position:absolute;
  right:-34px;
  bottom:-34px;
  width:112px;
  height:112px;
  border-radius:50%;
  background:
    radial-gradient(circle at center,#050816 0 12px,rgba(255,255,255,.9) 13px 15px,transparent 16px),
    conic-gradient(from 0deg,rgba(125,211,252,.9),rgba(139,92,246,.8),rgba(125,211,252,.75),rgba(125,211,252,.9));
  opacity:.85;
  animation:spinDisc 5s linear infinite;
}
.music-kicker{
  display:inline-block;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(125,211,252,.09);
  border:1px solid rgba(125,211,252,.18);
  color:#dff7ff;
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:.72rem;
  font-weight:900;
}
.music-info-box h3{font-size:clamp(1.7rem,4vw,2.8rem);margin:14px 0 8px}
.music-info-box p{margin:0;color:var(--muted);line-height:1.7}
.music-controls{
  display:flex;
  align-items:center;
  gap:12px;
  margin:20px 0 14px;
}
.music-btn{
  width:48px;height:48px;
  border-radius:18px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.08);
  color:#fff;
  cursor:pointer;
  font-size:1rem;
}
.music-btn.main{
  width:62px;height:62px;
  border-radius:22px;
  background:linear-gradient(135deg,#38bdf8,#2563eb);
  box-shadow:0 15px 36px rgba(37,99,235,.32);
}
.music-progress{
  height:8px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.08);
}
.music-progress span{
  display:block;
  width:0%;
  height:100%;
  background:linear-gradient(90deg,#7dd3fc,#2563eb,#7dd3fc);
  transition:.2s;
}
.track-list{
  display:grid;
  gap:10px;
  margin-top:16px;
}
.track-item{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:12px 14px;
  border-radius:18px;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.08);
  cursor:pointer;
}
.track-item.active{
  background:rgba(125,211,252,.12);
  border-color:rgba(125,211,252,.28);
}
.track-item b{display:block;font-size:.95rem}
.track-item small{display:block;color:var(--muted);font-size:.8rem;margin-top:2px}
@keyframes spinDisc{to{transform:rotate(360deg)}}

@media(max-width: 980px){
  .interest-grid,.watch-grid{grid-template-columns:repeat(2,1fr)}
  .music-room{grid-template-columns:1fr}
  .music-cover{max-width:320px;margin:auto}
}
@media(max-width: 640px){
  .interest-grid,.watch-grid{grid-template-columns:1fr}
  .music-room{padding:18px;border-radius:28px}
  .music-controls{justify-content:center}
  .track-item{align-items:flex-start}
}

/* final moving stars + mini rocket + album controls */
.starfield{transform:translateZ(0)}
.starfield::before,.starfield::after{content:"";position:absolute;inset:0;background-repeat:repeat;pointer-events:none}
.starfield-a::before{background-image:radial-gradient(circle,rgba(255,255,255,.95) 0 1.5px,transparent 2px);background-size:180px 180px;animation:twinkleSky 5.8s ease-in-out infinite}
.starfield-a::after{background-image:radial-gradient(circle,rgba(191,219,254,.85) 0 1px,transparent 2px);background-size:260px 260px;animation:driftC 88s linear infinite}
.starfield-b::before{background-image:radial-gradient(circle,rgba(125,211,252,.55) 0 1.1px,transparent 2px);background-size:300px 300px;animation:twinkleSky 7.2s ease-in-out infinite reverse}
.starfield-b::after{background-image:radial-gradient(circle,rgba(125,211,252,.45) 0 1px,transparent 2px);background-size:120px 120px;opacity:.35;animation:driftA 40s linear infinite reverse}
@keyframes driftC{from{transform:translateX(0) translateY(0)}to{transform:translateX(90px) translateY(-140px)}}
@keyframes twinkleSky{0%,100%{opacity:.38;filter:brightness(.9)}50%{opacity:1;filter:brightness(1.25)}}
.rocket-fleet{inset:0;overflow:hidden}
.mini-rocket{position:absolute;width:120px;height:48px;opacity:.72;filter:drop-shadow(0 0 16px rgba(125,211,252,.28))}
.mini-rocket .body{position:absolute;right:0;top:12px;width:38px;height:18px;border-radius:18px 18px 18px 4px;background:linear-gradient(90deg,#dbeafe,#7dd3fc 48%,#2563eb);transform:rotate(-18deg)}
.mini-rocket .body::before{content:"";position:absolute;left:7px;top:4px;width:8px;height:8px;border-radius:50%;background:#eff6ff;box-shadow:0 0 0 2px rgba(14,165,233,.35)}
.mini-rocket .body::after{content:"";position:absolute;right:-5px;top:6px;border-left:10px solid #f43f5e;border-top:6px solid transparent;border-bottom:6px solid transparent}
.mini-rocket .trail{position:absolute;left:0;top:20px;width:92px;height:8px;border-radius:999px;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(125,211,252,.85),rgba(125,211,252,0));filter:blur(2px)}
.route-a{left:-14vw;top:18vh;animation:rocketSweepA 22s linear infinite}.route-b{left:-20vw;top:54vh;animation:rocketSweepB 28s linear infinite 5s;opacity:.62}.route-c{left:-18vw;top:78vh;animation:rocketSweepC 32s linear infinite 11s;opacity:.54}
@keyframes rocketSweepA{0%{transform:translate(-16vw,0) rotate(6deg)}100%{transform:translate(138vw,-18vh) rotate(6deg)}}
@keyframes rocketSweepB{0%{transform:translate(-12vw,0) rotate(-8deg)}100%{transform:translate(136vw,-32vh) rotate(-8deg)}}
@keyframes rocketSweepC{0%{transform:translate(-12vw,0) rotate(3deg)}100%{transform:translate(138vw,-8vh) rotate(3deg)}}
.ambient-status{position:absolute;left:16px;bottom:16px;z-index:2;padding:8px 12px;border-radius:999px;background:rgba(3,8,20,.55);border:1px solid rgba(255,255,255,.12);color:#ecfeff;font-size:.76rem;font-weight:800;backdrop-filter:blur(12px)}
.music-tools{display:grid;gap:12px;margin-top:16px}.album-filter-wrap{display:flex;flex-wrap:wrap;gap:10px}.album-chip{padding:10px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.05);color:#eaf6ff;font-weight:800;font-size:.83rem;cursor:pointer}.album-chip.active{background:linear-gradient(135deg,rgba(56,189,248,.25),rgba(139,92,246,.24));border-color:rgba(125,211,252,.35)}.track-search-box{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:18px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);color:var(--muted)}.track-search-box input{flex:1;background:transparent;border:none;outline:none;color:#fff;font:inherit}.track-search-box input::placeholder{color:#9bb0c7}.track-empty{padding:16px 18px;border-radius:18px;border:1px dashed rgba(255,255,255,.12);background:rgba(255,255,255,.03);color:var(--muted)}.track-item .track-meta{display:flex;flex-direction:column;gap:3px}
@media(max-width:640px){.route-b,.route-c{display:none}}

.track-album-label{margin:16px 2px 4px;padding:8px 12px;border-left:3px solid rgba(125,211,252,.8);color:#dff7ff;font-weight:900;letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;background:linear-gradient(90deg,rgba(125,211,252,.09),transparent);border-radius:10px}

/* final cool-blue theme: reduce green/purple blobs */
body::before{
  background:
    radial-gradient(circle at 12% 18%, rgba(56,189,248,.18), transparent 30%),
    radial-gradient(circle at 82% 12%, rgba(59,130,246,.16), transparent 32%),
    radial-gradient(circle at 50% 110%, rgba(14,165,233,.14), transparent 38%) !important;
}
.hero-card,.glass,.music-room,.topbar{
  background:linear-gradient(145deg,rgba(8,20,42,.66),rgba(15,23,42,.48)) !important;
  border-color:rgba(147,197,253,.20) !important;
}

/* slider-style album filter button */
.music-filter-row{
  position:relative;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:12px;
  align-items:center;
  margin-top:16px;
}
.filter-icon-btn{
  width:54px;
  height:54px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.04));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 14px 36px rgba(2,6,23,.22);
  cursor:pointer;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:7px;
  padding:0 12px;
}
.filter-icon-btn span{
  position:relative;
  display:block;
  height:4px;
  border-radius:999px;
  background:#eaf6ff;
  opacity:.95;
}
.filter-icon-btn span::after{
  content:"";
  position:absolute;
  top:50%;
  width:10px;
  height:10px;
  border-radius:50%;
  background:#eaf6ff;
  border:2px solid rgba(8,20,42,.88);
  transform:translateY(-50%);
}
.filter-icon-btn span:nth-child(1)::after{left:7px}
.filter-icon-btn span:nth-child(2)::after{right:6px}
.filter-icon-btn span:nth-child(3)::after{left:18px}
.filter-icon-btn.active{
  border-color:rgba(125,211,252,.45);
  box-shadow:0 0 0 1px rgba(125,211,252,.14),0 18px 45px rgba(14,165,233,.18);
}
.album-dropdown{
  position:absolute;
  left:0;
  top:62px;
  min-width:220px;
  z-index:30;
  display:none;
  padding:10px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(8,20,42,.92);
  backdrop-filter:blur(22px);
  box-shadow:0 22px 60px rgba(2,6,23,.45);
}
.album-dropdown.open{display:grid;gap:8px;animation:dropSoft .18s ease both}
.album-option{
  width:100%;
  text-align:left;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.05);
  color:#eaf6ff;
  font-weight:850;
  cursor:pointer;
}
.album-option.active{
  background:linear-gradient(135deg,rgba(56,189,248,.22),rgba(37,99,235,.18));
  border-color:rgba(125,211,252,.35);
}
.track-search-box{
  margin:0 !important;
}
.track-album-label{
  margin:16px 2px 4px;
  padding:8px 12px;
  border-left:3px solid rgba(125,211,252,.8);
  color:#dff7ff;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-size:.72rem;
  background:linear-gradient(90deg,rgba(125,211,252,.09),transparent);
  border-radius:10px;
}
@keyframes dropSoft{
  from{opacity:0;transform:translateY(-8px) scale(.97)}
  to{opacity:1;transform:translateY(0) scale(1)}
}
@media(max-width:560px){
  .music-filter-row{grid-template-columns:auto 1fr}
  .filter-icon-btn{width:50px;height:50px;border-radius:16px}
  .album-dropdown{left:0;right:auto;max-width:78vw}
}


/* FINAL FIX 7: music filter button + cleaner blue theme */
body::before{
  background:
    radial-gradient(circle at 12% 18%, rgba(56,189,248,.16), transparent 30%),
    radial-gradient(circle at 82% 12%, rgba(59,130,246,.14), transparent 32%),
    radial-gradient(circle at 50% 110%, rgba(14,165,233,.12), transparent 38%) !important;
}
.hero-card,.glass,.music-room,.topbar{
  background:linear-gradient(145deg,rgba(8,20,42,.66),rgba(15,23,42,.48)) !important;
  border-color:rgba(147,197,253,.20) !important;
}
.music-filter-row{
  position:relative;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:12px;
  align-items:center;
  margin-top:16px;
}
.filter-icon-btn{
  width:54px;
  height:54px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.04));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 14px 36px rgba(2,6,23,.22);
  cursor:pointer;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:7px;
  padding:0 12px;
}
.filter-icon-btn span{
  position:relative;
  display:block;
  height:4px;
  border-radius:999px;
  background:#eaf6ff;
  opacity:.95;
}
.filter-icon-btn span::after{
  content:"";
  position:absolute;
  top:50%;
  width:10px;
  height:10px;
  border-radius:50%;
  background:#eaf6ff;
  border:2px solid rgba(8,20,42,.88);
  transform:translateY(-50%);
}
.filter-icon-btn span:nth-child(1)::after{left:7px}
.filter-icon-btn span:nth-child(2)::after{right:6px}
.filter-icon-btn span:nth-child(3)::after{left:18px}
.filter-icon-btn.active{
  border-color:rgba(125,211,252,.45);
  box-shadow:0 0 0 1px rgba(125,211,252,.14),0 18px 45px rgba(14,165,233,.18);
}
.album-dropdown{
  position:absolute;
  left:0;
  top:62px;
  min-width:220px;
  z-index:30;
  display:none;
  padding:10px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(8,20,42,.94);
  backdrop-filter:blur(22px);
  box-shadow:0 22px 60px rgba(2,6,23,.45);
}
.album-dropdown.open{display:grid;gap:8px;animation:dropSoft .18s ease both}
.album-option{
  width:100%;
  text-align:left;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.05);
  color:#eaf6ff;
  font-weight:850;
  cursor:pointer;
}
.album-option.active{
  background:linear-gradient(135deg,rgba(56,189,248,.22),rgba(37,99,235,.18));
  border-color:rgba(125,211,252,.35);
}
.track-search-box{margin:0 !important;}
.track-search-box input{min-width:0;}
.track-album-label{
  margin:16px 2px 4px;
  padding:8px 12px;
  border-left:3px solid rgba(125,211,252,.8);
  color:#dff7ff;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-size:.72rem;
  background:linear-gradient(90deg,rgba(125,211,252,.09),transparent);
  border-radius:10px;
}
.track-empty{
  padding:16px 18px;
  border-radius:18px;
  border:1px dashed rgba(255,255,255,.12);
  background:rgba(255,255,255,.03);
  color:var(--muted);
}
@keyframes dropSoft{
  from{opacity:0;transform:translateY(-8px) scale(.97)}
  to{opacity:1;transform:translateY(0) scale(1)}
}

/* make small rockets and stars more visible */
.rocket-fleet{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:1}
.mini-rocket{position:fixed;width:120px;height:48px;opacity:.92;filter:drop-shadow(0 0 18px rgba(125,211,252,.45));pointer-events:none}
.mini-rocket .body{position:absolute;right:0;top:12px;width:42px;height:20px;border-radius:18px 18px 18px 5px;background:linear-gradient(90deg,#e0f2fe,#7dd3fc 48%,#2563eb);transform:rotate(-18deg)}
.mini-rocket .body::before{content:"";position:absolute;left:7px;top:5px;width:8px;height:8px;border-radius:50%;background:#eff6ff;box-shadow:0 0 0 2px rgba(14,165,233,.35)}
.mini-rocket .body::after{content:"";position:absolute;right:-6px;top:6px;border-left:11px solid #fb7185;border-top:7px solid transparent;border-bottom:7px solid transparent}
.mini-rocket .trail{position:absolute;left:0;top:20px;width:96px;height:8px;border-radius:999px;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(125,211,252,.9),rgba(125,211,252,0));filter:blur(2px)}
.route-a{left:-18vw;top:20vh;animation:rocketSweepA 18s linear infinite}
.route-b{left:-24vw;top:58vh;animation:rocketSweepB 25s linear infinite 4s;opacity:.7}
.route-c{left:-18vw;top:82vh;animation:rocketSweepC 30s linear infinite 9s;opacity:.58}
@keyframes rocketSweepA{0%{transform:translate(-18vw,0) rotate(6deg)}100%{transform:translate(140vw,-22vh) rotate(6deg)}}
@keyframes rocketSweepB{0%{transform:translate(-20vw,0) rotate(-8deg)}100%{transform:translate(142vw,-34vh) rotate(-8deg)}}
@keyframes rocketSweepC{0%{transform:translate(-18vw,0) rotate(3deg)}100%{transform:translate(140vw,-12vh) rotate(3deg)}}
@media(max-width:560px){
  .music-filter-row{grid-template-columns:auto 1fr}
  .filter-icon-btn{width:50px;height:50px;border-radius:16px}
  .album-dropdown{left:0;max-width:78vw}
}


/* FINAL 8: official email contact card */
.email-contact-section{position:relative;z-index:3;margin:34px auto 18px;max-width:980px}
.email-orbit-card{position:relative;overflow:hidden;display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:center;padding:24px;border-radius:34px;isolation:isolate}
.email-orbit-card::before{content:"";position:absolute;inset:1px;border-radius:inherit;background:linear-gradient(135deg,rgba(125,211,252,.18),transparent 35%,rgba(96,165,250,.13)),radial-gradient(circle at 10% 20%,rgba(56,189,248,.18),transparent 28%),radial-gradient(circle at 86% 72%,rgba(147,197,253,.16),transparent 30%);z-index:-2}
.email-orbit-card::after{content:"";position:absolute;width:240px;height:240px;right:-90px;top:-105px;border-radius:50%;border:1px solid rgba(191,219,254,.22);box-shadow:0 0 90px rgba(56,189,248,.22),inset 0 0 65px rgba(255,255,255,.06);animation:emailOrbit 8s linear infinite;z-index:-1}
.email-aura{position:absolute;inset:auto -20% -55% 15%;height:160px;background:radial-gradient(circle,rgba(56,189,248,.2),transparent 66%);filter:blur(18px);pointer-events:none}
.email-icon{width:86px;height:86px;border-radius:26px;display:grid;place-items:center;color:#e0f2fe;background:linear-gradient(145deg,rgba(14,165,233,.22),rgba(37,99,235,.18));border:1px solid rgba(191,219,254,.22);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 22px 60px rgba(2,6,23,.28);font-size:2rem}
.email-copy h2{margin:5px 0 8px;font-size:clamp(1.55rem,4.7vw,2.45rem);letter-spacing:-.04em}
.email-copy p{margin:0;max-width:620px;color:var(--muted);line-height:1.65}
.email-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.email-pill{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;padding:0 17px;font-weight:900;text-decoration:none;border:1px solid rgba(255,255,255,.12);transition:transform .18s ease,border-color .18s ease,background .18s ease}
.email-pill:hover{transform:translateY(-2px);border-color:rgba(125,211,252,.36)}
.email-pill.primary{color:#04111f;background:linear-gradient(135deg,#dff7ff,#7dd3fc 52%,#60a5fa);box-shadow:0 16px 48px rgba(14,165,233,.2)}
.email-pill.ghost{color:#eaf6ff;background:rgba(255,255,255,.06);cursor:pointer}
@keyframes emailOrbit{0%{transform:rotate(0deg) translateY(0)}50%{transform:rotate(180deg) translateY(8px)}100%{transform:rotate(360deg) translateY(0)}}
@media(max-width:620px){.email-orbit-card{grid-template-columns:1fr;gap:16px;padding:20px;border-radius:28px}.email-icon{width:70px;height:70px;border-radius:22px;font-size:1.55rem}.email-pill{width:100%}}


/* FINAL 9: intro gate overlay */
body.entry-locked{
  overflow:hidden;
}
body:not(.entry-locked){
  overflow-y:auto;
}
.entry-screen{
  position:fixed;
  inset:0;
  z-index:9999;
  display:grid;
  place-items:center;
  padding:18px;
  background:
    radial-gradient(circle at 20% 16%, rgba(56,189,248,.16), transparent 22%),
    radial-gradient(circle at 80% 18%, rgba(59,130,246,.18), transparent 28%),
    radial-gradient(circle at 50% 110%, rgba(239,68,68,.16), transparent 34%),
    linear-gradient(180deg, #030712 0%, #07101d 100%);
  overflow:hidden;
}
.entry-screen::before,
.entry-screen::after{
  content:"";
  position:absolute;
  inset:-10%;
  pointer-events:none;
}
.entry-screen::before{
  background:
    conic-gradient(from 90deg, rgba(255,255,255,0), rgba(125,211,252,.08), rgba(255,255,255,0) 35%),
    conic-gradient(from 180deg, rgba(255,255,255,0), rgba(248,113,113,.08), rgba(255,255,255,0) 40%);
  filter:blur(18px);
  animation:entrySpin 14s linear infinite;
}
.entry-screen::after{
  background: radial-gradient(circle, rgba(255,255,255,.05), transparent 58%);
  transform:scale(1.35);
}
.entry-noise{
  position:absolute;
  inset:0;
  opacity:.10;
  background-image:
    linear-gradient(rgba(255,255,255,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size: 24px 24px, 24px 24px;
  mask-image: radial-gradient(circle at center, black 55%, transparent 95%);
}
.entry-stars{
  position:absolute;
  inset:0;
  pointer-events:none;
}
.entry-stars span{
  position:absolute;
  width:3px;
  height:3px;
  border-radius:999px;
  background:#dff7ff;
  box-shadow:0 0 14px rgba(255,255,255,.85);
  animation:starBlink 3.2s ease-in-out infinite;
}
.entry-stars span:nth-child(1){top:8%;left:14%;animation-delay:.2s}
.entry-stars span:nth-child(2){top:17%;left:78%;animation-delay:.8s}
.entry-stars span:nth-child(3){top:28%;left:34%;animation-delay:1.3s}
.entry-stars span:nth-child(4){top:41%;left:88%;animation-delay:.4s}
.entry-stars span:nth-child(5){top:59%;left:12%;animation-delay:1.1s}
.entry-stars span:nth-child(6){top:73%;left:82%;animation-delay:2s}
.entry-stars span:nth-child(7){top:79%;left:46%;animation-delay:2.4s}
.entry-stars span:nth-child(8){top:66%;left:66%;animation-delay:.6s}
.entry-stars span:nth-child(9){top:23%;left:60%;animation-delay:1.6s}
.entry-stars span:nth-child(10){top:51%;left:28%;animation-delay:2.8s}
.entry-stars span:nth-child(11){top:85%;left:22%;animation-delay:.3s}
.entry-stars span:nth-child(12){top:12%;left:48%;animation-delay:2.2s}
.entry-fire-lines{
  position:absolute;
  inset:0;
  pointer-events:none;
}
.entry-fire-lines i{
  position:absolute;
  width:180px;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(248,113,113,.95), rgba(56,189,248,.92), rgba(255,255,255,0));
  box-shadow:0 0 18px rgba(248,113,113,.38);
  animation:fireSweep 8s linear infinite;
}
.entry-fire-lines i:nth-child(1){top:18%;left:-10%;animation-delay:0s}
.entry-fire-lines i:nth-child(2){top:34%;left:-24%;animation-delay:1.6s}
.entry-fire-lines i:nth-child(3){top:71%;left:-18%;animation-delay:3.3s}
.entry-fire-lines i:nth-child(4){top:82%;left:-26%;animation-delay:5.1s}
.entry-rings{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  pointer-events:none;
}
.entry-rings b{
  position:absolute;
  border-radius:50%;
  border:1px solid rgba(191,219,254,.16);
  box-shadow:0 0 30px rgba(125,211,252,.08), inset 0 0 40px rgba(255,255,255,.02);
}
.entry-rings b:nth-child(1){width:42vmax;height:42vmax;animation:entrySpin 18s linear infinite}
.entry-rings b:nth-child(2){width:30vmax;height:30vmax;animation:entrySpinReverse 12s linear infinite}
.entry-rings b:nth-child(3){width:18vmax;height:18vmax;animation:entryPulse 3.6s ease-in-out infinite}
.entry-panel{
  position:relative;
  z-index:2;
  width:min(100%, 860px);
  padding:30px;
  border-radius:34px;
  overflow:hidden;
  text-align:center;
  box-shadow:0 24px 100px rgba(2,6,23,.48);
}
.entry-panel::before{
  content:"";
  position:absolute;
  inset:1px;
  border-radius:inherit;
  background:
    radial-gradient(circle at top left, rgba(56,189,248,.12), transparent 35%),
    radial-gradient(circle at bottom right, rgba(248,113,113,.10), transparent 30%),
    linear-gradient(145deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
  z-index:-1;
}
.entry-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 14px;
  border-radius:999px;
  font-size:.78rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-weight:900;
  color:#dff7ff;
  border:1px solid rgba(191,219,254,.18);
  background:rgba(255,255,255,.05);
}
.entry-panel h1{
  margin:18px 0 12px;
  font-size:clamp(2rem, 7vw, 4.35rem);
  line-height:1.04;
  letter-spacing:-.05em;
}
.entry-lead{
  margin:0 auto;
  max-width:700px;
  color:var(--muted);
  line-height:1.75;
  font-size:1rem;
}
.entry-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:14px;
  margin:24px 0 22px;
}
.entry-mini-card{
  display:flex;
  align-items:center;
  gap:10px;
  justify-content:center;
  min-height:60px;
  border-radius:20px;
  padding:0 14px;
  border:1px solid rgba(255,255,255,.09);
  background:linear-gradient(145deg, rgba(255,255,255,.07), rgba(255,255,255,.03));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
  font-weight:800;
  color:#eaf6ff;
}
.entry-mini-card i{
  color:#7dd3fc;
}
.entry-actions{
  display:flex;
  justify-content:center;
}
.entry-btn{
  position:relative;
  overflow:hidden;
  min-width:230px;
  min-height:58px;
  border:none;
  border-radius:999px;
  padding:0 28px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  font-weight:900;
  font-size:1rem;
  color:#07111d;
  cursor:pointer;
  background:linear-gradient(135deg, #e0f2fe, #7dd3fc 45%, #60a5fa 78%, #f87171 120%);
  box-shadow:0 20px 50px rgba(14,165,233,.24);
  transition:transform .18s ease, box-shadow .18s ease;
}
.entry-btn::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(120deg, transparent 0%, rgba(255,255,255,.65) 50%, transparent 100%);
  transform:translateX(-120%);
  animation:shineSlide 3s linear infinite;
}
.entry-btn:hover{
  transform:translateY(-2px) scale(1.01);
  box-shadow:0 24px 60px rgba(14,165,233,.3);
}
.entry-footnote{
  margin-top:12px;
  font-size:.88rem;
  color:rgba(226,232,240,.72);
}
.entry-screen.is-leaving{
  animation:entryFadeOut .9s ease forwards;
}
.entry-screen.is-leaving .entry-panel{
  animation:entryPanelOut .85s ease forwards;
}
@keyframes entryFadeOut{
  to{opacity:0;visibility:hidden}
}
@keyframes entryPanelOut{
  to{transform:translateY(-12px) scale(.985); opacity:0}
}
@keyframes fireSweep{
  0%{transform:translateX(-18vw) translateY(0) rotate(-18deg); opacity:0}
  10%,80%{opacity:1}
  100%{transform:translateX(132vw) translateY(-28px) rotate(-18deg); opacity:0}
}
@keyframes entrySpin{
  from{transform:rotate(0deg)}
  to{transform:rotate(360deg)}
}
@keyframes entrySpinReverse{
  from{transform:rotate(360deg)}
  to{transform:rotate(0deg)}
}
@keyframes entryPulse{
  0%,100%{transform:scale(1); opacity:.72}
  50%{transform:scale(1.08); opacity:1}
}
@keyframes starBlink{
  0%,100%{transform:scale(1); opacity:.38}
  50%{transform:scale(1.9); opacity:1}
}
@keyframes shineSlide{
  0%{transform:translateX(-120%)}
  100%{transform:translateX(120%)}
}
@media(max-width:760px){
  .entry-panel{padding:22px 18px 20px; border-radius:26px}
  .entry-grid{grid-template-columns:1fr; gap:10px}
  .entry-mini-card{justify-content:flex-start; padding:0 16px}
  .entry-btn{width:100%}
}


/* FINAL 9B SCROLL FIX */
body:not(.entry-locked){
  overflow-y:auto !important;
}
body.entry-locked{
  overflow:hidden !important;
}


/* FINAL 9C ADMIN SCROLL FIX */
html{
  overflow-y:auto !important;
}
body:not(.entry-locked){
  overflow-y:auto !important;
  height:auto !important;
  min-height:100vh !important;
}
body:has(.admin-page){
  overflow-y:auto !important;
  height:auto !important;
  min-height:100vh !important;
}
.admin-page{
  min-height:100vh;
  overflow:visible !important;
}
