:root{--color-navy: #0a2540;--color-navy-light: #123a60;--color-bg: #f7f9fb;--color-surface: #ffffff;--color-border: #dde4ec;--color-text: #1b2a3a;--color-text-muted: #5a6b7d;--color-accent: #0ea5a3;--color-accent-dark: #0b8482;--color-accent-contrast: #ffffff;--color-success-bg: #e4f6ec;--color-success-text: #1b7a43;--color-warning-bg: #fef3dd;--color-warning-text: #92650c;--color-danger-bg: #fdeaea;--color-danger-text: #b3261e;--color-info-bg: #e7f1fb;--color-info-text: #1b5e9c;--color-neutral-bg: #eef1f4;--color-neutral-text: #4b5968;--font-size-base: 1rem;--font-size-sm: .875rem;--font-size-lg: 1.125rem;--font-size-h1: clamp(1.4rem, 1.15rem + 1.1vw, 1.75rem);--font-size-h2: clamp(1.2rem, 1.05rem + .6vw, 1.35rem);--font-size-h3: clamp(1.05rem, 1rem + .2vw, 1.1rem);--font-size-page-title: clamp(1.25rem, 1.1rem + .7vw, 1.5rem);--font-size-kpi: clamp(1.3rem, 1.1rem + .9vw, 1.6rem);--font-size-kpi-sm: clamp(1.15rem, 1rem + .8vw, 1.4rem);--line-height-base: 1.5;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--shadow-sm: 0 1px 2px rgba(10, 37, 64, .06);--shadow-md: 0 4px 16px rgba(10, 37, 64, .12)}html,body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--color-bg);color:var(--color-text);font-size:var(--font-size-base);line-height:var(--line-height-base)}h1{font-size:var(--font-size-h1)}h2{font-size:var(--font-size-h2)}h3{font-size:var(--font-size-h3)}a{color:var(--color-accent-dark)}.page-placeholder{padding:var(--space-6)}button,.btn{font-family:inherit;font-size:var(--font-size-sm);cursor:pointer}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);border:1px solid transparent;background:var(--color-accent);color:var(--color-accent-contrast);font-weight:600;line-height:1.2;transition:background .15s ease,box-shadow .15s ease,border-color .15s ease}.btn:hover:not(:disabled){background:var(--color-accent-dark)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:var(--color-surface);color:var(--color-navy);border-color:var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-bg);border-color:var(--color-accent)}.btn-danger{background:var(--color-danger-text);color:#fff}.btn-danger:hover:not(:disabled){background:#8f1f19}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--space-4)}.data-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}@media(max-width:767.98px){.data-table-wrapper table:not(.table-cards){min-width:640px}}table.data-table{width:100%;border-collapse:collapse;background:var(--color-surface);border-radius:var(--radius-md);overflow:hidden}table.data-table th,table.data-table td{text-align:left;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm)}table.data-table th{background:var(--color-bg);color:var(--color-navy);font-weight:700}table.data-table tbody tr:hover{background:var(--color-bg)}@media(min-width:768px){td:has(app-row-actions){width:1%;white-space:nowrap}}.row-action-text{border:none;background:none;padding:0;color:var(--color-accent-dark);font-weight:600;font-size:var(--font-size-sm);text-decoration:none;cursor:pointer;white-space:nowrap}.row-action-text:hover{text-decoration:underline}.row-action-text:disabled{cursor:progress;opacity:.55;text-decoration:none}.row-action-text-danger{color:var(--color-danger-text)}@media(max-width:767.98px){.row-action-text{display:inline-flex;align-items:center;min-height:44px;white-space:normal}}.form-error{color:var(--color-danger-text);font-size:var(--font-size-sm)}.status-note{color:var(--color-text-muted)}@media(max-width:767.98px){.btn,.btn-primary,.btn-secondary,.btn-danger,.primary-button,.secondary-button,.chip,.pagination button,.filter-actions button,.form-actions button,.form-actions a,.header-actions .btn,button[type=submit]{min-height:44px}input[type=checkbox],input[type=radio]{height:20px}.page-header,.panel-header,.section-header,.widget-header-row,.toolbar,.header-actions,.quick-actions,.form-actions,.filter-actions,.filters,.pagination{flex-wrap:wrap}.filters>.filter-field,.filters>.field,.filters>.filter-actions{flex:1 1 100%}}
