:root{--terminal-primary:#d89a4e;--terminal-secondary:#b9bcc2;--terminal-bg:#0a0c10;--terminal-bg-overlay:rgba(6,7,10,0.95);--terminal-accent:#d89a4e;--terminal-cmd:#dfb073;--terminal-error:#f87171;--terminal-white:#edeef0;--terminal-border:rgba(216,154,78,0.2);--terminal-glow:0 0 20px rgba(216,154,78,0.08);--terminal-font:var(--font-geist-mono,"Geist Mono"),ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.terminal-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:var(--terminal-bg-overlay);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}@media (max-width:640px){.terminal-overlay{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(4,8,16,.98)}}.terminal-window{position:relative;width:100%;height:100%;max-width:100vw;max-height:100vh;max-height:100dvh;background:var(--terminal-bg);border:1px solid var(--terminal-border);display:flex;flex-direction:column;overflow:hidden;font-family:var(--terminal-font);font-size:.9rem;line-height:1.5;color:var(--terminal-secondary);box-shadow:var(--terminal-glow)}.terminal-window:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(transparent 0 2px,rgba(0,0,0,.14) 2px 3px);opacity:.25;pointer-events:none;border-radius:inherit;z-index:2}@media (min-width:768px){.terminal-window{width:90vw;height:85vh;height:85dvh;max-width:1100px;max-height:750px;border-radius:12px}}.terminal-titlebar{display:flex;align-items:center;justify-content:space-between;padding:calc(10px + env(safe-area-inset-top, 0px)) calc(16px + env(safe-area-inset-right, 0px)) 10px calc(16px + env(safe-area-inset-left, 0px));background:rgba(216,154,78,.05);border-bottom:1px solid var(--terminal-border);flex-shrink:0;user-select:none}.terminal-titlebar-dots{display:flex;align-items:center;gap:8px}.terminal-dot{width:12px;height:12px;border-radius:50%;border:none;padding:0;margin:0;display:inline-block;cursor:pointer;transition:opacity .2s;flex-shrink:0;line-height:1}.terminal-dot:hover{opacity:.8}.terminal-dot--red{background:#ff5f57}.terminal-dot--yellow{background:#febc2e}.terminal-dot--green{background:#28c840}.terminal-titlebar-text{font-size:.8rem;color:var(--terminal-primary);opacity:.7;letter-spacing:.5px}.terminal-titlebar-icon{color:var(--terminal-primary);opacity:.5;font-size:1rem}.terminal-body{flex:1;overflow-y:auto;overflow-x:hidden;padding:16px calc(20px + env(safe-area-inset-right, 0px)) calc(16px + env(safe-area-inset-bottom, 0px)) calc(20px + env(safe-area-inset-left, 0px));scrollbar-width:thin;scrollbar-color:var(--terminal-primary) transparent}.terminal-body::-webkit-scrollbar{width:6px}.terminal-body::-webkit-scrollbar-track{background:transparent}.terminal-body::-webkit-scrollbar-thumb{background:rgba(216,154,78,.3);border-radius:3px}.terminal-body::-webkit-scrollbar-thumb:hover{background:rgba(216,154,78,.5)}.terminal-line{white-space:pre-wrap;word-break:break-word;overflow-wrap:break-word;min-height:1.5em}.terminal-line a{color:var(--terminal-primary);text-decoration:underline;text-underline-offset:2px;transition:color .2s}.terminal-line a:hover{color:var(--terminal-accent)}@media (pointer:coarse){.terminal-line a{display:inline-block;padding:6px 2px;margin:-6px -2px}}.terminal-accent{color:var(--terminal-primary)}.terminal-cmd{color:var(--terminal-cmd)}.terminal-error{color:var(--terminal-error)}.terminal-white{color:var(--terminal-white)}.terminal-ascii{font-family:var(--terminal-font);white-space:pre;display:inline-block;font-size:clamp(.35rem,.8vw + .2rem,.75rem);color:var(--terminal-primary);line-height:1.1;overflow-wrap:break-word}.terminal-input-area{position:relative;display:flex;align-items:center;padding:0;flex-shrink:0;min-height:1.5em}.terminal-prompt{color:var(--terminal-primary);white-space:nowrap;flex-shrink:0;user-select:none}.terminal-input-display{color:var(--terminal-cmd);white-space:pre;flex:1}.terminal-hidden-input{position:absolute;left:0;bottom:0;width:1px;height:1px;opacity:0;border:none;outline:none;resize:none;overflow:hidden;pointer-events:auto;padding:0;margin:0;font-size:16px}.terminal-cursor{display:inline-block;width:8px;height:1.2em;background:var(--terminal-cmd);margin-left:1px;vertical-align:text-bottom;animation:terminal-blink 1s step-end infinite}@keyframes terminal-blink{0%,to{opacity:1}50%{opacity:0}}.terminal-suggestion{color:var(--terminal-white);padding:2px 0}.terminal-suggestion .terminal-cmd{font-weight:700}.terminal-snake-game{color:var(--terminal-primary);font-family:var(--terminal-font);font-size:.85rem;line-height:1.1;margin:8px 0}.terminal-dim{opacity:.55}@keyframes terminal-score-flash{0%{color:#d89a4e}to{color:var(--terminal-primary)}}.score-flash{animation:terminal-score-flash .45s ease-out}@media (max-width:640px){.terminal-window{font-size:.8rem;border-radius:0}.terminal-body{padding:12px}.terminal-ascii{font-size:clamp(.2rem,1.4vw,.5rem)}.terminal-titlebar{padding:8px 12px}}@media (prefers-reduced-motion:reduce){.terminal-cursor{animation:none;opacity:1}.terminal-window:after{display:none}.score-flash{animation:none}}