:root{
  --bg:#090e14;--panel:#101720;--panel2:#0c131b;--line:#263344;--line2:#1d2836;
  --text:#e8eef5;--soft:#b9c5d3;--muted:#7c8ba0;--green:#25c987;--green2:#18a96f;
  --red:#ff7171;--shadow:0 24px 70px rgba(0,0,0,.34)
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,"PingFang SC","Microsoft YaHei",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body{background:radial-gradient(circle at 12% 4%,rgba(37,201,135,.08),transparent 28rem),radial-gradient(circle at 88% 11%,rgba(69,113,255,.07),transparent 24rem),var(--bg)}
button,input,select{font:inherit}.page-shell{min-height:100vh;display:flex;flex-direction:column}.topbar{height:68px;padding:0 clamp(18px,5vw,72px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.07);background:rgba(8,13,19,.82);backdrop-filter:blur(12px);position:sticky;top:0;z-index:20}
.brand{color:inherit;text-decoration:none;display:flex;align-items:center;gap:12px}.brand-mark{width:39px;height:39px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(135deg,var(--green),#128f62);color:#03130c;font:700 16px ui-monospace,monospace;box-shadow:0 8px 24px rgba(37,201,135,.22)}.brand>span:last-child{display:flex;flex-direction:column;gap:2px}.brand strong{font-size:15px}.brand small{font-size:11px;color:var(--muted);font-weight:500}.security-tip{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:8px}.security-tip i,.online-dot{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px rgba(37,201,135,.1)}
.main-wrap{width:min(1160px,calc(100% - 36px));margin:0 auto;flex:1;padding:64px 0 44px}.login-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.78fr);gap:68px;align-items:center;min-height:560px}.eyebrow{display:inline-flex;padding:8px 12px;border-radius:999px;border:1px solid rgba(37,201,135,.25);background:rgba(37,201,135,.06);color:#72e1b4;font-size:11px;font-weight:800;letter-spacing:1.7px}.intro h1{font-size:clamp(40px,5vw,64px);line-height:1.06;letter-spacing:-2.4px;margin:20px 0}.intro>p{max-width:650px;color:var(--muted);font-size:16px;line-height:1.9;margin:0}.intro code,.safe-card code{color:#7de7bd;font-family:ui-monospace,monospace}.feature-list{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.feature-list span{font-size:12px;color:var(--soft);border:1px solid #283647;background:#101821;border-radius:999px;padding:8px 11px}.safe-card{margin-top:28px;max-width:640px;padding:17px 18px;border-radius:13px;background:rgba(15,23,32,.68);border:1px solid rgba(255,255,255,.07)}.safe-card b{font-size:13px}.safe-card p{margin:7px 0 0;color:#738399;line-height:1.65;font-size:12px}
.connect-card{background:linear-gradient(180deg,rgba(18,27,38,.98),rgba(12,19,27,.99));border:1px solid rgba(255,255,255,.09);border-radius:18px;padding:28px;box-shadow:var(--shadow)}.card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px}.card-head h2{margin:0 0 6px;font-size:21px}.card-head p{margin:0;font-size:12px;color:var(--muted)}.status-pill{font-size:11px;padding:7px 10px;border:1px solid #2a3849;border-radius:999px;color:#8e9caf;background:#111a24}.status-pill.online{border-color:rgba(37,201,135,.3);color:#76e3b7;background:rgba(37,201,135,.08)}
.field{display:block;margin:0 0 17px}.field>span{display:block;color:#b9c5d3;font-size:12px;margin:0 0 8px}.field input,.field select{height:46px;width:100%;border:1px solid #2a3849;border-radius:9px;background:#091018;color:var(--text);padding:0 13px;outline:none;transition:.18s}.field input:focus,.field select:focus{border-color:rgba(37,201,135,.65);box-shadow:0 0 0 3px rgba(37,201,135,.08)}.field input::placeholder{color:#4d5d70}.form-grid{display:grid;grid-template-columns:.65fr 1.35fr;gap:13px}.password-wrap{position:relative}.password-wrap input{padding-right:62px}.password-wrap button{position:absolute;right:6px;top:6px;height:34px;padding:0 10px;border:0;background:transparent;color:#7f8da0;font-size:12px;cursor:pointer}.advanced-toggle{width:100%;border:0;background:transparent;color:#8d9bb0;padding:2px 0 15px;display:flex;justify-content:space-between;cursor:pointer;font-size:12px}.advanced-panel{padding:14px 14px 1px;margin:-4px 0 16px;border:1px solid #243141;border-radius:10px;background:#0b121a}.advanced-panel p{font-size:11px;color:#65758a;margin:0 0 14px}.connect-btn{width:100%;height:48px;border:0;border-radius:10px;background:linear-gradient(180deg,#2ad391,#20b97c);color:#03130c;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 10px 26px rgba(37,201,135,.18)}.connect-btn:hover{filter:brightness(1.04)}.connect-btn:disabled{opacity:.7;cursor:wait}.spinner{width:15px;height:15px;border:2px solid rgba(0,0,0,.22);border-top-color:#061710;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.form-message{min-height:20px;margin-top:11px;font-size:11px;line-height:1.5;color:#7f8ea3}.form-message.error{color:#ff8585}.form-message.success{color:#6de0af}
.terminal-card{border:1px solid rgba(255,255,255,.09);border-radius:17px;overflow:hidden;box-shadow:var(--shadow);background:#080d13;min-height:660px}.terminal-toolbar{height:56px;display:grid;grid-template-columns:120px 1fr auto;align-items:center;padding:0 15px;border-bottom:1px solid #1d2936;background:#111923}.window-dots{display:flex;gap:7px}.window-dots i{width:10px;height:10px;border-radius:50%;background:#ff665f}.window-dots i:nth-child(2){background:#eab54b}.window-dots i:nth-child(3){background:#42c667}.terminal-title{text-align:center;display:flex;flex-direction:column;gap:2px;min-width:0}.terminal-title strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.terminal-title span{font-size:10px;color:#6d7d91}.terminal-actions{display:flex;gap:7px}.terminal-actions button{height:30px;border:1px solid #2b3a4c;border-radius:7px;background:#0d141d;color:#91a0b4;font-size:11px;padding:0 10px;cursor:pointer}.terminal-actions button:hover{border-color:#465a72;color:#fff}.terminal-actions .danger:hover{border-color:rgba(255,113,113,.55);color:#ff9090}.terminal-host{height:560px;background:#080d13;padding:10px}.terminal-host .xterm{height:100%}.terminal-host .xterm-viewport{scrollbar-width:thin;scrollbar-color:#334255 transparent}.terminal-footer{height:42px;border-top:1px solid #1b2633;background:#0d141c;color:#718096;font-size:11px;display:flex;align-items:center;justify-content:space-between;padding:0 15px}.terminal-footer>span:first-child{display:flex;align-items:center;gap:10px}.online-dot{display:inline-block;width:7px;height:7px;box-shadow:none}
.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px}.info-grid article{padding:17px 18px;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:rgba(15,22,31,.62)}.info-grid b{font-size:12px}.info-grid p{font-size:11px;line-height:1.65;color:#69798d;margin:7px 0 0}footer{width:min(1160px,calc(100% - 36px));margin:0 auto;border-top:1px solid rgba(255,255,255,.055);padding:27px 0 31px;display:flex;justify-content:space-between;color:#526176;font-size:11px}
.terminal-card:fullscreen{border-radius:0;border:0;width:100vw;height:100vh}.terminal-card:fullscreen .terminal-host{height:calc(100vh - 98px)}
@media(max-width:900px){.main-wrap{padding-top:38px}.login-layout{grid-template-columns:1fr;gap:36px}.intro{text-align:center}.intro>p,.safe-card{margin-left:auto;margin-right:auto}.feature-list{justify-content:center}.info-grid{grid-template-columns:1fr}.terminal-card{min-height:75vh}.terminal-host{height:calc(75vh - 98px)}}
@media(max-width:600px){.topbar{height:60px;padding:0 14px}.security-tip{display:none}.main-wrap{width:calc(100% - 20px);padding-top:24px}.intro h1{font-size:38px;letter-spacing:-1.6px}.intro>p{font-size:14px}.connect-card{padding:20px;border-radius:14px}.form-grid{grid-template-columns:1fr}.terminal-toolbar{grid-template-columns:65px 1fr auto;padding:0 9px}.terminal-actions button{padding:0 8px}.terminal-actions button:nth-child(1),.terminal-actions button:nth-child(2){display:none}.terminal-host{padding:7px}.terminal-footer span:last-child{display:none}footer{width:calc(100% - 20px)}}
