:root{--color-bg:#0f0f10;--color-surface:#1a1a1d;--color-surface-raised:#232327;--color-border:#2f2f35;--color-border-strong:#45454d;--color-text:#f5f5f5;--color-text-muted:#b3b3b8;--color-accent:#eeb717;--color-accent-text:#0f0f10;--color-success:#0fc647;--color-success-text:#3fd66b;--color-error:#e90000;--color-error-text:#ff6b6b;--color-focus:#eeb717;--font-heading:"Space Grotesk",system-ui,sans-serif;--font-body:"DM Sans",system-ui,sans-serif;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-full:999px;--text-xs:.8125rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.25rem;--text-xl:1.5rem;--text-2xl:2rem;--transition:.2s ease-out;--touch-target:44px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{color-scheme:dark;font-size:16px}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);line-height:1.5;min-height:100vh;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-heading);font-weight:700;letter-spacing:-.02em;line-height:1.1}a{color:inherit}button,input,select{color:inherit;font:inherit}:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.sr-only{height:1px;overflow:hidden;position:absolute;width:1px;clip:rect(0 0 0 0)}.btn,.sr-only{white-space:nowrap}.btn{align-items:center;background:var(--color-surface-raised);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-text);cursor:pointer;display:inline-flex;font-weight:600;gap:var(--space-sm);justify-content:center;min-height:var(--touch-target);padding:0 var(--space-md);transition:background var(--transition),border-color var(--transition),transform var(--transition)}.btn:hover:not(:disabled){border-color:var(--color-text-muted)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{cursor:not-allowed;opacity:.5}.btn--primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-accent-text)}.btn--primary:hover:not(:disabled){border-color:var(--color-accent);filter:brightness(1.08)}.btn--danger{color:var(--color-error-text)}.btn--danger:hover:not(:disabled){border-color:var(--color-error-text)}.btn--small{font-size:var(--text-sm);min-height:var(--touch-target);padding:0 var(--space-sm)}.field{display:flex;flex-direction:column;gap:var(--space-xs)}.field label{color:var(--color-text-muted);font-size:var(--text-sm);font-weight:600}.input{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-text);min-height:var(--touch-target);padding:0 var(--space-md);transition:border-color var(--transition);width:100%}.input::-moz-placeholder{color:var(--color-text-muted);opacity:.8}.input::placeholder{color:var(--color-text-muted);opacity:.8}.input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #eeb71740;outline:none}.input[aria-invalid=true]{border-color:var(--color-error-text)}.hint{color:var(--color-text-muted);font-size:var(--text-sm)}.hint--error{color:var(--color-error-text)}.hint--success{color:var(--color-success-text)}.badge{align-items:center;border:1px solid var(--color-border-strong);border-radius:var(--radius-full);color:var(--color-text-muted);display:inline-flex;font-size:var(--text-xs);font-weight:600;padding:2px var(--space-sm)}.badge--active{border-color:var(--color-success-text);color:var(--color-success-text)}.badge--retired{color:var(--color-text-muted)}.badge--rejected{border-color:var(--color-error-text);color:var(--color-error-text)}.table-wrap{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow-x:auto}.table{border-collapse:collapse;font-size:var(--text-sm);width:100%}.table td,.table th{border-bottom:1px solid var(--color-border);padding:var(--space-sm) var(--space-md);text-align:left;vertical-align:middle}.table th{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.table tr:last-child td{border-bottom:none}.table td.num{font-variant-numeric:tabular-nums}.table td.num,.table th.num{text-align:right}.version{border:1px solid var(--color-border-strong);border-radius:var(--radius-full);color:var(--color-text-muted);font-family:var(--font-heading);font-size:var(--text-xs);padding:2px var(--space-sm)}
