*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden;background-color:#000;color:#fff}:root{--terminal-scale: 2}body.font-pixel{font-family:VT323,Monaco,monospace;font-size:calc(18px * var(--terminal-scale, 2));line-height:1.25;letter-spacing:.8px;-webkit-font-smoothing:none;-moz-osx-font-smoothing:none;text-rendering:geometricPrecision}body.font-clean{font-family:Share Tech Mono,Courier Prime,Monaco,monospace;font-size:calc(14px * var(--terminal-scale, 2));line-height:1.4;letter-spacing:.3px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:geometricPrecision}body{width:100vw;height:100vh;margin:0;padding:0;background:#000}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#000000b3;border-left:1px solid var(--crt-dim)}::-webkit-scrollbar-thumb{background:var(--crt-dim);border:1px solid var(--crt-color)}::-webkit-scrollbar-thumb:hover{background:var(--crt-color)}:root{--bezel-color: #242528;--bezel-shadow: #121315;--bezel-highlight: #3c3e44;--bezel-texture: rgba(255, 255, 255, .02);--bezel-groove: #0d0e10;--badge-gold: #c5a059;--badge-gold-light: #f3dfa2}body.theme-green{--crt-bg: #030804;--crt-color: #33ff33;--crt-bright: #e6ffe6;--crt-dim: #29a847;--crt-glow: rgba(51, 255, 51, .22);--crt-glow-soft: rgba(51, 255, 51, .06);--crt-accent: #66ff66;--crt-scanline-color: rgba(0, 0, 0, .14);--crt-aperture-glow: rgba(51, 255, 51, .02)}body.theme-amber{--crt-bg: #0a0501;--crt-color: #ffb000;--crt-bright: #fff2cc;--crt-dim: #c98500;--crt-glow: rgba(255, 176, 0, .22);--crt-glow-soft: rgba(255, 176, 0, .06);--crt-accent: #ffc94d;--crt-scanline-color: rgba(0, 0, 0, .14);--crt-aperture-glow: rgba(255, 176, 0, .02)}body.theme-white{--crt-bg: #040608;--crt-color: #d8f0f8;--crt-bright: #ffffff;--crt-dim: #8ab4c7;--crt-glow: rgba(216, 240, 248, .18);--crt-glow-soft: rgba(216, 240, 248, .05);--crt-accent: #8fe0ff;--crt-scanline-color: rgba(0, 0, 0, .12);--crt-aperture-glow: rgba(216, 240, 248, .02)}body.theme-cyber{--crt-bg: #07030c;--crt-color: #00ffcc;--crt-bright: #ffffff;--crt-dim: #1fd6b2;--crt-glow: rgba(0, 255, 204, .2);--crt-glow-soft: rgba(255, 0, 119, .06);--crt-accent: #ff0077;--crt-scanline-color: rgba(0, 0, 0, .14);--crt-aperture-glow: rgba(0, 255, 204, .02)}.crt-screen-container{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;overflow:hidden;background:#000;border-radius:0}.crt-screen{position:relative;width:100%;height:100%;background-color:var(--crt-bg);color:var(--crt-color);overflow:hidden;border-radius:16px;padding:18px 30px;box-shadow:inset 0 0 140px #000000fa,inset 0 0 45px #000000eb,inset 0 0 4px var(--crt-glow);transition:border-radius .25s ease}.crt-screen.curvature-flat{border-radius:0}.crt-screen.curvature-flat .crt-vignette{opacity:.15}.crt-screen.curvature-subtle{border-radius:10px}.crt-screen.curvature-subtle .crt-vignette{background:radial-gradient(ellipse at 50% 50%,transparent 60%,rgba(0,0,0,.35) 85%,rgba(0,0,0,.9) 100%)}.crt-screen.curvature-authentic{border-radius:18px}.crt-screen.curvature-authentic .crt-vignette{background:radial-gradient(ellipse at 50% 50%,transparent 52%,rgba(0,0,0,.45) 80%,rgba(0,0,0,.96) 100%)}.crt-screen.curvature-heavy{border-radius:28px}.crt-screen.curvature-heavy .crt-vignette{background:radial-gradient(ellipse at 50% 50%,transparent 45%,rgba(0,0,0,.6) 75%,rgba(0,0,0,.99) 100%)}.crt-vignette{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:15;background:radial-gradient(ellipse at 50% 50%,transparent 52%,rgba(0,0,0,.45) 80%,rgba(0,0,0,.96) 100%);transition:opacity .25s ease,background .25s ease}.crt-glare{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:16;background:linear-gradient(125deg,rgba(255,255,255,.05) 0%,rgba(255,255,255,.02) 18%,transparent 38%,transparent 70%,rgba(255,255,255,.015) 100%)}.crt-scanlines{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:4;opacity:0;transition:opacity .25s ease}.crt-screen.scanlines-active .crt-scanlines{opacity:.16;background:linear-gradient(transparent 50%,var(--crt-scanline-color) 50%),linear-gradient(90deg,#ff000004,#00ff0004,#0000ff04);background-size:100% 4px,4px 100%}.crt-content{position:relative;z-index:5;width:100%;height:100%;max-height:100%;overflow:hidden;display:flex;flex-direction:column;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:geometricPrecision;transform:translateZ(0);text-shadow:0 0 1px var(--crt-glow),0 0 3px var(--crt-glow-soft)}#matrix-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:25;pointer-events:none;opacity:0;transition:opacity .3s ease;background:#000000eb}#matrix-canvas.is-active{opacity:1;pointer-events:auto;cursor:pointer}#fire-overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:26;pointer-events:none;opacity:0;transition:opacity .3s ease;background:#000000f0;display:flex;align-items:center;justify-content:center;white-space:pre;font-family:VT323,monospace;font-size:20px;line-height:1.1;color:var(--crt-color);text-shadow:0 0 8px var(--crt-glow);text-align:center}#fire-overlay.is-active{opacity:1;pointer-events:auto;cursor:pointer}@keyframes crt-flicker{0%{opacity:.985}50%{opacity:1}to{opacity:.99}}.crt-screen.is-degaussing{animation:degauss-shake 1.1s cubic-bezier(.36,.07,.19,.97) both}@keyframes degauss-shake{0%{transform:translate(0) rotate(0);filter:brightness(2.5) contrast(1.8) hue-rotate(90deg)}15%{transform:translate(-14px,10px) rotate(-1.5deg) scale(1.04);filter:brightness(2.2) hue-rotate(180deg)}30%{transform:translate(12px,-8px) rotate(1.2deg) scale(.97);filter:brightness(1.8) hue-rotate(270deg)}45%{transform:translate(-8px,6px) rotate(-.8deg) scale(1.02);filter:brightness(1.5) hue-rotate(360deg)}60%{transform:translate(5px,-4px) rotate(.5deg) scale(.99);filter:brightness(1.3)}75%{transform:translate(-3px,2px) rotate(-.2deg);filter:brightness(1.15)}90%{transform:translate(1px,-1px);filter:brightness(1.05)}to{transform:translate(0) rotate(0) scale(1);filter:brightness(1) contrast(1)}}.crt-screen.crt-power-off{animation:crt-turn-off .55s cubic-bezier(.23,1,.32,1) forwards}@keyframes crt-turn-off{0%{transform:scale(1);filter:brightness(1);opacity:1}50%{transform:scaleY(.003);filter:brightness(4);opacity:1;background:#fff}75%{transform:scale(.005,.003);filter:brightness(10);opacity:1;background:#fff}to{transform:scale(0);filter:brightness(0);opacity:0;background:#000}}.crt-screen.crt-power-on{animation:crt-turn-on .7s cubic-bezier(.23,1,.32,1) forwards}@keyframes crt-turn-on{0%{transform:scale(0);filter:brightness(8);opacity:0}30%{transform:scale(.01,.004);filter:brightness(6);opacity:1;background:#fff}60%{transform:scaleY(.004);filter:brightness(3);opacity:1;background:var(--crt-color)}85%{transform:scaleY(1.02);filter:brightness(1.8);opacity:1}to{transform:scale(1);filter:brightness(1);opacity:1}}@media(prefers-reduced-motion:reduce){.crt-content{animation:none!important;filter:none!important}.crt-screen.is-degaussing{animation:none!important}.crt-scanlines{display:none!important}}@media(max-width:850px){.crt-screen{padding:14px 16px 20px}}.cli-shell{width:100%;height:100%;max-height:100%;display:flex;flex-direction:column;overflow:hidden;background:transparent}.cli-output-buffer{flex:1;min-height:0;width:100%;height:100%;overflow-y:auto;overflow-x:hidden;scrollbar-width:none;-ms-overflow-style:none;display:flex;flex-direction:column;gap:calc(4px * var(--terminal-scale, 2));padding:calc(4px * var(--terminal-scale, 2)) calc(8px * var(--terminal-scale, 2));font-size:calc(16px * var(--terminal-scale, 2));line-height:1.35}.cli-output-buffer::-webkit-scrollbar{display:none}.cli-output-entry{display:flex;flex-direction:column;gap:calc(4px * var(--terminal-scale, 2));flex-shrink:0}.cli-prompt-line{display:flex;align-items:center;gap:calc(8px * var(--terminal-scale, 2));padding:calc(2px * var(--terminal-scale, 2)) 0;background:transparent;flex-shrink:0}.prompt-label{display:inline-flex;align-items:center;font-size:calc(16px * var(--terminal-scale, 2));font-weight:700;letter-spacing:calc(.5px * var(--terminal-scale, 2));-webkit-user-select:none;user-select:none;cursor:text;white-space:nowrap}.prompt-user{color:var(--crt-bright)}.prompt-sep{color:var(--crt-dim)}.prompt-path{color:var(--crt-color)}.prompt-char{color:var(--crt-bright);margin-left:2px}.input-container{position:relative;flex:1;display:flex;align-items:center;min-width:0}.cli-input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;caret-color:transparent;color:transparent;background:transparent;border:none;outline:none;font-family:inherit;font-size:calc(16px * var(--terminal-scale, 2));letter-spacing:calc(.6px * var(--terminal-scale, 2));z-index:2;padding:0;margin:0;cursor:text}.cli-display-line{display:inline-flex;align-items:center;font-family:inherit;font-size:calc(16px * var(--terminal-scale, 2));letter-spacing:calc(.6px * var(--terminal-scale, 2));line-height:1.35;white-space:pre;pointer-events:none;z-index:1}.cli-text-before,.cli-text-after{color:var(--crt-bright)}.cli-block-cursor{display:inline-block;min-width:calc(9px * var(--terminal-scale, 1));height:calc(18px * var(--terminal-scale, 1));line-height:calc(18px * var(--terminal-scale, 1));background-color:var(--crt-bright);color:var(--crt-bg);text-align:center;font-weight:700;vertical-align:middle;box-shadow:0 0 calc(4px * var(--terminal-scale, 1.5)) var(--crt-glow);animation:crt-block-blink 1s steps(2,start) infinite}.cli-block-cursor.is-character{padding:0 1px}.cli-input:not(:focus)+.cli-display-line .cli-block-cursor{background-color:transparent;border:1px solid var(--crt-dim);color:var(--crt-bright);animation:none;opacity:.6}@keyframes crt-block-blink{0%,to{opacity:1}50%{opacity:0}}.cli-ghost-hint{color:var(--crt-dim);opacity:.5;-webkit-user-select:none;user-select:none}.cli-row{word-break:break-word;line-height:1.35}.cli-prompt-echo{color:var(--crt-color);padding:1px 0}.cli-prompt-echo strong{color:var(--crt-bright)}.cli-dim{color:var(--crt-dim)}.cli-highlight{color:var(--crt-bright);font-weight:700}.cli-info{color:var(--crt-color);font-style:italic}.cli-warn{color:#fbbf24}.cli-error{color:#f87171}.cli-divider{color:var(--crt-dim);-webkit-user-select:none;user-select:none;overflow:hidden;white-space:nowrap;font-size:calc(13px * var(--terminal-scale, 2));margin:calc(2px * var(--terminal-scale, 2)) 0}.cli-chip{background:#00000080;color:var(--crt-bright);border:calc(1px * var(--terminal-scale, 1)) solid var(--crt-dim);padding:calc(2px * var(--terminal-scale, 2)) calc(8px * var(--terminal-scale, 2));font-family:inherit;font-size:calc(13px * var(--terminal-scale, 2));letter-spacing:calc(.5px * var(--terminal-scale, 2));border-radius:0;cursor:pointer;display:inline-flex;align-items:center;margin:0 calc(2px * var(--terminal-scale, 2));transition:all .1s ease;-webkit-user-select:none;user-select:none;vertical-align:middle}.cli-chip:hover{background:var(--crt-color);color:var(--crt-bg);border-color:var(--crt-bright);box-shadow:0 0 calc(6px * var(--terminal-scale, 2)) var(--crt-glow);text-shadow:none}.cli-chip:focus-visible{outline:calc(2px * var(--terminal-scale, 1)) solid var(--crt-bright);outline-offset:1px}.cli-file-chip{background:transparent;color:var(--crt-color);border:calc(1px * var(--terminal-scale, 1)) solid var(--crt-dim);padding:calc(2px * var(--terminal-scale, 2)) calc(8px * var(--terminal-scale, 2));font-family:inherit;font-size:calc(14px * var(--terminal-scale, 2));cursor:pointer;transition:all .1s ease;text-decoration:underline;text-decoration-style:dotted;border-radius:0}.cli-file-chip:hover{background:var(--crt-color);color:var(--crt-bg);border-color:var(--crt-bright);box-shadow:0 0 calc(6px * var(--terminal-scale, 2)) var(--crt-glow);text-shadow:none}.cli-dir-chip{background:#0284c726;color:#38bdf8;border:calc(1px * var(--terminal-scale, 1)) solid #0284c7;padding:calc(2px * var(--terminal-scale, 2)) calc(8px * var(--terminal-scale, 2));font-family:inherit;font-size:calc(14px * var(--terminal-scale, 2));font-weight:700;cursor:pointer;display:inline-flex;align-items:center;margin:0 calc(2px * var(--terminal-scale, 2));transition:all .1s ease;-webkit-user-select:none;user-select:none;border-radius:0}.cli-dir-chip:hover{background:#0284c7;color:#000;box-shadow:0 0 calc(6px * var(--terminal-scale, 2)) #38bdf880}.cli-dir-chip:focus-visible{outline:calc(2px * var(--terminal-scale, 1)) solid #38bdf8;outline-offset:1px}.cli-link{color:var(--crt-bright);text-decoration:underline;cursor:pointer;transition:all .1s ease}.cli-link:hover{color:#fff;text-shadow:0 0 calc(8px * var(--terminal-scale, 2)) var(--crt-glow)}.cli-btn-primary{background:var(--crt-color);color:var(--crt-bg);border:calc(1px * var(--terminal-scale, 1)) solid var(--crt-bright);padding:calc(4px * var(--terminal-scale, 2)) calc(12px * var(--terminal-scale, 2));font-family:inherit;font-size:calc(14px * var(--terminal-scale, 2));font-weight:700;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;border-radius:0;transition:all .12s ease;-webkit-user-select:none;user-select:none}.cli-btn-primary:hover{background:var(--crt-bright);box-shadow:0 0 calc(10px * var(--terminal-scale, 2)) var(--crt-glow)}.cli-btn-secondary{background:#0006;color:var(--crt-color);border:calc(1px * var(--terminal-scale, 1)) solid var(--crt-dim);padding:calc(4px * var(--terminal-scale, 2)) calc(12px * var(--terminal-scale, 2));font-family:inherit;font-size:calc(14px * var(--terminal-scale, 2));cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;border-radius:0;transition:all .12s ease;-webkit-user-select:none;user-select:none}.cli-btn-secondary:hover{background:var(--crt-color);color:var(--crt-bg);border-color:var(--crt-bright);box-shadow:0 0 calc(8px * var(--terminal-scale, 2)) var(--crt-glow)}.cli-banner-container{padding:calc(2px * var(--terminal-scale, 2)) 0}.cli-brand-banner{display:flex;align-items:center;margin:calc(4px * var(--terminal-scale, 2)) 0}.cli-vector-logo{display:block;width:calc(180px * var(--terminal-scale, 2));max-width:100%;height:auto;color:var(--crt-bright);filter:drop-shadow(0 0 calc(2px * var(--terminal-scale, 2)) var(--crt-glow)) drop-shadow(0 0 calc(6px * var(--terminal-scale, 2)) var(--crt-glow-soft));transition:all .2s ease}.cli-vector-logo path{fill:currentColor}.cli-ascii-logo{font-family:inherit;color:var(--crt-bright);font-size:calc(13px * var(--terminal-scale, 2));line-height:1.2;letter-spacing:.5px;margin:0;white-space:pre;overflow-x:auto}.cli-sys-info{margin:calc(4px * var(--terminal-scale, 2)) 0;color:var(--crt-color);line-height:1.4}.cli-quick-links{margin:calc(4px * var(--terminal-scale, 2)) 0;display:flex;align-items:center;gap:calc(6px * var(--terminal-scale, 2));flex-wrap:wrap;color:var(--crt-dim)}.cli-card-box{margin:calc(3px * var(--terminal-scale, 2)) 0;background:#00000040;border-radius:0}.cli-box-header,.cli-box-footer{color:var(--crt-bright);font-size:calc(13px * var(--terminal-scale, 2));letter-spacing:calc(.5px * var(--terminal-scale, 2));-webkit-user-select:none;user-select:none;white-space:pre;overflow:hidden}.cli-card-body{padding:calc(5px * var(--terminal-scale, 2)) calc(10px * var(--terminal-scale, 2));display:flex;flex-direction:column;gap:calc(4px * var(--terminal-scale, 2))}.cli-line{line-height:1.4}.cli-bio-text p{margin:calc(3px * var(--terminal-scale, 2)) 0;color:var(--crt-color);line-height:1.4}.cli-actions-row{display:flex;align-items:center;gap:calc(8px * var(--terminal-scale, 2));flex-wrap:wrap;padding-top:calc(4px * var(--terminal-scale, 2))}.cli-skill-category{margin-bottom:calc(5px * var(--terminal-scale, 2))}.cli-cat-title{color:var(--crt-bright);font-weight:700;margin-bottom:calc(2px * var(--terminal-scale, 2));letter-spacing:calc(.6px * var(--terminal-scale, 2))}.cli-skill-item{display:flex;gap:calc(8px * var(--terminal-scale, 2));flex-wrap:wrap;line-height:1.35}.cli-skill-name{font-weight:700;min-width:calc(140px * var(--terminal-scale, 2))}.cli-skill-tier{letter-spacing:calc(.5px * var(--terminal-scale, 2))}.cli-project-row{display:flex;flex-direction:column;gap:calc(3px * var(--terminal-scale, 2));padding:calc(3px * var(--terminal-scale, 2)) 0}.cli-proj-header{font-size:calc(16px * var(--terminal-scale, 2));color:var(--crt-bright)}.cli-proj-desc{color:var(--crt-color);line-height:1.35}.cli-proj-meta{font-size:calc(13px * var(--terminal-scale, 2))}.cli-proj-actions{display:flex;align-items:center;gap:calc(10px * var(--terminal-scale, 2));flex-wrap:wrap;margin-top:calc(3px * var(--terminal-scale, 2))}.cli-highlights-list{margin:calc(3px * var(--terminal-scale, 2)) 0 calc(3px * var(--terminal-scale, 2)) calc(18px * var(--terminal-scale, 2));padding:0}.cli-highlights-list li{margin-bottom:calc(2px * var(--terminal-scale, 2));line-height:1.35}.cli-help-table,.cli-contact-table{width:100%;border-collapse:collapse}.cli-help-tr,.cli-contact-tr{border-bottom:1px solid rgba(255,255,255,.05)}.cli-help-td-cmd{padding:calc(2px * var(--terminal-scale, 2)) 0;width:calc(130px * var(--terminal-scale, 2))}.cli-help-td-desc{padding:calc(2px * var(--terminal-scale, 2)) 0;color:var(--crt-color)}.cli-contact-name{padding:calc(3px * var(--terminal-scale, 2)) 0;width:calc(100px * var(--terminal-scale, 2));color:var(--crt-bright)}.cli-contact-handle{padding:calc(3px * var(--terminal-scale, 2)) 0;color:var(--crt-color)}.cli-contact-link{padding:calc(3px * var(--terminal-scale, 2)) 0;text-align:right}.cli-file-display{background:#0000004d;border:calc(1px * var(--terminal-scale, 1)) solid var(--crt-dim);padding:calc(6px * var(--terminal-scale, 2)) calc(10px * var(--terminal-scale, 2));margin:calc(3px * var(--terminal-scale, 2)) 0}.cli-file-header{color:var(--crt-bright);font-weight:700;border-bottom:calc(1px * var(--terminal-scale, 1)) solid var(--crt-dim);padding-bottom:calc(2px * var(--terminal-scale, 2));margin-bottom:calc(3px * var(--terminal-scale, 2))}.cli-file-content{margin:0;font-family:inherit;font-size:calc(14px * var(--terminal-scale, 2));line-height:1.4;white-space:pre-wrap}.cli-suggest-row{display:flex;flex-wrap:wrap;gap:calc(4px * var(--terminal-scale, 2));padding:calc(3px * var(--terminal-scale, 2)) 0}body.font-pixel .cli-output-buffer{font-size:calc(18px * var(--terminal-scale, 2));line-height:1.25}body.font-pixel .cli-prompt-line,body.font-pixel .cli-input,body.font-pixel .prompt-label{font-size:calc(18px * var(--terminal-scale, 2))}body.font-pixel .cli-chip{font-size:calc(16px * var(--terminal-scale, 2))}body.font-clean .cli-output-buffer{font-size:calc(14px * var(--terminal-scale, 2));line-height:1.4}body.font-clean .cli-prompt-line,body.font-clean .cli-input,body.font-clean .prompt-label{font-size:calc(14px * var(--terminal-scale, 2))}body.font-clean .cli-chip{font-size:calc(13px * var(--terminal-scale, 2))}@media(max-width:768px){.cli-output-buffer{padding:2px;font-size:calc(14px * var(--terminal-scale, 2))}.cli-chip,.cli-file-chip,.cli-dir-chip{min-height:32px;padding:2px 8px}.statusbar-right{display:none}}.cli-statusbar{display:flex;justify-content:space-between;align-items:center;flex-shrink:0;padding:calc(3px * var(--terminal-scale, 1.2)) calc(12px * var(--terminal-scale, 1.5));background:#000000bf;border-top:calc(1px * var(--terminal-scale, 1)) solid var(--crt-dim);font-size:calc(12px * var(--terminal-scale, 1.3));color:var(--crt-color);-webkit-user-select:none;user-select:none;letter-spacing:calc(.5px * var(--terminal-scale, 1.5));z-index:10}.statusbar-left,.statusbar-right{display:flex;align-items:center;gap:calc(8px * var(--terminal-scale, 1.2))}.statusbar-tag{color:var(--crt-bright);font-weight:700}.statusbar-item{color:var(--crt-color)}.statusbar-sep{color:var(--crt-dim);opacity:.6}.statusbar-link{color:var(--crt-bright);text-decoration:none;font-weight:700;transition:all .15s ease}.statusbar-link:hover{text-decoration:underline;text-shadow:0 0 calc(6px * var(--terminal-scale, 2)) var(--crt-glow)}
