:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh}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;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}:root{--primary: #00B4D8;--primary-hover: #0096B4;--primary-glow: rgba(0, 180, 216, .3);--success: #10b981;--success-bg: rgba(16, 185, 129, .15);--warning: #f59e0b;--error: #ef4444;--error-bg: rgba(239, 68, 68, .15);--bg: #0a0a0f;--bg-gradient: linear-gradient(135deg, #0a0a0f 0%, #12121a 100%);--surface: #16161f;--surface-hover: #1e1e2a;--card: #1a1a24;--card-hover: #222230;--text: #f0f0f5;--text-muted: #8888a0;--border: #2a2a3a;--border-hover: #3a3a4a}[data-theme=light]{--bg: #f5f7fa;--bg-gradient: linear-gradient(135deg, #f5f7fa 0%, #e8ecf1 100%);--surface: #ffffff;--surface-hover: #f0f2f5;--card: #ffffff;--card-hover: #f5f7fa;--text: #1a1a24;--text-muted: #6b7280;--border: #e0e4ea;--border-hover: #c5ccd6}.theme-toggle{color:var(--text-muted);display:flex;align-items:center;cursor:pointer;transition:color .2s,transform .2s;-webkit-user-select:none;user-select:none}.theme-toggle:hover{color:var(--text);transform:scale(1.1)}.header-right{display:flex;align-items:center;gap:.75rem}*{box-sizing:border-box;margin:0;padding:0}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}html,body,#root{height:100%;overflow:hidden}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-gradient);color:var(--text);-webkit-font-smoothing:antialiased}.container{height:100%;display:flex;flex-direction:column;overflow:hidden}.header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0}.header-content{display:flex;align-items:center;gap:1rem}.logo{width:40px;height:40px;object-fit:contain}.logo.clickable{cursor:pointer;transition:opacity .2s}.logo.clickable:hover{opacity:.8}.header h1{font-size:1.25rem;font-weight:600;color:var(--text)}.header-desc{font-size:.8rem;color:var(--text-muted);margin-top:.125rem}.version{color:#1a1a24;font-size:1rem;font-weight:700;background:#24c2ff;padding:.375rem 1rem;border-radius:.5rem;border:none}.version.clickable{cursor:pointer;transition:transform .15s,box-shadow .15s}.version.clickable:hover{transform:scale(1.03);box-shadow:0 2px 8px #24c2ff4d}.alert{padding:.875rem 1rem;border-radius:.625rem;margin-bottom:1rem;font-size:.875rem;display:flex;align-items:center;gap:.5rem}.alert.error{background:var(--error-bg);color:var(--error);border:1px solid rgba(239,68,68,.3)}.alert.success{background:var(--success-bg);color:var(--success);border:1px solid rgba(16,185,129,.3)}.actions{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;padding:.75rem 1rem;background:var(--surface);border-radius:.75rem;border:1px solid var(--border)}.scan-button{background:transparent;color:var(--text);border:1px solid var(--border);padding:.5rem 1rem;border-radius:.5rem;font-size:.875rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.5rem}.scan-button:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border-hover)}.scan-button:disabled{opacity:.5;cursor:not-allowed}.loading{text-align:center;padding:3rem;color:var(--text-muted);flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center}.spinner{width:36px;height:36px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;margin:0 auto 1rem;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:3rem 2rem;margin:1.5rem;background:var(--surface);border-radius:.75rem;border:1px dashed var(--border);flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center}.empty-state h2{font-size:1.125rem;font-weight:600;color:var(--text);margin-bottom:.5rem}.empty-state p{color:var(--text-muted);font-size:.875rem}.empty-state .hint{font-size:.8rem;margin-top:.25rem}.section-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem .5rem 2.5rem;flex-shrink:0}.section-header h2{font-size:.9rem;font-weight:600;color:var(--text)}.header-left{display:flex;align-items:center;gap:.75rem}.checkbox-container{display:block;position:relative;padding-left:28px;cursor:pointer;font-size:22px;-webkit-user-select:none;user-select:none;width:20px;height:20px}.checkbox-container input{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.checkmark{position:absolute;top:0;left:0;height:20px;width:20px;background-color:var(--surface);border:1px solid var(--border);border-radius:4px;transition:all .2s}.checkbox-container:hover input~.checkmark{border-color:var(--primary)}.checkbox-container input:checked~.checkmark{background-color:var(--primary);border-color:var(--primary)}.checkmark:after{content:"";position:absolute;display:none}.checkbox-container input:checked~.checkmark:after{display:block}.checkbox-container .checkmark:after{left:7px;top:3px;width:4px;height:9px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.terminals-list{display:flex;flex-direction:column;gap:.75rem;flex:1;overflow-y:auto;padding:1rem 1.5rem}.terminal-card{background:var(--card);border:1px solid var(--border);border-radius:.5rem;padding:.5rem 1rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;transition:all .2s;cursor:pointer}.terminal-card:hover{background:var(--card-hover);border-color:var(--primary);box-shadow:0 0 0 1px var(--primary),0 4px 16px #00b4d81a}.terminal-card.selected{border-color:var(--primary);background:#00b4d80d}.terminal-info{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0}.terminal-header{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.terminal-info h3{font-size:.875rem;font-weight:500;color:var(--text);margin:0}.status{font-size:.8rem;font-weight:500;display:inline-flex;align-items:center;gap:.375rem}.status.installed{color:var(--success)}.status.not-installed{color:var(--text-muted)}.status.needs-update{color:var(--warning)}.status.newer{color:#a78bfa}.terminal-actions{display:flex;align-items:center;gap:1rem;flex-shrink:0}.install-button,.update-button{padding:.5rem 1rem;border-radius:.5rem;font-size:.8rem;font-weight:600;cursor:pointer;border:none;transition:all .2s;display:flex;align-items:center;gap:.5rem}.btn-spinner{width:14px;height:14px;border:2px solid rgba(0,0,0,.2);border-top-color:#1a1a24;border-radius:50%;animation:spin .6s linear infinite}.is-loading{opacity:.8;pointer-events:none}.install-button{background:#24c2ff;color:#1a1a24}.install-button:hover:not(:disabled){background:#4dd0ff}.update-button{background:var(--surface);color:var(--text);border:1px solid var(--border)}.update-button:hover:not(:disabled){background:#24c2ff;border-color:#24c2ff;color:#1a1a24}.install-button:disabled,.update-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.footer{padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border);background:var(--surface);flex-shrink:0}.footer-left{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem;margin-right:1.5rem}.footer-hint{color:var(--text-muted);font-size:.75rem}.footer-links{display:flex;align-items:center;gap:.5rem;margin-top:.25rem}.footer-links span:not(.link-divider){color:var(--primary);font-size:.75rem;text-decoration:none;transition:opacity .2s;cursor:pointer}.footer-links span:not(.link-divider):hover{opacity:.8;text-decoration:underline}.link-divider{color:var(--text-muted);font-size:.6rem}.footer-alert{font-size:.8rem;font-weight:500}.footer-alert.error{color:var(--error)}.footer-alert.success{color:var(--success)}.footer-alert.warning{color:var(--warning)}.install-all-button{background:#24c2ff;color:#1a1a24;border:none;padding:.625rem 1.25rem;border-radius:.5rem;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s}.install-all-button:hover:not(:disabled){background:#4dd0ff}.install-all-button:disabled{opacity:.5;cursor:not-allowed}.uninstall-button{background:transparent;color:#ef4444;border:1px solid rgba(239,68,68,.4);padding:.5rem 1rem;border-radius:.5rem;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.5rem}.uninstall-button:hover:not(:disabled){background:#ef444426;border-color:#ef4444}.uninstall-button:disabled{opacity:.5;cursor:not-allowed}.uninstall-button .btn-spinner{border-color:#ef444433;border-top-color:#ef4444}.footer-buttons{display:flex;align-items:center;gap:.75rem}.uninstall-all-button{background:transparent;color:#ef4444;border:1px solid rgba(239,68,68,.4);padding:.625rem 1.25rem;border-radius:.5rem;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s}.uninstall-all-button:hover:not(:disabled){background:#ef444426;border-color:#ef4444}.uninstall-all-button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:500px){.header{padding:.75rem 1rem;flex-wrap:wrap;gap:.75rem}.header-content{gap:.75rem}.logo{width:36px;height:36px}.header h1{font-size:1.1rem}.header-desc{font-size:.7rem}.version{font-size:.85rem;padding:.25rem .75rem}.section-header{padding:.75rem 1rem .5rem 1.5rem;flex-wrap:wrap;gap:.5rem}.section-header h2{font-size:.8rem}.terminals-list{padding:.75rem 1rem;gap:.5rem}.terminal-card{flex-direction:column;align-items:flex-start;padding:.75rem;gap:.625rem}.terminal-info{width:100%}.terminal-info h3{font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:calc(100% - 40px)}.terminal-actions{width:100%;justify-content:space-between;flex-wrap:wrap;gap:.5rem}.status{font-size:.7rem;flex-shrink:1;min-width:0}.install-button,.update-button,.uninstall-button{padding:.375rem .75rem;font-size:.75rem}.footer{padding:.75rem 1rem;flex-direction:column;align-items:stretch;gap:.75rem}.footer-left{margin-right:0}.footer-hint{font-size:.7rem}.footer-buttons{flex-wrap:wrap;gap:.5rem}.install-all-button,.uninstall-all-button{flex:1;min-width:0;padding:.5rem 1rem;font-size:.75rem;text-align:center;justify-content:center}}@media(max-width:360px){.header{padding:.625rem .75rem}.header-content{flex:1;min-width:0}.header h1{font-size:1rem}.version{font-size:.75rem;padding:.2rem .5rem}.section-header{padding:.5rem .75rem}.section-header h2{font-size:.75rem}.terminals-list{padding:.5rem .75rem}.terminal-card{padding:.5rem}.terminal-info h3{font-size:.75rem}.status,.footer-hint{font-size:.65rem}.footer-alert{font-size:.7rem}}
