:root{--accent: #51a2da;--accent-deep: #3c6eb4;--green: #4ec98a;--yellow: #e5b567;--red: #e06c75;--magenta: #b48ead;--cyan: #56b6c2;--bg-a: #0e1524;--bg-b: #1c2a44;--term-bg: rgba(16, 20, 32, .72);--term-border: rgba(255, 255, 255, .09);--titlebar: rgba(255, 255, 255, .04);--fg: #d8dee9;--fg-dim: #7a8699;--cursor: #d8dee9;--shadow: 0 30px 90px rgba(2, 6, 18, .6);--dot-dim: rgba(255, 255, 255, .08);--hint-fg: rgba(216, 222, 233, .45)}body.light{--term-bg: rgba(255, 255, 255, .78);--term-border: rgba(20, 40, 70, .1);--titlebar: rgba(20, 40, 70, .04);--fg: #2e3440;--fg-dim: #8a94a6;--cursor: #2e3440;--accent: #3c6eb4;--bg-a: #dfe9f5;--bg-b: #b8cee8;--shadow: 0 30px 80px rgba(60, 110, 180, .25);--dot-dim: rgba(20, 40, 70, .08);--hint-fg: rgba(46, 52, 64, .55)}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%}body{font-family:Cascadia Mono,JetBrains Mono,Fira Code,Source Code Pro,Menlo,Consolas,monospace;font-size:14px;color:var(--fg);background:linear-gradient(160deg,var(--bg-a),var(--bg-b));background-attachment:fixed;overflow:hidden;transition:background .3s ease,color .3s ease}body:before,body:after{content:"";position:fixed;top:-25%;right:-25%;bottom:-25%;left:-25%;z-index:-1;pointer-events:none}body:before{background:radial-gradient(circle at 22% 28%,var(--blob-a),transparent 42%),radial-gradient(circle at 78% 72%,var(--blob-b),transparent 46%);animation:drift-a 32s ease-in-out infinite alternate}body:after{background:radial-gradient(circle at 62% 18%,var(--blob-c),transparent 40%),radial-gradient(circle at 30% 82%,var(--blob-d),transparent 44%);animation:drift-b 41s ease-in-out infinite alternate}:root{--blob-a: rgba(81, 162, 218, .32);--blob-b: rgba(60, 110, 180, .3);--blob-c: rgba(180, 142, 215, .16);--blob-d: rgba(86, 182, 194, .16)}body.light{--blob-a: rgba(81, 162, 218, .35);--blob-b: rgba(120, 160, 220, .3);--blob-c: rgba(180, 142, 215, .2);--blob-d: rgba(86, 182, 194, .22)}@keyframes drift-a{0%{transform:translateZ(0) rotate(0) scale(1)}50%{transform:translate3d(4%,-3%,0) rotate(10deg) scale(1.12)}to{transform:translate3d(-3%,4%,0) rotate(-6deg) scale(1.05)}}@keyframes drift-b{0%{transform:translateZ(0) rotate(0) scale(1.05)}50%{transform:translate3d(-4%,3%,0) rotate(-8deg) scale(1)}to{transform:translate3d(3%,-4%,0) rotate(6deg) scale(1.15)}}@media(prefers-reduced-motion:reduce){body:before,body:after{animation:none}}.stage{height:100vh;height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:24px}.window{width:min(860px,100%);height:min(560px,82vh);border-radius:16px;overflow:hidden;background:var(--term-bg);border:1px solid var(--term-border);backdrop-filter:blur(18px) saturate(1.3);-webkit-backdrop-filter:blur(18px) saturate(1.3);box-shadow:var(--shadow);display:flex;flex-direction:column;transition:all .25s ease}.window.maximized{width:100vw;height:100vh;border-radius:0}.titlebar{height:38px;flex-shrink:0;display:flex;align-items:center;padding:0 8px;background:var(--titlebar);border-bottom:1px solid var(--term-border);-webkit-user-select:none;user-select:none;position:relative;color:var(--fg)}.titlebar-menu{display:flex;padding:4px;border-radius:6px;color:var(--fg-dim);cursor:pointer}.titlebar-menu:hover{background:var(--dot-dim);color:var(--fg)}.titlebar-left{display:flex;align-items:center;gap:2px}.titlebar-title{position:absolute;left:50%;transform:translate(-50%);font-size:12.5px;font-weight:700;white-space:nowrap}.titlebar-actions{margin-left:auto;display:flex;align-items:center;gap:4px}.tb-btn{width:32px;height:26px;border:none;background:transparent;color:var(--fg-dim);border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease}.tb-btn:hover{background:var(--dot-dim);color:var(--fg)}.tb-close:hover{background:#e01b24;color:#fff}.theme-toggle{border:none;background:transparent;color:var(--fg-dim);cursor:pointer;width:32px;height:26px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease}.theme-toggle:hover{background:var(--dot-dim);color:var(--fg)}body:not(.light) .icon-sun{display:none}body.light .icon-moon{display:none}.terminal{flex:1;padding:16px 18px;overflow-y:auto;line-height:1.5;cursor:text}.terminal::-webkit-scrollbar{width:8px}.terminal::-webkit-scrollbar-track{background:transparent}.terminal::-webkit-scrollbar-thumb{background:var(--dot-dim);border-radius:4px}.terminal::-webkit-scrollbar-thumb:hover{background:var(--accent)}#output{white-space:pre-wrap;word-break:break-word}.line{min-height:1.2em}.cmd-line{margin-top:10px}.p-bracket{color:var(--fg-dim)}.p-user{color:var(--accent);font-weight:700}.p-at{color:var(--fg-dim)}.p-host{color:var(--accent-deep);font-weight:700}body.light .p-host{color:var(--accent)}.p-dir{color:var(--magenta);font-weight:700}.p-dollar{color:var(--fg)}.typed-cmd{color:var(--fg);font-weight:600}.c-blue{color:var(--accent)}.c-deep{color:var(--accent-deep)}.c-green{color:var(--green)}.c-yellow{color:var(--yellow)}.c-red{color:var(--red)}.c-cyan{color:var(--cyan)}.c-magenta{color:var(--magenta)}.c-dim{color:var(--fg-dim)}.c-bold{font-weight:700}a{color:var(--accent);text-decoration:none;border-bottom:1px dotted transparent}a:hover{border-bottom-color:var(--accent)}.banner-name{display:inline-block;font-size:36px;font-weight:800;letter-spacing:.05em;margin:4px 0 10px;background:linear-gradient(90deg,#7dd3fc,var(--accent) 55%,var(--accent-deep));-webkit-background-clip:text;background-clip:text;color:transparent}body.light .banner-name{background-image:linear-gradient(90deg,#2b5797,var(--accent-deep) 55%,var(--accent))}.input-line{display:flex;align-items:baseline;margin-top:6px}body.booting .input-line{display:none}.prompt{flex-shrink:0;margin-right:8px}.input-wrap{position:relative;flex:1;white-space:pre-wrap;word-break:break-all}.cursor{display:inline-block;background:var(--cursor);color:var(--term-bg);animation:blink 1.05s step-end infinite}.cursor.no-blink{animation:none}@keyframes blink{50%{opacity:0}}#hidden-input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;border:none;outline:none;background:transparent;color:transparent;caret-color:transparent;font:inherit}.hint{font-size:12px;color:var(--hint-fg);text-align:center}.hint code,.hint kbd{background:var(--dot-dim);border:1px solid var(--term-border);padding:1px 7px;border-radius:6px;font-family:inherit;color:var(--accent)}@media(max-width:640px){.stage{padding:0;gap:0;height:100dvh}.window{width:100vw;width:100dvw;height:100vh;height:100dvh;border-radius:0;border:none}.hint{display:none}body{font-size:13px}#hidden-input{font-size:16px}.terminal{padding:12px 12px calc(12px + env(safe-area-inset-bottom))}}
