/*! tailwindcss v4.2.4 | MIT License | https://tailwindcss.com */@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-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-divide-x-reverse:0;--tw-border-style:solid;--tw-divide-y-reverse:0;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking: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-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--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-200:oklch(88.5% .062 18.334);--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-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-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-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-cyan-400:oklch(78.9% .154 211.53);--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-violet-50:oklch(96.9% .016 293.756);--color-violet-700:oklch(49.1% .27 292.581);--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-600:oklch(58.6% .253 17.585);--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-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-md:28rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-5xl:64rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--shadow-xs:0 1px 2px #0f172a0a;--shadow-sm:0 2px 6px #0f172a0d, 0 1px 2px #0f172a0a;--shadow-md:0 6px 20px -4px #0f172a14, 0 3px 8px -3px #0f172a0d;--shadow-lg:0 20px 48px -16px #0f172a29, 0 8px 20px -8px #0f172a14;--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-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--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-family-sans:"Inter", "SF Pro Display", -apple-system, BlinkMacSystemFont, "PingFang SC", "Noto Sans SC", ui-sans-serif, system-ui, sans-serif;--font-family-mono:"JetBrains Mono", "SF Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--color-bg-0:#fff;--color-bg-1:#f7f8fb;--color-bg-2:#fff;--color-bg-3:#f1f3f8;--color-bg-4:#e8ecf2;--color-line-1:#eef1f5;--color-line-2:#e1e6ed;--color-line-3:#cbd2dc;--color-tx-1:#0b1220;--color-tx-2:#1f2937;--color-tx-3:#4b5563;--color-tx-4:#8b94a5;--color-tx-5:#b8bfc9;--color-brand:#2563eb;--color-brand-2:#3b82f6;--color-accent:#10b981;--color-accent-2:#34d399;--color-warn:#f59e0b;--color-promo:#f97316;--color-danger:#ef4444;--shadow-hero:0 30px 80px -24px #2563eb33, 0 18px 40px -18px #0f172a1a;--ring-brand:0 0 0 3px #2563eb2e;--ring-accent:0 0 0 3px #10b9812e}}@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%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, 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{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]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance: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{.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.inset-x-0{inset-inline:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.-top-1{top:calc(var(--spacing) * -1)}.-top-1\.5{top:calc(var(--spacing) * -1.5)}.-top-3{top:calc(var(--spacing) * -3)}.-top-6{top:calc(var(--spacing) * -6)}.top-0{top:calc(var(--spacing) * 0)}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing) * 2)}.top-3{top:calc(var(--spacing) * 3)}.top-4{top:calc(var(--spacing) * 4)}.top-6{top:calc(var(--spacing) * 6)}.-right-1{right:calc(var(--spacing) * -1)}.-right-1\.5{right:calc(var(--spacing) * -1.5)}.-right-2{right:calc(var(--spacing) * -2)}.-right-6{right:calc(var(--spacing) * -6)}.right-0{right:calc(var(--spacing) * 0)}.right-2{right:calc(var(--spacing) * 2)}.right-3{right:calc(var(--spacing) * 3)}.right-4{right:calc(var(--spacing) * 4)}.right-8{right:calc(var(--spacing) * 8)}.-bottom-1\.5{bottom:calc(var(--spacing) * -1.5)}.-bottom-2{bottom:calc(var(--spacing) * -2)}.bottom-3{bottom:calc(var(--spacing) * 3)}.bottom-4{bottom:calc(var(--spacing) * 4)}.left-0{left:calc(var(--spacing) * 0)}.left-1\/2{left:50%}.left-3{left:calc(var(--spacing) * 3)}.left-3\.5{left:calc(var(--spacing) * 3.5)}.z-10{z-index:10}.z-40{z-index:40}.z-\[1\]{z-index:1}.z-\[60\]{z-index:60}.z-\[80\]{z-index:80}.z-\[100\]{z-index:100}.order-1{order:1}.order-2{order:2}.col-span-2{grid-column:span 2/span 2}.col-span-full{grid-column:1/-1}.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}}.mx-1{margin-inline:calc(var(--spacing) * 1)}.mx-2{margin-inline:calc(var(--spacing) * 2)}.mx-4{margin-inline:calc(var(--spacing) * 4)}.mx-auto{margin-inline:auto}.my-1{margin-block:calc(var(--spacing) * 1)}.my-5{margin-block:calc(var(--spacing) * 5)}.my-16{margin-block:calc(var(--spacing) * 16)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-2\.5{margin-top:calc(var(--spacing) * 2.5)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-7{margin-top:calc(var(--spacing) * 7)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-9{margin-top:calc(var(--spacing) * 9)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mt-14{margin-top:calc(var(--spacing) * 14)}.mt-24{margin-top:calc(var(--spacing) * 24)}.mt-auto{margin-top:auto}.mr-1{margin-right:calc(var(--spacing) * 1)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mr-2\.5{margin-right:calc(var(--spacing) * 2.5)}.mr-auto{margin-right:auto}.-mb-px{margin-bottom:-1px}.mb-0{margin-bottom:calc(var(--spacing) * 0)}.mb-0\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-7{margin-bottom:calc(var(--spacing) * 7)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-10{margin-bottom:calc(var(--spacing) * 10)}.mb-14{margin-bottom:calc(var(--spacing) * 14)}.mb-16{margin-bottom:calc(var(--spacing) * 16)}.mb-\[3px\]{margin-bottom:3px}.ml-0\.5{margin-left:calc(var(--spacing) * .5)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-3{margin-left:calc(var(--spacing) * 3)}.ml-auto{margin-left:auto}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-4{-webkit-line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.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}.inline-grid{display:inline-grid}.table{display:table}.aspect-\[16\/9\]{aspect-ratio:16/9}.h-1{height:calc(var(--spacing) * 1)}.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-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.h-12{height:calc(var(--spacing) * 12)}.h-13{height:calc(var(--spacing) * 13)}.h-14{height:calc(var(--spacing) * 14)}.h-15{height:calc(var(--spacing) * 15)}.h-16{height:calc(var(--spacing) * 16)}.h-20{height:calc(var(--spacing) * 20)}.h-24{height:calc(var(--spacing) * 24)}.h-32{height:calc(var(--spacing) * 32)}.h-40{height:calc(var(--spacing) * 40)}.h-44{height:calc(var(--spacing) * 44)}.h-72{height:calc(var(--spacing) * 72)}.h-\[2px\]{height:2px}.h-\[18px\]{height:18px}.h-\[56px\]{height:56px}.h-\[88px\]{height:88px}.h-\[120px\]{height:120px}.h-\[132px\]{height:132px}.h-\[147px\]{height:147px}.h-\[200px\]{height:200px}.h-\[260px\]{height:260px}.h-\[310px\]{height:310px}.h-\[360px\]{height:360px}.h-full{height:100%}.h-px{height:1px}.max-h-52{max-height:calc(var(--spacing) * 52)}.max-h-\[85vh\]{max-height:85vh}.max-h-\[240px\]{max-height:240px}.max-h-\[260px\]{max-height:260px}.max-h-\[340px\]{max-height:340px}.max-h-\[420px\]{max-height:420px}.max-h-\[430px\]{max-height:430px}.min-h-\[36px\]{min-height:36px}.min-h-\[38px\]{min-height:38px}.min-h-\[48px\]{min-height:48px}.min-h-\[64px\]{min-height:64px}.min-h-\[88px\]{min-height:88px}.min-h-\[110px\]{min-height:110px}.min-h-\[145px\]{min-height:145px}.min-h-\[620px\]{min-height:620px}.min-h-\[calc\(100vh-80px\)\]{min-height:calc(100vh - 80px)}.min-h-screen{min-height:100vh}.\!w-auto{width:auto!important}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-1\/2{width:50%}.w-1\/3{width:33.3333%}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-2\/3{width:66.6667%}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-4\/5{width:80%}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-11{width:calc(var(--spacing) * 11)}.w-12{width:calc(var(--spacing) * 12)}.w-13{width:calc(var(--spacing) * 13)}.w-14{width:calc(var(--spacing) * 14)}.w-16{width:calc(var(--spacing) * 16)}.w-20{width:calc(var(--spacing) * 20)}.w-24{width:calc(var(--spacing) * 24)}.w-28{width:calc(var(--spacing) * 28)}.w-32{width:calc(var(--spacing) * 32)}.w-36{width:calc(var(--spacing) * 36)}.w-40{width:calc(var(--spacing) * 40)}.w-44{width:calc(var(--spacing) * 44)}.w-56{width:calc(var(--spacing) * 56)}.w-60{width:calc(var(--spacing) * 60)}.w-64{width:calc(var(--spacing) * 64)}.w-72{width:calc(var(--spacing) * 72)}.w-\[18px\]{width:18px}.w-\[78px\]{width:78px}.w-\[88px\]{width:88px}.w-\[90px\]{width:90px}.w-\[96px\]{width:96px}.w-\[105px\]{width:105px}.w-\[110px\]{width:110px}.w-\[120px\]{width:120px}.w-\[130px\]{width:130px}.w-\[200px\]{width:200px}.w-\[260px\]{width:260px}.w-\[360px\]{width:360px}.w-\[420px\]{width:420px}.w-fit{width:fit-content}.w-full{width:100%}.w-px{width:1px}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[160px\]{max-width:160px}.max-w-\[200px\]{max-width:200px}.max-w-\[220px\]{max-width:220px}.max-w-\[240px\]{max-width:240px}.max-w-\[260px\]{max-width:260px}.max-w-\[520px\]{max-width:520px}.max-w-\[720px\]{max-width:720px}.max-w-\[960px\]{max-width:960px}.max-w-\[1200px\]{max-width:1200px}.max-w-\[calc\(100vw-24px\)\]{max-width:calc(100vw - 24px)}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-xl{max-width:var(--container-xl)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-\[18px\]{min-width:18px}.min-w-\[56px\]{min-width:56px}.min-w-\[120px\]{min-width:120px}.min-w-\[180px\]{min-width:180px}.min-w-\[220px\]{min-width:220px}.min-w-\[820px\]{min-width:820px}.min-w-\[980px\]{min-width:980px}.flex-1{flex:1}.flex-none{flex:none}.flex-shrink{flex-shrink:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-0{--tw-translate-y:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-2{--tw-translate-y:calc(var(--spacing) * 2);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-3{--tw-translate-y:calc(var(--spacing) * 3);translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-\[\.98\]{scale:.98}.-rotate-90{rotate:-90deg}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.resize{resize:both}.resize-y{resize:vertical}.scroll-mt-24{scroll-margin-top:calc(var(--spacing) * 24)}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0{gap:calc(var(--spacing) * 0)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-7{gap:calc(var(--spacing) * 7)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-10{gap:calc(var(--spacing) * 10)}.gap-14{gap:calc(var(--spacing) * 14)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-10>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 10) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 10) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-24>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 24) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 24) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-x-6{column-gap:calc(var(--spacing) * 6)}:where(.space-x-1>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 1) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-x-reverse)))}.gap-y-1{row-gap:calc(var(--spacing) * 1)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.gap-y-4{row-gap:calc(var(--spacing) * 4)}:where(.divide-x>:not(:last-child)){--tw-divide-x-reverse:0;border-inline-style:var(--tw-border-style);border-inline-start-width:calc(1px * var(--tw-divide-x-reverse));border-inline-end-width:calc(1px * calc(1 - var(--tw-divide-x-reverse)))}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-\[var\(--color-line-1\)\]>:not(:last-child)){border-color:var(--color-line-1)}:where(.divide-slate-100>:not(:last-child)){border-color:var(--color-slate-100)}.self-center{align-self:center}.self-start{align-self:flex-start}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.\!rounded-full{border-radius:3.40282e38px!important}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-\[8px\]{border-radius:8px}.rounded-\[10px\]{border-radius:10px}.rounded-\[12px\]{border-radius:12px}.rounded-\[14px\]{border-radius:14px}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.\!border-amber-200{border-color:var(--color-amber-200)!important}.\!border-rose-200{border-color:var(--color-rose-200)!important}.border-\[\#E2E8F0\]{border-color:#e2e8f0}.border-\[rgba\(15\,23\,42\,\.06\)\]{border-color:#0f172a0f}.border-\[rgba\(16\,185\,129\,\.3\)\]{border-color:#10b9814d}.border-\[rgba\(16\,185\,129\,\.25\)\]{border-color:#10b98140}.border-\[rgba\(16\,185\,129\,\.28\)\]{border-color:#10b98147}.border-\[rgba\(16\,185\,129\,\.35\)\]{border-color:#10b98159}.border-\[rgba\(37\,99\,235\,\.16\)\]{border-color:#2563eb29}.border-\[rgba\(59\,130\,246\,\.25\)\]{border-color:#3b82f640}.border-\[rgba\(139\,92\,246\,\.25\)\]{border-color:#8b5cf640}.border-\[rgba\(239\,68\,68\,\.25\)\]{border-color:#ef444440}.border-\[var\(--color-bd-1\)\]{border-color:var(--color-bd-1)}.border-\[var\(--color-bg-3\)\]{border-color:var(--color-bg-3)}.border-\[var\(--color-brand\)\]{border-color:var(--color-brand)}.border-\[var\(--color-line-1\)\]{border-color:var(--color-line-1)}.border-\[var\(--color-line-2\)\]{border-color:var(--color-line-2)}.border-\[var\(--color-line-3\)\]{border-color:var(--color-line-3)}.border-amber-200{border-color:var(--color-amber-200)}.border-blue-100{border-color:var(--color-blue-100)}.border-blue-200{border-color:var(--color-blue-200)}.border-blue-300{border-color:var(--color-blue-300)}.border-blue-500{border-color:var(--color-blue-500)}.border-blue-500\/20{border-color:#3080ff33}@supports (color:color-mix(in lab,red,red)){.border-blue-500\/20{border-color:color-mix(in oklab,var(--color-blue-500) 20%,transparent)}}.border-emerald-100{border-color:var(--color-emerald-100)}.border-emerald-200{border-color:var(--color-emerald-200)}.border-emerald-300{border-color:var(--color-emerald-300)}.border-red-200{border-color:var(--color-red-200)}.border-rose-100{border-color:var(--color-rose-100)}.border-slate-100{border-color:var(--color-slate-100)}.border-slate-200{border-color:var(--color-slate-200)}.border-slate-300{border-color:var(--color-slate-300)}.border-transparent{border-color:#0000}.border-white{border-color:var(--color-white)}.border-t-blue-500{border-top-color:var(--color-blue-500)}.border-t-transparent{border-top-color:#0000}.\!bg-amber-50{background-color:var(--color-amber-50)!important}.\!bg-rose-50{background-color:var(--color-rose-50)!important}.bg-\[\#0B1220\]{background-color:#0b1220}.bg-\[\#3B82F6\]{background-color:#3b82f6}.bg-\[\#10B981\]{background-color:#10b981}.bg-\[\#DC2626\]{background-color:#dc2626}.bg-\[\#EF4444\]{background-color:#ef4444}.bg-\[\#F8FAFC\]{background-color:#f8fafc}.bg-\[\#F59E0B\]{background-color:#f59e0b}.bg-\[rgba\(16\,185\,129\,\.1\)\]{background-color:#10b9811a}.bg-\[rgba\(16\,185\,129\,\.06\)\]{background-color:#10b9810f}.bg-\[rgba\(16\,185\,129\,\.08\)\]{background-color:#10b98114}.bg-\[rgba\(37\,99\,235\,\.06\)\]{background-color:#2563eb0f}.bg-\[rgba\(37\,99\,235\,\.08\)\]{background-color:#2563eb14}.bg-\[rgba\(37\,99\,235\,\.035\)\]{background-color:#2563eb09}.bg-\[rgba\(59\,130\,246\,\.03\)\]{background-color:#3b82f608}.bg-\[rgba\(59\,130\,246\,\.04\)\]{background-color:#3b82f60a}.bg-\[rgba\(59\,130\,246\,\.05\)\]{background-color:#3b82f60d}.bg-\[rgba\(100\,116\,139\,\.10\)\]{background-color:#64748b1a}.bg-\[rgba\(124\,58\,237\,\.08\)\]{background-color:#7c3aed14}.bg-\[rgba\(139\,92\,246\,\.05\)\]{background-color:#8b5cf60d}.bg-\[rgba\(239\,68\,68\,\.04\)\]{background-color:#ef44440a}.bg-\[rgba\(239\,68\,68\,\.06\)\]{background-color:#ef44440f}.bg-\[rgba\(239\,68\,68\,\.08\)\]{background-color:#ef444414}.bg-\[rgba\(245\,158\,11\,\.10\)\]{background-color:#f59e0b1a}.bg-\[rgba\(245\,158\,11\,\.12\)\]{background-color:#f59e0b1f}.bg-\[var\(--color-accent\)\]{background-color:var(--color-accent)}.bg-\[var\(--color-bg-0\)\]{background-color:var(--color-bg-0)}.bg-\[var\(--color-bg-1\)\]{background-color:var(--color-bg-1)}.bg-\[var\(--color-bg-2\)\]{background-color:var(--color-bg-2)}.bg-\[var\(--color-bg-3\)\]{background-color:var(--color-bg-3)}.bg-\[var\(--color-border\)\]{background-color:var(--color-border)}.bg-\[var\(--color-brand\)\]{background-color:var(--color-brand)}.bg-\[var\(--color-line-1\)\]{background-color:var(--color-line-1)}.bg-\[var\(--color-line-2\)\]{background-color:var(--color-line-2)}.bg-amber-50{background-color:var(--color-amber-50)}.bg-amber-50\/50{background-color:#fffbeb80}@supports (color:color-mix(in lab,red,red)){.bg-amber-50\/50{background-color:color-mix(in oklab,var(--color-amber-50) 50%,transparent)}}.bg-amber-50\/60{background-color:#fffbeb99}@supports (color:color-mix(in lab,red,red)){.bg-amber-50\/60{background-color:color-mix(in oklab,var(--color-amber-50) 60%,transparent)}}.bg-amber-100{background-color:var(--color-amber-100)}.bg-black{background-color:var(--color-black)}.bg-black\/40{background-color:#0006}@supports (color:color-mix(in lab,red,red)){.bg-black\/40{background-color:color-mix(in oklab,var(--color-black) 40%,transparent)}}.bg-black\/60{background-color:#0009}@supports (color:color-mix(in lab,red,red)){.bg-black\/60{background-color:color-mix(in oklab,var(--color-black) 60%,transparent)}}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-50\/40{background-color:#eff6ff66}@supports (color:color-mix(in lab,red,red)){.bg-blue-50\/40{background-color:color-mix(in oklab,var(--color-blue-50) 40%,transparent)}}.bg-blue-50\/50{background-color:#eff6ff80}@supports (color:color-mix(in lab,red,red)){.bg-blue-50\/50{background-color:color-mix(in oklab,var(--color-blue-50) 50%,transparent)}}.bg-blue-50\/60{background-color:#eff6ff99}@supports (color:color-mix(in lab,red,red)){.bg-blue-50\/60{background-color:color-mix(in oklab,var(--color-blue-50) 60%,transparent)}}.bg-blue-100{background-color:var(--color-blue-100)}.bg-blue-500{background-color:var(--color-blue-500)}.bg-blue-600{background-color:var(--color-blue-600)}.bg-emerald-50{background-color:var(--color-emerald-50)}.bg-emerald-50\/60{background-color:#ecfdf599}@supports (color:color-mix(in lab,red,red)){.bg-emerald-50\/60{background-color:color-mix(in oklab,var(--color-emerald-50) 60%,transparent)}}.bg-emerald-50\/70{background-color:#ecfdf5b3}@supports (color:color-mix(in lab,red,red)){.bg-emerald-50\/70{background-color:color-mix(in oklab,var(--color-emerald-50) 70%,transparent)}}.bg-emerald-500{background-color:var(--color-emerald-500)}.bg-emerald-600{background-color:var(--color-emerald-600)}.bg-red-50{background-color:var(--color-red-50)}.bg-rose-50{background-color:var(--color-rose-50)}.bg-slate-50{background-color:var(--color-slate-50)}.bg-slate-100{background-color:var(--color-slate-100)}.bg-slate-200{background-color:var(--color-slate-200)}.bg-slate-950{background-color:var(--color-slate-950)}.bg-transparent{background-color:#0000}.bg-violet-50{background-color:var(--color-violet-50)}.bg-white{background-color:var(--color-white)}.bg-white\/90{background-color:#ffffffe6}@supports (color:color-mix(in lab,red,red)){.bg-white\/90{background-color:color-mix(in oklab,var(--color-white) 90%,transparent)}}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-t{--tw-gradient-position:to top in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-\[linear-gradient\(135deg\,\#f8fbff\,\#fff\)\]{background-image:linear-gradient(135deg,#f8fbff,#fff)}.bg-\[linear-gradient\(135deg\,rgba\(236\,253\,245\,\.95\)\,rgba\(239\,246\,255\,\.92\)\)\]{background-image:linear-gradient(135deg,#ecfdf5f2,#eff6ffeb)}.bg-\[linear-gradient\(135deg\,rgba\(236\,253\,245\,\.96\)\,rgba\(239\,246\,255\,\.94\)\)\]{background-image:linear-gradient(135deg,#ecfdf5f5,#eff6fff0)}.bg-\[linear-gradient\(135deg\,rgba\(239\,246\,255\,\.98\)\,rgba\(236\,253\,245\,\.94\)\)\]{background-image:linear-gradient(135deg,#eff6fffa,#ecfdf5f0)}.from-blue-500{--tw-gradient-from:var(--color-blue-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-slate-900{--tw-gradient-from:var(--color-slate-900);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-slate-950\/70{--tw-gradient-from:#020618b3}@supports (color:color-mix(in lab,red,red)){.from-slate-950\/70{--tw-gradient-from:color-mix(in oklab, var(--color-slate-950) 70%, transparent)}}.from-slate-950\/70{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-cyan-400{--tw-gradient-via:var(--color-cyan-400);--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-blue-900{--tw-gradient-to:var(--color-blue-900);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-emerald-400{--tw-gradient-to:var(--color-emerald-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:calc(var(--spacing) * 0)}.p-1{padding:calc(var(--spacing) * 1)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-3\.5{padding:calc(var(--spacing) * 3.5)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-7{padding:calc(var(--spacing) * 7)}.p-8{padding:calc(var(--spacing) * 8)}.p-10{padding:calc(var(--spacing) * 10)}.p-12{padding:calc(var(--spacing) * 12)}.p-14{padding:calc(var(--spacing) * 14)}.p-16{padding:calc(var(--spacing) * 16)}.p-20{padding:calc(var(--spacing) * 20)}.\!px-5{padding-inline:calc(var(--spacing) * 5)!important}.px-0\.5{padding-inline:calc(var(--spacing) * .5)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-7{padding-inline:calc(var(--spacing) * 7)}.\!py-2{padding-block:calc(var(--spacing) * 2)!important}.\!py-2\.5{padding-block:calc(var(--spacing) * 2.5)!important}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-3\.5{padding-block:calc(var(--spacing) * 3.5)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-7{padding-block:calc(var(--spacing) * 7)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-12{padding-block:calc(var(--spacing) * 12)}.py-14{padding-block:calc(var(--spacing) * 14)}.py-16{padding-block:calc(var(--spacing) * 16)}.py-20{padding-block:calc(var(--spacing) * 20)}.py-\[1px\]{padding-block:1px}.py-\[3px\]{padding-block:3px}.pt-1{padding-top:calc(var(--spacing) * 1)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pt-20{padding-top:calc(var(--spacing) * 20)}.pr-1{padding-right:calc(var(--spacing) * 1)}.pr-1\.5{padding-right:calc(var(--spacing) * 1.5)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-4{padding-right:calc(var(--spacing) * 4)}.pr-6{padding-right:calc(var(--spacing) * 6)}.pr-16{padding-right:calc(var(--spacing) * 16)}.pb-0{padding-bottom:calc(var(--spacing) * 0)}.pb-1{padding-bottom:calc(var(--spacing) * 1)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-24{padding-bottom:calc(var(--spacing) * 24)}.pl-1{padding-left:calc(var(--spacing) * 1)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-10{padding-left:calc(var(--spacing) * 10)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-top{vertical-align:top}.font-mono{font-family:var(--font-mono)}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\!text-\[12px\]{font-size:12px!important}.\!text-\[14px\]{font-size:14px!important}.\!text-\[26px\]{font-size:26px!important}.text-\[9\.5px\]{font-size:9.5px}.text-\[9px\]{font-size:9px}.text-\[10\.5px\]{font-size:10.5px}.text-\[10px\]{font-size:10px}.text-\[11\.5px\]{font-size:11.5px}.text-\[11px\]{font-size:11px}.text-\[12\.5px\]{font-size:12.5px}.text-\[12px\]{font-size:12px}.text-\[13\.5px\]{font-size:13.5px}.text-\[13px\]{font-size:13px}.text-\[14\.5px\]{font-size:14.5px}.text-\[14px\]{font-size:14px}.text-\[15\.5px\]{font-size:15.5px}.text-\[15px\]{font-size:15px}.text-\[16px\]{font-size:16px}.text-\[17px\]{font-size:17px}.text-\[18px\]{font-size:18px}.text-\[19px\]{font-size:19px}.text-\[20px\]{font-size:20px}.text-\[21px\]{font-size:21px}.text-\[22px\]{font-size:22px}.text-\[24px\]{font-size:24px}.text-\[26px\]{font-size:26px}.text-\[28px\]{font-size:28px}.text-\[30px\]{font-size:30px}.text-\[32px\]{font-size:32px}.text-\[34px\]{font-size:34px}.text-\[36px\]{font-size:36px}.text-\[40px\]{font-size:40px}.text-\[44px\]{font-size:44px}.\!leading-none{--tw-leading:1!important;line-height:1!important}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-7{--tw-leading:calc(var(--spacing) * 7);line-height:calc(var(--spacing) * 7)}.leading-\[1\.1\]{--tw-leading:1.1;line-height:1.1}.leading-\[1\.2\]{--tw-leading:1.2;line-height:1.2}.leading-\[1\.05\]{--tw-leading:1.05;line-height:1.05}.leading-\[1\.15\]{--tw-leading:1.15;line-height:1.15}.leading-\[1\.75\]{--tw-leading:1.75;line-height:1.75}.leading-\[1\.85\]{--tw-leading:1.85;line-height:1.85}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-\.03em\]{--tw-tracking:-.03em;letter-spacing:-.03em}.tracking-\[\.01em\]{--tw-tracking:.01em;letter-spacing:.01em}.tracking-\[\.02em\]{--tw-tracking:.02em;letter-spacing:.02em}.tracking-\[\.2em\]{--tw-tracking:.2em;letter-spacing:.2em}.tracking-\[\.04em\]{--tw-tracking:.04em;letter-spacing:.04em}.tracking-\[\.06em\]{--tw-tracking:.06em;letter-spacing:.06em}.tracking-\[\.12em\]{--tw-tracking:.12em;letter-spacing:.12em}.tracking-\[\.18em\]{--tw-tracking:.18em;letter-spacing:.18em}.tracking-\[0\.1em\]{--tw-tracking:.1em;letter-spacing:.1em}.tracking-\[3px\]{--tw-tracking:3px;letter-spacing:3px}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.\!text-amber-600{color:var(--color-amber-600)!important}.\!text-rose-600{color:var(--color-rose-600)!important}.text-\[\#0F172A\]{color:#0f172a}.text-\[\#1D4ED8\]{color:#1d4ed8}.text-\[\#1E293B\]{color:#1e293b}.text-\[\#6D28D9\]{color:#6d28d9}.text-\[\#7C3AED\]{color:#7c3aed}.text-\[\#10B981\]{color:#10b981}.text-\[\#94A3B8\]{color:#94a3b8}.text-\[\#2563EB\]{color:#2563eb}.text-\[\#047857\]{color:#047857}.text-\[\#059669\]{color:#059669}.text-\[\#64748B\]{color:#64748b}.text-\[\#475569\]{color:#475569}.text-\[\#B91C1C\]{color:#b91c1c}.text-\[\#B45309\]{color:#b45309}.text-\[\#CBD5E1\]{color:#cbd5e1}.text-\[\#D1E2F7\]{color:#d1e2f7}.text-\[\#DC2626\]{color:#dc2626}.text-\[\#EF4444\]{color:#ef4444}.text-\[var\(--color-acc\)\]{color:var(--color-acc)}.text-\[var\(--color-accent\)\]{color:var(--color-accent)}.text-\[var\(--color-brand\)\]{color:var(--color-brand)}.text-\[var\(--color-danger\)\]{color:var(--color-danger)}.text-\[var\(--color-line-3\)\]{color:var(--color-line-3)}.text-\[var\(--color-tx-1\)\]{color:var(--color-tx-1)}.text-\[var\(--color-tx-2\)\]{color:var(--color-tx-2)}.text-\[var\(--color-tx-3\)\]{color:var(--color-tx-3)}.text-\[var\(--color-tx-4\)\]{color:var(--color-tx-4)}.text-\[var\(--color-tx-5\)\]{color:var(--color-tx-5)}.text-\[var\(--color-warn\)\]{color:var(--color-warn)}.text-\[var\(--ink\)\]{color:var(--ink)}.text-\[var\(--tx-2\)\]{color:var(--tx-2)}.text-\[var\(--tx-3\)\]{color:var(--tx-3)}.text-\[var\(--tx-4\)\]{color:var(--tx-4)}.text-amber-600{color:var(--color-amber-600)}.text-amber-700{color:var(--color-amber-700)}.text-amber-800{color:var(--color-amber-800)}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-blue-800{color:var(--color-blue-800)}.text-emerald-500{color:var(--color-emerald-500)}.text-emerald-600{color:var(--color-emerald-600)}.text-emerald-700{color:var(--color-emerald-700)}.text-emerald-800{color:var(--color-emerald-800)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-red-700{color:var(--color-red-700)}.text-rose-600{color:var(--color-rose-600)}.text-slate-300{color:var(--color-slate-300)}.text-slate-400{color:var(--color-slate-400)}.text-slate-500{color:var(--color-slate-500)}.text-slate-600{color:var(--color-slate-600)}.text-slate-700{color:var(--color-slate-700)}.text-slate-800{color:var(--color-slate-800)}.text-slate-900{color:var(--color-slate-900)}.text-slate-950{color:var(--color-slate-950)}.text-transparent{color:#0000}.text-violet-700{color:var(--color-violet-700)}.text-white{color:var(--color-white)}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-90{opacity:.9}.opacity-95{opacity:.95}.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-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0_0_3px_rgba\(16\,185\,129\,\.08\)\]{--tw-shadow:0 0 0 3px var(--tw-shadow-color,#10b98114);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_8px_28px_rgba\(37\,99\,235\,\.08\)\]{--tw-shadow:0 8px 28px var(--tw-shadow-color,#2563eb14);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_18px_45px_-18px_rgba\(37\,99\,235\,\.38\)\]{--tw-shadow:0 18px 45px -18px var(--tw-shadow-color,#2563eb61);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 6px 20px -4px var(--tw-shadow-color,#0f172a14), 0 3px 8px -3px var(--tw-shadow-color,#0f172a0d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 2px 6px var(--tw-shadow-color,#0f172a0d), 0 1px 2px var(--tw-shadow-color,#0f172a0a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px 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)}.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}.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-\[width\]{transition-property:width;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-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\[scrollbar-width\:thin\]{scrollbar-width:thin}@media(hover:hover){.group-hover\:translate-x-0\.5:is(:where(.group):hover *){--tw-translate-x:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\:scale-\[1\.03\]:is(:where(.group):hover *){scale:1.03}.group-hover\:text-\[var\(--color-brand\)\]:is(:where(.group):hover *){color:var(--color-brand)}.group-hover\:underline:is(:where(.group):hover *){text-decoration-line:underline}.group-hover\:opacity-20:is(:where(.group):hover *){opacity:.2}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}.placeholder\:text-\[var\(--color-tx-4\)\]::placeholder{color:var(--color-tx-4)}.first\:pl-0:first-child{padding-left:calc(var(--spacing) * 0)}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media(hover:hover){.hover\:-translate-y-1:hover{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:border-\[rgba\(37\,99\,235\,\.35\)\]:hover{border-color:#2563eb59}.hover\:border-\[var\(--color-brand\)\]:hover{border-color:var(--color-brand)}.hover\:border-\[var\(--color-line-3\)\]:hover{border-color:var(--color-line-3)}.hover\:border-blue-200:hover{border-color:var(--color-blue-200)}.hover\:border-blue-300:hover{border-color:var(--color-blue-300)}.hover\:border-blue-400:hover{border-color:var(--color-blue-400)}.hover\:border-blue-500:hover{border-color:var(--color-blue-500)}.hover\:border-emerald-300:hover{border-color:var(--color-emerald-300)}.hover\:bg-\[rgba\(15\,23\,42\,\.05\)\]:hover{background-color:#0f172a0d}.hover\:bg-\[rgba\(37\,99\,235\,\.06\)\]:hover{background-color:#2563eb0f}.hover\:bg-\[rgba\(239\,68\,68\,\.06\)\]:hover{background-color:#ef44440f}.hover\:bg-\[var\(--color-bg-1\)\]:hover{background-color:var(--color-bg-1)}.hover\:bg-\[var\(--color-bg-2\)\]:hover{background-color:var(--color-bg-2)}.hover\:bg-\[var\(--color-bg-3\)\]:hover{background-color:var(--color-bg-3)}.hover\:bg-blue-50:hover{background-color:var(--color-blue-50)}.hover\:bg-blue-600:hover{background-color:var(--color-blue-600)}.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}.hover\:bg-emerald-600:hover{background-color:var(--color-emerald-600)}.hover\:bg-red-50:hover{background-color:var(--color-red-50)}.hover\:bg-slate-50:hover{background-color:var(--color-slate-50)}.hover\:bg-slate-50\/70:hover{background-color:#f8fafcb3}@supports (color:color-mix(in lab,red,red)){.hover\:bg-slate-50\/70:hover{background-color:color-mix(in oklab,var(--color-slate-50) 70%,transparent)}}.hover\:bg-slate-100:hover{background-color:var(--color-slate-100)}.hover\:bg-slate-800:hover{background-color:var(--color-slate-800)}.hover\:text-\[\#B91C1C\]:hover{color:#b91c1c}.hover\:text-\[var\(--color-brand\)\]:hover{color:var(--color-brand)}.hover\:text-\[var\(--color-tx-1\)\]:hover{color:var(--color-tx-1)}.hover\:text-\[var\(--color-tx-2\)\]:hover{color:var(--color-tx-2)}.hover\:text-blue-600:hover{color:var(--color-blue-600)}.hover\:text-red-600:hover{color:var(--color-red-600)}.hover\:text-slate-700:hover{color:var(--color-slate-700)}.hover\:text-white:hover{color:var(--color-white)}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-\[0_12px_30px_rgba\(15\,23\,42\,\.08\)\]:hover{--tw-shadow:0 12px 30px var(--tw-shadow-color,#0f172a14);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow:0 6px 20px -4px var(--tw-shadow-color,#0f172a14), 0 3px 8px -3px var(--tw-shadow-color,#0f172a0d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-sm:hover{--tw-shadow:0 2px 6px var(--tw-shadow-color,#0f172a0d), 0 1px 2px var(--tw-shadow-color,#0f172a0a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.focus\:border-\[var\(--color-brand\)\]:focus{border-color:var(--color-brand)}.focus\:border-blue-500:focus{border-color:var(--color-blue-500)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + 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)}.focus\:ring-blue-100:focus{--tw-ring-color:var(--color-blue-100)}.focus\:ring-blue-500:focus{--tw-ring-color:var(--color-blue-500)}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}@media(min-width:40rem){.sm\:inline{display:inline}.sm\:inline-flex{display:inline-flex}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}}@media(min-width:48rem){.md\:order-1{order:1}.md\:order-2{order:2}.md\:col-span-2{grid-column:span 2/span 2}.md\:ml-auto{margin-left:auto}.md\:block{display:block}.md\:flex{display:flex}.md\:grid{display:grid}.md\:hidden{display:none}.md\:h-16{height:calc(var(--spacing) * 16)}.md\:w-16{width:calc(var(--spacing) * 16)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:grid-cols-\[1fr_180px_180px_auto\]{grid-template-columns:1fr 180px 180px auto}.md\:grid-cols-\[160px_1fr\]{grid-template-columns:160px 1fr}.md\:grid-cols-\[minmax\(0\,1fr\)_260px\]{grid-template-columns:minmax(0,1fr) 260px}.md\:grid-cols-\[minmax\(0\,1fr\)_minmax\(0\,1fr\)_auto\]{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:items-start{align-items:flex-start}.md\:gap-5{gap:calc(var(--spacing) * 5)}.md\:gap-8{gap:calc(var(--spacing) * 8)}.md\:p-5{padding:calc(var(--spacing) * 5)}.md\:p-6{padding:calc(var(--spacing) * 6)}.md\:p-8{padding:calc(var(--spacing) * 8)}.md\:p-9{padding:calc(var(--spacing) * 9)}.md\:p-10{padding:calc(var(--spacing) * 10)}.md\:p-14{padding:calc(var(--spacing) * 14)}.md\:px-6{padding-inline:calc(var(--spacing) * 6)}.md\:py-10{padding-block:calc(var(--spacing) * 10)}.md\:py-12{padding-block:calc(var(--spacing) * 12)}.md\:py-14{padding-block:calc(var(--spacing) * 14)}.md\:py-16{padding-block:calc(var(--spacing) * 16)}.md\:py-18{padding-block:calc(var(--spacing) * 18)}.md\:pt-28{padding-top:calc(var(--spacing) * 28)}.md\:pr-36{padding-right:calc(var(--spacing) * 36)}.md\:pb-32{padding-bottom:calc(var(--spacing) * 32)}.md\:text-right{text-align:right}.md\:text-\[15px\]{font-size:15px}.md\:text-\[17px\]{font-size:17px}.md\:text-\[30px\]{font-size:30px}.md\:text-\[34px\]{font-size:34px}.md\:text-\[36px\]{font-size:36px}.md\:text-\[38px\]{font-size:38px}.md\:text-\[40px\]{font-size:40px}.md\:text-\[42px\]{font-size:42px}.md\:text-\[44px\]{font-size:44px}.md\:text-\[64px\]{font-size:64px}.md\:whitespace-nowrap{white-space:nowrap}}@media(min-width:64rem){.lg\:sticky{position:sticky}.lg\:top-\[76px\]{top:76px}.lg\:top-\[84px\]{top:84px}.lg\:top-\[88px\]{top:88px}.lg\:top-\[96px\]{top:96px}.lg\:flex{display:flex}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-\[1\.2fr_\.8fr\]{grid-template-columns:1.2fr .8fr}.lg\:grid-cols-\[1\.05fr_\.95fr\]{grid-template-columns:1.05fr .95fr}.lg\:grid-cols-\[1fr_320px\]{grid-template-columns:1fr 320px}.lg\:grid-cols-\[1fr_340px\]{grid-template-columns:1fr 340px}.lg\:grid-cols-\[7fr_3fr\]{grid-template-columns:7fr 3fr}.lg\:grid-cols-\[320px_1fr\]{grid-template-columns:320px 1fr}.lg\:grid-cols-\[minmax\(0\,1fr\)_320px\]{grid-template-columns:minmax(0,1fr) 320px}.lg\:grid-cols-\[minmax\(0\,1fr\)_360px\]{grid-template-columns:minmax(0,1fr) 360px}.lg\:grid-cols-\[minmax\(0\,1fr\)_380px\]{grid-template-columns:minmax(0,1fr) 380px}.lg\:flex-row{flex-direction:row}.lg\:items-end{align-items:flex-end}.lg\:gap-8{gap:calc(var(--spacing) * 8)}.lg\:self-auto{align-self:auto}.lg\:self-start{align-self:flex-start}.lg\:px-8{padding-inline:calc(var(--spacing) * 8)}}@media(min-width:80rem){.xl\:col-span-2{grid-column:span 2/span 2}.xl\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.xl\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.xl\:gap-5{gap:calc(var(--spacing) * 5)}}@media(min-width:96rem){.\32xl\:block{display:block}}}.article-editor-format{border:1px solid var(--color-line-1);background:var(--color-bg-2);border-radius:12px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px;padding:14px 16px;display:flex}.article-editor-format__title{color:var(--color-tx-1);font-size:13.5px;font-weight:650}.article-editor-format__desc{color:var(--color-tx-4);margin-top:3px;font-size:11.5px}.article-editor-format__switch{border:1px solid var(--color-line-1);background:#fff;border-radius:10px;flex-shrink:0;gap:4px;padding:4px;display:inline-flex}.article-editor-format__switch button{height:32px;color:var(--color-tx-3);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:0 13px;font-size:12.5px}.article-editor-format__switch button span{color:#2563eb;margin-left:4px;font-size:9px}.article-editor-format__switch button.is-active{color:#1d4ed8;background:#eff6ff;font-weight:600;box-shadow:inset 0 0 0 1px #bfdbfe}.article-markdown-host{min-width:0}.md-editor-shell{border:1px solid var(--color-line-1);background:#fff;border-radius:14px;overflow:hidden}.md-editor-toolbar{border-bottom:1px solid var(--color-line-1);background:#f8fafc;justify-content:space-between;align-items:center;gap:12px;min-height:54px;padding:9px 12px;display:flex}.md-editor-toolbar__group{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.md-editor-toolbar__right{justify-content:flex-end}.md-editor-toolbar button,.md-editor-toolbar select{color:#334155;background:#fff;border:1px solid #dbe3ee;border-radius:7px;height:32px;font-size:12px}.md-editor-toolbar button{cursor:pointer;min-width:32px;padding:0 9px}.md-editor-toolbar button:hover{color:#2563eb;background:#eff6ff;border-color:#93c5fd}.md-editor-toolbar label{color:#64748b;align-items:center;gap:6px;font-size:11px;display:inline-flex}.md-editor-toolbar select{padding:0 26px 0 9px}.md-editor-status{border-bottom:1px solid var(--color-line-1);color:#475569;background:#f8fafc;padding:8px 14px;font-size:12px}.md-editor-status[data-type=success]{color:#047857;background:#ecfdf5}.md-editor-status[data-type=warning]{color:#b45309;background:#fffbeb}.md-editor-status[data-type=error]{color:#b91c1c;background:#fef2f2}.md-editor-workspace{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:620px;display:grid}.md-editor-pane{background:#fff;min-width:0}.md-editor-pane+.md-editor-pane{border-left:1px solid var(--color-line-1)}.md-editor-pane>header{border-bottom:1px solid var(--color-line-1);color:#334155;background:#fbfdff;justify-content:space-between;align-items:center;height:40px;padding:0 14px;font-size:12px;font-weight:600;display:flex}.md-editor-pane>header small{color:#94a3b8;font-size:10.5px;font-weight:400}.md-editor-source .cm-editor{color:#1e293b;background:#fff;height:580px;font-size:13.5px}.md-editor-source .cm-scroller{font-family:JetBrains Mono,SFMono-Regular,Consolas,monospace;line-height:1.75;overflow:auto}.md-editor-source .cm-content{padding:18px}.md-editor-source .cm-gutters{color:#94a3b8;background:#f8fafc;border-right:1px solid #eef2f7}.md-editor-preview{background:#f3f5f8;height:580px;padding:22px;overflow:auto}.markdown-body{color:#334155;overflow-wrap:anywhere;background:#fff;border:1px solid #94a3b82e;border-radius:10px;width:min(100%,820px);min-height:100%;margin:0 auto;padding:34px 38px;font-size:15px;line-height:1.85;box-shadow:0 8px 30px #0f172a0d}.markdown-body>:first-child{margin-top:0}.markdown-body>:last-child{margin-bottom:0}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4{color:#0f172a;font-weight:700;line-height:1.35}.markdown-body h1{border-bottom:1px solid #e2e8f0;margin:0 0 28px;padding-bottom:14px;font-size:30px}.markdown-body h2{margin:36px 0 16px;font-size:23px}.markdown-body h3{margin:28px 0 13px;font-size:18px}.markdown-body p{margin:15px 0}.markdown-body ul,.markdown-body ol{margin:14px 0;padding-left:25px;list-style-position:outside}.markdown-body ul{list-style-type:disc}.markdown-body ol{list-style-type:decimal}.markdown-body ol ol{list-style-type:lower-alpha}.markdown-body ol ol ol{list-style-type:lower-roman}.markdown-body li{margin:5px 0}.markdown-body blockquote{color:#475569;background:#f8fafc;border-left:4px solid #60a5fa;margin:20px 0;padding:13px 18px}.markdown-body img{border-radius:9px;max-width:100%;height:auto;margin:22px auto;display:block}.markdown-body table{border-collapse:collapse;width:100%;margin:22px 0;font-size:13.5px}.markdown-body th,.markdown-body td{text-align:left;border:1px solid #dbe3ee;padding:10px 12px}.markdown-body th{color:#1e293b;background:#f8fafc;font-weight:650}.markdown-body a{color:#2563eb;text-decoration:none}.markdown-body a:hover{text-decoration:underline}.markdown-body code:not(.hljs){color:#be123c;background:#f1f5f9;border-radius:5px;padding:2px 6px;font-size:.88em}.md-code-block{background:#f8fafc;border:1px solid #dbe3ee;border-radius:10px;margin:22px 0;overflow:hidden}.md-code-head{color:#64748b;background:#f1f5f9;border-bottom:1px solid #dbe3ee;justify-content:space-between;align-items:center;height:34px;padding:0 12px;font-size:10.5px;display:flex}.md-code-dots{gap:5px;display:inline-flex}.md-code-dots i{background:#f87171;border-radius:50%;width:8px;height:8px}.md-code-dots i:nth-child(2){background:#fbbf24}.md-code-dots i:nth-child(3){background:#34d399}.md-code-block pre{margin:0;padding:18px;overflow:auto}.md-code-block code{font-family:JetBrains Mono,SFMono-Regular,Consolas,monospace;font-size:12.5px;line-height:1.7}.markdown-theme-technical{font-size:14px;line-height:1.75}.markdown-theme-technical h2{border-bottom:1px solid #e2e8f0;padding-bottom:8px}.markdown-theme-security{background-image:linear-gradient(#2563eb09 1px,#0000 1px),linear-gradient(90deg,#2563eb09 1px,#0000 1px);background-size:24px 24px}.markdown-theme-security h2{background:#8b5cf60f;border-left:4px solid #8b5cf6;padding:8px 12px}.markdown-theme-dark-terminal{color:#cbd5e1;background:#0f172a;border-color:#273449}.markdown-theme-dark-terminal h1,.markdown-theme-dark-terminal h2,.markdown-theme-dark-terminal h3,.markdown-theme-dark-terminal h4{color:#f8fafc}.markdown-theme-dark-terminal h1{border-color:#334155}.markdown-theme-dark-terminal blockquote{color:#cbd5e1;background:#111c2f;border-color:#22c55e}.markdown-theme-dark-terminal code:not(.hljs){color:#86efac;background:#1e293b}.markdown-theme-dark-terminal th,.markdown-theme-dark-terminal td{border-color:#334155}.markdown-theme-dark-terminal th{color:#f8fafc;background:#1e293b}.markdown-code-one-dark .md-code-block,.markdown-code-one-dark .md-code-block pre{color:#abb2bf;background:#282c34;border-color:#303746}.markdown-code-one-dark .md-code-head{color:#abb2bf;background:#21252b;border-color:#3b4252}@media(max-width:1100px){.md-editor-workspace{grid-template-columns:1fr}.md-editor-pane+.md-editor-pane{border-top:1px solid var(--color-line-1);border-left:0}.md-editor-source .cm-editor,.md-editor-preview{height:480px}}@media(max-width:720px){.article-editor-format,.md-editor-toolbar{flex-direction:column;align-items:stretch}.article-editor-format__switch{width:100%}.article-editor-format__switch button{flex:1}.md-editor-toolbar__right{justify-content:flex-start}.markdown-body{padding:24px 20px}}body:has(.article-editor-shell) .admin-page{width:100%;max-width:none;padding-left:clamp(20px,2.2vw,40px);padding-right:clamp(20px,2.2vw,40px)}.article-editor-shell{width:100%;max-width:1840px;margin:0 auto}.article-editor-topbar{z-index:25;background:linear-gradient(to bottom,var(--color-bg-1) 78%,transparent);justify-content:space-between;align-items:center;gap:16px;min-height:58px;margin:-8px 0 18px;padding:8px 4px;display:flex;position:sticky;top:0}.article-editor-layout{grid-template-columns:minmax(720px,1fr) minmax(260px,300px);align-items:start;gap:clamp(18px,1.7vw,28px);display:grid}.article-editor-main{min-width:0;padding:clamp(20px,2vw,30px)}.article-editor-sidebar{min-width:0;position:sticky;top:76px}.article-editor-main .article-title-input{min-height:48px;font-size:clamp(25px,2vw,34px);line-height:1.3}.article-editor-main .article-summary-input{min-height:56px}.article-markdown-host .md-editor-workspace{min-height:clamp(560px,100vh - 330px,820px)}.article-markdown-host .md-editor-source .cm-editor,.article-markdown-host .md-editor-preview{height:clamp(520px,100vh - 370px,780px)}.article-markdown-host .markdown-body{width:min(100%,900px);padding:clamp(26px,2.5vw,44px)}@media(min-width:1280px){.article-markdown-host .md-editor-workspace{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@media(max-width:1180px){.article-editor-layout{grid-template-columns:minmax(0,1fr)}.article-editor-sidebar{grid-template-columns:repeat(2,minmax(0,1fr));display:grid;position:static}}@media(max-width:920px){body:has(.article-editor-shell) .admin-page{padding-left:16px;padding-right:16px}.article-markdown-host .md-editor-workspace,.article-editor-sidebar{grid-template-columns:1fr}.article-editor-topbar{position:static}}@media(max-width:640px){.article-editor-main{padding:16px}.article-editor-topbar{flex-direction:column;align-items:stretch}.article-editor-topbar>div:last-child{grid-template-columns:1fr 1fr;display:grid}.article-markdown-host .md-editor-source .cm-editor,.article-markdown-host .md-editor-preview{height:440px}}:root{color-scheme:light;--color-promo:#f97316;--color-promo-bg:#f9731614;--color-promo-bg-soft:#f973160f;--color-promo-bg-faint:#f9731605;--color-promo-border:#f973163d;--color-promo-ring:#f9731629}*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body{font-family:var(--font-family-sans);background:var(--color-bg-1);color:var(--color-tx-1);font-feature-settings:"ss01","cv11","tnum";letter-spacing:-.005em}body{min-height:100vh}a{color:inherit}img{display:block}body{background:radial-gradient(1100px 600px at 88% -12%,#2563eb14,transparent 60%),radial-gradient(800px 480px at -4% 12%,#10b9810d,transparent 60%),var(--color-bg-1)}.container-x{max-width:80rem;margin-left:auto;margin-right:auto;padding-left:1.25rem;padding-right:1.25rem}@media(min-width:640px){.container-x{padding-left:1.5rem;padding-right:1.5rem}}@media(min-width:1024px){.container-x{padding-left:2rem;padding-right:2rem}}.btn{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;letter-spacing:-.005em;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:.5rem;height:2.375rem;padding:0 1.05rem;font-size:.875rem;font-weight:500;transition:background-color .15s,color .15s,border-color .15s,box-shadow .2s,transform .1s;display:inline-flex}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-lg{border-radius:12px;height:2.875rem;padding:0 1.5rem;font-size:.9375rem}.btn-sm{border-radius:8px;height:2rem;padding:0 .85rem;font-size:.8125rem}.btn-primary{color:#fff;background:var(--color-tx-1);border:1px solid var(--color-tx-1);box-shadow:var(--shadow-sm)}.btn-primary:hover{box-shadow:var(--shadow-md);background:#000}.btn-brand{color:#fff;background:linear-gradient(#3b82f6,#2563eb);border:1px solid #2563ebd9;box-shadow:inset 0 1px #ffffff4d,0 6px 16px -6px #2563eb8c,0 2px 4px -2px #2563eb40}.btn-brand:hover{background:linear-gradient(#4f92fa,#2f72f3);box-shadow:inset 0 1px #ffffff4d,0 10px 22px -6px #2563eb99,0 4px 8px -4px #2563eb4d}.btn-accent{color:#fff;background:linear-gradient(#34d399,#10b981);border:1px solid #10b981d9;box-shadow:inset 0 1px #ffffff4d,0 6px 16px -6px #10b98180}.btn-accent:hover{filter:brightness(1.05)}.btn-outline{color:var(--color-tx-1);border:1px solid var(--color-line-2);box-shadow:var(--shadow-xs);background:#fff}.btn-outline:hover{background:var(--color-bg-3);border-color:var(--color-line-3);box-shadow:var(--shadow-sm)}.btn-ghost{color:var(--color-tx-2);background:0 0}.btn-ghost:hover{background:var(--color-bg-3);color:var(--color-tx-1)}.btn-danger{color:#fff;background:#ef4444;border:1px solid #dc2626;box-shadow:0 6px 16px -6px #ef444466}.btn-danger:hover{background:#dc2626}.card{background:var(--color-bg-2);border:1px solid var(--color-line-1);border-radius:14px;transition:border-color .2s,box-shadow .25s,transform .25s;position:relative;overflow:hidden;box-shadow:0 1px 2px #0f172a08,0 10px 30px #0f172a0d}.card:has(.status-pop),.card:has([data-popover-anchor]),.card.allow-overflow{overflow:visible}.card-hover:hover{border-color:var(--color-line-2);transform:translateY(-2px);box-shadow:0 1px 2px #0f172a0a,0 20px 48px -12px #0f172a24}.card-ring{position:relative}.card-ring:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(140deg,#2563eb40,#3b82f61f 35%,#fff0 60%,#10b9812e);padding:1px;position:absolute;top:0;right:0;bottom:0;left: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}.card-inset:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#0f172a0f,#0000);height:1px;position:absolute;top:0;left:0;right:0}.tag{letter-spacing:.005em;background:var(--color-bg-3);height:1.5rem;color:var(--color-tx-2);border:1px solid var(--color-line-1);border-radius:6px;align-items:center;gap:.3rem;padding:0 .55rem;font-size:.75rem;font-weight:500;display:inline-flex}.tag-brand{color:#1d4ed8;background:#2563eb14;border-color:#2563eb38}.tag-cyan{color:#0e7490;background:#06b6d414;border-color:#06b6d440}.tag-accent{color:#047857;background:#10b9811a;border-color:#10b98140}.tag-amber{color:#b45309;background:#f59e0b1a;border-color:#f59e0b47}.tag-rose{color:#b91c1c;background:#ef444414;border-color:#ef444440}.tag-outline{background:0 0}.dot{border-radius:99px;width:.375rem;height:.375rem;display:inline-block}.dot-live{background:var(--color-accent);animation:2s infinite pulse;box-shadow:0 0 0 3px #10b98133}@keyframes pulse{50%{opacity:.5}}.input,.select,.textarea{width:100%;height:2.625rem;color:var(--color-tx-1);background:var(--color-bg-0);border:1px solid var(--color-line-2);box-shadow:var(--shadow-xs);border-radius:10px;padding:0 .95rem;font-size:.9375rem;transition:border-color .15s,box-shadow .15s,background-color .15s}.textarea{height:auto;min-height:7rem;padding:.7rem .95rem;line-height:1.6}.input::placeholder,.textarea::placeholder{color:var(--color-tx-4)}.input:focus,.select:focus,.textarea:focus{border-color:var(--color-brand);box-shadow:var(--ring-brand);background:#fff;outline:none}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%238B94A5'><path d='M5.23 7.21a.75.75 0 011.06.02L10 10.94l3.71-3.71a.75.75 0 111.06 1.06l-4.24 4.24a.75.75 0 01-1.06 0L5.21 8.29a.75.75 0 01.02-1.08z'/></svg>");background-position:right .7rem center;background-repeat:no-repeat;background-size:1.1rem;padding-right:2.2rem}.label{color:var(--color-tx-2);margin-bottom:.5rem;font-size:.8125rem;font-weight:500;display:block}.h-eyebrow{letter-spacing:.04em;text-transform:uppercase;color:var(--color-brand);align-items:center;gap:.5rem;font-size:.75rem;font-weight:600;display:inline-flex}.h-eyebrow:before{content:"";background:currentColor;border-radius:2px;width:1.25rem;height:2px}.h-title{letter-spacing:-.02em;color:var(--color-tx-1);font-size:1.875rem;font-weight:600}.h-sub{color:var(--color-tx-3);font-size:.9375rem}.divider{background:var(--color-line-1);height:1px}.bg-dotted{background-image:radial-gradient(#2563eb26 1px,#0000 1px);background-size:22px 22px}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.prose-body{color:var(--color-tx-2);font-size:1rem;line-height:1.8}.prose-body h1{color:var(--color-tx-1);letter-spacing:-.02em;margin:2rem 0 .85rem;font-size:1.875rem;font-weight:600}.prose-body h2{color:var(--color-tx-1);letter-spacing:-.015em;margin:1.75rem 0 .7rem;font-size:1.5rem;font-weight:600}.prose-body h3{color:var(--color-tx-1);margin:1.35rem 0 .6rem;font-size:1.25rem;font-weight:600}.prose-body p{margin:.75rem 0}.prose-body ul{margin:.6rem 0;padding-left:1.5rem;list-style:outside}.prose-body ol{margin:.6rem 0;padding-left:1.5rem;list-style:decimal}.prose-body code{color:#1d4ed8;font-size:.86em;font-family:var(--font-family-mono);background:#2563eb14;border:1px solid #2563eb29;border-radius:6px;padding:.15rem .4rem}.prose-body pre{color:#e5e7eb;font-size:.8125rem;font-family:var(--font-family-mono);box-shadow:var(--shadow-md);background:#0f172a;border-radius:12px;margin:1.1rem 0;padding:1.1rem 1.35rem;line-height:1.75;overflow-x:auto}.prose-body pre code{color:inherit;background:0 0;border:none;padding:0}.prose-body blockquote{border-left:3px solid var(--color-brand);color:var(--color-tx-3);background:#2563eb0a;border-radius:0 8px 8px 0;margin:1rem 0;padding:.4rem 1rem}.prose-body a{color:var(--color-brand);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.prose-body a:hover{color:#1d4ed8}.modal-mask{z-index:50;-webkit-backdrop-filter:blur(10px)saturate(140%);backdrop-filter:blur(10px)saturate(140%);background:#0f172a66;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.modal-panel{background:var(--color-bg-0);border:1px solid var(--color-line-1);width:100%;max-width:32rem;box-shadow:var(--shadow-lg);border-radius:16px;overflow:hidden}.modal-head{border-bottom:1px solid var(--color-line-1);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem 1.5rem;display:flex}.modal-head>.btn:last-child{flex:none;margin-left:auto}.modal-body{padding:1.5rem}.modal-foot{border-top:1px solid var(--color-line-1);background:var(--color-bg-3);justify-content:flex-end;gap:.625rem;padding:1rem 1.5rem;display:flex}.drawer-mask{z-index:60;-webkit-backdrop-filter:blur(8px)saturate(140%);backdrop-filter:blur(8px)saturate(140%);background:#0f172a59;justify-content:flex-end;align-items:stretch;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.drawer-panel{background:var(--color-bg-0);border-left:1px solid var(--color-line-1);flex-direction:column;width:100%;max-width:960px;animation:.22s ease-out drawerSlideIn;display:flex;box-shadow:-24px 0 48px #0f172a14}@keyframes drawerSlideIn{0%{opacity:.7;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.drawer-head{border-bottom:1px solid var(--color-line-1);background:var(--color-bg-0);flex:none;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 1.5rem;display:flex}.drawer-body{flex:auto;padding:1.25rem 1.5rem;overflow-y:auto}.drawer-foot{border-top:1px solid var(--color-line-1);background:var(--color-bg-3);flex:none;justify-content:flex-end;gap:.625rem;padding:.875rem 1.5rem;display:flex}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#d5dae1 padding-box content-box;border:2px solid #0000;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#b8bfc9 padding-box content-box;border:2px solid #0000}.mono{font-family:var(--font-family-mono)}.chart-grid line{stroke:#0f172a0f}.chart-axis{stroke:#0f172a1f}.chart-anim path,.chart-anim circle{transition:d .45s cubic-bezier(.4,0,.2,1),cx .45s cubic-bezier(.4,0,.2,1),cy .45s cubic-bezier(.4,0,.2,1)}.seg-ctrl{background:var(--color-bg-3);border:1px solid var(--color-line-1);isolation:isolate;border-radius:999px;grid-auto-columns:1fr;grid-auto-flow:column;padding:4px;display:grid;position:relative}.seg-thumb{width:calc((100% - 8px) / var(--seg-count,2));z-index:0;transform:translate(calc(100% * var(--seg-index,0)));background:#fff;border-radius:999px;transition:transform .35s cubic-bezier(.4,0,.2,1);position:absolute;top:4px;bottom:4px;left:4px;box-shadow:0 1px 3px #0f172a14,0 1px 1px #0f172a0a}.seg-ctrl>button{z-index:1;color:var(--color-tx-3);cursor:pointer;white-space:nowrap;letter-spacing:-.005em;background:0 0;border:none;border-radius:999px;padding:8px 18px;font-size:13px;font-weight:500;line-height:1;transition:color .25s;position:relative}.seg-ctrl>button:hover{color:var(--color-tx-1)}.seg-ctrl>button.is-active{font-weight:600}.card-dashboard{box-shadow:0 1px 2px #0f172a08,0 20px 40px #0f172a0a}.skill-icon{color:#fff;border-radius:12px;flex-shrink:0;place-items:center;width:48px;height:48px;display:grid;position:relative;overflow:hidden;box-shadow:0 6px 16px -6px #0f172a33,inset 0 1px #fff3}.skill-icon:after{content:"";pointer-events:none;background:radial-gradient(80% 60% at 30% 20%,#ffffff59,#0000 60%);position:absolute;top:0;right:0;bottom:0;left:0}.skill-icon svg{z-index:1;width:22px;height:22px;position:relative}.skill-icon.sk-web{background:linear-gradient(135deg,#3b82f6,#2563eb)}.skill-icon.sk-intra{background:linear-gradient(135deg,#8b5cf6,#6d28d9)}.skill-icon.sk-audit{background:linear-gradient(135deg,#f59e0b,#d97706)}.skill-icon.sk-mobile{background:linear-gradient(135deg,#ec4899,#be185d)}.skill-icon.sk-cloud{background:linear-gradient(135deg,#06b6d4,#0891b2)}.skill-icon.sk-pentest{background:linear-gradient(135deg,#10b981,#047857)}.skill-icon.sk-ir{background:linear-gradient(135deg,#ef4444,#b91c1c)}.skill-icon.sk-default{background:linear-gradient(135deg,#64748b,#334155)}.path-thumb{background:#f1f5f9;border:1px solid #0f172a14;border-radius:12px;flex-shrink:0;width:84px;height:84px;position:relative;overflow:hidden;box-shadow:0 1px #0f172a0a}.path-thumb img{object-fit:cover;width:100%;height:100%;transition:transform .35s cubic-bezier(.4,0,.2,1);display:block}.path-thumb-fallback{color:#fff;place-items:center;width:100%;height:100%;display:grid}.path-thumb-fallback svg{width:30px;height:30px}.path-thumb.sk-web .path-thumb-fallback{background:linear-gradient(135deg,#3b82f6,#2563eb)}.path-thumb.sk-intra .path-thumb-fallback{background:linear-gradient(135deg,#8b5cf6,#6d28d9)}.path-thumb.sk-audit .path-thumb-fallback{background:linear-gradient(135deg,#f59e0b,#d97706)}.path-thumb.sk-mobile .path-thumb-fallback{background:linear-gradient(135deg,#ec4899,#be185d)}.path-thumb.sk-cloud .path-thumb-fallback{background:linear-gradient(135deg,#06b6d4,#0891b2)}.path-thumb.sk-pentest .path-thumb-fallback{background:linear-gradient(135deg,#10b981,#047857)}.path-thumb.sk-ir .path-thumb-fallback{background:linear-gradient(135deg,#ef4444,#b91c1c)}.path-thumb.sk-default .path-thumb-fallback{background:linear-gradient(135deg,#64748b,#334155)}.path-card{border:1px solid var(--color-line-1);background:#fff;border-radius:14px;grid-template-columns:auto 1fr auto;align-items:center;gap:1.5rem;padding:1.5rem 1.75rem;transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s,border-color .25s;display:grid;position:relative;overflow:hidden;box-shadow:0 1px 2px #0f172a08}.path-card:before{content:"";background:linear-gradient(180deg,transparent,var(--color-brand),transparent);opacity:0;width:3px;transition:opacity .3s;position:absolute;top:0;bottom:0;left:0}.path-card:hover{border-color:#2563eb4d;transform:translateY(-4px);box-shadow:0 20px 40px -12px #2563eb2e,0 4px 10px #0f172a0d}.path-card:hover:before{opacity:1}.path-card.is-featured{background:linear-gradient(135deg,#fff,#2563eb08);border-color:#2563eb2e}.path-card.is-featured:before{opacity:.7}@media(max-width:768px){.path-card{grid-template-columns:auto 1fr;grid-template-areas:"icon title""body body""footer footer";gap:1rem}.path-card>.path-icon{grid-area:icon}.path-card>.path-main{grid-area:body}.path-card>.path-footer{grid-area:footer}}.lab-compact{border:1px solid var(--color-line-1);background:#fff;border-radius:12px;grid-template-columns:auto 1fr;gap:1rem;padding:1.25rem 1.5rem;transition:transform .22s,box-shadow .22s,border-color .22s;display:grid;box-shadow:0 1px 2px #0f172a08}.lab-compact:hover{border-color:#2563eb40;transform:translateY(-3px);box-shadow:0 14px 30px -10px #0f172a1a}.labs-layout{grid-template-columns:260px minmax(0,1fr);align-items:start;gap:28px;display:grid;position:relative}.labs-layout:before{content:"";pointer-events:none;z-index:0;opacity:.55;background-image:radial-gradient(circle at 1px 1px,#0f172a0b 1px,#0000 0);background-size:18px 18px;height:380px;position:absolute;inset:-32px -8px auto;-webkit-mask-image:linear-gradient(#000 0%,#0000 80%);mask-image:linear-gradient(#000,#0000 80%)}.labs-layout>*{z-index:1;position:relative}.lab-route-shell,.lab-module-shell{max-width:1180px;margin:0 auto;padding:32px 0 56px;position:relative}.lab-route-shell:before,.lab-module-shell:before{content:"";filter:blur(16px);opacity:.82;pointer-events:none;background:radial-gradient(at 12% 18%,#2563eb21,#0000 34%),radial-gradient(at 88% 20%,#2dd4bf1a,#0000 31%);border-radius:42px;position:absolute;top:-22px;right:-78px;bottom:-22px;left:-78px}.lab-route-hero,.lab-module-hero{color:#fff;background:linear-gradient(128deg,#193e82,#2454ad 54%,#2f68e9);border-radius:20px;justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:30px;padding:30px 34px;display:flex;position:relative;overflow:hidden;box-shadow:0 22px 50px -28px #2563eb94}.lab-route-hero:before,.lab-module-hero:before{content:"";pointer-events:none;background:radial-gradient(circle at 78% 25%,#ffffff29,#0000 24%),linear-gradient(115deg,#0000 54%,#ffffff0f 54%,#0000 75%);position:absolute;top:0;right:0;bottom:0;left:0}.lab-route-hero:after,.lab-module-hero:after{content:"实战训练";letter-spacing:-.08em;color:#ffffff13;font:700 62px/1 ui-sans-serif,system-ui,sans-serif;position:absolute;top:12px;right:24px}.lab-route-hero h1,.lab-module-hero h1{letter-spacing:-.04em;color:#fff;margin:8px 0 0;font-size:30px;position:relative}.lab-route-hero p,.lab-module-hero p{color:#eff6ffdb;margin:8px 0 0;font-size:14px;position:relative}.lab-route-hero .h-eyebrow,.lab-module-hero .h-eyebrow{color:#bfdbfe;position:relative}.lab-route-all{z-index:1;color:#fff;white-space:nowrap;background:#ffffff1a;border:1px solid #ffffff61;border-radius:9px;padding:10px 14px;font-size:13px;position:relative}.lab-route-all:hover{background:#ffffff30}.lab-route-all span{color:#dbeafe;margin-left:5px}.lab-route-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid;position:relative}.lab-route-card{text-align:left;background:#fff;border:1px solid #dbe4f0;border-radius:16px;transition:all .22s;overflow:hidden;box-shadow:0 12px 26px -24px #0f172a7a}.lab-route-card:hover{border-color:#2563eb;transform:translateY(-4px);box-shadow:0 20px 38px -24px #2563eb61}.lab-route-cover{background:linear-gradient(135deg,#eaf1ff,#f8fbff);place-items:center;height:142px;display:grid;overflow:hidden}.lab-route-cover img{object-fit:contain;width:100%;height:100%;padding:12px}.lab-route-cover span{color:#fff;background:#2563eb;border-radius:16px;place-items:center;width:52px;height:52px;font-size:25px;font-weight:700;display:grid}.lab-route-card-body{padding:18px 19px}.lab-route-card-kicker{letter-spacing:.12em;color:#2563eb;text-transform:uppercase;font:600 10px ui-monospace,monospace}.lab-route-card-kicker span{float:right;color:#64748b;letter-spacing:0}.lab-route-card h2{color:#0f172a;margin:9px 0 7px;font-size:18px;font-weight:700}.lab-route-card p{color:#64748b;min-height:42px;margin:0;font-size:13px;line-height:1.65}.lab-route-card-action{color:#2563eb;border-top:1px solid #eef2f7;margin-top:17px;padding-top:13px;font-size:13px;font-weight:600;display:block}.lab-route-card-action b{float:right;font-size:16px}.lab-module-back{color:#2563eb;background:0 0;border:0;margin-bottom:19px;font-size:13px;position:relative}.lab-module-hero{margin-bottom:24px;display:block}.lab-module-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid;position:relative}.lab-module-card{text-align:left;background:#fff;border:1px solid #dce5f1;border-radius:14px;min-height:196px;padding:22px;transition:all .2s;position:relative;overflow:hidden}.lab-module-card:hover{border-color:#2563eb;transform:translateY(-3px);box-shadow:0 18px 30px -22px #2563eb73}.lab-module-no{color:#2563eb;letter-spacing:.08em;font:600 12px ui-monospace,monospace}.lab-module-line{background:#93c5fd;width:34px;height:2px;margin:15px 0}.lab-module-card h2{color:#0f172a;margin:0;font-size:17px;font-weight:700}.lab-module-card p{color:#64748b;margin:9px 0;font-size:13px}.lab-module-card strong{color:#2563eb;border-top:1px dashed #dce5f1;padding-top:13px;font-size:13px;display:block;position:absolute;bottom:20px;left:22px;right:22px}.lab-module-card strong b{float:right;font-size:16px}@media(max-width:900px){.lab-route-grid,.lab-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.lab-route-shell,.lab-module-shell{padding-top:16px}.lab-route-hero{padding:24px;display:block}.lab-route-all{margin-top:18px}.lab-route-grid,.lab-module-grid{grid-template-columns:1fr}.lab-route-hero h1,.lab-module-hero h1{font-size:24px}}.lab-module-grid{gap:18px}.lab-module-card{background:linear-gradient(145deg,#fff,#f7faff);border-color:#2563eb2e;border-radius:17px;min-height:224px;padding:24px;box-shadow:0 12px 26px -24px #0f172a6b}.lab-module-card:before{content:"";background:radial-gradient(circle,#2563eb24,#2563eb00 68%);border-radius:50%;width:142px;height:142px;position:absolute;top:-64px;right:-58px}.lab-module-card:hover{background:#fff;transform:translateY(-4px);box-shadow:0 22px 36px -24px #2563eb70}.lab-module-no{letter-spacing:.1em;font-weight:700;position:relative}.lab-module-mark{color:#2563eb;letter-spacing:.1em;background:#ffffffa6;border:1px solid #2563eb2e;border-radius:7px;place-items:center;width:40px;height:27px;font:700 10px ui-monospace,monospace;display:grid;position:absolute;top:23px;right:23px}.lab-module-line{background:linear-gradient(90deg,#2563eb,#60a5fa);border-radius:4px;width:38px;height:3px;margin:18px 0;position:relative}.lab-module-card h2{max-width:82%;font-size:18px;line-height:1.42;position:relative}.lab-module-card p{margin:10px 0;position:relative}.lab-module-card strong{border-top-color:#d5e1f4;justify-content:space-between;align-items:center;padding-top:14px;font-size:14px;display:flex;bottom:21px;left:24px;right:24px}.lab-module-card strong b{float:none;color:#1d4ed8;font-size:12px;font-weight:600}.lab-chapter-shell{max-width:1180px;margin:0 auto;padding:32px 0 64px;position:relative}.lab-chapter-shell:before{content:"";filter:blur(18px);pointer-events:none;background:radial-gradient(at 18% 12%,#2563eb24,#0000 34%),radial-gradient(at 85% 18%,#2dd4bf14,#0000 30%);position:absolute;top:-22px;right:-78px;bottom:-22px;left:-78px}.lab-chapter-hero{color:#fff;background:linear-gradient(118deg,#0d1a35,#182c59 54%,#2563d9 130%);border-radius:22px;justify-content:space-between;align-items:flex-end;gap:28px;min-height:202px;padding:34px 38px;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 55px -34px #0f172ab3}.lab-chapter-hero:after{content:"实战";letter-spacing:-.1em;color:#ffffff0f;font:700 94px/.9 ui-sans-serif,system-ui,sans-serif;position:absolute;top:5px;right:34px}.lab-chapter-hero>div{z-index:1;position:relative}.lab-chapter-course{color:#bfdbfe;margin:13px 0 4px;font-size:13px}.lab-chapter-hero h1{letter-spacing:-.035em;margin:0;font-size:31px;line-height:1.2}.lab-chapter-hero p:last-child{color:#dbeafe;max-width:660px;margin:11px 0 0;font-size:14px}.lab-chapter-count{flex-direction:column;align-items:flex-end;min-width:106px;padding:13px 0 5px;display:flex}.lab-chapter-count b{font-size:40px;font-weight:700;line-height:1}.lab-chapter-count span{color:#bfdbfe;margin-top:7px;font-size:12px}.lab-chapter-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:24px;display:grid;position:relative}.lab-chapter-card{background:linear-gradient(150deg,#fff,#f8fbff);border:1px solid #dbe5f4;border-radius:17px;flex-direction:column;min-height:292px;padding:23px;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex;position:relative;overflow:hidden;box-shadow:0 14px 30px -27px #0f172a73}.lab-chapter-card:before{content:"";background:radial-gradient(circle,#2563eb21,#2563eb00 70%);border-radius:50%;width:190px;height:190px;position:absolute;top:-94px;right:-92px}.lab-chapter-card:hover{background:#fff;border-color:#93c5fd;transform:translateY(-5px);box-shadow:0 25px 40px -28px #1e40af6b}.lab-chapter-card-top{justify-content:space-between;align-items:center;padding-right:58px;display:flex;position:relative}.lab-chapter-seq{letter-spacing:.12em;color:#2563eb;font:700 11px ui-monospace,monospace}.lab-chapter-difficulty{font-size:12px;font-weight:600}.lab-chapter-icon{color:#2563eb;background:#eff6ff;border:1px solid #2563eb24;border-radius:14px;place-items:center;width:48px;height:48px;display:grid;position:absolute;top:20px;right:21px;overflow:hidden;box-shadow:0 8px 16px -12px #0f172a66}.lab-chapter-icon img{object-fit:contain;width:100%;height:100%;padding:5px}.lab-chapter-icon span{font-size:18px;font-weight:800}.lab-chapter-category{color:#2563eb;margin-top:27px;font-size:12px;font-weight:650;position:relative}.lab-chapter-card h2{color:#0f172a;margin:8px 55px 0 0;font-size:19px;font-weight:700;line-height:1.38;position:relative}.lab-chapter-card>p{color:#64748b;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:11px 0 20px;font-size:13px;line-height:1.7;display:-webkit-box;position:relative;overflow:hidden}.lab-chapter-card-foot{color:#64748b;border-top:1px dashed #d8e3f2;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:15px;font-size:12px;display:flex;position:relative}.lab-chapter-card-foot>span:first-child b{color:#0f172a;font-size:18px}.lab-chapter-enter{color:#1d4ed8;font-weight:650}.lab-chapter-enter b{margin-left:4px;font-size:16px}.lab-chapter-empty{text-align:center;color:#64748b;background:#fff9;border:1px dashed #cbd5e1;border-radius:16px;margin-top:24px;padding:38px;position:relative}@media(max-width:900px){.lab-chapter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.lab-chapter-shell{padding-top:16px}.lab-chapter-hero{flex-direction:column;align-items:flex-start;min-height:0;padding:26px}.lab-chapter-hero h1{font-size:25px}.lab-chapter-count{align-items:flex-start;padding:0}.lab-chapter-grid{grid-template-columns:1fr}}.lab-module-pagination{color:#64748b;justify-content:center;align-items:center;gap:14px;margin-top:28px;font-size:13px;display:flex;position:relative}.lab-module-pagination button{color:#1d4ed8;background:#fff;border:1px solid #d8e2f1;border-radius:8px;padding:8px 13px;font-size:13px}.lab-module-pagination button:hover:not(:disabled){background:#f5f8ff;border-color:#2563eb}.lab-module-pagination button:disabled{color:#94a3b8;cursor:not-allowed;background:#f8fafc}.lab-module-pagination span b{color:#0f172a}@media(max-width:1023px){.labs-layout{grid-template-columns:1fr;gap:18px}}.lab-sidebar{-webkit-backdrop-filter:blur(16px);scrollbar-width:thin;background:#ffffffc7;border:1px solid #0f172a0f;border-radius:8px;max-height:calc(100vh - 104px);padding:16px 14px 10px;position:sticky;top:88px;overflow-y:auto;box-shadow:inset 0 1px #fff9}.lab-sidebar::-webkit-scrollbar{width:6px}.lab-sidebar::-webkit-scrollbar-thumb{background:#e5e7eb;border-radius:3px}@media(max-width:1023px){.lab-sidebar{max-height:none;position:static}}.search-box{margin-bottom:18px;position:relative}.search-box input{letter-spacing:.005em;width:100%;height:46px;color:var(--color-tx-1);background:#f8fafc99;border:1px solid #0f172a14;border-radius:8px;padding:0 12px 0 34px;font-family:JetBrains Mono,Fira Code,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;transition:border-color .18s,background .18s,box-shadow .18s}.search-box input::placeholder{font-family:var(--font-sans,system-ui);letter-spacing:0}.search-box input:focus{background:#fff;border-color:#38bdf88c;outline:none;box-shadow:0 0 0 3px #38bdf81f}.search-box svg{width:15px;height:15px;color:var(--color-tx-4);position:absolute;top:50%;left:12px;transform:translateY(-50%)}.filter-group{border-top:1px solid #f0f2f5;padding:14px 4px 12px}.filter-group:first-of-type{border-top:0;padding-top:4px}.filter-group-title{letter-spacing:.06em;text-transform:uppercase;color:var(--color-tx-3);justify-content:space-between;align-items:center;margin-bottom:10px;font-size:11.5px;font-weight:600;display:flex}.filter-group-title .count{color:var(--color-tx-4);letter-spacing:0;text-transform:none;font-weight:500}.filter-check{cursor:pointer;color:var(--color-tx-2);-webkit-user-select:none;user-select:none;border-radius:8px;align-items:center;gap:10px;padding:7px 8px;font-size:13px;transition:background .14s,color .14s;display:flex}.filter-check:hover{color:var(--color-tx-1);background:#f3f4f6}.filter-check .box{background:#fff;border:1px solid #0f172a2e;border-radius:3px;flex:0 0 14px;place-items:center;width:14px;height:14px;transition:all .15s;display:grid}.filter-check .box svg{color:#fff;opacity:0;width:9px;height:9px;transition:all .15s;transform:scale(.6)}.filter-check.is-checked{color:var(--color-tx-1);font-weight:500}.filter-check.is-checked .box{background:#0f172a;border-color:#0f172a}.filter-check.is-checked .box svg{opacity:1;transform:scale(1)}.filter-check .count{color:var(--color-tx-4);font-variant-numeric:tabular-nums;margin-left:auto;font-size:11.5px}.tag-cloud{flex-wrap:wrap;gap:6px;display:flex}.tag-chip{color:var(--color-tx-2);cursor:pointer;-webkit-user-select:none;user-select:none;background:#f8fafcb3;border:1px solid #0f172a14;border-radius:6px;align-items:center;padding:3px 9px;font-size:11.5px;font-weight:500;line-height:1.5;transition:all .15s;display:inline-flex}.tag-chip:hover{color:var(--color-tx-1);background:#fff;border-color:#0f172a29}.tag-chip.is-active{color:#fff;box-shadow:none;background:#0f172a;border-color:#0f172a}.tag-chip .cnt{opacity:.7;margin-left:6px;font-size:10.5px}.filter-clear{color:var(--color-brand);cursor:pointer;border-radius:6px;align-items:center;gap:4px;padding:2px 6px;font-size:11.5px;transition:background .14s;display:inline-flex}.filter-clear:hover{background:#2563eb14}.labs-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.labs-toolbar .count-pill{color:var(--color-tx-2);background:#f8fafcb3;border:1px solid #0f172a14;border-radius:6px;align-items:center;gap:6px;padding:5px 10px 5px 9px;font-family:JetBrains Mono,Fira Code,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;display:inline-flex}.labs-toolbar .count-pill strong{color:var(--color-tx-1);font-variant-numeric:tabular-nums;font-weight:600}.labs-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}@media(min-width:1400px){.labs-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.labs-grid.labs-grid-featured{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:1023px){.labs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.labs-grid{grid-template-columns:1fr}}.lab-mini{background:radial-gradient(circle at 0 0,#0f172a0d 1px,#0000 1px) 0 0/8px 8px,#fff;border:1px solid #0f172a17;border-radius:8px;flex-direction:column;min-height:196px;padding:16px 16px 14px;transition:transform .2s cubic-bezier(.4,0,.2,1),border-color .2s,background .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.lab-mini:before{content:"";background:linear-gradient(90deg,#0000,#38bdf8,#0000);width:0;height:1px;transition:width .35s;position:absolute;top:0;left:0}.lab-mini:hover{border-color:#0f172a29;transform:translateY(-2px);box-shadow:0 12px 36px -16px #0f172a29}.lab-mini:hover:before{width:100%}.lab-mini-head{align-items:center;gap:10px;margin-bottom:10px;display:flex}.lab-mini .skill-icon{color:#0f172a;border:1px solid #0f172a29;border-radius:8px;width:30px;height:30px;box-shadow:inset 0 -1px #0f172a0a;background:#fff!important}.lab-mini .skill-icon svg{color:#0f172a!important}.lab-mini .skill-icon:after{display:none!important}.lab-mini .skill-icon svg{width:15px;height:15px;color:var(--color-tx-2)}.lab-mini-title{color:var(--color-tx-1);letter-spacing:-.005em;-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;min-width:0;font-size:14.5px;font-weight:600;line-height:1.4;display:-webkit-box;overflow:hidden}.lab-mini-meta{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:10px;display:flex}.lab-mini-tags{flex-wrap:wrap;gap:4px;margin-bottom:12px;display:flex}.lab-mini-tag{color:var(--color-tx-3);background:0 0;border:1px solid #0f172a14;border-radius:4px;padding:2px 7px;font-family:JetBrains Mono,Fira Code,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10.5px;font-weight:500;line-height:1.5}.lab-mini-foot{border-top:1px solid #0f172a0f;justify-content:space-between;align-items:flex-end;gap:10px;margin-top:auto;padding-top:12px;display:flex}.lab-mini-cost{white-space:nowrap;flex:auto;align-items:baseline;gap:6px;min-width:0;font-family:JetBrains Mono,Fira Code,ui-monospace,SFMono-Regular,Menlo,monospace;display:inline-flex}.lab-mini-cost>*{white-space:nowrap}.lab-mini-cost .v{color:var(--color-tx-1);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:22px;font-weight:700;line-height:1}.lab-mini-unit{color:var(--color-tx-3);letter-spacing:.02em;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:11.5px}.lab-mini-strike{color:#94a3b8;text-underline-offset:0;font-variant-numeric:tabular-nums;letter-spacing:.01em;white-space:nowrap;padding:0 2px;font-size:12.5px;-webkit-text-decoration:line-through #64748b;text-decoration:line-through #64748b;text-decoration-thickness:1.5px}.lab-mini-strike .mono{font-weight:600}.lab-mini-cta{white-space:nowrap;letter-spacing:.04em;color:#0f172a;background:#fff;border:1px solid #0f172a2e;border-radius:6px;flex-shrink:0;align-items:center;gap:3px;padding:5px 11px;font-size:11.5px;font-weight:600;transition:background .2s,border-color .2s,color .2s,transform .2s;display:inline-flex}.lab-mini-cta svg{width:11px;height:11px;transition:transform .2s}.lab-mini:hover .lab-mini-cta{color:#fff;background:#0f172a;border-color:#0f172a}.lab-mini:hover .lab-mini-cta svg{transform:translate(2px)}.lab-mini-deadline{color:var(--color-promo);border-top:1px dashed #0f172a1f;align-self:stretch;align-items:center;gap:6px;margin-top:10px;padding-top:10px;font-family:JetBrains Mono,Fira Code,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10.5px;display:inline-flex}.lab-mini-deadline-label{letter-spacing:.04em;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.badge-lv{letter-spacing:.015em;background:0 0;border:0;align-items:center;gap:5px;padding:1px 0;font-family:JetBrains Mono,Fira Code,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;font-weight:600;line-height:1.6;display:inline-flex}.badge-lv:before{content:"";background:currentColor;border-radius:8px;flex:0 0 5px;width:5px;height:5px;display:inline-block}.badge-lv--beginner{color:#059669}.badge-lv--intermediate{color:#d97706}.badge-lv--advanced{color:#dc2626}.badge-lv--advanced:before{animation:1.6s ease-in-out infinite lvPulse}@keyframes lvPulse{0%,to{box-shadow:0 0 #dc262673}50%{box-shadow:0 0 0 4px #dc262600}}@keyframes labFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.lab-mini{animation:.32s cubic-bezier(.4,0,.2,1) both labFadeIn}.labs-grid>:first-child{animation-delay:0s}.labs-grid>:nth-child(2){animation-delay:30ms}.labs-grid>:nth-child(3){animation-delay:60ms}.labs-grid>:nth-child(4){animation-delay:90ms}.labs-grid>:nth-child(5){animation-delay:.12s}.labs-grid>:nth-child(6){animation-delay:.15s}.labs-grid>:nth-child(7){animation-delay:.18s}.labs-grid>:nth-child(8){animation-delay:.21s}.labs-grid>:nth-child(n+9){animation-delay:.24s}.labs-empty{color:var(--color-tx-3);background:radial-gradient(circle at 1px 1px,#0f172a0a 1px,#0000 0) 0 0/14px 14px,#fdfdfd;border:1px dashed #0f172a1f;border-radius:8px;flex-direction:column;grid-column:1/-1;justify-content:center;align-items:center;gap:10px;padding:72px 20px;font-size:13px;display:flex}.labs-empty svg{width:36px;height:36px;color:var(--color-tx-4)}.lab-hero{-webkit-backdrop-filter:blur(16px);background:radial-gradient(circle at 1px 1px,#0f172a0a 1px,#0000 0) 0 0/18px 18px,#ffffffb8;border:1px solid #0f172a14;border-radius:8px;padding:28px 32px;position:relative;overflow:hidden}.lab-hero:before{content:"";background:linear-gradient(90deg,#0000,#38bdf88c,#0000);height:1px;position:absolute;top:0;left:0;right:0}.lab-hero .h-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--color-tx-4);margin-bottom:10px;font-family:JetBrains Mono,Fira Code,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.lab-hero h1{letter-spacing:-.018em;color:var(--color-tx-1);font-size:30px;font-weight:700;line-height:1.2}.lab-hero-meta{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.lab-stats-row{background:#fff9;border:1px solid #0f172a14;border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:22px;display:grid;position:relative;overflow:hidden}@media(max-width:768px){.lab-stats-row{grid-template-columns:repeat(2,1fr)}}.lab-stat{background:0 0;border-right:1px solid #0f172a0f;flex-direction:column;gap:4px;padding:14px 18px;display:flex}.lab-stat:last-child{border-right:0}@media(max-width:768px){.lab-stat:nth-child(2n){border-right:0}.lab-stat:nth-child(-n+2){border-bottom:1px solid #0f172a0f}}.lab-stat .lbl{color:var(--color-tx-4);text-transform:uppercase;letter-spacing:.1em;font-family:JetBrains Mono,Fira Code,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10.5px;font-weight:500}.lab-stat .val{color:var(--color-tx-1);font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-size:15px;font-weight:600}.lab-stat .val.mono{font-family:JetBrains Mono,Fira Code,ui-monospace,Menlo,Monaco,Consolas,monospace}.intro-card{-webkit-backdrop-filter:blur(16px);background:#ffffffb8;border:1px solid #0f172a14;border-radius:8px;padding:24px 28px}.intro-card h3{color:var(--color-tx-1);letter-spacing:-.01em;margin-bottom:12px;font-size:14px;font-weight:600}.intro-card p{color:var(--color-tx-2);font-size:14.5px;line-height:1.8}.intro-card ul{margin:0;padding:0;list-style:none}.intro-card ul li{color:var(--color-tx-2);gap:10px;padding:6px 0;font-size:13.5px;line-height:1.7;display:flex}.intro-card ul li .dot-ok{color:#10b981;background:#10b9811f;border-radius:50%;flex:0 0 16px;place-items:center;width:16px;height:16px;margin-top:2px;display:grid}.intro-card ul li .dot-ok svg{width:10px;height:10px}.progress-panel{text-align:center;background:#fff;border:1px solid #f0f2f5;border-radius:14px;padding:26px 28px}.progress-panel .title{color:var(--color-tx-1);margin-bottom:14px;font-size:15px;font-weight:600}.progress-panel .sub{color:var(--color-tx-3);margin-top:10px;font-size:12.5px}.progress-bar{background:#f3f4f6;border-radius:999px;width:100%;height:6px;position:relative;overflow:hidden}.progress-bar>span{background:linear-gradient(90deg,#3b82f6,#10b981);border-radius:999px;transition:width .32s cubic-bezier(.4,0,.2,1);position:absolute;top:0;bottom:0;left:0;box-shadow:0 0 10px #2563eb59}.progress-bar:after{content:"";background:linear-gradient(90deg,#0000,#ffffff59,#0000);animation:1.6s linear infinite pg-shine;position:absolute;top:0;right:0;bottom:0;left:0}@keyframes pg-shine{0%{transform:translate(-100%)}to{transform:translate(100%)}}.service-card{background:#fff;border:1px solid #f0f2f5;border-radius:14px;overflow:hidden}.service-card-head{background:linear-gradient(#fafbfc,#fff);border-bottom:1px solid #f0f2f5;justify-content:space-between;align-items:center;padding:16px 22px;display:flex}.service-card-head h3{color:var(--color-tx-1);align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.service-row{border-top:1px solid #f5f6f8;grid-template-columns:auto 1fr auto auto;align-items:center;gap:14px;padding:14px 22px;transition:background .15s;display:grid}.service-row:first-child{border-top:0}.service-row:hover{background:#fafbfc}.service-row .svc-ico{color:#fff;border-radius:10px;place-items:center;width:48px;height:38px;display:grid;box-shadow:0 4px 10px -3px #0f172a2e,inset 0 1px #ffffff2e}.service-row .svc-ico svg{width:18px;height:18px}.service-row .svc-ico.kind-web{background:linear-gradient(135deg,#3b82f6,#2563eb)}.service-row .svc-ico.kind-ssh{background:linear-gradient(135deg,#334155,#0f172a)}.service-row .svc-ico.kind-rdp{background:linear-gradient(135deg,#0ea5e9,#0369a1)}.service-row .svc-ico.kind-db{background:linear-gradient(135deg,#f59e0b,#b45309)}.service-row .svc-ico.kind-tcp{background:linear-gradient(135deg,#64748b,#334155)}.service-row .svc-name{color:var(--color-tx-1);margin-bottom:2px;font-size:13.5px;font-weight:600}.service-row .svc-url{color:var(--color-tx-3);letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-family:ui-monospace,Menlo,Monaco,Consolas,monospace;font-size:12.5px;overflow:hidden}.service-row .svc-url a{color:var(--color-brand)}.service-row .svc-url a:hover{text-decoration:underline}.service-row .port-chip{color:var(--color-tx-2);background:#f3f4f6;border-radius:6px;padding:4px 10px;font-family:ui-monospace,Menlo,Monaco,Consolas,monospace;font-size:12px;font-weight:600}.icon-btn{width:32px;height:32px;color:var(--color-tx-3);cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:8px;place-items:center;transition:all .15s;display:grid}.icon-btn:hover{color:var(--color-brand);background:#2563eb0a;border-color:#2563eb66}.icon-btn svg{width:14px;height:14px}.control-row{background:#fafbfc;border-top:1px solid #f5f6f8;flex-wrap:wrap;gap:8px;padding:16px 22px;display:flex}.btn-outline-amber{color:#b45309;cursor:pointer;background:#fff;border:1px solid #f59e0b66;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.btn-outline-amber:hover{background:#fffbeb;border-color:#f59e0b}.btn-outline-red{color:#b91c1c;cursor:pointer;background:#fff;border:1px solid #ef444466;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.btn-outline-red:hover{background:#fef2f2;border-color:#ef4444}.btn-outline-blue{color:var(--color-brand);cursor:pointer;background:#fff;border:1px solid #2563eb47;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.btn-outline-blue:hover{background:#2563eb0f;border-color:#2563eb8c}.flag-panel{background:#fff;border:1px solid #f0f2f5;border-radius:14px;padding:20px 24px}.flag-panel h3{color:var(--color-tx-1);align-items:center;gap:8px;margin-bottom:4px;font-size:14px;font-weight:600;display:flex}.flag-panel .hint{color:var(--color-tx-3);margin-bottom:14px;font-size:12.5px}.flag-form{gap:8px;display:flex}.flag-form input{min-width:0;height:44px;color:var(--color-tx-1);background:#fff;border:1px solid #e5e7eb;border-radius:10px;flex:1;padding:0 14px;font-family:ui-monospace,Menlo,Monaco,Consolas,monospace;font-size:13.5px;transition:all .18s}.flag-form input:focus{border-color:#2563eb8c;outline:none;box-shadow:0 0 0 4px #2563eb14}.flag-form button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:10px;align-items:center;gap:6px;height:44px;padding:0 22px;font-size:13.5px;font-weight:600;transition:transform .15s,box-shadow .15s;display:inline-flex;box-shadow:0 6px 16px -6px #2563eb66}.flag-form button:hover{transform:translateY(-1px);box-shadow:0 10px 22px -8px #2563eb8c}.flag-form button:disabled{opacity:.5;cursor:not-allowed;transform:none}.flag-panel.is-correct{background:#f0fdf4;border-color:#10b98166}.flag-panel.is-correct .flag-form input{border-color:#10b98180}.flag-panel.is-wrong{background:#fef2f2;border-color:#ef444466}.flag-panel.is-wrong .flag-form{animation:.38s flag-shake}@keyframes flag-shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.flag-feedback{opacity:0;align-items:center;gap:8px;margin-top:14px;font-size:13px;font-weight:500;transition:all .2s;display:flex;transform:translateY(-4px)}.flag-feedback.is-show{opacity:1;transform:translateY(0)}.flag-feedback.is-correct{color:#047857}.flag-feedback.is-wrong{color:#b91c1c}.flag-feedback .icon-circle{color:#fff;border-radius:8px;place-items:center;width:20px;height:20px;display:grid}.flag-feedback.is-correct .icon-circle{background:#10b981;animation:.35s pop-in}.flag-feedback.is-wrong .icon-circle{background:#ef4444;animation:.35s pop-in}@keyframes pop-in{0%{opacity:0;transform:scale(.4)}60%{opacity:1;transform:scale(1.2)}to{transform:scale(1)}}.action-card{background:#fff;border:1px solid #f0f2f5;border-radius:16px;padding:22px;box-shadow:0 1px 2px #0f172a08}.action-card .price-block{border-bottom:1px solid #f0f2f5;margin-bottom:14px;padding-bottom:14px}.action-card .feature-list{flex-direction:column;gap:10px;margin:14px 0 0;padding:0;list-style:none;display:flex}.action-card .feature-list li{color:var(--color-tx-2);gap:10px;font-size:13px;line-height:1.5;display:flex}.action-card .feature-list li .check{color:#10b981;background:#10b9811f;border-radius:5px;flex:0 0 16px;place-items:center;width:16px;height:16px;margin-top:2px;display:grid}.action-card .feature-list li .check svg{width:10px;height:10px}.runtime-chip{color:#047857;background:#10b98114;border:1px solid #10b98138;border-radius:6px;align-items:center;gap:6px;padding:4px 10px;font-family:ui-monospace,Menlo,Monaco,Consolas,monospace;font-size:12.5px;font-weight:600;display:inline-flex}.runtime-chip.is-expiring{color:#b45309;background:#f59e0b14;border-color:#f59e0b40}.skel{background:linear-gradient(90deg,#f3f4f6,#e5e7eb,#f3f4f6) 0 0/200% 100%;border-radius:8px;animation:1.3s ease-in-out infinite skel-pulse}@keyframes skel-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}.pill-nav{scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;gap:.5rem;padding:.25rem .25rem .5rem;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 12px calc(100% - 12px),#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 12px,#000 calc(100% - 12px),#0000)}.pill-nav::-webkit-scrollbar{display:none}.pill{color:var(--color-tx-3);border:1px solid var(--color-line-2);white-space:nowrap;cursor:pointer;background:#fff;border-radius:999px;flex-shrink:0;align-items:center;gap:.375rem;padding:.5rem 1rem;font-size:13.5px;font-weight:500;transition:color .22s,background-color .22s,border-color .22s,transform .18s,box-shadow .22s;display:inline-flex}.pill:hover{color:var(--color-tx-1);border-color:var(--color-line-3);background:var(--color-bg-3)}.pill.is-active{color:#fff;background:linear-gradient(135deg,#3b82f6,#2563eb);border-color:#0000;box-shadow:0 6px 16px -6px #2563eb73,inset 0 1px #ffffff40}.pill.is-active:hover{transform:translateY(-1px)}.pill .pill-count{color:var(--color-tx-3);background:#0f172a0f;border-radius:999px;padding:1px 6px;font-size:11px;font-weight:500;line-height:1.5}.pill.is-active .pill-count{color:#fff;background:#ffffff38}@keyframes slideFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.grid-slide-in>*{animation:.45s cubic-bezier(.22,.61,.36,1) both slideFadeIn}.grid-slide-in>:first-child{animation-delay:0s}.grid-slide-in>:nth-child(2){animation-delay:40ms}.grid-slide-in>:nth-child(3){animation-delay:80ms}.grid-slide-in>:nth-child(4){animation-delay:.12s}.grid-slide-in>:nth-child(5){animation-delay:.16s}.grid-slide-in>:nth-child(6){animation-delay:.2s}.grid-slide-in>:nth-child(7){animation-delay:.24s}.grid-slide-in>:nth-child(8){animation-delay:.28s}.grid-slide-in>:nth-child(9){animation-delay:.32s}.edu-card{border:1px solid var(--color-line-1);background:#fff;border-radius:18px;flex-direction:column;height:100%;transition:transform .28s cubic-bezier(.22,.61,.36,1),box-shadow .28s,border-color .28s;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 6px -1px #0f172a0d,0 10px 15px -3px #0f172a08}.edu-card:hover{border-color:#2563eb38;transform:translateY(-4px)scale(1.02);box-shadow:0 20px 40px -12px #0f172a24,0 10px 20px -6px #0f172a12}.edu-cover{aspect-ratio:16/9;isolation:isolate;flex:none;position:relative;overflow:hidden}.edu-cover:before{content:"";z-index:1;pointer-events:none;background:radial-gradient(140% 120% at 110% -10%,#ffffff61,#0000 55%),radial-gradient(80% 80% at 20% 110%,#ffffff1f,#0000 55%);position:absolute;top:0;right:0;bottom:0;left:0}.edu-cover.cov-web{background:linear-gradient(135deg,#1e3a8a,#2563eb 60%,#3b82f6)}.edu-cover.cov-intra{background:linear-gradient(135deg,#4c1d95,#7c3aed 60%,#8b5cf6)}.edu-cover.cov-audit{background:linear-gradient(135deg,#92400e,#d97706 60%,#fbbf24)}.edu-cover.cov-ir{background:linear-gradient(135deg,#065f46,#059669 60%,#34d399)}.edu-cover.cov-default{background:linear-gradient(135deg,#1f2937,#475569 60%,#94a3b8)}.edu-cover:after{content:"";opacity:.5;mix-blend-mode:overlay;z-index:1;pointer-events:none;background-image:radial-gradient(#ffffff2e 1px,#0000 1px);background-size:18px 18px;position:absolute;top:0;right:0;bottom:0;left:0}.edu-cover .cover-icon{color:#fff;-webkit-backdrop-filter:blur(14px);z-index:2;background:linear-gradient(135deg,#ffffff47,#ffffff0f);border:1px solid #ffffff52;border-radius:20px;place-items:center;width:72px;height:72px;transition:transform .35s cubic-bezier(.22,.61,.36,1);display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)translateZ(0);box-shadow:inset 0 1px #fff6,inset 0 -18px 28px -18px #00000059,0 12px 24px -10px #00000059}.edu-cover .cover-icon svg{filter:drop-shadow(0 2px 4px #00000040);width:32px;height:32px}.edu-card:hover .edu-cover .cover-icon{transform:translate(-50%,-50%)scale(1.08)}.edu-cover .cover-img{object-fit:cover;z-index:1;width:100%;height:100%;transition:transform .5s cubic-bezier(.22,.61,.36,1);position:absolute;top:0;right:0;bottom:0;left:0}.edu-card:hover .edu-cover .cover-img{transform:scale(1.04)}.edu-cover.has-img:after{opacity:0}.edu-cover.has-img:before{z-index:2;background:linear-gradient(#00000047,#0000 30%,#0000 55%,#00000059)}.edu-cover .cover-badge{z-index:3;letter-spacing:.01em;color:#fff;-webkit-backdrop-filter:blur(10px);background:#00000059;border:1px solid #ffffff42;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600;position:absolute;top:14px;left:14px}.edu-cover .cover-cat{z-index:3;color:#ffffffe6;letter-spacing:.08em;text-transform:uppercase;font-size:10.5px;font-weight:600;position:absolute;top:14px;right:14px}.edu-body{flex-direction:column;flex:auto;min-height:9rem;padding:1.25rem 1.25rem .5rem;display:flex}.edu-title{color:var(--color-tx-1);letter-spacing:-.01em;-webkit-line-clamp:1;-webkit-box-orient:vertical;font-size:16px;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.edu-desc{min-height:2.55rem;color:var(--color-tx-3);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:.5rem;font-size:13px;line-height:1.55;display:-webkit-box;overflow:hidden}.edu-stats{color:var(--color-tx-3);align-items:center;gap:1rem;margin-top:auto;padding-top:.875rem;font-size:11.5px;display:flex}.edu-stats .stat{align-items:center;gap:4px;display:inline-flex}.edu-stats .stat svg{width:12px;height:12px;color:var(--color-tx-4)}.edu-promo-slot{align-items:center;min-height:2.75rem;margin:.85rem 1.25rem 0;display:flex}.edu-promo{background:linear-gradient(90deg,var(--color-promo-bg-soft),var(--color-promo-bg-faint));border:1px solid var(--color-promo-border);color:var(--color-promo);border-radius:8px;align-items:center;gap:8px;width:fit-content;max-width:calc(100% - 2.5rem);padding:6px 10px;font-size:12px;display:inline-flex}.edu-promo.is-placeholder{visibility:hidden;pointer-events:none}.edu-promo .dot{background:var(--color-promo);width:6px;height:6px;box-shadow:0 0 0 3px var(--color-promo-ring);border-radius:999px}.edu-promo .edu-promo-tag{letter-spacing:.02em;font-weight:600}.edu-promo .edu-promo-end{color:var(--color-tx-3)}.edu-promo .edu-promo-end .mono{color:var(--color-promo);font-weight:600}.edu-foot{border-top:1px solid var(--color-line-1);justify-content:space-between;align-items:center;margin:0 1.25rem 1.25rem;padding-top:1rem;display:flex}.edu-price{font-family:var(--font-family-mono);color:var(--color-tx-1);letter-spacing:-.02em;font-size:18px;font-weight:600}.edu-price .unit{color:var(--color-tx-4);margin-left:2px;font-size:12px;font-weight:500}.edu-price.is-free{color:var(--color-accent)}.edu-cta{color:#fff;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:999px;place-items:center;width:36px;height:36px;transition:transform .22s,box-shadow .22s;display:inline-grid;box-shadow:0 6px 14px -4px #2563eb73}.edu-card:hover .edu-cta{transform:translate(3px);box-shadow:0 10px 20px -6px #2563eb8c}.edu-cta svg{width:16px;height:16px}.auth-shell{background:radial-gradient(1200px 500px at 12% -10%,#6366f10f,#0000 60%),radial-gradient(900px 420px at 90% 110%,#38bdf80d,#0000 60%);justify-content:center;align-items:flex-start;min-height:calc(100vh - 60px);padding:56px 16px 80px;display:flex}.auth-card{border:1px solid var(--color-line-1);background:#fff;border-radius:18px;width:100%;max-width:440px;overflow:hidden;box-shadow:0 24px 48px -16px #0f172a1f,0 4px 12px -4px #0f172a0a}.auth-card--wide{max-width:520px}.auth-card__header{text-align:center;padding:32px 32px 12px}.auth-card__brand{color:var(--color-tx-1);align-items:center;gap:8px;margin-bottom:18px;font-weight:600;text-decoration:none;display:inline-flex}.auth-card__brand:hover{color:var(--color-brand)}.auth-card__logo{object-fit:contain;width:48px;height:46px;box-shadow:none;background:0 0;border-radius:8px;flex:none;display:block}.auth-card__brand-name{letter-spacing:.02em;font-size:16px;font-weight:700}.auth-card__title-block{text-align:center}.auth-card__title{letter-spacing:-.01em;color:var(--color-tx-1);margin:0;font-size:22px;font-weight:600}.auth-card__subtitle{color:var(--color-tx-3);margin-top:6px;font-size:13px}.auth-card__body{padding:24px 32px 32px}.auth-form{flex-direction:column;gap:14px;display:flex}.auth-field{flex-direction:column;gap:6px;display:flex}.auth-label{color:var(--color-tx-2);font-size:12.5px;font-weight:500}.auth-label__hint{color:var(--color-tx-4);font-size:11.5px;font-weight:400}.auth-input{border:1px solid var(--color-line-2);width:100%;height:40px;color:var(--color-tx-1);background:#fff;border-radius:10px;outline:none;padding:0 12px;font-size:14px;transition:border-color .18s,box-shadow .18s}.auth-input::placeholder{color:var(--color-tx-5)}.auth-input:hover{border-color:var(--color-line-3)}.auth-input:focus{border-color:var(--color-brand);box-shadow:0 0 0 3px #6366f11f}.auth-input.mono{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace}.auth-field__err{color:#b91c1c;font-size:12px}.auth-pwd-rules{flex-wrap:wrap;gap:6px;display:flex}.auth-pwd-rule{background:var(--color-bg-3);border:1px solid var(--color-line-2);color:var(--color-tx-4);border-radius:999px;padding:2px 8px;font-size:11px;transition:background .18s,color .18s,border-color .18s}.auth-pwd-rule.is-ok{color:#047857;background:#10b98114;border-color:#10b98159}.auth-alert{text-align:left;border:1px solid;border-radius:10px;padding:10px 12px;font-size:13px}.auth-alert--error{color:#b91c1c;background:#ef44440f;border-color:#ef444440}.auth-alert--ok{color:#047857;background:#10b9810f;border-color:#10b98147}.auth-submit{background:var(--color-brand);color:#fff;cursor:pointer;border:none;border-radius:10px;height:44px;font-size:14px;font-weight:600;transition:background .18s,box-shadow .18s,transform .12s;box-shadow:0 6px 14px -4px #6366f173}.auth-submit:hover:not(:disabled){background:#4f46e5;box-shadow:0 10px 20px -6px #6366f18c}.auth-submit:active:not(:disabled){transform:translateY(1px)}.auth-submit:disabled{opacity:.55;cursor:not-allowed}.auth-link{cursor:pointer;color:var(--color-brand);background:0 0;border:none;padding:0;font-size:12.5px}.auth-link:hover{text-decoration:underline}.auth-link--strong{font-weight:500}.auth-foot{text-align:center;color:var(--color-tx-4);margin-top:4px;font-size:12.5px}.auth-invite-hint{color:#4338ca;background:#6366f114;border:1px solid #6366f13d;border-radius:999px;align-items:center;gap:6px;margin-top:10px;padding:4px 10px;font-size:12.5px;display:inline-flex}.auth-invite-hint svg{width:14px;height:14px}@media(max-width:480px){.auth-card__header{padding:24px 22px 12px}.auth-card__body{padding:18px 22px 26px}}.profile-page{flex-direction:column;gap:18px;max-width:920px;display:flex}.profile-hero{border:1px solid var(--color-line-1);background:linear-gradient(135deg,#fff,#f5f8ff);border-radius:16px;align-items:center;gap:22px;padding:22px 24px;display:flex;position:relative;box-shadow:0 1px #0f172a05}.profile-hero__avatar{border:1px solid var(--color-line-2);background:#fff;border-radius:16px;flex:0 0 84px;width:84px;height:84px;position:relative;overflow:hidden}.profile-hero__avatar img{object-fit:cover;width:100%;height:100%;display:block}.profile-hero__avatar-edit{color:#fff;cursor:pointer;background:#0f172ac7;border-radius:8px;place-items:center;width:26px;height:26px;transition:background .18s,transform .12s;display:grid;position:absolute;bottom:4px;right:4px;box-shadow:0 6px 14px -4px #0f172a66}.profile-hero__avatar-edit:hover{background:var(--color-brand)}.profile-hero__avatar-edit:active{transform:translateY(1px)}.profile-hero__avatar-edit svg{width:14px;height:14px}.profile-hero__info{flex:1;min-width:0}.profile-hero__name{color:var(--color-tx-1);flex-wrap:wrap;align-items:center;gap:10px;font-size:18px;font-weight:600;line-height:1.2;display:flex}.profile-hero__role{background:var(--color-bg-3);color:var(--color-tx-3);border:1px solid var(--color-line-2);border-radius:999px;padding:2px 9px;font-size:11.5px;font-weight:500}.profile-hero__role.is-admin{color:#4338ca;background:#6366f114;border-color:#6366f147}.profile-hero__email{color:var(--color-tx-4);margin-top:4px;font-size:12.5px}.profile-hero__stats{flex-wrap:wrap;gap:28px;margin-top:14px;display:flex}.profile-stat{flex-direction:column;gap:2px;display:flex}.profile-stat__num{color:var(--color-tx-1);letter-spacing:-.01em;font-size:18px;font-weight:600}.profile-stat__label{color:var(--color-tx-4);font-size:11.5px}.profile-tabs{background:var(--color-bg-3);border-radius:12px;align-self:flex-start;gap:4px;padding:4px;display:inline-flex}.profile-tab{color:var(--color-tx-3);cursor:pointer;background:0 0;border:none;border-radius:9px;padding:6px 14px;font-size:13px;font-weight:500;transition:background .18s,color .18s,box-shadow .18s}.profile-tab:hover{color:var(--color-tx-1)}.profile-tab.is-active{color:var(--color-tx-1);background:#fff;box-shadow:0 1px 3px #0f172a14,0 1px 1px #0f172a0a}.profile-card{border:1px solid var(--color-line-1);background:#fff;border-radius:14px;overflow:hidden}.profile-card__head{border-bottom:1px solid var(--color-line-1);padding:18px 22px 12px}.profile-card__head h3{color:var(--color-tx-1);margin:0;font-size:15px;font-weight:600}.profile-card__head p{color:var(--color-tx-4);margin:4px 0 0;font-size:12.5px}.profile-card__body{padding:18px 22px}.profile-card__foot{border-top:1px solid var(--color-line-1);background:var(--color-bg-2);align-items:center;gap:12px;padding:14px 22px 18px;display:flex}.copy-pill{border:1px solid var(--color-line-2);background:var(--color-bg-2);text-align:left;cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:10px 12px;transition:border-color .18s,background .18s;display:flex}.copy-pill:hover{border-color:var(--color-brand);background:#6366f10a}.copy-pill__main{min-width:0;color:var(--color-tx-1);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:14px;font-weight:600;overflow:hidden}.copy-pill svg{width:16px;height:16px;color:var(--color-tx-4);flex:0 0 16px}.copy-tip{color:#047857;margin-top:6px;font-size:11.5px}.status-toggle{border:1px solid var(--color-line-1);cursor:pointer;text-align:left;background:#fff;border-radius:12px;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;transition:border-color .2s,box-shadow .2s;display:flex;box-shadow:0 1px 2px #0f172a0a}.status-toggle:hover{border-color:var(--color-line-2);box-shadow:0 4px 12px #0f172a0f}.status-toggle .status-icon-wrap{background:linear-gradient(135deg,#2563eb1f,#3b82f60f);border:1px solid #2563eb38;border-radius:10px;flex-shrink:0;place-items:center;width:2.25rem;height:2.25rem;display:grid;position:relative}.status-toggle .status-badge{color:#fff;background:#f97316;border:2px solid #fff;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:700;line-height:1;display:inline-flex;position:absolute;top:-4px;right:-4px}.toast-glass{-webkit-backdrop-filter:blur(14px)saturate(160%);background:#ffffffb8;border:1px solid #ffffffe6;border-radius:14px;box-shadow:0 1px 2px #0f172a0a,0 12px 30px -10px #0f172a2e}.course-tabs{z-index:20;-webkit-backdrop-filter:blur(24px)saturate(180%);background:#ffffffd9;border-bottom:1px solid #f0f2f5;border-radius:12px 12px 0 0;margin-top:32px;position:sticky;top:60px}.course-tabs--flush{margin-top:16px}.course-tab{color:#64748b;letter-spacing:-.005em;cursor:pointer;align-items:center;gap:.5rem;height:100%;margin:0 1rem;padding:0 .25rem;font-size:14.5px;font-weight:500;transition:color .22s;display:inline-flex;position:relative}.course-tab:first-child{margin-left:0}.course-tab:hover{color:#1e293b}.course-tab .tab-count{color:#64748b;background:#f1f5f9;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:18px;padding:0 6px;font-size:11px;font-weight:600;line-height:1;transition:background .22s,color .22s;display:inline-flex}.course-tab--active{color:#1e293b;font-weight:600}.course-tab--active .tab-count{color:#2563eb;background:#3b82f61f}.course-tab--active:after{content:"";background:#3b82f6;border-radius:2px 2px 0 0;height:2px;position:absolute;bottom:-1px;left:0;right:0}.course-page{position:relative}.course-hero-bg{pointer-events:none;z-index:0;background:linear-gradient(#f8faff,#f8faff,#f8faff00),radial-gradient(900px 420px at 12% -10%,#3b82f61a,#0000 60%),radial-gradient(700px 360px at 92% 10%,#6366f114,#0000 60%);height:460px;position:absolute;top:0;left:0;right:0}.course-hero-bg:after{content:"{ }";font-family:var(--font-family-mono);letter-spacing:-.05em;color:#3b82f6;opacity:.045;pointer-events:none;font-size:clamp(160px,22vw,320px);font-weight:700;line-height:1;position:absolute;top:6px;right:6vw}.hero-cover{aspect-ratio:4/3;isolation:isolate;background:linear-gradient(135deg,#1e40af,#3b82f6 60%,#60a5fa);border:1px solid #fff9;border-radius:18px;width:100%;position:relative;overflow:hidden;box-shadow:0 14px 30px -14px #0f172a2e,0 4px 12px -8px #0f172a1f}.hero-cover img{object-fit:contain;width:100%;height:100%;display:block}.hero-cover:after{content:"";pointer-events:none;background:radial-gradient(120% 80% at 0 0,#ffffff38,#0000 55%),linear-gradient(#0000 55%,#0f172a26);position:absolute;top:0;right:0;bottom:0;left:0}.info-bar{flex-wrap:wrap;gap:.625rem;display:flex}.info-chip{color:#475569;-webkit-backdrop-filter:blur(6px);background:#ffffffd9;border:1px solid #e8eef7;border-radius:10px;align-items:center;gap:.5rem;padding:8px 14px;font-size:13px;line-height:1.2;display:inline-flex;box-shadow:0 1px 2px #0f172a0a}.info-chip .ic{color:#2563eb;background:#3b82f614;border-radius:7px;flex-shrink:0;place-items:center;width:22px;height:22px;display:inline-grid}.info-chip .ic svg{width:13px;height:13px}.info-chip .lbl{color:#94a3b8;font-size:11.5px;font-weight:500}.info-chip .val{color:#1e293b;letter-spacing:-.005em;font-weight:600}.info-chip.chip-level .ic{color:#d97706;background:#f59e0b1f}.info-chip.chip-level .val{color:#b45309}.buy-card{background:#fff;border:1px solid #e8eef7;border-radius:18px;flex-direction:column;gap:16px;padding:24px;display:flex;box-shadow:0 24px 48px -24px #0f172a29,0 6px 14px -10px #0f172a14}.buy-card .price-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.buy-card .price{font-family:var(--font-family-mono);letter-spacing:-.02em;color:#0f172a;font-size:40px;font-weight:600;line-height:1}.buy-card .price .cur{vertical-align:top;color:#64748b;margin-right:2px;font-size:20px;font-weight:500}.buy-card .price-original{font-family:var(--font-family-mono);color:#94a3b8;margin-top:4px;font-size:13px;text-decoration:line-through}.buy-card .price-badge{color:#fff;letter-spacing:-.005em;background:linear-gradient(135deg,#f43f5e,#e11d48);border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.buy-card .guarantees{border-top:1px solid #f1f5f9;gap:10px;padding-top:14px;display:grid}.buy-card .guarantees li{color:#475569;align-items:center;gap:8px;font-size:13px;line-height:1.45;display:flex}.buy-card .guarantees li svg{color:#10b981;flex-shrink:0;width:16px;height:16px}.course-detail-main{padding-top:24px;padding-bottom:96px}.info-card{background:#fff;border:1px solid #f0f2f5;border-radius:16px;padding:2rem;transition:border-color .25s,box-shadow .25s}.info-card:hover{border-color:#e2e8f0;box-shadow:0 6px 18px -10px #0f172a14}.info-card .info-head{align-items:center;gap:.75rem;margin-bottom:1.25rem;display:flex}.info-card .info-head .ic{border-radius:10px;flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}.info-card .info-head .ic.ic-req{color:#3b82f6;background:#eff6ff}.info-card .info-head .ic.ic-out{color:#10b981;background:#ecfdf5}.info-card .info-head h3{letter-spacing:-.01em;color:#1e293b;font-size:17px;font-weight:600}.info-card .info-hint{color:#64748b;margin-bottom:1.25rem;font-size:13px;line-height:1.7}.info-card ul{margin:0;padding:0;list-style:none}.info-card ul li{color:#334155;align-items:flex-start;gap:.75rem;padding:.625rem 0;font-size:14px;line-height:1.75;display:flex}.info-card ul li+li{border-top:1px solid #f8fafc}.info-card ul li .chk{border-radius:50%;flex-shrink:0;place-items:center;width:20px;height:20px;margin-top:2px;display:grid}.info-card.is-req ul li .chk{color:#3b82f6;background:#3b82f614}.info-card.is-out ul li .chk{color:#10b981;background:#10b9811a}.hero-stats{color:#475569;align-items:center;gap:0;padding:6px 4px;font-size:14px;display:inline-flex}.hero-stats .hero-stat{align-items:center;gap:.5rem;padding:4px 16px;display:inline-flex}.hero-stats .hero-stat+.hero-stat{border-left:1px solid #e2e8f0}.hero-stats .hero-stat:first-child{padding-left:0}.hero-stats .hero-stat svg{color:#94a3b8;flex-shrink:0;width:16px;height:16px}.hero-stats .hero-stat strong{color:#1e293b;letter-spacing:-.005em;font-weight:600}.hero-stats .hero-stat.stat-rating strong{color:#f59e0b}.syllabus-chapter{background:#fff;border:1px solid #f0f2f5;border-radius:16px;padding:1.25rem 1.5rem;transition:border-color .25s}.syllabus-chapter+.syllabus-chapter{margin-top:1rem}.syllabus-chapter:hover{border-color:#e2e8f0}.syllabus-chapter .chap-head{border-bottom:1px dashed #f0f2f5;align-items:center;gap:1rem;padding-bottom:.875rem;display:flex}.syllabus-chapter .chap-idx{width:36px;height:36px;font-family:var(--font-family-mono);color:#64748b;letter-spacing:-.02em;background:#f8fafc;border-radius:10px;flex-shrink:0;place-items:center;font-size:13px;font-weight:600;display:grid}.syllabus-chapter .chap-title{color:#1e293b;letter-spacing:-.01em;font-size:16px;font-weight:600}.syllabus-chapter .chap-sub{color:#64748b;margin-top:2px;font-size:13px;line-height:1.6}.syllabus-chapter .chap-count{color:#94a3b8;white-space:nowrap;font-size:12px;font-weight:500}.syllabus-section{text-align:left;color:#334155;cursor:pointer;border-radius:10px;align-items:center;gap:.875rem;width:calc(100% - 2.75rem);margin-top:.375rem;margin-left:2.75rem;padding:.75rem 1rem;font-size:14px;transition:background .2s,color .2s;display:flex;position:relative}.syllabus-section:before{content:"";background:#e2e8f0;width:10px;height:1px;position:absolute;top:50%;left:-14px}.syllabus-section:hover{color:#1e293b;background:#f8fafc}.syllabus-section .sec-ic{color:#94a3b8;background:#f1f5f9;border-radius:8px;flex-shrink:0;place-items:center;width:26px;height:26px;display:grid}.syllabus-section:hover .sec-ic{color:#3b82f6;background:#3b82f614}.syllabus-section.is-complete .sec-ic{color:#10b981;background:#10b9811f}.syllabus-section .sec-title{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.syllabus-section .sec-meta{color:#94a3b8;font-size:12px;font-family:var(--font-family-mono);flex-shrink:0;align-items:center;gap:6px;display:inline-flex}.syllabus-section .sec-lock{color:#92400e;background:#fef3c7;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:500;display:inline-flex}.syllabus-section .sec-preview{color:#2563eb;background:#3b82f61a;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:500;display:inline-flex}.lab-tile{background:#fff;border:1px solid #f0f2f5;border-radius:14px;flex-direction:column;padding:1.5rem;transition:border-color .25s,transform .25s,box-shadow .25s;display:flex}.lab-tile:hover{border-color:#e2e8f0;transform:translateY(-2px);box-shadow:0 12px 24px -14px #0f172a1f}.lab-tile .lt-top{align-items:center;gap:.875rem;margin-bottom:.75rem;display:flex}.lab-tile .lt-title{color:#1e293b;letter-spacing:-.01em;-webkit-line-clamp:1;-webkit-box-orient:vertical;font-size:15px;font-weight:600;line-height:1.4;display:-webkit-box;overflow:hidden}.lab-tile .lt-cat{color:#64748b;margin-top:2px;font-size:12px}.lab-tile .lt-desc{color:#64748b;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:42px;font-size:13px;line-height:1.65;display:-webkit-box;overflow:hidden}.lab-tile .lt-foot{border-top:1px solid #f0f2f5;justify-content:space-between;align-items:center;margin-top:auto;padding-top:1rem;font-size:13px;display:flex}.lab-tile .lt-price{font-family:var(--font-family-mono);color:#f59e0b;font-weight:600}.learn-overlay{z-index:80;background:var(--color-bg-1);display:flex;position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden}.learn-layout{flex-direction:column;width:100%;height:100%;display:flex}.learn-top{-webkit-backdrop-filter:blur(20px)saturate(160%);backdrop-filter:blur(20px)saturate(160%);border-bottom:1px solid var(--color-line-1);background:#ffffffd9;flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;height:64px;padding:0 1.75rem;display:flex}.learn-body{flex:1;grid-template-columns:280px 1fr 300px;min-height:0;display:grid}.learn-side{border-right:1px solid var(--color-line-1);background:var(--color-bg-0);padding:1.75rem 1.25rem;overflow-y:auto}.learn-main{width:100%;max-width:920px;margin:0 auto;padding:3rem 3.25rem;overflow-y:auto}.wm-shield{position:relative}.wm-shield:before{content:attr(data-wm);pointer-events:none;z-index:5;color:#0f172a1a;letter-spacing:.08em;white-space:pre;text-align:center;text-shadow:0 0 1px #ffffff59;mix-blend-mode:multiply;background-image:repeating-linear-gradient(0deg,#0000 0,#0000 120px,#0000 120px,#0000 240px);justify-content:center;align-items:center;font-size:13px;font-weight:600;line-height:160px;display:flex;position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;transform:rotate(-22deg)}.wm-shield.wm-on-dark:before{color:#ffffff2e;text-shadow:0 0 1px #00000073;mix-blend-mode:screen}.wm-shield .wm-tile{pointer-events:none;z-index:5;color:#0f172a1a;letter-spacing:.06em;text-align:center;mix-blend-mode:multiply;grid-template-columns:repeat(3,1fr);grid-auto-rows:130px;font-size:12.5px;font-weight:600;display:grid;position:absolute;top:-20%;right:-20%;bottom:-20%;left:-20%;transform:rotate(-22deg)}.wm-shield.wm-on-dark .wm-tile{color:#ffffff2e;mix-blend-mode:screen}.wm-shield .wm-tile span{white-space:nowrap;align-self:center}.wm-shield.has-tile:before{content:none}.learn-main .prose-body{-webkit-user-select:text;user-select:text}.learn-main video{-webkit-user-drag:none;user-drag:none}.learn-aside{border-left:1px solid var(--color-line-1);background:var(--color-bg-0);padding:1.75rem 1.35rem;overflow-y:auto}.learn-nav-item{width:100%;color:var(--color-tx-3);text-align:left;border-radius:8px;align-items:center;gap:.6rem;padding:.55rem .7rem;font-size:.8125rem;transition:background .15s,color .15s;display:flex}.learn-nav-item:hover{background:var(--color-bg-3);color:var(--color-tx-1)}.learn-nav-item--active{color:var(--color-brand);box-shadow:inset 2px 0 0 var(--color-brand);background:#2563eb14;font-weight:500}@media(max-width:1024px){.learn-body{grid-template-columns:1fr}.learn-side,.learn-aside{display:none}.learn-main{padding:1.75rem 1.25rem}}.admin-shell{background:#f8fafc;grid-template-columns:248px 1fr;min-height:100vh;display:grid}.admin-sidebar{color:var(--color-tx-2);background:#fff;border-right:1px solid #eef1f5;flex-direction:column;height:100vh;padding:20px 16px 16px;display:flex;position:sticky;top:0}.admin-brand-row{border-bottom:1px solid #f0f2f5;margin-bottom:14px;padding:0 6px 16px}.admin-brand{color:inherit;align-items:center;gap:12px;text-decoration:none;display:flex}.admin-brand-text{color:var(--color-tx-1);letter-spacing:-.01em;font-size:15px;font-weight:700}.admin-brand-sub{color:var(--color-tx-4);letter-spacing:.04em;margin-top:1px;font-size:11px}.admin-nav{flex-direction:column;flex:1;gap:4px;display:flex;overflow-y:auto}.admin-nav-group{color:var(--color-tx-4);text-transform:uppercase;letter-spacing:.08em;padding:14px 12px 8px;font-size:11px;font-weight:600}.admin-nav-item{color:var(--color-tx-2);border-radius:10px;align-items:center;gap:12px;padding:10px 12px;font-size:13.5px;text-decoration:none;transition:background .18s,color .18s;display:flex;position:relative}.admin-nav-item svg{width:18px;height:18px;color:var(--color-tx-4);flex-shrink:0;transition:color .18s}.admin-nav-item:hover{color:var(--color-tx-1);background:#f1f5f9}.admin-nav-item:hover svg{color:var(--color-tx-2)}.admin-nav-item.is-active{color:#2563eb;background:#3b82f61a;font-weight:600}.admin-nav-item.is-active svg{color:#3b82f6}.admin-nav-item.is-active:before{content:"";background:#3b82f6;border-radius:0 3px 3px 0;width:3px;position:absolute;top:8px;bottom:8px;left:-16px}.admin-nav-parent{color:var(--color-tx-2);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;width:100%;padding:10px 12px;font-size:13.5px;transition:background .18s,color .18s;display:flex}.admin-nav-parent svg:first-of-type{width:18px;height:18px;color:var(--color-tx-4);flex-shrink:0;transition:color .18s}.admin-nav-parent>span{flex:1}.admin-nav-parent:hover{color:var(--color-tx-1);background:#f1f5f9}.admin-nav-parent:hover svg{color:var(--color-tx-2)}.admin-nav-parent.is-branch-active{color:#2563eb;font-weight:600}.admin-nav-parent.is-branch-active svg:first-of-type{color:#3b82f6}.admin-nav-caret{width:14px;height:14px;color:var(--color-tx-4);flex-shrink:0;transition:transform .18s}.admin-nav-parent.is-open .admin-nav-caret{transform:rotate(180deg)}.admin-nav-sub{border-left:1px dashed var(--color-line-1);flex-direction:column;gap:2px;margin-left:10px;padding:2px 0 4px 12px;display:flex}.admin-nav-item.is-child{border-radius:8px;padding:8px 10px;font-size:13px}.admin-nav-item.is-child .admin-nav-dot{background:var(--color-tx-5);border-radius:50%;flex-shrink:0;width:5px;height:5px;transition:background .18s,transform .18s;display:inline-block}.admin-nav-item.is-child:hover .admin-nav-dot{background:var(--color-tx-3)}.admin-nav-item.is-child.is-active{color:#2563eb;background:#3b82f61a;font-weight:600}.admin-nav-item.is-child.is-active .admin-nav-dot{background:#3b82f6;transform:scale(1.3)}.admin-nav-item.is-child.is-active:before{display:none}.admin-sidebar-foot{color:var(--color-tx-3);border-top:1px solid #f0f2f5;align-items:center;gap:8px;margin-top:10px;padding:12px 12px 4px;font-size:12px;font-weight:500;display:flex}.pulse-dot{background:#10b981;border-radius:50%;width:8px;height:8px;display:inline-block;position:relative;box-shadow:0 0 0 2px #10b98126}.pulse-dot:before{content:"";opacity:.5;background:#10b981;border-radius:50%;animation:2.2s ease-out infinite bf-pulse;position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px}@keyframes bf-pulse{0%{opacity:.55;transform:scale(.8)}70%{opacity:0;transform:scale(2.6)}to{opacity:0;transform:scale(2.6)}}.admin-main{flex-direction:column;min-width:0;display:flex}.admin-topbar{z-index:30;-webkit-backdrop-filter:blur(20px)saturate(160%);background:#f8fafcd9;border-bottom:1px solid #eef1f5;align-items:center;gap:16px;padding:14px 28px;display:flex;position:sticky;top:0}.admin-crumbs{align-items:center;gap:6px;font-size:13px;display:flex}.admin-search{background:#fff;border:1px solid #e1e6ed;border-radius:10px;flex:1;align-items:center;gap:8px;min-width:260px;max-width:360px;height:36px;padding:0 10px 0 12px;transition:border-color .15s,box-shadow .15s;display:flex}.admin-search:focus-within{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.admin-search svg{width:16px;height:16px;color:var(--color-tx-4)}.admin-search input{color:var(--color-tx-1);background:0 0;border:0;outline:0;flex:1;font-size:13px}.admin-search input::placeholder{color:var(--color-tx-4)}.admin-search kbd{color:var(--color-tx-3);background:#f8fafc;border:1px solid #e1e6ed;border-radius:5px;padding:2px 6px;font-size:10px}.admin-user{background:#fff;border:1px solid #eef1f5;border-radius:12px;align-items:center;gap:10px;padding:4px 4px 4px 8px;transition:border-color .15s,box-shadow .15s;display:flex}.admin-user:hover{box-shadow:var(--shadow-xs);border-color:#e1e6ed}.admin-user img{object-fit:cover;border-radius:9px;width:30px;height:30px}.admin-user-name{color:var(--color-tx-1);font-size:12.5px;font-weight:600}.admin-user-email{color:var(--color-tx-4);font-size:11px}.admin-user-logout{width:30px;height:30px;color:var(--color-tx-4);border-radius:8px;place-items:center;transition:background .15s,color .15s;display:grid}.admin-user-logout:hover{color:#dc2626;background:#ef444414}.admin-user-logout svg{width:15px;height:15px}.admin-page{width:100%;min-width:0;padding:24px 28px 56px}.admin-hero{background:radial-gradient(140% 120% at 100% 0,#3b82f61a,#0000 60%),linear-gradient(#fff,#f8fafc);border:1px solid #eef1f5;border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;padding:22px 24px;display:flex}.admin-hero-eyebrow{color:#2563eb;text-transform:uppercase;letter-spacing:.12em;margin-bottom:6px;font-size:11px;font-weight:600}.admin-hero-title{color:var(--color-tx-1);letter-spacing:-.015em;font-size:20px;font-weight:700}.admin-hero-sub{color:var(--color-tx-3);margin-top:4px;font-size:13px}.admin-hero-meta{color:var(--color-tx-3);background:#fff;border:1px solid #eef1f5;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:12.5px;display:flex}.admin-metric-card{background:#fff;border:1px solid #f0f2f5;border-radius:14px;align-items:flex-start;gap:14px;padding:18px 20px;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 10px 15px -3px #0000000a,0 1px 2px #00000005}.admin-metric-card:hover{transform:translateY(-2px);box-shadow:0 20px 30px -8px #0f172a0f,0 4px 8px -2px #0f172a0a}.admin-metric-icon{border-radius:12px;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.admin-metric-icon svg{width:20px;height:20px}.admin-metric-label{color:var(--color-tx-4);font-size:12px;font-weight:500}.admin-metric-value{color:var(--color-tx-1);letter-spacing:-.02em;margin:2px 0;font-size:24px;font-weight:700;line-height:1.2}.admin-metric-sub{color:#10b981;font-size:11.5px}.admin-metric-sub svg{color:#10b981}.admin-tint-blue{color:#2563eb;background:#3b82f61a}.admin-tint-emerald{color:#059669;background:#10b9811f}.admin-tint-amber{color:#d97706;background:#f59e0b24}.admin-tint-violet{color:#4f46e5;background:#6366f11f}.admin-tint-slate{color:#475569;background:#f1f5f9}.admin-card-title{color:var(--color-tx-1);letter-spacing:-.01em;font-size:15px;font-weight:700}.admin-card-sub{color:var(--color-tx-4);margin-top:2px;font-size:12px}.admin-chart-card{background:#fff;border:1px solid #f0f2f5;border-radius:16px;padding:20px 22px;box-shadow:0 10px 15px -3px #0000000a}.admin-series-switch{background:#f1f5f9;border:1px solid #eef1f5;border-radius:10px;gap:2px;padding:3px;display:inline-flex}.admin-series-switch button{color:var(--color-tx-3);border-radius:7px;padding:6px 12px;font-size:12px;font-weight:500;transition:background .15s,color .15s,box-shadow .15s}.admin-series-switch button:hover{color:var(--color-tx-1)}.admin-series-switch button.is-active{color:#2563eb;background:#fff;font-weight:600;box-shadow:0 1px 2px #0f172a0f}.admin-chart-summary{justify-content:space-between;align-items:flex-end;gap:12px;margin:14px 0 8px;display:flex}.admin-chart-cur{color:var(--color-tx-1);letter-spacing:-.025em;font-size:30px;font-weight:700;line-height:1}.admin-chart-sub{color:var(--color-tx-4);margin-top:4px;font-size:12px}.admin-chart-delta{border-radius:999px;align-items:center;gap:4px;padding:5px 10px;font-size:12px;font-weight:600;display:inline-flex}.admin-chart-delta.is-up{color:#059669;background:#10b9811a}.admin-chart-delta.is-down{color:#dc2626;background:#ef444414}.admin-chart-delta.is-down svg{color:#dc2626}.admin-chart-wrap{padding-top:8px;position:relative}.admin-chart-svg{width:100%;height:200px;display:block;overflow:visible}.admin-chart-point-active{r:5;fill:#3b82f6;stroke:#fff;stroke-width:2px}.admin-chart-overlay{pointer-events:none;height:200px;position:absolute;top:8px;left:0;right:0}.admin-chart-hit{pointer-events:auto;width:36px;position:absolute;transform:translate(-50%)}.admin-chart-xaxis{color:var(--color-tx-4);font-size:11px;font-family:var(--font-family-mono);justify-content:space-between;margin-top:10px;display:flex}.admin-chart-tooltip{color:#fff;white-space:nowrap;pointer-events:none;z-index:2;background:#0f172a;border-radius:10px;padding:8px 12px;font-size:12px;position:absolute;transform:translate(-50%,calc(-100% - 14px));box-shadow:0 8px 20px -6px #0f172a66}.admin-chart-tooltip:after{content:"";border:5px solid #0000;border-top-color:#0f172a;position:absolute;top:100%;left:50%;transform:translate(-50%)}.admin-chart-tooltip-d{color:#fff9;font-size:10.5px;font-family:var(--font-family-mono)}.admin-chart-tooltip-v{margin:2px 0;font-size:15px;font-weight:700}.admin-chart-tooltip-l{color:#ffffffb3;font-size:10.5px}.admin-quick-card{background:#fff;border:1px solid #f0f2f5;border-radius:16px;padding:20px 22px;box-shadow:0 10px 15px -3px #0000000a}.admin-quick{background:#fff;border:1px solid #f0f2f5;border-radius:12px;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex}.admin-quick:hover{border-color:#3b82f64d;transform:translateY(-1px);box-shadow:0 8px 16px -4px #0f172a0f}.admin-quick:hover .admin-quick-arrow{color:#3b82f6;transform:translate(3px)}.admin-quick-ico{border-radius:10px;flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}.admin-quick-ico svg{width:17px;height:17px}.admin-quick-t{color:var(--color-tx-1);font-size:13.5px;font-weight:600}.admin-quick-s{color:var(--color-tx-4);margin-top:1px;font-size:11.5px}.admin-quick-arrow{width:15px;height:15px;color:var(--color-tx-5);flex-shrink:0;transition:color .18s,transform .18s}.admin-kpi-grid{background:#fff;border:1px solid #f0f2f5;border-radius:14px;grid-template-columns:repeat(4,1fr);gap:0;display:grid;overflow:hidden;box-shadow:0 10px 15px -3px #0000000a}.admin-kpi-grid>div{border-bottom:1px solid #f0f2f5;border-right:1px solid #f0f2f5;padding:18px 20px}.admin-kpi-grid>div:nth-child(4n){border-right:none}.admin-kpi-grid>div:nth-last-child(-n+4){border-bottom:none}.admin-kpi-v{color:var(--color-tx-1);letter-spacing:-.015em;font-size:20px;font-weight:700}.admin-kpi-l{color:var(--color-tx-4);margin-top:4px;font-size:12px}.mini-tbl-wrap{overflow-x:auto}.mini-tbl-wrap>.mini-tbl{min-width:900px}.mini-tbl{border-collapse:separate;border-spacing:0;width:100%;font-size:13.5px}.mini-tbl thead th{text-align:left;color:var(--color-tx-4);letter-spacing:.04em;text-transform:uppercase;background:#f8fafc;border-bottom:1px solid #f0f2f5;padding:11px 14px;font-size:11.5px;font-weight:600}.mini-tbl tbody td{vertical-align:middle;color:var(--color-tx-2);border-bottom:1px solid #f0f2f5;padding:13px 14px}.mini-tbl tbody tr:last-child td{border-bottom:none}.mini-tbl tbody tr:hover{background:#f8fafc}.mini-tbl td .btn-sm+.btn-sm{margin-left:4px}@media(max-width:1100px){.admin-shell{grid-template-columns:72px 1fr}.admin-brand-text,.admin-brand-sub,.admin-nav-group,.admin-nav-item span,.admin-nav-parent>span,.admin-nav-caret,.admin-sidebar-foot span:last-child{display:none}.admin-brand{justify-content:center}.admin-brand-row{padding:0 0 16px}.admin-nav-item,.admin-nav-parent{justify-content:center;padding:10px}.admin-nav-item.is-active:before{left:-14px}.admin-nav-sub{border-left:0;margin-left:0;padding:0}.admin-nav-item.is-child{justify-content:center;padding:10px}.admin-nav-item.is-child .admin-nav-dot{display:none}.admin-sidebar-foot{justify-content:center}.admin-kpi-grid{grid-template-columns:repeat(2,1fr)}.admin-kpi-grid>div:nth-child(2n){border-right:none}.admin-kpi-grid>div:nth-child(odd){border-right:1px solid #f0f2f5}.admin-kpi-grid>div:nth-last-child(-n+2){border-bottom:none}}@media(max-width:720px){.admin-shell{grid-template-columns:1fr}.admin-sidebar{flex-flow:wrap;align-items:center;height:auto;padding:10px;position:relative}.admin-brand-row{border-bottom:none;margin:0 auto 0 0;padding:0}.admin-nav{flex-flow:wrap;gap:4px}.admin-nav-group{display:none}.admin-nav-item{padding:6px 10px;font-size:12.5px}.admin-nav-item.is-active:before,.admin-nav-parent,.admin-nav-sub,.admin-nav-caret,.admin-sidebar-foot{display:none}.admin-page{padding:18px}.admin-search{display:none}}.dropdown{display:inline-block;position:relative}.dropdown-menu{z-index:60;background:#fff;border:1px solid #eaecef;border-radius:12px;min-width:180px;padding:6px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 18px 40px -18px #0f172a2e,0 6px 14px -8px #0f172a14}.dropdown-menu.is-floating{z-index:1200;min-width:200px;position:fixed;top:0;left:0;right:auto}.dropdown-menu.is-floating.is-flip{transform-origin:100% 100%}.dropdown-item{color:var(--color-tx-1);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;width:100%;padding:8px 10px;font-size:13px;text-decoration:none;transition:background .12s;display:flex}.dropdown-item:hover{color:var(--color-brand);background:#f5f7fa}.dropdown-item svg{width:16px;height:16px;color:var(--color-tx-4);flex-shrink:0}.dropdown-item:hover svg{color:var(--color-brand)}.dropdown-item.is-danger{color:#b91c1c}.dropdown-item.is-danger:hover{color:#991b1b;background:#ef444414}.dropdown-item.is-danger svg{color:#dc2626}.dropdown-sep{background:#f0f2f5;height:1px;margin:4px 6px}.batch-bar{z-index:20;background:linear-gradient(#eef4ff,#f5f9ff);border:1px solid #3b82f640;border-radius:12px;padding:10px 14px;position:sticky;top:64px}.chk{width:16px;height:16px;accent-color:var(--color-brand);cursor:pointer;vertical-align:middle}.mini-tbl tr.row-selected{background:#3b82f60a}.icon-btn-danger{color:#b91c1c}.icon-btn-danger:hover{color:#991b1b;background:#ef44440f;border-color:#ef444459}.price-cut{color:var(--color-promo);margin-right:4px}.price-old{color:var(--color-tx-4);font-weight:400;text-decoration:line-through}.status-pop{display:inline-block;position:relative}.status-btn{cursor:pointer;align-items:center;gap:4px;padding:2px 8px 2px 10px;font-weight:500;transition:box-shadow .12s,filter .12s;display:inline-flex}.status-btn.is-clickable:hover{filter:brightness(.97);box-shadow:0 0 0 3px #3b82f61a}.status-btn.is-locked{cursor:not-allowed;opacity:.85}.status-btn[disabled]{cursor:not-allowed}.status-pop-menu{background:var(--color-bg-0);border:1px solid var(--color-line-1);z-index:50;border-radius:10px;min-width:104px;padding:4px;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 10px 28px #0f172a1a}.status-pop-item{width:100%;color:var(--color-tx-2);text-align:left;border-radius:6px;align-items:center;gap:8px;padding:7px 10px;font-size:13px;transition:background .12s;display:flex}.status-pop-item:hover{color:var(--color-tx-1);background:#f3f6fb}.status-pop-item.is-active{color:var(--color-brand);background:#3b82f60f;font-weight:600}.status-pop-item .dot{border-radius:8px;width:8px;height:8px;display:inline-block}.cat-tree{padding:4px}.cat-node{border-radius:10px;margin:2px 0}.cat-node[draggable=true]{cursor:grab}.cat-row{background:#fff;border:1px solid #0000;border-radius:10px;align-items:center;gap:12px;padding:10px 12px;transition:background .15s,border-color .15s;display:flex}.cat-row:hover{background:#f8fafc}.cat-row.is-child{background:#f8fafc;margin-left:32px}.cat-row.is-drop{background:#3b82f614;border-color:#3b82f666}.cat-handle{width:22px;height:22px;color:var(--color-tx-4);cursor:grab;flex-shrink:0;place-items:center;display:grid}.cat-handle svg{width:14px;height:14px}.cat-title{color:var(--color-tx-1);font-size:14px;font-weight:600}.cat-slug{color:var(--color-tx-4);font-size:12px}.cat-row-actions{gap:6px;margin-left:auto;display:flex}.cat-children{margin-top:4px;padding-left:0}.cat-node.is-group-node{border-radius:12px;padding:2px;transition:background .15s,box-shadow .15s}.cat-node.is-group-node.is-drop-zone{background:#3b82f60f;box-shadow:inset 0 0 0 1.5px #3b82f673}.cat-empty-drop{border:1.5px dashed var(--color-line-2);color:var(--color-tx-4);text-align:center;background:#fafbfc;border-radius:10px;margin-top:4px;margin-left:32px;padding:14px 12px;font-size:12.5px;transition:background .15s,border-color .15s,color .15s}.cat-empty-drop.is-drop{color:#1d4ed8;background:#3b82f614;border-color:#3b82f680}.wizard-wrap{flex-direction:column;gap:16px;padding-bottom:100px;display:flex}.wizard-head{flex-wrap:wrap;align-items:center;gap:24px;padding:16px 20px;display:flex}.back-link{color:var(--color-tx-3);border-radius:8px;align-items:center;gap:6px;padding:6px 10px;font-size:13px;text-decoration:none;transition:all .15s;display:inline-flex}.back-link:hover{color:var(--color-brand);background:#3b82f60f}.back-link svg{width:16px;height:16px}.wizard-id{color:var(--color-tx-4);align-items:center;gap:6px;margin-left:auto;font-size:12px;display:flex}.wizard-id code{color:var(--color-brand);font-weight:600}.stepper{flex:520px;align-items:stretch;gap:0;min-width:0;display:flex}.step{cursor:pointer;flex:1 1 0;align-items:center;gap:12px;min-width:0;padding:4px 10px;display:flex;position:relative}.step-num{width:32px;height:32px;color:var(--color-tx-3);background:#f1f5f9;border:1.5px solid #e2e8f0;border-radius:999px;flex-shrink:0;place-items:center;font-size:14px;font-weight:600;transition:all .2s;display:grid}.step-num svg{width:16px;height:16px}.step-meta{flex-direction:column;gap:2px;min-width:0;display:flex}.step-label{color:var(--color-tx-2);white-space:nowrap;font-size:13px;font-weight:600}.step-desc{color:var(--color-tx-4);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.step-line{pointer-events:none;background:#e2e8f0;border-radius:2px;width:16px;height:2px;position:absolute;top:50%;right:-8px;transform:translateY(-50%)}.step.is-active .step-num{background:var(--color-brand);border-color:var(--color-brand);color:#fff;box-shadow:0 4px 10px -3px #3b82f673}.step.is-active .step-label{color:var(--color-brand)}.step.is-done .step-num{color:var(--color-brand);background:#3b82f61a;border-color:#3b82f680}.step.is-done .step-line,.step.is-active:not(:first-child)~.step .step-line{background:#e2e8f0}.step.is-done~.step .step-line,.step.is-active .step-line{background:#3b82f666}.wizard-body{flex-direction:column;gap:16px;display:flex}.sec-head{border-bottom:1px solid #f0f2f5;flex-wrap:wrap;align-items:baseline;gap:12px;padding-bottom:8px;display:flex}.sec-title{color:var(--color-tx-1);font-size:16px;font-weight:700}.sec-desc{color:var(--color-tx-4);font-size:12.5px}.label.sm{font-size:12px}.field-cur .cur{color:var(--color-tx-4);pointer-events:none;font-size:13px;font-weight:600;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.field-cur .input{padding-left:36px}.field-tip{color:var(--color-tx-4);margin-top:4px;font-size:11.5px}.dropzone{cursor:pointer;background:#f8fafc;border:2px dashed #cbd5e1;border-radius:14px;place-items:center;min-height:220px;transition:all .18s;display:grid;position:relative;overflow:hidden}.dropzone:hover{border-color:var(--color-brand);background:#3b82f60a}.dropzone.is-drag{border-color:var(--color-brand);background:#3b82f614}.dropzone.is-has{min-height:220px;padding:0}.dropzone.is-busy{cursor:default}.dz-empty{text-align:center;color:var(--color-tx-3);padding:18px}.dz-empty svg{color:#94a3b8;width:36px;height:36px;margin:0 auto 10px}.dz-tt{color:var(--color-tx-2);margin-bottom:4px;font-size:14px;font-weight:600}.dz-desc{color:var(--color-tx-4);font-size:12px}.dz-busy{text-align:center;color:var(--color-tx-3);place-items:center;gap:8px;padding:18px;display:grid}.spinner{border:2.5px solid #e2e8f0;border-top-color:var(--color-brand);border-radius:999px;width:28px;height:28px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.dz-preview{background:#f8fafc;border-radius:10px;width:100%;height:220px;position:relative;overflow:hidden}.dz-preview img{object-fit:contain;object-position:center;background:#f8fafc;width:100%;height:100%;padding:12px;display:block}.dz-actions{opacity:0;gap:6px;transition:opacity .15s;display:flex;position:absolute;top:8px;right:8px}.dz-preview:hover .dz-actions{opacity:1}.dz-actions .btn{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff2}.toolbar{gap:4px;margin-left:auto;display:inline-flex}.tb-btn{min-width:28px;height:28px;color:var(--color-tx-2);cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:0 8px;font-size:12px;font-weight:600;transition:all .12s}.tb-btn:hover{color:var(--color-brand);border-color:#3b82f659}.syllabus{flex-direction:column;gap:14px;display:flex}.sy-chapter{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.sy-chapter-row{background:#f8fafc;border-bottom:1px solid #f0f2f5;align-items:center;gap:10px;padding:12px 14px;display:flex}.sy-badge{height:24px;color:var(--color-brand);letter-spacing:.2px;background:#3b82f61a;border-radius:999px;justify-content:center;align-items:center;padding:0 10px;font-size:11px;font-weight:700;display:inline-flex}.sy-title{flex:auto;height:36px}.sy-dur{text-align:right;width:80px;height:34px;padding:0 10px}.sy-sections{flex-direction:column;gap:10px;padding:12px 14px;display:flex}.sy-section{background:#fefefe;border:1px solid #f0f2f5;border-radius:10px}.sy-section-row{border-bottom:1px dashed #f0f2f5;align-items:center;gap:8px;padding:10px 12px;display:flex}.sy-sub{min-width:32px;height:22px;color:var(--color-tx-3);background:#f1f5f9;border-radius:6px;justify-content:center;align-items:center;padding:0 8px;font-size:11px;font-weight:700;display:inline-flex}.sy-section-body{grid-template-columns:1fr 1fr;gap:12px;padding:10px 12px;display:grid}@media(max-width:860px){.sy-section-body{grid-template-columns:1fr}}.atts{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.att{color:var(--color-tx-2);background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:6px;max-width:260px;padding:4px 6px 4px 8px;font-size:12px;display:inline-flex}.att svg{width:13px;height:13px;color:var(--color-tx-4)}.att-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.att-size{color:var(--color-tx-4);font-size:11px}.att-rm{width:18px;height:18px;color:var(--color-tx-4);cursor:pointer;background:0 0;border:none;border-radius:4px;font-size:14px}.att-rm:hover{color:#dc2626;background:#ef444414}.att-add{color:var(--color-brand);cursor:pointer;background:#fff;border:1px dashed #cbd5e1;border-radius:6px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:500;transition:all .12s;display:inline-flex}.att-add:hover{border-color:var(--color-brand);background:#3b82f60a}.att-add.is-busy{cursor:progress;color:var(--color-tx-4)}.sy-add{width:100%;color:var(--color-brand);cursor:pointer;background:#fff;border:1.5px dashed #cbd5e1;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:12px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.sy-add:hover{border-color:var(--color-brand);background:#3b82f60a}.sy-add.sm{padding:8px;font-size:12.5px}.sy-add svg{width:16px;height:16px}.status-pick{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}@media(max-width:720px){.status-pick{grid-template-columns:1fr}}.status-pick-item{cursor:pointer;background:#fff;border:1.5px solid #e5e7eb;border-radius:10px;align-items:flex-start;gap:10px;padding:12px 14px;transition:all .15s;display:flex}.status-pick-item:hover{background:#3b82f608;border-color:#3b82f666}.status-pick-item.is-active{border-color:var(--color-brand);background:#3b82f60f;box-shadow:0 0 0 3px #3b82f61a}.sp-dot{border-radius:999px;flex-shrink:0;width:10px;height:10px;margin-top:5px}.sp-label{color:var(--color-tx-1);font-size:13px;font-weight:600}.sp-desc{color:var(--color-tx-4);margin-top:2px;font-size:11.5px}.wizard-preview{height:fit-content;position:sticky;top:84px}.wp-title{color:var(--color-tx-4);letter-spacing:.3px;text-transform:uppercase;margin-bottom:10px;font-size:12px}.wp-cover{background:linear-gradient(135deg,#3b82f6,#1d4ed8) 50%/cover;border-radius:10px;height:140px;position:relative;overflow:hidden}.wp-cover-empty{color:#ffffffe6;background:linear-gradient(135deg,#3b82f6,#1d4ed8);place-items:center;font-size:12px;display:grid;position:absolute;top:0;right:0;bottom:0;left:0}.wp-body{padding-top:14px}.wp-course-title{color:var(--color-tx-1);margin-bottom:6px;font-size:15px;font-weight:700;line-height:1.45}.wp-meta{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.wp-price{background:#f8fafc;border-radius:10px;padding:12px 14px}.wp-cut{color:var(--color-promo);font-size:22px;font-weight:800}.wp-old{color:var(--color-tx-4);font-size:12px;text-decoration:line-through}.wp-cur{color:var(--color-tx-1);font-size:22px;font-weight:800}.wp-pts{color:var(--color-tx-3);margin-top:6px;font-size:12px}.wp-pts b{color:var(--color-brand)}.wp-syll{justify-content:space-between;align-items:center;margin-top:14px;display:flex}.wp-syll-tt{color:var(--color-tx-3);font-size:12.5px}.wp-syll-count{color:var(--color-tx-4);font-size:12px}.action-bar{z-index:50;-webkit-backdrop-filter:saturate(180%)blur(12px);backdrop-filter:saturate(180%)blur(12px);background:#ffffffeb;border-top:1px solid #eaecef;align-items:center;gap:10px;padding:12px 24px;display:flex;position:fixed;bottom:0;left:240px;right:0;box-shadow:0 -8px 24px -12px #0f172a14}.ab-tip{border-radius:999px;padding:5px 12px;font-size:12.5px;font-weight:500}.ab-tip.is-ok{color:#047857;background:#10b9811a}.ab-tip.is-err{color:#b91c1c;background:#ef444414}.btn.is-pending{animation:1.6s ease-in-out infinite abPulse}@keyframes abPulse{0%,to{box-shadow:0 0 #3b82f659}50%{box-shadow:0 0 0 6px #3b82f600}}@media(max-width:1024px){.action-bar{left:200px}}@media(max-width:720px){.action-bar{padding:10px 14px;left:0}.wizard-wrap{padding-bottom:140px}}.list-card{background:#fefefe;border:1px solid #e5e7eb;border-radius:12px;padding:16px}.list-card.is-req{background:linear-gradient(#3b82f608,#fff);border-color:#3b82f640}.list-card.is-out{background:linear-gradient(#10b98108,#fff);border-color:#10b98140}.lc-head{align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.lc-ic{border-radius:10px;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.lc-ic svg{width:16px;height:16px}.lc-ic.ic-req{color:#2563eb;background:#3b82f61a}.lc-ic.ic-out{color:#10b981;background:#10b9811a}.lc-tt{color:var(--color-tx-1);font-size:14px;font-weight:700}.lc-sub{color:var(--color-tx-4);margin-top:1px;font-size:12px}.lc-items{flex-direction:column;gap:8px;display:flex}.lc-row{align-items:center;gap:8px;display:flex}.lc-bullet{width:22px;height:32px;color:var(--color-tx-4);flex-shrink:0;place-items:center;font-weight:700;display:grid}.list-card.is-out .lc-bullet{color:#10b981}.list-card.is-req .lc-bullet{color:#2563eb}.sy-chapter{cursor:default;transition:transform .15s,box-shadow .15s,opacity .15s}.sy-chapter.is-dragging{opacity:.45}.sy-chapter.is-drop-target{transform:translateY(-1px);box-shadow:0 0 0 2px #3b82f6,0 4px 10px #3b82f626}.sy-section{cursor:default;transition:transform .15s,box-shadow .15s,opacity .15s}.sy-section.is-dragging{opacity:.45}.sy-section.is-drop-target{transform:translateY(-1px);box-shadow:0 0 0 2px #3b82f6,0 2px 8px #3b82f61f}.sy-grip{color:#94a3b8;cursor:grab;border-radius:6px;flex-shrink:0;place-items:center;width:26px;height:30px;transition:background .15s,color .15s;display:inline-grid}.sy-grip:hover{color:#3b82f6;background:#3b82f614}.sy-grip:active{cursor:grabbing}.sy-grip svg{width:14px;height:14px}.btn.btn-xs{height:auto;padding:4px 10px;font-size:12px}.req{color:#ef4444;margin-left:4px;font-weight:600}.pm-wrap{background:#fff;border:1px solid #e2e8f0;border-radius:10px;transition:border-color .15s,box-shadow .15s;overflow:hidden}.pm-wrap:focus-within{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.pm-toolbar{background:#f8fafc;border-bottom:1px solid #e2e8f0;flex-wrap:wrap;align-items:center;gap:2px;padding:8px 10px;display:flex}.tb-sep{background:#e2e8f0;width:1px;height:18px;margin:0 4px;display:inline-block}.pm-host{padding:0}.pm-editor-bordered{background:#fff;border:1px solid #e2e8f0;border-radius:10px;transition:border-color .15s,box-shadow .15s;overflow:hidden}.pm-editor-bordered:focus-within{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.pm-editor-bordered .pm-toolbar-builtin{border-bottom:1px solid #e2e8f0}.ProseMirror img{border-radius:6px;max-width:100%;height:auto;margin:.6em auto;display:block}.pm-host-md .ProseMirror{min-height:180px}.pm-host-lg .ProseMirror{min-height:260px}.ProseMirror{color:#1e293b;white-space:pre-wrap;word-wrap:break-word;outline:none;padding:14px 16px;font-size:14px;line-height:1.75}.ProseMirror:focus{outline:none}.ProseMirror p{margin:0 0 .7em}.ProseMirror p:last-child{margin-bottom:0}.ProseMirror h1{color:#0f172a;margin:.6em 0 .4em;font-size:22px;font-weight:700}.ProseMirror h2{color:#0f172a;margin:.6em 0 .4em;font-size:18px;font-weight:600}.ProseMirror h3{color:#1e293b;margin:.5em 0 .3em;font-size:15px;font-weight:600}.ProseMirror ul,.ProseMirror ol{margin:.4em 0 .7em;padding-left:24px}.ProseMirror ul li,.ProseMirror ol li{margin:.2em 0}.ProseMirror blockquote{color:#475569;background:#f8fafc;border-left:3px solid #cbd5e1;border-radius:0 8px 8px 0;margin:.6em 0;padding:4px 14px}.ProseMirror pre{color:#e2e8f0;white-space:pre;background:#0f172a;border-radius:8px;margin:.6em 0;padding:12px 14px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;line-height:1.7;overflow-x:auto}.ProseMirror code{color:#0f172a;background:#eef2f7;border-radius:4px;padding:1px 5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px}.ProseMirror pre code{color:inherit;background:0 0;padding:0;font-size:12.5px}.ProseMirror hr{border:none;border-top:1px solid #e2e8f0;margin:1em 0}.ProseMirror a{color:#2563eb;text-underline-offset:2px;text-decoration:underline}.ProseMirror table{border-collapse:collapse;table-layout:auto;white-space:normal;width:100%;margin:.8em 0 1em}.ProseMirror th,.ProseMirror td{vertical-align:top;border:1px solid #cbd5e1;min-width:80px;padding:8px 10px}.ProseMirror th{color:#0f172a;background:#f8fafc;font-weight:700}.ProseMirror td{background:#fff}.ProseMirror th>:last-child,.ProseMirror td>:last-child{margin-bottom:0}.ProseMirror .pm-empty:first-child:before{content:attr(data-placeholder);color:#94a3b8;pointer-events:none;float:left;height:0}.ProseMirror-selectednode{outline:2px solid #3b82f6}.vid-uploading{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:10px;align-items:center;gap:12px;padding:22px 18px;display:flex}.vid-uploading .vu-bar{background:#e2e8f0;border-radius:999px;flex:1;height:6px;overflow:hidden}.vid-uploading .vu-fill{background:linear-gradient(90deg,#60a5fa,#3b82f6);height:100%;transition:width .2s}.vid-uploading .vu-meta{color:var(--color-brand);text-align:right;min-width:92px;font-size:12px;font-weight:600}.vid-view{flex-direction:column;gap:8px;display:flex}.vid-view .vid-player{background:#000;border-radius:10px;outline:none;width:100%;max-height:360px}.vid-view .vid-foot{color:var(--color-tx-3);background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:6px 10px;font-size:12px;display:flex}.vid-view .vid-foot .truncate{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.vid-toolbar{background:linear-gradient(#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:10px 14px;display:flex}.vid-toolbar__meta{flex:auto;align-items:center;gap:10px;min-width:0;display:flex}.vid-toolbar__badge{color:#047857;white-space:nowrap;background:#10b9811a;border:1px solid #10b98147;border-radius:999px;align-items:center;gap:6px;padding:2px 10px;font-size:11.5px;font-weight:500;display:inline-flex}.vid-toolbar__badge .dot{background:#10b981;border-radius:999px;width:6px;height:6px;box-shadow:0 0 0 3px #10b9812e}.vid-toolbar__actions{flex:none;align-items:center;gap:8px;display:flex}.vid-btn-danger{color:#dc2626!important;border-color:#dc262638!important}.vid-btn-danger:hover{background:#dc26260f!important;border-color:#dc262666!important}.sec-editor{background:#fff;border:1px solid #eaecef;border-radius:12px;overflow:hidden}.sul-hint{padding:0 6px}.sec-body{background:#f8fafc;padding:14px}.sec-pane{padding:0}.sec-fade[style*="display: none"]{display:none!important}.pm-wrap-clean{background:#fff;border-radius:12px}.pm-toolbar.is-sticky{z-index:2;background:#f9fafb;border-bottom:1px solid #edf0f4;border-radius:12px 12px 0 0;position:sticky;top:0}.pm-toolbar .tb-btn svg{color:#475569;width:14px;height:14px}.pm-toolbar .tb-btn:hover svg{color:#3b82f6}.vid-center{flex-direction:column;gap:14px;display:flex}.vsrc-seg{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:10px;width:fit-content;padding:3px;display:inline-flex}.vsrc-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:7px;align-items:center;gap:6px;padding:6px 12px;font-size:12.5px;font-weight:500;transition:all .15s;display:inline-flex}.vsrc-btn svg{width:14px;height:14px}.vsrc-btn:hover{color:#1e293b}.vsrc-btn.is-active{color:#3b82f6;background:#fff;box-shadow:0 1px 2px #0f172a0f}.vid-drop{cursor:pointer;background:#fff;border:1px dashed #cbd5e1;border-radius:12px;align-items:center;gap:14px;padding:18px;transition:all .2s;display:flex}.vid-drop:hover,.vid-drop.is-drag{background:#f0f9ff;border-color:#3b82f6}.vid-drop-lg{text-align:center;flex-direction:column;padding:36px 20px}.vid-drop-lg .vd-icon{color:#3b82f6;background:#3b82f614;border-radius:14px;justify-content:center;align-items:center;width:54px;height:54px;display:inline-flex}.vid-drop-lg .vd-icon svg{width:24px;height:24px}.vid-drop-lg .vd-tt{color:#1e293b;margin-top:10px;font-size:14px;font-weight:600}.vid-drop-lg .vd-desc{color:#94a3b8;margin-top:4px;font-size:12px}.vid-uploading-lg{border-radius:12px;padding:28px 20px}.vid-err{color:#b91c1c;background:#ef44440f;border:1px solid #ef444440;border-radius:10px;padding:10px 12px;font-size:12.5px}.field-cur{position:relative}.field-cur .cur{pointer-events:none}.sec-seg-head{background:#fff;border-bottom:1px solid #eaecef;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.sy-section-body.sec-editor{grid-template-columns:none;gap:0;padding:0;display:block}.vsrc-btn .vsrc-req,.vsrc-btn .vsrc-opt{color:#94a3b8;background:#94a3b824;border-radius:999px;padding:1px 6px;font-size:10.5px;font-weight:500;line-height:1.4}.vsrc-btn.is-active .vsrc-req{color:#dc2626;background:#ef44441f}.vsrc-btn.is-active .vsrc-opt{color:#3b82f6;background:#3b82f61f}.vsrc-dot{background:#10b981;border-radius:8px;width:6px;height:6px;display:inline-block;box-shadow:0 0 0 2px #10b9812e}.sy-section.is-expanded{background:#fff;border-color:#3b82f659;box-shadow:0 1px #0f172a05,0 6px 18px -6px #3b82f62e}.sy-section:not(.is-expanded) .sy-section-row{border-bottom:none}.sy-toggle{white-space:nowrap;flex:none;align-items:center;gap:4px;display:inline-flex}.sy-toggle svg{width:14px;height:14px}.sy-collapse-btn{width:24px;height:24px;color:var(--color-tx-3);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:none;justify-content:center;align-items:center;transition:background .12s,color .12s;display:inline-flex}.sy-collapse-btn:hover{color:var(--color-tx-1);background:#0f172a0f}.sy-collapse-btn svg{width:14px;height:14px}.sy-chapter-meta{color:var(--color-tx-4);background:#0f172a0a;border-radius:999px;flex:none;padding:2px 8px;font-size:12px}.sy-chips{flex:none;align-items:center;gap:6px;display:inline-flex}.sy-chip{height:22px;color:var(--color-tx-4);background:#f8fafc;border:1px solid #e5e7eb;border-radius:999px;align-items:center;gap:4px;padding:0 8px;font-size:11.5px;font-weight:500;line-height:1;display:inline-flex}.sy-chip svg{width:12px;height:12px}.sy-chip.is-filled{color:#047857;background:#10b98114;border-color:#10b98159}.lab-wizard-panel{max-width:860px}.lab-section{border:1px solid var(--color-line-1);background:#fff;border-radius:12px;padding:14px 16px 16px}.lab-section+.lab-section{margin-top:0}.lab-section-title{color:var(--color-tx-1);letter-spacing:.01em;margin-bottom:10px;font-size:13px;font-weight:600}.lab-hint{color:var(--color-tx-4);background:#f8fafc;border:1px dashed #e5e7eb;border-radius:10px;padding:10px 12px;font-size:12px}.lab-tag-picker{border:1px solid var(--color-line-2);background:#fff;border-radius:10px;flex-wrap:wrap;align-items:center;gap:6px;min-height:40px;padding:6px 8px;transition:border-color .15s,box-shadow .15s;display:flex}.lab-tag-picker:focus-within{border-color:var(--color-brand);box-shadow:0 0 0 3px #3b82f61f}.lab-tag-chip{color:#1d4ed8;background:#3b82f614;border:1px solid #3b82f633;border-radius:999px;align-items:center;gap:4px;height:26px;padding:0 6px 0 10px;font-size:12px;font-weight:500;display:inline-flex}.lab-tag-chip button{text-align:center;color:#1d4ed8;opacity:.7;cursor:pointer;background:0 0;border:0;border-radius:999px;width:16px;height:16px;font-size:12px;line-height:14px}.lab-tag-chip button:hover{opacity:1;background:#3b82f62e}.lab-tag-input{min-width:160px;height:28px;color:var(--color-tx-1);background:0 0;border:0;outline:none;flex:1;padding:0 6px;font-size:13px}.lab-tag-suggest{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.lab-tag-suggest-chip{height:24px;color:var(--color-tx-3);cursor:pointer;background:#f8fafc;border:1px solid #e5e7eb;border-radius:999px;align-items:center;gap:5px;padding:0 9px;font-size:12px;transition:all .15s;display:inline-flex}.lab-tag-suggest-chip:hover{color:#1d4ed8;background:#3b82f60f;border-color:#3b82f659}.lab-tag-chip-dot{background:var(--tag-clr,#94a3b8);border-radius:999px;width:6px;height:6px}.lab-zip-drop{background:#f8fafc;border:1.5px dashed #cbd5e1;border-radius:12px;padding:14px 16px;transition:border-color .2s,background .2s}.lab-zip-drop.is-busy{background:#3b82f60a;border-color:#3b82f6}.lab-zip-drop.is-ok{background:#10b9810a;border-style:solid;border-color:#10b98166}.lab-zip-drop .hidden{display:none}.lab-zip-progress{background:#e5e7eb;border-radius:999px;height:6px;margin-top:10px;position:relative;overflow:hidden}.lab-zip-progress-bar{background:linear-gradient(90deg,#3b82f6,#06b6d4);height:100%;transition:width .2s}.lab-zip-progress .mono{position:absolute;top:-18px;right:0}.lab-zip-parsed{background:#fff;border:1px solid #e5e7eb;border-radius:10px;margin-top:10px;padding:10px 12px}.lab-placeholder-chip{height:26px;color:var(--color-tx-2);cursor:pointer;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;align-items:center;gap:6px;padding:0 10px;font-size:12px;transition:all .15s;display:inline-flex}.lab-placeholder-chip:hover{color:#1d4ed8;background:#3b82f60f;border-style:solid;border-color:#3b82f64d}.lab-kv-head,.lab-kv-row{grid-template-columns:1.2fr .9fr 1fr .8fr 36px;align-items:center;gap:8px;display:grid}.lab-kv-head{color:var(--color-tx-4);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--color-line-1);margin-bottom:6px;padding:0 2px 6px;font-size:11px;font-weight:600}.lab-kv-row+.lab-kv-row{margin-top:6px}.lab-kv-row .input,.lab-kv-row .select{height:34px}.input.is-invalid,.select.is-invalid{box-shadow:0 0 0 3px #ef44441a;border-color:#ef44448c!important}.field-err{color:#dc2626;margin-top:4px;font-size:12px;line-height:1.4}.verify-box{border:1px solid var(--color-line-1);background:#f8fafc;border-radius:12px;padding:12px 14px}.verify-row{border-bottom:1px dashed #e5e7eb;grid-template-columns:96px 1fr;gap:10px;padding:6px 0;font-size:13px;display:grid}.verify-row:last-child{border-bottom:0}.verify-k{color:var(--color-tx-4);padding-top:2px;font-size:12px}.verify-v{color:var(--color-tx-1);word-break:break-all}a.verify-v{color:#1d4ed8}a.verify-v:hover{text-decoration:underline}.verify-svc-tbl{border:1px solid var(--color-line-1);background:#fff;border-radius:12px;overflow:hidden}.verify-svc-head,.verify-svc-row{grid-template-columns:160px 1fr;align-items:center;gap:12px;padding:8px 12px;font-size:12.5px;display:grid}.verify-svc-head{color:var(--color-tx-4);border-bottom:1px solid var(--color-line-1);background:#f8fafc;font-size:11.5px}.verify-svc-row{border-bottom:1px dashed #e5e7eb}.verify-svc-row:last-child{border-bottom:0}.verify-svc-addr{color:var(--color-tx-2);cursor:copy;-webkit-user-select:none;user-select:none;border-radius:6px;align-items:center;gap:8px;padding:4px 8px;transition:background .15s;display:flex;position:relative}.verify-svc-addr .truncate{text-overflow:ellipsis;white-space:nowrap;max-width:340px;overflow:hidden}.verify-svc-addr:hover{color:#1d4ed8;background:#1d4ed80f}.verify-svc-addr.is-openable{cursor:pointer}.verify-svc-copied{color:#047857;white-space:nowrap;background:#10b9811a;border:1px solid #10b98138;border-radius:999px;padding:0 6px;font-size:11px;line-height:16px}.verify-hint{background:#10b9810d;border:1px dashed #10b9814d;border-radius:8px;padding:6px 10px}.verify-ops{border-top:1px dashed var(--color-line-1);padding-top:10px}.verify-ops-title{color:var(--color-tx-4);margin-bottom:6px;font-size:12px}.tag-board{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;display:grid}.tag-chip-card{border:1px solid var(--color-line-1);background:#fff;border-radius:12px;align-items:center;gap:10px;padding:10px 12px;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.tag-chip-card:hover{border-color:var(--tag-clr,#cbd5e1);transform:translateY(-1px);box-shadow:0 6px 14px -6px #0f172a14}.tag-chip-dot{background:var(--tag-clr,#94a3b8);border-radius:999px;flex-shrink:0;width:10px;height:10px;box-shadow:0 0 0 2px #00000005}.tag-color-picker{border:1px solid var(--color-line-1);background:#f8fafc;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 10px;display:flex}.tag-color-dot{cursor:pointer;border:2px solid #0f172a14;border-radius:999px;width:22px;height:22px;padding:0;transition:transform .15s,border-color .15s}.tag-color-dot:hover{transform:scale(1.1)}.tag-color-dot.is-picked{border-color:var(--color-tx-1);box-shadow:inset 0 0 0 2px #fff}.tag-color-input{border:1px solid var(--color-line-1);cursor:pointer;background:0 0;border-radius:8px;width:28px;height:28px;padding:0}.lc-price-card{border:1px solid var(--color-line-1);background:#f8fafc;border-radius:12px;padding:12px 14px;transition:background .15s,border-color .15s}.lc-price-card:has(input[type=checkbox]:checked){background:#3b82f60a;border-color:#3b82f640}.btn-brand.is-pending{animation:1.4s ease-in-out infinite btnPulse}@keyframes btnPulse{0%,to{box-shadow:0 0 #3b82f659}50%{box-shadow:0 0 0 6px #3b82f600}}.ui-toast-wrap{z-index:9999;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;top:16px;left:50%;transform:translate(-50%)}.ui-toast{pointer-events:auto;min-width:220px;max-width:420px;color:var(--color-tx-1);border:1px solid var(--color-line-1);cursor:pointer;background:#fff;border-radius:10px;align-items:center;gap:8px;padding:8px 14px;font-size:13px;animation:.18s ease-out uiToastIn;display:inline-flex;box-shadow:0 10px 30px #0f172a14,0 2px 6px #0f172a0d}.ui-toast-icon{flex:none;width:16px;height:16px}.ui-toast-icon svg{width:16px;height:16px;display:block}.ui-toast-text{line-height:1.4}.ui-toast-info{color:#1e3a8a;border-color:#3b82f64d}.ui-toast-info .ui-toast-icon{color:#2563eb}.ui-toast-success{color:#065f46;border-color:#10b9814d}.ui-toast-success .ui-toast-icon{color:#059669}.ui-toast-warn{color:#92400e;border-color:#f59e0b59}.ui-toast-warn .ui-toast-icon{color:#d97706}.ui-toast-error{color:#991b1b;border-color:#ef444459}.ui-toast-error .ui-toast-icon{color:#dc2626}@keyframes uiToastIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.ui-modal-mask{z-index:10000;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#0f172a66;justify-content:center;align-items:center;animation:.15s ease-out uiFadeIn;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.ui-modal{border:1px solid var(--color-line-1);background:#fff;border-radius:14px;width:min(420px,100vw - 32px);animation:.18s ease-out uiPopIn;overflow:hidden;box-shadow:0 30px 60px #0f172a40}.ui-modal-head{color:var(--color-tx-1);border-bottom:1px solid var(--color-line-1);padding:14px 18px;font-size:15px;font-weight:600}.ui-modal-body{color:var(--color-tx-2);white-space:pre-wrap;word-break:break-word;padding:16px 18px;font-size:13.5px;line-height:1.6}.ui-modal-foot{border-top:1px solid var(--color-line-1);background:#f8fafc;justify-content:flex-end;gap:8px;padding:10px 14px;display:flex}.btn.btn-danger{color:#fff;background:#dc2626;border-color:#dc2626}.btn.btn-danger:hover{background:#b91c1c;border-color:#b91c1c}@keyframes uiFadeIn{0%{opacity:0}to{opacity:1}}@keyframes uiPopIn{0%{opacity:0;transform:translateY(6px)scale(.98)}to{opacity:1;transform:none}}.ui-loading-mask{z-index:10001;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#0f172a47;justify-content:center;align-items:center;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.ui-loading-box{border:1px solid var(--color-line-1);color:var(--color-tx-1);background:#fff;border-radius:12px;align-items:center;gap:12px;padding:14px 20px;font-size:13.5px;display:flex;box-shadow:0 20px 40px #0f172a2e}.ui-spinner{border:2px solid #e5e7eb;border-top-color:#2563eb;border-radius:8px;width:18px;height:18px;animation:.75s linear infinite uiSpin}@keyframes uiSpin{to{transform:rotate(360deg)}}.lab-picker-list{border:1px solid var(--color-line-2);background:#fff;border-radius:10px;max-height:340px;padding:4px;overflow:auto}.lab-picker-row{cursor:pointer;border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;transition:background .12s,border-color .12s;display:flex}.lab-picker-row:hover{background:#2563eb0a}.lab-picker-row.is-checked{background:#2563eb0f;border-color:#2563eb40}.lab-picker-row input[type=checkbox]{accent-color:var(--color-brand);width:14px;height:14px}.learn-labs{border-top:1px solid var(--color-line-1);margin-top:2.5rem;padding-top:1.75rem}.learn-labs .ll-title{color:var(--color-tx-1);align-items:center;gap:8px;margin-bottom:12px;font-size:16px;font-weight:600;display:flex}.learn-labs .ll-title .ll-count{color:var(--color-tx-4);font-size:11px;font-family:var(--font-mono,monospace)}.learn-lab-card{border:1px solid var(--color-line-2);background:#fff;border-radius:12px;margin-bottom:10px;padding:14px 16px}.learn-lab-head{align-items:center;gap:12px;display:flex}.learn-lab-head .ll-name{color:var(--color-tx-1);flex:1;min-width:0;font-size:14px;font-weight:600}.learn-lab-head .ll-status{background:var(--color-bg-3);color:var(--color-tx-3);font-size:11px;font-family:var(--font-mono,monospace);border-radius:999px;padding:2px 8px}.learn-lab-head .ll-status.is-solved{color:#047857;background:#10b98114}.learn-lab-head .ll-status.is-running{color:#1d4ed8;background:#2563eb14}.learn-lab-head .ll-points{color:var(--color-tx-4);font-size:11px;font-family:var(--font-mono,monospace)}.learn-lab-body{border-top:1px dashed var(--color-line-2);margin-top:12px;padding-top:12px}.learn-svc-tbl{border:1px solid var(--color-line-2);border-radius:8px;grid-template-columns:140px 1fr;gap:0;font-size:12px;display:grid;overflow:hidden}.learn-svc-tbl>div{border-bottom:1px solid var(--color-line-2);padding:8px 10px}.learn-svc-tbl>div:nth-last-child(-n+2){border-bottom:0}.learn-svc-tbl .ll-svc-h{background:var(--color-bg-3);color:var(--color-tx-3);font-size:11px;font-weight:600}.learn-svc-tbl .ll-addr{font-family:var(--font-mono,monospace);color:var(--color-brand);cursor:pointer}.learn-svc-tbl .ll-addr:hover{text-decoration:underline}.article-editor-shell{max-width:1180px}.article-title-input{letter-spacing:-.01em;width:100%;color:var(--color-tx-1);background:0 0;border:0;outline:0;padding:4px 0;font-size:28px;font-weight:700;line-height:1.3}.article-title-input::placeholder{color:var(--color-tx-5);font-weight:600}.article-summary-input{resize:none;width:100%;color:var(--color-tx-2);background:0 0;border:0;outline:0;padding:2px 0;font-size:14px;line-height:1.6}.article-summary-input::placeholder{color:var(--color-tx-5)}.article-body-host .ProseMirror{min-height:420px;font-size:15.5px;line-height:1.8}.svc-tbl-head,.svc-tbl-row{grid-template-columns:180px 1fr;align-items:center;gap:12px;padding:10px 14px;font-size:13px;display:grid}.svc-tbl-head{color:var(--color-tx-4);letter-spacing:.02em;border-top:1px solid var(--color-line-1);border-bottom:1px solid var(--color-line-1);background:#f8fafc;font-size:11.5px;font-weight:600}.svc-tbl-row{border-bottom:1px dashed #e5e7eb}.svc-tbl-row:last-of-type{border-bottom:0}.svc-tbl-name{color:var(--color-tx-1);font-size:13px;font-weight:600}.svc-tbl-addr{cursor:copy;-webkit-user-select:none;user-select:none;color:var(--color-tx-2);border-radius:8px;align-items:center;gap:8px;max-width:100%;padding:4px 8px;transition:background .15s,color .15s;display:flex}.svc-tbl-addr .truncate{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.svc-tbl-addr:hover{color:#1d4ed8;background:#1d4ed80f}.svc-tbl-addr.is-openable{cursor:pointer}.proto-pill{letter-spacing:.04em;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;padding:2px 7px;font-size:10.5px;font-weight:700;line-height:1.4;display:inline-flex}.proto-pill.proto-http{color:#1d4ed8;background:#1d4ed814;border-color:#1d4ed840}.proto-pill.proto-https{color:#047857;background:#10b98114;border-color:#10b98147}.proto-pill.proto-ssh{color:#374151;background:#6b72801a;border-color:#6b72804d}.proto-pill.proto-tcp{color:#b45309;background:#f59e0b1a;border-color:#f59e0b4d}.seg-control{background:var(--color-bg-3);border:1px solid var(--color-line-1);border-radius:8px;gap:2px;padding:2px;display:inline-flex}.seg-control .seg-btn{color:var(--color-tx-3);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px 12px;font-size:12.5px;transition:background .15s,color .15s}.seg-control .seg-btn:hover{color:var(--color-tx-1)}.seg-control .seg-btn.is-active{color:var(--color-tx-1);background:#fff;box-shadow:0 1px 2px #0f172a0f}.mini-tbl tbody.instance-group+tbody.instance-group{border-top:1px solid var(--color-line-1)}.mini-tbl tr.instance-row>td{background:#fff}.mini-tbl tr.container-row>td{background:#fafbfd;padding-top:6px;padding-bottom:6px;font-size:12px}.tree-toggle{width:22px;height:22px;color:var(--color-tx-3);cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:center;align-items:center;font-size:11px;display:inline-flex}.tree-toggle:not(:disabled):hover{background:var(--color-bg-3);color:var(--color-tx-1)}.tree-toggle:disabled{cursor:default}.tree-branch{color:var(--color-tx-4);font-family:var(--font-family-mono);-webkit-user-select:none;user-select:none}.select.has-placeholder:required:invalid{color:var(--color-tx-4)}.select.has-placeholder option{color:var(--color-tx-1)}.select.has-placeholder option[value=""][disabled]{color:var(--color-tx-4)}.mail-tpl-edit{flex-direction:column;gap:16px;display:flex}.mte-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.mte-header__title{align-items:flex-start;gap:12px;display:flex}.mte-header__actions{align-items:center;gap:8px;display:flex}.mte-placeholders{background:var(--color-bg-2);border:1px solid var(--color-line-2);border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;display:flex}.mte-placeholders__label{color:var(--color-tx-3);white-space:nowrap;font-size:12.5px}.mte-placeholders__chips{flex-wrap:wrap;gap:6px;display:flex}.mte-chip{font-family:var(--font-family-mono);background:var(--color-bg-3);color:var(--color-tx-2);border:1px solid var(--color-line-2);cursor:pointer;border-radius:999px;padding:3px 8px;font-size:11.5px;transition:all .15s}.mte-chip:hover{background:var(--color-brand-soft,#eef2ff);border-color:var(--color-brand,#4f46e5);color:var(--color-brand,#4f46e5)}.mte-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media(max-width:1100px){.mte-grid{grid-template-columns:1fr}}.mte-pane{background:var(--color-bg-2);border:1px solid var(--color-line-2);border-radius:12px;flex-direction:column;min-height:640px;display:flex;overflow:hidden}.mte-pane__head{background:var(--color-bg-3);border-bottom:1px solid var(--color-line-2);justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.mte-pane__title{color:var(--color-tx-1);letter-spacing:.2px;font-size:13px;font-weight:600}.mte-pane__hint{color:var(--color-tx-4);font-size:11.5px}.mte-pane__body{flex-direction:column;flex:1;gap:10px;min-height:0;padding:14px;display:flex}.mte-field{flex-direction:column;gap:6px;display:flex}.mte-field--code{flex:1;min-height:0}.mte-codewrap{border:1px solid var(--color-line-2);background:#0e1320;border-radius:8px;flex:1;min-height:480px;display:flex;overflow:hidden}.mte-codeedit{flex:1;min-height:480px}.mte-codeedit .cm-editor{background:0 0;height:100%}.mte-codeedit .cm-scroller{font-family:var(--font-family-mono);font-size:13px;line-height:1.55}.mte-preview{border:1px solid var(--color-line-2);background:#fff;border-radius:8px;flex-direction:column;flex:1;min-height:480px;display:flex;overflow:hidden}.mte-preview__subject{border-bottom:1px solid var(--color-line-2);background:var(--color-bg-3);padding:12px 16px}.mte-preview__frame{background:#fff;border:0;flex:1;width:100%;min-height:420px}.profile-page.entitlement-profile{width:100%;max-width:1280px;margin-left:auto;margin-right:auto}.entitlement-profile .entitlement-plus-card{border:1px solid var(--color-line-1);background:#fff;border-radius:18px;width:100%;position:relative;overflow:hidden;box-shadow:0 1px 2px #0f172a06,0 12px 34px #0f172a0b}.entitlement-profile .entitlement-plus-card__accent{background:linear-gradient(90deg,#2563eb,#38bdf8 48%,#10b981);height:3px}.entitlement-profile .entitlement-plus-card__body{background:radial-gradient(circle at 100% 0,#2563eb0e,#0000 31%),#fff;padding:26px 28px 24px}.entitlement-profile .entitlement-plus-card__top{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:28px;display:grid}.entitlement-profile .entitlement-plus-brand{color:#1d4ed8;letter-spacing:.16em;background:#2563eb12;border:1px solid #2563eb29;border-radius:999px;align-items:center;min-height:25px;padding:0 10px;font-size:10.5px;font-weight:700;display:inline-flex}.entitlement-profile .entitlement-status{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;align-items:center;gap:6px;min-height:25px;padding:0 10px;font-size:11.5px;font-weight:500;display:inline-flex}.entitlement-profile .entitlement-status.is-active{color:#047857;background:#ecfdf5;border-color:#a7f3d0}.entitlement-profile .entitlement-status__dot{background:#10b981;border-radius:999px;width:6px;height:6px;box-shadow:0 0 0 3px #10b9811c}.entitlement-profile .entitlement-plus-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;display:flex}.entitlement-profile .entitlement-plan-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-top:24px;display:grid}.entitlement-profile .entitlement-plan-item{background:#f8fafc;border:1px solid #e8edf4;border-radius:12px;min-width:0;padding:14px 15px}.entitlement-profile .entitlement-plan-item.is-highlight{background:#eff6ff;border-color:#bfdbfe}.entitlement-profile .entitlement-plan-item__label{color:#94a3b8;font-size:10.5px}.entitlement-profile .entitlement-plan-item__value{color:#1e293b;text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:13.5px;font-weight:600;overflow:hidden}.entitlement-profile .entitlement-plus-empty{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;align-items:center;gap:12px;margin-top:22px;padding:13px 14px;display:flex}.entitlement-profile .entitlement-plus-empty__icon{color:#64748b;background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex:0 0 34px;place-items:center;width:34px;height:34px;display:grid}.entitlement-profile .entitlement-plus-empty__icon svg{width:17px;height:17px}.entitlement-profile .entitlement-benefit-grid{border-top:1px solid #edf1f6;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-top:20px;padding-top:20px;display:grid}.entitlement-profile .entitlement-benefit-item{background:#fbfcfe;border:1px solid #e8edf4;border-radius:12px;align-items:center;gap:11px;min-width:0;padding:12px 13px;display:flex}.entitlement-profile .entitlement-benefit-icon{border-radius:10px;flex:0 0 36px;place-items:center;width:36px;height:36px;display:grid}.entitlement-profile .entitlement-benefit-icon svg{width:17px;height:17px}.entitlement-profile .entitlement-benefit-item.is-blue .entitlement-benefit-icon{color:#2563eb;background:#eff6ff}.entitlement-profile .entitlement-benefit-item.is-green .entitlement-benefit-icon{color:#059669;background:#ecfdf5}.entitlement-profile .entitlement-benefit-item.is-violet .entitlement-benefit-icon{color:#7c3aed;background:#f5f3ff}.entitlement-profile .entitlement-benefit-item.is-amber .entitlement-benefit-icon{color:#d97706;background:#fffbeb}.entitlement-profile .entitlement-benefit-title{color:#1e293b;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;font-weight:600;overflow:hidden}.entitlement-profile .entitlement-benefit-meta{color:#94a3b8;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:10.5px;overflow:hidden}.entitlement-profile .entitlement-activation{background:#f8fafc;border-top:1px solid #e2e8f0;padding:20px 28px}.entitlement-profile .entitlement-activation__intro{align-items:center;gap:12px;display:flex}.entitlement-profile .entitlement-activation__icon{color:#2563eb;background:#eff6ff;border:1px solid #dbeafe;border-radius:11px;flex:0 0 38px;place-items:center;width:38px;height:38px;display:grid}.entitlement-profile .entitlement-activation__icon svg{width:18px;height:18px}.entitlement-profile .entitlement-activation__form{grid-template-columns:minmax(240px,1fr) auto auto;align-items:center;gap:9px;margin-top:15px;display:grid}.entitlement-profile .entitlement-activation__message{margin-top:9px;font-size:12.5px}.entitlement-profile .entitlement-activation__message.is-success{color:#047857}.entitlement-profile .entitlement-activation__message.is-error{color:#b91c1c}@media(max-width:1100px){.profile-page.entitlement-profile{max-width:100%}.entitlement-profile .entitlement-plan-grid,.entitlement-profile .entitlement-benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.entitlement-profile .entitlement-plus-card__body{padding:21px 18px 18px}.entitlement-profile .entitlement-plus-card__top{grid-template-columns:1fr;gap:18px}.entitlement-profile .entitlement-plus-actions{justify-content:flex-start}.entitlement-profile .entitlement-plan-grid,.entitlement-profile .entitlement-benefit-grid{grid-template-columns:1fr}.entitlement-profile .entitlement-activation{padding:18px}.entitlement-profile .entitlement-activation__form{grid-template-columns:1fr}}.entitlement-profile .learning-hero{border:1px solid var(--color-line-1);background:#fff;border-radius:18px;grid-template-columns:minmax(250px,.72fr) minmax(0,2.28fr);align-items:stretch;width:100%;min-height:178px;display:grid;overflow:hidden;box-shadow:0 1px 2px #0f172a06,0 12px 34px #0f172a09}.entitlement-profile .learning-hero__identity{background:radial-gradient(circle at 0 0,#2563eb0f,#0000 42%),#fff;border-right:1px solid #edf1f6;align-items:center;gap:18px;min-width:0;padding:26px 24px;display:flex}.entitlement-profile .learning-hero__user{min-width:0}.entitlement-profile .learning-hero__hint{color:#94a3b8;margin-top:13px;font-size:11.5px;line-height:1.6}.entitlement-profile .learning-hero__overview{min-width:0;padding:22px 24px 24px}.entitlement-profile .learning-hero__overview-head{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:15px;display:flex}.entitlement-profile .learning-hero__overview-head h2{color:#0f172a;margin:3px 0 0;font-size:15px;font-weight:600}.entitlement-profile .learning-hero__eyebrow{color:#94a3b8;letter-spacing:.15em;font-size:9.5px;font-weight:700}.entitlement-profile .learning-hero__detail-link{color:#64748b;border-radius:8px;flex:none;align-items:center;gap:5px;padding:5px 9px;font-size:11.5px;transition:color .18s,background .18s;display:inline-flex}.entitlement-profile .learning-hero__detail-link:hover{color:#2563eb;background:#eff6ff}.entitlement-profile .learning-hero__detail-link svg{width:13px;height:13px}.entitlement-profile .learning-metric-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;display:grid}.entitlement-profile .learning-metric{background:#fafbfd;border:1px solid #e9eef5;border-radius:12px;align-items:center;gap:10px;min-width:0;padding:12px 11px;transition:border-color .18s,background .18s,transform .18s;display:flex}.entitlement-profile .learning-metric:hover{background:#fff;border-color:#d8e1ec;transform:translateY(-1px)}.entitlement-profile .learning-metric__icon{color:#64748b;background:#f1f5f9;border-radius:9px;flex:0 0 32px;place-items:center;width:32px;height:32px;display:grid}.entitlement-profile .learning-metric__icon svg{width:16px;height:16px}.entitlement-profile .learning-metric__icon.is-points{color:#b45309;background:#fffbeb}.entitlement-profile .learning-metric__icon.is-flag{color:#dc2626;background:#fef2f2}.entitlement-profile .learning-metric__icon.is-lab{color:#047857;background:#ecfdf5}.entitlement-profile .learning-metric__icon.is-report{color:#2563eb;background:#eff6ff}.entitlement-profile .learning-metric__icon.is-project{color:#7c3aed;background:#f5f3ff}.entitlement-profile .learning-metric__icon.is-time{color:#0369a1;background:#f0f9ff}.entitlement-profile .learning-metric__content{min-width:0;overflow:hidden}.entitlement-profile .learning-metric__value{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:650;line-height:1.2;overflow:hidden}.entitlement-profile .learning-metric__value--time{font-size:13.5px}.entitlement-profile .learning-metric__label{color:#94a3b8;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:10.5px;overflow:hidden}@media(max-width:1180px){.entitlement-profile .learning-hero{grid-template-columns:minmax(230px,.7fr) minmax(0,2fr)}.entitlement-profile .learning-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:820px){.entitlement-profile .learning-hero{grid-template-columns:1fr}.entitlement-profile .learning-hero__identity{border-bottom:1px solid #edf1f6;border-right:0}}@media(max-width:560px){.entitlement-profile .learning-hero__identity,.entitlement-profile .learning-hero__overview{padding:20px 18px}.entitlement-profile .learning-hero__overview-head{align-items:center}.entitlement-profile .learning-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.entitlement-profile .learning-metric{padding:11px 10px}}@media(max-width:380px){.entitlement-profile .learning-metric-grid{grid-template-columns:1fr}}.entitlement-profile .achievement-panel{border:1px solid var(--color-line-1);background:#fff;border-radius:18px;width:100%;overflow:hidden;box-shadow:0 1px 2px #0f172a06,0 12px 34px #0f172a09}.entitlement-profile .achievement-panel__head{justify-content:space-between;align-items:flex-start;gap:24px;padding:24px 26px 18px;display:flex}.entitlement-profile .achievement-panel__eyebrow{color:#94a3b8;letter-spacing:.16em;font-size:9.5px;font-weight:700}.entitlement-profile .achievement-panel__head h2{color:#0f172a;margin:0;font-size:20px;font-weight:650}.entitlement-profile .achievement-panel__head p{color:#64748b;margin:7px 0 0;font-size:12.5px}.entitlement-profile .achievement-panel__count{color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;align-items:center;gap:4px;padding:4px 9px;font-size:11px;display:inline-flex}.entitlement-profile .achievement-panel__completion{text-align:right;flex:none}.entitlement-profile .achievement-panel__completion-value{color:#2563eb;font-size:22px;font-weight:700}.entitlement-profile .achievement-panel__completion-label{color:#94a3b8;margin-top:2px;font-size:10.5px}.entitlement-profile .achievement-panel__progress{background:#eef2f7;border-radius:999px;height:3px;margin:0 26px;overflow:hidden}.entitlement-profile .achievement-panel__progress-bar{border-radius:inherit;background:linear-gradient(90deg,#2563eb,#38bdf8,#10b981);height:100%;transition:width .45s}.entitlement-profile .achievement-panel__toolbar{justify-content:space-between;align-items:center;gap:18px;padding:18px 26px 14px;display:flex}.entitlement-profile .achievement-filter{background:#f1f5f9;border-radius:10px;gap:4px;padding:4px;display:inline-flex}.entitlement-profile .achievement-filter button{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:6px;padding:6px 10px;font-size:11.5px;display:inline-flex}.entitlement-profile .achievement-filter button span{color:#94a3b8;font-family:var(--font-mono);font-size:10px}.entitlement-profile .achievement-filter button.is-active{color:#0f172a;background:#fff;box-shadow:0 1px 3px #0f172a14,0 1px 1px #0f172a0a}.entitlement-profile .achievement-panel__sync-note{color:#94a3b8;font-size:10.5px}.entitlement-profile .achievement-panel__body{padding:0 26px 26px}.entitlement-profile .achievement-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.entitlement-profile .achievement-card{background:#fbfcfe;border:1px solid #e7ecf3;border-radius:14px;flex-direction:column;min-width:0;min-height:210px;padding:16px;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex;position:relative}.entitlement-profile .achievement-card:hover{border-color:#d5dee9;transform:translateY(-2px);box-shadow:0 10px 24px #0f172a0f}.entitlement-profile .achievement-card.is-locked{background:#fafbfc}.entitlement-profile .achievement-card__top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.entitlement-profile .achievement-medal{color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe;border-radius:16px;place-items:center;width:52px;height:52px;display:grid;position:relative}.entitlement-profile .achievement-medal__inner,.entitlement-profile .achievement-medal__inner svg{width:25px;height:25px}.entitlement-profile .achievement-medal__check{color:#fff;background:#10b981;border:2px solid #fff;border-radius:999px;place-items:center;width:19px;height:19px;display:grid;position:absolute;bottom:-4px;right:-4px}.entitlement-profile .achievement-medal__check svg{width:11px;height:11px}.entitlement-profile .achievement-card.is-locked .achievement-medal{color:#94a3b8;filter:grayscale(.65);background:#f1f5f9;border-color:#e2e8f0}.entitlement-profile .achievement-card__state{color:#94a3b8;background:#f1f5f9;border-radius:999px;padding:3px 7px;font-size:9.5px}.entitlement-profile .achievement-card__state.is-complete{color:#047857;background:#ecfdf5}.entitlement-profile .achievement-card__content{margin-top:15px}.entitlement-profile .achievement-card__content h3{color:#0f172a;margin:0;font-size:14px;font-weight:650}.entitlement-profile .achievement-card__content p{color:#64748b;min-height:36px;margin:6px 0 0;font-size:11px;line-height:1.6}.entitlement-profile .achievement-card__unlocked,.entitlement-profile .achievement-card__progress{margin-top:auto;padding-top:14px}.entitlement-profile .achievement-card__unlocked{color:#64748b;border-top:1px solid #e9eef5;justify-content:space-between;align-items:center;gap:8px;font-size:10.5px;display:flex}.entitlement-profile .achievement-card__progress-info{color:#94a3b8;justify-content:space-between;align-items:center;gap:8px;font-size:10px;display:flex}.entitlement-profile .achievement-card__progress-track{background:#e9eef5;border-radius:999px;height:4px;margin-top:8px;overflow:hidden}.entitlement-profile .achievement-card__progress-value{border-radius:inherit;background:#94a3b8;height:100%}.entitlement-profile .achievement-card.theme-rose.is-unlocked .achievement-medal{color:#e11d48;background:#fff1f2;border-color:#fecdd3}.entitlement-profile .achievement-card.theme-emerald.is-unlocked .achievement-medal,.entitlement-profile .achievement-card.theme-teal.is-unlocked .achievement-medal{color:#047857;background:#ecfdf5;border-color:#a7f3d0}.entitlement-profile .achievement-card.theme-amber.is-unlocked .achievement-medal,.entitlement-profile .achievement-card.theme-orange.is-unlocked .achievement-medal{color:#b45309;background:#fffbeb;border-color:#fde68a}.entitlement-profile .achievement-card.theme-violet.is-unlocked .achievement-medal,.entitlement-profile .achievement-card.theme-purple.is-unlocked .achievement-medal{color:#7c3aed;background:#f5f3ff;border-color:#ddd6fe}.entitlement-profile .achievement-card.theme-indigo.is-unlocked .achievement-medal{color:#4f46e5;background:#eef2ff;border-color:#c7d2fe}.entitlement-profile .achievement-card.theme-sky.is-unlocked .achievement-medal{color:#0369a1;background:#f0f9ff;border-color:#bae6fd}.entitlement-profile .achievement-panel__empty{color:#94a3b8;text-align:center;background:#fafbfc;border:1px dashed #dde4ed;border-radius:12px;padding:36px 20px;font-size:12px}@media(max-width:1180px){.entitlement-profile .achievement-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.entitlement-profile .achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.entitlement-profile .achievement-panel__sync-note{display:none}}@media(max-width:520px){.entitlement-profile .achievement-panel__head{padding:20px 18px 16px}.entitlement-profile .achievement-panel__progress{margin:0 18px}.entitlement-profile .achievement-panel__toolbar{padding:16px 18px 12px}.entitlement-profile .achievement-panel__body{padding:0 18px 20px}.entitlement-profile .achievement-grid{grid-template-columns:1fr}}.entitlement-profile .achievement-preview{border:1px solid var(--color-line-1);background:#fff;border-radius:18px;width:100%;overflow:hidden;box-shadow:0 10px 30px #0f172a09}.entitlement-profile .achievement-preview__head{justify-content:space-between;align-items:flex-start;gap:22px;padding:19px 22px 14px;display:flex}.entitlement-profile .achievement-preview__eyebrow,.entitlement-profile .achievement-sheet__eyebrow{color:#94a3b8;letter-spacing:.16em;font-size:9px;font-weight:700}.entitlement-profile .achievement-preview__head h2{color:#0f172a;margin:0;font-size:17px;font-weight:650}.entitlement-profile .achievement-preview__head p{color:#94a3b8;margin:5px 0 0;font-size:11px}.entitlement-profile .achievement-preview__count{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:3px 8px;font-size:10px}.entitlement-profile .achievement-preview__actions{align-items:center;gap:14px;display:flex}.entitlement-profile .achievement-preview__completion{flex-direction:column;align-items:flex-end;display:flex}.entitlement-profile .achievement-preview__completion b{color:#2563eb;font-size:15px}.entitlement-profile .achievement-preview__completion span{color:#94a3b8;font-size:9.5px}.entitlement-profile .achievement-preview__progress,.entitlement-profile .achievement-sheet__progress{background:#eef2f7;height:3px;overflow:hidden}.entitlement-profile .achievement-preview__progress{border-radius:999px;margin:0 22px}.entitlement-profile .achievement-preview__progress>div,.entitlement-profile .achievement-sheet__progress>div{background:linear-gradient(90deg,#2563eb,#38bdf8,#10b981);height:100%;transition:width .4s}.entitlement-profile .achievement-preview__body{padding:14px 22px 19px}.entitlement-profile .achievement-preview__grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;display:grid}.entitlement-profile .achievement-preview-card{background:#fafbfd;border:1px solid #e8edf4;border-radius:12px;align-items:center;gap:10px;min-width:0;padding:10px;display:flex}.entitlement-profile .achievement-preview-card__badge{color:#2563eb;background:#eff6ff;border-radius:13px;flex:0 0 46px;place-items:center;width:46px;height:46px;display:grid;position:relative;overflow:visible}.entitlement-profile .achievement-preview-card__badge img{object-fit:contain;border-radius:12px;width:100%;height:100%}.entitlement-profile .achievement-preview-card__fallback,.entitlement-profile .achievement-preview-card__fallback svg{width:22px;height:22px}.entitlement-profile .achievement-preview-card__check,.entitlement-profile .achievement-full-card__check{color:#fff;background:#10b981;border:2px solid #fff;border-radius:999px;place-items:center;width:17px;height:17px;display:grid;position:absolute;bottom:-4px;right:-4px}.entitlement-profile .achievement-preview-card__check svg,.entitlement-profile .achievement-full-card__check svg{width:9px;height:9px}.entitlement-profile .achievement-preview-card__text{min-width:0;overflow:hidden}.entitlement-profile .achievement-preview-card__text h3{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:12px;font-weight:650;overflow:hidden}.entitlement-profile .achievement-preview-card__text div{color:#94a3b8;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:9.5px;overflow:hidden}.entitlement-profile .achievement-preview__empty{color:#94a3b8;text-align:center;background:#fafbfc;border:1px dashed #dde4ed;border-radius:11px;padding:18px;font-size:11.5px}.entitlement-profile .achievement-sheet-mask{z-index:90;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f172a61;justify-content:flex-end;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.entitlement-profile .achievement-sheet{background:#fff;flex-direction:column;width:min(760px,94vw);height:100%;display:flex;box-shadow:-20px 0 50px #0f172a29}.entitlement-profile .achievement-sheet__head{justify-content:space-between;align-items:flex-start;gap:20px;padding:24px 26px 18px;display:flex}.entitlement-profile .achievement-sheet__head h2{color:#0f172a;margin:4px 0 0;font-size:21px;font-weight:650}.entitlement-profile .achievement-sheet__head p{color:#64748b;margin:6px 0 0;font-size:11.5px}.entitlement-profile .achievement-sheet__close{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;flex:0 0 34px;place-items:center;width:34px;height:34px;display:grid}.entitlement-profile .achievement-sheet__close svg{width:16px;height:16px}.entitlement-profile .achievement-sheet__filters{border-bottom:1px solid #edf1f6;gap:5px;padding:16px 26px;display:flex}.entitlement-profile .achievement-sheet__filters button{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:6px;padding:6px 10px;font-size:11.5px;display:inline-flex}.entitlement-profile .achievement-sheet__filters button.is-active{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.entitlement-profile .achievement-sheet__filters span{font-family:var(--font-mono);font-size:10px}.entitlement-profile .achievement-sheet__body{flex:1;padding:20px 26px 28px;overflow-y:auto}.entitlement-profile .achievement-sheet__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.entitlement-profile .achievement-full-card{background:#fbfcfe;border:1px solid #e7ecf3;border-radius:13px;align-items:flex-start;gap:13px;min-width:0;padding:14px;display:flex}.entitlement-profile .achievement-full-card.is-locked{background:#fafbfc}.entitlement-profile .achievement-full-card__badge{color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe;border-radius:16px;flex:0 0 58px;place-items:center;width:58px;height:58px;display:grid;position:relative}.entitlement-profile .achievement-full-card__badge img{object-fit:contain;border-radius:15px;width:100%;height:100%}.entitlement-profile .achievement-full-card.is-locked .achievement-full-card__badge{filter:grayscale();opacity:.52}.entitlement-profile .achievement-full-card__fallback,.entitlement-profile .achievement-full-card__fallback svg{width:27px;height:27px}.entitlement-profile .achievement-full-card__main{flex:1;min-width:0}.entitlement-profile .achievement-full-card__title{justify-content:space-between;align-items:center;gap:8px;display:flex}.entitlement-profile .achievement-full-card__title h3{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:13px;font-weight:650;overflow:hidden}.entitlement-profile .achievement-full-card__title span{color:#94a3b8;background:#f1f5f9;border-radius:999px;flex:none;padding:2px 6px;font-size:9px}.entitlement-profile .achievement-full-card__title span.is-complete{color:#047857;background:#ecfdf5}.entitlement-profile .achievement-full-card__main>p{color:#64748b;min-height:34px;margin:5px 0 0;font-size:10.5px;line-height:1.55}.entitlement-profile .achievement-full-card__date{color:#64748b;margin-top:9px;font-size:10px}.entitlement-profile .achievement-full-card__condition{color:#94a3b8;margin-top:9px;font-size:9.5px}.entitlement-profile .achievement-full-card__track{background:#e5eaf1;border-radius:999px;height:4px;margin-top:7px;overflow:hidden}.entitlement-profile .achievement-full-card__track>div{border-radius:inherit;background:#94a3b8;height:100%}.entitlement-profile .achievement-sheet__empty{color:#94a3b8;text-align:center;padding:40px 20px;font-size:12px}@media(max-width:1100px){.entitlement-profile .achievement-preview__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:680px){.entitlement-profile .achievement-preview__head{align-items:center}.entitlement-profile .achievement-preview__completion{display:none}.entitlement-profile .achievement-preview__grid,.entitlement-profile .achievement-sheet__grid{grid-template-columns:1fr}.entitlement-profile .achievement-sheet__head,.entitlement-profile .achievement-sheet__filters,.entitlement-profile .achievement-sheet__body{padding-left:18px;padding-right:18px}}.entitlement-profile .achievement-preview-card.is-locked{background:#fafbfc;border-color:#e8edf2}.entitlement-profile .achievement-preview-card.is-locked .achievement-preview-card__badge{color:#94a3b8;filter:grayscale();opacity:.52;background:#f1f5f9}.entitlement-profile .achievement-preview-card.is-locked .achievement-preview-card__badge img{filter:grayscale()}.entitlement-profile .achievement-preview-card.is-locked .achievement-preview-card__text h3{color:#64748b}.learning-overview-page .weekly-goal-panel{border:1px solid var(--color-line-1);background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 1px 2px #0f172a06,0 10px 28px #0f172a09}.learning-overview-page .weekly-goal-head{border-bottom:1px solid #eef2f7;justify-content:space-between;align-items:flex-start;gap:24px;padding:22px 24px 18px;display:flex}.learning-overview-page .weekly-goal-heading{align-items:flex-start;gap:13px;display:flex}.learning-overview-page .weekly-goal-icon{color:#2563eb;background:#eff6ff;border:1px solid #dbeafe;border-radius:11px;flex:none;place-items:center;width:38px;height:38px;display:grid}.learning-overview-page .weekly-goal-icon svg{width:19px;height:19px}.learning-overview-page .weekly-goal-title-row,.learning-overview-page .weekly-goal-plan__name-row,.learning-overview-page .weekly-goal-active__name-row{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.learning-overview-page .weekly-goal-title-row h3{color:#0f172a;margin:0;font-size:16px;font-weight:650}.learning-overview-page .weekly-goal-heading p{color:#64748b;margin:5px 0 0;font-size:12px}.learning-overview-page .weekly-goal-week{color:#64748b;font-family:var(--font-mono);background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:3px 8px;font-size:10.5px}.learning-overview-page .weekly-goal-summary{text-align:right;flex:none}.learning-overview-page .weekly-goal-summary__label{color:#94a3b8;font-size:10.5px;display:block}.learning-overview-page .weekly-goal-summary strong{color:#2563eb;font-family:var(--font-mono);margin-top:2px;font-size:22px;display:block}.learning-overview-page .weekly-goal-loading{color:#94a3b8;text-align:center;padding:44px 24px;font-size:12.5px}.learning-overview-page .weekly-goal-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:9px;margin:16px 24px;padding:10px 12px;font-size:12px}.learning-overview-page .weekly-goal-plans{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:20px 24px 24px;display:grid}.learning-overview-page .weekly-goal-plan{background:#fbfcfe;border:1px solid #e5eaf1;border-radius:13px;flex-direction:column;min-width:0;padding:17px;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex}.learning-overview-page .weekly-goal-plan:hover{border-color:#bfdbfe;transform:translateY(-2px);box-shadow:0 10px 24px #0f172a0e}.learning-overview-page .weekly-goal-plan.is-recommended{background:#fcfdff;border-color:#bfdbfe;box-shadow:inset 0 3px #3b82f6}.learning-overview-page .weekly-goal-plan__top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.learning-overview-page .weekly-goal-plan h4,.learning-overview-page .weekly-goal-active h4{color:#0f172a;margin:0;font-size:14px;font-weight:650}.learning-overview-page .weekly-goal-plan p,.learning-overview-page .weekly-goal-active__title p{color:#64748b;margin:5px 0 0;font-size:11.5px;line-height:1.55}.learning-overview-page .weekly-goal-recommended{color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:2px 7px;font-size:9.5px;font-weight:650}.learning-overview-page .weekly-goal-reward{text-align:right;flex:none}.learning-overview-page .weekly-goal-reward strong{color:#2563eb;font-family:var(--font-mono);font-size:17px;display:block}.learning-overview-page .weekly-goal-reward span{color:#94a3b8;margin-top:1px;font-size:9.5px;display:block}.learning-overview-page .weekly-goal-plan__metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:16px 0;display:grid}.learning-overview-page .weekly-goal-plan__metrics>div{text-align:center;background:#fff;border:1px solid #edf1f6;border-radius:9px;min-width:0;padding:9px 7px}.learning-overview-page .weekly-goal-plan__metrics span{color:#94a3b8;font-size:9.5px;display:block}.learning-overview-page .weekly-goal-plan__metrics strong{color:#334155;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:11px;display:block;overflow:hidden}.learning-overview-page .weekly-goal-plan__button{color:#2563eb;cursor:pointer;background:#fff;border:1px solid #bfdbfe;border-radius:9px;width:100%;margin-top:auto;padding:8px 12px;font-size:11.5px;font-weight:600;transition:all .18s}.learning-overview-page .weekly-goal-plan__button:hover{color:#fff;background:#2563eb;border-color:#2563eb}.learning-overview-page .weekly-goal-plan__button:disabled{opacity:.55;cursor:wait}.learning-overview-page .weekly-goal-active{grid-template-columns:minmax(0,1fr) 190px;display:grid}.learning-overview-page .weekly-goal-active__main{min-width:0;padding:20px 24px 24px}.learning-overview-page .weekly-goal-active__title{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.learning-overview-page .weekly-goal-status{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:3px 8px;font-size:9.5px;font-weight:600}.learning-overview-page .weekly-goal-status.is-complete,.learning-overview-page .weekly-goal-status.is-claimed{color:#047857;background:#ecfdf5;border-color:#a7f3d0}.learning-overview-page .weekly-goal-active__reward{text-align:right;flex:none}.learning-overview-page .weekly-goal-active__reward span{color:#94a3b8;font-size:10px;display:block}.learning-overview-page .weekly-goal-active__reward strong{color:#2563eb;margin-top:3px;font-size:13px;display:block}.learning-overview-page .weekly-goal-overall{margin-top:18px}.learning-overview-page .weekly-goal-overall__text{color:#64748b;justify-content:space-between;align-items:center;margin-bottom:7px;font-size:10.5px;display:flex}.learning-overview-page .weekly-goal-overall__text strong{color:#2563eb;font-family:var(--font-mono);font-size:11px}.learning-overview-page .weekly-goal-overall__track,.learning-overview-page .weekly-goal-metric__track{background:#eef2f7;border-radius:999px;overflow:hidden}.learning-overview-page .weekly-goal-overall__track{height:5px}.learning-overview-page .weekly-goal-overall__bar{border-radius:inherit;background:linear-gradient(90deg,#2563eb,#38bdf8,#10b981);height:100%;transition:width .4s}.learning-overview-page .weekly-goal-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}.learning-overview-page .weekly-goal-metric{background:#fafbfd;border:1px solid #e8edf3;border-radius:10px;min-width:0;padding:12px}.learning-overview-page .weekly-goal-metric.is-complete{background:#f8fffc;border-color:#bbf7d0}.learning-overview-page .weekly-goal-metric__head{color:#64748b;justify-content:space-between;align-items:center;gap:8px;font-size:10px;display:flex}.learning-overview-page .weekly-goal-check{color:#059669;font-weight:700}.learning-overview-page .weekly-goal-metric>strong{color:#1e293b;font-family:var(--font-mono);margin-top:6px;font-size:12px;display:block}.learning-overview-page .weekly-goal-metric__track{height:3px;margin-top:9px}.learning-overview-page .weekly-goal-metric__track>div{border-radius:inherit;background:#3b82f6;height:100%;transition:width .4s}.learning-overview-page .weekly-goal-metric.is-complete .weekly-goal-metric__track>div{background:#10b981}.learning-overview-page .weekly-goal-action{background:#fafbfd;border-left:1px solid #eef2f7;place-items:center;padding:20px;display:grid}.learning-overview-page .weekly-goal-action__pending,.learning-overview-page .weekly-goal-action__ready,.learning-overview-page .weekly-goal-action__claimed{text-align:center;flex-direction:column;align-items:center;display:flex}.learning-overview-page .weekly-goal-action span{color:#94a3b8;font-size:10.5px}.learning-overview-page .weekly-goal-action strong{color:#334155;margin-top:5px;font-size:13px}.learning-overview-page .weekly-goal-action small{color:#94a3b8;margin-top:8px;font-size:9.5px}.learning-overview-page .weekly-goal-action__ready strong{color:#047857;margin-bottom:13px}.learning-overview-page .weekly-goal-action__check{color:#059669;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:999px;place-items:center;width:38px;height:38px;margin-bottom:9px;display:grid}.learning-overview-page .weekly-goal-action__check svg{width:19px;height:19px}.learning-overview-page .weekly-goal-action__claimed strong{color:#047857}.learning-overview-page .weekly-goal-action__claimed span{margin-top:4px}@media(max-width:900px){.learning-overview-page .weekly-goal-plans,.learning-overview-page .weekly-goal-active{grid-template-columns:1fr}.learning-overview-page .weekly-goal-action{border-top:1px solid #eef2f7;border-left:0;min-height:120px}}@media(max-width:640px){.learning-overview-page .weekly-goal-head,.learning-overview-page .weekly-goal-active__title{flex-direction:column}.learning-overview-page .weekly-goal-summary,.learning-overview-page .weekly-goal-active__reward{text-align:left}.learning-overview-page .weekly-goal-plans,.learning-overview-page .weekly-goal-active__main{padding-left:16px;padding-right:16px}.learning-overview-page .weekly-goal-metrics{grid-template-columns:1fr}}.weekly-goal-modal{z-index:100;place-items:center;padding:22px;display:grid;position:fixed;top:0;right:0;bottom:0;left:0}.weekly-goal-modal__mask{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#0f172a6b;position:absolute;top:0;right:0;bottom:0;left:0}.weekly-goal-modal__panel{z-index:1;background:#fff;border:1px solid #ffffffbf;border-radius:18px;width:min(540px,100%);position:relative;overflow:hidden;box-shadow:0 24px 70px #0f172a2e,0 5px 18px #0f172a14}.weekly-goal-modal__close{z-index:2;color:#64748b;cursor:pointer;background:#ffffffd9;border:1px solid #e2e8f0;border-radius:9px;place-items:center;width:32px;height:32px;transition:all .18s;display:grid;position:absolute;top:15px;right:15px}.weekly-goal-modal__close:hover{color:#0f172a;background:#fff;border-color:#cbd5e1}.weekly-goal-modal__close svg{width:16px;height:16px}.weekly-goal-modal__hero{background:radial-gradient(circle at 10% 0,#2563eb12,#0000 44%),#fff;border-bottom:1px solid #eef2f7;align-items:flex-start;gap:14px;padding:25px 58px 20px 25px;display:flex}.weekly-goal-modal__icon{color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;flex:none;place-items:center;width:42px;height:42px;display:grid}.weekly-goal-modal__icon svg{width:21px;height:21px}.weekly-goal-modal__eyebrow{color:#3b82f6;font-family:var(--font-mono);letter-spacing:.12em;font-size:9px;font-weight:700}.weekly-goal-modal__hero h3{color:#0f172a;margin:3px 0 0;font-size:18px;font-weight:650}.weekly-goal-modal__hero p{color:#64748b;margin:6px 0 0;font-size:11.5px;line-height:1.6}.weekly-goal-modal__selected{background:#f8fafc;border:1px solid #e7ecf3;border-radius:12px;justify-content:space-between;align-items:flex-start;gap:24px;margin:20px 24px 0;padding:15px 16px;display:flex}.weekly-goal-modal__selected>div:first-child>span,.weekly-goal-modal__reward>span{color:#94a3b8;font-size:9.5px;display:block}.weekly-goal-modal__selected>div:first-child>strong{color:#0f172a;margin-top:3px;font-size:14px;display:block}.weekly-goal-modal__selected p{color:#64748b;margin:4px 0 0;font-size:10.5px}.weekly-goal-modal__reward{text-align:right;flex:none}.weekly-goal-modal__reward strong{color:#2563eb;font-family:var(--font-mono);margin-top:2px;font-size:20px;display:inline-block}.weekly-goal-modal__reward small{color:#64748b;font-size:10px}.weekly-goal-modal__metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:14px 24px 0;display:grid}.weekly-goal-modal__metric{text-align:center;background:#fff;border:1px solid #e7ecf3;border-radius:11px;min-width:0;padding:12px 10px}.weekly-goal-modal__metric-icon{color:#2563eb;background:#eff6ff;border-radius:8px;place-items:center;width:28px;height:28px;margin:0 auto 7px;display:grid}.weekly-goal-modal__metric-icon svg{width:15px;height:15px}.weekly-goal-modal__metric>span{color:#94a3b8;text-overflow:ellipsis;white-space:nowrap;font-size:9.5px;display:block;overflow:hidden}.weekly-goal-modal__metric>strong{color:#334155;margin-top:4px;font-size:11px;display:block}.weekly-goal-modal__notice{color:#64748b;background:#fffbeb;border:1px solid #fde68a;border-radius:9px;align-items:flex-start;gap:8px;margin:14px 24px 0;padding:10px 12px;font-size:10.5px;line-height:1.55;display:flex}.weekly-goal-modal__notice svg{color:#d97706;flex:none;width:15px;height:15px;margin-top:1px}.weekly-goal-modal__footer{background:#fafbfd;border-top:1px solid #eef2f7;justify-content:flex-end;gap:9px;margin-top:20px;padding:15px 24px;display:flex}.weekly-goal-modal__confirm{justify-content:center;min-width:108px}.weekly-goal-modal__saving{align-items:center;gap:7px;display:inline-flex}.weekly-goal-modal__saving>span{border:2px solid #ffffff73;border-top-color:#fff;border-radius:999px;width:12px;height:12px;animation:.7s linear infinite weekly-goal-spin}@keyframes weekly-goal-spin{to{transform:rotate(360deg)}}@media(max-width:560px){.weekly-goal-modal{align-items:end;padding:12px}.weekly-goal-modal__panel{border-radius:17px}.weekly-goal-modal__metrics{grid-template-columns:1fr}.weekly-goal-modal__metric{text-align:left;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px;display:grid}.weekly-goal-modal__metric-icon{margin:0}.weekly-goal-modal__metric>span{text-align:left}.weekly-goal-modal__metric>strong{margin:0}}.course-tool-tabs{background:var(--color-bg-3);border-radius:10px;grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.course-tool-tabs button{color:var(--color-tx-3);cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;gap:5px;padding:8px;font-size:12px;transition:all .15s;display:flex}.course-tool-tabs button svg{width:14px;height:14px}.course-tool-tabs button.is-active{color:var(--color-tx-1);background:#fff;font-weight:600;box-shadow:0 1px 3px #0f172a14,0 1px 1px #0f172a0a}.course-note-panel{margin-top:14px}.course-note-panel__head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.course-note-panel__head h4{color:var(--color-tx-1);margin:0;font-size:12.5px;font-weight:650}.course-note-panel__head>div>span{color:var(--color-tx-4);margin-top:2px;font-size:9.5px;display:block}.course-note-new{color:#2563eb;cursor:pointer;background:#eff6ff;border:1px solid #bfdbfe;border-radius:7px;align-items:center;gap:4px;padding:5px 8px;font-size:10.5px;display:inline-flex}.course-note-new svg{width:12px;height:12px}.course-note-new:disabled{opacity:.55;cursor:wait}.course-note-legacy{background:#fffbeb;border:1px solid #fde68a;border-radius:9px;align-items:flex-start;gap:9px;margin-bottom:10px;padding:10px;display:flex}.course-note-legacy__icon{color:#d97706;background:#fef3c7;border-radius:7px;flex:none;place-items:center;width:26px;height:26px;display:grid}.course-note-legacy__icon svg{width:14px;height:14px}.course-note-legacy__body{min-width:0}.course-note-legacy__body strong,.course-note-legacy__body span{display:block}.course-note-legacy__body strong{color:#92400e;font-size:10.5px}.course-note-legacy__body span{color:#a16207;margin-top:2px;font-size:9px;line-height:1.45}.course-note-legacy__body>div{gap:5px;margin-top:7px;display:flex}.course-note-legacy__body button{color:#92400e;cursor:pointer;background:#fff;border:1px solid #fcd34d;border-radius:5px;padding:3px 7px;font-size:9px}.course-note-editor{border:1px solid var(--color-line-2);background:#fff;border-radius:10px;transition:border-color .18s,box-shadow .18s;overflow:hidden}.course-note-editor:focus-within,.course-note-editor.is-editing{border-color:#2563eb6b;box-shadow:0 0 0 3px #2563eb0f}.course-note-editor__head{color:var(--color-tx-3);justify-content:space-between;align-items:center;gap:8px;padding:8px 10px 0;font-size:9.5px;display:flex}.course-note-save-state{min-height:14px}.course-note-save-state span{color:#94a3b8;align-items:center;gap:4px;display:inline-flex}.course-note-save-state span.is-saved{color:#059669}.course-note-save-state span.is-saving i{border:1.5px solid #cbd5e1;border-top-color:#2563eb;border-radius:999px;width:9px;height:9px;animation:.7s linear infinite course-note-spin}.course-note-editor textarea{width:100%;min-height:112px;color:var(--color-tx-1);resize:vertical;background:0 0;border:0;outline:0;padding:9px 10px;font-family:inherit;font-size:11.5px;line-height:1.65;display:block}.course-note-editor textarea::placeholder{color:#aab4c3}.course-note-editor__timestamp{color:#64748b;background:#f8fafc;border:1px solid #e8edf3;border-radius:7px;align-items:center;gap:6px;margin:0 9px 7px;padding:6px 7px;font-size:9px;display:flex}.course-note-editor__timestamp>button:first-child{color:#2563eb;font-family:var(--font-mono);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;font-size:9.5px;display:inline-flex}.course-note-editor__timestamp svg{width:12px;height:12px}.course-note-editor__remove-time{color:#94a3b8;cursor:pointer;background:0 0;border:0;margin-left:auto;font-size:14px}.course-note-editor__foot{background:#fafbfd;border-top:1px solid #eef2f7;justify-content:space-between;align-items:center;gap:8px;padding:7px 9px;display:flex}.course-note-editor__foot>span{color:#94a3b8;font-family:var(--font-mono);font-size:8.5px}.course-note-capture{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:4px;padding:4px 6px;font-size:9px;display:inline-flex}.course-note-capture:hover{color:#2563eb;border-color:#bfdbfe}.course-note-capture svg{width:11px;height:11px}.course-note-capture:disabled{opacity:.5;cursor:not-allowed}.course-note-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:7px;margin-top:8px;padding:7px 8px;font-size:9.5px}.course-note-loading{color:#94a3b8;justify-content:center;align-items:center;gap:7px;padding:25px 8px;font-size:10px;display:flex}.course-note-loading span{border:1.5px solid #cbd5e1;border-top-color:#2563eb;border-radius:999px;width:11px;height:11px;animation:.7s linear infinite course-note-spin}.course-note-empty{text-align:center;padding:22px 8px 8px}.course-note-empty>div{color:#94a3b8;background:#f8fafc;border:1px solid #e8edf3;border-radius:9px;place-items:center;width:32px;height:32px;margin:0 auto 7px;display:grid}.course-note-empty svg{width:16px;height:16px}.course-note-empty strong,.course-note-empty span{display:block}.course-note-empty strong{color:#64748b;font-size:10.5px}.course-note-empty span{color:#94a3b8;margin-top:3px;font-size:9px}.course-note-list{flex-direction:column;gap:8px;margin-top:12px;padding-bottom:4px;display:flex}.course-note-item{background:#fbfcfe;border:1px solid #e7ecf3;border-radius:9px;padding:10px;transition:all .15s}.course-note-item:hover,.course-note-item.is-active{background:#fff;border-color:#bfdbfe}.course-note-item__meta{color:#94a3b8;justify-content:space-between;align-items:center;gap:7px;font-size:8.5px;display:flex}.course-note-time{color:#2563eb;font-family:var(--font-mono);cursor:pointer;background:#eff6ff;border:1px solid #dbeafe;border-radius:999px;align-items:center;gap:3px;padding:2px 5px;font-size:8.5px;display:inline-flex}.course-note-time svg{width:10px;height:10px}.course-note-item__content{color:#334155;text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;cursor:pointer;-webkit-line-clamp:4;background:0 0;border:0;-webkit-box-orient:vertical;width:100%;margin-top:7px;padding:0;font-family:inherit;font-size:10.5px;line-height:1.55;display:-webkit-box;overflow:hidden}.course-note-item__actions{opacity:0;justify-content:flex-end;gap:8px;margin-top:7px;transition:opacity .15s;display:flex}.course-note-item:hover .course-note-item__actions,.course-note-item.is-active .course-note-item__actions{opacity:1}.course-note-item__actions button{color:#64748b;cursor:pointer;background:0 0;border:0;padding:0;font-size:9px}.course-note-item__actions button:hover{color:#2563eb}.course-note-item__actions button.is-danger{color:#dc2626}.course-note-delete-confirm{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:7px;margin-top:8px;padding:7px;font-size:9px}.course-note-delete-confirm>div{gap:5px;margin-top:6px;display:flex}.course-note-delete-confirm button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:5px;padding:3px 6px;font-size:8.5px}.course-note-delete-confirm button.is-danger{color:#fff;background:#dc2626;border-color:#dc2626}.course-qa-preview{margin-top:14px}.course-qa-preview textarea{width:100%;min-height:90px;color:var(--color-tx-1);border:1px solid var(--color-line-2);resize:vertical;background:#fff;border-radius:9px;outline:0;padding:10px;font-family:inherit;font-size:11px}.course-qa-preview .btn{margin-top:8px}.course-qa-preview>div{color:var(--color-tx-4);text-align:center;padding-top:8px;font-size:9px}@keyframes course-note-spin{to{transform:rotate(360deg)}}.learn-theater-controls{align-items:center;gap:6px;display:flex}.learn-theater-button{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:6px;height:34px;padding:0 10px;font-size:11px;font-weight:550;transition:color .16s,background .16s,border-color .16s,box-shadow .16s;display:inline-flex}.learn-theater-button:hover{color:#2563eb;border-color:#bfdbfe}.learn-theater-button.is-active{color:#2563eb;background:#eff6ff;border-color:#bfdbfe;box-shadow:0 1px 2px #2563eb14}.learn-theater-button svg{width:14px;height:14px}.learn-layout.is-theater .learn-body{background:#f5f7fa;grid-template-columns:minmax(0,1fr) 340px}.learn-layout.is-theater .learn-side{display:none}.learn-layout.is-theater .learn-main{max-width:none;margin:0;padding:18px 22px 28px}.learn-layout.is-theater .learn-main article{width:100%;max-width:none}.learn-layout.is-theater .learn-main article>.mb-6{margin-bottom:12px}.learn-layout.is-theater .learn-main article>.mb-6 h1{font-size:22px}.learn-layout.is-theater .learn-main article>.inline-flex{margin-bottom:12px}.learn-layout.is-theater .learn-video-panel{width:100%}.learn-layout.is-theater .learn-video-host{background:#000;border-color:#1e293b;border-radius:14px;width:100%;max-width:none;box-shadow:0 18px 45px #0f172a26,0 4px 12px #0f172a14}.learn-layout.is-theater .learn-video-host .sv-wrap{width:100%;max-height:calc(100vh - 195px);margin:0 auto}.learn-layout.is-theater .learn-aside{background:#fff;padding:18px 16px}.learn-layout.is-theater .learn-progress-title,.learn-layout.is-theater .learn-progress-ring,.learn-layout.is-theater .learn-progress-toggle,.learn-layout.is-theater .learn-progress-divider{display:none}.learn-layout.is-theater .course-tool-tabs{z-index:2;position:sticky;top:0}.learn-layout.is-theater .course-note-panel{margin-top:12px}.learn-layout.is-theater .course-note-editor textarea{min-height:150px}.learn-layout.is-theater.is-notes-collapsed .learn-body{grid-template-columns:minmax(0,1fr)}.learn-layout.is-theater.is-notes-collapsed .learn-aside{display:none}.learn-layout.is-theater.is-notes-collapsed .learn-main{padding-left:32px;padding-right:32px}.learn-layout.is-theater.is-notes-collapsed .learn-video-host{max-width:min(1600px,177.778vh - 346.667px);margin-left:auto;margin-right:auto}.learn-layout.is-theater .learn-labs,.learn-layout.is-theater .learn-main article>.mt-12{display:none}@media(max-width:1180px){.learn-layout.is-theater .learn-body{grid-template-columns:minmax(0,1fr) 310px}.learn-layout.is-theater.is-notes-collapsed .learn-body{grid-template-columns:1fr}}@media(max-width:900px){.learn-theater-button span{display:none}.learn-theater-button{justify-content:center;width:34px;padding:0}.learn-layout.is-theater .learn-body{grid-template-columns:1fr}.learn-layout.is-theater .learn-aside{display:none}.learn-layout.is-theater .learn-main{padding:14px}}.learn-theater-primary{height:42px;padding:0 13px;position:relative}.learn-theater-primary.is-recommended{color:#1d4ed8;background:linear-gradient(135deg,#eff6ff,#f8fbff);border-color:#93c5fd;box-shadow:0 3px 10px #2563eb17,inset 0 0 0 1px #ffffffbf}.learn-theater-primary.is-recommended:hover{color:#1d4ed8;background:linear-gradient(135deg,#dbeafe,#eff6ff);border-color:#60a5fa;transform:translateY(-1px);box-shadow:0 5px 15px #2563eb24,inset 0 0 0 1px #fffc}.learn-theater-primary>svg{flex:none;width:17px;height:17px}.learn-theater-primary__text{flex-direction:column;align-items:flex-start;line-height:1.15;display:flex!important}.learn-theater-primary__text strong{color:inherit;font-size:11.5px;font-weight:650}.learn-theater-primary__text small{color:#64748b;white-space:nowrap;margin-top:2px;font-size:8.5px;font-weight:400}.learn-theater-recommend-badge{color:#fff;letter-spacing:.04em;background:linear-gradient(135deg,#2563eb,#3b82f6);border:2px solid #fff;border-radius:999px;justify-content:center;align-items:center;height:17px;padding:0 6px;font-size:8px;font-weight:700;position:absolute;top:-8px;right:-7px;box-shadow:0 3px 8px #2563eb38;display:inline-flex!important}.learn-theater-primary.is-active{height:34px;padding:0 10px}.learn-theater-primary.is-active .learn-theater-primary__text{display:inline-flex!important}.learn-theater-primary.is-active .learn-theater-primary__text strong{font-size:11px}@media(max-width:900px){.learn-theater-primary{width:42px;height:38px;padding:0}.learn-theater-primary__text{display:none!important}.learn-theater-recommend-badge{padding:0 4px;font-size:7px;top:-7px;right:-10px}}.learn-top-actions{flex:none;align-items:center;gap:12px;min-width:0;display:flex}.learn-theater-controls{flex:none;align-items:center;gap:7px;display:flex}.learn-theater-primary{white-space:nowrap;flex:none;min-width:166px}.learn-theater-primary.is-active{min-width:108px}.learn-theater-notes-button{white-space:nowrap;flex:none;min-width:94px}.learn-top-progress{color:var(--color-tx-3);flex:none;align-items:center;gap:8px;font-size:11px;display:flex}.learn-top-progress>div{background:var(--color-bg-3);border-radius:999px;width:132px;height:5px;overflow:hidden}.learn-top-progress>div>i{border-radius:inherit;background:linear-gradient(90deg,#2563eb,#10b981);height:100%;transition:width .35s;display:block}.learn-top-progress strong{color:#2563eb;min-width:34px;font-family:var(--font-mono);text-align:right;font-size:10.5px}.learn-exit-button{white-space:nowrap;flex:none}@media(max-width:1380px){.learn-theater-primary{min-width:118px;height:36px}.learn-theater-primary__text small{display:none!important}.learn-theater-primary__text strong{font-size:11px}}@media(max-width:1150px){.learn-top-progress{display:none}}@media(max-width:760px){.learn-top{padding-left:12px;padding-right:12px}.learn-top-actions{gap:6px}.learn-theater-primary,.learn-theater-primary.is-active,.learn-theater-notes-button{justify-content:center;width:36px;min-width:36px;padding:0}.learn-theater-primary__text,.learn-theater-notes-button>span{display:none!important}.learn-exit-button>span{display:none}}body:has(.article-editor-shell) .admin-page{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;padding-left:clamp(18px,1.8vw,36px)!important;padding-right:clamp(18px,1.8vw,36px)!important}body:has(.article-editor-shell) .article-editor-shell{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}body:has(.article-editor-shell) .article-editor-layout{grid-template-columns:minmax(0,1fr) 280px!important;gap:22px!important;width:100%!important;max-width:none!important;display:grid!important}body:has(.article-editor-shell) .article-editor-main{width:100%!important;min-width:0!important;max-width:none!important}body:has(.article-editor-shell) .article-editor-sidebar{width:280px;min-width:280px}body:has(.article-editor-shell) .article-markdown-host .md-editor-workspace{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}body:has(.article-editor-shell) .article-markdown-host,body:has(.article-editor-shell) .md-editor-shell,body:has(.article-editor-shell) .md-editor-pane,body:has(.article-editor-shell) .md-editor-source{width:100%!important;min-width:0!important;max-width:none!important}@media(min-width:1700px){body:has(.article-editor-shell) .article-editor-layout{grid-template-columns:minmax(0,1fr) 300px!important;gap:26px!important}body:has(.article-editor-shell) .article-editor-sidebar{width:300px;min-width:300px}}@media(max-width:1180px){body:has(.article-editor-shell) .article-editor-layout{grid-template-columns:minmax(0,1fr)!important}body:has(.article-editor-shell) .article-editor-sidebar{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;min-width:0;display:grid;position:static}}@media(max-width:820px){body:has(.article-editor-shell) .article-markdown-host .md-editor-workspace{grid-template-columns:1fr!important}body:has(.article-editor-shell) .article-editor-sidebar{grid-template-columns:1fr}}.course-content-format{border:1px solid var(--color-line-1);background:var(--color-bg-2);border-radius:11px;justify-content:space-between;align-items:center;gap:18px;margin-bottom:14px;padding:12px 14px;display:flex}.course-content-format__title{color:var(--color-tx-1);font-size:13px;font-weight:650}.course-content-format__desc{color:var(--color-tx-4);margin-top:3px;font-size:11.5px}.course-content-format__switch{border:1px solid var(--color-line-1);background:#fff;border-radius:9px;flex-shrink:0;gap:4px;padding:4px;display:inline-flex}.course-content-format__switch button{height:31px;color:var(--color-tx-3);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:0 12px;font-size:12px}.course-content-format__switch button span{color:#2563eb;margin-left:3px;font-size:9px}.course-content-format__switch button.is-active{color:#1d4ed8;background:#eff6ff;font-weight:600;box-shadow:inset 0 0 0 1px #bfdbfe}.course-markdown-editor{width:100%;min-width:0}.course-markdown-editor .md-editor-workspace{min-height:520px}.course-markdown-editor .markdown-body{padding:28px 30px}@media(max-width:920px){.course-content-format{flex-direction:column;align-items:stretch}.course-content-format__switch{width:100%}.course-content-format__switch button{flex:1}.course-markdown-editor .md-editor-workspace{grid-template-columns:1fr}}.course-markdown-editor .md-editor-shell{overflow:visible}.course-markdown-editor .md-editor-toolbar{z-index:20;border-radius:13px 13px 0 0;position:sticky;top:68px;box-shadow:0 5px 14px #0f172a0d}.course-markdown-editor .md-editor-workspace{align-items:stretch;min-height:560px;height:auto!important}.course-markdown-editor .md-editor-source{min-height:560px;height:auto!important;overflow:visible!important}.course-markdown-editor .md-editor-source .cm-editor{min-height:560px;height:auto!important;max-height:none!important}.course-markdown-editor .md-editor-source .cm-scroller{min-height:560px;height:auto!important;max-height:none!important;overflow:visible!important}.course-markdown-editor .md-editor-source .cm-content{min-height:520px;padding-bottom:80px}.course-markdown-editor .md-editor-preview{min-height:560px;padding-bottom:40px;height:auto!important;max-height:none!important;overflow:visible!important}.course-markdown-editor .md-editor-preview .markdown-body{height:auto;min-height:520px;margin-bottom:0}.course-markdown-editor .md-editor-preview-pane{background:#f3f5f8;align-self:stretch}.course-markdown-editor .md-editor-pane>header{z-index:12;position:sticky;top:122px}@media(max-width:920px){.course-markdown-editor .md-editor-workspace{grid-template-columns:1fr}.course-markdown-editor .md-editor-pane>header,.course-markdown-editor .md-editor-toolbar{position:static}}body:has(.article-editor-shell) .article-markdown-host .md-editor-shell{overflow:visible!important}body:has(.article-editor-shell) .article-markdown-host .md-editor-toolbar{z-index:24;border-radius:13px 13px 0 0;position:sticky;top:68px;box-shadow:0 5px 14px #0f172a0d}body:has(.article-editor-shell) .article-markdown-host .md-editor-workspace{align-items:stretch;min-height:620px;height:auto!important}body:has(.article-editor-shell) .article-markdown-host .md-editor-source{min-height:620px;height:auto!important;max-height:none!important;overflow:visible!important}body:has(.article-editor-shell) .article-markdown-host .md-editor-source .cm-editor{min-height:620px;height:auto!important;max-height:none!important}body:has(.article-editor-shell) .article-markdown-host .md-editor-source .cm-scroller{min-height:620px;height:auto!important;max-height:none!important;overflow:visible!important}body:has(.article-editor-shell) .article-markdown-host .md-editor-source .cm-content{min-height:580px;padding-bottom:90px}body:has(.article-editor-shell) .article-markdown-host .md-editor-preview{min-height:620px;padding-bottom:42px;height:auto!important;max-height:none!important;overflow:visible!important}body:has(.article-editor-shell) .article-markdown-host .md-editor-preview .markdown-body{min-height:580px;margin-bottom:0;height:auto!important;max-height:none!important}body:has(.article-editor-shell) .article-markdown-host .md-editor-pane>header{z-index:16;position:sticky;top:122px}body:has(.article-editor-shell) .article-markdown-host .md-editor-preview-pane{background:#f3f5f8;align-self:stretch}body:has(.article-editor-shell) .article-markdown-host .md-editor-source .cm-editor,body:has(.article-editor-shell) .article-markdown-host .md-editor-preview{height:auto!important;max-height:none!important}@media(max-width:920px){body:has(.article-editor-shell) .article-markdown-host .md-editor-workspace{grid-template-columns:1fr!important}body:has(.article-editor-shell) .article-markdown-host .md-editor-toolbar,body:has(.article-editor-shell) .article-markdown-host .md-editor-pane>header{position:static}}.path-card{grid-template-columns:200px minmax(0,1fr) auto;align-items:center;gap:24px;min-height:164px;display:grid}.path-card>.path-icon{align-self:center;width:200px;min-width:200px;height:auto}.path-card .path-thumb{aspect-ratio:16/9;border:1px solid var(--color-line-1);background:#fff;border-radius:14px;place-items:center;width:100%;height:auto;display:grid;overflow:hidden}.path-card .path-thumb img{object-fit:contain;background:#fff;width:100%;height:100%;padding:6px;transition:transform .25s;display:block}.path-card:hover .path-thumb img{transform:scale(1.015)}.path-card .path-thumb-fallback{place-items:center;width:100%;height:100%;display:grid}.path-card .path-thumb-fallback svg{width:42px;height:42px}@media(min-width:768px)and (max-width:1100px){.path-card{grid-template-columns:180px minmax(0,1fr);grid-template-areas:"icon body""icon footer";gap:10px 20px}.path-card>.path-icon{grid-area:icon;width:180px;min-width:180px}.path-card>.path-main{grid-area:body}.path-card>.path-footer{grid-area:footer;justify-content:flex-start}}@media(max-width:767px){.path-card{grid-template-columns:minmax(0,1fr);gap:16px;padding:16px;display:grid}.path-card>.path-icon{width:100%;min-width:0}.path-card .path-thumb{aspect-ratio:16/9;width:100%}.path-card>.path-footer{justify-content:space-between;width:100%}}.lab-chapter-hero{color:#0f172a;background:linear-gradient(118deg,#fff,#f3f8ff 58%,#edf5ff);border:1px solid #cfe0ff;box-shadow:0 24px 55px -38px #1e40af4d}.lab-chapter-hero:after{color:#2563eb12}.lab-chapter-hero .h-eyebrow{color:#2563eb}.lab-chapter-course{color:#4f6c95}.lab-chapter-hero p:last-child{color:#526a8d}.lab-chapter-count b{color:#1d4ed8}.lab-chapter-count span{color:#6480a8}.lab-favorite-button{z-index:2;color:#526a8d;background:#ffffffd1;border:1px solid #0f172a1a;border-radius:10px;align-items:center;gap:7px;padding:8px 12px;font-size:12px;font-weight:650;transition:all .18s;display:inline-flex;position:absolute;bottom:28px;right:28px;box-shadow:0 8px 20px -15px #0f172a59}.lab-favorite-button svg{width:15px;height:15px}.lab-favorite-button:hover{color:#2563eb;background:#fff;border-color:#93c5fd}.lab-favorite-button.is-favorite{color:#b45309;background:#fffbeb;border-color:#fde68a}.lab-favorite-button.is-favorite svg{fill:#f59e0b}.lab-hero.md\\:pr-36 .lab-favorite-button{right:126px}.lab-card-kicker{color:#2563eb;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px;font:650 10px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace}.lab-task-brief{background:linear-gradient(135deg,#fffffff0,#f1f7ffe6);border-color:#d8e8ff}.lab-task-steps{border-top:1px solid #dce8f8;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:19px;padding-top:15px;display:grid}.lab-task-steps span{color:#64748b;flex-direction:column;gap:4px;font-size:12px;display:flex}.lab-task-steps b{color:#2563eb;letter-spacing:.08em;font:700 11px ui-monospace,SFMono-Regular,Menlo,monospace}.lab-learning-context{padding:21px 24px}.lab-learning-context h3{margin-bottom:11px}.lab-course-link{color:inherit;background:#fff;border:1px solid #dce8f8;border-radius:12px;align-items:center;gap:11px;padding:12px;transition:all .18s;display:flex}.lab-course-link:hover{border-color:#93c5fd;transform:translateY(-1px);box-shadow:0 10px 22px -19px #2563eb80}.lab-course-link__icon{color:#2563eb;background:#eff6ff;border-radius:9px;flex:0 0 30px;place-items:center;width:30px;height:30px;font-size:12px;font-weight:750;display:grid}.lab-course-link b,.lab-course-link small{display:block}.lab-course-link b{color:#1e293b;font-size:13px}.lab-course-link small{color:#71809a;margin-top:3px;font-size:11px}.lab-course-link__arrow{color:#2563eb;margin-left:auto;font-size:17px}.lab-leaderboard-card{background:linear-gradient(145deg,#fff,#f8fbff);border:1px solid #e4ebf5;border-radius:16px;overflow:hidden;box-shadow:0 14px 31px -28px #0f172a61}.lab-leaderboard-head{border-bottom:1px solid #e9eff7;justify-content:space-between;align-items:flex-end;padding:17px 18px 14px;display:flex}.lab-leaderboard-head .lab-card-kicker{margin-bottom:5px}.lab-leaderboard-head h3{color:#172033;margin:0;font-size:14px;font-weight:700}.lab-leaderboard-total{color:#2563eb;font:700 24px/1 ui-monospace,SFMono-Regular,Menlo,monospace}.lab-leaderboard-list{padding:6px 13px 10px}.lab-leaderboard-item{border-bottom:1px solid #eef3f8;align-items:center;gap:9px;padding:9px 4px;display:flex}.lab-leaderboard-item:last-child{border-bottom:0}.lab-leaderboard-rank{color:#94a3b8;text-align:center;width:18px;font:700 11px ui-monospace,SFMono-Regular,Menlo,monospace}.lab-leaderboard-rank.is-top{color:#d97706}.lab-leaderboard-avatar{color:#2563eb;background:#eaf2ff;border-radius:9px;place-items:center;width:27px;height:27px;font-size:11px;font-weight:750;display:grid;overflow:hidden}.lab-leaderboard-avatar img{object-fit:cover;width:100%;height:100%}.lab-leaderboard-item b,.lab-leaderboard-item small{display:block}.lab-leaderboard-item b{color:#334155;text-overflow:ellipsis;white-space:nowrap;max-width:205px;font-size:12px;overflow:hidden}.lab-leaderboard-item small{color:#94a3b8;margin-top:2px;font-size:10px}.lab-leaderboard-empty{color:#94a3b8;text-align:center;padding:18px;font-size:12px;line-height:1.7}@media(max-width:767px){.lab-favorite-button{margin-top:16px;position:static}.lab-hero.md\\:pr-36 .lab-favorite-button{margin-top:16px;position:static}.lab-task-steps{grid-template-columns:1fr}.lab-task-steps span{flex-direction:row;align-items:center}.lab-chapter-hero{padding:26px}}.lab-module-hero{color:#10213f;background:linear-gradient(118deg,#fff,#f5f9ff 56%,#eaf3ff);border-color:#cfe0ff;box-shadow:0 18px 42px #3260aa1f}.lab-module-hero:after{color:#2563eb11}.lab-module-hero .h-eyebrow{color:#2563eb}.lab-module-hero h1{color:#10213f}.lab-module-hero p{color:#587093}.lab-hero-action-row{z-index:2;justify-content:flex-end;margin:12px 0 10px;display:flex;position:relative}.lab-hero .lab-favorite-button{color:#45627f;min-height:34px;box-shadow:none;background:#ffffffc2;border-color:#d6e2f1;margin:0;padding:0 12px;position:static;bottom:auto;right:auto}.lab-hero.md\\:pr-36 .lab-favorite-button{color:#45627f;min-height:34px;box-shadow:none;background:#ffffffc2;border-color:#d6e2f1;margin:0;padding:0 12px;position:static;bottom:auto;right:auto}.lab-hero .lab-favorite-button:hover{color:#2563eb;border-color:#91b9fa}.lab-hero .lab-favorite-button.is-favorite{color:#2563eb;background:#eff6ff;border-color:#93c5fd}.lab-hero .lab-favorite-button.is-favorite svg{fill:none}@media(max-width:640px){.lab-hero-action-row{justify-content:flex-start}}.lab-route-hero,.labs-path-hero,.lab-module-hero{color:#fff;background:linear-gradient(116deg,#ffffff13 0,#ffffff13 47%,#0000 47.1%),linear-gradient(116deg,#1f458e,#2758af 52%,#316ded);border-color:#0000;overflow:hidden;box-shadow:0 22px 48px #2656ae3d}.lab-route-hero:after,.labs-path-hero:after,.lab-module-hero:after{color:#ffffff1a}.lab-route-hero .h-eyebrow,.labs-path-hero .h-eyebrow,.lab-module-hero .h-eyebrow{color:#bfdbfe}.lab-route-hero h1,.labs-path-hero h1,.lab-module-hero h1{color:#fff}.lab-route-hero p,.labs-path-hero p,.lab-module-hero p{color:#dbeafe}.lab-route-hero .btn,.labs-path-hero .btn,.lab-module-hero .btn{color:#fff;background:#ffffff14;border-color:#ffffff5c}.lab-route-hero .btn:hover,.labs-path-hero .btn:hover,.lab-module-hero .btn:hover{background:#ffffff29;border-color:#ffffffb8}.lab-chapter-hero{background:radial-gradient(circle at 86% 15%,#5b90ff21,#0000 24%),linear-gradient(118deg,#fff,#f3f8ff 57%,#e8f2ff);box-shadow:0 18px 42px #3460aa1f}.lab-module-card,.lab-chapter-card{background:linear-gradient(145deg,#fff,#f8fbff 68%,#eff6ff);border-color:#d4e3f7;box-shadow:0 14px 30px #3458911a}.lab-module-card:hover,.lab-chapter-card:hover{border-color:#9fc3fb;box-shadow:0 18px 34px #2f67d626}.lab-list-pagination{justify-content:center;align-items:center;gap:10px;margin-top:32px;font-size:13px;display:flex}.lab-list-pagination__pages{align-items:center;gap:5px;display:flex}.lab-list-pagination__pages button{color:#64748b;background:#ffffffc2;border:1px solid #d8e3f1;border-radius:9px;place-items:center;width:32px;height:32px;font:600 12px ui-monospace,SFMono-Regular,Menlo,monospace;transition:all .18s;display:grid}.lab-list-pagination__pages button:hover{color:#2563eb;border-color:#9fc3fb}.lab-list-pagination__pages button.is-active{color:#fff;background:#2563eb;border-color:#2563eb;box-shadow:0 7px 15px #2563eb33}@media(max-width:540px){.lab-list-pagination{gap:6px}.lab-list-pagination .btn{padding-left:10px;padding-right:10px}.lab-list-pagination__pages button{width:29px;height:29px}}.hero-cover{background:#fff!important}.hero-cover img{object-fit:contain!important;background:#fff!important}@media(max-width:900px){.lab-route-shell,.lab-module-shell{width:100%;min-width:0}.lab-route-hero,.lab-module-hero{box-sizing:border-box;flex-direction:column;align-items:flex-start;width:100%}.lab-route-all{margin-top:8px}}@media(max-width:760px){.lab-route-grid,.lab-module-grid{grid-template-columns:minmax(0,1fr)!important}.lab-route-card,.lab-module-card{width:100%}}.lab-route-cover{aspect-ratio:16/9;width:100%;overflow:hidden;background:#f8fafc!important;height:auto!important}.lab-route-cover img{object-fit:contain!important;object-position:center center!important;background:#f8fafc!important;width:100%!important;height:100%!important;padding:0!important;transform:none!important}@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-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@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-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{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-ease{syntax:"*";inherits:false}
