:root{
  --bg:#050403;
  --bg2:#0c0804;
  --panel:rgba(14,9,4,.74);
  --orange:#ff8a00;
  --orange2:#ffb21a;
  --cream:#ffe0a3;
  --text:#f5ead8;
  --muted:#a88f72;
  --line:rgba(255,154,28,.20);
  --line2:rgba(255,255,255,.08);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{margin:0;background:var(--bg);color:var(--text);font-family:"Courier New",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;overflow-x:hidden}
body.loading{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
::selection{background:var(--orange);color:#111}

.loader{position:fixed;inset:0;z-index:9999;background:#030201;display:grid;place-items:center;transition:opacity .7s ease,visibility .7s ease}
.loader.hidden{opacity:0;visibility:hidden;pointer-events:none}
.loader-noise{position:absolute;inset:0;opacity:.08;background-image:repeating-radial-gradient(circle at 30% 20%,#fff 0 1px,transparent 1px 3px);background-size:8px 8px;animation:noise .25s steps(2) infinite}
.loader-core{width:min(520px,82vw);position:relative}
.loader-mark{font-family:Arial,sans-serif;font-weight:900;font-size:64px;color:var(--orange);filter:drop-shadow(0 0 18px rgba(255,136,0,.45));animation:markPulse 1.5s ease-in-out infinite}
.loader-title{font-size:clamp(28px,5vw,52px);font-weight:900;letter-spacing:.14em;margin-top:12px}
.loader-sub{margin-top:10px;color:var(--muted);font-size:11px;letter-spacing:.2em;text-transform:uppercase;min-height:18px}
.loader-track{height:2px;background:#2a1708;margin-top:28px;overflow:hidden}
.loader-track span{display:block;height:100%;width:0;background:linear-gradient(90deg,#ff6800,#ffb21a);box-shadow:0 0 18px var(--orange)}
.loader-meta{display:flex;justify-content:space-between;margin-top:10px;font-size:9px;letter-spacing:.18em;color:#7c654c}
@keyframes markPulse{50%{transform:scale(.96);opacity:.68}}
@keyframes noise{0%{transform:translate(0)}25%{transform:translate(1px,-1px)}50%{transform:translate(-1px,1px)}100%{transform:translate(0)}}

#dust{position:fixed;inset:0;z-index:3;pointer-events:none;opacity:.55}
.scanlines{position:fixed;inset:0;z-index:100;pointer-events:none;opacity:.07;background:repeating-linear-gradient(to bottom,transparent 0 3px,#ff9a1c 4px)}
.vignette{position:fixed;inset:0;z-index:99;pointer-events:none;background:radial-gradient(circle at center,transparent 48%,rgba(0,0,0,.42) 100%)}
.cursor-glow{position:fixed;width:360px;height:360px;border-radius:50%;z-index:2;pointer-events:none;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(255,136,0,.07),transparent 65%);mix-blend-mode:screen}

.topbar{position:fixed;top:0;left:0;right:0;z-index:200;height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;border-bottom:1px solid transparent;transition:.3s ease;background:linear-gradient(to bottom,rgba(3,2,1,.72),transparent);backdrop-filter:blur(0)}
.topbar.scrolled{height:60px;background:rgba(4,3,2,.88);backdrop-filter:blur(14px);border-color:var(--line)}
.brand{display:flex;align-items:center;gap:10px;font-weight:900;letter-spacing:.12em;font-size:14px}
.brand>span:last-child>span{color:var(--orange)}
.brand-coin{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--orange);border-radius:50%;color:var(--orange);font-family:Arial,sans-serif;font-weight:900;box-shadow:0 0 18px rgba(255,136,0,.15)}
.nav{display:flex;gap:28px;font-size:10px;letter-spacing:.18em;color:#bca88f}
.nav a{position:relative;padding:8px 0}
.nav a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--orange);transition:.25s}
.nav a:hover{color:#fff}.nav a:hover:after{width:100%}
.signal-btn{background:transparent;color:var(--text);border:1px solid var(--line);padding:9px 13px;font-size:9px;letter-spacing:.16em;cursor:pointer}
.signal-btn span{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--orange);box-shadow:0 0 10px var(--orange);margin-right:8px;animation:blink 1.3s infinite}
@keyframes blink{50%{opacity:.15}}

.hero{height:100svh;min-height:720px;position:relative;display:flex;align-items:center;overflow:hidden;border-bottom:1px solid var(--line)}
.hero-bg{position:absolute;inset:-3%;background:linear-gradient(90deg,rgba(2,1,0,.16) 0%,rgba(2,1,0,.18) 35%,rgba(2,1,0,.05) 70%),url('assets/room.png') center/cover no-repeat;transform:scale(1.04)}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,2,1,.25),transparent 52%),linear-gradient(to top,rgba(3,2,1,.95),transparent 35%);z-index:1}
.hero-grid{position:absolute;inset:0;z-index:1;opacity:.12;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(90deg,#000,transparent 75%)}
.hero-content{position:relative;z-index:4;width:min(760px,56vw);margin-left:6vw;margin-top:4vh}
.eyebrow,.kicker{font-size:10px;letter-spacing:.22em;color:var(--orange2);text-transform:uppercase}
.pulse-dot{display:inline-block;width:6px;height:6px;background:var(--orange);border-radius:50%;box-shadow:0 0 14px var(--orange);margin-right:9px}
.hero h1,.section h2,.final-copy h2{font-family:Arial,Helvetica,sans-serif;font-size:clamp(52px,7vw,112px);line-height:.84;letter-spacing:-.055em;margin:22px 0 24px;font-weight:950;text-transform:uppercase}
.hero h1 em{font-style:normal;color:transparent;-webkit-text-stroke:1px var(--orange);text-shadow:0 0 30px rgba(255,136,0,.08)}
.hero-copy{max-width:520px;color:#c4ac91;font-size:14px;line-height:1.8;margin:0}
.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:34px}
.btn{border:1px solid var(--line);padding:13px 16px;background:rgba(7,4,2,.58);color:var(--text);font-size:10px;letter-spacing:.14em;cursor:pointer;transition:.25s;backdrop-filter:blur(10px)}
.btn.primary{background:var(--orange);border-color:var(--orange);color:#130a02;font-weight:900;box-shadow:0 8px 30px rgba(255,136,0,.18)}
.btn:hover{transform:translateY(-2px);border-color:var(--orange);box-shadow:0 0 22px rgba(255,136,0,.15)}
.whisper{height:20px;margin-top:20px;font-family:Georgia,serif;font-style:italic;color:#d8c2a5;opacity:0;transform:translateY(4px);transition:.3s}.whisper.show{opacity:1;transform:none}
.hero-side{position:absolute;z-index:4;right:3.5vw;top:50%;transform:translateY(-20%);display:flex;gap:18px;align-items:stretch}
.vertical-label{writing-mode:vertical-rl;transform:rotate(180deg);font-size:8px;letter-spacing:.22em;color:#806a52;border-left:1px solid var(--line);padding-left:12px}
.status-card{width:220px;background:rgba(6,4,2,.56);border:1px solid var(--line);backdrop-filter:blur(12px);padding:6px 14px}
.status-card div{display:flex;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid var(--line2)}.status-card div:last-child{border:0}
.status-card span{font-size:8px;color:#8e755d;letter-spacing:.14em}.status-card strong{font-size:8px;color:#ead6b9;letter-spacing:.09em;text-align:right}
.scroll-hint{position:absolute;z-index:4;bottom:28px;left:6vw;font-size:8px;letter-spacing:.2em;color:#7f6952}.scroll-hint span{color:var(--orange);margin-left:8px}

.section{position:relative;padding:120px 6vw;border-bottom:1px solid var(--line);background:var(--bg)}
.section-index{position:absolute;top:30px;right:4vw;font-size:9px;color:#604d3c;letter-spacing:.18em}
.lore-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:5vw;align-items:center}
.section h2{font-size:clamp(44px,6vw,88px);margin:18px 0 30px}
.section h2 span,.final-copy h2 span{color:var(--orange)}
.lore-copy p{max-width:610px;color:#a99379;font-size:13px;line-height:1.95}.lore-copy b{color:#f4dec0}
blockquote{margin:30px 0 0;padding:18px 20px;border-left:2px solid var(--orange);background:linear-gradient(90deg,rgba(255,136,0,.08),transparent);font-family:Georgia,serif;font-size:16px;line-height:1.6;color:#e7d6bd;font-style:italic}
.lore-visual{position:relative;border:1px solid var(--line);overflow:hidden;box-shadow:0 28px 70px rgba(0,0,0,.38)}
.lore-visual img{width:100%;display:block;filter:saturate(.88) contrast(1.06)}
.lore-visual:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 80px #000;pointer-events:none}
.image-tag{position:absolute;bottom:12px;left:12px;background:rgba(0,0,0,.7);border:1px solid var(--line);padding:8px 10px;font-size:8px;letter-spacing:.14em;color:#b69c7d}

.persona{background:radial-gradient(circle at 18% 50%,rgba(255,136,0,.07),transparent 32%),#050403}
.persona-wrap{display:grid;grid-template-columns:.7fr 1.3fr;gap:7vw;align-items:center}
.persona-card{position:relative;max-width:520px;aspect-ratio:1/1;border:1px solid var(--line);overflow:hidden;background:#130b04;box-shadow:0 30px 80px rgba(0,0,0,.38)}
.persona-card img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.9) contrast(1.08)}
.persona-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(4,2,1,.95),transparent 48%)}
.persona-id{position:absolute;left:24px;right:24px;bottom:22px;display:grid;gap:4px}.persona-id span{font-size:8px;color:var(--orange);letter-spacing:.2em}.persona-id strong{font-family:Arial,sans-serif;font-size:27px;letter-spacing:.02em}.persona-id small{color:#967c61;font-size:9px;letter-spacing:.12em}
.traits h2{font-size:clamp(40px,5vw,74px)}
.trait-list{border-top:1px solid var(--line)}
.trait-list article{display:grid;grid-template-columns:52px 1fr;gap:18px;padding:18px 0;border-bottom:1px solid var(--line2);transition:.25s}.trait-list article:hover{padding-left:8px;background:linear-gradient(90deg,rgba(255,136,0,.05),transparent)}
.trait-num{font-size:9px;color:var(--orange);padding-top:5px}.trait-list h3{margin:0 0 7px;font-family:Arial,sans-serif;font-size:18px}.trait-list p{margin:0;color:#937b62;font-size:11px;line-height:1.7}

.rules{padding-top:70px;padding-bottom:90px;background:#080502}
.rule-strip{display:flex;align-items:center;justify-content:center;gap:20px;white-space:nowrap;overflow:hidden;border:1px solid var(--line);padding:15px;color:#ae9477;font-size:9px;letter-spacing:.2em}.rule-strip span:nth-child(1){color:var(--orange)}.rule-strip i{width:4px;height:4px;background:#5c4027;transform:rotate(45deg);flex:none}
.principles{display:grid;grid-template-columns:repeat(3,1fr);margin-top:56px;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.principle{padding:40px 32px 44px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:220px}.principle>span{font-family:Georgia,serif;color:var(--orange);font-size:22px}.principle h3{font-family:Arial,sans-serif;margin:35px 0 12px;font-size:18px;letter-spacing:-.01em}.principle p{margin:0;color:#876f58;font-size:11px;line-height:1.7}

.archive{overflow:hidden}.archive-head{display:flex;justify-content:space-between;gap:5vw;align-items:end}.archive-head p{max-width:400px;color:#8b745d;font-size:11px;line-height:1.8;margin-bottom:35px}.archive-head h2{margin-bottom:0}
.archive-image{position:relative;margin-top:64px;border:1px solid var(--line);overflow:hidden;background:#100802}.archive-image img{width:100%;display:block;filter:saturate(.76) contrast(1.12);transform:scale(1.002);transition:filter .5s,transform 1.8s}.archive-image:hover img{filter:saturate(1) contrast(1.08);transform:scale(1.018)}
.archive-image:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 120px rgba(0,0,0,.8);pointer-events:none}.archive-scan{position:absolute;z-index:3;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--orange),transparent);box-shadow:0 0 16px var(--orange);animation:scan 5s linear infinite;opacity:.65}@keyframes scan{0%{top:0}100%{top:100%}}

.oracle{background:radial-gradient(circle at 80% 45%,rgba(255,136,0,.07),transparent 35%),#050403}.oracle-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:6vw;align-items:center}.oracle-intro p{color:#987e63;max-width:470px;font-size:12px;line-height:1.8}.oracle-commands{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}.oracle-commands button{background:#0b0704;border:1px solid var(--line);color:#b69b7d;padding:8px 10px;font-size:9px;cursor:pointer}.oracle-commands button:hover{border-color:var(--orange);color:var(--orange)}
.terminal{border:1px solid var(--line);background:rgba(5,3,2,.85);box-shadow:0 30px 90px rgba(0,0,0,.55),0 0 50px rgba(255,136,0,.04);min-height:510px;display:flex;flex-direction:column;position:relative;overflow:hidden}.terminal:before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(255,136,0,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(255,136,0,.028) 1px,transparent 1px);background-size:28px 28px;pointer-events:none}.terminal-bar{height:43px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 14px;font-size:8px;letter-spacing:.15em;color:#80684f;position:relative;z-index:2}.dots{display:flex;gap:5px}.dots i{width:7px;height:7px;border:1px solid #5c412b;border-radius:50%}.dots i:first-child{background:#6d3613}.terminal-status{text-align:right;color:#bd7d36}.terminal-body{flex:1;padding:24px;overflow:auto;max-height:410px;position:relative;z-index:2;scrollbar-width:thin;scrollbar-color:#633913 transparent}.line{font-size:10px;line-height:1.7}.line.system{color:#5f4d3c}.message{margin-top:22px;max-width:86%}.message b{font-size:8px;letter-spacing:.18em;color:var(--orange)}.message p{margin:7px 0 0;color:#e0c9aa;font-family:Georgia,serif;font-size:15px;line-height:1.65}.message.user{margin-left:auto;border-right:1px solid var(--orange);padding-right:12px;text-align:right}.message.user b{color:#8d745b}.message.user p{font-family:inherit;font-size:11px;color:#9c856a}
.terminal-input{height:55px;border-top:1px solid var(--line);display:flex;align-items:center;gap:10px;padding:0 14px;position:relative;z-index:2}.terminal-input>span{color:var(--orange)}.terminal-input input{flex:1;background:transparent;border:0;outline:0;color:#e4d2b7;font-size:11px}.terminal-input input::placeholder{color:#56483a}.terminal-input button{border:0;background:transparent;color:var(--orange);font-size:9px;letter-spacing:.16em;cursor:pointer}

.final-room{height:78vh;min-height:620px;position:relative;display:grid;place-items:center;text-align:center;overflow:hidden}.final-bg{position:absolute;inset:0;background:linear-gradient(rgba(3,2,1,.35),rgba(3,2,1,.85)),url('assets/banner.png') center/cover no-repeat;filter:saturate(.74)}.final-room:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at center,transparent,rgba(0,0,0,.65))}.final-copy{position:relative;z-index:2;max-width:850px;padding:0 4vw}.small-btc{font-family:Arial,sans-serif;font-size:32px;color:var(--orange);filter:drop-shadow(0 0 18px rgba(255,136,0,.45))}.final-copy h2{font-size:clamp(42px,6vw,78px);margin:20px 0}.final-copy p{color:#b59d80;font-family:Georgia,serif;font-style:italic;margin:0 0 26px}

footer{height:90px;padding:0 4vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-top:1px solid var(--line);background:#030201}.foot-center{font-size:8px;letter-spacing:.17em;color:#5c4b3a;text-align:center}.foot-right{text-align:right;color:#7d5f42;font-size:9px;letter-spacing:.13em}
.signal-panel{position:fixed;right:28px;bottom:28px;z-index:400;width:min(340px,calc(100vw - 32px));border:1px solid var(--line);background:rgba(6,4,2,.94);padding:24px;box-shadow:0 30px 80px rgba(0,0,0,.65),0 0 60px rgba(255,136,0,.06);backdrop-filter:blur(15px);transform:translateY(25px);opacity:0;visibility:hidden;transition:.3s}.signal-panel.open{transform:none;opacity:1;visibility:visible}.signal-panel>button{position:absolute;right:10px;top:8px;border:0;background:none;color:#806a52;font-size:20px;cursor:pointer}.panel-label{font-size:8px;letter-spacing:.2em;color:#8c7357}.signal-mark{font-family:Arial,sans-serif;font-size:34px;color:var(--orange);margin:18px 0 12px}.signal-panel p{font-family:Georgia,serif;color:#dfc7a7;line-height:1.6}.signal-panel small{color:#5f4f3e;font-size:8px;letter-spacing:.13em}

.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.12s}.delay-2{transition-delay:.24s}

@media(max-width:1050px){
  .hero-content{width:70vw}.hero-side{display:none}.lore-grid,.persona-wrap,.oracle-grid{grid-template-columns:1fr}.persona-card{max-width:640px}.oracle-grid{gap:60px}.principles{grid-template-columns:1fr}.archive-head{align-items:start;flex-direction:column}.archive-head p{margin:0}.nav{display:none}
}
@media(max-width:700px){
  .topbar{padding:0 18px}.signal-btn{padding:8px}.hero{min-height:760px}.hero-bg{background-position:67% center}.hero-content{width:auto;margin:10vh 22px 0}.hero:after{background:linear-gradient(90deg,rgba(3,2,1,.65),rgba(3,2,1,.20)),linear-gradient(to top,rgba(3,2,1,.98),transparent 45%)}.hero h1{font-size:14vw}.hero-copy{font-size:12px;max-width:85%}.hero-actions{gap:7px}.btn{font-size:8px;padding:12px}.scroll-hint{left:22px}.section{padding:90px 22px}.section h2{font-size:12vw}.lore-grid,.persona-wrap,.oracle-grid{gap:44px}.principle{padding:28px 22px}.rule-strip{justify-content:flex-start;overflow:auto}.terminal{min-height:480px}.terminal-body{padding:18px}.archive-image{margin-top:38px}.final-copy h2{font-size:10vw}footer{height:auto;min-height:120px;padding:25px 22px;grid-template-columns:1fr auto}.foot-center{display:none}.signal-panel{right:16px;bottom:16px}.cursor-glow{display:none}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
