:root{color:#17251e;font-synthesis:none;--forest:#153d2b;--muted:#536359;--border:#dbe3db;background:#f3f5f0;font-family:DM Sans,Microsoft YaHei UI,PingFang SC,system-ui,sans-serif;line-height:1.5}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit;border-radius:7px;min-height:40px}button{background:var(--forest);color:#fff;cursor:pointer;border:1px solid #0000;padding:.5rem 1rem}button:hover:not(:disabled){filter:brightness(1.12)}button:disabled{opacity:.55;cursor:default}button.secondary{color:var(--forest);border-color:var(--border);background:#fff}input,select{width:100%;color:inherit;background:#fff;border:1px solid #b9c9bf;padding:.5rem .65rem}input[type=file]{width:min(100%,370px)}:focus-visible{outline-offset:2px;outline:3px solid #559963}label{gap:.35rem;font-size:.9rem;font-weight:650;display:grid}h1,h2,p{margin:0}h1{letter-spacing:-.035em;font-size:clamp(1.65rem,4vw,2.4rem)}h2{margin-bottom:.65rem;font-size:1.1rem}a{color:inherit;text-decoration:none}.topbar{color:#f5f9f5;background:#11281e}.nav,.shell{width:min(1120px,100% - 2rem);margin:auto}.nav,.nav nav,.identity,.brand,.heading,.actions,.confirm{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.nav{justify-content:space-between;min-height:72px;padding:.6rem 0}.nav nav a{color:#cee0d1;border-radius:6px;padding:.5rem .7rem}.nav nav a.router-link-exact-active{color:#fff;background:#28503a}.brand{font-weight:800}.identity small{color:#a8c6ad}.mark{color:#16321d;aspect-ratio:1;background:#c7eaa4;border-radius:8px;place-items:center;width:38px;font-family:monospace;font-weight:900;display:inline-grid}.shell{padding:1.8rem 0 3rem}.heading{justify-content:space-between;margin-bottom:1.2rem}.card{border:1px solid var(--border);background:#fff;border-radius:12px;margin-bottom:1rem;padding:clamp(1rem,3vw,1.55rem)}.server-card{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.confirm{border-top:1px solid var(--border);width:100%;padding-top:.8rem}.state{align-items:center;gap:.6rem;font-size:1.55rem;font-weight:780;display:flex}.state span{aspect-ratio:1;background:#919a90;border-radius:50%;width:10px}.state .running{background:#338d48}.muted{color:var(--muted);margin:.3rem 0 .65rem}.notice{color:#8f361f;background:#fff0e8;border-radius:7px;margin:0 0 .85rem;padding:.65rem .85rem}.console{color:#d9eadc;white-space:pre-wrap;overflow-wrap:anywhere;background:#14241c;border-radius:8px;min-height:160px;max-height:370px;margin:0;padding:1rem;font:.875rem/1.6 IBM Plex Mono,Consolas,monospace;overflow:auto}.table-scroll{overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%}th,td{border-bottom:1px solid var(--border);padding:.65rem}.form-grid{grid-template-columns:1fr 1fr .7fr auto;align-items:end;gap:.75rem;display:grid}.stack{gap:.8rem;display:grid}.account{max-width:520px}.login{place-items:center;min-height:100dvh;padding:1rem;display:grid}.login-frame{border:1px solid var(--border);background:#fff;border-radius:16px;grid-template-columns:1fr 1.1fr;width:min(100%,820px);display:grid;overflow:hidden;box-shadow:0 22px 60px #132c2014}.login-side{color:#f3f9f0;background:linear-gradient(150deg,#0e251a,#27573d);flex-direction:column;justify-content:space-between;align-items:start;min-height:380px;padding:2rem;display:flex}.login-side .mark{width:50px}.login-side p{letter-spacing:-.04em;font-size:2rem;font-weight:800;line-height:1.1}.login-form{align-content:center;gap:1rem;padding:clamp(1.1rem,4vw,2.6rem);display:grid}.login-form h1{font-size:1.7rem}.login-form .notice{margin:0}@media (width<=650px){.login-frame,.form-grid{grid-template-columns:1fr}.login-side{flex-direction:row;justify-content:start;align-items:center;gap:.8rem;min-height:auto;padding:1rem}.login-side p{font-size:1.25rem}.nav nav{order:3;width:100%}.identity span{display:none}}
