:root{--bg:#0a0a0a;--text:#3f3;--text-dim:#1a8c1a;--text-glow:#3f36;--prompt-color:#3f3;--error:#f33;--warn:#ffb000;--info:#3f3;--font:"IBM Plex Mono", "Courier New", Courier, monospace}[data-theme=amber]{--text:#ffb000;--text-dim:#8c6000;--text-glow:#ffb00066;--prompt-color:#ffb000;--info:#ffb000}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);height:100%;color:var(--text);font-family:var(--font);font-size:14px;line-height:1.5;overflow:hidden}#terminal{flex-direction:column;height:100vh;padding:12px 16px;animation:4s infinite flicker;display:flex}#output{scrollbar-width:thin;scrollbar-color:var(--text-dim) transparent;flex:1;padding-bottom:8px;overflow-y:auto}#output::-webkit-scrollbar{width:6px}#output::-webkit-scrollbar-track{background:0 0}#output::-webkit-scrollbar-thumb{background:var(--text-dim);border-radius:3px}.line{white-space:pre-wrap;word-wrap:break-word;text-shadow:0 0 5px var(--text-glow);min-height:1.5em}.line.ascii{white-space:pre;font-weight:700;line-height:1.2}.line.error{color:var(--error);text-shadow:0 0 5px #f336}.line.warn{color:var(--warn);text-shadow:0 0 5px #ffb00066}.line.dim{color:var(--text-dim);text-shadow:none}.line.input-echo{color:var(--text-dim)}.line a{color:var(--text);text-underline-offset:2px;text-decoration:underline}.line a:hover{color:var(--warn)}#input-line{text-shadow:0 0 5px var(--text-glow);align-items:center;padding:4px 0;display:flex}#input-line.hidden{display:none}#prompt{color:var(--prompt-color);white-space:nowrap;-webkit-user-select:none;user-select:none}#input-wrap{flex:1;position:relative}#cmd-input{width:100%;color:var(--text);font-family:var(--font);caret-color:var(--text);text-shadow:0 0 5px var(--text-glow);background:0 0;border:none;outline:none;font-size:14px}#cmd-input::selection{background:var(--text);color:var(--bg)}#mobile-bar{border-top:1px solid var(--text-dim);z-index:100;background:#111;flex-wrap:wrap;justify-content:center;gap:6px;padding:8px;display:none;position:fixed;bottom:0;left:0;right:0}#mobile-bar .pill{border:1px solid var(--text-dim);color:var(--text);font-family:var(--font);cursor:pointer;white-space:nowrap;background:0 0;border-radius:12px;padding:4px 10px;font-size:12px}#mobile-bar .pill:active{background:var(--text);color:var(--bg)}@media (width<=768px){html,body{font-size:13px}#terminal{padding:8px 10px 60px}#mobile-bar{display:flex}}@media (width<=480px){html,body{font-size:12px}}.scanlines{pointer-events:none;z-index:1000;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#00000014 2px 4px);width:100%;height:100%;position:fixed;top:0;left:0}@keyframes flicker{0%,to{opacity:1}50%{opacity:.98}52%{opacity:1}80%{opacity:.97}82%{opacity:1}}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}#terminal:before{content:"";pointer-events:none;z-index:999;position:fixed;inset:0;box-shadow:inset 0 0 80px #0009}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.line{animation:50ms ease-in fadeIn}@keyframes progress{0%{width:0}to{width:100%}}.boot-progress{min-width:200px;display:inline-block}.boot-ok{color:var(--text)}.boot-warn{color:var(--warn)}.boot-fail{color:var(--error)}.login-input{color:var(--text);text-shadow:0 0 5px var(--text-glow)}.skip-hint{color:var(--text-dim);text-shadow:none;font-size:.85em}
