/* ผลเอย Ops Hub v4 — ฟอร์ม Food Waste / นับเงิน / บรีฟเช้า / ประชุมสัปดาห์ */
[hidden]{ display:none !important; }
.ofm{ display:grid; grid-template-columns:repeat(auto-fill,minmax(170px,1fr)); gap:10px; }
.ofm label{ display:flex; flex-direction:column; gap:4px; font-size:13px; color:var(--text-muted); min-width:0; }
.ofm .wide{ grid-column:1/-1; }
.ofm input, .ofm select, .ofm textarea, .osel, .att select, .prob input, .prob select{
  font:inherit; font-size:16px; padding:10px 12px; border:1.5px solid var(--border); border-radius:10px;
  background:#FFFFFF; color:var(--text); width:100%; box-sizing:border-box; min-width:0;
}
.ofm textarea{ resize:vertical; }
.ofm input:focus, .ofm select:focus, .ofm textarea:focus{ outline:2px solid var(--accent); outline-offset:1px; border-color:var(--accent); }
.osel{ width:auto; padding:8px 10px; }

.obtn{ font:inherit; font-size:15px; font-weight:600; padding:11px 18px; border-radius:12px; cursor:pointer;
  border:1.5px solid var(--border); background:#FFFFFF; color:var(--text); }
.obtn:hover{ border-color:var(--accent); }
.obtn.pri{ background:var(--accent); border-color:var(--accent); color:#FFFFFF; width:100%; padding:14px 18px; font-size:16px; }
.obtn.sm{ padding:6px 10px; font-size:13px; border-radius:8px; }
.obtn:disabled{ opacity:.55; cursor:default; }

.den{ display:grid; grid-template-columns:repeat(auto-fill,minmax(140px,1fr)); gap:8px; }
.den label{ display:grid; grid-template-columns:1fr; gap:4px; border:1.5px solid var(--border); border-radius:12px; padding:10px; background:var(--surface-2); }
.den label span{ font-size:13px; font-weight:600; }
.den label input{ font:inherit; font-size:18px; padding:8px 10px; border:1.5px solid var(--border); border-radius:8px; background:#FFFFFF; width:100%; box-sizing:border-box; }
.den label em{ font-style:normal; font-size:12.5px; color:var(--text-muted); text-align:right; }
.den-total{ margin-top:12px; padding:12px 14px; border-radius:12px; background:var(--accent-soft, #FBEFF2); border:1.5px solid #EFCBD5;
  display:flex; align-items:center; gap:10px; flex-wrap:wrap; font-weight:600; }
.den-total b{ font-size:24px; color:var(--accent); }

.cash-result{ margin-top:12px; display:flex; flex-direction:column; gap:6px; }
.cash-result:empty{ display:none; }
.cash-result > div{ border:1.5px solid var(--border); border-radius:10px; padding:10px 12px; background:#FFFFFF; }
.cr-row{ display:flex; justify-content:space-between; align-items:center; gap:10px; flex-wrap:wrap; }
.cr-row span:first-child{ flex:1; min-width:180px; font-size:14px; }
.cr-row.big b{ font-size:20px; }

.ochk{ display:flex; flex-direction:column; gap:8px; }
.ochk label{ display:flex; gap:10px; align-items:flex-start; padding:11px 12px; border:1.5px solid var(--border); border-radius:10px; background:#FFFFFF; cursor:pointer; }
.ochk input{ width:20px; height:20px; margin:1px 0 0; flex:none; accent-color:var(--accent); }
.ochk label:has(input:checked){ border-color:var(--good); background:#F1F8F3; }

.focus-card{ border-left:6px solid var(--accent) !important; }
.focus-txt{ font-size:17px; font-weight:600; line-height:1.55; }
.focus-goal{ margin-top:10px; padding:10px 12px; background:var(--surface-2); border-radius:10px; }

.ops-sop{ border:1.5px solid var(--border); border-radius:14px; background:#FFFFFF; margin-top:16px; overflow:hidden; }
.ops-sop > summary{ list-style:none; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:10px; padding:14px 16px; font-weight:700; background:var(--surface-2); }
.ops-sop > summary::-webkit-details-marker{ display:none; }
.ops-sop[open] > summary{ border-bottom:1.5px solid var(--border); }
.ops-sop-body{ padding:14px; }

.att-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:8px; }
.att{ border:1.5px solid var(--border); border-radius:10px; padding:8px 10px; display:flex; flex-direction:column; gap:6px; background:#FFFFFF; }
.att label{ display:flex; gap:8px; align-items:center; cursor:pointer; font-weight:600; }
.att input{ width:18px; height:18px; accent-color:var(--accent); }
.att select{ padding:6px 8px; font-size:14px; }

.prob{ display:grid; grid-template-columns:repeat(auto-fill,minmax(160px,1fr)); gap:8px; border:1.5px solid var(--border); border-radius:12px; padding:10px; margin-bottom:8px; background:var(--surface-2); }
.prob label{ display:flex; flex-direction:column; gap:4px; font-size:13px; color:var(--text-muted); min-width:0; }
.prob .wide{ grid-column:1/-1; }
.fu{ border:1.5px solid var(--border); border-radius:12px; padding:10px; display:flex; flex-direction:column; gap:8px; background:#FFFFFF; }
#wk-form h4, .meet h4{ margin:16px 0 8px; }
.meet h4:first-child{ margin-top:0; }
