
/* Kitchen Bench extras — Temperature Guide, Recipe Scaler, expandable Toolkit cards */
#page-kb-temps .kb-wrap, #page-kb-scaler .kb-wrap{ padding-bottom:60px; }
.kbx-h2{ font-family:Georgia,serif; font-size:1.35rem; font-weight:700; color:#20354B !important; -webkit-text-fill-color:#20354B !important; margin:0 0 8px; }
.kbx-note{ font-size:.88rem; line-height:1.6; color:#687383 !important; -webkit-text-fill-color:#687383 !important; margin:0 0 16px; max-width:70ch; }
.kbx-note code{ background:#F4F1EA; border-radius:6px; padding:1px 6px; font-size:.85em; }

/* jump links */
.kbx-jump{ display:flex; flex-wrap:wrap; gap:8px; margin:22px 0 4px; }
.kbx-jump-a{ display:inline-block; text-decoration:none; background:#F4F1EA; border:1px solid #E8E4DC; border-radius:999px;
  padding:7px 14px; font-size:.8rem; font-weight:700; color:#20354B !important; -webkit-text-fill-color:#20354B !important; }
.kbx-jump-a:hover{ background:#EEF3EC; border-color:#C9DAC6; }

/* tables */
.kbx-tbl-sec{ margin-top:34px; }
.kbx-tbl-scroll{ overflow-x:auto; border:1px solid #E8E4DC; border-radius:18px; background:#fff; }
.kbx-tbl{ width:100%; border-collapse:collapse; font-size:.88rem; min-width:520px; }
.kbx-tbl th, .kbx-tbl td{ text-align:left; padding:11px 16px; border-bottom:1px solid #F0EDE6; vertical-align:top; }
.kbx-tbl thead th{ background:#F7F5F0; font-size:.68rem; letter-spacing:.12em; text-transform:uppercase; font-weight:800;
  color:#6F9272 !important; -webkit-text-fill-color:#6F9272 !important; white-space:nowrap; }
.kbx-tbl tbody th{ font-weight:700; color:#20354B !important; -webkit-text-fill-color:#20354B !important; }
.kbx-tbl tbody td{ color:#5A6472 !important; -webkit-text-fill-color:#5A6472 !important; }
.kbx-tbl tbody tr:last-child th, .kbx-tbl tbody tr:last-child td{ border-bottom:none; }
.kbx-tbl tbody tr:nth-child(even){ background:#FCFBF8; }

.kbx-callout{ margin-top:36px; background:#EEF3EC; border:1px solid #D9E5D6; border-radius:22px; padding:26px; }

/* scaler */
.kbx-scaler{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:20px; margin-top:24px; align-items:start; }
.kbx-panel{ background:#fff; border:1px solid #E8E4DC; border-radius:22px; padding:20px; }
.kbx-panel.is-out{ background:#FCFBF8; }
.kbx-lbl{ display:block; font-size:.68rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase;
  color:#6F9272 !important; -webkit-text-fill-color:#6F9272 !important; margin-bottom:7px; }
.kbx-text{ width:100%; box-sizing:border-box; border:1.5px solid #E8E4DC; border-radius:16px; padding:14px 16px;
  font-family:inherit; font-size:.92rem; line-height:1.7; color:#20354B; background:#FCFBF8; resize:vertical; }
.kbx-text:focus{ outline:none; border-color:#8FB08C; background:#fff; }
.kbx-serves{ display:flex; align-items:flex-end; gap:12px; margin-top:16px; }
.kbx-arrowcell{ padding-bottom:12px; color:#9AA5B1; font-size:1.1rem; }
.kbx-num{ width:100%; box-sizing:border-box; border:1.5px solid #E8E4DC; border-radius:14px; padding:11px 14px;
  font-family:inherit; font-size:1rem; font-weight:700; color:#20354B; background:#FCFBF8; }
.kbx-num:focus{ outline:none; border-color:#8FB08C; background:#fff; }
.kbx-quick{ display:flex; gap:8px; margin-top:14px; flex-wrap:wrap; }
.kbx-qbtn{ border:1px solid #E8E4DC; background:#F7F5F0; border-radius:999px; padding:8px 16px; cursor:pointer;
  font-family:inherit; font-size:.84rem; font-weight:700; color:#20354B !important; -webkit-text-fill-color:#20354B !important; }
.kbx-qbtn:hover{ background:#EEF3EC; border-color:#C9DAC6; }
.kbx-check{ display:flex; align-items:center; gap:9px; margin-top:16px; font-size:.85rem; color:#687383 !important; -webkit-text-fill-color:#687383 !important; }
.kbx-check input{ width:17px; height:17px; accent-color:#6F9272; }

.kbx-out-head{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px;
  font-size:.68rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:#6F9272 !important; -webkit-text-fill-color:#6F9272 !important; }
.kbx-copy{ font-size:.78rem !important; padding:7px 14px !important; }
.kbx-out-row{ display:flex; align-items:baseline; gap:10px; flex-wrap:wrap; padding:9px 0; border-bottom:1px dashed #EDE9E1; }
.kbx-out-row:last-child{ border-bottom:none; }
.kbx-out-row.is-note{ color:#8A93A0 !important; -webkit-text-fill-color:#8A93A0 !important; font-style:italic; }
.kbx-out-was{ font-size:.82rem; color:#9AA5B1 !important; -webkit-text-fill-color:#9AA5B1 !important; text-decoration:line-through; }
.kbx-out-arrow{ color:#C3CBD4; font-size:.8rem; }
.kbx-out-now{ font-size:.95rem; font-weight:700; color:#20354B !important; -webkit-text-fill-color:#20354B !important; }
.kbx-out-blank{ height:8px; }
.kbx-flag{ font-size:.65rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; background:#FBEFD9;
  color:#8A6A2F !important; -webkit-text-fill-color:#8A6A2F !important; border-radius:999px; padding:3px 9px; }
.kbx-flag.is-round{ background:#EEF3EC; color:#5C7A58 !important; -webkit-text-fill-color:#5C7A58 !important; }
.kbx-out-empty p{ font-size:.9rem; line-height:1.7; color:#687383 !important; -webkit-text-fill-color:#687383 !important; margin:0 0 10px; }

.kbx-cards{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.kbx-card{ background:#fff; border:1px solid #E8E4DC; border-radius:20px; padding:20px; }
.kbx-card-ic{ font-size:1.5rem; display:block; margin-bottom:8px; }
.kbx-card-t{ font-family:Georgia,serif; font-size:1rem; font-weight:700; margin:0 0 6px;
  color:#20354B !important; -webkit-text-fill-color:#20354B !important; }
.kbx-card-p{ font-size:.85rem; line-height:1.65; margin:0; color:#687383 !important; -webkit-text-fill-color:#687383 !important; }

/* expandable Kitchen Toolkit cards */
.kb-item .kbx-more{ border-top:1px dashed #EDE9E1; margin-top:auto; padding-top:10px; }
.kb-item .kbx-more > summary{ list-style:none; cursor:pointer; font-size:.76rem; font-weight:800; letter-spacing:.07em;
  text-transform:uppercase; color:#6F9272 !important; -webkit-text-fill-color:#6F9272 !important; display:flex; align-items:center; gap:6px; }
.kb-item .kbx-more > summary::-webkit-details-marker{ display:none; }
.kb-item .kbx-more > summary::after{ content:"+"; margin-left:auto; font-size:1rem; line-height:1; }
.kb-item .kbx-more[open] > summary::after{ content:"−"; }
.kb-item .kbx-more[open] > summary{ margin-bottom:9px; }
.kbx-body p{ font-size:.83rem; line-height:1.65; margin:0 0 8px; color:#5A6472 !important; -webkit-text-fill-color:#5A6472 !important; }
.kbx-body ul{ margin:0 0 8px; padding-left:18px; }
.kbx-body li{ font-size:.83rem; line-height:1.6; margin-bottom:4px; color:#5A6472 !important; -webkit-text-fill-color:#5A6472 !important; }
.kbx-body > *:last-child{ margin-bottom:0; }

@media (max-width:900px){
  .kbx-scaler{ grid-template-columns:1fr; }
  .kbx-cards{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:640px){
  .kbx-cards{ grid-template-columns:1fr; }
  .kbx-tbl{ font-size:.82rem; min-width:440px; }
  .kbx-tbl th, .kbx-tbl td{ padding:9px 12px; }
}

