:root{--hx-yellow: #FFED00;--hx-yellow-hover: #ffd900;--hx-white: #FFFFFF;--hx-off-white: #F2F2F2;--hx-light-grey: #B3B3B3;--hx-grey: #313335;--hx-dark-grey: #212223;--hx-black: #000000;--hx-blue: #4A9FD8;--hx-green: #30B035;--hx-red: #FD655D;--hx-dark-red: #A71D16;--bg: var(--hx-dark-grey);--surface: var(--hx-grey);--surface-2: #2a2c2e;--border: #3d3f42;--text: var(--hx-off-white);--text-muted: var(--hx-light-grey);--accent: var(--hx-yellow);--accent-hover: var(--hx-yellow-hover);--success: var(--hx-green);--danger: var(--hx-red);--info: var(--hx-blue);--radius: 4px;--radius-lg: 6px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;padding:0;min-height:100vh}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.4;color:var(--text);background:var(--bg)}h1,h2,h3{margin:0 0 var(--space-4);letter-spacing:-.01em}h1{font-size:22px;font-weight:700}h2{font-size:18px;font-weight:600}h3{font-size:15px;font-weight:600}a{color:var(--info);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;padding:var(--space-2) var(--space-4);border:1px solid var(--accent);background:transparent;color:var(--accent);border-radius:var(--radius);font-weight:600;letter-spacing:.02em;transition:background .12s ease,color .12s ease,border-color .12s ease}button:hover:not(:disabled){background:var(--accent);color:var(--hx-black)}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:disabled{opacity:.4;cursor:not-allowed}button.primary{background:var(--accent);color:var(--hx-black);border-color:var(--accent)}button.primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}button.tertiary{border-color:var(--text);color:var(--text)}button.tertiary:hover:not(:disabled){background:transparent;border-color:var(--accent);color:var(--accent)}button.link{border:none;background:transparent;color:var(--accent);padding:var(--space-1) var(--space-2)}button.link:hover:not(:disabled){background:transparent;color:var(--accent-hover);text-decoration:underline}input,select,textarea{padding:var(--space-2) var(--space-3);border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:var(--radius);width:100%}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent)}input::placeholder{color:var(--text-muted)}input:disabled,select:disabled,textarea:disabled{opacity:.5;cursor:not-allowed}input.invalid,select.invalid,textarea.invalid{border-color:var(--danger)}input.valid,select.valid,textarea.valid{border-color:var(--success)}.form-label{font-weight:600;color:var(--text);margin-bottom:var(--space-1);display:block}.form-helper{font-size:12px;color:var(--text-muted);margin-top:var(--space-1)}.form-helper.error{color:var(--danger)}.pill{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px var(--space-2);border-radius:3px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:12px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;line-height:1.4}.pill.success{background:#30b03524;border-color:var(--success);color:var(--success)}.pill.warning{background:#ffed0024;border-color:var(--accent);color:var(--accent)}.pill.danger{background:#fd655d24;border-color:var(--danger);color:var(--danger)}.pill.info{background:#4a9fd824;border-color:var(--info);color:var(--info)}.topnav{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--border);background:var(--surface)}.topnav .links{display:flex;gap:var(--space-5)}.topnav .links a{color:var(--text-muted);font-weight:600;letter-spacing:.02em;padding:var(--space-1) 0;border-bottom:2px solid transparent;transition:color .12s ease,border-color .12s ease}.topnav .links a:hover{color:var(--text);text-decoration:none}.topnav .links a.active{color:var(--accent);border-bottom-color:var(--accent)}.topnav .user{display:flex;align-items:center;gap:var(--space-3);color:var(--text-muted)}.content{padding:var(--space-5);max-width:1200px;margin:0 auto}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5)}.card.no-pad{padding:0;overflow:hidden}.card.empty{text-align:center;padding:var(--space-6) var(--space-5)}.card.empty p{margin:0}.card.empty p+p{margin-top:var(--space-2)}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4);gap:var(--space-4)}.page-header h1{margin:0}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);vertical-align:middle}.table th{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);background:var(--surface-2)}.table tbody tr:last-child td{border-bottom:none}.table tbody tr:hover{background:var(--surface-2)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.muted{color:var(--text-muted)}.row-actions{display:flex;gap:var(--space-2);justify-content:flex-end}.row-actions button{padding:var(--space-1) var(--space-3);font-size:12px;font-weight:500}.pill+.pill{margin-left:var(--space-2)}.login{max-width:380px;margin:96px auto;padding:var(--space-6);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.login h1{margin-bottom:var(--space-5)}.login form{display:flex;flex-direction:column;gap:var(--space-3)}.login label{font-weight:600;color:var(--text)}.login button[type=submit]{margin-top:var(--space-3)}.login .error{margin-top:var(--space-3);padding:var(--space-2) var(--space-3);background:#fd655d1f;border:1px solid var(--danger);border-radius:var(--radius);color:var(--danger);font-size:13px}.loading{padding:var(--space-5);color:var(--text-muted)}::selection{background:var(--accent);color:var(--hx-black)}
