/*! tailwindcss v4.3.3 | 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-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial;--tw-content:"";--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-duration:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--radius-xs:.125rem;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--color-border:var(--border)}}@layer base{*,:before,:after{border-style:solid;border-width:0;border-color:var(--color-border,currentColor)}input,textarea,select,button{font:inherit;color:inherit}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{color:#111820;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background:#fff;min-height:100vh;margin:0;font-family:PingFang SC,Microsoft YaHei,sans-serif}img,svg{max-width:100%;display:block}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}a{color:inherit}h1,h2,h3,h4,p,ul,ol,figure,table{margin:0}ul,ol{padding:0;list-style:none}table{border-collapse:collapse}:focus-visible{outline-offset:3px;outline:3px solid #0b3fd1}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-x-0{inset-inline:0}.inset-y-0{inset-block:0}.top-0{top:0}.top-4{top:calc(var(--spacing) * 4)}.right-0{right:0}.right-2{right:calc(var(--spacing) * 2)}.right-4{right:calc(var(--spacing) * 4)}.bottom-0{bottom:0}.left-0{left:0}.z-50{z-index:50}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.my-1{margin-block:var(--spacing)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-auto{margin-top:auto}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-row{display:table-row}.field-sizing-content{field-sizing:content}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-\[calc\(100\%-1px\)\]{height:calc(100% - 1px)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.max-h-\(--radix-select-content-available-height\){max-height:var(--radix-select-content-available-height)}.min-h-21{min-height:calc(var(--spacing) * 21)}.w-3\/4{width:75%}.w-55{width:calc(var(--spacing) * 55)}.w-60{width:calc(var(--spacing) * 60)}.w-\[min\(440px\,100\%\)\]{width:min(440px,100%)}.w-fit{width:fit-content}.w-full{width:100%}.min-w-0{min-width:0}.min-w-32{min-width:calc(var(--spacing) * 32)}.min-w-\[8rem\]{min-width:8rem}.min-w-\[620px\]{min-width:620px}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.origin-\(--radix-select-content-transform-origin\){transform-origin:var(--radix-select-content-transform-origin)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.resize-y{resize:vertical}.scroll-my-1{scroll-margin-block:var(--spacing)}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-0{gap:0}.gap-1{gap:var(--spacing)}.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-4{gap:calc(var(--spacing) * 4)}.gap-\[7px\]{gap:7px}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.overflow-y-hidden{overflow-y:hidden}.rounded-\[4px\]{border-radius:4px}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:calc(var(--radius) + 4px)}.rounded-xs{border-radius:var(--radius-xs)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-border{border-color:var(--border)}.border-border-soft{border-color:var(--border-soft)}.border-input{border-color:var(--input)}.border-risk-line{border-color:var(--risk-line)}.border-transparent{border-color:#0000}.border-warn-line{border-color:var(--warn-line)}.bg-\[var\(--line-soft\)\]{background-color:var(--line-soft)}.bg-accent{background-color:var(--accent)}.bg-background{background-color:var(--background)}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab, red, red)){.bg-black\/50{background-color:color-mix(in oklab, var(--color-black) 50%, transparent)}}.bg-border{background-color:var(--border)}.bg-destructive{background-color:var(--destructive)}.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/50{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.bg-popover{background-color:var(--popover)}.bg-primary,.bg-primary\/20{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/20{background-color:color-mix(in oklab, var(--primary) 20%, transparent)}}.bg-risk-bg{background-color:var(--risk-bg)}.bg-secondary{background-color:var(--secondary)}.bg-transparent{background-color:#0000}.bg-warn-bg{background-color:var(--warn-bg)}.bg-\[linear-gradient\(90deg\,var\(--primary\)\,\#1a5ae0\)\]{background-image:linear-gradient(90deg,var(--primary),#1a5ae0)}.p-0{padding:0}.p-1{padding:var(--spacing)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-\[3px\]{padding:3px}.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-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-\[11px\]{padding-block:11px}.pr-8{padding-right:calc(var(--spacing) * 8)}.pl-2{padding-left:calc(var(--spacing) * 2)}.text-left{text-align:left}.align-middle{vertical-align:middle}.font-mono{font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,monospace}.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-\[11\.5px\]{font-size:11.5px}.text-\[12\.5px\]{font-size:12.5px}.text-\[13px\]{font-size:13px}.text-\[17px\]{font-size:17px}.leading-\[1\.7\]{--tw-leading:1.7;line-height:1.7}.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-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-wrap{text-wrap:wrap}.whitespace-nowrap{white-space:nowrap}.text-foreground,.text-foreground\/60{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.text-foreground\/60{color:color-mix(in oklab, var(--foreground) 60%, transparent)}}.text-muted-foreground{color:var(--muted-foreground)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-risk{color:var(--risk)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-warn{color:var(--warn)}.text-white{color:var(--color-white)}.no-underline{text-decoration-line:none}.underline-offset-4{text-underline-offset:4px}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.shadow-\[0_8px_20px_-12px_rgba\(11\,63\,209\,0\.85\)\]{--tw-shadow:0 8px 20px -12px var(--tw-shadow-color,#0b3fd1d9);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px 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-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px 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-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);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)}.ring-offset-background{--tw-ring-offset-color:var(--background)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.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,)}.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-\[color\,box-shadow\]{transition-property:color,box-shadow;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-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.group-data-\[orientation\=horizontal\]\/tabs\:h-9:is(:where(.group\/tabs)[data-orientation=horizontal] *){height:calc(var(--spacing) * 9)}.group-data-\[orientation\=vertical\]\/tabs\:h-fit:is(:where(.group\/tabs)[data-orientation=vertical] *){height:fit-content}.group-data-\[orientation\=vertical\]\/tabs\:w-full:is(:where(.group\/tabs)[data-orientation=vertical] *){width:100%}.group-data-\[orientation\=vertical\]\/tabs\:flex-col:is(:where(.group\/tabs)[data-orientation=vertical] *){flex-direction:column}.group-data-\[orientation\=vertical\]\/tabs\:justify-start:is(:where(.group\/tabs)[data-orientation=vertical] *){justify-content:flex-start}.group-data-\[variant\=default\]\/tabs-list\:px-4:is(:where(.group\/tabs-list)[data-variant=default] *){padding-inline:calc(var(--spacing) * 4)}.group-data-\[variant\=default\]\/tabs-list\:text-\[13px\]:is(:where(.group\/tabs-list)[data-variant=default] *){font-size:13px}.group-data-\[variant\=default\]\/tabs-list\:font-semibold:is(:where(.group\/tabs-list)[data-variant=default] *){--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.group-data-\[variant\=default\]\/tabs-list\:text-secondary-foreground:is(:where(.group\/tabs-list)[data-variant=default] *){color:var(--secondary-foreground)}.group-data-\[variant\=line\]\/tabs-list\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *){background-color:#0000}.selection\:bg-primary ::selection{background-color:var(--primary)}.selection\:bg-primary::selection{background-color:var(--primary)}.selection\:text-primary-foreground ::selection{color:var(--primary-foreground)}.selection\:text-primary-foreground::selection{color:var(--primary-foreground)}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-7::file-selector-button{height:calc(var(--spacing) * 7)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--foreground)}.placeholder\:text-\[\#93a1b3\]::placeholder{color:#93a1b3}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:bg-foreground:after{content:var(--tw-content);background-color:var(--foreground)}.after\:opacity-0:after{content:var(--tw-content);opacity:0}.after\:transition-opacity:after{content:var(--tw-content);transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.group-data-\[orientation\=horizontal\]\/tabs\:after\:inset-x-0:is(:where(.group\/tabs)[data-orientation=horizontal] *):after{content:var(--tw-content);inset-inline:0}.group-data-\[orientation\=horizontal\]\/tabs\:after\:bottom-\[-5px\]:is(:where(.group\/tabs)[data-orientation=horizontal] *):after{content:var(--tw-content);bottom:-5px}.group-data-\[orientation\=horizontal\]\/tabs\:after\:h-0\.5:is(:where(.group\/tabs)[data-orientation=horizontal] *):after{content:var(--tw-content);height:calc(var(--spacing) * .5)}.group-data-\[orientation\=vertical\]\/tabs\:after\:inset-y-0:is(:where(.group\/tabs)[data-orientation=vertical] *):after{content:var(--tw-content);inset-block:0}.group-data-\[orientation\=vertical\]\/tabs\:after\:-right-1:is(:where(.group\/tabs)[data-orientation=vertical] *):after{content:var(--tw-content);right:calc(var(--spacing) * -1)}.group-data-\[orientation\=vertical\]\/tabs\:after\:w-0\.5:is(:where(.group\/tabs)[data-orientation=vertical] *):after{content:var(--tw-content);width:calc(var(--spacing) * .5)}@media (hover:hover){.hover\:-translate-y-px:hover{--tw-translate-y:-1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:border-\[\#c9d4e4\]:hover{border-color:#c9d4e4}.hover\:bg-\[\#0a34ab\]:hover{background-color:#0a34ab}.hover\:bg-\[\#fafcff\]:hover{background-color:#fafcff}.hover\:bg-accent:hover{background-color:var(--accent)}.hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab, var(--destructive) 90%, transparent)}}.hover\:bg-secondary:hover,.hover\:bg-secondary\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab, var(--secondary) 80%, transparent)}}.hover\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.group-data-\[variant\=default\]\/tabs-list\:hover\:bg-secondary:is(:where(.group\/tabs-list)[data-variant=default] *):hover{background-color:var(--secondary)}}.focus\:bg-accent:focus{background-color:var(--accent)}.focus\:text-accent-foreground:focus{color:var(--accent-foreground)}.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-ring:focus{--tw-ring-color:var(--ring)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus\:outline-hidden:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus\:outline-hidden:focus{outline-offset:2px;outline:2px solid #0000}}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.focus-visible\:ring-primary\/10:focus-visible{--tw-ring-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-primary\/10:focus-visible{--tw-ring-color:color-mix(in oklab, var(--primary) 10%, transparent)}}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.focus-visible\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-ring:focus-visible{outline-color:var(--ring)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.has-aria-expanded\:bg-\[\#fafcff\]:has([aria-expanded=true]){background-color:#fafcff}.has-\[\>svg\]\:px-1\.5:has(>svg){padding-inline:calc(var(--spacing) * 1.5)}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing) * 2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing) * 3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing) * 4)}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[orientation\=horizontal\]\:flex-col[data-orientation=horizontal]{flex-direction:column}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:var(--muted-foreground)}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\[size\=default\]\:h-9[data-size=default]{height:calc(var(--spacing) * 9)}.data-\[size\=sm\]\:h-8[data-size=sm]{height:calc(var(--spacing) * 8)}:is(.\*\:data-\[slot\=select-value\]\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\*\:data-\[slot\=select-value\]\:flex>*)[data-slot=select-value]{display:flex}:is(.\*\:data-\[slot\=select-value\]\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\*\:data-\[slot\=select-value\]\:gap-2>*)[data-slot=select-value]{gap:calc(var(--spacing) * 2)}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:var(--background)}.data-\[state\=active\]\:text-foreground[data-state=active]{color:var(--foreground)}.group-data-\[variant\=default\]\/tabs-list\:data-\[state\=active\]\:bg-primary:is(:where(.group\/tabs-list)[data-variant=default] *)[data-state=active]{background-color:var(--primary)}.group-data-\[variant\=default\]\/tabs-list\:data-\[state\=active\]\:text-primary-foreground:is(:where(.group\/tabs-list)[data-variant=default] *)[data-state=active]{color:var(--primary-foreground)}.group-data-\[variant\=default\]\/tabs-list\:data-\[state\=active\]\:shadow-sm:is(:where(.group\/tabs-list)[data-variant=default] *)[data-state=active]{--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)}.group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{background-color:#0000}.group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:shadow-none:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:after\:opacity-100:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]:after{content:var(--tw-content);opacity:1}@media (hover:hover){.group-data-\[variant\=default\]\/tabs-list\:data-\[state\=active\]\:hover\:bg-primary:is(:where(.group\/tabs-list)[data-variant=default] *)[data-state=active]:hover{background-color:var(--primary)}}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:duration-300[data-state=closed]{--tw-duration:.3s;transition-duration:.3s}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y:100%}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x:-100%}.data-\[state\=closed\]\:slide-out-to-right[data-state=closed]{--tw-exit-translate-x:100%}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y:-100%}.data-\[state\=open\]\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:var(--secondary)}.data-\[state\=open\]\:duration-500[data-state=open]{--tw-duration:.5s;transition-duration:.5s}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y:100%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x:-100%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x:100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y:-100%}.data-\[state\=selected\]\:bg-accent[data-state=selected]{background-color:var(--accent)}.data-\[variant\=line\]\:rounded-none[data-variant=line]{border-radius:0}@media (width>=40rem){.sm\:max-w-\[440px\]{max-width:440px}.sm\:max-w-sm{max-width:var(--container-sm)}}@media (prefers-color-scheme:dark){.dark\:bg-destructive\/60{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-destructive\/60{background-color:color-mix(in oklab, var(--destructive) 60%, transparent)}}.dark\:bg-input\/30{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-input\/30{background-color:color-mix(in oklab, var(--input) 30%, transparent)}}.dark\:text-muted-foreground{color:var(--muted-foreground)}@media (hover:hover){.dark\:hover\:bg-accent\/50:hover{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-accent\/50:hover{background-color:color-mix(in oklab, var(--accent) 50%, transparent)}}.dark\:hover\:bg-input\/50:hover{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-input\/50:hover{background-color:color-mix(in oklab, var(--input) 50%, transparent)}}.dark\:hover\:text-foreground:hover{color:var(--foreground)}}.dark\:focus-visible\:ring-destructive\/40:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:focus-visible\:ring-destructive\/40:focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\:aria-invalid\:ring-destructive\/40[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:aria-invalid\:ring-destructive\/40[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\:data-\[state\=active\]\:border-input[data-state=active]{border-color:var(--input)}.dark\:data-\[state\=active\]\:bg-input\/30[data-state=active]{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:data-\[state\=active\]\:bg-input\/30[data-state=active]{background-color:color-mix(in oklab, var(--input) 30%, transparent)}}.dark\:data-\[state\=active\]\:text-foreground[data-state=active]{color:var(--foreground)}.dark\:group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:border-transparent:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{border-color:#0000}.dark\:group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{background-color:#0000}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\:not\(\[class\*\=\'text-\'\]\)\]\:text-muted-foreground svg:not([class*=text-]){color:var(--muted-foreground)}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-style:var(--tw-border-style);border-width:0}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}:is(.\*\:\[span\]\:last\:flex>*):is(span):last-child{display:flex}:is(.\*\:\[span\]\:last\:items-center>*):is(span):last-child{align-items:center}:is(.\*\:\[span\]\:last\:gap-2>*):is(span):last-child{gap:calc(var(--spacing) * 2)}.\[\&\>\[data-slot\=progress-indicator\]\]\:bg-\[linear-gradient\(90deg\,var\(--primary\)\,var\(--cyan\)\)\]>[data-slot=progress-indicator]{background-image:linear-gradient(90deg,var(--primary),var(--cyan))}.\[\&\>\[data-slot\=progress-indicator\]\]\:bg-\[linear-gradient\(90deg\,var\(--risk\)\,\#ef4444\)\]>[data-slot=progress-indicator]{background-image:linear-gradient(90deg,var(--risk),#ef4444)}.\[\&\>\[data-slot\=progress-indicator\]\]\:bg-\[linear-gradient\(90deg\,var\(--warn\)\,\#f59e0b\)\]>[data-slot=progress-indicator]{background-image:linear-gradient(90deg,var(--warn),#f59e0b)}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y:2px;translate:var(--tw-translate-x) var(--tw-translate-y)}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3>svg{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&\>tr\]\:last\:border-b-0>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (hover:hover){a.\[a\&\]\:hover\:bg-accent:hover{background-color:var(--accent)}a.\[a\&\]\:hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){a.\[a\&\]\:hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab, var(--destructive) 90%, transparent)}}a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:color-mix(in oklab, var(--primary) 90%, transparent)}}a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:color-mix(in oklab, var(--secondary) 90%, transparent)}}a.\[a\&\]\:hover\:text-accent-foreground:hover{color:var(--accent-foreground)}a.\[a\&\]\:hover\:underline:hover{text-decoration-line:underline}}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}:root{--radius:8px;--background:#fff;--foreground:#0c1420;--card:#fff;--card-foreground:#0c1420;--popover:#fff;--popover-foreground:#0c1420;--primary:#0b3fd1;--primary-foreground:#fff;--secondary:#f7f9fc;--secondary-foreground:#3a4552;--muted:#f7f9fc;--muted-foreground:#5a6778;--accent:#eff4ff;--accent-foreground:#0b3fd1;--destructive:#b42318;--destructive-foreground:#fff;--border:#e5eaf1;--border-soft:#eef1f6;--input:#e5eaf1;--ring:#0b3fd1;--cyan:#12bcf7;--warn:#b45309;--warn-bg:#fff7ed;--warn-line:#fed7aa;--risk:#b42318;--risk-bg:#fef3f2;--risk-line:#fecdca}@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-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@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-duration{syntax:"*";inherits:false}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}.ctf-logo{flex-shrink:0;width:auto;height:30px;display:block}.skip-link{z-index:999;color:#fff;background:#111820;border-radius:4px;padding:10px 18px;transition:top .15s;position:absolute;top:-60px;left:16px}.skip-link:focus{top:16px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.l{--bg:#fff;--band:#f7f9fc;--soft:#eff4ff;--ink:#0c1420;--ink2:#3a4552;--mute:#667486;--line:#e5eaf1;--line-soft:#eef1f6;--blue:#0b3fd1;--blue-d:#0a34ab;--cyan:#12bcf7;--r:12px;--r-sm:8px;--r-xs:4px;--sh:0 1px 2px #0c14200a, 0 10px 30px -22px #0c142059;--sh-lift:0 1px 1px #0c14200a, 0 6px 12px -6px #0c142017, 0 24px 44px -26px #0b3fd157;--wrap:1320px;--gap:20px;--ease:cubic-bezier(.4, 0, .2, 1);--ease-lift:cubic-bezier(.16, 1, .3, 1);--t-fast:.16s;--t:.24s;--t-slow:.34s;--t-field:5.5s;--lift:translateY(-3px);--lift-in:box-shadow var(--t) var(--ease-lift), transform var(--t) var(--ease-lift), border-color var(--t) var(--ease);--lift-out:box-shadow var(--t-slow) var(--ease), transform var(--t-slow) var(--ease), border-color var(--t-slow) var(--ease);--display:"PingFang SC", "Microsoft YaHei", sans-serif;--body:"PingFang SC", "Microsoft YaHei", sans-serif;--mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, monospace;background:var(--bg);color:var(--ink);font-family:var(--body)}.l :focus-visible{outline:3px solid var(--blue);outline-offset:2px;border-radius:var(--r-xs)}.l-wrap{max-width:var(--wrap);margin:0 auto;padding:0 clamp(20px,4vw,40px)}.l-btn{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--bg);color:var(--ink);white-space:nowrap;transition:background var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), box-shadow var(--t) var(--ease-lift), transform var(--t) var(--ease-lift);align-items:center;gap:8px;padding:13px 22px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.l-btn:hover{background:var(--band);border-color:#c9d4e4}.l-btn--sm{padding:9px 16px;font-size:14px}.l-btn--solid{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 8px 20px -12px #0b3fd1d9}.l-btn--solid:hover{background:var(--blue-d);border-color:var(--blue-d);transform:translateY(-1px);box-shadow:0 12px 26px -12px #0b3fd1e6}.l-btn--light{color:var(--blue);background:#fff;border-color:#fff}.l-btn--light:hover{background:#eef3ff;border-color:#eef3ff;transform:translateY(-1px)}.l-btn--onDark{color:#fff;background:0 0;border-color:#ffffff6b}.l-btn--onDark:hover{background:#ffffff1f;border-color:#fff9}.l-nav{z-index:50;-webkit-backdrop-filter:saturate(150%)blur(10px);backdrop-filter:saturate(150%)blur(10px);border-bottom:1px solid var(--line-soft);background:#ffffff4d;margin-bottom:-22px;position:sticky;top:0}.l-nav__in{align-items:center;gap:24px;height:64px;display:flex}.l-nav__brand{flex-shrink:0;text-decoration:none}.l .ctf-logo{height:40px}.l-foot .ctf-logo{height:36px}.l-nav__links{align-items:center;gap:26px;margin-left:auto;font-size:14.5px;display:flex}.l-nav__links a{color:var(--ink2);white-space:nowrap;transition:color var(--t-fast) var(--ease);text-decoration:none}.l-nav__links a:hover{color:var(--blue)}.l-nav__links a.is-on{color:var(--blue);font-weight:600}.l-hero{padding:clamp(70px,7vw,86px) 0;position:relative;overflow:hidden}.l-field{pointer-events:none;position:absolute;inset:0 0 auto;-webkit-mask-image:linear-gradient(#000 0 92%,#0000 100%);mask-image:linear-gradient(#000 0 92%,#0000 100%)}.l-field__grid{grid-auto-rows:22px;justify-content:center;gap:4px;display:grid}.l-field__grid i{background:var(--c1);opacity:calc(var(--a) * var(--rest));border-radius:2px}.l-field--dot .l-field__grid i{transform:scale(var(--r));border-radius:50%}.l-field.is-live .l-field__grid i{animation:l-field-pulse var(--t-field) linear var(--d) infinite}.l-field.is-live .l-field__grid i.is-spark{animation-name:l-field-pulse,l-field-hue}@keyframes l-field-pulse{0%{opacity:calc(var(--a) * var(--rest))}3%{opacity:var(--a)}12%,to{opacity:calc(var(--a) * var(--rest))}}@keyframes l-field-hue{0%{background-color:var(--c1)}3%{background-color:var(--c2)}12%,to{background-color:var(--c1)}}.l-field__veil{background:radial-gradient(56% 88% at 27% 48%,#fffffff2,#ffffffb3 46%,#fff0 78%);position:absolute;inset:0}@media (width<=860px){.l-field{opacity:.8}.l-field__veil{background:radial-gradient(80% 64% at 50% 52%,#fffffff2,#ffffffbd 48%,#fff0 84%)}}.l-hero__grid{grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);align-items:center;gap:clamp(28px,4.4vw,56px);padding-bottom:clamp(40px,6vw,72px);display:grid;position:relative}.l-hero__title{font-family:var(--display);letter-spacing:-.022em;font-size:clamp(32px,4.1vw,54px);font-weight:800;line-height:1.2}.l-hero__deck{max-width:58ch;color:var(--ink);text-wrap:pretty;margin-top:18px;font-size:clamp(16.5px,1.55vw,20px);font-weight:500;line-height:1.65}.l-hero__lead{max-width:58ch;color:var(--mute);margin-top:14px;font-size:15.5px;line-height:1.85}.l-hero__row{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.l-preview{border:1px solid var(--line);border-radius:var(--r);background:var(--bg);box-shadow:var(--sh-lift);overflow:hidden}.l-preview__bar{border-bottom:1px solid var(--line-soft);background:var(--band);gap:6px;padding:11px 14px;display:flex}.l-preview__bar span{background:#dbe2ec;border-radius:50%;width:9px;height:9px}.l-preview__body{padding:18px}.l-preview__head{justify-content:space-between;align-items:center;gap:12px;padding-bottom:14px;display:flex}.l-preview__title{font-family:var(--display);font-size:17px;font-weight:700}.l-preview__chip{background:var(--soft);color:var(--blue);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:500}.l-preview__tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.l-preview__tiles li{border:1px solid var(--line-soft);border-radius:var(--r-sm);background:var(--bg);gap:3px;padding:13px 14px;display:grid}.l-preview__k{color:var(--mute);font-size:11.5px}.l-preview__v{font-family:var(--display);letter-spacing:-.01em;font-size:21px;font-weight:700;line-height:1.15}.l-preview__s{color:var(--mute);font-size:11.5px}.l-preview__chart{border:1px solid var(--line-soft);border-radius:var(--r-sm);margin-top:12px;padding:13px 14px 14px}.l-preview__bars{align-items:flex-end;gap:7px;height:56px;margin-top:10px;display:flex}.l-preview__bars i{background:linear-gradient(180deg, var(--cyan), var(--blue));opacity:.85;border-radius:2px 2px 0 0;flex:1}.l-preview__cap{border-top:1px solid var(--line-soft);background:var(--band);font-family:var(--mono);color:var(--mute);padding:9px 14px;font-size:11px}.l-hero>.l-wrap{position:relative}.l-proof{border:1px solid var(--line);border-radius:var(--r);background:var(--line);box-shadow:var(--sh);grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1px;display:grid;position:relative;overflow:hidden}.l-proof li{background:var(--bg);align-content:start;gap:5px;padding:20px 22px;display:grid;position:relative;overflow:hidden}.l-proof__mark{width:150px;height:150px;color:var(--blue);opacity:.06;pointer-events:none;position:absolute;top:-52px;right:-50px}.l-proof li>span{z-index:1;position:relative}.l-proof__v{font-family:var(--display);letter-spacing:-.025em;color:var(--blue);font-size:34px;font-weight:800;line-height:1}.l-proof__l{font-size:14.5px;font-weight:600}.l-proof__s{color:var(--mute);font-size:12.5px;line-height:1.6}.l-sec{padding:clamp(52px,6vw,88px) 0}.l-sec--band{background:var(--band);border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}.l-sec--art{isolation:isolate;background:var(--band);border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);position:relative}.l-sec--art:before{content:"";z-index:-1;opacity:.9;filter:saturate(3)brightness(.985);pointer-events:none;background:url(/bg1.png) 50% 100%/115% no-repeat;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 10% 90%,#0000);mask-image:linear-gradient(#0000,#000 10% 90%,#0000)}.l-head{max-width:820px;margin-bottom:clamp(28px,4vw,44px)}.l-head h2{font-family:var(--display);letter-spacing:-.018em;font-size:clamp(27px,3.3vw,42px);font-weight:800;line-height:1.2}.l-head p{max-width:76ch;color:var(--mute);margin-top:12px;font-size:15.5px;line-height:1.8}.l-note{border-left:2px solid var(--blue);color:var(--mute);margin-top:18px;padding-left:14px;font-size:13.5px;line-height:1.75}.l-caps{gap:var(--gap);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.l-caps>li{border:1px solid var(--line);border-radius:var(--r);background:var(--bg);transition:var(--lift-out);flex-direction:column;padding:26px 24px 22px;display:flex}.l-caps>li:hover{box-shadow:var(--sh-lift);transform:var(--lift);transition:var(--lift-in);border-color:#d7e0ee}.l-caps__icon{border-radius:var(--r-sm);background:var(--soft);width:42px;height:42px;color:var(--blue);place-items:center;margin-bottom:16px;display:grid}.l-caps h3{font-family:var(--display);font-size:18px;font-weight:700;line-height:1.35}.l-caps>li>p{color:var(--mute);margin-top:10px;font-size:14px;line-height:1.85}.l-caps ul{gap:8px;margin-top:auto;padding-top:18px;display:grid}.l-caps ul li{color:var(--ink2);align-items:center;gap:8px;font-size:13px;display:flex}.l-caps ul svg{color:var(--blue);flex-shrink:0}.l-pipe{border:1px solid var(--line);border-radius:var(--r);background:var(--bg);box-shadow:var(--sh);overflow:hidden}.l-pipe__row{background:linear-gradient(180deg, var(--soft), var(--bg) 70%);align-items:flex-start;padding:clamp(26px,3vw,36px) clamp(18px,2.4vw,30px) clamp(22px,2.6vw,32px);display:flex}.l-pipe__seg{flex:1;align-items:flex-start;min-width:0;display:flex}.l-pipe__seg:last-child{flex:none}.l-pipe__node{text-align:center;flex-shrink:0;justify-items:center;gap:8px;width:160px;display:grid}.l-pipe__ring{border:1px solid var(--line);background:var(--bg);width:48px;height:48px;color:var(--mute);transition:border-color var(--t) var(--ease), color var(--t) var(--ease), box-shadow var(--t) var(--ease-lift), transform var(--t) var(--ease-lift);border-radius:50%;place-items:center;display:grid}.l-pipe__ring svg{width:20px;height:20px}.l-pipe__node.is-done .l-pipe__ring{color:var(--blue);border-color:#b9cdf2}.l-pipe__node.is-on .l-pipe__ring{border-color:var(--blue);color:var(--blue);transform:translateY(-2px);box-shadow:0 0 0 5px #0b3fd11f,0 10px 20px -14px #0b3fd1e6}.l-pipe__step{font-family:var(--mono);letter-spacing:.06em;color:var(--mute);transition:color var(--t) var(--ease);font-size:11.5px}.l-pipe__node.is-on .l-pipe__step{color:var(--blue)}.l-pipe__title{text-wrap:balance;color:var(--ink2);transition:color var(--t) var(--ease);font-size:14px;font-weight:600;line-height:1.5}.l-pipe__node.is-on .l-pipe__title{color:var(--ink)}.l-pipe__link{background:var(--line);border-radius:2px;flex:1;min-width:24px;height:2px;margin-top:23px;position:relative;overflow:hidden;container-type:inline-size}.l-pipe__link:before{content:"";border-radius:inherit;background:linear-gradient(90deg, var(--blue), var(--cyan));transform-origin:0;transition:transform .5s var(--ease-lift);position:absolute;inset:0;transform:scaleX(0)}.l-pipe__link.is-done:before{transform:scaleX(1)}.l-pipe__link i{will-change:transform;background:linear-gradient(90deg,#0000,#12bcf78c 42%,#fff 62%,#12bcf759 78%,#0000);width:60px;margin-left:-60px;animation:5s linear infinite l-wave;position:absolute;top:0;bottom:0;left:0}@keyframes l-wave{0%{transform:translate(0)}22%{transform:translate(calc(100cqw + 60px))}to{transform:translate(calc(100cqw + 60px))}}.l-pipe__detail{border-top:1px solid var(--line-soft);background:var(--bg);gap:10px;padding:20px clamp(18px,2.4vw,30px) 24px;display:grid}.l-pipe__tag{background:var(--soft);color:var(--blue);border-radius:999px;justify-self:start;padding:4px 11px;font-size:12px}.l-pipe__detail p{max-width:78ch;color:var(--ink2);animation:l-pipe-in .42s var(--ease-lift) both;font-size:14.5px;line-height:1.85}@keyframes l-pipe-in{0%{opacity:0;transform:translateY(6px)}}@media (prefers-reduced-motion:reduce){.l-pipe__link i{display:none}.l-pipe__detail p{animation:none}.l-field.is-live .l-field__grid i{opacity:calc(var(--a) * .75);animation:none!important}}.l-snip{margin-top:var(--gap);border:1px solid var(--line);border-radius:var(--r);background:var(--bg);overflow:hidden}.l-snip__head{border-bottom:1px solid var(--line-soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px clamp(18px,2.4vw,30px);display:flex}.l-snip__head h3{font-family:var(--display);font-size:16px;font-weight:700}.l-snip__lang{background:var(--soft);font-family:var(--mono);color:var(--blue);border-radius:999px;padding:4px 11px;font-size:12px}.l-snip pre{background:var(--band);margin:0;padding:20px clamp(18px,2.4vw,30px);overflow-x:auto}.l-snip code{font-family:var(--mono);color:var(--ink2);white-space:pre;font-size:13px;line-height:1.85}.l-snip__note{border-top:1px solid var(--line-soft);color:var(--mute);padding:16px clamp(18px,2.4vw,30px);font-size:13px;line-height:1.8}.l-modules{border:1px solid var(--line);border-radius:var(--r);background:var(--line);grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.l-modules li{background:var(--bg);gap:14px;padding:20px;display:flex}.l-modules__icon{width:22px;height:22px;color:var(--blue);flex-shrink:0;margin-top:2px}.l-modules strong{font-family:var(--display);font-size:16px;font-weight:700;display:block}.l-modules span{color:var(--mute);margin-top:4px;font-size:13px;line-height:1.7;display:block}.l-models{gap:var(--gap);grid-template-columns:repeat(auto-fit,minmax(290px,1fr));display:grid}.l-model{border:1px solid var(--line);border-radius:var(--r);background:var(--bg);transition:var(--lift-out);padding:24px}.l-model:hover{box-shadow:var(--sh-lift);transform:var(--lift);transition:var(--lift-in);border-color:#d7e0ee}.l-model header{justify-content:space-between;align-items:center;gap:12px;display:flex}.l-model__icon{border-radius:var(--r-sm);background:var(--soft);width:42px;height:42px;color:var(--blue);place-items:center;display:grid}.l-tag{white-space:nowrap;color:#1c7a45;background:#e8f7ee;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600}.l-tag--待扩容{color:#94550a;background:#fdf1e0}.l-tag--审批中{color:var(--mute);background:#eef1f6}.l-model__kind{font-family:var(--mono);color:var(--mute);margin-top:18px;font-size:11.5px;display:block}.l-model h3{font-family:var(--display);margin-top:6px;font-size:21px;font-weight:700;line-height:1.3}.l-model__id{border-radius:var(--r-xs);background:var(--band);font-family:var(--mono);color:var(--blue);word-break:break-all;width:max-content;max-width:100%;margin-top:8px;padding:5px 10px;font-size:13px}.l-model__use{color:var(--ink2);margin-top:12px;font-size:13.5px;line-height:1.75}.l-model__specs{border-top:1px solid var(--line-soft);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px;padding-top:16px;display:grid}.l-model__specs dt{color:var(--mute);font-size:11.5px}.l-model__specs dd{font-family:var(--mono);margin:3px 0 0;font-size:13px;font-weight:500}.l-plans{grid-template-columns:repeat(auto-fit,minmax(238px,1fr));gap:16px;display:grid}.l-plan{border:1px solid var(--line);border-radius:var(--r);background:var(--bg);transition:var(--lift-out);flex-direction:column;padding:24px;display:flex;position:relative}.l-plan:hover{box-shadow:var(--sh-lift);transform:var(--lift);transition:var(--lift-in);border-color:#d7e0ee}.l-plan.is-featured,.l-plan.is-featured:hover{border-color:var(--blue);box-shadow:0 0 0 1px var(--blue), var(--sh-lift)}.l-plan__flag{background:var(--blue);color:#fff;border-radius:999px;padding:3px 10px;font-size:11.5px;font-weight:600;position:absolute;top:-11px;left:24px}.l-plan__aud{font-family:var(--mono);letter-spacing:.08em;color:var(--mute);font-size:11.5px}.l-plan h3{margin-top:8px;font-size:16px;font-weight:600;line-height:1.45}.l-plan__price{font-family:var(--display);letter-spacing:-.028em;margin-top:16px;font-size:38px;font-weight:800;line-height:1}.l-plan__price em{font-family:var(--body);color:var(--mute);margin-left:6px;font-size:13px;font-style:normal;font-weight:500}.l-plan__res{color:var(--mute);margin-top:10px;font-size:12.5px}.l-plan__specs{border-top:1px solid var(--line-soft);grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0 0;padding-top:16px;display:grid}.l-plan__fit{color:var(--ink2);margin-top:14px;font-size:13px;line-height:1.75}.l-plan__tokens{color:var(--mute);margin:8px 0 20px;font-size:12px;line-height:1.7}.l-plan__specs li{border-radius:var(--r-xs);background:var(--band);gap:3px;padding:9px 10px;display:grid}.l-plan__specs span{color:var(--mute);font-size:11px}.l-plan__specs strong{font-family:var(--mono);font-size:16px;font-weight:600}.l-plan__cta{transition:gap var(--t) var(--ease-lift), color var(--t-fast) var(--ease);color:var(--blue);align-items:center;gap:6px;margin-top:auto;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.l-plan__cta:hover{gap:10px}.l-terms{border:1px solid var(--line);border-radius:var(--r);background:var(--line);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1px;margin-top:18px;display:grid;overflow:hidden}.l-terms li{background:var(--bg);align-items:center;gap:12px;padding:16px 18px;display:flex}.l-terms__icon{color:var(--blue);flex-shrink:0}.l-terms li>div{gap:4px;display:grid}.l-terms span{color:var(--mute);font-size:11.5px}.l-terms strong{font-size:14px;font-weight:600}.l-drill{border:1px solid var(--line);border-radius:var(--r);background:var(--bg);box-shadow:var(--sh);overflow:hidden}.l-drill__crumbs{border-bottom:1px solid var(--line-soft);background:var(--band);flex-wrap:wrap;align-items:center;gap:6px;padding:13px 20px;font-size:13px;display:flex}.l-drill__crumbs>span{align-items:center;gap:6px;display:inline-flex}.l-drill__crumbs i{color:#b9c3d1;font-style:normal}.l-drill__crumbs button{color:var(--blue);transition:color var(--t-fast) var(--ease), text-underline-offset var(--t) var(--ease);padding:2px 0;font-weight:500}.l-drill__crumbs button:hover{text-underline-offset:3px;text-decoration:underline}.l-drill__crumbs strong{font-weight:600}.l-drill__now{border-bottom:1px solid var(--line-soft);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;padding:26px 20px;display:flex}.l-drill__lv{border-radius:var(--r-xs);background:var(--soft);font-family:var(--mono);color:var(--blue);padding:3px 9px;font-size:11.5px;display:inline-block}.l-drill__amt{font-family:var(--display);letter-spacing:-.03em;margin-top:10px;font-size:clamp(34px,5vw,54px);font-weight:800;line-height:1}.l-drill__share{color:var(--mute);margin-top:8px;font-size:13.5px}.l-drill__meta{gap:34px;display:flex}.l-drill__meta dt{color:var(--mute);font-size:12px}.l-drill__meta dd{font-family:var(--mono);margin:5px 0 0;font-size:20px;font-weight:500}.l-drill__kids>li+li{border-top:1px solid var(--line-soft)}.l-drill__kids button{text-align:left;width:100%;transition:background var(--t-fast) var(--ease);grid-template-columns:52px minmax(120px,1fr) minmax(80px,1.2fr) 100px 18px;align-items:center;gap:16px;padding:15px 20px;display:grid}.l-drill__kids button:hover{background:var(--band)}.l-drill__kidLv{border-radius:var(--r-xs);background:var(--band);font-family:var(--mono);color:var(--mute);text-align:center;padding:3px 6px;font-size:11px}.l-drill__kidName{font-size:14.5px;font-weight:500}.l-drill__kidBar{background:var(--band);border-radius:999px;height:8px;display:block;overflow:hidden}.l-drill__kidBar i{background:linear-gradient(90deg, var(--blue), var(--cyan));border-radius:999px;height:100%;display:block}.l-drill__kidAmt{font-family:var(--mono);text-align:right;font-size:14px;font-weight:500}.l-drill__kidGo{color:#b9c3d1;width:18px;height:18px;transition:color var(--t-fast) var(--ease), transform var(--t) var(--ease-lift)}.l-drill__kids button:hover .l-drill__kidGo{color:var(--blue);transform:translate(3px)}.l-drill__leaf{background:var(--band);color:var(--ink2);padding:22px 20px;font-size:14px;line-height:1.75}.l-drill__note{border-top:1px solid var(--line-soft);font-family:var(--mono);color:var(--mute);padding:11px 20px;font-size:11.5px}.l-rules{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(24px,4vw,52px);margin-top:clamp(32px,4vw,52px);display:grid}.l-rules h3{font-family:var(--display);font-size:clamp(21px,2.4vw,28px);font-weight:700;line-height:1.3}.l-rules>div>p{color:var(--ink2);margin-top:12px;font-size:14.5px;line-height:1.85}.l-yield{border-radius:var(--r-sm);background:var(--soft);gap:6px;padding:16px 18px;display:grid;margin-top:20px!important}.l-yield strong{font-family:var(--mono);color:var(--blue);font-size:15px;font-weight:600}.l-yield span{color:var(--ink2);font-size:13px;line-height:1.7}.l-rules dl>div{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:18px;padding:15px 0;display:grid}.l-rules dl>div:first-child{border-top:1px solid var(--line)}.l-rules dt{align-items:center;gap:10px;font-size:14.5px;font-weight:600;display:flex}.l-rules dt svg{color:var(--blue);flex-shrink:0}.l-rules dd{color:var(--mute);margin:0;font-size:13.5px;line-height:1.75}.l-faq{border-top:1px solid var(--line);max-width:900px}.l-faq details{border-bottom:1px solid var(--line)}.l-faq summary{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--t-fast) var(--ease);justify-content:space-between;align-items:center;gap:18px;padding:19px 0;font-size:16.5px;font-weight:600;list-style:none;display:flex}.l-faq summary::-webkit-details-marker{display:none}.l-faq summary:after{content:"";border:1px solid var(--line);background:linear-gradient(var(--blue), var(--blue)) center / 9px 1.5px no-repeat, linear-gradient(var(--blue), var(--blue)) center / 1.5px 9px no-repeat;width:22px;height:22px;transition:transform var(--t) var(--ease-lift), background-size var(--t) var(--ease), border-color var(--t-fast) var(--ease);border-radius:50%;flex-shrink:0}.l-faq details[open] summary:after{background:linear-gradient(var(--blue), var(--blue)) center / 9px 1.5px no-repeat, linear-gradient(var(--blue), var(--blue)) center / 0 9px no-repeat}.l-faq summary:hover{color:var(--blue)}.l-faq summary:hover:after{border-color:var(--blue)}.l-faq p{max-width:74ch;color:var(--ink2);padding:0 0 20px;font-size:14.5px;line-height:1.9}.l-cta{background:linear-gradient(125deg, var(--blue-d) 0%, var(--blue) 46%, #1673e6 100%);color:#fff;padding:clamp(60px,8vw,108px) 0}.l-cta h2{max-width:22ch;font-family:var(--display);letter-spacing:-.022em;font-size:clamp(28px,4.2vw,50px);font-weight:800;line-height:1.16}.l-cta p{color:#ffffffd6;max-width:54ch;margin-top:16px;font-size:16px;line-height:1.85}.l-cta__row{flex-wrap:wrap;gap:14px;margin-top:32px;display:flex}.l-legal{padding:clamp(44px,6vw,76px) 0 clamp(52px,6vw,88px)}.l-legal__head{border-bottom:1px solid var(--line);max-width:760px;padding-bottom:28px}.l-legal__head h1{font-family:var(--display);letter-spacing:-.018em;font-size:clamp(30px,3.6vw,44px);font-weight:800;line-height:1.2}.l-legal__lead{color:var(--mute);margin-top:16px;font-size:15.5px;line-height:1.85}.l-legal__updated{font-family:var(--mono);color:var(--mute);margin-top:18px;font-size:12px}.l-legal__body{max-width:760px}.l-legal__body section{margin-top:40px}.l-legal__body h2{font-family:var(--display);font-size:19px;font-weight:700;line-height:1.4}.l-legal__body p{color:var(--ink2);margin-top:14px;font-size:15px;line-height:1.95}.l-legal__body ul{gap:12px;margin-top:16px;padding-left:2px;display:grid}.l-legal__body li{color:var(--ink2);padding-left:22px;font-size:15px;line-height:1.9;position:relative}.l-legal__body li:before{content:"";background:var(--blue);border-radius:50%;width:6px;height:6px;position:absolute;top:12px;left:2px}.l-foot{background:var(--band);border-top:1px solid var(--line-soft);padding:clamp(44px,5vw,64px) 0 32px}.l-foot__top{grid-template-columns:minmax(0,1.15fr) minmax(0,2fr);gap:clamp(32px,5vw,72px);display:grid}.l-foot__blurb{max-width:34ch;color:var(--mute);margin-top:20px;font-size:14px;line-height:1.85}.l-foot__contact{gap:10px;margin-top:24px;display:grid}.l-foot__contact dt{color:var(--mute);font-size:11.5px}.l-foot__contact dd{color:var(--ink2);margin:2px 0 0;font-size:13.5px}.l-foot__cols{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.l-foot__cols h2{color:var(--ink);font-size:13.5px;font-weight:600}.l-foot__cols ul{gap:12px;margin-top:18px;display:grid}.l-foot__cols a{color:var(--mute);transition:color var(--t-fast) var(--ease);font-size:14px;text-decoration:none}.l-foot__cols a:hover{color:var(--blue)}.l-foot__bar{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:clamp(36px,4vw,52px);padding-top:22px;display:flex}.l-foot__copy{color:var(--mute);font-size:13px}.l-foot__legal{color:var(--mute);flex-wrap:wrap;align-items:center;gap:20px;margin-left:auto;font-size:13px;display:flex}.l-foot__legal a{color:var(--mute);transition:color var(--t-fast) var(--ease);text-decoration:none}.l-foot__legal a:hover{color:var(--blue)}@media (width<=1000px){.l-hero__grid,.l-rules{grid-template-columns:minmax(0,1fr)}.l-modules,.l-caps{grid-template-columns:repeat(2,minmax(0,1fr))}.l-hero__deck{max-width:100%}.l-pipe__row{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.l-pipe__seg{justify-content:center}.l-pipe__link{display:none}}@media (width<=760px){.l-nav__in{gap:12px}.l-nav__links{gap:14px;font-size:13px}.l .ctf-logo{height:32px}.l-drill__kids button{grid-template-columns:50px minmax(0,1fr) 96px;row-gap:10px}.l-drill__kidBar{order:3;grid-column:1/-1}.l-drill__kidGo{display:none}.l-drill__meta{gap:26px}.l-foot__top{grid-template-columns:minmax(0,1fr)}.l-foot__legal{margin-left:0}}@media (width<=640px){.l-nav__in>.l-btn{display:none}}@media (width<=560px){.l-proof__mark{width:126px;height:126px;top:-44px;right:-42px}.l-modules,.l-caps{grid-template-columns:minmax(0,1fr)}.l-snip code{font-size:12px}.l-pipe__row{grid-template-columns:minmax(0,1fr)}.l-pipe__node{width:100%}.l-preview__tiles,.l-model__specs{grid-template-columns:minmax(0,1fr)}.l-btn{justify-content:center;width:100%}.l-btn--sm{width:auto}.l-foot__cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px}}.lab{background:var(--band);min-height:100vh}.lab__nav{z-index:50;-webkit-backdrop-filter:saturate(150%)blur(12px);backdrop-filter:saturate(150%)blur(12px);border-bottom:1px solid var(--line-soft);background:#ffffffe0;position:sticky;top:0}.lab__navIn{justify-content:space-between;align-items:center;gap:20px;height:64px;display:flex}.lab__badge{background:var(--soft);font-family:var(--mono);color:var(--blue);border-radius:999px;padding:5px 12px;font-size:11.5px}.lab__main{padding-bottom:96px}.lab__head{max-width:640px;padding:clamp(40px,5vw,68px) 0 clamp(28px,3vw,40px)}.lab__head h1{font-family:var(--display);letter-spacing:-.018em;font-size:clamp(28px,3.4vw,40px);font-weight:800;line-height:1.2}.lab__head p{color:var(--mute);margin-top:14px;font-size:15px;line-height:1.85}.lab__item+.lab__item{margin-top:clamp(44px,5vw,72px)}.lab__meta{grid-template-columns:56px minmax(0,1fr);gap:4px 8px;max-width:780px;margin-bottom:20px;display:grid}.lab__no{font-family:var(--mono);color:var(--blue);font-size:13px;line-height:1.6}.lab__meta h2{font-family:var(--display);font-size:20px;font-weight:700}.lab__meta p{color:var(--mute);margin-top:8px;font-size:14px;line-height:1.85}.lab__stage{padding-left:56px}@media (width<=700px){.lab__meta{grid-template-columns:minmax(0,1fr)}.lab__stage{padding-left:0}}.pipe{border:1px solid var(--line);border-radius:var(--r);background:var(--bg);box-shadow:var(--sh);overflow:hidden}.pipe__row{background:linear-gradient(180deg, var(--soft), var(--bg) 70%);align-items:flex-start;padding:clamp(24px,3vw,34px) clamp(18px,2.4vw,28px) clamp(20px,2.6vw,30px);display:flex}.pipe__seg{flex:1;align-items:flex-start;min-width:0;display:flex}.pipe__seg:last-child{flex:none}.pipe__node{text-align:center;flex-shrink:0;justify-items:center;gap:8px;width:150px;display:grid}.pipe__ring{border:1px solid var(--line);background:var(--bg);width:48px;height:48px;color:var(--mute);transition:border-color var(--t) var(--ease), color var(--t) var(--ease), box-shadow var(--t) var(--ease-lift), transform var(--t) var(--ease-lift);border-radius:50%;place-items:center;display:grid}.pipe__ring svg{width:20px;height:20px}.pipe__node.is-done .pipe__ring{color:var(--blue);border-color:#b9cdf2}.pipe__node.is-on .pipe__ring{border-color:var(--blue);color:var(--blue);transform:translateY(-2px);box-shadow:0 0 0 5px #0b3fd11f,0 10px 20px -14px #0b3fd1e6}.pipe__step{font-family:var(--mono);letter-spacing:.06em;color:var(--mute);transition:color var(--t) var(--ease);font-size:11px}.pipe__node.is-on .pipe__step{color:var(--blue)}.pipe__title{text-wrap:balance;color:var(--ink2);transition:color var(--t) var(--ease);font-size:13.5px;font-weight:600;line-height:1.5}.pipe__node.is-on .pipe__title{color:var(--ink)}.pipe__link{background:var(--line);border-radius:2px;flex:1;min-width:24px;height:2px;margin-top:23px;position:relative;container-type:inline-size}.pipe__link:before{content:"";border-radius:inherit;background:linear-gradient(90deg, var(--blue), var(--cyan));transform-origin:0;transition:transform .5s var(--ease-lift);position:absolute;inset:0;transform:scaleX(0)}.pipe__link.is-done:before{transform:scaleX(1)}.pipe__detail{border-top:1px solid var(--line-soft);gap:10px;padding:20px clamp(18px,2.4vw,28px) 22px;display:grid}.pipe__tag{background:var(--soft);color:var(--blue);border-radius:999px;justify-self:start;padding:4px 11px;font-size:12px}.pipe__detail p{max-width:78ch;color:var(--ink2);animation:pipe-in .42s var(--ease-lift) both;font-size:14.5px;line-height:1.85}@keyframes pipe-in{0%{opacity:0;transform:translateY(6px)}}@media (width<=860px){.pipe__row{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.pipe__seg{justify-content:center}.pipe__link{display:none}}.pipe--pulse .pipe__link{overflow:visible}.pipe--pulse .pipe__link.is-active:before{animation:pipe-sweep 1s var(--ease-lift) forwards}.pipe--pulse .pipe__head{background:var(--blue);width:8px;height:8px;animation:pipe-comet 1s var(--ease-lift) forwards;border-radius:50%;margin:-4px 0 0 -4px;position:absolute;top:50%;left:0}.pipe--pulse .pipe__head:after{content:"";opacity:0;animation:pipe-ripple 1s var(--ease-lift) forwards;border:2px solid #0b3fd166;border-radius:50%;position:absolute;inset:-3px}@keyframes pipe-sweep{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes pipe-comet{0%{transform:translate(0)}72%{opacity:1;transform:translate(100cqw)scale(1)}to{opacity:0;transform:translate(100cqw)scale(.7)}}@keyframes pipe-ripple{0%,72%{opacity:0;transform:scale(.6)}80%{opacity:1}to{opacity:0;transform:scale(3.2)}}.pipe--fill .pipe__link{background:#e9eef7;border-radius:999px;height:7px;margin-top:20px;overflow:hidden;box-shadow:inset 0 1px 2px #10204017}.pipe--fill .pipe__link.is-active:before{animation:1.5s cubic-bezier(.5,0,.15,1) forwards pipe-sweep}.pipe--fill .pipe__head{background:linear-gradient(90deg,#0000,#ffffffeb);width:30px;margin-left:-30px;animation:1.5s cubic-bezier(.5,0,.15,1) forwards pipe-meniscus;position:absolute;top:0;bottom:0;left:0}@keyframes pipe-meniscus{0%{opacity:0;transform:translate(0)}14%{opacity:1}80%{opacity:1}to{opacity:0;transform:translate(calc(100cqw + 30px))}}.pipe--packet .pipe__link{overflow:visible}.pipe--packet .pipe__packet{background:var(--blue);will-change:transform;border-radius:2px;width:7px;height:7px;margin:-3.5px 0 0 -3.5px;animation:3.6s linear infinite pipe-packet;position:absolute;top:50%;left:0;box-shadow:0 0 0 2.5px #ffffffeb}@keyframes pipe-packet{0%{opacity:0;animation-timing-function:cubic-bezier(.3,0,.25,1);transform:translate(0)scale(.5)}20%{opacity:1;animation-timing-function:linear;transform:translate(26cqw)scale(1)}76%{opacity:1;animation-timing-function:cubic-bezier(.6,0,.75,1);transform:translate(78cqw)scale(1)}to{opacity:0;transform:translate(100cqw)scale(.5)}}.pipe--dash .pipe__link{background:0 0;overflow:hidden}.pipe--dash .pipe__dashes{background:repeating-linear-gradient(90deg, var(--line) 0 9px, transparent 9px 16px);will-change:transform;animation:1.8s linear infinite pipe-march;position:absolute;inset:0 -16px}.pipe--dash .pipe__link.is-done .pipe__dashes{background-image:repeating-linear-gradient(90deg,#ffffffb3 0 9px,#0000 9px 16px)}@keyframes pipe-march{to{transform:translate(16px)}}.pipe--fiber .pipe__link{overflow:hidden}.pipe--fiber .pipe__wave{will-change:transform;background:linear-gradient(90deg,#0000,#12bcf78c 42%,#fff 62%,#12bcf759 78%,#0000);width:60px;margin-left:-60px;animation:5s linear infinite pipe-wave;position:absolute;top:0;bottom:0;left:0}@keyframes pipe-wave{0%{transform:translate(0)}22%{transform:translate(calc(100cqw + 60px))}to{transform:translate(calc(100cqw + 60px))}}@media (prefers-reduced-motion:reduce){.pipe__head,.pipe__packet,.pipe__wave{display:none}.pipe__dashes,.pipe__link.is-active:before{animation:none}}.hl__item+.hl__item{margin-top:clamp(52px,6vw,88px)}.hl__item:last-child{padding-bottom:96px}.hl .lab__meta{margin-bottom:18px}.hl__stage{z-index:0;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);background:var(--bg);position:relative;overflow:hidden}.hs__nav{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--bg);position:static}.hs .l-btn{cursor:default}.hs .l-hero>.l-wrap{position:relative}.hf{pointer-events:none;position:absolute;inset:0 0 auto;-webkit-mask-image:linear-gradient(#000 0 92%,#0000 100%);mask-image:linear-gradient(#000 0 92%,#0000 100%)}.hf__grid{grid-auto-rows:22px;justify-content:center;gap:4px;display:grid}.hf__grid i{background:var(--c1);opacity:calc(var(--a) * var(--rest));border-radius:2px}.hf--dot .hf__grid i{transform:scale(var(--r));border-radius:50%}.hf.is-live .hf__grid i{animation:var(--dur) linear var(--d) infinite}.hf--snap.is-live .hf__grid i{animation-name:hf-snap}.hf--snap.is-live .hf__grid i.is-spark{animation-name:hf-snap,hf-hue-snap}@keyframes hf-snap{0%{opacity:calc(var(--a) * var(--rest))}3%{opacity:var(--a)}12%,to{opacity:calc(var(--a) * var(--rest))}}@keyframes hf-hue-snap{0%{background-color:var(--c1)}3%{background-color:var(--c2)}12%,to{background-color:var(--c1)}}.hf__veil{background:radial-gradient(56% 88% at 27% 48%,#fffffff2,#ffffffb3 46%,#fff0 78%);position:absolute;inset:0}@media (width<=860px){.hf{opacity:.8}.hf__veil{background:radial-gradient(80% 64% at 50% 52%,#fffffff2,#ffffffbd 48%,#fff0 84%)}}@media (prefers-reduced-motion:reduce){.hf.is-live .hf__grid i{opacity:calc(var(--a) * .75);animation:none!important}}.pl__item+.pl__item{margin-top:clamp(44px,5vw,72px)}.pl__item:last-child{padding-bottom:96px}.pl__stage{border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);background:var(--bg);padding:clamp(28px,3.5vw,44px) 0}.pfw__paint{width:0;height:0;position:absolute}.pfw{border:1px solid var(--line);border-radius:var(--r);background:var(--line);box-shadow:var(--sh);grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1px;display:grid;overflow:hidden}.pfw>li{background:var(--bg);align-content:start;gap:5px;padding:20px 22px;display:grid;position:relative;overflow:hidden}.pfw>li>span{z-index:1;position:relative}.pfw__v{font-family:var(--display);letter-spacing:-.025em;color:var(--blue);font-size:34px;font-weight:800;line-height:1}.pfw__l{font-size:14.5px;font-weight:600}.pfw__s{color:var(--mute);font-size:12.5px;line-height:1.6}.pfw__mark{color:var(--blue);pointer-events:none;position:absolute}.pfw--base .pfw__mark{opacity:.08;width:76px;height:76px;top:-14px;right:-14px}.pfw--bleed .pfw__mark{opacity:.06;width:150px;height:150px;top:-52px;right:-50px}.pfw--hair .pfw__mark{opacity:.42;stroke:url(#pf-spark);stroke-width:.25px;width:118px;height:118px;top:-20px;right:-18px}.pfw--under .pfw__mark{opacity:.055;width:92px;height:92px;top:-9px;left:10px}.pfw--glow .pfw__mark{opacity:.07;width:84px;height:84px;bottom:-14px;right:-12px}.pfw--glow>li:before{content:"";pointer-events:none;background:radial-gradient(circle,#0b3fd117,#0b3fd100 68%);border-radius:50%;width:220px;height:220px;position:absolute;bottom:-70px;right:-60px}@media (width<=560px){.pfw__v{font-size:30px}.pfw--bleed .pfw__mark{width:126px;height:126px;top:-44px;right:-42px}.pfw--hair .pfw__mark{width:100px;height:100px}.pfw--under .pfw__mark{width:82px;height:82px;top:-7px}}.lg{--ink:#0c1420;--ink2:#3a4552;--mute:#667486;--line:#e5eaf1;--line-soft:#eef1f6;--blue:#0b3fd1;--blue-lt:#2f7ef0;--soft:#eff4ff;--r:12px;--r-sm:10px;--ease:cubic-bezier(.4, 0, .2, 1);--ease-lift:cubic-bezier(.16, 1, .3, 1);--t-fast:.16s;--t:.24s;min-height:100dvh;color:var(--ink);background:#0a2a6b;grid-template-columns:minmax(0,1fr) minmax(420px,.62fr);font-family:PingFang SC,Microsoft YaHei,sans-serif;display:grid}.lg :focus-visible{outline:3px solid var(--blue-lt);outline-offset:2px;border-radius:4px}.lg__art{flex-direction:column;justify-content:space-between;gap:40px;padding:clamp(48px,6vw,88px) clamp(32px,5vw,76px) clamp(40px,4vw,60px);display:flex;position:relative}.lg__art:before{content:"";background:linear-gradient(102deg,#061a4af0 0%,#092a70b8 42%,#0c3c9647 100%),linear-gradient(#0000 48%,#04123499 80%,#030e2aed 100%),url(/login-bg.png) 50%/cover no-repeat;position:absolute;inset:0 -60px 0 0}.lg__artCopy,.lg__caps,.lg__panel{position:relative}.lg__artCopy h1{letter-spacing:-.01em;color:#fff;margin:0;font-size:clamp(30px,3.4vw,46px);font-weight:700;line-height:1.28}.lg__brand{color:#fff;margin:clamp(24px,3vw,38px) 0 0;font-size:clamp(17px,1.5vw,21px);font-weight:600}.lg__sub{color:#ffffffc7;margin:10px 0 0;font-size:15px;line-height:1.75}.lg__caps{border-top:1px solid #ffffff26;grid-template-columns:repeat(4,minmax(0,1fr));padding-top:clamp(22px,2.4vw,30px);display:grid}.lg__caps li{color:#fff;border-left:1px solid #ffffff24;padding:2px clamp(12px,1.5vw,22px)}.lg__caps li:nth-child(4n+1){border-left:0;padding-left:0}.lg__caps li:nth-child(4n){padding-right:0}.lg__capMark{color:#d3ecff;background:radial-gradient(120% 120% at 30% 18%,#12bcf757,#12bcf700 70%),#081a3e80;border:1px solid #ffffff47;border-radius:999px;place-items:center;width:40px;height:40px;display:grid}.lg__capMark svg{width:20px;height:20px}.lg__caps strong{letter-spacing:.01em;margin-top:15px;font-size:15px;font-weight:600;display:block}.lg__caps li>span{color:#ffffffdb;margin-top:8px;font-size:12.5px;line-height:1.5;display:block}.lg__panel{background:#fff;border-radius:40px 0 0 40px;place-items:center;padding:clamp(32px,4vw,56px) clamp(24px,3.4vw,60px);display:grid}.lg__card{width:100%;max-width:380px}.lg__logo{width:fit-content;margin:0 auto;display:block}.lg .ctf-logo{height:40px}.lg__card h2{text-align:center;margin:clamp(28px,3vw,40px) 0 0;font-size:27px;font-weight:700;line-height:1.3}.lg__deck{color:var(--mute);text-align:center;margin:12px 0 0;font-size:13.5px;line-height:1.7}.lg__sso{border-radius:var(--r-sm);background:linear-gradient(90deg, var(--blue), var(--blue-lt));color:#fff;width:100%;height:48px;transition:box-shadow var(--t) var(--ease-lift), transform var(--t) var(--ease-lift), filter var(--t-fast) var(--ease);justify-content:center;align-items:center;gap:9px;margin-top:clamp(26px,3vw,36px);font-size:15.5px;font-weight:600;text-decoration:none;display:flex;box-shadow:0 10px 22px -14px #0b3fd1e6}.lg__sso:hover{filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 16px 30px -16px #0b3fd1f2}.lg__sso:active{transform:translateY(0)}@media (width<=1180px){.lg__caps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:clamp(22px,2.4vw,28px)}.lg__caps li:nth-child(odd){border-left:0;padding-left:0}.lg__caps li:nth-child(2n){padding-right:0}}@media (width<=900px){.lg{grid-template-columns:minmax(0,1fr)}.lg__art{justify-content:flex-end;min-height:300px;padding:40px 24px 32px}.lg__art:before{background:linear-gradient(160deg,#061a4ae6,#0c3c966b),linear-gradient(#0000 48%,#041234b3),url(/login-bg.png) 50%/cover no-repeat;inset:0}.lg__caps{display:none}.lg__panel{border-radius:28px 28px 0 0;align-items:start;margin-top:-28px;padding:40px 24px 56px}}.a{--bg:#fff;--canvas:#f7f9fc;--soft:#eff4ff;--ink:#0c1420;--ink2:#3a4552;--mute:#5a6778;--line:#e5eaf1;--line-soft:#eef1f6;--blue:#0b3fd1;--blue-d:#0a34ab;--cyan:#12bcf7;--warn:#b45309;--warn-bg:#fff7ed;--warn-line:#fed7aa;--risk:#b42318;--risk-bg:#fef3f2;--risk-line:#fecdca;--r:12px;--r-sm:8px;--r-xs:4px;--r-pill:999px;--sh:0 1px 2px #0c14200a, 0 10px 30px -22px #0c142059;--sh-lift:0 1px 1px #0c14200a, 0 6px 12px -6px #0c142017, 0 24px 44px -26px #0b3fd157;--ease:cubic-bezier(.4, 0, .2, 1);--ease-lift:cubic-bezier(.16, 1, .3, 1);--t-fast:.16s;--t:.24s;--side-w:244px;--side-w-min:68px;--gap:20px;--body:"PingFang SC", "Microsoft YaHei", sans-serif;--mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, monospace;background:var(--canvas);min-height:100vh;color:var(--ink);font-family:var(--body);display:flex}.a :focus-visible:not([data-slot]){outline:3px solid var(--blue);outline-offset:2px;border-radius:var(--r-xs)}.a-num{font-family:var(--mono);font-variant-numeric:tabular-nums}.a-side{z-index:20;width:var(--side-w);color:#e8edf5;background:linear-gradient(#0c1420 0%,#101d31 100%);flex-direction:column;flex-shrink:0;height:100vh;display:flex;position:sticky;top:0}.a.is-collapsed .a-side{width:var(--side-w-min)}.a-side__head{border-bottom:1px solid #e8edf517;align-items:center;gap:10px;padding:18px 14px 16px;display:flex}.a-side__brand{min-width:0;color:inherit;align-items:center;gap:10px;text-decoration:none;display:flex}.a-side__mark{border-radius:var(--r-sm);flex-shrink:0;width:32px;height:32px}.a-side__word{white-space:nowrap;flex-direction:column;min-width:0;display:flex;overflow:hidden}.a-side__word strong{letter-spacing:.01em;font-size:13.5px;font-weight:700}.a-side__toggle{border-radius:var(--r-sm);color:#8fa3bd;width:30px;height:30px;transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease);flex-shrink:0;place-items:center;margin-left:auto;display:grid}.a-side__toggle:hover{color:#fff;background:#e8edf51a}.a.is-collapsed .a-side__head{flex-direction:column;gap:8px;padding:16px 8px 14px}.a.is-collapsed .a-side__word{display:none}.a.is-collapsed .a-side__toggle{margin-left:0}.a-side__nav{flex:1;padding:12px 10px;overflow:hidden auto}.a.is-collapsed .a-side__nav{padding:12px 8px}.a-side__nav::-webkit-scrollbar{width:6px}.a-side__nav::-webkit-scrollbar-thumb{border-radius:var(--r-pill);background:#e8edf524}.a-nav__item{border-radius:var(--r-sm);color:#c3cfdf;text-align:left;white-space:nowrap;width:100%;transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease);align-items:center;gap:10px;padding:9px 10px;font-size:14px;text-decoration:none;display:flex;position:relative}.a-nav__item:hover{color:#fff;background:#e8edf514}.a-nav__icon{color:#8fa3bd;transition:color var(--t-fast) var(--ease);flex-shrink:0}.a-nav__item:hover .a-nav__icon{color:#cfe4ff}.a-nav__label{text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.a-nav__item.active{color:#fff;background:linear-gradient(90deg,#0b3fd180,#12bcf729);font-weight:600}.a-nav__item.active .a-nav__icon{color:var(--cyan)}.a-nav__item.active:before{content:"";border-radius:var(--r-pill);background:var(--cyan);width:2px;position:absolute;top:8px;bottom:8px;left:0}.a-nav__caret{color:#7e93ae;transition:transform var(--t) var(--ease);flex-shrink:0}.a-nav__group.is-open .a-nav__caret{transform:rotate(180deg)}.a-nav__sub{border-left:1px solid #e8edf51a;margin-left:12px;padding:2px 0 6px 14px}.a-nav__item--sub{font-size:13.5px}.a-nav__item--quiet{color:#93a5bc;font-size:13.5px}.a.is-collapsed .a-nav__label,.a.is-collapsed .a-nav__caret,.a.is-collapsed .a-nav__sub{display:none}.a.is-collapsed .a-nav__item{justify-content:center;padding:10px 0}.a-side__foot{border-top:1px solid #e8edf517;padding:10px}.a.is-collapsed .a-side__foot{padding:10px 8px}.a-main{flex-direction:column;flex:1;min-width:0;display:flex}.a-top{z-index:10;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe0;flex-wrap:wrap;align-items:center;gap:16px;padding:16px clamp(16px,2.4vw,28px);display:flex;position:sticky;top:0}.a-top__title{min-width:0;margin-right:auto}.a-top__title h1{letter-spacing:-.01em;font-size:clamp(18px,1.6vw,21px);font-weight:700}.a-top__title p{color:var(--mute);margin-top:3px;font-size:12.5px}.a-top__side{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.a-chip{border:1px solid var(--line);border-radius:var(--r-pill);background:var(--soft);color:var(--ink2);white-space:nowrap;padding:6px 12px;font-size:12.5px}.a-chip b{font-family:var(--mono);color:var(--blue);font-weight:600}.a-top__me{align-items:center;gap:8px;display:flex}.a-top__avatar{border-radius:var(--r-pill);background:linear-gradient(135deg, var(--blue), var(--cyan));color:#fff;place-items:center;width:32px;height:32px;font-size:13px;font-weight:600;display:grid}.a-top__meText{flex-direction:column;line-height:1.25;display:flex}.a-top__meText strong{font-size:13px;font-weight:600}.a-top__meText em{color:var(--mute);font-size:11.5px;font-style:normal}.a-body{gap:var(--gap);flex-direction:column;flex:1;padding:clamp(16px,2.2vw,26px);display:flex}.a-card{border:1px solid var(--line);border-radius:var(--r);background:var(--bg);box-shadow:var(--sh);padding:18px}.a-card__head{flex-wrap:wrap;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.a-eyebrow{font-family:var(--mono);letter-spacing:.12em;color:var(--blue);text-transform:uppercase;font-size:11px;font-weight:600}.a-h2{letter-spacing:-.01em;font-size:16px;font-weight:700}.a-h3{font-size:14px;font-weight:600}.a-sub{color:var(--mute);font-size:12.5px;line-height:1.65}.a-more{color:var(--blue);margin-left:auto;font-size:12.5px;font-weight:600;text-decoration:none}.a-more:hover{text-decoration:underline}.a-lede{border:1px solid var(--line);border-radius:var(--r);background:linear-gradient(120deg, #fff 0%, var(--soft) 100%);flex-wrap:wrap;align-items:center;gap:20px;padding:20px;display:flex}.a-lede__copy{flex:420px;min-width:0}.a-lede__copy p{max-width:68ch;color:var(--ink2);margin-top:8px;font-size:13.5px;line-height:1.75}.a-lede__figs{flex-wrap:wrap;gap:10px;display:flex}.a-fig{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--bg);text-align:center;min-width:92px;padding:12px 16px}.a-fig b{font-family:var(--mono);color:var(--blue);font-size:19px;font-weight:600;display:block}.a-fig span{color:var(--mute);margin-top:2px;font-size:11.5px;display:block}.a-stats{grid-template-columns:repeat(auto-fit,minmax(min(210px,100%),1fr));gap:14px;display:grid}.a-stat{border:1px solid var(--line);border-radius:var(--r);background:var(--bg);box-shadow:var(--sh);padding:16px 18px}.a-stat__label{color:var(--mute);font-size:12.5px}.a-stat__value{font-family:var(--mono);letter-spacing:-.02em;margin-top:6px;font-size:27px;font-weight:600;line-height:1.15}.a-stat--warn .a-stat__value{color:var(--warn)}.a-stat__value--text{font-family:var(--body);font-size:20px;font-weight:700}.a-stat__foot{color:var(--mute);margin-top:6px;font-size:12px}.a-grid{gap:var(--gap);grid-template-columns:minmax(0,1fr);display:grid}.a-grid--2{grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr))}.a-grid--3{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr))}.a-split{gap:var(--gap);grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);display:grid}@media (width<=1080px){.a-split{grid-template-columns:minmax(0,1fr)}}.a-table__strong{font-weight:600}.a-table__meta{color:var(--mute);margin-top:3px;font-size:11.5px;display:block}.a-kv{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--line-soft);flex-direction:column;gap:1px;display:flex;overflow:hidden}.a-kv>div{background:var(--bg);align-items:baseline;gap:14px;padding:10px 14px;display:flex}.a-kv dt{width:104px;color:var(--mute);flex-shrink:0;font-size:12.5px}.a-kv dd{word-break:break-word;margin:0;font-size:13px}.a-specs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.a-spec{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--canvas);padding:9px 12px}.a-spec dt{color:var(--mute);font-size:11.5px}.a-spec dd{font-family:var(--mono);color:var(--blue);margin:2px 0 0;font-size:13.5px;font-weight:600}.a-spec dd.a-spec__text{font-family:var(--body);color:var(--ink);font-size:12.5px}.a-bar-tools{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.a-bar-tools>.a-push{margin-left:auto}.a-form{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}.a-field{gap:6px;display:grid}.a-field>span{color:var(--ink2);font-size:12.5px;font-weight:600}.a-field [data-slot=select-trigger]{width:100%}.a-flow{grid-template-columns:minmax(0,1fr);gap:6px;display:grid}.a-flow li{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--bg);color:var(--mute);padding:10px 14px;font-size:12.5px}.a-flow li:first-child{background:var(--soft);color:var(--blue);border-color:#0b3fd14d;font-weight:600}.a-hint{border-radius:var(--r-sm);background:var(--soft);color:var(--blue-d);border:1px solid #0b3fd138;padding:11px 14px;font-size:12.5px;line-height:1.7}.a-hint--warn{border-color:var(--warn-line);background:var(--warn-bg);color:var(--warn)}.a-note{color:var(--mute);font-size:11.5px}.a-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}@media (width<=520px){.a-tiles{grid-template-columns:minmax(0,1fr)}}.a-tile{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--bg);transition:border-color var(--t-fast) var(--ease), box-shadow var(--t) var(--ease-lift), transform var(--t) var(--ease-lift);padding:14px 16px;text-decoration:none;display:block}.a-tile:hover{box-shadow:var(--sh-lift);border-color:#0b3fd159;transform:translateY(-2px)}.a-tile strong{color:var(--blue);font-size:13.5px;font-weight:600;display:block}.a-tile span{color:var(--mute);margin-top:4px;font-size:12px;display:block}.a-list{grid-template-columns:minmax(0,1fr);gap:8px;display:grid}.a-item{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--bg);align-items:center;gap:12px;padding:12px 14px;display:flex}.a-item--risk{border-color:var(--warn-line);background:var(--warn-bg)}.a-item__main{flex:1;min-width:0}.a-item__main strong{font-size:13.5px;font-weight:600;display:block}.a-item__main span{color:var(--mute);margin-top:3px;font-size:12px;display:block}.a-item__amount{font-family:var(--mono);flex-shrink:0;font-size:14px;font-weight:600}.a-rank{grid-template-columns:minmax(0,1fr);gap:10px;display:grid}.a-rank li{grid-template-columns:minmax(min(88px,30%),auto) minmax(min(72px,26%),auto) 1fr;align-items:center;gap:12px;font-size:13px;display:grid}.a-rank__track{border-radius:var(--r-pill);background:var(--line-soft);height:8px;display:block;overflow:hidden}.a-rank__fill{border-radius:var(--r-pill);background:linear-gradient(90deg, var(--blue), var(--cyan));height:100%;display:block}.a-donut{border-radius:var(--r-pill);background:conic-gradient(var(--blue) calc(var(--pct) * 1%), var(--line-soft) 0);place-items:center;width:148px;height:148px;margin:0 auto;display:grid}.a-donut:after{content:attr(data-pct);border-radius:var(--r-pill);background:var(--bg);width:108px;height:108px;font-family:var(--mono);color:var(--blue);place-items:center;font-size:26px;font-weight:600;display:grid}.a-donut--risk{background:conic-gradient(var(--risk) calc(var(--pct) * 1%), var(--line-soft) 0)}.a-donut--risk:after{color:var(--risk)}.a-tree{--step:18px;grid-template-columns:minmax(0,1fr);gap:4px;display:grid}.a-tree button{width:100%;padding:10px 12px 10px calc(12px + var(--depth,0) * var(--step));border-radius:var(--r-sm);text-align:left;transition:background var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);border:1px solid #0000;align-items:center;gap:10px;display:flex}.a-tree button:hover{background:var(--canvas)}.a-tree button[aria-current=true]{background:var(--soft);border-color:#0b3fd159}@media (width<=640px){.a-tree{--step:8px}}.a-tree__tag{border-radius:var(--r-xs);background:var(--line-soft);color:var(--mute);flex-shrink:0;padding:2px 7px;font-size:11px}.a-tree__label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13px;overflow:hidden}.a-tree__amount{font-family:var(--mono);flex-shrink:0;font-size:13px;font-weight:600}.a-profile{border-radius:var(--r-sm);background:linear-gradient(120deg, var(--blue) 0%, #1f6fe0 100%);color:#fff;flex-wrap:wrap;align-items:center;gap:18px;padding:18px 20px;display:flex}.a-profile__main{flex:1;min-width:0}.a-profile__amount{font-family:var(--mono);letter-spacing:-.02em;font-size:30px;font-weight:600}.a-profile__share{color:#ffffffd1;margin-top:4px;font-size:12.5px}.a-profile__water{border-radius:var(--r-pill);background:conic-gradient(#fff calc(var(--pct) * 1%), #ffffff40 0);place-items:center;width:74px;height:74px;display:grid}.a-profile__water span{border-radius:var(--r-pill);background:var(--blue);width:56px;height:56px;font-family:var(--mono);place-items:center;font-size:15px;font-weight:600;display:grid}.a-donut2{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 20px;display:flex}.a-donut2 svg{flex-shrink:0}.a-donut2__legend{flex:190px;gap:10px;min-width:0;display:grid}.a-donut2__legend li{transition:opacity var(--t) var(--ease);grid-template-columns:8px minmax(0,1fr) auto auto;align-items:center;gap:4px 8px;font-size:13px;display:grid}.a-donut2__legend li[data-dim]{opacity:.42}.a-donut2__legend i{border-radius:var(--r-pill);width:8px;height:8px}.a-donut2__legend b{color:var(--ink2);font-size:12.5px;font-weight:500}.a-donut2__legend em{text-align:right;min-width:34px;color:var(--mute);font-size:12.5px;font-style:normal}.a-chart{width:100%}.a-chart svg{display:block;overflow:visible}.a-tip{z-index:60;white-space:nowrap;pointer-events:none;background:#fff;border:1px solid #e5eaf1;border-radius:8px;align-items:baseline;gap:10px;padding:7px 11px;font-size:12.5px;line-height:1.5;display:flex;position:absolute;transform:translate(-50%,calc(-100% - 10px));box-shadow:0 1px 2px #0c14200a,0 10px 30px -22px #0c142059}.a-tip b{color:#0c1420;font-weight:600}.a-tip span{color:#0b3fd1;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,monospace}.a-drawer{z-index:40;background:#0c14206b;justify-content:flex-end;display:flex;position:fixed;inset:0}.a-drawer__panel{background:var(--bg);width:min(440px,100%);height:100%;padding:20px;overflow-y:auto;box-shadow:-20px 0 50px -30px #0c142080}.a-drawer__head{align-items:center;gap:12px;margin-bottom:16px;display:flex}.a-drawer__head h2{flex:1;font-size:16px;font-weight:700}.a-drawer__close{border:1px solid var(--line);border-radius:var(--r-sm);width:32px;height:32px;color:var(--mute);place-items:center;display:grid}.a-drawer__close:hover{background:var(--canvas);color:var(--ink)}.a-model{border:1px solid var(--line);border-radius:var(--r);background:var(--bg);box-shadow:var(--sh);flex-direction:column;gap:12px;padding:18px;display:flex}.a-model--off .a-model__id{color:var(--mute)}.a-model__top{align-items:center;gap:10px;display:flex}.a-model__kind{color:var(--mute);font-size:11.5px}.a-model__name{font-size:15px;font-weight:700}.a-model__id{font-family:var(--mono);color:var(--blue);word-break:break-all;font-size:17px;font-weight:600}.a-model__foot{flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:4px;display:flex}@media (width<=1024px){.a-side{width:var(--side-w-min)}.a-side__word,.a-nav__label,.a-nav__caret,.a-nav__sub{display:none}.a-side__head{flex-direction:column;gap:8px;padding:16px 8px 14px}.a-side__toggle{margin-left:0}.a-nav__item{justify-content:center;padding:10px 0}}@media (width<=640px){.a-top{padding:12px 14px}.a-top__side{gap:8px}.a-top__meText{display:none}.a-body{padding:14px}.a-profile__amount{font-size:24px}.a-stat__value{font-size:23px}}@media (prefers-reduced-motion:reduce){.a-nav__caret,.a-tile{transition:none}}
