.sidebar{width:240px;height:100vh;background-color:#1e1e2d;color:#fff;display:flex;flex-direction:column;position:fixed;left:0;top:0;z-index:1000;border-right:1px solid rgba(255,255,255,.05);box-shadow:2px 0 10px #0003;align-items:center}.sidebar-logo{padding:25px 20px;border-bottom:1px solid rgba(255,255,255,.1);font-weight:700;letter-spacing:1px}.sidebar-nav{display:flex;flex-direction:column;padding:20px 10px;gap:8px;flex:1}.sidebar-link{padding:12px 15px;color:#a0aec0;text-decoration:none;border-radius:8px;transition:.3s;font-size:14px;font-size:1.1rem}.sidebar-link:hover{background-color:#ffffff14;color:#00d2ff}.sidebar-footer{padding:20px 15px;border-top:1px solid rgba(255,255,255,.1);position:relative;background-color:#1a1a27;width:85%}.profile-wrapper{display:flex;align-items:center;justify-content:space-between;padding:10px;background:#2b2b40;border-radius:12px;cursor:pointer;transition:all .3s ease;border:1px solid rgba(255,255,255,.1)}.profile-wrapper:hover{background:#ffffff1a;border-color:#00d2ff}.avatar{width:32px;height:32px;background:linear-gradient(45deg,#3a7bd5,#00d2ff);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;font-size:14px}.profile-dropdown{position:absolute;bottom:85px;left:15px;right:15px;background:#1a2a30;border-radius:12px;box-shadow:0 -10px 25px #00000080;border:1px solid rgba(255,255,255,.1);overflow:hidden;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}.profile-dropdown li{padding:12px 15px;font-size:13px;color:#cbd5e0;transition:.2s}.profile-dropdown li:hover{background:#00d2ff26;color:#00d2ff}.profile-dropdown li.logout-item:hover{background:#ff00001a;color:#ff4d4d}.dashboard-container{width:100%;padding:0;margin:0;display:flex;flex-direction:column;padding-left:px}.dashboard-header-container{display:flex;justify-content:space-between;align-items:center;width:100%;padding:5px 0;margin-bottom:20px}.header-actions{display:flex;justify-content:flex-end;gap:12px;margin-bottom:10px;width:100%;z-index:20;flex-shrink:0}.dashboard-title{font-family:Arial;padding:20px;font-size:25px;margin:0;font-weight:700}.breadcrumbs{font-size:13px;color:#06c;margin-bottom:5px;display:flex;gap:5px}.breadcrumb-item{cursor:pointer;text-decoration:underline}.breadcrumb-item.active{text-decoration:none;color:#666}.breadcrumb-separator{color:#999;text-decoration:none}.main-content-grid{display:flex;gap:30px;margin-top:20px;align-items:flex-start;flex-wrap:wrap}.table-section{flex:2;min-width:400px}.chart-section{flex:1;min-width:300px;background:#fff;padding:20px;border-radius:15px;box-shadow:0 4px 12px #0000000d}.dashboard-content-wrapper{display:flex;flex-direction:row;gap:30px;align-items:flex-start;padding-left:20px;justify-content:center;width:100%;max-width:1200px;margin:0 auto}.table-container{flex:none;border-radius:12px;padding-left:0;box-shadow:0 4px 15px #0000000d;height:500px;max-height:100vh;display:flex;flex-direction:column;background:#fff}.chart-card{flex:1;background-color:transparent!important;border-radius:12px;padding:20px;display:flex;min-width:320px}.delete-btn,.add-btn,.edit-btn,.sync-btn{height:38px;padding:0 15px;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease-in-out;border:1px solid transparent;width:38px}.add-btn,.edit-btn{background-color:#fff;color:#495057;border-color:#dee2e6;box-shadow:0 1px 3px #0000000d}.add-btn:hover,.edit-btn:hover{background-color:#f8f9fa;border-color:#ced4da;color:#212529}.delete-btn:not(:disabled){background-color:#e63946;color:#fff;box-shadow:0 2px 4px #e6394633}.delete-btn:not(:disabled):hover{background-color:#d62828}.delete-btn:disabled,.edit-btn:disabled{background-color:#f1f3f5;color:#adb5bd;border-color:#e9ecef;cursor:not-allowed;opacity:.7;box-shadow:none}.table-scroll-area{overflow-y:auto;overflow-x:hidden;flex:1}.table-scroll-area::-webkit-scrollbar{width:8px}.table-scroll-area::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.table-scroll-area::-webkit-scrollbar-thumb{background:#ccc;border-radius:10px}.table-scroll-area::-webkit-scrollbar-thumb:hover{background:#888}@media screen and (max-width:1024px){.dashboard-content-wrapper{flex-direction:column;align-items:center;gap:20px;padding:0 15px}.table-container{width:100%;max-width:100%;height:auto;max-height:60vh}.chart-card{width:100%;max-width:500px}}@media screen and (max-width:768px){.dashboard-header-container{flex-direction:column;gap:15px;text-align:center}.header-actions{justify-content:center;flex-wrap:wrap}.dashboard-title{font-size:20px;padding:10px}.table-container{overflow-x:auto;padding:5px}th,td{padding:8px 4px!important;font-size:12px!important;min-width:80px}.hide-on-mobile{display:none}}.table-container{background:transparent;border-radius:12px;height:600px}.bills-table{width:100%;border-collapse:collapse;text-align:left}.bills-table th{background-color:#f8f9fa;color:#6c757d;font-weight:600;padding:12px 15px;border-bottom:2px solid #edf2f7}.bills-table td{padding:15px;border-bottom:1px solid #edf2f7;color:#2d3748}.status-badge{padding:5px 10px;border-radius:20px;font-size:12px;font-weight:700}.status-badge.paid{background-color:#e6fffa;color:#38a169}.status-badge.pending{background-color:#fffaf0;color:#dd6b20}.status-badge.overdue{background-color:red;color:#000}.amount-cell{font-weight:600}.bills-table tr:hover{background-color:#f7fafc}.custom-table th,.custom-table td{padding:15px 20px;text-align:left}.custom-table tbody tr{cursor:pointer;transition:background-color .2s ease}.custom-table tbody tr:hover{background-color:#f1f3f5}.custom-table tbody tr.selected-row{background-color:#e7f3ff!important;outline:2px solid #007bff;position:relative;z-index:1}.selected-row{background-color:#e7f3ff!important;box-shadow:inset 4px 0 #007bff;transition:all .2s ease}.selected-row td{color:#0056b3;font-weight:500}.custom-table{flex-grow:1;background-color:#fff;width:100%}.custom-table thead th{position:sticky;top:0;background-color:#fff;z-index:10;border-bottom:2px solid #edf2f7}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;padding:2rem;border-radius:12px;width:400px;box-shadow:0 8px 25px #0000004d}.modal-content h2{margin-top:0;margin-bottom:1.5rem;text-align:center;color:#333}.modal-content form{display:flex;flex-direction:column;gap:15px}.modal-content label{font-size:.9rem;font-weight:600;color:#666;margin-bottom:-10px}.modal-content input,.modal-content select{padding:12px;border:1px solid #ddd;border-radius:8px;font-size:1rem;outline:none;transition:border-color .2s}.modal-content input:focus{border-color:#2ecc71}.drag-drop-zone{border:2px dashed #ccc;border-radius:10px;padding:25px;text-align:center;background:#fafafa;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80px}.drag-drop-zone.dragging{border-color:#3498db;background:#ebf5ff;transform:scale(1.02)}.drag-drop-zone.has-file{border-style:solid;border-color:#2ecc71;background:#f0fff4}.drag-drop-zone p{margin:0;font-size:.85rem;color:#888}.file-info{display:flex;align-items:center;gap:10px;color:#2ecc71;font-weight:700}.file-info button{background:none;border:none;color:#e74c3c;font-size:1.2rem;cursor:pointer;padding:0 5px}.modal-actions{display:flex;gap:10px;margin-top:10px}.save-btn{flex:2;background:#2ecc71;color:#fff;border:none;padding:12px;border-radius:8px;font-weight:700;cursor:pointer;transition:background .2s}.save-btn:hover{background:#27ae60}.cancel-btn{flex:1;background:#ecf0f1;color:#7f8c8d;border:none;padding:12px;border-radius:8px;font-weight:700;cursor:pointer;transition:background .2s}.cancel-btn:hover{background:#ec0202;color:#fcffff}#root{max-width:none;margin:0;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media screen and (max-width:900px){.sidebar-overlay{display:block;position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:9997;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.sidebar{position:fixed;left:-260px;top:0;width:250px;height:100vh;z-index:9999!important;transition:left .3s ease-in-out}.sidebar.open{left:0;height:100%}.main-wrapper{width:100%}.mobile-search-header{display:flex;align-items:center;background:#fff;height:60px;position:sticky;top:0;z-index:1000;box-shadow:0 2px 10px #0000000d;gap:10px;justify-content:center;width:100%}.inner-burger{display:block;background:none;border:none;font-size:24px;cursor:pointer;padding:5px}.main-content{padding-left:10px;padding-right:10px}}@media screen and (min-width:901px){.mobile-search-header{display:flex;align-items:center;background:#fff;height:60px;position:sticky;top:0;z-index:600;box-shadow:0 2px 10px #0000000d;gap:10px;justify-content:center}.inner-burger,.sidebar-overlay{display:none!important}.sidebar{left:0!important}.main-wrapper{margin-left:240px!important;width:calc(100% - 240px)}}.search-wrapper{position:relative;display:flex;align-items:center;justify-content:center;max-width:300px}.minimal-search{width:100%;padding:10px 15px 10px 40px;border:1px solid #e0e0e0;border-radius:25px;outline:none;font-size:14px;transition:all .3s ease;background-color:#f9f9f9}.minimal-search:focus{border-color:#3b82f6;background-color:#fff;box-shadow:0 0 8px #3b82f61a}.search-icon{position:absolute;left:15px;color:#9e9e9e;pointer-events:none}.admin-register-wrapper{display:flex;justify-content:center;padding-top:50px;background:#f8f9fa;min-height:calc(100vh - 60px)}.admin-form-card{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 20px #00000014;width:100%;max-width:450px;height:fit-content}.alert-message{padding:10px;border-radius:6px;margin-bottom:1rem;text-align:center;font-size:.9rem}.alert-message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.alert-message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.admin-input-group{margin-bottom:1.2rem}.admin-input-group label{display:block;margin-bottom:5px;font-weight:500;color:#444}.admin-input-group input,.admin-input-group select{width:100%;padding:12px;border:1px solid #ddd;border-radius:8px;box-sizing:border-box}.admin-submit-btn{width:100%;padding:14px;background:#007bff;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:.3s}.admin-submit-btn:hover{background:#0056b3}.admin-submit-btn:disabled{background:#ccc}.user-list-container{padding:30px;background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;width:85%;max-width:1000px;margin:40px auto}.list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.user-table{width:100%;border-collapse:collapse;table-layout:fixed}.user-table th{padding:15px;background-color:#f8f9fa;color:#333;font-weight:600;border-bottom:2px solid #eee}.user-table td{padding:15px;vertical-align:middle;border-bottom:1px solid #f5f5f5;word-wrap:break-word}.user-table th:nth-child(2),.user-table td:nth-child(2){width:35%}.user-table th:nth-child(3),.user-table td:nth-child(3){width:20%}.user-table th:nth-child(4),.user-table td:nth-child(4){width:20%}.user-td{display:flex;align-items:center;gap:12px}.user-avatar{width:35px;height:35px;background:#007bff;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0}.role-badge{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:20px;font-size:12px;font-weight:500}.role-badge.admin{background:#fee2e2;color:#dc2626}.role-badge.user{background:#e0f2fe;color:#0284c7}.delete-btn{color:#ff4d4d;background:none;border:none;cursor:pointer;transition:.2s;padding:5px;display:inline-flex;align-items:center;justify-content:center}.delete-btn:hover{color:#c00;transform:scale(1.15)}.actions-cell{text-align:center!important}.action-buttons{display:flex;justify-content:center;align-items:center;gap:15px}.edit-btn{background-color:#ff9800;color:#fff;border:none;padding:8px;border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease;margin-right:8px}.share-btn{background-color:#0415ac;color:#fff;border:none;padding:8px;border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease;margin-right:8px}.modal-content{background:#fff;padding:30px;border-radius:15px;width:450px;box-shadow:0 15px 35px #0003;position:relative}.close-x{position:absolute;top:15px;right:15px;background:none;border:none;cursor:pointer;color:#666}.form-group{display:flex;align-items:center;margin-bottom:20px;gap:15px}.form-group label{width:80px;font-weight:700;color:#444}.form-group input,.form-group select{flex:1;padding:10px;border:1px solid #ddd;border-radius:8px;font-size:14px}.save-btn{width:100%;background:#4caf50;color:#fff;padding:12px;border:none;border-radius:8px;font-weight:700;cursor:pointer;margin-top:10px}@media screen and (max-width:768px){.user-table thead{display:none!important}.user-table tr{display:flex;flex-direction:column;align-items:center;padding:20px;margin-bottom:20px;background:#fff;border-radius:15px;box-shadow:0 4px 12px #00000014;border:1px solid #eee}.user-table td{display:flex;flex-direction:column;align-items:center;width:100%;padding:10px 0;border:none;text-align:center}.user-table td:before{display:none}.user-table td.actions-cell{margin-top:15px;padding-top:15px;border-top:1px solid #f0f0f0;width:100%}.action-buttons{display:flex;justify-content:center;gap:20px;width:100%}.edit-btn,.delete-btn{padding:12px;border-radius:10px}}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:block;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}
