:root{--bg:#f6f7f9;--surface:#fff;--border:#e3e6ea;--text:#1c2024;--muted:#6b7280;--accent:#7c3aed;--accent-contrast:#fff;--danger:#b42318;--radius:8px;--sidebar-w:232px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.5}a{color:inherit;text-decoration:none}.shell{grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh;display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;gap:4px;padding:20px 12px;display:flex}.sidebar .brand{padding:4px 12px 16px;font-size:15px;font-weight:700}.nav-item{border-radius:var(--radius);color:var(--muted);padding:8px 12px;font-weight:500}.nav-item:hover{background:var(--bg);color:var(--text)}.nav-item.active{background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--accent)}.main{flex-direction:column;min-width:0;display:flex}.topbar{background:var(--surface);border-bottom:1px solid var(--border);justify-content:flex-end;align-items:center;gap:12px;height:56px;padding:0 24px;display:flex}.content{width:100%;max-width:1040px;padding:24px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px}.stack{flex-direction:column;gap:16px;display:flex}.muted{color:var(--muted)}.h1{margin:0 0 4px;font-size:20px;font-weight:700}.btn{appearance:none;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:var(--radius);font:inherit;cursor:pointer;padding:8px 14px;font-weight:600}.btn:hover:not(:disabled){background:var(--bg)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.btn-primary:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 88%, black)}.input{border:1px solid var(--border);border-radius:var(--radius);width:100%;font:inherit;background:var(--surface);padding:9px 12px}.input:focus{outline:2px solid color-mix(in srgb, var(--accent) 40%, transparent);border-color:var(--accent)}.pill{background:var(--bg);border:1px solid var(--border);color:var(--muted);border-radius:999px;margin:0 4px 4px 0;padding:2px 8px;font-size:12px;display:inline-block}.error{color:var(--danger)}.notice{background:color-mix(in srgb, var(--accent) 8%, transparent);border:1px solid color-mix(in srgb, var(--accent) 24%, transparent);border-radius:var(--radius);padding:10px 12px;font-size:13px}.table{border-collapse:collapse;width:100%;font-size:13px}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:10px 12px}.table th{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:12px;font-weight:600}.table code{font-size:12px}.modal-overlay{z-index:50;background:#11141873;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.drawer-overlay{z-index:40;background:#11141866;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer-panel{background:var(--surface);border-left:1px solid var(--border);flex-direction:column;width:min(560px,100vw);height:100vh;animation:.16s ease-out drawer-in;display:flex;box-shadow:-8px 0 24px #1114181f}@keyframes drawer-in{0%{opacity:.6;transform:translate(16px)}to{opacity:1;transform:translate(0)}}.drawer-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.drawer-head strong{font-size:15px}.drawer-close{padding:4px 10px;line-height:1}.drawer-body{flex:1;padding:20px;overflow-y:auto}.picker-item{text-align:left;border:none;border-bottom:1px solid var(--border);background:var(--surface);width:100%;font:inherit;cursor:pointer;padding:8px 12px;display:block}.picker-item:last-child{border-bottom:none}.picker-item:hover{background:var(--bg)}.fields{flex-direction:column;gap:10px;margin:0;display:flex}.field{grid-template-columns:140px 1fr;align-items:start;gap:12px;display:grid}.field>dt{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;padding-top:2px;font-size:12px;font-weight:600}.field>dd{overflow-wrap:anywhere;min-width:0;margin:0}.field-link{color:var(--accent);text-decoration:underline}.field-nested,.field-list-item{border-left:2px solid var(--border);padding-left:12px}.field-list{flex-direction:column;gap:10px;display:flex}.center{place-items:center;min-height:100vh;padding:24px;display:grid}.center .card{width:100%;max-width:380px}
