@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.3p2_lha1f2xer.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.1qq4vpdcun5oj.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.390ncx5urfkfu.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.21jp631_3pja2.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.0wgildi0cnwt9.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_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.31988l_ccedte.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.2tuy5pz7dlieh.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.2dbetqa9o8jxf.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.1uyisp29ctx0d.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.1rgnod-3esatf.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.0r6juujl39pe6.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_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
@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}}}@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;--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;-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: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{.flex{display:flex}.table-row{display:table-row}.h-full{height:100%}.min-h-full{min-height:100%}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.flex-col{flex-direction:column}.rounded{border-radius:.25rem}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--brand:#114441;--brand-deep:#0b3431;--brand-mid:#2f7068;--brand-pale:#e3eeea;--ink:#18302d;--muted:#667975;--line:#dce6e1;--soft:#f4f7f4;--green:#2f8171;--green-dark:#1d6258;--green-pale:#e3f0eb;--aqua:#49bda4;--blue:#4d89c7;--violet:#7c6bc4;--amber:#d2973b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);font-family:var(--font-geist-sans), Arial, Helvetica, sans-serif;background:#eef2ef;margin:0}button,select,input{font:inherit}button,a,select,input{-webkit-tap-highlight-color:transparent}.app-shell{grid-template-columns:224px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--brand-deep);color:#dce9e5;z-index:5;flex-direction:column;height:100vh;padding:27px 18px 20px;display:flex;position:sticky;top:0;box-shadow:12px 0 34px #1144410f}.brand-mark{align-items:center;gap:12px;padding:0 8px 27px;display:flex}.brand-mark img{object-fit:contain;filter:brightness(0)invert();opacity:.96;width:38px;height:44px}.brand-mark b{color:#fff;letter-spacing:-1px;font-size:21px;line-height:1;display:block}.brand-mark small{color:#8eb4ab;letter-spacing:1.45px;white-space:nowrap;margin-top:6px;font-size:7px;display:block}.sidebar nav{gap:5px;display:grid}.sidebar a,.logout-button{color:#a9beb2;border-radius:8px;align-items:center;gap:11px;min-height:44px;padding:0 12px;font-size:13px;font-weight:600;text-decoration:none;transition:all .18s;display:flex}.sidebar a:hover,.sidebar a.active,.logout-button:hover{color:#fff;background:#b8ddd01c}.sidebar a.active{box-shadow:inset 3px 0 #9bcdbb}.logout-button{cursor:pointer;background:0 0;border:0;width:100%}.nav-icon{text-align:center;color:#9bcdbb;width:19px;font-size:18px}.sidebar-bottom{gap:18px;margin-top:auto;display:grid}.profile{border-top:1px solid #ffffff1a;align-items:center;gap:10px;padding:18px 6px 0;display:flex}.profile>span{color:#24593a;background:#d9efdf;border-radius:50%;place-items:center;width:34px;height:34px;font-size:11px;font-weight:800;display:grid}.profile b,.profile small{display:block}.profile b{color:#fff;font-size:12px}.profile small{color:#759184;margin-top:3px;font-size:10px}.content{width:100%;min-width:0;max-width:1600px;margin:0 auto;padding:34px 38px 60px}.topbar{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px;display:flex}.eyebrow{color:#6f8177;letter-spacing:1.5px;font-size:9px;font-weight:800}h1,h2,h3,p{margin:0}h1{letter-spacing:-1px;color:var(--brand);margin-top:5px;font-size:30px}h2{margin-top:5px;font-size:21px}h3{margin-top:4px;font-size:16px}.topbar-actions{align-items:flex-end;gap:10px;display:flex}.topbar-actions label{color:#718078;text-transform:uppercase;letter-spacing:.8px;font-size:9px;font-weight:700}select{color:#273a30;background:#fff;border:1px solid #cedbd3;border-radius:8px;min-width:174px;margin-top:6px;padding:10px 34px 10px 12px;font-size:12px;font-weight:700;display:block}.primary-button,.quiet-button{cursor:pointer;border-radius:8px;font-weight:700}.primary-button{background:var(--brand);color:#fff;border:0;height:38px;padding:0 16px;font-size:12px;box-shadow:0 5px 15px #1144412e}.primary-button:hover{background:var(--brand-mid)}.quiet-button{color:#456055;background:#fff;border:1px solid #d9e4dd;padding:8px 11px;font-size:10px}.notice{background:#fff9ea;border:1px solid #f0dfae;border-radius:10px;align-items:center;gap:11px;margin-bottom:16px;padding:10px 13px;display:flex}.notice>span{color:#5b4516;background:#f6cd65;border-radius:50%;place-items:center;width:28px;height:28px;font-size:12px;font-weight:800;display:grid}.notice b,.notice small{display:block}.notice small{color:#867650;margin-top:3px;font-size:10px}.notice button{color:#7b641f;cursor:pointer;background:0 0;border:0;margin-left:auto;font-size:10px;font-weight:800}.metrics{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:30px;display:grid}.metric-card{border:1px solid var(--line);background:#fff;border-radius:11px;padding:16px;position:relative;overflow:hidden;box-shadow:0 2px 12px #1d3f2c06}.metric-card:after{content:"";background:var(--green);width:3px;position:absolute;top:0;bottom:0;left:0}.metric-card.blue:after{background:var(--blue)}.metric-card.violet:after{background:var(--violet)}.metric-card.amber:after{background:var(--amber)}.metric-topline{color:#718078;justify-content:space-between;align-items:center;font-size:10px;font-weight:700;display:flex}.metric-dot{background:var(--green);width:7px;height:7px;box-shadow:0 0 0 4px var(--green-pale);border-radius:50%}.blue .metric-dot{background:var(--blue);box-shadow:0 0 0 4px #e7f0f8}.violet .metric-dot{background:var(--violet);box-shadow:0 0 0 4px #efecf9}.amber .metric-dot{background:var(--amber);box-shadow:0 0 0 4px #faf0dd}.metric-card strong{letter-spacing:-.6px;margin:12px 0 5px;font-size:24px;display:block}.metric-card small{color:#7d8b83;font-size:9px}.pipeline-section{margin:0 0 30px;scroll-margin-top:20px}.pipeline-heading{align-items:center}.scenario-tabs{background:#eef4f0;border:1px solid #d7e2da;border-radius:9px;padding:3px;display:flex}.scenario-tabs button{color:#6d7d74;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:8px 11px;font-size:9px;font-weight:800}.scenario-tabs button.active{color:#2d6847;background:#fff;box-shadow:0 1px 5px #234a311f}.pipeline-summary{border:1px solid var(--line);background:#fff;border-radius:11px;grid-template-columns:repeat(4,1fr);margin-bottom:12px;display:grid;overflow:hidden}.pipeline-summary>div{border-right:1px solid #e7ede9;min-height:76px;padding:13px 15px}.pipeline-summary>div:last-child{border-right:0}.pipeline-summary small,.pipeline-summary b,.pipeline-summary span{display:block}.pipeline-summary small{color:#7b8981;text-transform:uppercase;letter-spacing:.5px;font-size:7px;font-weight:800}.pipeline-summary b{margin:7px 0 4px;font-size:17px}.pipeline-summary span{color:#7d8b83;font-size:8px}.pipeline-summary .capacity-alert{background:#fff9e9}.pipeline-summary .capacity-alert b{color:#8b6720}.pipeline-layout{grid-template-columns:1.3fr .7fr;gap:12px;display:grid}.contract-list{gap:7px;display:grid}.pipeline-card{--contract-accent:#4aa66d;width:100%;min-height:68px;color:var(--ink);text-align:left;cursor:pointer;background:#fff;border:1px solid #dce5df;border-radius:10px;grid-template-columns:9px 1.2fr 1fr 62px 12px;align-items:center;gap:10px;padding:10px 12px;transition:border-color .15s,transform .15s,opacity .15s;display:grid}.pipeline-card:hover{border-color:#b9cbc0;transform:translateY(-1px)}.pipeline-card.selected{border-color:var(--contract-accent);box-shadow:inset 3px 0 var(--contract-accent), 0 4px 14px #254a320f}.pipeline-card.excluded{opacity:.56}.pipeline-card.excluded:hover,.pipeline-card.excluded.selected{opacity:.85}.status-dot{background:#8d9a93;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #edf1ef}.status-dot.signed{background:#44ad6b;box-shadow:0 0 0 4px #e5f4e9}.status-dot.opportunity{background:#bd8c36;box-shadow:0 0 0 4px #fbf0da}.status-dot.negotiating{background:#4b78c2;box-shadow:0 0 0 4px #e7eef9}.status-dot.paused{background:#96724a;box-shadow:0 0 0 4px #f3ebe2}.status-dot.completed{background:#667b70}.status-dot.lost{background:#b45b53;box-shadow:0 0 0 4px #f7e8e6}.pipeline-copy,.pipeline-volume,.confidence{min-width:0;display:block}.pipeline-copy>span{align-items:center;gap:7px;display:flex}.pipeline-copy b,.pipeline-volume b,.confidence b{font-size:10px;display:block}.pipeline-copy small,.pipeline-volume small,.confidence small{color:#819087;margin-top:4px;font-size:7px;display:block}.pipeline-volume b{white-space:nowrap}.confidence{text-align:right}.confidence b{font-size:12px}.chevron{color:#8b9991;font-size:18px}.status-label{color:#718078;white-space:nowrap;background:#eef2ef;border-radius:99px;padding:4px 7px;font-size:7px;font-style:normal;font-weight:800;display:inline-flex}.status-label.signed{color:#33754b;background:#e5f5ea}.status-label.opportunity{color:#8b641f;background:#fff1d7}.status-label.negotiating{color:#3f67a8;background:#e7eef9}.status-label.paused{color:#805f3d;background:#f3ebe2}.status-label.completed{color:#52665b;background:#e8eeeb}.status-label.lost{color:#98483f;background:#f7e8e6}.intake-placeholder{color:#536a5d;text-align:left;cursor:pointer;background:#ffffff8c;border:1px dashed #bdccc3;border-radius:10px;align-items:center;gap:10px;min-height:54px;padding:10px 13px;display:flex}.intake-placeholder>span{color:#378157;background:#e4f1e8;border-radius:7px;place-items:center;width:26px;height:26px;font-size:16px;display:grid}.intake-placeholder b,.intake-placeholder small{display:block}.intake-placeholder b{font-size:9px}.intake-placeholder small{color:#829088;margin-top:3px;font-size:7px}.pipeline-detail{--contract-accent:#4aa66d;border:1px solid var(--line);border-top:3px solid var(--contract-accent);background:#fff;border-radius:11px;min-height:100%;padding:16px}.detail-title{border-bottom:1px solid #e7ede9;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:12px;display:flex}.detail-title p{color:#78877f;margin-top:4px;font-size:8px}.detail-grid{grid-template-columns:1fr 1fr;display:grid}.detail-grid>div{border-bottom:1px solid #edf1ee;min-height:55px;padding:10px 6px 8px 0}.detail-grid>div:nth-child(odd){border-right:1px solid #edf1ee}.detail-grid>div:nth-child(2n){padding-left:10px}.detail-grid small,.detail-grid b{display:block}.detail-grid small{color:#819087;font-size:7px}.detail-grid b{margin-top:5px;font-size:8px;line-height:1.35}.saved-schedule{background:#f7faf8;border:1px solid #dfe8e2;border-radius:8px;margin-top:12px;padding:10px}.saved-schedule>div{border-bottom:1px solid #e3ebe6;justify-content:space-between;gap:10px;padding-bottom:7px;display:flex}.saved-schedule>div small{color:#78877f;font-weight:700}.saved-schedule>span{padding-top:8px;display:block}.saved-schedule>span b,.saved-schedule>span small{display:block}.saved-schedule>span b{color:#365c47;font-size:11px}.saved-schedule>span small{color:#79877f;margin-top:2px}.missing-inputs{background:#fff8e7;border-radius:8px;margin-top:12px;padding:10px}.missing-inputs>span{color:#8a6b2d;font-size:7px;font-weight:800;display:block}.missing-inputs div{flex-wrap:wrap;gap:4px;margin-top:7px;display:flex}.missing-inputs i{color:#786333;background:#fff;border:1px solid #ead9ae;border-radius:5px;padding:4px 6px;font-size:6px;font-style:normal}.record-ready{color:#38734d;background:#eaf6ed;border-radius:8px;margin-top:12px;padding:10px;font-size:8px;font-weight:800}.record-ready i{background:#46ad6b;border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block}.edit-record{color:#416450;cursor:pointer;background:#f7faf8;border:1px solid #d5e1d9;border-radius:7px;width:100%;margin-top:12px;padding:9px;font-size:8px;font-weight:800}.climate-capacity-warning{background:linear-gradient(110deg,#fffaf0,#fff5df);border:1px solid #eccb86;border-radius:11px;grid-template-columns:34px 1fr auto;align-items:center;gap:14px;margin-top:12px;padding:14px 16px;display:grid}.warning-icon{color:#fff;background:#e6aa3d;border-radius:50%;place-items:center;width:32px;height:32px;font-size:17px;font-weight:900;display:grid;box-shadow:0 0 0 5px #e6aa3d21}.climate-capacity-warning h3{color:#634b1f;margin:4px 0}.climate-capacity-warning p{color:#806a41;max-width:680px;font-size:8px;line-height:1.5}.warning-metrics{background:#ffffffb3;border:1px solid #ead7ad;border-radius:8px;align-items:stretch;display:flex;overflow:hidden}.warning-metrics span{border-left:1px solid #eadfca;min-width:94px;padding:9px 10px}.warning-metrics span:first-child{border-left:0}.warning-metrics b,.warning-metrics small{display:block}.warning-metrics b{color:#785919;font-size:12px}.warning-metrics small{color:#8d7950;margin-top:3px;font-size:6px}.demand-outlook{border:1px solid var(--line);background:#fff;border-radius:11px;margin-top:12px;padding:16px 18px 12px}.demand-legend{color:#718078;gap:12px;font-size:7px;display:flex}.demand-legend span{align-items:center;gap:4px;display:flex}.demand-legend i{border-radius:2px;width:7px;height:7px}.demand-legend .aqua,.bar-stack .aqua{background:#48aa6d}.demand-legend .lufa,.bar-stack .lufa{background:#55aab5}.demand-legend .plenty,.bar-stack .plenty{background:#d45c7d}.demand-legend .savoura,.bar-stack .savoura{background:#765fd0}.demand-chart{background:repeating-linear-gradient(#0000 0 46px,#eef2ef 47px);border-bottom:1px solid #e3eae5;grid-template-columns:repeat(12,minmax(54px,1fr));align-items:end;gap:12px;height:188px;padding:8px 14px 0;display:grid;overflow-x:auto}.demand-column{flex-direction:column;justify-content:flex-end;align-items:center;height:100%;display:flex}.demand-column>b{color:#52665b;margin-bottom:5px;font-size:8px}.demand-column>small{color:#7c8a82;margin:7px 0 5px;font-size:7px}.bar-stack{border-radius:4px 4px 0 0;flex-direction:column;justify-content:flex-end;width:min(54px,100%);min-height:12px;display:flex;overflow:hidden}.bar-stack span{min-height:0;transition:flex .25s}.chart-disclaimer{color:#849088;margin-top:9px;font-size:7px;line-height:1.5}.capacity-outlook{border:1px solid var(--line);background:#fff;border-radius:11px;margin-top:12px;padding:16px 18px 12px}.capacity-legend{color:#718078;flex-wrap:wrap;justify-content:flex-end;gap:12px;font-size:10px;display:flex}.capacity-legend span{align-items:center;gap:6px;display:flex}.capacity-legend i{border-radius:2px;width:16px;height:3px}.capacity-marker{background:var(--brand)}.overage-marker{background:#c85c4d}.capacity-chart{--capacity-line-bottom:115px;background:repeating-linear-gradient(#0000 0 49px,#eef2ef 50px);border-bottom:1px solid #e3eae5;grid-template-columns:repeat(12,minmax(54px,1fr));align-items:end;gap:12px;height:235px;padding:8px 14px 0;display:grid;position:relative;overflow-x:auto}.capacity-limit-line{z-index:2;left:8px;right:8px;bottom:var(--capacity-line-bottom);pointer-events:none;border-top:2px dashed #114441b8;position:absolute}.capacity-limit-line span{color:var(--brand);background:#ffffffe6;border-radius:4px;padding:2px 5px;font-size:9px;font-weight:800;position:absolute;bottom:4px;right:3px}.capacity-column{z-index:1;flex-direction:column;justify-content:flex-end;align-items:center;height:100%;display:flex;position:relative}.capacity-column>b{color:#52665b;margin-bottom:5px;font-size:10px}.capacity-column.over>b,.capacity-column.over>em{color:#aa493e}.capacity-bar{border-radius:4px 4px 0 0;flex-direction:column;justify-content:flex-end;width:min(54px,100%);min-height:3px;display:flex;overflow:hidden;box-shadow:inset 0 0 0 1px #18302d14}.capacity-bar span{min-height:1px}.capacity-column>small{color:#7c8a82;margin-top:6px;font-size:10px}.capacity-column>em{color:#6a8476;white-space:nowrap;min-height:14px;margin-top:2px;font-size:9px;font-style:normal;font-weight:750}.contract-detail{grid-template-columns:.92fr 1.08fr;gap:14px;margin:0 0 30px;scroll-margin-top:20px;display:grid}.contract-summary,.ramp-table-wrap{border:1px solid var(--line);background:#fff;border-radius:12px;padding:16px}.contract-facts{border:1px solid #e4ebe6;border-radius:8px;grid-template-columns:repeat(4,1fr);display:grid;overflow:hidden}.contract-facts div{border-bottom:1px solid #e8eee9;border-right:1px solid #e8eee9;min-height:55px;padding:10px}.contract-facts div:nth-child(4n){border-right:0}.contract-facts div:nth-last-child(-n+4){border-bottom:0}.contract-facts small,.contract-facts b{display:block}.contract-facts small{color:#7a8981;margin-bottom:5px;font-size:7px}.conversion-formula{color:#5f7568;background:#edf7f0;border-radius:8px;grid-template-columns:1fr auto auto 1fr auto auto 1fr;align-items:center;gap:7px;margin-top:11px;padding:9px;font-size:7px;display:grid}.conversion-formula b{color:#286446;font-size:8px}.conversion-formula i{color:#8b9b92;font-style:normal}.ramp-table-wrap .chart-head>small{color:#849189;font-size:7px}.ramp-table{border:1px solid #e4ebe6;border-radius:8px;overflow:hidden}.ramp-row{color:#405249;border-top:1px solid #e9efeb;grid-template-columns:1.2fr .7fr .9fr .8fr 1fr;align-items:center;min-height:43px;font-size:9px;display:grid}.ramp-row:first-child{border-top:0}.ramp-row>span{padding:8px 9px}.ramp-row b,.ramp-row small{display:block}.ramp-row small{color:#849189;margin-top:3px;font-size:7px}.ramp-head{color:#78877f;text-transform:uppercase;letter-spacing:.4px;background:#f5f8f6;min-height:26px;font-size:7px;font-weight:800}.ramp-row.selected{background:#eaf6ed;box-shadow:inset 3px 0 #46a969}.ramp-row.selected>span:last-child{color:#266a44;font-weight:800}.section-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:12px;display:flex}.section-heading p{color:var(--muted);margin-top:5px;font-size:10px}.legend{color:#6b7972;align-items:center;gap:13px;font-size:9px;display:flex}.legend span{align-items:center;gap:5px;display:flex}.legend i{border-radius:2px;width:9px;height:9px}.legend-aqua{background:#46bca1}.legend-free{background:#e7eee9;border:1px solid #cbd9d1}.legend-motion{background:#4aaf70;box-shadow:0 0 0 3px #dff1e5;border-radius:50%!important}.recipe-legend i{box-shadow:0 0 0 3px #4c5d5314}.movement-clock{background:#fff;border:1px solid #dce6df;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;padding:10px 14px;display:flex}.movement-clock b,.movement-clock small{display:block}.movement-clock b{margin:3px 0;font-size:11px}.movement-clock small{color:#75857c;font-size:8px}.movement-clock button{color:#3a6650;cursor:pointer;background:#f4f8f5;border:1px solid #cfe0d5;border-radius:7px;padding:8px 11px;font-size:9px;font-weight:800}.movement-clock button.active{color:#fff;background:#244c39;border-color:#244c39}.greenbox-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.allocation-policy{background:linear-gradient(115deg,#f8fcf9,#eef7f1);border:1px solid #d8e6dc;border-radius:12px;grid-template-columns:1.2fr 1.1fr 190px 190px;align-items:center;gap:14px;margin-bottom:12px;padding:15px 16px;display:grid}.policy-copy h3{margin:5px 0;font-size:14px}.policy-copy p{color:#687970;font-size:9px;line-height:1.5}.allocation-flow{grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;display:grid}.allocation-flow>i{color:#8ea096;font-style:normal}.flow-node{background:#fff;border:1px solid #d4e1d8;border-radius:9px;min-height:66px;padding:10px}.flow-node.active{border-color:#8bd0a3;box-shadow:inset 3px 0 #45ac69}.flow-node.reserved{background:#fbfdfb;border-style:dashed}.flow-node small,.flow-node b,.flow-node span{display:block}.flow-node small{color:#6f8277;text-transform:uppercase;letter-spacing:.7px;font-size:7px;font-weight:800}.flow-node b{margin:5px 0 3px;font-size:10px}.flow-node span{color:#7d8b83;font-size:8px}.strategy-control{color:#718078;text-transform:uppercase;letter-spacing:.7px;font-size:8px;font-weight:800}.strategy-control select{width:100%;min-width:0}.strategy-control input{width:100%;accent-color:var(--green);margin:7px 0 3px}.strategy-control b{color:#31483c;font-size:11px;display:block}.shift-control{grid-column:3/-1;grid-template-columns:1fr 1fr;gap:6px;display:grid}.shift-control button{color:#61736a;cursor:pointer;background:#fff;border:1px solid #cadbd0;border-radius:7px;padding:9px 10px;font-size:10px;font-weight:800}.shift-control button.active{color:#286c45;background:#e5f4e9;border-color:#3e9d65}.greenbox{border:1px solid var(--line);background:#fff;border-radius:12px;overflow:hidden}.greenbox-head{justify-content:space-between;align-items:center;padding:14px 16px 10px;display:flex}.machine-batch-key{flex-wrap:wrap;gap:7px;padding:0 14px 10px;display:flex}.machine-batch-key>span{background:#f8faf9;border:1px solid #e0e8e2;border-radius:7px;grid-template-columns:9px auto;align-items:center;column-gap:6px;min-width:0;padding:6px 8px;display:grid}.machine-batch-key i{border-radius:50%;grid-row:1/3;width:9px;height:9px;box-shadow:0 0 0 3px #253d2f0f}.machine-batch-key b,.machine-batch-key small{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.machine-batch-key b{color:#34493e;font-size:10px}.machine-batch-key small{color:#7b8982;font-size:8px}.machine-batch-key .empty-batch i{background:#a8b4ad}.machine-badges{align-items:center;gap:6px;display:flex}.role-pill{color:#63766b;background:#edf3ef;border-radius:99px;padding:5px 8px;font-size:8px;font-weight:800}.role-pill.primary{color:#2c7147;background:#e5f5ea}.role-pill.overflow{color:#94661f;background:#fff3db}.role-pill.reserve{color:#587084;background:#edf2f7}.live-pill,.contract-pill{color:#3f7254;background:#ebf7ee;border-radius:99px;padding:5px 8px;font-size:8px;font-weight:800}.live-pill i{background:#4ebc72;border-radius:50%;width:6px;height:6px;margin-right:4px;display:inline-block}.machine-shell{background:linear-gradient(#f6faf7,#eef5f0);border:2px solid #40564a;border-radius:5px;height:226px;margin:0 14px;padding:10px 10px 10px 65px;position:relative;overflow:hidden;box-shadow:inset 0 0 22px #2553370d}.movement-shell{height:284px;padding:8px 8px 8px 58px}.water-station{color:#fff;background:linear-gradient(#8bc6dc,#62aac9);border-radius:5px;flex-direction:column;justify-content:center;align-items:center;width:45px;display:flex;position:absolute;top:35px;bottom:35px;left:8px;box-shadow:inset 0 0 0 2px #ffffff4d}.water-station span{letter-spacing:1px;font-size:7px;font-weight:800}.water-wave{font-size:25px;line-height:22px}.water-station small{opacity:.9;font-size:7px}.levels{z-index:1;grid-template-rows:repeat(8,1fr);gap:4px;height:100%;display:grid;position:relative}.level{grid-template-columns:18px 1fr 12px;align-items:center;gap:6px;display:grid}.level-label{color:#7c8982;font-size:7px;font-weight:800}.level-track{background:#dae5dd;border-radius:8px;align-items:center;gap:2px;height:13px;padding:2px;display:flex;box-shadow:inset 0 1px 2px #243e2f21}.water-block{background:#f5f8f6;border:1px solid #cbd8d0;border-radius:4px;flex:1;min-width:3px;height:9px}.water-block.active{background:linear-gradient(90deg,#62cfb3,#35ad91);border-color:#299d82;box-shadow:0 0 6px #38b59838}.water-block.partial{background:linear-gradient(90deg,#42b899 52%,#edf3ef 52%)}.movement-map{width:100%;height:100%;display:block}.movement-route{fill:none;stroke:#246543;stroke-width:1.8px;stroke-linejoin:round}.fixed-light rect{fill:#c6cdca;stroke:#aeb9b3;stroke-width:.5px}.fixed-light.lit{filter:drop-shadow(0 0 5px #f4de4861)}.moving-shelf{cursor:pointer;outline:none}.moving-shelf rect{fill:#293a42;stroke:#17282f;stroke-width:.5px;transition:stroke .15s,stroke-width .15s}.moving-shelf text{fill:#f1f6f3;text-anchor:middle;pointer-events:none;font-size:5px;font-weight:800}.moving-shelf.empty rect{fill:#516169;opacity:.68}.moving-shelf:hover rect,.moving-shelf:focus rect,.moving-shelf.selected rect{stroke:#f4c84b;stroke-width:2px}.map-level{fill:#5f7168;font-size:7px;font-weight:800}.shelf-detail{color:#75857c;background:#f8faf9;border:1px dashed #d4e0d8;border-radius:8px;align-items:center;min-height:36px;margin:8px 14px 0;padding:10px 12px;font-size:8px;display:flex}.shelf-detail.open{background:#f3f8f4;border-style:solid;grid-template-columns:1.15fr repeat(4,1fr) auto;gap:12px;display:grid}.shelf-detail div{min-width:0}.shelf-detail small,.shelf-detail b{display:block}.shelf-detail small{color:#75857c;margin-bottom:3px;font-size:7px}.shelf-detail b{color:#273c31;white-space:nowrap;text-overflow:ellipsis;font-size:9px;overflow:hidden}.shelf-detail>div:first-child b{margin-top:3px;font-size:12px}.shelf-detail button{color:#708077;cursor:pointer;background:0 0;border:0;font-size:18px}.greenbox-foot{border-top:1px solid #e6ede8;grid-template-columns:repeat(3,1fr);margin-top:12px;display:grid}.greenbox-foot div{border-right:1px solid #edf1ee;padding:10px 14px}.greenbox-foot div:last-child{border-right:0}.greenbox-foot b,.greenbox-foot span{display:block}.greenbox-foot b{font-size:14px}.greenbox-foot span{color:#7b8982;margin-top:2px;font-size:8px}.climate-strip{color:#607168;background:#f8faf9;border-top:1px solid #e9efeb;justify-content:space-between;align-items:center;gap:12px;min-height:34px;padding:8px 14px;font-size:8px;display:flex}.climate-strip span{align-items:center;gap:6px;display:flex}.climate-strip i{background:#49ae6c;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #e0f2e6}.climate-strip i.idle{background:#8497a5;box-shadow:0 0 0 3px #e6edf2}.climate-strip b{color:#32483d;font-size:8px}.lower-grid{grid-template-columns:1.35fr .65fr;gap:14px;margin-top:14px;display:grid}.schedule-card,.light-profile,.economics-card,.assumption-card{border:1px solid var(--line);background:#fff;border-radius:12px;padding:16px}.chart-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.schedule-table{border:1px solid #e4ebe6;border-radius:8px;overflow:hidden}.schedule-subhead{color:#5e7468;justify-content:space-between;gap:12px;margin:4px 0 8px;font-size:10px;display:flex}.schedule-subhead span{color:#819087}.schedule-subhead.plenty{color:#9c4762;border-top:1px solid #e4ebe6;margin-top:18px;padding-top:14px}.plenty-table{border-color:#eadce1}.mini-blocks.plenty i{background:#d45c7d}.table-row{border-top:1px solid #edf1ee;grid-template-columns:.6fr 1fr 1fr .9fr .9fr;align-items:center;min-height:47px;display:grid}.table-row:first-child{border-top:0}.table-row>span{padding:8px 10px}.table-head{color:#77867e;text-transform:uppercase;letter-spacing:.5px;background:#f5f8f6;min-height:27px;font-size:8px;font-weight:800}.table-row b,.table-row small{display:block}.table-row b{font-size:10px}.table-row small{color:#809087;margin-top:3px;font-size:8px}.mini-blocks{gap:2px;margin-top:4px;display:flex}.mini-blocks i{background:#5bc6ac;border-radius:2px;width:9px;height:4px}.light-profile svg{border-bottom:1px solid #e7eee9;width:100%;height:130px;overflow:visible}.day-axis{color:#8a978f;justify-content:space-between;margin-top:5px;font-size:7px;display:flex}.pending-note{color:#856e32;background:#fff9e9;border-radius:6px;margin-top:14px;padding:8px;font-size:8px;line-height:1.4}.pending-note i{background:#e5b94d;border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block}.economics-grid{grid-template-columns:1.35fr .65fr;gap:14px;margin-top:14px;display:grid}.economics-flow{grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:12px;display:grid}.economics-flow>div{background:#f5f8f6;border-radius:8px;padding:13px}.economics-flow span,.economics-flow b,.economics-flow small{display:block}.economics-flow span{color:#76847c;font-size:8px}.economics-flow b{margin:5px 0 3px;font-size:16px}.economics-flow small{color:#87938c;font-size:8px}.economics-flow>i{color:#9eaaa3;font-style:normal}.assumption-card{grid-template-columns:1fr 130px;gap:15px;display:grid}.assumption-card p{color:#75837b;margin-top:6px;font-size:9px;line-height:1.45}.loss-control{align-self:center}.loss-control strong{text-align:center;font-size:25px;display:block}.loss-control input{width:100%;accent-color:var(--green)}.loss-control div{color:#8b9790;justify-content:space-between;font-size:7px;display:flex}.assumption-card footer{color:#748279;border-top:1px solid #e8eee9;grid-column:1/-1;justify-content:space-between;align-items:center;padding-top:10px;font-size:9px;display:flex}.assumption-card footer b{color:var(--ink);font-size:14px}.login-page{background:radial-gradient(circle at 25% 15%,#2b625d 0,var(--brand) 36%,#082a28 100%);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:#fbfcfa;border:1px solid #ffffff1f;border-radius:16px;width:min(420px,100%);padding:34px;box-shadow:0 24px 70px #04140b59}.login-brand{gap:9px;margin-bottom:34px;display:grid}.login-brand img{width:220px;height:auto}.login-brand>span{color:#66827b;letter-spacing:2.4px;font-size:8px;font-weight:800}.login-card h1{color:var(--brand);margin:7px 0 8px}.login-card>p{color:#6b7c72;font-size:11px;line-height:1.55}.login-card form{gap:8px;margin-top:24px;display:grid}.login-card label{color:#52675c;text-transform:uppercase;letter-spacing:.8px;font-size:9px;font-weight:800}.login-card input{background:#fff;border:1px solid #cad8cf;border-radius:8px;outline:none;width:100%;padding:12px}.login-card input:focus{border-color:var(--brand-mid);box-shadow:0 0 0 3px var(--brand-pale)}.login-card form button{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:8px;margin-top:5px;padding:12px;font-size:11px;font-weight:800}.login-card form button:hover{background:var(--brand-mid)}.login-card form button:disabled{opacity:.65;cursor:wait}.login-error{color:#a23e31;background:#fff0ee;border-radius:7px;padding:9px;font-size:9px}.login-note{color:#8a978f;text-align:center;margin-top:18px;font-size:8px;display:block}.editor-backdrop{z-index:50;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#1023199e;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.contract-editor{background:#fbfdfb;border-radius:15px;width:min(980px,100%);max-height:calc(100vh - 48px);padding:22px;overflow-y:auto;box-shadow:0 28px 80px #091c1159}.editor-head{border-bottom:1px solid #dfe8e2;justify-content:space-between;gap:20px;padding-bottom:16px;display:flex}.editor-head p{color:#74837b;margin-top:6px;font-size:9px}.editor-head>button{color:#64766c;cursor:pointer;background:#edf2ef;border:0;border-radius:7px;width:30px;height:30px;font-size:19px}.editor-fields{grid-template-columns:1fr 1fr;gap:12px;margin-top:17px;display:grid}.editor-fields label{color:#64766c;text-transform:uppercase;letter-spacing:.5px;font-size:8px;font-weight:800}.editor-fields input{color:#273a30;width:100%;font:inherit;text-transform:none;letter-spacing:0;background:#fff;border:1px solid #cfdcd4;border-radius:8px;outline:none;margin-top:6px;padding:10px 11px;font-size:10px;font-weight:600}.editor-fields input:focus{border-color:#55aa75;box-shadow:0 0 0 3px #e4f2e8}.wide-field{grid-column:1/-1}.schedule-editor{border-top:1px solid #dfe8e2;margin-top:18px;padding-top:17px}.schedule-editor-head{justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.schedule-editor-head h3{margin-top:3px}.schedule-editor-head button{color:#377151;cursor:pointer;background:#edf7f0;border:1px solid #cfe0d5;border-radius:7px;padding:8px 11px;font-weight:800}.ramp-basics{background:#f5faf6;border:1px solid #dce8df;border-radius:9px;grid-template-columns:1fr 1.6fr;gap:10px;margin-top:13px;padding:12px;display:grid}.ramp-basics label{color:#64766c;text-transform:uppercase;letter-spacing:.4px;font-size:10px;font-weight:800}.ramp-basics input{color:#273a30;background:#fff;border:1px solid #cbdad0;border-radius:7px;width:100%;margin-top:5px;padding:9px;font-size:12px;font-weight:700}.ramp-timeline{border-radius:8px;gap:4px;min-height:48px;margin-top:10px;display:flex;overflow:hidden}.ramp-timeline>span{isolation:isolate;color:#194b37;text-align:center;background:#e4ece6;place-content:center;min-width:72px;display:grid;position:relative;overflow:hidden}.ramp-timeline>span:before{z-index:-1;height:var(--phase-fill);content:"";background:linear-gradient(#9ed5ad,#61ad7b);max-height:100%;position:absolute;inset:auto 0 0}.ramp-timeline b,.ramp-timeline small{display:block}.ramp-timeline b{font-size:13px}.ramp-timeline small{color:#486c5a;font-size:9px}.schedule-phase-list{gap:8px;margin-top:12px;display:grid}.schedule-phase-row{background:#fff;border:1px solid #dce6df;border-radius:9px;grid-template-columns:1.25fr .9fr .75fr .75fr .7fr 30px;align-items:end;gap:8px;padding:12px 10px 10px 34px;display:grid;position:relative}.schedule-phase-row label{color:#64766c;text-transform:uppercase;letter-spacing:.4px;font-size:10px;font-weight:800}.schedule-phase-row input{color:#273a30;border:1px solid #cfdcd4;border-radius:7px;width:100%;margin-top:5px;padding:9px;font-size:12px;font-weight:600}.schedule-phase-row input[readonly]{color:#718078;background:#f2f5f3}.phase-output{color:#285d43;text-align:right;align-self:center;padding-top:15px;font-size:12px;font-weight:850}.phase-output small{color:#7a8981;font-size:8px;font-weight:600;display:block}.phase-number{color:#36714d;background:#e3f1e7;border-radius:50%;place-items:center;width:18px;height:18px;font-size:10px;font-weight:900;display:grid;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.remove-phase{color:#a14e43;cursor:pointer;background:#f4e8e6;border:0;border-radius:7px;height:35px;font-size:18px}.remove-phase:disabled{opacity:.35;cursor:not-allowed}.schedule-editor>p{color:#78877f;margin-top:8px;font-size:10px}.editor-impact{background:#edf7f0;border-radius:9px;margin-top:16px;padding:13px}.editor-impact span,.editor-impact b,.editor-impact small{display:block}.editor-impact span{color:#6f8076;text-transform:uppercase;font-size:7px;font-weight:800}.editor-impact b{color:#2f714a;margin:5px 0 3px;font-size:17px}.editor-impact small{color:#708177;font-size:7px}.editor-actions{justify-content:flex-end;gap:9px;margin-top:17px;display:flex}.editor-fields select{color:#273a30;width:100%;font:inherit;text-transform:none;letter-spacing:0;background:#fff;border:1px solid #cfdcd4;border-radius:8px;outline:none;margin-top:6px;padding:10px 11px;font-size:10px;font-weight:600}.editor-fields select:focus{border-color:#55aa75;box-shadow:0 0 0 3px #e4f2e8}.machine-batch-key>button{min-width:0;color:inherit;text-align:left;cursor:pointer;background:#f8faf9;border:1px solid #e0e8e2;border-radius:7px;grid-template-columns:9px auto;align-items:center;column-gap:6px;padding:6px 8px;transition:opacity .18s,border-color .18s,box-shadow .18s,transform .18s;display:grid}.machine-batch-key>button:hover{border-color:#aebfb5;transform:translateY(-1px)}.machine-batch-key>button.active{border-color:var(--brand-mid);background:#fff;box-shadow:0 0 0 3px #2f706821}.machine-batch-key>button.dimmed{opacity:.38}.fixed-light{transition:opacity .18s,filter .18s}.fixed-light.highlighted{filter:drop-shadow(0 0 10px)brightness(1.7)}.fixed-light.highlighted rect{height:6px;transform:translateY(-1px)}.fixed-light.dimmed{opacity:.15;filter:none}.moving-shelf{transition:opacity .18s,filter .18s}.moving-shelf.batch-highlighted{filter:drop-shadow(0 0 4px #f4c84bbf)}.moving-shelf.batch-highlighted rect{stroke:#f4c84b;stroke-width:1.6px}.moving-shelf.batch-dimmed{opacity:.17}.editor-section-title{align-items:center;gap:9px;margin-top:18px;display:flex}.editor-section-title>span{background:var(--brand-pale);width:24px;height:24px;color:var(--brand);border-radius:50%;place-items:center;font-size:11px;font-weight:900;display:grid}.editor-section-title b,.editor-section-title small{display:block}.editor-section-title b{font-size:12px}.editor-section-title small{color:#7c8982}.editor-section-title+.editor-fields{margin-top:11px}.editor-section-title+.schedule-editor{border-top:0;margin-top:11px;padding-top:0}.primary-button:disabled{opacity:.45;cursor:not-allowed}.empty-production{color:#738178;text-align:center;padding:22px}.capacity-conflict{color:#8e453a;background:#fff1ee;border:1px solid #e3b9ae;border-radius:8px;justify-content:space-between;gap:12px;margin-top:12px;padding:11px 13px;display:flex}.capacity-conflict span{color:#986157}.selected-contract-plan{border:1px solid #d9e4dd;border-top:4px solid var(--contract-accent);background:#fff;border-radius:12px;margin:14px 0;overflow:hidden}.selected-contract-head{border-bottom:1px solid #e5ece7;justify-content:space-between;gap:18px;padding:18px;display:flex}.selected-contract-head h2{margin-top:3px}.selected-contract-head p{color:#74837b;margin-top:5px;font-size:11px}.selected-contract-head>div:last-child{align-items:flex-start;gap:8px;display:flex}.selected-contract-head .quiet-button{white-space:nowrap}.selected-contract-facts{border-bottom:1px solid #e5ece7;grid-template-columns:repeat(4,1fr);display:grid}.selected-contract-facts>div{border-bottom:1px solid #e9efeb;border-right:1px solid #e9efeb;min-height:66px;padding:12px 14px}.selected-contract-facts>div:nth-child(4n){border-right:0}.selected-contract-facts>div:nth-last-child(-n+4){border-bottom:0}.selected-contract-facts small,.selected-contract-facts b{display:block}.selected-contract-facts small{color:#7d8a83;font-size:10px}.selected-contract-facts b{margin-top:5px;font-size:12px;line-height:1.35}.selected-ramp-visual{background:linear-gradient(#fbfdfb,#f2f7f3);align-items:stretch;gap:5px;height:190px;padding:18px 18px 12px;display:flex}.selected-ramp-phase{isolation:isolate;background:#fffc;border:1px solid #dce6df;border-radius:9px;flex-direction:column;justify-content:flex-end;min-width:112px;padding:12px;display:flex;position:relative;overflow:hidden}.selected-ramp-phase>span{z-index:-1;background:var(--contract-accent);min-height:10px;position:absolute;inset:auto 0 0}@supports (color:color-mix(in lab, red, red)){.selected-ramp-phase>span{background:color-mix(in srgb,var(--contract-accent) 42%,#eef5f0)}}.selected-ramp-phase>span{transition:height .2s}.selected-ramp-phase b{color:#193e30;font-size:24px}.selected-ramp-phase small{color:#486357;margin-top:2px;font-weight:800}.selected-ramp-phase em{color:#718078;margin-top:9px;font-size:9px;font-style:normal}.selected-ramp-phase strong{color:#30483d;margin-top:2px;font-size:10px}.selected-ramp-phase.active{border-color:var(--contract-accent);box-shadow:0 0 0 3px var(--contract-accent)}@supports (color:color-mix(in lab, red, red)){.selected-ramp-phase.active{box-shadow:0 0 0 3px color-mix(in srgb,var(--contract-accent) 18%,transparent)}}.selected-ramp-phase.active:after{content:"ACTIVE";color:var(--contract-accent);letter-spacing:.7px;font-size:8px;font-weight:900;position:absolute;top:8px;right:8px}.selected-ramp-footer{color:#65766d;border-top:1px solid #e3ebe5;justify-content:space-between;gap:14px;padding:10px 18px;font-size:10px;display:flex}.selected-ramp-footer span{align-items:center;gap:7px;display:flex}.selected-ramp-footer i{background:var(--contract-accent);width:8px;height:8px;box-shadow:0 0 0 3px var(--contract-accent);border-radius:50%}@supports (color:color-mix(in lab, red, red)){.selected-ramp-footer i{box-shadow:0 0 0 3px color-mix(in srgb,var(--contract-accent) 18%,transparent)}}.simulation-control{background:linear-gradient(115deg,#f8fcf9,#edf6f0);border:1px solid #d8e6dc;border-radius:12px;grid-template-columns:1.3fr 190px 330px;align-items:end;gap:14px;margin-bottom:14px;padding:17px;display:grid}.simulation-heading h3{margin-top:3px}.simulation-heading p{color:#687a70;margin-top:5px;font-size:11px;line-height:1.45}.simulation-date{color:#65766d;text-transform:uppercase;letter-spacing:.6px;font-size:10px;font-weight:850}.simulation-date input{color:#263d31;width:100%;font:inherit;background:#fff;border:1px solid #c8d8ce;border-radius:8px;margin-top:6px;padding:10px;font-size:12px;font-weight:750}.simulation-control .shift-control{grid-column:3;align-self:end;margin:0}.daily-flow-totals{background:#ffffffd6;border:1px solid #dce8df;border-radius:9px;grid-column:1/-1;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:10px;padding:12px;display:grid}.daily-flow-totals>div{padding:4px 9px}.daily-flow-totals small,.daily-flow-totals b,.daily-flow-totals span{display:block}.daily-flow-totals small{color:#78877f;text-transform:uppercase;font-size:9px;font-weight:800}.daily-flow-totals b{margin:4px 0 2px;font-size:18px}.daily-flow-totals span{color:#75847c;font-size:10px}.daily-flow-totals>i{color:#91a097;font-style:normal}.daily-flow-totals .flow-in b{color:#267550}.daily-flow-totals .flow-out b{color:#9b5670}.daily-flow-list{grid-column:1/-1;gap:6px;display:grid}.daily-flow-list>div{background:#fff;border:1px solid #e1e9e3;border-radius:8px;grid-template-columns:9px 1fr 110px 110px;align-items:center;gap:9px;padding:8px 11px;display:grid}.daily-flow-list>div>i{border-radius:5px;width:9px;height:30px}.daily-flow-list span b,.daily-flow-list span small{display:block}.daily-flow-list span small{color:#7a8981}.daily-flow-list strong{color:#31463b;text-align:right;font-size:11px}.daily-flow-list strong em{color:#819087;margin-right:6px;font-size:8px;font-style:normal}.daily-flow-list>p{color:#708078;text-align:center;padding:9px;font-size:10px}.portfolio-forecast{margin-top:30px;scroll-margin-top:20px}.portfolio-forecast .capacity-outlook{margin-bottom:0}.storage-state{margin-top:10px;font-weight:650;display:inline-block}.storage-state.saved{color:#238b57}.storage-state.saving,.storage-state.loading{color:#6b7280}.storage-state.unavailable,.storage-state.error{color:#a66a22}body{font-size:14px}small{line-height:1.4;font-size:10px!important}.eyebrow{letter-spacing:1.25px;font-size:11px}.topbar-actions label,.strategy-control,.editor-fields label,.scenario-tabs button,.status-label,.missing-inputs>span,.missing-inputs i,.edit-record,.ramp-head,.table-head,.movement-clock button{font-size:10px}.pipeline-summary small,.pipeline-summary span,.pipeline-copy small,.pipeline-volume small,.confidence small,.detail-title p,.detail-grid small,.warning-metrics small,.demand-legend,.demand-column>b,.demand-column>small,.chart-disclaimer,.contract-facts small,.conversion-formula,.conversion-formula b,.ramp-table-wrap .chart-head>small,.ramp-row small,.flow-node small,.flow-node span,.role-pill,.live-pill,.contract-pill,.water-station span,.water-station small,.shelf-detail,.shelf-detail small,.greenbox-foot span,.climate-strip,.climate-strip b,.day-axis,.pending-note,.economics-flow span,.economics-flow small,.loss-control div,.editor-impact span,.editor-impact small{font-size:10px;line-height:1.4}.pipeline-copy b,.pipeline-volume b,.detail-grid b,.intake-placeholder b,.flow-node b,.table-row b,.movement-clock b{font-size:12px}.intake-placeholder small,.climate-capacity-warning p,.policy-copy p,.section-heading p,.assumption-card p,.editor-head p{font-size:11px;line-height:1.5}.pipeline-summary b{font-size:19px}.confidence b,.warning-metrics b,.shelf-detail>div:first-child b{font-size:14px}.ramp-row{min-height:48px;font-size:11px}.contract-facts b,.shelf-detail b{font-size:11px}.editor-fields input{font-size:12px}.notice b{font-size:13px}.notice small,.notice button{font-size:11px}.metric-topline{font-size:12px}.metric-card small{font-size:11px!important}.ramp-basics{grid-template-columns:1fr 1.4fr 1fr}@media (max-width:1120px){.metrics{grid-template-columns:1fr 1fr}.greenbox-grid,.lower-grid,.economics-grid,.contract-detail{grid-template-columns:1fr}.allocation-policy{grid-template-columns:1fr 1fr}.strategy-control{grid-column:auto}.shift-control{grid-column:1/-1}.pipeline-layout{grid-template-columns:1fr}.pipeline-summary{grid-template-columns:1fr 1fr}.pipeline-summary>div:nth-child(2){border-right:0}.pipeline-summary>div:nth-child(-n+2){border-bottom:1px solid #e7ede9}.climate-capacity-warning{grid-template-columns:34px 1fr}.warning-metrics{grid-column:1/-1}.simulation-control{grid-template-columns:1fr 190px}.simulation-control .shift-control{grid-column:1/-1}.selected-contract-facts{grid-template-columns:1fr 1fr}.selected-contract-facts>div:nth-child(2n){border-right:0}.selected-contract-facts>div:nth-last-child(-n+4){border-bottom:1px solid #e9efeb}.selected-contract-facts>div:nth-last-child(-n+2){border-bottom:0}}@media (max-width:760px){.app-shell{grid-template-columns:1fr}.sidebar{height:auto;padding:14px;position:static}.sidebar nav{grid-template-columns:repeat(3,1fr)}.sidebar-bottom{display:none}.brand-mark{padding-bottom:12px}.sidebar a{justify-content:center;padding:0 6px;font-size:10px}.content{padding:22px 14px 45px}.topbar,.section-heading{flex-direction:column;align-items:flex-start}.topbar-actions{width:100%}.topbar-actions label{flex:1}.topbar-actions select{width:100%;min-width:0}.metrics{grid-template-columns:1fr 1fr}.metric-card strong{font-size:19px}.pipeline-heading{align-items:stretch}.scenario-tabs{width:100%}.scenario-tabs button{flex:1}.pipeline-card{grid-template-columns:8px 1fr 72px 12px}.pipeline-volume{display:none}.demand-chart,.capacity-chart{gap:8px;padding-left:8px;padding-right:8px}.warning-metrics span{flex:1;min-width:0}.legend{flex-wrap:wrap}.machine-shell{height:210px}.contract-facts{grid-template-columns:1fr 1fr}.contract-facts div:nth-child(2n){border-right:0}.contract-facts div:nth-last-child(-n+4){border-bottom:1px solid #e8eee9}.contract-facts div:nth-last-child(-n+2){border-bottom:0}.ramp-table-wrap{overflow-x:auto}.ramp-table{min-width:580px}.conversion-formula{grid-template-columns:1fr auto}.conversion-formula i{display:none}.allocation-policy{grid-template-columns:1fr}.strategy-control,.shift-control{grid-column:1}.allocation-flow{grid-template-columns:1fr}.allocation-flow>i{text-align:center;transform:rotate(90deg)}.shelf-detail.open{grid-template-columns:1fr 1fr}.shelf-detail button{position:absolute;right:20px}.schedule-card{overflow-x:auto}.schedule-table{min-width:610px}.economics-flow{grid-template-columns:1fr}.economics-flow>i{text-align:center;transform:rotate(90deg)}.assumption-card{grid-template-columns:1fr}.assumption-card footer{grid-column:1}.simulation-control{grid-template-columns:1fr}.simulation-date,.simulation-control .shift-control{grid-column:1}.daily-flow-totals{grid-template-columns:1fr}.daily-flow-totals>i{text-align:center;transform:rotate(90deg)}.selected-contract-head{flex-direction:column}.selected-ramp-visual{overflow-x:auto}.selected-ramp-phase{flex:0 0 150px!important}}@media (max-width:460px){.metrics,.pipeline-summary{grid-template-columns:1fr}.pipeline-summary>div{border-bottom:1px solid #e7ede9;border-right:0}.pipeline-summary>div:last-child{border-bottom:0}.pipeline-card{grid-template-columns:8px 1fr 12px}.confidence{display:none}.detail-grid,.editor-fields{grid-template-columns:1fr}.wide-field{grid-column:1}.detail-grid>div:nth-child(odd){border-right:0}.detail-grid>div:nth-child(2n){padding-left:0}.climate-capacity-warning{grid-template-columns:1fr}.warning-icon{display:none}.warning-metrics{flex-direction:column;grid-column:1}.warning-metrics span{border-top:1px solid #eadfca;border-left:0}.warning-metrics span:first-child{border-top:0}.topbar-actions{flex-direction:column;align-items:stretch}.notice button{display:none}.sidebar nav{grid-template-columns:1fr 1fr}.editor-backdrop{padding:10px}.contract-editor{max-height:calc(100vh - 20px);padding:16px}.schedule-editor-head{flex-direction:column;align-items:flex-start}.ramp-basics{grid-template-columns:1fr}.ramp-timeline{overflow-x:auto}.schedule-phase-row{grid-template-columns:1fr;padding:38px 10px 10px}.phase-output{text-align:left;padding-top:0}.phase-number{top:10px;left:10px;transform:none}.remove-phase{width:30px;height:26px;position:absolute;top:8px;right:8px}.selected-contract-facts{grid-template-columns:1fr}.selected-contract-facts>div{border-bottom:1px solid #e9efeb!important;border-right:0!important}.selected-contract-facts>div:last-child{border-bottom:0!important}.selected-ramp-footer{flex-direction:column}.daily-flow-list>div{grid-template-columns:8px 1fr}.daily-flow-list strong{text-align:left;grid-column:2}}@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}
