*{margin:0;padding:0;box-sizing:border-box}#app{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#2c3e50;height:100vh}.app-layout{display:flex;flex-direction:column;height:100vh}.app-header{justify-content:space-between;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.1);height:60px;padding:0 20px;position:fixed;top:0;left:0;right:0;z-index:1000}.app-header,.menu-toggle{display:flex;align-items:center}.menu-toggle{background:#333;border:none;width:40px;height:40px;border-radius:6px;cursor:pointer;flex-direction:column;justify-content:center;gap:3px;transition:all .3s ease}.menu-toggle:hover{background:#555}.menu-toggle span{width:18px;height:2px;background:#fff;transition:all .3s ease}.menu-toggle.active span:first-child{transform:rotate(45deg) translate(4px,4px)}.menu-toggle.active span:nth-child(2){opacity:0}.menu-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(4px,-4px)}.app-title{font-size:18px;font-weight:600;color:#2c3e50;margin:0;flex:1;text-align:center}.sidebar{width:280px;height:100vh;background:#1a1a1a;color:#fff;position:fixed;left:0;top:0;z-index:999;overflow-y:auto;transform:translateX(-100%);transition:transform .3s ease}.sidebar.open{transform:translateX(0)}.sidebar-header{padding:80px 20px 20px;border-bottom:1px solid hsla(0,0%,100%,.1)}.logo{font-size:18px;font-weight:700;margin-bottom:5px}.admin-title{font-size:13px;opacity:.8}.menu-items{padding:20px 0}.menu-item{display:flex;align-items:center;gap:12px;padding:15px 20px;color:#fff;text-decoration:none;transition:all .3s;border-left:4px solid transparent}.menu-item:hover{background:hsla(0,0%,100%,.1);border-left-color:hsla(0,0%,100%,.5)}.menu-item.router-link-active{background:hsla(0,0%,100%,.15);border-left-color:#fff}.menu-icon{font-size:16px;width:20px;text-align:center}.menu-text{font-size:14px;font-weight:500}.menu-divider{height:1px;background:hsla(0,0%,100%,.2);margin:10px 20px}.logout-menu-item{background:none!important;border:none;color:#fff;width:100%;text-align:left;font-family:inherit;margin-top:10px}.logout-menu-item:hover{background:rgba(220,53,69,.2)!important;border-left-color:#dc3545!important}.main-content{margin-top:60px;padding:20px;transition:margin-left .3s ease;min-height:calc(100vh - 60px);overflow-y:auto}.main-content.shifted{margin-left:280px}.router-container{max-width:1200px;margin:0 auto}.auth-content{height:100vh;display:flex;align-items:center;justify-content:center}.sidebar-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:998}.loading{text-align:center;padding:40px;color:#6c757d}.error-boundary{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24;padding:20px;border-radius:4px;margin:20px}.btn-reload{background-color:#dc3545;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;margin-top:10px}@media (min-width:769px){.sidebar.open{transform:translateX(0)}.main-content{margin-left:280px}.sidebar{transform:translateX(0)}.sidebar-overlay{display:none}}@media (max-width:768px){.app-title{font-size:16px}.main-content{margin-left:0;padding:15px}.menu-item{padding:12px 20px}}@media (max-width:480px){.app-title{font-size:14px}.main-content{padding:10px}.menu-toggle{width:35px;height:35px}.menu-toggle span{width:16px}}.billing-history[data-v-743a2584]{padding:24px;max-width:1200px;margin:0 auto}.page-header[data-v-743a2584]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.page-title[data-v-743a2584]{font-size:24px;font-weight:600;color:#1a1a1a;margin:0}.header-actions[data-v-743a2584]{display:flex;gap:12px}.refresh-btn[data-v-743a2584]{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;color:#495057;cursor:pointer;transition:all .2s}.refresh-btn[data-v-743a2584]:hover{background:#e9ecef}.refresh-btn[data-v-743a2584]:disabled{opacity:.6;cursor:not-allowed}.icon-refresh.spinning[data-v-743a2584]{animation:spin-743a2584 1s linear infinite}@keyframes spin-743a2584{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.filter-section[data-v-743a2584]{background:#fff;border:1px solid #dee2e6;border-radius:8px;padding:20px;margin-bottom:24px}.filter-row[data-v-743a2584]{display:flex;gap:20px;flex-wrap:wrap}.filter-group[data-v-743a2584]{display:flex;flex-direction:column;gap:4px;min-width:120px}.search-group[data-v-743a2584]{flex:1;min-width:200px}.filter-group label[data-v-743a2584]{font-size:14px;font-weight:500;color:#495057}.filter-group select[data-v-743a2584],.search-input[data-v-743a2584]{padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:14px}.error-alert[data-v-743a2584]{background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;padding:12px;margin-bottom:20px}.error-content[data-v-743a2584]{display:flex;align-items:center;gap:8px;color:#721c24}.error-close[data-v-743a2584]{margin-left:auto;background:none;border:none;font-size:18px;cursor:pointer;color:#721c24}.loading-container[data-v-743a2584]{display:flex;flex-direction:column;align-items:center;padding:60px 20px}.loading-spinner[data-v-743a2584]{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #007bff;border-radius:50%;animation:spin-743a2584 1s linear infinite;margin-bottom:16px}.table-container[data-v-743a2584]{background:#fff;border:1px solid #dee2e6;border-radius:8px;overflow:hidden}.table-header[data-v-743a2584]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#f8f9fa;border-bottom:1px solid #dee2e6}.record-count[data-v-743a2584]{font-size:14px;color:#6c757d}.export-btn[data-v-743a2584]{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#007bff;color:#fff;border:none;border-radius:4px;font-size:14px;cursor:pointer}.export-btn[data-v-743a2584]:disabled{background:#6c757d;cursor:not-allowed}.responsive-table[data-v-743a2584]{overflow-x:auto}.billing-table[data-v-743a2584]{width:100%;border-collapse:collapse}.billing-table td[data-v-743a2584],.billing-table th[data-v-743a2584]{padding:12px;text-align:left;border-bottom:1px solid #dee2e6}.billing-table th[data-v-743a2584]{background:#f8f9fa;font-weight:600;color:#495057}.billing-table th.sortable[data-v-743a2584]{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative}.billing-table th.sortable[data-v-743a2584]:hover{background:#e9ecef}.sort-indicator[data-v-743a2584]{margin-left:4px;opacity:.5}.sort-indicator.sort-asc[data-v-743a2584]:before{content:"↑";opacity:1}.sort-indicator.sort-desc[data-v-743a2584]:before{content:"↓";opacity:1}.billing-table tr.overdue[data-v-743a2584]{background:#fff5f5}.amount-cell[data-v-743a2584]{font-weight:600;text-align:right}.status-badge[data-v-743a2584]{padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500}.status-badge.status-paid[data-v-743a2584]{background:#d4edda;color:#155724}.status-badge.status-unpaid[data-v-743a2584]{background:#fff3cd;color:#856404}.status-badge.status-overdue[data-v-743a2584]{background:#f8d7da;color:#721c24}.overdue-badge[data-v-743a2584]{background:#dc3545;color:#fff;padding:2px 6px;border-radius:8px;font-size:11px;margin-left:4px}.action-buttons[data-v-743a2584]{display:flex;gap:4px}.detail-btn[data-v-743a2584],.payment-btn[data-v-743a2584]{padding:4px 8px;border:none;border-radius:4px;cursor:pointer;font-size:12px}.detail-btn[data-v-743a2584]{background:#f8f9fa;color:#495057}.payment-btn[data-v-743a2584]{background:#28a745;color:#fff}.empty-state[data-v-743a2584]{padding:60px 20px;text-align:center}.empty-content h3[data-v-743a2584]{margin:16px 0 8px;color:#495057}.empty-content p[data-v-743a2584]{color:#6c757d;margin-bottom:20px}.clear-filters-btn[data-v-743a2584]{padding:8px 16px;background:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer}.mobile-cards[data-v-743a2584]{display:none}@media (max-width:768px){.billing-history[data-v-743a2584]{padding:16px}.table-container[data-v-743a2584]{display:none}.mobile-cards[data-v-743a2584]{display:block}.billing-card[data-v-743a2584]{background:#fff;border:1px solid #dee2e6;border-radius:8px;padding:16px;margin-bottom:12px}.billing-card.overdue[data-v-743a2584]{border-color:#dc3545;background:#fff5f5}.card-header[data-v-743a2584]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.billing-id[data-v-743a2584]{font-weight:600;color:#495057}.card-content[data-v-743a2584]{margin-bottom:16px}.card-row[data-v-743a2584]{display:flex;justify-content:space-between;margin-bottom:8px}.card-row .label[data-v-743a2584]{color:#6c757d;font-size:14px}.card-row .value[data-v-743a2584]{font-weight:500}.card-row .value.amount[data-v-743a2584]{color:#28a745}.card-actions[data-v-743a2584]{display:flex;gap:8px}.card-actions button[data-v-743a2584]{flex:1;padding:8px 12px;border:none;border-radius:4px;cursor:pointer}.filter-row[data-v-743a2584]{flex-direction:column;gap:12px}.filter-group[data-v-743a2584]{min-width:auto}}