:root{--bg: #f6f7f9;--surface: #ffffff;--surface-2: #f0f2f5;--text: #1c2129;--muted: #5f6b7a;--border: #dde2e8;--primary: #0b6bcb;--primary-text: #ffffff;--danger: #c62828;--ok-bg: #e6f4ea;--ok-text: #1e6b34;--warn-bg: #fff4e0;--warn-text: #8a5300;--error-bg: #fdecea;--error-text: #a3221b;--code-bg: #f3f5f8;--radius: 8px;--gap: 16px;--font: "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif;--mono: "Cascadia Code", Consolas, "SFMono-Regular", Menlo, monospace;color-scheme:light}@media(prefers-color-scheme:dark){:root{--bg: #12151a;--surface: #1a1e25;--surface-2: #222833;--text: #e4e8ee;--muted: #96a1b0;--border: #2e3541;--primary: #4c9eef;--primary-text: #0b1420;--danger: #ef6b62;--ok-bg: #173323;--ok-text: #8fd6a5;--warn-bg: #3a2c12;--warn-text: #f1c27a;--error-bg: #3a1a18;--error-text: #f5a39c;--code-bg: #151920;color-scheme:dark}}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--text);font:15px/1.5 var(--font)}a{color:var(--primary)}h1{font-size:1.6rem;margin:0 0 8px}h2{font-size:1.2rem;margin:0 0 8px}h3{font-size:1rem;margin:12px 0 6px}code,pre,.mono{font-family:var(--mono);font-size:.88rem}.muted{color:var(--muted)}.topbar{display:flex;align-items:center;gap:24px;padding:10px 24px;background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap}.topbar .brand{font-weight:700;color:var(--text);text-decoration:none}.topbar .brand span{font-weight:400;color:var(--muted)}.topbar nav{display:flex;gap:16px;flex:1}.topbar nav a{color:var(--text);text-decoration:none;padding:4px 0}.topbar nav a.active{color:var(--primary);border-bottom:2px solid var(--primary)}.topbar .user{display:flex;align-items:center;gap:8px;margin-left:auto}.content{max-width:1280px;margin:0 auto;padding:24px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:var(--gap)}.auth-card{max-width:440px;margin:40px auto}.auth-card form{display:flex;flex-direction:column;gap:12px;margin-top:12px}.auth-card .links{margin-top:16px}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--gap)}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.toolbar{display:flex;gap:12px;align-items:flex-end;margin-bottom:12px}label{display:flex;flex-direction:column;gap:4px;font-weight:600;font-size:.9rem}label small{font-weight:400}input,select,textarea{font:inherit;font-weight:400;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:8px 10px;width:100%}textarea.mono,input.mono{font-family:var(--mono);font-size:.88rem}input:focus,select:focus,textarea:focus,.btn:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.btn{display:inline-flex;align-items:center;gap:6px;font:inherit;font-weight:600;padding:8px 14px;border-radius:6px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);cursor:pointer;text-decoration:none;white-space:nowrap}.btn:disabled{opacity:.55;cursor:default}.btn-primary{background:var(--primary);border-color:var(--primary);color:var(--primary-text)}.btn-danger{color:var(--danger);border-color:var(--danger);background:transparent}.btn-ghost{background:transparent;border-color:transparent}.btn-sm{padding:4px 10px;font-size:.85rem}.alert{padding:10px 12px;border-radius:6px;margin:8px 0}.alert-ok{background:var(--ok-bg);color:var(--ok-text)}.alert-warn{background:var(--warn-bg);color:var(--warn-text)}.alert-error{background:var(--error-bg);color:var(--error-text)}.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.8rem;font-weight:600;background:var(--surface-2);color:var(--muted)}.badge-ok,.state-Running,.status-Approved{background:var(--ok-bg);color:var(--ok-text)}.badge-warn,.state-Provisioning,.state-Stopping,.status-Pending{background:var(--warn-bg);color:var(--warn-text)}.badge-error,.state-Failed,.status-Rejected{background:var(--error-bg);color:var(--error-text)}.spinner{display:inline-block;width:14px;height:14px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite;vertical-align:-2px}@keyframes spin{to{transform:rotate(360deg)}}.status-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:8px}.facts{display:grid;grid-template-columns:max-content 1fr;gap:4px 16px;margin:8px 0}.facts dt{color:var(--muted)}.facts dd{margin:0;font-weight:600}.copy-field{margin:8px 0}.copy-label{display:block;font-size:.8rem;color:var(--muted)}.copy-row{display:flex;align-items:center;gap:4px}.copy-value{flex:1;padding:6px 8px;background:var(--code-bg);border:1px solid var(--border);border-radius:6px;overflow-x:auto;white-space:nowrap}.table-wrap{overflow-x:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--border);vertical-align:top}th{font-size:.85rem;color:var(--muted);font-weight:600}.row-actions{white-space:nowrap}.row-actions .btn{margin-left:4px}.explorer{display:grid;grid-template-columns:320px 1fr;gap:var(--gap);align-items:start}@media(max-width:900px){.explorer{grid-template-columns:1fr}}.explorer-list{position:sticky;top:12px;max-height:calc(100vh - 100px);overflow-y:auto;padding:12px}.explorer-list ul{list-style:none;margin:0;padding:0}.explorer-list h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.example{display:flex;gap:8px;align-items:baseline;width:100%;text-align:left;padding:6px 8px;border:0;border-radius:6px;background:transparent;color:var(--text);font:inherit;font-size:.9rem;cursor:pointer}.example:hover{background:var(--surface-2)}.example.active{background:var(--surface-2);outline:1px solid var(--primary)}.method{font-family:var(--mono);font-size:.72rem;font-weight:700;min-width:46px}.method-GET{color:#1f8a4c}.method-POST{color:#b26a00}.method-PATCH,.method-PUT{color:#7b4fc9}.method-DELETE{color:var(--danger)}.request-line{display:flex;gap:6px;align-items:center;margin:12px 0}.request-line select{width:auto}.request-line .path-base{font-family:var(--mono);font-size:.85rem;color:var(--muted)}.request-line input{flex:1}.code{background:var(--code-bg);border:1px solid var(--border);border-radius:6px;padding:10px 12px;overflow:auto;white-space:pre;margin:8px 0}.response-body{max-height:520px}.problem{border-left:4px solid var(--error-text);background:var(--error-bg);color:var(--error-text);padding:10px 12px;border-radius:6px;margin:8px 0}.problem p{margin:4px 0 0}.problem code{margin-left:8px}.description{white-space:pre-line}.cta{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.cta p{margin:0;flex:1}details>summary{cursor:pointer;font-weight:600;margin:4px 0}.params{font-size:.88rem;margin-top:8px}
