@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-content:""}}}@layer theme{:root,:host{--font-sans:"DM Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-100:oklch(93.6% .032 17.717);--color-red-200:oklch(88.5% .062 18.334);--color-red-300:oklch(80.8% .114 19.571);--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-red-800:oklch(44.4% .177 26.899);--color-red-900:oklch(39.6% .141 25.723);--color-red-950:oklch(25.8% .092 26.042);--color-orange-50:oklch(98% .016 73.684);--color-orange-100:oklch(95.4% .038 75.164);--color-orange-200:oklch(90.1% .076 70.697);--color-orange-300:oklch(83.7% .128 66.29);--color-orange-400:oklch(75% .183 55.934);--color-orange-500:oklch(70.5% .213 47.604);--color-orange-600:oklch(64.6% .222 41.116);--color-orange-700:oklch(55.3% .195 38.402);--color-orange-800:oklch(47% .157 37.304);--color-orange-900:oklch(40.8% .123 38.172);--color-orange-950:oklch(26.6% .079 36.259);--color-amber-50:oklch(98.7% .022 95.277);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-300:oklch(87.9% .169 91.605);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-500:oklch(76.9% .188 70.08);--color-amber-600:oklch(66.6% .179 58.318);--color-amber-700:oklch(55.5% .163 48.998);--color-amber-800:oklch(47.3% .137 46.201);--color-amber-900:oklch(41.4% .112 45.904);--color-amber-950:oklch(27.9% .077 45.635);--color-yellow-50:oklch(98.7% .026 102.212);--color-yellow-100:oklch(97.3% .071 103.193);--color-yellow-200:oklch(94.5% .129 101.54);--color-yellow-300:oklch(90.5% .182 98.111);--color-yellow-400:oklch(85.2% .199 91.936);--color-yellow-500:oklch(79.5% .184 86.047);--color-yellow-600:oklch(68.1% .162 75.834);--color-yellow-700:oklch(55.4% .135 66.442);--color-yellow-800:oklch(47.6% .114 61.907);--color-yellow-900:oklch(42.1% .095 57.708);--color-yellow-950:oklch(28.6% .066 53.813);--color-lime-50:oklch(98.6% .031 120.757);--color-lime-100:oklch(96.7% .067 122.328);--color-lime-200:oklch(93.8% .127 124.321);--color-lime-300:oklch(89.7% .196 126.665);--color-lime-400:oklch(84.1% .238 128.85);--color-lime-500:oklch(76.8% .233 130.85);--color-lime-600:oklch(64.8% .2 131.684);--color-lime-700:oklch(53.2% .157 131.589);--color-lime-800:oklch(45.3% .124 130.933);--color-lime-900:oklch(40.5% .101 131.063);--color-lime-950:oklch(27.4% .072 132.109);--color-green-50:oklch(98.2% .018 155.826);--color-green-100:oklch(96.2% .044 156.743);--color-green-200:oklch(92.5% .084 155.995);--color-green-300:oklch(87.1% .15 154.449);--color-green-400:oklch(79.2% .209 151.711);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-green-700:oklch(52.7% .154 150.069);--color-green-800:oklch(44.8% .119 151.328);--color-green-900:oklch(39.3% .095 152.535);--color-green-950:oklch(26.6% .065 152.934);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-200:oklch(90.5% .093 164.15);--color-emerald-300:oklch(84.5% .143 164.978);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-700:oklch(50.8% .118 165.612);--color-emerald-800:oklch(43.2% .095 166.913);--color-emerald-900:oklch(37.8% .077 168.94);--color-emerald-950:oklch(26.2% .051 172.552);--color-teal-50:oklch(98.4% .014 180.72);--color-teal-100:oklch(95.3% .051 180.801);--color-teal-200:oklch(91% .096 180.426);--color-teal-300:oklch(85.5% .138 181.071);--color-teal-400:oklch(77.7% .152 181.912);--color-teal-500:oklch(70.4% .14 182.503);--color-teal-600:oklch(60% .118 184.704);--color-teal-700:oklch(51.1% .096 186.391);--color-teal-800:oklch(43.7% .078 188.216);--color-teal-900:oklch(38.6% .063 188.416);--color-teal-950:oklch(27.7% .046 192.524);--color-cyan-50:oklch(98.4% .019 200.873);--color-cyan-100:oklch(95.6% .045 203.388);--color-cyan-200:oklch(91.7% .08 205.041);--color-cyan-300:oklch(86.5% .127 207.078);--color-cyan-400:oklch(78.9% .154 211.53);--color-cyan-500:oklch(71.5% .143 215.221);--color-cyan-600:oklch(60.9% .126 221.723);--color-cyan-700:oklch(52% .105 223.128);--color-cyan-800:oklch(45% .085 224.283);--color-cyan-900:oklch(39.8% .07 227.392);--color-cyan-950:oklch(30.2% .056 229.695);--color-sky-50:oklch(97.7% .013 236.62);--color-sky-100:oklch(95.1% .026 236.824);--color-sky-200:oklch(90.1% .058 230.902);--color-sky-300:oklch(82.8% .111 230.318);--color-sky-400:oklch(74.6% .16 232.661);--color-sky-500:oklch(68.5% .169 237.323);--color-sky-600:oklch(58.8% .158 241.966);--color-sky-700:oklch(50% .134 242.749);--color-sky-800:oklch(44.3% .11 240.79);--color-sky-900:oklch(39.1% .09 240.876);--color-sky-950:oklch(29.3% .066 243.157);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-300:oklch(80.9% .105 251.813);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-blue-900:oklch(37.9% .146 265.522);--color-blue-950:oklch(28.2% .091 267.935);--color-indigo-50:oklch(96.2% .018 272.314);--color-indigo-100:oklch(93% .034 272.788);--color-indigo-200:oklch(87% .065 274.039);--color-indigo-300:oklch(78.5% .115 274.713);--color-indigo-400:oklch(67.3% .182 276.935);--color-indigo-500:oklch(58.5% .233 277.117);--color-indigo-600:oklch(51.1% .262 276.966);--color-indigo-700:oklch(45.7% .24 277.023);--color-indigo-800:oklch(39.8% .195 277.366);--color-indigo-900:oklch(35.9% .144 278.697);--color-indigo-950:oklch(25.7% .09 281.288);--color-violet-50:oklch(96.9% .016 293.756);--color-violet-100:oklch(94.3% .029 294.588);--color-violet-200:oklch(89.4% .057 293.283);--color-violet-300:oklch(81.1% .111 293.571);--color-violet-400:oklch(70.2% .183 293.541);--color-violet-500:oklch(60.6% .25 292.717);--color-violet-600:oklch(54.1% .281 293.009);--color-violet-700:oklch(49.1% .27 292.581);--color-violet-800:oklch(43.2% .232 292.759);--color-violet-900:oklch(38% .189 293.745);--color-violet-950:oklch(28.3% .141 291.089);--color-purple-50:oklch(97.7% .014 308.299);--color-purple-100:oklch(94.6% .033 307.174);--color-purple-200:oklch(90.2% .063 306.703);--color-purple-300:oklch(82.7% .119 306.383);--color-purple-400:oklch(71.4% .203 305.504);--color-purple-500:oklch(62.7% .265 303.9);--color-purple-600:oklch(55.8% .288 302.321);--color-purple-700:oklch(49.6% .265 301.924);--color-purple-800:oklch(43.8% .218 303.724);--color-purple-900:oklch(38.1% .176 304.987);--color-purple-950:oklch(29.1% .149 302.717);--color-fuchsia-50:oklch(97.7% .017 320.058);--color-fuchsia-100:oklch(95.2% .037 318.852);--color-fuchsia-200:oklch(90.3% .076 319.62);--color-fuchsia-300:oklch(83.3% .145 321.434);--color-fuchsia-400:oklch(74% .238 322.16);--color-fuchsia-500:oklch(66.7% .295 322.15);--color-fuchsia-600:oklch(59.1% .293 322.896);--color-fuchsia-700:oklch(51.8% .253 323.949);--color-fuchsia-800:oklch(45.2% .211 324.591);--color-fuchsia-900:oklch(40.1% .17 325.612);--color-fuchsia-950:oklch(29.3% .136 325.661);--color-pink-50:oklch(97.1% .014 343.198);--color-pink-100:oklch(94.8% .028 342.258);--color-pink-200:oklch(89.9% .061 343.231);--color-pink-300:oklch(82.3% .12 346.018);--color-pink-400:oklch(71.8% .202 349.761);--color-pink-500:oklch(65.6% .241 354.308);--color-pink-600:oklch(59.2% .249 .584);--color-pink-700:oklch(52.5% .223 3.958);--color-pink-800:oklch(45.9% .187 3.815);--color-pink-900:oklch(40.8% .153 2.432);--color-pink-950:oklch(28.4% .109 3.907);--color-rose-50:oklch(96.9% .015 12.422);--color-rose-100:oklch(94.1% .03 12.58);--color-rose-200:oklch(89.2% .058 10.001);--color-rose-300:oklch(81% .117 11.638);--color-rose-400:oklch(71.2% .194 13.428);--color-rose-500:oklch(64.5% .246 16.439);--color-rose-600:oklch(58.6% .253 17.585);--color-rose-700:oklch(51.4% .222 16.935);--color-rose-800:oklch(45.5% .188 13.697);--color-rose-900:oklch(41% .159 10.272);--color-rose-950:oklch(27.1% .105 12.094);--color-slate-50:oklch(98.4% .003 247.858);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-300:oklch(86.9% .022 252.894);--color-slate-400:oklch(70.4% .04 256.788);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-600:oklch(44.6% .043 257.281);--color-slate-700:oklch(37.2% .044 257.287);--color-slate-800:oklch(27.9% .041 260.031);--color-slate-900:oklch(20.8% .042 265.755);--color-slate-950:oklch(12.9% .042 264.695);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-gray-950:oklch(13% .028 261.692);--color-zinc-50:oklch(98.5% 0 none);--color-zinc-100:oklch(96.7% .001 286.375);--color-zinc-200:oklch(92% .004 286.32);--color-zinc-300:oklch(87.1% .006 286.286);--color-zinc-400:oklch(70.5% .015 286.067);--color-zinc-500:oklch(55.2% .016 285.938);--color-zinc-600:oklch(44.2% .017 285.786);--color-zinc-700:oklch(37% .013 285.805);--color-zinc-800:oklch(27.4% .006 286.033);--color-zinc-900:oklch(21% .006 285.885);--color-zinc-950:oklch(14.1% .005 285.823);--color-neutral-50:oklch(98.5% 0 none);--color-neutral-100:oklch(97% 0 none);--color-neutral-200:oklch(92.2% 0 none);--color-neutral-300:oklch(87% 0 none);--color-neutral-400:oklch(70.8% 0 none);--color-neutral-500:oklch(55.6% 0 none);--color-neutral-600:oklch(43.9% 0 none);--color-neutral-700:oklch(37.1% 0 none);--color-neutral-800:oklch(26.9% 0 none);--color-neutral-900:oklch(20.5% 0 none);--color-neutral-950:oklch(14.5% 0 none);--color-stone-50:oklch(98.5% .001 106.423);--color-stone-100:oklch(97% .001 106.424);--color-stone-200:oklch(92.3% .003 48.717);--color-stone-300:oklch(86.9% .005 56.366);--color-stone-400:oklch(70.9% .01 56.259);--color-stone-500:oklch(55.3% .013 58.071);--color-stone-600:oklch(44.4% .011 73.639);--color-stone-700:oklch(37.4% .01 67.558);--color-stone-800:oklch(26.8% .007 34.298);--color-stone-900:oklch(21.6% .006 56.043);--color-stone-950:oklch(14.7% .004 49.25);--color-black:#000;--color-white:#fff;--spacing:.25rem;--breakpoint-sm:40rem;--breakpoint-md:48rem;--breakpoint-lg:64rem;--breakpoint-xl:80rem;--breakpoint-2xl:96rem;--container-3xs:16rem;--container-2xs:18rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-5xl:64rem;--container-6xl:72rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-6xl--line-height:1;--text-7xl:4.5rem;--text-7xl--line-height:1;--text-8xl:6rem;--text-8xl--line-height:1;--text-9xl:8rem;--text-9xl--line-height:1;--font-weight-thin:100;--font-weight-extralight:200;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--tracking-tighter:-.05em;--tracking-tight:-.025em;--tracking-normal:0em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--leading-loose:2;--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--radius-4xl:2rem;--shadow-2xs:0 1px #0000000d;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--shadow-2xl:0 25px 50px -12px #00000040;--inset-shadow-2xs:inset 0 1px #0000000d;--inset-shadow-xs:inset 0 1px 1px #0000000d;--inset-shadow-sm:inset 0 2px 4px #0000000d;--drop-shadow-xs:0 1px 1px #0000000d;--drop-shadow-sm:0 1px 2px #00000026;--drop-shadow-md:0 3px 3px #0000001f;--drop-shadow-lg:0 4px 4px #00000026;--drop-shadow-xl:0 9px 7px #0000001a;--drop-shadow-2xl:0 25px 25px #00000026;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-ping:ping 1s cubic-bezier(0, 0, .2, 1) infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--animate-bounce:bounce 1s infinite;--blur-xs:4px;--blur-sm:8px;--blur-md:12px;--blur-lg:16px;--blur-xl:24px;--blur-2xl:40px;--blur-3xl:64px;--perspective-dramatic:100px;--perspective-near:300px;--perspective-normal:500px;--perspective-midrange:800px;--perspective-distant:1200px;--aspect-video:16 / 9;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--font-display:"Plus Jakarta Sans", "DM Sans", ui-sans-serif, system-ui, sans-serif}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.-mt-\[4\.9rem\]{margin-top:-4.9rem}.-mb-px{margin-bottom:-1px}.mb-1{margin-bottom:var(--spacing)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.-ml-8{margin-left:calc(var(--spacing) * -8)}.ml-1{margin-left:var(--spacing)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.aspect-\[335\/376\]{aspect-ratio:335/376}.h-1{height:var(--spacing)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-14{height:calc(var(--spacing) * 14)}.h-14\.5{height:calc(var(--spacing) * 14.5)}.min-h-screen{min-height:100vh}.w-1{width:var(--spacing)}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-\[448px\]{width:448px}.w-full{width:100%}.max-w-\[335px\]{max-width:335px}.max-w-none{max-width:none}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.translate-y-0{--tw-translate-y:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-x-1>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(var(--spacing) * var(--tw-space-x-reverse));margin-inline-end:calc(var(--spacing) * calc(1 - var(--tw-space-x-reverse)))}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-sm{border-radius:var(--radius-sm)}.rounded-t-lg{border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg)}.rounded-br-lg{border-bottom-right-radius:var(--radius-lg)}.rounded-bl-lg{border-bottom-left-radius:var(--radius-lg)}.border{border-style:var(--tw-border-style);border-width:1px}.border-\[\#19140035\]{border-color:#19140035}.border-\[\#e3e3e0\]{border-color:#e3e3e0}.border-black{border-color:var(--color-black)}.border-transparent{border-color:#0000}.bg-\[\#1b1b18\]{background-color:#1b1b18}.bg-\[\#FDFDFC\]{background-color:#fdfdfc}.bg-\[\#dbdbd7\]{background-color:#dbdbd7}.bg-\[\#fff2f2\]{background-color:#fff2f2}.bg-white{background-color:var(--color-white)}.p-6{padding:calc(var(--spacing) * 6)}.px-5{padding-inline:calc(var(--spacing) * 5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.pb-12{padding-bottom:calc(var(--spacing) * 12)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-\[13px\]{font-size:13px}.leading-\[20px\]{--tw-leading:20px;line-height:20px}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.text-\[\#1b1b18\]{color:#1b1b18}.text-\[\#706f6c\]{color:#706f6c}.text-\[\#F53003\],.text-\[\#f53003\]{color:#f53003}.text-white{color:var(--color-white)}.italic{font-style:italic}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0px_0px_1px_0px_rgba\(0\,0\,0\,0\.03\)\,0px_1px_2px_0px_rgba\(0\,0\,0\,0\.06\)\]{--tw-shadow:0px 0px 1px 0px var(--tw-shadow-color,#00000008), 0px 1px 2px 0px var(--tw-shadow-color,#0000000f);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[inset_0px_0px_0px_1px_rgba\(26\,26\,0\,0\.16\)\]{--tw-shadow:inset 0px 0px 0px 1px var(--tw-shadow-color,#1a1a0029);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);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,)}.filter{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{-webkit-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,);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,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.delay-300{transition-delay:.3s}.duration-750{--tw-duration:.75s;transition-duration:.75s}.select-all{-webkit-user-select:all;user-select:all}.not-has-\[nav\]\:hidden:not(:has(:is(nav))){display:none}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:top-0:before{content:var(--tw-content);top:0}.before\:top-1\/2:before{content:var(--tw-content);top:50%}.before\:bottom-0:before{content:var(--tw-content);bottom:0}.before\:bottom-1\/2:before{content:var(--tw-content);bottom:50%}.before\:left-\[0\.4rem\]:before{content:var(--tw-content);left:.4rem}.before\:border-l:before{content:var(--tw-content);border-left-style:var(--tw-border-style);border-left-width:1px}.before\:border-\[\#e3e3e0\]:before{content:var(--tw-content);border-color:#e3e3e0}@media(hover:hover){.hover\:border-\[\#1915014a\]:hover{border-color:#1915014a}.hover\:border-\[\#19140035\]:hover{border-color:#19140035}.hover\:border-black:hover{border-color:var(--color-black)}.hover\:bg-black:hover{background-color:var(--color-black)}}@media(min-width:64rem){.lg\:-mt-\[6\.6rem\]{margin-top:-6.6rem}.lg\:mb-0{margin-bottom:0}.lg\:mb-6{margin-bottom:calc(var(--spacing) * 6)}.lg\:-ml-px{margin-left:-1px}.lg\:ml-0{margin-left:0}.lg\:block{display:block}.lg\:aspect-auto{aspect-ratio:auto}.lg\:w-\[438px\]{width:438px}.lg\:max-w-4xl{max-width:var(--container-4xl)}.lg\:grow{flex-grow:1}.lg\:flex-row{flex-direction:row}.lg\:justify-center{justify-content:center}.lg\:rounded-t-none{border-top-left-radius:0;border-top-right-radius:0}.lg\:rounded-tl-lg{border-top-left-radius:var(--radius-lg)}.lg\:rounded-r-lg{border-top-right-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg)}.lg\:rounded-br-none{border-bottom-right-radius:0}.lg\:p-8{padding:calc(var(--spacing) * 8)}.lg\:p-20{padding:calc(var(--spacing) * 20)}}@media(prefers-color-scheme:dark){.dark\:block{display:block}.dark\:hidden{display:none}.dark\:border-\[\#3E3E3A\]{border-color:#3e3e3a}.dark\:border-\[\#eeeeec\]{border-color:#eeeeec}.dark\:bg-\[\#0a0a0a\]{background-color:#0a0a0a}.dark\:bg-\[\#1D0002\]{background-color:#1d0002}.dark\:bg-\[\#3E3E3A\]{background-color:#3e3e3a}.dark\:bg-\[\#161615\]{background-color:#161615}.dark\:bg-\[\#eeeeec\]{background-color:#eeeeec}.dark\:text-\[\#1C1C1A\]{color:#1c1c1a}.dark\:text-\[\#A1A09A\]{color:#a1a09a}.dark\:text-\[\#EDEDEC\]{color:#ededec}.dark\:text-\[\#F61500\]{color:#f61500}.dark\:text-\[\#FF4433\]{color:#f43}.dark\:shadow-\[inset_0px_0px_0px_1px_\#fffaed2d\]{--tw-shadow:inset 0px 0px 0px 1px var(--tw-shadow-color,#fffaed2d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.dark\:before\:border-\[\#3E3E3A\]:before{content:var(--tw-content);border-color:#3e3e3a}@media(hover:hover){.dark\:hover\:border-\[\#3E3E3A\]:hover{border-color:#3e3e3a}.dark\:hover\:border-\[\#62605b\]:hover{border-color:#62605b}.dark\:hover\:border-white:hover{border-color:var(--color-white)}.dark\:hover\:bg-white:hover{background-color:var(--color-white)}}}@starting-style{.starting\:translate-y-4{--tw-translate-y:calc(var(--spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.starting\:translate-y-6{--tw-translate-y:calc(var(--spacing) * 6);translate:var(--tw-translate-x) var(--tw-translate-y)}.starting\:opacity-0{opacity:0}}}:root{--primary:#080f0e;--primary-hover:#000;--secondary:#22c55e;--secondary-ink:#15803d;--secondary-soft:#f0fdf4;--neutral:#64748b;--bg:#f8fafa;--card:#fff;--border:#e2e8f0;--text:#080f0e;--text-2:#475569;--success:#22c55e;--warning:#eab308;--error:#ef4444;--info:#0ea5e9;--navy:var(--primary);--blue:var(--primary);--teal:var(--secondary);--muted:#5b6b80;--font-display:"Plus Jakarta Sans", "DM Sans", ui-sans-serif, system-ui, sans-serif;--r-chip:4px;--r-control:8px;--r-panel:12px;--radius:12px;--shadow:0 1px 2px #080f0e0a;--shadow-hover:0 4px 16px #080f0e12;--focus-ring:0 0 0 3px #080f0e1f;--ease:.2s ease;--on-primary:#fff;--logo-ink:#080f0e;--surface-2:#f1f5f9;--sidebar-w:240px;--sidebar-w-collapsed:76px}html{scroll-behavior:smooth;color-scheme:light}html.dark{color-scheme:dark}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.6}h1,h2,h3,h4,.page-title,.card-title,.brand,.pub-brand,.stat-num,.price{font-family:var(--font-display)}[x-cloak]{display:none!important}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--r-control)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{border-radius:var(--r-control);z-index:100;box-shadow:var(--shadow-hover);background:#fff;padding:10px 14px;font-weight:600;position:absolute;top:-60px;left:8px}.skip-link:focus{top:8px}.ico{flex:none;width:20px;height:20px}.ico-sm{width:16px;height:16px}.ico-lg{width:24px;height:24px}.shell{min-height:100vh;display:flex}.main-col{min-width:0;transition:margin-inline-start var(--ease);flex-direction:column;flex:1;margin-inline-start:var(--sidebar-w);display:flex}.shell.is-collapsed .main-col{margin-inline-start:var(--sidebar-w-collapsed)}.sidebar{width:var(--sidebar-w);z-index:40;background:var(--card);border-inline-end:1px solid var(--border);transition:width var(--ease),transform var(--ease);scrollbar-width:none;flex-direction:column;padding:0 12px 12px;display:flex;position:fixed;inset-block:0;inset-inline-start:0;overflow:hidden auto}.sidebar::-webkit-scrollbar{display:none}.shell.is-collapsed .sidebar{width:var(--sidebar-w-collapsed)}.brand{border-bottom:1px solid var(--border);height:64px;color:var(--primary);flex:none;align-items:center;gap:10px;margin:0 -12px 8px;padding-inline:18px;font-size:15px;font-weight:800;line-height:1.1;display:flex}.brand small{color:var(--neutral);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:600;display:block}.brand-mark{border-radius:var(--r-control);background:var(--primary);color:#fff;flex:none;place-items:center;width:34px;height:34px;display:grid}.brand-mark .ico-lg{color:#fff}.nav-group-label{color:var(--neutral);text-transform:uppercase;letter-spacing:.08em;margin:18px 10px 6px;font-size:11px;font-weight:700}.nav-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.nav-item{border-radius:var(--r-control);min-height:44px;color:var(--text-2);transition:background var(--ease),color var(--ease);align-items:center;gap:12px;padding:0 12px;font-size:14px;font-weight:500;display:flex}.nav-item .ico{color:var(--neutral);transition:color var(--ease)}.nav-item:hover{color:var(--secondary-ink);background:#080f0e0a}.nav-item:hover .ico{color:var(--secondary)}.nav-item[aria-current=page]{background:var(--primary);color:#fff;font-weight:600}.nav-item[aria-current=page] .ico{color:#fff}.nav-footer{margin-top:auto;padding-top:12px}.profile{border-top:1px solid var(--border);align-items:center;gap:10px;min-height:44px;margin-top:10px;padding:12px 6px 2px;display:flex}.avatar{width:38px;height:38px;color:var(--secondary-ink);background:var(--secondary-soft);font-size:13px;font-weight:700;font-family:var(--font-display);border:1px solid #bbf7d0;border-radius:999px;flex:none;place-items:center;display:grid}.profile b{color:var(--text);font-size:13px;line-height:1.2;display:block}.profile small{color:var(--neutral);font-size:12px}.collapse-btn{z-index:2;border-radius:var(--r-control);border:1px solid var(--border);background:var(--card);width:28px;height:28px;color:var(--neutral);top:18px;place-items:center;display:grid;position:absolute;inset-inline-end:10px}.collapse-btn:hover{background:var(--bg);color:var(--text)}.shell.is-collapsed .sidebar .label,.shell.is-collapsed .sidebar .nav-group-label,.shell.is-collapsed .sidebar .brand-text,.shell.is-collapsed .sidebar .profile-text{display:none}.shell.is-collapsed .sidebar .nav-item{justify-content:center;padding:0}.shell.is-collapsed .sidebar .brand,.shell.is-collapsed .sidebar .profile{justify-content:center;padding-inline:0}.shell.is-collapsed .collapse-btn{inset-inline-end:24px;top:74px}.shell.is-collapsed .collapse-btn .ico{transform:rotate(180deg)}.drawer-scrim{z-index:39;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#080f0e80;position:fixed;inset:0}.topbar{z-index:30;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);background:#ffffffeb;align-items:center;gap:10px;min-height:64px;padding:8px 28px;display:flex;position:sticky;top:0}.search{background:var(--bg);border:1px solid var(--border);border-radius:var(--r-control);max-width:480px;min-height:44px;color:var(--neutral);transition:border-color var(--ease),box-shadow var(--ease);flex:1;align-items:center;gap:8px;padding:0 12px;display:flex}.search input{background:0 0;border:0;outline:none;flex:1;min-width:0;min-height:44px}.search:focus-within{border-color:var(--primary);box-shadow:var(--focus-ring)}.icon-btn{border-radius:var(--r-control);width:44px;height:44px;color:var(--text-2);transition:background var(--ease);background:0 0;border:1px solid #0000;place-items:center;display:grid;position:relative}.icon-btn:hover{background:#080f0e0d}.icon-btn .dot{background:var(--error);border:2px solid #fff;border-radius:99px;width:8px;height:8px;position:absolute;top:10px;right:11px}.menu-btn{display:none}.lang-switch{border:1px solid var(--border);border-radius:var(--r-control);background:var(--card);display:inline-flex;overflow:hidden}.lang-switch button{min-width:44px;min-height:44px;color:var(--text-2);transition:background var(--ease),color var(--ease);background:0 0;border:0;font-size:13px;font-weight:600}.lang-switch button+button{border-left:1px solid var(--border)}.lang-switch button[aria-current]{background:var(--primary);color:#fff}.lang-switch button:hover:not([aria-current]){background:#080f0e0d}.content{flex:1;width:100%;max-width:1440px;margin:0 auto;padding:18px 28px 28px}.page-title{letter-spacing:-.02em;color:var(--text);margin:0;font-size:28px;font-weight:800;line-height:1.2}.page-sub{color:var(--muted);margin:6px 0 0}.content h1.page-title{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.content>h1.page-title+:not(.page-sub),.content>h1.page-title+.page-sub+*{margin-top:0!important}.content>h1.page-title+.page-sub+.page-sub,.content .page-sub{display:none}.content>.page-title+.page-sub+*{margin-top:0}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--secondary-ink);margin:0 0 8px;font-size:12px;font-weight:700}.demo-banner{color:#854d0e;border-radius:var(--r-control);background:#fefce8;border:1px solid #fde68a;align-items:center;gap:10px;margin-bottom:18px;padding:8px 14px;font-size:13px;display:flex}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--r-panel);box-shadow:var(--shadow);padding:20px}.card h2,.card h3{margin:0}.card-title{margin:0 0 12px;font-size:16px;font-weight:700}.grid{gap:16px;display:grid}.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.split{grid-template-columns:1.25fr 1fr;gap:16px;display:grid}.row{align-items:center;gap:12px;display:flex}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.stack{flex-direction:column;gap:14px;display:flex}.muted{color:var(--muted)}.small{font-size:13px}.section-head{justify-content:space-between;align-items:center;margin:28px 0 12px;display:flex}.section-head h2{margin:0;font-size:18px;font-weight:700}.link{color:var(--secondary-ink);font-weight:600}.link:hover{text-decoration:underline}.btn{border-radius:var(--r-control);border:1px solid var(--border);background:var(--card);min-height:44px;color:var(--text);transition:background var(--ease),box-shadow var(--ease),border-color var(--ease),transform var(--ease);white-space:nowrap;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:600;display:inline-flex}.btn:hover{background:var(--bg);box-shadow:var(--shadow-hover);border-color:#cbd5e1}.btn:active{transform:translateY(1px)}.btn-primary,.btn-blue{background:var(--primary);border-color:var(--primary);color:#fff}.btn-primary:hover,.btn-blue:hover{background:var(--primary-hover);border-color:var(--primary-hover);box-shadow:0 4px 14px #080f0e38}.btn-accent{background:var(--secondary-ink);border-color:var(--secondary-ink);color:#fff}.btn-accent:hover{background:#166534;border-color:#166534}.btn-lg{min-height:52px;padding:0 26px;font-size:16px}.btn-block{width:100%}.btn-sm{min-height:44px;padding:0 14px;font-size:13px}.btn[disabled],.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.future-chip{letter-spacing:.06em;text-transform:uppercase;color:var(--neutral);border-radius:var(--r-chip);background:#f1f5f9;margin-left:6px;padding:2px 7px;font-size:10px;font-weight:700}.tag{border-radius:var(--r-chip);letter-spacing:.04em;text-transform:uppercase;color:var(--text-2);border:1px solid var(--border);background:#f1f5f9;align-items:center;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.tag-green{color:#15803d;background:#ecfdf5;border-color:#bbf7d0}.tag-orange{color:#854d0e;background:#fefce8;border-color:#fde68a}.tag-red{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.tag-purple{color:#6d28d9;background:#f5f3ff;border-color:#ddd6fe}.tag-gray{color:var(--text-2);background:#f1f5f9}.tag-blue{color:#0369a1;background:#f0f9ff;border-color:#bae6fd}.progress{background:#e8eef6;border-radius:99px;height:8px;overflow:hidden}.progress>span{border-radius:inherit;background:var(--secondary);height:100%;transition:width .4s;display:block}.ic-box{border-radius:var(--r-panel);flex:none;place-items:center;width:48px;height:48px;display:grid}.s-physics{color:#0369a1;background:#f0f9ff}.s-chemistry{color:#6d28d9;background:#f5f3ff}.s-biology{color:#15803d;background:#ecfdf5}.s-general{color:#a16207;background:#fefce8}.subject-card{transition:transform var(--ease),box-shadow var(--ease),border-color var(--ease);padding:22px;display:block}.subject-card:hover{box-shadow:var(--shadow-hover);border-color:#cbd5e1;transform:translateY(-2px)}.subject-card .ic-box{width:52px;height:52px}.subject-card h3{margin:14px 0 2px;font-size:17px;font-weight:700}.stat-num{letter-spacing:-.03em;font-size:30px;font-weight:800;line-height:1.1}.c-blue{color:#0369a1}.c-green{color:#15803d}.c-purple{color:#6d28d9}.c-orange{color:#a16207}.c-teal{color:#15803d}.stat-tile{flex-direction:column;gap:8px;display:flex}.stat-tile .stat-num{border-radius:var(--r-control);align-self:flex-start;padding:4px 14px;font-size:28px}.t-blue{color:#0369a1;background:#f0f9ff}.t-green{color:#15803d;background:#ecfdf5}.t-purple{color:#6d28d9;background:#f5f3ff}.t-teal{color:#15803d;background:#ecfdf5}.exp-card{transition:transform var(--ease),box-shadow var(--ease),border-color var(--ease);flex-direction:column;gap:8px;padding:18px;display:flex}.exp-card:hover{box-shadow:var(--shadow-hover);border-color:#cbd5e1;transform:translateY(-2px)}.exp-thumb{border-radius:var(--r-panel);color:#0369a1;background:#f0f9ff;place-items:center;width:88px;height:88px;display:grid}.exp-thumb.chemistry{color:#6d28d9;background:#f5f3ff}.exp-thumb.biology{color:#15803d;background:#ecfdf5}.exp-thumb svg{width:42px;height:42px}.exp-summary{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.field{color:var(--text-2);flex-direction:column;gap:6px;font-size:13px;font-weight:600;display:flex}.field label{color:var(--text);font-size:14px;font-weight:600}.select,.input{border:1px solid var(--border);border-radius:var(--r-control);background:var(--card);min-height:44px;color:var(--text);transition:border-color var(--ease),box-shadow var(--ease);width:100%;padding:0 12px;font-size:15px;font-weight:400}.input::placeholder{color:#94a3b8}.select:hover,.input:hover{border-color:#cbd5e1}.select:focus,.input:focus{border-color:var(--primary);outline:2px solid var(--primary);outline-offset:0;box-shadow:var(--focus-ring)}.input[aria-invalid=true]{border-color:var(--error)}input[type=range]{accent-color:var(--primary);width:100%;min-height:44px}input[type=checkbox],input[type=radio]{accent-color:var(--primary)}.filter-bar{flex-wrap:wrap;align-items:flex-end;gap:12px;margin:20px 0;display:flex}.filter-bar .select,.filter-bar .input{width:auto}.password-wrap{position:relative}.password-wrap .input{padding-inline-end:48px}.password-toggle{width:44px;height:44px;color:var(--neutral);border-radius:var(--r-control);inset-inline-end:2px;background:0 0;border:0;place-items:center;display:grid;position:absolute;top:0}.password-toggle:hover{color:var(--text)}.tabs{border-bottom:1px solid var(--border);scrollbar-width:none;gap:4px;display:flex;overflow-x:auto}.tab{min-height:44px;color:var(--muted);white-space:nowrap;transition:color var(--ease);background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:0 14px;font-weight:600;display:inline-flex}.tab[aria-selected=true]{color:var(--primary);border-bottom-color:var(--primary)}.tab:hover{color:var(--text)}.table{border-collapse:collapse;width:100%}.table th{text-align:start;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border-bottom:1px solid var(--border);background:#f8fafc;padding:10px;font-size:12px;font-weight:700}.table td{border-bottom:1px solid #f1f5f9;padding:12px 10px;font-size:14px}.table tbody tr:hover td{background:#fafbfd}.table-wrap{position:relative;overflow-x:auto}.pub-header{z-index:30;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);background:#fffffff0;position:sticky;top:0}.pub-nav{align-items:center;gap:12px;max-width:1200px;min-height:64px;margin:0 auto;padding:8px 32px;display:flex}.pub-nav .links{color:var(--text-2);flex:1;gap:4px;margin-inline-start:20px;font-size:14px;font-weight:500;display:flex}.pub-nav .links a{border-radius:var(--r-control);min-height:44px;transition:background var(--ease),color var(--ease);align-items:center;padding:0 12px;display:inline-flex}.pub-nav .links a:hover{color:var(--secondary-ink);background:#080f0e0a}.pub-brand{min-height:44px;color:var(--primary);align-items:center;gap:10px;font-size:16px;font-weight:800;display:flex}.pub-brand .brand-mark{width:34px;height:34px}.pub-menu-btn{display:none}.pub-actions{align-items:center;gap:8px;display:flex}.hero{grid-template-columns:1.05fr .95fr;align-items:center;gap:40px;max-width:1200px;margin:0 auto;padding:72px 32px 48px;display:grid;position:relative}.hero:before{content:"";z-index:-1;background-image:radial-gradient(circle,#080f0e12 1px,#0000 1px);background-size:24px 24px;height:100%;position:absolute;inset:0 0 auto;-webkit-mask-image:linear-gradient(#000 40%,#0000);mask-image:linear-gradient(#000 40%,#0000)}.hero h1{letter-spacing:-.03em;margin:0 0 18px;font-size:clamp(34px,4.6vw,56px);font-weight:800;line-height:1.08}.hero h1 em{color:var(--secondary);font-style:normal}.hero p.lead{color:var(--text-2);max-width:480px;margin:0 0 28px;font-size:18px}.hero-note{color:var(--secondary-ink);margin-top:18px;font-family:Caveat,cursive;font-size:22px}.hero-art{position:relative}.hero-art svg{width:100%;height:auto;display:block;overflow:visible}.feature-strip{grid-template-columns:repeat(4,1fr);gap:16px;max-width:1200px;margin:24px auto 0;padding:0 32px;display:grid}.feature-strip .card{padding:22px}.feature-strip h3{font-weight:700;font-size:16px!important}.pub-section{max-width:1200px;margin:80px auto 0;padding:0 32px}.pub-section h2{letter-spacing:-.02em;margin:0 0 8px;font-size:32px;font-weight:800}.pub-band{background:var(--primary);color:#fff;border-radius:var(--r-panel);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:36px;display:flex}.pub-band h2{color:#fff;margin:0 0 8px}.pub-band p{color:#cbd5e1;max-width:620px;margin:0}.pub-band .btn{color:var(--primary);background:#fff;border-color:#fff}.pub-band .btn:hover{background:#f1f5f9}.steps{counter-reset:s;grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.steps .card{padding-top:52px;position:relative}.steps .card:before{counter-increment:s;content:counter(s);background:var(--secondary-soft);width:28px;height:28px;color:var(--secondary-ink);font-size:13px;font-weight:800;font-family:var(--font-display);border-radius:99px;place-items:center;display:grid;position:absolute;top:18px;left:20px}.price-card{flex-direction:column;gap:12px;display:flex;position:relative}.price-card.featured{border:2px solid var(--primary);box-shadow:var(--shadow-hover)}.price{letter-spacing:-.03em;font-size:34px;font-weight:800}.checklist{gap:8px;margin:0;padding:0;list-style:none;display:grid}.checklist li{align-items:flex-start;gap:8px;font-size:14px;display:flex}.checklist .ico{color:var(--secondary);width:16px;height:16px;margin-top:3px}.pub-footer{background:var(--card);border-top:1px solid var(--border);color:var(--muted);margin-top:96px;padding:32px;font-size:14px}.pub-footer-in{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 32px;max-width:1200px;margin:0 auto;display:flex}.auth-shell{background:var(--card);grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:calc(100vh - 65px);display:grid}.auth-aside{background:var(--primary);color:#fff;flex-direction:column;justify-content:space-between;gap:32px;padding:56px;display:flex;position:relative;overflow:hidden}.auth-aside:before{content:"";background-image:radial-gradient(circle,#ffffff17 1px,#0000 1px);background-size:24px 24px;position:absolute;inset:0}.auth-aside>*{position:relative}.auth-aside h2{letter-spacing:-.02em;color:#fff;margin:0 0 14px;font-size:34px;font-weight:800;line-height:1.15}.auth-aside p{color:#cbd5e1;max-width:420px;margin:0}.auth-aside .tagline{color:#4ade80;font-family:Caveat,cursive;font-size:26px}.auth-points{gap:12px;margin:0;padding:0;list-style:none;display:grid}.auth-points li{color:#e2e8f0;align-items:center;gap:12px;font-size:15px;display:flex}.auth-points .ico{color:#4ade80}.auth-main{justify-content:center;align-items:center;padding:48px 24px;display:flex}.auth-card{width:100%;max-width:420px}.auth-card h1{letter-spacing:-.02em;margin:0;font-size:28px;font-weight:800;line-height:1.2}.auth-card .lede{color:var(--muted);margin:8px 0 24px}.auth-card .btn-primary{width:100%;min-height:48px}.auth-foot{text-align:center;color:var(--muted);margin:4px 0 0;font-size:14px}.auth-foot a{color:var(--secondary-ink);align-items:center;min-height:44px;font-weight:600;display:inline-flex}.auth-foot a:hover{text-decoration:underline}.check-row{min-height:44px;color:var(--text-2);align-items:center;gap:10px;font-size:14px;display:flex}.check-row input{width:20px;height:20px}.auth-split{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.notice{color:#166534;border-radius:var(--r-control);background:#ecfdf5;border:1px solid #bbf7d0;gap:12px;padding:12px 14px;font-size:14px;display:flex}.lab-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.lab-toolbar h1{margin:0;font-size:22px;font-weight:800}.lab-layout{grid-template-columns:230px minmax(0,1fr) 270px;align-items:start;gap:14px;display:grid}.panel{background:var(--card);border:1px solid var(--border);border-radius:var(--r-panel);box-shadow:var(--shadow);min-width:0;padding:14px}.apparatus-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.app-tile{border:1px solid var(--border);background:var(--card);border-radius:var(--r-control);min-height:88px;color:var(--text-2);transition:border-color var(--ease),background var(--ease);flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:6px 2px;font-size:12px;display:flex}.app-tile .ico{width:30px;height:30px;color:var(--text-2)}.app-tile:hover{background:var(--bg);border-color:#94a3b8}.app-tile[aria-pressed=true]{border-color:var(--primary);background:#f1f5f9;position:relative}.app-tile[aria-pressed=true]:after{content:"";background:var(--secondary);border-radius:99px;width:8px;height:8px;position:absolute;top:6px;right:6px}.app-tile[aria-pressed=true] .ico{color:var(--primary)}.canvas-wrap{border:1px solid var(--border);border-radius:var(--r-panel);aspect-ratio:800/560;touch-action:none;background-color:#f8fafc;background-image:linear-gradient(#e8edf3 1px,#0000 1px),linear-gradient(90deg,#e8edf3 1px,#0000 1px);background-size:24px 24px;position:relative;overflow:hidden}.canvas-wrap svg{width:100%;height:100%;display:block}.sim-status{flex-wrap:wrap;gap:8px;display:flex;position:absolute;top:12px;left:12px}.readout{border:1px solid var(--border);border-radius:var(--r-control);font-variant-numeric:tabular-nums;background:#fffffff0;padding:4px 10px;font-size:12px}.readout b{font-weight:700}.ctl{margin-bottom:16px}.ctl-head{justify-content:space-between;align-items:center;margin-bottom:2px;font-size:13px;font-weight:600;display:flex}.ctl-val{border-radius:var(--r-chip);font-variant-numeric:tabular-nums;background:#f1f5f9;align-items:baseline;gap:4px;padding:2px 8px;font-size:13px;font-weight:700;display:inline-flex}.ctl-error{color:#b91c1c;margin-top:4px;font-size:13px}.bottom-sheet-tabs{display:none}.step-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.step-item{border-radius:var(--r-control);color:var(--text-2);align-items:center;gap:10px;padding:10px 8px;font-size:14px;display:flex}.step-item .bullet{color:#fff;border:2px solid #cbd5e1;border-radius:99px;flex:none;place-items:center;width:24px;height:24px;display:grid}.step-item.done .bullet{background:var(--secondary);border-color:var(--secondary)}.step-item.current{color:var(--text);background:#f1f5f9;font-weight:600}.step-item.current .bullet{background:var(--primary);border-color:var(--primary)}.step-item .ico{width:14px;height:14px}.tip{border-radius:var(--r-panel);background:#f0f9ff;border:1px solid #bae6fd;gap:12px;padding:14px;display:flex}.tip .tip-ic{background:var(--info);color:#fff;border-radius:99px;flex:none;place-items:center;width:28px;height:28px;display:grid}.chart-box{height:320px;position:relative}.quiz-opt{border:1px solid var(--border);border-radius:var(--r-control);cursor:pointer;background:var(--card);min-height:52px;transition:border-color var(--ease),background var(--ease);align-items:center;gap:14px;padding:14px 16px;font-size:15px;display:flex}.quiz-opt:hover{background:var(--bg);border-color:#cbd5e1}.quiz-opt:has(input:checked){border-color:var(--primary);background:#f1f5f9}.quiz-opt input{appearance:none;cursor:pointer;background:#fff;border:2px solid #94a3b8;flex:none;place-content:center;width:24px;height:24px;margin:0;display:grid}.quiz-opt input[type=checkbox]{border-radius:6px}.quiz-opt input[type=radio]{border-radius:999px}.quiz-opt input:checked{background:var(--primary);border-color:var(--primary)}.quiz-opt input[type=checkbox]:checked:after{content:"";border:3px solid #fff;border-width:0 3px 3px 0;width:6px;height:12px;transform:translateY(-1px)rotate(45deg)}.quiz-opt input[type=radio]:checked:after{content:"";background:#fff;border-radius:99px;width:9px;height:9px}.quiz-opt input:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.quiz-opt input:disabled{cursor:default;opacity:.85}.quiz-opt.correct{background:#f0fdf4;border-color:#16a34a}.quiz-opt.wrong{background:#fef2f2;border-color:#dc2626}.mobile-nav{display:none}@media(max-width:1279px){.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-layout{grid-template-columns:200px minmax(0,1fr)}.lab-layout>.panel-right{grid-column:1/-1}}@media(max-width:1023px){.main-col,.shell.is-collapsed .main-col{margin-inline-start:0}.sidebar{width:288px;transform:translate(-102%)}[dir=rtl] .sidebar{transform:translate(102%)}.sidebar.is-open{box-shadow:0 0 60px #00000040}.shell.is-collapsed .sidebar{width:288px}.sidebar.is-open,[dir=rtl] .sidebar.is-open{transform:none}.collapse-btn{display:none}.menu-btn{display:grid}.topbar{padding:8px 16px}.content{padding:20px 16px}.split{grid-template-columns:minmax(0,1fr)}.hero{grid-template-columns:1fr;gap:28px;padding:40px 24px 24px}.pub-nav{padding:8px 16px}.pub-nav .links{display:none}.pub-menu-btn{display:grid}.pub-nav.is-open{flex-wrap:wrap}.pub-nav.is-open .links{flex-direction:column;flex-basis:100%;order:10;margin:0 0 8px;display:flex}.auth-shell{grid-template-columns:1fr}.auth-aside{display:none}.steps{grid-template-columns:1fr}}@media(max-width:767px){body{font-size:15px}.cols-4,.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}.cols-2{grid-template-columns:1fr}.content{padding:16px 16px 96px}.page-title{font-size:24px}.topbar .search{display:none}.mobile-nav{z-index:35;background:var(--card);border-top:1px solid var(--border);padding:6px 4px calc(6px + env(safe-area-inset-bottom));grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #080f0e0f}.mobile-nav a{min-height:48px;color:var(--neutral);border-radius:var(--r-control);flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:11px;font-weight:600;display:flex}.mobile-nav a[aria-current=page]{color:var(--primary);background:#f1f5f9}.mobile-nav a[aria-current=page] .ico{stroke-width:2.6px}.feature-strip{grid-template-columns:1fr 1fr;padding-inline:16px}.hero,.pub-section{padding-inline:16px}.hero{padding-top:28px}.hero h1{font-size:34px}.hero p.lead{font-size:16px}.hero-cta .btn{flex:100%}.pub-section{margin-top:56px}.pub-section h2{font-size:26px}.pub-band{padding:24px}.pub-nav{flex-wrap:wrap}.pub-brand{flex:auto}.pub-nav .links{order:9}.lab-layout{grid-template-columns:1fr}.sim-status{background:var(--card);padding:8px;position:static}.lab-toolbar .hide-sm{display:none}.filter-bar>*{flex:140px}.filter-bar .select,.filter-bar .input{width:100%}.table-stack td,.table-stack th{white-space:nowrap}.topbar .lang-switch{display:none}.pub-footer{padding:24px 16px}.auth-main{align-items:flex-start;padding:28px 16px 40px}.chart-box{height:260px}}@media(max-width:560px){.grid:has(>.exp-card){grid-template-columns:1fr}}@media(max-width:420px){.cols-4,.feature-strip{grid-template-columns:1fr}.apparatus-grid{grid-template-columns:repeat(3,1fr);gap:8px}}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.lab-tabs-all{display:none}[data-pane][hidden]{display:none!important}@media(max-width:1023px){.lab-layout{flex-direction:column;gap:0;display:flex}.lab-layout>.lab-order-canvas{order:0;margin-bottom:14px}.lab-layout>.lab-order-tabs{order:1;display:flex}.lab-layout>.panel{border-radius:0 0 var(--r-panel) var(--r-panel);order:2}.lab-tabs-left,.lab-tabs-right,.lab-layout>.panel-left[hidden],.lab-layout>.panel-right[hidden]{display:none}}.panel .tab{padding:0 10px;font-size:13px}.split>*,.grid>*,.lab-layout>*{min-width:0}@media(max-width:1023px){.lab-layout{align-items:stretch}}.topbar a.avatar{width:44px;height:44px}.section-head a,.link.small{align-items:center;min-height:44px;display:inline-flex}.pub-footer .link{justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:0 8px;display:inline-flex}.logo{color:var(--logo-ink);align-items:center;gap:10px;line-height:1;display:inline-flex}.logo-light{color:#fff}.logo-mark{flex:none;width:auto;max-width:none;display:block}.logo-mark-light,.logo-light .logo-mark-dark,html.dark .logo-mark-dark{display:none}.logo-light .logo-mark-light,html.dark .logo-mark-light{display:block}.logo-text{flex-direction:column;gap:3px;display:inline-flex}.logo-word{font-family:var(--font-display);letter-spacing:.02em;font-size:20px;font-weight:800}.logo-tag{letter-spacing:.22em;text-transform:uppercase;color:var(--neutral);font-size:9px;font-weight:600}.shell.is-collapsed .sidebar .logo-text{display:none}.auth-aside .logo-tag{color:#94a3b8}.brand{display:flex}.panel-logo{margin:4px 0 22px}.lang-menu{position:relative}.lang-btn{width:44px;height:44px}.flag{object-fit:cover;border-radius:3px;display:block;box-shadow:0 0 0 1px #080f0e1f}.lang-pop{z-index:60;background:var(--card);border:1px solid var(--border);border-radius:var(--r-panel);inset-inline-end:0;grid-template-columns:repeat(4,1fr);gap:4px;width:244px;padding:8px;display:grid;position:absolute;top:52px;box-shadow:0 8px 30px #080f0e24}.lang-opt{border-radius:var(--r-control);min-height:44px;transition:background var(--ease),border-color var(--ease);background:0 0;border:1px solid #0000;place-items:center;display:grid}.lang-opt:hover{background:var(--bg);border-color:var(--border)}.lang-opt[aria-current]{background:var(--secondary-soft);border-color:#86efac}.panel-scrim{z-index:60;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#080f0e73;position:fixed;inset:0}.auth-panel{z-index:70;background:var(--card);border-inline-start:1px solid var(--border);overscroll-behavior:contain;width:100%;max-width:440px;padding:24px 28px 32px;position:fixed;inset-block:0;inset-inline-end:0;overflow-y:auto;box-shadow:-12px 0 40px #080f0e24}.panel-anim{transition:transform .3s ease-out}.panel-off{transform:translate(100%)}.panel-on{transform:translate(0)}[dir=rtl] .auth-panel{box-shadow:12px 0 40px #080f0e24}[dir=rtl] .panel-off{transform:translate(-100%)}.panel-close{top:12px;position:absolute;inset-inline-end:12px}.panel-title{letter-spacing:-.02em;margin:22px 0 0;font-size:26px;font-weight:800;line-height:1.2}.auth-panel .lede{color:var(--muted);margin:6px 0 18px}.seg{border-radius:var(--r-panel);background:#f1f5f4;gap:4px;padding:4px;display:flex}.seg button{border-radius:var(--r-control);min-height:44px;color:var(--text-2);transition:background var(--ease),color var(--ease);background:0 0;border:0;flex:1;font-weight:600}.seg button[aria-selected=true]{background:var(--card);color:var(--text);box-shadow:0 1px 3px #080f0e1f}.type-cards{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px;display:grid}.type-card{border:1px solid var(--border);border-radius:var(--r-panel);cursor:pointer;min-height:96px;transition:border-color var(--ease),background var(--ease);flex-direction:column;gap:2px;padding:14px;display:flex;position:relative}.type-card .ico{color:var(--neutral);margin-bottom:4px}.type-card b{font-family:var(--font-display)}.type-card span{color:var(--muted);font-size:13px}.type-card:hover{border-color:#94a3b8}.type-card.is-on{border-color:var(--secondary);background:var(--secondary-soft);box-shadow:0 0 0 1px var(--secondary)}.type-card.is-on .ico{color:var(--secondary-ink)}.type-card:has(input:focus-visible){outline:2px solid var(--primary);outline-offset:2px}.notice-err{color:#991b1b;background:#fef2f2;border-color:#fecaca;margin-bottom:14px}.auth-panel .notice{margin-bottom:14px}@media(max-width:767px){.auth-panel{border-inline-start:0;max-width:none;padding:20px 18px 32px}.lang-pop{inset-inline-end:-52px}}html.dark{--primary:#22c55e;--primary-hover:#4ade80;--on-primary:#052e16;--secondary:#22c55e;--secondary-ink:#4ade80;--secondary-soft:#0f2a1c;--neutral:#8fa39d;--bg:#090f0e;--card:#111a18;--border:#25332f;--text:#e8f1ee;--text-2:#b4c3be;--muted:#93a8a1;--logo-ink:#f2f7f5;--surface-2:#1a2724;--shadow:0 1px 2px #0000004d;--shadow-hover:0 4px 16px #0006;--focus-ring:0 0 0 3px #22c55e40}html.dark body{background:var(--bg);color:var(--text)}html.dark .btn-primary,html.dark .btn-blue,html.dark .nav-item[aria-current=page],html.dark .lang-opt[aria-current],html.dark .nav-item[aria-current=page] .ico{color:var(--on-primary)}html.dark .btn-primary:hover,html.dark .btn-blue:hover{box-shadow:0 4px 14px #22c55e40}html.dark .btn:hover,html.dark .tab:hover{border-color:#3a4d48}html.dark .brand-mark,html.dark .brand-mark .ico-lg{color:var(--on-primary)}html.dark .topbar,html.dark .pub-header{background:#090f0eeb}html.dark .search,html.dark .skip-link{background:var(--card)}html.dark .icon-btn{color:var(--text-2)}html.dark .icon-btn:hover,html.dark .nav-item:hover,html.dark .pub-nav .links a:hover,html.dark .lang-opt:hover{background:#ffffff0f}html.dark .icon-btn .dot{border-color:var(--card)}html.dark .avatar{background:var(--secondary-soft);color:var(--secondary-ink);border-color:#14532d}html.dark .demo-banner{color:#fde68a;background:#2a2208;border-color:#5c4a10}html.dark .tag{background:var(--surface-2);color:var(--text-2);border-color:var(--border)}html.dark .tag-green{color:#86efac;background:#0f2a1c;border-color:#14532d}html.dark .tag-orange{color:#fde68a;background:#2a2208;border-color:#5c4a10}html.dark .tag-red{color:#fca5a5;background:#2d1212;border-color:#5b1f1f}html.dark .tag-purple{color:#c4b5fd;background:#1f1a33;border-color:#3b3366}html.dark .tag-blue{color:#7dd3fc;background:#0c2433;border-color:#164e63}html.dark .tag-gray{background:var(--surface-2);color:var(--text-2)}html.dark .progress{background:var(--surface-2)}html.dark .s-physics,html.dark .t-blue,html.dark .exp-thumb{color:#7dd3fc;background:#0c2433}html.dark .s-chemistry,html.dark .t-purple,html.dark .exp-thumb.chemistry{color:#c4b5fd;background:#1f1a33}html.dark .s-biology,html.dark .t-green,html.dark .t-teal,html.dark .exp-thumb.biology{color:#86efac;background:#0f2a1c}html.dark .s-general{color:#fde68a;background:#2a2208}html.dark .c-blue{color:#7dd3fc}html.dark .c-green,html.dark .c-teal{color:#86efac}html.dark .c-purple{color:#c4b5fd}html.dark .c-orange{color:#fde68a}html.dark .subject-card:hover,html.dark .exp-card:hover{border-color:#3a4d48}html.dark .ctl-val,html.dark .future-chip{background:var(--surface-2);color:var(--text-2)}html.dark .ctl-error{color:#fca5a5}html.dark .table th{background:var(--surface-2)}html.dark .table td{border-bottom-color:var(--border)}html.dark .table tbody tr:hover td{background:#ffffff08}html.dark .select,html.dark .input{background:var(--bg);color:var(--text)}html.dark .input::placeholder{color:#6b807a}html.dark input[type=range],html.dark input[type=checkbox],html.dark input[type=radio]{accent-color:#22c55e}html.dark .seg button[aria-selected=true]{background:var(--surface-2);color:var(--text);box-shadow:none}html.dark .type-card.is-on{background:var(--secondary-soft);border-color:#22c55e;box-shadow:0 0 0 1px #22c55e}html.dark .notice{color:#bbf7d0;background:#0f2a1c;border-color:#14532d}html.dark .notice-err{color:#fecaca;background:#2d1212;border-color:#5b1f1f}html.dark .tip{background:#0c2433;border-color:#164e63}html.dark .tip .tip-ic{background:#0ea5e9}html.dark .app-tile{background:var(--card)}html.dark .app-tile:hover{background:var(--surface-2);border-color:#3a4d48}html.dark .app-tile[aria-pressed=true]{background:var(--surface-2);border-color:#22c55e}html.dark .app-tile[aria-pressed=true] .ico{color:#4ade80}html.dark .step-item.current{background:var(--surface-2)}html.dark .step-item.current .bullet{color:var(--on-primary);background:#22c55e;border-color:#22c55e}html.dark .step-item .bullet{border-color:#3a4d48}html.dark .step-item.done .bullet{color:var(--on-primary)}html.dark .readout,html.dark .sim-status{background:#111a18f0}html.dark .quiz-opt{background:var(--card)}html.dark .quiz-opt:hover{background:var(--surface-2)}html.dark .quiz-opt:has(input:checked){background:var(--surface-2);border-color:#22c55e}html.dark .quiz-opt input{background:var(--bg);border-color:#4b605a}html.dark .quiz-opt input:checked{background:#22c55e;border-color:#22c55e}html.dark .quiz-opt.correct{background:#0f2a1c;border-color:#22c55e}html.dark .quiz-opt.wrong{background:#2d1212;border-color:#ef4444}html.dark .hero:before{background-image:radial-gradient(circle,#ffffff12 1px,#0000 1px)}html.dark .hero h1 em{color:#4ade80}html.dark .hero-art{background:var(--card)}html.dark .pub-band,html.dark .auth-aside{background:#0d1d17;border:1px solid #14532d}html.dark .pub-band .btn{color:var(--on-primary);background:#22c55e;border-color:#22c55e}html.dark .panel-scrim,html.dark .drawer-scrim{background:#0009}html.dark .auth-panel,html.dark .lang-pop{box-shadow:-12px 0 40px #00000080}html.dark .steps .card:before{background:var(--secondary-soft)}html.dark .price-card.featured{border-color:#22c55e}html.dark .pub-footer{background:var(--card)}html.dark .canvas-wrap{border-color:#3a4d48}html.dark .chart-box{border-radius:var(--r-control);background:#f8fafa;padding:8px}html.dark .collapse-btn{background:var(--card)}.theme-btn span{place-items:center;display:grid}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse-mark{0%,to{opacity:1;transform:scale(1)}50%{opacity:.75;transform:scale(.92)}}.btn.is-loading,button.is-loading{pointer-events:none;position:relative;color:#0000!important}.btn.is-loading>*,button.is-loading>*{opacity:0}.btn.is-loading:after,button.is-loading:after{content:"";border:2px solid;border-color:var(--text-2) transparent var(--text-2) transparent;border-radius:50%;width:18px;height:18px;margin:auto;animation:.7s linear infinite spin;position:absolute;inset:0}.btn-primary.is-loading:after,.btn-blue.is-loading:after{border-color:var(--on-primary) transparent var(--on-primary) transparent}.icon-btn.is-loading:after,.lang-opt.is-loading:after{border-color:var(--neutral) transparent var(--neutral) transparent}.page-loader{z-index:300;background:var(--bg);place-items:center;transition:opacity .2s,visibility .2s;display:grid;position:fixed;inset:0}.page-loader.is-done{opacity:0;visibility:hidden;pointer-events:none}.page-loader.is-nav{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#f8fafab8}html.dark .page-loader.is-nav{background:#090f0eb8}.loader-mark{width:96px;height:96px;color:var(--logo-ink);place-items:center;display:grid;position:relative}.loader-mark .logo{animation:1.4s ease-in-out infinite pulse-mark}.loader-ring{border:3px solid var(--border);border-top-color:var(--secondary);border-radius:50%;animation:.9s linear infinite spin;position:absolute;inset:0}.dlg{border:1px solid var(--border);border-radius:var(--r-panel);background:var(--card);color:var(--text);width:min(420px,100vw - 32px);padding:24px;box-shadow:0 20px 60px #080f0e4d}.dlg::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#080f0e8c}.dlg-mark{border-radius:var(--r-panel);background:var(--secondary-soft);width:56px;height:56px;color:var(--logo-ink);place-items:center;margin-bottom:14px;display:grid}.dlg-mark svg{width:34px;height:34px}.dlg-title{font-family:var(--font-display);margin:0 0 6px;font-size:20px;font-weight:800}.dlg-msg{color:var(--text-2);margin:0 0 20px}.dlg-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.dlg-actions .btn{min-width:110px}.err-page{background:var(--bg);place-items:center;min-height:100vh;padding:32px 20px;display:grid}.err-card{text-align:center;width:100%;max-width:520px}.err-code{font-family:var(--font-display);letter-spacing:-.04em;background:linear-gradient(135deg,var(--logo-ink),var(--secondary));color:#0000;-webkit-background-clip:text;background-clip:text;margin:18px 0 6px;font-size:clamp(72px,18vw,120px);font-weight:800;line-height:1}.err-card h1{margin:0 0 8px;font-size:26px;font-weight:800}.err-card p{color:var(--muted);margin:0 0 24px}.err-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.panel-head{z-index:5;background:var(--card);justify-content:space-between;align-items:center;margin:-24px -8px 18px 0;padding:24px 8px 10px 0;display:flex;position:sticky;top:-24px}[dir=rtl] .panel-head{margin:-6px 0 18px -8px}.panel-title{margin-top:20px}.btn-google{gap:10px;min-height:48px;font-weight:600}.or{color:var(--muted);align-items:center;gap:12px;margin:16px 0;font-size:13px;display:flex}.or:before,.or:after{content:"";background:var(--border);flex:1;height:1px}.link-btn{color:var(--secondary-ink);border-radius:var(--r-control);background:0 0;border:0;align-items:center;gap:6px;min-height:44px;padding:0 4px;font-size:14px;font-weight:600;display:inline-flex}.link-btn:hover{text-decoration:underline}.link-btn.center{justify-content:center;width:100%}.meter{grid-template-columns:repeat(3,1fr) auto;align-items:center;gap:6px;margin-top:2px;display:grid}.meter i{background:var(--border);height:4px;transition:background var(--ease);border-radius:99px}.meter span{color:var(--muted);text-align:end;min-width:44px;font-size:12px;font-weight:600}.meter[data-score="1"] i:first-child{background:#ef4444}.meter[data-score="2"] i:nth-child(-n+2){background:#eab308}.meter[data-score="3"] i{background:#22c55e}.panel-tools{align-items:center;gap:2px;display:flex}.auth-panel .lang-pop{top:50px}@keyframes swing{0%,to{transform:rotate(-16deg)}50%{transform:rotate(16deg)}}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-9px)}}@keyframes bubble{0%{opacity:.75;transform:translateY(0)}to{opacity:0;transform:translateY(-34px)}}@keyframes draw{0%{stroke-dashoffset:400px}to{stroke-dashoffset:0}}.hero-svg .swing{animation:2.4s ease-in-out infinite swing}.hero-svg .float{animation:5s ease-in-out infinite floaty}.hero-svg .float.f2{animation-duration:6.2s;animation-delay:-1.5s}.hero-svg .float.f3{animation-duration:7s;animation-delay:-3s}.hero-svg .bub{animation:2.8s ease-in infinite bubble}.hero-svg .bub.b2{animation-delay:-1s}.hero-svg .bub.b3{animation-delay:-1.9s}.hero-svg .trace{stroke-dasharray:400;animation:3.2s ease-in-out infinite alternate draw}.hero-svg .swing,.hero-svg .float,.hero-svg .bub{transform-box:fill-box}.hero-svg .swing{transform-origin:top}.bento{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.bento-card{background:var(--card);border:1px solid var(--border);border-radius:var(--r-panel);transition:transform var(--ease),box-shadow var(--ease),border-color var(--ease);flex-direction:column;display:flex;overflow:hidden}.bento-card:hover{box-shadow:var(--shadow-hover);border-color:#bbf7d0;transform:translateY(-3px)}.bento-card svg{border-bottom:1px solid var(--border);width:100%;height:auto;display:block}.bento-body{justify-items:start;gap:6px;padding:18px 20px 22px;display:grid}.bento-body h3{letter-spacing:-.01em;margin:4px 0 0;font-size:18px;font-weight:800}.bento-body p{color:var(--muted);margin:0;font-size:14px}.b-trace{stroke-dasharray:420;animation:3.4s ease-in-out infinite alternate draw}@media(max-width:1023px){.bento{grid-template-columns:1fr}}html.dark .bento-card:hover{border-color:#14532d}.toast-host{top:14px;z-index:500;pointer-events:none;inset-inline-end:16px;gap:10px;width:min(380px,100vw - 32px);display:grid;position:fixed;bottom:auto}.toast{pointer-events:auto;background:var(--card);color:var(--text);border:1px solid var(--border);border-radius:var(--r-panel);grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;max-width:none;padding:12px 10px 14px 12px;font-size:14px;animation:.28s cubic-bezier(.2,.9,.3,1.2) both toast-in;display:grid;position:relative;overflow:hidden;box-shadow:0 12px 34px #080f0e2e}.toast.is-out{animation:.22s ease-in both toast-out}.toast-ic{border-radius:10px;flex:none;place-items:center;width:34px;height:34px;display:grid}.toast-ic svg{width:18px;height:18px}.toast-msg{overflow-wrap:anywhere;min-width:0;font-weight:500;line-height:1.35}.toast-brand{opacity:.55;width:18px;height:18px}html.dark .toast-brand img{content:url(/brand/mark-light.png)}.toast-brand svg{width:100%;height:100%;display:block}.toast-x{width:30px;height:30px;color:var(--muted);background:0 0;border:0;border-radius:8px;place-items:center;display:grid}.toast-x:hover{color:var(--text);background:#080f0e0f}.toast-x svg{width:14px;height:14px}.toast-bar{transform-origin:0;width:100%;height:3px;animation:linear forwards toast-bar;position:absolute;bottom:0;left:0}.toast-success .toast-ic{color:#15803d;background:#dcfce7}.toast-success .toast-bar{background:#22c55e}.toast-error .toast-ic{color:#b91c1c;background:#fee2e2}.toast-error .toast-bar{background:#ef4444}.toast-warning .toast-ic{color:#a16207;background:#fef3c7}.toast-warning .toast-bar{background:#eab308}.toast-info .toast-ic{color:#0369a1;background:#e0f2fe}.toast-info .toast-bar{background:#0ea5e9}html.dark .toast-success .toast-ic{color:#86efac;background:#0f2a1c}html.dark .toast-error .toast-ic{color:#fca5a5;background:#2d1212}html.dark .toast-warning .toast-ic{color:#fde68a;background:#2a2208}html.dark .toast-info .toast-ic{color:#7dd3fc;background:#0c2433}html.dark .toast{box-shadow:0 12px 34px #00000080}@keyframes toast-in{0%{opacity:0;transform:translateY(-14px)scale(.96)}to{opacity:1;transform:none}}@keyframes toast-out{to{opacity:0;transform:translateY(-10px)scale(.97)}}@keyframes toast-bar{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media(max-width:767px){.toast-host{top:calc(env(safe-area-inset-top) + 12px);width:auto;inset-inline:12px}}.seg{border:1px solid var(--border);isolation:isolate;background:linear-gradient(#eef2f1,#f4f7f6);border-radius:16px;grid-template-columns:1fr 1fr;gap:0;padding:5px;display:grid;position:relative}.seg-thumb{z-index:-1;background:var(--primary);border-radius:12px;width:calc(50% - 5px);transition:transform .32s cubic-bezier(.3,1.3,.5,1);position:absolute;top:5px;bottom:5px;left:5px;box-shadow:0 6px 16px #080f0e38}.seg[data-i="1"] .seg-thumb{transform:translate(100%)}[dir=rtl] .seg-thumb{left:auto;right:5px}[dir=rtl] .seg[data-i="1"] .seg-thumb{transform:translate(-100%)}.seg button{letter-spacing:.01em;min-height:46px;font-size:15px;font-weight:700;font-family:var(--font-display);color:var(--text-2);background:0 0;border:0;border-radius:12px;flex:none;justify-content:center;align-items:center;gap:8px;transition:color .2s;display:inline-flex}.seg button[aria-selected=true]{color:var(--on-primary);box-shadow:none;background:0 0}.seg button .ico{transition:transform .3s cubic-bezier(.3,1.6,.5,1)}.seg button[aria-selected=true] .ico{transform:scale(1.15)rotate(-6deg)}html.dark .seg{background:var(--bg)}html.dark .seg button[aria-selected=true]{color:var(--on-primary);background:0 0}.price-grid{border:1px dashed var(--border);border-radius:var(--r-panel);gap:8px;margin:14px 0 0;padding:14px;display:grid}.price-head,.price-row{grid-template-columns:minmax(0,2fr) minmax(0,1.2fr) 72px;align-items:center;gap:10px;display:grid}.price-head{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:12px;font-weight:700}@media(max-width:767px){.price-head,.price-row{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) 52px;gap:6px}}.currency-pick{flex-wrap:wrap;gap:6px;margin:0 0 18px;display:flex}.currency-pick button{border:1px solid var(--border);background:var(--card);letter-spacing:.04em;min-width:56px;min-height:44px;color:var(--text-2);transition:all var(--ease);border-radius:999px;padding:0 12px;font-size:13px;font-weight:700}.currency-pick button:hover{border-color:#94a3b8}.currency-pick button[aria-current]{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.sx{flex:1;min-width:0;max-width:520px;position:relative}.sx-trigger{border:1px solid var(--border);background:linear-gradient(180deg,var(--card),var(--bg));width:100%;min-height:44px;color:var(--neutral);text-align:start;transition:border-color var(--ease),box-shadow var(--ease);border-radius:14px;align-items:center;gap:10px;padding:0 10px 0 14px;display:flex}.sx-trigger:hover{box-shadow:var(--shadow-hover);border-color:#94a3b8}.sx-ph{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;overflow:hidden}.sx kbd{font:600 11px var(--font-sans);border:1px solid var(--border);color:var(--muted);background:var(--card);border-bottom-width:2px;border-radius:6px;padding:1px 7px}.sx-pop{z-index:80;background:var(--card);border:1px solid var(--border);top:0;border-radius:18px;min-width:min(560px,92vw);position:absolute;inset-inline:0;overflow:hidden;box-shadow:0 24px 60px #080f0e38}.sx-head{border-bottom:1px solid var(--border);min-height:56px;color:var(--neutral);align-items:center;gap:10px;padding:0 8px 0 16px;display:flex}.sx-head input{min-width:0;min-height:52px;color:var(--text);background:0 0;border:0;outline:none;flex:1;font-size:16px}.sx-head input::-webkit-search-cancel-button{display:none}.sx-close{width:44px;height:44px;color:var(--muted);background:0 0;border:0;border-radius:12px;place-items:center;display:grid}.sx-close:hover{background:var(--bg);color:var(--text)}.sx-spin{border:2px solid var(--border);border-top-color:var(--secondary);border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin}.sx-filters{scrollbar-width:none;border-bottom:1px solid var(--border);background:var(--bg);align-items:center;gap:6px;padding:10px 14px;display:flex;overflow-x:auto}.sx-sep{background:var(--border);flex:none;width:1px;height:20px;margin:0 4px}.chip{border:1px solid var(--border);background:var(--card);min-height:36px;color:var(--text-2);transition:all var(--ease);border-radius:999px;flex:none;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:600;display:inline-flex}.chip:hover{border-color:#94a3b8}.chip.is-on{background:var(--primary);border-color:var(--primary);color:var(--on-primary);transform:translateY(-1px);box-shadow:0 4px 12px #080f0e2e}.sx-body{max-height:min(56vh,420px);padding:8px;overflow-y:auto}.sx-label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);justify-content:space-between;align-items:center;padding:4px 8px;font-size:12px;font-weight:700;display:flex}.sx-chips{flex-wrap:wrap;gap:6px;padding:4px 8px 10px;display:flex}.sx-list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.sx-item{border-radius:12px;align-items:center;gap:12px;min-height:56px;padding:10px;transition:background .12s;display:flex}.sx-item.is-active{background:var(--secondary-soft)}.sx-ic{border-radius:11px;flex:none;place-items:center;width:38px;height:38px;display:grid}.sx-txt{flex:1;min-width:0;display:grid}.sx-txt b{font-size:14.5px;font-weight:700}.sx-txt b mark{color:inherit;background:#22c55e47;border-radius:3px;padding:0 1px}.sx-txt small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.sx-empty{text-align:center;color:var(--muted);margin:0;padding:28px 8px}.sx-foot{border-top:1px solid var(--border);min-height:48px;color:var(--secondary-ink);background:var(--bg);justify-content:space-between;align-items:center;padding:0 18px;font-size:14px;font-weight:600;display:flex}.sx-foot:hover{text-decoration:underline}@media(max-width:767px){.sx{flex:none;max-width:none}.sx-trigger{background:0 0;border-color:#0000;justify-content:center;width:44px;padding:0}.sx-trigger .sx-ph,.sx-trigger kbd{display:none}.sx-pop{min-width:0;padding-top:env(safe-area-inset-top);z-index:450;border:0;border-radius:0;flex-direction:column;padding-bottom:84px;display:flex;position:fixed;inset:0}.sx-body{flex:1;max-height:none}}html.dark .sx-trigger{background:var(--card)}html.dark .sx-item.is-active{background:var(--secondary-soft)}html.dark .sx-pop{box-shadow:0 24px 60px #0009}html.fx [data-reveal]{opacity:0;transition:opacity .6s ease var(--d,0s),translate .6s cubic-bezier(.2,.8,.2,1) var(--d,0s);translate:0 22px}html.fx [data-reveal].is-in{opacity:1;translate:0}.spot{position:relative;overflow:hidden}.spot:after{content:"";pointer-events:none;opacity:0;background:radial-gradient(280px circle at var(--mx,50%) var(--my,50%),#22c55e29,transparent 62%);transition:opacity .25s;position:absolute;inset:0}.spot:hover:after{opacity:1}.tilt{transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .18s ease-out,box-shadow var(--ease),border-color var(--ease);will-change:transform}.feat .ic-box,.subject-card .ic-box{transition:transform .3s cubic-bezier(.3,1.6,.5,1)}.feat:hover .ic-box,.subject-card:hover .ic-box{transform:rotate(-8deg)scale(1.1)}.price-card{transition:transform var(--ease),box-shadow var(--ease),border-color var(--ease)}.price-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-4px)}.steps .card{transition:transform var(--ease),border-color var(--ease)}.steps .card:hover{border-color:#86efac;transform:translateY(-3px)}.steps .card:hover:before{background:var(--secondary);color:#fff}.pub-band{position:relative;overflow:hidden}.pub-band:before{content:"";pointer-events:none;background:radial-gradient(circle,#22c55e59,#0000 65%);border-radius:50%;width:360px;height:360px;animation:8s ease-in-out infinite floaty;position:absolute;inset:-40% -10% auto auto}.pub-band>*{position:relative}@media(prefers-reduced-motion:reduce){.tilt{transform:none!important}html.fx [data-reveal]{opacity:1;transition:none;translate:0}}.stat-strip{grid-template-columns:repeat(4,1fr);gap:16px;max-width:1200px;margin:28px auto 0;padding:0 32px;display:grid}.stat-strip>div{text-align:center;border-inline-end:1px solid var(--border);gap:2px;padding:18px 8px;display:grid}.stat-strip>div:last-child{border-inline-end:0}.stat-strip b{font-family:var(--font-display);letter-spacing:-.03em;color:var(--logo-ink);font-size:34px;font-weight:800}.stat-strip b:after{content:attr(data-suffix)}.stat-strip span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:13px;font-weight:600}@media(max-width:767px){.stat-strip{grid-template-columns:repeat(2,1fr);gap:0;padding-inline:16px}.stat-strip>div:nth-child(2){border-inline-end:0}.stat-strip>div{border-bottom:1px solid var(--border)}.stat-strip>div:nth-child(n+3){border-bottom:0}}.mega{position:relative}.mega-btn{border-radius:var(--r-control);min-height:44px;font:inherit;color:inherit;transition:background var(--ease),color var(--ease);background:0 0;border:0;align-items:center;gap:6px;padding:0 12px;font-weight:500;display:inline-flex}.mega-btn:hover,.mega-btn[aria-expanded=true]{color:var(--secondary-ink);background:#080f0e0a}.mega-btn .ico{transition:transform var(--ease)}.mega-btn[aria-expanded=true] .ico{transform:rotate(180deg)}.mega-pop{z-index:70;background:var(--card);border:1px solid var(--border);top:100%;border-radius:18px;width:min(620px,92vw);margin-top:4px;padding:14px;position:absolute;inset-inline-start:-12px;box-shadow:0 24px 60px #080f0e2e}.mega-grid{grid-template-columns:1.3fr 1fr;gap:14px;display:grid}.mega-subjects{gap:4px;display:grid}.mega-tile{transition:background var(--ease);border-radius:12px;align-items:center;gap:12px;padding:10px;display:flex}.mega-tile b{font-family:var(--font-display);font-size:15px;display:block}.mega-tile small{color:var(--muted);font-size:12.5px;display:block}.mega-tile .ic-box{width:42px;height:42px}.mega-hot{background:var(--bg);border-radius:12px;align-content:start;gap:2px;padding:10px;display:grid}.mega-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:4px 8px;font-size:11px;font-weight:700}.mega-hot a{border-radius:8px;align-items:center;gap:8px;min-height:40px;padding:0 8px;font-size:14px;font-weight:500;display:flex}.mega-hot a:hover{background:var(--card);color:var(--secondary-ink)}.mega-hot .mega-all{color:var(--secondary-ink);margin-top:6px;font-weight:700}html.dark .mega-pop{box-shadow:0 24px 60px #0009}html.dark .mega-btn:hover,html.dark .mega-btn[aria-expanded=true]{background:#ffffff0f}@media(max-width:1023px){.pub-nav.is-open .links{gap:2px;padding:8px 0 12px}.pub-nav .links .mega{width:100%}.mega-btn{justify-content:space-between;width:100%;padding:0 12px}.mega-pop{width:auto;box-shadow:none;border:0;margin:0;padding:0 0 6px;position:static}.mega-grid{grid-template-columns:1fr}.pub-actions .fs-btn{display:none}}.fs-btn span{place-items:center;display:grid}.tour-ring{z-index:600;pointer-events:none;border-radius:14px;transition:top .28s,left .28s,width .28s,height .28s;position:fixed;box-shadow:0 0 0 9999px #080f0e9e,0 0 0 3px #22c55e}.tour-pop{z-index:610;background:var(--card);width:min(340px,100vw - 24px);color:var(--text);border:1px solid var(--border);border-radius:18px;padding:18px;animation:.26s both toast-in;position:fixed;box-shadow:0 24px 60px #080f0e59}.tour-step{letter-spacing:.08em;text-transform:uppercase;color:var(--secondary-ink);font-size:11px;font-weight:700}.tour-pop h3{font-family:var(--font-display);margin:4px 0;font-size:18px;font-weight:800}.tour-pop p{color:var(--text-2);margin:0 0 12px;font-size:14px}.tour-dots{gap:5px;margin-bottom:12px;display:flex}.tour-dots i{background:var(--border);width:6px;height:6px;transition:all var(--ease);border-radius:99px}.tour-dots i.on{background:#22c55e;width:20px}.tour-actions{align-items:center;gap:8px;display:flex}@media(max-width:767px){.tour-pop{inset:auto 12px calc(env(safe-area-inset-bottom) + 12px) 12px;width:auto;top:auto!important;left:12px!important}}.m-brand,.m-title,.sheet-scrim,.sheet{display:none}.notif-pop{z-index:50;inset-inline-end:0;width:300px;padding:14px;position:absolute;top:52px}@media(max-width:767px){html{-webkit-tap-highlight-color:transparent}body.app-body{overscroll-behavior-y:none;-webkit-user-select:none;user-select:none}body.app-body input,body.app-body textarea,body.app-body select,body.app-body main{-webkit-user-select:text;user-select:text}.topbar{padding:calc(env(safe-area-inset-top) + 6px) 10px 6px 14px;min-height:calc(env(safe-area-inset-top) + 56px);-webkit-backdrop-filter:saturate(180%)blur(16px);backdrop-filter:saturate(180%)blur(16px);box-shadow:0 1px 0 var(--border);background:#ffffffdb;border-bottom:0;gap:4px}html.dark .topbar{background:#090f0edb}.menu-btn,.topbar .tools,.topbar .d-heading{display:none!important}.m-brand{justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex}.m-title{min-width:0;font-family:var(--font-display);letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;flex:1;padding-inline-start:6px;font-size:19px;font-weight:800;display:block;overflow:hidden}.topbar-gap{display:none}.content{padding:14px 14px calc(92px + env(safe-area-inset-bottom))}.card,.panel{border-radius:18px}.btn{border-radius:14px}.btn:active{transform:scale(.97)}.app-body main{animation:.32s cubic-bezier(.2,.8,.2,1) both page-in}@keyframes page-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.mobile-nav{left:12px;right:12px;bottom:calc(env(safe-area-inset-bottom) + 10px);border:1px solid var(--border);-webkit-backdrop-filter:saturate(180%)blur(18px);backdrop-filter:saturate(180%)blur(18px);background:#ffffffe6;border-radius:24px;grid-template-columns:repeat(5,1fr);gap:2px;padding:6px;box-shadow:0 10px 34px #080f0e29}html.dark .mobile-nav{background:#111a18eb;box-shadow:0 10px 34px #00000080}.mobile-nav>a,.mobile-nav>button{min-height:54px;color:var(--neutral);font:600 10.5px var(--font-sans);background:0 0;border:0;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:2px;transition:transform .16s,color .16s;display:flex;position:relative}.mobile-nav>a:active,.mobile-nav>button:active{transform:scale(.92)}.mn-ic{border-radius:99px;place-items:center;width:40px;height:28px;transition:background .22s,width .22s;display:grid}.mn-ic .ico{width:22px;height:22px}.mobile-nav a[aria-current=page]{color:var(--text)}.mobile-nav a[aria-current=page] .mn-ic{background:var(--primary);color:var(--on-primary);width:52px}.mobile-nav a[aria-current=page] .mn-lb{font-weight:800}.sheet-scrim{z-index:90;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#080f0e80;display:block;position:fixed;inset:0}.sheet{z-index:100;background:var(--card);max-height:86vh;padding:8px 16px calc(env(safe-area-inset-bottom) + 18px);overscroll-behavior:contain;inset-inline:0;border-radius:28px 28px 0 0;display:block;position:fixed;bottom:0;overflow-y:auto;box-shadow:0 -16px 50px #080f0e40}.sheet-anim{transition:transform .32s cubic-bezier(.2,.9,.2,1)}.sheet-off{transform:translateY(100%)}.sheet-on{transform:translateY(0)}.sheet-grab{background:var(--border);border-radius:99px;width:44px;height:5px;margin:6px auto 14px}.sheet-profile{background:var(--bg);border-radius:18px;align-items:center;gap:12px;margin-bottom:14px;padding:12px;display:flex}.sheet-profile b{font-family:var(--font-display);display:block}.sheet-profile small{color:var(--muted)}.sheet-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px;display:grid}.sheet-tile{border:1px solid var(--border);text-align:center;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:92px;padding:10px 6px;font-size:12.5px;font-weight:600;transition:transform .16s,background .16s;display:flex}.sheet-tile:active{transform:scale(.95)}.sheet-tile[aria-current=page]{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.sheet-ic{background:var(--secondary-soft);width:42px;height:42px;color:var(--secondary-ink);border-radius:14px;place-items:center;display:grid}.sheet-tile[aria-current=page] .sheet-ic{color:inherit;background:#ffffff29}.sheet-tools{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;padding:10px 0 14px;display:flex}.sheet-chip{border:1px solid var(--border);background:var(--card);border-radius:99px;align-items:center;gap:8px;min-height:44px;padding:0 14px;font-size:14px;font-weight:600;display:inline-flex}.sheet-tools .icon-btn{border:1px solid var(--border);border-radius:99px}.sheet-tools .lang-pop{inset-inline:0 auto;top:auto;bottom:52px}.sheet-out{color:#b91c1c;border-color:#fecaca}.sheet-out:hover{background:#fef2f2}.pub-nav{padding-top:calc(env(safe-area-inset-top) + 6px)}.pub-nav.is-open .links{inset:calc(env(safe-area-inset-top) + 64px) 12px auto 12px;z-index:60;background:var(--card);border:1px solid var(--border);border-radius:22px;max-height:78vh;margin:0;padding:10px;position:fixed;overflow-y:auto;box-shadow:0 24px 60px #080f0e40}.pub-nav .links a,.mega-btn{border-radius:14px;min-height:52px;font-size:16px;font-weight:600}}@media(min-width:768px){.m-brand,.m-title{display:none}}.tools{flex:none;align-items:center;gap:2px;display:flex}.topbar>.relative,.topbar>.d-logout{flex:none}.topbar{flex-wrap:nowrap}@media(max-width:1180px){.topbar .tools>[data-tour-start]{display:none}}@media(max-width:1023px){.topbar .tools .fs-btn{display:none}}@keyframes drip{0%{opacity:0;transform:translateY(0)scale(.6)}12%{opacity:1;transform:translateY(0)scale(1)}70%{opacity:1}to{opacity:0;transform:translateY(46px)scale(.9)}}@keyframes flask-colour{0%,30%{fill:#bae6fd}52%{fill:#c4b5fd}62%,88%{fill:#f472b6}to{fill:#bae6fd}}@keyframes level-down{0%{transform:scaleY(1)}85%,to{transform:scaleY(.55)}}@keyframes draw-curve{0%{stroke-dashoffset:260px}85%,to{stroke-dashoffset:0}}@keyframes dot-hue{0%,50%{fill:#a78bfa}60%,to{fill:#f472b6}}@keyframes fb{0%{opacity:.7;transform:translateY(0)}to{opacity:0;transform:translateY(-16px)}}@keyframes ph-fade{0%,55%{opacity:.3}70%,to{opacity:1}}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.03,.98)}}@keyframes nucleus{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}@keyframes orbit{to{transform:rotate(360deg)}}@keyframes lens-move{0%{transform:translate(214px,62px)scale(.9)}25%{transform:translate(170px,110px)scale(1.1)}50%{transform:translate(112px,96px)scale(1.25)}75%{transform:translate(140px,52px)scale(1.05)}to{transform:translate(214px,62px)scale(.9)}}@keyframes ring-pulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.9;transform:scale(1.08)}}@keyframes mote{0%,to{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-10px)}}.b-chem .drip{transform-box:fill-box;transform-origin:50%;animation:1.5s ease-in infinite drip}.b-chem .drip.d2{animation-delay:.75s}.b-chem .flask-liquid{animation:6s ease-in-out infinite flask-colour}.b-chem .burette-level{transform-box:fill-box;transform-origin:top;animation:6s linear infinite level-down}.b-chem .ti-draw{stroke-dasharray:260;animation:6s ease-in-out infinite draw-curve}.b-chem .ti-dot{animation:6s step-end infinite dot-hue}.b-chem .fb{transform-box:fill-box;animation:2.2s ease-in infinite fb}.b-chem .fb.b2{animation-delay:-1.1s}.b-chem .ti-ph{animation:6s ease-in-out infinite ph-fade}.b-bio .cell-breathe{transform-box:fill-box;transform-origin:50%;animation:4s ease-in-out infinite breathe}.b-bio .nucleus{transform-box:fill-box;transform-origin:50%;animation:3s ease-in-out infinite nucleus}.b-bio .orbit{animation:26s linear infinite orbit}.b-bio .lens{animation:9s ease-in-out infinite lens-move}.b-bio .lens-ring{transform-box:fill-box;transform-origin:50%;animation:2.4s ease-in-out infinite ring-pulse}.b-bio .mote{animation:3.4s ease-in-out infinite mote}.b-bio .mote.m2{animation-delay:-1.2s}.b-bio .mote.m3{animation-delay:-2.2s}.b-physics .ping{transform-box:fill-box;transform-origin:50%;animation:2.2s ease-in-out infinite ring-pulse}.bento-card:hover .drip{animation-duration:.9s}.bento-card:hover .orbit{animation-duration:10s}.bento-card:hover .lens{animation-duration:5s}@media(prefers-reduced-motion:reduce){.b-chem *,.b-bio *,.b-physics *{animation:none!important}.b-chem .flask-liquid{fill:#f472b6}.b-chem animateMotion{display:none}}.kpi-grid .stat-tile{transition:transform var(--ease),box-shadow var(--ease);text-decoration:none}.kpi-grid .stat-tile:hover{box-shadow:var(--shadow-hover);transform:translateY(-3px)}.bars{grid-template-columns:repeat(14,1fr);align-items:end;gap:6px;height:150px;margin-top:14px;display:grid}.bar{justify-content:center;align-items:end;height:100%;display:flex;position:relative}.bar i{transform-origin:bottom;background:linear-gradient(#4ade80,#16a34a);border-radius:6px 6px 2px 2px;width:100%;animation:.7s cubic-bezier(.2,.8,.2,1) both bar-in;display:block}.bar span{color:var(--muted);font-size:11px;font-weight:700;position:absolute;top:-18px}.bars-x{justify-content:space-between;margin-top:6px;display:flex}@keyframes bar-in{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.filter-inline{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.role-pill{background:var(--secondary-soft);color:var(--secondary-ink);border-radius:999px;align-items:center;gap:4px;margin:2px 4px 2px 0;padding:2px 4px 2px 10px;font-size:12px;font-weight:700;display:inline-flex}.role-pill small{opacity:.8;font-weight:500}.role-pill form{display:inline}.role-pill button{width:22px;height:22px;color:inherit;background:0 0;border:0;border-radius:99px;font-size:16px;line-height:1}.role-pill button:hover{background:#080f0e1a}.row-menu{text-align:start;display:inline-block;position:relative}.row-menu summary{cursor:pointer;list-style:none}.row-menu summary::-webkit-details-marker{display:none}.row-menu-pop{z-index:40;background:var(--card);border:1px solid var(--border);inset-inline-end:0;border-radius:14px;gap:6px;width:260px;padding:10px;display:grid;position:absolute;top:48px;box-shadow:0 16px 40px #080f0e33}.grant-grid{grid-template-columns:1.2fr 1.4fr 1.4fr .6fr auto;align-items:end;gap:12px;display:grid}@media(max-width:1023px){.grant-grid{grid-template-columns:1fr 1fr}}@media(max-width:767px){.grant-grid{grid-template-columns:1fr}.row-menu-pop{inset:auto 12px calc(env(safe-area-inset-bottom) + 12px) 12px;width:auto;position:fixed}}html.dark .role-pill{background:var(--secondary-soft);color:#86efac}html.dark .bar i{background:linear-gradient(#4ade80,#15803d)}.admin-banner{background:var(--primary);color:var(--on-primary);text-align:center;justify-content:center;align-items:center;gap:10px;padding:10px 16px;font-size:14px;font-weight:600;display:flex}.exp-card{position:relative}.exp-card:before{content:"";border-radius:inherit;opacity:0;pointer-events:none;background:linear-gradient(135deg,#22c55e,#0ea5e9 55%,#8b5cf6);padding:1.5px;transition:opacity .3s;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.exp-card:hover:before,.exp-card:focus-visible:before{opacity:1}.exp-card:hover{box-shadow:0 18px 40px #080f0e24}.exp-thumb{transition:transform .4s cubic-bezier(.3,1.5,.5,1),border-radius .3s;position:relative;overflow:hidden}.exp-thumb:after{content:"";background:linear-gradient(115deg,#0000 30%,#ffffff8c,#0000 70%);position:absolute;inset:0;transform:translate(-120%)}.exp-card:hover .exp-thumb{border-radius:26px;transform:scale(1.07)rotate(-2deg)}.exp-card:hover .exp-thumb:after{transition:transform .8s;transform:translate(120%)}.exp-thumb>svg{z-index:1;transition:transform .5s cubic-bezier(.3,1.5,.5,1);position:relative}.exp-card:hover .exp-thumb>svg{animation:1.6s ease-in-out infinite thumb-icon}.exp-card:hover .exp-thumb.physics>svg{transform-origin:50% 0;animation-name:thumb-swing;animation-duration:1.4s}.exp-card:hover .exp-thumb.chemistry>svg{animation-name:thumb-wobble}.exp-card:hover .exp-thumb.biology>svg{animation-name:thumb-pulse}.thumb-fx{pointer-events:none;position:absolute;inset:0}.thumb-fx i{opacity:0;background:currentColor;border-radius:50%;width:8px;height:8px;position:absolute;bottom:-8px}.thumb-fx i:first-child{left:18%}.thumb-fx i:nth-child(2){width:6px;height:6px;left:42%}.thumb-fx i:nth-child(3){left:66%}.thumb-fx i:nth-child(4){width:5px;height:5px;left:82%}.exp-card:hover .thumb-fx i{animation:1.8s ease-out infinite thumb-rise}.exp-card:hover .thumb-fx i:nth-child(2){animation-delay:.35s}.exp-card:hover .thumb-fx i:nth-child(3){animation-delay:.7s}.exp-card:hover .thumb-fx i:nth-child(4){animation-delay:1.05s}.exp-card h3{transition:color var(--ease),transform var(--ease)}.exp-card:hover h3{color:var(--secondary-ink);transform:translate(3px)}.exp-card .row.between>.ico-sm{transition:transform .3s cubic-bezier(.3,1.6,.5,1)}.exp-card:hover .row.between>.ico-sm{transform:translate(6px);color:var(--secondary-ink)!important}.exp-card .tag{transition:transform var(--ease)}.exp-card:hover .tag{transform:translateY(-2px)}@keyframes thumb-icon{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-4px)scale(1.12)}}@keyframes thumb-swing{0%,to{transform:rotate(-14deg)}50%{transform:rotate(14deg)}}@keyframes thumb-wobble{0%,to{transform:rotate(0)scale(1.05)}25%{transform:rotate(-9deg)scale(1.1)}75%{transform:rotate(9deg)scale(1.1)}}@keyframes thumb-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.18)}}@keyframes thumb-rise{0%{opacity:0;transform:translateY(0)scale(.6)}20%{opacity:.55}to{opacity:0;transform:translateY(-96px)scale(1.2)}}@media(prefers-reduced-motion:reduce){.exp-card *,.exp-card:after{animation:none!important}}.subject-card:before,.bento-card:before{content:"";border-radius:inherit;pointer-events:none;z-index:2;background:linear-gradient(115deg,#0000 35%,#ffffff59,#0000 65%);position:absolute;inset:0;transform:translate(-130%)}.subject-card:hover:before,.bento-card:hover:before{transition:transform .9s;transform:translate(130%)}.bento-card{position:relative;overflow:hidden}.chip,.type-card,.mega-tile,.sheet-tile{transition:transform .16s cubic-bezier(.3,1.6,.5,1),background var(--ease),border-color var(--ease)}.chip:hover,.mega-tile:hover{transform:translateY(-2px)}.type-card:hover{transform:translateY(-3px)scale(1.02)}.sd-btn span,.fs-btn span{place-items:center;display:grid}.sd-btn:active svg{transform:scale(.85)}.sd-btn svg{transition:transform .16s}.topbar{gap:8px;padding-inline:28px}.topbar-gap{flex:1 1 0;min-width:8px;display:block}.topbar .sx{flex:0 520px}.topbar .tools{border-inline-end:1px solid var(--border);margin-inline-end:6px;padding-inline-end:10px}.topbar .icon-btn{border-radius:12px}.acct{flex:none;position:relative}.acct-btn{border:1px solid var(--border);background:var(--card);min-height:44px;transition:border-color var(--ease),box-shadow var(--ease);border-radius:999px;align-items:center;gap:2px;padding:3px 8px 3px 3px;display:inline-flex}.acct-btn:hover,.acct-btn[aria-expanded=true]{box-shadow:var(--shadow-hover);border-color:#94a3b8}.acct-btn .avatar{width:36px;height:36px}.acct-chev{color:var(--muted);transition:transform var(--ease)}.acct-btn[aria-expanded=true] .acct-chev{transform:rotate(180deg)}.acct-pop{z-index:90;background:var(--card);border:1px solid var(--border);inset-inline-end:0;border-radius:16px;gap:2px;width:280px;padding:8px;display:grid;position:absolute;top:calc(100% + 8px);box-shadow:0 20px 50px #080f0e33}.acct-head{border-bottom:1px solid var(--border);align-items:center;gap:12px;margin-bottom:6px;padding:10px 10px 12px;display:flex}.acct-head b{font-family:var(--font-display);font-size:15px;display:block}.acct-head small{color:var(--muted);text-overflow:ellipsis;max-width:170px;font-size:12.5px;display:block;overflow:hidden}.acct-pop a,.acct-pop button[role=menuitem]{width:100%;min-height:44px;color:var(--text);text-align:start;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:0 12px;font-size:14.5px;font-weight:500;transition:background .12s;display:flex}.acct-pop a:hover,.acct-pop button[role=menuitem]:hover{background:var(--bg)}.acct-pop .ico-sm{color:var(--neutral)}.acct-sep{background:var(--border);height:1px;margin:4px 6px}.acct-out,.acct-out .ico-sm{color:#b91c1c!important}.acct-out:hover{background:#fef2f2!important}html.dark .acct-out:hover{background:#2d1212!important}html.dark .acct-pop{box-shadow:0 20px 50px #0009}@media(max-width:1180px){.topbar .sx{flex:280px}}@media(max-width:767px){.topbar{padding-inline:12px 10px}.topbar-gap,.acct-chev{display:none}.acct-btn{background:0 0;border:0;padding:0}.acct-btn:hover{box-shadow:none}.m-title{flex:1}.acct-pop{inset:auto 12px calc(env(safe-area-inset-bottom) + 90px) 12px;width:auto;position:fixed;top:auto}.acct-btn{justify-content:center;min-width:44px}}[data-tip]{position:relative}[data-tip]:after{content:attr(data-tip);background:var(--primary);color:var(--on-primary);font:600 12px var(--font-sans);white-space:nowrap;opacity:0;pointer-events:none;z-index:120;border-radius:8px;padding:5px 10px;transition:opacity .14s,transform .14s;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%,-4px);box-shadow:0 6px 18px #080f0e40}[data-tip]:hover:after,[data-tip]:focus-visible:after{opacity:1;transform:translate(-50%)}[data-tip-pos=left]:after{top:50%;left:auto;right:calc(100% + 8px);transform:translate(4px,-50%)}[data-tip-pos=left]:hover:after,[data-tip-pos=left]:focus-visible:after{transform:translateY(-50%)}[data-tip-pos=top]:after{top:auto;bottom:calc(100% + 8px);transform:translate(-50%,4px)}[data-tip-pos=top]:hover:after{transform:translate(-50%)}@media(hover:none){[data-tip]:after{display:none}}.lab-toolbar{gap:8px}.lab-toolbar .icon-btn{border:1px solid var(--border);background:var(--card);border-radius:12px}.lab-toolbar .icon-btn:hover{border-color:#94a3b8}.lab-toolbar .icon-btn.btn-primary{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.lab-toolbar .icon-btn.btn-primary:hover{background:var(--primary-hover)}.lab-toolbar .lab-back{background:0 0;border-color:#0000}.lab-mode{border:1px solid var(--border);background:var(--card);border-radius:14px;gap:2px;padding:3px;display:inline-flex}.lab-mode .icon-btn{border:0;border-radius:11px;width:42px;height:42px}.lab-mode .icon-btn[aria-current=true]{background:var(--primary);color:var(--on-primary)}.lab-badge{color:#a16207;background:#fefce8;border:1px solid #fde68a;border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.lab-badge .ico{width:18px;height:18px}html.dark .lab-badge{color:#fde68a;background:#2a2208;border-color:#5c4a10}.lab-toolbar h1{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.canvas-wrap{overflow:hidden}.canvas-wrap svg{transform-origin:0 0;will-change:auto}.canvas-wrap.is-zoomed{cursor:grab}.canvas-wrap.is-panning{cursor:grabbing}.vt-bar{z-index:6;border:1px solid var(--border);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);top:10px;background:#ffffffeb;border-radius:12px;align-items:center;gap:2px;padding:3px;display:flex;position:absolute;inset-inline-end:10px;box-shadow:0 4px 14px #080f0e1f}html.dark .vt-bar{background:#111a18eb}.vt-btn{width:36px;height:36px;color:var(--text-2);transition:background var(--ease),color var(--ease);background:0 0;border:0;border-radius:9px;place-items:center;display:grid}.vt-btn:hover{background:var(--bg);color:var(--text)}.vt-zoom{text-align:center;min-width:40px;color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px;font-weight:700}.vt-only-open{display:none}.vt-expand{z-index:5;border:1px solid var(--border);top:8px;background:#ffffffeb;position:absolute;inset-inline-end:8px;box-shadow:0 4px 14px #080f0e1f}html.dark .vt-expand{background:#111a18eb}.chart-box{position:relative}.canvas-wrap.is-expanded,.chart-box.is-expanded{z-index:300;aspect-ratio:auto;background-color:var(--card);border-radius:18px;position:fixed;inset:14px;box-shadow:0 0 0 100vmax #080f0e9e,0 30px 80px #00000073}.chart-box.is-expanded{background:#f8fafa;height:auto;padding:18px 18px 12px}.canvas-wrap.is-expanded svg{width:100%;height:100%}.canvas-wrap.is-expanded .vt-only-open{display:grid}.canvas-wrap.is-expanded .sim-status{top:14px;left:14px}body.vt-open{overflow:hidden}@media(max-width:767px){.canvas-wrap.is-expanded,.chart-box.is-expanded{box-shadow:none;border-radius:0;inset:0}.vt-bar{top:8px;inset-inline-end:8px}.vt-zoom{display:none}}.vt-bar{flex-direction:column;top:10px}.canvas-wrap .sim-status{max-width:calc(100% - 64px)}.vt-zoom{min-width:0;padding:2px 0;font-size:11px}@media(max-width:767px){.vt-zoom{display:block}}.lab-dock,.drawer-close{display:none}@media(min-width:1024px){.lab-layout.has-drawers{display:block;position:relative;overflow-x:clip}.lab-layout.has-drawers>.lab-order-canvas{width:100%}.lab-layout.has-drawers>.lab-tabs-all{display:none}.lab-layout.has-drawers>.panel{z-index:30;visibility:hidden;opacity:0;border-radius:16px;width:min(340px,36%);padding-top:52px;transition:transform .3s cubic-bezier(.2,.9,.2,1),opacity .2s,visibility 0s linear .3s;position:absolute;top:0;bottom:0;overflow-y:auto;box-shadow:0 18px 50px #080f0e38}.lab-layout.has-drawers>.panel-left{left:0;transform:translate(-24px)}.lab-layout.has-drawers>.panel-right{right:0;transform:translate(24px)}.lab-layout.has-drawers[data-open~=left]>.panel-left,.lab-layout.has-drawers[data-open~=right]>.panel-right{visibility:visible;opacity:1;transition-delay:0s;transform:none}.lab-layout.has-drawers>.panel .drawer-close{z-index:2;top:10px;width:40px;height:40px;display:grid;position:absolute;inset-inline-end:10px}.lab-layout.has-drawers>.panel .tabs.lab-tabs-left,.lab-layout.has-drawers>.panel .tabs.lab-tabs-right{margin-top:0!important;margin-inline-end:44px!important}.lab-layout.has-drawers .lab-dock{z-index:31;flex-direction:column;gap:8px;transition:transform .3s cubic-bezier(.2,.9,.2,1);display:flex;position:absolute;top:56px}.lab-layout.has-drawers .lab-dock:empty{display:none}.lab-dock-left{left:10px}.lab-dock-right{right:10px}.lab-layout.has-drawers[data-open~=left] .lab-dock-left{transform:translate(min(340px,36%))}.lab-layout.has-drawers[data-open~=right] .lab-dock-right{transform:translate(calc(-1*min(340px,36%)))}.lab-layout.has-drawers .vt-bar{inset-inline-end:66px}}.dock-btn{border:1px solid var(--border);width:46px;height:46px;color:var(--text-2);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:background var(--ease),color var(--ease),transform .16s cubic-bezier(.3,1.6,.5,1),border-color var(--ease);background:#fffffff0;border-radius:14px;place-items:center;display:grid;box-shadow:0 6px 18px #080f0e24}.dock-btn:hover{color:var(--text);border-color:#94a3b8;transform:scale(1.08)}.dock-btn[aria-pressed=true]{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.dock-btn .ico{width:22px;height:22px}html.dark .dock-btn{background:#111a18f0}html.dark .dock-btn[aria-pressed=true]{background:var(--primary)}[data-tip-pos=right]:after{top:50%;left:calc(100% + 8px);transform:translate(-4px,-50%)}[data-tip-pos=right]:hover:after,[data-tip-pos=right]:focus-visible:after{transform:translateY(-50%)}.lab-mode .icon-btn{width:44px;height:44px}.billing-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.billing-side{justify-items:stretch;gap:12px;width:min(400px,100%);display:grid}.billing-cur{justify-content:flex-end}.billing-access{padding:16px 18px}.billing-access .card-title{margin-bottom:6px;font-size:15px}@media(max-width:767px){.billing-head{display:block}.billing-side{width:100%;margin-top:14px}.billing-cur{justify-content:flex-start}}.vt-btn{width:44px;height:44px}.vt-zoom{min-width:44px}.toast-action{background:var(--primary);color:var(--on-primary);white-space:nowrap;border-radius:999px;margin-inline-start:4px;padding:6px 12px;font-size:13px;font-weight:700;text-decoration:none}.subject-ic{background:var(--sc,#22c55e);border-radius:16px;flex:none;place-items:center;width:52px;height:52px;display:grid}@supports (color:color-mix(in lab,red,red)){.subject-ic{background:color-mix(in srgb,var(--sc,#22c55e) 14%,transparent)}}.subject-ic{color:var(--sc,#22c55e);transition:transform .3s cubic-bezier(.3,1.5,.5,1)}.subject-tile{transition:transform var(--ease),box-shadow var(--ease),border-color var(--ease);flex-direction:column;gap:6px;padding:22px;display:flex;position:relative}.subject-tile:hover{box-shadow:var(--shadow-hover);border-color:var(--sc)}.subject-tile:hover .subject-ic{transform:scale(1.1)rotate(-4deg)}.subject-tile h3{margin:6px 0 0}.subject-go{color:var(--sc);margin-top:6px}.subject-head{align-items:center;gap:14px;margin-top:8px;display:flex}.crumbs{color:var(--text-2);flex-wrap:wrap;gap:8px;font-size:13px;display:flex}.crumbs a{color:inherit;text-decoration:none}.crumbs a:hover{text-decoration:underline}.grade-tabs{flex-wrap:wrap;gap:8px;display:flex}.grade-tabs .tab{border:1px solid var(--border);min-height:44px;color:var(--text-2);border-radius:999px;align-items:center;padding:0 16px;font-weight:600;text-decoration:none;display:inline-flex}.grade-tabs .tab.active{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.topic-list{gap:10px;margin:16px 0 0;padding:0;list-style:none;display:grid}.topic-row{color:inherit;transition:transform var(--ease),border-color var(--ease),box-shadow var(--ease);align-items:center;gap:14px;padding:14px 16px;text-decoration:none;display:flex}.topic-row:hover{border-color:var(--sc);box-shadow:var(--shadow-hover);transform:translate(4px)}[dir=rtl] .topic-row:hover{transform:translate(-4px)}.topic-no{background:var(--sc);border-radius:12px;flex:none;place-items:center;width:36px;height:36px;font-weight:700;display:grid}@supports (color:color-mix(in lab,red,red)){.topic-no{background:color-mix(in srgb,var(--sc) 14%,transparent)}}.topic-no{color:var(--sc)}.topic-main{flex:1;min-width:0}.topic-empty{text-align:center;border:1px dashed var(--border);border-radius:var(--r-panel);color:var(--text-2);margin-top:12px;padding:28px 16px}.topic-grid>.topic-notes{grid-column:span 2}@media(max-width:760px){.topic-grid>.topic-notes{grid-column:auto}}.topic-grid.has-note>.topic-notes{grid-column:1/-1}.topic-grid.has-note>aside{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-items:start;gap:14px;display:grid}.note-tools{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.note-tools-gap{flex:1}.note-tools .icon-btn{width:44px;height:44px;font-size:13px;font-weight:700}.note-progress{--p:0%;background:var(--border);z-index:5;border-radius:999px;height:5px;margin:12px 0 16px;position:sticky;top:64px;overflow:hidden}.note-progress:before{content:"";height:100%;width:var(--p);background:var(--primary);border-radius:999px;transition:width .12s linear;display:block}.note-layout{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:28px;display:grid}.note-toc{font-size:14px;position:sticky;top:84px}.note-toc ol{border-inline-start:2px solid var(--border);gap:2px;margin:10px 0 0;padding:0;list-style:none;display:grid}.note-toc a{color:var(--text-2);border-inline-start:2px solid #0000;min-height:36px;margin-inline-start:-2px;padding:8px 12px;text-decoration:none;display:block}.note-toc a[aria-current=true]{color:var(--text);border-inline-start-color:var(--primary);font-weight:700}.note-body{font-size:var(--note-size);min-width:0;max-width:70ch;line-height:1.75}.topic-notes{--note-size:1rem}.note-body>*{margin-block:0 18px}.note-h2{margin:34px 0 12px;scroll-margin-top:90px;font-size:1.45em;line-height:1.25}.note-h3{margin:22px 0 8px;font-size:1.15em}.note-p{margin:0 0 14px}.note-body code{background:var(--surface-2,#0000000f);border-radius:6px;padding:1px 6px;font-size:.92em}.callout{border:1px solid var(--border);background:var(--surface-2,#f8fafc);border-radius:14px;gap:12px;padding:14px 16px;display:flex}.callout p{margin:4px 0 0}.callout-ic{color:#15803d;background:#dcfce7;border-radius:12px;flex:none;place-items:center;width:36px;height:36px;display:grid}.callout-warning .callout-ic{color:#c2410c;background:#ffedd5}.callout-remember .callout-ic{color:#4338ca;background:#e0e7ff}.callout-tip .callout-ic{color:#a16207;background:#fef9c3}html.dark .callout-ic{color:#86efac;background:#22c55e29}html.dark .callout-warning .callout-ic{color:#fdba74;background:#f973162e}html.dark .callout-remember .callout-ic{color:#a5b4fc;background:#6366f133}html.dark .callout-tip .callout-ic{color:#fde047;background:#eab3082e}.defn{border-inline-start:4px solid var(--primary);background:var(--surface-2,#f8fafc);border-radius:0 12px 12px 0;margin:0 0 18px;padding:14px 16px}.defn dt{font-weight:800}.defn dd{margin:4px 0 0}.formula{border:1px solid var(--border);text-align:center;border-radius:14px;margin:0 0 18px;padding:16px}.formula figcaption{color:var(--text-2);margin-top:6px;font-size:.9em}.formula-vars{text-align:start;gap:6px;margin:12px 0 0;padding:0;font-size:.92em;list-style:none;display:grid}.formula-vars li{align-items:baseline;gap:10px;display:flex}.formula-vars .tex{text-align:center;min-width:28px}.worked,.sim,.anim,.check{border:1px solid var(--border);background:var(--surface,#fff);border-radius:16px;padding:16px}.worked-head,.sim-head{align-items:center;gap:10px;margin-bottom:8px;display:flex}.worked-steps{gap:8px;margin:0 0 8px;padding-inline-start:22px;display:grid}.worked.is-js [data-step]{display:none}.worked.is-js [data-step].is-shown{animation:.3s both note-in;display:block}.worked-answer{color:#14532d;background:#dcfce7;border-radius:10px;margin:8px 0 0;padding:10px 12px}html.dark .worked-answer{color:#bbf7d0;background:#22c55e29}.worked-ctl{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}@keyframes note-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.fig{margin:0 0 18px}.fig-wrap{border:1px solid var(--border);border-radius:14px;position:relative;overflow:hidden}.fig-wrap img{width:100%;height:auto;display:block}.hot{cursor:pointer;background:0 0;border:0;place-items:center;width:44px;height:44px;margin:-22px 0 0 -22px;display:grid;position:absolute}.hot i{background:var(--primary);border-radius:50%;width:18px;height:18px;animation:2s infinite hot-pulse;box-shadow:0 0 #22c55e99}.hot.is-open i{background:#080f0e;animation:none}@keyframes hot-pulse{70%{box-shadow:0 0 0 12px #22c55e00}to{box-shadow:0 0 #22c55e00}}.hot-tip{color:#fff;z-index:3;background:#080f0e;border-radius:10px;max-width:220px;padding:8px 12px;font-size:13px;line-height:1.4;position:absolute;transform:translate(-50%,18px)}.fig figcaption,.anim figcaption{color:var(--text-2);margin-top:8px;font-size:.9em}.anim-stage{gap:10px;display:grid}.anim-svg,.sim-plot,.sim-scene{background:var(--surface-2,#f8fafc);border-radius:12px;width:100%;height:auto;max-height:280px}.anim-bar{align-items:center;gap:10px;display:flex}.anim-bar input[type=range],.sim-ctl input[type=range]{width:100%;min-height:44px;accent-color:var(--primary);flex:1}.anim-tabs{flex-wrap:wrap;gap:8px;display:flex}.anim-tabs .btn[aria-pressed=true]{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.anim-caption{color:var(--text-2);margin:0;font-size:.92em}.anim-axis,.anim-note,.plot-axis,.plot-guide,.scene-rule{stroke:#94a3b8;stroke-width:1.5px;fill:none}.anim-note,.plot-guide{stroke-dasharray:4 4}.anim-wave{stroke:#22c55e;stroke-width:4px}.anim-dot{fill:#080f0e}html.dark .anim-dot{fill:#fff}.anim-text,.plot-label{font:600 11px var(--font,system-ui),sans-serif;fill:var(--text-2,#475569)}.anim-box{fill:none;stroke:#94a3b8;stroke-width:2px}.anim-particle{fill:#22c55e}.anim-spring,.scene-spring{stroke:#22c55e;stroke-width:4px;stroke-linejoin:round;stroke-linecap:round}.anim-mass,.scene-mass{fill:#080f0e}html.dark .anim-mass,html.dark .scene-mass{fill:#e2e8f0}.anim-solid,.scene-solid{fill:#64748b}.anim-ke{fill:#2563eb}.anim-pe{fill:#f59e0b}.plot-curve{stroke:#22c55e;stroke-width:3px}.plot-dot{fill:#080f0e;stroke:#22c55e;stroke-width:3px}html.dark .plot-dot{fill:#fff}.scene-bar{fill:#22c55e}.scene-bar-1{fill:#2563eb}.scene-bar-2{fill:#f59e0b}.scene-bar-3{fill:#a855f7}.sim-body{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;display:grid}.sim-stage{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.sim-controls{align-content:start;gap:8px;display:grid}.sim-ctl label{justify-content:space-between;font-size:.92em;font-weight:600;display:flex}.sim-readout{align-content:start;gap:8px;margin:0;display:grid}.sim-out{background:var(--surface-2,#f8fafc);border:1px solid var(--border);border-radius:10px;justify-content:space-between;gap:10px;padding:10px 12px;display:flex}.sim-out dt{color:var(--text-2)}.sim-out dd{font-variant-numeric:tabular-nums;margin:0;font-weight:800}.note-table{margin-bottom:18px}.compare{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.compare h3{margin:0 0 6px;font-size:1em}.compare ul{margin:0;padding-inline-start:18px}.timeline{border-inline-start:3px solid var(--primary);gap:0;margin:0 0 18px;padding:0;list-style:none;display:grid}.timeline li{padding:0 0 16px 18px;display:grid;position:relative}.timeline li:before{content:"";background:var(--primary);border:3px solid var(--surface,#fff);inset-inline-start:-9px;border-radius:50%;width:15px;height:15px;position:absolute;top:4px}.check legend{margin-bottom:10px;padding:0;font-weight:600;display:block}.check{gap:8px;display:grid}.check-opt{text-align:start;border:1px solid var(--border);min-height:48px;color:inherit;cursor:pointer;transition:border-color var(--ease),background var(--ease);background:0 0;border-radius:12px;padding:10px 14px}.check-opt:hover:not(:disabled){border-color:var(--primary)}.check-opt.is-right{color:#14532d;background:#dcfce7;border-color:#22c55e}.check-opt.is-wrong{color:#7f1d1d;background:#fee2e2;border-color:#ef4444;animation:.3s note-shake}html.dark .check-opt.is-right{color:#bbf7d0;background:#22c55e2e}html.dark .check-opt.is-wrong{color:#fecaca;background:#ef44442e}@keyframes note-shake{25%{transform:translate(-4px)}75%{transform:translate(4px)}}.check-feedback{background:var(--surface-2,#f8fafc);border-radius:10px;margin:4px 0 0;padding:10px 12px}.lab-link{color:inherit;--sc:#22c55e;transition:transform var(--ease),border-color var(--ease);align-items:center;gap:14px;padding:14px 16px;text-decoration:none;display:flex}.lab-link:hover{border-color:var(--primary);transform:translateY(-2px)}.lab-link>:nth-child(2){flex:1}.key-terms dl{gap:10px;margin:0;display:grid}.key-terms dt{font-weight:800}.key-terms dd{color:var(--text-2);margin:2px 0 0}.note-summary{color:#14532d;background:#dcfce7;border-radius:16px;padding:16px 18px}html.dark .note-summary{color:#dcfce7;background:#22c55e24}.note-summary ul{margin:0;padding-inline-start:20px}.coverage{gap:8px;margin:10px 0 0;padding:0;list-style:none;display:grid}.coverage li{color:var(--text-2);opacity:.6;align-items:center;gap:8px;display:flex}.coverage li.ok{color:#15803d;opacity:1;font-weight:600}html.dark .coverage li.ok{color:#86efac}@media(max-width:900px){.note-layout{grid-template-columns:1fr;gap:12px}.note-toc{border:1px solid var(--border);border-radius:12px;padding:10px 12px;position:static}.note-toc ol{border:0;flex-wrap:wrap;gap:6px;display:flex}.note-toc a{border:1px solid var(--border);border-radius:999px;margin:0;padding:8px 14px}.note-progress{top:56px}}@media(prefers-reduced-motion:reduce){.hot i,.worked.is-js [data-step].is-shown,.check-opt.is-wrong{animation:none}}.note-tools>.muted{align-items:center;gap:6px;display:inline-flex}.topic-item{padding:0;overflow:hidden}.topic-item>.topic-row{box-shadow:none;background:0 0;border:0;border-radius:0}.topic-item:hover{border-color:var(--sc);box-shadow:var(--shadow-hover)}.topic-item>.topic-row:hover{box-shadow:none;transform:none}.subtopics{flex-wrap:wrap;gap:6px;margin:0;padding:0 16px 14px 66px;list-style:none;display:flex}[dir=rtl] .subtopics{padding:0 66px 14px 16px}.subtopics a{border:1px solid var(--border);min-height:32px;color:var(--text-2);border-radius:999px;align-items:center;padding:0 12px;font-size:13px;text-decoration:none;display:inline-flex}.subtopics a:hover{border-color:var(--sc,var(--primary));color:var(--text)}.subtopics a.has-notes{background:var(--primary)}@supports (color:color-mix(in lab,red,red)){.subtopics a.has-notes{background:color-mix(in srgb,var(--primary) 14%,transparent)}}.subtopics a.has-notes{border-color:var(--primary);color:var(--text);font-weight:600}.subtopics-page{padding:8px 0 0}.offline-meter{gap:6px;margin-top:14px;display:grid}.offline-meter-bar{background:var(--border);border-radius:999px;height:8px;overflow:hidden}.offline-meter-bar i{background:var(--primary);border-radius:999px;height:100%;display:block}.lib-item{gap:10px;margin-bottom:8px;padding:12px 16px}.lib-item .btn{min-height:44px}.lab-link[aria-disabled=true]{opacity:.55}[data-offline-toggle][aria-pressed=true]{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.scene-fill{fill:#22c55e61}.scene-empty{fill:#0000}.scene-axis{stroke:#64748b;stroke-width:1.5px;fill:none}.scene-grid{stroke:#cbd5e1;stroke-width:1px;opacity:.7}html.dark .scene-grid{stroke:#334155}.scene-guide{stroke:#64748b;stroke-width:1.5px;stroke-dasharray:4 4;fill:none}.scene-arc{stroke:#f59e0b;stroke-width:3px;fill:none;stroke-linecap:round}.scene-ray{stroke:#22c55e}.scene-pt{stroke:#fff;stroke-width:2px}.plot-grid{stroke:#cbd5e1;stroke-width:1px;opacity:.7}html.dark .plot-grid{stroke:#334155}.plot-curve-1{stroke:#2563eb}.plot-curve-2{stroke:#f59e0b}.anim-steps{gap:8px;display:grid}.anim-step{opacity:.18;border-inline-start:3px solid #0000;border-radius:8px;grid-template-columns:minmax(0,1fr);padding:4px 12px;transition:opacity .3s,transform .3s;display:grid;transform:translateY(4px)}.anim-step.is-on{opacity:1;transform:none}.anim-step.is-now{border-inline-start-color:var(--primary);background:var(--surface-2,#f8fafc)}.anim-step .katex-display{text-align:start;margin:.2em 0}.anim-step p{color:var(--text-2);margin:0;font-size:.92em}@media(prefers-reduced-motion:reduce){.anim-step{transition:none}}.practice{max-width:760px;margin:16px auto 0;padding:20px}.pq-head{gap:8px;margin-bottom:16px;display:grid}.pq-bar{background:var(--border);border-radius:999px;height:8px;overflow:hidden}.pq-bar i{background:var(--primary);border-radius:999px;height:100%;transition:width .3s;display:block}.pq-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;font-size:14px;font-weight:600;display:flex}.pq-stem{margin-bottom:16px;font-size:1.15rem;font-weight:600;line-height:1.6}.pq-body{gap:10px;display:grid}.pq-opt{text-align:start;border:1.5px solid var(--border);min-height:52px;color:inherit;cursor:pointer;transition:border-color var(--ease),background var(--ease),transform .12s ease;background:0 0;border-radius:14px;align-items:center;gap:12px;padding:10px 14px;display:flex}.pq-opt:hover:not(:disabled){border-color:var(--primary);transform:translate(2px)}.pq-opt:disabled{cursor:default}.pq-opt[aria-pressed=true]{border-color:var(--primary);background:var(--primary)}@supports (color:color-mix(in lab,red,red)){.pq-opt[aria-pressed=true]{background:color-mix(in srgb,var(--primary) 12%,transparent)}}.pq-key{background:var(--surface-2,#f1f5f9);border-radius:9px;flex:none;place-items:center;width:28px;height:28px;font-size:13px;font-weight:700;display:grid}.pq-opt.is-right{color:#14532d;background:#dcfce7;border-color:#22c55e}.pq-opt.is-wrong{color:#7f1d1d;background:#fee2e2;border-color:#ef4444;animation:.3s note-shake}html.dark .pq-opt.is-right{color:#bbf7d0;background:#22c55e2e}html.dark .pq-opt.is-wrong{color:#fecaca;background:#ef44442e}.pq-numeric{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pq-numeric .input{flex:1;min-width:160px;min-height:48px;font-size:1.1rem}.pq-numeric .input.is-right{color:#14532d;background:#dcfce7;border-color:#22c55e}.pq-numeric .input.is-wrong{color:#7f1d1d;background:#fee2e2;border-color:#ef4444}.pq-feedback{border:1px solid var(--border);border-radius:12px;margin-top:14px;padding:12px 14px}.pq-feedback p{margin:6px 0 0}.pq-feedback.is-right{color:#14532d;background:#dcfce7;border-color:#22c55e}.pq-feedback.is-wrong{color:#7c2d12;background:#fff7ed;border-color:#f59e0b}html.dark .pq-feedback.is-right{color:#bbf7d0;background:#22c55e24}html.dark .pq-feedback.is-wrong{color:#fed7aa;background:#f59e0b24}.pq-next{min-height:48px;margin-top:14px}.pq-result{text-align:center;padding:10px 0 4px}.pq-score{letter-spacing:-.02em;font-size:3rem;font-weight:800}.pq-verdict{color:var(--text-2);margin:4px 0 0}.pq-sub{margin:18px 0 6px;font-size:15px}.pq-topics{gap:6px;margin:0;padding:0;list-style:none;display:grid}.pq-topics li{border:1px solid var(--border);border-radius:10px;justify-content:space-between;gap:10px;padding:10px 12px;display:flex}.pq-actions{margin-top:16px}.pq-save{margin-top:12px}.mastery-bar{background:var(--border);border-radius:999px;max-width:320px;height:6px;margin-top:8px;overflow:hidden}.mastery-bar i{background:var(--primary);height:100%;display:block}.mastery-row[data-level=needs-work] .mastery-bar i{background:#ef4444}.mastery-row[data-level=getting-there] .mastery-bar i{background:#f59e0b}@media(prefers-reduced-motion:reduce){.pq-opt.is-wrong,.pq-bar i{transition:none;animation:none}}.paper-card{transition:transform var(--ease),box-shadow var(--ease),border-color var(--ease);color:inherit;flex-direction:column;gap:6px;padding:20px;text-decoration:none;display:flex}.paper-card:hover{box-shadow:var(--shadow-hover);border-color:var(--sc);transform:translateY(-2px)}.paper-card h3{margin:6px 0 0}.coverage-list{gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}.coverage-list li{border:1px solid var(--border);border-radius:10px;justify-content:space-between;gap:10px;padding:8px 12px;display:flex}.paper-app{max-width:880px;margin:16px auto 0}.paper-intro{gap:12px;padding:22px;display:grid}.paper-facts{margin:0;padding-inline-start:18px}.paper-bar{border:1px solid var(--border);background:var(--surface,#fff);z-index:6;border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex;position:sticky;top:64px}.paper-timer{font-variant-numeric:tabular-nums;font-size:1.3rem;font-weight:800}.paper-timer.is-low{color:#dc2626;animation:1s 2 note-shake}.paper-nav{flex-wrap:wrap;gap:6px;margin:12px 0;display:flex}.paper-dot{border:1.5px solid var(--border);min-width:40px;min-height:40px;color:inherit;cursor:pointer;background:0 0;border-radius:10px;font-weight:700}.paper-dot.is-done{background:var(--primary)}@supports (color:color-mix(in lab,red,red)){.paper-dot.is-done{background:color-mix(in srgb,var(--primary) 16%,transparent)}}.paper-dot.is-done{border-color:var(--primary)}.paper-dot.is-flag{box-shadow:inset 0 -4px #f59e0b}.paper-dot[aria-current=true]{outline:3px solid var(--primary);outline-offset:2px}.paper-q{margin-top:12px;padding:18px}.paper-qhead{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}.paper-area{width:100%;min-height:140px;font:inherit;resize:vertical;line-height:1.5}.paper-foot{flex-wrap:wrap;gap:8px;margin-top:14px}.paper-foot .btn{min-height:46px}.paper-scheme{background:var(--surface-2,#f8fafc);border:1px solid var(--border);border-radius:12px;margin-top:12px;padding:12px 14px}.paper-points{gap:8px;margin:8px 0 0;padding:0;list-style:none;display:grid}.paper-points li{align-items:flex-start;gap:10px;display:flex}.paper-points input{width:22px;height:22px;accent-color:var(--primary);flex:none;margin-top:2px}.paper-given{background:var(--surface-2,#f8fafc);border-radius:10px;margin-bottom:8px;padding:10px 12px}.paper-given p{white-space:pre-wrap;margin:4px 0 0}.paper-confirm{gap:10px;padding:22px;display:grid}.paper-review{border:1px solid var(--border);border-radius:12px;margin-bottom:8px;padding:0 12px}.paper-review summary{cursor:pointer;align-items:center;gap:10px;min-height:48px;display:flex}.paper-review-body{padding:4px 0 12px}.paper-mark{text-align:center;border-radius:999px;min-width:46px;padding:2px 8px;font-size:13px;font-weight:700}.paper-mark.is-full{color:#14532d;background:#dcfce7}.paper-mark.is-part{color:#78350f;background:#fef3c7}.paper-mark.is-zero{color:#7f1d1d;background:#fee2e2}html.dark .paper-mark.is-full{color:#bbf7d0;background:#22c55e33}html.dark .paper-mark.is-part{color:#fde68a;background:#f59e0b33}html.dark .paper-mark.is-zero{color:#fecaca;background:#ef444433}@media(max-width:760px){.paper-bar{top:56px}}.confetti{pointer-events:none;z-index:9999;width:100%;height:100%;position:fixed;inset:0}.praise-pop{z-index:10000;color:#22c55e;font:800 1.35rem/1 var(--font-display,system-ui),sans-serif;pointer-events:none;white-space:nowrap;background:#080f0e;border-radius:999px;padding:10px 22px;animation:1.4s cubic-bezier(.2,1.2,.3,1) both praise-rise;position:fixed;transform:translate(-50%);box-shadow:0 10px 30px #22c55e73}@keyframes praise-rise{0%{opacity:0;transform:translate(-50%,20px)scale(.5)}20%{opacity:1;transform:translate(-50%,-6px)scale(1.15)}40%{transform:translate(-50%)scale(1)}80%{opacity:1}to{opacity:0;transform:translate(-50%,-40px)scale(1)}}.is-celebrating{animation:.8s glow-pop}@keyframes glow-pop{0%{transform:scale(1);box-shadow:0 0 #22c55eb3}40%{transform:scale(1.04)}to{transform:scale(1);box-shadow:0 0 0 22px #22c55e00}}@media(prefers-reduced-motion:reduce){.praise-pop,.is-celebrating{animation:none}}.lab-learn{margin-top:16px;padding:16px 18px}.grade-tabs{scrollbar-width:none;scroll-snap-type:x proximity;border:1px solid var(--border);background:var(--text);border-bottom-width:1px;border-radius:999px;flex-wrap:nowrap;gap:4px;width:max-content;max-width:100%;padding:5px;display:flex;overflow-x:auto}@supports (color:color-mix(in lab,red,red)){.grade-tabs{background:color-mix(in srgb,var(--text) 4%,var(--surface,#fff))}}.grade-tabs{box-shadow:inset 0 1px 2px #080f0e0f}.grade-tabs::-webkit-scrollbar{display:none}.grade-tabs .tab{scroll-snap-align:center;min-height:44px;color:var(--text-2);letter-spacing:.01em;background:0 0;border:0;border-radius:999px;flex:none;padding:0 22px;font-weight:700;transition:color .18s,background .22s,transform .16s cubic-bezier(.3,1.6,.5,1),box-shadow .22s;position:relative}.grade-tabs .tab:hover:not(.active){color:var(--text);background:var(--sc,var(--primary))}@supports (color:color-mix(in lab,red,red)){.grade-tabs .tab:hover:not(.active){background:color-mix(in srgb,var(--sc,var(--primary)) 12%,transparent)}}.grade-tabs .tab:hover:not(.active){transform:translateY(-1px)}.grade-tabs .tab:active{transform:scale(.96)}.grade-tabs .tab.active{color:#fff;background:linear-gradient(135deg,var(--sc,#22c55e),var(--sc,#22c55e))}@supports (color:color-mix(in lab,red,red)){.grade-tabs .tab.active{background:linear-gradient(135deg,var(--sc,#22c55e),color-mix(in srgb,var(--sc,#22c55e) 65%,#080f0e))}}.grade-tabs .tab.active{box-shadow:0 6px 16px var(--sc,#22c55e),inset 0 1px #ffffff40}@supports (color:color-mix(in lab,red,red)){.grade-tabs .tab.active{box-shadow:0 6px 16px color-mix(in srgb,var(--sc,#22c55e) 45%,transparent),inset 0 1px #ffffff40}}.grade-tabs .tab.active{animation:.32s cubic-bezier(.3,1.6,.5,1) tab-pop}.grade-tabs .tab.active:after{content:"";background:#ffffffbf;border-radius:3px;width:18px;height:3px;margin-left:-9px;position:absolute;bottom:5px;left:50%}.grade-tabs .tab:focus-visible{outline:3px solid var(--sc,var(--primary))}@supports (color:color-mix(in lab,red,red)){.grade-tabs .tab:focus-visible{outline:3px solid color-mix(in srgb,var(--sc,var(--primary)) 55%,transparent)}}.grade-tabs .tab:focus-visible{outline-offset:2px}@keyframes tab-pop{0%{transform:scale(.88)}to{transform:scale(1)}}html.dark .grade-tabs{background:#ffffff0d;box-shadow:inset 0 1px 2px #0006}@media(max-width:560px){.grade-tabs{width:100%}.grade-tabs .tab{padding:0 18px}}@media(prefers-reduced-motion:reduce){.grade-tabs .tab,.grade-tabs .tab.active{transition:none;animation:none}}.grade-tabs .tab:hover:not(.active){background:var(--text)}@supports (color:color-mix(in lab,red,red)){.grade-tabs .tab:hover:not(.active){background:color-mix(in srgb,var(--text) 7%,transparent)}}.grade-tabs .tab:hover:not(.active){color:var(--text)}.grade-tabs .tab.active{color:#fff;background:var(--primary,#080f0e);box-shadow:0 6px 16px #080f0e47,inset 0 1px #ffffff1f}.grade-tabs .tab.active:after{background:#22c55e;width:20px;height:3px}.grade-tabs .tab:focus-visible{outline-color:#22c55e99}html.dark .grade-tabs .tab.active{color:#080f0e;background:#22c55e;box-shadow:0 6px 16px #22c55e59}html.dark .grade-tabs .tab.active:after{background:#080f0e}.subject-tile:hover,.paper-card:hover,.topic-row:hover,.topic-item:hover{border-color:#22c55e;box-shadow:0 10px 28px #22c55e2e}.topic-item>.topic-row:hover{box-shadow:none}.subtopics a:hover{color:var(--text);background:#22c55e14;border-color:#22c55e}.lab-link:hover{border-color:#22c55e}.papers-tabs{border:1px solid var(--border);background:var(--text);border-radius:999px;gap:4px;margin-top:14px;padding:5px;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.papers-tabs{background:color-mix(in srgb,var(--text) 4%,var(--surface,#fff))}}.papers-tabs{max-width:100%;overflow-x:auto}.papers-tabs a{min-height:44px;color:var(--text-2);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:0 18px;font-weight:700;text-decoration:none;transition:background .2s,color .2s;display:inline-flex}.papers-tabs a:hover:not(.active){background:var(--text)}@supports (color:color-mix(in lab,red,red)){.papers-tabs a:hover:not(.active){background:color-mix(in srgb,var(--text) 7%,transparent)}}.papers-tabs a:hover:not(.active){color:var(--text)}.papers-tabs a.active{background:var(--primary);color:#fff;box-shadow:0 6px 16px #080f0e40}html.dark .papers-tabs a.active{color:#080f0e;background:#22c55e}.paper-search{gap:12px;margin-top:16px;display:grid}.paper-search-box{border:1.5px solid var(--border);background:var(--surface,#fff);border-radius:999px;align-items:center;gap:10px;padding:8px 8px 8px 16px;transition:border-color .16s,box-shadow .16s;display:flex}.paper-search-box:focus-within{border-color:#22c55e;box-shadow:0 0 0 4px #22c55e26}.paper-search-box input{min-width:0;color:inherit;font:inherit;background:0 0;border:0;outline:0;flex:1;min-height:40px}.paper-filters{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.shop-bar{gap:10px;display:grid}.shop-bar-top{align-items:center;gap:10px;display:flex}.shop-bar-top .paper-search-box{flex:1;min-width:0;padding:4px 4px 4px 14px}.shop-bar-top .paper-search-box input{min-height:36px}.shop-bar-actions{flex-shrink:0;gap:8px;display:flex}.shop-bar-filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.shop-bar-filters .select{width:auto;min-height:40px;padding-block:6px}.shop-bar-filters .paper-check{min-height:40px}.shop-bar-end{align-items:center;gap:12px;margin-left:auto;display:inline-flex}.shop-bar-end .view-toggle button{min-height:36px;padding:6px 12px}.shop-bar~.shop-grid{margin-top:12px}@media(max-width:720px){.shop-bar-top{flex-wrap:wrap}.shop-bar-actions{width:100%}.shop-bar-actions .btn{flex:1;justify-content:center}.shop-bar-filters .select{flex:140px}.shop-bar-end{margin-left:auto}}.paper-check{align-items:center;gap:8px;min-height:44px;font-weight:600;display:inline-flex}.paper-check input{accent-color:#22c55e;width:20px;height:20px}.paper-tile{transition:transform var(--ease),box-shadow var(--ease),border-color var(--ease);flex-direction:column;gap:10px;padding:18px;display:flex}.paper-tile:hover{border-color:#22c55e;transform:translateY(-3px);box-shadow:0 12px 30px #22c55e29}.paper-tile h3{margin:0;font-size:18px}.paper-tile-head{align-items:center;gap:16px;display:flex}.paper-year{font:800 1.6rem/1 var(--font-display,system-ui),sans-serif;letter-spacing:-.02em;color:var(--text)}.paper-actions{flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:4px;display:flex}.paper-actions .btn{min-height:44px}.paper-tile{position:relative}.paper-open{color:inherit;text-decoration:none}.paper-open:after{content:"";border-radius:inherit;z-index:1;position:absolute;inset:0}.paper-open:focus-visible{outline:none}.paper-tile:has(.paper-open:focus-visible){outline-offset:2px;outline:3px solid #22c55e}.paper-menu{z-index:3;margin-left:auto;position:relative}.paper-dots{width:44px;height:44px;margin:-8px -8px -8px 0}.paper-dots:hover,.paper-dots[aria-expanded=true]{color:#fff;background:#080f0e}.paper-dropdown{border:1px solid var(--border);background:var(--card,#fff);border-radius:14px;gap:2px;min-width:230px;padding:6px;display:grid;position:absolute;top:100%;right:0;box-shadow:0 16px 40px #080f0e38}.paper-dropdown a,.paper-dropdown button{min-height:44px;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:0 12px;font-weight:600;text-decoration:none;display:flex}.paper-dropdown a:hover,.paper-dropdown button:hover,.paper-dropdown button[aria-pressed=true]{color:#fff;background:#080f0e}.paper-dropdown button[aria-pressed=true]{color:#080f0e;background:#22c55e}.pdf-switch{border:1px solid var(--border);border-radius:999px;gap:4px;width:fit-content;margin-top:14px;padding:5px;display:none}.pdf-tab{min-height:40px;color:var(--text-2);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0 16px;font-weight:700}.pdf-tab.active{color:#fff;background:#080f0e}html.dark .pdf-tab.active{color:#080f0e;background:#22c55e}.pdf-split{grid-template-columns:1fr 1fr;align-items:stretch;gap:16px;margin-top:16px;display:grid}.pdf-split.is-single{grid-template-columns:1fr}.pdf-pane{flex-direction:column;height:calc(100vh - 230px);min-height:480px;padding:0;display:flex;overflow:hidden}.pdf-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;padding:8px 12px 8px 16px;display:flex}.pdf-pane:first-child .pdf-head{border-top:3px solid #080f0e}.pdf-pane:last-child:not(:first-child) .pdf-head{border-top:3px solid #22c55e}.pdf-body{flex:1;min-height:0;display:grid}.pdf-body>p{padding:16px}.pdf-frame{background:#e9ecec;border:0;width:100%;height:100%}@media(max-width:1023px){.pdf-switch{display:inline-flex}.pdf-switch[hidden]{display:none}.pdf-split{grid-template-columns:1fr}.pdf-split:not(.is-single) .pdf-pane{display:none}.pdf-split:not(.is-single) .pdf-pane.is-shown{display:flex}}.paper-tile:hover,.paper-tile:focus-within,.paper-tile.is-open{z-index:5}@media(min-width:768px){.stat-strip{grid-template-columns:repeat(5,1fr)}}.steps.steps-4{grid-template-columns:repeat(4,1fr)}@media(max-width:900px){.steps.steps-4{grid-template-columns:1fr 1fr}}@media(max-width:560px){.steps.steps-4{grid-template-columns:1fr}}.feat:hover{border-color:#22c55e}.subject-card .ic-box{background:var(--sc)}@supports (color:color-mix(in lab,red,red)){.subject-card .ic-box{background:color-mix(in srgb,var(--sc) 14%,transparent)}}.subject-card .ic-box{color:var(--sc)}.subject-card:hover{border-color:#22c55e;box-shadow:0 12px 30px #22c55e29}.mega-ic{background:var(--sc)}@supports (color:color-mix(in lab,red,red)){.mega-ic{background:color-mix(in srgb,var(--sc) 14%,transparent)}}.mega-ic{color:var(--sc)}.mega-tile:hover{background:#22c55e1a}.impersonation-banner{z-index:200;color:#080f0e;text-align:center;background:#f59e0b;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 16px;padding:8px 16px;font-size:14px;font-weight:600;display:flex;position:sticky;top:0}.impersonation-banner .btn{color:#fff;background:#080f0e;border-color:#080f0e}.impersonation-banner .ico{vertical-align:-3px}.profile-head{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.profile-avatar{color:#22c55e;width:64px;height:64px;font:800 22px/1 var(--font-display,system-ui),sans-serif;background:#080f0e;border-radius:50%;place-items:center;display:grid}.kv{grid-template-columns:max-content 1fr;gap:6px 18px;margin:0;display:grid}.kv dt{color:var(--muted);font-size:13px}.kv dd{word-break:break-word;margin:0;font-weight:600}.note-crumbs{margin:0 0 6px}.note-title{align-items:center;gap:12px;margin:0 0 6px;font-size:clamp(1.4rem,2.2vw,1.9rem);display:flex}.note-ic{background:var(--sc);border-radius:12px;flex:none;place-items:center;width:40px;height:40px;display:grid}@supports (color:color-mix(in lab,red,red)){.note-ic{background:color-mix(in srgb,var(--sc) 14%,transparent)}}.note-ic{color:var(--sc)}.topic-grid.has-note>.topic-notes{padding:18px 28px 28px}@media(min-width:901px){.note-layout{grid-template-columns:200px minmax(0,1fr);gap:36px}}.note-body{max-width:84ch}.note-toc{top:76px}@media(max-width:760px){.topic-grid.has-note>.topic-notes{padding:14px 14px 22px}.note-title{font-size:1.35rem}}.diagram{margin:0 0 18px}.diagram-wrap{border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:14px;padding:10px}.dg{width:100%;height:auto;max-height:420px;display:block}.dg .s{fill:none;stroke:var(--c,currentColor);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.dg .f{fill:var(--c,currentColor);stroke:none}.dg .fl{fill:var(--c,#94a3b8);fill-opacity:.2;stroke:none}.dg .fb{fill:var(--c,#94a3b8);fill-opacity:.8;stroke:none}.dg .thick{stroke-width:3.4px}.dg .thin{stroke-width:1.2px}.dg .dashed{stroke-dasharray:5 4}.dg .dg-hide{display:none}.dg .t,.dg .tb,.dg .ts{fill:var(--c,currentColor);font-family:var(--font-body,system-ui, sans-serif);font-size:12.5px}.dg .tb{font-weight:700}.dg .ts{font-size:11px}.dg .tl{font-size:15px;font-weight:700}.dg .c-red{--c:#ef4444}.dg .c-blue{--c:#2563eb}.dg .c-green{--c:#16a34a}.dg .c-amber{--c:#d97706}.dg .c-purple{--c:#7c3aed}.dg .c-teal{--c:#0d9488}.dg .c-pink{--c:#db2777}.dg .c-grey{--c:#64748b}.dg .c-white{--c:#fff}html.dark .dg .c-blue{--c:#60a5fa}html.dark .dg .c-red{--c:#f87171}html.dark .dg .c-green{--c:#4ade80}html.dark .dg .c-amber{--c:#fbbf24}html.dark .dg .c-grey{--c:#94a3b8}.diagram figcaption{color:var(--text-2);margin-top:8px;font-size:.9em}.shop-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px;margin-top:14px;display:grid}.shop-card{color:inherit;transition:transform var(--ease),box-shadow var(--ease),border-color var(--ease);flex-direction:column;padding:0;text-decoration:none;display:flex;overflow:hidden}.shop-card:hover{border-color:#22c55e;transform:translateY(-3px);box-shadow:0 12px 30px #22c55e29}.shop-cover{aspect-ratio:4/3;background:var(--sc,#080f0e);place-items:center;display:grid}@supports (color:color-mix(in lab,red,red)){.shop-cover{background:color-mix(in srgb,var(--sc,#080f0e) 12%,var(--card))}}.shop-cover{color:var(--sc,#080f0e);overflow:hidden}.shop-cover img{object-fit:cover;width:100%;height:100%;display:block}.shop-cover-lg{aspect-ratio:3/4;border-radius:var(--r-panel);border:1px solid var(--border)}.shop-body{flex-direction:column;flex:1;gap:6px;padding:14px;display:flex}.shop-title{font-size:16px;line-height:1.3}.shop-price{margin-top:auto;font-weight:800}.shop-price-lg{margin:0 0 12px;font-size:30px}.shop-detail{grid-template-columns:minmax(180px,280px) 1fr;align-items:start;gap:24px;margin-top:16px;display:grid}.shop-buy{max-width:380px;margin-top:16px}.shop-list{gap:10px;display:grid}.shop-split{gap:6px;margin:12px 0 0;display:grid}.shop-split div{border-bottom:1px solid var(--border);justify-content:space-between;gap:10px;padding:8px 0;display:flex}.shop-split dt{color:var(--text-2)}.shop-split dd{margin:0;font-weight:700}.shop-split-you{border-bottom:0!important}.shop-split-you dt,.shop-split-you dd{color:#15803d;font-size:17px;font-weight:800}@media(max-width:720px){.shop-detail{grid-template-columns:1fr}.shop-cover-lg{max-width:260px}}.bell-dot{color:#052e16;text-align:center;top:2px;background:#22c55e;border-radius:9px;min-width:18px;height:18px;padding:0 4px;font-size:11px;font-weight:800;line-height:18px;position:absolute;inset-inline-end:0}.notif-pop{width:min(380px,92vw);max-height:70vh;overflow:auto}.bell-item{color:inherit;border-radius:10px;align-items:flex-start;gap:10px;padding:10px 8px;text-decoration:none;display:flex}.bell-item:hover{background:var(--bg)}.bell-item.is-new{background:#22c55e1a}.bell-item b{font-size:14px;line-height:1.3;display:block}.bell-item small{color:var(--text-2);font-size:12px;display:block}.bell-all{text-align:center;padding:10px;font-weight:700;display:block}.date-range{justify-content:flex-end;margin:12px 0 4px;display:flex}.dr-wrap{position:relative}.dr-btn{border:1px solid var(--border);background:var(--card);min-height:40px;color:var(--text);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:0 14px;font-size:14px;font-weight:600;display:inline-flex}.dr-btn:hover{border-color:var(--secondary)}.dr-btn[aria-expanded=true]{border-color:var(--secondary);box-shadow:0 0 0 3px var(--secondary)}@supports (color:color-mix(in lab,red,red)){.dr-btn[aria-expanded=true]{box-shadow:0 0 0 3px color-mix(in srgb,var(--secondary) 22%,transparent)}}.dr-pop{z-index:30;border:1px solid var(--border);background:var(--card);inset-inline-end:0;border-radius:16px;flex-direction:column;gap:2px;min-width:220px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);box-shadow:0 18px 50px #080f0e29}.dr-item{width:100%;color:var(--text);text-align:start;cursor:pointer;background:0 0;border:0;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;font-size:14px;display:flex}.dr-item:hover{background:var(--surface-2,#0000000d)}.dr-item.is-on{color:var(--secondary);font-weight:700}.dr-custom{border-top:1px solid var(--border);gap:8px;margin:6px 4px 4px;padding-top:8px;display:grid}.bc-svg{width:100%;height:auto;margin-top:8px;display:block}.bc-bar{fill:#22c55e;transition:fill var(--ease)}.bc-bar:hover{fill:#080f0e}html.dark .bc-bar:hover{fill:#86efac}.bc-lab{fill:var(--text-2);font-size:11px;font-family:var(--font-body,system-ui, sans-serif)}.product-form{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:16px;margin-top:16px;display:grid}.product-main{gap:16px;display:grid}.product-side{gap:16px;display:grid;position:sticky;top:84px}@media(max-width:960px){.product-form{grid-template-columns:1fr}.product-side{position:static}}.lbl{margin-bottom:6px;font-weight:600;display:block}.dropzone{text-align:center;border:2px dashed var(--border);border-radius:var(--r-panel);background:var(--bg);min-height:150px;transition:border-color var(--ease),background var(--ease);place-items:center;padding:16px;display:grid;position:relative;overflow:hidden}.dropzone.is-over,.dropzone:hover,.dropzone:focus-within{background:#22c55e;border-color:#22c55e}@supports (color:color-mix(in lab,red,red)){.dropzone.is-over,.dropzone:hover,.dropzone:focus-within{background:color-mix(in srgb,#22c55e 8%,var(--bg))}}.dropzone.has-file{border-style:solid}.dropzone p{margin:8px 0 0}.dropzone .sr-only-input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.dropzone label.link,.dropzone label.cover-change{z-index:2;cursor:pointer;position:relative}.cover-drop{min-height:200px}.cover-preview{object-fit:contain;border-radius:10px;max-width:100%;max-height:220px;margin:0 auto 6px;display:block}.cover-change{position:absolute;inset-block-end:10px;inset-inline-end:10px}.work-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;margin-top:16px;display:grid}.work-card{transition:transform var(--ease),box-shadow var(--ease),border-color var(--ease);flex-direction:column;padding:0;display:flex;overflow:hidden}.work-card:hover{border-color:#22c55e;transform:translateY(-3px);box-shadow:0 12px 30px #22c55e29}.work-cover{aspect-ratio:4/3;position:relative}.work-status{position:absolute;inset-block-start:10px;inset-inline-start:10px}.work-body{flex-direction:column;flex:1;gap:8px;padding:14px;display:flex}.reader-frame{margin-top:14px}.reader-pdf{border:1px solid var(--border);background:#fff;border-radius:12px;width:100%;height:min(80vh,900px)}.view-toggle{border:1px solid var(--border);background:var(--card);border-radius:12px;display:inline-flex;overflow:hidden}.view-toggle button{min-height:40px;color:var(--text-2);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:8px 12px;font-weight:600;display:inline-flex}.view-toggle button.is-on{color:#fff;background:#080f0e}html.dark .view-toggle button.is-on{color:#052e16;background:#22c55e}.work-list{gap:10px;margin-top:12px;display:grid}.work-row{color:inherit;transition:border-color var(--ease),box-shadow var(--ease);grid-template-columns:64px minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:10px 14px;text-decoration:none;display:grid}.work-row:hover{border-color:#22c55e;box-shadow:0 8px 22px #22c55e1f}.work-thumb{aspect-ratio:auto;border-radius:10px;width:64px;height:84px}.work-row-main{min-width:0}.work-row-price{text-align:end;white-space:nowrap}@media(max-width:720px){.work-row{grid-template-columns:56px minmax(0,1fr)}.work-row-price,.work-row>.row{text-align:start;grid-column:2}}.rv-kpis{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-top:16px;display:grid}.rv-kpi{border:1px solid var(--border);border-radius:var(--r-panel);background:var(--card);color:inherit;transition:border-color var(--ease),box-shadow var(--ease);flex-direction:column;gap:2px;padding:14px 16px;text-decoration:none;display:flex}.rv-kpi span{color:var(--text-2);font-size:13px}.rv-kpi b{font-size:26px;line-height:1.1}.rv-kpi:hover{border-color:#22c55e;box-shadow:0 8px 22px #22c55e1f}.rv-kpi.is-hot{background:#22c55e;border-color:#22c55e}@supports (color:color-mix(in lab,red,red)){.rv-kpi.is-hot{background:color-mix(in srgb,#22c55e 8%,var(--card))}}.rv-filters{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.rv-list{gap:12px;margin-top:12px;display:grid}.rv{grid-template-columns:72px minmax(0,1fr) auto minmax(190px,auto);align-items:start;gap:16px;padding:16px;display:grid}.rv-thumb{aspect-ratio:auto;border-radius:10px;width:72px;height:96px}.rv-avatar{color:#15803d;background:#ecfdf5;border-radius:50%;place-items:center;width:48px;height:48px;font-size:18px;font-weight:800;display:grid}.rv-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.rv-title strong{font-size:17px}.rv-sum{color:var(--text-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:6px 0 0;display:-webkit-box;overflow:hidden}.rv-meta{color:var(--text-2);flex-wrap:wrap;gap:6px 16px;margin-top:8px;font-size:13px;display:flex}.rv-meta span,.rv-meta a{align-items:center;gap:6px;display:inline-flex}.rv-facts{text-align:end;white-space:nowrap;flex-direction:column;align-items:flex-end;gap:2px;display:flex}.rv-facts b{font-size:18px}.rv-facts small{color:var(--text-2)}.rv-actions{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.rv-form{flex-direction:column;align-items:flex-end;gap:8px;width:100%;display:flex}.rv-buttons{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.rv-ask{border:1px solid var(--border);background:var(--bg);border-radius:12px;gap:6px;width:100%;padding:10px;display:grid}.rv-ask label{color:var(--text-2);font-size:12px;font-weight:600}@media(max-width:900px){.rv{grid-template-columns:64px minmax(0,1fr)}.rv-facts,.rv-actions{text-align:start;grid-column:1/-1;align-items:flex-start}.rv-form,.rv-buttons{justify-content:flex-start;align-items:flex-start}}.pdp{border:1px solid var(--border);border-radius:calc(var(--r-panel) + 6px);background:radial-gradient(900px 340px at 12% 0%,var(--sc,#22c55e),transparent 70%),radial-gradient(600px 300px at 100% 100%,#22c55e1a,transparent 70%),var(--card);grid-template-columns:minmax(220px,320px) minmax(0,1fr);align-items:center;gap:40px;margin-top:0;padding:36px;display:grid;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.pdp{background:radial-gradient(900px 340px at 12% 0%,color-mix(in srgb,var(--sc,#22c55e) 16%,transparent),transparent 70%),radial-gradient(600px 300px at 100% 100%,#22c55e1a,transparent 70%),var(--card)}}.pdp-stage{perspective:1100px;justify-items:center;display:grid}.pdp-book{aspect-ratio:3/4;width:min(100%,280px);transform-style:preserve-3d;transition:transform .6s cubic-bezier(.2,.8,.2,1);animation:6s ease-in-out infinite pdp-float;position:relative;transform:rotateY(-14deg)rotateX(2deg)}.pdp-stage:hover .pdp-book{animation-play-state:paused;transform:rotateY(-4deg)rotateX(0)scale(1.03)}.pdp-cover{aspect-ratio:auto;background:var(--sc,#080f0e);border-radius:6px 14px 14px 6px;place-items:center;width:100%;height:100%;display:grid;position:absolute;inset:0;overflow:hidden;box-shadow:0 30px 50px -18px #080f0e73,0 8px 18px #080f0e2e}@supports (color:color-mix(in lab,red,red)){.pdp-cover{background:color-mix(in srgb,var(--sc,#080f0e) 14%,var(--card))}}.pdp-cover img{object-fit:cover;width:100%;height:100%;display:block}.pdp-cover:after{content:"";pointer-events:none;background:linear-gradient(105deg,#ffffff38,#0000 28% 72%,#0000001f);position:absolute;inset:0}.pdp-spine{transform-origin:100%;background:linear-gradient(90deg,#00000059,#ffffff1f);border-radius:4px 0 0 4px;width:12px;position:absolute;inset-block:2px;inset-inline-start:-7px;transform:rotateY(-70deg)}.pdp-shadow{background:radial-gradient(closest-side,#080f0e59,#0000);border-radius:50%;width:62%;height:18px;margin-top:22px;animation:6s ease-in-out infinite pdp-shadow}@keyframes pdp-float{0%,to{translate:0}50%{translate:0 -9px}}@keyframes pdp-shadow{0%,to{opacity:.9;transform:scaleX(1)}50%{opacity:.6;transform:scaleX(.86)}}.pdp-in{opacity:0;animation:.6s cubic-bezier(.2,.8,.2,1) forwards pdp-up;animation-delay:var(--d,0s);transform:translateY(14px)}@keyframes pdp-up{to{opacity:1;transform:none}}.pdp-title{letter-spacing:-.02em;margin:12px 0 6px;font-size:clamp(28px,4vw,44px);line-height:1.1}.pdp-author{align-items:center;gap:10px;display:flex}.pdp-author b,.pdp-author small{line-height:1.25;display:block}.pdp-summary{color:var(--text-2);max-width:60ch;margin:14px 0 0;font-size:18px}.pdp-facts{flex-wrap:wrap;gap:8px 10px;margin:16px 0 0;padding:0;list-style:none;display:flex}.pdp-facts li{border:1px solid var(--border);background:var(--card);border-radius:999px;align-items:center;gap:6px;padding:6px 12px;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.pdp-facts li{background:color-mix(in srgb,var(--card) 70%,transparent)}}.pdp-facts li{font-size:13px;font-weight:600}.pdp-buy{border:1px solid var(--border);border-radius:var(--r-panel);background:var(--card);max-width:420px;margin-top:22px;padding:18px}@supports (color:color-mix(in lab,red,red)){.pdp-buy{background:color-mix(in srgb,var(--card) 88%,transparent)}}.pdp-buy{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 18px 40px -22px #080f0e59}.pdp-price{letter-spacing:-.02em;margin-bottom:12px;font-size:34px;font-weight:800}.pdp-cta{flex-wrap:wrap;gap:8px;display:flex}.pdp-own{color:#15803d;align-items:center;gap:6px;margin:10px 0 0;font-weight:600;display:flex}.pdp-go{position:relative;overflow:hidden}.pdp-go:after{content:"";background:linear-gradient(110deg,#0000 30%,#ffffff47,#0000 70%);animation:3.4s ease-in-out 1.2s infinite pdp-shine;position:absolute;inset:0;transform:translate(-120%)}@keyframes pdp-shine{0%{transform:translate(-120%)}40%,to{transform:translate(120%)}}.pdp-go:hover{box-shadow:0 10px 26px #22c55e59}.pdp-trust{color:var(--text-2);flex-wrap:wrap;gap:6px 16px;margin:12px 0 0;padding:0;font-size:13px;list-style:none;display:flex}.pdp-trust li{align-items:center;gap:6px;display:inline-flex}.pdp-trust svg{color:#22c55e}.pdp-body{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:16px;margin-top:18px;display:grid}.ph{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:2px 0 14px;display:flex}.ph>div:first-child{flex-direction:column;gap:2px;min-width:0;display:flex}.ph-t{letter-spacing:-.01em;color:var(--text);font-size:17px;font-weight:800}.ph-s{color:var(--muted);font-size:13px}.ph-s a{color:inherit;text-decoration:none}.ph-s a:hover{color:var(--secondary);text-decoration:underline}.pdp-desc{overflow-wrap:anywhere;min-width:0;margin-top:8px;line-height:1.7}.pdp-desc p{margin:0 0 10px}.pdp-desc ul,.pdp-desc ol{margin:0 0 10px;padding-inline-start:22px}.pdp-desc ul{list-style:outside}.pdp-desc ol{list-style:decimal}.pdp-desc h3{margin:14px 0 6px;font-size:17px;font-weight:800}.rte{border:1px solid var(--border);border-radius:var(--r-control,12px);background:var(--card);overflow:hidden}.rte:focus-within{border-color:var(--secondary);box-shadow:0 0 0 3px var(--secondary)}@supports (color:color-mix(in lab,red,red)){.rte:focus-within{box-shadow:0 0 0 3px color-mix(in srgb,var(--secondary) 25%,transparent)}}.rte-bar{border-bottom:1px solid var(--border);background:var(--bg);flex-wrap:wrap;gap:4px;padding:6px;display:flex}.rte-bar button{min-width:34px;height:34px;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:0 8px;font-weight:700}.rte-bar button:hover{background:var(--surface-2,#0000000f)}.rte-body{outline:none;min-height:150px;max-height:360px;padding:10px 12px;line-height:1.7;overflow-y:auto}.rte-body p{margin:0 0 10px}.rte-body ul,.rte-body ol{margin:0 0 10px;padding-inline-start:22px}.rte-body ul{list-style:outside}.rte-body ol{list-style:decimal}.rte-body h3{margin:12px 0 6px;font-size:17px;font-weight:800}.pdp-writer{position:sticky;top:84px}@media(max-width:900px){.pdp{grid-template-columns:1fr;gap:24px;padding:22px}.pdp-book{width:200px}.pdp-body{grid-template-columns:1fr}.pdp-writer{position:static}}@media(prefers-reduced-motion:reduce){.pdp-book,.pdp-shadow,.pdp-go:after{animation:none}.pdp-in{animation-duration:10ms;animation-delay:0s}}.pdp-fallback{color:#fff;background:linear-gradient(160deg,var(--sc,#22c55e) 0%,#080f0e 100%);flex-direction:column;justify-content:flex-end;gap:6px;padding:22px;display:flex;position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){.pdp-fallback{background:linear-gradient(160deg,color-mix(in srgb,var(--sc,#22c55e) 80%,#fff 0%),#080f0e)}}.pdp-fallback svg{opacity:.85;position:absolute;inset-block-start:22px;inset-inline-start:22px}.pdp-fallback b{font-size:22px;line-height:1.15}.pdp-fallback small{opacity:.8}.checkout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:20px;margin-top:16px;display:grid}.checkout-sum{flex-direction:column;gap:4px;display:flex;position:sticky;top:84px}.checkout-thumb{aspect-ratio:auto;border-radius:10px;width:72px;height:96px;margin-bottom:8px}.pay-tabs{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-top:12px;display:grid}.pay-tab{text-align:start;border:2px solid var(--border);border-radius:var(--r-panel);background:var(--card);cursor:pointer;color:inherit;transition:border-color var(--ease),box-shadow var(--ease),transform var(--ease);gap:2px;padding:14px 16px;display:grid}.pay-tab small{color:var(--text-2)}.pay-tab:hover{border-color:#22c55e;transform:translateY(-2px)}.pay-tab.is-on{background:#22c55e;border-color:#22c55e}@supports (color:color-mix(in lab,red,red)){.pay-tab.is-on{background:color-mix(in srgb,#22c55e 8%,var(--card))}}.pay-tab.is-on{box-shadow:0 10px 26px #22c55e24}.pay-panel{margin-top:14px}.bank-details{gap:0;margin:0;display:grid}.bank-details div{border-bottom:1px solid var(--border);justify-content:space-between;gap:12px;padding:9px 0;display:flex}.bank-details dt{color:var(--text-2)}.bank-details dd{text-align:end;word-break:break-word;margin:0}.order-state{text-align:center;justify-items:center;padding:36px 16px;display:grid}.order-state.is-ok svg{color:#22c55e}.spinner-ring{border:4px solid #22c55e40;border-top-color:#22c55e;border-radius:50%;width:44px;height:44px;animation:1s linear infinite spin}@media(max-width:860px){.checkout{grid-template-columns:1fr}.checkout-sum{position:static}}@media(prefers-reduced-motion:reduce){.spinner-ring{animation-duration:3s}}.pm{padding:18px}.switch-row{cursor:pointer;align-items:center;gap:8px;font-weight:700;display:inline-flex}.switch-row input{accent-color:#22c55e;width:20px;height:20px}.nav-parent{position:relative}.nav-parent.is-active>.nav-item{background:#22c55e1a}.nav-toggle{width:32px;height:32px;color:var(--text-2);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;display:grid;position:absolute;inset-block-start:6px;inset-inline-end:6px}.nav-toggle:hover{background:var(--bg)}.nav-sub{border-inline-start:2px solid var(--border);gap:1px;margin:2px 0 6px 22px;padding:0 0 0 12px;list-style:none;display:grid}.nav-subitem{color:var(--text-2);transition:background var(--ease),color var(--ease);border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:14px;font-weight:600;text-decoration:none;display:flex}.nav-subitem:hover{background:var(--bg);color:var(--text)}.nav-subitem[aria-current=page]{color:#fff;background:#080f0e}html.dark .nav-subitem[aria-current=page]{color:#052e16;background:#22c55e}.nav-badge{color:#052e16;text-align:center;background:#22c55e;border-radius:10px;min-width:20px;height:20px;margin-inline-start:auto;padding:0 6px;font-size:11px;font-weight:800;line-height:20px}.is-collapsed .nav-sub,.is-collapsed .nav-toggle{display:none!important}@media(min-width:1024px){.shop-tabs{display:none}}.rv-crumb{color:var(--text-2);align-items:center;gap:8px;margin-bottom:2px;font-size:13px;display:flex}.rv-crumb a{color:inherit}.pv{-webkit-user-select:none;user-select:none;margin-top:14px;max-width:900px;margin-inline:auto}.pv-pages{gap:14px;display:grid}.pv-page{border:1px solid var(--border);pointer-events:none;background:#fff;border-radius:8px;width:100%;height:auto;display:block;box-shadow:0 8px 24px -12px #080f0e4d}.pv-locked{border-radius:8px;gap:14px;margin-top:14px;display:grid;position:relative;overflow:hidden}.pv-blur{filter:blur(9px)saturate(.9);opacity:.9;transform:scale(1.02)}.pv-lock-card{text-align:center;background:linear-gradient(to bottom,var(--bg),var(--bg) 40%);place-content:center;justify-items:center;gap:6px;padding:24px;display:grid;position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){.pv-lock-card{background:linear-gradient(to bottom,color-mix(in srgb,var(--bg) 20%,transparent),color-mix(in srgb,var(--bg) 88%,transparent) 40%)}}.pv-lock-card h2{margin:6px 0 0;font-size:26px}.pv-lock-card p{margin:0 0 8px}.pv-lock-card svg{color:#22c55e}.pv-status{text-align:center;padding:40px 0}@media print{.pv{display:none!important}}.subject-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.subject-bar .grade-tabs{max-width:100%;margin:0;overflow-x:auto}.subject-bar-end{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}.pager{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;display:flex}.pager-btn{border:1px solid var(--border);background:var(--card);min-width:42px;min-height:42px;color:var(--text);border-radius:12px;justify-content:center;align-items:center;padding:0 12px;font-weight:700;text-decoration:none;transition:background .16s,border-color .16s,color .16s;display:inline-flex}a.pager-btn:hover{background:#22c55e;border-color:#22c55e}@supports (color:color-mix(in lab,red,red)){a.pager-btn:hover{background:color-mix(in srgb,#22c55e 10%,var(--card))}}.pager-btn.is-on{color:#fff;background:#080f0e;border-color:#080f0e}html.dark .pager-btn.is-on{color:#052e16;background:#22c55e;border-color:#22c55e}.pager-btn.is-off{opacity:.4}.pager-gap{color:var(--muted);padding:0 4px}.sj-syllabus{justify-content:flex-end;align-items:center;gap:10px;display:flex}.sj-syllabus .select{width:auto;min-height:40px}.sj-section{margin-top:6px}.sj-section+.sj-section{margin-top:30px}.sj-head{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);align-items:center;gap:10px;margin:0 0 14px;font-size:13px;font-weight:800;display:flex}.sj-head:after{content:"";background:var(--border);flex:1;height:1px}.sj-count{background:var(--text);border-radius:999px;order:1;padding:2px 9px}@supports (color:color-mix(in lab,red,red)){.sj-count{background:color-mix(in srgb,var(--text) 7%,transparent)}}.sj-count{letter-spacing:0;font-size:12px}.sj-head:after{order:2}.sj-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;display:grid}@media(min-width:1000px){.sj-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.sj-tile{border:1px solid var(--border);background:linear-gradient(135deg,var(--sc),var(--card) 60%);border-radius:18px;align-items:center;gap:12px;padding:14px 16px;display:flex;position:relative}@supports (color:color-mix(in lab,red,red)){.sj-tile{background:linear-gradient(135deg,color-mix(in srgb,var(--sc) 9%,var(--card)),var(--card) 60%)}}.sj-tile{color:inherit;transition:transform var(--ease),box-shadow var(--ease),border-color var(--ease);text-decoration:none;overflow:hidden}.sj-tile:hover{border-color:var(--sc);box-shadow:0 12px 30px var(--sc)}@supports (color:color-mix(in lab,red,red)){.sj-tile:hover{box-shadow:0 12px 30px color-mix(in srgb,var(--sc) 22%,transparent)}}.sj-tile:hover .subject-ic{transform:scale(1.1)rotate(-4deg)}.sj-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.sj-tile .subject-ic{border-radius:14px;width:46px;height:46px}.sj-main strong{font-family:var(--font-display);font-size:16px;line-height:1.25}.sj-go{color:var(--sc);opacity:.55;transition:transform .2s,opacity .2s}.sj-tile:hover .sj-go{opacity:1;transform:translate(4px)}.sj-foot{color:var(--muted);align-items:center;gap:8px;margin-top:28px;font-size:14px;display:flex}@media(max-width:720px){.sj-grid{grid-template-columns:1fr 1fr;gap:10px}.sj-tile{flex-direction:column;align-items:flex-start;padding:14px}.sj-go{display:none}}.pt-short{display:none}@media(max-width:560px){.papers-tabs{width:100%;margin-top:0;display:flex;overflow:visible}.papers-tabs a{flex:1;justify-content:center;min-height:42px;padding:0 10px}.pt-long{display:none}.pt-short{display:inline}.paper-filters{grid-template-columns:1fr 1fr;align-items:end;gap:10px;display:grid}.paper-filters .field:first-child,.paper-filters .paper-check,.paper-filters>.btn{grid-column:1/-1}.paper-filters .select{width:100%}.paper-grid{grid-template-columns:1fr;gap:10px}.paper-tile{padding:14px}.paper-tile-head{gap:12px}.paper-tile-head .subject-ic{width:42px;height:42px}.paper-year{font-size:22px}.paper-tile h3{font-size:17px}.shop-bar-filters{grid-template-columns:1fr 1fr;gap:8px;display:grid}.shop-bar-filters .select{width:100%;min-width:0}.shop-bar-filters .paper-check{grid-column:1}.shop-bar-end{grid-column:1/-1;justify-content:space-between;width:100%;margin-left:0}}.author-head{align-items:flex-start;gap:18px;margin-top:8px;padding:22px;display:flex}.author-avatar{color:#22c55e;width:76px;height:76px;font:800 34px/1 var(--font-display);background:#080f0e;border-radius:22px;flex:none;place-items:center;display:grid}.author-info{flex:1;min-width:0}.author-name{font:800 24px/1.2 var(--font-display)}.author-stats{color:var(--muted);gap:6px 18px;margin-top:12px;font-size:14px}.author-stats b{color:var(--text)}.author-stats a{align-items:center;gap:6px;display:inline-flex}@media(max-width:560px){.author-head{flex-direction:column;padding:16px}.author-avatar{width:60px;height:60px;font-size:28px}}@media(max-width:767px){.pub-nav,.pub-nav.is-open{flex-wrap:nowrap;gap:6px}.pub-brand{flex:auto;min-width:0}.pub-brand .logo{min-width:0}.pub-actions{flex:none;gap:2px}.pub-actions .icon-btn{width:40px;height:40px}.pub-actions .btn-sm{white-space:nowrap;margin-inline:4px;padding:0 12px}}@media(max-width:479px){.pub-actions .sd-btn{display:none}}@media(max-width:379px){.pub-brand .logo-text{display:none}}@media(max-width:767px){.subject-bar{gap:10px;display:grid}.subject-bar .grade-tabs{justify-content:space-between;gap:2px;width:100%}.subject-bar .grade-tabs .tab{flex:1 1 0;justify-content:center;padding:0 8px}.subject-bar-end{grid-template-columns:1fr 1fr;gap:8px;margin:0;display:grid}.subject-bar-end .btn{white-space:normal;text-align:center;justify-content:center;width:100%;padding:0 10px;font-size:13px;line-height:1.2}.level-test .btn{justify-content:center;width:100%}.topic-row{gap:12px;padding:12px 14px}.author-head>.btn{justify-content:center;width:100%}.author-stats{grid-template-columns:1fr;gap:12px}.author-stats .card .btn{justify-content:center;width:100%}.date-range>.row.wrap{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.date-range .chip{width:100%;box-shadow:none;justify-content:center;padding:0 6px;transform:none}.date-range .chip:hover{transform:none}.notif-pop{z-index:70;width:auto;max-height:min(70vh,100dvh - 180px);border-radius:20px;padding:12px;position:fixed;inset-block-start:calc(env(safe-area-inset-top) + 64px);inset-block-end:auto;inset-inline:12px;box-shadow:0 24px 60px #080f0e40}.notif-pop .row.between{gap:8px;padding:2px 4px 8px}.notif-pop .link-btn{white-space:nowrap;font-size:13px}.bell-item{border:1px solid var(--border);background:var(--card);border-radius:14px;margin-top:6px;padding:12px}.bell-item.is-new{border-color:#22c55e}@supports (color:color-mix(in lab,red,red)){.bell-item.is-new{border-color:color-mix(in srgb,#22c55e 35%,var(--border))}}.bell-item .sx-ic{background:var(--primary);width:34px;height:34px}@supports (color:color-mix(in lab,red,red)){.bell-item .sx-ic{background:color-mix(in srgb,var(--primary) 8%,transparent)}}.bell-item .sx-ic{color:var(--text-2)}.bell-item>span:last-child{overflow-wrap:anywhere;min-width:0}.bell-all{border:1px solid var(--border);border-radius:14px;margin-top:8px;padding:12px}}.subject-go{display:none}@media(max-width:767px){.subject-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px!important}.subject-card{border-color:var(--sc,#22c55e);flex-direction:column;gap:2px;padding:16px 14px 14px;display:flex;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.subject-card{border-color:color-mix(in srgb,var(--sc,#22c55e) 22%,var(--border))}}.subject-card{background:linear-gradient(160deg,var(--sc,#22c55e) 0%,var(--card) 62%)}@supports (color:color-mix(in lab,red,red)){.subject-card{background:linear-gradient(160deg,color-mix(in srgb,var(--sc,#22c55e) 14%,var(--card)) 0%,var(--card) 62%)}}.subject-card:after{content:"";background:var(--sc,#22c55e);border-radius:50%;width:90px;height:90px;position:absolute;inset-block-start:-26px;inset-inline-end:-26px}@supports (color:color-mix(in lab,red,red)){.subject-card:after{background:color-mix(in srgb,var(--sc,#22c55e) 12%,transparent)}}.subject-card:after{pointer-events:none}.subject-card .ic-box{border-radius:14px;width:44px;height:44px}.subject-card h3{margin:12px 0 0;font-size:16px;line-height:1.2}.subject-card p{font-size:12.5px}.subject-go{background:var(--sc,#22c55e);color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;display:grid;position:absolute;inset-block-end:12px;inset-inline-end:12px}.subject-go .ico-sm{color:#fff!important}.subject-card:active{transform:scale(.98)}.mobile-nav a{text-align:center;overflow-wrap:anywhere;justify-content:flex-start;min-width:0;padding-top:6px;font-size:10.5px;line-height:1.15}}.pv-reader{-webkit-user-select:auto;user-select:auto;margin-top:0}.pv-reader .pv-page{pointer-events:auto}.pv-slot{background:var(--border);width:100%}@supports (color:color-mix(in lab,red,red)){.pv-slot{background:color-mix(in srgb,var(--border) 40%,var(--card))}}.pv-slot{border-radius:8px;overflow:hidden}.pv-slot .pv-page{height:auto}.fm-bar{flex-wrap:wrap;align-items:center;gap:8px;margin:4px 0 12px;display:flex}.fm-search{border:1px solid var(--border);background:var(--card);border-radius:999px;flex:220px;align-items:center;gap:8px;min-height:44px;padding:0 14px;display:flex}.fm-search-in{font:inherit;color:inherit;background:0 0;border:0;outline:none;flex:1;min-width:0}.fm-bar .select{flex:none;width:auto;min-width:170px}.fm-new{white-space:nowrap}.fm-list{flex-direction:column;gap:8px;margin-top:12px;display:flex}.fm-row{border:1px solid var(--border);background:var(--card);color:inherit;border-radius:18px;align-items:center;gap:12px;padding:14px 16px;text-decoration:none;transition:border-color .16s,transform .16s;display:flex}.fm-row:hover{border-color:var(--secondary);transform:translateY(-1px)}.fm-row.is-pinned{background:var(--secondary)}@supports (color:color-mix(in lab,red,red)){.fm-row.is-pinned{background:color-mix(in srgb,var(--secondary) 6%,var(--card))}}.fm-av{width:42px;height:42px;color:hsl(var(--h) 55% 28%);background:hsl(var(--h) 70% 90%);border-radius:50%;flex:none;place-items:center;font-weight:800;display:grid}.fm-av.sm{width:28px;height:28px;font-size:13px}html.dark .fm-av{color:hsl(var(--h) 70% 85%);background:hsl(var(--h) 35% 22%)}.fm-main{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.fm-title{overflow-wrap:anywhere;font-size:16px;font-weight:700;line-height:1.3}.fm-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;display:flex}.fm-count{text-align:center;background:var(--surface-2,#0000000d);border-radius:14px;flex:none;min-width:58px;padding:6px 8px}.fm-count b{font-size:18px;line-height:1.1;display:block}.fm-count small{color:var(--muted);font-size:11px}.fm-count.has{background:var(--secondary)}@supports (color:color-mix(in lab,red,red)){.fm-count.has{background:color-mix(in srgb,var(--secondary) 14%,transparent)}}.fm-count.has{color:var(--secondary)}.fm-empty{text-align:center;margin-top:12px;padding:36px 20px}.fm-thread{margin-top:4px;padding:20px}.fm-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.fm-body{overflow-wrap:anywhere;margin-top:10px;line-height:1.65}.fm-body.big{font-size:16px}.fm-actions{flex-wrap:wrap;align-items:center;gap:4px 14px;margin-top:12px;display:flex}.fm-actions form{margin:0;display:inline}.fm-act{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:4px 2px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.fm-act:hover{color:var(--text)}.fm-act.on{color:var(--secondary)}.fm-act.danger:hover{color:#dc2626}.fm-act.static{cursor:default}.fm-sub{margin:20px 0 8px;font-size:18px}.fm-posts{flex-direction:column;gap:10px;display:flex}.fm-post{border:1px solid var(--border);background:var(--card);border-radius:16px;padding:12px 14px}.fm-post .fm-post{background:var(--bg);margin-top:10px}.fm-children{border-inline-start:2px solid var(--border);margin-top:6px;margin-inline-start:14px;padding-inline-start:12px}.fm-post.lvl-2+.fm-post,.fm-post.lvl-2 .fm-children{margin-inline-start:0}.fm-quote{align-items:center;gap:4px;margin:6px 0 0;display:flex}.fm-gone{align-items:center;gap:6px;padding:4px 0;display:flex}.fm-inline{margin-top:10px}.fm-text{resize:vertical;width:100%}.fm-compose{margin-top:16px;padding:18px}.fm-back{color:inherit;text-decoration:none}.fm-back:hover{color:var(--secondary);text-decoration:underline}.fm-form{max-width:760px}@media(max-width:640px){.fm-row{gap:10px;padding:12px}.fm-av{width:36px;height:36px}.fm-count{min-width:48px}.fm-bar .select{flex:140px;min-width:0}.fm-new{flex:100%;justify-content:center}.fm-children{margin-inline-start:6px;padding-inline-start:8px}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}@keyframes pulse{50%{opacity:.5}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}
