@charset "UTF-8";:root{--color-bg: #F5F5F3;--color-surface: #FFFFFF;--color-border: #E2E1DC;--color-text: #23262B;--color-text-muted: #6B7078;--color-graphite: #1C2129;--color-graphite-2: #262C36;--color-accent: #E85D2C;--color-accent-dark: #C74B1F;--color-accent-soft: #FDE7DD;--color-success: #2F9E5B;--color-success-soft: #E1F5E9;--color-warning: #C98A00;--color-warning-soft: #FBF0D6;--color-danger: #D14343;--color-danger-soft: #FBE4E4;--color-info: #3B6FB6;--color-info-soft: #E4ECF9;--font-ui: "Inter", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--shadow-sm: 0 1px 2px rgba(20, 20, 20, .06);--shadow-md: 0 4px 16px rgba(20, 20, 20, .08);--sidebar-width: 248px}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;font-family:var(--font-ui);background:var(--color-bg);color:var(--color-text);font-size:14px;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{margin:0 0 var(--space-3);font-weight:700;letter-spacing:-.01em}h1{font-size:24px}h2{font-size:19px}h3{font-size:16px}p{margin:0 0 var(--space-3);color:var(--color-text-muted)}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.app-shell{display:flex;min-height:100vh}.app-content{flex:1;margin-left:var(--sidebar-width);padding:var(--space-6);min-width:0}@media (max-width: 900px){.app-shell{flex-direction:column}.app-content{margin-left:0;padding:var(--space-4)}}.page-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5);flex-wrap:wrap}.page-header__title{display:flex;flex-direction:column;gap:2px}.page-header__eyebrow{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-5);box-shadow:var(--shadow-sm)}.card+.card{margin-top:var(--space-4)}.btn{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-ui);font-size:13.5px;font-weight:600;padding:9px 16px;border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,transform .05s ease;line-height:1.2}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background:var(--color-accent);color:#fff}.btn--primary:hover:not(:disabled){background:var(--color-accent-dark)}.btn--secondary{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border)}.btn--secondary:hover:not(:disabled){background:var(--color-bg)}.btn--danger{background:var(--color-danger);color:#fff}.btn--danger:hover:not(:disabled){background:#b33333}.btn--ghost{background:transparent;color:var(--color-text-muted)}.btn--ghost:hover:not(:disabled){background:var(--color-bg);color:var(--color-text)}.btn--sm{padding:5px 10px;font-size:12.5px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--space-4)}.field label{font-size:12.5px;font-weight:600;color:var(--color-text-muted)}.field input,.field select,.field textarea{font-family:var(--font-ui);font-size:14px;padding:9px 12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--color-accent);outline:none}.field textarea{resize:vertical;min-height:80px}.field--error input,.field--error select,.field--error textarea{border-color:var(--color-danger)}.field__error{font-size:12px;color:var(--color-danger)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 var(--space-4)}.form-actions{display:flex;gap:var(--space-3);justify-content:flex-end;margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.table-wrap{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}table.data-table{width:100%;border-collapse:collapse;font-size:13.5px}.data-table thead th{text-align:left;font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);background:var(--color-bg);padding:10px 14px;border-bottom:1px solid var(--color-border);white-space:nowrap}.data-table tbody td{padding:12px 14px;border-bottom:1px solid var(--color-border);vertical-align:middle}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background:var(--color-bg)}.data-table .num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.data-table .empty-row td{text-align:center;padding:var(--space-6);color:var(--color-text-muted)}.badge{display:inline-flex;align-items:center;font-family:var(--font-mono);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;padding:3px 9px;border-radius:100px}.badge--success{background:var(--color-success-soft);color:var(--color-success)}.badge--warning{background:var(--color-warning-soft);color:var(--color-warning)}.badge--danger{background:var(--color-danger-soft);color:var(--color-danger)}.badge--info{background:var(--color-info-soft);color:var(--color-info)}.badge--neutral{background:var(--color-border);color:var(--color-text-muted)}.text-muted{color:var(--color-text-muted)}.text-mono{font-family:var(--font-mono)}.flex-row{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.flex-between{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.stack{display:flex;flex-direction:column;gap:var(--space-3)}.mt-0{margin-top:0!important}.spinner{width:18px;height:18px;border:2px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:var(--space-7) var(--space-5);color:var(--color-text-muted)}.empty-state h3{color:var(--color-text);margin-bottom:var(--space-2)}
