@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";.dashboard{background:var(--dash-bg);width:100%;min-height:100vh;color:var(--dash-text);font-family:Inter,system-ui,-apple-system,sans-serif;transition:background .3s,color .3s}[data-theme=dark] .dashboard{--dash-bg:#050505;--dash-card:#111827;--dash-card-hover:#1a2332;--dash-text:#f1f5f9;--dash-text-secondary:#94a3b8;--dash-text-muted:#64748b;--dash-border:#1f2937;--dash-border-light:#374151;--dash-primary:#3b82f6;--dash-primary-bg:#3b82f61a;--dash-success:#22c55e;--dash-success-bg:#22c55e1a;--dash-warning:#f59e0b;--dash-warning-bg:#f59e0b1a;--dash-danger:#ef4444;--dash-danger-bg:#ef44441a;--dash-header-gradient:linear-gradient(135deg, #0a0a1a, #0d0d2b, #0a0a1a);--dash-shadow:#0000004d}[data-theme=light] .dashboard{--dash-bg:#f1f5f9;--dash-card:#fff;--dash-card-hover:#fafbfc;--dash-text:#0f172a;--dash-text-secondary:#475569;--dash-text-muted:#94a3b8;--dash-border:#e2e8f0;--dash-border-light:#cbd5e1;--dash-primary:#2563eb;--dash-primary-bg:#2563eb14;--dash-success:#16a34a;--dash-success-bg:#16a34a14;--dash-warning:#d97706;--dash-warning-bg:#d9770614;--dash-danger:#dc2626;--dash-danger-bg:#dc262614;--dash-header-gradient:linear-gradient(135deg, #1e293b, #334155, #1e293b);--dash-shadow:#00000014}.dash-header{background:var(--dash-header-gradient);border:1px solid var(--dash-border);box-shadow:0 8px 32px var(--dash-shadow);border-radius:16px;margin-bottom:24px;padding:20px 24px;position:relative;overflow:hidden}.dash-header:before{content:"";pointer-events:none;background:#3b82f60a;border-radius:50%;width:300px;height:300px;position:absolute;top:-50%;right:-20%}.dash-header:after{content:"";pointer-events:none;background:#a855f708;border-radius:50%;width:250px;height:250px;position:absolute;bottom:-50%;left:-10%}.dash-header-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex;position:relative}.dash-brand{align-items:center;gap:14px;display:flex}.dash-logo{color:#fff;background:linear-gradient(135deg,#2563eb,#1d4ed8);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:18px;font-weight:800;display:flex;box-shadow:0 4px 12px #2563eb4d}.dash-title{color:#fff;margin:0;font-size:20px;font-weight:700;line-height:1.2}.dash-subtitle{color:#ffffff80;align-items:center;gap:6px;margin:2px 0 0;font-size:13px;display:flex}.dash-user-area{align-items:center;gap:12px;display:flex}.dash-user-info{text-align:right}.dash-user-name{color:#fff;margin:0;font-size:14px;font-weight:600}.dash-user-name span{color:#60a5fa}.dash-user-role{color:#ffffff73;margin:1px 0 0;font-size:12px}.dash-header-btn{color:#f87171;cursor:pointer;white-space:nowrap;background:#ef444414;border:1px solid #ef444440;border-radius:8px;align-items:center;gap:6px;padding:7px 14px;font-family:inherit;font-size:12px;font-weight:500;transition:all .2s;display:inline-flex}.dash-header-btn:hover{color:#fca5a5;background:#ef44442e;border-color:#ef444473}.dash-header-btn:active{transform:scale(.96)}.dash-theme-btn{color:#ffffffb3;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;font-family:inherit;font-size:16px;transition:all .2s;display:inline-flex}.dash-theme-btn:hover{color:#fff;background:#ffffff1f}.stats-grid{grid-template-columns:repeat(6,1fr);gap:14px;margin-bottom:24px;display:grid}@media (width<=1200px){.stats-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=640px){.stats-grid{grid-template-columns:repeat(2,1fr);gap:10px}}@media (width<=400px){.stats-grid{grid-template-columns:1fr}}.stat-card{background:var(--dash-card);border:1px solid var(--dash-border);cursor:default;border-radius:12px;padding:16px 18px;transition:all .25s;position:relative;overflow:hidden}.stat-card:hover{border-color:var(--dash-primary);box-shadow:0 8px 24px var(--dash-shadow);border-color:#3b82f633;transform:translateY(-2px)}.stat-card-inner{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.stat-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:18px;display:flex;box-shadow:0 4px 12px #00000026}.stat-info{flex:1;min-width:0}.stat-label{text-transform:uppercase;letter-spacing:.08em;color:var(--dash-text-muted);margin:0;font-size:10px;font-weight:600}.stat-value{color:var(--dash-text);font-variant-numeric:tabular-nums;margin:4px 0 0;font-size:22px;font-weight:700;line-height:1.1}.stat-trend{align-items:center;gap:4px;margin-top:6px;font-size:11px;font-weight:500;display:inline-flex}.stat-trend.up{color:var(--dash-success)}.stat-trend.down{color:var(--dash-danger)}.stat-trend.neutral{color:var(--dash-text-muted)}.nav-section-title{color:var(--dash-text-secondary);margin:0 0 12px 4px;font-size:13px;font-weight:600}.nav-grid{scrollbar-width:none;gap:10px;margin-bottom:24px;padding-bottom:4px;display:flex;overflow-x:auto}.nav-grid::-webkit-scrollbar{display:none}.nav-item{border:1px solid var(--dash-border);background:var(--dash-card);color:var(--dash-text-secondary);cursor:pointer;white-space:nowrap;border-radius:12px;flex-shrink:0;align-items:center;gap:10px;padding:12px 20px;font-family:inherit;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.nav-item:hover{background:var(--dash-card-hover);color:var(--dash-text);box-shadow:0 6px 20px var(--dash-shadow);border-color:#3b82f64d;transform:translateY(-2px)}.nav-item:active{transform:scale(.97)}.nav-item-icon{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:15px;display:flex;box-shadow:0 2px 8px #0000001a}.action-row{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px;display:grid}@media (width<=480px){.action-row{grid-template-columns:1fr}}.action-btn{cursor:pointer;color:#fff;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:14px;font-family:inherit;font-size:14px;font-weight:600;transition:all .2s;display:flex}.action-btn:active{transform:scale(.97)}.action-btn.primary{background:linear-gradient(135deg,#2563eb,#1d4ed8)}.action-btn.primary:hover{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 4px 16px #2563eb59}.action-btn.success{background:linear-gradient(135deg,#16a34a,#15803d)}.action-btn.success:hover{background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 4px 16px #16a34a59}.action-btn.warning{background:linear-gradient(135deg,#d97706,#b45309)}.action-btn.warning:hover{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 4px 16px #d9770659}.content-grid{grid-template-columns:2fr 1fr;gap:20px;display:grid}@media (width<=900px){.content-grid{grid-template-columns:1fr}}.section-card{background:var(--dash-card);border:1px solid var(--dash-border);box-shadow:0 2px 12px var(--dash-shadow);border-radius:12px;overflow:hidden}.section-header{border-bottom:1px solid var(--dash-border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.section-header-left{align-items:center;gap:10px;display:flex}.section-icon{border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;display:flex}.section-icon.blue{background:var(--dash-primary-bg)}.section-icon.yellow{background:var(--dash-warning-bg)}.section-icon.green{background:var(--dash-success-bg)}.section-title{color:var(--dash-text);margin:0;font-size:14px;font-weight:600}.section-subtitle{color:var(--dash-text-muted);margin:1px 0 0;font-size:11px}.section-link{color:var(--dash-primary);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;font-family:inherit;font-size:12px;transition:color .2s;display:inline-flex}.section-link:hover{color:var(--dash-primary);opacity:.8}.table-wrap{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:13px}.data-table thead th{text-align:left;text-transform:uppercase;letter-spacing:.08em;color:var(--dash-text-muted);border-bottom:1px solid var(--dash-border);white-space:nowrap;padding:12px 16px;font-size:10px;font-weight:600}.data-table thead th:last-child,.data-table thead th:nth-child(2),.data-table thead th:nth-child(3){text-align:right}.data-table tbody tr{border-bottom:1px solid var(--dash-border);border-bottom-color:#ffffff08;transition:background .15s}.data-table tbody tr:hover{background:#ffffff05}[data-theme=light] .data-table tbody tr:hover{background:#00000005}.data-table tbody td{vertical-align:middle;padding:12px 16px}.data-table tbody td:last-child{text-align:right}.data-table tbody td:nth-child(2){text-align:right;color:var(--dash-text);font-weight:600}.data-table tbody td:nth-child(3){text-align:right;color:var(--dash-text-secondary)}.client-cell{align-items:center;gap:10px;display:flex}.client-avatar{color:#fff;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:11px;font-weight:700;display:flex}.client-name{color:var(--dash-text);font-weight:500}.badge{text-transform:uppercase;letter-spacing:.04em;border-radius:20px;align-items:center;gap:4px;padding:3px 10px;font-size:10px;font-weight:600;display:inline-flex}.badge-success{background:var(--dash-success-bg);color:var(--dash-success)}.badge-warning{background:var(--dash-warning-bg);color:var(--dash-warning)}.badge-danger{background:var(--dash-danger-bg);color:var(--dash-danger)}.payments-list{flex-direction:column;display:flex}.payment-item{border-bottom:1px solid var(--dash-border);padding:14px 20px;transition:background .15s}.payment-item:last-child{border-bottom:none}.payment-item:hover{background:#ffffff05}[data-theme=light] .payment-item:hover{background:#00000005}.payment-top{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.payment-client{align-items:center;gap:10px;min-width:0;display:flex}.payment-avatar{color:#fff;background:linear-gradient(135deg,#f59e0b,#ea580c);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:10px;font-weight:700;display:flex}.payment-name{color:var(--dash-text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.payment-installment{color:var(--dash-text-muted);margin-top:1px;font-size:10px}.payment-amount{color:var(--dash-text);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:14px;font-weight:700}.payment-bottom{align-items:center;gap:12px;display:flex}.payment-bar{background:var(--dash-border);border-radius:4px;flex:1;height:5px;overflow:hidden}.payment-bar-fill{background:linear-gradient(90deg,#f59e0b,#ea580c);border-radius:4px;height:100%;transition:width .5s}.payment-date{color:var(--dash-text-muted);white-space:nowrap;align-items:center;gap:4px;font-size:10px;display:flex}.payment-footer{border-top:1px solid var(--dash-border);padding:12px 20px}.payment-footer button{text-align:center;width:100%;color:var(--dash-primary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;gap:4px;font-family:inherit;font-size:12px;transition:color .2s;display:flex}.payment-footer button:hover{opacity:.8}.empty-state{color:var(--dash-text-muted);flex-direction:column;justify-content:center;align-items:center;padding:48px 20px;font-size:14px;display:flex}.overdue-alert{background:var(--dash-danger-bg);border:1px solid var(--dash-danger);border-color:#ef444426;border-radius:12px;align-items:flex-start;gap:12px;margin-bottom:24px;padding:16px 20px;display:flex}.overdue-alert-icon{flex-shrink:0;margin-top:1px;font-size:20px}.overdue-alert-content{flex:1}.overdue-alert-title{color:var(--dash-danger);margin:0 0 4px;font-size:14px;font-weight:600}.overdue-alert-item{color:var(--dash-text-secondary);justify-content:space-between;padding:3px 0;font-size:13px;display:flex}.overdue-alert-item span:last-child{color:var(--dash-danger);font-weight:600}.overdue-alert-btn{background:var(--dash-danger);color:#fff;cursor:pointer;border:none;border-radius:6px;margin-top:8px;padding:6px 16px;font-family:inherit;font-size:12px;font-weight:500;transition:opacity .2s}.overdue-alert-btn:hover{opacity:.9}.dash-loading{min-height:80vh;color:var(--dash-text-muted);justify-content:center;align-items:center;font-size:15px;display:flex}.app-page{background:var(--page-bg);min-height:100vh;color:var(--page-text);--page-bg:#f1f5f9;--page-card:#fff;--page-card-hover:#fafbfc;--page-text:#0f172a;--page-text-secondary:#475569;--page-text-muted:#94a3b8;--page-border:#e2e8f0;--page-border-light:#cbd5e1;--page-primary:#2563eb;--page-primary-bg:#2563eb14;--page-success:#16a34a;--page-success-bg:#16a34a14;--page-warning:#d97706;--page-warning-bg:#d9770614;--page-danger:#dc2626;--page-danger-bg:#dc262614;--page-info:#0891b2;--page-info-bg:#0891b214;--page-input-bg:#fff;--page-shadow:#00000014;--page-header-gradient:linear-gradient(135deg, #1e293b, #334155, #1e293b);font-family:Inter,system-ui,-apple-system,sans-serif;transition:background .3s,color .3s}[data-theme=dark] .app-page{--page-bg:#050505;--page-card:#111827;--page-card-hover:#1a2332;--page-text:#f1f5f9;--page-text-secondary:#94a3b8;--page-text-muted:#64748b;--page-border:#1f2937;--page-border-light:#374151;--page-primary:#3b82f6;--page-primary-bg:#3b82f61a;--page-success:#22c55e;--page-success-bg:#22c55e1a;--page-warning:#f59e0b;--page-warning-bg:#f59e0b1a;--page-danger:#ef4444;--page-danger-bg:#ef44441a;--page-info:#06b6d4;--page-info-bg:#06b6d41a;--page-input-bg:#1f2937;--page-shadow:#0000004d;--page-header-gradient:linear-gradient(135deg, #0a0a1a, #0d0d2b, #0a0a1a)}.page-shell{max-width:960px;margin:0 auto;padding:20px 16px 40px}.page-header{border:1px solid var(--page-border);background:var(--page-header-gradient);box-shadow:0 8px 32px var(--page-shadow);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;padding:14px 18px;display:flex;position:relative;overflow:hidden}.page-header:before{content:"";pointer-events:none;background:#3b82f60d;border-radius:50%;width:240px;height:240px;position:absolute;top:-60%;right:-15%}.page-header-left{flex-wrap:wrap;align-items:center;gap:14px;display:flex;position:relative}.page-back{color:#ffffffd9;cursor:pointer;white-space:nowrap;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:600;transition:all .2s;display:inline-flex}.page-back:hover{color:#fff;background:#ffffff24}.page-title-wrap{align-items:center;gap:10px;display:flex}.page-title-icon{background:linear-gradient(135deg,#2563eb,#1d4ed8);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:16px;display:flex;box-shadow:0 4px 12px #2563eb4d}.page-title{color:#fff;margin:0;font-size:18px;font-weight:700;line-height:1.2}.page-header-right{align-items:center;gap:8px;margin-left:auto;display:flex;position:relative}.page-theme-btn{color:#ffffffb3;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;font-family:inherit;font-size:16px;transition:all .2s;display:inline-flex}.page-theme-btn:hover{color:#fff;background:#ffffff1f}.page-logout{color:#f87171;cursor:pointer;white-space:nowrap;background:#ef444414;border:1px solid #ef444440;border-radius:8px;align-items:center;gap:6px;padding:7px 14px;font-family:inherit;font-size:12px;font-weight:500;transition:all .2s;display:inline-flex}.page-logout:hover{color:#fca5a5;background:#ef44442e;border-color:#ef444473}.page-logout:active{transform:scale(.96)}.page-card{background:var(--page-card);border:1px solid var(--page-border);box-shadow:0 2px 12px var(--page-shadow);border-radius:12px;margin-bottom:10px;padding:14px 16px;transition:border-color .2s,box-shadow .2s}.page-card.hoverable:hover{box-shadow:0 8px 24px var(--page-shadow);border-color:#3b82f633}.page-card-form{margin-bottom:16px}.page-toolbar{grid-template-columns:1fr auto;align-items:center;gap:10px;margin-bottom:16px;display:grid}@media (width<=560px){.page-toolbar{grid-template-columns:1fr}}.page-input,.page-select,.page-textarea{border:1px solid var(--page-border-light);background:var(--page-input-bg);width:100%;color:var(--page-text);box-sizing:border-box;border-radius:8px;padding:10px 12px;font-family:inherit;font-size:14px;transition:border-color .2s,box-shadow .2s}.page-input:focus,.page-select:focus,.page-textarea:focus{border-color:var(--page-primary);box-shadow:0 0 0 3px var(--page-primary-bg);outline:none}.page-select{cursor:pointer}.page-textarea{resize:vertical;min-height:60px}.page-label{color:var(--page-text-secondary);margin-bottom:4px;font-size:13px;font-weight:500;display:block}.page-checkbox{cursor:pointer;width:18px;height:18px;accent-color:var(--page-primary)}.page-btn{cursor:pointer;color:#fff;white-space:nowrap;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:12px 20px;font-family:inherit;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.page-btn:active{transform:scale(.97)}.page-btn:disabled{opacity:.5;cursor:not-allowed}.page-btn-primary{background:linear-gradient(135deg,#2563eb,#1d4ed8)}.page-btn-primary:hover{box-shadow:0 4px 16px #2563eb59}.page-btn-success{background:linear-gradient(135deg,#16a34a,#15803d)}.page-btn-success:hover{box-shadow:0 4px 16px #16a34a59}.page-btn-warning{background:linear-gradient(135deg,#d97706,#b45309)}.page-btn-warning:hover{box-shadow:0 4px 16px #d9770659}.page-btn-danger{background:linear-gradient(135deg,#dc2626,#b91c1c)}.page-btn-danger:hover{box-shadow:0 4px 16px #dc262659}.page-btn-ghost{background:var(--page-card);border:1px solid var(--page-border-light);color:var(--page-text-secondary)}.page-btn-ghost:hover{border-color:var(--page-primary);color:var(--page-text)}.page-btn-block{width:100%}.page-btn-sm{border-radius:8px;padding:8px 14px;font-size:13px}.page-icon-btn{cursor:pointer;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:15px;transition:all .2s;display:inline-flex}.page-icon-btn:hover{transform:translateY(-1px)}.page-icon-btn:active{transform:scale(.92)}.page-icon-btn.primary{background:var(--page-primary-bg)}.page-icon-btn.primary:hover{background:var(--page-primary)}.page-icon-btn.success{background:var(--page-success-bg)}.page-icon-btn.success:hover{background:var(--page-success)}.page-icon-btn.info{background:var(--page-info-bg)}.page-icon-btn.info:hover{background:var(--page-info)}.page-icon-btn.warning{background:var(--page-warning-bg)}.page-icon-btn.warning:hover{background:var(--page-warning)}.page-icon-btn.danger{background:var(--page-danger-bg)}.page-icon-btn.danger:hover{background:var(--page-danger)}.page-icon-btn.neutral{background:#94a3b81f}.page-icon-btn.neutral:hover{background:#64748b}.tooltip{display:inline-flex;position:relative}.tooltip .tooltip-text{color:#fff;white-space:nowrap;opacity:0;pointer-events:none;z-index:30;background:#0f172a;border-radius:6px;padding:4px 8px;font-size:11px;font-weight:500;transition:opacity .15s,transform .15s;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)translateY(2px);box-shadow:0 4px 12px #0000004d}.tooltip:hover .tooltip-text{opacity:1;transform:translate(-50%)translateY(0)}[data-theme=dark] .tooltip .tooltip-text{background:#1f2937;border:1px solid #374151}.page-badge{border-radius:20px;align-items:center;gap:4px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-flex}.page-badge-success{background:var(--page-success-bg);color:var(--page-success)}.page-badge-warning{background:var(--page-warning-bg);color:var(--page-warning)}.page-badge-danger{background:var(--page-danger-bg);color:var(--page-danger)}.page-badge-info{background:var(--page-info-bg);color:var(--page-info)}.page-badge-primary{background:var(--page-primary-bg);color:var(--page-primary)}.page-filter{scrollbar-width:none;gap:6px;margin-bottom:12px;display:flex;overflow-x:auto}.page-filter::-webkit-scrollbar{display:none}.page-filter-btn{border:1px solid var(--page-border-light);background:var(--page-card);min-width:max-content;color:var(--page-text-secondary);cursor:pointer;border-radius:8px;flex:1;padding:8px 0;font-family:inherit;font-size:13px;transition:all .2s}.page-filter-btn.active{border-color:var(--page-primary);background:var(--page-primary-bg);color:var(--page-primary);font-weight:600}.page-stat-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:20px;display:grid}@media (width>=720px){.page-stat-grid{grid-template-columns:repeat(3,1fr)}}@media (width>=1000px){.page-stat-grid{grid-template-columns:repeat(6,1fr)}}.page-stat-card{background:var(--page-card);border:1px solid var(--page-border);border-radius:12px;padding:14px 16px;position:relative;overflow:hidden}.page-stat-card:before{content:"";background:var(--page-primary);height:3px;position:absolute;top:0;left:0;right:0}.page-stat-card.green:before{background:var(--page-success)}.page-stat-card.amber:before{background:var(--page-warning)}.page-stat-card.red:before{background:var(--page-danger)}.page-stat-card.violet:before{background:#8b5cf6}.page-stat-card.cyan:before{background:var(--page-info)}.page-stat-label{text-transform:uppercase;letter-spacing:.06em;color:var(--page-text-muted);margin:0;font-size:10px;font-weight:600}.page-stat-value{color:var(--page-text);font-variant-numeric:tabular-nums;margin:4px 0 0;font-size:20px;font-weight:700;line-height:1.1}.page-stat-sub{color:var(--page-text-muted);margin:2px 0 0;font-size:11px}.page-section-title{color:var(--page-text);margin:20px 0 10px;font-size:14px;font-weight:700}.page-section-subtitle{color:var(--page-text-muted);margin:-4px 0 10px;font-size:12px}.page-alert{border:1px solid #0000;border-radius:10px;margin-bottom:16px;padding:12px 14px;font-size:13px}.page-alert-danger{background:var(--page-danger-bg);color:var(--page-danger);border-color:#ef444433}.page-alert-success{background:var(--page-success-bg);color:var(--page-success);border-color:#22c55e33}.page-alert-info{background:var(--page-info-bg);color:var(--page-info);border-color:#06b6d433}.page-alert-warning{background:var(--page-warning-bg);color:var(--page-warning);border-color:#f59e0b33}.page-empty{color:var(--page-text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:48px 20px;font-size:14px;display:flex}.page-empty-icon{margin-bottom:10px;font-size:36px}.page-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.page-row-start{align-items:center;gap:10px;min-width:0;display:flex}.page-col{flex-direction:column;gap:8px;display:flex}.page-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.client-card-top{flex-wrap:wrap;align-items:flex-start;gap:12px;display:flex}.client-avatar{color:#fff;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:15px;font-weight:700;display:flex;box-shadow:0 4px 12px #00000026}.client-card-info{flex:1;min-width:0}.client-card-name{color:var(--page-text);overflow-wrap:anywhere;margin:0;font-size:16px;font-weight:700}.client-card-code{color:var(--page-text-muted);margin-left:6px;font-size:12px;font-weight:400}.client-card-meta{color:var(--page-text-secondary);margin:3px 0 0;font-size:13px}.client-card-meta.muted{color:var(--page-text-muted);font-size:12px}.client-card-stats{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.client-card-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:100%;display:flex}@media (width<=640px){.client-card-actions{justify-content:flex-start}}.loan-card-border{border-left:4px solid var(--page-primary)}.loan-card-border.paid{border-left-color:var(--page-success)}.loan-card-border.overdue{border-left-color:var(--page-danger)}.loan-amount{color:var(--page-text);font-variant-numeric:tabular-nums;margin:4px 0 0;font-size:15px;font-weight:700}.loan-meta{color:var(--page-text-secondary);margin:3px 0 0;font-size:13px}.loan-balance{color:var(--page-text-secondary);margin:6px 0 0;font-size:13px}.loan-balance strong{color:var(--page-text);font-variant-numeric:tabular-nums}.installment-row{background:var(--page-card);border-bottom:1px solid var(--page-border);border-radius:0;justify-content:space-between;align-items:center;gap:8px;padding:9px 12px;display:flex}.installment-row:last-child{border-bottom:none}.installment-row.paid{background:var(--page-success-bg)}.installment-num{color:var(--page-text-secondary);font-size:13px}.installment-num.paid{color:var(--page-success);text-decoration:line-through}.installment-amount{color:var(--page-text);font-variant-numeric:tabular-nums;font-size:13px;font-weight:600}.installment-amount.paid{color:var(--page-success)}.installment-group{border:1px solid var(--page-border);background:var(--page-card);border-radius:10px;margin-bottom:16px;overflow:hidden}.page-method-row{gap:8px;margin-bottom:12px;display:flex}.page-method-btn{border:1px solid var(--page-border-light);background:var(--page-card);color:var(--page-text-secondary);cursor:pointer;white-space:nowrap;border-radius:8px;flex:1;padding:10px;font-family:inherit;font-size:13px;transition:all .2s}.page-method-btn.active{border-color:var(--page-primary);background:var(--page-primary-bg);color:var(--page-primary);font-weight:600}.payment-card{border-left:4px solid var(--page-success)}.payment-amount{color:var(--page-text);font-variant-numeric:tabular-nums;margin:0;font-size:14px;font-weight:700}.payment-meta{color:var(--page-text-secondary);margin:2px 0 0;font-size:12px}.page-box{border:1px solid var(--page-border);background:var(--page-card);border-radius:12px;margin-bottom:16px;padding:16px}.page-box-title{color:var(--page-text);margin:0 0 12px;font-size:16px;font-weight:700}.page-box-text{color:var(--page-text-secondary);margin:0 0 12px;font-size:13px;line-height:1.5}.page-dropzone{border:2px dashed var(--page-border-light);background:var(--page-card);text-align:center;cursor:pointer;color:var(--page-text-secondary);border-radius:10px;padding:14px;font-family:inherit;font-size:14px;font-weight:500;transition:border-color .2s;display:block}.page-dropzone:hover{border-color:var(--page-primary);color:var(--page-primary)}.page-msg{border-radius:8px;margin:12px 0 0;padding:10px;font-size:13px}.page-msg-error{background:var(--page-danger-bg);color:var(--page-danger)}.page-msg-success{background:var(--page-success-bg);color:var(--page-success)}.page-form-grid{grid-template-columns:1fr;gap:8px;display:grid}@media (width>=640px){.page-form-grid{grid-template-columns:1fr 1fr}}.page-summary-box{background:var(--page-success-bg);color:var(--page-success);border:1px solid #22c55e33;border-radius:12px;margin-bottom:16px;padding:14px 16px}.page-summary-box p{margin:0}.page-summary-box strong{font-variant-numeric:tabular-nums}
