:root{--color-primary-50: #FFF7ED;--color-primary-100: #FFEDD5;--color-primary-200: #FED7AA;--color-primary-300: #FDBA74;--color-primary-400: #FB923C;--color-primary-500: #F97316;--color-primary-600: #EA580C;--color-primary-700: #C2410C;--color-primary-800: #9A3412;--color-primary-900: #7C2D12;--color-neutral-50: #FAFAF9;--color-neutral-100: #F5F5F4;--color-neutral-200: #E7E5E4;--color-neutral-300: #D6D3D1;--color-neutral-400: #A8A29E;--color-neutral-500: #78716C;--color-neutral-600: #57534E;--color-neutral-700: #44403C;--color-neutral-800: #292524;--color-neutral-900: #1C1917;--color-neutral-950: #0F0D0C;--color-success: #16A34A;--color-success-light: #F0FDF4;--color-success-dark: #166534;--color-danger: #DC2626;--color-danger-light: #FEF2F2;--color-danger-dark: #991B1B;--color-info: #2563EB;--color-info-light: #EFF6FF;--color-info-dark: #1E40AF;--color-warning: #D97706;--color-warning-light: #FFFBEB;--color-warning-dark: #92400E;--color-chart-orange: #F97316;--color-chart-blue: #3B82F6;--color-chart-green: #22C55E;--color-chart-purple: #8B5CF6;--color-chart-purple-light: #F3F0FF;--color-chart-purple-dark: #5B21B6;--color-chart-pink: #EC4899;--color-chart-teal: #14B8A6;--color-chart-teal-light: #F0FDFA;--color-chart-teal-dark: #115E59;--color-chart-amber: #F59E0B;--bg-page: #FFFCF9;--bg-surface: #FFFFFF;--bg-surface-alt: var(--color-neutral-50);--bg-sidebar: var(--color-neutral-50);--bg-input: #FFFFFF;--bg-accent: var(--color-primary-500);--bg-accent-subtle: var(--color-primary-50);--bg-dark: var(--color-neutral-900);--text-primary: var(--color-neutral-900);--text-secondary: var(--color-neutral-500);--text-tertiary: var(--color-neutral-400);--text-on-dark: #FFFFFF;--text-on-accent: #FFFFFF;--text-accent: var(--color-primary-700);--text-link: var(--color-primary-700);--border-default: var(--color-neutral-200);--border-subtle: var(--color-neutral-100);--border-strong: var(--color-neutral-300);--border-focus: var(--color-primary-400);--shadow-sm: 0 1px 2px rgba(28,25,23,.05);--shadow-md: 0 4px 12px rgba(28,25,23,.08);--shadow-lg: 0 8px 24px rgba(28,25,23,.1);--shadow-card: 0 1px 3px rgba(28,25,23,.04), 0 1px 2px rgba(28,25,23,.06);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-full: 9999px;--font-family: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--font-size-xs: 11px;--font-size-sm: 12px;--font-size-base: 13px;--font-size-md: 14px;--font-size-lg: 15px;--font-size-xl: 18px;--font-size-2xl: 20px;--font-size-3xl: 24px;--font-size-stat: 32px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--shadow-xs: 0 1px 2px rgba(28, 25, 23, .04);--shadow-dropdown: 0 4px 12px rgba(28, 25, 23, .08);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-smooth: .25s ease-in-out;--transition-slow: .3s ease;--transition-fill: .6s ease-out;--sidebar-width: 240px;--sidebar-width-collapsed: 64px;--page-max-width: 1600px;--page-padding-x: 1.5rem;--page-padding-y: 1.5rem;--page-padding-x-mobile: 1rem;--page-padding-y-mobile: 1rem}@media(max-width:1023px){:root{--page-padding-x: var(--page-padding-x-mobile);--page-padding-y: var(--page-padding-y-mobile)}}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-family);background-color:var(--bg-page);color:var(--text-primary);font-size:var(--font-size-base);font-weight:400;line-height:1.5}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-neutral-200);border-radius:20px}::-webkit-scrollbar-thumb:hover{background:var(--color-neutral-300)}.custom-scrollbar::-webkit-scrollbar{width:4px}.custom-scrollbar::-webkit-scrollbar-thumb{background:var(--color-neutral-200)}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse{0%,to{transform:scale(1);opacity:.4}50%{transform:scale(1.3);opacity:0}}.skeleton{background:linear-gradient(90deg,var(--color-neutral-100) 25%,var(--color-neutral-200) 50%,var(--color-neutral-100) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:8px}.skeleton-text{height:12px;margin-bottom:8px;border-radius:4px}.skeleton-heading{height:20px;width:60%;margin-bottom:12px;border-radius:6px}.skeleton-card{height:120px;border-radius:12px}.skeleton-avatar{width:32px;height:32px;border-radius:50%}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes countUp{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes slideStripes{0%{background-position:1rem 0}to{background-position:0 0}}@keyframes underlineSlide{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes bellRing{0%{transform:rotate(0) scale(1)}8%{transform:rotate(-14deg) scale(1.18)}16%{transform:rotate(14deg) scale(1.18)}24%{transform:rotate(-12deg) scale(1.14)}32%{transform:rotate(12deg) scale(1.14)}40%{transform:rotate(-8deg) scale(1.1)}48%{transform:rotate(8deg) scale(1.1)}56%{transform:rotate(-4deg) scale(1.06)}64%{transform:rotate(4deg) scale(1.04)}72%{transform:rotate(-2deg) scale(1.02)}to{transform:rotate(0) scale(1)}}.bell-animate{animation:bellRing 1.3s cubic-bezier(.36,.07,.19,.97);transform-origin:50% 15%;will-change:transform}@keyframes bellRingExpand{0%{transform:scale(.6);opacity:.75;border-width:2px}60%{opacity:.35;border-width:1.5px}to{transform:scale(2.6);opacity:0;border-width:1px}}.bell-ring-expand{animation:bellRingExpand 1.2s ease-out forwards;will-change:transform,opacity}@keyframes bellDotPing{0%{transform:scale(1);opacity:1}70%{transform:scale(2.6);opacity:0}to{transform:scale(2.6);opacity:0}}.bell-dot-ping{animation:bellDotPing 1.2s cubic-bezier(0,0,.2,1)}@keyframes notifToastIn{0%{transform:translate(120%) scale(.96);opacity:0;filter:blur(6px)}60%{transform:translate(-6px) scale(1.01);opacity:1;filter:blur(0)}to{transform:translate(0) scale(1);opacity:1;filter:blur(0)}}@keyframes notifToastOut{0%{transform:translate(0) scale(1);opacity:1;filter:blur(0)}to{transform:translate(120%) scale(.96);opacity:0;filter:blur(6px)}}.notif-toast-in{animation:notifToastIn .42s cubic-bezier(.22,1,.36,1) forwards}.notif-toast-out{animation:notifToastOut .42s cubic-bezier(.55,0,.85,.35) forwards}@keyframes notifToastProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.notif-toast-progress{animation:notifToastProgress 5s linear forwards;transform-origin:left center}.animate-fade-in{animation:fadeIn var(--transition-base) ease forwards}.animate-dropdown{animation:dropdownIn .15s ease forwards}@keyframes dropdownIn{0%{opacity:0;transform:scale(.97) translateY(-4px)}to{opacity:1;transform:scale(1) translateY(0)}}.animate-fade-in-up{animation:fadeInUp var(--transition-slow) ease forwards}.animate-slide-in-left{animation:slideInLeft var(--transition-slow) ease forwards}.animate-slide-in-right{animation:slideInRight var(--transition-slow) ease forwards}.animate-slide-in-up{animation:slideInUp var(--transition-slow) ease forwards}.animate-scale-in{animation:scaleIn var(--transition-base) ease forwards}.stagger-item{opacity:0;animation:fadeInUp .3s ease forwards}.stagger-item:nth-child(1){animation-delay:0ms}.stagger-item:nth-child(2){animation-delay:30ms}.stagger-item:nth-child(3){animation-delay:60ms}.stagger-item:nth-child(4){animation-delay:90ms}.stagger-item:nth-child(5){animation-delay:.12s}.stagger-item:nth-child(6){animation-delay:.15s}.stagger-item:nth-child(7){animation-delay:.18s}.stagger-item:nth-child(8){animation-delay:.21s}.stagger-item:nth-child(9){animation-delay:.24s}.stagger-item:nth-child(10){animation-delay:.27s}.page-enter{animation:fadeIn .2s ease forwards}.tabular-nums{font-variant-numeric:tabular-nums}.hover-lift{transition:transform var(--transition-base),box-shadow var(--transition-base)}.hover-lift:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-press:active{transform:scale(.97)}@media(max-width:767px){.mobile-bottom-nav{position:fixed;bottom:0;left:0;right:0;height:64px;background:#fff;border-top:1px solid var(--border-default);border-top-left-radius:20px;border-top-right-radius:20px;box-shadow:0 -2px 10px #1c19170d;z-index:50;display:flex;align-items:center;justify-content:space-around;padding:0 8px;padding-bottom:env(safe-area-inset-bottom)}.mobile-bottom-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:6px 12px;color:var(--color-neutral-400);font-size:10px;font-weight:500;transition:color var(--transition-fast);min-width:44px;min-height:44px}.mobile-bottom-nav-item.active{color:var(--color-primary-600)}.mobile-bottom-nav-item.active span{color:var(--color-primary-700)}.mobile-content-padding{padding-bottom:80px}}@media(min-width:768px)and (max-width:1023px){.sidebar-tablet-collapsed{width:60px!important}.sidebar-tablet-collapsed .sidebar-label,.sidebar-tablet-collapsed .sidebar-section-label,.sidebar-tablet-collapsed .sidebar-brand-text,.sidebar-tablet-collapsed .sidebar-profile-text{display:none}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slideDown{0%{transform:translateY(0)}to{transform:translateY(100%)}}.drawer-enter{animation:slideUp .3s ease forwards}.drawer-exit{animation:slideDown .3s ease forwards}@keyframes slideInFromRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.animate-slide-in-right{animation:slideInFromRight .3s cubic-bezier(.16,1,.3,1) forwards}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.login-pattern{background-image:radial-gradient(circle at 20% 30%,rgba(255,255,255,.15) 1px,transparent 1px),radial-gradient(circle at 80% 70%,rgba(255,255,255,.1) 1px,transparent 1px),radial-gradient(circle at 50% 50%,rgba(255,255,255,.08) .5px,transparent .5px);background-size:60px 60px,80px 80px,40px 40px;opacity:.5}.progress-fill{transition:width var(--transition-fill)}.progress-striped{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:1rem 1rem;animation:slideStripes 1s linear infinite}@media(min-width:640px){.kpi-number-responsive{font-size:28px!important}.kpi-icon-badge{width:40px!important;height:40px!important;margin-bottom:16px!important}}@media(max-width:480px){.project-stats-grid{grid-template-columns:repeat(3,1fr)!important;gap:6px!important}.project-stats-grid>div{padding:6px!important}}@media(max-width:640px){.ops-pulse-segments{padding-left:0!important}}@media(max-width:480px){.quick-actions-grid>button{flex:1 1 calc(33.33% - 12px)!important;min-width:0!important;height:90px!important;padding:10px!important}}.skeleton-heading{height:20px;width:140px;border-radius:var(--radius-md)}.skeleton-project-card{height:320px;width:100%;border-radius:var(--radius-lg)}.progress-bar-fill{transition:width .6s cubic-bezier(.4,0,.2,1);will-change:width;box-shadow:0 0 0 2px #f9731614;border-radius:var(--radius-full)}.progress-bar-fill.animate-progress{animation:slideIn .6s cubic-bezier(.4,0,.2,1)}.project-card{box-shadow:var(--shadow-card);transition:all .2s cubic-bezier(.16,1,.3,1);will-change:transform,box-shadow}.project-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.project-card:active{transform:translateY(-2px)}.project-card div{animation:fadeInUp .4s ease-out backwards}@keyframes slideIn{0%{width:0;opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1024px){.project-card{grid-column:span 1}}@media(max-width:640px){.project-card{grid-column:1 / -1}}@media(max-width:360px){.project-stats-grid{grid-template-columns:1fr 1fr!important}}.project-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:inherit;transition:box-shadow .2s ease}.project-card:focus-within{outline:2px solid var(--border-focus);outline-offset:2px}@media(prefers-contrast:more){.project-card{border-width:2px}}@media(prefers-reduced-motion:reduce){.progress-bar-fill,.progress-bar-fill.animate-progress,.project-card{animation:none;transition:none}}
