:root {
  --bg:#05070a; --panel:#0a0f14; --text:#edf4ef; --muted:#819087;
  --accent:#a0ffcd; --accent2:#68bb91; --line:rgba(160,255,205,.15);
  --danger:#ff7e75; --shadow:0 20px 70px rgba(0,0,0,.34);
}
*{box-sizing:border-box} html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:"Space Grotesk",system-ui,sans-serif}
body{overflow-x:hidden} button,input{font:inherit} button{cursor:pointer}.noise,.scanlines{position:fixed;inset:0;pointer-events:none;z-index:90}
.noise{opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}
.scanlines{opacity:.025;background:repeating-linear-gradient(to bottom,transparent 0,transparent 3px,#b9ffd8 4px)}
.screen{display:none;min-height:100vh}.screen.active{display:grid}.dashboard-screen.active{display:block}
#landing{place-items:center;padding:42px;text-align:center;background:radial-gradient(circle at 50% 43%,rgba(70,130,95,.10),transparent 32%),linear-gradient(#05070a,#030507)}
#gate{place-items:center;padding:30px}.landing-copy{max-width:760px}.eyebrow{margin:0 0 10px;letter-spacing:.22em;font:12px "IBM Plex Mono",monospace;color:var(--accent)}
.blink{animation:blink 3.4s steps(1) infinite}h1{margin:0;font-size:clamp(54px,10vw,118px);line-height:.88;letter-spacing:-.065em}.subtitle{margin:18px 0 0;font-size:clamp(18px,2.4vw,28px);color:#b7c8be}
.panel{background:linear-gradient(180deg,rgba(16,22,29,.85),rgba(7,11,15,.91));border:1px solid var(--line);box-shadow:var(--shadow);backdrop-filter:blur(18px)}
.compact{max-width:640px;margin:34px auto 24px;padding:16px 20px;display:grid;grid-template-columns:repeat(3,1fr);text-align:left;gap:14px}.compact span{display:block;color:var(--muted);font:10px "IBM Plex Mono",monospace;letter-spacing:.15em}.compact strong{display:block;margin-top:5px;font:13px "IBM Plex Mono",monospace}.good{color:var(--accent)}
.primary,.ghost,.nav-tab{border:1px solid transparent;padding:14px 20px;letter-spacing:.08em;font-size:12px;font-weight:700;transition:.2s ease}.primary{background:var(--accent);color:#06110b}.primary:hover{transform:translateY(-1px);box-shadow:0 0 30px rgba(160,255,205,.18)}.primary:disabled{opacity:.48;cursor:default;transform:none}.ghost{background:transparent;color:var(--muted);border-color:rgba(255,255,255,.10)}.ghost:hover{color:var(--text);border-color:rgba(255,255,255,.2)}.full{width:100%}.small{padding:8px 12px;font-size:10px}.tiny{font-size:11px;color:#6f8177;margin-top:14px}.muted{color:var(--muted)}.mono{font-family:"IBM Plex Mono",monospace}
.orb-wrap{width:210px;height:210px;position:relative;display:grid;place-items:center;margin-bottom:34px}.orb-core{width:82px;height:82px;border-radius:50%;display:grid;place-items:center;color:var(--accent);font-size:35px;border:1px solid rgba(160,255,205,.24);box-shadow:0 0 45px rgba(160,255,205,.08),inset 0 0 35px rgba(160,255,205,.08);animation:pulse 5.5s ease-in-out infinite}.orb-ring{position:absolute;border-radius:50%;border:1px solid rgba(160,255,205,.13);animation:spin 28s linear infinite}.r1{inset:22px;border-style:dashed}.r2{inset:0;border-color:rgba(160,255,205,.06);animation-duration:41s;animation-direction:reverse}.r1:before,.r2:after{content:"";position:absolute;width:7px;height:7px;background:var(--accent);border-radius:50%;box-shadow:0 0 18px var(--accent)}.r1:before{top:-4px;left:50%}.r2:after{bottom:22px;right:17px}
.card{width:min(460px,calc(100vw - 32px));padding:34px}.auth-card h2{font-size:34px;line-height:1.05;margin:8px 0 12px}.sigil{font-size:44px;color:var(--accent);margin-bottom:18px}label{display:block;margin:28px 0 8px;color:var(--accent);font:11px "IBM Plex Mono",monospace;letter-spacing:.18em}input{width:100%;border:1px solid rgba(160,255,205,.18);background:#06090c;color:var(--text);padding:14px;outline:none;font-family:"IBM Plex Mono",monospace}input:focus{border-color:rgba(160,255,205,.6);box-shadow:0 0 0 3px rgba(160,255,205,.05)}.auth-card .primary{margin-top:12px}.auth-card .ghost{margin-top:10px}
.topbar{min-height:68px;padding:0 180px 0 26px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;border-bottom:1px solid rgba(160,255,205,.10);background:rgba(3,6,8,.90);position:sticky;top:0;z-index:20;backdrop-filter:blur(16px)}.brand-lockup{white-space:nowrap}.brand-mark{color:var(--accent);margin-right:10px}.brand-name{font-weight:700;letter-spacing:.1em;font-size:13px}.top-actions{display:flex;gap:14px;align-items:center;color:var(--muted);font-size:11px}.world-nav{display:flex;justify-content:center;gap:4px}.nav-tab{background:transparent;color:#718077;padding:9px 12px;font:10px "IBM Plex Mono",monospace;border-bottom:1px solid transparent}.nav-tab:hover{color:#bdd1c5}.nav-tab.active{color:var(--accent);border-bottom-color:var(--accent)}
.dashboard-grid{display:grid;grid-template-columns:310px minmax(0,1fr);gap:22px;max-width:1500px;margin:0 auto;padding:22px}.sidebar{padding:24px;height:fit-content;position:sticky;top:90px}.sidebar h2{margin:4px 0 4px;font-size:28px}.identity-number{color:var(--muted);font-size:11px}.cohort-tag{margin-top:9px;padding:7px 8px;border:1px dashed rgba(160,255,205,.13);font-size:9px;color:#607068;line-height:1.4}.divider{height:1px;background:rgba(255,255,255,.08);margin:24px 0}.stat-row{display:flex;justify-content:space-between;font:11px "IBM Plex Mono",monospace;margin:10px 0}.stat-row span{color:var(--muted)}.progress-track{height:7px;background:rgba(255,255,255,.06);margin-top:16px;overflow:hidden}.progress-bar{width:7%;height:100%;background:var(--accent);box-shadow:0 0 18px rgba(160,255,205,.35);transition:width .65s ease}.countdown{font-size:28px;letter-spacing:.05em}
.fragment-mini{width:100%;margin-top:22px;border:1px solid rgba(160,255,205,.12);background:#070b0d;color:var(--text);padding:12px;display:flex;align-items:center;gap:12px;text-align:left}.fragment-mini:hover{border-color:rgba(160,255,205,.32)}.fragment-mini-object{font-size:31px;color:var(--accent);filter:drop-shadow(0 0 12px rgba(160,255,205,.25))}.fragment-mini small{display:block;color:#607068;font:9px "IBM Plex Mono",monospace;letter-spacing:.12em}.fragment-mini strong{display:block;margin-top:3px;color:#badcca;font:11px "IBM Plex Mono",monospace}
.main-column{min-width:0}.world-view{display:none}.world-view.active{display:block}.hero-panel{min-height:300px;padding:32px;display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:center;overflow:hidden;position:relative}.hero-panel h2{font-size:clamp(32px,5vw,62px);letter-spacing:-.04em;line-height:.96;margin:0 0 18px}.hero-panel h2 span{color:var(--accent)}.hero-panel p{max-width:650px}.hero-fragment-wrap{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:230px}.hero-fragment-meta{display:flex;gap:22px;margin-top:18px;color:#65776d;font-size:9px;letter-spacing:.1em}
.fragment-visual{position:relative;width:150px;height:150px;transition:filter .8s ease,transform .8s ease}.fragment-visual.large{width:330px;height:330px}.f-line,.f-core,.f-orbit{position:absolute;left:50%;top:50%;display:block}.f-line{width:62%;height:1px;background:rgba(160,255,205,.62);transform-origin:0 0;box-shadow:0 0 8px rgba(160,255,205,.15)}.f-line.a{transform:rotate(35deg) translateX(-50%)}.f-line.b{transform:rotate(145deg) translateX(-50%)}.f-line.c{transform:rotate(215deg) translateX(-50%)}.f-line.d{transform:rotate(325deg) translateX(-50%)}.f-core{width:10px;height:10px;margin:-5px;border-radius:50%;background:var(--accent);box-shadow:0 0 18px rgba(160,255,205,.75)}.f-orbit{width:84%;height:84%;margin:-42%;border:1px solid rgba(160,255,205,.12);border-radius:50%;animation:spin 18s linear infinite}.f-orbit.two{width:65%;height:65%;margin:-32.5%;border-style:dashed;animation-duration:29s;animation-direction:reverse}.state-dormant{opacity:.48;filter:saturate(.45) brightness(.72)}.state-resonating{opacity:.72;filter:saturate(.8) brightness(.92);animation:fragmentBreath 5.3s ease-in-out infinite}.state-active{opacity:.9;filter:saturate(1) brightness(1.06);animation:fragmentBreath 4.1s ease-in-out infinite}.state-awakened{opacity:1;filter:brightness(1.22) drop-shadow(0 0 18px rgba(160,255,205,.22));animation:fragmentAwake 7.5s ease-in-out infinite}.state-awakened .f-core{box-shadow:0 0 30px rgba(160,255,205,1),0 0 70px rgba(105,220,160,.3)}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:18px;margin:28px 0 14px}.section-head h3{margin:0;font-size:24px}.pill{border:1px solid var(--line);padding:8px 10px;font:10px "IBM Plex Mono",monospace;color:var(--accent)}.missions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.mission{padding:22px;min-height:320px;position:relative;overflow:hidden;transition:.2s ease}.mission:hover{border-color:rgba(160,255,205,.32);transform:translateY(-1px)}.mission-top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.mission-id{color:var(--accent);font-size:10px}.mission h3{margin:4px 0 0;font-size:21px}.reward{color:var(--muted);font:10px "IBM Plex Mono",monospace;white-space:nowrap}.mission p{color:var(--muted);font-size:14px;line-height:1.55}.cipher{margin:24px 0;padding:15px;background:rgba(0,0,0,.28);border:1px dashed rgba(160,255,205,.18);color:var(--accent);text-align:center;letter-spacing:.15em}.text-fragment{letter-spacing:.06em;font-family:"IBM Plex Mono",monospace}.mission-action{display:grid;grid-template-columns:1fr auto;gap:8px}.mission-action input{min-width:0}.mission-btn{padding-inline:15px}.feedback{min-height:20px;margin-bottom:0!important;font-family:"IBM Plex Mono",monospace;font-size:11px!important}.feedback.ok{color:var(--accent)}.feedback.bad{color:var(--danger)}.locked{filter:saturate(.4)}.locked .mission-action,.locked .cipher,.locked p,.locked .mission-top{opacity:.28;pointer-events:none}.lock-overlay{position:absolute;inset:0;z-index:2;display:grid;place-items:center;color:#809087;font:11px "IBM Plex Mono",monospace;letter-spacing:.12em;background:rgba(5,7,10,.42)}.completed{border-color:rgba(160,255,205,.44)}.completed:before{content:"DECODED";position:absolute;top:12px;right:-34px;transform:rotate(40deg);width:130px;text-align:center;background:var(--accent);color:#06110b;padding:4px 0;font:9px "IBM Plex Mono",monospace;font-weight:700}.fragments{display:flex;gap:8px;flex-wrap:wrap;margin:26px 0}.fragments span{border:1px solid rgba(160,255,205,.2);padding:8px 10px;font:11px "IBM Plex Mono",monospace;color:var(--accent)}.reveal{margin-top:14px;padding:28px}.hidden{display:none!important}.reveal-text{color:var(--accent);font-size:clamp(18px,3vw,32px);line-height:1.4}
.fragment-page{min-height:680px;padding:44px;display:grid;grid-template-columns:minmax(360px,.85fr) minmax(0,1.15fr);gap:52px;align-items:center}.fragment-stage{min-height:520px;display:grid;place-items:center;align-content:center;background:radial-gradient(circle at center,rgba(95,190,140,.09),transparent 40%);border-right:1px solid rgba(160,255,205,.08)}.fragment-live-label{margin-top:26px;color:var(--accent);letter-spacing:.18em;font-size:11px}.fragment-details h2{font-size:clamp(48px,6vw,82px);letter-spacing:-.055em;margin:4px 0 18px}.fragment-copy{max-width:680px;color:#9aaba1;font-size:18px;line-height:1.6}.object-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:rgba(160,255,205,.09);border:1px solid rgba(160,255,205,.09);margin:30px 0}.object-grid div{background:#080c10;padding:15px}.object-grid span{display:block;color:#65766c;font-size:9px;letter-spacing:.12em}.object-grid strong{display:block;color:#cfe5d8;font-size:11px;margin-top:7px;font-weight:500}.state-path{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:28px}.state-path div{position:relative;padding-top:21px;color:#58675f}.state-path div:before{content:"";position:absolute;left:6px;right:-14px;top:6px;height:1px;background:rgba(255,255,255,.07)}.state-path div:last-child:before{right:calc(100% - 12px)}.state-path span{position:absolute;top:2px;left:0;width:9px;height:9px;border-radius:50%;background:#25302a;border:1px solid #405047}.state-path strong{display:block;font:9px "IBM Plex Mono",monospace;letter-spacing:.08em}.state-path small{display:block;margin-top:4px;font-size:10px}.state-path div.reached{color:#b9d8c7}.state-path div.reached span{background:var(--accent);border-color:var(--accent);box-shadow:0 0 12px rgba(160,255,205,.45)}
.archive-head{margin-top:4px}.archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.archive-card{padding:24px;min-height:220px}.archive-code{font-size:10px;color:var(--accent)}.archive-card h3{font-size:25px;margin:12px 0 12px}.archive-card p{color:#8c9d93;line-height:1.55}.archive-meta{display:flex;justify-content:space-between;gap:12px;margin-top:32px;padding-top:13px;border-top:1px solid rgba(255,255,255,.07);font-size:9px;color:#65776d}.locked-future{opacity:.42;filter:saturate(.25)}.archive-log{margin-top:14px;padding:24px}.history-list{display:grid;gap:0}.history-item{display:grid;grid-template-columns:160px 1fr auto;gap:20px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:10px}.history-item time{color:#64736b}.history-item strong{color:#b9d8c7}.history-item span{color:#65776d}
.transform-overlay{position:fixed;inset:0;z-index:500;background:rgba(0,3,4,.95);display:none;place-items:center;text-align:center}.transform-overlay.show{display:grid;animation:transformIn 2.4s ease forwards}.transform-object{font-size:105px;color:var(--accent);filter:drop-shadow(0 0 35px rgba(160,255,205,.48));animation:transformObject 2.2s cubic-bezier(.2,.8,.2,1)}.transform-overlay h2{font-size:clamp(44px,8vw,100px);letter-spacing:-.055em;margin:8px 0 0}.transform-overlay .eyebrow{margin-top:28px}
.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);background:#0c1410;color:var(--accent);border:1px solid var(--line);padding:12px 16px;font:11px "IBM Plex Mono",monospace;opacity:0;pointer-events:none;transition:.25s ease;z-index:520}.toast.show{opacity:1;transform:translate(-50%,0)}
.world-audio-btn{position:fixed;top:18px;right:18px;z-index:9999;display:inline-flex;align-items:center;gap:9px;padding:10px 13px;border:1px solid rgba(160,255,205,.28);background:rgba(4,9,7,.9);color:#b9d8c6;font:10px "IBM Plex Mono",monospace;letter-spacing:.11em;box-shadow:0 0 22px rgba(80,180,125,.08);backdrop-filter:blur(12px)}.world-audio-btn:hover{border-color:rgba(160,255,205,.52);color:#ddf5e7}.audio-dot{width:7px;height:7px;border-radius:50%;background:#75847b;transition:.2s}.world-audio-btn.audio-on .audio-dot{background:var(--accent);box-shadow:0 0 14px rgba(160,255,205,.65)}
@keyframes pulse{0%,100%{transform:scale(.98)}50%{transform:scale(1.018)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes blink{0%,93%,100%{opacity:1}94%{opacity:.16}96%{opacity:.72}}@keyframes fragmentBreath{0%,100%{transform:scale(.99)}52%{transform:scale(1.035)}}@keyframes fragmentAwake{0%,100%{transform:rotate(-1deg) scale(.99)}44%{transform:rotate(1deg) scale(1.025)}70%{transform:rotate(0) scale(1.01)}}@keyframes transformIn{0%{opacity:0}12%{opacity:1}78%{opacity:1}100%{opacity:0}}@keyframes transformObject{0%{transform:scale(.6) rotate(-25deg);opacity:.1}35%{transform:scale(1.25) rotate(8deg);opacity:1}55%{transform:scale(.92) rotate(-3deg)}100%{transform:scale(1) rotate(0)}}
@media(max-width:1150px){.topbar{grid-template-columns:auto 1fr;padding-right:170px}.top-actions{display:none}.dashboard-grid{grid-template-columns:1fr}.sidebar{position:static;display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.fragment-mini,.divider,.sidebar>.eyebrow:first-child,.sidebar>h2,.identity-number,.cohort-tag{grid-column:1}.sidebar>.stat-row,.progress-track{grid-column:2}.main-column{min-width:0}.missions,.archive-grid{grid-template-columns:1fr}.fragment-page{grid-template-columns:1fr}.fragment-stage{border-right:0;border-bottom:1px solid rgba(160,255,205,.08);min-height:430px}.state-path{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){#landing{padding:24px}.compact{grid-template-columns:1fr}.world-audio-btn{top:10px;right:10px;padding:9px 10px;font-size:9px}.topbar{padding:64px 14px 12px;grid-template-columns:1fr;gap:12px}.brand-lockup{text-align:center}.world-nav{order:2}.dashboard-grid{padding:12px}.sidebar{display:block}.hero-panel{grid-template-columns:1fr;padding:24px}.hero-fragment-wrap{min-height:190px}.section-head{align-items:flex-start;flex-direction:column}.mission-action{grid-template-columns:1fr}.fragment-page{padding:24px}.fragment-visual.large{width:240px;height:240px}.fragment-stage{min-height:350px}.object-grid{grid-template-columns:1fr}.state-path{grid-template-columns:1fr}.state-path div:before{display:none}.history-item{grid-template-columns:1fr;gap:4px}.archive-meta{flex-direction:column}.world-nav{overflow-x:auto;justify-content:flex-start}}
