:root{--color-background:#f6f7f9;--color-surface:#fff;--color-text:#1c2230;--color-muted:#556070;--color-border:#d3d8e0;--color-primary:#2f5bd3;--color-primary-text:#fff;--color-danger:#b42318;--color-danger-background:#fdecea;--color-success:#1b7a3d;--color-success-background:#e7f6ec;--color-warning-background:#fff4d6;--color-warning-text:#6b4e00;--color-focus:#f0a500;--radius:6px;--space-xs:.25rem;--space-s:.5rem;--space-m:1rem;--space-l:1.5rem;--space-xl:2.5rem;--content-width:70rem;--font-body:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace}@media (prefers-color-scheme:dark){:root{--color-background:#12151c;--color-surface:#1b2029;--color-text:#e6e9ef;--color-muted:#a3adbd;--color-border:#343c4a;--color-primary:#7aa2ff;--color-primary-text:#0b1020;--color-danger:#ff8a80;--color-danger-background:#3a1714;--color-success:#7ddc9b;--color-success-background:#13311f;--color-warning-background:#3b3013;--color-warning-text:#ffd978}}*,:before,:after{box-sizing:border-box}body{background:var(--color-background);color:var(--color-text);font-family:var(--font-body);margin:0;line-height:1.5}h1,h2,h3{margin:0 0 var(--space-m);line-height:1.25}a{color:var(--color-primary)}code,pre{font-family:var(--font-mono);font-size:.9em}pre{padding:var(--space-m);background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius);margin:0;overflow-x:auto}:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.muted{color:var(--color-muted)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-l);margin-bottom:var(--space-l)}.toolbar{justify-content:space-between;align-items:center;gap:var(--space-m);margin-bottom:var(--space-l);flex-wrap:wrap;display:flex}.toolbar h1,.toolbar h2{margin:0}.actions{gap:var(--space-s);flex-wrap:wrap;align-items:center;display:flex}form{gap:var(--space-m);display:grid}fieldset{gap:var(--space-m);padding:var(--space-m);border:1px solid var(--color-border);border-radius:var(--radius);margin:0;display:grid}legend{padding:0 var(--space-xs);font-weight:600}.form-grid{gap:var(--space-m);grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));display:grid}label{font-weight:600}input,select,textarea,button,.button{font:inherit;border-radius:var(--radius)}input:not([type=checkbox],[type=radio]),select,textarea{width:100%;padding:var(--space-s);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border)}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--color-danger)}input:disabled,select:disabled{opacity:.6}textarea{resize:vertical;min-height:6rem}.choice{gap:var(--space-s);align-items:baseline;font-weight:400;display:flex}button,.button{padding:var(--space-s) var(--space-m);border:1px solid var(--color-primary);background:var(--color-primary);color:var(--color-primary-text);cursor:pointer;font-weight:600;text-decoration:none;display:inline-block}button.secondary,.button.secondary{color:var(--color-primary);background:0 0}button.danger{background:var(--color-danger);border-color:var(--color-danger);color:var(--color-surface)}button:disabled{cursor:progress;opacity:.7}.table-wrapper{overflow-x:auto}table{border-collapse:collapse;background:var(--color-surface);width:100%}th,td{padding:var(--space-s) var(--space-m);text-align:left;border-bottom:1px solid var(--color-border);vertical-align:middle}th{color:var(--color-muted);font-size:.875rem}.badge{padding:0 var(--space-s);background:var(--color-warning-background);color:var(--color-warning-text);border-radius:999px;font-size:.8rem;font-weight:600;display:inline-block}.notice{padding:var(--space-m);border-radius:var(--radius);border:1px solid}.notice.success{background:var(--color-success-background);color:var(--color-success)}.notice.warning{background:var(--color-warning-background);color:var(--color-warning-text)}.notice p{margin:var(--space-xs) 0}
