@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@300;400;500;600;700;800&display=swap";:root{--font-title:"Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--border-radius-sm:8px;--border-radius-md:12px;--border-radius-lg:20px;--border-radius-full:9999px;--transition-fast:.2s ease;--transition-normal:.3s ease;--transition-slow:.5s ease;--shadow-sm:0 2px 8px #0000000d;--shadow-md:0 8px 24px #0000001a;--shadow-lg:0 16px 40px #00000026;--bg-primary:#f8fafc;--bg-secondary:#fff;--bg-tertiary:#f1f5f9;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--accent-primary:#ff2a85;--accent-secondary:#ff55b6;--accent-gold:#b45309;--border-color:#0f172a14;--glass-bg:#ffffffd9;--glass-border:#0f172a0f;--shadow-color:#0f172a14;--status-pending-bg:#fef3c7;--status-pending-text:#d97706;--status-staffed-bg:#dbeafe;--status-staffed-text:#2563eb;--status-completed-bg:#dcfce7;--status-completed-text:#15803d;--status-cancelled-bg:#fee2e2;--status-cancelled-text:#b91c1c}[data-theme=dark]{--bg-primary:#070a13;--bg-secondary:#0e1424;--bg-tertiary:#172036;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--accent-primary:#ff2a85;--accent-secondary:#ff55b6;--accent-gold:#eab308;--border-color:#f8fafc14;--glass-bg:#0e1424d9;--glass-border:#f8fafc0f;--shadow-color:#0000004d;--status-pending-bg:#eab30826;--status-pending-text:#f59e0b;--status-staffed-bg:#3b82f626;--status-staffed-text:#60a5fa;--status-completed-bg:#22c55e26;--status-completed-text:#4ade80;--status-cancelled-bg:#ef444426;--status-cancelled-text:#f87171}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background-color:var(--bg-primary);color:var(--text-primary);transition:background-color var(--transition-normal), color var(--transition-normal);line-height:1.5;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-title);letter-spacing:-.02em;font-weight:700}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(16px)saturate(120%);border:1px solid var(--glass-border);border-radius:var(--border-radius-lg);box-shadow:0 8px 32px 0 var(--shadow-color)}.glass-card{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:var(--border-radius-md);transition:transform var(--transition-fast), box-shadow var(--transition-fast);padding:1.5rem}.glass-card:hover{box-shadow:0 12px 30px var(--shadow-color);transform:translateY(-4px)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:var(--border-radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.table-responsive{-webkit-overflow-scrolling:touch;border-radius:var(--border-radius-md);border:1px solid var(--border-color);width:100%;margin-bottom:1rem;overflow-x:auto}.table-responsive table{border-collapse:collapse;width:100%;min-width:650px}input,select,textarea{background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);width:100%;color:var(--text-primary);font-family:var(--font-body);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;padding:.85rem 1rem;font-size:1rem}input:focus,select:focus,textarea:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #ff2a8533}input::placeholder,textarea::placeholder{color:var(--text-muted)}label{color:var(--text-secondary);margin-bottom:.5rem;font-size:.95rem;font-weight:600;display:block}.btn{font-family:var(--font-title);border-radius:var(--border-radius-md);cursor:pointer;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;gap:.6rem;min-height:48px;padding:.85rem 1.6rem;font-size:1rem;font-weight:700;text-decoration:none;display:inline-flex}.btn-primary{background:linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));color:#fff;box-shadow:0 4px 14px #ff2a8559}.btn-primary:hover{opacity:.95;transform:translateY(-1px);box-shadow:0 6px 20px #ff2a8573}.btn-secondary{background-color:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background-color:var(--border-color);transform:translateY(-1px)}.btn-gold{background-color:var(--accent-gold);color:#fff}.btn-gold:hover{background-color:#d97706;transform:translateY(-1px)}.btn-danger{background-color:var(--status-cancelled-text);color:#fff}.btn-danger:hover{opacity:.9;transform:translateY(-1px)}.badge{border-radius:var(--border-radius-full);text-transform:uppercase;letter-spacing:.05em;align-items:center;padding:.35rem .85rem;font-size:.825rem;font-weight:700;display:inline-flex}.badge-pending{background-color:var(--status-pending-bg);color:var(--status-pending-text)}.badge-staffed{background-color:var(--status-staffed-bg);color:var(--status-staffed-text)}.badge-completed{background-color:var(--status-completed-bg);color:var(--status-completed-text)}.badge-cancelled{background-color:var(--status-cancelled-bg);color:var(--status-cancelled-text)}.flex-center{justify-content:center;align-items:center;display:flex}.flex-between{justify-content:space-between;align-items:center;display:flex}.grid-dashboard{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;display:grid}.avatar{border-radius:var(--border-radius-full);background-color:var(--bg-tertiary);border:2px solid var(--accent-primary);object-fit:cover;width:44px;height:44px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn var(--transition-normal) forwards}.no-select{-webkit-user-select:none;user-select:none}.mobile-bottom-bar{display:none}@media (width<=768px){.desktop-sidebar{display:none!important}.mobile-bottom-bar{z-index:99999;background:var(--glass-bg);-webkit-backdrop-filter:blur(20px)saturate(140%);border-top:1px solid var(--border-color);justify-content:space-around;align-items:center;height:70px;padding:0 .5rem;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -6px 25px #0003;border-radius:20px 20px 0 0!important;display:flex!important}.mobile-nav-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:12px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;padding:6px 10px;font-size:.75rem;font-weight:700;transition:all .2s;display:flex}.mobile-nav-btn.active{color:var(--accent-primary);transform:scale(1.05)}.mobile-nav-btn.active svg{filter:drop-shadow(0 2px 8px #ff2a8580)}.mobile-badge-dot{background-color:#ef4444;border-radius:50%;width:10px;height:10px;position:absolute;top:-2px;right:-4px;box-shadow:0 0 8px #ef4444}.mobile-drawer-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:999999;background:#000000a6;align-items:flex-end;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.mobile-drawer-content{width:100%;max-height:85vh;overflow-y:auto;box-shadow:0 -10px 40px #00000059;background:var(--bg-secondary)!important;border-radius:24px 24px 0 0!important;padding:1.5rem!important}.main-layout-container{flex-direction:column!important;gap:1rem!important;padding:0 .75rem 90px!important}main.glass-panel{border-radius:var(--border-radius-md)!important;width:100%!important;min-height:auto!important;padding:1.25rem 1rem!important}header.glass-panel{margin-bottom:1rem!important;padding:.75rem 1rem!important}.grid-dashboard{grid-template-columns:1fr!important;gap:1rem!important}}@media (width<=640px){.calendar-day-cell{gap:2px!important;height:auto!important;min-height:48px!important;padding:4px!important;font-size:.75rem!important}.calendar-grid-container{gap:3px!important}.table-responsive{-webkit-overflow-scrolling:touch!important;scroll-behavior:smooth!important}.glass-panel-modal{max-height:92vh!important;padding:1.25rem 1rem!important;overflow-y:auto!important}}@media (width<=480px){h1{font-size:1.4rem!important}h2{font-size:1.2rem!important}h3{font-size:1.05rem!important}.header-user-info{display:none!important}.flex-between{flex-direction:column;align-items:flex-start!important;gap:.75rem!important}.btn{padding:.6rem .9rem!important;font-size:.85rem!important}}
