:root{color:#e3e8e5;background:#0a0f10;--cyan:#83c8c3;--line:rgba(171,205,201,.24);--muted:#8a9b99;--amber:#b09a70}
body{background:radial-gradient(circle at 68% 12%,#1a3234 0,transparent 37%),radial-gradient(circle at 13% 82%,#2a261e66 0,transparent 29%),#0a0f10}
body:after{content:"";position:fixed;inset:0;pointer-events:none;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.3'/%3E%3C/svg%3E")}
.boot{background:radial-gradient(circle,#18303388,transparent 38%)}
.brand-mark i{font-style:normal;transform:rotate(-45deg)}.brand small,.header-status,.lead{color:#91a5a3}.connection small,.card-copy em{color:#7e9290}
.card{background:rgba(20,31,32,.88);box-shadow:inset 0 1px rgba(255,255,255,.025)}.card:hover{background:rgba(29,46,47,.95)}.card.accent{background:linear-gradient(110deg,#1a3838,#182724);border-color:#82bdb66b}.record-grid article,.question button{background:#121c1ddd}dialog{background:#152021;color:#e1e8e6}
.gate{min-height:100vh;position:relative;display:grid;place-items:center;padding:8vh 8vw;overflow:hidden}.gate:before{content:"";position:absolute;width:min(70vw,760px);height:min(70vw,760px);border:1px solid #8fc7c320;border-radius:50%;box-shadow:0 0 0 90px #77b8b008,0 0 0 180px #77b8b006;right:-18vw;top:-25vw}
.gate-code,.gate-foot{position:absolute;font:9px 'Roboto Mono';letter-spacing:.18em;color:#728886}.gate-code{left:5vw;top:5vh}.gate-foot{bottom:5vh;left:5vw;right:5vw;display:flex;justify-content:space-between}.gate-panel{width:min(840px,88vw);position:relative;z-index:1}.gate-panel>p:first-of-type{color:var(--amber);font:10px 'Roboto Mono';letter-spacing:.2em;margin:22px 0}.gate-signal{display:flex;align-items:center;gap:9px;color:#93aaa7;font:9px 'Roboto Mono';letter-spacing:.18em}.gate-signal i{width:7px;height:7px;background:var(--cyan);border-radius:50%;box-shadow:0 0 12px var(--cyan)}
.gate h1{font-size:clamp(48px,8vw,104px);font-weight:300;line-height:1.1;letter-spacing:.02em;margin:18px 0;color:#dce3e0}.gate h1 em{font-style:normal;color:var(--cyan);text-shadow:0 0 45px #62b7b22c}.gate-rule{width:min(520px,100%);height:1px;background:linear-gradient(90deg,var(--cyan),transparent);margin:35px 0}.gate-question{color:#9aacab;font-size:14px;line-height:2}.gate-actions{display:flex;gap:12px;margin-top:28px}.gate-actions button{min-height:48px;padding:0 24px;cursor:pointer}.gate-actions .enter{display:flex;align-items:center;gap:28px;background:#aacbc6;color:#11191a;border:1px solid #aacbc6}.gate-actions .enter svg{width:18px;fill:none;stroke:#11191a}.gate-actions .about{background:#11191acc;color:#a7b7b5;border:1px solid #82969366}
@media(max-width:720px){.gate{align-items:center;padding:10vh 7vw}.gate h1{font-size:48px}.gate-actions{flex-direction:column}.gate-actions button{justify-content:center}.gate-foot span:first-child{display:none}.gate-foot{justify-content:flex-end}.gate:before{width:115vw;height:115vw;right:-65vw;top:-10vw}}

.boot{transition:opacity .5s ease,filter .5s ease}.boot.boot-fade{opacity:0;filter:blur(5px)}
.boot-message{width:min(620px,86vw);min-height:72px;margin-top:24px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--cyan);font-size:18px;font-weight:300;letter-spacing:.08em;transition:color .25s ease,transform .25s ease}
.boot-message small{display:block;margin-top:10px;color:#6f8987;font-size:12px;font-weight:300;letter-spacing:.06em;line-height:1.6}
.boot-message.is-warning,.boot-message.is-warning small{color:var(--amber)}
.boot-message.is-online{font-size:25px;color:#b5dcda;transform:scale(1.02);text-shadow:0 0 22px #83c8c344}
.boot-message.is-online small{color:#819795;font-size:12px;text-shadow:none}
.boot-num{font-family:'Roboto Mono',monospace;font-size:.88em;color:#6f8584;letter-spacing:.02em}
.is-warning .boot-num{color:#8f7d5c}.boot-message.is-online .boot-num{color:#7c9290}
.boot .loader{margin:17px 0 16px;background:#1d2a2b}.boot .loader span{width:0;animation:none;transition:width .45s cubic-bezier(.2,.7,.2,1)}
.boot .boot-log{color:#667a79}.boot .boot-log b{font-family:'Roboto Mono',monospace;font-size:10px;color:#728b89}.boot .skip{color:#7b8f8d;cursor:pointer}.boot .skip:hover{color:#bdcbc8}
@media(max-width:720px){.boot-message{font-size:15px;min-height:84px}.boot-message small{font-size:10px}.boot-message.is-online{font-size:22px}.boot .loader,.boot .boot-log{width:78vw}}

/* Cinematic boot motion */
.boot-orbit{filter:drop-shadow(0 0 24px #76c5c51a);animation:orbit-breathe 3.8s ease-in-out infinite}
.boot-orbit i:first-child{animation-duration:12s;animation-timing-function:cubic-bezier(.4,0,.2,1)}
.boot-orbit i:nth-child(2){animation-duration:17s;animation-timing-function:linear}
.boot-orbit i:nth-child(3){animation-duration:9s;animation-timing-function:cubic-bezier(.45,.05,.55,.95)}
.core{animation:core-breathe 2.8s ease-in-out infinite}
.boot-message{will-change:opacity,transform,filter;transition:opacity .38s cubic-bezier(.22,.61,.36,1),transform .38s cubic-bezier(.22,.61,.36,1),filter .38s ease,color .4s ease}
.boot-message.text-leave{opacity:0;transform:translateY(-7px);filter:blur(3px)}
.boot-message.text-enter{opacity:0;transform:translateY(8px);filter:blur(3px)}
.boot .loader{position:relative;overflow:visible;height:1px}
.boot .loader:before{content:"";position:absolute;inset:-5px 0;background:linear-gradient(90deg,transparent,#9fd9d10c,transparent);filter:blur(4px)}
.boot .loader span{position:relative;display:block;height:1px;transition:none!important;will-change:width;background:linear-gradient(90deg,#4c8885,#9bd3ce);box-shadow:0 0 7px #79c7c288,0 0 18px #79c7c22c}
.loader-glint{position:absolute;top:-2px;width:5px;height:5px;border-radius:50%;left:calc(var(--progress, 0%) - 2px);background:#c4e6e2;box-shadow:0 0 8px #a3ddd8,0 0 20px #78c9c4;opacity:.7;pointer-events:none}
.boot-log b{font-variant-numeric:tabular-nums;min-width:32px;text-align:right}
@keyframes orbit-breathe{0%,100%{transform:scale(.985);opacity:.82}50%{transform:scale(1.015);opacity:1}}
@keyframes core-breathe{0%,100%{opacity:.62;text-shadow:0 0 7px transparent}50%{opacity:1;text-shadow:0 0 14px #8dd1cc66}}
@media(prefers-reduced-motion:reduce){.boot-orbit,.core{animation:none}.boot-message{transition-duration:.15s}}

/* 500ms terminal handoff */
.terminal-transition{position:fixed;z-index:9999;inset:0;overflow:hidden;background:#000;cursor:pointer;animation:terminal-cover .5s linear forwards}
.transition-line{position:absolute;z-index:3;left:0;top:50%;width:100%;height:2px;background:#7ad6c4;box-shadow:0 0 20px #7ad6c4;transform:scaleX(0);animation:terminal-line .5s linear forwards}
.transition-grid{position:absolute;z-index:2;inset:-20%;background-image:linear-gradient(rgba(122,214,196,.3) 1px,transparent 1px),linear-gradient(90deg,rgba(122,214,196,.3) 1px,transparent 1px);background-size:40px 40px;transform:perspective(500px) rotateX(64deg) scale(.02);opacity:0;animation:terminal-grid .5s linear forwards}
.transition-tear{position:absolute;z-index:4;left:0;width:100%;height:9%;opacity:0;mix-blend-mode:screen;animation:terminal-tear .5s steps(2,end) forwards}.tear-a{top:31%;background:rgba(255,25,25,.32)}.tear-b{top:56%;background:rgba(20,110,255,.34);animation-direction:reverse}
@keyframes terminal-line{0%{transform:scaleX(0) scaleY(1)}20%{transform:scaleX(1) scaleY(1)}60%{transform:scaleX(1) scaleY(600);opacity:1}90%,100%{transform:scaleX(1) scaleY(600);opacity:0}}
@keyframes terminal-grid{0%,19%{opacity:0;transform:perspective(500px) rotateX(64deg) scale(.02)}22%{opacity:.3}60%{opacity:.04;transform:perspective(500px) rotateX(0) scale(1)}100%{opacity:.04;transform:perspective(500px) rotateX(0) scale(1)}}
@keyframes terminal-tear{0%,59%{opacity:0;transform:translateX(0)}62%{opacity:.8;transform:translateX(-5px)}72%{opacity:.55;transform:translateX(4px)}90%,100%{opacity:0;transform:translateX(0)}}
@keyframes terminal-cover{0%,89%{opacity:1}100%{opacity:0}}
@media(prefers-reduced-motion:reduce){.terminal-transition{display:none}}

/* Terminal depth system */
.shell{position:relative;isolation:isolate;background:#050a0a;--terminal-warm:#d4a24a;overflow:hidden}
.shell:before{content:"";position:fixed;z-index:0;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 46%,rgba(255,255,255,.06),transparent 58%),radial-gradient(ellipse at center,transparent 42%,rgba(0,0,0,.52) 100%)}
.shell:after{content:"";position:fixed;z-index:4;left:0;right:0;top:-12vh;height:1px;pointer-events:none;background:#7ad6c4;opacity:.36;box-shadow:0 0 8px #7ad6c4,0 7px 22px rgba(122,214,196,.1);mix-blend-mode:screen;animation:terminal-scan 8s linear infinite}
.shell header,.shell .dashboard,.shell footer{position:relative;z-index:1}
.shell header,.shell footer{background:#050a0ae8;border-color:rgba(122,214,196,.10)}
.shell .hero,.shell .module-section{background:#0d1614}
.shell .hero{padding-right:4vw;margin-top:18px;border:1px solid rgba(122,214,196,.08)}
.shell .module-section{margin:12px 0 30px;padding:22px}
.shell .card{overflow:hidden;background:#101c1a;border:1px solid rgba(122,214,196,.14);transition:transform 200ms ease,border-color 200ms ease,background-color 200ms ease,filter 200ms ease}
.shell .card:before{content:"";position:absolute;z-index:2;left:0;top:12px;bottom:12px;width:2px;background:#7ad6c4;opacity:0;transform:scaleY(.35);transition:opacity 200ms ease,transform 200ms ease}
.shell .card:hover{background:#182723;border-color:rgba(122,214,196,.45);transform:translateY(-2px)}
.shell .card:hover:before{opacity:1;transform:scaleY(1)}
.shell .scanner:before{content:"";position:absolute;z-index:-1;width:840px;height:840px;border-radius:50%;background:radial-gradient(circle,rgba(122,214,196,.12) 0,rgba(122,214,196,.055) 28%,transparent 62%);pointer-events:none}
.shell .scan-rings i:first-child{animation:outer-ring-pulse 6s ease-in-out infinite}
.shell .card.locked{opacity:.55;filter:saturate(.35);background-color:#101816;background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.03) 0,rgba(255,255,255,.03) 1px,transparent 1px,transparent 8px)}
.shell .card.locked .icon{border-color:rgba(212,162,74,.35)}.shell .card.locked .icon svg{stroke:var(--terminal-warm)}.shell .card.locked .card-copy b,.shell .card.locked .card-copy em{color:var(--terminal-warm)}
.shell .warning,.shell .header-status .abnormal{color:var(--terminal-warm)}
@keyframes outer-ring-pulse{0%,100%{opacity:.28;box-shadow:0 0 6px transparent}50%{opacity:.82;box-shadow:0 0 18px rgba(122,214,196,.16)}}
@keyframes terminal-scan{0%{transform:translateY(-12vh);opacity:0}4%{opacity:.34}96%{opacity:.34}100%{transform:translateY(124vh);opacity:0}}
@media(max-width:720px){.shell .hero{padding-right:0}.shell .module-section{padding:16px}.shell .scanner:before{width:560px;height:560px}}
