@font-face{font-family:Vazirmatn;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/vazirmatn-arabic-300-normal.woff2) format("woff2");unicode-range:u+06??}@font-face{font-family:Vazirmatn;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/vazirmatn-arabic-400-normal.woff2) format("woff2");unicode-range:u+06??}@font-face{font-family:Vazirmatn;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/vazirmatn-arabic-500-normal.woff2) format("woff2");unicode-range:u+06??}@font-face{font-family:Vazirmatn;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/vazirmatn-arabic-600-normal.woff2) format("woff2");unicode-range:u+06??}@font-face{font-family:Vazirmatn;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/vazirmatn-arabic-700-normal.woff2) format("woff2");unicode-range:u+06??}@font-face{font-family:Vazirmatn;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/vazirmatn-arabic-800-normal.woff2) format("woff2");unicode-range:u+06??}@font-face{font-family:Vazirmatn;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/vazirmatn-latin-300-normal.woff2) format("woff2");unicode-range:u+00??}@font-face{font-family:Vazirmatn;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/vazirmatn-latin-400-normal.woff2) format("woff2");unicode-range:u+00??}@font-face{font-family:Vazirmatn;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/vazirmatn-latin-500-normal.woff2) format("woff2");unicode-range:u+00??}@font-face{font-family:Vazirmatn;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/vazirmatn-latin-600-normal.woff2) format("woff2");unicode-range:u+00??}@font-face{font-family:Vazirmatn;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/vazirmatn-latin-700-normal.woff2) format("woff2");unicode-range:u+00??}@font-face{font-family:Vazirmatn;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/vazirmatn-latin-800-normal.woff2) format("woff2");unicode-range:u+00??}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-sans-arabic-arabic-400-normal.woff2) format("woff2");unicode-range:u+06??}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-sans-arabic-arabic-500-normal.woff2) format("woff2");unicode-range:u+06??}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ibm-plex-sans-arabic-arabic-600-normal.woff2) format("woff2");unicode-range:u+06??}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/ibm-plex-sans-arabic-arabic-700-normal.woff2) format("woff2");unicode-range:u+06??}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-sans-arabic-latin-400-normal.woff2) format("woff2");unicode-range:u+00??}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-sans-arabic-latin-500-normal.woff2) format("woff2");unicode-range:u+00??}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ibm-plex-sans-arabic-latin-600-normal.woff2) format("woff2");unicode-range:u+00??}@font-face{font-family:IBM Plex Sans Arabic;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/ibm-plex-sans-arabic-latin-700-normal.woff2) format("woff2");unicode-range:u+00??}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }

/* ! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com */*,:after,:before{border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Vazirmatn,-apple-system,BlinkMacSystemFont,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.sr-only{padding:0;margin:-1px;white-space:nowrap;border-width:0}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.flex-shrink,.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.resize{resize:both}.break-all{word-break:break-all}.border{border-width:1px}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.blur{--tw-blur:blur(8px)}.blur,.drop-shadow{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow:drop-shadow(0 1px 2px rgba(0,0,0,.1)) drop-shadow(0 1px 1px rgba(0,0,0,.06))}.grayscale{--tw-grayscale:grayscale(100%)}.filter,.grayscale{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-filter{backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}:root{--primary:#4b6ee8;--primary-light:#eef2fd;--primary-dark:#35c;--primary-fg:#fff;--focus-ring:#102a56;--teal:oklch(55% 0.15 185);--teal-light:oklch(93% 0.06 185);--warning:oklch(70% 0.17 60);--warning-light:oklch(95% 0.06 60);--danger:oklch(55% 0.2 20);--danger-light:oklch(95% 0.05 20);--success:oklch(55% 0.17 155);--success-light:oklch(93% 0.06 155);--purple:oklch(52% 0.2 295);--purple-light:oklch(95% 0.04 295);--mono:ui-monospace,"JetBrains Mono","SF Mono",Menlo,monospace;--bg:oklch(98% 0.01 90);--surface:#fff;--surface-2:oklch(97% 0.008 90);--border:oklch(90% 0.01 90);--border-strong:oklch(82% 0.02 90);--text-1:oklch(18% 0.01 90);--text-2:oklch(45% 0.01 90);--text-3:oklch(60% 0.01 90);--sidebar-w:224px;--admin-sidebar-w:240px;--header-h:60px;--surface-3:oklch(94% 0.012 90);--primary-soft:oklch(95% 0.025 240);--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--guide-good-bg:oklch(97% 0.04 155);--guide-good-border:oklch(80% 0.1 155);--guide-good-line:oklch(85% 0.08 155);--guide-bad-bg:oklch(97% 0.02 20);--guide-bad-border:oklch(80% 0.1 20);--guide-bad-line:oklch(88% 0.05 20);--guide-tip-bg:#fdf8ef;--shadow-sm:0 1px 3px oklch(0% 0 0/0.06),0 1px 2px oklch(0% 0 0/0.04);--shadow-md:0 4px 12px oklch(0% 0 0/0.08),0 2px 4px oklch(0% 0 0/0.04);--shadow-lg:0 12px 32px oklch(0% 0 0/0.1),0 4px 8px oklch(0% 0 0/0.05);--exam-bg:oklch(96% 0.004 240);--exam-surface:#fff;--accent:oklch(55% 0.17 264);--accent-strong:oklch(48% 0.18 264);--accent-soft:oklch(95.5% 0.028 264);--accent-line:oklch(88% 0.05 264);--accent-glow:oklch(55% 0.17 264/0.28);--glow-a:oklch(70% 0.13 264/0.30);--glow-b:oklch(72% 0.11 220/0.26);--border-2:oklch(86% 0.01 264);--nav-bg:hsla(0,0%,100%,.78);--shadow-xl:0 28px 64px oklch(25% 0.04 264/0.16),0 10px 24px oklch(25% 0.03 264/0.09)}.app-v3,body.app-v3-portals{--primary:oklch(55% 0.19 275);--v3-primary-ink:oklch(52% 0.19 275);--v3-on-primary:#fff;--v3-num:"IBM Plex Sans Arabic","Vazirmatn",ui-monospace,"SF Mono",Menlo,monospace;--primary-light:oklch(95.5% 0.028 275);--primary-hover:oklch(48% 0.19 275);--success:oklch(62% 0.15 155);--success-fg:oklch(50% 0.14 155);--success-light:oklch(94.5% 0.045 155);--warning:oklch(72% 0.14 70);--warning-graphic:oklch(60% 0.15 62);--warning-fg:oklch(50% 0.12 65);--warning-light:oklch(95% 0.05 75);--danger:oklch(62% 0.19 22);--danger-fg:oklch(53% 0.19 22);--danger-light:oklch(95% 0.035 22);--teal:oklch(58% 0.12 195);--teal-light:oklch(94.5% 0.04 195);--sk-speaking:oklch(55% 0.19 275);--sk-writing:oklch(55% 0.19 325);--sk-reading:oklch(55% 0.19 225);--sk-listening:oklch(60% 0.15 60);--bg:oklch(97% 0.006 285);--nav-bg:oklch(99% 0.004 285);--surface:#fff;--surface-2:oklch(97.5% 0.006 285);--border:oklch(93% 0.006 285);--border-strong:oklch(87% 0.01 285);--text-1:oklch(23% 0.02 285);--text-2:oklch(48% 0.02 285);--text-3:oklch(51% 0.02 285);--hero-a:oklch(95% 0.03 275);--hero-b:oklch(92.5% 0.045 280);--hero-line:oklch(100% 0 0/0.55);--sidebar-w:238px;--page-max:1240px;--radius-lg:18px;--radius-md:12px;--radius-sm:10px;--shadow-sm:0 1px 2px oklch(25% 0.03 285/0.05),0 1px 3px oklch(25% 0.03 285/0.03);--shadow-md:0 6px 18px oklch(25% 0.03 285/0.07);--shadow-lg:0 18px 44px oklch(25% 0.03 285/0.16)}html[data-theme=dark] .app-v3,html[data-theme=dark] body.app-v3-portals{--primary:oklch(53% 0.19 275);--v3-primary-ink:oklch(80% 0.14 275);--primary-light:oklch(30% 0.08 275);--primary-hover:oklch(45% 0.17 275);--success:oklch(70% 0.14 155);--success-fg:oklch(80% 0.13 155);--success-light:oklch(30% 0.07 155);--warning:oklch(78% 0.13 75);--warning-graphic:oklch(78% 0.13 75);--warning-fg:oklch(83% 0.13 80);--warning-light:oklch(31% 0.06 75);--danger:oklch(66% 0.18 22);--danger-fg:oklch(78% 0.15 22);--danger-light:oklch(30% 0.07 22);--teal:oklch(74% 0.11 195);--teal-light:oklch(30% 0.06 195);--sk-speaking:oklch(78% 0.13 275);--sk-writing:oklch(78% 0.13 325);--sk-reading:oklch(78% 0.12 225);--sk-listening:oklch(80% 0.13 65);--bg:oklch(17% 0.014 275);--nav-bg:oklch(19% 0.016 275);--surface:oklch(22% 0.018 275);--surface-2:oklch(26% 0.02 275);--border:oklch(30% 0.02 275);--border-strong:oklch(40% 0.024 275);--text-1:oklch(96% 0.008 275);--text-2:oklch(78% 0.016 275);--text-3:oklch(64% 0.018 275);--hero-a:oklch(28% 0.055 272);--hero-b:oklch(21% 0.04 272);--hero-line:oklch(100% 0 0/0.1);--shadow-sm:0 1px 2px oklch(0% 0 0/0.35);--shadow-md:0 6px 18px oklch(0% 0 0/0.45);--shadow-lg:0 18px 44px oklch(0% 0 0/0.6)}.app-v3 .v3-num,body.app-v3-portals .v3-num{font-family:var(--v3-num);font-variant-numeric:tabular-nums}html:not([data-theme=dark]) .marketing{--bg:oklch(98.6% 0.004 264);--surface-2:oklch(97.2% 0.005 264);--surface-3:oklch(94% 0.008 264);--border:oklch(92% 0.006 264);--border-strong:oklch(86% 0.01 264);--text-1:oklch(24% 0.018 264);--text-2:oklch(47% 0.014 264);--text-3:oklch(62% 0.012 264)}.marketing{background:var(--bg);min-height:100vh}html[data-theme=dark]{--bg:oklch(25% 0.008 265);--surface:oklch(30% 0.01 265);--surface-2:oklch(35% 0.012 265);--surface-3:oklch(39% 0.014 265);--border:oklch(40% 0.014 265);--border-2:oklch(48% 0.016 265);--border-strong:oklch(48% 0.016 265);--text-1:oklch(94% 0.008 265);--text-2:oklch(79% 0.012 265);--text-3:oklch(64% 0.012 265);--primary-light:oklch(34% 0.09 265);--primary-dark:oklch(72% 0.18 265);--focus-ring:#ffd166;--teal-light:oklch(32% 0.07 185);--accent:oklch(70% 0.16 264);--accent-strong:oklch(76% 0.15 264);--accent-soft:oklch(30% 0.06 264);--accent-line:oklch(38% 0.08 264);--accent-glow:oklch(60% 0.18 264/0.40);--glow-a:oklch(58% 0.18 264/0.34);--glow-b:oklch(56% 0.15 215/0.28);--success:oklch(72% 0.15 155);--success-light:oklch(32% 0.07 155);--purple:oklch(70% 0.16 295);--purple-light:oklch(32% 0.08 295);--warning:oklch(75% 0.14 60);--warning-light:oklch(32% 0.07 60);--danger:oklch(68% 0.17 20);--danger-light:oklch(32% 0.07 20);--guide-good-bg:oklch(31% 0.05 155);--guide-good-border:oklch(46% 0.09 155);--guide-good-line:oklch(40% 0.07 155);--guide-bad-bg:oklch(31% 0.05 20);--guide-bad-border:oklch(46% 0.09 20);--guide-bad-line:oklch(40% 0.07 20);--guide-tip-bg:oklch(31% 0.035 75);--shadow-sm:0 1px 2px oklch(0% 0 0/0.4),0 2px 6px oklch(0% 0 0/0.3);--shadow-md:0 4px 14px oklch(0% 0 0/0.45),0 2px 6px oklch(0% 0 0/0.3);--shadow-lg:0 16px 40px oklch(0% 0 0/0.55),0 6px 14px oklch(0% 0 0/0.4);--shadow-xl:0 28px 64px oklch(0% 0 0/0.6),0 10px 24px oklch(0% 0 0/0.4);--nav-bg:oklch(28% 0.01 265/0.82);--exam-bg:oklch(22% 0.006 240);--exam-surface:oklch(28% 0.01 240)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:Vazirmatn,-apple-system,BlinkMacSystemFont,sans-serif;direction:rtl;background:var(--bg);color:var(--text-1);-webkit-font-smoothing:antialiased;line-height:1.6}h1{font-size:clamp(28px,4vw,44px);font-weight:700;line-height:1.3}h2{font-size:clamp(22px,2.5vw,30px)}h2,h3{font-weight:600;line-height:1.4}h3{font-size:18px}h4{font-size:15px;font-weight:600;line-height:1.4}p{line-height:1.7}a{text-decoration:none;color:inherit}button{cursor:pointer;font-family:inherit;border:none;background:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:99px}@keyframes slideInRight{0%{transform:translateX(18px)}to{transform:none}}@keyframes slideInLeft{0%{transform:translateX(-18px)}to{transform:none}}@keyframes fadeUp{0%{transform:translateY(10px)}to{transform:none}}@keyframes countUp{0%{transform:translateY(8px)}to{transform:none}}.screen-enter-end,.screen-enter-fade,.screen-enter-left,.screen-enter-right,.screen-enter-start{opacity:1}@media (prefers-reduced-motion:no-preference){.screen-enter-right,.screen-enter-start{animation:slideInRight .28s cubic-bezier(.22,1,.36,1) both}.screen-enter-end,.screen-enter-left{animation:slideInLeft .28s cubic-bezier(.22,1,.36,1) both}.screen-enter-fade{animation:fadeUp .22s cubic-bezier(.22,1,.36,1) both}}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;flex-shrink:0}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.app-fixed-bar{inset-inline-start:0;inset-inline-end:0}@media (min-width:1000px){.app-fixed-bar{inset-inline-end:var(--sidebar-w)}}.app-v3 .nav-row svg{width:18px;height:18px;flex-shrink:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes pulse-glow{0%,to{opacity:1}50%{opacity:.4}}@keyframes drawer-in{0%{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes slideInStart{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes critPulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes modalIn{0%{opacity:0;transform:translate(-50%,-46%)}to{opacity:1;transform:translate(-50%,-50%)}}.crit{animation:critPulse 1s ease-in-out infinite}#admin-toast-root{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;gap:8px;z-index:9999;pointer-events:none;align-items:center}.ltr{direction:ltr;text-align:start;unicode-bidi:embed}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (max-width:760px){.auth-grid{grid-template-columns:1fr!important;max-width:460px!important}.auth-visual{display:none!important}}@keyframes authCardRise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.card-rise{animation:authCardRise .7s cubic-bezier(.22,1,.36,1) both}@keyframes authStepIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.step-in{animation:authStepIn .4s ease both}@keyframes authFloatA{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.float-a{animation:authFloatA 6s ease-in-out infinite}@keyframes authFloatB{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}.float-b{animation:authFloatB 5s ease-in-out infinite}@keyframes authLiveDot{0%,to{opacity:1}50%{opacity:.3}}.live-dot{animation:authLiveDot 1.4s ease-in-out infinite}.hero-flag{position:absolute;inset:0;background-image:url(/images/au-flag.png);background-size:cover;background-position:50%;opacity:.42}[data-theme=dark] .hero-flag{opacity:.3;filter:brightness(1.3)}@media (max-width:920px){.hero-flag{background-position:72%;opacity:.34}}@keyframes heroRise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.hero-rise{animation:heroRise .8s cubic-bezier(.22,1,.36,1) both}@keyframes floatSoft{0%,to{transform:translateY(0)}50%{transform:translateY(-9px)}}.float-soft{animation:floatSoft 6.5s ease-in-out infinite}@keyframes blobDrift{0%,to{transform:translate(0) scale(1)}50%{transform:translate(24px,-22px) scale(1.08)}}@keyframes blobDrift2{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-20px,18px) scale(.94)}}.blob-1{animation:blobDrift 20s ease-in-out infinite}.blob-2{animation:blobDrift2 24s ease-in-out infinite}@keyframes wfPulse{0%,to{transform:scaleY(.35)}50%{transform:scaleY(1)}}.wf-bar{animation:wfPulse .85s ease-in-out infinite;transform-origin:center}@keyframes recPulse{0%{box-shadow:0 0 0 0 currentColor;opacity:1}70%{box-shadow:0 0 0 6px transparent}to{opacity:1}}.rec-dot{animation:recPulse 1.4s ease-out infinite}@keyframes spinV2{to{transform:rotate(1turn)}}.spin-ring{width:30px;height:30px;border-radius:99px;border:3px solid var(--accent-soft);border-top-color:var(--accent);animation:spinV2 .8s linear infinite}@keyframes growW{0%{width:0}}.grow-bar{width:var(--w);animation:growW 1s cubic-bezier(.22,1,.36,1) both}@keyframes eqBar{0%,to{transform:scaleY(.4)}50%{transform:scaleY(1)}}.eq-bar{transform-origin:bottom;animation:eqBar .9s ease-in-out infinite}@keyframes shimmerSweep{0%{transform:translateX(-120%)}60%,to{transform:translateX(220%)}}.shimmer{position:relative;overflow:hidden}.shimmer:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(110deg,transparent 30%,hsla(0,0%,100%,.5) 50%,transparent 70%);transform:translateX(-120%);animation:shimmerSweep 3.6s ease-in-out infinite;pointer-events:none}@keyframes gradPan{0%{background-position:0 50%}to{background-position:200% 50%}}.grad-text{background:linear-gradient(100deg,var(--accent),oklch(62% .16 200),var(--accent));background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:gradPan 5s linear infinite}@keyframes tickerUp{0%,18%{transform:translateY(0)}25%,43%{transform:translateY(-100%)}50%,68%{transform:translateY(-200%)}75%,93%{transform:translateY(-300%)}to{transform:translateY(-400%)}}.ticker-track{animation:tickerUp 8s cubic-bezier(.7,0,.3,1) infinite}@keyframes driftA{0%,to{transform:translate(0)}50%{transform:translate(10px,-16px)}}@keyframes driftB{0%,to{transform:translate(0)}50%{transform:translate(-12px,12px)}}.drift-a{animation:driftA 9s ease-in-out infinite}.drift-b{animation:driftB 11s ease-in-out infinite}.task-row:hover{background:var(--surface-2)}.lift-card{transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s ease,border-color .25s ease}.lift-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--border-2)}.rail-item:hover{background:var(--surface-2)}.topic-chip:hover{background:var(--accent-soft);color:var(--accent);border-color:var(--accent-line)}@media (prefers-reduced-motion:reduce){.blob-1,.blob-2,.drift-a,.drift-b,.eq-bar,.float-soft,.grad-text,.grow-bar,.hero-rise,.rec-dot,.shimmer:after,.spin-ring,.ticker-track,.wf-bar{animation:none!important}}@keyframes v2FadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes v2Pop{0%{transform:scale(.7);opacity:0}60%{transform:scale(1.08)}to{transform:scale(1);opacity:1}}@keyframes v2Shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.fade-up,.pop{opacity:1}@media (prefers-reduced-motion:no-preference){.app-v3 .fade-up:not(.dash-stack){animation:v2FadeUp .45s cubic-bezier(.22,1,.36,1) both}.pop{animation:v2Pop .4s cubic-bezier(.22,1,.36,1) both}}@media print{.fade-up,.pop{animation:none!important;opacity:1!important}}.skel{background:linear-gradient(90deg,var(--surface-2) 25%,var(--border) 37%,var(--surface-2) 63%);background-size:400% 100%;border-radius:var(--radius-sm)}@media (prefers-reduced-motion:no-preference){.skel:not(.dash-skel){animation:v2Shimmer 1.4s ease infinite}}.grid-2col{display:grid;grid-template-columns:1fr 1fr;gap:20px}.grid-3col{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.grid-4col{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}@media (max-width:900px){.grid-3col,.grid-4col{grid-template-columns:1fr 1fr}}@media (max-width:600px){.grid-2col{grid-template-columns:1fr}.grid-4col{grid-template-columns:1fr 1fr}.grid-3col{grid-template-columns:1fr}}.plan-grid{display:grid;grid-template-columns:1fr .7fr;gap:20px;align-items:start}@media (max-width:820px){.plan-grid{grid-template-columns:1fr}}.week-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}@media (max-width:600px){.week-strip{grid-template-columns:repeat(4,1fr)}}input:-webkit-autofill,input:-webkit-autofill:active,input:-webkit-autofill:focus,input:-webkit-autofill:hover,select:-webkit-autofill,textarea:-webkit-autofill{box-shadow:0 0 0 1000px var(--surface) inset!important;-webkit-text-fill-color:var(--text-1)!important;caret-color:var(--text-1);-webkit-transition:background-color 99999s ease-in-out 0s;transition:background-color 99999s ease-in-out 0s}.dash-t-display{font-size:44px;line-height:1.05;font-weight:800;letter-spacing:-.03em}.dash-t-xl{font-size:24px;line-height:1.15;font-weight:800;letter-spacing:-.02em}.dash-t-lg{font-size:18px;line-height:1.35;font-weight:800;letter-spacing:-.015em}.dash-t-md{font-size:16px;line-height:1.55}.dash-t-sm{font-size:14px;line-height:1.55}.dash-t-xs{font-size:12px;line-height:1.5}.dash-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px}.dash-stack{display:flex;flex-direction:column;gap:20px}.dash-grid-2,.dash-grid-bot,.dash-grid-hero,.dash-grid-mid{display:grid;gap:20px;align-items:stretch}.dash-grid-hero{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.dash-grid-mid{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.dash-grid-bot{grid-template-columns:minmax(0,1fr) minmax(0,1.42fr)}.dash-grid-2{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.dash-grid-2>*,.dash-grid-bot>*,.dash-grid-hero>*,.dash-grid-mid>*{min-width:0;height:100%}.dash-quick-grid{gap:16px}.dash-quick-grid,.dash-skill-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.dash-skill-row{height:100%}.v3-card>.dash-skill-row{flex:1}.dash-mock-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}.dash-split{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:15px 18px;border-radius:var(--radius-md);background:var(--surface-2)}.dash-split>*+*{border-inline-start:1px solid var(--border);padding-inline-start:16px}@media (max-width:1180px){.dash-grid-2,.dash-grid-bot,.dash-grid-hero,.dash-grid-mid{grid-template-columns:minmax(0,1fr)}.dash-quick-grid,.dash-skill-row{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-skill-row{gap:16px}.dash-skill{border-inline-start:none!important;padding:0!important}}@media (max-width:620px){.dash-t-display{font-size:32px}.dash-mock-grid,.dash-quick-grid,.dash-skill-row,.dash-split{grid-template-columns:minmax(0,1fr)}.dash-split>*+*{border-inline-start:none;padding-inline-start:0;border-top:1px solid var(--border);padding-top:12px}.dash-weak-card .dash-weak{flex-wrap:wrap}.dash-weak-card .dash-weak-meter{width:100%}}.dash-region{display:flex;flex-direction:column}.dash-region>:last-child{flex:1}.dash-region-stale{border-top:1px solid color-mix(in oklab,var(--warning) 38%,var(--border));border:1px solid color-mix(in oklab,var(--warning) 38%,var(--border));border-top-color:var(--warning);border-radius:18px;padding:14px;background:color-mix(in oklab,var(--warning-light) 40%,transparent)}.dash-stale-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}.v3-card{background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;transition:transform .22s cubic-bezier(.22,1,.36,1),box-shadow .22s ease,border-color .18s ease,background .18s ease}.v3-card:hover{box-shadow:var(--shadow-md)}.v3-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:inherit;font-weight:700;border-radius:12px;border:1.5px solid transparent;white-space:nowrap;transition:background .15s,border-color .15s,box-shadow .15s}.v3-button-sm{min-height:44px;padding:0 14px;font-size:14px}.v3-button-md{min-height:46px;padding:0 20px;font-size:14px}.v3-button-lg{min-height:54px;padding:0 26px;font-size:16px}.v3-button-full{width:100%}.v3-button-primary{background:var(--primary);color:var(--v3-on-primary);box-shadow:var(--shadow-sm)}.v3-button-primary:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.v3-button-secondary{background:var(--surface);color:var(--text-1);border-color:var(--border-strong)}.v3-button-secondary:hover{background:var(--surface-2)}.v3-button-ghost{color:var(--text-2)}.v3-button-ghost:hover{background:var(--surface-2);color:var(--text-1)}.v3-button-onhero{background:var(--hero-line);color:var(--text-1);border-color:var(--border-strong)}.v3-button-onhero:hover{background:var(--surface)}.v3-button-onhero-solid{position:relative;overflow:hidden;background:var(--primary);color:var(--v3-on-primary);box-shadow:var(--shadow-md)}.v3-button-onhero-solid:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.v3-button:active{transform:scale(.975)}.dash-hero{position:relative;overflow:hidden;padding:22px 24px;border-radius:20px;border:1px solid transparent;background:linear-gradient(135deg,var(--hero-a),var(--hero-b));box-shadow:var(--shadow-sm);color:var(--text-1);height:100%;transition:transform .22s cubic-bezier(.22,1,.36,1),box-shadow .22s ease,border-color .18s ease,background .18s ease}.dash-hero:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.dash-hero-glow{position:absolute;border-radius:50%;filter:blur(34px);pointer-events:none}.dash-hero-glow-a{width:180px;height:180px;top:-70px;inset-inline-end:14%;background:color-mix(in oklab,var(--primary) 22%,transparent)}.dash-hero-glow-b{width:220px;height:220px;bottom:-120px;inset-inline-start:8%;background:color-mix(in oklab,var(--teal) 16%,transparent)}.dash-hero .ltr{text-align:right}.dash-hero-title{position:relative;display:inline-flex;align-items:center;gap:8px;color:var(--v3-primary-ink);font-weight:800}a.dash-hero-title:hover{text-decoration:underline}a.dash-hero-title{min-height:0}a.dash-hero-title:after{content:"";position:absolute;inset-block:-11px;inset-inline:-8px}.dash-hero-line{padding:9px 12px;border-radius:var(--radius-sm);background:var(--hero-line)}.dash-hero-foot{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:22px;padding-top:18px;border-top:1px solid color-mix(in oklab,var(--text-1) 10%,transparent)}.dash-hero-skeleton{background:var(--surface);border-color:var(--border)}.dash-banner{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:13px 18px;border-radius:18px;background:linear-gradient(180deg,color-mix(in oklab,var(--primary-light) 68%,transparent),color-mix(in oklab,var(--primary-light) 34%,transparent));border:1px solid color-mix(in oklab,var(--primary) 16%,transparent);box-shadow:inset 0 1px 0 var(--hero-line);backdrop-filter:blur(14px) saturate(1.3);-webkit-backdrop-filter:blur(14px) saturate(1.3)}.dash-more-link{display:inline-flex;align-items:center;gap:5px;min-height:44px;color:var(--v3-primary-ink);font-size:14px;font-weight:700;white-space:nowrap}.dash-more-link:hover{text-decoration:underline}.dash-icon-badge{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;flex-shrink:0}.dash-card-danger{border-color:var(--danger)}.dash-skel{background:var(--surface-2);border-radius:14px}.dash-quick{display:flex;align-items:center;gap:11px;min-height:62px;padding:11px 14px;background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-sm);transition:border-color .15s,transform .15s}.dash-quick:hover{border-color:var(--border-strong);transform:translateY(-1px);box-shadow:var(--shadow-md)}.dash-skill{display:flex;flex-direction:column;justify-content:space-between;padding:2px 18px;border-inline-start:1px solid var(--border)}.dash-skill:first-child{border-inline-start:none;padding-inline-start:2px}.dash-skill:last-child{padding-inline-end:2px}.dash-skill-flag{background:color-mix(in oklab,var(--danger-light) 45%,transparent);border-radius:var(--radius-md);padding-block:12px;margin-block:-10px}.dash-skill-cta{display:inline-block;margin-top:12px;font-weight:700;color:var(--v3-primary-ink)}.dash-skill:hover .dash-skill-cta{text-decoration:underline}.dash-skill-speaking{color:var(--sk-speaking)}.dash-skill-writing{color:var(--sk-writing)}.dash-skill-reading{color:var(--sk-reading)}.dash-skill-listening{color:var(--sk-listening)}.dash-activity-flame{background:var(--warning-light);color:var(--warning-fg)}.dash-estimate-target{font-weight:700;color:var(--success-fg)}.dash-week{display:flex;gap:6px;list-style:none}.dash-week>li{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1;min-width:0}.dash-day{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;border:1.5px solid var(--border);background:var(--surface);color:var(--text-3);flex-shrink:0}.dash-day-done{border-color:color-mix(in oklab,var(--success) 45%,transparent);background:var(--success-light);color:var(--success-fg)}.dash-day-today{border-color:var(--primary);background:var(--primary);color:#fff}.dash-day-todayidle{border-color:var(--primary);color:var(--v3-primary-ink)}.dash-day-miss{background:var(--surface-2)}.dash-day-soon{border-style:dashed}.dash-mock-card{padding:22px;display:flex;flex-direction:column}.dash-mock-empty{text-align:center;padding:10px 4px 4px}.dash-mock-inset{gap:10px;padding:12px 14px;border-radius:var(--radius-md);background:var(--surface-2);color:var(--text-2);margin-top:14px}.dash-mock,.dash-mock-inset{display:flex;align-items:center}.dash-mock{gap:8px;padding:11px 12px;border:1px solid var(--border);border-radius:var(--radius-md);transition:transform .22s cubic-bezier(.22,1,.36,1),background .18s ease}.dash-mock:hover{background:var(--surface-2);transform:translateX(-3px)}.dash-chart{width:100%;height:auto;display:block;overflow:visible}.dash-weak-card{padding:22px;display:flex;flex-direction:column}.v3-card>.dash-weak-list{flex:1}.dash-weak-list{list-style:none;display:flex;flex-direction:column;justify-content:space-between;height:100%}.dash-weak{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--border)}.dash-weak:last-child{border-bottom:none}.dash-weak-meter{display:flex;align-items:center;gap:8px;width:132px;flex-shrink:0}.dash-weak-meter .dash-bar{flex:1}.dash-bar{position:relative;display:block;border-radius:99px;background:var(--surface-2)}.dash-bar-6{height:6px}.dash-bar>i{position:absolute;inset-inline-start:0;top:0;height:100%;border-radius:99px;display:block}.dash-bar-fill-primary{background:var(--v3-primary-ink)}.dash-bar-fill-danger{background:var(--danger)}.dash-bar-fill-warning{background:var(--warning-graphic)}.dash-bar-fill-success{background:var(--success-fg)}.dash-bar>b{position:absolute;top:-4px;width:3px;height:calc(100% + 8px);background:var(--success);border-radius:2px}.dash-bar-onhero{background:var(--hero-line)}@keyframes dashShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes dashRiseIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes dashPopIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:none}}@keyframes dashBarIn{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes dashTickIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@keyframes dashFloatA{0%,to{transform:translateZ(0) scale(1)}50%{transform:translate3d(-18px,12px,0) scale(1.08)}}@keyframes dashFloatB{0%,to{transform:translateZ(0) scale(1)}50%{transform:translate3d(14px,-14px,0) scale(1.06)}}@keyframes dashDraw{0%{stroke-dashoffset:1400}to{stroke-dashoffset:0}}@keyframes dashHeroSheen{0%{transform:translateX(-120%)}55%,to{transform:translateX(220%)}}@media (prefers-reduced-motion:no-preference){.app-v3 .fade-up>*{animation:dashRiseIn .5s cubic-bezier(.22,1,.36,1) both}.app-v3 .fade-up>:first-child{animation-delay:.02s}.app-v3 .fade-up>:nth-child(2){animation-delay:.09s}.app-v3 .fade-up>:nth-child(3){animation-delay:.16s}.app-v3 .fade-up>:nth-child(4){animation-delay:.23s}.app-v3 .fade-up>:nth-child(5){animation-delay:.3s}.app-v3 .fade-up>:nth-child(n+6){animation-delay:.36s}.app-v3 .dash-grid-2>*,.app-v3 .dash-grid-bot>*,.app-v3 .dash-grid-hero>*,.app-v3 .dash-grid-mid>*,.app-v3 .dash-quick-grid>*{animation:dashRiseIn .55s cubic-bezier(.22,1,.36,1) both}.app-v3 .dash-grid-bot>:nth-child(2),.app-v3 .dash-grid-hero>:nth-child(2),.app-v3 .dash-grid-mid>:nth-child(2){animation-delay:.08s}.app-v3 .dash-quick-grid>:nth-child(2){animation-delay:.06s}.app-v3 .dash-quick-grid>:nth-child(3){animation-delay:.12s}.app-v3 .dash-quick-grid>:nth-child(4){animation-delay:.18s}.app-v3 .dash-bar>i{transform-origin:right center;animation:dashBarIn .95s cubic-bezier(.22,1,.36,1) .12s both}.app-v3 .dash-bar>b{animation:dashTickIn .5s ease .5s both}.app-v3 .dash-week>li{animation:dashPopIn .42s cubic-bezier(.34,1.56,.64,1) both}.app-v3 .dash-week>li:nth-child(2){animation-delay:.05s}.app-v3 .dash-week>li:nth-child(3){animation-delay:.1s}.app-v3 .dash-week>li:nth-child(4){animation-delay:.15s}.app-v3 .dash-week>li:nth-child(5){animation-delay:.2s}.app-v3 .dash-week>li:nth-child(6){animation-delay:.25s}.app-v3 .dash-week>li:nth-child(7){animation-delay:.3s}.app-v3 .dash-hero-glow-a{animation:dashFloatA 17s ease-in-out infinite}.app-v3 .dash-hero-glow-b{animation:dashFloatB 23s ease-in-out infinite}.app-v3 .dash-chart polyline{stroke-dasharray:1400;animation:dashDraw 1.5s cubic-bezier(.4,0,.2,1) .2s both}.app-v3 .dash-chart circle{animation:dashPopIn .4s both}.app-v3 .dash-chart circle:nth-child(2n){animation-delay:.5s}.app-v3 .dash-chart polygon{animation:dashRiseIn .8s ease .35s both}.app-v3 .dash-skel{background:linear-gradient(90deg,var(--surface-2) 25%,var(--border) 37%,var(--surface-2) 63%);background-size:400% 100%;animation:dashShimmer 1.4s ease infinite}.app-v3 .v3-button-onhero-solid:after{content:"";position:absolute;top:0;bottom:0;width:38%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.28),transparent);animation:dashHeroSheen 4.5s ease-in-out 1.2s infinite;pointer-events:none}}@media (prefers-reduced-motion:reduce){.app-v3 .dash-bar>b,.app-v3 .dash-bar>i,.app-v3 .dash-chart circle,.app-v3 .dash-chart polygon,.app-v3 .dash-grid-2>*,.app-v3 .dash-grid-bot>*,.app-v3 .dash-grid-hero>*,.app-v3 .dash-grid-mid>*,.app-v3 .dash-hero-glow-a,.app-v3 .dash-hero-glow-b,.app-v3 .dash-quick-grid>*,.app-v3 .dash-skel,.app-v3 .dash-week>li,.app-v3 .fade-up>*{animation:none!important;opacity:1!important;transform:none!important}.app-v3 .dash-chart polyline{animation:none!important;stroke-dashoffset:0}}.dash-tap{min-height:44px;display:inline-flex;align-items:center}.dash-mock:focus-visible,.dash-quick:focus-visible,.dash-skill:focus-visible,.dash-tap:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}