:root{--qb:#0000AA;--gray:#AAAAAA;--cyan:#00AAAA;--yel:#FFFF55;--grn:#55FF55}
html,body{margin:0;background:#000055;color:#ddd;font-family:'IBM Plex Mono',monospace}
body{background:radial-gradient(circle at 50% 0%,#0000AA 0%,#000044 70%,#000 100%) fixed;min-height:100vh}
.vt{font-family:'VT323',monospace}
.blink{animation:bl 1s steps(1) infinite}
@keyframes bl{50%{opacity:0}}
.box{border:4px double var(--gray);background:var(--qb);position:relative}
.box-title{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:var(--qb);padding:0 8px;color:#fff;white-space:nowrap;font-family:'VT323',monospace;font-size:20px}
.dosbtn{background:var(--cyan);color:#000;font-family:'VT323',monospace;font-size:22px;padding:6px 14px;border:none;box-shadow:4px 4px 0 #000;cursor:pointer}
.dosbtn:hover{background:#000;color:var(--cyan)}
.dosbtn:active{transform:translate(2px,2px);box-shadow:2px 2px 0 #000}
.dosbtn:disabled{opacity:.5;cursor:wait}
.mini{background:var(--gray);color:#000;font-family:'VT323',monospace;font-size:18px;padding:0 8px;cursor:pointer;border:none}
.mini:hover{background:#000;color:#fff}
textarea:focus,select:focus{outline:none}
.scan::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:999;background:repeating-linear-gradient(0deg,rgba(0,0,0,.25) 0 1px,transparent 1px 3px);animation:fl .15s infinite}
@keyframes fl{50%{opacity:.85}}
.k{color:#fff;font-weight:700}.s{color:var(--yel)}.c{color:var(--grn)}.n{color:#55FFFF}
.card-in{animation:pop .35s ease-out both}
@keyframes pop{from{opacity:0;transform:translateY(12px)}to{opacity:1}}
.banana{position:fixed;top:40%;left:-100px;font-size:40px;z-index:998;animation:fly 2.5s linear forwards;font-family:'VT323';color:var(--yel)}
@keyframes fly{0%{left:-100px;transform:translateY(0) rotate(0)}50%{transform:translateY(-150px) rotate(360deg)}100%{left:110%;transform:translateY(0) rotate(720deg)}}
pre::-webkit-scrollbar{height:8px;width:8px}pre::-webkit-scrollbar-thumb{background:var(--gray)}