.sidebar{position:fixed;top:0;left:0;width:250px;height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;z-index:1000;overflow-y:auto}.sidebar-header{padding:2rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-header h2{font-size:1.5rem;font-weight:700;margin-bottom:.5rem}.sidebar-header p{font-size:.875rem;opacity:.8;margin:0}.sidebar-nav{padding:1rem 0}.sidebar-nav ul{list-style:none;margin:0;padding:0}.sidebar-nav li{margin:0}.nav-link{display:flex;align-items:center;padding:1rem 1.5rem;color:#fff;text-decoration:none;transition:all .3s ease;border-left:3px solid transparent}.nav-link:hover{background-color:#ffffff1a;border-left-color:#ffffff4d}.nav-link.active{background-color:#fff3;border-left-color:#fff;font-weight:600}.nav-icon{font-size:1.25rem;margin-right:1rem;width:24px;text-align:center}.nav-label{font-size:.95rem;font-weight:500}@media (max-width: 768px){.sidebar{transform:translate(-100%);transition:transform .3s ease}.sidebar.open{transform:translate(0)}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5}.app{display:flex;min-height:100vh}.main-content{flex:1;padding:2rem;margin-left:250px}.page-header{margin-bottom:2rem}.page-header h1{color:#333;font-size:2rem;font-weight:600}.page-header p{color:#666;margin-top:.5rem}.card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem;margin-bottom:1.5rem}.btn{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s;text-decoration:none;display:inline-block;text-align:center}.btn-primary{background-color:#007bff;color:#fff}.btn-primary:hover{background-color:#0056b3}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:#545b62}.btn-danger{background-color:#dc3545;color:#fff}.btn-danger:hover{background-color:#c82333}.btn-success{background-color:#28a745;color:#fff}.btn-success:hover{background-color:#1e7e34}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#333}.form-control{width:100%;padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.875rem}.form-control:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.form-control-warning{border-color:#d63384!important;box-shadow:0 0 0 2px #d6338440!important}.form-warning{color:#d63384;font-size:.875rem;margin-top:.25rem;display:flex;align-items:center;gap:.5rem;padding:.5rem;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px}.table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.table th,.table td{padding:1rem;text-align:left;border-bottom:1px solid #eee}.table th{background-color:#f8f9fa;font-weight:600;color:#333}.table tr:hover{background-color:#f8f9fa}.status-badge{padding:.25rem .5rem;border-radius:12px;font-size:.75rem;font-weight:500;text-transform:uppercase}.status-pending{background-color:#fff3cd;color:#856404}.status-confirmed{background-color:#d1ecf1;color:#0c5460}.status-in-progress{background-color:#d4edda;color:#155724}.status-completed{background-color:#d1ecf1;color:#0c5460}.status-cancelled{background-color:#f8d7da;color:#721c24}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal{background:#fff;border-radius:8px;padding:0;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #00000026}.modal-content{background:#fff;border-radius:8px;padding:2rem;width:90%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-body{padding:1.5rem}.modal-footer{padding:1rem 1.5rem;border-top:1px solid #e9ecef;display:flex;justify-content:flex-end;gap:.5rem;background-color:#f8f9fa;border-radius:0 0 8px 8px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 1.5rem 1rem;border-bottom:1px solid #e9ecef;background-color:#fff;border-radius:8px 8px 0 0}.modal-header h2{margin:0;color:#333}.close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666}.close-btn:hover{color:#333}.grid{display:grid;gap:1.5rem}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 768px){.main-content{margin-left:0;padding:1rem}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.tabs{display:flex;border-bottom:2px solid #e9ecef;margin-bottom:1rem}.tab{background:none;border:none;padding:.75rem 1.5rem;cursor:pointer;border-bottom:2px solid transparent;font-size:1rem;color:#6c757d;transition:all .2s ease}.tab:hover{color:#495057;background-color:#f8f9fa}.tab.active{color:#007bff;border-bottom-color:#007bff;font-weight:600}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.summary-cards .card{padding:1.5rem;border-radius:8px;box-shadow:0 2px 4px #0000001a}.summary-cards .card h3{font-size:1rem;margin-bottom:.5rem;font-weight:600}.summary-cards .card p{font-size:1.5rem;font-weight:700;margin:0}.summary-cards .card small{color:#6c757d;font-size:.875rem}.modal-large{max-width:900px;width:95%}.modal-close-btn{font-size:1.5rem;padding:.5rem;min-width:40px;height:40px;border-radius:50%;border:none;background-color:#6c757d;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}.modal-close-btn:hover{background-color:#5a6268}.modal-info-box{margin-bottom:1.5rem;padding:1rem;background-color:#f8f9fa;border-radius:6px;border-left:4px solid #007bff}.modal-table-container{max-height:400px;overflow-y:auto;border:1px solid #dee2e6;border-radius:6px}.modal-table{margin:0;background-color:#fff;width:100%}.modal-table thead{background-color:#f8f9fa;position:sticky;top:0;z-index:10}.modal-table th{padding:.75rem;border-bottom:2px solid #dee2e6;font-weight:600;color:#495057}.modal-table td{padding:.75rem;border-bottom:1px solid #dee2e6}.modal-table tbody tr:nth-child(2n){background-color:#f8f9fa}.modal-table tbody tr:nth-child(odd){background-color:#fff}
