:root{--primary-50: #eff6ff;--primary-100: #dbeafe;--primary-200: #bfdbfe;--primary-300: #93c5fd;--primary-400: #60a5fa;--primary-500: #3b82f6;--primary-600: #2563eb;--primary-700: #1d4ed8;--primary-800: #1e40af;--primary-900: #1e3a8a;--accent-50: #fffbeb;--accent-100: #fef3c7;--accent-200: #fde68a;--accent-300: #fcd34d;--accent-400: #fbbf24;--accent-500: #f59e0b;--accent-600: #d97706;--accent-700: #b45309;--accent-800: #92400e;--accent-900: #78350f;--success-50: #ecfdf5;--success-100: #d1fae5;--success-400: #34d399;--success-500: #10b981;--success-600: #059669;--success-700: #047857;--warning-50: #fffbeb;--warning-100: #fef3c7;--warning-500: #f59e0b;--warning-600: #d97706;--warning-700: #b45309;--warning-800: #92400e;--error-50: #fef2f2;--error-100: #fee2e2;--error-400: #f87171;--error-500: #ef4444;--error-600: #dc2626;--error-700: #b91c1c;--info-50: #eff6ff;--info-100: #dbeafe;--info-500: #3b82f6;--info-600: #2563eb;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-tertiary: #334155;--bg-main: #0f172a;--bg-surface: #1e293b;--bg-card: rgba(30, 41, 59, .8);--bg-card-hover: rgba(51, 65, 85, .9);--bg-glass: rgba(255, 255, 255, .05);--bg-glass-hover: rgba(255, 255, 255, .1);--text-primary: #f8fafc;--text-secondary: #e2e8f0;--text-tertiary: #a1b4cc;--text-muted: #8b9cb3;--border-color: rgba(148, 163, 184, .2);--border-color-light: rgba(148, 163, 184, .1);--border-color-hover: rgba(148, 163, 184, .3);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .3), 0 2px 4px -2px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .4), 0 4px 6px -4px rgba(0, 0, 0, .4);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .4), 0 8px 10px -6px rgba(0, 0, 0, .4);--shadow-glow: 0 0 20px rgba(59, 130, 246, .3);--shadow-glow-accent: 0 0 20px rgba(245, 158, 11, .3);--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--spacing-1: .25rem;--spacing-2: .5rem;--spacing-3: .75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-8: 2rem;--spacing-10: 2.5rem;--spacing-12: 3rem;--spacing-16: 4rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease;--z-dropdown: 8000;--z-modal: 10000;--z-fab: 9000;--z-toast: 11000;--sidebar-width: 260px;--sidebar-collapsed-width: 72px;--header-height: 64px;--primary-rgb: 59, 130, 246}[data-theme=light]{--primary-50: #eff6ff;--primary-500: #2563eb;--bg-primary: #f8fafc;--bg-secondary: #ffffff;--bg-tertiary: #f1f5f9;--bg-main: #f8fafc;--bg-surface: #ffffff;--bg-card: rgba(255, 255, 255, .9);--bg-card-hover: rgba(255, 255, 255, 1);--bg-glass: rgba(255, 255, 255, .75);--bg-glass-hover: rgba(255, 255, 255, .9);--text-primary: #1e293b;--text-secondary: #475569;--text-tertiary: #64748b;--text-muted: #94a3b8;--border-color: #e2e8f0;--border-color-light: #f1f5f9;--border-color-hover: #cbd5e1;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .06), 0 2px 4px -2px rgba(0, 0, 0, .03);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .08), 0 4px 6px -4px rgba(0, 0, 0, .04);--shadow-glow: 0 0 15px rgba(37, 99, 235, .15)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.6;color:var(--text-primary);background:var(--bg-primary);min-height:100vh;position:relative;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}:where(button,a,input,select,textarea,[role=button],[role=menuitem]):focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-wrap-anywhere{overflow-wrap:anywhere;word-break:break-word}.card,.table-container{min-height:auto!important;height:auto!important}.modal:not(.modal-preview){min-height:auto!important;height:auto!important}.modal-preview{height:95vh!important;width:95vw!important;max-width:none!important;display:flex!important;flex-direction:column!important}body:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at 20% 20%,rgba(59,130,246,.15) 0%,transparent 50%),radial-gradient(ellipse at 80% 80%,rgba(124,58,237,.1) 0%,transparent 50%),radial-gradient(ellipse at 50% 50%,rgba(245,158,11,.05) 0%,transparent 70%);pointer-events:none;z-index:-1;will-change:opacity}#root{min-height:100vh}a{color:var(--primary-400);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--primary-300)}img{max-width:100%;height:auto}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.3;color:var(--text-primary)}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base)}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.text-success{color:var(--success-500)}.text-warning{color:var(--warning-500)}.text-error{color:var(--error-500)}.text-accent{color:var(--accent-400)}.font-light{font-weight:300}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.table{width:100%;border-collapse:collapse;font-family:var(--font-family)}.table th,.table td{padding:var(--spacing-3) var(--spacing-4);text-align:left;border-bottom:1px solid var(--border-color);text-decoration:none!important;font-feature-settings:normal}.table th{font-weight:600;font-size:var(--font-size-sm);color:var(--text-muted);background:var(--bg-secondary);text-transform:uppercase;letter-spacing:.05em}.table td{font-size:var(--font-size-sm);color:var(--text-primary)}.view-toggle-container{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:4px;display:flex;height:44px;flex-shrink:0}.view-toggle-btn{padding:0 12px;border:none;background:transparent;color:var(--text-secondary);border-radius:8px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.view-toggle-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.search-bar{display:flex;align-items:center;gap:10px;flex:1;min-width:200px;background:var(--bg-secondary);padding:6px 12px;border-radius:12px;border:1px solid transparent;box-shadow:var(--shadow-sm);transition:all .2s}.search-bar:focus-within{border-color:var(--primary-500);box-shadow:0 0 0 3px #3b82f640}.search-bar input{border:none;background:transparent;width:100%;outline:none;color:var(--text-primary);font-size:.9rem;padding:0}.search-bar input::placeholder{color:var(--text-muted)}.view-toggle-btn.active{background:var(--primary-500);color:#fff;box-shadow:var(--shadow-sm)}.filter-chip{padding:6px 16px;border-radius:20px;font-size:var(--font-size-sm);font-weight:500;background:var(--bg-secondary);color:var(--text-secondary);border:1px solid transparent;cursor:pointer;transition:all .2s;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center}.filter-chip:hover{background:var(--bg-tertiary);color:var(--text-primary)}.filter-chip.active{background:#2866ec!important;color:#fff!important;box-shadow:var(--shadow-sm)}.view-toggle-btn.active{background:#2866ec;color:#fff;box-shadow:var(--shadow-sm)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-fade-in{animation:fadeIn var(--transition-normal)}.animate-slide-up{animation:slideUp var(--transition-normal)}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-spin{animation:spin 1s linear infinite}.skeleton{background:linear-gradient(90deg,var(--bg-glass) 25%,var(--bg-glass-hover) 50%,var(--bg-glass) 75%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite;border-radius:var(--radius-md)}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.spinner{width:24px;height:24px;border:3px solid var(--border-color);border-top-color:var(--primary-500);border-radius:50%;animation:spin .8s linear infinite}@keyframes toastBubbleIn{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes toastBubbleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.3)}}.messaging-center{position:relative;overflow:hidden}.messaging-center:before{content:"";position:absolute;inset:0 0 auto 0;height:120px;pointer-events:none;background:linear-gradient(180deg,#2563eb1f,#2563eb00)}.msg-card-header{border-bottom:1px solid var(--border-color);padding:1rem 1.2rem}.msg-header-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:1rem;align-items:center;margin-bottom:.9rem}.msg-page-title{font-size:1.25rem;font-weight:900;color:var(--text-primary)}.msg-page-subtitle{margin-top:4px;font-size:.9rem;color:var(--text-secondary)}.msg-header-actions{display:flex;justify-content:flex-end;gap:.6rem;flex-wrap:wrap}.msg-tabs{flex-wrap:wrap}.msg-card-body{min-height:460px;padding:1.2rem}.msg-panel-grid{display:grid;gap:1rem}.msg-card{padding:1rem}.msg-loading-chip{display:inline-flex;align-items:center;gap:.4rem;margin-bottom:.8rem;padding:.32rem .65rem;border-radius:999px;border:1px solid var(--border-color);background:var(--bg-glass);font-size:.78rem;color:var(--text-secondary)}.msg-empty-state{display:grid;justify-items:center;gap:.4rem;padding:.9rem;color:var(--text-secondary)}.msg-empty-icon{width:34px;height:34px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#3b82f626;color:#93c5fd}.msg-empty-title{font-weight:700;color:var(--text-primary);font-size:.92rem}.msg-empty-desc{font-size:.8rem;max-width:460px}.msg-progress-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:1rem;align-items:center}.msg-progress-track{height:8px;background:#94a3b826;border-radius:999px;overflow:hidden}.msg-progress-fill{height:100%;background:linear-gradient(90deg,#2563eb,#25d366);border-radius:inherit;transition:width .25s ease}.msg-checklist-row{display:flex;gap:.45rem;flex-wrap:wrap;margin-top:.6rem}.msg-check-item{border:1px solid var(--border-color);border-radius:999px;padding:.28rem .55rem;background:var(--bg-glass);color:var(--text-secondary);font-size:.76rem;display:inline-flex;align-items:center;gap:.32rem;font-weight:600}.msg-check-item.done{border-color:#25d36659;background:#25d3661f;color:#86efac}.msg-next-step-card{border:1px solid var(--border-color);border-radius:12px;background:var(--bg-glass);padding:.8rem;display:grid;gap:.45rem}.msg-next-step-title{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-weight:700}.msg-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}.msg-templates-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:1rem}.msg-section-toggle{width:100%;border:1px solid var(--border-color);background:var(--bg-glass);color:var(--text-primary);border-radius:10px;padding:.58rem .72rem;display:flex;align-items:center;justify-content:space-between;font-weight:700;font-size:.88rem;cursor:pointer}.msg-section-toggle:hover{border-color:#3b82f673}.msg-channel-row{border:1px solid var(--border-color);border-radius:12px;padding:.72rem;background:var(--bg-glass);display:flex;align-items:center;justify-content:space-between;gap:.7rem;flex-wrap:wrap}.msg-config-side-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.msg-details{border:1px solid var(--border-color);border-radius:10px;padding:.65rem;background:var(--bg-glass)}.msg-details summary{cursor:pointer;font-weight:700;color:var(--text-primary);list-style:none}.msg-details summary::-webkit-details-marker{display:none}.msg-channel-modal{width:min(720px,100%);max-height:90vh;max-width:720px;overflow:auto;padding:.95rem}.msg-modal-header{display:flex;align-items:center;justify-content:flex-start;margin-bottom:.8rem;gap:.75rem}.msg-modal-fields-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.msg-span-2{grid-column:1 / -1}.msg-field-error{color:#f87171;font-size:.76rem;margin-top:4px}.msg-onboarding-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-bottom:.75rem}.msg-step-item{display:inline-flex;align-items:center;gap:.45rem;padding:.5rem .6rem;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-glass);font-size:.78rem;color:var(--text-secondary);font-weight:600}.msg-step-item span{width:18px;height:18px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#2563eb33;color:#93c5fd;font-size:.72rem;font-weight:700;flex-shrink:0}.msg-summary-card{padding:1rem;border-top:3px solid var(--msg-summary-tone);background:var(--bg-card);min-height:110px}.msg-summary-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.msg-summary-title{font-size:.78rem;color:var(--text-muted);margin-bottom:6px}.msg-summary-value{font-size:1.5rem;font-weight:800;color:var(--text-primary);line-height:1.15}.msg-summary-hint{font-size:.78rem;color:var(--text-secondary);margin-top:4px}.msg-summary-icon-wrap{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:var(--msg-summary-tone-bg);color:var(--msg-summary-tone);flex-shrink:0}.msg-status-pill{display:inline-flex;align-items:center;gap:8px;font-size:.8rem;font-weight:700;color:var(--msg-status-color);padding:.3rem .6rem;border-radius:999px;border:1px solid var(--msg-status-border);background:var(--msg-status-bg)}.msg-status-dot{width:8px;height:8px;border-radius:50%;background:var(--msg-status-color);box-shadow:0 0 8px var(--msg-status-color)}.msg-strong-title{font-weight:800;margin-bottom:6px}.msg-strong-title-no-margin{font-weight:800}.msg-progress-caption{margin-top:6px;font-size:.8rem;color:var(--text-secondary)}.msg-next-step-value{font-weight:700;color:var(--text-primary)}.msg-next-step-desc{font-size:.82rem;color:var(--text-secondary)}.msg-connect-card{border-left:4px solid #f59e0b}.msg-connect-title{font-weight:800;margin-bottom:6px;display:flex;align-items:center;gap:8px}.msg-connect-desc{font-size:.9rem;color:var(--text-secondary);margin-bottom:10px}.msg-section-header-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap}.msg-section-heading{font-weight:800;display:flex;align-items:center;gap:8px}.msg-section-actions{display:flex;gap:.5rem;flex-wrap:wrap}.msg-muted-caption{font-size:.82rem;color:var(--text-muted)}.msg-error-count.has-errors{color:#ef4444}.msg-btn-group-sm{display:flex;gap:.4rem;flex-wrap:wrap}.msg-col-action{width:230px}.msg-client-name{font-weight:700}.msg-client-phone{font-size:.75rem;color:var(--text-muted)}.msg-cell-ellipsis-md{max-width:440px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-cell-ellipsis-lg{max-width:540px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-error-inline{margin-top:6px;color:#ef4444;font-size:.75rem}.msg-table-empty-cell{text-align:center;padding:1rem;color:var(--text-muted)}.msg-table-note{margin-top:.6rem;font-size:.78rem;color:var(--text-muted)}.msg-counter-muted{color:var(--text-muted);font-size:.8rem}.msg-search-row{display:flex;gap:.5rem;min-width:280px}.msg-search-row-history{align-items:center}.msg-history-input{max-width:360px}.msg-list-grid-sm{display:grid;gap:.6rem}.msg-template-item{border:1px solid var(--border-color);border-radius:12px;padding:.8rem;background:var(--bg-glass)}.msg-template-row{display:flex;justify-content:space-between;gap:.75rem}.msg-template-name{font-weight:800}.msg-template-message{margin-top:6px;color:var(--text-secondary);font-size:.85rem}.msg-block-spaced{margin-top:1rem}.msg-small-label{font-size:.78rem;color:var(--text-muted);margin-bottom:8px}.msg-grid-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.msg-template-suggestion-btn{justify-content:flex-start;height:auto;padding:.55rem .7rem}.msg-bottom-sm{margin-bottom:.8rem}.msg-form-group-tight{margin-bottom:.7rem}.msg-btn-row{display:flex;gap:.5rem}.msg-btn-flex{flex:1}.msg-copy-sm{color:var(--text-secondary);font-size:.85rem}.msg-copy-md{font-size:.86rem;color:var(--text-secondary)}.msg-toggle-label{display:inline-flex;align-items:center;gap:8px}.msg-section-body{margin-top:.85rem;display:grid;gap:.65rem}.msg-onboarding-steps-tight{margin-bottom:0}.msg-channel-name{font-weight:800}.msg-channel-meta{font-size:.8rem;color:var(--text-muted)}.msg-channel-preview{margin-top:5px;font-size:.78rem;color:var(--text-secondary)}.msg-channel-kv{margin-right:10px}.msg-section-body-compact{margin-top:.85rem}.msg-grid-time-row{display:grid;grid-template-columns:1fr auto;gap:.75rem;align-items:end}.msg-form-group-no-margin{margin-bottom:0}.msg-checkbox-label{margin-bottom:8px;display:inline-flex;align-items:center;gap:8px}.msg-checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary-600)}.msg-top-xs{margin-top:8px}.msg-top-sm{margin-top:.75rem}.msg-table-empty-center{text-align:center;color:var(--text-muted)}.msg-rule-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin-top:.7rem}.msg-rule-actions-row{display:flex;align-items:end;gap:.5rem}.msg-modal-title{font-weight:800;font-size:1rem}.msg-modal-subtitle{font-size:.8rem;color:var(--text-secondary)}.msg-modal-kapso-link{margin-top:-.1rem}.msg-modal-checkbox-group{margin-top:.25rem;margin-bottom:0}.msg-modal-btn-row{display:flex;gap:.5rem;margin-top:.2rem}.msg-modal-cancel-row{margin-top:.1rem}.msg-btn-full{width:100%}@media (max-width: 1200px){.msg-header-grid{grid-template-columns:1fr!important}.msg-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.msg-progress-grid,.msg-config-grid,.msg-config-side-grid,.msg-templates-grid{grid-template-columns:1fr!important}}@media (max-width: 760px){.msg-kpi-grid,.msg-rule-grid,.msg-modal-fields-grid{grid-template-columns:1fr!important}.msg-span-2{grid-column:auto}.msg-onboarding-steps{grid-template-columns:1fr!important}}.toast-bubble-inner{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--toast-bg, rgba(59, 130, 246, .95));border-radius:12px;box-shadow:0 10px 40px #0000004d,0 0 0 1px #ffffff1a;color:#fff;font-size:.9rem;font-weight:500;max-width:280px;animation:var(--toast-animation, toastBubbleIn .3s cubic-bezier(.34, 1.56, .64, 1) forwards);transform-origin:var(--toast-origin, left center)}.toast-bubble-icon-wrap{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#fff3;flex-shrink:0}.toast-bubble-icon-svg{width:20px;height:20px;flex-shrink:0}.toast-bubble-message{flex:1;line-height:1.4}.toast-bubble-close{background:#fff3;border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;opacity:.8;transition:opacity .2s;flex-shrink:0}.toast-bubble-close:hover{opacity:1}.toast-bubble-arrow{position:absolute;top:50%;transform:translateY(-50%);width:0;height:0;border-style:solid}.sidebar{position:fixed;top:0;left:0;bottom:0;width:var(--sidebar-width);background:var(--bg-secondary);border-right:1px solid var(--border-color);display:flex;flex-direction:column;z-index:50;transition:transform var(--transition-normal);will-change:transform}.sidebar-header{padding:var(--spacing-5);border-bottom:1px solid var(--border-color-light)}.sidebar-logo{display:flex;align-items:center;gap:var(--spacing-3);font-size:var(--font-size-xl);font-weight:700;color:var(--text-primary)}.sidebar-logo-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary-600),var(--primary-700));border-radius:var(--radius-lg);font-weight:800;color:#fff}.sidebar-nav{flex:1;padding:var(--spacing-4);overflow-y:auto}.sidebar-nav-section{margin-bottom:var(--spacing-6)}.sidebar-nav-title{padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.sidebar-nav-item{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);font-size:var(--font-size-sm);color:var(--text-secondary);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast)}.sidebar-nav-item:hover{background:var(--bg-glass);color:var(--text-primary)}.sidebar-nav-item.active{background:#3b82f626;color:var(--primary-400)}.sidebar-nav-item-icon{width:20px;height:20px;flex-shrink:0}.sidebar-footer{padding:var(--spacing-4);border-top:1px solid var(--border-color-light)}.header{height:var(--header-height);background:var(--bg-secondary);border-bottom:1px solid var(--border-color);display:flex;align-items:center;padding:0 var(--spacing-6);gap:var(--spacing-4);position:sticky;top:0;z-index:40}.header-menu-btn{display:none!important;flex-shrink:0}@media (max-width: 1023px){.header-menu-btn{display:flex!important}}.header-search{flex:1;max-width:500px;position:relative}.header-search-input{width:100%;padding:var(--spacing-2) var(--spacing-4) var(--spacing-2) var(--spacing-10);font-size:var(--font-size-sm);background:var(--bg-glass);border:1px solid var(--border-color);border-radius:var(--radius-full);color:var(--text-primary)}.header-search-input:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px #3b82f626}.header-search-icon{position:absolute;left:var(--spacing-3);top:50%;transform:translateY(-50%);color:var(--text-muted);width:18px;height:18px}.header-right{display:flex;align-items:center;gap:var(--spacing-5)}.header-clock{display:none;flex-direction:column;align-items:flex-end;padding-right:var(--spacing-4);border-right:1px solid var(--border-color);line-height:1.1}@media (min-width: 768px){.header-clock{display:flex}}.header-clock-time{font-size:var(--font-size-md);font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.header-clock-date{font-size:10px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.header-user-container{display:flex;align-items:center}.header-user{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-1.5) var(--spacing-3);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);border:1px solid transparent}.header-user:hover{background:var(--bg-glass);border-color:var(--border-color);box-shadow:var(--shadow-sm)}.header-user-avatar{width:36px;height:36px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--primary-500),var(--accent-500));display:flex;align-items:center;justify-content:center;font-weight:600;font-size:var(--font-size-sm);color:#fff}.header-user-info{display:none}@media (min-width: 768px){.header-user-info{display:block}}.header-user-name{font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary)}.header-user-role{font-size:var(--font-size-xs);color:var(--text-muted)}.main-content{margin-left:var(--sidebar-width);min-height:100vh;transition:margin var(--transition-normal)}@media (max-width: 1023px){.main-content{margin-left:0}.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:45}}.page{padding:var(--spacing-6)}.page-enter-shell{animation:pageEnter .24s ease-out}@keyframes pageEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: no-preference){.page>*{animation:pageEnter .22s ease-out}}@media (update: slow){.card,.modal-overlay,.glass-sidebar,.glass-header{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.card,.modal,.fab,.action-dropdown-menu,.context-menu{box-shadow:var(--shadow-md)!important}}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-6);flex-wrap:wrap;gap:var(--spacing-4)}.page-title{font-size:var(--font-size-2xl);font-weight:700}.page-subtitle{font-size:var(--font-size-sm);color:var(--text-secondary);margin-top:var(--spacing-1)}.fab-container{position:fixed;bottom:var(--spacing-6);right:var(--spacing-6);z-index:var(--z-fab)}.fab{width:56px;height:56px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--primary-600),var(--primary-700));border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg),var(--shadow-glow);transition:all var(--transition-normal)}.hover-scale-sm:hover,.fab:hover{transform:scale(1.1);box-shadow:var(--shadow-xl),0 0 30px #3b82f666}.fab.open{transform:rotate(45deg);background:linear-gradient(135deg,var(--error-500),var(--error-600))}.fab-menu{position:absolute;bottom:70px;right:0;display:flex;flex-direction:column;gap:var(--spacing-3);opacity:0;visibility:hidden;transform:translateY(10px);transition:all var(--transition-normal)}.fab-menu.open{opacity:1;visibility:visible;transform:translateY(0)}.fab-menu-item{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-full);white-space:nowrap;cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-md)}.fab-menu-item:hover{background:var(--bg-tertiary);transform:translate(-5px)}.fab-menu-item-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);background:var(--bg-glass)}.grid{display:grid;gap:var(--spacing-4)}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width: 640px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}}@media (min-width: 641px) and (max-width: 1023px){.grid-cols-3,.grid-cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-1{gap:var(--spacing-1)}.gap-2{gap:var(--spacing-2)}.gap-3{gap:var(--spacing-3)}.gap-4{gap:var(--spacing-4)}.gap-6{gap:var(--spacing-6)}.m-0{margin:0}.mt-2{margin-top:var(--spacing-2)}.mt-4{margin-top:var(--spacing-4)}.mt-6{margin-top:var(--spacing-6)}.mb-2{margin-bottom:var(--spacing-2)}.mb-4{margin-bottom:var(--spacing-4)}.mb-6{margin-bottom:var(--spacing-6)}.ml-auto{margin-left:auto}.p-0{padding:0}.p-2{padding:var(--spacing-2)}.p-4{padding:var(--spacing-4)}.p-6{padding:var(--spacing-6)}.app-layout{min-height:100vh}.layout-sidebar-header{display:flex;justify-content:space-between;align-items:center}.layout-sidebar-logo{cursor:pointer}.layout-sidebar-logo-text{font-size:1.2rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}.layout-desktop-only{display:none}@media (min-width: 1024px){.layout-desktop-only{display:flex!important}}.layout-collapse-icon{transform:rotate(90deg);display:inline-block}.layout-header-actions{display:flex;align-items:center;gap:1rem}.layout-header-controls{display:flex;align-items:center;gap:.5rem}.layout-refresh-icon.is-spinning{animation:spin 1s linear infinite}.layout-header-clock{display:flex;flex-direction:column;align-items:flex-end;padding-left:1.5rem;border-left:1px solid var(--border-color);line-height:1.2;min-width:fit-content}.layout-header-clock-time{font-size:1.1rem;font-weight:800;color:var(--text-primary);letter-spacing:.02em}.layout-header-clock-date{font-size:.85rem;font-weight:600;color:var(--text-muted);text-transform:capitalize}.sidebar-user-info{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3);background:var(--bg-glass);border-radius:var(--radius-lg)}.sidebar-user-avatar{width:40px;height:40px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--primary-500),var(--accent-500));display:flex;align-items:center;justify-content:center;font-weight:600;font-size:var(--font-size-sm);color:#fff}.sidebar-user-details{flex:1;min-width:0}.sidebar-user-name{font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-role{font-size:var(--font-size-xs);color:var(--text-muted)}.search-results{position:absolute;top:100%;left:0;right:0;margin-top:var(--spacing-2);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-height:400px;overflow-y:auto;z-index:var(--z-dropdown)}.search-no-results{padding:var(--spacing-4);text-align:center;color:var(--text-muted);font-size:var(--font-size-sm)}.search-section{padding:var(--spacing-2)}.search-section-title{padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-xs);font-weight:600;color:var(--text-muted);text-transform:uppercase}.search-item{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-3);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast)}.search-item:hover{background:var(--bg-glass)}.search-item-name{font-size:var(--font-size-sm);color:var(--text-primary)}.search-item-detail{font-size:var(--font-size-xs);color:var(--text-muted)}.fab svg{transition:inherit}.fab.open{box-shadow:var(--shadow-lg),0 0 20px #ef44444d}.fab.open:hover{transform:rotate(45deg) scale(1.08)}.fab-menu{bottom:75px;transform:translateY(15px)}.fab-menu-item{padding-right:var(--spacing-5);animation:fabItemSlideIn var(--transition-normal) both}.fab-menu-item:hover{box-shadow:var(--shadow-lg)}.fab-menu-item-icon{width:40px;height:40px;color:var(--action-color, var(--text-primary))}.fab-menu-item-label{font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary)}@keyframes fabItemSlideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@media (max-width: 640px){.auditlog-search-wrap{min-width:100%}.auditlog-filters-scroll-container,.auditlog-filters-scroll-viewport{justify-content:flex-start}.fab-container{bottom:var(--spacing-4);right:var(--spacing-4)}.fab{width:56px;height:56px}.fab-menu{bottom:70px}.fab-menu-item-label{display:none}.fab-menu-item{padding:var(--spacing-2);border-radius:var(--radius-full)}}.card{background:var(--bg-card);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);transition:transform var(--transition-normal),box-shadow var(--transition-normal),border-color var(--transition-normal);will-change:transform}.card:hover{border-color:var(--border-color-hover)}.card-clickable:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);cursor:pointer}.card.is-selected,.card-clickable.is-selected{border-color:var(--primary-400, #60a5fa)!important;box-shadow:0 0 0 2px #60a5fa59,var(--shadow-lg);background:#60a5fa0f}.card-header{padding:var(--spacing-5) var(--spacing-6);border-bottom:1px solid var(--border-color-light)}.card-body{padding:var(--spacing-6)}.card-footer{padding:var(--spacing-4) var(--spacing-6);border-top:1px solid var(--border-color-light);background:var(--bg-glass);border-radius:0 0 var(--radius-xl) var(--radius-xl)}.summary-card{padding:var(--spacing-5);display:flex;flex-direction:column;gap:var(--spacing-3)}.summary-card-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);background:var(--bg-glass)}.summary-card-value{font-size:var(--font-size-3xl);font-weight:700;color:var(--text-primary);line-height:1}.summary-card-label{font-size:var(--font-size-sm);color:var(--text-secondary)}.summary-card-trend{display:flex;align-items:center;gap:var(--spacing-1);font-size:var(--font-size-xs)}.summary-card-trend.up{color:var(--success-500)}.summary-card-trend.down{color:var(--error-500)}.table-container{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--border-color)}.table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.table th{padding:0 var(--spacing-4);height:48px;text-align:left;font-weight:600;color:var(--text-secondary);background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);white-space:nowrap;vertical-align:middle}.table td{padding:var(--spacing-4);border-bottom:1px solid var(--border-color-light);vertical-align:middle}.table tbody tr{transition:background var(--transition-fast)}.table tbody tr:hover{background:var(--bg-glass)}.table tbody tr:last-child td{border-bottom:none}.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .75rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap;border:1px solid transparent}.badge:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 4px currentColor}.badge-signed{background:#10b98126;color:#10b981;border:1px solid rgba(16,185,129,.3);padding:2px 10px;border-radius:99px;font-size:.75rem;font-weight:700;text-transform:uppercase;display:inline-flex;align-items:center;gap:6px}.badge-signed:before{content:"";width:6px;height:6px;background:#10b981;border-radius:50%;display:inline-block;box-shadow:0 0 8px #10b981}.badge-pending{background:#f59e0b26;color:#f59e0b;border:1px solid rgba(245,158,11,.3);padding:2px 10px;border-radius:99px;font-size:.75rem;font-weight:700;text-transform:uppercase}.badge-primary{color:var(--primary-400);background:#3b82f61a;border-color:#3b82f633}.badge-success{color:var(--success-500);background:#10b9811a;border-color:#10b98133}.badge-warning{color:var(--warning-500);background:#f59e0b1a;border-color:#f59e0b33}.badge-danger{color:var(--error-500);background:#ef44441a;border-color:#ef444433}.badge-info{color:var(--info-500);background:#3b82f61a;border-color:#3b82f633}.badge-secondary{color:var(--text-secondary);background:var(--bg-glass);border-color:var(--border-color)}.badge-secondary:before{display:none}.btn-icon-group{display:flex;gap:8px;align-items:center}.btn-icon-premium{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:#1e293b80;border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;outline:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.btn-icon-premium.primary{border-color:#3b82f6;color:#3b82f6;background:#3b82f61a}.btn-icon-premium.secondary{border-color:#fff3;color:var(--text-primary);background:#1e293bcc}.btn-icon-premium.success{border-color:#10b981;color:#10b981;background:#10b9811a}.btn-icon-premium.warning{border-color:#f59e0b;color:#f59e0b;background:#f59e0b1a}.btn-icon-premium.danger{border-color:#ef4444;color:#ef4444;background:#ef44441a}.btn-icon-premium:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #0000004d;background:rgba(var(--primary-rgb),.15)}.btn-icon-premium:active:not(:disabled){transform:translateY(0) scale(.95)}.btn-icon-premium.active{background:var(--bg-glass-hover);border-color:var(--primary-500);box-shadow:inset 0 2px 4px #0003}.btn-icon-premium:disabled{opacity:.4;cursor:not-allowed;filter:grayscale(1)}.btn-icon-premium.danger:hover:not(:disabled){background:#ef44441a;border-color:var(--error-500);color:var(--error-500);box-shadow:0 4px 12px #ef444433}.action-dropdown{position:relative;display:inline-block}.action-dropdown-menu{background:#1e293b;border:1px solid rgba(255,255,255,.1);border-radius:12px;box-shadow:0 10px 25px -5px #00000080;z-index:999999;padding:8px;display:none;animation:slideUp .15s ease-out;min-width:200px}.action-dropdown-menu.show{display:block}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.action-dropdown-item{width:100%;display:flex;align-items:center;gap:12px;padding:10px 14px;border:none;background:transparent;color:#f8fafc;font-size:.95rem;font-weight:500;border-radius:8px;cursor:pointer;transition:all .2s;text-align:left}.action-dropdown-item-wrap{position:relative;padding-right:10px}.action-dropdown-item.has-children{padding-right:10px}.action-submenu-arrow{margin-left:auto;display:inline-flex;align-items:center;opacity:.8}.action-dropdown-submenu{position:absolute;top:0;left:calc(100% - 10px);min-width:220px;background:#1e293b;border:1px solid rgba(255,255,255,.1);border-radius:12px;box-shadow:0 10px 25px -5px #00000080;padding:8px;z-index:1000000}.context-menu-item-wrap{position:relative;padding-right:10px}.context-menu-submenu{position:absolute;top:0;left:calc(100% - 10px);min-width:220px;background:#1e293b;border:1px solid rgba(255,255,255,.1);border-radius:12px;box-shadow:0 10px 25px -5px #00000080;padding:8px;z-index:1000000}.action-dropdown-item:hover{background:#ffffff14;transform:translate(4px)}.hover-highlight{transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.hover-highlight:hover{transform:translateY(-1px);box-shadow:0 0 0 2px #3b82f63d,0 8px 20px #3b82f62e;filter:saturate(1.06)}.action-dropdown-item.variant-primary{color:#60a5fa}.action-dropdown-item.variant-secondary{color:#94a3b8}.action-dropdown-item.variant-success{color:#22c55e}.action-dropdown-item.variant-warning{color:#f59e0b}.action-dropdown-item.variant-danger{color:#ef4444}.action-dropdown-item.variant-primary:hover{background:#60a5fa1f;color:#60a5fa}.action-dropdown-item.variant-success:hover{background:#22c55e1f;color:#22c55e}.action-dropdown-item.variant-warning:hover{background:#f59e0b1f;color:#f59e0b}.action-dropdown-item.variant-danger:hover{background:#ef44441f;color:#ef4444}.loan-detail-partial-breakdown{margin-top:4px;font-size:.72rem;line-height:1.35;color:var(--warning-500);font-weight:500}.action-dropdown-item.danger{color:#f87171}.action-dropdown-item.danger:hover{background:#ef444426;color:#ef4444}.action-dropdown-item.warning{color:#fbbf24}[data-tooltip]{position:relative}[data-tooltip]:before{content:attr(data-tooltip);position:absolute;bottom:125%;left:50%;transform:translate(-50%) translateY(8px);background:#0f172a;color:#f8fafc;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:500;white-space:nowrap;opacity:0;visibility:hidden;transition:all .2s cubic-bezier(.16,1,.3,1);z-index:999999;box-shadow:0 4px 15px #0006;pointer-events:none;border:1px solid rgba(255,255,255,.1)}[data-tooltip]:hover:before{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.tabs{display:inline-flex;gap:var(--spacing-2);padding:var(--spacing-1);background:var(--bg-glass);border:1px solid var(--border-color);border-radius:var(--radius-xl);margin-bottom:var(--spacing-6)}.tab{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-5);font-size:var(--font-size-sm);font-weight:500;color:#fff;background:transparent;border:none;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-normal);white-space:nowrap}.tab:hover:not(.active){color:var(--text-primary);background:var(--bg-glass-hover)}.tab.active{color:#fff;background:linear-gradient(135deg,var(--primary-600),var(--primary-700));box-shadow:var(--shadow-md),0 0 12px #3b82f640;font-weight:600}.tab.active svg{filter:drop-shadow(0 0 3px rgba(59,130,246,.5))}@media (max-width: 640px){.tabs{flex-direction:column;width:100%}.tab{justify-content:flex-start;width:100%}}.tab-group{display:inline-flex;gap:var(--spacing-2);padding:var(--spacing-1);background:var(--bg-glass);border:1px solid var(--border-color);border-radius:var(--radius-xl);margin-bottom:var(--spacing-6)}.tab-item{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-5);font-size:var(--font-size-sm);font-weight:500;color:#fff;background:transparent;border:none;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-normal);white-space:nowrap}.tab-item:hover:not(.active){color:var(--text-primary);background:var(--bg-glass-hover)}.tab-item.active{color:#fff;background:linear-gradient(135deg,var(--primary-600),var(--primary-700));box-shadow:var(--shadow-md),0 0 12px #3b82f640;font-weight:600}.tab-item.active svg{filter:drop-shadow(0 0 3px rgba(59,130,246,.5))}@media (max-width: 640px){.tab-group{flex-direction:column;width:100%}.tab-item{justify-content:flex-start;width:100%}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-12);text-align:center}.empty-state-icon{width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:var(--bg-glass);border-radius:var(--radius-full);margin-bottom:var(--spacing-4);color:var(--text-muted)}.empty-state-title{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-2)}.empty-state-description{font-size:var(--font-size-sm);color:var(--text-muted);max-width:300px;margin-bottom:var(--spacing-6)}.alert{display:flex;align-items:flex-start;gap:var(--spacing-3);padding:var(--spacing-4);border-radius:var(--radius-lg);font-size:var(--font-size-sm)}.alert-icon{flex-shrink:0;width:20px;height:20px}.alert-info{background:#3b82f61a;border:1px solid rgba(59,130,246,.3);color:var(--info-100)}.alert-success{background:#10b9811a;border:1px solid rgba(16,185,129,.3);color:var(--success-100)}.alert-warning{background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);color:var(--warning-100)}.alert-danger{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:var(--error-100)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-color-hover)}.table-container{width:100%;overflow-x:auto}.table{width:100%;border-collapse:collapse;color:var(--text-primary)}.table th,.table td{padding:1rem 1.25rem;text-align:left;border-bottom:1px solid var(--border-color);vertical-align:middle}.table th{font-weight:700;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);background:var(--bg-tertiary);border-bottom:2px solid var(--border-color)}.table tr:last-child td{border-bottom:none}.table tr:hover td{background:var(--bg-glass-hover)}.badge-info{background:#3b82f626;color:#60a5fa;border:1px solid rgba(59,130,246,.2)}.badge-signed{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;background:#10b9811a;color:#10b981;border:1px solid rgba(16,185,129,.2);border-radius:99px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em}.badge-signed:before{content:"";width:8px;height:8px;background-color:#10b981;border-radius:50%;box-shadow:0 0 8px #10b98166;animation:pulse-green 2s infinite}.badge-pending{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;background:#f59e0b1a;color:#f59e0b;border:1px solid rgba(245,158,11,.2);border-radius:99px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em}.badge-pending:before{content:"";width:8px;height:8px;background-color:#f59e0b;border-radius:50%}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-16);text-align:center;color:var(--text-muted);background:var(--bg-glass);border-radius:var(--radius-lg);border:1px dashed var(--border-color);min-height:200px}.empty-state-icon{color:var(--text-secondary);opacity:.5;margin-bottom:var(--spacing-4)}.empty-state-text{font-size:var(--font-size-base);color:var(--text-secondary);max-width:300px}.chart-container{display:flex;align-items:flex-end;gap:var(--spacing-2);height:300px;padding:var(--spacing-6) 0 var(--spacing-2) 0;width:100%;overflow-x:auto}.chart-bar-wrapper{flex:1;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-2);min-width:60px}.chart-bar{width:100%;max-width:40px;border-radius:4px 4px 0 0;position:relative;min-height:4px;transition:height .5s cubic-bezier(.4,0,.2,1)}.chart-label{font-size:.7rem;color:var(--text-secondary);transform:rotate(-45deg);margin-top:var(--spacing-2);white-space:nowrap;text-align:center}.chart-value{position:absolute;bottom:100%;left:50%;transform:translate(-50%);font-size:.7rem;font-weight:700;margin-bottom:6px;white-space:nowrap;opacity:0;transition:opacity .2s;pointer-events:none;background:var(--bg-surface);padding:2px 6px;border-radius:4px;box-shadow:var(--shadow-sm);border:1px solid var(--border-color);z-index:10}.chart-bar-wrapper:hover .chart-value{opacity:1}#root>.login-page{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;background:var(--bg-main)}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-4);background:radial-gradient(circle at top right,rgba(59,130,246,.07),transparent),radial-gradient(circle at bottom left,rgba(139,92,246,.07),transparent)}.login-page .alert{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);border-radius:var(--radius-lg);font-size:var(--font-size-sm);margin-bottom:var(--spacing-4);animation:fadeIn var(--transition-fast)}.login-page .alert-danger{background:#ef44441a;border:1px solid rgba(239,68,68,.2);color:#fca5a5}.login-page .alert-success{background:#22c55e1a;border:1px solid rgba(34,197,94,.2);color:#86efac}.login-page .alert-icon{width:18px;height:18px;flex-shrink:0}.login-page .spinner{width:18px;height:18px;border:2.5px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin .8s linear infinite;display:inline-block}.login-container{width:100%;max-width:420px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-2xl);padding:var(--spacing-8);box-shadow:var(--shadow-xl);animation:slideUp var(--transition-normal);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.login-header{text-align:center;margin-bottom:var(--spacing-8)}.login-logo{display:flex;justify-content:center;margin-bottom:var(--spacing-4)}.login-logo-icon{width:72px;height:72px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary-600),var(--primary-700));border-radius:var(--radius-xl);font-size:28px;font-weight:800;color:#fff;box-shadow:var(--shadow-glow);overflow:hidden}.login-logo-icon svg{width:32px;height:32px}.login-title{font-size:var(--font-size-3xl);font-weight:700;background:linear-gradient(135deg,var(--primary-400),var(--accent-400));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:var(--spacing-1)}.login-subtitle{color:var(--text-secondary);font-size:var(--font-size-sm);max-width:280px;margin:0 auto}.login-form{margin-bottom:var(--spacing-6)}.input-with-icon{position:relative}.input-with-icon .form-input{padding-left:var(--spacing-10);padding-right:var(--spacing-10)}.input-icon{position:absolute;left:var(--spacing-3);top:50%;transform:translateY(-50%);width:20px;height:20px;color:var(--text-muted)}.password-toggle{position:absolute;right:var(--spacing-3);top:50%;transform:translateY(-50%);background:none;border:none;padding:var(--spacing-1);cursor:pointer;color:var(--text-muted);transition:color var(--transition-fast)}.password-toggle:hover{color:var(--text-primary)}.password-toggle svg{width:20px;height:20px}.login-btn{width:100%;margin-top:var(--spacing-2)}.login-btn-alt{margin-top:var(--spacing-3)}.login-divider{display:flex;align-items:center;gap:12px;margin-top:14px;margin-bottom:12px;color:#94a3b8e6;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.login-divider:before,.login-divider:after{content:"";height:1px;flex:1;background:#94a3b842}.login-google-wrap{display:flex;justify-content:center}.login-google-btn{background:var(--bg-primary, #1e293b);border-color:var(--border-color, #334155);color:var(--text-primary, #f1f5f9);display:flex;align-items:center;justify-content:center;gap:12px;font-weight:500}.login-google-btn:hover:not(:disabled){background:var(--bg-hover, #334155);border-color:var(--border-color, #475569)}.login-google-btn .google-icon{width:20px;height:20px}.login-passkey-icon{color:var(--accent, #60a5fa)}.login-google-dark-btn{background:#0f172a;border-color:#334155;color:#f8fafc}.login-google-dark-btn:hover:not(:disabled){background:#111827;border-color:#475569}.login-otp-panel{margin-bottom:14px;padding:14px;border-radius:12px;border:1px solid rgba(56,189,248,.3);background:linear-gradient(135deg,#1e40af33,#14b8a61f)}.login-otp-title{margin:0;font-weight:700;color:#dbeafe}.login-otp-subtitle{margin-top:4px;margin-bottom:0;color:#bfdbfe;font-size:.85rem}.login-otp-input{text-align:center;letter-spacing:.4rem;font-size:1.2rem;font-weight:700}.login-otp-qr-wrap{display:flex;justify-content:center;margin-bottom:var(--spacing-4)}.login-otp-qr{width:220px;height:220px;border-radius:12px;border:1px solid var(--border-color);background:#fff;padding:8px}.login-backup-codes{margin-top:var(--spacing-4);border:1px solid var(--border-color);background:var(--bg-glass);border-radius:var(--radius-lg);padding:var(--spacing-3)}.login-backup-codes-title{margin:0 0 8px;font-size:var(--font-size-sm);font-weight:700}.login-backup-codes-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.login-backup-codes-grid code{display:block;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:6px 8px;text-align:center}.login-demo{text-align:center;padding-top:var(--spacing-4);border-top:1px solid var(--border-color-light)}.login-switch-row{margin-top:18px;text-align:center;color:#cbd5e1;font-size:.92rem}.login-switch-row p{margin:0}.login-link-btn{background:none;border:0;color:#2dd4bf;font-weight:700;cursor:pointer;padding:0}.login-link-btn:hover{color:#5eead4;text-decoration:underline}.security-auth-status-row{display:flex;gap:10px;flex-wrap:wrap}.security-auth-section{border:1px solid var(--border-color);border-radius:var(--radius-xl);padding:var(--spacing-4);background:var(--bg-glass)}.security-auth-section h4{margin-top:0;margin-bottom:12px}.security-auth-otp-setup{display:grid;gap:12px}.security-auth-otp-qr{width:220px;height:220px;border-radius:10px;border:1px solid var(--border-color);padding:8px;background:#fff}.security-auth-disable-row{display:grid;gap:12px;grid-template-columns:1fr auto;align-items:end}.security-auth-passkey-tools{display:grid;gap:12px;grid-template-columns:1fr auto;margin-bottom:12px}.security-auth-backups{margin-top:12px;padding:12px;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-secondary)}.security-auth-backups-grid{margin-top:8px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.security-auth-backups-grid code{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:6px 8px;text-align:center}.login-demo-title{font-size:var(--font-size-xs);color:var(--text-muted);margin-bottom:var(--spacing-3)}.login-demo-credentials{display:flex;flex-direction:column;gap:var(--spacing-2)}.demo-credential{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-2) var(--spacing-3);background:var(--bg-glass);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast);font-size:var(--font-size-xs);color:var(--text-secondary)}.demo-credential:hover{background:var(--bg-glass-hover)}.filters-grid-row{display:grid;grid-template-columns:minmax(320px,1fr) auto;gap:16px;align-items:center}.filters-scroll-container{position:relative;display:flex;align-items:center;overflow:hidden;height:44px}.filters-scroll-viewport{display:flex;gap:10px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px;scrollbar-width:none;-webkit-overflow-scrolling:touch;mask-image:linear-gradient(to right,transparent,black 20px,black calc(100% - 20px),transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 20px,black calc(100% - 20px),transparent)}.filters-scroll-viewport::-webkit-scrollbar{display:none}.filter-chip{flex:0 0 auto;white-space:nowrap;max-width:180px;overflow:hidden;text-overflow:ellipsis;padding:8px 16px;border-radius:20px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;height:36px;display:flex;align-items:center;justify-content:center}.filter-chip:hover{background:#ffffff1a;color:var(--text-primary)}.filter-chip.active{background:var(--primary-500);border-color:var(--primary-400);color:#fff;box-shadow:0 4px 12px #3b82f64d}.auditlog-page-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.auditlog-filters-body{padding:.75rem 1.25rem}.auditlog-search-wrap{flex:1;min-width:320px}.auditlog-filters-scroll-container{flex:2;justify-content:flex-end}.auditlog-filters-scroll-viewport{width:100%;justify-content:flex-end;mask-image:none;-webkit-mask-image:none}.auditlog-filters-scroll-viewport .filter-chip{max-width:none}.filter-chip.chip-contract.active{background:#4f46e5;border-color:#818cf8}.filter-chip.chip-receipt.active{background:#059669;border-color:#34d399}.filter-chip.chip-active.active{background:#0d9488;border-color:#2dd4bf}.filter-chip.chip-voided.active{background:#e11d48;border-color:#fb7185}.more-filters-wrapper{position:relative;display:flex;align-items:center}.more-filters-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:#1e293b;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);padding:8px;display:flex;flex-direction:column;gap:6px;z-index:1000;box-shadow:0 10px 25px -5px #00000080;min-width:140px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.more-filters-dropdown .filter-chip{width:100%;max-width:none;justify-content:flex-start;border-radius:var(--radius-sm);height:34px}.badge-audit-client{background:#3b82f61a;color:#60a5fa;border:1px solid rgba(59,130,246,.2)}.badge-audit-loan{background:#10b9811a;color:#34d399;border:1px solid rgba(16,185,129,.2)}.badge-audit-payment{background:#6366f11a;color:#818cf8;border:1px solid rgba(99,102,241,.2)}.badge-audit-document{background:#f59e0b1a;color:#fbbf24;border:1px solid rgba(245,158,11,.2)}.badge-audit-system,.badge-audit-maintenance{background:#6b72801a;color:#9ca3af;border:1px solid rgba(107,114,128,.2)}.badge-audit-user{background:#a855f71f;color:#c084fc;border:1px solid rgba(168,85,247,.24)}.badge-audit-auth,.badge-audit-passkey{background:#f472b61f;color:#f9a8d4;border:1px solid rgba(244,114,182,.24)}.badge-audit-role{background:#ec48991f;color:#f472b6;border:1px solid rgba(236,72,153,.24)}.badge-audit-backup,.badge-audit-backup_job{background:#22d3ee1f;color:#67e8f9;border:1px solid rgba(34,211,238,.24)}.badge-audit-bank_account{background:#facc151f;color:#fde047;border:1px solid rgba(250,204,21,.24)}.badge-audit-rate_table{background:#60a5fa1f;color:#93c5fd;border:1px solid rgba(96,165,250,.24)}.badge-audit-message_queue{background:#2dd4bf1f;color:#5eead4;border:1px solid rgba(45,212,191,.24)}.audit-expand-btn{background:linear-gradient(135deg,var(--primary-500),var(--primary-600));color:#fff;border:1px solid var(--primary-500);padding:6px;border-radius:8px;transition:all .2s;box-shadow:0 4px 12px #2563eb40}.audit-expand-btn:hover{background:linear-gradient(135deg,var(--primary-400),var(--primary-500));border-color:var(--primary-400);color:#fff}.payments-table-expandable{background:var(--bg-card);border-radius:16px;border:1px solid var(--border-color);overflow:hidden}.payment-row-main{display:grid;grid-template-columns:1fr 100px 100px 60px 100px 60px 40px;gap:12px;padding:12px 16px;align-items:center;border-bottom:1px solid var(--border-color);cursor:pointer;transition:all .2s ease}.payment-row-main:hover{background:#ffffff05}.payment-row-expanded{background:var(--bg-secondary);padding:16px;border-bottom:1px solid var(--border-color);animation:expandDown .2s ease-out}@keyframes expandDown{0%{opacity:0;max-height:0;padding:0 16px}to{opacity:1;max-height:500px;padding:16px}}.payment-detail-grid{display:grid;grid-template-columns:80px 1fr 1fr 1fr 1fr;gap:12px;font-size:.85rem}.payment-detail-header{font-weight:700;color:var(--text-muted);font-size:.75rem;text-transform:uppercase;padding-bottom:8px;border-bottom:1px solid var(--border-color)}.payment-detail-row{display:contents}.payment-detail-row>div{padding:8px 0}.expand-icon{transition:transform .2s ease;color:var(--text-muted)}.expand-icon.open{transform:rotate(180deg)}.loan-timeline-card{padding:1.25rem;margin-bottom:1.5rem;overflow:hidden}.loan-timeline-title{margin-bottom:1.25rem;font-size:.95rem;font-weight:700;text-transform:uppercase;letter-spacing:.025em;color:var(--text-secondary)}.loan-timeline-scroll{display:flex;overflow-x:auto;padding:1rem 0;gap:0;position:relative;-ms-overflow-style:none;scrollbar-width:none;scroll-behavior:smooth}.horizontal-timeline::-webkit-scrollbar{display:none}.loan-timeline-event-item{flex:0 0 160px;display:flex;flex-direction:column;align-items:center;position:relative}.loan-timeline-connector{position:absolute;left:50%;top:18px;width:100%;height:2px;background:var(--border-color);z-index:0}.loan-timeline-dot{width:36px;height:36px;background:var(--timeline-dot-bg);color:var(--timeline-dot-color);border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:1;border:2px solid var(--timeline-dot-border);margin-bottom:8px}.loan-timeline-content{text-align:center;width:100%;padding:0 5px}.loan-timeline-event-title{font-weight:700;font-size:.8rem;color:var(--text-primary);margin-bottom:2px}.loan-timeline-event-date{font-size:.7rem;color:var(--text-muted);margin-bottom:4px}.loan-timeline-amount{font-size:.75rem;font-weight:700;color:var(--timeline-amount-color);background:var(--timeline-amount-bg);padding:2px 8px;border-radius:12px;display:inline-block}.loan-timeline-empty{color:var(--text-muted);width:100%;text-align:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-5);font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:500;line-height:1.5;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid transparent;border-radius:var(--radius-lg);transition:all var(--transition-normal);text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-sm{padding:0;height:32px;min-width:32px;font-size:var(--font-size-xs);border-radius:var(--radius-md)}.btn-md{padding:0 var(--spacing-4);height:40px;font-size:var(--font-size-sm)}.btn-lg{padding:0 var(--spacing-6);height:48px;font-size:var(--font-size-base)}.btn-primary{color:#fff;background:linear-gradient(135deg,var(--primary-600),var(--primary-700));border-color:var(--primary-600);box-shadow:var(--shadow-md),0 0 #3b82f600}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-500),var(--primary-600));box-shadow:var(--shadow-lg),var(--shadow-glow);transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{color:var(--text-primary);background:var(--bg-glass);border-color:var(--border-color)}.btn-secondary:hover:not(:disabled){background:var(--bg-glass-hover);border-color:var(--border-color-hover)}.btn-accent{color:var(--gray-900);background:linear-gradient(135deg,var(--accent-400),var(--accent-500));border-color:var(--accent-500)}.btn-accent:hover:not(:disabled){background:linear-gradient(135deg,var(--accent-300),var(--accent-400));box-shadow:var(--shadow-lg),var(--shadow-glow-accent);transform:translateY(-1px)}.btn-success{color:#fff;background:linear-gradient(135deg,var(--success-500),var(--success-600));border-color:var(--success-500)}.btn-success:hover:not(:disabled){background:linear-gradient(135deg,var(--success-400),var(--success-500))}.btn-danger{color:#fff;background:linear-gradient(135deg,var(--error-500),var(--error-600));border-color:var(--error-500)}.btn-danger:hover:not(:disabled){background:linear-gradient(135deg,var(--error-400),var(--error-500))}.btn-ghost{color:var(--text-secondary);background:transparent;border-color:transparent}.btn-ghost:hover:not(:disabled){color:var(--text-primary);background:var(--bg-glass)}.btn-cancel,.btn.btn-cancel,button.btn-cancel{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-5);font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:500;line-height:1.5;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:all var(--transition-normal);text-decoration:none;color:var(--text-primary);background:var(--bg-glass)}.btn-cancel:disabled,.btn.btn-cancel:disabled,button.btn-cancel:disabled{opacity:.5;cursor:not-allowed}.btn-cancel:hover:not(:disabled),.btn.btn-cancel:hover:not(:disabled),button.btn-cancel:hover:not(:disabled),.btn-cancel:focus-visible:not(:disabled),.btn.btn-cancel:focus-visible:not(:disabled),button.btn-cancel:focus-visible:not(:disabled){color:#fff!important;background-color:var(--primary-600)!important;background:linear-gradient(135deg,var(--primary-500),var(--primary-600))!important;border-color:var(--primary-500)!important;box-shadow:0 4px 12px #3b82f647,0 0 0 1px #60a5fa2e!important;transform:translateY(-1px)}.btn-icon{display:inline-flex;align-items:center;justify-content:center;padding:0;border-radius:var(--radius-md);aspect-ratio:1 / 1;flex-shrink:0}.btn-icon.btn-sm{width:32px;height:32px}.btn-icon.btn-lg{width:48px;height:48px;border-radius:var(--radius-lg)}.btn-icon:not(.btn-sm):not(.btn-lg){width:40px;height:40px}.form-group{margin-bottom:var(--spacing-5)}.form-label{display:block;margin-bottom:var(--spacing-2);font-size:var(--font-size-sm);font-weight:500;color:var(--text-secondary)}.form-label.required:after{content:" *";color:var(--error-500)}.form-input,.form-select,.form-textarea{width:100%;padding:var(--spacing-3) var(--spacing-4);font-family:inherit;color-scheme:dark;font-size:var(--font-size-base);color:var(--text-primary);background:var(--bg-glass);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:all var(--transition-fast)}.form-input:hover,.form-select:hover,.form-textarea:hover{border-color:var(--border-color-hover)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px #3b82f633;background:var(--bg-glass-hover)}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-muted);opacity:1}.form-input.error,.form-select.error,.form-textarea.error{border-color:var(--error-500)}.form-input.error:focus,.form-select.error:focus,.form-textarea.error:focus{box-shadow:0 0 0 3px #ef444433}.form-error{margin-top:var(--spacing-1);font-size:var(--font-size-xs);color:var(--error-500)}.form-hint{margin-top:var(--spacing-1);font-size:var(--font-size-xs);color:var(--text-muted)}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2394a3b8'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--spacing-3) center;background-size:1.25rem;padding-right:var(--spacing-10)}.form-textarea{min-height:100px;resize:vertical}.form-check{display:flex;align-items:center;gap:var(--spacing-2);cursor:pointer}.form-check-input{width:1.25rem;height:1.25rem;accent-color:var(--primary-500);cursor:pointer}input[type=checkbox]{accent-color:var(--primary-600)}.form-check-label{font-size:var(--font-size-sm);color:var(--text-secondary);cursor:pointer}.input-group{display:flex;align-items:stretch}.input-group .form-input{border-radius:var(--radius-lg) 0 0 var(--radius-lg)}.input-group .btn{border-radius:0 var(--radius-lg) var(--radius-lg) 0}.input-group-text{display:flex;align-items:center;padding:var(--spacing-3) var(--spacing-4);font-size:var(--font-size-sm);color:var(--text-secondary);background:var(--bg-tertiary);border:1px solid var(--border-color)}.datepicker-container{position:relative;width:100%}.datepicker-input{display:flex;align-items:center;justify-content:space-between;padding:0 1.25rem;padding-right:42px;height:48px;background:#ffffff08;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);border-radius:16px;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);min-width:0;position:relative}.datepicker-input:hover{background:#ffffff0f;border-color:#fff3}.datepicker-input.active{border-color:var(--primary-500);box-shadow:0 0 0 3px #3b82f626;background:#ffffff0d}.datepicker-value{font-size:.9rem;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.datepicker-icon{position:absolute;right:14px;color:var(--text-muted);opacity:.85;transition:opacity .2s,color .2s;pointer-events:none}.datepicker-input:hover .datepicker-icon{opacity:1;color:var(--primary-400)}.datepicker-popup{position:absolute;background:#0f172a;border:1px solid rgba(255,255,255,.1);border-radius:20px;box-shadow:0 20px 50px #0009;padding:1.25rem;z-index:1000;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:pickerSlide .3s cubic-bezier(.16,1,.3,1);margin-top:8px}@keyframes pickerSlide{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.datepicker-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;padding:0 .25rem}.datepicker-nav-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.05);border-radius:10px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary);transition:all .2s}.datepicker-nav-btn:hover{background:var(--primary-500);color:#fff;border-color:var(--primary-500)}.datepicker-weekdays{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:.75rem}.datepicker-weekdays div{text-align:center;font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.datepicker-grid{display:grid;grid-template-columns:repeat(7,40px);gap:2px 0}.datepicker-day{width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.85rem;color:var(--text-secondary);transition:all .2s;position:relative;z-index:1}.datepicker-day:hover:not(.empty):not(.selected){background:#ffffff14;border-radius:8px;color:var(--text-primary)}.datepicker-day.in-range{background:#3b82f626;color:var(--primary-300)}.datepicker-day.selected{background:var(--primary-500);color:#fff;font-weight:600;z-index:2}.datepicker-day.range-start{border-radius:999px 0 0 999px!important}.datepicker-day.range-end{border-radius:0 999px 999px 0!important}.datepicker-day.range-single{border-radius:999px!important}.datepicker-day.today:not(.selected){color:var(--primary-400);font-weight:700}.datepicker-day.today:not(.selected):after{content:"";position:absolute;bottom:6px;width:4px;height:4px;background:var(--primary-500);border-radius:50%}.datepicker-footer{display:flex;justify-content:space-between;margin-top:1.25rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.05)}.datepicker-link-btn{background:none;border:none;font-size:.8rem;font-weight:600;cursor:pointer;color:var(--primary-400);padding:.5rem;border-radius:8px;transition:background .2s}.datepicker-link-btn.danger:hover{color:var(--error-400);background:#ef44441a}.form-select option{background-color:var(--bg-secondary);color:var(--text-primary);padding:8px}.form-select{line-height:normal;height:auto;min-height:48px;padding-top:12px;padding-bottom:12px}.datepicker-container{display:flex;flex-direction:column;position:relative;width:100%}.datepicker-input{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:10px 40px 10px 14px;color:var(--text-primary);font-size:.875rem;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);min-width:210px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;position:relative;height:42px}.datepicker-icon{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--text-muted);opacity:.9;pointer-events:none;transition:all .2s ease}.datepicker-input:hover .datepicker-icon{color:var(--primary-400);opacity:1}.datepicker-value{font-size:.875rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0;padding-right:8px}.datepicker-input:hover{border-color:var(--primary-400);background:#ffffff0d}.datepicker-input.active{border-color:var(--primary-500);box-shadow:0 0 0 3px #3b82f633;background:#ffffff14}.datepicker-popup{position:absolute;background:#1e293b;border:1px solid rgba(255,255,255,.1);border-radius:16px;box-shadow:0 20px 50px #00000080,0 0 0 1px #ffffff0d;padding:20px;z-index:9999;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:pickerSlide .25s cubic-bezier(.4,0,.2,1);margin-top:8px;display:flex;flex-direction:column}.datepicker-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.datepicker-nav-btn{background:transparent;border:1px solid var(--border-color);color:var(--text-primary);width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.datepicker-nav-btn:hover{background:var(--bg-tertiary);border-color:var(--primary-400)}.datepicker-current-month{font-weight:700;color:var(--text-primary);font-size:.95rem}.datepicker-weekdays{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;margin-bottom:.5rem}.datepicker-weekdays div{font-size:.75rem;font-weight:700;color:var(--text-muted);text-transform:uppercase}.datepicker-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.datepicker-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:.85rem;cursor:pointer;border-radius:8px;transition:all .2s;color:var(--text-secondary)}.datepicker-day:hover:not(.empty){background:#3b82f626;color:var(--primary-400)}.datepicker-day.today{color:var(--primary-400);font-weight:900;text-decoration:underline;text-underline-offset:4px}.datepicker-day.selected{background:var(--primary-600)!important;color:#fff!important;font-weight:800;border-radius:50%}.datepicker-footer{display:flex;justify-content:space-between;margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--border-color)}.datepicker-link-btn{background:transparent;border:none;color:var(--primary-400);font-size:.8rem;font-weight:600;cursor:pointer;padding:4px 8px;border-radius:4px}.datepicker-link-btn:hover{background:#3b82f61a}.datepicker-link-btn.danger{color:var(--error-400)}.datepicker-link-btn.danger:hover{background:#ef44441a}input[type=date]::-webkit-calendar-picker-indicator{display:none}.daterange-container{display:flex;align-items:center;gap:12px;background:#ffffff05;padding:8px 16px;border-radius:20px;border:1px solid rgba(255,255,255,.05);box-shadow:var(--shadow-sm);width:fit-content}.daterange-item{display:flex;flex-direction:column}.daterange-item .datepicker-container label{font-size:.7rem!important;font-weight:700!important;color:var(--text-muted)!important;text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px!important;display:block}.daterange-separator{width:1px;height:32px;background:#ffffff1a;margin-top:22px}.daterange-clear{width:36px;height:36px;border-radius:12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.05);color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .25s ease;margin-top:24px;font-size:.85rem}.daterange-clear:hover{background:#ef444426;color:var(--error-400);border-color:#ef444433;transform:scale(1.05)}.smart-datepicker-container{position:relative;display:inline-block}.smart-datepicker-trigger{display:flex;align-items:center;gap:8px;padding:10px 16px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;color:var(--text-primary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:180px}.smart-datepicker-trigger:hover{border-color:var(--primary-500);background:#3b82f60d}.smart-datepicker-label{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.smart-datepicker-arrow{transition:transform .2s ease;color:var(--text-muted)}.smart-datepicker-arrow.open{transform:rotate(180deg)}.smart-datepicker-popup{position:absolute;z-index:10000;background:#0f172afa;border:1px solid rgba(71,85,105,.5);border-radius:16px;box-shadow:0 25px 50px #0009,0 0 0 1px #0000004d;padding:0;min-width:580px;animation:slideDownFade .2s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}@keyframes slideDownFade{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.smart-datepicker-content{display:grid;grid-template-columns:140px 1fr 100px;gap:0;padding:16px}.smart-datepicker-section-title{font-size:.7rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;padding:8px 12px;margin-bottom:4px}.smart-datepicker-presets{border-right:1px solid var(--border-color);padding-right:12px}.smart-datepicker-preset{display:block;width:100%;padding:10px 12px;background:transparent;border:none;border-radius:8px;color:var(--text-secondary);font-size:.85rem;text-align:left;cursor:pointer;transition:all .15s ease}.smart-datepicker-preset:hover{background:#3b82f61a;color:var(--primary-400)}.smart-datepicker-preset.active{background:var(--primary-500);color:#fff;font-weight:600}.smart-datepicker-calendar-section{padding:0 16px}.smart-datepicker-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--border-color)}.smart-datepicker-nav{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.smart-datepicker-nav:hover{background:var(--primary-500);border-color:var(--primary-500);color:#fff}.smart-datepicker-month{font-weight:700;font-size:.95rem;color:var(--text-primary)}.smart-datepicker-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:8px}.smart-datepicker-weekdays div{text-align:center;font-size:.75rem;font-weight:600;color:var(--text-muted);padding:4px 0}.smart-datepicker-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.smart-datepicker-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:.85rem;border-radius:8px;cursor:pointer;transition:all .15s ease;color:var(--text-secondary)}.smart-datepicker-day:hover:not(.empty){background:#3b82f633;color:var(--text-primary)}.smart-datepicker-day.empty{cursor:default}.smart-datepicker-day.today{border:2px solid var(--primary-500);color:var(--primary-400);font-weight:700}.smart-datepicker-day.selected{background:var(--primary-500);color:#fff;font-weight:700}.smart-datepicker-day.in-range{background:#3b82f633;border-radius:0}.smart-datepicker-day.range-start{border-radius:8px 0 0 8px}.smart-datepicker-day.range-end{border-radius:0 8px 8px 0}.smart-datepicker-day.range-single{border-radius:8px}.smart-datepicker-views{border-left:1px solid var(--border-color);padding-left:12px}.smart-datepicker-view{display:block;width:100%;padding:10px 12px;background:transparent;border:none;border-radius:8px;color:var(--text-secondary);font-size:.85rem;text-align:left;cursor:pointer;transition:all .15s ease}.smart-datepicker-view:hover{background:#3b82f61a;color:var(--primary-400)}.smart-datepicker-view.active{background:var(--primary-500);color:#fff;font-weight:600}.smart-datepicker-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--border-color);background:var(--bg-secondary);border-radius:0 0 16px 16px}.smart-datepicker-btn{padding:8px 16px;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.smart-datepicker-btn.secondary{background:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border-color)}.smart-datepicker-btn.secondary:hover{background:#ef44441a;color:var(--error-400);border-color:var(--error-400)}.smart-datepicker-btn.primary{background:var(--primary-500);color:#fff}.smart-datepicker-btn.primary:hover{background:var(--primary-600);transform:translateY(-1px)}.collection-chart-container{background:var(--bg-card);border-radius:16px;padding:1.5rem;border:1px solid var(--border-color)}.collection-bar{cursor:pointer;transition:all .2s ease}.collection-bar:hover{filter:brightness(1.2)}.collection-bar-clickable{cursor:pointer;transition:all .2s ease}.collection-bar-clickable:hover{opacity:.8}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:flex-start;justify-content:center;padding:5vh var(--spacing-4);z-index:var(--z-modal);animation:fadeIn var(--transition-fast)}.modal{width:100%;max-width:500px;max-height:85vh;display:flex;flex-direction:column;overflow:visible;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);animation:slideUp var(--transition-normal)}.modal-lg{max-width:800px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-5) var(--spacing-6);border-bottom:1px solid var(--border-color-light)}.modal-title{font-size:var(--font-size-lg);font-weight:600}.modal-body{padding:var(--spacing-6);flex:1;overflow-y:visible;overflow-x:visible}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-3);padding:var(--spacing-4) var(--spacing-6);border-top:1px solid var(--border-color-light);background:var(--bg-glass)}.modal-close{position:absolute;top:var(--spacing-4);right:var(--spacing-4);width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--bg-glass);border:1px solid var(--border-color);border-radius:var(--radius-full);color:var(--text-secondary);font-size:1.5rem;cursor:pointer;transition:all var(--transition-fast);z-index:10;line-height:1}.modal-close:hover{background:var(--bg-glass-hover);color:var(--text-primary);border-color:var(--border-color-hover);transform:rotate(90deg)}.form-input{width:100%;height:44px;padding:.75rem 1rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--font-size-sm);font-weight:500;transition:all var(--transition-fast);box-shadow:var(--shadow-sm)}select.form-input{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:14px;padding-right:36px;cursor:pointer;color-scheme:dark}select.form-input:focus{outline:none;border-color:var(--primary-500, #3b82f6);box-shadow:0 0 0 3px #3b82f626}select.form-input option{background:#1e293b;color:#f1f5f9;padding:10px 14px;font-size:.9rem}select.form-input option:checked{background:#334155;color:#fff}.datepicker-input{display:flex;align-items:center;gap:10px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:0 16px;height:44px;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm)}.dashboard-date-input{color-scheme:dark;font-family:inherit;color:var(--text-primary);background:transparent;border:none;font-size:var(--font-size-sm);font-weight:500}.dashboard-date-input::-webkit-calendar-picker-indicator{filter:invert(1);opacity:.7;cursor:pointer}.loan-edit-overlay{align-items:center;justify-content:center;padding:1rem;background:#000000b3}.loan-edit-modal{width:min(95vw,900px);max-height:90vh;overflow:auto;background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-color)}.loan-edit-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem;border-bottom:1px solid var(--border-color)}.loan-edit-title{margin:0}.loan-edit-close-btn{font-size:1.5rem;padding:.25rem .5rem}.loan-edit-body{padding:1.5rem}.loan-edit-warning{margin-bottom:1.5rem}.loan-edit-warning-copy{font-size:.85rem;margin-top:.25rem}.loan-edit-form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.loan-edit-inline-fields{display:flex;gap:.5rem}.loan-edit-inline-select{width:120px}.loan-edit-notes-group{margin-top:1rem}.loan-edit-summary-card{margin-top:1.5rem;padding:1rem;background:var(--bg-glass);border-radius:var(--radius-md);border:1px solid var(--border-color)}.loan-edit-summary-title{margin-bottom:.75rem}.loan-edit-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;font-size:.875rem}.loan-edit-summary-label{color:var(--text-muted)}.loan-edit-summary-value{font-weight:700}.loan-edit-summary-value-warning{color:var(--warning-500)}.loan-edit-summary-value-accent{color:var(--accent-400)}.loan-edit-footer{padding:1rem 1.5rem;border-top:1px solid var(--border-color);display:flex;justify-content:space-between;gap:.75rem}.loan-edit-footer-actions{display:flex;gap:.75rem}.loan-edit-preview-overlay{align-items:center;justify-content:center;padding:1rem;background:#000000d9;z-index:2000}.loan-edit-preview-modal{background:var(--bg-primary);border-radius:8px;max-width:900px;width:100%;max-height:90vh;overflow:auto;position:relative}.loan-edit-preview-header{position:sticky;top:0;background:var(--bg-primary);border-bottom:1px solid var(--border-color);padding:1rem;display:flex;justify-content:space-between;align-items:center;z-index:1}.loan-edit-preview-title{margin:0}.loan-edit-preview-body{padding:1rem}@media (max-width: 1100px){.loan-edit-form-grid,.loan-edit-summary-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 760px){.loan-edit-form-grid,.loan-edit-summary-grid{grid-template-columns:1fr}.loan-edit-body,.loan-edit-header,.loan-edit-footer{padding:1rem}.loan-edit-footer{flex-direction:column}.loan-edit-footer-actions{width:100%;justify-content:flex-end}}.payment-modal-dialog{max-width:520px;width:95%;padding:0;overflow:hidden;border-radius:20px;background:var(--bg-card);box-shadow:0 25px 50px -12px #00000080}.payment-modal-header{background:linear-gradient(135deg,var(--primary-600),var(--primary-800));padding:20px 24px;color:#fff;position:relative}.payment-modal-title{font-size:1.2rem;font-weight:600;color:#fff;margin-bottom:4px}.payment-modal-subtitle{opacity:.9;font-size:.85rem}.payment-modal-body{padding:20px;display:grid;gap:14px;max-height:70vh;overflow-y:auto}.payment-modal-latefee-box{padding:10px;background:#ef44441a;border-radius:10px;border:1px solid rgba(239,68,68,.3)}.payment-modal-latefee-row{display:flex;align-items:center;gap:6px;margin-bottom:6px}.payment-modal-latefee-icon{color:var(--error-500)}.payment-modal-latefee-text{font-weight:700;color:var(--error-500);font-size:.8rem}.payment-modal-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.payment-modal-type-option{display:flex;align-items:center;gap:6px;padding:8px 10px;background:transparent;border-radius:8px;cursor:pointer;border:1px solid transparent}.payment-modal-type-option.is-active{background:#3b82f61a;border-color:var(--primary-500)}.payment-modal-type-radio{accent-color:var(--primary-600)}.payment-modal-type-icon{color:var(--primary-500)}.payment-modal-type-label{font-weight:600;font-size:.85rem}.payment-modal-fields-grid{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:10px}.payment-modal-form-group{margin-bottom:0}.payment-modal-label{font-size:.75rem}.payment-modal-input{height:44px;border-radius:12px}.payment-modal-input-amount{font-weight:700;color:var(--primary-500)}.payment-modal-breakdown-box{padding:10px;background:var(--bg-secondary);border-radius:10px;border:1px dashed var(--primary-500)}.payment-modal-breakdown-title{font-weight:600;font-size:.75rem;margin-bottom:6px;display:flex;align-items:center;gap:6px}.payment-modal-breakdown-title-icon{color:var(--primary-400)}.payment-modal-breakdown-grid{display:grid;gap:4px;font-size:.8rem}.payment-modal-breakdown-row{display:flex;justify-content:space-between}.payment-modal-breakdown-value{font-weight:600}.payment-modal-breakdown-value.is-late{color:var(--error-400)}.payment-modal-breakdown-row-overflow{color:var(--primary-400)}.payment-modal-breakdown-note{margin-top:6px;padding:6px;border-radius:6px;font-size:.7rem}.payment-modal-breakdown-note.is-success{background:#10b9811a;color:var(--success-400)}.payment-modal-breakdown-note.is-warning{background:#f59e0b26;color:var(--warning-500)}.payment-modal-breakdown-note.is-info{background:#3b82f61a;color:var(--primary-400)}.payment-modal-breakdown-note-meta{opacity:.7}.payment-modal-evidence-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.payment-modal-upload-zone{cursor:pointer;border:2px dashed var(--border-color);border-radius:10px;padding:12px 10px;text-align:center;background:var(--bg-card);height:80px;display:flex;flex-direction:column;align-items:center;justify-content:center}.payment-modal-upload-zone.has-file{border-color:var(--success-500);background:#10b9810a}.payment-modal-upload-input{display:none}.payment-modal-upload-icon{color:var(--text-muted);margin-bottom:2px}.payment-modal-upload-icon-success{color:var(--success-500);margin-bottom:2px}.payment-modal-upload-label{font-size:.75rem;font-weight:600}.payment-modal-upload-label-success{font-size:.75rem;font-weight:600;color:var(--success-500)}.payment-modal-required{color:var(--error-500)}.payment-modal-comment-input{width:100%;height:80px;padding:8px;border-radius:10px;border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-primary);font-size:.8rem;resize:none;box-sizing:border-box}.payment-modal-category-select{width:100%;height:40px;padding:0 10px;border-radius:10px;border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-primary);font-size:.85rem;cursor:pointer}.payment-modal-footer{padding:16px 20px;background:var(--bg-secondary);display:flex;gap:10px;border-top:1px solid var(--border-color-light)}.payment-modal-footer-btn{flex:1;height:44px;border-radius:12px}.payment-modal-footer-btn-confirm{flex:1.5;font-weight:600}@media (max-width: 760px){.payment-modal-fields-grid,.payment-modal-evidence-grid,.payment-modal-type-grid{grid-template-columns:1fr}.payment-modal-footer{flex-direction:column}.payment-modal-footer-btn,.payment-modal-footer-btn-confirm{flex:1}}.backup-smtp-overlay{align-items:flex-start;overflow-y:auto;padding-top:3vh;padding-bottom:3vh}.backup-smtp-title-row,.backup-smtp-toggle-label,.backup-smtp-row-tight,.backup-smtp-auth-title{display:flex;align-items:center;gap:.75rem}.backup-smtp-icon-badge{width:42px;height:42px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:#3b82f61f;border:1px solid rgba(59,130,246,.25);color:var(--primary-300)}.backup-smtp-subtitle{font-size:.85rem;color:var(--text-muted)}.backup-smtp-card{padding:1rem}.backup-smtp-card-gap{margin-bottom:1rem}.backup-smtp-row-space,.backup-smtp-notify-option{display:flex;justify-content:space-between;align-items:center;gap:1rem}.backup-smtp-row-space{flex-wrap:wrap}.backup-smtp-check{width:16px;height:16px;accent-color:var(--primary-600)}.backup-smtp-strong{font-weight:800}.backup-smtp-tabs-top{margin-top:.75rem}.backup-smtp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.backup-smtp-fields{display:grid;gap:.75rem}.backup-smtp-block-title,.backup-smtp-field-label{font-size:.75rem;color:var(--text-muted);font-weight:900;text-transform:uppercase;letter-spacing:.06em}.backup-smtp-block-title{margin-bottom:10px}.backup-smtp-field-label{font-weight:800;margin-bottom:6px}.backup-smtp-port-grid{display:grid;grid-template-columns:140px 1fr;gap:.75rem;align-items:end}.backup-smtp-secure-label{display:flex;align-items:center;gap:10px;height:44px}.backup-smtp-auth-wrap{padding-top:.75rem;border-top:1px solid var(--border-color-light)}.backup-smtp-auth-title{gap:8px}.backup-smtp-notify-option{padding:.75rem;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-glass)}@media (max-width: 760px){.backup-smtp-port-grid{grid-template-columns:1fr}.backup-smtp-notify-option,.backup-smtp-row-space{gap:.75rem}}.confirm-modal-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2100;display:flex;align-items:center;justify-content:center;padding:1rem}.confirm-modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#020617ad;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.confirm-modal-panel{width:min(520px,100%);background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 24px 60px #00000073;position:relative;overflow:hidden}.confirm-modal-accent{height:4px;width:100%;background:var(--confirm-accent, #3b82f6)}.confirm-modal-body-wrap{padding:1.1rem}.confirm-modal-header-row{display:flex;align-items:flex-start;gap:12px}.confirm-modal-icon{width:42px;height:42px;border-radius:12px;background:var(--confirm-icon-bg, rgba(59, 130, 246, .12));color:var(--confirm-icon-color, #60a5fa);display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--confirm-icon-border, #60a5fa33);flex-shrink:0}.confirm-modal-text-wrap{min-width:0}.confirm-modal-title{margin:0;font-size:1.1rem;font-weight:800;color:var(--text-primary)}.confirm-modal-message{margin:.35rem 0 0;font-size:.9rem;color:var(--text-secondary)}.confirm-modal-actions{display:flex;justify-content:flex-end;gap:.55rem;margin-top:1rem}.modal-overlay-centered{align-items:center}.dropdown{position:relative}.dropdown-menu{position:absolute;top:100%;right:0;min-width:200px;margin-top:var(--spacing-2);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);opacity:0;visibility:hidden;transform:translateY(-10px);transition:all var(--transition-fast)}.dropdown-menu.open{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-item{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);font-size:var(--font-size-sm);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.dropdown-item:hover{background:var(--bg-glass);color:var(--text-primary)}.dropdown-item:first-child{border-radius:var(--radius-lg) var(--radius-lg) 0 0}.dropdown-item:last-child{border-radius:0 0 var(--radius-lg) var(--radius-lg)}.action-dropdown-item .action-icon{display:flex;align-items:center;justify-content:center;width:20px;opacity:.9}.action-dropdown-item .action-label{flex:1}.dropdown-divider{height:1px;background:var(--border-color-light);margin:var(--spacing-2) 0}.context-menu{position:fixed;z-index:9999;min-width:220px;background:var(--bg-card);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);padding:6px;display:flex;flex-direction:column;gap:2px;animation:contextMenuFadeIn .15s ease-out}.context-menu-item{display:flex;align-items:center;gap:12px;padding:8px 12px;width:100%;border:none;background:transparent;color:var(--text-primary);font-size:.85rem;font-weight:500;border-radius:var(--radius-md);cursor:pointer;transition:all .15s ease;text-align:left}.context-menu-item-wrap{position:relative}.context-menu-item.has-children{padding-right:10px}.context-menu-submenu-arrow{margin-left:auto;display:inline-flex;align-items:center}.context-menu-submenu{position:absolute;top:0;left:calc(100% + 8px);min-width:220px;background:var(--bg-card);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);box-shadow:var(--shadow-xl);border-radius:14px;padding:8px;z-index:10001}.context-menu-item svg{color:var(--text-muted);transition:color .15s ease}.context-menu-item:hover{background:var(--bg-glass-hover)}.context-menu-item:focus{outline:2px solid var(--primary-500);outline-offset:-2px;background:var(--bg-glass-hover)}.context-menu-item-primary:hover{background:rgba(var(--primary-rgb),.1);color:var(--primary-500)}.context-menu-item-primary:hover svg{color:var(--primary-500)}.context-menu-item-success:hover{background:#10b9811a;color:var(--success-500)}.context-menu-item-success:hover svg{color:var(--success-500)}.context-menu-item-warning:hover{background:#f59e0b1a;color:var(--warning-500)}.context-menu-item-warning:hover svg{color:var(--warning-500)}.context-menu-item-danger:hover{background:#ef44441a;color:var(--error-500)}.context-menu-item-danger:hover svg{color:var(--error-500)}.toast-container{position:fixed;z-index:500;display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast-container-global{top:var(--spacing-6);right:var(--spacing-6);align-items:flex-end}.toast-container-fab{bottom:24px;right:92px;align-items:flex-end;display:flex;flex-direction:column-reverse}.toast{pointer-events:auto;min-width:260px;max-width:420px;height:48px;background:#0f172afa;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:0 14px;box-shadow:0 10px 40px -5px #000000b3;display:flex;align-items:center;gap:12px;color:#fff;position:relative;overflow:visible;transform-origin:right center;animation:slideFromFab .45s cubic-bezier(.2,1.4,.3,1) forwards;transition:opacity .4s ease;z-index:500}.toast:after{content:"";position:absolute;top:50%;right:-8px;width:14px;height:28px;background:inherit;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:50%;transform:translateY(-50%) scaleX(0);z-index:-1;opacity:0;animation:liquidGota .45s cubic-bezier(.2,1.4,.3,1) forwards}@keyframes liquidGota{0%{opacity:0;transform:translateY(-50%) scaleX(.2) translate(8px)}50%{opacity:1;transform:translateY(-50%) scaleX(1.3) translate(0)}to{opacity:0;transform:translateY(-50%) scaleX(0) translate(0)}}.toast.hiding{pointer-events:none;animation:slideToFab .4s cubic-bezier(.4,0,1,1) forwards}@keyframes slideToFab{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(14px) scale(.6)}}.toast-accent{position:absolute;left:0;top:0;bottom:0;width:6px}.toast-icon-wrapper{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.toast-icon-svg{width:16px;height:16px;stroke-width:3}.toast-message{flex:1;font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#f8fafc}.toast-close{background:none;border:none;padding:4px;color:#ffffff4d;cursor:pointer;border-radius:6px;transition:all .2s;display:flex}.toast-close:hover{background:#ffffff14;color:#fff}.toast-success .toast-accent{background:#10b981}.toast-success .toast-icon-wrapper{background:#10b98140;color:#10b981}.toast-success .toast-message{color:#d1fae5}.toast-success{border-color:#10b98133}.toast-error .toast-accent{background:#ef4444}.toast-error .toast-icon-wrapper{background:#ef444440;color:#ef4444}.toast-error .toast-message{color:#fee2e2}.toast-error{border-color:#ef444433}.toast-warning .toast-accent{background:#f59e0b}.toast-warning .toast-icon-wrapper{background:#f59e0b40;color:#f59e0b}.toast-warning .toast-message{color:#fef3c7}.toast-warning{border-color:#f59e0b33}.toast-info .toast-accent{background:#3b82f6}.toast-info .toast-icon-wrapper{background:#3b82f640;color:#3b82f6}.toast-info .toast-message{color:#dbeafe}.toast-info{border-color:#3b82f633}@keyframes slideFromFab{0%{opacity:0;transform:translate(14px) scale(.6)}to{opacity:1;transform:translate(0) scale(1)}}.wizard{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);overflow:hidden}.wizard-header{padding:var(--spacing-6);border-bottom:1px solid var(--border-color-light)}.wizard-steps,.wizard-step{display:flex;align-items:center;gap:var(--spacing-2)}.wizard-step-number{width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:600;border-radius:var(--radius-full);background:var(--bg-glass);border:2px solid var(--border-color);color:var(--text-secondary);transition:all var(--transition-normal)}.wizard-step.active .wizard-step-number{background:var(--primary-600);border-color:var(--primary-600);color:#fff;box-shadow:var(--shadow-glow)}.wizard-step.completed .wizard-step-number{background:var(--success-600);border-color:var(--success-600);color:#fff}.wizard-step-label{font-size:var(--font-size-sm);color:var(--text-muted);display:none}@media (min-width: 768px){.wizard-step-label{display:block}.wizard-step.active .wizard-step-label{color:var(--text-primary);font-weight:500}}.wizard-step-divider{flex:1;height:2px;background:var(--border-color);min-width:20px}.wizard-step.completed+.wizard-step-divider,.wizard-step-divider.completed{background:var(--success-600)}.wizard-body{padding:var(--spacing-6);min-height:300px}.wizard-footer{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-4) var(--spacing-6);border-top:1px solid var(--border-color-light);background:var(--bg-glass)}.table-compact{font-size:.85rem}.table-compact th,.table-compact td{padding:.75rem 1rem!important}.table-container::-webkit-scrollbar{width:6px;height:6px}.table-container::-webkit-scrollbar-track{background:transparent}.table-container::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:10px}.table-container::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.rate-table-tier-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.rate-table-tier-copy{display:grid;gap:.3rem;min-width:0}.rate-table-tier-kicker{font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.rate-table-tier-title{margin:0;font-size:1.1rem}.rate-table-tier-subtitle{margin:0;color:var(--text-secondary);font-size:.86rem;line-height:1.45}.rate-table-empty-cell{padding:2.5rem 1.5rem!important}.rate-table-empty-state{display:grid;gap:.4rem;text-align:center}.rate-table-empty-title{font-size:.98rem;font-weight:700;color:var(--text-primary)}.rate-table-empty-copy{font-size:.84rem;color:var(--text-secondary);line-height:1.5;max-width:420px;margin:0 auto}.upload-zone{border:2px dashed var(--border-color);border-radius:12px;padding:2rem;text-align:center;cursor:pointer;background:#ffffff05;transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:.5rem}.upload-zone:hover{border-color:var(--primary-500);background:rgba(var(--primary-rgb),.05)}.upload-zone.has-file{border-color:var(--success-500);background:#10b9810d}.attachment-chip{display:inline-flex;align-items:center;gap:.4rem;padding:2px 8px;background:rgba(var(--primary-rgb),.1);color:var(--primary-400);border-radius:20px;font-size:.75rem;font-weight:600;cursor:pointer;border:1px solid rgba(var(--primary-rgb),.2);transition:all .2s}.attachment-chip:hover{background:rgba(var(--primary-rgb),.2);transform:translateY(-1px)}.attachment-chip.success{background:#10b9811a;color:#34d399;border-color:#10b98133}.btn-upload-small{padding:4px 8px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-muted);font-size:.75rem;display:flex;align-items:center;gap:4px;cursor:pointer;transition:all .2s}.btn-upload-small:hover{color:var(--primary-400);border-color:var(--primary-500)}.badge-pending{background:#f59e0b1a;color:#fbbf24;border:1px solid rgba(245,158,11,.2)}.form-input-static{padding:.75rem;background:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--border-color)}.dashboard-page{animation:fadeIn .4s ease-out}.dashboard-header{margin-bottom:var(--spacing-8)}.dashboard-header-row{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;flex-wrap:wrap}.dashboard-greeting{font-size:1.75rem;margin-bottom:4px}.dashboard-greeting-subtitle{margin:0}.dashboard-header-filters{display:flex;flex-direction:column;align-items:flex-end;gap:12px}.summary-grid-dashboard{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-6);margin-bottom:var(--spacing-8)}.dashboard-section-title{margin-bottom:var(--spacing-4);font-size:1.1rem;font-weight:600}.dashboard-periods{display:flex;gap:var(--spacing-2);margin-bottom:var(--spacing-6);background:var(--bg-glass);padding:4px;border-radius:var(--radius-xl);width:fit-content}.period-btn{padding:6px 16px;border-radius:var(--radius-lg);font-size:var(--font-size-sm);font-weight:500;color:var(--text-secondary);border:none;background:transparent;cursor:pointer;transition:all var(--transition-fast)}.period-btn:hover{color:var(--text-primary);background:var(--bg-glass)}.period-btn.active{color:#fff;background:var(--primary-600);box-shadow:var(--shadow-sm)}.dashboard-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:var(--spacing-6)}@media (max-width: 1024px){.dashboard-layout{grid-template-columns:1fr}}.alerts-row{display:flex;gap:var(--spacing-4);margin-bottom:var(--spacing-6);overflow-x:auto;padding-bottom:8px}.alert-card{flex:1;min-width:280px;padding:var(--spacing-4);background:var(--bg-card);border-radius:var(--radius-lg);border-left:4px solid var(--border-color);display:flex;align-items:center;gap:var(--spacing-4);transition:transform var(--transition-fast);cursor:pointer}.alert-card-icon{width:36px;height:36px;border-radius:50%;background:var(--bg-glass);display:flex;align-items:center;justify-content:center}.alert-card-action{padding:4px 8px}.alert-card:hover{transform:translateY(-2px)}.alert-card.critical{border-left-color:var(--error-500)}.alert-card.warning{border-left-color:var(--warning-500)}.alert-card.info{border-left-color:var(--info-500)}.alert-content{flex:1}.alert-title{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary)}.alert-desc{font-size:var(--font-size-xs);color:var(--text-muted)}.timeline{position:relative;padding-left:24px}.timeline:before{content:"";position:absolute;left:7px;top:0;bottom:0;width:2px;background:var(--border-color-light)}.timeline-item{position:relative;padding-bottom:var(--spacing-6)}.timeline-marker{position:absolute;left:-24px;width:16px;height:16px;border-radius:var(--radius-full);background:var(--bg-primary);border:2px solid var(--primary-500);z-index:1}.timeline-content{background:var(--bg-glass);padding:var(--spacing-3) var(--spacing-4);border-radius:var(--radius-lg);border:1px solid var(--border-color-light)}.quick-action-btn{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-2);padding:var(--spacing-6);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-xl);transition:all var(--transition-normal);cursor:pointer;text-align:center}.quick-action-btn:hover{background:var(--bg-card-hover);border-color:var(--primary-400);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.quick-action-btn svg{color:var(--primary-500);margin-bottom:4px}.quick-action-btn .badge{position:absolute;top:12px;right:12px}.h-full{height:100%}.card-fixed{min-height:400px}@media (max-width: 1024px){.summary-grid-dashboard{grid-template-columns:repeat(2,1fr)!important}}@media (max-width: 640px){.summary-grid-dashboard{grid-template-columns:1fr!important}}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease-out forwards}.hover-scale{transition:transform .2s cubic-bezier(.4,0,.2,1)}.hover-scale:hover{transform:translateY(-2px) scale(1.01);z-index:1}@media print{.modal-overlay{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:transparent!important}}.modal-preview{width:fit-content!important;min-width:auto!important;max-width:95vw!important;display:table!important;margin:0 auto}.quick-action-label{font-size:var(--font-size-sm);font-weight:600}.kpi-card{padding:14px 16px;display:flex;flex-direction:column;gap:8px;height:90px;position:relative}.kpi-card-row{display:flex;align-items:center;gap:10px}.kpi-card-icon{width:32px;height:32px;border-radius:10px;background:var(--kpi-bg);color:var(--kpi-color);display:flex;align-items:center;justify-content:center;flex-shrink:0}.kpi-card-value{font-size:22px;font-weight:600;color:var(--text-primary);line-height:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.kpi-card-chevron{color:var(--text-muted);flex-shrink:0;opacity:.5}.kpi-card-label{font-size:12.5px;color:var(--text-muted);font-weight:500;opacity:.85;line-height:1.3}.dashboard-activity-card{display:flex;flex-direction:column}.dashboard-activity-body{flex:1}.dashboard-timeline-row{display:flex;justify-content:space-between;margin-bottom:4px}.dashboard-timeline-amount{font-weight:600;font-size:var(--font-size-sm)}.dashboard-timeline-date{font-size:var(--font-size-xs);color:var(--text-muted)}.dashboard-timeline-meta{font-size:var(--font-size-xs);color:var(--text-secondary)}.dashboard-right-column{display:flex;flex-direction:column;gap:var(--spacing-6)}.dashboard-card-header-inline{display:flex;justify-content:space-between;align-items:center}.dashboard-validate-body{padding:12px 16px}.dashboard-status-chips{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}.dashboard-status-badge{font-size:11px;padding:4px 10px}.dashboard-status-badge-overdue{background:#991b1b}.dashboard-validation-list{display:flex;flex-direction:column;gap:8px}.dashboard-validation-empty{padding:20px;text-align:center;color:var(--text-muted);font-size:.875rem}.dashboard-validation-item{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#ffffff05;border:1px solid rgba(255,255,255,.05);border-radius:8px;font-size:.8rem;gap:12px}.dashboard-validation-main{flex:1;min-width:0}.dashboard-validation-client{font-weight:600;font-size:.85rem;margin-bottom:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-validation-meta{color:var(--text-muted);font-size:.75rem}.dashboard-validation-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.dashboard-validation-status{font-size:.7rem;padding:3px 8px;border-radius:4px;background:var(--status-bg);color:var(--status-color);font-weight:600;white-space:nowrap}.dashboard-validation-cta{font-size:.75rem;padding:4px 10px;white-space:nowrap}.dashboard-projection-card{flex:1}.dashboard-projection-body{padding:8px 16px 24px 8px}.dashboard-projection-chart{height:180px;width:100%;min-width:0}.dashboard-projection-legend{display:flex;justify-content:center;gap:24px;margin-top:16px}.dashboard-projection-legend-item{display:flex;align-items:center;gap:6px;font-size:.75rem;color:var(--text-muted)}.dashboard-projection-dot{width:8px;height:8px;border-radius:50%;background:var(--success-500)}.dashboard-projection-dash{width:12px;height:8px;border-top:2px dashed var(--primary-500)}.client-pie-container{background:var(--bg-card);border-radius:16px;padding:1.5rem;border:1px solid var(--border-color)}.client-legend-item{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:8px;transition:all .2s ease;cursor:pointer}.client-legend-item:hover{background:#ffffff0d}.client-legend-color{width:12px;height:12px;border-radius:4px;flex-shrink:0}.client-legend-name{flex:1;font-size:.85rem;color:var(--text-primary)}.client-legend-value{font-weight:700;font-size:.85rem;color:var(--text-primary)}.client-legend-percent{font-size:.75rem;color:var(--text-muted);min-width:40px;text-align:right}.documents-page-header{margin-bottom:1.5rem;display:flex;justify-content:space-between;align-items:center;gap:1rem}.documents-page-header-actions{display:flex;gap:10px}.documents-mode-tabs{margin-bottom:1rem}.documents-toolbar-card{overflow:visible;z-index:var(--z-dropdown)}.documents-toolbar-body{padding:.75rem;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.documents-toolbar-right{display:flex;align-items:center;gap:16px;margin-left:auto;flex-wrap:wrap}.documents-filter-chip-row{display:flex;gap:8px;flex-wrap:wrap}.documents-filter-chip{border:none}.documents-view-toggle-container{gap:4px;border-radius:8px;padding:4px}.documents-view-toggle-btn{padding:4px 8px;height:auto;border-radius:6px}.documents-list-groups{display:flex;flex-direction:column;gap:1rem}.documents-trash-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-bottom:1rem}.documents-trash-stat-card{padding:1rem 1.1rem}.documents-trash-stat-label{font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-weight:800}.documents-trash-stat-value{margin-top:.45rem;font-size:1.55rem;font-weight:800;color:var(--text-primary)}.documents-trash-card{overflow:hidden}.documents-trash-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.documents-trash-title{font-size:1rem;font-weight:800;color:var(--text-primary)}.documents-trash-copy{margin-top:.35rem;font-size:.86rem;color:var(--text-secondary)}.documents-trash-table{width:100%}.documents-trash-main-text{font-weight:700;color:var(--text-primary)}.documents-trash-subtext{margin-top:.2rem;font-size:.8rem;color:var(--text-muted)}.documents-group-card{border:1px solid var(--border-color);transition:all .3s ease;overflow:visible}.documents-folder-upload-btn{white-space:nowrap;flex-shrink:0;min-height:40px}.documents-group-header{padding:16px 20px;background:var(--bg-secondary);cursor:pointer;display:flex;justify-content:space-between;align-items:center;border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl);border-left:4px solid transparent}.documents-group-header.is-expanded{border-left-color:var(--primary-500)}.documents-group-main{display:flex;align-items:center;gap:16px}.documents-group-folder-icon{width:48px;height:48px;border-radius:12px;background:#3b82f615;color:#3b82f6;display:flex;align-items:center;justify-content:center}.documents-group-client-name{font-weight:600;font-size:1.05rem;color:var(--text-primary)}.documents-group-meta{font-size:.85rem;color:var(--text-secondary)}.documents-group-chevron{color:var(--text-secondary)}.documents-group-content{background:var(--bg-tertiary);border-top:1px solid var(--border-color)}.documents-doc-row{display:grid;grid-template-columns:minmax(250px,1fr) auto auto 140px;align-items:center;gap:16px;padding:16px 20px;border-bottom:1px solid var(--border-color);background:var(--bg-card);font-size:.9rem;transition:all .2s}.documents-doc-main{display:flex;align-items:center;gap:16px}.documents-doc-icon{width:42px;height:42px;border-radius:12px;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 6px -1px #0000001a}.documents-doc-icon-contract{background:#3b82f6}.documents-doc-icon-receipt{background:#10b981}.documents-doc-number{font-weight:600;color:var(--text-primary);font-size:.95rem}.documents-doc-date{font-size:.8rem;color:var(--text-secondary)}.documents-doc-spacer{min-height:1px}.documents-doc-status-wrap{display:flex;justify-content:center}.documents-doc-status{font-size:.7rem;padding:4px 10px;border-radius:12px;background:var(--documents-doc-status-bg);color:var(--documents-doc-status-text);border:1px solid var(--documents-doc-status-border);font-weight:700;letter-spacing:.4px;text-transform:uppercase;display:flex;align-items:center;gap:5px}.documents-doc-status-dot{width:5px;height:5px;border-radius:50%;background:var(--documents-doc-status-text)}.documents-doc-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.documents-grid-view{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px}.documents-grid-card{border:1px solid var(--border-color);height:100%;border-radius:20px;overflow:visible;transition:all .3s cubic-bezier(.16,1,.3,1);background:var(--bg-card)}.documents-grid-card-body{padding:24px;position:relative;border-radius:20px}.documents-grid-pending-badge{position:absolute;top:12px;right:12px;background:#f59e0b1a;color:#f59e0b;padding:4px 8px;border-radius:8px;font-size:10px;font-weight:800;border:1px solid rgba(245,158,11,.2);letter-spacing:.5px;display:flex;align-items:center;gap:4px;z-index:10}.documents-grid-pending-dot{width:4px;height:4px;border-radius:50%;background:#f59e0b}.documents-grid-header-row{display:flex;align-items:center;gap:14px;margin-bottom:24px}.documents-grid-folder-icon{width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,#3b82f633,#3b82f60d);color:var(--primary-500);display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 1px #3b82f61a}.documents-grid-client-meta{overflow:hidden;flex:1}.documents-grid-client-meta.has-pending{padding-right:80px}.documents-grid-client-name{font-weight:700;font-size:1.05rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-primary);margin-bottom:2px}.documents-grid-loan-number{font-size:.85rem;color:var(--text-secondary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.documents-grid-thumb-list{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.documents-grid-thumb{aspect-ratio:1;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 6px -1px #0000001a;cursor:pointer;transition:transform .2s cubic-bezier(.175,.885,.32,1.275)}.documents-grid-thumb.is-contract{background:linear-gradient(135deg,#3b82f6,#2563eb)}.documents-grid-thumb.is-receipt{background:linear-gradient(135deg,#10b981,#059669)}.documents-grid-thumb-more{aspect-ratio:1;border-radius:12px;background:var(--bg-secondary);display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;color:var(--text-secondary);border:2px dashed var(--border-color);opacity:.8}.documents-folder-footer{margin-top:20px;padding-top:16px;border-top:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:color .2s}.documents-folder-footer-label{font-size:.8rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.documents-folder-footer-icon{width:32px;height:32px;border-radius:50%;background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center}.documents-folder-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#00000080}.documents-folder-modal{max-width:1000px;width:95vw;height:90vh;border-radius:16px;display:flex;flex-direction:column}.documents-folder-modal-header{padding:16px 24px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.documents-folder-modal-title-wrap{display:flex;align-items:center;gap:16px}.documents-folder-modal-folder-icon{width:40px;height:40px;border-radius:10px;background:#3b82f615;color:#3b82f6;display:flex;align-items:center;justify-content:center}.documents-folder-modal-client-name{font-weight:600;font-size:1.1rem;color:var(--text-primary)}.documents-folder-modal-meta{font-size:.85rem;color:var(--text-secondary)}.documents-folder-modal-body{background:var(--bg-tertiary);padding:0;overflow:visible}.documents-folder-modal-footer{padding:16px;background:var(--bg-secondary);border-top:1px solid var(--border-color);display:flex;justify-content:flex-end}.documents-doc-choice-btn{width:100%;border:1px solid var(--border-color);border-radius:14px;background:var(--bg-secondary);color:var(--text-primary);display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.95rem 1rem;text-align:left;transition:all .2s ease}.documents-doc-choice-btn:hover{border-color:#3b82f659;background:#3b82f614;transform:translateY(-1px)}.documents-doc-choice-main{display:flex;align-items:center;gap:.85rem}.documents-doc-choice-meta{display:block;margin-top:.2rem;font-size:.8rem;color:var(--text-secondary)}.documents-doc-choice-arrow{color:var(--text-secondary);display:inline-flex;align-items:center}@media (max-width: 980px){.documents-page-header{align-items:flex-start;flex-direction:column}.documents-toolbar-right{margin-left:0;width:100%;justify-content:space-between}.documents-doc-row{grid-template-columns:1fr;gap:10px}.documents-trash-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.documents-doc-status-wrap,.documents-doc-actions{justify-content:flex-start}.documents-grid-thumb-list{grid-template-columns:repeat(3,1fr)}}@media (max-width: 640px){.documents-trash-summary-grid{grid-template-columns:1fr}}@media (max-width: 760px){.documents-toolbar-body{gap:12px}.documents-filter-chip-row{width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}.documents-grid-view{grid-template-columns:1fr;gap:16px}.documents-grid-thumb-list{grid-template-columns:repeat(4,1fr);gap:10px}.documents-folder-modal{width:100%;height:95vh}.documents-folder-modal-header{padding:14px 16px}}.client-detail-page{display:grid;gap:1.5rem}.client-detail-back-btn{margin-bottom:.5rem}.client-detail-header-badges{display:flex;gap:.5rem;margin-top:.5rem}.client-detail-header-actions{display:flex;gap:.5rem;flex-wrap:wrap}.client-detail-whatsapp-wrap{position:relative}.client-whatsapp-picker-modal{width:min(640px,88vw);max-height:min(78vh,680px);overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr) auto}.client-whatsapp-picker-subtitle{margin-top:.2rem;color:var(--text-muted);font-size:.88rem}.client-whatsapp-picker-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;max-height:300px;overflow-y:auto;padding-right:.25rem}.client-whatsapp-picker-card{display:flex;align-items:flex-start;gap:.65rem;width:100%;text-align:left;padding:.8rem .9rem;border-radius:14px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;color:var(--text-primary);transition:all .18s ease}.client-whatsapp-picker-card:hover,.client-whatsapp-picker-card.is-active{background:#3b82f61f;border-color:#3b82f659}.client-whatsapp-picker-card-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--success-400);margin-top:2px;flex-shrink:0}.client-whatsapp-picker-card-copy{display:grid;gap:.18rem;min-width:0}.client-whatsapp-picker-card-title{font-weight:700;font-size:.96rem;color:var(--text-primary)}.client-whatsapp-picker-card-desc{font-size:.8rem;color:var(--text-muted);line-height:1.35}.client-whatsapp-picker-preview{margin-top:.85rem;display:grid;gap:.4rem}.client-whatsapp-picker-preview-title{font-size:.92rem;font-weight:700;color:var(--text-primary)}.client-whatsapp-picker-preview-box{min-height:100px;max-height:170px;overflow-y:auto;padding:.9rem 1rem;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;line-height:1.5;font-size:.95rem;color:var(--text-primary);white-space:pre-wrap}.client-detail-grid{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr);gap:1.5rem;align-items:stretch}.client-detail-left-col,.client-detail-right-col{display:flex;flex-direction:column;gap:1.5rem}.client-detail-secondary-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;align-items:start}.client-detail-grid>.card,.client-detail-grid .card.client-detail-info-card,.client-detail-grid .card.client-detail-loans-card,.client-detail-grid .card.client-detail-score-card,.client-detail-grid .card.client-detail-documents-card{height:100%}.client-detail-info-card,.client-detail-loans-card{min-height:360px}.client-detail-score-card,.client-detail-documents-card{min-height:370px}.client-detail-info-card{grid-column:1;grid-row:1}.client-detail-loans-card{grid-column:2;grid-row:1}.client-detail-score-card{grid-column:1;grid-row:2}.client-detail-documents-card{grid-column:2;grid-row:2}.client-detail-info-body{display:grid;gap:.75rem;font-size:.875rem}.client-detail-address-note{color:var(--text-secondary);margin-left:.5rem;font-style:italic}.client-detail-company-contact-card{margin-top:.5rem;padding:.75rem;background:var(--bg-glass);border-radius:var(--radius-md)}.client-detail-company-contact-phone{font-size:.75rem;color:var(--text-muted)}.client-detail-registered{margin-top:.5rem;color:var(--text-secondary);font-size:.75rem}.client-detail-score-header{display:flex;justify-content:space-between;align-items:center}.client-detail-score-badge{font-size:.85rem}.client-detail-score-wrap{text-align:center;margin-bottom:1rem}.client-detail-score-card .card-body,.client-detail-documents-body{height:100%}.client-detail-score-value{font-size:2.5rem;font-weight:700;color:var(--client-score-color)}.client-detail-score-caption{font-size:.75rem;color:var(--text-muted)}.client-detail-score-track{margin-top:.5rem;height:8px;background:var(--bg-tertiary);border-radius:4px;overflow:hidden}.client-detail-score-fill{width:var(--client-score-fill);height:100%;background:var(--client-score-fill-color);border-radius:4px;transition:width .5s ease}.client-detail-score-breakdown{font-size:.8rem;display:grid;gap:.5rem;border-top:1px solid var(--border-color);padding-top:1rem}.client-detail-score-row{display:flex;justify-content:space-between}.client-detail-score-row.is-success{color:var(--success-500)}.client-detail-score-row.is-error{color:var(--error-500)}.client-detail-score-value-mini{font-weight:600}.client-detail-score-footnote{margin-top:1rem;font-size:.7rem;color:var(--text-muted);text-align:center}.client-detail-doc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;align-items:stretch}.client-detail-doc-card{padding:.55rem;border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-md);background:#ffffff05;height:100%}.client-detail-doc-label{font-size:.75rem;margin-bottom:.5rem;color:var(--text-muted)}.client-detail-doc-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.5rem}.client-detail-doc-image{width:100%;height:158px;object-fit:cover;object-position:center;border-radius:var(--radius-md);border:1px solid var(--border-color);cursor:pointer}.client-detail-loans-header{display:flex;justify-content:space-between;align-items:center}.client-detail-empty-loans{text-align:center;padding:2rem;color:var(--text-muted)}.client-detail-empty-loans-btn{margin-top:1rem}.client-detail-loans-list{display:flex;flex-direction:column;gap:.7rem;flex:1}.client-detail-loans-body{padding-top:.75rem;height:100%;display:flex;flex-direction:column}.client-detail-loan-item{padding:.8rem .9rem;border-radius:var(--radius-md);background:var(--bg-glass);cursor:pointer;border:1px solid rgba(255,255,255,.06);box-shadow:0 8px 20px #00000024}.client-detail-loan-item-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.client-detail-loan-copy{min-width:0}.client-detail-loan-amount{font-weight:600;font-size:.95rem}.client-detail-loan-date{font-size:.75rem;color:var(--text-muted)}.client-detail-loan-meta{margin-top:.55rem;padding-top:.55rem;border-top:1px solid rgba(255,255,255,.06);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem .75rem}.client-detail-loan-meta-item{display:grid;gap:.16rem}.client-detail-loan-meta-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.client-detail-loan-meta-value{font-size:.8rem;font-weight:600;color:var(--text-primary)}@media (max-width: 980px){.client-detail-grid{grid-template-columns:1fr}.client-detail-left-col,.client-detail-right-col,.client-detail-secondary-grid{display:flex;flex-direction:column;gap:1.5rem}.client-detail-info-card,.client-detail-loans-card,.client-detail-score-card,.client-detail-documents-card{min-height:0;grid-column:auto;grid-row:auto}}@media (min-width: 981px){.client-detail-left-col,.client-detail-right-col,.client-detail-secondary-grid{display:contents}}@media (max-width: 760px){.client-detail-doc-grid{grid-template-columns:1fr}.client-detail-header-actions{width:100%}.client-detail-loan-meta,.client-whatsapp-picker-grid{grid-template-columns:1fr}}.security-card-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap}.security-role-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem}.security-role-card{border:1px solid var(--border-color);display:flex;flex-direction:column}.security-role-description{min-height:40px}.security-user-modal{max-width:500px}.security-role-overlay{display:flex;align-items:center;justify-content:center;padding:1rem}.security-role-modal{width:90vw;max-width:1000px;max-height:85vh;display:flex;flex-direction:column;padding:0;overflow:hidden}.security-role-modal-header{padding:1.5rem;border-bottom:1px solid var(--border-color);background:var(--bg-tertiary)}.security-role-modal-grid{display:grid;grid-template-columns:350px 1fr;flex:1;overflow:hidden}.security-role-left-col{padding:1.5rem;border-right:1px solid var(--border-color);overflow-y:auto;background:var(--bg-secondary)}.security-role-divider{height:1px;background:var(--border-color)}.security-role-right-col{padding:1.5rem;overflow-y:auto;background:var(--bg-primary)}.security-role-footer{padding:1.5rem;background:var(--bg-tertiary);border-top:1px solid var(--border-color);display:flex;gap:.75rem;justify-content:flex-end}.security-role-footer-btn{height:44px;padding-left:2rem;padding-right:2rem}.security-role-footer-btn-secondary{box-shadow:var(--shadow-sm)}.security-role-footer-btn-primary{font-size:1rem;box-shadow:var(--shadow-md)}.security-reset-modal{max-width:350px}@media (max-width: 1100px){.security-role-modal-grid{grid-template-columns:1fr}.security-role-left-col{border-right:none;border-bottom:1px solid var(--border-color)}}@media (max-width: 760px){.security-role-modal,.security-user-modal,.security-reset-modal{width:100%;max-width:100%}.security-role-footer{flex-direction:column}}.cash-register-closed-card{max-width:400px;margin:0 auto;text-align:center}.cash-register-closed-body{padding:2rem}.cash-register-closed-icon{font-size:3rem;margin-bottom:1rem}.cash-register-closed-copy{color:var(--text-muted);margin-bottom:1.5rem}.cash-register-open-form-group{margin-bottom:1rem}.cash-register-open-btn{width:100%}.cash-register-open-alert{margin-bottom:1.5rem}.cash-register-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.cash-register-stat-card{padding:1rem}.cash-register-stat-label{font-size:.75rem;color:var(--text-muted)}.cash-register-stat-value{font-size:1.5rem;font-weight:700}.cash-register-stat-value-success{color:var(--success-500)}.cash-register-stat-value-primary{color:var(--primary-400)}.cash-register-stat-value-accent{color:var(--accent-400)}.cash-register-payments-card{margin-bottom:1.5rem}.cash-register-empty-payments{color:var(--text-muted)}.cash-register-payments-list{display:flex;flex-direction:column;gap:.5rem}.cash-register-payment-row{display:flex;justify-content:space-between;padding:.75rem;background:var(--bg-glass);border-radius:var(--radius-md)}.cash-register-payment-method{margin-right:.5rem}.cash-register-payment-time{color:var(--text-muted);font-size:.875rem}.cash-register-actions-row{display:flex;gap:1rem}.cash-register-close-summary{margin-bottom:1rem}.cash-register-close-row{display:flex;justify-content:space-between;margin-bottom:.5rem}.cash-register-close-row-total{padding-top:.5rem;border-top:1px solid var(--border-color)}@media (max-width: 980px){.cash-register-stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 760px){.cash-register-stats-grid{grid-template-columns:1fr}.cash-register-actions-row{flex-direction:column}.cash-register-payment-row{flex-direction:column;gap:.5rem}}.clients-page-shell{padding-bottom:2rem}.clients-header{margin-bottom:1.5rem}.clients-header-actions{display:flex;align-items:center;gap:1rem}.clients-header-divider{width:1px;height:24px;background:var(--border-color)}.clients-delete-btn{display:flex;align-items:center;gap:.5rem}.clients-new-icon{margin-right:6px}.clients-filter-card{overflow:visible;z-index:var(--z-dropdown)}.clients-filter-body{padding:.75rem;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.clients-filter-chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px}.clients-filter-chips .filter-chip{border:none}.clients-view-toggle{margin:0 8px}.clients-advanced-wrap{position:relative}.clients-advanced-btn{padding:8px 12px}.clients-advanced-btn.active{border-color:var(--primary-500);background:#3b82f61a;color:var(--primary-500)}.clients-advanced-badge{margin-left:6px;font-size:.7rem}.clients-filter-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:calc(var(--z-dropdown) + 1);background:transparent}.clients-filter-dropdown{position:absolute;width:300px;z-index:calc(var(--z-dropdown) + 2);padding:1rem;box-shadow:var(--shadow-xl);border:1px solid var(--border-color);background:var(--bg-secondary);animation:fadeIn .2s ease-out}.clients-filter-dropdown-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.clients-filter-dropdown-title{margin:0;font-size:.9rem;display:flex;align-items:center;gap:8px}.clients-filter-clear{font-size:.75rem;background:none;border:none;cursor:pointer}.clients-filter-tag-list{display:flex;flex-direction:column;gap:4px;max-height:300px;overflow-y:auto}.clients-filter-tag-row{padding:8px 12px;border-radius:6px;cursor:pointer;background:transparent;display:flex;align-items:center;justify-content:space-between;transition:all .2s ease;margin-bottom:2px}.clients-filter-tag-row:hover{background:#ffffff0d}.clients-filter-tag-row.selected{background:#3b82f633}.clients-filter-tag-row.selected .clients-filter-tag-label{color:var(--primary-400)}.clients-filter-tag-label{font-size:.85rem;color:var(--text-secondary)}.clients-filter-empty{font-size:.8rem;padding:.5rem}.clients-tag-badge{font-size:.65rem}.badge-purple{background:#8b5cf6;color:#fff}.clients-table-row{cursor:pointer;border-left:3px solid transparent;transition:all .15s ease}.clients-table-row.is-selected{background:#3b82f60d;border-left-color:var(--primary-500);font-weight:600;color:var(--primary-400)}.clients-table-client-cell{display:flex;align-items:center;gap:.75rem}.clients-table-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--primary-500),var(--primary-700));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:.875rem;flex-shrink:0}.clients-table-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.clients-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.clients-col-actions{width:100px}.clients-table-name{font-weight:500}.clients-grid-card{position:relative;border:1px solid var(--border-color);box-shadow:var(--shadow-sm);background:var(--bg-card);transition:all .2s cubic-bezier(.4,0,.2,1)}.clients-grid-card-body{padding:16px}.clients-grid-head{display:flex;gap:12px;margin-bottom:12px}.clients-grid-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--primary-500),var(--primary-700));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:1.2rem;flex-shrink:0}.clients-grid-main{flex:1;min-width:0}.clients-grid-name{font-weight:600;font-size:1rem;margin-bottom:4px}.clients-grid-tags{display:flex;flex-wrap:wrap;gap:4px}.clients-grid-info{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px;font-size:.85rem}.clients-grid-label{font-size:.75rem}.clients-grid-footer{padding-top:12px;border-top:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.clients-grid-view-btn{padding:6px 12px}.clients-grid-view-icon{margin-right:6px;color:var(--primary-500)}.clients-grid-view-text{color:var(--primary-500)}.clients-grid-icons{display:flex;gap:4px}.clients-grid-icon-muted{color:var(--text-secondary)}.clients-grid-icon-success{color:var(--success-500)}.clients-grid-card.is-selected{border-color:var(--primary-500);box-shadow:0 0 0 1px var(--primary-500),var(--shadow-md);background:#3b82f608}.clients-mini-badge{font-size:.7rem;padding:2px 6px}.automation-stat-card{padding:1rem;min-width:0;overflow:hidden}.automation-wizard-card{padding:1.25rem}.automation-detail-card{padding:1rem;display:grid;gap:.85rem}.automation-page-actions{display:flex;gap:.5rem;align-items:center}.automation-tabs{margin-bottom:1rem}.automation-tabs-inline{margin-bottom:0}.automation-card-header-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.automation-center-title{font-weight:700;display:flex;align-items:center;gap:.5rem}.automation-status-grid{display:grid;gap:1rem;min-width:0;max-width:100%;overflow-x:hidden}.automation-status-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;min-width:0;max-width:100%}.automation-status-grid>*,.automation-status-stats-grid>*,.automation-config-grid>*,.automation-restore-grid>*{min-width:0}.automation-stat-label{font-size:.75rem;color:var(--text-muted)}.automation-stat-value-lg{font-size:1.5rem;font-weight:800}.automation-stat-value{font-size:1rem;font-weight:700}.automation-stat-subtle{margin-top:.45rem;color:var(--text-muted);font-size:.76rem;line-height:1.35}.automation-stat-inline-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:6px;min-width:0}.automation-stat-inline-row-stack{align-items:flex-start;flex-wrap:wrap}.automation-stat-timestamp{font-size:.85rem;font-weight:800;color:var(--text-secondary);min-width:0;overflow-wrap:anywhere;line-height:1.35}.automation-status-grid .table-container,.automation-config-grid .table-container{width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;border-radius:18px;overscroll-behavior-x:contain}.automation-status-grid .table,.automation-config-grid .table{width:100%;min-width:1220px}.automation-table-shell{overflow-x:hidden!important}.automation-history-table,.automation-jobs-table{width:100%;min-width:0!important;table-layout:fixed}.automation-history-table th,.automation-history-table td,.automation-jobs-table th,.automation-jobs-table td{padding:.85rem .65rem!important;vertical-align:middle}.automation-history-table th,.automation-jobs-table th{font-size:.82rem}.automation-history-table td,.automation-jobs-table td{font-size:.92rem}.automation-history-table th:nth-child(1),.automation-history-table td:nth-child(1){width:10%}.automation-history-table th:nth-child(2),.automation-history-table td:nth-child(2),.automation-history-table th:nth-child(3),.automation-history-table td:nth-child(3){width:11%}.automation-history-table th:nth-child(4),.automation-history-table td:nth-child(4){width:7%}.automation-history-table th:nth-child(5),.automation-history-table td:nth-child(5){width:8%}.automation-history-table th:nth-child(6),.automation-history-table td:nth-child(6){width:19%}.automation-history-table th:nth-child(7),.automation-history-table td:nth-child(7),.automation-history-table th:nth-child(8),.automation-history-table td:nth-child(8),.automation-history-table th:nth-child(9),.automation-history-table td:nth-child(9){width:8%}.automation-history-table th:nth-child(10),.automation-history-table td:nth-child(10){width:10%}.automation-jobs-table th:nth-child(1),.automation-jobs-table td:nth-child(1){width:22%}.automation-jobs-table th:nth-child(2),.automation-jobs-table td:nth-child(2){width:10%}.automation-jobs-table th:nth-child(3),.automation-jobs-table td:nth-child(3){width:17%}.automation-jobs-table th:nth-child(4),.automation-jobs-table td:nth-child(4){width:23%}.automation-jobs-table th:nth-child(5),.automation-jobs-table td:nth-child(5){width:16%}.automation-jobs-table th:nth-child(6),.automation-jobs-table td:nth-child(6){width:12%}.automation-status-grid .card,.automation-config-grid .card,.automation-restore-grid .card{max-width:100%;overflow:hidden}.automation-section-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.automation-section-title{font-weight:800;display:flex;align-items:center;gap:.5rem}.automation-col-detail{width:120px}.automation-col-actions{width:160px}.automation-row-clickable{cursor:pointer}.automation-cell-truncate-sm{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.automation-cell-truncate-md{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.automation-cell-truncate-lg{max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.automation-date-cell{font-size:.86rem;line-height:1.35;color:var(--text-secondary);word-break:break-word}.automation-origin-cell,.automation-size-cell,.automation-center-cell{white-space:nowrap}.automation-table-empty-cell{color:var(--text-muted);text-align:center}.automation-config-grid{display:grid;gap:1rem}.automation-restore-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem}.automation-manual-backup-card,.automation-manual-backup-panel{display:grid;gap:1rem}.automation-manual-backup-top{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.automation-manual-backup-copy{display:grid;gap:.85rem}.automation-manual-backup-meta{min-width:220px;display:grid;gap:.35rem;padding:.85rem 1rem;border-radius:16px;border:1px solid rgba(148,163,184,.12);background:#ffffff06}.automation-manual-backup-meta-label{color:var(--text-muted);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.automation-manual-backup-meta-value{color:var(--text-primary);font-size:.95rem;font-weight:800;line-height:1.4}.automation-manual-backup-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.automation-manual-backup-note{color:var(--text-muted);font-size:.8rem}.automation-manual-backup-pills{display:flex;flex-wrap:wrap;gap:.5rem}.automation-manual-backup-pill{display:inline-flex;align-items:center;justify-content:center;padding:.3rem .65rem;border-radius:999px;border:1px solid rgba(148,163,184,.16);background:#ffffff08;color:var(--text-secondary);font-size:.74rem;font-weight:700}.automation-wizard-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.automation-wizard-title{font-weight:900;display:flex;align-items:center;gap:.5rem}.automation-wizard-description{margin-top:10px;color:var(--text-secondary);line-height:1.6}.automation-wizard-alert{margin-top:1rem}.automation-job-name{font-weight:900}.automation-job-desc{font-size:.85rem;color:var(--text-muted)}.automation-job-actions{display:flex;gap:.5rem;justify-content:flex-end}.automation-modal-overlay{align-items:center}.automation-modal-subtitle{font-size:.85rem;color:var(--text-muted)}.automation-modal-body{display:grid;gap:1rem}.automation-detail-title{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:900}.automation-detail-grid-main{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem}.automation-detail-grid-files{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.automation-detail-label{font-size:.75rem;color:var(--text-muted)}.automation-detail-value-wrap{margin-top:4px}.automation-detail-value{margin-top:4px;font-weight:800}.automation-detail-path{margin-top:6px;font-family:monospace;font-size:.88rem;word-break:break-word;background:var(--bg-secondary);border:1px solid var(--border-color-light);border-radius:10px;padding:.65rem .75rem}.automation-break-word{word-break:break-word}.automation-detail-checksum{margin-top:4px;font-family:monospace;font-size:.85rem;word-break:break-all}@media (max-width: 1320px){.automation-status-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 760px){.automation-status-stats-grid{grid-template-columns:1fr}.automation-stat-inline-row{align-items:flex-start}}.wizard-page{max-width:800px;margin:0 auto}.type-selection{text-align:center}.type-selection h3{margin-bottom:2rem}.type-options{display:flex;gap:1rem;justify-content:center}.type-option{padding:1.5rem;border-radius:var(--radius-xl);border:2px solid var(--border-color);cursor:pointer;display:flex;align-items:center;gap:1rem;transition:all .2s;flex:1;max-width:250px;text-align:left}.type-option:hover,.type-option.selected{border-color:var(--primary-500);background:#3b82f61a}.type-icon{display:flex;align-items:center;justify-content:center}.type-icon-shell{width:52px;height:52px;border-radius:14px;border:1px solid rgba(59,130,246,.22);background:#3b82f61a;color:var(--primary-300);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.type-option.selected .type-icon-shell{background:var(--primary-500);color:#fff;border-color:var(--primary-400);box-shadow:0 8px 18px #2563eb47}.type-icon{font-size:2rem}.client-wizard-footer,.loan-wizard-footer{display:flex;justify-content:space-between;gap:.75rem}.client-wizard-footer-left,.client-wizard-footer-right,.loan-wizard-footer-left,.loan-wizard-footer-right{display:flex;align-items:center;gap:.6rem}.client-wizard-footer-right,.loan-wizard-footer-right{margin-left:auto}.type-title{font-weight:600}.type-desc{font-size:.875rem;color:var(--text-muted)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.summary-grid{display:grid;gap:.75rem;margin-top:1rem;background:var(--bg-glass);padding:1rem;border-radius:var(--radius-lg)}.client-wizard-success-modal{max-width:500px;text-align:center;padding:2rem}.client-wizard-success-icon{font-size:3rem;margin-bottom:1rem}.client-wizard-success-title{margin-bottom:.5rem}.client-wizard-success-name{font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.client-wizard-success-copy{color:var(--text-secondary);margin-bottom:1.5rem}.client-wizard-success-actions{display:grid;gap:1rem}.client-wizard-full-span{grid-column:1 / -1}.client-wizard-tags-row{display:flex;gap:.5rem;flex-wrap:wrap}.client-wizard-tag-btn{border-radius:20px;font-size:.8rem}.client-wizard-docs-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.client-wizard-doc-preview{width:100%;border-radius:var(--radius-lg);border:1px solid var(--border-color);margin-top:.5rem}.client-wizard-duplicate-card{margin-top:1rem;padding:1rem}.client-wizard-duplicate-question{margin-top:1rem}@media (max-width: 640px){.form-grid,.client-wizard-docs-grid{grid-template-columns:1fr}.type-options{flex-direction:column;align-items:center}}.loan-detail-main-grid{display:grid;grid-template-columns:2fr 1fr;gap:1.5rem}@media (max-width: 900px){.loan-detail-main-grid{grid-template-columns:1fr!important}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.btn-icon-animate{transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.btn-icon-animate:hover{transform:scale(1.1)}.btn-icon-animate:active{transform:scale(.95)}.loan-detail-back-btn{margin-bottom:.5rem}.loan-detail-not-found-back{display:block;margin-top:1rem}.loan-detail-status-row{display:flex;align-items:center;gap:.75rem;margin-top:.5rem}.loan-detail-number-badge{font-family:monospace}.loan-detail-header-actions{display:flex;gap:.5rem}.loan-detail-pending-card{margin-bottom:2rem;border:2px solid var(--warning-500);background:#f59e0b0d}.loan-detail-pending-title{color:var(--warning-600);margin-bottom:1rem}.loan-detail-pending-copy{margin-bottom:1rem}.loan-detail-pending-grid{display:grid;gap:1rem;max-width:500px}.loan-detail-pending-preview-wrap{margin-bottom:1rem}.loan-detail-pending-preview{max-height:200px;border-radius:var(--radius-md);border:1px solid var(--border-color)}.loan-detail-pending-file-pill{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem .8rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-glass);color:var(--text-secondary);font-size:.85rem;font-weight:600}.loan-detail-legacy-contract-warning{margin-bottom:.85rem}.loan-detail-metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem}.loan-detail-metric-card{padding:1.25rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);position:relative;overflow:hidden;transition:all .2s ease}[data-theme=light] .loan-detail-metric-card{background:#fff;border:1px solid rgba(0,0,0,.08);box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008}[data-theme=light] .loan-detail-metric-card:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px #00000014,0 4px 6px -2px #0000000a}.loan-detail-metric-card-progress{display:flex;align-items:center;gap:1rem}.loan-detail-progress-ring{position:relative;width:60px;height:60px}.loan-detail-progress-svg{width:100%;height:100%;transform:rotate(-90deg)}.loan-detail-progress-percent{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.7rem;font-weight:700;color:var(--success-500)}.loan-detail-metric-label{font-size:.75rem;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}[data-theme=light] .loan-detail-metric-label{color:#475569}.loan-detail-metric-value{font-size:1.4rem;font-weight:700;color:var(--text-primary);line-height:1.2}[data-theme=light] .loan-detail-metric-value{color:#0f172a}.loan-detail-metric-value-success{color:var(--success-400)}.loan-detail-metric-note{font-size:.7rem;color:var(--text-muted)}.loan-detail-metric-card-overdue{border-left:4px solid var(--error-500)}.loan-detail-metric-label-overdue{color:var(--error-400)}.loan-detail-metric-value-overdue{color:var(--error-500)}.loan-detail-main-column,.loan-detail-side-column{display:flex;flex-direction:column;gap:1.5rem}.loan-detail-calendar-empty-card{padding:2.5rem;text-align:center;background:var(--bg-secondary)}.loan-detail-calendar-empty-icon{color:var(--text-muted);margin-bottom:1rem}.loan-detail-calendar-empty-title{color:var(--text-muted);margin-bottom:.5rem}.loan-detail-calendar-empty-copy{color:var(--text-muted);font-size:.95rem}.loan-detail-calendar-empty-note{font-size:.85rem;color:var(--text-muted);margin-top:.75rem}.loan-detail-card-body-compact{padding:0}.loan-detail-table-scroll-lg{max-height:400px}.loan-detail-table-scroll-sm{max-height:300px}.loan-detail-overdue-row{background:#ef44440d}.loan-detail-td-strong{font-weight:600}.loan-detail-evidence-col{min-width:140px}.loan-detail-evidence-row{display:flex;align-items:center;gap:8px}.loan-detail-proof-name{font-size:.7rem;opacity:.7;margin-left:4px;max-width:60px;overflow:hidden;text-overflow:ellipsis}.loan-detail-btn-icon-muted{color:var(--text-muted);border:none;background:transparent}.loan-detail-btn-icon-danger{color:var(--error-400);border:none;background:transparent}.loan-detail-upload-btn{border:1px dashed var(--border-color);color:var(--primary-400);padding:0 12px}.loan-detail-upload-icon{margin-right:6px}.loan-detail-status-cell{display:flex;align-items:center;gap:8px}.loan-detail-status-badge{min-width:80px;text-align:center}.loan-detail-paid-date{color:var(--text-muted);font-size:.75rem}.loan-detail-empty-small{color:var(--text-muted);font-size:.875rem;padding:1.5rem}.loan-detail-recorded-by{display:flex;align-items:center;gap:4px;font-size:.8rem;color:var(--text-muted)}.loan-detail-td-right{text-align:right}.loan-detail-docs-body{font-size:.875rem;padding:1rem}.loan-detail-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.4rem 1rem;margin-bottom:1rem}.loan-detail-doc-row{display:flex;justify-content:space-between;align-items:center;background:#ffffff08;padding:.5rem .75rem;border-radius:8px;border:1px solid rgba(255,255,255,.05);margin-bottom:.5rem}.loan-detail-doc-main{display:flex;align-items:center;gap:.5rem;flex:1}.loan-detail-doc-icon{color:var(--text-secondary)}.loan-detail-doc-content{flex:1}.loan-detail-doc-title{font-weight:600;font-size:.85rem;color:var(--text-primary)}.loan-detail-doc-number{font-size:.75rem;color:var(--text-muted)}.loan-detail-doc-actions{display:flex;gap:6px;align-items:center}.loan-detail-signed-badge{font-size:.7rem;padding:4px 8px;animation:fadeInScale .4s ease-out}.loan-detail-doc-btn{background:transparent;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer}.loan-detail-doc-btn-view{border:1.5px solid #3b82f6;color:#3b82f6}.loan-detail-doc-btn-upload{border:1.5px solid #10b981;color:#10b981;transition:all .2s ease}.loan-detail-hidden-inputs{display:none}.loan-detail-activation-overlay{z-index:2000}.loan-detail-activation-modal{max-width:420px}.loan-detail-activation-subtitle{font-size:.85rem;color:var(--text-muted)}.loan-detail-activation-body{display:grid;gap:1rem}.loan-detail-activation-card{padding:1rem;background:var(--bg-secondary);border-radius:12px}.loan-detail-activation-copy{font-size:.85rem;color:var(--text-muted);margin-bottom:1rem}.loan-detail-activation-option{display:flex;align-items:center;gap:12px;padding:12px;border-radius:10px;cursor:pointer;border:1px solid transparent;background:transparent}.loan-detail-activation-option.active{background:#3b82f61a;border-color:var(--primary-500)}.loan-detail-activation-option-spaced{margin-top:8px}.loan-detail-activation-radio{accent-color:var(--primary-500)}.loan-detail-activation-option-title{font-weight:600}.loan-detail-activation-option-desc{font-size:.8rem;color:var(--text-muted)}.loan-detail-activation-date-wrap{margin-top:12px}.loan-detail-activation-date-label{font-size:.75rem}.loan-detail-activation-date-input{height:44px;border-radius:10px}.contract-print-layout{padding:10mm 15mm;font-size:10.6pt;line-height:1.38;font-family:Arial,sans-serif;color:#000;background-color:#fff;box-sizing:border-box;width:210mm;height:295mm;margin:0 auto;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.contract-print-main{flex:1;display:flex;flex-direction:column}.contract-print-header{text-align:center;margin-bottom:8px}.contract-print-logo{width:50px;display:block;margin:0 auto 3px}.contract-print-company{font-weight:700;font-size:11px;margin:1px 0;text-transform:uppercase;color:#444;letter-spacing:.5px}.contract-print-title{font-weight:700;font-size:21px;margin:1px 0;text-transform:uppercase;color:#000;letter-spacing:.4px;line-height:1.05}.contract-print-number{font-weight:700;font-size:11px;margin:0}.contract-print-divider{border:none;border-top:1px solid #000;margin:0 0 8px}.contract-print-content{text-align:justify}.contract-print-indent{text-indent:15px}.contract-print-clause-heading{margin-top:6px}.contract-print-list{padding-left:22px;margin:0}.contract-print-end-line{border-top:1px solid #000;margin-top:10px}.contract-print-signatures{padding-top:12px;padding-bottom:16px;display:flex;justify-content:space-between;align-items:flex-start;page-break-inside:avoid}.contract-print-sign-block{text-align:center;width:45%}.contract-print-sign-line{border-top:1px solid #000;width:100%;margin-bottom:4px}.contract-print-sign-role{font-weight:700;font-size:9pt;margin:0}.contract-print-sign-name{font-size:8.5pt;margin-top:2px}.contract-print-sign-id{font-size:8.5pt;margin:0}.contract-content p{margin:0 0 7px}.contract-content ol{margin-top:2px}.contract-content li{margin:0 0 8px}.receipt-print-layout{padding:40px;max-width:800px;margin:0 auto;font-family:Arial,sans-serif;color:#000;background:#fff}.receipt-print-header{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:2px solid #333;padding-bottom:20px;margin-bottom:30px}.receipt-print-logo-wrap{margin-bottom:15px}.receipt-print-logo{max-height:100px;max-width:250px;object-fit:contain}.receipt-print-company-fallback{margin:0;font-size:28px;font-weight:900;text-transform:uppercase}.receipt-print-company-name{font-size:22px;font-weight:900;margin-bottom:5px;letter-spacing:.5px}.receipt-print-company-contact{font-size:14px;color:#555}.receipt-print-head-meta{text-align:right}.receipt-print-doc-title{margin:0;font-size:28px;color:#333}.receipt-print-doc-number{font-size:16px;font-weight:700;margin-top:5px}.receipt-print-doc-date{font-size:14px;margin-top:5px}.receipt-print-client-section{margin-bottom:30px}.receipt-print-client-row{display:grid;grid-template-columns:120px 1fr;gap:10px}.receipt-print-client-row-gap{margin-bottom:10px}.receipt-print-client-label{text-transform:uppercase;font-size:13px;color:#333}.receipt-print-client-name{font-size:20px;font-weight:700;color:#000}.receipt-print-client-id{font-size:16px;color:#000}.receipt-print-amount-box{background:#f0f0f0;border:2px solid #000;padding:25px;border-radius:8px;margin-bottom:30px}.receipt-print-amount-head,.receipt-print-method-row{display:flex;justify-content:space-between;align-items:center}.receipt-print-amount-head{margin-bottom:15px}.receipt-print-amount-label{font-size:18px;font-weight:600}.receipt-print-amount-value{font-size:28px;font-weight:900;color:#000}.receipt-print-method-row{border-top:1px solid #000;padding-top:15px}.receipt-print-method-label{font-size:15px;color:#000}.receipt-print-method-value{font-size:15px;font-weight:700;text-transform:uppercase}.receipt-print-concept-section{margin-bottom:40px}.receipt-print-concept-title{font-size:18px;border-bottom:2px solid #000;padding-bottom:10px;margin-bottom:15px;color:#000}.receipt-print-concept-table{width:100%;border-collapse:collapse;font-size:15px}.receipt-print-td{padding:10px 0;color:#000}.receipt-print-td-right{text-align:right}.receipt-print-td-bold{font-weight:700}.receipt-print-row-top{border-top:1px solid #333}.receipt-print-row-top-strong{border-top:2px solid #000}.receipt-print-td-total{padding:15px 0;font-weight:700;font-size:16px}.receipt-print-td-total-value{font-weight:900;font-size:20px;color:#000}.receipt-print-notes-box{margin-bottom:30px;padding:15px;background:#f9f9f9;border:1px solid #ccc;border-radius:8px}.receipt-print-notes-title{font-size:13px;font-weight:700;margin-bottom:8px;color:#333}.receipt-print-notes-category{font-size:12px;color:#666;margin-bottom:4px}.receipt-print-notes-copy{font-size:14px;color:#000}.receipt-print-signatures{margin-top:100px;display:flex;justify-content:space-between}.receipt-print-sign-block{text-align:center;width:250px}.receipt-print-sign-line{border-top:2px solid #000;padding-top:10px;font-weight:700}.receipt-print-signatory{font-size:14px;margin-top:5px}.receipt-print-generated{margin-top:50px;text-align:center;font-size:12px;color:#000;font-weight:700}@media print{@page{size:A4;margin:0}body:has(.contract-print-container){width:210mm!important;background:#fff!important;margin:0!important;padding:0!important}.contract-print-container,.contract-print-container *{visibility:visible!important}.contract-print-container{position:fixed!important;left:0!important;top:0!important;width:210mm!important;min-height:297mm!important;height:auto!important;margin:0!important;padding:10mm 15mm!important;background:#fff!important;box-shadow:none!important;overflow:visible!important;z-index:999999!important}}@media print{body:has(.receipt-print-container) *{visibility:hidden!important}body:has(.receipt-print-container) .modal-overlay,body:has(.receipt-print-container) .modal,body:has(.receipt-print-container) .modal-body{display:block!important;visibility:visible!important;position:static!important;overflow:visible!important;height:auto!important;margin:0!important;padding:0!important;background:transparent!important;box-shadow:none!important}.receipt-print-container,.receipt-print-container *{visibility:visible!important}.receipt-print-container{position:fixed!important;left:0!important;top:0!important;width:210mm!important;height:296mm!important;box-sizing:border-box!important;margin:0!important;max-width:none!important;padding:10mm 12mm!important;background:#fff!important;border:none!important;border-radius:0!important;box-shadow:none!important;overflow:hidden!important}.receipt-print-container>div{page-break-inside:avoid!important}.no-break{margin-top:40px!important;page-break-inside:avoid!important;break-inside:avoid!important}}.reports-page{padding:0 1rem 2rem;animation:fadeIn .5s ease-in-out}.reports-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.95fr);gap:1rem;margin-bottom:1.5rem;padding:1.4rem;border:1px solid rgba(148,163,184,.16);border-radius:24px;background:radial-gradient(circle at top right,rgba(59,130,246,.08),transparent 30%),linear-gradient(180deg,#0f172ae6,#0f172ab8);overflow:hidden;box-shadow:var(--shadow-lg)}.reports-hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,rgba(255,255,255,.04),transparent 24%,transparent 70%,rgba(255,255,255,.02));pointer-events:none}.reports-hero-main,.reports-hero-panels{position:relative;z-index:1}.reports-hero-main{display:flex;flex-direction:column;justify-content:center;gap:.75rem}.reports-hero-kicker{display:inline-flex;width:fit-content;padding:.35rem .7rem;border-radius:999px;background:#3b82f61a;border:1px solid rgba(59,130,246,.16);color:var(--primary-300);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:800}.reports-hero-title{margin:0;font-size:clamp(1.95rem,3vw,2.6rem)}.reports-hero-copy{max-width:56rem;line-height:1.6;font-size:.98rem}.reports-hero-panels{display:grid;gap:.9rem}.reports-hero-highlight,.reports-hero-stat{background:#ffffff09;border:1px solid rgba(148,163,184,.12);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.reports-hero-highlight{padding:1rem 1.1rem;border-radius:20px;min-height:154px;display:flex;flex-direction:column;justify-content:space-between}.reports-hero-highlight-label,.reports-hero-stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.68rem;font-weight:800}.reports-hero-highlight-value{margin-top:.35rem;color:var(--text-primary);font-size:clamp(1.6rem,2vw,2.05rem);font-weight:800;line-height:1.05}.reports-hero-highlight-copy{margin-top:.65rem;color:var(--text-secondary);font-size:.88rem;line-height:1.5}.reports-hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.reports-hero-stat{padding:.9rem 1rem;border-radius:18px;animation:fadeIn .45s ease-out both}.reports-hero-stat:nth-child(2){animation-delay:.06s}.reports-hero-stat:nth-child(3){animation-delay:.12s}.reports-hero-stat-value{margin-top:.45rem;color:var(--text-primary);font-size:1.05rem;font-weight:700;line-height:1.35}.reports-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:0;display:none}.reports-title{font-size:1.875rem;font-weight:700;color:var(--text-primary);margin-bottom:.25rem}.reports-subtitle{color:var(--text-secondary)}.reports-tabs{display:inline-flex;align-items:center;gap:.25rem;padding:.35rem;border:1px solid var(--border-color);border-radius:18px;background:#ffffff08;margin-bottom:2rem;overflow-x:auto;max-width:100%}.reports-tab-btn{padding:.9rem 1.5rem;background:transparent;border:none;border-radius:14px;color:var(--text-secondary);font-size:.9375rem;font-weight:700;cursor:pointer;transition:all .2s;position:relative;white-space:nowrap}.reports-tab-btn.is-active{background:linear-gradient(180deg,#3872fafa,#2563ebf2);color:#fff;box-shadow:inset 0 1px #ffffff1f,0 8px 24px #2563eb47}.reports-tab-indicator{display:none}.reports-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.reports-search-wrap{position:relative;width:min(24rem,100%)}.reports-search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--text-secondary)}.reports-search-input{width:100%;padding:.75rem 1rem .75rem 2.75rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary);outline:none}.reports-export-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem}.reports-loading-state{padding:4rem;text-align:center;color:var(--text-secondary)}.reports-section{display:flex;flex-direction:column;gap:1.5rem}.reports-section-animated{animation:fadeIn .5s}.reports-section-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.reports-section-title{font-size:1.125rem;font-weight:600;color:var(--text-primary)}.reports-section-title-lg{font-size:1.25rem;font-weight:700}.reports-section-subtitle{font-size:.875rem;color:var(--text-secondary)}.reports-section-subtitle-sm{font-size:.85rem;color:var(--text-secondary)}.reports-section-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.reports-monthly-summary{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,1fr);gap:1rem;padding:.95rem 1rem;border-radius:16px;border:1px solid rgba(148,163,184,.1);background:linear-gradient(180deg,#0f172ab3,#0f172a85)}.reports-monthly-overview{display:grid;gap:.9rem;margin-bottom:1.1rem;animation:fadeInUp .42s ease-out both}.reports-monthly-summary-main{display:flex;flex-direction:column;gap:.45rem}.reports-monthly-summary-side{display:grid;gap:.85rem}.reports-monthly-summary-kicker{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--primary-300)}.reports-monthly-summary-title{font-size:1.25rem;font-weight:800;color:var(--text-primary)}.reports-monthly-summary-copy{color:var(--text-secondary);line-height:1.5;max-width:48rem}.reports-monthly-summary-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.reports-monthly-actions-panel{display:grid;gap:.75rem}.reports-monthly-summary-stat{padding:.8rem .85rem;border-radius:12px;background:#ffffff06;border:1px solid rgba(148,163,184,.08);display:flex;flex-direction:column;gap:.4rem}.reports-monthly-summary-stat span{font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-weight:700}.reports-monthly-summary-stat strong{font-size:1.05rem;color:var(--text-primary);font-weight:800}.reports-monthly-summary-stat:last-child{grid-column:1 / -1}.reports-monthly-actions{align-items:stretch;gap:.75rem}.reports-section-header>.reports-monthly-actions{display:none}.reports-monthly-action-group{display:inline-flex;align-items:center;gap:.7rem}.reports-monthly-action-group-primary{flex:1 1 260px;min-width:240px}.reports-monthly-action-group-export{flex:0 0 auto;flex-wrap:wrap}.reports-action-btn{padding:.5rem 1rem;border-radius:.5rem;display:inline-flex;align-items:center;gap:.5rem;border:none;cursor:pointer;font-size:.875rem;font-weight:500;color:#fff}.reports-action-btn-excel{background:#16a34a}.reports-action-btn-pdf{background:#dc2626}.reports-metrics-grid,.reports-proj-kpi-grid,.reports-cartera-kpi-grid,.reports-collection-kpi-grid{display:grid;gap:1rem}.reports-metrics-grid,.reports-proj-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.reports-metrics-grid-monthly{position:relative}.reports-cartera-kpi-grid,.reports-collection-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.reports-metric-card,.reports-proj-kpi-card,.reports-kpi-card{border-radius:14px;padding:1rem 1.05rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.reports-metric-card-blue{background:linear-gradient(180deg,#1e3a8a14,#0f172a52);border:1px solid rgba(96,165,250,.14)}.reports-metric-card-green{background:linear-gradient(180deg,#14532d14,#0f172a52);border:1px solid rgba(74,222,128,.12)}.reports-metric-card-purple{background:linear-gradient(180deg,#581c8714,#0f172a52);border:1px solid rgba(192,132,252,.12)}.reports-metric-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.reports-metric-icon{padding:.4rem;border-radius:.75rem}.reports-metric-icon-blue{background:#60a5fa1f;color:#7db7ff}.reports-metric-icon-green{background:#4ade801a;color:#6ee7a0}.reports-metric-icon-purple{background:#c084fc1a;color:#d4a7ff}.reports-metric-label{font-size:.75rem;font-weight:600;color:var(--text-secondary)}.reports-metric-value{font-size:1.75rem;font-weight:800;letter-spacing:-.02em}.reports-metric-value-blue{color:#60a5fa}.reports-metric-value-green{color:#4ade80}.reports-metric-value-purple{color:#c084fc}.reports-detail-card,.reports-cartera-card,.reports-proj-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}.reports-detail-card{background:#0f172a6b;border-color:#94a3b81a;border-radius:16px}.reports-detail-card,.reports-cartera-card,.reports-proj-card{animation:fadeInUp .38s ease-out both;transition:border-color .22s ease,transform .22s ease,background-color .22s ease}.reports-detail-card:hover,.reports-cartera-card:hover,.reports-proj-card:hover{border-color:#94a3b829;transform:translateY(-1px)}.reports-detail-header{background:#0f172a47;border-bottom:1px solid rgba(148,163,184,.08);padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.reports-detail-title{margin:0;font-size:1rem;font-weight:600;color:#e2e8f0;display:inline-flex;align-items:center;gap:.5rem}.reports-detail-subtitle{margin:.35rem 0 0;color:var(--text-muted);font-size:.82rem;line-height:1.45;max-width:34rem}.reports-detail-controls{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.reports-detail-search-wrap{position:relative}.reports-detail-search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--text-muted)}.reports-control-input,.reports-control-select{border:1px solid var(--border-color);border-radius:8px;background:var(--bg-card);color:var(--text-primary)}.reports-control-input{padding:.5rem .75rem}.reports-control-input-sm{padding-left:2.25rem;width:180px;font-size:.85rem}.reports-control-select{padding:.5rem .75rem;font-size:.85rem;cursor:pointer}.reports-table-scroll{overflow-x:auto}.reports-detail-table,.reports-cartera-table{width:100%;border-collapse:collapse}.reports-detail-thead{background:#0f172a38;border-bottom:1px solid rgba(148,163,184,.08)}.reports-th,.reports-cartera-th{padding:.85rem 1rem;font-size:.72rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;-webkit-user-select:none;user-select:none}.reports-th{cursor:pointer}.reports-th-bold{font-weight:700}.reports-align-left{text-align:left}.reports-align-right{text-align:right}.reports-align-center{text-align:center}.reports-detail-tbody{font-size:.875rem;color:#f1f5f9}.reports-detail-row,.reports-cartera-row,.reports-proj-row{border-bottom:1px solid var(--border-color)}.reports-detail-row{border-bottom-color:#94a3b812;transition:background-color .18s ease}.reports-detail-row:hover{background:#ffffff05}.reports-td,.reports-cartera-td{padding:.9rem 1rem}.reports-td-medium,.reports-td-strong,.reports-cartera-client,.reports-cartera-balance{font-weight:600}.reports-td-muted{color:#cbd5e1}.reports-td-success{color:#4ade80}.reports-td-info{color:#60a5fa}.reports-td-warning{color:var(--warning-500)}.reports-td-white{color:#fff}.reports-monthly-client-cell{display:flex;flex-direction:column;gap:.2rem}.reports-monthly-client-name{font-weight:700;color:var(--text-primary)}.reports-monthly-client-meta{font-size:.76rem;color:var(--text-muted)}.reports-money-cell{display:inline-flex;flex-direction:column;align-items:flex-end;gap:.18rem}.reports-money-main{font-variant-numeric:tabular-nums;line-height:1.15}.reports-money-sub{font-size:.7rem;color:var(--text-muted);font-weight:600;line-height:1.1}.reports-monthly-progress{display:inline-flex;flex-direction:column;align-items:center;gap:.38rem;min-width:70px}.reports-monthly-progress-track{width:68px;height:4px;border-radius:999px;background:#94a3b81f;overflow:hidden}.reports-monthly-progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#3b82f66b,#4ade8094)}.reports-monthly-progress-label{font-size:.68rem;color:var(--text-muted);font-weight:700}.reports-chip{display:inline-flex;align-items:center;justify-content:center;padding:.28rem .58rem;border-radius:999px;font-size:.72rem;letter-spacing:.02em}.reports-chip-neutral{background:#94a3b81a;color:#dbe6f3;font-weight:600}.reports-chip-blue{background:#3b82f61f;color:#8ec5ff;border:1px solid rgba(59,130,246,.14);font-weight:700}.reports-tab-context{display:flex;align-items:center;gap:.75rem;margin:.9rem 0 1.4rem;flex-wrap:wrap}.reports-tab-context-badge{display:inline-flex;align-items:center;gap:.45rem;padding:.36rem .7rem;border-radius:999px;border:1px solid rgba(59,130,246,.18);background:#3b82f614;color:var(--primary-200);font-size:.76rem;font-weight:700}.reports-tab-context-copy{margin:0;color:var(--text-muted);font-size:.84rem;line-height:1.45}.reports-tab-context-helper{display:inline-flex;align-items:center;justify-content:center;padding:.28rem .62rem;border-radius:999px;background:#94a3b814;border:1px solid rgba(148,163,184,.14);color:var(--text-secondary);font-size:.72rem;font-weight:700}.reports-proj-kpi-card{box-shadow:0 4px 6px -1px #0003}.reports-proj-overview{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.95fr);gap:1rem;margin-bottom:1rem;padding:1rem 1.1rem;border-radius:16px;border:1px solid rgba(148,163,184,.1);background:linear-gradient(180deg,#0f172aa8,#0f172a80);animation:fadeInUp .4s ease-out both}.reports-proj-overview-main{display:flex;flex-direction:column;gap:.45rem}.reports-proj-overview-kicker{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--primary-300)}.reports-proj-overview-title{font-size:1.2rem;font-weight:800;color:var(--text-primary)}.reports-proj-overview-copy{color:var(--text-secondary);line-height:1.5;max-width:44rem}.reports-proj-overview-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.reports-proj-overview-stat{padding:.8rem .9rem;border-radius:12px;background:#ffffff06;border:1px solid rgba(148,163,184,.08);display:flex;flex-direction:column;gap:.35rem}.reports-proj-overview-stat span{font-size:.73rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-weight:700}.reports-proj-overview-stat strong{color:var(--text-primary);font-size:.96rem;font-weight:800}.reports-proj-overview-stat small{color:var(--text-muted);font-size:.72rem}.reports-proj-kpi-card-primary{background:linear-gradient(180deg,#1e40af33,#0f172a8c);border:1px solid rgba(59,130,246,.2)}.reports-proj-kpi-card-dark{background:linear-gradient(180deg,#1f2937d1,#0f172a94);border:1px solid rgba(148,163,184,.08)}.reports-proj-kpi-label{font-size:.7rem;color:#9ca3af;font-weight:700;text-transform:uppercase;margin-bottom:.25rem}.reports-proj-kpi-label-light{color:#ffffffb3}.reports-proj-kpi-value{font-size:1.5rem;font-weight:800;color:#fff}.reports-proj-kpi-value-success{color:#10b981}.reports-proj-kpi-hint{font-size:.65rem;color:#6b7280;margin-top:.25rem}.reports-proj-kpi-hint-light{color:#ffffff80}.reports-proj-card-header,.reports-proj-card-body{padding:1.5rem}.reports-proj-card-header{border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.reports-proj-card-title{font-size:1.25rem;font-weight:700;color:var(--text-primary)}.reports-proj-card-title-wrap{display:grid;gap:.3rem}.reports-proj-card-subtitle{margin:0;color:var(--text-muted);font-size:.82rem;line-height:1.45;max-width:34rem}.reports-proj-view-switch{display:inline-flex;background:#0f172a99;border:1px solid var(--border-color);border-radius:10px;padding:4px;gap:4px}.reports-proj-view-btn{border:none;background:transparent;color:var(--text-muted);font-size:.78rem;font-weight:600;padding:.35rem .65rem;border-radius:8px;cursor:pointer;transition:all .2s ease}.reports-proj-view-btn:hover{color:var(--text-primary);background:#3b82f61f}.reports-proj-view-btn.is-active{color:#e2e8f0;background:#2563eb3d;border:1px solid rgba(59,130,246,.28);box-shadow:inset 0 0 0 1px #93c5fd0f}.reports-proj-inline-kpi{display:inline-flex;align-items:center;gap:.5rem;padding:.35rem .75rem;background:#0f172ab3;border:1px solid var(--border-color);border-radius:999px;margin-bottom:.8rem}.reports-proj-inline-kpi-label{color:var(--text-muted);font-size:.75rem}.reports-proj-inline-kpi-value{font-weight:700;font-size:.82rem}.reports-proj-inline-kpi-value.is-positive{color:#10b981}.reports-proj-inline-kpi-value.is-negative{color:#ef4444}.reports-proj-controls-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem;padding:.8rem .9rem;border-radius:14px;background:#0f172a57;border:1px solid rgba(148,163,184,.08)}.reports-proj-range-select{min-width:180px;border:1px solid var(--border-color);background:#0f172ab3;color:var(--text-primary);border-radius:8px;padding:.45rem .6rem;font-size:.8rem}.reports-proj-series-toggles{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.reports-proj-series-btn{border:1px solid rgba(148,163,184,.35);background:#0f172a80;color:#94a3b8;border-radius:999px;padding:.25rem .65rem;font-size:.74rem;font-weight:600;cursor:pointer;transition:all .2s ease}.reports-proj-series-btn:hover{color:#cbd5e1;border-color:#94a3b899}.reports-proj-series-btn.is-on{color:#e2e8f0;background:#3b82f638;border-color:#3b82f68c}.reports-proj-check-group{display:flex;align-items:center;gap:.9rem;flex-wrap:wrap}.reports-proj-check-item{display:inline-flex;align-items:center;gap:.4rem;color:#cbd5e1;font-size:.8rem;font-weight:600}.reports-proj-check-item input[type=checkbox]{width:14px;height:14px;accent-color:#3b82f6}.recharts-default-legend .recharts-legend-item-text{color:#cbd5e1!important;fill:#cbd5e1!important}.reports-proj-donut-shell{width:100%}.reports-proj-donut-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem;padding:.25rem .2rem}.reports-proj-donut-title{font-size:.82rem;color:#94a3b8;font-weight:600}.reports-proj-donut-total{font-size:1.15rem;color:#e2e8f0;font-weight:700}.reports-proj-donut-badge{padding:.2rem .5rem;border-radius:999px;font-size:.74rem;font-weight:700;border:1px solid transparent}.reports-proj-donut-badge.is-positive{color:#34d399;background:#10b98124;border-color:#10b98159}.reports-proj-donut-badge.is-negative{color:#f87171;background:#ef444424;border-color:#ef444459}.reports-chart-wrap-donut{height:290px}.reports-proj-donut-breakdown{margin-top:.75rem;display:grid;gap:.45rem;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.reports-proj-donut-item{display:flex;justify-content:space-between;align-items:center;background:#0f172ab3;border:1px solid var(--border-color);border-radius:10px;padding:.45rem .65rem}.reports-proj-donut-item-left{display:inline-flex;align-items:center;gap:.55rem}.reports-proj-donut-dot{width:10px;height:10px;border-radius:999px}.reports-proj-donut-name{color:#e2e8f0;font-size:.82rem;font-weight:600}.reports-proj-donut-item-right{display:inline-flex;align-items:center;gap:.55rem;color:#94a3b8;font-size:.78rem}.reports-proj-donut-item-right strong{color:#f8fafc;font-size:.82rem}.recharts-tooltip-wrapper .recharts-default-tooltip{background:#0f172a!important;border:1px solid rgba(148,163,184,.35)!important;border-radius:12px!important}.recharts-tooltip-wrapper .recharts-tooltip-label,.recharts-tooltip-wrapper .recharts-tooltip-item{color:#e2e8f0!important}.reports-empty-state{text-align:center;padding:4rem 0;opacity:.7}.reports-empty-emoji{font-size:3rem;margin-bottom:1rem}.reports-empty-copy{color:var(--text-muted)}.reports-chart-section{margin-bottom:2rem}.reports-chart-title{font-size:.875rem;color:var(--text-muted);margin-bottom:1rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.reports-chart-wrap{width:100%;height:350px}.reports-proj-table-wrap{max-height:500px;overflow-y:auto;border:none}.reports-proj-table-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.9rem;flex-wrap:wrap}.reports-proj-table-title-wrap{display:grid;gap:.24rem}.reports-proj-table-title{margin:0;font-size:.98rem;font-weight:700;color:var(--text-primary)}.reports-proj-table-subtitle{margin:0;max-width:42rem;font-size:.82rem;line-height:1.45;color:var(--text-muted)}.reports-proj-table-meta{display:inline-flex;align-items:center;gap:.45rem;flex-wrap:wrap}.reports-proj-table-pill{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:.28rem .7rem;border-radius:999px;border:1px solid rgba(148,163,184,.18);background:#ffffff08;color:var(--text-secondary);font-size:.74rem;font-weight:700}.reports-proj-table-pill.is-highlight{color:var(--primary-200);border-color:#3b82f640;background:#3b82f61a}.reports-proj-table{width:100%}.reports-proj-thead{position:sticky;top:0;z-index:10;background:#1e293b;color:#94a3b8}.reports-proj-tbody{font-size:.875rem}.reports-proj-sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.reports-proj-sortable-label{display:inline-flex;align-items:center;gap:.4rem}.reports-proj-sortable-indicator{min-width:.7rem;color:var(--primary-300);font-weight:800}.reports-proj-row:hover{background:#ffffff05}.reports-proj-month-cell,.reports-proj-money-cell{display:flex;flex-direction:column;gap:.18rem}.reports-proj-month-main,.reports-proj-money-main{color:var(--text-primary);font-weight:700}.reports-proj-month-sub,.reports-proj-money-sub{color:var(--text-muted);font-size:.72rem}.reports-proj-count-pill{display:inline-flex;align-items:center;justify-content:center;min-width:2.1rem;min-height:2rem;padding:0 .6rem;border-radius:999px;background:#3b82f61a;border:1px solid rgba(59,130,246,.18);color:#dbeafe;font-weight:700}.reports-proj-total-row{position:sticky;bottom:0;background:#1e293b;border-top:2px solid #334155;font-weight:700}.reports-cartera-stack{display:flex;flex-direction:column;gap:2rem}.reports-cartera-hint-box{padding:.75rem 1rem;background:#0f172a61;border-radius:12px;border:1px solid rgba(148,163,184,.12)}.reports-cartera-hint-copy{font-size:.85rem;color:var(--text-secondary)}.reports-cartera-card-header{padding:1rem 1.25rem;border-bottom:1px solid rgba(148,163,184,.08);display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;background:#0f172a42}.reports-cartera-card-title-wrap{display:grid;gap:.3rem}.reports-cartera-card-title{margin:0;font-size:1rem;font-weight:700;color:var(--text-primary)}.reports-cartera-card-subtitle{margin:0;font-size:.82rem;line-height:1.45;color:var(--text-muted);max-width:34rem}.reports-cartera-card-tools{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.reports-cartera-card-meta{display:inline-flex;align-items:center;gap:.45rem;flex-wrap:wrap}.reports-cartera-card-meta-pill{display:inline-flex;align-items:center;justify-content:center;padding:.28rem .65rem;border-radius:999px;border:1px solid rgba(148,163,184,.18);background:#ffffff08;color:var(--text-secondary);font-size:.74rem;font-weight:700}.reports-cartera-card-meta-pill.is-risk{color:#f59e0b;border-color:#f59e0b47;background:#f59e0b14}.reports-cartera-overview{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.95fr);gap:1rem;padding:1rem 1.1rem;border-radius:16px;border:1px solid rgba(148,163,184,.1);background:linear-gradient(180deg,#0f172aa8,#0f172a80);animation:fadeInUp .4s ease-out both}.reports-cartera-overview-main{display:flex;flex-direction:column;gap:.45rem}.reports-cartera-overview-kicker{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--primary-300)}.reports-cartera-overview-title{font-size:1.2rem;font-weight:800;color:var(--text-primary)}.reports-cartera-overview-copy{color:var(--text-secondary);line-height:1.5;max-width:44rem}.reports-cartera-overview-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.reports-cartera-overview-stat{padding:.8rem .9rem;border-radius:12px;background:#ffffff06;border:1px solid rgba(148,163,184,.08);display:flex;flex-direction:column;gap:.35rem}.reports-cartera-overview-stat span{font-size:.73rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-weight:700}.reports-cartera-overview-stat strong{color:var(--text-primary);font-size:.96rem;font-weight:800}.reports-cartera-overview-stat small{color:var(--text-muted);font-size:.72rem}.reports-kpi-card{border-radius:12px}.reports-kpi-card-default{background:var(--bg-secondary);border:1px solid var(--border-color)}.reports-kpi-card-danger{background:#ef44440d;border:1px solid rgba(239,68,68,.2)}.reports-kpi-card-success{background:#10b9810d;border:1px solid rgba(16,185,129,.2)}.reports-kpi-card-lg{padding:1.25rem}.reports-kpi-label{font-size:.7rem;color:var(--text-secondary);font-weight:700;text-transform:uppercase;margin-bottom:.5rem}.reports-kpi-label-md{font-size:.75rem}.reports-kpi-label-danger{color:var(--error-400)}.reports-kpi-label-success{color:var(--success-400)}.reports-kpi-value{font-size:1.4rem;font-weight:800}.reports-kpi-value-xl{font-size:1.75rem}.reports-kpi-value-primary{color:var(--primary-400)}.reports-kpi-value-danger{color:#ef4444}.reports-kpi-value-success{color:#10b981}.reports-kpi-value-success-soft{color:var(--success-400)}.reports-kpi-value-warning{color:#f59e0b}.reports-kpi-note{font-size:.7rem;color:var(--text-muted)}.reports-kpi-note-danger{color:var(--error-400)}.reports-kpi-note-success{color:var(--success-400)}.reports-cartera-thead{background:#ffffff08;border-bottom:1px solid var(--border-color)}.reports-cartera-th{font-size:.76rem;color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;font-weight:700}.reports-cartera-sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.reports-cartera-sortable-label{display:inline-flex;align-items:center;gap:.4rem}.reports-cartera-sortable-indicator{min-width:.7rem;color:var(--primary-300);font-weight:800}.reports-cartera-client{font-size:.88rem}.reports-cartera-client-cell,.reports-cartera-loan-cell,.reports-cartera-money-cell{display:flex;flex-direction:column;gap:.18rem}.reports-cartera-client-name,.reports-cartera-money-main{color:var(--text-primary);font-weight:700;line-height:1.2}.reports-cartera-client-meta,.reports-cartera-loan-meta,.reports-cartera-money-sub{color:var(--text-muted);font-size:.72rem;line-height:1.2}.reports-cartera-loan-id{font-size:.84rem;color:var(--text-secondary);padding:.75rem .5rem}.reports-cartera-row{transition:background .18s ease}.reports-cartera-row:hover{background:#ffffff05}.reports-cartera-balance{font-size:.88rem;padding:.75rem .5rem}.reports-cartera-mora{font-weight:600;font-size:.82rem;color:var(--text-muted);padding:.75rem .5rem}.reports-cartera-mora.is-overdue{color:var(--error-400)}.reports-mora-badge,.reports-status-badge{display:inline-flex;align-items:center;justify-content:center;font-weight:700;border-radius:6px}.reports-mora-badge{padding:.25rem .5rem;font-size:.8rem}.reports-mora-badge.is-overdue{background:#ef444426;color:#ef4444}.reports-mora-badge.is-ok{background:#10b98126;color:#10b981}.reports-status-badge{padding:.25rem .75rem;font-size:.75rem;text-transform:uppercase}.reports-status-badge.is-overdue{background:#ef44441a;color:#ef4444}.reports-status-badge.is-ok{background:#10b9811a;color:#10b981}.reports-empty-cell{padding:3rem;text-align:center;opacity:.5}.reports-collection-charts-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:1.5rem}@media (max-width: 1100px){.reports-metrics-grid,.reports-proj-kpi-grid,.reports-cartera-kpi-grid,.reports-collection-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reports-collection-charts-grid{grid-template-columns:1fr}}@media (max-width: 1100px){.reports-hero,.reports-monthly-summary,.reports-proj-overview,.reports-cartera-overview,.reports-monthly-summary-stats{grid-template-columns:1fr}}@media (max-width: 760px){.reports-hero{padding:1rem;border-radius:20px}.reports-hero-title{font-size:1.7rem}.reports-hero-copy{font-size:.92rem}.reports-hero-stats{grid-template-columns:1fr}.reports-section-header,.reports-toolbar,.reports-detail-header{align-items:stretch}.reports-metrics-grid,.reports-proj-kpi-grid,.reports-cartera-kpi-grid,.reports-collection-kpi-grid{grid-template-columns:1fr}.reports-detail-controls,.reports-monthly-action-group,.reports-monthly-action-group-export,.reports-cartera-card-tools,.reports-cartera-card-meta,.reports-control-input-sm,.reports-control-select,.reports-search-wrap{width:100%}.reports-loading-state,.reports-empty-cell{padding:2rem 1rem}}.payment-wizard-page{max-width:900px;margin:0 auto}.payment-wizard-step-title,.payment-wizard-search-group,.payment-wizard-reference-group,.payment-wizard-note-category-wrap{margin-bottom:1rem}.payment-wizard-search-wrap{position:relative}.payment-wizard-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-muted)}.payment-wizard-search-input{padding-left:40px;height:44px;border-radius:12px}.payment-wizard-loans-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;max-height:400px;overflow-y:auto}.payment-wizard-loan-card{padding:.875rem;border-radius:12px;border:1px solid var(--border-color);background:var(--bg-card);cursor:pointer}.payment-wizard-loan-card.has-mora{border:2px solid var(--error-500);background:#ef444405}.payment-wizard-loan-name{font-weight:600;font-size:.95rem;margin-bottom:.25rem}.payment-wizard-loan-number,.payment-wizard-meta-label,.payment-wizard-mini-label{color:var(--text-muted)}.payment-wizard-loan-number{font-size:.75rem;margin-bottom:.5rem}.payment-wizard-loan-meta-row{display:flex;justify-content:space-between;font-size:.8rem}.payment-wizard-loan-meta-right{text-align:right}.payment-wizard-meta-value,.payment-wizard-overdue-value{font-weight:600}.payment-wizard-meta-value-primary,.payment-wizard-next-amount{color:var(--primary-500)}.payment-wizard-mora-chip{margin-top:.5rem;padding:.4rem;background:#ef44441a;border-radius:6px;font-size:.7rem;color:var(--error-500);font-weight:600;text-align:center}.payment-wizard-empty-search{grid-column:1 / -1;text-align:center;padding:2rem;color:var(--text-muted)}.payment-wizard-loan-summary,.payment-wizard-card-section,.payment-wizard-breakdown-card,.payment-wizard-confirm-card,.payment-wizard-notes-card{margin-bottom:1rem}.payment-wizard-loan-summary{padding:1.25rem;border-left:4px solid var(--primary-500)}.payment-wizard-loan-summary.has-overdue{border-left-color:var(--error-500)}.payment-wizard-loan-summary-head{display:flex;justify-content:space-between;align-items:flex-start}.payment-wizard-subtle-label{font-size:.85rem;color:var(--text-muted)}.payment-wizard-client-strong{font-size:1.2em}.payment-wizard-mono-badge{font-family:monospace}.payment-wizard-overdue-box{margin-top:1rem;padding:1rem;background:#ef44441a;border-radius:12px;border:1px solid rgba(239,68,68,.3)}.payment-wizard-overdue-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.payment-wizard-overdue-icon,.payment-wizard-overdue-title,.payment-wizard-overdue-value-danger,.payment-wizard-required-note{color:var(--error-500)}.payment-wizard-overdue-title{font-weight:700}.payment-wizard-overdue-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;font-size:.9rem}.payment-wizard-overdue-value{font-size:1.1rem;font-weight:700}.payment-wizard-balance-row{margin-top:1rem;display:flex;gap:2rem}.payment-wizard-mini-label{font-size:.75rem}.payment-wizard-next-amount{font-weight:700;cursor:pointer;background:transparent;border:none;padding:0;text-align:left}.payment-wizard-use-link{font-size:.8em;text-decoration:underline}.payment-wizard-card-section,.payment-wizard-breakdown-card,.payment-wizard-notes-card{padding:1rem}.payment-wizard-section-title,.payment-wizard-breakdown-title,.payment-wizard-notes-title{font-weight:700;margin-bottom:.75rem}.payment-wizard-payment-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.payment-wizard-payment-type-item{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:transparent;border-radius:8px;cursor:pointer;border:1px solid transparent}.payment-wizard-payment-type-item.is-active{background:#3b82f61a;border-color:var(--primary-500)}.payment-wizard-radio{accent-color:var(--primary-500)}.payment-wizard-payment-type-icon,.payment-wizard-breakdown-icon,.payment-wizard-confirm-banner-icon{color:var(--primary-400)}.payment-wizard-payment-type-label{font-weight:600;font-size:.9rem}.payment-wizard-payment-type-desc{font-size:.75rem;color:var(--text-muted)}.payment-wizard-fields-grid{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:1rem;margin-bottom:1rem}.payment-wizard-form-group-reset{margin-bottom:0}.payment-wizard-breakdown-card{background:var(--bg-secondary);border:1px dashed var(--primary-500)}.payment-wizard-breakdown-title{display:flex;align-items:center;gap:8px}.payment-wizard-breakdown-grid{display:grid;gap:8px;font-size:.9rem}.payment-wizard-breakdown-row,.payment-wizard-breakdown-total-row{display:flex;justify-content:space-between}.payment-wizard-breakdown-row-primary{color:var(--primary-400)}.payment-wizard-breakdown-value{font-weight:600}.payment-wizard-breakdown-value.is-danger{color:var(--error-400)}.payment-wizard-breakdown-total-row{border-top:1px solid var(--border-color);padding-top:8px}.payment-wizard-breakdown-total-label{font-weight:700}.payment-wizard-breakdown-notice{margin-top:.75rem;padding:.5rem .75rem;border-radius:8px;font-size:.85rem}.payment-wizard-breakdown-notice-success{background:#10b9811a;color:var(--success-400)}.payment-wizard-breakdown-notice-warning{background:#f59e0b26;color:var(--warning-500);border:1px solid var(--warning-500)}.payment-wizard-breakdown-notice-primary{background:#3b82f61a;color:var(--primary-400)}.payment-wizard-breakdown-note-meta{font-size:.75rem;opacity:.8}.payment-wizard-evidence-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.payment-wizard-upload-zone{border:2px dashed var(--border-color);border-radius:12px;padding:.75rem;text-align:center;background:var(--bg-card);cursor:pointer;height:112px;display:flex;flex-direction:column;align-items:center;justify-content:center;box-sizing:border-box}.payment-wizard-upload-zone.has-file{border-color:var(--success-500);background:#10b9810a}.payment-wizard-upload-zone.error{border-color:var(--error-500)}.payment-wizard-hidden-input{display:none}.payment-wizard-upload-icon{color:var(--text-muted);margin-bottom:4px}.payment-wizard-upload-icon-success{color:var(--success-500);margin-bottom:4px}.payment-wizard-upload-title,.payment-wizard-upload-title-success{font-size:.85rem;font-weight:600}.payment-wizard-upload-title-success{color:var(--success-600)}.payment-wizard-upload-subtitle{font-size:.7rem;color:var(--text-muted)}.payment-wizard-notes-textarea,.payment-wizard-note-category-select{width:100%;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-card);color:var(--text-primary)}.payment-wizard-notes-textarea{height:112px;padding:.75rem;font-size:.85rem;resize:none;box-sizing:border-box;font-family:inherit}.payment-wizard-note-category-label{display:block;margin-bottom:.5rem}.payment-wizard-note-category-select{height:44px;padding:0 1rem;border-radius:10px;font-size:.9rem;cursor:pointer}.payment-wizard-confirm-banner{display:flex;gap:12px;margin-bottom:1.5rem;padding:1rem;background:#3b82f61a;border-radius:12px;border:1px solid rgba(59,130,246,.2)}.payment-wizard-confirm-banner-icon{flex-shrink:0;margin-top:2px}.payment-wizard-confirm-banner-copy,.payment-wizard-notes-copy{font-size:.9rem;color:var(--text-secondary)}.payment-wizard-confirm-card{padding:1.5rem}.payment-wizard-confirm-head{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:1.25rem;margin-bottom:1.25rem;border-bottom:1px solid var(--border-color)}.payment-wizard-confirm-kicker,.payment-wizard-confirm-info-label{font-size:.8rem;color:var(--text-tertiary);margin-bottom:.25rem}.payment-wizard-confirm-kicker{font-weight:500}.payment-wizard-confirm-client{font-size:1.25rem;font-weight:700;color:var(--text-primary)}.payment-wizard-confirm-loan-number{font-size:.9rem;color:var(--text-secondary)}.payment-wizard-confirm-total-wrap,.payment-wizard-balance-covered-wrap{text-align:right}.payment-wizard-confirm-total{font-size:2rem;font-weight:700;color:var(--primary-400)}.payment-wizard-confirm-info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.25rem}.payment-wizard-confirm-info-item,.payment-wizard-distribution-card,.payment-wizard-balance-summary{background:var(--bg-secondary);border-radius:8px}.payment-wizard-confirm-info-item{padding:.75rem}.payment-wizard-confirm-info-value{font-weight:600;color:var(--text-primary)}.payment-wizard-distribution-card{padding:1.25rem;border-radius:12px;margin-bottom:1.25rem}.payment-wizard-distribution-title{font-size:.9rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.payment-wizard-distribution-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;text-align:center}.payment-wizard-distribution-item{padding:.75rem;background:var(--bg-card);border-radius:8px}.payment-wizard-distribution-value{font-size:1.25rem;font-weight:700;color:var(--text-primary)}.payment-wizard-distribution-value.is-danger{color:var(--error-400)}.payment-wizard-installments-covered{margin-top:1rem;padding:.75rem;background:#10b9811a;border-radius:8px;text-align:center}.payment-wizard-installments-covered-copy{font-size:.85rem;color:var(--success-400)}.payment-wizard-balance-summary{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#3b82f614;border-radius:12px;border:1px solid rgba(59,130,246,.2)}.payment-wizard-balance-value{font-size:1.5rem;font-weight:700;color:var(--text-primary)}.payment-wizard-balance-covered{font-size:1.25rem;font-weight:700;color:var(--primary-400)}.payment-wizard-notes-card{background:var(--bg-secondary)}.payment-wizard-notes-title{font-size:.9rem;color:var(--text-primary)}.payment-wizard-note-badge{font-size:.75rem;margin-bottom:.5rem}@media (max-width: 900px){.payment-wizard-fields-grid,.payment-wizard-evidence-grid,.payment-wizard-confirm-info-grid,.payment-wizard-overdue-grid,.payment-wizard-payment-type-grid,.payment-wizard-loans-grid,.payment-wizard-distribution-grid{grid-template-columns:1fr}.payment-wizard-balance-summary,.payment-wizard-confirm-head,.payment-wizard-balance-row{flex-direction:column;align-items:flex-start;gap:.75rem}.payment-wizard-confirm-total-wrap,.payment-wizard-balance-covered-wrap{text-align:left}}.backup-wizard-overlay{align-items:center;padding:20px}.backup-wizard-modal{width:min(1080px,calc(100vw - 40px));max-width:1080px;max-height:calc(100vh - 40px);display:flex;flex-direction:column;overflow:hidden;overscroll-behavior:contain}.backup-wizard-modal-header{position:relative;flex-shrink:0}.backup-wizard-modal-title-row,.backup-wizard-section-title,.backup-wizard-inline-actions,.backup-wizard-toggle-label,.backup-wizard-check-label,.backup-wizard-check-label-tight,.backup-wizard-toggle-info-row,.backup-wizard-option-row,.backup-wizard-retention-head,.backup-wizard-retention-info,.backup-wizard-sftp-alert-title{display:flex;align-items:center;gap:.75rem}.backup-wizard-modal-body{padding-top:1rem;overflow-y:auto;padding-bottom:1.25rem;overscroll-behavior:contain}.backup-wizard-modal-footer{justify-content:space-between;flex-shrink:0}.backup-wizard-grid-gap-lg,.backup-wizard-card-grid,.backup-wizard-card-grid-md,.backup-wizard-card-grid-sm,.backup-wizard-grid-gap-md,.backup-wizard-grid-gap-sm,.backup-wizard-grid-gap-xs{display:grid}.backup-wizard-grid-gap-lg,.backup-wizard-card-grid{gap:1rem}.backup-wizard-grid-gap-md,.backup-wizard-card-grid-sm{gap:.75rem}.backup-wizard-card-grid-md{gap:.9rem}.backup-wizard-grid-gap-sm{gap:.6rem}.backup-wizard-grid-gap-xs{gap:.5rem}.backup-wizard-card-pad{padding:1rem}.backup-wizard-card-pad-sm,.backup-wizard-card-subtle{padding:.9rem}.backup-wizard-card-toggle{padding:1rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.backup-wizard-card-subtle{background:var(--bg-glass);border:1px solid var(--border-color-light)}.backup-wizard-field-label,.backup-wizard-block-title{font-size:.75rem;color:var(--text-muted);font-weight:900;text-transform:uppercase;letter-spacing:.06em}.backup-wizard-field-label{margin-bottom:6px}.backup-wizard-two-col,.backup-wizard-summary-grid,.backup-wizard-advanced-grid{display:grid;gap:1rem}.backup-wizard-two-col{grid-template-columns:1fr 1fr}.backup-wizard-summary-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.6rem}.backup-wizard-advanced-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.backup-wizard-section-title{margin-bottom:1rem}.backup-wizard-section-icon{width:44px;height:44px;border-radius:14px;background:#3b82f61f;border:1px solid rgba(59,130,246,.25);display:flex;align-items:center;justify-content:center;color:var(--primary-300)}.backup-wizard-section-heading{font-size:1.35rem;font-weight:900}.backup-wizard-section-subtitle,.backup-wizard-text-secondary{color:var(--text-secondary)}.backup-wizard-section-subtitle,.backup-wizard-muted-sm,.backup-wizard-help-copy,.backup-wizard-help-copy-smb,.backup-wizard-type-hint,.backup-wizard-empty-muted,.backup-wizard-sftp-alert-copy{font-size:.85rem}.backup-wizard-help-copy{margin-top:10px;color:var(--text-muted)}.backup-wizard-help-copy-sm{margin-top:6px;font-size:.82rem;color:var(--text-muted)}.backup-wizard-help-copy-smb,.backup-wizard-type-hint{margin-top:8px;color:var(--text-muted)}.backup-wizard-cloud-intro,.backup-wizard-cloud-summary{display:grid;gap:.85rem}.backup-wizard-cloud-head{display:flex;align-items:flex-start;gap:.75rem}.backup-wizard-cloud-note{padding:.85rem 1rem;border-radius:14px;border:1px solid rgba(148,163,184,.12);background:#3b82f60d;color:var(--text-secondary);line-height:1.55}.backup-wizard-cloud-provider-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.85rem}.backup-wizard-cloud-compact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.backup-wizard-cloud-provider{width:100%;text-align:left;min-height:96px;padding:.85rem .95rem;border-radius:16px;border:1px solid rgba(148,163,184,.12);background:#ffffff08;color:var(--text-primary);transition:border-color .18s ease,background .18s ease,transform .18s ease}.backup-wizard-cloud-provider .backup-wizard-muted-sm{color:var(--text-secondary)}.backup-wizard-cloud-provider:hover{border-color:#60a5fa38;background:#60a5fa0f;transform:translateY(-1px)}.backup-wizard-cloud-provider.is-active{border-color:#60a5fa57;background:#60a5fa17;box-shadow:0 12px 32px #0f172a33}.backup-wizard-cloud-provider.is-disabled{opacity:.58;cursor:not-allowed;transform:none}.backup-wizard-cloud-provider.is-disabled:hover{border-color:#94a3b81f;background:#ffffff08;transform:none}.backup-wizard-cloud-summary{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.backup-wizard-cloud-summary-item{padding:.9rem 1rem;border-radius:14px;border:1px solid rgba(148,163,184,.1);background:#ffffff06}.backup-wizard-top-sm{margin-top:.5rem}.backup-wizard-top-xs{margin-top:8px}.backup-wizard-tabs-gap{margin-bottom:1rem}.backup-wizard-tabs-no-margin{margin-bottom:0}.backup-wizard-align-end{display:flex;justify-content:flex-end}.backup-wizard-prod-actions-row,.backup-wizard-retention-fields{margin-top:.75rem}.backup-wizard-prod-actions-row{display:flex;gap:.5rem;flex-wrap:wrap}.backup-wizard-retention-wrap{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color-light)}.backup-wizard-retention-head,.backup-wizard-option-row{justify-content:space-between;gap:.75rem}.backup-wizard-row-gap-sm{gap:8px}.backup-wizard-check-label-tight{margin-top:4px}.backup-wizard-check-input{accent-color:var(--primary-500)}.backup-wizard-toggle-status,.backup-wizard-strong,.backup-wizard-strong-sm,.backup-wizard-summary-value{font-weight:800}.backup-wizard-strong-sm{font-weight:700}.backup-wizard-summary-label{font-size:.78rem;color:var(--text-muted)}.backup-wizard-summary-value,.backup-wizard-summary-code{margin-top:4px}.backup-wizard-summary-code,.backup-wizard-plan-date{font-family:monospace}.backup-wizard-summary-code{font-size:.88rem;word-break:break-word}.backup-wizard-break-word{word-break:break-word}.backup-wizard-text-right{text-align:right}.backup-wizard-stepper-wrap{flex-shrink:0;padding:1rem 1.25rem;border-bottom:1px solid var(--border-color-light);overflow-x:auto;overflow-y:hidden}.backup-wizard-stepper{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;min-width:max-content}.backup-wizard-stepper-item{display:flex;align-items:center;gap:.75rem;flex:1}.backup-wizard-stepper-badge{width:34px;height:34px;border-radius:12px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);background:var(--bg-glass);color:var(--text-muted);font-weight:800}.backup-wizard-stepper-badge.is-active{border-color:#3b82f68c;background:#3b82f62e;color:var(--primary-300)}.backup-wizard-stepper-badge.is-done{border-color:#3b82f68c;background:#10b9811f;color:var(--success-500)}.backup-wizard-stepper-label-wrap{min-width:0}.backup-wizard-stepper-label{font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.backup-wizard-stepper-label.is-active{color:var(--text-primary)}.backup-wizard-stepper-line{flex:1;height:2px;background:var(--border-color-light)}.backup-wizard-week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.backup-wizard-day-btn{justify-content:center;font-weight:800}.backup-wizard-day-btn.is-selected{border:1px solid rgba(59,130,246,.6);background:#3b82f61f;color:var(--text-primary)}.backup-wizard-day-btn:not(.is-selected){border:1px solid var(--border-color);color:var(--text-secondary)}.backup-wizard-day-btn-compact{padding:.45rem .4rem;font-size:.8rem}.backup-wizard-plan-list{max-height:280px;overflow-y:auto;display:grid;gap:8px;padding-right:4px}.backup-wizard-plan-item{padding:.65rem .75rem;display:flex;align-items:center;justify-content:space-between;gap:8px}.backup-wizard-plan-date{font-size:.85rem}.backup-wizard-time-range-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center}.backup-wizard-separator{color:var(--text-muted);text-align:center}.backup-wizard-sftp-alert{padding:.75rem;border:1px solid var(--border-color);border-radius:12px;background:#f59e0b14}.backup-wizard-sftp-alert-title{font-weight:900;margin-bottom:6px;gap:8px}.backup-wizard-sftp-alert-copy{color:var(--text-secondary);font-size:.9rem}.backup-wizard-alert-tight{margin-top:2px}.backup-wizard-input-eye,.backup-wizard-select-normal{color-scheme:normal}@media (max-width: 900px){.backup-wizard-modal{width:calc(100vw - 20px);max-height:calc(100vh - 20px)}.backup-wizard-stepper-wrap{padding:.9rem 1rem}.backup-wizard-two-col,.backup-wizard-cloud-compact-grid,.backup-wizard-advanced-grid,.backup-wizard-summary-grid,.backup-wizard-week-grid,.backup-wizard-time-range-grid{grid-template-columns:1fr}.backup-wizard-stepper{flex-direction:column;align-items:stretch}.backup-wizard-stepper-line{display:none}.backup-wizard-modal-footer,.backup-wizard-option-row,.backup-wizard-card-toggle{flex-direction:column;align-items:flex-start}.automation-manual-backup-top{flex-direction:column;align-items:stretch}.backup-wizard-text-right{text-align:left}}.loans-page{padding-bottom:2rem}.loans-page-header{margin-bottom:1.5rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.loans-header-actions{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.loans-header-divider{width:1px;height:24px;background:var(--border-color)}.loans-delete-btn{height:42px}.loans-btn-icon{margin-right:6px}.loans-filter-card{overflow:visible;z-index:100}.loans-filter-body{padding:.75rem;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.loans-chip-row{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;margin-left:auto}.loans-filter-chip{border:none}.loans-controls-row{display:flex;align-items:center;gap:1rem;justify-content:flex-end;min-width:150px}.loans-col-menu-wrap{position:relative}.loans-col-btn{padding:8px 12px}.loans-col-btn.is-active{border-color:var(--primary-500);color:var(--primary-500)}.loans-col-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9998;background:transparent}.loans-col-dropdown{position:absolute;width:240px;background:#1e293b;border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-xl);z-index:9999;padding:.75rem;animation:fadeIn .2s ease-out}.loans-col-title{margin:0 0 .75rem;font-size:.75rem;text-transform:uppercase;color:var(--text-muted);font-weight:600;display:flex;align-items:center;gap:8px}.loans-col-list{display:flex;flex-direction:column;gap:4px}.loans-col-item{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:8px;cursor:pointer;transition:all .2s;background:transparent;color:var(--text-secondary)}.loans-col-item:hover{background:#ffffff0d;color:var(--text-primary)}.loans-col-item.is-selected{background:#3b82f61a;color:var(--primary-400)}.loans-col-item.is-selected:hover{color:var(--primary-400)}.loans-col-check{width:16px;height:16px;border-radius:4px;border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center;background:transparent;transition:all .2s}.loans-col-check.is-selected{border-color:var(--primary-500);background:var(--primary-500)}.loans-col-check-icon{color:#fff}.loans-col-label{flex:1;font-size:.85rem;font-weight:400}.loans-col-label.is-selected{font-weight:500}.loans-th-icon{width:40px}.loans-th-actions{width:100px}.loans-table-row{cursor:pointer;border-left:3px solid transparent;transition:all .15s ease}.loans-table-row.is-selected{background:#3b82f60d;border-left-color:var(--primary-500);font-weight:600;color:var(--primary-400)}.loans-row-tag-icon{color:var(--primary-500);display:flex;align-items:center;justify-content:center}.loans-cell-number{font-size:.85rem}.loans-cell-client{font-weight:500}.loans-cell-client.is-selected{font-weight:600}.loans-grid-wrap{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.loans-grid-card{position:relative;border:1px solid var(--border-color);box-shadow:var(--shadow-sm);background:var(--bg-card);transition:all .2s cubic-bezier(.4,0,.2,1);padding:16px}.loans-grid-card.is-selected{border-color:var(--primary-500);box-shadow:0 0 0 1px var(--primary-500),var(--shadow-md);background:#3b82f608}.loans-grid-card.has-mora:not(.is-selected){border:2px solid var(--error-500);box-shadow:0 0 0 1px #ef444433;background:#ef444405}.loans-grid-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.loans-grid-head-main{display:flex;gap:10px;align-items:center}.loans-grid-head-icon{width:40px;height:40px;color:var(--primary-500);display:flex;align-items:center;justify-content:center}.loans-grid-number{font-weight:600;font-size:.95rem}.loans-grid-date,.loans-grid-label{font-size:.75rem}.loans-grid-date{color:var(--text-secondary)}.loans-grid-body{display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:.85rem;margin-bottom:12px}.loans-grid-span-2{grid-column:span 2}.loans-grid-client-value{font-weight:500}.loans-grid-balance{color:var(--text-muted);font-weight:400}.loans-grid-balance.has-paid{color:var(--success-500);font-weight:600}.loans-grid-mora{color:var(--text-muted);font-weight:400;font-size:.85rem}.loans-grid-mora.has-mora{color:var(--error-500);font-weight:600}.loans-grid-footer{padding-top:12px;border-top:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.loans-grid-detail-btn{padding:6px 12px}.loans-grid-detail-icon{margin-right:6px;color:var(--primary-500)}.loans-grid-detail-text{color:var(--primary-500)}.loans-grid-footer-actions{display:flex;gap:4px}.loans-grid-edit-icon{color:var(--text-secondary)}@media (max-width: 900px){.loans-header-divider{display:none}.loans-grid-wrap{grid-template-columns:1fr}.loans-controls-row,.loans-chip-row{width:100%;justify-content:flex-start;margin-left:0}}.loan-wizard-page{max-width:900px;margin:0 auto}.loan-wizard-step-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;gap:1rem;flex-wrap:wrap}.loan-wizard-step-title{margin:0}.loan-wizard-mode-toggle{display:flex;background:var(--bg-secondary);padding:4px;border-radius:var(--radius-md);border:1px solid var(--border-color);gap:4px}.loan-wizard-mode-btn{border:1px solid transparent;border-radius:calc(var(--radius-md) - 2px);background:transparent;color:var(--text-secondary);font-size:.86rem;font-weight:700;padding:.45rem .8rem;cursor:pointer;transition:all .2s ease}.loan-wizard-mode-btn:hover{border-color:#3b82f659;color:var(--text-primary)}.loan-wizard-mode-btn.is-active{background:linear-gradient(135deg,var(--primary-500),var(--primary-600));border-color:var(--primary-400);color:#fff;box-shadow:0 8px 18px #2563eb47}.loan-wizard-alert-gap,.loan-wizard-top-md{margin-top:1rem}.loan-wizard-alert-gap{margin-bottom:1rem}.loan-wizard-client-list{display:grid;gap:.5rem;max-height:400px;overflow-y:auto}.loan-wizard-client-item{padding:1rem;border-radius:var(--radius-lg);border:2px solid var(--border-color);background:var(--bg-glass);cursor:pointer;display:flex;justify-content:space-between;align-items:center}.loan-wizard-client-item.is-selected{border-color:var(--primary-500);background:#3b82f61a}.loan-wizard-client-name{font-weight:600}.loan-wizard-client-id{font-size:.875rem;color:var(--text-muted)}.loan-wizard-risk-alert{margin-top:1rem;border-left-width:4px;border-left-style:solid}.loan-wizard-risk-alert-warning{border-left-color:#f59e0b}.loan-wizard-risk-alert-danger{border-left-color:var(--error-500)}.loan-wizard-risk-head{display:flex;gap:.5rem;align-items:center;margin-bottom:.25rem}.loan-wizard-risk-emoji,.loan-wizard-manual-emoji{font-size:1.25rem}.loan-wizard-risk-body{padding-left:2rem}.loan-wizard-risk-tags{display:flex;gap:.5rem;margin-top:.5rem;flex-wrap:wrap}.loan-wizard-risk-copy-main{margin:.5rem 0}.loan-wizard-risk-copy-sub,.loan-wizard-manual-copy,.loan-wizard-contract-preview-copy{margin:0;font-size:.875rem;color:var(--text-secondary)}.loan-wizard-form-grid,.loan-wizard-summary-grid,.loan-wizard-success-docs-grid,.loan-wizard-confirm-grid{display:grid;gap:1rem}.loan-wizard-form-grid{grid-template-columns:repeat(2,1fr)}.loan-wizard-span-full{grid-column:1 / -1}.loan-wizard-auto-rate-pill{margin-left:.5rem;font-size:.75rem;padding:.15rem .5rem;background:#22c55e26;color:#22c55e;border-radius:4px;font-weight:600}.loan-wizard-manual-card{padding:1.25rem;background:var(--bg-tertiary);border:1px solid var(--primary-500)}.loan-wizard-manual-head{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.loan-wizard-manual-label{margin-bottom:0;color:var(--primary-400)}.loan-wizard-manual-grid{display:grid;gap:.5rem}.loan-wizard-manual-row{display:flex;align-items:center;gap:1rem}.loan-wizard-manual-input{max-width:150px;font-size:1.1rem;font-weight:700}.loan-wizard-manual-note{font-size:.9rem;color:var(--text-muted)}.loan-wizard-upload-group{border-top:1px dashed var(--border-color);padding-top:1rem}.loan-wizard-upload-ok{margin-top:.5rem;font-size:.8rem;color:var(--success-600)}.loan-wizard-summary-card,.loan-wizard-confirm-card{padding:1.5rem}.loan-wizard-summary-card{margin-bottom:1.5rem;background:var(--bg-glass)}.loan-wizard-summary-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;gap:.5rem}.loan-wizard-summary-divider{margin:1rem 0;border-color:var(--border-color)}.loan-wizard-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));text-align:center}.loan-wizard-summary-grid-top{align-items:center}.loan-wizard-summary-k,.loan-wizard-confirm-client-id{font-size:.875rem;color:var(--text-muted)}.loan-wizard-summary-k-sm{font-size:.75rem;color:var(--text-muted)}.loan-wizard-summary-big{font-size:1.75rem;font-weight:700}.loan-wizard-summary-big-primary{color:var(--primary-500)}.loan-wizard-summary-mid{font-size:1.25rem;font-weight:500}.loan-wizard-summary-v{font-weight:600}.loan-wizard-summary-v-accent,.loan-wizard-confirm-amount-accent{color:var(--accent-400)}.loan-wizard-schedule-table-wrap{max-height:300px}.loan-wizard-row-paid{opacity:.5;background:var(--success-100)}.loan-wizard-confirm-card{margin-top:1rem}.loan-wizard-confirm-client{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.loan-wizard-confirm-client-name{font-size:1.25rem;font-weight:600}.loan-wizard-confirm-grid{grid-template-columns:1fr 1fr;gap:2rem}.loan-wizard-bottom-xs{margin-bottom:.25rem}.loan-wizard-confirm-amount{font-size:1.5rem;font-weight:700}.loan-wizard-contract-preview-box{margin-top:1rem;padding:1rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-glass)}.loan-wizard-contract-preview-title{font-size:.875rem;font-weight:600;margin-bottom:.5rem}.loan-wizard-contract-preview-image{max-height:150px;max-width:100%;object-fit:contain;border:1px solid #ddd}.loan-wizard-success-modal{max-width:600px;text-align:center;padding:2rem}.loan-wizard-success-emoji{font-size:3rem;margin-bottom:1rem}.loan-wizard-success-title{margin-bottom:.5rem}.loan-wizard-success-docs-grid{margin:1.5rem 0;grid-template-columns:1fr 1fr}.loan-wizard-success-doc-card{padding:1rem;border:1px solid var(--border-color)}.loan-wizard-success-doc-icon{font-size:2rem;margin-bottom:.5rem}.loan-wizard-success-doc-title{font-weight:700;margin-bottom:.5rem}.loan-wizard-success-doc-btn{width:100%}.loan-wizard-success-copy{color:var(--text-secondary);margin-bottom:1.5rem}.loan-wizard-success-actions{display:grid;gap:1rem}@media (max-width: 900px){.loan-wizard-form-grid,.loan-wizard-summary-grid,.loan-wizard-confirm-grid,.loan-wizard-success-docs-grid{grid-template-columns:1fr}.loan-wizard-manual-row,.loan-wizard-step-head{align-items:stretch;flex-direction:column}.loan-wizard-footer,.client-wizard-footer{flex-direction:column;align-items:stretch}.loan-wizard-footer-left,.loan-wizard-footer-right,.client-wizard-footer-left,.client-wizard-footer-right{justify-content:flex-end;margin-left:0;flex-wrap:wrap}}.client-doc-preview-image{max-width:100%;max-height:70vh;display:block;margin:0 auto;border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.client-doc-preview-frame{width:100%;min-height:70vh;border:none;border-radius:var(--radius-md)}.folder-picker-overlay{align-items:center}.folder-picker-modal{max-width:920px}.folder-picker-title-wrap{display:flex;align-items:center;gap:.75rem}.folder-picker-icon-badge{width:42px;height:42px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:#3b82f61f;border:1px solid rgba(59,130,246,.25);color:var(--primary-300)}.folder-picker-current-path{font-size:.85rem;color:var(--text-muted)}.folder-picker-toolbar-card{padding:1rem;margin-bottom:1rem}.folder-picker-toolbar-row{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.folder-picker-path-input{flex:1;min-width:260px}.folder-picker-search-wrap{margin-top:.75rem}.folder-picker-search-bar{max-width:100%}.folder-picker-error-alert{margin-top:.75rem}.folder-picker-cell-muted-center{text-align:center;color:var(--text-muted)}.folder-picker-row{cursor:pointer}.folder-picker-row-main{display:flex;align-items:center;gap:.5rem}.folder-picker-row-icon-up{transform:rotate(-90deg);color:var(--text-muted)}.folder-picker-row-icon-drive{color:var(--success-500)}.folder-picker-row-icon-folder{color:var(--primary-400)}.folder-picker-row-name{font-weight:800}.folder-picker-row-path{color:var(--text-muted);font-size:.85rem}@media (max-width: 760px){.folder-picker-modal{width:100%}.folder-picker-path-input{min-width:100%}}.backup-center-page{width:100%;min-height:100vh;background:#0f172a;color:#f1f5f9;display:flex;flex-direction:column}.backup-center-tabs{display:flex;gap:1rem;border-bottom:2px solid #1e293b;padding:0 2rem;background:#1e293b}.backup-center-tab{padding:1rem 2rem;background:transparent;color:#94a3b8;border:none;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s}.backup-center-tab.is-active{background:#3b82f6;color:#fff;border-bottom:3px solid #3b82f6}.backup-center-content{flex:1;overflow:hidden}.backup-center-status-wrap{padding:2rem;overflow-y:auto;height:100%}.backup-center-section-gap{margin-bottom:2rem}.backup-center-section-title{font-size:1.5rem;margin-bottom:1rem;font-weight:600}.backup-center-system-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.backup-center-stat-card,.backup-center-history-card,.backup-center-jobs-panel{background:#1e293b;border-radius:8px;border:1px solid #334155}.backup-center-stat-card{padding:1.5rem}.backup-center-stat-label{font-size:.875rem;color:#94a3b8;margin-bottom:.5rem}.backup-center-stat-value{font-size:1.1rem;font-weight:600}.backup-center-stat-status{font-size:1.25rem;display:flex;align-items:center;gap:.5rem}.backup-center-stat-status.is-active{color:#10b981}.backup-center-stat-status.is-inactive{color:#6b7280}.backup-center-status-dot{width:10px;height:10px;border-radius:50%}.backup-center-status-dot.is-active{background:#10b981}.backup-center-status-dot.is-inactive{background:#6b7280}.backup-center-history-card{overflow:hidden}.backup-center-history-table{width:100%;border-collapse:collapse}.backup-center-history-head-row{background:#0f172a;border-bottom:2px solid #334155}.backup-center-history-table th,.backup-center-history-table td{padding:1rem;text-align:left;font-size:.875rem}.backup-center-history-table th{font-weight:600;color:#94a3b8}.backup-center-history-table td{color:#e2e8f0}.backup-center-history-row{border-bottom:1px solid #334155}.backup-center-status-pill{padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:500}.backup-center-status-pill.is-success{background:#d1fae5;color:#065f46}.backup-center-status-pill.is-error{background:#fee2e2;color:#991b1b}.backup-center-filename-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.backup-center-ghost-btn{padding:.5rem 1rem;background:transparent;border:1px solid #334155;border-radius:4px;color:#94a3b8;cursor:pointer;font-size:.875rem}.backup-center-empty-row{padding:2rem!important;text-align:center!important;color:#94a3b8!important}.backup-center-config-layout{display:flex;height:100%}.backup-center-jobs-panel{width:350px;border-right:1px solid #334155;display:flex;flex-direction:column;overflow:hidden}.backup-center-jobs-header{padding:1.5rem;border-bottom:1px solid #334155;display:flex;justify-content:space-between;align-items:center}.backup-center-jobs-title,.backup-center-job-name{margin:0;font-weight:600}.backup-center-jobs-title{font-size:1.25rem}.backup-center-job-name{font-size:1rem}.backup-center-add-btn{width:40px;height:40px;border-radius:8px;background:#3b82f6;color:#fff;border:none;font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.backup-center-jobs-list{flex:1;overflow-y:auto;padding:1rem}.backup-center-job-card{background:#0f172a;border-radius:8px;padding:1.5rem;margin-bottom:1rem;border:1px solid #334155}.backup-center-job-top{display:flex;justify-content:space-between;margin-bottom:.75rem;gap:.5rem}.backup-center-job-status{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.backup-center-job-status.is-active{background:#d1fae5;color:#065f46}.backup-center-job-status.is-inactive{background:#334155;color:#94a3b8}.backup-center-job-description{font-size:.875rem;color:#94a3b8;margin-bottom:1rem}.backup-center-job-meta{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #334155}.backup-center-job-meta-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#e2e8f0}.backup-center-job-actions{display:flex;gap:.5rem}.backup-center-run-btn{flex:1;padding:.75rem;background:#10b981;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:600}.backup-center-icon-btn{padding:.75rem;background:transparent;color:#f1f5f9;border:1px solid #334155;border-radius:6px;cursor:pointer;font-size:.875rem}.backup-center-icon-btn.is-danger{color:#ef4444}.backup-center-jobs-empty{text-align:center;padding:3rem 1rem;color:#94a3b8}.backup-center-jobs-empty-icon{font-size:3rem;margin-bottom:1rem}.backup-center-jobs-empty-copy{font-size:.875rem}.backup-center-jobs-empty-copy-sub{margin-top:.5rem}.backup-center-empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem;background:#0f172a}.backup-center-empty-content{text-align:center;max-width:500px}.backup-center-empty-icon{width:120px;height:120px;border-radius:50%;background:#3b82f61a;display:flex;align-items:center;justify-content:center;margin:0 auto 2rem;font-size:3rem}.backup-center-empty-title{font-size:2rem;font-weight:700;margin-bottom:1rem}.backup-center-empty-copy{font-size:1rem;color:#94a3b8;margin-bottom:2rem;line-height:1.6}.backup-center-open-wizard-btn{padding:1rem 2rem;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:.75rem;box-shadow:0 4px 6px #3b82f64d}.backup-center-open-wizard-icon{font-size:1.25rem}@media (max-width: 1100px){.backup-center-system-grid{grid-template-columns:1fr}.backup-center-config-layout{flex-direction:column}.backup-center-jobs-panel{width:100%;max-height:50vh}}.context-menu{background:var(--bg-primary, #1e293b);border:1px solid var(--border-color, #334155);border-radius:8px;box-shadow:0 10px 40px #0006;min-width:200px;padding:6px 0;animation:contextMenuFadeIn .1s ease}@keyframes contextMenuFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.context-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;background:none;border:none;color:var(--text-primary, #f1f5f9);font-size:.875rem;text-align:left;cursor:pointer;transition:background .15s}.context-menu-item:hover{background:var(--bg-hover, #334155)}.context-menu-item svg{width:16px;height:16px;opacity:.8}.context-menu-item-primary{color:#60a5fa}.context-menu-item-secondary{color:#94a3b8}.context-menu-item-warning{color:#fbbf24}.context-menu-item-danger{color:#f87171}.context-menu-item-danger:hover{background:#f8717126}.context-menu-item-success{color:#4ade80}.sidebar.collapsed,.sidebar.collapsed .sidebar-nav{overflow:visible!important}[data-tooltip]:before{z-index:999999!important}.modal-header button:has(svg),.modal button.btn-icon-premium.danger:has(svg),.modal button[title=Cerrar]:has(svg),.modal button[title=Cancelar]:has(svg.lucide-x){display:none!important}body:has(.modal-overlay),body:has(.confirm-modal-root){overflow:hidden!important}@media print{body{background:#fff;color:#000}.sidebar,.header,.fab-container{display:none!important}.main-content{margin-left:0!important}.card{box-shadow:none;border:1px solid #ddd}}.currency{font-variant-numeric:tabular-nums}.currency:before{content:"RD$ ";font-size:.85em;opacity:.8}.currency-lg{font-size:var(--font-size-2xl);font-weight:700}.light-mode{--bg-primary: #f5f6f8;--bg-main: #f5f6f8;--bg-secondary: #fafbfc;--bg-surface: #fafbfc;--bg-tertiary: #eef0f3;--bg-card: rgba(250, 251, 252, .95);--bg-card-hover: rgba(255, 255, 255, 1);--bg-glass: rgba(0, 0, 0, .02);--bg-glass-hover: rgba(0, 0, 0, .04);--bg-hover: #eef0f3;--text-primary: #1e293b;--text-secondary: #475569;--text-tertiary: #64748b;--text-muted: #94a3b8;--border-color: #d1d5db;--border-color-light: #e5e7eb;--border-color-hover: #9ca3af;--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .04);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .04), 0 2px 4px -2px rgba(0, 0, 0, .03);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .04), 0 4px 6px -4px rgba(0, 0, 0, .03);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .04), 0 8px 10px -6px rgba(0, 0, 0, .03);--primary-rgb: 59, 130, 246}.light-mode body:before,.light-mode:before{background:radial-gradient(ellipse at 20% 20%,rgba(59,130,246,.08) 0%,transparent 50%),radial-gradient(ellipse at 80% 80%,rgba(124,58,237,.06) 0%,transparent 50%),radial-gradient(ellipse at 50% 50%,rgba(245,158,11,.03) 0%,transparent 70%)!important}.light-mode .card{background:var(--bg-card);border-color:var(--border-color-light);box-shadow:var(--shadow-sm)}.light-mode .card:hover{box-shadow:var(--shadow-md)}.light-mode .form-input,.light-mode .form-select,.light-mode .form-textarea{background:#fff;border-color:var(--border-color);color:var(--text-primary)}.light-mode .form-input:focus,.light-mode .form-select:focus,.light-mode .form-textarea:focus{border-color:var(--primary-400);box-shadow:0 0 0 3px #3b82f61a}.light-mode .table{background:transparent}.light-mode .table th{background:var(--bg-tertiary);color:var(--text-secondary);border-color:var(--border-color-light)}.light-mode .table td{border-color:var(--border-color-light)}.light-mode .table tr:hover td{background:var(--bg-glass)}.light-mode .sidebar{background:var(--bg-secondary);border-color:var(--border-color-light)}.light-mode .sidebar-item:hover{background:var(--bg-glass-hover)}.light-mode .sidebar-item.active{background:#3b82f614;color:var(--primary-500)}.light-mode .btn-primary{background:var(--primary-500);border-color:var(--primary-500)}.light-mode .btn-secondary{background:var(--bg-tertiary);border-color:var(--border-color);color:var(--text-primary)}.light-mode .modal{background:var(--bg-secondary);border-color:var(--border-color-light)}.light-mode .modal-header{background:var(--bg-tertiary);border-color:var(--border-color-light)}.light-mode .badge{background:var(--bg-tertiary);color:var(--text-secondary)}.light-mode .badge-success{background:#22c55e1a;color:#16a34a}.light-mode .badge-danger{background:#ef44441a;color:#dc2626}.light-mode .badge-warning{background:#f59e0b1a;color:#d97706}.light-mode .alert{border-color:var(--border-color-light)}.light-mode .alert-success{background:#22c55e14;border-color:#22c55e33}.light-mode .alert-danger{background:#ef444414;border-color:#ef444433}.light-mode .alert-warning{background:#f59e0b14;border-color:#f59e0b33}@media print{@page{margin:.5cm;size:auto}body{background:#fff;color:#000}body *{visibility:hidden}.no-print,.sidebar,.page-header,.grid-stats,.card.mb-6,.table-container,.modal-header,.modal-footer,.btn,.modal-overlay{display:none!important}.modal-overlay .modal,.modal-overlay .modal-body,.printable-area,.printable-area *{visibility:visible}.modal-overlay{position:absolute;left:0;top:0;width:100%;height:auto;background:#fff;display:block!important;z-index:9999;padding:0;-webkit-backdrop-filter:none;backdrop-filter:none}.modal{box-shadow:none;border:none;max-width:100%!important;max-height:none!important;position:static;transform:none;animation:none;background:#fff;color:#000}.modal-body{padding:0;margin:0;overflow:visible!important}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes slideOutRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}.animate-slide-in-right{animation:slideInRight .3s cubic-bezier(.16,1,.3,1) forwards}.animate-fade-in-up{animation:slideUp .4s cubic-bezier(.16,1,.3,1) forwards}.glass-panel{background:var(--bg-card);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color);box-shadow:0 4px 30px #0000001a}.glass-sidebar{background:var(--bg-secondary);background:#0f172ad9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-right:1px solid var(--border-color)}[data-theme=light] .glass-sidebar{background:#ffffffe6;border-right:1px solid var(--border-color)}[data-theme=light] .dashboard-date-input{color-scheme:light}[data-theme=light] .dashboard-date-input::-webkit-calendar-picker-indicator{filter:none;opacity:.6}.btn-sink:active{transform:scale(.96)}.hover-glow:hover{box-shadow:0 0 15px #3b82f666;border-color:#3b82f680}.status-dot{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:6px}.status-dot.active{background-color:var(--success-500);box-shadow:0 0 #10b98166;animation:pulse-green 2s infinite}@keyframes pulse-green{0%{box-shadow:0 0 #10b98166}70%{box-shadow:0 0 0 6px #10b98100}to{box-shadow:0 0 #10b98100}}.sidebar.collapsed{width:var(--sidebar-collapsed-width)}.sidebar.collapsed .sidebar-nav-title,.sidebar.collapsed .sidebar-logo span,.sidebar.collapsed .sidebar-footer{display:none}.sidebar.collapsed .sidebar-nav-item{justify-content:center;padding:var(--spacing-3)}.sidebar.collapsed .sidebar-nav-item span{display:none}.main-content.expanded{margin-left:var(--sidebar-collapsed-width)}
