:root{--ejar-primary-50:#E8F7EE;--ejar-primary-100:#C7EAD8;--ejar-primary-200:#8FD4B1;--ejar-primary-300:#5FBD8E;--ejar-primary-400:#3BA874;--ejar-primary-500:#25935F;--ejar-primary-600:#188352;--ejar-primary-700:#166A45;--ejar-primary-800:#0F5535;--ejar-primary-900:#0A3D26;--ejar-primary-950:#052918;--ejar-gold:#F5BD02;--ejar-gold-hover:#D4A302;--ejar-gold-light:#FFFAEB;--ejar-neutral-50:#F9FAFB;--ejar-neutral-100:#F3F4F6;--ejar-neutral-200:#E5E7EB;--ejar-neutral-300:#CFD4DB;--ejar-neutral-400:#A8AEB8;--ejar-neutral-500:#8A919C;--ejar-neutral-600:#6C737F;--ejar-neutral-700:#434B5A;--ejar-neutral-800:#2D3340;--ejar-neutral-900:#1A1F2B;--ejar-neutral-950:#0D121C;--ejar-success:#17B26A;--ejar-success-light:#ECFDF5;--ejar-success-dark:#0F8A51;--ejar-warning:#F79009;--ejar-warning-light:#FFFAEB;--ejar-warning-dark:#B54708;--ejar-error:#F04438;--ejar-error-light:#FEF3F2;--ejar-error-dark:#B42318;--ejar-info:#2E90FA;--ejar-info-light:#EFF8FF;--ejar-info-dark:#175CD3;--ejar-lavender:#80519F;--ejar-saudi-green:#006C35;--color-primary-active:var(--ejar-primary-700);--color-primary-light:var(--ejar-primary-50);--color-primary-surface:var(--ejar-primary-50);--color-secondary:var(--ejar-gold);--color-secondary-hover:var(--ejar-gold-hover);--color-secondary-light:var(--ejar-gold-light);--color-accent:var(--ejar-gold);--color-accent-hover:var(--ejar-gold-hover);--color-accent-light:var(--ejar-gold-light);--color-text-primary:var(--ejar-neutral-800);--color-text-secondary:var(--ejar-neutral-600);--color-text-tertiary:var(--ejar-neutral-500);--color-text-disabled:var(--ejar-neutral-400);--color-text-inverse:#FFFFFF;--color-text-on-primary:#FFFFFF;--color-bg-page:var(--ejar-neutral-50);--color-bg-card:#FFFFFF;--color-bg-elevated:#FFFFFF;--color-bg-sidebar:var(--ejar-neutral-950);--color-bg-header:var(--ejar-primary-500);--color-bg-footer:var(--ejar-neutral-950);--color-border-primary:var(--ejar-neutral-200);--color-border-secondary:var(--ejar-neutral-300);--color-border-soft:var(--ejar-neutral-200);--color-border-input:var(--ejar-neutral-300);--color-border-focus:var(--ejar-primary-500);--color-success:var(--ejar-success);--color-warning:var(--ejar-warning);--color-error:var(--ejar-error);--color-info:var(--ejar-info);--topbar-bg:var(--ejar-primary-500);--topbar-text:#FFFFFF;--topbar-border:var(--ejar-primary-600);--topbar-hover:rgba(255,255,255,0.1);--sidebar-bg:var(--ejar-neutral-950);--sidebar-text:#FFFFFF;--sidebar-text-muted:var(--ejar-neutral-400);--sidebar-hover:var(--ejar-neutral-900);--sidebar-active:var(--ejar-primary-600);--sidebar-border:var(--ejar-neutral-800);--footer-bg:var(--ejar-neutral-950);--footer-text:#FFFFFF;--footer-text-muted:var(--ejar-neutral-400);--card-bg:#FFFFFF;--card-border:var(--ejar-neutral-200);--card-shadow:0 1px 3px rgba(0,0,0,0.1);--btn-primary-bg:var(--ejar-primary-500);--btn-primary-text:#FFFFFF;--btn-primary-hover:var(--ejar-primary-600);--btn-primary-active:var(--ejar-primary-700);--btn-secondary-bg:transparent;--btn-secondary-text:var(--ejar-primary-500);--btn-secondary-border:var(--ejar-primary-500);--btn-secondary-hover:var(--ejar-primary-50);--input-bg:#FFFFFF;--input-border:var(--ejar-neutral-300);--input-border-focus:var(--ejar-primary-500);--input-text:var(--ejar-neutral-800);--input-placeholder:var(--ejar-neutral-500);--color-chart-primary:#8884d8;--color-chart-blue:#0088FE;--color-chart-teal:#00C49F;--color-chart-yellow:#FFBB28;--color-chart-orange:#FF8042;--color-chart-purple:#8884D8;--color-chart-green:var(--ejar-primary-500);--color-chart-red:var(--ejar-error);--color-sparkline-blue:#0061A8;--color-sparkline-orange:#F97316;--color-sparkline-green:#10B981;--color-sparkline-sky:#3B82F6;--color-fz-green-50:var(--ejar-primary-50);--color-fz-green-100:var(--ejar-primary-100);--color-fz-green-200:var(--ejar-primary-200);--color-fz-green-300:var(--ejar-primary-300);--color-fz-green-400:var(--ejar-primary-400);--color-fz-green-500:var(--ejar-primary-500);--color-fz-green-600:var(--ejar-primary-600);--color-fz-green-700:var(--ejar-primary-700);--color-fz-green-800:var(--ejar-primary-800);--color-fz-green-900:var(--ejar-primary-900);--color-fz-brown-50:var(--ejar-neutral-50);--color-fz-brown-100:var(--ejar-neutral-100);--color-fz-brown-200:var(--ejar-neutral-200);--color-fz-brown-300:var(--ejar-neutral-300);--color-fz-brown-400:var(--ejar-neutral-400);--color-fz-brown-500:var(--ejar-neutral-700);--color-fz-brown-600:var(--ejar-neutral-800);--color-fz-brown-700:var(--ejar-neutral-900);--color-fz-brown-800:var(--ejar-neutral-950);--color-fz-brown-900:var(--ejar-neutral-950);--color-platform-fm-blue:var(--ejar-primary-500);--color-ejar-green:var(--ejar-primary-500);--color-ejar-green-hover:var(--ejar-primary-600);--color-ejar-green-active:var(--ejar-primary-700);--color-brand-primary:var(--ejar-primary-500);--color-brand-primary-hover:var(--ejar-primary-600);--color-brand-primary-active:var(--ejar-primary-700);--color-brand-primary-surface:var(--ejar-primary-50);--color-brand-secondary:var(--ejar-gold);--color-primary:var(--ejar-primary-500);--color-primary-hover:var(--ejar-primary-600);--color-primary-subtle:var(--ejar-primary-50);--color-text-heading:var(--ejar-neutral-700);--color-bg-tertiary:var(--ejar-primary-50);--font-family-base:var(--font-ibm-plex-arabic,"IBM Plex Sans Arabic"),system-ui,sans-serif;--font-family-heading:var(--font-alexandria,"Alexandria"),var(--font-family-base);--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-md:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:2rem;--spacing-1:0.25rem;--spacing-2:0.5rem;--spacing-3:0.75rem;--spacing-4:1rem;--spacing-5:1.25rem;--spacing-6:1.5rem;--spacing-8:2rem;--spacing-10:2.5rem;--spacing-12:3rem;--radius-sm:0.25rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-full:9999px;--shadow-xs:0 1px 2px rgba(0,0,0,0.05);--shadow-sm:0 1px 3px rgba(0,0,0,0.1);--shadow-md:0 4px 6px rgba(0,0,0,0.1);--shadow-lg:0 10px 15px rgba(0,0,0,0.1);--shadow-xl:0 20px 25px rgba(0,0,0,0.15);--shadow-card:var(--shadow-sm);--shadow-elevated:var(--shadow-md);--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070;--z-toast:1080;--transition-fast:150ms ease;--transition-base:200ms ease;--transition-slow:300ms ease}.dark,[data-theme=dark]{--color-text-primary:var(--ejar-neutral-100);--color-text-secondary:var(--ejar-neutral-300);--color-text-tertiary:var(--ejar-neutral-400);--color-bg-page:var(--ejar-neutral-900);--color-bg-card:var(--ejar-neutral-800);--color-bg-elevated:var(--ejar-neutral-800);--color-border-primary:var(--ejar-neutral-700);--color-border-secondary:var(--ejar-neutral-600);--card-bg:var(--ejar-neutral-800);--card-border:var(--ejar-neutral-700);--input-bg:var(--ejar-neutral-800);--input-border:var(--ejar-neutral-600);--input-text:var(--ejar-neutral-100);--topbar-bg:var(--ejar-primary-500);--topbar-text:#FFFFFF}.ejar-topbar{background-color:var(--topbar-bg);color:var(--topbar-text);border-bottom:1px solid var(--topbar-border)}.ejar-topbar *{color:inherit}.ejar-topbar a:hover,.ejar-topbar button:hover{background-color:var(--topbar-hover)}.ejar-sidebar{background-color:var(--sidebar-bg);color:var(--sidebar-text)}.ejar-footer{background-color:var(--footer-bg);color:var(--footer-text)}.ejar-btn-primary{background-color:var(--btn-primary-bg);color:var(--btn-primary-text);border:none;border-radius:var(--radius-md);padding:var(--spacing-3) var(--spacing-6);font-weight:var(--font-weight-semibold);transition:background-color var(--transition-fast)}.ejar-btn-primary:hover{background-color:var(--btn-primary-hover)}.ejar-btn-primary:active{background-color:var(--btn-primary-active)}.ejar-card{background-color:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);box-shadow:var(--card-shadow)}:root{--direction-multiplier:1;--offset-inline-start:-20px;--offset-inline-end:20px;--slide-inline-start:-100%;--slide-inline-end:100%}[dir=rtl]{--direction-multiplier:-1;--offset-inline-start:20px;--offset-inline-end:-20px;--slide-inline-start:100%;--slide-inline-end:-100%}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@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 fadeInLeft{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeInStart{0%{opacity:0;transform:translateX(var(--offset-inline-start))}to{opacity:1;transform:translateX(0)}}@keyframes fadeInEnd{0%{opacity:0;transform:translateX(var(--offset-inline-end))}to{opacity:1;transform:translateX(0)}}@keyframes fadeOutStart{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(var(--offset-inline-start))}}@keyframes fadeOutEnd{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(var(--offset-inline-end))}}@keyframes fadeOutUp{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-20px)}}@keyframes fadeOutDown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20px)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes slideInUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideInDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideInLeft{0%{transform:translateX(-100%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes slideInRight{0%{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes slideInStart{0%{transform:translateX(var(--slide-inline-start));opacity:0}to{transform:translateX(0);opacity:1}}@keyframes slideInEnd{0%{transform:translateX(var(--slide-inline-end));opacity:0}to{transform:translateX(0);opacity:1}}@keyframes slideOutUp{0%{transform:translateY(0);opacity:1}to{transform:translateY(-100%);opacity:0}}@keyframes slideOutDown{0%{transform:translateY(0);opacity:1}to{transform:translateY(100%);opacity:0}}@keyframes slideOutLeft{0%{transform:translateX(0);opacity:1}to{transform:translateX(-100%);opacity:0}}@keyframes slideOutRight{0%{transform:translateX(0);opacity:1}to{transform:translateX(100%);opacity:0}}@keyframes slideOutStart{0%{transform:translateX(0);opacity:1}to{transform:translateX(var(--slide-inline-start));opacity:0}}@keyframes slideOutEnd{0%{transform:translateX(0);opacity:1}to{transform:translateX(var(--slide-inline-end));opacity:0}}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}@keyframes scaleOut{0%{transform:scale(1);opacity:1}to{transform:scale(.9);opacity:0}}@keyframes scaleInCenter{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@keyframes zoomIn{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}@keyframes zoomOut{0%{transform:scale(1);opacity:1}to{transform:scale(.5);opacity:0}}@keyframes popIn{0%{transform:scale(0);opacity:0}70%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}@keyframes popOut{0%{transform:scale(1);opacity:1}30%{transform:scale(1.1)}to{transform:scale(0);opacity:0}}@keyframes bounce{0%,to{transform:translateY(-5%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:translateY(0);animation-timing-function:cubic-bezier(0,0,.2,1)}}@keyframes bounceIn{0%{transform:scale(.3);opacity:0}50%{transform:scale(1.05)}70%{transform:scale(.9)}to{transform:scale(1);opacity:1}}@keyframes bounceOut{0%{transform:scale(1);opacity:1}25%{transform:scale(.95)}50%{transform:scale(1.1);opacity:.7}to{transform:scale(.3);opacity:0}}@keyframes bounceInUp{0%{transform:translateY(100%) scale(.9);opacity:0}60%{transform:translateY(-10%) scale(1.02);opacity:1}80%{transform:translateY(5%)}to{transform:translateY(0) scale(1)}}@keyframes bounceInDown{0%{transform:translateY(-100%) scale(.9);opacity:0}60%{transform:translateY(10%) scale(1.02);opacity:1}80%{transform:translateY(-5%)}to{transform:translateY(0) scale(1)}}@keyframes bounceInLeft{0%{transform:translateX(-100%) scale(.9);opacity:0}60%{transform:translateX(10%) scale(1.02);opacity:1}80%{transform:translateX(-5%)}to{transform:translateX(0) scale(1)}}@keyframes bounceInRight{0%{transform:translateX(100%) scale(.9);opacity:0}60%{transform:translateX(-10%) scale(1.02);opacity:1}80%{transform:translateX(5%)}to{transform:translateX(0) scale(1)}}@keyframes bounceSoft{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes bounceSubtle{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes pulseSoft{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(.98)}}@keyframes pulseRing{0%{transform:scale(.8);opacity:.8}to{transform:scale(2);opacity:0}}@keyframes heartbeat{0%{transform:scale(1)}14%{transform:scale(1.15)}28%{transform:scale(1)}42%{transform:scale(1.15)}70%{transform:scale(1)}}@keyframes ping{75%,to{transform:scale(2);opacity:0}}@keyframes shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-4px)}20%,40%,60%,80%{transform:translateX(4px)}}@keyframes shakeX{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}50%{transform:translateX(5px)}75%{transform:translateX(-5px)}}@keyframes shakeY{0%,to{transform:translateY(0)}25%{transform:translateY(-5px)}50%{transform:translateY(5px)}75%{transform:translateY(-5px)}}@keyframes wiggle{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes wobble{0%{transform:translateX(0) rotate(0deg)}15%{transform:translateX(-15px) rotate(-5deg)}30%{transform:translateX(10px) rotate(3deg)}45%{transform:translateX(-10px) rotate(-3deg)}60%{transform:translateX(5px) rotate(2deg)}75%{transform:translateX(-5px) rotate(-1deg)}to{transform:translateX(0) rotate(0deg)}}@keyframes jello{0%,to{transform:skewX(0deg) skewY(0deg)}11.1%{transform:skewX(-12.5deg) skewY(-12.5deg)}22.2%{transform:skewX(6.25deg) skewY(6.25deg)}33.3%{transform:skewX(-3.125deg) skewY(-3.125deg)}44.4%{transform:skewX(1.5625deg) skewY(1.5625deg)}55.5%{transform:skewX(-.78125deg) skewY(-.78125deg)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes spinReverse{0%{transform:rotate(1turn)}to{transform:rotate(0deg)}}@keyframes rotateIn{0%{transform:rotate(-200deg);opacity:0}to{transform:rotate(0deg);opacity:1}}@keyframes rotateOut{0%{transform:rotate(0deg);opacity:1}to{transform:rotate(200deg);opacity:0}}@keyframes flip{0%{transform:perspective(400px) rotateY(0)}to{transform:perspective(400px) rotateY(1turn)}}@keyframes flipX{0%{transform:perspective(400px) rotateX(90deg);opacity:0}40%{transform:perspective(400px) rotateX(-10deg)}70%{transform:perspective(400px) rotateX(10deg)}to{transform:perspective(400px) rotateX(0deg);opacity:1}}@keyframes flipY{0%{transform:perspective(400px) rotateY(90deg);opacity:0}40%{transform:perspective(400px) rotateY(-10deg)}70%{transform:perspective(400px) rotateY(10deg)}to{transform:perspective(400px) rotateY(0deg);opacity:1}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes skeleton{0%{background-color:hsl(220,17%,93%)}to{background-color:hsl(220,17%,88%)}}@keyframes progress{0%{width:0}to{width:100%}}@keyframes progressIndeterminate{0%{left:-35%;right:100%}60%{left:100%;right:-90%}to{left:100%;right:-90%}}@keyframes dotPulse{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}@keyframes spinnerGrow{0%{transform:scale(0);opacity:0}50%{opacity:1}to{transform:scale(1);opacity:0}}@keyframes loadingBar{0%{transform:scaleX(0);transform-origin:left}50%{transform:scaleX(1);transform-origin:left}50.1%{transform-origin:right}to{transform:scaleX(0);transform-origin:right}}@keyframes flash{0%,50%,to{opacity:1}25%,75%{opacity:0}}@keyframes rubberBand{0%{transform:scaleX(1)}30%{transform:scaleX(1.25) scaleY(.75)}40%{transform:scaleX(.75) scaleY(1.25)}50%{transform:scaleX(1.15) scaleY(.85)}65%{transform:scaleX(.95) scaleY(1.05)}75%{transform:scaleX(1.05) scaleY(.95)}to{transform:scaleX(1)}}@keyframes tada{0%{transform:scale(1) rotate(0deg)}10%,20%{transform:scale(.9) rotate(-3deg)}30%,50%,70%,90%{transform:scale(1.1) rotate(3deg)}40%,60%,80%{transform:scale(1.1) rotate(-3deg)}to{transform:scale(1) rotate(0deg)}}@keyframes swing{20%{transform:rotate(15deg)}40%{transform:rotate(-10deg)}60%{transform:rotate(5deg)}80%{transform:rotate(-5deg)}to{transform:rotate(0deg)}}@keyframes headShake{0%{transform:translateX(0)}6.5%{transform:translateX(-6px) rotateY(-9deg)}18.5%{transform:translateX(5px) rotateY(7deg)}31.5%{transform:translateX(-3px) rotateY(-5deg)}43.5%{transform:translateX(2px) rotateY(3deg)}50%{transform:translateX(0)}}@keyframes modalIn{0%{transform:scale(.95) translateY(10px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}@keyframes modalOut{0%{transform:scale(1) translateY(0);opacity:1}to{transform:scale(.95) translateY(10px);opacity:0}}@keyframes overlayIn{0%{opacity:0}to{opacity:1}}@keyframes overlayOut{0%{opacity:1}to{opacity:0}}@keyframes drawerInRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes drawerOutRight{0%{transform:translateX(0)}to{transform:translateX(100%)}}@keyframes drawerInLeft{0%{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes drawerOutLeft{0%{transform:translateX(0)}to{transform:translateX(-100%)}}@keyframes dropdownIn{0%{transform:scaleY(.8) translateY(-5px);opacity:0;transform-origin:top}to{transform:scaleY(1) translateY(0);opacity:1;transform-origin:top}}@keyframes dropdownOut{0%{transform:scaleY(1) translateY(0);opacity:1;transform-origin:top}to{transform:scaleY(.8) translateY(-5px);opacity:0;transform-origin:top}}@keyframes toastSlideIn{0%{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes toastSlideOut{0%{transform:translateX(0);opacity:1}to{transform:translateX(100%);opacity:0}}@keyframes toastSlideInRTL{0%{transform:translateX(-100%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes toastSlideOutRTL{0%{transform:translateX(0);opacity:1}to{transform:translateX(-100%);opacity:0}}@keyframes notificationBounce{0%{transform:translateY(-100%) scale(.9);opacity:0}50%{transform:translateY(10%) scale(1.02)}70%{transform:translateY(-5%)}to{transform:translateY(0) scale(1);opacity:1}}@keyframes accordionDown{0%{height:0}to{height:var(--radix-accordion-content-height)}}@keyframes accordionUp{0%{height:var(--radix-accordion-content-height)}to{height:0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes floatShadow{0%,to{transform:translateY(0);box-shadow:0 5px 15px rgba(0,0,0,.1)}50%{transform:translateY(-10px);box-shadow:0 15px 25px rgba(0,0,0,.15)}}@keyframes levitate{0%{transform:translateY(0) rotate(0deg)}25%{transform:translateY(-5px) rotate(1deg)}50%{transform:translateY(-10px) rotate(0deg)}75%{transform:translateY(-5px) rotate(-1deg)}to{transform:translateY(0) rotate(0deg)}}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@keyframes aurora{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@keyframes colorPulse{0%,to{background-color:var(--color-primary)}50%{background-color:var(--color-primary-hover)}}@keyframes scrollRevealUp{0%{transform:translateY(60px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes scrollRevealDown{0%{transform:translateY(-60px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes scrollRevealLeft{0%{transform:translateX(-60px);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes scrollRevealRight{0%{transform:translateX(60px);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes scrollRevealScale{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}@keyframes typing{0%{width:0}to{width:100%}}@keyframes blink{0%,to{border-color:transparent}50%{border-color:currentColor}}@keyframes cursor{0%,to{opacity:1}50%{opacity:0}}@keyframes ripple{0%{transform:scale(0);opacity:.5}to{transform:scale(4);opacity:0}}@keyframes glow{0%,to{box-shadow:0 0 5px var(--color-primary)}50%{box-shadow:0 0 20px var(--color-primary),0 0 30px var(--color-primary-hover)}}@keyframes glowPulse{0%,to{opacity:1;filter:drop-shadow(0 0 2px var(--color-primary))}50%{opacity:.8;filter:drop-shadow(0 0 10px var(--color-primary))}}@keyframes rowHighlight{0%{background-color:transparent}50%{background-color:rgba(0,97,168,.1)}to{background-color:transparent}}.animate-fade-in{animation:fadeIn .3s var(--ease-out) forwards}.animate-fade-out{animation:fadeOut .2s var(--ease-in) forwards}.animate-fade-in-up{animation:fadeInUp .4s var(--ease-out) forwards}.animate-fade-in-down{animation:fadeInDown .4s var(--ease-out) forwards}.animate-fade-in-left{animation:fadeInLeft .4s var(--ease-out) forwards}.animate-fade-in-right{animation:fadeInRight .4s var(--ease-out) forwards}.animate-fade-out-up{animation:fadeOutUp .3s var(--ease-in) forwards}.animate-fade-out-down{animation:fadeOutDown .3s var(--ease-in) forwards}.animate-fade-in-scale{animation:fadeInScale .3s var(--ease-out) forwards}.animate-slide-in-up{animation:slideInUp .3s var(--ease-out) forwards}.animate-slide-in-down{animation:slideInDown .3s var(--ease-out) forwards}.animate-slide-in-left{animation:slideInLeft .3s var(--ease-out) forwards}.animate-slide-in-right{animation:slideInRight .3s var(--ease-out) forwards}.animate-slide-out-up{animation:slideOutUp .2s var(--ease-in) forwards}.animate-slide-out-down{animation:slideOutDown .2s var(--ease-in) forwards}.animate-slide-out-left{animation:slideOutLeft .2s var(--ease-in) forwards}.animate-slide-out-right{animation:slideOutRight .2s var(--ease-in) forwards}.animate-fade-in-start{animation:fadeInStart .4s var(--ease-out) forwards}.animate-fade-in-end{animation:fadeInEnd .4s var(--ease-out) forwards}.animate-fade-out-start{animation:fadeOutStart .3s var(--ease-in) forwards}.animate-fade-out-end{animation:fadeOutEnd .3s var(--ease-in) forwards}.animate-slide-in-start{animation:slideInStart .3s var(--ease-out) forwards}.animate-slide-in-end{animation:slideInEnd .3s var(--ease-out) forwards}.animate-slide-out-start{animation:slideOutStart .2s var(--ease-in) forwards}.animate-slide-out-end{animation:slideOutEnd .2s var(--ease-in) forwards}.animate-scale-in{animation:scaleIn .2s var(--ease-out) forwards}.animate-scale-out{animation:scaleOut .15s var(--ease-in) forwards}.animate-scale-in-center{animation:scaleInCenter .3s var(--ease-spring) forwards}.animate-zoom-in{animation:zoomIn .3s var(--ease-out) forwards}.animate-zoom-out{animation:zoomOut .2s var(--ease-in) forwards}.animate-pop-in{animation:popIn .4s var(--ease-spring) forwards}.animate-pop-out{animation:popOut .3s var(--ease-in) forwards}.animate-bounce{animation:bounce 1s infinite}.animate-bounce-in{animation:bounceIn .6s var(--ease-bounce) forwards}.animate-bounce-out{animation:bounceOut .4s var(--ease-in) forwards}.animate-bounce-in-up{animation:bounceInUp .6s var(--ease-out) forwards}.animate-bounce-in-down{animation:bounceInDown .6s var(--ease-out) forwards}.animate-bounce-in-left{animation:bounceInLeft .6s var(--ease-out) forwards}.animate-bounce-in-right{animation:bounceInRight .6s var(--ease-out) forwards}.animate-bounce-soft{animation:bounceSoft 1s ease-in-out infinite}.animate-bounce-subtle{animation:bounceSubtle 2s ease-in-out infinite}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-pulse-soft{animation:pulseSoft 2s var(--ease-in-out) infinite}.animate-pulse-ring{animation:pulseRing 1.5s cubic-bezier(0,0,.2,1) infinite}.animate-heartbeat{animation:heartbeat 1.5s var(--ease-in-out) infinite}.animate-ping{animation:ping 1s cubic-bezier(0,0,.2,1) infinite}.animate-shake{animation:shake .5s var(--ease-in-out)}.animate-shake-x{animation:shakeX .4s var(--ease-in-out)}.animate-shake-y{animation:shakeY .4s var(--ease-in-out)}.animate-wiggle{animation:wiggle .2s var(--ease-in-out) infinite}.animate-wobble{animation:wobble 1s var(--ease-in-out)}.animate-jello{animation:jello 1s var(--ease-in-out)}.animate-spin{animation:spin 1s linear infinite}.animate-spin-slow{animation:spin 3s linear infinite}.animate-spin-fast{animation:spin .5s linear infinite}.animate-spin-reverse{animation:spinReverse 1s linear infinite}.animate-rotate-in{animation:rotateIn .4s var(--ease-out) forwards}.animate-rotate-out{animation:rotateOut .3s var(--ease-in) forwards}.animate-flip{animation:flip 1s var(--ease-in-out)}.animate-flip-x{animation:flipX .6s var(--ease-out) forwards}.animate-flip-y{animation:flipY .6s var(--ease-out) forwards}.animate-shimmer{animation:shimmer 2s linear infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%}.animate-skeleton{animation:skeleton 1.5s var(--ease-in-out) infinite alternate}.animate-progress{animation:progress 2s var(--ease-out) forwards}.animate-progress-indeterminate{animation:progressIndeterminate 1.5s infinite}.animate-dot-pulse{animation:dotPulse 1.4s infinite var(--ease-in-out) both}.animate-spinner-grow{animation:spinnerGrow 1s linear infinite}.animate-loading-bar{animation:loadingBar 2s var(--ease-in-out) infinite}.animate-flash{animation:flash 1s var(--ease-in-out)}.animate-rubber-band{animation:rubberBand 1s var(--ease-in-out)}.animate-tada{animation:tada 1s var(--ease-in-out)}.animate-swing{animation:swing 1s var(--ease-in-out);transform-origin:top center}.animate-head-shake{animation:headShake 1s var(--ease-in-out)}.animate-modal-in{animation:modalIn .3s var(--ease-spring) forwards}.animate-modal-out{animation:modalOut .2s var(--ease-in) forwards}.animate-overlay-in{animation:overlayIn .2s var(--ease-out) forwards}.animate-overlay-out{animation:overlayOut .15s var(--ease-in) forwards}.animate-drawer-in-right{animation:drawerInRight .3s var(--ease-out) forwards}.animate-drawer-out-right{animation:drawerOutRight .2s var(--ease-in) forwards}.animate-drawer-in-left{animation:drawerInLeft .3s var(--ease-out) forwards}.animate-drawer-out-left{animation:drawerOutLeft .2s var(--ease-in) forwards}.animate-dropdown-in{animation:dropdownIn .2s var(--ease-out) forwards}.animate-dropdown-out{animation:dropdownOut .15s var(--ease-in) forwards}.animate-accordion-down{animation:accordionDown .2s ease-out}.animate-accordion-up{animation:accordionUp .2s ease-out}.animate-toast-in{animation:toastSlideIn .3s var(--ease-out) forwards}.animate-toast-out{animation:toastSlideOut .2s var(--ease-in) forwards}.animate-toast-in-rtl{animation:toastSlideInRTL .3s var(--ease-out) forwards}.animate-toast-out-rtl{animation:toastSlideOutRTL .2s var(--ease-in) forwards}.animate-notification-bounce{animation:notificationBounce .5s var(--ease-out) forwards}.animate-float{animation:float 3s var(--ease-in-out) infinite}.animate-float-shadow{animation:floatShadow 3s var(--ease-in-out) infinite}.animate-levitate{animation:levitate 4s var(--ease-in-out) infinite}.animate-gradient-shift{animation:gradientShift 4s ease infinite;background-size:200% 200%}.animate-aurora{animation:aurora 10s ease-in-out infinite alternate;background-size:400% 400%}.animate-color-pulse{animation:colorPulse 2s var(--ease-in-out) infinite}.animate-reveal-up{animation:scrollRevealUp .6s var(--ease-out) forwards}.animate-reveal-down{animation:scrollRevealDown .6s var(--ease-out) forwards}.animate-reveal-left{animation:scrollRevealLeft .6s var(--ease-out) forwards}.animate-reveal-right{animation:scrollRevealRight .6s var(--ease-out) forwards}.animate-reveal-scale{animation:scrollRevealScale .6s var(--ease-out) forwards}.animate-typing{animation:typing 2s steps(20) forwards;overflow:hidden;white-space:nowrap}.animate-blink{animation:blink 1s step-end infinite}.animate-cursor{animation:cursor 1s var(--ease-in-out) infinite}.animate-ripple{animation:ripple .6s linear}.animate-glow{animation:glow 2s var(--ease-in-out) infinite}.animate-glow-pulse{animation:glowPulse 2s var(--ease-in-out) infinite}.animate-row-highlight{animation:rowHighlight 1s ease-out}.delay-0{animation-delay:0s}.delay-75{animation-delay:75ms}.delay-100{animation-delay:.1s}.delay-150{animation-delay:.15s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-500{animation-delay:.5s}.delay-700{animation-delay:.7s}.delay-1000{animation-delay:1s}.duration-75{animation-duration:75ms}.duration-100{animation-duration:.1s}.duration-150{animation-duration:.15s}.duration-200{animation-duration:.2s}.duration-300{animation-duration:.3s}.duration-500{animation-duration:.5s}.duration-700{animation-duration:.7s}.duration-1000{animation-duration:1s}.fill-forwards{animation-fill-mode:forwards}.fill-backwards{animation-fill-mode:backwards}.fill-both{animation-fill-mode:both}.iterate-1{animation-iteration-count:1}.iterate-2{animation-iteration-count:2}.iterate-3{animation-iteration-count:3}.iterate-infinite{animation-iteration-count:infinite}.paused{animation-play-state:paused}.running{animation-play-state:running}.direction-normal{animation-direction:normal}.direction-reverse{animation-direction:reverse}.direction-alternate{animation-direction:alternate}.hover-lift{transition:transform .2s var(--ease-out),box-shadow .2s var(--ease-out)}.hover-lift:hover{transform:translateY(-4px);box-shadow:0 10px 25px rgba(0,0,0,.1)}.hover-scale{transition:transform .2s var(--ease-out)}.hover-scale:hover{transform:scale(1.05)}.hover-glow{transition:box-shadow .2s var(--ease-out)}.hover-glow:hover{box-shadow:0 0 20px var(--color-primary)}.active-scale:active{transform:scale(.95)}.transition-none{transition:none}.transition-all{transition:all .2s var(--ease-out)}.transition-colors{transition:color .15s var(--ease-out),background-color .15s var(--ease-out),border-color .15s var(--ease-out)}.transition-opacity{transition:opacity .15s var(--ease-out)}.transition-transform{transition:transform .2s var(--ease-out)}.transition-shadow{transition:box-shadow .2s var(--ease-out)}[dir=rtl] .animate-slide-in-left{animation-name:slideInRight}[dir=rtl] .animate-slide-in-right{animation-name:slideInLeft}[dir=rtl] .animate-slide-out-left{animation-name:slideOutRight}[dir=rtl] .animate-slide-out-right{animation-name:slideOutLeft}[dir=rtl] .animate-fade-in-left{animation-name:fadeInRight}[dir=rtl] .animate-fade-in-right{animation-name:fadeInLeft}[dir=rtl] .animate-toast-in{animation-name:toastSlideInRTL}[dir=rtl] .animate-toast-out{animation-name:toastSlideOutRTL}[dir=rtl] .animate-drawer-in-right{animation-name:drawerInLeft}[dir=rtl] .animate-drawer-out-right{animation-name:drawerOutLeft}[dir=rtl] .animate-drawer-in-left{animation-name:drawerInRight}[dir=rtl] .animate-drawer-out-left{animation-name:drawerOutRight}