html,body{height:100%}body{background:radial-gradient(1000px 600px at 50% 0%,#1b0b3a 0%,var(--bg) 60%,#02010a 100%);overflow:hidden}.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}.skip-link:focus{left:1rem;top:1rem;width:auto;height:auto;background:#000;color:#fff;padding:.4rem .6rem;border-radius:6px}.container{position:relative;height:100%;padding:2rem;display:flex;align-items:center;justify-content:center}.bg-grid{position:fixed;inset:0;background:linear-gradient(#ff00801f,#00ffff0f),linear-gradient(0deg,transparent 24px,var(--grid) 25px,transparent 26px),linear-gradient(90deg,transparent 24px,var(--grid) 25px,transparent 26px);background-size:100% 100%,100% 26px,26px 100%;filter:saturate(120%) contrast(110%);pointer-events:none}.terminal{width:min(1200px,95%);height:min(85vh,900px);background:linear-gradient(180deg,#ffffff08,#ffffff05),radial-gradient(1200px 260px at 50% -10%,rgba(255,46,166,.1),transparent 60%),var(--bg-2);border:1px solid rgba(108,249,255,.14);border-radius:12px;box-shadow:0 20px 60px var(--shadow),inset 0 0 0 1px #ffffff08;display:flex;flex-direction:column;overflow:hidden}.terminal__titlebar{display:flex;align-items:center;gap:.5rem;padding:.6rem .8rem;border-bottom:1px solid rgba(108,249,255,.12);background:linear-gradient(180deg,#6cf9ff1a,#ff2ea60f);position:relative}.terminal__title{margin-left:.4rem;color:var(--muted);font-size:.9rem}.btn{width:12px;height:12px;border-radius:50%;box-shadow:0 0 8px #0009 inset}.btn--close{background:#ff5f57}.btn--min{background:#ffbd2e}.btn--max{background:#28c940}.terminal__output{flex:1;overflow:auto;padding:1rem;font-size:15px}.terminal__prompt{display:flex;align-items:center;gap:.75rem;padding:.8rem 1rem;border-top:1px solid rgba(108,249,255,.12);background:#02010a99;backdrop-filter:blur(4px)}.prompt__path{color:var(--prompt)}#cmd{flex:1;background:transparent;border:none;outline:none;color:var(--text);font:inherit}#cmd::placeholder{color:#e6e6ff59}.output-line{white-space:pre-wrap}.output-line .ok{color:var(--ok)}.output-line .warn{color:var(--warn)}.output-line .err{color:var(--err)}.output-line a{color:var(--accent-2);text-decoration:none}.output-line a:hover{text-decoration:underline}.banner{color:var(--accent-2);text-shadow:0 0 8px rgba(108,249,255,.5)}.kbd{display:inline-block;padding:.1rem .35rem;border:1px solid rgba(255,255,255,.2);border-radius:4px;font-size:.9em;color:#fff3;background:#fff1}body.alt{--bg: #05040d;--bg-2: #0b0a1a;--grid: rgba(108,249,255,.08);--accent: #6cf9ff;--accent-2: #ff2ea6;--prompt: #ff2ea6}.ascii.corrupted{animation:corruption 3s ease-in-out infinite;text-shadow:1px 0 #ff0040,-1px 0 #00ffff}.corrupted-text{color:var(--err)!important;animation:glitch 2s ease-in-out infinite;text-shadow:1px 0 #ff0040,-1px 0 #00ffff}@keyframes corruption{0%,to{transform:translate(0) scaleX(1);filter:none}10%{transform:translate(2px) scaleX(1.02);filter:hue-rotate(180deg)}20%{transform:translate(-1px) scaleX(.98);filter:invert(1)}30%{transform:translate(1px) scaleX(1.01);filter:hue-rotate(90deg)}40%{transform:translate(-2px) scaleX(.99);filter:none}50%{transform:translate(1px) scaleX(1.01);filter:saturate(2)}60%{transform:translate(0) scaleX(1);filter:brightness(1.5)}70%{transform:translate(-1px) scaleX(1.02);filter:contrast(2)}80%{transform:translate(2px) scaleX(.98);filter:hue-rotate(270deg)}90%{transform:translate(-1px) scaleX(1.01);filter:invert(.5)}}@keyframes glitch{0%,to{transform:translate(0);opacity:1}10%{transform:translate(-2px);opacity:.8}20%{transform:translate(2px);opacity:1}30%{transform:translate(-1px);opacity:.9}40%{transform:translate(1px);opacity:1}50%{transform:translate(0);opacity:.7}60%{transform:translate(-1px);opacity:1}70%{transform:translate(1px);opacity:.9}80%{transform:translate(-2px);opacity:1}90%{transform:translate(1px);opacity:.8}}.terminal__output::-webkit-scrollbar{height:10px;width:10px}.terminal__output::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--accent),var(--accent-2));border-radius:8px}@media(min-width:1201px){.terminal{width:min(1400px,90%);height:min(90vh,1000px)}}@media(max-width:1024px)and (min-width:601px){.terminal{width:min(900px,95%);height:min(75vh,700px)}}@media(max-width:600px){.container{padding:1rem}.terminal{height:80vh;width:100%}.terminal__output{font-size:14px}.ascii{display:none}}
