:root{--c-primary: #00ff41;--c-accent: #00ffaa;--c-dim: #005500;--c-error: #ff3333;--c-bg-terminal: rgba(0, 0, 0, .82);--c-bg-page: #000000;--c-border: #002200;--c-separator: #003300;--c-link: #ffb000;--c-matrix: #00ff41;--c-matrix-head: #ccffcc;--font-mono: "Courier New", "Lucida Console", monospace}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden;background:var(--c-bg-page);font-family:var(--font-mono);font-size:14px;line-height:1.5}#matrix-canvas{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:0;pointer-events:none}@media(max-width:767px){#matrix-canvas{opacity:.5}}#terminal{position:relative;z-index:1;width:100vw;height:var(--vvh, 100svh);height:var(--vvh, 100vh);display:flex;flex-direction:column;background:var(--c-bg-terminal);color:var(--c-primary);overflow:hidden;padding-bottom:env(safe-area-inset-bottom,0);transition:background .3s ease,color .3s ease}#output{flex:1 1 auto;overflow-y:auto;padding:20px 24px 12px;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;touch-action:pan-y}#output::-webkit-scrollbar{width:6px}#output::-webkit-scrollbar-track{background:transparent}#output::-webkit-scrollbar-thumb{background:var(--c-border);border-radius:3px}#output::-webkit-scrollbar-thumb:hover{background:var(--c-separator)}#output{scrollbar-width:thin;scrollbar-color:var(--c-border) transparent}.output-line{white-space:pre-wrap;word-break:break-word;margin:0;padding:1px 0;color:var(--c-primary)}.output-line.command-echo{color:var(--c-primary);opacity:.8;margin-top:8px}.output-line.output-gap{height:6px}.output-line.dim{color:var(--c-dim)}.output-line.error{color:var(--c-error)}.output-line.accent{color:var(--c-accent)}.output-line.separator{color:var(--c-separator)}.output-line a{color:var(--c-link);text-decoration:none}.output-line a:hover{text-decoration:underline}.output-line.ascii-art{color:var(--c-primary);line-height:1.2;white-space:pre;overflow-x:hidden}.output-line.welcome-info{color:var(--c-accent)}.output-line.desktop-only{display:block}.output-line.mobile-only{display:none}@media(max-width:767px){.output-line.desktop-only{display:none}.output-line.mobile-only{display:block}}#mobile-toolbar{display:none;align-items:center;justify-content:space-around;padding:6px 12px;border-top:1px solid var(--c-border);background:#000000a6;gap:8px;flex-shrink:0}.mob-btn{flex:1;padding:0 4px;min-height:44px;background:#0006;border:1px solid var(--c-border);border-radius:3px;color:var(--c-primary);font-family:var(--font-mono);font-size:13px;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background 80ms ease,color 80ms ease}.mob-btn:active{background:#003c0099;color:var(--c-accent);border-color:var(--c-accent)}@media(hover:none)and (pointer:coarse){#mobile-toolbar{display:flex}}#input-row{flex:0 0 auto;display:flex;align-items:center;padding:10px 24px;border-top:1px solid var(--c-border);background:#0006}#prompt-symbol{color:var(--c-primary);white-space:nowrap;-webkit-user-select:none;user-select:none;flex-shrink:0;font-weight:700}#input-wrapper{position:relative;display:flex;align-items:center;flex:1;min-width:0;overflow:hidden}#input-display{white-space:pre;color:var(--c-primary);pointer-events:none;flex-shrink:0;font-family:inherit;font-size:inherit;line-height:inherit}#input-field{position:absolute;top:0;right:0;bottom:0;left:0;background:transparent;border:none;outline:none;color:transparent;font-family:inherit;font-size:inherit;line-height:inherit;caret-color:transparent;z-index:1}.cursor{display:inline-block;width:8px;height:1.1em;background:var(--c-primary);vertical-align:text-bottom;animation:blink 1s step-end infinite;flex-shrink:0;pointer-events:none}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.output-line.tab-hint{color:var(--c-dim);font-style:italic}@media(max-width:767px){html,body{font-size:13px}#output{padding:12px 14px 8px}#input-row{padding:8px 14px}#prompt-symbol{font-size:11px}.output-line{line-height:1.4}}@media(max-width:359px){html,body{font-size:12px}#output{padding:8px 10px 6px}#input-row{padding:6px 10px}}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(to bottom,rgba(0,0,0,.04) 0px,rgba(0,0,0,.04) 1px,transparent 1px,transparent 4px);pointer-events:none;z-index:2}html[data-theme=white] body:after{display:none}@keyframes glitch{0%{transform:none}20%{transform:skew(-2deg) translate(-3px)}40%{transform:skew(2deg) translate(3px)}70%{transform:skew(-1deg) translate(-1px)}90%{transform:skew(.5deg) translate(1px)}to{transform:none}}.ascii-art.glitch-active{animation:glitch .15s ease-in-out}
