:root{--color-primary: #2563EB;--color-primary-hover: #1D4ED8;--color-primary-dark: #123B70;--color-primary-light: #DBEAFE;--color-secondary: #64748B;--color-surface: #FFFFFF;--color-surface-elevated: #F1F5F9;--color-background: #F8FAFC;--color-background-subtle:#EFF6FF;--color-text: #1E293B;--color-text-secondary:#64748B;--color-text-disabled: #94A3B8;--color-border: #E2E8F0;--color-border-strong: #CBD5E1;--color-success: #16A34A;--color-warning: #D97706;--color-danger: #DC2626;--color-info: #0EA5E9;--color-muted: #94A3B8;--font-sans: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "Fira Code", "Cascadia Code", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: .9375rem;--font-size-lg: 1.0625rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-base: 1.5;--line-height-relaxed: 1.75;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 32px;--space-8: 40px;--space-9: 48px;--space-10: 64px;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(15, 23, 42, .04);--shadow-sm: 0 1px 3px rgba(15, 23, 42, .07), 0 1px 2px rgba(15, 23, 42, .05);--shadow-md: 0 4px 12px rgba(15, 23, 42, .1), 0 2px 4px rgba(15, 23, 42, .06);--shadow-lg: 0 10px 24px rgba(15, 23, 42, .12), 0 4px 8px rgba(15, 23, 42, .07);--shadow-xl: 0 20px 40px rgba(15, 23, 42, .15), 0 8px 16px rgba(15, 23, 42, .08);--transition-fast: .1s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--z-dropdown: 40;--z-sticky: 20;--z-modal: 1000;--z-toast: 1100}[data-theme=dark]{--color-primary: #3B82F6;--color-primary-hover: #60A5FA;--color-primary-dark: #60A5FA;--color-primary-light: rgba(59, 130, 246, .16);--color-secondary: #94A3B8;--color-surface: #111726;--color-surface-elevated: #192236;--color-background: #0A0E17;--color-background-subtle:#0E1420;--color-text: #F1F5F9;--color-text-secondary:#94A3B8;--color-text-disabled: #475569;--color-border: #1E293B;--color-border-strong: #334155;--color-success: #10B981;--color-warning: #F59E0B;--color-danger: #EF4444;--color-info: #38BDF8;--color-muted: #64748B;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .4);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .5), 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .6), 0 2px 4px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 24px rgba(0, 0, 0, .7), 0 4px 8px rgba(0, 0, 0, .4);--shadow-xl: 0 20px 40px rgba(0, 0, 0, .8), 0 8px 16px rgba(0, 0, 0, .5)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--color-primary: #3B82F6;--color-primary-hover: #60A5FA;--color-primary-dark: #60A5FA;--color-primary-light: rgba(59, 130, 246, .16);--color-secondary: #94A3B8;--color-surface: #111726;--color-surface-elevated: #192236;--color-background: #0A0E17;--color-background-subtle:#0E1420;--color-text: #F1F5F9;--color-text-secondary:#94A3B8;--color-text-disabled: #475569;--color-border: #1E293B;--color-border-strong: #334155;--color-success: #10B981;--color-warning: #F59E0B;--color-danger: #EF4444;--color-info: #38BDF8;--color-muted: #64748B;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .4);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .5), 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .6), 0 2px 4px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 24px rgba(0, 0, 0, .7), 0 4px 8px rgba(0, 0, 0, .4);--shadow-xl: 0 20px 40px rgba(0, 0, 0, .8), 0 8px 16px rgba(0, 0, 0, .5)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;background:var(--color-background);color:var(--color-text);font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--line-height-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::selection{background:var(--color-primary-light);color:var(--color-primary-dark)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-xs)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.4}}.skeleton{background:var(--color-border);border-radius:var(--radius-sm);animation:skeleton-pulse 1.6s ease-in-out infinite;color:transparent;pointer-events:none;-webkit-user-select:none;user-select:none}.chip{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);background:var(--color-surface-elevated);color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);line-height:1.4;white-space:nowrap;transition:background var(--transition-fast),border-color var(--transition-fast)}.chip:hover{background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary)}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 var(--space-1);background:var(--color-primary);color:#fff;border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);line-height:1}.divider{border:none;border-top:1px solid var(--color-border);margin:var(--space-4) 0}.seccion{margin-bottom:28px}.seccion h2{margin:0 0 4px;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-primary-dark)}.seccion .ayuda{margin:0 0 var(--space-3);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.formulario{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:flex-end;margin-bottom:14px}.formulario label{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.formulario input,.formulario select,.formulario textarea{padding:7px 10px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font:inherit;min-width:130px;background:var(--color-surface);color:var(--color-text);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.formulario input:hover,.formulario select:hover,.formulario textarea:hover{border-color:var(--color-border-strong)}.formulario input:focus,.formulario select:focus,.formulario textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.formulario textarea{min-width:260px}.boton{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:8px 18px;border:0;border-radius:var(--radius-sm);background:var(--color-primary);color:#fff;font:inherit;font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast);text-decoration:none;-webkit-user-select:none;user-select:none}.boton:hover:not(:disabled){background:var(--color-primary-hover)}.boton:active:not(:disabled){transform:translateY(1px)}.boton:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.boton:disabled{opacity:.6;cursor:not-allowed}.boton.secundario{background:var(--color-primary-light);color:var(--color-primary-dark)}.boton.secundario:hover:not(:disabled){background:var(--color-primary);color:#fff}.boton.ok{background:var(--color-success)}.boton.ok:hover:not(:disabled){filter:brightness(1.1)}.boton.no{background:var(--color-danger)}.boton.no:hover:not(:disabled){filter:brightness(1.1)}table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}th,td{text-align:left;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border)}th{background:var(--color-background);color:var(--color-text-secondary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em}tbody tr:last-child td{border-bottom:0}td.numero{text-align:right}tbody tr{transition:background var(--transition-fast)}tbody tr:hover td{background:var(--color-background-subtle)}.estado{font-weight:var(--font-weight-semibold)}.estado.PENDIENTE{color:var(--color-warning)}.estado.APROBADA{color:var(--color-success)}.estado.RECHAZADA{color:var(--color-danger)}.mensaje-error{color:var(--color-danger);margin:var(--space-2) 0 0}.mensaje-exito{color:var(--color-success);margin:var(--space-2) 0 0}.mensaje-info{color:var(--color-text-secondary);margin:var(--space-2) 0 0}
