.terminal-wrapper{position:relative;height:100%}.matrix-bg{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:0;opacity:.06}.matrix-col{position:absolute;top:0;color:#28c840;font-size:14px;line-height:1.2;white-space:pre;animation:matrixFall linear infinite}@keyframes matrixFall{0%{transform:translateY(-100%)}to{transform:translateY(100vh)}}.terminal{background:#0d1117;border:1px solid #30363d;border-radius:12px;overflow:hidden;height:100%;display:flex;flex-direction:column;box-shadow:0 0 40px #00ff640d,0 8px 32px #00000080;position:relative;z-index:1}.terminal-header{background:#161b22;padding:10px 16px;display:flex;align-items:center;gap:8px;border-bottom:1px solid #30363d;flex-shrink:0}.dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.dot.red{background:#ff5f57}.dot.yellow{background:#febc2e}.dot.green{background:#28c840}.terminal-title{flex:1}.progress-bar-container{height:4px;background:#21262d;flex-shrink:0;position:relative}.progress-bar{height:100%;background:linear-gradient(90deg,#28c840,#7ee787);transition:width .5s ease}.progress-text{position:absolute;right:8px;top:-18px;font-size:.65em;color:#484f58}.terminal-body{flex:1;overflow:hidden;display:flex;flex-direction:column;padding:16px}.logs{flex:1;overflow-y:auto;margin-bottom:12px}.logs::-webkit-scrollbar{width:6px}.logs::-webkit-scrollbar-track{background:transparent}.logs::-webkit-scrollbar-thumb{background:#30363d;border-radius:3px}.log-line{font-size:.95em;line-height:1.7;white-space:pre-wrap;word-break:break-word;animation:typeIn .2s ease}@keyframes typeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.log-normal{color:#7ee787}.log-input{color:#f0f6fc}.log-success{color:#7ee787;font-weight:600}.log-error{color:#f85149}.log-hint{color:#79c0ff;font-style:italic}.log-win{color:gold;font-size:1.2em;font-weight:700;text-shadow:0 0 10px rgba(255,215,0,.5);animation:winGlow 1s ease}.log-title{color:#d2a8ff;font-weight:600}@keyframes winGlow{0%,to{text-shadow:0 0 10px rgba(255,215,0,.5)}50%{text-shadow:0 0 30px rgba(255,215,0,.9)}}.input-line{display:flex;align-items:center;gap:8px;background:#ffffff08;border:1px solid #30363d;border-radius:8px;padding:8px 14px;flex-shrink:0}.input-line:focus-within{border-color:#28c840;box-shadow:0 0 0 2px #28c84026}.prompt{color:#28c840;font-weight:700;font-size:1em}.input-line input{flex:1;background:none;border:none;outline:none;color:#7ee787;font-family:inherit;font-size:.95em;caret-color:#28c840}.input-line input::placeholder{color:#484f58}.game-over{text-align:center;padding:12px;flex-shrink:0}.game-over button{background:#238636;color:#fff;border:1px solid #2ea043;padding:10px 28px;border-radius:8px;font-family:inherit;font-size:1em;cursor:pointer;font-weight:600;transition:background .2s,transform .15s}.game-over button:hover{background:#2ea043;transform:scale(1.05)}.settings-btn{background:none;border:none;color:#8b949e;cursor:pointer;font-size:.9em;padding:2px 6px;border-radius:4px;font-family:inherit;transition:background .2s,color .2s}.settings-btn:hover{background:#ffffff14;color:#f0f6fc}.settings-panel{background:#161b22;border-bottom:1px solid #30363d;padding:14px 16px;display:flex;flex-direction:column;gap:10px;flex-shrink:0}.settings-panel label{display:flex;flex-direction:column;gap:4px;color:#8b949e;font-size:.8em;font-weight:500}.settings-panel input{padding:6px 10px;border-radius:6px;border:1px solid #30363d;background:#0d1117;color:#7ee787;font-family:inherit;font-size:.9em;outline:none}.settings-panel input:focus{border-color:#28c840;box-shadow:0 0 0 2px #28c84026}.settings-hint{color:#484f58;font-size:.75em;margin:0}.log-line.thinking{color:#d2a8ff;animation:blink 1s ease-in-out infinite;font-style:italic}@keyframes blink{0%,to{opacity:.4}50%{opacity:1}}*{margin:0;padding:0;box-sizing:border-box}body{background:#0c0c0c;height:100vh;display:flex;justify-content:center;align-items:center;font-family:Cascadia Code,Fira Code,Consolas,monospace;padding:1rem}#root{width:100%;max-width:800px;height:90vh}
