:root{--color-navy-900: #0f1233;--color-navy-800: #14173f;--color-navy-700: #171a4a;--color-accent: #f2a93b;--color-accent-ink: #1a1300;--color-danger: #d64545;--color-success: #2e8b3d;--color-bg-app: #f5f6fa;--color-bg: #ffffff;--color-border: #e4e7ee;--color-text: #333a4d;--color-text-muted: #6b7186;--font-heading: "Plus Jakarta Sans", sans-serif;--font-body: "Nunito", sans-serif;--radius-md: 10px;--radius-lg: 14px;--sidebar-width: 250px}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{font-family:var(--font-body);color:var(--color-text);background:var(--color-bg-app);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-heading);margin:0;color:var(--color-navy-800)}p{margin:0}a{text-decoration:none;color:inherit}button{font-family:var(--font-body)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:var(--radius-md);font-family:var(--font-heading);font-weight:700;font-size:14px;cursor:pointer;border:1px solid transparent;white-space:nowrap;transition:opacity .15s ease}.btn-primary{background:var(--color-navy-700);color:#fff}.btn-primary:hover{opacity:.9}.btn-accent{background:var(--color-accent);color:var(--color-accent-ink)}.btn-accent:hover{opacity:.9}.btn-danger{background:#fdeceb;color:var(--color-danger)}.btn-danger:hover{background:var(--color-danger);color:#fff}.btn-ghost{background:transparent;border-color:var(--color-border);color:var(--color-text)}.btn-ghost:hover{border-color:var(--color-navy-700)}.btn:disabled{opacity:.5;cursor:not-allowed}.card{background:var(--color-bg);border-radius:var(--radius-lg);border:1px solid var(--color-border)}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:13px;font-weight:700;color:var(--color-text)}.field .hint{font-size:12px;color:var(--color-text-muted)}.field input[type=text],.field input[type=email],.field input[type=tel],.field input[type=password],.field input[type=number],.field input[type=date],.field input[type=url],.field textarea,.field select{font-family:var(--font-body);font-size:14px;padding:10px 12px;border-radius:var(--radius-md);border:1px solid var(--color-border);background:#fff;color:var(--color-text)}.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--color-navy-700)}.field textarea{resize:vertical;min-height:90px}.checkbox-field{display:flex;align-items:center;gap:8px;font-size:14px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}@media(max-width:720px){.form-grid{grid-template-columns:1fr}}.form-actions{display:flex;gap:12px;margin-top:24px}table.data-table{width:100%;border-collapse:collapse;font-size:14px}table.data-table th{text-align:left;font-family:var(--font-heading);font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted);padding:12px 16px;border-bottom:1px solid var(--color-border)}table.data-table td{padding:12px 16px;border-bottom:1px solid var(--color-border);vertical-align:middle}table.data-table tbody tr:hover{background:#fafbfd}.badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700}.badge-success{background:#e7f5e9;color:var(--color-success)}.badge-muted{background:#eef0f5;color:var(--color-text-muted)}.badge-warning{background:#fdf2e3;color:#b5750f}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:16px;flex-wrap:wrap}.empty-state{padding:48px 24px;text-align:center;color:var(--color-text-muted)}.error-banner{background:#fdeceb;color:var(--color-danger);border-radius:var(--radius-md);padding:12px 16px;font-size:14px;margin-bottom:16px}
