.editable-grid-frame{display:flex;flex-direction:column;background:#fff;border:1px solid var(--gray-300);border-radius:var(--radius-sm);overflow:hidden;font-family:var(--font-family);font-size:var(--font-size-xs)}.editable-grid-frame:focus-within{outline:1px solid var(--gray-700);outline-offset:-2px}.editable-grid-container{position:relative;flex:1;min-height:0;overflow:auto}.editable-grid-container:focus{outline:none}.editable-grid{width:100%;border-collapse:separate;border-spacing:0}.editable-grid thead{position:sticky;top:0;z-index:10;background:var(--gray-50);border-bottom:1px solid var(--gray-300)}.editable-grid th{padding:6px 8px;text-align:left;font-weight:var(--font-weight-semibold);color:var(--gray-800);border-right:1px solid var(--gray-200);border-bottom:1px solid var(--gray-300);background:var(--gray-50);white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative}.editable-grid th:last-child{border-right:none}.editable-grid tbody tr{background:#fff;transition:background-color .15s ease;cursor:pointer}.editable-grid tbody tr:hover{background:var(--gray-50)}.editable-grid tbody tr.active-row{background:var(--gray-100)!important}.editable-grid tbody tr.empty-row{background:var(--gray-50);border-top:1px solid var(--gray-700);cursor:default}.editable-grid tbody tr.empty-row:hover{background:var(--gray-100)}.editable-grid td{padding:0;border-right:1px solid var(--gray-200);border-bottom:1px solid var(--gray-200);color:var(--gray-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;min-height:32px;cursor:cell}.editable-grid td:last-child{border-right:none}.editable-grid td.active-cell{outline:1px solid var(--gray-800);outline-offset:-2px;background:var(--gray-100);z-index:1}.editable-grid td:not(:has(input)){padding:6px 8px}.editable-input{width:100%;height:32px;padding:5px 8px;border:none;outline:none;background:#fff;font-family:inherit;font-size:inherit;color:inherit;box-sizing:border-box}.editable-input:focus{background:#fff;outline:1px solid var(--gray-800) inset;outline-offset:-2px}.empty-row-input{background:var(--gray-50);font-style:italic}.empty-row-input:focus{background:#fff;font-style:normal}.empty-row-input::-moz-placeholder{color:var(--gray-500);font-style:italic}.empty-row-input::placeholder{color:var(--gray-500);font-style:italic}.empty-row-placeholder{display:block;padding:6px 8px;color:var(--gray-500);font-style:italic}.editable-grid td[style*="text-align: right"],.editable-grid td[style*="text-align: right"] .editable-input{text-align:right;font-variant-numeric:tabular-nums}.editable-grid td[style*="text-align: center"],.editable-grid td[style*="text-align: center"] .editable-input{text-align:center}.editable-grid-help{flex-shrink:0;background:var(--gray-50);border-top:1px solid var(--gray-300);padding:6px 12px;font-size:var(--font-size-xs);color:var(--gray-600);text-align:center;z-index:10}.editable-grid-container::-webkit-scrollbar{width:12px;height:12px}.editable-grid-container::-webkit-scrollbar-track{background:var(--gray-50)}.editable-grid-container::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:2px;border:2px solid var(--gray-50)}.editable-grid-container::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}.editable-input[type=number]::-webkit-inner-spin-button,.editable-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}.editable-input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.excel-grid-container{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--gray-300);border-radius:var(--radius-sm);overflow:hidden;font-family:var(--font-family);font-size:var(--font-size-xs)}.excel-grid-container:focus{outline:1px solid var(--gray-700);outline-offset:-2px}.excel-grid-scroll{flex:1;min-height:0;overflow:auto}.excel-grid{width:100%;border-collapse:separate;border-spacing:0}.excel-grid thead{position:sticky;top:0;z-index:10;background:var(--gray-50);border-bottom:1px solid var(--gray-300)}.excel-grid th{padding:6px 8px;text-align:left;font-weight:var(--font-weight-semibold);color:var(--gray-800);border-right:1px solid var(--gray-200);border-bottom:1px solid var(--gray-300);background:var(--gray-50);white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative}.excel-grid th:last-child{border-right:none}.resize-handle{position:absolute;top:0;right:0;width:8px;height:100%;cursor:col-resize;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:1}.resize-handle:hover{background:var(--gray-200);border-right:2px solid var(--gray-700)}.excel-grid tbody tr{background:#fff;cursor:pointer}.excel-grid tbody tr:hover{background:var(--gray-50)}.excel-grid tbody tr.excel-row-active,.excel-grid tbody tr.active-row{background:var(--gray-100);outline:1px solid var(--gray-700);outline-offset:-2px}.excel-grid tbody tr.excel-row-active:hover,.excel-grid tbody tr.active-row:hover{background:var(--gray-100)}.excel-grid td{padding:6px 8px;border-right:1px solid var(--gray-200);border-bottom:1px solid var(--gray-200);color:var(--gray-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.excel-grid td:last-child{border-right:none}.excel-grid tbody tr.bg-yellow-50{background-color:var(--warning-50)}.excel-grid tbody tr.bg-yellow-50:hover{background-color:#fef3c7}.excel-grid tbody tr.bg-yellow-50.excel-row-active,.excel-grid tbody tr.bg-yellow-50.active-row{background-color:#fef3c7;outline:1px solid var(--gray-700)}.excel-grid tbody tr.bg-red-50{background-color:var(--danger-50)}.excel-grid tbody tr.bg-red-50:hover{background-color:#fee2e2}.excel-grid tbody tr.bg-red-50.excel-row-active,.excel-grid tbody tr.bg-red-50.active-row{background-color:#fee2e2;outline:1px solid var(--gray-700)}.excel-grid-help{flex-shrink:0;background:var(--gray-50);border-top:1px solid var(--gray-300);padding:6px 12px;font-size:var(--font-size-xs);color:var(--gray-600);text-align:center;z-index:10}.excel-grid-state{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-3);padding:var(--spacing-8);color:var(--gray-600)}.excel-grid-state p{margin:0}.excel-grid-scroll::-webkit-scrollbar{width:12px;height:12px}.excel-grid-scroll::-webkit-scrollbar-track{background:var(--gray-50)}.excel-grid-scroll::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:2px;border:2px solid var(--gray-50)}.excel-grid-scroll::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}.excel-grid td[style*="text-align: right"]{font-variant-numeric:tabular-nums}.spinner{width:28px;height:28px;border:3px solid var(--gray-200);border-top:3px solid var(--gray-800);border-radius:50%;animation:spin 1s linear infinite}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.bottom-0{bottom:0}.left-0{left:0}.right-0{right:0}.right-2{right:.5rem}.top-0{top:0}.top-1\/2{top:50%}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.ml-3{margin-left:.75rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-8{margin-top:2rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-10{height:2.5rem}.h-12{height:3rem}.h-2{height:.5rem}.h-20{height:5rem}.h-32{height:8rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-full{height:100%}.max-h-full{max-height:100%}.min-h-screen{min-height:100vh}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-24{width:6rem}.w-32{width:8rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-full{width:100%}.max-w-2xl{max-width:42rem}.max-w-md{max-width:28rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-spin{animation:spin 1s linear infinite}.cursor-move{cursor:move}.cursor-ns-resize{cursor:ns-resize}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.resize-none{resize:none}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-gray-100>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(243 244 246 / var(--tw-divide-opacity, 1))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-t-2{border-top-width:2px}.border-none{border-style:none}.border-blue-200{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-primary-500{--tw-border-opacity: 1;border-color:rgb(14 165 233 / var(--tw-border-opacity, 1))}.border-red-200{--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1))}.border-yellow-200{--tw-border-opacity: 1;border-color:rgb(254 240 138 / var(--tw-border-opacity, 1))}.border-yellow-300{--tw-border-opacity: 1;border-color:rgb(253 224 71 / var(--tw-border-opacity, 1))}.bg-black\/50{background-color:#00000080}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.bg-neutral-50{--tw-bg-opacity: 1;background-color:rgb(250 250 250 / var(--tw-bg-opacity, 1))}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-yellow-100{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1))}.bg-yellow-50{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity, 1))}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-4{padding-top:1rem}.pt-8{padding-top:2rem}.text-left{text-align:left}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-6xl{font-size:3.75rem;line-height:1}.text-\[11px\]{font-size:11px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-none{line-height:1}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-blue-800{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-green-700{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.text-neutral-600{--tw-text-opacity: 1;color:rgb(82 82 82 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.text-yellow-600{--tw-text-opacity: 1;color:rgb(202 138 4 / var(--tw-text-opacity, 1))}.text-yellow-700{--tw-text-opacity: 1;color:rgb(161 98 7 / var(--tw-text-opacity, 1))}.text-yellow-800{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.line-through{text-decoration-line:line-through}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease-in}.slide-up{animation:slideUp .3s ease-out}.last\:border-r-0:last-child{border-right-width:0px}.hover\:bg-black:hover{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.hover\:bg-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.hover\:bg-opacity-10:hover{--tw-bg-opacity: .1}.hover\:text-blue-800:hover{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.hover\:text-gray-700:hover{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.hover\:text-gray-800:hover{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.hover\:text-red-600:hover{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.hover\:text-red-900:hover{--tw-text-opacity: 1;color:rgb(127 29 29 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.focus\:border-transparent:focus{border-color:transparent}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.disabled\:opacity-60:disabled{opacity:.6}@media (min-width: 768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}:root{--primary-50: #eff6ff;--primary-100: #dbeafe;--primary-200: #bfdbfe;--primary-300: #93c5fd;--primary-400: #60a5fa;--primary-500: #3b82f6;--primary-600: #2563eb;--primary-700: #1d4ed8;--primary-800: #1e40af;--primary-900: #1e3a8a;--gray-50: #f8fafc;--gray-100: #f1f5f9;--gray-200: #e2e8f0;--gray-300: #cbd5e1;--gray-400: #94a3b8;--gray-500: #64748b;--gray-600: #475569;--gray-700: #334155;--gray-800: #1e293b;--gray-900: #0f172a;--surface-page: #f8fafc;--surface-card: #ffffff;--surface-muted: #f8fafc;--surface-subtle: #f1f5f9;--border-default: #e2e8f0;--border-subtle: #f1f5f9;--border-strong: #cbd5e1;--text-primary: #0f172a;--text-secondary: #64748b;--text-muted: #94a3b8;--text-disabled: #cbd5e1;--sidebar-bg: #0f1623;--sidebar-hover: #1a1d2e;--sidebar-active: #1e2235;--sidebar-text: #94a3b8;--sidebar-text-active: #ffffff;--sidebar-accent: #3b82f6;--success-50: #f0fdf4;--success-500: #22c55e;--success-600: #16a34a;--success-700: #15803d;--warning-50: #fffbeb;--warning-500: #f59e0b;--warning-600: #d97706;--danger-50: #fef2f2;--danger-500: #ef4444;--danger-600: #dc2626;--danger-700: #b91c1c;--font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "SF Mono", "Cascadia Code", "Roboto Mono", Consolas, monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--spacing-1: .25rem;--spacing-2: .5rem;--spacing-3: .75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-8: 2rem;--spacing-10: 2.5rem;--spacing-12: 3rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-full: 9999px;--shadow-xs: 0 1px 2px 0 rgba(0,0,0,.05);--shadow-sm: 0 1px 3px 0 rgba(0,0,0,.08), 0 1px 2px -1px rgba(0,0,0,.08);--shadow-md: 0 4px 6px -1px rgba(0,0,0,.08), 0 2px 4px -2px rgba(0,0,0,.08);--shadow-lg: 0 10px 15px -3px rgba(0,0,0,.08), 0 4px 6px -4px rgba(0,0,0,.08);--shadow-xl: 0 20px 25px -5px rgba(0,0,0,.1), 0 8px 10px -6px rgba(0,0,0,.06);--sidebar-width: 256px;--header-height: 64px;--max-content-width: 1600px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .3s cubic-bezier(.4, 0, .2, 1);--modal-sm: 400px;--modal-md: 600px;--modal-lg: 800px;--modal-xl: 1100px}:root{--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--sidebar-width: 0px;--header-height: 48px;--radius-sm: 2px;--radius-md: 3px;--radius-lg: 3px;--radius-xl: 4px;--shadow-xs: none;--shadow-sm: none;--shadow-md: none;--shadow-lg: 0 8px 20px rgba(17, 24, 39, .12);--shadow-xl: 0 18px 42px rgba(17, 24, 39, .18);--font-size-4xl: 2.25rem}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;font-family:var(--font-family);font-size:var(--font-size-base);color:var(--gray-900);background:var(--gray-50);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{height:100%}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-bold);line-height:1.2;color:var(--gray-900)}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}h4{font-size:var(--font-size-lg)}p{line-height:1.6;color:var(--gray-700)}a{color:var(--primary-600);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--primary-700)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--gray-100)}::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}*:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}::-moz-selection{background-color:var(--primary-200);color:var(--primary-900)}::selection{background-color:var(--primary-200);color:var(--primary-900)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:1.5;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary-600);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-700)}.btn-primary:active:not(:disabled){background:var(--primary-800)}.btn-secondary{background:#fff;color:var(--gray-700);border-color:var(--gray-300)}.btn-secondary:hover:not(:disabled){background:var(--gray-50);border-color:var(--gray-400)}.btn-danger{background:var(--danger-500);color:#fff}.btn-danger:hover:not(:disabled){background:var(--danger-600)}.btn-success{background:var(--success-600);color:#fff}.btn-success:hover:not(:disabled){background:var(--success-700)}.btn-sm{padding:var(--spacing-1) var(--spacing-3);font-size:var(--font-size-xs)}.btn-lg{padding:var(--spacing-3) var(--spacing-6);font-size:var(--font-size-base)}.input,.textarea,.select{width:100%;padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--gray-900);background:#fff;border:1px solid var(--gray-300);border-radius:var(--radius-md);transition:all var(--transition-fast)}.input:hover,.textarea:hover,.select:hover{border-color:var(--gray-400)}.input:focus,.textarea:focus,.select:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px var(--primary-100)}.input::-moz-placeholder,.textarea::-moz-placeholder{color:var(--gray-400)}.input::placeholder,.textarea::placeholder{color:var(--gray-400)}.input:disabled,.textarea:disabled,.select:disabled{background:var(--gray-100);cursor:not-allowed}.textarea{resize:vertical;min-height:80px}.input-group{position:relative;display:flex;align-items:center}.input-group .input{flex:1}.input-suffix{position:absolute;right:var(--spacing-3);color:var(--gray-500);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);pointer-events:none}.input-icon{position:absolute;left:var(--spacing-3);color:var(--gray-400);pointer-events:none}.input-with-icon{padding-left:var(--spacing-10)}.card{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);overflow:hidden}.card-header{padding:var(--spacing-4) var(--spacing-5);border-bottom:1px solid var(--gray-200);background:var(--gray-50)}.card-body{padding:var(--spacing-5)}.card-footer{padding:var(--spacing-4) var(--spacing-5);border-top:1px solid var(--gray-200);background:var(--gray-50)}.garage-page{display:flex;flex-direction:column;gap:var(--spacing-4);width:100%;max-width:1600px;margin:0 auto;padding:var(--spacing-6)}.garage-page-compact{gap:var(--spacing-2);padding:var(--spacing-3)}.garage-page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--spacing-4)}.garage-page-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--gray-900);margin:0;letter-spacing:0}.garage-page-subtitle{margin-top:var(--spacing-1);font-size:var(--font-size-sm);color:var(--gray-600)}.garage-page-actions,.garage-toolbar{display:flex;align-items:center;gap:var(--spacing-2);flex-wrap:wrap}.garage-toolbar{justify-content:space-between;padding:var(--spacing-3) 0;border-top:1px solid var(--gray-200);border-bottom:1px solid var(--gray-200)}.garage-toolbar-search{width:min(460px,100%)}.garage-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:var(--spacing-3)}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,460px);background:linear-gradient(90deg,rgba(17,24,39,.055) 1px,transparent 1px),linear-gradient(0deg,rgba(17,24,39,.055) 1px,transparent 1px),#f5f6f7;background-size:28px 28px;color:#111827}.auth-shell-garage .auth-brand-mark,.auth-shell-garage .auth-panel-icon{color:#0f3028;border-color:#b8c8c5}.auth-shell-garage .auth-submit{background:#0f3028}.auth-shell-garage .auth-submit:hover:not(:disabled){background:#1a4a3a}.auth-shell-portal .auth-brand-mark,.auth-shell-portal .auth-panel-icon{color:#1c2a3a;border-color:#b8c0cc}.auth-shell-portal .auth-submit{background:#1c2a3a}.auth-shell-portal .auth-submit:hover:not(:disabled){background:#263545}.auth-stage{min-height:100vh;display:flex;flex-direction:column;justify-content:flex-start;gap:clamp(110px,18vh,190px);padding:clamp(34px,6vw,72px);border-right:1px solid #d8dde3}.auth-brand-block{display:inline-flex;align-items:center;gap:12px}.auth-brand-mark,.auth-panel-icon{display:inline-flex;align-items:center;justify-content:center;border:1px solid #cfd6dd;background:#fff;color:#173f3f}.auth-brand-mark{width:44px;height:44px}.auth-kicker{margin:0;color:#667383;font-size:12px;font-weight:700;letter-spacing:0;text-transform:uppercase}.auth-brand-block h1,.auth-stage-copy h2,.auth-panel-header h2{margin:0;color:#111827;letter-spacing:0}.auth-brand-block h1{font-size:24px;line-height:1}.auth-stage-copy{max-width:600px}.auth-stage-copy h2{max-width:560px;font-size:clamp(34px,4.2vw,58px);line-height:.98}.auth-stage-copy p{max-width:520px;margin:18px 0 0;color:#44515f;font-size:15px;line-height:1.6}.auth-panel{align-self:center;width:min(100% - 32px,420px);margin:0 auto;padding:18px;border:1px solid #cfd6dd;background:#fff;box-shadow:0 18px 42px #1118271f}.auth-panel-header{display:flex;align-items:center;gap:10px;padding-bottom:16px;border-bottom:1px solid #e1e5ea}.auth-panel-icon{width:34px;height:34px}.auth-panel-header h2{font-size:18px}.auth-panel-header p{margin:2px 0 0;color:#667383;font-size:12px;line-height:1.35}.auth-form{display:grid;gap:14px;margin-top:18px}.auth-field{display:grid;gap:6px}.auth-field label{color:#44515f;font-size:12px;font-weight:700}.auth-input-wrap{height:42px;display:flex;align-items:center;gap:9px;padding:0 11px;border:1px solid #cfd6dd;background:#fff;color:#667383}.auth-input-wrap:focus-within{border-color:#334155;box-shadow:inset 0 -2px #334155}.auth-input-wrap input{width:100%;border:0;outline:0;background:transparent;color:#111827;font:inherit;font-size:14px}.auth-input-wrap input::-moz-placeholder{color:#9aa4b2}.auth-input-wrap input::placeholder{color:#9aa4b2}.auth-submit{height:42px;border:1px solid #173f3f;background:#173f3f;color:#fff;font-size:14px;font-weight:700;cursor:pointer;transition:background-color .12s ease,border-color .12s ease}.auth-submit:hover:not(:disabled){background:#0f3434;border-color:#0f3434}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-error{margin-top:14px;padding:10px 12px;border:1px solid #fecaca;background:#fef2f2;color:#991b1b;font-size:13px;line-height:1.45}.auth-panel-footer{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:18px;padding-top:14px;border-top:1px solid #e1e5ea;color:#667383;font-size:12px}.auth-panel-footer span{display:inline-flex;align-items:center;gap:6px}.auth-text-button{padding:0;border:0;background:transparent;color:#173f3f;font-size:12px;font-weight:700;cursor:pointer}.auth-text-button:hover{text-decoration:underline}@media (max-width: 860px){.auth-shell{grid-template-columns:1fr;align-content:start}.auth-stage{min-height:auto;gap:28px;padding:24px 18px;border-right:0;border-bottom:1px solid #d8dde3}.auth-stage-copy h2{font-size:32px}.auth-panel{align-self:start;margin:24px auto}}.calendar-workbar{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-2);padding:var(--spacing-1) var(--spacing-2);border:1px solid var(--gray-200);background:#fff;flex-wrap:wrap}.calendar-workbar-title{padding-right:var(--spacing-2);border-right:1px solid var(--gray-200);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--gray-900);line-height:1}.calendar-workbar-actions,.calendar-selection-bar{display:flex;align-items:center;gap:var(--spacing-2);flex-wrap:wrap}.inventory-page,.calendar-page{height:100%;max-width:none}.inventory-workbar{min-height:36px;display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-1) var(--spacing-2);border:1px solid var(--gray-200);background:#fff;flex-wrap:wrap}.inventory-workbar-title{padding-right:var(--spacing-2);border-right:1px solid var(--gray-200);color:var(--gray-900);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);line-height:1}.inventory-search{width:min(420px,34vw);min-width:250px}.inventory-search .input{height:30px;border-radius:var(--radius-sm);font-size:var(--font-size-xs)}.inventory-workbar-actions{display:inline-flex;align-items:center;gap:var(--spacing-1);flex-wrap:wrap}.inventory-workbar .btn{min-height:30px;padding:var(--spacing-1) var(--spacing-3);border-radius:var(--radius-sm);font-size:var(--font-size-xs)}.inventory-summary-strip{display:flex;align-items:center;gap:var(--spacing-1);flex:1;min-width:280px;flex-wrap:wrap}.inventory-chip{height:24px;display:inline-flex;align-items:center;gap:var(--spacing-1);padding:0 var(--spacing-2);border:1px solid var(--gray-200);background:var(--gray-50);color:var(--gray-600);font-size:11px;line-height:1}.inventory-chip strong{color:var(--gray-900);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold)}.inventory-chip.success strong{color:var(--success-700)}.inventory-chip.warning strong{color:#92400e}.inventory-chip.danger strong{color:var(--danger-600)}.inventory-grid-shell{flex:1;min-height:420px}.billing-page{height:100%;max-width:none}.billing-workbar{min-height:36px;display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-1) var(--spacing-2);border:1px solid var(--gray-200);background:#fff;flex-wrap:wrap}.billing-workbar-title{padding-right:var(--spacing-2);border-right:1px solid var(--gray-200);color:var(--gray-900);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);line-height:1}.billing-tabs,.billing-workbar-actions,.billing-row-actions{display:inline-flex;align-items:center;gap:2px;flex-wrap:wrap}.billing-tab{height:30px;display:inline-flex;align-items:center;justify-content:center;padding:0 10px;border:1px solid transparent;border-radius:3px;background:transparent;color:#44515f;font-size:13px;font-weight:var(--font-weight-semibold);line-height:1;cursor:pointer;white-space:nowrap;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.billing-tab:hover{border-color:#d9dee5;background:#eef1f4;color:#111827}.billing-tab.active{border-color:#cfd6dd;background:#e8edf1;color:#111827;box-shadow:inset 0 -2px #334155}.billing-workbar-spacer{flex:1;min-width:var(--spacing-4)}.billing-workbar .btn,.billing-toolbar .btn{min-height:30px;padding:var(--spacing-1) var(--spacing-3);border-radius:var(--radius-sm);font-size:var(--font-size-xs)}.billing-tab-panel{flex:1;min-height:0;display:flex;flex-direction:column;gap:var(--spacing-2)}.billing-toolbar{min-height:36px;display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-1) var(--spacing-2);border:1px solid var(--gray-200);background:#fff;flex-wrap:wrap}.billing-toolbar-label{color:var(--gray-600);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.billing-search{width:min(440px,34vw);min-width:260px;display:flex;align-items:center;gap:var(--spacing-2);padding:0 var(--spacing-2);border:1px solid var(--gray-300);background:#fff}.billing-search svg{flex:0 0 auto;color:var(--gray-500)}.billing-search .input{height:30px;padding-right:0;padding-left:0;border:0;box-shadow:none;font-size:var(--font-size-xs)}.billing-search .input:focus{box-shadow:none}.billing-select,.billing-date-control .input{height:30px;border-radius:var(--radius-sm);font-size:var(--font-size-xs)}.billing-select{width:150px}.billing-date-control{display:inline-flex;align-items:center;gap:var(--spacing-2)}.billing-date-control label{color:var(--gray-600);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.billing-summary-strip{display:flex;align-items:center;gap:var(--spacing-1);flex:1;min-width:260px;flex-wrap:wrap}.billing-grid-shell{flex:1;min-height:420px}.billing-breakdown-grid{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:var(--spacing-2)}.billing-breakdown-card{display:grid;gap:2px;padding:var(--spacing-2);border:1px solid var(--gray-200);background:#fff}.billing-breakdown-label,.billing-breakdown-sub{color:var(--gray-500);font-size:11px}.billing-breakdown-value{color:var(--gray-900);font-size:var(--font-size-base);font-weight:var(--font-weight-bold)}.billing-period-button{min-height:28px;padding:0 var(--spacing-2);border:1px solid var(--gray-200);background:var(--gray-50);color:var(--gray-700);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);cursor:pointer}.billing-period-button.active{border-color:var(--gray-900);background:var(--gray-900);color:#fff}.billing-link-button{padding:0;border:0;background:transparent;color:var(--primary-700);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);cursor:pointer}.billing-link-button:hover{color:var(--primary-800);text-decoration:underline}.billing-link-button.danger{color:var(--danger-600)}.billing-link-button.danger:hover{color:var(--danger-700)}.billing-status-badge{display:inline-flex;align-items:center;justify-content:center;min-width:58px;height:20px;padding:0 var(--spacing-2);border:1px solid var(--gray-200);background:var(--gray-50);color:var(--gray-700);font-size:11px;font-weight:var(--font-weight-semibold);line-height:1}.billing-status-badge.success{border-color:#bbf7d0;background:#f0fdf4;color:var(--success-700)}.billing-status-badge.warning{border-color:#fde68a;background:#fffbeb;color:#92400e}.billing-status-badge.info{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.billing-status-badge.danger{border-color:#fecaca;background:#fef2f2;color:var(--danger-700)}.billing-amount{font-weight:var(--font-weight-bold)}.billing-amount.income{color:var(--success-700)}.billing-amount.expense{color:var(--danger-700)}.workorders-page{height:100%;max-width:none}.workorders-workbar{min-height:36px;display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-1) var(--spacing-2);border:1px solid var(--gray-200);background:#fff;flex-wrap:wrap}.workorders-workbar-title{padding-right:var(--spacing-2);border-right:1px solid var(--gray-200);color:var(--gray-900);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);line-height:1}.workorders-summary-strip{display:flex;align-items:center;gap:var(--spacing-1);flex:1;min-width:320px;flex-wrap:wrap}.workorders-workbar-actions{display:inline-flex;align-items:center;gap:var(--spacing-1);flex-wrap:wrap}.workorders-workbar .btn{min-height:30px;padding:var(--spacing-1) var(--spacing-3);border-radius:var(--radius-sm);font-size:var(--font-size-xs)}.workorders-grid-shell{flex:1;min-height:420px}.workorder-link-button,.workorder-row-action{padding:0;border:0;background:transparent;color:var(--primary-700);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);cursor:pointer}.workorder-link-button:hover,.workorder-row-action:hover{color:var(--primary-800);text-decoration:underline}.workorder-row-action.danger{color:var(--danger-600)}.workorder-row-action.danger:hover{color:var(--danger-700)}.workorder-status-badge,.workorder-priority-badge{display:inline-flex;align-items:center;justify-content:center;min-width:72px;height:20px;padding:0 var(--spacing-2);border:1px solid var(--gray-200);background:var(--gray-50);color:var(--gray-700);font-size:11px;font-weight:var(--font-weight-semibold);line-height:1;white-space:nowrap}.workorder-status-badge.open{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.workorder-status-badge.in-progress{border-color:#fde68a;background:#fffbeb;color:#92400e}.workorder-status-badge.waiting{border-color:#fed7aa;background:#fff7ed;color:#c2410c}.workorder-status-badge.completed,.workorder-status-badge.paid{border-color:#bbf7d0;background:#f0fdf4;color:var(--success-700)}.workorder-status-badge.invoiced{border-color:#ddd6fe;background:#f5f3ff;color:#6d28d9}.workorder-status-badge.cancelled{border-color:#fecaca;background:#fef2f2;color:var(--danger-700)}.workorder-priority-badge.low{border-color:var(--gray-200);background:var(--gray-50);color:var(--gray-600)}.workorder-priority-badge.medium{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.workorder-priority-badge.high{border-color:#fed7aa;background:#fff7ed;color:#c2410c}.workorder-priority-badge.urgent{border-color:#fecaca;background:#fef2f2;color:var(--danger-700)}.invoice-detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:var(--spacing-4);background:#11182773}.invoice-detail-modal{width:min(920px,100%);max-height:90vh;overflow-y:auto;border:1px solid var(--gray-300);border-radius:var(--radius-sm);background:#fff;box-shadow:var(--shadow-xl)}.invoice-detail-modal .input{border-radius:var(--radius-sm)}@media (max-width: 900px){.billing-breakdown-grid{grid-template-columns:repeat(2,minmax(120px,1fr))}.billing-search{width:100%;min-width:0}}.inventory-statusline{min-height:24px;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-3);color:var(--gray-600);font-size:var(--font-size-xs)}.inventory-legend,.inventory-legend-item{display:inline-flex;align-items:center;gap:var(--spacing-2);flex-wrap:wrap}.inventory-legend-swatch{width:12px;height:12px;border:1px solid var(--gray-300)}.inventory-legend-swatch.low{border-color:#fde68a;background:#fffbeb}.inventory-legend-swatch.out{border-color:#fecaca;background:#fef2f2}@media (max-width: 900px){.inventory-search{width:100%}.inventory-statusline{align-items:flex-start;flex-direction:column}}.calendar-date-control{height:29px;display:inline-flex;align-items:center;gap:var(--spacing-2);padding:0 var(--spacing-2);border:1px solid var(--gray-300);background:#fff;color:var(--gray-700);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);cursor:pointer}.calendar-date-control input{width:128px;border:0;background:transparent;color:var(--gray-900);font:inherit;outline:none;cursor:pointer}.calendar-selection-bar{justify-content:space-between;min-height:32px;padding:var(--spacing-1) var(--spacing-2);border:1px solid var(--success-200);background:var(--success-50);color:var(--success-700);font-size:var(--font-size-xs)}.calendar-workspace{flex:1;min-height:0;display:grid;grid-template-columns:1fr;gap:var(--spacing-2)}.calendar-workspace.panel-open{grid-template-columns:260px minmax(0,1fr)}.calendar-side-panel{min-height:0;overflow:auto;border:1px solid var(--gray-200);background:#fff;display:flex;flex-direction:column}.calendar-side-section{padding:var(--spacing-2);border-bottom:1px solid var(--gray-200)}.calendar-side-section:last-child{border-bottom:0}.calendar-side-heading{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--gray-700);margin-bottom:var(--spacing-2)}.calendar-mini{margin-bottom:var(--spacing-2)}.calendar-mini-title{height:22px;display:flex;align-items:center;color:var(--gray-900);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:capitalize}.calendar-mini-weekdays,.calendar-mini-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-mini-weekdays span{padding:2px 0;color:var(--gray-500);font-size:10px;font-weight:var(--font-weight-semibold);text-align:center}.calendar-mini-day{aspect-ratio:1;min-width:0;border:1px solid transparent;background:transparent;color:var(--gray-700);font-size:var(--font-size-xs);cursor:pointer}.calendar-mini-day:hover{border-color:var(--gray-300);background:var(--gray-50)}.calendar-mini-day.outside{color:var(--gray-400)}.calendar-mini-day.today{border-color:var(--primary-300)}.calendar-mini-day.selected{background:var(--gray-900);border-color:var(--gray-900);color:#fff;font-weight:var(--font-weight-bold)}.calendar-side-toggle{display:flex;align-items:center;gap:var(--spacing-2);margin-top:var(--spacing-2);color:var(--gray-600);font-size:var(--font-size-xs);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.calendar-side-toggle input{width:13px;height:13px;margin:0}.calendar-reservation-list{display:flex;flex-direction:column;gap:1px}.calendar-reservation-row{width:100%;display:grid;grid-template-columns:78px minmax(0,1fr);gap:var(--spacing-2);align-items:center;min-height:28px;padding:var(--spacing-1) var(--spacing-2);border:1px solid transparent;background:transparent;color:var(--gray-700);font-size:var(--font-size-xs);text-align:left;cursor:pointer}.calendar-reservation-row:hover,.calendar-reservation-row.active{border-color:var(--gray-300);background:var(--gray-50)}.calendar-reservation-row span{color:var(--gray-500)}.calendar-reservation-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-empty-note,.calendar-shortcut-hint{font-size:var(--font-size-xs);color:var(--gray-500)}.calendar-detail-section{flex:1}.calendar-detail-meta{display:flex;justify-content:space-between;gap:var(--spacing-2);color:var(--gray-500);font-size:var(--font-size-xs);margin-bottom:var(--spacing-2)}.calendar-detail-card{border:1px solid var(--gray-200);background:var(--gray-50);padding:var(--spacing-2);font-size:var(--font-size-xs);color:var(--gray-700);min-width:0;overflow:hidden}.calendar-detail-card strong,.calendar-detail-card span{display:block;margin-bottom:var(--spacing-1);overflow-wrap:anywhere;word-break:break-word}.calendar-detail-card p{margin-top:var(--spacing-2);white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;color:var(--gray-700);font-size:var(--font-size-xs);line-height:1.45}.calendar-detail-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-2);margin-top:var(--spacing-2)}.calendar-timeline-area{min-width:0;min-height:0;overflow:hidden}.supplier-actions{display:inline-flex;align-items:center;gap:var(--spacing-1)}.supplier-modal{max-width:720px;border-radius:var(--radius-sm)}.supplier-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-3)}.supplier-form-full{grid-column:1 / -1}.supplier-textarea{min-height:86px;resize:vertical}.supplier-active-toggle{min-height:38px;display:flex;align-items:center;gap:var(--spacing-2);margin-top:22px;color:var(--gray-700);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.supplier-active-toggle input{width:14px;height:14px;margin:0}@media (max-width: 720px){.supplier-form-grid{grid-template-columns:1fr}.supplier-active-toggle{margin-top:0}}.calendar-context-menu{min-width:190px;padding:3px;border:1px solid var(--gray-300);background:#fff;box-shadow:var(--shadow-lg)}.calendar-context-menu button{width:100%;min-height:28px;display:flex;align-items:center;padding:var(--spacing-1) var(--spacing-2);border:0;background:transparent;color:var(--gray-800);font-size:var(--font-size-xs);text-align:left;cursor:pointer}.calendar-context-menu button:hover{background:var(--gray-100)}.calendar-context-menu button.danger{color:var(--danger-600)}.calendar-context-menu button.danger:hover{background:var(--danger-50)}.calendar-workorder-gap{height:6px}.calendar-workorder-description{overflow:hidden;color:var(--gray-800);font-size:var(--font-size-xs);line-height:1.3;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.stat-card{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:var(--spacing-3) var(--spacing-4);transition:border-color var(--transition-fast),background-color var(--transition-fast)}.stat-card:hover{border-color:var(--gray-300);background:var(--gray-50)}.stat-card-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--gray-600);text-transform:uppercase;letter-spacing:0;margin-bottom:var(--spacing-1)}.stat-card-value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--gray-900)}.badge{display:inline-flex;align-items:center;gap:var(--spacing-1);padding:var(--spacing-1) var(--spacing-2);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);line-height:1;border-radius:var(--radius-full);white-space:nowrap}.badge-primary{background:var(--primary-100);color:var(--primary-700)}.badge-success{background:var(--success-50);color:var(--success-700)}.badge-warning{background:var(--warning-50);color:var(--warning-600)}.badge-danger{background:var(--danger-50);color:var(--danger-600)}.badge-gray{background:var(--gray-100);color:var(--gray-700)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-4);animation:fadeIn var(--transition-base)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);width:100%;max-width:600px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:slideUp var(--transition-base)}.modal-large{max-width:900px}.modal-95{max-width:95vw;max-height:95vh}.modal-99{max-width:99vw;max-height:99vh}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{padding:var(--spacing-6);border-bottom:1px solid var(--gray-200);display:flex;align-items:center;justify-content:space-between}.modal-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--gray-900)}.modal-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--gray-500);font-size:24px;cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast)}.modal-close:hover{background:var(--gray-100);color:var(--gray-700)}.modal-tabs{display:flex;border-bottom:1px solid var(--gray-200);background:var(--gray-50);padding:0 var(--spacing-6);gap:var(--spacing-1)}.modal-tabs .tab{padding:var(--spacing-3) var(--spacing-4);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--gray-600);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.modal-tabs .tab:hover{color:var(--gray-900);background:var(--gray-100)}.modal-tabs .tab.active{color:var(--primary-600);border-bottom-color:var(--primary-600);background:#fff}.modal-body{padding:var(--spacing-6);overflow-y:auto;flex:1}.tab-content{animation:fadeIn .2s ease-in-out}.modal-footer{padding:var(--spacing-6);border-top:1px solid var(--gray-200);display:flex;gap:var(--spacing-3);justify-content:flex-end}.modal-tab{padding:var(--spacing-3) var(--spacing-4);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--gray-600);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.modal-tab:hover:not(:disabled){color:var(--gray-900);background:var(--gray-100)}.modal-tab.active{color:var(--primary-600);border-bottom-color:var(--primary-600);background:#fff}.modal-tab:disabled{opacity:.5;cursor:not-allowed}.modal-sub-tabs{display:flex;gap:var(--spacing-2);margin-bottom:var(--spacing-4);border-bottom:1px solid var(--gray-200)}.modal-sub-tab{padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--gray-600);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all var(--transition-fast)}.modal-sub-tab:hover{color:var(--gray-900)}.modal-sub-tab.active{color:var(--primary-600);border-bottom-color:var(--primary-600)}.product-card-modal{max-width:980px;border-radius:var(--radius-sm);box-shadow:var(--shadow-lg)}.product-card-header{min-height:52px;padding:var(--spacing-3) var(--spacing-4);background:#fff}.product-card-header .modal-title{margin:0;font-size:var(--font-size-base);line-height:1.2}.product-card-subtitle{margin-top:var(--spacing-1);color:var(--gray-600);font-size:var(--font-size-xs)}.product-card-modal .modal-tabs{min-height:36px;padding:0 var(--spacing-4);background:var(--gray-50)}.product-card-modal .modal-tabs .tab{padding:var(--spacing-2) var(--spacing-3);color:var(--gray-700);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);border-bottom-width:1px}.product-card-modal .modal-tabs .tab.active{color:var(--gray-900);border-bottom-color:var(--gray-900)}.product-card-modal .modal-body{padding:var(--spacing-4);background:#fff}.product-card-modal .modal-footer{padding:var(--spacing-3) var(--spacing-4);background:var(--gray-50)}.product-card-modal .input,.product-card-modal .textarea,.product-card-modal .select{border-radius:var(--radius-sm)}.product-card-modal .form-group{margin-bottom:var(--spacing-3)}.product-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-3)}.product-form-grid-code{grid-template-columns:minmax(160px,1fr) minmax(0,2fr)}.product-panel,.product-info-box,.product-metadata{border:1px solid var(--gray-200);background:var(--gray-50)}.product-panel{margin-bottom:var(--spacing-3);padding:var(--spacing-3)}.product-panel-title{margin:0 0 var(--spacing-3);color:var(--gray-800);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.product-info-box{margin-bottom:var(--spacing-3);padding:var(--spacing-2) var(--spacing-3);color:var(--gray-700);font-size:var(--font-size-xs);line-height:1.45}.product-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-2);margin-top:var(--spacing-3)}.product-summary-grid-four{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:var(--spacing-3)}.product-summary-cell{min-height:46px;padding:var(--spacing-2);border:1px solid var(--gray-200);background:var(--gray-50)}.product-summary-cell span{display:block;color:var(--gray-500);font-size:11px}.product-summary-cell strong{display:block;margin-top:2px;color:var(--gray-900);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-metadata{display:grid;gap:var(--spacing-1);margin-top:var(--spacing-3);padding:var(--spacing-2);color:var(--gray-600);font-size:var(--font-size-xs)}.product-stock-adjustment{display:grid;grid-template-columns:140px minmax(0,1fr) auto;gap:var(--spacing-3);align-items:end}.product-form-group-compact{margin-bottom:0}.product-movement-toolbar{display:flex;justify-content:flex-end;margin-top:var(--spacing-3)}.product-delta-positive,.product-delta-negative{font-weight:var(--font-weight-semibold)}.product-delta-positive{color:var(--success-700)}.product-delta-negative{color:var(--danger-700)}@media (max-width: 760px){.product-form-grid,.product-form-grid-code,.product-summary-grid-four,.product-stock-adjustment{grid-template-columns:1fr}}.modal-xl{max-width:1200px}.billing-summary{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-md);padding:var(--spacing-4);margin-top:var(--spacing-6)}.billing-summary h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--gray-900);margin-bottom:var(--spacing-3)}.billing-summary .flex{display:flex;justify-content:space-between;padding:var(--spacing-2) 0}.billing-summary hr{border:none;border-top:1px solid var(--gray-300);margin:var(--spacing-2) 0}.form-group{margin-bottom:var(--spacing-4)}.form-label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--gray-700);margin-bottom:var(--spacing-2)}.form-label-required:after{content:"*";color:var(--danger-500);margin-left:var(--spacing-1)}.form-help,.form-hint{display:block;font-size:var(--font-size-xs);color:var(--gray-500);margin-top:var(--spacing-1)}.form-error{display:block;font-size:var(--font-size-xs);color:var(--danger-600);margin-top:var(--spacing-1)}.input-error{border-color:var(--danger-500)}.input-error:focus{border-color:var(--danger-500);box-shadow:0 0 0 3px var(--danger-50)}.checkbox,.radio{display:flex;align-items:center;gap:var(--spacing-2);cursor:pointer}.checkbox input[type=checkbox],.radio input[type=radio]{width:18px;height:18px;cursor:pointer;accent-color:var(--primary-600)}.alert{padding:var(--spacing-4);border-radius:var(--radius-md);border:1px solid;font-size:var(--font-size-sm);margin-bottom:var(--spacing-4)}.alert-success{background:var(--success-50);border-color:var(--success-500);color:var(--success-700)}.alert-warning{background:var(--warning-50);border-color:var(--warning-500);color:var(--warning-600)}.alert-danger{background:var(--danger-50);border-color:var(--danger-500);color:var(--danger-600)}.alert-info{background:var(--primary-50);border-color:var(--primary-500);color:var(--primary-700)}.work-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:stretch;justify-content:stretch;background:#11182794}.work-modal{width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden;background:var(--surface-card);color:var(--text-primary)}.work-modal-header,.work-modal-footer{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-4);background:#fff;border-color:var(--border-default)}.work-modal-header{min-height:56px;padding:10px 18px;border-bottom:1px solid var(--border-default)}.work-modal-footer{min-height:64px;padding:10px 18px;border-top:1px solid var(--border-default)}.work-modal-title{margin:0;color:var(--text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);line-height:1.15}.work-modal-subtitle{margin:3px 0 0;color:var(--text-secondary);font-size:var(--font-size-xs);line-height:1.35}.work-modal-body{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:12px;padding:14px 18px;background:var(--surface-page)}.work-modal-section{background:#fff;border:1px solid var(--border-default);border-radius:var(--radius-sm)}.work-modal-section-header{min-height:40px;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-3);padding:7px 10px;border-bottom:1px solid var(--border-default);background:var(--gray-50)}.work-modal-section-title{margin:0;color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.work-modal-section-tools{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.work-modal-section-body{padding:8px}.work-modal-close{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);font-size:22px;line-height:1;cursor:pointer}.work-modal-close:hover{background:var(--gray-100);border-color:var(--gray-200);color:var(--text-primary)}.work-modal-summary{display:grid;grid-template-columns:repeat(5,max-content);align-items:center;gap:6px;color:var(--text-secondary);font-size:var(--font-size-xs);line-height:1.5}.work-modal-summary span{min-height:30px;display:inline-flex;align-items:center;gap:4px;padding:0 8px;border:1px solid var(--border-default);background:var(--gray-50)}.work-modal-summary strong{color:var(--text-primary)}.work-modal-total{background:#173f3f!important;border-color:#173f3f!important;color:#fff;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.work-modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-3);flex-shrink:0}.workorder-edit-modal .work-modal-header{min-height:50px;gap:var(--spacing-3)}.workorder-modal-dates{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--spacing-3);min-width:320px}.workorder-modal-date-field{display:grid;gap:2px}.workorder-modal-date-field label{color:var(--text-secondary);font-size:11px;font-weight:var(--font-weight-semibold)}.workorder-modal-date-field .input,.workorder-edit-modal .input,.workorder-edit-modal .textarea{border-radius:var(--radius-sm);font-size:var(--font-size-sm)}.workorder-modal-date-field .input{height:30px;padding:4px 8px;font-size:var(--font-size-xs)}.workorder-modal-header-actions{display:inline-flex;align-items:center;gap:var(--spacing-1)}.workorder-help-button{font-size:14px;font-weight:var(--font-weight-bold)}.workorder-edit-modal .workorder-modal-tabs{flex-shrink:0;min-height:36px;display:flex;align-items:center;gap:2px;padding:3px 18px 0;border-bottom:1px solid var(--border-default);background:#fff;overflow-x:auto}.workorder-edit-modal .modal-tab{height:32px;padding:0 10px;border:1px solid transparent;border-radius:3px;border-bottom-width:1px;background:transparent;color:#44515f;font-size:13px;font-weight:var(--font-weight-semibold);line-height:1}.workorder-edit-modal .modal-tab:hover:not(:disabled){border-color:#d9dee5;background:#eef1f4;color:#111827}.workorder-edit-modal .modal-tab.active{border-color:#cfd6dd;background:#e8edf1;color:#111827;box-shadow:inset 0 -2px #334155}.workorder-modal-body{flex:1;min-height:0;overflow:hidden;background:var(--surface-page);padding:10px 12px}.workorder-form,.workorder-billing-tab,.workorder-grid-pane{height:100%;min-height:0}.workorder-billing-tab,.workorder-grid-pane{display:flex;flex-direction:column}.workorder-tab-scroll{height:100%;overflow-y:auto;padding-right:8px}.workorder-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--spacing-2);margin-bottom:var(--spacing-2)}.workorder-form-group-compact{margin-bottom:0}.workorder-edit-modal .info-cards-row{gap:var(--spacing-2);margin-bottom:var(--spacing-2)}.workorder-edit-modal .info-card{padding:0;border:1px solid var(--border-default);border-radius:var(--radius-sm);box-shadow:none}.workorder-edit-modal .info-card-header{min-height:38px;align-items:center;margin-bottom:0;padding:6px 8px;background:var(--gray-50)}.workorder-edit-modal .info-card-title{color:var(--text-primary);font-size:var(--font-size-xs);letter-spacing:0}.workorder-edit-modal .info-card-actions{gap:var(--spacing-1);flex-wrap:wrap;justify-content:flex-end}.workorder-edit-modal .info-card-actions .btn,.workorder-billing-actions .btn,.workorder-field-header .btn{min-height:28px;padding:4px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs)}.workorder-edit-modal .info-card-body{padding:8px;gap:6px}.workorder-edit-modal .info-field{min-height:28px;align-items:center;gap:var(--spacing-2);padding-bottom:4px;border-bottom:1px solid var(--gray-100)}.workorder-edit-modal .info-field:last-child{border-bottom:0}.workorder-edit-modal .info-field-label{color:var(--text-secondary);font-size:var(--font-size-xs)}.workorder-edit-modal .info-field-value{font-size:var(--font-size-sm)}.workorder-edit-modal .info-field input{border-radius:0!important}.workorder-edit-modal .fi-plate{border-radius:var(--radius-sm)}.workorder-edit-modal .info-field-editable{border-color:var(--gray-200);border-radius:var(--radius-sm);background:var(--gray-50)}.workorder-billing-toolbar{min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-2);flex-shrink:0;margin-bottom:var(--spacing-2);padding:var(--spacing-1) var(--spacing-2);border:1px solid var(--border-default);background:#fff;flex-wrap:wrap}.workorder-sub-tabs{margin:0;border-bottom:0;gap:2px}.workorder-edit-modal .modal-sub-tab{height:28px;padding:0 10px;border:1px solid transparent;border-radius:3px;color:#44515f;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.workorder-edit-modal .modal-sub-tab:hover{border-color:#d9dee5;background:#eef1f4;color:#111827}.workorder-edit-modal .modal-sub-tab.active{border-color:#cfd6dd;background:#e8edf1;color:#111827;box-shadow:inset 0 -2px #334155}.workorder-billing-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:var(--spacing-1);flex-wrap:wrap}.workorder-field-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-2);margin-bottom:6px}.workorder-field-header .form-label{margin:0}.workorder-field-help{margin:4px 0 0;color:var(--text-muted);font-size:var(--font-size-xs)}.work-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:var(--spacing-4);background:#1118279e}.work-dialog{width:min(560px,100%);max-height:90vh;display:flex;flex-direction:column;overflow:hidden;background:#fff;border:1px solid var(--border-default);border-radius:var(--radius-sm);box-shadow:var(--shadow-xl)}.work-dialog-body{flex:1;overflow:auto;padding:var(--spacing-4) var(--spacing-5)}.work-dialog-compact{width:min(440px,100%);padding:30px;text-align:center}.work-table{width:100%;border-collapse:collapse;color:var(--text-primary);font-size:var(--font-size-sm)}.work-table th{padding:0 12px 6px 0;color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);border-bottom:1px solid var(--border-default)}.work-table td{padding:6px 12px 6px 0;border-bottom:1px solid var(--border-subtle)}.work-table .numeric{text-align:right;font-variant-numeric:tabular-nums}.quick-sale-customer{position:relative}.quick-sale-customer-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.quick-sale-customer-input{position:relative;width:min(420px,100%)}.quick-sale-customer-input .input{padding-right:34px}.quick-sale-customer-input .input.is-selected{border-color:var(--success-600);background:var(--success-50)}.quick-sale-clear{position:absolute;top:50%;right:8px;transform:translateY(-50%);width:24px;height:24px;border:0;background:transparent;color:var(--text-muted);font-size:16px;line-height:1;cursor:pointer}.quick-sale-selected-customer{color:var(--success-700);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.quick-sale-muted{color:var(--text-muted);font-size:var(--font-size-xs)}.quick-sale-dropdown{position:absolute;top:calc(100% + 4px);left:0;z-index:10000;width:min(420px,100%);max-height:240px;overflow:auto;background:#fff;border:1px solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg)}.quick-sale-dropdown-item{width:100%;display:block;padding:9px 12px;border:0;border-bottom:1px solid var(--border-subtle);background:#fff;color:var(--text-primary);cursor:pointer;text-align:left}.quick-sale-dropdown-item:hover{background:var(--gray-50)}.quick-sale-dropdown-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.quick-sale-dropdown-meta{margin-top:2px;color:var(--text-secondary);font-size:var(--font-size-xs)}.quick-sale-payment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.quick-sale-payment-option{min-height:40px;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:#fff;color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer}.quick-sale-payment-option.active{border-color:#173f3f;background:#173f3f;color:#fff}.quick-sale-finish-value{margin:12px 0 28px;color:var(--text-primary);font-size:32px;font-weight:800;line-height:1}.quick-sale-checkout-total{display:grid;gap:4px;padding:18px;margin-bottom:14px;border:1px solid var(--border-default);background:#fff;text-align:center}.quick-sale-checkout-label{color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase}.quick-sale-checkout-value{color:var(--text-primary);font-size:38px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}.quick-sale-checkout-note{color:var(--text-secondary);font-size:var(--font-size-xs)}.quick-sale-checkout-meta{display:flex;flex-wrap:wrap;gap:8px 14px;margin-bottom:16px;color:var(--text-secondary);font-size:var(--font-size-xs)}.quick-sale-checkout-meta strong{color:var(--text-primary)}.quick-sale-cash-box{display:grid;grid-template-columns:minmax(0,1fr) 160px;gap:12px;align-items:end;margin-bottom:16px}.quick-sale-cash-input{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);text-align:right;font-variant-numeric:tabular-nums}.quick-sale-change-box{display:grid;gap:4px;min-height:66px;padding:8px 10px;border:1px solid var(--border-default);background:var(--gray-50)}.quick-sale-change-box span{color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.quick-sale-change-box strong{color:var(--text-primary);font-size:var(--font-size-lg);font-variant-numeric:tabular-nums}.quick-sale-method-note{margin-bottom:16px;padding:10px 12px;border:1px solid var(--border-default);background:var(--gray-50);color:var(--text-secondary);font-size:var(--font-size-sm)}.quick-sale-quote-dialog{width:min(980px,calc(100vw - 32px));max-width:980px}.quick-sale-quote-search{display:flex;gap:10px;margin-bottom:12px}.quick-sale-quote-count{margin-top:8px;color:var(--text-secondary);font-size:var(--font-size-xs)}@media (max-width: 980px){.work-modal-footer{align-items:stretch;flex-direction:column}.work-modal-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.work-modal-summary span{justify-content:space-between}.work-modal-actions{justify-content:flex-start;flex-wrap:wrap}}@media (max-width: 640px){.quick-sale-quote-search{flex-direction:column}.work-modal-summary,.quick-sale-cash-box{grid-template-columns:1fr}.quick-sale-checkout-value{font-size:30px}}.badge-open{background:#fef9c3;color:#854d0e}.badge-in-progress{background:#dbeafe;color:#1e40af}.badge-waiting{background:#ffedd5;color:#9a3412}.badge-completed{background:#dcfce7;color:#166534}.badge-invoiced{background:#f3e8ff;color:#6b21a8}.badge-paid{background:#d1fae5;color:#065f46}.badge-cancelled{background:#fee2e2;color:#991b1b}.badge-priority-low{background:#f1f5f9;color:#475569}.badge-priority-medium{background:#dbeafe;color:#1e40af}.badge-priority-high{background:#ffedd5;color:#c2410c}.badge-priority-urgent{background:#fee2e2;color:#991b1b}.btn-invoice{background:#6d28d9;color:#fff;border-color:transparent}.btn-invoice:hover:not(:disabled){background:#5b21b6}.detail-grid{display:grid;grid-template-columns:150px 1fr;gap:8px 12px;font-size:13px}.detail-grid-label{font-weight:600;color:var(--text-secondary)}.detail-grid-value{color:var(--text-primary)}.task-card{padding:12px 14px;border:1px solid var(--border-default);border-radius:var(--radius-md);font-size:13px}.task-card-done{background:#f0fdf4}.task-card-title{font-weight:600;color:var(--text-primary)}.task-card-status{font-size:var(--font-size-xs);color:var(--text-secondary)}.text-center{text-align:center}.text-right{text-align:right}.text-muted{color:var(--gray-500)}.text-primary{color:var(--primary-600)}.text-success{color:var(--success-600)}.text-danger{color:var(--danger-600)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.mb-4{margin-bottom:var(--spacing-4)}.mb-6{margin-bottom:var(--spacing-6)}.mt-4{margin-top:var(--spacing-4)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--spacing-2)}.gap-3{gap:var(--spacing-3)}.gap-4{gap:var(--spacing-4)}.spinner{display:inline-block;width:40px;height:40px;border:4px solid var(--gray-200);border-top-color:var(--primary-600);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.search-bar{position:relative;display:flex;align-items:center;width:100%}.search-bar input{width:100%;padding:var(--spacing-2) var(--spacing-3) var(--spacing-2) var(--spacing-10);font-size:var(--font-size-sm);border:1px solid var(--gray-300);border-radius:var(--radius-md);transition:all var(--transition-fast)}.search-bar input:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px var(--primary-100)}.search-bar svg{position:absolute;left:var(--spacing-3);color:var(--gray-400);pointer-events:none}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-sm);color:var(--gray-700);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--primary-600)}.excel-row-active{background-color:var(--primary-50)!important}.excel-row-active:hover{background-color:var(--primary-100)!important}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-12) var(--spacing-4);text-align:center}.empty-state-icon{font-size:64px;margin-bottom:var(--spacing-4);opacity:.3}.empty-state-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--gray-900);margin-bottom:var(--spacing-2)}.empty-state-description{font-size:var(--font-size-sm);color:var(--gray-500);margin-bottom:var(--spacing-6);max-width:400px}.license-plate-input{position:relative;display:flex;align-items:center;gap:var(--spacing-2);background:#fff;border:3px solid #003580;border-radius:var(--radius-sm);padding:var(--spacing-2) var(--spacing-3);max-width:240px;box-shadow:0 2px 4px #0000001a}.license-plate-badge{display:flex;align-items:center;justify-content:center;background:#003580;color:#fff;font-weight:var(--font-weight-bold);font-size:10px;padding:2px 6px;border-radius:var(--radius-sm);letter-spacing:.5px;min-width:28px}.license-plate-input input{flex:1;border:none;outline:none;font-size:20px;font-weight:var(--font-weight-bold);font-family:Courier New,monospace;text-transform:uppercase;letter-spacing:1.5px;color:var(--gray-900);background:transparent;padding:4px 0;min-width:0;width:140px}.license-plate-input input::-moz-placeholder{color:var(--gray-300);font-weight:400;font-size:18px}.license-plate-input input::placeholder{color:var(--gray-300);font-weight:400;font-size:18px}.license-plate-input input:focus{outline:none}.license-plate-wrapper{display:flex;flex-direction:column;gap:var(--spacing-1)}.license-plate-hint{font-size:11px;color:var(--gray-500);font-style:italic}.fi-plate{display:flex;align-items:center;width:220px;height:50px;background:linear-gradient(#fff,#f1f1f1);border:2px solid #111;border-radius:4px;box-shadow:inset 0 0 0 1px #ccc,0 1px 2px #00000026;font-family:Arial,Helvetica,sans-serif}.fi-eu{width:45px;height:100%;background:#039;display:flex;flex-direction:column;justify-content:center;align-items:center;border-radius:2px 0 0 2px}.fi-country{font-size:12px;font-weight:700;color:#fff;letter-spacing:.5px}.fi-number{flex:1;text-align:center;font-size:24px;font-weight:700;letter-spacing:2px;color:#000;display:flex;align-items:center;justify-content:center}.form-row-compact{display:grid;grid-template-columns:auto 1fr 1fr 1fr;gap:var(--spacing-4);align-items:end;margin-bottom:var(--spacing-4);padding-bottom:var(--spacing-4);border-bottom:1px solid var(--gray-200)}.form-row-6-cols{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--spacing-3);margin-bottom:var(--spacing-4);padding:var(--spacing-3);background:var(--gray-50);border-radius:var(--radius-md)}.info-cards-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-4);margin-bottom:var(--spacing-4)}.info-card{background:#fff;border:2px solid var(--gray-200);border-radius:var(--radius-lg);padding:var(--spacing-4);box-shadow:var(--shadow-sm)}.info-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-3);padding-bottom:var(--spacing-2);border-bottom:1px solid var(--gray-200)}.info-card-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--gray-700);text-transform:uppercase;letter-spacing:.05em;display:flex;align-items:center;gap:var(--spacing-2)}.info-card-actions{display:flex;gap:var(--spacing-2)}.info-card-body{display:flex;flex-direction:column;gap:var(--spacing-2)}.info-field{display:flex;justify-content:space-between;align-items:baseline;font-size:var(--font-size-sm)}.info-field-label{color:var(--gray-600);font-weight:var(--font-weight-medium);min-width:100px}.info-field-value{color:var(--gray-900);font-weight:var(--font-weight-semibold);text-align:right;flex:1}.info-field-value.disabled{color:var(--gray-500)}.vehicle-registration{display:inline-flex;align-items:center;gap:var(--spacing-1);background:#fff;border:2px solid #003580;border-radius:var(--radius-sm);padding:4px 8px;font-size:16px;font-weight:var(--font-weight-bold);font-family:Courier New,monospace;letter-spacing:1px;color:var(--gray-900);box-shadow:0 1px 3px #0000001a;margin-bottom:var(--spacing-2)}.vehicle-registration-badge{background:#003580;color:#fff;font-size:9px;padding:2px 4px;border-radius:2px;font-weight:var(--font-weight-bold);letter-spacing:.5px}.info-field-editable{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2);background:var(--warning-50);border-radius:var(--radius-md);border:1px solid var(--warning-200)}.info-field-editable input{flex:1;border:1px solid var(--gray-300);border-radius:var(--radius-sm);padding:var(--spacing-1) var(--spacing-2);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.info-field-editable .unit{color:var(--gray-600);font-size:var(--font-size-sm)}.data-grid-container{overflow-x:auto;border:1px solid var(--gray-200);border-radius:var(--radius-md);margin-bottom:var(--spacing-4)}.data-grid{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.data-grid thead{background:var(--gray-50);border-bottom:2px solid var(--gray-200)}.data-grid th{padding:var(--spacing-2) var(--spacing-3);text-align:left;font-weight:var(--font-weight-semibold);color:var(--gray-700);border-bottom:1px solid var(--gray-200);white-space:nowrap}.data-grid tbody tr{border-bottom:1px solid var(--gray-100);transition:background-color var(--transition-fast);cursor:pointer}.data-grid tbody tr:hover{background:#eff6ff}.data-grid tbody tr.active-row{background:#dbeafe!important}.data-grid tbody tr.empty-row{background:var(--yellow-50);border-bottom:2px solid var(--warning-300);cursor:default}.data-grid tbody tr.empty-row:hover{background:var(--yellow-100)}.data-grid td{padding:var(--spacing-2) var(--spacing-3);color:var(--gray-900);vertical-align:middle}.input-inline{width:100%;padding:4px 8px;font-size:var(--font-size-sm);border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;transition:all var(--transition-fast)}.input-inline:hover{background:#fff;border-color:var(--gray-300)}.input-inline:focus{outline:none;background:#fff;border-color:var(--primary-500);box-shadow:0 0 0 2px var(--primary-100)}.btn-icon{width:28px;height:28px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;cursor:pointer;font-size:16px;transition:all var(--transition-fast)}.btn-icon:hover{background:var(--gray-100);border-color:var(--gray-300)}.btn-icon-danger:hover{background:var(--danger-50);border-color:var(--danger-200);color:var(--danger-600)}.btn-icon-primary:hover{background:var(--primary-50);border-color:var(--primary-200);color:var(--primary-600)}.main-layout{min-height:100vh;height:100vh;display:flex;flex-direction:column;overflow:hidden;background:#f5f6f7}.main-content{flex:1;min-height:0;overflow-y:auto;background:#f5f6f7;padding:18px 22px 24px}.garage-topbar{height:48px;flex-shrink:0;display:flex;align-items:center;gap:14px;padding:0 12px;background:#fff;border-bottom:1px solid #d8dde3;color:#1f2933;z-index:80}.garage-topbar-brand{height:32px;display:inline-flex;align-items:center;gap:8px;padding:0 10px;border-right:1px solid #e1e5ea;color:#111827;font-size:13px;font-weight:700;letter-spacing:0;white-space:nowrap}.garage-topbar-brand svg{color:#334155}.garage-topbar-nav{display:flex;align-items:center;gap:2px;min-width:0;flex:1;overflow-x:auto;scrollbar-width:none}.garage-topbar-nav::-webkit-scrollbar{display:none}.garage-topbar-link,.garage-topbar-command,.garage-topbar-icon-button{height:32px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid transparent;border-radius:3px;background:transparent;color:#44515f;font-size:13px;font-weight:600;line-height:1;text-decoration:none;white-space:nowrap;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.garage-topbar-link{padding:0 10px}.garage-topbar-command{padding:0 9px}.garage-topbar-icon-button{width:32px}.garage-topbar-link:hover,.garage-topbar-command:hover,.garage-topbar-icon-button:hover{background:#eef1f4;border-color:#d9dee5;color:#111827}.garage-topbar-link.active{background:#e8edf1;border-color:#cfd6dd;color:#111827;box-shadow:inset 0 -2px #334155}.garage-topbar-command.primary{background:#173f3f;border-color:#173f3f;color:#fff}.garage-topbar-command.primary:hover{background:#0f3434;border-color:#0f3434}.garage-topbar-icon-button.active{background:#e8edf1;border-color:#cfd6dd;color:#111827}.garage-topbar-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.garage-topbar-org,.garage-topbar-user{height:32px;display:inline-flex;align-items:center;gap:7px;padding:0 9px;border-left:1px solid #e1e5ea;color:#586575;font-size:12px;font-weight:600;white-space:nowrap}.garage-topbar-user{max-width:210px}.garage-topbar-user span{overflow:hidden;text-overflow:ellipsis}.garage-dashboard{max-width:1480px;margin:0 auto}.garage-dashboard-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-end;margin-bottom:16px}.garage-dashboard-kicker{margin:0 0 4px;color:#667383;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0}.garage-dashboard-title{margin:0;color:#111827;font-size:26px;font-weight:800;line-height:1.15;letter-spacing:0}.garage-dashboard-subtitle{margin:6px 0 0;color:#667383;font-size:13px}.garage-dashboard-search{min-width:320px;height:36px;display:flex;align-items:center;gap:8px;padding:0 10px;background:#fff;border:1px solid #cfd6dd;border-radius:3px;color:#667383;font-size:13px}.garage-dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.garage-command-panel{display:flex;flex-direction:column;min-height:210px;background:#fff;border:1px solid #d8dde3;border-radius:3px;overflow:hidden}.garage-command-panel.warning{border-top:3px solid #d97706}.garage-command-panel.success{border-top:3px solid #15803d}.garage-command-panel.neutral{border-top:3px solid #334155}.garage-command-panel-header{min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid #e4e8ed;background:#fafbfc}.garage-command-panel-title{display:inline-flex;align-items:center;gap:8px;color:#111827;font-size:14px;font-weight:800}.garage-command-panel-title svg{color:#334155}.garage-command-panel-note{color:#667383;font-size:12px;font-weight:600}.garage-command-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid #e4e8ed}.garage-command-stat{padding:11px 12px;border-right:1px solid #e4e8ed}.garage-command-stat:last-child{border-right:0}.garage-command-stat-label{display:block;margin-bottom:5px;color:#667383;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.garage-command-stat-value{color:#111827;font-size:22px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}.garage-command-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:12px}.garage-command-action{min-height:34px;display:inline-flex;align-items:center;justify-content:space-between;gap:8px;padding:0 9px;border:1px solid #cfd6dd;border-radius:3px;background:#fff;color:#26313d;font-size:13px;font-weight:700;text-decoration:none;cursor:pointer}.garage-command-action:hover{background:#eef1f4;color:#111827}.garage-command-action.primary{background:#173f3f;border-color:#173f3f;color:#fff}.garage-command-action.primary:hover{background:#0f3434;color:#fff}.garage-command-list{display:flex;flex-direction:column;gap:6px;padding:0 12px 12px}.garage-command-list-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:7px 0;border-top:1px solid #eef1f4;color:#334155;font-size:12px}.garage-command-list-row strong{color:#111827;font-weight:700}.garage-command-list-row span{color:#667383;font-variant-numeric:tabular-nums}.dashboard-page{max-width:none;min-height:100%}.dashboard-workbar{min-height:36px;display:flex;align-items:center;gap:8px;padding:4px 8px;border:1px solid #d8dde3;background:#fff;flex-wrap:wrap}.dashboard-workbar-title{padding-right:8px;border-right:1px solid #d8dde3;color:#111827;font-size:14px;font-weight:800;line-height:1}.dashboard-workbar-note{color:#667383;font-size:12px;font-weight:700}.dashboard-workbar-chips{margin-left:auto;display:inline-flex;align-items:center;gap:4px;flex-wrap:wrap}.dashboard-workbar-chips span{min-height:28px;display:inline-flex;align-items:center;gap:6px;padding:0 8px;border:1px solid #d8dde3;background:#f8fafc;color:#4b5563;font-size:12px;font-weight:700}.dashboard-workbar-chips strong{color:#111827;font-variant-numeric:tabular-nums}.dashboard-page .garage-dashboard-grid{grid-template-columns:repeat(3,minmax(260px,1fr));gap:10px}.dashboard-page .garage-command-panel{min-height:0;border-radius:0}.dashboard-page .garage-command-panel-header{min-height:38px;padding:8px 10px}.dashboard-page .garage-command-actions{grid-template-columns:1fr;gap:6px;padding:10px}.dashboard-page .garage-command-action{min-height:48px;align-items:center;border-radius:0}.garage-command-action-text{min-width:0;display:flex;flex-direction:column;gap:1px;text-align:left}.garage-command-action-text strong,.garage-command-action-text small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.garage-command-action-text strong{color:inherit;font-size:13px;font-weight:800}.garage-command-action-text small{color:#667383;font-size:11px;font-weight:600}.garage-command-action.primary .garage-command-action-text small{color:#ffffffb8}@media (max-width: 1180px){.garage-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.garage-topbar-user span,.garage-topbar-org{display:none}}@media (max-width: 840px){.garage-topbar{gap:8px}.garage-topbar-brand span,.garage-topbar-link span,.garage-topbar-command span{display:none}.garage-dashboard-header{align-items:stretch;flex-direction:column}.garage-dashboard-search,.dashboard-workbar-chips{min-width:0;width:100%}.garage-dashboard-grid{grid-template-columns:1fr}}
