/* ============================================================
   NEX HOUSE — PREMIUM LAYER
   Powered by AHMII Labs · https://ahmiilabs.netlify.app
   Is file ko index.html aur baqi pages me sab se aakhir me load kiya
   gaya hai, isliye ye purane styles ko override karti hai.
   Hatani ho to bas <link> line delete kar dein, site pehle jaisi ho jayegi.
   ============================================================ */

:root{
  --gold-line:linear-gradient(90deg, transparent, rgba(212,175,55,.6), transparent);
  --ahm-a:#f4d78a; --ahm-b:#d4af37; --ahm-text:#9697a8;
}

/* ---------- 1. cleaner surface (weak PC par bhi halka) ---------- */
.noise-overlay{ display:none; }
.scanlines{ opacity:.12; }
.cursor-glow{ mix-blend-mode:normal; opacity:.7; }

html{ scrollbar-width:thin; scrollbar-color:rgba(212,175,55,.55) #08080b; }
::-webkit-scrollbar{ width:10px; }
::-webkit-scrollbar-track{ background:#08080b; }
::-webkit-scrollbar-thumb{ background:linear-gradient(180deg,#d4af37,#7a5f1a); border:2px solid #08080b; border-radius:10px; }
::selection{ background:#d4af37; color:#050505; }

h1,h2,h3{ text-wrap:balance; }
.section-heading h2{ letter-spacing:.02em; }
.section-desc{ color:#aeb0c0; }

/* ---------- 2. gold scroll progress ---------- */
.scroll-progress{ position:fixed; top:0; left:0; right:0; height:2px; z-index:8000; pointer-events:none;
  background:linear-gradient(90deg,#d4af37,#f4d78a,#00eaff); transform-origin:0 50%; transform:scaleX(0); }

/* ---------- 3. navigation ---------- */
.site-nav.scrolled{
  background:rgba(6,6,10,.8);
  backdrop-filter:blur(18px) saturate(140%); -webkit-backdrop-filter:blur(18px) saturate(140%);
  border-bottom:1px solid transparent;
  border-image:linear-gradient(90deg, transparent, rgba(212,175,55,.45), transparent) 1;
}
.nav-links a::after{ background:linear-gradient(90deg,#d4af37,#f4d78a); }
.nav-logo-badge{ border-color:rgba(212,175,55,.6); box-shadow:0 0 14px rgba(212,175,55,.25); }

/* ---------- 4. buttons: soft light sweep on hover ---------- */
.btn{ overflow:hidden; isolation:isolate; }
.btn::after{ content:''; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:linear-gradient(110deg, transparent 35%, rgba(255,255,255,.3) 50%, transparent 65%);
  transform:translateX(-130%); transition:transform .9s var(--ease); }
.btn:hover::after{ transform:translateX(130%); }

/* ---------- 5. panels: richer glass, thinner brackets ---------- */
.hud{
  background:linear-gradient(165deg, rgba(255,255,255,.065), rgba(255,255,255,.012) 55%, rgba(255,255,255,.03));
  border-color:rgba(255,255,255,.09);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07);
}
.hud::before, .hud::after{ width:14px; height:14px; border-width:1px; opacity:1; }
.eyebrow{ border-color:rgba(212,175,55,.35); color:#e6dcc0; }

/* section ke beech gold hairline */
.section + .section::before{ content:''; position:absolute; top:0; left:50%; width:min(760px,70vw); height:1px;
  transform:translateX(-50%); background:var(--gold-line); opacity:.55; }

/* ---------- 6. premium vault = sab se luxury hissa ---------- */
.premium-access{ background:linear-gradient(180deg, transparent, rgba(212,175,55,.06) 50%, transparent); }
.premium-access-card.hud{
  background:linear-gradient(165deg, rgba(212,175,55,.11), rgba(255,255,255,.015) 55%);
  border-color:rgba(212,175,55,.24);
}
.premium-access-card.hud::before, .premium-access-card.hud::after{ border-color:var(--gold-light); }
.premium-access-card.hud:hover{ border-color:rgba(212,175,55,.55); filter:drop-shadow(0 0 26px rgba(212,175,55,.2)); }
.premium-access-card .pa-icon{ color:var(--gold-light); }

/* ---------- 7. footer ---------- */
.site-footer{ position:relative; border-top:0; padding:60px 0 36px; background:linear-gradient(180deg, transparent, rgba(212,175,55,.04)); }
.site-footer::before{ content:''; position:absolute; top:0; left:50%; width:min(900px,80vw); height:1px; transform:translateX(-50%); background:var(--gold-line); }
.footer-credit{ margin-top:36px; padding-top:30px; border-top:1px solid rgba(255,255,255,.07); display:flex; justify-content:center; }

/* ---------- 8. POWERED BY AHMII LABS ---------- */
.ahmii-badge{
  display:inline-flex; align-items:center; gap:14px; padding:12px 26px 12px 14px;
  border:1px solid rgba(212,175,55,.32);
  background:linear-gradient(135deg, rgba(212,175,55,.12), rgba(212,175,55,.02));
  clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);
  transition:border-color .45s, box-shadow .45s, transform .45s;
  text-decoration:none; color:inherit;
}
.ahmii-badge:hover{ border-color:rgba(244,215,138,.8); transform:translateY(-2px); background:linear-gradient(135deg, rgba(212,175,55,.2), rgba(212,175,55,.04)); }
.ahmii-badge:focus-visible{ outline:2px solid #d4af37; outline-offset:4px; }
.ahmii-mark{ width:38px; height:38px; flex:none; filter:drop-shadow(0 0 8px rgba(212,175,55,.45)); }
.ahmii-text{ display:flex; flex-direction:column; gap:3px; line-height:1.05; text-align:left; }
.ahmii-text small{ font:500 11.5px/1 'JetBrains Mono', monospace; letter-spacing:.05em; color:var(--ahm-text); }
.ahmii-text strong{ font:700 20px/1 'Rajdhani', sans-serif; letter-spacing:.07em;
  background:linear-gradient(90deg,var(--ahm-a),var(--ahm-b) 55%,var(--ahm-a)); -webkit-background-clip:text; background-clip:text; color:transparent; }

.ahmii-badge.sm{ padding:8px 18px 8px 10px; gap:10px; }
.ahmii-badge.sm .ahmii-mark{ width:26px; height:26px; }
.ahmii-badge.sm .ahmii-text small{ font-size:10px; }
.ahmii-badge.sm .ahmii-text strong{ font-size:15px; }

/* hero ke neeche left corner */
.hero-powered{ position:absolute; z-index:3; bottom:34px; left:calc((100% - var(--container))/2); opacity:0; animation:ahmiiIn 1s var(--ease) 2.4s forwards; }
@keyframes ahmiiIn{ from{ opacity:0; transform:translateY(10px); } to{ opacity:1; transform:none; } }
@media (max-width:900px){ .hero-powered{ display:none; } }

/* boot screen ke neeche center */
.boot-credit{ position:absolute; z-index:4; bottom:34px; left:50%; transform:translateX(-50%); display:flex; align-items:center; gap:10px;
  font:500 12px/1 'JetBrains Mono', monospace; letter-spacing:.06em; color:#9697a8; opacity:0; animation:ahmiiBoot 1s ease .8s forwards; white-space:nowrap; }
.boot-credit .ahmii-mark{ width:22px; height:22px; }
.boot-credit b{ font:700 15px/1 'Rajdhani', sans-serif; letter-spacing:.08em; color:#f4d78a; }
@keyframes ahmiiBoot{ to{ opacity:1; } }
@media (max-width:640px){ .boot-credit{ bottom:84px; } }

@media (prefers-reduced-motion: reduce){
  .hero-powered, .boot-credit{ opacity:1; animation:none; }
  .scroll-progress{ display:none; }
}

/* ---------- 9. sub-pages (toolkit / osint / mod apps) ---------- */
.page-header{ border-bottom:1px solid transparent; border-image:linear-gradient(90deg, transparent, rgba(212,175,55,.4), transparent) 1; }
.page-hero{ position:relative; }
.page-hero::before{ content:''; position:absolute; inset:0 10% auto; height:260px; z-index:-1; pointer-events:none;
  background:radial-gradient(60% 100% at 50% 0, rgba(212,175,55,.12), transparent 70%); }
.empty-slot{ border-color:rgba(212,175,55,.22); background:linear-gradient(165deg, rgba(212,175,55,.05), rgba(255,255,255,.01)); }
.page-footer{ padding:36px 0 40px; border-top:0; position:relative; }
.page-footer::before{ content:''; position:absolute; top:0; left:50%; width:min(700px,80vw); height:1px; transform:translateX(-50%); background:var(--gold-line); }
.page-footer .footer-credit{ border-top:0; margin-top:22px; padding-top:0; }

/* premium cards ke Unlock button bhi gold */
.premium-access-card .btn-outline{ border-color:rgba(212,175,55,.5); }
.premium-access-card .btn-outline:hover{ border-color:#f4d78a; box-shadow:0 0 20px rgba(212,175,55,.25); }


/* ============================================================
   THEME TOGGLE (dark / light)
   ============================================================ */
.nav-actions{ display:flex; align-items:center; gap:14px; }
.page-actions{ display:flex; align-items:center; gap:18px; }
.theme-toggle{ width:42px; height:42px; display:inline-flex; align-items:center; justify-content:center; padding:0;
  border:1px solid var(--line); background:rgba(255,255,255,.03); color:var(--gold-light); font-size:16px; cursor:pointer;
  clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);
  transition:border-color .35s, color .35s, box-shadow .35s; }
.theme-toggle:hover{ border-color:var(--gold); box-shadow:0 0 18px rgba(212,175,55,.25); }
.theme-toggle .ico-sun{ display:none; }
html[data-theme="light"] .theme-toggle .ico-moon{ display:none; }
html[data-theme="light"] .theme-toggle .ico-sun{ display:block; }

/* ---------- LIGHT MODE ---------- */
html[data-theme="light"]{
  color-scheme:light;
  --black:#f4f1ea;
  --carbon-900:#ece8df; --carbon-800:#ffffff; --carbon-700:#f1eee6; --carbon-600:#e4dfd3; --carbon-500:#cfc8b8;
  --line:rgba(20,22,32,.13);
  --white:#14151c;
  --gray-300:#3d4050; --gray-400:#5b5e70; --gray-500:#767989;
  --cyan:#00798f; --cyan-rgb:0,121,143;
  --blue:#1f5fd6; --blue-rgb:31,95,214;
  --purple:#6d3fd1; --purple-rgb:109,63,209;
  --gold:#946f0c; --gold-rgb:148,111,12; --gold-light:#b08a22;
  --gold-line:linear-gradient(90deg, transparent, rgba(148,111,12,.55), transparent);
  --ahm-a:#b08a22; --ahm-b:#7d5d08; --ahm-text:#5b5e70;
}
html[data-theme="dark"]{ color-scheme:dark; }

html[data-theme="light"]{ scrollbar-color:rgba(148,111,12,.55) #e9e5db; }
html[data-theme="light"] ::-webkit-scrollbar-track{ background:#e9e5db; }
html[data-theme="light"] ::-webkit-scrollbar-thumb{ border-color:#e9e5db; }
html[data-theme="light"] ::selection{ background:#946f0c; color:#fff; }
html[data-theme="light"] .scanlines{ display:none; }
html[data-theme="light"] .cursor-glow{ opacity:.25; }
html[data-theme="light"] .neural-bg{ opacity:.28; }
html[data-theme="light"] .section-desc{ color:var(--gray-400); }

html[data-theme="light"] .site-nav.scrolled{ background:rgba(244,241,234,.86); border-image:linear-gradient(90deg, transparent, rgba(148,111,12,.4), transparent) 1; }
html[data-theme="light"] .hud{
  background:linear-gradient(165deg, #ffffff, rgba(255,255,255,.7));
  border-color:rgba(20,22,32,.12);
  box-shadow:inset 0 1px 0 #fff;
}
html[data-theme="light"] .hud:hover{ filter:drop-shadow(0 8px 20px rgba(20,22,32,.12)); }
html[data-theme="light"] .premium-access-card.hud{ background:linear-gradient(165deg, rgba(148,111,12,.12), rgba(255,255,255,.85) 55%); border-color:rgba(148,111,12,.3); }
html[data-theme="light"] .premium-access-card.hud:hover{ filter:drop-shadow(0 8px 22px rgba(148,111,12,.2)); }
html[data-theme="light"] .premium-access{ background:linear-gradient(180deg, transparent, rgba(148,111,12,.07) 50%, transparent); }
html[data-theme="light"] .site-footer{ background:linear-gradient(180deg, transparent, rgba(148,111,12,.06)); }
html[data-theme="light"] .footer-credit{ border-top-color:rgba(20,22,32,.1); }
html[data-theme="light"] .theme-toggle{ background:rgba(20,22,32,.04); }
html[data-theme="light"] .empty-slot{ background:linear-gradient(165deg, rgba(148,111,12,.07), rgba(255,255,255,.6)); border-color:rgba(148,111,12,.3); }
html[data-theme="light"] .page-hero::before{ background:radial-gradient(60% 100% at 50% 0, rgba(148,111,12,.14), transparent 70%); }

/* in jagahon par light mode me bhi dark rahega: hero, intro, navbar (top par), terminal */
html[data-theme="light"] .hero,
html[data-theme="light"] #boot-screen,
html[data-theme="light"] .site-nav:not(.scrolled),
html[data-theme="light"] .terminal-window{
  --black:#050505; --carbon-800:#0e0e14; --carbon-700:#16161e; --carbon-600:#1f1f2a; --carbon-500:#2c2c39;
  --line:rgba(255,255,255,.08); --white:#f4f6fb;
  --gray-300:#c6c8d6; --gray-400:#9697a8; --gray-500:#666876;
  --cyan:#00eaff; --cyan-rgb:0,234,255; --blue:#2979ff; --blue-rgb:41,121,255;
  --purple:#9b5cff; --purple-rgb:155,92,255;
  --gold:#d4af37; --gold-rgb:212,175,55; --gold-light:#f4d78a;
  --ahm-a:#f4d78a; --ahm-b:#d4af37; --ahm-text:#9697a8;
  color:#f4f6fb;
}
html[data-theme="light"] .hero{ background:#050505; }
html[data-theme="light"] .terminal-window{ background:#0b0b11; }
html[data-theme="light"] #boot-screen .hud,
html[data-theme="light"] .terminal-window.hud{
  background:linear-gradient(165deg, rgba(255,255,255,.065), rgba(255,255,255,.012) 55%, rgba(255,255,255,.03)), #0b0b11;
  border-color:rgba(255,255,255,.09);
}
html[data-theme="light"] .site-nav:not(.scrolled) .theme-toggle{ background:rgba(255,255,255,.03); }


/* ============================================================
   ENTRY INTRO — "obsidian curtain"
   logo ring bharti hai, NEX HOUSE akshar-akshar uthta hai,
   phir do parde beech se khul kar site dikhate hain.
   ============================================================ */
#boot-screen{ position:fixed; inset:0; z-index:9999; display:flex; align-items:center; justify-content:center; background:transparent; overflow:hidden; }
#boot-screen.boot-done{ pointer-events:none; }
.intro-curtain{ position:absolute; left:0; right:0; height:50.3%; background:#050505; z-index:0; will-change:transform;
  transition:transform 1.3s cubic-bezier(.77,0,.18,1) .12s; }
.intro-top{ top:0; }
.intro-bottom{ bottom:0; }
#boot-screen.boot-done .intro-top{ transform:translateY(-101%); }
#boot-screen.boot-done .intro-bottom{ transform:translateY(101%); }

.intro-glow{ position:absolute; inset:0; z-index:1; pointer-events:none; opacity:0;
  background:radial-gradient(540px 360px at 50% 47%, rgba(212,175,55,.14), transparent 70%);
  animation:introFade 1.6s ease .1s forwards; }
@keyframes introFade{ to{ opacity:1; } }
#boot-screen.boot-done .intro-glow{ animation:none; opacity:0; transition:opacity .5s ease; }

.intro-seam{ position:absolute; z-index:2; left:50%; top:50%; height:1px; width:0; transform:translateX(-50%); pointer-events:none;
  background:linear-gradient(90deg, transparent, #f4d78a, transparent); opacity:.85;
  animation:seamGrow 1.5s cubic-bezier(.65,0,.25,1) .35s forwards; }
@keyframes seamGrow{ to{ width:min(720px,76vw); } }
#boot-screen.boot-done .intro-seam{ opacity:0; transition:opacity .35s ease; }

.intro-center{ position:relative; z-index:3; display:flex; flex-direction:column; align-items:center; gap:24px; text-align:center; padding:0 20px;
  transition:opacity .5s ease, transform .7s var(--ease); }
#boot-screen.boot-done .intro-center{ opacity:0; transform:scale(1.05); }

.intro-emblem{ position:relative; width:116px; height:116px; display:grid; place-items:center; opacity:0; transform:scale(.88);
  animation:emblemIn 1.1s var(--ease) .1s forwards; }
@keyframes emblemIn{ to{ opacity:1; transform:scale(1); } }
.intro-emblem img{ width:84px; height:84px; border-radius:50%; object-fit:cover; box-shadow:0 0 44px rgba(212,175,55,.28); }
.intro-ring{ position:absolute; inset:0; width:100%; height:100%; transform:rotate(-90deg); }
.intro-ring circle{ fill:none; stroke-width:1.2; }
.intro-ring .track{ stroke:rgba(255,255,255,.1); }
.intro-ring .draw{ stroke:#d4af37; stroke-linecap:round; stroke-dasharray:100; stroke-dashoffset:100;
  animation:ringDraw 2.2s cubic-bezier(.65,0,.25,1) .3s forwards; }
@keyframes ringDraw{ to{ stroke-dashoffset:0; } }

.intro-title{ display:flex; gap:.34em; font-family:var(--font-display); font-weight:900; font-size:clamp(32px,7.2vw,78px); line-height:1; color:#f4f6fb; letter-spacing:.04em; }
.intro-word{ display:inline-flex; overflow:hidden; padding:.1em .02em; }
.intro-word .ch{ display:inline-block; transform:translateY(118%); animation:chRise .95s var(--ease) forwards; animation-delay:calc(.75s + var(--i) * .075s); }
@keyframes chRise{ to{ transform:translateY(0); } }
.intro-title .intro-word:last-child .ch{ color:#e9c765; }

.intro-tag{ margin:0; font-family:var(--font-heading); font-size:clamp(15px,1.8vw,19px); font-weight:600; letter-spacing:.14em; color:#9697a8;
  opacity:0; transform:translateY(8px); animation:tagIn .9s var(--ease) 1.9s forwards; }
@keyframes tagIn{ to{ opacity:1; transform:none; } }

.intro-meter{ display:flex; align-items:center; gap:14px; opacity:0; animation:tagIn .8s var(--ease) 2.1s forwards; }
.intro-line{ position:relative; width:min(260px,52vw); height:1px; background:rgba(255,255,255,.14); overflow:hidden; }
.intro-line span{ position:absolute; inset:0; transform:scaleX(0); transform-origin:0 50%; background:linear-gradient(90deg,#d4af37,#f4d78a); }
.intro-count{ font:500 12px/1 'JetBrains Mono', monospace; color:#9697a8; min-width:3.6ch; text-align:left; }
.intro-count b{ font-weight:500; color:#f4d78a; }

#boot-screen .boot-credit{ bottom:30px; }
#boot-screen .boot-skip{ position:absolute; z-index:5; bottom:28px; right:30px; font:500 12px/1 'JetBrains Mono', monospace; letter-spacing:.06em;
  color:#9697a8; background:transparent; border:1px solid rgba(255,255,255,.14); padding:9px 18px; cursor:pointer; transition:color .35s, border-color .35s; }
#boot-screen .boot-skip:hover{ color:#f4d78a; border-color:rgba(212,175,55,.55); }
#boot-screen.boot-done .boot-credit, #boot-screen.boot-done .boot-skip{ animation:none; opacity:0; transition:opacity .3s ease; }
@media (max-width:640px){
  #boot-screen .boot-credit{ bottom:78px; }
  #boot-screen .boot-skip{ right:50%; transform:translateX(50%); bottom:30px; }
}
@media (prefers-reduced-motion: reduce){
  .intro-emblem, .intro-tag, .intro-meter, .intro-glow{ animation:none; opacity:1; transform:none; }
  .intro-ring .draw{ animation:none; stroke-dashoffset:0; }
  .intro-word .ch{ animation:none; transform:none; }
  .intro-seam{ animation:none; width:min(720px,76vw); }
  .intro-curtain{ transition:none; }
}

/* ============================================================
   HERO TITLE — glitch ki jagah premium rise + gold-white shine
   ============================================================ */
.hero-title{
  background-image:linear-gradient(100deg, transparent 40%, rgba(255,255,255,.92) 50%, transparent 60%),
                   linear-gradient(120deg, var(--white) 30%, var(--cyan) 55%, var(--purple) 80%);
  background-size:250% 100%, 100% 100%;
  background-repeat:no-repeat;
  background-position:160% 0, 0 0;
  -webkit-background-clip:text; background-clip:text;
}
.hero.hero-arrived .hero-title{ animation:heroTitleRise 1.4s var(--ease) .12s both, titleShine 1.6s ease-in-out 1.5s 1 both; }
@keyframes heroTitleRise{
  from{ opacity:0; transform:translateY(36px); letter-spacing:.16em; clip-path:inset(-8% -4% 100% -4%); }
  to{ opacity:1; transform:none; letter-spacing:.01em; clip-path:inset(-8% -4% -8% -4%); }
}
@keyframes titleShine{ from{ background-position:160% 0, 0 0; } to{ background-position:-60% 0, 0 0; } }
@media (prefers-reduced-motion: reduce){ .hero.hero-arrived .hero-title{ animation:none; } }

/* ============================================================
   TICKER — hero ke neeche halka gold marquee band
   ============================================================ */
.ticker{ position:relative; overflow:hidden; padding:22px 0; border-block:1px solid var(--line);
  background:linear-gradient(180deg, rgba(212,175,55,.04), transparent 60%);
  -webkit-mask-image:linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent);
          mask-image:linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent); }
.ticker-track{ display:flex; width:max-content; animation:tickerMove 60s linear infinite; will-change:transform; }
.ticker:hover .ticker-track{ animation-play-state:paused; }
.ticker-group{ display:flex; align-items:center; flex:none; }
.ticker-group span{ font-family:var(--font-heading); font-weight:600; font-size:clamp(20px,2.3vw,28px); letter-spacing:.06em; color:var(--gray-400); white-space:nowrap; }
.ticker-group span.ticker-ahmii{ color:var(--gold-light); }
.ticker-gem{ flex:none; width:7px; height:7px; margin:0 34px; background:var(--gold); transform:rotate(45deg); opacity:.8; }
@keyframes tickerMove{ to{ transform:translateX(-50%); } }
@media (prefers-reduced-motion: reduce){ .ticker-track{ animation:none; } }
html[data-theme="light"] .ticker{ background:linear-gradient(180deg, rgba(148,111,12,.07), transparent 60%); }

/* ---------- nav: active section ---------- */
.nav-links a.is-active{ color:var(--white); }
.nav-links a.is-active::after{ width:100%; }


/* ============================================================
   ENTRY INTRO — premium layer (grid, HUD corners, scan, boot log)
   ============================================================ */
html.nex-seen #boot-screen{ display:none !important; }
html.nex-seen body.boot-active{ overflow:visible; height:auto; }

.intro-grid{ position:absolute; z-index:1; left:-20%; right:-20%; bottom:-6%; height:62%; pointer-events:none; opacity:0;
  background:
    linear-gradient(rgba(212,175,55,.20) 1px, transparent 1px) 0 0/64px 64px,
    linear-gradient(90deg, rgba(0,234,255,.14) 1px, transparent 1px) 0 0/64px 64px;
  transform:perspective(520px) rotateX(62deg); transform-origin:50% 100%;
  -webkit-mask-image:linear-gradient(to top, #000 8%, transparent 78%); mask-image:linear-gradient(to top, #000 8%, transparent 78%);
  animation:gridIn 1.6s ease .5s forwards, gridMove 5s linear infinite; }
@keyframes gridIn{ to{ opacity:.9; } }
@keyframes gridMove{ to{ background-position:0 64px, 64px 0; } }
.intro-scan{ position:absolute; z-index:2; left:0; right:0; height:140px; top:-140px; pointer-events:none; opacity:.55;
  background:linear-gradient(to bottom, transparent, rgba(0,234,255,.10) 55%, rgba(0,234,255,.35) 99%, transparent);
  animation:scanDown 3.2s cubic-bezier(.45,0,.2,1) .4s forwards; }
@keyframes scanDown{ to{ top:100%; } }

.intro-hud{ position:absolute; z-index:4; display:flex; flex-direction:column; gap:6px; font:500 10.5px/1 'JetBrains Mono',monospace; letter-spacing:.12em; color:#9697a8;
  padding:12px 16px; opacity:0; animation:hudIn .9s var(--ease) 1.1s forwards; }
.intro-hud b{ color:#f4d78a; font-weight:600; letter-spacing:.16em; }
.intro-hud::before,.intro-hud::after{ content:''; position:absolute; width:14px; height:14px; border:1.5px solid rgba(212,175,55,.65); }
.intro-hud-tl{ top:26px; left:26px; } .intro-hud-tl::before{ top:0; left:0; border-right:0; border-bottom:0; } .intro-hud-tl::after{ display:none; }
.intro-hud-tr{ top:26px; right:26px; flex-direction:row; align-items:center; gap:10px; } .intro-hud-tr::before{ top:0; right:0; border-left:0; border-bottom:0; } .intro-hud-tr::after{ display:none; }
.intro-hud-bl{ bottom:26px; left:26px; } .intro-hud-bl::before{ bottom:0; left:0; border-right:0; border-top:0; } .intro-hud-bl::after{ display:none; }
@keyframes hudIn{ from{ opacity:0; transform:translateY(6px); } to{ opacity:1; transform:none; } }
.intro-live{ width:7px; height:7px; border-radius:50%; background:#00eaff; box-shadow:0 0 10px #00eaff; animation:livePulse 1.2s ease-in-out infinite; }
@keyframes livePulse{ 50%{ opacity:.3; transform:scale(.7); } }
#boot-screen.boot-done .intro-hud, #boot-screen.boot-done .intro-grid, #boot-screen.boot-done .intro-scan{ animation:none; opacity:0; transition:opacity .35s ease; }

.intro-emblem::before{ content:''; position:absolute; inset:-14px; border-radius:50%; border:1px dashed rgba(0,234,255,.45); animation:orbitSpin 14s linear infinite; }
.intro-emblem::after{ content:''; position:absolute; inset:-14px; border-radius:50%; animation:orbitSpin 3.4s linear infinite;
  background:radial-gradient(circle at 50% 0, #00eaff 0 3px, transparent 4px); filter:drop-shadow(0 0 6px #00eaff); }
@keyframes orbitSpin{ to{ transform:rotate(360deg); } }
.intro-emblem img{ box-shadow:0 0 60px rgba(212,175,55,.35), 0 0 0 1px rgba(244,215,138,.35); }

.intro-title{ position:relative; text-shadow:0 0 38px rgba(212,175,55,.18); }
.intro-title::after{ content:''; position:absolute; inset:0; pointer-events:none; mix-blend-mode:overlay;
  background:linear-gradient(105deg, transparent 20%, rgba(255,255,255,.38) 50%, transparent 80%); transform:translateX(-130%); animation:titleSweep 1.4s ease 2.0s forwards; }
@keyframes titleSweep{ to{ transform:translateX(130%); } }
.intro-tag{ text-transform:uppercase; letter-spacing:.34em; font-size:clamp(11px,1.3vw,14px); }

.intro-log{ width:min(300px,70vw); min-height:78px; margin-top:2px; display:flex; flex-direction:column; gap:5px; text-align:left;
  font:500 11px/1.2 'JetBrains Mono',monospace; color:#7d7f90; }
.intro-log div{ display:flex; justify-content:space-between; gap:12px; animation:logIn .35s ease both; }
.intro-log i{ font-style:normal; color:#4fe0b5; letter-spacing:.08em; text-transform:uppercase; }
.intro-log div:last-child i{ color:#f4d78a; }
@keyframes logIn{ from{ opacity:0; transform:translateX(-6px); } }
@media (max-width:640px){ .intro-hud-bl{ display:none; } .intro-hud-tl,.intro-hud-tr{ top:16px; } .intro-hud-tl{ left:14px; } .intro-hud-tr{ right:14px; } }
@media (prefers-reduced-motion:reduce){ .intro-grid,.intro-scan,.intro-hud,.intro-title::after,.intro-emblem::before,.intro-emblem::after,.intro-live{ animation:none; } .intro-hud,.intro-grid{ opacity:1; } .intro-scan{ display:none; } }
