/*! tailwindcss v4.1.17 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-400:oklch(70.4% .191 22.216);--color-red-600:oklch(57.7% .245 27.325);--color-amber-50:oklch(98.7% .022 95.277);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-500:oklch(76.9% .188 70.08);--color-amber-700:oklch(55.5% .163 48.998);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-200:oklch(90.5% .093 164.15);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-700:oklch(50.8% .118 165.612);--color-sky-100:oklch(95.1% .026 236.824);--color-sky-200:oklch(90.1% .058 230.902);--color-sky-500:oklch(68.5% .169 237.323);--color-sky-700:oklch(50% .134 242.749);--color-indigo-50:oklch(96.2% .018 272.314);--color-indigo-100:oklch(93% .034 272.788);--color-indigo-200:oklch(87% .065 274.039);--color-indigo-300:oklch(78.5% .115 274.713);--color-indigo-400:oklch(67.3% .182 276.935);--color-indigo-500:oklch(58.5% .233 277.117);--color-indigo-600:oklch(51.1% .262 276.966);--color-indigo-700:oklch(45.7% .24 277.023);--color-pink-100:oklch(94.8% .028 342.258);--color-pink-200:oklch(89.9% .061 343.231);--color-pink-500:oklch(65.6% .241 354.308);--color-pink-700:oklch(52.5% .223 3.958);--color-rose-50:oklch(96.9% .015 12.422);--color-rose-100:oklch(94.1% .03 12.58);--color-rose-200:oklch(89.2% .058 10.001);--color-rose-300:oklch(81% .117 11.638);--color-rose-400:oklch(71.2% .194 13.428);--color-rose-500:oklch(64.5% .246 16.439);--color-rose-600:oklch(58.6% .253 17.585);--color-rose-700:oklch(51.4% .222 16.935);--color-slate-50:oklch(98.4% .003 247.858);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-300:oklch(86.9% .022 252.894);--color-slate-400:oklch(70.4% .04 256.788);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-600:oklch(44.6% .043 257.281);--color-slate-700:oklch(37.2% .044 257.287);--color-slate-800:oklch(27.9% .041 260.031);--color-slate-900:oklch(20.8% .042 265.755);--color-slate-950:oklch(12.9% .042 264.695);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-lg:32rem;--container-2xl:42rem;--container-3xl:48rem;--container-5xl:64rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--radius-2xl:1rem;--radius-3xl:1.5rem;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-primary:var(--primary);--color-muted:var(--muted);--color-accent:var(--accent);--color-sidebar-border:var(--sidebar-border)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){*{outline-color:color-mix(in oklab,var(--ring)50%,transparent)}}body{background-color:var(--background);color:var(--foreground)}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.inset-0{inset:calc(var(--spacing)*0)}.z-50{z-index:50}.mx-auto{margin-inline:auto}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-5{margin-top:calc(var(--spacing)*5)}.mt-6{margin-top:calc(var(--spacing)*6)}.mt-8{margin-top:calc(var(--spacing)*8)}.mt-10{margin-top:calc(var(--spacing)*10)}.mr-2{margin-right:calc(var(--spacing)*2)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-9{height:calc(var(--spacing)*9)}.h-11{height:calc(var(--spacing)*11)}.h-12{height:calc(var(--spacing)*12)}.max-h-60{max-height:calc(var(--spacing)*60)}.min-h-screen{min-height:100vh}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-11{width:calc(var(--spacing)*11)}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-lg{max-width:var(--container-lg)}.max-w-none{max-width:none}.flex-1{flex:1}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing)*1)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*8)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*8)*calc(1 - var(--tw-space-y-reverse)))}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px*var(--tw-divide-y-reverse));border-bottom-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-slate-100>:not(:last-child)){border-color:var(--color-slate-100)}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius)}.rounded-xl{border-radius:calc(var(--radius) + 4px)}.border{border-style:var(--tw-border-style);border-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.border-amber-200{border-color:var(--color-amber-200)}.border-emerald-200{border-color:var(--color-emerald-200)}.border-indigo-200{border-color:var(--color-indigo-200)}.border-rose-200{border-color:var(--color-rose-200)}.border-rose-400{border-color:var(--color-rose-400)}.border-slate-100{border-color:var(--color-slate-100)}.border-slate-200{border-color:var(--color-slate-200)}.border-slate-300{border-color:var(--color-slate-300)}.bg-amber-50{background-color:var(--color-amber-50)}.bg-amber-100{background-color:var(--color-amber-100)}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}}.bg-emerald-50{background-color:var(--color-emerald-50)}.bg-emerald-100{background-color:var(--color-emerald-100)}.bg-indigo-100{background-color:var(--color-indigo-100)}.bg-indigo-500\/90{background-color:#625fffe6}@supports (color:color-mix(in lab,red,red)){.bg-indigo-500\/90{background-color:color-mix(in oklab,var(--color-indigo-500)90%,transparent)}}.bg-indigo-600{background-color:var(--color-indigo-600)}.bg-pink-100{background-color:var(--color-pink-100)}.bg-rose-50{background-color:var(--color-rose-50)}.bg-rose-100{background-color:var(--color-rose-100)}.bg-rose-500\/10{background-color:#ff23571a}@supports (color:color-mix(in lab,red,red)){.bg-rose-500\/10{background-color:color-mix(in oklab,var(--color-rose-500)10%,transparent)}}.bg-rose-600{background-color:var(--color-rose-600)}.bg-sky-100{background-color:var(--color-sky-100)}.bg-slate-50{background-color:var(--color-slate-50)}.bg-slate-100{background-color:var(--color-slate-100)}.bg-slate-100\/70{background-color:#f1f5f9b3}@supports (color:color-mix(in lab,red,red)){.bg-slate-100\/70{background-color:color-mix(in oklab,var(--color-slate-100)70%,transparent)}}.bg-slate-200{background-color:var(--color-slate-200)}.bg-slate-900{background-color:var(--color-slate-900)}.bg-white{background-color:var(--color-white)}.bg-white\/60{background-color:#fff9}@supports (color:color-mix(in lab,red,red)){.bg-white\/60{background-color:color-mix(in oklab,var(--color-white)60%,transparent)}}.bg-white\/70{background-color:#ffffffb3}@supports (color:color-mix(in lab,red,red)){.bg-white\/70{background-color:color-mix(in oklab,var(--color-white)70%,transparent)}}.bg-white\/80{background-color:#fffc}@supports (color:color-mix(in lab,red,red)){.bg-white\/80{background-color:color-mix(in oklab,var(--color-white)80%,transparent)}}.bg-white\/90{background-color:#ffffffe6}@supports (color:color-mix(in lab,red,red)){.bg-white\/90{background-color:color-mix(in oklab,var(--color-white)90%,transparent)}}.bg-white\/95{background-color:#fffffff2}@supports (color:color-mix(in lab,red,red)){.bg-white\/95{background-color:color-mix(in oklab,var(--color-white)95%,transparent)}}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-white{--tw-gradient-from:var(--color-white);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-slate-50{--tw-gradient-to:var(--color-slate-50);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.p-1{padding:calc(var(--spacing)*1)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-5{padding:calc(var(--spacing)*5)}.p-6{padding:calc(var(--spacing)*6)}.p-8{padding:calc(var(--spacing)*8)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-5{padding-inline:calc(var(--spacing)*5)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-5{padding-block:calc(var(--spacing)*5)}.py-8{padding-block:calc(var(--spacing)*8)}.py-10{padding-block:calc(var(--spacing)*10)}.py-12{padding-block:calc(var(--spacing)*12)}.py-24{padding-block:calc(var(--spacing)*24)}.text-center{text-align:center}.text-left{text-align:left}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[11px\]{font-size:11px}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.35em\]{--tw-tracking:.35em;letter-spacing:.35em}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-amber-700{color:var(--color-amber-700)}.text-emerald-700{color:var(--color-emerald-700)}.text-indigo-100{color:var(--color-indigo-100)}.text-indigo-100\/80{color:#e0e7ffcc}@supports (color:color-mix(in lab,red,red)){.text-indigo-100\/80{color:color-mix(in oklab,var(--color-indigo-100)80%,transparent)}}.text-indigo-200{color:var(--color-indigo-200)}.text-indigo-500{color:var(--color-indigo-500)}.text-indigo-600{color:var(--color-indigo-600)}.text-indigo-700{color:var(--color-indigo-700)}.text-pink-700{color:var(--color-pink-700)}.text-red-600{color:var(--color-red-600)}.text-rose-500{color:var(--color-rose-500)}.text-rose-600{color:var(--color-rose-600)}.text-rose-700{color:var(--color-rose-700)}.text-sky-700{color:var(--color-sky-700)}.text-slate-400{color:var(--color-slate-400)}.text-slate-500{color:var(--color-slate-500)}.text-slate-600{color:var(--color-slate-600)}.text-slate-700{color:var(--color-slate-700)}.text-slate-800{color:var(--color-slate-800)}.text-slate-900{color:var(--color-slate-900)}.text-white{color:var(--color-white)}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-black\/5{--tw-ring-color:#0000000d}@supports (color:color-mix(in lab,red,red)){.ring-black\/5{--tw-ring-color:color-mix(in oklab,var(--color-black)5%,transparent)}}.ring-indigo-50{--tw-ring-color:var(--color-indigo-50)}.ring-indigo-200{--tw-ring-color:var(--color-indigo-200)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.running{animation-play-state:running}@media (hover:hover){.group-hover\:text-white:is(:where(.group):hover *){color:var(--color-white)}}.placeholder\:text-slate-400::placeholder{color:var(--color-slate-400)}@media (hover:hover){.hover\:-translate-y-0\.5:hover{--tw-translate-y:calc(var(--spacing)*-.5);translate:var(--tw-translate-x)var(--tw-translate-y)}.hover\:border-indigo-400:hover{border-color:var(--color-indigo-400)}.hover\:border-slate-300:hover{border-color:var(--color-slate-300)}.hover\:bg-indigo-500:hover{background-color:var(--color-indigo-500)}.hover\:bg-indigo-600:hover{background-color:var(--color-indigo-600)}.hover\:bg-rose-500:hover{background-color:var(--color-rose-500)}.hover\:bg-rose-500\/20:hover{background-color:#ff235733}@supports (color:color-mix(in lab,red,red)){.hover\:bg-rose-500\/20:hover{background-color:color-mix(in oklab,var(--color-rose-500)20%,transparent)}}.hover\:bg-slate-50:hover{background-color:var(--color-slate-50)}.hover\:bg-slate-100:hover{background-color:var(--color-slate-100)}.hover\:bg-slate-800:hover{background-color:var(--color-slate-800)}.hover\:bg-white:hover{background-color:var(--color-white)}.hover\:text-indigo-700:hover{color:var(--color-indigo-700)}.hover\:text-slate-900:hover{color:var(--color-slate-900)}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-2xl:hover{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-xl:hover{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.focus\:border-indigo-500:focus{border-color:var(--color-indigo-500)}.focus\:border-rose-500:focus{border-color:var(--color-rose-500)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-indigo-200:focus{--tw-ring-color:var(--color-indigo-200)}.focus\:ring-indigo-500:focus{--tw-ring-color:var(--color-indigo-500)}.focus\:ring-indigo-500\/40:focus{--tw-ring-color:#625fff66}@supports (color:color-mix(in lab,red,red)){.focus\:ring-indigo-500\/40:focus{--tw-ring-color:color-mix(in oklab,var(--color-indigo-500)40%,transparent)}}.focus\:ring-rose-500:focus{--tw-ring-color:var(--color-rose-500)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:outline:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:outline-indigo-400:focus-visible{outline-color:var(--color-indigo-400)}.focus-visible\:outline-indigo-500:focus-visible{outline-color:var(--color-indigo-500)}.focus-visible\:outline-indigo-600:focus-visible{outline-color:var(--color-indigo-600)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-slate-400:disabled{background-color:var(--color-slate-400)}.disabled\:opacity-60:disabled{opacity:.6}@media (min-width:40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:px-6{padding-inline:calc(var(--spacing)*6)}}@media (min-width:48rem){.md\:col-span-2{grid-column:span 2/span 2}.md\:w-1\/3{width:33.3333%}.md\:w-auto{width:auto}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:items-end{align-items:flex-end}.md\:justify-between{justify-content:space-between}.md\:justify-end{justify-content:flex-end}.md\:px-8{padding-inline:calc(var(--spacing)*8)}.md\:py-6{padding-block:calc(var(--spacing)*6)}.md\:text-right{text-align:right}}@media (min-width:64rem){.lg\:col-span-3{grid-column:span 3/span 3}.lg\:col-span-4{grid-column:span 4/span 4}.lg\:col-span-5{grid-column:span 5/span 5}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:grid-cols-\[minmax\(0\,2fr\)_minmax\(0\,1fr\)\]{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.lg\:px-10{padding-inline:calc(var(--spacing)*10)}}:where(.dark\:divide-slate-800:is(.dark *)>:not(:last-child)){border-color:var(--color-slate-800)}.dark\:border-amber-500\/40:is(.dark *){border-color:#f99c0066}@supports (color:color-mix(in lab,red,red)){.dark\:border-amber-500\/40:is(.dark *){border-color:color-mix(in oklab,var(--color-amber-500)40%,transparent)}}.dark\:border-emerald-500\/40:is(.dark *){border-color:#00bb7f66}@supports (color:color-mix(in lab,red,red)){.dark\:border-emerald-500\/40:is(.dark *){border-color:color-mix(in oklab,var(--color-emerald-500)40%,transparent)}}.dark\:border-rose-500\/40:is(.dark *){border-color:#ff235766}@supports (color:color-mix(in lab,red,red)){.dark\:border-rose-500\/40:is(.dark *){border-color:color-mix(in oklab,var(--color-rose-500)40%,transparent)}}.dark\:border-slate-600:is(.dark *){border-color:var(--color-slate-600)}.dark\:border-slate-700:is(.dark *){border-color:var(--color-slate-700)}.dark\:border-slate-800:is(.dark *){border-color:var(--color-slate-800)}.dark\:bg-amber-500\/10:is(.dark *){background-color:#f99c001a}@supports (color:color-mix(in lab,red,red)){.dark\:bg-amber-500\/10:is(.dark *){background-color:color-mix(in oklab,var(--color-amber-500)10%,transparent)}}.dark\:bg-amber-500\/20:is(.dark *){background-color:#f99c0033}@supports (color:color-mix(in lab,red,red)){.dark\:bg-amber-500\/20:is(.dark *){background-color:color-mix(in oklab,var(--color-amber-500)20%,transparent)}}.dark\:bg-emerald-500\/10:is(.dark *){background-color:#00bb7f1a}@supports (color:color-mix(in lab,red,red)){.dark\:bg-emerald-500\/10:is(.dark *){background-color:color-mix(in oklab,var(--color-emerald-500)10%,transparent)}}.dark\:bg-emerald-500\/20:is(.dark *){background-color:#00bb7f33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-emerald-500\/20:is(.dark *){background-color:color-mix(in oklab,var(--color-emerald-500)20%,transparent)}}.dark\:bg-indigo-500:is(.dark *){background-color:var(--color-indigo-500)}.dark\:bg-indigo-500\/20:is(.dark *){background-color:#625fff33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-indigo-500\/20:is(.dark *){background-color:color-mix(in oklab,var(--color-indigo-500)20%,transparent)}}.dark\:bg-pink-500\/20:is(.dark *){background-color:#f6339a33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-pink-500\/20:is(.dark *){background-color:color-mix(in oklab,var(--color-pink-500)20%,transparent)}}.dark\:bg-rose-500\/10:is(.dark *){background-color:#ff23571a}@supports (color:color-mix(in lab,red,red)){.dark\:bg-rose-500\/10:is(.dark *){background-color:color-mix(in oklab,var(--color-rose-500)10%,transparent)}}.dark\:bg-rose-500\/15:is(.dark *){background-color:#ff235726}@supports (color:color-mix(in lab,red,red)){.dark\:bg-rose-500\/15:is(.dark *){background-color:color-mix(in oklab,var(--color-rose-500)15%,transparent)}}.dark\:bg-rose-500\/20:is(.dark *){background-color:#ff235733}@supports (color:color-mix(in lab,red,red)){.dark\:bg-rose-500\/20:is(.dark *){background-color:color-mix(in oklab,var(--color-rose-500)20%,transparent)}}.dark\:bg-sky-500\/20:is(.dark *){background-color:#00a5ef33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-sky-500\/20:is(.dark *){background-color:color-mix(in oklab,var(--color-sky-500)20%,transparent)}}.dark\:bg-slate-100:is(.dark *){background-color:var(--color-slate-100)}.dark\:bg-slate-700:is(.dark *){background-color:var(--color-slate-700)}.dark\:bg-slate-800:is(.dark *){background-color:var(--color-slate-800)}.dark\:bg-slate-800\/70:is(.dark *){background-color:#1d293db3}@supports (color:color-mix(in lab,red,red)){.dark\:bg-slate-800\/70:is(.dark *){background-color:color-mix(in oklab,var(--color-slate-800)70%,transparent)}}.dark\:bg-slate-900:is(.dark *){background-color:var(--color-slate-900)}.dark\:bg-slate-900\/40:is(.dark *){background-color:#0f172b66}@supports (color:color-mix(in lab,red,red)){.dark\:bg-slate-900\/40:is(.dark *){background-color:color-mix(in oklab,var(--color-slate-900)40%,transparent)}}.dark\:bg-slate-900\/50:is(.dark *){background-color:#0f172b80}@supports (color:color-mix(in lab,red,red)){.dark\:bg-slate-900\/50:is(.dark *){background-color:color-mix(in oklab,var(--color-slate-900)50%,transparent)}}.dark\:bg-slate-900\/60:is(.dark *){background-color:#0f172b99}@supports (color:color-mix(in lab,red,red)){.dark\:bg-slate-900\/60:is(.dark *){background-color:color-mix(in oklab,var(--color-slate-900)60%,transparent)}}.dark\:bg-slate-900\/70:is(.dark *){background-color:#0f172bb3}@supports (color:color-mix(in lab,red,red)){.dark\:bg-slate-900\/70:is(.dark *){background-color:color-mix(in oklab,var(--color-slate-900)70%,transparent)}}.dark\:bg-slate-900\/80:is(.dark *){background-color:#0f172bcc}@supports (color:color-mix(in lab,red,red)){.dark\:bg-slate-900\/80:is(.dark *){background-color:color-mix(in oklab,var(--color-slate-900)80%,transparent)}}.dark\:bg-slate-950:is(.dark *){background-color:var(--color-slate-950)}.dark\:bg-white:is(.dark *){background-color:var(--color-white)}.dark\:from-slate-900:is(.dark *){--tw-gradient-from:var(--color-slate-900);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.dark\:to-slate-950:is(.dark *){--tw-gradient-to:var(--color-slate-950);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.dark\:text-amber-100:is(.dark *){color:var(--color-amber-100)}.dark\:text-amber-200:is(.dark *){color:var(--color-amber-200)}.dark\:text-emerald-100:is(.dark *){color:var(--color-emerald-100)}.dark\:text-emerald-200:is(.dark *){color:var(--color-emerald-200)}.dark\:text-indigo-200:is(.dark *){color:var(--color-indigo-200)}.dark\:text-indigo-300:is(.dark *){color:var(--color-indigo-300)}.dark\:text-indigo-400:is(.dark *){color:var(--color-indigo-400)}.dark\:text-pink-200:is(.dark *){color:var(--color-pink-200)}.dark\:text-red-400:is(.dark *){color:var(--color-red-400)}.dark\:text-rose-100:is(.dark *){color:var(--color-rose-100)}.dark\:text-rose-200:is(.dark *){color:var(--color-rose-200)}.dark\:text-rose-300:is(.dark *){color:var(--color-rose-300)}.dark\:text-sky-200:is(.dark *){color:var(--color-sky-200)}.dark\:text-slate-100:is(.dark *){color:var(--color-slate-100)}.dark\:text-slate-200:is(.dark *){color:var(--color-slate-200)}.dark\:text-slate-300:is(.dark *){color:var(--color-slate-300)}.dark\:text-slate-400:is(.dark *){color:var(--color-slate-400)}.dark\:text-slate-500:is(.dark *){color:var(--color-slate-500)}.dark\:text-slate-900:is(.dark *){color:var(--color-slate-900)}.dark\:text-white:is(.dark *){color:var(--color-white)}.dark\:ring-white\/10:is(.dark *){--tw-ring-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.dark\:ring-white\/10:is(.dark *){--tw-ring-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.dark\:placeholder\:text-slate-500:is(.dark *)::placeholder{color:var(--color-slate-500)}@media (hover:hover){.dark\:hover\:border-slate-500:is(.dark *):hover{border-color:var(--color-slate-500)}.dark\:hover\:border-slate-600:is(.dark *):hover{border-color:var(--color-slate-600)}.dark\:hover\:bg-slate-800:is(.dark *):hover{background-color:var(--color-slate-800)}.dark\:hover\:bg-slate-800\/50:is(.dark *):hover{background-color:#1d293d80}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-slate-800\/50:is(.dark *):hover{background-color:color-mix(in oklab,var(--color-slate-800)50%,transparent)}}.dark\:hover\:bg-white:is(.dark *):hover{background-color:var(--color-white)}.dark\:hover\:text-white:is(.dark *):hover{color:var(--color-white)}}.dark\:focus\:border-indigo-400:is(.dark *):focus{border-color:var(--color-indigo-400)}.dark\:focus\:ring-indigo-500\/40:is(.dark *):focus{--tw-ring-color:#625fff66}@supports (color:color-mix(in lab,red,red)){.dark\:focus\:ring-indigo-500\/40:is(.dark *):focus{--tw-ring-color:color-mix(in oklab,var(--color-indigo-500)40%,transparent)}}.dark\:focus-visible\:outline-indigo-400:is(.dark *):focus-visible{outline-color:var(--color-indigo-400)}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}:root{color-scheme:light;background-color:var(--color-body);color:var(--color-text-primary);--po-col-width-supplier:9rem;--po-col-width-manufacturer:9rem;--po-col-width-name:minmax(12rem,1fr);--po-col-width-supplier-part:12rem;--po-col-width-qty:3rem;--po-col-width-cost-ea:5rem;--po-col-width-sell-ea:5rem;--po-col-width-total-cost:7rem;--po-col-width-total-sell:7rem;--po-col-width-notes:12rem;--po-col-width-actions:7rem;--color-body:#f5f7fa;--color-text-primary:#0f172a;--color-text-strong:#1f2937;--color-text-secondary:#475569;--color-text-muted:#64748b;--color-text-soft:#6b7280;--color-text-tertiary:#334155;--color-text-inverse:#f9fafb;--color-text-inverse-strong:#fff;--color-text-inverse-accent:#f8fafcd9;--color-text-inverse-soft:#f8fafcbf;--color-text-inverse-subtle:#f8fafca1;--color-text-link:#2563eb;--color-text-danger:#b91c1c;--color-text-danger-strong:#dc2626;--color-text-success:#0f766e;--color-accent:#2563eb;--color-accent-strong:#1d4ed8;--color-accent-light:#cbd5f5;--color-surface-primary:#fff;--color-surface-muted:#f8fafc;--color-surface-subtle:#f9fafb;--color-surface-accent:#e0e7ff;--color-surface-accent-strong:#c7d2fe;--color-contrast-surface:#0f172a;--color-sidebar-bg:#1f2937;--color-sidebar-border:#ffffff0d;--color-sidebar-hover:#94a3b82e;--border-strong:#d1d5db;--border-default:#e5e7eb;--border-muted:#e2e8f0;--border-soft:#cbd5f5;--border-dashed:#cbd5e1;--button-secondary-bg:#6b7280;--button-disabled-bg:#9ca3af;--button-danger-border:#ef4444;--gradient-app:linear-gradient(120deg,#eef2ff 0%,#f8fafc 100%);--gradient-panel:linear-gradient(180deg,#fff 0%,#f8fafc 100%);--shadow-card:0 14px 36px #0f172a14;--shadow-panel:0 18px 40px #0f172a14;--shadow-panel-strong:-24px 0 48px #0f172a2e;--shadow-context-menu:0 18px 40px #0f172a59;--overlay-backdrop:#0f172a59;--alpha-accent-shadow:#2563eb40;--alpha-accent-focus:#2563eb26;--alpha-accent-soft:#2563eb29;--alpha-indigo-selection:#4f46e51f;--alpha-indigo-soft:#6366f133;--alpha-indigo-medium:#6366f140;--alpha-indigo-strong:#6366f14d;--alpha-indigo-border:#6366f126;--alpha-white-tint:#ffffff0a;--alpha-white-border:#ffffff0d;--alpha-white-hover:#ffffff14;--alpha-white-strong:#ffffff24;--alpha-slate-soft:#94a3b82e;--alpha-slate-strong:#94a3b873;--alpha-slate-light:#0f172a0d;--alpha-slate-medium:#0f172a14;--alpha-slate-stronger:#0f172a2e;--color-indigo-strong:#4f46e5;--color-indigo:#6366f1;--theme-toggle-bg:#94a3b82e;--theme-toggle-bg-hover:#94a3b847;--theme-toggle-border:#ffffff1a;--theme-toggle-text:#f9fafb;--radius:.625rem;--background:oklch(100% 0 0);--foreground:oklch(14.5% 0 0);--card:oklch(100% 0 0);--card-foreground:oklch(14.5% 0 0);--popover:oklch(100% 0 0);--popover-foreground:oklch(14.5% 0 0);--primary:oklch(20.5% 0 0);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(97% 0 0);--secondary-foreground:oklch(20.5% 0 0);--muted:oklch(97% 0 0);--muted-foreground:oklch(55.6% 0 0);--accent:oklch(97% 0 0);--accent-foreground:oklch(20.5% 0 0);--destructive:oklch(57.7% .245 27.325);--border:oklch(92.2% 0 0);--input:oklch(92.2% 0 0);--ring:oklch(70.8% 0 0);--chart-1:oklch(64.6% .222 41.116);--chart-2:oklch(60% .118 184.704);--chart-3:oklch(39.8% .07 227.392);--chart-4:oklch(82.8% .189 84.429);--chart-5:oklch(76.9% .188 70.08);--sidebar:oklch(98.5% 0 0);--sidebar-foreground:oklch(14.5% 0 0);--sidebar-primary:oklch(20.5% 0 0);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(97% 0 0);--sidebar-accent-foreground:oklch(20.5% 0 0);--sidebar-border:oklch(92.2% 0 0);--sidebar-ring:oklch(70.8% 0 0);font-family:Segoe UI,Arial,sans-serif;line-height:1.5}html,body,#root{height:100%}html{overflow:hidden}body{background-color:var(--color-body);color:var(--color-text-primary);margin:0;overflow:hidden}:root[data-theme=dark]{color-scheme:dark;--color-body:#080e1a;--color-text-primary:#e2e8f0;--color-text-strong:#f8fafc;--color-text-secondary:#cbd5f5;--color-text-muted:#94a3b8;--color-text-soft:#94a3b8;--color-text-tertiary:#94a3b8;--color-text-inverse:#e2e8f0;--color-text-inverse-accent:#e2e8f0e6;--color-text-inverse-soft:#e2e8f0bf;--color-text-inverse-subtle:#e2e8f099;--color-text-link:#60a5fa;--color-text-danger:#fca5a5;--color-text-danger-strong:#f87171;--color-text-success:#34d399;--color-accent:#3b82f6;--color-accent-strong:#2563eb;--color-accent-light:#6366f159;--color-surface-primary:#1e293b;--color-surface-muted:#152238;--color-surface-subtle:#111c2e;--color-surface-accent:#3b82f62e;--color-surface-accent-strong:#6366f147;--color-contrast-surface:#0b172a;--color-sidebar-bg:#0d1626;--color-sidebar-border:#3b82f633;--color-sidebar-hover:#3b82f640;--border-strong:#94a3b880;--border-default:#94a3b84d;--border-muted:#47556980;--border-soft:#6366f159;--border-dashed:#6366f159;--button-secondary-bg:#475569;--button-disabled-bg:#374151;--button-danger-border:#f87171;--gradient-app:linear-gradient(120deg,#050b16 0%,#0f172a 100%);--gradient-panel:linear-gradient(180deg,#1e293bf5 0%,#0f172aeb 100%);--shadow-card:0 24px 48px #020617b3;--shadow-panel:0 30px 60px #020617bf;--shadow-panel-strong:-24px 0 48px #02061799;--shadow-context-menu:0 24px 48px #020617cc;--overlay-backdrop:#020617b3;--alpha-accent-shadow:#3b82f64d;--alpha-accent-focus:#3b82f666;--alpha-accent-soft:#3b82f633;--alpha-indigo-selection:#3b82f633;--alpha-indigo-soft:#3b82f62e;--alpha-indigo-medium:#6366f14d;--alpha-indigo-strong:#818cf866;--alpha-indigo-border:#6366f159;--alpha-white-tint:#94a3b814;--alpha-white-border:#94a3b840;--alpha-white-hover:#94a3b838;--alpha-white-strong:#94a3b847;--alpha-slate-soft:#94a3b840;--alpha-slate-strong:#94a3b866;--alpha-slate-light:#0206178c;--alpha-slate-medium:#020617a6;--alpha-slate-stronger:#020617bf;--color-indigo-strong:#6366f1;--color-indigo:#818cf8;--theme-toggle-bg:#3b82f638;--theme-toggle-bg-hover:#3b82f659;--theme-toggle-border:#3b82f673;--theme-toggle-text:#e2e8f0}.app-layout{background:var(--gradient-app);grid-template-columns:260px 1fr;height:100%;min-height:100vh;display:grid;overflow:hidden}.sidebar{background:var(--color-sidebar-bg);height:100%;color:var(--color-text-inverse);box-shadow:inset -1px 0 0 var(--alpha-white-border);flex-direction:column;gap:1.5rem;padding-left:1.25rem;padding-right:1.25rem;display:flex;position:sticky;top:0}.sidebar-header{flex-direction:column;gap:1.25rem;padding-top:1.5rem;display:flex}.sidebar-branding{flex-direction:column;gap:.4rem;display:flex}.sidebar-user{border:1px solid var(--alpha-white-border);background:var(--alpha-white-hover);border-radius:1rem;flex-direction:column;gap:.75rem;padding:1rem;display:flex;box-shadow:0 10px 35px #02061740}.sidebar-user-main{align-items:center;gap:.75rem;display:flex}.sidebar-user-text{flex-direction:column;gap:.15rem;display:flex}.sidebar-user-name{color:var(--color-text-inverse);font-weight:600}.sidebar-user-email{color:var(--color-text-inverse-subtle);font-size:.85rem}.sidebar-user-logout{border:1px solid var(--alpha-white-border);color:var(--color-text-inverse);cursor:pointer;background:0 0;border-radius:999px;align-self:flex-start;align-items:center;gap:.4rem;padding:.35rem .9rem;font-weight:600;transition:background .2s,color .2s,border .2s;display:inline-flex}.sidebar-user-logout:hover{background:var(--alpha-white-hover);color:var(--color-text-inverse-strong);border-color:var(--alpha-white-strong)}.brand{font-size:1.2rem;font-weight:700}.brand-subtitle{color:var(--color-text-inverse-subtle);font-size:.85rem}.sidebar-nav{flex-direction:column;gap:.5rem;display:flex}.sidebar-content{flex-direction:column;flex:1;gap:2rem;display:flex}.theme-toggle{border:1px solid var(--theme-toggle-border);background:var(--theme-toggle-bg);color:var(--theme-toggle-text);border-radius:999px;justify-content:center;align-self:center;align-items:center;gap:.1em;margin-top:auto;padding:.65rem .9rem;font-size:.95rem;font-weight:600;transition:background .2s,color .2s,transform .2s,box-shadow .2s;display:inline-flex}.theme-toggle:hover{background:var(--theme-toggle-bg-hover);transform:translateY(-1px)}.theme-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.theme-toggle-icon svg{width:1.15rem;height:1.15rem;display:block}.theme-toggle-label{line-height:1}.nav-link{color:var(--color-text-inverse-accent);border-radius:.6rem;padding:.65rem .9rem;font-weight:600;text-decoration:none;transition:background .2s,color .2s;display:block}.nav-link:hover{background:var(--alpha-slate-soft);color:var(--color-text-inverse-strong)}.nav-link-active{background:var(--color-accent);color:var(--color-text-inverse-strong);box-shadow:0 12px 24px var(--alpha-accent-shadow)}.nav-group{flex-direction:column;display:flex}.nav-group-toggle{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.nav-group-toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.nav-group-label{flex:1}.nav-group-icon{width:1.05rem;height:1.05rem;transition:transform .2s}.nav-group-icon-open{transform:rotate(180deg)}.nav-subnav{border-left:1px solid var(--color-sidebar-border);flex-direction:column;gap:.35rem;margin-top:.4rem;padding-left:1.05rem;display:none}.nav-subnav-open{display:flex}.nav-sublink{color:var(--color-text-inverse-subtle);border-radius:.55rem;padding:.5rem .75rem;font-weight:500;text-decoration:none;transition:background .2s,color .2s;display:block}.nav-sublink:hover{background:var(--alpha-slate-soft);color:var(--color-text-inverse-strong)}.nav-sublink-active{background:var(--color-accent);color:var(--color-text-inverse-strong);box-shadow:0 12px 24px var(--alpha-accent-shadow)}.main-content{height:100%;padding:2.5rem 3rem;overflow-y:auto}.main-scroll{flex-direction:column;gap:1.75rem;width:100%;max-width:none;margin:0;padding-bottom:5rem;display:flex}.page{flex-direction:column;gap:1.75rem;display:flex}.page-header{flex-direction:column;gap:.35rem;display:flex}.page-header__actions{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.5rem;display:flex}.page-header h1{margin:0}.page-header-actions{align-self:flex-end;gap:.75rem;margin-top:.5rem;display:flex}.subtitle{color:var(--color-text-secondary);margin:0}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.stat-card{background:var(--color-surface-primary);box-shadow:var(--shadow-card);border-radius:.85rem;flex-direction:column;gap:.5rem;padding:1.5rem;display:flex}.stat-label{color:var(--color-text-muted);font-weight:600}.stat-value{font-size:2rem;font-weight:700}.stat-muted{color:var(--color-accent-light)}.panel{background:var(--color-surface-primary);box-shadow:var(--shadow-panel);border-radius:.85rem;flex-direction:column;gap:1.25rem;padding:1.75rem;display:flex}.panel-header{flex-direction:column;gap:.35rem;margin-bottom:1rem;display:flex}.card{background:var(--color-surface-primary);box-shadow:var(--shadow-card);border-radius:.85rem;flex-direction:column;gap:1.25rem;padding:1.75rem;display:flex}.card-header{flex-direction:column;gap:.35rem;display:flex}.card-list{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem;display:grid}.project-card{border:1px solid var(--border-muted);background:var(--color-surface-primary)}.project-totals{color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:1.25rem;display:flex}.project-totals strong{color:var(--color-text-primary)}.project-status-display{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.75rem;display:flex}.project-totals__status{align-items:center;gap:.65rem;display:inline-flex}.project-status-display__label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.project-status-selector{text-align:center;flex-direction:column;align-items:center;gap:.75rem;margin:2rem auto 1.5rem;display:flex}.project-status-selector__label{color:var(--color-text-strong);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:600}.project-status-selector__options{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.project-status-selector .status-pill{text-align:center;min-width:8.5rem;padding:.6rem 1.6rem;font-size:1rem}.project-status-selector .status-pill--active{transform:translateY(-2px)}.project-section{border-top:1px solid var(--border-muted);flex-direction:column;gap:.75rem;padding-top:1rem;display:flex}.project-section__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.project-section h4{margin:0;font-size:1rem;font-weight:600}.project-template-select{flex-direction:column;gap:.25rem;display:flex}.project-template-select label{color:var(--color-muted);font-size:.85rem}.project-template-select select{border:1px solid var(--border-default);border-radius:.5rem;min-width:200px;padding:.45rem .6rem}.project-quote-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.project-quote-list li{border-bottom:1px solid var(--border-muted);justify-content:space-between;align-items:center;gap:1rem;padding:.5rem 0;display:flex}.project-quote-list li:last-child{border-bottom:none}.supplier-management{grid-template-columns:minmax(260px,320px) minmax(0,1fr);align-items:flex-start;gap:1.75rem;display:grid}@media (max-width:960px){.supplier-management{grid-template-columns:1fr}}.supplier-directory{min-height:420px}.supplier-directory__header{flex-direction:row;justify-content:space-between;align-items:center;gap:1rem}.supplier-directory__header .subtitle{color:var(--color-text-muted);margin:0}.supplier-directory__body{flex-direction:column;flex:1;gap:1rem;min-height:320px;display:flex}.supplier-directory__search{flex-direction:column;gap:.5rem;display:flex}.supplier-directory__search input[type=search]{border:1px solid var(--border-muted);background:var(--color-surface-primary);border-radius:.75rem;width:100%;padding:.6rem .9rem;font-size:.95rem}.supplier-directory__search-actions{flex-wrap:wrap;gap:.5rem;display:flex}.supplier-directory__list{flex-direction:column;gap:.5rem;max-height:60vh;margin:0;padding:0 .25rem 0 0;list-style:none;display:flex;overflow-y:auto}.supplier-directory__list::-webkit-scrollbar{width:6px}.supplier-directory__list::-webkit-scrollbar-thumb{background:var(--border-muted);border-radius:999px}.supplier-directory__item{border:1px solid var(--border-muted);background:var(--color-surface-primary);text-align:left;cursor:pointer;border-radius:.9rem;justify-content:space-between;align-items:center;gap:.75rem;width:100%;padding:.9rem 1.1rem;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex}.supplier-directory__item:hover{border-color:var(--color-accent);box-shadow:var(--shadow-card);transform:translateY(-1px)}.supplier-directory__item--active{border-color:var(--color-accent);background:var(--color-surface-muted);box-shadow:var(--shadow-panel)}.supplier-directory__item-text{flex-direction:column;gap:.15rem;display:flex}.supplier-directory__name{color:var(--color-text-strong);font-weight:600}.supplier-directory__meta{color:var(--color-text-muted);font-size:.85rem}.supplier-directory__chevron{color:var(--color-text-muted);font-size:1.25rem}.supplier-directory__summary{color:var(--color-text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;font-size:.9rem;display:flex}.supplier-directory__summary-filter{color:var(--color-text-strong);font-weight:500}.supplier-directory__pagination{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem;margin-top:.5rem;display:flex}.supplier-directory__page-indicator{color:var(--color-text-muted);font-weight:600}.supplier-form-panel{min-height:520px}.supplier-form{flex-direction:column;gap:1.5rem;display:flex}.supplier-form__section{background:var(--color-surface-muted);border:1px solid var(--border-muted);border-radius:1rem;flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.supplier-form__section h3{color:var(--color-text-strong);margin:0;font-size:1rem;font-weight:600}.supplier-form__grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;display:grid}.supplier-form__grid--address{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}@media (max-width:720px){.supplier-form__grid,.supplier-form__grid--address{grid-template-columns:1fr}}.supplier-form__field{flex-direction:column;gap:.5rem;min-width:0;display:flex}.supplier-form__field span{color:var(--color-text-muted);font-size:.9rem;font-weight:500}.supplier-form__field input,.supplier-form__field textarea{width:95wh;border:1px solid var(--border-muted);background:var(--color-surface-primary);border-radius:.7rem;padding:.65rem .75rem;transition:border-color .2s,box-shadow .2s}.supplier-form__field input:focus,.supplier-form__field textarea:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 3px #2563eb1a}.supplier-form__field--full{grid-column:1/-1}.supplier-form__actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.link{color:var(--color-text-link);font-weight:600;text-decoration:none}.link:hover{text-decoration:underline}.data-table{border-collapse:collapse;width:100%;font-size:.95rem}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--border-muted);padding:.65rem .75rem}.data-table thead th{letter-spacing:.03em;text-transform:uppercase;color:var(--color-text-muted);font-size:.85rem}.panel h2{margin:0}.panel-description{color:var(--color-text-muted);margin:0}.quote-form{gap:1.5rem;display:grid}.quote-form__intro{flex-direction:column;gap:.35rem;display:flex}.field-grid{gap:1rem;display:grid}.field-grid--two-column{grid-template-columns:1fr}.quote-form label{color:var(--color-text-strong);flex-direction:column;gap:.35rem;font-weight:600;display:flex}.client-picker-hints{min-height:1.1rem}.quote-form input{font:inherit;border:1px solid var(--border-strong);border-radius:.5rem;padding:.6rem .7rem}.quote-form fieldset{border:1px solid var(--border-default);border-radius:.5rem;gap:.75rem;padding:1rem;display:grid}.quote-form__prefill{margin-bottom:.5rem}.quote-form__prefill label{color:var(--color-text-secondary);font-weight:500}.quote-form__prefill select{min-width:16rem;margin-top:.25rem}.quote-form legend{padding:0 .5rem;font-weight:600}.quote-form__split{gap:1.25rem;display:grid}.new-client-panel{background:var(--color-surface-primary);box-shadow:var(--shadow-panel);border-radius:.75rem;gap:1rem;padding:1.25rem;display:grid}.new-client-panel h3{margin:0}@media (max-width:720px){.quote-form fieldset{padding:.85rem}}@media (min-width:720px){.field-grid--two-column{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1100px){.quote-form__split{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}.rich-text-editor{flex-direction:column;gap:.5rem;display:flex}.rich-text-label{color:var(--color-text-strong);font-weight:600}.rich-text-toolbar{gap:.35rem;display:inline-flex}.rich-text-toolbar button{background:var(--color-surface-muted);color:var(--color-text-secondary);border:1px solid var(--border-default);border-radius:.4rem;padding:.35rem .6rem;font-size:.85rem}.rich-text-toolbar button:hover:not([disabled]){background:var(--color-surface-subtle)}.rich-text-surface{border:1px solid var(--border-default);background:var(--color-surface-primary);border-radius:.6rem;min-height:160px;padding:.75rem;line-height:1.5;overflow-y:auto}.rich-text-surface:focus{outline:2px solid var(--color-accent);outline-offset:2px}.rich-text-surface:empty:before{content:attr(data-placeholder);color:var(--color-text-muted)}.rich-text-editor.is-disabled .rich-text-surface{background:var(--color-surface-muted);cursor:not-allowed}.form-actions{flex-wrap:wrap;align-items:center;gap:.75rem;padding-bottom:3.25rem;display:flex}.form-actions__notice{background:var(--color-surface-subtle);border:1px solid var(--border-muted);color:var(--color-text-secondary);border-radius:.75rem;flex:100%;padding:.9rem 1rem;line-height:1.55}.form-actions__notice strong{color:var(--color-text-strong);font-size:.95rem;display:block}.form-actions__notice span{margin-top:.35rem;font-size:.9rem;display:block}.form-actions__link{border:1px solid var(--border-muted);background:var(--color-surface-primary);color:var(--color-text-strong);cursor:pointer;border-radius:.6rem;justify-content:center;align-items:center;padding:.6rem 1.2rem;font-weight:600;text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex}.form-actions__link:hover:not([disabled]){background:var(--color-surface-subtle);transform:translateY(-1px);box-shadow:0 10px 20px #0f172a14}.form-actions__link[disabled]{cursor:not-allowed;opacity:.6;box-shadow:none;transform:none}button{font:inherit;cursor:pointer;background:var(--color-accent);color:var(--color-text-inverse-strong);border:none;border-radius:.6rem;padding:.6rem 1.2rem;font-weight:600;transition:transform .2s,box-shadow .2s,background .2s}button:hover:not([disabled]){box-shadow:0 10px 20px var(--alpha-accent-shadow);transform:translateY(-1px)}button[disabled]{cursor:not-allowed;background:var(--button-disabled-bg);box-shadow:none}button+button{background:var(--button-secondary-bg)}.button-secondary{background:var(--button-secondary-bg);color:var(--color-text-inverse-strong)}.button-secondary:hover:not([disabled]){background:var(--button-secondary-bg)}@supports (color:color-mix(in lab,red,red)){.button-secondary:hover:not([disabled]){background:color-mix(in srgb,var(--button-secondary-bg)88%,#fff 12%)}}.ghost-button{color:var(--color-text-link);background:0 0;padding:.6rem .8rem}.ghost-button.danger{color:var(--color-text-danger)}.ghost-button.danger:hover{color:var(--color-text-danger-strong);text-decoration:underline}.error{color:var(--color-text-danger)}.alert{border-radius:.75rem;flex-direction:column;gap:.4rem;margin-bottom:1rem;padding:.85rem 1rem;font-size:.95rem;display:flex}.alert ul{margin:0;padding-left:1.25rem}.alert-success{color:#166534;background:#22c55e1f;border:1px solid #22c55e4d}.alert-error{color:#991b1b;background:#dc26261f;border:1px solid #dc26264d}.alert-warning{color:#9a3412;background:#fff7e6;border:1px solid #f9731659}.quote-details-form{flex-direction:column;gap:1rem;display:flex}.quote-details-form__header{flex-direction:column;gap:.5rem;display:flex}.quote-details-form__title-row{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.quote-details-form__toggle{align-items:center;gap:.35rem;padding:.35rem .55rem;font-size:.95rem;display:inline-flex}.quote-details-form__toggle-icon{border-bottom:2px solid;border-right:2px solid;width:.55rem;height:.55rem;transition:transform .2s;transform:rotate(-45deg)}.quote-details-form__toggle-icon--open{transform:rotate(45deg)}.quote-details-form__body{flex-direction:column;gap:1rem;display:flex}.quote-details-form__actions{flex-wrap:wrap;justify-content:flex-end}.location-empty-state{text-align:center;justify-content:center;align-items:center;display:flex}.location-empty-state__content{flex-direction:column;align-items:center;gap:1.25rem;width:100%;padding:2rem 0;display:flex}.location-empty-state__title{color:var(--color-text-strong);margin:0;font-size:1.5rem}.location-empty-state__button{padding:.85rem 1.8rem;font-size:1rem}.location-empty-state__form{flex-direction:column;align-items:center;gap:1rem;width:100%;max-width:28rem;display:flex}.location-empty-state__input{border:2px solid var(--border-default);background:var(--color-surface-primary);width:100%;color:var(--color-text-strong);border-radius:.85rem;padding:1rem 1.25rem;font-size:1.15rem;transition:border-color .2s,box-shadow .2s;box-shadow:0 12px 32px #0f172a14}.location-empty-state__input:focus{border-color:var(--color-accent);outline:none;box-shadow:0 16px 40px #2563eb33}.location-empty-state__actions{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.location-empty-state__error{margin:0}.quote-details-form label{color:var(--color-text-strong);flex-direction:column;gap:.5rem;font-weight:500;display:flex}.quote-details-form label input{margin-top:.25rem}.quote-client-section{border:1px solid var(--border-default);background:var(--color-surface-muted);border-radius:.75rem;flex-direction:column;gap:1rem;padding:1rem;display:flex}.quote-client-section__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.quote-client-section__badge{background:var(--color-surface-accent);color:var(--color-text-strong);border-radius:999px;padding:.25rem .85rem;font-size:.85rem;font-weight:600}.quote-client-section__grid{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.75rem;margin:0;display:grid}.quote-client-section__grid div{flex-direction:column;gap:.25rem;display:flex}.quote-client-section__grid dt{color:var(--color-text-secondary);margin:0;font-size:.85rem;font-weight:600}.quote-client-section__grid dd{color:var(--color-text-strong);margin:0;font-size:.95rem}.quote-client-section__company-link{color:var(--color-text-link);font-weight:600}.quote-client-section__company-link:hover,.quote-client-section__company-link:focus-visible{text-decoration:underline}.quote-client-section__address{grid-column:1/-1}.quote-client-section__notes{color:var(--color-text-secondary);white-space:pre-wrap;margin:0;font-size:.9rem}.quote-client-section__search{flex-direction:column;gap:.5rem;display:flex}.quote-client-section__search input{width:100%}.quote-client-section__suggestions{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.quote-client-section__suggestion{border:1px solid var(--border-default);background:var(--color-surface-primary);border-radius:.6rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem .85rem;display:flex}.quote-client-section__suggestion-meta{color:var(--color-text-soft);flex-wrap:wrap;gap:.4rem;font-size:.85rem;display:flex}.quote-client-section__suggestion button{white-space:nowrap}.quote-client-section__hint{color:var(--color-text-soft);margin:0;font-size:.85rem}.quote-client-section__selector{flex-direction:column;gap:.35rem;margin-top:.5rem;display:flex}.quote-client-section__selector-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.quote-client-section__selector select{min-width:16rem}.empty-state{color:var(--color-text-soft);margin:0}.quote-list table,.project-list table,.client-list table{border-collapse:collapse;width:100%}.project-list__summary,.client-list__summary{color:var(--color-text-secondary);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;font-weight:500;display:flex}.quote-list__page-size{color:var(--color-text-secondary);align-items:center;gap:.5rem;margin-left:auto;font-weight:500;display:flex}.client-tabs{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.client-tabs__button{border:1px solid var(--border-default);background:var(--color-surface-primary);color:var(--color-text-secondary);border-radius:999px;padding:.35rem .9rem;font-weight:600;transition:background .2s,color .2s,border-color .2s}.client-tabs__button--active{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.client-manager{grid-template-columns:minmax(18rem,2fr) minmax(18rem,1fr);gap:1.5rem;display:grid}@media (max-width:960px){.client-manager{grid-template-columns:1fr}}.client-manager__column{flex-direction:column;gap:1rem;display:flex}.client-manager__column-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.client-manager__hint{color:var(--color-text-secondary);margin:.15rem 0 0;font-size:.9rem}.client-manager__card-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.client-manager__card{border:1px solid var(--border-default);background:var(--color-surface-primary);border-radius:.85rem;flex-direction:column;gap:.45rem;padding:.85rem 1rem;display:flex}.client-manager__card-heading{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.client-manager__card-subtext{color:var(--color-text-secondary);font-size:.85rem;display:block}.badge--primary{background:var(--color-accent);color:#fff}.client-manager__card-body{color:var(--color-text-secondary);flex-direction:column;gap:.2rem;font-size:.9rem;display:flex}.client-manager__card-notes{color:var(--color-text-soft);margin:0;font-size:.85rem}.client-manager__item-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.client-manager__column--form{align-self:stretch}.client-manager__form-card{border:1px solid var(--border-default);background:var(--color-surface-primary);border-radius:1rem;flex-direction:column;gap:1rem;padding:1.25rem;display:flex;box-shadow:0 15px 35px #0f172a14}.client-manager__form-card-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.client-manager__form{flex-direction:column;gap:.85rem;display:flex}.client-manager__field-grid{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.85rem;display:grid}.client-manager__form label{flex-direction:column;gap:.35rem;font-weight:500;display:flex}.client-manager__form input,.client-manager__form select,.client-manager__form textarea{border:1px solid var(--border-default);background:var(--color-surface-muted);font:inherit;border-radius:.6rem;padding:.55rem .65rem}.client-manager__form textarea{resize:vertical}.client-manager__checkbox{align-items:center;gap:.35rem;font-weight:500;display:flex}.client-manager__form-actions{flex-wrap:wrap;justify-content:flex-start;gap:.75rem;display:flex}.client-related-panel{flex-direction:column;gap:1rem;display:flex}.client-related-panel__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.client-related-panel__pagination{color:var(--color-text-secondary);align-items:center;gap:.5rem;font-size:.9rem;display:flex}.client-related-panel__pagination-buttons{gap:.5rem;display:flex}.client-related-table table{border-collapse:collapse;width:100%}.client-related-table th,.client-related-table td{text-align:left;border-bottom:1px solid var(--border-muted);padding:.75rem .5rem}.client-related-table tbody tr:hover{background:var(--color-surface-muted)}.quote-list__page-size select{min-width:5rem}.project-pagination,.quote-pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-top:1rem;display:flex}.project-pagination__pages,.quote-pagination__pages{flex-wrap:wrap;gap:.5rem;display:flex}.project-pagination__ellipsis,.quote-pagination__ellipsis{color:var(--color-text-muted);padding:.35rem .45rem}.ghost-button--active{background:var(--color-surface-muted);border-color:var(--border-soft);color:var(--color-text-strong)}.quote-filters{flex-direction:column;gap:.75rem;margin-bottom:1.25rem;display:flex}.invoice-filters{flex-flow:wrap;align-items:flex-start;gap:20vw;display:flex}.invoice-filters .quote-filters{flex:260px;margin-bottom:0}.quote-filters__row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.quote-filters__group{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.quote-filters__label{color:var(--color-text-secondary);font-weight:600}.quote-filters__options{flex-wrap:wrap;gap:.5rem;display:flex}.status-pill{border:1px solid var(--border-soft);background:var(--color-surface-primary);color:var(--color-text-strong);font:inherit;cursor:pointer;text-align:center;border-radius:999px;justify-content:center;align-items:center;padding:.35rem .85rem;transition:background .2s,border-color .2s,color .2s,box-shadow .2s;display:inline-flex}.status-pill:hover,.status-pill:focus-visible{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--alpha-accent-soft);outline:none}.status-pill--active{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-text-inverse-strong);box-shadow:0 12px 24px var(--alpha-accent-shadow)}.quote-list th,.project-list th,.client-list th,.quote-list td,.project-list td,.client-list td{border-bottom:1px solid var(--border-default);text-align:left;padding:.75rem .5rem}.quote-list th,.project-list th,.client-list th{background:var(--color-surface-subtle);color:var(--color-text-strong);font-weight:600}.quote-search{flex-direction:column;gap:1.5rem;display:flex}.quote-search-form{flex-direction:column;gap:.75rem;display:flex}.search-input-group{align-items:center;gap:.75rem;display:flex}.search-input-group input[type=search]{border:1px solid var(--border-soft);font:inherit;border-radius:.6rem;flex:1;padding:.65rem .85rem}.search-suggestions{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.search-suggestions li button{background:var(--color-surface-muted);width:100%;color:var(--color-text-strong);border-radius:.6rem;justify-content:flex-start;padding:.6rem .8rem;display:flex}.search-suggestions li button:hover{background:var(--color-surface-accent)}.search-results{flex-direction:column;gap:1rem;display:flex}@media (max-width:960px){.app-layout{background:var(--gradient-app);grid-template-rows:auto 1fr;grid-template-columns:1fr;height:100%;min-height:100vh;display:grid;overflow:hidden}.sidebar{flex-direction:row;grid-row:1/2;justify-content:space-between;align-items:center;height:auto;position:static}.sidebar-content{flex-direction:row;align-items:center;gap:1rem}.theme-toggle{margin-top:0}.sidebar-nav{flex-direction:row;gap:.75rem}.nav-link{padding:.55rem .75rem}.main-content{height:100%;padding:2rem 1.25rem 3rem}.quote-list table,.project-list table,.quote-list thead,.project-list thead,.client-list thead,.quote-list tbody,.project-list tbody,.client-list tbody,.quote-list th,.project-list th,.client-list th,.quote-list td,.project-list td,.client-list td,.quote-list tr,.project-list tr,.client-list tr{display:block}.quote-list tr,.client-list tr{border:1px solid var(--border-default);background:var(--color-surface-primary);border-radius:.5rem;margin-bottom:1rem;padding:.75rem}.quote-list td,.project-list td,.client-list td{border:none;padding:.35rem 0}.quote-list td:before,.project-list td:before,.client-list td:before{content:attr(data-label);width:120px;font-weight:600;display:inline-block}}.catalogue-page{flex-direction:column;gap:1.75rem;display:flex}.catalogue-subnav{background:var(--color-contrast-surface);box-shadow:inset 0 0 0 1px var(--alpha-white-tint);border-radius:.85rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;width:100%;padding:.75rem;display:flex}.catalogue-subnav__tabs{flex-wrap:wrap;gap:.6rem;display:flex}.catalogue-subnav__side{flex-wrap:wrap;align-items:center;gap:.75rem;margin-left:auto;display:flex}.catalogue-subnav__status{color:var(--color-text-inverse-soft);align-items:center;gap:.4rem;font-weight:600;display:flex}.catalogue-subnav__status-label{text-transform:uppercase;letter-spacing:.04em;font-size:.85rem}.catalogue-subnav__status select{background:var(--color-surface-primary);color:var(--color-text-strong);border:none;border-radius:.5rem;padding:.3rem .6rem;font-weight:600;box-shadow:inset 0 0 0 1px #0000000d}.catalogue-subnav__metrics{text-align:right;color:var(--color-text-inverse-accent);flex-direction:column;align-items:flex-end;gap:.2rem;font-weight:600;display:flex}.catalogue-subnav__metric{font-size:.95rem}.catalogue-subnav__metric strong{color:var(--color-text-inverse-strong);margin-left:.35rem}.catalogue-subnav__link{color:var(--color-text-inverse-soft);border-radius:.65rem;padding:.55rem .9rem;font-weight:600;text-decoration:none;transition:background .2s,color .2s}.catalogue-subnav__link:hover{background:var(--alpha-white-hover);color:var(--color-text-inverse-strong)}.catalogue-subnav__link--active{background:var(--color-accent);color:var(--color-text-inverse-strong);box-shadow:0 12px 20px var(--alpha-accent-shadow)}.catalogue-content{flex-direction:column;gap:1.75rem;display:flex}.product-form{flex-direction:column;gap:1.5rem;display:flex}.product-form__header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.product-form__subtitle{color:var(--color-text-muted);margin:0}.product-form__prefill{border:1px solid var(--border-default);background:var(--color-surface-muted);border-radius:.85rem;flex-direction:column;gap:.75rem;margin-bottom:1.25rem;padding:1rem 1.25rem;display:flex}.product-form__prefill-status{flex-wrap:wrap;align-items:center;gap:.75rem;margin:0;display:flex}.product-form__prefill-selection{border:1px dashed var(--border-dashed);background:var(--color-surface-primary);border-radius:.75rem;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem .9rem;display:flex}.product-form__prefill-selection-title{margin:0 0 .25rem;font-weight:600}.product-form__prefill-selection-meta{margin:0}.product-form__prefill-results{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.product-form__prefill-results li{margin:0}.product-form__prefill-results button{text-align:left;width:100%;font:inherit;color:inherit;border:1px solid var(--border-default);background:var(--color-surface-primary);cursor:pointer;border-radius:.55rem;flex-direction:column;gap:.25rem;padding:.65rem .75rem;transition:border-color .2s,box-shadow .2s;display:flex}.product-form__prefill-results button:hover,.product-form__prefill-results button:focus-visible{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 2px #2563eb26}.product-form__prefill-result-title{font-weight:600}.product-form__prefill-result-meta{font-size:.9rem}.product-form__section{background:var(--color-surface-muted);border:1px solid var(--border-default);border-radius:.85rem;flex-direction:column;gap:1.1rem;padding:1.25rem 1.5rem;display:flex}.product-form__section h3{margin:0}.product-form__grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.product-form__grid--compact{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.product-form__field{color:var(--color-text-strong);flex-direction:column;gap:.4rem;font-weight:600;display:flex}.product-form__field input,.product-form__field textarea{font:inherit;border:1px solid var(--border-soft);background:var(--color-surface-primary);border-radius:.55rem;padding:.6rem .7rem}.product-form__field textarea{resize:vertical;min-height:120px}.product-form__field--full{grid-column:1/-1}.product-form__hint{color:var(--color-text-muted);margin:0;font-size:.92rem}.product-form__actions{justify-content:flex-end}.margin-form{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.5rem;display:flex}.margin-controls{align-items:flex-end;gap:.75rem;display:flex}.product-table{flex-direction:column;gap:1rem;display:flex}.product-table-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.product-table-actions{align-items:center;gap:.75rem;display:flex}.table-scroll{overflow-x:auto}.table-scroll table{border-collapse:collapse;width:100%}.table-scroll th,.table-scroll td{border-bottom:1px solid var(--border-default);text-align:left;padding:.75rem .5rem}.part-stack{color:var(--color-text-secondary);flex-direction:column;gap:.2rem;font-size:.85rem;display:flex}.product-import{flex-direction:column;gap:1rem;display:flex}.import-controls{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:end;gap:1rem;display:grid}.file-input{background:var(--color-accent);color:var(--color-text-inverse-strong);cursor:pointer;border-radius:.6rem;justify-content:center;align-items:center;padding:.6rem .8rem;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.file-input input[type=file]{opacity:0;cursor:pointer;position:absolute;top:0;right:0;bottom:0;left:0}.checkbox-inline{align-items:center;gap:.5rem;display:flex}.mapping-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;display:grid}.mapping-grid select,.mapping-grid input{font:inherit;border:1px solid var(--border-strong);border-radius:.5rem;padding:.5rem .6rem}.template-actions{flex-wrap:wrap;align-items:flex-end;gap:1rem;display:flex}.template-actions input{font:inherit;border:1px solid var(--border-strong);border-radius:.5rem;padding:.5rem .6rem}.status{color:var(--color-text-success)}.product-search__toolbar{justify-content:space-between;align-items:center;gap:1rem;margin-top:.75rem;display:flex}.product-search__group-controls{flex-wrap:wrap;gap:.5rem;display:flex}.product-search__chip{border:1px solid var(--alpha-slate-strong);color:var(--color-text-strong);background:0 0;border-radius:999px;padding:.4rem .75rem;font-weight:600}.product-search__chip--active{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-text-inverse-strong);box-shadow:0 8px 16px var(--alpha-accent-shadow)}.product-search__group-controls span{color:var(--color-text-secondary);font-weight:600}.product-search__page-controls{align-items:center;gap:.75rem;display:flex}.product-search__page-controls label{color:var(--color-text-secondary);align-items:center;gap:.5rem;font-weight:600;display:inline-flex}.product-search__page-controls select{font:inherit;border:1px solid var(--border-soft);background:var(--color-surface-primary);border-radius:.55rem;padding:.4rem .65rem}.product-search__pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;display:flex}.product-search__pagination span{color:var(--color-text-secondary);font-weight:500}.catalogue-group-grid{margin-top:1.5rem;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem;width:100%;max-width:min(100%,89rem);margin-inline:auto;display:grid}.catalogue-group-tile{background:var(--color-surface-primary);width:100%;height:100%;color:var(--color-text-strong);text-align:center;border:1px solid #0000;border-radius:1rem;flex-direction:column;justify-content:center;align-items:center;gap:0;min-height:7.25rem;padding:1.35rem 1rem;transition:transform .22s,box-shadow .22s,border-color .22s,filter .22s;display:flex;position:relative;overflow:hidden;box-shadow:0 6px 20px #0f172a14}.catalogue-group-tile:hover,.catalogue-group-tile:focus-visible{filter:saturate(1.02);outline:none;transform:translateY(-2px)scale(1.02);box-shadow:0 0 0 3px #ffffff73,0 24px 48px #0f172a2e}.catalogue-group-tile__label{width:100%;font-weight:700;line-height:1.15;display:block}.catalogue-group-tile__label--short{white-space:nowrap;text-overflow:ellipsis;font-size:1.15rem;transition:transform .2s,opacity .2s;overflow:hidden}.catalogue-group-tile__label--full{visibility:hidden;opacity:0;max-height:0;color:inherit;margin:0;font-size:1.05rem;transition:opacity .2s;overflow:hidden}.catalogue-group-tile__count{color:var(--color-text-secondary);visibility:hidden;opacity:0;max-height:0;margin:0;font-size:.9rem;transition:opacity .2s;overflow:hidden}.catalogue-group-tile:hover .catalogue-group-tile__label--short,.catalogue-group-tile:focus-visible .catalogue-group-tile__label--short{opacity:0;visibility:hidden;max-height:0;transform:translateY(-.35rem)}.catalogue-group-tile:hover .catalogue-group-tile__label--full,.catalogue-group-tile:focus-visible .catalogue-group-tile__label--full,.catalogue-group-tile:hover .catalogue-group-tile__count,.catalogue-group-tile:focus-visible .catalogue-group-tile__count{opacity:1;visibility:visible;max-height:8rem}.catalogue-group-tile:hover .catalogue-group-tile__count,.catalogue-group-tile:focus-visible .catalogue-group-tile__count{margin-top:.35rem}:root[data-theme=dark] .catalogue-group-tile{color:#0b172a}:root[data-theme=dark] .catalogue-group-tile__count{color:#0f172ab8}.catalogue-group-tile:hover .catalogue-group-tile__label--full,.catalogue-group-tile:focus-visible .catalogue-group-tile__label--full{margin-top:.2rem;font-size:1.12rem}.catalogue-group-detail{margin-top:1.5rem}.catalogue-group-detail__header{flex-wrap:wrap;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.catalogue-group-detail__back{border:1px solid var(--border-muted);background:var(--color-surface-primary);color:var(--color-text-secondary);border-radius:999px;padding:.45rem .85rem;font-weight:600;transition:border-color .2s,box-shadow .2s,color .2s,background .2s}.catalogue-group-detail__back:hover,.catalogue-group-detail__back:focus-visible{border-color:var(--color-accent);color:var(--color-accent);background:var(--alpha-accent-soft);box-shadow:0 0 0 3px var(--alpha-accent-soft);outline:none}.catalogue-group-detail__title{flex-direction:column;gap:.35rem;min-width:0;display:flex}.catalogue-group-detail__title-row{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.catalogue-group-detail__title-row h3{color:var(--color-text-strong);margin:0;font-size:1.2rem;font-weight:700}.catalogue-group-detail__title p{margin:0}.catalogue-group-detail__swatch{border:1px solid #0f172a1f;border-radius:.5rem;flex-shrink:0;width:1.5rem;height:1.5rem;box-shadow:0 0 0 2px #ffffffb3}.catalogue-group-detail__colour-button{border:1px solid var(--border-muted);background:var(--color-surface-primary);color:var(--color-text-secondary);border-radius:999px;padding:.3rem .8rem;font-weight:600;transition:border-color .2s,color .2s,box-shadow .2s,background .2s}.catalogue-group-detail__colour-button:hover,.catalogue-group-detail__colour-button:focus-visible{border-color:var(--color-accent);color:var(--color-accent);background:var(--alpha-accent-soft);box-shadow:0 0 0 3px var(--alpha-accent-soft);outline:none}.catalogue-group-detail__colour-input{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.bulk-toolbar{border:1px solid var(--border-muted);background:var(--color-surface-muted);border-radius:.75rem;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;padding:.75rem 1rem;display:flex}.bulk-toolbar__actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.side-panel-backdrop{background:var(--overlay-backdrop);z-index:1200;justify-content:flex-end;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.side-panel{background:var(--color-surface-primary);width:min(520px,100%);height:100%;box-shadow:var(--shadow-panel-strong);flex-direction:column;gap:1.5rem;padding:2rem 1.75rem;display:flex;overflow-y:auto}.side-panel__top{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.side-panel__top h2{margin:0}.bulk-edit-form{flex-direction:column;gap:1.5rem;display:flex}.bulk-edit-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.bulk-edit-actions{justify-content:flex-end;gap:.75rem}.side-panel fieldset{border:1px solid var(--border-muted);border-radius:.75rem;flex-direction:column;gap:1rem;padding:1rem 1.25rem;display:flex}.side-panel legend{padding:0 .35rem;font-weight:600}.catalogue-group table tr.is-selected{background:var(--color-surface-accent)}.catalogue-group table tr.is-selected td{background:0 0}.linkish{color:var(--color-text-link);cursor:pointer;font:inherit;text-align:left;background:0 0;border:none;padding:0}.linkish:hover{text-decoration:underline}.catalogue-group{border:1px solid var(--border-default);background:var(--color-surface-primary);border-radius:.85rem;flex-direction:column;gap:1rem;padding:1.25rem 1.4rem;display:flex}.catalogue-group__header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.catalogue-group__header h3{margin:0}.catalogue-group__header span{color:var(--color-text-muted);font-weight:600}@media (max-width:768px){.catalogue-subnav{flex-direction:column}.catalogue-subnav__link{text-align:center;width:100%}.catalogue-subnav__tabs{width:100%}.catalogue-subnav__side{flex-direction:column;align-items:stretch;width:100%;margin-left:0}.catalogue-subnav__status{justify-content:space-between}.catalogue-subnav__status select{width:100%}.catalogue-subnav__metrics{text-align:left;align-items:flex-start;width:100%;margin-left:0}.product-form__header{flex-direction:column;align-items:stretch}.product-form__header button{width:100%}.product-form__actions{flex-direction:column-reverse;align-items:stretch;gap:.65rem}.product-form__actions button{width:100%}.margin-form{flex-direction:column;align-items:stretch}.margin-controls{justify-content:space-between;width:100%}}.visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.location-management-bar{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:.75rem;display:flex}.location-management-bar h2{flex-shrink:0;margin:0;font-size:1rem}.location-management-bar .error{margin:0}.new-location-form{flex-wrap:nowrap;align-items:center;gap:.75rem;display:flex}.new-location-form input{font:inherit;border:1px solid var(--border-strong);border-radius:.5rem;flex:18rem;min-width:16rem;max-width:22rem;padding:.6rem .7rem}.location-actions input[type=search],.sub-location__header input[type=search]{font:inherit;border:1px solid var(--border-strong);border-radius:.5rem;min-width:16rem;padding:.6rem .7rem}.new-location-form button{white-space:nowrap}.location-management-bar .new-location-form{margin-left:auto}.location-management-bar__error{margin-left:.5rem;font-size:.9rem}.location-card{flex-direction:column;gap:1.25rem;width:100%;height:100%;display:flex;position:relative}.location-card__header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.location-actions{flex-wrap:wrap;justify-content:flex-end;gap:.75rem;display:flex}.location-card.is-collapsed{gap:1rem}.location-card__collapsed-summary{border:1px dashed var(--border-dashed);background:var(--color-surface-muted);border-radius:.5rem;flex-direction:column;gap:.4rem;padding:.75rem 1rem;display:flex}.location-card__collapsed-metrics{flex-wrap:wrap;align-items:center;gap:.75rem;font-weight:600;display:flex}.location-card__totals,.sub-location__totals{color:var(--color-text-muted);flex-wrap:wrap;gap:.75rem;font-weight:600;display:flex}.location-card__totals{margin-bottom:.5rem}.sub-location__totals{margin:.5rem 0 .75rem}.location-card__totals span,.sub-location__totals span{font-size:.95rem}.location-card__totals strong,.sub-location__totals strong{color:var(--color-text-strong);margin-left:.35rem}.location-collapse-controls{flex-wrap:wrap;justify-content:flex-end;gap:.75rem;margin-left:.75rem;display:flex}.sub-location{border-top:1px solid var(--border-muted);margin-top:.75rem;padding-top:1.25rem}.sub-location__header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.line-items{border:1px solid var(--border-muted);background:var(--color-surface-primary);border-radius:1rem;margin-top:1rem;padding:1rem 1.25rem;overflow-x:auto;box-shadow:0 12px 28px #0f172a14}.line-items table{border-collapse:collapse;width:100%}.line-items table,.sub-location table{font-size:.9rem}.line-items td,.sub-location table td{line-height:1.2}.line-items th,.line-items td,.sub-location table th,.sub-location table td{border-bottom:1px solid var(--border-muted);text-align:left;padding:.55rem .5rem}.line-items th:nth-child(4),.line-items th:nth-child(5),.line-items th:nth-child(6),.line-items th:nth-child(7),.line-items th:nth-child(8),.line-items td:nth-child(4),.line-items td:nth-child(5),.line-items td:nth-child(6),.line-items td:nth-child(7),.line-items td:nth-child(8),.sub-location table th:nth-child(4),.sub-location table th:nth-child(5),.sub-location table th:nth-child(6),.sub-location table th:nth-child(7),.sub-location table th:nth-child(8),.sub-location table td:nth-child(4),.sub-location table td:nth-child(5),.sub-location table td:nth-child(6),.sub-location table td:nth-child(7),.sub-location table td:nth-child(8){text-align:right}.line-items th:nth-child(4),.line-items td:nth-child(4),.sub-location table th:nth-child(4),.sub-location table td:nth-child(4){width:6.5ch;min-width:6.5ch;max-width:6.5ch}.line-items th:nth-child(5),.line-items td:nth-child(5),.line-items th:nth-child(6),.line-items td:nth-child(6),.sub-location table th:nth-child(5),.sub-location table td:nth-child(5),.sub-location table th:nth-child(6),.sub-location table td:nth-child(6){width:12ch;min-width:12ch;max-width:12ch}.line-items th:nth-child(8),.line-items td:nth-child(8),.sub-location table th:nth-child(8),.sub-location table td:nth-child(8){width:6ch;min-width:6ch;max-width:6ch}.line-items th,.sub-location table th{background:var(--color-surface-muted);color:var(--color-text-secondary);letter-spacing:.015em;text-transform:uppercase;font-size:.78rem}.line-items tbody tr td,.sub-location table tbody tr td{background:var(--color-surface-primary);transition:background .2s,box-shadow .2s}.line-items tbody tr:nth-of-type(2n) td,.sub-location table tbody tr:nth-of-type(2n) td{background:var(--color-surface-muted)}.line-item-row:hover td{background:var(--color-surface-subtle)}.line-items input,.line-items select,.line-items textarea,.sub-location table input,.sub-location table select,.sub-location table textarea{border:1px solid var(--border-default);background:var(--color-surface-muted);width:100%;color:var(--color-text-primary);border-radius:.65rem;padding:.35rem .5rem;transition:border-color .15s,box-shadow .15s,background .15s}.line-items input[type=number],.sub-location table input[type=number]{text-align:right}.line-items input:focus,.line-items select:focus,.line-items textarea:focus,.sub-location table input:focus,.sub-location table select:focus,.sub-location table textarea:focus{border-color:var(--color-indigo);box-shadow:0 0 0 2px var(--alpha-indigo-soft);background:var(--color-surface-primary);outline:none}.line-item-form-wrapper{border:1px solid var(--border-soft);background:var(--color-surface-muted);border-radius:.75rem;padding:1rem}.line-items table,.sub-location table{table-layout:fixed;min-width:960px}.line-items input[type=number],.sub-location input[type=number]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.line-items input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.line-items input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.sub-location input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.sub-location input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.line-items th,.sub-location table th{position:relative}.col-resizer{cursor:col-resize;-webkit-user-select:none;user-select:none;width:6px;height:100%;position:absolute;top:0;right:0}.col-resizer:hover{background:var(--alpha-indigo-medium)}.icon-button{background:0 0;border:1px solid #0000;border-radius:.4rem;padding:.2rem .45rem;line-height:1}.icon-button.danger-button{border-color:var(--button-danger-border);color:var(--color-text-danger)}.icon-button.danger-button:hover{background:var(--color-danger);color:var(--color-text-inverse-strong)}.hide-col-name th:first-child,.hide-col-name td:first-child,.hide-col-mfg th:nth-child(2),.hide-col-mfg td:nth-child(2),.hide-col-supplier th:nth-child(3),.hide-col-supplier td:nth-child(3),.hide-col-qty th:nth-child(4),.hide-col-qty td:nth-child(4),.hide-col-cost th:nth-child(5),.hide-col-cost td:nth-child(5),.hide-col-sell th:nth-child(6),.hide-col-sell td:nth-child(6),.hide-col-total th:nth-child(7),.hide-col-total td:nth-child(7),.hide-col-margin th:nth-child(8),.hide-col-margin td:nth-child(8),.hide-col-actions th:nth-child(9),.hide-col-actions td:nth-child(9){display:none}.column-picker{background:var(--color-surface-muted);border:1px solid var(--border-muted);border-radius:.5rem;flex-wrap:wrap;align-items:center;gap:.75rem;margin:.4rem 0;padding:.4rem .6rem;display:inline-flex}.column-picker label{color:var(--color-text-tertiary);align-items:center;gap:.35rem;font-size:.9rem;display:inline-flex}.line-item-form{flex-direction:column;gap:1rem;display:flex}.line-item-form .form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.line-item-form textarea{font:inherit;border:1px solid var(--border-strong);resize:vertical;border-radius:.5rem;padding:.6rem .7rem}.product-search-results{gap:.4rem;display:grid}.product-search-results button{background:var(--color-surface-accent);text-align:left;cursor:pointer;border:none;border-radius:.5rem;padding:.5rem .6rem}.product-search-results button:hover{background:var(--color-surface-accent-strong)}.product-search-result__name{color:var(--color-text-strong);font-weight:600}.product-search-result__meta{color:var(--color-text-secondary);flex-wrap:wrap;gap:.6rem;margin-top:.2rem;font-size:.85rem;display:flex}.product-search-result__meta span{align-items:center;display:inline-flex}.sub-location-form{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.sub-location-form input{font:inherit;border:1px solid var(--border-strong);border-radius:.5rem;padding:.5rem .6rem}.link-button{background:var(--color-accent-strong);color:var(--color-text-inverse-strong);border-radius:.5rem;align-items:center;gap:.3rem;padding:.45rem .75rem;text-decoration:none;display:inline-flex}.link-button.icon-only{border-radius:999px;justify-content:center;width:2.25rem;height:2.25rem;padding:.45rem;line-height:0}.link-button.icon-only .icon{width:1.1rem;height:1.1rem}.quote-actions{background:var(--color-surface-muted);justify-content:center;align-items:center;padding:.35rem .25rem;display:flex}.quote-action-btn{width:2rem;height:2rem;padding:0;transition:transform .18s}.quote-action-btn:hover{transform:translateY(-1px)}.danger-button{color:var(--color-text-danger);border:1px solid var(--button-danger-border);background:0 0}.danger-button:hover{background:var(--color-danger);color:var(--color-text-inverse-strong)}.muted{color:var(--color-text-muted);font-size:.85rem}@media (max-width:720px){.bulk-toolbar{flex-direction:column;align-items:flex-start;gap:.75rem}.bulk-toolbar__actions{justify-content:flex-start;width:100%}.side-panel{width:100%;padding:1.5rem 1.25rem}}.bulk-toolbar span{color:var(--color-text-secondary);font-weight:600}.quote-summary-panel{flex-direction:column;gap:.75rem;display:flex}.quote-summary-panel__details{color:var(--color-text-secondary);flex-direction:column;gap:.35rem;display:flex}.quote-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem;display:flex}.quote-header-actions__back{margin-right:auto}.location-stack{flex-direction:column;gap:1.5rem;display:flex}.location-drop-wrapper{flex-direction:column;gap:.5rem;display:flex}.location-panel.is-selected{border:2px solid var(--color-indigo-strong)}.location-panel--locked{opacity:.7}.location-card.is-locked{filter:grayscale(.35)}.location-card__lock-overlay{border-radius:inherit;pointer-events:all;cursor:not-allowed;z-index:1;background:#94a3b82e;position:absolute;top:0;right:0;bottom:0;left:0}.location-card.is-selected{border:1px solid var(--color-indigo-strong)}.sub-location.is-selected{border:1px solid var(--color-indigo);box-shadow:0 0 0 2px var(--alpha-indigo-border)}tr.is-selected{background:var(--alpha-indigo-selection)}.quote-drop-zone{background:0 0;border-radius:999px;height:10px;transition:background .18s,transform .18s}.quote-drop-zone--end{margin-top:.5rem}.quote-drop-zone.is-active,.quote-drop-zone:hover{background:var(--alpha-indigo-strong);transform:scaleY(1.6)}.line-drop-indicator{height:4px;transition:height .18s,background .18s}.line-drop-indicator td{border:none;padding:0}.line-drop-indicator__bar{opacity:0;background:0 0;border-radius:999px;width:100%;height:2px;transition:transform .18s,background .18s,opacity .18s;display:block;transform:scaleY(.5)}.line-drop-indicator:hover .line-drop-indicator__bar,.line-drop-indicator--active .line-drop-indicator__bar{background:var(--color-indigo);opacity:1;transform:scaleY(1.8)}.line-drop-indicator--active{height:14px}.line-item-row{transition:background .18s,opacity .18s}.line-item-row.is-dragging td{opacity:.5}.line-item-row.preview-before td{box-shadow:inset 0 2px 0 var(--color-indigo)}.line-item-row.preview-after td{box-shadow:inset 0 -2px 0 var(--color-indigo)}.line-item-total{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;display:block}.drag-handle{color:#64748b;cursor:grab;background:0 0;border:none;border-radius:.4rem;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;padding:0;transition:background .18s,color .18s;display:flex}.drag-handle svg{width:1rem;height:1rem;display:block}.drag-handle:hover{color:#475569;background:#64748b1f}.drag-handle:active{cursor:grabbing}.drag-handle:focus-visible{outline:2px solid var(--color-indigo);outline-offset:2px}.drag-handle[aria-disabled=true]{cursor:not-allowed;opacity:.6}.line-item-name-cell{align-items:center;gap:.5rem;display:flex}.line-item-name-cell input{flex:1;min-width:0}.line-item-supplier-cell{align-items:center;gap:.5rem;display:flex}.line-item-supplier-cell select,.line-item-supplier-cell input{flex:1;min-width:0}.line-item-supplier-cell select{max-width:12rem}.quote-context-menu{background:var(--color-sidebar-bg);color:var(--color-text-inverse-strong);z-index:1500;min-width:160px;box-shadow:var(--shadow-context-menu);border-radius:.5rem;margin:0;padding:.3rem;list-style:none;position:fixed}.quote-context-menu button{width:100%;color:inherit;text-align:left;background:0 0;border:none;border-radius:.4rem;padding:.5rem .75rem}.quote-context-menu button:hover{background:var(--alpha-white-strong)}.location-card .quote-drop-zone,.sub-location .quote-drop-zone{transition:background .15s}.location-card .quote-drop-zone.is-active,.sub-location .quote-drop-zone.is-active{background:var(--alpha-indigo-medium)}@media (max-width:720px){.quote-summary-panel__metrics{flex-direction:column}.quote-header-actions{justify-content:flex-start}.quote-header-actions__back{margin-right:0}}.panel-grid{gap:1.5rem;display:grid}.settings-grid{flex-direction:column;gap:1.5rem;display:flex}.form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.stacked-form label,.form-grid label{flex-direction:row;gap:.5rem;display:flex}.client-detail-panel{flex-direction:column;gap:1.75rem;min-height:auto;display:flex}.client-detail-panel__summary{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin:0;display:grid}.client-detail-panel__summary-item{background:var(--color-surface-muted);border:1px solid var(--border-muted);border-radius:.85rem;flex-direction:column;gap:.35rem;padding:1rem 1.25rem;display:flex}.client-detail-panel__summary-item dt{color:var(--color-text-muted);margin:0;font-size:.85rem;font-weight:600}.client-detail-panel__summary-item dd{color:var(--color-text-primary);word-break:break-word;margin:0;font-weight:600;line-height:1.4}.client-form{flex-direction:column;gap:1.75rem;display:flex}.client-form__section{border:1px solid var(--border-muted);background:var(--gradient-panel);border-radius:1rem;flex-direction:column;gap:1.25rem;padding:1.5rem 1.75rem;display:flex}.client-form__section-header{flex-wrap:wrap;justify-content:space-between;gap:1rem;display:flex}.client-form__section-header h3{margin:0;font-size:1.05rem}.client-form__section-hint{color:var(--color-text-muted);margin:0;font-size:.9rem}.client-form__grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;display:grid}.client-form__field{flex-direction:column;gap:.5rem;display:flex}.client-form__field--full{grid-column:1/-1}.client-form__label{color:var(--color-text-primary);font-weight:600}.client-form__required{color:var(--color-text-danger-strong)}.client-form__field input,.client-form__field textarea{font:inherit;border:1px solid var(--border-soft);background:var(--color-surface-primary);box-shadow:0 1px 2px var(--alpha-slate-light);border-radius:.65rem;padding:.65rem .75rem;transition:border-color .2s,box-shadow .2s}.client-form__field textarea{resize:vertical;min-height:7rem}.client-form__field input:focus,.client-form__field textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--alpha-accent-focus);outline:none}.client-form__actions{justify-content:flex-start;align-items:center}.client-form__error{margin:0;font-weight:600}.client-form__delete-button{background:var(--button-danger-border);border:1px solid var(--button-danger-border);color:var(--color-text-inverse-strong);border-radius:.5rem;padding:.45rem .9rem;font-size:.85rem;box-shadow:0 8px 18px #ef444440}.client-form__delete-button:hover:not([disabled]){background:var(--color-text-danger-strong);border-color:var(--color-text-danger-strong);box-shadow:0 10px 24px #dc26264d}.client-form__delete-button[disabled]{background:var(--button-danger-border);border-color:var(--button-danger-border);opacity:.75;box-shadow:none}.client-form__primary-actions{gap:.75rem;margin-left:auto;display:flex}.result-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.result-item{border:1px solid var(--border-color);border-radius:.75rem;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;display:flex}.result-item.active{border-color:var(--accent);background:var(--accent-muted)}.result-item h4{margin:0}.result-actions{flex-direction:column;gap:.5rem;display:flex}.small-text{font-size:.85rem}.template-select select{min-width:220px;padding:.45rem .6rem}.template-list{gap:1.5rem;margin:0;padding:0;list-style:none;display:grid}.template-card{background:var(--color-surface-primary);border:1px solid var(--border-strong);border-radius:1rem;padding:1.25rem;box-shadow:0 1px 3px #0f172a14}.template-card__header{flex-wrap:wrap;justify-content:space-between;gap:1.5rem;display:flex}.template-card__header label{color:var(--color-text-strong);font-weight:600;display:block}.template-card__header input,.template-card__header textarea{width:100%;margin-top:.4rem}.template-card__meta{flex-direction:column;align-items:flex-end;gap:.3rem;display:flex}.config-details{margin-top:1rem}.config-details summary{cursor:pointer;margin-bottom:.75rem;font-weight:600}.config-details[open] summary{margin-bottom:.5rem}.code-snippet{background:var(--color-surface-muted);border:1px solid var(--border-muted);color:var(--color-text-secondary);border-radius:.75rem;margin:0 0 1rem;padding:1rem;font-family:JetBrains Mono,Fira Code,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.85rem;line-height:1.45;overflow-x:auto}.code-snippet code{font:inherit;color:inherit}.template-card__actions{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.template-card__actions .ghost-button,.template-card__actions a.ghost-button{margin:0}.token-list{flex-wrap:wrap;gap:.5rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.token-list li{flex-direction:column;gap:.25rem;display:flex}.token-list code{background:var(--color-surface-muted);border-radius:.5rem;padding:.35rem .6rem;font-size:.9rem;display:inline-block}.client-picker{flex-direction:column;gap:.5rem;display:flex;position:relative}.client-suggestions{z-index:10;background:var(--color-surface-primary);border:1px solid var(--border-default);border-radius:.75rem;flex-direction:column;gap:.35rem;margin-top:.4rem;padding:.35rem 0 .3rem;display:flex;position:absolute;top:100%;left:0;right:0;box-shadow:0 12px 28px #0f172a1f}.client-suggestions__list{max-height:220px;margin:0;padding:.15rem 0;list-style:none;overflow-y:auto}.client-suggestions__list li button{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:.65rem;flex-direction:column;gap:.2rem;width:100%;padding:.6rem .9rem;display:flex}.client-suggestions__list li button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.client-suggestions__list li button:hover{background:var(--color-surface-subtle)}.client-suggestions__list .client-name{color:var(--color-text-strong);font-weight:600}.client-suggestions__list .client-contact{color:var(--color-text-muted)}.client-suggestions__footer{border-top:1px solid var(--border-muted);justify-content:space-between;align-items:center;gap:.75rem;padding:.15rem .75rem .3rem;display:flex}.client-suggestions__status{color:var(--color-text-muted);font-size:.78rem}.client-suggestions__nav{gap:.45rem;display:flex}.client-suggestions__nav button{border:1px solid var(--border-default);background:var(--color-surface-subtle);color:var(--color-text-secondary);border-radius:.5rem;padding:.3rem .65rem;font-size:.8rem;font-weight:600}.client-suggestions__nav button:disabled{opacity:.5;cursor:not-allowed}.client-suggestions__nav button:not(:disabled):hover{background:var(--color-surface-accent);border-color:var(--border-muted);color:var(--color-text-strong)}.client-picker-actions{justify-content:flex-start;align-items:center;gap:.5rem;display:flex}.new-client-form{border:1px dashed var(--border-color);background:var(--surface-alt);border-radius:.75rem;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.layout-selector-panel{flex-direction:column;gap:.75rem;display:flex}.layout-selector-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.layout-selector-controls{align-items:center;gap:.75rem;display:flex}.layout-selector-controls select{min-width:220px;padding:.45rem .6rem}.page-template-studio .template-studio-grid{grid-template-columns:minmax(320px,360px) 1fr;align-items:flex-start;gap:1.5rem;display:grid}.template-studio-sidebar{flex-direction:column;gap:1.25rem;display:flex}.template-studio-card{background:var(--color-surface-primary);border:1px solid var(--border-default);box-shadow:var(--shadow-card);border-radius:1rem;flex-direction:column;gap:.75rem;padding:1.2rem 1.25rem;display:flex}.template-studio-card h2{color:var(--color-text-strong);margin:0;font-size:1.1rem;font-weight:600}.template-select{border:1px solid var(--border-default);background:var(--color-surface-muted);color:var(--color-text-primary);border-radius:.6rem;padding:.55rem .7rem;font-size:.95rem}.template-select:focus{outline:2px solid var(--color-accent);outline-offset:2px}.template-studio-settings-card{gap:1rem}.template-studio-settings-header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.template-studio-settings-list{flex-direction:column;gap:1rem;max-height:32rem;padding-right:.4rem;display:flex;overflow-y:auto}.template-setting-field{border:1px solid var(--border-muted);background:var(--color-surface-muted);border-radius:.8rem;flex-direction:column;gap:.6rem;padding:.75rem;display:flex}.template-setting-field.is-overridden{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--alpha-accent-focus)}.template-setting-header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.template-setting-title{flex-direction:column;gap:.35rem;display:flex}.template-setting-title label{color:var(--color-text-strong);font-weight:600}.template-setting-multiselect{flex-direction:column;gap:.35rem;display:flex}.template-setting-multiselect label{color:var(--color-text-secondary);align-items:center;gap:.45rem;font-size:.9rem;display:flex}.template-setting-description{color:var(--color-text-muted);margin:0;font-size:.85rem}.template-setting-reset{border:1px solid var(--border-default);color:var(--color-text-secondary);cursor:pointer;background:0 0;border-radius:999px;padding:.25rem .75rem;font-size:.8rem}.template-setting-reset:hover{border-color:var(--color-accent);color:var(--color-accent)}.template-setting-text{resize:vertical;border:1px solid var(--border-default);background:var(--color-surface-primary);min-height:2.5rem;color:var(--color-text-primary);border-radius:.6rem;padding:.6rem .7rem;font-size:.95rem}.template-setting-text:focus{outline:2px solid var(--color-accent);outline-offset:2px}.template-setting-select{border:1px solid var(--border-default);background:var(--color-surface-primary);color:var(--color-text-primary);border-radius:.6rem;padding:.6rem .7rem;font-size:.95rem}.template-setting-select:focus{outline:2px solid var(--color-accent);outline-offset:2px}.template-setting-color{grid-template-columns:auto 1fr;align-items:center;gap:.6rem;display:grid}.template-setting-color input[type=color]{border:1px solid var(--border-default);background:var(--color-surface-primary);border-radius:.6rem;width:3rem;height:2.5rem;padding:.25rem}.template-setting-color input[type=text]{border:1px solid var(--border-default);background:var(--color-surface-primary);color:var(--color-text-primary);border-radius:.6rem;padding:.6rem .7rem}.template-setting-color input[type=text]:focus{outline:2px solid var(--color-accent);outline-offset:2px}.template-setting-toggle{color:var(--color-text-secondary);align-items:center;gap:.5rem;font-weight:600;display:inline-flex}.template-setting-toggle input{width:1.4rem;height:1.4rem}.template-settings-summary{flex-direction:column;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.template-settings-summary li{border:1px dashed var(--border-muted);border-radius:.75rem;justify-content:space-between;gap:1rem;padding:.45rem .6rem;font-size:.85rem;display:flex}.template-settings-summary code{background:var(--color-surface-muted);border-radius:.4rem;padding:.1rem .4rem;font-family:Fira Code,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.template-studio-preview{background:var(--color-surface-primary);border:1px solid var(--border-default);min-height:640px;box-shadow:var(--shadow-panel);border-radius:1rem;flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.template-studio-preview-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.template-studio-preview-actions{align-items:center;gap:.75rem;display:flex}.template-studio-frame{border:1px solid var(--border-muted);background:var(--color-surface-muted);border-radius:.75rem;flex:1;width:100%}.template-studio-empty,.template-studio-error{text-align:center;border:1px dashed var(--border-muted);color:var(--color-text-muted);background:var(--color-surface-muted);border-radius:.9rem;flex:1;justify-content:center;align-items:center;padding:2rem;display:flex}.template-studio-error{border-color:var(--color-text-danger);color:var(--color-text-danger)}@media (max-width:1080px){.page-template-studio .template-studio-grid{grid-template-columns:1fr}.template-studio-preview{min-height:520px}}.calendar-page{flex-direction:column;height:100%;min-height:100%;display:flex}.calendar-controls{background:var(--color-surface-primary);border:1px solid var(--border-default);box-shadow:var(--shadow-card);border-radius:1rem;gap:1.25rem;padding:1rem 1.25rem;display:grid}.calendar-controls__row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem 2rem;display:flex}.calendar-controls__view{align-items:center;gap:.75rem;display:flex}.calendar-controls__label{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem}.calendar-controls__view-buttons{background:var(--color-surface-subtle);border:1px solid var(--border-default);border-radius:999px;gap:.25rem;padding:.25rem;display:inline-flex}.calendar-controls__view-buttons button{cursor:pointer;background:0 0;border:none;border-radius:999px;padding:.4rem .85rem;font-size:.85rem}.calendar-controls__view-buttons button.active{background:var(--color-accent);color:var(--color-text-inverse-strong)}.calendar-controls__saved{align-items:flex-end;gap:.75rem;display:flex}.calendar-controls__saved select{min-width:180px}.calendar-controls__grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.calendar-controls__group{gap:.65rem;display:grid}.calendar-controls__group h4{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);margin:0;font-size:.85rem}.calendar-controls__checkboxes{gap:.35rem;display:grid}.calendar-controls__checkboxes label,.calendar-controls__checkbox-inline{align-items:center;gap:.4rem;font-size:.9rem;display:flex}.calendar-controls__checkboxes--scroll{max-height:150px;padding-right:.25rem;overflow-y:auto}.calendar-controls__empty{color:var(--color-text-muted);margin:0;font-size:.85rem}.calendar-controls__range{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.calendar-controls__range label{gap:.35rem;font-size:.85rem;display:grid}.calendar-controls__saved button,.calendar-controls__view-buttons button,.calendar-controls__group input,.calendar-controls__group select{font:inherit}.calendar-content{flex-direction:column;flex:1;gap:1rem;padding:1.5rem 1.75rem;display:flex;overflow:hidden}.calendar-toolbar{justify-content:space-between;align-items:center;display:flex}.calendar-toolbar__actions{align-items:center;gap:.75rem;display:flex}.calendar-toolbar__actions .upload{border:1px dashed var(--border-default);cursor:pointer;border-radius:.5rem;padding:.5rem .75rem;position:relative;overflow:hidden}.calendar-toolbar__actions .upload input{opacity:0;cursor:pointer;position:absolute;top:0;right:0;bottom:0;left:0}.calendar-wrapper{background:var(--color-surface-primary);box-shadow:var(--shadow-card);border-radius:1rem;padding:.75rem}.calendar-event{color:#fff;border-radius:.35rem;flex-direction:column;gap:.1rem;padding:.25rem .35rem;display:flex}.calendar-legend{flex-wrap:wrap;gap:.5rem;display:flex}.calendar-legend__item{border:1px solid var(--border-default);background:var(--color-surface-primary);cursor:pointer;border-radius:999px;align-items:center;gap:.4rem;padding:.2rem .6rem;display:inline-flex}.calendar-legend__item.active{border-color:var(--color-accent)}.calendar-legend__dot{border-radius:50%;width:.75rem;height:.75rem}.calendar-drawer{z-index:40;justify-content:flex-end;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.calendar-drawer__backdrop{background:var(--overlay-backdrop);flex:1}.calendar-drawer__panel{background:var(--color-surface-primary);width:420px;box-shadow:var(--shadow-panel-strong);flex-direction:column;display:flex}.calendar-drawer__header,.calendar-drawer__footer{border-bottom:1px solid var(--border-default);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.calendar-drawer__footer{border-top:1px solid var(--border-default);border-bottom:none;gap:.5rem}.calendar-drawer__tabs{gap:.5rem;padding:0 1.25rem;display:flex}.calendar-drawer__tabs button{cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:.5rem .75rem}.calendar-drawer__tabs button.active{border-bottom-color:var(--color-accent);color:var(--color-accent)}.calendar-drawer__content{flex:1;gap:1rem;padding:1.25rem;display:grid;overflow-y:auto}.drawer-section label{flex-direction:column;gap:.35rem;margin-bottom:1rem;display:flex}.drawer-quick-actions{align-items:center;gap:.4rem;margin:.5rem 0;display:flex}.drawer-quick-actions button,.calendar-toolbar__actions button,.calendar-drawer__footer button{border:1px solid var(--border-default);background:var(--color-surface-subtle);cursor:pointer;border-radius:.5rem;padding:.45rem .85rem}.calendar-drawer__footer .secondary{background:0 0}.drawer-checkbox{align-items:center;gap:.5rem;margin-bottom:.35rem;display:flex}.drawer-reminder{align-items:center;gap:1rem;display:flex}.event-popover{background:var(--color-surface-primary);width:320px;box-shadow:var(--shadow-card);border:1px solid var(--border-default);z-index:50;border-radius:1rem;flex-direction:column;display:flex;position:fixed;bottom:1.5rem;right:1.5rem}.event-popover header{border-bottom:3px solid var(--color-accent);justify-content:space-between;align-items:center;padding:1rem;display:flex}.event-popover section{gap:.5rem;padding:1rem;display:grid}.event-popover footer{justify-content:flex-end;gap:.5rem;padding:1rem;display:flex}.event-popover footer button{border:1px solid var(--border-default);background:var(--color-surface-subtle);cursor:pointer;border-radius:.5rem}.badge{background:var(--color-surface-subtle);border-radius:999px;align-items:center;padding:.2rem .45rem;font-size:.75rem;display:inline-flex}.badge.success{color:#047857;background:#10b9811a}.calendar-controls input[type=search],.calendar-controls input[type=date],.calendar-controls input[type=time],.calendar-controls select{border:1px solid var(--border-default);background:var(--color-surface-subtle);color:var(--color-text-primary);border-radius:.5rem;padding:.5rem .75rem}.calendar-controls__saved button{border:1px solid var(--border-default);background:var(--color-surface-subtle);cursor:pointer;border-radius:.5rem;padding:.45rem .85rem}.drawer-datetime{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem 1rem;display:grid}.drawer-datetime>div{gap:.5rem;display:grid}.project-form{flex-direction:column;gap:1rem;margin-top:1.5rem;display:flex}.project-form__fields{background:var(--color-surface-muted);border:1px solid var(--border-muted);border-radius:1rem;gap:1rem;padding:1.5rem;display:grid}.project-quote-summary{border:1px solid var(--border-muted);background:var(--color-surface-muted);border-radius:.85rem;grid-column:1/-1;gap:.75rem;margin:0;padding:1rem 1.25rem;display:grid}.project-quote-summary__header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.project-quote-summary__header h3{color:var(--color-text-strong);margin:0;font-size:1rem}.project-quote-summary__client{color:var(--color-text-muted);margin:.25rem 0 0;font-size:.875rem}.project-quote-summary__code{color:var(--color-text-muted);font-weight:600}.project-quote-summary__meta{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.5rem;margin:0;display:grid}.project-quote-summary__meta div{flex-direction:column;gap:.15rem;display:flex}.project-quote-summary__meta dt{letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-muted);margin:0;font-size:.75rem;font-weight:600}.project-quote-summary__meta dd{color:var(--color-text-secondary);margin:0;font-size:.95rem}.project-quote-summary__description{color:var(--color-text-secondary);margin:0;line-height:1.4}.project-quote-summary__empty{color:var(--color-text-muted);margin:0}.project-form__fields textarea{font:inherit;border:1px solid var(--border-strong);resize:vertical;border-radius:.5rem;padding:.6rem .7rem}.address-preview{border:1px solid var(--border-strong);background:var(--color-surface-primary);white-space:pre-wrap;border-radius:.5rem;min-height:3rem;padding:.85rem;font-size:.95rem;line-height:1.35}.project-form__section{background:var(--color-surface-primary);border:1px solid var(--border-muted);border-radius:1rem;flex-direction:column;grid-column:1/-1;gap:1rem;padding:1.25rem 1.5rem;display:flex}.project-form__section+.project-form__section{margin-top:0}.project-form__items{gap:1rem}.project-form__section-header{flex-direction:column;gap:.35rem;display:flex}.project-form__section-header h5{margin:0}.project-form__section-actions{flex-wrap:wrap;gap:.75rem;display:flex}.percentage-item-panel{border:1px dashed var(--border-muted);background:var(--color-surface-muted);border-radius:.9rem;flex-direction:column;gap:1rem;margin-top:1rem;padding:1rem;display:flex}.percentage-item-panel__header h6{margin:0}.percentage-item-panel__options{flex-direction:column;gap:.75rem;display:flex}.percentage-item-panel__option{border:1px solid var(--border-muted);background:var(--color-surface-primary);border-radius:.75rem;gap:.75rem;padding:.75rem;display:flex}.percentage-item-panel__option.is-selected{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.percentage-item-panel__option input[type=radio]{margin-top:.35rem}.percentage-item-panel__option-label{flex-direction:column;gap:.1rem;display:flex}.percentage-item-panel__totals{color:var(--color-text-muted);font-size:.85rem}.percentage-item-panel__percent-input{align-items:center;gap:.35rem;margin-top:.35rem;display:flex}.percentage-item-panel__percent-input input{width:6rem}.percentage-item-panel__actions{flex-wrap:wrap;justify-content:flex-end;gap:.75rem;display:flex}.project-form__selected-items .selected-items{flex-direction:column;gap:1rem;max-width:100%;display:flex;overflow-x:hidden}.selected-items .data-table{border-collapse:collapse;table-layout:auto;width:100%}.selected-items .data-table th,.selected-items .data-table td{word-break:break-word;padding:.65rem .55rem}.selected-items col.po-column--supplier{width:var(--po-col-width-supplier)}.selected-items col.po-column--manufacturer{width:var(--po-col-width-manufacturer)}.selected-items col.po-column--name{width:var(--po-col-width-name)}.selected-items col.po-column--supplier-part{width:var(--po-col-width-supplier-part)}.selected-items col.po-column--qty{width:var(--po-col-width-qty)}.selected-items col.po-column--cost-ea{width:var(--po-col-width-cost-ea)}.selected-items col.po-column--sell-ea{width:var(--po-col-width-sell-ea)}.selected-items col.po-column--total-cost{width:var(--po-col-width-total-cost)}.selected-items col.po-column--total-sell{width:var(--po-col-width-total-sell)}.selected-items col.po-column--notes{width:var(--po-col-width-notes)}.selected-items col.po-column--actions{width:var(--po-col-width-actions)}.selected-items .po-column--qty,.selected-items .po-column--cost-ea,.selected-items .po-column--sell-ea,.selected-items .po-column--total-cost,.selected-items .po-column--total-sell{text-align:right}.quote-items{flex-direction:column;gap:1.5rem;display:flex}.quote-items__section{border:1px solid var(--border-muted);background:var(--color-surface);border-radius:.9rem;padding:1rem}.quote-items__ordered{flex-direction:column;gap:1rem;display:flex}.quote-items__ordered-group{border:1px solid var(--border-muted);background:var(--color-surface);border-radius:.9rem;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.quote-items__ordered-group h6{margin:0;font-size:.95rem;font-weight:600}.quote-items-table{width:100%;overflow-x:auto}.quote-items-table table{border-collapse:collapse;width:100%;min-width:720px}.quote-items__select-column,.quote-items-table td:first-child{text-align:center;width:4rem}.quote-items-table input[type=checkbox]{width:1.1rem;height:1.1rem}.quote-items__row--selected td{background:var(--color-surface-subtle)}.quote-items__row--ordered td{background:#fbbf2414}.quote-items__row--selected.quote-items__row--ordered td{background:#f59e0b29}.selected-items .data-table input,.selected-items .data-table textarea{width:100%;font:inherit;border:1px solid var(--border-strong);border-radius:.45rem;padding:.5rem .55rem}.selected-items .data-table input[type=number]{text-align:right;-moz-appearance:textfield}.selected-items .data-table input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.selected-items .data-table input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}td.selected-items__status{color:var(--color-text-secondary);white-space:normal;width:10%;font-size:.85rem}.selected-items__part-number{font-variant-numeric:tabular-nums;word-break:break-word;white-space:normal;width:7%}.selected-items__description{white-space:normal;width:24%}.selected-items__qty{text-align:right;word-break:break-word;white-space:normal;width:2.5%}.selected-items__unit{word-break:break-word;white-space:normal;width:6%}.selected-items__narrow{text-align:right;word-break:break-word;white-space:normal;width:4%}.selected-items__notes{white-space:normal;width:8%}.selected-items__actions{text-align:center;white-space:normal;width:5%}.selected-items__actions .ghost-button{white-space:normal;width:100%;min-width:0}.selected-items__status-content{border-left:3px solid #2563eb26;flex-direction:column;gap:.2rem;padding-left:.75rem;display:flex}.selected-items__status-content span:last-of-type{font-weight:600}.selected-items__total{text-align:right;word-break:break-word;font-variant-numeric:tabular-nums;color:var(--color-text-strong);white-space:normal;width:6%}td.selected-items__status--alert .selected-items__status-content{color:var(--color-text-danger-strong);background:#f8717114;border-left-color:#f8717173;border-radius:.45rem;padding:.5rem .75rem}td.selected-items__status--alert .selected-items__status-content span:last-of-type{font-weight:700}td.selected-items__status .muted.small-text{margin-top:.25rem}.project-form__totals{flex-wrap:wrap;justify-content:flex-end;gap:1rem;font-weight:600;display:flex}.backup-settings-list{flex-direction:column;gap:1.25rem;display:flex}.backup-settings-row{border:1px solid var(--border-default);background:var(--color-surface-primary);border-radius:18px;grid-template-columns:minmax(220px,2fr) repeat(auto-fit,minmax(180px,1fr));gap:1.25rem;padding:1.25rem;display:grid;box-shadow:0 12px 30px #0f172a0d}@media (max-width:900px){.backup-settings-row{grid-template-columns:1fr}}.backup-settings-meta h3{color:var(--color-text-strong);margin:0 0 .35rem;font-size:1rem}.backup-settings-meta p{margin:.15rem 0 0}.backup-settings-controls{align-content:start;gap:.75rem;display:grid}.backup-settings-controls label{color:var(--color-text-secondary);flex-direction:column;gap:.35rem;font-weight:600;display:flex}.backup-settings-controls input,.backup-settings-controls select{padding:.55rem .7rem}.backup-settings-actions{justify-content:flex-end;align-items:flex-end;display:flex}.backup-settings-actions .ghost-button{min-width:12rem}.backup-summary-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.backup-summary-actions{flex-wrap:wrap;justify-content:flex-end;gap:.75rem;display:flex}.backup-summary-table-wrapper{border:1px solid var(--border-default);background:var(--color-surface-primary);border-radius:16px;overflow-x:auto}.backup-summary-table{border-collapse:collapse;width:100%;min-width:620px}.backup-summary-table thead th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);background:var(--color-surface-subtle);padding:.75rem 1rem;font-size:.75rem}.backup-summary-table tbody th,.backup-summary-table tbody td{border-top:1px solid var(--border-default);vertical-align:top;padding:.95rem 1rem}.backup-summary-table tbody th{color:var(--color-text-strong);width:220px;font-weight:600}.backup-summary-table tbody tr:first-child th,.backup-summary-table tbody tr:first-child td{border-top:none}.backup-summary-table tbody tr:hover{background:#0f172a08}.backup-summary-name{flex-direction:column;gap:.35rem;display:flex}.backup-summary-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.backup-summary-actions-column{text-align:right;white-space:nowrap}.backup-history-overlay{z-index:1000;background:#0f172a8c;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.backup-history-modal{background:var(--color-surface-primary);border-radius:18px;flex-direction:column;width:min(960px,100%);max-height:90vh;display:flex;overflow:hidden;box-shadow:0 25px 60px #0f172a40}.backup-history-modal-header{border-bottom:1px solid var(--border-default);justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 1.5rem;display:flex}.backup-history-modal-header h3{margin:0;font-size:1.15rem}.backup-history-modal-body{flex-direction:column;gap:1rem;padding:1.25rem 1.5rem 1.5rem;display:flex;overflow-y:auto}.backup-history-modal-body>p{margin:0}.backup-history-table-wrapper{border:1px solid var(--border-default);background:var(--color-surface-primary);border-radius:14px;overflow:auto}.backup-history-table{border-collapse:collapse;width:100%;min-width:680px}.backup-history-table th,.backup-history-table td{text-align:left;border-top:1px solid var(--border-default);vertical-align:top;padding:.85rem 1rem}.backup-history-table thead th{background:var(--color-surface-subtle);text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-secondary);border-top:none;font-size:.75rem}.backup-history-table tbody tr:nth-child(2n){background:#0f172a05}.backup-history-actions-column{white-space:nowrap;text-align:right}.backup-history-table-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.backup-history-table code{background:var(--color-surface-subtle);border-radius:8px;padding:.1rem .35rem;font-size:.85rem;display:inline-block}.backup-upload-modal{background:var(--color-surface-primary);border-radius:16px;flex-direction:column;gap:1rem;width:min(440px,100%);padding:1.25rem 1.5rem 1.5rem;display:flex;box-shadow:0 20px 48px #0f172a40}.backup-upload-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.backup-upload-header h3{margin:0;font-size:1.1rem}.backup-upload-form{flex-direction:column;gap:.9rem;display:flex}.backup-upload-field{color:var(--color-text-secondary);flex-direction:column;gap:.45rem;font-weight:600;display:flex}.backup-upload-field input[type=file]{border:1px dashed var(--border-default);background:var(--color-surface-subtle);border-radius:12px;padding:.85rem .75rem}.backup-upload-actions{justify-content:flex-end;align-items:center;gap:.75rem;display:flex}.backup-job-modal{background:var(--color-surface-primary);border-radius:18px;flex-direction:column;gap:.85rem;width:min(520px,100%);max-height:80vh;padding:1.25rem 1.5rem;display:flex;box-shadow:0 24px 56px #0f172a4d}.backup-job-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.backup-job-header h3,.backup-job-meta{margin:0}.backup-job-log{border:1px solid var(--border-default);background:var(--color-surface-subtle);border-radius:12px;flex:1;min-height:180px;max-height:320px;padding:.85rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.85rem;line-height:1.45;overflow-y:auto}.backup-job-log>div{margin-bottom:.25rem}.backup-job-log>div:last-child{margin-bottom:0}.backup-job-actions{justify-content:flex-end;gap:.75rem;display:flex}@media (max-width:720px){.backup-summary-header{flex-direction:column;align-items:flex-start}.backup-summary-actions{justify-content:flex-start;width:100%}.backup-summary-actions-column{text-align:left}.backup-summary-row-actions{justify-content:flex-start}}@media (max-width:600px){.backup-history-modal,.backup-upload-modal,.backup-job-modal{width:100%}.backup-history-table{min-width:540px}.backup-history-modal-header,.backup-history-modal-body{padding:1rem 1.1rem}}.badge{letter-spacing:.01em;border-radius:999px;align-items:center;padding:.2rem .6rem;font-size:.75rem;font-weight:600;display:inline-flex}.badge-critical{color:#1d4ed8;background:#2563eb1f}.badge-calendar{color:#047857;background:#10b9811f}.badge-general{color:var(--color-text-secondary);background:#0f172a14}.status-pill--not-started{color:#5b6071;background:#f3f4f6;border-color:#d9dce4}.status-pill--not-started.status-pill--active{color:#fff;background:#6f7487;border-color:#6f7487;box-shadow:0 12px 24px #6f748740}.status-pill--in-progress{color:#2347a0;background:#e8f1ff;border-color:#bfd3ff}.status-pill--in-progress.status-pill--active{color:#fff;background:#3e63d4;border-color:#3e63d4;box-shadow:0 12px 24px #3e63d440}.status-pill--pending{color:#a76505;background:#fdf3db;border-color:#f9d9a6}.status-pill--pending.status-pill--active{color:#fff;background:#d98a14;border-color:#d98a14;box-shadow:0 12px 24px #d98a1440}.status-pill--approved{color:#1f7a3c;background:#e6f6ec;border-color:#bde5c7}.status-pill--approved.status-pill--active{color:#fff;background:#2f9152;border-color:#2f9152;box-shadow:0 12px 24px #2f915240}.status-pill--completed{color:#1f7a3c;background:#e6f6ec;border-color:#bde5c7}.status-pill--completed.status-pill--active{color:#fff;background:#2f9152;border-color:#2f9152;box-shadow:0 12px 24px #2f915240}.status-pill--rejected{color:#b4231a;background:#fde8e7;border-color:#f5bcbc}.status-pill--rejected.status-pill--active{color:#fff;background:#d12b1f;border-color:#d12b1f;box-shadow:0 12px 24px #d12b1f40}.status-pill--void{color:#5e6378;background:#f1f1f5;border-color:#d1d1dd}.status-pill--void.status-pill--active{color:#fff;background:#6a7086;border-color:#6a7086;box-shadow:0 12px 24px #6a708640}.status-pill--processing{color:#1f3c88;background:#eaf1ff;border-color:#c7d8ff}.status-pill--processing.status-pill--active{color:#fff;background:#3253c7;border-color:#3253c7;box-shadow:0 12px 24px #3253c740}.status-pill--processed{color:#1f7a3c;background:#e6f6ec;border-color:#bde5c7}.status-pill--processed.status-pill--active{color:#fff;background:#2f9152;border-color:#2f9152;box-shadow:0 12px 24px #2f915240}.status-pill--failed{color:#b4231a;background:#fde8e7;border-color:#f5bcbc}.status-pill--failed.status-pill--active{color:#fff;background:#d12b1f;border-color:#d12b1f;box-shadow:0 12px 24px #d12b1f40}.table-sort-button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:.25rem;padding:0;display:inline-flex}.table-sort-button:hover{color:var(--color-accent)}.table-sort-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.table-sort-indicator{font-size:.75rem;line-height:1}.invoice-due-date{font-variant-numeric:tabular-nums}.invoice-due-date--overdue{color:#b91c1c;font-weight:600}.integration-pill{background:var(--color-surface-subtle);color:var(--color-text-secondary);border-radius:999px;align-items:center;padding:.35rem .85rem;font-size:.85rem;font-weight:600;display:inline-flex}.integration-pill--success{color:#047857;background:#10b98129}.integration-pill--warning{color:#92400e;background:#fbbf242e}.integration-section{gap:1.5rem}.integration-section+.integration-section{margin-top:1.5rem}.integration-section h2{margin:0}.integration-hint{margin-top:.75rem}.integration-stats{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;display:grid}.integration-stat-card{background:var(--color-surface-subtle);border-radius:.75rem;flex-direction:column;gap:.35rem;padding:1rem;display:flex}.integration-stat-label{color:var(--color-text-muted);font-size:.85rem}.integration-stat-value{color:var(--color-text-strong);font-size:1.3rem}.integration-actions{flex-wrap:wrap;gap:.75rem;margin-top:1.25rem;display:flex}.integration-table-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.integration-table-actions{flex-wrap:wrap;gap:.75rem;display:flex}.integration-table-actions select{border:1px solid var(--border-default);background:var(--color-surface-primary);color:var(--color-text-primary);border-radius:.5rem;padding:.5rem .75rem}.integration-table{margin-top:1rem}.status-chip{letter-spacing:.01em;background:var(--color-surface-subtle);color:var(--color-text-secondary);text-transform:uppercase;border-radius:999px;align-items:center;padding:.2rem .55rem;font-size:.75rem;font-weight:600;display:inline-flex}.status-chip.status-pending{color:#1d4ed8;background:#3b82f61f}.status-chip.status-processing{color:#1e3a8a;background:#2563eb1f}.status-chip.status-failed{color:#b91c1c;background:#f8717129}.status-chip.status-processed,.status-chip.status-success{color:#047857;background:#10b98129}.status-chip.status-partial{color:#92400e;background:#fbbf242e}.status-chip.status-error{color:#b91c1c;background:#f8717129}.currency-input{align-items:center;gap:.35rem;display:flex}.currency-input__prefix{color:var(--color-text-muted);font-size:.9rem}.currency-input input{flex:1}.auth-page{background:var(--color-surface-muted);justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.auth-card{background:var(--color-surface);width:min(420px,100%);box-shadow:var(--shadow-lg);border-radius:1rem;flex-direction:column;gap:1.25rem;padding:2.5rem 2rem;display:flex}.auth-title{margin:0;font-size:1.75rem}.auth-subtitle{color:var(--color-text-muted);margin:0}.auth-form{flex-direction:column;gap:1rem;display:flex}.auth-label{flex-direction:column;gap:.4rem;font-weight:500;display:flex}.auth-label input[type=email],.auth-label input[type=password]{border:1px solid var(--color-border-muted);background:var(--color-surface-muted);border-radius:.5rem;padding:.65rem .75rem}.auth-checkbox{color:var(--color-text-muted);align-items:center;gap:.5rem;font-size:.9rem;display:flex}.auth-submit{background:var(--color-primary);color:var(--color-on-primary);cursor:pointer;border:none;border-radius:.75rem;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-weight:600;text-decoration:none;display:inline-flex}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-error{color:var(--color-danger);font-size:.9rem}.page-loading{color:var(--color-text-muted);padding:2rem}.notification-bell{border:1px solid var(--color-border-muted);background:var(--color-surface-muted);cursor:pointer;width:60px;height:40px;color:var(--color-text-muted);border-radius:999px;justify-content:center;align-items:center;transition:background .2s,color .2s,border-color .2s;display:inline-flex;position:relative}.notification-bell__icon{color:currentColor;width:24px;height:24px}.notification-bell:hover,.notification-bell:focus-visible{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-surface)}.notification-bell__badge{background:var(--color-danger,#dc2626);color:#fff;border-radius:999px;padding:.1rem .35rem;font-size:.65rem;font-weight:600;position:absolute;top:-4px;right:-4px}.notification-sidebar__backdrop{-webkit-backdrop-filter:blur(12px);z-index:40;background:#080f23a6;width:100%;height:100%;position:fixed;top:0;left:0}.notification-sidebar{background:var(--color-surface);width:min(420px,90vw);height:95vh;box-shadow:var(--shadow-lg);z-index:41;flex-direction:column;gap:1rem;padding:1.5rem 1.5rem 2.5rem;display:flex;position:fixed;top:0;right:0}.notification-sidebar__header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.notification-sidebar__title{margin:0;font-size:1.2rem}.notification-sidebar__subtitle{color:var(--color-text-muted);margin:.2rem 0 0;font-size:.9rem}.notification-sidebar__close{cursor:pointer;background:0 0;border:none;font-size:1.5rem;line-height:1}.notification-sidebar__actions{justify-content:flex-end;display:flex}.notification-sidebar__mark-all{border:1px solid var(--color-border-muted);cursor:pointer;background:0 0;border-radius:999px;padding:.35rem .8rem}.notification-sidebar__list{flex-direction:column;flex:1;gap:.75rem;display:flex;overflow-y:auto}.notification-sidebar__empty{text-align:center;color:var(--color-text-muted)}.notification-sidebar__hint{margin:.25rem 0 0;font-size:.9rem}.notification-item{border:1px solid var(--color-border-muted);background:var(--color-surface-muted);cursor:pointer;text-align:left;border-radius:.9rem;gap:.75rem;width:100%;padding:.75rem;display:flex}.notification-item__indicator{border-radius:999px;width:8px}.notification-item__indicator--success{background:#16a34a}.notification-item__indicator--warning{background:#f97316}.notification-item__indicator--error{background:#dc2626}.notification-item__indicator--info{background:var(--color-primary)}.notification-item__body{flex-direction:column;flex:1;gap:.25rem;display:flex}.notification-item__title{margin:0;font-weight:600}.notification-item__description{color:var(--color-text-muted);margin:0;font-size:.9rem}.notification-item__meta{color:var(--color-text-muted);margin:0;font-size:.8rem}.notification-sidebar__view-all{background:var(--color-primary);width:100%;color:var(--color-on-primary);cursor:pointer;border:none;border-radius:.9rem;flex-shrink:0;margin-top:auto;padding:.85rem;font-weight:600}.notification-banner{color:#fff;box-shadow:var(--shadow-lg);z-index:50;background:#0f172a;border-radius:.75rem;align-items:center;gap:.75rem;padding:.85rem 1rem;display:flex;position:fixed;top:1rem;right:1rem}.notification-banner__content{cursor:pointer}.notification-banner__text{margin:0;font-weight:500}.notification-banner__dismiss{color:#fff;cursor:pointer;background:#ffffff26;border:none;border-radius:999px;width:78px;height:44px}.notifications-page{flex-direction:column;gap:1.5rem;padding:2rem;display:flex}.notifications-page__header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.notifications-page__subtitle{color:var(--color-text-muted);margin:.3rem 0 0}.notifications-page__mark-all{border:1px solid var(--color-border-muted);cursor:pointer;background:0 0;border-radius:.75rem;padding:.5rem 1rem}.notifications-page__filters{gap:.5rem;display:flex}.notifications-page__filter{border:1px solid var(--color-border-muted);cursor:pointer;background:0 0;border-radius:999px;padding:.35rem .9rem}.notifications-page__filter--active{background:var(--color-primary);color:var(--color-on-primary);border-color:#0000}.notifications-page__status{color:var(--color-text-muted);margin:0}.notifications-page__grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;display:grid}.notifications-page__card{border:1px solid var(--color-border-muted);background:var(--color-surface);box-shadow:var(--shadow-sm);border-radius:1rem;flex-direction:column;gap:.5rem;padding:1rem;display:flex}.notifications-page__card--read{opacity:.8}.notifications-page__card-header{justify-content:space-between;align-items:center;font-size:.85rem;display:flex}.notifications-page__pill{background:var(--color-surface-muted);text-transform:capitalize;border-radius:999px;padding:.1rem .5rem}.notifications-page__pill--projects{color:#1d4ed8;background:#3b82f62e}.notifications-page__pill--quotes{color:#4338ca;background:#818cf833}.notifications-page__pill--billing{color:#c2410c;background:#fb923c33}.notifications-page__pill--general,.notifications-page__pill--system{color:#475569;background:#94a3b833}.notifications-page__card-title{margin:0;font-size:1.05rem}.notifications-page__card-body{color:var(--color-text-muted);margin:0}.notifications-page__card-actions button{background:var(--color-primary);color:var(--color-on-primary);cursor:pointer;border:none;border-radius:.6rem;padding:.4rem .85rem}.notifications-page__load-more{border:1px solid var(--color-border-muted);cursor:pointer;background:0 0;border-radius:.75rem;align-self:center;padding:.6rem 1.25rem}.user-management{flex-direction:column;gap:1.5rem;display:flex}.user-management__header{justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.user-management__tabs{gap:.75rem;display:flex}.user-management__tab{border:1px solid var(--color-border-muted);cursor:pointer;background:0 0;border-radius:999px;padding:.5rem 1rem}.user-management__tab--active{background:var(--color-primary);color:var(--color-on-primary);border-color:#0000}.user-management__columns{grid-template-columns:minmax(220px,320px) 1fr;gap:1.5rem;display:grid}.user-management__list{background:var(--color-surface);box-shadow:var(--shadow-md);border-radius:1rem;flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.user-management__list-header{justify-content:space-between;align-items:center;display:flex}.user-management__action{border:1px solid var(--color-border-muted);cursor:pointer;background:0 0;border-radius:.75rem;padding:.4rem .75rem}.user-management__items{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.user-management__item{background:var(--color-surface-muted);border-radius:.75rem;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.user-management__item>button{text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;gap:.25rem;padding:.65rem .85rem;display:flex}.user-management__item-primary{font-weight:600}.user-management__item-secondary{color:var(--color-text-muted);font-size:.85rem}.user-management__item-actions{gap:.35rem;padding-right:.75rem;display:flex}.user-management__item-actions button{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;font-size:.85rem}.user-management__item--active{border:2px solid var(--color-primary)}.user-management__detail{background:var(--color-surface);box-shadow:var(--shadow-md);border-radius:1rem;flex-direction:column;gap:1.5rem;padding:1.5rem;display:flex}.user-form__grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.user-form__grid input,.user-form textarea,.role-form textarea,.role-form input,.user-form select,.role-form select{border:1px solid var(--color-border-muted);background:var(--color-surface-muted);border-radius:.6rem;width:100%;padding:.6rem .75rem}.user-form__toggles{flex-wrap:wrap;gap:1.5rem;display:flex}.user-form__roles{flex-direction:column;gap:.5rem;display:flex}.user-form__checkbox-list{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.user-form__overrides{flex-direction:column;gap:.75rem;display:flex}.user-form__permissions{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.5rem;display:grid}.user-form__permission-label{color:var(--color-text-muted);font-size:.85rem}.user-form__actions{justify-content:flex-end;display:flex}.user-form__actions button,.role-form button{background:var(--color-primary);color:var(--color-on-primary);cursor:pointer;border:none;border-radius:.75rem;padding:.65rem 1.2rem}.user-form__muted{color:var(--color-text-muted);font-size:.9rem}.user-form__sessions ul{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.role-form__permissions{flex-direction:column;gap:.75rem;display:flex}.role-form__permission-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.5rem;display:grid}.export-pdf-button{align-items:center;gap:.5rem;display:inline-flex}.export-pdf-button__spinner{width:1rem;height:1rem;animation:.8s linear infinite spinner-rotate}.export-pdf-button__spinner circle{fill:none;stroke:currentColor;stroke-width:3px;stroke-linecap:round;stroke-dasharray:60;stroke-dashoffset:20px;opacity:.75}.export-job-button{flex-direction:column;gap:.25rem;display:inline-flex;position:relative}.export-job-button__primary{min-width:8rem}.export-job-button__cancel{background:var(--danger-color,#b00020);color:#fff;opacity:0;pointer-events:none;border:none;border-radius:4px;font-weight:600;transition:opacity .15s ease-in-out;position:absolute;top:0;right:0;bottom:0;left:0}.export-job-button--busy:hover .export-job-button__cancel{opacity:1;pointer-events:auto}.export-job-button__cancel:disabled{opacity:.4}.export-job-button__error{margin:0}@keyframes spinner-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.event-messages-layout{grid-template-columns:minmax(260px,320px) minmax(0,1fr);align-items:start;gap:1.5rem;display:grid}@media (max-width:1200px){.event-messages-layout{grid-template-columns:1fr}}.event-messages-subscriptions .panel-header{justify-content:space-between;align-items:center;display:flex}.event-subscription-list{flex-direction:column;gap:.75rem;margin:1rem 0 0;padding:0;list-style:none;display:flex}.event-subscription-card{text-align:left;border:1px solid var(--border-default);background:var(--color-surface-primary);cursor:pointer;border-radius:.7rem;flex-direction:column;gap:.4rem;width:100%;padding:.85rem 1rem;transition:border-color .18s,box-shadow .18s,transform .18s;display:flex}.event-subscription-card:hover{border-color:var(--color-accent);transform:translateY(-1px);box-shadow:0 8px 18px #2563eb26}.event-subscription-card--selected{border-color:var(--color-accent);box-shadow:0 10px 26px #2563eb33}.event-subscription-card__title{justify-content:space-between;align-items:center;gap:.75rem;font-weight:600;display:flex}.event-subscription-card__title .name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.status-dot{border:1px solid var(--border-default);border-radius:999px;flex-shrink:0;width:.7rem;height:.7rem}.status-dot.active{background:linear-gradient(135deg,#22c55e,#16a34a);border-color:#22c55e80;box-shadow:0 0 6px #22c55e80}.status-dot.inactive{opacity:.85;background:linear-gradient(135deg,#f97316,#ea580c);border-color:#ea580c66}.event-subscription-card__meta{flex-wrap:wrap;gap:.75rem;font-size:.82rem;display:flex}.event-subscription-card__footer{flex-direction:column;gap:.3rem;font-size:.8rem;display:flex}.event-messages-form{flex-direction:column;gap:1.5rem;display:flex}.editor-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:start;gap:1.5rem;display:grid}.panel-section{flex-direction:column;gap:1rem;display:flex}.panel-section .panel-header.small{justify-content:space-between;align-items:center;gap:1rem;display:flex}.header-grid{flex-direction:column;gap:.75rem;display:flex}.header-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:.75rem;display:grid}.header-row input{width:100%}@media (max-width:720px){.header-row{grid-template-columns:minmax(0,1fr)}.header-row button{justify-self:flex-start}}.payload-grid{grid-template-columns:minmax(240px,280px) minmax(0,1fr);align-items:start;gap:1rem;display:grid}@media (max-width:1200px){.payload-grid{grid-template-columns:1fr}}.payload-fields{border:1px solid var(--border-default);background:var(--color-surface-primary);border-radius:.7rem;flex-direction:column;gap:.75rem;max-height:32rem;padding:1rem;display:flex}.payload-field-list{flex-direction:column;gap:.5rem;padding-right:.25rem;display:flex;overflow-y:auto}.event-field{background:var(--color-surface-muted);border:1px solid #0000;border-radius:.65rem;flex-direction:column;gap:.4rem;padding:.75rem;transition:border-color .15s,transform .15s;display:flex}.event-field:hover{border-color:var(--color-accent);transform:translateY(-1px)}.event-field__meta{flex-direction:column;gap:.2rem;display:flex}.event-field__label{color:var(--color-text-strong);font-weight:600}.event-field__path{color:var(--color-text-muted);font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.8rem}.event-field__details{flex-direction:column;gap:.25rem;display:flex}.event-field__badge{text-transform:uppercase;letter-spacing:.05em;background:var(--color-surface-accent);width:max-content;color:var(--color-accent-strong);border-radius:.5rem;justify-content:center;align-items:center;padding:.15rem .45rem;font-size:.7rem;display:inline-flex}.payload-editor textarea{border:1px solid var(--border-default);background:var(--color-surface-primary);resize:vertical;min-height:22rem;color:var(--color-text-primary);border-radius:.7rem;padding:1rem;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.85rem}.payload-editor textarea:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 3px #2563eb2e}.payload-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.payload-preview{border:1px solid var(--border-default);background:var(--color-surface-primary);border-radius:.75rem;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.payload-preview-block{background:var(--color-surface-muted);border:1px solid var(--border-muted);max-height:20rem;color:var(--color-text-primary);border-radius:.6rem;margin:0;padding:.75rem;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.85rem;overflow:auto}.test-result{flex-direction:column;gap:.75rem;display:flex}.test-result p{margin:0}.project-stats-panel>h2{margin-top:0;margin-bottom:1.5rem}.project-stats{flex-direction:column;gap:2rem;display:flex}.project-stats__section{flex-direction:column;gap:1.5rem;display:flex}.project-stats__section-header{flex-direction:column;gap:.35rem;display:flex}.project-stats__section-header h3{color:var(--color-text-strong);margin:0;font-size:1.25rem}.project-stats__section-summary{color:var(--color-text-muted);margin:0;font-size:.95rem}.project-stats__rows{flex-direction:column;gap:1rem;display:flex}.project-stats__summary-row{grid-template-columns:minmax(140px,220px) 1fr;align-items:stretch;gap:1rem;display:grid}.project-stats__summary-title{color:var(--color-text-secondary);align-items:center;font-size:.95rem;font-weight:600;display:flex}.project-stats__summary-metrics{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;display:grid}.project-stats__metric-card{background:var(--color-surface-muted);border:1px solid var(--border-default);border-radius:.75rem;flex-direction:column;gap:.05rem;padding:.45rem 1rem;display:flex}.project-stats__metric-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem}.project-stats__metric-value{color:var(--color-text-strong);font-size:1.15rem}.project-stats__split{text-align:center;flex-direction:column;align-items:center;gap:.75rem;display:flex}.project-stats__split-values{flex-direction:column;align-items:center;gap:.35rem;display:flex}.project-stats__split-value{color:var(--color-text-strong);font-size:1.4rem;font-weight:700}.project-stats__split-value--secondary{color:var(--color-text-muted);font-size:1rem;font-weight:600}.project-stats__split-bar{border:1px solid var(--border-default);background:linear-gradient(90deg,#2563eb,#2563eb 70%,#d97706 70%,#d97706 75%,#0f766e 75%,#0f766e 85%,#d97706 85%,#d97706 90%,#b91c1c 90%,#b91c1c);border-radius:999px;width:100%;max-width:460px;height:1.25rem;position:relative}.project-stats__split-indicator{background:var(--color-text-strong);border-radius:999px;justify-content:center;align-items:flex-start;width:2px;display:flex;position:absolute;top:-6px;bottom:-6px;transform:translate(-50%)}.project-stats__split-indicator-dot{background:var(--color-text-strong);border-radius:50%;width:8px;height:8px;margin-top:-4px}.project-stats__split-scale{width:100%;max-width:460px;color:var(--color-text-muted);justify-content:space-between;font-size:.75rem;display:flex}.project-stats__split-note{color:var(--color-text-muted);margin:0;font-size:.85rem}@media (max-width:680px){.project-stats__summary-row{grid-template-columns:1fr}.project-stats__summary-title{justify-content:center}.project-stats__summary-metrics{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.project-stats__split-values{gap:.25rem}}.project-stats__locations-grid{flex-direction:column;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem;display:flex}.project-stats__location{border:1px solid var(--border-default);background:var(--color-surface-primary);border-radius:.85rem;flex-direction:column;gap:1.25rem;padding:1.25rem;display:flex;box-shadow:0 6px 18px #0f172a0d}.project-stats__location-header h4{color:var(--color-text-strong);margin:0;font-size:1.1rem}.project-stats__sublocations{flex-direction:column;gap:1rem;display:flex}.project-stats__sublocation{border:1px dashed var(--border-dashed);background:var(--color-surface-subtle);border-radius:.75rem;flex-direction:column;gap:1rem;padding:1rem;display:flex}.project-stats__sublocation h5{color:var(--color-text-secondary);margin:0;font-size:1rem}.catalogue-group-tile-wrapper{position:relative}.catalogue-group-tile__select{z-index:1;background:#ffffffd9;border-radius:.5rem;justify-content:center;align-items:center;padding:.35rem;display:inline-flex;position:absolute;top:.6rem;left:.6rem;box-shadow:0 4px 12px #0f172a1f}.catalogue-group-tile__select input{margin:0}.catalogue-group-detail__select{align-items:center;gap:.5rem;margin-top:1rem;font-weight:600;display:inline-flex}.catalogue-group-detail__select input{margin:0}.catalogue-delete-overlay{z-index:1100;background:#0f172a8c;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.catalogue-delete-modal{background:var(--color-surface-primary);border-radius:18px;flex-direction:column;gap:1.25rem;width:min(420px,100%);padding:1.5rem;display:flex;box-shadow:0 24px 60px #0f172a47}.catalogue-delete-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.catalogue-delete-header h3{margin:0;font-size:1.35rem}.catalogue-delete-body,.catalogue-delete-form{flex-direction:column;gap:1rem;display:flex}.catalogue-delete-actions{justify-content:flex-end;gap:.75rem;display:flex}@media (max-width:640px){.catalogue-delete-modal{width:100%}}.catalogue-import-summary-overlay{z-index:1100;background:#0f172a8c;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.catalogue-import-summary-modal{background:var(--color-surface-primary);border-radius:18px;flex-direction:column;gap:1.25rem;width:min(480px,100%);padding:1.75rem 1.5rem 1.5rem;display:flex;box-shadow:0 24px 60px #0f172a47}.catalogue-import-summary-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.catalogue-import-summary-header h3{margin:0;font-size:1.35rem}.catalogue-import-summary-body{flex-direction:column;gap:1rem;display:flex}.catalogue-import-summary-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.85rem;display:grid}.catalogue-import-summary-card{background:var(--color-surface-subtle);border-radius:.75rem;flex-direction:column;gap:.25rem;padding:.9rem;display:flex}.catalogue-import-summary-card h4{color:var(--color-text-secondary);margin:0;font-size:.95rem;font-weight:600}.catalogue-import-summary-count{font-size:1.65rem;font-weight:700}.catalogue-import-summary-count.created{color:var(--color-text-success)}.catalogue-import-summary-count.updated{color:var(--color-accent)}.catalogue-import-summary-count.skipped{color:var(--color-text-danger)}.catalogue-import-summary-list{flex-direction:column;gap:.5rem;margin:0;display:flex}.catalogue-import-summary-list dt{font-size:.9rem;font-weight:600}.catalogue-import-summary-list dd{color:var(--color-text-secondary);margin:0}.catalogue-import-summary-actions{justify-content:flex-end;display:flex}.catalogue-import-summary-actions button{min-width:96px}@media (max-width:640px){.catalogue-import-summary-modal{width:100%}}.import-history{flex-direction:column;gap:1rem;margin-top:1.5rem;display:flex}.import-history__header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.import-history__header-actions{gap:.5rem;display:flex}.import-history__list{flex-direction:column;gap:1rem;margin:0;padding:0;list-style:none;display:flex}.import-history__item{border:1px solid var(--border-muted);background:var(--color-surface-primary);border-radius:14px;flex-direction:column;gap:.75rem;padding:1rem 1.25rem;display:flex;box-shadow:0 14px 32px #0f172a14}.import-history__item-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.import-history__item-header h3{margin:0;font-size:1.15rem}.import-history__timestamp{color:var(--color-text-secondary);margin:0;font-size:.85rem}.import-history__badges{flex-wrap:wrap;gap:.4rem;display:flex}.pill{letter-spacing:.02em;border-radius:999px;align-items:center;padding:.2rem .6rem;font-size:.75rem;font-weight:600;display:inline-flex}.pill--outline{border:1px solid var(--border-muted);color:var(--color-text-secondary);background:0 0}.pill--muted{background:var(--color-surface-subtle);color:var(--color-text-secondary)}.import-history__supplier,.import-history__summary{color:var(--color-text-secondary);margin:0;font-size:.9rem}.import-history__stats{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem;display:grid}.import-history__stats div{background:var(--color-surface-subtle);border-radius:.75rem;flex-direction:column;gap:.15rem;padding:.6rem .75rem;display:flex}.import-history__stats strong{color:var(--color-text-strong);font-size:1.2rem;font-weight:700}.import-history__stats span{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:.8rem}.import-history__impact-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem;margin:0;display:grid}.import-history__impact-grid div{border:1px dashed var(--border-muted);background:var(--color-surface-subtle);border-radius:.75rem;padding:.6rem .75rem}.import-history__impact-grid dt{color:var(--color-text-secondary);margin:0;font-size:.85rem}.import-history__impact-grid dd{color:var(--color-text-strong);margin:0;font-size:1.15rem;font-weight:700}.import-history__manufacturers{color:var(--color-text-secondary);flex-direction:column;gap:.25rem;font-size:.85rem;display:flex}.import-history__actions{justify-content:flex-end;gap:.5rem;display:flex}.import-history__status{color:var(--color-text-secondary);font-size:.85rem}.import-history__status.muted{color:var(--color-text-muted)}@media (max-width:640px){.import-history__item{padding:.85rem}.import-history__stats{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}}.import-revert-overlay{background:var(--overlay-backdrop);z-index:1150;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.import-revert-modal{background:var(--color-surface-primary);border-radius:18px;flex-direction:column;gap:1rem;width:min(520px,100%);padding:1.75rem 1.5rem 1.5rem;display:flex;box-shadow:0 26px 66px #0f172a47}.import-revert-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.import-revert-header h3{margin:0;font-size:1.35rem}.import-revert-summary{color:var(--color-text-secondary);margin:0;font-size:.95rem}.import-revert-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.85rem;display:grid}.import-revert-grid div{background:var(--color-surface-subtle);border:1px solid var(--border-muted);border-radius:.75rem;padding:.75rem}.import-revert-grid dt{color:var(--color-text-secondary);margin:0;font-size:.85rem}.import-revert-grid dd{color:var(--color-text-strong);margin:0;font-size:1.2rem;font-weight:700}.import-revert-warning{color:var(--color-text-danger);margin:0;font-size:.9rem}.import-revert-actions{justify-content:flex-end;gap:.75rem;display:flex}@media (max-width:640px){.import-revert-modal{width:100%;padding:1.35rem}}@media (min-width:720px){.project-stats__split-values{flex-direction:row;gap:1rem}}.public-support-page{max-width:960px;margin:0 auto;padding:2rem 1rem 4rem}.support-card{background:var(--color-surface-primary);box-shadow:var(--shadow-card);border-radius:16px;padding:2rem}.support-form label,.support-card label{color:var(--color-text-secondary);flex-direction:column;gap:.35rem;font-size:.95rem;display:flex}.support-form input,.support-form textarea,.support-card input,.support-card textarea,.support-card select{border:1px solid var(--border-default);border-radius:8px;padding:.6rem .75rem;font-family:inherit;font-size:.95rem}.support-lede{color:var(--color-text-secondary);margin-bottom:1.5rem}.form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.form-grid.three-col{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.checkbox-field{flex-direction:row;align-items:center;gap:.5rem}.timeslot-header{justify-content:space-between;align-items:center;margin:1rem 0 .5rem;display:flex}.timeslot-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end;gap:.75rem;margin-bottom:1rem;display:grid}.timeslot-list{flex-direction:column;gap:.5rem;margin:0 0 1rem;padding:0;list-style:none;display:flex}.timeslot-list li{background:var(--color-surface-muted);border-radius:10px;padding:.85rem 1rem}.link-button{color:var(--color-text-link);cursor:pointer;background:0 0;border:none;padding:0}.link-button.danger{color:var(--color-text-danger)}.form-success{background:var(--color-surface-accent);color:var(--color-text-strong);border-radius:10px;margin-top:1rem;padding:.75rem 1rem}.form-error{color:var(--color-text-danger-strong);background:#fee2e2;border-radius:10px;margin-top:1rem;padding:.75rem 1rem}.status-badge{text-transform:capitalize;background:var(--color-surface-muted);border-radius:999px;align-items:center;padding:.35rem .75rem;font-size:.85rem;display:inline-flex}.data-table{border-collapse:collapse;width:100%}.data-table th,.data-table td{border-bottom:1px solid var(--border-default);text-align:left;padding:.75rem}.support-detail-page .split-columns{gap:1.5rem;display:flex}.support-detail-page .column{flex-direction:column;flex:1;gap:1.25rem;display:flex}.response-card{border:1px solid var(--border-default);border-radius:10px;margin-bottom:.75rem;padding:.75rem 1rem}.response-actions{gap:.5rem;margin-top:.75rem;display:flex}.ghost{border:1px solid var(--border-default);cursor:pointer;background:0 0;border-radius:999px;padding:.4rem .85rem}.invite-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.invite-item{border:1px dashed var(--border-muted);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.85rem 1rem;display:flex}.invite-meta{flex-direction:column;gap:.2rem;display:flex}.invite-actions{align-items:center;display:flex}.pill-button{background:var(--color-accent);color:#fff;cursor:pointer;border:none;border-radius:999px;padding:.4rem .9rem;font-size:.9rem;transition:opacity .15s}.pill-button:hover{opacity:.9}.support-modal-overlay{background:var(--overlay-backdrop);z-index:1000;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.support-modal{background:var(--color-surface-primary);width:min(520px,100%);box-shadow:var(--shadow-panel);border-radius:16px;flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.modal-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.modal-header h3{margin:0}.modal-actions{justify-content:flex-end;gap:.75rem;display:flex}.sms-log{background:var(--color-surface-muted);border-radius:12px;flex-direction:column;gap:.5rem;min-height:140px;max-height:220px;padding:1rem;font-size:.9rem;display:flex;overflow-y:auto}.sms-log-entry{color:var(--color-text-secondary);margin:0}.touchsms-select-row{align-items:center;gap:.75rem;display:flex}.touchsms-select-row select{flex:1}.step-panel{animation:.45s ease-in-out slideFade}@keyframes slideFade{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.dark{--background:oklch(14.5% 0 0);--foreground:oklch(98.5% 0 0);--card:oklch(20.5% 0 0);--card-foreground:oklch(98.5% 0 0);--popover:oklch(20.5% 0 0);--popover-foreground:oklch(98.5% 0 0);--primary:oklch(92.2% 0 0);--primary-foreground:oklch(20.5% 0 0);--secondary:oklch(26.9% 0 0);--secondary-foreground:oklch(98.5% 0 0);--muted:oklch(26.9% 0 0);--muted-foreground:oklch(70.8% 0 0);--accent:oklch(26.9% 0 0);--accent-foreground:oklch(98.5% 0 0);--destructive:oklch(70.4% .191 22.216);--border:oklch(100% 0 0/.1);--input:oklch(100% 0 0/.15);--ring:oklch(55.6% 0 0);--chart-1:oklch(48.8% .243 264.376);--chart-2:oklch(69.6% .17 162.48);--chart-3:oklch(76.9% .188 70.08);--chart-4:oklch(62.7% .265 303.9);--chart-5:oklch(64.5% .246 16.439);--sidebar:oklch(20.5% 0 0);--sidebar-foreground:oklch(98.5% 0 0);--sidebar-primary:oklch(48.8% .243 264.376);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(26.9% 0 0);--sidebar-accent-foreground:oklch(98.5% 0 0);--sidebar-border:oklch(100% 0 0/.1);--sidebar-ring:oklch(55.6% 0 0)}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0))}}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}
