@font-face{font-family:PT Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/pt-sans-400-cyrillic-ext.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:PT Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/pt-sans-400-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:PT Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/pt-sans-400-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:PT Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/pt-sans-400-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:PT Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/pt-sans-700-cyrillic-ext.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:PT Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/pt-sans-700-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:PT Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/pt-sans-700-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:PT Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/pt-sans-700-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-heading: "PT Sans", "Segoe UI", sans-serif;--font-body: "PT Sans", "Segoe UI", sans-serif;--color-primary: #2e3234;--color-bg: #f5f6f7;--color-surface: #ffffff;--color-text: #2e3234;--color-muted: #6b7280;--color-border: #e5e7eb;--color-accent: #42B350;--color-success: #3ba55d;--color-warning: #d9a400;--color-danger: #d64545;--radius-md: 14px;--shadow-md: 0 8px 28px rgba(46, 50, 52, .12);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 32px;--space-8: 40px;--bp-sm: 600px;--bp-md: 768px;--bp-lg: 1024px}*,: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}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}html{min-height:100%;background:radial-gradient(circle at 10% 10%,rgba(0,132,61,.12),transparent 40%),radial-gradient(circle at 90% 90%,rgba(46,50,52,.08),transparent 45%),var(--color-bg)}body,#root{min-height:100%}body{margin:0;background-color:var(--color-bg);font-family:var(--font-body);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at 10% 10%,rgba(0,132,61,.12),transparent 40%),radial-gradient(circle at 90% 90%,rgba(46,50,52,.08),transparent 45%),var(--color-bg)}.app-frame{min-height:100vh;width:100%;padding:1rem}@media (min-width: 768px){.app-frame{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width: 1024px){.app-frame{padding-left:2rem;padding-right:2rem}}.app-surface{position:relative;z-index:10;border-radius:1rem;border-width:1px;border-color:#e2e8f0cc;background-color:#ffffffe6;--tw-shadow: var(--shadow-md);--tw-shadow-colored: var(--shadow-md);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);--tw-backdrop-blur: blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.panel-card{border-radius:1rem;border-width:1px;border-color:#e2e8f0cc;background-color:var(--color-surface);--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)}.filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.table-wrap{width:100%;overflow-x:auto}.table-base{min-width:100%;border-collapse:collapse;text-align:left;font-size:.875rem;line-height:1.25rem}.table-base thead th{white-space:nowrap;border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgb(226 232 240 / var(--tw-border-opacity, 1));padding:.5rem .75rem;font-size:.75rem;line-height:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.table-base tbody tr{border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgb(226 232 240 / var(--tw-border-opacity, 1))}.table-base tbody td{--tw-border-opacity: 1;border-color:rgb(226 232 240 / var(--tw-border-opacity, 1));padding:.5rem .75rem;vertical-align:middle}.table-base tbody tr:hover{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.left-0{left:0}.left-1\/2{left:50%}.right-4{right:1rem}.top-0{top:0}.top-1\/2{top:50%}.top-4{top:1rem}.z-10{z-index:10}.z-50{z-index:50}.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-1{margin-left:.25rem}.ml-1\.5{margin-left:.375rem}.ml-2{margin-left:.5rem}.mr-4{margin-right:1rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-2\.5{height:.625rem}.h-4{height:1rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-full{height:100%}.h-px{height:1px}.max-h-\[58vh\]{max-height:58vh}.max-h-\[70vh\]{max-height:70vh}.max-h-\[85vh\]{max-height:85vh}.max-h-\[90vh\]{max-height:90vh}.min-h-\[4rem\]{min-height:4rem}.min-h-\[70vh\]{min-height:70vh}.min-h-\[96px\]{min-height:96px}.w-2\.5{width:.625rem}.w-4{width:1rem}.w-9{width:2.25rem}.w-\[170px\]{width:170px}.w-\[180px\]{width:180px}.w-\[220px\]{width:220px}.w-\[260px\]{width:260px}.w-\[320px\]{width:320px}.w-\[95vw\]{width:95vw}.w-auto{width:auto}.w-full{width:100%}.w-px{width:1px}.min-w-0{min-width:0px}.min-w-\[140px\]{min-width:140px}.min-w-\[1700px\]{min-width:1700px}.min-w-\[220px\]{min-width:220px}.min-w-\[400px\]{min-width:400px}.min-w-\[560px\]{min-width:560px}.min-w-\[600px\]{min-width:600px}.min-w-\[640px\]{min-width:640px}.min-w-\[700px\]{min-width:700px}.min-w-\[760px\]{min-width:760px}.min-w-\[820px\]{min-width:820px}.min-w-\[900px\]{min-width:900px}.min-w-max{min-width:-moz-max-content;min-width:max-content}.max-w-\[1100px\]{max-width:1100px}.max-w-\[360px\]{max-width:360px}.max-w-\[440px\]{max-width:440px}.max-w-md{max-width:28rem}.max-w-xl{max-width:36rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.caption-bottom{caption-side:bottom}.-translate-x-1\/2{--tw-translate-x: -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))}.-translate-x-full{--tw-translate-x: -100%;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))}.-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))}.translate-x-0{--tw-translate-x: 0px;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))}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.items-end{align-items:flex-end}.items-center{align-items:center}.items-stretch{align-items:stretch}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-2{row-gap:.5rem}.gap-y-3{row-gap:.75rem}.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-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * 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))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:.125rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-t{border-top-width:1px}.border-emerald-200{--tw-border-opacity: 1;border-color:rgb(167 243 208 / var(--tw-border-opacity, 1))}.border-red-200{--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1))}.border-slate-100{--tw-border-opacity: 1;border-color:rgb(241 245 249 / var(--tw-border-opacity, 1))}.border-slate-200{--tw-border-opacity: 1;border-color:rgb(226 232 240 / var(--tw-border-opacity, 1))}.border-slate-200\/70{border-color:#e2e8f0b3}.border-slate-300{--tw-border-opacity: 1;border-color:rgb(203 213 225 / var(--tw-border-opacity, 1))}.border-l-transparent{border-left-color:transparent}.border-t-transparent{border-top-color:transparent}.bg-accent{background-color:var(--color-accent)}.bg-amber-100{--tw-bg-opacity: 1;background-color:rgb(254 243 199 / var(--tw-bg-opacity, 1))}.bg-black\/40{background-color:#0006}.bg-emerald-100{--tw-bg-opacity: 1;background-color:rgb(209 250 229 / var(--tw-bg-opacity, 1))}.bg-emerald-50{--tw-bg-opacity: 1;background-color:rgb(236 253 245 / var(--tw-bg-opacity, 1))}.bg-primary{background-color:var(--color-primary)}.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-slate-100{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.bg-slate-200{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity, 1))}.bg-slate-300{--tw-bg-opacity: 1;background-color:rgb(203 213 225 / var(--tw-bg-opacity, 1))}.bg-slate-50{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.bg-slate-900{--tw-bg-opacity: 1;background-color:rgb(15 23 42 / var(--tw-bg-opacity, 1))}.bg-slate-900\/40{background-color:#0f172a66}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-8{padding-top:2rem;padding-bottom:2rem}.text-left{text-align:left}.text-center{text-align:center}.align-middle{vertical-align:middle}.font-heading{font-family:var(--font-heading)}.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-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-none{line-height:1}.leading-tight{line-height:1.25}.tracking-wide{letter-spacing:.025em}.text-accent-foreground{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-amber-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity, 1))}.text-amber-700{--tw-text-opacity: 1;color:rgb(180 83 9 / var(--tw-text-opacity, 1))}.text-amber-800{--tw-text-opacity: 1;color:rgb(146 64 14 / var(--tw-text-opacity, 1))}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-emerald-700{--tw-text-opacity: 1;color:rgb(4 120 87 / var(--tw-text-opacity, 1))}.text-primary{color:var(--color-primary)}.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-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.text-slate-600{--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.text-slate-700{--tw-text-opacity: 1;color:rgb(51 65 85 / var(--tw-text-opacity, 1))}.text-slate-800{--tw-text-opacity: 1;color:rgb(30 41 59 / var(--tw-text-opacity, 1))}.text-slate-900{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px 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)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.placeholder\:text-slate-400::-moz-placeholder{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.placeholder\:text-slate-400::placeholder{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.hover\:bg-emerald-50:hover{--tw-bg-opacity: 1;background-color:rgb(236 253 245 / var(--tw-bg-opacity, 1))}.hover\:bg-red-100:hover{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-100:hover{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-200:hover{--tw-bg-opacity: 1;background-color:rgb(226 232 240 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-50:hover{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-accent:focus-visible{--tw-ring-color: var(--color-accent)}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width: 1px}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}.data-\[state\=active\]\:bg-accent[data-state=active]{background-color:var(--color-accent)}.data-\[state\=active\]\:text-white[data-state=active]{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.data-\[state\=active\]\:shadow-sm[data-state=active]{--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)}@media (min-width: 640px){.sm\:min-w-\[120px\]{min-width:120px}.sm\:min-w-\[200px\]{min-width:200px}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}.sm\:flex-row{flex-direction:row}.sm\:flex-wrap{flex-wrap:wrap}.sm\:items-end{align-items:flex-end}}@media (min-width: 768px){.md\:max-w-sm{max-width:24rem}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-\[1fr_140px_1fr\]{grid-template-columns:1fr 140px 1fr}.md\:grid-cols-\[1fr_180px_160px_auto\]{grid-template-columns:1fr 180px 160px auto}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:justify-between{justify-content:space-between}.md\:p-5{padding:1.25rem}}@media (min-width: 1024px){.lg\:not-sr-only{position:static;width:auto;height:auto;padding:0;margin:0;overflow:visible;clip:auto;white-space:normal}.lg\:sticky{position:sticky}.lg\:top-6{top:1.5rem}.lg\:ml-1{margin-left:.25rem}.lg\:block{display:block}.lg\:hidden{display:none}.lg\:min-w-0{min-width:0px}.lg\:grid-cols-\[260px_minmax\(0\,1fr\)\]{grid-template-columns:260px minmax(0,1fr)}.lg\:flex-col{flex-direction:column}.lg\:items-stretch{align-items:stretch}.lg\:gap-6{gap:1.5rem}.lg\:self-start{align-self:flex-start}.lg\:p-3{padding:.75rem}.lg\:text-lg{font-size:1.125rem;line-height:1.75rem}}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-width:0px}.\[\&_tr\]\:border-b tr{border-bottom-width:1px}*{box-sizing:border-box}body{margin:0;font-family:var(--font-body);color:var(--color-text);background:radial-gradient(circle at 10% 10%,rgba(0,132,61,.12),transparent 40%),radial-gradient(circle at 90% 90%,rgba(46,50,52,.08),transparent 45%),var(--color-bg)}.app-shell{width:100%;max-width:none;margin:0;padding:var(--space-4);position:relative;min-height:100vh}.particles-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0}.particles-canvas{display:block}.particles-bg{opacity:.8}.particles-accent{opacity:.7}.topbar,main{position:relative;z-index:1}.topbar{margin-bottom:var(--space-5)}.topbar-logo{height:32px;margin-bottom:var(--space-2);display:block}.topbar h1{margin:0;font-family:var(--font-heading)}.topbar p{margin:var(--space-2) 0 0;color:var(--color-muted)}.topbar-content{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4)}.topbar-actions{display:flex;align-items:center;gap:var(--space-3);padding-top:var(--space-1)}.panel{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:var(--space-6)}.panel-nested{box-shadow:none;border:1px solid #d9e2ea;background:#fbfdff}.auth-page{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 180px);padding:var(--space-4)}.auth-panel{max-width:420px;width:100%}.auth-panel__title{margin:0 0 var(--space-2);font-family:var(--font-heading);font-size:1.5rem;font-weight:600;line-height:1.3}.panel+.panel{margin-top:var(--space-4)}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.panel-head h2{margin:0}.panel-head-actions{display:flex;align-items:center;gap:var(--space-3)}.panel-icon-title{display:flex;align-items:center;gap:var(--space-2);margin:0}.form-grid{display:grid;gap:var(--space-3);max-width:100%}.form-row{display:flex;flex-direction:column;gap:var(--space-2)}.form-row+.form-row{margin-top:var(--space-3)}.form-row-inline{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap}.radio-label{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer;font-weight:500;color:var(--color-text)}.radio-label input[type=radio]{margin:0;width:1rem;height:1rem;accent-color:var(--color-accent)}.inline-form{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.table-block{margin-top:var(--space-4)}.table-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.table-head h3{margin:0}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.admin-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:var(--space-6);min-height:60vh;align-items:start}.admin-sidebar{width:100%;flex-shrink:0;background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-1);position:sticky;top:var(--space-6);align-self:flex-start}.admin-sidebar-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3);border-radius:10px;text-decoration:none;color:var(--color-text);font-weight:500;transition:background-color .15s,color .15s}.admin-sidebar-item:hover{background:#2e32340f}.admin-sidebar-item.active{background:var(--color-primary);color:#fff}.admin-content{flex:1;min-width:0}.admin-header,.page-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.admin-header h2,.page-header h2{margin:0}.admin-page-content{display:flex;flex-direction:column;gap:var(--space-5)}.admin-page-grid{display:flex;flex-direction:column;gap:var(--space-4)}.rules-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.admin-components-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4);align-items:start}@media (min-width: 1280px){.admin-components-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}}.admin-components-grid>.panel-stretch{align-self:start;min-height:min(620px,60vh);width:100%;margin-top:0}.admin-components-grid>.panel-stretch+.panel-stretch{margin-top:0}.panel-stretch{display:flex;flex-direction:column;min-height:min(660px,70vh)}.table-scroll-container{flex:1;min-height:0;overflow:auto}.component-editor-scroll{flex:1;min-height:0;overflow:auto;padding-right:var(--space-1)}.admin-model-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--space-2)}.configurator-grid{display:flex;flex-direction:column;gap:var(--space-4)}@media (min-width: 1440px){.configurator-grid{display:grid;grid-template-columns:380px 1fr 320px;gap:var(--space-4);align-items:start}.configurator-grid>.config-list-sidebar,.configurator-grid>.panel:nth-child(2),.configurator-grid>.summary-sidebar{min-width:0;align-self:start;margin-top:0}.configurator-grid>.config-list-sidebar>:first-child{margin-top:0}}.invite-result{margin-top:var(--space-3);background:#f3f8fc;border:1px solid #d3e1ea;border-radius:10px;padding:var(--space-3)}input,select,textarea,button{font:inherit}input,select,textarea{border:1px solid #cad7e2;border-radius:10px;padding:var(--space-2) var(--space-3);min-height:36px;background:#fff}textarea{resize:vertical}button{background:var(--color-primary);color:#fff;border:none;border-radius:10px;padding:var(--space-2) var(--space-3);min-height:36px;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.7}.button-secondary{background:#f4f6f8;color:var(--color-text);border:1px solid #cfd9e3}.input-file-hidden{position:absolute;width:.1px;height:.1px;opacity:0;overflow:hidden;z-index:-1}.import-file-label{cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.import-actions{flex-wrap:wrap}.import-actions button,.import-actions .import-file-label{min-height:40px;flex-shrink:0}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{text-align:left;border-bottom:1px solid #e0e8ef;padding:var(--space-2);overflow-wrap:break-word}.compact-table th,.compact-table td{font-size:13px}.row-active{background:#00843d14}.table-row-selected{background:#00843d1a}.data-table td.row-actions{vertical-align:middle}.row-actions{display:flex;gap:var(--space-2);align-items:center;min-height:30px}.icon-button{background:#f4f6f8;color:var(--color-text);border:1px solid #cfd9e3;border-radius:8px;width:30px;height:30px;padding:0;display:inline-flex;align-items:center;justify-content:center}.icon-button:hover:not(:disabled){background:#e9edf1}.icon-button.danger{color:#a32020;border-color:#e2b7b7}.icon-button.danger:hover:not(:disabled){background:#fce8e8}.muted-text{margin:0 0 var(--space-3);color:var(--color-muted)}.import-report{margin:var(--space-3) 0;padding:var(--space-3);border:1px solid #d3e1ea;border-radius:10px;background:#f3f8fc}.import-report p{margin:0}.editor-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.editor-header h3{margin:0 0 var(--space-1)}.editor-header p{margin:0;color:var(--color-muted)}.vat-toggle{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:600}.action-row{display:flex;gap:var(--space-2);margin:var(--space-3) 0}.editor-layout{display:flex;flex-direction:column;gap:var(--space-4)}.editor-main{min-width:0}.summary-sidebar{display:flex;flex-direction:column;gap:var(--space-3)}.summary-sidebar h4,.summary-sidebar h5{margin:0}.summary-section{border-top:1px solid #e0e8ef;padding-top:var(--space-3);display:grid;gap:var(--space-2)}.summary-empty-line{margin:0;color:var(--color-muted)}.summary-items{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2)}.summary-items li{border:1px solid #d7e1ea;border-radius:10px;padding:var(--space-2);background:#fff;display:grid;gap:var(--space-1);font-size:13px;overflow-wrap:break-word}.summary-metrics{display:grid;gap:var(--space-2);font-size:14px}.assumptions-section ul{margin:0;padding-left:var(--space-5)}.quote-block{border-top:1px solid #e0e8ef;padding-top:var(--space-3);display:grid;gap:var(--space-2)}.quote-block button{width:100%}.quote-blocked-text,.quote-warning-text{margin:0;font-size:13px}.compatibility-panel{margin-top:var(--space-2);display:grid;grid-template-columns:180px 1fr;gap:var(--space-3);align-items:flex-start}.compat-badge{display:inline-flex;padding:var(--space-2) var(--space-3);border-radius:999px;font-weight:700;justify-content:center}.compat-green{background:#24a05926;color:#0f7832}.compat-yellow{background:#ca991a2e;color:#8a5e00}.compat-red{background:#cf393926;color:#a32020}.issues-list{margin:var(--space-2) 0 0;padding-left:var(--space-5)}.link-button{background:transparent;border:none;color:var(--color-text);text-align:left;padding:0;text-decoration:underline;cursor:pointer}.inline-issue-hint{margin-top:var(--space-2);display:grid;gap:var(--space-1)}.inline-issue-line{display:flex;align-items:center;gap:var(--space-2);font-size:12px}.inline-issue-badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:999px;font-size:11px;font-weight:700}.severity-error{color:#a32020}.severity-error .inline-issue-badge{background:#cf393926}.severity-warning{color:#8a5e00}.severity-warning .inline-issue-badge{background:#ca991a2e}.severity-info{color:#0f7832}.severity-info .inline-issue-badge{background:#24a05926}.rules-grid{margin-top:var(--space-3);display:flex;flex-direction:column;gap:var(--space-3)}.rule-card{border:1px solid #d7e1ea;border-radius:12px;padding:var(--space-3);background:#fff}.rule-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2)}.rule-card .inline-form{margin-bottom:var(--space-2)}.attr-row{align-items:center}.sections-accordion{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-3)}.accordion-section{border:1px solid #d7e1ea;border-radius:12px;background:#fff;overflow:visible}.accordion-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;gap:var(--space-3)}.accordion-header:hover{background:#2e323408}.accordion-title{display:flex;align-items:center;gap:var(--space-2);font-weight:600;margin:0}.accordion-badges{display:flex;align-items:center;gap:var(--space-2)}.issue-count-badge{background:#cf39391f;color:#a32020;padding:var(--space-1) var(--space-2);border-radius:10px;font-size:12px;font-weight:600}.issue-count-badge.warning{background:#ca991a26;color:#8a5e00}.accordion-content{padding:0 var(--space-4) var(--space-4);display:none}.accordion-section.expanded .accordion-content{display:block}.accordion-chevron{transition:transform .2s ease;flex-shrink:0}.accordion-section.expanded .accordion-chevron{transform:rotate(90deg)}.required-mark{color:#d64545;margin-left:var(--space-1)}.accordion-section .inline-form{margin-bottom:var(--space-3)}.advanced-conditions-list{display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-3)}.advanced-condition-block{display:flex;flex-direction:column;gap:var(--space-1)}.advanced-condition-block .inline-form{margin-bottom:0}.advanced-condition-errors{margin-top:0}.panel-nested .panel.panel-nested+.panel.panel-nested{margin-top:var(--space-4)}.pager-row{margin-top:var(--space-3);display:flex;justify-content:flex-end;align-items:center;gap:var(--space-3)}.form-error{color:#af2727;margin:var(--space-3) 0 0}.field-invalid{border-color:#d64545!important;background:#fff8f8}.validation-summary{margin:0 0 var(--space-3);padding:var(--space-3);border:1px solid #f0c2c2;border-radius:10px;background:#fff5f5;color:#7f1d1d}.validation-summary strong{display:block;margin-bottom:var(--space-2)}.validation-summary ul{margin:0;padding-left:var(--space-5);display:grid;gap:var(--space-1)}.form-success{color:#0f7832;margin:var(--space-3) 0 0}.problems-drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:40;display:flex;justify-content:flex-end}.problems-drawer{width:min(560px,100%);height:100%;background:var(--color-surface);box-shadow:var(--shadow-md);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.problems-drawer-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2)}.problems-drawer-head h3{margin:0}.config-view-drawer-title,.config-view-section-title{font-family:var(--font-heading);font-weight:600;color:var(--color-text)}.config-view-drawer-title{font-size:1.125rem}.config-view-section-title{font-size:1rem}.problems-drawer-body{overflow:auto;display:grid;gap:var(--space-3);padding-right:var(--space-1)}.problems-group h4{margin:0 0 var(--space-2)}.problems-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2)}.problems-item{border:1px solid #d7e1ea;border-radius:10px;padding:var(--space-2);background:#fff}.problems-item-link{width:100%;display:flex;align-items:center;gap:var(--space-2);text-align:left;background:transparent;color:inherit;border:none;padding:0}.problems-fixes{margin-top:var(--space-2);display:flex;gap:var(--space-2);flex-wrap:wrap}.searchable-select{position:relative;width:100%}.searchable-select-input{width:100%;padding:var(--space-2) var(--space-3);min-height:36px;border:1px solid #d7e1ea;border-radius:8px;font-size:14px;background:#fff;cursor:pointer}.searchable-select-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px #1abc9c26}.searchable-select-options{position:absolute;top:100%;left:0;right:0;margin:0;padding:0;list-style:none;background:#fff;border:1px solid #d7e1ea;border-radius:8px;box-shadow:0 4px 12px #0000001a;max-height:250px;overflow:auto;z-index:100}.searchable-select-option{padding:var(--space-2) var(--space-3);cursor:pointer;display:flex;flex-direction:column;gap:var(--space-1);border-bottom:1px solid #eef2f6}.searchable-select-option:last-child{border-bottom:none}.searchable-select-option:hover{background:#f5f7f9}.searchable-select-option.selected{background:#1abc9c1a}.searchable-select-option .option-name{font-weight:500;color:#333}.searchable-select-option .option-details{font-size:12px;color:#6b7280}.searchable-select-empty{padding:var(--space-3);text-align:center;color:#6b7280;font-size:14px}.config-view-section{border-top:1px solid #e0e8ef;padding-top:var(--space-3)}.config-view-section:first-child{border-top:none;padding-top:0}.config-view-section h4,.config-view-section-title{margin:0 0 var(--space-3)}.services-section.panel-nested,.extra-storages-section.panel-nested{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.services-section.panel-nested h4,.extra-storages-section.panel-nested h4{margin:0 0 var(--space-4);font-family:var(--font-heading);font-size:1rem;font-weight:600;color:var(--color-primary)}.services-section .form-grid{grid-template-columns:auto 1fr;align-items:center;gap:var(--space-2) var(--space-4)}.services-section .form-grid>label{font-size:.875rem;font-weight:500;color:var(--color-text)}.services-section .form-grid input[type=text]{border:1px solid var(--color-border);border-radius:10px;padding:var(--space-2) var(--space-3);min-height:36px;background:var(--color-surface);font-size:.875rem}.services-section .form-grid input[type=text]:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px #42b35026}.extra-storages-section .extra-storages-list{list-style:none;margin:0 0 var(--space-3);padding:0;display:grid;gap:var(--space-2)}.extra-storages-section .extra-storages-list li{border:1px solid var(--color-border);border-radius:10px;padding:var(--space-2) var(--space-3);background:var(--color-surface);font-size:.875rem;color:var(--color-text)}.extra-storages-section .form-row-inline{margin-top:var(--space-2)}.extra-storages-section .form-row-inline label{font-size:.875rem;font-weight:500;color:var(--color-text);min-width:8rem}.extra-storages-section select{flex:1;min-width:0;max-width:100%;border:1px solid var(--color-border);border-radius:10px;padding:var(--space-2) var(--space-3);min-height:36px;background:var(--color-surface);font-size:.875rem}.extra-storages-section select:focus{outline:none;border-color:var(--color-accent)}.hot-spare-block.panel-nested{margin-top:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.hot-spare-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-3)}.hot-spare-head h4{margin:0;font-family:var(--font-heading);font-size:1rem;font-weight:600;color:var(--color-primary)}.hot-spare-picker{display:grid;gap:var(--space-2)}.hot-spare-row{border:1px solid var(--color-border);border-radius:10px;background:var(--color-surface);padding:var(--space-2) var(--space-3);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.hot-spare-disk{display:grid;gap:2px;min-width:0}.hot-spare-disk strong{font-size:.875rem;overflow-wrap:anywhere}.hot-spare-disk span{font-size:.8125rem;color:var(--color-muted)}.hot-spare-list{list-style:none;margin:var(--space-3) 0 0;padding:0;display:grid;gap:var(--space-1);font-size:.875rem}.hot-spare-total{margin:var(--space-2) 0 0;font-weight:600;font-size:.875rem}.raid-calculator-modal{width:min(96vw,1100px)}.raid-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-4)}.raid-arrays{display:grid;gap:var(--space-3);margin:var(--space-3) 0}.raid-array-editor{display:grid;gap:var(--space-3)}.raid-array-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2)}.raid-array-head h5{margin:0}.raid-array-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-2)}.raid-array-grid label{display:grid;gap:var(--space-1);font-size:.875rem}.raid-assignment-picker{display:grid;gap:var(--space-2)}.raid-assignment-row{border:1px solid var(--color-border);border-radius:10px;padding:var(--space-2) var(--space-3);display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.raid-assignment-label{display:grid;gap:2px;min-width:0}.raid-assignment-label strong{font-size:.875rem}.raid-assignment-label span{font-size:.8125rem;color:var(--color-muted)}.raid-results{display:grid;gap:var(--space-3)}.raid-result-card h5{margin:0 0 var(--space-2)}.raid-result-line{margin:0;font-size:.875rem}.raid-messages{margin:var(--space-2) 0 0;padding-left:var(--space-5);font-size:.8125rem}.raid-errors{color:#a32020}.raid-warnings{color:#8a5e00}.raid-info{margin:var(--space-2) 0 0;font-size:.8125rem;color:var(--color-muted)}.config-view-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.config-view-header h4{margin:0}.config-view-meta{margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--space-2) var(--space-4)}.config-view-meta div{display:flex;flex-direction:column;gap:var(--space-1)}.config-view-meta dt{font-size:12px;color:var(--color-muted)}.config-view-meta dd{margin:0;font-weight:500}.compat-badge-draft{background:#64748b26;color:#475569}.configurator-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid #e0e8ef;margin-bottom:var(--space-4);flex-wrap:wrap}.configurator-header-info{flex:1;min-width:200px}.configurator-header-title{margin:0 0 var(--space-1);font-size:1.25rem}.configurator-header-model{margin:0;color:var(--color-muted);font-size:.875rem}.configurator-header-status{display:flex;align-items:center}.status-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:20px;font-size:.875rem;font-weight:500;border:none;cursor:pointer;transition:opacity .15s}.status-badge:hover{opacity:.85}.status-badge-count{background:#ffffff4d;padding:var(--space-1) var(--space-2);border-radius:10px;font-size:.75rem}.status-badge.status-green{background:#00843d26;color:#00843d}.status-badge.status-yellow{background:#f59e0b26;color:#b45309}.status-badge.status-red{background:#dc262626;color:#dc2626}.configurator-header-actions{display:flex;align-items:center;gap:var(--space-3)}.category-selection-row{display:flex;flex-direction:row;align-items:flex-end;gap:var(--space-3);flex-wrap:nowrap}.category-selection-combobox{flex:1;min-width:0}.category-selection-qty{flex:0 0 auto;display:flex;align-items:center;gap:var(--space-2)}.form-row.form-row-hints{flex-direction:row;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}.component-combobox{position:relative}.combobox-filter-row{margin-bottom:var(--space-2)}.combobox-filter-toggle{display:inline-flex;align-items:center;gap:var(--space-2);font-size:.875rem;color:var(--color-muted);cursor:pointer}.combobox-filter-toggle input{margin:0}.combobox-input-wrapper{position:relative}.combobox-input{width:100%;padding:var(--space-2) var(--space-3);min-height:36px;font-size:14px;border:1px solid #d7e1ea;border-radius:8px;background:#fff;transition:border-color .15s}.combobox-input:focus{outline:none;border-color:var(--color-accent)}.combobox-input:disabled{background:#f5f7f9;cursor:not-allowed}.combobox-options{position:absolute;top:100%;left:0;right:0;margin:var(--space-1) 0 0;padding:0;list-style:none;background:#fff;border:1px solid #d7e1ea;border-radius:8px;box-shadow:0 4px 12px #00000026;max-height:280px;overflow:auto;z-index:9999}.combobox-option{padding:var(--space-2) var(--space-3);cursor:pointer;border-bottom:1px solid #eef2f6;transition:background .1s}.combobox-option:last-child{border-bottom:none}.combobox-option:hover,.combobox-option.highlighted{background:#f5f7f9}.combobox-option.selected{background:#1abc9c1a}.combobox-option.disabled{opacity:.6;cursor:not-allowed;background:#fafafa}.combobox-option.disabled:hover{background:#fafafa}.combobox-option .option-main{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.combobox-option .option-name{font-weight:500;color:#333}.combobox-option .option-compat-badge{font-size:.7rem;padding:var(--space-1) var(--space-2);border-radius:4px;font-weight:500}.combobox-option .option-compat-badge.incompatible{background:#dc262626;color:#dc2626}.combobox-option .option-details{display:flex;gap:var(--space-3);font-size:.8rem;color:#6b7280;margin-top:var(--space-1)}.combobox-option .option-reason{font-size:.75rem;color:#dc2626;margin-top:var(--space-1);font-style:italic}.combobox-empty{padding:var(--space-4);text-align:center;color:#6b7280;font-size:14px}.qty-stepper{display:flex;flex-direction:column;gap:var(--space-1)}.qty-stepper-row{display:flex;align-items:center;gap:var(--space-2)}.qty-stepper-clear{flex-shrink:0;border:1px solid #d7e1ea;border-radius:8px;background:#f5f7f9;color:#374151}.qty-stepper-controls{display:inline-flex;align-items:center;border:1px solid #d7e1ea;border-radius:8px;overflow:hidden;background:#fff}.qty-stepper-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:#f5f7f9;color:#374151;cursor:pointer;transition:background .15s,color .15s}.qty-stepper-btn:hover:not(:disabled){background:#e5e9ed;color:#111827}.qty-stepper-btn:disabled{opacity:.5;color:#9ca3af;cursor:not-allowed}.qty-stepper-input{width:60px;height:36px;border:none;text-align:center;font-size:14px;font-weight:500;background:transparent;-moz-appearance:textfield}.qty-stepper-input::-webkit-outer-spin-button,.qty-stepper-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.qty-stepper-input:disabled{color:#9ca3af}.qty-stepper-range{font-size:.75rem;color:var(--color-muted);white-space:nowrap;flex-shrink:0}.config-list-sidebar{display:flex;flex-direction:column;gap:var(--space-4);min-width:0;overflow:hidden}.config-list-table-wrap{overflow-x:auto;min-width:0;-webkit-overflow-scrolling:touch}.config-list-sidebar .data-table.compact-table{table-layout:fixed;width:100%;min-width:280px}.config-list-sidebar .data-table.compact-table th,.config-list-sidebar .data-table.compact-table td{overflow:hidden;text-overflow:ellipsis}.config-list-sidebar .data-table.compact-table th:nth-child(1),.config-list-sidebar .data-table.compact-table td:nth-child(1){min-width:0;max-width:32%}.config-list-sidebar .data-table.compact-table th:nth-child(2),.config-list-sidebar .data-table.compact-table td:nth-child(2){white-space:nowrap}.config-list-sidebar .data-table.compact-table th:nth-child(3),.config-list-sidebar .data-table.compact-table td:nth-child(3){white-space:nowrap;min-width:5.5em}.config-list-sidebar .data-table.compact-table th:nth-child(4),.config-list-sidebar .data-table.compact-table td:nth-child(4){white-space:nowrap;min-width:5.8em}.config-list-controls{display:flex;gap:var(--space-2);flex-wrap:wrap}.config-scope-toggle{margin-top:calc(-1 * var(--space-2))}.owner-chip{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:12px;background:#eef4f9;border:1px solid #d3dfe9}.config-search-input{flex:1;padding:var(--space-2) var(--space-3);min-height:36px;font-size:14px;border:1px solid #d7e1ea;border-radius:6px;background:#fff}.config-search-input:focus{outline:none;border-color:var(--color-accent)}.config-sort-select{padding:var(--space-2) var(--space-3);min-height:36px;font-size:14px;border:1px solid #d7e1ea;border-radius:6px;background:#fff;cursor:pointer}.new-config-form{padding:var(--space-3);background:#f5f7f9;border-radius:8px;min-width:0;overflow:hidden}.config-list-sidebar .new-config-form select,.config-list-sidebar .new-config-form input[type=text],.config-list-sidebar .new-config-form input:not([type]){min-width:0;max-width:100%;width:100%;box-sizing:border-box}.config-list-empty{text-align:center;color:var(--color-muted);padding:var(--space-6) var(--space-3);font-size:.875rem}.guide-panel{display:flex;flex-direction:column;gap:var(--space-4)}.guide-header h2{margin:0}.guide-header p{margin:var(--space-2) 0 0;color:var(--color-muted)}.guide-toc{display:flex;flex-wrap:wrap;gap:var(--space-2)}.guide-toc-link{display:inline-flex;align-items:center;border:1px solid #d3dfe9;border-radius:999px;padding:6px 12px;text-decoration:none;color:var(--color-text);background:#f6faff}.guide-toc-link:hover{background:#e9f2fb}.guide-sections{display:grid;gap:var(--space-3)}.guide-section{border:1px solid #d7e1ea;border-radius:12px;padding:var(--space-3);background:#fff}.guide-section h3{margin:0 0 var(--space-2)}.guide-section ol{margin:0;padding-left:var(--space-5);display:grid;gap:var(--space-2)}.summary-sidebar{position:sticky;top:var(--space-6);max-height:calc(100vh - 2 * var(--space-6));overflow-y:auto;min-width:0}button[type=button]:not(.button-secondary):not(.link-button):not(.qty-stepper-btn):not(.qty-stepper-clear):not(.status-badge):not(.accordion-header):not(.problems-item-link):not(.icon-button){background:var(--color-accent);color:#fff;font-weight:500}button[type=button]:not(.button-secondary):not(.link-button):not(.qty-stepper-btn):not(.qty-stepper-clear):not(.status-badge):not(.accordion-header):not(.problems-item-link):not(.icon-button):hover:not(:disabled){background:#006b32}button[type=button]:not(.button-secondary):not(.link-button):not(.qty-stepper-btn):not(.qty-stepper-clear):not(.status-badge):not(.accordion-header):not(.problems-item-link):not(.icon-button):disabled{background:#9ca3af;cursor:not-allowed}@media (max-width: 768px){.app-shell{padding:var(--space-3)}.panel-head,.table-head,.inline-form,.panel-head-actions{flex-direction:column;align-items:flex-start}.admin-grid,.compatibility-panel,.rules-admin-grid,.admin-components-grid{grid-template-columns:1fr}.action-row{flex-direction:column}.import-actions button,.import-actions .import-file-label{align-self:stretch}.admin-layout{display:flex;flex-direction:column}.admin-sidebar{width:100%;position:static;flex-direction:row;flex-wrap:wrap;justify-content:center}.admin-sidebar-item{padding:var(--space-3) var(--space-3);font-size:14px}.summary-sidebar{position:static;max-height:none}.problems-drawer{width:100%}.hot-spare-row{flex-direction:column;align-items:stretch}.raid-layout{grid-template-columns:1fr}.raid-calculator-modal{width:100vw;max-width:100vw;max-height:100vh;height:100vh;border-radius:0;left:0;top:0;transform:none;padding-top:calc(var(--space-6) + env(safe-area-inset-top));padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom))}}.debug-layout .configurator-grid>*,.debug-layout .admin-layout>*,.debug-layout .panel{outline:1px dashed rgba(46,50,52,.25)}
