@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&display=swap";
*{box-sizing:border-box;margin:0;padding:0}:root{--bg-base:#0a0a0c;--bg-surface:#121217;--bg-card:#191922;--bg-card-hover:#21212c;--border-color:#ffffff0f;--border-color-hover:#ffffff1f;--text-primary:#f8f9fa;--text-secondary:#a0aec0;--text-muted:#64748b;--accent-color:#d4af37;--accent-glow:#d4af371f;--accent-hover:#e5c158;--success-color:#10b981;--success-glow:#10b9811a;--success-hover:#059669;--danger-color:#ef4444;--danger-glow:#ef44441a;--danger-hover:#dc2626;--warning-color:#f59e0b;--warning-glow:#f59e0b1a;--info-color:#3b82f6;--info-glow:#3b82f61a;--font-family:"Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--sidebar-width:260px;--border-radius:12px;--transition-smooth:all .25s cubic-bezier(.4, 0, .2, 1)}body{background-color:var(--bg-base);color:var(--text-primary);font-family:var(--font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;overflow-x:hidden}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-base)}::-webkit-scrollbar-thumb{background:var(--border-color-hover);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent-color)}.container{max-width:1200px;margin:0 auto;padding:0 20px}.grid-2{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.grid-4{grid-template-columns:repeat(4,1fr);gap:24px;display:grid}@media (max-width:1024px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.grid-4,.grid-3,.grid-2{grid-template-columns:1fr;gap:16px}}.flex-between{justify-content:space-between;align-items:center;display:flex}.flex-center{justify-content:center;align-items:center;display:flex}.flex-gap-2{align-items:center;gap:8px;display:flex}.btn{border-radius:var(--border-radius);cursor:pointer;transition:var(--transition-smooth);font-size:15px;font-weight:600;font-family:var(--font-family);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:10px 20px;text-decoration:none;display:inline-flex}.btn-primary{background-color:var(--accent-color);color:#000}.btn-primary:hover{background-color:var(--accent-hover);box-shadow:0 4px 12px var(--accent-glow);transform:translateY(-1px)}.btn-secondary{color:var(--text-primary);border-color:var(--border-color);background-color:#0000}.btn-secondary:hover{border-color:var(--border-color-hover);background-color:#ffffff0a}.btn-danger{background-color:var(--danger-color);color:#fff}.btn-danger:hover{background-color:var(--danger-hover);box-shadow:0 4px 12px var(--danger-glow)}.btn-success{background-color:var(--success-color);color:#fff}.btn-success:hover{background-color:var(--success-hover);box-shadow:0 4px 12px var(--success-glow)}.btn-sm{border-radius:8px;padding:6px 12px;font-size:13px}.form-group{margin-bottom:20px}.form-label{color:var(--text-secondary);margin-bottom:8px;font-size:14px;font-weight:500;display:block}.form-control,.form-select,.form-textarea{border:1px solid var(--border-color);border-radius:var(--border-radius);width:100%;color:var(--text-primary);font-family:var(--font-family);transition:var(--transition-smooth);background-color:#ffffff08;padding:12px;font-size:15px}.form-control:focus,.form-select:focus,.form-textarea:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-glow);background-color:#ffffff0f;outline:none}.form-textarea{resize:vertical;min-height:100px}.form-select option{background-color:var(--bg-card);color:var(--text-primary)}.card{background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius);transition:var(--transition-smooth);padding:24px}.card:hover{border-color:var(--border-color-hover)}.card-glass{-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color);background:#121217a6}.card-clickable{cursor:pointer}.card-clickable:hover{background-color:var(--bg-card-hover);transform:translateY(-2px)}.badge{text-transform:uppercase;letter-spacing:.05em;border-radius:9999px;align-items:center;padding:4px 8px;font-size:12px;font-weight:600;display:inline-flex}.badge-success{background-color:var(--success-glow);color:var(--success-color)}.badge-danger{background-color:var(--danger-glow);color:var(--danger-color)}.badge-warning{background-color:var(--warning-glow);color:var(--warning-color)}.badge-info{background-color:var(--info-glow);color:var(--info-color)}.badge-secondary{color:var(--text-secondary);background-color:#ffffff14}.table-container{border:1px solid var(--border-color);border-radius:var(--border-radius);background-color:var(--bg-surface);width:100%;overflow-x:auto}.custom-table{border-collapse:collapse;text-align:left;width:100%}.custom-table th{color:var(--text-secondary);border-bottom:1px solid var(--border-color);background-color:#ffffff05;padding:16px;font-size:14px;font-weight:600}.custom-table td{color:var(--text-primary);border-bottom:1px solid var(--border-color);transition:var(--transition-smooth);padding:16px;font-size:15px}.custom-table tr:last-child td{border-bottom:none}.custom-table tr:hover td{background-color:#ffffff03}.dashboard-container{min-height:100vh;display:flex}.sidebar{width:var(--sidebar-width);background-color:var(--bg-surface);border-right:1px solid var(--border-color);z-index:100;flex-direction:column;height:100vh;padding:24px;display:flex;position:fixed;top:0;left:0}.main-content{margin-left:var(--sidebar-width);background-color:var(--bg-base);flex:1;min-height:100vh;padding:40px}@media (max-width:768px){.dashboard-container{flex-direction:column}.sidebar{border-right:none;border-bottom:1px solid var(--border-color);width:100%;height:auto;padding:16px;position:relative}.main-content{margin-left:0;padding:20px}}.logo-container{align-items:center;gap:12px;margin-bottom:32px;display:flex}.logo-text{letter-spacing:-.02em;color:var(--text-primary);font-size:20px;font-weight:800}.logo-text span{color:var(--accent-color)}.sidebar-menu{-ms-overflow-style:none;scrollbar-width:none;flex-direction:column;flex:1;gap:6px;list-style:none;display:flex;overflow-y:auto}.sidebar-menu::-webkit-scrollbar{display:none}.sidebar-link{color:var(--text-secondary);border-radius:var(--border-radius);transition:var(--transition-smooth);align-items:center;gap:12px;padding:12px 16px;font-weight:500;text-decoration:none;display:flex}.sidebar-link:hover{color:var(--text-primary);background-color:#ffffff0a}.sidebar-link-active,.sidebar-link-active:hover{background-color:var(--accent-glow);color:var(--accent-color)}.sidebar-footer{border-top:1px solid var(--border-color);flex-shrink:0;margin-top:auto;padding-top:20px}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background-color:#000c;justify-content:center;align-items:center;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-content{background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius);width:100%;max-width:500px;padding:32px;animation:.3s cubic-bezier(.16,1,.3,1) slideUp;position:relative;box-shadow:0 20px 25px -5px #00000080}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.4s ease-out fadeIn}.calendar-view{background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius);overflow:hidden}.calendar-header{border-bottom:1px solid var(--border-color);background-color:#ffffff03;justify-content:space-between;align-items:center;padding:20px;display:flex}.calendar-grid{border-bottom:1px solid var(--border-color);grid-template-columns:repeat(7,1fr);display:grid}.calendar-day-header{text-align:center;color:var(--text-secondary);border-right:1px solid var(--border-color);background-color:#ffffff03;padding:12px;font-size:13px;font-weight:600}.calendar-day-header:last-child{border-right:none}.calendar-days-container{grid-template-columns:repeat(7,1fr);display:grid}.calendar-cell{border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);flex-direction:column;gap:4px;height:130px;padding:8px;display:flex;position:relative;overflow:hidden}.calendar-cell-bookings{flex-direction:column;flex:1;gap:4px;max-height:80px;display:flex;overflow-y:auto}.calendar-cell-bookings::-webkit-scrollbar{width:4px}.calendar-cell-bookings::-webkit-scrollbar-thumb{background:var(--border-color-hover);border-radius:2px}.calendar-cell-bookings::-webkit-scrollbar-thumb:hover{background:var(--accent-color)}.calendar-cell:nth-child(7n){border-right:none}.calendar-cell-other-month{color:var(--text-muted);background-color:#00000026}.calendar-cell-today{background-color:#d4af3705}.calendar-cell-today:before{content:"";background-color:var(--accent-color);height:2px;position:absolute;top:0;left:0;right:0}.calendar-cell-number{align-self:flex-end;margin-bottom:6px;font-size:14px;font-weight:700}.calendar-booking-badge{cursor:pointer;white-space:nowrap;text-overflow:ellipsis;transition:var(--transition-smooth);border-left:3px solid #0000;border-radius:6px;padding:4px 8px;font-size:11px;font-weight:500;overflow:hidden}.calendar-booking-badge:hover{filter:brightness(1.2);transform:translate(2px)}.calendar-booking-badge-confirmed{color:#60a5fa;border-left-color:var(--info-color);background-color:#3b82f61f}.calendar-booking-badge-completed{color:#34d399;border-left-color:var(--success-color);background-color:#10b9811f}.calendar-booking-badge-cancelled{color:#f87171;border-left-color:var(--danger-color);background-color:#ef44441f}.calendar-booking-badge-no_show{color:#fbbf24;border-left-color:var(--warning-color);background-color:#f59e0b1f}.back-link{color:var(--text-muted);transition:var(--transition-smooth);align-items:center;gap:4px;margin-bottom:8px;font-size:13px;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--text-primary)}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.chart-bar{width:32px;transition:var(--transition-smooth);background-color:#ffffff05;border-radius:4px 4px 0 0}.chart-bar-active{background-color:var(--accent-color);box-shadow:0 0 10px var(--accent-glow)}.chart-bar-active:hover{background-color:var(--accent-hover)}
