:root{--color-primary: #1e3a5f;--color-primary-dark: #0f2744;--color-primary-light: #2d5a8a;--color-primary-lighter: #e8f0f8;--color-secondary: #4338ca;--color-secondary-dark: #3730a3;--color-secondary-light: #6366f1;--color-accent: #f97316;--color-accent-dark: #ea580c;--color-accent-light: #fb923c;--color-accent-lighter: #fff7ed;--color-teal: #0d9488;--color-teal-dark: #0f766e;--color-teal-light: #14b8a6;--color-teal-lighter: #f0fdfa;--color-background: #f8fafc;--color-background-subtle: #f1f5f9;--color-surface: #ffffff;--color-surface-elevated: #ffffff;--color-border: #e2e8f0;--color-border-light: #f1f5f9;--color-divider: #cbd5e1;--color-text-primary: #0f172a;--color-text-secondary: #475569;--color-text-tertiary: #94a3b8;--color-text-on-primary: #ffffff;--color-text-on-accent: #ffffff;--color-success: #059669;--color-success-light: #d1fae5;--color-success-dark: #047857;--color-warning: #d97706;--color-warning-light: #fef3c7;--color-warning-dark: #b45309;--color-error: #dc2626;--color-error-light: #fee2e2;--color-error-dark: #b91c1c;--color-info: #0284c7;--color-info-light: #e0f2fe;--color-info-dark: #0369a1;--font-display: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-body: "DM Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--letter-spacing-tight: -.025em;--letter-spacing-normal: 0;--letter-spacing-wide: .025em;--letter-spacing-wider: .05em;--line-height-tight: 1.2;--line-height-snug: 1.375;--line-height-normal: 1.5;--line-height-relaxed: 1.625;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-2xl: 28px;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(15, 23, 42, .04);--shadow-sm: 0 1px 3px rgba(15, 23, 42, .06), 0 1px 2px rgba(15, 23, 42, .04);--shadow-md: 0 4px 6px -1px rgba(15, 23, 42, .08), 0 2px 4px -1px rgba(15, 23, 42, .04);--shadow-lg: 0 10px 15px -3px rgba(15, 23, 42, .08), 0 4px 6px -2px rgba(15, 23, 42, .04);--shadow-xl: 0 20px 25px -5px rgba(15, 23, 42, .1), 0 10px 10px -5px rgba(15, 23, 42, .04);--shadow-2xl: 0 25px 50px -12px rgba(15, 23, 42, .2);--shadow-primary: 0 4px 14px rgba(30, 58, 95, .25);--shadow-accent: 0 4px 14px rgba(249, 115, 22, .3);--shadow-teal: 0 4px 14px rgba(13, 148, 136, .25);--shadow-success: 0 4px 14px rgba(5, 150, 105, .25);--shadow-error: 0 4px 14px rgba(220, 38, 38, .25);--glow-primary: 0 0 20px rgba(30, 58, 95, .15);--glow-accent: 0 0 20px rgba(249, 115, 22, .2);--glow-teal: 0 0 20px rgba(13, 148, 136, .15);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--transition-slower: .5s cubic-bezier(.4, 0, .2, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-in-out-circ: cubic-bezier(.85, 0, .15, 1);--sidebar-width: 260px;--sidebar-collapsed-width: 72px;--topbar-height: 70px;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--gradient-primary: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);--gradient-accent: linear-gradient(135deg, var(--color-accent) 0%, var(--color-accent-light) 100%);--gradient-teal: linear-gradient(135deg, var(--color-teal) 0%, var(--color-teal-light) 100%);--gradient-hero: linear-gradient(135deg, #1e3a5f 0%, #2d5a8a 50%, #0d9488 100%);--gradient-warm: linear-gradient(135deg, var(--color-accent-light) 0%, var(--color-warning) 100%);--gradient-mesh: radial-gradient(at 40% 20%, rgba(13, 148, 136, .08) 0px, transparent 50%), radial-gradient(at 80% 0%, rgba(249, 115, 22, .06) 0px, transparent 50%), radial-gradient(at 0% 50%, rgba(30, 58, 95, .06) 0px, transparent 50%);--gradient-card: linear-gradient(180deg, rgba(255, 255, 255, .8) 0%, rgba(255, 255, 255, 1) 100%);--gradient-shine: linear-gradient(110deg, transparent 25%, rgba(255, 255, 255, .3) 50%, transparent 75%)}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-body);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-background);background-image:var(--gradient-mesh);background-attachment:fixed;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight);color:var(--color-text-primary)}h1{font-size:var(--font-size-4xl);font-weight:var(--font-weight-extrabold)}h2{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent)}button{font-family:var(--font-body);cursor:pointer}input,textarea,select{font-family:var(--font-body)}*{scrollbar-width:thin;scrollbar-color:var(--color-divider) var(--color-background-subtle)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--color-background-subtle);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--color-border) 0%,var(--color-divider) 100%);border-radius:var(--radius-full);border:2px solid var(--color-background-subtle)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.05)}70%{transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes glowPulse{0%,to{box-shadow:0 0 5px #f973164d}50%{box-shadow:0 0 20px #f9731680}}@keyframes shine{0%{background-position:-100% 0}to{background-position:200% 0}}.animate-fade-in{animation:fadeIn var(--transition-base) ease-out forwards}.animate-fade-in-up{animation:fadeInUp var(--transition-slow) ease-out forwards}.animate-fade-in-down{animation:fadeInDown var(--transition-slow) ease-out forwards}.animate-scale-in{animation:scaleIn var(--transition-base) var(--ease-spring) forwards}.animate-slide-in-left{animation:slideInLeft var(--transition-slow) var(--ease-out-expo) forwards}.animate-slide-in-right{animation:slideInRight var(--transition-slow) var(--ease-out-expo) forwards}.animate-bounce-in{animation:bounceIn .6s var(--ease-spring) forwards}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-spin{animation:spin 1s linear infinite}.animate-float{animation:float 3s ease-in-out infinite}.stagger-1{animation-delay:50ms}.stagger-2{animation-delay:.1s}.stagger-3{animation-delay:.15s}.stagger-4{animation-delay:.2s}.stagger-5{animation-delay:.25s}.stagger-6{animation-delay:.3s}.stagger-7{animation-delay:.35s}.stagger-8{animation-delay:.4s}.skeleton{background:linear-gradient(90deg,var(--color-border-light) 25%,var(--color-background) 50%,var(--color-border-light) 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-md)}.skeleton-text{height:1em;margin-bottom:.5em;border-radius:var(--radius-sm)}.skeleton-title{height:1.5em;width:60%;margin-bottom:.75em}.skeleton-avatar{width:48px;height:48px;border-radius:var(--radius-full)}.skeleton-card{height:120px;border-radius:var(--radius-lg)}.container{width:100%;max-width:1400px;margin:0 auto;padding:0 var(--spacing-lg)}.text-left{text-align:left}.text-primary{color:var(--color-primary)}.text-accent{color:var(--color-accent)}.text-teal{color:var(--color-teal)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-error{color:var(--color-error)}.text-muted{color:var(--color-text-secondary)}.bg-primary{background-color:var(--color-primary)}.bg-accent{background-color:var(--color-accent)}.bg-teal{background-color:var(--color-teal)}.bg-surface{background-color:var(--color-surface)}.mt-xs{margin-top:var(--spacing-xs)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.mb-xs{margin-bottom:var(--spacing-xs)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:var(--spacing-xl)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1}.gap-xs{gap:var(--spacing-xs)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.gap-xl{gap:var(--spacing-xl)}.grid{display:grid}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.hidden{display:none}.visible{visibility:visible}.invisible{visibility:hidden}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.transition-all{transition:all var(--transition-base)}.transition-fast{transition:all var(--transition-fast)}.transition-slow{transition:all var(--transition-slow)}.hover-lift{transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.hover-lift:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.hover-scale{transition:transform var(--transition-fast)}.hover-scale:hover{transform:scale(1.02)}.hover-glow{transition:box-shadow var(--transition-base)}.hover-glow:hover{box-shadow:var(--glow-accent)}.focus-ring:focus{outline:none;box-shadow:0 0 0 3px #f973164d}.badge{display:inline-flex;align-items:center;padding:.25rem .75rem;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.badge-primary{background:var(--color-primary-lighter);color:var(--color-primary)}.badge-accent{background:var(--color-accent-lighter);color:var(--color-accent-dark)}.badge-teal{background:var(--color-teal-lighter);color:var(--color-teal-dark)}.badge-success{background:var(--color-success-light);color:var(--color-success-dark)}.badge-warning{background:var(--color-warning-light);color:var(--color-warning-dark)}.badge-error{background:var(--color-error-light);color:var(--color-error-dark)}.badge-info{background:var(--color-info-light);color:var(--color-info-dark)}.divider{height:1px;background:linear-gradient(90deg,transparent,var(--color-border),transparent);margin:var(--spacing-lg) 0}.card-base{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border-light);transition:all var(--transition-base)}.card-base:hover{box-shadow:var(--shadow-md);border-color:var(--color-border)}.glass{background:#ffffffb3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3)}@supports not (backdrop-filter: blur(10px)){.glass{background:#fffffff2}}.gradient-text{background:var(--gradient-hero);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.icon-container{display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);transition:all var(--transition-fast)}.icon-container-sm{width:36px;height:36px}.icon-container-md{width:44px;height:44px}.icon-container-lg{width:56px;height:56px}@media(max-width:768px){.hide-mobile{display:none!important}.grid-cols-2,.grid-cols-3{grid-template-columns:1fr}.grid-cols-4{grid-template-columns:repeat(2,1fr)}}@media(max-width:1024px){.hide-tablet{display:none!important}}@media(min-width:1025px){.hide-desktop{display:none!important}}.sidebar{position:fixed;left:0;top:0;height:100vh;width:var(--sidebar-width);background:var(--color-surface);border-right:1px solid var(--color-border-light);display:flex;flex-direction:column;transition:width var(--transition-base),box-shadow var(--transition-base);z-index:var(--z-fixed);box-shadow:var(--shadow-sm)}.sidebar:hover{box-shadow:var(--shadow-md)}.sidebar.collapsed{width:var(--sidebar-collapsed-width)}.sidebar-header{height:var(--topbar-height);display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--color-border-light);padding:0 var(--spacing-lg);background:linear-gradient(180deg,var(--color-background) 0%,transparent 100%)}.logo{display:flex;align-items:center;gap:var(--spacing-md);text-decoration:none}.logo-icon{width:42px;height:42px;display:flex;align-items:center;justify-content:center;background:var(--gradient-hero);border-radius:var(--radius-lg);color:#fff;font-size:var(--font-size-xl);font-weight:var(--font-weight-extrabold);font-family:var(--font-display);box-shadow:var(--shadow-primary);transition:all var(--transition-base);flex-shrink:0}.logo-icon:hover{transform:scale(1.05) rotate(-3deg)}.logo-text{font-family:var(--font-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);background:var(--gradient-hero);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;letter-spacing:var(--letter-spacing-tight)}.sidebar.collapsed .logo-text{display:none}.sidebar-nav{flex:1;padding:var(--spacing-md);overflow-y:auto;overflow-x:hidden}.nav-section{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider);padding:var(--spacing-lg) var(--spacing-md) var(--spacing-sm);margin-top:var(--spacing-sm)}.sidebar.collapsed .nav-section{display:none}.nav-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-md);margin-bottom:var(--spacing-xs);border-radius:var(--radius-lg);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);transition:all var(--transition-fast);cursor:pointer;text-decoration:none;white-space:nowrap;position:relative;overflow:hidden}.nav-item:before{content:"";position:absolute;inset:0;background:transparent;border-radius:var(--radius-lg);transition:background var(--transition-fast);z-index:-1}.nav-item:hover{color:var(--color-text-primary)}.nav-item:hover:before{background:var(--color-background-subtle)}.nav-item.active{color:#fff;font-weight:var(--font-weight-semibold)}.nav-item.active:before{background:var(--gradient-primary);box-shadow:var(--shadow-primary)}.nav-item.active .nav-icon{color:#fff}.nav-icon{font-size:var(--font-size-lg);min-width:24px;display:flex;align-items:center;justify-content:center;transition:transform var(--transition-fast),color var(--transition-fast)}.nav-item:hover .nav-icon{transform:scale(1.1);color:var(--color-accent)}.nav-item.active:hover .nav-icon{color:#fff}.nav-label{flex:1;transition:opacity var(--transition-fast)}.sidebar.collapsed .nav-label{opacity:0;width:0;overflow:hidden}.nav-badge{padding:2px 8px;border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);background:var(--color-accent);color:#fff;min-width:20px;text-align:center}.sidebar.collapsed .nav-badge{display:none}.sidebar-toggle{display:flex;align-items:center;justify-content:center;padding:var(--spacing-sm);margin:var(--spacing-md);border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-lg);color:var(--color-text-secondary);font-size:var(--font-size-lg);transition:all var(--transition-fast);cursor:pointer}.sidebar-toggle:hover{background:var(--color-accent-lighter);border-color:var(--color-accent);color:var(--color-accent);transform:scale(1.05)}.sidebar-toggle svg{transition:transform var(--transition-base)}.sidebar.collapsed .sidebar-toggle svg{transform:rotate(180deg)}.sidebar-footer{padding:var(--spacing-md);border-top:1px solid var(--color-border-light);background:var(--color-background)}.sidebar-user{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm);border-radius:var(--radius-lg);transition:background var(--transition-fast);cursor:pointer}.sidebar-user:hover{background:var(--color-background-subtle)}.sidebar-user-avatar{width:36px;height:36px;border-radius:var(--radius-full);background:var(--gradient-accent);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);flex-shrink:0}.sidebar-user-info{flex:1;min-width:0}.sidebar-user-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-role{font-size:var(--font-size-xs);color:var(--color-text-tertiary);text-transform:capitalize}.sidebar.collapsed .sidebar-user-info{display:none}.sidebar.collapsed .nav-item{justify-content:center;padding:var(--spacing-md);position:relative}.sidebar.collapsed .sidebar-toggle{margin:var(--spacing-md) auto}.sidebar.collapsed .nav-item:hover:after{content:attr(data-tooltip);position:absolute;left:calc(100% + var(--spacing-sm));top:50%;transform:translateY(-50%);background:var(--color-text-primary);color:#fff;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-md);font-size:var(--font-size-sm);white-space:nowrap;z-index:var(--z-tooltip);box-shadow:var(--shadow-md);animation:fadeIn var(--transition-fast) ease-out}@media(max-width:768px){.sidebar{transform:translate(-100%);box-shadow:none}.sidebar.mobile-open{transform:translate(0);box-shadow:var(--shadow-2xl)}.sidebar-overlay{position:fixed;inset:0;background:#00000080;z-index:calc(var(--z-fixed) - 1);opacity:0;visibility:hidden;transition:all var(--transition-base)}.sidebar-overlay.visible{opacity:1;visibility:visible}}.sidebar-nav::-webkit-scrollbar{width:4px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:var(--color-divider)}.topbar{position:fixed;top:0;left:var(--sidebar-width);right:0;height:var(--topbar-height);background-color:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;align-items:center;gap:var(--spacing-lg);padding:0 var(--spacing-xl);z-index:var(--z-sticky);transition:left var(--transition-base)}.sidebar.collapsed~.app-content .topbar{left:var(--sidebar-collapsed-width)}.mobile-menu-btn{display:none;background:none;border:none;font-size:var(--font-size-2xl);color:var(--color-text-secondary);cursor:pointer;padding:var(--spacing-sm);flex-shrink:0}.search-box{flex:1;max-width:200px;position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:var(--spacing-md);font-size:var(--font-size-lg);color:var(--color-text-tertiary);z-index:1}.search-input{width:100%;padding:var(--spacing-sm) var(--spacing-md) var(--spacing-sm) 2.5rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);background-color:var(--color-background);font-size:var(--font-size-sm);color:var(--color-text-primary);transition:all var(--transition-fast)}.search-input:focus{outline:none;border-color:var(--color-primary);background-color:var(--color-surface);box-shadow:0 0 0 3px #73c41d1a}.search-dropdown{position:absolute;top:calc(100% + var(--spacing-xs));left:0;right:0;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);max-height:400px;overflow-y:auto;animation:slideDown .2s ease-out}.search-dropdown ul{list-style:none;padding:var(--spacing-xs);margin:0}.search-dropdown li{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast)}.search-dropdown li:hover{background-color:var(--color-background)}.search-result-avatar{width:36px;height:36px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-primary-light),var(--color-primary));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);flex-shrink:0}.search-result-info{flex:1;min-width:0}.search-result-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-meta{font-size:var(--font-size-xs);color:var(--color-text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-loading,.search-no-results{padding:var(--spacing-lg);text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-md);margin-left:auto}.icon-btn{position:relative;background:none;border:none;font-size:var(--font-size-xl);color:var(--color-text-secondary);cursor:pointer;padding:var(--spacing-sm);border-radius:var(--radius-md);transition:all var(--transition-fast)}.icon-btn:hover{background-color:var(--color-background);color:var(--color-text-primary)}.icon-btn .badge{position:absolute;top:0;right:0;background-color:var(--color-error);color:#fff;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding:2px 6px;border-radius:10px;min-width:18px;text-align:center}.user-menu{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);position:relative}.user-menu:hover{background-color:var(--color-background)}.user-avatar{width:40px;height:40px;border-radius:var(--radius-full);object-fit:cover;border:2px solid var(--color-border);display:flex;align-items:center;justify-content:center;background-color:var(--color-background);font-size:1.2rem}.user-info{display:none;flex-direction:column}.user-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.user-role{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.dropdown-icon{color:var(--color-text-tertiary);font-size:var(--font-size-xs)}.user-dropdown{position:absolute;top:calc(100% + var(--spacing-xs));right:0;width:200px;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--spacing-xs);z-index:var(--z-dropdown);animation:slideDown .2s ease-out}.user-dropdown ul{list-style:none;padding:0;margin:0}.user-dropdown li{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);color:var(--color-text-secondary);font-size:var(--font-size-sm);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast)}.user-dropdown li:hover{background-color:var(--color-background);color:var(--color-text-primary)}.user-dropdown li svg{font-size:var(--font-size-md)}.user-dropdown li.text-danger{color:var(--color-error)}.user-dropdown li.text-danger:hover{background-color:var(--color-error-bg)}.notification-wrapper{position:relative}.notification-dropdown{position:absolute;top:calc(100% + var(--spacing-xs));right:0;width:360px;max-height:480px;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);animation:slideDown .2s ease-out;display:flex;flex-direction:column}.notification-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border)}.notification-header h3{margin:0;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.mark-all-read{background:none;border:none;color:var(--color-primary);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.mark-all-read:hover{background-color:var(--color-primary-light);color:var(--color-primary)}.notification-list{flex:1;overflow-y:auto;max-height:400px}.notification-item{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);cursor:pointer;border-bottom:1px solid var(--color-border-light);transition:background-color var(--transition-fast)}.notification-item:hover{background-color:var(--color-background)}.notification-item.unread{background-color:#73c41d0d}.notification-item.unread:hover{background-color:#73c41d1a}.notification-content{flex:1;min-width:0}.notification-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:2px}.notification-message{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notification-time{font-size:var(--font-size-xs);color:var(--color-text-tertiary);margin-top:var(--spacing-xs)}.notification-unread-dot{width:8px;height:8px;border-radius:50%;background-color:var(--color-primary);flex-shrink:0;margin-top:6px}.notification-loading,.notification-empty{padding:var(--spacing-xl);text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-sm)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.topbar{left:0!important;padding:0 var(--spacing-md);gap:var(--spacing-sm)}.mobile-menu-btn{display:flex;align-items:center;justify-content:center}.search-box,.user-info,.dropdown-icon{display:none}.notification-dropdown{position:fixed;top:var(--topbar-height);left:var(--spacing-sm);right:var(--spacing-sm);width:auto;max-height:calc(100vh - var(--topbar-height) - 20px)}.user-dropdown{position:fixed;top:var(--topbar-height);right:var(--spacing-sm);width:180px}.topbar-actions{margin-left:auto}}@media(min-width:769px){.mobile-menu-btn{display:none}.search-box{max-width:400px}.user-info{display:flex}}.toast-container{position:fixed;top:80px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:12px;max-width:400px;pointer-events:none}.toast{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:var(--radius-lg, 12px);background:#fff;box-shadow:0 4px 20px #00000026,0 2px 8px #0000001a;animation:slideInRight .3s ease-out,fadeIn .3s ease-out;pointer-events:auto;min-width:300px;border-left:4px solid}.toast-success{border-left-color:#10b981;background:linear-gradient(135deg,#fff,#ecfdf5)}.toast-success .toast-icon{color:#10b981}.toast-error{border-left-color:#ef4444;background:linear-gradient(135deg,#fff,#fef2f2)}.toast-error .toast-icon{color:#ef4444}.toast-warning{border-left-color:#f59e0b;background:linear-gradient(135deg,#fff,#fffbeb)}.toast-warning .toast-icon{color:#f59e0b}.toast-info{border-left-color:#3b82f6;background:linear-gradient(135deg,#fff,#eff6ff)}.toast-info .toast-icon{color:#3b82f6}.toast-icon{font-size:1.25rem;flex-shrink:0;display:flex;align-items:center}.toast-message{flex:1;font-size:.9rem;font-weight:500;color:#1f2937;line-height:1.4;word-break:break-word}.toast-close{background:none;border:none;padding:4px;cursor:pointer;color:#9ca3af;font-size:.875rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease;flex-shrink:0}.toast-close:hover{background:#0000000d;color:#4b5563}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-exit{animation:slideOutRight .3s ease-in forwards}@keyframes slideOutRight{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}@media(max-width:480px){.toast-container{inset:auto 16px 20px;max-width:none}.toast{min-width:auto;width:100%}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);font-family:var(--font-body);font-weight:var(--font-weight-semibold);border:none;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);text-decoration:none;white-space:nowrap;position:relative;overflow:hidden}.btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .4s ease}.btn:hover:before{left:100%}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.btn:disabled:before{display:none}.btn svg{font-size:1.1em;transition:transform var(--transition-fast)}.btn:hover:not(:disabled) svg{transform:scale(1.1)}.btn:active:not(:disabled){transform:translateY(1px)}.btn-small{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);border-radius:var(--radius-md)}.btn-medium{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-base)}.btn-large{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-lg);border-radius:var(--radius-xl)}.btn-primary{background:var(--gradient-accent);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-accent)}.btn-primary:active:not(:disabled){box-shadow:var(--shadow-sm)}.btn-secondary{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-sm)}.btn-secondary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-primary)}.btn-teal{background:var(--gradient-teal);color:#fff;box-shadow:var(--shadow-sm)}.btn-teal:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-teal)}.btn-outline{background:transparent;border:2px solid var(--color-border);color:var(--color-text-primary)}.btn-outline:before{background:linear-gradient(90deg,transparent,rgba(249,115,22,.1),transparent)}.btn-outline:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-lighter);transform:translateY(-2px)}.btn-ghost{background:transparent;color:var(--color-text-secondary);border:none}.btn-ghost:hover:not(:disabled){background:var(--color-background-subtle);color:var(--color-text-primary)}.btn-danger{background:linear-gradient(135deg,var(--color-error) 0%,var(--color-error-dark) 100%);color:#fff;box-shadow:var(--shadow-sm)}.btn-danger:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-error)}.btn-success{background:linear-gradient(135deg,var(--color-success) 0%,var(--color-success-dark) 100%);color:#fff;box-shadow:var(--shadow-sm)}.btn-success:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-success)}.btn-warning{background:linear-gradient(135deg,var(--color-warning) 0%,var(--color-warning-dark) 100%);color:#fff;box-shadow:var(--shadow-sm)}.btn-warning:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 14px #d977064d}.btn-loading{pointer-events:none;position:relative}.btn-loading .btn-text{opacity:0}.btn-loading:after{content:"";position:absolute;width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.btn-outline.btn-loading:after{border-color:#0000001a;border-top-color:var(--color-accent)}.btn-icon{padding:var(--spacing-sm);border-radius:var(--radius-lg);aspect-ratio:1}.btn-icon.btn-small{padding:var(--spacing-xs)}.btn-icon.btn-large{padding:var(--spacing-md)}.btn-group{display:inline-flex;border-radius:var(--radius-lg);overflow:hidden}.btn-group .btn{border-radius:0;margin:0}.btn-group .btn:first-child{border-radius:var(--radius-lg) 0 0 var(--radius-lg)}.btn-group .btn:last-child{border-radius:0 var(--radius-lg) var(--radius-lg) 0}.btn-group .btn:not(:last-child){border-right:1px solid rgba(255,255,255,.2)}.btn-full{width:100%}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg);position:relative;overflow:hidden;background:var(--gradient-hero)}.login-page:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at 20% 80%,rgba(249,115,22,.15) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(13,148,136,.15) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(255,255,255,.05) 0%,transparent 30%);animation:float 20s ease-in-out infinite;pointer-events:none}.login-page:after{content:"";position:absolute;bottom:0;left:0;right:0;height:50%;background:linear-gradient(to top,rgba(0,0,0,.2),transparent);pointer-events:none}.login-container{width:100%;max-width:460px;position:relative;z-index:1;animation:scaleIn var(--transition-slower) var(--ease-spring) both}.login-card{background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:var(--radius-2xl);box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #ffffff1a;padding:var(--spacing-2xl) var(--spacing-xl);position:relative;overflow:hidden}@supports not (backdrop-filter: blur(20px)){.login-card{background:#fffffffa}}.login-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transition:left .7s ease}.login-card:hover:before{left:100%}.login-header{text-align:center;margin-bottom:var(--spacing-xl);animation:fadeInDown var(--transition-slow) ease-out .2s both}.logo-large{margin-bottom:var(--spacing-lg);display:flex;justify-content:center}.logo-icon-large{display:block;width:64px;height:64px;object-fit:contain;border-radius:var(--radius-lg);transition:all var(--transition-base)}.logo-icon-large:hover{transform:scale(1.05)}.login-header h1{font-family:var(--font-display);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-sm);background:var(--gradient-hero);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.login-header p{color:var(--color-text-secondary);font-size:var(--font-size-base);font-weight:var(--font-weight-normal)}.login-form{display:flex;flex-direction:column;gap:var(--spacing-lg);animation:fadeInUp var(--transition-slow) ease-out .3s both}.form-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.form-group label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);letter-spacing:var(--letter-spacing-wide)}.form-group input{padding:var(--spacing-md) var(--spacing-lg);border:2px solid var(--color-border);border-radius:var(--radius-lg);font-size:var(--font-size-base);font-family:var(--font-body);background:var(--color-surface);transition:all var(--transition-fast)}.form-group input::placeholder{color:var(--color-text-tertiary)}.form-group input:hover{border-color:var(--color-divider)}.form-group input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 4px #f9731626;background:#fff}.input-with-icon{position:relative}.input-with-icon input{padding-left:var(--spacing-2xl)}.input-with-icon svg{position:absolute;left:var(--spacing-md);top:50%;transform:translateY(-50%);color:var(--color-text-tertiary);transition:color var(--transition-fast)}.input-with-icon input:focus+svg,.input-with-icon:hover svg{color:var(--color-accent)}.form-options{display:flex;align-items:center;justify-content:space-between;font-size:var(--font-size-sm)}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;color:var(--color-text-secondary);transition:color var(--transition-fast)}.checkbox-label:hover{color:var(--color-text-primary)}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-accent);border-radius:var(--radius-sm)}.forgot-link{color:var(--color-accent);font-weight:var(--font-weight-semibold);transition:all var(--transition-fast)}.forgot-link:hover{color:var(--color-accent-dark);text-decoration:underline}.login-btn{width:100%;margin-top:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg)!important;font-size:var(--font-size-base)!important;font-weight:var(--font-weight-semibold)!important;border-radius:var(--radius-lg)!important;background:var(--gradient-accent)!important;border:none!important;color:#fff!important;box-shadow:var(--shadow-accent);transition:all var(--transition-base)!important;position:relative;overflow:hidden}.login-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.login-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-accent),0 10px 20px -5px #f9731666}.login-btn:hover:before{left:100%}.login-btn:active{transform:translateY(0)}.login-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.demo-credentials{margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border);animation:fadeIn var(--transition-slow) ease-out .5s both}.demo-credentials h3{font-family:var(--font-display);font-size:var(--font-size-xs);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider);margin-bottom:var(--spacing-md);text-align:center;font-weight:var(--font-weight-semibold)}.credential-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm)}.credential-item{display:flex;justify-content:space-between;align-items:center;font-size:var(--font-size-xs);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-background);border-radius:var(--radius-md);border:1px solid transparent;transition:all var(--transition-fast)}.credential-item .role{font-weight:var(--font-weight-bold);color:var(--color-text-primary);font-family:var(--font-display)}.credential-item code{font-family:SF Mono,Consolas,monospace;font-size:.7rem;color:var(--color-text-secondary);background:#0000000f;padding:2px 6px;border-radius:var(--radius-sm)}.credential-item.clickable{cursor:pointer}.credential-item.clickable:hover{background:var(--gradient-primary);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:transparent}.credential-item.clickable:hover .role{color:#fff}.credential-item.clickable:hover code{color:#ffffffe6;background:#fff3}.credential-item.clickable:active{transform:translateY(0)}.error-message{background:var(--color-error-light);color:var(--color-error-dark);padding:var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);display:flex;align-items:center;gap:var(--spacing-sm);animation:bounceIn .4s var(--ease-spring) both}.error-message svg{flex-shrink:0}.login-btn.loading{pointer-events:none}.login-btn.loading:after{content:"";width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;margin-left:var(--spacing-sm)}@media(max-width:480px){.login-page{padding:var(--spacing-md)}.login-card{padding:var(--spacing-xl);border-radius:var(--radius-xl)}.logo-icon-large{width:60px;height:60px;font-size:var(--font-size-2xl)}.login-header h1{font-size:var(--font-size-xl)}.credential-grid{grid-template-columns:1fr}.form-group input{padding:var(--spacing-md)}}.register-link{text-align:center;margin-top:var(--spacing-lg);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.register-link a{color:var(--color-accent);font-weight:var(--font-weight-semibold);transition:color var(--transition-fast)}.register-link a:hover{color:var(--color-accent-dark);text-decoration:underline}.card{background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);border:1px solid var(--color-border-light);overflow:hidden;transition:all var(--transition-base);position:relative}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:transparent;transition:background var(--transition-base)}.card:hover{box-shadow:var(--shadow-md);border-color:var(--color-border);transform:translateY(-2px)}.card-elevated{box-shadow:var(--shadow-md)}.card-elevated:hover{box-shadow:var(--shadow-lg)}.card-flat{box-shadow:none;border:1px solid var(--color-border)}.card-flat:hover{box-shadow:var(--shadow-sm)}.card-interactive{cursor:pointer}.card-interactive:hover:before{background:var(--gradient-accent)}.card-interactive:active{transform:translateY(0)}.card-accent-primary:before{background:var(--gradient-primary)}.card-accent-success:before{background:linear-gradient(135deg,var(--color-success) 0%,var(--color-success-dark) 100%)}.card-accent-warning:before{background:var(--gradient-accent)}.card-accent-error:before{background:linear-gradient(135deg,var(--color-error) 0%,var(--color-error-dark) 100%)}.card-accent-teal:before{background:var(--gradient-teal)}.card-glass{background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3)}@supports not (backdrop-filter: blur(10px)){.card-glass{background:#fffffff2}}.card-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg) var(--spacing-xl);border-bottom:1px solid var(--color-border-light);background:linear-gradient(180deg,var(--color-background) 0%,transparent 100%)}.card-title{font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0;letter-spacing:var(--letter-spacing-tight)}.card-title-with-icon{display:flex;align-items:center;gap:var(--spacing-sm)}.card-title-with-icon svg{color:var(--color-accent);font-size:1.2em}.card-subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-top:var(--spacing-xs);font-weight:var(--font-weight-normal)}.card-actions{display:flex;align-items:center;gap:var(--spacing-sm)}.card-actions .btn{padding:var(--spacing-xs) var(--spacing-sm)}.card-body{padding:var(--spacing-xl)}.card-body-compact{padding:var(--spacing-lg)}.card-body-spacious{padding:var(--spacing-2xl)}.card-footer{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg) var(--spacing-xl);border-top:1px solid var(--color-border-light);background:var(--color-background)}.card-footer-centered{justify-content:center}.card-image{width:100%;height:auto;object-fit:cover}.card-image-top{border-radius:var(--radius-xl) var(--radius-xl) 0 0}.card-badge{position:absolute;top:var(--spacing-md);right:var(--spacing-md);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.card-badge-primary{background:var(--color-primary-lighter);color:var(--color-primary)}.card-badge-accent{background:var(--color-accent-lighter);color:var(--color-accent-dark)}.card-badge-success{background:var(--color-success-light);color:var(--color-success-dark)}.card-divider{height:1px;background:linear-gradient(90deg,transparent,var(--color-border),transparent);margin:0 var(--spacing-xl)}.card-loading{position:relative;pointer-events:none}.card-loading:after{content:"";position:absolute;inset:0;background:#ffffffb3;display:flex;align-items:center;justify-content:center}.card-loading .card-body{opacity:.5}.card-sm .card-header,.card-sm .card-body,.card-sm .card-footer{padding:var(--spacing-md)}.card-sm .card-title{font-size:var(--font-size-base)}.card-lg .card-header,.card-lg .card-body,.card-lg .card-footer{padding:var(--spacing-2xl)}.card-lg .card-title{font-size:var(--font-size-xl)}@media(max-width:768px){.card-header,.card-body,.card-footer{padding:var(--spacing-lg)}.card-title{font-size:var(--font-size-base)}}.dashboard{padding:var(--spacing-xl);min-height:100vh}.dashboard-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--spacing-2xl);animation:fadeInDown var(--transition-slow) ease-out}.dashboard-header h1{font-family:var(--font-display);font-size:var(--font-size-4xl);font-weight:var(--font-weight-extrabold);letter-spacing:var(--letter-spacing-tight);margin-bottom:var(--spacing-sm);display:flex;align-items:center;gap:var(--spacing-md)}.dashboard-header h1 svg{color:var(--color-accent);animation:float 3s ease-in-out infinite}.dashboard-subtitle{color:var(--color-text-secondary);font-size:var(--font-size-lg);font-weight:var(--font-weight-normal)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl)}.stats-grid{grid-template-columns:repeat(4,1fr)}.stat-card{position:relative;overflow:hidden;border-radius:var(--radius-xl)!important;border:none!important;transition:all var(--transition-base)}.stat-card:before{content:"";position:absolute;top:0;right:0;width:120px;height:120px;border-radius:50%;transform:translate(30%,-30%);opacity:.15;transition:all var(--transition-slow)}.stat-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-xl)}.stat-card:hover:before{transform:translate(20%,-20%) scale(1.2)}.stat-card .card-body{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-xl)!important;position:relative;z-index:1}.stat-primary{background:linear-gradient(135deg,#ffffff 0%,var(--color-primary-lighter) 100%)!important}.stat-primary:before{background:var(--color-primary)}.stat-primary .stat-icon{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-primary)}.stat-success{background:linear-gradient(135deg,#ffffff 0%,var(--color-success-light) 100%)!important}.stat-success:before{background:var(--color-success)}.stat-success .stat-icon{background:linear-gradient(135deg,var(--color-success) 0%,var(--color-success-dark) 100%);color:#fff;box-shadow:var(--shadow-success)}.stat-warning{background:linear-gradient(135deg,#ffffff 0%,var(--color-accent-lighter) 100%)!important}.stat-warning:before{background:var(--color-accent)}.stat-warning .stat-icon{background:var(--gradient-accent);color:#fff;box-shadow:var(--shadow-accent)}.stat-info{background:linear-gradient(135deg,#ffffff 0%,var(--color-teal-lighter) 100%)!important}.stat-info:before{background:var(--color-teal)}.stat-info .stat-icon{background:var(--gradient-teal);color:#fff;box-shadow:var(--shadow-teal)}.stat-danger{background:linear-gradient(135deg,#fff,#ffe5e5)!important}.stat-danger:before{background:var(--color-error)}.stat-danger .stat-icon{background:linear-gradient(135deg,#dc3545,#a71d2a);color:#fff;box-shadow:0 4px 14px #dc354559}.stat-danger .stat-value{color:#dc3545}.no-balance-warning{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background:linear-gradient(135deg,#dc3545,#a71d2a);color:#fff;border-radius:var(--radius-lg);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);box-shadow:0 4px 14px #dc354559;animation:glowPulse 2s ease-in-out infinite}.no-balance-warning svg{font-size:var(--font-size-lg)}.stat-icon{font-size:1.5rem;width:60px;height:60px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);flex-shrink:0;transition:all var(--transition-base)}.stat-card:hover .stat-icon{transform:scale(1.1) rotate(-5deg)}.stat-content{display:flex;flex-direction:column;justify-content:center}.stat-value{font-family:var(--font-display);font-size:var(--font-size-3xl);font-weight:var(--font-weight-extrabold);color:var(--color-text-primary);line-height:1;margin-bottom:var(--spacing-xs);letter-spacing:var(--letter-spacing-tight)}.stat-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.stats-grid .stat-card:nth-child(1){animation:fadeInUp var(--transition-slow) ease-out 0ms both}.stats-grid .stat-card:nth-child(2){animation:fadeInUp var(--transition-slow) ease-out .1s both}.stats-grid .stat-card:nth-child(3){animation:fadeInUp var(--transition-slow) ease-out .2s both}.stats-grid .stat-card:nth-child(4){animation:fadeInUp var(--transition-slow) ease-out .3s both}.dashboard-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.activity-card{animation:slideInLeft var(--transition-slower) var(--ease-out-expo) both;animation-delay:.4s}.activity-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.activity-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);border-radius:var(--radius-lg);transition:all var(--transition-fast);border:1px solid transparent;cursor:pointer}.activity-item:hover{background:linear-gradient(135deg,var(--color-background) 0%,var(--color-background-subtle) 100%);border-color:var(--color-border);transform:translate(4px)}.activity-avatar{width:44px;height:44px;border-radius:var(--radius-full);background:var(--gradient-primary);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg);color:#fff;flex-shrink:0;box-shadow:var(--shadow-sm)}.activity-content{flex:1;min-width:0}.activity-text{font-size:var(--font-size-sm);color:var(--color-text-primary);margin-bottom:var(--spacing-xs);line-height:var(--line-height-snug)}.activity-text strong{font-weight:var(--font-weight-semibold);color:var(--color-primary)}.activity-time{font-size:var(--font-size-xs);color:var(--color-text-tertiary);font-weight:var(--font-weight-medium)}.activity-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);flex-shrink:0}.activity-badge.pending{background:var(--color-accent-lighter);color:var(--color-accent-dark);animation:glowPulse 2s ease-in-out infinite}.activity-loading{display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-lg)}.activity-skeleton{display:flex;align-items:center;gap:var(--spacing-md)}.activity-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl);color:var(--color-text-tertiary);text-align:center}.activity-empty svg{font-size:3rem;margin-bottom:var(--spacing-md);opacity:.5}.events-card{animation:slideInRight var(--transition-slower) var(--ease-out-expo) both;animation-delay:.5s}.events-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.event-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);border-radius:var(--radius-lg);transition:all var(--transition-fast);border:1px solid transparent;cursor:pointer}.event-item:hover{background:var(--color-background);border-color:var(--color-border);transform:translate(4px)}.event-badge{width:44px;height:44px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg);flex-shrink:0;transition:all var(--transition-fast)}.event-item:hover .event-badge{transform:scale(1.1)}.event-meeting{background:linear-gradient(135deg,#ede9fe,#c4b5fd);color:#6d28d9}.event-birthday{background:linear-gradient(135deg,var(--color-accent-lighter) 0%,#ffe4d6 100%);color:var(--color-accent-dark)}.event-deadline{background:linear-gradient(135deg,var(--color-error-light) 0%,#ffd6d6 100%);color:var(--color-error-dark)}.event-holiday{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#dc2626}.event-company_event{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1d4ed8}.event-training{background:linear-gradient(135deg,#ffedd5,#fed7aa);color:#c2410c}.event-announcement{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#047857}.event-other{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);color:#4b5563}.event-content{flex:1;min-width:0}.event-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--spacing-xs)}.event-date{font-size:var(--font-size-xs);color:var(--color-text-tertiary);font-weight:var(--font-weight-medium)}.quick-actions-card{animation:fadeInUp var(--transition-slower) ease-out both;animation-delay:.6s}.quick-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-md)}.quick-actions button{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-lg);font-weight:var(--font-weight-medium);transition:all var(--transition-base);border:2px solid var(--color-border);background:var(--color-surface);color:var(--color-text-primary)}.quick-actions button:hover{border-color:var(--color-accent);background:var(--color-accent-lighter);color:var(--color-accent-dark);transform:translateY(-2px);box-shadow:var(--shadow-md)}.quick-actions button svg{font-size:var(--font-size-lg);transition:transform var(--transition-fast)}.quick-actions button:hover svg{transform:scale(1.15)}@media(max-width:1200px){.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}}@media(max-width:768px){.dashboard{padding:var(--spacing-md)}.dashboard-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.dashboard-header h1{font-size:var(--font-size-2xl)}.stats-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.stat-card .card-body{padding:var(--spacing-lg)!important}.stat-icon{width:50px;height:50px}.stat-value{font-size:var(--font-size-2xl)}.dashboard-grid{grid-template-columns:1fr}.quick-actions{flex-direction:column}.quick-actions button{width:100%;justify-content:center}}.employee-list-page{padding:var(--spacing-xl)}.search-input-table{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);transition:all var(--transition-fast)}.employee-table-container{overflow-x:auto;margin-bottom:var(--spacing-lg)}.employee-table{width:100%;border-collapse:collapse}.employee-table thead{background-color:var(--color-background)}.employee-table th{padding:var(--spacing-md);text-align:left;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);border-bottom:2px solid var(--color-border)}.employee-table td{padding:var(--spacing-md);border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm)}.employee-table tbody tr{transition:background-color var(--transition-fast)}.employee-table tbody tr:hover{background-color:var(--color-background)}.employee-avatar{width:40px;height:40px;border-radius:var(--radius-full);background:var(--color-background);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl)}.email-cell{color:var(--color-text-secondary)}.status-badge{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.action-btn{background:none;border:none;padding:var(--spacing-xs);cursor:pointer;font-size:var(--font-size-lg);border-radius:var(--radius-sm);transition:background-color var(--transition-fast)}.action-btn:hover{background-color:var(--color-background)}.pagination-controls{display:flex;gap:var(--spacing-sm)}.employee-form{padding:var(--spacing-lg)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}@media(max-width:768px){.employee-list-page{padding:var(--spacing-md)}.page-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.list-controls{flex-direction:column;align-items:stretch}.search-filter{max-width:100%}.employee-table-container{overflow-x:scroll}.table-pagination{flex-direction:column;gap:var(--spacing-md)}.modal-overlay{padding:var(--spacing-md)}.form-grid{grid-template-columns:1fr}}.employee-profile-page{padding:var(--spacing-xl)}.profile-header-section{margin-bottom:var(--spacing-xl)}.profile-header-card{padding:var(--spacing-xl)!important}.profile-header{display:flex;align-items:flex-start;gap:var(--spacing-xl)}.profile-avatar-large{width:120px;height:120px;border-radius:var(--radius-xl);background:linear-gradient(135deg,var(--color-primary-light),var(--color-primary));display:flex;align-items:center;justify-content:center;font-size:4rem;flex-shrink:0}.profile-info{flex:1}.profile-name{font-size:var(--font-size-3xl);margin-bottom:var(--spacing-xs)}.profile-position{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin-bottom:var(--spacing-md)}.profile-meta{display:flex;flex-wrap:wrap;gap:var(--spacing-lg);margin-bottom:var(--spacing-md)}.meta-item{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.profile-status{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.status-active{background-color:#10b9811a;color:var(--color-success)}.status-leave{background-color:#f59e0b1a;color:var(--color-warning)}.profile-actions{display:flex;flex-direction:column;gap:var(--spacing-sm);position:relative;z-index:10}.profile-content{margin-bottom:var(--spacing-xl)}.profile-tabs{display:flex;gap:var(--spacing-sm);border-bottom:2px solid var(--color-border);margin-bottom:var(--spacing-xl);overflow-x:auto;position:relative;z-index:20;background:var(--color-background)}.tab-button{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;transition:all var(--transition-fast);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);white-space:nowrap}.tab-button:hover{color:var(--color-text-primary);background-color:var(--color-background)}.tab-button.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.tab-icon{font-size:var(--font-size-lg)}.tab-content{padding:var(--spacing-lg)}.info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--spacing-lg)}.info-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.info-item.full-width{grid-column:1 / -1}.info-item label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.info-value{font-size:var(--font-size-base);color:var(--color-text-primary);padding:var(--spacing-sm);background-color:var(--color-background);border-radius:var(--radius-md)}.documents-section{display:flex;flex-direction:column;gap:var(--spacing-md)}.document-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background-color:var(--color-background);border-radius:var(--radius-md);transition:background-color var(--transition-fast)}.document-item:hover{background-color:var(--color-border)}.document-icon{font-size:var(--font-size-2xl)}.document-info{flex:1}.document-name{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin-bottom:var(--spacing-xs)}.document-meta{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.upload-btn{margin-top:var(--spacing-md)}.leave-section{display:flex;flex-direction:column;gap:var(--spacing-lg)}.leave-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.leave-card{padding:var(--spacing-lg);background:linear-gradient(135deg,var(--color-primary-light),var(--color-primary));border-radius:var(--radius-lg);color:#fff}.leave-type{font-size:var(--font-size-sm);opacity:.9;margin-bottom:var(--spacing-sm)}.leave-count{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold)}.leave-history{display:flex;flex-direction:column;gap:var(--spacing-md)}.leave-history-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background-color:var(--color-background);border-radius:var(--radius-md)}.leave-date{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);min-width:150px}.leave-type-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.leave-type-badge.annual{background-color:#73c41d1a;color:var(--color-primary)}.leave-type-badge.sick{background-color:#ef44441a;color:var(--color-error)}.leave-status{margin-left:auto;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.leave-status.approved{background-color:#10b9811a;color:var(--color-success)}.request-leave-btn{margin-top:var(--spacing-md)}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:9000;padding:var(--spacing-lg)}.modal-content{background-color:var(--color-surface);border-radius:var(--radius-lg);max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg)}.form-group input,.form-group select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);transition:all var(--transition-fast)}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #73c41d1a}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-md);padding:var(--spacing-lg);border-top:1px solid var(--color-border);background-color:var(--color-background)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.form-group textarea{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-family:inherit;resize:vertical;min-height:80px;transition:all var(--transition-fast)}.form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #73c41d1a}.modal-content form{padding:var(--spacing-lg)}.modal-content form .modal-footer{margin:0 calc(-1 * var(--spacing-lg));margin-bottom:calc(-1 * var(--spacing-lg));margin-top:var(--spacing-lg)}.leave-management-page{padding:2rem}.leave-table{width:100%;border-collapse:collapse}.leave-table th,.leave-table td{padding:1rem;text-align:left;border-bottom:1px solid #eee}.leave-table th{font-weight:600;color:#666;background-color:#f9fafb}.reason-cell{max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.action-buttons{display:flex;gap:.5rem}.leave-type-badge{padding:.25rem .5rem;border-radius:4px;font-size:.85rem;font-weight:500;text-transform:capitalize}.leave-type-badge.annual{background-color:#e3f2fd;color:#1976d2}.leave-type-badge.sick{background-color:#ffebee;color:#c62828}.leave-type-badge.personal{background-color:#f3e5f5;color:#7b1fa2}.leave-type-badge.unpaid{background-color:#eee;color:#616161}.status-badge{padding:.25rem .5rem;border-radius:12px;font-size:.85rem;font-weight:500}.status-pending_manager{background-color:#fff3e0;color:#ef6c00}.status-pending_hr,.status-approved{background-color:#e8f5e9;color:#2e7d32}.status-rejected{background-color:#ffebee;color:#c62828}.status-pending_finance{background-color:#e3f2fd;color:#1565c0}.highlighted-row{animation:highlightPulse 2s ease-in-out;background-color:#f973161a!important}@keyframes highlightPulse{0%{background-color:#f973164d;box-shadow:0 0 0 4px #f9731633}50%{background-color:#f9731626;box-shadow:0 0 0 8px #f973161a}to{background-color:#f973161a;box-shadow:none}}.leave-table tr.highlighted-row td{border-color:#f973164d}.clickable-row:hover{background-color:#f8fafc}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:#fff;border-radius:16px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid #eee;background:linear-gradient(135deg,#1e3a5f,#0d9488);border-radius:16px 16px 0 0}.modal-header h2{margin:0;font-size:1.25rem;color:#fff}.modal-close{background:#fff3;border:none;font-size:1.5rem;cursor:pointer;color:#fff;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .2s}.modal-close:hover{background:#ffffff4d}.modal-body{padding:1.5rem}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}.detail-item{display:flex;flex-direction:column;gap:.5rem}.detail-item.full-width{grid-column:1 / -1}.detail-item label{font-size:.75rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.detail-item span{font-size:.95rem;color:#0f172a}.modal-footer{display:flex;gap:.75rem;justify-content:flex-end;padding:1.25rem 1.5rem;border-top:1px solid #eee;background:#f8fafc;border-radius:0 0 16px 16px}.reject-modal{max-width:480px}.reject-modal .modal-header{background:linear-gradient(135deg,#dc3545,#a71d2a)}.reject-modal .form-group label{display:block;font-weight:600;color:#374151;margin-bottom:.5rem}.reject-modal textarea:focus{outline:none;border-color:#dc3545;box-shadow:0 0 0 3px #dc354526}@media(max-width:640px){.detail-grid{grid-template-columns:1fr}.modal-footer{flex-direction:column}.modal-footer button{width:100%}}.pto-summary-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-bottom:1.5rem}.pto-card{background:#fff;border-radius:12px;padding:1.25rem;display:flex;align-items:center;gap:1rem;box-shadow:0 2px 8px #0000000f;border:1px solid #eee;transition:transform .2s,box-shadow .2s}.pto-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.pto-card-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.25rem}.pto-balance .pto-card-icon{background:linear-gradient(135deg,#e3f2fd,#bbdefb);color:#1565c0}.pto-pending .pto-card-icon{background:linear-gradient(135deg,#fff3e0,#ffe0b2);color:#ef6c00}.pto-used .pto-card-icon{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);color:#2e7d32}.pto-card-content{display:flex;flex-direction:column;gap:.15rem}.pto-card-label{font-size:.75rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.pto-card-value{font-size:1.5rem;font-weight:700;color:#1e3a5f}.pto-card-sub{font-size:.75rem;color:#94a3b8}@media(max-width:900px){.pto-summary-cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.pto-summary-cards{grid-template-columns:1fr}}.pto-balance-page{padding:var(--spacing-xl)}.header-actions{display:flex;gap:var(--spacing-md);align-items:center}.year-select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);background-color:var(--color-surface);cursor:pointer;min-width:100px}.year-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #73c41d1a}.summary-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.summary-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-md);box-shadow:var(--shadow-sm);border:1px solid var(--color-border)}.summary-icon{width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl)}.summary-icon.employees{background:#3b82f61a;color:#3b82f6}.summary-icon.quota{background:#10b9811a;color:var(--color-success)}.summary-icon.used{background:#f973161a;color:#f97316}.summary-icon.available{background:#8b5cf61a;color:#8b5cf6}.summary-info{display:flex;flex-direction:column}.summary-value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.summary-label{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.list-controls{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.search-filter{flex:1;max-width:400px}.search-input-wrapper{position:relative}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--color-text-secondary)}.search-input-table{width:100%;padding:var(--spacing-sm) var(--spacing-md);padding-left:36px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);transition:all var(--transition-fast)}.search-input-table:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #73c41d1a}.filter-buttons{display:flex;gap:var(--spacing-sm)}.filter-row{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md)}.filter-group select:focus{outline:none;border-color:var(--color-primary)}.pto-table-container{overflow-x:auto;margin-bottom:var(--spacing-lg)}.pto-table{width:100%;border-collapse:collapse}.pto-table thead{background-color:var(--color-background)}.pto-table th{padding:var(--spacing-md);text-align:left;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);border-bottom:2px solid var(--color-border);white-space:nowrap}.pto-table th.text-center,.pto-table td.text-center{text-align:center}.pto-table td{padding:var(--spacing-md);border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm)}.pto-table tbody tr{transition:background-color var(--transition-fast)}.pto-table tbody tr:hover{background-color:var(--color-background)}.employee-info{display:flex;align-items:center;gap:var(--spacing-md)}.employee-details{display:flex;flex-direction:column}.employee-name{font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.employee-meta{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.dept-info{display:flex;flex-direction:column;gap:2px}.branch-label{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.balance-value{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-weight:var(--font-weight-medium);min-width:40px}.balance-value.quota{background:#10b9811a;color:var(--color-success)}.balance-value.carried{background:#3b82f61a;color:#3b82f6}.balance-value.used{background:#f973161a;color:#f97316}.balance-value.encashed{background:#8b5cf61a;color:#8b5cf6}.balance-value.available{background:#10b98126;color:var(--color-success);font-weight:var(--font-weight-bold)}.balance-value.available.low{background:#ef44441a;color:var(--color-danger)}.empty-state{text-align:center;color:var(--color-text-secondary);padding:var(--spacing-xl)!important}.table-pagination{display:flex;justify-content:space-between;align-items:center}.pagination-info{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.modal-content{background-color:var(--color-surface);border-radius:var(--radius-lg);max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg)}.modal-content.modal-sm{max-width:420px}.allocation-form{padding:var(--spacing-lg)}.employee-summary{display:flex;flex-direction:column;gap:var(--spacing-xs);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border);margin-bottom:var(--spacing-md)}.employee-summary strong{font-size:var(--font-size-lg)}.employee-summary span{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.current-balance{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm);background:var(--color-background);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.balance-item{display:flex;flex-direction:column;gap:2px}.balance-item .label{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.balance-item .value{font-size:var(--font-size-base);font-weight:var(--font-weight-medium)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg)}.form-group input{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);transition:all var(--transition-fast)}.form-group input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #73c41d1a}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-md);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border)}@media(max-width:1024px){.summary-cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.pto-balance-page{padding:var(--spacing-md)}.page-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.summary-cards{grid-template-columns:1fr}.list-controls{flex-direction:column;align-items:stretch}.search-filter{max-width:100%}.filter-row{grid-template-columns:1fr}.pto-table-container{overflow-x:scroll}.table-pagination{flex-direction:column;gap:var(--spacing-md)}.modal-overlay{padding:var(--spacing-md)}.current-balance{grid-template-columns:1fr}}.event-management-page{padding:var(--spacing-xl)}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-xl)}.page-header h1{font-size:var(--font-size-3xl);margin-bottom:var(--spacing-xs)}.page-subtitle{color:var(--color-text-secondary);font-size:var(--font-size-base)}.list-controls{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);flex-wrap:wrap}.event-type-filter{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.type-badge{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;border:2px solid transparent;background:var(--color-background);color:var(--color-text-secondary);transition:all var(--transition-fast)}.type-badge:hover{border-color:var(--badge-color);color:var(--badge-color)}.type-badge.active{background:var(--badge-color);color:#fff;border-color:var(--badge-color)}.filter-buttons{display:flex;gap:var(--spacing-sm);align-items:center}.view-toggle{display:flex;background:var(--color-background);border-radius:var(--radius-md);padding:2px;border:1px solid var(--color-border)}.toggle-btn{display:flex;align-items:center;justify-content:center;width:36px;height:32px;border:none;background:transparent;border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text-secondary);transition:all var(--transition-fast)}.toggle-btn:hover{color:var(--color-text-primary)}.toggle-btn.active{background:var(--color-primary);color:#fff}.filter-panel{background:var(--color-background);border-radius:var(--radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.filter-group{display:flex;flex-direction:column;gap:var(--spacing-xs);max-width:300px}.filter-group label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.filter-group select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);background-color:var(--color-surface)}.events-list{min-height:200px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl) * 2;color:var(--color-text-secondary);text-align:center}.empty-icon{font-size:48px;margin-bottom:var(--spacing-md);opacity:.5}.empty-state p{margin-bottom:var(--spacing-lg)}.month-group{margin-bottom:var(--spacing-xl)}.month-header{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--color-border);margin-bottom:var(--spacing-md)}.month-events{display:flex;flex-direction:column;gap:var(--spacing-md)}.event-card{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-background);border-radius:var(--radius-lg);transition:all var(--transition-fast)}.event-card:hover{box-shadow:var(--shadow-md)}.event-type-indicator{width:4px;height:100%;min-height:60px;border-radius:var(--radius-full);flex-shrink:0}.event-date{display:flex;flex-direction:column;align-items:center;min-width:50px;padding:var(--spacing-sm);background:var(--color-surface);border-radius:var(--radius-md);flex-shrink:0}.event-date .day{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);line-height:1}.event-date .month{font-size:var(--font-size-xs);color:var(--color-text-secondary);text-transform:uppercase}.event-details{flex:1;min-width:0}.event-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs);flex-wrap:wrap}.event-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.event-type-badge{padding:2px 8px;border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.event-description{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:var(--spacing-xs) 0;line-height:1.5}.event-meta{display:flex;gap:var(--spacing-md);flex-wrap:wrap;margin-top:var(--spacing-sm)}.meta-item{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.meta-item svg{font-size:var(--font-size-sm)}.event-actions{display:flex;gap:var(--spacing-xs);flex-shrink:0}.action-btn{background:none;border:none;padding:var(--spacing-xs);cursor:pointer;font-size:var(--font-size-lg);border-radius:var(--radius-sm);transition:all var(--transition-fast);color:var(--color-text-secondary)}.action-btn:hover{background-color:var(--color-surface);color:var(--color-primary)}.action-btn.delete:hover{color:var(--color-danger)}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-lg)}.modal-content{background-color:var(--color-surface);border-radius:var(--radius-lg);max-width:550px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.modal-header h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin:0}.modal-close{background:none;border:none;font-size:2rem;cursor:pointer;color:var(--color-text-secondary);padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);transition:all var(--transition-fast)}.modal-close:hover{background-color:var(--color-background);color:var(--color-text-primary)}.event-form{padding:var(--spacing-lg)}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-md)}.form-group label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.form-group input,.form-group select,.form-group textarea{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);transition:all var(--transition-fast);font-family:inherit}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #73c41d1a}.form-group textarea{resize:vertical;min-height:80px}.checkbox-group{flex-direction:row;align-items:center}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-md);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border);margin-top:var(--spacing-md)}.loading-spinner{display:flex;justify-content:center;align-items:center;padding:var(--spacing-xl);color:var(--color-text-secondary)}.error-message{background-color:#ef44441a;color:var(--color-danger);padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);text-align:center}.calendar-container{padding:var(--spacing-md) 0}.calendar-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding:0 var(--spacing-sm)}.calendar-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0;min-width:200px;text-align:center}.nav-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-md);cursor:pointer;color:var(--color-text-secondary);transition:all var(--transition-fast)}.nav-btn:hover{background:var(--color-background);color:var(--color-text-primary);border-color:var(--color-primary)}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);background:var(--color-background);border:1px solid var(--color-border);border-bottom:none;border-radius:var(--radius-md) var(--radius-md) 0 0}.weekday{padding:var(--spacing-sm) var(--spacing-xs);text-align:center;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);border-right:1px solid var(--color-border)}.weekday:last-child{border-right:none}.calendar-weeks{border:1px solid var(--color-border);border-radius:0 0 var(--radius-md) var(--radius-md);overflow:hidden}.calendar-week{display:flex;flex-direction:column;border-bottom:1px solid var(--color-border);position:relative;min-height:120px}.calendar-week:last-child{border-bottom:none}.week-days{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-day{background:var(--color-surface);padding:6px 8px;border-right:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:flex-start}.calendar-day:last-child{border-right:none}.calendar-day.other-month{background:var(--color-background)}.calendar-day.other-month .day-number{color:var(--color-text-secondary);opacity:.5}.calendar-day.today{background:#73c41d14}.calendar-day.today .day-number{background:var(--color-primary);color:#fff;border-radius:var(--radius-full);width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center}.day-number{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.calendar-day .more-indicator{font-size:10px;color:var(--color-text-secondary);font-weight:var(--font-weight-medium);cursor:pointer}.calendar-day .more-indicator:hover{color:var(--color-primary)}.week-events-container{position:relative;background:var(--color-surface);min-height:66px;flex:1}.spanning-event{position:absolute;height:20px;border-radius:4px;font-size:11px;font-weight:var(--font-weight-medium);color:#fff;cursor:pointer;transition:all var(--transition-fast);overflow:hidden;display:flex;align-items:center;z-index:1}.spanning-event:hover{opacity:.9;z-index:10;box-shadow:0 2px 8px #0003}.spanning-event .event-label{padding:0 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.spanning-event.continues-left{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-2px;padding-left:4px}.spanning-event.continues-right{border-top-right-radius:0;border-bottom-right-radius:0;margin-right:-2px}.pto-event{cursor:default!important}.pto-event:hover{transform:none}.pto-card{border-left:3px solid #06b6d4}.checkbox-filter{flex-direction:row;align-items:center}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)!important}.checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--color-primary)}.filter-panel{display:flex;gap:var(--spacing-lg);flex-wrap:wrap;align-items:flex-end}@media(max-width:768px){.event-management-page{padding:var(--spacing-md)}.page-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.list-controls{flex-direction:column;align-items:stretch}.filter-buttons{justify-content:space-between}.event-type-filter{justify-content:flex-start}.event-card{flex-wrap:wrap}.event-date{min-width:auto}.form-row{grid-template-columns:1fr}.modal-overlay{padding:var(--spacing-md)}.calendar-day{min-height:24px;padding:2px}.day-number{font-size:var(--font-size-xs)}.calendar-title{font-size:var(--font-size-base);min-width:140px}.spanning-event{height:16px;font-size:9px}.spanning-event .event-label{padding:0 3px}.week-events{min-height:auto!important}}.settings-page{padding:var(--spacing-xl)}.settings-tabs{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl);border-bottom:2px solid var(--color-border)}.tab-btn{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background:none;border:none;border-bottom:3px solid transparent;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);margin-bottom:-2px}.tab-btn:hover{color:var(--color-text-primary);background-color:var(--color-background)}.tab-btn.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg)}.section-header h2{font-size:var(--font-size-xl);margin:0}.org-table-container{overflow-x:auto}.org-table{width:100%;border-collapse:collapse}.org-table thead{background-color:var(--color-background)}.org-table th{padding:var(--spacing-md);text-align:left;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);border-bottom:2px solid var(--color-border)}.org-table td{padding:var(--spacing-md);border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm)}.org-table tbody tr{transition:background-color var(--transition-fast)}.org-table tbody tr:hover{background-color:var(--color-background)}.settings-form{padding:var(--spacing-lg)}.settings-form .form-group{margin-bottom:var(--spacing-md)}.settings-form .form-group label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin-bottom:var(--spacing-xs)}.settings-form .form-group input,.settings-form .form-group select,.settings-form .form-group textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);transition:all var(--transition-fast)}.settings-form .form-group input:focus,.settings-form .form-group select:focus,.settings-form .form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #73c41d1a}.settings-form .form-group textarea{resize:vertical;font-family:inherit}.action-buttons{display:flex;gap:var(--spacing-xs)}.action-btn{background:none;border:none;padding:var(--spacing-xs);cursor:pointer;font-size:var(--font-size-lg);border-radius:var(--radius-sm);transition:background-color var(--transition-fast);color:var(--color-text-secondary)}.action-btn:hover{background-color:var(--color-background);color:var(--color-primary)}@media(max-width:768px){.settings-page{padding:var(--spacing-md)}.settings-tabs{overflow-x:auto}.section-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.org-table-container{overflow-x:scroll}}.reports-page-v2{padding:var(--spacing-lg);max-width:1600px;margin:0 auto}.reports-page-v2 .page-header{margin-bottom:var(--spacing-xl)}.reports-page-v2 .page-header h1{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--spacing-xs);font-family:var(--font-display)}.reports-page-v2 .page-subtitle{color:var(--color-text-secondary);font-size:var(--font-size-base);margin:0}.report-nav{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border);flex-wrap:wrap}.nav-btn{display:flex;align-items:center;gap:.625rem;padding:.875rem 1.5rem;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);font-size:.95rem;font-weight:var(--font-weight-medium);font-family:var(--font-body);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast);white-space:nowrap;min-width:fit-content}.nav-btn:hover{background:var(--color-background-subtle);color:var(--color-text-primary);border-color:var(--color-primary-light)}.nav-btn.active{background:var(--color-primary);color:var(--color-text-on-primary);border-color:var(--color-primary);box-shadow:var(--shadow-primary)}.nav-btn svg{font-size:1rem}.report-filters{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-md);margin-bottom:var(--spacing-lg);box-shadow:var(--shadow-sm)}.filter-row{display:flex;gap:var(--spacing-md);align-items:flex-end;flex-wrap:wrap}.filter-item{display:flex;flex-direction:column;gap:var(--spacing-xs);min-width:160px}.filter-item label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.filter-item select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);font-size:var(--font-size-sm);color:var(--color-text-primary);font-family:var(--font-body);cursor:pointer;transition:all var(--transition-fast)}.filter-item select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-lighter)}.filter-actions{margin-left:auto}.filter-actions button{display:flex;align-items:center;gap:var(--spacing-sm)}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl);color:var(--color-text-secondary)}.spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:var(--spacing-md)}@keyframes spin{to{transform:rotate(360deg)}}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.kpi-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);display:flex;gap:var(--spacing-md);border-left:4px solid;box-shadow:var(--shadow-sm);border-top:1px solid var(--color-border-light);border-right:1px solid var(--color-border-light);border-bottom:1px solid var(--color-border-light);transition:all var(--transition-base)}.kpi-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.kpi-icon{width:52px;height:52px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.kpi-content{flex:1}.kpi-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);margin-bottom:var(--spacing-xs)}.kpi-value{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);line-height:var(--line-height-tight);font-family:var(--font-display)}.kpi-subtitle{font-size:var(--font-size-xs);color:var(--color-text-tertiary);margin-top:var(--spacing-xs)}.kpi-trend{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);margin-top:var(--spacing-xs)}.kpi-trend.up{color:var(--color-success)}.kpi-trend.down{color:var(--color-error)}.dashboard-charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:var(--spacing-lg)}.chart-card{padding:0}.chart-card .card-body{padding:var(--spacing-lg)}.chart-card h3{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border-light)}.chart-card h3 svg{color:var(--color-text-secondary)}.dept-breakdown{display:flex;flex-direction:column;gap:var(--spacing-md)}.dept-row{display:flex;flex-direction:column;gap:var(--spacing-xs)}.dept-info{display:flex;justify-content:space-between;align-items:center}.dept-name{font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.dept-count{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.dept-bar-container{height:8px;background:var(--color-background-subtle);border-radius:var(--radius-full);overflow:hidden}.dept-bar{height:100%;border-radius:var(--radius-full);transition:width var(--transition-slow)}.dept-bar.used{background:linear-gradient(90deg,var(--color-primary) 0%,var(--color-primary-light) 100%)}.dept-stats{display:flex;justify-content:space-between;font-size:var(--font-size-xs)}.dept-stats .used{color:var(--color-primary);font-weight:var(--font-weight-medium)}.dept-stats .remaining{color:var(--color-text-tertiary)}.role-breakdown{display:flex;flex-direction:column;gap:var(--spacing-sm)}.role-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-background);border-radius:var(--radius-md);transition:all var(--transition-fast)}.role-item:hover{background:var(--color-background-subtle)}.role-label{display:flex;align-items:center;gap:var(--spacing-sm)}.role-dot{width:10px;height:10px;border-radius:50%}.role-name{font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.role-stats{display:flex;align-items:center;gap:var(--spacing-md)}.role-count{font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.role-percent{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.leave-type-breakdown{display:flex;flex-direction:column;gap:var(--spacing-sm)}.leave-type-item{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-background);border-radius:var(--radius-md)}.leave-type-item .emp-name{font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm)}.type-bars{display:flex;gap:var(--spacing-xs);flex-wrap:wrap}.type-tag{font-size:var(--font-size-xs);padding:2px 8px;border-radius:var(--radius-full);font-weight:var(--font-weight-medium)}.type-tag.annual{background:var(--color-success-light);color:var(--color-success-dark)}.type-tag.sick{background:var(--color-error-light);color:var(--color-error-dark)}.type-tag.personal{background:var(--color-info-light);color:var(--color-info-dark)}.no-data{text-align:center;color:var(--color-text-tertiary);padding:var(--spacing-lg)}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.summary-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-md);text-align:center;transition:all var(--transition-fast)}.summary-card:hover{box-shadow:var(--shadow-sm)}.summary-card.highlight-green{border-color:var(--color-success);background:linear-gradient(135deg,var(--color-success-light) 0%,#d1fae5 100%)}.summary-card.highlight-blue{border-color:var(--color-info);background:linear-gradient(135deg,var(--color-info-light) 0%,#dbeafe 100%)}.summary-card.highlight-red{border-color:var(--color-error);background:linear-gradient(135deg,var(--color-error-light) 0%,#fee2e2 100%)}.summary-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);margin-bottom:var(--spacing-xs)}.summary-value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);font-family:var(--font-display)}.table-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.table-header h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.record-count{font-size:var(--font-size-sm);color:var(--color-text-secondary);background:var(--color-background-subtle);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-full);font-weight:var(--font-weight-medium)}.report-table-wrapper{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-md)}.report-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.report-table th{background:var(--color-background);padding:var(--spacing-sm) var(--spacing-md);text-align:left;font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);white-space:nowrap;border-bottom:2px solid var(--color-border)}.report-table td{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border-light);color:var(--color-text-primary);vertical-align:middle}.report-table tbody tr:hover{background:var(--color-background)}.report-table tbody tr:last-child td{border-bottom:none}.report-table tfoot{background:var(--color-background-subtle)}.report-table tfoot td{border-bottom:none;font-weight:var(--font-weight-semibold)}.text-right{text-align:right}.text-center{text-align:center}.emp-cell{display:flex;flex-direction:column}.emp-cell strong{color:var(--color-text-primary)}.emp-position{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.email-cell{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.balance-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm)}.balance-badge.high{background:var(--color-success-light);color:var(--color-success-dark)}.balance-badge.medium{background:var(--color-warning-light);color:var(--color-warning-dark)}.balance-badge.low{background:var(--color-error-light);color:var(--color-error-dark)}.utilization-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-weight:var(--font-weight-semibold);font-size:var(--font-size-xs)}.utilization-badge.high{background:var(--color-success-light);color:var(--color-success-dark)}.utilization-badge.medium{background:var(--color-warning-light);color:var(--color-warning-dark)}.utilization-badge.low{background:var(--color-background-subtle);color:var(--color-text-secondary)}.liability{font-weight:var(--font-weight-semibold);color:var(--color-error)}.role-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-weight:var(--font-weight-semibold);font-size:var(--font-size-xs);text-transform:capitalize}.role-badge.role-admin{background:var(--color-error-light);color:var(--color-error-dark)}.role-badge.role-hr{background:#f3e8ff;color:#7c3aed}.role-badge.role-manager{background:var(--color-warning-light);color:var(--color-warning-dark)}.role-badge.role-finance{background:var(--color-success-light);color:var(--color-success-dark)}.role-badge.role-employee{background:var(--color-info-light);color:var(--color-info-dark)}.leave-type-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-weight:var(--font-weight-medium);font-size:var(--font-size-xs);text-transform:capitalize}.leave-type-badge.annual{background:var(--color-success-light);color:var(--color-success-dark)}.leave-type-badge.sick{background:var(--color-error-light);color:var(--color-error-dark)}.leave-type-badge.personal{background:var(--color-info-light);color:var(--color-info-dark)}.leave-type-badge.unpaid{background:var(--color-background-subtle);color:var(--color-text-secondary)}.status-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-weight:var(--font-weight-semibold);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.3px}.reason-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.monthly-table .month-col{min-width:50px;font-size:var(--font-size-xs)}.monthly-table .month-cell{padding:var(--spacing-xs)}.month-hours{display:inline-block;background:var(--color-info-light);color:var(--color-info-dark);padding:2px 8px;border-radius:var(--radius-md);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.month-empty{color:var(--color-text-tertiary)}.sticky-col{position:sticky;left:0;background:var(--color-surface);z-index:1}.report-table thead .sticky-col,.report-table tbody tr:hover .sticky-col{background:var(--color-background)}.no-data-cell{text-align:center;padding:var(--spacing-3xl)!important;color:var(--color-text-tertiary)}.report-section{margin-bottom:var(--spacing-lg)}@media(max-width:768px){.reports-page-v2{padding:var(--spacing-md)}.report-nav{overflow-x:auto;padding-bottom:var(--spacing-sm);-webkit-overflow-scrolling:touch}.nav-btn{white-space:nowrap;flex-shrink:0}.filter-row{flex-direction:column;align-items:stretch}.filter-item{min-width:100%}.filter-actions{margin-left:0;margin-top:var(--spacing-sm)}.kpi-grid,.summary-cards{grid-template-columns:repeat(2,1fr)}.dashboard-charts{grid-template-columns:1fr}.reports-page-v2 .page-header h1{font-size:var(--font-size-2xl)}}.hr-documents-page{padding:var(--spacing-xl)}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-xl)}.header-left h1{margin:0 0 var(--spacing-xs);color:var(--color-text-primary)}.header-subtitle{color:var(--color-text-secondary);margin:0}.documents-card{padding:var(--spacing-lg)}.documents-toolbar{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.documents-toolbar .search-box{flex:1;max-width:400px;position:relative}.documents-toolbar .search-icon{position:absolute;left:var(--spacing-md);top:50%;transform:translateY(-50%);color:var(--color-text-tertiary)}.documents-toolbar .search-box input{width:100%;padding:var(--spacing-sm) var(--spacing-md) var(--spacing-sm) 2.5rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);font-size:var(--font-size-sm)}.documents-toolbar .search-box input:focus{outline:none;border-color:var(--color-primary)}.filter-toggle{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-secondary);transition:all var(--transition-fast)}.filter-toggle:hover,.filter-toggle.active{background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary)}.filters-panel{display:flex;gap:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-background);border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg)}.filter-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.filter-group label{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.filter-group select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);min-width:150px}.loading-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl);color:var(--color-text-tertiary)}.empty-icon{font-size:3rem;margin-bottom:var(--spacing-md);opacity:.5}.documents-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--spacing-lg)}.document-card{display:flex;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-fast)}.document-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.document-icon{flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--color-background);border-radius:var(--radius-md);font-size:1.5rem;color:var(--color-text-secondary)}.document-icon .icon-pdf{color:#ef4444}.document-icon .icon-word{color:#2563eb}.document-icon .icon-excel{color:#16a34a}.document-icon .icon-ppt{color:#ea580c}.document-icon .icon-image{color:#8b5cf6}.document-info{flex:1;min-width:0}.document-title{margin:0 0 var(--spacing-xs);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.document-description{margin:0 0 var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-text-secondary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.document-meta{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.category-badge{padding:2px 8px;border-radius:var(--radius-full);font-weight:var(--font-weight-medium);text-transform:capitalize}.category-policy{background:#ef44441a;color:#ef4444}.category-handbook{background:#3b82f61a;color:#3b82f6}.category-form{background:#10b9811a;color:#10b981}.category-training{background:#8b5cf61a;color:#8b5cf6}.category-benefits{background:#f973161a;color:#f97316}.category-compliance{background:#ec48991a;color:#ec4899}.category-general{background:#6b72801a;color:#6b7280}.document-actions{display:flex;flex-direction:column;gap:var(--spacing-xs);align-items:center}.action-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:var(--color-background);color:var(--color-text-secondary)}.action-btn:hover{background:var(--color-primary-light);color:var(--color-primary)}.action-btn.download:hover{background:#10b9811a;color:#10b981}.action-btn.acknowledge:hover{background:#3b82f61a;color:#3b82f6}.action-btn.delete:hover{background:#ef44441a;color:#ef4444}.acknowledged-badge{width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--color-success)}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--spacing-lg)}.modal{background:var(--color-surface);border-radius:var(--radius-xl);width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl)}.modal.modal-sm{max-width:400px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.modal-header h2{margin:0;font-size:var(--font-size-lg);color:var(--color-text-primary)}.modal-close{background:none;border:none;font-size:var(--font-size-lg);color:var(--color-text-tertiary);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-md);transition:all var(--transition-fast)}.modal-close:hover{background:var(--color-background);color:var(--color-text-primary)}.modal-body{padding:var(--spacing-lg)}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-lg);border-top:1px solid var(--color-border)}.form-group{margin-bottom:var(--spacing-md)}.form-group label{display:block;margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.form-group input[type=text],.form-group textarea,.form-group select{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);background:var(--color-surface)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--color-primary)}.form-group textarea{resize:vertical}.checkbox-group label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer}.checkbox-group input[type=checkbox]{width:18px;height:18px;cursor:pointer}.checkbox-group span{font-size:var(--font-size-sm);color:var(--color-text-primary)}.file-upload-area{position:relative}.file-upload-area input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.file-placeholder,.file-selected{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-xl);border:2px dashed var(--color-border);border-radius:var(--radius-lg);background:var(--color-background);text-align:center}.file-placeholder svg{font-size:2rem;color:var(--color-text-tertiary)}.file-placeholder span{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.file-hint{font-size:var(--font-size-xs)!important;color:var(--color-text-tertiary)!important}.file-selected{flex-direction:row;padding:var(--spacing-md);border-style:solid;border-color:var(--color-primary);background:var(--color-primary-light)}.file-selected svg{font-size:1.5rem;color:var(--color-primary)}.file-selected span{font-size:var(--font-size-sm);color:var(--color-text-primary)}.file-size{color:var(--color-text-tertiary)!important}.acknowledge-text{margin:0 0 var(--spacing-md);color:var(--color-text-secondary)}.acknowledge-title{margin:0;font-weight:var(--font-weight-semibold);color:var(--color-text-primary);font-style:italic}.acknowledgment-stats{display:flex;gap:var(--spacing-xl);padding:var(--spacing-lg);background:var(--color-background);border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg)}.stat{display:flex;flex-direction:column;align-items:center}.stat-value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-primary)}.stat-label{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.no-acknowledgments{text-align:center;color:var(--color-text-tertiary);padding:var(--spacing-lg)}.acknowledgment-list{list-style:none;margin:0;padding:0;max-height:300px;overflow-y:auto}.acknowledgment-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--color-border-light)}.acknowledgment-item:last-child{border-bottom:none}.ack-info{display:flex;flex-direction:column}.ack-name{font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.ack-dept,.ack-date{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}@media(max-width:768px){.hr-documents-page{padding:var(--spacing-md)}.page-header{flex-direction:column;gap:var(--spacing-md)}.documents-toolbar{flex-direction:column}.documents-toolbar .search-box{max-width:none}.documents-grid{grid-template-columns:1fr}.document-card{flex-direction:column}.document-actions{flex-direction:row;justify-content:flex-end}}.settlement-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.summary-card{background:#fff;border-radius:12px;padding:1.25rem;display:flex;flex-direction:column;box-shadow:0 2px 8px #00000014;border-left:4px solid #6366f1}.summary-card.settled{border-left-color:#10b981}.summary-card.unsettled{border-left-color:#f59e0b}.summary-label{font-size:.875rem;color:#64748b;margin-bottom:.5rem}.summary-value{font-size:1.5rem;font-weight:700;color:#1e293b}.filters-card{margin-bottom:1.5rem}.filters-row{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.filter-group{display:flex;flex-direction:column;gap:.5rem;min-width:150px}.filter-group label{font-size:.875rem;font-weight:500;color:#475569}.filter-group input,.filter-group select{padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;background:#fff}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.filters-actions{display:flex;gap:.75rem;justify-content:flex-end;flex-wrap:wrap}.table-container{overflow-x:auto}.settlement-table{width:100%;border-collapse:collapse}.settlement-table th,.settlement-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #e2e8f0}.settlement-table th{background:#f8fafc;font-weight:600;color:#475569;font-size:.875rem}.settlement-table tbody tr:hover{background:#f8fafc}.settlement-table .settled-row{background:#f0fdf4}.settlement-table .settled-row:hover{background:#dcfce7}.employee-cell{display:flex;flex-direction:column}.emp-name{font-weight:600;color:#1e293b}.emp-number{font-size:.75rem;color:#64748b}.leave-type-badge{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:capitalize}.leave-type-badge.annual{background:#dbeafe;color:#1e40af}.leave-type-badge.sick{background:#fee2e2;color:#dc2626}.leave-type-badge.personal{background:#fef3c7;color:#d97706}.leave-type-badge.unpaid{background:#f1f5f9;color:#475569}.settlement-info{display:flex;flex-direction:column;gap:.25rem}.settled-badge{display:inline-flex;align-items:center;gap:.25rem;color:#10b981;font-weight:600;font-size:.875rem}.settled-date,.settled-by{font-size:.75rem;color:#64748b}.unsettled-badge{display:inline-block;padding:.25rem .75rem;background:#fef3c7;color:#d97706;border-radius:20px;font-size:.75rem;font-weight:600}@media(max-width:768px){.settlement-summary{grid-template-columns:repeat(2,1fr)}.filters-row{flex-direction:column}.filter-group{width:100%}.filters-actions{justify-content:stretch}.filters-actions button{flex:1}}.app{display:flex;min-height:100vh}.app-content{flex:1;margin-left:var(--sidebar-width);transition:margin-left var(--transition-base)}.app-content.sidebar-collapsed{margin-left:var(--sidebar-collapsed-width)}.main-content{margin-top:var(--topbar-height);min-height:calc(100vh - var(--topbar-height));background-color:var(--color-background)}.placeholder-page{padding:var(--spacing-2xl);text-align:center;font-size:var(--font-size-xl);color:var(--color-text-secondary)}@media(max-width:768px){.app-content,.app-content.sidebar-collapsed{margin-left:0}}.sidebar-overlay{position:fixed;inset:0;background:#00000080;z-index:999;opacity:0;visibility:hidden;transition:all .3s ease}.sidebar-overlay.visible{opacity:1;visibility:visible}
