@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600;700&display=swap";.terminal-container{width:100%;max-width:900px;height:80vh;min-height:500px;margin:0 auto;border-radius:12px;overflow:hidden;box-shadow:var(--terminal-shadow);display:flex;flex-direction:column;background:var(--terminal-bg);border:1px solid var(--terminal-border);position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.terminal-container.maximized{max-width:100%;height:100vh;min-height:100vh;border-radius:0;position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000}.terminal-container.minimized{height:auto;min-height:auto}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}.terminal-container.shake{animation:shake .5s cubic-bezier(.36,.07,.19,.97) both}.matrix-canvas{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1;opacity:.3}.terminal-header{display:flex;align-items:center;padding:12px 16px;background:var(--header-bg);border-bottom:1px solid var(--terminal-border);-webkit-user-select:none;user-select:none;position:relative;z-index:10}.terminal-buttons{display:flex;gap:8px}.terminal-button{width:12px;height:12px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;position:relative;overflow:hidden}.terminal-button .button-icon{opacity:0;transform:scale(.5);transition:all .2s ease;display:flex;align-items:center;justify-content:center}.terminal-button .button-icon svg{width:6px;height:6px}.terminal-button:hover .button-icon{opacity:1;transform:scale(1)}.terminal-button.red{background:#ff5f56}.terminal-button.red:hover{background:#ff3b30;transform:scale(1.15);box-shadow:0 0 12px #ff5f5699}.terminal-button.red .button-icon{color:#4a0000}.terminal-button.yellow{background:#ffbd2e}.terminal-button.yellow:hover{background:#fa0;transform:scale(1.15);box-shadow:0 0 12px #ffbd2e99}.terminal-button.yellow .button-icon{color:#4a3600}.terminal-button.green{background:#27c93f}.terminal-button.green:hover{background:#1db830;transform:scale(1.15);box-shadow:0 0 12px #27c93f99}.terminal-button.green .button-icon{color:#004a0d}@keyframes button-ripple{0%{box-shadow:0 0 0 0 currentColor}to{box-shadow:0 0 0 10px transparent}}.terminal-button.ripple{animation:button-ripple .6s ease-out}.terminal-button.red.ripple{color:#ff5f5680}.terminal-button.yellow.ripple{color:#ffbd2e80}.terminal-button.green.ripple{color:#27c93f80}.terminal-button:active{transform:scale(.9)}.terminal-title{flex:1;text-align:center;font-size:14px;color:var(--text-muted);font-weight:500;display:flex;align-items:center;justify-content:center;gap:2px}.title-text{position:relative}.title-cursor{width:2px;height:14px;background:var(--cursor-color);animation:cursor-blink 1s step-end infinite;opacity:.7}@keyframes cursor-blink{0%,50%{opacity:.7}51%,to{opacity:0}}.terminal-theme-toggle{cursor:pointer;padding:6px 10px;border-radius:6px;transition:all .3s cubic-bezier(.4,0,.2,1);background:transparent;border:1px solid transparent;display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.terminal-theme-toggle:hover{background:var(--hover-bg);border-color:var(--terminal-border);transform:translateY(-1px)}.terminal-theme-toggle:active{transform:translateY(0) scale(.95)}.theme-icon{display:flex;align-items:center;justify-content:center;transition:all .4s cubic-bezier(.4,0,.2,1)}.theme-icon svg{transition:all .4s cubic-bezier(.4,0,.2,1)}.theme-icon.sun svg{color:var(--accent-warning)}.theme-icon.moon svg{color:var(--accent-primary)}.terminal-theme-toggle:hover .theme-icon{transform:rotate(15deg)}.terminal-theme-toggle:hover .theme-icon.sun{transform:rotate(180deg)}.terminal-theme-toggle:hover .theme-icon.moon{transform:rotate(-15deg) scale(1.1)}.terminal-body{flex:1;padding:16px;overflow-y:auto;font-family:JetBrains Mono,Fira Code,SF Mono,Consolas,Monaco,monospace;font-size:14px;line-height:1.6;cursor:text;position:relative;z-index:5;transition:all .4s cubic-bezier(.4,0,.2,1)}.terminal-body.hidden{height:0;padding:0 16px;overflow:hidden;flex:none}.terminal-body::-webkit-scrollbar{width:8px}.terminal-body::-webkit-scrollbar-track{background:transparent}.terminal-body::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px;transition:background .2s ease}.terminal-body::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-hover)}.terminal-line{margin-bottom:2px;animation:line-appear .3s ease-out}@keyframes line-appear{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.terminal-command-line{display:flex;gap:8px;flex-wrap:wrap}.terminal-prompt{display:inline-flex;white-space:nowrap}.prompt-user{color:var(--prompt-user);font-weight:600;transition:color .3s ease}.prompt-at{color:var(--text-muted)}.prompt-host{color:var(--prompt-host);font-weight:600;transition:color .3s ease}.prompt-separator{color:var(--text-muted)}.prompt-path{color:var(--prompt-path);font-weight:600;transition:color .3s ease}.prompt-dollar{color:var(--text-primary);margin-left:2px;animation:prompt-pulse 2s ease-in-out infinite}@keyframes prompt-pulse{0%,to{opacity:1}50%{opacity:.6}}.terminal-input-text{color:var(--text-primary)}.terminal-output{color:var(--text-secondary);white-space:pre-wrap;word-wrap:break-word}.terminal-output div{min-height:1.6em}.terminal-input-line{display:flex;gap:8px;align-items:center}.terminal-input{flex:1;background:transparent;border:none;outline:none;color:var(--text-primary);font-family:inherit;font-size:inherit;caret-color:var(--cursor-color)}.terminal-input::placeholder{color:var(--text-muted)}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.terminal-input:focus{outline:none}.terminal-container:focus-within{box-shadow:var(--terminal-shadow),0 0 0 1px var(--accent-primary),0 0 20px #58a6ff26}[data-theme=light] .terminal-container:focus-within{box-shadow:var(--terminal-shadow),0 0 0 1px var(--accent-primary),0 0 20px #0969da1a}.terminal-body:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(transparent 50%,#00000005 50%);background-size:100% 4px;pointer-events:none;z-index:100;opacity:.5}[data-theme=light] .terminal-body:before{background:linear-gradient(transparent 50%,#00000003 50%);background-size:100% 4px}@media (max-width: 768px){.terminal-container{height:90vh;min-height:400px;border-radius:0;max-width:100%}.terminal-body{font-size:12px;padding:12px}.terminal-title{font-size:12px}.terminal-header{padding:10px 12px}}@media (max-width: 480px){.terminal-body{font-size:11px;padding:10px}.terminal-button{width:10px;height:10px}.terminal-button .button-icon svg{width:5px;height:5px}}@media (prefers-reduced-motion: reduce){.terminal-container,.terminal-button,.terminal-theme-toggle,.theme-icon,.terminal-line,.terminal-body{animation:none!important;transition:none!important}.title-cursor{animation:none;opacity:.7}.prompt-dollar{animation:none}}.home-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:var(--bg-primary)}@media (max-width: 768px){.home-container{padding:0;align-items:flex-start}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root,[data-theme=dark]{--bg-primary: #0d1117;--bg-secondary: #161b22;--terminal-bg: #0d1117;--header-bg: #161b22;--hover-bg: rgba(255, 255, 255, .1);--text-primary: #e6edf3;--text-secondary: #8b949e;--text-muted: #6e7681;--prompt-user: #7ee787;--prompt-host: #79c0ff;--prompt-path: #d2a8ff;--accent-primary: #58a6ff;--accent-secondary: #7ee787;--accent-warning: #d29922;--accent-error: #f85149;--terminal-border: #30363d;--terminal-shadow: 0 8px 32px rgba(0, 0, 0, .4), 0 2px 8px rgba(0, 0, 0, .3);--scrollbar-thumb: #484f58;--scrollbar-hover: #6e7681;--cursor-color: #58a6ff}[data-theme=light]{--bg-primary: #f6f8fa;--bg-secondary: #ffffff;--terminal-bg: #ffffff;--header-bg: #f6f8fa;--hover-bg: rgba(0, 0, 0, .05);--text-primary: #24292f;--text-secondary: #57606a;--text-muted: #8c959f;--prompt-user: #1a7f37;--prompt-host: #0969da;--prompt-path: #8250df;--accent-primary: #0969da;--accent-secondary: #1a7f37;--accent-warning: #9a6700;--accent-error: #cf222e;--terminal-border: #d0d7de;--terminal-shadow: 0 8px 32px rgba(0, 0, 0, .12), 0 2px 8px rgba(0, 0, 0, .08);--scrollbar-thumb: #afb8c1;--scrollbar-hover: #8c959f;--cursor-color: #0969da}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:JetBrains Mono,Fira Code,SF Mono,Consolas,Monaco,monospace;background:var(--bg-primary);color:var(--text-primary);min-height:100vh;transition:background-color .3s ease,color .3s ease}#root{min-height:100vh;display:flex;flex-direction:column}::selection{background:var(--accent-primary);color:var(--bg-primary)}:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}a{color:var(--accent-primary);text-decoration:none;transition:color .2s ease}a:hover{text-decoration:underline}@media (prefers-reduced-motion: no-preference){html{scroll-behavior:smooth}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
