:root{--paper:#f8f6ef;--panel:#fffef9;--ink:#253c33;--muted:#66746a;--green:#264f3e;--line:#dce1d6;--soft:#edf0e6;--amber:#8d571a;--amber-bg:#fff4dd;--red:#a14035;--red-bg:#fff0ec;font-family:Arial,'Microsoft YaHei',sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.52}a{color:inherit;text-underline-offset:4px}a:hover{color:#7a581e}:focus-visible{outline:3px solid #b98938;outline-offset:4px}h1,h2,h3,p{margin-top:0}h2{font-size:23px;letter-spacing:-.5px;margin-bottom:10px}h3{font-size:18px;line-height:1.5}p{line-height:1.8}input,select,textarea{width:100%;min-height:44px;border:1px solid #cbd5c9;border-radius:7px;padding:10px 11px;background:#fff;color:var(--ink)}textarea{resize:vertical}label{display:block;font-size:12px;color:var(--muted)}label input,label select{margin-top:8px}.skip{position:absolute;left:20px;top:-60px;background:#fff;padding:12px;z-index:100}.skip:focus{top:10px}[hidden]{display:none!important}.topbar{max-width:1300px;margin:auto;min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 40px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:17px;font-weight:700;letter-spacing:-.5px}.brand small{display:block;font-size:10px;font-weight:400;letter-spacing:1px;color:var(--muted);margin-top:5px}.topbar nav{display:flex;align-items:center;gap:24px;font-size:12px}.topbar nav a{text-decoration:none}.workspace{max-width:1220px;margin:auto;padding:0 40px}.welcome{display:flex;justify-content:space-between;align-items:center;gap:35px;padding:55px 0 28px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:var(--muted);margin-bottom:18px}h1{font-family:Georgia,'Microsoft YaHei',serif;font-size:42px;letter-spacing:-1.5px;line-height:1.35;font-weight:400;margin-bottom:14px}h1 em{font-style:normal;color:#68806a}.welcome-copy{color:var(--muted);font-size:13px;max-width:600px;margin:0}.local-badge{display:flex;gap:10px;align-items:center;padding:14px 16px;border:1px solid var(--line);border-radius:9px;background:var(--panel);flex-shrink:0}.local-badge strong{display:block;font-size:12px}.local-badge small{display:block;max-width:180px;font-size:10px;color:var(--muted);line-height:1.6;margin-top:4px}.local-dot{width:8px;height:8px;background:#78966d;border-radius:50%}.demo-notice{display:flex;gap:12px;border:1px solid #d8dfd0;background:#edf1e7;border-radius:8px;padding:14px 18px;color:#566a53}.demo-notice>span{font-size:18px;line-height:1.6}.demo-notice p{font-size:11px;line-height:1.8;margin:0}.workflow{list-style:none;padding:26px 0 25px;display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:0;color:var(--muted);font-size:11px}.workflow li{display:flex;align-items:center;gap:9px;position:relative}.workflow li>span:not(.bi){display:inline-flex;align-items:center;justify-content:center;background:#e7ebdf;border-radius:50%;width:27px;height:27px;flex-shrink:0;font-size:10px}.workflow li.active{color:var(--green);font-weight:700}.workflow li.active>span:not(.bi){background:var(--green);color:#fff}.panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:28px;margin-bottom:22px;box-shadow:0 8px 25px #263e3303}.loading-panel{display:flex;align-items:center;justify-content:center;gap:12px;font-size:13px;min-height:180px}.spinner{display:inline-block;width:16px;height:16px;border:2px solid #c8d2c1;border-right-color:var(--green);border-radius:50%;animation:spin .8s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}.section-top{display:flex;justify-content:space-between;align-items:start;gap:20px;margin-bottom:24px}.section-kicker{font-size:10px;letter-spacing:1.2px;color:#829078;font-weight:700;margin-bottom:11px}.section-description{font-size:12px;line-height:1.8;color:var(--muted);margin:0}.soft-badge{display:inline-block;white-space:nowrap;border:1px solid #d5dfcc;background:#f2f5eb;border-radius:30px;padding:7px 11px;font-size:10px;color:#617359}.context-controls{display:grid;grid-template-columns:1.05fr 1.15fr 1.15fr auto;gap:15px;align-items:end;margin-bottom:24px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 17px;min-height:44px;background:var(--green);border:1px solid var(--green);border-radius:7px;color:#fff;font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap}.button:hover:not(:disabled){background:#3a634e;border-color:#3a634e}.button.secondary{background:#f0f3e9;border-color:#d2dcc9;color:var(--green)}.button.secondary:hover:not(:disabled){background:#e7eddf}.button.quiet{color:var(--muted);background:transparent;border-color:var(--line)}.button.quiet:hover:not(:disabled){color:var(--green);background:#f3f5ef;border-color:#bacab2}.button.danger{background:#a14035;border-color:#a14035}.text-button{border:0;background:transparent;padding:4px 0;color:var(--green);font-size:12px;text-decoration:underline;text-underline-offset:4px}.context-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px}.context-card{border-radius:9px;padding:20px;background:#f3f5ee;border:1px solid #e5eadf}.card-label{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;color:var(--muted);margin-bottom:16px}.source-badge{font-size:9px;border:1px solid #d3ddcc;padding:4px 7px;border-radius:4px;line-height:1.4}.context-card h3{margin-bottom:8px}.context-card p{font-size:12px;color:#60705c;margin-bottom:8px}.context-card .small-copy{font-size:10px;line-height:1.7;margin-bottom:0}.small-copy{font-size:11px;color:var(--muted);line-height:1.7}.inline-progress{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--muted);margin-bottom:18px}.warning-notice,.error-notice{padding:13px 16px;border-radius:7px;font-size:12px;line-height:1.8;margin-top:17px;background:var(--amber-bg);border:1px solid #e8d4a5;color:var(--amber)}.error-notice{background:var(--red-bg);color:var(--red);border-color:#ecc8be;margin-bottom:22px}.forecast-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:22px}.forecast-number{display:flex;align-items:baseline;gap:11px;margin:12px 0 6px}.forecast-number strong{font-family:Georgia,serif;font-weight:400;font-size:70px;letter-spacing:-2px;line-height:1.05}.forecast-number span{font-size:16px;color:var(--muted)}.forecast-comparison{display:flex;justify-content:space-between;gap:12px;padding-top:18px;margin-top:22px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}.forecast-comparison strong{white-space:nowrap;font-size:12px;color:var(--ink)}.impact-row{display:flex;align-items:center;gap:12px;font-size:11px;color:var(--muted);margin-top:14px}.impact-row>span:first-child{font-size:14px;font-weight:700;color:#536f4b;background:#edf3e5;padding:6px 10px;border-radius:5px}.model-footnote{font-size:10px;color:#85907d;line-height:1.8;margin-top:18px;margin-bottom:0}.explanation-panel h2{font-size:21px}.impact-items{margin-top:22px}.impact-item{display:grid;grid-template-columns:28px 1fr auto;gap:10px;padding:13px 0;border-bottom:1px solid #e5eadd}.impact-item:last-child{border-bottom:0}.impact-icon{font-size:20px;color:#899b7f}.impact-item strong{font-size:12px;line-height:1.7}.impact-item p{font-size:11px;color:var(--muted);line-height:1.7;margin:3px 0 0}.impact-item .impact-value{font-size:12px;color:#677f5b;white-space:nowrap;align-self:center}.model-details{border-top:1px solid var(--line);margin-top:14px;padding-top:15px;font-size:11px;color:var(--muted)}summary{cursor:pointer;line-height:1.8}.model-details p{font-size:11px;margin:13px 0 0;overflow-wrap:anywhere}.inventory-toggle{display:flex;align-items:center;gap:15px;padding:12px 0 20px;border-bottom:1px solid var(--line);margin-bottom:4px}.inventory-toggle span{font-size:10px;color:var(--muted)}.inventory-panel{padding:18px;background:#f0f3e9;border-radius:8px;margin:14px 0 20px}.inventory-fields{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:18px}.shopping-line{display:grid;grid-template-columns:1fr 1.15fr 1.1fr;gap:20px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line)}.ingredient-heading{display:flex;align-items:center;gap:10px}.ingredient-icon{font-size:19px;background:#f0f2e9;border:1px solid #e5e9de;border-radius:7px;padding:10px;line-height:1;flex-shrink:0}.ingredient-heading h3{font-size:15px;margin-bottom:4px}.ingredient-heading p{font-size:10px;color:var(--muted);margin:0}.stock-equation{font-size:11px;color:var(--muted);line-height:1.9}.stock-equation strong{font-weight:500;color:var(--ink)}.suggestion-label{font-size:10px;color:var(--muted);margin-bottom:8px}.quantity-area{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.stepper{display:flex;align-items:center;border:1px solid #bdcdb5;border-radius:7px;overflow:hidden;background:#fff}.stepper button{display:inline-flex;align-items:center;justify-content:center;width:37px;min-height:42px;flex-shrink:0;border:0;background:#f0f4e9;color:var(--green);font-size:18px}.stepper button:hover:not(:disabled){background:#e3ecd9}.stepper input{width:61px;min-height:42px;padding:6px;border:0;border-left:1px solid #e2e8da;border-right:1px solid #e2e8da;border-radius:0;font-size:16px;text-align:center;appearance:textfield;-moz-appearance:textfield}.stepper input::-webkit-inner-spin-button,.stepper input::-webkit-outer-spin-button{appearance:none;margin:0}.pack-unit{font-size:12px}.line-shortage{text-align:right;font-size:10px;margin:8px 0 0;color:#6c825e}.line-shortage.is-short{color:var(--amber)}.line-shortage.is-invalid{color:var(--red)}.shortage-summary{font-size:11px;color:#6c825e;padding:17px 0;line-height:1.8}.shortage-summary.has-shortage{color:var(--amber)}.approval-area{background:#f4f5ef;border:1px solid #e4e8dd;border-radius:9px;padding:20px;margin-top:3px}.approval-area>label{font-size:11px;color:var(--ink);margin-bottom:8px}.approval-area>label span{font-size:10px;color:var(--muted);margin-left:7px}.approval-actions{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:19px}.approval-actions strong{font-size:12px}.approval-actions p{font-size:10px;color:var(--muted);margin:6px 0 0}.action-buttons{display:flex;gap:10px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;text-align:center;min-height:165px;color:var(--muted);font-size:12px;padding:20px}.empty-state strong{font-weight:500}.empty-state p{font-size:11px;margin:0}.empty-mark{font-size:30px;color:#96a389;margin-bottom:3px}.order-meta{font-size:11px;color:var(--muted);padding:12px 0 20px}.supplier-draft{border:1px solid var(--line);border-radius:8px;padding:17px 20px;margin-bottom:12px}.supplier-draft summary{display:flex;justify-content:space-between;align-items:center;gap:14px;font-size:13px;font-weight:700;list-style:none}.supplier-draft summary:after{content:'+';font-size:21px;font-weight:400;color:#87977c}.supplier-draft[open] summary:after{content:'−'}.supplier-draft summary small{display:block;font-size:10px;font-weight:400;color:var(--muted);margin-top:5px}.draft-body{margin-top:18px;border-top:1px solid var(--line);padding-top:15px}.draft-body dl{display:grid;grid-template-columns:45px 1fr;gap:8px;font-size:11px;line-height:1.7;color:var(--muted)}.draft-body dt{font-weight:500}.draft-body dd{margin:0;color:var(--ink);overflow-wrap:anywhere}.draft-body pre{white-space:pre-wrap;overflow-wrap:anywhere;font:11px/1.9 Arial,'Microsoft YaHei',sans-serif;background:#f4f6ef;border:1px solid #e2e8d9;border-radius:6px;padding:15px;margin:16px 0;color:#52654e}.draft-downloads{display:flex;gap:10px;flex-wrap:wrap}.draft-downloads button{font-size:11px;min-height:38px;padding:9px 14px}.draft-disclaimer{font-size:10px;color:#8a947e;margin:13px 0 0}.audit-log{list-style:none;margin:0;padding:0}.audit-log li{display:grid;grid-template-columns:112px 1fr;gap:16px;padding:12px 0;border-bottom:1px solid #e7ebdf;font-size:11px;line-height:1.8}.audit-log li:last-child{border-bottom:0}.audit-log time{font-size:10px;color:#84917b}.audit-log strong{font-size:11px;font-weight:500}.audit-log p{font-size:10px;color:var(--muted);margin:3px 0 0}.demo-footer{padding:20px 0 35px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:10px;color:#839079}.demo-footer p{margin:0}.demo-footer div{display:flex;gap:20px}dialog{max-width:540px;width:calc(100% - 32px);border:1px solid var(--line);padding:0;border-radius:13px;color:var(--ink);background:var(--panel);box-shadow:0 25px 100px #12271d33}dialog::backdrop{background:#20362ccc;backdrop-filter:blur(3px)}.dialog-body{padding:30px}.dialog-body>p{font-size:12px;color:var(--muted);line-height:1.9}.dialog-body h2{font-size:23px}.review-lines{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 0;margin-top:20px}.review-line{display:flex;justify-content:space-between;gap:20px;font-size:12px;padding:9px 0}.review-line span:last-child{white-space:nowrap}.check-label{display:flex;gap:10px;align-items:start;font-size:11px;color:var(--ink);line-height:1.8;margin-top:20px}.check-label input{width:17px;min-height:17px;flex-shrink:0;margin:2px 0 0;accent-color:var(--green)}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:27px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);max-width:calc(100% - 32px);width:max-content;z-index:50;background:#264f3e;color:#fff;padding:13px 20px;border-radius:8px;box-shadow:0 10px 35px #1d32252b;font-size:12px;line-height:1.7}.toast.error{background:#944032}@media(max-width:950px){.topbar,.workspace{padding-left:25px;padding-right:25px}.welcome{gap:20px}h1{font-size:34px}.context-controls{grid-template-columns:1fr 1fr}.context-controls .button{align-self:end}.shopping-line{grid-template-columns:1fr 1fr;gap:16px}.quantity-column{grid-column:2;grid-row:1/3;align-self:center}.stock-equation{grid-column:1}.forecast-grid{grid-template-columns:1fr 1fr}.panel{padding:23px}.inventory-fields{grid-template-columns:1fr 1fr}.approval-actions{align-items:start;flex-direction:column}.action-buttons{align-self:flex-end}.local-badge{padding:12px}.local-badge small{max-width:140px}.workflow{gap:8px;font-size:10px}.workflow li{gap:7px}}@media(max-width:650px){.topbar{padding:18px 18px;align-items:start;flex-direction:column;gap:17px}.topbar nav{gap:22px}.brand{font-size:16px}.workspace{padding:0 16px}.welcome{padding:32px 0 20px;display:block}.eyebrow{font-size:8px;letter-spacing:1.7px;margin-bottom:13px}h1{font-size:31px;line-height:1.5;margin-bottom:10px}h1 em{display:block}.welcome-copy{font-size:12px;line-height:1.9}.local-badge{display:inline-flex;margin-top:17px;padding:9px 12px;gap:8px}.local-badge strong{font-size:10px}.local-badge small{max-width:none;font-size:9px;margin:2px 0 0}.demo-notice{padding:12px}.demo-notice p{font-size:10px}.workflow{grid-template-columns:1fr 1fr;gap:13px 7px;padding:22px 2px}.workflow li>span:not(.bi){width:24px;height:24px}.panel{padding:20px 17px;border-radius:10px;margin-bottom:17px}.section-top{gap:12px;margin-bottom:19px}.section-kicker{font-size:9px;letter-spacing:.7px}h2{font-size:20px;line-height:1.55}.soft-badge{font-size:9px;padding:6px 8px}.context-controls{gap:15px 12px;margin-bottom:20px}.context-controls label{font-size:11px;min-width:0}.context-controls input,.context-controls select{font-size:11px;padding:10px 8px}.context-controls .button{font-size:11px;padding:10px 8px}.context-cards{grid-template-columns:1fr;gap:12px}.context-card{padding:17px}.context-card h3{font-size:17px}.context-card p{font-size:11px}.card-label{margin-bottom:13px}.forecast-grid{display:block}.forecast-number strong{font-size:65px}.forecast-comparison{font-size:10px}.explanation-panel h2{font-size:19px}.impact-item{padding:12px 0;grid-template-columns:23px 1fr auto;gap:7px}.impact-item strong{font-size:11px}.impact-item p{font-size:10px}.impact-item .impact-value{font-size:10px}.shopping-panel .section-top{display:block}.shopping-panel .section-top>.button{margin-top:17px;font-size:11px;min-height:39px;padding:9px 13px}.inventory-toggle{align-items:start;gap:9px;flex-direction:column}.inventory-toggle .text-button{font-size:11px}.inventory-toggle span{font-size:9px;line-height:1.6}.shopping-line{padding:21px 0;grid-template-columns:1fr 1fr;gap:14px 8px}.ingredient-icon{padding:8px;font-size:16px}.ingredient-heading{gap:8px}.ingredient-heading h3{font-size:13px}.ingredient-heading p{font-size:9px}.stock-equation{font-size:10px;line-height:1.9}.suggestion-label{font-size:9px;text-align:right}.quantity-area{gap:6px}.stepper button{width:31px;min-height:40px}.stepper input{width:46px;min-height:40px;font-size:15px}.pack-unit{font-size:10px}.line-shortage{font-size:9px;line-height:1.7}.approval-area{padding:16px 12px}.approval-area>label{font-size:10px}.approval-area>label span{display:block;margin:5px 0 0;font-size:9px}.approval-actions strong{font-size:11px}.action-buttons{align-self:stretch;display:grid;grid-template-columns:1fr 1.4fr;width:100%;gap:8px}.action-buttons .button{font-size:10px;padding:11px 8px}.supplier-draft{padding:15px 13px}.supplier-draft summary{font-size:12px}.supplier-draft summary small{font-size:9px}.draft-body pre{padding:12px;font-size:10px}.draft-body dl{font-size:10px;grid-template-columns:38px 1fr}.audit-panel .section-top{display:block}.audit-panel .section-top>.small-copy{font-size:9px}.audit-log li{grid-template-columns:76px 1fr;gap:10px}.audit-log time{font-size:9px}.audit-log strong{font-size:10px}.audit-log p{font-size:9px}.demo-footer{font-size:9px;align-items:start;flex-direction:column;gap:15px;line-height:1.8}.demo-footer div{gap:20px}.dialog-body{padding:25px 19px}.dialog-body h2{font-size:20px}.dialog-actions .button{font-size:10px;padding:11px 12px}.check-label{font-size:10px}.inventory-panel{padding:15px 12px}.inventory-fields{gap:12px}.inventory-fields label{font-size:10px}.inventory-fields input{font-size:12px}.model-footnote{font-size:9px}.warning-notice{font-size:10px}.empty-state{font-size:11px;padding:20px 0}.empty-state p{font-size:10px}}@media(prefers-reduced-motion:reduce){.spinner{animation:none}*{scroll-behavior:auto!important}}
.constraint-note{margin-top:6px;font-size:10px;line-height:1.8;color:#66746a}.constraint-note.is-over-limit{color:#8d571a;max-width:290px}@media(max-width:650px){.constraint-note{font-size:9px;line-height:1.9}}

.wa-dialog{max-width:650px}.wa-dialog p,.wa-dialog label,.wa-dialog button,.wa-dialog input,.wa-dialog pre{font-size:14px;line-height:1.85}.wa-dialog h2{font-size:24px;line-height:1.4}.wa-dialog label{display:block;margin:13px 0 6px}.wa-dialog label input:not([type=checkbox]){display:block;width:100%;margin-top:6px;min-height:46px;font-size:15px}.wa-dialog label.check-label{display:flex;gap:10px;align-items:start}.wa-dialog .check-label input{width:18px;min-height:18px;flex-shrink:0;margin-top:4px}.wa-config-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 16px}.wa-dialog pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f3f5ed;border:1px solid var(--line);padding:15px;border-radius:7px}.wa-preview{border-top:1px solid var(--line);margin-top:20px;padding-top:10px}.wa-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.wa-result{overflow-wrap:anywhere;padding:13px;background:#edf1e7;border-radius:7px}.wa-settings-entry{border-top:1px solid #dce1d6;margin-top:22px;padding-top:16px}.wa-settings-entry button{font-size:14px;white-space:normal}.wa-dialog .button{white-space:normal;font-size:14px}@media(max-width:650px){.wa-config-grid{grid-template-columns:1fr}.wa-dialog .dialog-actions{flex-direction:column-reverse}.wa-dialog .dialog-actions button,.wa-actions button{width:100%}.wa-dialog h2{font-size:22px}.wa-dialog .dialog-body{padding:24px 19px}}
