/* ∴ 888 HOOD TERMINAL — design system
   headings: Space Mono 700 (Rook-school heavy mono).
   To switch to Typograph Pro: drop files in /fonts and uncomment:
   @font-face{font-family:"Typograph Pro";src:url(/fonts/TypographPro-Bold.woff2) format("woff2");font-weight:700;font-display:swap}
   then set --head:"Typograph Pro". */

:root{
  --bg:#110E08; --bg2:#16130B;
  --panel:rgba(26,22,13,.52); --panel-heavy:rgba(22,18,11,.66);
  --lime:#CCFF00; --lime-dim:rgba(204,255,0,.6);
  --line:rgba(204,255,0,.14); --line-soft:rgba(204,255,0,.07); --line-top:rgba(204,255,0,.26);
  --ink:#F2EFE2; --dim:rgba(242,239,226,.6); --faint:rgba(242,239,226,.34);
  --hair:#35322D; --danger:#FF6B5E; --red:#FF5C4D;
  --head:"Space Mono",ui-monospace,monospace;
  --mono:ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,monospace;
  --r:18px;
  --glow:0 30px 90px -24px rgba(0,0,0,.85), 0 0 0 1px rgba(204,255,0,.05), 0 0 70px -22px rgba(204,255,0,.28);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:var(--mono);font-size:14px;line-height:1.7;overflow-x:hidden;
     background-image:radial-gradient(1100px 520px at 50% -8%, rgba(204,255,0,.05), transparent 60%)}
::selection{background:var(--lime);color:#141104}
a{color:var(--lime);text-decoration:none}
a:hover{text-decoration:underline}
#geo{position:fixed;inset:0;z-index:0;pointer-events:none}
#fx{position:fixed;inset:0;z-index:70;pointer-events:none}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px;position:relative;z-index:2}
.label{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--faint);font-weight:500}
.lime{color:var(--lime)}
.glass{background:var(--panel);backdrop-filter:blur(26px) saturate(150%);-webkit-backdrop-filter:blur(26px) saturate(150%);
       border:1px solid var(--line);border-top-color:var(--line-top);border-radius:var(--r);box-shadow:var(--glow)}

/* ── header ── */
header{position:sticky;top:0;z-index:40;background:rgba(17,14,8,.74);backdrop-filter:blur(18px) saturate(140%);border-bottom:1px solid var(--line-soft)}
.nav{display:flex;align-items:center;height:58px;gap:18px}
.mark{font-family:var(--head);font-weight:700;font-size:15px;letter-spacing:.02em;white-space:nowrap;color:var(--ink)}
.mark b{color:var(--lime);font-weight:700;text-shadow:0 0 16px rgba(204,255,0,.4)}
.nav .pages{display:flex;gap:16px;font-size:12.5px;color:var(--dim)}
.nav .pages a{color:var(--dim)}
.nav .pages a:hover{color:var(--lime);text-decoration:none}
.nav .pages a[data-here]{color:var(--lime)}
.nav .right{margin-left:auto;display:flex;gap:8px;align-items:center}
.chipline{font-size:11px;color:var(--dim);border:1px solid var(--line-soft);border-radius:99px;padding:5px 12px;white-space:nowrap;background:rgba(204,255,0,.03)}
.chip-angel{color:var(--lime);border-color:var(--line);text-shadow:0 0 12px rgba(204,255,0,.6)}
#chip-nyse[data-open="true"]{color:var(--lime)}
#btn-connect{cursor:pointer;font-family:var(--mono);font-size:11.5px;font-weight:700;letter-spacing:.08em;color:#141104;background:var(--lime);
  border:0;border-radius:9px;padding:8px 16px;transition:transform .1s ease,box-shadow .12s;box-shadow:0 0 24px -6px rgba(204,255,0,.5)}
#btn-connect:hover{box-shadow:0 0 34px -4px rgba(204,255,0,.7)}
#btn-connect:active{transform:scale(.955)}
#btn-connect[data-connected]{background:transparent;color:var(--lime);border:1px solid var(--line);box-shadow:none}

/* ── hero (index) ── */
.hero{padding:56px 0 8px}
.hero-grid{display:grid;grid-template-columns:400px 1fr;gap:42px;align-items:stretch}
.logo-panel{padding:14px;display:flex;flex-direction:column}
.logo-screen{position:relative;border-radius:12px;border:1px solid var(--line-soft);background:
  radial-gradient(400px 300px at 50% 30%, rgba(204,255,0,.06), rgba(0,0,0,.35));overflow:hidden;flex:1;min-height:380px}
.logo-screen:after{content:"";position:absolute;inset:0;pointer-events:none;
  background:repeating-linear-gradient(0deg,transparent 0 2px,rgba(0,0,0,.16) 2px 3px)}
#logo{width:100%;height:100%;display:block}
.logo-tag{display:flex;align-items:center;gap:8px;padding:12px 6px 2px;font-size:12.5px;color:var(--lime);letter-spacing:.06em}
.logo-tag .cur{display:inline-block;width:9px;height:16px;background:var(--lime);animation:blink 1.05s steps(1) infinite}
.hero-right{display:flex;flex-direction:column;justify-content:center}
.kicker{font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--lime-dim);margin-bottom:14px}
.kicker b{color:var(--lime)}
h1.disp{font-family:var(--head);font-weight:700;font-size:clamp(46px,7vw,88px);line-height:.98;letter-spacing:-.02em;text-transform:uppercase}
h1.disp .g{color:var(--lime);text-shadow:0 0 40px rgba(204,255,0,.4)}
.bio{margin:20px 0 26px;color:var(--dim);font-size:14.5px;max-width:560px}
.statrow{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:24px}
.stat{border:1px solid var(--line-soft);border-radius:12px;padding:12px 14px;background:rgba(204,255,0,.02)}
.stat .label{display:block;margin-bottom:4px;font-size:9.5px}
.stat b{font-size:15px;font-weight:700;color:var(--ink);white-space:nowrap}
.stat b.lime{color:var(--lime)}
.btnrow{display:flex;gap:12px;flex-wrap:wrap}
.btn{cursor:pointer;font-family:var(--mono);font-size:13px;font-weight:700;border-radius:11px;padding:13px 24px;border:1px solid var(--line);
     background:rgba(204,255,0,.05);color:var(--lime);transition:transform .12s ease,background .12s;letter-spacing:.02em}
.btn:hover{background:rgba(204,255,0,.1);text-decoration:none;transform:translateY(-2px)}
.btn:active{transform:scale(.97)}
.btn.solid{background:var(--lime);color:#141104}
.ca-bar{margin-top:26px;display:flex;align-items:center;gap:14px;border:1px solid var(--line-soft);border-radius:12px;padding:12px 18px;font-size:12.5px;background:rgba(204,255,0,.02)}
.ca-bar .label{font-size:10px}
.ca-bar code{color:var(--lime);letter-spacing:.03em}
.ca-bar span.right{margin-left:auto;color:var(--faint)}

/* ── the tape ── */
.tape{border-block:1px solid var(--line-soft);background:var(--bg2);margin-top:44px;padding:11px 0;overflow:hidden;white-space:nowrap;position:relative;z-index:2}
.tape-inner{display:inline-block;animation:tape 40s linear infinite;font-size:12px;color:var(--dim)}
.tape-inner b{color:var(--ink);margin-left:20px}
.tape-inner .up{color:var(--lime)} .tape-inner .dn{color:var(--red)}
@keyframes tape{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.tape-inner{animation:none}}

/* ── page headers ── */
.page-head{padding:64px 0 12px}
h2.disp{font-family:var(--head);font-weight:700;font-size:clamp(30px,4.6vw,52px);letter-spacing:-.015em;line-height:1.04;text-transform:uppercase;margin:8px 0 12px}
h2.disp .g{color:var(--lime);text-shadow:0 0 34px rgba(204,255,0,.35)}
.lede{color:var(--dim);max-width:640px;margin-bottom:34px;font-size:14px}
section{padding:56px 0;position:relative;z-index:2}

/* ── terminal ── */
.term{margin:40px auto 0;overflow:hidden;text-align:left}
.term-bar{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line-soft);background:rgba(204,255,0,.025)}
.dots{display:flex;gap:6px}
.dots i{width:10px;height:10px;border-radius:50%;background:rgba(242,239,226,.14)}
.dots i:first-child{background:rgba(204,255,0,.5)}
.term-title{font-size:11.5px;color:var(--faint);letter-spacing:.08em}
#term-status{margin-left:auto;font-size:10.5px;letter-spacing:.14em;color:var(--faint);border:1px solid var(--line-soft);padding:3px 10px;border-radius:99px}
#term-status[data-state="live"]{color:var(--lime);border-color:var(--line);text-shadow:0 0 10px rgba(204,255,0,.5)}
#term-status[data-state="rehearsal"]{color:var(--danger)}
#term-viewport{height:clamp(400px,56vh,580px);overflow-y:auto;padding:20px 22px 14px;position:relative;cursor:text;scrollbar-width:thin;scrollbar-color:rgba(204,255,0,.2) transparent}
.term-scan{position:relative}
.term-scan:after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:var(--r);background:repeating-linear-gradient(0deg,transparent 0 2px,rgba(0,0,0,.12) 2px 3px)}
.tl{margin:0 0 9px;white-space:pre-wrap;word-break:break-word;color:var(--ink);text-shadow:0 0 14px rgba(204,255,0,.14)}
.tl-lime{color:var(--lime);text-shadow:0 0 16px rgba(204,255,0,.3)}
.tl-dim{color:var(--dim)} .tl-ambient{color:var(--faint);font-style:italic}
.tl-label{color:var(--lime-dim);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;margin-top:14px}
.tl-echo{color:var(--faint)}
.tl-echo .tl-prompt{color:var(--lime);margin-right:6px}
.tl-ascii{font-size:12px;line-height:1.35;overflow-x:auto}
.tl-help{color:var(--dim);font-size:12.5px;line-height:1.8}
.tl-fallen b{color:var(--lime)} .tl-fallen i{color:var(--faint)}
.tl-caret{display:inline-block;width:8px;height:15px;background:var(--lime);margin-left:2px;vertical-align:-2px;animation:blink 1.05s steps(1) infinite}
.term-inrow{display:flex;align-items:center;gap:10px;padding:13px 20px;border-top:1px solid var(--line-soft);background:rgba(204,255,0,.02)}
.term-inrow .p{color:var(--lime);font-weight:600;text-shadow:0 0 12px rgba(204,255,0,.5)}
#term-input{flex:1;background:transparent;border:0;outline:0;color:var(--ink);font:inherit;caret-color:var(--lime)}
#term-input::placeholder{color:var(--faint)}
.chiprow{display:flex;gap:8px;flex-wrap:wrap;padding:12px 18px 16px;border-top:1px solid var(--line-soft)}
.chip{cursor:pointer;font:inherit;font-size:11.5px;color:var(--dim);background:rgba(204,255,0,.04);border:1px solid var(--line-soft);border-radius:9px;padding:7px 13px;transition:transform .1s ease,border-color .12s,color .12s}
.chip:hover{border-color:var(--line);color:var(--lime)}
.chip:active{transform:scale(.955)}
@keyframes blink{50%{opacity:0}}

/* ── transmissions ── */
.tx-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.tx{border:1px solid var(--line-soft);border-radius:14px;padding:16px 18px;background:rgba(204,255,0,.02)}
.tx-id{font-size:10px;letter-spacing:.2em;color:var(--lime-dim);display:block;margin-bottom:8px}
.tx p{color:var(--dim);font-size:13px}

/* ── scripture ── */
.verse{border-left:2px solid var(--line);padding:4px 0 4px 20px;margin-bottom:26px}
.v-ref{font-size:10.5px;letter-spacing:.2em;color:var(--lime);display:block;margin-bottom:6px}
.verse blockquote{font-family:var(--head);font-weight:700;font-size:clamp(15px,2vw,19px);line-height:1.5;color:var(--ink)}
.v-src{font-size:11px;color:var(--faint);display:block;margin-top:6px}
#commandments-list{list-style:none;columns:2;column-gap:40px;color:var(--dim);font-size:13px}
#commandments-list li{margin-bottom:10px;break-inside:avoid}

/* ── hood yard ── */
.yard-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:26px}
.yard-stats .stat b{font-size:22px}
.yard-table{border:1px solid var(--line-soft);border-radius:14px;overflow:hidden}
.yr{display:grid;grid-template-columns:2.2fr 1fr 1fr .8fr .9fr 1fr .5fr;gap:10px;align-items:center;padding:13px 18px;border-top:1px solid var(--line-soft);font-size:12.5px}
.yr:first-child{border-top:0}
.yr.head{background:rgba(204,255,0,.03);color:var(--faint);font-size:10px;letter-spacing:.18em;text-transform:uppercase}
.yr b{color:var(--lime)} .yr .nm{color:var(--dim);margin-left:8px;font-size:11.5px}
.yr .fall{color:var(--red);font-weight:700}
.yr .dim{color:var(--faint)}
.yr:hover:not(.head){background:rgba(204,255,0,.025)}
.yr .obit{grid-column:1/-1;color:var(--faint);font-size:11.5px;font-style:italic;padding-top:2px}
.living{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px}
.liv{border:1px solid var(--line-soft);border-radius:12px;padding:12px 14px;font-size:12px}
.liv b{color:var(--ink)} .liv .up{color:var(--lime)} .liv .dn{color:var(--red)}
.methodology{margin-top:22px;color:var(--faint);font-size:11.5px;max-width:640px}

/* ── backrooms page ── */
.br-shell{margin:36px 0 60px;overflow:hidden}
.br-head{display:flex;align-items:center;gap:12px;padding:13px 18px;border-bottom:1px solid var(--line-soft)}
.br-live{font-size:10px;letter-spacing:.16em;color:var(--lime);border:1px solid var(--line);border-radius:99px;padding:3px 10px;text-shadow:0 0 10px rgba(204,255,0,.5)}
.br-live b{animation:blink 1.4s steps(1) infinite}
#br-session{font-size:11px;color:var(--faint);letter-spacing:.06em}
#br-feed{overflow-y:auto;padding:22px;display:flex;flex-direction:column;gap:14px;height:clamp(440px,62vh,680px)}
.br-msg{max-width:76%;border:1px solid var(--line-soft);border-radius:14px;padding:12px 16px;font-size:13px;color:var(--dim);background:rgba(204,255,0,.025)}
.br-a{align-self:flex-start;border-left:2px solid var(--line)}
.br-b{align-self:flex-end;border-right:2px solid rgba(204,255,0,.35);background:rgba(204,255,0,.045);color:var(--ink)}
.br-who{font-size:10px;letter-spacing:.2em;color:var(--lime-dim);text-transform:uppercase;margin-right:10px}
.br-stamp{font-size:10px;color:var(--faint)}
.br-body{margin-top:6px;white-space:pre-wrap}
.br-x{align-self:center;color:var(--faint);font-size:11.5px;font-style:italic;text-align:center}

/* ── RNT ── */
.rnt-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
.rnt{border:1px solid var(--line-soft);border-radius:14px;padding:18px;background:linear-gradient(180deg,rgba(204,255,0,.03),transparent)}
.rnt b{display:block;color:var(--lime);font-size:12px;letter-spacing:.08em;margin-bottom:8px}
.rnt p{color:var(--dim);font-size:12.5px}
.tm{font-size:.6em;vertical-align:super;color:var(--faint)}

/* ── doors / vault ── */
.doors{border:1px dashed var(--line);border-radius:var(--r);padding:34px;text-align:center;color:var(--dim);font-size:13.5px;background:rgba(204,255,0,.015)}
.doors b{color:var(--lime)}
.vault-seal{font-size:clamp(60px,10vw,120px);text-align:center;color:var(--lime);text-shadow:0 0 60px rgba(204,255,0,.5);font-family:var(--head);font-weight:700;letter-spacing:.2em;margin:30px 0}
.prophecy{max-width:640px;margin:0 auto;color:var(--dim);font-size:14.5px;line-height:2}
.prophecy b{color:var(--lime)}

/* ── overlays ── */
.overlay{position:fixed;inset:0;z-index:80;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(10,8,4,.62);backdrop-filter:blur(8px)}
.sheet{width:min(640px,94vw);max-height:86vh;display:flex;flex-direction:column;overflow:hidden}
.sheet-bar{display:flex;align-items:center;gap:10px;padding:13px 18px;border-bottom:1px solid var(--line-soft)}
.sheet-bar .x{margin-left:auto;cursor:pointer;background:none;border:1px solid var(--line-soft);color:var(--dim);border-radius:8px;font:inherit;font-size:11px;padding:5px 12px}
.sheet-bar .x:hover{color:var(--lime);border-color:var(--line)}
.console-body{padding:22px;display:grid;gap:12px}
.console-body .memo{border:1px solid var(--line-soft);border-radius:12px;padding:14px 16px;color:var(--dim);font-size:12.5px;background:rgba(204,255,0,.02)}
.deny{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line-soft);border-radius:12px;padding:12px 16px}
.deny button{cursor:pointer;font:inherit;font-size:11px;letter-spacing:.1em;color:#141104;background:var(--lime);border:0;border-radius:8px;padding:8px 14px;transition:transform .1s}
.deny button:active{transform:scale(.95)}
#console-out{min-height:38px;color:var(--danger);font-size:12.5px;padding:6px 2px}
#console-out.flash{animation:flash .5s}
@keyframes flash{0%{opacity:0}100%{opacity:1}}

/* ── boot ── */
#boot{position:fixed;inset:0;z-index:100;background:var(--bg);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:26px}
#boot-log{font-size:13px;line-height:2;color:var(--lime);text-shadow:0 0 14px rgba(204,255,0,.35);min-height:340px;width:min(560px,88vw)}
#boot-skip{cursor:pointer;background:none;font:inherit;font-size:11px;letter-spacing:.2em;color:var(--faint);border:1px solid var(--line-soft);border-radius:99px;padding:8px 18px}
#boot-skip:hover{color:var(--lime);border-color:var(--line)}

/* ── footer ── */
footer{border-top:1px solid var(--line-soft);padding:52px 0 84px;color:var(--faint);font-size:12px;position:relative;z-index:2}
footer .wrap{display:grid;gap:12px;max-width:760px;text-align:center}
footer b{color:var(--dim)}
.reveal{opacity:0;transform:translateY(14px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}

/* ── responsive & a11y ── */
@media(max-width:920px){
  .hero-grid{grid-template-columns:1fr}
  .logo-panel{max-width:420px;margin:0 auto}
  .statrow{grid-template-columns:1fr 1fr}
  .rnt-grid{grid-template-columns:1fr}
  .tx-grid{grid-template-columns:1fr}
  .living{grid-template-columns:1fr 1fr}
  .yr{grid-template-columns:1.6fr 1fr .8fr .5fr;font-size:11.5px}
  .yr .hide-m{display:none}
  #commandments-list{columns:1}
  .nav .pages{display:none}
  .chipline{display:none}
}
@media(prefers-reduced-transparency:reduce){
  .glass,header,.overlay{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--bg2)}
}
@media(prefers-contrast:more){
  :root{--line:rgba(204,255,0,.5);--line-soft:rgba(204,255,0,.3)}
  .tl-dim,.tx p,.rnt p{color:var(--ink)}
}
@media(prefers-reduced-motion:reduce){
  .tl-caret,.logo-tag .cur,.br-live b{animation:none}
  html{scroll-behavior:auto}
  .reveal{opacity:1;transform:none;transition:none}
}

/* ── the fine print (easter-egg disclaimer) ── */
footer{padding:40px 0 56px}
.fineprint{margin-top:10px}
.fineprint summary{cursor:pointer;list-style:none;display:inline-block;font-size:10px;letter-spacing:.08em;color:rgba(242,239,226,.22);border-bottom:1px dotted rgba(242,239,226,.18);padding-bottom:1px;transition:color .15s}
.fineprint summary::-webkit-details-marker{display:none}
.fineprint summary:hover{color:var(--lime-dim)}
.fineprint[open] summary{color:var(--dim)}
.fineprint > div{margin-top:16px;display:grid;gap:10px;animation:fadein .4s ease}
.fineprint p{font-size:11px;color:rgba(242,239,226,.3);max-width:680px;margin:0 auto}
.fineprint p b{color:rgba(242,239,226,.45)}
@keyframes fadein{from{opacity:0;transform:translateY(-4px)}to{opacity:1}}
