.qr-pago-overlay{z-index:10050;background:#0f172a80;display:flex;align-items:center;justify-content:center;padding:1rem}.qr-pago-modal{width:min(340px,100%);background:var(--surface, #fff);border-radius:16px;box-shadow:0 20px 50px #0f172a40;overflow:hidden}.qr-pago-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:1rem 1.1rem .65rem;border-bottom:1px solid var(--border, #e5e7eb)}.qr-pago-top h2{margin:0;font-size:1.1rem;font-weight:700}.qr-pago-banco{margin:.2rem 0 0;font-size:.82rem;color:var(--muted, #64748b)}.qr-pago-close{flex-shrink:0;border:none;background:transparent;font-size:1.5rem;line-height:1;color:var(--muted, #64748b);cursor:pointer;padding:0 .15rem}.qr-pago-close:hover{color:var(--text, #0f172a)}.qr-pago-monto-box{display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.85rem 1rem .5rem;text-align:center}.qr-pago-monto-box span{font-size:.8rem;color:var(--muted, #64748b)}.qr-pago-monto-box strong{font-size:1.75rem;font-weight:800;color:var(--primary, #1d4ed8);letter-spacing:-.02em}.qr-pago-code{display:flex;align-items:center;justify-content:center;min-height:220px;padding:.5rem 1.25rem .75rem}.qr-pago-code-img{display:block;width:min(240px,100%);height:auto;aspect-ratio:1;object-fit:contain;border-radius:8px;background:#fff}.qr-pago-loading{margin:0;color:var(--muted, #64748b);font-size:.9rem}.qr-pago-pasos{margin:0;padding:0 1.25rem .85rem 2.1rem;font-size:.88rem;line-height:1.55;color:var(--text, #334155)}.qr-pago-pasos li{margin-bottom:.35rem}.qr-pago-pasos li:last-child{margin-bottom:0}.qr-pago-acciones{padding:.75rem 1.1rem 1.1rem;border-top:1px solid var(--border, #e5e7eb)}.qr-pago-acciones .btn-block{width:100%}.qr-pago-alerta{padding:1rem 1.1rem}.qr-pago-alerta p{margin:0 0 .75rem;font-size:.9rem;line-height:1.45;color:var(--danger, #dc2626)}.qr-pago-reabrir{margin-top:.5rem}.banco-qr-preview{display:flex;justify-content:center;margin:.75rem 0}.banco-qr-preview img{max-width:140px;border-radius:8px;border:1px solid var(--border);background:#fff}.banco-qr-upload-hint{margin:.35rem 0 0;font-size:.82rem;color:var(--muted);line-height:1.45}.bancos-aviso-qr{margin-bottom:1rem;padding:.85rem 1rem;border-radius:10px;background:#2563eb14;border:1px solid rgba(37,99,235,.2);font-size:.88rem;line-height:1.5;color:#1e3a8a}.recibo-preview-wrap{display:flex;flex-direction:column;align-items:center;padding:1rem 0;width:100%;box-sizing:border-box}.comp-original{--ticket-ancho: 76mm;--ticket-margen: 3.5mm;width:var(--ticket-ancho);max-width:100%;box-sizing:border-box;margin:0 auto;background:#fff;color:#000;padding:2mm var(--ticket-margen) 3mm}.comp-thermal{font-family:Courier New,Courier,Lucida Console,monospace;font-size:9.5px;line-height:1.15;letter-spacing:0;color:#000;width:100%;max-width:100%;overflow:hidden;box-sizing:border-box}.t-line{margin:0;padding:0;font-weight:400;word-break:break-word;overflow-wrap:anywhere}.t-mono{font-family:inherit;white-space:pre-wrap;word-break:break-word}.t-kv{display:flex;justify-content:space-between;align-items:baseline;gap:6px;width:100%;max-width:100%;margin:0;padding:0;font-family:inherit;box-sizing:border-box}.t-kv-label{flex:0 1 auto;min-width:0;max-width:48%}.t-kv-value{flex:0 1 auto;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:52%}.t-kv.t-mag .t-kv-label,.t-kv.t-mag .t-kv-value{font-weight:700;font-size:10px;line-height:1.2}.t-center{text-align:center}.t-left{text-align:left;overflow-wrap:anywhere}.t-mag{font-weight:700;font-size:10px;line-height:1.2}.t-section{margin-top:1px;font-weight:700;font-size:10px;line-height:1.2;text-transform:uppercase}.t-head{font-weight:700}.t-row{display:grid;grid-template-columns:4ch minmax(0,1fr) 11ch;column-gap:1ch;align-items:baseline;margin:0;padding:0;font-family:inherit;max-width:100%}.t-row-head{font-weight:700}.t-col-cant{text-align:center;white-space:nowrap;overflow:hidden;padding-right:.3ch}.t-col-desc{text-align:left;min-width:0;word-break:break-word;overflow-wrap:anywhere;padding-left:.2ch}.t-col-imp{text-align:right;white-space:nowrap;overflow:visible;font-variant-numeric:tabular-nums}.t-row-indent .t-col-desc{padding-left:.2ch}.t-indent{padding-left:6.5ch}.t-spacer{height:.35em;line-height:.35em}.t-rule{border:none;border-top:1px solid #000;margin:2px 0;height:0}.t-total{margin-top:1px}.t-total.t-mag{margin-top:2px}@media screen{.recibo-preview-wrap .comp-original{box-shadow:0 2px 12px #0000001a}.recibo-solo-page{background:#eceff1}.recibo-solo-page .comp-original{box-shadow:0 1px 6px #0000001f}}@media screen and (max-width:400px){.comp-original{width:100%;max-width:76mm}}.print-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;padding:10px 12px;background:#1e293b;color:#fff;font-family:Arial,Helvetica,sans-serif;font-size:13px}.print-toolbar-label{font-weight:600}.print-toolbar-btn{border:1px solid #64748b;background:#334155;color:#fff;border-radius:6px;padding:6px 12px;font-size:13px;cursor:pointer}.print-toolbar-btn:hover{background:#475569}.print-toolbar-btn.is-active{background:#2563eb;border-color:#2563eb}.print-toolbar-btn-primary{background:#16a34a;border-color:#16a34a;font-weight:700;margin-left:4px}.print-toolbar-btn-primary:hover{background:#15803d}.print-toolbar-hint{flex-basis:100%;text-align:center;font-size:11px;color:#94a3b8;margin-top:2px}.print-preview-body{display:flex;flex-direction:column;align-items:center;min-height:100vh;background:#e8eaed;padding:12px 0 24px;box-sizing:border-box}html.format-a4 .print-preview-body{padding:24px 16px}@media print{.no-print{display:none!important}html,body{min-height:auto!important;height:auto!important;margin:0!important;padding:0!important;background:#fff!important;color:#000!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.print-preview-body{display:block!important;min-height:auto!important;padding:0!important;background:#fff!important}.comp-original{box-shadow:none!important;page-break-inside:avoid;break-inside:avoid}html.format-ticket,html.format-ticket body,html.format-ticket .print-preview-body{width:76mm!important;max-width:76mm!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important}html.format-ticket .comp-original,html.format-ticket .comp-ticket-copy{width:69mm!important;max-width:69mm!important;margin:0 auto!important;padding:2mm 3.5mm 3mm!important}html.format-ticket .comp-thermal{font-size:8.5pt!important;line-height:1.15!important}html.format-ticket .t-mag,html.format-ticket .t-section{font-size:9pt!important;line-height:1.15!important}html.format-a4 body{width:auto!important;max-width:none!important}html.format-a4 .print-preview-body{display:flex!important;justify-content:center!important;align-items:flex-start!important;min-height:auto!important;padding:0!important}html.format-a4 .comp-original{width:69mm!important;max-width:69mm!important;margin:0 auto!important;padding:2mm 3.5mm 3mm!important}}.recibo-solo-page{display:flex;flex-direction:column;min-height:calc(100vh + -0px);height:calc(100vh + -0px);margin:-1.75rem -2rem;padding:0;background:#eceff1;box-sizing:border-box;overflow:hidden}.recibo-solo-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-shrink:0;padding:.65rem 1rem;background:var(--md-surface-container);border-bottom:1px solid var(--border);box-shadow:var(--elevation-1)}.recibo-solo-nro{font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:.8rem;font-weight:700;color:var(--dash-purple-deep);letter-spacing:.02em}.recibo-solo-fit{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:10px;box-sizing:border-box}.recibo-solo-ticket{transform-origin:center center;will-change:transform}.recibo-solo-page .comp-original{width:80mm;max-width:80mm;box-shadow:none;margin:0}.productos-form-box{border:2px solid var(--border);border-radius:var(--radius);overflow:hidden;margin:1rem 0;font-family:Arial,Helvetica,sans-serif}.productos-form-box .productos-form-header{display:grid;grid-template-columns:2fr .7fr .9fr .9fr 2.5rem;background:#4a4a4a;color:#fff;font-size:.75rem;font-weight:600;text-transform:uppercase}.productos-form-box .productos-form-header span{padding:.55rem .65rem;border-right:1px solid #3a3a3a;text-align:center}.productos-form-box .productos-form-header span:first-child{text-align:left}.productos-form-box .productos-form-header span.col-accion{border-right:none}.productos-form-row{display:grid;grid-template-columns:2fr .7fr .9fr .9fr 2.5rem;border-bottom:1px solid var(--border)}.productos-form-row .cell{padding:.35rem;border-right:1px solid var(--border);display:flex;align-items:center}.productos-form-row .cell.cell-readonly{justify-content:center;font-weight:600;color:var(--accent);background:var(--surface2)}.productos-form-row .cell.cell-accion{border-right:none;justify-content:center}.btn-eliminar-linea{width:1.75rem;height:1.75rem;border:1px solid var(--border);border-radius:6px;background:var(--surface2);color:var(--danger);cursor:pointer}.productos-form-row input{width:100%;padding:.5rem;font-family:Arial,sans-serif;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text)}.productos-form-actions{padding:.65rem .75rem;border-top:1px solid var(--border)}.recibo-actions-screen{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center}.impresora-status{margin-bottom:1rem;border-left:4px solid var(--border-strong)}.impresora-status--ok{border-left-color:var(--md-success);background:var(--success-muted)}.impresora-status--warn{border-left-color:#d97706;background:#fffbeb}.impresora-status--error{border-left-color:var(--danger);background:var(--danger-muted)}.impresora-status-title{margin:0 0 .35rem;font-size:1rem;font-weight:700;color:var(--text)}.impresora-status-text{margin:0;font-size:.9rem;line-height:1.45;color:var(--text-secondary, var(--muted))}.impresora-card{margin-bottom:1rem}.impresora-card--highlight{border-color:var(--primary);box-shadow:0 0 0 1px #2563eb1f}.impresora-card-title{margin:0 0 .75rem;font-size:1rem;font-weight:700}.impresora-lead{margin:0 0 1rem;font-size:.9rem;line-height:1.5;color:var(--muted)}.impresora-steps{margin:0 0 1rem 1.1rem;padding:0;font-size:.9rem;line-height:1.55}.impresora-steps li+li{margin-top:.5rem}.impresora-faq{margin:0;padding-left:1.1rem;font-size:.9rem;line-height:1.55}.impresora-faq li+li{margin-top:.65rem}.impresora-actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.impresora-host-box{margin:.75rem 0 1rem;padding:.75rem 1rem;background:#0f172a;color:#f8fafc;border-radius:8px;text-align:center;font-size:1.05rem}.impresora-host-box code{color:inherit;font-weight:700;letter-spacing:.02em}.impresora-http-warn{margin:.85rem 0 0;padding:.75rem .9rem;background:#fef3c7;border:1px solid #f59e0b;border-radius:8px;color:#92400e;font-size:.92rem;line-height:1.45}.header-compact .btn-sm{align-self:flex-start;flex-shrink:0}@media(max-width:640px){.header.header-compact{flex-direction:column;align-items:stretch;gap:.75rem}}.impresora-check-row{display:flex;align-items:flex-start;gap:.6rem;font-size:.92rem;line-height:1.45;cursor:pointer}.impresora-check-row input{margin-top:.2rem;flex-shrink:0}:root{--md-primary: #3498db;--md-on-primary: #ffffff;--md-primary-container: #e8f4fc;--md-on-primary-container: #1a5276;--md-secondary: #2980b9;--md-secondary-container: #dceef9;--md-on-secondary-container: #1b4f72;--md-tertiary: #17a2b8;--md-tertiary-container: #d1ecf1;--md-surface: #f2f4f7;--md-surface-dim: #e8ecf1;--md-surface-bright: #ffffff;--md-surface-container: #ffffff;--md-surface-container-low: #f7f9fc;--md-surface-container-high: #e9eef5;--md-on-surface: #2c3e50;--md-on-surface-variant: #5d6d7e;--md-outline: #7f8c8d;--md-outline-variant: #d5dde6;--md-error: #c0392b;--md-on-error-container: #922b21;--md-success: #27ae60;--md-warning: #e67e22;--dash-purple: #3498db;--dash-purple-deep: #2c3e50;--dash-gradient: linear-gradient(180deg, #5dade2 0%, #3498db 48%, #2980b9 100%);--dash-gradient-primary: linear-gradient(180deg, #5dade2 0%, #3498db 55%, #2980b9 100%);--dash-gradient-teal: linear-gradient(180deg, #48c9b0 0%, #17a2b8 100%);--sidebar-dark: linear-gradient(180deg, #34495e 0%, #2c3e50 55%, #243342 100%);--bg: var(--md-surface);--bg-mesh: none;--surface: var(--md-surface-container);--surface2: var(--md-surface-container-low);--surface-hover: var(--md-surface-container-high);--surface-elevated: var(--md-surface-bright);--border: var(--md-outline-variant);--border-strong: #bdc3c7;--text: var(--md-on-surface);--text-secondary: var(--md-on-surface-variant);--muted: var(--md-outline);--primary: var(--md-primary);--primary-hover: #2980b9;--primary-muted: var(--md-primary-container);--primary-glow: rgba(52, 152, 219, .35);--accent: var(--md-tertiary);--accent-muted: rgba(23, 162, 184, .12);--accent-soft: var(--md-primary-container);--success: var(--md-success);--success-muted: rgba(39, 174, 96, .12);--warning: var(--md-warning);--warning-muted: rgba(230, 126, 34, .12);--danger: var(--md-error);--danger-muted: rgba(192, 57, 43, .1);--violet: #5dade2;--emerald: var(--md-success);--teal: var(--md-tertiary);--indigo: var(--md-primary);--chart-grid: var(--md-outline-variant);--sidebar-bg: #2c3e50;--sidebar-accent: #3498db;--radius: 8px;--radius-lg: 10px;--radius-sm: 6px;--radius-full: 9999px;--elevation-1: 0 1px 3px rgba(44, 62, 80, .08), 0 1px 2px rgba(44, 62, 80, .06);--elevation-2: 0 4px 12px rgba(44, 62, 80, .1);--elevation-3: 0 8px 24px rgba(44, 62, 80, .14);--shadow-sm: var(--elevation-1);--shadow-md: var(--elevation-3);--shadow-card: 0 2px 6px rgba(44, 62, 80, .07), 0 6px 18px rgba(44, 62, 80, .05);--font: "Roboto", "Plus Jakarta Sans", system-ui, sans-serif;--font-display: "Plus Jakarta Sans", "Roboto", system-ui, sans-serif;--font-brand: "Exo 2", "Plus Jakarta Sans", system-ui, sans-serif;--state-hover: rgba(52, 152, 219, .1);--state-pressed: rgba(52, 152, 219, .16);--scrim: rgba(44, 62, 80, .5)}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.5;overflow:hidden}a{color:var(--md-primary);text-decoration:none;transition:color .2s}a:hover{color:var(--primary-hover)}.app-layout{display:flex;height:100%;overflow:hidden}.sidebar{position:relative;width:268px;flex-shrink:0;height:100%;background:var(--sidebar-dark);border-right:none;padding:1.1rem .9rem .75rem;display:flex;flex-direction:column;gap:0;overflow:hidden;box-shadow:4px 0 20px #2c3e5026}.sidebar:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--dash-gradient);z-index:1}.sidebar-brand{flex-shrink:0;display:flex;align-items:stretch;gap:.7rem;margin-bottom:.85rem;padding:.15rem .2rem .85rem;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-brand-accent{flex-shrink:0;width:3px;border-radius:3px;background:linear-gradient(180deg,#5dade2,#3498db 45%,#27ae60)}.sidebar-brand-info{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:.22rem}.sidebar-brand-title{margin:0;font-family:var(--font-brand);font-size:1.02rem;font-weight:800;letter-spacing:.07em;line-height:1.15;color:#fff}.sidebar-brand-title-at{color:#52d681}.sidebar-brand-empresa{margin:0;font-size:.62rem;font-weight:500;color:#ffffff85;line-height:1.35;letter-spacing:.015em}.sidebar-logo{display:flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;border-radius:var(--radius-sm);background:var(--dash-gradient);color:var(--md-on-primary);font-size:.75rem;font-weight:700;font-family:var(--font-display);letter-spacing:.02em;box-shadow:0 3px 10px #3498db59;flex-shrink:0}.sidebar-brand-text{display:flex;flex-direction:column;min-width:0;font-size:1.05rem;font-weight:700;color:#fff;line-height:1.2}.sidebar-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;margin:0 -.35rem;padding:0 .35rem .5rem}.sidebar-scroll::-webkit-scrollbar{width:6px}.sidebar-scroll::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:3px}.sidebar-brand-text small{display:block;font-size:.62rem;color:#ffffff85;font-weight:500;margin-top:.15rem;line-height:1.3;white-space:normal;word-break:break-word}.nav-link{display:flex;align-items:center;gap:.65rem;padding:.55rem .75rem;border-radius:var(--radius);color:#ffffff9e;font-size:.88rem;transition:all .15s}.nav-link-label{flex:1;min-width:0;line-height:1.25}.nav-link:hover{background:#ffffff14;color:#fff}.nav-link.active{background:linear-gradient(90deg,#3498db59,#2980b933);color:#fff;font-weight:600;box-shadow:inset 3px 0 #5dade2}.nav-link.active .nav-icon,.nav-sublink.active .nav-icon,.nav-submenu-toggle.active-parent .nav-icon{color:#aed6f1}.nav-icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;color:#ffffff73;transition:color .15s}.nav-icon svg{display:block}.nav-icon-md{width:1.15rem;height:1.15rem}.nav-icon-sm{width:.95rem;height:.95rem}.nav-link:hover .nav-icon,.nav-sublink:hover .nav-icon,.nav-submenu-toggle:hover .nav-icon{color:#fff}.nav-section{font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:#ffffff61;margin:.75rem 0 .25rem .5rem}.nav-section--erp{font-size:.68rem;font-weight:700;letter-spacing:.12em;color:#ffffff8c;margin-top:1rem;padding-top:.65rem;border-top:1px solid rgba(255,255,255,.08)}.sidebar-nav--erp .nav-submenu-wrap{margin-bottom:.1rem}.inventario-placeholder{padding:1.25rem 1.5rem;max-width:36rem}.inventario-placeholder p{margin:.5rem 0 0;color:var(--md-on-surface-variant);line-height:1.5}.inventario-page{display:flex;flex-direction:column;gap:1.1rem;width:100%;max-width:none}.inv-hero{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem 1.5rem;padding:1.35rem 1.5rem;border-radius:16px;background:linear-gradient(135deg,#fff,#f8fafc 48%,#eff6ff);border:1px solid rgba(37,99,235,.12);box-shadow:0 4px 24px #0f172a0f}.inv-hero-eyebrow{margin:0 0 .2rem;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#2563eb}.inv-hero h1{margin:0;font-size:1.65rem;font-weight:800;letter-spacing:-.02em;color:#0f172a}.inv-hero-sub{margin:.45rem 0 0;max-width:36rem;font-size:.92rem;line-height:1.5;color:#64748b}.inv-hero-kpis{display:flex;gap:.65rem}.inv-hero-kpis--compact .inv-kpi{min-width:7rem;padding:.65rem .9rem}.inv-kpi{display:flex;flex-direction:column;gap:.15rem;padding:.85rem 1rem;border-radius:12px;background:#fff;border:1px solid #e2e8f0}.inv-kpi-label{font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#64748b}.inv-kpi-value{font-size:1.35rem;font-weight:800;line-height:1.1;color:#0f172a}.inv-kpi--blue{border-color:#bfdbfe;background:linear-gradient(180deg,#eff6ff,#fff)}.inv-kpi--blue .inv-kpi-value{color:#1d4ed8}.inv-kpi--green{border-color:#bbf7d0;background:linear-gradient(180deg,#f0fdf4,#fff)}.inv-kpi--green .inv-kpi-value{color:#15803d}.inv-kpi--warn{border-color:#fed7aa;background:linear-gradient(180deg,#fff7ed,#fff)}.inv-kpi--warn .inv-kpi-value{color:#c2410c}.inv-kpi--accent{border-color:#c7d2fe;background:linear-gradient(180deg,#eef2ff,#fff)}.inv-kpi--accent .inv-kpi-value{color:#4338ca}.inv-kpi--card{box-shadow:0 1px 3px #0f172a0a}.inv-alert-strip{display:flex;align-items:flex-start;gap:.75rem;padding:.85rem 1rem;border-radius:12px;background:linear-gradient(90deg,#fffbeb,#fff);border:1px solid #fcd34d}.inv-alert-strip-icon{flex-shrink:0;width:1.6rem;height:1.6rem;display:grid;place-items:center;border-radius:50%;background:#f59e0b;color:#fff;font-weight:800;font-size:.85rem}.inv-alert-strip-body strong{display:block;margin-bottom:.4rem;color:#92400e;font-size:.88rem}.inv-alert-chips{display:flex;flex-wrap:wrap;gap:.35rem}.inv-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem}.inv-segment{display:inline-flex;gap:.5rem;padding:.35rem;border-radius:14px;background:#fff;border:1px solid #e2e8f0;box-shadow:0 1px 2px #0f172a0a}.inv-segment--sm{padding:.25rem;border-radius:10px}.inv-segment-btn{display:inline-flex;align-items:center;gap:.65rem;padding:.55rem .85rem;border:none;border-radius:10px;background:transparent;color:#475569;cursor:pointer;transition:background .15s,color .15s,box-shadow .15s;text-align:left}.inv-segment-btn--sm{padding:.45rem .9rem;font-size:.88rem;font-weight:600}.inv-segment-btn:hover{background:#f1f5f9;color:#0f172a}.inv-segment-btn.is-active{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 4px 12px #2563eb59}.inv-segment-btn.is-active .inv-segment-desc{color:#ffffffd1}.inv-segment-icon{font-size:1.35rem;line-height:1}.inv-segment-text{display:flex;flex-direction:column;gap:.05rem}.inv-segment-title{font-size:.88rem;font-weight:700}.inv-segment-desc{font-size:.72rem;color:#94a3b8}.inv-feedback{margin:0}.inv-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;justify-content:flex-end}.inv-panel--full{width:100%;max-width:100%}.inv-layout{display:grid;grid-template-columns:1fr;gap:1rem;align-items:start;width:100%;max-width:100%}.inv-panel{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #0f172a0d;overflow:hidden}.inv-panel--main,.inv-panel--ventas{padding:0;min-width:0;max-width:100%;overflow:hidden}.inventario-page--nuevo{max-width:960px}.inv-nuevo-header .page-subtitle{max-width:36rem;line-height:1.45}.inv-tipo-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-bottom:1.1rem}.inv-tipo-card{display:flex;align-items:center;gap:.75rem;padding:.9rem 1rem;border:1px solid #dbe3ee;border-radius:14px;background:#fff;text-align:left;cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s;font:inherit;color:inherit;position:relative}.inv-tipo-card:hover{border-color:#93c5fd;background:#f8fbff}.inv-tipo-card.is-active{border-color:#2563eb;background:linear-gradient(180deg,#eff6ff,#fff);box-shadow:0 0 0 3px #2563eb1f}.inv-tipo-card-icon{font-size:1.55rem;width:2.6rem;height:2.6rem;display:grid;place-items:center;border-radius:12px;background:#f1f5f9;flex-shrink:0}.inv-tipo-card.is-active .inv-tipo-card-icon{background:#dbeafe}.inv-tipo-card-body{display:flex;flex-direction:column;gap:.15rem;min-width:0}.inv-tipo-card-body strong{font-size:.95rem;font-weight:800;color:#0f172a}.inv-tipo-card-body span{font-size:.78rem;color:#64748b;line-height:1.3}.inv-tipo-card-check{margin-left:auto;width:1.4rem;height:1.4rem;border-radius:999px;background:#2563eb;color:#fff;font-size:.72rem;font-weight:800;display:grid;place-items:center;flex-shrink:0}.inv-form-card{padding:0;display:flex;flex-direction:column;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 8px 28px #0f172a0f;overflow:hidden}.inv-form-card-top{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:1rem;padding:1.15rem 1.35rem;background:linear-gradient(180deg,#f8fafc,#fff);border-bottom:1px solid #e8eef5}.inv-form-card-top-main{display:flex;align-items:flex-start;gap:.85rem}.inv-form-card-icon{font-size:1.5rem;width:2.75rem;height:2.75rem;display:grid;place-items:center;border-radius:12px;background:#eff6ff;border:1px solid #bfdbfe;flex-shrink:0}.inv-form-card-top-main h2{margin:0;font-size:1.05rem;font-weight:800;color:#0f172a}.inv-form-card-top-main p{margin:.25rem 0 0;font-size:.82rem;color:#64748b;line-height:1.4}.inv-form-preview{padding:.75rem .85rem;border-radius:12px;border:1px solid #dbeafe;background:#f8fbff}.inv-form-preview-label{display:block;margin-bottom:.45rem;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#64748b}.inv-form-preview-row{display:flex;align-items:flex-start;gap:.55rem;min-width:0}.inv-form-preview-text{display:flex;flex-direction:column;gap:.15rem;min-width:0}.inv-form-preview-text strong{font-size:.9rem;font-weight:700;color:#0f172a;line-height:1.3;word-break:break-word}.inv-form-preview-text span{font-size:.78rem;color:#64748b}.inv-form-card .inv-form-section{padding:1.15rem 1.35rem 1.25rem;margin:0;border-bottom:1px solid #eef2f7}.inv-form-card .inv-form-section:last-of-type{border-bottom:none}.inv-form-section-head{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.95rem}.inv-form-step{width:1.65rem;height:1.65rem;border-radius:8px;background:#1e3a5f;color:#fff;font-size:.78rem;font-weight:800;display:grid;place-items:center;flex-shrink:0;margin-top:.05rem}.inv-form-card .inv-form-section-title{margin:0;font-size:.78rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#334155}.inv-form-section-hint{margin:.2rem 0 0;font-size:.8rem;color:#64748b;line-height:1.35}.inv-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.95rem 1rem}.inv-form-span2{grid-column:span 2}.inv-form-span-full{grid-column:1 / -1}.inv-form-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}.inv-metric-field{padding:.85rem .9rem;border:1px solid #e2e8f0;border-radius:12px;background:#fafbfc}.inv-metric-field label{font-weight:700;color:#334155}.inv-metric-field input,.inv-metric-field .inv-input-prefix{background:#fff}.inv-form-card .form-group{margin-bottom:0}.inv-form-card .form-group label{display:block;margin-bottom:.35rem;font-size:.82rem;font-weight:600;color:#475569}.inv-form-card .form-group input,.inv-form-card .form-group textarea,.inv-form-card .form-group select{width:100%}.inv-form-card .form-hint{display:block;margin-top:.35rem;font-size:.74rem;color:#94a3b8;line-height:1.35}.inv-form-note{display:flex;flex-direction:column;gap:.2rem;margin:0 1.35rem .25rem;padding:.85rem 1rem;border-radius:12px;border:1px solid #bfdbfe;background:#eff6ff;color:#1e3a5f;font-size:.84rem;line-height:1.4}.inv-form-note strong{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:#1d4ed8}.inv-form-actions{display:flex;justify-content:flex-end;align-items:center;gap:.65rem;padding:1rem 1.35rem 1.2rem;border-top:1px solid #eef2f7;background:#fafbfc;margin-top:.5rem}.inv-form-submit{min-width:11rem;font-weight:700}@media(max-width:860px){.inv-form-card-top{grid-template-columns:1fr}}@media(max-width:720px){.inv-tipo-picker,.inv-form-grid,.inv-form-metrics{grid-template-columns:1fr}.inv-form-span2,.inv-form-span-full{grid-column:auto}.inv-form-actions{flex-direction:column-reverse}.inv-form-actions .btn{width:100%;justify-content:center}.inv-form-submit{min-width:0}}.inv-panel-head{display:flex;align-items:center;gap:.75rem;padding:1.1rem 1.25rem;border-bottom:1px solid #f1f5f9;background:linear-gradient(180deg,#fafbfc,#fff)}.inv-panel-head--row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end}.inv-panel-head h2{margin:0;font-size:1.05rem;font-weight:800;color:#0f172a}.inv-panel-head p{margin:.2rem 0 0;font-size:.82rem;color:#64748b}.inv-panel-icon{font-size:1.6rem;width:2.5rem;height:2.5rem;display:grid;place-items:center;border-radius:10px;background:#eff6ff}.inv-form{padding:1rem 1.25rem 1.25rem;display:flex;flex-direction:column;gap:.5rem}.inv-form-section{padding-bottom:.5rem;margin-bottom:.25rem;border-bottom:1px dashed #e2e8f0}.inv-form-section:last-of-type{border-bottom:none}.inv-form-section-title{margin:0 0 .65rem;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#94a3b8}.inv-form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.inv-input-code{font-family:ui-monospace,Cascadia Code,monospace;font-weight:700;letter-spacing:.04em;color:#1d4ed8;background:#f8fafc!important}.inv-input-prefix{display:flex;align-items:center;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;background:#fff}.inv-input-prefix span{padding:0 .55rem;font-size:.82rem;font-weight:600;color:#64748b;background:#f8fafc;border-right:1px solid var(--border);align-self:stretch;display:flex;align-items:center}.inv-input-prefix input{border:none!important;border-radius:0!important;flex:1;min-width:0}.inv-submit-btn{width:100%;margin-top:.35rem;padding:.7rem 1rem;font-weight:700;border-radius:10px}.inv-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;padding:1rem 1.25rem 0}.inv-kpi-grid--2{grid-template-columns:repeat(2,minmax(0,1fr));padding:1rem 1.25rem}.inv-search-wrap{position:relative;min-width:min(100%,16rem)}.inv-search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);width:1rem;height:1rem;color:#94a3b8;pointer-events:none}.inv-search{width:100%;padding:.55rem .75rem .55rem 2.25rem;border:1px solid #e2e8f0;border-radius:10px;font-size:.88rem;background:#f8fafc;transition:border-color .15s,box-shadow .15s}.inv-search:focus{outline:none;border-color:#93c5fd;box-shadow:0 0 0 3px #3b82f626;background:#fff}.inv-table-card{margin:.85rem 1rem 1rem;border:1px solid #64748b;border-radius:6px;overflow:hidden;background:#fff;max-width:100%;box-sizing:border-box}.table-wrap-inventario{overflow-x:auto;max-width:100%;width:100%}.table-wrap-inventario .inv-table{width:100%;min-width:720px;table-layout:fixed;border-collapse:collapse;border-spacing:0;font-size:.875rem;background:#fff}.table-wrap-inventario .inv-table th,.table-wrap-inventario .inv-table td{max-width:none!important;overflow:hidden!important;border:1px solid #94a3b8!important;padding:.55rem .5rem!important;vertical-align:middle!important;line-height:1.35;box-sizing:border-box;word-break:normal!important;overflow-wrap:normal!important;word-wrap:normal!important}.table-wrap-inventario .inv-table thead th,.table-wrap-inventario .inv-table tbody td.td-num,.table-wrap-inventario .inv-table tbody td.inv-price,.table-wrap-inventario .inv-table tbody td.inv-td-stock,.table-wrap-inventario .inv-table tbody td.inv-td-min,.table-wrap-inventario .inv-table tbody td.inv-td-estado,.table-wrap-inventario .inv-table tbody td.inv-td-acciones{text-align:center!important}.table-wrap-inventario col.col-inv-producto{width:34%}.table-wrap-inventario col.col-inv-stock,.table-wrap-inventario col.col-inv-min{width:10%}.table-wrap-inventario col.col-inv-precio,.table-wrap-inventario col.col-inv-estado{width:14%}.table-wrap-inventario col.col-inv-acciones{width:18%}.table-wrap-inventario col.col-inv-fecha,.table-wrap-inventario col.col-inv-comp{width:12%}.table-wrap-inventario col.col-inv-socio{width:28%}.table-wrap-inventario col.col-inv-cant{width:8%}.table-wrap-inventario col.col-inv-importe{width:14%}.table-wrap-inventario col.col-inv-acciones-sm{width:8%}.table-wrap-inventario--reporte .inv-table--reporte{min-width:780px}.table-wrap-inventario--reporte .inv-table--reporte th,.table-wrap-inventario--reporte .inv-table--reporte td{text-align:center!important;vertical-align:middle!important}.table-wrap-inventario--reporte .inv-cell-stack{display:flex;flex-direction:column;align-items:center;gap:.15rem;line-height:1.25}.table-wrap-inventario--reporte .inv-cell-stack .inv-product-meta{display:block}.table-wrap-inventario--reporte .inv-code-badge{display:inline-flex;justify-content:center;margin:0 auto}.table-wrap-inventario--reporte .inv-pill{display:inline-flex;justify-content:center}.inv-table{width:100%;border-collapse:collapse;font-size:.875rem}.inv-table thead th{padding:.6rem .5rem;text-align:center!important;font-size:.72rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#0f172a;background:#dbe4ef;border:1px solid #64748b;white-space:nowrap;vertical-align:middle}.inv-table thead th.td-num,.inv-table thead th.th-acciones,.inv-table thead th.col-inv-producto-h,.inv-table thead th.col-inv-stock-h,.inv-table thead th.col-inv-min-h,.inv-table thead th.col-inv-precio-h,.inv-table thead th.col-inv-estado-h,.inv-table thead th.col-inv-acciones-h{text-align:center!important}.inv-table tbody td{padding:.55rem .5rem;border:1px solid #94a3b8;vertical-align:middle;background:#fff;color:#1e293b;text-align:center}.inv-table tbody tr:nth-child(2n) td{background:#f1f5f9}.inv-table tbody tr:hover td{background:#e0f2fe}.inv-row--warn td{background:#fffbeb!important}.inv-row--danger td{background:#fef2f2!important}.inv-td-producto{text-align:left!important}.inv-td-stock,.inv-td-min,.inv-td-estado,.inv-table tbody td.td-num,.inv-table tbody td.inv-price{text-align:center!important}.inv-td-acciones,.table-wrap-inventario .inv-table td.col-acciones,.table-wrap-inventario .inv-table th.th-acciones{overflow:visible!important;text-align:center!important;white-space:nowrap!important;max-width:none!important}.inv-product-cell{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:.55rem;min-width:0;width:100%;text-align:left}.inv-product-text{flex:1 1 auto;min-width:0}.inv-code-badge{display:inline-block;flex:0 0 auto;padding:.15rem .4rem;border-radius:4px;font-size:.72rem;font-weight:800;font-family:ui-monospace,Consolas,monospace;color:#1d4ed8;background:#eff6ff;border:1px solid #93c5fd;white-space:nowrap;margin-top:.1rem}.inv-code-badge--sm{font-size:.68rem;padding:.12rem .35rem}.inv-product-name{display:block;font-size:.88rem;font-weight:700;color:#0f172a;line-height:1.35;white-space:normal;word-break:normal;overflow-wrap:break-word;-webkit-hyphens:none;hyphens:none}.inv-product-meta{display:block;font-size:.76rem;color:#64748b;margin-top:.1rem;white-space:normal;word-break:normal;overflow-wrap:break-word;-webkit-hyphens:none;hyphens:none}.inv-stock-num{font-size:1rem;font-weight:800;color:#0f172a;font-variant-numeric:tabular-nums}.inv-price{font-weight:700;color:#15803d;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.88rem}.inv-pill{display:inline-flex;align-items:center;justify-content:center;padding:.2rem .5rem;border-radius:999px;font-size:.72rem;font-weight:700;white-space:nowrap}.inv-pill--ok{background:#dcfce7;color:#166534}.inv-pill--warn{background:#ffedd5;color:#c2410c}.inv-pill--danger{background:#fee2e2;color:#b91c1c}.inv-row-actions{display:inline-flex;flex-wrap:nowrap;gap:.3rem;align-items:center;justify-content:center;max-width:100%}.inv-action-btn{display:inline-flex!important;align-items:center;justify-content:center;gap:.25rem;min-height:1.85rem;min-width:1.85rem;padding:.25rem .45rem!important;border:1px solid #64748b!important;border-radius:5px!important;background:#fff!important;color:#334155!important;font-family:inherit;font-size:.72rem!important;font-weight:700!important;line-height:1!important;white-space:nowrap;cursor:pointer;flex:0 0 auto}.inv-action-btn span{position:static!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important;overflow:visible!important;clip:auto!important;font-size:inherit!important;font-weight:inherit!important}.inv-action-btn svg{width:.85rem;height:.85rem;flex-shrink:0}.inv-action-btn:hover:not(:disabled){background:#f1f5f9!important}.inv-action-btn:disabled{opacity:.45;cursor:not-allowed}.inv-action-btn--entrada{background:#2563eb!important;border-color:#1d4ed8!important;color:#fff!important;padding:.25rem .55rem!important}.inv-action-btn--entrada:hover:not(:disabled){background:#1d4ed8!important}.inv-action-btn--edit{background:#fff!important;color:#334155!important}.inv-action-btn--delete{background:#fff!important;border-color:#ef4444!important;color:#dc2626!important}.inv-action-btn--delete:hover:not(:disabled){background:#fef2f2!important}.inv-action-btn--anular{background:#fff!important;border-color:#d97706!important;color:#b45309!important}.inv-action-btn--anular:hover:not(:disabled){background:#fffbeb!important}.table-action-entrada{background:#eff6ff!important;border-color:#bfdbfe!important;color:#1d4ed8!important}.table-action-entrada:hover:not(:disabled){background:#dbeafe!important}.inv-empty{text-align:center;padding:2.5rem 1rem!important;color:#64748b}.inv-empty-icon{display:block;font-size:2rem;margin-bottom:.5rem;opacity:.6}.inv-empty p{margin:0 0 .25rem;font-weight:600;color:#334155}.inv-empty span{font-size:.82rem}.inv-mes-field{margin:0;min-width:10rem}.inv-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.inv-modal{width:min(100%,26rem);background:#fff;border-radius:16px;box-shadow:0 24px 48px #0f172a2e;overflow:hidden}.inv-modal-head{padding:1.1rem 1.25rem;border-bottom:1px solid #f1f5f9;background:linear-gradient(180deg,#fafbfc,#fff)}.inv-modal-head h3{margin:0 0 .35rem;font-size:1.05rem;font-weight:800}.inv-modal-sub{font-size:.85rem;color:#64748b}.inv-modal-body{padding:1.1rem 1.25rem 1.25rem}.inv-modal-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.75rem}.table-wrap-inventario .th-acciones,.table-wrap-inventario td.col-acciones{text-align:center!important;white-space:nowrap!important;max-width:none!important}.recibo-inventario-hint{margin:0 0 .75rem;padding:.55rem .75rem;border-radius:var(--radius-sm);background:var(--surface-2);color:var(--md-on-surface-variant);font-size:.88rem}.recibo-stock-badge{display:inline-block;margin-left:.35rem;font-size:.78rem;font-weight:600}.recibo-stock-badge--bajo{color:#c2410c}.recibo-stock-badge--agotado{color:#b91c1c}@media(max-width:1100px){.inv-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.inv-hero-actions{width:100%;justify-content:flex-start}}@media(max-width:960px){.inv-hero{padding:1rem}.inv-segment{width:100%}.inv-segment-btn{flex:1}}@media(max-width:640px){.inv-form-row-2{grid-template-columns:1fr}.inv-kpi-grid{grid-template-columns:1fr 1fr}.inv-product-cell{flex-direction:column;gap:.25rem}.inv-row-actions{flex-wrap:nowrap;justify-content:center}}.main{flex:1;min-width:0;min-height:0;height:100%;padding:1.5rem 1.75rem 2rem;overflow-y:auto;overflow-x:hidden;background:var(--bg);background-image:var(--bg-mesh)}.page-hero{margin-bottom:1.5rem}.page-hero h1{font-size:1.55rem;font-weight:700;font-family:var(--font-display);letter-spacing:-.02em;color:var(--dash-purple-deep)}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}.header h1{font-size:1.45rem;font-weight:700;font-family:var(--font-display);letter-spacing:-.02em;color:var(--dash-purple-deep)}.card{background:var(--md-surface-container);border:1px solid #dde4ec;border-radius:var(--radius-lg);padding:1.35rem;box-shadow:var(--shadow-card);transition:box-shadow .2s,transform .2s}.card:hover{box-shadow:var(--elevation-2)}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.dashboard-stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1.5rem}@media(max-width:960px){.dashboard-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.dashboard-stats-grid{grid-template-columns:1fr}}.stat-card{position:relative;overflow:hidden;padding:1.25rem 1.25rem 1.25rem 1.5rem;border:1px solid #dde4ec;box-shadow:var(--shadow-card)}.stat-card-accent{position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:4px 0 0 4px}.stat-card-emerald .stat-card-accent{background:var(--md-success)}.stat-card-indigo .stat-card-accent{background:var(--md-primary)}.stat-card-violet .stat-card-accent{background:var(--violet)}.stat-card-teal .stat-card-accent{background:var(--md-tertiary)}.stat-card h3{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.stat-card .value{font-size:1.65rem;font-weight:700;margin-top:.35rem;letter-spacing:-.02em;color:var(--text)}.stat-card-emerald .value{color:var(--md-success)}.stat-card-success .stat-card-accent{background:var(--md-success)}.stat-card-success .value{color:var(--md-success)}.stat-card-warning .stat-card-accent{background:var(--md-warning)}.stat-card-warning .value{color:var(--md-warning)}.stat-card-indigo .value{color:var(--md-primary)}.stat-card-violet .value{color:var(--violet)}.stat-card-teal .value{color:var(--md-tertiary)}.stat-card .value.green{color:var(--emerald)}.stat-card .value.blue{color:var(--indigo)}.dashboard-deuda-panel{margin-bottom:1.5rem}.dashboard-deuda-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.dashboard-deuda-header h2{font-size:1.05rem;font-weight:700;margin:0}.dashboard-deuda-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-bottom:1rem}@media(max-width:960px){.dashboard-deuda-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.dashboard-deuda-kpis{grid-template-columns:1fr}}.stat-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.stat-card-hint{margin:.35rem 0 0;font-size:.72rem;color:var(--muted)}.deuda-kpi-icon{display:inline-flex;align-items:center;justify-content:center;width:1.35rem;height:1.35rem;border-radius:999px;font-size:.75rem;font-weight:700;flex-shrink:0}.deuda-kpi-icon-success{background:var(--success-muted);color:var(--md-success)}.deuda-kpi-icon-warning{background:var(--warning-muted);color:var(--md-warning)}.dashboard-deuda-table-title{font-size:.95rem;font-weight:600;margin:0}.dashboard-deuda-footer{padding:.85rem 1rem 1rem;border-top:1px solid var(--border);text-align:center;font-size:.875rem}.bancos-resumen-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:1.25rem}.bancos-table-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.table-bancos{min-width:52rem}.table-bancos .col-banco-plan{width:38%;min-width:16rem}.table-bancos .col-banco-numero{width:16%;min-width:10.5rem}.table-bancos .col-banco-titular{width:14%;min-width:7rem}.table-bancos .col-banco-qr,.table-bancos .col-banco-estado{width:9%;min-width:5.5rem}.table-bancos .col-banco-acciones{width:14%;min-width:9.5rem}.table-bancos .cell-banco-plan{min-width:0}.table-bancos .cell-banco-plan .cell-cuenta-cod{white-space:nowrap;font-variant-numeric:tabular-nums}.table-bancos .cell-banco-plan .cell-cuenta-nom{display:block;line-height:1.35;word-break:break-word}.table-bancos .cell-banco-alias{display:block;margin-top:.15rem;font-size:.72rem}.table-bancos .td-banco-numero{white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:600}.table-bancos .td-center{text-align:center}.table-bancos .table-actions{flex-wrap:nowrap}.success-msg{color:var(--md-success, #2e7d32);font-size:.85rem;margin-bottom:1rem;padding:.65rem .85rem;border-radius:8px;background:#2e7d3214;border:1px solid rgba(46,125,50,.2)}@media(max-width:520px){.bancos-resumen-grid{grid-template-columns:1fr}}.saldos-disponibles-panel{margin-bottom:1.5rem}.saldos-disponibles-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}@media(max-width:900px){.saldos-disponibles-grid{grid-template-columns:1fr}}.table-saldos .saldos-row-total td{background:var(--md-surface-container-low, #f4f6f9);font-weight:600}.recibo-pago-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem 1rem;align-items:start}.recibo-pago-metodo,.recibo-pago-tipo{min-width:0}.recibo-pago-metodo select,.recibo-pago-tipo select{width:100%}.recibo-pago-hint{margin-top:-.35rem;margin-bottom:0}.recibo-pago-hint .form-hint{display:block}@media(max-width:640px){.recibo-pago-row{grid-template-columns:1fr}}.report-row-deuda-alta{background:color-mix(in srgb,var(--md-warning) 6%,transparent)}.card-chart-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.card-chart-header h2{font-size:1rem;font-weight:600}.card-chart-badge{font-size:.7rem;font-weight:600;color:var(--muted);background:var(--surface2);padding:.3rem .65rem;border-radius:999px;border:1px solid var(--border)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.55rem 1.05rem;border:none;border-radius:var(--radius-sm);font-family:inherit;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s,transform .1s,box-shadow .15s}.btn:active:not(:disabled){transform:scale(.98)}.btn-primary{background:var(--dash-gradient-primary);color:var(--md-on-primary);box-shadow:0 2px 6px #2980b959,inset 0 1px #fff3;border:1px solid #2471a3}.btn-primary:hover:not(:disabled){background:linear-gradient(180deg,#3498db,#2471a3);box-shadow:0 4px 12px #2980b966,inset 0 1px #ffffff38}.btn-secondary{background:linear-gradient(180deg,#fff,#f4f7fa);color:var(--md-primary);border:1px solid #b8cfe0;box-shadow:inset 0 1px #ffffffe6}.btn-secondary:hover:not(:disabled){background:var(--state-hover);color:var(--primary-hover);border-color:var(--md-primary)}.btn-danger{background:var(--md-error);color:#fff;box-shadow:var(--elevation-1)}.btn-sm{padding:.35rem .7rem;font-size:.8rem}.card-table-grid{padding:0;overflow:hidden}.card-table-grid .table-wrap,.table-wrap{overflow-x:auto}.table-wrap table{width:100%;max-width:100%;border-collapse:collapse;table-layout:fixed;font-size:.8125rem;background:var(--surface)}.table-wrap th,.table-wrap td{border:1px solid var(--md-outline-variant);padding:.42rem .5rem;vertical-align:middle;text-align:left;line-height:1.3;word-wrap:break-word;overflow-wrap:break-word;overflow:hidden}.table-clientes .col-w-nit,.table-clientes .col-w-razon{width:16%}.table-clientes .col-w-interno{width:13%}.table-clientes .col-w-contacto{width:16%}.table-clientes .col-w-limite{width:13%}.table-clientes .col-w-estado{width:11%}.table-clientes .col-w-acciones{width:15%}.table-clientes th,.table-clientes td{text-align:center}.table-clientes .table-link{color:var(--primary, #2563eb);font-weight:500;text-decoration:none}.table-clientes .table-link:hover{text-decoration:underline}.table-clientes .cell-line,.table-clientes .cell-num,.table-clientes .td-limite,.table-clientes .th-limite{text-align:center}.table-wrap:not(.table-wrap-inventario) th:not(.col-acciones):not(.th-acciones),.table-wrap:not(.table-wrap-inventario) td:not(.col-acciones){max-width:0}.table-wrap thead th{background:linear-gradient(180deg,#f8fafc,#eef3f8);color:var(--dash-purple-deep);font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;border-bottom:2px solid #d4e3f0;white-space:nowrap}.table-wrap tbody tr:nth-child(2n) td{background:#f8fafc}.table-wrap tbody tr:hover td{background:#3498db0f}.table-wrap .td-num{text-align:right;font-variant-numeric:tabular-nums}.table-clientes .td-limite,.table-clientes .th-limite{overflow:hidden;max-width:0}.table-clientes .th-limite{white-space:nowrap;text-overflow:ellipsis}.table-clientes .cell-num{display:block;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;margin:0 auto}.caja-tabs{display:inline-flex;align-items:stretch;gap:0;margin-bottom:1.25rem;padding:.25rem;border:1px solid var(--md-outline-variant);border-radius:10px;background:var(--md-surface-container-low, #f4f6f9)}.caja-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:var(--muted);font-family:inherit;font-size:.8125rem;font-weight:600;letter-spacing:.01em;padding:.55rem 1.1rem;border-radius:8px;cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.caja-tab:hover{color:var(--text);background:#ffffffa6}.caja-tab.is-active{color:var(--md-primary);background:#fff;box-shadow:0 1px 3px #0f172a14}.caja-empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:2.5rem 1.5rem;margin-bottom:1.25rem;border:1px solid var(--md-outline-variant);background:linear-gradient(180deg,#fff 0%,var(--md-surface-container-low, #f8fafc) 100%)}.caja-empty-state-icon{display:flex;align-items:center;justify-content:center;width:4rem;height:4rem;margin-bottom:1rem;border-radius:999px;background:var(--md-surface-container, #eef2f7);color:var(--md-primary)}.caja-empty-state-icon svg{width:2rem;height:2rem}.caja-empty-state-title{margin:0 0 .45rem;font-size:1.05rem;font-weight:700;color:var(--text)}.caja-empty-state-text{margin:0 0 1.25rem;max-width:26rem;font-size:.875rem;line-height:1.55;color:var(--muted)}.caja-status-card{margin-bottom:1.25rem}.caja-status-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.35rem}.caja-status-badge{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:999px;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:var(--success-muted);color:var(--md-success)}.caja-status-caja{font-size:.8125rem;font-weight:600;color:var(--muted)}.caja-status-meta{margin:.35rem 0 0;font-size:.8125rem;line-height:1.45;color:var(--muted)}.caja-saldos-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.card-table-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1.15rem;border-bottom:1px solid #eef0f4;background:linear-gradient(180deg,#fafbfc,#fff)}.card-table-header h2,.card-table-header .card-title-sm{color:var(--dash-purple-deep);font-weight:700}.table-caja{width:100%;border-collapse:collapse;table-layout:fixed;font-size:.8125rem}.table-caja .col-caja-fecha{width:11%}.table-caja .col-caja-nombre{width:16%}.table-caja .col-caja-tipo{width:11%}.table-caja .col-caja-monto{width:14%}.table-caja .col-caja-concepto{width:48%}.table-caja th,.table-caja td{padding:.65rem .85rem;vertical-align:middle}.table-caja .cell-line{display:block;line-height:1.35}.table-caja .cell-line-strong{font-weight:600;color:var(--text)}.table-caja .cell-concepto{color:var(--md-on-surface-variant)}.table-caja .cell-num{display:inline-block;font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}.table-caja .cell-num-ingreso{color:var(--md-success)}.table-caja .cell-num-egreso{color:var(--md-error, #b3261e)}.table-wrap .td-center{text-align:center;overflow:hidden}.table-clientes .td-center .badge{max-width:100%;overflow:hidden;text-overflow:ellipsis}.table-inventario .col-w-codigo{width:12%}.table-inventario .col-w-nombre{width:28%}.table-inventario .col-w-cat,.table-inventario .col-w-stock,.table-inventario .col-w-precio{width:14%}.table-inventario .row-stock-bajo td{background:var(--warning-muted)}.form-page-wide .form-page-inner{max-width:880px}.factura-linea-card{border:1px solid var(--border);border-radius:var(--radius-sm);padding:1rem;margin-top:.75rem;background:var(--surface-elevated, var(--surface))}.factura-linea-card .factura-linea-quitar{margin-top:.75rem}.factura-total-bar{display:flex;justify-content:space-between;align-items:center;margin-top:1.25rem;padding:.75rem 1rem;background:var(--md-primary-container);color:var(--md-on-primary-container);border-radius:var(--radius-sm);font-size:1.05rem}.form-hint-link{display:inline-block;margin-top:.35rem;font-size:.78rem;color:var(--accent, #6366f1);text-decoration:none}.form-hint-link:hover{text-decoration:underline}.link-muted{color:var(--accent, #6366f1);font-size:.85rem}.table-wrap .badge{font-size:.7rem;padding:.15rem .4rem;white-space:nowrap}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.8rem;color:var(--muted);margin-bottom:.35rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.6rem .8rem;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text);font-family:inherit;transition:border-color .15s,box-shadow .15s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-muted)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-page-centered{width:100%;display:flex;justify-content:center;align-items:flex-start;min-height:0}.form-page-inner{width:100%;max-width:960px;margin:0 auto}.header-compact{margin-bottom:.85rem;align-items:center;gap:1rem}.header-compact h1{font-size:1.35rem;margin-top:.2rem}.page-breadcrumb-inline{margin-bottom:.2rem}.form-card-compact{padding:1.15rem 1.35rem 1.25rem}.afiliado-form-header{margin-bottom:1rem}.afiliado-form-subtitle{margin-top:.35rem;max-width:36rem}.afiliado-form-card{padding:0;overflow:hidden;border:1px solid #dde4ec;box-shadow:0 8px 28px #2c3e5014}.afiliado-form{display:flex;flex-direction:column}.afiliado-form-section{padding:1.35rem 1.5rem;border-bottom:1px solid #eef1f5}.afiliado-form-section--last{border-bottom:none}.afiliado-form-section-title{margin:0 0 1rem;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#6b7280}.afiliado-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem 1.15rem;align-items:start}.afiliado-form-grid .form-group{margin-bottom:0;min-width:0}.afiliado-form-grid .form-span-full{grid-column:1 / -1}.afiliado-form-grid label{display:block;margin-bottom:.4rem;font-size:.78rem;font-weight:600;color:#4b5563;letter-spacing:.01em}.afiliado-form-grid input,.afiliado-form-grid select,.afiliado-form-grid textarea{width:100%;padding:.62rem .8rem;font-size:.9rem;background:#fff;border:1px solid #d1d9e2;border-radius:10px;color:var(--text);transition:border-color .15s,box-shadow .15s,background .15s}.afiliado-form-grid input:hover,.afiliado-form-grid select:hover,.afiliado-form-grid textarea:hover{border-color:#b8c4d0}.afiliado-form-grid input:focus,.afiliado-form-grid select:focus,.afiliado-form-grid textarea:focus{outline:none;border-color:var(--md-primary, #3498db);box-shadow:0 0 0 3px #3498db2e;background:#fff}.afiliado-form-grid textarea{min-height:5.5rem;resize:vertical;line-height:1.45}.afiliado-form-grid .input-readonly{background:#f4f7fa;border-color:#e2e8f0;color:#64748b}.afiliado-form-grid .form-hint{margin-top:.35rem;font-size:.72rem;color:#94a3b8}.afiliado-form-actions{display:flex;justify-content:flex-end;align-items:center;gap:.65rem;flex-wrap:wrap;padding:1.1rem 1.5rem;background:linear-gradient(180deg,#fafbfc,#f4f7fa);border-top:1px solid #eef1f5}.socio-foto-field--embedded .socio-foto-panel{margin:0;border-color:#e2e8f0;background:#f9fafb}.socio-foto-field--embedded .socio-foto-preview{width:6.25rem;height:6.25rem;border-radius:14px;border:2px solid #fff;box-shadow:0 4px 14px #2c3e501f}.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}@media(max-width:900px){.afiliado-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.afiliado-form-ci{grid-column:span 2}}@media(max-width:560px){.afiliado-form-section{padding:1.1rem 1rem}.afiliado-form-grid{grid-template-columns:1fr}.afiliado-form-ci{grid-column:span 1}.afiliado-form-actions{flex-direction:column-reverse;align-items:stretch;padding:1rem}.afiliado-form-actions .btn{width:100%;justify-content:center}}.recibo-form-header{margin-bottom:1rem}.recibo-form-subtitle{margin-top:.35rem;max-width:40rem}.recibo-editar-page{background:radial-gradient(ellipse 80% 50% at 50% -10%,rgba(52,152,219,.08),transparent 55%),#eef2f6}.recibo-editar-header{margin-bottom:1.25rem}.recibo-editar-title-row{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem .85rem;margin-top:.15rem}.recibo-editar-title-row h1{margin:0}.recibo-editar-badge{display:inline-flex;align-items:center;padding:.28rem .7rem;border-radius:999px;background:#fff;border:1px solid #d6e4f0;color:#1e3a5f;font-size:.78rem;font-weight:700;letter-spacing:.02em;box-shadow:0 1px 2px #0f172a0a}.recibo-editar-card{border:none;border-radius:16px;box-shadow:0 1px 2px #0f172a0a,0 12px 32px #0f172a14;overflow:hidden;background:#fff}.recibo-editar-form .recibo-editar-section{padding:1.5rem 1.65rem 1.4rem;border-bottom:1px solid #edf1f5}.recibo-editar-form .recibo-editar-section:last-of-type{border-bottom:none}.recibo-editar-section-head{display:flex;align-items:center;gap:.7rem;margin-bottom:1.15rem}.recibo-editar-section-num{flex-shrink:0;width:1.55rem;height:1.55rem;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:#e8f4fc;color:var(--md-primary, #3498db);font-size:.78rem;font-weight:800}.recibo-editar-section-head .recibo-form-section-title{margin:0;font-size:.8rem;letter-spacing:.06em;color:#334155}.recibo-editar-form .recibo-form-grid{gap:1rem 1.1rem}.recibo-editar-form .recibo-form-grid label{color:#64748b;font-weight:600;font-size:.78rem;margin-bottom:.35rem}.recibo-editar-form .recibo-form-grid input,.recibo-editar-form .recibo-form-grid select{border-radius:10px;border-color:#d8e0ea;padding:.6rem .8rem;background:#fff;transition:border-color .15s,box-shadow .15s}.recibo-editar-form .recibo-form-grid input:hover,.recibo-editar-form .recibo-form-grid select:hover{border-color:#b7c9db}.recibo-editar-form .recibo-form-grid input:focus,.recibo-editar-form .recibo-form-grid select:focus{border-color:var(--md-primary, #3498db);box-shadow:0 0 0 3px #3498db29}.recibo-editar-form .recibo-form-grid .input-readonly{background:#f5f8fb;color:#475569;border-color:#e2e8f0}.recibo-editar-table-wrap{border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;background:#fff}.recibo-editar-table{margin:0;width:100%;border-collapse:collapse}.recibo-editar-table thead th{background:#f1f6fb!important;color:#475569;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:.7rem .85rem!important;border-bottom:1px solid #e2e8f0!important}.recibo-editar-table tbody td{padding:.55rem .65rem!important;vertical-align:middle;border-bottom:1px solid #f1f5f9!important}.recibo-editar-table tbody input{width:100%;border:1px solid #e2e8f0;border-radius:8px;padding:.45rem .6rem;background:#fff}.recibo-editar-table tbody input:focus{border-color:var(--md-primary, #3498db);box-shadow:0 0 0 3px #3498db24;outline:none}.recibo-editar-importe{font-variant-numeric:tabular-nums;color:#334155;font-weight:600;white-space:nowrap}.recibo-editar-table tfoot td{background:#f8fafc!important;padding:.85rem!important;border-top:1px solid #e2e8f0!important;border-bottom:none!important}.recibo-editar-total{font-size:1.05rem;color:#0f172a;font-variant-numeric:tabular-nums;white-space:nowrap}.recibo-editar-actions{display:flex;justify-content:flex-end;gap:.65rem;flex-wrap:wrap;padding:1.1rem 1.65rem 1.35rem;margin:0;background:#f8fafc;border-top:1px solid #edf1f5}.recibo-editar-actions .btn{min-width:8.5rem;border-radius:10px;font-weight:600}@media(max-width:640px){.recibo-editar-form .recibo-editar-section{padding:1.15rem 1.1rem}.recibo-editar-actions{padding:1rem 1.1rem 1.2rem}.recibo-editar-actions .btn{flex:1 1 auto}}.recibo-form-card{padding:0;overflow:hidden;border:1px solid #dde4ec;box-shadow:0 8px 28px #2c3e5014}.alquiler-form-card{max-width:none;width:100%}.alquiler-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem 1.25rem;align-items:start}.alquiler-form-grid .form-group{margin-bottom:0;min-width:0}.alquiler-form-grid .alquiler-span-2{grid-column:span 2}.alquiler-form-grid .alquiler-span-4,.alquiler-form-grid .alquiler-span-full{grid-column:1 / -1}.alquiler-form-grid label{display:block;margin-bottom:.4rem;font-size:.78rem;font-weight:600;color:#4b5563}.alquiler-form-grid input,.alquiler-form-grid select{width:100%;padding:.7rem .9rem;font-size:.95rem;background:#fff;border:1px solid #d1d9e2;border-radius:10px;color:var(--text);transition:border-color .15s,box-shadow .15s}.alquiler-form-grid input:hover,.alquiler-form-grid select:hover{border-color:#b8c4d0}.alquiler-form-grid input:focus,.alquiler-form-grid select:focus{outline:none;border-color:var(--md-primary, #3498db);box-shadow:0 0 0 3px #3498db29}.alquiler-form-grid .input-readonly{background:#f4f7fa;color:#475569;border-color:#e2e8f0}.alquiler-concepto-badge{display:inline-flex;align-items:center;padding:.28rem .7rem;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#1e5a8a;background:#e8f3fc;border:1px solid #c5dff3}.alquiler-metodo-row{display:flex;gap:.55rem;align-items:stretch}.alquiler-metodo-row select{flex:1;min-width:0}.alquiler-qr-btn{flex-shrink:0;white-space:nowrap;padding-inline:.85rem}.alquiler-resumen{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.1rem 1.5rem}.alquiler-resumen-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:1.5rem 2.5rem}.alquiler-resumen-row>div{display:flex;flex-direction:column;gap:.2rem}.alquiler-resumen-label{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#6b7280}.alquiler-resumen-row strong{font-size:1.05rem;color:#1f2937}.alquiler-resumen-monto{font-size:1.45rem!important;font-variant-numeric:tabular-nums;color:#0f4c81!important}.alquiler-page .recibo-form-section{padding:1.5rem 1.75rem}@media(max-width:960px){.alquiler-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.alquiler-form-grid .alquiler-span-2,.alquiler-form-grid .alquiler-span-4,.alquiler-form-grid .alquiler-span-full{grid-column:1 / -1}}@media(max-width:640px){.alquiler-form-grid{grid-template-columns:1fr}.alquiler-form-grid .alquiler-span-2,.alquiler-form-grid .alquiler-span-4,.alquiler-form-grid .alquiler-span-full{grid-column:auto}.alquiler-metodo-row{flex-direction:column}.alquiler-resumen{flex-direction:column;align-items:stretch}.alquiler-resumen-row{flex-direction:column;align-items:stretch;gap:1rem}}.recibo-form{display:flex;flex-direction:column}.recibo-form-section{padding:1.35rem 1.5rem;border-bottom:1px solid #eef1f5}.recibo-form-section--totales{background:linear-gradient(180deg,#f8fbff,#f4f8fc);border-bottom:none}.recibo-form-section-title{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#6b7280}.recibo-form-section-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem}.recibo-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem 1.15rem;align-items:start}.recibo-form-grid .form-group{margin-bottom:0;min-width:0}.recibo-form-grid .form-span-full{grid-column:1 / -1}.recibo-canje-option{grid-column:1 / -1;margin-top:.15rem;padding:.85rem 1rem;border:1px solid #d7dee7;border-radius:12px;background:#f8fafc;transition:border-color .15s,background .15s,box-shadow .15s}.recibo-canje-option--on{border-color:#93c5fd;background:#eff6ff;box-shadow:0 0 0 3px #3b82f61f}.recibo-canje-option-label{display:flex!important;align-items:flex-start;gap:.75rem;margin-bottom:0!important;cursor:pointer;font-weight:500!important;color:inherit!important}.recibo-canje-option-check{width:1.15rem!important;height:1.15rem!important;min-width:1.15rem;margin-top:.15rem;padding:0!important;flex-shrink:0;accent-color:#2563eb;cursor:pointer;border-radius:4px}.recibo-canje-option-body{display:flex;flex-direction:column;gap:.28rem;min-width:0}.recibo-canje-option-title{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem .6rem;font-size:.92rem;font-weight:700;color:#1e293b;line-height:1.3}.recibo-canje-option-badge{display:inline-flex;align-items:center;padding:.12rem .5rem;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.01em;color:#1d4ed8;background:#dbeafe}.recibo-canje-option-hint{font-size:.8rem;font-weight:500;line-height:1.45;color:#64748b}.recibo-canje-producto-field{margin-top:.85rem;padding-top:.85rem;border-top:1px solid #c7d7ea}.recibo-canje-producto-field label{display:block;margin-bottom:.4rem;font-size:.78rem;font-weight:600;color:#4b5563}.recibo-canje-producto-field input{width:100%;max-width:280px;padding:.62rem .8rem;font-size:.9rem;background:#fff;border:1px solid #d1d9e2;border-radius:10px;color:var(--text)}.recibo-form-socio{grid-column:span 2}.recibo-form-grid label{display:block;margin-bottom:.4rem;font-size:.78rem;font-weight:600;color:#4b5563}.recibo-form-grid input,.recibo-form-grid select,.recibo-form-grid textarea{width:100%;padding:.62rem .8rem;font-size:.9rem;background:#fff;border:1px solid #d1d9e2;border-radius:10px;color:var(--text);transition:border-color .15s,box-shadow .15s}.recibo-form-grid input:hover,.recibo-form-grid select:hover{border-color:#b8c4d0}.recibo-form-grid input:focus,.recibo-form-grid select:focus{outline:none;border-color:var(--md-primary, #3498db);box-shadow:0 0 0 3px #3498db2e}.recibo-form-grid .input-readonly{background:#f4f7fa;border-color:#e2e8f0;color:#64748b}.recibo-form-grid input[type=date].input-readonly{pointer-events:none}.recibo-form-grid input[type=date].input-readonly::-webkit-calendar-picker-indicator{display:none}.recibo-form-hint{margin-top:-.25rem}.recibo-form-hint .form-hint{font-size:.72rem;color:#94a3b8}.recibo-form-grid .recibo-asociado-select{width:100%;padding:.62rem .8rem;font-size:.9rem;font-weight:600;border:1px solid #d1d9e2;border-radius:10px;background:#fff}.recibo-lineas{display:flex;flex-direction:column;gap:.85rem}.recibo-linea-card{padding:1rem 1.1rem;border:1px solid #e2e8f0;border-radius:12px;background:#f9fafb}.recibo-form-grid--linea{gap:.85rem 1rem}.recibo-linea-quitar{margin-top:.75rem}.recibo-add-linea{flex-shrink:0}.recibo-totales{display:flex;flex-direction:column;gap:.85rem;max-width:24rem;margin-left:auto;padding:1rem 1.1rem;border:1px solid #d6e8f5;border-radius:12px;background:#fff;box-shadow:0 2px 8px #3498db14}.recibo-total-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;font-size:.92rem;color:#4b5563}.recibo-total-row strong{font-size:1rem;color:var(--dash-purple-deep, #2c3e50);font-variant-numeric:tabular-nums}.recibo-total-row--saldo{padding-top:.65rem;border-top:1px solid #e2e8f0;font-weight:600}.recibo-total-row--saldo strong{color:var(--md-primary, #3498db);font-size:1.05rem}.recibo-pagado-check{display:flex;align-items:center;gap:.5rem;font-size:.88rem;font-weight:500;color:#4b5563;cursor:pointer}.recibo-pagado-check input{width:1rem;height:1rem;accent-color:var(--md-primary, #3498db)}.recibo-monto-parcial{margin-bottom:0}.recibo-monto-parcial input{width:100%;padding:.62rem .8rem;border:1px solid #d1d9e2;border-radius:10px;font-size:.9rem}.recibo-form-actions{display:flex;justify-content:flex-end;align-items:center;gap:.65rem;flex-wrap:wrap;padding:1.1rem 1.5rem;background:linear-gradient(180deg,#fafbfc,#f4f7fa);border-top:1px solid #eef1f5}@media(max-width:900px){.recibo-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.recibo-form-socio{grid-column:span 2}}@media(max-width:560px){.recibo-form-section{padding:1.1rem 1rem}.recibo-form-grid{grid-template-columns:1fr}.recibo-form-socio{grid-column:span 1}.recibo-form-section-head{flex-direction:column;align-items:stretch}.recibo-totales{max-width:none;margin-left:0}.recibo-form-actions{flex-direction:column-reverse;align-items:stretch;padding:1rem}.recibo-form-actions .btn{width:100%;justify-content:center}}.descanso-rol-box{border-color:#05966947;background:#0596690f}.descanso-rol-badge{background:#05966926;color:#047857}.descanso-fecha-nav{display:flex;align-items:stretch;gap:.45rem}.descanso-fecha-nav-btn{flex-shrink:0;width:2.5rem;padding:0;border:1px solid #d1d9e2;border-radius:10px;background:#fff;font-size:1.25rem;line-height:1;color:#374151;cursor:pointer;transition:background .15s,border-color .15s}.descanso-fecha-nav-btn:hover{background:#f4f7fa;border-color:#b8c4d0}.descanso-fecha-nav input{flex:1;min-width:0;padding:.62rem .8rem;font-size:.9rem;background:#fff;border:1px solid #d1d9e2;border-radius:10px;color:var(--text)}.descanso-fecha-nav input:focus{outline:none;border-color:var(--md-primary, #3498db);box-shadow:0 0 0 3px #3498db2e}.descanso-solo-marcados{display:flex;align-items:center;gap:.4rem;font-size:.82rem;font-weight:600;color:#4b5563;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none}.descanso-solo-marcados input{width:1rem;height:1rem;accent-color:#059669}.descanso-lista-en-recibo{margin-top:.35rem;max-height:min(46vh,400px)}.descanso-total-row strong{color:#059669}.recibo-asociado-col{grid-column:span 2}.recibo-numero-col{min-width:0}.recibo-asociado-field{margin-bottom:.15rem}.recibo-asociado-select{width:100%;padding:.55rem .7rem;font-size:.95rem;font-weight:600;line-height:1.3;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-family:inherit;cursor:pointer;transition:border-color .15s,box-shadow .15s}.recibo-asociado-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-muted)}.socio-selector{position:relative}.socio-selector-input{width:100%;cursor:text}.socio-selector-list{position:absolute;z-index:40;left:0;right:0;top:calc(100% + 4px);max-height:240px;overflow-y:auto;margin:0;padding:.35rem 0;list-style:none;background:var(--surface, #fff);border:1px solid var(--border, #e2e8f0);border-radius:10px;box-shadow:0 12px 28px #0f172a1f}.socio-selector-option{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .6rem;width:100%;padding:.55rem .85rem;border:none;background:transparent;text-align:left;cursor:pointer;font:inherit;color:var(--text, #0f172a)}.socio-selector-option:hover,.socio-selector-option.is-selected{background:#2563eb14}.socio-selector-nombre{font-weight:600}.socio-selector-codigo{font-size:.82rem;color:var(--muted, #64748b)}.socio-selector-estado{font-size:.75rem;color:var(--muted, #64748b)}.socio-selector-empty{padding:.65rem .85rem;color:var(--muted, #64748b);font-size:.9rem}.form-grid-compact{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem 1.1rem;align-items:start}.form-grid-compact .form-group{margin-bottom:0;min-width:0}.form-grid-compact .form-span-full{grid-column:1 / -1}.form-grid-compact .form-group-spacer{visibility:hidden;pointer-events:none;min-height:0}.form-grid-compact label{margin-bottom:.25rem;font-size:.75rem}.form-grid-compact input,.form-grid-compact select{padding:.5rem .65rem;font-size:.875rem}.form-actions-compact{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:flex-start;margin-top:.5rem;padding-top:1rem;border-top:1px solid var(--border)}.error-msg-compact{margin-bottom:.75rem}.form-loading{color:var(--muted);font-size:.875rem;text-align:center;padding:2rem}@media(max-width:900px){.form-grid-compact{grid-template-columns:repeat(2,1fr)}.recibo-asociado-col{grid-column:span 1}.form-grid-compact .form-group-spacer{display:none}}@media(max-width:520px){.form-page-inner{max-width:100%}.form-grid-compact{grid-template-columns:1fr}.recibo-asociado-col{grid-column:span 1}.header-compact{flex-direction:column;align-items:stretch}.header-compact .btn{width:100%;justify-content:center}}.badge{display:inline-block;padding:.2rem .55rem;border-radius:var(--radius-full);font-size:.7rem;font-weight:500;letter-spacing:.02em}.badge-success{background:var(--success-muted);color:var(--md-success);border:none}.badge-warning{background:var(--warning-muted);color:var(--md-warning);border:none}.badge-muted{background:var(--md-surface-container-high);color:var(--md-on-surface-variant);border:none}.badge-pasivo{background:#ffeb3b73;color:#1a1a1a;border:none;font-weight:700}.badge-atl{background:#c6f06c;color:#1a1a1a;border:none;font-weight:700}.badge-suspendido{background:#ef535038;color:#b71c1c;border:none;font-weight:700}.auth-page{--auth-navy: #2c3e50;--auth-navy-mid: #34495e;--auth-primary: #3498db;--auth-primary-dark: #1a5276;--auth-primary-light: #5dade2;--auth-primary-sky: #85c1e9;--auth-primary-indigo: #2980b9;--auth-primary-glow: rgba(93, 173, 226, .55);--auth-primary-container: #e8f4fc;--auth-on-container: #1a5276;--auth-accent: #17a2b8;--auth-accent-x: #5dade2;--auth-surface: rgba(255, 255, 255, .97);--auth-surface-dim: #f4f8fb;--auth-outline: #d5dde6;--auth-on-hero: #f4f9fd;--auth-hero-muted: rgba(232, 244, 252, .85);--auth-elevation-card: 0 0 0 1px rgba(255, 255, 255, .2), 0 24px 48px rgba(44, 62, 80, .28), 0 48px 80px rgba(44, 62, 80, .18);position:relative;width:100%;height:100vh;height:100dvh;max-height:100dvh;overflow:hidden;display:flex;flex-direction:column;background:var(--auth-navy)}.auth-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden}.auth-bg-base,.auth-bg-slide{position:absolute;top:-10%;right:-10%;bottom:-10%;left:-10%;background-size:cover;background-position:center;background-repeat:no-repeat;will-change:transform,opacity}.auth-bg-base{z-index:0;opacity:1;background-image:url(https://images.unsplash.com/photo-1554224155-6726b3ff858f?auto=format&fit=crop&w=1920&q=85);animation:authKenBurnsBase 40s ease-in-out infinite alternate}.auth-bg-slide{z-index:1;opacity:0}.auth-bg-slide--1{background-image:url(https://images.unsplash.com/photo-1551836022-d5d88e12782b?auto=format&fit=crop&w=1920&q=85);animation:authKenBurnsA 34s ease-in-out infinite alternate,authCrossfade1 27s ease-in-out infinite}.auth-bg-slide--2{background-image:url(https://images.unsplash.com/photo-1454165804606-c3d57bc86b40?auto=format&fit=crop&w=1920&q=85);animation:authKenBurnsB 38s ease-in-out infinite alternate-reverse,authCrossfade2 27s ease-in-out infinite}.auth-bg-slide--3{background-image:url(https://images.unsplash.com/photo-1554224155-6726b3ff858f?auto=format&fit=crop&w=1920&q=85);animation:authKenBurnsC 36s ease-in-out infinite alternate,authCrossfade3 27s ease-in-out infinite}@keyframes authKenBurnsBase{0%{transform:scale(1.05) translate(0)}to{transform:scale(1.12) translate(-1%,-1%)}}@keyframes authKenBurnsA{0%{transform:scale(1.06) translate(0)}to{transform:scale(1.15) translate(-2%,-1.5%)}}@keyframes authKenBurnsB{0%{transform:scale(1.07) translate(1%)}to{transform:scale(1.16) translate(-1.5%,2%)}}@keyframes authKenBurnsC{0%{transform:scale(1.08) translate(-1%,1%)}to{transform:scale(1.14) translate(2%,-1%)}}@keyframes authCrossfade1{0%,8%{opacity:0}14%,36%{opacity:1}42%,to{opacity:0}}@keyframes authCrossfade2{0%,36%{opacity:0}42%,64%{opacity:1}70%,to{opacity:0}}@keyframes authCrossfade3{0%,64%{opacity:0}70%,92%{opacity:1}98%,to{opacity:0}}.auth-bg-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background:linear-gradient(118deg,#2c3e50c7,#3498db6b 42%,#2c3e50d1),radial-gradient(ellipse 85% 65% at 12% 88%,rgba(23,162,184,.2) 0%,transparent 55%),radial-gradient(ellipse 50% 40% at 88% 10%,rgba(93,173,226,.15) 0%,transparent 50%);pointer-events:none}.auth-bg-shine{position:absolute;top:-40%;right:-40%;bottom:-40%;left:-40%;background:linear-gradient(108deg,transparent 42%,rgba(66,165,245,.09) 50%,transparent 58%);animation:authShineSweep 9s ease-in-out infinite}@keyframes authShineSweep{0%{transform:translate(-35%) rotate(8deg);opacity:.4}50%{opacity:.85}to{transform:translate(35%) rotate(8deg);opacity:.4}}.auth-bg-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(ellipse 85% 75% at 50% 40%,black 15%,transparent 75%);mask-image:radial-gradient(ellipse 85% 75% at 50% 40%,black 15%,transparent 75%);animation:authGridDrift 24s linear infinite}@keyframes authGridDrift{0%{background-position:0 0,0 0}to{background-position:56px 56px,56px 56px}}.auth-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.35;animation:authFloat 16s ease-in-out infinite}.auth-orb-1{width:420px;height:420px;background:#3498db;top:-12%;right:8%}.auth-orb-2{width:340px;height:340px;background:#17a2b8;bottom:-5%;left:5%;animation-delay:-6s;opacity:.28}@keyframes authFloat{0%,to{transform:translate(0) scale(1)}50%{transform:translate(16px,-20px) scale(1.05)}}.auth-shell{position:relative;z-index:1;flex:1;min-height:0;width:100%;max-width:100%;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:clamp(1rem,3vh,2rem) clamp(1rem,4vw,1.5rem);box-sizing:border-box}.auth-shell--centered{place-items:center}.auth-hero{color:var(--auth-on-hero);width:100%;padding:0;overflow:visible;align-self:center;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:none;border:none;box-shadow:none;outline:none;backdrop-filter:none;-webkit-backdrop-filter:none;animation:authFadeUp .65s cubic-bezier(.22,1,.36,1)}@keyframes authFadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.auth-hero-head{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;max-width:34rem;margin:0 auto clamp(1.35rem,3vh,2.25rem);padding:clamp(.5rem,2vh,1rem) clamp(.75rem,2vw,1.25rem)}.auth-hero-eyebrow{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.45rem .6rem;font-size:clamp(.88rem,1.5vw,1.05rem);font-weight:600;letter-spacing:.06em;text-transform:none;color:#e3f2fd;margin:0 0 clamp(1rem,2.5vh,1.35rem);padding:.55rem 1.1rem;border-radius:999px;background:#ffffff14;border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 4px 24px #0d1b3e33;text-shadow:none}.auth-hero-eyebrow:before{display:none}.auth-hero-brand{font-family:var(--font-brand);font-size:1.08em;font-weight:800;letter-spacing:.1em;color:#fff}.auth-hero-brand-at{color:#6ee7a0;text-shadow:0 0 16px rgba(46,204,113,.45)}.auth-hero-eyebrow-sep{color:#ffffff73;font-weight:400}.auth-hero-eyebrow-tag{font-weight:500;letter-spacing:.04em;color:#e3f2fdeb}.auth-hero-title,.auth-hero h1{font-family:var(--font-display);font-size:clamp(2.1rem,5vw,3.75rem);font-weight:700;letter-spacing:-.03em;line-height:1.08;margin:0;color:#fff;text-shadow:0 2px 40px rgba(13,27,62,.55);text-wrap:balance;max-width:100%;text-align:center}.auth-hero-title-line{display:block;margin-top:.06em}.auth-hero-accent{color:var(--auth-primary-sky);text-shadow:0 0 28px rgba(66,165,245,.55)}.auth-hero-features{list-style:none;display:flex;flex-direction:column;gap:clamp(.65rem,1.5vh,.9rem);width:100%;max-width:32rem;padding:0;margin:0 auto;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border:none;border-radius:0;box-shadow:none;text-align:left}.auth-hero-features li{display:flex;align-items:center;gap:clamp(1.1rem,2vw,1.75rem);padding:clamp(.5rem,1vh,.75rem) 0;background:transparent;border:none;border-radius:0;backdrop-filter:none;-webkit-backdrop-filter:none;transition:transform .35s cubic-bezier(.22,1,.36,1)}.auth-hero-features li:hover{transform:translate(8px);background:transparent}.auth-hero-features li:hover .auth-feature-icon{transform:translateY(-4px) scale(1.06)}.auth-feature-icon{position:relative;flex-shrink:0;width:clamp(3.75rem,6vw,5.5rem);height:clamp(3.75rem,6vw,5.5rem);display:flex;align-items:center;justify-content:center;border-radius:18px;color:#fff;transition:transform .35s cubic-bezier(.22,1,.36,1);animation:authIconFloat 4s ease-in-out infinite}.auth-feature-icon:before{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:20px;opacity:.55;z-index:-1;filter:blur(14px);animation:authIconPulse 2.8s ease-in-out infinite}.auth-hero-features li:nth-child(1) .auth-feature-icon{animation-delay:0s}.auth-hero-features li:nth-child(2) .auth-feature-icon{animation-delay:.5s}.auth-hero-features li:nth-child(3) .auth-feature-icon{animation-delay:1s}.auth-hero-features li:nth-child(1) .auth-feature-icon:before{animation-delay:0s}.auth-hero-features li:nth-child(2) .auth-feature-icon:before{animation-delay:.5s}.auth-hero-features li:nth-child(3) .auth-feature-icon:before{animation-delay:1s}@keyframes authIconFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes authIconPulse{0%,to{opacity:.4;transform:scale(.95)}50%{opacity:.75;transform:scale(1.05)}}.auth-feature-icon svg{width:clamp(1.75rem,2.8vw,2.35rem);height:clamp(1.75rem,2.8vw,2.35rem);filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}.auth-feature-icon--contabilidad{background:linear-gradient(145deg,#85c1e9,#3498db 45%,#2980b9);box-shadow:0 10px 28px #3498db73,inset 0 1px #ffffff59}.auth-feature-icon--contabilidad:before{background:#3498db}.auth-feature-icon--inventario{background:linear-gradient(145deg,#ffd54f,#ff9800,#ef6c00);box-shadow:0 10px 28px #ff980073,inset 0 1px #ffffff59}.auth-feature-icon--inventario:before{background:#ff9800}.auth-feature-icon--reportes{background:linear-gradient(145deg,#b388ff,#7c4dff,#5e35b1);box-shadow:0 10px 28px #7c4dff73,inset 0 1px #ffffff59}.auth-feature-icon--reportes:before{background:#7c4dff}.auth-hero-features li>div{flex:1;min-width:0}.auth-hero-features strong{display:block;font-size:clamp(1.3rem,2.4vw,1.9rem);font-weight:700;color:#fff;margin-bottom:.3rem;line-height:1.15;text-shadow:0 1px 16px rgba(13,27,62,.65),0 2px 4px rgba(0,0,0,.35)}.auth-hero-features li>div>span{display:block;font-size:clamp(1.05rem,1.65vw,1.4rem);line-height:1.35;color:#e3f2fdeb;overflow-wrap:break-word;text-shadow:0 1px 14px rgba(13,27,62,.6),0 1px 3px rgba(0,0,0,.3)}@media(min-width:901px){.auth-card{max-height:calc(100dvh - 2rem)}}.auth-card{position:relative;min-height:0;max-height:min(100%,calc(100dvh - 2rem));width:100%;max-width:min(26rem,100%);margin:0 auto;display:flex;flex-direction:column;background:var(--auth-surface);backdrop-filter:blur(28px) saturate(1.2);-webkit-backdrop-filter:blur(28px) saturate(1.2);border:1px solid rgba(255,255,255,.55);border-radius:22px;overflow:hidden;box-shadow:var(--auth-elevation-card);animation:authFadeUp .65s cubic-bezier(.22,1,.36,1) .08s both}.auth-card-inner{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:clamp(1.35rem,2.5vh,1.85rem) clamp(1.5rem,3vw,2rem) clamp(1.15rem,2vh,1.35rem);scrollbar-width:thin;scrollbar-color:rgba(21,101,192,.35) transparent}.auth-form{width:100%;max-width:22rem;margin:0 auto}.auth-card-inner::-webkit-scrollbar{width:5px}.auth-card-inner::-webkit-scrollbar-thumb{background:#1565c059;border-radius:4px}.auth-card-logo-wrap{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;margin-bottom:clamp(.65rem,1.2vh,.95rem);padding:.25rem 0 clamp(.65rem,1.2vh,.9rem);border-bottom:1px solid #e3ecf5;flex-shrink:0;background:transparent;gap:.5rem}.auth-card-brand-text{display:flex;flex-direction:column;align-items:center;gap:.35rem;text-align:center;padding:.25rem .5rem .5rem}.auth-brand-title{font-size:1.75rem;font-weight:700;letter-spacing:.06em;color:#3498db}.auth-brand-sub{font-size:.72rem;line-height:1.35;color:#5f6b7a;max-width:22rem}.auth-brand-sub--below-logo{margin:0;text-align:center}.auth-card-logo{display:block;width:min(210px,70%);height:auto;max-height:none;object-fit:contain;background:transparent;border:none;box-shadow:none;filter:none}.auth-form-title{font-size:clamp(1.15rem,2.2vh,1.35rem);font-weight:700;color:var(--auth-navy);margin:0 0 clamp(.55rem,1.2vh,.9rem);letter-spacing:-.03em;text-align:center}.auth-switch{margin-top:clamp(.55rem,1.2vh,.85rem);text-align:center;font-size:.9rem;color:#5c6b76;flex-shrink:0}.auth-switch-link{border:none;background:none;padding:0;font:inherit;font-weight:600;color:var(--auth-primary);cursor:pointer;text-decoration:none;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}.auth-switch-link:hover{color:var(--auth-primary);border-bottom-color:var(--auth-accent-x)}.auth-banner{display:flex;gap:.85rem;align-items:flex-start;padding:.9rem 1rem;border-radius:16px;margin-bottom:1.25rem;font-size:.85rem;line-height:1.45}.auth-banner strong{display:block;font-size:.875rem;font-weight:600;margin-bottom:.2rem}.auth-banner p{margin:0;font-size:.8rem;opacity:.92}.auth-banner-icon{flex-shrink:0;width:1.75rem;height:1.75rem;display:flex;align-items:center;justify-content:center;border-radius:10px;font-weight:700;font-size:.85rem}.auth-banner-icon svg{width:1.1rem;height:1.1rem}.auth-banner-warning{background:#faf6ee;border:1px solid #e8d4a8;color:#6b5340}.auth-banner-warning .auth-banner-icon{background:#f3e8d0;color:#9a7344}.auth-banner-error{background:#fdf2f2;border:1px solid #f0c4c4;color:#7a3030}.auth-banner-error .auth-banner-icon{background:#fce8e8;color:#b54545}.auth-form .form-group{margin-bottom:clamp(.65rem,1.2vh,.9rem)}.auth-page .error-msg{margin-bottom:clamp(.4rem,.9vh,.65rem);font-size:.875rem}.auth-field label{font-size:.9rem;font-weight:600;color:var(--auth-navy-mid);margin-bottom:.45rem;display:block;letter-spacing:.02em}.auth-input-wrap{position:relative;display:flex;align-items:center}.auth-input-wrap svg,.auth-input-icon{position:absolute;left:1.05rem;width:1.3rem;height:1.3rem;color:#6b7c8a;pointer-events:none;transition:color .2s;flex-shrink:0}.auth-input-wrap:focus-within svg,.auth-input-wrap:focus-within .auth-input-icon{color:var(--auth-primary)}.auth-input-wrap input{width:100%;padding:clamp(.78rem,1.35vh,.95rem) 1rem clamp(.78rem,1.35vh,.95rem) 3rem;border:1px solid var(--auth-outline);border-radius:14px;font-size:1rem;color:var(--auth-navy);background:var(--auth-surface-dim);transition:border-color .2s,box-shadow .2s,background .2s}.auth-input-wrap input::placeholder{color:#8a9aa6}.auth-input-wrap input:hover{border-color:#b0bcc6;background:#fff}.auth-input-wrap input:focus{outline:none;border-color:var(--auth-accent-x);background:#fff;box-shadow:0 0 0 3px #1e88e538}.auth-pass-toggle{position:absolute;right:.7rem;border:none;background:var(--auth-primary-container);font-size:.78rem;font-weight:600;color:var(--auth-on-container);cursor:pointer;padding:.38rem .65rem;border-radius:8px;transition:background .2s}.auth-pass-toggle:hover{background:#e8f4fc}.auth-submit{width:100%;margin-top:clamp(.35rem,.8vh,.55rem);padding:clamp(.85rem,1.5vh,1rem) 1.35rem;font-size:1.05rem;font-weight:600;letter-spacing:.04em;color:#fff;border:1px solid rgba(255,255,255,.15);border-radius:14px;background:linear-gradient(135deg,var(--auth-navy) 0%,var(--auth-primary) 38%,var(--auth-accent-x) 72%,var(--auth-primary-sky) 100%);box-shadow:0 1px #ffffff1f inset,0 8px 28px #2c3e5052,0 0 0 1px #3498db33;cursor:pointer;transition:transform .22s cubic-bezier(.22,1,.36,1),box-shadow .25s,filter .2s}.auth-submit:hover:not(:disabled){filter:brightness(1.06);box-shadow:0 1px #ffffff24 inset,0 12px 36px #00000052,0 0 24px var(--auth-primary-glow);transform:translateY(-2px)}.auth-submit:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 16px #00000040}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-register-note{font-size:.8rem;color:var(--auth-on-container);line-height:1.4;margin-bottom:clamp(.4rem,.8vh,.6rem);padding:.5rem .7rem;background:var(--auth-primary-container);border-radius:10px;border-left:3px solid var(--auth-accent-x)}.auth-footer-note{text-align:center;font-size:.78rem;color:#74777f;margin-top:clamp(.5rem,1.1vh,.75rem);padding-top:clamp(.5rem,1.1vh,.7rem);border-top:1px solid #e3ecf5;flex-shrink:0}.toast-stack{position:fixed;top:1.25rem;right:1.25rem;z-index:9999;display:flex;flex-direction:column;gap:.75rem;max-width:min(400px,calc(100vw - 2rem));pointer-events:none}.toast{position:relative;display:flex;align-items:flex-start;gap:.85rem;padding:1rem 1.1rem 1rem 1rem;border-radius:12px;background:var(--surface);border:1px solid var(--border-strong);box-shadow:0 1px 2px #0f172a0f,0 12px 32px #0f172a1f;overflow:hidden;animation:toastIn .4s cubic-bezier(.22,1,.36,1);pointer-events:auto}.toast:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:12px 0 0 12px}.toast-success:before{background:var(--md-success)}.toast-error:before{background:var(--danger)}.toast-info:before{background:var(--primary)}@keyframes toastIn{0%{opacity:0;transform:translate(1.25rem) scale(.98)}to{opacity:1;transform:translate(0) scale(1)}}.toast-icon{flex-shrink:0;width:2.25rem;height:2.25rem;border-radius:10px;display:flex;align-items:center;justify-content:center}.toast-icon svg{width:1.2rem;height:1.2rem}.toast-success .toast-icon{background:var(--success-muted);color:var(--md-success)}.toast-error .toast-icon{background:var(--danger-muted);color:var(--danger)}.toast-info .toast-icon{background:var(--primary-muted);color:var(--primary)}.toast-body{flex:1;min-width:0;padding-top:.1rem}.toast-title{font-size:.9rem;font-weight:600;letter-spacing:-.01em;color:var(--text);line-height:1.35;margin:0 0 .2rem}.toast-description{font-size:.8rem;font-weight:400;line-height:1.45;color:var(--muted);margin:0}.toast-progress{position:absolute;left:4px;right:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--primary) 0%,transparent 100%);transform-origin:left;animation:toastProgress 5.2s linear forwards;opacity:.35}.toast-success .toast-progress{background:linear-gradient(90deg,var(--md-success) 0%,transparent 100%);opacity:.5}.toast-info .toast-progress{background:linear-gradient(90deg,var(--primary) 0%,transparent 100%)}@keyframes toastProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.toast-persistent .toast-progress{display:none}.toast-spinner{animation:toastSpin .85s linear infinite}@keyframes toastSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.alert{padding:.75rem .9rem;border-radius:var(--radius-sm);font-size:.85rem;margin-bottom:1rem;line-height:1.45}.alert-danger{background:var(--danger-muted);color:#be123c;border:1px solid rgba(225,29,72,.25)}.alert-success{background:var(--success-muted);color:var(--success);border:1px solid rgba(52,211,153,.3)}.error-msg{color:var(--danger);font-size:.85rem;margin-bottom:1rem}@media(max-width:900px){.auth-shell{padding:.75rem .85rem}.auth-card{max-width:min(30rem,100%);max-height:calc(100dvh - 1.5rem)}}@media(prefers-reduced-motion:reduce){.auth-bg-base,.auth-bg-slide--1,.auth-bg-slide--2,.auth-bg-slide--3,.auth-bg-shine,.auth-bg-grid,.auth-orb,.auth-hero-eyebrow:before,.auth-feature-icon,.auth-feature-icon:before{animation:none}.auth-bg-slide--1,.auth-bg-slide--2,.auth-bg-slide--3{opacity:0}}.actions{display:flex;gap:.5rem;margin-top:1rem}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:100}.app-notice-overlay{z-index:1200;padding:1rem;animation:appNoticeFadeIn .18s ease-out}@keyframes appNoticeFadeIn{0%{opacity:0}to{opacity:1}}.app-notice-card{width:min(22.5rem,100%);background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 2px #0f172a0f,0 18px 40px #0f172a29;padding:1.1rem 1.15rem 1rem;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"icon body" "actions actions";column-gap:.75rem;row-gap:.85rem;animation:appNoticePop .22s cubic-bezier(.22,1,.36,1)}@keyframes appNoticePop{0%{opacity:0;transform:translateY(.4rem) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.app-notice-icon{grid-area:icon;width:2.35rem;height:2.35rem;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:.05rem}.app-notice-icon svg{width:1.2rem;height:1.2rem}.app-notice-card--info .app-notice-icon{background:#eff6ff;color:#1d4ed8}.app-notice-card--warning .app-notice-icon{background:#fffbeb;color:#b45309}.app-notice-card--error .app-notice-icon{background:#fef2f2;color:#dc2626}.app-notice-card--success .app-notice-icon{background:#ecfdf5;color:#059669}.app-notice-body{grid-area:body;min-width:0}.app-notice-title{margin:0 0 .28rem;font-size:.95rem;font-weight:700;line-height:1.3;color:#0f172a;letter-spacing:-.01em}.app-notice-message{margin:0;font-size:.84rem;line-height:1.4;color:#475569}.app-notice-actions{grid-area:actions;display:flex;justify-content:flex-end}.app-notice-btn{min-width:5.75rem;min-height:2.15rem;padding:.4rem 1rem;font-size:.84rem;font-weight:650}.modal{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-lg);padding:1.5rem;width:90%;max-width:520px;max-height:90vh;overflow:auto;box-shadow:var(--shadow-md)}.sidebar-footer.user-info{flex-shrink:0;margin-top:0;padding:.85rem 0 0;border-top:1px solid rgba(255,255,255,.1);font-size:.8rem;color:#ffffff8c;background:transparent}.sidebar-footer-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;margin-bottom:.65rem}.sidebar-user-text{min-width:0;flex:1}.notif-acceso{position:relative;flex-shrink:0}.notif-acceso-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:2.1rem;height:2.1rem;border-radius:8px;border:1px solid rgba(255,255,255,.18);background:#ffffff0f;color:#fff;cursor:pointer;padding:0}.notif-acceso-btn svg{width:1.1rem;height:1.1rem}.notif-acceso-btn.has-unread{border-color:#f59e0b;background:#f59e0b2e;animation:notif-acceso-pulse 1.4s ease-in-out infinite}@keyframes notif-acceso-pulse{0%,to{box-shadow:0 0 #f59e0b8c}50%{box-shadow:0 0 0 6px #f59e0b00}}.notif-acceso-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.notif-acceso-head-count{min-width:1.25rem;height:1.25rem;padding:0 .35rem;border-radius:999px;background:#ef4444;color:#fff;font-size:.7rem;font-weight:700;line-height:1.25rem;text-align:center}.notif-acceso-badge{position:absolute;top:-.35rem;right:-.35rem;min-width:1.1rem;height:1.1rem;padding:0 .25rem;border-radius:999px;background:#ef4444;color:#fff;font-size:.65rem;font-weight:700;line-height:1.1rem;text-align:center}.notif-acceso-panel{position:fixed;z-index:4000;width:min(340px,calc(100vw - 24px));max-height:min(420px,calc(100vh - 24px));overflow:auto;background:#fff;color:#0f172a;border-radius:10px;box-shadow:0 12px 36px #0f172a47;padding:.85rem 1rem;box-sizing:border-box}.notif-acceso-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.notif-acceso-head strong{flex:1;min-width:0;font-size:.95rem;color:#0f172a;line-height:1.3}.notif-acceso-empty{margin:0;font-size:.9rem;line-height:1.4;color:#64748b;word-break:normal;overflow-wrap:anywhere}.notif-acceso-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.notif-acceso-list li{border:1px solid #e2e8f0;border-radius:8px;padding:.65rem}.notif-acceso-item-main{display:flex;flex-direction:column;gap:.15rem;font-size:.82rem;margin-bottom:.5rem}.notif-acceso-item-main em{font-style:normal;color:#475569}.notif-acceso-item-main small{color:#94a3b8}.notif-acceso-actions{display:flex;flex-wrap:wrap;gap:.4rem}.acceso-tesoreria-banner{margin:0 0 1rem;padding:.85rem 1rem;border-radius:10px;border:1px solid #fcd34d;background:#fffbeb;color:#78350f}.acceso-tesoreria-banner p{margin:.35rem 0 .65rem;font-size:.9rem;line-height:1.4}.acceso-tesoreria-banner--ok{border-color:#86efac;background:#f0fdf4;color:#14532d}.acceso-tesoreria-pendiente{margin:.5rem 0 0!important;font-weight:600}.acceso-tesoreria-form{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.acceso-tesoreria-form input{flex:1 1 220px;min-width:0;padding:.45rem .65rem;border:1px solid #f59e0b;border-radius:6px;font-size:.9rem}.modal-solicitud-editar{width:min(440px,calc(100vw - 2rem));max-width:440px;padding:1.35rem 1.4rem 1.15rem;border-radius:14px;box-shadow:0 18px 48px #0f172a2e}.modal-solicitud-editar-head{margin-bottom:1rem}.modal-solicitud-editar-eyebrow{margin:0 0 .25rem;font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#64748b}.modal-solicitud-editar-head h2{margin:0;font-size:1.35rem;font-weight:700;letter-spacing:-.02em;color:#0f172a;line-height:1.25}.modal-solicitud-editar-text{margin:0 0 1rem;font-size:.92rem;line-height:1.45;color:#475569}.modal-solicitud-editar-actions{margin-top:1.1rem;padding-top:.15rem}.acceso-edit-card{display:flex;gap:.9rem;align-items:flex-start;margin:0;padding:1rem 1.05rem;border-radius:12px;border:1px solid #dbe7f3;background:linear-gradient(180deg,#f8fbfe,#f1f7fc);color:#1e293b;box-shadow:inset 0 1px #fffc}.acceso-edit-card-icon{flex-shrink:0;width:2.35rem;height:2.35rem;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:#e8f4fc;color:var(--md-primary, #3498db);font-size:1rem;font-weight:700}.acceso-edit-card-icon svg{width:1.2rem;height:1.2rem}.acceso-edit-card-body{flex:1;min-width:0}.acceso-edit-card-body>strong{display:block;margin:0 0 .3rem;font-size:.95rem;font-weight:700;color:#0f172a}.acceso-edit-card-body>p{margin:0 0 .85rem;font-size:.875rem;line-height:1.45;color:#475569}.acceso-edit-card--ok{border-color:#bbf7d0;background:linear-gradient(180deg,#f0fdf4,#ecfdf5)}.acceso-edit-card--ok .acceso-edit-card-icon{background:#dcfce7;color:#15803d}.acceso-edit-form label{display:block;margin:0 0 .35rem;font-size:.75rem;font-weight:600;color:#64748b;letter-spacing:.02em}.acceso-edit-form-row{display:flex;flex-wrap:wrap;gap:.55rem;align-items:stretch}.acceso-edit-form-row input{flex:1 1 180px;min-width:0;padding:.55rem .75rem;border:1px solid #cbd5e1;border-radius:8px;background:#fff;font-size:.9rem;color:#0f172a;outline:none;transition:border-color .15s,box-shadow .15s}.acceso-edit-form-row input::placeholder{color:#94a3b8}.acceso-edit-form-row input:focus{border-color:var(--md-primary, #3498db);box-shadow:0 0 0 3px #3498db2e}.acceso-edit-submit{flex:0 0 auto;white-space:nowrap;border-radius:8px;font-weight:600;box-shadow:none}.acceso-edit-pending{display:inline-flex;align-items:center;gap:.45rem;margin-top:.15rem;padding:.45rem .7rem;border-radius:999px;background:#fff;border:1px solid #dbe7f3;font-size:.82rem;font-weight:600;color:#334155}.acceso-edit-pending-dot{width:.5rem;height:.5rem;border-radius:50%;background:#f59e0b;box-shadow:0 0 0 3px #f59e0b33;animation:acceso-edit-pulse 1.4s ease-in-out infinite}@keyframes acceso-edit-pulse{0%,to{opacity:1}50%{opacity:.45}}.user-info strong{color:#fff;display:block;font-size:.85rem;line-height:1.3;margin-bottom:.2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-meta{display:block;font-size:.72rem;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-logout{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;margin-top:.65rem;width:100%;box-sizing:border-box;background:#ffffff14!important;color:#ffffffd9!important;border-color:#ffffff2e!important}.btn-logout:hover:not(:disabled){background:#ffffff24!important;color:#fff!important;border-color:#ffffff47!important}.btn-logout-icon{width:1rem;height:1rem;flex-shrink:0}.chart-container{margin-top:1rem;height:280px}.sidebar-nav{display:flex;flex-direction:column;gap:.25rem;padding-bottom:.25rem}.nav-block{margin-bottom:.25rem}.nav-submenu-wrap{margin:.15rem 0}.nav-submenu-wrap--nested{margin:.1rem 0}.nav-submenu-toggle-row{display:flex;align-items:stretch;border-radius:var(--radius);overflow:hidden}.nav-submenu-toggle-row.active-parent{background:linear-gradient(90deg,#3498db47,#2980b924);box-shadow:inset 3px 0 #5dade2}.nav-submenu-toggle-link{flex:1;min-width:0;text-decoration:none;border-radius:0;box-shadow:none}.nav-submenu-toggle-link.active-parent{box-shadow:none}.nav-submenu-toggle--nested{padding:.45rem .55rem;font-size:.82rem;font-weight:600}.nav-submenu-chevron-btn{display:flex;align-items:center;justify-content:center;width:2rem;flex-shrink:0;border:none;background:transparent;color:#ffffff8c;cursor:pointer;transition:background .15s,color .15s}.nav-submenu-chevron-btn:hover{background:#ffffff14;color:#fff}.nav-submenu--nested{margin-left:.35rem;padding-left:.5rem}.nav-submenu-toggle{display:flex;align-items:center;gap:.65rem;width:100%;padding:.55rem .75rem;border:none;border-radius:var(--radius);background:transparent;color:#ffffff9e;font-family:inherit;font-size:.9rem;font-weight:600;cursor:pointer;text-align:left;transition:background .15s,color .15s}.nav-submenu-toggle:hover{background:#ffffff14;color:#fff}.nav-submenu-toggle.active-parent{background:linear-gradient(90deg,#3498db47,#2980b924);color:#fff;box-shadow:inset 3px 0 #5dade2}.nav-submenu-label{flex:1;min-width:0;text-align:left}.nav-chevron{font-size:1rem;transition:transform .2s;opacity:.6}.nav-chevron.rotated{transform:rotate(90deg)}.nav-submenu{margin:.2rem 0 .35rem .5rem;padding-left:.65rem;border-left:2px solid rgba(255,255,255,.12);display:flex;flex-direction:column;gap:.35rem}.nav-sublink{display:flex;align-items:center;gap:.5rem;padding:.45rem .65rem;border-radius:8px;color:#ffffff8c;font-size:.82rem;transition:all .15s}.nav-sublink span:last-child{flex:1;min-width:0}.nav-sublink:hover{background:#ffffff14;color:#fff}.nav-sublink.active{background:#3498db47;color:#fff;font-weight:600}.card-afiliados-lista-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem 1.15rem;border-bottom:1px solid var(--md-outline-variant)}.card-afiliados-lista-sub{margin:.2rem 0 0;font-size:.8125rem}.table-wrap-afiliados{max-height:min(70vh,720px);overflow-x:hidden;overflow-y:auto}.card-afiliados-lista .table-wrap{overflow-x:hidden}.table-afiliados-list{width:100%;font-size:.8125rem;table-layout:fixed;border-collapse:separate;border-spacing:0}.table-afiliados-list th,.table-afiliados-list td{overflow:visible;max-width:none;text-align:left;line-height:1.45;word-break:normal}.table-wrap .table-afiliados-list th:not(.col-acciones):not(.th-acciones),.table-wrap .table-afiliados-list td:not(.col-acciones){max-width:none;overflow:visible}.table-afiliados-list .col-af-foto{width:3.75rem}.table-afiliados-list .col-af-cod{width:5.75rem}.table-afiliados-list .col-af-nombre{width:24%}.table-afiliados-list .col-af-contacto{width:38%}.table-afiliados-list .col-af-placa{width:6.5rem}.table-afiliados-list .col-af-estado{width:5.25rem}.table-afiliados-list .col-af-acciones{width:4.5rem}.table-afiliados-list thead th{position:sticky;top:0;z-index:2;padding:.65rem .75rem;background:var(--md-surface-container-high);white-space:nowrap;font-size:.7rem;vertical-align:middle}.table-afiliados-list tbody td{padding:.7rem .75rem;vertical-align:middle;background:#fff}.table-afiliados-list tbody tr{transition:background .12s ease}.table-afiliados-list tbody tr:hover td{background:#f6f9fc}.table-afiliados-list tbody tr.row-asociado-activo td:first-child{box-shadow:inset 3px 0 #43a047}.table-afiliados-list tbody tr.row-asociado-pasivo td:first-child{box-shadow:inset 3px 0 #fb8c00}.table-afiliados-list tbody tr.row-asociado-atl td:first-child{box-shadow:inset 3px 0 #9ccc65}.table-afiliados-list tbody tr.row-asociado-suspendido td:first-child{box-shadow:inset 3px 0 #ef5350}.table-afiliados-list .th-afiliado-foto,.table-afiliados-list .td-afiliado-foto{text-align:center;padding-left:.45rem;padding-right:.35rem}.th-sin-titulo{font-size:0;line-height:0;color:transparent;padding-top:.55rem;padding-bottom:.55rem}.table-afiliados-list .th-afiliado-nombre,.table-afiliados-list .td-afiliado-nombre{padding-left:.85rem;padding-right:1.1rem}.table-afiliados-list .th-afiliado-contacto,.table-afiliados-list .td-afiliado-contacto{padding-left:1rem;padding-right:1.1rem}.table-afiliados-list .th-afiliado-placa,.table-afiliados-list .td-afiliado-placa{padding-left:.5rem;padding-right:.5rem;text-align:center}.table-afiliados-list thead th.th-afiliado-placa{white-space:normal;vertical-align:middle}.table-afiliados-list .th-afiliado-placa,.table-afiliados-list .td-afiliado-placa,.table-afiliados-list .th-afiliado-estado,.table-afiliados-list .td-afiliado-estado{text-align:center}.table-afiliados-list .td-afiliado-estado .badge{display:inline-flex;min-width:0;padding:.22rem .4rem;font-size:.68rem;line-height:1.2;justify-content:center;white-space:nowrap}.afiliado-cod-cell{display:block;font-family:var(--font-mono, ui-monospace, monospace);font-weight:700;font-size:.75rem;letter-spacing:.01em;color:var(--md-primary, #1565c0);line-height:1.3;word-break:break-all}.afiliado-nombre-cell{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-weight:600;font-size:.8125rem;line-height:1.45;color:var(--text, #1a1a1a);white-space:normal;word-break:normal;overflow-wrap:normal;-webkit-hyphens:none;hyphens:none}.afiliado-nombre-wrap--vacante .afiliado-nombre-cell{color:var(--md-on-surface-variant, #5f6368);font-style:italic;font-weight:500}.afiliado-nombre-hint{display:block;margin-top:.15rem;font-size:.68rem;font-weight:500;line-height:1.35;color:var(--md-on-surface-variant, #6b7280)}.afiliado-contacto-vacio{display:block;font-size:.72rem;font-style:italic;color:var(--md-on-surface-variant, #9aa0a6);line-height:1.4}.afiliado-foto--vacante{background:#f1f3f4;color:#9aa0a6;font-weight:400;font-size:.85rem}.afiliado-placa-badge{display:inline-block;max-width:100%;box-sizing:border-box;padding:.3rem .45rem;border-radius:6px;font-family:var(--font-mono, ui-monospace, monospace);font-size:.72rem;font-weight:600;letter-spacing:.04em;line-height:1.35;background:var(--md-surface-container, #eef2f7);border:1px solid var(--md-outline-variant, #dde3ea);color:var(--text, #333);white-space:normal;word-break:break-word;overflow-wrap:anywhere;text-align:center}.th-placa-vehicular{text-align:center!important;vertical-align:middle;padding-left:.35rem!important;padding-right:.35rem!important}.th-placa-vehicular-label{display:inline-block;max-width:4.75rem;white-space:normal;line-height:1.15;font-size:.68rem;letter-spacing:.01em;text-align:center;word-break:keep-all;overflow-wrap:normal}.table-deuda-socios .col-deuda-socio{width:42%}.table-deuda-socios .col-deuda-placa{width:7.5rem}.table-deuda-socios .col-deuda-dias{width:6.5rem}.table-deuda-socios .col-deuda-total{width:7.5rem}.table-deuda-socios--report .col-deuda-socio{width:auto}.table-deuda-socios--report .col-deuda-placa{width:9rem}.table-deuda-socios--report .col-deuda-dias{width:5.5rem}.table-deuda-socios--report .col-deuda-total{width:8.5rem}.sancion-causa-cell{max-width:220px;font-size:.875rem;line-height:1.35;word-break:break-word}.table-sanciones .deuda-nro-badge{font-size:.75rem}.deuda-report-toolbar{display:flex;justify-content:flex-end;padding:.75rem 1rem 0}.deuda-nro-cell{text-align:center}.deuda-nro-badge{display:inline-block;padding:.15rem .4rem;border-radius:6px;background:#4a2c6a1a;color:var(--dash-purple-deep, #4a2c6a);font-size:.72rem;font-weight:700;letter-spacing:.02em;white-space:nowrap}.socios-atrasados-page{width:100%;max-width:none}.socios-atrasados-page .deuda-report-card{border-radius:12px}.socios-atrasados-page .deuda-report-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.socios-atrasados-page .deuda-report-stat{align-items:center;text-align:center;padding:1rem 1.5rem}.socios-atrasados-page .deuda-report-stat-label{font-size:.75rem;color:#64748b;letter-spacing:.05em}.socios-atrasados-page .deuda-report-stat-value{font-size:1.35rem}.socios-atrasados-page .table-wrap-deuda-report{padding:.5rem .75rem .85rem}.control-multas-pasivos-page .cmp-summary{--cmp-ink: #1e293b;--cmp-muted: #64748b;--cmp-line: #e2e8f0;--cmp-ok: #0f766e;--cmp-warn: #b45309;--cmp-money: #1d4ed8;display:grid;grid-template-columns:minmax(10.5rem,13rem) repeat(3,minmax(0,1fr)) minmax(8.5rem,1.35fr);align-items:stretch;gap:0;margin-bottom:.9rem;padding:0;background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid var(--cmp-line);border-radius:12px;box-shadow:0 1px 2px #0f172a0a;overflow:hidden;position:relative;width:100%;max-width:100%;box-sizing:border-box}.control-multas-pasivos-page .cmp-summary:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,#0f766e,#1d4ed8);z-index:1}.control-multas-pasivos-page .cmp-summary-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.3rem;min-height:4.5rem;min-width:0;padding:.55rem .65rem;text-align:center;border-right:1px solid var(--cmp-line);box-sizing:border-box;overflow:hidden}.control-multas-pasivos-page .cmp-summary-cell:last-child{border-right:none}.control-multas-pasivos-page .cmp-summary-cell--mes{align-items:stretch;padding:.55rem .7rem .55rem 1rem}.control-multas-pasivos-page .cmp-summary-cell--mes .cmp-summary-label{align-self:flex-start}.control-multas-pasivos-page .cmp-summary-cell--mes .cmp-summary-month{width:100%}.control-multas-pasivos-page .cmp-mes-clasico{display:flex;flex-direction:column;align-items:stretch;gap:.3rem;width:100%;min-width:0}.control-multas-pasivos-page .cmp-summary-select{width:100%;max-width:100%;min-width:0;padding:.32rem .4rem;font-size:.8rem;font-weight:600;color:var(--cmp-ink, #0f172a);background:#fff;border:1px solid #c5ced8;border-radius:6px;line-height:1.2;cursor:pointer;box-sizing:border-box}.control-multas-pasivos-page .cmp-summary-select--mes{flex:none}.control-multas-pasivos-page .cmp-summary-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.control-multas-pasivos-page .cmp-summary-cell--money{background:#1d4ed80a;padding-left:.55rem;padding-right:.7rem}.control-multas-pasivos-page .cmp-summary-label{display:block;margin:0;font-size:.58rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--cmp-muted);line-height:1.2;white-space:normal;max-width:100%}.control-multas-pasivos-page .cmp-summary-value{display:block;margin:0;font-size:1.1rem;font-weight:700;color:var(--cmp-ink);font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1.15;max-width:100%;overflow:hidden;text-overflow:ellipsis}.control-multas-pasivos-page .cmp-summary-value--ok{color:var(--cmp-ok)}.control-multas-pasivos-page .cmp-summary-value--warn{color:var(--cmp-warn)}.control-multas-pasivos-page .cmp-summary-value--money{color:var(--cmp-money);font-size:.95rem;white-space:nowrap}.control-multas-pasivos-page .cmp-summary-month{width:100%;margin:0;padding:.4rem .55rem;min-height:2.1rem;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:var(--cmp-ink);font-size:.82rem;font-weight:600;line-height:1.2;box-shadow:inset 0 1px 1px #0f172a08;box-sizing:border-box}.control-multas-pasivos-page .cmp-summary-month:focus{outline:none;border-color:#0f766e;box-shadow:0 0 0 3px #0f766e26}@media(max-width:900px){.control-multas-pasivos-page .cmp-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.control-multas-pasivos-page .cmp-summary-cell--mes{grid-column:1 / -1;padding-left:1rem}.control-multas-pasivos-page .cmp-mes-clasico{flex-direction:row}.control-multas-pasivos-page .cmp-summary-select{width:auto;flex:1}.control-multas-pasivos-page .cmp-summary-cell:nth-child(2n){border-right:none}.control-multas-pasivos-page .cmp-summary-cell:nth-child(-n+3){border-bottom:1px solid var(--cmp-line)}}@media(max-width:520px){.control-multas-pasivos-page .cmp-summary{grid-template-columns:1fr}.control-multas-pasivos-page .cmp-summary-cell{border-right:none;border-bottom:1px solid var(--cmp-line);min-height:3.5rem}.control-multas-pasivos-page .cmp-summary-cell:last-child{border-bottom:none}}.table-deuda-socios--multas{table-layout:auto;width:100%;min-width:920px}.table-deuda-socios--report.table-deuda-socios--multas .col-deuda-socio,.table-deuda-socios--multas .col-deuda-socio{width:13.5rem;min-width:13.5rem}.table-deuda-socios--multas .col-deuda-nro{width:7rem;min-width:7rem}.table-deuda-socios--multas .col-deuda-placa{width:5.5rem;min-width:5.5rem}.table-deuda-socios--multas .col-deuda-dias{width:4.75rem;min-width:4.75rem}.table-deuda-socios--multas .col-deuda-causa{width:auto;min-width:10rem}.table-deuda-socios--multas .col-deuda-total{width:6.5rem;min-width:6.5rem}.table-deuda-socios--multas .col-deuda-accion{width:6rem;min-width:6rem}.table-deuda-socios--multas thead th{white-space:normal;line-height:1.3;vertical-align:middle;text-align:center;padding:.85rem 1rem;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#475569}.table-deuda-socios--multas thead th.th-deuda-causa{text-align:center}.table-deuda-socios--multas thead th.th-deuda-dias,.table-deuda-socios--multas tbody td.td-deuda-dias,.table-deuda-socios--multas thead th.th-deuda-placa,.table-deuda-socios--multas tbody td.td-placa-vehicular,.table-deuda-socios--multas thead th.th-deuda-saldo,.table-deuda-socios--multas tbody td.deuda-total-cell,.table-deuda-socios--multas thead th.th-acciones,.table-deuda-socios--multas tbody td.col-acciones{text-align:center;padding-left:.75rem;padding-right:.75rem}.deuda-acciones-stack{display:inline-flex;flex-direction:column;align-items:stretch;gap:.35rem}.deuda-causa-stack{display:flex;flex-direction:column;gap:.2rem}.table-deuda-socios--multas thead th.th-deuda-nro,.table-deuda-socios--multas tbody td.deuda-nro-cell{text-align:center;padding-left:.75rem;padding-right:.75rem}.th-deuda-header-stack{display:inline-flex;flex-direction:column;align-items:center;gap:.15rem;line-height:1.2}.th-deuda-header-sub{font-size:.68rem;font-weight:600;letter-spacing:.02em;color:#64748b;text-transform:lowercase}.table-deuda-socios--multas tbody td{padding:1rem;vertical-align:middle;text-align:center}.table-deuda-socios--multas tbody td.deuda-socio-cell{text-align:center;padding:.85rem 1rem;min-width:13.5rem;vertical-align:middle}.table-deuda-socios--multas .deuda-socio-stack{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;width:100%}.table-deuda-socios--multas .deuda-socio-codigo{margin-bottom:0;font-size:.72rem;padding:.2rem .5rem}.table-deuda-socios--multas .deuda-socio-nombre{font-size:.9rem;font-weight:700;line-height:1.35;color:#1e293b;word-break:normal;overflow-wrap:break-word;white-space:normal;max-width:12.5rem;text-align:center}.table-deuda-socios--multas .deuda-causa-cell{font-size:.875rem;font-weight:500;line-height:1.45;color:#334155;word-break:normal;overflow-wrap:break-word;white-space:normal;text-align:center;padding:.85rem 1rem;min-width:10rem}.table-deuda-socios--multas .deuda-nro-badge{font-size:.78rem;padding:.25rem .55rem}.table-deuda-socios--multas .afiliado-placa-badge{font-size:.8rem;padding:.25rem .55rem;margin:0 auto}.table-deuda-socios--multas .deuda-dias-pill{min-width:1.75rem;padding:.25rem .5rem;font-size:.8125rem;margin:0 auto}.table-deuda-socios--multas .deuda-total-cell strong{font-size:.9375rem;font-weight:700;white-space:nowrap;color:#1e293b}.table-deuda-socios--multas .col-acciones .btn{min-width:5rem;padding:.45rem .75rem;font-size:.8125rem;font-weight:600}.table-deuda-socios--multas .cell-empty{color:#94a3b8;font-size:.875rem}.table-deuda-socios--multas tbody tr:hover td{background:#3498db0f}@media(max-width:900px){.table-deuda-socios--multas{min-width:780px}.socios-atrasados-page .table-wrap-deuda-report{padding:.35rem .5rem .65rem}}.cobros-sanciones-page{width:100%;max-width:none}.cobros-sanciones-panel{margin-bottom:1rem;padding:1.15rem 1.25rem 1rem}.cobros-sanciones-panel.card{padding:1.15rem 1.25rem 1rem}.cs-panel-filters{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem}.cs-search-field{flex:1 1 14rem;display:flex;align-items:center;gap:.5rem;min-height:2.5rem;padding:0 .75rem;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);transition:border-color .15s,box-shadow .15s}.cs-search-field:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-muted)}.cs-search-icon{display:inline-flex;color:var(--muted);flex-shrink:0}.cs-search-icon svg{width:1rem;height:1rem}.cs-search-input{flex:1;min-width:0;border:none;background:transparent;font-family:inherit;font-size:.875rem;color:var(--text);outline:none}.cs-search-input::placeholder{color:var(--muted)}.cs-search-clear{flex-shrink:0;width:1.25rem;height:1.25rem;border:none;border-radius:var(--radius-full);background:var(--md-surface-container-high);color:var(--text-secondary);font-size:.95rem;line-height:1;cursor:pointer;transition:background .15s,color .15s}.cs-search-clear:hover{background:var(--border);color:var(--text)}.cobros-sanciones-panel .cs-tipo-toggle{flex-shrink:0}.cs-concepto-select{flex-shrink:0;margin:0;min-width:11.5rem}.cs-concepto-select select{min-height:2.5rem;padding:.45rem .65rem;font-size:.84rem;font-weight:600;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text)}.cs-panel-clear{flex-shrink:0}.cs-panel-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--md-surface-container-low);overflow:hidden}.cs-panel-stats--4{grid-template-columns:repeat(4,minmax(0,1fr))}.cs-stat-card{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;border:none;border-right:1px solid var(--border);border-radius:0;background:transparent;transition:background .15s ease}.cs-stat-card:last-child{border-right:none}.cs-stat-card:hover{background:var(--state-hover)}.cs-stat-icon{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:var(--radius);flex-shrink:0;background:var(--md-primary-container);border:1px solid var(--border)}.cs-stat-icon:after{display:none}.cs-stat-flaticon{width:1.85rem;height:1.85rem;object-fit:contain;filter:none}.cs-flaticon-credit{margin:.55rem 0 0;font-size:.62rem;color:var(--muted);text-align:right}.cs-flaticon-credit a{color:var(--text-secondary);text-decoration:none}.cs-flaticon-credit a:hover{color:var(--primary);text-decoration:underline}.cs-stat-body{display:flex;flex-direction:column;gap:.05rem;min-width:0}.cs-stat-label{font-size:.68rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.cs-stat-value{font-size:1.35rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1.05;color:var(--dash-purple-deep)}.cs-stat-foot{font-size:.68rem;color:var(--text-secondary);line-height:1.2}.cs-stat-card--total.is-filtered{background:var(--primary-muted)}.cs-stat-card--rec .cs-stat-icon{background:var(--md-primary-container)}.cs-stat-card--rec .cs-stat-value{color:var(--md-primary)}.cs-stat-card--rmu .cs-stat-icon{background:var(--warning-muted)}.cs-stat-card--rmu .cs-stat-value{color:var(--md-warning)}.cs-stat-card--otro .cs-stat-icon{background:#e0f2fe}.cs-stat-card--otro .cs-stat-value{color:#0369a1}.cs-stat-card--total .cs-stat-value{color:var(--dash-purple-deep)}@media(max-width:1024px){.cs-panel-stats--4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:820px){.cs-panel-stats,.cs-panel-stats--4{grid-template-columns:1fr}.cs-stat-card{border-right:none;border-bottom:1px solid var(--border)}.cs-stat-card:last-child{border-bottom:none}.cobros-sanciones-panel .cs-tipo-toggle{width:100%;justify-content:stretch}.cs-concepto-select{width:100%;min-width:0}.cs-concepto-select select{width:100%}.cobros-sanciones-panel .recaudacion-vista-btn{flex:1}}.cobros-sanciones-card{overflow:hidden}.cobros-sanciones-card.card-table-grid .table-wrap,.table-wrap-cobros-sanciones{padding:.35rem .5rem .65rem;overflow-x:hidden;overflow-y:visible}.table-cobros-sanciones{table-layout:fixed;width:100%;max-width:100%;min-width:0;border-collapse:collapse;border-spacing:0}.table-cobros-sanciones col.col-cs-nro{width:10%}.table-cobros-sanciones col.col-cs-afiliado{width:20%}.table-cobros-sanciones col.col-cs-tipo{width:14%}.table-cobros-sanciones col.col-cs-fecha{width:12%}.table-cobros-sanciones col.col-cs-monto{width:10%}.table-cobros-sanciones col.col-cs-debe,.table-cobros-sanciones col.col-cs-estado{width:9%}.table-cobros-sanciones col.col-cs-acciones{width:16%}.table-wrap-cobros-sanciones th:not(.col-acciones):not(.th-acciones),.table-wrap-cobros-sanciones td:not(.col-acciones){max-width:none;overflow:visible;text-overflow:unset}.table-wrap-cobros-sanciones thead th{white-space:normal}.table-cobros-sanciones thead th{padding:.55rem .35rem;font-size:.65rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--dash-purple-deep);vertical-align:middle;white-space:normal;line-height:1.2;text-align:left;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;background:linear-gradient(180deg,#f8fafc,#eef3f8);border-bottom:2px solid #d4e3f0}.table-cobros-sanciones thead th.th-num,.table-cobros-sanciones tbody td.td-num{text-align:right}.table-cobros-sanciones thead th.th-center,.table-cobros-sanciones tbody td.td-center{text-align:center}.table-cobros-sanciones tbody td{padding:.45rem .35rem;vertical-align:middle;font-size:.78rem;line-height:1.3;border-top:1px solid var(--border);word-break:break-word;overflow-wrap:anywhere}.table-cobros-sanciones tbody td.td-fecha{white-space:nowrap;word-break:normal;overflow-wrap:normal;-webkit-hyphens:none;hyphens:none;text-align:center;font-size:.74rem;font-variant-numeric:tabular-nums;color:var(--text-secondary);padding-left:.45rem;padding-right:.45rem}.table-cobros-sanciones thead th.th-cs-fecha{white-space:nowrap;word-break:normal;overflow-wrap:normal;-webkit-hyphens:none;hyphens:none;text-align:center;letter-spacing:.02em}.cobros-sanciones-nro{display:inline-block;max-width:100%;padding:.1rem .25rem;border-radius:5px;font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:.68rem;font-weight:700;letter-spacing:0;line-height:1.25;white-space:normal;word-break:break-all}.cobros-sanciones-nro--rec{background:var(--md-primary-container);color:var(--md-on-primary-container)}.cobros-sanciones-nro--rmu{background:var(--warning-muted);color:var(--md-warning)}.cobros-sanciones-nro--otro{background:#e0f2fe;color:#0369a1}.cobros-sanciones-afiliado{display:block;font-weight:600;font-size:.76rem;color:var(--text);line-height:1.25;word-break:break-word;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto}.cobros-debe-monto{display:block;margin-top:.2rem;font-size:.72rem;font-weight:700;color:#c2410c}.cobros-debe-monto--cell{display:inline;margin:0;font-size:.8rem;white-space:nowrap;font-variant-numeric:tabular-nums}.cobros-debe-vacio{color:#94a3b8;font-size:.85rem}.usuarios-check-editar{display:inline-flex;align-items:center;gap:.4rem;font-size:.82rem;color:#334155;cursor:pointer;-webkit-user-select:none;user-select:none}.usuarios-check-editar input{width:1rem;height:1rem;accent-color:#0f766e}.usuarios-check-editar--form{grid-column:1 / -1;margin:.15rem 0 .35rem}.usuarios-page .page-subtitle{max-width:42rem}.usuarios-excel-card{padding:0;overflow:hidden}.usuarios-excel-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1rem;padding:.55rem .85rem;background:#eef2f6;border-bottom:1px solid #c5ced8;font-size:.78rem;color:#475569}.usuarios-excel-count{font-weight:700;color:#1e293b;font-variant-numeric:tabular-nums}.table-usuarios-excel .col-usr-nombre{width:20%}.table-usuarios-excel .col-usr-email{width:26%}.table-usuarios-excel .col-usr-rol{width:12%}.table-usuarios-excel .col-usr-estado,.table-usuarios-excel .col-usr-cobros,.table-usuarios-excel .col-usr-alta{width:10%}.table-usuarios-excel .col-usr-acciones{width:12%}.table-usuarios-excel th,.table-usuarios-excel td{padding:.38rem .5rem;font-size:.8rem}.table-usuarios-excel .td-nombre{font-weight:600;color:#0f172a}.table-usuarios-excel .usr-nombre{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.35rem}.table-usuarios-excel .usr-yo{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:#1d4ed8;background:#dbeafe;padding:.05rem .35rem;border-radius:3px}.table-usuarios-excel .td-usr-email{font-family:Roboto Mono,ui-monospace,monospace;font-size:.72rem;color:#334155;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.table-usuarios-excel .td-usr-alta{font-variant-numeric:tabular-nums;color:#64748b;white-space:nowrap}.table-usuarios-excel .badge-sm{font-size:.68rem;padding:.12rem .4rem;font-weight:700}.table-usuarios-excel .row-usr-inactivo td{color:#94a3b8;background:#f8fafc!important}.table-usuarios-excel .usr-actions{display:inline-flex;flex-wrap:nowrap;align-items:center;justify-content:center;gap:.3rem;width:100%}.table-usuarios-excel .usr-action-btn{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;min-width:2rem;padding:0;border-radius:8px;border:1px solid transparent;background:#f8fafc;color:#475569;transition:background .15s,border-color .15s,color .15s,box-shadow .15s,transform .12s}.table-usuarios-excel .usr-action-btn svg{width:1.05rem;height:1.05rem;display:block}.table-usuarios-excel .usr-action-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 6px #0f172a1a}.table-usuarios-excel .usr-action-btn:disabled{opacity:.45;cursor:not-allowed}.table-usuarios-excel .usr-action-btn.table-action-edit{color:#334155;background:#f1f5f9;border-color:#cbd5e1}.table-usuarios-excel .usr-action-btn.table-action-edit:hover:not(:disabled){color:#0f172a;background:#e2e8f0;border-color:#94a3b8}.table-usuarios-excel .usr-action-btn.table-action-clave{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.table-usuarios-excel .usr-action-btn.table-action-clave:hover:not(:disabled){color:#1e40af;background:#dbeafe;border-color:#93c5fd}.table-usuarios-excel .usr-action-btn.table-action-delete{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.table-usuarios-excel .usr-action-btn.table-action-delete:hover:not(:disabled){color:#991b1b;background:#fee2e2;border-color:#fca5a5}.table-usuarios-excel .col-acciones{text-align:center;white-space:nowrap}.usuarios-perm-box{grid-column:1 / -1;padding:.85rem 1rem;border:1px solid #d7dee7;border-radius:12px;background:#f8fafc}.usuarios-perm-label{display:flex!important;align-items:flex-start;gap:.7rem;margin-bottom:0!important;cursor:pointer;font-weight:500!important;color:inherit!important}.usuarios-perm-check{width:1.15rem!important;height:1.15rem!important;min-width:1.15rem;margin-top:.15rem;padding:0!important;flex-shrink:0;accent-color:#2563eb;cursor:pointer}.usuarios-perm-text{display:flex;flex-direction:column;gap:.2rem;min-width:0}.usuarios-perm-text strong{font-size:.9rem;color:#1e293b}.usuarios-perm-hint{font-size:.8rem;font-weight:500;color:#64748b;line-height:1.4}.usuarios-panel-card{margin-bottom:1.25rem;padding:1.15rem 1.25rem 1.25rem}.usuarios-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #eef2f7}.usuarios-panel-head h2{margin:0;font-size:1.05rem;font-weight:700;color:#0f172a}.usuarios-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem 1rem}.usuarios-form-grid--clave{max-width:28rem;grid-template-columns:1fr}.usuarios-form-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:.65rem;margin-top:.35rem;padding-top:.75rem;border-top:1px solid #eef2f7}.usuarios-row-actions{display:inline-flex;gap:.35rem}.table-action-clave{color:#1d4ed8!important;border-color:#bfdbfe!important;background:#eff6ff!important}.table-action-clave:hover:not(:disabled){background:#dbeafe!important}.table-usuarios .td-muted{color:#64748b;font-size:.82rem;white-space:nowrap}.table-usuarios .col-acciones{min-width:16rem}.usuarios-del-actions{display:flex;justify-content:flex-end;gap:.5rem}.multas-pasivos-regla{margin:0;max-width:28rem;align-self:flex-end}.table-multas-pasivos .td-meses-adeudados{font-size:.78rem;line-height:1.35;max-width:22rem}.table-multas-pasivos .row-multa-critica td{color:#b91c1c}.table-multas-pasivos .row-multa-critica td .badge{color:inherit}@media(max-width:720px){.usuarios-form-grid{grid-template-columns:1fr}.usuarios-email-cell{white-space:normal;max-width:none}.usuarios-acciones{justify-content:flex-start}}.cobros-badge-parcial{white-space:nowrap;font-size:.68rem;padding:.2rem .45rem}.cobros-row--debe td{background:#fff7ed!important}.table-cobros-sanciones .col-acciones{overflow:visible!important;white-space:nowrap}.table-cobros-sanciones .table-actions{display:inline-flex;flex-wrap:nowrap;gap:.2rem;justify-content:flex-end;max-width:100%}.table-cobros-sanciones .table-action-btn{flex:0 0 auto;min-width:1.85rem;width:1.85rem;height:1.85rem;padding:0!important}.table-cobros-sanciones .table-action-btn .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}.table-cobros-sanciones .table-action-btn svg{width:.9rem;height:.9rem}.cobros-sanciones-tipo{display:block;font-size:.72rem;font-weight:600;color:var(--text-secondary);line-height:1.2;word-break:break-word}.cobros-sanciones-tipo--multa{color:var(--md-warning)}.table-cobros-sanciones .cell-num{display:block;font-variant-numeric:tabular-nums;font-size:.72rem;line-height:1.2;white-space:nowrap}.cobros-sanciones-saldo-pend{color:var(--md-warning);font-weight:700}.table-cobros-sanciones .td-center .badge{font-size:.65rem;text-transform:capitalize;padding:.2rem .35rem}.table-cobros-sanciones .col-acciones{padding:.25rem .2rem!important;overflow:visible!important;white-space:nowrap;text-align:right}.table-cobros-sanciones .table-actions{display:inline-flex;flex-wrap:nowrap;gap:.2rem;width:auto;max-width:100%;justify-content:flex-end}.table-cobros-sanciones .table-action-btn{flex:0 0 auto;min-width:1.85rem;width:1.85rem;height:1.85rem;min-height:1.85rem;padding:0!important}.table-cobros-sanciones .empty-row{text-align:center;padding:1.5rem 1rem!important;color:var(--muted)}.cobros-sanciones-page .link-button{border:none;background:none;padding:0;font:inherit;color:var(--indigo);text-decoration:underline;cursor:pointer}.cobros-sanciones-page .link-button:hover{color:var(--dash-purple-deep, #4a2c6a)}.cobrar-deuda-overlay{z-index:10040}.cobrar-deuda-modal{width:min(380px,calc(100vw - 2rem));background:var(--surface);border-radius:14px;box-shadow:0 20px 48px #0f172a38;padding:1.1rem 1.25rem 1.25rem}.cobrar-deuda-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.cobrar-deuda-header h2{margin:0;font-size:1.1rem}.cobrar-deuda-close{border:none;background:transparent;font-size:1.5rem;line-height:1;color:var(--muted);cursor:pointer}.cobrar-deuda-socio{margin:0 0 .5rem;line-height:1.4}.cobrar-deuda-codigo{display:inline-block;margin-left:.5rem;font-size:.82rem;color:var(--muted)}.cobrar-deuda-resumen{margin:0 0 1rem;font-size:.9rem;color:var(--text)}.cobrar-deuda-hint{margin:.35rem 0 0;font-size:.82rem;color:var(--muted);line-height:1.4}.cobrar-deuda-total{display:flex;flex-direction:column;gap:.15rem;margin:1rem 0;padding:.75rem .85rem;border-radius:10px;background:#2563eb14;text-align:center}.cobrar-deuda-total strong{font-size:1.35rem;color:var(--primary)}.cobrar-deuda-acciones{display:flex;flex-direction:column;gap:.5rem}.recibo-adeudo-box{margin-bottom:1rem;padding:1rem 1.1rem;border-radius:12px;border:1px solid rgba(37,99,235,.25);background:#2563eb0f}.recibo-adeudo-box-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.85rem}.recibo-adeudo-badge{font-size:.78rem;font-weight:700;padding:.2rem .55rem;border-radius:999px;background:#f59e0b33;color:#92400e}.recibo-adeudo-grid{display:grid;grid-template-columns:140px 1fr;gap:1rem;align-items:start}@media(max-width:560px){.recibo-adeudo-grid{grid-template-columns:1fr}}.recibo-adeudo-resumen p{margin:0 0 .35rem;font-size:.88rem;line-height:1.45}.recibo-adeudo-total{margin-top:.5rem!important;font-size:.95rem!important}.deuda-report-card{border:1px solid #eceef3;overflow:hidden}.deuda-report-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.15rem 1.35rem;border-bottom:1px solid #eef0f4;background:linear-gradient(180deg,#fafbfc,#fff)}.deuda-report-header-main h2{margin:0;font-size:1.05rem;font-weight:700;color:var(--dash-purple-deep, #4a2c6a);letter-spacing:-.01em}.deuda-report-sub{margin:.3rem 0 0;font-size:.8125rem;color:#6b7280;line-height:1.4}.deuda-report-header-side{flex-shrink:0}.deuda-report-badge{display:inline-flex;align-items:center;padding:.35rem .75rem;border-radius:999px;font-size:.75rem;font-weight:700;letter-spacing:.02em}.deuda-report-badge--ok{background:#2e7d321f;color:#2e7d32}.deuda-report-badge--warn{background:#ef6c001f;color:#e65100}.deuda-report-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-bottom:1px solid #eef0f4;background:#f9fafb}.deuda-report-stat{display:flex;flex-direction:column;gap:.2rem;padding:.85rem 1.35rem;border-right:1px solid #eef0f4}.deuda-report-stat:last-child{border-right:none}.deuda-report-stat-label{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#8b90a0}.deuda-report-stat-value{font-size:1.15rem;font-weight:700;color:var(--dash-purple-deep, #4a2c6a);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.deuda-report-stat--highlight .deuda-report-stat-value{color:#3498db}.table-wrap-deuda-report{padding:0;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-deuda-socios--report{border-collapse:separate;border-spacing:0}.table-deuda-socios--report thead th{padding:.75rem 1.15rem;font-size:.68rem;border-bottom:2px solid #d4e3f0;background:linear-gradient(180deg,#f8fafc,#eef3f8)}.table-deuda-socios--report thead th.th-placa-report{text-align:center;white-space:nowrap}.table-deuda-socios--report tbody td{padding:.85rem 1.15rem;border-bottom:1px solid #f0f2f5;vertical-align:middle}.table-deuda-socios--report tbody tr:last-child td{border-bottom:none}.table-deuda-socios--report tbody tr:hover td{background:#3498db0d}.deuda-socio-cell{line-height:1.35}.deuda-socio-codigo{display:inline-block;margin-bottom:.25rem;padding:.15rem .45rem;border-radius:6px;background:#3498db1f;color:#2980b9;font-size:.68rem;font-weight:700;letter-spacing:.04em}.deuda-socio-nombre{display:block;font-size:.875rem;font-weight:600;color:#1f2430}.deuda-dias-pill{display:inline-flex;align-items:center;justify-content:center;min-width:1.75rem;padding:.2rem .55rem;border-radius:999px;font-size:.8125rem;font-weight:700;font-variant-numeric:tabular-nums}.deuda-dias-pill--baja{background:#3498db1f;color:#2980b9}.deuda-dias-pill--media{background:#ef6c0024;color:#e65100}.deuda-dias-pill--alta{background:#c628281f;color:#c62828}.deuda-dias-pill--canje{background:#2563eb24;color:#1d4ed8}.deuda-dias-canje-stack{display:inline-flex;flex-direction:column;align-items:center;gap:.12rem;line-height:1.1}.deuda-dias-canje-sub{font-size:.65rem;font-weight:700;letter-spacing:.02em;text-transform:lowercase;color:#2563eb}.deuda-dias-canje-sub--venc{color:#c62828}.deuda-canje-tag{display:inline-block;margin-top:.15rem;font-size:.72rem;font-weight:600;color:#1d4ed8}.deuda-canje-tag--venc{color:#c62828}.deuda-total-cell strong{font-size:.875rem;font-weight:700;color:var(--dash-purple-deep, #4a2c6a);font-variant-numeric:tabular-nums}.deuda-empty-row{padding:2.5rem 1rem!important}.deuda-empty-state{display:flex;flex-direction:column;align-items:center;gap:.65rem}.deuda-empty-icon{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:50%;background:#2e7d321f;color:#2e7d32;font-size:1.1rem;font-weight:700}.deuda-empty-state p{margin:0;font-size:.875rem;color:#6b7280}@media(max-width:640px){.deuda-report-stats{grid-template-columns:1fr}.deuda-report-stat{border-right:none;border-bottom:1px solid #eef0f4}.deuda-report-stat:last-child{border-bottom:none}.deuda-report-header{flex-direction:column}}.table-deuda-socios .td-placa-vehicular{text-align:center;padding-left:.4rem;padding-right:.4rem}.table-deuda-socios thead th.th-placa-vehicular{overflow:visible}.cell-empty{color:var(--muted, #94a3b8);font-size:.8125rem}.afiliado-contacto-cell{display:flex;flex-direction:column;gap:.45rem;width:100%}.afiliado-contacto-line{display:flex;align-items:center;gap:.5rem;flex-wrap:nowrap;white-space:nowrap;line-height:1.35}.afiliado-contacto-label{flex:0 0 auto;width:2.75rem;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted, #64748b)}.table-afiliados-list .afiliado-contacto-line .ci-display--inline,.table-afiliados-list .afiliado-contacto-line .telefono-display{display:inline-flex;align-items:center;gap:.35rem;flex:1 1 auto;min-width:0;font-size:.78rem;white-space:nowrap}.table-afiliados-list .afiliado-contacto-line .ci-display-dpto{display:none}.table-afiliados-list .afiliado-contacto-line .ci-display-meta{flex-direction:row;align-items:center;gap:0;min-width:0}.table-afiliados-list .afiliado-contacto-line .ci-display-num,.table-afiliados-list .afiliado-contacto-line .telefono-display{font-variant-numeric:tabular-nums;font-weight:600;font-size:.75rem}.table-afiliados-list .afiliado-contacto-line .country-flag-img{width:14px;height:auto;flex-shrink:0}.table-afiliados-list .table-actions{justify-content:center;flex-wrap:nowrap;width:auto;margin:0 auto}.table-afiliados-list .table-action-btn span{display:none}.table-afiliados-list .col-acciones,.table-afiliados-list .th-acciones{text-align:center;padding:.35rem .2rem!important;overflow:visible}.afiliado-foto--table,.afiliado-foto--table.afiliado-foto--empty{width:2.85rem;height:2.85rem;border-radius:8px;font-size:.85rem;object-fit:cover}.table-asociados .col-w-num{width:4%}.table-asociados .col-w-interno{width:9%}.table-asociados .col-w-razon{width:22%}.table-asociados .col-w-nit{width:11%}.table-asociados .col-w-telefono{width:11%;min-width:6.5rem}.table-asociados .col-w-estado{width:9%}.table-asociados .col-w-obs{width:16%}.table-asociados .col-w-acciones{width:18%;min-width:9.5rem}.table-asociados .td-telefono,.table-asociados .td-ci{max-width:none;overflow:visible;text-align:center;vertical-align:middle}.table-asociados .th-telefono{text-align:center}.table-asociados tbody tr.row-asociado-activo,.table-asociados tbody tr.row-asociado-pasivo{background:transparent}.table-asociados tbody tr.row-asociado-suspendido{background:#b8e6b859}.table-asociados tbody tr.row-asociado-atl{background:#c6f06c66}.input-readonly{background:var(--surface2);color:var(--muted);cursor:default}.input-codigo{font-family:var(--font-mono, ui-monospace, monospace);font-weight:600;letter-spacing:.03em;background:var(--surface2);cursor:default}.form-hint{display:block;margin-top:.25rem;font-size:.75rem;color:var(--muted)}.ci-inline{display:flex;align-items:stretch;width:100%;border:1px solid var(--border, #cbd5e1);border-radius:8px;background:#fff;overflow:hidden}.ci-inline:focus-within{border-color:var(--indigo, #3b5bdb);box-shadow:0 0 0 2px #3b5bdb1f}.ci-inline-numero{flex:1;min-width:0;border:none;background:transparent;padding:.5rem .65rem;font-size:.875rem}.ci-inline-numero:focus{outline:none}.ci-inline-dpto{flex-shrink:0;max-width:7.5rem;border:none;border-left:1px solid var(--border, #e2e8f0);background:#f8fafc;padding:.45rem .35rem .45rem .5rem;font-size:.78rem;font-weight:700;color:#334155;cursor:pointer}.ci-inline-dpto:focus{outline:none;background:#eef2ff}.phone-inline{display:flex;align-items:stretch;width:100%;border:1px solid var(--border, #cbd5e1);border-radius:8px;background:#fff;overflow:hidden;min-height:0}.phone-inline:focus-within{border-color:var(--indigo, #3b5bdb);box-shadow:0 0 0 2px #3b5bdb1f}.phone-inline-country{display:inline-flex;align-items:center;gap:.3rem;flex-shrink:0;padding:.45rem .45rem .45rem .5rem;border:none;border-right:1px solid var(--border, #e2e8f0);background:#f8fafc;cursor:pointer;line-height:1}.phone-inline-country:hover{background:#eef2ff}.phone-inline-code{font-size:.8rem;font-weight:700;color:#334155}.phone-inline-chevron{font-size:.55rem;color:#64748b;margin-left:.1rem}.phone-inline-number{flex:1;min-width:0;border:none;background:transparent;padding:.5rem .65rem;font-size:.875rem}.phone-inline-number:focus{outline:none}.phone-pais-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:1rem}.phone-pais-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:none;background:#0f172a73;cursor:pointer}.phone-pais-panel{position:relative;z-index:1;width:min(420px,100%);max-height:min(520px,90vh);display:flex;flex-direction:column;background:#fff;border-radius:14px;box-shadow:0 20px 50px #0f172a40;overflow:hidden}.phone-pais-panel-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.65rem .75rem;border-bottom:1px solid #e2e8f0;background:#f8fafc}.phone-pais-panel-head strong{font-size:.9rem;color:#1e293b}.phone-pais-close{border:none;background:#e2e8f0;color:#475569;width:2rem;height:2rem;border-radius:8px;cursor:pointer;font-size:1rem;line-height:1}.phone-pais-close:hover{background:#cbd5e1}.phone-pais-search{margin:.5rem .65rem 0;padding:.45rem .6rem;border:1px solid #cbd5e1;border-radius:8px;font-size:.85rem;width:calc(100% - 1.3rem)}.phone-pais-search:focus{outline:none;border-color:var(--indigo, #3b5bdb);box-shadow:0 0 0 3px #3b5bdb1f}.phone-pais-list{overflow-y:auto;padding:.5rem .65rem .75rem;margin-top:.5rem}.phone-pais-group-title{margin:.5rem .35rem .25rem;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8}.phone-pais-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.4rem .5rem;margin-bottom:.15rem;border:1px solid transparent;border-radius:10px;background:transparent;cursor:pointer;text-align:left}.phone-pais-item:hover{background:#f1f5f9;border-color:#e2e8f0}.phone-pais-item.is-active{background:#3b5bdb1a;border-color:#3b5bdb59}.phone-pais-item-name{flex:1;font-size:.9rem;font-weight:600;color:#1e293b}.phone-pais-item-code{font-size:.82rem;font-weight:700;color:#64748b;background:#f1f5f9;padding:.2rem .45rem;border-radius:6px}.phone-pais-empty{text-align:center;padding:1.5rem .5rem;color:#64748b;font-size:.88rem}.country-flag-img{display:block;object-fit:cover;border-radius:3px;box-shadow:0 0 0 1px #00000014;flex-shrink:0}.telefono-display{display:inline-flex;align-items:center;gap:.4rem;white-space:nowrap}.telefono-display--cell{flex-direction:column;align-items:center;gap:.15rem;line-height:1.2;max-width:100%}.telefono-display-row{display:inline-flex;align-items:center;gap:.3rem}.telefono-display-code{font-size:.72rem;font-weight:700;color:#475569}.telefono-display-num{font-size:.8rem;font-weight:600;color:#1e293b;word-break:break-all}.phone-number-input{flex:1;min-width:0;border:none!important;border-radius:0!important;box-shadow:none!important;padding:.6rem .75rem;font-size:.95rem;background:transparent}.phone-number-input:focus{outline:none;box-shadow:none!important}.page-subtitle{color:var(--muted);font-size:.875rem;margin-top:.25rem}.page-breadcrumb{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--muted);margin-bottom:.75rem}.page-breadcrumb a{color:var(--indigo)}.page-breadcrumb a:hover{text-decoration:underline}.toolbar-card{margin-bottom:1rem}.toolbar{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end}.toolbar-search{flex:1;min-width:200px;margin-bottom:0!important}.toolbar .form-group{margin-bottom:0;min-width:140px}.toolbar-stat{display:flex;flex-direction:column;align-items:flex-end;padding-bottom:.35rem}.toolbar-stat .stat-label{font-size:.7rem;color:var(--muted);text-transform:uppercase}.toolbar-stat strong{font-size:1.25rem;color:var(--indigo)}.toolbar-stat-box{align-items:center;text-align:center;min-width:5rem}.toolbar-stat-box .stat-label{width:100%;text-align:center}.toolbar-stat-value{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;min-height:2rem;padding:.15rem .5rem;border:1px solid var(--md-outline-variant, #dde3ea);border-radius:var(--radius-sm, 8px);background:var(--md-surface-container, #fff);font-size:1.25rem;font-weight:700;color:var(--indigo, #1565c0);line-height:1;font-variant-numeric:tabular-nums}.col-acciones,.th-acciones{width:auto;min-width:0;max-width:none;text-align:center;vertical-align:middle;overflow:visible;padding:.25rem .2rem!important}.table-wrap td.col-acciones,.table-wrap th.col-acciones{max-width:none}.th-acciones{font-size:.65rem;letter-spacing:.06em}.table-actions{display:inline-flex;align-items:center;justify-content:center;flex-wrap:nowrap;width:fit-content;max-width:100%;margin:0 auto;border:1px solid var(--border);border-radius:6px;overflow:hidden;background:var(--surface)}.table-action-btn{display:inline-flex;align-items:center;justify-content:center;gap:0;padding:.32rem .36rem;min-height:1.65rem;min-width:1.65rem;border:none;border-right:1px solid var(--border);background:var(--surface2);color:var(--muted);font-family:inherit;font-size:0;font-weight:500;line-height:1;cursor:pointer;text-decoration:none;transition:background .15s,color .15s;white-space:nowrap;flex:0 0 auto}.table-wrap .table-action-btn span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.table-action-btn:last-child{border-right:none}.table-action-btn svg{width:.85rem;height:.85rem;flex-shrink:0}.table-action-btn:hover:not(:disabled){background:var(--surface);color:var(--text)}.table-action-view:hover:not(:disabled){color:var(--accent)}.table-action-edit:hover:not(:disabled){color:var(--indigo)}.table-action-print:hover:not(:disabled){color:var(--md-tertiary)}.table-action-delete{background:var(--danger-muted);color:var(--danger)}.table-action-delete:hover:not(:disabled){background:var(--danger);color:#fff}.table-action-delete:disabled{opacity:.35;cursor:not-allowed}.table-action-anular{background:#ea580c1f;color:#c2410c}.table-action-anular:hover:not(:disabled){background:#ea580c;color:#fff}.table-action-anular:disabled{opacity:.35;cursor:not-allowed}.table-action-loading{font-size:1rem;line-height:1}.cell-line{display:block;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.cell-line-muted{font-size:.75rem;color:var(--muted);margin-top:.12rem}.cell-line-strong{font-weight:600;color:var(--text);font-size:.8125rem}.cell-line-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:normal;word-break:break-word}.cell-sub{display:block;font-size:.75rem;color:var(--muted);margin-top:.15rem;overflow:hidden;text-overflow:ellipsis}.empty-row{text-align:center!important;color:var(--muted);padding:1.5rem!important;vertical-align:middle}.detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}.detail-item{display:flex;flex-direction:column;gap:.25rem;padding:.75rem;background:var(--surface2);border-radius:8px;border:1px solid var(--border)}.detail-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.detail-item span:last-child{font-weight:500}.detail-item-full{grid-column:1 / -1}.asociado-detalle-header .asociado-detalle-codigo{font-family:var(--font-mono, ui-monospace, monospace);font-size:.9rem;letter-spacing:.02em}.asociado-detalle-actions{display:flex;gap:.5rem;flex-shrink:0}.asociado-ficha{padding:1.25rem 1.5rem}.asociado-ficha-title{margin:0 0 1.25rem;font-size:1rem;font-weight:600;color:var(--text)}.asociado-ficha-section+.asociado-ficha-section{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--border)}.asociado-ficha-section-title{margin:0 0 .75rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.asociado-ficha-list{margin:0;display:flex;flex-direction:column;gap:0}.asociado-ficha-row{display:grid;grid-template-columns:minmax(140px,200px) 1fr;gap:.75rem 1.25rem;align-items:center;padding:.85rem 0;border-bottom:1px solid var(--border)}.asociado-ficha-row:last-child{border-bottom:none;padding-bottom:0}.asociado-ficha-row:first-child{padding-top:0}.asociado-ficha-row--block{align-items:start}.asociado-ficha-row dt{margin:0;font-size:.8rem;font-weight:500;color:var(--muted)}.asociado-ficha-row dd{margin:0}.asociado-ficha-value{font-size:1rem;font-weight:600;color:var(--text);line-height:1.4}.asociado-ficha-value--code{font-family:var(--font-mono, ui-monospace, monospace);font-size:1.05rem;letter-spacing:.03em}.asociado-ficha-obs{font-size:.95rem;font-weight:400;line-height:1.55;color:var(--text);white-space:pre-wrap;word-break:break-word;padding:.75rem 1rem;background:var(--surface2);border-radius:8px;border:1px solid var(--border)}.asociado-ficha-obs--empty{color:var(--muted);font-style:italic}.ci-display--inline{display:inline-flex;align-items:center;gap:.65rem}.ci-display-meta{display:flex;flex-direction:column;gap:.15rem;line-height:1.25}.ci-display-dpto{font-size:.8rem;font-weight:500;color:var(--muted)}.ci-display-num{font-size:1.1rem;font-weight:700;color:var(--text);letter-spacing:.02em}.asociado-ficha .telefono-display{font-size:1.05rem;font-weight:600;gap:.55rem}@media(max-width:560px){.asociado-ficha-row{grid-template-columns:1fr;gap:.35rem;padding:.75rem 0}.asociado-detalle-actions{flex-wrap:wrap}}.launchpad-page{max-width:1100px;margin:0 auto}.launchpad-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:2rem;padding:1.5rem;background:var(--md-surface-container);border-radius:var(--radius-lg);border:1px solid var(--md-outline-variant);box-shadow:var(--elevation-1)}.launchpad-greet{font-size:.85rem;color:var(--muted);margin-bottom:.25rem}.launchpad-hero h1{font-size:1.5rem;margin-bottom:.35rem}.launchpad-hero-badge{text-align:right;padding:.75rem 1rem;background:var(--md-primary-container);color:var(--md-on-primary-container);border-radius:var(--radius-sm);font-size:.85rem}.launchpad-hero-badge strong{display:block;font-size:1rem;margin-top:.2rem}.launchpad-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}.launchpad-tile{display:flex;flex-direction:column;gap:.35rem;padding:1.25rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);text-decoration:none;color:inherit;transition:transform .15s,box-shadow .15s,border-color .15s;box-shadow:var(--shadow-card)}.launchpad-tile:hover{transform:translateY(-2px);border-color:var(--md-primary);box-shadow:var(--elevation-2)}.launchpad-tile-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;margin-bottom:.35rem}.launchpad-tile-code{font-size:.65rem;font-weight:700;letter-spacing:.08em;color:var(--muted)}.launchpad-tile strong{font-size:1rem}.launchpad-tile-desc{font-size:.8rem;color:var(--muted);line-height:1.35}.report-page{max-width:1200px;margin:0 auto}.report-page-header{margin-bottom:1.25rem}.report-page-header h1{margin-top:.15rem}.breadcrumb-sep{margin:0 .35rem;color:var(--md-outline-variant)}.breadcrumb-current{color:var(--md-on-surface-variant);font-weight:500}.report-toolbar{margin-bottom:1.25rem}.report-filter-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:1rem}.report-filter-row .form-group{margin-bottom:0;min-width:140px}.report-filter-aligned{display:grid;grid-template-columns:1fr;gap:.75rem 1rem;align-items:end}@media(min-width:520px){.report-filter-aligned{grid-template-columns:minmax(150px,200px) minmax(150px,200px) auto;width:fit-content;max-width:100%}}.report-filter-aligned .form-group{margin-bottom:0;min-width:0}.report-filter-aligned .form-group input[type=date]{width:100%;min-width:0}.report-filter-aligned .report-filter-btn label{visibility:hidden;-webkit-user-select:none;user-select:none}.report-filter-aligned .report-filter-btn .btn{width:100%;min-height:2.5rem;white-space:nowrap}@media(min-width:520px){.report-filter-aligned .report-filter-btn .btn{width:auto;min-width:7rem}}.report-filter-mayor{display:grid;grid-template-columns:1fr;gap:.85rem 1rem;align-items:start;width:100%}@media(min-width:720px){.report-filter-mayor{grid-template-columns:minmax(0,1fr) minmax(10.5rem,12.5rem) auto;align-items:end}}.report-filter-mayor .form-group{margin-bottom:0;min-width:0}.report-filter-mayor .select-cuenta-mayor,.report-filter-mayor .form-group-mes-mayor input[type=month]{width:100%;max-width:100%}.report-filter-mayor .report-filter-cuenta-detalle,.report-filter-mayor .report-filter-mes-detalle{margin:.35rem 0 0;font-size:.75rem;line-height:1.35;color:var(--text-muted, #6b7280);word-break:break-word}.report-filter-mayor .report-filter-btn label{visibility:hidden;-webkit-user-select:none;user-select:none}.report-filter-mayor .report-filter-btn-mayor .btn{width:100%;min-height:2.5rem;white-space:nowrap}@media(min-width:720px){.report-filter-mayor .report-filter-btn-mayor .btn{width:auto;min-width:7.5rem}.report-filter-mayor .report-filter-cuenta-detalle,.report-filter-mayor .report-filter-mes-detalle{display:none}}.report-table-caption-mayor{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.5rem 1rem;padding:.85rem 1rem;border-bottom:1px solid #eef0f4}.report-mayor-cuenta-nombre{margin:.2rem 0 0;font-size:.8125rem;color:#6b7280;line-height:1.4;max-width:42rem}.report-mayor-periodo{font-size:.75rem;font-weight:600;color:#64748b;white-space:nowrap;padding:.25rem .65rem;border-radius:999px;background:#f1f5f9}.report-toolbar-comprobantes{display:flex;flex-direction:column;gap:1rem;width:100%}.report-toolbar-comprobantes-accion .btn{width:100%;min-height:2.5rem}@media(min-width:720px){.report-toolbar-comprobantes{flex-direction:row;flex-wrap:wrap;align-items:flex-end;gap:1rem 1.25rem}.report-toolbar-comprobantes-accion{flex-shrink:0}.report-toolbar-comprobantes-accion .btn{width:auto;white-space:nowrap}}.report-filter-comprobantes{display:grid;grid-template-columns:1fr;gap:.75rem 1rem;align-items:end;flex:1 1 280px;min-width:0}@media(min-width:520px){.report-filter-comprobantes{grid-template-columns:minmax(140px,180px) minmax(140px,180px) 1fr}.report-filter-comprobantes .report-filter-btn{grid-column:1 / -1}}@media(min-width:900px){.report-filter-comprobantes{grid-template-columns:minmax(140px,170px) minmax(140px,170px) minmax(180px,1fr) auto}.report-filter-comprobantes .report-filter-btn{grid-column:auto}}.report-filter-comprobantes .form-group{margin-bottom:0;min-width:0}.report-filter-comprobantes .form-group input{width:100%}.report-filter-comprobantes .report-filter-btn label{visibility:hidden;-webkit-user-select:none;user-select:none}.report-filter-comprobantes .report-filter-btn .btn{width:100%;min-height:2.5rem;white-space:nowrap}@media(min-width:900px){.report-filter-comprobantes .report-filter-btn .btn{width:auto;min-width:7rem}}.report-filter-movimientos{display:grid;grid-template-columns:1fr;gap:.75rem 1rem;align-items:end}@media(min-width:520px){.report-filter-movimientos{grid-template-columns:1fr 1fr}.report-filter-movimientos .report-filter-busqueda{grid-column:1 / -1}.report-filter-movimientos .report-filter-btn{grid-column:span 1}}@media(min-width:768px){.report-filter-movimientos{grid-template-columns:minmax(200px,1.4fr) minmax(180px,1fr) auto auto}.report-filter-movimientos .report-filter-busqueda{grid-column:auto}}.report-filter-movimientos .form-group{margin-bottom:0;min-width:0}.report-filter-movimientos .form-group input,.report-filter-movimientos .form-group select{width:100%}.report-filter-movimientos .report-filter-btn label{visibility:hidden;-webkit-user-select:none;user-select:none}.report-filter-movimientos .report-filter-btn .btn{width:100%;min-height:2.5rem;white-space:nowrap}@media(min-width:768px){.report-filter-movimientos .report-filter-btn .btn{width:auto;min-width:6.5rem}}.report-kpis{margin-bottom:1.25rem}.report-table-caption{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem .5rem;border-bottom:1px solid var(--md-outline-variant)}.report-meta{font-size:.8rem;color:var(--md-on-surface-variant)}.report-loading{padding:2.5rem;text-align:center}.reportes-nav{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem}.reportes-nav-link{display:inline-flex;align-items:center;padding:.4rem .75rem;border:1px solid var(--md-outline-variant);border-radius:var(--radius);background:var(--md-surface-container);color:var(--text);font-size:.8125rem;font-weight:500;text-decoration:none;transition:background .15s,border-color .15s}.reportes-nav-link:hover{background:var(--md-primary-container);border-color:var(--md-primary);color:var(--md-on-primary-container)}.report-section{margin-bottom:1.25rem;scroll-margin-top:1rem}.recaudacion-report{overflow:hidden;padding:0}.recaudacion-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:.85rem 1rem;flex-wrap:wrap;padding:1rem 1.15rem;border-bottom:1px solid var(--md-outline-variant);background:linear-gradient(180deg,#fafbfc,#fff)}.recaudacion-toolbar-filtros{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;flex:1 1 18rem;min-width:0;justify-content:flex-start}.recaudacion-tipo-toggle{flex-shrink:0}.recaudacion-concepto-select{flex:1 1 11.5rem;min-width:11.5rem;max-width:16rem;margin:0}.recaudacion-concepto-select select{width:100%;min-height:2.5rem;padding:.45rem .65rem;font-size:.84rem;font-weight:600;border:1px solid var(--border-strong, #dde1e8);border-radius:var(--radius-sm, 6px);background:var(--surface, #fff);color:var(--text, #1a202c)}.recaudacion-toolbar-actions{display:flex;align-items:center;flex-shrink:0;margin-left:auto}.recaudacion-toolbar-actions .btn-export-print{white-space:nowrap}.recaudacion-toolbar-left{display:flex;align-items:flex-end;gap:1rem;flex-wrap:wrap;flex:1;min-width:0}.recaudacion-vista-toggle{display:inline-flex;padding:.2rem;border-radius:var(--radius-md, 8px);background:#eef0f4;border:1px solid #dde1e8;flex-shrink:0}.recaudacion-vista-btn{border:none;background:transparent;color:#5c6370;font-size:.8125rem;font-weight:600;padding:.45rem .85rem;border-radius:calc(var(--radius-md, 8px) - 2px);cursor:pointer;transition:background .15s,color .15s,box-shadow .15s}.recaudacion-vista-btn.is-active{background:#fff;color:var(--md-primary, #3498db);box-shadow:0 1px 3px #0f172a1f}.recaudacion-filtro{margin:0;min-width:10.5rem}.recaudacion-filtro label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#8b90a0}.recaudacion-stats{border-bottom:1px solid #eef0f4}.recaudacion-stats .deuda-report-stat{align-items:center;text-align:center}.table-recaudacion-dia .col-rec-fecha{width:22%}.table-recaudacion-dia .col-rec-cobros{width:14%}.table-recaudacion-dia .col-rec-otros{width:28%}.table-recaudacion-dia .col-rec-monto{width:36%}.table-recaudacion-detalle .col-rec-comp{width:18%}.table-recaudacion-detalle .col-rec-concepto{width:28%}.table-recaudacion-detalle .col-rec-afiliado{width:34%}.table-recaudacion-detalle .col-rec-monto{width:20%}.recaudacion-stat-filtro{font-size:.92rem!important;line-height:1.25}.table-recaudacion-mes .col-rec-fecha{width:22%}.table-recaudacion-mes .col-rec-cobros{width:14%}.table-recaudacion-mes .col-rec-otros{width:28%}.table-recaudacion-mes .col-rec-monto{width:36%}.recaudacion-semana-row td{background:#eef4fb;color:var(--md-primary, #3498db);font-weight:700;font-size:.78rem;letter-spacing:.03em;text-transform:uppercase;text-align:left!important;padding:.55rem .75rem;border-top:1px solid #d8e4f0}.recaudacion-semana-total td{background:#f8fafc;font-weight:600;border-top:1px solid #e2e8f0}.btn-export-excel{display:inline-flex;align-items:center;gap:.45rem;font-weight:600;white-space:nowrap;color:#15803d!important;background:linear-gradient(180deg,#f0fdf4,#dcfce7)!important;border:1px solid #86efac!important}.btn-export-excel:hover:not(:disabled){color:#fff!important;background:linear-gradient(180deg,#22c55e,#16a34a)!important;border-color:#16a34a!important}.btn-export-excel svg{width:1.05rem;height:1.05rem;flex-shrink:0}.btn-export-excel:disabled{opacity:.45;cursor:not-allowed}.historial-socio-report{overflow:hidden;padding:0}.historial-socio-picker{padding:1.15rem 1.5rem .5rem;border-bottom:1px solid #eef1f5;background:#fff}.socio-search-select{position:relative;max-width:36rem}.socio-search-label{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.45rem;font-size:.78rem;font-weight:600;color:#4b5563}.socio-search-count{font-size:.72rem;font-weight:500;color:#94a3b8}.socio-search-input-wrap{position:relative;display:flex;align-items:center}.socio-search-icon{position:absolute;left:.85rem;width:1.1rem;height:1.1rem;color:#94a3b8;pointer-events:none}.socio-search-input{width:100%;padding:.68rem 2.4rem .68rem 2.5rem;font-size:.92rem;border:1px solid #d1d9e2;border-radius:10px;background:#fff;transition:border-color .15s,box-shadow .15s}.socio-search-input:focus{outline:none;border-color:var(--md-primary, #3498db);box-shadow:0 0 0 3px #3498db2e}.socio-search-clear{position:absolute;right:.5rem;border:none;background:#eef2f6;color:#64748b;width:1.65rem;height:1.65rem;border-radius:999px;font-size:1.1rem;line-height:1;cursor:pointer}.socio-search-clear:hover{background:#e2e8f0;color:#334155}.socio-search-results{list-style:none;margin:.45rem 0 0;padding:.35rem;max-height:16rem;overflow-y:auto;border:1px solid #e2e8f0;border-radius:10px;background:#fff;box-shadow:0 10px 28px #2c3e501f}.socio-search-option{display:flex;align-items:center;gap:.65rem;width:100%;padding:.55rem .65rem;border:none;border-radius:8px;background:transparent;text-align:left;cursor:pointer;transition:background .12s}.socio-search-option:hover,.socio-search-option.is-selected{background:#eef6fc}.socio-search-option-code{flex-shrink:0;font-family:ui-monospace,monospace;font-size:.75rem;font-weight:600;color:#3498db;padding:.15rem .45rem;border-radius:6px;background:#e8f4fc}.socio-search-option-name{font-size:.88rem;font-weight:500;color:#1e293b}.socio-search-empty,.socio-search-hint{margin:.45rem 0 0;padding:.55rem .15rem;font-size:.82rem;color:#94a3b8}.socio-search-selected{margin-top:.65rem;padding:.65rem .85rem;border-radius:10px;background:linear-gradient(180deg,#f0f7fc,#e8f4fc);border:1px solid #cfe3f3}.socio-search-selected-label{display:block;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#64748b;margin-bottom:.2rem}.socio-search-selected strong{font-size:.92rem;color:#1e5276}.historial-socio-filtros{display:flex;align-items:flex-end;flex-wrap:wrap;gap:.75rem 1rem;padding:0 1.15rem .75rem;border-bottom:1px solid var(--md-outline-variant)}.historial-filtro-fecha{margin:0;min-width:10rem}.historial-filtro-fecha label{display:block;font-size:.75rem;font-weight:600;margin-bottom:.25rem;color:var(--dash-purple-deep, #4a2c6a)}.historial-filtro-fecha input{width:100%}.historial-socio-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1rem 1.15rem;border-bottom:1px solid var(--md-outline-variant);background:linear-gradient(180deg,#fafbfc,#fff)}.historial-socio-toolbar--export-only{justify-content:flex-end}.historial-socio-resumen{margin:0;font-size:.9rem;font-weight:600;color:var(--dash-purple-deep, #2c3e50)}.historial-socio-export{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}.btn-export-pdf{display:inline-flex;align-items:center;gap:.45rem;font-weight:600;white-space:nowrap;color:#b91c1c!important;background:linear-gradient(180deg,#fef2f2,#fee2e2)!important;border:1px solid #fca5a5!important}.btn-export-pdf:hover:not(:disabled){color:#fff!important;background:linear-gradient(180deg,#ef4444,#dc2626)!important;border-color:#dc2626!important}.btn-export-pdf svg{width:1.05rem;height:1.05rem;flex-shrink:0}.btn-export-pdf:disabled{opacity:.45;cursor:not-allowed}.recaudacion-tarjetas-export{display:flex;align-items:center;gap:.55rem;flex-shrink:0;flex-wrap:wrap}.btn-export-print{display:inline-flex;align-items:center;gap:.45rem;font-weight:600;white-space:nowrap;color:#1d4ed8!important;background:linear-gradient(180deg,#eff6ff,#dbeafe)!important;border:1px solid #93c5fd!important}.btn-export-print:hover:not(:disabled){color:#fff!important;background:linear-gradient(180deg,#3b82f6,#2563eb)!important;border-color:#2563eb!important}.btn-export-print svg{width:1.05rem;height:1.05rem;flex-shrink:0}.btn-export-print:disabled{opacity:.45;cursor:not-allowed}.historial-socio-stats{border-bottom:1px solid #eef0f4}.hs-panel-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;padding:1rem 1.15rem;border-bottom:1px solid var(--md-outline-variant);background:linear-gradient(180deg,#f8fafc,#fff)}.hs-stat-card{display:flex;align-items:flex-start;gap:.85rem;padding:.95rem 1rem;border:1px solid var(--md-outline-variant);border-radius:var(--radius-lg);background:#fff;box-shadow:0 1px 3px #0f172a0f;transition:box-shadow .15s ease,border-color .15s ease}.hs-stat-card:hover{box-shadow:0 4px 12px #0f172a14;border-color:#c5d0dc}.hs-stat-icon{display:flex;align-items:center;justify-content:center;width:2.65rem;height:2.65rem;border-radius:.65rem;flex-shrink:0;border:1px solid transparent}.hs-stat-icon svg{width:1.35rem;height:1.35rem}.hs-stat-flaticon{width:1.75rem;height:1.75rem;object-fit:contain}.hs-stat-body{display:flex;flex-direction:column;gap:.1rem;min-width:0}.hs-stat-label{font-size:.68rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.hs-stat-value{font-size:1.25rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1.15;color:var(--dash-purple-deep, #2c3e50)}.hs-stat-value--sm{font-size:1.05rem}.hs-stat-foot{font-size:.68rem;color:var(--text-secondary);line-height:1.25}.hs-stat-card--aportes .hs-stat-icon{background:var(--md-primary-container);border-color:#3498db33}.hs-stat-card--aportes .hs-stat-value{color:var(--md-primary)}.hs-stat-card--multas .hs-stat-icon{background:var(--warning-muted, #fff8e6);border-color:#f39c1240}.hs-stat-card--multas .hs-stat-value{color:var(--md-warning, #e67e22)}.hs-stat-card--pagado .hs-stat-icon{background:#e8f8ef;border-color:#27ae6040;color:#27ae60}.hs-stat-card--pagado .hs-stat-value{color:#1e8449}.hs-stat-card--pendiente .hs-stat-icon{background:#fdecea;border-color:#e74c3c40;color:#c0392b}.hs-stat-card--pendiente .hs-stat-value{color:#c0392b}.hs-stat-card--al-dia .hs-stat-icon{background:#e8f8ef;border-color:#27ae6040;color:#27ae60}.hs-stat-card--al-dia .hs-stat-value{color:#27ae60}@media(max-width:1100px){.hs-panel-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.hs-panel-stats{grid-template-columns:1fr;padding:.85rem;gap:.65rem}.hs-stat-card{padding:.85rem .9rem}}.historial-socio-report .table-excel th,.historial-socio-report .table-excel td{text-align:center}.historial-socio-report .table-excel .td-num,.historial-socio-report .table-excel .td-total-label{text-align:center;padding-left:.65rem;padding-right:.65rem}.report-section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1rem 1.15rem;border-bottom:1px solid var(--md-outline-variant)}.report-section-sub{margin:.25rem 0 0;font-size:.8125rem}.report-section-kpi{display:flex;flex-direction:column;align-items:flex-end;gap:.15rem;flex-shrink:0}.report-section-kpi strong{font-size:1.1rem;color:var(--md-primary);font-variant-numeric:tabular-nums}.report-socio-select{min-width:min(100%,16rem)}.report-socio-select select{min-width:16rem}.report-row-highlight td{background:var(--md-primary-container)!important;font-weight:500}.table-wrap-excel{border:1px solid #a8b4c0;border-radius:0 0 var(--radius-lg) var(--radius-lg);background:#fff}.table-excel{width:100%;border-collapse:collapse;table-layout:fixed;font-size:.8125rem;background:#fff}.table-excel th,.table-excel td{border:1px solid #c5ced8;padding:.5rem .65rem;vertical-align:middle;line-height:1.35;text-align:left;color:var(--md-on-surface)}.table-excel thead th{position:sticky;top:0;z-index:2;background:#dce3eb;color:#1e293b;font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid #a8b4c0;white-space:nowrap;text-align:center}.table-excel tbody tr:nth-child(2n) td{background:#f4f7fa}.table-excel tbody tr:hover td{background:#e8f0fe}.table-excel tfoot td{background:#e2e8f0;border-top:2px solid #a8b4c0;font-weight:600}.table-excel .col-excel-codigo{width:11%}.table-excel .col-excel-nombre{width:48%}.table-excel .col-excel-tipo{width:14%}.table-excel .col-excel-monto{width:17%}.table-excel .col-excel-nivel{width:8%}.table-excel .col-excel-mov{width:10%}.table-excel .td-center{text-align:center}.table-excel .td-detalle{text-align:left;font-size:.78rem;color:var(--md-on-surface-variant)}.table-excel .cell-cuenta-doble{display:flex;flex-direction:column;gap:.1rem;align-items:flex-start}.table-excel .cell-cuenta-cod{font-family:Roboto Mono,ui-monospace,monospace;font-size:.75rem;font-weight:600;color:#334155}.table-excel .cell-cuenta-nom{font-size:.8rem;color:var(--md-on-surface)}.table-plan-cuentas .col-excel-nombre{width:36%}.table-plan-cuentas .col-excel-acciones{width:14%}.report-filter-row .toolbar-actions{margin-left:auto}.form-group-checkbox{display:flex;align-items:flex-end;padding-bottom:.35rem}.form-group-checkbox .checkbox-label{display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem;cursor:pointer}.form-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem}.table-plan-cuentas .row-cuenta-raiz .td-nombre{font-weight:700}.table-comprobantes col:nth-child(4){width:32%}.table-comprobantes col:nth-child(6){width:14%}.modal-comprobante-detalle{max-width:52rem;width:min(96vw,52rem)}.modal-comprobante-detalle .modal-subtitle{margin:.35rem 0 0;font-size:.875rem;color:var(--md-on-surface-variant)}.modal-comprobante-detalle .modal-glosa{margin:.75rem 0 0;font-size:.9rem}.table-excel .td-codigo{text-align:center;font-family:Roboto Mono,ui-monospace,monospace;font-size:.78rem;font-weight:500;color:#334155;background:#fafbfc}.table-excel .td-nombre{text-align:left;font-weight:500;padding-left:.75rem}.table-excel .td-tipo{text-align:center}.table-excel .th-num,.table-excel .td-num{text-align:right;font-variant-numeric:tabular-nums;font-weight:500;padding-right:.85rem;white-space:nowrap}.table-excel .td-total-label{text-align:right;padding-right:1rem;text-transform:uppercase;font-size:.75rem;letter-spacing:.04em}.recaudacion-report .table-recaudacion th,.recaudacion-report .table-recaudacion td{text-align:center;padding:.32rem .5rem;line-height:1.3;font-size:.8rem}.recaudacion-report .table-recaudacion thead th{padding:.38rem .5rem;font-size:.7rem;line-height:1.2}.recaudacion-report .table-recaudacion .td-num,.recaudacion-report .table-recaudacion .td-total-label,.recaudacion-report .table-recaudacion .td-total-value{text-align:center;padding-left:.5rem;padding-right:.5rem}.recaudacion-report .table-recaudacion tfoot td{padding:.4rem .5rem}.table-excel .td-total-value{font-size:.9rem;color:var(--md-primary)}.table-excel .empty-row{text-align:center;padding:1.5rem;color:var(--md-on-surface-variant);font-style:italic}.table-excel .col-acciones,.table-excel .th-acciones{text-align:center;width:14%}.table-balance .row-tipo-activo .td-nombre{border-left:3px solid var(--md-primary)}.table-balance .row-tipo-pasivo .td-nombre{border-left:3px solid var(--violet)}.table-balance .row-tipo-patrimonio .td-nombre{border-left:3px solid var(--md-tertiary)}.table-balance .row-tipo-ingreso .td-nombre{border-left:3px solid var(--md-success)}.table-balance .row-tipo-egreso .td-nombre{border-left:3px solid var(--md-warning)}.table-plan-cuentas .td-nombre{text-align:left}.table-libro-diario .col-excel-fecha,.table-libro-diario .col-excel-num{width:10%}.table-libro-diario .col-excel-cuenta{width:32%}.table-libro-diario .col-excel-debe,.table-libro-diario .col-excel-haber{width:12%}.table-libro-diario .col-excel-det{width:24%}.table-reporte th,.table-reporte td{text-align:left}.table-reporte .th-num,.table-reporte .td-num,.table-reporte .td-limite{text-align:right}.table-reporte .td-center,.table-reporte .th-acciones{text-align:center}.badge-tipo{text-transform:capitalize;font-size:.65rem}.badge-tipo-activo{background:#1565c01f;color:var(--md-primary)}.badge-tipo-pasivo{background:#5e35b11a;color:var(--violet)}.badge-tipo-patrimonio{background:var(--md-secondary-container);color:var(--md-on-secondary-container)}.badge-tipo-ingreso{background:var(--success-muted);color:var(--md-success)}.badge-tipo-egreso{background:var(--warning-muted);color:var(--md-warning)}.plan-cuentas-seccion-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem 1rem .5rem;border-bottom:1px solid var(--md-outline-variant)}.plan-cuentas-seccion-header .card-title-sm{margin:0;font-size:.95rem;letter-spacing:.04em;text-transform:uppercase}.plan-cuentas-alert{background:var(--warning-muted);border-left:4px solid var(--md-warning)}.plan-cuentas-alert--ok{background:color-mix(in srgb,var(--md-primary) 8%,var(--md-surface));border-left-color:var(--md-primary)}.centro-contable-page{display:flex;flex-direction:column;gap:1.25rem}.centro-contable-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem}.centro-contable-header h1{margin:0;font-size:1.65rem;font-weight:700}.centro-contable-periodo{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.65rem}.centro-contable-periodo .form-group{margin:0}.centro-contable-empresa{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem 1.5rem;border-left:4px solid var(--md-primary)}.centro-contable-empresa-tag{display:block;font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--md-on-surface-variant);margin-bottom:.35rem}.centro-contable-empresa h2{margin:0;font-size:1.25rem;font-weight:700}.centro-contable-empresa-meta{margin:.25rem 0 0;font-size:.88rem;color:var(--md-on-surface-variant)}.centro-contable-empresa-status{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem}.centro-contable-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem}.centro-contable-kpi{background:var(--md-surface-container-low);border:1px solid var(--md-outline-variant);border-radius:var(--radius-md, 10px);padding:.85rem 1rem;display:flex;flex-direction:column;gap:.2rem}.centro-contable-kpi-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--md-on-surface-variant)}.centro-contable-kpi strong{font-size:1.05rem;font-variant-numeric:tabular-nums}.centro-contable-seccion-title{margin:0 0 .75rem;font-size:.95rem;font-weight:700;color:var(--md-on-surface-variant);text-transform:uppercase;letter-spacing:.05em}.centro-contable-modulos{display:grid;grid-template-columns:repeat(auto-fill,minmax(11.5rem,1fr));gap:.75rem}.centro-contable-modulo{display:flex;flex-direction:column;gap:.35rem;padding:1rem;text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .15s,transform .15s;min-height:7rem}.centro-contable-modulo:hover{border-color:var(--md-primary);box-shadow:0 4px 14px #00000014;transform:translateY(-2px)}.centro-contable-modulo-icon{display:flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:8px;background:color-mix(in srgb,var(--md-primary) 12%,transparent);color:var(--md-primary)}.centro-contable-modulo-title{font-weight:700;font-size:.92rem;line-height:1.25}.centro-contable-modulo-desc{font-size:.78rem;color:var(--md-on-surface-variant);line-height:1.35}@media(max-width:900px){.centro-contable-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.centro-contable-kpis{grid-template-columns:1fr}}.table-plan-simplificado .td-codigo{width:8rem;font-variant-numeric:tabular-nums;color:var(--md-on-surface-variant)}.table-plan-cuentas .td-nombre-cuenta{text-align:left}.row-cuenta-raiz td{background:var(--md-surface-container-low);font-weight:500}.report-two-cols{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}@media(max-width:900px){.report-two-cols{grid-template-columns:1fr}}.report-diario-totals{gap:1.5rem;font-size:.85rem;color:var(--md-on-surface-variant)}.report-diario-totals strong{color:var(--md-on-surface);font-variant-numeric:tabular-nums}.table-libro-diario td:nth-child(1),.table-libro-diario td:nth-child(2){white-space:nowrap}.afiliado-foto{width:2.5rem;height:2.5rem;border-radius:8px;object-fit:cover;display:inline-flex;align-items:center;justify-content:center;background:var(--surface-alt, #eef2f7);color:var(--muted);font-weight:700;font-size:.85rem;flex-shrink:0}.afiliado-foto--empty{border:1px dashed var(--border-strong, #c5d0de)}.afiliado-foto--form{width:4rem;height:4rem;margin-bottom:.5rem}.afiliado-foto-upload{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem}.socio-foto-field{display:flex;flex-direction:column;gap:.5rem}.socio-foto-label{display:block;font-size:.8rem;font-weight:600;color:var(--dash-purple-deep, #4a2c6a);margin-bottom:.1rem}.socio-foto-panel{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;width:100%;padding:1rem 1.1rem;border:1px solid #eceef3;border-radius:12px;background:linear-gradient(180deg,#fafbfc,#fff);box-shadow:var(--shadow-card)}.socio-foto-preview{flex-shrink:0;width:5.5rem;height:5.5rem;border-radius:12px;overflow:hidden;background:#eef3f8;border:1px dashed #b8cfe0;display:flex;align-items:center;justify-content:center}.socio-foto-preview-img,.socio-foto-preview-existing{width:100%;height:100%;object-fit:cover;border-radius:12px;margin:0}.socio-foto-preview-placeholder{font-size:1.25rem;font-weight:700;color:#3498db}.socio-foto-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.socio-foto-file-input{position:absolute;width:0;height:0;opacity:0;pointer-events:none}.socio-foto-camera-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;background:#2c3e508c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.socio-foto-camera-modal{width:min(100%,420px);padding:1rem;border-radius:14px;background:#fff;box-shadow:var(--elevation-3)}.socio-foto-camera-title{margin:0 0 .75rem;font-size:1rem;font-weight:700;color:var(--dash-purple-deep, #4a2c6a)}.socio-foto-camera-video{display:block;width:100%;max-height:320px;border-radius:10px;background:#111;object-fit:cover}.socio-foto-camera-actions{display:flex;gap:.5rem;margin-top:.85rem;justify-content:flex-end}.dashboard-home{max-width:1280px}.dashboard-home-header{margin-bottom:1.25rem}.dashboard-home-header h1{font-size:1.55rem;font-weight:700;font-family:var(--font-display);color:#1f2430;letter-spacing:-.02em;margin:0}.dashboard-home-subtitle{margin:.25rem 0 0;font-size:.8125rem;color:#6b7280}.dash-panel-error{margin:0 0 1rem;padding:.75rem 1rem;border-radius:8px;border:1px solid #fecaca;background:#fef2f2;color:#b91c1c;font-size:.875rem;font-weight:600}.dash-panel-error-hint{font-weight:400;color:#991b1b}.dashboard-home-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;margin-bottom:1.15rem}.dash-metric{position:relative;display:flex;align-items:center;gap:.85rem;min-height:5.5rem;padding:1rem 1.1rem;border-radius:12px;color:#fff;overflow:hidden;box-shadow:0 4px 14px #2c3e501f;transition:transform .2s,box-shadow .2s}.dash-metric:hover{transform:translateY(-2px);box-shadow:0 8px 22px #2c3e5029}.dash-metric--pink{background:linear-gradient(180deg,#5dade2,#3498db)}.dash-metric--purple{background:linear-gradient(180deg,#3498db,#2980b9)}.dash-metric--orange{background:linear-gradient(180deg,#5499c7,#2e86c1)}.dash-metric--teal{background:linear-gradient(180deg,#48c9b0,#17a2b8)}.dash-metric-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:2.5rem;height:2.5rem;border-radius:10px;background:#ffffff2e}.dash-metric-icon svg{width:1.25rem;height:1.25rem}.dash-metric-body{display:flex;flex-direction:column;min-width:0;flex:1}.dash-metric-label{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#ffffffe0;line-height:1.2}.dash-metric-value{margin-top:.2rem;font-size:1.15rem;font-weight:700;letter-spacing:-.02em;color:#fff;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-metric-sub{margin-top:.15rem;font-size:.68rem;color:#ffffffbf}.dash-metric-deco{position:absolute;right:-1.25rem;bottom:-1.25rem;width:4.5rem;height:4.5rem;border-radius:50%;background:#ffffff1a;pointer-events:none}.dashboard-home--charts{max-width:1400px}.dashboard-home-header--split{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.dash-link-details{font-size:.8125rem;font-weight:600;color:var(--md-primary, #2196F3);text-decoration:none;padding:.35rem .75rem;border-radius:8px;background:#2196f314;transition:background .2s}.dash-link-details:hover{background:#2196f324}.dash-section-title{margin:0;font-size:.875rem;font-weight:700;color:#374151}.dash-targets-section{margin-bottom:1rem}.dash-targets-head{margin-bottom:.65rem}.dash-targets-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.dash-target{background:#fff;border-radius:10px;padding:.85rem 1rem;border:1px solid #eceef3;box-shadow:0 2px 8px #2c3e500f}.dash-target-head{display:flex;align-items:center;gap:.65rem;margin-bottom:.45rem}.dash-target-pct{font-size:1.35rem;font-weight:800;font-variant-numeric:tabular-nums;line-height:1;min-width:2.75rem}.dash-target--red .dash-target-pct{color:#ef5350}.dash-target--green .dash-target-pct{color:#43a047}.dash-target--yellow .dash-target-pct{color:#f59e0b}.dash-target--blue .dash-target-pct{color:#2196f3}.dash-target-bar{flex:1;height:6px;border-radius:999px;background:#eef1f5;overflow:hidden}.dash-target-bar-fill{height:100%;border-radius:999px;transition:width .6s ease}.dash-target--red .dash-target-bar-fill{background:linear-gradient(90deg,#ef5350,#e57373)}.dash-target--green .dash-target-bar-fill{background:linear-gradient(90deg,#43a047,#66bb6a)}.dash-target--yellow .dash-target-bar-fill{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.dash-target--blue .dash-target-bar-fill{background:linear-gradient(90deg,#2196f3,#64b5f6)}.dash-target-label{font-size:.72rem;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.04em}.dash-metrics-compact{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}.dash-metric-compact{background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid #eceef3;border-radius:10px;padding:.85rem 1rem;box-shadow:0 2px 8px #2c3e500d}.dash-metric-compact-label{display:block;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af}.dash-metric-compact-value{display:block;margin-top:.25rem;font-size:1.05rem;font-weight:700;color:#1f2937;font-variant-numeric:tabular-nums}.dash-metric-compact-sub{display:block;margin-top:.15rem;font-size:.68rem;color:#6b7280}.dash-metric-compact--pink{border-top:3px solid #3498db}.dash-metric-compact--purple{border-top:3px solid #2980b9}.dash-metric-compact--orange{border-top:3px solid #F59E0B}.dash-metric-compact--teal{border-top:3px solid #17a2b8}.dashboard-charts-row{display:grid;gap:.85rem;margin-bottom:.85rem}.dashboard-charts-row--main{grid-template-columns:minmax(0,1.65fr) minmax(260px,1fr)}.dashboard-charts-row--triple{grid-template-columns:repeat(3,minmax(0,1fr))}.dash-chart-card{background:#fff;border-radius:12px;border:1px solid #eceef3;box-shadow:0 4px 14px #2c3e5012;overflow:hidden;min-width:0}.dash-chart-card-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem 1.1rem;border-bottom:1px solid #eef0f4;background:linear-gradient(180deg,#fafbfc,#fff)}.dash-chart-card-header h3{margin:0;font-size:.875rem;font-weight:700;color:#374151}.dash-chart-card-meta{font-size:.72rem;color:#9ca3af}.dash-chart-link{font-size:.72rem;font-weight:600;color:var(--md-primary, #2196F3);text-decoration:none}.dash-chart-link:hover{text-decoration:underline}.dash-chart-body{padding:.75rem .5rem .5rem}.dash-chart-body--saldos{padding:.85rem 1rem 1rem}.dash-chart-loading{padding:2rem 1rem;text-align:center;color:#9ca3af;font-size:.875rem}.dash-chart-tooltip{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:.5rem .75rem;font-size:.75rem;box-shadow:0 4px 12px #0000001a}.dash-gauge-wrap{position:relative;padding-bottom:.75rem}.dash-socios-card{border-top:3px solid #22C55E}.dash-socios-card .dash-chart-card-header{align-items:flex-start}.dash-socios-subtitle{margin:.2rem 0 0;font-size:.72rem;font-weight:500;color:#9ca3af}.dash-socios-body{padding:.85rem 1rem 1rem;display:flex;flex-direction:column;gap:.85rem}.dash-socios-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.dash-socios-stat{text-align:center;padding:.55rem .35rem;border-radius:10px;background:#f8fafc;border:1px solid #eef1f5}.dash-socios-stat--ok{background:linear-gradient(180deg,#f0fdf4,#ecfdf5);border-color:#bbf7d0}.dash-socios-stat--warn{background:linear-gradient(180deg,#fff7ed,#ffedd5);border-color:#fed7aa}.dash-socios-stat-value{display:block;font-size:1.25rem;font-weight:800;color:#1f2937;line-height:1.1}.dash-socios-stat--ok .dash-socios-stat-value{color:#15803d}.dash-socios-stat--warn .dash-socios-stat-value{color:#c2410c}.dash-socios-stat-label{display:block;margin-top:.15rem;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#6b7280}.dash-socios-chart{position:relative;max-width:200px;margin:0 auto;width:100%}.dash-gauge-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-52%);text-align:center;pointer-events:none;z-index:1}.dash-gauge-label{display:block;font-size:.7rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.06em}.dash-gauge-value{display:block;font-size:2.1rem;font-weight:800;color:#1f2937;line-height:1.05;margin-top:.1rem}.dash-gauge-value--high{color:#15803d}.dash-gauge-value--mid{color:#b45309}.dash-gauge-value--low{color:#dc2626}.dash-gauge-value:after{content:"%";font-size:1rem;font-weight:700;color:inherit;opacity:.75;margin-left:.05rem}.dash-socios-legend{display:flex;justify-content:center;gap:1.25rem;list-style:none;margin:0;padding:0;font-size:.72rem;font-weight:600;color:#6b7280}.dash-socios-legend li{display:inline-flex;align-items:center;gap:.35rem}.dash-socios-legend-dot{width:.55rem;height:.55rem;border-radius:50%;flex-shrink:0}.dash-socios-legend-dot--ok{background:#22c55e}.dash-socios-legend-dot--pending{background:#e5e7eb;border:1px solid #d1d5db}.dash-socios-ratio{padding-top:.65rem;border-top:1px solid #eef0f4}.dash-socios-ratio-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.45rem}.dash-socios-ratio-title{font-size:.75rem;font-weight:600;color:#4b5563}.dash-socios-ratio-pct{font-size:.85rem;font-weight:800;color:#d97706}.dash-socios-ratio-detail{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.35rem;margin:.45rem 0 0;font-size:.68rem;color:#9ca3af}.dash-socios-ratio-sep{color:#d1d5db}.dash-gauge-footer{padding:0 1rem}.dash-gauge-progress-label{font-size:.75rem;color:#6b7280;margin-bottom:.35rem}.dash-gauge-progress-track{height:7px;border-radius:999px;background:#eef1f5;overflow:hidden}.dash-gauge-progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#fbbf24,#f59e0b);transition:width .6s ease}.dash-panel-header--split{display:flex;align-items:center;justify-content:space-between}.dash-quick-stats{display:flex;flex-direction:column;gap:.75rem}.dash-quick-stat{display:flex;align-items:center;justify-content:space-between;padding:.55rem 0;border-bottom:1px solid #f0f2f5}.dash-quick-stat:last-of-type{border-bottom:none}.dash-quick-stat-label{font-size:.8125rem;color:#6b7280}.dash-quick-stat strong{font-size:.9375rem;color:#1f2937;font-variant-numeric:tabular-nums}.dash-quick-stat-warn{color:#ef5350!important}.dash-quick-action{margin-top:.35rem;width:100%;justify-content:center}.dashboard-home-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,1fr);gap:.85rem;align-items:stretch}.dash-panel{background:var(--md-surface-container);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow:hidden;min-width:0;border:1px solid #eceef3}.dash-panel-header{padding:.85rem 1.15rem;border-bottom:1px solid #eef0f4;background:linear-gradient(180deg,#fafbfc,#fff)}.dash-panel-header h2{margin:0;font-size:.875rem;font-weight:700;color:var(--dash-purple-deep);letter-spacing:-.01em}.dash-panel-body{padding:1rem 1.15rem 1.15rem}.dashboard-deuda-panel--home,.dashboard-deuda-kpis--home{margin-bottom:0}.dash-kpi-tile{display:flex;flex-direction:column;padding:.95rem 1rem;border-radius:10px;background:#f7f8fb;border:1px solid #eceef3;transition:box-shadow .2s,transform .2s}.dash-kpi-tile:hover{box-shadow:0 4px 12px #2c3e5014;transform:translateY(-1px)}.dash-kpi-tile--success{background:linear-gradient(135deg,#43a0471a,#81c78414);border-color:#43a04733}.dash-kpi-tile--warning{background:linear-gradient(135deg,#ff98001f,#ffb74d14);border-color:#ff980038}.dash-kpi-tile--indigo{background:linear-gradient(135deg,#3498db1a,#2980b90f);border-color:#3498db33}.dash-kpi-tile--violet{background:linear-gradient(135deg,#2980b91f,#17a2b814);border-color:#2980b933}.dash-kpi-tile-top h3{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;margin:0}.dash-kpi-tile .value{margin-top:.35rem;font-size:1.35rem;font-weight:700;color:var(--dash-purple-deep);letter-spacing:-.02em}.dash-kpi-tile--success .value{color:#2e7d32}.dash-kpi-tile--warning .value{color:#e65100}.dash-kpi-tile--indigo .value{color:#2980b9}.dash-kpi-tile--violet .value{color:#3498db}.dash-kpi-tile-hint{margin:.3rem 0 0;font-size:.68rem;color:#9ca3af}.saldos-dashboard,.saldos-bar-chart{display:flex;flex-direction:column;gap:1rem}.saldos-bar-row{display:flex;flex-direction:column;gap:.4rem}.saldos-bar-meta{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.saldos-bar-label{font-size:.8125rem;font-weight:600;color:#374151}.saldos-bar-value{font-size:.8125rem;font-weight:700;color:var(--dash-purple-deep);font-variant-numeric:tabular-nums}.saldos-bar-track{height:.55rem;border-radius:999px;background:#eceef3;overflow:hidden}.saldos-bar-fill{height:100%;border-radius:999px;transition:width .4s ease}.saldos-bar-fill--purple{background:linear-gradient(90deg,#3498db,#5dade2)}.saldos-bar-fill--violet{background:linear-gradient(90deg,#2980b9,#5499c7)}.saldos-total-card{display:flex;flex-direction:column;gap:.25rem;padding:1rem 1.1rem;border-radius:10px;background:linear-gradient(180deg,#48c9b0,#17a2b8);color:#fff;box-shadow:0 4px 14px #17a2b840}.saldos-total-label{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#ffffffd9}.saldos-total-value{font-size:1.35rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.02em}@media(max-width:1100px){.dashboard-home-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-charts-row--main,.dashboard-charts-row--triple{grid-template-columns:1fr}.dash-targets-grid,.dash-metrics-compact{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:960px){.dashboard-home-grid{grid-template-columns:1fr}.dashboard-deuda-kpis--home{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.main{padding:1rem}.dashboard-home-metrics,.dash-targets-grid,.dash-metrics-compact,.dashboard-deuda-kpis--home{grid-template-columns:1fr}.dash-metric-value{font-size:1.05rem}}.activos-toolbar{flex-wrap:wrap;gap:.75rem 1rem}.activos-stats-bar{margin-bottom:1rem;border-radius:10px;overflow:hidden;border:1px solid #eceef3}.activos-resumen-card{margin-bottom:1rem;padding:0;overflow:hidden;border:1px solid #cbd5e1;box-shadow:0 1px 3px #0f172a0f}.activos-resumen-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:#fff}.activos-resumen-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;padding:1rem .75rem;text-align:center;border-right:1px solid #e2e8f0}.activos-resumen-item:last-child{border-right:none}.activos-resumen-label{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#64748b;line-height:1.2}.activos-resumen-value{font-size:1.2rem;font-weight:700;color:#1e293b;font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1.2}.activos-resumen-item--primary .activos-resumen-value{color:#1565c0}@media(max-width:900px){.activos-resumen-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.activos-resumen-item:nth-child(2){border-right:none}.activos-resumen-item:nth-child(1),.activos-resumen-item:nth-child(2){border-bottom:1px solid #e2e8f0}}@media(max-width:480px){.activos-resumen-grid{grid-template-columns:1fr}.activos-resumen-item{border-right:none;border-bottom:1px solid #e2e8f0;flex-direction:row;justify-content:space-between;align-items:center;padding:.85rem 1rem}.activos-resumen-item:last-child{border-bottom:none}}.activos-detalle-grid{display:grid;grid-template-columns:1fr minmax(220px,280px);gap:1rem;margin-bottom:1rem}.activos-ficha-title{margin:0 0 .85rem;font-size:.95rem;font-weight:700;color:var(--dash-purple-deep, #4a2c6a)}.activos-ficha-dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem 1.25rem;margin:0}.activos-ficha-dl div{display:flex;flex-direction:column;gap:.15rem}.activos-ficha-dl dt{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#8b90a0}.activos-ficha-dl dd{margin:0;font-size:.9rem;color:#1e293b}.activos-ficha-full{grid-column:1 / -1}.activos-acciones-btns{display:flex;flex-direction:column;gap:.45rem}.activos-acciones-btns .btn{width:100%;justify-content:center}.activos-historial{margin-top:0}.activos-modal{max-width:480px;width:100%}.activos-report-tabs{margin-bottom:1rem;flex-wrap:wrap}.activos-report-filters{margin-bottom:1rem}.badge-estado-fisico--bueno{background:#2e7d321f;color:#2e7d32}.badge-estado-fisico--regular{background:#ef6c001f;color:#e65100}.badge-estado-fisico--malo{background:#c628281f;color:#c62828}.cell-sub{font-size:.75rem;color:#8b90a0;margin-top:.15rem}.card-activos-lista{padding:.85rem .75rem 1rem;overflow:hidden}.card-activos-lista .table-wrap,.table-wrap-activos{overflow-x:hidden;border:1px solid #94a3b8;border-radius:var(--radius-md, 10px);background:var(--surface, #fff)}.table-activos-fijos{width:100%;max-width:100%;border-collapse:collapse;table-layout:fixed;font-size:.8125rem;background:var(--surface, #fff)}.table-activos-fijos col.col-af-w-codigo{width:7%}.table-activos-fijos col.col-af-w-activo{width:23%}.table-activos-fijos col.col-af-w-asignacion{width:12%}.table-activos-fijos col.col-af-w-monto{width:9%}.table-activos-fijos col.col-af-w-estado{width:8%}.table-activos-fijos col.col-af-w-acc{width:10%}.table-wrap-activos .table-activos-fijos th,.table-wrap-activos .table-activos-fijos td{max-width:none!important;overflow:hidden!important;text-overflow:ellipsis;border:1px solid #c5ced8;padding:.5rem .35rem;vertical-align:middle;line-height:1.35;text-align:left;color:var(--text, #1e293b);word-wrap:break-word;overflow-wrap:break-word}.table-wrap-activos .table-activos-fijos tbody td{border-color:#dce3eb}.table-wrap-activos .table-activos-fijos thead th,.table-wrap-activos .table-activos-fijos thead th.af-th{background:#b8c5d4!important;color:#0f172a;font-weight:800;font-size:.68rem;text-transform:uppercase;letter-spacing:.02em;border:1px solid #94a3b8;border-bottom:2px solid #64748b;text-align:center!important;vertical-align:middle;padding:.5rem .3rem;line-height:1.15;white-space:normal;overflow:hidden!important}.table-wrap-activos .table-activos-fijos thead th.af-th-asignacion{padding:.45rem .25rem}.table-wrap-activos .table-activos-fijos .af-th-doble{display:inline-block;line-height:1.2;font-size:.65rem;letter-spacing:.01em}.table-wrap-activos .table-activos-fijos thead th.td-num,.table-wrap-activos .table-activos-fijos thead th.col-acciones{text-align:center!important}.table-activos-fijos tbody tr:nth-child(2n) td{background:#f4f7fa}.table-activos-fijos tbody tr:hover td{background:#e8f0fe}.table-activos-fijos .td-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.75rem;padding-left:.2rem!important;padding-right:.35rem!important}.table-activos-fijos .td-center{text-align:center}.table-activos-fijos .af-td-codigo{font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap;text-align:center;font-size:.75rem}.table-activos-fijos .af-td-activo{line-height:1.35;overflow:visible!important}.table-activos-fijos .af-meta-line{display:flex;flex-wrap:wrap;align-items:center;gap:.2rem .35rem;margin-top:.2rem}.table-activos-fijos .af-categoria-tag{display:inline-block;padding:.08rem .35rem;border-radius:999px;font-size:.65rem;font-weight:600;color:#0f766e;background:#ecfdf5}.table-activos-fijos .af-nombre{display:block;font-weight:600;font-size:.84rem;color:#0f766e;line-height:1.25}.table-activos-fijos .af-detalle{display:inline;font-size:.72rem;color:#64748b;line-height:1.25}.table-activos-fijos .af-td-asignacion{line-height:1.3;font-size:.78rem}.table-activos-fijos .af-responsable{display:block;font-weight:500}.table-activos-fijos .af-ubicacion{display:block;margin-top:.1rem;font-size:.72rem;color:#64748b}.table-activos-fijos .af-td-neto{font-weight:700;font-size:.78rem}.table-activos-fijos .af-estado{display:inline-block;padding:.18rem .4rem;border-radius:999px;font-size:.68rem;font-weight:600;line-height:1.15;white-space:nowrap}.table-activos-fijos .af-estado--bueno{background:#dcfce7;color:#166534}.table-activos-fijos .af-estado--regular{background:#ffedd5;color:#c2410c}.table-activos-fijos .af-estado--malo{background:#fee2e2;color:#b91c1c}.table-activos-fijos .af-estado--baja{display:block;margin-top:.2rem;background:#f1f5f9;color:#64748b}.table-activos-fijos .af-row-baja td{opacity:.85}.table-activos-fijos .col-acciones{white-space:nowrap;overflow:visible!important;padding:.4rem .2rem!important}.table-activos-fijos .af-acciones-iconos{display:inline-flex;align-items:center;justify-content:center;gap:.2rem;flex-wrap:nowrap;border:none;background:transparent}.table-activos-fijos .af-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:1.65rem;height:1.65rem;padding:0;border:1px solid #e2e8f0;border-radius:6px;background:#fff;cursor:pointer;text-decoration:none;transition:background .15s,border-color .15s,color .15s}.table-activos-fijos .af-icon-btn svg{width:.82rem;height:.82rem;flex-shrink:0}.table-activos-fijos .af-icon-btn span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.table-activos-fijos .af-icon-btn--ver{color:#0f766e;background:#f0fdfa}.table-activos-fijos .af-icon-btn--ver:hover{color:#115e59;background:#ccfbf1}.table-activos-fijos .af-icon-btn--edit{color:#3730a3;background:#eef2ff}.table-activos-fijos .af-icon-btn--edit:hover{color:#312e81;background:#e0e7ff}.table-activos-fijos .af-icon-btn--delete{color:#b91c1c;background:#fef2f2}.table-activos-fijos .af-icon-btn--delete:hover:not(:disabled){color:#991b1b;background:#fee2e2}.table-activos-fijos .af-icon-btn--delete:disabled{opacity:.55;cursor:not-allowed}.table-activos-fijos .empty-row{text-align:center;padding:1.5rem;color:#64748b;font-style:italic}.header-actions{display:flex;gap:.5rem;flex-wrap:wrap}@media(max-width:768px){.activos-detalle-grid,.activos-ficha-dl{grid-template-columns:1fr}}.cajachica-page{max-width:100%;min-width:0}.cajachica-header{flex-wrap:wrap;gap:1rem}.cajachica-header-actions{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.65rem}.cajachica-mes-label{display:flex;flex-direction:column;gap:.25rem;font-size:.8125rem;font-weight:600;color:var(--text-muted, #64748b)}.cajachica-mes-input{min-width:11rem;padding:.5rem .7rem;border:1px solid var(--md-outline-variant, #e2e8f0);border-radius:8px;font:inherit;background:#fff}.cajachica-stats-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;margin-bottom:1.25rem}.cc-stat{display:flex;flex-direction:column;gap:.35rem;padding:.95rem 1rem;border-radius:12px;border:1px solid var(--md-outline-variant, #e2e8f0);background:#fff;box-shadow:0 1px 3px #0f172a0f;min-width:0;border-top-width:3px}.cc-stat-label{font-size:.68rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted, #64748b);line-height:1.2}.cc-stat-value{font-size:clamp(.95rem,1.6vw,1.2rem);font-weight:700;font-variant-numeric:tabular-nums;line-height:1.2;color:var(--dash-purple-deep, #2c3e50);word-break:break-word}.cc-stat--anterior{border-top-color:#64748b}.cc-stat--desembolso{border-top-color:#3b82f6}.cc-stat--desembolso .cc-stat-value{color:#1d4ed8}.cc-stat--ingreso{border-top-color:#22c55e}.cc-stat--ingreso .cc-stat-value{color:#15803d}.cc-stat--egreso{border-top-color:#f59e0b}.cc-stat--egreso .cc-stat-value{color:#b45309}.cc-stat--actual{border-top-color:#8b5cf6;background:linear-gradient(180deg,#faf5ff,#fff)}.cc-stat--actual .cc-stat-value{color:#6d28d9;font-size:clamp(1rem,1.8vw,1.35rem)}.cajachica-card{overflow:visible}.cajachica-card-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem 1.15rem;border-bottom:1px solid var(--md-outline-variant, #e2e8f0);background:linear-gradient(180deg,#f8fafc,#fff)}.cajachica-card-title{margin:0;font-size:1.05rem;font-weight:700;color:var(--dash-purple-deep, #2c3e50)}.cajachica-card-subtitle{margin:.2rem 0 0;font-size:.875rem;color:var(--muted, #64748b)}.cajachica-cierre-pill{display:flex;flex-direction:column;align-items:flex-end;gap:.15rem;padding:.55rem .85rem;border-radius:10px;background:#ede9fe;border:1px solid #ddd6fe}.cajachica-cierre-label{font-size:.68rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#6d28d9}.cajachica-cierre-value{font-size:1.1rem;font-weight:700;font-variant-numeric:tabular-nums;color:#5b21b6;white-space:nowrap}.cajachica-table-wrap{overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;padding:0}.cajachica-table{table-layout:fixed;width:100%;min-width:640px}.cajachica-table .col-cc-fecha{width:9%}.cajachica-table .col-cc-detalle{width:46%}.cajachica-table .col-cc-monto,.cajachica-table .col-cc-saldo{width:15%}.cajachica-table th,.cajachica-table td{max-width:none!important;overflow:visible;vertical-align:middle}.cajachica-table .th-num,.cajachica-table .td-num{text-align:right}.cajachica-table thead th{position:sticky;top:0;z-index:1;background:linear-gradient(180deg,#f8fafc,#eef3f8)}.cajachica-cell-fecha{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.8125rem}.cajachica-cell-detalle{min-width:10rem}.cajachica-detalle-inner{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;line-height:1.35}.cajachica-detalle-text{font-size:.8125rem;color:var(--text, #334155);word-break:break-word}.cajachica-cell-monto,.cajachica-cell-saldo{white-space:nowrap;padding-left:.35rem!important;padding-right:.75rem!important}.cajachica-cell-saldo .cell-num{font-weight:700;color:var(--dash-purple-deep, #2c3e50)}.cajachica-dash{color:var(--muted, #94a3b8)}.cajachica-row-saldo-anterior{background:#f1f5f9;font-weight:600}.cajachica-row-saldo-anterior .cajachica-detalle-text{font-weight:600}.cajachica-badge{font-size:.625rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;flex-shrink:0;white-space:nowrap}.badge-info{background:#dbeafe;color:#1d4ed8}.cajachica-footnote{margin:0;padding:.85rem 1.15rem 1rem;font-size:.8125rem;color:var(--text-muted, #64748b);border-top:1px solid var(--border, #e2e8f0);line-height:1.5}.cajachica-footnote a{color:var(--primary, #2563eb);font-weight:600}.table-plan-cuentas .col-plan-codigo{width:14%;white-space:nowrap}.table-plan-cuentas .col-plan-nivel{width:6%;text-align:center}.table-plan-cuentas .td-nivel{text-align:center;color:var(--muted);font-size:.8125rem}.plan-cuenta-grupo{background:#f8fafc;font-weight:600}.plan-cuenta-grupo .td-codigo{font-weight:700;color:var(--dash-purple-deep, #2c3e50)}.plan-cuenta-detalle .plan-cuenta-nombre{font-weight:500}.plan-cuenta-grupo-tag{font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.plan-cuentas-seccion .table-wrap{overflow-x:auto}.plan-cuentas-seccion .table-plan-cuentas{min-width:520px}@media(max-width:1200px){.cajachica-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cc-stat--actual{grid-column:span 1}}@media(max-width:768px){.cajachica-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cc-stat--actual{grid-column:1 / -1}.cajachica-cierre-pill{width:100%;align-items:flex-start}}@media(max-width:480px){.cajachica-stats-grid{grid-template-columns:1fr}.cajachica-header-actions,.cajachica-mes-input{width:100%}}.cajachica-stats-grid--compact{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr))}.caja-form-card{padding:1.25rem 1.5rem;margin-bottom:1rem}.caja-form .form-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end;margin-top:1rem}.caja-sesion-card{padding:1.25rem 1.5rem;margin-bottom:1rem}.caja-sesion-card--abierta{border-left:4px solid var(--md-success)}.caja-sesion-dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.75rem 1.25rem;margin:.75rem 0 0}.caja-sesion-dl dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--md-on-surface-variant)}.caja-sesion-dl dd{margin:.15rem 0 0;font-weight:600}.caja-sesion-hint,.caja-sesion-meta{margin:.75rem 0 0;font-size:.875rem;color:var(--md-on-surface-variant)}.caja-arqueo-diff{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-radius:var(--radius-md);margin-top:.75rem;font-size:.9rem}.caja-arqueo-diff--ok{background:var(--success-muted);color:var(--md-success)}.caja-arqueo-diff--warn{background:var(--warning-muted);color:var(--md-warning)}.caja-report-link{margin:1rem 0 0;font-size:.875rem}.gastos-caja-card{margin-bottom:1rem;padding:1rem 1.15rem}.gastos-caja-grid{display:flex;flex-wrap:wrap;align-items:flex-end;gap:1rem 1.5rem}.gastos-caja-saldo{min-width:10rem;padding:.65rem 1rem;border-radius:10px;background:#ecfdf5;border:1px solid #bbf7d0}.gastos-caja-saldo--neg{background:#fef2f2;border-color:#fecaca}.gastos-caja-saldo--neg strong{color:#b91c1c}.gastos-caja-saldo-label{display:block;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#6b7280;margin-bottom:.2rem}.gastos-caja-saldo strong{font-size:1.35rem;color:#15803d}.gastos-reposicion-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.65rem 1rem;flex:1;min-width:240px}.descanso-form-page{max-width:1100px}.descanso-form{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000000f;overflow:hidden}.descanso-form-layout{display:grid;grid-template-columns:1fr}@media(min-width:860px){.descanso-form-layout{grid-template-columns:280px 1fr;min-height:520px}}.descanso-form-panel{padding:1.25rem 1.35rem}.descanso-form-panel--info{background:#f8fafc;border-bottom:1px solid #e5e7eb}@media(min-width:860px){.descanso-form-panel--info{border-bottom:none;border-right:1px solid #e5e7eb;display:flex;flex-direction:column}.descanso-form-panel-actions{margin-top:auto;padding-top:1rem}}.descanso-form-panel--lista{display:flex;flex-direction:column;min-width:0}.descanso-form-block{margin-bottom:1.25rem}.descanso-form-block--grow{flex:1;display:flex;flex-direction:column;margin-bottom:0;min-height:0}.descanso-form-lista-head{margin-bottom:.25rem}.descanso-form-block-title{display:flex;align-items:center;gap:.5rem;margin:0 0 .65rem;font-size:.95rem;font-weight:700;color:#111827}.descanso-form-step{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border-radius:50%;background:#059669;color:#fff;font-size:.75rem;font-weight:800}.descanso-form-block-desc{margin:-.35rem 0 .85rem;font-size:.85rem;color:#6b7280;line-height:1.45}.descanso-form-fecha-card{text-align:center;padding:.85rem;background:#fff;border:1px solid #e2e8f0;border-radius:10px}.descanso-form-fecha-nav{display:flex;justify-content:center;gap:.35rem;margin-bottom:.5rem}.descanso-form-nav-btn{min-width:2.25rem;height:2rem;padding:0 .5rem;border:1px solid #d1d5db;border-radius:6px;background:#fff;font-size:1rem;color:#374151;cursor:pointer}.descanso-form-nav-btn--text{font-size:.8rem;font-weight:600;padding:0 .65rem}.descanso-form-nav-btn:hover{background:#f3f4f6}.descanso-form-fecha-dia{margin:0 0 .35rem;font-size:1.05rem;font-weight:700;color:#059669;text-transform:capitalize}.descanso-form-fecha-input{width:100%;max-width:11rem;margin:0 auto;text-align:center;font-weight:600}.descanso-form-resumen{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;margin:0}.descanso-form-resumen>div{padding:.65rem .75rem;background:#fff;border:1px solid #e2e8f0;border-radius:8px;text-align:center}.descanso-form-resumen dt{margin:0;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#6b7280}.descanso-form-resumen dd{margin:.2rem 0 0;font-size:1.5rem;font-weight:800;color:#111827;line-height:1.1}.descanso-form-resumen--ok{color:#059669!important}.descanso-form-block--rol{padding:.75rem;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px}.descanso-form-rol-aviso{margin:0 0 .5rem;font-size:.85rem;color:#1e40af}.btn-block{display:block;width:100%}.descanso-form-guardar-hint{margin:.5rem 0 0;font-size:.75rem;color:#6b7280;text-align:center;line-height:1.35}.descanso-form-toolbar{display:flex;flex-wrap:wrap;gap:.65rem 1rem;align-items:flex-end;margin-bottom:.75rem}.descanso-form-toolbar-search{flex:1;min-width:160px;margin:0}.descanso-form-toolbar .form-group{margin:0;min-width:120px}.descanso-form-toolbar .form-group label{font-size:.75rem;font-weight:600;color:#6b7280;margin-bottom:.2rem}.descanso-form-aviso{margin:0 0 .75rem;padding:.5rem .75rem;font-size:.82rem;background:#fffbeb;border:1px solid #fcd34d;border-radius:6px;color:#92400e}.descanso-form-tabla-wrap{flex:1;min-height:200px;max-height:min(52vh,480px);overflow:auto;border:1px solid #e5e7eb;border-radius:8px}.descanso-form-tabla{width:100%;border-collapse:collapse;font-size:.9rem}.descanso-form-tabla thead{position:sticky;top:0;z-index:1;background:#f1f5f9}.descanso-form-tabla th{padding:.55rem .75rem;text-align:left;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#64748b;border-bottom:1px solid #e2e8f0}.descanso-form-tabla td{padding:.55rem .75rem;border-bottom:1px solid #f1f5f9;vertical-align:middle}.descanso-form-tabla tbody tr{cursor:pointer;transition:background .1s}.descanso-form-tabla tbody tr:hover{background:#f8fafc}.descanso-form-tabla tbody tr.is-descanso{background:#ecfdf5}.descanso-form-tabla tbody tr.is-descanso:hover{background:#d1fae5}.descanso-form-tabla .col-check{width:2.5rem;text-align:center}.descanso-form-tabla .col-check input{width:1.1rem;height:1.1rem;accent-color:#059669;cursor:pointer}.descanso-form-tabla .col-grupo{width:3rem;text-align:center}.descanso-form-tabla .col-codigo{width:6.5rem;font-family:ui-monospace,monospace;font-size:.8rem;color:#6b7280;white-space:nowrap}.descanso-form-tabla .col-nombre{font-weight:500;color:#111827}.descanso-form-tabla-vacio{text-align:center;padding:2rem!important;color:#9ca3af}.descanso-form-leyenda{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid #f1f5f9;font-size:.75rem}.descanso-form-leyenda-title{font-weight:700;color:#6b7280;margin-right:.25rem}.descanso-form-leyenda-hint{color:#9ca3af}.descanso-registro-card{max-width:520px;margin:0 auto}.descanso-registro-fecha{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.descanso-registro-flecha{flex-shrink:0;width:2.5rem;height:2.5rem;border:1px solid #d1d5db;border-radius:8px;background:#fff;font-size:1.35rem;line-height:1;color:#374151;cursor:pointer}.descanso-registro-flecha:hover{background:#f3f4f6}.descanso-registro-fecha-centro{flex:1;text-align:center}.descanso-registro-fecha-label{display:block;font-size:.8rem;font-weight:600;color:#6b7280;margin-bottom:.25rem}.descanso-registro-fecha-input{width:100%;max-width:11rem;margin:0 auto;text-align:center;font-size:1.05rem;font-weight:600}.descanso-registro-fecha-dia{margin:.35rem 0 0;font-size:.9rem;color:#374151}.descanso-registro-buscar{margin-bottom:.75rem}.descanso-registro-buscar input{width:100%}.descanso-registro-contador{margin:0 0 .75rem;font-size:.95rem;color:#374151}.descanso-registro-contador strong{color:#059669;font-size:1.15rem}.descanso-registro-lista{list-style:none;margin:0;padding:0;max-height:min(55vh,480px);overflow-y:auto;border:1px solid #e5e7eb;border-radius:10px;background:#fafafa}.descanso-registro-fila{display:flex;align-items:center;gap:.65rem;padding:.7rem 1rem;cursor:pointer;border-bottom:1px solid #eee;transition:background .1s}.descanso-registro-fila:last-child{border-bottom:none}.descanso-registro-fila:hover{background:#f3f4f6}.descanso-registro-fila.is-checked{background:#ecfdf5}.descanso-registro-fila input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}.descanso-registro-check{flex-shrink:0;width:1.35rem;height:1.35rem;border:2px solid #9ca3af;border-radius:4px;background:#fff;display:flex;align-items:center;justify-content:center}.descanso-registro-fila.is-checked .descanso-registro-check{border-color:#059669;background:#059669}.descanso-registro-fila.is-checked .descanso-registro-check:after{content:"✓";color:#fff;font-size:.85rem;font-weight:700;line-height:1}.descanso-registro-nombre{flex:1;font-weight:500;color:#111827;min-width:0}.descanso-registro-codigo{font-size:.78rem;color:#9ca3af;font-family:ui-monospace,monospace}.descanso-registro-vacio{padding:1.5rem;text-align:center;color:#6b7280}.descanso-registro-pie{margin-top:1.25rem;text-align:center}.descanso-registro-pie .btn-lg{min-width:14rem;padding:.65rem 1.5rem;font-size:1rem}.descanso-registro-filtros{display:grid;gap:.5rem;margin-bottom:.75rem}.descanso-registro-solo-marcados{display:flex;align-items:center;gap:.4rem;font-size:.88rem;color:#4b5563;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none}.descanso-registro-solo-marcados input{width:1rem;height:1rem;accent-color:#059669}@media(min-width:480px){.descanso-registro-filtros{grid-template-columns:1fr auto}}.descanso-registro-aviso-grupo{font-size:.85rem;color:#b45309;font-weight:400}.descanso-grupo-hoy{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem .85rem;padding:.85rem 1rem;margin-bottom:1rem;background:#eff6ff;border:1px solid #93c5fd;border-radius:10px;font-size:.9rem;line-height:1.4}.descanso-grupo-hoy .btn{margin-left:auto}.descanso-grupo-hoy-badge{display:inline-flex;align-items:center;justify-content:center;min-width:3.5rem;padding:.35rem .6rem;font-size:.85rem;font-weight:800;color:#1e40af;background:#fff;border:2px solid #3b82f6;border-radius:8px}.descanso-ver-grupos-btn{display:block;width:100%;margin-bottom:.75rem;padding:.5rem;border:1px dashed #9ca3af;border-radius:8px;background:#f9fafb;color:#374151;font-size:.88rem;font-weight:600;cursor:pointer}.descanso-ver-grupos-btn:hover{background:#f3f4f6}.descanso-grupos-referencia{display:grid;grid-template-columns:repeat(auto-fit,minmax(88px,1fr));gap:.5rem;margin-bottom:1rem;padding:.65rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.descanso-grupo-ref-col{text-align:center;padding:.4rem .25rem}.descanso-grupo-ref-col h4{margin:0;font-size:.75rem;font-weight:800;color:#1f2937}.descanso-grupo-ref-count{margin:.15rem 0;font-size:.65rem;color:#6b7280}.descanso-grupo-ref-nums{margin:0 0 .35rem;font-size:.6rem;line-height:1.3;color:#374151;font-family:ui-monospace,monospace;min-height:2.4em}.descanso-grupo-badge{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:1.75rem;padding:.1rem .35rem;font-size:.68rem;font-weight:800;border-radius:4px;letter-spacing:.02em}.descanso-grupo-badge--sin{color:#9ca3af;background:#f3f4f6}.descanso-grupo-badge--g1{color:#1e3a8a;background:#dbeafe}.descanso-grupo-badge--g2{color:#14532d;background:#dcfce7}.descanso-grupo-badge--g3{color:#7c2d12;background:#ffedd5}.descanso-grupo-badge--g4{color:#581c87;background:#f3e8ff}.descanso-grupo-badge--g5{color:#831843;background:#fce7f3}.th-afiliado-grupo,.td-afiliado-grupo{width:4.5rem;text-align:center}.descanso-dia-card{max-width:720px}.descanso-dia-toolbar{display:grid;gap:1rem 1.25rem;grid-template-columns:1fr;margin-bottom:1rem}@media(min-width:640px){.descanso-dia-toolbar{grid-template-columns:1fr 1fr auto;align-items:end}}.descanso-dia-fecha-row{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.descanso-dia-fecha-row input[type=date]{flex:1;min-width:10rem}.descanso-dia-stats{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;padding:.5rem .75rem;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px}.descanso-dia-stats strong{font-size:1.5rem;line-height:1.1;color:#15803d}.descanso-dia-acciones{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.descanso-dia-lista{list-style:none;margin:0;padding:0;max-height:min(60vh,520px);overflow-y:auto;border:1px solid #e5e7eb;border-radius:10px;background:#fafafa}.descanso-dia-item{display:flex;align-items:center;gap:.75rem;padding:.65rem 1rem;cursor:pointer;border-bottom:1px solid #eee;transition:background .12s}.descanso-dia-item:last-child{border-bottom:none}.descanso-dia-item:hover{background:#f3f4f6}.descanso-dia-item--activo{background:#ecfdf5}.descanso-dia-item--activo:hover{background:#d1fae5}.descanso-dia-item input[type=checkbox]{width:1.15rem;height:1.15rem;flex-shrink:0;accent-color:#059669}.descanso-dia-item-text{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .65rem;min-width:0}.descanso-dia-nombre{font-weight:500;color:#111827}.descanso-dia-codigo{font-size:.8rem;color:#6b7280;font-family:ui-monospace,monospace}.descanso-dia-grupo{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#047857;background:#d1fae5;padding:.1rem .35rem;border-radius:4px}.descanso-dia-vacio{padding:1.5rem;text-align:center;color:#6b7280}.descanso-dia-guardar{margin-top:1.25rem;padding-top:1rem;border-top:1px solid #e5e7eb}.rol-papel-wrap{display:flex;justify-content:center;padding:.5rem 0 1.5rem;overflow-x:auto}.rol-papel-document{width:100%;max-width:920px;background:#fff;border:2px solid #1a1a1a;padding:1.25rem 1rem 1.5rem;box-shadow:0 4px 24px #00000014;font-family:Times New Roman,Times,serif;color:#111}.rol-papel-cabecera{text-align:center;margin-bottom:1rem;border-bottom:2px solid #1a1a1a;padding-bottom:.75rem}.rol-papel-empresa{margin:0 0 .35rem;font-size:1.05rem;font-weight:700;letter-spacing:.06em}.rol-papel-titulo{margin:0 0 .5rem;font-size:.95rem;font-weight:700;letter-spacing:.04em;text-decoration:underline;text-underline-offset:3px}.rol-papel-rango{margin:0;font-size:.8rem;font-weight:600;letter-spacing:.03em}.rol-papel-columnas{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.45rem;min-width:640px}.rol-papel-col{border:1.5px solid #1a1a1a;display:flex;flex-direction:column;min-height:220px}.rol-papel-col-dia{margin:0;padding:.35rem .25rem;text-align:center;font-size:.72rem;font-weight:700;letter-spacing:.05em;border-bottom:1px solid #1a1a1a;background:#f5f5f5}.rol-papel-col-grupo{display:flex;align-items:center;justify-content:center;gap:.2rem;padding:.35rem .2rem;border-bottom:1px solid #ccc;font-size:.65rem;font-weight:700;flex-wrap:wrap}.rol-papel-grupo-label{letter-spacing:.02em}.rol-papel-grupo-select{font-family:inherit;font-size:.75rem;font-weight:700;border:1px solid #999;border-radius:2px;padding:.1rem .15rem;min-width:2rem;text-align:center;background:#fff;cursor:pointer}.rol-papel-numeros{display:grid;grid-template-columns:repeat(3,1fr);gap:.15rem .25rem;padding:.45rem .35rem;flex:1;align-content:start}.rol-papel-numero{text-align:center;font-size:.78rem;font-weight:600;line-height:1.35;font-variant-numeric:tabular-nums}.rol-papel-vacio{grid-column:1 / -1;margin:0;text-align:center;font-size:.65rem;color:#666;font-style:italic;padding:.5rem .25rem;line-height:1.4}.rol-papel-link-dia{display:block;margin-top:.35rem;font-style:normal;font-size:.65rem;font-weight:600}.rol-papel-col-nota{margin:0;padding:.25rem .35rem .4rem;text-align:center;font-size:.6rem;color:#059669}.rol-papel-avanzado{max-width:920px;margin:1rem auto 0;padding:.75rem 1rem;border:1px solid #e5e7eb;border-radius:8px;background:#fafafa}.rol-papel-avanzado summary{cursor:pointer;font-weight:600;font-size:.9rem;color:#4b5563}.rol-papel-firma{margin-top:1.25rem;text-align:center;padding-top:.5rem}.rol-papel-firma-label{margin:0 0 .25rem;font-size:.7rem;font-weight:600;letter-spacing:.04em}.rol-papel-firma-linea{width:55%;max-width:220px;margin:0 auto .35rem;border-bottom:1px solid #1a1a1a;height:1.5rem}.rol-papel-firma-nombre{margin:0;font-size:.8rem;font-weight:700;letter-spacing:.05em}.rol-papel-firma-cargo{margin:.15rem 0 0;font-size:.68rem;font-weight:600;letter-spacing:.03em}.rol-papel-acciones{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;justify-content:center;max-width:920px;margin:0 auto}.rol-papel-check-aplicar{display:flex;align-items:center;gap:.4rem;font-size:.9rem;cursor:pointer}.rol-papel-toolbar{display:flex;flex-wrap:wrap;gap:.5rem}@media(max-width:720px){.rol-papel-document{padding:.85rem .5rem 1rem}.rol-papel-columnas{min-width:520px}.rol-papel-numero{font-size:.7rem}}@media print{body *{visibility:hidden}.rol-papel-document,.rol-papel-document *{visibility:visible}.rol-papel-wrap{position:absolute;left:0;top:0;width:100%;padding:0;overflow:visible}.rol-papel-document{max-width:none;width:100%;box-shadow:none;border-width:1.5px;page-break-inside:avoid}.rol-papel-grupo-select{border:none;-moz-appearance:none;appearance:none;-webkit-appearance:none;pointer-events:none;background:transparent}.rol-papel-no-print{display:none!important}}.gastos-reposicion-form .form-group{margin:0;min-width:7rem}.form-hint-warn{color:#b45309}
