:root{--navy: #14348F;--navy-light: #1B3FA0;--navy-dark: #12318D;--orange: #FF6600;--orange-dark: #E35A00;--surface-1: #FFFFFF;--surface-2: #EFEFF1;--border: #e2e3e8;--border-strong: #cfd1d9;--text: #17181c;--text-secondary: #5E6886;--text-muted: #9a9ca5;--success-bg: #e7f7ee;--success-text: #0a7a3f;--warning-bg: #fff5e6;--warning-text: #b5590a;--danger-bg: #fdeceb;--danger-text: #c0392b;--radius: 10px;--radius-sm: 6px;--shadow-sm: 0 1px 2px rgba(16, 24, 40, .04);--shadow-md: 0 4px 12px rgba(16, 24, 40, .06);--font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--sidebar-width: 220px}*{box-sizing:border-box}body{margin:0;font-family:var(--font);background:var(--surface-2);color:var(--text);font-size:14px;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font);letter-spacing:-.01em}button{font-family:var(--font);cursor:pointer;border-radius:var(--radius-sm);border:1px solid var(--border);background:#fff;padding:8px 14px;font-size:13px;font-weight:500;transition:opacity .15s ease,transform .05s ease;color:var(--text)}button:hover{opacity:.85}button:active{transform:scale(.98)}button:disabled{opacity:.45;cursor:not-allowed}button.primary{background:var(--orange);color:#fff;border:none;box-shadow:var(--shadow-sm)}button.ghost{background:transparent;border:1px solid var(--border)}button.danger{background:var(--danger-bg);color:var(--danger-text);border:none}button.icon-btn{padding:6px 8px;border:none;background:transparent;color:var(--text-secondary)}button.icon-btn:hover{background:var(--surface-2);opacity:1}input,select,textarea{font-family:var(--font);font-size:13px;padding:9px 11px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#fff;width:100%;color:var(--text)}input:focus,select:focus,textarea:focus{outline:2px solid var(--navy);outline-offset:-1px}label{font-size:12px;font-weight:500;color:var(--text-secondary);display:block;margin-bottom:5px}table{border-collapse:collapse;width:100%}th,td{padding:11px 14px;font-size:13px;text-align:left}th{color:var(--text-secondary);font-weight:600;font-size:11.5px;text-transform:uppercase;letter-spacing:.03em;background:var(--surface-2)}tr{border-bottom:1px solid var(--border)}tbody tr:hover{background:#fafbfc}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.card{background:var(--surface-1);border-radius:var(--radius);border:1px solid var(--border);padding:1.1rem 1.3rem;box-shadow:var(--shadow-sm)}.badge{font-size:11px;padding:3px 10px;border-radius:20px;display:inline-block;font-weight:600}.badge.success{background:var(--success-bg);color:var(--success-text)}.badge.warning{background:var(--warning-bg);color:var(--warning-text)}.badge.danger{background:var(--danger-bg);color:var(--danger-text)}.badge.neutral{background:var(--surface-2);color:var(--text-secondary)}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.4rem;padding-bottom:1.1rem;border-bottom:1px solid var(--border);gap:12px;flex-wrap:wrap}.page-header h1{font-size:19px;font-weight:700;margin:0}.page-header p{font-size:13px;color:var(--text-secondary);margin:3px 0 0}.metric-card{background:var(--surface-1);border-radius:0 var(--radius) var(--radius) 0;border-left:3px solid var(--navy);padding:.9rem 1.1rem;box-shadow:var(--shadow-sm)}.metric-card .label{font-size:12px;color:var(--text-secondary);margin:0 0 4px}.metric-card .value{font-size:23px;font-weight:700;margin:0}.error-text{color:var(--danger-text);font-size:13px;margin:8px 0}.loading-text{color:var(--text-secondary);font-size:13px;padding:2rem;text-align:center}.empty-state{text-align:center;padding:3rem 1rem;color:var(--text-secondary)}.row-actions{display:flex;gap:4px;align-items:center;justify-content:flex-end}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f111673;display:flex;align-items:center;justify-content:center;z-index:100;padding:1rem}.modal-box{background:#fff;border-radius:var(--radius);max-width:560px;width:100%;max-height:85vh;overflow-y:auto;padding:1.4rem 1.5rem;box-shadow:var(--shadow-md)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.modal-header h2{font-size:16px;margin:0}@media (max-width: 860px){.grid-2,.metrics,.grid-cards{grid-template-columns:1fr!important}}@media (max-width: 640px){.page-header{flex-direction:column;align-items:flex-start}.card{padding:.9rem 1rem}th,td{padding:9px 10px;font-size:12.5px}}
