/* BAKE v3.1 · 인수인계 + 발주 기록 */
#manualRoot{display:none}
body.tool-manual #manualRoot{display:block}
body.tool-manual main.app > :not(.mast):not(#manualRoot){display:none!important}
body.tool-manual #dataTools{display:none}

/* ── 발주 기록 ── */
.ord-meta-acts{display:flex;gap:2px;flex:none}
.ord-recent{color:#3d6f9c;font-weight:750}
.ord-recent.today{color:#b0532f}
.hist-search{margin:2px 0 10px}
.hist-list{min-height:200px}
.hist-day{font-size:15px;margin:16px 2px 7px;letter-spacing:-.03em}
.hist-day:first-child{margin-top:4px}
.hist-entry{background:#fff;border:1px solid #e6ebe3;border-radius:14px;padding:10px 12px;margin-bottom:8px}
.hist-entry header{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px;color:#7d8a7e;font-weight:750;margin-bottom:4px}
.hist-acts{display:flex;gap:4px}
.hist-acts button{border:1px solid #dfe6dd;background:#f6f8f5;border-radius:9px;min-height:34px;padding:0 10px;font-size:12px;font-weight:800;color:#4c6651}
.hist-acts button.armed{background:#b5482f;color:#fff;border-color:#b5482f}
.hist-v{display:grid;grid-template-columns:48px 1fr;gap:6px;padding:5px 0;border-top:1px solid #f0f2ee;font-size:14px;line-height:1.55}
.hist-v:first-of-type{border-top:0}
.hist-v b{font-size:12px;color:#5c705f;padding-top:2px}
.hist-v span{display:flex;flex-wrap:wrap;gap:2px 10px}
.hist-v i{font-style:normal}
.hist-v i.hit{background:#fff1b8;border-radius:5px;padding:0 4px;font-weight:800}

/* ── 상단 ── */
.mn-root{padding-bottom:calc(40px + env(safe-area-inset-bottom))}
.mn-top{position:sticky;top:0;z-index:20;background:#f7f7f3;margin:0 -19px;padding:4px 19px 8px}
.mn-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:#edf1ea;padding:5px;border-radius:15px;margin-bottom:9px}
.mn-tabs button{min-height:44px;border:0;background:transparent;border-radius:11px;font-size:15px;font-weight:850;color:#627063}
.mn-tabs button.on{background:#fff;color:#284a33;box-shadow:0 1px 6px #27332918}
.mn-toc{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin-top:9px}
.mn-toc::-webkit-scrollbar{display:none}
.mn-toc button{flex:none;min-height:36px;padding:0 12px;border-radius:18px;border:1px solid #dce5da;background:#fff;color:#5b6b5c;font-size:13px;font-weight:780;white-space:nowrap}

/* ── 시야기 본문 ── */
.mn-body{font-size:15px;line-height:1.6;color:#253428}
.mn-body p{margin:6px 2px}
.mn-chapter{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:21px;letter-spacing:-.05em;margin:28px 2px 10px;padding-top:4px;scroll-margin-top:150px}
.mn-chapter:first-child{margin-top:8px}
.mn-card{background:#fff;border:1px solid #e6ebe3;border-radius:16px;padding:13px 14px 12px;margin:10px 0;scroll-margin-top:150px}
.mn-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}
.mn-card-head h3{margin:0;font-size:17px;letter-spacing:-.04em}
.mn-editbtn{flex:none;border:1px solid #d5e2d4;background:#f3f7f2;color:#335a3e;border-radius:9px;min-height:34px;padding:0 11px;font-size:12px;font-weight:850}
.mn-result{font-size:12px;color:#7d8a7e;margin:2px 3px 4px!important}
.mn-alert{background:#fff1e4;color:#7e4220;border-radius:12px;padding:10px 12px;margin:8px 0;font-size:14px;line-height:1.55}
.mn-alert .mn-alert-t{display:block;font-size:13px;color:#a2431c;margin-bottom:1px}
.mn-tools{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin:4px 0 8px}
.mn-tools span{font-size:11px;font-weight:850;color:#7d8a7e;margin-right:2px}
.mn-tools i{font-style:normal;font-size:12px;font-weight:780;background:#eef3ec;color:#3f5f46;border-radius:8px;padding:4px 9px}
.mn-flow{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin:6px 0 10px;padding:9px;background:#f4f7f2;border-radius:12px}
.mn-flow span{display:inline-flex;align-items:center;gap:5px;background:#fff;border:1px solid #dbe5d8;border-radius:9px;padding:4px 9px 4px 5px;font-size:13px;font-weight:780;color:#2d4733}
.mn-flow span em{font-style:normal;width:18px;height:18px;border-radius:50%;background:#2f4c39;color:#fff;font-size:10px;font-weight:850;display:grid;place-items:center}
.mn-flow b{color:#9aab9b;font-size:14px}
.mn-steps{margin:4px 0 4px;padding:0;list-style:none;counter-reset:s}
.mn-steps li{counter-increment:s;position:relative;padding:5px 0 5px 32px;border-top:1px solid #f0f2ee}
.mn-steps li:first-child{border-top:0}
.mn-steps li:before{content:counter(s);position:absolute;left:2px;top:7px;width:21px;height:21px;border-radius:7px;background:#eef3ec;color:#3b5c42;font-size:12px;font-weight:850;display:grid;place-items:center}
.mn-list{margin:4px 0;padding-left:20px}
.mn-list li{margin:3px 0}
.mn-note{font-size:13px!important;color:#7a877b}
.mn-time{color:#2f6a43;font-variant-numeric:tabular-nums}
.mn-tablewrap{overflow-x:auto;margin:8px 0}
.mn-table{width:100%;border-collapse:collapse;font-size:13px;background:#fff;border-radius:12px;overflow:hidden;border:1px solid #e6ebe3}
.mn-table th{background:#eef3ec;text-align:left;padding:8px 10px;font-size:12px;color:#4d6551;white-space:nowrap}
.mn-table td{padding:8px 10px;border-top:1px solid #eef1ec;vertical-align:top}
.mn-check{border:1px solid #dfe8dc;border-radius:13px;overflow:hidden;margin:6px 0}
.mn-check-head{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:800;color:#5e7a64;background:#f3f7f2;padding:6px 12px;min-height:38px}
.mn-check-head button{border:0;background:none;color:#8a5a3c;font-weight:850;font-size:12px;min-height:30px}
.mn-check-item{display:flex;align-items:center;gap:11px;width:100%;min-height:50px;border:0;border-top:1px solid #eef1ec;background:#fff;text-align:left;padding:9px 12px;font-size:15px;color:#253428}
.mn-check-item .box{flex:none;width:24px;height:24px;border-radius:7px;border:2px solid #cad6cc;color:transparent;display:grid;place-items:center;font-size:14px;font-weight:900}
.mn-check-item.on{background:#f4f8f3;color:#88978a;text-decoration:line-through}
.mn-check-item.on .box{background:#55765b;border-color:#55765b;color:#fff}
.mn-editbar{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0}
.mn-text{min-height:46dvh;font-size:14px;line-height:1.6;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.mn-rules{margin:8px 0;font-size:13px;color:#5d6d5f}
.mn-rules summary{cursor:pointer;font-weight:800;min-height:36px;display:flex;align-items:center}
.mn-rules div{line-height:1.9;background:#fff;border:1px solid #e6ebe3;border-radius:11px;padding:9px 12px}
.mn-rules code{background:#eef3ec;border-radius:5px;padding:1px 5px;font-size:12px}

/* ── 오븐 ── */
.ov-bar{display:flex;gap:8px;align-items:stretch;margin:2px 0 10px}
.ov-preset{flex:1;min-width:0;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;text-align:left;border:1px solid #dce5da;background:#fff;border-radius:14px;padding:7px 12px;min-height:52px;color:#223324}
.ov-preset small{font-size:11px;color:#8a978b;font-weight:750}
.ov-preset b{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ov-preset span{grid-row:1/3;grid-column:2;align-self:center;color:#6d806f}
.ov-seg{display:flex;background:#edf1ea;border-radius:14px;padding:4px;gap:3px}
.ov-seg button{border:0;background:transparent;border-radius:10px;padding:0 11px;font-size:13px;font-weight:820;color:#627063;white-space:nowrap}
.ov-seg button.on{background:#fff;color:#284a33;box-shadow:0 1px 5px #27332915}
.ov-legend{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:11px;color:#7d8a7e;font-weight:700;margin:0 2px 6px;align-items:center}
.ov-legend span{display:inline-flex;align-items:center;gap:4px}
.ov-legend .ov-fire{transform:scale(.8);transform-origin:left center}
.ov-dot{display:inline-block;width:8px;height:8px;background:#b5602a;transform:rotate(45deg)}
.ov-tip{font-size:12px;color:#7d8a7e;margin:4px 2px 2px}
.ov-tip.edit{color:#40664b;font-weight:750;background:#eaf2e8;border-radius:10px;padding:8px 10px}
.ov-linkbtn{border:0;background:none;color:#2f6a43;font-weight:850;font-size:12px;text-decoration:underline;padding:4px;min-height:32px}
.ov-floor{margin:16px 0 4px}
.ov-floor h3{display:flex;align-items:baseline;gap:8px;font-size:22px;letter-spacing:-.05em;margin:0 2px 7px}
.ov-floor h3 small{font-size:12px;color:#8a978b;letter-spacing:0}
.ov-list{min-height:56px;border-radius:14px;transition:background .15s}
body.ov-dragging .ov-list{background:#eef3ec;outline:1.5px dashed #b9cbb9;outline-offset:2px}
.ov-empty{font-size:13px;color:#9aa69a;text-align:center;padding:18px 0;margin:0}
.ov-slot{position:relative;display:flex;gap:10px;align-items:stretch;background:#fff;border:1px solid #e3e9e1;border-radius:15px;padding:11px 12px 10px 10px;margin-bottom:7px;cursor:pointer;-webkit-user-select:none;user-select:none}
.ov-slot.sync{border-color:#c9b4e4;box-shadow:inset 3px 0 0 #7c4dbb}
.ov-slot.done{background:#f3f6f2;opacity:.62}
.ov-slot.done .ov-title b{text-decoration:line-through}
.ov-no{flex:none;width:26px;height:26px;border-radius:9px;background:#eef3ec;color:#3b5c42;font-size:13px;font-weight:880;display:grid;place-items:center;margin-top:1px}
.ov-slot.done .ov-no{background:#55765b;color:#fff}
.ov-handle{flex:none;width:34px;margin:-11px 0 -10px -10px;display:grid;place-items:center;cursor:grab;touch-action:none;color:#8aa08e;border-right:1px solid #eef1ec;border-radius:15px 0 0 15px;background:#f7f9f6}
.ov-handle svg{width:12px;height:20px;fill:currentColor}
.ov-main{flex:1;min-width:0}
.ov-title{display:flex;align-items:center;gap:7px;margin-bottom:6px}
.ov-title b{font-size:17px;letter-spacing:-.04em;min-width:0;overflow-wrap:anywhere}
.ov-sync{font-size:11px;font-weight:850;color:#6b3fae;background:#f1eafb;border-radius:7px;padding:2px 7px;white-space:nowrap}
.ov-steam{margin-left:auto;font-size:14px;font-weight:850;color:#5b6b5c;font-variant-numeric:tabular-nums}
.ov-temps{display:flex;align-items:flex-end;gap:10px}
.ov-t{display:flex;flex-direction:column;gap:3px}
.ov-slash{color:#a3ada2;font-size:18px;padding-bottom:1px}
.ov-num{font-size:19px;font-weight:850;font-variant-numeric:tabular-nums;letter-spacing:-.02em;display:flex;align-items:baseline;gap:2px}
.ov-num em,.ov-legend em{font-style:normal;font-weight:900}
.up{color:#c8352a}.down{color:#2a6fc0}
.ov-fire{display:inline-flex;gap:2px}
.ov-fire i{width:5px;height:12px;border-radius:1px;background:#c9cdc8}
.ov-fire i.on{background:#d22d2d}
.ov-line{display:flex;align-items:center;gap:10px;margin-top:9px}
.ov-track{position:relative;flex:1;height:3px;background:#2a332c;border-radius:2px;margin:12px 0 2px}
.ov-track:before,.ov-track:after{content:"";position:absolute;top:-4px;width:2px;height:11px;background:#2a332c}
.ov-track:before{left:0}.ov-track:after{right:0}
.ov-slot.sync .ov-track,.ov-slot.sync .ov-track:before,.ov-slot.sync .ov-track:after{background:#7c4dbb}
.ov-vent{position:absolute;top:-4px;width:10px;height:10px;margin-left:-5px;background:#b5602a;transform:rotate(45deg)}
.ov-vent em{position:absolute;transform:rotate(-45deg);left:-5px;top:-20px;width:20px;text-align:center;font-style:normal;font-size:12px;font-weight:850;color:#b5602a}
.ov-min{flex:none;font-size:15px;font-weight:850;font-variant-numeric:tabular-nums;min-width:58px;text-align:right}
.ov-aft{display:flex;align-items:center;gap:8px;margin-top:7px;font-size:11px;font-weight:800;color:#b5602a}
.ov-note{font-size:12px!important;color:#6f7d70;margin:7px 0 0!important;line-height:1.45}
.ov-add{width:100%;min-height:46px;border:1.5px dashed #c5d4c4;border-radius:13px;background:transparent;color:#4a6d53;font-weight:850;font-size:13px;margin-top:2px}
.ov-notes{font-size:12px;line-height:1.7;color:#7a877b;border-top:1px solid #e5eae2;margin-top:18px;padding-top:10px}
.ov-ph{border:2px dashed #8fb099;border-radius:15px;background:#e7f0e5;margin-bottom:7px}
.ov-hidden{display:none!important}
.ov-ghost{position:fixed;z-index:300;margin:0;pointer-events:none;box-shadow:0 14px 34px #13251a40;transform:rotate(-1.2deg) scale(1.02);opacity:.96}
body.ov-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}
/* 시트 */
.ov-check{display:flex!important;align-items:center;gap:9px;font-size:14px!important;min-height:40px}
.ov-check input{width:20px;height:20px;accent-color:#2f4c39}
.ord-form-row.three{grid-template-columns:1fr 1fr 1fr}
.ov-fill{display:flex;gap:6px;flex-wrap:wrap}
.ov-move{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}
.ord-secondary-lite{min-height:44px;border:1px solid #dce5da;background:#fff;border-radius:12px;font-weight:820;color:#4c6651;font-size:13px}
.fi{display:flex;align-items:center;gap:3px;margin-top:7px}
.fi button{flex:1;max-width:22px;height:34px;border:0;border-radius:4px;background:#d7dbd6;padding:0}
.fi button.on{background:#d22d2d}
.fi output{font-size:13px;font-weight:850;color:#5b6b5c;margin-left:5px;min-width:12px}
.ov-stage{border:1px solid #e3e9e1;border-radius:13px;padding:8px 11px 11px;margin:0;display:flex;flex-direction:column;gap:9px}
.ov-stage legend{font-size:12px;font-weight:850;color:#5e7a64;padding:0 4px}
.ov-picklist{display:flex;flex-direction:column;gap:6px;margin:10px 0;max-height:46dvh;overflow:auto}
.ov-picklist button{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:50px;border:1px solid #e3e9e1;background:#fff;border-radius:12px;padding:0 12px;text-align:left}
.ov-picklist b{font-size:15px}.ov-picklist span{font-size:12px;color:#7d8a7e;white-space:nowrap}
.ov-presets{display:flex;flex-direction:column;gap:7px;margin-bottom:10px}
.ov-preset-row{display:flex;gap:6px;align-items:stretch}
.ov-preset-row .field{flex:1;margin:0}
.ov-preset-use{flex:1;text-align:left;border:1px solid #dce5da;background:#fff;border-radius:13px;padding:9px 12px;min-height:56px;display:flex;flex-direction:column;justify-content:center}
.ov-preset-use b{font-size:15px}.ov-preset-use span{font-size:12px;color:#7d8a7e}
.ov-preset-row.on .ov-preset-use{border-color:#2f4c39;box-shadow:inset 0 0 0 1px #2f4c39;background:#f2f7f1}
.ov-mini{flex:none;border:1px solid #dce5da;background:#fff;border-radius:11px;padding:0 12px;font-size:12px;font-weight:820;color:#4c6651}
.ov-mini.danger{color:#a2473a}.ov-mini.armed{background:#b5482f;color:#fff}
/* 제품 사전 */
.dc-search{margin-bottom:6px}
.dc-h{font-size:17px;margin:16px 2px 7px;letter-spacing:-.04em}
.dc-h small{font-size:11px;color:#8a978b;font-weight:700;letter-spacing:0;margin-left:5px}
.dc-row{background:#fff;border:1px solid #e6ebe3;border-radius:13px;padding:10px 12px;margin-bottom:6px}
.dc-row[role=button]{cursor:pointer}
.dc-name{display:flex;justify-content:space-between;gap:8px;align-items:baseline}
.dc-name b{font-size:15px}
.dc-name span{font-size:13px;font-weight:850;color:#5b6b5c}
.dc-stages{display:grid;grid-template-columns:24px 1fr;gap:4px 6px;align-items:center;margin-top:6px}
.dc-stages small{font-size:11px;font-weight:850;color:#8a978b}
.dc-stage{display:flex;align-items:center;gap:7px;font-size:13px;flex-wrap:wrap}
.dc-stage b{font-variant-numeric:tabular-nums}.dc-stage span{color:#6f7d70}
.dc-stage.none{color:#b8c0b7}
.dc-row.conv{display:flex;justify-content:space-between;align-items:center;gap:8px}
.dc-conv{display:flex;align-items:baseline;gap:8px;font-size:14px;text-align:right;flex-wrap:wrap;justify-content:flex-end}
.dc-conv span{color:#5b6b5c;font-weight:750}.dc-conv em{font-style:normal;font-size:12px;color:#2a6fc0;font-weight:750}
@media(max-width:370px){.ov-num{font-size:17px}.ov-fire i{width:4px}.ov-seg button{padding:0 8px}}
/* 순서 편집: 한 줄 카드 (끌기 쉽게) */
.ov-slot.compact{padding:0 10px 0 0;min-height:58px;align-items:center;margin-bottom:6px}
.ov-slot.compact .ov-handle{margin:0;align-self:stretch;width:44px}
.ov-cmain{flex:1;min-width:0;display:flex;flex-direction:column;padding:7px 0}
.ov-cmain b{font-size:15px;letter-spacing:-.03em}
.ov-csum{display:flex;align-items:baseline;gap:4px;font-size:12px;color:#6f7d70;flex-wrap:wrap}
.ov-csum .ov-num{font-size:13px}
.ov-cedit{flex:none;font-size:12px;font-weight:800;color:#6d8a73}
/* ── 오븐 한눈에 보기 ── */
.ov-boardbtn{display:grid;grid-template-columns:1fr auto;align-items:center;width:100%;text-align:left;border:0;border-radius:16px;background:#2f4c39;color:#fff;padding:13px 16px;margin:0 0 12px;min-height:64px;box-shadow:0 4px 14px #2f4c3930}
.ov-boardbtn b{font-size:17px}.ov-boardbtn span{grid-column:1;font-size:12px;color:#c9dacd;font-weight:650;margin-top:2px}.ov-boardbtn i{grid-row:1/3;grid-column:2;font-style:normal;font-size:28px;color:#c9dacd}
.ovb{position:fixed;inset:0;z-index:400;background:#eef0ec;display:none;overflow:hidden}
.ovb.open{display:block}
.ovb-inner{position:absolute;display:flex;flex-direction:column;align-items:center;transform-origin:top left}
.ovb-bar{display:flex;align-items:center;gap:6px;width:100%;padding:6px 8px;padding-top:max(6px,env(safe-area-inset-top))}
.ovb.rot .ovb-bar{padding-top:6px}
.ovb-btn{flex:none;min-height:38px;padding:0 12px;border:1px solid #d6ddd4;border-radius:11px;background:#fff;color:#3d5543;font-size:13px;font-weight:820}
.ovb-btn.main{background:#2f4c39;border-color:#2f4c39;color:#fff}
.ovb-btn[data-b=close]{width:42px;padding:0;font-size:17px}
.ovb-chips{flex:1;min-width:0;display:flex;gap:5px;overflow-x:auto;scrollbar-width:none}
.ovb-chips::-webkit-scrollbar{display:none}
.ovb-chips button{flex:none;min-height:34px;padding:0 12px;border-radius:17px;border:1px solid #d6ddd4;background:#fff;color:#5b6b5c;font-size:13px;font-weight:780}
.ovb-chips button.on{background:#1d2a20;border-color:#1d2a20;color:#fff}
.ovb-stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;width:100%}
.ovb-stage canvas{display:block;background:#fff;border-radius:6px;box-shadow:0 2px 14px #0000001a;cursor:pointer}
.ovb-hint{margin:0;padding:2px 0 max(4px,env(safe-area-inset-bottom));font-size:11px;color:#7d8a7e}
@media(max-width:520px){.ovb-btn[data-b=reset]{display:none}}
.ovb-tip{flex:none;font-size:11px;color:#7d8a7e;white-space:nowrap}
.ovb.side .ovb-inner{flex-direction:row-reverse}
.ovb.side .ovb-bar{flex-direction:column;width:auto;height:100%;padding:8px 6px;padding-right:max(6px,env(safe-area-inset-right));align-items:stretch;overflow-y:auto;scrollbar-width:none}
.ovb.side .ovb-chips{flex:none;flex-direction:column;overflow:visible}
.ovb.side .ovb-btn,.ovb.side .ovb-chips button{width:100%;font-size:12px;padding:0 8px}
.ovb.side .ovb-btn[data-b=close]{width:100%}
.ovb.side .ovb-btn[data-b=reset]{display:block}
.ovb.side .ovb-tip{white-space:normal;width:80px;text-align:center;margin-top:auto}
.ovb.side .ovb-stage{height:100%}
@media(max-width:520px){.ovb:not(.side) .ovb-tip{display:none}}
.ov-temps{flex-wrap:wrap}
.ov-t2{align-self:flex-end;display:inline-flex;align-items:baseline;gap:2px;font-size:14px;font-weight:850;font-variant-numeric:tabular-nums;color:#1d2a20;padding-bottom:3px}
.ov-t2 i{font-style:normal;font-size:11px;font-weight:800;color:#b5602a;margin-right:3px}
