@import url(https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800;900&family=Manrope:wght@400;500;600;700;800&display=swap);@import url(https://fonts.googleapis.com/css2?family=Lato:wght@400;700;900&display=swap);*,: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:#3b82f680;--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:#3b82f680;--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: }/*
! tailwindcss v3.4.18 | MIT License | https://tailwindcss.com
*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;tab-size:4}body{line-height:inherit}hr{border-top-width:1px;color:inherit;height:0}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{text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}:root{--background:0 0% 100%;--foreground:210 40% 15%;--card:0 0% 100%;--card-foreground:210 40% 15%;--popover:0 0% 100%;--popover-foreground:210 40% 15%;--primary:209 47% 23%;--primary-foreground:0 0% 98%;--secondary:210 40% 96.1%;--secondary-foreground:209 47% 23%;--muted:210 40% 96.1%;--muted-foreground:215 20% 45%;--accent:209 47% 23%;--accent-foreground:0 0% 98%;--destructive:0 84.2% 60.2%;--destructive-foreground:0 0% 98%;--border:214 32% 91%;--input:214 32% 91%;--ring:209 47% 23%;--radius:0.5rem}.dark{--background:210 40% 10%;--foreground:0 0% 98%;--card:210 40% 12%;--card-foreground:0 0% 98%;--popover:210 40% 10%;--popover-foreground:0 0% 98%;--primary:0 0% 98%;--primary-foreground:209 47% 23%;--secondary:215 20% 20%;--secondary-foreground:0 0% 98%;--muted:215 20% 20%;--muted-foreground:215 20% 65%;--accent:215 20% 20%;--accent-foreground:0 0% 98%;--destructive:0 62.8% 30.6%;--destructive-foreground:0 0% 98%;--border:215 20% 20%;--input:215 20% 20%;--ring:0 0% 83.1%}*{border-color:#e1e7ef;border-color:hsl(var(--border))}body{background-color:#fff;background-color:hsl(var(--background));color:#172636;color:hsl(var(--foreground))}.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{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.invisible{visibility:hidden}.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{bottom:0;top:0}.-bottom-12{bottom:-3rem}.-left-12{left:-3rem}.-right-12{right:-3rem}.-top-12{top:-3rem}.bottom-0{bottom:0}.left-0{left:0}.left-1{left:.25rem}.left-1\/2{left:50%}.left-2{left:.5rem}.left-\[50\%\]{left:50%}.right-0{right:0}.right-1{right:.25rem}.right-2{right:.5rem}.right-4{right:1rem}.top-0{top:0}.top-1{top:.25rem}.top-1\/2{top:50%}.top-4{top:1rem}.top-\[1px\]{top:1px}.top-\[50\%\]{top:50%}.top-\[60\%\]{top:60%}.top-full{top:100%}.z-10{z-index:10}.z-50{z-index:50}.z-\[100\]{z-index:100}.z-\[1\]{z-index:1}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-bottom:.25rem;margin-top:.25rem}.-ml-4{margin-left:-1rem}.-mt-4{margin-top:-1rem}.mb-1{margin-bottom:.25rem}.ml-1{margin-left:.25rem}.ml-auto{margin-left:auto}.mr-2{margin-right:.5rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-24{margin-top:6rem}.mt-4{margin-top:1rem}.mt-auto{margin-top:auto}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.table-row{display:table-row}.grid{display:grid}.hidden{display:none}.aspect-square{aspect-ratio:1/1}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[1px\]{height: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}.max-h-\[--radix-context-menu-content-available-height\]{max-height:var(--radix-context-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}.max-h-\[var\(--radix-dropdown-menu-content-available-height\)\]{max-height:var(--radix-dropdown-menu-content-available-height)}.max-h-screen{max-height:100vh}.min-h-\[60px\]{min-height:60px}.w-10{width:2.5rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-4{width:1rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[100px\]{width:100px}.w-\[1px\]{width:1px}.w-full{width:100%}.w-max{width:-webkit-max-content;width:max-content}.w-px{width:1px}.min-w-0{min-width:0}.min-w-10{min-width:2.5rem}.min-w-8{min-width:2rem}.min-w-9{min-width:2.25rem}.min-w-\[12rem\]{min-width:12rem}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.max-w-lg{max-width:32rem}.max-w-max{max-width:-webkit-max-content;max-width:max-content}.flex-1{flex:1 1}.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-x-1\/2,.-translate-y-1\/2{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-1\/2{--tw-translate-y:-50%}.translate-x-\[-50\%\]{--tw-translate-x:-50%}.translate-x-\[-50\%\],.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%}.rotate-45{--tw-rotate:45deg}.rotate-45,.rotate-90{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))}.rotate-90{--tw-rotate:90deg}.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))}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;user-select:none}.resize{resize:both}.list-none{list-style-type:none}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-4{gap:1rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.25rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.25rem*var(--tw-space-x-reverse))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.5rem*var(--tw-space-x-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.25rem*var(--tw-space-y-reverse));margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.375rem*var(--tw-space-y-reverse));margin-top:calc(.375rem*(1 - var(--tw-space-y-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.whitespace-nowrap{white-space:nowrap}.break-words{overflow-wrap:break-word}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem;border-radius:var(--radius)}.rounded-md{border-radius:calc(.5rem - 2px);border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(.5rem - 4px);border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:.75rem}.rounded-t-\[10px\]{border-top-left-radius:10px;border-top-right-radius:10px}.rounded-tl-sm{border-top-left-radius:calc(.5rem - 4px);border-top-left-radius:calc(var(--radius) - 4px)}.border{border-width:1px}.border-2{border-width:2px}.border-y{border-top-width:1px}.border-b,.border-y{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-destructive{border-color:#ef4444;border-color:hsl(var(--destructive))}.border-destructive\/50{border-color:#ef444480;border-color:hsl(var(--destructive)/.5)}.border-input{border-color:#e1e7ef;border-color:hsl(var(--input))}.border-primary{border-color:#1f3c56;border-color:hsl(var(--primary))}.border-primary\/50{border-color:#1f3c5680;border-color:hsl(var(--primary)/.5)}.border-transparent{border-color:#0000}.border-l-transparent{border-left-color:#0000}.border-t-transparent{border-top-color:#0000}.bg-accent{background-color:#1f3c56;background-color:hsl(var(--accent))}.bg-background{background-color:#fff;background-color:hsl(var(--background))}.bg-black\/80{background-color:#000c}.bg-border{background-color:#e1e7ef;background-color:hsl(var(--border))}.bg-card{background-color:#fff;background-color:hsl(var(--card))}.bg-destructive{background-color:#ef4444;background-color:hsl(var(--destructive))}.bg-foreground{background-color:#172636;background-color:hsl(var(--foreground))}.bg-muted{background-color:#f1f5f9;background-color:hsl(var(--muted))}.bg-muted\/50{background-color:#f1f5f980;background-color:hsl(var(--muted)/.5)}.bg-popover{background-color:#fff;background-color:hsl(var(--popover))}.bg-primary{background-color:#1f3c56;background-color:hsl(var(--primary))}.bg-primary\/10{background-color:#1f3c561a;background-color:hsl(var(--primary)/.1)}.bg-primary\/20{background-color:#1f3c5633;background-color:hsl(var(--primary)/.2)}.bg-secondary{background-color:#f1f5f9;background-color:hsl(var(--secondary))}.bg-transparent{background-color:initial}.fill-current{fill:currentColor}.fill-primary{fill:#1f3c56;fill:hsl(var(--primary))}.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}.p-\[1px\]{padding:1px}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.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-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-bottom:.125rem;padding-top:.125rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-1\.5{padding-bottom:.375rem;padding-top:.375rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-6{padding-bottom:1.5rem;padding-top:1.5rem}.pb-4{padding-bottom:1rem}.pl-2{padding-left:.5rem}.pl-2\.5{padding-left:.625rem}.pl-4{padding-left:1rem}.pl-8{padding-left:2rem}.pr-2{padding-right:.5rem}.pr-2\.5{padding-right:.625rem}.pr-6{padding-right:1.5rem}.pr-8{padding-right:2rem}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.align-middle{vertical-align:middle}.text-\[0\.8rem\]{font-size:.8rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.leading-none{line-height:1}.tracking-tight{letter-spacing:-.025em}.tracking-widest{letter-spacing:.1em}.text-accent-foreground{color:#fafafa;color:hsl(var(--accent-foreground))}.text-card-foreground{color:#172636;color:hsl(var(--card-foreground))}.text-current{color:currentColor}.text-destructive{color:#ef4444;color:hsl(var(--destructive))}.text-destructive-foreground{color:#fafafa;color:hsl(var(--destructive-foreground))}.text-foreground{color:#172636;color:hsl(var(--foreground))}.text-foreground\/50{color:#17263680;color:hsl(var(--foreground)/.5)}.text-muted-foreground{color:#5c6f8a;color:hsl(var(--muted-foreground))}.text-popover-foreground{color:#172636;color:hsl(var(--popover-foreground))}.text-primary{color:#1f3c56;color:hsl(var(--primary))}.text-primary-foreground{color:#fafafa;color:hsl(var(--primary-foreground))}.text-secondary-foreground{color:#1f3c56;color:hsl(var(--secondary-foreground))}.underline{-webkit-text-decoration-line:underline;text-decoration-line:underline}.overline{-webkit-text-decoration-line:overline;text-decoration-line:overline}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-90{opacity:.9}.shadow{--tw-shadow:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-lg{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-md{--tw-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-md,.shadow-sm{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);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 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.outline-none{outline:2px solid #0000;outline-offset:2px}.outline{outline-style:solid}.ring-0{--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(var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-0,.ring-1{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),0 0 #0000;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-ring{--tw-ring-color:hsl(var(--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-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-transform{transition-duration:.15s;transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-1000{transition-duration:1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}@keyframes enter{0%{opacity:1;opacity:var(--tw-enter-opacity,1);transform:translateZ(0) scaleX(1) rotate(0);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))}}@keyframes exit{to{opacity:1;opacity:var(--tw-exit-opacity,1);transform:translateZ(0) scaleX(1) rotate(0);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))}}.animate-in{--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial;animation-duration:.15s;animation-name:enter}.fade-in-0{--tw-enter-opacity:0}.zoom-in-95{--tw-enter-scale:.95}.duration-1000{animation-duration:1s}.duration-200{animation-duration:.2s}.duration-300{animation-duration:.3s}.ease-in-out{animation-timing-function:cubic-bezier(.4,0,.2,1)}.running{animation-play-state:running}.paused{animation-play-state:paused}:root{--tarc-navy:#1a3d5c;--tarc-blue:#2c5f8d;--tarc-light-blue:#4a7ba7;--tarc-dark:#0f1e2e;--tarc-white:#fff;--tarc-cream:#f5f1e8;--tarc-gray:#64748b;--tarc-light-gray:#e2e8f0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8fafc;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.file\:border-0::-webkit-file-upload-button{border-width:0}.file\:border-0::file-selector-button{border-width:0}.file\:bg-transparent::-webkit-file-upload-button{background-color:initial}.file\:bg-transparent::file-selector-button{background-color:initial}.file\:text-sm::-webkit-file-upload-button{font-size:.875rem;line-height:1.25rem}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::-webkit-file-upload-button{font-weight:500}.file\:font-medium::file-selector-button{font-weight:500}.file\:text-foreground::-webkit-file-upload-button{color:#172636;color:hsl(var(--foreground))}.file\:text-foreground::file-selector-button{color:#172636;color:hsl(var(--foreground))}.placeholder\:text-muted-foreground::placeholder{color:#5c6f8a;color:hsl(var(--muted-foreground))}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:inset-y-0:after{bottom:0;content:var(--tw-content);top:0}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:w-1:after{content:var(--tw-content);width:.25rem}.after\:-translate-x-1\/2:after{--tw-translate-x:-50%;content:var(--tw-content);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))}.first\:rounded-l-md:first-child{border-bottom-left-radius:calc(.5rem - 2px);border-bottom-left-radius:calc(var(--radius) - 2px);border-top-left-radius:calc(.5rem - 2px);border-top-left-radius:calc(var(--radius) - 2px)}.first\:border-l:first-child{border-left-width:1px}.last\:rounded-r-md:last-child{border-bottom-right-radius:calc(.5rem - 2px);border-bottom-right-radius:calc(var(--radius) - 2px);border-top-right-radius:calc(.5rem - 2px);border-top-right-radius:calc(var(--radius) - 2px)}.focus-within\:relative:focus-within{position:relative}.focus-within\:z-20:focus-within{z-index:20}.hover\:bg-accent:hover{background-color:#1f3c56;background-color:hsl(var(--accent))}.hover\:bg-destructive\/80:hover{background-color:#ef4444cc;background-color:hsl(var(--destructive)/.8)}.hover\:bg-destructive\/90:hover{background-color:#ef4444e6;background-color:hsl(var(--destructive)/.9)}.hover\:bg-muted:hover{background-color:#f1f5f9;background-color:hsl(var(--muted))}.hover\:bg-muted\/50:hover{background-color:#f1f5f980;background-color:hsl(var(--muted)/.5)}.hover\:bg-primary:hover{background-color:#1f3c56;background-color:hsl(var(--primary))}.hover\:bg-primary\/80:hover{background-color:#1f3c56cc;background-color:hsl(var(--primary)/.8)}.hover\:bg-primary\/90:hover{background-color:#1f3c56e6;background-color:hsl(var(--primary)/.9)}.hover\:bg-secondary:hover{background-color:#f1f5f9;background-color:hsl(var(--secondary))}.hover\:bg-secondary\/80:hover{background-color:#f1f5f9cc;background-color:hsl(var(--secondary)/.8)}.hover\:text-accent-foreground:hover{color:#fafafa;color:hsl(var(--accent-foreground))}.hover\:text-foreground:hover{color:#172636;color:hsl(var(--foreground))}.hover\:text-muted-foreground:hover{color:#5c6f8a;color:hsl(var(--muted-foreground))}.hover\:text-primary-foreground:hover{color:#fafafa;color:hsl(var(--primary-foreground))}.hover\:underline:hover{-webkit-text-decoration-line:underline;text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.focus\:bg-accent:focus{background-color:#1f3c56;background-color:hsl(var(--accent))}.focus\:bg-primary:focus{background-color:#1f3c56;background-color:hsl(var(--primary))}.focus\:text-accent-foreground:focus{color:#fafafa;color:hsl(var(--accent-foreground))}.focus\:text-primary-foreground:focus{color:#fafafa;color:hsl(var(--primary-foreground))}.focus\:opacity-100:focus{opacity:1}.focus\:outline-none:focus{outline:2px solid #0000;outline-offset:2px}.focus\:ring-1: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(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.focus\:ring-1:focus,.focus\:ring-2:focus{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),0 0 #0000;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.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)}.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 #0000;outline-offset:2px}.focus-visible\:ring-1: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(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),0 0 #0000;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.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),0 0 #0000;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-offset-1:focus-visible{--tw-ring-offset-width:1px}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color:hsl(var(--background))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:opacity-100{opacity:1}.group.destructive .group-\[\.destructive\]\:border-muted\/40{border-color:#f1f5f966;border-color:hsl(var(--muted)/.4)}.group.toaster .group-\[\.toaster\]\:border-border{border-color:#e1e7ef;border-color:hsl(var(--border))}.group.toast .group-\[\.toast\]\:bg-muted{background-color:#f1f5f9;background-color:hsl(var(--muted))}.group.toast .group-\[\.toast\]\:bg-primary{background-color:#1f3c56;background-color:hsl(var(--primary))}.group.toaster .group-\[\.toaster\]\:bg-background{background-color:#fff;background-color:hsl(var(--background))}.group.destructive .group-\[\.destructive\]\:text-red-300{--tw-text-opacity:1;color:#fca5a5;color:rgb(252 165 165/var(--tw-text-opacity,1))}.group.toast .group-\[\.toast\]\:text-muted-foreground{color:#5c6f8a;color:hsl(var(--muted-foreground))}.group.toast .group-\[\.toast\]\:text-primary-foreground{color:#fafafa;color:hsl(var(--primary-foreground))}.group.toaster .group-\[\.toaster\]\:text-foreground{color:#172636;color:hsl(var(--foreground))}.group.toaster .group-\[\.toaster\]\:shadow-lg{--tw-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.group.destructive .group-\[\.destructive\]\:hover\:border-destructive\/30:hover{border-color:#ef44444d;border-color:hsl(var(--destructive)/.3)}.group.destructive .group-\[\.destructive\]\:hover\:bg-destructive:hover{background-color:#ef4444;background-color:hsl(var(--destructive))}.group.destructive .group-\[\.destructive\]\:hover\:text-destructive-foreground:hover{color:#fafafa;color:hsl(var(--destructive-foreground))}.group.destructive .group-\[\.destructive\]\:hover\:text-red-50:hover{--tw-text-opacity:1;color:#fef2f2;color:rgb(254 242 242/var(--tw-text-opacity,1))}.group.destructive .group-\[\.destructive\]\:focus\:ring-destructive:focus{--tw-ring-color:hsl(var(--destructive))}.group.destructive .group-\[\.destructive\]\:focus\:ring-red-400:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(248 113 113/var(--tw-ring-opacity,1))}.group.destructive .group-\[\.destructive\]\:focus\:ring-offset-red-600:focus{--tw-ring-offset-color:#dc2626}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-70{opacity:.7}.has-\[\:disabled\]\:opacity-50:has(:disabled){opacity:.5}.aria-selected\:bg-accent[aria-selected=true]{background-color:#1f3c56;background-color:hsl(var(--accent))}.aria-selected\:bg-accent\/50[aria-selected=true]{background-color:#1f3c5680;background-color:hsl(var(--accent)/.5)}.aria-selected\:text-accent-foreground[aria-selected=true]{color:#fafafa;color:hsl(var(--accent-foreground))}.aria-selected\:text-muted-foreground[aria-selected=true]{color:#5c6f8a;color:hsl(var(--muted-foreground))}.aria-selected\:opacity-100[aria-selected=true]{opacity:1}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true],.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.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-\[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-\[state\=checked\]\:translate-x-4[data-state=checked]{--tw-translate-x:1rem;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-\[state\=unchecked\]\:translate-x-0[data-state=unchecked],.data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel]{--tw-translate-x:0px;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-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end]{--tw-translate-x:var(--radix-toast-swipe-end-x)}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end],.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{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-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{--tw-translate-x:var(--radix-toast-swipe-move-x)}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height)}to{height:0}}.data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{animation:accordion-up .2s ease-out}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height)}}.data-\[state\=open\]\:animate-accordion-down[data-state=open]{animation:accordion-down .2s ease-out}.data-\[panel-group-direction\=vertical\]\:flex-col[data-panel-group-direction=vertical]{flex-direction:column}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:#1f3c56;background-color:hsl(var(--accent))}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:#fff;background-color:hsl(var(--background))}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:#1f3c56;background-color:hsl(var(--primary))}.data-\[state\=on\]\:bg-accent[data-state=on],.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:#1f3c56;background-color:hsl(var(--accent))}.data-\[state\=open\]\:bg-accent\/50[data-state=open]{background-color:#1f3c5680;background-color:hsl(var(--accent)/.5)}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:#f1f5f9;background-color:hsl(var(--secondary))}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:#f1f5f9;background-color:hsl(var(--muted))}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:#e1e7ef;background-color:hsl(var(--input))}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:#5c6f8a;color:hsl(var(--muted-foreground))}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:#fafafa;color:hsl(var(--accent-foreground))}.data-\[state\=active\]\:text-foreground[data-state=active]{color:#172636;color:hsl(var(--foreground))}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:#fafafa;color:hsl(var(--primary-foreground))}.data-\[state\=on\]\:text-accent-foreground[data-state=on],.data-\[state\=open\]\:text-accent-foreground[data-state=open]{color:#fafafa;color:hsl(var(--accent-foreground))}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:#5c6f8a;color:hsl(var(--muted-foreground))}.data-\[disabled\=true\]\:opacity-50[data-disabled=true],.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[state\=active\]\:shadow[data-state=active]{--tw-shadow:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.data-\[swipe\=move\]\:transition-none[data-swipe=move]{transition-property:none}.data-\[state\=closed\]\:duration-300[data-state=closed]{transition-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{transition-duration:.5s}.data-\[motion\^\=from-\]\:animate-in[data-motion^=from-],.data-\[state\=open\]\:animate-in[data-state=open],.data-\[state\=visible\]\:animate-in[data-state=visible]{--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial;animation-duration:.15s;animation-name:enter}.data-\[motion\^\=to-\]\:animate-out[data-motion^=to-],.data-\[state\=closed\]\:animate-out[data-state=closed],.data-\[state\=hidden\]\:animate-out[data-state=hidden],.data-\[swipe\=end\]\:animate-out[data-swipe=end]{--tw-exit-opacity:initial;--tw-exit-scale:initial;--tw-exit-rotate:initial;--tw-exit-translate-x:initial;--tw-exit-translate-y:initial;animation-duration:.15s;animation-name:exit}.data-\[motion\^\=from-\]\:fade-in[data-motion^=from-]{--tw-enter-opacity:0}.data-\[motion\^\=to-\]\:fade-out[data-motion^=to-],.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:fade-out-80[data-state=closed]{--tw-exit-opacity:0.8}.data-\[state\=hidden\]\:fade-out[data-state=hidden]{--tw-exit-opacity:0}.data-\[state\=open\]\:fade-in-0[data-state=open],.data-\[state\=visible\]\:fade-in[data-state=visible]{--tw-enter-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.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-\[motion\=from-end\]\:slide-in-from-right-52[data-motion=from-end]{--tw-enter-translate-x:13rem}.data-\[motion\=from-start\]\:slide-in-from-left-52[data-motion=from-start]{--tw-enter-translate-x:-13rem}.data-\[motion\=to-end\]\:slide-out-to-right-52[data-motion=to-end]{--tw-exit-translate-x:13rem}.data-\[motion\=to-start\]\:slide-out-to-left-52[data-motion=to-start]{--tw-exit-translate-x:-13rem}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:-0.5rem}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:0.5rem}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:-0.5rem}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:0.5rem}.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-left-1\/2[data-state=closed]{--tw-exit-translate-x:-50%}.data-\[state\=closed\]\:slide-out-to-right-full[data-state=closed],.data-\[state\=closed\]\:slide-out-to-right[data-state=closed]{--tw-exit-translate-x:100%}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y:-100%}.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state=closed]{--tw-exit-translate-y:-48%}.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-left-1\/2[data-state=open]{--tw-enter-translate-x:-50%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x:100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y:-100%}.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state=open]{--tw-enter-translate-y:-48%}.data-\[state\=open\]\:slide-in-from-top-full[data-state=open]{--tw-enter-translate-y:-100%}.data-\[state\=closed\]\:duration-300[data-state=closed]{animation-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{animation-duration:.5s}.data-\[panel-group-direction\=vertical\]\:after\:left-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);left:0}.data-\[panel-group-direction\=vertical\]\:after\:h-1[data-panel-group-direction=vertical]:after{content:var(--tw-content);height:.25rem}.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-y-1\/2[data-panel-group-direction=vertical]:after{--tw-translate-y:-50%;content:var(--tw-content);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-\[panel-group-direction\=vertical\]\:after\:translate-x-0[data-panel-group-direction=vertical]:after{--tw-translate-x:0px;content:var(--tw-content);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-\[state\=open\]\:focus\:bg-accent:focus[data-state=open],.data-\[state\=open\]\:hover\:bg-accent:hover[data-state=open]{background-color:#1f3c56;background-color:hsl(var(--accent))}.group[data-state=open] .group-data-\[state\=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))}.dark\:border-destructive:is(.dark *){border-color:#ef4444;border-color:hsl(var(--destructive))}@media (min-width:640px){.sm\:bottom-0{bottom:0}.sm\:right-0{right:0}.sm\:top-auto{top:auto}.sm\:mt-0{margin-top:0}.sm\:max-w-sm{max-width:24rem}.sm\:flex-row{flex-direction:row}.sm\:flex-col{flex-direction:column}.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-left:calc(.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.5rem*var(--tw-space-x-reverse))}.sm\:space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1rem*var(--tw-space-x-reverse))}.sm\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(0px*var(--tw-space-y-reverse));margin-top:calc(0px*(1 - var(--tw-space-y-reverse)))}.sm\:rounded-lg{border-radius:.5rem;border-radius:var(--radius)}.sm\:text-left{text-align:left}.data-\[state\=open\]\:sm\:slide-in-from-bottom-full[data-state=open]{--tw-enter-translate-y:100%}}@media (min-width:768px){.md\:absolute{position:absolute}.md\:w-\[var\(--radix-navigation-menu-viewport-width\)\]{width:var(--radix-navigation-menu-viewport-width)}.md\:w-auto{width:auto}.md\:max-w-\[420px\]{max-width:420px}.md\:text-sm{font-size:.875rem;line-height:1.25rem}}.\[\&\+div\]\:text-xs+div{font-size:.75rem;line-height:1rem}.\[\&\:has\(\>\.day-range-end\)\]\:rounded-r-md:has(>.day-range-end){border-bottom-right-radius:calc(.5rem - 2px);border-bottom-right-radius:calc(var(--radius) - 2px);border-top-right-radius:calc(.5rem - 2px);border-top-right-radius:calc(var(--radius) - 2px)}.\[\&\:has\(\>\.day-range-start\)\]\:rounded-l-md:has(>.day-range-start){border-bottom-left-radius:calc(.5rem - 2px);border-bottom-left-radius:calc(var(--radius) - 2px);border-top-left-radius:calc(.5rem - 2px);border-top-left-radius:calc(var(--radius) - 2px)}.\[\&\:has\(\[aria-selected\]\)\]\:rounded-md:has([aria-selected]){border-radius:calc(.5rem - 2px);border-radius:calc(var(--radius) - 2px)}.\[\&\:has\(\[aria-selected\]\)\]\:bg-accent:has([aria-selected]){background-color:#1f3c56;background-color:hsl(var(--accent))}.first\:\[\&\:has\(\[aria-selected\]\)\]\:rounded-l-md:has([aria-selected]):first-child{border-bottom-left-radius:calc(.5rem - 2px);border-bottom-left-radius:calc(var(--radius) - 2px);border-top-left-radius:calc(.5rem - 2px);border-top-left-radius:calc(var(--radius) - 2px)}.last\:\[\&\:has\(\[aria-selected\]\)\]\:rounded-r-md:has([aria-selected]):last-child{border-bottom-right-radius:calc(.5rem - 2px);border-bottom-right-radius:calc(var(--radius) - 2px);border-top-right-radius:calc(.5rem - 2px);border-top-right-radius:calc(var(--radius) - 2px)}.\[\&\:has\(\[aria-selected\]\.day-outside\)\]\:bg-accent\/50:has([aria-selected].day-outside){background-color:#1f3c5680;background-color:hsl(var(--accent)/.5)}.\[\&\:has\(\[aria-selected\]\.day-range-end\)\]\:rounded-r-md:has([aria-selected].day-range-end){border-bottom-right-radius:calc(.5rem - 2px);border-bottom-right-radius:calc(var(--radius) - 2px);border-top-right-radius:calc(.5rem - 2px);border-top-right-radius:calc(var(--radius) - 2px)}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y:2px;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))}.\[\&\>span\]\:line-clamp-1>span{-webkit-box-orient:vertical;-webkit-line-clamp:1;display:-webkit-box;overflow:hidden}.\[\&\>svg\+div\]\:translate-y-\[-3px\]>svg+div{--tw-translate-y:-3px;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))}.\[\&\>svg\]\:absolute>svg{position:absolute}.\[\&\>svg\]\:left-4>svg{left:1rem}.\[\&\>svg\]\:top-4>svg{top:1rem}.\[\&\>svg\]\:size-4>svg{height:1rem;width:1rem}.\[\&\>svg\]\:h-3\.5>svg{height:.875rem}.\[\&\>svg\]\:w-3\.5>svg{width:.875rem}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:text-destructive>svg{color:#ef4444;color:hsl(var(--destructive))}.\[\&\>svg\]\:text-foreground>svg{color:#172636;color:hsl(var(--foreground))}.\[\&\>svg\~\*\]\:pl-7>svg~*{padding-left:1.75rem}.\[\&\>tr\]\:last\:border-b-0:last-child>tr{border-bottom-width:0}.\[\&\[data-panel-group-direction\=vertical\]\>div\]\:rotate-90[data-panel-group-direction=vertical]>div{--tw-rotate:90deg}.\[\&\[data-panel-group-direction\=vertical\]\>div\]\:rotate-90[data-panel-group-direction=vertical]>div,.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{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-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{--tw-rotate:180deg}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-bottom:.375rem;padding-top:.375rem}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:.75rem;line-height:1rem}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{font-weight:500}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:#5c6f8a;color:hsl(var(--muted-foreground))}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:0}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg{height:1.25rem}.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg{width:1.25rem}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:3rem}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-bottom:.75rem;padding-top:.75rem}.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{height:1.25rem}.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{width:1.25rem}.\[\&_p\]\:leading-relaxed p{line-height:1.625}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{height:1rem;width: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}*{box-sizing:border-box;margin:0;padding:0}.App{display:flex;flex-direction:column;min-height:100vh}.App,body{background:#0f172a}body{color:#e2e8f0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6}.container{margin:0 auto;max-width:1400px;padding:0 24px}.page-wrapper{flex:1 1}a{color:inherit;text-decoration:none;transition:color .2s ease}a:hover{color:#2c5f8d}a.btn-primary,a.btn-primary:hover,a.header-start-btn,a.header-start-btn:hover,a.hero-btn-primary,a.hero-btn-primary:hover{color:#fff}a.btn-primary.light,a.btn-primary.light:hover{color:#0052ff}a.btn-outline,a.btn-outline:hover,a.btn-secondary,a.btn-secondary:hover{color:#0f172a}a.btn-outline.light,a.btn-outline.light:hover{color:#fff}a.btn-link-arrow,a.btn-link-arrow:hover,a.link-arrow,a.link-arrow:hover{color:#0052ff}button{cursor:pointer;font-family:inherit;transition:all .3s ease}img{display:block;height:auto;max-width:100%}.glass-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #ffffff4d;box-shadow:0 8px 32px #1a3d5c1a}html{scroll-behavior:smooth}.gutter-calculator .calculator-header,.gutter-calculator .gutter-header,.pitch-calculator .calculator-header,.ventilation-calculator .calculator-header,.weather-calculator .calculator-header{border-radius:0!important;box-sizing:border-box;margin-left:calc(-50vw + 50%);padding:40px max(30px,calc(50vw - 680px))!important;width:100vw}.panel-optimizer-header{background:linear-gradient(135deg,#8b5cf6,#7c3aed)!important}.panel-optimizer-header .container{max-width:1400px!important;padding:0 30px!important}.panel-optimizer-header .header-content{justify-content:flex-start!important;text-align:left!important}.designer-header{background:linear-gradient(135deg,#059669,#047857)!important;padding:40px 30px!important;text-align:left!important}.designer-header h1{color:#fff!important;font-size:36px!important;font-weight:700!important;text-shadow:0 2px 8px #0000004d!important}.designer-header p{color:#fffffff2!important;font-size:16px!important;text-shadow:0 1px 4px #0003!important}.genie-header{background:linear-gradient(135deg,#2c5f8d,#4a7ba7)!important;border-bottom:none!important;padding:40px 20px 36px!important}.genie-header h1{font-size:36px!important;font-weight:700!important}.qe-header{background:linear-gradient(135deg,#f59e0b,#f97316)!important;border-radius:0!important;box-sizing:border-box;margin:0 0 0 calc(-50vw + 50%)!important;padding:40px max(30px,calc(50vw - 600px))!important;width:100vw}.qe-header h1{color:#fff!important}.qe-header p{color:#ffffffe6!important}.gutter-calculator,.job-scheduler,.panel-optimizer-page,.pitch-calculator,.ventilation-calculator,.weather-calculator{background:#0f172a!important;min-height:100vh}.gutter-calculator,.pitch-calculator,.ventilation-calculator,.weather-calculator{padding-top:0!important}.gutter-calculator .input-section,.gutter-calculator .pricing-section,.gutter-calculator .results-section,.gutter-calculator .saved-calculations,.panel-optimizer-page .input-section,.panel-optimizer-page .results-section,.pitch-calculator .input-section,.pitch-calculator .pricing-section,.pitch-calculator .results-section,.pitch-calculator .saved-calculations,.ventilation-calculator .input-section,.ventilation-calculator .pricing-section,.ventilation-calculator .results-section,.ventilation-calculator .saved-section,.weather-calculator .input-section,.weather-calculator .pricing-section,.weather-calculator .results-section,.weather-calculator .saved-section{background:#1e293b!important;border:1px solid #334155!important;box-shadow:0 4px 16px #0000004d!important}.gutter-calculator .input-section h2,.gutter-calculator .pricing-section h2,.gutter-calculator .results-section h2,.gutter-calculator .saved-calculations h2,.panel-optimizer-page h2,.pitch-calculator .input-section h2,.pitch-calculator .pricing-section h2,.pitch-calculator .results-section h2,.pitch-calculator .saved-calculations h2,.ventilation-calculator .input-section h2,.ventilation-calculator .pricing-section h2,.ventilation-calculator .results-section h2,.ventilation-calculator .saved-section h2,.weather-calculator .input-section h2,.weather-calculator .pricing-section h2,.weather-calculator .results-section h2,.weather-calculator .saved-section h2{border-bottom-color:#334155!important;color:#e2e8f0!important}.gutter-calculator .input-section h3,.gutter-calculator .results-section h3,.pitch-calculator .input-section h3,.pitch-calculator .results-section h3,.ventilation-calculator .input-section h3,.ventilation-calculator .results-section h3,.weather-calculator .input-section h3,.weather-calculator .results-section h3{border-bottom-color:#334155!important;color:#94a3b8!important}.gutter-calculator .form-group label,.gutter-calculator .form-row label,.panel-optimizer-page label,.pitch-calculator .form-group label,.pitch-calculator .form-row label,.pitch-calculator .input-group label,.ventilation-calculator .input-group label,.weather-calculator .input-group label{color:#cbd5e1!important}.gutter-calculator .form-group input,.gutter-calculator .form-group select,.panel-optimizer-page input,.panel-optimizer-page select,.pitch-calculator .form-group input,.pitch-calculator .form-group select,.pitch-calculator .input-group input,.pitch-calculator .input-group select,.ventilation-calculator .input-group input,.ventilation-calculator .input-group select,.weather-calculator .input-group input,.weather-calculator .input-group select{background:#0f172a!important;border:1px solid #334155!important;border-radius:8px;color:#e2e8f0!important}.gutter-calculator .form-group input:focus,.gutter-calculator .form-group select:focus,.panel-optimizer-page input:focus,.panel-optimizer-page select:focus,.pitch-calculator .form-group input:focus,.pitch-calculator .form-group select:focus,.pitch-calculator .input-group input:focus,.pitch-calculator .input-group select:focus,.ventilation-calculator .input-group input:focus,.ventilation-calculator .input-group select:focus,.weather-calculator .input-group input:focus,.weather-calculator .input-group select:focus{border-color:#3b82f6!important;box-shadow:0 0 0 2px #3b82f626!important}.gutter-calculator .form-group input::placeholder,.panel-optimizer-page input::placeholder,.pitch-calculator .form-group input::placeholder,.pitch-calculator .input-group input::placeholder,.ventilation-calculator .input-group input::placeholder,.weather-calculator .input-group input::placeholder{color:#475569!important}.gutter-calculator .form-group small,.panel-optimizer-page small,.pitch-calculator .form-group small,.pitch-calculator .input-group small,.ventilation-calculator .input-group small,.weather-calculator .input-group small{color:#64748b!important}.gutter-calculator .result-card,.pitch-calculator .conversion-card,.ventilation-calculator .result-card,.weather-calculator .result-card{background:#0f172a!important;border-color:#334155!important}.gutter-calculator .result-card.highlight{background:#06b6d41a!important;border-color:#06b6d4!important}.gutter-calculator .result-card h3,.gutter-calculator .result-card h4,.ventilation-calculator .result-card h4,.weather-calculator .result-card h4{color:#94a3b8!important}.gutter-calculator .result-card p,.ventilation-calculator .result-note,.weather-calculator .result-note{color:#64748b!important}.pitch-calculator .conversion-card{background:#ef44441a!important;border-color:#ef4444!important}.pitch-calculator .conversion-card h4{color:#fca5a5!important}.pitch-calculator .walkability-safe{background:#10b9811a!important;border-color:#10b981!important}.pitch-calculator .walkability-safe h4{color:#6ee7b7!important}.pitch-calculator .walkability-caution{background:#f59e0b1a!important;border-color:#f59e0b!important}.pitch-calculator .walkability-caution h4{color:#fcd34d!important}.pitch-calculator .walkability-dangerous{background:#ef444426!important;border-color:#ef4444!important}.pitch-calculator .rafter-results{background:#06b6d41a!important;border-color:#06b6d4!important}.pitch-calculator .rafter-results h3{color:#22d3ee!important}.pitch-calculator .result-item{background:#0f172a!important}.pitch-calculator .result-item label{color:#94a3b8!important}.pitch-calculator .materials-section{background:#1e293b!important;border-color:#334155!important}.pitch-calculator .materials-section h3{color:#6ee7b7!important}.pitch-calculator .materials-hint{color:#94a3b8!important}.pitch-calculator .material-item{background:#10b98114!important;border-left-color:#10b981!important;color:#a7f3d0!important}.pitch-calculator .material-item:hover{background:#10b98126!important}.pitch-calculator .material-item.selected{background:#05966933!important;border-left-color:#059669!important}.pitch-calculator .selected-materials-summary{background:#3b82f61a!important;border-left-color:#3b82f6!important;color:#93c5fd!important}.pitch-calculator .warning{background:#ef44441a!important;border-left-color:#ef4444!important;color:#fca5a5!important}.pitch-calculator .input-method-selector button,.pitch-calculator .pitch-visual{background:#0f172a!important;border-color:#334155!important}.pitch-calculator .input-method-selector button{color:#94a3b8!important}.pitch-calculator .input-method-selector button:hover{border-color:#ef4444!important;color:#ef4444!important}.pitch-calculator .input-method-selector button.active{background:#ef4444!important;border-color:#ef4444!important;color:#fff!important}.ventilation-calculator .compliance-badge.compliant{background:#10b98126!important;border-color:#10b981!important;color:#6ee7b7!important}.ventilation-calculator .compliance-badge.non-compliant{background:#f59e0b26!important;border-color:#f59e0b!important;color:#fcd34d!important}.ventilation-calculator .result-card{background:#14b8a61a!important;border-color:#14b8a6!important}.ventilation-calculator .result-card h4{color:#5eead4!important}.ventilation-calculator .products-list{background:#0f172a!important}.ventilation-calculator .product-item{background:#1e293b!important;border-color:#334155!important}.ventilation-calculator .product-name{color:#e2e8f0!important}.weather-calculator .info-notice{background:#3b82f61a!important;border-color:#334155!important;color:#93c5fd!important}.weather-calculator .result-card{background:#6366f11a!important;border-color:#6366f1!important}.weather-calculator .result-card h4{color:#a5b4fc!important}.gutter-calculator .saved-item,.pitch-calculator .saved-item,.ventilation-calculator .saved-item,.weather-calculator .saved-item{background:#0f172a!important;border-color:#334155!important}.gutter-calculator .saved-item h4,.pitch-calculator .saved-item h4,.pitch-calculator .saved-item-header h4,.ventilation-calculator .saved-item-header h4,.weather-calculator .saved-item-header h4{color:#e2e8f0!important}.gutter-calculator .saved-item p,.pitch-calculator .saved-item p,.ventilation-calculator .saved-item p,.weather-calculator .saved-item p{color:#94a3b8!important}.gutter-calculator .btn-secondary,.pitch-calculator .btn-secondary,.ventilation-calculator .btn-export,.weather-calculator .btn-export{background:#0f172a!important;border-color:#334155!important;color:#e2e8f0!important}.gutter-calculator .btn-secondary:hover,.pitch-calculator .btn-secondary:hover,.ventilation-calculator .btn-export:hover,.weather-calculator .btn-export:hover{background:#334155!important}.gutter-calculator .position-list li{background:#0f172a!important;color:#e2e8f0!important}.gutter-calculator .quote-header,.pitch-calculator .quote-header,.ventilation-calculator .quote-header,.weather-calculator .quote-header{background:#0f172a!important}.gutter-calculator .quote-header p,.pitch-calculator .quote-header p,.ventilation-calculator .quote-header p,.weather-calculator .quote-header p{color:#94a3b8!important}.gutter-calculator .quote-table td,.pitch-calculator .quote-table td,.ventilation-calculator .quote-table td,.weather-calculator .quote-table td{border-bottom-color:#334155!important;color:#cbd5e1!important}.gutter-calculator .quote-table tr:hover,.pitch-calculator .quote-table tr:hover,.ventilation-calculator .quote-table tr:hover,.weather-calculator .quote-table tr:hover{background:#ffffff08!important}.gutter-calculator .quote-table .section-header,.pitch-calculator .quote-table .section-header{background:#0f172a!important}.gutter-calculator .quote-table .section-header td,.pitch-calculator .quote-table .section-header td{color:#94a3b8!important}.gutter-calculator .quote-table .subtotal-row,.pitch-calculator .quote-table .subtotal-row,.ventilation-calculator .quote-table .subtotal-row,.weather-calculator .quote-table .subtotal-row{background:#0f172a!important}.gutter-calculator .quote-summary,.pitch-calculator .quote-summary,.ventilation-calculator .quote-summary,.weather-calculator .quote-summary{background:#06b6d41a!important}.gutter-calculator .summary-item span,.pitch-calculator .summary-item span,.ventilation-calculator .summary-item span,.weather-calculator .summary-item span{color:#94a3b8!important}.gutter-calculator .quote-notes,.pitch-calculator .quote-notes,.ventilation-calculator .quote-notes,.weather-calculator .quote-notes{background:#f59e0b1a!important;border-left-color:#f59e0b!important}.gutter-calculator .quote-notes h4,.pitch-calculator .quote-notes h4,.ventilation-calculator .quote-notes h4,.weather-calculator .quote-notes h4{color:#fcd34d!important}.gutter-calculator .quote-notes li,.pitch-calculator .quote-notes li,.ventilation-calculator .quote-notes li,.weather-calculator .quote-notes li{color:#fbbf24!important}.panel-optimizer-page .panel-optimizer-content{padding:40px 20px 80px}.panel-optimizer-page .cuts-list{background:#0f172a!important}.panel-optimizer-page .cuts-list h4{color:#94a3b8!important}.panel-optimizer-page .cut-item{background:#1e293b!important;border-color:#334155!important}.panel-optimizer-page .cut-item span{color:#e2e8f0!important}.panel-optimizer-page .stat-card{background:#3b82f61a!important;border-color:#334155!important}.panel-optimizer-page .stat-label{color:#94a3b8!important}.panel-optimizer-page .stat-value{color:#60a5fa!important}.panel-optimizer-page .cutting-schedule h3{color:#e2e8f0!important}.panel-optimizer-page .sheet-card{background:#1e293b!important;border-color:#334155!important}.panel-optimizer-page .sheet-header strong{color:#e2e8f0!important}.panel-optimizer-page .efficiency-badge{background:#10b98126!important;color:#6ee7b7!important}.panel-optimizer-page .sheet-cuts{background:#0f172a!important;color:#cbd5e1!important}.panel-optimizer-page .sheet-stats{color:#94a3b8!important}.panel-optimizer-page .sheet-visual{background:#334155!important}.panel-optimizer-page .optimization-notes{background:#f59e0b1a!important;border-left-color:#f59e0b!important}.panel-optimizer-page .optimization-notes h4{color:#fcd34d!important}.panel-optimizer-page .optimization-notes li{color:#fbbf24!important}.panel-optimizer-page .saved-calculations{border-top-color:#334155!important}.panel-optimizer-page .saved-calculations h3{color:#e2e8f0!important}.panel-optimizer-page .saved-item{background:#0f172a!important;border-color:#334155!important}.panel-optimizer-page .saved-item:hover{border-color:#10b981!important}.panel-optimizer-page .saved-name{color:#e2e8f0!important}.panel-optimizer-page .saved-date{color:#64748b!important}.panel-optimizer-page .btn-icon-small{background:#1e293b!important;color:#94a3b8!important}.job-scheduler .scheduler-header{padding:40px max(30px,calc(50vw - 680px))!important}.job-scheduler .scheduler-tabs{background:#1e293b!important;border-bottom-color:#334155!important}.job-scheduler .scheduler-tabs button{color:#94a3b8!important}.job-scheduler .scheduler-tabs button:hover{background:#eab3081a!important;color:#eab308!important}.job-scheduler .scheduler-tabs button.active{border-bottom-color:#eab308!important;color:#eab308!important}.job-scheduler .calendar-header h2,.job-scheduler .view-header h2{color:#e2e8f0!important}.job-scheduler .day-schedule{background:#1e293b!important;border:1px solid #334155!important;box-shadow:0 4px 16px #0000004d!important}.job-scheduler .day-schedule h3{color:#e2e8f0!important}.job-scheduler .empty-state{background:#0f172a!important;border-radius:12px;padding:60px 20px}.job-scheduler .empty-state svg{color:#475569!important}.job-scheduler .empty-state p{color:#64748b!important}.job-scheduler .date-picker{background:#eab3081a!important;border-color:#334155!important}.job-scheduler .date-picker input[type=date]{background:#0f172a!important;border-color:#334155!important;color:#e2e8f0!important}.job-scheduler input,.job-scheduler select,.job-scheduler textarea{background:#0f172a!important;border:1px solid #334155!important;color:#e2e8f0!important}.job-scheduler input:focus,.job-scheduler select:focus,.job-scheduler textarea:focus{border-color:#eab308!important;box-shadow:0 0 0 2px #eab30826!important}.job-scheduler input::placeholder,.job-scheduler textarea::placeholder{color:#475569!important}.job-scheduler .job-card{background:#1e293b!important;border-color:#334155!important}.job-scheduler .job-card:hover{box-shadow:0 4px 12px #0000004d!important}.job-scheduler .job-card-header h4{color:#e2e8f0!important}.job-scheduler .client-name,.job-scheduler .detail-item{color:#94a3b8!important}.job-scheduler .job-card-actions{border-top-color:#334155!important}.job-scheduler .crew-card{background:#1e293b!important;border-color:#334155!important}.job-scheduler .crew-card:hover{border-color:#eab308!important;box-shadow:0 4px 12px #eab30826!important}.job-scheduler .crew-info h4{color:#e2e8f0!important}.job-scheduler .crew-email,.job-scheduler .crew-phone{color:#94a3b8!important}.job-scheduler .btn-secondary{background:#0f172a!important;border-color:#334155!important;color:#e2e8f0!important}.job-scheduler .btn-secondary:hover{border-color:#eab308!important;color:#eab308!important}.job-scheduler .btn-icon:hover{background:#334155!important}.job-scheduler .modal-content{background:#1e293b!important;border:1px solid #334155!important}.job-scheduler .modal-header{border-bottom-color:#334155!important}.job-scheduler .modal-header h2{color:#e2e8f0!important}.job-scheduler .btn-close{color:#94a3b8!important}.job-scheduler .btn-close:hover{background:#334155!important;color:#e2e8f0!important}.job-scheduler .modal-footer{border-top-color:#334155!important}.job-scheduler .form-group label{color:#cbd5e1!important}.gutter-calculator .btn-delete,.pitch-calculator .btn-delete,.ventilation-calculator .btn-delete,.weather-calculator .btn-delete{background:#ef444426!important;color:#f87171!important}.gutter-calculator .btn-delete:hover,.pitch-calculator .btn-delete:hover,.ventilation-calculator .btn-delete:hover,.weather-calculator .btn-delete:hover{background:#ef444440!important}.header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff2;border-bottom:1px solid #e2e8f0;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-container{gap:32px;height:80px;justify-content:space-between;margin:0 auto;max-width:1280px;padding:0 40px}.header-container,.header-logo{align-items:center;display:flex}.header-logo{flex-shrink:0;gap:10px;text-decoration:none}.header-logo-img{border-radius:10px;height:40px;object-fit:cover;width:40px}.header-logo-text{color:#0f172a;font-family:Lato,sans-serif;font-size:24px;font-weight:900;letter-spacing:-.01em}.header-nav{display:flex}.header-nav,.nav-item{align-items:center;gap:4px}.nav-item{background:none;border:none;border-radius:8px;color:#334155;cursor:pointer;display:inline-flex;font-family:Lato,sans-serif;font-size:16px;font-weight:600;padding:10px 18px;text-decoration:none;transition:color .15s,background .15s}.nav-item:hover{background:#f1f5f9;color:#0f172a}.nav-item.active{color:#2563eb}.nav-chevron{transition:transform .2s}.nav-chevron.open{transform:rotate(180deg)}.nav-dropdown-wrap{position:relative}.mega-dropdown{grid-gap:24px;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 16px 48px #0000001f,0 4px 12px #0000000f;display:grid;gap:24px;grid-template-columns:repeat(3,220px);left:50%;margin-top:8px;padding:24px;position:absolute;top:100%;transform:translateX(-50%);z-index:200}.mega-col-title{color:#64748b;font-family:Lato,sans-serif;font-size:12px;font-weight:900;letter-spacing:.1em;margin-bottom:12px;padding-left:8px;text-transform:uppercase}.mega-item{align-items:flex-start;border-radius:10px;display:flex;gap:10px;padding:10px 8px;text-decoration:none;transition:background .15s}.mega-item:hover{background:#f1f5f9}.mega-item-icon{color:#3b82f6;flex-shrink:0;margin-top:2px}.mega-item-label{color:#0f172a;font-size:14px;font-weight:700;line-height:1.3}.mega-item-desc{color:#475569;font-size:12px;line-height:1.4;margin-top:2px}.small-dropdown{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 16px 48px #0000001a;left:50%;margin-top:8px;min-width:200px;padding:8px;position:absolute;top:100%;transform:translateX(-50%);z-index:200}.small-dropdown-item{align-items:center;border-radius:8px;color:#334155;display:flex;font-size:14px;font-weight:600;gap:10px;padding:10px 14px;text-decoration:none;transition:background .15s}.small-dropdown-item:hover{background:#f1f5f9;color:#0f172a}.small-dropdown-item svg{color:#64748b;flex-shrink:0}.header-actions{flex-shrink:0;gap:8px}.header-book-call{background:none;border:none;color:#2563eb;cursor:pointer;font-family:Lato,sans-serif;font-size:14px;font-weight:700;padding:8px 12px;text-decoration:none}.header-book-call:hover{text-decoration:underline}.header-login-btn{align-items:center;background:#0000;border:2px solid #2563eb;border-radius:9999px;color:#2563eb;display:inline-flex;font-family:Lato,sans-serif;font-size:15px;font-weight:700;padding:10px 22px;text-decoration:none;transition:all .15s}.header-login-btn:hover{background:#eff6ff}.header-start-btn{align-items:center;background:#2563eb;border:none;border-radius:9999px;color:#fff;display:inline-flex;font-family:Lato,sans-serif;font-size:15px;font-weight:700;padding:12px 24px;text-decoration:none;transition:background .15s}.header-start-btn:hover{background:#1d4ed8}.header-action-link{align-items:center;border-radius:8px;color:#334155;display:inline-flex;font-family:Lato,sans-serif;font-size:14px;font-weight:600;gap:6px;padding:6px 10px;text-decoration:none;transition:background .15s}.header-action-link:hover{background:#f1f5f9}.header-user-name{color:#0f172a;font-family:Lato,sans-serif;font-size:14px;font-weight:700;padding:0 8px}.header-logout-btn{align-items:center;background:none;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .15s;width:32px}.header-logout-btn:hover{background:#fef2f2;border-color:#fecaca;color:#ef4444}.header-mobile-btn{background:none;border:none;color:#334155;cursor:pointer;display:none;padding:4px}.mobile-menu{-webkit-overflow-scrolling:touch;background:#fff;height:calc(100vh - 80px);height:calc(100dvh - 80px);left:0;overflow-y:auto;position:fixed;right:0;top:80px;z-index:99}.mobile-menu-inner{padding:16px 24px 100px}.mobile-cat{margin-bottom:20px}.mobile-cat-title{color:#94a3b8;font-size:11px;font-weight:700;letter-spacing:.1em;margin-bottom:8px;padding-left:12px;text-transform:uppercase}.mobile-link{align-items:center;border-radius:10px;color:#334155;display:flex;font-size:15px;font-weight:600;gap:10px;padding:12px;text-decoration:none}.mobile-link:hover{background:#f1f5f9}.mobile-link svg{color:#64748b}.mobile-actions{border-top:1px solid #e2e8f0;display:flex;flex-direction:column;gap:12px;margin-top:20px;padding:20px 0}.mobile-login{border:2px solid #2563eb;color:#2563eb}.mobile-login,.mobile-start{border-radius:12px;display:block;font-size:16px;font-weight:700;padding:14px;text-align:center;text-decoration:none}.mobile-start{background:#2563eb;color:#fff}.mobile-logout{align-items:center;background:none;border:1px solid #e2e8f0;border-radius:12px;color:#ef4444;cursor:pointer;display:flex;font-size:15px;font-weight:700;gap:8px;justify-content:center;padding:14px}@media (max-width:1024px){.header .header-actions,.header .header-nav{display:none!important}.header .header-mobile-btn{display:flex!important}.header-container{height:64px;padding:0 16px}.header-logo-img{height:34px;width:34px}.header-logo-text{font-size:20px}.mobile-menu{height:calc(100vh - 64px);height:calc(100dvh - 64px);top:64px}}.site-footer{font-family:Lato,sans-serif}.footer-main{background:linear-gradient(180deg,#2563eb,#1d4ed8);padding:100px 0 72px}.footer-container{grid-gap:64px;display:grid;gap:64px;grid-template-columns:1.4fr 1fr 1fr 1fr 1.2fr;margin:0 auto;max-width:1400px;padding:0 64px}.footer-logo{align-items:center;display:flex;gap:12px;margin-bottom:20px;text-decoration:none}.footer-logo-img{border-radius:10px;height:40px;width:40px}.footer-logo-name{color:#fff;display:block;font-family:Lato,sans-serif;font-size:28px;font-weight:900;line-height:1}.footer-logo-sub{color:#fff;display:block;font-size:13px;margin-top:4px}.footer-tagline{color:#fff;font-size:17px;line-height:1.8;margin:0 0 32px;max-width:320px}.footer-social-label{color:#fff;font-size:15px;font-weight:600;margin-bottom:14px}.footer-social-icons{display:flex;gap:18px}.footer-social-icons a{color:#fff;font-size:20px;opacity:.8;transition:opacity .2s}.footer-social-icons a:hover{opacity:1}.footer-links-col h4{color:#fff;font-family:Lato,sans-serif;font-size:18px;font-weight:800;letter-spacing:.01em;margin:0 0 24px}.footer-links-col ul{display:flex;flex-direction:column;gap:16px;list-style:none;margin:0;padding:0}.footer-links-col ul li a{color:#fff;font-size:16px;text-decoration:none;transition:opacity .15s}.footer-links-col ul li a:hover{opacity:.8}.footer-contact-card{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1a;border-radius:16px;padding:24px}.footer-contact-card h4{color:#fff;font-family:Lato,sans-serif;font-size:16px;font-weight:800;margin:0 0 16px}.footer-contact-item{align-items:center;color:#fff;display:flex;font-size:13px;gap:10px;margin-bottom:10px}.footer-contact-item svg{flex-shrink:0;opacity:.7}.footer-connect-sales{color:#fff;font-size:14px;font-weight:700;margin:20px 0 12px}.footer-book-call-btn{background:#fff;border-radius:9999px;color:#1d4ed8;display:inline-block;font-family:Lato,sans-serif;font-size:14px;font-weight:700;padding:10px 24px;text-decoration:none;transition:all .2s}.footer-book-call-btn:hover{background:#f0f4ff;transform:translateY(-1px)}.footer-bottom{background:#1e40af;padding:24px 0}.footer-bottom-container{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin:0 auto;max-width:1280px;padding:0 48px}.footer-bottom-links{align-items:center;display:flex;gap:0}.footer-bottom-links a{color:#fff;font-size:14px;padding:0 14px;text-decoration:none;transition:opacity .15s}.footer-bottom-links a:first-child{padding-left:0}.footer-bottom-links a:hover{opacity:.8}.footer-divider{color:#fff;font-size:14px}.footer-copyright{color:#fff;font-size:13px;margin:0}@media (max-width:1024px){.footer-container{gap:36px;grid-template-columns:1fr 1fr 1fr}.footer-brand-col{grid-column:1/-1}.footer-contact-card{grid-column:1/-1;max-width:400px}}@media (max-width:640px){.footer-main{padding:48px 0 36px}.footer-container{gap:28px 20px;grid-template-columns:1fr 1fr;padding:0 20px}.footer-brand-col{grid-column:1/-1}.footer-logo-name{font-size:22px}.footer-logo-sub{font-size:14px}.footer-tagline{font-size:15px;line-height:1.6;margin-bottom:20px;max-width:100%}.footer-social-label{font-size:15px;margin-bottom:12px}.footer-social-icons{gap:16px}.footer-links-col h4{font-size:17px;margin-bottom:16px}.footer-links-col ul{gap:12px}.footer-links-col ul li a{font-size:15px}.footer-contact-card{grid-column:1/-1;padding:24px}.footer-contact-card h4{font-size:17px;margin-bottom:14px}.footer-contact-item{font-size:15px;margin-bottom:10px}.footer-connect-sales{font-size:15px;margin:16px 0 12px}.footer-book-call-btn{font-size:15px;padding:12px 24px}.footer-bottom{padding:20px 0}.footer-bottom-container{flex-direction:column;gap:10px;padding:0 20px;text-align:center}.footer-bottom-links{flex-wrap:wrap;justify-content:center}.footer-bottom-links a{font-size:15px;padding:0 12px}.footer-copyright{font-size:14px}}.home-page{background:#fff;color:#0a0f1c;font-family:Manrope,sans-serif;overflow-x:hidden}.home-page h1,.home-page h2,.home-page h3{font-family:Outfit,sans-serif;letter-spacing:-.03em}.home-page .hero-title{letter-spacing:normal;word-spacing:.05em}.section-container{margin:0 auto;max-width:1200px;padding:0 48px}.overline{color:#0052ff;display:inline-block;font-size:13px;font-weight:800;letter-spacing:.2em;margin-bottom:14px;text-transform:uppercase}.section-header{margin-bottom:64px;text-align:center}.section-header h2{color:#0a0f1c;font-size:clamp(32px,4.5vw,52px);font-weight:800;line-height:1.1;margin:0 0 12px}.section-header.dark h2{color:#fff}.btn-primary{align-items:center;background:#0052ff;border:none;border-radius:14px;box-shadow:0 4px 20px #0052ff4d;cursor:pointer;display:inline-flex;font-family:Manrope;font-size:16px;font-weight:700;gap:8px;padding:16px 36px;text-decoration:none;transition:all .25s}.btn-primary:hover{background:#0043d1;box-shadow:0 8px 32px #0052ff66;color:#fff}.btn-primary.sm{font-size:15px;padding:13px 28px}.btn-primary.light{background:#fff;box-shadow:0 4px 20px #ffffff26;color:#0052ff}.btn-primary.light:hover{background:#eff4ff;color:#0052ff}.btn-ghost{border:2px solid #d1d5db;border-radius:14px;color:#0a0f1c;font-family:Manrope;font-size:16px;font-weight:700;gap:8px;padding:16px 36px;text-decoration:none;transition:all .25s}.btn-ghost:hover{border-color:#0052ff;color:#0052ff;transform:translateY(-2px)}.btn-ghost.light{border-color:#ffffff4d;color:#fff}.btn-ghost.light:hover{border-color:#fff;color:#fff}.link-arrow{align-items:center;color:#0052ff;display:inline-flex;font-size:15px;font-weight:700;gap:5px;text-decoration:none;transition:gap .2s}.link-arrow:hover{gap:10px}.hero{background:#030712;overflow:hidden;position:relative}.hero:before{background:radial-gradient(ellipse at 70% 50%,#0052ff14 0,#0000 60%);content:"";height:100%;pointer-events:none;position:absolute;right:0;top:0;width:60%}.hero-inner{grid-gap:40px;align-items:center;display:grid;gap:40px;grid-template-columns:1.3fr 1fr;margin:0 auto;max-width:1360px;padding:80px 48px 40px;position:relative}.hero-text{max-width:640px;position:relative;z-index:3}.hero-chip{align-items:center;background:#0052ff26;border:1px solid #0052ff4d;border-radius:9999px;color:#60a5fa;display:inline-flex;font-size:13px;font-weight:700;gap:7px;margin-bottom:28px;padding:7px 18px}.hero-title{color:#fff;font-size:clamp(36px,3.8vw,52px);font-weight:900;letter-spacing:0;line-height:1.12;margin:0 0 24px;text-shadow:0 2px 20px #0006}.hero-sub{color:#fff;font-size:17px;line-height:1.7;margin:0 0 36px}.hero-ctas{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:24px}.hero-proof{align-items:center;color:#fff;display:flex;font-size:13px;font-weight:600;gap:10px}.hero-stars{display:flex;gap:2px}.hv{animation:hv-entrance .8s ease-out both;margin:0 -20px 0 auto;max-width:720px;overflow:visible;position:relative;width:100%}@keyframes hv-entrance{0%{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.hv-glow{background:radial-gradient(ellipse at center,#00c8ff14 0,#0052ff0a 40%,#0000 65%);filter:blur(50px);height:105%;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);width:105%;z-index:0}.hv-hero-img{display:block;height:auto;mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,#000 50%,#0000 80%);-webkit-mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,#000 50%,#0000 80%);position:relative;width:100%;z-index:1}.hv-edge{pointer-events:none;position:absolute;z-index:2}.hv-edge.top{background:linear-gradient(180deg,#030712,#0000);height:48px;left:0;right:0;top:0}.hv-edge.bottom{background:linear-gradient(0deg,#030712,#0000);bottom:0;height:48px;left:0;right:0}.hv-edge.left{background:linear-gradient(90deg,#030712,#0000);bottom:0;left:0;top:0;width:48px}.hv-edge.right{background:linear-gradient(270deg,#030712,#0000);bottom:0;right:0;top:0;width:48px}.trust-strip{background:#fff;border-bottom:1px solid #e2e8f0;border-top:1px solid #e2e8f0;padding:28px 0;position:relative}.trust-inner{display:flex;flex-wrap:wrap;gap:48px;justify-content:center;margin:0 auto;max-width:1200px;padding:0 48px}.trust-item{align-items:center;color:#0a0f1c;display:flex;font-size:15px;font-weight:700;gap:12px;letter-spacing:.01em}.trust-item svg{color:#0052ff;flex-shrink:0}.steps-section{background:#e9f1fb;padding:120px 0}.steps-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(3,1fr)}.step-card{background:#fff;border:1px solid #e2e8f0;border-radius:24px;overflow:hidden;transition:all .35s}.step-card:hover{border-color:#c7d7fe;box-shadow:0 28px 72px #0052ff14;transform:translateY(-8px)}.step-img-wrap{background:#0b1120;height:280px;overflow:hidden;position:relative}.step-img{display:block;height:100%;object-fit:cover;width:100%}.step-overlay{background:linear-gradient(180deg,#0000 40%,#00000059);inset:0;pointer-events:none;position:absolute}.step-badge{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0052ffe6;border-radius:10px;color:#fff;font-family:Outfit;font-size:14px;font-weight:800;left:16px;padding:5px 14px;position:absolute;top:16px;z-index:2}.step-card h3{color:#0a0f1c;font-size:22px;font-weight:800;margin:0;padding:24px 28px 8px}.step-card>p{color:#0a0f1c;font-size:15px;line-height:1.6;margin:0;padding:0 28px 28px}.dark-card{align-items:center;background:linear-gradient(135deg,#0b1120,#0f1d3a);display:flex;justify-content:center;padding:28px}.step-rpt{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff0d;border:1px solid #ffffff14;border-radius:16px;padding:24px;width:100%}.rpt-logo{color:#60a5fa;font-family:Outfit;font-size:22px;font-weight:900;letter-spacing:.06em;margin-bottom:4px}.rpt-title{color:#fff;font-size:14px;font-weight:700;margin-bottom:8px}.rpt-addr{color:#fff;font-size:12px}.rpt-line{background:#ffffff14;height:1px;margin:14px 0}.rpt-row{display:flex;font-size:13px;justify-content:space-between;padding:6px 0}.rpt-row span:first-child{color:#fff}.rpt-row span:last-child{color:#fff;font-weight:800}.rpt-cta{background:#0052ff;border-radius:8px;color:#fff;display:inline-block;font-size:12px;font-weight:700;margin-top:14px;padding:6px 16px}.features-section{background:#fff;padding:120px 0}.feat-layout{grid-gap:48px;align-items:start;display:grid;gap:48px;grid-template-columns:220px 1fr}.feat-nav{display:flex;flex-direction:column;gap:4px;position:-webkit-sticky;position:sticky;top:100px}.feat-tab{align-items:center;background:#0000;border:none;border-left:3px solid #0000;border-radius:0 10px 10px 0;color:#0a0f1c;cursor:pointer;display:flex;font-family:Manrope;font-size:14px;font-weight:600;gap:10px;padding:13px 16px;text-align:left;transition:all .2s}.feat-tab:hover{background:#f8fafc;color:#0a0f1c}.feat-tab.active{background:#eff4ff;border-left-color:#0052ff;color:#0052ff;font-weight:800}.feat-arrow{margin-left:auto;opacity:0;transition:opacity .2s}.feat-tab.active .feat-arrow{opacity:1}.feat-content{grid-gap:48px;align-items:center;display:grid;gap:48px;grid-template-columns:1fr 1.1fr;min-height:380px}.feat-text-block h3{color:#0a0f1c;font-size:28px;font-weight:800;line-height:1.2;margin:0 0 12px}.feat-text-block p{color:#0a0f1c;font-size:15px;line-height:1.7;margin:0 0 20px}.feat-bullets{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0 0 28px;padding:0}.feat-bullets li{align-items:center;color:#0a0f1c;display:flex;font-size:14px;font-weight:500;gap:8px}.feat-bullets li svg{color:#0052ff;flex-shrink:0}.feat-visual{display:flex;justify-content:center}.fv-img-wrap{border:1px solid #e2e8f0;border-radius:18px;box-shadow:0 24px 72px #00000014;overflow:hidden}.fv-img-wrap.fv-img-lg{transform:scale(1.08);transform-origin:center center}.fv-img{display:block;height:auto;width:100%}.fv-mock{background:#fff;border:1px solid #e2e8f0;border-radius:18px;box-shadow:0 24px 72px #0000000f;overflow:hidden;width:100%}.fvm-head{align-items:center;background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#0a0f1c;display:flex;font-size:13px;font-weight:700;gap:8px;padding:14px 20px}.fvm-head svg{color:#0052ff}.fvm-row{border-bottom:1px solid #f1f5f9;gap:12px;padding:14px 20px}.fvm-ico,.fvm-row{align-items:center;display:flex}.fvm-ico{background:#fef3c7;border-radius:10px;color:#d97706;flex-shrink:0;height:36px;justify-content:center;width:36px}.fvm-info{flex:1 1;font-size:13px}.fvm-info b{color:#0a0f1c;display:block}.fvm-info span{color:#0a0f1c;font-size:11px}.fvm-row>b{color:#0a0f1c;font-size:15px}.fvm-more{color:#0052ff;font-size:13px;font-weight:700;padding:14px;text-align:center}.fvm-crm{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;gap:14px;padding:16px 20px}.fvm-dot{border-radius:50%;flex-shrink:0;height:10px;width:10px}.fvm-crm div:nth-child(2) b{color:#0a0f1c;display:block;font-size:14px}.fvm-crm div:nth-child(2) span{color:#0a0f1c;font-size:12px}.fvm-rpt-inner{padding:20px}.fvm-rpt-logo{color:#0052ff;display:block;font-family:Outfit;font-size:18px;margin-bottom:6px}.fvm-rpt-inner>span{color:#0a0f1c;font-size:12px}.fvm-rpt-line{background:#e2e8f0;height:1px;margin:12px 0}.fvm-rpt-r{border-bottom:1px solid #f8fafc;display:flex;font-size:13px;justify-content:space-between;padding:6px 0}.fvm-rpt-r b,.fvm-rpt-r span{color:#0a0f1c}.fvm-rpt-badges{display:flex;gap:8px;margin-top:14px}.fvm-rpt-badges span{background:#eff4ff;border-radius:8px;color:#0052ff;font-size:11px;font-weight:700;padding:5px 14px}.fvm-rpt-badges span.alt{background:#0052ff;color:#fff}.fvm-chips{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,1fr);padding:20px}.fvm-chips span{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;color:#0a0f1c;font-size:12px;font-weight:700;padding:14px 8px;text-align:center;transition:all .2s}.fvm-chips span:hover{background:#eff4ff;border-color:#c7d7fe;color:#0052ff}.crm-section{background:linear-gradient(180deg,#050a18,#0b1428 50%,#0f1d3a);padding:100px 0}.crm-header{margin-bottom:56px;text-align:center}.crm-header h2{color:#fff;font-size:clamp(32px,4.5vw,52px);font-weight:900;margin:12px 0 32px}.crm-tabs{display:flex;flex-wrap:nowrap;gap:8px;justify-content:center}.crm-pill{align-items:center;background:#ffffff0d;border:1px solid #ffffff14;border-radius:9999px;color:#ffffffb3;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;padding:12px 18px;transition:all .25s;white-space:nowrap}.crm-pill:hover{background:#ffffff14;color:#fff}.crm-pill.active{background:#0052ff26;border-color:#0052ff;color:#fff}.crm-content{grid-gap:48px;align-items:center;display:grid;gap:48px;grid-template-columns:1fr 1.2fr}.crm-text h3{color:#fff;font-size:32px;font-weight:800;line-height:1.15;margin:0 0 16px}.crm-text p{color:#fff;font-size:16px;line-height:1.7;margin:0 0 28px}.crm-text ul{display:flex;flex-direction:column;gap:14px;list-style:none;margin:0 0 36px;padding:0}.crm-text li{align-items:flex-start;color:#fff;display:flex;font-size:15px;gap:12px;line-height:1.5}.crm-text li svg{color:#22c55e;flex-shrink:0;margin-top:2px}.crm-ctas{align-items:center;display:flex;gap:14px}.btn-ghost.crm-ghost{border-color:#fff3;color:#fff}.btn-ghost.crm-ghost:hover{background:#0052ff1a;border-color:#0052ff}.crm-visual{position:relative}.crm-dash-img{border-radius:20px;height:auto;max-height:420px;object-fit:contain;width:100%}.stats-section{background:#050a18;padding:80px 0;position:relative}.stats-section:before{background:linear-gradient(90deg,#0000,#0052ff,#0891b2,#0000);content:"";height:2px;left:0;position:absolute;right:0;top:0}.stats-grid{grid-gap:24px;gap:24px;text-align:center}.home-page .stat-cell{padding:24px}.home-page .stat-v{color:#fff;display:block;font-family:Outfit;font-size:clamp(42px,5vw,60px);font-weight:900;line-height:1}.home-page .stat-l{color:#fff;display:block;font-size:13px;font-weight:700;letter-spacing:.1em;margin-top:8px;text-transform:uppercase}.reviews-section{background:linear-gradient(180deg,#fff,#f0f4ff);padding:120px 0}.reviews-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(3,1fr)}.review-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 4px 16px #00000008;display:flex;flex-direction:column;padding:32px 28px;transition:all .3s}.review-card:hover{border-color:#c7d7fe;box-shadow:0 20px 60px #0052ff0f;transform:translateY(-6px)}.rv-stars{display:flex;gap:2px;margin-bottom:16px}.review-card p{color:#0a0f1c;flex:1 1;font-size:15px;font-style:italic;font-weight:500;line-height:1.65;margin:0 0 16px}.rv-metric{align-self:flex-start;background:#eff4ff;border-radius:8px;color:#0052ff;display:inline-block;font-size:12px;font-weight:800;margin-bottom:20px;padding:4px 12px}.rv-author{border-top:1px solid #e2e8f0;gap:12px;padding-top:16px}.rv-author,.rv-init{align-items:center;display:flex}.rv-init{border-radius:12px;color:#fff;flex-shrink:0;font-family:Outfit;font-size:14px;font-weight:800;height:40px;justify-content:center;width:40px}.rv-author b{color:#0a0f1c;display:block;font-size:14px}.rv-author div:nth-child(2) span{color:#0a0f1c;font-size:12px}.cta-section{background:linear-gradient(180deg,#050a18,#0a1225);overflow:hidden;padding:120px 0;position:relative}.cta-glow{background:radial-gradient(circle,#0052ff1a 0,#0000 60%);height:700px;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);width:700px}.cta-layout{grid-gap:64px;align-items:center;display:grid;gap:64px;grid-template-columns:1fr 1fr;margin:0 auto;max-width:1200px;padding:0 48px;position:relative}.cta-left h2{color:#fff;font-size:clamp(28px,3vw,40px);font-weight:900;line-height:1.15;margin:0}.cta-accent{color:#3b82f6}.cta-sub-big{color:#fff;font-size:clamp(22px,2.5vw,32px);font-weight:900;margin:12px 0 0}.cta-form{background:#fff;border-radius:9999px;box-shadow:0 8px 40px #0000004d;display:flex;overflow:hidden}.cta-input{background:#0000;border:none;color:#0a0f1c;flex:1 1;font-family:Manrope;font-size:16px;min-width:0;outline:none;padding:18px 24px}.cta-input::placeholder{color:#94a3b8}.cta-submit{background:#0052ff;border:none;border-radius:9999px;color:#fff;cursor:pointer;font-family:Manrope;font-size:16px;font-weight:700;padding:18px 32px;transition:background .25s;white-space:nowrap}.cta-submit:hover{background:#0043d1}.cta-note{color:#fff;font-size:14px;margin:16px 0 0}.cta-stars{align-items:center;display:flex;gap:8px;margin:16px 0 0}.cta-stars span{color:#fff;font-size:14px}.cta-stars b{color:#fff}.faq-section{background:#fff;padding:120px 0}.faq-grid{grid-gap:80px;align-items:start;display:grid;gap:80px;grid-template-columns:1fr 2fr}.faq-left h2{color:#0a0f1c;font-size:40px;font-weight:900;margin:0 0 12px}.faq-left p{color:#0a0f1c;font-size:15px;line-height:1.6;margin:0 0 20px}.faq-right{display:flex;flex-direction:column}.faq-item{border-bottom:1px solid #e2e8f0}.faq-q{align-items:center;background:none;border:none;color:#0a0f1c;cursor:pointer;display:flex;font-family:Manrope;font-size:16px;font-weight:700;gap:16px;justify-content:space-between;padding:22px 0;text-align:left;transition:color .2s;width:100%}.faq-q:hover{color:#0052ff}.faq-t{color:#0a0f1c;flex-shrink:0;font-size:22px;text-align:center;width:28px}.faq-item.open .faq-t{color:#0052ff}.home-page .faq-a{color:#0a0f1c;font-size:15px;line-height:1.7;max-width:600px;padding:0 0 22px}@media(max-width:1024px){.hero-inner{gap:24px;grid-template-columns:1fr;padding-bottom:60px;text-align:center}.hero-text{margin:0 auto;max-width:100%}.hero-sub{margin:0 auto 32px;max-width:520px}.hero-ctas,.hero-proof{justify-content:center}.hv{margin:0 auto;max-width:500px}.feat-layout{gap:32px;grid-template-columns:1fr}.feat-nav{-webkit-overflow-scrolling:touch;flex-direction:row;flex-wrap:nowrap;gap:6px;justify-content:flex-start;overflow-x:auto;padding-bottom:8px;position:static;scrollbar-width:none}.feat-nav::-webkit-scrollbar{display:none}.feat-tab{border-bottom:3px solid #0000;border-left:none;border-radius:10px;flex-shrink:0;font-size:13px;padding:10px 14px;white-space:nowrap}.feat-tab.active{border-bottom-color:#0052ff;border-left:none}.feat-arrow{display:none}.feat-content{gap:32px;grid-template-columns:1fr}}@media(max-width:768px){.hero-inner{gap:10px;padding:56px 20px 16px}.hero-chip{font-size:14px;margin-bottom:20px;padding:8px 18px}.hero-title{font-size:36px;line-height:1.15;margin-bottom:16px}.hero-sub{font-size:17px;line-height:1.65;margin:0 auto 28px;max-width:360px}.hero-ctas{align-items:center;flex-direction:column;gap:10px;margin-bottom:16px}.btn-ghost,.btn-primary{font-size:18px;justify-content:center;max-width:340px;padding:16px 36px;width:100%}.hero-proof{font-size:15px;gap:8px}.hv{margin:0 auto;max-width:90%;padding:0}.hv-hero-img{max-height:none;width:100%}.trust-strip{padding:20px 0}.trust-inner{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr;padding:0 20px}.trust-item{font-size:16px;gap:8px;justify-content:center}.section-container{padding:0 20px}.section-header{align-items:center;display:flex;flex-direction:column;margin-bottom:28px;text-align:center}.section-header h2{font-size:28px}.section-header .overline{font-size:14px;margin-bottom:8px}.steps-section{padding:48px 0}.steps-grid{gap:16px;grid-template-columns:1fr}.step-img-wrap{height:200px}.step-card h3{font-size:20px;padding:20px 20px 6px}.step-card>p{font-size:16px;line-height:1.6;padding:0 20px 20px}.features-section{padding:48px 0}.feat-nav{gap:4px}.feat-tab{font-size:15px;padding:10px 16px}.feat-text-block h3{font-size:24px}.feat-bullets li,.feat-text-block p{font-size:16px}.feat-text-block .btn-primary.sm{font-size:16px;max-width:none;padding:14px 28px;width:auto}.fv-img-wrap.fv-img-lg{transform:none}.stats-section{padding:40px 0}.home-page .stats-grid{gap:0;grid-template-columns:repeat(2,1fr)!important}.home-page .stat-cell{padding:20px 14px}.home-page .stat-v{font-size:40px}.home-page .stat-l{font-size:14px;letter-spacing:.15em;margin-top:6px}.reviews-section{padding:48px 0}.reviews-grid{gap:16px;grid-template-columns:1fr}.review-card{padding:24px 20px}.review-card p{font-size:17px}.rv-author b{font-size:16px}.cta-section{padding:48px 0}.cta-layout{gap:24px;grid-template-columns:1fr;padding:0 20px;text-align:center}.cta-left h2{font-size:30px}.cta-sub-big{font-size:22px}.cta-form{border-radius:16px;flex-direction:column}.cta-input{border-bottom:1px solid #e2e8f0;font-size:17px;padding:18px 20px}.cta-submit{border-radius:0 0 16px 16px;font-size:17px;padding:18px 24px}.cta-note{font-size:15px;text-align:center}.cta-stars{flex-wrap:wrap;justify-content:center}.cta-stars span{font-size:15px}.faq-section{padding:48px 0}.faq-grid{gap:24px;grid-template-columns:1fr}.faq-left{text-align:center}.faq-left h2{font-size:30px}.faq-left p,.faq-q{font-size:17px}.faq-q{padding:20px 0}.home-page .faq-a{font-size:16px}.fvm-chips{grid-template-columns:repeat(2,1fr)}.crm-section{padding:48px 0}.crm-header{margin-bottom:24px}.crm-header h2{font-size:28px}.crm-tabs{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:6px;justify-content:flex-start;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.crm-tabs::-webkit-scrollbar{display:none}.crm-pill{flex-shrink:0;font-size:15px;gap:6px;padding:10px 16px;white-space:nowrap}.crm-pill svg{height:16px;width:16px}.crm-content{gap:24px;grid-template-columns:1fr}.crm-text{text-align:center}.crm-text h3{font-size:24px}.crm-text p{font-size:16px;margin-bottom:20px}.crm-text ul{margin-bottom:24px}.crm-text li{font-size:16px;gap:10px;text-align:left}.crm-text ul{align-items:flex-start;text-align:left}.crm-ctas{flex-direction:row;gap:10px;justify-content:center}.crm-ctas .btn-ghost,.crm-ctas .btn-primary{font-size:16px;max-width:none;padding:14px 24px;width:auto}.crm-dash-img{border-radius:14px;max-height:320px}}@media(max-width:480px){.hero-inner{gap:8px;padding:48px 16px 12px}.hero-chip{font-size:13px;margin-bottom:16px;padding:7px 16px}.hero-title{font-size:32px;line-height:1.15;margin-bottom:14px}.hero-sub{font-size:16px;line-height:1.6;margin:0 auto 24px;max-width:340px}.hero-ctas{gap:8px;margin-bottom:14px}.btn-ghost,.btn-primary{font-size:17px;max-width:320px;padding:15px 32px}.hero-proof{font-size:14px;gap:6px}.hv{max-width:88%}.section-header h2{font-size:26px}.section-header{margin-bottom:24px}.section-header .overline{font-size:13px}.feat-tab{font-size:14px;gap:5px;padding:9px 14px}.trust-inner{gap:10px}.trust-item{font-size:15px;gap:7px}.trust-item svg{height:20px;width:20px}.step-img-wrap{height:190px}.step-card h3{font-size:19px;padding:18px 18px 5px}.step-card>p{font-size:15px;padding:0 18px 18px}.steps-grid{gap:14px}.home-page .stat-v{font-size:36px}.home-page .stat-l{font-size:13px}.home-page .stat-cell{padding:18px 12px}.crm-pill{font-size:14px;padding:9px 14px}.crm-text h3{font-size:22px}.crm-text li,.crm-text p{font-size:15px}.crm-dash-img{max-height:300px}.cta-left h2{font-size:28px}.cta-sub-big{font-size:20px}.cta-input{font-size:16px;padding:16px 20px}.cta-submit{font-size:16px;padding:16px 22px}.cta-note,.cta-stars span{font-size:14px}.review-card{padding:22px 18px}.review-card p{font-size:16px}.rv-author b{font-size:15px}.faq-left h2{font-size:28px}.faq-left p,.faq-q{font-size:16px}.faq-q{padding:18px 0}.home-page .faq-a{font-size:15px}.feat-text-block h3{font-size:22px}.feat-bullets li,.feat-text-block p{font-size:15px}}.home-page a.btn-primary,.home-page a.btn-primary:hover{color:#fff}.home-page a.btn-primary.light,.home-page a.btn-primary.light:hover{color:#0052ff}.home-page a.btn-ghost,.home-page a.btn-ghost:hover{color:#0a0f1c}.home-page a.btn-ghost.crm-ghost,.home-page a.btn-ghost.crm-ghost:hover,.home-page a.btn-ghost.light,.home-page a.btn-ghost.light:hover{color:#fff}.home-page a.link-arrow,.home-page a.link-arrow:hover{color:#0052ff}.fb-section{background:#f8fafc;border-top:1px solid #0f172a0f;padding:90px 0}.fb-inner{margin:0 auto;max-width:860px;padding:0 48px;text-align:center}.fb-title{color:#0f172a;font-family:Lato,sans-serif;font-size:clamp(28px,3.4vw,40px);font-weight:900;letter-spacing:-.02em;margin:0 0 12px}.fb-subtitle{color:#64748b;font-size:16px;line-height:1.6;margin:0 auto;max-width:560px}.fb-list{display:flex;flex-direction:column;gap:14px;margin-top:40px;text-align:left}.fb-item{background:#fff;border:1px solid #0f172a14;border-radius:12px;transition:border-color .18s ease,box-shadow .18s ease}.fb-item:hover{border-color:#22d3ee59}.fb-item[open]{border-color:#22d3ee8c;box-shadow:0 12px 28px -12px #22d3ee40}.fb-item summary{align-items:center;color:#0f172a;cursor:pointer;display:flex;font-family:Lato,sans-serif;font-size:15px;font-weight:800;gap:18px;justify-content:space-between;letter-spacing:-.005em;list-style:none;padding:18px 22px}.fb-item summary::-webkit-details-marker{display:none}.fb-chev{align-items:center;background:#22d3ee1f;border-radius:50%;color:#0891b2;display:inline-flex;flex-shrink:0;font-size:18px;font-weight:900;height:26px;justify-content:center;transition:transform .18s ease,background .18s ease;width:26px}.fb-item[open] .fb-chev{background:#22d3ee;color:#fff;transform:rotate(45deg)}.fb-item p{color:#475569;font-size:14.5px;line-height:1.65;margin:0;padding:0 22px 20px}@media (max-width:760px){.fb-section{padding:60px 0}.fb-inner{padding:0 22px}.fb-item summary{font-size:14px;padding:16px 18px}.fb-item p{font-size:13.5px;padding:0 18px 18px}}.about-page{background:#fff;color:#0f172a;font-family:Lato,sans-serif;overflow-x:hidden}.about-hero{background:#e6f2ff;padding:100px 0 80px;text-align:center}.about-hero-container{margin:0 auto;max-width:860px;padding:0 40px}.about-overline{color:#3b82f6;display:inline-block;font-size:13px;font-weight:900;letter-spacing:.18em;margin-bottom:16px;text-transform:uppercase}.about-hero-title{color:#0f172a;font-size:clamp(36px,5vw,56px);font-weight:900;letter-spacing:-.02em;line-height:1.08;margin:0 0 20px}.about-hero-subtitle{color:#475569;font-size:18px;line-height:1.7;margin:0 auto;max-width:640px}.about-press{background:#fff;border-bottom:1px solid #e2e8f0;padding:40px 0}.about-press-container{align-items:center;display:flex;flex-wrap:wrap;gap:48px;justify-content:center;margin:0 auto;max-width:1200px;padding:0 40px}.about-press-logo{color:#94a3b8;font-size:14px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.about-story{background:#f8fafc;padding:96px 0}.about-story-container{grid-gap:64px;align-items:center;display:grid;gap:64px;grid-template-columns:1fr 1fr;margin:0 auto;max-width:1200px;padding:0 40px}.about-story-image img{border-radius:16px;box-shadow:0 20px 60px #0000001f;max-height:460px;object-fit:cover;width:100%}.about-section-title{color:#0f172a;font-size:36px;font-weight:900;letter-spacing:-.01em;margin:0 0 20px}.about-story-text p{color:#475569;font-size:16px;line-height:1.75;margin:0 0 16px}.about-stats{background:#0f172a;padding:64px 0}.about-stats-container{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(4,1fr);margin:0 auto;max-width:1200px;padding:0 40px;text-align:center}.about-stat-value{color:#3b82f6;display:block;font-size:48px;font-weight:900;margin-bottom:6px}.about-stat-label{color:#94a3b8;font-size:15px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.about-values{background:#fff;padding:96px 0}.about-values-container{margin:0 auto;max-width:1200px;padding:0 40px}.about-values-header{margin-bottom:56px;text-align:center}.about-section-subtitle{color:#64748b;font-size:18px;margin-top:8px}.about-values-grid{grid-gap:36px;display:grid;gap:36px;grid-template-columns:repeat(3,1fr)}.about-value-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;padding:36px 28px;transition:transform .2s ease,box-shadow .2s ease}.about-value-card:hover{box-shadow:0 12px 40px #00000014;transform:translateY(-4px)}.about-value-icon{align-items:center;background:#e6f2ff;border-radius:12px;color:#3b82f6;display:flex;height:48px;justify-content:center;margin-bottom:18px;width:48px}.about-value-card h3{color:#0f172a;font-size:18px;font-weight:900;margin:0 0 10px}.about-value-card p{color:#64748b;font-size:15px;line-height:1.65;margin:0}.about-image-break{background:#f1f5f9;line-height:0;padding:0}.about-fullwidth-img{max-height:420px;object-fit:cover;width:100%}.about-offer{background:#f8fafc;padding:96px 0}.about-offer-container{margin:0 auto;max-width:1200px;padding:0 40px}.about-offer-header{margin-bottom:56px;text-align:center}.about-offer-grid{grid-gap:28px;display:grid;gap:28px;grid-template-columns:repeat(3,1fr)}.about-offer-item{background:#fff;border:1px solid #e2e8f0;border-radius:14px;display:flex;gap:16px;padding:28px 24px;transition:box-shadow .2s ease}.about-offer-item:hover{box-shadow:0 8px 32px #0000000f}.about-offer-icon{color:#3b82f6;flex-shrink:0;margin-top:2px}.about-offer-item h4{color:#0f172a;font-size:16px;font-weight:900;margin:0 0 6px}.about-offer-item p{color:#64748b;font-size:14px;line-height:1.6;margin:0}.about-cta{padding:0}.about-cta-inner{align-items:center;display:flex;justify-content:center;min-height:400px;overflow:hidden;position:relative}.about-cta-bg{filter:brightness(.35);height:100%;inset:0;object-fit:cover;position:absolute;width:100%;z-index:0}.about-cta-content{max-width:700px;padding:80px 40px;position:relative;text-align:center;z-index:1}.about-cta-content h2{color:#fff;font-size:36px;font-weight:900;line-height:1.2;margin:0 0 32px}.about-cta-buttons{display:flex;flex-wrap:wrap;gap:16px;justify-content:center}.about-cta-btn-primary{align-items:center;background:#2563eb;border-radius:9999px;color:#fff;display:inline-flex;font-size:16px;font-weight:700;gap:8px;padding:16px 32px;text-decoration:none;transition:background .2s ease,transform .15s ease}.about-cta-btn-primary:hover{background:#1d4ed8;transform:translateY(-2px)}.about-cta-btn-secondary{align-items:center;background:#0000;border:2px solid #fff6;border-radius:9999px;color:#fff;display:inline-flex;font-size:16px;font-weight:700;gap:8px;padding:16px 32px;text-decoration:none;transition:border-color .2s ease,transform .15s ease}.about-cta-btn-secondary:hover{border-color:#fff;transform:translateY(-2px)}@media (max-width:900px){.about-story-container{gap:40px;grid-template-columns:1fr}.about-stats-container{grid-template-columns:repeat(2,1fr)}.about-offer-grid,.about-values-grid{grid-template-columns:1fr}}@media (max-width:600px){.about-hero{padding:64px 0 48px}.about-hero-container{padding:0 20px}.about-overline{font-size:14px}.about-hero-title{font-size:32px}.about-hero-subtitle{font-size:17px;line-height:1.6}.about-stats-container{grid-template-columns:1fr 1fr}.about-section-title{font-size:30px}.about-section-subtitle{font-size:17px}.about-stat-value{font-size:40px}.about-stat-label{font-size:16px}.about-mission-text{font-size:17px}.about-value-title{font-size:19px}.about-value-desc{font-size:16px}.about-partner-name{font-size:17px}.about-partner-desc{font-size:15px}.about-cta-content h2{font-size:28px}.about-cta-btn,.about-cta-content p{font-size:17px}}.hiw-page{background:#fff;color:#0f172a;font-family:Lato,sans-serif;overflow-x:hidden}.hiw-hero{background:radial-gradient(900px 300px at 10% 0,#22d3ee14,#0000 60%),radial-gradient(700px 240px at 95% 10%,#0ea5e914,#0000 60%),#0a1120;border-bottom:1px solid #22d3ee38;overflow:hidden;padding:110px 0 90px;position:relative}.hiw-hero:before{background-image:linear-gradient(rgba(34,211,238,.035) 1px,#0000 0),linear-gradient(90deg,rgba(34,211,238,.035) 1px,#0000 0);background-size:48px 48px;content:"";inset:0;-webkit-mask-image:radial-gradient(800px 400px at 50% 30%,#000 40%,#0000 80%);mask-image:radial-gradient(800px 400px at 50% 30%,#000 40%,#0000 80%);pointer-events:none;position:absolute}.hiw-hero-inner{grid-gap:64px;align-items:center;display:grid;gap:64px;grid-template-columns:1fr 1fr;margin:0 auto;max-width:1240px;padding:0 48px;position:relative;z-index:1}.hiw-hero-text{color:#e2e8f0}.hiw-overline{background:#22d3ee1a;border:1px solid #22d3ee47;border-radius:999px;color:#67e8f9;display:inline-block;font-size:12px;font-weight:900;letter-spacing:.22em;margin-bottom:18px;padding:4px 12px;text-transform:uppercase}.hiw-hero-title{color:#f8fafc;font-size:clamp(42px,5.2vw,66px);font-weight:900;letter-spacing:-.025em;line-height:1.02;margin:0 0 22px}.hiw-title-accent{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#67e8f9,#22d3ee 70%,#0ea5e9);-webkit-background-clip:text;background-clip:text;color:#22d3ee}.hiw-hero-subtitle{color:#cbd5e1;font-size:18px;line-height:1.65;margin:0 0 32px;max-width:520px}.hiw-hero-cta-row{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:30px}.hiw-cta-primary{align-items:center;background:linear-gradient(135deg,#22d3ee,#0ea5e9);border-radius:999px;box-shadow:0 0 0 3px #22d3ee26,0 14px 36px -12px #22d3ee80;color:#0a1120;display:inline-flex;font-size:15px;font-weight:900;gap:10px;letter-spacing:.01em;padding:16px 28px;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease}.hiw-cta-primary:hover{box-shadow:0 0 0 3px #22d3ee40,0 20px 42px -10px #22d3eea6;transform:translateY(-2px)}.hiw-cta-ghost{align-items:center;background:#0000;border:1px solid #e2e8f047;border-radius:999px;color:#e2e8f0;display:inline-flex;font-size:15px;font-weight:700;padding:16px 26px;text-decoration:none;transition:border-color .18s ease,background .18s ease}.hiw-cta-ghost:hover{background:#22d3ee0f;border-color:#22d3ee99}.hiw-cta-big{font-size:17px;padding:20px 38px}.hiw-hero-stats{color:#94a3b8;display:flex;flex-wrap:wrap;font-size:13px;font-weight:700;gap:28px;letter-spacing:.02em}.hiw-hero-stats>div{align-items:center;color:#a5f3fc;display:inline-flex;gap:7px}.hiw-hero-visual{align-items:center;display:flex;flex-direction:column;gap:14px;position:relative}.hiw-hero-glow{background:radial-gradient(closest-side,#22d3ee38,#0000 70%);filter:blur(30px);inset:-10% -5%;pointer-events:none;position:absolute;z-index:0}.hiw-hero-diagram{border-radius:16px;box-shadow:0 0 0 1px #22d3ee3d,0 40px 80px -20px #06b6d466;max-width:640px}.hiw-hero-diagram,.hiw-hero-frame{position:relative;width:100%;z-index:1}.hiw-hero-frame{background:#0a1120;border-radius:18px;box-shadow:0 0 0 1px #22d3ee4d,0 40px 80px -20px #06b6d48c,0 0 120px -30px #22d3ee66;max-width:680px;overflow:hidden}.hiw-hero-art{border-radius:18px;display:block;height:auto;width:100%}.hiw-hero-sat{filter:brightness(.52) saturate(.85) hue-rotate(-8deg);height:100%;inset:0;object-fit:cover;position:absolute;width:100%}.hiw-hero-tint{background:radial-gradient(60% 50% at 50% 55%,#0000 0,#0a1120a6 100%),linear-gradient(180deg,#0a112059,#0a11208c);inset:0;position:absolute}.hiw-hero-overlay{height:100%;inset:0;position:absolute;width:100%}.hiw-hero-chip{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a1120c7;border:1px solid #22d3ee66;border-radius:999px;bottom:16px;color:#67e8f9;display:inline-flex;font-size:12px;font-weight:700;gap:8px;left:16px;letter-spacing:.02em;padding:8px 14px;position:absolute}.hiw-hero-caption{color:#67e8f9;font-size:13px;font-weight:700;letter-spacing:.01em;position:relative;z-index:1}.hiw-steps{background:#f8fafc;padding:110px 0 100px}.hiw-steps-head{margin:0 auto 56px;max-width:1240px;padding:0 48px;text-align:center}.hiw-section-title{color:#0f172a;font-size:clamp(30px,3.6vw,44px);font-weight:900;letter-spacing:-.02em;margin:0 0 14px}.hiw-section-sub{color:#64748b;font-size:17px;line-height:1.6;margin:0 auto;max-width:620px}.hiw-steps-list{counter-reset:step;display:flex;flex-direction:column;gap:88px;list-style:none;margin:0 auto;max-width:1240px;padding:0 48px}.hiw-step{grid-gap:72px;align-items:center;display:grid;gap:72px;grid-template-columns:1fr 1fr}.hiw-step:nth-child(2n){direction:rtl}.hiw-step:nth-child(2n)>*{direction:ltr}.hiw-step-body{max-width:480px}.hiw-step-num{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#22d3ee,#0ea5e9 70%,#1e40af);-webkit-background-clip:text;background-clip:text;font-family:Lato,sans-serif;font-size:72px;font-weight:900;letter-spacing:-.04em;line-height:1;margin-bottom:12px;opacity:.9}.hiw-step-icon{align-items:center;background:linear-gradient(135deg,#e0f7fa,#cffafe);border:1px solid #22d3ee4d;border-radius:12px;color:#0891b2;display:inline-flex;height:46px;justify-content:center;margin-bottom:18px;width:46px}.hiw-step-title{color:#0f172a;font-size:clamp(24px,2.4vw,34px);font-weight:900;letter-spacing:-.02em;line-height:1.15;margin:0 0 14px}.hiw-step-text{color:#475569;font-size:16px;line-height:1.7;margin:0}.hiw-step-visual{border-radius:18px;box-shadow:0 1px 0 #0f172a0d,0 28px 60px -20px #0f172a33,0 0 0 1px #0f172a0f;overflow:hidden;position:relative;transition:transform .25s ease,box-shadow .25s ease}.hiw-step-visual:hover{box-shadow:0 1px 0 #0f172a0d,0 36px 72px -18px #22d3ee4d,0 0 0 1px #22d3ee33;transform:translateY(-4px)}.hiw-step-svg{display:block;height:auto;width:100%}.hiw-shot{background:#0a1120;border:1px solid #22d3ee33;border-radius:14px;overflow:hidden}.hiw-shot-bar{align-items:center;background:linear-gradient(180deg,#1e293b,#0f172a);border-bottom:1px solid #22d3ee2e;display:flex;gap:8px;padding:10px 14px}.hiw-shot-bar>span{background:#475569;border-radius:50%;height:10px;width:10px}.hiw-shot-bar>span:first-child{background:#ef4444}.hiw-shot-bar>span:nth-child(2){background:#f59e0b}.hiw-shot-bar>span:nth-child(3){background:#22c55e}.hiw-shot-url{background:#0f172a99;border:1px solid #94a3b826;border-radius:6px;color:#94a3b8;flex:1 1;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:11px;font-weight:600;letter-spacing:.02em;padding:4px 12px;text-align:center}.hiw-shot img{display:block;height:auto;object-fit:cover;width:100%}.hiw-art{background:#0a1120;border-radius:18px;box-shadow:0 0 0 1px #22d3ee3d,0 36px 80px -20px #06b6d473;overflow:hidden;position:relative;transition:transform .25s ease,box-shadow .25s ease}.hiw-art:hover{box-shadow:0 0 0 1px #22d3ee73,0 48px 100px -18px #22d3ee8c;transform:translateY(-4px)}.hiw-art img{display:block;height:auto;width:100%}.hiw-pdf-mock{background:#fff;border-radius:14px;box-shadow:0 0 0 1px #0f172a0f;font-family:Lato,sans-serif;overflow:hidden}.hiw-pdf-header{align-items:center;background:#0f2a48;color:#fff;display:flex;gap:12px;justify-content:space-between;padding:14px 22px}.hiw-pdf-brand{font-size:13px;font-weight:900;letter-spacing:.01em}.hiw-pdf-brandsub{color:#ffffffb3;font-size:9px;letter-spacing:.02em;margin-top:2px}.hiw-pdf-meta{color:#ffffffd9;font-size:9px;font-weight:700;line-height:1.5;text-align:right}.hiw-pdf-body{padding:22px 24px 26px}.hiw-pdf-title{color:#0f2a48;font-size:18px;font-weight:900;letter-spacing:-.01em;margin-bottom:14px}.hiw-pdf-info{grid-gap:10px;background:#f8fafc;border-radius:8px;display:grid;gap:10px;grid-template-columns:1fr 1fr;margin-bottom:16px;padding:14px}.hiw-pdf-k{color:#0f2a48;font-size:9px;font-weight:900;letter-spacing:.08em;margin-bottom:4px}.hiw-pdf-l{color:#1e293b;font-size:11px;font-weight:600;margin-bottom:3px}.hiw-pdf-ls{color:#64748b;font-size:9px}.hiw-pdf-hero{grid-gap:14px;align-items:center;background:#0f2a48;border-radius:6px;color:#fff;display:grid;gap:14px;grid-template-columns:1fr auto;margin-bottom:14px;overflow:hidden;padding:14px 16px 18px 22px;position:relative}.hiw-pdf-hero-accent{background:linear-gradient(180deg,#67e8f9,#0ea5e9);border-radius:2px;bottom:8px;left:0;position:absolute;top:8px;width:4px}.hiw-pdf-hero-label{color:#a5c3e1;font-size:9.5px;font-weight:900;letter-spacing:.15em;margin-bottom:5px}.hiw-pdf-hero-total{font-size:34px;font-weight:900;letter-spacing:-.02em;line-height:1}.hiw-pdf-hero-right{color:#a5c3e1;font-size:9px;line-height:1.4;text-align:right}.hiw-pdf-hero-mini-label{font-weight:700}.hiw-pdf-hero-mini-val{color:#fff;font-size:12px;font-weight:800;margin-bottom:4px}.hiw-pdf-rows{display:flex;flex-direction:column;gap:6px}.hiw-pdf-row{border-bottom:1px solid #f1f5f9;color:#1e293b;display:flex;font-size:10.5px;justify-content:space-between;padding:4px 0}.hiw-pdf-row:last-child{border-bottom:none}.hiw-pdf-row>span:last-child{color:#0f2a48;font-weight:800}.hiw-win{align-items:center;background:linear-gradient(180deg,#0b1628,#071020);border:1px solid #22d3ee38;border-radius:14px;display:flex;flex-direction:column;gap:26px;overflow:hidden;padding:32px 28px 28px;position:relative}.hiw-win:before{background:radial-gradient(closest-side,#22d3ee2e,#0000 60%);content:"";inset:-40% -10%;pointer-events:none;position:absolute}.hiw-win-hero{align-items:center;display:flex;height:200px;justify-content:center;position:relative;width:200px}.hiw-win-dial{filter:drop-shadow(0 0 24px rgba(34,211,238,.4));height:100%;width:100%}.hiw-win-center{position:absolute;text-align:center}.hiw-win-big{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#67e8f9,#0ea5e9);-webkit-background-clip:text;background-clip:text;font-size:40px;font-weight:900;letter-spacing:-.02em;line-height:1}.hiw-win-sub{color:#94a3b8;font-size:11px;font-weight:700;letter-spacing:.04em;margin-top:6px;text-transform:uppercase}.hiw-win-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,1fr);width:100%;z-index:1}.hiw-win-stats>div{align-items:center;background:#0f172a8c;border:1px solid #22d3ee38;border-radius:10px;color:#cbd5e1;display:flex;flex-direction:column;gap:4px;justify-content:center;padding:14px 6px}.hiw-win-stats svg{color:#22d3ee}.hiw-win-stats strong{color:#f1f5f9;font-size:16px;font-weight:900;letter-spacing:-.01em}.hiw-win-stats span{color:#94a3b8;font-size:10px;font-weight:600}.hiw-benefits{grid-gap:24px;background:#0a1120;display:grid;gap:24px;grid-template-columns:repeat(4,1fr);margin:0 auto;max-width:1240px;padding:72px 48px}.hiw-benefits:before{content:"";display:none}.hiw-benefit-card{background:#ffffff0a;border:1px solid #22d3ee2e;border-radius:14px;padding:24px;transition:border-color .2s ease,transform .2s ease}.hiw-benefit-card:hover{border-color:#22d3ee80;transform:translateY(-3px)}.hiw-benefit-check{color:#22d3ee;margin-bottom:12px}.hiw-benefit-label{color:#f1f5f9;font-size:15px;font-weight:900;letter-spacing:-.01em;margin-bottom:6px}.hiw-benefit-body{color:#94a3b8;font-size:13.5px;line-height:1.55}.hiw-faq{background:#f8fafc;border-top:1px solid #0f172a0f;padding:100px 0 90px}.hiw-faq-inner{margin:0 auto;max-width:860px;padding:0 48px}.hiw-faq-inner,.hiw-faq-inner>.hiw-section-sub,.hiw-faq-inner>.hiw-section-title{text-align:center}.hiw-faq-list{display:flex;flex-direction:column;gap:14px;margin-top:42px;text-align:left}.hiw-faq-item{background:#fff;border:1px solid #0f172a14;border-radius:12px;transition:border-color .18s ease,box-shadow .18s ease}.hiw-faq-item:hover{border-color:#22d3ee59}.hiw-faq-item[open]{border-color:#22d3ee8c;box-shadow:0 12px 28px -12px #22d3ee40}.hiw-faq-item summary{align-items:center;color:#0f172a;cursor:pointer;display:flex;font-size:16px;font-weight:800;gap:18px;justify-content:space-between;letter-spacing:-.005em;list-style:none;padding:20px 24px}.hiw-faq-item summary::-webkit-details-marker{display:none}.hiw-faq-chev{align-items:center;background:#22d3ee1f;border-radius:50%;color:#0891b2;display:inline-flex;font-size:18px;font-weight:900;height:26px;justify-content:center;transition:transform .18s ease,background .18s ease;width:26px}.hiw-faq-item[open] .hiw-faq-chev{background:#22d3ee;color:#fff;transform:rotate(45deg)}.hiw-faq-item p{color:#475569;font-size:15px;line-height:1.65;margin:0;padding:0 24px 22px}@media (max-width:760px){.hiw-faq{padding:70px 0}.hiw-faq-inner{padding:0 24px}.hiw-faq-item summary{font-size:15px;padding:16px 18px}.hiw-faq-item p{font-size:14px;padding:0 18px 18px}}.hiw-final-cta{background:radial-gradient(800px 280px at 50% 0,#22d3ee2e,#0000 70%),#0a1120;border-top:1px solid #22d3ee38;color:#e2e8f0;padding:120px 48px 130px;text-align:center}.hiw-final-title{color:#f8fafc;font-size:clamp(34px,4vw,52px);font-weight:900;letter-spacing:-.025em;line-height:1.1;margin:0 0 18px}.hiw-final-sub{color:#cbd5e1;font-size:18px;line-height:1.6;margin:0 auto 34px;max-width:580px}.hiw-final-microcopy{color:#64748b;font-size:13px;margin-top:16px}@media (max-width:968px){.hiw-hero{padding:80px 0 70px}.hiw-hero-inner{gap:48px;grid-template-columns:1fr;padding:0 28px}.hiw-hero-subtitle{max-width:100%}.hiw-steps{padding:80px 0}.hiw-steps-head{margin-bottom:40px;padding:0 28px}.hiw-steps-list{gap:60px;padding:0 28px}.hiw-step{gap:24px;grid-template-columns:1fr}.hiw-step,.hiw-step:nth-child(2n){direction:ltr}.hiw-step-visual{order:-1}.hiw-step-num{font-size:56px}.hiw-benefits{gap:16px;grid-template-columns:repeat(2,1fr);padding:56px 28px}.hiw-final-cta{padding:80px 28px 90px}}@media (max-width:560px){.hiw-hero{padding:70px 0 60px}.hiw-hero-cta-row{align-items:stretch;flex-direction:column}.hiw-cta-ghost,.hiw-cta-primary{justify-content:center;width:100%}.hiw-benefits{grid-template-columns:1fr}.hiw-hero-stats{gap:14px}}.page-template{background:#fff;color:#0f172a;font-family:Lato,sans-serif}.page-header{background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:60px 0 48px}.page-header .container{margin:0 auto;max-width:1280px;padding:0 32px;text-align:center}.page-header h1{color:#0f172a;font-family:Lato,sans-serif;font-size:clamp(32px,4vw,48px);font-weight:900;letter-spacing:-.03em;margin:0 0 12px}.page-header p{color:#475569;font-size:18px;margin:0 auto;max-width:600px}.page-content{padding:48px 0 80px}.page-content .container{margin:0 auto;max-width:900px;padding:0 32px}.content-box{background:#fff;border:1px solid #e2e8f0;border-radius:16px;margin-bottom:24px;padding:32px}.content-box h2{color:#0f172a;font-family:Lato,sans-serif;font-size:24px;font-weight:800;letter-spacing:-.01em;margin:0 0 16px}.content-box p{color:#475569;font-size:15px;line-height:1.7;margin:0}.feature-list{list-style:none;margin:16px 0 0;padding:0}.feature-list li{align-items:flex-start;border-bottom:1px solid #f1f5f9;color:#334155;display:flex;font-size:15px;gap:12px;line-height:1.6;padding:10px 0}.feature-list li:last-child{border-bottom:none}.feature-list li:before{background:#2563eb;border-radius:50%;content:"";height:6px;margin-top:9px;min-width:6px;width:6px}.cta-button{align-items:center;background:#2563eb;border:none;border-radius:9999px;box-shadow:0 4px 14px #16a34a40;color:#fff;cursor:pointer;display:inline-flex;font-family:Lato,sans-serif;font-size:14px;font-weight:600;gap:8px;padding:12px 28px;text-decoration:none;transition:all .2s}.cta-button:hover{background:#1d4ed8;transform:translateY(-1px)}.page-header{text-align:center}@media (max-width:768px){.page-header{padding:40px 0 32px}.page-content{padding:32px 0 60px}.content-box{padding:24px}}.pricing-page{background:#fff;color:#0f172a;font-family:Lato,sans-serif}.pricing-header{background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:60px 0 48px;text-align:center}.pricing-header .container{margin:0 auto;max-width:1280px;padding:0 32px}.pricing-header h1{color:#0f172a;font-family:Lato,sans-serif;font-size:clamp(32px,4vw,48px);font-weight:900;letter-spacing:-.03em;margin:0 0 12px}.pricing-header p{color:#475569;font-size:17px;margin:0 auto 28px;max-width:560px}.trial-banner{align-items:center;background:#fffbeb;border:1px solid #fde68a;border-radius:12px;display:inline-flex;gap:12px;margin-bottom:28px;padding:12px 24px}.trial-badge-large{background:#f59e0b;border-radius:6px;color:#fff;font-size:12px;font-weight:800;letter-spacing:.05em;padding:4px 12px}.trial-details{color:#92400e;font-size:14px}.billing-toggle{background:#e2e8f0;border-radius:12px;display:inline-flex;gap:4px;padding:4px}.billing-toggle button{align-items:center;background:#0000;border:none;border-radius:10px;color:#64748b;cursor:pointer;display:flex;font-family:Lato,sans-serif;font-size:14px;font-weight:600;gap:8px;padding:10px 24px;transition:all .2s}.billing-toggle button.active{background:#fff;box-shadow:0 2px 6px #0000000f;color:#0f172a}.savings-badge{background:#2563eb;border-radius:6px;color:#fff;font-size:11px;font-weight:700;padding:2px 8px}.pricing-plans{padding:60px 0}.pricing-plans .container{margin:0 auto;max-width:1280px;padding:0 32px}.plans-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(4,1fr)}.pricing-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;border-top:4px solid #0000;display:flex;flex-direction:column;padding:32px 24px;position:relative;transition:all .3s}.pricing-card:hover{box-shadow:0 8px 24px #0000000f;transform:translateY(-4px)}.pricing-card.popular{border-color:#2563eb;box-shadow:0 8px 24px #16a34a1f}.popular-badge{background:#2563eb;border-radius:9999px;color:#fff;font-size:12px;font-weight:700;left:50%;padding:4px 16px;position:absolute;top:-14px;transform:translateX(-50%);white-space:nowrap}.trial-card-badge{background:#fffbeb;border-radius:6px;color:#92400e;display:inline-block;font-size:11px;font-weight:700;margin-bottom:12px;padding:4px 10px}.card-header{margin-bottom:20px}.plan-icon{align-items:center;border-radius:14px;display:flex;height:52px;justify-content:center;margin-bottom:14px;width:52px}.card-header h3{color:#0f172a;font-family:Lato,sans-serif;font-size:22px;font-weight:800;margin:0 0 6px}.plan-description{color:#64748b;font-size:14px;margin:0 0 8px}.plan-users{align-items:center;color:#475569;display:flex;font-size:13px;font-weight:600;gap:6px}.card-pricing{margin-bottom:24px}.price{align-items:baseline;display:flex;gap:2px}.currency{color:#0f172a;font-size:20px;font-weight:700}.amount{color:#0f172a;font-family:Lato,sans-serif;font-size:44px;font-weight:900;letter-spacing:-.03em}.period{color:#64748b;font-size:14px;font-weight:500}.annual-savings{color:#2563eb;font-size:13px;font-weight:600;margin-top:4px}.monthly-note{color:#94a3b8;font-size:12px;margin-top:4px}.custom-pricing .price-text{color:#0f172a;display:block;font-family:Lato,sans-serif;font-size:28px;font-weight:800}.custom-pricing .price-subtext{color:#64748b;font-size:14px}.card-features{flex:1 1;margin-bottom:24px}.card-features h4{color:#94a3b8;font-size:13px;font-weight:700;letter-spacing:.05em;margin:0 0 12px;text-transform:uppercase}.features-list{list-style:none;margin:0;padding:0}.features-list li{align-items:center;color:#334155;display:flex;font-size:13px;gap:8px;padding:5px 0}.check-icon{color:#2563eb;flex-shrink:0}.limitations-list{list-style:none;margin:0;padding:0}.limitations-list li{align-items:center;color:#94a3b8;display:flex;font-size:13px;gap:8px;padding:5px 0}.x-icon{color:#cbd5e1;flex-shrink:0}.card-action{margin-top:auto}.card-action .btn{border-radius:12px;font-size:15px;justify-content:center;padding:14px;width:100%}.card-action .btn-primary{background:#2563eb;box-shadow:0 4px 14px #16a34a40;color:#fff}.card-action .btn-primary:hover{background:#1d4ed8}.card-action .btn-outline{background:#fff;border:2px solid #e2e8f0;color:#0f172a}.card-action .btn-outline:hover{background:#f8fafc;border-color:#cbd5e1}.pricing-faq{background:#f8fafc;padding:60px 0}.pricing-faq .container{margin:0 auto;max-width:800px;padding:0 32px}.pricing-faq h2{color:#0f172a;font-family:Lato,sans-serif;font-size:32px;font-weight:800;margin:0 0 32px;text-align:center}.faq-accordion{background:#fff;border:1px solid #e2e8f0;border-radius:14px;overflow:hidden;transition:box-shadow .2s}.faq-accordion:hover{box-shadow:0 2px 8px #0000000a}.faq-question{align-items:center;background:none;border:none;color:#0f172a;cursor:pointer;display:flex;font-family:Lato,sans-serif;font-size:15px;font-weight:600;justify-content:space-between;padding:18px 24px;text-align:left;width:100%}.faq-chevron{color:#94a3b8;transition:transform .2s}.faq-accordion.open .faq-chevron{transform:rotate(180deg)}.pricing-page .faq-answer{max-height:0;overflow:hidden;transition:max-height .3s}.pricing-page .faq-accordion.open .faq-answer{max-height:300px}.pricing-page .faq-answer p{color:#475569;font-size:14px;line-height:1.65;margin:0;padding:0 24px 18px}.pricing-cta-banner{background:#0f172a;padding:96px 0}.pricing-cta-banner-inner{margin:0 auto;max-width:700px;padding:0 32px;text-align:center}.pricing-cta-banner-inner h2{color:#fff;font-family:Lato,sans-serif;font-size:36px;font-weight:900;letter-spacing:-.02em;margin:0 0 16px}.pricing-cta-banner-inner p{color:#94a3b8;font-size:17px;line-height:1.65;margin:0 0 36px}.pricing-cta-banner .cta-buttons{display:flex;flex-wrap:wrap;gap:16px;justify-content:center}@media (max-width:1024px){.plans-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.plans-grid{grid-template-columns:1fr}.pricing-header{padding:40px 0 32px}.pricing-header h1{font-size:30px}.plan-name,.pricing-header p{font-size:17px}.plan-desc{font-size:16px}.plan-price .amount{font-size:40px}.currency{font-size:18px}.period{font-size:15px}.plan-cta{font-size:17px;padding:14px}.feature-item,.feature-item-disabled{font-size:15px}.plan-section-label{font-size:14px}.pricing-faq-title{font-size:28px}.pricing-faq-question{font-size:17px}.pricing-faq-answer{font-size:16px}.pricing-cta h2{font-size:28px}.pricing-cta p,.pricing-cta-btn{font-size:17px}.billing-toggle label{font-size:15px}}.contact-page{background:#fff;color:#0f172a;font-family:Lato,sans-serif}.contact-page .page-header{background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:60px 0 48px;text-align:center}.contact-page .page-header .container{margin:0 auto;max-width:1280px;padding:0 32px}.contact-page .page-header h1{color:#0f172a;font-family:Lato,sans-serif;font-size:clamp(32px,4vw,48px);font-weight:900;letter-spacing:-.03em;margin:0 0 12px}.contact-page .page-header p{color:#475569;font-size:17px;margin:0 auto;max-width:560px}.contact-section{padding:48px 0 80px}.contact-section .container{margin:0 auto;max-width:1000px;padding:0 32px}.contact-layout{grid-gap:48px;align-items:start;display:grid;gap:48px;grid-template-columns:1fr 1fr}.contact-info h2{color:#0f172a;font-family:Lato,sans-serif;font-size:24px;font-weight:800;letter-spacing:-.01em;margin:0 0 12px}.contact-info>p{color:#475569;font-size:15px;line-height:1.7;margin:0 0 28px}.info-items{display:flex;flex-direction:column;gap:16px}.info-item{align-items:flex-start;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;display:flex;gap:16px;padding:20px;transition:box-shadow .2s}.info-item:hover{box-shadow:0 4px 12px #0000000a}.info-icon{color:#2563eb;flex-shrink:0;margin-top:2px}.info-item h3{color:#0f172a;font-family:Lato,sans-serif;font-size:15px;font-weight:700;margin:0 0 4px}.info-item p{color:#475569;font-size:14px;line-height:1.5;margin:0}.contact-form-wrapper{background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:32px}.contact-form{gap:16px}.contact-form,.contact-form .form-group{display:flex;flex-direction:column}.contact-form .form-group label{color:#334155;font-size:14px;font-weight:600;margin-bottom:6px}.contact-form .form-group input,.contact-form .form-group textarea{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;box-sizing:border-box;color:#0f172a;font-family:Lato,sans-serif;font-size:15px;padding:14px 16px;transition:border-color .2s,background .2s;width:100%}.contact-form .form-group input:focus,.contact-form .form-group textarea:focus{background:#fff;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a;outline:none}.contact-form .form-group input::placeholder,.contact-form .form-group textarea::placeholder{color:#94a3b8}.contact-form .form-group textarea{min-height:120px;resize:vertical}.contact-form .btn.btn-submit{align-items:center;background:#2563eb;border:none;border-radius:12px;box-shadow:0 4px 14px #16a34a40;color:#fff;cursor:pointer;display:inline-flex;font-family:Lato,sans-serif;font-size:15px;font-weight:600;gap:8px;justify-content:center;padding:14px 32px;transition:background .2s}.contact-form .btn.btn-submit:hover{background:#1d4ed8}.contact-form .btn.btn-submit:disabled{cursor:not-allowed;opacity:.6}.status-message{border-radius:12px;font-size:14px;font-weight:500;margin-bottom:16px;padding:14px 18px}.status-message.success{background:#f0fdf4;border:1px solid #bbf7d0;color:#2563eb}.status-message.error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}@media (max-width:768px){.contact-layout{gap:32px;grid-template-columns:1fr}.contact-form-wrapper{padding:24px}.contact-header{padding:40px 0 32px}.contact-header h1{font-size:30px}.contact-header p{font-size:17px}.contact-card-title{font-size:22px}.contact-card-link,.contact-card-text,.contact-form-wrapper label{font-size:16px}.contact-form-wrapper input,.contact-form-wrapper textarea{font-size:17px;padding:14px 16px}.contact-form-wrapper select{font-size:17px}.contact-submit-btn{font-size:17px;padding:16px}.contact-note{font-size:15px}.contact-info-item{font-size:16px}}.tools-page{background:#fff;color:#0f172a;font-family:Lato,sans-serif}.tools-hero{background:#f0f5ff;padding:100px 0 72px;text-align:center}.tools-hero-container{margin:0 auto;max-width:760px;padding:0 32px}.tools-overline{color:#3b82f6;display:inline-block;font-size:13px;font-weight:900;letter-spacing:.18em;margin-bottom:16px;text-transform:uppercase}.tools-hero-title{color:#0f172a;font-size:clamp(32px,5vw,52px);font-weight:900;letter-spacing:-.025em;line-height:1.08;margin:0 0 18px}.tools-hero-subtitle{color:#475569;font-size:18px;line-height:1.65;margin:0 auto;max-width:580px}.tools-grid-section{background:#fff;padding:80px 0 96px}.tools-grid-container{margin:0 auto;max-width:1200px;padding:0 32px}.tools-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(3,1fr)}.tool-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;color:inherit;display:flex;flex-direction:column;padding:32px 28px 28px;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.tool-card:hover{border-color:#bfdbfe;box-shadow:0 16px 48px #00000014;transform:translateY(-4px)}.tool-card-icon{align-items:center;border-radius:14px;display:flex;flex-shrink:0;height:52px;justify-content:center;margin-bottom:20px;width:52px}.tool-card-title{color:#0f172a;font-size:18px;font-weight:900;letter-spacing:-.01em;margin:0 0 8px}.tool-card-desc{color:#64748b;font-size:14px;line-height:1.6;margin:0 0 auto;padding-bottom:16px}.tool-card-link{align-items:center;color:#3b82f6;display:inline-flex;font-size:14px;font-weight:700;gap:6px;margin-top:4px;transition:gap .2s ease}.tool-card:hover .tool-card-link{gap:10px}.tools-cta{background:#0f172a;padding:96px 0}.tools-cta-inner{margin:0 auto;max-width:700px;padding:0 32px;text-align:center}.tools-cta-inner h2{color:#fff;font-size:36px;font-weight:900;letter-spacing:-.02em;margin:0 0 16px}.tools-cta-inner p{color:#94a3b8;font-size:17px;line-height:1.65;margin:0 0 36px}.tools-cta-buttons{display:flex;flex-wrap:wrap;gap:16px;justify-content:center}.tools-cta-btn{align-items:center;background:#2563eb;border-radius:9999px;box-shadow:0 4px 14px #2563eb4d;color:#fff;display:inline-flex;font-size:16px;font-weight:700;gap:8px;padding:16px 36px;text-decoration:none;transition:background .2s,transform .15s}.tools-cta-btn:hover{background:#1d4ed8;transform:translateY(-2px)}.tools-cta-btn-secondary{align-items:center;background:#0000;border:2px solid #ffffff40;border-radius:9999px;color:#fff;display:inline-flex;font-size:16px;font-weight:700;gap:8px;padding:16px 36px;text-decoration:none;transition:border-color .2s,transform .15s}.tools-cta-btn-secondary:hover{border-color:#fff;transform:translateY(-2px)}@media (max-width:900px){.tools-grid{gap:20px;grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.tools-hero{padding:72px 0 48px}.tools-hero-container{padding:0 20px}.tools-overline{font-size:14px}.tools-hero-title{font-size:32px}.tools-hero-subtitle{font-size:17px;line-height:1.6}.tools-grid-section{padding:48px 0 64px}.tools-grid-container{padding:0 20px}.tools-grid{gap:16px;grid-template-columns:1fr}.tool-card{padding:24px 20px 20px}.tool-card-icon{height:48px;margin-bottom:16px;width:48px}.tool-card-title{font-size:19px}.tool-card-desc{font-size:16px;line-height:1.6}.tool-card-link{font-size:16px}.tools-cta{padding:64px 0}.tools-cta-inner{padding:0 20px}.tools-cta-inner h2{font-size:28px}.tools-cta-inner p{font-size:17px}.tools-cta-btn,.tools-cta-btn-secondary{font-size:17px;padding:16px 32px}}.auth-page{align-items:center;background:#f8fafc;display:flex;font-family:Lato,sans-serif;justify-content:center;min-height:100vh;padding:40px 20px}.auth-container{max-width:440px;width:100%}.auth-box{background:#fff;border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 4px 24px #0000000f;padding:40px 36px}.auth-header{margin-bottom:28px;text-align:center}.auth-icon{color:#2563eb;margin-bottom:12px}.auth-header h1{color:#0f172a;font-family:Lato,sans-serif;font-size:28px;font-weight:800;letter-spacing:-.02em;margin:0 0 8px}.auth-header p{color:#64748b;font-size:15px;margin:0}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-page .form-group label{align-items:center;color:#334155;display:flex;font-size:14px;font-weight:600;gap:8px;margin-bottom:6px}.auth-page .form-group input{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;box-sizing:border-box;color:#0f172a;font-family:Lato,sans-serif;font-size:15px;padding:14px 16px;transition:border-color .2s,background .2s;width:100%}.auth-page .form-group input:focus{background:#fff;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a;outline:none}.auth-page .form-group input::placeholder{color:#94a3b8}.btn{font-family:Lato,sans-serif;text-decoration:none}.auth-form .btn-primary,.auth-form .btn.btn-primary.btn-full{background:#2563eb;border:none;border-radius:12px;box-shadow:0 4px 14px #16a34a40;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:14px;transition:background .2s;width:100%}.auth-form .btn-primary:hover,.auth-form .btn.btn-primary.btn-full:hover{background:#1d4ed8}.auth-form .btn:disabled{cursor:not-allowed;opacity:.6}.error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:10px;color:#dc2626}.error-message,.success-message{align-items:center;display:flex;font-size:14px;gap:10px;margin-bottom:16px;padding:12px 16px}.success-message{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;color:#2563eb}.auth-footer{color:#64748b;font-size:14px;margin-top:24px;text-align:center}.auth-footer p{margin:8px 0 0}.auth-link{color:#2563eb;font-weight:600;text-decoration:none}.auth-link:hover{text-decoration:underline}.back-to-login,.forgot-password-link{align-items:center;background:none;border:none;color:#2563eb;cursor:pointer;display:inline-flex;font-family:Lato,sans-serif;font-size:14px;font-weight:600;gap:6px}.back-to-login:hover,.forgot-password-link:hover{text-decoration:underline}@media (max-width:640px){.auth-page{padding:24px 16px}.auth-box{border-radius:16px;padding:32px 24px}.auth-header h1{font-size:26px}.auth-header p,.auth-page .form-group label{font-size:16px}.auth-page .form-group input{font-size:17px;padding:16px 18px}.auth-form .btn-primary,.auth-form .btn.btn-primary.btn-full{font-size:17px;padding:16px}.error-message,.success-message{font-size:15px}.auth-footer,.auth-link,.back-to-login,.forgot-password-link{font-size:16px}.legal-consent-group label{font-size:15px}.legal-consent-group input[type=checkbox]{height:22px;width:22px}}.legal-page{background:#fff;color:#0f172a;font-family:Manrope,Lato,sans-serif;min-height:100vh;padding:0 0 80px}.legal-container{margin:0 auto;max-width:820px;padding:0 32px}.legal-header{border-bottom:2px solid #0f172a;margin-bottom:48px;padding:80px 0 48px}.legal-header h1{color:#0f172a;font-family:Outfit,sans-serif;font-size:42px;font-weight:900;letter-spacing:-.03em;margin:0 0 16px}.legal-effective{color:#64748b;font-size:14px;font-weight:600;margin:0 0 4px}.legal-entity{color:#64748b;font-size:14px;font-weight:500;margin:0}.legal-body{line-height:1.8}.legal-section{border-bottom:1px solid #e2e8f0;margin-bottom:40px;padding-bottom:40px}.legal-section:last-child{border-bottom:none}.legal-section h2{font-size:22px;font-weight:800;letter-spacing:-.01em;margin:0 0 16px}.legal-section h2,.legal-section h3{color:#0f172a;font-family:Outfit,sans-serif}.legal-section h3{font-size:17px;font-weight:700;margin:24px 0 10px}.legal-section p{color:#1e293b;font-size:15px;line-height:1.8;margin:0 0 14px}.legal-section ul{margin:0 0 16px;padding-left:24px}.legal-section ul li{color:#1e293b;font-size:15px;line-height:1.7;margin-bottom:8px}.legal-section ul ul{margin-bottom:8px;margin-top:8px}.legal-section a{color:#2563eb;font-weight:600;text-decoration:none}.legal-section a:hover{text-decoration:underline}.legal-highlight{background:#fef9e7;border:1px solid #fbbf24;border-left:4px solid #f59e0b;border-radius:8px;color:#92400e;font-size:14px;line-height:1.7;margin:16px 0;padding:16px 20px}.legal-contact-block{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin:12px 0;padding:20px 24px}.legal-contact-block p{color:#334155;font-size:14px;margin:0 0 4px}.legal-contact-block a{color:#2563eb;font-weight:600}.legal-footer-nav{border-top:1px solid #e2e8f0;display:flex;gap:24px;margin-top:48px;padding-top:40px}.legal-footer-nav a{color:#2563eb;font-size:15px;font-weight:700;text-decoration:none}.legal-footer-nav a:hover{text-decoration:underline}.legal-consent-group{align-items:flex-start;display:flex;gap:10px;margin:4px 0 0}.legal-consent-group input[type=checkbox]{accent-color:#2563eb;cursor:pointer;flex-shrink:0;height:18px;margin-top:2px;width:18px}.legal-consent-group label{color:#475569;cursor:pointer;font-size:13px;font-weight:500;line-height:1.5}.legal-consent-group label a{color:#2563eb;font-weight:600;text-decoration:none}.legal-consent-group label a:hover{text-decoration:underline}@media (max-width:768px){.legal-container{padding:0 20px}.legal-header{margin-bottom:32px;padding:64px 0 32px}.legal-header h1{font-size:30px}.legal-section{margin-bottom:28px;padding-bottom:28px}.legal-section h2{font-size:19px}.legal-section h3{font-size:16px}.legal-section p,.legal-section ul li{font-size:14px}.legal-footer-nav{flex-direction:column;gap:12px}}.roof-profile-loader{margin-bottom:20px;position:relative}.rpl-load-btn{align-items:center;background:#0ea5e90d;border:2px dashed #475569;border-radius:10px;color:#0ea5e9;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;gap:8px;justify-content:center;padding:10px 20px;transition:all .2s;width:100%}.rpl-load-btn:hover{background:#0ea5e91a;border-color:#0ea5e9}.rpl-loaded{align-items:center;background:#10b98114;border:1px solid #10b981;border-radius:10px;display:flex;gap:10px;padding:10px 16px}.rpl-check{color:#10b981;flex-shrink:0}.rpl-info{display:flex;flex:1 1;flex-direction:column;gap:2px}.rpl-name{color:#f1f5f9;font-size:.9rem;font-weight:600}.rpl-change,.rpl-meta{color:#e2e8f0;font-size:.78rem}.rpl-change{background:#0000;border:1px solid #475569;border-radius:6px;cursor:pointer;padding:4px 12px}.rpl-change:hover{border-color:#0ea5e9;color:#0ea5e9}.rpl-clear{background:none;border:none;border-radius:4px;color:#e2e8f0;cursor:pointer;display:flex;padding:4px}.rpl-clear:hover{background:#ef44441a;color:#ef4444}.rpl-dropdown{background:#1e293b;border:1px solid #334155;border-radius:10px;box-shadow:0 10px 30px #0006;left:0;margin-top:4px;max-height:280px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:50}.rpl-empty,.rpl-loading{color:#e2e8f0;font-size:.85rem;padding:20px;text-align:center}.rpl-option{background:none;border:none;border-bottom:1px solid #33415566;cursor:pointer;display:flex;flex-direction:column;gap:2px;padding:12px 16px;text-align:left;transition:background .15s;width:100%}.rpl-option:hover{background:#0ea5e914}.rpl-option:last-child{border-bottom:none}.rpl-opt-name{color:#f1f5f9;font-size:.88rem;font-weight:600}.rpl-opt-meta{color:#e2e8f0;font-size:.76rem}.rpl-opt-addr{color:#cbd5e1;font-size:.72rem;margin-top:1px}.rpl-btn-row{display:flex;gap:10px;width:100%}.rpl-btn-row .rpl-load-btn{flex:2 1}.rpl-trace-btn{align-items:center;background:#2c5f8d;border:2px solid #2c5f8d;border-radius:10px;color:#fff;cursor:pointer;display:inline-flex;flex:1 1;font-size:.88rem;font-weight:600;gap:8px;justify-content:center;padding:10px 18px;transition:all .2s;white-space:nowrap}.rpl-trace-btn:hover{background:#1e4263;border-color:#1e4263}.rpl-tag{color:#fbbf24;font-weight:600}.rpl-dropdown-header{align-items:center;background:#0f172ab3;border-bottom:1px solid #33415599;color:#94a3b8;display:flex;font-size:.72rem;justify-content:space-between;letter-spacing:.5px;padding:10px 14px;text-transform:uppercase}.rpl-trace-link{align-items:center;background:#0000;border:1px solid #334155;border-radius:5px;color:#e2e8f0;cursor:pointer;display:inline-flex;font-size:11px;font-weight:600;gap:4px;letter-spacing:0;padding:4px 10px;text-transform:none}.rpl-trace-link:hover{border-color:#60a5fa;color:#60a5fa}.rpl-opt-head{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-bottom:2px}.rpl-opt-tag{border-radius:999px;flex-shrink:0;font-size:10px;font-weight:700;letter-spacing:.5px;padding:2px 8px;text-transform:uppercase}.rpl-opt-tag.standalone{background:#fbbf2426;color:#fbbf24}.rpl-opt-tag.project{background:#0ea5e926;color:#60a5fa}.rpl-empty-cta{align-items:center;background:#2c5f8d;border:1px solid #2c5f8d;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:12px;font-weight:600;gap:6px;margin-top:12px;padding:7px 14px}.rpl-empty-cta:hover{background:#1e4263}.genie-step{margin:0 auto;max-width:1100px;padding:32px 0}.step-header{margin-bottom:32px;text-align:center}.step-header h2{color:#f1f5f9;font-size:24px;font-weight:800;letter-spacing:-.3px;margin-bottom:8px}.step-header p{color:#cbd5e1;font-size:14px}.success-badge{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;box-shadow:0 4px 16px #10b9814d;color:#fff;display:flex;height:72px;justify-content:center;margin:0 auto 24px;width:72px}.step-content{background:#1e293b;border:1px solid #334155;border-radius:14px;margin-bottom:28px;padding:36px}.genie-step .step-actions{display:flex;gap:12px;justify-content:center;margin-top:16px;padding:24px 0 40px;.step-diagrams .step-navigation,.step-navigation,.step-trace-manual .step-navigation{align-items:center;display:flex!important;flex-direction:row!important;gap:12px;justify-content:space-between!important;margin-top:16px;padding:20px 0 48px;width:100%}.step-nav-btn{align-items:center;background:#1e293b;border:1px solid #475569;border-radius:10px;color:#e2e8f0;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;gap:8px;padding:12px 28px;transition:all .2s;white-space:nowrap}.step-nav-btn:hover{background:#334155;border-color:#cbd5e1}.step-nav-btn.next{background:#6366f1;border-color:#6366f1;color:#fff;margin-left:auto}.step-nav-btn.next:hover{background:#4f46e5}.step-nav-btn.back{background:#0000}}.genie-step .controls-actions .btn,.genie-step .estimate-actions .btn,.genie-step .step-actions .btn{align-items:center;border:none;border-radius:10px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;transition:all .2s ease}.genie-step .btn-primary,.genie-step .estimate-actions .btn-primary{background:linear-gradient(135deg,#6366f1,#4f46e5)!important;border:none!important;color:#fff!important}.genie-step .btn-primary:hover,.genie-step .estimate-actions .btn-primary:hover{background:linear-gradient(135deg,#818cf8,#6366f1)!important;box-shadow:0 4px 16px #6366f159;transform:translateY(-1px)}.genie-step .btn-secondary,.genie-step .estimate-actions .btn-secondary{background:#0f172a!important;border:1px solid #334155!important;color:#e2e8f0!important}.genie-step .btn-secondary:hover,.genie-step .estimate-actions .btn-secondary:hover{background:#1e293b!important;border-color:#cbd5e1!important;color:#e2e8f0!important}.genie-step .btn-secondary.btn-share{background:#10b981!important;border-color:#10b981!important;color:#fff!important}.genie-step .btn-secondary.btn-share:hover{background:#059669!important;border-color:#059669!important}.genie-step .btn-large{font-size:15px;padding:16px 28px}.dual-source-layout{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr}.source-section{background:#0f172a99;border:1px solid #334155;border-radius:12px;padding:20px}.source-section-header{align-items:center;color:#e2e8f0;display:flex;gap:8px;margin-bottom:16px}.source-section-header h3{color:#e2e8f0;font-size:16px;font-weight:600;margin:0}.source-badge{background:#64748b33;border-radius:10px;color:#e2e8f0;font-size:11px;margin-left:auto;padding:2px 8px}.source-badge.active{background:#10b98126;color:#10b981}.upload-zone{background:#0f172a80;border:2px dashed #475569;border-radius:14px;cursor:pointer;padding:48px 24px;text-align:center;transition:all .3s ease}.upload-zone-compact{padding:32px 16px}.upload-zone.drag-active,.upload-zone:hover{background:#3b82f60d;border-color:#6366f1}.upload-icon{color:#6366f1;margin:0 auto 20px}.upload-zone h3{color:#e2e8f0;font-size:22px;font-weight:700;margin-bottom:8px}.upload-zone p{color:#cbd5e1;font-size:15px;margin-bottom:20px}.upload-formats{background:#0f172a;border:1px solid #334155;border-radius:8px;color:#cbd5e1;display:inline-block;font-size:13px;padding:8px 16px}.uploading{color:#6366f1;font-weight:600;margin-top:16px}.image-preview{border:1px solid #334155;border-radius:12px;overflow:hidden;position:relative}.image-preview img{display:block;height:auto;width:100%}.remove-btn{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ef4444e6;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;height:36px;justify-content:center;position:absolute;right:12px;top:12px;transition:all .2s ease;width:36px}.remove-btn:hover{background:#dc2626}.image-info{align-items:center;background:#3b82f614;color:#60a5fa;display:flex;font-size:14px;font-weight:600;gap:12px;padding:14px 16px}.upload-mode-toggle{display:flex;gap:12px;margin-bottom:24px}.mode-btn{align-items:center;background:#1e293b80;border:2px solid #33415566;border-radius:12px;color:#e2e8f0;cursor:pointer;display:flex;flex:1 1;font-size:15px;font-weight:600;gap:10px;justify-content:center;padding:18px 24px;transition:all .3s ease}.mode-btn:hover{border-color:#8b5cf64d;color:#cbd5e1}.mode-btn.active{background:#8b5cf61f;border-color:#8b5cf680;color:#c4b5fd}.satellite-search-section{padding:20px;text-align:center}.sat-search-inner h3{color:#f1f5f9;font-size:18px;margin:0 0 8px}.sat-search-inner>p{color:#e2e8f0;font-size:13px;margin:0 0 16px}.sat-address-wrap{margin:0 auto;max-width:100%;position:relative}.sat-input-icon{color:#cbd5e1;left:16px;position:absolute;top:50%;transform:translateY(-50%)}.sat-address-input{background:#1e293bcc;border:1px solid #47556980;border-radius:10px;box-sizing:border-box;color:#f1f5f9;font-size:15px;outline:none;padding:14px 18px 14px 46px;width:100%}.sat-address-input:focus{border-color:#8b5cf699}.sat-address-input::placeholder{color:#cbd5e1}.sat-input-spinner{color:#8b5cf6;position:absolute;right:14px;top:50%;transform:translateY(-50%)}.spin-icon{animation:spin-anim .8s linear infinite}.sat-autocomplete-dropdown{background:#1e293b;border:1px solid #475569;border-radius:10px;box-shadow:0 12px 32px #00000080;left:0;margin-top:4px;overflow:hidden;position:absolute;right:0;top:100%;z-index:100}.sat-autocomplete-item{align-items:center;background:#0000;border:none;border-bottom:1px solid #4755694d;color:#e2e8f0;cursor:pointer;display:flex;font-size:14px;gap:10px;padding:12px 16px;text-align:left;transition:background .12s;width:100%}.sat-autocomplete-item:last-child{border-bottom:none}.sat-autocomplete-item:hover{background:#8b5cf61a}.sat-autocomplete-item svg{color:#8b5cf6;flex-shrink:0}.sat-selected-addr{background:#22c55e14;border:1px solid #22c55e33;border-radius:8px;color:#86efac;display:inline-flex;gap:8px;padding:8px 14px}.sat-err,.sat-selected-addr{align-items:center;font-size:13px;margin-top:12px}.sat-err{background:#ef444414;border:1px solid #ef444433;border-radius:8px;color:#fca5a5;display:flex;flex-wrap:wrap;gap:12px;padding:10px 14px}.sat-retry-btn{background:#6366f1;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:6px 16px;transition:background .2s;white-space:nowrap}.sat-retry-btn:hover{background:#4f46e5}.satellite-analyzing{align-items:center;display:flex;flex-direction:column;gap:16px;padding:60px 20px}.sat-spin{animation:sat-spin-anim .8s linear infinite;border:3px solid #8b5cf633;border-radius:50%;border-top-color:#8b5cf6;height:48px;width:48px}@keyframes sat-spin-anim{to{transform:rotate(1turn)}}.satellite-analyzing p{color:#e2e8f0;font-size:15px}.sat-spin-sub{color:#cbd5e1!important;font-size:13px!important}.satellite-results-preview{background:#22c55e0a;border:1px solid #22c55e33;border-radius:12px;overflow:hidden}.sat-preview-header{align-items:center;padding:14px 18px}.sat-remove-btn{background:none;border:none;border-radius:4px;color:#e2e8f0;cursor:pointer;margin-left:auto;padding:4px}.sat-remove-btn:hover{background:#ef44441a;color:#ef4444}.sat-image-preview{max-height:300px;overflow:hidden}.sat-image-preview img{display:block;height:auto;object-fit:cover;width:100%}.sat-preview-stats{grid-gap:1px;background:#3341554d;border-top:1px solid #3341554d;display:grid;gap:1px;grid-template-columns:repeat(4,1fr)}.sat-stat{align-items:center;background:#0f172a99;display:flex;flex-direction:column;padding:14px 8px}.sat-stat-label{color:#e2e8f0;font-size:11px;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.sat-stat-value{color:#f1f5f9;font-size:18px;font-weight:700}.sat-preview-note{border-top:1px solid #3341554d;color:#e2e8f0;font-size:13px;padding:12px 18px;text-align:center}.pac-item span:last-child{color:#e2e8f0!important}.dismissButton,.gm-err-container,.gm-err-message,.gm-style iframe+div{display:none!important}.gm-err-autocomplete{background-image:none!important;background:#0f172a!important}.gm-err-autocomplete::placeholder{color:#cbd5e1!important}.pac-container.pac-logo:after{display:none!important}.su-addr-input{isolation:isolate;overflow:visible}.su-addr-input input{position:relative;z-index:2}.su-addr-input input.gm-err-autocomplete{background-image:none!important;background:#0f172a!important}.sat-map-section{background:#0f172a;border:1px solid #47556966;border-radius:12px;overflow:hidden}.sat-map-toolbar{background:#0f172af2;border-bottom:1px solid #4755694d;color:#e2e8f0;font-size:13px;padding:10px 16px}.sat-analyze-btn{align-items:center;background:linear-gradient(135deg,#8b5cf6,#6d28d9);border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;padding:10px 22px;transition:transform .15s,box-shadow .2s}.sat-analyze-btn:hover{box-shadow:0 4px 16px #8b5cf666;transform:translateY(-1px)}.sat-map-embed{height:400px;width:100%}.sat-preview-header{align-items:flex-start;border-bottom:1px solid #3341554d;color:#86efac;display:flex;font-size:15px;font-weight:600;gap:10px;justify-content:space-between;padding:18px 20px}.sat-preview-header h3{font-size:16px;margin:0}.sat-addr-badge{font-weight:400;gap:5px;margin-top:4px}.sat-addr-badge,.sat-reset-btn{align-items:center;color:#e2e8f0;display:inline-flex;font-size:12px}.sat-reset-btn{background:#4755694d;border:1px solid #47556966;border-radius:6px;cursor:pointer;gap:6px;padding:6px 14px;transition:all .15s;white-space:nowrap}.sat-reset-btn:hover{background:#47556980;color:#f1f5f9}.sat-results-grid{grid-gap:1px;background:#3341554d;gap:1px;grid-template-columns:repeat(4,1fr)}.sat-faces-breakdown{display:flex;flex-wrap:wrap;gap:8px;padding:14px 20px}.sat-face-chip{align-items:center;background:#1e293bcc;border:1px solid #4755694d;border-radius:20px;color:#cbd5e1;display:inline-flex;font-size:12px;gap:6px;padding:5px 12px}.sat-face-dot{border-radius:50%;flex-shrink:0;height:8px;width:8px}.sat-ai-notes{border-top:1px solid #3341554d;color:#e2e8f0;font-size:13px;line-height:1.5;padding:12px 20px}.sat-ai-notes strong{color:#cbd5e1}.satellite-flow{display:flex;flex-direction:column;gap:20px}.sat-section{border-top:1px solid #3341554d;padding:0 20px 16px}.sat-section-title{color:#cbd5e1;font-size:13px;font-weight:600;letter-spacing:.5px;margin:14px 0 10px;text-transform:uppercase}.sat-faces-table{display:flex;flex-direction:column;gap:6px}.sat-face-row{align-items:center;background:#0f172a99;border-radius:6px;color:#cbd5e1;display:flex;font-size:13px;gap:10px;padding:6px 10px}.sat-face-name{flex:1 1;font-weight:500}.sat-face-detail{color:#e2e8f0;font-size:12px;min-width:70px;text-align:right}.sat-measurements-grid{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.sat-meas{background:#0f172a99;border-radius:6px;color:#cbd5e1;display:flex;font-size:13px;justify-content:space-between;padding:6px 10px}.sat-meas span:first-child{color:#e2e8f0}.sat-meas span:last-child{font-weight:600}.sat-boq-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.sat-boq-group h5{color:#8b5cf6;font-size:12px;font-weight:600;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.sat-boq-row{border-bottom:1px solid #33415526;color:#cbd5e1;display:flex;font-size:13px;justify-content:space-between;padding:4px 0}.sat-boq-row span:first-child{color:#e2e8f0}.sat-boq-row span:last-child{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600}.nett-qty-table{display:flex;flex-direction:column;gap:0}.nett-qty-header{border-bottom:1px solid #33415566;color:#cbd5e1;font-size:11px;font-weight:700;letter-spacing:.5px;padding:8px 12px;text-transform:uppercase}.nett-qty-header,.nett-qty-row{display:flex;justify-content:space-between}.nett-qty-row{border-bottom:1px solid #33415526;font-size:13px;padding:7px 12px}.nett-qty-row span:first-child{color:#cbd5e1}.nett-qty-row span:last-child{font-feature-settings:"tnum";color:#e2e8f0;font-variant-numeric:tabular-nums;font-weight:600}.cutting-list-table{display:flex;flex-direction:column;gap:0}.cutting-list-header{border-bottom:1px solid #33415566;font-size:11px;font-weight:700;letter-spacing:.5px;padding:8px 12px;text-transform:uppercase}.cutting-list-header,.cutting-list-row{grid-gap:8px;color:#cbd5e1;display:grid;gap:8px;grid-template-columns:1.2fr .8fr 1fr}.cutting-list-row{border-bottom:1px solid #33415526;font-size:13px;padding:7px 12px}.cutting-list-row span:last-child{font-feature-settings:"tnum";color:#e2e8f0;font-variant-numeric:tabular-nums;font-weight:600}.sat-disclaimer{border-top:1px solid #3341554d;color:#cbd5e1;font-size:11px;font-style:italic;padding:10px 20px;text-align:center}.canvas-toolbar{align-items:flex-start;background:#0f172a;border:1px solid #334155;border-radius:12px;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px;padding:16px 20px}.toolbar-section{display:flex;flex-direction:column;gap:6px}.toolbar-label{color:#cbd5e1;font-size:10px;font-weight:700;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.toolbar-buttons{display:flex;gap:6px}.tool-btn{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:50%;color:#e2e8f0;cursor:pointer;display:flex;flex-shrink:0;height:40px;justify-content:center;position:relative;transition:all .2s ease;width:40px}.tool-btn:hover:not(:disabled){background:#3b82f614;border-color:#6366f1;color:#60a5fa}.tool-btn.active{background:#6366f1;border-color:#6366f1;box-shadow:0 0 8px #3b82f64d;color:#fff}.tool-btn:disabled{cursor:not-allowed;opacity:.3}.toolbar-divider{background:#334155;height:52px;margin:0 4px;width:1px}.canvas-container{align-items:center;background:#f5f5f5;border:1px solid #334155;border-radius:12px;display:flex;justify-content:center;overflow:hidden}.canvas-info{background:#0f172a;border:1px solid #334155;border-radius:10px;display:flex;flex-direction:column;gap:10px;margin-top:20px;padding:14px 18px}.info-row{color:#e2e8f0;font-size:13px;gap:16px}.info-row span{align-items:center;display:flex;gap:6px}.measurement-hint,.panning-hint{background:#1e293b;border-left:3px solid #f59e0b;border-radius:6px;color:#e2e8f0;font-size:13px;padding:8px 12px}.panning-hint{border-left-color:#6366f1}.btn-link{background:none;border:none;color:#60a5fa;cursor:pointer;font-size:13px;font-weight:600;padding:0;text-decoration:underline}.btn-link:hover{color:#93c5fd}.model-content{grid-gap:32px;display:grid;gap:32px;grid-template-columns:1.5fr 1fr}.model-viewer{background:#0f172a;border:1px solid #334155;border-radius:12px;height:500px;overflow:hidden;position:relative}.model-controls-hint{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172ae6;border-radius:8px;bottom:16px;left:50%;padding:10px 20px;transform:translateX(-50%)}.model-controls-hint,.model-info-badge{align-items:center;border:1px solid #334155;color:#e2e8f0;display:flex;font-size:12px;gap:8px;position:absolute;z-index:10}.model-info-badge{background:#1e293bf2;border-radius:8px;font-weight:600;left:16px;padding:10px 16px;top:16px}.model-controls h3{color:#e2e8f0;font-size:18px;font-weight:700;margin-bottom:20px}.control-group{display:flex;flex-direction:column;gap:8px;position:relative}.control-group label{color:#e2e8f0;display:block;font-size:13px;font-weight:600;margin-bottom:6px}.roof-type-description{background:#3b82f60f;border-left:3px solid #6366f1;border-radius:4px;color:#e2e8f0;font-size:12px;line-height:1.5;margin-top:8px;padding:8px 12px}.control-group input[type=number],.control-group select{background:#0f172a;border:1px solid #334155;border-radius:8px;color:#e2e8f0;font-size:14px;padding:10px 12px;transition:border-color .2s;width:100%}.control-group input[type=number]:focus,.control-group select:focus{border-color:#6366f1;outline:none}.control-group input[type=range]{accent-color:#6366f1;margin:8px 0;width:100%}.range-labels{color:#cbd5e1;display:flex;font-size:12px;justify-content:space-between}.material-picker-btn{align-items:center;background:#0f172a;border:1px solid #334155;border-radius:8px;color:#e2e8f0;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:12px;padding:12px 14px;transition:all .2s ease;width:100%}.material-picker-btn:hover{border-color:#6366f1}.material-picker-btn .arrow{color:#cbd5e1;font-size:12px;margin-left:auto}.material-picker-dropdown{background:#1e293b;border:1px solid #6366f1;border-radius:12px;box-shadow:0 8px 32px #0006;left:0;max-height:300px;overflow-y:auto;position:absolute;right:0;top:calc(100% + 8px);z-index:10}.material-option{align-items:center;background:#0000;border:none;border-bottom:1px solid #334155;cursor:pointer;display:flex;gap:12px;padding:12px 16px;text-align:left;transition:background .15s ease;width:100%}.material-info-text{display:flex;flex:1 1;flex-direction:column;gap:3px}.material-info-text .material-name{color:#e2e8f0;font-size:14px;font-weight:600}.material-info-text .material-desc{color:#cbd5e1;font-size:12px;line-height:1.4}.material-option:last-child{border-bottom:none}.material-option:hover{background:#3b82f60f}.material-option.selected{background:#3b82f61a}.material-swatch{border:1px solid #475569;border-radius:6px;flex-shrink:0;height:32px;width:32px}.material-option .check{color:#6366f1;font-weight:700;margin-left:auto}.area-display{background:linear-gradient(135deg,#1a1040,#1e2a5e 60%,#1e293b);border:1px solid #334155;border-radius:12px;color:#fff;margin-top:20px;padding:20px;text-align:center}.area-display h4{color:#e2e8f0;font-size:13px;font-weight:600;margin-bottom:6px}.area-value{color:#f1f5f9;font-size:30px;font-weight:800}.measurements-panel{background:#0f172a;border:1px solid #334155;border-radius:12px;margin-top:20px;padding:20px}.measurements-panel h4{color:#e2e8f0;font-size:15px;font-weight:700;margin-bottom:14px}.measurements-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.measurement-item{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:6px;display:flex;font-size:13px;justify-content:space-between;padding:10px 12px}.measurement-item .label{color:#e2e8f0;font-weight:500}.measurement-item .value{color:#60a5fa;font-weight:700}.materials-toolbar{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:28px}.filter-box,.search-box{align-items:center;background:#0f172a;border:1px solid #334155;border-radius:8px;display:flex;flex:1 1;gap:10px;min-width:200px;padding:10px 14px}.filter-box select,.search-box input{background:#0000;border:none;color:#e2e8f0;flex:1 1;font-size:14px;outline:none}.search-box input::placeholder{color:#e2e8f0}.materials-grid{grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin-bottom:24px}.material-card{background:#0f172a;border:1px solid #334155;cursor:pointer;padding:22px;transition:all .25s ease}.material-card:hover{border-color:#e2e8f0;box-shadow:0 8px 24px #00000040;transform:translateY(-3px)}.material-card.selected{background:#3b82f60f;border-color:#6366f1}.material-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:8px}.material-header h3{color:#e2e8f0;flex:1 1;font-size:16px;font-weight:700}.selection-indicator{color:#6366f1}.material-type{background:#6366f1;border-radius:10px;color:#fff;display:inline-block;font-size:11px;font-weight:600;margin-bottom:10px;padding:3px 10px;text-transform:uppercase}.material-description{color:#e2e8f0;font-size:13px;line-height:1.6;margin-bottom:14px}.material-pricing{border-top:1px solid #334155;gap:14px;padding-top:14px}.price-item{display:flex;flex:1 1;flex-direction:column;gap:3px}.price-item .label{color:#cbd5e1;font-size:11px}.price-item .value{color:#e2e8f0;font-size:14px;font-weight:700}.materials-summary{background:#3b82f60f;border:1px solid #334155;border-radius:8px;color:#60a5fa;font-size:15px;font-weight:600;padding:14px;text-align:center}.estimate-content{margin:0 auto}.estimate-card{background:linear-gradient(135deg,#1a1040,#1e2a5e 60%,#1e293b);border:1px solid #6366f133;border-radius:16px;color:#fff;margin-bottom:28px;min-height:160px;overflow:hidden;padding:36px;position:relative}.estimate-card:before{background:radial-gradient(circle,#6366f114 0,#0000 70%);content:"";height:300px;pointer-events:none;position:absolute;right:-20%;top:-40%;width:300px}.estimate-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:28px}.estimate-header h3{color:#e2e8f0;font-size:20px;font-weight:700}.total-cost{align-items:center;display:flex;gap:12px}.total-cost .amount{color:#f1f5f9;font-size:clamp(28px,5vw,40px);font-weight:800;line-height:1.2;word-break:break-all}.estimate-detail{display:flex;flex-direction:column;gap:12px}.estimate-card .detail-item{background:#0000;border-bottom:1px solid #ffffff1a;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding:14px 0}.estimate-card .detail-item:last-child{border-bottom:none}.estimate-card .detail-item .label{color:#ffffffb3;font-size:14px}.estimate-card .detail-item .value{color:#f1f5f9;font-size:15px;font-weight:700}.estimate-breakdown{background:#1e293b;border:1px solid #334155;border-radius:14px;margin-bottom:24px;padding:28px}.estimate-breakdown h3{color:#e2e8f0;font-size:18px;font-weight:700;margin-bottom:20px}.breakdown-table{display:flex;flex-direction:column;gap:8px}.table-header,.table-row{grid-gap:16px;align-items:center;display:grid;gap:16px;grid-template-columns:2fr 1fr 1fr 1fr;padding:14px 18px}.table-header{background:#0f172a;font-size:12px;font-weight:700;letter-spacing:.3px;text-transform:uppercase}.table-header,.table-row{border:1px solid #334155;border-radius:8px;color:#e2e8f0}.table-row{background:#0f172a66;font-size:14px}.material-name{color:#e2e8f0;font-size:14px;font-weight:600}.row-total{color:#60a5fa;font-size:14px;font-weight:700}.labor-details{background:#1e293b;border:1px solid #334155;border-radius:14px;gap:12px;padding:24px}.labor-details .detail-item{background:#0000;border-color:#334155}.labor-details .detail-item .label,.labor-details .detail-item .value{color:#e2e8f0}.estimate-actions{grid-gap:12px;background:#111827;border:1px solid #1e293b;border-radius:14px;display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-bottom:24px;padding:24px}.estimate-actions .btn{justify-content:center}.estimate-actions .btn-large{grid-column:span 1}.cost-controls-panel{background:#1e293b;border:1px solid #334155;border-radius:14px;margin-bottom:28px;overflow:hidden}.cost-controls-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:18px 24px;transition:background .2s ease}.cost-controls-header:hover{background:#6366f10a}.cost-controls-header h3{color:#e2e8f0;font-size:16px;font-weight:700;margin:0}.toggle-btn{background:#0f172a;border:1px solid #334155;border-radius:8px;color:#e2e8f0;font-size:13px;transition:all .2s ease}.toggle-btn:hover{background:#1e293b;border-color:#e2e8f0;color:#e2e8f0}.cost-controls-content{background:#0f172a;border-top:1px solid #334155;padding:24px}.controls-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin-bottom:20px}.control-item{gap:6px}.control-item,.control-item label{display:flex;flex-direction:column}.control-item label{color:#e2e8f0;font-size:13px;font-weight:600;gap:3px}.help-text{color:#cbd5e1;font-size:12px;font-weight:400}.control-input-group{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:8px;display:flex;gap:8px;padding:0 12px;transition:border-color .2s ease}.control-input-group:focus-within{background:#1e293b;border-color:#6366f1}.control-input-group input{background:#0000;border:none;color:#e2e8f0;flex:1 1;font-size:15px;font-weight:600;outline:none;padding:10px 0}.control-input-group .unit{color:#cbd5e1;font-size:14px;font-weight:600}.controls-actions{border-top:1px solid #334155;display:flex;gap:12px;justify-content:flex-end;padding-top:16px}.cost-adjustments-summary{background:#0f172a;border:1px solid #334155;border-radius:10px;margin-top:20px;padding:20px}.cost-adjustments-summary h4{color:#e2e8f0;font-size:15px;font-weight:700;margin-bottom:14px}.adjustment-row{align-items:center;border-bottom:1px solid #334155;color:#e2e8f0}.adjustment-row.discount span:last-child{color:#ef4444}.adjustment-row.total{border-top:2px solid #6366f1;color:#f1f5f9;font-size:16px;margin-top:10px;padding-top:14px}.share-modal{background:#1e293b;border:1px solid #334155;border-radius:16px;max-width:600px;padding:32px;width:90%}.share-modal h3{color:#f1f5f9;font-size:22px;font-weight:700;margin-bottom:12px}.modal-description{color:#cbd5e1;font-size:14px;line-height:1.6;margin-bottom:24px}.share-link-box{display:flex;gap:8px;margin-bottom:24px}.share-link-input{background:#0f172a;border:1px solid #334155;border-radius:8px;color:#e2e8f0;flex:1 1;font-family:monospace;font-size:13px;padding:12px}.btn-icon{background:#6366f1;border:none;border-radius:8px;color:#fff;padding:12px 16px;transition:background .2s ease}.btn-icon:hover{background:#4f46e5}.share-actions{display:flex;gap:12px}.btn-share{background:#10b981!important;color:#fff!important}.btn-share:hover{background:#059669!important}.empty-state,.error-state,.loading-state{color:#cbd5e1;padding:60px 20px;text-align:center}.spinner{animation:spin 1s linear infinite;border:3px solid #334155;border-radius:50%;border-top-color:#6366f1;height:44px;margin:0 auto 20px;width:44px}.materials-layout{grid-gap:24px;display:grid;gap:24px;grid-template-columns:2fr 1fr;margin-bottom:24px}.materials-selection{background:#1e293b;border:1px solid #334155;border-radius:14px;padding:24px}.view-toggle{border:1px solid #334155}.view-toggle .toggle-btn{background:#0000;border:none;border-radius:0;color:#cbd5e1;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s}.view-toggle .toggle-btn:hover{background:#3b82f60f}.view-toggle .toggle-btn.active{background:#6366f1;color:#fff}.category-tabs{border-bottom:1px solid #334155;display:flex;flex-wrap:wrap;gap:8px;margin:16px 0;padding-bottom:16px}.category-tab{background:#0000;border:1px solid #334155;border-radius:8px;color:#cbd5e1;cursor:pointer;font-size:13px;font-weight:600;padding:6px 14px;transition:all .2s}.category-tab:hover{background:#3b82f60f;border-color:#e2e8f0;color:#e2e8f0}.category-tab.active{background:#6366f1;border-color:#6366f1;color:#fff}.materials-list{display:flex;flex-direction:column;gap:10px;max-height:500px;overflow-y:auto}.material-item{align-items:center;background:#0f172a;border:1px solid #334155;border-radius:10px;display:flex;justify-content:space-between;padding:14px;transition:all .2s}.material-item:hover{border-color:#6366f1;box-shadow:0 2px 8px #3b82f614}.material-info h4{color:#e2e8f0;font-size:14px;font-weight:600;margin:0 0 3px}.material-category{color:#cbd5e1;font-size:12px;margin:0 0 8px}.material-price{align-items:center;display:flex;gap:8px}.price-label{color:#cbd5e1;font-size:13px}.price-value{color:#10b981;font-size:14px;font-weight:700}.btn-add-material{align-items:center;background:#6366f1;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:34px;justify-content:center;min-height:34px;min-width:34px;transition:all .2s;width:34px}.btn-add-material:hover{background:#4f46e5;transform:scale(1.1)}.materials-cart{background:#1e293b;border:1px solid #334155;border-radius:14px;max-height:calc(100vh - 48px);overflow-y:auto;padding:24px;position:-webkit-sticky;position:sticky;top:24px}.materials-cart h3{border-bottom:1px solid #334155;color:#e2e8f0;font-size:17px;font-weight:700;margin:0 0 16px;padding-bottom:16px}.cart-empty{color:#cbd5e1;padding:28px;text-align:center}.cart-empty p{font-weight:600;margin:0 0 6px}.cart-items{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}.cart-item{background:#0f172a;border:1px solid #334155;border-radius:10px;padding:14px}.cart-item-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:8px}.cart-item-header h4{color:#e2e8f0;flex:1 1;font-size:13px;font-weight:600;margin:0}.btn-remove{background:#ef44441f;border:none;border-radius:50%;height:24px;transition:all .15s;width:24px}.btn-remove:hover{background:#ef4444;color:#fff}.cart-item-category{color:#cbd5e1;font-size:11px;margin:0 0 10px}.quantity-controls{align-items:center;display:flex;gap:8px;margin-bottom:10px}.quantity-controls button{align-items:center!important;aspect-ratio:1;background:#1e293b!important;border:1px solid #334155!important;border-radius:50%!important;box-sizing:border-box!important;color:#e2e8f0!important;cursor:pointer;display:inline-flex!important;flex-shrink:0;height:30px!important;justify-content:center!important;line-height:1;max-height:30px!important;max-width:30px!important;min-height:30px!important;min-width:30px!important;padding:0!important;transition:background .15s,border-color .15s,color .15s;width:30px!important}.quantity-controls button svg{flex-shrink:0;height:16px;width:16px}.quantity-controls button:hover{background:#6366f1;border-color:#6366f1;color:#fff}.quantity-controls input{background:#0f172a;border:1px solid #334155;border-radius:6px;color:#e2e8f0;font-size:13px;font-weight:600;padding:5px;text-align:center;width:56px}.quantity-controls .unit{color:#cbd5e1;font-size:13px}.cart-item-total{align-items:center;border-top:1px solid #334155;display:flex;justify-content:space-between;padding-top:10px}.cart-item-total .label{color:#cbd5e1;font-size:13px}.cart-item-total .value{color:#10b981;font-size:14px;font-weight:700}.cart-summary{background:#10b9810f;border:1px solid #10b98133;border-radius:10px;margin-top:12px;padding:14px}.summary-row{align-items:center;color:#e2e8f0;font-size:15px}.summary-row strong{color:#10b981;font-size:20px}.summary-note{color:#cbd5e1;font-size:11px;font-style:italic;margin:6px 0 0}.roof-area-info{color:#10b981;font-size:14px;margin-top:8px}.roof-area-input{align-items:center;background:#10b9810f;border:1px solid #10b98133;border-radius:8px;display:flex;margin-top:12px;padding:14px}.roof-area-input label{color:#10b981;font-weight:600}.roof-area-input input{color:#0f172a;font-size:1.1rem;font-weight:700}.roof-area-input span{color:#e2e8f0}.accuracy-panel{background:#1e293b;border:1px solid #334155;border-radius:14px;margin:20px 0}.accuracy-header{align-items:center;border-bottom:1px solid #334155;cursor:pointer;display:flex;justify-content:space-between;padding:18px 24px;transition:background .2s}.accuracy-header:hover{background:#3b82f60a}.accuracy-header h3{color:#60a5fa;font-size:16px;font-weight:700;margin:0}.accuracy-content{padding:24px}.validation-section{border-radius:10px;margin-bottom:20px;padding:16px}.validation-section.warnings{background:#ef44440f;border-left:3px solid #ef4444}.validation-section.recommendations{background:#3b82f60f;border-left:3px solid #6366f1}.validation-section h4{align-items:center;color:#e2e8f0;display:flex;font-size:15px;font-weight:600;gap:8px;margin:0 0 12px}.validation-section ul{list-style:none;margin:0;padding:0}.validation-section li{font-size:13px;line-height:1.6;padding:8px 0}.warning-item{color:#fca5a5}.rec-item{color:#93c5fd}.additional-materials-section,.labor-complexity-section,.measurements-section,.waste-factor-info{background:#0f172a;border:1px solid #334155;border-radius:10px;margin-bottom:20px;padding:16px}.additional-materials-section h4,.labor-complexity-section h4,.measurements-section h4,.waste-factor-info h4{color:#e2e8f0;font-size:15px;font-weight:600;margin:0 0 14px}.additional-materials-grid,.measurements-grid,.waste-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.additional-item,.measurement-item,.waste-item{background:#1e293b;border:1px solid #334155;border-radius:6px;display:flex;justify-content:space-between;padding:10px 12px}.item-name,.measurement-label,.waste-type{color:#e2e8f0;font-size:13px;font-weight:600}.item-qty,.measurement-value,.waste-range{color:#60a5fa;font-size:13px;font-weight:700}.complexity-selector{margin-bottom:16px}.complexity-selector label{color:#e2e8f0;display:block;font-size:13px;font-weight:600;margin-bottom:8px}.complexity-select{background:#0f172a;border:1px solid #334155;border-radius:8px;color:#e2e8f0;cursor:pointer;font-size:14px;padding:10px 14px;transition:border-color .2s;width:100%}.complexity-select:focus{border-color:#6366f1;outline:none}.labor-breakdown{display:flex;flex-direction:column;gap:8px}.labor-item{background:#1e293b;border:1px solid #334155;border-radius:6px;color:#e2e8f0;display:flex;font-size:13px;justify-content:space-between;padding:10px 14px}.labor-item.total{background:#3b82f614;border-color:#6366f1;color:#f1f5f9;font-weight:700}.percentage-input input{font-size:14px;padding:10px}.percentage-input input,.tool-btn:hover:after{background:#0f172a;border:1px solid #334155;color:#e2e8f0}.tool-btn:hover:after{border-radius:6px;bottom:-32px;content:attr(title);font-size:11px;left:50%;padding:6px 10px;pointer-events:none;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:1000}.tool-btn.active{box-shadow:0 0 0 2px #3b82f666}.canvas-container canvas{cursor:crosshair;touch-action:none}.canvas-container canvas.panning{cursor:grab}.canvas-container canvas.panning:active{cursor:grabbing}@keyframes pulse{0%,to{opacity:1;transform:translate(-50%,-50%) scale(1)}50%{opacity:.7;transform:translate(-50%,-50%) scale(1.3)}}.snap-indicator{animation:pulse .3s ease-out}.satellite-trace-layout{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:1fr 300px}.satellite-canvas-area{display:flex;flex-direction:column;gap:12px;min-width:0}.satellite-toolbar{align-items:center;background:#0f172a;border:1px solid #334155;border-radius:10px;display:flex;flex-wrap:wrap;gap:8px;padding:10px 14px}.sat-tool-group{align-items:center;display:flex;gap:5px}.sat-tool-divider{background:#334155;height:28px;margin:0 2px;width:1px}.sat-tool-btn{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:7px;color:#e2e8f0;cursor:pointer;display:inline-flex;font-size:12px;font-weight:600;gap:5px;height:34px;justify-content:center;padding:0 10px;transition:all .15s ease;white-space:nowrap}.sat-tool-btn:hover:not(:disabled){background:#3b82f614;border-color:#6366f1;color:#60a5fa}.sat-tool-btn.active{background:#6366f1;border-color:#6366f1;box-shadow:0 0 6px #3b82f64d;color:#fff}.sat-tool-btn:disabled{cursor:not-allowed;opacity:.35}.sat-tool-btn.danger{color:#fca5a5}.sat-tool-btn.danger:hover:not(:disabled){background:#ef44441f;border-color:#ef4444;color:#ef4444}.vertex-edit-hint{background:#8b5cf614;border:1px solid #8b5cf640;border-radius:8px;color:#c4b5fd}.add-face-hint,.vertex-edit-hint{align-items:center;display:flex;font-size:13px;font-weight:500;gap:8px;padding:10px 14px}.add-face-hint{background:#10b98114;border:1px solid #10b98140;border-radius:8px;color:#86efac}.shortcuts-panel{background:#1e293b;border:1px solid #334155;border-radius:10px;margin-bottom:8px;padding:14px 18px}.shortcuts-title{color:#e2e8f0;font-size:13px;font-weight:700;letter-spacing:.5px;margin-bottom:10px;text-transform:uppercase}.shortcuts-grid{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.shortcut-item{align-items:center;color:#cbd5e1;display:flex;font-size:13px;gap:8px}.shortcut-item kbd{background:#0f172a;border:1px solid #475569;border-radius:4px;color:#e2e8f0;display:inline-block;font-family:monospace;font-size:12px;min-width:28px;padding:2px 8px;text-align:center}.face-panel{background:#0f172a;border:1px solid #334155;border-radius:12px;display:flex;flex-direction:column;max-height:760px;overflow:hidden}.face-panel-header{background:#1e293b80;border-bottom:1px solid #334155;padding:14px 16px}.face-panel-header h3{color:#e2e8f0;font-size:15px;font-weight:700;margin:0 0 2px}.face-panel-header p{color:#cbd5e1;font-size:12px;margin:0}.face-summary{grid-gap:1px;background:#334155;border-bottom:1px solid #334155;display:grid;gap:1px;grid-template-columns:1fr 1fr}.face-summary-item{background:#0f172a;padding:12px 10px;text-align:center}.face-summary-item .summary-label{color:#cbd5e1;display:block;font-size:10px;letter-spacing:.5px;margin-bottom:3px;text-transform:uppercase}.face-summary-item .summary-value{color:#f1f5f9;font-size:20px;font-weight:800}.face-list{padding:6px}.face-list-item{align-items:center;border:1px solid #0000;border-radius:8px;display:flex;gap:10px;padding:9px 10px;transition:all .15s}.face-list-item:hover{background:#3b82f60f}.face-list-item.selected{background:#3b82f61a;border-color:#3b82f64d}.face-color-dot{border-radius:3px;height:12px;width:12px}.face-list-info{flex:1 1;min-width:0}.face-list-name{color:#e2e8f0;font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.face-list-area{color:#cbd5e1;font-size:11px}.face-panel-empty{color:#cbd5e1;font-size:13px;padding:24px 12px;text-align:center}.face-detail{background:#1e293b4d;border-top:1px solid #334155;padding:14px}.face-detail-title{color:#cbd5e1;font-size:11px;font-weight:700;letter-spacing:.5px;margin:0 0 10px;text-transform:uppercase}.face-detail-fields{gap:8px}.face-detail-fields,.face-field{display:flex;flex-direction:column}.face-field{gap:3px}.face-field label{color:#cbd5e1;font-size:11px;font-weight:600}.face-field input{background:#1e293b;border:1px solid #334155;border-radius:6px;color:#e2e8f0;font-size:13px;outline:none;padding:7px 10px;transition:border-color .15s}.face-field input:focus{border-color:#6366f1}.face-area-display{background:#1e293b;border:1px solid #334155;border-radius:6px;color:#60a5fa;font-size:13px;font-weight:600;padding:7px 10px}.face-detail-actions{display:flex;gap:6px;margin-top:10px}.face-action-btn{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:6px;color:#e2e8f0;cursor:pointer;display:flex;flex:1 1;font-size:12px;font-weight:600;gap:5px;justify-content:center;padding:7px;transition:all .15s}.face-action-btn:hover{background:#3b82f614;border-color:#6366f1;color:#60a5fa}.face-action-btn.active{background:#6366f1;border-color:#6366f1;color:#fff}.face-action-btn.danger:hover{background:#ef444414;border-color:#ef4444;color:#ef4444}@media (max-width:1024px){.materials-layout{grid-template-columns:1fr}.materials-cart{max-height:none;position:static}.satellite-trace-layout{grid-template-columns:1fr}.face-panel{max-height:400px}}@media (max-width:968px){.genie-step{padding:16px 8px}.step-header h2{font-size:22px}.step-content{padding:16px 10px}.dual-source-layout{gap:16px;grid-template-columns:1fr}.source-section{padding:16px}.model-content{gap:24px;grid-template-columns:1fr}.model-viewer{height:380px;order:1}.model-controls{order:2}.measurements-grid{grid-template-columns:1fr}.materials-toolbar{flex-direction:column}.materials-grid{grid-template-columns:1fr}.estimate-card{padding:16px}.estimate-header{align-items:flex-start;flex-direction:column;gap:14px}.total-cost{justify-content:space-between;width:100%}.total-cost .amount{font-size:clamp(24px,8vw,36px)}.estimate-breakdown{padding:16px}.table-header,.table-row{gap:6px;grid-template-columns:1fr;padding:12px}.table-header span{display:none}.table-row span:before{color:#cbd5e1;content:attr(data-label);display:inline-block;font-weight:600;margin-right:8px}.canvas-toolbar{gap:10px;padding:12px}.toolbar-section{width:100%}.toolbar-buttons{flex-wrap:wrap;gap:6px}.tool-btn{height:42px;width:42px}.toolbar-divider{display:none}.canvas-container{overflow-x:auto}.canvas-container canvas{min-width:600px!important}.upload-zone{padding:32px 16px}.upload-zone h3{font-size:16px}.step-actions{flex-direction:column;width:100%}.step-actions .btn{justify-content:center;width:100%}.estimate-actions{grid-template-columns:1fr;padding:16px}.estimate-actions .btn{width:100%}.satellite-search-section{padding:12px}.sat-results-grid{gap:8px;grid-template-columns:repeat(2,1fr)}.satellite-results-preview{padding:14px}.sat-preview-header{align-items:flex-start;flex-direction:column;gap:10px}.sat-analyze-btn{justify-content:center;width:100%}}@media (max-width:768px){.additional-materials-grid,.measurements-grid,.waste-grid{grid-template-columns:1fr}.accuracy-header{padding:14px}.accuracy-content{padding:16px}}@media (max-width:480px){.genie-step{padding:12px 6px}.step-header{margin-bottom:16px}.step-header h2{font-size:18px}.step-header p{font-size:13px}.step-content{border-radius:10px;padding:12px 8px}.dual-source-layout{gap:12px}.source-section{border-radius:10px;padding:12px}.source-section-header h3{font-size:14px}.upload-zone{border-radius:10px;padding:24px 12px}.upload-zone p{font-size:13px}.estimate-card{padding:12px 8px}.estimate-breakdown{padding:10px 8px}.canvas-container canvas{min-width:100%!important}.satellite-search-section{padding:8px}.sat-results-grid{gap:6px;grid-template-columns:1fr 1fr}.sat-stat{padding:8px}.satellite-analyzing{padding:30px 12px}.sat-faces-table{font-size:12px}.sat-face-row{padding:6px 8px}.review-toolbar{padding:10px}.review-stats-grid{gap:6px;grid-template-columns:1fr 1fr}.review-stat-card{padding:10px}}.review-toolbar{background:#1e293b;border:1px solid #334155;border-radius:10px;justify-content:space-between;margin-bottom:20px;padding:12px 20px}.review-toolbar,.review-toolbar-left{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.review-addr-badge,.review-pitch-badge,.review-type-badge{align-items:center;background:#0f172a;border:1px solid #334155;border-radius:6px;color:#e2e8f0;display:inline-flex;font-size:13px;gap:6px;padding:5px 12px}.review-addr-badge{color:#60a5fa}.review-toolbar-right{display:flex;gap:8px}.btn-sm{font-size:12px!important;padding:6px 14px!important}.review-content{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.review-section{background:#1e293b;border:1px solid #334155;border-radius:10px;overflow:hidden}.review-section-header{align-items:center;background:#0f172a66;cursor:pointer;display:flex;justify-content:space-between;padding:14px 20px;transition:background .15s;-webkit-user-select:none;user-select:none}.review-section-header:hover{background:#0f172ab3}.review-section-title-row{align-items:center;color:#e2e8f0;display:flex;gap:8px}.review-section-title-row h3{color:#f1f5f9;font-size:15px;font-weight:700;margin:0}.review-edit-toggle{align-items:center;background:#0f172a;border:1px solid #475569;border-radius:6px;color:#e2e8f0;cursor:pointer;display:inline-flex;font-size:12px;gap:5px;padding:4px 12px;transition:all .15s}.review-edit-toggle:hover{border-color:#60a5fa;color:#e2e8f0}.review-edit-toggle.active{background:#1e40af;border-color:#6366f1;color:#fff}.review-stats-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));padding:16px 20px}.review-stat{background:#0f172a;border:1px solid #334155;border-radius:8px;padding:12px;text-align:center}.review-stat-label{color:#cbd5e1;display:block;font-size:11px;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.review-stat-value{color:#f1f5f9;display:block;font-size:18px;font-weight:700}.review-sat-image-wrap{display:flex;justify-content:center;padding:16px 20px}.review-sat-image{border:1px solid #334155;border-radius:8px;max-height:320px;max-width:100%;object-fit:contain}.review-diagrams-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;padding:16px 20px}.review-diagram-card{background:#fff;border:1px solid #334155;border-radius:10px;overflow:hidden;transition:box-shadow .2s}.review-diagram-card:hover{box-shadow:0 4px 20px #0000004d}.review-diagram-img{display:block;height:auto;width:100%}@media (max-width:768px){.review-diagrams-grid{grid-template-columns:1fr}}.review-table-wrap{overflow-x:auto;padding:0 12px 12px}.review-table{border-collapse:collapse;font-size:14px;width:100%}.review-table th{background:#0f172a;border-bottom:1px solid #334155;color:#e2e8f0;font-size:12px;font-weight:600;letter-spacing:.5px;padding:10px 14px;text-align:left;text-transform:uppercase}.review-table td{border-bottom:1px solid #33415580;color:#e2e8f0;padding:10px 14px}.review-table tbody tr:hover{background:#3b82f60d}.review-table-total td{background:#3b82f614;border-top:2px solid #6366f1}.review-face-dot{border-radius:50%;display:inline-block;height:12px;vertical-align:middle;width:12px}.review-inline-input{background:#0f172a;border:1px solid #6366f1;border-radius:6px;color:#f1f5f9;font-size:13px;outline:none;padding:5px 10px;transition:border-color .15s;width:100%}.review-inline-input:focus{border-color:#60a5fa;box-shadow:0 0 0 2px #3b82f633}.review-num-input{text-align:right;width:100px}.review-disclaimer{background:#f59e0b14;border:1px solid #f59e0b40;border-radius:8px;color:#fbbf24;font-size:12px;margin-top:8px;padding:12px 16px;text-align:center}.review-floor-plan-preview{padding:20px;text-align:center}@media (max-width:640px){.review-toolbar{align-items:flex-start;flex-direction:column}.review-stats-grid{grid-template-columns:repeat(2,1fr)}.review-num-input{width:80px}}.btn-reanalyze{background:#1e40af!important;border:1px solid #6366f1!important;color:#93c5fd!important}.btn-reanalyze:hover:not(:disabled){background:#1d4ed8!important;box-shadow:0 2px 10px #3b82f64d;color:#fff!important}.btn-reanalyze:disabled{cursor:not-allowed;opacity:.7}.spin-icon{animation:spin-anim 1s linear infinite}.review-reanalyze-overlay{background:#0f172aeb;border:1px solid #334155;border-radius:12px;margin-bottom:20px;padding:40px 24px;text-align:center}.review-reanalyze-spinner{animation:spin-anim .8s linear infinite;border:3px solid #334155;border-radius:50%;border-top-color:#6366f1;height:40px;margin:0 auto 16px;width:40px}.review-reanalyze-overlay p{color:#e2e8f0;font-size:16px;font-weight:600;margin-bottom:6px}.review-reanalyze-overlay span{color:#cbd5e1;font-size:13px}.review-reanalyze-error{align-items:center;background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;color:#fca5a5;display:flex;font-size:13px;justify-content:space-between;margin-bottom:16px;padding:12px 16px}.crew-labor-section{background:#1e293b;border:1px solid #334155;border-radius:10px;margin-top:8px;overflow:hidden}.crew-labor-header{align-items:center;background:#0f172a66;border-bottom:1px solid #334155;display:flex;justify-content:space-between;padding:14px 20px}.crew-labor-header h4{color:#f1f5f9;font-size:15px;font-weight:700;margin:0}.crew-labor-body{gap:18px;padding:16px 20px}.crew-labor-body,.crew-presets{display:flex;flex-direction:column}.crew-presets{gap:8px}.crew-label{color:#e2e8f0;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.crew-preset-btns{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(4,1fr)}.crew-preset-btn{background:#0f172a;border:1px solid #334155;border-radius:8px;cursor:pointer;padding:10px 12px;text-align:center;transition:all .15s}.crew-preset-btn strong{color:#e2e8f0;display:block;font-size:13px;margin-bottom:2px}.crew-preset-btn span{color:#cbd5e1;display:block;font-size:11px}.crew-preset-btn:hover{background:#3b82f60f;border-color:#6366f1}.crew-preset-btn.active{background:#3b82f61f;border-color:#6366f1;box-shadow:0 0 0 1px #3b82f64d}.crew-preset-btn.active strong{color:#60a5fa}.crew-globals{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr)}.crew-global-item{display:flex;flex-direction:column;gap:4px}.crew-global-item label{color:#e2e8f0;font-size:12px;font-weight:600}.crew-global-item input{background:#0f172a;border:1px solid #475569;border-radius:6px;color:#f1f5f9;font-size:14px;font-weight:600;outline:none;padding:8px 10px;width:100%}.crew-global-item input:focus{border-color:#6366f1}.crew-unit{color:#cbd5e1;font-size:11px}.crew-rate-input{align-items:center;display:flex;gap:4px}.crew-dollar{color:#cbd5e1;font-size:14px}.crew-rate-input input{background:#0f172a;border:1px solid #475569;border-radius:6px;color:#f1f5f9;font-size:14px;font-weight:600;outline:none;padding:8px 10px;width:80px}.crew-rate-input input:focus{border-color:#6366f1}.crew-phases{overflow-x:auto}.crew-phase-table{border-collapse:collapse;font-size:13px;width:100%}.crew-phase-table th{background:#0f172a;border-bottom:1px solid #334155;color:#e2e8f0;font-size:11px;font-weight:600;letter-spacing:.5px;padding:8px 12px;text-align:left;text-transform:uppercase}.crew-phase-table td{border-bottom:1px solid #33415566;color:#e2e8f0;padding:8px 12px;vertical-align:middle}.crew-phase-table input[type=checkbox]{accent-color:#6366f1;cursor:pointer;height:16px;width:16px}.phase-name{font-weight:500;min-width:180px}.phase-disabled td{opacity:.4}.crew-days-input{background:#0f172a;border:1px solid #475569;border-radius:5px;color:#f1f5f9;font-size:13px;outline:none;padding:5px 8px;text-align:center;width:60px}.crew-days-input:focus{border-color:#6366f1}.crew-days-input:disabled{opacity:.3}.phase-num{font-family:monospace;font-size:13px;text-align:right}.crew-total-row td{background:#3b82f60f;border-top:2px solid #6366f1;color:#f1f5f9;padding:10px 12px}.crew-recalc-btn{align-items:center;display:flex;gap:8px;justify-content:center;margin-top:4px;width:100%}@media (max-width:768px){.crew-preset-btns{grid-template-columns:repeat(2,1fr)}.crew-globals{grid-template-columns:1fr}}.viz-section{margin:16px 0}.viz-image-wrap,.viz-section{border-radius:14px;overflow:hidden}.viz-image-wrap{background:#030712;border:1px solid #06b6d44d;box-shadow:0 8px 40px #06b6d41a,0 0 60px #06b6d40d;position:relative}.viz-image{border-radius:14px;display:block;filter:brightness(.85) contrast(1.15) saturate(1.1);height:auto;width:100%}.viz-overlay{background:linear-gradient(180deg,#00000026,#0000 30%,#0000 70%,#00000059);border:2px solid #06b6d433;border-radius:14px;box-shadow:inset 0 0 40px #06b6d414}.viz-callouts,.viz-overlay{inset:0;pointer-events:none;position:absolute}.viz-callout{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000bf;border:1px solid #06b6d480;border-radius:8px;box-shadow:0 4px 20px #06b6d426;display:flex;flex-direction:column;gap:2px;padding:6px 12px;position:absolute}.viz-callout-label{color:#67e8f9;font-size:10px;font-weight:600;letter-spacing:1px;text-transform:uppercase}.viz-callout-value{color:#ecfeff;font-size:16px;font-weight:700}.viz-callout-top{left:50%;top:12px;transform:translateX(-50%)}.viz-callout-bottom{bottom:12px;left:50%;transform:translateX(-50%)}.viz-callout-right{right:12px;top:50%;transform:translateY(-50%)}.viz-callout-left{left:12px;top:50%;transform:translateY(-50%)}.viz-hud{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#000c;border:1px solid #06b6d459;border-radius:10px;bottom:12px;display:flex;flex-direction:column;gap:6px;min-width:120px;padding:10px 14px;position:absolute;right:12px}.viz-hud-row{align-items:center;display:flex;gap:16px;justify-content:space-between}.viz-hud-row span{color:#67e8f9;font-size:11px;letter-spacing:.5px;text-transform:uppercase}.viz-hud-row strong{color:#ecfeff;font-size:13px;font-weight:700}.viz-badge{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000b3;border:1px solid #06b6d466;border-radius:20px;color:#06b6d4;display:flex;font-size:11px;font-weight:600;gap:4px;padding:4px 10px;position:absolute;right:12px;top:12px}.viz-brand{color:#ecfeff;font-size:18px;font-weight:800;left:14px;letter-spacing:3px;position:absolute;text-shadow:0 0 12px #06b6d466;top:14px}.viz-error{background:#ef444414;border:1px solid #ef444433;border-radius:10px;font-size:13px;gap:12px;justify-content:space-between;padding:12px 16px}.viz-error,.viz-retry-btn{align-items:center;color:#fca5a5;display:flex}.viz-retry-btn{background:#ef444426;border:1px solid #ef44444d;border-radius:6px;cursor:pointer;font-size:12px;gap:4px;padding:4px 10px;white-space:nowrap}.su-page{display:flex;flex-direction:column;gap:16px}.su-card{background:#1e293b;border:1px solid #334155;border-radius:12px;overflow:hidden}.su-card-sm{min-height:0}.su-card-head{align-items:center;border-bottom:1px solid #334155;color:#e2e8f0;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;font-weight:600;gap:8px;padding:14px 18px}.su-badge-green{background:#10b9811f;color:#10b981;margin-left:auto}.su-badge-green,.su-badge-purple{border-radius:6px;font-size:11px;font-weight:600;padding:2px 8px}.su-badge-purple{background:#8b5cf61f;color:#a78bfa}.su-sat-flow{padding:18px}.su-hint{color:#e2e8f0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;margin:0 0 12px}.su-search-row{align-items:stretch;display:flex;gap:10px}.su-addr-input{flex:1 1;position:relative}.su-addr-input input{background:#0f172a;border:1px solid #475569;border-radius:10px;box-sizing:border-box;color:#e2e8f0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;padding:12px 16px 12px 40px;width:100%}.su-addr-input input::placeholder{color:#cbd5e1}.su-addr-input input:focus{border-color:#6366f1;outline:none}.su-analyze-btn{align-items:center;background:linear-gradient(135deg,#4f46e5,#6366f1);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;font-weight:600;gap:6px;padding:12px 20px;transition:all .2s;white-space:nowrap}.su-analyze-btn:hover{box-shadow:0 4px 16px #6366f14d;transform:translateY(-1px)}.su-analyze-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.su-analyze-sm{font-size:13px;justify-content:center;margin-top:10px;padding:10px;width:100%}.su-spin{animation:su-spin-a .8s linear infinite}@keyframes su-spin-a{to{transform:rotate(1turn)}}.su-selected-addr{align-items:center;color:#6ee7b7;display:flex;font-size:13px;gap:6px;margin-top:10px}.su-sat-preview{border:1px solid #334155;border-radius:10px;margin-top:12px;overflow:hidden}.su-sat-preview img{display:block;height:auto;object-fit:cover;width:100%}.su-analyzing{align-items:center;background:#6366f10f;border:1px solid #6366f133;border-radius:10px;display:flex;gap:14px;margin-top:16px;padding:16px}.su-analyzing strong{color:#e2e8f0;display:block;font-size:14px}.su-analyzing span{color:#e2e8f0;display:block;font-size:12px;margin-top:2px}.su-error{background:#ef444414;border:1px solid #ef444433;border-radius:8px;font-size:13px;gap:10px;justify-content:space-between;margin-top:12px;padding:10px 14px}.su-error,.su-error button{align-items:center;color:#fca5a5;display:flex}.su-error button{background:none;border:1px solid #ef44444d;border-radius:6px;cursor:pointer;font-size:12px;gap:4px;padding:4px 10px;white-space:nowrap}.su-results{padding:18px}.su-viz{border:1px solid #06b6d440;border-radius:12px;box-shadow:0 4px 24px #0000004d;margin-bottom:16px;overflow:hidden;position:relative}.su-viz-img{border-radius:12px;display:block;min-height:350px;object-fit:cover;width:100%}.su-viz-generating{align-items:center;background:linear-gradient(135deg,#0a0e1a,#0d1526 50%,#0a1220);display:flex;flex-direction:column;gap:10px;justify-content:center;min-height:350px;overflow:hidden;padding:60px 20px;position:relative}.su-viz-gen-pulse{animation:su-pulse 2.5s ease-in-out infinite;background:radial-gradient(ellipse at center,#06b6d414 0,#0000 70%);inset:0;position:absolute}@keyframes su-pulse{0%,to{opacity:.3;transform:scale(.95)}50%{opacity:1;transform:scale(1.05)}}.su-viz-gen-icon{color:#06b6d4;z-index:1}.su-viz-generating strong{color:#e2e8f0;font-size:15px}.su-viz-generating span,.su-viz-generating strong{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;z-index:1}.su-viz-generating span{color:#cbd5e1;font-size:12px}.su-viz-overlay{background:linear-gradient(180deg,#0003,#0000 25%,#0000 75%,#0006);border:2px solid #06b6d426;inset:0;pointer-events:none;position:absolute}.su-viz-brand{color:#ecfeff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;font-weight:800;left:14px;letter-spacing:3px;position:absolute;text-shadow:0 1px 8px #06b6d480;top:10px}.su-viz-badge{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#000000a6;border:1px solid #06b6d459;border-radius:12px;color:#06b6d4;font-size:10px;font-weight:600;gap:3px;padding:3px 8px;top:10px}.su-viz-badge,.su-viz-hud{display:flex;position:absolute;right:10px}.su-viz-hud{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000bf;border:1px solid #06b6d44d;border-radius:8px;bottom:10px;flex-direction:column;gap:4px;padding:8px 12px}.su-viz-hud-item{display:flex;gap:14px;justify-content:space-between}.su-viz-hud-item span{color:#67e8f9;font-size:10px;letter-spacing:.5px;text-transform:uppercase}.su-viz-hud-item span,.su-viz-hud-item strong{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.su-viz-hud-item strong{color:#ecfeff;font-size:12px;font-weight:700}.su-callout{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#000000b3;border:1px solid #06b6d466;border-radius:6px;box-shadow:0 2px 10px #06b6d426;display:flex;flex-direction:column;gap:1px;padding:4px 10px;position:absolute}.su-cl{color:#67e8f9;font-size:9px;font-weight:600;letter-spacing:1px;text-transform:uppercase}.su-cl,.su-cv{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.su-cv{color:#ecfeff;font-size:14px;font-weight:700}.su-callout-t{top:10px}.su-callout-b,.su-callout-t{left:50%;transform:translateX(-50%)}.su-callout-b{bottom:10px}.su-callout-r{right:10px}.su-callout-l,.su-callout-r{top:50%;transform:translateY(-50%)}.su-callout-l{left:10px}.su-result-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:14px}.su-result-status{align-items:center;color:#6ee7b7;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;font-weight:600;gap:6px}.su-source-badge{align-items:center;background:linear-gradient(135deg,#3b82f626,#06b6d426);border:1px solid #3b82f64d;border-radius:4px;color:#60a5fa;display:inline-flex;font-size:10px;font-weight:600;letter-spacing:.3px;padding:2px 8px;text-transform:uppercase}.su-result-addr{color:#e2e8f0;margin-top:3px}.su-reset-btn,.su-result-addr{align-items:center;display:flex;font-size:12px;gap:5px}.su-reset-btn{background:#6366f11a;border:1px solid #6366f140;border-radius:8px;color:#a5b4fc;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;padding:6px 12px}.su-reset-btn:hover{background:#6366f133}.su-stats{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,1fr);margin-bottom:14px}.su-stat{background:#0f172a;border:1px solid #334155;border-radius:8px;padding:10px 12px;text-align:center}.su-stat span{color:#cbd5e1;font-size:11px;letter-spacing:.5px;text-transform:uppercase}.su-stat span,.su-stat strong{display:block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.su-stat strong{color:#e2e8f0;font-size:16px;font-weight:700;margin-top:2px}.su-faces{margin-bottom:12px}.su-faces-title{color:#e2e8f0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.su-face-row{align-items:center;border-bottom:1px solid #33415580;display:flex;font-size:13px;gap:8px;padding:6px 0}.su-face-dot{border-radius:50%;flex-shrink:0;height:8px;width:8px}.su-face-name{color:#cbd5e1;flex:1 1}.su-face-name,.su-face-val{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.su-face-val{color:#e2e8f0;min-width:60px;text-align:right}.su-face-conf{border-radius:4px;font-size:11px;font-weight:600;min-width:36px;padding:1px 6px;text-align:center}.su-face-conf.high{background:#10b98126;color:#34d399}.su-face-conf.med{background:#f59e0b26;color:#fbbf24}.su-face-conf.low{background:#ef444426;color:#f87171}.su-nett{margin-bottom:12px}.su-nett-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr}.su-nett-item{align-items:center;background:#0f172a80;border:1px solid #33415580;border-radius:8px;color:#cbd5e1;display:flex;font-size:13px;gap:8px;padding:8px 12px}.su-nett-item strong{color:#e2e8f0;font-weight:600;margin-left:auto}.su-nett-line{border-radius:2px;flex-shrink:0;height:3px;width:16px}.su-expand-btn{align-items:center;background:#6366f10f;border:1px solid #6366f133;border-radius:8px;color:#a5b4fc;cursor:pointer;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;font-weight:600;gap:6px;justify-content:center;margin-bottom:10px;padding:10px;width:100%}.su-expand-btn:hover{background:#6366f11f}.su-boq{margin-bottom:12px}.su-boq-table{border-collapse:collapse;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;width:100%}.su-boq-table th{border-bottom:1px solid #334155;color:#cbd5e1;font-size:11px;font-weight:600;letter-spacing:.5px;padding:8px 10px;text-align:left;text-transform:uppercase}.su-boq-table td{border-bottom:1px solid #33415566;color:#cbd5e1;padding:7px 10px}.su-boq-table tr:hover td{background:#6366f10a}.su-disclaimer{color:#e2e8f0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:11px;font-style:italic;padding-top:8px;text-align:center}.su-ai-note{background:#0ea5e90f;border:1px solid #0ea5e926;border-radius:8px;color:#cbd5e1;font-size:.8rem;line-height:1.4;margin-top:10px;padding:10px 14px}.su-diagrams{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-top:12px}.su-diagram-card{background:#fff;border:1px solid #334155;border-radius:8px;overflow:hidden}.su-diagram-card img{display:block;height:auto;width:100%}@media (max-width:640px){.su-diagrams{grid-template-columns:1fr}}.su-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.su-drop{align-items:center;border:2px dashed #334155;border-radius:10px;color:#cbd5e1;cursor:pointer;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;gap:8px;justify-content:center;margin:14px;padding:28px 16px;transition:all .2s}.su-drop.active,.su-drop:hover{background:#6366f10a;border-color:#6366f1;color:#a5b4fc}.su-drop span{font-size:13px}.su-uploading{color:#f59e0b;font-size:12px}.su-preview{padding:14px;position:relative}.su-preview img{border-radius:8px;display:block;max-height:180px;object-fit:cover;width:100%}.su-remove{background:#000000b3;border:1px solid #ef444466;border-radius:50%;color:#fca5a5;cursor:pointer;height:28px;justify-content:center;position:absolute;right:20px;top:20px;width:28px}.su-done,.su-remove{align-items:center;display:flex}.su-done{color:#6ee7b7;font-size:12px;gap:6px;margin-top:8px}.su-actions{gap:12px;padding-top:8px}.su-actions,.su-next-btn{align-items:center;display:flex}.su-next-btn{background:linear-gradient(135deg,#4f46e5,#6366f1);border:none;border-radius:10px;color:#fff;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;font-weight:700;gap:8px;padding:14px 28px;transition:all .2s}.su-next-btn:hover{box-shadow:0 6px 20px #6366f14d;transform:translateY(-1px)}.su-next-btn:disabled{cursor:not-allowed;opacity:.4;transform:none}.su-actions-hint{color:#cbd5e1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:12px}@media (max-width:768px){.su-row{grid-template-columns:1fr}.su-stats{grid-template-columns:repeat(2,1fr)}.su-search-row,.su-select-row{flex-direction:column}}.su-selections{margin-bottom:12px}.su-select-row{display:flex;gap:16px;margin-top:10px}.su-select-group{display:flex;flex:1 1;flex-direction:column;gap:4px}.su-select-label{color:#e2e8f0;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.su-select{appearance:none;-webkit-appearance:none;background:#0f172a;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;border:1px solid #334155;border-radius:8px;color:#e2e8f0;cursor:pointer;font-size:14px;font-weight:500;padding:10px 32px 10px 12px;transition:border-color .15s}.su-select:focus{border-color:#6366f1;box-shadow:0 0 0 2px #6366f126;outline:none}.su-select option{background:#0f172a;color:#e2e8f0}.su-select-summary{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.su-select-tag{align-items:center;background:#6366f126;border:1px solid #6366f140;border-radius:6px;color:#a5b4fc;display:inline-flex;font-size:12px;font-weight:600;padding:4px 10px}.step-trace-designer{margin:0 auto;max-width:1400px}.trace-subtitle{color:#cbd5e1;font-size:14px;margin:0 0 16px}.trace-designer-layout{display:flex;gap:20px;min-height:600px}.trace-designer-canvas{background:#0f172a;border-radius:12px;display:flex;flex:1 1;flex-direction:column;overflow:hidden}.trace-designer-toolbar{align-items:center;background:#1e293b;border-bottom:1px solid #334155;display:flex;gap:6px;padding:8px 12px}.trace-designer-toolbar button{align-items:center;background:#0f172a;border:1px solid #475569;border-radius:6px;color:#e2e8f0;cursor:pointer;display:flex;font-size:12px;font-weight:500;gap:5px;padding:6px 10px;transition:all .15s}.trace-designer-toolbar button:hover:not(:disabled){background:#334155;border-color:#cbd5e1}.trace-designer-toolbar button:disabled{cursor:not-allowed;opacity:.5}.zoom-label{color:#e2e8f0;font-size:12px;font-weight:600;min-width:40px;text-align:center}.btn-regenerate{background:#1e3a5f!important;border-color:#2563eb!important;color:#93c5fd!important}.btn-regenerate:hover:not(:disabled){background:#1e40af!important}.trace-designer-image-container{align-items:flex-start;display:flex;flex:1 1;justify-content:center;overflow:auto;padding:8px}.trace-designer-image-wrapper{position:relative;transition:transform .15s ease}.trace-designer-image{border-radius:4px;display:block;height:auto;max-width:100%}.trace-designer-image-loading-overlay{align-items:center;background:#0f172ab3;border-radius:4px;color:#93c5fd;display:flex;flex-direction:column;font-size:14px;font-weight:600;gap:8px;inset:0;justify-content:center;position:absolute}.trace-designer-error,.trace-designer-loading{align-items:center;color:#e2e8f0;display:flex;flex-direction:column;gap:12px;justify-content:center;padding:60px 20px;text-align:center}.btn-regenerate .spin,.trace-designer-image-loading-overlay .spin,.trace-designer-loading .spin{animation:spin-designer 1s linear infinite}@keyframes spin-designer{to{transform:rotate(1turn)}}.loading-sub{color:#cbd5e1;font-size:13px}.btn-retry{background:#1e3a5f;border:1px solid #2563eb;border-radius:8px;color:#93c5fd;cursor:pointer;font-size:13px;padding:8px 20px}.trace-designer-panel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;display:flex;flex-direction:column;flex-shrink:0;gap:16px;padding:20px;width:280px}.trace-designer-panel h3{color:#0f172a;font-size:16px;font-weight:700;margin:0}.panel-stats{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.panel-stat{background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:flex;flex-direction:column;gap:2px;padding:10px}.stat-label{color:#e2e8f0;font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.stat-value{color:#0f172a;font-size:18px;font-weight:700}.panel-faces-list{display:flex;flex-direction:column;gap:6px}.panel-faces-list h4{color:#e2e8f0;font-size:13px;font-weight:700;letter-spacing:.3px;margin:0 0 4px;text-transform:uppercase}.panel-face-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:8px 12px}.face-name{color:#1e293b;font-size:13px;font-weight:600}.face-details{color:#cbd5e1;font-size:12px;margin-top:2px}.panel-address{border-top:1px solid #e2e8f0;display:flex;flex-direction:column;gap:2px;padding-top:12px}.address-label{color:#e2e8f0;font-size:10px;font-weight:700;text-transform:uppercase}.address-value{color:#1e293b;font-size:13px;font-weight:500}@media (max-width:768px){.trace-designer-layout{flex-direction:column}.trace-designer-panel{width:100%}}.step-trace-manual{padding:0}.trace-page-header{margin-bottom:16px}.trace-page-title{color:#f1f5f9;font-size:1.2rem;font-weight:600;margin:0 0 6px}.trace-page-desc{color:#e2e8f0;font-size:.88rem;line-height:1.5;margin:0;max-width:720px}.trace-page-desc b{color:#e2e8f0}.trace-full-layout{align-items:flex-start;display:flex;gap:12px}.trace-canvas-col{flex:1 1;min-width:0}.trace-toolbar-wrap{background:#1e293b;border:1px solid #334155;border-bottom:none;border-radius:10px 10px 0 0;overflow:hidden}.trace-toolbar-row{align-items:center;display:flex;gap:10px;padding:8px 14px}.trace-toolbar-draw-row{align-items:center;background:#10b98114;border-top:1px solid #10b98133;display:flex;gap:10px;padding:8px 12px}.draw-status-badge{background:#10b981;border-radius:10px;color:#fff;font-size:.72rem;font-weight:600;padding:2px 8px;white-space:nowrap}.draw-hint-text{color:#e2e8f0;font-size:.8rem}.trace-toolbar-wrap .tool-btn{align-items:center;background:#0f172a;border:1px solid #475569;border-radius:6px;box-shadow:none;color:#cbd5e1;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:.82rem;gap:6px;height:auto;justify-content:flex-start;padding:7px 14px;position:static;transition:all .15s;white-space:nowrap;width:auto}.trace-toolbar-wrap .tool-btn:hover:not(:disabled){background:#1e293b;border-color:#cbd5e1;color:#f1f5f9}.trace-toolbar-wrap .tool-btn:disabled{cursor:not-allowed;opacity:.35}.trace-toolbar-wrap .tool-btn.active{background:#0ea5e9;border-color:#0ea5e9;box-shadow:none;color:#fff}.trace-toolbar-wrap .tool-btn.draw.active{background:#10b981;border-color:#10b981}.trace-toolbar-wrap .tool-btn.finish{background:#059669;border-color:#059669;color:#fff}.trace-toolbar-wrap .tool-btn.finish:disabled{opacity:.4}.trace-toolbar-wrap .tool-btn.cancel{background:#0000;border-color:#ef4444;color:#ef4444}.trace-toolbar-wrap .tool-btn.icon-only{padding:7px 9px}.toolbar-spacer{flex:1 1}.zoom-readout{color:#e2e8f0;font-size:.74rem;min-width:36px;text-align:center}.trace-canvas-wrap-full{background:#0a0f1a;border:1px solid #334155;cursor:crosshair;overflow:hidden;position:relative}.trace-canvas-wrap-full canvas{display:block}.trace-no-image{align-items:center;color:#cbd5e1;display:flex;font-size:.95rem;inset:0;justify-content:center;position:absolute}.snap-indicator{background:#10b981d9;border-radius:4px;color:#fff;font-size:.72rem;font-weight:600;left:50%;letter-spacing:.05em;padding:3px 10px;pointer-events:none;position:absolute;top:10px;transform:translateX(-50%)}.trace-hint-bar{background:#1e293b;border:1px solid #334155;border-radius:0 0 10px 10px;border-top:none;color:#e2e8f0;font-size:.72rem;padding:6px 12px}.trace-panel-slim{background:#1e293b;border:1px solid #334155;border-radius:10px;display:flex;flex-direction:column;max-height:calc(100vh - 320px);min-width:220px;overflow:hidden;position:-webkit-sticky;position:sticky;top:100px;width:260px}.panel-header{align-items:center;border-bottom:1px solid #334155;display:flex;justify-content:space-between;padding:12px 14px 8px}.panel-header h3{color:#f1f5f9;font-size:.95rem;font-weight:600;margin:0}.add-face-btn{align-items:center;background:#10b9811a;border:1px solid #10b981;border-radius:5px;color:#10b981;cursor:pointer;display:inline-flex;font-size:.74rem;gap:3px;padding:4px 8px;transition:all .15s}.add-face-btn:hover{background:#10b98133}.panel-summary{border-bottom:1px solid #334155;display:flex;gap:0;margin:0 14px;padding:8px 0}.summary-item{flex:1 1;text-align:center}.summary-label{color:#cbd5e1;display:block;font-size:.6rem;letter-spacing:.05em;margin-bottom:1px;text-transform:uppercase}.summary-value{color:#fff;font-size:1.05rem;font-weight:700}.face-list{flex:1 1;overflow-y:auto;padding:4px 0}.face-list-empty{color:#e2e8f0;font-size:.82rem;line-height:1.5;padding:24px 14px;text-align:center}.face-list-item{border-left:3px solid #475569;border-radius:7px;cursor:pointer;margin:2px 6px;padding:8px 10px;transition:background .15s}.face-list-item:hover{background:#ffffff0a}.face-list-item.active{background:#0ea5e914;border-left-width:4px}.face-item-header{align-items:center;display:flex;gap:6px}.face-color-dot{border-radius:50%;flex-shrink:0;height:9px;width:9px}.face-name-input{background:#0000;border:none;border-radius:4px;color:#e2e8f0;flex:1 1;font-size:.82rem;font-weight:500;min-width:0;outline:none;padding:1px 3px}.face-name-input:focus{background:#0f172a;outline:1px solid #0ea5e9}.face-delete-btn{background:none;border:none;border-radius:4px;color:#cbd5e1;cursor:pointer;display:flex;padding:2px}.face-delete-btn:hover{background:#ef44441a;color:#ef4444}.face-item-meta{align-items:center;color:#e2e8f0;display:flex;font-size:.73rem;gap:5px;margin-top:3px;padding-left:15px}.meta-sep{color:#334155}.pitch-label{align-items:center;color:#e2e8f0;display:inline-flex;gap:2px}.pitch-input{background:#0f172a;border:1px solid #334155;border-radius:4px;color:#e2e8f0;font-size:.73rem;padding:1px 3px;text-align:center;width:38px}.panel-actions{border-top:1px solid #334155;padding:10px 14px}.save-btn{align-items:center;background:#0ea5e9;border:none;border-radius:7px;color:#fff;cursor:pointer;display:flex;font-size:.84rem;font-weight:500;gap:5px;justify-content:center;padding:9px;transition:background .15s;width:100%}.save-btn:hover:not(:disabled){background:#0284c7}.save-btn:disabled{cursor:not-allowed;opacity:.4}@media (max-width:1000px){.trace-full-layout{flex-direction:column}.trace-panel-slim{max-height:none;position:static;width:100%}}.step-diagrams{padding:0}.diagrams-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:20px}.diagrams-title{color:#f1f5f9;font-size:1.2rem;font-weight:600;margin:0 0 4px}.diagrams-sub{color:#e2e8f0;font-size:.88rem;margin:0}.diagrams-regen-btn{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:8px;color:#cbd5e1;cursor:pointer;display:inline-flex;font-size:.84rem;gap:6px;padding:8px 16px;transition:all .15s;white-space:nowrap}.diagrams-regen-btn:hover:not(:disabled){background:#334155;color:#f1f5f9}.diagrams-regen-btn:disabled{cursor:not-allowed;opacity:.4}.diagrams-empty,.diagrams-error,.diagrams-loading{color:#cbd5e1;padding:60px 20px;text-align:center}.diagrams-error p{color:#ef4444;margin-bottom:12px}.diagrams-error button{background:#0000;border:1px solid #ef4444;border-radius:6px;color:#ef4444;cursor:pointer;padding:8px 20px}.diagrams-loading .spin{margin-bottom:12px}.diagrams-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.diagram-card{background:#0f172a;border:1px solid #334155;border-radius:12px;overflow:hidden}.diagram-card img{display:block;height:auto;width:100%}@media (max-width:900px){.diagrams-grid{grid-template-columns:1fr}}.custom-items-section{background:#1e293b;border:1px solid #334155;border-radius:12px;margin-top:24px;padding:20px}.custom-items-header h3{color:#f1f5f9;font-size:1rem;font-weight:600;margin:0 0 4px}.custom-items-desc{color:#e2e8f0;font-size:.82rem;margin:0 0 16px}.custom-items-table{margin-bottom:16px;overflow:hidden}.ci-table-header{border-bottom:1px solid #334155;color:#cbd5e1;font-size:.7rem;letter-spacing:.04em;padding:6px 0;text-transform:uppercase}.ci-table-header,.ci-table-row{grid-gap:6px;display:grid;gap:6px;grid-template-columns:90px 1fr 60px 50px 75px 75px 30px}.ci-table-row{align-items:center;border-bottom:1px solid #33415566;padding:8px 0}.ci-col-cat{overflow:hidden;text-overflow:ellipsis}.ci-col-name{min-width:0}.ci-col-total{color:#e2e8f0;font-size:.85rem;font-weight:600;text-align:right}.ci-cat-badge{color:#0ea5e9;font-size:.72rem;font-weight:500}.ci-input{background:#0f172a;border:1px solid #334155;border-radius:5px;box-sizing:border-box;color:#e2e8f0;font-size:.82rem;min-width:0;padding:5px 7px;width:100%}.ci-input:focus{border-color:#0ea5e9;outline:1px solid #0ea5e9}.ci-num{text-align:right}.ci-del-btn{background:none;border:none;border-radius:4px;color:#cbd5e1;cursor:pointer;display:flex;padding:3px}.ci-del-btn:hover{background:#ef44441a;color:#ef4444}.ci-table-footer{color:#e2e8f0;display:flex;font-size:.88rem;justify-content:space-between;max-width:100%;padding:10px 0 0}.ci-table-footer strong{color:#10b981;font-size:.95rem}.ci-add-row{display:flex;flex-wrap:wrap;gap:6px}.ci-add-btn{align-items:center;background:#0000;border:1px dashed #475569;border-radius:6px;color:#e2e8f0;cursor:pointer;display:inline-flex;font-size:.76rem;gap:4px;padding:5px 10px;transition:all .15s}.ci-add-btn:hover{background:#0ea5e90d;border-color:#0ea5e9;color:#0ea5e9}.genie-page{background:#0b1120;flex:1 1;min-height:100vh;width:100%}.genie-header{background:radial-gradient(900px 200px at 10% 0,#22d3ee0f,#0000 60%),#0a1120;border-bottom:1px solid #22d3ee2e;padding:0}.genie-header .container{margin:0 auto;max-width:1280px;padding:0 24px}.genie-header-top{align-items:center;display:flex;justify-content:space-between;padding:28px 0 20px}.genie-header h1{align-items:center;color:#f1f5f9;display:flex;font-size:28px;font-weight:800;gap:12px;letter-spacing:-.5px;margin:0}.genie-header h1 .header-icon{color:#22d3ee}.genie-header-subtitle{color:#94a3b8;font-size:14px;font-weight:400;margin:4px 0 0}.genie-header-meta{align-items:center;display:flex;gap:16px}.genie-header-badge{align-items:center;background:#22d3ee1a;border:1px solid #22d3ee47;border-radius:8px;color:#a7f3d0;display:inline-flex;font-size:13px;font-weight:500;gap:6px;padding:6px 14px}.steps-progress{justify-content:center;margin:0 auto;max-width:900px;padding:0 0 28px}.step-item,.steps-progress{align-items:center;display:flex;position:relative}.step-item{flex:1 1;gap:0;z-index:1}.step-item:last-child{flex:0 1}.step-item:last-child .step-connector{display:none}.step-bubble{flex-direction:column;gap:8px}.step-bubble,.step-circle{align-items:center;display:flex;flex-shrink:0}.step-circle{background:#1e293bcc;border:2px solid #475569;border-radius:50%;color:#64748b;height:48px;justify-content:center;position:relative;transition:all .3s ease;width:48px}.step-circle svg{height:20px;width:20px}.step-circle.active{background:linear-gradient(135deg,#0891b2,#06b6d4);border-color:#22d3ee;box-shadow:0 0 20px #22d3ee59;color:#fff}.step-circle.current{border-color:#22d3ee;box-shadow:0 0 0 4px #22d3ee2e,0 0 20px #22d3ee47;transform:scale(1.08)}.step-circle.clickable{cursor:pointer}.step-item:hover .step-circle.clickable{box-shadow:0 0 24px #22d3ee73;transform:scale(1.12)}.step-label{text-align:center}.step-name{color:#94a3b8;font-size:12px;font-weight:600;line-height:1.3;white-space:nowrap}.step-circle.active+.step-label .step-name,.step-circle.current+.step-label .step-name{color:#67e8f9}.step-desc{color:#64748b;font-size:10px;line-height:1.3;margin-top:2px}.step-connector{background:#334155;border-radius:1px;flex:1 1;height:2px;margin:0 6px;position:relative;top:-16px}.step-connector.completed{background:linear-gradient(90deg,#0891b2,#22d3ee)}.step-arrow{display:none}.genie-content{padding:32px 24px 60px}.genie-content .container{margin:0 auto;max-width:1280px}.genie-steps-content{margin:0 auto;max-width:1100px}.genie-page .btn{align-items:center;border:none;border-radius:10px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;letter-spacing:.1px;padding:12px 24px;transition:all .2s ease}.genie-page .btn-primary{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff}.genie-page .btn-primary:hover{background:linear-gradient(135deg,#818cf8,#6366f1);box-shadow:0 4px 16px #6366f159;transform:translateY(-1px)}.genie-page .btn-secondary{background:#0000;border:1px solid #334155;color:#94a3b8}.genie-page .btn-secondary:hover{border-color:#64748b;color:#e2e8f0}.dashboard-wrapper{margin:0 auto;max-width:1200px}.dash-topbar{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:28px}.dash-stats{display:flex;gap:8px}.dash-stat{align-items:center;background:#111827;border:1px solid #1e293b;border-radius:12px;display:flex;flex-direction:column;min-width:100px;padding:16px 24px}.dash-stat-num{color:#f1f5f9;font-size:28px;font-weight:800;line-height:1}.dash-stat-label{color:#64748b;font-size:11px;font-weight:600;letter-spacing:.5px;margin-top:4px;text-transform:uppercase}.dash-create-form{align-items:center;background:#111827;border:1px solid #1e293b;border-radius:12px;display:flex;gap:10px;margin-bottom:24px;padding:16px 20px}.dash-create-form input{background:#0b1120;border:1px solid #334155;border-radius:8px;color:#e2e8f0;flex:1 1;font-size:14px;padding:10px 14px}.dash-create-form input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f126;outline:none}.dash-create-form input::placeholder{color:#475569}.dash-empty{color:#64748b;padding:80px 20px;text-align:center}.dash-empty h3{color:#94a3b8;font-size:20px;margin:16px 0 6px}.dash-empty p{color:#64748b;font-size:14px;margin-bottom:24px}.dash-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.dash-card{background:#111827;border:1px solid #1e293b;border-radius:14px;cursor:pointer;overflow:hidden;transition:all .25s ease}.dash-card:hover{border-color:#6366f166;box-shadow:0 4px 24px #6366f11a;transform:translateY(-3px)}.dash-card-thumb{align-items:center;background:#0b1120;display:flex;height:130px;justify-content:center;overflow:hidden;position:relative}.dash-card-thumb img{height:100%;object-fit:cover;width:100%}.dash-card-placeholder{color:#1e293b}.dash-card-badge{border-radius:20px;color:#fff;font-size:10px;font-weight:700;letter-spacing:.4px;padding:4px 12px;position:absolute;right:10px;text-transform:uppercase;top:10px}.dash-card-body{padding:14px 16px 8px}.dash-card-title{color:#e2e8f0;font-size:15px;font-weight:700;margin:0 0 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-card-meta{align-items:center;color:#64748b;display:flex;font-size:12px;gap:6px}.dash-card-cost{color:#10b981;font-size:14px;font-weight:700;margin-left:auto}.dash-card-progress{align-items:center;display:flex;gap:8px;margin-top:10px}.dash-progress-track{background:#1e293b;border-radius:4px;flex:1 1;height:4px;overflow:hidden}.dash-progress-fill{border-radius:4px;height:100%;transition:width .4s ease}.dash-progress-label{color:#64748b;font-size:10px;font-weight:600;min-width:28px;text-align:right}.dash-card-actions{align-items:center;display:flex;gap:8px;padding:8px 16px 14px}.dash-btn-resume{align-items:center;background:linear-gradient(135deg,#6366f1,#4f46e5);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;flex:1 1;font-size:13px;font-weight:600;gap:5px;justify-content:center;padding:9px 14px;transition:all .2s ease}.dash-btn-resume:hover{background:linear-gradient(135deg,#818cf8,#6366f1);box-shadow:0 4px 12px #6366f14d}.dash-btn-delete{align-items:center;background:#0000;border:1px solid #1e293b;border-radius:8px;color:#64748b;cursor:pointer;display:flex;padding:9px 10px;transition:all .15s ease}.dash-btn-delete:hover{background:#ef444414;border-color:#ef4444;color:#ef4444}.modal-overlay{background:#0009;inset:0}@media (max-width:1024px){.dash-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:968px){.genie-header-top{padding:20px 0 14px}.genie-header h1{font-size:22px}.steps-progress{padding-bottom:20px}.step-circle{height:38px;width:38px}.step-circle svg{height:16px;width:16px}.step-label{display:none}.step-connector{top:0}.genie-content{padding:20px 16px}.dash-grid{grid-template-columns:1fr}.dash-stats{gap:8px}.dash-stat-num{font-size:22px}.dash-stat{min-width:80px;padding:12px 16px}.dash-create-form{flex-direction:column}.dash-create-form input{width:100%}}@media (max-width:480px){.genie-page{overflow-x:hidden}.genie-header .container{padding:0 12px}.genie-header-top{align-items:flex-start;flex-direction:column;gap:8px}.genie-header h1{font-size:20px}.genie-content{padding:12px 8px}.dash-stat-num{font-size:20px}.dash-stat-label{font-size:10px}.dash-grid{gap:12px}.dash-card{border-radius:10px}}.projects-page{background:#f5f5f5;min-height:100vh}.projects-page .page-header{background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#0f172a;padding:60px 20px}.projects-page .header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1400px}.projects-page .header-content h1{color:#0f172a;font-family:Outfit,sans-serif;font-size:clamp(32px,4vw,48px);font-weight:900;letter-spacing:-.03em;margin-bottom:10px}.projects-page .header-content p{color:#475569;font-size:16px}.projects-section{padding:60px 20px}.projects-controls{align-items:center;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:32px;margin-left:auto;margin-right:auto;max-width:1400px}.search-container{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:8px;display:flex;flex:1 1;gap:12px;min-width:300px;padding:12px 16px;position:relative;transition:all .2s}.search-container:focus-within{border-color:#2c5f8d;box-shadow:0 0 0 3px #2c5f8d1a}.search-container svg{color:#64748b;flex-shrink:0}.search-input{background:#0000;border:none;color:#1a3d5c;flex:1 1;font-size:15px;outline:none}.search-input::placeholder{color:#94a3b8}.filter-container{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:8px;display:flex;gap:12px;padding:12px 16px;transition:all .2s}.filter-container:focus-within{border-color:#2c5f8d;box-shadow:0 0 0 3px #2c5f8d1a}.filter-container svg{color:#64748b;flex-shrink:0}.filter-select{background:#0000;border:none;color:#1a3d5c;cursor:pointer;font-size:15px;font-weight:500;outline:none}.results-count{background:#f8fafc;color:#64748b;font-size:14px;padding:12px 20px;white-space:nowrap}.empty-state,.loading-state{padding:80px 20px;text-align:center}.empty-state svg{color:#ccc;margin-bottom:20px}.empty-state h2{color:#333;font-size:28px;font-weight:700;margin-bottom:10px}.empty-state p{color:#666;font-size:16px;margin-bottom:30px}.projects-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin:0 auto;max-width:1400px}.project-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000d;overflow:hidden;padding:24px;transition:all .3s ease}.project-card:hover{border-color:#2c5f8d;box-shadow:0 8px 24px #0000001f;transform:translateY(-4px)}.project-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:16px}.project-title-row{align-items:center;display:flex;flex:1 1;gap:10px}.project-title-row svg{flex-shrink:0}.project-header h3{color:#1e293b;font-size:18px;font-weight:600;line-height:1.4;margin:0}.project-actions{display:flex;gap:8px}.action-btn{align-items:center;background:#f5f5f5;border:none;border-radius:6px;color:#666;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .3s ease;width:32px}.action-btn:hover{background:#2c5f8d;color:#fff}.action-btn.delete:hover{background:#dc3545}.project-meta{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.project-type{align-items:center;border-radius:16px;display:inline-flex;font-size:12px;font-weight:600;padding:4px 12px;text-transform:capitalize}.project-date{align-items:center;color:#64748b;display:flex;font-size:13px;font-weight:500;gap:6px}.project-date svg{color:#94a3b8}.project-details{margin-top:12px}.project-address{color:#64748b;font-size:14px;line-height:1.5;margin-bottom:8px}.project-stats{display:flex;flex-wrap:wrap;gap:16px;margin-top:8px}.project-stats span{background:#f1f5f9;border-radius:6px;color:#475569;font-size:13px;font-weight:600;padding:6px 12px}.project-estimation{background:#f9f9f9;border-radius:8px;margin-bottom:16px;padding:16px}.estimation-item{display:flex;font-size:14px;justify-content:space-between;margin-bottom:8px}.estimation-item:last-child{margin-bottom:0}.estimation-item .label{color:#666}.estimation-item .value{color:#333;font-weight:600}.estimation-item .value.cost{color:#2c5f8d;font-size:16px;word-break:break-word}.btn{border-radius:6px;font-size:14px;gap:8px;justify-content:center;padding:12px 24px;transition:all .3s ease}.btn-secondary{background:#fff;border:2px solid #ddd;color:#333}.btn-secondary:hover{border-color:#2c5f8d;color:#2c5f8d}.btn-full{width:100%}.project-buttons{display:flex;gap:.75rem;margin-top:1rem}.project-buttons .btn{flex:1 1;font-size:.875rem;justify-content:center;padding:.625rem 1rem}.project-buttons .btn:disabled{cursor:not-allowed;opacity:.6}.modal-overlay{padding:1rem}.modal-content{box-shadow:0 20px 40px #0003}.modal-content h2{font-size:1.5rem;margin:0 0 .5rem}.modal-description{color:#64748b;font-size:.875rem}.form-group,.modal-description{margin-bottom:1.5rem}.form-group label{color:#475569;display:block;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.client-select{background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#1e293b;cursor:pointer;font-size:1rem;padding:.75rem;transition:all .2s;width:100%}.client-select:focus{border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b351a;outline:none}.no-clients-message{background:#fef3c7;border:2px solid #fde68a;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.no-clients-message p{color:#92400e;font-size:.875rem;margin:0 0 1rem}.modal-actions .btn{padding:.75rem 1.5rem}@media (max-width:1024px){.projects-grid{gap:20px;grid-template-columns:repeat(2,1fr)}.header-content{align-items:stretch;flex-direction:column;gap:16px}.header-content .btn-primary{align-self:flex-start}}@media (max-width:768px){.header-content{align-items:flex-start;flex-direction:column;gap:20px}.projects-controls{flex-direction:column;gap:12px}.search-container{min-width:100%;width:100%}.filter-container,.filter-select{width:100%}.results-count{text-align:center;width:100%}.projects-grid{grid-template-columns:1fr}.project-card{padding:20px}.project-header h3{font-size:16px}.project-stats{flex-direction:column;gap:8px}.project-stats span{display:block}.estimation-item{font-size:13px}.estimation-item .value.cost{font-size:14px}}.project-card-actions{border-top:1px solid #eee;display:flex;gap:8px;margin-top:16px;padding-top:16px}.project-card-actions .btn-sm{align-items:center;border-radius:6px;display:flex;flex:1 1;font-size:12px;gap:4px;justify-content:center;padding:8px 12px;transition:all .2s}.project-card-actions .btn-outline{background:#0000;border:1px solid #ddd;color:#666}.project-card-actions .btn-outline:hover{background:#f0f0f0;border-color:#bbb;color:#333}.detail-modal{max-height:90vh;max-width:700px;overflow-y:auto;width:95%}.modal-close{background:none;border:none;border-radius:50%;color:#666;cursor:pointer;padding:8px;position:absolute;right:16px;top:16px;transition:all .2s}.modal-close:hover{background:#f0f0f0;color:#333}.detail-header{gap:16px;margin-bottom:20px}.detail-header h2{font-size:24px;margin:0 0 4px}.detail-type{border-radius:20px;display:inline-block;font-size:12px;font-weight:500;padding:4px 12px}.detail-meta{border-bottom:1px solid #eee;color:#666;display:flex;font-size:14px;gap:16px;margin-bottom:24px;padding-bottom:16px}.detail-meta span{align-items:center;display:flex;gap:6px}.detail-content{margin-bottom:24px}.detail-grid{grid-gap:12px;gap:12px;grid-template-columns:repeat(2,1fr);margin-bottom:20px}.detail-item{background:#f8f9fa;border-radius:8px;font-size:14px;padding:12px}.detail-item strong{color:#555;display:block;font-size:12px;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.detail-pricing{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;margin-top:20px;padding:20px}.detail-pricing h4{color:#333;font-size:16px;margin:0 0 16px}.pricing-row{color:#555;display:flex;font-size:14px;justify-content:space-between;padding:8px 0}.pricing-row.total{border-top:2px solid #ddd;color:#2c5f8d;font-size:18px;font-weight:700;margin-top:12px;padding-top:12px}.detail-actions{border-top:1px solid #eee;gap:12px;padding-top:20px}.detail-actions .btn{align-items:center;border-radius:8px;display:flex;flex:1 1;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:12px 16px;transition:all .2s}.detail-actions .btn-secondary{background:#f0f0f0;border:1px solid #ddd;color:#333}.detail-actions .btn-secondary:hover{background:#e0e0e0}.detail-actions .btn-primary{background:linear-gradient(135deg,#f59e0b,#d97706);border:none;color:#fff}.detail-actions .btn-primary:hover{background:linear-gradient(135deg,#d97706,#b45309);transform:translateY(-1px)}@media (max-width:600px){.detail-grid{grid-template-columns:1fr}.detail-actions{flex-direction:column}.project-card-actions{flex-wrap:wrap}.project-card-actions .btn-sm{min-width:calc(50% - 4px)}}.materials-management{margin:0 auto;max-width:1400px;overflow-x:hidden;padding:40px}.materials-header{display:flex;justify-content:space-between;margin-bottom:32px}.header-actions,.materials-header{align-items:center}.view-toggle{border:2px solid #e2e8f0;border-radius:8px;display:flex;gap:0;overflow:hidden}.toggle-btn{background:#fff;border:none;color:#64748b;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:all .2s}.toggle-btn:hover{background:#f8fafc}.toggle-btn.active{background:#ff6b35;color:#fff}.materials-grouped{display:flex;flex-direction:column;gap:2rem}.category-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:1.5rem}.category-title{align-items:center;border-bottom:3px solid #ff6b35;color:#1e293b;display:flex;font-size:1.5rem;font-weight:700;gap:.75rem;margin:0 0 1.5rem;padding-bottom:1rem}.category-count{background:#f1f5f9;border-radius:12px;color:#64748b;font-size:1rem;font-weight:500;padding:.25rem .75rem}.materials-header h1{color:#e2e8f0;font-size:32px;font-weight:700}.materials-filters{align-items:center;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:32px;overflow-x:hidden}.search-box{background:#fff;border:2px solid #e2e8f0;gap:12px;min-width:200px;padding:12px 16px;position:relative}.search-box input{color:#1a3d5c;font-size:15px}.filter-box{background:#fff;border:2px solid #e2e8f0;gap:12px;padding:12px 16px}.filter-box select{color:#1a3d5c;font-size:15px}.materials-stats{background:#f8fafc;border-radius:8px;color:#64748b;font-size:14px;font-weight:600;padding:12px 20px}.materials-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.material-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;overflow:hidden;transition:all .3s ease}.material-card:hover{border-color:#2c5f8d;box-shadow:0 8px 24px #2c5f8d26;transform:translateY(-2px)}.material-image{background-color:#f8fafc;background-position:50%;background-size:cover;height:180px;width:100%}.material-info{padding:20px}.material-header-row{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:8px}.material-card h3{color:#1a3d5c;font-size:18px;font-weight:700;margin:0}.status-badge{border-radius:12px;font-size:11px;padding:4px 10px}.status-badge.active{background:#d1fae5;color:#065f46}.status-badge.inactive{background:#fee2e2;color:#991b1b}.material-category{color:#2c5f8d;font-size:13px;font-weight:600;margin:0 0 12px}.material-color,.material-supplier{color:#64748b;font-size:13px;margin:4px 0}.material-pricing{align-items:baseline;border-bottom:1px solid #e2e8f0;border-top:1px solid #e2e8f0;display:flex;gap:6px;margin:16px 0;padding:12px 0}.material-pricing .price{color:#2c5f8d;font-size:24px;font-weight:700}.material-pricing .unit{color:#64748b;font-size:14px}.material-details{color:#64748b;display:flex;flex-direction:column;font-size:13px;gap:6px}.material-actions{background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;gap:8px;padding:16px 20px}.btn-icon{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:6px;color:#64748b;cursor:pointer;display:flex;flex:1 1;justify-content:center;padding:10px;transition:all .2s ease}.btn-icon:hover{background:#f0f7ff;border-color:#2c5f8d;color:#2c5f8d}.btn-icon.danger:hover{background:#fee2e2;border-color:#dc2626;color:#dc2626}.empty-state{font-size:16px;padding:80px 20px}.modal-overlay{padding:20px}.modal-content{max-width:800px;padding:32px;width:100%}.modal-content h2{color:#1a3d5c;font-size:24px;font-weight:700;margin-bottom:24px}.form-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:24px}.materials-management .form-group{display:flex;flex-direction:column;gap:8px}.materials-management .form-group.full-width{grid-column:1/-1}.materials-management .form-group label{color:#1a3d5c;font-size:14px;font-weight:600}.materials-management .form-group input,.materials-management .form-group select,.materials-management .form-group textarea{border:2px solid #e2e8f0;border-radius:8px;color:#1a3d5c;font-size:15px;padding:12px;transition:border-color .2s ease}.materials-management .form-group input:focus,.materials-management .form-group select:focus,.materials-management .form-group textarea:focus{border-color:#2c5f8d;outline:none}.materials-management .form-group textarea{font-family:inherit;resize:vertical}.checkbox-group label{align-items:center;cursor:pointer;display:flex;gap:12px}.checkbox-group input[type=checkbox]{cursor:pointer;height:20px;width:20px}.modal-actions{border-top:1px solid #e2e8f0;gap:12px;padding-top:24px}.loading{font-size:18px}@media (max-width:1024px){.materials-grid{grid-template-columns:repeat(2,1fr)}.modal-form-grid{grid-template-columns:1fr}}@media (max-width:768px){.materials-management{padding:16px}.materials-header{align-items:stretch;flex-direction:column;gap:12px;margin-bottom:24px}.materials-header h1{font-size:24px}.header-actions{flex-direction:column;gap:8px;width:100%}.header-actions .btn,.header-actions label.btn{justify-content:center;padding:12px 16px;width:100%}.materials-filters{flex-direction:column;gap:12px;margin-bottom:24px;width:100%}.search-box{min-width:0}.filter-box,.search-box{padding:10px 12px;width:100%}.filter-box select{font-size:14px;width:100%}.view-toggle{justify-content:center;width:100%}.toggle-btn{flex:1 1;font-size:13px;padding:10px 12px}.materials-stats{font-size:13px;padding:10px 16px;text-align:center}.materials-grid{gap:16px;grid-template-columns:1fr}.category-section{padding:16px}.category-title{flex-wrap:wrap;font-size:1.25rem}.material-card h3{font-size:16px}.material-pricing .price{font-size:20px}.form-grid{grid-template-columns:1fr}.modal-content{margin:10px;padding:20px}.modal-content h2{font-size:20px;margin-bottom:20px}.modal-actions{flex-direction:column}.modal-actions .btn{width:100%}}.location-selector{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:8px;display:flex;gap:10px;padding:8px 16px}.location-label{color:#475569;font-size:14px;font-weight:600;white-space:nowrap}.location-select{background:#f8fafc;border:1px solid #cbd5e1;border-radius:6px;color:#1e293b;cursor:pointer;font-size:14px;font-weight:500;padding:6px 12px;transition:all .2s}.location-select:focus{background:#fff;border-color:#0369a1;outline:none}.location-select:hover{border-color:#94a3b8}.location-price-badge{align-items:center;background:#dcfce7;border-radius:4px;color:#166534;display:inline-flex;font-size:11px;font-weight:600;gap:4px;margin-left:8px;padding:4px 8px}.public-estimate-container{background:#f8fafc;min-height:100vh}.public-header{align-items:center;background:linear-gradient(135deg,#2c5f8d,#1a3d5c);color:#fff;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;padding:40px 20px}.company-logo h1{font-size:48px;font-weight:900;letter-spacing:2px;margin:0}.company-logo p{font-size:14px;margin:5px 0 0;opacity:.9}.company-contact{display:flex;flex-direction:column;gap:8px}.contact-item{font-size:14px;gap:8px}.estimate-content{background:#fff;border-radius:16px;box-shadow:0 8px 32px #0000001f;margin:-30px auto 40px;max-width:1000px;padding:40px}.estimate-header{border-bottom:2px solid #e2e8f0;margin-bottom:30px;padding-bottom:30px;text-align:center}.estimate-header h2{color:#1a3d5c;font-size:32px;font-weight:700;margin-bottom:10px}.project-name{color:#2c5f8d;font-size:20px;font-weight:600;margin:5px 0}.estimate-date{color:#64748b;font-size:14px;margin:5px 0}.total-cost-banner{background:linear-gradient(135deg,#2c5f8d,#1a3d5c);border-radius:12px;color:#fff;margin-bottom:40px;padding:40px;text-align:center}.total-cost-banner h3{font-size:18px;font-weight:600;margin-bottom:10px;opacity:.9}.total-amount{font-size:56px;font-weight:900;margin:10px 0}.validity{font-size:14px;margin-top:10px;opacity:.8}.cost-breakdown{margin-bottom:40px}.cost-breakdown>h3{color:#1a3d5c;font-size:24px;font-weight:700;margin-bottom:20px}.breakdown-section{background:#f8fafc;border-radius:12px;margin-bottom:30px;padding:20px}.breakdown-section h4{color:#1a3d5c;font-size:18px;font-weight:700;margin-bottom:15px}.materials-table{border-collapse:collapse;margin-bottom:15px;width:100%}.materials-table th{background:#e2e8f0;color:#1a3d5c;font-size:14px}.materials-table td{border-bottom:1px solid #e2e8f0;color:#475569;font-size:14px}.materials-table tbody tr:hover{background:#f1f5f9}.subtotal{align-items:center;background:#fff;border-radius:8px;color:#1a3d5c;display:flex;font-size:16px;font-weight:700;justify-content:space-between;margin-top:10px;padding:15px}.labor-details{display:flex;flex-direction:column;gap:10px;margin-bottom:15px}.detail-row{background:#fff;border-radius:6px;font-size:14px;padding:10px 15px}.adjustments-section{background:#f8fafc;border-radius:12px;margin-top:20px;padding:20px}.adjustment-row{border-bottom:1px solid #e2e8f0;color:#475569;display:flex;font-size:14px;justify-content:space-between;padding:10px 0}.adjustment-row:last-child{border-bottom:none}.actions-section{display:flex;flex-direction:column;gap:30px;margin-bottom:40px}.approval-section{background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;padding:30px}.approval-section h3{color:#1a3d5c;font-size:20px;font-weight:700;margin-bottom:15px}.approval-section textarea{border:2px solid #e2e8f0;border-radius:8px;font-family:inherit;font-size:15px;margin-bottom:20px;padding:15px;resize:vertical;width:100%}.approval-buttons{display:flex;flex-wrap:wrap;gap:15px}.btn{font-size:16px;gap:10px;padding:14px 28px;transition:all .2s ease}.btn-primary{background:#2c5f8d}.btn-primary:hover{background:#1a3d5c;box-shadow:0 4px 12px #2c5f8d4d;transform:translateY(-2px)}.btn-success{background:#10b981;color:#fff;flex:1 1}.btn-success:hover{background:#059669}.btn-danger{flex:1 1}.btn-danger:hover{background:#dc2626}.status-banner{align-items:center;border-radius:12px;display:flex;font-size:18px;font-weight:600;gap:15px;padding:20px 30px}.status-banner.approved{background:#d1fae5;border:2px solid #10b981;color:#065f46}.status-banner.rejected{background:#fee2e2;border:2px solid #ef4444;color:#991b1b}.terms-section{background:#f8fafc;border-radius:12px;margin-bottom:20px;padding:30px}.terms-section h4{color:#1a3d5c;font-size:18px;font-weight:700;margin-bottom:15px}.terms-section ul{list-style:none;margin:0;padding:0}.terms-section li{color:#475569;font-size:14px;line-height:1.6;padding:8px 0 8px 25px;position:relative}.terms-section li:before{color:#2c5f8d;content:"•";font-size:18px;font-weight:700;left:0;position:absolute}.public-footer{background:#1a3d5c;color:#fff;padding:30px 20px;text-align:center}.public-footer p{font-size:14px;margin:5px 0;opacity:.9}.error-state,.loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px;padding:40px;text-align:center}.error-state h2{color:#1a3d5c;font-size:28px;margin-bottom:10px}.error-state p{color:#64748b;font-size:16px}@media (max-width:768px){.public-header{align-items:flex-start;flex-direction:column}.estimate-content{margin:-20px 15px 20px;padding:20px}.total-amount{font-size:40px}.materials-table{font-size:12px}.materials-table td,.materials-table th{padding:8px}.approval-buttons{flex-direction:column}.btn-danger,.btn-success{width:100%}}.settings-container{background:#f8fafc;min-height:100vh;padding:2rem}.settings-header{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;justify-content:space-between;margin:0 auto 2rem;max-width:1200px;padding:2rem}.settings-header h1{color:#1e293b;font-size:2rem;font-weight:700;margin:0}.settings-content{margin:0 auto;max-width:1200px}.settings-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:2rem;padding:2rem}.section-header{align-items:center;border-bottom:2px solid #e2e8f0;display:flex;gap:.75rem;margin-bottom:2rem;padding-bottom:1rem}.section-header svg{color:#ff6b35}.section-header h2{color:#1e293b;font-size:1.5rem;font-weight:600;margin:0}.form-row{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:1.5rem}.settings-container .form-group{display:flex;flex-direction:column;gap:.5rem}.settings-container .form-group.full-width{grid-column:1/-1}.settings-container .form-group label{color:#475569;font-size:.875rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.settings-container .form-group input,.settings-container .form-group textarea{border:2px solid #e2e8f0;border-radius:8px;color:#1e293b;font-size:1rem;padding:.75rem 1rem;transition:all .2s}.settings-container .form-group input:focus,.settings-container .form-group textarea:focus{border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b351a;outline:none}.settings-container .form-group textarea{font-family:inherit;min-height:100px;resize:vertical}.logo-upload-section{margin-bottom:2rem}.logo-upload-section label{color:#475569;display:block;font-size:.875rem;font-weight:600;letter-spacing:.5px;margin-bottom:1rem;text-transform:uppercase}.logo-preview{align-items:center;background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;display:flex;height:200px;justify-content:center;margin-bottom:1rem;overflow:hidden;width:200px}.logo-preview img{max-height:100%;max-width:100%;object-fit:contain}.upload-progress{background:#eff6ff;border:1px solid #3b82f6;border-radius:8px;margin-top:1rem;padding:1rem}.progress-bar{background:#dbeafe;border-radius:4px;height:8px;margin-bottom:.5rem;overflow:hidden;width:100%}.progress-fill{animation:progress 2s ease-in-out infinite;background:linear-gradient(90deg,#3b82f6,#2563eb);height:100%}@keyframes progress{0%{width:0}30%{width:40%}70%{width:80%}to{width:95%}}.upload-progress p{color:#1e40af;font-size:.875rem;font-weight:500;margin:0;text-align:center}.upload-label.uploading{cursor:not-allowed;opacity:.6}.upload-box{background:#f8fafc;border:2px dashed #cbd5e1;border-radius:12px;cursor:pointer;padding:2rem;text-align:center;transition:all .2s}.upload-box:hover{background:#fff7ed;border-color:#ff6b35}.upload-label{align-items:center;color:#64748b;cursor:pointer;display:flex;flex-direction:column;gap:.75rem}.upload-label svg{color:#ff6b35}.upload-label span{color:#1e293b;font-size:1rem;font-weight:600}.upload-label small{color:#64748b;font-size:.875rem}.color-input-group{align-items:center;display:flex;gap:.75rem}.color-input-group input[type=color]{border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;height:50px;padding:4px;width:60px}.color-input-group input[type=text]{flex:1 1}.btn{display:inline-flex;font-weight:600}.btn-primary{background:#ff6b35}.btn-primary:hover:not(:disabled){background:#e55a2b;box-shadow:0 4px 12px #ff6b354d;transform:translateY(-2px)}.btn-primary:disabled{cursor:not-allowed;opacity:.6}.btn-secondary{background:#e2e8f0;color:#475569}.btn-secondary:hover{background:#cbd5e1;transform:translateY(-2px)}.preview-section{margin-top:2rem}.preview-card{align-items:center;border-radius:12px;color:#fff;display:flex;flex-direction:column;gap:1rem;justify-content:center;min-height:300px;padding:2rem;text-align:center}.preview-logo{background:#fff3;border-radius:12px;height:120px;margin-bottom:1rem;object-fit:contain;padding:1rem;width:120px}.preview-card h3{font-size:2rem;font-weight:700;margin:0}.preview-card p{font-size:1rem;margin:.25rem 0}.preview-button{border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:1rem;padding:.75rem 2rem;transition:transform .2s}.preview-button:hover{transform:scale(1.05)}.loading{align-items:center;color:#64748b;display:flex;font-size:1.25rem;justify-content:center;min-height:400px}@media (max-width:1024px){.settings-header{align-items:flex-start;flex-direction:column;gap:1rem}.header-actions{width:auto}}@media (max-width:768px){.settings-container{padding:1rem}.settings-header{align-items:flex-start;flex-direction:column;gap:1.5rem}.header-actions{flex-direction:column;width:100%}.header-actions .btn{justify-content:center;width:100%}.form-row{grid-template-columns:1fr}.settings-header h1{font-size:1.5rem}}.default-settings-section{border-top:2px solid #e2e8f0;margin-top:2rem;padding-top:2rem}.default-settings-section h3{color:#1e293b;font-size:1.125rem;font-weight:600;margin-bottom:1rem}.percentage-inputs{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.percentage-input{display:flex;flex-direction:column;gap:.5rem}.percentage-input label{color:#475569;font-size:.875rem;font-weight:500}.percentage-input input{border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;padding:.75rem}textarea[data-testid=terms-textarea]::placeholder{color:#94a3b8}textarea[data-testid=terms-textarea]:focus{border-color:#3b82f6;outline:none}.sub-section{border:1px solid #334155!important}.sub-current-plan{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.sub-plan-badge-wrap{align-items:center;display:flex;gap:10px}.sub-plan-badge{border-radius:8px;font-size:16px;font-weight:700;padding:6px 16px}.sub-plan-badge.tier-free{background:#64748b26;border:1px solid #475569;color:#94a3b8}.sub-plan-badge.tier-pro{background:#3b82f626;border:1px solid #3b82f6;color:#60a5fa}.sub-plan-badge.tier-enterprise{background:#f59e0b26;border:1px solid #f59e0b;color:#fbbf24}.sub-since{color:#64748b;font-size:12px}.sub-usage-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(3,1fr);margin-bottom:24px}.sub-meter{background:#0f172a;border:1px solid #334155;border-radius:10px;padding:14px 16px}.sub-meter.over-limit{background:#ef44440d;border-color:#ef4444}.sub-meter-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.sub-meter-label{color:#94a3b8;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.sub-meter-value{color:#e2e8f0;font-size:14px;font-weight:700}.unlimited-icon{color:#10b981;font-size:12px}.sub-meter-bar{background:#1e293b;border-radius:3px;height:6px;overflow:hidden}.sub-meter-fill{background:#3b82f6;border-radius:3px;height:100%;transition:width .5s ease}.over-limit .sub-meter-fill{background:#ef4444}.sub-tiers{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}.sub-tier-card{background:#0f172a;border:1px solid #334155;border-radius:12px;padding:20px;position:relative;text-align:center;transition:all .2s}.sub-tier-card:hover{border-color:#475569}.sub-tier-card.current{border-color:#3b82f6;box-shadow:0 0 0 1px #3b82f64d}.sub-tier-card.recommended{border-color:#3b82f6}.sub-recommended-tag{background:#3b82f6;border-radius:4px;color:#fff;font-size:10px;font-weight:700;left:50%;letter-spacing:.5px;padding:3px 12px;position:absolute;text-transform:uppercase;top:-10px;transform:translateX(-50%)}.sub-tier-card h4{color:#f1f5f9;font-size:18px;font-weight:700;margin:0 0 4px}.sub-tier-price{color:#e2e8f0;font-size:28px;font-weight:800;margin-bottom:16px}.sub-tier-features{list-style:none;margin:0 0 20px;padding:0;text-align:left}.sub-tier-features li{align-items:center;color:#94a3b8;display:flex;font-size:13px;gap:8px;padding:5px 0}.sub-tier-features li svg{color:#10b981;flex-shrink:0}.sub-tier-btn{padding:10px 16px!important;width:100%}@media (max-width:1024px){.sub-tiers{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.sub-tiers,.sub-usage-grid{grid-template-columns:1fr}}.role-current{margin-bottom:20px}.role-label{color:#94a3b8;display:block;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.role-selector{display:flex;gap:10px}.role-btn{align-items:center;background:#0f172a;border:1px solid #334155;border-radius:8px;color:#94a3b8;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:all .15s}.role-btn:hover{border-color:#475569;color:#e2e8f0}.role-btn.active{background:#3b82f61f;border-color:#3b82f6;box-shadow:0 0 0 1px #3b82f64d;color:#60a5fa}.role-perms-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(4,1fr)}.role-perm-group{background:#0f172a;border:1px solid #334155;border-radius:10px;padding:14px}.role-perm-group h4{color:#e2e8f0;font-size:13px;font-weight:700;letter-spacing:.5px;margin:0 0 10px;text-transform:uppercase}.role-perm-list{display:flex;flex-direction:column;gap:6px}.role-perm-item{align-items:center;display:flex;font-size:12px;gap:6px;padding:4px 0;text-transform:capitalize}.role-perm-item.granted,.role-perm-item.granted svg{color:#10b981}.role-perm-item.denied{color:#475569;text-decoration:line-through}.role-perm-item.denied svg{color:#334155}@media (max-width:768px){.role-perms-grid{grid-template-columns:repeat(2,1fr)}.role-selector{flex-direction:column}}@media (max-width:480px){.settings-container{padding:.5rem}.settings-header{border-radius:8px;padding:1rem}.settings-header h1{font-size:1.25rem}.settings-section{border-radius:8px;padding:1rem}.sub-tiers{gap:12px;grid-template-columns:1fr!important}.sub-tier-card{padding:16px}.sub-usage-grid{gap:8px;grid-template-columns:1fr!important}.form-row,.role-perms-grid{grid-template-columns:1fr}}.clients-page{background:#0f172a!important;color:#e2e8f0!important;margin:0 auto;max-width:1400px;min-height:100vh;padding:2rem}.clients-page .stats-dashboard{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:2rem}.clients-page .stat-card{align-items:center;background:#1e293b!important;border:1px solid #334155;border-radius:10px;color:#e2e8f0;display:flex;gap:1rem;padding:1.25rem}.clients-page .stat-icon{align-items:center;border-radius:10px;display:flex;height:48px;justify-content:center;width:48px}.clients-page .stat-info h3{color:#f1f5f9;font-size:1.75rem;font-weight:700;margin:0}.clients-page .stat-info p{color:#94a3b8;font-size:.8rem;margin:.2rem 0 0}.clients-page .clients-header{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:10px;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding:1.25rem 1.5rem}.clients-page .clients-header h2{color:#f1f5f9;font-size:1.5rem;font-weight:700;margin:0}.clients-page .btn-add-client{align-items:center;background:#c8a951;border:none;border-radius:8px;color:#0f172a;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:.5rem;padding:.65rem 1.5rem;transition:all .2s}.clients-page .btn-add-client:hover{background:#d4b95e;transform:translateY(-1px)}.clients-page .clients-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.clients-page .search-box{flex:1 1;min-width:250px;position:relative}.clients-page .search-box svg{color:#64748b;left:14px;position:absolute;top:50%;transform:translateY(-50%)}.clients-page .search-box input{background:#0f172a!important;border:1px solid #334155;border-radius:8px;color:#e2e8f0!important;font-size:.9rem;outline:none;padding:.65rem .65rem .65rem 2.5rem;width:100%}.clients-page .search-box input:focus{border-color:#3b82f6}.clients-page .search-box input::placeholder{color:#64748b}.clients-page .filter-select{align-items:center;background:#0f172a;border:1px solid #334155;border-radius:8px;color:#e2e8f0;display:flex;font-size:.9rem;gap:.5rem;padding:.65rem 1rem}.clients-page .filter-select select{background:#0000;border:none;color:#e2e8f0;font-size:.9rem;outline:none}.clients-page .client-count{background:#1e293b;border:1px solid #334155;border-radius:8px;color:#94a3b8;font-size:.85rem;padding:.5rem 1rem}.clients-page .clients-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}.clients-page .client-card{background:#1e293b;border:1px solid #334155;border-radius:10px;cursor:pointer;padding:1.25rem;transition:all .2s}.clients-page .client-card:hover{border-color:#475569;box-shadow:0 4px 12px #0000004d;transform:translateY(-2px)}.clients-page .client-header{align-items:center;display:flex;gap:.75rem;margin-bottom:.75rem}.clients-page .client-avatar{align-items:center;background:#c8a95126;border-radius:10px;color:#c8a951;display:flex;flex-shrink:0;font-size:18px;font-weight:700;height:40px;justify-content:center;width:40px}.clients-page .client-info h3{color:#f1f5f9;font-size:1rem;font-weight:600;margin:0}.clients-page .client-details{display:flex;flex-direction:column;gap:.4rem;margin-bottom:.75rem}.clients-page .detail-row{align-items:center;background:#0000;border-bottom:none;color:#94a3b8;display:flex;font-size:.85rem;gap:.5rem;padding:0}.clients-page .detail-row span{color:#94a3b8}.clients-page .detail-row svg{color:#64748b;flex-shrink:0}.clients-page .client-actions{border-top:1px solid #334155;display:flex;gap:.5rem;padding-top:.75rem}.clients-page .btn-icon{align-items:center;background:#0000;border:1px solid #334155;border-radius:8px;color:#94a3b8;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .15s;width:36px}.clients-page .btn-icon:hover{border-color:#3b82f6;color:#60a5fa}.clients-page .btn-icon.danger:hover{border-color:#ef4444;color:#f87171}.clients-page .empty-state{background:#1e293b!important;border:1px solid #334155;border-radius:10px;color:#e2e8f0;padding:3rem 2rem;text-align:center}.clients-page .empty-state svg{color:#475569}.clients-page .empty-state h3{color:#e2e8f0}.clients-page .empty-state p{color:#64748b}.clients-page .modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3}.clients-page .modal-content{background:#1e293b!important;border:1px solid #334155;color:#e2e8f0}.clients-page .modal-content h2,.clients-page .modal-content h3{color:#f1f5f9}.clients-page .form-group label{color:#94a3b8}.clients-page .form-group input,.clients-page .form-group select,.clients-page .form-group textarea{background:#0f172a!important;border:1px solid #334155;color:#e2e8f0!important}.clients-page .form-group input:focus,.clients-page .form-group select:focus,.clients-page .form-group textarea:focus{border-color:#3b82f6}@media (max-width:1024px){.clients-page .clients-grid{grid-template-columns:repeat(2,1fr)}.clients-toolbar{flex-wrap:wrap;gap:12px}}@media (max-width:768px){.clients-page{padding:1rem}.stats-dashboard{grid-template-columns:repeat(2,1fr)}.clients-page .clients-grid{grid-template-columns:1fr}.clients-toolbar{flex-direction:column}}.breadcrumb{flex-wrap:wrap;font-size:14px;gap:8px;padding:16px 0}.breadcrumb,.breadcrumb-item{align-items:center;display:flex}.breadcrumb-item{color:#64748b;font-weight:500;gap:6px;text-decoration:none;transition:color .2s}.breadcrumb-item:hover{color:#2c5f8d}.breadcrumb-item.active{color:#1e293b;font-weight:600}.breadcrumb-separator{color:#cbd5e1}@media (max-width:768px){.breadcrumb{font-size:13px;padding:12px 0}.breadcrumb-item svg{height:14px;width:14px}.breadcrumb-separator{height:12px;width:12px}}.client-detail-page{background:#0f172a;color:#e2e8f0;margin:0 auto;max-width:1400px;min-height:100vh;padding:2rem}.btn-back{padding:.65rem 1.25rem;transition:all .15s}.btn-back:hover{border-color:#475569}.detail-actions{display:flex;gap:.75rem}.btn-delete,.btn-edit{align-items:center;border:1px solid #0000;border-radius:8px;cursor:pointer;display:flex;font-size:.85rem;font-weight:600;gap:.5rem;padding:.65rem 1.25rem;transition:all .15s}.btn-edit{background:#1e40af;border-color:#3b82f6;color:#93c5fd}.btn-edit:hover{background:#1d4ed8;color:#fff}.btn-delete{background:#0000;border-color:#ef4444;color:#f87171}.btn-delete:hover{background:#ef444426}.detail-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.detail-card{background:#1e293b;border:1px solid #334155;border-radius:10px;padding:1.5rem}.detail-card h3{align-items:center;color:#f1f5f9;display:flex;font-size:1rem;font-weight:700;gap:.5rem;margin:0 0 1rem}.detail-card h3 svg{color:#c8a951}.info-row{align-items:center;border-bottom:1px solid #33415580;display:flex;justify-content:space-between;padding:.6rem 0}.info-row:last-child{border-bottom:none}.info-label{color:#64748b;font-size:.85rem}.info-value{color:#e2e8f0;font-size:.9rem;font-weight:600}.detail-status-badge{align-items:center;border-radius:6px;display:inline-flex;font-size:.75rem;font-weight:600;gap:.4rem;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.projects-list{display:flex;flex-direction:column;gap:.75rem}.project-item{align-items:center;background:#0f172a;border:1px solid #334155;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;padding:.75rem 1rem;transition:all .15s}.project-item:hover{border-color:#3b82f6}.project-item-name{color:#e2e8f0;font-size:.9rem;font-weight:600}.project-item-date{color:#64748b;font-size:.8rem}.comm-timeline{display:flex;flex-direction:column;gap:1rem}.comm-item{background:#0f172a;border:1px solid #334155;border-radius:8px;padding:.75rem 1rem}.comm-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.4rem}.comm-type{color:#60a5fa;font-size:.75rem;font-weight:600;text-transform:uppercase}.comm-date{color:#64748b;font-size:.75rem}.comm-notes{color:#94a3b8;font-size:.85rem;line-height:1.4}.add-comm-form textarea{min-height:60px;resize:vertical}.btn-add-comm{font-size:.85rem;transition:all .15s}.btn-add-comm:hover{background:#d4b95e}.detail-card.full-width{grid-column:1/-1}.loading-spinner{align-items:center;color:#64748b;display:flex;font-size:1rem;justify-content:center;min-height:300px}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:#1e293b;border:1px solid #334155;border-radius:12px;max-width:500px}.modal-content h3{color:#f1f5f9;font-size:1.25rem;font-weight:700;margin:0 0 1.5rem}.client-detail-page .form-group{margin-bottom:1rem}.client-detail-page .form-group label{color:#94a3b8;display:block;font-size:.8rem;font-weight:600;letter-spacing:.5px;margin-bottom:.4rem;text-transform:uppercase}.client-detail-page .form-group input,.client-detail-page .form-group select,.client-detail-page .form-group textarea{background:#0f172a;border:1px solid #334155;border-radius:8px;color:#e2e8f0;font-size:.9rem;outline:none;padding:.6rem .8rem;width:100%}.client-detail-header{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:10px;display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:1.5rem;padding:1.5rem}.client-avatar-large{align-items:center;background:#c8a95126;border-radius:12px;color:#c8a951;display:flex;flex-shrink:0;font-size:28px;font-weight:700;height:64px;justify-content:center;width:64px}.client-main-info h1{color:#f1f5f9;font-size:1.5rem;font-weight:700;margin:0 0 .4rem}.status-dropdown select{background:#0f172a;border-radius:6px;cursor:pointer;font-size:.8rem;font-weight:600;outline:none;padding:4px 12px}.client-contact-info{display:flex;flex-wrap:wrap;gap:1rem;margin-left:auto}.contact-item{align-items:center;color:#94a3b8;display:flex;font-size:.85rem;gap:.4rem}.contact-item a{color:#60a5fa;text-decoration:none}.contact-item a:hover{text-decoration:underline}.client-stats-overview{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr);margin-bottom:1.5rem}.stat-box{background:#1e293b;border:1px solid #334155;gap:1rem;padding:1rem}.stat-box,.stat-box .stat-icon{align-items:center;border-radius:10px;display:flex}.stat-box .stat-icon{height:48px;justify-content:center;width:48px}.stat-content h3{color:#f1f5f9;font-size:1.5rem;font-weight:700;margin:0}.stat-content p{color:#94a3b8;font-size:.8rem;margin:0}.client-detail-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.detail-section{background:#1e293b;border:1px solid #334155;border-radius:10px;padding:1.5rem}.detail-section h2{align-items:center;color:#f1f5f9;display:flex;font-size:1rem;font-weight:700;gap:.5rem;margin:0 0 1rem}.detail-section h2 svg{color:#c8a951}.detail-section.full-width{grid-column:1/-1}.project-list-item{align-items:center;background:#0f172a;border:1px solid #334155;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:.5rem;padding:.75rem 1rem;transition:all .15s}.project-list-item:hover{border-color:#3b82f6}.project-list-item h4{color:#e2e8f0;font-size:.9rem;margin:0}.project-list-item span{color:#64748b;font-size:.8rem}.status-badge{border-radius:6px;font-size:.7rem;padding:3px 10px}.comm-log-item{background:#0f172a;border:1px solid #334155;border-radius:8px;margin-bottom:.5rem;padding:.75rem 1rem}.comm-log-item .comm-type{color:#60a5fa;font-size:.75rem;font-weight:600;text-transform:uppercase}.comm-log-item .comm-date{color:#64748b;font-size:.75rem}.comm-log-item .comm-notes{color:#94a3b8;font-size:.85rem;margin-top:.3rem}.add-comm-form{border-top:1px solid #334155;display:flex;flex-direction:column;gap:.75rem;margin-top:1rem;padding-top:1rem}.add-comm-form select,.add-comm-form textarea{background:#0f172a;border:1px solid #334155;border-radius:8px;color:#e2e8f0;font-size:.85rem;outline:none;padding:.6rem .8rem}.add-comm-form select:focus,.add-comm-form textarea:focus{border-color:#3b82f6}.btn-add-comm{align-self:flex-end;background:#c8a951;border:none;color:#0f172a;padding:.5rem 1rem}.btn-action,.btn-add-comm{border-radius:8px;cursor:pointer;font-weight:600}.btn-action{align-items:center;background:#1e293b;border:1px solid #334155;color:#94a3b8;display:flex;font-size:.85rem;gap:.5rem;padding:.65rem 1.25rem;transition:all .15s}.btn-action:hover{border-color:#475569;color:#e2e8f0}.btn-action.primary{background:#1e40af;border-color:#3b82f6;color:#93c5fd}.btn-action.danger{border-color:#ef4444;color:#f87171}.btn-action.danger:hover{background:#ef444426}@media (max-width:1024px){.client-stats-overview{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.client-stats-overview{grid-template-columns:repeat(2,1fr)}.client-detail-grid{grid-template-columns:1fr}}.client-detail-page .form-group input:focus,.client-detail-page .form-group select:focus,.client-detail-page .form-group textarea:focus{border-color:#3b82f6}.btn-cancel{background:#0000;border:1px solid #475569;border-radius:8px;color:#94a3b8;cursor:pointer}.btn-cancel,.btn-save{font-weight:600;padding:.6rem 1.25rem}.btn-save{background:#c8a951;border:none;border-radius:8px;color:#0f172a}.empty-state{color:#64748b;padding:2rem}@media (max-width:768px){.client-detail-page{padding:1rem}.detail-grid{grid-template-columns:1fr}}.client-detail-page .detail-tabs{border-bottom:1px solid #334155;display:flex;gap:0;margin-bottom:1.5rem}.client-detail-page .detail-tabs button{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:#94a3b8;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:.5rem;padding:.75rem 1.25rem;transition:all .15s}.client-detail-page .detail-tabs button:hover{color:#e2e8f0}.client-detail-page .detail-tabs button.active{border-bottom-color:#c8a951;color:#c8a951}.client-detail-page .tab-content{min-height:300px}.client-detail-page .overview-tab{display:flex;flex-direction:column;gap:1.5rem}.client-detail-page .overview-section{background:#1e293b;border:1px solid #334155;border-radius:10px;padding:1.5rem}.client-detail-page .overview-section h3{color:#f1f5f9;font-size:1rem;font-weight:700;margin:0 0 1rem}.client-detail-page .overview-section p{color:#94a3b8;font-size:.9rem;line-height:1.5}.client-detail-page .empty-text{color:#64748b;font-style:italic}.client-detail-page .project-item{align-items:center;background:#0f172a;border:1px solid #334155;border-radius:8px;cursor:pointer;display:flex;gap:.75rem;margin-bottom:.5rem;padding:.75rem 1rem;transition:all .15s}.client-detail-page .project-item:hover{border-color:#3b82f6}.client-detail-page .project-item svg{color:#64748b;flex-shrink:0}.client-detail-page .project-info h4{color:#e2e8f0;font-size:.9rem;font-weight:600;margin:0}.client-detail-page .project-date{color:#64748b;font-size:.75rem}.client-detail-page .project-value{color:#10b981;font-size:.9rem;font-weight:700;margin-left:auto}.client-detail-page .comm-item{background:#0f172a;border:1px solid #334155;border-radius:8px;display:flex;gap:.75rem;margin-bottom:.5rem;padding:.75rem 1rem}.client-detail-page .comm-item svg{color:#64748b;flex-shrink:0;margin-top:2px}.client-detail-page .comm-content{flex:1 1}.client-detail-page .comm-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.3rem}.client-detail-page .comm-header strong{color:#e2e8f0;font-size:.85rem}.client-detail-page .comm-content .comm-date{color:#64748b;font-size:.75rem}.client-detail-page .comm-content p{color:#94a3b8;font-size:.85rem;margin:0}.client-detail-page .comm-author{color:#64748b;display:block;font-size:.75rem;margin-top:.3rem}.client-detail-page .tab-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.client-detail-page .tab-header h2{color:#f1f5f9;font-size:1.25rem;font-weight:700;margin:0}.client-detail-page .projects-list{display:flex;flex-direction:column;gap:.75rem}.client-detail-page .project-card{background:#1e293b;border:1px solid #334155;border-radius:10px;cursor:pointer;padding:1.25rem;transition:all .15s}.client-detail-page .project-card:hover{border-color:#475569;transform:translateY(-1px)}.client-detail-page .project-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.client-detail-page .project-header h3{color:#e2e8f0;font-size:1rem;font-weight:600;margin:0}.client-detail-page .project-amount{color:#10b981;font-size:1rem;font-weight:700}.client-detail-page .project-meta{align-items:center;color:#64748b;display:flex;font-size:.8rem;gap:1rem}.client-detail-page .project-meta span{align-items:center;display:flex;gap:.3rem}.client-detail-page .communications-timeline{display:flex;flex-direction:column;gap:1rem}.client-detail-page .timeline-item{display:flex;gap:1rem;position:relative}.client-detail-page .timeline-icon{align-items:center;background:#60a5fa1f;border-radius:10px;color:#60a5fa;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.client-detail-page .timeline-content{background:#1e293b;border:1px solid #334155;border-radius:10px;flex:1 1;padding:1rem 1.25rem}.client-detail-page .timeline-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.client-detail-page .timeline-header h4{color:#e2e8f0;font-size:.9rem;font-weight:600;margin:0}.client-detail-page .timeline-date{color:#64748b;font-size:.75rem}.client-detail-page .timeline-content p{color:#94a3b8;font-size:.85rem;line-height:1.5;margin:0}.client-detail-page .timeline-author{color:#64748b;display:block;font-size:.75rem;margin-top:.5rem}.client-detail-page .client-info-card{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:10px;display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:1.5rem;padding:1.5rem}.client-detail-page .header-actions{display:flex;gap:.75rem}.client-detail-page .btn{align-items:center;border:1px solid #0000;border-radius:8px;cursor:pointer;display:inline-flex;font-size:.85rem;font-weight:600;gap:.5rem;padding:.6rem 1.25rem;transition:all .15s}.client-detail-page .btn-primary{background:#c8a951;border-color:#c8a951;color:#0f172a}.client-detail-page .btn-primary:hover{background:#d4b95e}.client-detail-page .btn-secondary{background:#1e293b;border-color:#334155;color:#94a3b8}.client-detail-page .btn-secondary:hover{border-color:#475569;color:#e2e8f0}.client-detail-page .btn-danger{background:#0000;border-color:#ef4444;color:#f87171}.client-detail-page .btn-danger:hover{background:#ef444426}.client-detail-page .empty-state{background:#1e293b;border:1px solid #334155;border-radius:10px;color:#e2e8f0;padding:3rem 2rem;text-align:center}.client-detail-page .empty-state svg{color:#475569;margin-bottom:1rem}.client-detail-page .empty-state h3{color:#e2e8f0;margin:0 0 .5rem}.client-detail-page .empty-state p{color:#64748b;margin:0 0 1rem}.client-detail-page .modal-content h2{color:#f1f5f9;font-size:1.25rem;font-weight:700;margin:0 0 1.5rem}.project-detail-page{margin:0 auto;max-width:1400px;padding:2rem}.detail-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.btn-back{background:#fff;border:1px solid #e5e7eb;color:#374151;font-size:.95rem;padding:.75rem 1.5rem}.btn-back:hover{background:#f9fafb;border-color:#d1d5db}.header-actions{display:flex;gap:1rem}.project-info-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:2rem}.project-main-info{margin-bottom:1.5rem}.project-main-info h1{color:#1e293b;font-size:2rem;margin:0 0 1rem}.status-selector{align-items:center;display:flex;gap:.75rem}.status-selector label{color:#64748b;font-weight:600}.status-selector select{border-radius:20px;cursor:pointer;font-size:.9rem;font-weight:600;padding:.5rem 1rem;transition:all .2s}.status-selector select:hover{opacity:.9}.project-meta-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.meta-item{align-items:center;background:#f8fafc;border-radius:8px;display:flex;gap:1rem;padding:1rem}.meta-item svg{color:#3b82f6}.meta-label{color:#64748b;display:block;font-size:.85rem}.meta-value{color:#1e293b;display:block;font-weight:600;margin-top:.25rem}.meta-value.clickable{color:#3b82f6;cursor:pointer}.meta-value.clickable:hover{text-decoration:underline}.project-stats-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.stat-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;display:flex;gap:1rem;padding:1.5rem}.stat-card h3{color:#1e293b;font-size:1.75rem;margin:0}.stat-card p{color:#64748b;font-size:.9rem;margin:.25rem 0 0}.detail-tabs{border-bottom:2px solid #e5e7eb;display:flex;gap:.5rem;margin-bottom:2rem}.detail-tabs button{align-items:center;background:#0000;border:none;border-bottom:3px solid #0000;color:#64748b;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.5rem;margin-bottom:-2px;padding:1rem 1.5rem;transition:all .2s}.detail-tabs button:hover{background:#f9fafb;color:#1e293b}.detail-tabs button.active{border-bottom-color:#3b82f6;color:#3b82f6}.tab-content{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;min-height:400px;padding:2rem}.tab-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.tab-header h2{color:#1e293b;margin:0}.overview-tab{display:flex;flex-direction:column;gap:2rem}.overview-section h3{color:#1e293b;margin-bottom:1rem}.estimation-summary{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.est-item{align-items:center;background:#f8fafc;border-radius:8px;display:flex;justify-content:space-between;padding:1rem}.est-item.total{background:#dbeafe;border:2px solid #3b82f6}.est-item span{color:#64748b}.est-item strong{color:#1e293b;font-size:1.125rem}.photo-grid-small{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.photo-thumb{aspect-ratio:1;border-radius:8px;overflow:hidden;position:relative}.photo-thumb img{height:100%;object-fit:cover;width:100%}.photo-type{background:#000c;border-radius:12px;bottom:.5rem;color:#fff;font-size:.75rem;left:.5rem;padding:.25rem .75rem;position:absolute;text-transform:capitalize}.notes-list-small{display:flex;flex-direction:column;gap:1rem}.note-preview{background:#f8fafc;border-left:4px solid #3b82f6;border-radius:8px;padding:1rem}.note-preview p{color:#475569;margin:0 0 .5rem}.note-meta{color:#94a3b8;font-size:.85rem}.photos-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.photo-card{background:#fff;border:2px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:all .2s}.photo-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626;transform:translateY(-2px)}.photo-card img{height:250px;object-fit:cover;width:100%}.photo-info{padding:1rem}.photo-badge{border-radius:12px;display:inline-block;font-size:.75rem;font-weight:600;margin-bottom:.75rem;padding:.25rem .75rem;text-transform:capitalize}.photo-badge.before{background:#fef3c7;color:#92400e}.photo-badge.during{background:#dbeafe;color:#1e40af}.photo-badge.after{background:#d1fae5;color:#065f46}.photo-badge.inspection{background:#ede9fe;color:#5b21b6}.photo-badge.other{background:#f3f4f6;color:#374151}.photo-info h4{color:#1e293b;margin:0 0 .5rem}.photo-info p{color:#64748b;font-size:.9rem;margin:.5rem 0}.photo-uploaded{color:#94a3b8;display:block;font-size:.85rem;margin-top:.75rem}.notes-timeline{padding-left:2rem;position:relative}.notes-timeline:before{background:#e5e7eb;bottom:0;content:"";left:12px;position:absolute;top:0;width:2px}.note-item{gap:1rem;padding-bottom:2rem}.note-icon,.note-item{display:flex;position:relative}.note-icon{align-items:center;background:#fff;border:3px solid #3b82f6;border-radius:50%;color:#3b82f6;flex-shrink:0;height:40px;justify-content:center;margin-left:-28px;width:40px;z-index:1}.note-content{background:#f8fafc;border-radius:12px;flex:1 1;padding:1.5rem}.note-content p{color:#475569;line-height:1.6;margin:0 0 .75rem}.empty-state{color:#94a3b8}.empty-state svg{opacity:.5}.empty-state h3{color:#64748b;margin-bottom:.5rem}.empty-state p{margin-bottom:2rem}.empty-text{color:#94a3b8;font-style:italic;padding:2rem;text-align:center}.modal-overlay{background:#00000080}.modal-content{background:#fff;border-radius:16px;max-height:90vh;max-width:600px;overflow-y:auto;padding:2rem;width:90%}.modal-content h2{color:#1e293b;margin:0 0 1.5rem}.project-detail-page .form-group{margin-bottom:1.5rem}.project-detail-page .form-group label{color:#374151;display:block;font-weight:500;margin-bottom:.5rem}.project-detail-page .form-group input,.project-detail-page .form-group select,.project-detail-page .form-group textarea{border:1px solid #d1d5db;border-radius:8px;font-size:1rem;padding:.75rem;transition:all .2s;width:100%}.project-detail-page .form-group input:focus,.project-detail-page .form-group select:focus,.project-detail-page .form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.modal-actions{gap:1rem;margin-top:2rem}.btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:#3b82f6;color:#fff}.btn-primary:hover:not(:disabled){background:#2563eb}.btn-secondary{background:#f3f4f6;color:#374151}.btn-secondary:hover:not(:disabled){background:#e5e7eb}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626}@media (max-width:768px){.project-detail-page{padding:1rem}.estimation-summary,.photos-grid,.project-meta-grid,.project-stats-grid{grid-template-columns:1fr}.detail-tabs{overflow-x:auto}}.invoices-page{background:#0f172a;margin:0 auto;max-width:1600px;min-height:100vh;padding:2rem}.stats-dashboard{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:2rem}.invoices-page .stat-card{align-items:center;background:#1e293bb3!important;border:1px solid #334155!important;border-radius:12px;display:flex;gap:1rem;padding:1.25rem}.invoices-page .stat-icon{align-items:center;border-radius:10px;display:flex;height:48px;justify-content:center;width:48px}.invoices-page .stat-info h3{color:#f1f5f9;font-size:1.75rem;font-weight:700;margin:0}.invoices-page .stat-info p{color:#94a3b8;font-size:.82rem;margin:.2rem 0 0}.invoices-header{align-items:center;background:#1e293bb3;border:1px solid #334155;border-radius:12px;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding:1.25rem}.invoices-header h1{color:#f1f5f9;font-size:1.75rem;font-weight:700;margin:0}.invoices-filters{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem}.search-box{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:8px;display:flex;flex:1 1;gap:.75rem;min-width:250px;padding:.7rem 1rem}.search-box svg{color:#64748b}.search-box input{background:#0000;border:none;color:#e2e8f0;flex:1 1;font-size:.9rem;outline:none}.search-box input::placeholder{color:#64748b}.filter-box{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:8px;display:flex;gap:.75rem;padding:.7rem 1rem}.filter-box svg{color:#64748b}.filter-box select{background:#0000;border:none;color:#e2e8f0;cursor:pointer;font-size:.9rem;outline:none}.filter-box select option{background:#1e293b;color:#e2e8f0}.results-count{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:8px;color:#94a3b8;display:flex;font-size:.9rem;font-weight:600;padding:.7rem 1.25rem}.invoices-table-container{background:#1e293b99;border:1px solid #334155;border-radius:12px;overflow:hidden}.invoices-table{border-collapse:collapse;width:100%}.invoices-table thead{background:#0f172a80;border-bottom:1px solid #334155}.invoices-table th{color:#94a3b8;font-size:.78rem;font-weight:600;letter-spacing:.5px;padding:.85rem 1rem;text-align:left;text-transform:uppercase}.invoices-table tbody tr{border-bottom:1px solid #3341554d;transition:background .2s}.invoices-table tbody tr:hover{background:#33415533}.invoices-table tbody tr.overdue-row{background:#dc26260f}.invoices-table td{color:#cbd5e1;font-size:.875rem;padding:.85rem 1rem}.invoice-number{font-weight:700}.client-name{color:#e2e8f0;font-weight:600}.amount,.balance-amount,.paid-amount{font-weight:600;text-align:right}.overdue-date{color:#ef4444;font-weight:600}.overdue-badge{background:#dc2626;border-radius:4px;color:#fff;display:inline-block;font-size:.625rem;font-weight:700;margin-left:.5rem;padding:.125rem .5rem}.status-badge{align-items:center;border-radius:10px;display:inline-flex;font-size:.72rem;gap:.375rem;letter-spacing:.5px;padding:.35rem .7rem;text-transform:uppercase}.actions{text-align:center}.invoices-page .btn-icon{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:8px;color:#94a3b8;cursor:pointer;display:inline-flex;justify-content:center;padding:.45rem;transition:all .2s}.invoices-page .btn-icon:hover{background:#334155;border-color:#475569;color:#60a5fa}.empty-state{background:#1e293b80;border:1px solid #334155;border-radius:12px;padding:4rem 2rem;text-align:center}.empty-state svg{color:#475569;margin-bottom:1rem}.empty-state h3{color:#f1f5f9;font-size:1.4rem;font-weight:700;margin:1rem 0 .5rem}.empty-state p{color:#94a3b8;margin-bottom:1.5rem}.invoices-page .btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;gap:.5rem;padding:.7rem 1.25rem;transition:all .2s}.invoices-page .btn-primary{background:linear-gradient(135deg,#3b82f6,#1e40af)!important;color:#fff!important}.invoices-page .btn-primary:hover{box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.invoices-page .loading{align-items:center;color:#64748b;display:flex;font-size:1.1rem;justify-content:center;min-height:400px}@media (max-width:1024px){.invoices-page{padding:1.25rem}.invoices-header{flex-wrap:wrap;gap:.75rem}.invoices-header h1{flex:1 1;min-width:150px}.invoices-header .btn{white-space:nowrap}.invoices-filters{flex-wrap:wrap}.invoices-table-container{overflow-x:auto}.invoices-table{min-width:800px}}@media (max-width:1200px){.invoices-table-container{overflow-x:auto}.invoices-table{min-width:900px}}@media (max-width:768px){.invoices-page{padding:.75rem}.invoices-header{align-items:stretch;flex-direction:column;gap:1rem}.invoices-header h1{font-size:1.25rem}.invoices-header .btn{justify-content:center;width:100%}.stats-dashboard{gap:.75rem;grid-template-columns:1fr 1fr}.stat-card{padding:1rem}.stat-info h3{font-size:1.4rem}.invoices-table{display:none}.invoices-list{display:flex;flex-direction:column;gap:.75rem}.invoice-mobile-card{background:#1e293bb3;border:1px solid #334155;border-left:4px solid #3b82f6;border-radius:10px;padding:1rem}.invoice-mobile-header{align-items:start;display:flex;justify-content:space-between;margin-bottom:.75rem}.invoice-mobile-number{color:#60a5fa;font-size:1rem;font-weight:700}.invoice-mobile-amount{color:#10b981;font-size:1rem;font-weight:700}.invoice-mobile-details{display:flex;flex-direction:column;gap:.4rem;margin-bottom:.75rem}.invoice-mobile-row{display:flex;font-size:.85rem;justify-content:space-between}.invoice-mobile-label{color:#64748b}.invoice-mobile-value{color:#e2e8f0;font-weight:500}}@media (max-width:480px){.stats-dashboard{grid-template-columns:1fr}.search-box{min-width:0;min-width:auto}}.invoice-detail-page{background:#0f172a;margin:0 auto;max-width:1200px;min-height:100vh;padding:2rem}.invoice-header{justify-content:space-between;margin-bottom:1.5rem}.btn-back,.invoice-header{align-items:center;display:flex}.btn-back{background:#1e293b;border:1px solid #334155;border-radius:8px;color:#94a3b8;cursor:pointer;font-size:.9rem;font-weight:600;gap:.5rem;padding:.6rem 1.2rem;transition:all .2s}.btn-back:hover{background:#334155;color:#e2e8f0}.invoice-detail-page .btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:.5rem;padding:.6rem 1.2rem;transition:all .2s}.invoice-detail-page .btn-primary{background:linear-gradient(135deg,#3b82f6,#1e40af)!important;color:#fff!important}.invoice-detail-page .btn-primary:hover{box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.invoice-container{background:#1e293bb3;border:1px solid #334155;border-radius:12px;padding:2.5rem}.invoice-title-section{align-items:flex-start;border-bottom:2px solid #334155;display:flex;justify-content:space-between;margin-bottom:2.5rem;padding-bottom:1.5rem}.invoice-title-section h1{color:#f1f5f9;font-size:2rem;font-weight:700;margin:0}.invoice-number{color:#60a5fa;font-size:1rem;margin:.5rem 0 0}.status-badge-large{border-radius:8px;font-size:.85rem;font-weight:700;letter-spacing:1px;padding:.6rem 1.25rem;text-transform:uppercase}.invoice-info-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:2.5rem}.info-card{background:#0f172a80;border:1px solid #334155;border-radius:10px;padding:1.25rem}.info-card h3{align-items:center;color:#cbd5e1;display:flex;font-size:.85rem;font-weight:700;gap:.5rem;letter-spacing:.5px;margin:0 0 .75rem;text-transform:uppercase}.info-card .client-name{color:#e2e8f0;font-size:1.05rem;font-weight:700;margin-bottom:.4rem}.info-card p{color:#cbd5e1;font-size:.9rem;margin:.2rem 0}.detail-row{align-items:center;border-bottom:1px solid #3341554d;display:flex;justify-content:space-between;padding:.45rem 0}.detail-row:last-child{border-bottom:none}.detail-row span{color:#cbd5e1;font-size:.9rem}.detail-row strong{color:#e2e8f0;font-size:.9rem}.invoice-items{margin-bottom:2.5rem}.invoice-items h3{color:#e2e8f0;font-size:1.1rem;font-weight:700;margin:0 0 .75rem}.items-table{border-collapse:collapse;margin-top:.75rem;width:100%}.items-table thead{background:#0f172a80;border-bottom:1px solid #334155}.items-table th{color:#94a3b8;font-size:.78rem;font-weight:600;letter-spacing:.5px;padding:.75rem 1rem;text-align:left;text-transform:uppercase}.items-table tbody tr{border-bottom:1px solid #3341554d}.items-table td{color:#cbd5e1;font-size:.9rem;padding:.75rem 1rem}.text-center{text-align:center}.text-right{text-align:right}.invoice-totals{background:#0f172a80;border:1px solid #334155;border-radius:10px;margin-left:auto;max-width:380px;padding:1.25rem}.totals-row{border-bottom:1px solid #3341554d;display:flex;justify-content:space-between;padding:.6rem 0}.totals-row:last-child{border-bottom:none}.totals-row span{color:#94a3b8;font-size:.9rem}.totals-row strong{color:#e2e8f0;font-size:1rem}.totals-row.total{border-top:2px solid #475569;margin-top:.4rem;padding-top:.75rem}.totals-row.total span,.totals-row.total strong{color:#f1f5f9;font-size:1.15rem;font-weight:700}.totals-row.paid strong{color:#10b981}.totals-row.balance{border-top:2px solid #475569;margin-top:.4rem;padding-top:.75rem}.totals-row.balance strong{color:#ef4444;font-size:1.15rem}.invoice-notes,.invoice-terms{background:#f59e0b14;border:1px solid #f59e0b33;border-radius:10px;margin-top:1.5rem;padding:1.25rem}.invoice-notes h3,.invoice-terms h3{color:#f59e0b;font-size:.85rem;font-weight:700;letter-spacing:.5px;margin:0 0 .6rem;text-transform:uppercase}.invoice-notes p,.invoice-terms p{color:#fbbf24;font-size:.9rem;line-height:1.6;margin:0;opacity:.85}.invoice-detail-page .loading{align-items:center;color:#64748b;display:flex;font-size:1.1rem;justify-content:center;min-height:400px}.payment-actions-section{background:#0ea5e914;border:1px solid #0ea5e933;border-radius:10px;display:flex;gap:.75rem;margin-top:1.5rem;padding:1.25rem}.invoice-detail-page .btn-success{background:#10b981!important;color:#fff!important}.invoice-detail-page .btn-success:hover{background:#059669!important}.payment-history-section{background:#1e293b80;border:1px solid #334155;border-radius:10px;margin-top:1.5rem;padding:1.25rem}.payment-history-section h3{color:#e2e8f0;font-size:1.1rem;margin:0 0 .75rem}.payments-list{display:flex;flex-direction:column;gap:.75rem}.payment-record{background:#0f172a80;border-left:3px solid #10b981;border-radius:8px;padding:.85rem}.payment-info{align-items:center;display:flex;gap:.75rem;margin-bottom:.4rem}.payment-info strong{color:#e2e8f0;font-size:1rem}.payment-method{background:#3b82f626;border-radius:10px;color:#60a5fa;display:inline-block;font-size:.8rem;margin-left:.75rem;padding:.2rem .6rem;text-transform:capitalize}.payment-meta{align-items:center;color:#64748b;display:flex;font-size:.82rem;gap:.75rem;margin-bottom:.4rem}.payment-ref{background:#33415580;border-radius:4px;color:#94a3b8;font-family:monospace;padding:.2rem .4rem}.payment-notes{background:#0f172a4d;border-radius:6px;color:#94a3b8;font-size:.85rem;font-style:italic;margin:.4rem 0 0;padding:.6rem}.modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.invoice-detail-page .modal-content{background:#1e293b!important;border:1px solid #334155;border-radius:12px;max-height:90vh;max-width:500px;overflow-y:auto;padding:1.75rem;width:90%}.invoice-detail-page .modal-content h2{color:#f1f5f9;font-size:1.3rem;margin:0 0 1.25rem}.invoice-detail-page .form-group{margin-bottom:1.25rem}.invoice-detail-page .form-group label{color:#94a3b8;display:block;font-size:.85rem;font-weight:600;margin-bottom:.4rem}.invoice-detail-page .form-group input,.invoice-detail-page .form-group select,.invoice-detail-page .form-group textarea{background:#0f172a;border:1px solid #334155;border-radius:8px;box-sizing:border-box;color:#e2e8f0;font-size:.9rem;padding:.6rem;transition:all .2s;width:100%}.invoice-detail-page .form-group input:focus,.invoice-detail-page .form-group select:focus,.invoice-detail-page .form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626;outline:none}.invoice-detail-page .form-group small{color:#64748b;display:block;font-size:.8rem;margin-top:.4rem}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.invoice-detail-page .btn-secondary{background:#334155!important;color:#e2e8f0!important}.invoice-detail-page .btn-secondary:hover{background:#475569!important}@media (max-width:1024px){.invoice-detail-page{padding:1rem}.invoice-header{flex-wrap:wrap;gap:1rem}.header-actions{flex-wrap:wrap}.invoice-info-grid{grid-template-columns:repeat(2,1fr)}.items-table{font-size:.88rem}}@media (max-width:768px){.invoice-detail-page{padding:.75rem}.invoice-container{padding:1rem}.invoice-header{align-items:stretch;flex-direction:column;gap:.75rem}.header-actions{display:flex;flex-direction:column;gap:.5rem}.invoice-title-section{align-items:flex-start;flex-direction:column;gap:.75rem}.invoice-title-section h1{font-size:1.25rem}.invoice-info-grid{grid-template-columns:1fr}.items-table{font-size:.82rem}.items-table td,.items-table th{padding:.5rem}.modal-content{max-width:400px;padding:1.25rem;width:95%}.payment-history-section{padding:.75rem}.payment-actions-section{flex-direction:column;padding:.75rem}.payment-actions-section .btn{justify-content:center;width:100%}}.quick-estimator-page{background:#0f172a;flex:1 1;min-height:100vh;width:100%}.qe-header-bar{background:linear-gradient(135deg,#451a03,#92400e);border-bottom:1px solid #f59e0b;padding:40px 30px}.qe-header-inner{margin:0 auto;max-width:1280px}.qe-header-bar h1{align-items:center;color:#e2e8f0;display:flex;font-size:32px;font-weight:700;gap:12px;margin:0 0 6px}.qe-header-bar p{color:#fde68a;font-size:15px;margin:0}.qe-container{margin:0 auto;max-width:1280px;padding:30px 20px 60px}.qe-mode-toggle{background:#1e293b;border-radius:12px;display:flex;gap:4px;padding:4px;width:-webkit-fit-content;width:fit-content}.qe-mode-toggle button{align-items:center;background:#0000;border:none;border-radius:10px;color:#94a3b8;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;transition:all .2s}.qe-mode-toggle button.active{background:linear-gradient(135deg,#d97706,#b45309);box-shadow:0 2px 8px #2563eb4d;color:#fff}.qe-ai-address-row{display:flex;gap:12px}.qe-ai-address-field{flex:1 1;position:relative}.qe-ai-addr-icon{color:#fde68a;left:16px;position:absolute;top:50%;transform:translateY(-50%)}.qe-ai-address-field input{background:#0f172a;border:2px solid #334155;border-radius:12px;box-sizing:border-box;color:#e2e8f0;font-size:16px;padding:16px 20px 16px 48px;transition:border-color .2s;width:100%}.qe-ai-address-field input::placeholder{color:#475569}.qe-ai-address-field input:focus{border-color:#f59e0b;outline:none}.qe-btn-analyze{align-items:center;background:linear-gradient(135deg,#d97706,#b45309);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:10px;padding:16px 32px;transition:all .2s;white-space:nowrap}.qe-btn-analyze:hover{box-shadow:0 8px 25px #2563eb4d;transform:translateY(-1px)}.qe-btn-analyze:disabled{cursor:not-allowed;opacity:.7;transform:none}.qe-ai-error{background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;color:#fca5a5;font-size:14px;margin-top:12px;padding:12px 16px}.qe-analyzing{padding:60px 20px;text-align:center}.qe-analyzing h3{color:#e2e8f0;font-size:20px;margin:16px 0 8px}.qe-analyzing p{color:#94a3b8}.qe-satellite-card img{border-radius:10px}.qe-ai-badge{align-items:center;border-radius:6px;display:inline-flex;font-size:11px;font-weight:600;gap:4px;margin-top:8px;padding:4px 10px}.qe-ai-badge.high{background:#10b98126;color:#6ee7b7}.qe-ai-badge.medium{background:#f59e0b26;color:#fbbf24}.qe-ai-badge.low{background:#ef444426;color:#fca5a5}.qe-ai-filled{background:#3b82f61a;border-radius:4px;color:#fde68a;font-size:11px;font-weight:500;margin-left:8px;padding:2px 8px}.qe-layout{grid-gap:28px;align-items:start;display:grid;gap:28px;grid-template-columns:420px 1fr}.qe-inputs-panel,.qe-results-panel{display:flex;flex-direction:column;gap:20px}.qe-card{background:#1e293b;border:1px solid #334155;border-radius:14px;padding:24px}.qe-card h2{color:#e2e8f0;font-size:16px;font-weight:700;margin:0 0 16px}.qe-card h2,.qe-card h3{align-items:center;display:flex;gap:8px}.qe-card h3{color:#cbd5e1;font-size:15px;font-weight:600;margin:0 0 14px}.qe-optional{color:#64748b;font-size:12px;font-weight:400}.qe-field{margin-bottom:14px}.qe-field label{align-items:center;color:#94a3b8;display:flex;font-size:12px;font-weight:600;gap:6px;letter-spacing:.4px;margin-bottom:6px;text-transform:uppercase}.qe-field input[type=number],.qe-field input[type=text],.qe-field select{background:#0f172a;border:1px solid #334155;border-radius:8px;box-sizing:border-box;color:#e2e8f0;font-size:14px;padding:10px 14px;transition:border-color .2s;width:100%}.qe-field input:focus,.qe-field select:focus{border-color:#f59e0b;outline:none}.qe-field input::placeholder{color:#475569}.qe-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr 1fr}.qe-row .qe-field{margin-bottom:0}.qe-row.qe-row-2col{grid-template-columns:1fr 1fr}.qe-roof-types{display:flex;flex-wrap:wrap;gap:8px}.qe-type-btn{background:#0f172a;border:1px solid #334155;border-radius:8px;color:#94a3b8;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s}.qe-type-btn:hover{border-color:#f59e0b;color:#e2e8f0}.qe-type-btn.active{background:#f59e0b;border-color:#f59e0b;box-shadow:0 2px 8px #3b82f659;color:#fff}.qe-complexity{gap:6px}.qe-complexity,.qe-complexity-btn{display:flex;flex-direction:column}.qe-complexity-btn{background:#0f172a;border:1px solid #334155;border-radius:8px;cursor:pointer;gap:2px;padding:10px 14px;text-align:left;transition:all .2s}.qe-complexity-btn strong{color:#94a3b8;font-size:13px}.qe-complexity-btn span{color:#475569;font-size:12px}.qe-complexity-btn:hover{border-color:#f59e0b}.qe-complexity-btn:hover strong{color:#e2e8f0}.qe-complexity-btn.active{background:#3b82f61a;border-color:#f59e0b}.qe-complexity-btn.active strong{color:#fde68a}.qe-complexity-btn.active span{color:#94a3b8}.qe-actions{border-top:1px solid #334155;display:flex;gap:10px;margin-top:8px;padding-top:16px}.qe-btn-primary{align-items:center;background:linear-gradient(135deg,#d97706,#b45309);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:700;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s}.qe-btn-primary:hover{box-shadow:0 6px 20px #2563eb59;transform:translateY(-1px)}.qe-btn-ghost{align-items:center;background:#0000;border:1px solid #334155;border-radius:10px;color:#94a3b8;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:12px 16px;transition:all .2s}.qe-btn-ghost:hover{border-color:#64748b;color:#e2e8f0}.qe-btn-pdf{align-items:center;background:linear-gradient(135deg,#dc2626,#b91c1c);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:700;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s}.qe-btn-pdf:hover{box-shadow:0 6px 20px #dc26264d;transform:translateY(-1px)}.qe-btn-secondary{align-items:center;background:#0000;border:1px solid #334155;border-radius:10px;color:#94a3b8;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s}.qe-btn-secondary:hover{border-color:#64748b;color:#e2e8f0}.qe-btn-reset-full{justify-content:center;margin-top:4px;width:100%}.qe-diagram-card{text-align:center}.qe-diagram-card svg{filter:drop-shadow(0 2px 8px rgba(0,0,0,.3))}.qe-saved-list{display:flex;flex-direction:column;gap:6px}.qe-saved-item{align-items:center;background:#0f172a;border:1px solid #334155;border-radius:8px;display:flex;justify-content:space-between;padding:8px 12px;transition:border-color .2s}.qe-saved-item:hover{border-color:#475569}.qe-saved-link{background:none;border:none;color:#fde68a;cursor:pointer;flex:1 1;font-size:13px;font-weight:500;overflow:hidden;padding:0;text-align:left;text-overflow:ellipsis;white-space:nowrap}.qe-saved-link:hover{color:#fde68a;text-decoration:underline}.qe-btn-icon-sm{align-items:center;background:none;border:none;border-radius:6px;color:#64748b;cursor:pointer;display:flex;height:28px;justify-content:center;transition:all .15s;width:28px}.qe-btn-icon-sm:hover{background:#ef444426;color:#ef4444}.qe-placeholder{align-items:center;color:#475569;display:flex;flex-direction:column;gap:16px;justify-content:center;min-height:400px;text-align:center}.qe-placeholder h3{color:#64748b;font-size:18px;justify-content:center;margin:0}.qe-placeholder p{color:#475569;font-size:14px;margin:0;max-width:280px}.qe-summary-card{background:linear-gradient(135deg,#451a03,#1e293b);border:1px solid #334155;border-radius:14px;overflow:hidden;padding:28px;position:relative}.qe-summary-card:before{background:radial-gradient(circle,#3b82f614 0,#0000 70%);content:"";height:300px;pointer-events:none;position:absolute;right:-30%;top:-50%;width:300px}.qe-summary-top{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.qe-summary-label{color:#64748b;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.qe-summary-price{color:#f1f5f9;font-size:36px;font-weight:800;letter-spacing:-1px}.qe-summary-meta{display:flex;flex-wrap:wrap;gap:8px}.qe-summary-meta span{background:#ffffff0f;border-radius:6px;color:#94a3b8;font-size:12px;font-weight:500;padding:4px 10px}.qe-metrics{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,1fr)}.qe-metric{background:#1e293b;border:1px solid #334155;border-radius:10px;padding:14px 10px;text-align:center}.qe-metric-edit input{background:#0000;border:none;color:#f1f5f9;font-size:22px;font-weight:700;outline:none;padding:0;text-align:center;width:100%}.qe-metric-edit input:focus{color:#fde68a}.qe-metric-label{color:#64748b;display:block;font-size:11px;font-weight:600;letter-spacing:.3px;margin-top:4px;text-transform:uppercase}.qe-material-options{display:flex;flex-direction:column;gap:6px}.qe-mat-option{align-items:center;background:#0f172a;border:2px solid #334155;border-radius:10px;color:#e2e8f0;cursor:pointer;display:flex;font-size:14px;gap:10px;padding:10px 14px;transition:all .15s}.qe-mat-option:hover{border-color:#475569}.qe-mat-option.active{background:#3b82f614;border-color:#f59e0b}.qe-mat-dot{border-radius:50%;flex-shrink:0;height:10px;width:10px}.qe-mat-label{flex:1 1;font-weight:500}.qe-mat-rate{color:#fde68a;font-size:13px;font-weight:600}.qe-boq table{border-collapse:collapse;width:100%}.qe-boq th{border-bottom:1px solid #334155;color:#94a3b8;font-size:11px;font-weight:600;padding:8px 6px;text-align:left;text-transform:uppercase}.qe-boq td{border-bottom:1px solid #33415580;color:#e2e8f0;font-size:13px;padding:10px 6px}.qe-boq td:last-child,.qe-boq td:nth-child(3),.qe-boq th:last-child,.qe-boq th:nth-child(3){text-align:right}.qe-boq tfoot td{border-top:2px solid #f59e0b;color:#fde68a;font-weight:700;padding-top:12px}.qe-cost-item{margin-bottom:16px}.qe-cost-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.qe-cost-item-title{color:#e2e8f0;font-size:14px;font-weight:500}.qe-cost-item-total{color:#fde68a;font-weight:700}.qe-cost-fields{display:flex;gap:12px}.qe-cost-field{flex:1 1}.qe-cost-field label{color:#94a3b8;display:block;font-size:12px;margin-bottom:4px}.qe-cost-field input{background:#0f172a;border:1px solid #334155;border-radius:8px;box-sizing:border-box;color:#e2e8f0;font-size:14px;padding:8px 12px;width:100%}.qe-cost-field input:focus{border-color:#f59e0b;outline:none}.qe-cost-toggle{align-items:center;cursor:pointer;display:flex;gap:8px}.qe-cost-toggle input[type=checkbox]{accent-color:#f59e0b}.qe-scaffold-options{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(4,1fr)}.qe-scaffold-btn{align-items:center;background:#0f172a;border:2px solid #334155;border-radius:8px;color:#94a3b8;cursor:pointer;display:flex;flex-direction:column;font-size:13px;padding:10px 6px;transition:all .15s}.qe-scaffold-btn:hover{border-color:#475569}.qe-scaffold-btn.active{background:#3b82f614;border-color:#f59e0b;color:#e2e8f0}.qe-scaffold-price{color:#fde68a;font-size:11px;margin-top:2px}.qe-margin-presets{display:flex;flex-wrap:wrap;gap:6px}.qe-margin-btn{background:#0f172a;border:2px solid #334155;border-radius:8px;color:#94a3b8;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:all .15s}.qe-margin-btn:hover{border-color:#475569}.qe-margin-btn.active{background:#3b82f614;border-color:#f59e0b;color:#fde68a}.qe-margin-custom{align-items:center;display:flex;position:relative}.qe-margin-input{background:#0f172a;border:2px solid #334155;border-radius:8px;color:#e2e8f0;font-size:14px;font-weight:600;padding:8px 28px 8px 12px;width:72px}.qe-margin-input:focus{border-color:#f59e0b;outline:none}.qe-margin-pct-icon{color:#94a3b8;pointer-events:none;position:absolute;right:10px}.qe-margin-breakdown{background:#0f172a;border-radius:10px;margin-top:16px;padding:14px}.qe-margin-row{color:#cbd5e1;display:flex;font-size:14px;justify-content:space-between;padding:5px 0}.qe-margin-row.markup{color:#fde68a}.qe-margin-row.subtotal{font-weight:600}.qe-margin-row.gst{color:#94a3b8;font-size:13px}.qe-margin-row.total{border-top:2px solid #f59e0b;color:#fde68a;font-size:16px;font-weight:800;margin-top:4px;padding-top:8px}.qe-comparison-table{margin:0 -8px;overflow-x:auto}.qe-comparison-table table{border-collapse:collapse;font-size:13px;width:100%}.qe-comparison-table thead th{border-bottom:1px solid #334155;color:#64748b;font-size:11px;font-weight:700;letter-spacing:.3px;padding:10px;text-align:left;text-transform:uppercase;white-space:nowrap}.qe-comparison-table tbody td{border-bottom:1px solid #33415580;color:#94a3b8;padding:10px;white-space:nowrap}.qe-comparison-table tbody tr:hover{background:#ffffff05}.qe-row-highlight{background:#3b82f60f}.qe-row-highlight td{color:#e2e8f0!important}.qe-mat-name{color:#cbd5e1!important;font-weight:600}.qe-client-price strong{color:#f59e0b}.qe-toggle-header{cursor:pointer;-webkit-user-select:none;user-select:none}.qe-export-actions{display:flex;flex-direction:column;gap:14px}.qe-save-row{display:flex;gap:10px}.qe-save-input{background:#0f172a;border:1px solid #334155;border-radius:8px;color:#e2e8f0;flex:1 1;font-size:14px;padding:10px 14px}.qe-save-input:focus{border-color:#f59e0b;outline:none}.qe-save-input::placeholder{color:#475569}.qe-btn-save{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;padding:10px 18px;transition:all .2s;white-space:nowrap}.qe-btn-save:hover{box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.qe-btn-save.saved{background:#16a34a}.qe-btn-save:disabled{cursor:not-allowed;opacity:.7;transform:none}.qe-export-row{display:flex;gap:10px}@media (max-width:960px){.qe-layout{grid-template-columns:1fr}.qe-row{grid-template-columns:1fr 1fr}.qe-metrics{grid-template-columns:repeat(2,1fr)}.qe-summary-price{font-size:28px}.qe-scaffold-options{grid-template-columns:repeat(2,1fr)}}@media (max-width:560px){.qe-header-bar{padding:28px 16px}.qe-header-bar h1{font-size:24px}.qe-row,.qe-row.qe-row-2col{grid-template-columns:1fr}.qe-metrics{grid-template-columns:repeat(2,1fr)}.qe-export-row,.qe-save-row,.qe-summary-meta{flex-direction:column}.qe-summary-meta{gap:4px}.qe-comparison-table table{font-size:12px}.qe-card{padding:20px 14px}.qe-container{padding:20px 12px 60px}.qe-btn-pdf,.qe-btn-secondary{box-sizing:border-box;font-size:13px;padding:10px 14px;width:100%}.qe-scaffold-options{grid-template-columns:repeat(2,1fr)}}.spin{animation:qe-spin 1s linear infinite}@keyframes qe-spin{to{transform:rotate(1turn)}}.wo-page{background:#0f172a;flex:1 1;min-height:100vh;width:100%}.wo-header-bar{background:linear-gradient(135deg,#2e1065,#581c87);border-bottom:1px solid #7c3aed;padding:40px 30px}.wo-header-inner{margin:0 auto;max-width:1280px}.wo-header-bar h1{align-items:center;color:#ede9fe;display:flex;font-size:32px;font-weight:700;gap:12px;margin:0 0 6px}.wo-header-bar p{color:#a78bfa;font-size:15px;margin:0}.wo-container{margin:0 auto;max-width:1280px;padding:30px 20px 60px}.wo-layout{grid-gap:28px;align-items:start;display:grid;gap:28px;grid-template-columns:420px 1fr}.wo-inputs-panel,.wo-results-panel{display:flex;flex-direction:column;gap:20px}.wo-mode-toggle{background:#1e293b;border-radius:12px;display:flex;gap:4px;padding:4px;width:-webkit-fit-content;width:fit-content}.wo-mode-toggle button{align-items:center;background:#0000;border:none;border-radius:10px;color:#94a3b8;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;transition:all .2s}.wo-mode-toggle button.active{background:linear-gradient(135deg,#8b5cf6,#7c3aed);box-shadow:0 2px 8px #10b9814d;color:#fff}.wo-card{background:#1e293b;border:1px solid #334155;border-radius:14px;padding:24px}.wo-card h2{color:#e2e8f0;font-size:16px;font-weight:700;margin:0 0 16px}.wo-card h2,.wo-card h3{align-items:center;display:flex;gap:8px}.wo-card h3{color:#cbd5e1;font-size:15px;font-weight:600;margin:0 0 14px}.wo-optional{color:#64748b;font-size:12px;font-weight:400}.wo-ai-tag{background:#10b9811a;border-radius:4px;color:#a78bfa;font-size:11px;font-weight:500;margin-left:8px;padding:2px 8px}.wo-field{margin-bottom:14px}.wo-field label{align-items:center;color:#94a3b8;display:flex;font-size:12px;font-weight:600;gap:6px;letter-spacing:.4px;margin-bottom:6px;text-transform:uppercase}.wo-field input,.wo-field select{background:#0f172a;border:1px solid #334155;border-radius:8px;box-sizing:border-box;color:#e2e8f0;font-size:14px;padding:10px 14px;transition:border-color .2s;width:100%}.wo-field input:focus,.wo-field select:focus{border-color:#8b5cf6;outline:none}.wo-field input::placeholder{color:#475569}.wo-field small{color:#64748b;display:block;font-size:11px;margin-top:4px}.wo-row-2{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.wo-row-2 .wo-field{margin-bottom:0}.wo-row-3{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr 1fr}.wo-row-3 .wo-field{margin-bottom:0}.wo-add-row{align-items:flex-end;display:flex;gap:10px}.wo-add-row .wo-field{flex:1 1;margin-bottom:0}.wo-btn-add-cut{align-items:center;background:linear-gradient(135deg,#8b5cf6,#7c3aed);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;height:42px;justify-content:center;padding:10px 16px;transition:all .2s;white-space:nowrap}.wo-btn-add-cut:hover{box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.wo-cuts-list{display:flex;flex-direction:column;gap:6px;margin-top:12px}.wo-cut-item{align-items:center;background:#0f172a;border:1px solid #334155;border-radius:8px;display:flex;justify-content:space-between;padding:10px 14px}.wo-cut-item span{color:#e2e8f0;font-size:14px;font-weight:600}.wo-cut-del{align-items:center;background:none;border:none;border-radius:6px;color:#64748b;cursor:pointer;display:flex;height:28px;justify-content:center;width:28px}.wo-cut-del:hover{background:#ef444426;color:#ef4444}.wo-actions{border-top:1px solid #334155;display:flex;gap:10px;margin-top:8px;padding-top:16px}.wo-btn-primary{align-items:center;background:linear-gradient(135deg,#8b5cf6,#7c3aed);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:700;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s}.wo-btn-primary:hover{box-shadow:0 6px 20px #10b98159;transform:translateY(-1px)}.wo-btn-primary:disabled{cursor:not-allowed;opacity:.6;transform:none}.wo-btn-ghost{align-items:center;background:#0000;border:1px solid #334155;border-radius:10px;color:#94a3b8;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:12px 16px;transition:all .2s}.wo-btn-ghost:hover{border-color:#64748b;color:#e2e8f0}.wo-full-w{justify-content:center;margin-top:4px;width:100%}.wo-ai-addr-row{display:flex;gap:12px}.wo-addr-field{flex:1 1;position:relative}.wo-addr-icon{color:#a78bfa;left:16px;position:absolute;top:50%;transform:translateY(-50%)}.wo-addr-field input{background:#0f172a;border:2px solid #334155;border-radius:12px;box-sizing:border-box;color:#e2e8f0;font-size:16px;padding:16px 20px 16px 48px;transition:border-color .2s;width:100%}.wo-addr-field input::placeholder{color:#475569}.wo-addr-field input:focus{border-color:#8b5cf6;outline:none}.wo-btn-analyze{align-items:center;background:linear-gradient(135deg,#8b5cf6,#7c3aed);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:10px;padding:16px 32px;transition:all .2s;white-space:nowrap}.wo-btn-analyze:hover{box-shadow:0 8px 25px #10b9814d;transform:translateY(-1px)}.wo-btn-analyze:disabled{cursor:not-allowed;opacity:.7;transform:none}.wo-error{background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;color:#fca5a5;font-size:14px;margin-top:12px;padding:12px 16px}.wo-analyzing{padding:60px 20px;text-align:center}.wo-analyzing h3{color:#e2e8f0;font-size:20px;margin:16px 0 8px}.wo-analyzing p{color:#94a3b8}.wo-spin{animation:wo-spin-anim 1s linear infinite}@keyframes wo-spin-anim{to{transform:rotate(1turn)}}.wo-satellite-card img{border-radius:10px;width:100%}.wo-badge{border-radius:6px;display:inline-flex;font-size:11px;font-weight:600;margin-top:8px;padding:4px 10px}.wo-badge.high{background:#10b98126;color:#c4b5fd}.wo-badge.medium{background:#3b82f626;color:#93c5fd}.wo-badge.low{background:#ef444426;color:#fca5a5}.wo-placeholder{align-items:center;color:#475569;display:flex;flex-direction:column;gap:16px;justify-content:center;min-height:400px;text-align:center}.wo-placeholder h3{color:#64748b;font-size:18px;justify-content:center;margin:0}.wo-placeholder p{color:#475569;font-size:14px;margin:0;max-width:280px}.wo-stats-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,1fr)}.wo-stat-card{background:#1e293b;border:1px solid #334155;border-radius:10px;padding:16px;text-align:center}.wo-stat-label{color:#64748b;display:block;font-size:11px;font-weight:600;letter-spacing:.3px;text-transform:uppercase}.wo-stat-value{color:#a78bfa;display:block;font-size:22px;font-weight:800;margin-top:4px}.wo-stat-unit{color:#94a3b8;font-size:13px;font-weight:500}.wo-sheets{display:flex;flex-direction:column;gap:12px;max-height:480px;overflow-y:auto;padding-right:4px}.wo-sheets::-webkit-scrollbar{width:6px}.wo-sheets::-webkit-scrollbar-track{background:#0f172a;border-radius:3px}.wo-sheets::-webkit-scrollbar-thumb{background:#334155;border-radius:3px}.wo-sheets::-webkit-scrollbar-thumb:hover{background:#475569}.wo-sheet{background:#0f172a;border:1px solid #334155;border-radius:10px;padding:14px}.wo-sheet-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.wo-sheet-head strong{color:#e2e8f0;font-size:14px}.wo-sheet-badge{border-radius:6px;font-size:12px;font-weight:700;padding:3px 10px}.wo-sheet-badge.good{background:#10b98126;color:#a78bfa}.wo-sheet-badge.ok{background:#f59e0b26;color:#fbbf24}.wo-sheet-badge.poor{background:#ef444426;color:#f87171}.wo-sheet-cuts{color:#94a3b8;font-size:13px;margin-bottom:10px}.wo-sheet-bar{background:#1e293b;border-radius:6px;display:flex;height:28px;overflow:hidden}.wo-bar-used{background:linear-gradient(90deg,#8b5cf6,#6d28d9)}.wo-bar-used,.wo-bar-waste{align-items:center;color:#fff;display:flex;font-size:10px;font-weight:700;justify-content:center;transition:width .3s}.wo-bar-waste{background:linear-gradient(90deg,#ef4444,#dc2626)}.wo-sheet-stats{color:#64748b;display:flex;font-size:12px;gap:20px;margin-top:8px}.wo-boq table{border-collapse:collapse;width:100%}.wo-boq th{border-bottom:1px solid #334155;color:#94a3b8;font-size:11px;font-weight:600;padding:8px 6px;text-align:left;text-transform:uppercase}.wo-boq td{border-bottom:1px solid #33415580;color:#e2e8f0;font-size:13px;padding:10px 6px}.wo-boq td:last-child,.wo-boq td:nth-child(3),.wo-boq th:last-child,.wo-boq th:nth-child(3){text-align:right}.wo-boq tfoot td{border-top:2px solid #8b5cf6;color:#c4b5fd;font-weight:700;padding-top:12px}.wo-margin-presets{display:flex;flex-wrap:wrap;gap:6px}.wo-margin-btn{background:#0f172a;border:2px solid #334155;border-radius:8px;color:#94a3b8;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:all .15s}.wo-margin-btn:hover{border-color:#475569}.wo-margin-btn.active{background:#10b98114;border-color:#8b5cf6;color:#c4b5fd}.wo-margin-custom{align-items:center;display:flex;position:relative}.wo-margin-input{background:#0f172a;border:2px solid #334155;border-radius:8px;color:#e2e8f0;font-size:14px;font-weight:600;padding:8px 28px 8px 12px;width:72px}.wo-margin-input:focus{border-color:#8b5cf6;outline:none}.wo-margin-pct{color:#94a3b8;pointer-events:none;position:absolute;right:10px}.wo-margin-breakdown{background:#0f172a;border-radius:10px;margin-top:16px;padding:14px}.wo-margin-row{color:#cbd5e1;display:flex;font-size:14px;justify-content:space-between;padding:5px 0}.wo-margin-row.markup{color:#c4b5fd}.wo-margin-row.subtotal{font-weight:600}.wo-margin-row.gst{color:#94a3b8;font-size:13px}.wo-margin-row.total{border-top:2px solid #8b5cf6;color:#c4b5fd;font-size:16px;font-weight:800;margin-top:4px;padding-top:8px}.wo-cost-item{margin-bottom:16px}.wo-cost-header{align-items:center;color:#e2e8f0;display:flex;font-size:14px;font-weight:500;justify-content:space-between;margin-bottom:8px}.wo-cost-total{color:#c4b5fd;font-weight:700}.wo-cost-fields{display:flex;gap:12px}.wo-cost-field{flex:1 1}.wo-cost-field label{color:#94a3b8;display:block;font-size:12px;margin-bottom:4px}.wo-cost-field input{background:#0f172a;border:1px solid #334155;border-radius:8px;box-sizing:border-box;color:#e2e8f0;font-size:14px;padding:8px 12px;width:100%}.wo-cost-field input:focus{border-color:#8b5cf6;outline:none}.wo-notes{background:#10b9810f;border:1px solid #10b98133;border-radius:10px;padding:14px 18px}.wo-notes h4{align-items:center;color:#a78bfa;display:flex;font-size:13px;gap:6px;margin:0 0 8px}.wo-notes ul{margin:0;padding-left:18px}.wo-notes li{color:#a78bfa;font-size:13px;margin:4px 0}.wo-export-actions{display:flex;flex-direction:column;gap:14px}.wo-save-row{display:flex;gap:10px}.wo-save-input{background:#0f172a;border:1px solid #334155;border-radius:8px;color:#e2e8f0;flex:1 1;font-size:14px;padding:10px 14px}.wo-save-input:focus{border-color:#8b5cf6;outline:none}.wo-save-input::placeholder{color:#475569}.wo-export-row{display:flex;gap:10px}.wo-btn-pdf{align-items:center;background:linear-gradient(135deg,#dc2626,#b91c1c);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:700;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s}.wo-btn-pdf:hover{box-shadow:0 6px 20px #dc26264d;transform:translateY(-1px)}.wo-btn-csv{align-items:center;background:#0000;border:1px solid #334155;border-radius:10px;color:#94a3b8;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s}.wo-btn-csv:hover{border-color:#64748b;color:#e2e8f0}.wo-btn-save{align-items:center;background:linear-gradient(135deg,#8b5cf6,#6d28d9);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;padding:10px 18px;transition:all .2s;white-space:nowrap}.wo-btn-save:hover{transform:translateY(-1px)}.wo-btn-save.saved{background:#16a34a}.wo-btn-save:disabled{cursor:not-allowed;opacity:.7;transform:none}.wo-saved-list{display:flex;flex-direction:column;gap:6px}.wo-saved-item{align-items:center;background:#0f172a;border:1px solid #334155;border-radius:8px;display:flex;justify-content:space-between;padding:8px 12px}.wo-saved-link{background:none;border:none;color:#c4b5fd;cursor:pointer;flex:1 1;font-size:13px;font-weight:500;overflow:hidden;padding:0;text-align:left;text-overflow:ellipsis;white-space:nowrap}.wo-saved-link:hover{color:#a78bfa;text-decoration:underline}.wo-btn-icon-sm{align-items:center;background:none;border:none;border-radius:6px;color:#64748b;cursor:pointer;display:flex;height:28px;justify-content:center;width:28px}.wo-btn-icon-sm:hover{background:#ef444426;color:#ef4444}@media (max-width:960px){.wo-layout{grid-template-columns:1fr}.wo-stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:560px){.wo-header-bar{padding:28px 16px}.wo-header-bar h1{font-size:24px}.wo-row-2,.wo-row-3{grid-template-columns:1fr}.wo-stats-grid{grid-template-columns:repeat(2,1fr)}.wo-add-row,.wo-export-row,.wo-save-row{flex-direction:column}.wo-card{padding:20px 14px}}.analytics-page{margin:0 auto;max-width:1400px;padding:30px}.analytics-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.analytics-header h1{color:#e2e8f0;font-size:32px;margin:0}.period-selector{display:flex;gap:10px}.period-selector button{background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;font-weight:500;padding:8px 20px;transition:all .2s}.period-selector button.active{background:#2c5f8d;border-color:#2c5f8d;color:#fff}.period-selector button:hover{border-color:#2c5f8d}.metrics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.metric-card{background:#fff;box-shadow:0 1px 3px #0000001a;gap:16px;padding:24px}.metric-card,.metric-icon{align-items:center;border-radius:12px;display:flex}.metric-icon{flex-shrink:0;height:48px;justify-content:center;width:48px}.metric-content{flex:1 1}.metric-label{color:#6b7280;font-size:14px;margin:0 0 8px}.metric-value{color:#1f2937;font-size:28px;font-weight:700;margin:0 0 4px}.metric-growth{font-size:14px;font-weight:600;margin:0}.metric-detail{color:#6b7280;font-size:13px;margin:0}.chart-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:30px;padding:24px}.chart-section h3{color:#1f2937;margin:0 0 24px}.revenue-chart{align-items:flex-end;display:flex;gap:16px;height:240px;justify-content:space-between;overflow-x:auto;padding:20px 0}.chart-bar-container{align-items:center;display:flex;flex-direction:column;gap:8px;min-width:60px}.chart-bar{background:linear-gradient(0deg,#2c5f8d,#4a7ba7);border-radius:6px 6px 0 0;cursor:pointer;min-height:20px;position:relative;transition:all .3s;width:40px}.chart-bar:hover{opacity:.8}.bar-value{color:#374151;font-size:11px;font-weight:600;left:50%;position:absolute;top:-24px;transform:translateX(-50%);white-space:nowrap}.bar-label{color:#6b7280;font-size:11px;text-align:center;writing-mode:horizontal-tb}.two-column-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-bottom:30px}.status-breakdown,.top-clients{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:24px}.status-breakdown h3,.top-clients h3{color:#1f2937;margin:0 0 20px}.clients-list,.status-list{display:flex;flex-direction:column;gap:12px}.client-item,.status-item{align-items:center;background:#f9fafb;border-radius:8px;display:flex;justify-content:space-between;padding:12px}.client-info,.status-info{display:flex;flex-direction:column;gap:4px}.client-name,.status-name{color:#1f2937;font-weight:600;text-transform:capitalize}.client-projects,.status-count{color:#6b7280;font-size:13px}.client-revenue,.status-value{color:#2c5f8d;font-weight:700}.client-rank{align-items:center;background:#2c5f8d;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-weight:700;height:32px;justify-content:center;width:32px}.invoice-metrics{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:30px;padding:24px}.invoice-metrics h3{color:#1f2937;margin:0 0 20px}.invoice-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.invoice-stat{align-items:center;background:#f9fafb;border-radius:8px;display:flex;gap:12px;padding:16px}.invoice-stat p{color:#6b7280;font-size:13px;margin:0 0 4px}.invoice-stat h4{color:#1f2937;font-size:20px;margin:0}.materials-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:24px}.materials-section h3{color:#1f2937;margin:0 0 20px}.materials-table table{border-collapse:collapse;width:100%}.materials-table th{background:#f9fafb;border-bottom:2px solid #e5e7eb;color:#6b7280;font-size:13px;font-weight:600;padding:12px;text-align:left}.materials-table td{border-bottom:1px solid #e5e7eb;color:#374151;padding:12px}.materials-table tr:hover td{background:#f9fafb}@media (max-width:1024px){.analytics-header{align-items:flex-start;flex-direction:column;gap:12px}.metrics-grid{grid-template-columns:repeat(2,1fr)}.two-column-grid{grid-template-columns:1fr}}@media (max-width:768px){.analytics-page{padding:20px}.analytics-header{align-items:flex-start;flex-direction:column;gap:16px}.metrics-grid,.two-column-grid{grid-template-columns:1fr}.revenue-chart{height:200px}.chart-bar-container{min-width:40px}.chart-bar{width:30px}}.profile-builder{display:flex;flex-direction:column;gap:24px}.profile-templates-header{align-items:center;background:#3b82f614;border:1px solid #3b82f626;border-radius:10px;cursor:pointer;display:flex;justify-content:space-between;padding:12px 16px}.profile-templates-header h3{color:#e2e8f0;font-size:15px;font-weight:600;margin:0}.profile-templates-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}.template-btn{background:#1e293b;border:1px solid #334155;border-radius:10px;cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:14px 12px;text-align:left;transition:all .2s}.template-btn strong{color:#e2e8f0;font-size:13px}.template-btn span{color:#64748b;font-size:11px;line-height:1.3}.template-btn:hover{background:#3b82f614;border-color:#3b82f6}.template-btn.active{background:#3b82f61f;border-color:#3b82f6;box-shadow:0 0 0 1px #3b82f64d}.template-btn.active strong{color:#60a5fa}.profile-preview-container{background:#0f172a;border:1px solid #1e293b;border-radius:12px;overflow:hidden}.profile-preview-header{align-items:center;border-bottom:1px solid #1e293b;display:flex;justify-content:space-between;padding:14px 18px}.profile-preview-header h3{color:#94a3b8;font-size:14px;font-weight:500;margin:0}.profile-stats{display:flex;gap:10px}.stat-pill{align-items:center;background:#1e293b;border-radius:20px;color:#94a3b8;display:inline-flex;font-size:12px;gap:4px;padding:4px 12px}.stat-pill strong{color:#60a5fa}.profile-svg-wrapper{align-items:center;display:flex;justify-content:center;min-height:260px;padding:16px}.profile-svg{background:#0000}.profile-legs-editor{background:#1e293b;border:1px solid #ffffff0f;border-radius:12px;overflow:hidden}.legs-header{align-items:center;border-bottom:1px solid #ffffff0f;display:flex;justify-content:space-between;padding:14px 18px}.legs-header h3{color:#e2e8f0;font-size:14px;font-weight:600;margin:0}.legs-actions{display:flex;gap:8px}.btn-sm{border:none}.btn-outline{background:#0000;border:1px solid #475569;color:#94a3b8}.btn-outline:hover{background:#334155;color:#e2e8f0}.legs-list{display:flex;flex-direction:column;gap:6px;padding:12px}.leg-item{align-items:center;background:#ffffff08;border-radius:8px;display:flex;gap:10px;padding:8px 12px}.leg-bend{background:#f59e0b0f;border-left:3px solid #f59e0b}.leg-segment{background:#3b82f60f;border-left:3px solid #3b82f6}.leg-type-badge{border-radius:4px;flex-shrink:0;font-size:10px;font-weight:700;letter-spacing:.5px;padding:2px 8px;text-transform:uppercase;white-space:nowrap}.bend-badge{background:#f59e0b26;color:#f59e0b}.segment-badge{background:#3b82f626;color:#60a5fa}.leg-field{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.leg-field label{color:#64748b;font-size:10px;letter-spacing:.5px;text-transform:uppercase}.leg-field input{background:#0f172a;border:1px solid #334155;border-radius:6px;color:#e2e8f0;font-size:13px;padding:6px 8px;width:100%}.leg-field input:focus{border-color:#3b82f6;outline:none}.label-input{max-width:120px}.input-with-unit{align-items:center;display:flex}.input-with-unit input{border-bottom-right-radius:0;border-top-right-radius:0;max-width:80px}.input-with-unit .unit{background:#334155;border:1px solid #334155;border-left:none;border-radius:0 6px 6px 0;color:#94a3b8;font-size:11px;padding:6px 8px;white-space:nowrap}.btn-remove-leg{align-items:center;background:#0000;border:1px solid #ef44444d;border-radius:6px;color:#ef4444;cursor:pointer;display:flex;flex-shrink:0;height:28px;justify-content:center;transition:all .15s;width:28px}.btn-remove-leg:hover{background:#ef444426}@media (max-width:1024px){.profile-templates-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}@media (max-width:768px){.profile-templates-grid{grid-template-columns:repeat(2,1fr)}.leg-item{flex-wrap:wrap}.profile-svg-wrapper{overflow-x:auto}.profile-stats{flex-wrap:wrap}}.flashing-designer{background:#0f172a;flex:1 1;margin:0 auto;min-height:100vh;padding:0 0 60px;width:100%}.designer-header{background:#1e293b;border-bottom:1px solid #334155;border-radius:0;margin-bottom:0;padding:36px 30px 28px;text-align:center}.designer-header h1{color:#f1f5f9;font-size:28px;font-weight:700;margin:0 0 8px}.designer-header p{color:#64748b;font-size:15px;margin:0}.designer-navigation{background:#0f172a;border-bottom:1px solid #334155;display:flex;flex-wrap:nowrap;gap:0;justify-content:center;margin:0;overflow-x:auto;padding:0 20px}.designer-navigation button{background:#0000;border:none;border-bottom:3px solid #0000;border-radius:0;color:#64748b;cursor:pointer;font-size:14px;font-weight:600;letter-spacing:.2px;padding:14px 24px;transition:all .2s ease;white-space:nowrap}.designer-navigation button:hover{background:#3b82f60a;color:#94a3b8}.designer-navigation button.active{background:#3b82f60f;border-bottom-color:#3b82f6;color:#3b82f6}.designer-content{background:#0000;border-radius:0;box-shadow:none;margin:0 auto;max-width:1400px;padding:28px 20px}.profile-builder-layout{grid-gap:24px;align-items:start;display:grid;gap:24px;grid-template-columns:1fr 340px}.profile-builder-main{min-width:0}.profile-builder-sidebar{display:flex;flex-direction:column;gap:16px;position:-webkit-sticky;position:sticky;top:80px}.sidebar-card{border:1px solid #ffffff0f}.sidebar-card h3{color:#e2e8f0;font-size:14px;font-weight:600;margin:0 0 14px}.sidebar-summary{background:linear-gradient(135deg,#064e3b,#065f46);border-color:#3b82f633}.summary-row{border-bottom:1px solid #ffffff0f;display:flex;font-size:13px;justify-content:space-between;padding:6px 0}.summary-row span{color:#94a3b8}.summary-row strong{color:#e2e8f0}.summary-row:last-of-type{border-bottom:none}@media (max-width:1024px){.profile-builder-layout{grid-template-columns:1fr}.profile-builder-sidebar{display:grid;grid-template-columns:repeat(2,1fr);position:static}}@media (max-width:768px){.profile-builder-sidebar{grid-template-columns:1fr}}.section-panel h2{color:#f1f5f9;font-size:22px;font-weight:700;margin:0 0 8px}.section-panel>p{color:#64748b;font-size:14px;margin:0 0 24px}.mud-map-section{background:#0f172a80;border:2px dashed #475569;border-radius:12px;margin-top:28px;padding:24px;transition:all .25s ease}.mud-map-section:hover{background:#3b82f60a;border-color:#3b82f6}.mud-map-section h3{color:#e2e8f0;font-size:16px;font-weight:600;margin:0 0 12px}.mud-map-section input[type=file]{background:#0f172a;border:1px solid #334155;border-radius:8px;color:#e2e8f0;cursor:pointer;max-width:400px;padding:10px;width:100%}.mud-map-preview{border:1px solid #334155;border-radius:10px;margin-top:16px;max-width:600px;overflow:hidden}.mud-map-preview img{display:block;height:auto;width:100%}.products-section{margin-bottom:28px}.products-section h3{border-bottom:2px solid #3b82f6;color:#e2e8f0;font-size:18px;font-weight:700;margin:0 0 16px;padding-bottom:12px}.mud-map-hint{background:#f59e0b14;border-left:3px solid #f59e0b;border-radius:6px;color:#fbbf24;font-size:14px;margin:0 0 20px;padding:14px 16px}.save-profile-dialog{background:#0f172a;border:1px solid #334155;border-radius:8px;display:flex;flex-direction:column;gap:8px;margin-top:12px;padding:12px}.save-profile-dialog input{background:#1e293b;border:1px solid #334155;border-radius:6px;color:#e2e8f0;font-size:13px;outline:none;padding:8px 10px;width:100%}.save-profile-dialog input:focus{border-color:#3b82f6}.btn-sm{align-items:center;border-radius:6px;cursor:pointer;display:inline-flex;font-size:12px;font-weight:600;gap:4px;padding:6px 12px;transition:all .15s}.btn-primary-sm{background:#3b82f6;border:none;color:#fff}.btn-primary-sm:hover{background:#2563eb}.saved-profiles-list{display:flex;flex-direction:column;gap:4px;margin-top:8px;max-height:280px;overflow-y:auto}.saved-profile-item{align-items:center;background:#0f172a;border:1px solid #1e293b;border-radius:8px;cursor:pointer;display:flex;gap:8px;padding:10px 12px;transition:all .15s}.saved-profile-item:hover{background:#3b82f60d;border-color:#3b82f6}.saved-profile-info{flex:1 1;min-width:0}.saved-profile-name{color:#e2e8f0;display:block;font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.saved-profile-meta{color:#64748b;display:block;font-size:11px;margin-top:2px}.saved-profile-delete{background:none;border:none;border-radius:4px;color:#475569;cursor:pointer;flex-shrink:0;padding:4px;transition:all .15s}.saved-profile-delete:hover{background:#ef44441a;color:#ef4444}.product-toolbar{background:#0f172a;border:1px solid #1e293b;border-radius:12px;display:flex;flex-direction:column;gap:12px;margin-bottom:24px;padding:16px}.product-search{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:8px;color:#94a3b8;display:flex;gap:10px;padding:10px 14px;transition:border-color .2s}.product-search:focus-within{border-color:#3b82f6}.product-search input{background:#0000;border:none;color:#e2e8f0;flex:1 1;font-size:14px;outline:none}.product-search input::placeholder{color:#475569}.search-clear{background:none;border:none;color:#64748b;cursor:pointer;display:flex;padding:2px}.search-clear:hover{color:#e2e8f0}.product-filters{display:flex;flex-wrap:wrap;gap:6px}.filter-chip{border-radius:20px;font-size:12px;font-weight:500;padding:5px 12px;text-transform:capitalize}.products-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));margin-top:16px}.product-card{background:#1e293b;border:1px solid #334155;border-radius:12px;cursor:pointer;overflow:hidden;padding:0;position:relative;transition:all .25s ease}.product-card:hover{border-color:#3b82f6;box-shadow:0 8px 24px #3b82f61f;transform:translateY(-3px)}.product-card.selected{background:#3b82f614;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f640}.qty-badge{background:#3b82f6;border-radius:50%;box-shadow:0 2px 8px #3b82f666;color:#fff;font-size:13px;font-weight:700;height:28px;position:absolute;right:8px;top:8px;width:28px;z-index:2}.product-image,.qty-badge{align-items:center;display:flex;justify-content:center}.product-image{background:#f8fafc;height:140px;overflow:hidden;padding:8px;width:100%}.product-image img{height:100%;object-fit:contain;width:100%}.product-info{padding:0 16px 14px}.product-name-price{align-items:flex-start;display:flex;gap:8px;justify-content:space-between;margin-top:12px}.product-name-price h4{color:#e2e8f0;font-size:14px;font-weight:600;line-height:1.3;margin:0}.product-price{color:#10b981;flex-shrink:0;font-size:15px;font-weight:700;white-space:nowrap}.product-card p{color:#64748b;font-size:12px;line-height:1.4;margin:4px 0 8px}.product-card .specs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.product-card .specs span{background:#0f172a;border:1px solid #334155;border-radius:6px;color:#94a3b8;font-size:11px;font-weight:500;padding:3px 8px}.qty-controls{background:#0f172a;border:1px solid #334155;border-radius:8px;gap:0;margin-top:4px;overflow:hidden}.qty-btn,.qty-controls{align-items:center;display:flex;justify-content:center}.qty-btn{background:#0000;border:none;color:#94a3b8;cursor:pointer;height:32px;transition:all .15s;width:36px}.qty-btn:hover:not(:disabled){background:#1e293b;color:#e2e8f0}.qty-btn:disabled{cursor:not-allowed;opacity:.3}.qty-btn-add:hover{background:#3b82f626;color:#3b82f6}.qty-value{color:#e2e8f0;font-size:14px;font-weight:600;text-align:center;-webkit-user-select:none;user-select:none;width:40px}.selection-summary-bar{align-items:center;animation:slideUp .3s ease;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172af2;border-top:1px solid #334155;bottom:0;display:flex;gap:16px;justify-content:space-between;left:0;padding:14px 32px;position:fixed;right:0;z-index:100}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.summary-left{align-items:center;color:#94a3b8;display:flex;flex:1 1;gap:12px;min-width:0}.summary-count{color:#e2e8f0;font-weight:600;white-space:nowrap}.summary-items-preview{display:flex;flex-wrap:nowrap;gap:6px;overflow:hidden}.summary-chip{background:#1e293b;border:1px solid #334155;border-radius:16px;color:#94a3b8;font-size:12px;padding:3px 10px;white-space:nowrap}.summary-right{align-items:center;display:flex;flex-shrink:0;gap:14px}.summary-total{color:#10b981;font-size:18px;font-weight:700}.summary-total small{color:#64748b;font-size:11px;font-weight:400;margin-left:2px}.summary-clear-btn{background:#0000;border:1px solid #475569;border-radius:8px;color:#94a3b8;cursor:pointer;font-size:13px;font-weight:500;padding:8px 16px;transition:all .2s}.summary-clear-btn:hover{background:#ef44441a;border-color:#ef4444;color:#ef4444}.summary-continue-btn{background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 20px;transition:all .2s}.summary-continue-btn:hover{background:#2563eb}.mud-map-upload-section{background:#3b82f60a;border:2px dashed #475569;border-radius:12px;margin-bottom:20px;padding:24px;transition:all .25s ease}.mud-map-upload-section:hover{border-color:#3b82f6}.mud-map-upload-section h3{color:#60a5fa;font-size:16px;font-weight:600;margin:0 0 14px}.file-input{background:#0f172a;border:1px solid #334155;border-radius:8px;color:#e2e8f0;cursor:pointer;max-width:400px;padding:10px;width:100%}.upload-success{background:#10b9811a;border-left:3px solid #10b981;border-radius:6px;color:#34d399;font-size:14px;font-weight:600;margin-top:14px;padding:12px 16px}.flashing-designer .canvas-toolbar{align-items:center;background:#0f172a;border:1px solid #334155;border-radius:12px;display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px;padding:14px 18px}.flashing-designer .toolbar-section{align-items:center;display:flex;gap:5px}.flashing-designer .toolbar-divider{background:#334155;height:32px;margin:0 6px;width:1px}.flashing-designer .canvas-toolbar button{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:8px;color:#94a3b8;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:8px 12px;transition:all .2s ease}.flashing-designer .canvas-toolbar button:hover:not(:disabled){background:#3b82f61a;border-color:#3b82f6;color:#60a5fa}.flashing-designer .canvas-toolbar button.active{background:#3b82f6;border-color:#3b82f6;box-shadow:0 0 8px #3b82f64d;color:#fff}.flashing-designer .canvas-toolbar button:disabled{cursor:not-allowed;opacity:.35}.flashing-designer .canvas-info{background:#1e293b;border:1px solid #334155;border-radius:8px;color:#94a3b8;display:flex;flex-direction:row;flex-wrap:wrap;font-size:13px;gap:16px;margin-bottom:10px;padding:10px 14px}.flashing-designer .canvas-info span{align-items:center;display:flex;gap:5px}.flashing-designer .canvas-container{background:#fff;border:1px solid #334155;border-radius:12px;box-shadow:0 2px 8px #00000026;display:flex;justify-content:center;overflow:hidden;width:100%}.flashing-designer .canvas-container canvas{display:block;height:auto;max-width:100%}.colorbond-palette-section{background:#1e293b;border:1px solid #334155;border-radius:14px;margin-bottom:32px;padding:24px}.colorbond-palette-section h3{color:#e2e8f0;font-size:18px;font-weight:700;margin:0 0 6px}.colorbond-palette-section p{color:#64748b;font-size:14px;margin:0 0 20px}.color-palette-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.color-palette-item{align-items:center;background:#0f172a;border:1px solid #334155;border-radius:10px;cursor:pointer;display:flex;flex-direction:column;padding:10px;transition:all .2s ease}.color-palette-item:hover{border-color:#475569;box-shadow:0 4px 12px #0000004d;transform:translateY(-2px)}.color-swatch{border:1px solid #475569;border-radius:8px;box-shadow:inset 0 2px 4px #0003;height:60px;margin-bottom:8px;width:100%}.color-name{color:#e2e8f0;font-size:12px;font-weight:600;margin-bottom:2px;text-align:center}.color-finish{color:#64748b;font-size:11px;text-transform:capitalize}.flashing-detail-form{background:#1e293b;border:1px solid #334155;border-radius:12px;margin-bottom:16px;padding:24px}.flashing-detail-form h3{border-bottom:1px solid #334155;color:#e2e8f0;font-size:16px;font-weight:600;margin:0 0 20px;padding-bottom:12px}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:16px}.flashing-designer .form-group{display:flex;flex-direction:column}.flashing-designer .form-group label{color:#94a3b8;font-size:13px;font-weight:600;letter-spacing:.3px;margin-bottom:6px;text-transform:uppercase}.flashing-designer .form-group input,.flashing-designer .form-group select,.flashing-designer .form-group textarea{background:#0f172a;border:1px solid #334155;border-radius:8px;color:#e2e8f0;font-size:14px;padding:10px 14px;transition:border-color .2s ease}.flashing-designer .form-group input:focus,.flashing-designer .form-group select:focus,.flashing-designer .form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61f;outline:none}.flashing-designer .form-group input::placeholder,.flashing-designer .form-group textarea::placeholder{color:#475569}.form-group select option{background:#1e293b;color:#e2e8f0}.flashing-designer .form-group textarea{min-height:80px;resize:vertical}.color-preview{border:1px solid #475569;border-radius:8px;height:36px;margin-top:8px;width:100%}.total-summary{background:linear-gradient(135deg,#064e3b,#065f46);border:1px solid #334155;border-radius:12px;margin-top:28px;padding:20px;text-align:center}.total-summary h3{color:#f1f5f9;font-size:22px;font-weight:700;margin:0}.order-type-selector{background:#1e293b;border:1px solid #334155;border-radius:10px;display:flex;gap:20px;margin-bottom:24px;padding:16px 20px}.order-type-selector label{align-items:center;color:#94a3b8;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:10px}.order-type-selector input[type=radio]{accent-color:#3b82f6;cursor:pointer;height:18px;width:18px}.contact-form,.delivery-method,.site-details-form{margin-bottom:24px}.contact-form h3,.delivery-method h3,.site-details-form h3{border-bottom:1px solid #334155;color:#e2e8f0;font-size:17px;font-weight:700;margin:0 0 16px;padding-bottom:12px}.delivery-method{background:#1e293b;border:1px solid #334155;border-radius:12px;padding:20px}.delivery-method label{align-items:center;color:#94a3b8;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:10px;margin-bottom:10px}.delivery-method input[type=radio]{accent-color:#3b82f6;cursor:pointer;height:18px;width:18px}.order-actions{margin-top:32px;text-align:center}.pricing-section{background:#1e293b;border:1px solid #334155;border-radius:14px;margin-top:28px;padding:28px}.pricing-section h2{border-bottom:2px solid #3b82f6;color:#f1f5f9;font-size:20px;font-weight:700;margin-bottom:20px;padding-bottom:14px}.quote-header{background:#0f172a;border:1px solid #334155;border-radius:10px;margin-bottom:24px;padding:16px}.quote-header p{color:#94a3b8;font-size:14px;margin:4px 0}.quote-header p strong{color:#e2e8f0}.quote-table{border-collapse:collapse;font-size:14px;margin-bottom:24px;width:100%}.quote-table th{background:#0f172a;border-bottom:1px solid #334155;color:#94a3b8;font-size:12px;font-weight:700;letter-spacing:.3px;padding:12px;text-align:left;text-transform:uppercase}.quote-table td:last-child,.quote-table th:last-child{text-align:right}.quote-table td{border-bottom:1px solid #33415580;color:#94a3b8;padding:12px}.quote-table tr:hover{background:#3b82f608}.quote-table .subtotal-row{background:#3b82f60a}.quote-table .subtotal-row td{color:#e2e8f0}.quote-table .total-row{background:#3b82f6;color:#fff;font-size:16px}.quote-table .total-row td{border:none;color:#fff;padding:14px 12px}.quote-summary{background:#3b82f60f;border:1px solid #3b82f626;border-radius:10px;display:flex;gap:32px;padding:16px}.summary-item{display:flex;flex-direction:column;gap:4px}.summary-item span{color:#64748b;font-size:13px}.summary-item strong{color:#60a5fa;font-size:20px;font-weight:700}.pricing-buttons{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}.flashing-designer .btn-danger,.flashing-designer .btn-primary,.flashing-designer .btn-secondary{align-items:center;border:none;border-radius:10px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:all .2s ease}.flashing-designer .btn-primary{background:#3b82f6!important;color:#fff!important}.flashing-designer .btn-primary:hover{background:#2563eb!important;box-shadow:0 4px 16px #3b82f659;transform:translateY(-1px)}.flashing-designer .btn-primary:disabled{background:#475569!important;box-shadow:none;cursor:not-allowed;transform:none}.flashing-designer .btn-secondary{background:#0f172a!important;border:1px solid #334155!important;color:#94a3b8!important}.flashing-designer .btn-secondary:hover{background:#1e293b!important;border-color:#475569!important;color:#e2e8f0!important}.flashing-designer .btn-danger{background:#ef44441a!important;border:1px solid #ef444440!important;color:#ef4444!important}.flashing-designer .btn-danger:hover{background:#ef4444!important;color:#fff!important}.flashing-designer .btn-large{font-size:15px;font-weight:700;padding:14px 32px}@media (max-width:968px){.designer-header h1{font-size:22px}.designer-navigation{-webkit-overflow-scrolling:touch;justify-content:flex-start;overflow-x:auto;padding:0 12px;scrollbar-width:none}.designer-navigation::-webkit-scrollbar{display:none}.designer-navigation button{font-size:13px;min-width:-webkit-max-content;min-width:max-content;padding:12px 16px}.designer-content{padding:20px 14px}.products-grid{grid-template-columns:1fr}.product-filters{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.selection-summary-bar{flex-direction:column;gap:10px;padding:12px 16px}.summary-items-preview{display:none}.summary-right{justify-content:space-between;width:100%}.form-row{grid-template-columns:1fr}.flashing-designer .canvas-toolbar{flex-direction:column;gap:8px}.flashing-designer .canvas-toolbar button{justify-content:center;width:100%}.pricing-buttons{flex-direction:column}.pricing-buttons .btn-primary,.pricing-buttons .btn-secondary{justify-content:center;width:100%}.color-palette-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.quote-summary{flex-direction:column;gap:12px}}@media (max-width:480px){.flashing-designer{overflow-x:hidden}.designer-header{padding:24px 16px 20px}.designer-header h1{font-size:20px}.designer-header p{font-size:13px}.designer-navigation button{font-size:12px;padding:10px 14px}.designer-content{padding:16px 12px}.section-panel h2{font-size:18px}.mud-map-section{padding:16px}}.satellite-lookup-section{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:16px;padding:16px 20px}.satellite-lookup-section h3{align-items:center;color:#1e293b;display:flex;font-size:15px;font-weight:600;margin:0 0 4px}.address-lookup-row{align-items:center;display:flex;gap:8px}.address-lookup-row input{background:#fff;border:1px solid #cbd5e1;border-radius:8px;flex:1 1;font-size:14px;padding:10px 14px;transition:border-color .15s}.address-lookup-row input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f;outline:none}.address-lookup-row .btn-primary{align-items:center;background:#2563eb;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;padding:10px 18px;transition:background .15s;white-space:nowrap}.address-lookup-row .btn-primary:hover:not(:disabled){background:#1d4ed8}.address-lookup-row .btn-primary:disabled{cursor:not-allowed;opacity:.55}.spin{animation:spin-anim 1s linear infinite}@keyframes spin-anim{to{transform:rotate(1turn)}}.overlay-controls{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.overlay-controls .btn-sm{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:6px;color:#475569;cursor:pointer;display:inline-flex;font-size:12px;font-weight:600;gap:5px;padding:6px 12px;transition:all .15s}.overlay-controls .btn-sm:hover{background:#f1f5f9;border-color:#94a3b8}.overlay-controls .btn-sm.active{background:#2563eb;border-color:#2563eb;color:#fff}.edge-count{color:#64748b;font-size:12px;padding-left:4px}.flashing-calc{background:#0a0f1a;min-height:100vh;padding-bottom:40px}.flashing-header{background:linear-gradient(135deg,#4c0519,#881337);border-bottom:1px solid #1e293b;padding:28px 24px 20px}.flashing-header-inner{margin:0 auto;max-width:1100px}.flashing-header h1{align-items:center;color:#e2e8f0;display:flex;font-size:28px;font-weight:800;gap:10px;margin:0 0 6px}.flashing-header p{color:#64748b;font-size:14px;margin:0}.flashing-content{margin:0 auto;max-width:1100px;padding:20px 24px}.fl-mode-toggle{background:#111827;border:1px solid #1e293b;border-radius:12px;display:flex;gap:4px;margin-bottom:20px;padding:4px}.fl-mode-toggle button{align-items:center;background:#0000;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:12px 16px;transition:all .2s}.fl-mode-toggle button:hover{background:#ffffff08;color:#cbd5e1}.fl-mode-toggle button.active{background:linear-gradient(135deg,#f43f5e,#e11d48);color:#0f172a}.fl-address-section{background:#111827;border:1px solid #1e293b;border-radius:12px;margin-bottom:20px;padding:20px}.fl-address-row{display:flex;gap:10px}.fl-address-field{flex:1 1;position:relative}.fl-address-field .addr-icon{color:#64748b;left:14px;position:absolute;top:50%;transform:translateY(-50%)}.fl-address-field input{background:#0f172a;border:1px solid #334155;border-radius:10px;color:#e2e8f0;font-size:15px;outline:none;padding:14px 14px 14px 42px;transition:border-color .15s;width:100%}.fl-address-field input:focus{border-color:#f43f5e}.fl-btn-analyze{align-items:center;background:linear-gradient(135deg,#f43f5e,#e11d48);border:none;border-radius:10px;color:#0f172a;cursor:pointer;display:flex;font-size:15px;font-weight:700;gap:8px;padding:14px 28px;transition:opacity .2s;white-space:nowrap}.fl-btn-analyze:hover{opacity:.9}.fl-btn-analyze:disabled{cursor:not-allowed;opacity:.6}.fl-error{background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;color:#f87171;font-size:13px;margin-top:10px;padding:10px 14px}.fl-analyzing{background:#111827;border:1px solid #1e293b;border-radius:12px;padding:60px 20px;text-align:center}.fl-analyzing .spin{animation:fl-spin 1s linear infinite}@keyframes fl-spin{to{transform:rotate(1turn)}}.fl-analyzing h3{color:#f43f5e;font-size:18px;margin:16px 0 8px}.fl-analyzing p{color:#64748b;font-size:13px}.fl-manual-section{display:flex;flex-direction:column;gap:16px}.fl-manual-specs{background:#111827;border:1px solid #1e293b;border-radius:12px;padding:16px}.fl-manual-specs h3{align-items:center;color:#e2e8f0;display:flex;font-size:14px;gap:8px;margin:0 0 12px}.fl-manual-fields{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(4,1fr)}.fl-manual-field label{color:#64748b;display:block;font-size:11px;margin-bottom:4px}.fl-manual-field input{-moz-appearance:textfield;background:#0f172a;border:1px solid #334155;border-radius:8px;color:#e2e8f0;font-size:14px;outline:none;padding:10px 12px;width:100%}.fl-manual-field input::-webkit-inner-spin-button,.fl-manual-field input::-webkit-outer-spin-button{-webkit-appearance:none}.fl-manual-field input:focus{border-color:#f43f5e}.fl-profile-section{background:#111827;border:1px solid #1e293b;border-radius:12px;padding:16px}.fl-profile-top{margin-bottom:12px}.fl-profile-top h3{align-items:center;color:#e2e8f0;display:flex;font-size:14px;gap:8px;margin:0 0 4px}.fl-profile-top p{color:#64748b;font-size:12px;margin:0}.fl-profile-add-bar{background:#f59e0b0f;border:1px solid #f59e0b33;border-radius:8px;color:#f43f5e;justify-content:space-between;margin-top:12px;padding:10px 14px}.fl-btn-add-profile,.fl-profile-add-bar{align-items:center;display:flex;font-size:13px}.fl-btn-add-profile{background:#f43f5e;border:none;border-radius:6px;color:#0f172a;cursor:pointer;font-weight:700;gap:6px;padding:8px 16px;transition:opacity .15s}.fl-btn-add-profile:hover{opacity:.9}.fl-manual-quick{background:#111827;border:1px solid #1e293b;border-radius:12px;padding:16px}.fl-manual-quick h3{align-items:center;color:#e2e8f0;display:flex;font-size:14px;gap:8px;margin:0 0 10px}.fl-btn-generate{align-items:center;background:linear-gradient(135deg,#f43f5e,#e11d48);border:none;border-radius:12px;color:#0f172a;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:10px;justify-content:center;padding:16px;transition:opacity .2s;width:100%}.fl-btn-generate:hover{opacity:.9}.fl-btn-generate:disabled{cursor:not-allowed;opacity:.5}.fl-summary{background:#111827;border:1px solid #1e293b;border-radius:12px;margin-bottom:20px;padding:16px}.fl-summary-header{align-items:center;color:#f43f5e;display:flex;font-size:15px;font-weight:700;gap:8px;margin-bottom:12px}.fl-edit-hint{align-items:center;color:#64748b;display:flex;font-size:12px;font-weight:400;gap:4px;margin-left:auto}.fl-cache-badge,.fl-runs-badge{border-radius:4px;font-size:11px;font-weight:500;padding:2px 8px}.fl-cache-badge{background:#f43f5e1a;border:1px solid #f43f5e33;color:#f43f5e}.fl-runs-badge{background:#22c55e1a;border:1px solid #22c55e33;color:#22c55e}.fl-btn-reanalyze{align-items:center;background:#0000;border:1px solid #475569;border-radius:6px;color:#94a3b8;cursor:pointer;display:flex;font-size:12px;gap:6px;margin-bottom:8px;padding:6px 12px;transition:all .15s}.fl-btn-reanalyze:hover{border-color:#f43f5e;color:#f43f5e}.fl-stats{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(4,1fr)}.fl-stat{background:#1e293b;border:1px solid #334155;border-radius:8px;padding:10px 4px 8px;text-align:center;transition:border-color .15s}.fl-stat:focus-within,.fl-stat:hover{border-color:#f43f5e}.fl-stat-input-wrap{align-items:baseline;display:flex;gap:2px;justify-content:center}.fl-stat-input{-moz-appearance:textfield;background:#0000;border:none;color:#e2e8f0;font-size:18px;font-weight:700;outline:none;text-align:center;width:50px}.fl-stat-input::-webkit-inner-spin-button,.fl-stat-input::-webkit-outer-spin-button{-webkit-appearance:none}.fl-stat-label,.fl-stat-unit{color:#64748b;font-size:11px}.fl-stat-label{display:block;margin-top:4px}.fl-results-layout{grid-gap:20px;display:grid;gap:20px;grid-template-columns:340px 1fr}.fl-config-column,.fl-quote-column{display:flex;flex-direction:column;gap:16px}.fl-satellite-card{background:#111827;border:1px solid #1e293b;border-radius:12px;overflow:hidden}.fl-satellite-card img{height:260px;object-fit:cover;width:100%}.fl-satellite-info{color:#64748b;font-size:12px;padding:12px}.fl-satellite-info strong{color:#e2e8f0}.fl-card{background:#111827;border:1px solid #1e293b;border-radius:12px;padding:16px}.fl-card h3{align-items:center;color:#e2e8f0;display:flex;font-size:14px;gap:8px;margin:0 0 12px}.fl-card h3 .fl-total-count{color:#64748b;font-size:12px;font-weight:400;margin-left:auto}.fl-items-list{display:flex;flex-direction:column;gap:6px}.fl-item-row{align-items:center;background:#0f172a;border-radius:8px;display:flex;gap:8px;padding:8px 10px}.fl-item-type{background:#1e293b;border:1px solid;border-radius:4px;flex-shrink:0;font-size:10px;font-weight:700;padding:4px 6px;text-align:center;text-transform:uppercase;width:60px}.fl-item-label{background:#0000;border:1px solid #0000;border-radius:4px;color:#cbd5e1;flex:1 1;font-size:13px;min-width:0;outline:none;padding:4px 6px}.fl-item-label:focus,.fl-item-label:hover{background:#1e293b;border-color:#475569}.fl-item-length{-moz-appearance:textfield;background:#0000;border:1px solid #0000;border-radius:4px;color:#f43f5e;font-size:13px;font-weight:700;outline:none;padding:4px;text-align:right;width:52px}.fl-item-length::-webkit-inner-spin-button,.fl-item-length::-webkit-outer-spin-button{-webkit-appearance:none}.fl-item-length:focus,.fl-item-length:hover{background:#1e293b;border-color:#475569}.fl-item-unit{color:#64748b;font-size:11px;min-width:14px}.fl-item-girth{background:#1e293b;border-radius:4px;color:#94a3b8;font-size:10px;padding:2px 6px}.fl-item-remove{background:none;border:none;border-radius:4px;color:#475569;cursor:pointer;display:flex;padding:4px;transition:all .15s}.fl-item-remove:hover{background:#ef44441a;color:#ef4444}.fl-add-buttons{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.fl-add-btn{align-items:center;background:#0000;border:1px dashed #475569;border-radius:6px;color:#94a3b8;cursor:pointer;display:flex;flex:1 1 30%;font-size:12px;gap:4px;justify-content:center;padding:7px 6px;text-transform:capitalize;transition:all .15s}.fl-add-btn:hover{border-color:#f43f5e;color:#f43f5e}.fl-material-options{display:flex;flex-direction:column;gap:6px}.fl-material-option{align-items:center;background:#0f172a;border:1px solid #334155;border-radius:8px;color:#94a3b8;cursor:pointer;display:flex;font-size:13px;gap:10px;padding:10px 12px;text-align:left;transition:all .15s}.fl-material-option:hover{border-color:#f43f5e;color:#e2e8f0}.fl-material-option.selected{background:#f59e0b14;border-color:#f43f5e;color:#f43f5e}.fl-mat-dot{border-radius:50%;flex-shrink:0;height:10px;width:10px}.fl-mat-name{flex:1 1}.fl-mat-price{color:#e2e8f0;font-size:14px;font-weight:700}.fl-material-option.selected .fl-mat-price{color:#f43f5e}.fl-total-card{background:linear-gradient(135deg,#f43f5e,#e11d48);border-radius:12px;padding:16px 20px;text-align:center}.fl-total-card .fl-total-label{color:#00000080;font-size:12px;font-weight:600;text-transform:uppercase}.fl-total-card .fl-total-amount{color:#0f172a;font-size:32px;font-weight:800;margin:4px 0}.fl-total-card .fl-total-detail{color:#0006;font-size:12px}.fl-comparison-section{background:#111827;border:1px solid #1e293b;border-radius:12px;padding:16px}.fl-comparison-section h3{color:#e2e8f0;font-size:14px;margin:0 0 12px}.fl-comparison-bars{display:flex;flex-direction:column;gap:8px}.fl-comparison-bar{background:#0f172a;border:1px solid #0000;border-radius:8px;cursor:pointer;padding:8px 10px;transition:all .15s}.fl-comparison-bar:hover{border-color:#334155}.fl-comparison-bar.selected{background:#f59e0b0d;border-color:#f43f5e}.fl-comp-info{align-items:center;display:flex;gap:8px;margin-bottom:6px}.fl-comp-dot{border-radius:50%;flex-shrink:0;height:8px;width:8px}.fl-comp-name{color:#cbd5e1;flex:1 1;font-size:13px}.fl-comp-price{color:#e2e8f0;font-size:13px;font-weight:700}.fl-comp-track{background:#1e293b;border-radius:3px;height:6px;overflow:hidden}.fl-comp-fill{border-radius:3px;height:100%;transition:width .3s ease}.fl-boq table{border-collapse:collapse;font-size:13px;width:100%}.fl-boq th{background:#1e293b;color:#94a3b8;font-size:11px;font-weight:600;padding:8px 10px;text-align:left;text-transform:uppercase}.fl-boq td{border-bottom:1px solid #1e293b;color:#cbd5e1;padding:8px 10px}.fl-boq td:last-child{color:#f43f5e;font-weight:700;text-align:right}.fl-boq tfoot td{border-top:2px solid #334155;color:#f43f5e;font-size:14px;font-weight:700}.fl-project-costs{background:#111827;border:1px solid #1e293b;border-radius:12px;padding:16px}.fl-project-costs h3{align-items:center;color:#e2e8f0;display:flex;font-size:14px;gap:8px;margin:0 0 12px}.fl-cost-item{background:#0f172a;border:1px solid #1e293b;border-radius:10px;margin-bottom:10px;padding:12px}.fl-cost-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.fl-cost-item-title{color:#cbd5e1;font-size:13px;font-weight:600}.fl-cost-item-total{color:#f43f5e;font-size:14px;font-weight:700}.fl-cost-item-fields{display:flex;gap:10px;margin-bottom:6px}.fl-cost-field{flex:1 1}.fl-cost-field.wide{flex:2 1}.fl-cost-field label{color:#64748b;display:block;font-size:11px;margin-bottom:4px}.fl-cost-field input{-moz-appearance:textfield;background:#1e293b;border:1px solid #334155;border-radius:6px;color:#e2e8f0;font-size:13px;outline:none;padding:8px 10px;width:100%}.fl-cost-field input::-webkit-inner-spin-button,.fl-cost-field input::-webkit-outer-spin-button{-webkit-appearance:none}.fl-cost-field input:focus{border-color:#f43f5e}.fl-cost-toggle{align-items:center;cursor:pointer;display:flex;gap:8px}.fl-cost-toggle input[type=checkbox]{accent-color:#f43f5e;height:16px;width:16px}.fl-scaffold-options{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(2,1fr);margin-bottom:6px}.fl-scaffold-btn{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:6px;color:#94a3b8;cursor:pointer;display:flex;font-size:12px;justify-content:space-between;padding:8px 10px;transition:all .15s}.fl-scaffold-btn:hover{border-color:#f43f5e;color:#e2e8f0}.fl-scaffold-btn.active{background:#f59e0b14;border-color:#f43f5e;color:#f43f5e}.fl-scaffold-price{font-weight:700}.fl-project-summary{background:#1e293b;border-radius:8px;padding:12px}.fl-project-summary-row{align-items:center;color:#94a3b8;display:flex;font-size:13px;justify-content:space-between;padding:5px 0}.fl-project-summary-row span:last-child{color:#e2e8f0;font-weight:600}.fl-project-summary-row.total{border-top:1px solid #475569;color:#e2e8f0;font-weight:700;margin-top:6px;padding-top:8px}.fl-project-summary-row.total span:last-child{color:#f43f5e;font-size:15px}.fl-margin-section{background:#111827;border:1px solid #1e293b;border-radius:12px;padding:16px}.fl-margin-section h3{align-items:center;color:#e2e8f0;display:flex;font-size:14px;gap:8px;margin:0 0 12px}.fl-margin-presets{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.fl-margin-btn{background:#0f172a;border:1px solid #334155;border-radius:6px;color:#94a3b8;cursor:pointer;font-size:13px;font-weight:600;padding:6px 14px;transition:all .15s}.fl-margin-btn:hover{border-color:#f43f5e;color:#f43f5e}.fl-margin-btn.active{background:#f43f5e;border-color:#f43f5e;color:#0f172a}.fl-margin-custom{align-items:center;display:flex;position:relative}.fl-margin-input{-moz-appearance:textfield;background:#0f172a;border:1px solid #334155;border-radius:6px;color:#e2e8f0;font-size:13px;font-weight:600;outline:none;padding:6px 24px 6px 10px;width:60px}.fl-margin-input::-webkit-inner-spin-button,.fl-margin-input::-webkit-outer-spin-button{-webkit-appearance:none}.fl-margin-input:focus{border-color:#f43f5e}.fl-margin-pct-icon{color:#64748b;position:absolute;right:8px}.fl-margin-breakdown{background:#0f172a;border:1px solid #1e293b;border-radius:8px;margin-top:12px;padding:12px}.fl-margin-row{align-items:center;color:#94a3b8;display:flex;font-size:13px;justify-content:space-between;padding:5px 0}.fl-margin-row span:last-child{color:#e2e8f0}.fl-margin-row.markup,.fl-margin-row.markup span:last-child{color:#22c55e}.fl-margin-row.subtotal{color:#cbd5e1;font-weight:600}.fl-margin-row.subtotal span:last-child{color:#e2e8f0}.fl-margin-row.gst{color:#64748b;font-size:12px}.fl-margin-row.total{border-top:1px solid #334155;color:#f43f5e;font-size:15px;font-weight:700;margin-top:6px;padding-top:8px}.fl-margin-row.total span:last-child{color:#f43f5e}.fl-actions{display:flex;gap:10px}.fl-btn-order,.fl-btn-pdf,.fl-btn-save{align-items:center;border-radius:10px;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:700;gap:8px;justify-content:center;padding:14px 16px;transition:all .2s}.fl-btn-pdf{background:#f43f5e;border:none;color:#0f172a}.fl-btn-pdf:hover{background:#d97706}.fl-btn-order{background:#0000;border:2px solid #22c55e;color:#22c55e}.fl-btn-order:hover{background:#22c55e14}.fl-btn-save{background:#1e293b;border:2px solid #334155;color:#e2e8f0}.fl-btn-save:hover{border-color:#f43f5e;color:#f43f5e}.fl-btn-save:disabled{cursor:not-allowed;opacity:.7}.fl-btn-save.saved{background:#22c55e14;border-color:#22c55e;color:#22c55e}.spin{animation:fl-spin 1s linear infinite}.fl-modal-backdrop{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.fl-modal{background:#111827;border:1px solid #1e293b;border-radius:16px;max-height:85vh;max-width:520px;overflow-y:auto;padding:24px;width:100%}.fl-modal h2{align-items:center;color:#e2e8f0;display:flex;font-size:18px;gap:8px;margin:0 0 16px}.fl-order-type-toggle{background:#0f172a;border-radius:8px;display:flex;gap:4px;margin-bottom:16px;padding:3px}.fl-order-type-toggle button{align-items:center;background:#0000;border:none;border-radius:6px;color:#64748b;cursor:pointer;display:flex;flex:1 1;font-size:13px;font-weight:600;gap:6px;justify-content:center;padding:10px;transition:all .15s}.fl-order-type-toggle button.active{background:#f43f5e;color:#0f172a}.fl-order-summary{background:#f59e0b0f;border:1px solid #f59e0b26;border-radius:8px;color:#f43f5e;display:flex;font-size:13px;font-weight:600;gap:12px;margin-bottom:16px;padding:10px 14px}.fl-modal-section{margin-bottom:14px}.fl-modal-section label{color:#94a3b8;display:block;font-size:12px;font-weight:500;margin-bottom:4px}.fl-modal-section input,.fl-modal-section textarea{background:#0f172a;border:1px solid #334155;border-radius:8px;color:#e2e8f0;font-family:inherit;font-size:14px;margin-bottom:8px;outline:none;padding:10px 12px;resize:vertical;width:100%}.fl-modal-section input:focus,.fl-modal-section textarea:focus{border-color:#f43f5e}.fl-delivery-toggle{background:#0f172a;border-radius:6px;display:flex;gap:4px;padding:3px}.fl-delivery-toggle button{background:#0000;border:none;border-radius:4px;color:#64748b;cursor:pointer;flex:1 1;font-size:13px;padding:8px;transition:all .15s}.fl-delivery-toggle button.active{background:#1e293b;color:#e2e8f0}.fl-modal-actions{display:flex;gap:10px;margin-top:16px}.fl-modal-btn{align-items:center;border-radius:8px;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:700;gap:8px;justify-content:center;padding:12px;transition:all .15s}.fl-modal-btn.primary{background:#f43f5e;border:none;color:#0f172a}.fl-modal-btn.primary:hover{background:#d97706}.fl-modal-btn.primary:disabled{cursor:not-allowed;opacity:.6}.fl-modal-btn.secondary{background:#0000;border:1px solid #334155;color:#94a3b8}.fl-modal-btn.secondary:hover{border-color:#64748b;color:#e2e8f0}.fl-modal-success{color:#22c55e;padding:24px 0;text-align:center}.fl-modal-success h3{color:#e2e8f0;margin:12px 0 8px}.fl-modal-success p{color:#94a3b8;font-size:14px;margin-bottom:20px}@media (max-width:900px){.fl-bottom-grid,.fl-results-layout{grid-template-columns:1fr}.fl-stats{grid-template-columns:repeat(2,1fr)}.fl-scaffold-options{grid-template-columns:1fr}.fl-manual-fields{grid-template-columns:repeat(2,1fr)}.fl-actions{flex-wrap:wrap}.flashing-content{padding:16px}}.fl-mudmap-upload{border-top:1px solid #1e293b;margin-top:16px;padding-top:16px}.fl-mudmap-header{align-items:center;color:#94a3b8;display:flex;font-size:13px;font-weight:600;gap:6px;margin-bottom:10px}.fl-mudmap-header em{color:#64748b;font-weight:400}.fl-mudmap-dropzone{align-items:center;background:#0f172a80;border:2px dashed #334155;border-radius:10px;color:#64748b;cursor:pointer;display:flex;flex-direction:column;font-size:13px;gap:6px;padding:24px;text-align:center;transition:all .15s}.fl-mudmap-dropzone:hover{background:#f59e0b08;border-color:#f43f5e;color:#94a3b8}.fl-mudmap-dropzone em{color:#475569;font-size:11px}.fl-mudmap-preview{background:#0f172a;border:1px solid #1e293b;border-radius:10px;overflow:hidden}.fl-mudmap-preview img{background:#0a0f1a;max-height:200px;object-fit:contain;width:100%}.fl-mudmap-info{align-items:center;color:#94a3b8;display:flex;font-size:12px;justify-content:space-between;padding:8px 12px}.fl-mudmap-remove{align-items:center;background:#0000;border:1px solid #475569;border-radius:4px;color:#ef4444;cursor:pointer;display:flex;font-size:11px;gap:4px;padding:4px 10px;transition:all .15s}.fl-mudmap-remove:hover{background:#ef444414;border-color:#ef4444}.fl-mudmap-results-img{background:#0a0f1a;border:1px solid #1e293b;border-radius:8px;max-height:180px;object-fit:contain;width:100%}.fl-mudmap-note{background:#22c55e0f;border:1px solid #22c55e26;border-radius:6px;color:#22c55e;font-size:12px;margin-top:8px;padding:8px 12px}.fl-bottom-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.fl-bottom-left,.fl-bottom-right{display:flex;flex-direction:column;gap:16px}.fl-rhs h3{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.fl-rhs-scroll{max-height:320px;overflow-y:auto;padding-right:4px;scrollbar-color:#334155 #0000;scrollbar-width:thin}.fl-rhs-scroll::-webkit-scrollbar{width:5px}.fl-rhs-scroll::-webkit-scrollbar-track{background:#0000}.fl-rhs-scroll::-webkit-scrollbar-thumb{background:#334155;border-radius:4px}.fl-rhs-scroll::-webkit-scrollbar-thumb:hover{background:#475569}.fl-rhs-rec{background:#22c55e14;border:1px solid #22c55e26;border-radius:4px;color:#22c55e;font-size:11px;font-weight:500;margin-left:auto;padding:2px 8px}.fl-rhs-subtitle{color:#64748b;font-size:12px;font-weight:600;letter-spacing:.05em;margin:8px 0 6px;text-transform:uppercase}.fl-rhs-items{display:flex;flex-direction:column;gap:6px}.fl-rhs-item{align-items:center;background:#0f172a;border:1px solid #1e293b;border-radius:8px;display:flex;justify-content:space-between;padding:10px 12px;transition:all .15s}.fl-rhs-item.selected{background:#f59e0b0a;border-color:#f43f5e}.fl-rhs-item-info{display:flex;flex-direction:column;gap:2px;min-width:0}.fl-rhs-item-name{color:#e2e8f0;font-size:13px;font-weight:600}.fl-rhs-item-desc{color:#64748b;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fl-rhs-item-price{color:#f43f5e;font-size:12px;font-weight:700}.fl-rhs-qty-controls{align-items:center;display:flex;flex-shrink:0;gap:4px}.fl-rhs-qty-controls button{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:6px;color:#94a3b8;cursor:pointer;display:flex;height:28px;justify-content:center;transition:all .15s;width:28px}.fl-rhs-qty-controls button:hover:not(:disabled){border-color:#f43f5e;color:#f43f5e}.fl-rhs-qty-controls button:disabled{cursor:not-allowed;opacity:.3}.fl-rhs-qty{color:#e2e8f0;font-size:14px;font-weight:700;text-align:center;width:28px}.fl-rhs-empty{background:#0f172a;border-radius:8px;color:#475569;font-size:13px;padding:16px;text-align:center}.fl-rhs-total{background:#1e293b;border-radius:6px;color:#f43f5e;display:flex;font-size:13px;font-weight:700;gap:16px;margin-top:8px;padding:10px 12px}.gutter-calc{background:#0f172a;min-height:100vh}.gutter-header{background:linear-gradient(135deg,#0c4a6e,#164e63);border-bottom:1px solid #155e75;padding:40px 30px}.gutter-header-inner{margin:0 auto;max-width:1200px}.gutter-header h1{align-items:center;color:#e2e8f0;display:flex;font-size:32px;font-weight:700;gap:12px;margin:0 0 6px}.gutter-header p{color:#94a3b8;font-size:15px;margin:0}.gutter-content{margin:0 auto;max-width:1200px;padding:30px 20px 60px}.address-section{margin-bottom:24px}.address-input-row{display:flex;gap:12px}.address-field{flex:1 1;position:relative}.address-icon{color:#06b6d4;left:16px;position:absolute;top:50%;transform:translateY(-50%)}.address-input{background:#1e293b;border:2px solid #334155;border-radius:12px;box-sizing:border-box;color:#e2e8f0;font-size:16px;padding:16px 20px 16px 48px;transition:border-color .2s;width:100%}.address-input::placeholder{color:#475569}.address-input:focus{border-color:#06b6d4;outline:none}.btn-analyze{align-items:center;background:linear-gradient(135deg,#06b6d4,#0891b2);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:10px;padding:16px 32px;transition:all .2s;white-space:nowrap}.btn-analyze:hover{box-shadow:0 8px 25px #06b6d44d;transform:translateY(-1px)}.btn-analyze:disabled{cursor:not-allowed;opacity:.7;transform:none}.gutter-error{background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;color:#fca5a5;font-size:14px;margin-top:12px;padding:12px 16px}.analyzing-state{color:#94a3b8;padding:100px 20px;text-align:center}.analyzing-state h3{color:#e2e8f0;font-size:22px;margin:20px 0 8px}.analyzing-state p{font-size:15px}.spin{animation:spin 1s linear infinite}.ai-summary{background:linear-gradient(135deg,#06b6d41a,#06b6d40d);border:1px solid #06b6d440;border-radius:14px;margin-bottom:24px;padding:20px 24px}.ai-summary-header{align-items:center;color:#22d3ee;display:flex;font-size:15px;font-weight:700;gap:8px;margin-bottom:16px}.ai-edit-hint{align-items:center;color:#64748b;display:flex;font-size:12px;font-weight:400;gap:4px;margin-left:auto}.cache-badge,.runs-badge{border-radius:4px;font-size:11px;font-weight:500;padding:2px 8px}.cache-badge{background:#22d3ee1a;border:1px solid #22d3ee33;color:#22d3ee}.runs-badge{background:#22c55e1a;border:1px solid #22c55e33;color:#22c55e}.btn-reanalyze{align-items:center;background:#0000;border:1px solid #475569;border-radius:6px;color:#94a3b8;cursor:pointer;display:flex;font-size:12px;gap:6px;margin-bottom:8px;padding:6px 12px;transition:all .15s}.btn-reanalyze:hover{border-color:#f59e0b;color:#f59e0b}.ai-stats-row{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(6,1fr)}.ai-stat{display:flex;flex-direction:column;text-align:center}.ai-stat.editable{background:#1e293b;border:1px solid #334155;border-radius:8px;padding:10px 4px 8px;transition:border-color .15s}.ai-stat.editable:focus-within,.ai-stat.editable:hover{border-color:#22d3ee}.ai-stat-input-wrap{align-items:baseline;display:flex;gap:2px;justify-content:center}.ai-stat-input{-moz-appearance:textfield;background:#0000;border:none;color:#e2e8f0;font-size:20px;font-weight:700;outline:none;padding:0;text-align:center;width:58px}.ai-stat-input::-webkit-inner-spin-button,.ai-stat-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ai-stat-unit{color:#64748b;font-size:11px;font-weight:500}.ai-stat-label{color:#64748b;font-size:11px;margin-top:4px}.results-layout{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 400px}.config-column{display:flex;flex-direction:column;gap:16px}.sat-preview{border:1px solid #334155;border-radius:12px;overflow:hidden}.sat-preview img{display:block;width:100%}.config-card{background:#1e293b;border:1px solid #334155;border-radius:12px;padding:20px}.config-card h3{align-items:center;color:#e2e8f0;display:flex;font-size:16px;font-weight:600;gap:8px;margin:0 0 14px}.gutter-runs-list{display:flex;flex-direction:column;gap:6px}.gutter-run-item{align-items:center;background:#0f172a;border-radius:8px;display:flex;gap:8px;padding:8px 10px}.editable-run .run-label-input{background:#0000;border:1px solid #0000;border-radius:4px;color:#cbd5e1;flex:1 1;font-size:13px;min-width:0;outline:none;padding:4px 6px}.editable-run .run-label-input:focus,.editable-run .run-label-input:hover{background:#1e293b;border-color:#475569}.run-field{align-items:center;display:flex;gap:3px}.run-num-input{-moz-appearance:textfield;background:#0000;border:1px solid #0000;border-radius:4px;color:#22d3ee;font-size:13px;font-weight:700;outline:none;padding:4px;text-align:right;width:52px}.run-num-input.small{width:36px}.run-num-input::-webkit-inner-spin-button,.run-num-input::-webkit-outer-spin-button{-webkit-appearance:none}.run-num-input:focus,.run-num-input:hover{background:#1e293b;border-color:#475569}.run-unit{color:#64748b;font-size:11px;min-width:16px}.run-remove{background:none;border:none;border-radius:4px;color:#475569;cursor:pointer;display:flex;padding:4px;transition:all .15s}.run-remove:hover{background:#ef44441a;color:#ef4444}.run-add-btn{align-items:center;background:#0000;border:1px dashed #475569;border-radius:8px;color:#94a3b8;cursor:pointer;display:flex;font-size:13px;gap:6px;justify-content:center;margin-top:6px;padding:8px;transition:all .15s;width:100%}.run-add-btn:hover{border-color:#22d3ee;color:#22d3ee}.runs-total{color:#64748b;font-size:12px;font-weight:400;margin-left:auto}.extras-card .extras-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.extra-field label{color:#94a3b8;display:block;font-size:12px;margin-bottom:4px}.extra-field input{-moz-appearance:textfield;background:#0f172a;border:1px solid #334155;border-radius:6px;color:#e2e8f0;font-size:14px;outline:none;padding:8px 10px;width:100%}.extra-field input:focus{border-color:#22d3ee}.extra-field input::-webkit-inner-spin-button,.extra-field input::-webkit-outer-spin-button{-webkit-appearance:none}.leafguard-options,.material-options,.profile-options{display:flex;flex-direction:column;gap:8px}.material-option,.profile-option{align-items:center;background:#0f172a;border:2px solid #334155;border-radius:10px;color:#cbd5e1;cursor:pointer;display:flex;font-size:14px;gap:12px;padding:12px 16px;text-align:left;transition:all .15s;width:100%}.material-option:hover,.profile-option:hover{border-color:#475569}.material-option.selected,.profile-option.selected{background:#06b6d414;border-color:#06b6d4}.mat-dot{border-radius:50%;flex-shrink:0;height:12px;width:12px}.mat-name{color:#e2e8f0;flex:1 1;font-weight:600}.mat-price{color:#06b6d4;font-weight:600}.profile-name{color:#e2e8f0;flex:1 1;font-weight:600}.profile-cap{color:#64748b;font-size:13px}.btn-advanced{align-items:center;background:none;border:1px solid #334155;border-radius:10px;color:#94a3b8;cursor:pointer;display:flex;font-size:14px;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s;width:100%}.btn-advanced:hover{border-color:#475569;color:#e2e8f0}.advanced-section{background:#1e293b;border:1px solid #334155;border-radius:12px;padding:20px}.override-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr)}.override-field label{color:#94a3b8;display:block;font-size:12px;font-weight:600;margin-bottom:4px}.override-field input{background:#0f172a;border:1px solid #334155;border-radius:8px;box-sizing:border-box;color:#e2e8f0;font-size:14px;padding:10px 14px;width:100%}.override-field input:focus{border-color:#06b6d4;outline:none}.quote-column{align-self:start;display:flex;flex-direction:column;gap:16px;position:-webkit-sticky;position:sticky;top:20px}.total-card{background:linear-gradient(135deg,#164e63,#0c4a6e);border:1px solid #155e75;border-radius:16px;padding:28px 24px;text-align:center}.total-label{color:#67e8f9;font-size:14px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.total-amount{color:#fff;font-size:48px;font-weight:800;line-height:1;margin:8px 0}.total-material{color:#a5f3fc;font-size:14px}.comparison-section{background:#1e293b;border:1px solid #334155;border-radius:12px;padding:20px}.comparison-section h3{color:#e2e8f0;font-size:15px;font-weight:600;margin:0 0 14px}.comparison-bars{display:flex;flex-direction:column;gap:10px}.comparison-bar{border-radius:6px;cursor:pointer;padding:8px 0;transition:background .15s}.comparison-bar:hover{background:#ffffff08}.comparison-bar.selected{background:#06b6d40f}.comp-info{align-items:center;display:flex;gap:8px;margin-bottom:6px;padding:0 4px}.comp-dot{border-radius:50%;flex-shrink:0;height:10px;width:10px}.comp-name{color:#cbd5e1;flex:1 1;font-size:13px;font-weight:500}.comp-price{color:#e2e8f0;font-size:14px;font-weight:700}.comp-track{background:#0f172a;border-radius:3px;height:6px;overflow:hidden}.comp-fill{border-radius:3px;height:100%;transition:width .4s ease}.boq-section{background:#1e293b;border:1px solid #334155;border-radius:12px;padding:20px}.boq-section h3{color:#e2e8f0;font-size:15px;font-weight:600;margin:0 0 12px}.boq-table{border-collapse:collapse;font-size:13px;width:100%}.boq-table th{border-bottom:1px solid #334155;color:#64748b;font-size:11px;letter-spacing:.5px;padding:8px 10px;text-align:left;text-transform:uppercase}.boq-table td{border-bottom:1px solid #33415580;color:#cbd5e1;padding:8px 10px}.boq-table td:last-child,.boq-table th:last-child{text-align:right}.boq-table tfoot td{border-bottom:none;border-top:2px solid #334155;color:#22d3ee;font-size:15px}.quote-actions{display:flex;gap:10px}.btn-pdf{align-items:center;background:#06b6d4;border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;flex:1 1;font-size:15px;font-weight:700;gap:8px;justify-content:center;padding:14px 24px;transition:background .2s}.btn-pdf:hover{background:#0891b2}.btn-save{align-items:center;background:#1e293b;border:2px solid #334155;border-radius:10px;color:#e2e8f0;cursor:pointer;display:flex;flex:1 1;font-size:15px;font-weight:700;gap:8px;justify-content:center;padding:14px 24px;transition:all .2s}.btn-save:hover{border-color:#22d3ee;color:#22d3ee}.btn-save:disabled{cursor:not-allowed;opacity:.7}.btn-save.saved{background:#22c55e14;border-color:#22c55e;color:#22c55e}.project-costs-section{background:#0f172a;border:1px solid #1e293b;border-radius:12px;display:flex;flex-direction:column;gap:12px;padding:18px}.project-costs-section h3{align-items:center;color:#e2e8f0;display:flex;font-size:14px;gap:8px;margin:0}.cost-item{background:#1e293b;border:1px solid #334155;border-radius:8px;padding:12px}.cost-item-header{align-items:center;display:flex;justify-content:space-between}.cost-item-title{color:#cbd5e1;font-size:13px;font-weight:600}.cost-item-total{color:#22d3ee;font-size:14px;font-weight:700}.cost-item-fields{display:flex;gap:10px;margin-top:10px}.cost-field{flex:1 1}.cost-field.wide{flex:2 1}.cost-field label{color:#64748b;display:block;font-size:11px;margin-bottom:4px}.cost-field input{-moz-appearance:textfield;background:#0f172a;border:1px solid #475569;border-radius:6px;color:#e2e8f0;font-size:13px;outline:none;padding:7px 10px;width:100%}.cost-field input:focus{border-color:#22d3ee}.cost-field input::-webkit-inner-spin-button,.cost-field input::-webkit-outer-spin-button{-webkit-appearance:none}.cost-item-note{color:#64748b;font-size:11px;font-style:italic;margin-top:6px}.cost-toggle{align-items:center;cursor:pointer;display:flex;gap:8px}.cost-toggle input[type=checkbox]{accent-color:#22d3ee;height:16px;width:16px}.scaffold-options{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(4,1fr);margin-top:10px}.scaffold-btn{align-items:center;background:#0000;border:1px solid #475569;border-radius:6px;color:#94a3b8;cursor:pointer;display:flex;flex-direction:column;font-size:11px;gap:2px;padding:8px 4px;transition:all .15s}.scaffold-btn:hover{border-color:#22d3ee;color:#22d3ee}.scaffold-btn.active{background:#22d3ee;border-color:#22d3ee;color:#0f172a}.scaffold-price{font-size:12px;font-weight:700}.project-summary{background:#1e293b;border:1px solid #475569;border-radius:8px;display:flex;flex-direction:column;gap:4px;padding:12px}.project-summary-row{color:#94a3b8;display:flex;font-size:12px;justify-content:space-between}.project-summary-row.total{border-top:1px solid #475569;color:#22d3ee;font-size:14px;font-weight:700;margin-top:4px;padding-top:8px}.margin-section{background:#1e293b;border:1px solid #334155;border-radius:12px;padding:18px}.margin-section h3{align-items:center;color:#e2e8f0;display:flex;font-size:14px;gap:8px;margin:0 0 12px}.margin-presets{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.margin-btn{background:#0000;border:1px solid #475569;border-radius:8px;color:#94a3b8;cursor:pointer;font-size:13px;font-weight:600;padding:6px 14px;transition:all .15s}.margin-btn:hover{border-color:#22d3ee;color:#22d3ee}.margin-btn.active{background:#22d3ee;border-color:#22d3ee;color:#0f172a}.margin-custom{align-items:center;display:flex;margin-left:auto;position:relative}.margin-input{background:#0f172a;border:1px solid #475569;border-radius:8px;color:#e2e8f0;font-size:13px;font-weight:600;padding:6px 26px 6px 10px;text-align:right;width:64px}.margin-input:focus{border-color:#22d3ee;outline:none}.margin-pct-icon{color:#64748b;pointer-events:none;position:absolute;right:8px}.margin-breakdown{border-top:1px solid #334155;display:flex;flex-direction:column;gap:6px;margin-top:14px;padding-top:12px}.margin-row{color:#94a3b8;display:flex;font-size:13px;justify-content:space-between}.margin-row.markup{color:#22d3ee}.margin-row.subtotal{color:#cbd5e1}.margin-row.gst{color:#64748b;font-size:12px}.margin-row.total{border-top:1px solid #475569;color:#22d3ee;font-size:16px;font-weight:700;margin-top:4px;padding-top:8px}@media (max-width:900px){.results-layout{grid-template-columns:1fr}.quote-column{position:static}.ai-stats-row{grid-template-columns:repeat(3,1fr)}.override-grid{grid-template-columns:1fr}}@media (max-width:640px){.address-input-row{flex-direction:column}.ai-stats-row{grid-template-columns:repeat(2,1fr)}.gutter-header h1{font-size:24px}}.pitch-calc-page{background:#0f172a;flex:1 1;min-height:100vh;width:100%}.pc-header-bar{background:linear-gradient(135deg,#450a0a,#7f1d1d);border-bottom:1px solid #ef4444;padding:40px 30px}.pc-header-inner{margin:0 auto;max-width:1280px}.pc-header-bar h1{align-items:center;color:#e2e8f0;display:flex;font-size:32px;font-weight:700;gap:12px;margin:0 0 6px}.pc-header-bar p{color:#fca5a5;font-size:15px;margin:0}.pc-container{margin:0 auto;max-width:1280px;padding:30px 20px 60px}.pc-layout{grid-gap:28px;align-items:start;display:grid;gap:28px;grid-template-columns:420px 1fr}.pc-inputs-panel,.pc-results-panel{display:flex;flex-direction:column;gap:20px}.pc-mode-toggle{background:#1e293b;border-radius:12px;display:flex;gap:4px;padding:4px;width:-webkit-fit-content;width:fit-content}.pc-mode-toggle button{align-items:center;background:#0000;border:none;border-radius:10px;color:#94a3b8;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;transition:all .2s}.pc-mode-toggle button.active{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 2px 8px #d977064d;color:#fff}.pc-card{background:#1e293b;border:1px solid #334155;border-radius:14px;padding:24px}.pc-card h2{color:#e2e8f0;font-size:16px;font-weight:700;margin:0 0 16px}.pc-card h2,.pc-card h3{align-items:center;display:flex;gap:8px}.pc-card h3{color:#cbd5e1;font-size:15px;font-weight:600;margin:0 0 14px}.pc-optional{color:#64748b;font-size:12px;font-weight:400}.pc-ai-tag{background:#f59e0b1a;border-radius:4px;color:#f59e0b;font-size:11px;font-weight:500;margin-left:8px;padding:2px 8px}.pc-field{margin-bottom:14px}.pc-field label{align-items:center;color:#94a3b8;display:flex;font-size:12px;font-weight:600;gap:6px;letter-spacing:.4px;margin-bottom:6px;text-transform:uppercase}.pc-field input,.pc-field select{background:#0f172a;border:1px solid #334155;border-radius:8px;box-sizing:border-box;color:#e2e8f0;font-size:14px;padding:10px 14px;transition:border-color .2s;width:100%}.pc-field input:focus,.pc-field select:focus{border-color:#f59e0b;outline:none}.pc-field input::placeholder{color:#475569}.pc-row-2{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.pc-row-2 .pc-field{margin-bottom:0}.pc-method-btns{display:flex;flex-wrap:wrap;gap:6px}.pc-method-btns button{background:#0f172a;border:1px solid #334155;border-radius:8px;color:#94a3b8;cursor:pointer;font-size:13px;font-weight:600;padding:8px 14px;transition:all .2s}.pc-method-btns button:hover{border-color:#f59e0b;color:#e2e8f0}.pc-method-btns button.active{background:#f59e0b;border-color:#f59e0b;box-shadow:0 2px 8px #f59e0b4d;color:#fff}.pc-actions{border-top:1px solid #334155;display:flex;gap:10px;margin-top:8px;padding-top:16px}.pc-btn-primary{align-items:center;background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:700;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s}.pc-btn-primary:hover{box-shadow:0 6px 20px #d9770659;transform:translateY(-1px)}.pc-btn-ghost{align-items:center;background:#0000;border:1px solid #334155;border-radius:10px;color:#94a3b8;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:12px 16px;transition:all .2s}.pc-btn-ghost:hover{border-color:#64748b;color:#e2e8f0}.pc-full-w{justify-content:center;margin-top:4px;width:100%}.pc-btn-pdf{align-items:center;background:linear-gradient(135deg,#dc2626,#b91c1c);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:700;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s}.pc-btn-pdf:hover{box-shadow:0 6px 20px #dc26264d;transform:translateY(-1px)}.pc-btn-csv{align-items:center;background:#0000;border:1px solid #334155;border-radius:10px;color:#94a3b8;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s}.pc-btn-csv:hover{border-color:#64748b;color:#e2e8f0}.pc-btn-save{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;padding:10px 18px;transition:all .2s;white-space:nowrap}.pc-btn-save:hover{transform:translateY(-1px)}.pc-btn-save.saved{background:#16a34a}.pc-btn-save:disabled{cursor:not-allowed;opacity:.7;transform:none}.pc-ai-addr-row{display:flex;gap:12px}.pc-addr-field{flex:1 1;position:relative}.pc-addr-icon{color:#f59e0b;left:16px;position:absolute;top:50%;transform:translateY(-50%)}.pc-addr-field input{background:#0f172a;border:2px solid #334155;border-radius:12px;box-sizing:border-box;color:#e2e8f0;font-size:16px;padding:16px 20px 16px 48px;transition:border-color .2s;width:100%}.pc-addr-field input::placeholder{color:#475569}.pc-addr-field input:focus{border-color:#f59e0b;outline:none}.pc-btn-analyze{align-items:center;background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:10px;padding:16px 32px;transition:all .2s;white-space:nowrap}.pc-btn-analyze:hover{box-shadow:0 8px 25px #d977064d;transform:translateY(-1px)}.pc-btn-analyze:disabled{cursor:not-allowed;opacity:.7;transform:none}.pc-error{background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;color:#fca5a5;font-size:14px;margin-top:12px;padding:12px 16px}.pc-analyzing{padding:60px 20px;text-align:center}.pc-analyzing h3{color:#e2e8f0;font-size:20px;margin:16px 0 8px}.pc-analyzing p{color:#94a3b8}.pc-badge{border-radius:6px;display:inline-flex;font-size:11px;font-weight:600;margin-top:8px;padding:4px 10px}.pc-badge.high{background:#10b98126;color:#6ee7b7}.pc-badge.medium{background:#f59e0b26;color:#fca5a5}.pc-badge.low{background:#ef444426;color:#fca5a5}.pc-placeholder{align-items:center;color:#475569;display:flex;flex-direction:column;gap:16px;justify-content:center;min-height:400px;text-align:center}.pc-placeholder h3{color:#64748b;font-size:18px;justify-content:center;margin:0}.pc-placeholder p{color:#475569;font-size:14px;margin:0;max-width:280px}.pc-conv-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,1fr)}.pc-conv-card{background:#1e293b;border:1px solid #334155;border-radius:10px;padding:16px 10px;text-align:center}.pc-conv-label{color:#64748b;display:block;font-size:11px;font-weight:600;letter-spacing:.3px;text-transform:uppercase}.pc-conv-value{color:#f59e0b;display:block;font-size:22px;font-weight:800;margin-top:4px}.pc-info-strip{display:flex;flex-wrap:wrap;gap:10px}.pc-info-tag{border-radius:8px;font-size:13px;font-weight:600;padding:8px 16px}.pc-info-tag.cat-flat{background:#94a3b826;color:#94a3b8}.pc-info-tag.cat-low{background:#3b82f626;color:#60a5fa}.pc-info-tag.cat-medium,.pc-info-tag.cat-standard{background:#10b98126;color:#6ee7b7}.pc-info-tag.cat-steep{background:#f59e0b26;color:#fca5a5}.pc-info-tag.cat-very-steep{background:#ef444426;color:#fca5a5}.pc-info-tag.walk-safe{background:#10b98126;color:#6ee7b7}.pc-info-tag.walk-moderate{background:#3b82f626;color:#60a5fa}.pc-info-tag.walk-caution{background:#f59e0b26;color:#fca5a5}.pc-info-tag.walk-danger{background:#ef444426;color:#fca5a5}.pc-specs-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.pc-spec{background:#0f172a;border-radius:10px;padding:12px}.pc-spec-label{color:#94a3b8;display:block;font-size:12px}.pc-spec-value{color:#e2e8f0;display:block;font-size:18px;font-weight:700;margin-top:2px}.pc-mat-bars{display:flex;flex-direction:column;gap:8px}.pc-mat-bar-row{align-items:center;display:flex;gap:8px;padding:6px 0}.pc-mat-bar-row.disabled{opacity:.35}.pc-mat-bar-name{color:#cbd5e1;flex-shrink:0;font-size:12px;font-weight:500;width:140px}.pc-mat-bar-track{background:#0f172a;border-radius:5px;flex:1 1;height:10px;overflow:visible;position:relative}.pc-mat-bar-fill{border-radius:5px;height:100%;opacity:.6;position:absolute;top:0}.pc-mat-bar-marker{background:#f59e0b;border-radius:1px;height:16px;position:absolute;top:-3px;width:2px}.pc-mat-bar-range{color:#64748b;flex-shrink:0;font-size:11px;text-align:right;width:70px}.pc-boq table{border-collapse:collapse;width:100%}.pc-boq th{border-bottom:1px solid #334155;color:#94a3b8;font-size:11px;font-weight:600;padding:8px 6px;text-align:left;text-transform:uppercase}.pc-boq td{border-bottom:1px solid #33415580;color:#e2e8f0;font-size:13px;padding:10px 6px}.pc-boq td:last-child,.pc-boq td:nth-child(3),.pc-boq th:last-child,.pc-boq th:nth-child(3){text-align:right}.pc-boq tfoot td{border-top:2px solid #f59e0b;color:#fca5a5;font-weight:700;padding-top:12px}.pc-cost-item{margin-bottom:16px}.pc-cost-header{align-items:center;color:#e2e8f0;display:flex;font-size:14px;font-weight:500;justify-content:space-between;margin-bottom:8px}.pc-cost-total{color:#fca5a5;font-weight:700}.pc-cost-fields{display:flex;gap:12px}.pc-cost-field{flex:1 1}.pc-cost-field label{color:#94a3b8;display:block;font-size:12px;margin-bottom:4px}.pc-cost-field input{background:#0f172a;border:1px solid #334155;border-radius:8px;box-sizing:border-box;color:#e2e8f0;font-size:14px;padding:8px 12px;width:100%}.pc-cost-field input:focus{border-color:#f59e0b;outline:none}.pc-cost-toggle{align-items:center;color:#e2e8f0;cursor:pointer;display:flex;font-size:14px;gap:8px}.pc-cost-toggle input[type=checkbox]{accent-color:#f59e0b}.pc-scaffold-opts{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(4,1fr)}.pc-scaffold-btn{align-items:center;background:#0f172a;border:2px solid #334155;border-radius:8px;color:#94a3b8;cursor:pointer;display:flex;flex-direction:column;font-size:13px;padding:10px 6px;transition:all .15s}.pc-scaffold-btn:hover{border-color:#475569}.pc-scaffold-btn.active{background:#f59e0b14;border-color:#f59e0b;color:#e2e8f0}.pc-scaffold-price{color:#fca5a5;font-size:11px;margin-top:2px}.pc-margin-presets{display:flex;flex-wrap:wrap;gap:6px}.pc-margin-btn{background:#0f172a;border:2px solid #334155;border-radius:8px;color:#94a3b8;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:all .15s}.pc-margin-btn:hover{border-color:#475569}.pc-margin-btn.active{background:#f59e0b14;border-color:#f59e0b;color:#fca5a5}.pc-margin-custom{align-items:center;display:flex;position:relative}.pc-margin-input{background:#0f172a;border:2px solid #334155;border-radius:8px;color:#e2e8f0;font-size:14px;font-weight:600;padding:8px 28px 8px 12px;width:72px}.pc-margin-input:focus{border-color:#f59e0b;outline:none}.pc-margin-pct{color:#94a3b8;pointer-events:none;position:absolute;right:10px}.pc-margin-breakdown{background:#0f172a;border-radius:10px;margin-top:16px;padding:14px}.pc-margin-row{color:#cbd5e1;display:flex;font-size:14px;justify-content:space-between;padding:5px 0}.pc-margin-row.markup{color:#fca5a5}.pc-margin-row.subtotal{font-weight:600}.pc-margin-row.gst{color:#94a3b8;font-size:13px}.pc-margin-row.total{border-top:2px solid #f59e0b;color:#fca5a5;font-size:16px;font-weight:800;margin-top:4px;padding-top:8px}.pc-std-table{overflow-x:auto}.pc-std-table table{border-collapse:collapse;font-size:13px;width:100%}.pc-std-table th{border-bottom:1px solid #334155;color:#64748b;font-size:11px;font-weight:700;padding:8px 10px;text-align:left;text-transform:uppercase}.pc-std-table td{border-bottom:1px solid #33415580;color:#94a3b8;padding:8px 10px}.pc-row-hl{background:#f59e0b0f}.pc-row-hl td{color:#e2e8f0!important}.pc-toggle-h{cursor:pointer;-webkit-user-select:none;user-select:none}.pc-saved-list{display:flex;flex-direction:column;gap:6px}.pc-saved-item{align-items:center;background:#0f172a;border:1px solid #334155;border-radius:8px;display:flex;justify-content:space-between;padding:8px 12px}.pc-saved-link{background:none;border:none;color:#fca5a5;cursor:pointer;flex:1 1;font-size:13px;font-weight:500;overflow:hidden;padding:0;text-align:left;text-overflow:ellipsis;white-space:nowrap}.pc-saved-link:hover{color:#fca5a5;text-decoration:underline}.pc-btn-icon-sm{align-items:center;background:none;border:none;border-radius:6px;color:#64748b;cursor:pointer;display:flex;height:28px;justify-content:center;width:28px}.pc-btn-icon-sm:hover{background:#ef444426;color:#ef4444}.pc-diagram-card{text-align:center}.pc-export-actions{display:flex;flex-direction:column;gap:14px}.pc-save-row{display:flex;gap:10px}.pc-save-input{background:#0f172a;border:1px solid #334155;border-radius:8px;color:#e2e8f0;flex:1 1;font-size:14px;padding:10px 14px}.pc-save-input:focus{border-color:#f59e0b;outline:none}.pc-save-input::placeholder{color:#475569}.pc-export-row{display:flex;gap:10px}.spin{animation:pc-spin 1s linear infinite}@keyframes pc-spin{to{transform:rotate(1turn)}}@media (max-width:960px){.pc-layout{grid-template-columns:1fr}.pc-conv-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:560px){.pc-header-bar{padding:28px 16px}.pc-header-bar h1{font-size:24px}.pc-row-2{grid-template-columns:1fr}.pc-conv-grid{grid-template-columns:repeat(2,1fr)}.pc-export-row,.pc-save-row{flex-direction:column}.pc-scaffold-opts{grid-template-columns:repeat(2,1fr)}.pc-card{padding:20px 14px}.pc-mat-bar-name{font-size:11px;width:100px}}.vc-calc{background:#0f172a;min-height:100vh}.vc-header{background:linear-gradient(135deg,#0e7490,#0891b2);border-bottom:1px solid #06b6d4;padding:40px 30px}.vc-header-inner{margin:0 auto;max-width:1200px}.vc-header h1{align-items:center;color:#e2e8f0;display:flex;font-size:32px;font-weight:700;gap:12px;margin:0 0 6px}.vc-header p{color:#a5f3fc;font-size:15px;margin:0}.vc-content{margin:0 auto;max-width:1200px;padding:30px 20px 60px}.vc-mode-toggle{background:#1e293b;border-radius:12px;display:flex;gap:4px;margin-bottom:24px;padding:4px;width:-webkit-fit-content;width:fit-content}.vc-mode-toggle button{align-items:center;background:#0000;border:none;border-radius:10px;color:#94a3b8;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;transition:all .2s}.vc-mode-toggle button.active{background:linear-gradient(135deg,#0891b2,#0e7490);box-shadow:0 2px 8px #0891b24d;color:#fff}.vc-address-section{margin-bottom:24px}.vc-address-row{display:flex;gap:12px}.vc-address-field{flex:1 1;position:relative}.vc-addr-icon{color:#22d3ee;left:16px;position:absolute;top:50%;transform:translateY(-50%)}.vc-address-field input{background:#1e293b;border:2px solid #334155;border-radius:12px;box-sizing:border-box;color:#e2e8f0;font-size:16px;padding:16px 20px 16px 48px;transition:border-color .2s;width:100%}.vc-address-field input::placeholder{color:#475569}.vc-address-field input:focus{border-color:#22d3ee;outline:none}.vc-btn-analyze{align-items:center;background:linear-gradient(135deg,#0891b2,#0e7490);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:10px;padding:16px 32px;transition:all .2s;white-space:nowrap}.vc-btn-analyze:hover{box-shadow:0 8px 25px #0891b24d;transform:translateY(-1px)}.vc-btn-analyze:disabled{cursor:not-allowed;opacity:.7;transform:none}.vc-error{background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;color:#fca5a5;font-size:14px;margin-top:12px;padding:12px 16px}.vc-analyzing{padding:80px 20px;text-align:center}.vc-analyzing h3{color:#e2e8f0;font-size:20px;margin:16px 0 8px}.vc-analyzing p{color:#94a3b8}.vc-manual-section{background:#1e293b;border:1px solid #334155;border-radius:16px;margin-bottom:24px;padding:24px}.vc-manual-section h3{align-items:center;color:#e2e8f0;display:flex;font-size:16px;gap:8px;margin:0 0 16px}.vc-manual-fields{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.vc-manual-field label{color:#94a3b8;display:block;font-size:13px;margin-bottom:6px}.vc-manual-field input,.vc-manual-field select{background:#0f172a;border:1px solid #334155;border-radius:8px;box-sizing:border-box;color:#e2e8f0;font-size:14px;padding:10px 14px;width:100%}.vc-manual-field input:focus,.vc-manual-field select:focus{border-color:#22d3ee;outline:none}.vc-manual-actions{display:flex;justify-content:flex-end;margin-top:20px}.vc-btn-calculate{align-items:center;background:linear-gradient(135deg,#0891b2,#0e7490);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:8px;padding:12px 32px}.vc-btn-calculate:hover{transform:translateY(-1px)}.vc-results-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr}@media (max-width:900px){.vc-results-grid{grid-template-columns:1fr}}.vc-satellite-card{background:#1e293b;border:1px solid #334155;border-radius:16px;margin-bottom:24px;padding:16px}.vc-satellite-card img{border-radius:12px;width:100%}.vc-satellite-card .vc-sat-meta{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px}.vc-sat-badge{align-items:center;background:#0891b226;border-radius:6px;color:#67e8f9;display:inline-flex;font-size:12px;font-weight:600;gap:4px;padding:4px 10px}.vc-sat-badge.cached{background:#22d39a26;color:#6ee7b7}.vc-compliance{align-items:center;background:#10b9811a;border:1px solid #10b9814d;border-radius:12px;color:#6ee7b7;display:flex;font-size:14px;font-weight:600;gap:10px;margin-bottom:24px;padding:14px 18px}.vc-nfa-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr);margin-bottom:24px}@media (max-width:700px){.vc-nfa-grid{grid-template-columns:1fr}}.vc-nfa-card{background:#1e293b;border:1px solid #334155;border-radius:14px;padding:20px;text-align:center}.vc-nfa-label{color:#94a3b8;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.vc-nfa-value{color:#22d3ee;font-size:28px;font-weight:800;margin:8px 0 4px}.vc-nfa-sub{color:#64748b;font-size:12px}.vc-card{background:#1e293b;border:1px solid #334155;border-radius:16px;margin-bottom:20px;padding:20px}.vc-card h3{align-items:center;color:#e2e8f0;display:flex;font-size:16px;gap:8px;margin:0 0 16px}.vc-total-card{background:linear-gradient(135deg,#0891b2,#0e7490);border-radius:16px;margin-bottom:20px;padding:24px;text-align:center}.vc-total-label{color:#fffc;font-size:14px}.vc-total-amount{color:#fff;font-size:36px;font-weight:800;margin:8px 0 4px}.vc-total-detail{color:#ffffffb3;font-size:13px}.vc-boq table{border-collapse:collapse;width:100%}.vc-boq th{border-bottom:1px solid #334155;color:#94a3b8;font-size:12px;font-weight:600;padding:8px 6px;text-align:left;text-transform:uppercase}.vc-boq td{border-bottom:1px solid #33415580;color:#e2e8f0;font-size:14px;padding:10px 6px}.vc-boq td:last-child,.vc-boq th:last-child{text-align:right}.vc-boq tfoot td{border-top:2px solid #0891b2;color:#67e8f9;font-weight:700;padding-top:12px}.vc-specs-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.vc-spec-item{background:#0f172a;border-radius:10px;padding:12px}.vc-spec-label{color:#94a3b8;font-size:12px;margin-bottom:4px}.vc-spec-input{background:#0f172a;border:1px solid #334155;border-radius:6px;box-sizing:border-box;color:#e2e8f0;font-size:16px;font-weight:700;margin-top:2px;padding:8px 10px;width:100%}.vc-spec-input:focus{border-color:#22d3ee;outline:none}.vc-spec-input option{background:#0f172a;color:#e2e8f0}.vc-material-options{display:flex;flex-direction:column;gap:6px}.vc-material-option{align-items:center;background:#0f172a;border:2px solid #334155;border-radius:10px;color:#e2e8f0;cursor:pointer;display:flex;font-size:14px;gap:10px;padding:10px 14px;transition:all .15s}.vc-material-option:hover{border-color:#475569}.vc-material-option.selected{background:#0891b214;border-color:#0891b2}.vc-mat-dot{border-radius:50%;flex-shrink:0;height:10px;width:10px}.vc-mat-name{flex:1 1;font-weight:500}.vc-mat-price{color:#22d3ee;font-weight:600}.vc-project-costs{background:#1e293b;border:1px solid #334155;border-radius:16px;margin-bottom:20px;padding:20px}.vc-project-costs h3{align-items:center;color:#e2e8f0;display:flex;font-size:16px;gap:8px;margin:0 0 16px}.vc-cost-item{margin-bottom:16px}.vc-cost-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.vc-cost-item-title{color:#e2e8f0;font-size:14px;font-weight:500}.vc-cost-item-total{color:#67e8f9;font-weight:700}.vc-cost-item-fields{display:flex;gap:12px}.vc-cost-field{flex:1 1}.vc-cost-field label{color:#94a3b8;display:block;font-size:12px;margin-bottom:4px}.vc-cost-field input{background:#0f172a;border:1px solid #334155;border-radius:8px;box-sizing:border-box;color:#e2e8f0;font-size:14px;padding:8px 12px;width:100%}.vc-cost-field input:focus{border-color:#22d3ee;outline:none}.vc-cost-toggle{align-items:center;cursor:pointer;display:flex;gap:8px}.vc-cost-toggle input[type=checkbox]{accent-color:#0891b2}.vc-project-summary{border-top:1px solid #334155;margin-top:12px;padding-top:12px}.vc-project-summary-row{color:#cbd5e1;display:flex;font-size:14px;justify-content:space-between;padding:6px 0}.vc-project-summary-row.total{border-top:2px solid #0891b2;color:#67e8f9;font-size:16px;font-weight:700;margin-top:6px;padding-top:10px}.vc-scaffold-options{grid-gap:6px;display:grid;gap:6px;grid-template-columns:1fr 1fr}.vc-scaffold-btn{align-items:center;background:#0f172a;border:2px solid #334155;border-radius:8px;color:#94a3b8;cursor:pointer;display:flex;flex-direction:column;font-size:13px;padding:10px;transition:all .15s}.vc-scaffold-btn:hover{border-color:#475569}.vc-scaffold-btn.active{background:#0891b214;border-color:#0891b2;color:#e2e8f0}.vc-scaffold-price{color:#22d3ee;font-size:12px;margin-top:2px}.vc-margin-section{background:#1e293b;border:1px solid #334155;border-radius:16px;margin-bottom:20px;padding:20px}.vc-margin-section h3{align-items:center;color:#e2e8f0;display:flex;font-size:16px;gap:8px;margin:0 0 16px}.vc-margin-presets{display:flex;flex-wrap:wrap;gap:6px}.vc-margin-btn{background:#0f172a;border:2px solid #334155;border-radius:8px;color:#94a3b8;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:all .15s}.vc-margin-btn:hover{border-color:#475569}.vc-margin-btn.active{background:#0891b214;border-color:#0891b2;color:#67e8f9}.vc-margin-custom{align-items:center;display:flex;position:relative}.vc-margin-input{background:#0f172a;border:2px solid #334155;border-radius:8px;color:#e2e8f0;font-size:14px;font-weight:600;padding:8px 28px 8px 12px;width:72px}.vc-margin-input:focus{border-color:#22d3ee;outline:none}.vc-margin-pct-icon{color:#94a3b8;pointer-events:none;position:absolute;right:10px}.vc-margin-breakdown{background:#0f172a;border-radius:10px;margin-top:16px;padding:14px}.vc-margin-row{color:#cbd5e1;display:flex;font-size:14px;justify-content:space-between;padding:5px 0}.vc-margin-row.markup{color:#22d3ee}.vc-margin-row.subtotal{font-weight:600}.vc-margin-row.gst{color:#94a3b8;font-size:13px}.vc-margin-row.total{border-top:2px solid #0891b2;color:#67e8f9;font-size:16px;font-weight:800;margin-top:4px;padding-top:8px}.vc-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.vc-btn-pdf,.vc-btn-reset,.vc-btn-save{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;font-size:15px;font-weight:700;gap:8px;padding:14px 28px;transition:all .2s}.vc-btn-pdf{background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff}.vc-btn-pdf:hover{box-shadow:0 6px 20px #dc26264d;transform:translateY(-1px)}.vc-btn-save{background:linear-gradient(135deg,#0891b2,#0e7490);color:#fff}.vc-btn-save:hover{box-shadow:0 6px 20px #0891b24d;transform:translateY(-1px)}.vc-btn-save.saved{background:#16a34a}.vc-btn-save:disabled{cursor:not-allowed;opacity:.7;transform:none}.vc-btn-reset{background:#334155;color:#94a3b8}.vc-btn-reset:hover{background:#475569;color:#e2e8f0}.spin{animation:vc-spin 1s linear infinite}@keyframes vc-spin{to{transform:rotate(1turn)}}.wl-page{background:#0f172a;flex:1 1;min-height:100vh;width:100%}.wl-header-bar{background:linear-gradient(135deg,#1e1b4b,#3730a3);border-bottom:1px solid #6366f1;padding:40px 30px}.wl-header-inner{margin:0 auto;max-width:1280px}.wl-header-bar h1{align-items:center;color:#e2e8f0;display:flex;font-size:32px;font-weight:700;gap:12px;margin:0 0 6px}.wl-header-bar p{color:#bfdbfe;font-size:15px;margin:0}.wl-container{margin:0 auto;max-width:1280px;padding:30px 20px 60px}.wl-layout{grid-gap:28px;align-items:start;display:grid;gap:28px;grid-template-columns:420px 1fr}.wl-inputs-panel,.wl-results-panel{display:flex;flex-direction:column;gap:20px}.wl-mode-toggle{background:#1e293b;border-radius:12px;display:flex;gap:4px;padding:4px;width:-webkit-fit-content;width:fit-content}.wl-mode-toggle button{align-items:center;background:#0000;border:none;border-radius:10px;color:#94a3b8;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;transition:all .2s}.wl-mode-toggle button.active{background:linear-gradient(135deg,#6366f1,#1e3a5f);box-shadow:0 2px 8px #3b82f64d;color:#fff}.wl-card{background:#1e293b;border:1px solid #334155;border-radius:14px;padding:24px}.wl-card h2{color:#e2e8f0;font-size:16px;font-weight:700;margin:0 0 16px}.wl-card h2,.wl-card h3{align-items:center;display:flex;gap:8px}.wl-card h3{color:#cbd5e1;font-size:15px;font-weight:600;margin:0 0 14px}.wl-optional{color:#64748b;font-size:12px;font-weight:400}.wl-ai-tag{background:#3b82f61a;border-radius:4px;color:#818cf8;font-size:11px;font-weight:500;margin-left:8px;padding:2px 8px}.wl-field{margin-bottom:14px}.wl-field label{align-items:center;color:#94a3b8;display:flex;font-size:12px;font-weight:600;gap:6px;letter-spacing:.4px;margin-bottom:6px;text-transform:uppercase}.wl-field input,.wl-field select{background:#0f172a;border:1px solid #334155;border-radius:8px;box-sizing:border-box;color:#e2e8f0;font-size:14px;padding:10px 14px;transition:border-color .2s;width:100%}.wl-field input:focus,.wl-field select:focus{border-color:#6366f1;outline:none}.wl-field input::placeholder{color:#475569}.wl-row-2{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.wl-row-2 .wl-field{margin-bottom:0}.wl-row-3{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr 1fr}.wl-row-3 .wl-field{margin-bottom:0}.wl-hint{color:#64748b;display:block;font-size:11px;margin-top:4px}.wl-checkbox{align-items:center;color:#e2e8f0;cursor:pointer;display:flex;font-size:14px;gap:10px;padding:10px 0}.wl-checkbox input[type=checkbox]{accent-color:#6366f1;height:18px;width:18px}.wl-actions{border-top:1px solid #334155;display:flex;gap:10px;margin-top:8px;padding-top:16px}.wl-btn-primary{align-items:center;background:linear-gradient(135deg,#6366f1,#1e3a5f);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:700;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s}.wl-btn-primary:hover{box-shadow:0 6px 20px #3b82f659;transform:translateY(-1px)}.wl-btn-ghost{align-items:center;background:#0000;border:1px solid #334155;border-radius:10px;color:#94a3b8;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:12px 16px;transition:all .2s}.wl-btn-ghost:hover{border-color:#64748b;color:#e2e8f0}.wl-full-w{justify-content:center;margin-top:4px;width:100%}.wl-btn-pdf{align-items:center;background:linear-gradient(135deg,#dc2626,#b91c1c);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:700;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s}.wl-btn-pdf:hover{box-shadow:0 6px 20px #dc26264d;transform:translateY(-1px)}.wl-btn-csv{align-items:center;background:#0000;border:1px solid #334155;border-radius:10px;color:#94a3b8;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s}.wl-btn-csv:hover{border-color:#64748b;color:#e2e8f0}.wl-btn-save{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;padding:10px 18px;transition:all .2s;white-space:nowrap}.wl-btn-save:hover{transform:translateY(-1px)}.wl-btn-save.saved{background:#16a34a}.wl-btn-save:disabled{cursor:not-allowed;opacity:.7;transform:none}.wl-ai-addr-row{display:flex;gap:12px}.wl-addr-field{flex:1 1;position:relative}.wl-addr-icon{color:#818cf8;left:16px;position:absolute;top:50%;transform:translateY(-50%)}.wl-addr-field input{background:#0f172a;border:2px solid #334155;border-radius:12px;box-sizing:border-box;color:#e2e8f0;font-size:16px;padding:16px 20px 16px 48px;transition:border-color .2s;width:100%}.wl-addr-field input::placeholder{color:#475569}.wl-addr-field input:focus{border-color:#6366f1;outline:none}.wl-btn-analyze{align-items:center;background:linear-gradient(135deg,#6366f1,#1e3a5f);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:10px;padding:16px 32px;transition:all .2s;white-space:nowrap}.wl-btn-analyze:hover{box-shadow:0 8px 25px #3b82f64d;transform:translateY(-1px)}.wl-btn-analyze:disabled{cursor:not-allowed;opacity:.7;transform:none}.wl-error{background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;color:#fca5a5;font-size:14px;margin-top:12px;padding:12px 16px}.wl-analyzing{padding:60px 20px;text-align:center}.wl-analyzing h3{color:#e2e8f0;font-size:20px;margin:16px 0 8px}.wl-analyzing p{color:#94a3b8}.wl-badge{border-radius:6px;display:inline-flex;font-size:11px;font-weight:600;margin-top:8px;padding:4px 10px}.wl-badge.high{background:#10b98126;color:#6ee7b7}.wl-badge.medium{background:#3b82f626;color:#93c5fd}.wl-badge.low{background:#ef444426;color:#fca5a5}.wl-placeholder{align-items:center;color:#475569;display:flex;flex-direction:column;gap:16px;justify-content:center;min-height:400px;text-align:center}.wl-placeholder h3{color:#64748b;font-size:18px;justify-content:center;margin:0}.wl-placeholder p{color:#475569;font-size:14px;margin:0;max-width:280px}.wl-load-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr)}.wl-load-card{background:#1e293b;border:1px solid #334155;border-radius:10px;padding:16px;text-align:center}.wl-load-label{color:#64748b;display:block;font-size:11px;font-weight:600;letter-spacing:.3px;text-transform:uppercase}.wl-load-value{color:#818cf8;display:block;font-size:22px;font-weight:800;margin-top:4px}.wl-load-unit{color:#94a3b8;font-size:13px;font-weight:500}.wl-compliance{align-items:center;border-radius:10px;display:flex;font-size:14px;font-weight:600;gap:10px;padding:14px 18px}.wl-compliance.pass{background:#10b9811f;border:1px solid #10b9814d;color:#6ee7b7}.wl-compliance.fail{background:#ef44441f;border:1px solid #ef44444d;color:#fca5a5}.wl-warnings{background:#f59e0b14;border:1px solid #f59e0b4d;border-radius:10px;padding:14px 18px}.wl-warnings h4{align-items:center;color:#fbbf24;display:flex;font-size:13px;gap:6px;margin:0 0 8px}.wl-warnings ul{margin:0;padding-left:18px}.wl-warnings li{color:#fde68a;font-size:13px;margin:4px 0}.wl-recs{display:flex;flex-direction:column;gap:8px}.wl-rec-row{align-items:center;background:#0f172a;border-radius:8px;display:flex;justify-content:space-between;padding:10px 14px}.wl-rec-row span:first-child{color:#94a3b8;font-size:13px;font-weight:500}.wl-rec-row span:last-child{color:#e2e8f0;font-size:14px;font-weight:600}.wl-rec-row .wl-required{color:#fca5a5}.wl-rec-row .wl-ok{color:#6ee7b7}.wl-specs-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.wl-spec{background:#0f172a;border-radius:10px;padding:12px}.wl-spec-label{color:#94a3b8;display:block;font-size:12px}.wl-spec-value{color:#e2e8f0;display:block;font-size:18px;font-weight:700;margin-top:2px}.wl-boq table{border-collapse:collapse;width:100%}.wl-boq th{border-bottom:1px solid #334155;color:#94a3b8;font-size:11px;font-weight:600;padding:8px 6px;text-align:left;text-transform:uppercase}.wl-boq td{border-bottom:1px solid #33415580;color:#e2e8f0;font-size:13px;padding:10px 6px}.wl-boq td:last-child,.wl-boq td:nth-child(3),.wl-boq th:last-child,.wl-boq th:nth-child(3){text-align:right}.wl-boq tfoot td{border-top:2px solid #6366f1;color:#93c5fd;font-weight:700;padding-top:12px}.wl-cost-item{margin-bottom:16px}.wl-cost-header{align-items:center;color:#e2e8f0;display:flex;font-size:14px;font-weight:500;justify-content:space-between;margin-bottom:8px}.wl-cost-total{color:#93c5fd;font-weight:700}.wl-cost-fields{display:flex;gap:12px}.wl-cost-field{flex:1 1}.wl-cost-field label{color:#94a3b8;display:block;font-size:12px;margin-bottom:4px}.wl-cost-field input{background:#0f172a;border:1px solid #334155;border-radius:8px;box-sizing:border-box;color:#e2e8f0;font-size:14px;padding:8px 12px;width:100%}.wl-cost-field input:focus{border-color:#6366f1;outline:none}.wl-cost-toggle{align-items:center;color:#e2e8f0;cursor:pointer;display:flex;font-size:14px;gap:8px}.wl-cost-toggle input[type=checkbox]{accent-color:#6366f1}.wl-margin-presets{display:flex;flex-wrap:wrap;gap:6px}.wl-margin-btn{background:#0f172a;border:2px solid #334155;border-radius:8px;color:#94a3b8;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:all .15s}.wl-margin-btn:hover{border-color:#475569}.wl-margin-btn.active{background:#3b82f614;border-color:#6366f1;color:#93c5fd}.wl-margin-custom{align-items:center;display:flex;position:relative}.wl-margin-input{background:#0f172a;border:2px solid #334155;border-radius:8px;color:#e2e8f0;font-size:14px;font-weight:600;padding:8px 28px 8px 12px;width:72px}.wl-margin-input:focus{border-color:#6366f1;outline:none}.wl-margin-pct{color:#94a3b8;pointer-events:none;position:absolute;right:10px}.wl-margin-breakdown{background:#0f172a;border-radius:10px;margin-top:16px;padding:14px}.wl-margin-row{color:#cbd5e1;display:flex;font-size:14px;justify-content:space-between;padding:5px 0}.wl-margin-row.markup{color:#93c5fd}.wl-margin-row.subtotal{font-weight:600}.wl-margin-row.gst{color:#94a3b8;font-size:13px}.wl-margin-row.total{border-top:2px solid #6366f1;color:#93c5fd;font-size:16px;font-weight:800;margin-top:4px;padding-top:8px}.wl-satellite-card img{border-radius:10px;width:100%}.wl-saved-list{display:flex;flex-direction:column;gap:6px}.wl-saved-item{align-items:center;background:#0f172a;border:1px solid #334155;border-radius:8px;display:flex;justify-content:space-between;padding:8px 12px}.wl-saved-link{background:none;border:none;color:#93c5fd;cursor:pointer;flex:1 1;font-size:13px;font-weight:500;overflow:hidden;padding:0;text-align:left;text-overflow:ellipsis;white-space:nowrap}.wl-saved-link:hover{color:#bfdbfe;text-decoration:underline}.wl-btn-icon-sm{align-items:center;background:none;border:none;border-radius:6px;color:#64748b;cursor:pointer;display:flex;height:28px;justify-content:center;width:28px}.wl-btn-icon-sm:hover{background:#ef444426;color:#ef4444}.wl-export-actions{display:flex;flex-direction:column;gap:14px}.wl-save-row{display:flex;gap:10px}.wl-save-input{background:#0f172a;border:1px solid #334155;border-radius:8px;color:#e2e8f0;flex:1 1;font-size:14px;padding:10px 14px}.wl-save-input:focus{border-color:#6366f1;outline:none}.wl-save-input::placeholder{color:#475569}.wl-export-row{display:flex;gap:10px}.wl-region-info{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(4,1fr);margin-top:8px}.wl-region-chip{background:#0f172a;border:2px solid #0000;border-radius:8px;color:#94a3b8;cursor:pointer;font-size:12px;font-weight:600;padding:8px;text-align:center;transition:all .15s}.wl-region-chip:hover{border-color:#475569}.wl-region-chip.active{background:#3b82f614;border-color:#6366f1;color:#93c5fd}.wl-region-chip small{color:#64748b;display:block;font-size:10px;font-weight:400;margin-top:2px}.wl-standards{background:#3b82f60f;border-radius:8px;margin-top:8px;padding:10px 14px}.wl-standards p{color:#94a3b8;font-size:12px;line-height:1.5;margin:0}.wl-standards strong{color:#93c5fd}.wl-spin{animation:wl-spin-anim 1s linear infinite}@keyframes wl-spin-anim{to{transform:rotate(1turn)}}@media (max-width:960px){.wl-layout{grid-template-columns:1fr}.wl-load-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:560px){.wl-header-bar{padding:28px 16px}.wl-header-bar h1{font-size:24px}.wl-row-2,.wl-row-3{grid-template-columns:1fr}.wl-load-grid{grid-template-columns:repeat(2,1fr)}.wl-export-row,.wl-save-row{flex-direction:column}.wl-card{padding:20px 14px}.wl-region-info{grid-template-columns:repeat(2,1fr)}}.js-page{background:#0f172a;flex:1 1;min-height:100vh;width:100%}.js-header-bar{background:linear-gradient(135deg,#92400e,#d97706 50%,#f59e0b);border-bottom:1px solid #fbbf24;padding:40px 30px}.js-header-inner{margin:0 auto;max-width:1400px}.js-header-bar h1{align-items:center;color:#fffbeb;display:flex;font-size:32px;font-weight:700;gap:12px;margin:0 0 6px}.js-header-bar p{color:#fef3c7;font-size:15px;margin:0}.js-container{margin:0 auto;max-width:1400px;padding:0 20px 60px}.js-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,1fr);padding:24px 0}.js-stat{background:#1e293b;border:1px solid #334155;border-radius:12px;gap:14px;padding:18px 20px}.js-stat,.js-stat-icon{align-items:center;display:flex}.js-stat-icon{border-radius:10px;flex-shrink:0;height:44px;justify-content:center;width:44px}.js-stat-icon.amber{background:#f59e0b1f;color:#fbbf24}.js-stat-icon.blue{background:#3b82f61f;color:#60a5fa}.js-stat-icon.green{background:#10b9811f;color:#34d399}.js-stat-icon.purple{background:#a855f71f;color:#c084fc}.js-stat-val{color:#e2e8f0;font-size:26px;font-weight:800;line-height:1}.js-stat-lbl{color:#64748b;font-size:12px;font-weight:500;margin-top:2px}.js-tabs{background:#1e293b;border-radius:12px;display:flex;gap:4px;margin-bottom:24px;padding:4px;width:-webkit-fit-content;width:fit-content}.js-tabs button{align-items:center;background:#0000;border:none;border-radius:10px;color:#94a3b8;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;transition:all .2s}.js-tabs button.active{background:linear-gradient(135deg,#d97706,#92400e);box-shadow:0 2px 8px #d977064d;color:#fff}.js-tabs button:not(.active):hover{color:#e2e8f0}.js-tab-badge{background:#f59e0b26;border-radius:10px;color:#fbbf24;font-size:11px;font-weight:700;margin-left:4px;padding:2px 8px}.js-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.js-section-header h2{color:#e2e8f0;font-size:20px;font-weight:700;margin:0}.js-btn-add,.js-section-header h2{align-items:center;display:flex;gap:8px}.js-btn-add{background:linear-gradient(135deg,#d97706,#92400e);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s}.js-btn-add:hover{box-shadow:0 6px 20px #d977064d;transform:translateY(-1px)}.js-cal-nav{align-items:center;display:flex;gap:16px;margin-bottom:16px}.js-cal-nav h3{color:#e2e8f0;font-size:18px;font-weight:700;margin:0;min-width:200px}.js-cal-nav button{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:8px;color:#94a3b8;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .15s;width:36px}.js-cal-nav button:hover{border-color:#d97706;color:#fbbf24}.js-cal-grid{grid-gap:1px;background:#334155;border:1px solid #334155;border-radius:12px;display:grid;gap:1px;grid-template-columns:repeat(7,1fr);overflow:hidden}.js-cal-dow{background:#1e293b;color:#64748b;font-size:12px;font-weight:600;letter-spacing:.5px;padding:10px;text-align:center;text-transform:uppercase}.js-cal-day{background:#0f172a;cursor:pointer;min-height:100px;padding:8px;position:relative;transition:background .15s}.js-cal-day:hover{background:#1e293b}.js-cal-day.other-month{opacity:.35}.js-cal-day.today{background:#d977060f}.js-cal-day.today .js-cal-date{color:#fbbf24;font-weight:800}.js-cal-day.selected{background:#d977061f;box-shadow:inset 0 0 0 2px #d97706}.js-cal-date{color:#94a3b8;font-size:13px;font-weight:600;margin-bottom:4px}.js-cal-job{border-radius:4px;color:#fff;cursor:pointer;font-size:10px;font-weight:600;margin-bottom:2px;overflow:hidden;padding:3px 6px;text-overflow:ellipsis;white-space:nowrap}.js-cal-job.scheduled{background:#eab308b3}.js-cal-job.in_progress{background:#3b82f6b3}.js-cal-job.completed{background:#10b981b3}.js-cal-job.cancelled{background:#ef444480}.js-cal-job.postponed{background:#f9731699}.js-cal-more{color:#64748b;cursor:pointer;font-size:10px;padding:2px 6px}.js-cal-layout{grid-gap:24px;align-items:start;display:grid;gap:24px;grid-template-columns:1fr 360px}.js-day-panel{background:#1e293b;border:1px solid #334155;border-radius:14px;padding:20px;position:-webkit-sticky;position:sticky;top:20px}.js-day-panel h3{align-items:center;color:#e2e8f0;display:flex;font-size:16px;font-weight:700;gap:8px;margin:0 0 16px}.js-day-empty{color:#475569;font-size:14px;padding:30px 10px;text-align:center}.js-jobs-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}.js-job-card{background:#1e293b;border:1px solid #334155;border-left:4px solid #64748b;border-radius:12px;padding:20px;transition:all .2s}.js-job-card:hover{border-color:#475569;box-shadow:0 4px 12px #0003}.js-job-card.scheduled{border-left-color:#eab308}.js-job-card.in_progress{border-left-color:#3b82f6}.js-job-card.completed{border-left-color:#10b981}.js-job-card.cancelled{border-left-color:#ef4444}.js-job-card.postponed{border-left-color:#f97316}.js-job-head{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:12px}.js-job-head h4{color:#e2e8f0;font-size:16px;font-weight:700;margin:0 0 4px}.js-job-client{color:#94a3b8;font-size:13px;margin:0}.js-status-badge{border-radius:6px;font-size:11px;font-weight:700;letter-spacing:.3px;padding:4px 10px;text-transform:uppercase;white-space:nowrap}.js-status-badge.scheduled{background:#eab30826;color:#fbbf24}.js-status-badge.in_progress{background:#3b82f626;color:#60a5fa}.js-status-badge.completed{background:#10b98126;color:#34d399}.js-status-badge.cancelled{background:#ef444426;color:#f87171}.js-status-badge.postponed{background:#f9731626;color:#fb923c}.js-job-details{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.js-job-detail{align-items:center;color:#94a3b8;display:flex;font-size:13px;gap:8px}.js-job-detail svg{color:#64748b;flex-shrink:0}.js-job-footer{align-items:center;border-top:1px solid #334155;display:flex;justify-content:space-between;padding-top:12px}.js-job-actions{display:flex;gap:4px}.js-btn-icon{align-items:center;background:#0000;border:1px solid #0000;border-radius:6px;color:#64748b;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .15s;width:32px}.js-btn-icon:hover{background:#d977061a;border-color:#92400e;color:#fbbf24}.js-btn-icon.danger:hover{background:#ef44441a;border-color:#991b1b;color:#ef4444}.js-status-select{background:#0f172a;border:1px solid #334155;border-radius:6px;color:#e2e8f0;cursor:pointer;font-size:12px;padding:4px 8px}.js-status-select:focus{border-color:#d97706;outline:none}.js-filter-bar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.js-filter-chip{background:#1e293b;border:1px solid #334155;border-radius:8px;color:#94a3b8;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .15s}.js-filter-chip:hover{border-color:#475569;color:#e2e8f0}.js-filter-chip.active{background:#d9770614;border-color:#d97706;color:#fbbf24}.js-crew-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.js-crew-card{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:12px;display:flex;gap:16px;padding:20px;transition:all .2s}.js-crew-card:hover{border-color:#475569}.js-crew-avatar{align-items:center;background:linear-gradient(135deg,#92400e,#d97706);border-radius:50%;color:#fffbeb;display:flex;flex-shrink:0;font-size:20px;font-weight:800;height:52px;justify-content:center;width:52px}.js-crew-info{flex:1 1;min-width:0}.js-crew-info h4{color:#e2e8f0;font-size:15px;font-weight:700;margin:0 0 4px}.js-crew-role{color:#fbbf24;font-size:12px;font-weight:600;margin:0 0 4px;text-transform:capitalize}.js-crew-meta{align-items:center;color:#64748b;display:flex;font-size:12px;gap:4px;margin:0}.js-crew-rate{color:#34d399;font-size:14px;font-weight:700;margin-top:4px}.js-crew-del{align-items:center;background:#0000;border:none;border-radius:6px;color:#475569;cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.js-crew-del:hover{background:#ef44441a;color:#ef4444}.js-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.js-modal{background:#1e293b;border:1px solid #334155;border-radius:16px;max-height:90vh;max-width:720px;overflow-y:auto;width:100%}.js-modal.sm{max-width:480px}.js-modal-head{align-items:center;border-bottom:1px solid #334155;display:flex;justify-content:space-between;padding:20px 24px}.js-modal-head h2{color:#e2e8f0;font-size:18px;font-weight:700;margin:0}.js-modal-close{align-items:center;background:#0000;border:none;border-radius:6px;color:#64748b;cursor:pointer;display:flex;height:32px;justify-content:center;width:32px}.js-modal-close:hover{background:#0f172a;color:#e2e8f0}.js-modal-body{padding:24px}.js-modal-foot{border-top:1px solid #334155;display:flex;gap:10px;justify-content:flex-end;padding:16px 24px}.js-form-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.js-form-grid .full{grid-column:1/-1}.js-field{display:flex;flex-direction:column;gap:6px}.js-field label{color:#94a3b8;font-size:12px;font-weight:600;letter-spacing:.3px;text-transform:uppercase}.js-field input,.js-field select,.js-field textarea{background:#0f172a;border:1px solid #334155;border-radius:8px;box-sizing:border-box;color:#e2e8f0;font-family:inherit;font-size:14px;padding:10px 14px;transition:border-color .2s;width:100%}.js-field input:focus,.js-field select:focus,.js-field textarea:focus{border-color:#d97706;outline:none}.js-field textarea{min-height:60px;resize:vertical}.js-field input::placeholder,.js-field textarea::placeholder{color:#475569}.js-crew-checkboxes{display:flex;flex-direction:column;gap:6px;max-height:150px;overflow-y:auto}.js-crew-checkbox{align-items:center;background:#0f172a;border-radius:8px;color:#e2e8f0;cursor:pointer;display:flex;font-size:13px;gap:10px;padding:8px 12px}.js-crew-checkbox input{accent-color:#d97706;height:16px;width:16px}.js-crew-checkbox .role{color:#64748b;font-size:11px;margin-left:auto}.js-btn-cancel{background:#0000;border:1px solid #334155;border-radius:8px;color:#94a3b8;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px}.js-btn-cancel:hover{border-color:#64748b;color:#e2e8f0}.js-btn-submit{align-items:center;background:linear-gradient(135deg,#d97706,#92400e);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 24px;transition:all .2s}.js-btn-submit:hover{box-shadow:0 4px 12px #d977064d;transform:translateY(-1px)}.js-empty{align-items:center;color:#475569;display:flex;flex-direction:column;gap:12px;justify-content:center;padding:60px 20px;text-align:center}.js-empty h3{color:#64748b;font-size:16px;margin:0}.js-empty p{color:#475569;font-size:13px;margin:0}@media (max-width:960px){.js-stats{grid-template-columns:repeat(2,1fr)}.js-cal-layout{grid-template-columns:1fr}.js-day-panel{position:static}.js-cal-day{min-height:70px}.js-cal-job{display:none}.js-form-grid{grid-template-columns:1fr}}@media (max-width:560px){.js-header-bar{padding:28px 16px}.js-header-bar h1{font-size:24px}.js-stats{grid-template-columns:1fr 1fr}.js-tabs{overflow-x:auto;width:100%}.js-section-header{align-items:stretch;flex-direction:column;gap:12px}.js-crew-grid,.js-jobs-grid{grid-template-columns:1fr}.js-cal-grid{font-size:11px}.js-cal-day{min-height:50px;padding:4px}}.blog-page{background:#0f172a;flex:1 1;min-height:100vh;width:100%}.blog-hero{background:#1e293b;border-bottom:1px solid #334155;padding:48px 20px 40px;text-align:center}.blog-hero-inner{margin:0 auto;max-width:700px}.blog-hero h1{color:#f1f5f9;font-size:32px;font-weight:800;letter-spacing:-.5px;margin:0 0 10px}.blog-hero p{color:#64748b;font-size:16px;margin:0 0 24px}.blog-search{align-items:center;background:#0f172a;border:1px solid #334155;border-radius:10px;color:#64748b;display:flex;gap:10px;margin:0 auto;max-width:420px;padding:10px 16px;transition:border-color .2s}.blog-search:focus-within{border-color:#3b82f6}.blog-search input{background:#0000;border:none;color:#e2e8f0;flex:1 1;font-size:15px;outline:none}.blog-search input::placeholder{color:#475569}.blog-container{margin:0 auto;max-width:1100px;padding:28px 20px 60px}.blog-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}.filter-chip{background:#0000;border:1px solid #334155;border-radius:8px;color:#94a3b8;cursor:pointer;font-size:13px;font-weight:600;padding:7px 16px;transition:all .2s}.filter-chip:hover{border-color:#3b82f6;color:#e2e8f0}.filter-chip.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.blog-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.blog-card{background:#1e293b;border:1px solid #334155;border-radius:14px;display:flex;flex-direction:column;overflow:hidden;text-decoration:none;transition:all .25s ease}.blog-card:hover{border-color:#3b82f6;box-shadow:0 8px 32px #3b82f61f;transform:translateY(-4px)}.blog-card-accent{height:4px;width:100%}.blog-card-body{display:flex;flex:1 1;flex-direction:column;padding:22px 24px 20px}.blog-card-cat{font-size:12px;font-weight:700;letter-spacing:.5px;margin-bottom:10px;text-transform:uppercase}.blog-card-body h2{color:#f1f5f9;font-size:18px;font-weight:700;line-height:1.35;margin:0 0 10px}.blog-card-body>p{color:#94a3b8;flex:1 1;font-size:14px;line-height:1.6;margin:0 0 16px}.blog-card-footer{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:14px}.blog-card-date,.blog-card-tags{align-items:center;color:#64748b;display:flex;font-size:12px;gap:5px}.blog-card-read{align-items:center;color:#3b82f6;display:flex;font-size:14px;font-weight:600;gap:6px;margin-top:auto}.blog-card:hover .blog-card-read{color:#60a5fa}.blog-loading{display:flex;justify-content:center;padding:80px 0}.blog-loading .spinner{animation:spin .8s linear infinite;border:3px solid #334155;border-radius:50%;border-top-color:#3b82f6;height:40px;width:40px}.blog-empty{color:#64748b;font-size:16px;padding:60px 20px;text-align:center}.article-header{background:linear-gradient(135deg,#1e3a5f,#1e293b);border-bottom:1px solid #334155;padding:40px 20px}.article-header-inner{margin:0 auto;max-width:800px}.article-back{align-items:center;color:#60a5fa;display:inline-flex;font-size:14px;font-weight:600;gap:6px;margin-bottom:16px;text-decoration:none}.article-back:hover{color:#93c5fd}.article-cat{background:#3b82f626;border-radius:6px;color:#60a5fa;display:inline-block;font-size:12px;font-weight:700;letter-spacing:.4px;margin-bottom:14px;padding:4px 12px;text-transform:uppercase}.article-header h1{color:#f1f5f9;font-size:32px;font-weight:800;letter-spacing:-.5px;line-height:1.25;margin:0 0 16px}.article-meta{color:#94a3b8;display:flex;flex-wrap:wrap;font-size:14px;gap:20px}.article-meta span{align-items:center;display:flex;gap:6px}.article-container{grid-gap:36px;align-items:start;display:grid;gap:36px;grid-template-columns:1fr 280px;margin:0 auto;max-width:1100px;padding:36px 20px 60px}.article-content{background:#1e293b;border:1px solid #334155;border-radius:14px;padding:36px 40px}.article-content h1{color:#f1f5f9;font-size:28px;font-weight:800;margin:36px 0 16px}.article-content h2{color:#e2e8f0;font-size:22px;font-weight:700;margin:32px 0 14px}.article-content h3{color:#cbd5e1;font-size:18px;font-weight:700;margin:28px 0 12px}.article-content p{color:#94a3b8;font-size:15px;line-height:1.75;margin:0 0 6px}.article-content li{color:#94a3b8;font-size:15px;line-height:1.7;list-style:disc;margin:4px 0 4px 20px;padding-left:4px}.article-content li strong{color:#e2e8f0}.article-content a{color:#60a5fa;text-decoration:underline;text-underline-offset:2px}.article-content a:hover{color:#93c5fd}.article-content strong{color:#e2e8f0}.article-note{background:#3b82f60f;border-left:3px solid #3b82f6;border-radius:4px;font-style:italic;padding:10px 16px}.article-table-wrap{border:1px solid #334155;border-radius:10px;margin:16px 0;overflow-x:auto}.article-table{border-collapse:collapse;font-size:14px;width:100%}.article-table th{background:#0f172a;border-bottom:1px solid #334155;font-size:12px;font-weight:700;letter-spacing:.3px;text-align:left;text-transform:uppercase}.article-table td,.article-table th{color:#94a3b8;padding:10px 14px;white-space:nowrap}.article-table td{border-bottom:1px solid #33415566}.article-table tr:hover td{background:#3b82f608}.article-sidebar{display:flex;flex-direction:column;gap:20px;position:-webkit-sticky;position:sticky;top:24px}.sidebar-card{background:#1e293b;border:1px solid #334155;border-radius:12px;padding:20px}.sidebar-card h4{align-items:center;color:#e2e8f0;display:flex;font-size:15px;font-weight:700;gap:8px;margin:0 0 14px}.sidebar-tags{display:flex;flex-wrap:wrap;gap:6px}.sidebar-tag{background:#0f172a;border:1px solid #334155;border-radius:6px;color:#94a3b8;font-size:12px;padding:4px 10px}.sidebar-cta{background:linear-gradient(135deg,#1e3a5f,#1e293b)}.sidebar-cta-btn{background:#3b82f6;border-radius:8px;color:#fff;display:block;font-size:14px;font-weight:600;margin-bottom:8px;padding:10px 16px;text-align:center;text-decoration:none;transition:all .2s}.sidebar-cta-btn:hover{background:#2563eb;transform:translateY(-1px)}.sidebar-cta-btn.sidebar-cta-secondary{background:#0000;border:1px solid #334155;color:#94a3b8}.sidebar-cta-btn.sidebar-cta-secondary:hover{border-color:#3b82f6;color:#e2e8f0}.admin-editor{background:#1e293b;border:1px solid #334155;border-radius:14px;margin-bottom:36px;padding:28px}.admin-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:16px}.admin-field{display:flex;flex-direction:column;margin-bottom:16px}.admin-field-wide{grid-column:span 2}.admin-field label{color:#64748b;font-size:12px;font-weight:700;letter-spacing:.4px;margin-bottom:6px;text-transform:uppercase}.admin-field input,.admin-field select,.admin-field textarea{background:#0f172a;border:1px solid #334155;border-radius:8px;color:#e2e8f0;font-family:inherit;font-size:14px;padding:10px 14px;transition:border-color .2s}.admin-field input:focus,.admin-field select:focus,.admin-field textarea:focus{border-color:#3b82f6;outline:none}.admin-field textarea{line-height:1.6;min-height:120px;resize:vertical}.admin-actions{border-top:1px solid #334155;gap:12px;padding-top:16px}.admin-actions,.admin-toggle{align-items:center;display:flex}.admin-toggle{color:#94a3b8;cursor:pointer;font-size:14px;font-weight:600;gap:8px;margin-right:auto}.admin-toggle input{accent-color:#3b82f6;height:18px;width:18px}.admin-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;padding:10px 20px;transition:all .2s}.admin-btn-primary{background:#3b82f6;color:#fff}.admin-btn-primary:hover{background:#2563eb}.admin-btn-ghost{background:#0000;border:1px solid #334155;color:#94a3b8}.admin-section-title{color:#e2e8f0;font-size:18px;font-weight:700;margin-bottom:16px}.admin-posts-list{display:flex;flex-direction:column;gap:8px}.admin-post-row{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:10px;display:flex;gap:16px;justify-content:space-between;padding:14px 18px}.admin-post-info h3{color:#e2e8f0;font-size:15px;font-weight:600;margin:0 0 4px}.admin-post-meta{color:#64748b;display:flex;font-size:12px;gap:12px}.admin-post-cat{color:#3b82f6;font-weight:600}.admin-post-actions{display:flex;gap:6px}.admin-btn-sm{align-items:center;background:#0000;border:1px solid #334155;border-radius:6px;color:#94a3b8;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .15s;width:32px}.admin-btn-sm:hover{background:#3b82f61a;border-color:#3b82f6;color:#60a5fa}.admin-btn-sm-danger:hover{background:#ef44441a;border-color:#ef4444;color:#ef4444}@media (max-width:860px){.article-container{grid-template-columns:1fr}.article-sidebar{flex-direction:row;flex-wrap:wrap;gap:12px;position:static}.sidebar-card{flex:1 1;min-width:220px}.article-content{padding:24px 20px}.blog-grid{grid-template-columns:1fr}.admin-field-wide{grid-column:span 1}}@media (max-width:480px){.blog-page{overflow-x:hidden}.article-header{padding:28px 16px}.article-header h1{font-size:24px}.article-meta{font-size:12px;gap:10px}.article-container{padding:20px 16px 40px}.article-content{overflow-wrap:break-word;overflow-x:hidden;padding:20px 16px;word-break:break-word}.article-content h1{font-size:24px}.article-content h2{font-size:20px}.article-content h3{font-size:18px}.article-content li,.article-content p{font-size:16px}.article-table-wrap{border-left:none;border-radius:0;border-right:none;margin-left:-16px;margin-right:-16px}.article-table th{font-size:10px;padding:8px 10px}.article-table td{font-size:12px;padding:8px 10px}.sidebar-card{min-width:0;min-width:auto}.blog-hero h1{font-size:24px}.blog-hero p{font-size:14px}.admin-editor{padding:16px}.admin-post-row{align-items:flex-start;flex-direction:column;gap:10px}.admin-actions{flex-wrap:wrap}}.satellite-estimator{background:#0a0e17;color:#e2e8f0;min-height:100vh}.sat-header{background:linear-gradient(180deg,#0f1423f2,#0a0e17fa);border-bottom:1px solid #8b5cf626;padding:28px 32px 20px}.sat-header h1{color:#f1f5f9;font-size:28px;font-weight:700;letter-spacing:-.5px;margin:0 0 4px}.sat-header p{color:#94a3b8;font-size:14px;margin:0}.sat-content{margin:0 auto;max-width:1400px;padding:24px 28px}.sat-steps{display:flex;gap:8px;margin-bottom:24px}.sat-step{align-items:center;background:#1e293b80;border:1px solid #3341554d;border-radius:10px;color:#64748b;display:flex;font-size:13px;font-weight:600;gap:8px;padding:10px 18px;transition:all .3s ease}.sat-step.active{background:#8b5cf61f;border-color:#8b5cf666;color:#c4b5fd}.sat-step.completed{background:#22c55e1a;border-color:#22c55e4d;color:#86efac}.sat-step-num{align-items:center;background:#33415580;border-radius:50%;color:#94a3b8;display:flex;font-size:12px;font-weight:700;height:24px;justify-content:center;width:24px}.sat-step.active .sat-step-num{background:#8b5cf64d;color:#e9d5ff}.sat-step.completed .sat-step-num{background:#22c55e4d;color:#86efac}.sat-search-section{margin-bottom:24px}.sat-search-card{background:#0f172a99;border:1px solid #33415566;border-radius:14px;padding:24px}.sat-search-card h2{color:#e2e8f0;font-size:17px;font-weight:600;margin:0 0 16px}.sat-search-input-wrap{position:relative}.sat-search-input-wrap input{background:#1e293bcc;border:1px solid #47556966;border-radius:10px;box-sizing:border-box;color:#f1f5f9;font-size:15px;outline:none;padding:14px 18px 14px 44px;transition:border-color .2s;width:100%}.sat-search-input-wrap input:focus{border-color:#8b5cf699}.sat-search-input-wrap input::placeholder{color:#64748b}.sat-search-icon{color:#64748b;font-size:18px;left:14px;position:absolute;top:50%;transform:translateY(-50%)}.sat-address-info{align-items:center;background:#22c55e14;border:1px solid #22c55e33;border-radius:8px;color:#86efac;display:flex;font-size:13px;gap:10px;margin-top:12px;padding:10px 14px}.sat-map-section{margin-bottom:24px}.sat-map-card{background:#0f172a99;border:1px solid #33415566;border-radius:14px;overflow:hidden}.sat-map-toolbar{align-items:center;border-bottom:1px solid #3341554d;display:flex;justify-content:space-between;padding:14px 20px}.sat-map-toolbar h3{color:#e2e8f0;font-size:15px;font-weight:600;margin:0}.sat-map-actions{display:flex;gap:8px}.sat-map-container{height:500px;position:relative;width:100%}.sat-map-container .gm-style{border-radius:0 0 14px 14px}.sat-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:8px;padding:10px 20px;transition:all .2s}.sat-btn-primary{background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff}.sat-btn-primary:hover{background:linear-gradient(135deg,#8b5cf6,#7c3aed);transform:translateY(-1px)}.sat-btn-primary:disabled{cursor:not-allowed;opacity:.4;transform:none}.sat-btn-secondary{background:#1e293bcc;border:1px solid #47556966;color:#cbd5e1}.sat-btn-secondary:hover{border-color:#8b5cf666;color:#e2e8f0}.sat-btn-success{background:linear-gradient(135deg,#059669,#047857);color:#fff}.sat-btn-success:hover{background:linear-gradient(135deg,#10b981,#059669)}.sat-analysis-section{margin-bottom:24px}.sat-analysis-card{background:#0f172a99;border:1px solid #33415566;border-radius:14px;padding:24px}.sat-analysis-card h2{color:#e2e8f0;font-size:17px;font-weight:600;margin:0 0 16px}.sat-analyzing{align-items:center;display:flex;flex-direction:column;gap:16px;padding:40px 0}.sat-spinner{animation:sat-spin .8s linear infinite;border:3px solid #8b5cf633;border-radius:50%;border-top-color:#8b5cf6;height:48px;width:48px}@keyframes sat-spin{to{transform:rotate(1turn)}}.sat-analyzing p{color:#94a3b8;font-size:15px;text-align:center}.sat-results-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.sat-result-card{background:#1e293b66;border:1px solid #3341554d;border-radius:12px;padding:20px}.sat-result-card h3{color:#94a3b8;font-size:14px;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.sat-result-value{color:#f1f5f9;font-size:28px;font-weight:700;line-height:1.2}.sat-result-unit{color:#64748b;font-size:14px;font-weight:400}.sat-roof-details{margin-top:20px}.sat-detail-row{border-bottom:1px solid #33415533;display:flex;font-size:14px;justify-content:space-between;padding:10px 0}.sat-detail-label{color:#94a3b8}.sat-detail-value{color:#e2e8f0;font-weight:600}.sat-canvas-overlay{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:5}.sat-canvas-overlay.drawing{cursor:crosshair;pointer-events:auto}.sat-faces-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}.sat-face-item{background:#1e293b80;border:1px solid #3341554d;border-radius:8px;font-size:13px;justify-content:space-between;padding:10px 14px}.sat-face-item,.sat-face-name{align-items:center;display:flex}.sat-face-name{color:#e2e8f0;gap:8px}.sat-face-color{border-radius:3px;height:12px;width:12px}.sat-face-area{color:#94a3b8;font-weight:600}.sat-error{background:#ef444414;border:1px solid #ef444433;border-radius:10px;color:#fca5a5;font-size:14px;margin-top:12px;padding:14px 18px}.pac-container{background:#1e293b!important;border:1px solid #47556980!important;border-radius:0 0 10px 10px!important;box-shadow:0 8px 32px #0006!important;font-family:inherit!important;z-index:10000!important}.pac-item{border-top:1px solid #3341554d!important;color:#e2e8f0!important;cursor:pointer!important;font-size:14px!important;line-height:1.4!important;padding:10px 16px!important}.pac-item-selected,.pac-item:hover{background:#8b5cf61f!important}.pac-item-query{color:#f1f5f9!important;font-size:14px!important}.pac-matched{color:#c4b5fd!important;font-weight:600!important}.pac-icon{display:none!important}.pac-item span:last-child{color:#94a3b8!important;font-size:12px!important}@media (max-width:968px){.sat-results-grid{grid-template-columns:1fr}.sat-steps{flex-wrap:wrap}.sat-map-container{height:400px}}@media (max-width:480px){.satellite-estimator{overflow-x:hidden}.sat-header{padding:20px 16px 16px}.sat-header h1{font-size:22px}.sat-content{padding:16px 14px}.sat-analysis-card,.sat-search-card{padding:18px 14px}.sat-map-container{height:350px}.sat-map-toolbar{align-items:flex-start;flex-direction:column;gap:10px}.sat-map-actions{width:100%}.sat-map-actions .sat-btn{flex:1 1;justify-content:center}.sat-steps{gap:6px}.sat-step{font-size:11px;padding:8px 12px}}.admin-dashboard{background:#0f172a;min-height:100vh}.admin-header{background:linear-gradient(135deg,#1e293b,#0f172a);border-bottom:1px solid #334155;padding:40px 30px}.admin-header-inner{margin:0 auto;max-width:1400px}.admin-header h1{color:#e2e8f0;font-size:32px;font-weight:700;margin:0 0 8px}.admin-header p{color:#94a3b8;font-size:16px;margin:0}.admin-content{margin:0 auto;max-width:1400px;padding:30px 20px 60px}.stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,1fr);margin-bottom:24px}.admin-stat-card{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:12px;display:flex;gap:16px;padding:20px;transition:border-color .2s}.admin-stat-card:hover{border-color:#475569}.stat-icon{align-items:center;border-radius:12px;display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.stat-info{display:flex;flex-direction:column}.admin-stat-card .stat-number{color:#e2e8f0;font-size:28px;font-weight:700;line-height:1.2}.admin-stat-card .stat-label{color:#64748b;font-size:13px;font-weight:500}.chart-section{margin-bottom:24px}.chart-container{padding:20px 24px 12px}.admin-section{background:#1e293b;border:1px solid #334155;border-radius:12px;overflow:hidden}.section-top{align-items:center;border-bottom:1px solid #334155;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding:20px 24px}.section-top h2{color:#e2e8f0;font-size:18px;font-weight:600;margin:0}.section-actions{align-items:center;display:flex;gap:12px}.search-wrapper{position:relative}.search-wrapper .search-icon{color:#475569;left:12px;position:absolute;top:50%;transform:translateY(-50%)}.admin-search{background:#0f172a;border:1px solid #334155;border-radius:8px;color:#e2e8f0;font-size:14px;padding:10px 16px 10px 36px;transition:border-color .2s;width:320px}.admin-search::placeholder{color:#475569}.admin-search:focus{border-color:#3b82f6;outline:none}.btn-export{align-items:center;background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:background .2s;white-space:nowrap}.btn-export:hover{background:#2563eb}.table-wrapper{overflow-x:auto}.admin-table{border-collapse:collapse;font-size:14px;width:100%}.admin-table th{background:#0f172a;border-bottom:1px solid #334155;color:#64748b;font-size:12px;font-weight:600;letter-spacing:.5px;text-align:left;text-transform:uppercase}.admin-table td,.admin-table th{padding:14px 16px;white-space:nowrap}.admin-table td{border-bottom:1px solid #33415580;color:#cbd5e1}.admin-table tbody tr:hover{background:#3b82f60d}.admin-table .user-name{color:#e2e8f0;font-weight:600}.admin-table a{color:#60a5fa;text-decoration:none}.admin-table a:hover{text-decoration:underline}.admin-table .project-count{color:#94a3b8;font-weight:600;text-align:center}.status-badge{border-radius:20px;display:inline-block;font-size:12px;font-weight:600;padding:4px 12px}.status-badge.trial{background:#06b6d426;color:#22d3ee}.status-badge.paid{background:#10b98126;color:#6ee7b7}.status-badge.free{background:#64748b26;color:#94a3b8}@media (max-width:1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.stats-grid{grid-template-columns:1fr}.section-top{align-items:flex-start;flex-direction:column}.admin-search{width:100%}.section-actions{flex-direction:column;width:100%}.search-wrapper{width:100%}}.admin-tabs{border-bottom:1px solid #334155;display:flex;gap:8px;margin-bottom:24px;overflow-x:auto;padding-bottom:0}.admin-tab{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:#94a3b8;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;padding:12px 18px;transition:color .15s,border-color .15s;white-space:nowrap}.admin-tab:hover{color:#e2e8f0}.admin-tab.active{border-bottom-color:#3b82f6;color:#60a5fa}.faq-error{background:#ef44441f;border:1px solid #ef44444d;border-radius:8px;color:#fca5a5;font-size:13px;margin-bottom:14px;padding:10px 14px}.faq-list{display:flex;flex-direction:column;gap:12px}.faq-card{background:#1e293b;border:1px solid #334155;border-radius:10px;padding:16px 18px;transition:border-color .15s,opacity .15s}.faq-card:hover{border-color:#475569}.faq-card.inactive{opacity:.55}.faq-row-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.faq-cat{background:#3b82f626;border-radius:999px;color:#60a5fa;display:inline-block;font-size:11px;font-weight:700;letter-spacing:.5px;padding:3px 10px;text-transform:uppercase}.faq-cat.pricing{background:#f59e0b26;color:#fbbf24}.faq-cat.tools{background:#8b5cf626;color:#c4b5fd}.faq-cat.billing{background:#10b98126;color:#6ee7b7}.faq-cat.technical{background:#ec489926;color:#f9a8d4}.faq-toggle{align-items:center;background:#0000;border:1px solid #334155;border-radius:6px;color:#94a3b8;cursor:pointer;display:inline-flex;font-size:12px;gap:6px;padding:4px 10px}.faq-toggle:hover{border-color:#475569;color:#e2e8f0}.admin-dashboard .faq-q{color:#e2e8f0;font-size:14px;font-weight:700;line-height:1.5;margin-bottom:6px}.admin-dashboard .faq-a{color:#cbd5e1;font-size:13px;line-height:1.55;margin-bottom:12px;white-space:pre-wrap}.faq-actions{display:flex;gap:8px}.btn-ghost{align-items:center;background:#0000;border:1px solid #334155;border-radius:6px;color:#94a3b8;cursor:pointer;display:inline-flex;font-size:12px;font-weight:600;gap:6px;padding:6px 14px;transition:border-color .15s,color .15s}.btn-ghost:hover{border-color:#475569;color:#e2e8f0}.btn-ghost.danger{color:#fca5a5}.btn-ghost.danger:hover{border-color:#ef4444;color:#fecaca}.faq-editor{background:#0f172a;border:1px solid #334155;border-radius:10px;gap:14px;margin-bottom:16px;padding:18px}.faq-editor,.faq-editor-row{display:flex;flex-direction:column}.faq-editor-row{gap:6px}.faq-editor-row label,.faq-editor-row-inline label{color:#94a3b8;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.faq-editor-row input,.faq-editor-row textarea,.faq-editor-row-inline select{background:#1e293b;border:1px solid #334155;border-radius:6px;color:#e2e8f0;font-family:inherit;font-size:14px;outline:none;padding:10px 12px;transition:border-color .15s}.faq-editor-row input:focus,.faq-editor-row textarea:focus,.faq-editor-row-inline select:focus{border-color:#3b82f6}.faq-editor-row textarea{min-height:80px;resize:vertical}.faq-editor-row-inline{align-items:flex-end;display:flex;flex-wrap:wrap;gap:18px}.faq-editor-row-inline>div{display:flex;flex-direction:column;gap:6px}.faq-active-toggle{align-items:center;color:#cbd5e1;cursor:pointer;display:inline-flex;font-size:13px;font-weight:500!important;gap:8px;letter-spacing:0!important;text-transform:none!important}.faq-active-toggle input[type=checkbox]{cursor:pointer;height:16px;width:16px}.faq-editor-actions{border-top:1px solid #334155;display:flex;gap:10px;padding-top:14px}.trace-profile-page{color:#e2e8f0;margin:0 auto;max-width:1600px;padding:32px 20px 60px}.tp-header{margin-bottom:28px}.tp-back{align-items:center;background:#0000;border:1px solid #334155;border-radius:6px;color:#94a3b8;cursor:pointer;display:inline-flex;font-size:13px;gap:6px;margin-bottom:18px;padding:7px 14px}.tp-back:hover{border-color:#60a5fa;color:#e2e8f0}.tp-header h1{color:#f1f5f9;font-size:32px;font-weight:700;margin:0 0 8px}.tp-sub{color:#94a3b8;font-size:15px;margin:0}.tp-restore-banner,.tp-scale-banner{align-items:center;background:linear-gradient(135deg,#fbbf241a,#fbbf240a);border:1px solid #fbbf2473;border-radius:12px;display:flex;gap:20px;justify-content:space-between;margin-bottom:20px;padding:14px 18px}.tp-scale-banner{background:linear-gradient(135deg,#ef44441a,#ef44440a);border-color:#ef44448c}.tp-scale-banner .tp-restore-body strong{color:#fecaca}.tp-restore-body{display:flex;flex-direction:column;gap:4px}.tp-restore-body strong{color:#fde68a;font-size:14px}.tp-restore-body span{color:#cbd5e1;font-size:13px}.tp-restore-actions{display:flex;flex-shrink:0;gap:10px}@media (max-width:720px){.tp-restore-banner{align-items:stretch;flex-direction:column}.tp-restore-actions{flex-direction:row}}.tp-steps{background:#1e293b99;border:1px solid #334155;border-radius:12px;display:flex;gap:28px;margin-bottom:32px;padding:14px 18px}.tp-step{align-items:center;color:#64748b;display:flex;font-size:14px;font-weight:600;gap:10px}.tp-step-num{align-items:center;background:#334155;border-radius:50%;color:#94a3b8;display:inline-flex;font-size:13px;font-weight:700;height:26px;justify-content:center;width:26px}.tp-step.active{color:#60a5fa}.tp-step.active .tp-step-num{background:#2c5f8d;color:#fff}.tp-step.done{color:#10b981}.tp-step.done .tp-step-num{background:#10b981;color:#fff}.tp-panel{background:#1e293b;border:1px solid #334155;border-radius:12px;box-shadow:0 1px 3px #0003;padding:28px}.tp-address-form{display:flex;flex-direction:column;gap:16px;max-width:560px}.tp-address-form label{display:flex;flex-direction:column;gap:6px}.tp-ac-field,.tp-ac-field input{width:100%}.tp-label{align-items:center;color:#cbd5e1;display:inline-flex;font-size:13px;font-weight:600;gap:6px}.tp-address-form input,.tp-save-panel input,.tp-save-panel select{background:#0f172a;border:1px solid #334155;border-radius:8px;color:#e2e8f0;font-family:inherit;font-size:15px;outline:none;padding:11px 14px;transition:border-color .15s}.tp-address-form input:focus,.tp-save-panel input:focus,.tp-save-panel select:focus{border-color:#60a5fa}.tp-hint{color:#94a3b8;font-size:12px;margin:6px 0 0}.tp-error{background:#ef44441f;border:1px solid #ef44444d;border-radius:8px;color:#fca5a5;font-size:13px;padding:10px 14px}.tp-primary,.tp-primary-sm{align-items:center;background:#2c5f8d;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:12px 22px;transition:background .15s}.tp-primary-sm{font-size:13px;padding:8px 14px}.tp-primary-sm:hover:not(:disabled),.tp-primary:hover:not(:disabled){background:#3b82f6}.tp-primary-sm:disabled,.tp-primary:disabled{background:#334155;color:#64748b;cursor:not-allowed}.tp-ghost{align-items:center;background:#0000;border:1px solid #334155;border-radius:8px;color:#94a3b8;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:8px 14px;transition:all .15s}.tp-ghost:hover:not(:disabled){border-color:#60a5fa;color:#e2e8f0}.tp-ghost:disabled{cursor:not-allowed;opacity:.4}.tp-trace-wrap{grid-gap:24px;align-items:flex-start;display:grid;gap:24px;grid-template-columns:1fr 340px}.tp-canvas-col{background:#1e293b;border:1px solid #334155;border-radius:12px;padding:18px;position:relative}.tp-canvas-instructions{align-items:center;background:#0f172acc;border:1px solid #334155;border-radius:8px;color:#cbd5e1;display:inline-flex;font-size:13px;gap:8px;margin-bottom:12px;padding:10px 14px}.tp-canvas-col canvas{background:#0f172a;border:1px solid #334155;border-radius:8px;cursor:crosshair;display:block;max-width:100%}.tp-canvas-loading{align-items:center;background:#0f172ad9;border-radius:8px;color:#cbd5e1;display:flex;font-size:14px;gap:10px;inset:18px;justify-content:center;position:absolute}.tp-canvas-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.tp-side-col{gap:16px}.tp-side-col,.tp-total-card{display:flex;flex-direction:column}.tp-total-card{background:#2c5f8d;border-radius:12px;color:#fff;gap:4px;padding:18px 20px}.tp-total-label{font-size:11px;letter-spacing:.8px;opacity:.75;text-transform:uppercase}.tp-total-value{font-size:28px;font-weight:700}.tp-total-sub{font-size:12px;opacity:.7}.tp-faces-list{background:#1e293b;border:1px solid #334155;border-radius:12px;display:flex;flex-direction:column;gap:8px;max-height:400px;overflow-y:auto;padding:10px}.tp-faces-empty{color:#64748b;font-size:13px;padding:18px;text-align:center}.tp-face-card{align-items:center;background:#0f172a;border:1px solid #334155;border-radius:8px;display:flex;gap:10px;padding:10px;transition:border-color .15s}.tp-face-card:hover{border-color:#475569}.tp-face-swatch{border-radius:3px;flex-shrink:0;height:30px;width:12px}.tp-face-body{display:flex;flex:1 1;flex-direction:column;gap:4px;min-width:0}.tp-face-name{background:#0000;border:none;color:#e2e8f0;font-family:inherit;font-size:13px;font-weight:600;outline:none;padding:2px 0;width:100%}.tp-face-meta{align-items:center;color:#94a3b8;display:flex;font-size:11px;gap:14px}.tp-face-meta label{align-items:center;display:inline-flex;gap:4px}.tp-face-meta input[type=number]{background:#1e293b;border:1px solid #334155;border-radius:4px;color:#e2e8f0;font-family:inherit;font-size:11px;outline:none;padding:2px 4px;width:46px}.tp-face-meta input[type=number]:focus{border-color:#60a5fa}.tp-face-del{align-items:center;background:#0000;border:1px solid #0000;border-radius:5px;color:#64748b;cursor:pointer;display:inline-flex;justify-content:center;padding:5px}.tp-face-del:hover{background:#ef44441f;border-color:#ef44444d;color:#fca5a5}.tp-trace-nav{border-top:1px solid #334155;display:flex;gap:10px;justify-content:space-between;margin-top:4px;padding-top:8px}.tp-save-panel{display:flex;flex-direction:column;gap:18px;max-width:640px}.tp-save-panel label,.tp-save-summary{display:flex;flex-direction:column;gap:6px}.tp-save-summary{background:#0f172acc;border:1px solid #334155;border-radius:8px;color:#cbd5e1;font-size:13px;padding:14px 16px}.tp-save-summary strong{color:#f1f5f9;font-weight:600;margin-right:6px}.tp-save-actions{display:flex;gap:10px;justify-content:space-between}.tp-saved-panel{margin:0 auto;max-width:640px;text-align:center}.tp-saved-hero{align-items:center;display:flex;flex-direction:column;gap:8px;padding:12px 0 4px}.tp-saved-icon{background:#10b98126;border-radius:50%;color:#10b981;display:grid;height:76px;margin-bottom:4px;place-items:center;width:76px}.tp-saved-panel h2{color:#f1f5f9;font-size:26px;font-weight:700;margin:6px 0 4px}.tp-saved-sub{color:#cbd5e1;font-size:15px;line-height:1.55;margin:0;max-width:460px}.tp-saved-sub strong{color:#f1f5f9}.tp-saved-sub em{color:#93c5fd;font-style:normal;font-weight:600}@keyframes tp-spin{to{transform:rotate(1turn)}}.spin{animation:tp-spin 1s linear infinite}@media (max-width:960px){.tp-trace-wrap{grid-template-columns:1fr}.tp-steps{flex-wrap:wrap;gap:14px}}.team-page{background:#0f172a;min-height:100vh}.team-header{background:linear-gradient(135deg,#1e293b,#0f172a);border-bottom:1px solid #334155;padding:40px 30px}.team-header-inner{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1000px}.team-header h1{color:#e2e8f0;font-size:32px;font-weight:700;margin:0 0 6px}.team-header p{color:#94a3b8;font-size:15px;margin:0}.btn-invite{align-items:center;background:#3b82f6;border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:8px;padding:12px 24px;transition:background .2s}.btn-invite:hover{background:#2563eb}.team-content{margin:0 auto;max-width:1000px;padding:30px 20px 60px}.team-alert{align-items:center;border-radius:10px;display:flex;font-size:14px;justify-content:space-between;margin-bottom:20px;padding:14px 20px}.team-alert.error{background:#ef44441a;border:1px solid #ef44444d;color:#fca5a5}.team-alert.success{background:#10b9811a;border:1px solid #10b9814d;color:#6ee7b7}.team-alert button{background:none;border:none;color:inherit;cursor:pointer;font-size:20px;padding:0 4px}.invite-card{background:#1e293b;border:1px solid #334155;border-radius:12px;margin-bottom:24px;padding:24px}.invite-card h3{color:#e2e8f0;font-size:17px;margin:0 0 16px}.invite-fields{display:flex;flex-wrap:wrap;gap:12px}.invite-fields input,.invite-fields select{background:#0f172a;border:1px solid #334155;border-radius:8px;color:#e2e8f0;flex:1 1;font-size:14px;min-width:180px;padding:12px 16px}.invite-fields input::placeholder{color:#475569}.invite-fields input:focus,.invite-fields select:focus{border-color:#3b82f6;outline:none}.invite-fields select{cursor:pointer;min-width:160px}.invite-fields button{background:#10b981;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 28px;transition:background .2s;white-space:nowrap}.invite-fields button:hover{background:#059669}.invite-fields button:disabled{cursor:not-allowed;opacity:.6}.role-legend{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}.role-chip{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:10px;display:flex;flex:1 1;gap:8px;min-width:200px;padding:10px 16px}.role-chip-label{color:#e2e8f0;font-size:13px;font-weight:600;white-space:nowrap}.role-chip-desc{color:#64748b;font-size:12px;line-height:1.3}.members-section h2{align-items:center;color:#e2e8f0;display:flex;font-size:20px;font-weight:600;gap:10px;margin:0 0 20px}.members-grid{display:flex;flex-direction:column;gap:12px}.member-card{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:12px;display:flex;gap:16px;padding:20px;transition:border-color .2s}.member-card:hover{border-color:#475569}.member-avatar{align-items:center;border:2px solid;border-radius:12px;display:flex;flex-shrink:0;height:52px;justify-content:center;width:52px}.member-info{flex:1 1;min-width:0}.member-name{align-items:center;color:#e2e8f0;display:flex;font-size:16px;font-weight:600;gap:8px}.owner-tag{background:#f59e0b26;border-radius:20px;color:#fbbf24;font-size:11px;font-weight:600;padding:2px 8px}.member-email{color:#60a5fa;font-size:14px;margin-top:2px}.member-joined{color:#475569;font-size:12px;margin-top:4px}.member-actions{align-items:center;display:flex;flex-shrink:0;gap:10px}.role-select-wrapper{position:relative}.role-select{-webkit-appearance:none;appearance:none;background:#0f172a;border:1px solid #334155;border-radius:8px;color:#e2e8f0;cursor:pointer;font-size:13px;padding:8px 32px 8px 14px}.role-select:focus{border-color:#3b82f6;outline:none}.role-select-icon{color:#475569;pointer-events:none;position:absolute;right:10px;top:50%;transform:translateY(-50%)}.btn-remove{align-items:center;background:#ef44441a;border:1px solid #ef444433;border-radius:8px;color:#ef4444;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s;width:36px}.btn-remove:hover{background:#ef444433}.role-badge{border-radius:20px;font-size:13px;font-weight:600;padding:6px 14px}.no-members{color:#475569;padding:60px 20px;text-align:center}.no-members svg{margin-bottom:12px;opacity:.5}@media (max-width:768px){.team-header-inner{align-items:flex-start;gap:16px}.invite-fields,.member-card,.role-legend,.team-header-inner{flex-direction:column}.member-card{align-items:flex-start}.member-actions{justify-content:flex-end;width:100%}}.bi-calc{background:#0f172a;min-height:100vh}.bi-header{background:linear-gradient(135deg,#1a2e05,#365314);border-bottom:1px solid #6d28d9;padding:40px 30px}.bi-header-inner{margin:0 auto;max-width:1200px}.bi-header h1{align-items:center;color:#e2e8f0;display:flex;font-size:32px;font-weight:700;gap:12px;margin:0 0 6px}.bi-header p{color:#bef264;font-size:15px;margin:0}.bi-content{margin:0 auto;max-width:1200px;padding:30px 20px 60px}.bi-mode-toggle{background:#1e293b;border-radius:12px;display:flex;gap:4px;margin-bottom:24px;padding:4px;width:-webkit-fit-content;width:fit-content}.bi-mode-toggle button{align-items:center;background:#0000;border:none;border-radius:10px;color:#94a3b8;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;transition:all .2s}.bi-mode-toggle button.active{background:linear-gradient(135deg,#84cc16,#65a30d);box-shadow:0 2px 8px #7c3aed4d;color:#fff}.bi-address-section{margin-bottom:24px}.bi-address-row{display:flex;gap:12px}.bi-address-field{flex:1 1;position:relative}.bi-addr-icon{color:#a3e635;left:16px;position:absolute;top:50%;transform:translateY(-50%)}.bi-address-field input{background:#1e293b;border:2px solid #334155;border-radius:12px;box-sizing:border-box;color:#e2e8f0;font-size:16px;padding:16px 20px 16px 48px;transition:border-color .2s;width:100%}.bi-address-field input::placeholder{color:#475569}.bi-address-field input:focus{border-color:#a3e635;outline:none}.bi-btn-analyze{align-items:center;background:linear-gradient(135deg,#84cc16,#65a30d);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:10px;padding:16px 32px;transition:all .2s;white-space:nowrap}.bi-btn-analyze:hover{box-shadow:0 8px 25px #7c3aed4d;transform:translateY(-1px)}.bi-btn-analyze:disabled{cursor:not-allowed;opacity:.7;transform:none}.bi-error{background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;color:#fca5a5;font-size:14px;margin-top:12px;padding:12px 16px}.bi-analyzing{padding:80px 20px;text-align:center}.bi-analyzing h3{color:#e2e8f0;font-size:20px;margin:16px 0 8px}.bi-analyzing p{color:#94a3b8}.bi-manual-section{background:#1e293b;border:1px solid #334155;border-radius:16px;margin-bottom:24px;padding:24px}.bi-manual-section h3{align-items:center;color:#e2e8f0;display:flex;font-size:16px;gap:8px;margin:0 0 16px}.bi-manual-fields{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.bi-manual-field label{color:#94a3b8;display:block;font-size:13px;margin-bottom:6px}.bi-manual-field input,.bi-manual-field select{background:#0f172a;border:1px solid #334155;border-radius:8px;box-sizing:border-box;color:#e2e8f0;font-size:14px;padding:10px 14px;width:100%}.bi-manual-field input:focus,.bi-manual-field select:focus{border-color:#a3e635;outline:none}.bi-manual-actions{display:flex;justify-content:flex-end;margin-top:20px}.bi-btn-calculate{align-items:center;background:linear-gradient(135deg,#84cc16,#65a30d);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:8px;padding:12px 32px}.bi-btn-calculate:hover{transform:translateY(-1px)}.bi-results-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr}@media (max-width:900px){.bi-results-grid{grid-template-columns:1fr}}.bi-satellite-card{background:#1e293b;border:1px solid #334155;border-radius:16px;margin-bottom:24px;padding:16px}.bi-satellite-card img{border-radius:12px;width:100%}.bi-satellite-card .bi-sat-meta{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px}.bi-sat-badge{align-items:center;background:#7c3aed26;border-radius:6px;color:#bef264;display:inline-flex;font-size:12px;font-weight:600;gap:4px;padding:4px 10px}.bi-sat-badge.cached{background:#22d39a26;color:#6ee7b7}.bi-card{background:#1e293b;border:1px solid #334155;border-radius:16px;margin-bottom:20px;padding:20px}.bi-card h3{align-items:center;color:#e2e8f0;display:flex;font-size:16px;gap:8px;margin:0 0 16px}.bi-total-card{background:linear-gradient(135deg,#84cc16,#65a30d);border-radius:16px;margin-bottom:20px;padding:24px;text-align:center}.bi-total-label{color:#fffc;font-size:14px}.bi-total-amount{color:#fff;font-size:36px;font-weight:800;margin:8px 0 4px}.bi-total-detail{color:#ffffffb3;font-size:13px}.bi-boq table{border-collapse:collapse;width:100%}.bi-boq th{border-bottom:1px solid #334155;color:#94a3b8;font-size:12px;font-weight:600;padding:8px 6px;text-align:left;text-transform:uppercase}.bi-boq td{border-bottom:1px solid #33415580;color:#e2e8f0;font-size:14px;padding:10px 6px}.bi-boq td:last-child,.bi-boq th:last-child{text-align:right}.bi-boq tfoot td{border-top:2px solid #84cc16;color:#bef264;font-weight:700;padding-top:12px}.bi-item-row{align-items:center;border-bottom:1px solid #33415580;display:flex;gap:8px;padding:8px 0}.bi-item-row label{color:#e2e8f0;flex:1 1;font-size:14px}.bi-item-row input{background:#0f172a;border:1px solid #334155;border-radius:6px;color:#e2e8f0;font-size:14px;padding:6px 10px;text-align:right;width:80px}.bi-item-row input:focus{border-color:#a3e635;outline:none}.bi-item-row .bi-item-cost{color:#bef264;font-weight:600;text-align:right;width:90px}.bi-material-options{display:flex;flex-direction:column;gap:6px}.bi-material-option{align-items:center;background:#0f172a;border:2px solid #334155;border-radius:10px;color:#e2e8f0;cursor:pointer;display:flex;font-size:14px;gap:10px;padding:10px 14px;transition:all .15s}.bi-material-option:hover{border-color:#475569}.bi-material-option.selected{background:#84cc1614;border-color:#84cc16}.bi-mat-dot{border-radius:50%;flex-shrink:0;height:10px;width:10px}.bi-mat-name{flex:1 1;font-weight:500}.bi-mat-price{color:#a3e635;font-weight:600}.bi-specs-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.bi-spec-item{background:#0f172a;border-radius:10px;padding:12px}.bi-spec-label{color:#94a3b8;font-size:12px;margin-bottom:4px}.bi-spec-value{color:#e2e8f0;font-size:18px;font-weight:700}.bi-spec-input{background:#0f172a;border:1px solid #334155;border-radius:6px;box-sizing:border-box;color:#e2e8f0;font-size:16px;font-weight:700;margin-top:2px;padding:8px 10px;width:100%}.bi-spec-input:focus{border-color:#a3e635;outline:none}.bi-spec-input option{background:#0f172a;color:#e2e8f0}.bi-project-costs{background:#1e293b;border:1px solid #334155;border-radius:16px;margin-bottom:20px;padding:20px}.bi-project-costs h3{align-items:center;color:#e2e8f0;display:flex;font-size:16px;gap:8px;margin:0 0 16px}.bi-cost-item{margin-bottom:16px}.bi-cost-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.bi-cost-item-title{color:#e2e8f0;font-size:14px;font-weight:500}.bi-cost-item-total{color:#bef264;font-weight:700}.bi-cost-item-fields{display:flex;gap:12px}.bi-cost-field{flex:1 1}.bi-cost-field label{color:#94a3b8;display:block;font-size:12px;margin-bottom:4px}.bi-cost-field input{background:#0f172a;border:1px solid #334155;border-radius:8px;box-sizing:border-box;color:#e2e8f0;font-size:14px;padding:8px 12px;width:100%}.bi-cost-field input:focus{border-color:#a3e635;outline:none}.bi-cost-toggle{align-items:center;cursor:pointer;display:flex;gap:8px}.bi-cost-toggle input[type=checkbox]{accent-color:#84cc16}.bi-project-summary{border-top:1px solid #334155;margin-top:12px;padding-top:12px}.bi-project-summary-row{color:#cbd5e1;display:flex;font-size:14px;justify-content:space-between;padding:6px 0}.bi-project-summary-row.total{border-top:2px solid #84cc16;color:#bef264;font-size:16px;font-weight:700;margin-top:6px;padding-top:10px}.bi-scaffold-options{grid-gap:6px;display:grid;gap:6px;grid-template-columns:1fr 1fr}.bi-scaffold-btn{align-items:center;background:#0f172a;border:2px solid #334155;border-radius:8px;color:#94a3b8;cursor:pointer;display:flex;flex-direction:column;font-size:13px;padding:10px;transition:all .15s}.bi-scaffold-btn:hover{border-color:#475569}.bi-scaffold-btn.active{background:#84cc1614;border-color:#84cc16;color:#e2e8f0}.bi-scaffold-price{color:#a3e635;font-size:12px;margin-top:2px}.bi-margin-section{background:#1e293b;border:1px solid #334155;border-radius:16px;margin-bottom:20px;padding:20px}.bi-margin-section h3{align-items:center;color:#e2e8f0;display:flex;font-size:16px;gap:8px;margin:0 0 16px}.bi-margin-presets{display:flex;flex-wrap:wrap;gap:6px}.bi-margin-btn{background:#0f172a;border:2px solid #334155;border-radius:8px;color:#94a3b8;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:all .15s}.bi-margin-btn:hover{border-color:#475569}.bi-margin-btn.active{background:#84cc1614;border-color:#84cc16;color:#bef264}.bi-margin-custom{align-items:center;display:flex;position:relative}.bi-margin-input{background:#0f172a;border:2px solid #334155;border-radius:8px;color:#e2e8f0;font-size:14px;font-weight:600;padding:8px 28px 8px 12px;width:72px}.bi-margin-input:focus{border-color:#a3e635;outline:none}.bi-margin-pct-icon{color:#94a3b8;pointer-events:none;position:absolute;right:10px}.bi-margin-breakdown{background:#0f172a;border-radius:10px;margin-top:16px;padding:14px}.bi-margin-row{color:#cbd5e1;display:flex;font-size:14px;justify-content:space-between;padding:5px 0}.bi-margin-row.markup{color:#a3e635}.bi-margin-row.subtotal{font-weight:600}.bi-margin-row.gst{color:#94a3b8;font-size:13px}.bi-margin-row.total{border-top:2px solid #84cc16;color:#bef264;font-size:16px;font-weight:800;margin-top:4px;padding-top:8px}.bi-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.bi-btn-pdf,.bi-btn-reset,.bi-btn-save{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;font-size:15px;font-weight:700;gap:8px;padding:14px 28px;transition:all .2s}.bi-btn-pdf{background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff}.bi-btn-pdf:hover{box-shadow:0 6px 20px #dc26264d;transform:translateY(-1px)}.bi-btn-save{background:linear-gradient(135deg,#84cc16,#6d28d9);color:#fff}.bi-btn-save:hover{box-shadow:0 6px 20px #7c3aed4d;transform:translateY(-1px)}.bi-btn-save.saved{background:#16a34a}.bi-btn-save:disabled{cursor:not-allowed;opacity:.7;transform:none}.bi-btn-reset{background:#334155;color:#94a3b8}.bi-btn-reset:hover{background:#475569;color:#e2e8f0}.spin{animation:bi-spin 1s linear infinite}@keyframes bi-spin{to{transform:rotate(1turn)}}.qq-page{background:#0f172a;flex:1 1;min-height:100vh;width:100%}.qq-header-bar{background:linear-gradient(135deg,#7c3aed,#c026d3);border-bottom:1px solid #d946ef;padding:40px 30px}.qq-header-inner{margin:0 auto;max-width:1080px}.qq-header-bar h1{align-items:center;color:#f5f3ff;display:flex;font-size:32px;font-weight:700;gap:12px;margin:0 0 6px}.qq-header-bar p{color:#e9d5ff;font-size:15px;margin:0}.qq-container{margin:0 auto;max-width:1080px;padding:30px 20px 60px}.qq-card{background:#1e293b;border:1px solid #334155;border-radius:14px;margin-bottom:20px;padding:24px}.qq-card h2{color:#e2e8f0;font-size:16px;font-weight:700;margin:0 0 16px}.qq-card h2,.qq-card h3{align-items:center;display:flex;gap:8px}.qq-card h3{color:#cbd5e1;font-size:15px;font-weight:600;margin:0 0 14px}.qq-ai-section{padding:10px 0;text-align:center}.qq-ai-section p{color:#94a3b8;font-size:14px;margin:0 0 20px}.qq-ai-addr-row{display:flex;gap:12px;margin:0 auto;max-width:700px}.qq-addr-field{flex:1 1;position:relative}.qq-addr-icon{color:#c084fc;left:16px;position:absolute;top:50%;transform:translateY(-50%)}.qq-addr-field input{background:#0f172a;border:2px solid #334155;border-radius:14px;box-sizing:border-box;color:#e2e8f0;font-size:17px;padding:18px 20px 18px 48px;transition:border-color .2s;width:100%}.qq-addr-field input::placeholder{color:#475569}.qq-addr-field input:focus{border-color:#a855f7;outline:none}.qq-btn-analyze{align-items:center;background:linear-gradient(135deg,#a855f7,#7c3aed);border:none;border-radius:14px;color:#fff;cursor:pointer;display:flex;font-size:17px;font-weight:700;gap:10px;padding:18px 36px;transition:all .2s;white-space:nowrap}.qq-btn-analyze:hover{box-shadow:0 8px 25px #a855f74d;transform:translateY(-1px)}.qq-btn-analyze:disabled{cursor:not-allowed;opacity:.7;transform:none}.qq-error{background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;color:#fca5a5;font-size:14px;margin-left:auto;margin-right:auto;margin-top:12px;max-width:700px;padding:12px 16px}.qq-analyzing{padding:60px 20px;text-align:center}.qq-analyzing h3{color:#e2e8f0;font-size:20px;margin:16px 0 8px}.qq-analyzing p{color:#94a3b8}.qq-spin{animation:qq-spin-anim 1s linear infinite}@keyframes qq-spin-anim{to{transform:rotate(1turn)}}.qq-or{align-items:center;color:#475569;display:flex;font-size:13px;font-weight:600;gap:16px;letter-spacing:1px;margin:20px 0;text-transform:uppercase}.qq-or:after,.qq-or:before{background:#334155;content:"";flex:1 1;height:1px}.qq-manual-btn{align-items:center;background:#0000;border:1px solid #334155;border-radius:10px;color:#94a3b8;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;justify-content:center;margin:0 auto;max-width:300px;padding:12px 24px;transition:all .2s;width:100%}.qq-manual-btn:hover{border-color:#a855f7;color:#c084fc}.qq-layout{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.qq-field{margin-bottom:14px}.qq-field label{color:#94a3b8;display:block;font-size:12px;font-weight:600;letter-spacing:.4px;margin-bottom:6px;text-transform:uppercase}.qq-field input,.qq-field select{background:#0f172a;border:1px solid #334155;border-radius:8px;box-sizing:border-box;color:#e2e8f0;font-size:14px;padding:10px 14px;transition:border-color .2s;width:100%}.qq-field input:focus,.qq-field select:focus{border-color:#a855f7;outline:none}.qq-field input::placeholder{color:#475569}.qq-row-2{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.qq-row-2 .qq-field{margin-bottom:0}.qq-row-3{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr 1fr}.qq-row-3 .qq-field{margin-bottom:0}.qq-ai-tag{background:#a855f71a;border-radius:4px;color:#c084fc;font-size:11px;font-weight:500;margin-left:8px;padding:2px 8px}.qq-sat-img{border-radius:10px;margin-bottom:12px;max-height:280px;object-fit:cover;width:100%}.qq-badge{border-radius:6px;display:inline-flex;font-size:11px;font-weight:600;padding:4px 10px}.qq-badge.high{background:#10b98126;color:#6ee7b7}.qq-badge.medium{background:#a855f726;color:#c084fc}.qq-badge.low{background:#ef444426;color:#fca5a5}.qq-job-types{display:flex;flex-wrap:wrap;gap:8px}.qq-job-chip{background:#0f172a;border:2px solid #334155;border-radius:10px;color:#94a3b8;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .15s}.qq-job-chip:hover{border-color:#475569}.qq-job-chip.active{background:#a855f714;border-color:#a855f7;color:#c084fc}.qq-quote-card{background:linear-gradient(135deg,#1e1b4b,#1e293b);border:1px solid #4c1d95;border-radius:16px;padding:28px}.qq-quote-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:20px}.qq-quote-title{color:#e2e8f0;font-size:20px;font-weight:800;margin:0}.qq-quote-total{text-align:right}.qq-quote-total .amount{color:#c084fc;font-size:36px;font-weight:800;line-height:1}.qq-quote-total .label{color:#64748b;font-size:12px;letter-spacing:.5px;text-transform:uppercase}.qq-quote-lines{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.qq-quote-line{align-items:center;background:#0f172a80;border-radius:8px;display:flex;justify-content:space-between;padding:10px 14px}.qq-quote-line span:first-child{color:#94a3b8;font-size:14px}.qq-quote-line span:last-child{color:#e2e8f0;font-size:14px;font-weight:600}.qq-quote-line.subtotal{border-top:1px solid #334155;padding-top:14px}.qq-quote-line.subtotal span{font-weight:700}.qq-quote-line.gst span{color:#64748b;font-size:13px}.qq-quote-line.total{background:#a855f71a;border:1px solid #a855f74d}.qq-quote-line.total span{color:#c084fc;font-size:18px;font-weight:800}.qq-margin-row{align-items:center;display:flex;gap:8px;margin-bottom:16px}.qq-margin-presets{display:flex;flex-wrap:wrap;gap:6px}.qq-margin-btn{background:#0f172a;border:2px solid #334155;border-radius:8px;color:#94a3b8;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:all .15s}.qq-margin-btn:hover{border-color:#475569}.qq-margin-btn.active{background:#a855f714;border-color:#a855f7;color:#c084fc}.qq-margin-input{background:#0f172a;border:2px solid #334155;border-radius:8px;color:#e2e8f0;font-size:14px;font-weight:600;padding:8px 28px 8px 12px;width:72px}.qq-margin-input:focus{border-color:#a855f7;outline:none}.qq-actions{display:flex;flex-wrap:wrap;gap:10px}.qq-btn-pdf{align-items:center;background:linear-gradient(135deg,#dc2626,#b91c1c);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;flex:1 1;font-size:15px;font-weight:700;gap:8px;justify-content:center;min-width:180px;padding:14px 20px;transition:all .2s}.qq-btn-pdf:hover{box-shadow:0 6px 20px #dc26264d;transform:translateY(-1px)}.qq-btn-save{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:6px;padding:14px 20px;transition:all .2s}.qq-btn-save:hover{transform:translateY(-1px)}.qq-btn-save.saved{background:#16a34a}.qq-btn-save:disabled{cursor:not-allowed;opacity:.7;transform:none}.qq-btn-ghost{align-items:center;background:#0000;border:1px solid #334155;border-radius:10px;color:#94a3b8;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:14px 16px;transition:all .2s}.qq-btn-ghost:hover{border-color:#64748b;color:#e2e8f0}.qq-btn-primary{align-items:center;background:linear-gradient(135deg,#a855f7,#7c3aed);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:700;gap:8px;justify-content:center;padding:12px 24px;transition:all .2s;width:100%}.qq-btn-primary:hover{box-shadow:0 6px 20px #a855f74d;transform:translateY(-1px)}.qq-btn-primary:disabled{cursor:not-allowed;opacity:.6;transform:none}.qq-saved-list{display:flex;flex-direction:column;gap:6px}.qq-saved-item{align-items:center;background:#0f172a;border:1px solid #334155;border-radius:8px;display:flex;justify-content:space-between;padding:8px 12px}.qq-saved-link{background:none;border:none;color:#c084fc;cursor:pointer;flex:1 1;font-size:13px;font-weight:500;overflow:hidden;padding:0;text-align:left;text-overflow:ellipsis;white-space:nowrap}.qq-saved-link:hover{color:#e9d5ff;text-decoration:underline}.qq-btn-icon-sm{align-items:center;background:none;border:none;border-radius:6px;color:#64748b;cursor:pointer;display:flex;height:28px;justify-content:center;width:28px}.qq-btn-icon-sm:hover{background:#ef444426;color:#ef4444}@media (max-width:768px){.qq-layout{grid-template-columns:1fr}.qq-ai-addr-row,.qq-quote-header{flex-direction:column}.qq-quote-header{gap:12px}.qq-quote-total{text-align:left}.qq-actions{flex-direction:column}.qq-row-2,.qq-row-3{grid-template-columns:1fr}.qq-header-bar{padding:28px 16px}.qq-header-bar h1{font-size:24px}}.bp-page{background:#0f172a;flex:1 1;min-height:100vh;width:100%}.bp-header-bar{background:linear-gradient(135deg,#047857,#059669 50%,#10b981);border-bottom:1px solid #34d399;padding:40px 30px}.bp-header-inner{margin:0 auto;max-width:1200px}.bp-header-bar h1{align-items:center;color:#ecfdf5;display:flex;font-size:32px;font-weight:700;gap:12px;margin:0 0 6px}.bp-header-bar p{color:#a7f3d0;font-size:15px;margin:0}.bp-container{margin:0 auto;max-width:1200px;padding:30px 20px 60px}.bp-status-bar{align-items:center;border-radius:10px;display:flex;font-size:14px;gap:12px;margin-bottom:24px;padding:12px 20px}.bp-status-bar.connected{background:#10b9811a;border:1px solid #10b9814d;color:#6ee7b7}.bp-status-bar.pending{background:#f59e0b1a;border:1px solid #f59e0b4d;color:#fcd34d}.bp-status-bar.error{background:#ef44441a;border:1px solid #ef44444d;color:#fca5a5}.bp-status-dot{border-radius:50%;flex-shrink:0;height:8px;width:8px}.bp-status-dot.green{background:#10b981}.bp-status-dot.yellow{background:#f59e0b}.bp-status-dot.red{background:#ef4444}.bp-search-card{background:#1e293b;border:1px solid #334155;border-radius:14px;margin-bottom:24px;padding:24px}.bp-search-row{display:flex;gap:12px}.bp-search-input{flex:1 1;position:relative}.bp-search-icon{color:#10b981;left:16px;position:absolute;top:50%;transform:translateY(-50%)}.bp-search-input input{background:#0f172a;border:2px solid #334155;border-radius:12px;box-sizing:border-box;color:#e2e8f0;font-size:16px;padding:16px 20px 16px 48px;transition:border-color .2s;width:100%}.bp-search-input input::placeholder{color:#475569}.bp-search-input input:focus{border-color:#10b981;outline:none}.bp-btn-search{align-items:center;background:linear-gradient(135deg,#059669,#047857);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:10px;padding:16px 32px;transition:all .2s;white-space:nowrap}.bp-btn-search:hover{box-shadow:0 8px 25px #0596694d;transform:translateY(-1px)}.bp-btn-search:disabled{cursor:not-allowed;opacity:.7;transform:none}.bp-quick-searches{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.bp-quick-tag{background:#0f172a;border:1px solid #334155;border-radius:20px;color:#94a3b8;cursor:pointer;font-size:13px;padding:6px 14px;transition:all .2s}.bp-quick-tag:hover{background:#10b9811a;border-color:#10b981;color:#6ee7b7}.bp-results-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.bp-results-header h2{color:#e2e8f0;font-size:16px;font-weight:700;margin:0}.bp-results-count{color:#64748b;font-size:13px}.bp-results-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.bp-product-card{background:#1e293b;border:1px solid #334155;border-radius:12px;padding:20px;position:relative;transition:all .2s}.bp-product-card:hover{border-color:#10b981;box-shadow:0 8px 30px #0000004d;transform:translateY(-2px)}.bp-product-sku{color:#10b981;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:8px}.bp-product-name{color:#e2e8f0;font-size:15px;font-weight:600;line-height:1.4;margin-bottom:6px}.bp-product-brand{color:#94a3b8;font-size:13px;margin-bottom:12px}.bp-product-meta{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.bp-product-tag{background:#10b9811a;border:1px solid #10b98133;border-radius:6px;color:#6ee7b7;font-size:11px;padding:3px 10px}.bp-product-price-row{align-items:center;border-top:1px solid #334155;display:flex;justify-content:space-between;padding-top:14px}.bp-product-price{color:#10b981;font-size:22px;font-weight:700}.bp-product-price .bp-gst{color:#64748b;font-size:11px;font-weight:400;margin-left:4px}.bp-product-uom{color:#64748b;font-size:12px}.bp-no-price{color:#f59e0b;font-size:14px;font-style:italic}.bp-loading{padding:60px 20px;text-align:center}.bp-loading h3{color:#e2e8f0;font-size:18px;margin:16px 0 6px}.bp-loading p{color:#94a3b8;font-size:14px}.bp-spin{animation:bp-spin-anim 1s linear infinite}@keyframes bp-spin-anim{to{transform:rotate(1turn)}}.bp-empty{padding:60px 20px;text-align:center}.bp-empty h3{color:#e2e8f0;font-size:18px;margin:16px 0 6px}.bp-empty p{color:#94a3b8;font-size:14px;margin:0 auto;max-width:500px}.bp-pending-card{background:linear-gradient(135deg,#f59e0b14,#d9770614);border:1px solid #f59e0b4d;border-radius:14px;margin-bottom:24px;padding:32px;text-align:center}.bp-pending-card h3{color:#fcd34d;font-size:20px;margin:16px 0 8px}.bp-pending-card p{color:#fde68a;font-size:14px;line-height:1.6;margin:0 auto;max-width:600px}.bp-pending-card .bp-pending-steps{margin:20px auto 0;max-width:500px;text-align:left}.bp-pending-card .bp-pending-steps li{color:#d4d4d8;font-size:14px;line-height:1.5;margin-bottom:8px}.bp-info-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-bottom:24px}.bp-info-card{align-items:flex-start;background:#1e293b;border:1px solid #334155;border-radius:12px;display:flex;gap:14px;padding:20px}.bp-info-icon{align-items:center;border-radius:10px;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.bp-info-icon.green{background:#10b98126;color:#10b981}.bp-info-icon.blue{background:#3b82f626;color:#3b82f6}.bp-info-icon.amber{background:#f59e0b26;color:#f59e0b}.bp-info-content h4{color:#e2e8f0;font-size:14px;font-weight:600;margin:0 0 4px}.bp-info-content p{color:#94a3b8;font-size:13px;line-height:1.4;margin:0}@media (max-width:768px){.bp-header-bar{padding:28px 16px}.bp-header-bar h1{font-size:24px}.bp-container{padding:20px 16px 40px}.bp-search-row{flex-direction:column}.bp-info-grid,.bp-results-grid{grid-template-columns:1fr}.bp-tabs{overflow-x:auto}.bp-price-table{font-size:12px}}.bp-tabs{background:#1e293b;border:1px solid #334155;border-radius:12px;display:flex;gap:4px;margin-bottom:24px;padding:4px}.bp-tab{align-items:center;background:#0000;border:none;border-radius:10px;color:#94a3b8;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s;white-space:nowrap}.bp-tab:hover{background:#ffffff0d;color:#e2e8f0}.bp-tab.active{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 2px 8px #0596694d;color:#fff}.bp-sandbox-note{align-items:center;background:#f59e0b14;border:1px solid #f59e0b40;border-radius:8px;color:#fcd34d;display:flex;font-size:13px;gap:8px;margin-bottom:20px;padding:10px 16px}.bp-price-table-wrap{background:#1e293b;border:1px solid #334155;border-radius:14px;overflow-x:auto;padding:20px}.bp-price-table{border-collapse:collapse;width:100%}.bp-price-table th{border-bottom:1px solid #334155;color:#94a3b8;font-size:12px;font-weight:600;letter-spacing:.5px;padding:10px 14px;text-align:left;text-transform:uppercase}.bp-price-table td{border-bottom:1px solid #33415580;color:#e2e8f0;font-size:14px;padding:14px}.bp-price-table td code{background:#10b9811a;border-radius:4px;color:#10b981;font-size:13px;font-weight:600;padding:2px 8px}.bp-price-cell{color:#10b981;font-size:16px;font-weight:700}.bp-price-class{border-radius:6px;font-size:11px;font-weight:600;padding:3px 10px}.bp-price-class.retail{background:#3b82f626;color:#60a5fa}.bp-price-class.powerpass{background:#a855f726;color:#c084fc}.bp-price-id{color:#64748b;font-family:monospace;font-size:11px;max-width:200px;overflow:hidden;text-overflow:ellipsis}.bp-stock-result{margin-top:24px}.bp-stock-card{background:#1e293b;border:1px solid #334155;border-radius:14px;padding:24px}.bp-stock-header{align-items:center;border-bottom:1px solid #334155;color:#e2e8f0;display:flex;font-size:15px;gap:16px;margin-bottom:20px;padding-bottom:16px}.bp-stock-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}.bp-stock-metric{background:#0f172a;border:1px solid #334155;border-radius:10px;padding:16px;text-align:center}.bp-stock-label{color:#94a3b8;display:block;font-size:12px;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.bp-stock-value{color:#e2e8f0;font-size:24px;font-weight:700}.bp-stock-level{border-radius:8px;display:inline-block;font-size:16px;font-weight:700;padding:6px 16px}.bp-stock-level.green{background:#10b98126;color:#10b981}.bp-stock-level.amber,.bp-stock-level.yellow{background:#f59e0b26;color:#f59e0b}.bp-stock-level.red{background:#ef444426;color:#ef4444}.tarc-chat-root{bottom:24px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;position:fixed;right:24px;z-index:9999}.tarc-chat-fab{align-items:center;background:linear-gradient(135deg,#1e40af,#3b82f6);border:none;border-radius:50px;box-shadow:0 4px 20px #3b82f666,0 2px 8px #00000026;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;letter-spacing:.01em;padding:12px 20px;transition:all .3s ease}.tarc-chat-fab:hover{box-shadow:0 6px 28px #3b82f680,0 4px 12px #0003;transform:translateY(-2px)}.tarc-chat-fab.pulse{animation:tarc-pulse 2s ease-in-out infinite}@keyframes tarc-pulse{0%,to{box-shadow:0 4px 20px #3b82f666}50%{box-shadow:0 4px 30px #3b82f6b3,0 0 0 8px #3b82f61a}}.tarc-chat-fab-label{white-space:nowrap}.tarc-chat-panel{animation:tarc-chat-slide-up .25s ease-out;background:#0f172a;border:1px solid #33415599;border-radius:16px;box-shadow:0 8px 40px #0006,0 0 0 1px #ffffff0d;display:flex;flex-direction:column;height:560px;overflow:hidden;width:380px}@keyframes tarc-chat-slide-up{0%{opacity:0;transform:translateY(16px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.tarc-chat-header{align-items:center;background:linear-gradient(135deg,#1e293b,#0f172a);border-bottom:1px solid #33415580;display:flex;justify-content:space-between;padding:14px 16px}.tarc-chat-header-left{align-items:center;color:#60a5fa;display:flex;gap:10px}.tarc-chat-header-title{color:#f1f5f9;font-size:14px;font-weight:600}.tarc-chat-header-sub{color:#64748b;font-size:11px}.tarc-chat-close{background:none;border:none;border-radius:6px;color:#64748b;cursor:pointer;padding:4px;transition:all .2s}.tarc-chat-close:hover{background:#64748b26;color:#94a3b8}.tarc-chat-messages{display:flex;flex:1 1;flex-direction:column;gap:12px;overflow-y:auto;padding:16px;scrollbar-color:#334155 #0000;scrollbar-width:thin}.tarc-chat-messages::-webkit-scrollbar{width:5px}.tarc-chat-messages::-webkit-scrollbar-thumb{background:#334155;border-radius:4px}.tarc-chat-welcome{padding:20px 8px;text-align:center}.tarc-chat-welcome-icon{animation:tarc-sparkle 2s ease-in-out infinite;color:#60a5fa;margin:0 auto 12px}@keyframes tarc-sparkle{0%,to{opacity:1}50%{opacity:.6;transform:scale(1.05)}}.tarc-chat-welcome-title{color:#f1f5f9;font-size:18px;font-weight:700;margin-bottom:6px}.tarc-chat-welcome-text{color:#94a3b8;font-size:13px;line-height:1.5;margin-bottom:16px}.tarc-chat-quick-questions{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.tarc-chat-quick-btn{background:#3b82f614;border:1px solid #3b82f640;border-radius:20px;color:#93c5fd;cursor:pointer;font-size:12px;padding:6px 12px;transition:all .2s}.tarc-chat-quick-btn:hover{background:#3b82f626;border-color:#3b82f666;color:#bfdbfe}.tarc-chat-msg{display:flex;gap:8px;max-width:88%}.tarc-chat-msg.user{align-self:flex-end;flex-direction:row-reverse}.tarc-chat-msg.assistant{align-self:flex-start}.tarc-chat-msg-avatar{align-items:center;background:linear-gradient(135deg,#1e40af,#3b82f6);border-radius:8px;color:#fff;display:flex;flex-shrink:0;font-size:13px;font-weight:700;height:28px;justify-content:center;width:28px}.tarc-chat-msg-bubble{border-radius:14px;font-size:13px;line-height:1.5;padding:10px 14px}.tarc-chat-msg.user .tarc-chat-msg-bubble{background:#2563eb;border-bottom-right-radius:4px;color:#fff}.tarc-chat-msg.assistant .tarc-chat-msg-bubble{background:#1e293b;border:1px solid #33415580;border-bottom-left-radius:4px;color:#e2e8f0}.tarc-chat-content strong{color:#93c5fd;font-weight:600}.tarc-chat-msg.user .tarc-chat-content strong{color:#fff}.tarc-chat-bullet{margin:2px 0;padding-left:12px;text-indent:-8px}.tarc-chat-typing{align-items:center;display:flex!important;gap:4px;padding:12px 18px!important}.tarc-chat-typing span{animation:tarc-typing-dot 1.4s ease-in-out infinite;background:#64748b;border-radius:50%;height:7px;width:7px}.tarc-chat-typing span:nth-child(2){animation-delay:.2s}.tarc-chat-typing span:nth-child(3){animation-delay:.4s}@keyframes tarc-typing-dot{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.tarc-chat-lead{animation:tarc-chat-slide-up .3s ease;background:linear-gradient(135deg,#10b98114,#3b82f614);border:1px solid #10b98140;border-radius:12px;padding:14px}.tarc-chat-lead-text{color:#cbd5e1;font-size:13px;line-height:1.4;margin-bottom:10px}.tarc-chat-lead-form{display:flex;gap:6px}.tarc-chat-lead-form input{background:#0f172a;border:1px solid #33415599;border-radius:8px;color:#e2e8f0;flex:1 1;font-size:13px;outline:none;padding:8px 12px}.tarc-chat-lead-form input:focus{border-color:#3b82f6}.tarc-chat-lead-form button{align-items:center;background:#10b981;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:12px;font-weight:600;gap:4px;padding:8px 14px;transition:background .2s;white-space:nowrap}.tarc-chat-lead-form button:hover{background:#059669}.tarc-chat-lead-dismiss{background:none;border:none;color:#64748b;cursor:pointer;font-size:11px;margin-top:6px;padding:0}.tarc-chat-lead-dismiss:hover{color:#94a3b8}.tarc-chat-lead-thanks{background:#10b98114;border:1px solid #10b98133;border-radius:10px;color:#34d399;font-size:13px;font-weight:500;padding:10px;text-align:center}.tarc-chat-input-area{align-items:center;background:#0f172a;border-top:1px solid #33415580;display:flex;gap:8px;padding:12px 14px}.tarc-chat-input-area input{background:#1e293b;border:1px solid #33415580;border-radius:10px;color:#e2e8f0;flex:1 1;font-size:13px;outline:none;padding:10px 14px;transition:border-color .2s}.tarc-chat-input-area input:focus{border-color:#3b82f6}.tarc-chat-input-area input::placeholder{color:#475569}.tarc-chat-send{align-items:center;background:#2563eb;border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:38px;justify-content:center;transition:all .2s;width:38px}.tarc-chat-send:hover:not(:disabled){background:#1d4ed8}.tarc-chat-send:disabled{cursor:not-allowed;opacity:.4}.tarc-chat-spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:480px){.tarc-chat-root{bottom:12px;right:12px}.tarc-chat-panel{border-radius:12px;height:calc(100vh - 80px);width:calc(100vw - 24px)}.tarc-chat-fab-label{display:none}.tarc-chat-fab{border-radius:50%;height:52px;justify-content:center;padding:0;width:52px}}
/*# sourceMappingURL=main.e27b7f85.css.map*/