@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.00az9qtie3ho1.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.3j-a226dh71aj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.2gwoz23eiro2t.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.0i3h3th1vs4m7.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0zr6hhvz-h9nw.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_dbbf8c4b-module__5qCx7q__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_dbbf8c4b-module__5qCx7q__variable{--font-geist:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.27spqqad3wyeo.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.3f4zuumv8svu0.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.34r5yzckw0h2s.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.2jyz_zw3a8jit.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.30bdpjkrtcces.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.1v5bejj26fx9h.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_3342dced-module__ksAy2q__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_3342dced-module__ksAy2q__variable{--font-mono:"Geist Mono", "Geist Mono Fallback"}
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--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,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){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{.fixed{position:fixed}.start{inset-inline-start:var(--spacing)}.contents{display:contents}.table{display:table}.shrink{flex-shrink:1}}:root{--ink:#17231d;--muted:#69746e;--line:#e5e9e6;--soft:#f4f6f4;--green:#1f7a50;--green-2:#2f9b68;--green-soft:#e8f5ed;--amber:#b76b19;--amber-soft:#fff3df;--red:#b94343;--red-soft:#fdecec;--blue:#3767a8;--blue-soft:#ebf2fb;--purple:#75539a;--purple-soft:#f1ebf8;--shadow:0 10px 35px #182d2212}*{box-sizing:border-box}html{color:var(--ink);background:#f6f8f6}body{min-height:100vh;color:var(--ink);font-family:var(--font-geist), Arial, sans-serif;background:#f6f8f6;margin:0;font-size:16px;line-height:1.5}button,input,select,textarea{font:inherit}button{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #1f7a5038}.app-frame{min-height:100vh}.sidebar{z-index:30;color:#e8efe9;background:#14231c;flex-direction:column;width:242px;padding:22px 14px 16px;display:flex;position:fixed;inset:0 auto 0 0}.brand-mark{align-items:center;gap:11px;padding:0 10px 24px;display:flex}.brand-icon{color:#245e40;background:#d8f2df;border-radius:12px;place-items:center;width:38px;height:38px;display:grid;box-shadow:inset 0 0 0 1px #fff9}.brand-mark strong{letter-spacing:-.7px;font-size:20px;line-height:1;display:block}.brand-mark span{color:#8ba095;text-transform:uppercase;letter-spacing:1.1px;margin-top:5px;font-size:12px;display:block}.main-nav{flex-direction:column;gap:4px;display:flex}.nav-section{color:#70877a;text-transform:uppercase;letter-spacing:1.2px;padding:13px 12px 8px;font-size:12px;font-weight:700}.main-nav button,.nav-utility{color:#aebdb5;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:11px;min-height:43px;padding:0 12px;transition:all .16s;display:flex}.main-nav button span{flex:1}.main-nav button em{color:#163322;background:#c8ebd1;border-radius:8px;place-items:center;min-width:22px;height:22px;font-size:13px;font-style:normal;font-weight:700;display:grid}.main-nav button:hover,.nav-utility:hover{color:#fff;background:#ffffff0e}.main-nav button.active{color:#fff;background:#263b30;box-shadow:inset 3px 0 #71c18d}.sidebar-foot{margin-top:auto}.nav-utility{width:100%;margin-bottom:9px}.user-card{border-top:1px solid #ffffff17;grid-template-columns:35px 1fr auto;align-items:center;gap:9px;padding:16px 8px 3px;display:grid}.avatar{color:#3d2a0a;background:#e6c579;border-radius:10px;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.user-card strong{color:#f1f5f2;white-space:nowrap;text-overflow:ellipsis;max-width:125px;font-size:14px;display:block;overflow:hidden}.user-card span{color:#82958b;margin-top:2px;font-size:13px;display:block}.user-card>svg{color:#6c8175}.main-panel{min-height:100vh;margin-left:242px}.topbar{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);background:#ffffffe6;justify-content:space-between;align-items:center;height:66px;padding:0 28px;display:flex;position:sticky;top:0}.crumb{color:#89918d;align-items:center;gap:8px;font-size:14px;display:flex}.crumb strong{color:#38433e;font-weight:650}.top-actions{align-items:center;gap:8px;display:flex}.icon-button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:9px;place-items:center;width:36px;height:36px;display:grid}.icon-button:hover{background:var(--soft)}.notification{position:relative}.notification i{background:#e04d4d;border-radius:50%;width:5px;height:5px;position:absolute;top:7px;right:8px;box-shadow:0 0 0 2px #fff}.mobile-menu{display:none}.page-wrap{max-width:1540px;margin:0 auto;padding:34px 34px 56px}.page-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px;display:flex}.page-heading h1,.detail-heading h1{letter-spacing:-1.3px;margin:4px 0 8px;font-size:clamp(27px,3vw,38px);font-weight:700;line-height:1.07}.page-heading p,.detail-heading p{color:var(--muted);margin:0;font-size:16px}.eyebrow{text-transform:uppercase;letter-spacing:1.35px;color:var(--green);font-size:12px;font-weight:750;display:block}.heading-actions{flex-wrap:wrap;justify-content:flex-end;gap:9px;display:flex}.primary-button,.secondary-button,.approve-button,.reject-button,.danger-button,.danger-outline-button{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:39px;padding:0 14px;font-weight:650;transition:all .15s;display:inline-flex}.primary-button{color:#fff;background:#1b6b46;box-shadow:0 4px 12px #1b6b462e}.primary-button:hover{background:#14593a;transform:translateY(-1px)}.danger-button{color:#fff;background:var(--red)}.danger-button:hover{background:#923d3d}.danger-outline-button{color:var(--red);background:#fff;border-color:#e7caca}.danger-outline-button:hover{background:var(--red-soft)}.primary-button:disabled,.approve-button:disabled,.reject-button:disabled,.danger-button:disabled{opacity:.6;cursor:wait;transform:none}.secondary-button{color:#3f4b44;background:#fff;border-color:#dfe4e0}.secondary-button:hover{background:#f2f5f3}.small{min-height:34px;padding:0 11px;font-size:14px}.wide{width:100%}.text-button{color:var(--green);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;font-weight:650;display:inline-flex}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.metric-card{border:1px solid var(--line);background:#fff;border-radius:14px;min-height:144px;padding:18px;position:relative;box-shadow:0 3px 15px #1e342906}.metric-icon{border-radius:10px;place-items:center;width:34px;height:34px;display:grid;position:absolute;top:17px;right:17px}.metric-icon.ink{color:#34463c;background:#edf0ee}.metric-icon.green{background:var(--green-soft);color:var(--green)}.metric-icon.amber{background:var(--amber-soft);color:var(--amber)}.metric-icon.blue{background:var(--blue-soft);color:var(--blue)}.metric-label{color:var(--muted);margin-bottom:15px;font-size:14px}.metric-value{letter-spacing:-1px;font-size:29px;display:block}.metric-note{color:#89918d;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;font-size:13px;display:flex}.metric-note em{font-style:normal;font-weight:700}.metric-note em.green{color:var(--green)}.metric-note em.amber{color:var(--amber)}.metric-note em.blue{color:var(--blue)}.panel{border:1px solid var(--line);background:#fff;border-radius:14px;box-shadow:0 3px 15px #1e342906}.dashboard-grid{grid-template-columns:1.3fr 1fr;gap:18px;margin-bottom:18px;display:grid}.cost-pulse,.attention-panel{min-height:348px;padding:21px}.panel-head{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.panel-head h2{letter-spacing:-.35px;margin:4px 0 0;font-size:18px}.status-chip{border-radius:999px;align-items:center;gap:5px;height:27px;padding:0 9px;font-size:12px;font-weight:700;display:inline-flex}.status-chip.positive{background:var(--green-soft);color:var(--green)}.status-chip.warning{background:var(--amber-soft);color:var(--amber)}.margin-summary{border-block:1px solid var(--line);grid-template-columns:repeat(3,1fr);padding:14px 0;display:grid}.margin-summary div{border-left:1px solid var(--line);padding-left:15px}.margin-summary div:first-child{border-left:0;padding-left:0}.margin-summary strong{font-size:20px;display:block}.margin-summary span{color:var(--muted);margin-top:3px;font-size:12px;display:block}.bar-chart{align-items:flex-end;gap:16px;height:165px;padding-top:22px;display:flex}.bar-column{flex-direction:column;flex:1;align-items:stretch;gap:8px;height:100%;display:flex}.bar-track{background:#f3f5f3;border-radius:7px 7px 3px 3px;flex:1;align-items:flex-end;display:flex;overflow:hidden}.bar-track i{border-radius:6px 6px 0 0;justify-content:center;width:100%;min-height:8px;transition:height .4s;display:flex;position:relative}.bar-track i span{color:var(--ink);font-size:12px;font-style:normal;font-weight:750;position:absolute;top:-19px}.bar-track i.red{background:#d67570}.bar-track i.amber{background:#e6b36d}.bar-track i.blue{background:#7da4d2}.bar-track i.green{background:#70b68d}.bar-column small{color:var(--muted);text-align:center;white-space:nowrap;font-size:11px}.attention-row{border-top:1px solid var(--line);grid-template-columns:38px 1fr auto;align-items:center;gap:12px;padding:15px 0;display:grid}.attention-row:first-of-type{border-top:0}.attention-icon{border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.attention-icon.amber{background:var(--amber-soft);color:var(--amber)}.attention-icon.purple{background:var(--purple-soft);color:var(--purple)}.attention-icon.blue{background:var(--blue-soft);color:var(--blue)}.attention-row strong,.attention-row span{display:block}.attention-row strong{font-size:14px}.attention-row span{color:var(--muted);margin-top:3px;font-size:12px;line-height:1.35}.attention-row button{color:var(--green);cursor:pointer;background:0 0;border:0;align-items:center;font-size:13px;font-weight:700;display:flex}.product-panel{padding:21px 21px 5px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:850px}th{color:#7f8983;text-transform:uppercase;letter-spacing:.65px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:10px 13px;font-size:11px;font-weight:750}td{vertical-align:middle;border-bottom:1px solid #edf0ee;padding:13px;font-size:14px}tbody tr:last-child td{border-bottom:0}tbody tr{transition:all .12s}tbody tr:hover{background:#f8faf8}.product-panel tbody tr,.data-panel tbody tr{cursor:pointer}.product-cell{grid-template-columns:48px minmax(190px,1fr);align-items:center;gap:10px;display:grid}.product-cell>span,.material-cell>span{font-family:var(--font-mono);color:#5b6961;text-align:center;background:#edf1ee;border-radius:6px;padding:5px 7px;font-size:12px}.product-cell strong,.product-cell small,.material-cell strong{display:block}.product-cell strong{white-space:nowrap;text-overflow:ellipsis;max-width:320px;overflow:hidden}.product-cell small{color:var(--muted);margin-top:3px;font-size:12px}.number{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.strong{font-weight:700}.muted{color:#99a09c}.inline-note{color:#909994;margin-top:3px;font-size:11px;display:block}.status{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:5px 8px;font-size:12px;font-weight:700;display:inline-flex}.status i{border-radius:50%;width:5px;height:5px}.status-active,.status-approved{color:var(--green);background:var(--green-soft)}.status-active i,.status-approved i{background:var(--green)}.status-incomplete{color:var(--amber);background:var(--amber-soft)}.status-incomplete i{background:var(--amber)}.status-draft,.status-pending{color:var(--blue);background:var(--blue-soft)}.status-draft i,.status-pending i{background:var(--blue)}.status-rejected{color:var(--red);background:var(--red-soft)}.status-rejected i{background:var(--red)}.margin{white-space:nowrap;align-items:center;gap:3px;font-size:13px;font-weight:700;display:inline-flex}.margin.good{color:var(--green)}.margin.low{color:var(--amber)}.margin.negative{color:var(--red)}.margin.none{color:#9aa29d;font-weight:500}.stat-strip{border:1px solid var(--line);background:#fff;border-radius:13px;grid-template-columns:repeat(4,1fr);margin-bottom:16px;display:grid}.stat-strip div{border-left:1px solid var(--line);padding:16px 20px}.stat-strip div:first-child{border-left:0}.stat-strip span{color:var(--muted);font-size:12px;display:block}.stat-strip strong{margin-top:4px;font-size:20px;display:block}.data-panel{overflow:hidden}.toolbar{border-bottom:1px solid var(--line);align-items:center;gap:10px;min-height:64px;padding:12px 16px;display:flex}.search-box{color:#849087;background:#fafbfa;border:1px solid #dfe4e0;border-radius:9px;align-items:center;gap:8px;width:min(420px,100%);height:38px;padding:0 11px;display:flex}.search-box input{min-width:0;color:var(--ink);background:0 0;border:0;outline:0;flex:1}.select-box{color:#68736c;border:1px solid #dfe4e0;border-radius:9px;align-items:center;gap:7px;height:38px;padding:0 9px;display:flex;position:relative}.select-box select{appearance:none;background:0 0;border:0;outline:0;padding-right:20px}.select-box>svg:last-child{pointer-events:none;position:absolute;right:7px}.result-count{color:var(--muted);white-space:nowrap;margin-left:auto;font-size:13px}.material-cell{grid-template-columns:55px 1fr;align-items:center;gap:10px;display:grid}.material-cell strong{max-width:260px}.category-chip{color:#59665f;white-space:nowrap;background:#f0f3f1;border-radius:6px;padding:5px 7px;font-size:12px}.row-action{opacity:0;border:1px solid var(--line);color:var(--green);cursor:pointer;white-space:nowrap;background:#fff;border-radius:7px;align-items:center;gap:5px;height:30px;padding:0 8px;font-size:12px;font-weight:700;display:inline-flex}tr:hover .row-action,.row-action:focus{opacity:1}.segmented{background:#f1f3f1;border-radius:9px;padding:3px;display:flex}.segmented button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:7px 10px;font-size:12px}.segmented button.active{color:var(--ink);background:#fff;box-shadow:0 1px 4px #14281e17}.callout{color:var(--green);background:linear-gradient(100deg,#e9f6ee,#f5faf7);border:1px solid #cfe7d7;border-radius:13px;grid-template-columns:40px 1fr auto;align-items:center;gap:13px;margin-bottom:16px;padding:15px 18px;display:grid}.callout-icon{background:#fff;border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.callout strong,.callout span{display:block}.callout strong{color:#225e3f;font-size:14px}.callout span{color:#58806a;margin-top:3px;font-size:12px}.recipe-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:16px;display:grid}.recipe-card{border:1px solid var(--line);background:#fff;border-radius:12px;padding:16px;transition:all .15s}.recipe-card:hover{box-shadow:var(--shadow);border-color:#b9d6c3;transform:translateY(-1px)}.recipe-top{justify-content:space-between;display:flex}.recipe-code{font-family:var(--font-mono);color:var(--green);font-size:12px;font-weight:700}.recipe-card h3{min-height:38px;margin:12px 0 14px;font-size:16px;line-height:1.4}.recipe-metrics{grid-template-columns:1fr 1fr;gap:8px;display:grid}.recipe-metrics div{background:#f6f8f6;border-radius:8px;padding:10px}.recipe-metrics span,.recipe-metrics strong{display:block}.recipe-metrics span{color:var(--muted);font-size:11px}.recipe-metrics strong{margin-top:4px;font-size:14px}.recipe-bottom{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;margin-top:14px;padding-top:12px;font-size:12px;display:flex}.recipe-bottom button{color:var(--green);cursor:pointer;background:0 0;border:0;align-items:center;font-weight:700;display:flex}.back-button{color:var(--green);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;margin-bottom:18px;padding:0;font-weight:650;display:inline-flex}.back-button svg{transform:rotate(180deg)}.detail-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:21px;display:flex}.detail-meta{align-items:center;gap:8px;display:flex}.detail-meta>span{font-family:var(--font-mono);color:var(--muted);font-size:12px}.warning-banner{color:var(--amber);background:#fff8e9;border:1px solid #ecd3a9;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;margin-bottom:16px;padding:13px 16px;display:grid}.warning-banner strong,.warning-banner span{display:block}.warning-banner strong{font-size:14px}.warning-banner span{color:#8c6b42;margin-top:2px;font-size:12px}.warning-banner button{color:#6f4511;cursor:pointer;background:#f1dbaa;border:0;border-radius:7px;padding:7px 10px;font-size:12px;font-weight:700}.detail-layout{grid-template-columns:minmax(0,1fr) 330px;align-items:start;gap:18px;display:grid}.detail-main{flex-direction:column;gap:16px;display:flex}.detail-main>.panel{padding:21px}.subtle-label{color:var(--muted);font-size:12px}.bom-group{margin-top:18px}.bom-title{background:#f1f4f2;border-radius:8px 8px 0 0;justify-content:space-between;align-items:center;padding:9px 12px;display:flex}.bom-title span{text-transform:uppercase;letter-spacing:.8px;color:#68746d;font-size:11px;font-weight:750}.bom-title em{font-size:13px;font-style:normal;font-weight:750}.compact-table{min-width:650px}.compact-table td:first-child{min-width:210px}.compact-table td strong,.compact-table td small{display:block}.compact-table td small{max-width:270px;color:var(--muted);margin-top:3px;font-size:11px}.rate-source{white-space:nowrap;border-radius:6px;align-items:center;gap:4px;padding:4px 6px;font-size:11px;display:inline-flex}.rate-source.material{background:var(--green-soft);color:var(--green)}.rate-source.recipe{background:var(--purple-soft);color:var(--purple)}.rate-source.override{background:var(--amber-soft);color:var(--amber)}.rate-source.unresolved{background:var(--red-soft);color:var(--red)}.overhead-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding:12px 0;display:flex}.overhead-row strong,.overhead-row span{display:block}.overhead-row strong{font-size:13px}.overhead-row span{color:var(--muted);margin-top:2px;font-size:11px}.overhead-row em{font-style:normal;font-weight:700}.overhead-total{border-top:1px solid var(--line);justify-content:space-between;margin-top:2px;padding-top:14px;display:flex}.cost-sidebar{flex-direction:column;gap:12px;display:flex;position:sticky;top:86px}.cost-card{color:#eef8f1;background:linear-gradient(145deg,#173b2a,#1e6543);border-radius:14px;padding:19px;box-shadow:0 16px 35px #184c312e}.cost-card-top{color:#b9d4c4;justify-content:space-between;align-items:center;font-size:12px;display:flex}.live-dot{color:#c9ebd5;background:#ffffff1f;border-radius:999px;padding:4px 7px}.live-dot:before{content:"";background:#82d79e;border-radius:50%;width:5px;height:5px;margin-right:5px;display:inline-block}.cost-card>strong{letter-spacing:-1.4px;margin-top:13px;font-size:34px;display:block}.cost-card>small{color:#a8c7b4;margin-top:3px;font-size:12px;display:block}.cost-split{border-top:1px solid #ffffff21;grid-template-columns:1fr 1fr;gap:10px;margin-top:17px;padding-top:14px;display:grid}.cost-split span,.cost-split strong{display:block}.cost-split span{color:#9dbba8;font-size:11px}.cost-split strong{margin-top:3px;font-size:14px}.scenario-card{padding:17px}.scenario-title{justify-content:space-between;align-items:flex-start;margin-bottom:16px;display:flex}.scenario-title>div{color:var(--purple);align-items:center;gap:6px;display:flex}.scenario-title>span{color:var(--muted);font-size:10px}.scenario-card>label{color:var(--muted);margin-top:14px;font-size:12px;display:block}.scenario-card label>em{float:right;color:var(--green);font-style:normal;font-weight:700}.currency-input{background:#fff;border:1px solid #dce2de;border-radius:8px;align-items:center;height:39px;margin-top:6px;display:flex;overflow:hidden}.currency-input span{color:#718079;padding-left:11px}.currency-input input{background:0 0;border:0;outline:0;width:100%;padding:0 10px 0 5px;font-weight:700}.scenario-results{grid-template-columns:repeat(3,1fr);gap:5px;margin:12px 0;display:grid}.scenario-results div{background:#f5f7f5;border-radius:7px;padding:8px}.scenario-results span,.scenario-results strong{display:block}.scenario-results span{color:var(--muted);font-size:10px}.scenario-results strong{margin-top:3px;font-size:13px}.positive-text{color:var(--green)}.negative-text{color:var(--red)}.range{appearance:none;background:#dde4df;border-radius:999px;width:100%;height:4px;margin-top:12px}.range::-webkit-slider-thumb{appearance:none;background:var(--green);border:3px solid #fff;border-radius:50%;width:17px;height:17px;box-shadow:0 1px 5px #0003}.suggested-price{background:var(--green-soft);border:1px solid #d1e9da;border-radius:9px;margin:14px 0 10px;padding:11px}.suggested-price span,.suggested-price strong,.suggested-price small{display:block}.suggested-price span{color:#547763;font-size:11px}.suggested-price strong{color:#225e40;margin-top:2px;font-size:17px}.suggested-price small{color:#6f8e7b;font-size:10px}.trace-card{color:var(--green);background:#f4faf6;border:1px solid #d6e7dc;border-radius:11px;grid-template-columns:auto 1fr;align-items:start;gap:9px;padding:12px;display:grid}.trace-card strong,.trace-card span{display:block}.trace-card strong{font-size:12px}.trace-card span{color:#64816e;margin-top:2px;font-size:11px}.approval-summary{border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:1.4fr repeat(3,1fr);margin-bottom:18px;display:grid}.approval-summary>div{border-left:1px solid var(--line);padding:17px 20px}.approval-summary>div:first-child{border-left:0}.approval-summary span,.approval-summary strong{display:block}.approval-summary span{color:var(--muted);font-size:11px}.approval-summary strong{margin-top:5px;font-size:17px}.approval-hero{color:var(--blue);align-items:center;gap:12px;display:flex}.approval-hero strong{font-size:25px}.approval-hero span{color:#58708d}.approval-list{flex-direction:column;gap:12px;display:flex}.approval-card{grid-template-columns:1.2fr 1.2fr auto;align-items:center;gap:20px;padding:18px;display:grid}.approval-identity{grid-template-columns:40px 1fr;gap:11px;display:grid}.entity-icon{background:var(--blue-soft);width:38px;height:38px;color:var(--blue);border-radius:10px;place-items:center;display:grid}.approval-identity span{color:var(--blue);text-transform:uppercase;letter-spacing:.6px;font-size:11px;font-weight:700}.approval-identity h3{margin:4px 0;font-size:14px;line-height:1.35}.approval-identity p{color:var(--muted);margin:0;font-size:11px}.change-summary{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.change-summary div{background:#f5f7f5;border-radius:7px;padding:8px}.change-summary span,.change-summary strong{display:block}.change-summary span{color:var(--muted);font-size:10px}.change-summary strong{margin-top:3px;font-size:11px}.approval-actions{gap:7px;display:flex}.approve-button{background:var(--green);color:#fff}.approve-button:hover{background:#16613e}.reject-button{color:var(--red);background:#fff;border-color:#eccdcd}.reject-button:hover{background:var(--red-soft)}.empty-state{text-align:center;color:var(--green);padding:70px 20px}.empty-state h2{color:var(--ink);margin:13px 0 6px}.empty-state p{color:var(--muted);margin:0}.quality-grid{grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:18px;display:grid}.quality-card{border:1px solid var(--line);background:#fff;border-top:3px solid;border-radius:12px;padding:16px}.quality-card.amber{border-top-color:#e4aa5d}.quality-card.purple{border-top-color:#9a7eb8}.quality-card.green{border-top-color:#64ad82}.quality-card.blue{border-top-color:#6e96c6}.quality-card>div{color:var(--muted);align-items:center;gap:6px;display:flex}.quality-card>div span{text-transform:uppercase;letter-spacing:.5px;font-size:11px}.quality-card>strong{margin-top:12px;font-size:27px;display:block}.quality-card p{color:var(--muted);margin:5px 0 0;font-size:11px;line-height:1.35}.audit-layout{grid-template-columns:1.1fr 1fr;gap:18px;display:grid}.exception-panel,.activity-panel{padding:20px}.exception-row{border-top:1px solid var(--line);grid-template-columns:1fr 60px auto;align-items:center;gap:12px;padding:12px 0;display:grid}.exception-row>div:first-child{grid-template-columns:48px 1fr;align-items:center;gap:8px;display:grid}.exception-row>div:first-child span{font-family:var(--font-mono);color:var(--muted);font-size:11px}.exception-row strong,.exception-row span{font-size:12px;display:block}.exception-row>div:nth-child(2){text-align:right}.exception-row>div:nth-child(2) strong{color:var(--amber)}.exception-row>div:nth-child(2) span{color:var(--muted);font-size:10px}.exception-row button{color:var(--green);cursor:pointer;background:0 0;border:0;align-items:center;font-size:12px;font-weight:700;display:flex}.timeline{flex-direction:column;display:flex}.timeline-item{grid-template-columns:28px 1fr;gap:10px;padding:10px 0;display:grid;position:relative}.timeline-item:before{content:"";border-left:1px solid var(--line);position:absolute;top:35px;bottom:-5px;left:13px}.timeline-item:last-child:before{display:none}.timeline-dot{width:28px;height:28px;color:var(--green);z-index:1;background:#edf2ee;border-radius:8px;place-items:center;display:grid}.timeline-item strong{font-size:12px}.timeline-item p{color:#56635b;margin:3px 0;font-size:11px;line-height:1.35}.timeline-item span{color:#98a09b;font-size:10px}.modal-layer{z-index:100;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-scrim{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a140f94;border:0;position:absolute;inset:0}.modal-card{background:#fff;border-radius:16px;width:min(550px,100%);max-height:calc(100vh - 40px);position:relative;overflow-y:auto;box-shadow:0 24px 80px #07160e47}.modal-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;padding:21px 22px 16px;display:flex}.modal-head h2{letter-spacing:-.4px;margin:0;font-size:19px}.modal-head p{color:var(--muted);margin:5px 0 0;font-size:12px;line-height:1.4}.modal-form{padding:20px 22px 22px}.modal-form.two-column{grid-template-columns:1fr 1fr;gap:14px;display:grid}.full{grid-column:1/-1}.modal-material{background:#f5f7f5;border-radius:10px;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;padding:11px;display:grid}.modal-material span,.modal-material strong{display:block}.modal-material span{font-family:var(--font-mono);color:var(--muted);font-size:11px}.modal-material strong{margin-top:2px;font-size:14px}.modal-material em{color:var(--muted);font-size:12px;font-style:normal}.rate-comparison{grid-template-columns:1fr auto 1fr;align-items:center;gap:11px;margin:18px 0;display:grid}.rate-comparison label{color:var(--muted);font-size:11px}.rate-comparison label>span{height:39px;color:var(--ink);background:#f4f6f4;border-radius:8px;align-items:center;margin-top:6px;padding:0 11px;font-size:15px;font-weight:700;display:flex}.field{color:#5f6b64;font-size:12px;font-weight:600;display:block}.field input,.field textarea,.field select{width:100%;color:var(--ink);resize:vertical;background:#fff;border:1px solid #dce2de;border-radius:8px;margin-top:6px;padding:10px 11px}.field input:disabled{color:#8c958f;background:#f3f5f3}.impact-note{color:var(--blue);background:var(--blue-soft);border-radius:8px;align-items:center;gap:8px;margin-top:13px;padding:10px;font-size:11px;display:flex}.modal-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:8px;margin-top:18px;padding-top:18px;display:flex}.form-error{color:var(--red);background:var(--red-soft);border-radius:7px;padding:8px 10px;font-size:12px}.review-banner{border-radius:9px;grid-template-columns:auto 1fr;align-items:center;gap:9px;margin-bottom:16px;padding:12px;font-size:12px;line-height:1.4;display:grid}.review-banner.approved{background:var(--green-soft);color:#37684c}.review-banner.rejected{background:var(--red-soft);color:#854444}.modal-wide{width:min(980px,100%)}.editor-form{padding:20px 22px 22px}.editor-notice{background:var(--blue-soft);color:var(--blue);border:1px solid #d8e2f0;border-radius:10px;grid-template-columns:auto 1fr;align-items:center;gap:10px;margin-bottom:20px;padding:12px;display:grid}.editor-notice strong,.editor-notice span{display:block}.editor-notice strong{font-size:13px}.editor-notice span{color:#5b7291;margin-top:2px;font-size:11px}.editor-section-head{justify-content:space-between;align-items:flex-end;gap:18px;margin:22px 0 10px;display:flex}.editor-section-head h3{margin:0;font-size:16px}.editor-section-head p{color:var(--muted);margin:4px 0 0;font-size:11px}.editable-grid{border:1px solid var(--line);border-radius:10px;overflow:hidden}.editable-grid-head,.editable-row{align-items:center;gap:8px;padding:8px 10px;display:grid}.editable-grid-head{color:#758178;text-transform:uppercase;letter-spacing:.55px;background:#f2f5f3;font-size:10px;font-weight:750}.editable-row{border-top:1px solid var(--line);background:#fff}.editable-row.unresolved-row{background:#fff9ed}.editable-row>input,.editable-row>select{width:100%;min-width:0;height:36px;color:var(--ink);background:#fff;border:1px solid #dce2de;border-radius:7px;padding:0 9px;font-size:12px}.searchable-picker{min-width:0}.searchable-picker input{width:100%;min-width:0;height:36px;color:var(--ink);background:#fff;border:1px solid #cfd9d2;border-radius:7px;padding:0 10px;font-size:12px}.searchable-picker input:focus{border-color:var(--green);outline:2px solid #1b6b4624}.searchable-picker input::placeholder{color:#9aa49d}@media print{@page{size:A4;margin:12mm}body{color:#111!important;background:#fff!important}.sidebar,.topbar,.back-button,.heading-actions,.scenario-card,.toast,.sidebar-scrim{display:none!important}.main-panel,.page-wrap{width:100%!important;margin:0!important;padding:0!important}.detail-layout{display:block!important}.detail-main{width:100%!important}.cost-sidebar{margin-top:12px;display:block!important}.cost-card,.trace-card,.panel{break-inside:avoid;box-shadow:none!important;border:1px solid #d8ded9!important}.table-scroll{overflow:visible!important}table{min-width:0!important}}.product-editor-grid .editable-grid-head,.product-editor-grid .editable-row{grid-template-columns:115px minmax(200px,1.25fr) 125px 105px minmax(160px,1fr) 32px}.bom-notes-input{text-overflow:ellipsis}.overhead-editor-grid .editable-grid-head,.overhead-editor-grid .editable-row{grid-template-columns:minmax(220px,1fr) 170px 145px 32px}.recipe-editor-grid .editable-grid-head,.recipe-editor-grid .editable-row{grid-template-columns:minmax(260px,1fr) 155px 115px 115px 32px}.inline-input{background:#fff;border:1px solid #dce2de;border-radius:7px;flex-direction:row-reverse;align-items:center;height:36px;display:flex;overflow:hidden}.inline-input input{width:100%;min-width:0;height:100%;color:var(--ink);background:0 0;border:0;outline:0;padding:0 9px;font-size:12px}.inline-input span{color:#77827b;white-space:nowrap;padding-left:8px;font-size:11px}.delete-row{color:#a06969;cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;width:30px;height:30px;display:grid}.delete-row:hover{background:var(--red-soft);color:var(--red)}.editor-readonly{color:var(--muted);text-align:right;font-variant-numeric:tabular-nums;font-size:12px}.editor-readonly.strong{color:var(--ink);font-weight:700}.recipe-editor-summary{grid-template-columns:1fr 1fr 1fr;gap:11px;display:grid}.recipe-editor-summary>label,.recipe-editor-summary>div{color:var(--muted);font-size:11px}.recipe-editor-summary>div{background:var(--green-soft);border-radius:9px;flex-direction:column;justify-content:center;padding:10px 12px;display:flex}.recipe-editor-summary>div strong{color:var(--green);margin-top:4px;font-size:18px}.price-impact{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin-bottom:14px;display:grid}.price-impact>div{background:#f5f7f5;border-radius:9px;padding:11px}.price-impact>div>span,.price-impact>div>strong{display:block}.price-impact>div>span{color:var(--muted);font-size:11px}.price-impact>div>strong{margin-top:8px;font-size:17px}.price-impact .inline-input{margin-top:6px}.price-live-button{margin-top:8px}.mapping-arrow{grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin:16px 0;display:grid}.mapping-arrow>div{color:var(--amber);background:#fff9ed;border:1px solid #ead6b8;border-radius:9px;grid-template-columns:24px 1fr;column-gap:5px;padding:11px;display:grid}.mapping-arrow>div.mapped{background:var(--green-soft);color:var(--green);border-color:#cfe5d6}.mapping-arrow span,.mapping-arrow small{grid-column:2}.mapping-arrow span{color:var(--ink);font-size:12px;font-weight:700}.mapping-arrow small{color:var(--muted);margin-top:2px;font-size:10px}.modal-search{width:100%}.mapping-options{border:1px solid var(--line);border-radius:9px;max-height:245px;margin-top:9px;overflow-y:auto}.mapping-options>button{border:0;border-top:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;grid-template-columns:1fr auto 20px;align-items:center;gap:10px;width:100%;padding:10px 12px;display:grid}.mapping-options>button:first-child{border-top:0}.mapping-options>button.selected{background:var(--green-soft)}.mapping-options strong,.mapping-options span{display:block}.mapping-options strong{font-size:12px}.mapping-options span{color:var(--muted);margin-top:2px;font-size:10px}.mapping-options em{font-size:12px;font-style:normal;font-weight:700}.team-callout{color:var(--green);background:#f3faf5;border:1px solid #d5e6da;border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:11px;margin-bottom:16px;padding:14px 16px;display:grid}.team-callout strong,.team-callout span{display:block}.team-callout strong{font-size:13px}.team-callout span{color:#64816e;margin-top:3px;font-size:11px}.team-role-grid{border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);gap:10px;padding:16px;display:grid}.team-role-grid>div{background:#f5f7f5;border-radius:9px;padding:11px}.team-role-grid span{color:var(--green);text-transform:uppercase;letter-spacing:.55px;font-size:10px;font-weight:750}.team-role-grid p{color:var(--muted);margin:5px 0 0;font-size:11px;line-height:1.4}.team-user{grid-template-columns:34px 1fr;align-items:center;gap:9px;display:grid}.team-user>div{width:34px;height:34px;color:var(--green);background:#e5f0e8;border-radius:9px;place-items:center;font-weight:750;display:grid}.team-user strong,.team-user small{display:block}.team-user small{color:var(--muted);margin-top:2px;font-size:11px}.role-chip{color:#5c6860;text-transform:capitalize;background:#eef2ef;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:700;display:inline-flex}.role-chip.role-admin{background:var(--purple-soft);color:var(--purple)}.role-chip.role-editor{background:var(--blue-soft);color:var(--blue)}.role-chip.role-approver{background:var(--green-soft);color:var(--green)}.nav-utility.active{color:#fff;background:#ffffff14}.status-inactive{color:#79837d;background:#eef1ef}.status-inactive i{background:#919a94}.status-archived{color:#7b5c5c;background:#f5eaea}.status-archived i{background:#a76464}.archive-warning{background:var(--red-soft);color:var(--red);border:1px solid #ebcccc;border-radius:10px;grid-template-columns:auto 1fr;align-items:start;gap:11px;padding:14px;display:grid}.archive-warning.restore{background:var(--green-soft);color:var(--green);border-color:#cfe5d6}.archive-warning strong,.archive-warning span{display:block}.archive-warning strong{color:var(--ink);font-size:13px}.archive-warning span{color:#745f5f;margin-top:4px;font-size:11px;line-height:1.45}.archive-warning.restore span{color:#5f7767}.row-action-group{gap:5px;display:flex}.row-action-group .row-action{opacity:1}.duplicate-warning{color:var(--amber);background:var(--amber-soft);border-radius:8px;grid-template-columns:auto 1fr;align-items:center;gap:8px;padding:10px;display:grid}.duplicate-warning strong,.duplicate-warning span{display:block}.duplicate-warning strong{font-size:12px}.duplicate-warning span{color:#816747;margin-top:2px;font-size:11px}.master-manager{padding:18px 22px 22px}.master-tabs{margin-bottom:14px;display:inline-flex}.master-layout{grid-template-columns:1fr 1fr;gap:15px;min-height:390px;display:grid}.master-list{border:1px solid var(--line);border-radius:10px;max-height:430px;overflow-y:auto}.master-list>button{border:0;border-top:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;grid-template-columns:1fr auto 20px;align-items:center;gap:8px;width:100%;padding:11px 12px;display:grid}.master-list>button:first-child{border-top:0}.master-list>button.inactive{opacity:.58}.master-list strong,.master-list span{display:block}.master-list strong{font-size:12px}.master-list span{color:var(--muted);margin-top:3px;font-size:10px}.master-list em{color:var(--green);font-size:10px;font-style:normal}.master-editor{background:#f5f7f5;border-radius:10px;padding:15px}.master-editor>.field{margin-top:12px}.master-editor-actions{justify-content:flex-end;gap:7px;margin-top:16px;display:flex}.two-fields,.four-fields{grid-template-columns:1fr 1fr;gap:10px;display:grid}.wizard-form{padding:18px 22px 22px}.wizard-steps{gap:8px;margin-bottom:17px;display:flex}.wizard-steps span{color:var(--muted);text-transform:uppercase;letter-spacing:.4px;border-top:3px solid #dfe4e1;flex:1;padding-top:7px;font-size:10px;font-weight:700}.wizard-steps span.active{border-color:var(--green);color:var(--green)}.wizard-meta{background:#f5f7f5;border-radius:10px;padding:13px}.wizard-meta.four-fields{grid-template-columns:.8fr 1.5fr .8fr .7fr}.product-meta-grid{grid-template-columns:.65fr 1.1fr .7fr .75fr .85fr .75fr .85fr;gap:10px;display:grid}.unit-picker-help{color:var(--muted);margin:7px 2px 0;font-size:10px}.recipe-final-row{grid-template-columns:220px 1fr;align-items:end;gap:12px;margin-top:14px;display:grid}.recipe-final-row>div{background:var(--green-soft);border-radius:9px;padding:11px 13px}.recipe-final-row span,.recipe-final-row strong{display:block}.recipe-final-row span{color:var(--muted);font-size:11px}.recipe-final-row strong{color:var(--green);margin-top:4px}.costing-review{grid-template-columns:repeat(5,1fr);gap:8px;margin-top:16px;display:grid}.costing-review>div{background:#f4f7f5;border-radius:9px;padding:11px}.costing-review span,.costing-review strong{display:block}.costing-review span{color:var(--muted);font-size:10px}.costing-review strong{margin-top:4px;font-size:15px}.costing-review>div:nth-child(3),.costing-review>div:last-child{background:var(--green-soft);color:var(--green)}.rate-history{border:1px solid var(--line);border-radius:9px;margin-top:14px;padding:11px}.rate-history>div{border-top:1px solid var(--line);grid-template-columns:85px 95px 1fr;align-items:center;gap:8px;padding:8px 0;display:grid}.rate-history>div:first-of-type{margin-top:7px}.rate-history strong{font-size:12px}.rate-history span,.rate-history em{color:var(--muted);font-size:10px}.rate-history em{font-style:normal}.analysis-modal{padding:20px 22px 22px}.impact-rate-editor{grid-template-columns:1fr auto 1fr 1fr;align-items:center;gap:12px;display:grid}.impact-rate-editor>div,.impact-rate-editor>label{background:#f4f7f5;border-radius:10px;min-height:76px;padding:12px}.impact-rate-editor span,.impact-rate-editor strong{display:block}.impact-rate-editor>div>span,.impact-rate-editor>label{color:var(--muted);font-size:11px}.impact-rate-editor strong{color:var(--ink);margin-top:7px;font-size:17px}.impact-rate-editor .currency-input{margin-top:7px}.impact-rate-editor .impact-increase{background:var(--red-soft)}.impact-rate-editor .impact-decrease{background:var(--green-soft)}.impact-summary{grid-template-columns:repeat(3,1fr);gap:9px;margin:14px 0;display:grid}.impact-summary>div{border:1px solid var(--line);color:var(--green);border-radius:9px;grid-template-columns:28px 1fr;align-items:center;padding:10px;display:grid}.impact-summary span{color:var(--muted);font-size:10px}.impact-summary strong{font-size:18px}.impact-columns{grid-template-columns:1fr 1fr;gap:13px;display:grid}.impact-columns>section{border:1px solid var(--line);border-radius:10px;overflow:hidden}.analysis-section-head{color:var(--green);background:#f3f6f4;align-items:center;gap:8px;padding:11px;display:flex}.analysis-section-head strong,.analysis-section-head span{display:block}.analysis-section-head strong{color:var(--ink);font-size:12px}.analysis-section-head span{color:var(--muted);margin-top:2px;font-size:10px}.impact-list{max-height:310px;overflow-y:auto}.impact-list article{border-top:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:10px;padding:10px 11px;display:grid}.impact-list article:first-child{border-top:0}.impact-list span,.impact-list strong,.impact-list small{display:block}.impact-list span{color:var(--muted);font-size:10px}.impact-list strong{margin-top:2px;font-size:12px}.impact-list small{color:var(--muted);margin-top:2px;font-size:10px}.impact-list article>div:last-child{text-align:right}.analysis-empty{color:var(--muted);margin:0;padding:18px;font-size:11px}.scenario-comparison{grid-template-columns:1fr auto 1fr 1fr;align-items:center;gap:11px;display:grid}.scenario-comparison>div{background:#f4f7f5;border-radius:10px;min-height:90px;padding:13px}.scenario-comparison>div:nth-child(3){background:var(--green-soft)}.scenario-comparison .scenario-worse{background:var(--red-soft)!important}.scenario-comparison span,.scenario-comparison strong,.scenario-comparison small{display:block}.scenario-comparison span{color:var(--muted);text-transform:uppercase;letter-spacing:.4px;font-size:10px}.scenario-comparison strong{margin-top:9px;font-size:19px}.scenario-comparison small{color:var(--muted);margin-top:4px;font-size:10px}.scenario-levers{grid-template-columns:repeat(5,1fr);gap:9px;margin:15px 0;display:grid}.scenario-field{border:1px solid var(--line);border-radius:9px;padding:10px}.scenario-field>span,.scenario-field>small{display:block}.scenario-field>span{font-size:11px;font-weight:700}.scenario-field>small{color:var(--muted);min-height:23px;margin-top:3px;font-size:10px;line-height:1.35}.scenario-field>div{border:1px solid #d8dfda;border-radius:7px;align-items:center;margin-top:8px;display:flex}.scenario-field input{border:0;outline:0;width:100%;min-width:0;height:34px;padding:0 8px}.scenario-field em{color:var(--muted);padding-right:8px;font-size:10px;font-style:normal}.scenario-breakdown{grid-template-columns:repeat(4,1fr);gap:9px;display:grid}.scenario-breakdown>div{color:var(--green);background:#f4f7f5;border-radius:9px;grid-template-columns:24px 1fr;align-items:center;padding:10px;display:grid}.scenario-breakdown span{color:var(--muted);font-size:10px}.scenario-breakdown strong{font-size:15px}.scenario-disclaimer{color:var(--blue);background:var(--blue-soft);border-radius:9px;align-items:center;gap:8px;margin-top:14px;padding:11px;font-size:11px;display:flex}.read-only-chip{color:#66726a;background:#eef2ef;border-radius:999px;align-items:center;min-height:34px;padding:0 12px;font-size:11px;font-weight:700;display:inline-flex}.governance-modal{padding:18px 22px 22px}.version-toolbar{grid-template-columns:minmax(250px,.8fr) 1.2fr;align-items:stretch;gap:14px;display:grid}.version-toolbar>label{color:var(--muted);flex-direction:column;gap:6px;font-size:11px;font-weight:700;display:flex}.version-toolbar select{width:100%;height:40px;color:var(--ink);background:#fff;border:1px solid #dce2de;border-radius:8px;padding:0 10px}.version-meta{background:#f4f7f5;border-radius:10px;grid-template-columns:auto 1fr;align-content:center;column-gap:8px;padding:10px 12px;display:grid}.version-meta>span{color:var(--green);font-family:var(--font-mono);flex-direction:column;grid-row:1/4;align-self:center;gap:4px;font-size:10px;display:flex}.version-meta strong{font-size:13px}.version-meta small{color:var(--muted);margin-top:2px;font-size:10px}.version-summary{grid-template-columns:1fr auto 1fr 1fr 1fr;align-items:center;gap:8px;margin:15px 0;display:grid}.version-summary>div{border:1px solid var(--line);border-radius:9px;padding:10px}.version-summary span,.version-summary strong{display:block}.version-summary span{color:var(--muted);font-size:10px}.version-summary strong{margin-top:4px;font-size:15px}.history-approved{color:var(--green)!important}.history-rejected{color:var(--red)!important}.history-pending{color:var(--amber)!important}.diff-table{border:1px solid var(--line);border-radius:10px;overflow:hidden}.diff-head,.diff-row{grid-template-columns:minmax(220px,1.3fr) 1fr 1fr 90px;align-items:center;gap:10px;padding:10px 12px;display:grid}.diff-head{color:var(--muted);text-transform:uppercase;letter-spacing:.55px;background:#f0f4f1;font-size:10px;font-weight:750}.diff-row{border-top:1px solid var(--line);font-size:11px}.diff-row strong,.diff-row small{display:block}.diff-row small{color:var(--muted);margin-top:3px;font-size:10px}.diff-row>span{color:#56625a}.diff-row em{color:var(--muted);background:#eef2ef;border-radius:999px;justify-self:start;padding:4px 7px;font-size:10px;font-style:normal;font-weight:700}.diff-row.diff-added{background:#f4fbf6}.diff-row.diff-added em{background:var(--green-soft);color:var(--green)}.diff-row.diff-removed{background:#fff6f6}.diff-row.diff-removed em{background:var(--red-soft);color:var(--red)}.diff-row.diff-changed{background:#fffaf0}.diff-row.diff-changed em{background:var(--amber-soft);color:var(--amber)}.structure-footnote{background:var(--blue-soft);color:#57708f;border-radius:9px;align-items:center;gap:14px;margin-top:12px;padding:11px 12px;font-size:11px;display:flex}.structure-footnote>svg{color:var(--blue)}.structure-footnote em{margin-left:auto;font-style:normal;font-weight:700}.history-summary{grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:14px;display:grid}.history-summary>div{border:1px solid var(--line);border-radius:9px;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:11px;display:grid}.history-summary span{color:var(--muted);font-size:11px}.history-summary strong{font-size:17px}.review-history-list{border:1px solid var(--line);border-radius:10px;overflow:hidden}.review-history-list article{border-top:1px solid var(--line);grid-template-columns:36px 1fr auto;align-items:start;gap:11px;padding:12px;display:grid}.review-history-list article:first-child{border-top:0}.history-icon{background:#eef2ef;border-radius:9px;place-items:center;width:34px;height:34px;display:grid}.history-icon.history-approved{background:var(--green-soft)}.history-icon.history-rejected{background:var(--red-soft)}.review-history-list span,.review-history-list strong,.review-history-list p,.review-history-list small{display:block}.review-history-list span{color:var(--muted);text-transform:uppercase;letter-spacing:.45px;font-size:10px}.review-history-list strong{margin-top:3px;font-size:13px}.review-history-list p{color:#536159;margin:5px 0;font-size:11px}.review-history-list small{color:var(--muted);font-size:10px}.history-outcome{text-align:right}.history-outcome em{background:#eef2ef;border-radius:999px;padding:5px 8px;font-size:10px;font-style:normal;font-weight:750;display:inline-flex}.history-outcome small{margin-top:6px}.empty-state.compact{min-height:260px}.toast{z-index:150;color:#eff8f2;background:#173b2a;border:1px solid #ffffff21;border-radius:10px;align-items:center;gap:8px;padding:12px 15px;font-size:13px;font-weight:650;animation:.25s toast-in;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 14px 40px #0b221645}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}}.loading-screen,.error-screen{text-align:center;background:#f6f8f6;place-content:center;justify-items:center;min-height:100vh;display:grid}.loading-logo{color:#245e40;background:#d8f2df;border-radius:15px;place-items:center;width:50px;height:50px;animation:1.5s ease-in-out infinite breathe;display:grid}.loading-copy{margin-top:17px}.loading-copy strong,.loading-copy span{display:block}.loading-copy strong{font-size:18px}.loading-copy span{color:var(--muted);margin-top:5px;font-size:13px}.loading-bar{background:#dfe5e1;border-radius:999px;width:230px;height:3px;margin-top:18px;overflow:hidden}.loading-bar i{background:var(--green);width:40%;height:100%;animation:1.1s infinite loading;display:block}.error-screen{padding:24px}.error-screen svg{color:var(--amber)}.error-screen h1{margin:15px 0 6px;font-size:24px}.error-screen p{color:var(--muted);max-width:440px;margin:0 0 17px}@keyframes loading{0%{transform:translate(-100%)}to{transform:translate(250%)}}@keyframes breathe{50%{transform:scale(1.05)}}.login-page,.configuration-page{background:radial-gradient(circle at 15% 12%,#e1f3e7 0,#0000 30%),radial-gradient(circle at 86% 82%,#e9effb 0,#0000 30%),#f5f7f5;place-items:center;min-height:100vh;padding:24px;display:grid}.login-card,.configuration-card{background:#fffffff5;border:1px solid #dce4de;border-radius:22px;width:min(100%,430px);padding:32px;box-shadow:0 24px 70px #1c342621}.login-brand{align-items:center;gap:10px;margin-bottom:34px;display:flex}.login-brand>span{color:#fff;background:var(--green);border-radius:12px;place-items:center;width:40px;height:40px;display:grid}.login-brand strong,.login-brand small{display:block}.login-brand strong{letter-spacing:-.4px;font-size:17px}.login-brand small{color:var(--muted);margin-top:2px;font-size:11px}.login-icon,.configuration-icon{width:52px;height:52px;color:var(--green);background:var(--green-soft);border-radius:15px;place-items:center;margin-bottom:18px;display:grid}.login-card h1,.configuration-card h1{letter-spacing:-.8px;margin:0;font-size:27px}.login-card>p,.configuration-card>p{color:var(--muted);margin:10px 0 22px;font-size:13px;line-height:1.65}.login-card>p strong{color:var(--ink)}.login-form{gap:14px;display:grid}.login-form label{color:#4e5c53;gap:7px;font-size:12px;font-weight:700;display:grid}.login-form input{width:100%;height:46px;color:var(--ink);font:inherit;background:#fff;border:1px solid #d2dbd5;border-radius:10px;outline:0;padding:0 13px;font-size:14px}.login-form input:focus{border-color:var(--green);box-shadow:0 0 0 3px #1b6b461c}.login-form .otp-input{text-align:center;height:58px;font-family:var(--font-mono);letter-spacing:9px;font-size:25px;font-weight:750}.login-form .primary-button{justify-content:center;height:45px}.login-error{color:var(--red);background:var(--red-soft);border-radius:9px;padding:10px 12px;font-size:12px;line-height:1.45}.login-resend,.login-back{color:var(--green);cursor:pointer;background:0 0;border:0;font-size:12px;font-weight:700}.login-resend{padding:5px}.login-resend:disabled{color:var(--muted);cursor:default}.login-back{align-items:center;gap:5px;margin:-8px 0 22px;padding:0;display:flex}.login-security{border-top:1px solid var(--line);color:var(--muted);justify-content:center;align-items:center;gap:7px;margin-top:25px;padding-top:18px;font-size:11px;display:flex}.login-security svg{color:var(--green)}.spin{animation:.8s linear infinite login-spin}@keyframes login-spin{to{transform:rotate(360deg)}}.configuration-card{text-align:left}.configuration-card .configuration-icon{color:var(--amber);background:var(--amber-soft)}.user-card>button{color:#ffffffa8;cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;width:30px;height:30px;margin-left:auto;display:grid}.user-card>button:hover{color:#fff;background:#ffffff1a}.empty-workspace{text-align:center;padding:34px}.empty-workspace-icon{width:58px;height:58px;color:var(--green);background:var(--green-soft);border-radius:17px;place-items:center;margin:0 auto 15px;display:grid}.empty-workspace h2{margin:0;font-size:20px}.empty-workspace>p{max-width:580px;color:var(--muted);margin:8px auto 24px;font-size:13px;line-height:1.6}.empty-workspace-steps{text-align:left;gap:9px;max-width:720px;margin:0 auto;display:grid}.empty-workspace-steps button{border:1px solid var(--line);width:100%;color:var(--ink);cursor:pointer;background:#fff;border-radius:11px;grid-template-columns:34px 1fr auto;align-items:center;gap:12px;padding:13px;display:grid}.empty-workspace-steps button:hover{background:#f8fcf9;border-color:#b9d4c2}.empty-workspace-steps button>span{width:32px;height:32px;color:var(--green);background:var(--green-soft);border-radius:9px;place-items:center;font-size:13px;font-weight:800;display:grid}.empty-workspace-steps strong,.empty-workspace-steps small{display:block}.empty-workspace-steps strong{font-size:13px}.empty-workspace-steps small{color:var(--muted);margin-top:3px;font-size:11px}@media (max-width:1180px){.metric-grid,.quality-grid,.recipe-grid{grid-template-columns:repeat(2,1fr)}.approval-card{grid-template-columns:1fr}.approval-actions{justify-content:flex-end}}@media (max-width:980px){.sidebar{transition:transform .2s;transform:translate(-100%);box-shadow:20px 0 55px #0003}.sidebar.sidebar-open{transform:translate(0)}.sidebar-scrim{z-index:25;background:#0a140f73;border:0;position:fixed;inset:0}.main-panel{margin-left:0}.mobile-menu{border:1px solid var(--line);background:#fff;border-radius:9px;place-items:center;width:36px;height:36px;display:grid}.crumb{margin-left:10px;margin-right:auto}.dashboard-grid,.detail-layout,.audit-layout{grid-template-columns:1fr}.cost-sidebar{grid-template-columns:1fr 1fr;display:grid;position:static}.trace-card{grid-column:1/-1}.team-role-grid{grid-template-columns:1fr 1fr}.editable-grid{overflow-x:auto}.editable-grid-head,.editable-row{min-width:820px}.product-meta-grid,.wizard-meta.four-fields{grid-template-columns:1fr 1fr}.costing-review{grid-template-columns:repeat(3,1fr)}}@media (max-width:700px){.topbar{padding:0 14px}.top-actions .icon-button:first-child,.crumb span,.top-actions .small span{display:none}.page-wrap{padding:24px 14px 42px}.page-heading,.detail-heading{flex-direction:column;align-items:flex-start}.page-heading h1,.detail-heading h1{font-size:29px}.heading-actions{justify-content:flex-start}.metric-grid,.quality-grid,.recipe-grid{grid-template-columns:1fr}.metric-card{min-height:126px}.stat-strip{grid-template-columns:1fr 1fr}.stat-strip div:nth-child(3){border-left:0;border-top:1px solid var(--line)}.stat-strip div:nth-child(4){border-top:1px solid var(--line)}.margin-summary{gap:8px}.dashboard-grid{gap:13px}.toolbar{flex-wrap:wrap}.search-box{width:100%}.result-count{margin-left:0}.cost-sidebar{grid-template-columns:1fr}.trace-card{grid-column:auto}.approval-summary{grid-template-columns:1fr 1fr}.approval-summary>div:nth-child(3){border-left:0;border-top:1px solid var(--line)}.approval-summary>div:nth-child(4){border-top:1px solid var(--line)}.approval-hero{grid-column:1/-1}.change-summary{grid-template-columns:1fr}.warning-banner{grid-template-columns:auto 1fr}.warning-banner button{grid-column:1/-1}.modal-form.two-column{grid-template-columns:1fr}.full{grid-column:auto}.rate-comparison,.price-impact,.mapping-arrow{grid-template-columns:1fr}.rate-comparison>svg,.price-impact>svg,.mapping-arrow>svg{justify-self:center;transform:rotate(90deg)}.recipe-editor-summary,.team-role-grid,.master-layout,.product-meta-grid,.wizard-meta.four-fields,.costing-review,.recipe-final-row{grid-template-columns:1fr}.editor-section-head{flex-direction:column;align-items:flex-start}.wizard-steps{overflow-x:auto}.wizard-steps span{min-width:100px}.toast{bottom:14px;left:14px;right:14px}.bar-chart{gap:8px}.version-toolbar,.version-summary,.history-summary{grid-template-columns:1fr}.version-summary>svg{justify-self:center;transform:rotate(90deg)}.diff-table{overflow-x:auto}.diff-head,.diff-row{min-width:720px}.review-history-list article{grid-template-columns:34px 1fr}.history-outcome{text-align:left;grid-column:2}.structure-footnote{flex-wrap:wrap;align-items:flex-start}.structure-footnote em{margin-left:0}.login-page,.configuration-page{padding:14px}.login-card,.configuration-card{border-radius:17px;padding:24px 20px}.login-card h1,.configuration-card h1{font-size:23px}}@media print{.sidebar,.topbar,.heading-actions,.back-button,button{display:none!important}.main-panel{margin-left:0}.page-wrap{padding:0}.panel,.cost-card{break-inside:avoid;box-shadow:none}.detail-layout{grid-template-columns:1fr}.cost-sidebar{position:static}}
