:root{--bg:#0f1720;--panel:#16212c;--panel-border:#243244;--text:#e7ecf1;--text-muted:#8996a6;--accent:#46c2b9;--status-ready:#3ddc84;--status-provisioning:#f0a93c;--status-error:#f0654b;--font-ui:"IBM Plex Sans", sans-serif;--font-mono:"IBM Plex Mono", monospace}*{box-sizing:border-box}body{background:var(--bg);min-height:100vh;color:var(--text);font-family:var(--font-ui);flex-direction:column;margin:0;display:flex}#app{flex-direction:column;min-height:100vh;display:flex}.header{border-bottom:1px solid var(--panel-border);justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.wordmark{font-family:var(--font-mono);color:var(--text-muted);font-size:.95rem}.wordmark strong{color:var(--accent);font-weight:500}.credit-meter{font-family:var(--font-mono);align-items:center;gap:.5rem;font-size:.95rem;display:flex}.credit-meter .dot{background:var(--status-ready);border-radius:50%;width:8px;height:8px}main{flex:1;justify-content:center;align-items:center;padding:2rem 1rem;display:flex}.card{background:var(--panel);border:1px solid var(--panel-border);border-radius:10px;width:100%;max-width:560px;padding:2rem}.card h1{margin:0 0 1.5rem;font-size:1.25rem}label{color:var(--text-muted);margin-bottom:.4rem;font-size:.85rem;display:block}input[type=text],input[type=password],select{background:var(--bg);border:1px solid var(--panel-border);width:100%;color:var(--text);font-family:var(--font-mono);border-radius:6px;margin-bottom:1.25rem;padding:.65rem .75rem;font-size:.95rem}input:focus,select:focus,button:focus{outline:2px solid var(--accent);outline-offset:1px}.stepper{align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.stepper button{border:1px solid var(--panel-border);background:var(--bg);width:36px;height:36px;color:var(--text);cursor:pointer;border-radius:6px;font-size:1.1rem}.stepper .value{font-family:var(--font-mono);text-align:center;min-width:3ch;font-size:1.1rem}.btn{width:100%;font-family:var(--font-ui);cursor:pointer;border:none;border-radius:6px;padding:.75rem;font-size:.95rem;font-weight:600}.btn-primary{background:var(--accent);color:#0b1015}.btn-primary:disabled{background:var(--panel-border);color:var(--text-muted);cursor:not-allowed}.btn-danger{background:var(--status-error);color:#1a0d0a}.btn-ghost{color:var(--text-muted);border:1px solid var(--panel-border);background:0 0}.error-banner{border:1px solid var(--status-error);color:var(--status-error);background:#f0654b1f;border-radius:6px;margin-bottom:1.25rem;padding:.65rem .85rem;font-size:.85rem}.boot-log{font-family:var(--font-mono);margin-bottom:1.5rem;font-size:.9rem;line-height:2}.boot-log .line{align-items:baseline;gap:.75rem;display:flex}.boot-log .tag{color:var(--text-muted);min-width:5ch}.boot-log .line.done .tag{color:var(--status-ready)}.boot-log .line.active .tag{color:var(--status-provisioning)}.boot-log .cursor{background:var(--accent);width:8px;height:1em;margin-left:4px;animation:1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.connection-box{font-family:var(--font-mono);background:var(--bg);border:1px solid var(--panel-border);border-radius:6px;margin-bottom:1.5rem;padding:1rem;font-size:.9rem}.connection-box div{margin-bottom:.35rem}.connection-box .k{color:var(--text-muted);min-width:8ch;display:inline-block}@media (width<=480px){.card{border-radius:0;padding:1.25rem}}
