:root{color-scheme:dark;--ink:#c9c1ff;--muted:#9e96cd;--background:#121020;--screen:#30277b;--border:#8c80d9;--accent:#f4c37d;font-family:"Courier New",Courier,monospace;font-synthesis:none}
*{box-sizing:border-box}
body{margin:0;background:var(--background);color:var(--ink);min-width:280px;-webkit-font-smoothing:antialiased}
body::before{position:fixed;inset:0;content:"";pointer-events:none;background:radial-gradient(ellipse at 50% 40%,#30225838,transparent 65%);z-index:-1}
button,a{-webkit-tap-highlight-color:transparent}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:6px}
.page{max-width:1280px;margin:0 auto;padding:36px 60px 24px;min-height:100svh;display:flex;flex-direction:column}
.masthead{display:flex;align-items:center;justify-content:space-between;font-size:12px;letter-spacing:1.2px;gap:20px}
.wordmark{font-weight:700;white-space:nowrap;display:flex;align-items:center;gap:9px}
.brand-mark{color:var(--accent);font-size:22px;line-height:1}
.wordmark-separator{color:#645c85;font-weight:400;margin:0 5px}
.lab-name{color:var(--muted);font-weight:400}
main{margin:auto 0;padding:64px 0 46px}
.computer{padding:22px 22px 0;background:var(--border);box-shadow:0 4px 0 #5a509b,0 16px 0 4px #0b0912,0 28px 55px #0005;border:1px solid #b5aafa;border-radius:5px}
.screen{position:relative;isolation:isolate;background:var(--screen);padding:28px 30px 22px;border:2px solid #6558b1;box-shadow:inset 0 0 65px #10083f42;overflow:hidden;text-shadow:0 0 8px #c3baff24;font-weight:700;letter-spacing:.3px}
.screen::after{position:absolute;inset:0;content:"";pointer-events:none;z-index:2;background:repeating-linear-gradient(0deg,#0c062210 0px,#0c062210 1px,transparent 1px,transparent 4px);opacity:.7}
.boot-heading{text-align:center;font-size:18px;letter-spacing:.8px;margin-bottom:14px}
.memory{display:flex;justify-content:center;gap:28px;margin:0 0 36px;font-size:13px;line-height:1.5}
.boot-copy{font-size:13px;line-height:1.6}
.boot-copy p{margin:0}.boot-copy p:first-child{margin-bottom:12px}.boot-copy span{color:#e0d9ff}
.marquee-window{margin:27px -30px 26px;overflow:hidden;padding:0 0 8px;position:relative}
.marquee-rule{white-space:pre;font-size:13px;line-height:1;letter-spacing:0;opacity:.64;padding-left:30px;overflow:hidden}
.lower-rule{padding-left:30px}
.marquee-track{display:flex;width:max-content;animation:scroll 34s linear infinite;will-change:transform;padding:25px 0 21px}
.ascii{font-family:"Courier New",Courier,monospace;font-size:15px;line-height:1.12;font-weight:700;letter-spacing:0;white-space:pre;margin:0;flex:none;color:#e1d9ff;text-shadow:2px 2px 0 #1b1457,0 0 16px #c9b8ff28}
.fallback{padding:12px 30px;letter-spacing:4px;font-size:26px}
.run-line{font-size:14px;display:flex;align-items:center;gap:12px}
.cursor{display:inline-block;width:10px;height:17px;background:var(--ink);animation:blink 1.2s steps(1) infinite}
.computer-footer{height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 7px;color:#27205e}
.model{font-size:19px;font-weight:700;display:flex;align-items:center;letter-spacing:-1px}
.model-number{font-size:22px;margin-left:1px}.rainbow{display:flex;margin-left:14px;width:43px;height:12px;transform:skew(-25deg);overflow:hidden}.rainbow i{width:11px;background:#f1988d}.rainbow i:nth-child(2){background:#f4c37d}.rainbow i:nth-child(3){background:#a6d5b2}.rainbow i:nth-child(4){background:#acc5ee}
.power{display:flex;align-items:center;gap:9px;font-size:9px;letter-spacing:1.2px;font-weight:700}.power-light{width:6px;height:6px;background:#eb9d7a;box-shadow:0 0 5px #ffcca2;border:1px solid #ce7957}
.below-screen{display:flex;align-items:center;justify-content:flex-end;margin:28px 4px 0}
button{font:inherit;background:transparent;color:var(--ink);border:1px solid #51496d;padding:12px 14px;display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.7px;cursor:pointer;border-radius:2px;min-height:42px;white-space:nowrap;transition:background .15s,border-color .15s}
button:hover{background:#ffffff08;border-color:var(--border)}button[hidden]{display:none}.button-icon{font-size:14px;color:var(--accent);width:12px;text-align:center}.keyboard-hint{border:1px solid #51496d;padding:3px 4px;margin-left:10px;color:var(--muted);font-size:8px;letter-spacing:.3px}
.page-footer{padding-top:20px;border-top:1px solid #29243c;color:var(--muted);font-size:9px;letter-spacing:.7px;line-height:1.8}
.paused .marquee-track,.paused .cursor{animation-play-state:paused}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@keyframes scroll{to{transform:translateX(-50%)}}
@keyframes blink{0%,49%{opacity:1}50%,100%{opacity:0}}
@media(min-width:1500px){main{padding-top:80px;padding-bottom:70px}.screen{padding-top:36px;padding-bottom:28px}.marquee-track{padding-top:34px;padding-bottom:30px}}
@media(max-width:800px){.page{padding:28px 28px 22px}main{padding:48px 0 40px}.screen{padding:24px 21px 20px}.computer{padding:16px 16px 0}.boot-heading{font-size:16px}.memory{font-size:11px;gap:18px;margin-bottom:30px}.marquee-window{margin-left:-21px;margin-right:-21px}.marquee-rule{padding-left:21px}.ascii{font-size:14px}.keyboard-hint{display:none}}
@media(max-width:560px){.page{padding:24px 16px 20px}.masthead{font-size:10px;letter-spacing:.7px}.wordmark{gap:6px}.wordmark-separator{margin:0 2px}main{padding:42px 0 36px}.computer{padding:12px 12px 0;border-radius:3px;box-shadow:0 3px 0 #5a509b,0 10px 0 3px #0b0912,0 20px 32px #0004}.screen{padding:24px 14px 20px}.boot-heading{font-size:12px;letter-spacing:.1px;margin-bottom:12px}.memory{font-size:9px;gap:8px;flex-wrap:wrap;margin-bottom:30px}.boot-copy{font-size:10px;line-height:1.75;letter-spacing:0}.marquee-window{margin:25px -14px 23px}.marquee-rule{font-size:10px;padding-left:14px}.marquee-track{padding-top:25px;padding-bottom:23px}.ascii{font-size:12px}.computer-footer{height:41px;padding:0 3px}.model{font-size:16px}.model-number{font-size:18px}.rainbow{width:34px;height:10px;margin-left:10px}.power{font-size:8px}.below-screen{margin-top:24px}button{font-size:8px;padding:9px 10px;gap:7px;min-height:36px}.button-icon{font-size:12px}.page-footer{padding-top:16px;font-size:8px}}
@media(prefers-reduced-motion:reduce){.marquee-track,.cursor{animation:none}.marquee-track{transform:none}button{transition:none}}
