:root{--text:#3f3f46;--text-h:#09090b;--text-muted:#71717a;--bg:#fafafa;--surface:#fff;--border:#e4e4e7;--accent:#6d28d9;--accent-contrast:#fff;--danger:#b91c1c;--success:#15803d;--warning:#b45309;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font:15px/150% var(--sans)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--text:#d4d4d8;--text-h:#fafafa;--text-muted:#a1a1aa;--bg:#121214;--surface:#1c1c1f;--border:#2e2e33;--accent:#a78bfa;--accent-contrast:#1c1c1f}}*{box-sizing:border-box}body{margin:0}h1,h2,h3{color:var(--text-h);margin:0 0 12px;font-weight:600}h1{font-size:26px}h2{font-size:20px}h3{font-size:16px}a{color:var(--accent)}.app-main{max-width:1100px;margin:0 auto;padding:24px 20px 60px}.app-nav{border-bottom:1px solid var(--border);background:var(--surface);align-items:center;gap:24px;padding:12px 20px;display:flex}.app-nav__brand a{color:var(--text-h);font-weight:700;text-decoration:none}.app-nav__links{flex:1;gap:16px;display:flex}.app-nav__links a{color:var(--text-muted);font-size:14px;text-decoration:none}.app-nav__links a.router-link-exact-active{color:var(--accent);font-weight:600}.app-nav__dropdown{position:relative}.app-nav__dropdown-trigger{cursor:default;color:var(--text-muted);font-size:14px}.app-nav__dropdown-trigger.router-link-exact-active{color:var(--accent);font-weight:600}.app-nav__dropdown-menu{background:var(--surface);border:1px solid var(--border);z-index:10;border-radius:8px;flex-direction:column;min-width:140px;margin-top:8px;padding:6px;display:none;position:absolute;top:100%;left:0;box-shadow:0 4px 12px #00000014}.app-nav__dropdown-menu a{white-space:nowrap;border-radius:6px;padding:6px 10px}.app-nav__dropdown-menu a:hover{background:var(--bg)}.app-nav__dropdown:hover .app-nav__dropdown-menu,.app-nav__dropdown:focus-within .app-nav__dropdown-menu{display:flex}.app-nav__dropdown:after{content:"";height:8px;position:absolute;top:100%;left:0;right:0}.app-nav__user{color:var(--text-muted);align-items:center;gap:12px;font-size:14px;display:flex}.app-nav__user a{color:var(--text-muted);font-weight:600;text-decoration:none}.app-nav__user a:hover{color:var(--accent)}.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;margin-bottom:20px;padding:20px}.form-row{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.form-row label{color:var(--text-muted);font-size:13px}input,select,textarea{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:6px;padding:8px 10px}textarea{font-family:var(--mono);font-size:13px}button{font:inherit;cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:6px;padding:8px 14px}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}button:disabled{opacity:.5;cursor:not-allowed}button.danger{border-color:var(--danger);color:var(--danger)}.alert{border-radius:6px;margin-bottom:14px;padding:10px 14px;font-size:14px}.alert.error{color:var(--danger);background:#b91c1c1a}.alert.success{color:var(--success);background:#15803d1a}.badge{border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-flex}.badge.ready{color:var(--success);background:#15803d26}.badge.pending{color:var(--warning);background:#b4530926}.badge.provisioning{color:var(--accent);background:#6d28d926}.badge.failed{color:var(--danger);background:#b91c1c26}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);padding:8px 10px;font-size:14px}th{color:var(--text-muted);font-weight:600}.status-log{font-family:var(--mono);background:var(--bg);border:1px solid var(--border);border-radius:6px;max-height:260px;padding:10px;font-size:12px;overflow-y:auto}.status-log div{color:var(--text-muted);padding:2px 0}.auth-page{max-width:380px;margin:60px auto}.grid-2{grid-template-columns:1fr 1fr;gap:20px;display:grid}@media (width<=720px){.grid-2{grid-template-columns:1fr}}
