.ledger-management{padding:20px;max-width:1400px;margin:0 auto}.ledger-management h1{font-size:28px;margin-bottom:20px;color:#333}.ledger-management h2{font-size:22px;margin-top:30px;margin-bottom:15px;color:#444;border-bottom:2px solid #007bff;padding-bottom:10px}.ledger-management h3{font-size:18px;margin-bottom:15px;color:#555}.ledger-controls{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}.ledger-controls .btn{padding:10px 15px;font-size:14px}.form-section{background:#f8f9fa;padding:20px;border-radius:8px;margin-bottom:20px;border:1px solid #dee2e6}.form-group{margin-bottom:15px;display:flex;flex-direction:column}.form-group label{font-weight:600;margin-bottom:8px;color:#333}.form-group input,.form-group select{padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px;font-family:inherit}.form-group input:focus,.form-group select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff40}.form-section form{display:flex;gap:20px;align-items:flex-end;flex-wrap:wrap}.form-section form .form-group{flex:1;min-width:200px}.form-section form .btn{align-self:flex-end}.btn-success{background-color:#28a745;color:#fff}.btn-success:hover:not(:disabled){background-color:#218838}.btn-info{background-color:#17a2b8;color:#fff;padding:4px 8px;font-size:12px}.btn-info:hover:not(:disabled){background-color:#138496}.btn-sm{padding:4px 8px;font-size:12px}.table-container{overflow-x:auto;border-radius:8px;border:1px solid #dee2e6}.ledger-table,.ledger-detail-table{width:100%;border-collapse:collapse;background-color:#fff}.ledger-table thead,.ledger-detail-table thead{background-color:#f8f9fa;border-bottom:2px solid #dee2e6}.ledger-table th,.ledger-detail-table th{padding:12px;text-align:left;font-weight:600;color:#333;white-space:nowrap}.ledger-table td,.ledger-detail-table td{padding:12px;border-bottom:1px solid #dee2e6}.ledger-table tbody tr,.ledger-detail-table tbody tr{transition:background-color .2s ease}.ledger-table tbody tr:hover,.ledger-detail-table tbody tr:hover{background-color:#f8f9fa}.ledger-table tr.status-outstanding{background-color:#fff3cd}.ledger-table tr.status-outstanding:hover{background-color:#ffeaa7}.ledger-table tr.status-settled{background-color:#d4edda}.ledger-table tr.status-settled:hover{background-color:#c3e6cb}.ledger-table tr.status-prepaid{background-color:#d1ecf1}.ledger-table tr.status-prepaid:hover{background-color:#bee5eb}.amount{text-align:right;font-weight:500;min-width:100px}.amount.bold{font-weight:700;font-size:15px}.amount.outstanding{color:#dc3545}.amount.prepaid{color:#007bff}.amount.settled{color:#28a745}.amount.payment{color:#007bff}.amount.charge{color:#dc3545}.badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:600;text-transform:uppercase}.badge.status-outstanding{background-color:#f5c6cb;color:#721c24}.badge.status-settled{background-color:#d4edda;color:#155724}.badge.status-prepaid{background-color:#d1ecf1;color:#0c5460}.member-ledger-section{margin-top:30px;padding:20px;background:#f8f9fa;border-radius:8px;border:1px solid #dee2e6}.member-ledger-section .btn{margin-bottom:15px}.ledger-detail-container{overflow-x:auto;border-radius:8px;border:1px solid #dee2e6;margin-top:15px}.ledger-detail-table{margin:0}.ledger-detail-table tbody tr.type-opening_balance{background-color:#e7f3ff}.ledger-detail-table tbody tr.type-maintenance_charge{background-color:#ffe7e7}.ledger-detail-table tbody tr.type-payment{background-color:#e7ffe7}.ledger-detail-table tbody tr.type-adjustment{background-color:#fffce7}@media(max-width:768px){.ledger-management{padding:10px}.ledger-management h1{font-size:24px}.ledger-management h2{font-size:18px}.form-section form{flex-direction:column}.form-section form .form-group,.form-section form .btn{width:100%}.ledger-controls{flex-direction:column}.ledger-controls .btn{width:100%}.ledger-table th,.ledger-table td,.ledger-detail-table th,.ledger-detail-table td{padding:8px;font-size:12px}.ledger-table th,.ledger-detail-table th{white-space:normal}}.member-ledger-statement{padding:20px;max-width:1000px;margin:0 auto;background-color:#f5f5f5;min-height:100vh}.ledger-header{background:#fff;padding:20px;border-radius:8px;margin-bottom:20px;box-shadow:0 2px 4px #0000001a}.header-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px}.ledger-header h1{font-size:28px;margin:0;color:#333;flex:1;min-width:250px}.header-actions{display:flex;gap:10px}.header-actions .btn{padding:10px 15px;font-size:14px}.member-info-section{background:#fff;padding:20px;border-radius:8px;margin-bottom:20px;box-shadow:0 2px 4px #0000001a}.info-card{margin-bottom:25px;padding-bottom:20px;border-bottom:1px solid #eee}.info-card h3{font-size:18px;margin:0 0 15px;color:#333}.info-row{display:flex;justify-content:space-between;margin-bottom:12px;font-size:14px}.info-row .label{font-weight:600;color:#666;min-width:150px}.info-row .value{color:#333;font-weight:500}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-top:20px}.card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px;border-radius:8px;text-align:center;box-shadow:0 4px 6px #0000001a;transition:transform .2s ease,box-shadow .2s ease}.card:hover{transform:translateY(-5px);box-shadow:0 6px 12px #00000026}.card-opening{background:linear-gradient(135deg,#667eea,#764ba2)}.card-charges{background:linear-gradient(135deg,#f093fb,#f5576c)}.card-payments{background:linear-gradient(135deg,#4facfe,#00f2fe)}.card-outstanding{background:linear-gradient(135deg,#ff6b6b,#ee5a5a)}.card-settled{background:linear-gradient(135deg,#11998e,#38ef7d)}.card-prepaid{background:linear-gradient(135deg,#fa709a,#fee140)}.card-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:1px;opacity:.9;margin-bottom:8px}.card-value{font-size:28px;font-weight:700;line-height:1;margin-bottom:8px}.card-status{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;opacity:.85;margin-top:8px}.status-message{padding:15px;border-radius:8px;margin-bottom:20px;font-size:16px;text-align:center}.status-message strong{font-weight:600}.status-outstanding{background-color:#fff3cd;border:1px solid #ffeaa7;color:#856404}.status-settled{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.status-prepaid{background-color:#d1ecf1;border:1px solid #bee5eb;color:#0c5460}.ledger-table-section{background:#fff;padding:20px;border-radius:8px;margin-bottom:20px;box-shadow:0 2px 4px #0000001a}.ledger-table-section h2{font-size:20px;margin:0 0 20px;color:#333;border-bottom:2px solid #007bff;padding-bottom:10px}.table-container{overflow-x:auto;border-radius:8px}.ledger-table{width:100%;border-collapse:collapse;font-size:14px}.ledger-table thead{background-color:#f8f9fa;border-bottom:2px solid #dee2e6}.ledger-table th{padding:12px;text-align:left;font-weight:600;color:#333;text-transform:uppercase;font-size:12px;letter-spacing:.5px}.ledger-table td{padding:12px;border-bottom:1px solid #dee2e6;color:#555}.ledger-table tbody tr{transition:background-color .2s ease}.ledger-table tbody tr:hover{background-color:#f8f9fa}.ledger-table tbody tr.type-opening_balance{background-color:#e7f3ff}.ledger-table tbody tr.type-maintenance_charge{background-color:#ffe7e7}.ledger-table tbody tr.type-payment{background-color:#e7ffe7}.ledger-table tbody tr.type-adjustment{background-color:#fffce7}.ledger-table .amount{text-align:right;font-weight:600;min-width:100px}.ledger-table .amount.type-opening_balance{color:#0056b3}.ledger-table .amount.type-maintenance_charge{color:#dc3545}.ledger-table .amount.type-payment{color:#28a745}.ledger-table .amount.type-adjustment{color:#f90}.badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase}.badge.type-opening_balance{background-color:#cce5ff;color:#004085}.badge.type-maintenance_charge{background-color:#f8d7da;color:#721c24}.badge.type-payment{background-color:#d4edda;color:#155724}.badge.type-adjustment{background-color:#fff3cd;color:#856404}.no-transactions{padding:40px 20px;text-align:center;color:#999}.no-transactions p{font-size:16px;margin:0;color:#666}.footer-note{background:#fff;padding:20px;border-radius:8px;border-left:4px solid #007bff;margin-top:20px;box-shadow:0 2px 4px #0000001a;font-size:14px;line-height:1.6;color:#555}.footer-note p{margin:10px 0}.footer-note p:first-child{margin-top:0}.footer-note p:last-child{margin-bottom:0}.btn{padding:8px 16px;border:none;border-radius:4px;font-size:14px;cursor:pointer;font-weight:500;transition:all .3s ease;text-transform:uppercase}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:#007bff;color:#fff}.btn-primary:hover:not(:disabled){background-color:#0056b3}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover:not(:disabled){background-color:#545b62}.alert{padding:15px;border-radius:8px;margin-bottom:20px;font-size:14px}.alert-warning{background-color:#fff3cd;border:1px solid #ffeaa7;color:#856404}.loading{text-align:center;color:#999;font-size:16px;padding:40px 20px}@media print{body{background:#fff}.member-ledger-statement{padding:0;background:#fff}.ledger-header{page-break-after:avoid}.member-info-section,.status-message,.ledger-table-section,.footer-note{page-break-inside:avoid;box-shadow:none;border:1px solid #ddd;margin-bottom:10px}.header-actions{display:none}.table-container{overflow-x:visible}.ledger-table{font-size:12px}}@media(max-width:768px){.member-ledger-statement{padding:10px}.ledger-header{padding:15px}.ledger-header h1{font-size:22px}.header-content{flex-direction:column;align-items:stretch}.header-actions{width:100%;flex-direction:column}.header-actions .btn{width:100%}.summary-cards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.card{padding:15px}.card-value{font-size:22px}.info-row{flex-direction:column}.info-row .label{margin-bottom:5px}.ledger-table th,.ledger-table td{padding:8px;font-size:12px}.card-label{font-size:11px}}
