@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-semibold:600;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.relative{position:relative}.sticky{position:sticky}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.m-0{margin:0}.mt-1{margin-top:var(--spacing)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.table{display:table}.min-h-\[calc\(100dvh-var\(--topbar-height\)\)\]{min-height:calc(100dvh - var(--topbar-height))}.min-h-screen{min-height:100vh}.w-full{width:100%}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.list-none{list-style-type:none}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.justify-center{justify-content:center}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-4{gap:calc(var(--spacing) * 4)}.border{border-style:var(--tw-border-style);border-width:1px}.p-0{padding:0}.p-4{padding:calc(var(--spacing) * 4)}.px-3{padding-inline:calc(var(--spacing) * 3)}.py-2{padding-block:calc(var(--spacing) * 2)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-muted-foreground{color:var(--muted-foreground)}.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,)}}:root{font-synthesis:none;text-rendering:optimizelegibility;--motion:.18s cubic-bezier(.2, .8, .2, 1);--motion-panel:.28s cubic-bezier(.2, .8, .2, 1);--radius:12px;--radius-compact:8px;--topbar-height:64px;--border-medium:var(--divider);font-family:"Source Sans 3",system-ui,sans-serif}@supports (color:color-mix(in lab,red,red)){:root{--border-medium:color-mix(in srgb, var(--divider) 58%, transparent)}}:root{--shadow-raised-control:0 -1px 0 var(--shadow-light), 0 3px 10px var(--shadow-dark)}@supports (color:color-mix(in lab,red,red)){:root{--shadow-raised-control:0 -1px 0 color-mix(in srgb, var(--shadow-light) 38%, transparent), 0 3px 10px color-mix(in srgb, var(--shadow-dark) 23%, transparent)}}:root{--shadow-raised-compact:0 -1px 0 var(--shadow-light), 0 2px 8px var(--shadow-dark)}@supports (color:color-mix(in lab,red,red)){:root{--shadow-raised-compact:0 -1px 0 color-mix(in srgb, var(--shadow-light) 32%, transparent), 0 2px 8px color-mix(in srgb, var(--shadow-dark) 20%, transparent)}}:root{--shadow-inset-control:inset 0 2px 6px var(--shadow-dark), inset 0 -1px 0 var(--shadow-light)}@supports (color:color-mix(in lab,red,red)){:root{--shadow-inset-control:inset 0 2px 6px color-mix(in srgb, var(--shadow-dark) 26%, transparent), inset 0 -1px 0 color-mix(in srgb, var(--shadow-light) 28%, transparent)}}:root{--shadow-floating:0 -1px 0 var(--shadow-light), 0 12px 30px var(--shadow-dark)}@supports (color:color-mix(in lab,red,red)){:root{--shadow-floating:0 -1px 0 color-mix(in srgb, var(--shadow-light) 38%, transparent), 0 12px 30px color-mix(in srgb, var(--shadow-dark) 30%, transparent)}}:root{--scrim:var(--foreground)}@supports (color:color-mix(in lab,red,red)){:root{--scrim:color-mix(in srgb, var(--foreground) 42%, transparent)}}[data-theme=dark]{--scrim:var(--shadow-dark)}@supports (color:color-mix(in lab,red,red)){[data-theme=dark]{--scrim:color-mix(in srgb, var(--shadow-dark) 62%, transparent)}}*{box-sizing:border-box}html,body,#root,.app-root{min-height:100%;margin:0}body,.app-root{background:var(--background);color:var(--foreground);transition:background var(--motion),color var(--motion)}h1,h2,h3,h4,h5,h6{font-family:Archivo,"Source Sans 3",system-ui,sans-serif;font-weight:700}button,input,select,textarea{font:inherit}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.icon{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:20px;height:20px}.surface{background:var(--surface);color:var(--foreground)}.surface--flat{border:1px solid var(--divider);border-radius:var(--radius)}.surface--raised{border:1px solid var(--border-medium);border-radius:var(--radius);box-shadow:0 -1px 0 var(--shadow-light),0 6px 18px var(--shadow-dark)}@supports (color:color-mix(in lab,red,red)){.surface--raised{box-shadow:0 -1px color-mix(in srgb,var(--shadow-light) 38%,transparent),0 6px 18px color-mix(in srgb,var(--shadow-dark) 23%,transparent)}}.surface--inset{border:1px solid var(--divider);border-radius:var(--radius);box-shadow:inset 0 3px 10px var(--shadow-dark)}@supports (color:color-mix(in lab,red,red)){.surface--inset{box-shadow:inset 0 3px 10px color-mix(in srgb,var(--shadow-dark) 18%,transparent)}}.surface--floating{border:1px solid var(--border-medium);box-shadow:0 -1px 0 var(--shadow-light),0 12px 30px var(--shadow-dark);border-radius:16px}@supports (color:color-mix(in lab,red,red)){.surface--floating{box-shadow:0 -1px color-mix(in srgb,var(--shadow-light) 38%,transparent),0 12px 30px color-mix(in srgb,var(--shadow-dark) 30%,transparent)}}.data-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:240px;padding:32px;display:flex}.data-state--compact{text-align:left;flex-flow:wrap;justify-content:flex-start;gap:14px;min-height:128px;padding:20px}.data-state--compact>div{flex:12rem;min-width:0}.data-state--bare{background:0 0;border:0;gap:0;min-height:96px;padding:20px}.data-state--panel{background:0 0;border:0;border-radius:0;flex:1 0 auto;gap:14px;min-height:0;padding:28px 24px}.data-state--panel>div:not(.sr-only){justify-items:center;gap:6px;display:grid}.data-state--panel p{max-width:32ch;font-size:13px;line-height:1.5}.data-state--centered{width:fit-content;max-width:100%;margin-inline:auto}.view:has(>.data-state--centered,>.view-workspace>.data-state--centered,>.view-workspace>:not(.surface)>:not(.surface)>.data-state--centered){min-height:calc(100vh - var(--topbar-height));min-height:calc(100dvh - var(--topbar-height));flex-direction:column;display:flex}.view>.view-workspace:has(>.data-state--centered,>:not(.surface)>:not(.surface)>.data-state--centered){flex-direction:column;flex:1 0 auto;display:flex}.view>.view-workspace>:not(.surface):has(>:not(.surface)>.data-state--centered){flex:1 0 auto;grid-template-rows:1fr}.view>.view-workspace>:not(.surface)>:not(.surface):has(>.data-state--centered){flex-direction:column;align-self:stretch;display:flex}.view>.view-workspace>.data-state--centered,.view>.view-workspace>:not(.surface)>:not(.surface)>.data-state--centered{margin-block:auto}.view>.data-state--centered{max-width:calc(100% - 2 * var(--view-gutter));order:2}.view:has(>.data-state--centered):before,.view:has(>.data-state--centered):after{content:"";flex:1 0 24px;order:1}.view:has(>.data-state--centered):after{order:3}.data-state h2,.data-state p{margin:0}.data-state p{color:var(--muted-foreground)}.data-state__mark{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);width:44px;height:44px;color:var(--muted-foreground);flex:none;justify-content:center;align-items:center;display:inline-flex}.data-state--compact .data-state__mark{width:38px;height:38px}.data-state--error .data-state__mark{border-color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.data-state--error .data-state__mark{border-color:color-mix(in srgb,var(--danger) 38%,transparent)}}.data-state--error .data-state__mark{color:var(--danger)}.data-state__loader{color:var(--muted-foreground);align-items:center;gap:4px;display:inline-flex}.data-state__loader i{background:currentColor;border-radius:3px;width:5px;height:18px;animation:.45s ease-in-out infinite alternate data-state-loading}.data-state__loader i:nth-child(2){animation-delay:75ms}.data-state__loader i:nth-child(3){animation-delay:.15s}.button,.icon-button{border:1px solid var(--border-medium);border-radius:var(--radius);background:var(--surface);min-height:44px;color:var(--foreground);box-shadow:var(--shadow-raised-control);cursor:pointer;transition:transform var(--motion),box-shadow var(--motion),background var(--motion),color var(--motion);justify-content:center;align-items:center;gap:8px;font-weight:600;display:inline-flex}.button{padding:10px 16px}.icon-button{flex:0 0 44px;width:44px;padding:0}.button:hover,.icon-button:hover{transform:translateY(-1px)}.button:active,.icon-button:active,.button[aria-pressed=true],.icon-button[aria-pressed=true]{box-shadow:var(--shadow-inset-control);transform:translateY(1px)}.button--primary{border-left:3px solid var(--brand)}.button--flat{border:1px solid var(--divider);box-shadow:none;background:0 0}.button--danger{color:var(--danger)}.button:disabled,.icon-button:disabled{cursor:not-allowed;opacity:.48;box-shadow:var(--shadow-raised-compact);transform:none}.button[aria-busy=true]{cursor:progress}.mini-loader{gap:3px;display:inline-flex}.mini-loader span{background:currentColor;border-radius:3px;width:4px;height:12px;animation:.45s ease-in-out infinite alternate data-state-loading}.mini-loader span:nth-child(2){animation-delay:75ms}.mini-loader span:nth-child(3){animation-delay:.15s}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field__label{color:var(--muted-foreground);margin-left:2px;font-size:12px;font-weight:600}.field__control{align-items:center;display:flex;position:relative}.field__input{border:1px solid var(--border-medium);background:var(--surface);width:100%;min-height:44px;color:var(--foreground);box-shadow:var(--shadow-raised-compact);transition:box-shadow var(--motion),border-color var(--motion);border-radius:10px;padding:9px 12px}.field__input::placeholder{color:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.field__input::placeholder{color:color-mix(in srgb,var(--muted-foreground) 70%,transparent)}}.field__input[aria-invalid=true]{border-color:var(--danger)}.field__select{appearance:auto;cursor:pointer}.field__textarea{resize:vertical;min-height:96px;padding-top:11px;padding-bottom:11px;line-height:1.5}.field__input--with-action{padding-right:48px}.field__action{border-radius:var(--radius-compact);width:36px;height:36px;box-shadow:none;color:var(--muted-foreground);background:0 0;border:0;flex:0 0 36px;position:absolute;right:4px}.field__action:hover{color:var(--foreground);transform:none}.field__foot{justify-content:space-between;align-items:baseline;gap:12px;min-width:0;display:flex}.field__foot>:first-child{min-width:0}.field__help,.field__error{align-items:center;gap:8px;margin:2px 0 0 2px;font-size:12px;display:flex}.field__counter{color:var(--muted-foreground);font-variant-numeric:tabular-nums;white-space:nowrap;margin:2px 2px 0 auto;font-size:12px}.field__help{color:var(--muted-foreground)}.field__error{color:var(--danger);font-weight:600}.field__error .icon{width:16px;height:16px}@media(hover:none)and (pointer:coarse){:root :is(input:not([type=checkbox],[type=radio],[type=range],[type=color],[type=file],[type=hidden]),select,textarea):not(.auth-side__inner *){font-size:16px}}.catalog-field,[data-theme=dark] .catalog-field{--catalog-danger-text:var(--danger)}@supports (color:color-mix(in lab,red,red)){[data-theme=dark] .catalog-field{--catalog-danger-text:color-mix(in srgb, var(--danger) 45%, var(--foreground))}}.catalog-field__control{align-items:center;display:flex;position:relative}.catalog-field__slot{width:36px;height:36px;color:var(--muted-foreground);justify-content:center;align-items:center;padding:0;display:flex;position:absolute;right:4px}.catalog-field__control .catalog-field__slot{right:24px}.catalog-field__loader{pointer-events:none}.catalog-field__retry{border-radius:var(--radius-compact);box-shadow:none;cursor:pointer;transition:background var(--motion),color var(--motion);background:0 0;border:0}.catalog-field__retry:hover{background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.catalog-field__retry:hover{background:color-mix(in srgb,var(--foreground) 8%,transparent)}}.catalog-field__retry:hover{color:var(--foreground)}.catalog-field__retry[aria-busy=true]{color:var(--muted-foreground);cursor:progress;background:0 0}.catalog-field__retry .icon{width:17px;height:17px}.catalog-field[data-catalog-state=loading] :is(.filter-combobox__input,.field__input){color:var(--muted-foreground);cursor:progress;padding-right:44px}.catalog-field[data-catalog-state=error] :is(.filter-combobox__input,.field__input){border-color:var(--danger);box-shadow:none;color:var(--muted-foreground);cursor:not-allowed;padding-right:44px}.catalog-field:is([data-catalog-state=loading],[data-catalog-state=error]) .field__select{padding-right:64px}.catalog-field[data-catalog-state=error] .filter-combobox__icon,.catalog-field__error{color:var(--catalog-danger-text)}.inline-alert{border:1px solid var(--danger);align-items:flex-start;gap:12px;padding:14px 16px;display:flex}@supports (color:color-mix(in lab,red,red)){.inline-alert{border:1px solid color-mix(in srgb,var(--danger) 45%,transparent)}}.inline-alert{border-left:3px solid var(--danger);border-radius:var(--radius-compact);background:var(--danger)}@supports (color:color-mix(in lab,red,red)){.inline-alert{background:color-mix(in srgb,var(--danger) 8%,var(--surface))}}.inline-alert{color:var(--foreground);font-size:14px}.inline-alert .icon{color:var(--danger);margin-top:1px}.inline-alert--info{border-color:var(--info)}@supports (color:color-mix(in lab,red,red)){.inline-alert--info{border-color:color-mix(in srgb,var(--info) 45%,transparent)}}.inline-alert--info{border-left-color:var(--info);background:var(--info)}@supports (color:color-mix(in lab,red,red)){.inline-alert--info{background:color-mix(in srgb,var(--info) 8%,var(--surface))}}.inline-alert--info .icon{color:var(--info)}.inline-alert--warning{border-color:var(--progress)}@supports (color:color-mix(in lab,red,red)){.inline-alert--warning{border-color:color-mix(in srgb,var(--progress) 45%,transparent)}}.inline-alert--warning{border-left-color:var(--progress);background:var(--progress)}@supports (color:color-mix(in lab,red,red)){.inline-alert--warning{background:color-mix(in srgb,var(--progress) 10%,var(--surface))}}.inline-alert--warning .icon{color:var(--progress)}.inline-alert--success{border-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.inline-alert--success{border-color:color-mix(in srgb,var(--success) 45%,transparent)}}.inline-alert--success{border-left-color:var(--success);background:var(--success)}@supports (color:color-mix(in lab,red,red)){.inline-alert--success{background:color-mix(in srgb,var(--success) 8%,var(--surface))}}.inline-alert--success .icon{color:var(--success)}.order-purchases__title{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.order-purchases__meta{color:var(--muted-foreground);flex-wrap:wrap;gap:6px 24px;margin:8px 0 0;font-size:14px;display:flex}.order-purchases__meta div{gap:6px;display:flex}.order-purchases__meta dd{color:var(--foreground);margin:0;font-weight:600}.order-purchases{gap:20px;display:grid}.order-purchases>*,.order-purchases__drafts>*,.order-purchase-form__body>*{min-width:0}.order-purchases__card{padding:16px}.order-purchases__card-head,.order-purchases__drafts-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-bottom:12px;display:flex}.order-purchases__card-head h2,.order-purchases__drafts-head h2{margin:0;font-size:17px}.order-purchases__card-head span,.order-purchases__drafts-head p{color:var(--muted-foreground);margin:2px 0 0;font-size:14px}.order-purchases__empty{color:var(--muted-foreground);margin:0;font-size:14px}.order-purchases__list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.order-purchases__list li{border:1px solid var(--divider);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:4px 12px;padding:10px 12px;display:grid}@supports (color:color-mix(in lab,red,red)){.order-purchases__list li{border:1px solid color-mix(in srgb,var(--divider) 70%,transparent)}}.order-purchases__list li{border-radius:var(--radius-compact)}.order-purchases__list-text{min-width:0;display:grid}.order-purchases__list-text small{overflow-wrap:anywhere;color:var(--muted-foreground)}.order-purchases__drafts{gap:16px;display:grid}.order-purchases__drafts-head{margin-bottom:0}.order-purchases__actions{justify-content:flex-end;gap:10px;display:flex}.order-purchase-form{padding:0}.order-purchase-form--invalid{border-color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.order-purchase-form--invalid{border-color:color-mix(in srgb,var(--danger) 55%,transparent)}}.order-purchase-form__head{flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 12px 8px 8px;display:flex}.order-purchase-form__fold{border-radius:var(--radius-compact);min-height:44px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:240px;align-items:center;gap:12px;padding:0 8px;display:flex}.order-purchase-form__fold:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.order-purchase-form__fold .icon{flex:none;transition:transform .18s cubic-bezier(.2,.8,.2,1)}.order-purchase-form__fold[aria-expanded=false] .icon{transform:rotate(-90deg)}.order-purchase-form__fold strong{font-family:Archivo,"Source Sans 3",system-ui,sans-serif;font-size:16px;display:block}.order-purchase-form__fold small{color:var(--muted-foreground);font-size:14px;display:block}.order-purchase-form__sum{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.order-purchase-form__body{border-top:1px solid var(--divider);gap:16px;padding:16px;display:grid}.order-purchase-form__body[hidden]{display:none}.order-purchase-form__body .purchase-lines-editor,.order-purchase-form__body .purchase-form__total{margin-top:0}.order-purchase-form__grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));align-items:start;gap:12px;display:grid}.purchase-lines-editor__head h3{margin:0;font-size:15px}.purchase-lines-editor__body.order-purchase-form__lines{--purchase-line-columns:minmax(220px, 1fr) 140px 160px 110px 44px}.order-purchase-form__material select{min-height:44px;font-size:14px}.order-purchase-form__num{text-align:right;font-variant-numeric:tabular-nums}.order-purchase-form__subtotal{align-self:center;font-weight:600;position:relative}.purchase-line__foot>.field__help{grid-column:1/-1;margin:0 0 0 2px}@media(max-width:720px){.purchase-lines-editor__body.order-purchase-form__lines{--purchase-line-columns:minmax(0, 1fr) minmax(0, 1fr) 44px}.order-purchase-form__material{grid-column:1/-1}.order-purchase-form__subtotal{text-align:left;grid-column:1/3}.order-purchases__list li{grid-template-columns:auto minmax(0,1fr)}.order-purchases__list li .badge{grid-column:2;justify-self:start}.order-purchases__actions .button{flex:1}}@media(prefers-reduced-motion:reduce){.order-purchase-form__fold .icon{transition:none}}.dialog-scrim{z-index:60;overscroll-behavior:contain;background:var(--scrim);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:dialog-fade var(--motion);padding:24px;display:grid;position:fixed;inset:0;overflow-y:auto}.dialog{width:min(460px,100%);margin:auto;padding:28px}.dialog__head{align-items:flex-start;gap:16px;display:flex}.dialog__icon{width:26px;height:26px;color:var(--info);margin-top:2px}.dialog__head h2{letter-spacing:-.02em;margin:0 0 8px;font-size:22px}.dialog__head p{color:var(--muted-foreground);margin:0;font-size:14px;line-height:1.55}.dialog__icon--success{color:var(--success)}.dialog>:is(.inline-alert,.field,.dialog__highlight,.dialog__summary,.fact-lines-limited,.fact-lines),.dialog>:is(form,div:not([class]))>:is(.inline-alert,.field,.dialog__highlight,.dialog__summary,.fact-lines-limited,.fact-lines){margin-block:20px}.dialog__highlight{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.dialog__highlight span{color:var(--muted-foreground);font-size:13px;font-weight:600}.dialog__highlight strong{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-family:Archivo,"Source Sans 3",system-ui,sans-serif;font-size:26px}.dialog__highlight--critical strong{color:var(--danger)}.dialog__highlight--code strong{color:var(--code);letter-spacing:.02em}.dialog__summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;display:grid}.dialog__summary div{min-width:0}.dialog__summary dt{color:var(--muted-foreground);margin:0 0 4px;font-size:12px;font-weight:600}.dialog__summary dd{overflow-wrap:anywhere;margin:0;font-size:14px;font-weight:600}.dialog__actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}@media(max-width:480px){.dialog-scrim{padding:12px}.dialog{padding:20px}.dialog__summary{grid-template-columns:minmax(0,1fr)}.dialog__actions{flex-direction:column-reverse}.dialog__actions .button{width:100%}}@keyframes dialog-fade{0%{opacity:0}to{opacity:1}}.form-dialog{width:min(640px,100%)}.form-dialog__body{gap:14px;max-height:58vh;margin-top:22px;margin-right:-14px;padding:2px 14px 2px 2px;display:grid;overflow-y:auto}.form-dialog .icon-picker{grid-template-columns:repeat(auto-fill,minmax(46px,1fr))}@media(max-height:700px){.dialog .form-dialog__body,.dialog .recipe-dialog__body,.dialog .purchase-form-dialog__body,.dialog .receive-movement__lines{max-height:none;overflow-y:visible}.dialog.purchase-form-dialog{max-height:none}}.not-found{background:var(--background);place-items:center;min-height:100dvh;padding:48px clamp(18px,3vw,34px);display:grid}.not-found__body{text-align:center;flex-direction:column;align-items:center;max-width:46ch;display:flex}.not-found__mark{border:1px solid var(--border-medium);border-radius:var(--radius);background:var(--surface-strong);width:52px;height:52px;color:var(--muted-foreground);justify-content:center;align-items:center;display:inline-flex}.not-found .view-band__eyebrow{margin:22px 0 0}.not-found h1{letter-spacing:-.02em;text-wrap:balance;margin:6px 0 0;font-size:clamp(25px,2.1vw,32px);line-height:1.18}.not-found p{color:var(--muted-foreground);text-wrap:balance;margin:10px 0 0;line-height:1.55}.not-found .button{margin-top:28px}.auth-split{background:var(--background);grid-template-columns:minmax(0,1fr);min-height:100dvh;display:grid}.auth-split__theme{z-index:10;position:fixed;top:20px;right:20px}.auth-side{--auth-pad-block:72px;--auth-symbol:61px;--auth-wordmark:31px;--auth-title:29px;--auth-gap:24px;--auth-form-gap:20px;--auth-control-font:18px;padding:var(--auth-pad-block) clamp(22px,4vw,56px);flex-direction:column;justify-content:center;display:flex;position:relative}.auth-side__signature{color:var(--muted-foreground);text-align:center;margin:0;font-size:12px;position:absolute;bottom:26px;left:0;right:0}.auth-side__inner{gap:var(--auth-gap);flex-direction:column;width:min(442px,100%);margin:0 auto;display:flex}.auth-side__inner .brand-block{align-self:center;gap:15px}.auth-side__inner .brand-block__symbol{width:var(--auth-symbol);height:var(--auth-symbol);flex:0 0 var(--auth-symbol)}.auth-side__inner .wordmark{font-size:var(--auth-wordmark)}.auth-side__head{flex-direction:column;gap:7px;display:flex}.auth-side__head h1{font-size:var(--auth-title);letter-spacing:-.02em;margin:0}.auth-side__head p{color:var(--muted-foreground);margin:0;font-size:15px}.auth-side__form{gap:var(--auth-form-gap);flex-direction:column;display:flex}.auth-side__inner .field{gap:7px}.auth-side__inner .field__label{font-size:14px}.auth-side__inner .field__input{min-height:48px;font-size:var(--auth-control-font);border-radius:11px;padding:10px 14px}.auth-side__inner .field__input--with-action{padding-right:53px}.auth-side__inner .field__action{flex:0 0 40px;width:40px;height:40px;right:4px}.auth-side__inner .field__help,.auth-side__inner .field__error{font-size:14px}.auth-side__inner .field__error .icon{width:18px;height:18px}.auth-side__inner .inline-alert{padding:15px 18px;font-size:15px}.auth-side__inner .button{min-height:48px;font-size:var(--auth-control-font);border-radius:14px;padding:11px 18px}.auth-side__inner .button .icon,.auth-side__inner .inline-alert .icon,.auth-side__inner .field__action .icon{width:22px;height:22px}.auth-side__inner .mini-loader span{width:4px;height:14px}@media(max-width:720px),(max-height:700px){.auth-side{--auth-pad-block:40px;--auth-symbol:48px;--auth-wordmark:26px;--auth-title:24px;--auth-gap:18px;--auth-form-gap:16px;--auth-control-font:16px}}@media(max-height:700px){.auth-side{--auth-pad-block:24px}.auth-side__signature{margin-top:24px;position:static}}.auth-media{border-left:1px solid var(--divider);background:var(--sidebar);flex-direction:column;justify-content:flex-end;padding:clamp(26px,2.6vw,40px) clamp(32px,3.4vw,56px) clamp(30px,3vw,46px);display:none;position:relative;overflow:hidden}.auth-media__lienzo{min-height:180px;color:var(--foreground);transform-origin:50%;flex:1;margin-bottom:14px;display:block;position:relative;transform:translate(35%,30%)scale(1.6)}.auth-media__lienzo svg{width:100%;height:100%;display:block;position:absolute;inset:0}.auth-media__texto{flex-direction:column;gap:12px;max-width:34ch;display:flex;position:relative}.auth-media__claim{letter-spacing:-.02em;text-wrap:balance;margin:0;font-size:clamp(25px,2.1vw,32px);line-height:1.18}.auth-media__description{color:var(--muted-foreground);margin:0;font-size:15px;line-height:1.55}.auth-media__modules{max-width:30ch;margin:16px 0 0;padding:0;list-style:none;position:relative}.auth-media__modules li{align-items:center;gap:12px;min-height:42px;font-size:14px;font-weight:600;display:flex}.auth-media__modules li+li{border-top:1px solid var(--divider)}.auth-media__modules .icon{color:var(--muted-foreground)}@media(min-width:1024px){.auth-split{grid-template-columns:1fr 1fr}.auth-media{display:flex}}.wordmark{color:var(--foreground);letter-spacing:-.03em;margin:0;font-family:Archivo,"Source Sans 3",system-ui,sans-serif;font-size:20px;font-weight:700}.wordmark__accent{color:var(--brand)}.brand-block{flex:none;align-items:center;gap:12px;min-height:64px;display:flex}.brand-block__symbol{flex:0 0 40px;place-items:center;width:40px;height:40px;display:grid;overflow:hidden}.brand-block__symbol-image{object-fit:contain;transform-origin:50%;grid-area:1/1;width:100%;height:100%;display:block;transform:scale(2.15)}.brand-block__symbol-image--on-dark,[data-theme=dark] .brand-block__symbol-image--on-light{display:none}[data-theme=dark] .brand-block__symbol-image--on-dark{display:block}.brand-block__copy>span{color:var(--muted-foreground);margin-top:2px;font-size:12px;display:block}.app-shell{grid-template:"topbar topbar"64px"sidebar workspace"minmax(0,1fr)/268px minmax(0,1fr);min-height:100dvh;display:grid}.topbar{z-index:30;border-bottom:1px solid var(--divider);grid-area:topbar;align-items:center;gap:12px;min-height:64px;padding:0 clamp(18px,3vw,34px) 0 0;display:flex;position:sticky;top:0}@supports (color:color-mix(in lab,red,red)){.topbar{border-bottom:1px solid color-mix(in srgb,var(--divider) 48%,transparent)}}.topbar{background:var(--header)}@supports (color:color-mix(in lab,red,red)){.topbar{background:color-mix(in srgb,var(--header) 96%,transparent)}}.topbar{color:var(--foreground);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.topbar .brand-block{flex:0 0 268px;width:268px;padding:12px 22px}.module-nav{scrollbar-width:none;flex:1;align-items:center;gap:6px;min-width:0;min-height:64px;padding-left:16px;display:flex;overflow-x:auto}.module-nav::-webkit-scrollbar{display:none}.module-tab{min-height:64px;color:var(--muted-foreground);cursor:pointer;white-space:nowrap;transition:color var(--motion),background var(--motion);background:0 0;border:0;border-radius:0;flex:none;align-items:center;gap:9px;padding:8px 13px;font-weight:600;display:inline-flex;position:relative}.module-tab:hover{color:var(--foreground);background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.module-tab:hover{background:color-mix(in srgb,var(--foreground) 6%,transparent)}}.module-tab[aria-current=true]{color:var(--brand)}.module-tab[aria-current=true]:after{background:var(--brand);content:"";border-radius:3px 3px 0 0;height:3px;position:absolute;bottom:0;left:10px;right:10px}.module-tab .icon{width:18px;height:18px}.topbar__actions{flex:none;align-items:center;gap:9px;padding-left:8px;display:flex}.sidebar{top:var(--topbar-height);z-index:20;height:calc(100vh - var(--topbar-height));height:calc(100dvh - var(--topbar-height));background:var(--sidebar);color:var(--foreground);flex-direction:column;grid-area:sidebar;display:flex;position:sticky}.sidebar__scroll{flex:1;padding:16px 12px 24px;overflow-y:auto}.sidebar__group-title{color:var(--muted-foreground);letter-spacing:.04em;text-transform:uppercase;margin:0 0 8px 12px;font-size:12px;font-weight:600}.nav-item{border-radius:var(--radius-compact);min-height:44px;color:var(--muted-foreground);transition:color var(--motion),background var(--motion);align-items:center;gap:10px;padding:10px 12px 10px 16px;font-weight:600;text-decoration:none;display:flex;position:relative}.nav-item:hover{color:var(--foreground);background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.nav-item:hover{background:color-mix(in srgb,var(--foreground) 6%,transparent)}}.nav-item[aria-current=page]{color:var(--foreground);background:var(--surface-strong)}@supports (color:color-mix(in lab,red,red)){.nav-item[aria-current=page]{background:color-mix(in srgb,var(--surface-strong) 70%,transparent)}}.nav-item[aria-current=page]:before{background:var(--brand);content:"";border-radius:0 3px 3px 0;width:3px;position:absolute;top:10px;bottom:10px;left:0}.nav-item .icon{width:18px;height:18px}.sidebar__footer{border-top:1px solid var(--divider);align-items:center;gap:10px;padding:15px 14px 15px 18px;display:flex}@supports (color:color-mix(in lab,red,red)){.sidebar__footer{border-top:1px solid color-mix(in srgb,var(--divider) 48%,transparent)}}.sidebar__account{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.avatar{background:var(--brand);width:38px;height:38px;color:var(--foreground);text-transform:uppercase;border-radius:50%;flex:0 0 38px;place-items:center;font-weight:700;display:grid}.user-meta{flex:1;min-width:0}.user-meta strong,.user-meta span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.user-meta strong{color:var(--foreground);font-size:14px}.user-meta span{color:var(--muted-foreground);font-size:12px}.workspace{grid-area:workspace;min-width:0}.menu-toggle,.sidebar__head,.sidebar-scrim{display:none}.sidebar__head{border-bottom:1px solid var(--divider);justify-content:space-between;align-items:center;gap:12px;min-height:64px;padding:0 12px 0 18px}@supports (color:color-mix(in lab,red,red)){.sidebar__head{border-bottom:1px solid color-mix(in srgb,var(--divider) 48%,transparent)}}.app-shell--rail{grid-template-columns:72px minmax(0,1fr)}.app-shell--rail .topbar .brand-block{flex-basis:72px;justify-content:center;width:72px;padding-inline:10px}.app-shell--rail .brand-block__copy{display:none}.app-shell--rail .sidebar__footer{justify-content:center;padding-inline:10px}.app-shell--rail .sidebar__account,.sidebar__list--leaving{display:none}@keyframes sidebar-list-enter{0%{opacity:0;transform:translate(var(--sidebar-list-offset,0))}}@keyframes sidebar-list-leave{to{opacity:0}}@media(min-width:721px){.sidebar__list--enter{animation:sidebar-list-enter var(--motion-panel)}}@media(min-width:721px)and (max-width:1360px){.sidebar__list--enter{--sidebar-list-offset:-8px}}@media(min-width:1361px){.app-shell{transition:grid-template-columns var(--motion-panel)}.topbar .brand-block{white-space:nowrap;transition:width var(--motion-panel),flex-basis var(--motion-panel),padding var(--motion-panel);overflow:hidden}.topbar .brand-block__copy{transition:opacity var(--motion-panel),visibility var(--motion-panel)}.app-shell--rail .topbar .brand-block{justify-content:flex-start;padding-inline:16px}.app-shell--rail .topbar .brand-block__copy{opacity:0;visibility:hidden;display:block}.sidebar__scroll{overflow-x:hidden}.sidebar__group-title,.nav-item__label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar__list--leaving{animation:sidebar-list-leave var(--motion-panel) forwards;display:block}.sidebar__footer{justify-content:flex-end;position:relative;overflow:hidden}.sidebar__account{width:182px;transition:opacity var(--motion-panel),visibility var(--motion-panel);inset-block:0;position:absolute;left:18px}.app-shell--rail .sidebar__footer{justify-content:flex-end;padding-inline:18px 14px}.app-shell--rail .sidebar__account{opacity:0;visibility:hidden;display:flex}}.view{--view-gutter:clamp(18px, 3vw, 42px);padding-bottom:54px}.view-band{padding:24px var(--view-gutter);border-bottom:1px solid var(--divider)}.view-band__eyebrow{color:var(--brand);letter-spacing:.13em;text-transform:uppercase;margin:0 0 6px;font-size:12px;font-weight:700}.view-band h1{letter-spacing:-.02em;margin:0;font-size:clamp(24px,3vw,32px)}.view-band p{max-width:68ch;color:var(--muted-foreground);margin:8px 0 0}.view-band__layout{justify-content:space-between;align-items:center;gap:24px;display:flex}.view-band__layout>.button{flex:none}.view-backlink{border-radius:var(--radius-compact);color:var(--muted-foreground);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;margin:0 0 10px -6px;padding:6px 10px 6px 6px;font-size:13px;display:inline-flex}.view-backlink:hover{background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.view-backlink:hover{background:color-mix(in srgb,var(--foreground) 6%,transparent)}}.view-backlink:hover{color:var(--foreground)}.view-backlink:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.view-workspace{padding:24px var(--view-gutter)}.badge{border-radius:var(--radius-compact);background:var(--surface-strong);min-height:27px;color:var(--muted-foreground);white-space:nowrap;align-items:center;gap:5px;padding:4px 9px;font-size:12px;font-weight:600;display:inline-flex}.badge--brand{background:var(--brand)}@supports (color:color-mix(in lab,red,red)){.badge--brand{background:color-mix(in srgb,var(--brand) 15%,var(--surface))}}.badge--brand{color:var(--brand)}@supports (color:color-mix(in lab,red,red)){.badge--brand{color:color-mix(in srgb,var(--brand) 76%,var(--foreground))}}.badge--info{background:var(--info)}@supports (color:color-mix(in lab,red,red)){.badge--info{background:color-mix(in srgb,var(--info) 13%,var(--surface))}}.badge--info{color:var(--info)}.badge--dispatch{background:var(--dispatch)}@supports (color:color-mix(in lab,red,red)){.badge--dispatch{background:color-mix(in srgb,var(--dispatch) 13%,var(--surface))}}.badge--dispatch{color:var(--dispatch)}.badge--progress{background:var(--progress)}@supports (color:color-mix(in lab,red,red)){.badge--progress{background:color-mix(in srgb,var(--progress) 14%,var(--surface))}}.badge--progress{color:var(--progress)}@supports (color:color-mix(in lab,red,red)){.badge--progress{color:color-mix(in srgb,var(--progress) 65%,var(--foreground))}}.badge--success{background:var(--success)}@supports (color:color-mix(in lab,red,red)){.badge--success{background:color-mix(in srgb,var(--success) 13%,var(--surface))}}.badge--success{color:var(--success)}.badge--danger{background:var(--danger)}@supports (color:color-mix(in lab,red,red)){.badge--danger{background:color-mix(in srgb,var(--danger) 13%,var(--surface))}}.badge--danger{color:var(--danger)}.progress-track{border-radius:var(--radius-compact);background:var(--surface-strong);height:9px;box-shadow:inset 0 1px 4px var(--shadow-dark),inset 0 -1px 0 var(--shadow-light);display:block;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.progress-track{box-shadow:inset 0 1px 4px color-mix(in srgb,var(--shadow-dark) 24%,transparent),inset 0 -1px color-mix(in srgb,var(--shadow-light) 24%,transparent)}}.progress-bar{border-radius:inherit;background:var(--progress);height:100%;transition:width var(--motion);display:block}.toolbar{margin:24px var(--view-gutter) 0;flex-wrap:wrap;align-items:flex-end;gap:12px;padding:16px;display:flex}.toolbar .field{flex:100%}.toolbar>.view-toolbar__select,.toolbar>.button{border-radius:10px;flex:none;min-width:152px;height:44px;padding-block:0}.view-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;padding:14px;display:flex}.view-toolbar__search{flex:260px;min-width:200px;position:relative}.view-toolbar__search svg{color:var(--muted-foreground);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.view-toolbar__search input,.view-toolbar__select{border:1px solid var(--border-medium);background:var(--surface);width:100%;min-height:44px;color:var(--foreground);box-shadow:var(--shadow-raised-compact);border-radius:10px;padding:9px 12px;font-size:14px}.view-toolbar__search input{padding-left:38px}.view-toolbar__search input::placeholder{color:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.view-toolbar__search input::placeholder{color:color-mix(in srgb,var(--muted-foreground) 70%,transparent)}}.view-toolbar__select{cursor:pointer;width:auto}.view-toolbar__hint{color:var(--muted-foreground);flex:100%;margin:0;font-size:12px}.warehouses-view-switch-row{justify-content:flex-end;margin-bottom:12px;display:flex}@media(max-width:720px){.view-toolbar>:not(.view-toolbar__hint),.recipes-toolbar>:not(.sr-only){flex:100%;min-width:0;max-width:none}.view-toolbar__select,.recipes-toolbar select{width:100%}}.view-pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 18px;padding-top:4px;display:flex}.view-pagination--panel{border-top:1px solid var(--divider);padding:12px 20px}.view-pagination p,.view-pagination__controls span{color:var(--muted-foreground);margin:0;font-size:13px}.view-pagination__controls{align-items:center;gap:12px;display:flex}@media(max-width:720px){.view-pagination{flex-direction:column;align-items:stretch}.view-pagination__controls{justify-content:space-between}.view-pagination__controls .button{min-height:44px}}.data-panel{padding:0;overflow:hidden}.data-panel__head{border-bottom:1px solid var(--divider);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;padding:16px;display:flex}.data-panel__head h2{letter-spacing:-.02em;align-items:center;gap:8px;margin:0;font-size:16px;display:flex}.data-panel__head h2 svg{color:var(--muted-foreground)}.data-panel__head p{color:var(--muted-foreground);margin:4px 0 0;font-size:13px}.data-panel__count{color:var(--muted-foreground);font-variant-numeric:tabular-nums;font-size:13px}.data-panel .data-state{background:0 0;border:0;border-radius:0;min-height:152px;padding:24px 16px}.data-table-scroll{overflow-x:auto}.data-table-scroll:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.data-table-scroll[data-overflow-start],.data-table-scroll[data-overflow-end]{--scroll-fade-start:0px;--scroll-fade-end:0px;-webkit-mask-image:linear-gradient(to right,transparent,currentColor var(--scroll-fade-start),currentColor calc(100% - var(--scroll-fade-end)),transparent);mask-image:linear-gradient(to right,transparent,currentColor var(--scroll-fade-start),currentColor calc(100% - var(--scroll-fade-end)),transparent)}.data-table-scroll[data-overflow-start]{--scroll-fade-start:32px}.data-table-scroll[data-overflow-end]{--scroll-fade-end:32px}.data-table-scroll[data-limited] thead th{z-index:1;position:sticky;top:0}.data-table-scroll[data-overflow-bottom]{-webkit-mask-image:linear-gradient(currentColor calc(100% - 32px),#0000);mask-image:linear-gradient(currentColor calc(100% - 32px),#0000)}.data-table-scroll[data-overflow-bottom]:is([data-overflow-start],[data-overflow-end]){-webkit-mask-image:linear-gradient(to right,transparent,currentColor var(--scroll-fade-start),currentColor calc(100% - var(--scroll-fade-end)),transparent),linear-gradient(to bottom,currentColor calc(100% - 32px),transparent);mask-image:linear-gradient(to right,transparent,currentColor var(--scroll-fade-start),currentColor calc(100% - var(--scroll-fade-end)),transparent),linear-gradient(to bottom,currentColor calc(100% - 32px),transparent);-webkit-mask-composite:source-in;mask-composite:intersect}.data-table{border-collapse:collapse;text-align:left;width:100%;font-size:14px}.data-table th,.data-table td{border-bottom:1px solid var(--divider);white-space:nowrap;height:48px;padding:10px 20px}.data-table th{background:var(--surface-strong);color:var(--muted-foreground);letter-spacing:.05em;text-transform:uppercase;font-size:12px;font-weight:700}.data-table tbody tr:last-child td{border-bottom:0}.data-table th.data-table__icon-head,.data-table td.data-table__icon-cell{width:62px;padding-right:0}.data-table th.data-table__num,.data-table td.data-table__num{text-align:right;font-variant-numeric:tabular-nums}.data-table th.data-table__sort-head{transition:background var(--motion);position:relative}.data-table th.data-table__sort-head:has(.data-table__sort:hover){background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.data-table th.data-table__sort-head:has(.data-table__sort:hover){background:color-mix(in srgb,var(--foreground) 6%,var(--surface-strong))}}.data-table__sort{color:inherit;cursor:pointer;letter-spacing:inherit;text-align:inherit;text-transform:inherit;background:0 0;border:0;align-items:center;gap:6px;padding:0;display:inline-flex}.data-table__sort:after{content:"";position:absolute;inset:0}.data-table__sort .icon{width:14px;height:14px}.data-table__sort:hover,.data-table th[aria-sort] .data-table__sort{color:var(--foreground)}.data-table__sort:focus-visible{outline:none}.data-table__sort:focus-visible:after{outline:2px solid var(--brand);outline-offset:-2px}.data-table__muted{color:var(--muted-foreground)}.data-table__row{cursor:pointer;transition:background var(--motion)}.data-table__row:hover{background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.data-table__row:hover{background:color-mix(in srgb,var(--foreground) 5%,transparent)}}.data-table__row--selected{background:var(--code)}@supports (color:color-mix(in lab,red,red)){.data-table__row--selected{background:color-mix(in srgb,var(--code) 14%,var(--surface))}}.data-table__row--selected{box-shadow:inset 3px 0 0 var(--code)}.entity-icon{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);width:34px;height:34px;color:var(--foreground);flex:0 0 34px;place-items:center;display:inline-grid}.entity-code{color:var(--code);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}.data-table.projects-table{min-width:980px;position:relative}.data-table.projects-table th,.data-table.projects-table td{padding-left:14px;padding-right:14px}.data-table.projects-table tbody+tbody tr:first-child td{border-top:1px solid var(--divider)}.data-table.projects-table th.projects-table__toggle-head,.data-table.projects-table td.projects-table__toggle-cell,.data-table.projects-table td.projects-table__guide{width:60px;padding-left:12px;padding-right:4px}.data-table.projects-table th.projects-table__code-head,.data-table.projects-table td.projects-table__code-cell{width:112px}.projects-table__toggle{border-radius:var(--radius-compact);width:40px;height:40px;color:var(--muted-foreground);cursor:pointer;background:0 0;border:0;place-items:center;margin:-6px 0;display:inline-grid}.projects-table__toggle:hover{background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.projects-table__toggle:hover{background:color-mix(in srgb,var(--foreground) 6%,transparent)}}.projects-table__toggle:hover{color:var(--foreground)}.projects-table__toggle:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.projects-table__chevron{transition:transform var(--motion)}.projects-table__toggle[aria-expanded=false] .projects-table__chevron{transform:rotate(-90deg)}.data-table.projects-table td.projects-table__name{text-overflow:ellipsis;min-width:220px;max-width:34ch;overflow:hidden}.data-table.projects-table td.projects-table__name strong{font-weight:600}.data-table.projects-table td small{color:var(--muted-foreground);font-size:12px;display:block}.data-table.projects-table td.projects-table__contract{min-width:180px}.data-table.projects-table td.projects-table__period{font-variant-numeric:tabular-nums;font-size:13px}.projects-table__meter{align-items:center;gap:10px;min-width:160px;display:flex}.projects-table__meter .progress-track{flex:1}.projects-table__meter strong{font-variant-numeric:tabular-nums;text-align:right;min-width:48px;font-size:13px}.data-table.projects-table th.projects-table__actions-head,.data-table.projects-table td.projects-table__actions{text-align:right;width:1%;padding-left:8px}.data-table.projects-table td.projects-table__actions .icon-button{flex-basis:40px;width:40px;height:40px;margin:-6px 0}.data-table.projects-table tr.projects-table__lot td{border-bottom-color:var(--divider);height:44px;padding-top:6px;padding-bottom:6px}@supports (color:color-mix(in lab,red,red)){.data-table.projects-table tr.projects-table__lot td{border-bottom-color:color-mix(in srgb,var(--divider) 60%,transparent)}}.data-table.projects-table tr.projects-table__lot td{background:var(--surface-strong)}@supports (color:color-mix(in lab,red,red)){.data-table.projects-table tr.projects-table__lot td{background:color-mix(in srgb,var(--surface-strong) 30%,var(--surface))}}.data-table.projects-table td.projects-table__name--lot{padding-left:36px}.data-table.projects-table td.projects-table__lot-empty{color:var(--muted-foreground)}.projects-table__lot-link{color:inherit;text-decoration:underline}@supports (color:color-mix(in lab,red,red)){.projects-table__lot-link{-webkit-text-decoration-color:color-mix(in srgb,currentColor 40%,transparent);text-decoration-color:color-mix(in srgb,currentColor 40%,transparent)}}.projects-table__lot-link{text-underline-offset:3px}.projects-table__lot-link:hover{text-decoration-color:currentColor}.data-table.projects-table td.projects-table__guide{position:relative}.data-table.projects-table td.projects-table__guide:before,.data-table.projects-table td.projects-table__guide:after{content:"";position:absolute;left:31px}.data-table.projects-table td.projects-table__guide:before{border-left:2px solid var(--divider);top:0;bottom:0}.data-table.projects-table tr.projects-table__lot--last td.projects-table__guide:before{bottom:50%}.data-table.projects-table td.projects-table__guide:after{border-top:2px solid var(--divider);width:14px;top:50%}.button.projects-table__add-lot{min-height:36px;color:var(--muted-foreground);border-style:dashed;padding:4px 12px}.button.projects-table__add-lot:hover:not(:disabled){color:var(--foreground)}.lot-form__context{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);align-items:center;gap:12px;margin-bottom:24px;padding:14px 16px;display:flex}.lot-form__context .icon{color:var(--info)}.lot-form__context span{color:var(--muted-foreground);font-size:12px;font-weight:600;display:block}.lot-form__context strong{margin-top:2px;font-size:15px;display:block}.form-dialog .lot-form__context{margin-bottom:0}.project-form__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:21px 18px;display:grid}.project-form__wide{grid-column:1/-1}.material-icon{display:block}.materials-split{grid-template-columns:minmax(0,1fr) 380px;align-items:start;gap:16px;display:grid}.materials-split__main{gap:16px;min-width:0;display:grid}.materials-table__unit{border-radius:var(--radius-compact);background:var(--surface-strong);color:var(--muted-foreground);padding:4px 9px;font-size:12px;font-weight:600;display:inline-block}.data-table .materials-catalog__name{align-items:center;gap:8px;display:inline-flex}.inactive-material-tag--inline{vertical-align:middle;margin-left:8px}.row-actions{gap:6px;display:inline-flex}.row-action{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface);width:36px;height:36px;box-shadow:var(--shadow-raised-compact);color:var(--muted-foreground);cursor:pointer;transition:transform var(--motion),box-shadow var(--motion),color var(--motion);place-items:center;padding:0;display:grid}.row-action:hover{box-shadow:var(--shadow-raised-control);color:var(--foreground);transform:translateY(-1px)}.row-action:active{box-shadow:var(--shadow-inset-control);transform:translateY(1px)}.row-action--danger:hover{color:var(--danger)}.material-panel{top:calc(var(--topbar-height) + 16px);max-height:calc(100vh - var(--topbar-height) - 32px);max-height:calc(100dvh - var(--topbar-height) - 32px);position:sticky;overflow:hidden auto}.material-panel__head{border-bottom:1px solid var(--divider);align-items:center;gap:12px;padding:16px;display:flex}.material-panel__head h2{letter-spacing:-.02em;margin:0 0 3px;font-size:17px}.material-panel__head p{color:var(--muted-foreground);margin:0;font-size:12px}.material-panel__icon{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);width:44px;height:44px;color:var(--foreground);flex:0 0 44px;place-items:center;display:inline-grid}.material-panel__body{gap:14px;padding:16px;display:grid}.material-panel__actions{border-top:1px solid var(--divider);background:var(--surface-strong);flex-wrap:wrap;gap:8px;padding:14px 16px;display:flex}.material-panel__submit{margin-left:auto}.material-panel__actions--stacked{flex-flow:column;align-items:stretch}.material-panel__actions-group{flex-wrap:wrap;gap:8px;display:flex}.material-panel__actions-group>.button{flex:140px}.material-panel .data-state{min-height:200px;box-shadow:none;border:0}.material-readonly{border:1px solid var(--divider);background:var(--surface-strong);min-height:44px;box-shadow:var(--shadow-inset-control);color:var(--muted-foreground);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;display:flex}.material-readonly b{color:var(--code);font-size:15px}.material-audit{border:1px solid var(--divider);border-radius:var(--radius-compact);background:var(--surface-strong);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.material-audit h3{color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:11px;font-weight:700}.material-audit b{font-size:13px}.material-stock h3{color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;margin:0 0 4px;font-size:11px;font-weight:700}.material-stock>p{color:var(--muted-foreground);margin:0 0 10px;font-size:12px}.material-stock__total{border:1px solid var(--info);align-items:baseline;gap:8px;margin-bottom:10px;padding:14px;display:flex}@supports (color:color-mix(in lab,red,red)){.material-stock__total{border:1px solid color-mix(in srgb,var(--info) 45%,transparent)}}.material-stock__total{border-left:3px solid var(--info);border-radius:var(--radius-compact);background:var(--info)}@supports (color:color-mix(in lab,red,red)){.material-stock__total{background:color-mix(in srgb,var(--info) 8%,var(--surface))}}.material-stock__total b{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-family:Archivo,"Source Sans 3",system-ui,sans-serif;font-size:30px;line-height:1}.material-stock__total span{color:var(--muted-foreground);font-size:13px}.material-stock__total em{color:var(--muted-foreground);text-align:right;margin-left:auto;font-size:11px;font-style:normal}.material-stock__cards{gap:10px;display:grid}.material-stock__card{border:1px solid var(--border-medium);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-raised-compact);gap:8px;padding:12px 14px;display:grid}.material-stock__name{align-items:center;gap:6px;min-width:0;font-size:13px;font-weight:700;display:flex}.material-stock__name .icon{width:14px;height:14px;color:var(--info)}.material-stock__name span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.material-stock__where{color:var(--muted-foreground);margin:-6px 0 0;font-size:11px}.material-stock__figure{align-items:baseline;gap:6px;display:flex}.material-stock__figure b{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-family:Archivo,"Source Sans 3",system-ui,sans-serif;font-size:26px;line-height:1}.material-stock__figure span{color:var(--muted-foreground);font-size:13px}.material-stock__figure em{color:var(--progress);font-variant-numeric:tabular-nums;margin-left:auto;font-size:12px;font-style:normal;font-weight:700}.material-stock__share{height:7px}.material-stock__empty{border:1px dashed var(--divider);border-radius:var(--radius);color:var(--muted-foreground);text-align:center;margin:0;padding:14px;font-size:12px}.unit-combobox{position:relative}.unit-combobox__control{align-items:center;display:flex;position:relative}.unit-combobox__toggle{border-radius:var(--radius-compact);width:36px;height:36px;color:var(--muted-foreground);cursor:pointer;background:0 0;border:0;flex:0 0 36px;place-items:center;display:grid;position:absolute;right:4px}.unit-combobox__toggle:hover{background:var(--surface-strong);color:var(--foreground)}.unit-combobox__control .field__input{padding-right:48px}.unit-combobox__panel{z-index:20;border:1px solid var(--border-medium);border-radius:var(--radius);background:var(--surface);box-shadow:0 -1px 0 var(--shadow-light),0 12px 30px var(--shadow-dark);position:absolute;top:calc(100% - 22px);left:0;right:0;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.unit-combobox__panel{box-shadow:0 -1px color-mix(in srgb,var(--shadow-light) 38%,transparent),0 12px 30px color-mix(in srgb,var(--shadow-dark) 30%,transparent)}}.unit-combobox__list{max-height:216px;margin:0;padding:6px;list-style:none;overflow-y:auto}.unit-combobox__option{border-radius:var(--radius-compact);width:100%;color:var(--foreground);cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;padding:9px 10px;font-size:14px;display:flex}.unit-combobox__option--active{background:var(--surface-strong)}.unit-combobox__option .icon{color:var(--info)}.unit-combobox__empty,.unit-combobox__new{border-top:1px solid var(--divider);color:var(--muted-foreground);align-items:center;gap:6px;margin:0;padding:10px 12px;font-size:12px;display:flex}.unit-combobox__new{background:var(--brand)}@supports (color:color-mix(in lab,red,red)){.unit-combobox__new{background:color-mix(in srgb,var(--brand) 10%,var(--surface))}}.unit-combobox__new{color:var(--brand)}@supports (color:color-mix(in lab,red,red)){.unit-combobox__new{color:color-mix(in srgb,var(--brand) 76%,var(--foreground))}}.unit-combobox__new{font-weight:600}.icon-picker{border:1px solid var(--divider);border-radius:var(--radius);background:var(--surface-strong);grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;padding:8px;display:grid}.icon-picker__option{aspect-ratio:1;border-radius:var(--radius-compact);color:var(--muted-foreground);cursor:pointer;transition:background var(--motion),color var(--motion),box-shadow var(--motion);background:0 0;border:1px solid #0000;place-items:center;padding:0;display:grid}.icon-picker__option:hover{background:var(--surface);box-shadow:var(--shadow-raised-compact);color:var(--foreground)}.icon-picker__option--active{border-color:var(--brand);background:var(--surface);box-shadow:var(--shadow-raised-control);color:var(--foreground)}.material-references{gap:10px;margin:20px 0 0;padding:0;list-style:none;display:grid}.material-references li{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);align-items:center;gap:10px;padding:12px 14px;font-size:13px;display:flex}.material-references .icon{color:var(--info);flex:none}.material-references__name{flex:1;min-width:0}.material-references__quantity{color:var(--muted-foreground);font-variant-numeric:tabular-nums;flex:none}.dialog__icon--danger{color:var(--danger)}@media(max-width:1180px){.materials-split{grid-template-columns:minmax(0,1fr)}.material-panel{max-height:none;position:static;overflow:hidden}}.loader-bar{z-index:50;background:var(--brand);height:3px;position:fixed;top:0;left:0;right:0;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.loader-bar{background:color-mix(in srgb,var(--brand) 20%,transparent)}}.loader-bar:after{background:var(--brand);content:"";width:40%;height:100%;animation:.9s ease-in-out infinite loader-bar-slide;display:block}[data-sonner-toaster]{--normal-bg:var(--surface);--normal-border:var(--border-medium);--normal-text:var(--foreground);--success-bg:var(--success)}@supports (color:color-mix(in lab,red,red)){[data-sonner-toaster]{--success-bg:color-mix(in srgb, var(--success) 10%, var(--surface))}}[data-sonner-toaster]{--success-border:var(--success)}@supports (color:color-mix(in lab,red,red)){[data-sonner-toaster]{--success-border:color-mix(in srgb, var(--success) 45%, transparent)}}[data-sonner-toaster]{--success-text:var(--foreground);--error-bg:var(--danger)}@supports (color:color-mix(in lab,red,red)){[data-sonner-toaster]{--error-bg:color-mix(in srgb, var(--danger) 10%, var(--surface))}}[data-sonner-toaster]{--error-border:var(--danger)}@supports (color:color-mix(in lab,red,red)){[data-sonner-toaster]{--error-border:color-mix(in srgb, var(--danger) 45%, transparent)}}[data-sonner-toaster]{--error-text:var(--foreground);--info-bg:var(--info)}@supports (color:color-mix(in lab,red,red)){[data-sonner-toaster]{--info-bg:color-mix(in srgb, var(--info) 10%, var(--surface))}}[data-sonner-toaster]{--info-border:var(--info)}@supports (color:color-mix(in lab,red,red)){[data-sonner-toaster]{--info-border:color-mix(in srgb, var(--info) 45%, transparent)}}[data-sonner-toaster]{--info-text:var(--foreground);--warning-bg:var(--progress)}@supports (color:color-mix(in lab,red,red)){[data-sonner-toaster]{--warning-bg:color-mix(in srgb, var(--progress) 10%, var(--surface))}}[data-sonner-toaster]{--warning-border:var(--progress)}@supports (color:color-mix(in lab,red,red)){[data-sonner-toaster]{--warning-border:color-mix(in srgb, var(--progress) 45%, transparent)}}[data-sonner-toaster]{--warning-text:var(--foreground);font-family:"Source Sans 3",system-ui,sans-serif}[data-sonner-toast]{border-radius:var(--radius)!important;box-shadow:var(--shadow-raised-control)!important}@keyframes data-state-loading{0%{opacity:.45;transform:translateY(2px)}to{opacity:1;transform:translateY(-2px)}}@keyframes loader-bar-slide{0%{transform:translate(-100%)}to{transform:translate(260%)}}@media(max-width:960px){.topbar .brand-block{padding-inline:16px}.module-tab{justify-content:center;min-width:44px;padding-inline:10px}.module-tab span{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}@media(min-width:721px)and (max-width:1360px){.app-shell{grid-template-columns:72px minmax(0,1fr)}.topbar .brand-block{flex-basis:72px;justify-content:center;width:72px;padding-inline:10px}.topbar .brand-block__copy,.sidebar__group-title,.sidebar__account{display:none}.sidebar__scroll{padding-inline:10px}.nav-item{justify-content:center;gap:0;padding-inline:10px}.nav-item__label{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.nav-item .icon{width:20px;height:20px}.sidebar__footer{justify-content:center;padding-inline:10px}}@media(max-width:720px){.view-band__layout{flex-direction:column;align-items:stretch}.view-band__layout>.button{align-self:flex-start}.project-form__grid{grid-template-columns:1fr}.project-form__wide{grid-column:auto}.toolbar{flex-direction:column;align-items:stretch}.app-shell{--topbar-height:114px;grid-template:"topbar""workspace"minmax(0,1fr)/minmax(0,1fr)}.topbar{flex-wrap:wrap;row-gap:0;padding-right:12px}.topbar .brand-block,.app-shell--rail .topbar .brand-block{flex:0 auto;justify-content:flex-start;width:auto;padding-inline:16px 0}.app-shell--rail .brand-block__copy{display:block}.brand-block__copy>span{display:none}.menu-toggle{width:44px;margin-left:8px;display:inline-flex}.topbar__actions{margin-left:auto}.module-nav{border-top:1px solid var(--divider);flex:1 0 100%;order:3;justify-content:space-around;min-height:48px;padding-left:0}@supports (color:color-mix(in lab,red,red)){.module-nav{border-top:1px solid color-mix(in srgb,var(--divider) 48%,transparent)}}.module-tab{min-height:48px}.sidebar{z-index:45;border-right:1px solid var(--border-medium);width:min(284px,82vw);height:auto;box-shadow:var(--shadow-floating);visibility:hidden;transition:transform var(--motion-panel),visibility var(--motion-panel);position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.app-shell--menu-open .sidebar{visibility:visible;transition:transform var(--motion-panel),visibility 0s;transform:none}.sidebar__head{display:flex}.sidebar__scroll:empty{display:none}.sidebar__footer,.app-shell--rail .sidebar__footer{justify-content:flex-start;margin-top:auto;padding-inline:18px 14px}.app-shell--rail .sidebar__account{display:flex}.app-shell--menu-open .sidebar-scrim{z-index:44;background:var(--scrim);animation:dialog-fade var(--motion-panel);display:block;position:fixed;inset:0}}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.loader-bar:after{width:100%;animation:none}}.recipes-workspace{display:grid}.recipes-toolbar{border:1px solid var(--border-medium);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px;padding:14px;display:flex}.recipes-toolbar__search{flex:260px;min-width:200px;position:relative}.recipes-toolbar__search .icon{color:var(--muted-foreground);position:absolute;top:50%;left:12px;transform:translateY(-50%)}.recipes-toolbar__search input{border:1px solid var(--border-medium);background:var(--surface);width:100%;min-height:44px;color:var(--foreground);box-shadow:var(--shadow-raised-compact);border-radius:10px;padding:9px 12px 9px 38px;font-size:14px}.recipes-toolbar__material{flex:240px;max-width:300px}.recipes-toolbar .material-combobox__input{min-height:44px;padding:9px 12px;font-size:14px}.recipes-toolbar .material-combobox__input.has-icon{padding-left:36px}.recipes-toolbar select{border:1px solid var(--border-medium);background:var(--surface);min-height:44px;color:var(--foreground);box-shadow:var(--shadow-raised-compact);cursor:pointer;border-radius:10px;padding:9px 12px;font-size:14px}.recipes-count{color:var(--muted-foreground);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:6px 0 30px;font-size:13px;display:flex}.recipes-count p{margin:0}.recipes-count__tools{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.recipes-count__toggle{gap:10px;min-height:36px;padding:6px 16px;font-size:13px}.recipe-columns{align-items:flex-start;gap:16px;display:flex}.recipe-column{flex-direction:column;flex:1 1 0;gap:34px;min-width:0;display:flex}.recipe-folder{border:1px solid var(--border-medium);border-radius:0 var(--radius) var(--radius) var(--radius);background:var(--surface);box-shadow:var(--shadow-raised-compact);transition:box-shadow var(--motion),border-color var(--motion);margin-top:30px;position:relative}.recipe-folder[aria-expanded=true]{border-color:var(--code)}@supports (color:color-mix(in lab,red,red)){.recipe-folder[aria-expanded=true]{border-color:color-mix(in srgb,var(--code) 45%,var(--border-medium))}}.recipe-folder[aria-expanded=true]{box-shadow:var(--shadow-raised-control)}.recipe-folder__tab{border:1px solid var(--border-medium);border-radius:var(--radius-compact) var(--radius-compact) 0 0;background:var(--surface-strong);min-height:30px;color:var(--code);letter-spacing:.04em;border-bottom:0;align-items:center;gap:7px;padding:6px 14px 6px 12px;font-size:11px;font-weight:700;display:inline-flex;position:absolute;top:-30px;left:-1px}.recipe-folder[aria-expanded=true] .recipe-folder__tab{border-color:var(--code)}@supports (color:color-mix(in lab,red,red)){.recipe-folder[aria-expanded=true] .recipe-folder__tab{border-color:color-mix(in srgb,var(--code) 45%,var(--border-medium))}}.recipe-folder[aria-expanded=true] .recipe-folder__tab{background:var(--surface)}.recipe-folder__summary{border-radius:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;width:100%;padding:14px 14px 12px;display:grid}.recipe-folder__name{-webkit-line-clamp:2;letter-spacing:-.01em;-webkit-box-orient:vertical;grid-column:1;min-height:2.6em;margin:0;font-size:15px;line-height:1.3;display:-webkit-box;overflow:hidden}.recipe-folder__description{-webkit-line-clamp:3;min-height:4.35em;color:var(--muted-foreground);-webkit-box-orient:vertical;grid-column:1;margin:0;font-size:12px;line-height:1.45;display:-webkit-box;overflow:hidden}.recipe-folder__chevron{border-radius:var(--radius-compact);width:26px;height:26px;color:var(--muted-foreground);transition:transform var(--motion),background var(--motion);grid-area:1/2/span 2;align-self:center;place-items:center;display:grid}.recipe-folder[aria-expanded=true] .recipe-folder__description{min-height:0;display:block;overflow:visible}.recipe-folder[aria-expanded=true] .recipe-folder__chevron{background:var(--surface-strong);color:var(--code);transform:rotate(180deg)}.recipe-folder__strip{align-items:center;gap:8px;padding:0 14px 14px;display:flex}.recipe-folder__icons{flex:none;gap:6px;display:flex}.icon-chip{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);width:26px;height:26px;color:var(--foreground);place-items:center;display:grid}.icon-chip--more{color:var(--muted-foreground);font-size:11px;font-weight:700}.recipe-folder__count{color:var(--muted-foreground);white-space:nowrap;margin-left:auto;font-size:12px}.recipe-folder__body{border-top:1px solid var(--divider);padding:12px 14px 6px}.recipe-folder__body h4{color:var(--muted-foreground);letter-spacing:.07em;text-transform:uppercase;margin:0 0 8px;font-size:10px;font-weight:700}.composition-list{grid-template-columns:minmax(0,1fr);gap:2px;margin:0 0 10px;padding:0;list-style:none;display:grid}.composition-list li{border-radius:var(--radius-compact);align-items:center;gap:9px;min-width:0;padding:6px 8px;font-size:13px;display:flex}.composition-list .inactive-material-tag--inline{flex:none}.composition-list li:nth-child(odd){background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.composition-list li:nth-child(odd){background:color-mix(in srgb,var(--foreground) 4%,transparent)}}.composition-list__name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.composition-list__code{color:var(--code);margin-right:6px;font-size:11px;font-weight:700}.composition-list__qty{color:var(--progress);font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;margin-left:auto;font-size:13px;font-weight:700}.composition-list__qty span{color:var(--muted-foreground);font-size:11px;font-weight:400}.recipe-folder__actions{border-top:1px solid var(--divider);border-radius:0 0 var(--radius) var(--radius);background:var(--surface-strong);align-items:center;gap:8px;padding:10px 14px;display:flex}@supports (color:color-mix(in lab,red,red)){.recipe-folder__actions{background:color-mix(in srgb,var(--surface-strong) 45%,transparent)}}.recipe-folder__meta{color:var(--muted-foreground);margin-right:auto;font-size:11px}.recipes-pagination{color:var(--muted-foreground);white-space:nowrap;align-items:center;gap:12px;font-size:13px;display:flex}.recipes-pagination__step{place-items:center;width:32px;min-width:32px;min-height:32px;padding:0;display:grid}@media(hover:none)and (pointer:coarse){.recipes-pagination__step{width:44px;min-width:44px;min-height:44px}}.recipe-dialog{width:min(720px,100%)}.recipe-dialog__body{gap:14px;max-height:62vh;padding:18px;display:grid;overflow-y:auto}.recipe-readonly{border:1px solid var(--divider);background:var(--surface-strong);min-height:44px;color:var(--muted-foreground);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;font-size:14px;display:flex}.recipe-readonly b{color:var(--foreground);font-size:15px}.composition__head{color:var(--muted-foreground);justify-content:space-between;align-items:center;gap:10px;font-size:12px;display:flex}.lines{gap:8px;display:grid}.line-entry{gap:6px;display:grid}.line-entry--invalid .material-combobox__input,.line-entry--invalid .quantity-input__field{border-color:var(--danger)}.line{grid-template-columns:minmax(0,1fr) 116px 40px;align-items:center;gap:8px;display:grid}.quantity-input{align-items:center;display:flex;position:relative}.quantity-input__field{border:1px solid var(--border-medium);background:var(--surface);width:100%;min-height:42px;color:var(--foreground);box-shadow:var(--shadow-raised-compact);font-variant-numeric:tabular-nums;text-align:right;border-radius:10px;padding:8px 30px 8px 10px;font-size:13px}.quantity-input__spin{gap:1px;display:grid;position:absolute;right:5px}.quantity-input__arrow{border-radius:var(--radius-compact);width:22px;height:17px;color:var(--muted-foreground);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;transition:color .18s cubic-bezier(.2,.8,.2,1);display:grid}.quantity-input__arrow:hover{color:var(--foreground)}.line__remove{place-items:center;width:40px;min-width:40px;height:42px;padding:0;display:grid}.lines-empty{border:1px dashed var(--divider);border-radius:var(--radius);color:var(--muted-foreground);text-align:center;margin:0;padding:16px;font-size:13px}.recipe-dialog__add{justify-self:start}.lines-add{border:1px dashed var(--muted-foreground);justify-content:center;align-items:center;gap:8px;width:100%;min-height:56px;padding:14px;display:flex}@supports (color:color-mix(in lab,red,red)){.lines-add{border:1px dashed color-mix(in srgb,var(--muted-foreground) 55%,transparent)}}.lines-add{border-radius:var(--radius);color:var(--muted-foreground);cursor:pointer;font:inherit;transition:border-color var(--motion),background var(--motion),color var(--motion);background:0 0;font-weight:600}.lines-add:hover{border-color:var(--muted-foreground);background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.lines-add:hover{background:color-mix(in srgb,var(--foreground) 4%,transparent)}}.lines-add:hover{color:var(--foreground)}.lines-add:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.lines-add:disabled{cursor:not-allowed;opacity:.48}.lines-add:only-child,.lines-add--empty{min-height:92px}.lines-add--empty{flex-direction:column;gap:4px}.lines-add--empty small{font-size:12px;font-weight:400}@media(max-width:720px){.recipe-columns{flex-direction:column}}.material-combobox{min-width:0;position:relative}.material-combobox__control{align-items:center;display:flex;position:relative}.material-combobox__icon{color:var(--muted-foreground);pointer-events:none;place-items:center;display:grid;position:absolute;left:10px}.material-combobox__input{border:1px solid var(--border-medium);background:var(--surface);width:100%;min-height:42px;color:var(--foreground);box-shadow:var(--shadow-raised-compact);border-radius:10px;padding:8px 10px;font-size:13px}.material-combobox__input.has-icon{padding-left:34px}.material-combobox__input.has-clear{padding-right:32px}.material-combobox__input.has-tag{padding-right:84px}.material-combobox__tag{pointer-events:none;position:absolute;right:8px}.material-combobox__clear{border-radius:var(--radius-compact);width:24px;height:24px;color:var(--muted-foreground);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;right:6px}.material-combobox__clear:hover{color:var(--foreground)}.material-combobox__reset{border:0;border-top:1px solid var(--divider);width:100%;color:var(--muted-foreground);cursor:pointer;text-align:left;background:0 0;border-radius:0;align-items:center;gap:6px;margin-top:4px;padding:7px 9px;font-size:12px;display:flex}.material-combobox__reset:hover{color:var(--foreground)}.material-combobox__input::placeholder{color:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.material-combobox__input::placeholder{color:color-mix(in srgb,var(--muted-foreground) 70%,transparent)}}.material-combobox__panel{z-index:20;width:min(320px,calc(100vw - 32px),var(--panel-room,320px));min-width:min(max(100%,280px),var(--panel-room,100vw));border:1px solid var(--border-medium);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-floating);padding:6px;scroll-margin-block:14px;position:absolute;top:calc(100% + 4px);left:0}.material-combobox__list{gap:2px;max-height:232px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.material-combobox__list>li{min-width:0}.material-combobox__option{border-radius:var(--radius-compact);width:100%;min-height:52px;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:7px 9px;font-size:13px;display:flex}.material-combobox__option:disabled{cursor:not-allowed;opacity:.45}.material-combobox__option--active:not(:disabled){background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.material-combobox__option--active:not(:disabled){background:color-mix(in srgb,var(--foreground) 6%,transparent)}}.material-combobox__option-name{flex:1;gap:1px;min-width:0;display:grid}.material-combobox__option-name b{color:var(--code);letter-spacing:.04em;font-size:11px}.material-combobox__option-name>span{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13.5px;display:-webkit-box;overflow:hidden}.material-combobox__option-unit{color:var(--muted-foreground);flex:none;font-size:11px}.material-combobox__empty,.material-combobox__more{color:var(--muted-foreground);margin:6px 0 2px;padding:0 9px;font-size:12px}.warehouses-split{grid-template-columns:minmax(0,1fr) 352px;align-items:start;gap:16px;display:grid}.data-table th.warehouses-table__code-head,.data-table td.warehouses-table__code-cell{width:1%;padding-right:10px}.data-table th.warehouses-table__name-head,.data-table td.warehouses-table__name{padding-left:10px}.warehouses-table__name{text-overflow:ellipsis;max-width:18ch;font-weight:600;overflow:hidden}.warehouses-table__location{max-width:16ch;color:var(--muted-foreground);text-overflow:ellipsis;overflow:hidden}.warehouse-scope{border-radius:var(--radius-compact);background:var(--surface-strong);white-space:nowrap;align-items:center;gap:7px;max-width:26ch;padding:5px 10px;font-size:12px;display:inline-flex}.data-table td.warehouses-table__scope-cell{max-width:208px}.data-table .warehouse-scope{max-width:100%}.warehouse-scope svg,.warehouse-scope b{flex:none}.warehouse-scope span{text-overflow:ellipsis;overflow:hidden}.warehouse-scope--central{border-left:3px solid var(--divider)}.warehouse-scope--project{border-left:3px solid var(--info)}.warehouse-scope--project b{color:var(--code)}.warehouse-scope--block{max-width:100%}.warehouse-panel{padding:0;position:sticky;top:16px;overflow:hidden}.warehouse-panel__head{border-bottom:1px solid var(--divider);align-items:center;gap:12px;padding:16px;display:flex}.warehouse-panel__head h2{letter-spacing:-.02em;margin:0 0 3px;font-size:17px}.warehouse-panel__head p{color:var(--muted-foreground);margin:0;font-size:12px}.warehouse-panel__icon{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);flex:0 0 44px;place-items:center;width:44px;height:44px;display:inline-grid}.warehouse-panel__body{gap:14px;padding:16px;display:grid}.warehouse-panel__actions{border-top:1px solid var(--divider);background:var(--surface-strong);grid-template-columns:1fr 1fr;gap:8px;padding:16px;display:grid}.warehouse-panel__actions>button{justify-content:center;width:100%}.warehouse-panel__primary{grid-column:1/-1}.warehouse-panel .data-state{min-height:220px}.warehouse-readonly{border:1px solid var(--divider);background:var(--surface-strong);min-height:44px;box-shadow:var(--shadow-inset-control);color:var(--muted-foreground);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;font-size:14px;display:flex}.warehouse-readonly b{color:var(--code);font-size:15px}.warehouse-block h3{color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;margin:0 0 8px;font-size:11px;font-weight:700}.warehouse-block__hint{color:var(--muted-foreground);margin:8px 0 0;font-size:12px;line-height:1.45}.warehouse-fact{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);align-items:flex-start;gap:10px;padding:12px 14px;font-size:13px;display:flex}.warehouse-fact+.warehouse-fact{margin-top:8px}.warehouse-fact svg{color:var(--muted-foreground);flex:none;margin-top:1px}.warehouse-fact b{font-size:13px;display:block}.warehouse-fact span{color:var(--muted-foreground);margin-top:2px;font-size:12px;line-height:1.45;display:block}.warehouse-fact--ubigeo{border-left:3px solid var(--code)}.warehouse-fact--ubigeo svg{color:var(--code)}.warehouse-audit{border:1px solid var(--divider);border-radius:var(--radius-compact);background:var(--surface-strong);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:12px;display:flex}.warehouse-audit h3{color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:11px;font-weight:700}.warehouse-audit b{font-size:13px}@media(max-width:1180px){.warehouses-split{grid-template-columns:minmax(0,1fr)}.warehouse-panel{position:static}}.warehouse-fact--point svg{color:var(--code)}.warehouse-fact--empty b{color:var(--muted-foreground);font-style:italic;font-weight:400}.warehouse-coords{font-variant-numeric:tabular-nums}.leaflet-container.map-canvas{isolation:isolate;background:var(--surface-strong);font:inherit}.leaflet-container.map-canvas .leaflet-bar{border:1px solid var(--border-medium);box-shadow:var(--shadow-raised-compact);border-radius:10px;overflow:hidden}.leaflet-container.map-canvas .leaflet-bar a{border-bottom-color:var(--divider);background:var(--surface);width:36px;height:36px;color:var(--foreground);line-height:34px}.leaflet-container.map-canvas .leaflet-bar a:hover,.leaflet-container.map-canvas .leaflet-bar a:focus{background:var(--surface-strong);color:var(--foreground)}.leaflet-container.map-canvas .leaflet-bar a.leaflet-disabled{background:var(--surface);color:var(--muted-foreground)}.leaflet-container.map-canvas .leaflet-bar a:focus-visible{outline:3px solid var(--brand);outline-offset:-3px}.leaflet-container.map-canvas .leaflet-control-attribution{background:var(--surface);border-top-left-radius:6px;padding:0 6px}@supports (color:color-mix(in lab,red,red)){.leaflet-container.map-canvas .leaflet-control-attribution{background:color-mix(in srgb,var(--surface) 70%,transparent)}}.leaflet-container.map-canvas .leaflet-control-attribution{color:var(--muted-foreground);font-size:10px;line-height:1.6}.leaflet-container.map-canvas .leaflet-control-attribution a{color:var(--info)}.map-touch-hint{display:none}@media(pointer:coarse){.map-touch-hint{display:inline}.map-touch-hint--block{color:var(--muted-foreground);margin:0 0 8px;font-size:.875rem;display:block}}.map-canvas .map-spider-leg{stroke:var(--foreground)}[data-theme=dark] .map-canvas .leaflet-tile-pane{filter:invert()hue-rotate(180deg)brightness(.85)contrast(.9)saturate(.6)}.warehouse-pin-host,.map-cluster-host{background:0 0;border:0}.warehouse-pin{border:2px solid var(--foreground);background:var(--surface);width:36px;height:36px;box-shadow:var(--shadow-raised-compact);border-radius:50% 50% 50% 4px;place-items:center;display:grid;transform:rotate(-45deg)}.warehouse-pin svg{fill:none;width:18px;height:18px;stroke:var(--foreground);stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;transform:rotate(45deg)}.warehouse-pin--central{border-style:double;border-width:4px}.warehouse-pin.is-selected{border-color:var(--brand);border-width:3px}.warehouse-pin.is-selected svg{stroke:var(--brand)}.project-pin-host{background:0 0;border:0}.project-pin{border:2px solid var(--foreground);background:var(--surface);width:36px;height:36px;box-shadow:var(--shadow-raised-compact);border-radius:50% 50% 50% 4px;place-items:center;display:grid;transform:rotate(-45deg)}.project-pin svg{fill:none;width:18px;height:18px;stroke:var(--foreground);stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;transform:rotate(45deg)}.project-pin.is-selected{border-color:var(--brand);border-width:3px}.project-pin.is-selected svg{stroke:var(--brand)}.map-cluster{border:2px solid var(--foreground);background:var(--surface);width:44px;height:44px;box-shadow:0 0 0 5px var(--surface),var(--shadow-raised-compact);border-radius:50%;place-items:center;display:grid}@supports (color:color-mix(in lab,red,red)){.map-cluster{box-shadow:0 0 0 5px color-mix(in srgb,var(--surface) 70%,transparent),var(--shadow-raised-compact)}}.map-cluster{color:var(--foreground);font-family:Archivo,sans-serif;font-size:15px;font-weight:700}.leaflet-marker-icon:focus-visible{outline:none}.leaflet-marker-icon:focus-visible .warehouse-pin,.leaflet-marker-icon:focus-visible .project-pin,.leaflet-marker-icon:focus-visible .map-cluster{outline:3px solid var(--brand);outline-offset:3px}.map-unavailable{z-index:600;background:var(--surface-strong);text-align:center;place-items:center;padding:20px;display:grid;position:absolute;inset:0}.map-unavailable>div{justify-items:center;gap:10px;max-width:36ch;display:grid}.map-unavailable>div>svg{color:var(--danger)}.map-unavailable p{margin:0;font-size:14px}.map-unavailable small{color:var(--muted-foreground);font-size:12px}.location-field__trigger{cursor:pointer;text-align:left;width:100%;font:inherit;color:var(--foreground);align-items:center;gap:10px;display:flex}.location-field__value{font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.location-field__value.is-empty{color:var(--muted-foreground);font-variant-numeric:normal}.location-field__cta{color:var(--brand);flex:none;font-size:13px;font-weight:600}.location-picker{border:1px solid var(--divider);border-radius:var(--radius);background:var(--surface-strong);gap:10px;min-width:0;margin:0;padding:14px;display:grid}@supports (color:color-mix(in lab,red,red)){.location-picker{background:color-mix(in srgb,var(--surface-strong) 45%,transparent)}}.location-picker.is-invalid{border-color:var(--danger)}.location-picker__hint{color:var(--muted-foreground);margin:0;font-size:12px}.location-picker__search{gap:8px;display:flex}.location-picker__search .view-toolbar__search{flex:auto;min-width:0}.location-picker__results{border:1px solid var(--border-medium);background:var(--surface);box-shadow:var(--shadow-raised-compact);border-radius:10px;gap:2px;margin:0;padding:4px;list-style:none;display:grid}.location-picker__results button{border-radius:var(--radius-compact);width:100%;color:var(--foreground);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;gap:2px;padding:8px 10px;font-size:14px;display:grid}.location-picker__results button:hover,.location-picker__results button:focus-visible{background:var(--surface-strong)}.location-picker__results button:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.location-picker__results small{color:var(--muted-foreground);font-size:12px}.location-picker__note{color:var(--muted-foreground);margin:0;font-size:13px}.location-picker__map{isolation:isolate;border:1px solid var(--divider);border-radius:10px;height:440px;position:relative;overflow:hidden}.location-picker__map>.map-canvas{width:100%;height:100%}.location-picker__readout{grid-template-columns:1fr 1fr;gap:10px;display:grid}.location-picker__readout output{border:1px solid var(--divider);background:var(--surface-strong);min-height:40px;box-shadow:var(--shadow-inset-control);font-variant-numeric:tabular-nums;border-radius:10px;align-items:center;padding:0 12px;display:flex}.location-picker__readout output.is-empty{color:var(--muted-foreground);font-style:italic}.warehouses-map-split,.projects-map-split{grid-template-columns:minmax(0,1fr) 352px;align-items:start;gap:16px;display:grid}.warehouses-map,.projects-map{isolation:isolate;height:calc(100dvh - 300px);min-height:420px;padding:0;position:relative;overflow:hidden}.warehouses-map>.map-canvas,.projects-map>.map-canvas{width:100%;height:100%}.warehouses-map__legend,.projects-map__legend{z-index:500;border:1px solid var(--divider);background:var(--surface);border-radius:10px;gap:14px;padding:6px 10px;display:flex;position:absolute;top:10px;right:10px}@supports (color:color-mix(in lab,red,red)){.warehouses-map__legend,.projects-map__legend{background:color-mix(in srgb,var(--surface) 92%,transparent)}}.warehouses-map__legend,.projects-map__legend{font-size:12px}.warehouses-map__legend>span,.projects-map__legend>span{align-items:center;gap:6px;display:inline-flex}.warehouses-map__legend .warehouse-pin,.projects-map__legend .project-pin{border-width:2px;width:16px;height:16px}.warehouses-map__legend .warehouse-pin--central{border-width:4px}.warehouses-map__legend .map-cluster,.projects-map__legend .map-cluster{width:18px;height:18px;box-shadow:none;font-size:10px}.warehouses-map-rail,.projects-map-rail{gap:16px;display:grid}.warehouse-quick,.project-quick{padding:0;overflow:hidden}.warehouse-quick .data-state,.project-quick .data-state{min-height:180px}.project-quick__head{border-bottom:1px solid var(--divider);align-items:center;gap:12px;padding:16px;display:flex}.project-quick__head h2{letter-spacing:-.02em;margin:0 0 3px;font-size:17px}.project-quick__head p{color:var(--muted-foreground);margin:0;font-size:12px}.project-quick__body{gap:10px;padding:16px;display:grid}.project-quick__actions{border-top:1px solid var(--divider);background:var(--surface-strong);padding:16px;display:grid}.project-quick__actions>button{justify-content:center;width:100%}.warehouse-unlocated,.project-unlocated{padding:0;overflow:hidden}.warehouse-unlocated__head,.project-unlocated__head{border-bottom:1px solid var(--divider);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.warehouse-unlocated__head h2,.project-unlocated__head h2{margin:0;font-size:15px}.warehouse-unlocated__count,.project-unlocated__count{background:var(--surface-strong);border-radius:13px;place-items:center;min-width:26px;height:26px;padding:0 8px;font-size:13px;font-weight:700;display:inline-grid}.warehouse-unlocated ul,.project-unlocated ul{margin:0;padding:0;list-style:none}.warehouse-unlocated li,.project-unlocated li{border-bottom:1px solid var(--divider);align-items:center;gap:10px;padding:10px 16px;display:flex}.warehouse-unlocated li:last-child,.project-unlocated li:last-child{border-bottom:0}.warehouse-unlocated li>div,.project-unlocated li>div{flex:auto;min-width:0;display:grid}.warehouse-unlocated li b,.project-unlocated li b{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.warehouse-unlocated__done,.project-unlocated__done{color:var(--muted-foreground);align-items:center;gap:8px;padding:16px;font-size:14px;display:flex}.warehouse-unlocated__done svg,.project-unlocated__done svg{color:var(--success)}@media(max-width:1180px){.warehouses-map-split,.projects-map-split{grid-template-columns:minmax(0,1fr)}}@media(max-width:720px){.warehouses-map,.projects-map{height:420px}.location-picker__map{height:320px}}@media(max-width:480px){.location-picker__readout{grid-template-columns:minmax(0,1fr)}}.filter-combobox{flex:0 280px;min-width:220px;position:relative}.filter-combobox__control{align-items:center;display:flex;position:relative}.filter-combobox__icon{color:var(--muted-foreground);pointer-events:none;place-items:center;display:grid;position:absolute;left:11px}.filter-combobox__input{border:1px solid var(--border-medium);background:var(--surface);width:100%;min-height:44px;color:var(--foreground);box-shadow:var(--shadow-raised-compact);border-radius:10px;padding:9px 12px 9px 36px;font-size:14px}.filter-combobox__input.has-clear{padding-right:34px}.filter-combobox--field{flex:none;width:100%;min-width:0}.filter-combobox__input--plain{padding-left:12px}.filter-combobox--field .filter-combobox__list{overscroll-behavior:contain;max-height:220px;overflow-y:auto}.filter-combobox__input[aria-invalid=true]{border-color:var(--danger)}.filter-combobox__input::placeholder{color:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.filter-combobox__input::placeholder{color:color-mix(in srgb,var(--muted-foreground) 70%,transparent)}}.filter-combobox__clear{width:26px;height:26px;color:var(--muted-foreground);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;display:grid;position:absolute;right:8px}.filter-combobox__clear:hover{background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.filter-combobox__clear:hover{background:color-mix(in srgb,var(--foreground) 8%,transparent)}}.filter-combobox__clear:hover{color:var(--foreground)}.filter-combobox__panel{z-index:30;width:min(320px,calc(100vw - 32px),var(--panel-room,320px));min-width:min(100%,var(--panel-room,100%));border:1px solid var(--border-medium);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-floating);padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:auto}.filter-combobox__list{margin:0;padding:0;list-style:none}.filter-combobox__option{border-radius:var(--radius-compact);cursor:pointer;align-items:center;gap:9px;min-height:52px;padding:8px 10px;font-size:13px;display:flex}.filter-combobox__option svg{color:var(--muted-foreground);flex:none}.filter-combobox__texto{gap:1px;min-width:0;display:grid}.filter-combobox__option b{color:var(--code);letter-spacing:.04em;white-space:nowrap;font-size:11px}.filter-combobox__texto>span{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13.5px;display:-webkit-box;overflow:hidden}.filter-combobox__option--clear span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.filter-combobox__option.is-active{background:var(--surface-strong)}.filter-combobox__option.is-selected{box-shadow:inset 3px 0 0 var(--code)}.filter-combobox__option.is-disabled{color:var(--muted-foreground);cursor:not-allowed}.filter-combobox__option.is-disabled b{color:var(--muted-foreground)}.filter-combobox__note{color:var(--muted-foreground);font-size:12px;line-height:1.35}.filter-combobox__tag{flex:none;align-self:flex-start;margin-left:auto}.filter-combobox__option--clear{border-bottom:1px solid var(--divider);color:var(--muted-foreground);border-radius:0}.filter-combobox__empty,.filter-combobox__more{color:var(--muted-foreground);text-align:center;margin:0;padding:10px;font-size:12px}.band-metrics{padding:4px var(--view-gutter) 18px;border-bottom:1px solid var(--divider);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.band-metrics>div{border-left:1px solid var(--divider);padding:14px 20px}.band-metrics>div:first-child{border-left:0;padding-left:0}.band-metrics dl{margin:0}.band-metrics dt{color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;margin:0 0 6px;font-size:11px;font-weight:700}.band-metrics dd{letter-spacing:-.03em;font-variant-numeric:tabular-nums;align-items:baseline;gap:7px;margin:0;font-size:26px;font-weight:700;line-height:1;display:flex}.band-metrics dd span{color:var(--muted-foreground);letter-spacing:0;font-size:12px;font-weight:400}.warehouse-references{border:1px solid var(--divider);border-radius:var(--radius-compact);background:var(--surface-strong);margin:12px 0 0;padding:10px 12px;list-style:none}.warehouse-references li{align-items:center;gap:8px;padding:5px 0;font-size:13px;display:flex}.warehouse-references li+li{border-top:1px solid var(--divider)}@media(max-width:960px){.band-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.band-metrics>div{border-left:0;border-top:1px solid var(--divider);padding-left:0}.band-metrics>div:nth-child(-n+2){border-top:0}.band-metrics>div:nth-child(2n){border-left:1px solid var(--divider);padding-left:20px}}.band-metrics--four{grid-template-columns:repeat(4,minmax(0,1fr))}.warehouse-identity{min-width:0}.warehouse-identity__meta{flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px;display:flex}.warehouse-identity__meta .warehouse-scope{max-width:100%;min-height:30px;padding:6px 12px;font-size:13px}.warehouse-scope--ubigeo{border-left:3px solid var(--code)}.warehouse-scope--ubigeo b{color:var(--code)}.data-table th.warehouse-stock-table__qty,.data-table td.warehouse-stock-table__qty{width:130px}.data-table th.warehouse-stock-table__unit,.data-table td.warehouse-stock-table__unit{width:120px}.data-table td.warehouse-stock-table__qty b{font-size:15px;font-weight:700}.data-table td.warehouse-stock-table__unit span{color:var(--muted-foreground);font-size:13px}.view-toolbar__search.warehouse-stock-table__search{flex:0 240px;min-width:180px}.view-toolbar__search.warehouse-stock-table__search input{min-height:40px;font-size:13px}.warehouse-stock-table__pager{border-top:1px solid var(--divider);color:var(--muted-foreground);justify-content:flex-end;align-items:center;gap:12px;padding:12px 20px;font-size:13px;display:flex}.receive-movement__lines{max-height:min(42vh,22rem);margin:0;padding:0;list-style:none;overflow-y:auto}.receive-movement__lines li{border-bottom:1px solid var(--divider);align-items:center;gap:10px;min-height:44px;padding:8px 14px;font-size:13px;display:flex}.receive-movement__lines li:last-child{border-bottom:0}.receive-movement__material{flex-wrap:wrap;flex:1;align-items:center;gap:4px 8px;min-width:0;display:flex}.receive-movement__name{overflow-wrap:anywhere;flex:1 1 0;min-width:6rem}.receive-movement__qty{font-variant-numeric:tabular-nums;flex:none;align-items:baseline;gap:6px;display:flex}.receive-movement__qty b{text-align:right;min-width:56px;font-size:15px}.receive-movement__qty span{min-width:54px;color:var(--muted-foreground);font-size:12px}.dialog>.receive-movement__lines{margin-block:20px}.purchases-split{grid-template-columns:minmax(0,1fr) 352px;align-items:start;gap:16px;display:grid}.purchase-panel{min-height:250px;position:sticky;top:82px;overflow:hidden}.data-table td.purchases-table__total{font-weight:700}.data-table td.purchases-table__total small{color:var(--muted-foreground);margin-left:4px;font-size:12px;font-weight:400}.data-table td.purchase-lines-table__name{text-overflow:ellipsis;max-width:28ch;overflow:hidden}.purchase-status{border:1px solid var(--divider);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:4px 8px;font-size:12px;display:inline-flex}.purchase-status--info{border-color:var(--info)}@supports (color:color-mix(in lab,red,red)){.purchase-status--info{border-color:color-mix(in srgb,var(--info) 45%,transparent)}}.purchase-status--info{color:var(--info);background:var(--info)}@supports (color:color-mix(in lab,red,red)){.purchase-status--info{background:color-mix(in srgb,var(--info) 10%,var(--surface))}}.purchase-status--success{border-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.purchase-status--success{border-color:color-mix(in srgb,var(--success) 45%,transparent)}}.purchase-status--success{color:var(--success);background:var(--success)}@supports (color:color-mix(in lab,red,red)){.purchase-status--success{background:color-mix(in srgb,var(--success) 10%,var(--surface))}}.purchase-status--danger{border-color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.purchase-status--danger{border-color:color-mix(in srgb,var(--danger) 40%,transparent)}}.purchase-status--danger{color:var(--danger);background:var(--danger)}@supports (color:color-mix(in lab,red,red)){.purchase-status--danger{background:color-mix(in srgb,var(--danger) 10%,var(--surface))}}.purchase-summary__head,.purchase-section-head{border-bottom:1px solid var(--divider);justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex}.purchase-summary__head h2,.purchase-summary__head p,.purchase-section-head h2{margin:0}.purchase-summary__head p{color:var(--muted-foreground);margin-top:4px;font-size:12px}.purchase-summary__facts{gap:0;margin:0;padding:8px 16px;display:grid}.purchase-summary__facts div{border-bottom:1px solid var(--divider);justify-content:space-between;gap:16px;padding:9px 0;display:flex}.purchase-summary__facts dt{color:var(--muted-foreground);font-size:12px}.purchase-summary__facts dd{text-align:right;margin:0}.purchase-summary__actions{border-top:1px solid var(--divider);background:var(--surface-strong);grid-template-columns:1fr 1fr;gap:8px;padding:16px;display:grid}.purchase-summary__actions>button{justify-content:center;width:100%}.purchase-summary__primary,.purchase-summary__actions>.inline-alert{grid-column:1/-1}.purchase-summary__actions>.inline-alert{margin:0;padding:12px 14px;font-size:13px}.purchase-form-dialog{width:min(980px,100%);max-height:calc(100vh - 48px)}.location-dialog{width:min(820px,100%);max-height:calc(100vh - 48px)}.location-dialog .location-picker{margin-top:20px}.purchase-form-dialog__body{max-height:62vh;padding:16px;overflow-y:auto}.purchase-create{max-width:1180px;margin:0 auto;padding:20px}.purchase-form__header-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:12px;display:grid}.purchase-form__code{width:calc(25% - 9px);margin-bottom:12px}.purchase-lines-editor{border:1px solid var(--divider);border-radius:var(--radius);margin-top:20px;overflow:visible}.purchase-lines-editor__head{border-bottom:1px solid var(--divider);border-radius:var(--radius) var(--radius) 0 0;background:var(--surface-strong);justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.purchase-lines-editor__head h2{margin:0;font-size:15px}.purchase-lines-editor__lock{color:var(--muted-foreground);align-items:center;gap:6px;margin:0;font-size:13px;display:inline-flex}.purchase-lines-editor__body{--purchase-line-columns:minmax(240px, 1fr) 140px 180px 44px;gap:10px;padding:14px;display:grid}.purchase-lines-editor__body>.field__error{margin:0}.purchase-lines-editor__body--locked{--purchase-line-columns:minmax(240px, 1fr) 140px 180px}.purchase-line__material{min-width:0}.contract-readonly.purchase-line__fixed-quantity b{color:var(--foreground);font-variant-numeric:tabular-nums;letter-spacing:0}.purchase-line{grid-template-columns:var(--purchase-line-columns);align-items:start;gap:10px;display:grid}.purchase-line--head{color:var(--muted-foreground);letter-spacing:.05em;text-transform:uppercase;margin-bottom:-4px;padding:0 2px;font-size:12px;font-weight:700}.purchase-line .material-combobox__input,.purchase-line .quantity-input__field{min-height:44px;font-size:14px}.purchase-line .material-combobox__input{padding-left:12px;padding-right:12px}.purchase-line .material-combobox__input.has-icon{padding-left:36px}.purchase-line .material-combobox__icon{left:12px}.purchase-line__price .field__input{text-align:right;font-variant-numeric:tabular-nums}.purchase-line-entry{gap:6px;display:grid}.purchase-line__foot{grid-template-columns:var(--purchase-line-columns);align-items:center;gap:10px;display:grid}.purchase-line__foot>.field__error{grid-column:1;margin:0 0 0 2px}.purchase-line-entry--invalid .material-combobox__input,.purchase-line-entry--invalid .quantity-input__field{border-color:var(--danger)}.purchase-line__remove{width:44px;min-width:44px;height:44px;padding:0}.purchase-line__remove:hover{border-color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.purchase-line__remove:hover{border-color:color-mix(in srgb,var(--danger) 45%,transparent)}}.purchase-line__remove:hover{background:var(--danger)}@supports (color:color-mix(in lab,red,red)){.purchase-line__remove:hover{background:color-mix(in srgb,var(--danger) 8%,var(--surface))}}.purchase-form__total{border:1px solid var(--divider);border-radius:var(--radius);background:var(--surface-strong);grid-template-columns:1fr auto;gap:4px 16px;margin-top:16px;padding:14px;display:grid}.purchase-form__total strong{color:var(--code);font-variant-numeric:tabular-nums;align-items:center;gap:6px;display:inline-flex}.purchase-form__total small{color:var(--muted-foreground);grid-column:1/-1}.purchase-form__total--exceeded{border-color:var(--danger)}.purchase-form__total--exceeded strong{color:var(--danger)}.purchase-form__total small.field__error{color:var(--danger);font-weight:600}.purchase-create__actions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.purchase-detail__meta{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;display:flex}.purchase-detail-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:16px;display:grid}@media(max-width:1180px){.purchases-split,.purchase-detail-grid{grid-template-columns:minmax(0,1fr)}.purchase-panel{position:static}.purchase-form__header-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.purchase-form__code{width:calc(50% - 6px)}}@media(max-width:720px){.purchase-form__header-grid{grid-template-columns:1fr}.purchase-form__code{width:auto}.purchase-lines-editor__body{--purchase-line-columns:minmax(0, 1fr) minmax(0, 1fr) 44px}.purchase-lines-editor__body--locked{--purchase-line-columns:minmax(0, 1fr) minmax(0, 1fr)}.purchase-line--head{display:none}.purchase-line>.material-combobox,.purchase-line>.purchase-line__material,.purchase-line__foot>.field__error{grid-column:1/-1}.purchase-lines-editor__head{flex-wrap:wrap}}@media(max-width:960px){.band-metrics--four{grid-template-columns:repeat(2,minmax(0,1fr))}}.suppliers-split{grid-template-columns:minmax(0,1fr) 352px;align-items:start;gap:16px;display:grid}.suppliers-split--wide{grid-template-columns:minmax(0,1fr) 404px}.suppliers-table__name{text-overflow:ellipsis;white-space:nowrap;max-width:26ch;font-weight:600;overflow:hidden}.suppliers-table__soft{max-width:22ch;color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.suppliers-table__soft--none{opacity:.7;font-style:italic}.data-table th.suppliers-table__purchases-head,.data-table td.suppliers-table__purchases{width:110px;font-weight:700}.data-table td.suppliers-table__purchases--zero{color:var(--muted-foreground);font-weight:400}.supplier-kind{border-radius:var(--radius-compact);background:var(--surface-strong);white-space:nowrap;align-items:center;gap:7px;max-width:30ch;padding:5px 10px;font-size:12px;display:inline-flex}.supplier-kind svg{color:var(--muted-foreground);flex:none}.supplier-kind span{text-overflow:ellipsis;overflow:hidden}.supplier-kind--company{border-left:3px solid var(--info)}.supplier-kind--person{border-left:3px solid var(--divider)}.supplier-kind--document{border-left:3px solid var(--code)}.supplier-kind--document svg,.supplier-kind--document b{color:var(--code)}.supplier-panel{padding:0;position:sticky;top:16px;overflow:hidden}.supplier-panel__head{border-bottom:1px solid var(--divider);align-items:center;gap:12px;padding:16px;display:flex}.supplier-panel__head h2{letter-spacing:-.02em;margin:0 0 3px;font-size:17px}.supplier-panel__head p{color:var(--muted-foreground);margin:0;font-size:12px}.supplier-panel__icon{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);flex:none;place-items:center;width:44px;height:44px;display:inline-grid}.supplier-panel__body{gap:14px;padding:16px;display:grid}.supplier-panel__actions{border-top:1px solid var(--divider);background:var(--surface-strong);grid-template-columns:1fr 1fr;gap:8px;padding:16px;display:grid}.supplier-panel__actions>button{justify-content:center;width:100%}.supplier-panel__primary{grid-column:1/-1}.supplier-panel .data-state{min-height:220px}.supplier-block h3{color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;margin:0 0 6px;font-size:11px;font-weight:700}.supplier-block__hint{color:var(--muted-foreground);margin:0 0 10px;font-size:12px}.supplier-block__stack{gap:8px;display:grid}.supplier-fact{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);align-items:center;gap:10px;padding:12px 14px;font-size:13px;display:flex}.supplier-block>.supplier-fact{margin-bottom:8px}.supplier-fact svg{color:var(--muted-foreground);flex:none}.supplier-fact b{font-size:13px;display:block}.supplier-fact span{color:var(--muted-foreground);margin-top:2px;font-size:12px;line-height:1.45;display:block}.supplier-fact--document,.supplier-fact--free,.supplier-fact--active{padding-left:12px}.supplier-fact--document{border-left:3px solid var(--code)}.supplier-fact--document svg{color:var(--code)}.supplier-fact--document b{color:var(--code);letter-spacing:.02em;font-size:15px}.supplier-fact--free{border-left:3px solid var(--info)}.supplier-fact--free svg{color:var(--info)}.supplier-fact--active{border-left:3px solid var(--success)}.supplier-fact--active svg{color:var(--success)}.supplier-fact--empty b{color:var(--muted-foreground);font-style:italic}.supplier-audit{border:1px solid var(--divider);border-radius:var(--radius-compact);background:var(--surface-strong);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:12px;display:flex}.supplier-audit h3{color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:11px;font-weight:700}.supplier-audit b{font-variant-numeric:tabular-nums;font-size:13px}.supplier-document{grid-template-columns:116px minmax(0,1fr);align-items:start;gap:10px;display:grid}.supplier-document__help{grid-column:1/-1;margin:0}.supplier-document__preview{color:var(--muted-foreground);align-items:center;gap:8px;margin:-6px 0 0;font-size:12px;display:flex}.supplier-document__preview b{color:var(--code);letter-spacing:.02em;font-size:14px}.supplier-references{border:1px solid var(--divider);border-radius:var(--radius-compact);background:var(--surface-strong);margin:12px 0 0;padding:10px 12px;list-style:none}.supplier-references li{align-items:center;gap:8px;font-size:13px;display:flex}.supplier-identity__meta{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.supplier-identity__meta .supplier-kind{max-width:100%}.band-metrics dd.band-metrics__date{letter-spacing:-.01em;font-size:19px}.data-table th.supplier-purchases-table__lines,.data-table td.supplier-purchases-table__lines{width:88px}.data-table th.supplier-purchases-table__total-head,.data-table td.supplier-purchases-table__total{width:158px;font-weight:700}.data-table td.supplier-purchases-table__total--none{color:var(--muted-foreground);font-style:italic;font-weight:400}.supplier-status{border-radius:var(--radius-compact);background:var(--surface);white-space:nowrap;align-items:center;gap:6px;padding:4px 9px;font-size:12px;font-weight:700;display:inline-flex}.supplier-status--completed{border:1px solid var(--success)}@supports (color:color-mix(in lab,red,red)){.supplier-status--completed{border:1px solid color-mix(in srgb,var(--success) 45%,transparent)}}.supplier-status--completed{color:var(--success)}.supplier-status--progress{border:1px solid var(--info)}@supports (color:color-mix(in lab,red,red)){.supplier-status--progress{border:1px solid color-mix(in srgb,var(--info) 45%,transparent)}}.supplier-status--progress{color:var(--info)}.supplier-status--hold{border:1px solid var(--danger)}@supports (color:color-mix(in lab,red,red)){.supplier-status--hold{border:1px solid color-mix(in srgb,var(--danger) 40%,transparent)}}.supplier-status--hold{color:var(--danger)}.supplier-status--planned{border:1px solid var(--divider);color:var(--muted-foreground)}.purchase-lines{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);margin:0;padding:0;list-style:none;overflow:hidden}.purchase-lines li{border-bottom:1px solid var(--divider);align-items:center;gap:10px;min-height:52px;padding:8px 12px;font-size:13px;display:flex}.purchase-lines li:last-child{border-bottom:0}.purchase-lines__material{flex:1;align-items:center;gap:9px;min-width:0;display:flex}.purchase-lines__material svg{color:var(--muted-foreground);flex:none}.purchase-lines__text{min-width:0}.purchase-lines__text b{text-overflow:ellipsis;white-space:nowrap;font-weight:600;display:block;overflow:hidden}.purchase-lines__text span{color:var(--code);margin-top:1px;font-size:11px;font-weight:700;display:block}.purchase-lines__amounts{text-align:right;font-variant-numeric:tabular-nums;flex:none}.purchase-lines__amounts b{font-size:14px}.purchase-lines__amounts span{color:var(--muted-foreground);margin-top:1px;font-size:11px;display:block}@media(max-width:1180px){.suppliers-split,.suppliers-split--wide{grid-template-columns:minmax(0,1fr)}.supplier-panel{position:static}}@media(max-width:960px){.supplier-document{grid-template-columns:minmax(0,1fr)}}.contractors-split{grid-template-columns:minmax(0,1fr) 352px;align-items:start;gap:16px;display:grid}.contractors-split__main{min-width:0}.data-table td.contractors-table__name{text-overflow:ellipsis;white-space:nowrap;max-width:26ch;font-weight:600;overflow:hidden}.data-table td.contractors-table__soft{max-width:22ch;color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.data-table td.contractors-table__soft--none{opacity:.7;font-style:italic}.data-table th.contractors-table__lots-head,.data-table td.contractors-table__lots{width:96px;font-weight:700}.data-table td.contractors-table__lots--zero{color:var(--muted-foreground);font-weight:400}.contractor-panel{padding:0;position:sticky;top:16px;overflow:hidden}.contractor-panel__head{border-bottom:1px solid var(--divider);align-items:center;gap:12px;padding:16px;display:flex}.contractor-panel__head h2{letter-spacing:-.02em;overflow-wrap:anywhere;margin:0 0 3px;font-size:17px}.contractor-panel__head p{color:var(--muted-foreground);margin:0;font-size:12px}.contractor-panel__icon{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);flex:none;place-items:center;width:44px;height:44px;display:inline-grid}.contractor-panel__body{gap:14px;padding:16px;display:grid}.contractor-panel__actions{border-top:1px solid var(--divider);background:var(--surface-strong);grid-template-columns:1fr 1fr;gap:8px;padding:16px;display:grid}.contractor-panel__actions>button{justify-content:center;width:100%}.contractor-panel>.data-state{min-height:220px}.contractor-block h3{color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;margin:0 0 6px;font-size:11px;font-weight:700}.contractor-block__stack{gap:8px;display:grid}.contractor-fact{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);align-items:center;gap:10px;padding:12px 14px;font-size:13px;display:flex}.contractor-fact>svg{color:var(--muted-foreground);flex:none}.contractor-fact b{overflow-wrap:anywhere;font-size:13px;display:block}.contractor-fact span{color:var(--muted-foreground);margin-top:2px;font-size:12px;line-height:1.45;display:block}.contractor-fact--document,.contractor-fact--free,.contractor-fact--active{padding-left:12px}.contractor-fact--document{border-left:3px solid var(--code)}.contractor-fact--document>svg{color:var(--code)}.contractor-fact--document b{color:var(--code);letter-spacing:.02em;font-size:15px}.contractor-fact--free{border-left:3px solid var(--info)}.contractor-fact--free>svg{color:var(--info)}.contractor-fact--active{border-left:3px solid var(--success)}.contractor-fact--active>svg{color:var(--success)}.contractor-fact--blocked{border-left:3px solid var(--danger);padding-left:12px}.contractor-fact--blocked>svg{color:var(--danger)}.contractor-fact span.contractor-fact__tag{color:var(--danger);margin:6px 0 2px;line-height:normal;display:inline-flex}[data-theme=dark] .contractor-fact span.contractor-fact__tag{color:var(--danger)}@supports (color:color-mix(in lab,red,red)){[data-theme=dark] .contractor-fact span.contractor-fact__tag{color:color-mix(in srgb,var(--danger) 45%,var(--foreground))}}.contractor-fact--empty b{color:var(--muted-foreground);font-style:italic}.contractor-fact span.contractor-kind{align-items:center;gap:6px;margin-top:4px;display:inline-flex}.contractor-kind svg{flex:none}.contractor-lots{border:1px solid var(--divider);border-radius:var(--radius-compact);margin:8px 0 0;padding:0;list-style:none;display:grid;overflow:hidden}.contractor-lots li+li{border-top:1px solid var(--divider)}.contractor-lot{min-height:52px;color:inherit;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 10px;padding:8px 12px;text-decoration:none;display:grid}.contractor-lot--link{transition:background-color .18s cubic-bezier(.2,.8,.2,1)}.contractor-lot--link:hover{background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.contractor-lot--link:hover{background:color-mix(in srgb,var(--foreground) 5%,transparent)}}.contractor-lot--link:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.contractor-lot__name{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.contractor-lot__path{color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;grid-column:1;font-size:12px;overflow:hidden}.contractor-lot__path .entity-code{font-size:12px}.contractor-lot__status{color:var(--muted-foreground);white-space:nowrap;grid-area:1/2/span 2;align-items:center;gap:6px;font-size:12px;display:inline-flex}.phase-dot.contractor-lot__dot{width:9px;height:9px;box-shadow:0 0 0 1px var(--muted-foreground);border:0}@supports (color:color-mix(in lab,red,red)){.phase-dot.contractor-lot__dot{box-shadow:0 0 0 1px color-mix(in srgb,var(--muted-foreground) 45%,transparent)}}.contractor-block>.data-state{min-height:0;margin-top:8px}.contractor-audit{border:1px solid var(--divider);border-radius:var(--radius-compact);background:var(--surface-strong);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:12px;display:flex}.contractor-audit h3{color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:11px;font-weight:700}.contractor-audit b{font-variant-numeric:tabular-nums;font-size:13px}.contractor-document{grid-template-columns:116px minmax(0,1fr);align-items:start;gap:10px;display:grid}.contractor-document__help{grid-column:1/-1;margin:0}.contractor-document__preview{color:var(--muted-foreground);align-items:center;gap:8px;margin:-6px 0 0;font-size:12px;display:flex}.contractor-document__preview b{color:var(--code);letter-spacing:.02em;font-size:14px}.contractor-references{border:1px solid var(--divider);border-radius:var(--radius-compact);background:var(--surface-strong);margin:12px 0 0;padding:10px 12px;list-style:none}.contractor-references li{align-items:center;gap:8px;font-size:13px;display:flex}@media(prefers-reduced-motion:reduce){.contractor-lot--link{transition:none}}@media(max-width:1180px){.contractors-split{grid-template-columns:minmax(0,1fr)}.contractor-panel{position:static}}@media(max-width:960px){.contractor-document{grid-template-columns:minmax(0,1fr)}}.contracts-split{grid-template-columns:minmax(0,1fr) 352px;align-items:start;gap:16px;display:grid}.data-table th.contracts-table__code-head,.data-table td.contracts-table__code-cell{width:1%;padding-right:10px}.contracts-table__name{text-overflow:ellipsis;max-width:24ch;padding-left:10px;font-weight:600;overflow:hidden}.data-table th.contracts-table__date-head,.data-table td.contracts-table__date{width:112px;color:var(--muted-foreground)}.contracts-table__no-date{opacity:.75;font-style:italic}.data-table th.contracts-table__status-head{width:132px}.contract-status{border-radius:var(--radius-compact);background:var(--surface);white-space:nowrap;flex:none;align-items:center;gap:6px;padding:4px 9px;font-size:12px;font-weight:700;display:inline-flex}.contract-status--active{border:1px solid var(--success)}@supports (color:color-mix(in lab,red,red)){.contract-status--active{border:1px solid color-mix(in srgb,var(--success) 45%,transparent)}}.contract-status--active{color:var(--success)}.contract-status--finished{border:1px solid var(--divider);color:var(--muted-foreground)}.contract-panel{padding:0;position:sticky;top:16px;overflow:hidden}.contract-panel__head{border-bottom:1px solid var(--divider);align-items:center;gap:12px;padding:16px;display:flex}.contract-panel__head h2{letter-spacing:-.02em;margin:0 0 3px;font-size:17px}.contract-panel__head p{color:var(--code);letter-spacing:.02em;margin:0;font-size:12px;font-weight:700}.contract-panel__title{flex:1;min-width:0}.contract-panel__head .contract-status{align-self:flex-start}.contract-panel__icon{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);flex:0 0 44px;place-items:center;width:44px;height:44px;display:inline-grid}.contract-panel__body{gap:14px;padding:16px;display:grid}.contract-panel__actions{border-top:1px solid var(--divider);background:var(--surface-strong);grid-template-columns:1fr 1fr;gap:8px;padding:16px;display:grid}.contract-panel__actions>button{justify-content:center;width:100%}.contract-panel__actions>button:only-of-type{grid-column:1/-1}.contract-panel__actions>.inline-alert{grid-column:1/-1;margin:0;padding:12px 14px;font-size:13px}@media(max-width:480px){.warehouse-panel__actions,.purchase-summary__actions,.supplier-panel__actions,.contractor-panel__actions,.contract-panel__actions{grid-template-columns:minmax(0,1fr)}.icon-picker{grid-template-columns:repeat(4,minmax(0,1fr))}.line{grid-template-columns:minmax(0,1fr) 44px}.line>:first-child{grid-column:1/-1}}.contract-panel .data-state{min-height:220px}.contract-block h3{color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;margin:0 0 6px;font-size:11px;font-weight:700}.contract-fact{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);align-items:flex-start;gap:10px;padding:12px 14px;font-size:13px;display:flex}.contract-fact svg{color:var(--muted-foreground);flex:none;margin-top:1px}.contract-fact b{font-size:13px;display:block}.contract-fact span{color:var(--muted-foreground);margin-top:2px;font-size:12px;line-height:1.45;display:block}.contract-fact--blocked{border-left:3px solid var(--danger)}.contract-fact--blocked svg{color:var(--danger)}.contract-fact--empty{color:var(--muted-foreground);font-style:italic}.contract-audit{border:1px solid var(--divider);border-radius:var(--radius-compact);background:var(--surface-strong);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:12px;display:flex}.contract-audit h3{color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:11px;font-weight:700}.contract-audit b{font-size:13px}.contract-readonly{border:1px solid var(--divider);background:var(--surface-strong);min-height:44px;box-shadow:var(--shadow-inset-control);color:var(--muted-foreground);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;font-size:14px;display:flex}.contract-readonly b{color:var(--code);letter-spacing:.02em;font-weight:700}.contract-readonly--entity>span:first-child{min-width:0;color:var(--foreground);align-items:center;gap:8px;display:inline-flex}.contract-form__dates{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;display:grid}.contract-references{border:1px solid var(--divider);border-radius:var(--radius-compact);background:var(--surface-strong);margin:12px 0 0;padding:10px 12px;list-style:none}.contract-references li{align-items:center;gap:8px;padding:4px 0;font-size:13px;display:flex}.contract-references svg{color:var(--muted-foreground);flex:none}@media(max-width:1180px){.contracts-split{grid-template-columns:minmax(0,1fr)}.contract-panel{position:static}}@media(max-width:960px){.contract-form__dates{grid-template-columns:minmax(0,1fr)}}.phases-panel{padding:22px var(--view-gutter) 26px;border-bottom:1px solid var(--divider);background:var(--surface)}@supports (color:color-mix(in lab,red,red)){.phases-panel{background:color-mix(in srgb,var(--surface) 52%,transparent)}}.phases-panel__head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px;display:flex}.phases-panel__head h2{letter-spacing:-.025em;margin:0 0 4px;font-size:18px}.phases-panel__head p{color:var(--muted-foreground);margin:0;font-size:13px}.phases-panel__tools{flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:10px;display:flex}.phases-panel__empty{flex:1 0 auto;align-content:center;justify-items:center;gap:14px;display:grid}.view:has(>.entity-workspace>.phases-panel--empty){min-height:calc(100vh - var(--topbar-height));min-height:calc(100dvh - var(--topbar-height));flex-direction:column;display:flex}.view>.entity-workspace:has(>.phases-panel--empty){flex-direction:column;flex:1 0 auto;display:flex}.phases-panel--empty{border-bottom:0;flex-direction:column;flex:1 0 auto;display:flex}.view-switch{background:var(--surface-strong);box-shadow:var(--shadow-inset-control);border-radius:10px;flex:none;padding:4px;display:inline-flex}.view-switch button{border-radius:var(--radius-compact);min-height:38px;color:var(--muted-foreground);font:inherit;cursor:pointer;transition:background var(--motion),color var(--motion),box-shadow var(--motion);background:0 0;border:0;align-items:center;gap:7px;padding:7px 12px;display:inline-flex}.view-switch button:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.view-switch button[aria-pressed=true]{background:var(--surface);color:var(--brand);box-shadow:var(--shadow-raised-compact);font-weight:600}.phase-timeline{margin:0;padding:5px 0 4px;list-style:none;position:relative}.phase-timeline:before{background:var(--divider);content:"";width:2px;position:absolute;top:20px;bottom:26px;left:14px}.phase-step{border-bottom:1px solid var(--divider);min-height:108px;color:inherit;grid-template-columns:30px minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:16px 0;text-decoration:none;display:grid;position:relative}.phase-timeline li:last-child .phase-step{border-bottom:0}.phases-panel__hint{max-width:34ch;color:var(--muted-foreground);flex-basis:100%;margin:0;font-size:12px;line-height:1.35}.phase-step__actions{justify-content:flex-end;gap:8px;display:flex}.phase-step__actions .icon-button{flex:0 0 36px;width:36px;height:36px;min-height:36px}@media(hover:none)and (pointer:coarse){.phase-step__actions .icon-button{flex:0 0 44px;width:44px;height:44px;min-height:44px}}.phase-step__body{min-width:0}.phase-step__body h3{letter-spacing:-.02em;margin:0 0 4px;font-size:16px}.phase-step__body p{color:var(--muted-foreground);margin:0 0 8px;font-size:13px}.phase-dates{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:12px;font-size:12px;display:flex}.phase-dot{z-index:1;border:4px solid var(--surface);background:var(--divider);width:30px;height:30px;color:var(--foreground);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;font-size:11px;font-weight:700;display:grid;position:relative}.phase-dot--info{background:var(--info);color:var(--surface)}.phase-dot--success{background:var(--success);color:var(--surface)}.phase-dot--danger{background:var(--danger);color:var(--surface)}.phase-progress{text-align:right;min-width:150px}.phase-progress strong{font-variant-numeric:tabular-nums;margin-bottom:7px;display:block}@media(max-width:960px){.phases-panel{padding-left:16px;padding-right:16px}.phases-panel__head{flex-direction:column;align-items:stretch}.view-switch{align-self:flex-start}.phase-step{grid-template-columns:30px minmax(0,1fr)}.phase-progress{text-align:left;grid-column:2;min-width:0}.phase-step__actions{grid-column:2;justify-content:flex-start}}.breadcrumb{padding:11px var(--view-gutter);border-bottom:1px solid var(--divider);background:var(--surface-strong)}@supports (color:color-mix(in lab,red,red)){.breadcrumb{background:color-mix(in srgb,var(--surface-strong) 48%,transparent)}}.breadcrumb{color:var(--muted-foreground);font-size:13px}.breadcrumb ol{flex-wrap:wrap;align-items:center;gap:7px;margin:0;padding:0;list-style:none;display:flex}.breadcrumb li{align-items:center;gap:7px;display:inline-flex}.breadcrumb a{color:var(--info);border-radius:4px;text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.breadcrumb a:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.breadcrumb__separator{color:var(--divider)}.breadcrumb__current{color:var(--foreground);font-weight:600}.view-band__actions{flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:10px;display:flex}.view-band__eyebrow .entity-code{letter-spacing:0;text-transform:none}.detail-state{padding:24px var(--view-gutter);justify-items:center;gap:14px;display:grid}.hierarchy-band,.level-band{--node:34px;--step:44px;--tag-h:16px;--tag-gap:2px;--name-lh:20px;--title-lh:36px;--connector:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.hierarchy-band,.level-band{--connector:color-mix(in srgb, var(--muted-foreground) 45%, transparent)}}.hierarchy-band{--pad-bottom:18px;--row-gap:14px;padding:18px var(--view-gutter) var(--pad-bottom);border-bottom:1px solid var(--divider)}.hierarchy{gap:var(--row-gap);margin:0;padding:0;list-style:none;display:grid}.hierarchy-level{--node-top:calc((var(--tag-h) + var(--tag-gap) + var(--name-lh) - var(--node)) / 2);grid-template-columns:var(--node) minmax(0,1fr);margin-left:calc(var(--level,0) * var(--step));align-items:start;column-gap:12px;display:grid;position:relative}.hierarchy-level__node.entity-icon{width:var(--node);height:var(--node);flex-basis:var(--node);margin-top:var(--node-top);color:var(--muted-foreground)}.hierarchy-level__node .icon,.hierarchy-level__meta .icon,.hierarchy-level__details .icon{width:15px;height:15px}.hierarchy-level__node .icon{width:17px;height:17px}.hierarchy-level__text{min-width:0}.hierarchy-level__tag{margin-bottom:var(--tag-gap);color:var(--muted-foreground);font-size:11px;font-weight:700;line-height:var(--tag-h);letter-spacing:.08em;text-transform:uppercase;display:block}.hierarchy-level__line{flex-wrap:wrap;align-items:baseline;gap:2px 16px;display:flex}.hierarchy-level__name{font-size:15px;font-weight:600;line-height:var(--name-lh);flex-wrap:wrap;align-items:baseline;gap:2px 8px;display:inline-flex}.hierarchy-level__name .entity-code{font-size:13px}a.hierarchy-level__name{color:var(--foreground);border-radius:4px;text-decoration:none}a.hierarchy-level__name:hover .hierarchy-level__label{text-decoration:underline}a.hierarchy-level__name:focus-visible{outline:2px solid var(--brand);outline-offset:2px}a.hierarchy-level__name .icon{color:var(--muted-foreground);transition:transform var(--motion),color var(--motion);align-self:center}a.hierarchy-level__name:hover .icon{color:var(--foreground);transform:translate(2px)}.hierarchy-level__meta{border-left:1px solid var(--divider);color:var(--muted-foreground);font-size:13px;line-height:var(--name-lh);white-space:nowrap;align-items:center;gap:6px;padding-left:16px;display:inline-flex}.hierarchy-level__meta b{color:var(--foreground);font-variant-numeric:tabular-nums;font-weight:600}.hierarchy-level__details{color:var(--muted-foreground);flex-wrap:wrap;gap:4px 18px;margin:6px 0 0;padding:0;font-size:13px;list-style:none;display:flex}.hierarchy-level__details li{align-items:center;gap:6px;display:inline-flex}.hierarchy-level:after{top:calc(var(--node-top) + var(--node));bottom:calc(-1 * var(--row-gap));left:calc(var(--node) / 2 - .5px);border-left:1px solid var(--connector);content:"";position:absolute}.hierarchy-level:last-child:after{bottom:calc(-1 * (var(--pad-bottom) + 1px))}.hierarchy-level+.hierarchy-level:before{top:0;left:calc(-1 * var(--step) + var(--node) / 2 - .5px);width:calc(var(--step) - var(--node) / 2 - 4px);height:calc(var(--node-top) + var(--node) / 2 + .5px);border-bottom:1px solid var(--connector);border-left:1px solid var(--connector);content:"";border-bottom-left-radius:8px;position:absolute}@media(max-width:720px){.hierarchy-band,.level-band{--node:30px;--step:28px;--title-lh:30px}.hierarchy-level__meta{white-space:normal;border-left:0;flex-wrap:wrap;margin-top:2px;padding-left:0}}.level-band{--pad-top:20px;padding:var(--pad-top) var(--view-gutter) 20px;border-bottom:1px solid var(--divider);background:var(--surface);box-shadow:inset 3px 0 0 var(--brand);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px 24px;display:grid;position:relative;container:level-band/inline-size}.level-band__identity{grid-template-columns:var(--node) minmax(0,1fr);min-width:0;margin-left:calc(var(--level,1) * var(--step));align-self:start;column-gap:12px;display:grid;position:relative}.level-band__identity:before{top:calc(-1 * var(--pad-top));left:calc(-1 * var(--step) + var(--node) / 2 - .5px);width:calc(var(--step) - var(--node) / 2 - 4px);height:calc(var(--pad-top) + var(--tag-h) + var(--tag-gap) + var(--title-lh) / 2 + .5px);border-bottom:1px solid var(--connector);border-left:1px solid var(--connector);content:"";border-bottom-left-radius:8px;position:absolute}.level-band__tag{margin:0 0 var(--tag-gap);color:var(--brand);font-size:12px;font-weight:700;line-height:var(--tag-h);letter-spacing:.13em;text-transform:uppercase;grid-area:1/2}.level-band__tag .entity-code{letter-spacing:0;text-transform:none}.level-band__node{margin-top:calc((var(--title-lh) - var(--node)) / 2);grid-area:2/1}.level-band__node.entity-icon{width:var(--node);height:var(--node);flex-basis:var(--node);border-color:var(--brand)}.level-band__node.entity-icon .icon{width:17px;height:17px}.level-band__node.phase-dot{width:var(--node);height:var(--node);box-shadow:0 0 0 1px var(--connector)}.level-band h1{font-size:30px;line-height:var(--title-lh);letter-spacing:-.02em;overflow-wrap:anywhere;grid-area:2/2;margin:0}.level-band__description{max-width:64ch;color:var(--muted-foreground);grid-area:3/2;margin:6px 0 0;font-size:14px;line-height:1.5}.level-band__metrics{align-items:stretch;display:flex}.level-band__stat{border-left:1px solid var(--divider);align-content:center;gap:8px;min-width:0;padding:2px 22px;display:grid}.level-band__stat--progress{width:280px}.level-band__label{color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:700}.level-band__dates{gap:3px;margin:0;display:grid}.level-band__dates div{align-items:baseline;gap:10px;display:flex}.level-band__dates dt{min-width:34px;color:var(--muted-foreground);font-size:13px}.level-band__dates dd{font-variant-numeric:tabular-nums;white-space:nowrap;margin:0;font-size:15px;font-weight:600}.level-band__progress-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 12px;display:flex}.level-band__figure{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-family:Archivo,"Source Sans 3",system-ui,sans-serif;font-size:26px;line-height:1}.level-band__figure small{color:var(--muted-foreground);letter-spacing:0;margin-left:6px;font-family:"Source Sans 3",system-ui,sans-serif;font-size:13px;font-weight:600}.level-band__actions{border-left:1px solid var(--divider);flex-wrap:wrap;align-items:center;gap:10px;padding-left:22px;display:flex}.level-band__closed{max-width:230px;color:var(--muted-foreground);border-radius:4px;align-items:flex-start;gap:10px;margin:0;font-size:13px;line-height:1.45;display:flex}.level-band__closed strong{color:var(--foreground);font-size:14px;display:block}.level-band__closed .icon{color:var(--success);margin-top:1px}.level-band__closed:focus{outline:none}.level-band__closed:focus-visible{outline:2px solid var(--brand);outline-offset:4px}@container level-band (max-width:1120px){.level-band__metrics{margin-left:calc(var(--level,1) * var(--step) + var(--node) + 12px);border-top:1px solid var(--divider);flex-wrap:wrap;grid-column:1/-1;row-gap:14px;padding-top:16px}.level-band__stat:first-child{border-left:0;padding-left:0}.level-band__stat--progress{flex:220px;width:auto}}@container level-band (max-width:1280px){.level-band--actions-row .level-band__metrics{margin-left:calc(var(--level,1) * var(--step) + var(--node) + 12px);border-top:1px solid var(--divider);flex-wrap:wrap;grid-column:1/-1;row-gap:14px;padding-top:16px}.level-band--actions-row .level-band__stat:first-child{border-left:0;padding-left:0}.level-band--actions-row .level-band__stat--progress{flex:220px;width:auto}.level-band--actions-row .level-band__actions{border-left:0;flex-basis:100%;padding-left:0}}@media(max-width:720px){.level-band h1{font-size:24px}.level-band__description{font-size:13px}.level-band__metrics{border-top:0;flex-flow:column;row-gap:0;padding-top:0}.level-band__stat{border-top:1px solid var(--divider);border-left:0;padding:14px 0 0}.level-band__stat+.level-band__stat{margin-top:14px}.level-band__stat--progress{flex:none;width:auto}.level-band__actions{border-left:0;flex-direction:column;align-items:stretch;margin-top:16px;padding-left:0}.level-band__actions .button{width:100%}.level-band__closed{max-width:none}}.phase-progress-dialog{width:min(540px,100%)}.phase-progress-dialog--closure{--closure-danger-text:var(--danger);width:min(640px,100%)}[data-theme=dark] .phase-progress-dialog--closure{--closure-danger-text:var(--danger)}@supports (color:color-mix(in lab,red,red)){[data-theme=dark] .phase-progress-dialog--closure{--closure-danger-text:color-mix(in srgb, var(--danger) 45%, var(--foreground))}}.phase-closure__body{overscroll-behavior:contain;gap:20px;max-height:58vh;margin-top:22px;margin-right:-14px;padding:2px 14px 2px 2px;display:grid;overflow-y:auto}.phase-closure__body:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.phase-closure__block{gap:10px;display:grid}.phase-closure__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 14px;display:flex}.phase-closure__head h3{letter-spacing:-.01em;margin:0;font-size:15px}.phase-closure__head p{color:var(--muted-foreground);flex-basis:100%;margin:0;font-size:13px}.phase-closure__count{color:var(--muted-foreground);margin-left:6px;font-weight:400}.phase-closure__list{border:1px solid var(--divider);border-radius:var(--radius-compact);margin:0;padding:0;list-style:none;display:grid}.phase-closure__item{grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 16px;display:grid}.phase-closure__item--order{grid-template-columns:34px minmax(0,1fr);align-items:start}.phase-closure__item+.phase-closure__item{border-top:1px solid var(--divider)}.phase-closure__main{min-width:0}.phase-closure__title{flex-wrap:wrap;align-items:center;gap:6px 8px;display:flex}.phase-closure__pending{color:var(--muted-foreground);font-size:12px;font-weight:600}.phase-closure__arrow{color:var(--muted-foreground)}.phase-closure__meta,.phase-closure__effect{overflow-wrap:anywhere;margin:6px 0 0;font-size:12.5px;line-height:1.45}.phase-closure__meta{color:var(--muted-foreground)}.phase-closure__purchase{border:1px solid var(--divider);border-radius:var(--radius-compact);background:var(--muted-foreground);border-left-width:3px;margin-top:10px;padding:10px 12px}@supports (color:color-mix(in lab,red,red)){.phase-closure__purchase{background:color-mix(in srgb,var(--muted-foreground) 5%,transparent)}}.phase-closure__purchase.is-rejected{border-left-color:var(--closure-danger-text)}.phase-closure__purchase-head{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:12.5px;display:flex}.phase-closure__purchase .phase-closure__effect{margin-top:6px}.phase-closure__link{min-height:44px;color:var(--info);white-space:nowrap;align-items:center;gap:4px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.phase-closure__link:hover{text-decoration:underline}.phase-closure__link:focus-visible{border-radius:var(--radius-compact);outline:2px solid var(--brand);outline-offset:2px}.phase-closure__outcome{border:1px solid var(--divider);border-radius:var(--radius-compact);background:var(--background);padding:12px 14px;font-size:13.5px}.phase-closure__outcome ul{margin:6px 0 0;padding-left:18px}.phase-closure__pending-note{color:var(--muted-foreground)}.phase-closure__retry{min-height:36px;margin-left:auto}@media(max-height:700px){.dialog .phase-closure__body{max-height:none;overflow-y:visible}}@media(max-width:480px){.phase-closure__item{grid-template-columns:34px minmax(0,1fr)}.phase-closure__link{grid-column:2;justify-self:start}}.progress-input{grid-template-columns:116px minmax(0,1fr);align-items:center;gap:18px;display:grid}.progress-input__number{position:relative}.progress-input__number .field__input{appearance:textfield;font-variant-numeric:tabular-nums;text-align:right;padding-right:36px;font-size:18px;font-weight:600}.progress-input__number .field__input::-webkit-inner-spin-button{appearance:none;margin:0}.progress-input__number .field__input::-webkit-outer-spin-button{appearance:none;margin:0}.progress-input__suffix{color:var(--muted-foreground);pointer-events:none;font-weight:600;position:absolute;top:50%;right:13px;transform:translateY(-50%)}.progress-range-wrap{gap:2px;display:grid}.progress-range{--value:0%;cursor:pointer;appearance:none;background:0 0;width:100%;height:30px;margin:0}.progress-range::-webkit-slider-runnable-track{border-radius:var(--radius-compact);background:linear-gradient(to right,var(--progress) 0 var(--value),var(--surface-strong) var(--value) 100%);height:9px;box-shadow:inset 0 1px 4px var(--shadow-dark)}@supports (color:color-mix(in lab,red,red)){.progress-range::-webkit-slider-runnable-track{box-shadow:inset 0 1px 4px color-mix(in srgb,var(--shadow-dark) 24%,transparent)}}.progress-range::-webkit-slider-thumb{border:1px solid var(--border-medium);background:var(--surface);width:24px;height:24px;box-shadow:var(--shadow-raised-control);appearance:none;border-radius:50%;margin-top:-7.5px}.progress-range::-moz-range-track{border-radius:var(--radius-compact);background:var(--surface-strong);height:9px}.progress-range::-moz-range-progress{border-radius:var(--radius-compact);background:var(--progress);height:9px}.progress-range::-moz-range-thumb{border:1px solid var(--border-medium);background:var(--surface);width:24px;height:24px;box-shadow:var(--shadow-raised-control);border-radius:50%}.progress-range:focus-visible{outline:none}.progress-range:focus-visible::-webkit-slider-thumb{outline:2px solid var(--brand);outline-offset:2px}.progress-range:focus-visible::-moz-range-thumb{outline:2px solid var(--brand);outline-offset:2px}.progress-range__scale{color:var(--muted-foreground);font-variant-numeric:tabular-nums;justify-content:space-between;padding:0 5px;font-size:11px;display:flex}.progress-outcome{gap:10px;display:grid}.progress-outcome__label{color:var(--muted-foreground);margin-left:2px;font-size:12px;font-weight:600}.progress-rule{border:1px solid var(--divider);border-radius:var(--radius-compact);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.progress-rule li{transition:background var(--motion),box-shadow var(--motion);justify-items:start;gap:6px;padding:10px 12px 12px;display:grid}.progress-rule li+li{border-left:1px solid var(--divider)}.progress-rule__range{color:var(--muted-foreground);font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}.progress-rule li.is-current{background:var(--surface-strong);box-shadow:inset 0 -3px 0 var(--brand)}.progress-rule li.is-current .progress-rule__range{color:var(--foreground)}.progress-outcome__change{margin:0;font-size:14px;line-height:1.5}@media(max-width:480px){.progress-input{grid-template-columns:minmax(0,1fr);gap:10px}.progress-rule{grid-template-columns:minmax(0,1fr)}.progress-rule li{grid-template-columns:70px auto;align-items:center}.progress-rule li+li{border-top:1px solid var(--divider);border-left:0}.progress-rule li.is-current{box-shadow:inset 3px 0 0 var(--brand)}}.phase-gantt__note{color:var(--muted-foreground);margin:0 0 12px;font-size:13px}.phase-gantt__note--delay{color:var(--danger);align-items:center;gap:6px;margin-bottom:6px;font-weight:600;display:flex}.phase-gantt__scroll{border:1px solid var(--divider);border-radius:var(--radius-compact);background:var(--surface);overflow-x:auto}.phase-gantt__grid{grid-template-columns:240px minmax(calc(var(--gantt-months,6) * 96px),1fr);min-width:max-content;display:grid}.phase-gantt__corner,.phase-gantt__label{z-index:2;background:var(--surface);border-right:1px solid var(--divider);position:sticky;left:0}.phase-gantt__corner{color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid var(--divider);padding:10px 14px;font-size:11px;font-weight:700}.phase-gantt__axis{border-bottom:1px solid var(--divider);padding-bottom:20px;display:flex;position:relative}.phase-gantt__axis .phase-gantt__month{color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;padding:10px 8px;font-size:11px;font-weight:700}.phase-gantt__row{display:contents}.phase-gantt__label{border-bottom:1px solid var(--divider);align-items:center;gap:12px;min-height:64px;padding:10px 14px;display:flex}.phase-gantt__label>.action-button,.phase-gantt__label>button{flex:none;margin-left:auto}.phase-gantt__label>div{gap:3px;min-width:0;display:grid}.phase-gantt__label strong{color:var(--foreground);text-overflow:ellipsis;white-space:nowrap;font-weight:600;text-decoration:none;overflow:hidden}.phase-gantt__dates{color:var(--muted-foreground);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.phase-gantt__track{border-bottom:1px solid var(--divider);min-height:64px;display:flex;position:relative}.phase-gantt__month{border-left:1px solid var(--divider);flex:0 0 0;min-width:0}@supports (color:color-mix(in lab,red,red)){.phase-gantt__month{border-left:1px solid color-mix(in srgb,var(--divider) 55%,transparent)}}.phase-gantt__month:first-child{border-left:0}.phase-gantt__bar{box-sizing:border-box;border:1px solid var(--divider);background:var(--surface-strong);border-left-width:3px;border-radius:6px;align-items:center;min-width:12px;height:26px;display:flex;position:absolute;top:50%;overflow:hidden;transform:translateY(-50%)}.phase-gantt__fill{background:var(--progress);position:absolute;inset:0 auto 0 0}@supports (color:color-mix(in lab,red,red)){.phase-gantt__fill{background:color-mix(in srgb,var(--progress) 32%,transparent)}}.phase-gantt__percent{color:var(--foreground);white-space:nowrap;font-variant-numeric:tabular-nums;padding:0 8px;font-size:11px;font-weight:700;position:relative}.phase-gantt__bar--tight{border-radius:999px}.phase-gantt__percent--aside{color:var(--muted-foreground);padding:0;position:absolute;top:50%;transform:translateY(-50%)}.phase-gantt__bar--info{border-color:var(--info)}@supports (color:color-mix(in lab,red,red)){.phase-gantt__bar--info{border-color:color-mix(in srgb,var(--info) 45%,var(--divider))}}.phase-gantt__bar--info{border-left-color:var(--info);background:var(--info)}@supports (color:color-mix(in lab,red,red)){.phase-gantt__bar--info{background:color-mix(in srgb,var(--info) 12%,var(--surface))}}.phase-gantt__bar--success{border-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.phase-gantt__bar--success{border-color:color-mix(in srgb,var(--success) 45%,var(--divider))}}.phase-gantt__bar--success{border-left-color:var(--success);background:var(--success)}@supports (color:color-mix(in lab,red,red)){.phase-gantt__bar--success{background:color-mix(in srgb,var(--success) 12%,var(--surface))}}.phase-gantt__bar--danger{border-color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.phase-gantt__bar--danger{border-color:color-mix(in srgb,var(--danger) 45%,var(--divider))}}.phase-gantt__bar--danger{border-left-color:var(--danger);background:var(--danger)}@supports (color:color-mix(in lab,red,red)){.phase-gantt__bar--danger{background:color-mix(in srgb,var(--danger) 12%,var(--surface))}}.phase-gantt__today{z-index:1;background:var(--brand);pointer-events:none;width:2px;position:absolute;top:0;bottom:0}.phase-gantt__today--label span{background:var(--brand);color:var(--surface);letter-spacing:.04em;text-transform:uppercase;border-radius:4px;padding:1px 6px;font-size:10px;font-weight:700;position:absolute;bottom:3px;left:0;transform:translate(-50%)}@media(max-width:720px){.phase-gantt__grid{grid-template-columns:180px minmax(calc(var(--gantt-months,6) * 80px),1fr)}.phase-gantt__label{gap:8px;padding:8px 10px}.phase-gantt__dates{white-space:normal}}.gantt-bar--late{align-items:stretch}.gantt-bar__planned{flex:none;align-items:center;height:100%;display:flex;position:relative;overflow:hidden}.gantt-bar__overrun{border-left:1px solid var(--danger);background:repeating-linear-gradient(135deg,var(--danger) 0 2px,transparent 2px 6px);flex:auto;height:100%}@supports (color:color-mix(in lab,red,red)){.gantt-bar__overrun{background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--danger) 38%,transparent) 0 2px,transparent 2px 6px)}}.schedule-delay-tag{color:var(--danger);white-space:nowrap;align-items:center;gap:4px;font-size:12px;font-weight:700;display:inline-flex}.project-gantt-toolbar .view-switch button{min-height:36px}.project-gantt__scroll{border:1px solid var(--divider);border-radius:var(--radius-compact);background:var(--surface);overflow-x:auto}.project-gantt__grid{grid-template-columns:320px minmax(calc(var(--gantt-columns,6) * var(--gantt-column,96px)),1fr);min-width:max-content;display:grid}.project-gantt__corner,.project-gantt__label{z-index:3;background:var(--surface);border-right:1px solid var(--divider);position:sticky;left:0}.project-gantt__corner{color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid var(--divider);align-items:flex-end;padding:10px 14px;font-size:11px;font-weight:700;display:flex}.project-gantt__axis{border-bottom:1px solid var(--divider);position:relative}.project-gantt__years,.project-gantt__columns{display:flex}.project-gantt__years span,.project-gantt__columns span{white-space:nowrap;flex:none;min-width:0}.project-gantt__years span{border-left:1px solid var(--divider);color:var(--foreground);font-variant-numeric:tabular-nums;padding:8px 8px 2px;font-size:12px;font-weight:700}.project-gantt__years b{position:sticky;left:332px}.project-gantt__columns span{border-left:1px solid var(--divider);padding:2px 8px 24px}@supports (color:color-mix(in lab,red,red)){.project-gantt__columns span{border-left:1px solid color-mix(in srgb,var(--divider) 55%,transparent)}}.project-gantt__columns span{color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:700}.project-gantt__years span:first-child,.project-gantt__columns span:first-child{border-left:0}.project-gantt__row{--row-height:44px;--bar-height:14px;display:contents}.project-gantt__row--project{--row-height:56px;--bar-height:26px}.project-gantt__row--lot{--row-height:50px;--bar-height:20px}.project-gantt__label{min-height:var(--row-height);padding:6px 12px 6px calc(12px + var(--level,0) * 22px);border-bottom:1px solid var(--divider);align-items:center;gap:8px;display:flex}.project-gantt__row--project .project-gantt__label,.project-gantt__row--project .project-gantt__track{background:var(--surface-strong)}@supports (color:color-mix(in lab,red,red)){.project-gantt__row--project .project-gantt__label,.project-gantt__row--project .project-gantt__track{background:color-mix(in srgb,var(--surface-strong) 55%,var(--surface))}}.project-gantt__toggle{border-radius:var(--radius-compact);width:32px;height:32px;color:var(--muted-foreground);cursor:pointer;transition:background var(--motion),border-color var(--motion);background:0 0;border:1px solid #0000;flex:none;place-items:center;padding:0;display:grid}.project-gantt__toggle:hover{border-color:var(--border-medium);background:var(--surface)}.project-gantt__toggle:focus-visible,.project-gantt__link:focus-visible,.project-gantt__bar:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.project-gantt__toggle .icon{transition:transform var(--motion)}.project-gantt__toggle[aria-expanded=true] .icon{transform:rotate(90deg)}.project-gantt__toggle--empty{visibility:hidden}.project-gantt__label .phase-dot{border-width:2px;flex:none;width:24px;height:24px}.project-gantt__text{gap:1px;min-width:0;display:grid}.project-gantt__title{align-items:baseline;gap:8px;min-width:0;display:flex}.project-gantt__title strong{color:var(--foreground);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.project-gantt__row--project .project-gantt__title strong{font-weight:700}.project-gantt__link{text-decoration:underline;-webkit-text-decoration-color:var(--code);text-decoration-color:var(--code)}@supports (color:color-mix(in lab,red,red)){.project-gantt__link{-webkit-text-decoration-color:color-mix(in srgb,var(--code) 40%,transparent);text-decoration-color:color-mix(in srgb,var(--code) 40%,transparent)}}.project-gantt__link{text-underline-offset:3px}.project-gantt__link:hover{-webkit-text-decoration-color:var(--code);text-decoration-color:var(--code)}.project-gantt__note{color:var(--muted-foreground);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.project-gantt__track{min-height:var(--row-height);border-bottom:1px solid var(--divider);display:flex;position:relative}.project-gantt__column{border-left:1px solid var(--divider);flex:none}@supports (color:color-mix(in lab,red,red)){.project-gantt__column{border-left:1px solid color-mix(in srgb,var(--divider) 55%,transparent)}}.project-gantt__column:first-child{border-left:0}.project-gantt__bar{z-index:2;box-sizing:border-box;min-width:12px;height:var(--bar-height);border:1px solid var(--divider);background:var(--surface-strong);border-left-width:3px;border-radius:6px;align-items:center;display:flex;position:absolute;top:50%;overflow:hidden;transform:translateY(-50%)}.project-gantt__bar--aside{border-radius:999px}.project-gantt__bar--info{border-color:var(--info)}@supports (color:color-mix(in lab,red,red)){.project-gantt__bar--info{border-color:color-mix(in srgb,var(--info) 45%,var(--divider))}}.project-gantt__bar--info{border-left-color:var(--info);background:var(--info)}@supports (color:color-mix(in lab,red,red)){.project-gantt__bar--info{background:color-mix(in srgb,var(--info) 12%,var(--surface))}}.project-gantt__bar--success{border-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.project-gantt__bar--success{border-color:color-mix(in srgb,var(--success) 45%,var(--divider))}}.project-gantt__bar--success{border-left-color:var(--success);background:var(--success)}@supports (color:color-mix(in lab,red,red)){.project-gantt__bar--success{background:color-mix(in srgb,var(--success) 12%,var(--surface))}}.project-gantt__bar--danger{border-color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.project-gantt__bar--danger{border-color:color-mix(in srgb,var(--danger) 45%,var(--divider))}}.project-gantt__bar--danger{border-left-color:var(--danger);background:var(--danger)}@supports (color:color-mix(in lab,red,red)){.project-gantt__bar--danger{background:color-mix(in srgb,var(--danger) 12%,var(--surface))}}.project-gantt__fill{background:var(--progress);position:absolute;inset:0 auto 0 0}@supports (color:color-mix(in lab,red,red)){.project-gantt__fill{background:color-mix(in srgb,var(--progress) 32%,transparent)}}.project-gantt__percent{color:var(--foreground);font-variant-numeric:tabular-nums;white-space:nowrap;padding:0 8px;font-size:11px;font-weight:700;position:relative}.project-gantt__percent--aside{z-index:2;color:var(--muted-foreground);padding:0;position:absolute;top:50%;transform:translateY(-50%)}.project-gantt__today{z-index:1;background:var(--brand);pointer-events:none;width:2px;position:absolute;top:0;bottom:0}.project-gantt__today--label span{background:var(--brand);color:var(--surface);letter-spacing:.04em;text-transform:uppercase;border-radius:4px;padding:1px 6px;font-size:10px;font-weight:700;position:absolute;bottom:3px;left:0;transform:translate(-50%)}.project-gantt__tip{z-index:40;border:1px solid var(--border-medium);background:var(--surface);width:max-content;max-width:300px;box-shadow:var(--shadow-floating);color:var(--foreground);pointer-events:none;border-radius:10px;padding:10px 12px;font-size:13px;position:fixed}.project-gantt__tip--above{transform:translateY(-100%)}.project-gantt__tip dl{grid-template-columns:auto 1fr;align-items:center;gap:4px 10px;margin:6px 0 0;display:grid}.project-gantt__tip dt{color:var(--muted-foreground)}.project-gantt__tip dd{font-variant-numeric:tabular-nums;margin:0}.project-gantt__tip-delay{color:var(--danger);font-weight:700}.project-gantt-toolbar__delayed{border:1px solid var(--danger);align-items:center;gap:6px;min-height:44px;padding:0 12px;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.project-gantt-toolbar__delayed{border:1px solid color-mix(in srgb,var(--danger) 40%,var(--divider))}}.project-gantt-toolbar__delayed{background:var(--danger);border-radius:10px}@supports (color:color-mix(in lab,red,red)){.project-gantt-toolbar__delayed{background:color-mix(in srgb,var(--danger) 8%,var(--surface))}}.project-gantt-toolbar__delayed{color:var(--danger);font-size:13px;font-weight:700}.project-gantt__notice{border:1px solid var(--divider);border-left:3px solid var(--info);border-radius:var(--radius-compact);background:var(--surface);margin-top:16px}.project-gantt__notice summary{cursor:pointer;align-items:center;gap:10px;min-height:44px;padding:10px 14px;list-style:none;display:flex}.project-gantt__notice summary::-webkit-details-marker{display:none}.project-gantt__notice summary:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.project-gantt__notice summary>.icon:first-child{color:var(--info)}.project-gantt__notice-chevron{color:var(--muted-foreground);transition:transform var(--motion);margin-left:auto}.project-gantt__notice[open] .project-gantt__notice-chevron{transform:rotate(180deg)}.project-gantt__notice ul{color:var(--muted-foreground);gap:6px;margin:0;padding:0 14px 12px 42px;display:grid}.project-gantt__notice li strong{color:var(--foreground);font-weight:600}@media(prefers-reduced-motion:reduce){.project-gantt__toggle,.project-gantt__toggle .icon,.project-gantt__notice-chevron{transition:none}}@media(max-width:720px){.project-gantt__grid{grid-template-columns:200px minmax(calc(var(--gantt-columns,6) * var(--gantt-column,96px)),1fr)}.project-gantt__years b{left:212px}.project-gantt__label{padding:6px 8px 6px calc(8px + var(--level,0) * 12px)}.project-gantt__note{white-space:normal}}@media(max-width:480px){.project-gantt__grid{grid-template-columns:160px minmax(calc(var(--gantt-columns,6) * var(--gantt-column,96px)),1fr)}.project-gantt__years b{left:172px}.project-gantt__label{padding-left:calc(6px + var(--level,0) * 8px);gap:6px}.project-gantt__toggle{width:28px;height:28px}}.phase-create__grid{grid-template-columns:minmax(0,1fr) minmax(0,400px);align-items:start;gap:20px;display:grid}.phase-create__data{grid-area:1/2;padding:0;position:sticky;top:16px}.phase-create__estimation{grid-area:1/1;min-width:0}.phase-create__card-head,.phase-estimation__head,.lot-materials-card__head{border-bottom:1px solid var(--divider);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 20px 14px;display:flex}.phase-create__card-head h2,.phase-estimation__head h2,.lot-materials-card__head h2{letter-spacing:-.02em;margin:0 0 4px;font-size:18px}.phase-create__card-head p,.phase-estimation__head p,.lot-materials-card__head p{color:var(--muted-foreground);margin:0;font-size:13px}.phase-create__fields{gap:16px;padding:20px;display:grid}.phase-create__actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.phase-create__card-actions{border-top:1px solid var(--divider);flex-wrap:wrap;justify-content:flex-end;gap:10px;padding:16px 20px;display:flex}.phase-create__data--compact .phase-create__card-head{align-items:center;padding:14px 18px 12px}.phase-create__data--compact .phase-create__card-head h2{margin:0;font-size:17px}.phase-create__data--compact .phase-create__fields{gap:14px;padding:16px 18px}.phase-create__data--compact .phase-create__card-actions{padding:12px 18px}.phase-create__data--compact>.inline-alert{margin:0 18px 12px}.field-slot{border:1px dashed var(--info);gap:8px;padding:12px 14px;display:grid}@supports (color:color-mix(in lab,red,red)){.field-slot{border:1px dashed color-mix(in srgb,var(--info) 55%,transparent)}}.field-slot{border-left:3px solid var(--info);background:var(--info);border-radius:10px}@supports (color:color-mix(in lab,red,red)){.field-slot{background:color-mix(in srgb,var(--info) 8%,var(--surface))}}.field-slot{font-size:14px}.field-slot--error{border-color:var(--danger);border-left-color:var(--danger)}.field-slot__title{color:var(--foreground);align-items:center;gap:8px;margin:0;font-weight:600;display:flex}.field-slot__title .icon{color:var(--info);flex:none}.field-slot__text{color:var(--muted-foreground);margin:0;font-size:13px;line-height:1.45}.field-slot .button{width:100%}.field-anchor{flex-direction:column;min-width:0;display:flex}.field-anchor .filter-combobox__input{box-shadow:none;border-bottom-right-radius:0;border-bottom-left-radius:0}.field-anchor>.inline-alert{border-radius:0 0 10px 10px;align-items:center;gap:10px;margin-top:-1px;padding:6px 6px 6px 12px;font-size:13px;line-height:1.35}.field-anchor>.inline-alert .icon{margin-top:0}.field-anchor>.inline-alert>span{flex:1;min-width:0}.field-reveal{min-height:44px;color:var(--info);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;justify-self:start;align-items:center;gap:6px;padding:0 2px;font-size:14px;font-weight:600;text-decoration:underline;display:inline-flex}.field-reveal:hover{color:var(--foreground)}[data-theme=dark] .field-reveal{color:var(--info)}@supports (color:color-mix(in lab,red,red)){[data-theme=dark] .field-reveal{color:color-mix(in srgb,var(--info) 45%,var(--foreground))}}[data-theme=dark] .field-reveal:hover{color:var(--foreground)}.form-explainer{border-top:1px solid var(--divider)}.form-explainer summary{min-height:44px;color:var(--muted-foreground);cursor:pointer;align-items:center;gap:8px;padding:0 18px;font-size:13px;list-style:none;display:flex}.form-explainer summary::-webkit-details-marker{display:none}.form-explainer summary .icon{color:var(--info);flex:none}.form-explainer summary .form-explainer__chevron{color:var(--muted-foreground);transition:transform var(--motion);margin-left:auto}.form-explainer[open] summary .form-explainer__chevron{transform:rotate(180deg)}.form-explainer p{color:var(--muted-foreground);margin:0;padding:0 18px 14px 42px;font-size:13px;line-height:1.5}@media(max-width:720px){.field-anchor>.inline-alert{flex-wrap:wrap}.field-anchor>.inline-alert .button{margin-left:auto}}@media(max-width:480px){.phase-create__data--compact .phase-create__card-actions{flex-direction:column-reverse}.phase-create__data--compact .phase-create__card-actions .button{width:100%}}@media(prefers-reduced-motion:reduce){.form-explainer summary .form-explainer__chevron{transition:none}}.phase-estimation,.lot-materials-card{padding:0}.lot-materials-card__notice{margin:16px 20px}.lot-materials-card__notice strong{display:block}.lot-materials-card__notice p{margin:2px 0 0}.lot-materials-card .data-table-scroll{position:relative}.phase-estimation__body{gap:18px;padding:20px;display:grid}.phase-estimation__count{border:1px solid var(--divider);border-radius:var(--radius-compact);background:var(--surface-strong);color:var(--muted-foreground);white-space:nowrap;flex:none;align-items:center;gap:6px;padding:5px 10px;font-size:12px;font-weight:700;display:inline-flex}.phase-estimation__count b{color:var(--foreground);font-variant-numeric:tabular-nums}.estimation-block{gap:10px;display:grid}.estimation-block__head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;display:flex}.estimation-block__head h3{margin:0;font-size:14px}.estimation-block__head p{color:var(--muted-foreground);margin:0;font-size:12px}.estimation-line{gap:6px;display:grid}.estimation-line__row{grid-template-columns:minmax(0,1fr) 132px 40px;align-items:end;gap:8px;display:grid}.estimation-line__row .field,.estimation-line__row .combobox-field{min-width:0}.estimation-line__row .line__remove{margin-bottom:0}.estimation-line--invalid .material-combobox__input,.estimation-line--invalid .quantity-input__field{border-color:var(--danger)}.estimation-line__hint{color:var(--muted-foreground);align-items:center;gap:6px;margin:0;font-size:12px;display:flex}.estimation-line__composition{border-left:2px solid var(--divider);gap:6px;margin-left:6px;padding:2px 0 4px 8px;display:grid}.estimation-line__composition .composition-list{margin:0}.estimation-line__composition .composition-list li:nth-child(odd){background:var(--surface-strong)}@supports (color:color-mix(in lab,red,red)){.estimation-line__composition .composition-list li:nth-child(odd){background:color-mix(in srgb,var(--surface-strong) 55%,transparent)}}.composition-list__calc{color:var(--muted-foreground);font-variant-numeric:tabular-nums;flex:none;margin-left:auto;font-size:11px}.composition-list__calc+.composition-list__qty{text-align:right;min-width:84px;margin-left:0}.estimation-consolidated .data-panel__head h3{margin:0;font-size:14px}.estimation-empty{margin:14px}.data-table.estimation-table .estimation-table__name{font-weight:600}.data-table.estimation-table .estimation-table__qty{font-weight:700}.lot-materials-card .data-state{min-height:132px;box-shadow:none;background:0 0;border:0;border-radius:0;padding:22px 20px}.data-table.materials-table{--materials-buy-text:var(--danger);--materials-dispatch-text:var(--info);min-width:980px}[data-theme=dark] .data-table.materials-table{--materials-buy-text:var(--danger)}@supports (color:color-mix(in lab,red,red)){[data-theme=dark] .data-table.materials-table{--materials-buy-text:color-mix(in srgb, var(--danger) 45%, var(--foreground))}}[data-theme=dark] .data-table.materials-table{--materials-dispatch-text:var(--info)}@supports (color:color-mix(in lab,red,red)){[data-theme=dark] .data-table.materials-table{--materials-dispatch-text:color-mix(in srgb, var(--info) 45%, var(--foreground))}}.data-table.materials-table .materials-table__name{min-width:200px;font-weight:600}.data-table.materials-table .materials-group__row th{background:var(--surface-strong)}@supports (color:color-mix(in lab,red,red)){.data-table.materials-table .materials-group__row th{background:color-mix(in srgb,var(--surface-strong) 55%,var(--surface))}}.data-table.materials-table .materials-group__row th{color:var(--foreground);letter-spacing:0;text-transform:none;font-size:14px;font-weight:400}.data-table.materials-table .materials-group+.materials-group .materials-group__row th{border-top:1px solid var(--divider)}.data-table.materials-table .materials-group[data-open=false]:last-child .materials-group__row th{border-bottom:0}.data-table.materials-table .materials-group__row th.materials-group__quantity{color:var(--muted-foreground);letter-spacing:.05em;text-transform:uppercase;font-size:12px;font-weight:700}.data-table.materials-table .materials-group__row th.materials-group__tools{text-align:right}.materials-group__row .materials-group__copy{border-radius:var(--radius-compact);gap:6px;min-height:34px;margin-block:-4px;padding:5px 12px;font-size:13px}.materials-group__head{align-items:center;gap:4px 16px;display:flex}.materials-group__toggle{border-radius:var(--radius-compact);min-height:44px;color:inherit;cursor:pointer;font:inherit;transition:background var(--motion);background:0 0;border:0;align-items:center;gap:10px;margin:-8px 0 -8px -8px;padding:0 8px;display:inline-flex}.materials-group__toggle:hover{background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.materials-group__toggle:hover{background:color-mix(in srgb,var(--foreground) 6%,transparent)}}.materials-group__toggle:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.materials-group__chevron{color:var(--muted-foreground);transition:transform var(--motion)}.materials-group__toggle[aria-expanded=false] .materials-group__chevron{transform:rotate(-90deg)}.materials-group__title{font-family:Archivo,"Source Sans 3",system-ui,sans-serif;font-size:15px;font-weight:700}.materials-group__count{border:1px solid var(--divider);background:var(--surface);font-variant-numeric:tabular-nums;border-radius:6px;place-items:center;min-width:24px;height:22px;padding:0 6px;font-size:12px;font-weight:700;display:inline-grid}.materials-group__hint{color:var(--muted-foreground);font-size:13px}.materials-group--buy .materials-group__icon{color:var(--materials-buy-text)}.materials-group--dispatch .materials-group__icon{color:var(--materials-dispatch-text)}.materials-group--complete .materials-group__icon{color:var(--success)}.materials-group__qty{font-weight:700}.materials-group__qty--buy{color:var(--materials-buy-text)}.materials-group__qty--dispatch{color:var(--materials-dispatch-text)}.materials-group__qty-note{color:var(--muted-foreground);font-size:12px;display:block}.data-table.materials-table td.materials-group__quantity-cell{line-height:1.3}.materials-coverage{grid-template-columns:minmax(90px,1fr) auto;align-items:center;gap:10px;min-width:150px;display:grid}.materials-coverage strong{min-width:40px;color:var(--foreground);font-variant-numeric:tabular-nums;text-align:right;font-size:13px}.materials-coverage__track{border-radius:var(--radius-compact);background:var(--surface-strong);height:6px;overflow:hidden}.materials-coverage__bar{border-radius:inherit;background:var(--progress);height:100%}.materials-coverage__bar--complete{background:var(--success)}@media(max-width:1180px){.phase-create__grid{grid-template-columns:1fr}.phase-create__data,.phase-create__estimation{grid-area:auto;position:static}}@media(max-width:720px){.estimation-line__row{grid-template-columns:minmax(0,1fr) 40px}.estimation-line__row .quantity-input{grid-column:1/-1}}.entity-workspace{grid-template-columns:minmax(0,1fr);gap:20px;display:grid}.entity-tabs{padding:0 var(--view-gutter);border-bottom:1px solid var(--divider);background:var(--surface-strong)}@supports (color:color-mix(in lab,red,red)){.entity-tabs{background:color-mix(in srgb,var(--surface-strong) 48%,transparent)}}.entity-tabs__list{scrollbar-width:none;gap:4px;display:flex;overflow-x:auto}.entity-tabs__list::-webkit-scrollbar{display:none}.entity-tabs__tab{min-height:52px;color:var(--muted-foreground);cursor:pointer;white-space:nowrap;transition:color var(--motion),background var(--motion);background:0 0;border:0;border-radius:0;flex:none;align-items:center;gap:9px;padding:8px 14px;font-weight:600;display:inline-flex;position:relative}.entity-tabs__tab:hover{color:var(--foreground);background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.entity-tabs__tab:hover{background:color-mix(in srgb,var(--foreground) 6%,transparent)}}.entity-tabs__tab:focus-visible{outline-offset:-2px}.entity-tabs__tab[aria-selected=true]{color:var(--foreground)}.entity-tabs__tab[aria-selected=true]:after{background:var(--brand);content:"";border-radius:3px 3px 0 0;height:3px;position:absolute;bottom:0;left:10px;right:10px}.entity-tabs__tab .icon{width:17px;height:17px}.entity-tabs__count{border:1px solid var(--divider);border-radius:var(--radius-compact);background:var(--surface);min-width:24px;color:var(--muted-foreground);font-variant-numeric:tabular-nums;justify-content:center;padding:1px 7px;font-size:12px;display:inline-flex}.entity-tabs__tab[aria-selected=true] .entity-tabs__count{color:var(--foreground)}.entity-tabs__panel:focus{outline:none}.entity-tabs__panel:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.detail-card__head{border-bottom:1px solid var(--divider);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 20px 14px;display:flex}.detail-card__head h2{letter-spacing:-.02em;align-items:center;gap:10px;margin:0 0 4px;font-size:18px;display:flex}.detail-card__head h2 .icon{color:var(--muted-foreground)}.detail-card__head p{color:var(--muted-foreground);margin:0;font-size:13px}.detail-card__count{border:1px solid var(--divider);border-radius:var(--radius-compact);background:var(--surface-strong);color:var(--foreground);font-variant-numeric:tabular-nums;letter-spacing:0;align-items:center;padding:3px 9px;font-family:"Source Sans 3",system-ui,sans-serif;font-size:12px;font-weight:700;display:inline-flex}.detail-card__action{flex:none}.detail-card__head .detail-card__note{border-radius:4px;align-items:center;gap:8px;max-width:34ch;display:flex}.detail-card__note .icon{width:16px;height:16px;color:var(--success)}.detail-card__note:focus{outline:none}.detail-card__note:focus-visible{outline:2px solid var(--brand);outline-offset:4px}.detail-card .data-state{min-height:132px;padding:22px 20px}.detail-card__empty{justify-items:start;display:grid}.detail-card__empty .data-state{width:100%;min-height:0}.detail-card__empty>.button{margin:-8px 20px 22px 72px}.data-table.lot-contractors-table .lot-contractors-table__name{text-overflow:ellipsis;max-width:28ch;font-weight:600;overflow:hidden}.data-table.lot-contractors-table .lot-contractors-table__soft{max-width:24ch;color:var(--muted-foreground);text-overflow:ellipsis;overflow:hidden}.data-table.lot-contractors-table .lot-contractors-table__soft--none{font-style:italic}.data-table.lot-contractors-table th.lot-contractors-table__action,.data-table.lot-contractors-table td.lot-contractors-table__action{text-align:right;width:72px}.data-table.lot-contractors-table td.lot-contractors-table__action{padding-top:2px;padding-bottom:2px}.data-table .lot-contractors-table__remove{color:var(--danger)}.data-table .lot-contractors-table__remove:hover{background:var(--danger)}@supports (color:color-mix(in lab,red,red)){.data-table .lot-contractors-table__remove:hover{background:color-mix(in srgb,var(--danger) 8%,var(--surface))}}.contractor-dialog{width:min(540px,100%)}.contractor-dialog__body{gap:14px;margin-top:22px;display:grid}.contractor-dialog__empty{justify-items:start;gap:12px;display:grid}.contractor-dialog__empty .data-state{width:100%}.contractor-dialog__catalog{color:var(--foreground);text-decoration:none}.contractor-dialog__who{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);align-items:center;gap:12px;margin:20px 0 0;padding:12px 16px;display:flex}.contractor-dialog__who .entity-icon{background:var(--surface)}.contractor-dialog__who>div{gap:2px;min-width:0;display:grid}.contractor-dialog__who strong{overflow-wrap:anywhere}.access-actions{flex-wrap:wrap}.access-switch{border:1px solid var(--border-medium);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-raised-compact);gap:4px;padding:4px;display:inline-flex}.access-switch__option{min-height:38px;color:var(--muted-foreground);cursor:pointer;transition:background var(--motion),color var(--motion);background:0 0;border:0;border-radius:9px;align-items:center;gap:8px;padding:8px 14px;font-size:14px;display:inline-flex}.access-switch__option:hover{color:var(--foreground)}.access-switch__option:focus-visible{outline:3px solid var(--brand);outline-offset:-3px}.access-switch__option small{color:var(--muted-foreground);font-size:12px;font-weight:400}.access-switch__option[aria-current=page]{background:var(--surface-strong);box-shadow:var(--shadow-inset-control),inset 3px 0 0 var(--brand);color:var(--foreground);font-weight:700}.access-switch__option--soon{cursor:not-allowed;opacity:.6}.data-table .is-short{color:var(--danger);font-weight:700}.data-table .is-covered{color:var(--success);font-weight:600;position:relative}.band-metrics--five{grid-template-columns:repeat(5,minmax(0,1fr))}.band-metrics__value--danger{color:var(--danger)}.view-band__meta{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.band-context{padding:4px var(--view-gutter) 18px;border-bottom:1px solid var(--divider);grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);display:grid}.band-context>div{border-left:1px solid var(--divider);padding:14px 20px}.band-context>div:first-child{border-left:0;padding-left:0}.band-context h3{color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;margin:0 0 4px;font-size:11px;font-weight:700}.band-context>div>p{color:var(--muted-foreground);margin:0 0 12px;font-size:12px}.band-context__row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.band-context__add{min-width:240px}.users-split{grid-template-columns:minmax(0,1fr) 352px;align-items:start;gap:16px;display:grid}.users-split__main{gap:16px;min-width:0;display:grid}.user-initials{color:var(--code);letter-spacing:.04em;font-size:12px;font-weight:700}.user-initials--off{opacity:.55}.user-identity{min-width:0}.user-identity b{white-space:nowrap;align-items:center;gap:6px;font-weight:600;display:flex}.user-identity>span{max-width:24ch;color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;margin-top:1px;font-size:12px;display:block;overflow:hidden}.you-chip{border:1px solid var(--border-medium);border-left:3px solid var(--brand);border-radius:var(--radius-compact);background:var(--surface-strong);flex:none;align-items:center;gap:4px;padding:1px 6px;font-size:11px;font-weight:700;display:inline-flex}.you-chip svg{color:var(--brand)}.data-table th.users-table__roles-head,.data-table td.users-table__roles{min-width:150px}.data-table td.users-table__roles .role-chip{max-width:21ch}.data-table td.data-table__num.is-zero b{color:var(--muted-foreground);font-weight:400}.data-table th.users-table__access-head,.data-table td.users-table__access{width:104px;color:var(--muted-foreground);white-space:nowrap;font-size:13px}.data-table th.users-table__state-head{width:122px}.chip-row{flex-wrap:wrap;gap:6px;display:flex}.role-chip{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);white-space:nowrap;align-items:center;gap:6px;max-width:26ch;padding:4px 9px;font-size:12px;display:inline-flex}.role-chip svg{color:var(--muted-foreground);flex:none}.role-chip>span{text-overflow:ellipsis;overflow:hidden}.role-chip small{color:var(--muted-foreground);font-size:12px}.role-chip--inactive{color:var(--muted-foreground);text-decoration:line-through}.role-chip--none{color:var(--muted-foreground);font-style:italic}.role-chip--large{max-width:none;min-height:36px;padding:6px 8px 6px 11px;font-size:13px}.role-chip__remove{width:22px;height:22px;color:var(--muted-foreground);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;padding:0;display:grid}.role-chip__remove:hover:not(:disabled){background:var(--danger)}@supports (color:color-mix(in lab,red,red)){.role-chip__remove:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 14%,transparent)}}.role-chip__remove:hover:not(:disabled){color:var(--danger)}.role-chip__remove:disabled{cursor:not-allowed;opacity:.45}.role-chip__remove:focus-visible{outline:3px solid var(--brand);outline-offset:1px}.access-state{border-radius:var(--radius-compact);background:var(--surface);white-space:nowrap;flex:none;align-items:center;gap:6px;padding:4px 9px;font-size:12px;font-weight:700;display:inline-flex}.access-state--active{border:1px solid var(--success)}@supports (color:color-mix(in lab,red,red)){.access-state--active{border:1px solid color-mix(in srgb,var(--success) 45%,transparent)}}.access-state--active{color:var(--success)}.access-state--inactive{border:1px solid var(--divider);color:var(--muted-foreground)}.access-state--locked{border:1px solid var(--danger)}@supports (color:color-mix(in lab,red,red)){.access-state--locked{border:1px solid color-mix(in srgb,var(--danger) 40%,transparent)}}.access-state--locked{color:var(--danger)}.user-panel{padding:0;position:sticky;top:16px;overflow:hidden}.user-panel__head{border-bottom:1px solid var(--divider);align-items:center;gap:12px;padding:16px;display:flex}.user-panel__head h2{letter-spacing:-.02em;margin:0 0 3px;font-size:17px}.user-panel__head p{color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:12px;overflow:hidden}.user-panel__title{flex:1;min-width:0}.user-panel__head .access-state{align-self:flex-start}.user-panel__icon{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);flex:0 0 44px;place-items:center;width:44px;height:44px;font-size:15px;display:inline-grid}.user-panel__body{gap:14px;padding:16px;display:grid}.user-panel__actions{border-top:1px solid var(--divider);background:var(--surface-strong);grid-template-columns:minmax(0,1fr);gap:8px;padding:16px;display:grid}.user-panel__actions>button{white-space:nowrap;justify-content:center;width:100%}.user-panel .data-state{min-height:220px}.user-block h3{color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;margin:0 0 6px;font-size:11px;font-weight:700}.user-block__note{color:var(--muted-foreground);margin:8px 0 0;font-size:12px}.user-block__stack{gap:8px;display:grid}.user-breakdown{gap:6px;margin:0;padding:0;list-style:none;display:grid}.user-breakdown li{border:1px solid var(--divider);border-radius:var(--radius-compact);justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;font-size:13px;display:flex}.user-breakdown li span{color:var(--muted-foreground);font-size:12px}.user-breakdown li b{font-variant-numeric:tabular-nums}.user-fact{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);align-items:flex-start;gap:10px;padding:12px 14px;font-size:13px;display:flex}.user-fact svg{color:var(--muted-foreground);flex:none;margin-top:1px}.user-fact b{font-size:13px;display:block}.user-fact span{color:var(--muted-foreground);margin-top:2px;font-size:12px;line-height:1.45;display:block}.user-fact--blocked{border-left:3px solid var(--danger)}.user-fact--blocked svg{color:var(--danger)}.user-fact--brand{border-left:3px solid var(--brand)}.user-fact--brand svg{color:var(--brand)}.user-fact--info{border-left:3px solid var(--info)}.user-fact--info svg{color:var(--info)}.user-fact--success{border-left:3px solid var(--success)}.user-fact--success svg{color:var(--success)}.user-fact--empty{color:var(--muted-foreground);font-style:italic}.user-audit{border:1px solid var(--divider);border-radius:var(--radius-compact);background:var(--surface-strong);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:12px;display:flex}.user-audit h3{color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:11px;font-weight:700}.user-audit b{font-size:13px}.user-people{gap:6px;margin:0;padding:0;list-style:none;display:grid}.user-people li{border-radius:var(--radius-compact);align-items:center;gap:10px;min-height:40px;padding:4px 8px;font-size:13px;display:flex}.user-people li .entity-icon{flex-basis:30px;width:30px;height:30px;font-size:11px}.user-people li div{min-width:0}.user-people li b{text-overflow:ellipsis;white-space:nowrap;font-weight:600;display:block;overflow:hidden}.user-people li span{color:var(--muted-foreground);text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.user-form__row{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px;display:grid}.check-field{align-items:center;gap:10px;min-height:44px;font-size:14px;display:flex}.check-field input{width:18px;height:18px;accent-color:var(--brand);cursor:pointer;margin:0}.check-field input:disabled{cursor:not-allowed;opacity:.45}.check-field input:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.check-field small{color:var(--muted-foreground);font-size:12px}.permission-panel__tools{border-bottom:1px solid var(--divider);background:var(--surface-strong);flex-wrap:wrap;align-items:center;gap:10px;padding:12px 16px;display:flex}@supports (color:color-mix(in lab,red,red)){.permission-panel__tools{background:color-mix(in srgb,var(--surface-strong) 55%,transparent)}}.permission-panel__tools .view-toolbar__search{flex:220px}.permission-panel__tools .view-toolbar__search input{min-height:40px}.permission-panel__tools .check-field{min-height:40px;font-size:13px}.data-table.permission-matrix tbody td{vertical-align:middle;white-space:normal;height:auto;min-height:48px;padding:10px 16px}.data-table.permission-matrix th.permission-matrix__perm-head,.data-table.permission-matrix td.permission-matrix__perm,.data-table.permission-matrix th.permission-matrix__by-head,.data-table.permission-matrix td.permission-matrix__by{width:230px}.data-table.permission-matrix th.permission-matrix__check-head,.data-table.permission-matrix td.permission-matrix__check{text-align:center;width:100px}.permission-matrix__module td{background:var(--surface-strong);color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;padding:10px 16px;font-size:12px;font-weight:700}.permission-matrix__module td span{letter-spacing:0;text-transform:none;margin-left:8px;font-weight:400}.permission-matrix__toggle{width:100%;min-height:32px;color:inherit;cursor:pointer;font:inherit;letter-spacing:inherit;text-align:left;text-transform:inherit;background:0 0;border:0;align-items:center;gap:8px;padding:2px 0;display:inline-flex}.permission-matrix__toggle:hover{color:var(--foreground)}.permission-matrix__toggle:focus-visible{outline:3px solid var(--brand);outline-offset:-3px;border-radius:var(--radius-compact)}.permission-matrix__toggle svg{flex:none}.permission-matrix__entity td{background:var(--surface-strong);padding:8px 16px}@supports (color:color-mix(in lab,red,red)){.permission-matrix__entity td{background:color-mix(in srgb,var(--surface-strong) 45%,transparent)}}.permission-matrix__entity td{font-size:13px;font-weight:700}.permission-matrix__entity-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.permission-matrix__entity-row label{color:var(--muted-foreground);cursor:pointer;align-items:center;gap:8px;font-size:12px;font-weight:400;display:inline-flex}.permission-matrix__entity-row input{width:18px;height:18px;accent-color:var(--brand);cursor:pointer;margin:0}.permission-matrix__perm b{color:var(--muted-foreground);font-weight:600;display:block}.permission-matrix__row.is-granted .permission-matrix__perm b{color:var(--foreground)}.permission-matrix__perm b em{color:var(--brand);font-size:11px;font-style:normal;font-weight:700}.data-table.permission-matrix td.permission-matrix__what{min-width:32ch;color:var(--muted-foreground);overflow-wrap:anywhere;font-size:13px;line-height:1.45}.permission-matrix__row.is-changed td.permission-matrix__perm,.permission-matrix__row.is-changed td.permission-matrix__check--control{box-shadow:inset 3px 0 0 var(--brand)}.permission-matrix__check input{width:18px;height:18px;accent-color:var(--brand);cursor:pointer;margin:0}.permission-matrix__check input:disabled{cursor:not-allowed;opacity:.45}.permission-matrix__check input:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.permission-matrix__check small{color:var(--muted-foreground);margin-top:4px;font-size:11px;display:block}.grant{color:var(--success);white-space:nowrap;align-items:center;gap:5px;font-size:12px;font-weight:700;display:inline-flex}.grant--none{color:var(--muted-foreground);font-weight:400}@media(max-width:1180px){.users-split{grid-template-columns:minmax(0,1fr)}.user-panel{position:static}.band-context{grid-template-columns:minmax(0,1fr)}.band-context>div{border-left:0;border-top:1px solid var(--divider);padding-left:0}.band-context>div:first-child{border-top:0}}@media(max-width:960px){.band-metrics--five{grid-template-columns:repeat(2,minmax(0,1fr))}.user-form__row{grid-template-columns:minmax(0,1fr)}}.roles-table__name{text-overflow:ellipsis;white-space:nowrap;max-width:28ch;font-weight:600;overflow:hidden}.data-table th.roles-table__count-head{width:96px}.data-table th.roles-table__state-head{width:122px}.data-table th.roles-table__date-head,.data-table td.roles-table__date{width:112px;color:var(--muted-foreground);white-space:nowrap;font-size:13px}.role-chip--large .entity-icon{flex:0 0 24px;width:24px;height:24px;font-size:10px}.home-metrics__alert .icon{align-self:center}.home-projects__head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 16px;margin:0 0 14px;display:flex}.home-projects__head h2{letter-spacing:-.02em;margin:0;font-size:18px}.home-projects__head p{color:var(--muted-foreground);margin:0;font-size:13px}.home-projects{grid-template-columns:repeat(auto-fill,minmax(min(100%,460px),1fr));align-items:start;gap:20px;display:grid}.project-card{padding:0;overflow:hidden}.project-card__head{border-bottom:1px solid var(--divider);grid-template-columns:34px minmax(0,1fr);align-items:center;gap:12px;padding:16px 18px;display:grid}.project-card__identity{min-width:0}.project-card__title{letter-spacing:-.01em;align-items:baseline;gap:8px;min-width:0;margin:0;font-size:16px;display:flex}.project-card__title .entity-code{letter-spacing:0;font-family:"Source Sans 3",system-ui,sans-serif;font-size:14px}.project-card__name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-card__meta{color:var(--muted-foreground);margin:2px 0 0;font-size:13px}.project-card__lots{margin:0;padding:0;list-style:none}.project-card__lots li+li{border-top:1px solid var(--divider)}.project-card__empty{color:var(--muted-foreground);align-items:center;gap:10px;margin:0;padding:18px;font-size:14px;display:flex}.project-card__foot{border-top:1px solid var(--divider);color:var(--muted-foreground);justify-content:space-between;align-items:center;gap:12px;padding:6px 10px 6px 18px;font-size:12px;display:flex}.project-card__link{border-radius:var(--radius-compact);min-height:44px;color:var(--muted-foreground);cursor:pointer;transition:color var(--motion),background-color var(--motion);background:0 0;border:0;align-items:center;gap:6px;padding:6px 10px;font-size:13px;font-weight:600;display:inline-flex}.project-card__link:hover{background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.project-card__link:hover{background:color-mix(in srgb,var(--foreground) 6%,transparent)}}.project-card__link:hover{color:var(--foreground)}.lot-row{color:inherit;grid-template-columns:minmax(0,1fr) 132px;align-items:center;gap:16px;padding:11px 18px;text-decoration:none;display:grid}.lot-row--link{transition:background-color var(--motion)}.lot-row--link:hover{background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.lot-row--link:hover{background:color-mix(in srgb,var(--foreground) 5%,transparent)}}.lot-row--link:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.lot-row__main{gap:2px;min-width:0;display:grid}.lot-row__name{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.lot-row__meta{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:2px 8px;font-size:12px;display:flex}.lot-row__meta .entity-code{font-size:12px}.lot-row__timing{align-items:center;gap:4px;display:inline-flex}.lot-row__timing--late{color:var(--danger);font-weight:600}.lot-row__progress{font-variant-numeric:tabular-nums;grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:8px;font-size:13px;display:grid}.lot-row__progress b{text-align:right}@media(max-width:480px){.lot-row{grid-template-columns:minmax(0,1fr);gap:8px}.lot-row__progress{max-width:220px}}.kit-lines .data-panel__head{align-items:center}.kit-lines .data-panel__head h3{margin:0;font-size:14px}.kit-lines .data-panel__head p{color:var(--muted-foreground);margin:2px 0 0;font-size:12px}.kit-lines__summary{align-items:center;gap:6px;font-size:13px;font-weight:700;display:inline-flex}.kit-lines__summary--ok{color:var(--success)}.kit-lines__summary--short{color:var(--danger)}.kit-lines__summary--idle{color:var(--muted-foreground);font-weight:600}.data-table.kit-lines-table th,.data-table.kit-lines-table td{padding-left:14px;padding-right:14px}.data-table.kit-lines-table .kit-lines-table__groups th{letter-spacing:.08em;border-bottom:0;height:34px;padding-top:6px;padding-bottom:4px;font-size:10px}.data-table.kit-lines-table .kit-lines-table__group{border-left:1px solid var(--divider);text-align:left}.data-table.kit-lines-table .kit-lines-table__group .icon{vertical-align:-2px;margin-right:6px}.data-table.kit-lines-table .kit-lines-table__group .entity-code{letter-spacing:.02em;margin-left:6px;font-size:11px}.data-table.kit-lines-table .kit-lines-table__first{border-left:1px solid var(--divider)}.data-table.kit-lines-table .kit-lines-table__name{font-weight:600}.data-table.kit-lines-table .kit-lines-table__qty{font-weight:700}.data-table.kit-lines-table .kit-lines-table__row--short td:first-child{box-shadow:inset 3px 0 0 var(--danger)}.kit-lines-table__shortage{color:var(--danger);align-items:center;gap:5px;font-weight:700;display:inline-flex}.kit-lines-table__zero{font-weight:600}.lot-kits-split .data-panel__head>div{flex:1 1 0;min-width:0}.data-table.kits-table small{color:var(--muted-foreground);white-space:nowrap;font-size:12px;font-weight:400;display:block}.data-table.kits-table .kits-table__since,.data-table.kits-table .kits-table__since small{white-space:normal}@media(max-width:720px){.data-table.kits-table .kits-table__since,.data-table.kits-table .kits-table__since small{white-space:nowrap}}.data-table.kits-table .kits-table__overdue{color:var(--danger);align-items:center;gap:4px;font-weight:600;display:flex}.lot-kits-split .orders-split__main>*{min-width:0}.kit-dialog{width:min(540px,100%)}.kit-dialog .composition-list{margin-top:14px}.kit-receive-dialog{width:min(640px,100%)}.kit-receive__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 14px;display:flex}.kit-receive__context{color:var(--muted-foreground);flex-wrap:wrap;gap:2px 8px;margin:2px 0 6px;font-size:13px;display:flex}.kit-receive__confirm{color:var(--foreground);font-weight:600}.kit-receive__context>span+span:before{content:"·";margin-right:8px}.kit-receive__bulk{flex-wrap:wrap;gap:8px;display:flex}.kit-receive__head h3{margin:0;font-size:15px}.kit-receive__list{border:1px solid var(--divider);border-radius:var(--radius-compact);margin:0;padding:0;list-style:none;display:grid}.kit-receive__item{grid-template-columns:22px minmax(0,1fr) minmax(150px,190px);align-items:center;gap:6px 12px;padding:10px 14px;display:grid}.kit-receive__item+.kit-receive__item{border-top:1px solid var(--divider)}.kit-receive__item.is-picked{background:var(--brand)}@supports (color:color-mix(in lab,red,red)){.kit-receive__item.is-picked{background:color-mix(in srgb,var(--brand) 6%,transparent)}}.kit-receive__item.is-full{background:var(--success)}@supports (color:color-mix(in lab,red,red)){.kit-receive__item.is-full{background:color-mix(in srgb,var(--success) 8%,transparent)}}.kit-receive__item.is-full .kit-receive__check{accent-color:var(--success)}.kit-receive__arrival{align-items:center;gap:4px;margin-top:2px;font-size:12px;font-weight:600;display:inline-flex}.kit-receive__arrival--full{color:var(--success)}.kit-receive__arrival--partial{color:var(--brand)}@supports (color:color-mix(in lab,red,red)){.kit-receive__arrival--partial{color:color-mix(in srgb,var(--brand) 65%,var(--foreground))}}.kit-receive__check{width:20px;height:20px;accent-color:var(--brand);margin:0}.kit-receive__material{cursor:pointer;align-items:center;gap:10px;min-width:0;min-height:44px;display:flex}.kit-receive__material>span{min-width:0;display:grid}.kit-receive__material .material-icon{color:var(--muted-foreground);flex:none}.kit-receive__material small{font-size:11px}.kit-receive__name{font-size:14px;line-height:1.35}.kit-receive__pending{color:var(--muted-foreground);font-variant-numeric:tabular-nums;font-size:12px}.kit-receive__qty{align-items:center;gap:6px;display:flex}.kit-receive__qty .quantity-input{flex:1}.kit-receive__qty-idle{color:var(--muted-foreground);text-align:center;flex:1}.kit-receive__unit{color:var(--muted-foreground);white-space:nowrap;font-size:12px}.kit-receive__error{grid-column:2/-1;margin:0}.kit-receive__help{color:var(--muted-foreground);margin:0;font-size:13px}.kit-receive__summary{border:1px solid var(--divider);border-radius:var(--radius-compact);background:var(--background);padding:12px 14px;font-size:13.5px}.kit-receive__summary p{margin:0}.kit-receive__summary .kit-receive__count{font-weight:600}.kit-receive__item.is-closed{background:var(--surface-strong)}.kit-receive__item.is-closed .kit-receive__material{cursor:default}.kit-receive__done{background:var(--success);border-radius:5px;place-items:center;width:20px;height:20px;display:grid}@supports (color:color-mix(in lab,red,red)){.kit-receive__done{background:color-mix(in srgb,var(--success) 16%,transparent)}}.kit-receive__done{color:var(--success)}.kit-receive__done--rejected{background:var(--danger)}@supports (color:color-mix(in lab,red,red)){.kit-receive__done--rejected{background:color-mix(in srgb,var(--danger) 14%,transparent)}}.kit-receive__done--rejected{color:var(--danger)}.kit-receive__closed{justify-items:end;gap:2px;display:grid}.kit-receive__closed small{color:var(--muted-foreground);font-size:12px}.kit-receive__summary ul{margin:4px 0 0;padding-left:18px}@media(max-width:480px){.kit-receive__item{grid-template-columns:22px minmax(0,1fr)}.kit-receive__qty,.kit-receive__closed{grid-column:2/-1}.kit-receive__closed{justify-items:start}}.phase-progress-dialog__actions-aside{margin-right:auto}@media(max-width:720px){.phase-progress-dialog__actions-aside{margin-right:0}}.order-form__note{border:1px solid var(--divider);gap:10px;margin:0;padding:12px 14px;display:flex}@supports (color:color-mix(in lab,red,red)){.order-form__note{border:1px solid color-mix(in srgb,var(--divider) 58%,transparent)}}.order-form__note{border-left:3px solid var(--info);border-radius:var(--radius-compact);background:var(--surface-strong);color:var(--muted-foreground);font-size:13px;line-height:1.5}.order-form__note .icon{color:var(--info);flex:none;margin-top:2px}.orders-split{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:16px;display:grid}.orders-split__main{gap:12px;min-width:0;display:grid}.orders-split__main .data-table th,.orders-split__main .data-table td{padding-left:12px;padding-right:12px}.orders-split__main .data-table th.data-table__icon-head,.orders-split__main .data-table td.data-table__icon-cell{width:46px;padding-right:0}.order-panel{top:calc(var(--topbar-height) + 16px);max-height:calc(100vh - var(--topbar-height) - 32px);max-height:calc(100dvh - var(--topbar-height) - 32px);flex-direction:column;min-height:250px;padding:0;display:flex;position:sticky;overflow:hidden auto}.order-panel>*{flex-shrink:0}.data-table.orders-table small{color:var(--muted-foreground);font-size:12px;font-weight:400;display:block}.data-table.orders-table .orders-table__warehouse{font-weight:600}@media(max-width:1180px){.orders-split{grid-template-columns:minmax(0,1fr)}.order-panel{max-height:none;position:static}}.order-panel__head{border-bottom:1px solid var(--divider);align-items:center;gap:12px;padding:16px;display:flex}.order-panel__head h2{letter-spacing:-.01em;margin:0 0 3px;font-size:17px}.order-panel__head p{color:var(--muted-foreground);margin:0;font-size:12px}.order-panel__head>:last-child{margin-left:auto}.order-panel__icon{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);width:44px;height:44px;color:var(--foreground);flex:0 0 44px;place-items:center;display:inline-grid}.order-panel__body{gap:16px;padding:16px;display:grid}.order-panel__body>*{min-width:0}.order-panel__actions{border-top:1px solid var(--divider);background:var(--surface-strong);grid-template-columns:1fr 1fr;gap:8px;padding:16px;display:grid}.order-panel__actions>:first-child,.order-panel__actions>:last-child:nth-child(2n){grid-column:1/-1}.order-panel__note{color:var(--muted-foreground);grid-column:1/-1;gap:8px;margin:0;font-size:13px;line-height:1.45;display:flex}.order-panel__note .icon{flex:none;margin-top:1px}@media(max-width:720px){.order-panel__actions{grid-template-columns:minmax(0,1fr)}}.order-panel__hint{color:var(--muted-foreground);margin:0;font-size:13px;line-height:1.45}.order-panel__actions--even{flex-wrap:wrap;display:flex}.order-panel__actions--even>*{flex:1 1 0;min-width:0;padding-inline:10px}.order-fulfilment .data-table th,.order-fulfilment .data-table td{height:auto;padding:9px 8px}.order-fulfilment .data-table th:first-child,.order-fulfilment .data-table td:first-child{white-space:normal}.order-fulfilment .data-table th.data-table__num,.order-fulfilment .data-table td.data-table__num{width:1%}.fact-block h3,.fact-total h3{color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;margin:0 0 6px;font-family:"Source Sans 3",system-ui,sans-serif;font-size:11px;font-weight:700}.fact-stack{gap:8px;display:grid}.fact-card{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);align-items:center;gap:10px;padding:12px 14px;font-size:13px;display:flex}.fact-card>.icon{width:16px;height:16px;color:var(--muted-foreground)}.fact-card__text{min-width:0}.fact-card__title{overflow-wrap:anywhere;font-size:13px;display:block}.fact-card__note{color:var(--muted-foreground);margin-top:2px;font-size:12px;line-height:1.45;display:block}.fact-card__tag{margin-top:6px;display:block}.fact-card__tag .badge{border:1px solid var(--border-medium);background:var(--surface);min-height:20px;padding:1px 7px;font-size:11px}.fact-card a{color:inherit;border-radius:4px;align-items:center;gap:6px;text-decoration:none;display:inline-flex}.fact-card a:hover{text-decoration:underline}.fact-card--info,.fact-card--success,.fact-card--danger,.fact-card--dispatch,.fact-card--progress{padding-left:12px}.fact-card--info{border-left:3px solid var(--info)}.fact-card--info>.icon{color:var(--info)}.fact-card--success{border-left:3px solid var(--success)}.fact-card--success>.icon{color:var(--success)}.fact-card--danger{border-left:3px solid var(--danger)}.fact-card--danger>.icon{color:var(--danger)}.fact-card--dispatch{border-left:3px solid var(--dispatch)}.fact-card--progress{border-left:3px solid var(--progress)}.fact-card--progress>.icon{color:var(--progress)}@supports (color:color-mix(in lab,red,red)){.fact-card--progress>.icon{color:color-mix(in srgb,var(--progress) 65%,var(--foreground))}}.fact-card--dispatch>.icon{color:var(--dispatch)}.fact-card--empty .fact-card__title{color:var(--muted-foreground);font-style:italic}.fact-lines{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);margin:0;padding:0;list-style:none}.fact-lines li{border-bottom:1px solid var(--divider);align-items:center;gap:10px;min-height:48px;padding:8px 12px;font-size:13px;display:flex}.fact-lines li:last-child{border-bottom:0}.fact-lines .material-icon{color:var(--muted-foreground);flex:none}.fact-lines__text{flex:1;min-width:0;display:grid}.fact-lines__code{font-size:11px}.kit-panel__actions{grid-template-columns:minmax(0,1fr)}.kit-history{gap:8px;margin:0;padding:0;list-style:none;display:grid}.kit-history__entry{border:1px solid var(--border-medium);border-left:3px solid var(--success);border-radius:var(--radius-compact);background:var(--surface-strong);grid-template-columns:16px minmax(0,1fr);gap:4px 10px;padding:11px 14px 11px 12px;font-size:13px;display:grid}.kit-history__entry>.icon{color:var(--success);margin-top:2px}.kit-history__entry--rejected{border-left-color:var(--danger)}.kit-history__entry--rejected>.icon{color:var(--danger)}.kit-history__head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:2px 8px;display:flex}.kit-history__title{font-weight:600}.kit-history__when{color:var(--muted-foreground);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.kit-history__who{color:var(--muted-foreground);grid-column:2;margin:0;font-size:12px}.kit-history__who b{color:var(--foreground);font-weight:600}.kit-history__legacy{font-style:italic}.kit-history__lines{grid-column:2;gap:2px;margin:4px 0 0;padding:0;list-style:none;display:grid}.kit-history__lines li{justify-content:space-between;gap:8px;font-size:12.5px;display:flex}.kit-history__lines li span:last-child{font-variant-numeric:tabular-nums;white-space:nowrap;flex:none}.kit-history__lines li{align-items:baseline;line-height:19px}.kit-history__lines li span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.kit-history__lines--scroll{overscroll-behavior:contain;border-radius:4px;max-height:208px;padding-right:6px;overflow-y:auto}.kit-history__lines--scroll:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.kit-history__reason{background:var(--danger);border-radius:6px;grid-column:2;margin:4px 0 0;padding:6px 9px}@supports (color:color-mix(in lab,red,red)){.kit-history__reason{background:color-mix(in srgb,var(--danger) 7%,var(--surface))}}.kit-history__reason{font-size:12.5px}.order-history{gap:8px;margin:0;padding:0;list-style:none;display:grid}.order-history__entry{border:1px solid var(--border-medium);border-left:3px solid var(--muted-foreground);border-radius:var(--radius-compact);background:var(--surface-strong);grid-template-columns:16px minmax(0,1fr);gap:4px 10px;padding:11px 14px 11px 12px;font-size:13px;display:grid}.order-history__entry>.icon{color:var(--muted-foreground);margin-top:2px}.order-history__entry--removed{border-left-color:var(--danger)}.order-history__entry--removed>.icon{color:var(--danger)}.order-history__entry--changed{border-left-color:var(--info)}.order-history__entry--changed>.icon{color:var(--info)}.order-history__head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:2px 8px;display:flex}.order-history__title{font-weight:600}.order-history__when{color:var(--muted-foreground);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.order-history__who,.order-history__lines,.order-history__notes,.order-history__comment{grid-column:2}.order-history__who{color:var(--muted-foreground);margin:0;font-size:12px}.order-history__who b{color:var(--foreground);font-weight:600}.order-history__lines{gap:4px;margin:4px 0 0;padding:0;list-style:none;display:grid}.order-history__lines li{justify-content:space-between;align-items:baseline;gap:8px;font-size:12.5px;display:flex}.order-history__material{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.order-history__material .entity-code{font-size:11px}.order-history__diff{font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;align-items:baseline;gap:4px;display:inline-flex}.order-history__diff .icon{color:var(--muted-foreground);align-self:center}.order-history del{color:var(--muted-foreground)}.order-history__delta{color:var(--muted-foreground);font-size:11px;font-weight:600}.order-history__tag{border-radius:6px;padding:0 6px;font-size:11px;font-weight:600}.order-history__tag--added{background:var(--info)}@supports (color:color-mix(in lab,red,red)){.order-history__tag--added{background:color-mix(in srgb,var(--info) 14%,var(--surface))}}.order-history__tag--added{color:var(--info)}.order-history__tag--removed{background:var(--danger)}@supports (color:color-mix(in lab,red,red)){.order-history__tag--removed{background:color-mix(in srgb,var(--danger) 12%,var(--surface))}}.order-history__tag--removed{color:var(--danger)}.order-history__notes,.order-history__comment{border-radius:6px;margin:4px 0 0;padding:6px 9px;font-size:12.5px}.order-history__notes{border:1px solid var(--divider);background:var(--surface)}.order-history__notes del{display:block}.order-history__comment{background:var(--brand)}@supports (color:color-mix(in lab,red,red)){.order-history__comment{background:color-mix(in srgb,var(--brand) 8%,var(--surface))}}.order-history__notes b,.order-history__comment b{color:var(--muted-foreground);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:700;display:block}.order-history__notes p,.order-history__comment p{overflow-wrap:anywhere;margin:2px 0 0}.fact-lines__foot{margin-top:3px}.kit-line-state{align-items:center;gap:4px;font-size:12px;font-weight:600;line-height:1.35;display:inline-flex}.kit-line-state .icon{flex:none}.kit-line-state--pending{color:var(--muted-foreground)}.kit-line-state--partial{color:var(--progress)}@supports (color:color-mix(in lab,red,red)){.kit-line-state--partial{color:color-mix(in srgb,var(--progress) 65%,var(--foreground))}}.kit-line-state--received{color:var(--success)}.kit-line-state--rejected{color:var(--danger)}.fact-lines__name{-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.35;display:-webkit-box;overflow:hidden}.fact-lines .inactive-material-tag{flex:none}.fact-lines__qty{font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;align-items:baseline;gap:5px;display:flex}.fact-lines__qty b{font-size:15px}.fact-lines__qty span{color:var(--muted-foreground);font-size:12px}.fact-lines__action{flex:none;margin-block:-4px;display:inline-flex}.order-fulfilment__locked{min-width:44px;color:var(--muted-foreground);justify-content:center;align-items:center;display:inline-flex}.icon-button--danger{color:var(--danger)}.fact-lines-limited{gap:6px;display:grid}.fact-lines--scroll{overflow:hidden}.scroll-cap{overscroll-behavior:contain;overflow-y:auto}.scroll-cap:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.scroll-cap[data-overflow-start],.scroll-cap[data-overflow-end]{--scroll-fade-start:0px;--scroll-fade-end:0px;-webkit-mask-image:linear-gradient(to bottom,transparent,currentColor var(--scroll-fade-start),currentColor calc(100% - var(--scroll-fade-end)),transparent);mask-image:linear-gradient(to bottom,transparent,currentColor var(--scroll-fade-start),currentColor calc(100% - var(--scroll-fade-end)),transparent)}.scroll-cap[data-overflow-start]{--scroll-fade-start:24px}.scroll-cap[data-overflow-end]{--scroll-fade-end:32px}.composition-limited{gap:6px;margin:14px 0 10px;display:grid}.composition-limited>.scroll-cap>.composition-list{margin:0}.fact-lines__list{margin:0;padding:0;list-style:none}.fact-table{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);overflow:hidden}.fact-total{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.fact-total h3{margin:0}.fact-total b{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;text-align:right;min-width:0;font-size:15px}.fact-total small{color:var(--muted-foreground);margin-left:4px;font-size:12px;font-weight:400}.order-fulfilment__code{flex-wrap:wrap;align-items:center;gap:2px 6px;font-size:11px;display:flex}.order-fulfilment__name{-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.35;display:-webkit-box;overflow:hidden}.order-picker{width:min(600px,100%)}.order-picker__steps{gap:14px;margin:22px 0 0;padding:0;list-style:none;display:grid}.order-picker__step{grid-template-columns:28px minmax(0,1fr);column-gap:12px;display:grid;position:relative}.order-picker__step+.order-picker__step:before{border-left:1px solid var(--border-medium);content:"";height:24px;position:absolute;top:-14px;left:13.5px}.order-picker__number{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface-strong);width:28px;height:28px;color:var(--muted-foreground);place-items:center;margin-top:24px;font-size:12px;font-weight:700;display:grid}.order-picker__step--done .order-picker__number{border-color:var(--brand);color:var(--foreground)}.order-picker__locked{color:var(--muted-foreground)}.order-dialog{width:min(560px,100%)}.order-dialog .composition-list{margin-top:14px}.order-dialog__summary small{color:var(--muted-foreground);margin-top:2px;font-size:12px;font-weight:500;display:block}@media(max-width:480px){.order-dialog__summary{grid-template-columns:minmax(0,1fr)}}.purchase-create__order{margin-bottom:16px}.purchase-create__order p{margin:0}.purchase-form__locked>span{min-width:0;color:var(--foreground);align-items:center;gap:8px;display:inline-flex;overflow:hidden}.purchase-form__locked-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.purchase-form__locked b,.purchase-form__locked .icon{flex:none}.purchase-line__quantity{min-width:0}.purchase-order-origin{color:var(--muted-foreground);align-items:center;gap:6px;font-size:13px;display:inline-flex}.purchase-order-origin a{border-radius:4px;align-items:center;display:inline-flex}.purchase-summary__head .purchase-order-origin{margin-top:4px}.lot-materials-card__actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.lot-estimation{gap:16px;display:grid}.lot-estimation__warning ul{gap:3px;margin:6px 0 0;padding-left:18px;display:grid}.lot-estimation__warning p{margin:2px 0 0}.lot-estimation__warning strong{display:block}.lot-estimation__actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.strategic-identity .view-band__layout{align-items:flex-end}.strategic-identity__text{min-width:0}.strategic-identity__meta{color:var(--muted-foreground);font-size:13.5px}.strategic-identity__meta>span{align-items:center;gap:6px;display:inline-flex}.strategic-identity__meta b{color:var(--foreground);font-weight:600}.strategic-identity__project{min-width:260px}.strategic-metrics{grid-template-columns:repeat(6,minmax(0,1fr))}.strategic-metrics>.strategic-metric{padding:0}.strategic-metric__body{width:100%;height:100%;color:inherit;font:inherit;text-align:left;background:0 0;border:0;border-radius:0;align-content:start;gap:6px;padding:14px 20px;display:grid}.strategic-metric:first-child .strategic-metric__body{width:calc(100% + 12px);margin-left:-12px;padding-left:12px}button.strategic-metric__body{cursor:pointer;transition:background var(--motion),box-shadow var(--motion)}button.strategic-metric__body:hover{background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){button.strategic-metric__body:hover{background:color-mix(in srgb,var(--foreground) 4%,transparent)}}button.strategic-metric__body:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}button.strategic-metric__body[aria-pressed=true]{background:var(--brand)}@supports (color:color-mix(in lab,red,red)){button.strategic-metric__body[aria-pressed=true]{background:color-mix(in srgb,var(--brand) 9%,transparent)}}button.strategic-metric__body[aria-pressed=true]{box-shadow:inset 0 -3px 0 var(--brand)}button.strategic-metric__body[aria-pressed=true] .strategic-metric__label{color:var(--foreground)}.strategic-metric__label{color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:6px;font-size:11px;font-weight:700;display:inline-flex}.strategic-metric__value{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:26px;font-weight:700;line-height:1}.strategic-metric__note{color:var(--muted-foreground);overflow-wrap:anywhere;font-size:12.5px;line-height:1.35}.strategic-filter-note{padding:8px var(--view-gutter);border-bottom:1px solid var(--divider);background:var(--brand);flex-wrap:wrap;align-items:center;gap:10px;display:flex}@supports (color:color-mix(in lab,red,red)){.strategic-filter-note{background:color-mix(in srgb,var(--brand) 10%,var(--background))}}.strategic-filter-note{font-size:13.5px}.strategic-stage{grid-template-columns:360px minmax(0,1fr);height:calc(100dvh - 300px);min-height:560px;display:grid;overflow:hidden}.strategic-stage__column{border-right:1px solid var(--divider);min-height:0;overflow-y:auto}.flow-board__head{justify-content:space-between;align-items:center;gap:8px;padding:16px 16px 12px;display:flex}.flow-board__head h2{align-items:center;gap:8px;margin:0;font-size:16px;display:inline-flex}.flow-board__count{background:var(--surface-strong);min-width:24px;height:22px;color:var(--muted-foreground);border-radius:6px;place-items:center;padding:0 7px;font-size:12.5px;font-weight:600;display:inline-grid}.flow-kinds{border-bottom:1px solid var(--divider);flex-wrap:wrap;gap:8px;padding:0 16px 16px;display:flex}.flow-kinds button{border:1px solid var(--border-medium);border-radius:var(--radius-compact);background:var(--surface);min-height:34px;color:var(--muted-foreground);cursor:pointer;font:inherit;align-items:center;gap:6px;padding:0 12px;font-size:12.5px;font-weight:600;display:inline-flex}.flow-kinds button:hover{color:var(--foreground)}.flow-kinds button[aria-pressed=true]{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand);color:var(--foreground)}.flow-kinds button:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.flow-kinds button span{color:var(--muted-foreground);font-weight:400}.flow-board__lanes{gap:24px;padding:16px 16px 20px;display:grid}.flow-board__empty{color:var(--muted-foreground);align-items:center;gap:6px;margin:0;padding:6px 2px;font-size:13px;display:flex}.flow-tone--danger{--tone:var(--danger)}.flow-tone--dispatch{--tone:var(--dispatch)}.flow-tone--progress{--tone:var(--progress)}.flow-tone--info{--tone:var(--info)}.flow-tone--success{--tone:var(--success)}.flow-tone--neutral{--tone:var(--muted-foreground)}.flow-lane{display:grid}.flow-lane__head{border-bottom:1px solid var(--divider);color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;align-items:center;margin:0;padding:0 0 8px;font-size:12px;font-weight:700;display:flex}.flow-lane__head>span:first-child{align-items:center;gap:7px;display:inline-flex}.flow-lane__head svg{color:var(--tone)}.flow-card{border-bottom:1px solid var(--divider);border-left:3px solid var(--tone);font-size:13px;display:grid}.flow-card.is-focus{background:var(--brand)}@supports (color:color-mix(in lab,red,red)){.flow-card.is-focus{background:color-mix(in srgb,var(--brand) 9%,transparent)}}.flow-card.is-focus{outline:2px solid var(--brand);outline-offset:-2px}.flow-card__main{color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;gap:6px;padding:12px 12px 10px 13px;display:grid}.flow-card__main:hover{background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.flow-card__main:hover{background:color-mix(in srgb,var(--foreground) 5%,transparent)}}.flow-card__main:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.flow-card__top{justify-content:space-between;align-items:center;gap:8px;display:flex}.flow-card__when{color:var(--muted-foreground);white-space:nowrap;font-size:12px}.flow-card__when.is-danger{color:var(--danger);font-weight:600}.flow-card__route{flex-wrap:wrap;align-items:center;gap:6px;font-weight:600;line-height:1.35;display:flex}.flow-card__route svg{color:var(--muted-foreground)}.flow-card__target{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.flow-card__lines{color:var(--muted-foreground);font-size:12.5px;line-height:1.45}.flow-card__foot{justify-content:space-between;align-items:center;gap:12px;padding:2px 12px 12px 13px;display:flex}.flow-card__who{color:var(--muted-foreground);gap:2px;font-size:12px;display:grid}.flow-card__blocked{color:var(--danger);align-items:center;gap:4px;font-weight:600;display:inline-flex}.flow-card__action{flex:none;min-height:32px;padding:0 12px;font-size:12.5px}.flow-sheet{gap:16px;padding:16px 16px 20px;display:grid}.flow-sheet .view-backlink{justify-self:start;margin-bottom:0}.flow-sheet__kind{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 4px;font-size:12.5px;display:flex}.flow-sheet__head h2{margin:0;font-size:17px}.flow-sheet__head h2:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.flow-sheet__io{border:1px solid var(--divider);border-radius:var(--radius-compact);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.flow-sheet__io>div{padding:8px 10px}.flow-sheet__io>div+div{border-left:1px solid var(--divider)}.flow-sheet__io dt{color:var(--muted-foreground);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:700}.flow-sheet__io dd{font-variant-numeric:tabular-nums;margin:2px 0 0;font-size:18px;font-weight:700}.flow-sheet__alert{border:1px solid var(--danger);align-items:flex-start;gap:8px;margin:0;padding:8px 10px;display:flex}@supports (color:color-mix(in lab,red,red)){.flow-sheet__alert{border:1px solid color-mix(in srgb,var(--danger) 30%,transparent)}}.flow-sheet__alert{border-radius:var(--radius-compact);background:var(--danger)}@supports (color:color-mix(in lab,red,red)){.flow-sheet__alert{background:color-mix(in srgb,var(--danger) 9%,transparent)}}.flow-sheet__alert{font-size:12.5px}.flow-sheet__alert svg{color:var(--danger);flex:none;margin-top:1px}.flow-sheet__flows{display:grid}.flows-map{isolation:isolate;min-width:0;min-height:0;position:relative}.flows-map>.map-canvas{width:100%;height:100%}.flows-map__legend{z-index:500;border:1px solid var(--divider);background:var(--surface);border-radius:10px;flex-wrap:wrap;gap:6px 14px;max-width:calc(100% - 20px);padding:6px 10px;display:flex;position:absolute;bottom:26px;left:10px}@supports (color:color-mix(in lab,red,red)){.flows-map__legend{background:color-mix(in srgb,var(--surface) 92%,transparent)}}.flows-map__legend{color:var(--muted-foreground);font-size:12px}.flows-map__legend>span{align-items:center;gap:6px;display:inline-flex}.flows-map__legend .project-pin,.flows-map__legend .warehouse-pin{border-width:2px;width:16px;height:16px}.flows-map__line{border-top:3px solid var(--muted-foreground);width:18px;display:inline-block}.flows-map__note{z-index:500;border:1px solid var(--divider);background:var(--surface);border-radius:10px;gap:8px;max-width:min(300px,100% - 70px);margin:0;padding:8px 10px;display:flex;position:absolute;top:10px;left:10px}@supports (color:color-mix(in lab,red,red)){.flows-map__note{background:color-mix(in srgb,var(--surface) 92%,transparent)}}.flows-map__note{color:var(--muted-foreground);font-size:12.5px}.flows-map__note svg{flex:none;margin-top:1px}.flow-site-host{background:0 0;border:0}.flow-site{width:36px;height:36px;transition:opacity var(--motion);display:block;position:relative}.flow-site.is-dim{opacity:.35}.flow-site.is-hot .project-pin{border-color:var(--danger);outline:3px solid var(--danger);border-width:3px}@supports (color:color-mix(in lab,red,red)){.flow-site.is-hot .project-pin{outline:3px solid color-mix(in srgb,var(--danger) 35%,transparent)}}.flow-site.is-hot .project-pin{outline-offset:2px}.flow-site.is-focus .project-pin,.flow-site.is-focus .warehouse-pin{border-color:var(--brand);border-width:3px}.flow-site.is-focus .project-pin svg,.flow-site.is-focus .warehouse-pin svg{stroke:var(--brand)}.flow-site__count{border:2px solid var(--surface);background:var(--tone);min-width:20px;height:20px;color:var(--surface);border-radius:10px;place-items:center;padding:0 5px;font-size:11.5px;font-weight:700;line-height:1;display:grid;position:absolute;top:-8px;right:-10px}.flow-site__alert{border:2px solid var(--surface);background:var(--danger);width:18px;height:18px;color:var(--surface);border-radius:50%;place-items:center;font-size:11px;font-weight:700;line-height:1;display:grid;position:absolute;bottom:4px;right:-9px}.flow-site__code{border:1px solid var(--divider);background:var(--surface);border-radius:5px;margin-top:4px;padding:2px 5px;position:absolute;top:100%;left:50%}@supports (color:color-mix(in lab,red,red)){.flow-site__code{background:color-mix(in srgb,var(--surface) 92%,transparent)}}.flow-site__code{color:var(--code);pointer-events:none;white-space:nowrap;font-size:11px;font-weight:700;line-height:1.2;transform:translate(-50%)}.leaflet-marker-icon:focus-visible .flow-site .project-pin,.leaflet-marker-icon:focus-visible .flow-site .warehouse-pin{outline:3px solid var(--brand);outline-offset:3px}.map-canvas .flow-arc{fill:none;stroke-linecap:round;opacity:.85;transition:opacity var(--motion),stroke-width var(--motion)}.map-canvas .flow-arc--overdue{stroke:var(--danger);stroke-dasharray:10 7}.map-canvas .flow-arc--in_transit{stroke:var(--dispatch);stroke-dasharray:10 7}.map-canvas .flow-arc--partial{stroke:var(--progress);stroke-dasharray:10 7}.map-canvas .flow-arc--in_preparation{stroke:var(--info)}.map-canvas .flow-arc--pending{stroke:var(--muted-foreground);stroke-dasharray:3 7}.map-canvas .flow-arc--received{stroke:var(--success);opacity:.5}.map-canvas .flow-arc.is-dim{opacity:.12}.map-canvas .flow-arc.is-focus{opacity:1;stroke-width:6px}.flows-map__line.flow-arc--overdue{border-top-color:var(--danger);border-top-style:dashed}.flows-map__line.flow-arc--in_transit{border-top-color:var(--dispatch);border-top-style:dashed}.flows-map__line.flow-arc--partial{border-top-color:var(--progress);border-top-style:dashed}.flows-map__line.flow-arc--in_preparation{border-top-color:var(--info)}.flows-map__line.flow-arc--pending{border-top-color:var(--muted-foreground);border-top-style:dotted}.flows-map__line.flow-arc--received{border-top-color:var(--success)}.leaflet-tooltip.flow-tip{border:1px solid var(--divider);border-radius:var(--radius-compact);background:var(--surface);box-shadow:var(--shadow-raised-compact);color:var(--foreground);padding:6px 9px;font-size:12.5px;line-height:1.35}.leaflet-tooltip.flow-tip:before{display:none}@media(max-width:1360px)and (min-width:961px){.strategic-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.strategic-metrics>.strategic-metric:nth-child(3n+1){border-left:0}.strategic-metrics>.strategic-metric:nth-child(3n+1) .strategic-metric__body{width:calc(100% + 12px);margin-left:-12px;padding-left:12px}.strategic-metrics>.strategic-metric:nth-child(n+4){border-top:1px solid var(--divider)}}@media(max-width:1180px){.strategic-stage{grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr);height:auto;min-height:0}.flows-map{order:1;height:max(420px,55dvh)}.strategic-stage__column{border-top:1px solid var(--divider);border-right:0;order:2;overflow:visible}}@media(max-width:960px){.strategic-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.strategic-metrics>.strategic-metric:nth-child(2n) .strategic-metric__body{padding-left:20px}.strategic-metrics>.strategic-metric:nth-child(odd) .strategic-metric__body{width:calc(100% + 12px);margin-left:-12px;padding-left:12px}.strategic-identity .view-band__layout{flex-direction:column;align-items:stretch}.strategic-identity__actions{justify-content:flex-start}}@media(max-width:720px){.strategic-identity__actions>*{flex:100%}.strategic-identity__project{min-width:0}.strategic-identity__actions .view-switch button{flex:1;justify-content:center}.strategic-metric__value{font-size:22px}.flows-map__legend,.flows-map__note{display:none}}.projects-table__project-link{color:inherit;text-decoration:underline}@supports (color:color-mix(in lab,red,red)){.projects-table__project-link{-webkit-text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-decoration-color:color-mix(in srgb,currentColor 35%,transparent)}}.projects-table__project-link{text-underline-offset:3px}.projects-table__project-link:hover{text-decoration-color:currentColor}.project-page__identity{flex-wrap:wrap;align-items:center;gap:10px;margin-top:8px;display:flex}.project-page__hint{text-align:right;flex-basis:100%;max-width:none}.band-metrics.project-page__metrics{grid-template-columns:repeat(5,minmax(0,1fr))}.project-page__metrics .progress-track{margin-top:10px}.project-page__metric--alert dd{color:var(--danger)}.project-page__empty{justify-items:center;gap:12px;display:grid}.project-summary{grid-template-columns:minmax(0,1fr) minmax(280px,440px);align-items:start;gap:24px;display:grid}.project-summary__main{gap:22px;min-width:0;display:grid}.project-summary__dist{border:1px solid var(--divider);border-radius:var(--radius-compact);background:var(--surface);gap:14px;padding:14px 16px;display:grid}.project-summary__dist-row{grid-template-columns:56px minmax(0,1fr);align-items:center;gap:6px 12px;display:grid}.project-summary__dist-label{color:var(--muted-foreground);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:700}.project-summary__dist-bar{background:var(--surface-strong);border-radius:5px;gap:2px;height:10px;display:flex;overflow:hidden}.project-summary__dist-seg{height:100%;display:block}.project-summary__dist-seg--planned{background:var(--muted-foreground)}.project-summary__dist-seg--in_progress{background:var(--info)}.project-summary__dist-seg--completed{background:var(--success)}.project-summary__dist-legend{color:var(--muted-foreground);flex-wrap:wrap;grid-column:2;gap:4px 16px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.project-summary__dist-legend li{align-items:center;gap:6px;display:inline-flex}.project-summary__dist-dot{border-radius:2px;width:9px;height:9px;display:inline-block}.project-summary__dist-empty{color:var(--muted-foreground);font-size:14px}.project-location-map{isolation:isolate;height:280px;padding:0;position:relative;overflow:hidden}.project-location-map>.map-canvas{width:100%;height:100%}.project-summary__map-foot{color:var(--muted-foreground);font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:8px;font-size:13px;display:flex}.project-summary__map-link{min-height:32px;color:var(--foreground);align-items:center;gap:6px;font-size:14px;font-weight:600;display:inline-flex}.project-lots__actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.data-table.project-lots td.project-lots__name{white-space:normal;min-width:260px;max-width:44ch}.data-table.project-lots td.project-lots__name strong{font-weight:600}.data-table.project-lots td.project-lots__name .schedule-delay-tag{margin-left:8px}.project-lots__desc{-webkit-line-clamp:2;color:var(--muted-foreground);-webkit-box-orient:vertical;font-size:13px;display:-webkit-box;overflow:hidden}.project-lots__desc--empty{font-style:italic}.data-table.project-lots td.project-lots__phases{min-width:140px;font-size:13px}.project-lots__steps{gap:3px;margin-top:5px;display:flex}.project-lots__step{background:var(--surface-strong);border-radius:3px;flex:1;min-width:10px;height:6px}.project-lots__step--info{background:var(--info)}.project-lots__step--success{background:var(--success)}.project-lots__step--danger{background:var(--danger)}@media(max-width:1180px){.project-summary{grid-template-columns:minmax(0,1fr)}.band-metrics.project-page__metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:960px){.band-metrics.project-page__metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.band-metrics.project-page__metrics{grid-template-columns:minmax(0,1fr)}.band-metrics.project-page__metrics>div:nth-child(2n){border-left:0;padding-left:0}.band-metrics.project-page__metrics>div:nth-child(2){border-top:1px solid var(--divider)}}.portfolio-detail{gap:16px;margin-top:24px;display:grid}.portfolio-detail__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.portfolio-detail__head h2{letter-spacing:-.02em;margin:0;font-size:20px}.portfolio-detail__head p{max-width:72ch;color:var(--muted-foreground);margin:4px 0 0;font-size:14px}.portfolio-detail__panel{gap:16px;min-width:0;display:grid}.portfolio-detail__pair{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;display:grid}.portfolio-card{scroll-margin-top:96px}.portfolio-card__title:focus{outline:none}.portfolio-card__title:focus-visible{outline:2px solid var(--brand);outline-offset:4px;border-radius:4px}.portfolio-card__body{padding:14px 16px 16px}.portfolio-card__empty,.portfolio-card__note{color:var(--muted-foreground);align-items:center;gap:8px;margin:0;font-size:13.5px;display:flex}.portfolio-card__empty{padding:14px 16px}.portfolio-card__note{padding:0 16px 14px}.portfolio-legend{color:var(--muted-foreground);flex-wrap:wrap;gap:6px 14px;margin:0 0 8px;font-size:12.5px;display:flex}.portfolio-legend span{align-items:center;gap:6px;display:inline-flex}.portfolio-legend i{border-radius:50%;width:10px;height:10px;display:inline-block}.portfolio-legend .portfolio-legend__risk{background:var(--danger)}.portfolio-legend .portfolio-legend__neutral{background:var(--muted-foreground)}.portfolio-legend .portfolio-legend__diagonal{border-top:2px dashed var(--muted-foreground);border-radius:0;width:16px;height:0}.portfolio-legend .portfolio-legend__zone,.portfolio-legend .portfolio-legend__progress,.portfolio-legend .portfolio-legend__behind,.portfolio-legend .portfolio-legend__late{border-radius:3px;width:16px}.portfolio-legend .portfolio-legend__zone{background:var(--danger)}@supports (color:color-mix(in lab,red,red)){.portfolio-legend .portfolio-legend__zone{background:color-mix(in srgb,var(--danger) 14%,transparent)}}.portfolio-legend .portfolio-legend__progress{background:var(--progress)}.portfolio-legend .portfolio-legend__today{background:var(--brand);border-radius:0;width:2px;height:14px}.portfolio-legend .portfolio-legend__behind{background:repeating-linear-gradient(135deg,var(--muted-foreground) 0 2px,transparent 2px 5px)}@supports (color:color-mix(in lab,red,red)){.portfolio-legend .portfolio-legend__behind{background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--muted-foreground) 55%,transparent) 0 2px,transparent 2px 5px)}}.portfolio-legend .portfolio-legend__late{background:repeating-linear-gradient(135deg,var(--danger) 0 2px,transparent 2px 5px)}@supports (color:color-mix(in lab,red,red)){.portfolio-legend .portfolio-legend__late{background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--danger) 45%,transparent) 0 2px,transparent 2px 5px)}}.portfolio-chart{width:100%;min-width:0}.portfolio-chart svg{width:100%;display:block;overflow:visible}.portfolio-chart text{fill:var(--muted-foreground);font-size:12.5px}.portfolio-chart .portfolio-chart__strong{fill:var(--foreground);font-size:13.5px;font-weight:600}.portfolio-chart .portfolio-chart__value{fill:var(--foreground);font-variant-numeric:tabular-nums;font-weight:600}.portfolio-chart .portfolio-chart__danger{fill:var(--danger);font-weight:600}.portfolio-chart__track{fill:var(--surface-strong)}.portfolio-chart__bar{fill:var(--info)}.portfolio-chart__hit{fill:#0000;outline:none}.portfolio-chart__hit:focus-visible{stroke:var(--brand);stroke-width:2px}.portfolio-chart__hit--link{cursor:pointer}.portfolio-chart__max-drop{fill:var(--brand)}@supports (color:color-mix(in lab,red,red)){.portfolio-chart__max-drop{fill:color-mix(in srgb,var(--brand) 14%,transparent)}}.portfolio-chart__max-drop{stroke:var(--brand)}.portfolio-chart .portfolio-chart__max-drop-text{fill:var(--foreground);font-weight:700}.portfolio-chart__grid{stroke:var(--divider)}.portfolio-chart__zone{fill:var(--danger)}@supports (color:color-mix(in lab,red,red)){.portfolio-chart__zone{fill:color-mix(in srgb,var(--danger) 7%,transparent)}}.portfolio-chart__diagonal{stroke:var(--muted-foreground);stroke-dasharray:5 5}.portfolio-chart__dot{fill:var(--muted-foreground);stroke:var(--surface);stroke-width:2px}.portfolio-chart__dot--risk{fill:var(--danger)}.portfolio-tip{z-index:40;border:1px solid var(--border-medium);background:var(--surface);width:max-content;max-width:300px;box-shadow:var(--shadow-floating);color:var(--foreground);pointer-events:none;border-radius:10px;padding:10px 12px;font-size:13px;position:fixed}.portfolio-tip--above{transform:translateY(-100%)}.portfolio-tip dl{grid-template-columns:auto 1fr;gap:4px 10px;margin:6px 0 0;display:grid}.portfolio-tip dt{color:var(--muted-foreground)}.portfolio-tip dd{font-variant-numeric:tabular-nums;margin:0}.portfolio-tip .portfolio-tip__danger{color:var(--danger);font-weight:700}.portfolio-timeline{--timeline-label:250px;--timeline-column:56px}.portfolio-timeline__scroll{border:1px solid var(--divider);border-radius:var(--radius-compact);overflow-x:auto}.portfolio-timeline__grid{grid-template-columns:var(--timeline-label) minmax(calc(var(--timeline-columns) * var(--timeline-column)),1fr);display:grid}.portfolio-timeline__corner,.portfolio-timeline__label{z-index:2;border-right:1px solid var(--divider);background:var(--surface);position:sticky;left:0}.portfolio-timeline__corner{border-bottom:1px solid var(--divider)}.portfolio-timeline__axis{border-bottom:1px solid var(--divider);color:var(--muted-foreground);padding-top:20px;font-size:12px;position:relative}.portfolio-timeline__years,.portfolio-timeline__columns{display:flex}.portfolio-timeline__years span,.portfolio-timeline__columns span{border-left:1px solid var(--divider);white-space:nowrap;padding:3px 6px;overflow:hidden}.portfolio-timeline__years span{color:var(--foreground);font-weight:600}.portfolio-timeline__today-label{color:var(--foreground);white-space:nowrap;font-size:12px;font-weight:700;position:absolute;top:2px;transform:translate(-50%)}.portfolio-timeline__label{border-bottom:1px solid var(--divider);align-content:center;gap:2px;min-width:0;padding:8px 12px;display:grid}.portfolio-timeline__name{align-items:baseline;gap:6px;min-width:0;font-weight:600;display:flex}.portfolio-timeline__name>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.portfolio-timeline__link{font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.portfolio-timeline__link:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}.portfolio-timeline__reading{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:2px 8px;font-size:12.5px;display:flex}.portfolio-timeline__mark{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.portfolio-timeline__track{border-bottom:1px solid var(--divider);min-height:56px;position:relative}.portfolio-timeline__today{background:var(--brand);pointer-events:none;width:2px;margin-left:-1px;position:absolute;top:0;bottom:0}.portfolio-timeline__bar{border:1px solid var(--border-medium);background:var(--surface-strong);border-radius:5px;outline:none;height:16px;display:flex;position:absolute;top:50%;overflow:hidden;transform:translateY(-50%)}.portfolio-timeline__bar:focus-visible{box-shadow:0 0 0 2px var(--brand)}.portfolio-timeline__bar--late{border-color:var(--danger)}.portfolio-timeline__fill{background:var(--progress);position:absolute;top:0;bottom:0;left:0}.portfolio-timeline__lag{background:repeating-linear-gradient(135deg,var(--muted-foreground) 0 2px,transparent 2px 5px);position:absolute;top:0;bottom:0}@supports (color:color-mix(in lab,red,red)){.portfolio-timeline__lag{background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--muted-foreground) 55%,transparent) 0 2px,transparent 2px 5px)}}.portfolio-timeline__unscheduled{gap:4px;margin:12px 0 0;padding:0;font-size:13px;list-style:none;display:grid}.portfolio-timeline__unscheduled-title{color:var(--muted-foreground);letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:600}.data-table.portfolio-table .portfolio-table__wrap{white-space:normal;min-width:180px}.data-table.portfolio-table .portfolio-table__progress{align-items:center;gap:8px;min-width:140px;display:flex}.data-table.portfolio-table .portfolio-table__progress .progress-track{flex:1}.data-table.portfolio-table .portfolio-table__alert{color:var(--danger);align-items:center;gap:4px;font-weight:700;display:inline-flex}.data-table.portfolio-table .portfolio-table__hot{background:var(--danger)}@supports (color:color-mix(in lab,red,red)){.data-table.portfolio-table .portfolio-table__hot{background:color-mix(in srgb,var(--danger) 6%,transparent)}}.data-table.portfolio-table .portfolio-table__quiet td{color:var(--muted-foreground);font-size:13px}@media(max-width:1180px){.portfolio-detail__pair{grid-template-columns:minmax(0,1fr)}}@media(max-width:720px){.portfolio-detail__head .view-switch{width:100%}.portfolio-detail__head .view-switch button{flex:1;justify-content:center}.portfolio-timeline{--timeline-label:170px;--timeline-column:44px}}.portfolio-card .data-panel__head h3{letter-spacing:-.02em;align-items:center;gap:8px;margin:0;font-size:16px;display:flex}.portfolio-card .data-panel__head h3 svg{color:var(--muted-foreground);flex:none}.portfolio-card .data-panel__head h3 .portfolio-card__icon--danger{color:var(--danger)}.portfolio-timeline__row{display:contents}.portfolio-timeline__planned{flex:none;height:100%;position:relative}.portfolio-card__body>.portfolio-card__empty{padding:0}.portfolio-card__title{scroll-margin-top:120px}.portfolio-detail,.portfolio-detail__panel{grid-template-columns:minmax(0,1fr)}.portfolio-card .data-panel__head h3 .data-panel__count{letter-spacing:0;margin-left:2px;font-size:13px;font-weight:400}.data-table.portfolio-table{position:relative}@media(max-width:480px){.portfolio-timeline{--timeline-label:150px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
