.terminal-launch{cursor:pointer}
.dos-terminal[hidden]{display:none}
.dos-terminal{position:fixed;inset:0;z-index:2147483647;overflow:auto;background:#001500;color:#66ff66;padding:clamp(1.25rem,5vw,4.5rem);font:500 clamp(1rem,2vw,1.55rem)/1.55 "DM Mono","Courier New",monospace;letter-spacing:.03em;text-shadow:0 0 5px #18ff18,0 0 15px rgba(24,255,24,.5);cursor:pointer;isolation:isolate}
.dos-terminal::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.035) 0,rgba(255,255,255,.035) 1px,transparent 2px,transparent 5px),radial-gradient(circle at center,rgba(24,255,24,.08),transparent 72%);mix-blend-mode:screen}
.dos-terminal::after{content:"";position:fixed;inset:0;z-index:3;pointer-events:none;box-shadow:inset 0 0 12vw #000;animation:crt-flicker .12s infinite alternate}
.dos-copy p{margin:0 0 1.25rem}
.dos-command{display:flex;align-items:flex-start;gap:.65ch;cursor:text}
.dos-command span{flex:none}
.dos-command textarea{flex:1;min-width:0;min-height:12rem;resize:none;overflow:hidden;border:0;outline:0;padding:0;background:transparent;color:inherit;caret-color:#66ff66;font:inherit;letter-spacing:inherit;text-shadow:inherit;cursor:text}
.dos-command textarea:focus{animation:caret-glow .8s steps(1,end) infinite}
.dos-exit{position:fixed;right:clamp(1rem,3vw,2rem);bottom:clamp(1rem,3vw,2rem);margin:0;padding:.45rem .7rem;border:1px solid currentColor;background:#001500;font-size:.75rem;letter-spacing:.12em}
.dos-glow{position:fixed;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 49.7%,rgba(102,255,102,.025) 50%,transparent 50.3%)}
body.terminal-open{overflow:hidden}
.boot-screen{cursor:default}
.boot-screen{background:#090008;color:#ff2aa3;text-shadow:0 0 5px #ff1493,0 0 18px rgba(255,20,147,.55)}
.boot-screen::before{background:repeating-linear-gradient(to bottom,rgba(255,42,163,.075) 0,rgba(255,42,163,.075) 1px,transparent 2px,transparent 5px),radial-gradient(circle at center,rgba(255,20,147,.12),transparent 72%)}
.boot-screen::after{box-shadow:inset 0 0 12vw #000}
.boot-screen .dos-glow{background:linear-gradient(90deg,transparent 49.7%,rgba(255,42,163,.055) 50%,transparent 50.3%)}
.boot-screen .boot-start{background:#090008;color:#ff2aa3;box-shadow:5px 5px 0 #ff2aa3}
.boot-screen .boot-start:hover,.boot-screen .boot-start:focus-visible{background:#ff2aa3;color:#090008}
.boot-screen.is-complete{display:none}
.boot-screen.is-launching{animation:boot-launch .1s steps(2,end) 5}
.boot-screen pre{margin:0;white-space:pre-wrap;word-break:break-word;color:inherit;font:inherit}
.boot-badge{position:absolute;top:clamp(1rem,3vw,2rem);right:clamp(1rem,3vw,2rem);border:2px solid currentColor;padding:.35rem .55rem;font-weight:700;transform:rotate(2deg)}
.boot-donki{position:absolute;right:clamp(2rem,8vw,8rem);bottom:clamp(5.5rem,11vw,9rem);width:clamp(155px,25vw,330px);height:auto;filter:drop-shadow(0 0 16px rgba(255,20,147,.72));animation:donki-cartwheel 3.2s cubic-bezier(.45,.05,.55,.95) infinite;transform-origin:center;pointer-events:none}
.boot-start{display:block;margin:2rem 0;border:2px solid currentColor;background:#001500;color:inherit;padding:.8rem 1rem;font:inherit;letter-spacing:.08em;text-shadow:inherit;box-shadow:5px 5px 0 currentColor;cursor:pointer}
.boot-start:hover,.boot-start:focus-visible{background:#66ff66;color:#001500;text-shadow:none;outline:0}
.boot-screen.has-started{cursor:wait}
.boot-meter{position:absolute;left:clamp(1.25rem,5vw,4.5rem);right:clamp(1.25rem,5vw,4.5rem);bottom:clamp(4.25rem,8vw,6rem);height:1rem;border:1px solid currentColor;padding:2px}
.boot-meter i{display:block;width:3%;height:100%;background:currentColor;box-shadow:0 0 12px currentColor;transition:width .22s steps(4,end)}
body.booting{overflow:hidden}
@keyframes caret-glow{50%{caret-color:transparent}}
@keyframes crt-flicker{from{opacity:.78}to{opacity:.95}}
@keyframes boot-launch{50%{filter:brightness(2.4);transform:translateX(3px)}}
@keyframes donki-cartwheel{0%{transform:translateX(0) rotate(-10deg)}25%{transform:translateX(-28px) translateY(-9px) rotate(80deg)}50%{transform:translateX(-56px) rotate(170deg)}75%{transform:translateX(-28px) translateY(-9px) rotate(260deg)}100%{transform:translateX(0) rotate(350deg)}}
@media(prefers-reduced-motion:reduce){.dos-terminal::after,.dos-command textarea:focus{animation:none}}
@media(max-width:650px){.boot-donki{right:1rem;bottom:6rem;width:115px}}
#emergency:not([hidden]){background-size:72px 72px;animation:containment-screen 1.8s linear infinite}
#emergency:not([hidden])>div{animation:containment-panel 1.8s ease-in-out infinite}
#emergency:not([hidden]) h2{animation:containment-blare 1.8s ease-in-out infinite;text-shadow:none}
#emergency:not([hidden]) h2:after{content:"PERSONALITY CONTAINMENT FAILURE";display:block;margin-top:.3em;color:#ff1493;font-size:.38em;letter-spacing:.16em}
@keyframes containment-screen{to{background-position:72px 0}}
@keyframes containment-panel{50%{border-color:#ff1493;box-shadow:18px 18px 0 #fff}}
@keyframes containment-blare{50%{transform:scale(1.035);color:#ffea00;letter-spacing:.015em}}
@media(prefers-reduced-motion:reduce){#emergency:not([hidden]),#emergency:not([hidden])>div,#emergency:not([hidden]) h2{animation:none}}
.containment-panel{width:min(760px,100%);max-height:calc(100svh - 30px);overflow:auto}.extra-captcha{margin-top:24px;background:#fff;color:#090008;border:5px solid #ff1493;padding:18px;text-align:left;box-shadow:9px 9px 0 #ffea00}.extra-captcha header{display:flex;gap:14px;align-items:center;border-bottom:3px solid #090008;padding-bottom:12px}.extra-captcha header span{background:#090008;color:#ff1493;padding:7px 9px;font-weight:900;letter-spacing:.12em}.extra-captcha header b{font-size:.82rem;letter-spacing:.08em}.extra-captcha>p{font-size:.9rem}.captcha-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;background:#090008;border:5px solid #090008}.captcha-grid button{min-height:92px;padding:9px 5px;border:0;background:#ffd5eb;color:#090008;font-size:.68rem;font-weight:900;line-height:1.1}.captcha-grid button span{display:block;font-size:2rem;margin-bottom:6px}.captcha-grid button[aria-pressed="true"]{background:#ff1493;outline:5px solid #ffea00;outline-offset:-7px;transform:scale(.94)}.captcha-verify{width:100%;margin-top:14px!important;background:#090008!important;color:#fff!important;border:0!important}.captcha-error{min-height:2.6em;margin:12px 0!important;color:#b00052;font-weight:900}.robot-confession{display:flex;flex-direction:row!important;align-items:center;gap:10px;border:3px dashed #090008;padding:12px;font-weight:900;text-transform:none}.robot-confession input{width:22px;height:22px;accent-color:#ff1493}.extra-captcha #recover{width:100%;margin-top:12px;background:#ffea00;color:#090008}.extra-captcha #recover:disabled{opacity:.35;cursor:not-allowed}.captcha-shake{animation:captcha-wrong .32s linear}@keyframes captcha-wrong{25%{transform:translateX(-8px) rotate(-.5deg)}50%{transform:translateX(8px) rotate(.5deg)}75%{transform:translateX(-5px)}}
@media(max-width:560px){#emergency{padding:8px}#emergency>div{padding:18px}.containment-panel h2{font-size:1.8rem}.captcha-grid button{min-height:76px;font-size:.56rem}.captcha-grid button span{font-size:1.45rem}.extra-captcha{padding:10px}.extra-captcha header{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.captcha-shake{animation:none}}

.ticker>.terminal-launch{display:flex;align-items:center;align-self:stretch;text-decoration:none}.ticker>.terminal-launch:focus-visible{outline:3px solid #e9ff42;outline-offset:-4px}
