.payment-management-tab{background-color:#f9fafb;width:100%;min-height:100vh;padding:1.5rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.pmt-stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.pmt-card{background:#fff;border-radius:.5rem;margin-bottom:1.5rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.pmt-card-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.pmt-card-title{color:#1f2937;margin:0;font-size:1.25rem;font-weight:700}.pmt-card-subtitle{color:#6b7280;margin:.25rem 0 0;font-size:.875rem}.pmt-stat-card{background:#fff;border-radius:.5rem;align-items:center;gap:1rem;padding:1rem;display:flex;box-shadow:0 1px 3px #0000001a}.pmt-stat-icon{border-radius:.5rem;padding:.75rem}.pmt-stat-icon.blue{color:#3b82f6;background-color:#3b82f61a}.pmt-stat-icon.red{color:#ef4444;background-color:#ef44441a}.pmt-stat-icon.orange{color:#f97316;background-color:#f973161a}.pmt-stat-icon.green{color:#22c55e;background-color:#22c55e1a}.pmt-stat-icon.purple{color:#a855f7;background-color:#a855f71a}.pmt-stat-content{flex:1}.pmt-stat-label{color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin:0 0 .25rem;font-size:.75rem}.pmt-stat-value{color:#1f2937;margin:0;font-size:1.125rem;font-weight:700}.pmt-btn{cursor:pointer;border:none;border-radius:.5rem;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s;display:inline-flex}.pmt-btn:disabled{cursor:not-allowed;opacity:.6;background-color:#d1d5db}.pmt-btn-primary{color:#fff;background-color:#3b82f6}.pmt-btn-primary:hover:not(:disabled){background-color:#2563eb}.pmt-btn-success{color:#fff;background-color:#22c55e}.pmt-btn-success:hover:not(:disabled){background-color:#16a34a}.pmt-btn-secondary{color:#1f2937;background-color:#e5e7eb}.pmt-btn-secondary:hover{background-color:#d1d5db}.pmt-btn-icon{cursor:pointer;color:#ef4444;background:0 0;border:none;padding:.25rem;transition:color .2s}.pmt-btn-icon:hover{color:#dc2626}.pmt-btn-link{color:#3b82f6;cursor:pointer;background:0 0;border:none;padding:.25rem .5rem;font-size:.875rem}.pmt-btn-link:hover{color:#1d4ed8}.pmt-table-container{margin-bottom:1rem;overflow-x:auto}.pmt-table{border-collapse:collapse;width:100%}.pmt-table thead tr{background-color:#f3f4f6}.pmt-table th{color:#374151;border-bottom:1px solid #e5e7eb;padding:.75rem;font-size:.875rem;font-weight:600}.pmt-table th.text-left{text-align:left}.pmt-table th.text-center{text-align:center}.pmt-table th.text-right{text-align:right}.pmt-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .15s}.pmt-table tbody tr:hover{background-color:#f9fafb}.pmt-table td{padding:.75rem}.pmt-table td.text-center{text-align:center}.pmt-table td.text-right{text-align:right}.pmt-table td.font-semibold{font-weight:600}.pmt-table tfoot tr{font-weight:700}.pmt-table tfoot tr.bg-gray{background-color:#f9fafb}.pmt-table tfoot tr.bg-green{background-color:#f0fdf4}.pmt-table tfoot tr.bg-red{background-color:#fef2f2}.pmt-table tfoot td.text-green{color:#16a34a}.pmt-table tfoot td.text-red{color:#dc2626}.pmt-table tfoot td.text-lg{font-size:1.125rem}.pmt-badge{border-radius:9999px;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:.75rem;font-weight:500;display:inline-flex}.pmt-badge.success{color:#166534;background-color:#dcfce7}.pmt-badge.warning{color:#92400e;background-color:#fef3c7}.pmt-badge.error{color:#991b1b;background-color:#fee2e2}.pmt-form-group{margin-bottom:1rem}.pmt-label{color:#374151;margin-bottom:.25rem;font-size:.875rem;font-weight:500;display:block}.pmt-input,.pmt-select,.pmt-textarea{border:1px solid #d1d5db;border-radius:.5rem;width:100%;padding:.5rem .75rem;font-size:1rem;transition:all .2s}.pmt-input:focus,.pmt-select:focus,.pmt-textarea:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.pmt-textarea{resize:none;font-family:inherit}.pmt-input-icon{position:relative}.pmt-input-icon input{padding-left:2.5rem}.pmt-input-icon svg{color:#9ca3af;position:absolute;top:50%;left:.75rem;transform:translateY(-50%)}.pmt-filters{flex-direction:column;gap:1rem;margin-bottom:1rem;display:flex}.pmt-filter-row{align-items:center;gap:.5rem;display:flex}.pmt-history-item{background-color:#f9fafb;border-radius:.5rem;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding:.75rem;display:flex}.pmt-history-content p{margin:0}.pmt-history-amount{color:#1f2937;font-weight:500}.pmt-history-method{color:#6b7280;font-size:.875rem}.pmt-history-date{text-align:right}.pmt-history-date p{color:#6b7280;margin:0;font-size:.875rem}.pmt-history-recorded{color:#9ca3af;font-size:.75rem}.pmt-note{background-color:#fef3c7;border-left:4px solid #f59e0b;border-radius:.25rem;margin-top:1rem;padding:.75rem}.pmt-note p{color:#374151;margin:0;font-size:.875rem}.pmt-note-label{font-weight:600}.pmt-appointment-list{flex-direction:column;gap:1rem;display:flex}.pmt-appointment-card{border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem;transition:box-shadow .2s}.pmt-appointment-card:hover{box-shadow:0 4px 6px #0000001a}.pmt-appointment-header{justify-content:space-between;align-items:flex-start;margin-bottom:.75rem;display:flex}.pmt-appointment-info h3{color:#1f2937;align-items:center;gap:.75rem;margin:0 0 .5rem;font-weight:600;display:flex}.pmt-appointment-date{color:#6b7280;align-items:center;gap:.25rem;font-size:.875rem;display:flex}.pmt-appointment-amounts{text-align:right}.pmt-appointment-total{color:#1f2937;margin:0 0 .25rem;font-size:1.125rem;font-weight:700}.pmt-appointment-paid{color:#16a34a;margin:0;font-size:.875rem}.pmt-appointment-debt{color:#dc2626;margin:0;font-size:.875rem;font-weight:600}.pmt-services-summary{margin-bottom:.75rem}.pmt-services-label{color:#374151;margin:0 0 .25rem;font-size:.875rem;font-weight:500}.pmt-service-tags{flex-wrap:wrap;gap:.5rem;display:flex}.pmt-service-tag{color:#1e40af;background-color:#dbeafe;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem}.pmt-payment-history{margin-bottom:.75rem}.pmt-payment-history-label{color:#374151;margin:0 0 .25rem;font-size:.875rem;font-weight:500}.pmt-payment-history-list{flex-direction:column;gap:.25rem;display:flex}.pmt-payment-history-item{color:#6b7280;background-color:#f9fafb;border-radius:.25rem;justify-content:space-between;padding:.5rem;font-size:.75rem;display:flex}.pmt-actions{justify-content:flex-end;display:flex}.pmt-empty-state{text-align:center;color:#6b7280;padding:2rem}.pmt-empty-icon{opacity:.5;margin:0 auto .5rem}.pmt-modal-backdrop{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.pmt-modal{background:#fff;border-radius:.5rem;width:100%;max-width:42rem;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.pmt-modal-header{z-index:10;background:#fff;border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex;position:sticky;top:0}.pmt-modal-title{color:#1f2937;margin:0;font-size:1.25rem;font-weight:700}.pmt-modal-close{color:#6b7280;cursor:pointer;background:0 0;border:none;padding:.25rem;transition:color .2s}.pmt-modal-close:hover{color:#374151}.pmt-modal-body{padding:1.5rem}.pmt-modal-actions{gap:.75rem;padding-top:1rem;display:flex}.pmt-modal-actions .pmt-btn{flex:1}.pmt-info-box{border-radius:.5rem;margin-bottom:1rem;padding:1rem}.pmt-info-box.blue{background-color:#dbeafe}.pmt-info-box.green{background-color:#dcfce7}.pmt-info-box p{margin:0}.pmt-info-box-label{color:#6b7280;font-size:.875rem}.pmt-info-box-value{color:#1f2937;font-weight:600}.pmt-info-box-amount{font-size:1.5rem;font-weight:700}.pmt-info-box-amount.red{color:#dc2626}.pmt-info-box-amount.green{color:#16a34a}.payment-management-tab button,.payment-management-tab select,.payment-management-tab input{transition:all .2s ease-in-out}.payment-management-tab .modal-content{scrollbar-width:thin;scrollbar-color:#cbd5e0 #f7fafc}.payment-management-tab .modal-content::-webkit-scrollbar{width:8px}.payment-management-tab .modal-content::-webkit-scrollbar-track{background:#f7fafc;border-radius:4px}.payment-management-tab .modal-content::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:4px}.payment-management-tab .modal-content::-webkit-scrollbar-thumb:hover{background:#a0aec0}.payment-management-tab table tbody tr{transition:background-color .15s ease-in-out}.payment-management-tab table tbody tr:hover{background-color:#f7fafc}.payment-management-tab input:focus,.payment-management-tab select:focus,.payment-management-tab textarea:focus{outline:none;box-shadow:0 0 0 3px #3b82f61a}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.payment-management-tab .stat-card{animation:.3s ease-out slideInUp}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.payment-management-tab .status-badge-unpaid{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.payment-management-tab .loading-skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%) 0 0/200% 100%;animation:1.5s ease-in-out infinite loading}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}@media print{.payment-management-tab button,.payment-management-tab .no-print{display:none!important}.payment-management-tab{background:#fff!important}.payment-management-tab table{page-break-inside:avoid}}@media (width<=768px){.payment-management-tab .stat-card{min-width:100%}.payment-management-tab table{font-size:.875rem}.payment-management-tab .modal-content{max-height:80vh}}@media (prefers-color-scheme:dark){.payment-management-tab.dark-mode{color:#e2e8f0;background-color:#1a202c}.payment-management-tab.dark-mode .bg-white{background-color:#2d3748}.payment-management-tab.dark-mode table tbody tr:hover{background-color:#374151}}.payment-management-tab input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.payment-management-tab input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.payment-management-tab input[type=number]{-moz-appearance:textfield}.payment-management-tab .currency{font-variant-numeric:tabular-nums;letter-spacing:-.02em}.payment-management-tab .service-category{text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:.25rem;font-size:.75rem;font-weight:500;display:inline-flex}.payment-management-tab .payment-method-icon{background-color:#f7fafc;border-radius:50%;justify-content:center;align-items:center;width:2rem;height:2rem;display:inline-flex}.payment-management-tab .debt-indicator{position:relative}.payment-management-tab .debt-indicator:before{content:"";background-color:#ef4444;border-radius:2px;width:4px;height:100%;position:absolute;top:50%;left:-8px;transform:translateY(-50%)}@keyframes successPulse{0%{box-shadow:0 0 #22c55eb3}70%{box-shadow:0 0 0 10px #22c55e00}to{box-shadow:0 0 #22c55e00}}.payment-management-tab .payment-success{animation:1s ease-out successPulse}.payment-management-tab .modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.payment-management-tab [data-tooltip]{cursor:help;position:relative}.payment-management-tab [data-tooltip]:hover:after{content:attr(data-tooltip);color:#fff;white-space:nowrap;z-index:1000;background-color:#1f2937;border-radius:.375rem;margin-bottom:.5rem;padding:.5rem;font-size:.75rem;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.payment-management-tab .empty-state{opacity:.5;filter:grayscale()}
