:root{--sidebar-bg: #343a40;--main-bg: #f8f9fa;--text-light: #f8f9fa;--text-dark: #212529;--border-color: #dee2e6}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;display:flex;height:100vh;background-color:var(--main-bg);color:var(--text-dark)}#root{width:100%;height:100%}.sidebar{width:250px;background-color:var(--sidebar-bg);color:var(--text-light);padding:20px;flex-shrink:0;display:flex;flex-direction:column}.sidebar h1{font-size:1.5rem;margin-bottom:30px}.sidebar ul{list-style:none;padding:0;flex-grow:1}.sidebar ul li a{display:block;padding:15px 10px;border-radius:5px;cursor:pointer;transition:background-color .2s;color:var(--text-light);text-decoration:none}.sidebar ul li a.active,.sidebar ul li a:hover{background-color:#495057}.sidebar .logout-btn{padding:10px;background-color:#dc3545;color:#fff;border:none;border-radius:5px;cursor:pointer;text-align:center}.main-content{flex-grow:1;padding:40px;overflow-y:auto}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.header h2{font-size:2rem;color:var(--text-dark);margin:0}.filters{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.filters select,.filters button{padding:8px 12px;border:1px solid var(--border-color);border-radius:5px;font-size:1rem}.store-list-header,.product-list-header,.user-list-header{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:10px 20px;background-color:#f8f9fa;border:1px solid var(--border-color);border-radius:8px 8px 0 0;font-weight:600;color:#495057}.store-list,.product-list,.user-list{background-color:#fff;border:1px solid var(--border-color);border-top:none;border-radius:0 0 8px 8px}.store-item,.user-item{padding:15px 20px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;gap:15px}.store-item:last-child,.user-item:last-child{border-bottom:none}.store-item.inactive{background-color:#e9ecef;color:#6c757d}.store-details,.product-details,.user-details{display:flex;align-items:center;gap:20px;flex-grow:1}.store-details span,.product-details span,.user-details span{color:#495057}.store-item.inactive .store-details span{color:#6c757d}.store-name,.product-name{font-weight:700;min-width:150px}.store-group{min-width:120px}.store-contact{min-width:150px}.store-hours{min-width:130px}.product-price{min-width:100px}.product-enable{min-width:80px}.user-id{min-width:50px}.user-user_id{min-width:120px}.user-name{min-width:100px}.user-phone{min-width:150px}.user-role{min-width:80px}.user-created_at{min-width:120px}.edit-button{padding:5px 15px;border:1px solid #6c757d;background-color:#fff;color:#6c757d;border-radius:5px;cursor:pointer;white-space:nowrap}.edit-button:hover{background-color:#f8f9fa}.edit-button-placeholder{width:81px;flex-shrink:0}.modal{position:fixed;z-index:1;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:#0006;display:flex;align-items:center;justify-content:center}.modal-content{background-color:#fefefe;margin:auto;padding:20px;border:1px solid #888;width:80%;max-width:500px;border-radius:10px;box-shadow:0 4px 8px #0003,0 6px 20px #00000030}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;color:#666}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.8rem;border:1px solid #ddd;border-radius:4px;box-sizing:border-box}.button-group{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.button-group .btn{padding:.75rem 1.5rem;border-radius:5px;cursor:pointer;font-size:1rem}.button-group .submit-btn{background-color:#007bff;color:#fff;border:none}.button-group .cancel-btn{background-color:#6c757d;color:#fff;border:none}.switch{position:relative;display:inline-block;width:60px;height:34px;margin-left:10px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:.4s}.slider:before{position:absolute;content:"";height:26px;width:26px;left:4px;bottom:4px;background-color:#fff;transition:.4s}input:checked+.slider{background-color:#2196f3}input:focus+.slider{box-shadow:0 0 1px #2196f3}input:checked+.slider:before{transform:translate(26px)}.slider.round{border-radius:34px}.slider.round:before{border-radius:50%}.form-group-inline{display:flex;align-items:center;margin-bottom:1rem}.form-group-inline label:first-child{margin-bottom:0;margin-right:10px}.login-page-container{display:flex;justify-content:center;align-items:center;height:100vh;background-color:#f5f5f5}.login-container{background-color:#fff;padding:2rem;border-radius:10px;box-shadow:0 0 10px #0000001a;width:100%;max-width:400px}.login-container h1{text-align:center;color:#333;margin-bottom:2rem;font-size:1.8rem}.login-container .form-group{margin-bottom:1rem}.login-container label{display:block;margin-bottom:.5rem;color:#666}.login-container input{width:100%;padding:.8rem;border:1px solid #ddd;border-radius:4px;box-sizing:border-box}.login-container button{width:100%;padding:1rem;background-color:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem;margin-top:1rem}.login-container button:hover{background-color:#0056b3}.login-container .register-btn{background:none;border:none;color:#007bff;cursor:pointer;padding:.5rem;font-size:.9rem;float:right;width:auto;margin-top:0}.login-container .register-btn:hover{text-decoration:underline}.error-message{color:red;text-align:center;margin-top:1rem}
