@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Space+Grotesk:wght@400;500;600;700&display=swap";
*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root,[data-theme=dark]{--aqua-50:#e6f7ff;--aqua-100:#b3e5fc;--aqua-200:#81d4fa;--aqua-300:#4fc3f7;--aqua-400:#29b6f6;--aqua-500:#039be5;--aqua-600:#0288d1;--aqua-700:#0277bd;--aqua-800:#01579b;--aqua-900:#003c6e;--gold-50:#fff8e1;--gold-100:#ffecb3;--gold-200:#ffe082;--gold-300:#ffd54f;--gold-400:#ffca28;--gold-500:#f5a623;--gold-600:#e6951b;--gold-700:#d48412;--gold-800:#c27609;--gold-900:#a86000;--emerald-50:#e8f5e9;--emerald-100:#c8e6c9;--emerald-400:#66bb6a;--emerald-500:#4caf50;--emerald-600:#43a047;--amber-50:#fff3e0;--amber-400:#ffa726;--amber-500:#ff9800;--rose-50:#fce4ec;--rose-400:#ef5350;--rose-500:#e53935;--slate-50:#f8fafc;--slate-100:#f1f5f9;--slate-200:#e2e8f0;--slate-300:#cbd5e1;--slate-400:#94a3b8;--slate-500:#64748b;--slate-600:#475569;--slate-700:#334155;--slate-800:#1e293b;--slate-900:#0f172a;--slate-950:#020617;--bg-primary:#0a0e1a;--bg-secondary:#111827;--bg-card:#1a2236;--bg-card-hover:#1f2a42;--bg-elevated:#243049;--bg-input:#16203a;--bg-sidebar:#0d1221;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-muted:#64748b;--text-inverse:#0f172a;--border-subtle:#94a3b81a;--border-default:#94a3b826;--border-strong:#94a3b840;--gradient-aqua:linear-gradient(135deg, var(--aqua-500), var(--aqua-700));--gradient-gold:linear-gradient(135deg, var(--gold-400), var(--gold-600));--gradient-ocean:linear-gradient(135deg, #0a0e1a 0%, #0d2137 50%, #0a0e1a 100%);--gradient-card:linear-gradient(160deg, #1a2236e6 0%, #0d1221f2 100%);--gradient-glass:linear-gradient(135deg, #ffffff0d 0%, #ffffff05 100%);--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 8px 32px #00000080;--shadow-glow-aqua:0 0 20px #039be526;--shadow-glow-gold:0 0 20px #f5a62326;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-display:"Space Grotesk", var(--font-sans);--sidebar-width:260px;--sidebar-collapsed:72px;--header-height:64px;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-base:.25s cubic-bezier(.4, 0, .2, 1);--transition-slow:.4s cubic-bezier(.4, 0, .2, 1);--transition-spring:.5s cubic-bezier(.34, 1.56, .64, 1)}[data-theme=light]{--bg-primary:#f0f4f8;--bg-secondary:#fff;--bg-card:#fff;--bg-card-hover:#f5f7fa;--bg-elevated:#e8edf3;--bg-input:#f5f7fa;--bg-sidebar:#fff;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--text-inverse:#f1f5f9;--border-subtle:#0f172a0f;--border-default:#0f172a1a;--border-strong:#0f172a2e;--gradient-card:linear-gradient(160deg, #fff 0%, #f8fafc 100%);--gradient-glass:linear-gradient(135deg, #ffffffb3 0%, #fff6 100%);--shadow-sm:0 1px 3px #0000000f;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 8px 32px #0000001a;--shadow-glow-aqua:0 0 20px #039be514;--shadow-glow-gold:0 0 20px #f5a62314}[data-theme=light] .header-bar{background:#ffffffe0}[data-theme=light] .sidebar-handle{background:var(--bg-sidebar);box-shadow:2px 0 8px #0000000f}[data-theme=light] .notification-dot{border-color:var(--bg-secondary)!important}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px}body{font-family:var(--font-sans);background:var(--bg-primary);color:var(--text-primary);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;min-height:100vh;line-height:1.6;overflow-x:hidden}input,textarea,select,[contenteditable]{-webkit-user-select:text;user-select:text}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--slate-600);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--slate-500)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--text-primary);font-weight:600;line-height:1.3}h1{letter-spacing:-.02em;font-size:2rem;font-weight:700}h2{letter-spacing:-.01em;font-size:1.5rem;font-weight:600}h3{font-size:1.25rem}h4{font-size:1.1rem}a{color:var(--aqua-400);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--aqua-300)}.app-layout{min-height:100vh;display:flex}.main-content{margin-left:var(--sidebar-width);flex-direction:column;flex:1;min-width:0;min-height:100vh;transition:margin-left .3s cubic-bezier(.4,0,.2,1);display:flex;overflow-x:hidden}.sidebar.sidebar-collapsed~.main-content,.sidebar-collapsed~.main-content{margin-left:var(--sidebar-collapsed)}.page-wrapper{padding:var(--space-xl);padding-top:calc(var(--header-height) + var(--space-lg));flex:1;width:100%;max-width:1600px}.sidebar{width:var(--sidebar-width);background:var(--bg-sidebar);border-right:1px solid var(--border-subtle);z-index:100;flex-direction:column;height:100vh;transition:width .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;left:0;overflow:hidden auto}.sidebar.sidebar-collapsed{width:var(--sidebar-collapsed)}.sidebar-brand{align-items:center;gap:var(--space-md);padding:var(--space-lg);border-bottom:1px solid var(--border-subtle);min-height:var(--header-height);display:flex;overflow:hidden}.sidebar.sidebar-collapsed .sidebar-brand{padding:var(--space-md) var(--space-lg);justify-content:flex-start}.sidebar-brand-icon{background:var(--gradient-aqua);border-radius:var(--radius-md);width:40px;height:40px;box-shadow:var(--shadow-glow-aqua);flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar-brand-icon svg{color:#fff;width:22px;height:22px}.sidebar-brand-text{white-space:nowrap;opacity:1;flex-direction:column;transition:opacity .2s .1s;display:flex;overflow:hidden}.sidebar.sidebar-collapsed .sidebar-brand-text{opacity:0;width:0;transition:opacity .1s,width 0s .1s}.sidebar-brand-name{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.02em;font-size:1.15rem;font-weight:700}.sidebar-brand-sub{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;font-weight:500}.sidebar-section{padding:var(--space-md) var(--space-sm)}.sidebar-section-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);padding:var(--space-sm) var(--space-md);white-space:nowrap;opacity:1;font-size:.65rem;font-weight:600;transition:opacity .2s .1s,height .2s,padding .2s;overflow:hidden}.sidebar.sidebar-collapsed .sidebar-section-label{opacity:0;height:0;padding-top:0;padding-bottom:0;transition:opacity .1s,height .2s .1s,padding .2s .1s}.sidebar-nav{flex-direction:column;gap:2px;display:flex}.sidebar-link{align-items:center;gap:var(--space-md);padding:10px var(--space-md);border-radius:var(--radius-md);color:var(--text-secondary);transition:all var(--transition-fast);cursor:pointer;margin:0 var(--space-sm);white-space:nowrap;font-size:.9rem;font-weight:500;text-decoration:none;display:flex;position:relative;overflow:hidden}.sidebar.sidebar-collapsed .sidebar-link{padding:10px var(--space-md);margin:0 var(--space-sm)}.sidebar-link:hover{color:var(--text-primary);background:#ffffff0d}.sidebar-link.active{color:var(--aqua-400);background:#039be51f}.sidebar-link.active:before{content:"";background:var(--aqua-500);border-radius:var(--radius-full);width:3px;height:60%;position:absolute;top:50%;left:-8px;transform:translateY(-50%)}.sidebar.sidebar-collapsed .sidebar-link.active:before{left:0}.sidebar-link svg{opacity:.7;flex-shrink:0;width:20px;height:20px}.sidebar-link.active svg{opacity:1}.sidebar-link span{opacity:1;transition:opacity .2s .1s;overflow:hidden}.sidebar.sidebar-collapsed .sidebar-link span{opacity:0;width:0;transition:opacity .1s,width 0s .1s}.sidebar-link-badge{background:var(--aqua-500);color:#fff;border-radius:var(--radius-full);text-align:center;min-width:20px;margin-left:auto;padding:2px 8px;font-size:.65rem;font-weight:700;transition:opacity .2s,transform .2s}.sidebar.sidebar-collapsed .sidebar-link-badge{min-width:16px;margin-left:0;padding:1px 4px;font-size:.55rem;position:absolute;top:4px;right:4px}.sidebar-footer{padding:var(--space-md);border-top:1px solid var(--border-subtle);margin-top:auto}.sidebar-user{align-items:center;gap:var(--space-md);padding:var(--space-sm);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast);display:flex;overflow:hidden}.sidebar.sidebar-collapsed .sidebar-user{justify-content:flex-start}.sidebar-user:hover{background:#ffffff0d}.sidebar-avatar{border-radius:var(--radius-full);background:var(--gradient-gold);color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.85rem;font-weight:700;display:flex}.sidebar-user-info{opacity:1;flex-direction:column;min-width:0;transition:opacity .2s .1s;display:flex;overflow:hidden}.sidebar.sidebar-collapsed .sidebar-user-info{opacity:0;width:0;transition:opacity .1s,width 0s .1s}.sidebar.sidebar-collapsed .sidebar-user>svg{display:none}.sidebar-user-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:600;overflow:hidden}.sidebar-user-role{color:var(--text-muted);font-size:.7rem}.sidebar-handle{left:var(--sidebar-width);background:var(--bg-sidebar);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;z-index:150;width:28px;height:56px;color:var(--text-muted);outline:none;flex-direction:column;justify-content:center;align-items:center;gap:3px;margin-left:-14px;padding:0;transition:left .3s cubic-bezier(.4,0,.2,1),background .2s,color .2s,box-shadow .2s;display:flex;position:fixed;top:50%;transform:translateY(-50%)}.sidebar.sidebar-collapsed .sidebar-handle{left:var(--sidebar-collapsed)}.sidebar-handle:hover{background:var(--bg-card);color:var(--aqua-400);box-shadow:0 0 16px #0000004d}.sidebar-handle:active{transition:transform 80ms;transform:translateY(-50%)scale(.95)}.sidebar-handle-grip{opacity:.4;background:currentColor;border-radius:2px;width:3px;height:8px;transition:opacity .2s}.sidebar-handle:hover .sidebar-handle-grip{opacity:.7}.sidebar-handle-icon{justify-content:center;align-items:center;transition:transform .3s;display:flex}.sidebar-handle:hover .sidebar-handle-icon{transform:scale(1.15)}.header-bar{top:0;left:var(--sidebar-width);height:var(--header-height);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border-subtle);padding:0 var(--space-xl);z-index:90;background:#0a0e1ad9;justify-content:space-between;align-items:center;transition:left .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;right:0}.app-layout:has(.sidebar-collapsed) .header-bar{left:var(--sidebar-collapsed)}.header-left{align-items:center;gap:var(--space-lg);display:flex}.header-title{font-family:var(--font-display);color:var(--text-primary);font-size:1.15rem;font-weight:600}.header-breadcrumb{align-items:center;gap:var(--space-sm);color:var(--text-muted);font-size:.85rem;display:flex}.header-breadcrumb span{color:var(--text-secondary)}.header-right{align-items:center;gap:var(--space-md);display:flex}.header-search{align-items:center;gap:var(--space-sm);background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-full);min-width:240px;transition:all var(--transition-fast);padding:8px 16px;display:flex}.header-search:focus-within{border-color:var(--aqua-500);box-shadow:var(--shadow-glow-aqua)}.header-search svg{width:16px;height:16px;color:var(--text-muted);flex-shrink:0}.header-search input{color:var(--text-primary);width:100%;font-size:.85rem;font-family:var(--font-sans);background:0 0;border:none;outline:none}.header-search input::placeholder{color:var(--text-muted)}.header-icon-btn{border-radius:var(--radius-md);border:1px solid var(--border-subtle);cursor:pointer;width:38px;height:38px;transition:all var(--transition-fast);color:var(--text-secondary);background:0 0;justify-content:center;align-items:center;display:flex;position:relative}.header-icon-btn:hover{background:var(--bg-card);border-color:var(--border-strong);color:var(--text-primary)}.header-icon-btn .notification-dot{background:var(--rose-400);border:2px solid var(--bg-primary);border-radius:50%;width:8px;height:8px;position:absolute;top:6px;right:6px}.theme-toggle-btn svg{transition:transform .4s cubic-bezier(.34,1.56,.64,1),color .2s}.theme-toggle-btn:hover svg{color:var(--gold-400);transform:rotate(30deg)scale(1.15)}.theme-toggle-btn:active svg{transform:rotate(180deg)scale(.9)}.card{background:var(--gradient-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-lg);transition:all var(--transition-base);position:relative;overflow:hidden}.card:before{content:"";background:var(--gradient-glass);height:1px;position:absolute;top:0;left:0;right:0}.card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md);transform:translateY(-1px)}.card-flat{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-lg)}.kpi-grid{gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.kpi-card{background:var(--gradient-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-lg);transition:all var(--transition-base);cursor:pointer;position:relative;overflow:hidden}.kpi-card:before{content:"";height:2px;position:absolute;top:0;left:0;right:0}.kpi-card.kpi-aqua:before{background:var(--gradient-aqua)}.kpi-card.kpi-gold:before{background:var(--gradient-gold)}.kpi-card.kpi-emerald:before{background:linear-gradient(135deg, var(--emerald-400), var(--emerald-600))}.kpi-card.kpi-rose:before{background:linear-gradient(135deg, var(--rose-400), var(--rose-500))}.kpi-card:hover{box-shadow:var(--shadow-lg);border-color:var(--border-strong);transform:translateY(-2px)}.kpi-header{margin-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.kpi-icon{border-radius:var(--radius-md);justify-content:center;align-items:center;width:42px;height:42px;display:flex}.kpi-icon.icon-aqua{color:var(--aqua-400);background:#039be51f}.kpi-icon.icon-gold{color:var(--gold-400);background:#f5a6231f}.kpi-icon.icon-emerald{color:var(--emerald-400);background:#4caf501f}.kpi-icon.icon-rose{color:var(--rose-400);background:#ef53501f}.kpi-icon svg{width:22px;height:22px}.kpi-trend{border-radius:var(--radius-full);align-items:center;gap:4px;padding:3px 8px;font-size:.75rem;font-weight:600;display:flex}.kpi-trend.up{color:var(--emerald-400);background:#4caf501a}.kpi-trend.down{color:var(--rose-400);background:#ef53501a}.kpi-value{font-family:var(--font-display);color:var(--text-primary);margin-bottom:4px;font-size:1.85rem;font-weight:700;line-height:1.1}.kpi-label{color:var(--text-muted);font-size:.8rem;font-weight:500}@keyframes kpiPopupIn{0%{opacity:0;transform:translate(-50%,-50%)scale(.92)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes kpiBackdropIn{0%{opacity:0}to{opacity:1}}.kpi-popup-backdrop{z-index:900;-webkit-backdrop-filter:blur(6px);background:#0000008c;animation:.2s kpiBackdropIn;position:fixed;inset:0}.kpi-popup{z-index:910;background:var(--bg-card);border:1px solid var(--border-default);border-radius:var(--radius-xl);width:440px;max-width:92vw;max-height:85vh;animation:.28s cubic-bezier(.22,1,.36,1) kpiPopupIn;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 24px 100px #00000080,0 0 40px #039be514}.kpi-popup-header{align-items:flex-start;gap:var(--space-md);padding:var(--space-xl) var(--space-xl) var(--space-md);display:flex}.kpi-popup-header-icon{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.kpi-popup-title{color:var(--text-muted);letter-spacing:.02em;margin:0 0 4px;font-size:.85rem;font-weight:500}.kpi-popup-value{font-family:var(--font-display);align-items:baseline;gap:var(--space-sm);font-size:1.65rem;font-weight:700;display:flex}.kpi-popup-trend{border-radius:var(--radius-full);align-items:center;gap:3px;padding:2px 8px;font-size:.75rem;font-weight:600;display:inline-flex}.kpi-popup-trend.up{color:var(--emerald-400);background:#4caf501f}.kpi-popup-trend.down{color:var(--rose-400);background:#ef53501f}.kpi-popup-close{border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;margin-left:auto;padding:6px;transition:all .15s}.kpi-popup-close:hover{color:var(--text-primary);background:#ffffff14}.kpi-popup-divider{height:1px;margin:0 var(--space-xl);opacity:.4}.kpi-popup-body{padding:var(--space-lg) var(--space-xl)}.kpi-popup-detail{color:var(--text-secondary);margin:0 0 var(--space-lg);font-size:.85rem;line-height:1.7}.kpi-popup-breakdown{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md);margin-bottom:var(--space-md);overflow:hidden}.kpi-popup-breakdown-row{padding:10px var(--space-md);justify-content:space-between;align-items:center;font-size:.82rem;display:flex}.kpi-popup-breakdown-row:not(:last-child){border-bottom:1px solid var(--border-subtle)}.kpi-popup-breakdown-label{color:var(--text-secondary)}.kpi-popup-breakdown-value{color:var(--text-primary);font-weight:600;font-family:var(--font-display)}.kpi-popup-period{color:var(--text-muted);align-items:center;gap:6px;font-size:.72rem;font-style:italic;display:flex}.kpi-popup-footer{padding:var(--space-md) var(--space-xl) var(--space-xl)}.kpi-popup-source{align-items:center;gap:var(--space-sm);border-radius:var(--radius-md);color:var(--text-primary);border:1px solid var(--border-default);cursor:pointer;background:0 0;justify-content:center;width:100%;padding:8px 18px;font-size:.82rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.kpi-popup-source:hover{border-color:var(--aqua-500);color:var(--aqua-400);background:#039be514}.btn{justify-content:center;align-items:center;gap:var(--space-sm);border-radius:var(--radius-md);font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;border:none;padding:10px 20px;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-flex}.btn svg{width:18px;height:18px}.btn-primary{background:var(--gradient-aqua);color:#fff;box-shadow:0 2px 8px #039be54d}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 16px #039be566}.btn-gold{background:var(--gradient-gold);color:var(--text-inverse);box-shadow:0 2px 8px #f5a6234d}.btn-gold:hover{transform:translateY(-1px);box-shadow:0 4px 16px #f5a62366}.btn-ghost{color:var(--text-secondary);border:1px solid var(--border-default);background:0 0}.btn-ghost:hover{background:var(--bg-card);color:var(--text-primary);border-color:var(--border-strong)}.btn-danger{color:var(--rose-400);background:#ef53501f;border:1px solid #ef535033}.btn-danger:hover{background:#ef535033}.btn-sm{padding:6px 14px;font-size:.8rem}.btn-lg{padding:14px 28px;font-size:.95rem}.btn-icon{border-radius:var(--radius-md);width:38px;height:38px;padding:0}.table-wrapper{border-radius:var(--radius-lg);border:1px solid var(--border-subtle);max-height:calc(100vh - var(--header-height) - 180px);position:relative;overflow:auto}.table-wrapper::-webkit-scrollbar{width:10px;height:14px}.table-wrapper::-webkit-scrollbar-track{background:var(--bg-elevated)}.table-wrapper::-webkit-scrollbar-thumb{background:var(--aqua-600);border-radius:var(--radius-full);border:2px solid var(--bg-elevated)}.table-wrapper::-webkit-scrollbar-thumb:hover{background:var(--aqua-400)}.table-wrapper::-webkit-scrollbar-corner{background:var(--bg-elevated)}.table-wrapper{scrollbar-width:auto;scrollbar-color:var(--aqua-600) var(--bg-elevated)}.table-wrapper .data-table thead{z-index:2;background:var(--bg-elevated);position:sticky;top:0}.fixed-hscroll-outer{width:100%;position:relative}.fixed-hscroll-content{width:100%;overflow:auto visible}.fixed-hscroll-content::-webkit-scrollbar{width:0;height:0}.fixed-hscroll-content{scrollbar-width:none}.fixed-hscroll-content .table-wrapper{scrollbar-width:none;max-height:none!important;overflow:visible!important}.fixed-hscroll-content .table-wrapper::-webkit-scrollbar{width:0;height:0}.fixed-hscroll-bar-track{bottom:0;left:var(--sidebar-width);background:var(--bg-elevated);border-top:1px solid var(--border-subtle);z-index:80;height:18px;transition:left .3s cubic-bezier(.4,0,.2,1);position:fixed;right:0}.app-layout:has(.sidebar-collapsed) .fixed-hscroll-bar-track{left:var(--sidebar-collapsed)}.fixed-hscroll-bar{width:100%;height:18px;overflow:auto hidden}.fixed-hscroll-bar::-webkit-scrollbar{height:14px}.fixed-hscroll-bar::-webkit-scrollbar-track{background:var(--bg-elevated);border-radius:0}.fixed-hscroll-bar::-webkit-scrollbar-thumb{background:linear-gradient(135deg, var(--aqua-500), var(--aqua-700));border-radius:var(--radius-full);border:2px solid var(--bg-elevated);min-width:60px}.fixed-hscroll-bar::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg, var(--aqua-400), var(--aqua-600))}.fixed-hscroll-bar{scrollbar-width:auto;scrollbar-color:var(--aqua-500) var(--bg-elevated)}@media (max-width:768px){.fixed-hscroll-bar-track{left:0}.fixed-hscroll-content{overflow-x:auto}.fixed-hscroll-content::-webkit-scrollbar{height:14px}.fixed-hscroll-content{scrollbar-width:auto}}.data-table{border-collapse:collapse;width:100%;font-size:.85rem}.data-table thead{background:var(--bg-elevated)}.data-table th{text-align:left;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border-bottom:1px solid var(--border-subtle);padding:12px 16px;font-size:.75rem;font-weight:600}.data-table td{color:var(--text-primary);border-bottom:1px solid var(--border-subtle);vertical-align:middle;padding:14px 16px}.data-table tbody tr:hover{background:var(--bg-card-hover)}.data-table tbody tr:last-child td{border-bottom:none}.badge{border-radius:var(--radius-full);white-space:nowrap;align-items:center;gap:4px;padding:3px 10px;font-size:.72rem;font-weight:600;display:inline-flex}.badge-aqua{color:var(--aqua-400);background:#039be51f}.badge-gold{color:var(--gold-400);background:#f5a6231f}.badge-emerald{color:var(--emerald-400);background:#4caf501f}.badge-rose{color:var(--rose-400);background:#ef53501f}.badge-slate{color:var(--slate-400);background:#94a3b81f}.badge-amber{color:var(--amber-400);background:#ff98001f}.badge-dot:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.form-group{flex-direction:column;gap:6px;display:flex}.form-label{color:var(--text-secondary);font-size:.8rem;font-weight:600}.form-input,.form-select,.form-textarea{background:var(--bg-input);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-sans);transition:all var(--transition-fast);outline:none;width:100%;padding:10px 14px;font-size:.85rem}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--aqua-500);box-shadow:0 0 0 3px #039be51a}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-muted)}.form-textarea{resize:vertical;min-height:100px}.form-row{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.tabs{border-bottom:1px solid var(--border-subtle);margin-bottom:var(--space-lg);gap:2px;display:flex}.tab{color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);font-size:.85rem;font-weight:500;font-family:var(--font-sans);background:0 0;border:none;padding:10px 20px;position:relative}.tab:hover{color:var(--text-secondary)}.tab.active{color:var(--aqua-400)}.tab.active:after{content:"";background:var(--aqua-500);border-radius:2px 2px 0 0;height:2px;position:absolute;bottom:-1px;left:0;right:0}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;animation:fadeIn var(--transition-fast);background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--bg-secondary);border:1px solid var(--border-default);border-radius:var(--radius-xl);width:90%;max-width:560px;max-height:85vh;box-shadow:var(--shadow-lg);animation:slideUp var(--transition-base);overflow-y:auto}.modal-header{padding:var(--space-lg);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.modal-title{font-family:var(--font-display);font-size:1.15rem;font-weight:600}.modal-close{border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.modal-close:hover{background:var(--bg-card);color:var(--text-primary)}.modal-body{padding:var(--space-lg)}.modal-footer{justify-content:flex-end;gap:var(--space-sm);padding:var(--space-lg);border-top:1px solid var(--border-subtle);display:flex}.page-header{margin-bottom:var(--space-xl);justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.page-header-left h1{margin-bottom:4px}.page-header-left p{color:var(--text-muted);font-size:.9rem}.page-header-actions{gap:var(--space-sm);display:flex}.section-header{margin-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.section-title{color:var(--text-primary);font-size:1rem;font-weight:600}.grid-2{gap:var(--space-lg);grid-template-columns:1fr 1fr;display:grid}.grid-3{gap:var(--space-lg);grid-template-columns:repeat(3,1fr);display:grid}.grid-main-side{gap:var(--space-lg);grid-template-columns:1fr 380px;display:grid}.status-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.status-dot.online{background:var(--emerald-400);box-shadow:0 0 6px var(--emerald-400)}.status-dot.offline{background:var(--slate-500)}.status-dot.busy{background:var(--amber-400);box-shadow:0 0 6px var(--amber-400)}.avatar{border-radius:var(--radius-full);color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:.9rem;font-weight:700;display:flex}.avatar-sm{width:32px;height:32px;font-size:.75rem}.avatar-lg{width:56px;height:56px;font-size:1.25rem}.avatar-xl{width:72px;height:72px;font-size:1.5rem}.avatar-aqua{background:var(--gradient-aqua)}.avatar-gold{background:var(--gradient-gold)}.avatar-emerald{background:linear-gradient(135deg, var(--emerald-400), var(--emerald-600))}.avatar-rose{background:linear-gradient(135deg, var(--rose-400), var(--rose-500))}.progress-bar{background:var(--bg-elevated);border-radius:var(--radius-full);height:6px;overflow:hidden}.progress-fill{border-radius:var(--radius-full);height:100%;transition:width var(--transition-slow)}.progress-fill.fill-aqua{background:var(--gradient-aqua)}.progress-fill.fill-gold{background:var(--gradient-gold)}.progress-fill.fill-emerald{background:linear-gradient(135deg, var(--emerald-400), var(--emerald-600))}.empty-state{padding:var(--space-3xl);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state svg{width:64px;height:64px;color:var(--text-muted);margin-bottom:var(--space-lg);opacity:.5}.empty-state h3{color:var(--text-secondary);margin-bottom:var(--space-sm)}.empty-state p{color:var(--text-muted);max-width:400px;font-size:.9rem}.calendar-grid{background:var(--border-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);grid-template-columns:repeat(7,1fr);gap:1px;display:grid;overflow:hidden}.calendar-header-cell{background:var(--bg-elevated);text-align:center;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);padding:10px;font-size:.72rem;font-weight:600}.calendar-cell{background:var(--bg-card);min-height:100px;transition:background var(--transition-fast);padding:8px}.calendar-cell:hover{background:var(--bg-card-hover)}.calendar-cell.today{background:#039be50f}.calendar-cell.other-month{opacity:.3}.calendar-day-number{color:var(--text-secondary);margin-bottom:4px;font-size:.8rem;font-weight:600}.calendar-cell.today .calendar-day-number{color:var(--aqua-400)}.calendar-event{cursor:pointer;transition:opacity var(--transition-fast);white-space:nowrap;text-overflow:ellipsis;border-radius:4px;margin-bottom:2px;padding:3px 6px;font-size:.65rem;font-weight:500;overflow:hidden}.calendar-event:hover{opacity:.8}.calendar-event.event-swim{color:var(--aqua-300);border-left:2px solid var(--aqua-500);background:#039be533}.calendar-event.event-therapy{color:var(--emerald-400);border-left:2px solid var(--emerald-500);background:#4caf5033}.calendar-event.event-aerobics{color:var(--gold-300);border-left:2px solid var(--gold-500);background:#f5a62333}.calendar-event.event-lifeguard{color:var(--rose-400);border-left:2px solid var(--rose-500);background:#ef535033}.skill-levels{align-items:center;gap:3px;display:flex}.skill-dot{border-radius:var(--radius-full);background:var(--bg-elevated);width:24px;height:6px;transition:background var(--transition-fast)}.skill-dot.filled{background:var(--aqua-500)}.timeline{flex-direction:column;gap:0;display:flex}.timeline-item{gap:var(--space-md);padding:var(--space-md) 0;display:flex;position:relative}.timeline-item:not(:last-child):before{content:"";background:var(--border-default);width:1px;position:absolute;top:42px;bottom:-2px;left:15px}.timeline-dot{border-radius:var(--radius-full);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.timeline-dot svg{width:16px;height:16px}.timeline-content{flex:1;min-width:0}.timeline-title{color:var(--text-primary);font-size:.85rem;font-weight:500}.timeline-time{color:var(--text-muted);margin-top:2px;font-size:.72rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes wave{0%{transform:translateY(0)}50%{transform:translateY(-4px)}to{transform:translateY(0)}}.animate-fade-in{animation:fadeIn var(--transition-base)}.animate-slide-up{animation:slideUp var(--transition-base)}.animate-slide-in-left{animation:slideInLeft var(--transition-base)}.stagger-children>:first-child{animation-delay:0s}.stagger-children>:nth-child(2){animation-delay:50ms}.stagger-children>:nth-child(3){animation-delay:.1s}.stagger-children>:nth-child(4){animation-delay:.15s}.stagger-children>:nth-child(5){animation-delay:.2s}.stagger-children>:nth-child(6){animation-delay:.25s}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.gap-xl{gap:var(--space-xl)}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.text-sm{font-size:.8rem}.text-xs{font-size:.72rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.w-full{width:100%}.truncate{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.capitalize{text-transform:capitalize}@media (max-width:1200px){.grid-main-side{grid-template-columns:1fr}}@media (max-width:1024px){.grid-2{grid-template-columns:1fr}.grid-3{grid-template-columns:1fr 1fr}.kpi-grid{grid-template-columns:repeat(2,1fr)!important}.header-bar{padding:0 var(--space-md)}.header-right{gap:var(--space-sm)}.header-search{min-width:160px!important}}@media (max-width:768px){body,.main-content{overflow-x:hidden!important}.sidebar{z-index:200;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar.sidebar-collapsed{width:0;transform:translate(-100%)}.sidebar-handle{display:none}.main-content{margin-left:0!important}.header-bar{height:auto;min-height:var(--header-height);padding:var(--space-sm) var(--space-md);gap:var(--space-sm);flex-wrap:wrap;left:0!important}.header-left{flex:1;order:1;min-width:0}.header-right{gap:var(--space-xs);flex-wrap:wrap;order:2}.header-search{display:none}.page-wrapper{padding:var(--space-sm);padding-top:calc(var(--header-height) + var(--space-sm));overflow-x:hidden}.kpi-grid{grid-template-columns:1fr 1fr!important}.grid-3{grid-template-columns:1fr}.page-header{flex-direction:column;align-items:flex-start}.flex{flex-wrap:wrap!important}.header-search,[class*=header-search]{width:100%!important;min-width:0!important}.btn-sm{padding:5px 10px;font-size:.75rem}.table-wrapper{max-height:calc(100vh - var(--header-height) - 120px)}.form-row{grid-template-columns:1fr!important}.tabs{flex-wrap:wrap;gap:0}.card{padding:var(--space-md)}[style*=repeat\(4],[style*=gridTemplateColumns]{grid-template-columns:1fr 1fr!important}}@media (max-width:480px){.kpi-grid,.grid-2{grid-template-columns:1fr!important}.kpi-value{font-size:1.4rem}.page-wrapper{padding:var(--space-xs);padding-top:calc(var(--header-height) + var(--space-xs))}[style*=repeat\(4]{grid-template-columns:1fr 1fr!important}[style*=repeat\(7]{grid-template-columns:60px repeat(7,120px)!important}}.recharts-cartesian-grid-horizontal line,.recharts-cartesian-grid-vertical line{stroke:var(--border-subtle)}.recharts-text{fill:var(--text-muted);font-size:.72rem}.recharts-tooltip-wrapper{outline:none}.custom-tooltip{background:var(--bg-secondary)!important;border:1px solid var(--border-default)!important;border-radius:var(--radius-md)!important;box-shadow:var(--shadow-lg)!important;padding:10px 14px!important}.custom-tooltip .label{color:var(--text-muted);margin-bottom:4px;font-size:.75rem}.custom-tooltip .value{color:var(--text-primary);font-size:.9rem;font-weight:600}.aquaflow-logo-wrapper{border-radius:var(--radius-md);-webkit-tap-highlight-color:transparent;outline:none;flex-shrink:0;justify-content:center;align-items:center;transition:transform .4s cubic-bezier(.34,1.56,.64,1),box-shadow .4s;display:flex;position:relative;overflow:visible}.aquaflow-logo-wrapper:focus-visible{outline:2px solid var(--aqua-400);outline-offset:3px}.aquaflow-logo-wrapper:hover,.aquaflow-logo-wrapper.logo-hovered{transform:scale(1.08)rotate(-2deg);box-shadow:0 0 24px #039be559,0 0 48px #039be526}.aquaflow-logo-wrapper:active,.aquaflow-logo-wrapper.logo-pressed{transition-duration:.12s;transform:scale(.92)rotate(0)}.aquaflow-logo-svg{border-radius:var(--radius-md);display:block;overflow:hidden}.logo-ripple{pointer-events:none;z-index:10;background:#29b6f680;border-radius:50%;width:10px;height:10px;animation:.7s cubic-bezier(0,.55,.45,1) forwards logoRippleBurst;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(0)}@keyframes logoRippleBurst{0%{opacity:1;transform:translate(-50%,-50%)scale(0)}to{opacity:0;transform:translate(-50%,-50%)scale(8)}}.btn{transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s,background .2s,border-color .2s,color .2s;position:relative;overflow:hidden;transform:translateY(0)scale(1)}.btn:after{content:"";opacity:0;background:#fff3;border-radius:50%;width:0;height:0;transition:width,height,opacity .3s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.btn:active:after{opacity:0;width:200px;height:200px;transition:width .5s ease-out,height .5s ease-out,opacity .5s ease-out}.btn:hover{transform:translateY(-2px)scale(1.02)}.btn:active{transition-duration:80ms;transform:translateY(1px)scale(.97)}.btn-primary{background:var(--gradient-aqua);background-size:200% 100%;animation:4s infinite btnGradientShift}@keyframes btnGradientShift{0%,to{background-position:0%}50%{background-position:100%}}.btn-primary:hover{box-shadow:0 4px 20px #039be573,0 0 40px #039be51f}.btn-primary:active{box-shadow:0 1px 6px #039be54d}.btn-gold:hover{box-shadow:0 4px 20px #f5a62373,0 0 40px #f5a6231f}.btn-ghost{transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s,background .25s,border-color .25s,color .25s}.btn-ghost:hover{border-color:var(--aqua-500);transform:translateY(-2px)scale(1.02);box-shadow:inset 0 0 0 1px #039be526,0 2px 12px #039be514}.btn-danger:hover{background:#ef535040;transform:translateY(-2px)scale(1.02);box-shadow:0 0 16px #ef535026}.btn-danger:active{background:#ef535059}.btn-icon:hover{transform:rotate(8deg)scale(1.08)}.btn-icon:active{transition-duration:80ms;transform:rotate(-4deg)scale(.92)}.sidebar-link svg{transform-origin:50%;transition:transform .3s cubic-bezier(.34,1.56,.64,1),color .2s,opacity .2s,filter .3s}.sidebar-link:hover svg{opacity:1;filter:drop-shadow(0 0 4px);transform:scale(1.18)translate(2px)}.sidebar-link:active svg{transition-duration:80ms;transform:scale(.85)}.sidebar-link.active svg{animation:2s ease-in-out infinite iconPulseGlow}@keyframes iconPulseGlow{0%,to{filter:drop-shadow(0 0 2px);transform:scale(1)}50%{filter:drop-shadow(0 0 8px);transform:scale(1.08)}}.sidebar-link.active:before{animation:.4s cubic-bezier(.34,1.56,.64,1) slideIndicator}@keyframes slideIndicator{0%{opacity:0;height:0%}to{opacity:1;height:60%}}.header-icon-btn{transition:all .25s cubic-bezier(.34,1.56,.64,1)}.header-icon-btn svg{transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.header-icon-btn:hover svg{transform:scale(1.15)rotate(-6deg)}.header-icon-btn:active svg{transition-duration:80ms;transform:scale(.85)rotate(6deg)}.header-icon-btn .notification-dot{animation:2s ease-in-out infinite notificationPulse}@keyframes notificationPulse{0%,to{transform:scale(1);box-shadow:0 0 #ef535080}50%{transform:scale(1.3);box-shadow:0 0 0 4px #ef535000}}.kpi-icon{transition:transform .4s cubic-bezier(.34,1.56,.64,1),box-shadow .3s}.kpi-card:hover .kpi-icon{transform:scale(1.12)rotate(-6deg);box-shadow:0 0 16px #039be533}.kpi-card:active .kpi-icon{transition-duration:80ms;transform:scale(.9)}.kpi-icon svg{transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.kpi-card:hover .kpi-icon svg{animation:.6s iconBounce}@keyframes iconBounce{0%{transform:translateY(0)}30%{transform:translateY(-4px)}50%{transform:translateY(0)}70%{transform:translateY(-2px)}to{transform:translateY(0)}}.empty-state svg{transition:transform .4s cubic-bezier(.34,1.56,.64,1),opacity .3s;animation:3s ease-in-out infinite gentleFloat}@keyframes gentleFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.empty-state:hover svg{opacity:.8;transform:scale(1.1)rotate(-5deg)}.timeline-dot{transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s}.timeline-item:hover .timeline-dot{transform:scale(1.15);box-shadow:0 0 12px #039be533}.timeline-dot svg{transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.timeline-item:hover .timeline-dot svg{transform:rotate(-10deg)scale(1.1)}.card{will-change:transform;transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .35s,border-color .35s}.card:hover{border-color:#039be526;transform:translateY(-3px)scale(1.005);box-shadow:0 8px 32px #0006,0 0 0 1px #039be514}.card:before{transition:background .4s,opacity .4s}.card:hover:before{background:linear-gradient(90deg,#0000 0%,#039be54d 30%,#29b6f680 50%,#039be54d 70%,#0000 100%);height:2px;animation:2s ease-in-out infinite shimmerSlide}@keyframes shimmerSlide{0%{background-position:-200%}to{background-position:200%}}.kpi-card{will-change:transform;transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .35s,border-color .35s}.kpi-card:hover{transform:translateY(-4px)scale(1.01);box-shadow:0 12px 40px #00000073}.kpi-card:before{transition:height .3s,filter .3s}.kpi-card:hover:before{filter:brightness(1.3);height:3px}.kpi-card:hover .kpi-value{animation:.4s valueFlash}@keyframes valueFlash{0%{opacity:.7;transform:scale(.97)}50%{opacity:1;transform:scale(1.03)}to{opacity:1;transform:scale(1)}}.badge{transition:transform .2s,box-shadow .2s,background .2s}.badge:hover{transform:scale(1.08);box-shadow:0 2px 8px #0003}.badge-dot:before{animation:2s ease-in-out infinite badgeDotPulse}@keyframes badgeDotPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.4)}}.sidebar-link-badge{transition:transform .25s cubic-bezier(.34,1.56,.64,1),background .2s;animation:.6s cubic-bezier(.34,1.56,.64,1) badgeBounceIn}@keyframes badgeBounceIn{0%{opacity:0;transform:scale(0)}60%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.sidebar-link:hover .sidebar-link-badge{background:var(--aqua-400);transform:scale(1.12)}.tab{transition:color .2s,transform .2s;position:relative}.tab:hover{transform:translateY(-1px)}.tab:active{transform:translateY(1px)}.tab.active:after{animation:.3s cubic-bezier(.34,1.56,.64,1) tabUnderline}@keyframes tabUnderline{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.data-table tbody tr{transition:background .2s,transform .2s}.data-table tbody tr:hover{background:var(--bg-card-hover);transform:scale(1.002)}.data-table tbody tr:active{background:#039be50f}.progress-fill{position:relative;overflow:hidden}.progress-fill:after{content:"";background:linear-gradient(90deg,#0000,#ffffff40,#0000);width:100%;height:100%;animation:2.5s ease-in-out infinite progressShimmer;position:absolute;top:0;left:-100%}@keyframes progressShimmer{0%{left:-100%}to{left:200%}}.avatar,.sidebar-avatar{transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s}.avatar:hover,.sidebar-user:hover .sidebar-avatar{transform:scale(1.1);box-shadow:0 0 0 3px #039be54d,0 0 16px #039be526}.status-dot.online{animation:2s ease-in-out infinite statusGlow}@keyframes statusGlow{0%,to{box-shadow:0 0 4px var(--emerald-400)}50%{box-shadow:0 0 10px var(--emerald-400), 0 0 20px #66bb6a4d}}.status-dot.busy{animation:1.5s ease-in-out infinite statusGlowAmber}@keyframes statusGlowAmber{0%,to{box-shadow:0 0 4px var(--amber-400)}50%{box-shadow:0 0 10px var(--amber-400), 0 0 20px #ffa7264d}}.skill-dot{transition:transform .2s,background .2s}.skill-dot.filled{animation:.5s forwards skillDotFillIn}@keyframes skillDotFillIn{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.skill-dot:hover{transform:scaleY(1.5)}.calendar-event{transition:transform .2s cubic-bezier(.34,1.56,.64,1),opacity .2s,box-shadow .2s}.calendar-event:hover{transform:translate(2px)scale(1.02);box-shadow:0 2px 8px #0000004d;opacity:1!important}.calendar-cell{transition:background .2s,transform .2s}.calendar-cell:hover{z-index:2;transform:scale(1.02)}.modal-overlay{animation:.25s modalOverlayIn}@keyframes modalOverlayIn{0%{opacity:0;-webkit-backdrop-filter:blur();backdrop-filter:blur()}to{opacity:1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}}.modal{animation:.35s cubic-bezier(.34,1.56,.64,1) modalSlideIn}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(24px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-close{transition:transform .2s cubic-bezier(.34,1.56,.64,1),background .2s,color .2s}.modal-close:hover{transform:rotate(90deg)scale(1.1)}.header-search{transition:all .3s cubic-bezier(.34,1.56,.64,1)}.header-search:focus-within{border-color:var(--aqua-400);box-shadow:0 0 0 3px #039be51a, var(--shadow-glow-aqua);transform:scale(1.02)}.header-search svg{transition:transform .3s,color .3s}.header-search:focus-within svg{color:var(--aqua-400);transform:scale(1.1)rotate(-10deg)}@keyframes scrollRevealUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes scrollRevealLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes scrollRevealScale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.form-input:focus,.form-select:focus,.form-textarea:focus{transition:transform .2s,border-color .2s,box-shadow .2s;transform:scale(1.005)}.sidebar-link{transition:all .2s cubic-bezier(.34,1.56,.64,1)}.sidebar-link:hover{background:#ffffff0f;transform:translate(4px)}.sidebar-link:active{transition-duration:80ms;transform:translate(2px)scale(.98)}.sidebar-section-label{transition:color .2s,letter-spacing .3s}.sidebar-section:hover .sidebar-section-label{color:var(--text-secondary);letter-spacing:.14em}.sidebar-brand{transition:background .3s}.sidebar-brand:hover{background:#039be50a}.kpi-trend svg{transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.kpi-card:hover .kpi-trend.up svg{animation:.5s trendArrowUp}.kpi-card:hover .kpi-trend.down svg{animation:.5s trendArrowDown}@keyframes trendArrowUp{0%{transform:translateY(0)}50%{transform:translateY(-4px)}to{transform:translateY(0)}}@keyframes trendArrowDown{0%{transform:translateY(0)}50%{transform:translateY(4px)}to{transform:translateY(0)}}.section-title{transition:color .2s;position:relative}.card:hover .section-title{color:var(--aqua-300)}.sidebar-user{transition:background .2s,transform .2s}.sidebar-user:hover{transform:translate(2px)}.sidebar-user:active{transform:scale(.98)}.sidebar-user:hover svg:last-child{transition:transform .3s;transform:rotate(180deg)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
