/* Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@300;400;500;600;700&family=Noto+Serif+SC:wght@400;500;600;700&family=Bebas+Neue&family=Space+Grotesk:wght@400;500;600;700&display=swap');

/*! tailwindcss v4.1.14 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction: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-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-content:"";--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{--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-100:oklch(93.6% .032 17.717);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-slate-50:oklch(98.4% .003 247.858);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-600:oklch(44.6% .043 257.281);--color-slate-700:oklch(37.2% .044 257.287);--color-slate-900:oklch(20.8% .042 265.755);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-lg:32rem;--container-2xl:42rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-6xl--line-height:1;--text-7xl:4.5rem;--text-7xl--line-height:1;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--radius-xs:.125rem;--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--animate-bounce:bounce 1s infinite;--blur-sm:8px;--blur-2xl:40px;--aspect-video:16/9;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:"Noto Sans SC",sans-serif;--default-mono-font-family:var(--font-mono);--color-border:var(--border)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){*{outline-color:color-mix(in oklab,var(--ring)50%,transparent)}}body{background-color:var(--background);color:var(--foreground);font-family:Noto Sans SC,sans-serif}h1,h2,h3{font-family:Noto Serif SC,serif}button:not(:disabled),[role=button]:not([aria-disabled=true]),[type=button]:not(:disabled),[type=submit]:not(:disabled),[type=reset]:not(:disabled),a[href],select:not(:disabled),input[type=checkbox]:not(:disabled),input[type=radio]:not(:disabled){cursor:pointer}}@layer components{.container{width:100%;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}.flex{min-width:0;min-height:0}@media (min-width:640px){.container{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width:1024px){.container{max-width:1280px;padding-left:2rem;padding-right:2rem}}.xf-section-label{letter-spacing:.15em;text-transform:uppercase;color:#b1001b;color:oklch(48% .22 25);align-items:center;gap:.75rem;font-family:Space Grotesk,sans-serif;font-size:.75rem;font-weight:600;display:flex}.xf-section-label:before{content:"";background-color:#b1001b;background-color:oklch(48% .22 25);flex-shrink:0;width:2rem;height:2px;display:block}.xf-stat-number{color:#b1001b;color:oklch(48% .22 25);font-family:Bebas Neue,sans-serif;line-height:1}.xf-grid-texture{background-image:linear-gradient(#b2001b0d 1px,#0000 1px),linear-gradient(90deg,#b2001b0d 1px,#0000 1px);background-image:linear-gradient(color(xyz 0.198 0.093 0.01 / 0.051) 1px,#0000 1px),linear-gradient(90deg,color(xyz 0.198 0.093 0.01 / 0.051) 1px,#0000 1px);background-size:40px 40px}.xf-grid-texture-dark{background-image:linear-gradient(#b2001b12 1px,#0000 1px),linear-gradient(90deg,#b2001b12 1px,#0000 1px);background-image:linear-gradient(color(xyz 0.198 0.093 0.01 / 0.071) 1px,#0000 1px),linear-gradient(90deg,color(xyz 0.198 0.093 0.01 / 0.071) 1px,#0000 1px);background-size:40px 40px}.xf-glass-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff0f;border:1px solid #ffffff1f;border-radius:4px;transition:all .2s cubic-bezier(.23,1,.32,1)}.xf-glass-card:hover{background:#ffffff1a;border-color:#b1001b80;border-color:oklch(48% .22 25/.5);transform:translateY(-4px);box-shadow:0 16px 40px #0000004d}.xf-fade-up{opacity:0;transition:opacity .6s cubic-bezier(.23,1,.32,1),transform .6s cubic-bezier(.23,1,.32,1);transform:translateY(24px)}.xf-fade-up.visible{opacity:1;transform:translateY(0)}.xf-delay-100{transition-delay:.1s}.xf-delay-200{transition-delay:.2s}.xf-delay-300{transition-delay:.3s}.xf-delay-400{transition-delay:.4s}.xf-delay-500{transition-delay:.5s}}@layer utilities{.\@container\/card-header{container:card-header/inline-size}.\@container\/field-group{container:field-group/inline-size}.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing)*0)}.inset-x-0{inset-inline:calc(var(--spacing)*0)}.inset-y-0{inset-block:calc(var(--spacing)*0)}.-top-4{top:calc(var(--spacing)*-4)}.-top-12{top:calc(var(--spacing)*-12)}.top-0{top:calc(var(--spacing)*0)}.top-1\.5{top:calc(var(--spacing)*1.5)}.top-1\/2{top:50%}.top-3\.5{top:calc(var(--spacing)*3.5)}.top-4{top:calc(var(--spacing)*4)}.top-\[1px\]{top:1px}.top-\[50\%\]{top:50%}.top-\[60\%\]{top:60%}.top-full{top:100%}.-right-6{right:calc(var(--spacing)*-6)}.-right-12{right:calc(var(--spacing)*-12)}.right-0{right:calc(var(--spacing)*0)}.right-1{right:calc(var(--spacing)*1)}.right-2{right:calc(var(--spacing)*2)}.right-3{right:calc(var(--spacing)*3)}.right-4{right:calc(var(--spacing)*4)}.-bottom-1{bottom:calc(var(--spacing)*-1)}.-bottom-6{bottom:calc(var(--spacing)*-6)}.-bottom-12{bottom:calc(var(--spacing)*-12)}.bottom-0{bottom:calc(var(--spacing)*0)}.bottom-4{bottom:calc(var(--spacing)*4)}.bottom-8{bottom:calc(var(--spacing)*8)}.-left-4{left:calc(var(--spacing)*-4)}.-left-12{left:calc(var(--spacing)*-12)}.left-0{left:calc(var(--spacing)*0)}.left-1\/2{left:50%}.left-2{left:calc(var(--spacing)*2)}.left-4{left:calc(var(--spacing)*4)}.left-24{left:calc(var(--spacing)*24)}.left-\[50\%\]{left:50%}.isolate{isolation:isolate}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-\[1\]{z-index:1}.order-first{order:-9999}.order-last{order:9999}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.\!m-0{margin:calc(var(--spacing)*0)!important}.-mx-1{margin-inline:calc(var(--spacing)*-1)}.mx-2{margin-inline:calc(var(--spacing)*2)}.mx-3\.5{margin-inline:calc(var(--spacing)*3.5)}.mx-4{margin-inline:calc(var(--spacing)*4)}.mx-auto{margin-inline:auto}.-my-2{margin-block:calc(var(--spacing)*-2)}.my-0{margin-block:calc(var(--spacing)*0)}.my-0\.5{margin-block:calc(var(--spacing)*.5)}.my-1{margin-block:calc(var(--spacing)*1)}.-mt-4{margin-top:calc(var(--spacing)*-4)}.mt-0\.5{margin-top:calc(var(--spacing)*.5)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-1\.5{margin-top:calc(var(--spacing)*1.5)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-8{margin-top:calc(var(--spacing)*8)}.mt-10{margin-top:calc(var(--spacing)*10)}.mt-12{margin-top:calc(var(--spacing)*12)}.mt-auto{margin-top:auto}.mr-2{margin-right:calc(var(--spacing)*2)}.mb-0\.5{margin-bottom:calc(var(--spacing)*.5)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-5{margin-bottom:calc(var(--spacing)*5)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.mb-10{margin-bottom:calc(var(--spacing)*10)}.mb-12{margin-bottom:calc(var(--spacing)*12)}.mb-16{margin-bottom:calc(var(--spacing)*16)}.-ml-4{margin-left:calc(var(--spacing)*-4)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-4{margin-left:calc(var(--spacing)*4)}.ml-auto{margin-left:auto}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.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}.aspect-square{aspect-ratio:1}.aspect-video{aspect-ratio:var(--aspect-video)}.size-\(--cell-size\){width:var(--cell-size);height:var(--cell-size)}.size-2{width:calc(var(--spacing)*2);height:calc(var(--spacing)*2)}.size-2\.5{width:calc(var(--spacing)*2.5);height:calc(var(--spacing)*2.5)}.size-3{width:calc(var(--spacing)*3);height:calc(var(--spacing)*3)}.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-7{width:calc(var(--spacing)*7);height:calc(var(--spacing)*7)}.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)}.size-auto{width:auto;height:auto}.size-full{width:100%;height:100%}.h-\(--cell-size\){height:var(--cell-size)}.h-0\.5{height:calc(var(--spacing)*.5)}.h-1{height:calc(var(--spacing)*1)}.h-1\.5{height:calc(var(--spacing)*1.5)}.h-2{height:calc(var(--spacing)*2)}.h-2\.5{height:calc(var(--spacing)*2.5)}.h-3{height:calc(var(--spacing)*3)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-7{height:calc(var(--spacing)*7)}.h-8{height:calc(var(--spacing)*8)}.h-9{height:calc(var(--spacing)*9)}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.h-16{height:calc(var(--spacing)*16)}.h-24{height:calc(var(--spacing)*24)}.h-32{height:calc(var(--spacing)*32)}.h-52{height:calc(var(--spacing)*52)}.h-64{height:calc(var(--spacing)*64)}.h-96{height:calc(var(--spacing)*96)}.h-\[1\.15rem\]{height:1.15rem}.h-\[500px\]{height:500px}.h-\[calc\(100\%-1px\)\]{height:calc(100% - 1px)}.h-\[var\(--radix-navigation-menu-viewport-height\)\]{height:var(--radix-navigation-menu-viewport-height)}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-svh{height:100svh}.max-h-\(--radix-context-menu-content-available-height\){max-height:var(--radix-context-menu-content-available-height)}.max-h-\(--radix-dropdown-menu-content-available-height\){max-height:var(--radix-dropdown-menu-content-available-height)}.max-h-\(--radix-select-content-available-height\){max-height:var(--radix-select-content-available-height)}.max-h-\[300px\]{max-height:300px}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-4{min-height:calc(var(--spacing)*4)}.min-h-16{min-height:calc(var(--spacing)*16)}.min-h-\[calc\(100vh-6rem\)\]{min-height:calc(100vh - 6rem)}.min-h-screen{min-height:100vh}.min-h-svh{min-height:100svh}.w-\(--cell-size\){width:var(--cell-size)}.w-\(--sidebar-width\){width:var(--sidebar-width)}.w-0{width:calc(var(--spacing)*0)}.w-1{width:calc(var(--spacing)*1)}.w-2{width:calc(var(--spacing)*2)}.w-2\.5{width:calc(var(--spacing)*2.5)}.w-3{width:calc(var(--spacing)*3)}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-8{width:calc(var(--spacing)*8)}.w-9{width:calc(var(--spacing)*9)}.w-10{width:calc(var(--spacing)*10)}.w-16{width:calc(var(--spacing)*16)}.w-24{width:calc(var(--spacing)*24)}.w-64{width:calc(var(--spacing)*64)}.w-72{width:calc(var(--spacing)*72)}.w-96{width:calc(var(--spacing)*96)}.w-\[100px\]{width:100px}.w-\[400px\]{width:400px}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.w-px{width:1px}.max-w-\(--skeleton-width\){max-width:var(--skeleton-width)}.max-w-2xl{max-width:var(--container-2xl)}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.max-w-lg{max-width:var(--container-lg)}.max-w-max{max-width:max-content}.max-w-sm{max-width:var(--container-sm)}.max-w-xs{max-width:var(--container-xs)}.min-w-\(--cell-size\){min-width:var(--cell-size)}.min-w-0{min-width:calc(var(--spacing)*0)}.min-w-5{min-width:calc(var(--spacing)*5)}.min-w-8{min-width:calc(var(--spacing)*8)}.min-w-9{min-width:calc(var(--spacing)*9)}.min-w-10{min-width:calc(var(--spacing)*10)}.min-w-\[8rem\]{min-width:8rem}.min-w-\[12rem\]{min-width:12rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.grow{flex-grow:1}.grow-0{flex-grow:0}.basis-full{flex-basis:100%}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.origin-\(--radix-context-menu-content-transform-origin\){transform-origin:var(--radix-context-menu-content-transform-origin)}.origin-\(--radix-dropdown-menu-content-transform-origin\){transform-origin:var(--radix-dropdown-menu-content-transform-origin)}.origin-\(--radix-hover-card-content-transform-origin\){transform-origin:var(--radix-hover-card-content-transform-origin)}.origin-\(--radix-menubar-content-transform-origin\){transform-origin:var(--radix-menubar-content-transform-origin)}.origin-\(--radix-popover-content-transform-origin\){transform-origin:var(--radix-popover-content-transform-origin)}.origin-\(--radix-select-content-transform-origin\){transform-origin:var(--radix-select-content-transform-origin)}.origin-\(--radix-tooltip-content-transform-origin\){transform-origin:var(--radix-tooltip-content-transform-origin)}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-x-px{--tw-translate-x:-1px;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-\[-50\%\]{--tw-translate-x:-50%;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-px{--tw-translate-x:1px;translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-0\.5{--tw-translate-y:calc(var(--spacing)*.5);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-\[-50\%\]{--tw-translate-y:-50%;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-\[calc\(-50\%_-_2px\)\]{--tw-translate-y: calc(-50% - 2px) ;translate:var(--tw-translate-x)var(--tw-translate-y)}.rotate-45{rotate:45deg}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-bounce{animation:var(--animate-bounce)}.animate-caret-blink{animation:1.25s ease-out infinite caret-blink}.animate-in{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)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.touch-none{touch-action:none}.resize-none{resize:none}.scroll-my-1{scroll-margin-block:calc(var(--spacing)*1)}.scroll-py-1{scroll-padding-block:calc(var(--spacing)*1)}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\[0_1fr\]{grid-template-columns:0 1fr}.grid-rows-\[auto_auto\]{grid-template-rows:auto auto}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-start{justify-content:flex-start}.justify-items-start{justify-items:start}.gap-0{gap:calc(var(--spacing)*0)}.gap-0\.5{gap:calc(var(--spacing)*.5)}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-2\.5{gap:calc(var(--spacing)*2.5)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}.gap-7{gap:calc(var(--spacing)*7)}.gap-8{gap:calc(var(--spacing)*8)}.gap-12{gap:calc(var(--spacing)*12)}.gap-16{gap:calc(var(--spacing)*16)}.gap-px{gap:1px}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*8)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*8)*calc(1 - var(--tw-space-y-reverse)))}.gap-y-0\.5{row-gap:calc(var(--spacing)*.5)}.self-start{align-self:flex-start}.self-stretch{align-self:stretch}.justify-self-end{justify-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-\[2px\]{border-radius:2px}.rounded-\[4px\]{border-radius:4px}.rounded-\[10px\]{border-radius:10px}.rounded-\[20px\]{border-radius:20px}.rounded-\[calc\(var\(--radius\)-5px\)\]{border-radius:calc(var(--radius) - 5px)}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-none{border-radius:0}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:calc(var(--radius) + 4px)}.rounded-xs{border-radius:var(--radius-xs)}.rounded-l-md{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.rounded-tl-sm{border-top-left-radius:calc(var(--radius) - 4px)}.rounded-r-md{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-\[1\.5px\]{border-style:var(--tw-border-style);border-width:1.5px}.border-y{border-block-style:var(--tw-border-style);border-block-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-dashed{--tw-border-style:dashed;border-style:dashed}.border-\(--color-border\){border-color:var(--color-border)}.border-\[rgba\(0\,0\,0\,0\.08\)\]{border-color:#00000014}.border-border,.border-border\/50{border-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.border-border\/50{border-color:color-mix(in oklab,var(--border)50%,transparent)}}.border-input{border-color:var(--input)}.border-primary{border-color:var(--primary)}.border-sidebar-border{border-color:var(--sidebar-border)}.border-transparent{border-color:#0000}.border-white\/10{border-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.border-white\/10{border-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.border-t-transparent{border-top-color:#0000}.border-l-transparent{border-left-color:#0000}.bg-\(--color-bg\){background-color:var(--color-bg)}.bg-\[\#1a1a19\]{background-color:#1a1a19}.bg-\[\#f8f8f7\]{background-color:#f8f8f7}.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-blue-600{background-color:var(--color-blue-600)}.bg-border{background-color:var(--border)}.bg-card{background-color:var(--card)}.bg-current{background-color:currentColor}.bg-destructive{background-color:var(--destructive)}.bg-foreground{background-color:var(--foreground)}.bg-input{background-color:var(--input)}.bg-muted,.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-red-100{background-color:var(--color-red-100)}.bg-secondary{background-color:var(--secondary)}.bg-sidebar{background-color:var(--sidebar)}.bg-sidebar-border{background-color:var(--sidebar-border)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-white\/80{background-color:#fffc}@supports (color:color-mix(in lab,red,red)){.bg-white\/80{background-color:color-mix(in oklab,var(--color-white)80%,transparent)}}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-slate-50{--tw-gradient-from:var(--color-slate-50);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-slate-100{--tw-gradient-to:var(--color-slate-100);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.fill-current{fill:currentColor}.fill-foreground{fill:var(--foreground)}.fill-primary{fill:var(--primary)}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:calc(var(--spacing)*0)}.p-1{padding:calc(var(--spacing)*1)}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-5{padding:calc(var(--spacing)*5)}.p-6{padding:calc(var(--spacing)*6)}.p-8{padding:calc(var(--spacing)*8)}.p-\[3px\]{padding:3px}.p-px{padding:1px}.px-\(--cell-size\){padding-inline:var(--cell-size)}.px-1{padding-inline:calc(var(--spacing)*1)}.px-1\.5{padding-inline:calc(var(--spacing)*1.5)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-2\.5{padding-inline:calc(var(--spacing)*2.5)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-5{padding-inline:calc(var(--spacing)*5)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-5{padding-block:calc(var(--spacing)*5)}.py-6{padding-block:calc(var(--spacing)*6)}.py-16{padding-block:calc(var(--spacing)*16)}.py-20{padding-block:calc(var(--spacing)*20)}.py-24{padding-block:calc(var(--spacing)*24)}.pt-0{padding-top:calc(var(--spacing)*0)}.pt-3{padding-top:calc(var(--spacing)*3)}.pt-4{padding-top:calc(var(--spacing)*4)}.pt-6{padding-top:calc(var(--spacing)*6)}.pt-8{padding-top:calc(var(--spacing)*8)}.pt-12{padding-top:calc(var(--spacing)*12)}.pt-20{padding-top:calc(var(--spacing)*20)}.pt-24{padding-top:calc(var(--spacing)*24)}.pr-1{padding-right:calc(var(--spacing)*1)}.pr-2{padding-right:calc(var(--spacing)*2)}.pr-2\.5{padding-right:calc(var(--spacing)*2.5)}.pr-3{padding-right:calc(var(--spacing)*3)}.pr-8{padding-right:calc(var(--spacing)*8)}.pb-1{padding-bottom:calc(var(--spacing)*1)}.pb-2{padding-bottom:calc(var(--spacing)*2)}.pb-3{padding-bottom:calc(var(--spacing)*3)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.pb-8{padding-bottom:calc(var(--spacing)*8)}.pb-20{padding-bottom:calc(var(--spacing)*20)}.pl-2{padding-left:calc(var(--spacing)*2)}.pl-3{padding-left:calc(var(--spacing)*3)}.pl-4{padding-left:calc(var(--spacing)*4)}.pl-8{padding-left:calc(var(--spacing)*8)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:Noto Sans SC,sans-serif}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-sm\/relaxed{font-size:var(--text-sm);line-height:var(--leading-relaxed)}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.8rem\]{font-size:.8rem}.leading-5{--tw-leading:calc(var(--spacing)*5);line-height:calc(var(--spacing)*5)}.leading-\[26px\]{--tw-leading:26px;line-height:26px}.leading-none{--tw-leading:1;line-height:1}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-0\.44px\]{--tw-tracking:-.44px;letter-spacing:-.44px}.tracking-\[-0\.154px\]{--tw-tracking:-.154px;letter-spacing:-.154px}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-balance{text-wrap:balance}.break-words{overflow-wrap:break-word}.whitespace-break-spaces{white-space:break-spaces}.whitespace-nowrap{white-space:nowrap}.text-\[\#34322d\]{color:#34322d}.text-\[\#858481\]{color:#858481}.text-accent-foreground{color:var(--accent-foreground)}.text-background{color:var(--background)}.text-card-foreground{color:var(--card-foreground)}.text-current{color:currentColor}.text-destructive{color:var(--destructive)}.text-foreground{color:var(--foreground)}.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-red-500{color:var(--color-red-500)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-sidebar-foreground,.text-sidebar-foreground\/70{color:var(--sidebar-foreground)}@supports (color:color-mix(in lab,red,red)){.text-sidebar-foreground\/70{color:color-mix(in oklab,var(--sidebar-foreground)70%,transparent)}}.text-slate-600{color:var(--color-slate-600)}.text-slate-700{color:var(--color-slate-700)}.text-slate-900{color:var(--color-slate-900)}.text-white{color:var(--color-white)}.text-white\/40{color:#fff6}@supports (color:color-mix(in lab,red,red)){.text-white\/40{color:color-mix(in oklab,var(--color-white)40%,transparent)}}.text-white\/50{color:#ffffff80}@supports (color:color-mix(in lab,red,red)){.text-white\/50{color:color-mix(in oklab,var(--color-white)50%,transparent)}}.text-white\/60{color:#fff9}@supports (color:color-mix(in lab,red,red)){.text-white\/60{color:color-mix(in oklab,var(--color-white)60%,transparent)}}.text-white\/70{color:#ffffffb3}@supports (color:color-mix(in lab,red,red)){.text-white\/70{color:color-mix(in oklab,var(--color-white)70%,transparent)}}.text-white\/80{color:#fffc}@supports (color:color-mix(in lab,red,red)){.text-white\/80{color:color-mix(in oklab,var(--color-white)80%,transparent)}}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-5{opacity:.05}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0_0_1px_hsl\(var\(--sidebar-border\)\)\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,hsl(var(--sidebar-border)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0px_4px_11px_0px_rgba\(0\,0\,0\,0\.08\)\]{--tw-shadow:0px 4px 11px 0px var(--tw-shadow-color,#00000014);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-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.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-0{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + 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-ring\/50{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.ring-ring\/50{--tw-ring-color:color-mix(in oklab,var(--ring)50%,transparent)}}.ring-sidebar-ring{--tw-ring-color:var(--sidebar-ring)}.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}.backdrop-blur-2xl{--tw-backdrop-blur:blur(var(--blur-2xl));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[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-\[left\,right\,width\]{transition-property:left,right,width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[margin\,opacity\]{transition-property:margin,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\,height\,padding\]{transition-property:width,height,padding;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-none{transition-property:none}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.duration-1000{--tw-duration:1s;transition-duration:1s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-linear{--tw-ease:linear;transition-timing-function:linear}.fade-in-0{--tw-enter-opacity:0}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.zoom-in-95{--tw-enter-scale:.95}.\[--cell-size\:--spacing\(8\)\]{--cell-size:calc(var(--spacing)*8)}.group-focus-within\/menu-item\:opacity-100:is(:where(.group\/menu-item):focus-within *){opacity:1}@media (hover:hover){.group-hover\:w-4:is(:where(.group):hover *){width:calc(var(--spacing)*4)}.group-hover\:w-full:is(:where(.group):hover *){width:100%}.group-hover\:scale-105:is(:where(.group):hover *){--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x)var(--tw-scale-y)}.group-hover\:text-red-600:is(:where(.group):hover *){color:var(--color-red-600)}.group-hover\:opacity-100:is(:where(.group):hover *),.group-hover\/menu-item\:opacity-100:is(:where(.group\/menu-item):hover *){opacity:1}}.group-has-data-\[sidebar\=menu-action\]\/menu-item\:pr-8:is(:where(.group\/menu-item):has([data-sidebar=menu-action]) *){padding-right:calc(var(--spacing)*8)}.group-has-\[\[data-orientation\=horizontal\]\]\/field\:text-balance:is(:where(.group\/field):has([data-orientation=horizontal]) *){text-wrap:balance}.group-has-\[\[data-slot\=item-description\]\]\/item\:translate-y-0\.5:is(:where(.group\/item):has([data-slot=item-description]) *){--tw-translate-y:calc(var(--spacing)*.5);translate:var(--tw-translate-x)var(--tw-translate-y)}.group-has-\[\[data-slot\=item-description\]\]\/item\:self-start:is(:where(.group\/item):has([data-slot=item-description]) *){align-self:flex-start}.group-has-\[\>input\]\/input-group\:pt-2\.5:is(:where(.group\/input-group):has(>input) *){padding-top:calc(var(--spacing)*2.5)}.group-has-\[\>input\]\/input-group\:pb-2\.5:is(:where(.group\/input-group):has(>input) *){padding-bottom:calc(var(--spacing)*2.5)}.group-data-\[collapsible\=icon\]\:-mt-8:is(:where(.group)[data-collapsible=icon] *){margin-top:calc(var(--spacing)*-8)}.group-data-\[collapsible\=icon\]\:hidden:is(:where(.group)[data-collapsible=icon] *){display:none}.group-data-\[collapsible\=icon\]\:size-8\!:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--spacing)*8)!important;height:calc(var(--spacing)*8)!important}.group-data-\[collapsible\=icon\]\:w-\(--sidebar-width-icon\):is(:where(.group)[data-collapsible=icon] *){width:var(--sidebar-width-icon)}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + (calc(var(--spacing)*4)))}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\+2px\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + (calc(var(--spacing)*4)) + 2px)}.group-data-\[collapsible\=icon\]\:overflow-hidden:is(:where(.group)[data-collapsible=icon] *){overflow:hidden}.group-data-\[collapsible\=icon\]\:p-0\!:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing)*0)!important}.group-data-\[collapsible\=icon\]\:p-2\!:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing)*2)!important}.group-data-\[collapsible\=icon\]\:opacity-0:is(:where(.group)[data-collapsible=icon] *){opacity:0}.group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){right:calc(var(--sidebar-width)*-1)}.group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){left:calc(var(--sidebar-width)*-1)}.group-data-\[collapsible\=offcanvas\]\:w-0:is(:where(.group)[data-collapsible=offcanvas] *){width:calc(var(--spacing)*0)}.group-data-\[collapsible\=offcanvas\]\:translate-x-0:is(:where(.group)[data-collapsible=offcanvas] *){--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled=true] *),.group-data-\[disabled\=true\]\/field\:opacity-50:is(:where(.group\/field)[data-disabled=true] *),.group-data-\[disabled\=true\]\/input-group\:opacity-50:is(:where(.group\/input-group)[data-disabled=true] *){opacity:.5}.group-data-\[focused\=true\]\/day\:relative:is(:where(.group\/day)[data-focused=true] *){position:relative}.group-data-\[focused\=true\]\/day\:z-10:is(:where(.group\/day)[data-focused=true] *){z-index:10}.group-data-\[focused\=true\]\/day\:border-ring:is(:where(.group\/day)[data-focused=true] *){border-color:var(--ring)}.group-data-\[focused\=true\]\/day\:ring-\[3px\]:is(:where(.group\/day)[data-focused=true] *){--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)}.group-data-\[focused\=true\]\/day\:ring-ring\/50:is(:where(.group\/day)[data-focused=true] *){--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.group-data-\[focused\=true\]\/day\:ring-ring\/50:is(:where(.group\/day)[data-focused=true] *){--tw-ring-color:color-mix(in oklab,var(--ring)50%,transparent)}}.group-data-\[side\=left\]\:-right-4:is(:where(.group)[data-side=left] *){right:calc(var(--spacing)*-4)}.group-data-\[side\=left\]\:border-r:is(:where(.group)[data-side=left] *){border-right-style:var(--tw-border-style);border-right-width:1px}.group-data-\[side\=right\]\:left-0:is(:where(.group)[data-side=right] *){left:calc(var(--spacing)*0)}.group-data-\[side\=right\]\:rotate-180:is(:where(.group)[data-side=right] *){rotate:180deg}.group-data-\[side\=right\]\:border-l:is(:where(.group)[data-side=right] *){border-left-style:var(--tw-border-style);border-left-width:1px}.group-data-\[state\=open\]\:rotate-180:is(:where(.group)[data-state=open] *){rotate:180deg}.group-data-\[variant\=floating\]\:rounded-lg:is(:where(.group)[data-variant=floating] *){border-radius:var(--radius)}.group-data-\[variant\=floating\]\:border:is(:where(.group)[data-variant=floating] *){border-style:var(--tw-border-style);border-width:1px}.group-data-\[variant\=floating\]\:border-sidebar-border:is(:where(.group)[data-variant=floating] *){border-color:var(--sidebar-border)}.group-data-\[variant\=floating\]\:shadow-sm:is(:where(.group)[data-variant=floating] *){--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\=outline\]\/field-group\:-mb-2:is(:where(.group\/field-group)[data-variant=outline] *){margin-bottom:calc(var(--spacing)*-2)}.group-data-\[vaul-drawer-direction\=bottom\]\/drawer-content\:block:is(:where(.group\/drawer-content)[data-vaul-drawer-direction=bottom] *){display:block}.group-data-\[vaul-drawer-direction\=bottom\]\/drawer-content\:text-center:is(:where(.group\/drawer-content)[data-vaul-drawer-direction=bottom] *),.group-data-\[vaul-drawer-direction\=top\]\/drawer-content\:text-center:is(:where(.group\/drawer-content)[data-vaul-drawer-direction=top] *){text-align:center}.group-data-\[viewport\=false\]\/navigation-menu\:top-full:is(:where(.group\/navigation-menu)[data-viewport=false] *){top:100%}.group-data-\[viewport\=false\]\/navigation-menu\:mt-1\.5:is(:where(.group\/navigation-menu)[data-viewport=false] *){margin-top:calc(var(--spacing)*1.5)}.group-data-\[viewport\=false\]\/navigation-menu\:overflow-hidden:is(:where(.group\/navigation-menu)[data-viewport=false] *){overflow:hidden}.group-data-\[viewport\=false\]\/navigation-menu\:rounded-md:is(:where(.group\/navigation-menu)[data-viewport=false] *){border-radius:calc(var(--radius) - 2px)}.group-data-\[viewport\=false\]\/navigation-menu\:border:is(:where(.group\/navigation-menu)[data-viewport=false] *){border-style:var(--tw-border-style);border-width:1px}.group-data-\[viewport\=false\]\/navigation-menu\:bg-popover:is(:where(.group\/navigation-menu)[data-viewport=false] *){background-color:var(--popover)}.group-data-\[viewport\=false\]\/navigation-menu\:text-popover-foreground:is(:where(.group\/navigation-menu)[data-viewport=false] *){color:var(--popover-foreground)}.group-data-\[viewport\=false\]\/navigation-menu\:shadow:is(:where(.group\/navigation-menu)[data-viewport=false] *){--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-\[viewport\=false\]\/navigation-menu\:duration-200:is(:where(.group\/navigation-menu)[data-viewport=false] *){--tw-duration:.2s;transition-duration:.2s}@media (hover:hover){.peer-hover\/menu-button\:text-sidebar-accent-foreground:is(:where(.peer\/menu-button):hover~*){color:var(--sidebar-accent-foreground)}}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.peer-data-\[active\=true\]\/menu-button\:text-sidebar-accent-foreground:is(:where(.peer\/menu-button)[data-active=true]~*){color:var(--sidebar-accent-foreground)}.peer-data-\[size\=default\]\/menu-button\:top-1\.5:is(:where(.peer\/menu-button)[data-size=default]~*){top:calc(var(--spacing)*1.5)}.peer-data-\[size\=lg\]\/menu-button\:top-2\.5:is(:where(.peer\/menu-button)[data-size=lg]~*){top:calc(var(--spacing)*2.5)}.peer-data-\[size\=sm\]\/menu-button\:top-1:is(:where(.peer\/menu-button)[data-size=sm]~*){top:calc(var(--spacing)*1)}.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-muted-foreground::placeholder{color:var(--muted-foreground)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-2:after{content:var(--tw-content);inset:calc(var(--spacing)*-2)}.after\:inset-y-0:after{content:var(--tw-content);inset-block:calc(var(--spacing)*0)}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:w-1:after{content:var(--tw-content);width:calc(var(--spacing)*1)}.after\:w-\[2px\]:after{content:var(--tw-content);width:2px}.after\:-translate-x-1\/2:after{content:var(--tw-content);--tw-translate-x: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.group-data-\[collapsible\=offcanvas\]\:after\:left-full:is(:where(.group)[data-collapsible=offcanvas] *):after{content:var(--tw-content);left:100%}.first\:rounded-l-md:first-child{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.first\:border-l:first-child{border-left-style:var(--tw-border-style);border-left-width:1px}.last\:mt-0:last-child{margin-top:calc(var(--spacing)*0)}.last\:rounded-r-md:last-child{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (hover:hover){.hover\:bg-\[\#1a1a19\]\/90:hover{background-color:#1a1a19e6}.hover\:bg-accent:hover{background-color:var(--accent)}.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}.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-muted:hover,.hover\:bg-muted\/50:hover{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-muted\/50:hover{background-color:color-mix(in oklab,var(--muted)50%,transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--primary)90%,transparent)}}.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\:bg-sidebar-accent:hover{background-color:var(--sidebar-accent)}.hover\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:text-muted-foreground:hover{color:var(--muted-foreground)}.hover\:text-sidebar-accent-foreground:hover{color:var(--sidebar-accent-foreground)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-\[0_0_0_1px_hsl\(var\(--sidebar-accent\)\)\]:hover{--tw-shadow:0 0 0 1px var(--tw-shadow-color,hsl(var(--sidebar-accent)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-lg:hover{--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)}.hover\:ring-4:hover{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(4px + 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)}.hover\:group-data-\[collapsible\=offcanvas\]\:bg-sidebar:hover:is(:where(.group)[data-collapsible=offcanvas] *){background-color:var(--sidebar)}.hover\:after\:bg-sidebar-border:hover:after{content:var(--tw-content);background-color:var(--sidebar-border)}}.focus\:z-10:focus{z-index:10}.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\:z-10:focus-visible{z-index:10}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-0:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + 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-1:focus-visible{--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)}.focus-visible\:ring-2:focus-visible{--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-visible\:ring-4:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(4px + 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-\[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-ring:focus-visible,.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\:ring-offset-1:focus-visible{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus-visible\:outline-hidden:focus-visible{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus-visible\:outline-hidden:focus-visible{outline-offset:2px;outline:2px solid #0000}}.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)}.active\:bg-sidebar-accent:active{background-color:var(--sidebar-accent)}.active\:text-sidebar-accent-foreground:active{color:var(--sidebar-accent-foreground)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}:where([data-side=left]) .in-data-\[side\=left\]\:cursor-w-resize{cursor:w-resize}:where([data-side=right]) .in-data-\[side\=right\]\:cursor-e-resize{cursor:e-resize}.has-focus\:border-ring:has(:focus){border-color:var(--ring)}.has-focus\:ring-\[3px\]:has(:focus){--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)}.has-focus\:ring-ring\/50:has(:focus){--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.has-focus\:ring-ring\/50:has(:focus){--tw-ring-color:color-mix(in oklab,var(--ring)50%,transparent)}}.has-disabled\:opacity-50:has(:disabled){opacity:.5}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-data-\[state\=checked\]\:border-primary:has([data-state=checked]){border-color:var(--primary)}.has-data-\[state\=checked\]\:bg-primary\/5:has([data-state=checked]){background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.has-data-\[state\=checked\]\:bg-primary\/5:has([data-state=checked]){background-color:color-mix(in oklab,var(--primary)5%,transparent)}}.has-data-\[variant\=inset\]\:bg-sidebar:has([data-variant=inset]){background-color:var(--sidebar)}.has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:border-ring:has([data-slot=input-group-control]:focus-visible){border-color:var(--ring)}.has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-\[3px\]:has([data-slot=input-group-control]: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)}.has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-ring\/50:has([data-slot=input-group-control]:focus-visible){--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.has-\[\[data-slot\=input-group-control\]\:focus-visible\]\:ring-ring\/50:has([data-slot=input-group-control]:focus-visible){--tw-ring-color:color-mix(in oklab,var(--ring)50%,transparent)}}.has-\[\[data-slot\]\[aria-invalid\=true\]\]\:border-destructive:has([data-slot][aria-invalid=true]){border-color:var(--destructive)}.has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/20:has([data-slot][aria-invalid=true]){--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/20:has([data-slot][aria-invalid=true]){--tw-ring-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.has-\[\>\[data-align\=block-end\]\]\:h-auto:has(>[data-align=block-end]){height:auto}.has-\[\>\[data-align\=block-end\]\]\:flex-col:has(>[data-align=block-end]){flex-direction:column}.has-\[\>\[data-align\=block-start\]\]\:h-auto:has(>[data-align=block-start]){height:auto}.has-\[\>\[data-align\=block-start\]\]\:flex-col:has(>[data-align=block-start]){flex-direction:column}.has-\[\>\[data-slot\=button-group\]\]\:gap-2:has(>[data-slot=button-group]){gap:calc(var(--spacing)*2)}.has-\[\>\[data-slot\=checkbox-group\]\]\:gap-3:has(>[data-slot=checkbox-group]){gap:calc(var(--spacing)*3)}.has-\[\>\[data-slot\=field-content\]\]\:items-start:has(>[data-slot=field-content]){align-items:flex-start}.has-\[\>\[data-slot\=field\]\]\:w-full:has(>[data-slot=field]){width:100%}.has-\[\>\[data-slot\=field\]\]\:flex-col:has(>[data-slot=field]){flex-direction:column}.has-\[\>\[data-slot\=field\]\]\:rounded-md:has(>[data-slot=field]){border-radius:calc(var(--radius) - 2px)}.has-\[\>\[data-slot\=field\]\]\:border:has(>[data-slot=field]){border-style:var(--tw-border-style);border-width:1px}.has-\[\>\[data-slot\=radio-group\]\]\:gap-3:has(>[data-slot=radio-group]){gap:calc(var(--spacing)*3)}.has-\[\>button\]\:mr-\[-0\.45rem\]:has(>button){margin-right:-.45rem}.has-\[\>button\]\:ml-\[-0\.45rem\]:has(>button){margin-left:-.45rem}.has-\[\>kbd\]\:mr-\[-0\.35rem\]:has(>kbd){margin-right:-.35rem}.has-\[\>kbd\]\:ml-\[-0\.35rem\]:has(>kbd){margin-left:-.35rem}.has-\[\>svg\]\:grid-cols-\[calc\(var\(--spacing\)\*4\)_1fr\]:has(>svg){grid-template-columns:calc(var(--spacing)*4)1fr}.has-\[\>svg\]\:gap-x-3:has(>svg){column-gap:calc(var(--spacing)*3)}.has-\[\>svg\]\:p-0:has(>svg){padding:calc(var(--spacing)*0)}.has-\[\>svg\]\:px-2:has(>svg){padding-inline:calc(var(--spacing)*2)}.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)}.has-\[\>textarea\]\:h-auto:has(>textarea){height:auto}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.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)}}.aria-selected\:text-muted-foreground[aria-selected=true]{color:var(--muted-foreground)}.data-\[active\=true\]\:z-10[data-active=true]{z-index:10}.data-\[active\=true\]\:border-ring[data-active=true]{border-color:var(--ring)}.data-\[active\=true\]\:bg-accent\/50[data-active=true]{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.data-\[active\=true\]\:bg-accent\/50[data-active=true]{background-color:color-mix(in oklab,var(--accent)50%,transparent)}}.data-\[active\=true\]\:bg-sidebar-accent[data-active=true]{background-color:var(--sidebar-accent)}.data-\[active\=true\]\:font-medium[data-active=true]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.data-\[active\=true\]\:text-accent-foreground[data-active=true]{color:var(--accent-foreground)}.data-\[active\=true\]\:text-sidebar-accent-foreground[data-active=true]{color:var(--sidebar-accent-foreground)}.data-\[active\=true\]\:ring-\[3px\][data-active=true]{--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)}.data-\[active\=true\]\:ring-ring\/50[data-active=true]{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.data-\[active\=true\]\:ring-ring\/50[data-active=true]{--tw-ring-color:color-mix(in oklab,var(--ring)50%,transparent)}}@media (hover:hover){.data-\[active\=true\]\:hover\:bg-accent[data-active=true]:hover{background-color:var(--accent)}}.data-\[active\=true\]\:focus\:bg-accent[data-active=true]:focus{background-color:var(--accent)}.data-\[active\=true\]\:aria-invalid\:border-destructive[data-active=true][aria-invalid=true]{border-color:var(--destructive)}.data-\[active\=true\]\:aria-invalid\:ring-destructive\/20[data-active=true][aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.data-\[active\=true\]\:aria-invalid\:ring-destructive\/20[data-active=true][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-\[disabled\=true\]\:pointer-events-none[data-disabled=true]{pointer-events:none}.data-\[disabled\=true\]\:opacity-50[data-disabled=true]{opacity:.5}.data-\[error\=true\]\:text-destructive[data-error=true]{color:var(--destructive)}.data-\[inset\]\:pl-8[data-inset]{padding-left:calc(var(--spacing)*8)}.data-\[invalid\=true\]\:text-destructive[data-invalid=true]{color:var(--destructive)}.data-\[motion\=from-end\]\:slide-in-from-right-52[data-motion=from-end]{--tw-enter-translate-x:calc(52*var(--spacing))}.data-\[motion\=from-start\]\:slide-in-from-left-52[data-motion=from-start]{--tw-enter-translate-x:calc(52*var(--spacing)*-1)}.data-\[motion\=to-end\]\:slide-out-to-right-52[data-motion=to-end]{--tw-exit-translate-x:calc(52*var(--spacing))}.data-\[motion\=to-start\]\:slide-out-to-left-52[data-motion=to-start]{--tw-exit-translate-x:calc(52*var(--spacing)*-1)}.data-\[motion\^\=from-\]\:animate-in[data-motion^=from-]{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-\[motion\^\=from-\]\:fade-in[data-motion^=from-]{--tw-enter-opacity:0}.data-\[motion\^\=to-\]\:animate-out[data-motion^=to-]{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-\[motion\^\=to-\]\:fade-out[data-motion^=to-]{--tw-exit-opacity:0}.data-\[orientation\=horizontal\]\:h-1\.5[data-orientation=horizontal]{height:calc(var(--spacing)*1.5)}.data-\[orientation\=horizontal\]\:h-full[data-orientation=horizontal]{height:100%}.data-\[orientation\=horizontal\]\:h-px[data-orientation=horizontal]{height:1px}.data-\[orientation\=horizontal\]\:w-full[data-orientation=horizontal]{width:100%}.data-\[orientation\=vertical\]\:h-auto[data-orientation=vertical]{height:auto}.data-\[orientation\=vertical\]\:h-full[data-orientation=vertical]{height:100%}.data-\[orientation\=vertical\]\:min-h-44[data-orientation=vertical]{min-height:calc(var(--spacing)*44)}.data-\[orientation\=vertical\]\:w-1\.5[data-orientation=vertical]{width:calc(var(--spacing)*1.5)}.data-\[orientation\=vertical\]\:w-auto[data-orientation=vertical]{width:auto}.data-\[orientation\=vertical\]\:w-full[data-orientation=vertical]{width:100%}.data-\[orientation\=vertical\]\:w-px[data-orientation=vertical]{width:1px}.data-\[orientation\=vertical\]\:flex-col[data-orientation=vertical]{flex-direction:column}.data-\[panel-group-direction\=vertical\]\:h-px[data-panel-group-direction=vertical]{height:1px}.data-\[panel-group-direction\=vertical\]\:w-full[data-panel-group-direction=vertical]{width:100%}.data-\[panel-group-direction\=vertical\]\:flex-col[data-panel-group-direction=vertical]{flex-direction:column}.data-\[panel-group-direction\=vertical\]\:after\:left-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);left:calc(var(--spacing)*0)}.data-\[panel-group-direction\=vertical\]\:after\:h-1[data-panel-group-direction=vertical]:after{content:var(--tw-content);height:calc(var(--spacing)*1)}.data-\[panel-group-direction\=vertical\]\:after\:w-full[data-panel-group-direction=vertical]:after{content:var(--tw-content);width:100%}.data-\[panel-group-direction\=vertical\]\:after\:translate-x-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[panel-group-direction\=vertical\]\:after\:-translate-y-1\/2[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-y: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:var(--muted-foreground)}.data-\[range-end\=true\]\:rounded-md[data-range-end=true]{border-radius:calc(var(--radius) - 2px)}.data-\[range-end\=true\]\:rounded-r-md[data-range-end=true]{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.data-\[range-end\=true\]\:bg-primary[data-range-end=true]{background-color:var(--primary)}.data-\[range-end\=true\]\:text-primary-foreground[data-range-end=true]{color:var(--primary-foreground)}.data-\[range-middle\=true\]\:rounded-none[data-range-middle=true]{border-radius:0}.data-\[range-middle\=true\]\:bg-accent[data-range-middle=true]{background-color:var(--accent)}.data-\[range-middle\=true\]\:text-accent-foreground[data-range-middle=true]{color:var(--accent-foreground)}.data-\[range-start\=true\]\:rounded-md[data-range-start=true]{border-radius:calc(var(--radius) - 2px)}.data-\[range-start\=true\]\:rounded-l-md[data-range-start=true]{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.data-\[range-start\=true\]\:bg-primary[data-range-start=true]{background-color:var(--primary)}.data-\[range-start\=true\]\:text-primary-foreground[data-range-start=true]{color:var(--primary-foreground)}.data-\[selected-single\=true\]\:bg-primary[data-selected-single=true]{background-color:var(--primary)}.data-\[selected-single\=true\]\:text-primary-foreground[data-selected-single=true]{color:var(--primary-foreground)}.data-\[selected\=true\]\:rounded-none[data-selected=true]{border-radius:0}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:var(--accent)}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:var(--accent-foreground)}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.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\=alert-description\]\:text-destructive\/90>*)[data-slot=alert-description]{color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){:is(.\*\:data-\[slot\=alert-description\]\:text-destructive\/90>*)[data-slot=alert-description]{color:color-mix(in oklab,var(--destructive)90%,transparent)}}.data-\[slot\=checkbox-group\]\:gap-3[data-slot=checkbox-group]{gap:calc(var(--spacing)*3)}:is(.\*\*\:data-\[slot\=command-input-wrapper\]\:h-12 *)[data-slot=command-input-wrapper]{height:calc(var(--spacing)*12)}:is(.\*\*\:data-\[slot\=navigation-menu-link\]\:focus\:ring-0 *)[data-slot=navigation-menu-link]:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + 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)}:is(.\*\*\:data-\[slot\=navigation-menu-link\]\:focus\:outline-none *)[data-slot=navigation-menu-link]:focus{--tw-outline-style:none;outline-style:none}: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\]\:shadow-sm[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)}.data-\[state\=checked\]\:translate-x-\[calc\(100\%-2px\)\][data-state=checked]{--tw-translate-x: calc(100% - 2px) ;translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[state\=checked\]\:border-primary[data-state=checked]{border-color:var(--primary)}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:var(--primary)}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:var(--primary-foreground)}.data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{animation:accordion-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)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\]\: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%}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:animate-out:is(:where(.group\/navigation-menu)[data-viewport=false] *)[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)}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:fade-out-0:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=closed]{--tw-exit-opacity:0}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:zoom-out-95:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=hidden\]\:animate-out[data-state=hidden]{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\=hidden\]\:fade-out[data-state=hidden]{--tw-exit-opacity:0}.data-\[state\=on\]\:bg-accent[data-state=on]{background-color:var(--accent)}.data-\[state\=on\]\:text-accent-foreground[data-state=on]{color:var(--accent-foreground)}.data-\[state\=open\]\:animate-accordion-down[data-state=open]{animation:accordion-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)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\]\: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-accent[data-state=open],.data-\[state\=open\]\:bg-accent\/50[data-state=open]{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.data-\[state\=open\]\:bg-accent\/50[data-state=open]{background-color:color-mix(in oklab,var(--accent)50%,transparent)}}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:var(--secondary)}.data-\[state\=open\]\:text-accent-foreground[data-state=open]{color:var(--accent-foreground)}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:var(--muted-foreground)}.data-\[state\=open\]\:opacity-100[data-state=open]{opacity:1}.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-90[data-state=open]{--tw-enter-scale:.9}.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%}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:animate-in:is(:where(.group\/navigation-menu)[data-viewport=false] *)[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)}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:fade-in-0:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=open]{--tw-enter-opacity:0}.group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:zoom-in-95:is(:where(.group\/navigation-menu)[data-viewport=false] *)[data-state=open]{--tw-enter-scale:.95}@media (hover:hover){.data-\[state\=open\]\:hover\:bg-accent[data-state=open]:hover{background-color:var(--accent)}.data-\[state\=open\]\:hover\:bg-sidebar-accent[data-state=open]:hover{background-color:var(--sidebar-accent)}.data-\[state\=open\]\:hover\:text-sidebar-accent-foreground[data-state=open]:hover{color:var(--sidebar-accent-foreground)}}.data-\[state\=open\]\:focus\:bg-accent[data-state=open]:focus{background-color:var(--accent)}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:var(--muted)}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:var(--input)}.data-\[state\=visible\]\:animate-in[data-state=visible]{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\=visible\]\:fade-in[data-state=visible]{--tw-enter-opacity:0}.data-\[variant\=destructive\]\:text-destructive[data-variant=destructive]{color:var(--destructive)}.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:color-mix(in oklab,var(--destructive)10%,transparent)}}.data-\[variant\=destructive\]\:focus\:text-destructive[data-variant=destructive]:focus{color:var(--destructive)}.data-\[variant\=label\]\:text-sm[data-variant=label]{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.data-\[variant\=legend\]\:text-base[data-variant=legend]{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.data-\[variant\=outline\]\:border-l-0[data-variant=outline]{border-left-style:var(--tw-border-style);border-left-width:0}.data-\[variant\=outline\]\:shadow-xs[data-variant=outline]{--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)}.data-\[variant\=outline\]\:first\:border-l[data-variant=outline]:first-child{border-left-style:var(--tw-border-style);border-left-width:1px}.data-\[vaul-drawer-direction\=bottom\]\:inset-x-0[data-vaul-drawer-direction=bottom]{inset-inline:calc(var(--spacing)*0)}.data-\[vaul-drawer-direction\=bottom\]\:bottom-0[data-vaul-drawer-direction=bottom]{bottom:calc(var(--spacing)*0)}.data-\[vaul-drawer-direction\=bottom\]\:mt-24[data-vaul-drawer-direction=bottom]{margin-top:calc(var(--spacing)*24)}.data-\[vaul-drawer-direction\=bottom\]\:max-h-\[80vh\][data-vaul-drawer-direction=bottom]{max-height:80vh}.data-\[vaul-drawer-direction\=bottom\]\:rounded-t-lg[data-vaul-drawer-direction=bottom]{border-top-left-radius:var(--radius);border-top-right-radius:var(--radius)}.data-\[vaul-drawer-direction\=bottom\]\:border-t[data-vaul-drawer-direction=bottom]{border-top-style:var(--tw-border-style);border-top-width:1px}.data-\[vaul-drawer-direction\=left\]\:inset-y-0[data-vaul-drawer-direction=left]{inset-block:calc(var(--spacing)*0)}.data-\[vaul-drawer-direction\=left\]\:left-0[data-vaul-drawer-direction=left]{left:calc(var(--spacing)*0)}.data-\[vaul-drawer-direction\=left\]\:w-3\/4[data-vaul-drawer-direction=left]{width:75%}.data-\[vaul-drawer-direction\=left\]\:border-r[data-vaul-drawer-direction=left]{border-right-style:var(--tw-border-style);border-right-width:1px}.data-\[vaul-drawer-direction\=right\]\:inset-y-0[data-vaul-drawer-direction=right]{inset-block:calc(var(--spacing)*0)}.data-\[vaul-drawer-direction\=right\]\:right-0[data-vaul-drawer-direction=right]{right:calc(var(--spacing)*0)}.data-\[vaul-drawer-direction\=right\]\:w-3\/4[data-vaul-drawer-direction=right]{width:75%}.data-\[vaul-drawer-direction\=right\]\:border-l[data-vaul-drawer-direction=right]{border-left-style:var(--tw-border-style);border-left-width:1px}.data-\[vaul-drawer-direction\=top\]\:inset-x-0[data-vaul-drawer-direction=top]{inset-inline:calc(var(--spacing)*0)}.data-\[vaul-drawer-direction\=top\]\:top-0[data-vaul-drawer-direction=top]{top:calc(var(--spacing)*0)}.data-\[vaul-drawer-direction\=top\]\:mb-24[data-vaul-drawer-direction=top]{margin-bottom:calc(var(--spacing)*24)}.data-\[vaul-drawer-direction\=top\]\:max-h-\[80vh\][data-vaul-drawer-direction=top]{max-height:80vh}.data-\[vaul-drawer-direction\=top\]\:rounded-b-lg[data-vaul-drawer-direction=top]{border-bottom-right-radius:var(--radius);border-bottom-left-radius:var(--radius)}.data-\[vaul-drawer-direction\=top\]\:border-b[data-vaul-drawer-direction=top]{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.nth-last-2\:-mt-1:nth-last-child(2){margin-top:calc(var(--spacing)*-1)}@media (min-width:40rem){.sm\:block{display:block}.sm\:flex{display:flex}.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:gap-2\.5{gap:calc(var(--spacing)*2.5)}.sm\:pr-2\.5{padding-right:calc(var(--spacing)*2.5)}.sm\:pl-2\.5{padding-left:calc(var(--spacing)*2.5)}.sm\:text-left{text-align:left}.data-\[vaul-drawer-direction\=left\]\:sm\:max-w-sm[data-vaul-drawer-direction=left],.data-\[vaul-drawer-direction\=right\]\:sm\:max-w-sm[data-vaul-drawer-direction=right]{max-width:var(--container-sm)}}@media (min-width:48rem){.md\:absolute{position:absolute}.md\:block{display:block}.md\:flex{display:flex}.md\:w-\[var\(--radix-navigation-menu-viewport-width\)\]{width:var(--radix-navigation-menu-viewport-width)}.md\:w-auto{width:auto}.md\:flex-row{flex-direction:row}.md\:gap-1\.5{gap:calc(var(--spacing)*1.5)}.md\:p-12{padding:calc(var(--spacing)*12)}.md\:text-left{text-align:left}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.md\:opacity-0{opacity:0}.md\:peer-data-\[variant\=inset\]\:m-2:is(:where(.peer)[data-variant=inset]~*){margin:calc(var(--spacing)*2)}.md\:peer-data-\[variant\=inset\]\:ml-0:is(:where(.peer)[data-variant=inset]~*){margin-left:calc(var(--spacing)*0)}.md\:peer-data-\[variant\=inset\]\:rounded-xl:is(:where(.peer)[data-variant=inset]~*){border-radius:calc(var(--radius) + 4px)}.md\:peer-data-\[variant\=inset\]\:shadow-sm:is(:where(.peer)[data-variant=inset]~*){--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)}.md\:peer-data-\[variant\=inset\]\:peer-data-\[state\=collapsed\]\:ml-2:is(:where(.peer)[data-variant=inset]~*):is(:where(.peer)[data-state=collapsed]~*){margin-left:calc(var(--spacing)*2)}.md\:after\:hidden:after{content:var(--tw-content);display:none}}@media (min-width:64rem){.lg\:col-span-1{grid-column:span 1/span 1}.lg\:col-span-7{grid-column:span 7/span 7}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:h-20{height:calc(var(--spacing)*20)}.lg\:w-32{width:calc(var(--spacing)*32)}.lg\:max-w-sm{max-width:var(--container-sm)}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:flex-col{flex-direction:column}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:items-end{align-items:flex-end}.lg\:items-start{align-items:flex-start}.lg\:gap-2{gap:calc(var(--spacing)*2)}.lg\:p-8{padding:calc(var(--spacing)*8)}.lg\:p-10{padding:calc(var(--spacing)*10)}.lg\:p-12{padding:calc(var(--spacing)*12)}.lg\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.lg\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.lg\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.lg\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.lg\:text-7xl{font-size:var(--text-7xl);line-height:var(--tw-leading,var(--text-7xl--line-height))}.lg\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}}@container field-group (min-width:28rem){.\@md\/field-group\:flex-row{flex-direction:row}.\@md\/field-group\:items-center{align-items:center}.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:items-start:has(>[data-slot=field-content]){align-items:flex-start}}.dark\:border-input:is(.dark *){border-color:var(--input)}.dark\:bg-destructive\/60:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-destructive\/60:is(.dark *){background-color:color-mix(in oklab,var(--destructive)60%,transparent)}}.dark\:bg-input\/30:is(.dark *){background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-input\/30:is(.dark *){background-color:color-mix(in oklab,var(--input)30%,transparent)}}.dark\:bg-transparent:is(.dark *){background-color:#0000}.dark\:text-muted-foreground:is(.dark *){color:var(--muted-foreground)}@media (hover:hover){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:color-mix(in oklab,var(--accent)50%,transparent)}}.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:color-mix(in oklab,var(--input)50%,transparent)}}.dark\:hover\:text-accent-foreground:is(.dark *):hover{color:var(--accent-foreground)}}.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab,var(--destructive)40%,transparent)}}.dark\:has-data-\[state\=checked\]\:bg-primary\/10:is(.dark *):has([data-state=checked]){background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.dark\:has-data-\[state\=checked\]\:bg-primary\/10:is(.dark *):has([data-state=checked]){background-color:color-mix(in oklab,var(--primary)10%,transparent)}}.dark\:has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/40:is(.dark *):has([data-slot][aria-invalid=true]){--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:has-\[\[data-slot\]\[aria-invalid\=true\]\]\:ring-destructive\/40:is(.dark *):has([data-slot][aria-invalid=true]){--tw-ring-color:color-mix(in oklab,var(--destructive)40%,transparent)}}.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive)40%,transparent)}}.dark\:data-\[active\=true\]\:aria-invalid\:ring-destructive\/40:is(.dark *)[data-active=true][aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[active\=true\]\:aria-invalid\:ring-destructive\/40:is(.dark *)[data-active=true][aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive)40%,transparent)}}.dark\:data-\[state\=active\]\:border-input:is(.dark *)[data-state=active]{border-color:var(--input)}.dark\:data-\[state\=active\]\:bg-input\/30:is(.dark *)[data-state=active]{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[state\=active\]\:bg-input\/30:is(.dark *)[data-state=active]{background-color:color-mix(in oklab,var(--input)30%,transparent)}}.dark\:data-\[state\=active\]\:text-foreground:is(.dark *)[data-state=active]{color:var(--foreground)}.dark\:data-\[state\=checked\]\:bg-primary:is(.dark *)[data-state=checked]{background-color:var(--primary)}.dark\:data-\[state\=checked\]\:bg-primary-foreground:is(.dark *)[data-state=checked]{background-color:var(--primary-foreground)}.dark\:data-\[state\=unchecked\]\:bg-foreground:is(.dark *)[data-state=unchecked]{background-color:var(--foreground)}.dark\:data-\[state\=unchecked\]\:bg-input\/80:is(.dark *)[data-state=unchecked]{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[state\=unchecked\]\:bg-input\/80:is(.dark *)[data-state=unchecked]{background-color:color-mix(in oklab,var(--input)80%,transparent)}}.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(.dark *)[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(.dark *)[data-variant=destructive]:focus{background-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text{fill:var(--muted-foreground)}.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke="#ccc"]{stroke:var(--border)}@supports (color:color-mix(in lab,red,red)){.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke="#ccc"]{stroke:color-mix(in oklab,var(--border)50%,transparent)}}.\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor{stroke:var(--border)}.\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke="#fff"]{stroke:#0000}.\[\&_\.recharts-layer\]\:outline-hidden .recharts-layer{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.\[\&_\.recharts-layer\]\:outline-hidden .recharts-layer{outline-offset:2px;outline:2px solid #0000}}.\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-polar-grid [stroke="#ccc"]{stroke:var(--border)}.\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted .recharts-radial-bar-background-sector,.\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted .recharts-rectangle.recharts-tooltip-cursor{fill:var(--muted)}.\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-reference-line [stroke="#ccc"]{stroke:var(--border)}.\[\&_\.recharts-sector\]\:outline-hidden .recharts-sector{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.\[\&_\.recharts-sector\]\:outline-hidden .recharts-sector{outline-offset:2px;outline:2px solid #0000}}.\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke="#fff"]{stroke:#0000}.\[\&_\.recharts-surface\]\:outline-hidden .recharts-surface{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.\[\&_\.recharts-surface\]\:outline-hidden .recharts-surface{outline-offset:2px;outline:2px solid #0000}}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-inline:calc(var(--spacing)*2)}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-block:calc(var(--spacing)*1.5)}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:var(--muted-foreground)}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-inline:calc(var(--spacing)*2)}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:calc(var(--spacing)*0)}.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg{height:calc(var(--spacing)*5)}.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg{width:calc(var(--spacing)*5)}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:calc(var(--spacing)*12)}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-inline:calc(var(--spacing)*2)}.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-block:calc(var(--spacing)*3)}.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{height:calc(var(--spacing)*5)}.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{width:calc(var(--spacing)*5)}.\[\&_img\]\:size-full img{width:100%;height:100%}.\[\&_img\]\:object-cover img{object-fit:cover}.\[\&_p\]\:leading-relaxed p{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.\[\&_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\*\=\'size-\'\]\)\]\:size-6 svg:not([class*=size-]){width:calc(var(--spacing)*6);height:calc(var(--spacing)*6)}.\[\&_svg\:not\(\[class\*\=\'text-\'\]\)\]\:text-muted-foreground svg:not([class*=text-]){color:var(--muted-foreground)}.\[\&_tr\]\:border-b tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-style:var(--tw-border-style);border-width:0}.\[\&\+\[data-slot\=item-content\]\]\:flex-none+[data-slot=item-content]{flex:none}.\[\&\:first-child\[data-selected\=true\]_button\]\:rounded-l-md:first-child[data-selected=true] button{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:calc(var(--spacing)*0)}.\[\.border-b\]\:pb-3.border-b{padding-bottom:calc(var(--spacing)*3)}.\[\.border-b\]\:pb-6.border-b{padding-bottom:calc(var(--spacing)*6)}.\[\.border-t\]\:pt-3.border-t{padding-top:calc(var(--spacing)*3)}.\[\.border-t\]\:pt-6.border-t{padding-top:calc(var(--spacing)*6)}:is(.rtl\:\*\*\:\[\.rdp-button\\_next\>svg\]\:rotate-180:where(:dir(rtl),[dir=rtl],[dir=rtl] *) *):is(.rdp-button_next>svg),:is(.rtl\:\*\*\:\[\.rdp-button\\_previous\>svg\]\:rotate-180:where(:dir(rtl),[dir=rtl],[dir=rtl] *) *):is(.rdp-button_previous>svg){rotate:180deg}.\[a\]\:transition-colors:is(a){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))}@media (hover:hover){.\[a\]\:hover\:bg-accent\/50:is(a):hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.\[a\]\:hover\:bg-accent\/50:is(a):hover{background-color:color-mix(in oklab,var(--accent)50%,transparent)}}}: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)}:is(.data-\[variant\=destructive\]\:\*\:\[svg\]\:\!text-destructive[data-variant=destructive]>*):is(svg){color:var(--destructive)!important}.\[\&\:last-child\[data-selected\=true\]_button\]\:rounded-r-md:last-child[data-selected=true] button{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.\[\&\>\*\]\:w-full>*{width:100%}.\[\&\>\*\]\:focus-visible\:relative>:focus-visible{position:relative}.\[\&\>\*\]\:focus-visible\:z-10>:focus-visible{z-index:10}.\[\&\>\*\]\:data-\[slot\=field\]\:p-4>[data-slot=field]{padding:calc(var(--spacing)*4)}@container field-group (min-width:28rem){.\@md\/field-group\:\[\&\>\*\]\:w-auto>*{width:auto}}.\[\&\>\*\:not\(\:first-child\)\]\:rounded-t-none>:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.\[\&\>\*\:not\(\:first-child\)\]\:rounded-l-none>:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.\[\&\>\*\:not\(\:first-child\)\]\:border-t-0>:not(:first-child){border-top-style:var(--tw-border-style);border-top-width:0}.\[\&\>\*\:not\(\:first-child\)\]\:border-l-0>:not(:first-child){border-left-style:var(--tw-border-style);border-left-width:0}.\[\&\>\*\:not\(\:last-child\)\]\:rounded-r-none>:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.\[\&\>\*\:not\(\:last-child\)\]\:rounded-b-none>:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0}.\[\&\>\.sr-only\]\:w-auto>.sr-only{width:auto}.\[\&\>\[data-slot\=field-group\]\]\:gap-4>[data-slot=field-group]{gap:calc(var(--spacing)*4)}.\[\&\>\[data-slot\=field-label\]\]\:flex-auto>[data-slot=field-label]{flex:auto}@container field-group (min-width:28rem){.\@md\/field-group\:\[\&\>\[data-slot\=field-label\]\]\:flex-auto>[data-slot=field-label]{flex:auto}}.has-\[select\[aria-hidden\=true\]\:last-child\]\:\[\&\>\[data-slot\=select-trigger\]\:last-of-type\]\:rounded-r-md:has(:is(select[aria-hidden=true]:last-child))>[data-slot=select-trigger]:last-of-type{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.\[\&\>\[data-slot\=select-trigger\]\:not\(\[class\*\=\'w-\'\]\)\]\:w-fit>[data-slot=select-trigger]:not([class*=w-]){width:fit-content}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y:2px;translate:var(--tw-translate-x)var(--tw-translate-y)}.has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content]) [role=radio]{margin-top:1px}@container field-group (min-width:28rem){.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content]) [role=radio]{margin-top:1px}}.\[\&\>a\]\:underline>a{text-decoration-line:underline}.\[\&\>a\]\:underline-offset-4>a{text-underline-offset:4px}.\[\&\>a\:hover\]\:text-primary>a:hover{color:var(--primary)}.\[\&\>button\]\:hidden>button{display:none}.\[\&\>input\]\:flex-1>input{flex:1}.has-\[\>\[data-align\=block-end\]\]\:\[\&\>input\]\:pt-3:has(>[data-align=block-end])>input{padding-top:calc(var(--spacing)*3)}.has-\[\>\[data-align\=block-start\]\]\:\[\&\>input\]\:pb-3:has(>[data-align=block-start])>input{padding-bottom:calc(var(--spacing)*3)}.has-\[\>\[data-align\=inline-end\]\]\:\[\&\>input\]\:pr-2:has(>[data-align=inline-end])>input{padding-right:calc(var(--spacing)*2)}.has-\[\>\[data-align\=inline-start\]\]\:\[\&\>input\]\:pl-2:has(>[data-align=inline-start])>input{padding-left:calc(var(--spacing)*2)}.\[\&\>kbd\]\:rounded-\[calc\(var\(--radius\)-5px\)\]>kbd{border-radius:calc(var(--radius) - 5px)}.\[\&\>span\]\:text-xs>span{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&\>span\]\:opacity-70>span{opacity:.7}.\[\&\>span\:last-child\]\:truncate>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3>svg{width:calc(var(--spacing)*3);height:calc(var(--spacing)*3)}.\[\&\>svg\]\:size-3\.5>svg{width:calc(var(--spacing)*3.5);height:calc(var(--spacing)*3.5)}.\[\&\>svg\]\:size-4>svg{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.\[\&\>svg\]\:h-2\.5>svg{height:calc(var(--spacing)*2.5)}.\[\&\>svg\]\:h-3>svg{height:calc(var(--spacing)*3)}.\[\&\>svg\]\:w-2\.5>svg{width:calc(var(--spacing)*2.5)}.\[\&\>svg\]\:w-3>svg{width:calc(var(--spacing)*3)}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:translate-y-0\.5>svg{--tw-translate-y:calc(var(--spacing)*.5);translate:var(--tw-translate-x)var(--tw-translate-y)}.\[\&\>svg\]\:text-current>svg{color:currentColor}.\[\&\>svg\]\:text-muted-foreground>svg{color:var(--muted-foreground)}.\[\&\>svg\]\:text-sidebar-accent-foreground>svg{color:var(--sidebar-accent-foreground)}.\[\&\>svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5>svg:not([class*=size-]){width:calc(var(--spacing)*3.5);height:calc(var(--spacing)*3.5)}.\[\&\>svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4>svg:not([class*=size-]){width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.\[\&\>tr\]\:last\:border-b-0>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.\[\&\[data-panel-group-direction\=vertical\]\>div\]\:rotate-90[data-panel-group-direction=vertical]>div{rotate:90deg}.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{rotate:180deg}[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2{right:calc(var(--spacing)*-2)}[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize{cursor:e-resize}[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2{left:calc(var(--spacing)*-2)}[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-slot=card-content] .\[\[data-slot\=card-content\]_\&\]\:bg-transparent,[data-slot=popover-content] .\[\[data-slot\=popover-content\]_\&\]\:bg-transparent{background-color:#0000}[data-slot=tooltip-content] .\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/20{background-color:var(--background)}@supports (color:color-mix(in lab,red,red)){[data-slot=tooltip-content] .\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/20{background-color:color-mix(in oklab,var(--background)20%,transparent)}}[data-slot=tooltip-content] .\[\[data-slot\=tooltip-content\]_\&\]\:text-background{color:var(--background)}[data-slot=tooltip-content] .dark\:\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/10:is(.dark *){background-color:var(--background)}@supports (color:color-mix(in lab,red,red)){[data-slot=tooltip-content] .dark\:\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/10:is(.dark *){background-color:color-mix(in oklab,var(--background)10%,transparent)}}[data-variant=legend]+.\[\[data-variant\=legend\]\+\&\]\:-mt-1\.5{margin-top:calc(var(--spacing)*-1.5)}@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)}}}@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{--brand-red:oklch(48% .22 25);--brand-dark:oklch(14% .025 240);--brand-navy:oklch(22% .04 240);--primary:oklch(48% .22 25);--primary-foreground:oklch(100% 0 0);--sidebar-primary:oklch(48% .22 25);--sidebar-primary-foreground:oklch(100% 0 0);--chart-1:oklch(48% .22 25);--chart-2:oklch(35% .18 25);--chart-3:oklch(22% .04 240);--chart-4:oklch(14% .025 240);--chart-5:oklch(55% .03 240);--radius:.25rem;--background:oklch(100% 0 0);--foreground:oklch(13% .02 240);--card:oklch(98% .002 240);--card-foreground:oklch(13% .02 240);--popover:oklch(100% 0 0);--popover-foreground:oklch(13% .02 240);--secondary:oklch(96% .004 240);--secondary-foreground:oklch(22% .04 240);--muted:oklch(96% .004 240);--muted-foreground:oklch(52% .02 240);--accent:oklch(96% .004 240);--accent-foreground:oklch(13% .02 240);--destructive:oklch(48% .22 25);--destructive-foreground:oklch(100% 0 0);--border:oklch(90% .005 240);--input:oklch(90% .005 240);--ring:oklch(48% .22 25);--sidebar:oklch(98% .002 240);--sidebar-foreground:oklch(13% .02 240);--sidebar-accent:oklch(96% .004 240);--sidebar-accent-foreground:oklch(13% .02 240);--sidebar-border:oklch(90% .005 240);--sidebar-ring:oklch(48% .22 25)}.dark{--primary:oklch(55% .22 25);--primary-foreground:oklch(100% 0 0);--background:oklch(14% .025 240);--foreground:oklch(93% .005 240);--card:oklch(18% .03 240);--card-foreground:oklch(93% .005 240);--popover:oklch(18% .03 240);--popover-foreground:oklch(93% .005 240);--secondary:oklch(22% .035 240);--secondary-foreground:oklch(75% .01 240);--muted:oklch(22% .035 240);--muted-foreground:oklch(60% .02 240);--accent:oklch(22% .035 240);--accent-foreground:oklch(93% .005 240);--destructive:oklch(55% .22 25);--destructive-foreground:oklch(100% 0 0);--border:oklch(100% 0 0/.12);--input:oklch(100% 0 0/.15);--ring:oklch(55% .22 25);--sidebar:oklch(18% .03 240);--sidebar-foreground:oklch(93% .005 240);--sidebar-accent:oklch(22% .035 240);--sidebar-accent-foreground:oklch(93% .005 240);--sidebar-border:oklch(100% 0 0/.12);--sidebar-ring:oklch(55% .22 25)}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{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-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}@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))}}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto)))))}}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto)))))}to{height:0}}@keyframes caret-blink{0%,70%,to{opacity:1}20%,50%{opacity:0}}


/* === 静态站点补充样式 === */

/* 响应式导航 */
@media (max-width: 1023px) {
  .desktop-nav { display: none !important; }
  .desktop-cta { display: none !important; }
  .mobile-menu-btn { display: flex !important; }
}

@media (min-width: 1024px) {
  .desktop-nav { display: flex !important; }
  .desktop-cta { display: flex !important; }
  .mobile-menu-btn { display: none !important; }
}

/* 动画 */
@keyframes bounce {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}
.animate-bounce {
  animation: bounce 2s ease-in-out infinite;
}

@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(30px); }
  to { opacity: 1; transform: translateY(0); }
}

.fade-in-on-load {
  animation: fadeInUp 0.8s ease-out forwards;
}

/* group hover */
.group-hover\:scale-105 { transition: transform 300ms ease; }
.group:hover .group-hover\:scale-105 { transform: scale(1.05); }

/* 新闻卡片悬停 */
.news-card-hover { transition: box-shadow 200ms ease, transform 200ms ease; }
.news-card-hover:hover {
  box-shadow: 0 8px 32px rgba(0,0,0,0.08);
  transform: translateX(4px);
}
.news-card-hover:hover .news-arrow { opacity: 1; }
.news-arrow { align-self: center; opacity: 0; transition: opacity 150ms ease; }
.xf-home-news-list {
  display:flex;
  flex-direction:column;
  gap:16px;
}
.xf-home-news-list > a {
  margin-top:0 !important;
  margin-bottom:0 !important;
}
.xf-news-list { display:flex; flex-direction:column; }
.xf-home-news-list,
.xf-news-list { gap:16px; }
.xf-home-news-list > a,
.xf-news-list > a { margin-block:0 !important; }

.text-xs.xf-news-tag,
.text-xs.xf-news-meta {
  font-size: 14px !important;
  line-height: 1.4 !important;
}

.text-xs.xf-tech-status {
  font-size: 14px !important;
  line-height: 1.35 !important;
}

/* 移动端菜单 */
.mobile-menu {
  overflow: hidden;
  transition: max-height 300ms ease;
}

/* Flex 修复 */
.flex { min-height: 0; min-width: 0; }

/* === Core technology and careers surfaces === */
:root {
  --xf-font-heading: 'Noto Serif SC', 'Noto Sans SC', sans-serif;
  --xf-title-page-size: 48px;
  --xf-title-section-size: 48px;
  --xf-title-weight: 700;
  --xf-title-line-height: 1.2;
  --xf-title-letter-spacing: 0;
}
.xf-core-shell { background: #fff; color: #151821; }
.xf-core-hero { padding: 168px 0 88px; background: url('../assets/banner.jpg') center / cover no-repeat; color: #fff; }
.xf-core-hero h1 { margin:0 0 20px; font-family:var(--xf-font-heading); font-size:var(--xf-title-page-size) !important; font-weight:var(--xf-title-weight); line-height:var(--xf-title-line-height); letter-spacing:var(--xf-title-letter-spacing); }
.xf-core-hero p { max-width: 720px; margin: 0; color: rgba(255,255,255,.66); font-size: 18px; line-height: 1.75; }
.xf-core-section { padding: 112px 0 128px; }
.xf-core-intro { max-width: 900px; margin-bottom: 70px; }
.xf-core-intro h2 { margin:0 0 22px; }
.xf-core-intro p { margin: 0; color: #626773; font-size: 18px; line-height: 1.8; }
.xf-tech-accordion { border-top: 1px solid #dfe2e8; }
.xf-tech-item { border-bottom: 1px solid #dfe2e8; }
.xf-tech-trigger { width: 100%; min-height: 138px; padding: 28px 4px; border: 0; background: transparent; display: grid; grid-template-columns: 84px minmax(220px, .7fr) 1fr 48px; align-items: center; gap: 32px; color: inherit; text-align: left; cursor: pointer; }
.xf-tech-index { color: #e63223; font: 500 14px/1.2 sans-serif; }
.xf-tech-name strong { display: block; font-size: 34px; line-height: 1.15; }
.xf-tech-name span { display: block; margin-top: 8px; color: #858a94; font-size: 13px; letter-spacing: .06em; }
.xf-tech-summary { max-width: 600px; color: #626773; font-size: 16px; line-height: 1.7; }
.xf-tech-plus { width: 42px; height: 42px; border: 1px solid #d7dae0; border-radius: 50%; display: grid; place-items: center; transition: background .25s ease, border-color .25s ease, transform .35s ease; }
.xf-tech-plus::before { content: '+'; font-size: 22px; font-weight: 300; }
.xf-tech-trigger:hover .xf-tech-plus, .xf-tech-trigger[aria-expanded="true"] .xf-tech-plus { background: #e63223; border-color: #e63223; color: #fff; }
.xf-tech-trigger[aria-expanded="true"] .xf-tech-plus { transform: rotate(45deg); }
.xf-tech-panel { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .4s cubic-bezier(.22,1,.36,1); }
.xf-tech-panel > div { overflow: hidden; }
.xf-tech-item.is-open .xf-tech-panel { grid-template-rows: 1fr; }
.xf-tech-panel-inner { padding: 0 84px 42px 116px; display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.xf-tech-points { display: flex; flex-wrap: wrap; gap: 10px; }
.xf-tech-points span { padding: 8px 12px; background: #f4f5f7; color: #555b66; font-size: 14px; }
.xf-text-link { display: inline-flex; align-items: center; gap: 12px; color: #e63223; font-size: 15px; white-space: nowrap; }
.xf-text-link::after { content: '\2192'; transition: transform .2s ease; }
.xf-text-link:hover::after { transform: translateX(4px); }
.xf-detail-nav { margin-bottom: 48px; color: #737986; font-size: 14px; }
.xf-detail-nav a:hover { color: #e63223; }
.xf-detail-lead { max-width: 1100px; font-size: 20px; line-height: 1.9; color: #4f5560; }
.xf-process-block { padding: 84px 0; border-top: 1px solid #e2e4e9; }
.xf-process-grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(500px, 1.1fr); gap: clamp(56px, 7vw, 120px); align-items: center; }
.xf-process-grid:nth-child(even) .xf-process-media { order: -1; }
.xf-process-copy h2 { margin: 0 0 30px; font-size: 44px !important; }
.xf-process-copy h3 { margin: 28px 0 9px; color: #e63223; font-size: 15px; letter-spacing: .08em; }
.xf-process-copy p, .xf-process-copy li { color: #5d626d; font-size: 16px; line-height: 1.8; }
.xf-process-copy ul { margin: 0; padding-left: 1.2em; }
.xf-process-media { padding: 24px; background: #f3f4f6; }
.xf-process-media img { display: block; width: 100%; height: auto; object-fit: contain; }
.xf-analysis-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; background: #dfe2e8; border: 1px solid #dfe2e8; }
.xf-analysis-cell { min-height: 240px; padding: 34px; background: #fff; }
.xf-analysis-cell span { color: #e63223; font-size: 13px; }
.xf-analysis-cell h3 { margin: 18px 0 16px; font-size: 24px; }
.xf-analysis-cell li { color: #626773; font-size: 15px; line-height: 1.8; }
.xf-career-list { border-top: 1px solid #dfe2e8; }
.xf-career-row { width: 100%; padding: 34px 4px; border: 0; border-bottom: 1px solid #dfe2e8; background: transparent; display: grid; grid-template-columns: 1fr 150px 150px 46px; align-items: center; gap: 30px; text-align: left; cursor: pointer; }
.xf-career-row strong { font-size: 25px; }
.xf-career-row span { color: #707682; font-size: 15px; }
.xf-career-row i { width: 42px; height: 42px; border: 1px solid #d7dae0; border-radius: 50%; display: grid; place-items: center; color: #e63223; font-style: normal; transition: .2s ease; }
.xf-career-row:hover i { background: #e63223; border-color: #e63223; color: #fff; }
.xf-job-dialog { width: min(760px, calc(100vw - 40px)); max-height: min(780px, calc(100vh - 60px)); padding: 0; border: 0; background: #fff; color: #171a22; box-shadow: 0 28px 90px rgba(0,0,0,.25); }
.xf-job-dialog::backdrop { background: rgba(15,20,35,.72); backdrop-filter: blur(8px); }
.xf-job-modal-head { position: sticky; top: 0; z-index: 2; padding: 30px 36px; background: #fff; border-bottom: 1px solid #e2e4e9; display: flex; justify-content: space-between; align-items: center; }
.xf-job-modal-head h2 { margin: 0; font-size: 30px !important; }
.xf-job-close { width: 42px; height: 42px; border: 1px solid #d7dae0; border-radius: 50%; background: #fff; font-size: 24px; cursor: pointer; }
.xf-job-body { padding: 12px 36px 40px; overflow: auto; }
.xf-job-body h3 { margin: 30px 0 14px; font-size: 18px; }
.xf-job-body ol { padding-left: 1.4em; }
.xf-job-body li { margin-bottom: 9px; color: #555b66; font-size: 15px; line-height: 1.7; }
.xf-job-apply { position: sticky; bottom: 0; padding: 20px 36px; background: rgba(255,255,255,.96); border-top: 1px solid #e2e4e9; }
body.xf-modal-open { overflow: hidden; }

/* Shared shell: derived from the About page and reused by all content pages. */
.xf-shared-header { height: 80px; }
.xf-shared-logo img { display: block; height: 42px; width: auto; }
.xf-shared-nav { display: none; align-items: center; gap: 38px; }
.xf-shared-nav > a, .xf-nav-dropdown-trigger { min-height: 44px; padding: 0; border: 0; background: transparent; display: inline-flex; align-items: center; gap: 5px; color: #464b55; font-size: 15px; font-weight: 400; cursor: pointer; position: relative; }
.xf-shared-nav > a::after, .xf-nav-dropdown-trigger > span::after { content: ''; position: absolute; left: 50%; right: 50%; bottom: 3px; height: 1px; background: #e63223; transition: left .22s ease, right .22s ease; }
.xf-shared-nav > a:hover::after, .xf-shared-nav > a.is-current::after, .xf-nav-dropdown-trigger:hover > span::after, .xf-nav-dropdown-trigger.is-current > span::after { left: 0; right: 0; }
.xf-shared-nav > a.is-current, .xf-nav-dropdown-trigger.is-current { color: #e63223; }
.xf-nav-dropdown { position: relative; }
.xf-nav-dropdown-trigger > span { position:relative; min-height:44px; display:inline-flex; align-items:center; }
.xf-nav-dropdown-trigger svg { transition: transform .22s ease; }
.xf-nav-dropdown.is-open .xf-nav-dropdown-trigger svg { transform: rotate(180deg); }
.xf-nav-dropdown-menu { position:absolute; top:calc(100% + 4px); left:50%; width:264px; padding:7px; border:1px solid rgba(15,20,35,.08); border-radius:12px; background:rgba(255,255,255,.98); box-shadow:0 20px 54px rgba(15,20,35,.13); backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px); opacity:0; visibility:hidden; pointer-events:none; transform:translate(-50%,7px) scale(.99); transform-origin:50% 0; transition:opacity .2s cubic-bezier(.16,1,.3,1),transform .2s cubic-bezier(.16,1,.3,1); }
.xf-nav-dropdown-menu::before { content:''; position:absolute; left:0; right:0; bottom:100%; height:6px; }
.xf-nav-dropdown.is-open .xf-nav-dropdown-menu,
.xf-nav-dropdown:hover .xf-nav-dropdown-menu,
.xf-nav-dropdown:focus-within .xf-nav-dropdown-menu { opacity:1; visibility:visible; pointer-events:auto; transform:translate(-50%,0) scale(1); }
.xf-nav-dropdown-menu a { position:relative; min-height:60px; padding:9px 13px; border-radius:8px; display:flex; align-items:center; color:#242932; transition:background .18s ease,color .18s ease; }
.xf-nav-dropdown-menu a::after { display:none; }
.xf-nav-dropdown-menu a:hover,.xf-nav-dropdown-menu a:focus-visible { background:#f2f3f5; color:#e63223; outline:0; }
.xf-nav-dropdown-menu span { display:block; color:inherit; }
.xf-nav-dropdown-menu strong { display:block; white-space:nowrap; font-size:16px; font-weight:500; line-height:1.35; }
.xf-nav-dropdown-menu small { margin-top:3px; display:block; color:#7a818c; font-size:12px; font-weight:400; line-height:1.4; }
.xf-shared-contact { min-height: 42px; padding: 0 24px !important; padding-bottom: 2px !important; display: none; align-items: center; font-size: 14px; }
.xf-mobile-menu { max-height: 0; overflow: hidden; background: rgba(255,255,255,.98); transition: max-height .3s ease; }.xf-mobile-menu.is-open { max-height: 560px; border-top: 1px solid #eceef1; }
.xf-mobile-menu nav { padding-top: 12px; padding-bottom: 18px; display: flex; flex-direction: column; }.xf-mobile-menu a, .xf-mobile-menu summary { min-height: 46px; display: flex; align-items: center; color: #353a43; cursor: pointer; }.xf-mobile-menu details div { padding-left: 20px; border-left: 1px solid #e63223; }
.xf-page-banner { padding: 158px 0 78px; background: url('../assets/banner.jpg') center / cover no-repeat; color: #fff; }
.xf-page-banner-label { margin-bottom: 18px; display: flex; align-items: center; gap: 12px; }.xf-page-banner-label span { width: 30px; height: 1px; background: #e63223; }.xf-page-banner-label b { color: rgba(255,255,255,.5); font-size: 12px; font-weight: 400; letter-spacing: .12em; }
.xf-page-title { margin:0 0 20px; color:#fff; font-family:var(--xf-font-heading) !important; font-size:var(--xf-title-page-size) !important; font-weight:var(--xf-title-weight) !important; line-height:var(--xf-title-line-height) !important; letter-spacing:var(--xf-title-letter-spacing) !important; }
.xf-page-banner p { max-width:760px; margin:0; color:rgba(255,255,255,.7); font-size:18px; font-weight:400; line-height:1.7; }
.xf-section-title,
.xf-about-intro-copy h2,
.xf-package-design > .container > .xf-process-heading h2,
.xf-simulation-section .xf-core-intro h2,
body[data-page="careers"] .xf-core-intro h2 {
  color:#151922;
  font-family:var(--xf-font-heading) !important;
  font-size:var(--xf-title-section-size) !important;
  font-weight:var(--xf-title-weight) !important;
  line-height:var(--xf-title-line-height) !important;
  letter-spacing:var(--xf-title-letter-spacing) !important;
}
.xf-shared-footer { background: #20318a; color: rgba(255,255,255,.82); }.xf-shared-footer-grid { display: grid; grid-template-columns: minmax(280px,1.3fr) minmax(220px,.7fr) minmax(280px,.8fr); gap: clamp(50px,7vw,120px); }.xf-footer-logo { height: 46px; width: auto; margin-bottom: 26px; }.xf-shared-footer p { max-width: 370px; color: rgba(255,255,255,.62); font-size: 14px; line-height: 1.8; }.xf-shared-footer h2 { margin: 0 0 22px; color: #fff; font-size: 15px !important; font-weight: 500; }.xf-shared-footer li { margin: 0 0 12px; color: rgba(255,255,255,.64); font-size: 14px; }.xf-shared-footer a { transition: color .2s ease; }.xf-shared-footer a:hover { color: #e63223; }.xf-footer-legal { border-top: 1px solid rgba(255,255,255,.05); }.xf-footer-legal .container { padding-top: 22px; padding-bottom: 22px; display: flex; justify-content: space-between; color: rgba(255,255,255,.4); font-size: 12px; }
.xf-contact-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.xf-contact-cards > div { min-width: 0; }
.xf-contact-cards .font-medium { overflow-wrap: anywhere; }
@media (max-width: 767px) { .xf-contact-cards { grid-template-columns: 1fr; } }
.xf-components-ready .xf-core-hero + .xf-core-section { padding-top: 96px; }
.xf-shared-header a:focus-visible, .xf-shared-header button:focus-visible, .xf-shared-footer a:focus-visible { outline: 2px solid #e63223; outline-offset: 4px; }
.navbar-transparent .xf-shared-nav > a, .navbar-transparent .xf-nav-dropdown-trigger { color: rgba(255,255,255,.9); }.navbar-transparent .mobile-menu-btn { color:#fff; }
@media (min-width:1024px) { .xf-shared-nav { display:flex; }.xf-shared-contact { display:inline-flex; }.xf-shared-header .mobile-menu-btn { display:none !important; } }
@media (max-width:900px) { .xf-shared-footer-grid { grid-template-columns:1fr; }.xf-footer-legal .container { align-items:flex-start; flex-direction:column; }.xf-page-banner { padding:130px 0 64px; } }
@media (prefers-reduced-motion:reduce) { .xf-nav-dropdown-menu,.xf-nav-dropdown-trigger svg,.xf-shared-nav a::after,.xf-mobile-menu { transition:none !important; } }

/* 2026 core technology and careers refinement */
body[data-page="home"] .xf-shared-header.navbar-transparent { background: transparent !important; border-color: transparent !important; box-shadow: none !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; }
body[data-page="home"] .xf-shared-header.navbar-transparent .xf-shared-nav > a,
body[data-page="home"] .xf-shared-header.navbar-transparent .xf-nav-dropdown-trigger { color: #fff; text-shadow: 0 1px 12px rgba(0,0,0,.25); }
.xf-process-story { padding: 92px 0 104px; background: #f7f8fa; }
.xf-process-story + .xf-process-story { border-top: 1px solid #e1e4e8; }
.xf-process-heading { margin-bottom: 34px; display: grid; grid-template-columns: minmax(260px,.7fr) minmax(460px,1.3fr); gap: 56px; align-items: end; }
.xf-process-heading h2 { margin:0; color:#151922; font-family:'Noto Sans SC',sans-serif; font-size:44px !important; font-weight:600; letter-spacing:0; }
.xf-process-heading p { max-width: 760px; margin: 0; color: #626873; font-size: 16px; line-height: 1.8; }
.xf-code-flow { --flow-cols: 8; --flow-card-width: min(164px, calc((100% - 196px) / 8)); padding: 32px; background: #eef0f3; border: 1px solid #e0e3e8; border-radius:14px; overflow: hidden; }
.xf-code-flow-grid { display: grid; grid-template-columns: repeat(var(--flow-cols), var(--flow-card-width)); justify-content:center; row-gap:42px; column-gap:var(--flow-column-gap,28px); }
.xf-flow-step { min-width: 0; position: relative; opacity: 1; transform: none; animation: none; }
.xf-process-story-v2 .xf-flow-step {
  min-height:clamp(107px, 7.25vw, 132px);
  padding:6px 8px 4px;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  background:#fff;
  border:1px solid #e1e4e8;
  border-radius:8px;
  box-sizing:border-box;
}
.xf-flow-step::after { content: ''; position: absolute; z-index: 2; top: calc(50% + 31px); left: calc(100% + 2px); width: 16px; height: 1px; background: #99a2ad; }
.xf-flow-step::before { content: ''; position: absolute; z-index: 3; top: calc(50% + 28px); left: calc(100% + 14px); border: 3px solid transparent; border-left-color: #99a2ad; }
.xf-flow-step:nth-child(8n)::after,.xf-flow-step:nth-child(8n)::before,.xf-flow-step:last-child::after,.xf-flow-step:last-child::before { display:none; }
.xf-flow-image { aspect-ratio: 1.42/1; padding: 12px; background: #fff; border: 1px solid rgba(15,20,35,.06); border-bottom:0; border-radius:10px 10px 0 0; overflow: hidden; transition: transform .45s cubic-bezier(.16,1,.3,1), border-color .25s ease; }
.xf-flow-image img { width:100%; height:100%; display:block; object-fit:contain; }
.xf-flow-step:hover .xf-flow-image { transform: translateY(-4px); border-color: rgba(230,50,35,.45); }
.xf-flow-name { min-height: 46px; padding: 0 12px; border-radius:0 0 10px 10px; display: grid; place-items: center; background: #26354b; color: #fff; text-align: center; font-size: 14px; font-weight: 500; line-height: 1.3; }
.xf-flow-step:first-child .xf-flow-name { background: #0f315e; }.xf-flow-step:last-child .xf-flow-name { background: #e63223; }
@keyframes xfFlowIn { to { opacity:1; transform:translateY(0); } }

body[data-page="careers"] .xf-core-section { padding-top: 92px; background: #f6f7f9; }
body[data-page="careers"] .xf-core-intro { display:grid; grid-template-columns: minmax(240px,.55fr) minmax(440px,1fr); gap:80px; align-items:end; max-width:none; margin-bottom:54px; }
body[data-page="careers"] .xf-core-intro h2 { margin:0; }
body[data-page="careers"] .xf-core-intro p { max-width:680px; font-size:16px; }
.xf-career-list { border: 1px solid #dde1e6; background:#fff; }
.xf-career-row { min-height: 116px; padding: 26px 30px; border-bottom-color:#e6e8ec; grid-template-columns: minmax(280px,1fr) 180px 180px 52px; transition: background .25s ease; }
.xf-career-row:last-child { border-bottom:0; }.xf-career-row:hover { background:#f8f9fa; }
.xf-career-row strong { font-size:22px; font-weight:500; letter-spacing:0; }.xf-career-row span { font-size:14px; }
.xf-career-row i { border-radius:0; color:#343943; transform:rotate(-45deg); transition:transform .35s cubic-bezier(.16,1,.3,1),background .2s,color .2s,border-color .2s; }
.xf-career-row:hover i { transform:rotate(0); }
.xf-career-row:focus-visible { outline:2px solid #e63223; outline-offset:-3px; }
.xf-job-dialog[open] { position:fixed !important; inset:50% auto auto 50% !important; width:min(900px,calc(100vw - 64px)); height:min(760px,calc(100vh - 80px)); max-height:none; margin:0 !important; transform:translate(-50%,-50%); border:1px solid rgba(255,255,255,.18); border-radius:4px; display:grid; grid-template-rows:auto minmax(0,1fr) auto; overflow:hidden; animation:xfDialogIn .3s cubic-bezier(.16,1,.3,1); }
.xf-job-dialog::backdrop { background:rgba(15,20,35,.74); backdrop-filter:blur(12px); }
.xf-job-modal-head { position:relative; padding:28px 36px; background:#0f1423; border-bottom:0; }.xf-job-modal-head h2 { color:#fff; font-size:28px !important; font-weight:500; }
.xf-job-close { border-color:rgba(255,255,255,.25); background:transparent; color:#fff; font-weight:300; transition:background .2s,transform .2s; }.xf-job-close:hover { background:rgba(255,255,255,.1); transform:rotate(90deg); }.xf-job-close:focus-visible { outline:2px solid #e63223; outline-offset:3px; }
.xf-job-body { padding:10px 42px 42px; overflow-y:auto; }.xf-job-body h3 { margin-top:32px; font-size:17px; font-weight:600; }.xf-job-body li { margin-bottom:12px; padding-left:4px; font-size:15px; line-height:1.75; }
.xf-job-apply { position:relative; padding:18px 36px; display:flex; align-items:center; justify-content:space-between; background:#fff; }.xf-job-apply::before { content:'简历请发送至 Recruit@xf-semi.com'; color:#707681; font-size:13px; }
.xf-job-apply .xf-btn-primary { min-width:132px; min-height:44px; padding:0 24px !important; display:inline-flex; align-items:center; justify-content:center; line-height:1; white-space:nowrap; }
@keyframes xfDialogIn { from { opacity:0; transform:translate(-50%,calc(-50% + 18px)) scale(.985); } }
@media (max-width:1100px) { .xf-code-flow { overflow-x:auto; }.xf-code-flow-grid { min-width:1240px; }.xf-process-heading,body[data-page="careers"] .xf-core-intro { grid-template-columns:1fr; gap:20px; } }
@media (max-width:1100px) {
  .xf-process-story-v2 .xf-code-flow {
    overflow:visible;
  }
  .xf-process-story-v2 .xf-code-flow-grid {
    min-width:0;
    width:100%;
    grid-template-columns:repeat(var(--flow-cols), minmax(0, var(--flow-card-width)));
  }
  .xf-process-story-v2 .xf-flow-name {
    font-size:clamp(9px, 1.15vw, 12px);
    padding-left:clamp(5px, .8vw, 10px);
    padding-right:clamp(5px, .8vw, 10px);
  }
}
@media (max-width:700px) { .xf-job-dialog[open] { width:calc(100vw - 24px); height:calc(100vh - 32px); }.xf-job-modal-head,.xf-job-body,.xf-job-apply { padding-left:22px; padding-right:22px; }.xf-job-apply::before { display:none; } }

/* Precision pass: shared technical navigation, flow continuity and careers. */
.xf-tech-switcher { padding: 28px 0; background:#fff; border-bottom:1px solid #e6e8ec; }
.xf-tech-switcher .container { display:flex; align-items:center; justify-content:center; gap:10px; }
.xf-tech-switcher a { min-width:152px; min-height:46px; padding:0 24px; border:1px solid #dfe2e7; border-radius:999px; display:inline-flex; align-items:center; justify-content:center; color:#4d535e; font-size:14px; font-weight:400; transition:color .2s,border-color .2s,background .2s; }
.xf-tech-switcher a:hover { border-color:#e63223; color:#e63223; }.xf-tech-switcher a.is-current { border-color:#0f1423; background:#0f1423; color:#fff; }
.xf-detail-nav { display:none !important; }
.xf-code-flow { position:relative; }.xf-code-flow-grid { position:relative; z-index:2; }
.xf-flow-step::before,.xf-flow-step::after { display:none !important; }
.xf-flow-connectors { position:absolute; inset:32px; z-index:1; width:calc(100% - 64px); height:calc(100% - 64px); pointer-events:none; overflow:visible; }
.xf-flow-connectors > path { fill:none; stroke:#b7bdc6; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; vector-effect:none; }
.xf-flow-name,.xf-flow-step:first-child .xf-flow-name,.xf-flow-step:last-child .xf-flow-name { background:#e63223; }
.xf-flow-image { border-color:#e4e7eb; transition:none; }.xf-flow-step:hover .xf-flow-image { transform:none; border-color:#e4e7eb; }

.xf-route-comparison { padding:82px 0 94px; background:#fff; }
.xf-route-comparison-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; gap:24px; }
.xf-route-option { min-height:540px; padding:40px 42px 44px; border-radius:16px; background:#f5f5f7; display:grid; grid-template-columns:minmax(190px,.82fr) minmax(0,1.18fr); grid-template-rows:auto 1fr; column-gap:34px; align-items:start; }
.xf-route-option + .xf-route-option { border-left:0; }
.xf-route-option-head { display:contents; }
.xf-route-option-head > div { grid-column:1 / -1; margin-bottom:28px; }
.xf-route-option-head > div > span { display:none; }
.xf-route-option h2 { margin:0; color:#171b23; font-family:var(--xf-font-heading) !important; font-size:38px !important; font-weight:700; line-height:1.2; }
.xf-route-option-head img { grid-column:1; grid-row:2; width:100%; height:100%; max-height:250px; display:block; object-fit:contain; align-self:center; }
.xf-route-detail { grid-column:2; grid-row:2; margin:0; display:grid; grid-template-columns:82px minmax(0,1fr); align-content:start; gap:15px 20px; }
.xf-route-detail dt { color:#e63223; font-size:15px; font-weight:600; line-height:1.75; }
.xf-route-detail dd { margin:0; color:#555c67; font-size:15px; font-weight:400; line-height:1.75; }
.xf-route-detail ol { margin:0; padding:0; list-style:none; counter-reset:xf-advantage; }
.xf-route-detail li { position:relative; padding-left:24px; counter-increment:xf-advantage; }
.xf-route-detail li::before { content:counter(xf-advantage) '.'; position:absolute; left:0; top:0; color:#7a818c; font-variant-numeric:tabular-nums; }
.xf-route-detail li + li { margin-top:6px; }
.xf-process-story .xf-route-option--embedded { min-height:340px; margin-bottom:26px; padding:32px 38px; grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr); column-gap:48px; }
.xf-process-story .xf-route-option--embedded .xf-route-option-head img { max-height:220px; }
.xf-process-story .xf-route-option--embedded .xf-route-detail { align-self:center; }
@media (max-width:900px) { .xf-route-comparison { padding:72px 0 84px; }.xf-route-comparison-grid { grid-template-columns:1fr; }.xf-route-option { min-height:0; padding:34px 28px 38px; grid-template-columns:1fr; }.xf-route-option-head > div,.xf-route-option-head img,.xf-route-detail { grid-column:1; }.xf-route-option-head img { grid-row:2; height:170px; margin-bottom:26px; }.xf-route-detail { grid-row:3; } }
@media (max-width:900px) { .xf-process-story .xf-route-option--embedded { min-height:0; padding:30px 26px 34px; grid-template-columns:1fr; }.xf-process-story .xf-route-option--embedded .xf-route-option-head img { height:170px; max-height:170px; } }

.xf-analysis-grid { gap:18px; background:transparent; border:0; grid-template-columns:repeat(2,minmax(0,1fr)); }
.xf-analysis-cell { min-height:270px; padding:38px 40px; border:1px solid #e1e4e9; border-radius:4px; transition:border-color .25s ease,transform .35s cubic-bezier(.16,1,.3,1); }
.xf-analysis-cell:hover { border-color:rgba(230,50,35,.55); transform:translateY(-4px); }.xf-analysis-cell span { display:inline-flex; width:32px; height:32px; border:1px solid #e63223; border-radius:50%; align-items:center; justify-content:center; }.xf-analysis-cell h3 { font-size:25px; font-weight:500; }.xf-analysis-cell ul { margin:0; padding-left:1.1em; }

.xf-career-row i { width:30px; height:30px; border:0; border-radius:0; background:transparent !important; color:#515762; transform:none; font-size:0; }
.xf-career-row i::before { content:''; width:18px; height:10px; display:block; background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 14' fill='none' stroke='%23515762' stroke-width='1.5'%3E%3Cpath d='M1 7h20M15 1l6 6-6 6'/%3E%3C/svg%3E"); transition:transform .25s cubic-bezier(.16,1,.3,1); }
.xf-career-row:hover i::before { transform:translateX(4px); }.xf-career-row:hover i { color:#e63223; }
.xf-job-dialog[open] { width:min(720px,calc(100vw - 64px)); height:min(650px,calc(100vh - 96px)); border:0; box-shadow:0 28px 90px rgba(15,20,35,.22); }
.xf-job-modal-head { padding:24px 30px 20px; background:#fff; border-bottom:1px solid #eceef1; }.xf-job-modal-head h2 { color:#171b23; font-family:'Noto Sans SC',sans-serif !important; font-size:24px !important; font-weight:500; }.xf-job-close { width:36px;height:36px;border-color:#dfe2e7;background:#fff;color:#3f454f;font-size:20px; }.xf-job-close:hover { background:#f5f6f7; transform:rotate(90deg); }
.xf-job-body { padding:0 34px 30px; }.xf-job-body h3 { margin:26px 0 12px; font-size:16px; }.xf-job-body li { margin-bottom:9px; font-size:14px; line-height:1.7; }
.xf-job-apply { padding:15px 30px; }.xf-job-apply .xf-btn-primary { min-width:118px; min-height:40px; font-size:14px; }
body[data-page="careers"] .xf-core-section { padding-top:82px; padding-bottom:112px; }.xf-career-row { min-height:104px; padding:22px 30px; }.xf-career-row strong { font-size:20px; }

/* Simulation design map */
.xf-package-design { padding:108px 0 124px; background:#fff; }
.xf-package-map { position:relative; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; background:#fff; }
.xf-package-quadrant { min-height:322px; padding:30px 34px; border-radius:14px; background:#f3f4f6; display:flex; flex-direction:column; justify-content:space-between; overflow:hidden; }
.xf-package-bumping { padding-right:94px; padding-bottom:62px; }
.xf-package-sip { padding-left:94px; padding-bottom:62px; }
.xf-package-foplp { padding-right:94px; padding-top:62px; }
.xf-package-copos { padding-left:94px; padding-top:62px; }
.xf-package-quadrant-head { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; }
.xf-package-quadrant-head h3 { margin:0; color:#023b81; font-family:'Noto Sans SC',sans-serif; font-size:28px; font-weight:600; }
.xf-package-quadrant-head > div { max-width:62%; display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
.xf-package-quadrant-head span { min-height:32px; padding:0 12px; border:1px solid #dfe3e8; border-radius:6px; background:#fff; display:inline-flex; align-items:center; color:#626a76; font-size:13px; }
.xf-package-visuals { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; align-items:end; }
.xf-package-visuals figure { margin:0; min-width:0; text-align:center; }.xf-package-visuals img { width:100%; height:104px; display:block; object-fit:contain; }.xf-package-visuals figcaption { margin-top:7px; color:#4e5561; font-size:13px; }
.xf-package-center { position:absolute; z-index:3; top:50%; left:50%; width:142px; aspect-ratio:1; border:7px solid #fff; border-radius:50%; background:#023b81; box-shadow:0 12px 32px rgba(15,20,35,.16); transform:translate(-50%,-50%); display:flex; flex-direction:column; align-items:center; justify-content:center; color:#fff; }
.xf-package-center::before,.xf-package-center::after { display:none; }
.xf-package-center strong,.xf-package-center span { position:relative; z-index:1; font-family:'Noto Sans SC',sans-serif; font-size:18px; font-weight:500; line-height:1.35; }.xf-package-center span { margin-top:0; }
.xf-simulation-section { padding:112px 0 130px; background:#f7f8fa; }.xf-simulation-section .xf-core-intro { max-width:900px; margin-bottom:48px; }
.xf-simulation-section .xf-analysis-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.xf-simulation-section .xf-analysis-cell { min-height:286px; padding:32px; border:0; border-radius:16px; background:#fff; box-shadow:0 12px 34px rgba(15,20,35,.06); transition:box-shadow .25s ease; }
.xf-simulation-section .xf-analysis-cell:hover { border-color:transparent; transform:none; box-shadow:0 18px 44px rgba(15,20,35,.09); }
.xf-simulation-section .xf-analysis-cell > span { display:none; }
.xf-simulation-section .xf-analysis-cell h3 { width:max-content; max-width:100%; min-height:36px; margin:0 0 24px; padding:0 15px; border-radius:999px; display:inline-flex; align-items:center; background:#e8eef6; color:#023b81; font-size:16px; font-weight:500; line-height:1.4; }
.xf-simulation-section .xf-analysis-cell ul { margin:0; padding:0; list-style:none; }
.xf-simulation-section .xf-analysis-cell li { margin:0; padding:0; color:#4f5662; font-size:16px; line-height:1.65; text-align:left; }
.xf-simulation-section .xf-analysis-cell li + li { margin-top:8px; }
@media (max-width:1200px) { .xf-simulation-section .xf-analysis-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.xf-package-quadrant { padding:28px; }.xf-package-bumping { padding-right:76px; padding-bottom:56px; }.xf-package-sip { padding-left:76px; padding-bottom:56px; }.xf-package-foplp { padding-right:76px; padding-top:56px; }.xf-package-copos { padding-left:76px; padding-top:56px; }.xf-package-center { width:128px; } }
@media (max-width:760px) { .xf-package-map { grid-template-columns:1fr; gap:12px; }.xf-package-quadrant,.xf-package-bumping,.xf-package-sip,.xf-package-foplp,.xf-package-copos { min-height:300px; padding:28px; }.xf-package-center { display:none; }.xf-simulation-section .xf-analysis-grid { grid-template-columns:1fr; }.xf-package-quadrant-head { flex-direction:column; }.xf-package-quadrant-head > div { max-width:none; justify-content:flex-start; } }

@media (max-width: 900px) {
  .xf-core-section { padding: 76px 0 90px; }
  .xf-tech-trigger { grid-template-columns: 42px 1fr 42px; gap: 16px; }
  .xf-tech-summary { display: none; }
  .xf-tech-panel-inner { padding: 0 0 34px 58px; align-items: flex-start; flex-direction: column; }
  .xf-process-grid { grid-template-columns: 1fr; }
  .xf-process-grid:nth-child(even) .xf-process-media { order: initial; }
  .xf-analysis-grid { grid-template-columns: 1fr; }
  .xf-career-row { grid-template-columns: 1fr 42px; }
  .xf-career-row > span { display: none; }
}

/* Final component overrides keep audit fixes ahead of legacy cascade rules. */
.xf-career-about { padding:118px 0 126px; background:#fff; }
.xf-career-about-grid { display:grid; grid-template-columns:minmax(440px,.85fr) minmax(620px,1.15fr); align-items:center; gap:clamp(70px,8vw,140px); }
.xf-career-about-copy h2,.xf-career-section-head h2,.xf-career-jobs .xf-core-intro h2 { margin:0; color:#151922; font-family:var(--xf-font-heading); font-size:var(--xf-title-section-size) !important; font-weight:var(--xf-title-weight); line-height:var(--xf-title-line-height); }
.xf-career-about-copy h3 { margin:24px 0 30px; color:#242932; font-size:25px; font-weight:600; line-height:1.45; }
.xf-career-about-copy > p { max-width:650px; margin:0; color:#626873; font-size:17px; line-height:1.85; }
.xf-career-about-copy > p + p { margin-top:18px; }
.xf-career-about-media { border-radius:16px; background:#f2f3f5; overflow:hidden; }
.xf-career-about-media img { width:100%; height:auto; aspect-ratio:4/3; display:block; object-fit:contain; }
.xf-career-metrics { margin-top:52px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:34px 48px; }
.xf-career-metrics div { display:flex; flex-direction:column; align-items:flex-start; }
.xf-career-metrics strong { color:#151922; font-family:'Noto Sans SC',sans-serif; font-size:34px; font-weight:600; line-height:1.15; font-variant-numeric:tabular-nums; }
.xf-career-metrics span { margin-top:9px; color:#777e89; font-size:15px; font-weight:400; }

.xf-career-environment { padding:108px 0 112px; background:#f5f5f7; }
.xf-career-section-head { margin-bottom:48px; display:flex; align-items:flex-end; justify-content:space-between; gap:48px; }
.xf-career-section-head p { max-width:520px; margin:0; color:#707782; font-size:16px; line-height:1.7; text-align:right; }
.xf-environment-track { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; }
.xf-environment-track::-webkit-scrollbar { display:none; }
.xf-environment-card { min-width:0; border-radius:16px; background:#fff; overflow:hidden; scroll-snap-align:center; }
.xf-environment-media { aspect-ratio:16/9; background:#e9ebee; display:grid; place-items:center; overflow:hidden; }
.xf-environment-media img { width:100%; height:100%; display:block; object-fit:contain; }
.xf-environment-card h3 { margin:0; padding:24px 28px 28px; color:#252a32; font-size:21px; font-weight:500; line-height:1.4; }
.xf-environment-pagination { min-height:24px; margin-top:38px; display:flex; align-items:center; justify-content:center; gap:10px; }
.xf-environment-pagination button { width:8px; height:8px; border:0; border-radius:999px; background:#c5c8cd; transition:background .18s ease; }
.xf-environment-pagination button.is-active { width:40px; background:#e63223; }
.xf-environment-pagination button:focus-visible { outline:2px solid #e63223; outline-offset:4px; }

.xf-career-jobs { padding:112px 0 128px; background:#f5f5f7; }
.xf-career-jobs .xf-core-intro { margin-bottom:58px; }
.xf-career-browser { display:grid; grid-template-columns:280px minmax(0,1fr); align-items:start; gap:54px; }
.xf-career-filter { position:sticky; top:112px; padding:30px 0; border-top:1px solid #cfd3d9; border-bottom:1px solid #cfd3d9; }
.xf-career-filter h3 { margin:0 0 28px; color:#1e232b; font-size:22px; font-weight:600; }
.xf-career-filter label { position:relative; min-height:48px; display:grid; grid-template-columns:12px 24px 1fr; align-items:center; gap:12px; color:#5d6470; font-size:16px; cursor:pointer; }
.xf-career-filter label::before { content:''; width:7px; height:11px; background:#767e89; clip-path:polygon(0 0,100% 50%,0 100%); }
.xf-career-filter input { position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }
.xf-filter-check { position:relative; width:24px; height:24px; border:1px solid #929aa5; border-radius:5px; background:#fff; transition:background .18s ease,border-color .18s ease; }
.xf-career-filter input:checked + .xf-filter-check { border-color:#e63223; background:#e63223; }
.xf-career-filter input:checked + .xf-filter-check::after { content:''; position:absolute; left:7px; top:3px; width:7px; height:12px; border:solid #fff; border-width:0 2px 2px 0; transform:rotate(45deg); }
.xf-career-filter input:focus-visible + .xf-filter-check { outline:2px solid #e63223; outline-offset:3px; }
.xf-career-list { border:0; background:transparent; display:grid; gap:16px; }
.xf-career-card { border:1px solid #dfe2e7; border-radius:14px; background:#fff; overflow:hidden; transition:border-color .2s ease,box-shadow .25s ease; }
.xf-career-card:hover { border-color:rgba(230,50,35,.55); box-shadow:0 14px 34px rgba(15,20,35,.07); }
.xf-career-card[hidden] { display:none; }
.xf-career-row { width:100%; min-height:146px; padding:28px 32px; border:0; background:transparent; display:grid; grid-template-columns:minmax(0,1fr) 34px; align-items:center; gap:24px; text-align:left; }
.xf-career-card-copy { display:flex; flex-direction:column; align-items:flex-start; }
.xf-career-card-copy small { margin-bottom:14px; color:#777e89; font-size:14px; font-weight:400; line-height:1.4; }
.xf-career-card-copy strong { color:#20252d; font-family:'Noto Sans SC',sans-serif; font-size:25px; font-weight:500; line-height:1.35; }
.xf-career-card-copy > span { margin-top:12px; color:#707782; font-size:14px; font-weight:400; }
.xf-career-row i { width:30px; height:30px; display:grid; place-items:center; }
.xf-career-empty { margin:0; padding:48px; border:1px solid #dfe2e7; border-radius:14px; background:#fff; color:#6d7480; text-align:center; }
@media (max-width:1100px) { .xf-career-about-grid { grid-template-columns:1fr; }.xf-career-browser { grid-template-columns:1fr; }.xf-career-filter { position:static; display:grid; grid-template-columns:1fr 1fr; gap:0 24px; }.xf-career-filter h3 { grid-column:1/-1; }.xf-environment-track { grid-template-columns:repeat(3,minmax(360px,1fr)); }.xf-career-row > .xf-career-card-copy { display:flex; } }
@media (max-width:700px) { .xf-career-about,.xf-career-environment,.xf-career-jobs { padding:76px 0 84px; }.xf-career-metrics { grid-template-columns:1fr; }.xf-career-section-head { align-items:flex-start; flex-direction:column; }.xf-career-section-head p { text-align:left; }.xf-career-filter { grid-template-columns:1fr; }.xf-environment-track { grid-template-columns:repeat(3,minmax(82vw,1fr)); }.xf-career-row { padding:24px; }.xf-career-card-copy strong { font-size:21px; } }

.text-xs { font-size: 16px !important; line-height: 1.5 !important; }
.xf-tech-specs .text-xs,
.xf-partner-grid > div > .text-xs.font-semibold { font-size: 16px !important; line-height: 1.5 !important; }
.news-card-hover:hover,
.news-card-hover:focus-visible { transform: none !important; }
.xf-motion-ready .xf-fade-up:not(.visible) { opacity: 0; transform: translateY(20px); }
@media (prefers-reduced-motion: reduce) {
  .xf-motion-ready .xf-fade-up { opacity: 1 !important; transform: none !important; }
}

/* === UI/UX audit fixes: accessibility, interaction and readable small copy === */
.text-xs {
  font-size: 1rem !important;
  line-height: 1.5 !important;
}

.skip-link {
  position: fixed;
  top: 12px;
  left: 16px;
  z-index: 1000;
  padding: 10px 16px;
  color: #fff;
  background: #e63223;
  border-radius: 2px;
  transform: translateY(-160%);
  transition: transform 180ms ease-out;
}
.skip-link:focus { transform: translateY(0); }

a:focus-visible,
button:focus-visible,
[tabindex]:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 2px solid #e63223 !important;
  outline-offset: 3px;
}

.desktop-nav > a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding-inline: 4px;
}

.xf-fade-up {
  opacity: 1;
  transform: none;
}
.xf-motion-ready .xf-fade-up:not(.visible) {
  opacity: 0;
  transform: translateY(20px);
}

.xf-tech-card,
.xf-tech-card-static {
  border: 1px solid oklch(0.9 0.005 240) !important;
  transition: border-color 250ms ease, box-shadow 250ms ease, transform 250ms cubic-bezier(.23,1,.32,1) !important;
}
.xf-tech-card:hover,
.xf-tech-card:focus-within,
.xf-tech-card-static:hover,
.xf-tech-card-static:focus-within {
  border-color: #e63223 !important;
  transform: translateY(-6px);
  box-shadow: 0 20px 60px rgba(0,0,0,.12);
}
.xf-tech-card .grid.grid-cols-2,
.xf-tech-card-static .grid.grid-cols-2 {
  row-gap: 10px;
  column-gap: 16px;
}

.news-card-hover {
  display: block;
  color: inherit;
  text-decoration: none;
}
.news-card-hover:focus-visible {
  border-color: #e63223 !important;
}
.news-card-hover:hover {
  transform: none !important;
}
.news-card-hover:hover .xf-news-tag,
.news-card-hover:focus-visible .xf-news-tag {
  color: #e63223 !important;
  background-color: rgba(230,50,35,.1) !important;
}

.xf-form-control {
  min-height: 48px;
  transition: border-color 180ms ease, box-shadow 180ms ease;
}
.xf-form-control:focus-visible {
  border-color: #e63223 !important;
  box-shadow: 0 0 0 3px rgba(230,50,35,.12);
}
.xf-form-control[aria-invalid="true"] {
  border-color: #e63223 !important;
}
.xf-field-error {
  min-height: 20px;
  margin-top: 6px;
  color: #b42318;
  font-size: 14px;
  line-height: 1.4;
}
.xf-form-status {
  min-height: 24px;
  margin-top: 12px;
  font-size: 14px;
  line-height: 1.5;
}

.xf-news-tag,
.xf-tech-card .text-xs,
.xf-tech-card-static .text-xs {
  white-space: normal;
}
.xf-news-tag { padding: 6px 10px !important; }
footer .text-xs { line-height: 1.6 !important; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
  .xf-motion-ready .xf-fade-up {
    opacity: 1 !important;
    transform: none !important;
  }
}

/* About team metrics: final cascade override. */
.xf-team-metrics > div {
  min-height: 230px !important;
  padding-block: 52px !important;
}

.xf-team-metrics .text-3xl {
  font-size: clamp(64px, 5vw, 88px) !important;
  line-height: 1 !important;
}

/* Final desktop overrides: keep these after the generated utility layer. */
.xf-team-metrics > div {
  min-height: 230px !important;
  padding-block: 52px !important;
}

.xf-team-metrics .text-3xl {
  font-size: clamp(64px, 5vw, 88px) !important;
  line-height: 1 !important;
}

.xf-tech-card {
  border-color: oklch(0.9 0.005 240) !important;
}

.xf-tech-card:hover {
  border-color: #e63223 !important;
}

/* 2026 content architecture consistency pass. */
.xf-grid-texture,
.xf-grid-texture-dark,
.xf-grid-texture::before,
.xf-grid-texture-dark::before {
  background-image: none !important;
}

#navbar a[href="index.html"] > img {
  height: 58px !important;
  width: auto !important;
}

img[src="./彩色.svg"] + div {
  display: none !important;
}

footer img[src="./彩色.svg"] {
  content: url('../白色.svg');
  width: 190px !important;
  height: auto !important;
}

footer .container > .grid {
  grid-template-columns: minmax(280px, 1.25fr) minmax(180px, .75fr) minmax(280px, 1fr) !important;
  justify-content: space-between;
  gap: clamp(48px, 8vw, 140px) !important;
}

.xf-home-about-title { white-space: nowrap; }

.xf-team-metrics > div {
  min-height: 190px;
  padding-block: 42px !important;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.xf-team-metrics .text-3xl {
  font-size: clamp(48px, 4vw, 68px) !important;
}

.xf-team-metrics small {
  margin-left: 4px;
  font-family: var(--xf-font);
  font-size: .38em;
  font-weight: 500;
}

.news-card-hover[role="link"]:focus-visible {
  outline: 2px solid #e63223;
  outline-offset: 3px;
}

/* Homepage content-state refinements. */
.xf-hero-specs { column-gap: clamp(44px, 4vw, 76px) !important; }
.xf-stat-unit { font-weight: 400 !important; }
.xf-section-label,
.xf-stat-number { color: #e63223 !important; }
.xf-tech-card { border-color: oklch(0.9 0.005 240) !important; }
.xf-tech-card:hover { border-color: #e63223 !important; }
.xf-contact-title {
  white-space: nowrap;
  font-size: clamp(26px, 1.55vw, 30px) !important;
}

@media (min-width: 1024px) {
  .xf-contact-cta > .container > .grid {
    grid-template-columns: minmax(0, 1.75fr) minmax(360px, 1fr) !important;
  }
}

footer .container > .grid > :nth-child(2) {
  justify-self: end;
  min-width: 150px;
}

footer .container > .grid > :nth-child(3) {
  justify-self: end;
  text-align: right;
}

footer .container > .grid > :nth-child(3) li {
  justify-content: flex-end;
}

.xf-team-metrics > div {
  min-height: 230px !important;
  padding-block: 52px !important;
}

.xf-team-metrics .text-3xl {
  font-size: clamp(64px, 5vw, 88px) !important;
  line-height: 1 !important;
}

/* 旧页面统一视觉修复：思源黑体、深蓝主题与稳定的桌面字号 */
:root {
  --xf-navy: #0F1423;
  --xf-font: "Source Han Sans CN", "思源黑体", "Noto Sans SC", sans-serif;
}

/* Replace the former near-black surfaces without touching image assets. */
[style*="oklch(0.14 0.025 240)"],
[style*="oklch(0.22 0.04 240)"],
[style*="background-color: #000"],
[style*="background: #000"] {
  background-color: var(--xf-navy) !important;
}

/* 首页深浅蓝内联色块归并到全站统一深蓝。 */
body[data-page="home"] [style*="oklch(0.14 0.025 240)"],
body[data-page="home"] [style*="oklch(0.22 0.04 240)"] {
  background-color: #0F1423 !important;
}

/* Keep supplied imagery clean: no dark image masks or gradient overlays. */
.xf-culture-shade {
  display: none !important;
}

/* 企业文化：大幅展示，文案默认可见，不依赖 hover 才出现。 */
.xf-culture {
  height: 756px !important;
  min-height: 756px !important;
  background: var(--xf-navy) !important;
}

.xf-culture-item p,
.xf-culture-item:hover p,
.xf-culture-item:focus-visible p {
  max-height: none !important;
  margin-top: 18px !important;
  opacity: 1 !important;
  transform: none !important;
  font-size: 24px !important;
  line-height: 1.85 !important;
}

.xf-culture-item h2 { font-size: 48px !important; }

/* 三列企业文化标题保持同一视觉高度。 */
.xf-culture-item h2 {
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* 桌面端只保留右侧 CTA，避免导航重复出现“联系我们”。 */
.desktop-nav a[data-nav="contact"] {
  display: none !important;
}

#navbar a[href="index.html"] > img {
  height: 54px !important;
  width: auto !important;
}

.desktop-nav a {
  position: relative;
}

.desktop-nav > a > span {
  display: none !important;
}

.desktop-nav > a::after {
  position: absolute;
  right: 0;
  bottom: -7px;
  left: 0;
  height: 2px;
  content: "";
  background: #e63223;
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 260ms cubic-bezier(.16, 1, .3, 1);
}

.desktop-nav > a:hover::after,
.desktop-nav > a:focus-visible::after {
  transform: scaleX(1);
}

.desktop-cta .xf-btn-primary {
  min-width: 120px;
  min-height: 44px;
  padding: 0 28px !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

/* 关于我们发展历程：年份、圆点和竖线共用同一几何中心。 */
body[data-page="about"] .relative.xf-fade-up.xf-delay-100 > .absolute.left-24 {
  left: 134px !important;
}

body[data-page="about"] .relative.xf-fade-up.xf-delay-100 .w-24 > span {
  font-size: 18px !important;
  line-height: 20px !important;
}

body[data-page="about"] .relative.xf-fade-up.xf-delay-100 .w-3.h-3 {
  margin-top: 4px !important;
}

.xf-btn-primary {
  background: #e63223 !important;
  border-radius: 999px !important;
  color: #fff !important;
}

/* 首页 Banner 恢复原有半透明黑色渐变蒙版。 */
body[data-page="home"] .absolute.inset-0.xf-home-hero-mask {
  display: block !important;
  background: linear-gradient(100deg, rgba(15, 20, 35, 0.88) 0%, rgba(15, 20, 35, 0.68) 45%, rgba(15, 20, 35, 0.2) 100%) !important;
}
body[data-page="home"] .xf-home-hero[data-slide="1"] .xf-home-hero-mask,
body[data-page="home"] .xf-home-hero[data-slide="2"] .xf-home-hero-mask {
  display: none !important;
}
.xf-home-hero-content {
  transform:translateY(-20px);
}

.xf-hero-slides { position:absolute; inset:0; overflow:hidden; }
.xf-hero-slide { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0; transition:opacity .7s ease; }
.xf-hero-slide.is-active { opacity:1; }
.xf-hero-dots { display:flex; gap:10px; }
.xf-hero-dots button { position:relative; width:34px; height:24px; padding:0; border:0; background:transparent; cursor:pointer; transition:width .2s ease; }
.xf-hero-dots button::before { content:""; position:absolute; top:50%; right:0; left:0; height:3px; background:rgba(255,255,255,.42); transform:translateY(-50%); transition:background-color .2s ease; }
.xf-hero-dots button.is-active { width:46px; }
.xf-hero-dots button.is-active::before { background:#e63223; }
@media (hover:hover) { .xf-hero-dots button:hover::before { background:#e63223; } }

.xf-home-hero .xf-home-hero-bottom-gradient {
  display: none !important;
}

/* Keep the hero exactly one viewport tall; prevent the section's dark fallback
   surface from showing below the image at short desktop heights. */
.xf-home-hero {
  height: 100vh;
  min-height: 100vh !important;
  max-height: 100vh;
  overflow: hidden !important;
  background: transparent !important;
  cursor: grab;
  touch-action: pan-y;
}
.xf-home-hero.is-dragging { cursor: grabbing; user-select: none; }

.xf-home-hero .xf-scroll-cue {
  translate: -50% 0;
  text-align: center;
}

.xf-home-hero .xf-scroll-cue > * {
  margin-inline: auto;
}

.xf-home-hero .xf-hero-title { white-space: nowrap; font-size: clamp(40px, 4.4vw, 72px) !important; }
.xf-home-hero .xf-hero-title span { color: #e63223 !important; }
.xf-home-hero .xf-hero-dots-wrap {
  position: absolute;
  z-index: 20;
  right: 0;
  bottom: 128px;
  left: 0;
  pointer-events: none;
}
.xf-home-hero .xf-hero-dots { pointer-events: auto; }
@media (max-width: 720px) {
  .xf-home-hero .xf-hero-title { white-space: normal; }
}

.xf-home-hero .xf-hero-actions { transition: transform .35s ease; }
.xf-home-hero[data-slide="1"] .xf-hero-actions,
.xf-home-hero[data-slide="2"] .xf-hero-actions { transform: translateY(30px); }

.xf-home-about-lower { padding-top: 20px; }

/* 关于我们：关键数字增大，三阶段规划卡片增加约 15% 高度。 */
.xf-team-metrics .text-3xl {
  font-size: clamp(64px, 5vw, 88px) !important;
  line-height: 1 !important;
}

.xf-development-plan-cards > .xf-glass-card {
  position: relative;
  min-height: 248px;
  padding: 32px 36px 28px !important;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.xf-plan-stage {
  position: absolute;
  top: 0;
  right: 0;
  padding: 7px 12px;
  border-radius: 0 4px 0 2px;
  background: oklch(0.48 0.22 25 / 0.5);
  color: #fff;
  font-size: 15px !important;
  line-height: 1.2;
  opacity: 1;
}

.xf-footer-current {
  position: relative;
  color: inherit !important;
  text-decoration: underline;
  text-decoration-color: #fff;
  text-decoration-thickness: 1px;
  text-underline-offset: 6px;
}

.xf-plan-value {
  max-width: calc(100% - 104px);
  margin: 0 0 14px;
  font-size: 30px !important;
  line-height: 1.12;
}

.xf-plan-meta {
  margin-bottom: 6px;
  font-size: 17px !important;
  line-height: 1.5;
}

.xf-plan-highlight {
  margin-bottom: 14px;
  font-size: 17px !important;
  line-height: 1.5;
  color: oklch(0.48 0.22 25) !important;
}

.xf-plan-description {
  margin-top: auto;
  max-width: 38ch;
  font-size: 17px !important;
  line-height: 1.75 !important;
}

/* 关于我们页面统一使用当前 VI 红，不影响内容架构中的其他页面。 */
body[data-page="about"] {
  --brand-red: #E63226;
  --primary: #E63226;
}

body[data-page="about"] [style*="color: oklch(0.48 0.22 25)"],
body[data-page="about"] .xf-section-label,
body[data-page="about"] .xf-plan-highlight {
  color: #E63226 !important;
}

body[data-page="about"] [style*="background-color: oklch(0.48 0.22 25)"],
body[data-page="about"] .xf-section-label::before,
body[data-page="about"] .xf-btn-primary {
  background-color: #E63226 !important;
}

body[data-page="about"] .xf-plan-stage {
  background: rgba(230, 50, 38, 0.5) !important;
}

body[data-page="about"] svg[stroke="oklch(0.48 0.22 25)"] {
  stroke: #E63226;
}

body[data-page="about"] .desktop-nav a::after {
  background: #E63226;
}

body[data-page="about"] .xf-glass-card:hover,
body[data-page="about"] .xf-glass-card:focus-visible {
  border-color: rgba(230, 50, 38, 0.5);
}

/* 首页关键数字保持原版数字字体。 */
body[data-page="home"] .xf-stat-number {
  font-family: 'Bebas Neue', sans-serif !important;
}

/* 首页 Banner CTA：相同尺寸与交互语言，仅用红/白区分层级。 */
.xf-home-hero .xf-btn-primary,
.xf-home-hero .xf-btn-outline {
  min-width: 184px;
  min-height: 52px;
  padding: 0 28px !important;
  padding-bottom: 2px !important;
  border: 0 !important;
  border-radius: 999px !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  transition: transform 240ms ease, box-shadow 240ms ease, background-color 240ms ease !important;
}

.xf-home-hero .xf-btn-primary {
  background: #e63223 !important;
  color: #fff !important;
}

.xf-home-hero .xf-btn-outline {
  background: #fff !important;
  color: #1b2430 !important;
}

@media (hover: hover) {
  .xf-home-hero .xf-btn-primary:hover,
  .xf-home-hero .xf-btn-outline:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.16);
  }
}

/* 首页底部联系区统一使用页脚蓝色。 */
.xf-contact-cta {
  background: #20318a !important;
  background-image: none !important;
}

.xf-contact-cta > .absolute {
  display: none !important;
}

.xf-contact-cta h2 {
  color: #fff !important;
}

.xf-contact-cta h2 span,
.xf-contact-cta .text-xs {
  color: #e63223 !important;
}

.xf-contact-cta p {
  color: rgba(255, 255, 255, 0.72) !important;
}

.xf-contact-cta .space-y-6 > div {
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: rgba(255, 255, 255, 0.1) !important;
}

.xf-contact-cta .space-y-6 > div > div:last-child > div:first-child {
  color: #fff !important;
}

/* 首页所有主红色 CTA 使用同一尺寸、字重和交互反馈。 */
body[data-page="home"] main .xf-btn-primary {
  min-width: 184px;
  min-height: 52px;
  padding: 0 28px !important;
  border: 0 !important;
  border-radius: 999px !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background: #e63223 !important;
  color: #fff !important;
  transition: transform 240ms ease, box-shadow 240ms ease !important;
}

body[data-page="home"] main .xf-about-more {
  min-width: 0;
  min-height: 0;
  padding: 0 !important;
  background: transparent !important;
  color: #e63223 !important;
  box-shadow: none !important;
}

@media (hover: hover) {
  body[data-page="home"] main .xf-btn-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 24px rgba(230, 50, 35, 0.22);
  }
}

@media (max-width: 767px) {
  .xf-culture {
    height: auto !important;
    min-height: 540px !important;
  }
}

/* 关于我们：企业文化图片模块 */
.xf-culture {
  position: relative;
  height: 400px;
  overflow: hidden;
  background: var(--xf-navy);
  color: #fff;
  isolation: isolate;
}

.xf-culture-bg,
.xf-culture-shade {
  position: absolute;
  inset: 0;
}

.xf-culture-bg {
  z-index: -3;
  background-position: center;
  background-size: cover;
  opacity: 0;
  transform: scale(1.025);
  transition: opacity 650ms ease, transform 1.2s ease;
}

.xf-culture-bg-mission {
  background-image: url('../assets/culture_mission_placeholder.jpg');
  opacity: 1;
  transform: scale(1);
}

.xf-culture-bg-vision {
  background-image: url('../assets/culture_vision_placeholder.jpg');
}

.xf-culture-bg-values {
  background-image: url('../assets/culture_values_placeholder.jpg');
}

.xf-culture-shade {
  z-index: -2;
  background: rgba(5, 13, 20, 0.56);
  transition: background-color 350ms ease;
}

.xf-culture-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: 100%;
  height: 100%;
}

.xf-culture-item {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  padding: 48px clamp(28px, 4vw, 64px);
  font-family: 'Noto Sans SC', sans-serif;
  text-align: center;
  cursor: default;
  outline: none;
}

.xf-culture-item + .xf-culture-item {
  border-left: 1px solid rgba(255, 255, 255, 0.48);
}

.xf-culture-item::before {
  position: absolute;
  inset: 0;
  content: '';
  background: rgba(255, 255, 255, 0);
  transition: background-color 350ms ease;
}

.xf-culture-content {
  position: relative;
  max-width: 440px;
  width: 100%;
}

.xf-culture-item h2 {
  margin: 0;
  font-family: 'Noto Serif SC', serif;
  font-size: clamp(28px, 2.5vw, 40px);
  font-weight: 700;
  letter-spacing: 0;
}

.xf-culture-item p {
  max-height: 0;
  margin: 0;
  overflow: hidden;
  font-size: 16px;
  line-height: 1.9;
  color: rgba(255, 255, 255, 0.84);
  opacity: 0;
  transform: translateY(8px);
  transition: max-height 400ms ease, margin-top 350ms ease, opacity 300ms ease, transform 350ms ease;
}

.xf-culture-item:hover::before,
.xf-culture-item:focus-visible::before {
  background: rgba(255, 255, 255, 0.07);
}

.xf-culture-item:hover p,
.xf-culture-item:focus-visible p {
  max-height: 120px;
  margin-top: 14px;
  opacity: 1;
  transform: translateY(0);
}

.xf-culture:has(.xf-culture-vision:hover) .xf-culture-bg-mission,
.xf-culture:has(.xf-culture-values:hover) .xf-culture-bg-mission,
.xf-culture:has(.xf-culture-vision:focus-visible) .xf-culture-bg-mission,
.xf-culture:has(.xf-culture-values:focus-visible) .xf-culture-bg-mission {
  opacity: 0;
  transform: scale(1.025);
}

.xf-culture:has(.xf-culture-vision:hover) .xf-culture-bg-vision,
.xf-culture:has(.xf-culture-vision:focus-visible) .xf-culture-bg-vision,
.xf-culture:has(.xf-culture-values:hover) .xf-culture-bg-values,
.xf-culture:has(.xf-culture-values:focus-visible) .xf-culture-bg-values {
  opacity: 1;
  transform: scale(1);
}

/* 企业文化卡片版（about-card.html） */
.xf-culture-cards {
  padding: 36px clamp(24px, 5vw, 72px);
}

.xf-culture-cards .xf-culture-grid {
  gap: 24px;
}

.xf-culture-cards .xf-culture-item {
  padding: 32px;
  border: 1px solid rgba(255, 255, 255, 0.28);
  border-radius: 4px;
  background: rgba(7, 18, 27, 0.48);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  transition: background-color 350ms ease, border-color 350ms ease, transform 350ms ease;
}

.xf-culture-cards .xf-culture-item + .xf-culture-item {
  border-left: 1px solid rgba(255, 255, 255, 0.28);
}

.xf-culture-cards .xf-culture-item:hover,
.xf-culture-cards .xf-culture-item:focus-visible {
  border-color: rgba(255, 255, 255, 0.68);
  background: rgba(7, 18, 27, 0.62);
  transform: translateY(-4px);
}

@media (max-width: 767px) {
  .xf-culture {
    height: auto;
    min-height: 540px;
  }

  .xf-culture-grid {
    grid-template-columns: 1fr;
    min-height: 540px;
  }

  .xf-culture-item {
    align-items: center;
    justify-content: center;
    min-height: 180px;
    padding: 28px 24px;
  }

  .xf-culture-item + .xf-culture-item {
    border-top: 1px solid rgba(255, 255, 255, 0.48);
    border-left: 0;
  }

  .xf-culture-item h2 {
    font-size: 28px;
  }

  .xf-culture-item p {
    max-height: 120px;
    margin-top: 10px;
    opacity: 1;
    transform: none;
  }

  .xf-culture-cards {
    padding: 20px;
  }

  .xf-culture-cards .xf-culture-grid {
    gap: 12px;
  }

  .xf-culture-cards .xf-culture-item {
    min-height: 160px;
    padding: 24px;
  }

  .xf-culture-cards .xf-culture-item + .xf-culture-item {
    border-top: 1px solid rgba(255, 255, 255, 0.28);
  }
}

@media (prefers-reduced-motion: reduce) {
  .xf-culture-bg,
  .xf-culture-item::before,
  .xf-culture-item p {
    transition: none;
  }
}

/* 2026-08 homepage and about hierarchy refinements. */
.xf-culture-content {
  min-height: 330px;
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: flex-start;
}

@media (min-width: 768px) {
  body[data-page="about"] .xf-culture-content {
    transform: translateY(200px);
  }
}

/* 首页滚动后使用与内页一致的浅色导航状态。 */
body[data-page="home"] .xf-shared-header.navbar-scrolled .xf-shared-nav > a,
body[data-page="home"] .xf-shared-header.navbar-scrolled .xf-nav-dropdown-trigger {
  color: #353a43 !important;
  text-shadow: none !important;
}
body[data-page="home"] .xf-shared-header.navbar-scrolled .mobile-menu-btn {
  color: #353a43 !important;
}

.xf-team-metrics small {
  display: inline-block;
  margin: 0 0 0 5px;
  vertical-align: top;
  font-size: 0.32em !important;
  line-height: 1;
  font-weight: 400 !important;
}

.xf-team-metrics > div > .text-sm {
  font-size: 16px !important;
}

body[data-page="home"] .xf-stat-number {
  font-size: clamp(72px, 6.5vw, 104px) !important;
}

body[data-page="home"] .xf-stat-unit {
  align-self: flex-start;
  margin-top: 10px;
  padding-bottom: 0 !important;
  font-size: 20px !important;
  line-height: 1;
}

.xf-tech-specs .text-sm {
  font-size: 19px !important;
  line-height: 1.35;
}

.xf-tech-specs .text-xs {
  font-size: 16px !important;
  line-height: 1.5;
}

.xf-partner-grid > div > .text-xs.font-semibold {
  font-size: 16px !important;
}

.xf-section-label {
  color: #e63223 !important;
  background-color: transparent !important;
}

.xf-section-label::before {
  width: 2rem !important;
  height: 2px !important;
  background-color: #e63223 !important;
}

.xf-stats-grid > div {
  position: relative;
}

@media (min-width: 1024px) {
  .xf-stats-grid > div + div::before {
    position: absolute;
    top: 15%;
    bottom: 15%;
    left: 0;
    width: 1px;
    content: "";
    background-color: rgba(255, 255, 255, 0.08);
  }
}

.xf-tech-card {
  display: flex;
  flex-direction: column;
  min-height: 524px;
}

.xf-tech-card > .p-6 {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 30px 24px !important;
}

.xf-tech-card > .p-6 > h3 {
  margin-bottom: 8px !important;
  font-size: 22px !important;
  line-height: 1.35;
}

.xf-tech-card > .p-6 > h3 + p {
  margin-bottom: 20px !important;
}

.xf-tech-card > .p-6 > p:nth-of-type(2) {
  margin-bottom: 24px !important;
}

.xf-tech-card > .p-6 > a {
  margin-top: auto;
}

.xf-partner-grid {
  margin-bottom: 0 !important;
}

.news-card-hover {
  transition: border-color 240ms ease, box-shadow 200ms ease, transform 200ms ease !important;
}

.news-card-hover:hover {
  border-color: #e63223 !important;
}

.xf-news-tag {
  color: oklch(0.52 0.02 240) !important;
  background-color: oklch(0.96 0.004 240) !important;
  transition: color 200ms ease, background-color 200ms ease;
}

.news-card-hover:hover .xf-news-tag {
  color: #e63223 !important;
  background-color: rgba(230, 50, 35, 0.1) !important;
}

.xf-contact-title {
  white-space: normal;
  font-size: clamp(34px, calc(1.55vw + 8px), 38px) !important;
}

/* Copyright and filing number retain a compact legal-information scale. */
.footer-bottom p {
  font-size: 12px !important;
  line-height: 1.5 !important;
}

.xf-contact-copy {
  width: 70% !important;
  max-width: 70% !important;
}

.xf-footer-brand-copy {
  width: 80% !important;
  max-width: 80% !important;
}

.xf-about-intro-copy {
  width: 85%;
}

.xf-about-description {
  margin-bottom: 31px !important;
}

.xf-team-metrics > div > .text-sm {
  text-align: center;
  font-size: 16px !important;
}

body[data-page="about"] .relative.xf-fade-up.xf-delay-100 > .absolute.left-24 ~ .space-y-8 .w-24 {
  text-align: left !important;
}

.xf-glass-advantages > .space-y-4 {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.xf-glass-advantages > .space-y-4 > div {
  flex: 1;
  min-height: 104px;
}

.xf-team-metrics > div {
  align-items: center;
}

.xf-team-metrics .text-3xl {
  position: relative;
  display: inline-block;
  width: max-content;
  text-align: center;
}

.xf-team-metrics .text-3xl small {
  position: absolute;
  top: 0.08em;
  left: 100%;
  margin-left: 6px;
  white-space: nowrap;
}

.xf-team-metrics > div > .text-sm {
  width: 100%;
  text-align: center !important;
  font-size: 16px !important;
}

.xf-timeline .space-y-8 > * + * {
  margin-top: 38.4px !important;
}

@media (min-width: 1024px) {
  footer .container > .grid {
    grid-template-columns: minmax(280px, 1fr) minmax(560px, 1.7fr) minmax(280px, auto) !important;
    gap: clamp(40px, 5vw, 90px) !important;
  }

  footer .container > .grid > :nth-child(2) {
    justify-self: center;
    min-width: 180px;
    text-align: left;
  }

  footer .container > .grid > :nth-child(2) ul {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  footer .container > .grid > :nth-child(2) ul > li {
    margin-top: 0 !important;
    white-space: nowrap;
  }

  footer .container > .grid > :nth-child(3) {
    justify-self: end;
    text-align: left;
  }

  footer .container > .grid > :nth-child(3) li {
    justify-content: flex-start;
  }
}


/* === 静态站点补充样式 === */

/* 响应式导航 */
@media (max-width: 1023px) {
  .desktop-nav { display: none !important; }
  .desktop-cta { display: none !important; }
  .mobile-menu-btn { display: flex !important; }
}

@media (min-width: 1024px) {
  .desktop-nav { display: flex !important; }
  .desktop-cta { display: flex !important; }
  .mobile-menu-btn { display: none !important; }
}

/* 导航栏状态 */
.navbar-transparent {
  background: transparent !important;
  backdrop-filter: none !important;
  border-bottom: none !important;
  box-shadow: none !important;
}
.navbar-scrolled {
  background: rgba(255,255,255,0.97) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  border-bottom: 1px solid rgba(0,0,0,0.08) !important;
  box-shadow: 0 2px 20px rgba(0,0,0,0.06) !important;
}
.navbar-inner {
  background: rgba(255,255,255,0.97) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  border-bottom: 1px solid rgba(0,0,0,0.08) !important;
  box-shadow: 0 2px 20px rgba(0,0,0,0.06) !important;
}

/* 动画 */
@keyframes bounce {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}
.animate-bounce {
  animation: bounce 2s ease-in-out infinite;
}

@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(30px); }
  to { opacity: 1; transform: translateY(0); }
}

.fade-in-on-load {
  animation: fadeInUp 0.8s ease-out forwards;
}

/* group hover */
.group-hover\:scale-105 { transition: transform 300ms ease; }
.group:hover .group-hover\:scale-105 { transform: scale(1.05); }

/* 新闻卡片悬停 */
.news-card-hover { transition: box-shadow 200ms ease, transform 200ms ease; }
.news-card-hover:hover {
  box-shadow: 0 8px 32px rgba(0,0,0,0.08);
  transform: none;
}
.news-card-hover:hover .news-arrow { opacity: 1; }
.news-arrow { opacity: 0; transition: opacity 150ms ease; }

/* 移动端菜单 */
.mobile-menu {
  overflow: hidden;
  transition: max-height 300ms ease;
}

/* Flex 修复 */
.flex { min-height: 0; min-width: 0; }

/* Final shared-navigation and process-width overrides. */
.xf-shared-nav > a::after,
.xf-nav-dropdown-trigger::after {
  left: 0;
  right: 0;
  bottom: -7px;
  width: auto;
  height: 2px;
  background: #e63223;
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 260ms cubic-bezier(.16, 1, .3, 1);
}
.xf-shared-nav > a:hover::after,
.xf-shared-nav > a:focus-visible::after,
.xf-shared-nav > a.is-current::after,
.xf-nav-dropdown-trigger:hover::after,
.xf-nav-dropdown-trigger:focus-visible::after,
.xf-nav-dropdown-trigger.is-current::after {
  left: 0;
  right: 0;
  transform: scaleX(1);
}
.xf-nav-dropdown-menu {
  z-index: 100;
  width: 150px;
}
.xf-nav-dropdown-menu a {
  min-height: 46px;
  padding: 7px 12px;
}
.desktop-nav .xf-nav-dropdown-menu a::after {
  display: none !important;
}
.desktop-nav .xf-nav-dropdown-menu span,
.desktop-nav .xf-nav-dropdown-menu strong {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}
.xf-process-story .xf-route-option--embedded,
.xf-process-story .xf-code-flow,
.xf-process-story .xf-code-flow-grid {
  width: 100%;
  max-width: none;
  box-sizing: border-box;
}

/* Careers page refinement. */
body[data-page="careers"] .xf-career-about-media img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: center;
}
body[data-page="careers"] .xf-career-section-head {
  margin-bottom: 38px;
}
body[data-page="careers"] .xf-environment-media {
  aspect-ratio: 16 / 10;
}
body[data-page="careers"] .xf-environment-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
body[data-page="careers"] .xf-environment-pagination {
  display: none !important;
}
body[data-page="careers"] .xf-career-jobs .xf-core-intro {
  display: block;
  margin-bottom: 42px;
}
body[data-page="careers"] .xf-career-filter label {
  grid-template-columns: 18px 1fr;
  gap: 11px;
}
body[data-page="careers"] .xf-career-filter {
  border-top: 0;
  border-bottom: 0;
  padding-top: 0;
  padding-bottom: 0;
}
body[data-page="careers"] .xf-career-filter h3 {
  margin-bottom: 18px;
  color: #5d6470;
  font-family: inherit;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
}
body[data-page="careers"] .xf-career-filter label::before {
  display: none;
}
body[data-page="careers"] .xf-filter-check {
  width: 16px;
  height: 16px;
  border: 1px solid #a9afb8;
  border-radius: 50%;
  background: #fff;
}
body[data-page="careers"] .xf-career-filter input:checked + .xf-filter-check {
  border-color: #e63223;
  background: #fff;
}
body[data-page="careers"] .xf-career-filter input:checked + .xf-filter-check::after {
  content: '';
  position: absolute;
  top: 4px;
  left: 4px;
  width: 6px;
  height: 6px;
  border: 0;
  border-radius: 50%;
  background: #e63223;
  transform: none;
}
body[data-page="careers"] .xf-career-list {
  gap: 12px;
}
body[data-page="careers"] .xf-career-row {
  min-height: 116px;
  padding: 20px 28px;
}
body[data-page="careers"] .xf-career-card-copy small {
  margin-bottom: 9px;
  font-size: 13px;
}
body[data-page="careers"] .xf-career-card-copy strong {
  font-size: 22px;
}
body[data-page="careers"] .xf-career-card-copy > span {
  margin-top: 8px;
  font-size: 13px;
}
.xf-career-quote {
  position: relative;
  min-height: 620px;
  display: grid;
  align-items: center;
  overflow: hidden;
  background: #0f1423;
  color: #fff;
}
.xf-career-quote > img {
  position: absolute;
  inset: auto 0;
  top: -12%;
  width: 100%;
  height: 124%;
  object-fit: cover;
  object-position: center;
  transform: translate3d(0,var(--xf-parallax-y,0),0) scale(1.04);
  transform-origin: center;
  will-change: transform;
}
.xf-career-quote-inner {
  position: relative;
  z-index: 1;
  text-align: center;
}
.xf-career-quote blockquote {
  max-width: 1040px;
  margin: 0 auto;
  font-family: var(--xf-font-heading);
  font-size: clamp(34px, 2.7vw, 52px);
  font-weight: 600;
  line-height: 1.5;
  text-shadow:none;
}
.xf-career-quote-cta {
  min-width:132px;
  min-height:46px;
  margin-top:38px;
  padding:0 26px;
  border:1px solid rgba(255,255,255,.82);
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  color:#151922;
  font-size:14px;
  font-weight:500;
  line-height:1;
  transition:background .2s ease,color .2s ease,border-color .2s ease;
}
.xf-career-quote-cta:hover,
.xf-career-quote-cta:focus-visible {
  border-color:#fff;
  background:rgba(255,255,255,.9);
  color:#e63223;
}
.xf-career-quote-cta:focus-visible {
  outline:2px solid #fff;
  outline-offset:4px;
}
.xf-career-quote p {
  margin: 46px 0 0;
  color: rgba(255,255,255,.82);
  font-size: 15px;
  font-weight: 400;
  letter-spacing: .08em;
  text-shadow: 0 1px 12px rgba(0,0,0,.6);
}

body[data-page="careers"] .xf-job-body h3 {
  margin:26px 0 12px;
  padding-left:0;
  color:#e63223;
  font-size:14px;
  font-weight:600;
  line-height:1.7;
  text-align:left;
}
body[data-page="careers"] .xf-job-body ol {
  margin:0;
  padding:0;
  list-style:none;
  counter-reset:xf-job-item;
}
body[data-page="careers"] .xf-job-body li {
  position:relative;
  margin-bottom:9px;
  padding-left:26px;
  color:#555b66;
  font-size:14px;
  font-weight:400;
  line-height:1.7;
  counter-increment:xf-job-item;
}
body[data-page="careers"] .xf-job-body li::before {
  content:counter(xf-job-item) '.';
  position:absolute;
  left:0;
  top:0;
  color:#7a818c;
  font-variant-numeric:tabular-nums;
}
body[data-page="careers"] .xf-job-apply {
  padding:21px 30px;
}

@media (prefers-reduced-motion:reduce) {
  .xf-career-quote > img {
    transform:scale(1.04);
    will-change:auto;
  }
}

/* Core technology content refinements. */
.xf-nav-dropdown-menu strong {
  font-family: inherit;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.5;
}
.xf-package-design .xf-process-heading {
  margin-bottom: 38px;
  display: block;
}
.xf-package-quadrant {
  min-height: 258px;
  padding: 24px 28px;
}
.xf-package-bumping {
  padding-right: 94px;
  padding-bottom: 46px;
}
.xf-package-sip {
  padding-left: 94px;
  padding-bottom: 46px;
}
.xf-package-foplp {
  padding-right: 94px;
  padding-top: 46px;
}
.xf-package-copos {
  padding-left: 94px;
  padding-top: 46px;
}
.xf-package-visuals figcaption {
  margin-top: 0;
}
.xf-package-center {
  width: 158px;
}
.xf-simulation-section .xf-core-intro {
  margin-bottom: 36px;
}
.xf-simulation-section .xf-analysis-cell {
  border: 1px solid #e1e4e9;
  box-shadow: none;
  transition: border-color .25s ease;
}
.xf-simulation-section .xf-analysis-cell:hover {
  border-color: #e63223;
  box-shadow: none;
  transform: none;
}
.xf-process-story .xf-process-heading {
  display: block;
}
.xf-process-story .xf-route-option--embedded {
  background: transparent;
}
.xf-packaging-page .xf-page-banner p {
  max-width: 1120px;
}
.xf-foplp-page .xf-page-banner p {
  max-width: 100%;
  text-wrap: balance;
}
.xf-simulation-page .xf-page-banner p {
  max-width: 1120px;
}
.xf-foplp-page .xf-process-story + .xf-process-story {
  border-top:0;
}

body[data-page="technology"] .xf-package-quadrant-head span,
body[data-page="technology"] .xf-simulation-section .xf-analysis-cell h3 {
  border-color:rgba(230,50,35,.3);
  background:rgba(230,50,35,.08);
  color:#e63223;
}
body[data-page="technology"] .xf-simulation-section .xf-analysis-cell h3 {
  width:100%;
  min-height:0;
  margin:0 0 20px;
  padding:0 0 16px;
  border:0;
  border-bottom:1px solid #e2e5e9;
  border-radius:0;
  display:block;
  background:transparent;
  font-size:20px;
}
body[data-page="technology"] .xf-package-quadrant-head h3 {
  color:#e63223;
  font-family:var(--xf-font-heading);
}
body[data-page="technology"] .xf-package-center {
  border-width:3px;
  background:#e63223;
}
.xf-process-story .xf-process-heading h2 {
  font-family: var(--xf-font-heading) !important;
  font-size: var(--xf-title-section-size) !important;
  font-weight: var(--xf-title-weight) !important;
  line-height: var(--xf-title-line-height) !important;
  letter-spacing: var(--xf-title-letter-spacing) !important;
}
.xf-flow-image {
  aspect-ratio: 1.67 / 1;
}
.xf-flow-name {
  min-height: 39px;
}

/* Shared footer technology disclosure. */
.xf-footer-tech-group {
  margin-bottom:12px !important;
}
.xf-footer-tech-row {
  width:100%;
  padding:0;
  border:0;
  display:flex;
  align-items:center;
  gap:6px;
  background:transparent;
  color:rgba(255,255,255,.64);
  text-align:left;
  cursor:pointer;
}
.xf-footer-tech-row svg {
  flex:0 0 auto;
}
.xf-footer-tech-row svg {
  transition:transform .22s cubic-bezier(.16,1,.3,1);
}
.xf-footer-tech-group.is-open .xf-footer-tech-row svg {
  transform:rotate(180deg);
}
.xf-footer-tech-links {
  margin:4px 0 0;
  padding:6px 0 0 14px;
}
.xf-footer-tech-links[hidden] {
  display:none;
}
.xf-footer-tech-links li {
  margin-bottom:8px;
}
.xf-shared-footer button:focus-visible {
  outline:2px solid #e63223;
  outline-offset:2px;
}

/* Compact mobile system and overflow containment. */
@media (max-width:767px) {
  html,
  body {
    width:100%;
    max-width:100%;
    overflow-x:hidden;
  }
  body,
  main,
  header,
  footer {
    min-width:0;
  }
  img,
  video,
  canvas {
    max-width:100%;
  }
  .container {
    width:100%;
    max-width:100%;
    padding-left:20px !important;
    padding-right:20px !important;
    box-sizing:border-box;
  }
  main h1,
  .xf-page-title {
    font-size:40px !important;
    line-height:1.16 !important;
  }
  .xf-page-banner {
    padding:112px 0 48px !important;
  }
  .xf-page-banner-label {
    margin-bottom:14px;
  }
  .xf-page-title {
    margin-bottom:16px;
  }
  .xf-page-banner p {
    font-size:16px;
    line-height:1.7;
  }
  .py-24 {
    padding-top:64px !important;
    padding-bottom:64px !important;
  }
  .py-20 {
    padding-top:56px !important;
    padding-bottom:56px !important;
  }
  .py-16 {
    padding-top:48px !important;
    padding-bottom:48px !important;
  }
  .mb-12 {
    margin-bottom:32px !important;
  }
  .mb-8 {
    margin-bottom:24px !important;
  }
  .xf-core-section,
  .xf-process-story,
  .xf-package-design,
  .xf-simulation-section,
  .xf-career-about,
  .xf-career-environment,
  .xf-career-jobs {
    padding-top:64px !important;
    padding-bottom:72px !important;
  }
  .xf-core-intro,
  .xf-process-heading,
  .xf-career-section-head,
  .xf-career-jobs .xf-core-intro {
    margin-bottom:36px !important;
  }
  .xf-tech-switcher {
    padding:18px 0;
  }
  .xf-tech-switcher .container {
    gap:8px;
    justify-content:stretch;
  }
  .xf-tech-switcher a {
    min-width:0;
    min-height:42px;
    padding:0 10px;
    flex:1;
  }
  .xf-code-flow {
    width:100%;
    max-width:100%;
    padding:20px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
  }
  .xf-route-option,
  .xf-process-story .xf-route-option--embedded {
    padding:24px 20px 28px;
  }
  .xf-package-map {
    gap:12px;
  }
  .xf-package-quadrant,
  .xf-package-bumping,
  .xf-package-sip,
  .xf-package-foplp,
  .xf-package-copos {
    min-height:240px;
    padding:24px !important;
  }
  .xf-package-center {
    display:none;
  }
  .xf-package-quadrant-head {
    width:100%;
    align-items:flex-start;
  }
  .xf-package-quadrant-head h3,
  .xf-package-quadrant-head > div {
    width:100%;
    max-width:100%;
    text-align:left;
    justify-content:flex-start;
  }
  .xf-package-visuals {
    width:100%;
    gap:14px;
  }
  .xf-simulation-section .xf-analysis-cell {
    min-height:0;
    padding:26px 22px;
  }
  .xf-career-about-grid,
  .xf-career-browser {
    gap:36px;
  }
  .xf-home-year-card {
    right:0 !important;
  }
  .xf-environment-track {
    max-width:100%;
  }
  .xf-shared-footer-grid {
    gap:36px;
  }
  .xf-footer-logo {
    margin-bottom:18px;
  }
  .xf-shared-footer h2 {
    margin-bottom:16px;
  }
  .xf-footer-legal .container {
    gap:8px;
    padding-top:18px !important;
    padding-bottom:max(18px,env(safe-area-inset-bottom)) !important;
  }
}

/* 2026-08 navigation, homepage cards and compact mobile rhythm. */
.xf-tech-card {
  color:inherit;
  cursor:pointer;
  text-decoration:none;
}
.xf-tech-card > .p-6 > .xf-tech-card-title {
  margin-bottom:18px !important;
  font-size:28px !important;
  line-height:1.3;
}
.xf-tech-card > .p-6 > span:last-child {
  margin-top:auto;
}
.xf-tech-card:focus-visible {
  border-color:#e63223 !important;
  outline:2px solid #e63223 !important;
  outline-offset:4px;
}

/* Match the core-technology underline to every other top-level nav item. */
.xf-nav-dropdown-trigger::after {
  content:none !important;
}
.xf-nav-dropdown-trigger > span::after {
  content:"";
  position:absolute;
  right:0;
  bottom:-7px;
  left:0;
  height:2px;
  background:#e63223;
  transform:scaleX(0);
  transform-origin:center;
  transition:transform 260ms cubic-bezier(.16,1,.3,1);
}
.xf-nav-dropdown-trigger:hover > span::after,
.xf-nav-dropdown-trigger:focus-visible > span::after,
.xf-nav-dropdown-trigger.is-current > span::after {
  transform:scaleX(1);
}
.xf-nav-dropdown-menu {
  color:#242932;
}
.xf-nav-dropdown-menu a,
.xf-nav-dropdown-menu span,
.xf-nav-dropdown-menu strong {
  color:inherit !important;
  opacity:1 !important;
  text-shadow:none !important;
}

/* Simulation service titles share one readable scale. */
body[data-page="technology"] .xf-simulation-section .xf-analysis-cell h3 {
  font-size:28px !important;
}

/* Footer technology disclosure animates on the compositor-friendly grid track. */
.xf-footer-tech-reveal {
  display:grid;
  grid-template-rows:0fr;
  transition:grid-template-rows .32s cubic-bezier(.16,1,.3,1);
}
.xf-footer-tech-links {
  min-height:0;
  margin:0;
  padding:6px 0 0 14px;
  overflow:hidden;
  opacity:0;
  transform:translateY(-4px);
  transition:opacity .2s ease, transform .32s cubic-bezier(.16,1,.3,1);
}
.xf-footer-tech-group.is-open .xf-footer-tech-reveal {
  grid-template-rows:1fr;
}
.xf-footer-tech-group.is-open .xf-footer-tech-links {
  opacity:1;
  transform:translateY(0);
}

@media (max-width:767px) {
  :root {
    --xf-mobile-primary-title-size:36px;
    --xf-title-section-size:var(--xf-mobile-primary-title-size);
  }
  body[data-page="home"] main h1 {
    font-size:40px !important;
  }
  body:not([data-page="home"]) main h1,
  body:not([data-page="home"]) .xf-page-title {
    font-size:var(--xf-mobile-primary-title-size) !important;
    line-height:1.18 !important;
  }
  body:not([data-page="home"]) main h2 {
    font-size:var(--xf-mobile-primary-title-size) !important;
    line-height:1.22 !important;
  }
  body[data-page="about"] .xf-culture-item h2 {
    height:auto;
    font-size:30px !important;
    line-height:1.3 !important;
  }
  body[data-page="about"] .xf-culture-item p {
    width:100%;
    max-width:100%;
    font-size:18px !important;
    line-height:1.7 !important;
    overflow-wrap:anywhere;
  }

  body[data-page="about"] .xf-about-intro,
  body[data-page="about"] .xf-about-intro > *,
  body[data-page="about"] .xf-about-intro-copy,
  body[data-page="about"] .xf-about-intro-copy > div,
  body[data-page="about"] .xf-about-intro-copy p {
    width:calc(100vw - 40px) !important;
    max-width:calc(100vw - 40px) !important;
    min-width:0;
  }
  body[data-page="about"] .xf-about-intro-copy {
    padding-right:0;
    box-sizing:border-box;
  }
  body[data-page="about"] .xf-about-intro-copy p {
    overflow-wrap:anywhere;
    word-break:normal;
  }
  body[data-page="about"] .xf-about-intro {
    gap:34px !important;
  }

  #navbar a[href="index.html"] > img,
  .xf-shared-logo img {
    transform:translateY(10px);
  }
  .xf-shared-header > .container > .flex,
  #navbar > .container > .flex {
    height:80px !important;
  }
  .mobile-menu-btn {
    width:44px;
    height:44px;
    padding:0 !important;
    align-items:center;
    justify-content:center;
    transform:translateY(10px);
  }
  .mobile-menu-btn .menu-open-icon {
    width:35px;
    height:29px;
  }
  .mobile-menu-btn .menu-close-icon {
    width:29px;
    height:24px;
  }
  .xf-mobile-menu {
    margin-top:10px;
  }
  body:not([data-page="home"]) .xf-shared-header {
    height:90px;
  }

  /* Mobile core-technology disclosure. */
  .xf-mobile-menu details {
    width:100%;
  }
  .xf-mobile-menu details summary {
    position:relative;
    padding-right:32px;
    list-style:none;
  }
  .xf-mobile-menu details summary::-webkit-details-marker {
    display:none;
  }
  .xf-mobile-menu details summary::after {
    content:"";
    position:absolute;
    top:50%;
    right:4px;
    width:8px;
    height:8px;
    border-right:1.5px solid currentColor;
    border-bottom:1.5px solid currentColor;
    transform:translateY(-70%) rotate(45deg);
    transition:transform .3s cubic-bezier(.16,1,.3,1);
  }
  .xf-mobile-menu details[open] summary::after {
    transform:translateY(-30%) rotate(225deg);
  }
  .xf-mobile-menu details > .xf-mobile-tech-reveal,
  .xf-mobile-menu details:not([open]) > .xf-mobile-tech-reveal {
    padding-left:0;
    border-left-width:0 !important;
    border-left-style:none !important;
    display:grid;
    grid-template-rows:0fr;
    opacity:1;
    transition:grid-template-rows .36s cubic-bezier(.16,1,.3,1);
  }
  .xf-mobile-menu details[open] > .xf-mobile-tech-reveal {
    grid-template-rows:1fr;
  }
  .xf-mobile-menu details .xf-mobile-tech-reveal > div {
    position:relative;
    min-height:0;
    padding-left:16px;
    border-left-width:0 !important;
    border-left-style:none !important;
    overflow:hidden;
    opacity:0;
    transform:translateY(-4px);
    transition:opacity .22s ease, transform .36s cubic-bezier(.16,1,.3,1);
  }
  .xf-mobile-menu details .xf-mobile-tech-reveal > div::before {
    content:"";
    position:absolute;
    top:7.5px;
    bottom:7.5px;
    left:0;
    width:1px;
    background:#e63223;
  }
  .xf-mobile-menu details[open] .xf-mobile-tech-reveal > div {
    opacity:1;
    transform:translateY(0);
  }
  .xf-mobile-menu details .xf-mobile-tech-reveal > div > a {
    min-height:46px;
  }

  .xf-home-tech-heading {
    gap:22px !important;
    margin-bottom:39px !important;
  }
  .xf-home-tech-heading > p {
    max-width:100% !important;
    text-align:left !important;
  }

  .xf-home-partners {
    padding-top:44px !important;
    padding-bottom:44px !important;
  }
  .xf-home-partners .xf-partner-heading {
    margin-bottom:44px !important;
  }

  .xf-contact-cta > .container > .grid {
    gap:34px !important;
  }
  .xf-contact-cta .xf-contact-title,
  .xf-contact-cta .xf-contact-copy {
    width:100% !important;
    max-width:100% !important;
  }
  .xf-contact-cta .xf-contact-copy {
    margin-bottom:2px !important;
    text-wrap:pretty;
  }

  body[data-page="about"] .xf-team-section {
    padding-bottom:28px !important;
  }
  body[data-page="about"] .xf-about-profile-section {
    padding-top:41px !important;
    padding-bottom:41px !important;
  }
  body[data-page="about"] .xf-culture,
  body[data-page="about"] .xf-culture-grid {
    min-height:0 !important;
  }
  body[data-page="about"] .xf-culture-content {
    min-height:215px;
  }
  body[data-page="about"] .xf-culture-item {
    min-height:0;
  }
  body[data-page="about"] .xf-team-metrics {
    gap:19px !important;
    margin-bottom:0 !important;
  }
  body[data-page="about"] .xf-team-metrics > div {
    min-height:210px !important;
    padding-block:42px !important;
  }

  body[data-page="careers"] .xf-career-quote {
    min-height:390px;
  }
  body[data-page="careers"] .xf-career-about,
  body[data-page="careers"] .xf-career-jobs {
    padding-top:58px !important;
    padding-bottom:65px !important;
  }
  body[data-page="careers"] .xf-career-environment {
    padding-top:58px !important;
    padding-bottom:11px !important;
  }
  body[data-page="careers"] .xf-career-about-grid,
  body[data-page="careers"] .xf-career-browser {
    gap:32px;
  }
  body[data-page="careers"] .xf-career-section-head,
  body[data-page="careers"] .xf-career-jobs .xf-core-intro {
    margin-bottom:32px !important;
  }
  body[data-page="careers"] .xf-career-about-copy h3 {
    margin-top:14px;
  }
  body[data-page="careers"] .xf-career-about-copy > p {
    max-width:100%;
    font-size:16px;
  }
  body[data-page="technology"] .xf-simulation-section .xf-analysis-cell h3 {
    font-size:24px !important;
  }
  body[data-page="technology"] .xf-process-story {
    padding-top:56px !important;
    padding-bottom:62px !important;
  }
  body[data-page="technology"] .xf-process-story .xf-process-heading {
    margin-bottom:30px !important;
  }
  body[data-page="technology"] .xf-process-story .xf-route-option--embedded {
    padding:20px 18px 24px;
  }
  body[data-page="technology"] .xf-process-story .xf-code-flow {
    padding:16px;
  }
}

@media (min-width:1024px) {
  .xf-shared-contact {
    min-width:125px;
    justify-content:center;
  }
}

/* FOPLP alternate process presentation. */
.xf-process-story-v2 {
  padding-bottom:0;
  background:#fff;
}
.xf-process-story-v2 .xf-process-heading {
  transform:translateY(-15px);
}
.xf-process-story-v2 .xf-route-option--embedded {
  min-height:0;
  margin-bottom:72px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr);
  column-gap:clamp(64px,7vw,132px);
}
.xf-process-story-v2 .xf-route-option-head img {
  max-height:280px;
  padding:20px;
  border-radius:5px;
  background:#f1f3f5;
  box-sizing:border-box;
}
@media (min-width:768px) {
  .xf-process-story-v2 .xf-route-option--embedded .xf-route-option-head img {
    height:350px;
    max-height:350px;
    align-self:stretch;
  }
}
.xf-process-story-v2 .xf-route-detail {
  align-self:stretch;
  grid-template-columns:112px minmax(0,1fr);
  gap:0 32px;
  position:relative;
}
.xf-process-story-v2 .xf-route-detail dt,
.xf-process-story-v2 .xf-route-detail dd {
  min-height:112px;
  padding:30px 0;
  display:flex;
  align-items:flex-start;
}
.xf-process-story-v2 .xf-route-detail dt {
  color:#e63223;
  font-size:16px;
  font-weight:600;
}
.xf-process-story-v2 .xf-route-detail dd {
  position:relative;
  color:#3f4650;
  font-size:16px;
  line-height:1.8;
}
.xf-process-story-v2 .xf-route-detail dd::after {
  content:"";
  position:absolute;
  right:0;
  bottom:0;
  left:-144px;
  height:1px;
  background:#dfe3e8;
}
.xf-process-story-v2 .xf-route-detail ol { padding-left:20px; list-style:disc; counter-reset:none; }
.xf-process-story-v2 .xf-route-detail li { padding-left:2px; counter-increment:none; }
.xf-process-story-v2 .xf-route-detail li::before { content:none; }
.xf-process-story-v2 .xf-route-detail li::before {
  color:#e63223;
}
.xf-process-flow-band {
  width:100%;
  min-height:430px;
  padding:68px 0 76px;
  background:#f1f3f5;
}
.xf-process-flow-label {
  margin-bottom:30px;
  color:#151922;
  font-family:var(--xf-font-heading);
  font-size:30px;
  font-weight:var(--xf-title-weight);
  line-height:1.25;
}
.xf-process-story-v2 .xf-code-flow {
  width:100%;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  overflow:visible;
}
.xf-process-story-v2 .xf-flow-image {
  border-radius:5px 5px 0 0;
  background:#fff;
}
.xf-process-story-v2 .xf-flow-name { border-radius:0 0 5px 5px; }
.xf-process-story-v2 .xf-flow-step {
  align-self:center;
}
.xf-process-story-v2 .xf-flow-image {
  border-radius:5px;
  background:#fff;
  border:0;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  flex:0 0 auto;
  width:100%;
  aspect-ratio:1.67 / 1;
}
.xf-process-story-v2 .xf-flow-image img {
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}
.xf-process-story-v2 .xf-flow-name {
  min-height:0;
  width:94%;
  max-width:94%;
  margin:1px auto 0;
  padding:4px 8px;
  border-radius:999px;
  display:inline-flex;
  flex:0 0 auto;
  background:#e63223;
  color:#fff;
  white-space:nowrap;
  font-size:12px;
  line-height:1.3;
  justify-content:center;
  box-sizing:border-box;
}
.xf-process-story-v2 .xf-route-detail dt:last-of-type {
  transform:translateY(8px);
}
.xf-process-story-v2 .xf-route-detail dd:last-child {
  transform:translateY(8px);
}
.xf-process-story-v2 .xf-route-detail dd:last-child::after {
  transform:translateY(-8px);
}
.xf-foplp-page .xf-chip-first-story .xf-process-flow-band,
.xf-foplp-page .xf-chip-first-story .xf-process-flow-band > .container,
.xf-foplp-page .xf-chip-first-story .xf-code-flow {
  width:100%;
  max-width:none;
}
.xf-chip-first-story .xf-code-flow-grid { transform:translateY(30px); }
.xf-chip-first-story .xf-process-flow-band { padding-bottom:87px; }
.xf-process-story-v2.xf-chip-first-story .xf-process-flow-band > .container {
  width:100%;
  max-width:1536px !important;
  padding-left:2rem;
  padding-right:2rem;
  box-sizing:border-box;
  margin-left:auto;
  margin-right:auto;
}
.xf-chip-first-story .xf-process-flow-label {
  width:100%;
  box-sizing:border-box;
}
body[data-page="home"] .xf-tech-card > .relative.h-52 {
  height:250px !important;
}
.xf-home-honor { overflow:hidden; }
.xf-honor-heading-copy { max-width:none; white-space:nowrap; }
.xf-honor-tabs { display:flex; gap:10px; margin-bottom:28px; }
.xf-honor-tabs button { min-width:128px; min-height:44px; padding:0 20px; border:1px solid #dfe3e8; border-radius:999px; background:#fff; color:#59616c; font-size:14px; transition:color .2s ease,border-color .2s ease,background .2s ease; }
.xf-honor-tabs button:hover,.xf-honor-tabs button.is-active { border-color:#e63223; background:#e63223; color:#fff; }
.xf-honor-panels { position:relative; }
.xf-honor-panel { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr); min-height:500px; background:#fff; border:1px solid #e1e5ea; border-radius:4px; overflow:hidden; }
.xf-honor-panel[hidden] { display:none; }
.xf-honor-media { min-height:100%; background:#fff; display:flex; align-items:center; justify-content:center; border-radius:0; overflow:hidden; }
.xf-honor-media img { display:block; width:100%; height:100%; min-height:500px; object-fit:cover; border:0; border-radius:0; }
.xf-honor-copy { padding:56px clamp(28px,5vw,76px); align-self:center; }
.xf-honor-copy h3 { margin:0 0 26px; color:#151922; font-size:30px; font-weight:600; }
.xf-honor-copy ul { margin:24px 0 0; padding:0; list-style:none; color:#59616c; font-size:15px; line-height:1.85; }
.xf-honor-copy li { position:relative; padding-left:18px; margin-bottom:12px; }
.xf-honor-copy li::before { content:""; position:absolute; left:0; top:.8em; width:5px; height:5px; border-radius:50%; background:#e63223; }
.xf-honor-copy li strong { color:#e63223; font-weight:600; }
.xf-index2-honor-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.xf-index2-honor-card { min-width:0; overflow:hidden; border:1px solid #e1e5ea; border-radius:4px; background:#fff; }
.xf-index2-honor-media { aspect-ratio:1.48 / 1; overflow:hidden; background:#fff; }
.xf-index2-honor-media img { display:block; width:100%; height:100%; border:0; border-radius:0; object-fit:cover; }
.xf-index2-honor-copy { padding:28px 28px 32px; }
.xf-index2-honor-copy h3 { margin:0 0 18px; color:#151922; font-size:24px; font-weight:600; }
.xf-index2-honor-copy ul { margin:0; padding:0; list-style:none; color:#59616c; font-size:15px; line-height:1.8; }
.xf-index2-honor-copy li { position:relative; margin-bottom:10px; padding-left:16px; }
.xf-index2-honor-copy li:last-child { margin-bottom:0; }
.xf-index2-honor-copy li::before { content:""; position:absolute; left:0; top:.8em; width:5px; height:5px; border-radius:50%; background:#e63223; }
.xf-index2-honor-copy strong { color:#e63223; font-weight:600; }
@media (max-width:767px) { .xf-honor-heading-copy { white-space:normal; text-align:left; }.xf-honor-tabs { gap:6px; }.xf-honor-tabs button { min-width:0; flex:1; padding:0 10px; }.xf-honor-panel { grid-template-columns:1fr; min-height:0; }.xf-honor-media,.xf-honor-media img { border-radius:0; }.xf-honor-media img { min-height:240px; max-height:280px; }.xf-honor-copy { padding:32px 24px 38px; }.xf-honor-copy h3 { font-size:26px; } }
@media (max-width:1023px) { .xf-index2-honor-grid { grid-template-columns:1fr; gap:20px; }.xf-index2-honor-media { aspect-ratio:1.7 / 1; }.xf-index2-honor-copy { padding:26px 24px 30px; } }
}

@media (max-width:767px) {
  .xf-process-story-v2 .xf-route-option--embedded {
    margin-bottom:48px;
    padding:0;
    grid-template-columns:1fr;
  }
  .xf-process-story-v2 .xf-route-detail {
    grid-template-columns:88px minmax(0,1fr);
    gap:0 18px;
  }
  .xf-process-story-v2 .xf-route-detail dt,
  .xf-process-story-v2 .xf-route-detail dd {
    min-height:128px;
    padding:22px 0;
    font-size:15px;
  }
  .xf-process-story-v2 .xf-route-detail dd::after { left:-106px !important; }
  .xf-process-flow-band {
    min-height:360px;
    padding:48px 0 56px;
    background:#f1f3f5;
  }
  .xf-process-story-v2 .xf-code-flow {
    padding:0;
    overflow-x:auto;
  }
  .xf-process-story-v2 .xf-flow-step {
    align-self:center;
  }
  .xf-process-story-v2 .xf-flow-image {
    border-radius:5px;
    background:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
  }
  .xf-process-story-v2 .xf-flow-image img {
    width:100%;
    height:100%;
    object-fit:contain;
  }
  .xf-process-story-v2 .xf-route-option-head img {
    padding:14px;
    border-radius:5px;
    background:#f1f3f5;
  }
  .xf-process-story-v2 .xf-route-detail dt:last-of-type {
    transform:translateY(8px);
  }
  .xf-process-story-v2 .xf-route-detail dd:last-child {
    transform:translateY(8px);
  }
  .xf-process-story-v2 .xf-route-detail dd:last-child::after {
    transform:translateY(-8px);
  }
}

/* Requested homepage, contact, culture, and footer refinements. */
body > footer,
body > footer[style*="oklch(0.14 0.025 240)"],
.xf-shared-footer {
  background-color: #20318a !important;
}

body[data-page="home"] .xf-hero-dots-wrap {
  display: none !important;
}

body[data-page="home"] .xf-tech-card {
  cursor: default;
}

body[data-page="about"] .xf-culture-icon {
  width: 28px;
  height: 28px;
  margin: 0 auto 16px;
  filter: brightness(0) invert(1);
}

body[data-page="about"] .xf-culture-item h2,
body[data-page="about"] .xf-culture-item p {
  font-size: 16px !important;
}

body[data-page="about"] .xf-culture-item h2 {
  height: auto;
  min-height: 0;
  line-height: 1.5 !important;
}

/* 关于我们：企业文化固定为左图右文，不切换背景图。 */
body[data-page="about"] .xf-culture {
  height: auto !important;
  min-height: 0 !important;
  padding-bottom: 80px !important;
  background: #fff !important;
  color: oklch(0.13 0.02 240);
}

body[data-page="about"] .xf-culture-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 64px;
  min-height: 0;
  align-items: stretch;
}

body[data-page="about"] .xf-about-media {
  width: 100%;
  height: 100%;
  min-height: 0;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border-radius: 4px;
}

body[data-page="about"] .xf-about-media-image,
body[data-page="about"] .xf-culture-image img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 0;
  object-fit: cover;
  border-radius: inherit;
}

body[data-page="about"] .xf-culture-list {
  display: grid;
  grid-template-rows: repeat(3, minmax(0, 1fr));
  width: 100%;
  height: 100%;
  aspect-ratio: 4 / 3;
  max-width: 100%;
  min-width: 0;
  background: #fff;
}

body[data-page="about"] .xf-culture-row {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  padding: 15px 0;
  border-bottom: 1px solid rgba(15, 20, 35, 0.16);
}

body[data-page="about"] .xf-culture-row:last-child {
  border-bottom: 0;
}

body[data-page="about"] .xf-culture-row-title {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}

body[data-page="about"] .xf-culture-row .xf-culture-icon {
  width: 49px;
  height: 49px;
  margin: 0;
  flex: 0 0 49px;
  filter: none;
}

body[data-page="about"] .xf-culture-row h2,
body[data-page="about"] .xf-culture-row p {
  font-size: 16px !important;
}

body[data-page="about"] .xf-culture-row h2 {
  font-size: 20px !important;
  margin: 0;
  height: auto;
  min-height: 0;
  color: #e63223 !important;
  line-height: 1.5 !important;
}

body[data-page="about"] .xf-culture-row p {
  max-width: 38em;
  margin: 0;
  overflow: visible;
  color: oklch(0.45 0.02 240) !important;
  opacity: 1;
  transform: none;
  line-height: 1.55 !important;
}

body[data-page="about"] .xf-culture-mission-copy {
  display: flex;
  align-items: center;
  gap: 1em;
  max-width: 100%;
  white-space: nowrap;
}

body[data-page="about"] .xf-culture {
  border-bottom: 0;
}

body[data-page="about"] .xf-culture-values-list {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  min-width: 0;
  color: oklch(0.45 0.02 240) !important;
  white-space: nowrap;
}

body[data-page="about"] .xf-culture-values-list span {
  flex: 0 0 auto;
}

body[data-page="about"] .xf-culture-values-list span + span {
  position: relative;
  margin-left: clamp(8px, 1.5vw, 22px);
  padding-left: clamp(8px, 1.5vw, 22px);
}

body[data-page="about"] .xf-culture-values-list span + span::before {
  content: "";
  position: absolute;
  top: 10%;
  left: 0;
  height: 64%;
  border-left: 1px solid rgba(15, 20, 35, 0.2);
}

@media (min-width: 768px) and (max-width: 1199px) {
  body[data-page="about"] .xf-culture-layout {
    gap: 34px;
  }

  body[data-page="about"] .xf-culture-row {
    padding-top: 12px;
    padding-bottom: 12px;
  }

  body[data-page="about"] .xf-culture-values-list span + span {
    margin-left: 4px;
    padding-left: 4px;
  }
}

@media (max-width: 767px) {
  body[data-page="about"] .xf-culture-layout {
    grid-template-columns: 1fr;
    gap: 34px;
  }

  body[data-page="about"] .xf-about-media {
    height: auto;
    aspect-ratio: 4 / 3;
  }

  body[data-page="about"] .xf-culture-list {
    display: block;
    height: auto;
    aspect-ratio: auto;
  }

  body[data-page="about"] .xf-culture-row {
    min-height: 160px;
    padding: 28px 0;
  }

  body[data-page="about"] .xf-culture-values-list {
    font-size: 12px !important;
  }

body[data-page="about"] .xf-culture-values-list span + span {
  margin-left: 3px;
  padding-left: 3px;
  }
}

@media (min-width: 768px) {
  body[data-page="contact"] .xf-service-email-offset {
    transform: translateX(12px);
  }
}

@media (max-width: 767px) {
  body[data-page="contact"] .xf-service-email-offset {
    transform: translateX(6px);
  }
}

@media (min-width: 1024px) {
  body[data-page="product-services"] .xf-page-banner p {
    width: max-content;
    max-width: 100%;
    white-space: nowrap;
  }
}

@media (max-width: 1023px) {
  body[data-page="product-services"] .xf-page-banner p {
    width: auto;
    max-width: 100%;
    white-space: normal;
  }
}

@media (min-width: 768px) {
  body[data-page="contact"] .xf-contact-cards {
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 0.9fr) minmax(0, 1.4fr);
  }

  body[data-page="contact"] .xf-contact-email-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: 16px;
    min-width: 0;
  }

  body[data-page="contact"] .xf-contact-email-item {
    min-width: 0;
  }

  body[data-page="contact"] .xf-contact-email-address {
    font-size: clamp(12px, 1.05vw, 16px);
    white-space: nowrap;
  }
}

@media (max-width: 767px) {
  body[data-page="contact"] .xf-contact-email-list {
    display: grid;
    gap: 4px;
  }

  body[data-page="contact"] .xf-contact-email-address {
    overflow-wrap: anywhere;
  }
}
