@import url('./xterm.css');
:root{color-scheme:dark;--bg:#101210;--panel:#171a17;--line:#2a3029;--text:#e9eee5;--muted:#8d978b;--accent:#d5fa6b;--mono:'Cascadia Code','SFMono-Regular',Consolas,monospace;font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI','Microsoft YaHei',sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-size:14px}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.4;cursor:not-allowed}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}[hidden]{display:none!important}.layout{min-height:100vh;display:grid;grid-template-columns:290px 1fr}.sidebar{background:#171a17;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:31px 23px 0}.brand{color:var(--text);text-decoration:none;display:flex;align-items:center;gap:12px;font-weight:650;font-size:25px;letter-spacing:-.8px}.brand-icon,.dialog-logo{background:var(--accent);color:#212819;display:grid;place-items:center;width:42px;height:42px;border-radius:12px;font-size:29px}.brand small{display:block;font:9px var(--mono);color:var(--muted);letter-spacing:1.5px;margin-top:6px}.workspace-label{display:flex;justify-content:space-between;margin:47px 9px 14px;color:#737d70;font-size:11px;letter-spacing:1px}.workspace-label span{font-family:var(--mono)}.nav-active{border:1px solid #3a4432;border-radius:8px;background:#242d20;color:var(--accent);padding:13px 15px;display:flex;gap:11px;font-size:13px}.nav-arrow{margin-left:auto}.connect-panel{margin-top:35px}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}h2,h3,p{margin:0}.section-heading h2{font-size:14px;font-weight:550}.tiny-label{font:10px var(--mono);letter-spacing:1px;color:#7d8877}label{display:block;font-size:12px;color:#acb4a7;margin-bottom:18px}input,select,textarea{display:block;width:100%;margin-top:9px;background:#101410;border:1px solid #333b31;border-radius:6px;color:#e7ecdf;min-height:42px;padding:10px 12px;outline:none;font-size:13px}input:focus,select:focus,textarea:focus{border-color:#bed76e;box-shadow:0 0 0 2px #d5fa6b0d}input::placeholder,textarea::placeholder{color:#586153}textarea{resize:vertical;font-family:var(--mono);font-size:11px}.field-row{display:grid;grid-template-columns:76px 1fr;gap:12px}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:11px;color:#8e9988;margin:21px 0}.checkbox-label input{margin:0;width:13px;min-height:13px;accent-color:var(--accent)}.primary{border:0;background:var(--accent);color:#1e2814;border-radius:6px;padding:13px 14px;display:flex;justify-content:space-between;align-items:center;width:100%;font-size:13px;font-weight:650;transition:background .2s}.primary:hover{background:#e0ff91}.form-note{font-size:10px;color:#737e6e;line-height:1.8;margin-top:13px}.sidebar-bottom{display:flex;gap:10px;align-items:center;border-top:1px solid var(--line);padding:20px 0;margin-top:auto;font-size:12px}.sidebar-bottom small{display:block;color:#727d6f;font-size:10px;margin-top:5px}.avatar{width:32px;height:32px;border:1px solid #424b39;background:#2e3828;border-radius:50%;display:grid;place-items:center;color:#c0cdad;font-size:12px}.icon-button{margin-left:auto;border:0;background:transparent;color:#8c9882;font-size:21px}.topbar{height:78px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 38px;font-size:12px}.breadcrumb{color:#6f7a69}.slash{margin:0 15px;color:#414b3d}.version{font:10px var(--mono);letter-spacing:1px;color:#71806a}.version b{margin-left:7px;padding:4px 5px;background:#222a1f;color:#94a588;font-weight:400}.main-content{padding:39px 38px 20px;max-width:1600px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:31px}.eyebrow{font:10px var(--mono);letter-spacing:2px;color:#94a27e}h1{font-size:34px;font-weight:550;letter-spacing:-1px;margin:11px 0 10px}h1 span{color:var(--accent);padding-left:3px}.page-heading p{font-size:12px;color:#818e78}.status{display:flex;gap:8px;align-items:center;border:1px solid #333c2e;border-radius:30px;padding:8px 13px;font-size:11px;color:#96a18e}.status i,.green-dot{display:inline-block;width:6px;height:6px;background:#76866b;border-radius:50%}.status.connected{color:var(--accent);border-color:#546436}.status.connected i{background:var(--accent);box-shadow:0 0 8px #caff5a44}.status.connecting{color:#e3c77d}.terminal-card{border:1px solid #343c2e;border-radius:10px;overflow:hidden;background:#0b0e0b;box-shadow:0 16px 60px #0002}.terminal-toolbar{height:49px;background:#1c211b;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #2b3326;padding:0 16px}.terminal-tab{height:100%;display:flex;align-items:center;gap:10px;border-bottom:2px solid var(--accent);font:11px var(--mono);padding:0 8px;max-width:60%;overflow:hidden;white-space:nowrap}.terminal-tab>span:first-child{font:17px var(--mono);color:var(--accent)}.terminal-actions{display:flex;gap:16px}.terminal-actions button{background:none;border:0;color:#9ba693;font-size:11px;padding:5px 0}.terminal-actions button:hover{color:var(--accent)}.terminal-surface{height:clamp(380px,55vh,760px);position:relative;padding:15px}.empty-state{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column}.terminal-glyph{font:35px var(--mono);color:#bcd69a;border:1px solid #35442b;border-radius:15px;background:linear-gradient(135deg,#27331f,#121b10);width:68px;height:68px;display:grid;place-items:center;margin-bottom:24px}.empty-state .tiny-label{color:#67745e;letter-spacing:2px;font-size:9px}.empty-state h2{font-size:19px;font-weight:450;margin:13px 0 12px}.empty-state p{font-size:11px;color:#6e7a64}.sample-command{background:#141a11;border:1px solid #293321;border-radius:5px;padding:12px 18px;margin:27px 0 23px;font:12px var(--mono);color:#819573;display:flex;align-items:center;gap:12px}.sample-command>span:first-child{color:var(--accent)}.cursor{height:14px;width:6px;background:#b5d186;display:inline-block;opacity:.7}.empty-tags{display:flex;gap:23px;font-size:10px;color:#5e7054}.empty-tags span::before{content:'·';margin-right:8px;color:#a5c574}.terminal-footer{border-top:1px solid #263021;display:flex;justify-content:space-between;gap:12px;padding:11px 17px;font:10px var(--mono);color:#6e8161;background:#10160e}.terminal-footer>div{display:flex;gap:15px;align-items:center}.terminal-footer>div:first-child{overflow:hidden}.terminal-footer #connection-detail{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.green-dot{background:#8bab61;width:5px;height:5px}.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:23px}.info-grid article{display:flex;gap:12px;align-items:flex-start;padding:16px 0}.info-icon{font:21px var(--mono);color:#98ad80}.info-grid h3{font-size:11px;font-weight:500;margin-bottom:8px;color:#acb7a1}.info-grid p{font-size:10px;color:#67765c;line-height:1.7}.bottom-note{display:flex;justify-content:space-between;border-top:1px solid #252e21;padding-top:19px;margin-top:10px;color:#4e5f43;font-size:10px}.bottom-note span{font:8px var(--mono);letter-spacing:1px}#terminal{height:100%;width:100%}.xterm{height:100%;padding:0}.terminal-card:fullscreen{display:flex;flex-direction:column;border:0;border-radius:0}.terminal-card:fullscreen .terminal-surface{flex:1;height:0}dialog{background:#1a2018;color:var(--text);border:1px solid #3c4a32;border-radius:14px;padding:32px;width:min(430px,calc(100vw - 32px));box-shadow:0 30px 120px #0008}dialog::backdrop{background:#080e08c9;backdrop-filter:blur(7px)}dialog .dialog-logo{margin-bottom:24px}dialog h2{font-size:23px;font-weight:550;margin:12px 0}dialog>p{font-size:12px;line-height:1.9;color:#9da991;margin-bottom:23px}dialog form{margin-top:23px}dialog label{margin-bottom:16px}.error-text{font-size:12px;color:#ffb09c;min-height:20px;margin:0 0 10px}.fingerprint{display:block;word-break:break-all;border:1px solid #3a4830;padding:15px;background:#10170d;color:var(--accent);font-size:12px;line-height:1.8;margin:18px 0}.dialog-buttons{display:flex;gap:12px;margin-top:22px}.secondary{border:1px solid #414e37;background:#252f1e;color:#c3cdb8;border-radius:6px;padding:12px 18px;white-space:nowrap}#setup-message p{font-size:13px;line-height:1.9;color:#aebda1;margin-top:18px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);max-width:min(650px,90vw);padding:14px 22px;background:#303d27;border:1px solid #61754d;border-radius:8px;color:#e1edda;box-shadow:0 8px 35px #0006;z-index:20;font-size:13px;line-height:1.7}@media(min-width:1600px){.main-content{padding-top:60px}.page-heading{margin-bottom:40px}}@media(max-width:1050px){.layout{grid-template-columns:260px 1fr}.sidebar{padding-left:18px;padding-right:18px}.main-content{padding:30px 22px 20px}.topbar{padding:0 22px}.info-grid{gap:10px}.info-grid article{gap:7px}.empty-state h2{font-size:16px}.empty-tags{gap:12px}.bottom-note span{display:none}}@media(max-width:760px){.layout{display:flex;flex-direction:column}.sidebar{padding:20px;display:block;border-right:0;border-bottom:1px solid var(--line)}.brand{font-size:22px}.workspace-label,.nav-active,.sidebar-bottom,.connect-panel .section-heading{display:none}.connect-panel{margin-top:22px}#connect-form{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.field-row{grid-template-columns:65px 1fr}#key-fields{grid-column:1/-1}.checkbox-label{margin:10px 0 15px}#connect-button{grid-column:1/-1}.form-note{grid-column:1/-1}.topbar{height:55px}.main-content{padding:24px 14px}.page-heading{margin-bottom:22px}h1{font-size:28px}.eyebrow{font-size:8px;letter-spacing:1px}.terminal-surface{height:420px;padding:10px}.terminal-toolbar{padding:0 10px}.terminal-actions{gap:12px}.empty-state h2{font-size:16px}.empty-state p{font-size:10px}.terminal-footer{padding:10px;font-size:9px}.terminal-footer>div{gap:8px}.info-grid{grid-template-columns:1fr}.info-grid article{padding:5px 4px}.info-grid p{font-size:11px}.bottom-note{margin-top:20px}#logout{display:block;position:absolute;right:20px;top:25px}.sidebar-bottom{display:block;border:0;padding:0;margin:0}.sidebar-bottom>.avatar,.sidebar-bottom>div{display:none}}
@media(max-width:760px){.field-row{grid-template-columns:82px minmax(0,1fr)}input[type=number]{appearance:textfield;-moz-appearance:textfield}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}}
