body{font-family:Courier New,Monaco,Menlo,monospace;background-color:#000;color:#0f0;overflow:hidden}.terminal-container{width:100vw;height:100vh;background-color:transparent;position:relative;overflow:hidden}.terminal{width:900px;height:600px;background-color:#1a1a1a;border:1px solid #333;border-radius:8px;box-shadow:0 0 20px #00ff004d;display:flex;flex-direction:column;overflow:hidden;position:absolute;-webkit-user-select:none;user-select:none;transition:box-shadow .2s ease}.terminal:hover{box-shadow:0 0 25px #0f06}.terminal.closing{animation:fadeOut .5s ease-out forwards}@keyframes fadeOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}.terminal-button{width:12px;height:12px;border-radius:50%;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden}.terminal-button:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#ffffff4d;border-radius:50%;transform:translate(-50%,-50%);transition:all .3s ease}.terminal-button:hover:before{width:100%;height:100%}.terminal-button:hover{transform:scale(1.3);box-shadow:0 0 12px #fff6}.terminal-button:active{transform:scale(.9);transition:transform .1s ease}.terminal.scan-lines:before{content:"";position:absolute;inset:0;background:linear-gradient(transparent 50%,#00ff0008 50%);background-size:100% 4px;pointer-events:none;z-index:1;animation:scan-lines .1s ease-in-out}@keyframes scan-lines{0%{opacity:0}50%{opacity:1}to{opacity:0}}.terminal-dock{position:fixed;bottom:20px;left:50%;transform:translate(-50%);z-index:1000;cursor:pointer}.dock-icon{width:60px;height:60px;background:#00ff001a;border:2px solid #00ff00;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:24px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 20px #00ff004d;transition:all .3s ease;animation:dock-bounce 1.5s ease-in-out infinite;position:relative;overflow:hidden}.dock-icon:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(0,255,0,.2),transparent);transition:left .5s ease}.dock-icon:hover:before{left:100%}.dock-icon:hover{transform:scale(1.15);box-shadow:0 8px 30px #00ff0080;animation-play-state:paused}@keyframes dock-bounce{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-12px) scale(1.05)}}.terminal-header{background-color:#2a2a2a;padding:8px 12px;display:flex;align-items:center;border-bottom:1px solid #333;cursor:grab}.terminal-header:active{cursor:grabbing}.terminal-buttons{display:flex;gap:8px;margin-right:20px}.terminal-button.close{background-color:#ff5f56}.terminal-button.minimize{background-color:#ffbd2e}.terminal-button.maximize{background-color:#27ca3f}.terminal-title{color:#ccc;font-size:12px;font-weight:700}.terminal-content{flex:1;padding:16px;overflow-y:auto;background-color:#1a1a1a;color:#0f0;font-size:14px;line-height:1.4}.terminal-line{margin-bottom:4px;white-space:pre-wrap;word-wrap:break-word}.terminal-line.command{color:#0f0;position:relative;display:flex;align-items:center;flex-wrap:wrap;gap:0}.terminal-line.output{color:#0f0}.terminal-line.input{color:#0f0;font-weight:700}.prompt{color:#0f0;font-weight:700;white-space:nowrap;flex-shrink:0}.content{color:#0f0}.input-display{color:#0f0;font-family:Courier New,Monaco,Menlo,monospace;font-size:14px;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;flex:1;min-width:1px;position:relative;z-index:1}.terminal-input{background:transparent;border:none;outline:none;color:transparent;font-family:Courier New,Monaco,Menlo,monospace;font-size:14px;min-width:1px;flex:1;caret-color:transparent;display:inline-block;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;max-width:calc(100% - 200px);position:relative;z-index:10;-webkit-text-security:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-security:none;-webkit-text-fill-color:transparent;pointer-events:auto;resize:none;overflow:hidden;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.terminal-input::-webkit-search-cancel-button,.terminal-input::-webkit-search-decoration,.terminal-input::-webkit-search-results-button,.terminal-input::-webkit-search-results-decoration{-webkit-appearance:none;appearance:none}.terminal-input:focus{outline:none}.terminal-input:empty:before{content:""}.cursor{color:#0f0;animation:blink 1s infinite;font-weight:700;display:inline-block;margin-left:0;position:relative;z-index:1;flex-shrink:0}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.terminal-content::-webkit-scrollbar{width:8px}.terminal-content::-webkit-scrollbar-track{background:#1a1a1a}.terminal-content::-webkit-scrollbar-thumb{background:#333;border-radius:4px}.terminal-content::-webkit-scrollbar-thumb:hover{background:#555}@media (max-width: 768px){.terminal{height:80vh;max-width:95vw}.terminal-content{font-size:12px;padding:12px}.terminal-header{padding:6px 8px}.terminal-title{font-size:10px}}:root{font-family:Courier New,Monaco,Menlo,monospace;line-height:1.5;font-weight:400;color-scheme:light dark;color:#0f0;background-color:#000;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh;font-family:Courier New,Monaco,Menlo,monospace;background-color:#000;color:#0f0;overflow:hidden}#root{width:100vw;height:100vh;margin:0;padding:0;text-align:left}a{font-weight:500;color:#0f0;text-decoration:inherit}a:hover{color:#0c0}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;color:#0f0;cursor:pointer;transition:border-color .25s}button:hover{border-color:#0f0}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#0f0;background-color:#000}a:hover{color:#0c0}button{background-color:#1a1a1a;color:#0f0}}
