*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:after,:before{border-width:0;border-style:solid;border-color:hsl(var(--border))}:root{--background:0 0% 100%;--foreground:222.2 84% 4.9%;--card:0 0% 100%;--card-foreground:222.2 84% 4.9%;--popover:0 0% 100%;--popover-foreground:222.2 84% 4.9%;--primary:222.2 47.4% 11.2%;--primary-foreground:210 40% 98%;--secondary:210 40% 96.1%;--secondary-foreground:222.2 47.4% 11.2%;--muted:210 40% 96.1%;--muted-foreground:215.4 16.3% 46.9%;--accent:210 40% 96.1%;--accent-foreground:222.2 47.4% 11.2%;--destructive:0 84.2% 60.2%;--destructive-foreground:210 40% 98%;--border:214.3 31.8% 91.4%;--input:214.3 31.8% 91.4%;--ring:222.2 84% 4.9%;--chart-1:221 83% 43%;--chart-2:173 58% 39%;--chart-3:43 74% 46%;--chart-4:27 87% 47%;--chart-5:262 52% 47%;--sidebar-background:0 0% 98%;--sidebar-foreground:240 5.3% 26.1%;--sidebar-primary:240 5.9% 10%;--sidebar-primary-foreground:0 0% 98%;--sidebar-accent:240 4.8% 95.9%;--sidebar-accent-foreground:240 5.9% 10%;--sidebar-border:220 13% 91%;--sidebar-ring:217.2 91.2% 59.8%}.dark{--background:222.2 84% 4.9%;--foreground:210 40% 98%;--card:222.2 84% 4.9%;--card-foreground:210 40% 98%;--popover:222.2 84% 4.9%;--popover-foreground:210 40% 98%;--primary:210 40% 98%;--primary-foreground:222.2 47.4% 11.2%;--secondary:217.2 32.6% 17.5%;--secondary-foreground:210 40% 98%;--muted:217.2 32.6% 17.5%;--muted-foreground:215 20.2% 65.1%;--accent:217.2 32.6% 17.5%;--accent-foreground:210 40% 98%;--destructive:0 62.8% 30.6%;--destructive-foreground:210 40% 98%;--border:217.2 32.6% 17.5%;--input:217.2 32.6% 17.5%;--ring:212.7 26.8% 83.9%;--chart-1:220 70% 50%;--chart-2:160 60% 45%;--chart-3:30 80% 55%;--chart-4:280 65% 60%;--chart-5:340 75% 55%;--sidebar-background:240 5.9% 10%;--sidebar-foreground:240 4.8% 95.9%;--sidebar-primary:224.3 76.3% 48%;--sidebar-primary-foreground:0 0% 100%;--sidebar-accent:240 3.7% 15.9%;--sidebar-accent-foreground:240 4.8% 95.9%;--sidebar-border:240 3.7% 15.9%;--sidebar-ring:217.2 91.2% 59.8%}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.\!visible{visibility:visible!important}.visible{visibility:visible}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-x-0{left:0;right:0}.inset-y-0{top:0;bottom:0}.bottom-0{bottom:0}.left-0{left:0}.left-0\.5{left:.125rem}.left-2{left:.5rem}.left-\[50\%\]{left:50%}.right-0{right:0}.right-1{right:.25rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1\.5{top:.375rem}.top-1\/2{top:50%}.top-3\.5{top:.875rem}.top-4{top:1rem}.top-\[50\%\]{top:50%}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.col-span-2{grid-column:span 2/span 2}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-3\.5{margin-left:.875rem;margin-right:.875rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-0\.5{margin-top:.125rem;margin-bottom:.125rem}.my-1{margin-top:.25rem;margin-bottom:.25rem}.-ml-1{margin-left:-.25rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.ml-1{margin-left:.25rem}.ml-1\.5{margin-left:.375rem}.ml-2{margin-left:.5rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-2\.5{margin-top:.625rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-auto{aspect-ratio:auto}.aspect-square{aspect-ratio:1/1}.aspect-video{aspect-ratio:16/9}.size-10{width:2.5rem;height:2.5rem}.size-12{width:3rem;height:3rem}.size-2{width:.5rem;height:.5rem}.size-3{width:.75rem;height:.75rem}.size-3\.5{width:.875rem;height:.875rem}.size-4{width:1rem;height:1rem}.size-5{width:1.25rem;height:1.25rem}.size-6{width:1.5rem;height:1.5rem}.size-8{width:2rem;height:2rem}.h-1{height:.25rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-24{height:6rem}.h-28{height:7rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-36{height:9rem}.h-4{height:1rem}.h-40{height:10rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[1px\]{height:1px}.h-\[260px\]{height:260px}.h-\[70vh\]{height:70vh}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-full{height:100%}.h-px{height:1px}.h-svh{height:100svh}.max-h-\[--radix-select-content-available-height\]{max-height:var(--radix-select-content-available-height)}.max-h-\[720px\]{max-height:720px}.max-h-\[85vh\]{max-height:85vh}.max-h-\[var\(--radix-dropdown-menu-content-available-height\)\]{max-height:var(--radix-dropdown-menu-content-available-height)}.min-h-0{min-height:0}.min-h-svh{min-height:100svh}.w-0{width:0}.w-0\.5{width:.125rem}.w-1{width:.25rem}.w-1\/2{width:50%}.w-10{width:2.5rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-2\/3{width:66.666667%}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-4{width:1rem}.w-5{width:1.25rem}.w-56{width:14rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-9{width:2.25rem}.w-\[--sidebar-width\]{width:var(--sidebar-width)}.w-\[1px\]{width:1px}.w-auto{width:auto}.w-full{width:100%}.min-w-0{min-width:0}.min-w-5{min-width:1.25rem}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-\[--skeleton-width\]{max-width:var(--skeleton-width)}.max-w-\[80\%\]{max-width:80%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.origin-\[--radix-dropdown-menu-content-transform-origin\]{transform-origin:var(--radix-dropdown-menu-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-x-1\/2,.-translate-x-px{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-px{--tw-translate-x:-1px}.-translate-y-1\/2{--tw-translate-y:-50%}.-translate-y-1\/2,.translate-x-\[-50\%\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\[-50\%\]{--tw-translate-x:-50%}.translate-x-px{--tw-translate-x:1px}.translate-x-px,.translate-y-\[-50\%\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[-50\%\]{--tw-translate-y:-50%}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\[7rem_1fr\]{grid-template-columns:7rem 1fr}.grid-cols-\[repeat\(auto-fill\2c minmax\(220px\2c 1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-border>:not([hidden])~:not([hidden]){border-color:hsl(var(--border))}.self-start{align-self:flex-start}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[2px\]{border-radius:2px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:.75rem}.rounded-bl-sm{border-bottom-left-radius:calc(var(--radius) - 4px)}.rounded-br-sm{border-bottom-right-radius:calc(var(--radius) - 4px)}.border{border-width:1px}.border-2{border-width:2px}.border-\[1\.5px\]{border-width:1.5px}.border-\[3px\]{border-width:3px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-\[--color-border\]{border-color:var(--color-border)}.border-amber-200{--tw-border-opacity:1;border-color:rgb(253 230 138/var(--tw-border-opacity,1))}.border-amber-300{--tw-border-opacity:1;border-color:rgb(252 211 77/var(--tw-border-opacity,1))}.border-background{border-color:hsl(var(--background))}.border-border{border-color:hsl(var(--border))}.border-border\/40{border-color:hsl(var(--border)/.4)}.border-border\/50{border-color:hsl(var(--border)/.5)}.border-border\/60{border-color:hsl(var(--border)/.6)}.border-destructive\/30{border-color:hsl(var(--destructive)/.3)}.border-destructive\/40{border-color:hsl(var(--destructive)/.4)}.border-emerald-200{--tw-border-opacity:1;border-color:rgb(167 243 208/var(--tw-border-opacity,1))}.border-emerald-300{--tw-border-opacity:1;border-color:rgb(110 231 183/var(--tw-border-opacity,1))}.border-input{border-color:hsl(var(--input))}.border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.border-sidebar-border{border-color:hsl(var(--sidebar-border))}.border-transparent{border-color:transparent}.border-t-primary{border-top-color:hsl(var(--primary))}.bg-\[--color-bg\]{background-color:var(--color-bg)}.bg-amber-100{--tw-bg-opacity:1;background-color:rgb(254 243 199/var(--tw-bg-opacity,1))}.bg-amber-50{--tw-bg-opacity:1;background-color:rgb(255 251 235/var(--tw-bg-opacity,1))}.bg-amber-50\/50{background-color:rgba(255,251,235,.5)}.bg-amber-600{--tw-bg-opacity:1;background-color:rgb(217 119 6/var(--tw-bg-opacity,1))}.bg-background{background-color:hsl(var(--background))}.bg-black\/80{background-color:rgba(0,0,0,.8)}.bg-border{background-color:hsl(var(--border))}.bg-card{background-color:hsl(var(--card))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-destructive\/5{background-color:hsl(var(--destructive)/.05)}.bg-emerald-50{--tw-bg-opacity:1;background-color:rgb(236 253 245/var(--tw-bg-opacity,1))}.bg-emerald-50\/60{background-color:rgba(236,253,245,.6)}.bg-foreground\/10{background-color:hsl(var(--foreground)/.1)}.bg-muted{background-color:hsl(var(--muted))}.bg-muted-foreground\/50{background-color:hsl(var(--muted-foreground)/.5)}.bg-muted\/30{background-color:hsl(var(--muted)/.3)}.bg-muted\/40{background-color:hsl(var(--muted)/.4)}.bg-muted\/50{background-color:hsl(var(--muted)/.5)}.bg-popover{background-color:hsl(var(--popover))}.bg-primary{background-color:hsl(var(--primary))}.bg-primary\/10{background-color:hsl(var(--primary)/.1)}.bg-primary\/20{background-color:hsl(var(--primary)/.2)}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.bg-secondary{background-color:hsl(var(--secondary))}.bg-sidebar{background-color:hsl(var(--sidebar-background))}.bg-sidebar-border{background-color:hsl(var(--sidebar-border))}.bg-transparent{background-color:transparent}.fill-current{fill:currentColor}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pl-5{padding-left:1.25rem}.pl-8{padding-left:2rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pt-1\.5{padding-top:.375rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-right{text-align:right}.align-baseline{vertical-align:baseline}.align-middle{vertical-align:middle}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[0\.85em\]{font-size:.85em}.text-\[0\.9em\]{font-size:.9em}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-amber-700{--tw-text-opacity:1;color:rgb(180 83 9/var(--tw-text-opacity,1))}.text-amber-800{--tw-text-opacity:1;color:rgb(146 64 14/var(--tw-text-opacity,1))}.text-amber-900{--tw-text-opacity:1;color:rgb(120 53 15/var(--tw-text-opacity,1))}.text-amber-900\/80{color:rgba(120,53,15,.8)}.text-card-foreground{color:hsl(var(--card-foreground))}.text-destructive{color:hsl(var(--destructive))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-emerald-600{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity,1))}.text-emerald-700{--tw-text-opacity:1;color:rgb(4 120 87/var(--tw-text-opacity,1))}.text-emerald-800{--tw-text-opacity:1;color:rgb(6 95 70/var(--tw-text-opacity,1))}.text-emerald-900{--tw-text-opacity:1;color:rgb(6 78 59/var(--tw-text-opacity,1))}.text-emerald-900\/70{color:rgba(6,78,59,.7)}.text-emerald-900\/80{color:rgba(6,78,59,.8)}.text-foreground{color:hsl(var(--foreground))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-popover-foreground{color:hsl(var(--popover-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-sidebar-foreground{color:hsl(var(--sidebar-foreground))}.text-sidebar-foreground\/70{color:hsl(var(--sidebar-foreground)/.7)}.underline{text-decoration-line:underline}.no-underline{text-decoration-line:none}.underline-offset-2{text-underline-offset:2px}.underline-offset-4{text-underline-offset:4px}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-\[0_0_0_1px_hsl\(var\(--sidebar-border\)\)\]{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_0_0_1px_hsl\(var\(--sidebar-border\)\)\]{--tw-shadow:0 0 0 1px hsl(var(--sidebar-border));--tw-shadow-colored:0 0 0 1px var(--tw-shadow-color)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-lg,.shadow-md{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-none{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000}.shadow-none,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring,.ring-1{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-inset{--tw-ring-inset:inset}.ring-border{--tw-ring-color:hsl(var(--border))}.ring-sidebar-ring{--tw-ring-color:hsl(var(--sidebar-ring))}.ring-offset-background{--tw-ring-offset-color:hsl(var(--background))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[left\2c right\2c width\]{transition-property:left,right,width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[margin\2c opacity\]{transition-property:margin,opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[width\2c height\2c padding\]{transition-property:width,height,padding;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[width\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-linear{transition-timing-function:linear}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--blue:#1a56db;--blue-dark:#1342b0;--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-400:#9ca3af;--gray-600:#4b5563;--gray-800:#1f2937;--red:#dc2626;--green:#16a34a;--white:#fff;--radius:8px;--shadow:0 1px 3px rgba(0,0,0,.1),0 1px 2px rgba(0,0,0,.06)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--gray-50);color:var(--gray-800);font-size:15px;line-height:1.6}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:480px;margin:0 auto;padding:2rem 1rem}.card{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);padding:2rem}.logo{text-align:center;margin-bottom:1.5rem}.logo h1{font-size:1.4rem;font-weight:700;color:var(--blue)}.logo p{font-size:.85rem;color:var(--gray-600)}h2{font-size:1.2rem;font-weight:600;margin-bottom:1.25rem;color:var(--gray-800)}.form-group{margin-bottom:1rem}label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.375rem;color:var(--gray-600)}input[type=email],input[type=number],input[type=password],input[type=text],select{width:100%;padding:.625rem .75rem;border:1px solid var(--gray-200);border-radius:var(--radius);font-size:.9375rem;outline:none;transition:border-color .15s;background:var(--white)}input:focus,select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(26,86,219,.12)}.btn{display:block;width:100%;padding:.7rem 1rem;background:var(--blue);color:var(--white);border:none;border-radius:var(--radius);font-size:.9375rem;font-weight:600;cursor:pointer;transition:background .15s;text-align:center}.btn:hover{background:var(--blue-dark)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-outline{background:transparent;color:var(--blue);border:1.5px solid var(--blue)}.btn-outline:hover{background:var(--gray-50)}.error-msg{background:#fef2f2;border:1px solid #fecaca;color:var(--red);border-radius:var(--radius)}.error-msg,.success-msg{padding:.6rem .875rem;font-size:.875rem;margin-bottom:1rem}.success-msg{background:#f0fdf4;border:1px solid #bbf7d0;color:var(--green);border-radius:var(--radius)}.text-center{text-align:center}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.text-sm{font-size:.875rem;color:var(--gray-600)}.dashboard-header{display:flex;align-items:center;justify-content:space-between;background:var(--white);border-bottom:1px solid var(--gray-200);padding:.875rem 1.5rem;margin-bottom:2rem}.dashboard-header .brand{font-weight:700;color:var(--blue);font-size:1.1rem}.dashboard-grid{max-width:960px;margin:0 auto;padding:0 1rem}.info-card{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.5rem;margin-bottom:1.5rem}.info-card h3{font-size:.875rem;text-transform:uppercase;letter-spacing:.05em;color:var(--gray-400);margin-bottom:1rem}.info-row{display:flex;justify-content:space-between;padding:.4rem 0;border-bottom:1px solid var(--gray-100);font-size:.9375rem}.info-row:last-child{border-bottom:none}.info-row .label{color:var(--gray-600)}.info-row .value{font-weight:500}.badge{display:inline-block;padding:.15rem .55rem;border-radius:999px;font-size:.75rem;font-weight:600;background:#dbeafe;color:#1d4ed8;text-transform:uppercase}.contract-list{list-style:none}.contract-item{padding:.75rem 0;border-bottom:1px solid var(--gray-100);font-size:.9375rem}.contract-item:last-child{border-bottom:none}.contract-item .supplier{font-weight:500}.contract-item .date{font-size:.8rem;color:var(--gray-400)}:root{--dark-bg:#0a1628;--dark-card:#0f1e35;--dark-card2:#152540;--dark-border:#1e3a5f;--dark-border2:#2a4a72;--gold:#c9a84c;--gold-hover:#d9b96a;--gold-dim:rgba(201,168,76,.15);--dark-text:#e2e8f0;--dark-muted:#8896a5;--dark-success:#1d9e75;--dark-success-dim:rgba(29,158,117,.15);--dark-red:#e74c3c;--dark-red-dim:rgba(231,76,60,.15)}.v2-body{color:var(--dark-text)}.v2-auth-wrap,.v2-body{background:var(--dark-bg);min-height:100vh}.v2-auth-wrap{display:flex;align-items:center;justify-content:center;padding:1.5rem 1rem}.v2-auth-card{width:100%;max-width:420px;background:var(--dark-card);border:1px solid var(--dark-border);border-radius:12px;padding:2.5rem 2rem;animation:fade-in .22s ease-out both}.v2-logo{text-align:center;margin-bottom:2rem}.v2-logo-mark{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;background:var(--gold-dim);border:1.5px solid var(--gold);border-radius:10px;font-size:1.4rem;margin-bottom:.75rem}.v2-logo h1{font-size:1.25rem;font-weight:700;color:var(--gold);letter-spacing:-.01em}.v2-logo p{font-size:.8rem;color:var(--dark-muted);margin-top:.2rem}.v2-card-title{font-size:1.125rem;font-weight:600;color:var(--dark-text);margin-bottom:1.5rem}.v2-form-group{margin-bottom:1.125rem}.v2-label{display:block;font-size:.8125rem;font-weight:500;color:var(--dark-muted);margin-bottom:.375rem;text-transform:uppercase;letter-spacing:.04em}.v2-input{width:100%;padding:.65rem .875rem;background:var(--dark-bg);border:1px solid var(--dark-border2);border-radius:8px;font-size:.9375rem;color:var(--dark-text);outline:none;transition:border-color .15s,box-shadow .15s}.v2-input::-moz-placeholder{color:#3d5270}.v2-input::placeholder{color:#3d5270}.v2-input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,168,76,.12)}.v2-btn{display:block;width:100%;padding:.75rem 1rem;background:var(--gold);color:#0a1628;border:none;border-radius:8px;font-size:.9375rem;font-weight:700;cursor:pointer;transition:background .15s;text-align:center;letter-spacing:.01em}.v2-btn:hover{background:var(--gold-hover)}.v2-btn:disabled{opacity:.55;cursor:not-allowed}.v2-btn-ghost{background:transparent;color:var(--gold);border:1.5px solid var(--dark-border2)}.v2-btn-ghost:hover{border-color:var(--gold);background:var(--gold-dim);color:var(--gold)}.v2-btn-danger{background:var(--dark-red-dim);color:var(--dark-red);border:1.5px solid var(--dark-red)}.v2-btn-danger:hover{background:var(--dark-red);color:#fff}.v2-link{color:var(--gold);text-decoration:none;font-size:.875rem}.v2-link:hover{text-decoration:underline}.v2-error{background:var(--dark-red-dim);border:1px solid var(--dark-red);color:var(--dark-red);border-radius:8px;padding:.6rem .875rem;font-size:.8125rem;margin-bottom:1rem}.v2-divider{border:none;border-top:1px solid var(--dark-border);margin:1.5rem 0}.v2-steps{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:2rem}.v2-step{flex-direction:column;flex:1}.v2-step,.v2-step-circle{display:flex;align-items:center;position:relative}.v2-step-circle{width:28px;height:28px;border-radius:50%;justify-content:center;font-size:.75rem;font-weight:700;border:2px solid var(--dark-border2);background:var(--dark-card2);color:var(--dark-muted);z-index:1;transition:border-color .3s ease,background .3s ease,color .3s ease}.v2-step.active .v2-step-circle{border-color:var(--gold);background:var(--gold-dim);color:var(--gold)}.v2-step.done .v2-step-circle{border-color:var(--dark-success);background:var(--dark-success-dim);color:var(--dark-success)}.v2-step-label{font-size:.7rem;color:var(--dark-muted);margin-top:.3rem;text-align:center;white-space:nowrap}.v2-step.active .v2-step-label{color:var(--gold)}.v2-step.done .v2-step-label{color:var(--dark-success)}.v2-step-line{flex:1;height:1px;background:var(--dark-border);margin-bottom:1.3rem;margin-left:2px;margin-right:2px}.v2-step-line.done{animation:step-line-in .5s ease-out .1s both}.v2-layout{display:grid;grid-template-rows:auto 1fr;min-height:100vh;background:var(--dark-bg)}.v2-header{justify-content:space-between;background:var(--dark-card);border-bottom:1px solid var(--dark-border);padding:.875rem 1.5rem}.v2-header,.v2-header-brand{display:flex;align-items:center}.v2-header-brand{gap:.625rem;font-weight:700;font-size:1rem;color:var(--gold)}.v2-header-brand-dot{width:8px;height:8px;border-radius:50%;background:var(--gold)}.v2-header-right{display:flex;align-items:center;gap:1rem}.v2-header-company{font-size:.875rem;color:var(--dark-muted)}.v2-header-company strong{color:var(--dark-text)}.v2-main{padding:1.5rem;max-width:1200px;margin:0 auto;width:100%}.v2-page-title{font-size:1.25rem;font-weight:700;color:var(--dark-text);margin-bottom:1.5rem}.v2-kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.v2-kpi{background:var(--dark-card);border:1px solid var(--dark-border);border-radius:10px;padding:1.25rem 1.5rem}.v2-kpi-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--dark-muted);margin-bottom:.5rem}.v2-kpi-value{font-size:1.75rem;font-weight:700;color:var(--dark-text);line-height:1}.v2-kpi-value.gold{color:var(--gold)}.v2-kpi-value.green{color:var(--dark-success)}.v2-kpi-sub{font-size:.75rem;color:var(--dark-muted);margin-top:.35rem}.v2-kpi-badge{display:inline-block;padding:.1rem .45rem;border-radius:999px;font-size:.7rem;font-weight:600}.v2-kpi-badge.green{background:var(--dark-success-dim);color:var(--dark-success)}.v2-kpi-badge.amber{background:var(--gold-dim);color:var(--gold)}.v2-kpi-badge.red{background:var(--dark-red-dim);color:var(--dark-red)}.v2-dash-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}@media (max-width:768px){.v2-dash-grid{grid-template-columns:1fr}.v2-kpi-row{grid-template-columns:1fr 1fr}}@media (max-width:480px){.v2-kpi-row{grid-template-columns:1fr}.v2-header{padding:.75rem 1rem}.v2-main{padding:1rem}}.v2-card{background:var(--dark-card);border:1px solid var(--dark-border);border-radius:10px;padding:1.25rem 1.5rem}.v2-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.v2-card-heading{font-size:.8125rem;text-transform:uppercase;letter-spacing:.06em;color:var(--dark-muted)}.v2-bar-list{display:flex;flex-direction:column;gap:.625rem}.v2-bar-row{display:flex;align-items:center;gap:.75rem;font-size:.875rem}.v2-bar-label{width:100px;flex-shrink:0;color:var(--dark-text);font-size:.8125rem}.v2-bar-track{flex:1;height:8px;background:var(--dark-card2);border-radius:4px;overflow:hidden}.v2-bar-fill{height:100%;border-radius:4px;background:var(--gold);transition:width .4s ease}.v2-bar-amount{width:70px;text-align:right;font-size:.8125rem;color:var(--dark-muted);flex-shrink:0}.v2-trend-bars{display:flex;align-items:flex-end;gap:6px;height:80px;padding-top:.5rem}.v2-trend-bar{flex:1;border-radius:3px 3px 0 0;border:1px solid var(--gold);transition:background .2s;cursor:default;position:relative}.v2-trend-bar,.v2-trend-bar:hover{background:var(--gold-dim)}.v2-trend-bar.current{background:var(--gold);border-color:var(--gold)}.v2-trend-labels{display:flex;gap:6px;margin-top:.375rem}.v2-trend-label{flex:1;text-align:center;font-size:.65rem;color:var(--dark-muted)}.v2-vendor-list{list-style:none}.v2-vendor-item{display:flex;justify-content:space-between;align-items:center;padding:.65rem 0;border-bottom:1px solid var(--dark-border)}.v2-vendor-item:last-child{border-bottom:none}.v2-vendor-name{font-size:.875rem;font-weight:500;color:var(--dark-text)}.v2-vendor-cat{font-size:.75rem;color:var(--dark-muted)}.v2-vendor-amount{font-size:.875rem;font-weight:600;color:var(--gold)}.v2-settings-grid{display:grid;grid-template-columns:240px 1fr;gap:1.5rem;max-width:900px}@media (max-width:640px){.v2-settings-grid{grid-template-columns:1fr}}.v2-settings-nav{display:flex;flex-direction:column;gap:.25rem}.v2-settings-nav-item{padding:.6rem .875rem;border-radius:8px;font-size:.875rem;color:var(--dark-muted);cursor:pointer;transition:background .12s,color .12s;border:none;background:none;text-align:left;width:100%}.v2-settings-nav-item.active{background:var(--gold-dim);color:var(--gold);font-weight:600}.v2-settings-nav-item:hover:not(.active){background:var(--dark-card2);color:var(--dark-text)}.v2-settings-section{display:flex;flex-direction:column;gap:1rem}.v2-settings-title{font-size:1rem;font-weight:600;color:var(--dark-text);margin-bottom:.75rem}.v2-integration-row{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;background:var(--dark-card2);border:1px solid var(--dark-border);border-radius:8px}.v2-integration-info{display:flex;align-items:center;gap:.875rem}.v2-integration-icon{width:36px;height:36px;border-radius:8px;background:var(--dark-border);display:flex;align-items:center;justify-content:center;font-size:1rem}.v2-integration-name{font-weight:600;font-size:.9375rem;color:var(--dark-text)}.v2-integration-status{font-size:.75rem;margin-top:.1rem}.v2-integration-status.connected{color:var(--dark-success)}.v2-integration-status.disconnected{color:var(--dark-muted)}.v2-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;z-index:100;padding:1rem}.v2-modal{background:var(--dark-card);border:1px solid var(--dark-border);border-radius:12px;padding:2rem;max-width:400px;width:100%}.v2-modal-title{font-size:1.05rem;font-weight:700;color:var(--dark-red);margin-bottom:.75rem}.v2-modal-body{font-size:.875rem;color:var(--dark-muted);margin-bottom:1.5rem;line-height:1.6}.v2-modal-actions{display:flex;gap:.75rem}.v2-trust-bar{justify-content:center;gap:.875rem;flex-wrap:wrap;padding-top:.875rem;margin-top:.875rem;border-top:1px solid var(--dark-border)}.v2-trust-bar,.v2-trust-item{display:flex;align-items:center}.v2-trust-item{gap:.3rem;font-size:.6875rem;color:var(--dark-muted);white-space:nowrap}.v2-trust-item svg{color:var(--gold);flex-shrink:0}.v2-trust-badge{display:flex;align-items:center;gap:.3rem;font-size:.6875rem;font-weight:600;color:var(--gold);padding:.2rem .5rem;border:1px solid rgba(201,168,76,.35);border-radius:4px;background:var(--gold-dim);white-space:nowrap}.v2-trust-badge svg{flex-shrink:0}.v2-trust-sep{color:var(--dark-border2);font-size:.6875rem;line-height:1}.v2-trust-quote{margin-top:.875rem;padding:.625rem .875rem;background:var(--dark-card2);border-left:2px solid var(--gold);border-radius:0 6px 6px 0;font-size:.7875rem;color:var(--dark-text);font-style:italic;line-height:1.5}.v2-trust-cite{display:block;font-style:normal;font-size:.6875rem;color:var(--dark-muted);margin-top:.3rem}@media (max-width:480px){.v2-trust-quote,.v2-trust-sep{display:none}.v2-trust-bar{gap:.625rem}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes step-line-in{0%{background:var(--dark-border)}to{background:var(--dark-success)}}.skeleton{background:linear-gradient(90deg,var(--dark-card2) 25%,var(--dark-border) 50%,var(--dark-card2) 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:6px}.animate-fade-in{animation:fade-in .22s ease-out both}.v2-app-shell{display:flex;min-height:100vh}.v2-sidebar{width:240px;flex-shrink:0;background:#1a1f2e;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto;border-right:1px solid hsla(0,0%,100%,.06)}.v2-sidebar-logo{gap:.75rem;padding:1.5rem 1.25rem 1rem}.v2-sidebar-logo,.v2-sidebar-logo-mark{display:flex;align-items:center;flex-shrink:0}.v2-sidebar-logo-mark{width:32px;height:32px;background:var(--gold-dim);border:1.5px solid var(--gold);border-radius:8px;justify-content:center;font-size:.875rem;font-weight:800;color:var(--gold)}.v2-sidebar-logo-text{font-size:.9375rem;font-weight:700;color:var(--dark-text);letter-spacing:.1em}.v2-sidebar-company{padding:.875rem 1.25rem;border-top:1px solid hsla(0,0%,100%,.06);border-bottom:1px solid hsla(0,0%,100%,.06);flex-shrink:0}.v2-sidebar-company-name{font-size:.8125rem;font-weight:600;color:var(--dark-text);margin-bottom:.375rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v2-sidebar-pkg-badge{display:inline-flex;align-items:center;font-size:.625rem;font-weight:700;letter-spacing:.1em;padding:.2rem .5rem;background:rgba(201,168,76,.12);border:1px solid rgba(201,168,76,.3);border-radius:4px;color:var(--gold);text-transform:uppercase}.v2-sidebar-savings{margin-top:.75rem}.v2-sidebar-savings-label{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--dark-muted);margin-bottom:.2rem}.v2-sidebar-savings-val{font-size:1.125rem;font-weight:700;color:#22c55e}.v2-sidebar-nav{flex:1;padding:.875rem 0;overflow-y:auto}.v2-sidebar-nav-group{font-size:.6rem;font-weight:700;letter-spacing:.12em;color:rgba(136,150,165,.55);padding:.625rem 1.25rem .25rem;text-transform:uppercase}.v2-sidebar-nav-link{display:flex;align-items:center;gap:.625rem;padding:.5rem 1.25rem;font-size:.8125rem;color:var(--dark-muted);cursor:pointer;text-decoration:none;transition:background .12s,color .12s;position:relative}.v2-sidebar-nav-link:hover{background:hsla(0,0%,100%,.04);color:var(--dark-text);text-decoration:none}.v2-sidebar-nav-link.active{color:var(--gold);background:rgba(201,168,76,.08)}.v2-sidebar-nav-link.active:before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:3px;background:var(--gold);border-radius:0 2px 2px 0}.v2-sidebar-nav-link.disabled{opacity:.35;cursor:default;pointer-events:none}.v2-sidebar-bottom{padding:1rem 1.25rem;border-top:1px solid hsla(0,0%,100%,.06);display:flex;flex-direction:column;gap:.625rem;flex-shrink:0}.v2-sidebar-logout-btn{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:var(--dark-muted);cursor:pointer;background:none;border:none;padding:.3rem 0;transition:color .12s;text-align:left;width:100%;font-family:inherit}.v2-sidebar-logout-btn:hover{color:var(--dark-red)}.v2-sidebar-status{display:flex;align-items:center;gap:.4rem;font-size:.65rem;font-weight:700;letter-spacing:.09em;color:var(--dark-muted);text-transform:uppercase}.v2-sidebar-status-dot{width:6px;height:6px;border-radius:50%;background:#22c55e;flex-shrink:0}.v2-app-body{flex:1;min-width:0;display:flex;flex-direction:column}.v2-topbar{background:#1a1f2e;border-bottom:1px solid hsla(0,0%,100%,.06);padding:.75rem 1.75rem;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.v2-topbar-info{display:flex;flex-direction:column}.v2-topbar-company{font-size:.875rem;font-weight:600;color:var(--dark-text)}.v2-topbar-meta{font-size:.6875rem;color:var(--dark-muted);margin-top:.1rem}.v2-topbar-right{display:flex;align-items:center;gap:1.125rem}.v2-topbar-advisor{display:flex;align-items:center;gap:.375rem;font-size:.75rem;color:var(--dark-muted)}.v2-topbar-advisor-dot{width:7px;height:7px;border-radius:50%;background:#22c55e;flex-shrink:0}.v2-topbar-bell{position:relative;cursor:pointer;font-size:1rem;color:var(--dark-muted);line-height:1;display:flex;align-items:center;transition:color .12s}.v2-topbar-bell:hover{color:var(--dark-text)}.v2-topbar-bell-count{position:absolute;top:-5px;right:-6px;width:14px;height:14px;background:var(--dark-red);font-size:.55rem;color:#fff}.v2-topbar-avatar,.v2-topbar-bell-count{border-radius:50%;font-weight:700;display:flex;align-items:center;justify-content:center}.v2-topbar-avatar{width:30px;height:30px;background:var(--gold-dim);border:1.5px solid var(--gold);font-size:.6875rem;color:var(--gold);cursor:default;flex-shrink:0}.v2-content{background:#f5f0e8;flex:1;padding:1.75rem;overflow-y:auto}.v2-hero-date{font-size:.6875rem;font-weight:700;letter-spacing:.12em;color:#7c6b5a;text-transform:uppercase;margin-bottom:.5rem}.v2-hero-greeting{font-size:1.875rem;font-weight:700;color:#1a1f2e;margin:0 0 .4rem;line-height:1.2;font-family:Georgia,Times New Roman,serif}.v2-hero-sub{font-size:.875rem;color:#7c6b5a;margin-bottom:.875rem}.v2-hero-alert{display:inline-flex;align-items:center;gap:.4rem;background:rgba(26,31,46,.06);border:1px solid rgba(26,31,46,.12);border-radius:8px;padding:.45rem .875rem;font-size:.8125rem;font-weight:500;color:#1a1f2e}.v2-kpi-light-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:1.5rem;margin-bottom:1.5rem}.v2-kpi-light-card{background:#fff;border:1px solid rgba(26,31,46,.08);border-radius:12px;padding:1.125rem 1.375rem;box-shadow:0 1px 3px rgba(26,31,46,.06)}.v2-kpi-light-label{font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:#7c6b5a;margin-bottom:.5rem}.v2-kpi-light-val{font-size:1.5rem;font-weight:700;color:#1a1f2e;line-height:1;margin-bottom:.375rem}.v2-kpi-light-val.green{color:#16a34a}.v2-kpi-light-val.amber{color:#b45309}.v2-kpi-light-sub{font-size:.7125rem;color:#7c6b5a}.v2-kpi-light-link{font-size:.7125rem;color:var(--gold);font-weight:600;text-decoration:none;cursor:pointer}.v2-kpi-light-link:hover{text-decoration:underline}.v2-sec-title{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#7c6b5a;margin-bottom:.875rem}.v2-two-col{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:1.5rem}.v2-lcard{background:#fff;border:1px solid rgba(26,31,46,.08);border-radius:12px;padding:1.25rem 1.375rem;box-shadow:0 1px 3px rgba(26,31,46,.06)}.v2-action-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.875rem 0;border-bottom:1px solid rgba(26,31,46,.06)}.v2-action-row:last-child{border-bottom:none}.v2-action-title{font-size:.875rem;font-weight:600;color:#1a1f2e;margin-bottom:.15rem}.v2-action-sub{font-size:.75rem;color:#7c6b5a}.v2-action-cta{flex-shrink:0;padding:.4rem .875rem;background:#1a1f2e;color:#f5f0e8;border:none;border-radius:7px;font-size:.8rem;font-weight:600;cursor:pointer;white-space:nowrap;font-family:inherit;transition:background .12s}.v2-action-cta:hover{background:#2d3548}.v2-empty-state{text-align:center;padding:1.5rem;color:#9c8a78;font-size:.8125rem}.v2-progress-track{height:7px;background:rgba(26,31,46,.08);border-radius:4px;overflow:hidden;margin:.625rem 0 .5rem}.v2-progress-fill{height:100%;border-radius:4px;background:linear-gradient(90deg,#16a34a,#22c55e);transition:width .6s ease}.v2-hms-item{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;padding:.35rem 0;color:#1a1f2e}.v2-hms-item.pending{color:#9c8a78}.v2-cost-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.875rem}.v2-cost-card{background:#fff;border:1px solid rgba(26,31,46,.08);border-radius:10px;padding:1rem 1.125rem;box-shadow:0 1px 2px rgba(26,31,46,.05)}.v2-cost-cat{font-size:.6375rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#7c6b5a;margin-bottom:.375rem}.v2-cost-val{font-size:1.125rem;font-weight:700;color:#1a1f2e;margin-bottom:.2rem}.v2-cost-potential{font-size:.7rem;font-weight:600;color:#16a34a}@media (max-width:1024px){.v2-kpi-light-row{grid-template-columns:repeat(2,1fr)}}@media (max-width:860px){.v2-two-col{grid-template-columns:1fr}}@media (max-width:768px){.v2-sidebar{display:none}.v2-content{padding:1.25rem}.v2-topbar{padding:.75rem 1.25rem}}@media (max-width:520px){.v2-kpi-light-row{grid-template-columns:1fr 1fr}.v2-content{padding:1rem}}@media (max-width:360px){.v2-kpi-light-row{grid-template-columns:1fr}}.upload-zone{border:2px dashed var(--gray-200);border-radius:var(--radius);padding:2rem;text-align:center;cursor:pointer;transition:border-color .15s,background .15s}.upload-zone.active,.upload-zone:hover{border-color:var(--blue);background:#eff6ff}.upload-zone p{color:var(--gray-600);font-size:.9rem}.upload-zone .icon{font-size:2rem;margin-bottom:.5rem}.v2-welcome-modal{background:var(--dark-card);border:1px solid var(--dark-border);border-radius:16px;max-width:520px;width:100%;overflow:hidden;position:relative;box-shadow:0 24px 64px rgba(0,0,0,.6),0 0 0 1px rgba(201,168,76,.15)}.v2-welcome-top-accent{height:3px;background:linear-gradient(90deg,var(--gold),var(--gold-hover));width:100%}.v2-welcome-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem 0}.v2-welcome-badge{display:inline-flex;align-items:center;font-size:.6rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;padding:.25rem .6rem;background:var(--gold-dim);border:1px solid rgba(201,168,76,.35);border-radius:4px;color:var(--gold)}.v2-welcome-close{background:none;border:none;font-size:.875rem;color:var(--dark-muted);cursor:pointer;padding:.25rem .5rem;border-radius:4px;transition:color .12s,background .12s;font-family:inherit}.v2-welcome-close:hover{color:var(--dark-text);background:hsla(0,0%,100%,.06)}.v2-welcome-logo-wrap{display:flex;justify-content:center;padding:1.25rem 1.5rem 0}.v2-welcome-logo-mark{width:52px;height:52px;background:var(--gold-dim);border:2px solid var(--gold);border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.375rem;font-weight:800;color:var(--gold);letter-spacing:-.02em}.v2-welcome-title{font-size:1.25rem;font-weight:700;color:var(--dark-text);text-align:center;padding:1rem 1.5rem 0;line-height:1.4}.v2-welcome-name{color:var(--gold)}.v2-welcome-desc{font-size:.875rem;color:var(--dark-muted);line-height:1.65;text-align:center;padding:.75rem 2rem 0}.v2-welcome-steps{display:flex;flex-direction:column;gap:.5rem;padding:1.25rem 1.5rem 0}.v2-welcome-step{display:flex;align-items:flex-start;gap:.875rem;padding:.75rem 1rem;background:var(--dark-card2);border:1px solid var(--dark-border);border-radius:10px}.v2-welcome-step-num{width:24px;height:24px;flex-shrink:0;background:var(--gold-dim);border:1.5px solid rgba(201,168,76,.4);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.6875rem;font-weight:800;color:var(--gold)}.v2-welcome-step-title{font-size:.8125rem;font-weight:600;color:var(--dark-text);margin-bottom:.15rem}.v2-welcome-step-sub{font-size:.725rem;color:var(--dark-muted)}.v2-welcome-footer{display:flex;flex-direction:column;gap:.625rem;padding:1.25rem 1.5rem 1.5rem}.v2-welcome-cta{font-size:.9375rem;font-weight:700;padding:.8rem 1.25rem}.v2-welcome-secondary{font-size:.875rem;padding:.65rem 1.25rem}.v2-page-outer{min-height:100vh;display:flex;flex-direction:column;background:var(--dark-bg);color:var(--dark-text)}.v2-page-center{flex:1;display:flex;align-items:center;justify-content:center;padding:1.5rem 1rem}.v2-footer{border-top:1px solid var(--dark-border);padding:1rem 1.5rem;background:var(--dark-bg);flex-shrink:0}.v2-footer-inner{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:.3rem;text-align:center}.v2-footer-links{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;justify-content:center}.v2-footer-link{font-size:.75rem;color:var(--dark-muted);text-decoration:none;transition:color .12s}.v2-footer-link:hover{color:var(--gold);text-decoration:none}.v2-footer-sep{color:var(--dark-border2);font-size:.75rem;line-height:1}.v2-footer-gdpr{font-size:.6875rem;color:var(--dark-muted);opacity:.65;margin:0}@media (max-width:480px){.v2-footer{padding:.875rem 1rem}.v2-footer-gdpr{font-size:.625rem}}:root{--ds-cream:#f4efe5;--ds-paper:#fffdf8;--ds-ink:#0d1b2e;--ds-ink-muted:#3c4a5e;--ds-slate:#7c8798;--ds-gold:#c9a84c;--ds-gold-deep:#a8862f;--ds-gold-light:#e3c575;--ds-line:rgba(13,27,46,.12);--ds-line-soft:rgba(13,27,46,.06);--ds-green:#1d9e75;--ds-amber:#b45309;--ds-red:#c2452e;--ds-sb-text:#e8e2d4;--ds-sb-muted:#8a96a6;--ds-sb-line:hsla(42,30%,87%,.08)}.ds-num{font-family:var(--font-mono),ui-monospace,"SFMono-Regular",monospace;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.ds-app{min-height:100vh;color:var(--ds-ink);font-family:var(--font-inter),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:15px;line-height:1.5}.ds-app,.ds-body{display:flex;background:var(--ds-cream)}.ds-body{flex:1;min-width:0;flex-direction:column}.ds-nav-shell{flex-shrink:0}.ds-sidebar{width:248px;background:var(--ds-ink);color:var(--ds-sb-text);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto}.ds-sidebar-logo{gap:.7rem;padding:1.5rem 1.375rem 1.125rem}.ds-logo-mark,.ds-sidebar-logo{display:flex;align-items:center;flex-shrink:0}.ds-logo-mark{width:34px;height:34px;border-radius:9px;background:rgba(201,168,76,.14);border:1.5px solid var(--ds-gold);justify-content:center;font-weight:800;font-size:.95rem;color:var(--ds-gold)}.ds-logo-text{font-family:var(--font-playfair),Georgia,serif;font-size:1.15rem;font-weight:600;color:var(--ds-sb-text);letter-spacing:.02em}.ds-sidebar-company{padding:.95rem 1.375rem;border-top:1px solid var(--ds-sb-line);border-bottom:1px solid var(--ds-sb-line);flex-shrink:0}.ds-company-name{font-size:.84rem;font-weight:600;color:var(--ds-sb-text);margin-bottom:.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ds-pkg-badge{display:inline-flex;align-items:center;font-family:var(--font-mono),monospace;font-size:.62rem;font-weight:600;letter-spacing:.12em;padding:.22rem .5rem;background:rgba(201,168,76,.12);border:1px solid rgba(201,168,76,.32);border-radius:5px;color:var(--ds-gold-light)}.ds-company-savings{margin-top:.7rem;font-size:.78rem;color:var(--ds-sb-muted)}.ds-company-savings .ds-num{font-size:.95rem;font-weight:600;color:#34d399}.ds-sidebar-nav{flex:1;padding:.5rem 0 .875rem}.ds-nav-group{margin-top:.6rem}.ds-nav-group-label{font-family:var(--font-mono),monospace;font-size:.6rem;font-weight:600;letter-spacing:.16em;color:rgba(138,150,166,.6);padding:.7rem 1.375rem .35rem}.ds-nav-link{display:flex;align-items:center;gap:.7rem;padding:.55rem 1.375rem;font-size:.825rem;color:var(--ds-sb-muted);text-decoration:none;position:relative;transition:background .12s,color .12s}.ds-nav-link:hover{background:hsla(42,30%,87%,.05);color:var(--ds-sb-text);text-decoration:none}.ds-nav-link.is-active{color:var(--ds-gold);background:rgba(201,168,76,.09)}.ds-nav-link.is-active:before{content:"";position:absolute;left:0;top:5px;bottom:5px;width:3px;border-radius:0 2px 2px 0;background:var(--ds-gold)}.ds-nav-link.is-disabled{opacity:.42;cursor:default}.ds-nav-ico{flex-shrink:0}.ds-nav-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ds-nav-lock{flex-shrink:0;opacity:.8}.ds-nav-tag{font-family:var(--font-mono),monospace;font-size:.54rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:.1rem .32rem;border-radius:4px;border:1px solid var(--ds-sb-line);color:var(--ds-sb-muted);flex-shrink:0}.ds-sidebar-bottom{padding:1rem 1.375rem 1.25rem;border-top:1px solid var(--ds-sb-line);display:flex;flex-direction:column;gap:.7rem;flex-shrink:0}.ds-logout{display:flex;align-items:center;gap:.5rem;font-size:.82rem;color:var(--ds-sb-muted);background:none;border:none;padding:.25rem 0;cursor:pointer;text-align:left;font-family:inherit;transition:color .12s}.ds-logout:hover{color:var(--ds-red)}.ds-conn-status{display:flex;align-items:center;gap:.45rem;font-size:.6rem;letter-spacing:.08em;color:var(--ds-sb-muted)}.ds-conn-status .ds-num{font-size:.6rem;letter-spacing:.06em}.ds-conn-dot{width:6px;height:6px;border-radius:50%;background:#34d399;flex-shrink:0}.ds-topbar{background:var(--ds-ink);color:var(--ds-sb-text);padding:.7rem 1.75rem;display:flex;align-items:center;gap:1rem;flex-shrink:0;border-bottom:1px solid var(--ds-sb-line)}.ds-topbar-burger{display:none;background:none;border:none;color:var(--ds-sb-text);cursor:pointer;padding:.2rem;margin-right:.2rem}.ds-topbar-info{display:flex;flex-direction:column;min-width:0;flex:1}.ds-topbar-company{font-size:.86rem;font-weight:600;color:var(--ds-sb-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ds-topbar-meta{font-size:.68rem;color:var(--ds-sb-muted);margin-top:.1rem}.ds-topbar-right{display:flex;align-items:center;gap:1.1rem;flex-shrink:0}.ds-advisor-chip{display:inline-flex;align-items:center;gap:.4rem;font-size:.74rem;color:var(--ds-sb-muted)}.ds-advisor-dot{width:7px;height:7px;border-radius:50%;background:#34d399}.ds-bell{position:relative;background:none;border:none;cursor:pointer;color:var(--ds-sb-muted);display:flex;align-items:center;padding:0;transition:color .12s}.ds-bell:hover{color:var(--ds-sb-text)}.ds-bell-count{position:absolute;top:-6px;right:-7px;min-width:15px;height:15px;padding:0 3px;border-radius:8px;background:var(--ds-red);color:#fff;font-size:.56rem}.ds-avatar,.ds-bell-count{font-weight:700;display:flex;align-items:center;justify-content:center}.ds-avatar{width:32px;height:32px;border-radius:50%;background:rgba(201,168,76,.14);border:1.5px solid var(--ds-gold);color:var(--ds-gold);font-size:.7rem;flex-shrink:0}.ds-content{flex:1;width:100%;max-width:1320px;margin-inline:auto;padding:clamp(1.1rem,3.5vw,2rem) clamp(1rem,4vw,2.5rem) 3rem;overflow-y:auto}.ds-hero{margin-bottom:1.75rem}.ds-marker,.ds-marker-left{display:flex;align-items:center;gap:.7rem;font-family:var(--font-mono),monospace;font-size:.66rem;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--ds-gold-deep)}.ds-marker{justify-content:center}.ds-marker-left{justify-content:flex-start;margin-bottom:.7rem}.ds-marker span[aria-hidden]{color:var(--ds-line)}.ds-marker .ds-marker-text,.ds-marker-left .ds-marker-text{white-space:nowrap}.ds-marker:after,.ds-marker:before{content:none}.ds-hero-title{font-family:var(--font-playfair),Georgia,serif;font-size:clamp(1.6rem,3.5vw,2.05rem);font-weight:600;color:var(--ds-ink);line-height:1.18;margin:0 0 .5rem}.ds-hero-name{font-style:italic;color:var(--ds-gold-deep);font-weight:500}.ds-hero-sub{font-size:.92rem;color:var(--ds-ink-muted);max-width:60ch}.ds-hero-sub strong{color:var(--ds-ink);font-weight:600}.ds-hero-alert{display:inline-flex;align-items:center;gap:.45rem;margin-top:.9rem;background:rgba(180,83,9,.08);border:1px solid rgba(180,83,9,.22);border-radius:9px;padding:.5rem .9rem;font-size:.82rem;font-weight:500;color:var(--ds-amber)}.ds-card{background:var(--ds-paper);border:1px solid var(--ds-line);border-radius:17px;padding:1.35rem 1.5rem;transition:box-shadow .15s,border-color .15s}.ds-card:hover{box-shadow:0 6px 22px rgba(13,27,46,.07)}.ds-kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1.1rem;margin-bottom:2rem}.ds-kpi{padding:1.25rem 1.4rem}.ds-kpi-label{font-family:var(--font-mono),monospace;font-size:.62rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ds-slate);margin-bottom:.65rem}.ds-kpi-val{font-size:1.6rem;font-weight:600;line-height:1.05;color:var(--ds-ink);margin-bottom:.45rem}.ds-kpi-val.tone-green{color:var(--ds-green)}.ds-kpi-val.tone-amber{color:var(--ds-amber)}.ds-kpi-sub{font-size:.72rem;color:var(--ds-slate)}.ds-section{margin-bottom:1.75rem}.ds-section .ds-marker{justify-content:flex-start;margin-bottom:.85rem}.ds-empty{text-align:center;padding:1.75rem 1rem}.ds-empty-ico{font-size:1.5rem;color:var(--ds-green);margin-bottom:.5rem}.ds-empty-title{font-size:.92rem;font-weight:600;color:var(--ds-ink);margin-bottom:.3rem}.ds-empty-text{font-size:.8rem;color:var(--ds-slate);max-width:42ch;margin:0 auto}.ds-action-list{list-style:none;margin:0;padding:0}.ds-action-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 0;border-bottom:1px solid var(--ds-line-soft)}.ds-action-row:last-child{border-bottom:none}.ds-action-title{font-size:.9rem;font-weight:600;color:var(--ds-ink);margin-bottom:.15rem}.ds-action-sub{font-size:.78rem;color:var(--ds-slate)}.ds-activity-list{list-style:none;margin:0;padding:0}.ds-activity-row{display:flex;align-items:baseline;gap:1rem;padding:.62rem 0;border-bottom:1px solid var(--ds-line-soft)}.ds-activity-row:last-child{border-bottom:none}.ds-activity-date{font-size:.76rem;color:var(--ds-slate);flex-shrink:0;min-width:84px}.ds-activity-text,.ds-btn{font-size:.86rem;color:var(--ds-ink)}.ds-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;background:var(--ds-gold);border:none;border-radius:9px;padding:.6rem 1.2rem;font-weight:600;cursor:pointer;font-family:inherit;transition:background .12s}.ds-btn:hover{background:var(--ds-gold-light)}.ds-error-screen{margin:auto;text-align:center;padding:3rem 1.5rem;max-width:440px}.ds-error-title{font-size:1.1rem;font-weight:600;color:var(--ds-ink);margin-bottom:.5rem}.ds-error-msg{font-size:.86rem;color:var(--ds-ink-muted);margin-bottom:1.25rem}.ds-app a:focus-visible,.ds-app button:focus-visible,.ds-nav-link:focus-visible{outline:2px solid var(--ds-gold);outline-offset:2px;border-radius:6px}.ds-skel{background:linear-gradient(90deg,rgba(13,27,46,.05) 25%,rgba(13,27,46,.09) 37%,rgba(13,27,46,.05) 63%);background-size:400% 100%;border-radius:8px;animation:ds-shimmer 1.4s ease infinite}@keyframes ds-shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}.ds-fade-in{animation:ds-fade .2s ease both}@keyframes ds-fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.ds-scrim{position:fixed;inset:0;z-index:40;background:rgba(13,27,46,.45)}@media (max-width:1100px){.ds-kpi-row{grid-template-columns:repeat(2,1fr)}}@media (max-width:900px){.ds-topbar-burger{display:flex}.ds-nav-shell{position:fixed;inset:0 auto 0 0;z-index:50;transform:translateX(-100%);transition:transform .2s ease}.ds-nav-shell.is-open{transform:translateX(0)}.ds-sidebar{height:100vh;box-shadow:2px 0 24px rgba(13,27,46,.25)}.ds-advisor-chip{display:none}}@media (max-width:540px){.ds-kpi-row{grid-template-columns:1fr}.ds-topbar{padding:.7rem 1rem}}@media (prefers-reduced-motion:reduce){.ds-fade-in,.ds-skel{animation:none}.ds-card,.ds-nav-shell{transition:none}}.ds-page-head{margin-bottom:1.5rem}.ds-page-head .ds-marker{justify-content:flex-start;margin-bottom:.7rem}.ds-page-title{font-family:var(--font-playfair),Georgia,serif;font-size:clamp(1.4rem,3vw,1.8rem);font-weight:600;color:var(--ds-ink);line-height:1.2;margin:0 0 .4rem}.ds-page-sub{font-size:.9rem;color:var(--ds-ink-muted);max-width:60ch}.ds-page-sub strong{color:var(--ds-ink);font-weight:600}.ds-kpi-row-3{grid-template-columns:repeat(3,1fr)}.ds-kpi-val.tone-gold{color:var(--ds-gold-deep)}.ds-demo-badge{display:inline-flex;align-items:center;font-family:var(--font-mono),monospace;font-size:.54rem;font-weight:700;letter-spacing:.1em;padding:.08rem .34rem;margin-left:.4rem;border-radius:4px;vertical-align:middle;color:var(--ds-amber);background:rgba(180,83,9,.1);border:1px solid rgba(180,83,9,.32);cursor:help}.ds-demo-note{display:flex;align-items:flex-start;gap:.55rem;background:rgba(180,83,9,.07);border:1px solid rgba(180,83,9,.2);border-radius:11px;padding:.7rem .95rem;font-size:.8rem;color:var(--ds-amber);line-height:1.5;margin-bottom:1.5rem}.ds-demo-note code{font-family:var(--font-mono),monospace;font-size:.74rem;background:rgba(180,83,9,.12);padding:.05rem .3rem;border-radius:4px}.ds-demo-note svg{flex-shrink:0;margin-top:1px}.ds-toolbar{gap:.75rem;flex-wrap:wrap;margin-bottom:1.1rem}.ds-search,.ds-toolbar{display:flex;align-items:center}.ds-search{gap:.5rem;background:var(--ds-paper);border:1px solid var(--ds-line);border-radius:10px;padding:.5rem .8rem;color:var(--ds-slate);flex:1;min-width:200px}.ds-search input{border:none;outline:none;background:none;flex:1;font-size:.85rem;color:var(--ds-ink);font-family:inherit}.ds-chip-filters{display:flex;gap:.4rem;flex-wrap:wrap}.ds-filter-chip{font-size:.76rem;font-weight:500;padding:.42rem .8rem;border-radius:999px;border:1px solid var(--ds-line);background:var(--ds-paper);color:var(--ds-ink-muted);cursor:pointer;font-family:inherit;transition:background .12s,border-color .12s,color .12s}.ds-filter-chip:hover{border-color:var(--ds-slate)}.ds-filter-chip.is-active{background:var(--ds-ink);color:var(--ds-paper);border-color:var(--ds-ink)}.ds-sort{display:flex;align-items:center;gap:.45rem;font-size:.74rem;color:var(--ds-slate)}.ds-sort select{font-family:inherit;font-size:.8rem;color:var(--ds-ink);padding:.42rem .6rem;border:1px solid var(--ds-line);border-radius:9px;background:var(--ds-paper);cursor:pointer}.ds-table-card{padding:.4rem .6rem}.ds-table-scroll{overflow-x:auto}.ds-table{width:100%;border-collapse:collapse;min-width:640px}.ds-table thead th{text-align:left;font-family:var(--font-mono),monospace;font-size:.6rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ds-slate);padding:.7rem .85rem;border-bottom:1px solid var(--ds-line);white-space:nowrap}.ds-table tbody td{padding:.7rem .85rem;border-bottom:1px solid var(--ds-line-soft);font-size:.86rem;color:var(--ds-ink);vertical-align:middle;line-height:1.2}.ds-table tbody tr:last-child td{border-bottom:none}.ds-row-link{transition:background .15s}.ds-row-link:hover{background:rgba(13,27,46,.025)}.ds-row-link:hover td:first-child{box-shadow:inset 2px 0 0 var(--ds-gold)}.ds-col-num{text-align:right;white-space:nowrap}.ds-col-nr{width:38px}.ds-rownr{font-family:var(--font-playfair),Georgia,serif;font-style:italic;font-size:.95rem;color:var(--ds-slate)}.ds-cat-cell{gap:.7rem;text-decoration:none;color:inherit}.ds-cat-cell,.ds-cat-ico{display:flex;align-items:center}.ds-cat-ico{width:30px;height:30px;flex-shrink:0;border-radius:8px;justify-content:center;background:rgba(13,27,46,.05);color:var(--ds-ink-muted)}.ds-cat-name{display:block;font-weight:600;color:var(--ds-ink)}.ds-cat-supplier{display:block;font-size:.74rem;margin-top:.05rem}.ds-cat-supplier,.ds-dim{color:var(--ds-slate)}.ds-dev-up{color:var(--ds-red);font-weight:600}.ds-dev-down{color:var(--ds-green);font-weight:600}.ds-dev-pct{display:block;font-size:.72rem;color:var(--ds-slate)}.ds-col-arrow{width:40px;text-align:right}.ds-arrow-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;color:var(--ds-slate);background:none;border:none;cursor:pointer;transition:background .12s,color .12s}.ds-arrow-btn:hover:not(:disabled){background:rgba(13,27,46,.05);color:var(--ds-ink)}.ds-arrow-btn:disabled{opacity:.4;cursor:not-allowed}.ds-chip{display:inline-flex;align-items:center;white-space:nowrap;font-size:.7rem;font-weight:600;padding:.22rem .6rem;border-radius:999px;border:1px solid transparent}.ds-chip-red{background:rgba(194,69,46,.1);color:var(--ds-red);border-color:rgba(194,69,46,.28)}.ds-chip-amber{background:rgba(180,83,9,.1);color:var(--ds-amber);border-color:rgba(180,83,9,.28)}.ds-chip-green{background:rgba(29,158,117,.12);color:var(--ds-green);border-color:rgba(29,158,117,.3)}.ds-chip-gold{background:rgba(201,168,76,.14);color:var(--ds-gold-deep);border-color:rgba(201,168,76,.34)}.ds-chip-slate{background:rgba(124,135,152,.14);color:var(--ds-slate);border-color:rgba(124,135,152,.3)}.ds-breadcrumb{display:inline-flex;align-items:center;gap:.3rem;font-family:var(--font-mono),monospace;font-size:.64rem;font-weight:600;letter-spacing:.12em;color:var(--ds-slate);text-decoration:none;margin-bottom:1.1rem;transition:color .12s}.ds-breadcrumb:hover{color:var(--ds-gold-deep);text-decoration:none}.ds-detail-head{margin-bottom:1rem}.ds-detail-head-meta{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;margin-top:.5rem}.ds-detail-supplier{font-size:.84rem;color:var(--ds-ink-muted)}.ds-section-head{display:flex;align-items:center;gap:.5rem;margin-bottom:.85rem}.ds-section-head .ds-marker{margin-bottom:0}.ds-prose{font-size:.92rem;line-height:1.6;color:var(--ds-ink-muted)}.ds-cta-card{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;flex-wrap:wrap}.ds-cta-title{font-size:1rem;font-weight:600;color:var(--ds-ink);margin-bottom:.25rem}.ds-cta-sub{font-size:.82rem;color:var(--ds-slate);max-width:52ch}.ds-btn-ghost:disabled,.ds-btn:disabled{opacity:.5;cursor:not-allowed}.ds-rec-badge{margin-left:.5rem;font-size:.6rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.12rem .42rem;border-radius:5px;color:var(--ds-gold-deep);background:rgba(201,168,76,.14);border:1px solid rgba(201,168,76,.34)}.ds-note-cell{color:var(--ds-ink-muted);font-size:.82rem}.ds-supplier-card{display:flex;flex-direction:column;gap:1rem}.ds-deflist{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.85rem 1.5rem;margin:0}.ds-def dt{font-size:.66rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ds-slate);margin-bottom:.2rem;font-family:var(--font-mono),monospace}.ds-def dd{font-size:.88rem;color:var(--ds-ink);margin:0}.ds-flag-warn{display:inline-flex;align-items:center;gap:.3rem;color:var(--ds-amber);font-weight:600}.ds-expires-chip{align-self:flex-start;font-size:.66rem;font-weight:700;letter-spacing:.08em;padding:.32rem .7rem;border-radius:999px;color:var(--ds-amber);background:rgba(180,83,9,.1);border:1px solid rgba(180,83,9,.3)}.ds-doc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.85rem}.ds-doc-card{gap:.7rem;padding:.95rem 1.1rem}.ds-doc-card,.ds-doc-ico{display:flex;align-items:center}.ds-doc-ico{width:34px;height:34px;flex-shrink:0;border-radius:9px;justify-content:center;background:rgba(13,27,46,.05);color:var(--ds-ink-muted)}.ds-doc-name{display:block;font-size:.85rem;font-weight:600;color:var(--ds-ink)}.ds-doc-meta{display:block;font-size:.72rem;color:var(--ds-slate);margin-top:.1rem}.ds-actions-bar{display:flex;gap:.7rem;flex-wrap:wrap}.ds-btn-ghost{display:inline-flex;align-items:center;justify-content:center;background:var(--ds-paper);color:var(--ds-ink);border:1px solid var(--ds-line);border-radius:9px;padding:.55rem 1.1rem;font-size:.84rem;font-weight:600;cursor:pointer;font-family:inherit;transition:border-color .12s,background .12s}.ds-btn-ghost:hover:not(:disabled){border-color:var(--ds-gold);background:rgba(201,168,76,.06)}@media (max-width:720px){.ds-kpi-row-3{grid-template-columns:1fr}.ds-cta-card{flex-direction:column;align-items:flex-start}}.ds-connect-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:3rem 1.5rem;max-width:560px;margin:0 auto}.ds-connect-ico{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:rgba(201,168,76,.12);border:1.5px solid var(--ds-gold);color:var(--ds-gold-deep);margin-bottom:1.1rem}.ds-connect-title{font-family:var(--font-playfair),Georgia,serif;font-size:1.3rem;font-weight:600;color:var(--ds-ink);margin:0 0 .6rem;line-height:1.25}.ds-connect-text{font-size:.92rem;line-height:1.6;color:var(--ds-ink-muted);max-width:46ch;margin:0 0 1.5rem}.ds-barchart{width:100%}.ds-barchart-plot{gap:10px;height:168px;padding-top:8px}.ds-bar-col,.ds-barchart-plot{display:flex;align-items:flex-end}.ds-bar-col{flex:1;justify-content:center;height:100%;min-width:0}.ds-bar{width:100%;max-width:56px;border-radius:5px 5px 0 0;background:var(--ds-ink);transition:opacity .12s}.ds-bar.is-current{background:var(--ds-gold)}.ds-bar:hover{opacity:.82}.ds-barchart-axis{display:flex;gap:10px;margin-top:7px}.ds-bar-label{flex:1;font-size:.64rem;white-space:nowrap}.ds-bar-label,.ds-chart-empty{text-align:center;color:var(--ds-slate)}.ds-chart-empty{padding:2rem 1rem;font-size:.85rem}.file\:border-0::file-selector-button{border-width:0}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.file\:text-foreground::file-selector-button{color:hsl(var(--foreground))}.placeholder\:text-muted-foreground::-moz-placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-2:after{content:var(--tw-content);inset:-.5rem}.after\:inset-y-0:after{content:var(--tw-content);top:0;bottom:0}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:w-\[2px\]:after{content:var(--tw-content);width:2px}.first\:pt-0:first-child{padding-top:0}.last\:pb-0:last-child{padding-bottom:0}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-amber-100:hover{--tw-bg-opacity:1;background-color:rgb(254 243 199/var(--tw-bg-opacity,1))}.hover\:bg-destructive\/80:hover{background-color:hsl(var(--destructive)/.8)}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive)/.9)}.hover\:bg-muted:hover{background-color:hsl(var(--muted))}.hover\:bg-muted\/50:hover{background-color:hsl(var(--muted)/.5)}.hover\:bg-muted\/60:hover{background-color:hsl(var(--muted)/.6)}.hover\:bg-primary\/80:hover{background-color:hsl(var(--primary)/.8)}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary)/.9)}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary)/.8)}.hover\:bg-sidebar-accent:hover{background-color:hsl(var(--sidebar-accent))}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.hover\:text-sidebar-accent-foreground:hover{color:hsl(var(--sidebar-accent-foreground))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-\[0_0_0_1px_hsl\(var\(--sidebar-accent\)\)\]:hover{--tw-shadow:0 0 0 1px hsl(var(--sidebar-accent));--tw-shadow-colored:0 0 0 1px var(--tw-shadow-color)}.hover\:shadow-\[0_0_0_1px_hsl\(var\(--sidebar-accent\)\)\]:hover,.hover\:shadow-md:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.hover\:after\:bg-sidebar-border:hover:after{content:var(--tw-content);background-color:hsl(var(--sidebar-border))}.focus\:bg-accent:focus{background-color:hsl(var(--accent))}.focus\:text-accent-foreground:focus{color:hsl(var(--accent-foreground))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-ring:focus{--tw-ring-color:hsl(var(--ring))}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color:hsl(var(--ring))}.focus-visible\:ring-sidebar-ring:focus-visible{--tw-ring-color:hsl(var(--sidebar-ring))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px}.active\:bg-sidebar-accent:active{background-color:hsl(var(--sidebar-accent))}.active\:text-sidebar-accent-foreground:active{color:hsl(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}.disabled\:opacity-60:disabled{opacity:.6}.group[open] .group-open\:rotate-180{--tw-rotate:180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group\/menu-item:focus-within .group-focus-within\/menu-item\:opacity-100{opacity:1}.group\/menu-item:hover .group-hover\/menu-item\:opacity-100{opacity:1}.group.toaster .group-\[\.toaster\]\:border-border{border-color:hsl(var(--border))}.group.toast .group-\[\.toast\]\:bg-muted{background-color:hsl(var(--muted))}.group.toast .group-\[\.toast\]\:bg-primary{background-color:hsl(var(--primary))}.group.toaster .group-\[\.toaster\]\:bg-background{background-color:hsl(var(--background))}.group.toast .group-\[\.toast\]\:text-muted-foreground{color:hsl(var(--muted-foreground))}.group.toast .group-\[\.toast\]\:text-primary-foreground{color:hsl(var(--primary-foreground))}.group.toaster .group-\[\.toaster\]\:text-foreground{color:hsl(var(--foreground))}.group.toaster .group-\[\.toaster\]\:shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.peer\/menu-button:hover~.peer-hover\/menu-button\:text-sidebar-accent-foreground{color:hsl(var(--sidebar-accent-foreground))}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-70{opacity:.7}.has-\[\[data-variant\=inset\]\]\:bg-sidebar:has([data-variant=inset]){background-color:hsl(var(--sidebar-background))}.group\/menu-item:has([data-sidebar=menu-action]) .group-has-\[\[data-sidebar\=menu-action\]\]\/menu-item\:pr-8{padding-right:2rem}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:0.25rem}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom],.data-\[side\=left\]\:-translate-x-1[data-side=left]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:-0.25rem}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:0.25rem}.data-\[side\=right\]\:translate-x-1[data-side=right],.data-\[side\=top\]\:-translate-y-1[data-side=top]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:-0.25rem}.data-\[active\=true\]\:bg-sidebar-accent[data-active=true]{background-color:hsl(var(--sidebar-accent))}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:hsl(var(--background))}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:hsl(var(--accent))}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:hsl(var(--secondary))}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:hsl(var(--muted))}.data-\[active\=true\]\:font-medium[data-active=true]{font-weight:500}.data-\[active\=true\]\:text-sidebar-accent-foreground[data-active=true]{color:hsl(var(--sidebar-accent-foreground))}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:hsl(var(--muted-foreground))}.data-\[state\=active\]\:text-foreground[data-state=active]{color:hsl(var(--foreground))}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:hsl(var(--muted-foreground))}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[state\=open\]\:opacity-100[data-state=open]{opacity:1}.data-\[state\=active\]\:shadow-sm[data-state=active]{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.data-\[state\=closed\]\:duration-300[data-state=closed]{transition-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{transition-duration:.5s}.data-\[state\=open\]\:hover\:bg-sidebar-accent:hover[data-state=open]{background-color:hsl(var(--sidebar-accent))}.data-\[state\=open\]\:hover\:text-sidebar-accent-foreground:hover[data-state=open]{color:hsl(var(--sidebar-accent-foreground))}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\]{left:calc(var(--sidebar-width) * -1)}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\]{right:calc(var(--sidebar-width) * -1)}.group[data-side=left] .group-data-\[side\=left\]\:-right-4{right:-1rem}.group[data-side=right] .group-data-\[side\=right\]\:left-0{left:0}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:-mt-8{margin-top:-2rem}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:hidden{display:none}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!size-8{width:2rem!important;height:2rem!important}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[--sidebar-width-icon\]{width:var(--sidebar-width-icon)}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)\)\]{width:calc(var(--sidebar-width-icon) + 1rem)}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)_\+2px\)\]{width:calc(var(--sidebar-width-icon) + 1rem + 2px)}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:w-0{width:0}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:translate-x-0{--tw-translate-x:0px}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:translate-x-0,.group[data-side=right] .group-data-\[side\=right\]\:rotate-180{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group[data-side=right] .group-data-\[side\=right\]\:rotate-180{--tw-rotate:180deg}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:overflow-hidden{overflow:hidden}.group[data-variant=floating] .group-data-\[variant\=floating\]\:rounded-lg{border-radius:var(--radius)}.group[data-variant=floating] .group-data-\[variant\=floating\]\:border{border-width:1px}.group[data-side=left] .group-data-\[side\=left\]\:border-r{border-right-width:1px}.group[data-side=right] .group-data-\[side\=right\]\:border-l{border-left-width:1px}.group[data-variant=floating] .group-data-\[variant\=floating\]\:border-sidebar-border{border-color:hsl(var(--sidebar-border))}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!p-0{padding:0!important}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!p-2{padding:.5rem!important}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:opacity-0{opacity:0}.group[data-variant=floating] .group-data-\[variant\=floating\]\:shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:after\:left-full:after{content:var(--tw-content);left:100%}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:hover\:bg-sidebar:hover{background-color:hsl(var(--sidebar-background))}.peer\/menu-button[data-size=default]~.peer-data-\[size\=default\]\/menu-button\:top-1\.5{top:.375rem}.peer\/menu-button[data-size=lg]~.peer-data-\[size\=lg\]\/menu-button\:top-2\.5{top:.625rem}.peer\/menu-button[data-size=sm]~.peer-data-\[size\=sm\]\/menu-button\:top-1{top:.25rem}.peer\/menu-button[data-active=true]~.peer-data-\[active\=true\]\/menu-button\:text-sidebar-accent-foreground{color:hsl(var(--sidebar-accent-foreground))}@media (min-width:640px){.sm\:flex{display:flex}.sm\:table-cell{display:table-cell}.sm\:max-w-2xl{max-width:42rem}.sm\:max-w-md{max-width:28rem}.sm\:max-w-sm{max-width:24rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-start{justify-content:flex-start}.sm\:justify-end{justify-content:flex-end}.sm\:gap-2\.5{gap:.625rem}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:rounded-lg{border-radius:var(--radius)}.sm\:text-left{text-align:left}}@media (min-width:768px){.md\:block{display:block}.md\:inline{display:inline}.md\:flex{display:flex}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:p-6{padding:1.5rem}.md\:text-sm{font-size:.875rem;line-height:1.25rem}.md\:opacity-0{opacity:0}.after\:md\:hidden:after{content:var(--tw-content);display:none}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:m-2{margin:.5rem}.peer[data-state=collapsed][data-variant=inset]~.md\:peer-data-\[state\=collapsed\]\:peer-data-\[variant\=inset\]\:ml-2{margin-left:.5rem}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:ml-0{margin-left:0}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:rounded-xl{border-radius:.75rem}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}}@media (min-width:1024px){.lg\:sticky{position:sticky}.lg\:top-20{top:5rem}.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-\[16rem_1fr\]{grid-template-columns:16rem 1fr}.lg\:grid-cols-\[2fr_1fr\]{grid-template-columns:2fr 1fr}}@media (min-width:1280px){.xl\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.\[\&\:\:-webkit-details-marker\]\:hidden::-webkit-details-marker{display:none}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}.\[\&\>\*\+\*\]\:mt-2>*+*{margin-top:.5rem}.\[\&\>button\]\:hidden>button{display:none}.\[\&\>span\:last-child\]\:truncate>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.\[\&\>span\]\:line-clamp-1>span{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.\[\&\>svg\]\:size-4>svg{width:1rem;height:1rem}.\[\&\>svg\]\:h-2\.5>svg{height:.625rem}.\[\&\>svg\]\:h-3>svg{height:.75rem}.\[\&\>svg\]\:h-3\.5>svg{height:.875rem}.\[\&\>svg\]\:w-2\.5>svg{width:.625rem}.\[\&\>svg\]\:w-3>svg{width:.75rem}.\[\&\>svg\]\:w-3\.5>svg{width:.875rem}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:text-muted-foreground>svg{color:hsl(var(--muted-foreground))}.\[\&\>svg\]\:text-sidebar-accent-foreground>svg{color:hsl(var(--sidebar-accent-foreground))}.\[\&\>tr\]\:last\:border-b-0:last-child>tr{border-bottom-width:0}.\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text{fill:hsl(var(--muted-foreground))}.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke="#ccc"]{stroke:hsl(var(--border)/.5)}.\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor{stroke:hsl(var(--border))}.\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke="#fff"]{stroke:transparent}.\[\&_\.recharts-layer\]\:outline-none .recharts-layer{outline:2px solid transparent;outline-offset:2px}.\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-polar-grid [stroke="#ccc"]{stroke:hsl(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:hsl(var(--muted))}.\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-reference-line [stroke="#ccc"]{stroke:hsl(var(--border))}.\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke="#fff"]{stroke:transparent}.\[\&_\.recharts-sector\]\:outline-none .recharts-sector,.\[\&_\.recharts-surface\]\:outline-none .recharts-surface{outline:2px solid transparent;outline-offset:2px}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-width:0}.\[\&_tr\]\:border-b tr{border-bottom-width:1px}[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2{right:-.5rem}[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize{cursor:e-resize}[data-side=left] .\[\[data-side\=left\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2{left:-.5rem}[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-side=right] .\[\[data-side\=right\]_\&\]\:cursor-e-resize{cursor:e-resize}