/* Kitchen Menu Lab: custom food, reusable house items and polished menu workflow. */
.k2-hero-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.15rem}
.k2-menu-overview{padding-top:1.1rem!important;padding-bottom:1.1rem!important;background:#f5eadc}
.k2-menu-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}
.k2-menu-steps article{display:grid;grid-template-columns:46px 1fr;gap:.75rem;align-items:start;padding:1rem;border:1px solid var(--k2-border);border-radius:16px;background:#fff;box-shadow:0 8px 22px rgba(47,26,16,.06)}
.k2-menu-steps article>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#6b371e;color:#fff;font-weight:900}
.k2-menu-steps strong{display:block;font:700 1.08rem Georgia,serif;color:#402216}
.k2-menu-steps p{margin:.25rem 0 0;line-height:1.5;color:#6c5548}
.k2-menu-meta-panel{display:grid;grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);gap:1.25rem;padding:clamp(1rem,3vw,1.5rem);margin-bottom:1.25rem;border:1px solid var(--k2-border);border-radius:18px;background:linear-gradient(135deg,#fff8ea,#fff);box-shadow:0 10px 28px rgba(47,26,16,.07)}
.k2-menu-meta-panel h2{margin:.15rem 0 .45rem}
.k2-menu-meta-panel p{line-height:1.55}
.k2-menu-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}
.k2-menu-meta-grid label,.k2-custom-grid label,.k2-library-picker>label{display:grid;gap:.35rem;font-weight:800;color:#4b3024}
.k2-menu-meta-grid textarea{min-height:5.4rem}
.k2-meta-wide,.k2-field-wide{grid-column:1/-1}
.k2-menu-workspace{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(390px,.94fr);gap:1.25rem;align-items:start}
.k2-menu-builder-column{display:grid;gap:1rem;min-width:0}
.k2-custom-food,.k2-house-library,.k2-library-picker,.k2-working-menu{padding:clamp(1rem,2.5vw,1.35rem);border:1px solid var(--k2-border);border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(47,26,16,.065)}
.k2-custom-food{border-top:5px solid #9c5b2f}
.k2-house-library{border-top:5px solid #c08a3e}
.k2-library-picker{border-top:5px solid #6f7650}
.k2-working-menu{position:sticky;top:7.2rem;border-top:5px solid #4f3326;max-height:calc(100vh - 8.4rem);overflow:auto;overscroll-behavior:contain}
.k2-section-heading,.k2-working-menu-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:1rem}
.k2-section-heading h2,.k2-working-menu-head h2{margin:.15rem 0 .4rem}
.k2-section-heading p{margin:.2rem 0;line-height:1.52;color:#6d574b}
.k2-save-badge,.k2-working-menu-head>strong{flex:0 0 auto;padding:.4rem .58rem;border-radius:999px;background:#f0e2c8;color:#5a331d;font-size:.75rem;font-weight:900}
.k2-custom-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}
.k2-custom-grid fieldset{display:flex;flex-wrap:wrap;gap:1rem;margin:0;padding:.85rem;border:1px solid var(--k2-border);border-radius:12px;background:#fffaf1}
.k2-custom-grid legend{padding:0 .35rem;font-weight:900;color:#4b3024}
.k2-inline-check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:.5rem!important;font-weight:750!important}
.k2-inline-check input{width:1.15rem;height:1.15rem}
.k2-status{min-height:1.4rem;margin:.7rem 0 0;font-weight:800;color:#6b371e}
.k2-status[data-status="error"]{color:#9a241d}
.k2-status[data-status="success"]{color:#27613a}
.k2-house-library-list{display:grid;gap:.65rem}
.k2-house-library-empty{margin:0;padding:.9rem;border:1px dashed #bda892;border-radius:12px;background:#fffaf2;color:#6e584b}
.k2-house-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.8rem;align-items:center;padding:.8rem;border:1px solid #dfd0c2;border-radius:12px;background:#fffaf4}
.k2-house-item strong{display:block;color:#3e2318}
.k2-house-item small{display:block;margin-top:.2rem;color:#725a4e;line-height:1.45}
.k2-house-item-actions,.k2-item-actions{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:flex-end}
.k2-house-item-actions button,.k2-item-actions button{min-height:38px;padding:.45rem .6rem;border:1px solid #bca693;border-radius:8px;background:#fff;color:#4a2a1c;font:inherit;font-size:.78rem;font-weight:850;cursor:pointer}
.k2-house-item-actions button.primary-mini{background:#5d3826;color:#fff;border-color:#5d3826}
.k2-house-item-actions button:disabled{opacity:.58;cursor:default}
.k2-picker{margin-top:.7rem;max-height:28rem;overflow:auto;border:1px solid var(--k2-border);border-radius:12px;background:#fffaf5}
.k2-picker button{width:100%;display:flex;justify-content:space-between;gap:1rem;align-items:center;min-height:46px;padding:.7rem .8rem;border:0;border-bottom:1px solid #eadfd4;background:#fff;text-align:left;cursor:pointer}
.k2-picker button:last-child{border-bottom:0}
.k2-picker button:hover{background:#fff4df}
.k2-picker button:disabled{background:#f3eee7;color:#77685f;cursor:default}
.k2-picker button strong{color:#8b4f2d}
.k2-working-menu-items{display:grid;gap:.8rem}
.k2-menu-empty{padding:1.15rem;border:1px dashed #bfa994;border-radius:12px;background:#fffaf3;color:#6c5548;text-align:center}
.k2-menu-item-card{padding:.9rem;border:1px solid #dac8b8;border-radius:14px;background:#fffdf9}
.k2-menu-item-card.is-custom{border-color:#b8753f;background:#fff9ed}
.k2-menu-item-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.8rem;align-items:start;margin-bottom:.75rem}
.k2-menu-item-title strong{display:block;font:700 1.08rem Georgia,serif;color:#3d2117}
.k2-menu-item-title small{display:block;margin-top:.25rem;color:#745c4f;line-height:1.4}
.k2-custom-tag{display:inline-flex;margin-left:.4rem;padding:.15rem .42rem;border-radius:99px;background:#ead6b5;color:#5b2c18;font-size:.67rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em;vertical-align:middle}
.k2-menu-item-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}
.k2-menu-item-grid label{display:grid;gap:.3rem;font-size:.79rem;font-weight:850;color:#584034}
.k2-menu-item-grid .wide{grid-column:1/-1}
.k2-menu-item-grid textarea{min-height:5.2rem}
.k2-item-metrics{display:flex;flex-wrap:wrap;gap:.42rem;margin-top:.65rem}
.k2-item-metrics span{padding:.28rem .46rem;border-radius:999px;background:#f0e7dc;color:#62483b;font-size:.72rem;font-weight:800}
.k2-menu-analysis{margin-top:1rem}
.k2-analysis-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;margin:.7rem 0}
.k2-analysis-metrics div{padding:.65rem;border-radius:10px;background:#fff;color:#45291d;text-align:center}
.k2-analysis-metrics strong{display:block;font-size:1.22rem}
.k2-analysis-metrics span{font-size:.72rem;color:#71594c}
.k2-analysis-notes{margin:.65rem 0 0;padding-left:1.15rem;line-height:1.5}
.k2-analysis-notes li+li{margin-top:.35rem}
.k2-menu-actions{position:sticky;bottom:-1.35rem;margin:1rem -1.35rem -1.35rem;padding:1rem 1.35rem;background:linear-gradient(transparent,#fff 18%);z-index:2}
.k2-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1rem}

@media(max-width:1080px){
  .k2-menu-workspace{grid-template-columns:1fr}
  .k2-working-menu{position:static;max-height:none;overflow:visible}
  .k2-menu-actions{position:static;margin:1rem 0 0;padding:0;background:none}
}
@media(max-width:760px){
  .k2-menu-steps,.k2-menu-meta-panel,.k2-menu-meta-grid,.k2-custom-grid,.k2-menu-item-grid{grid-template-columns:1fr}
  .k2-meta-wide,.k2-field-wide,.k2-menu-item-grid .wide{grid-column:auto}
  .k2-menu-meta-panel{gap:.8rem}
  .k2-section-heading,.k2-working-menu-head{display:block}
  .k2-save-badge,.k2-working-menu-head>strong{display:inline-flex;margin-top:.4rem}
  .k2-house-item,.k2-menu-item-head{grid-template-columns:1fr}
  .k2-house-item-actions,.k2-item-actions{justify-content:flex-start}
  .k2-analysis-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:480px){
  .k2-menu-steps article{grid-template-columns:38px 1fr;padding:.85rem}
  .k2-menu-steps article>span{width:36px;height:36px}
  .k2-analysis-metrics{grid-template-columns:1fr 1fr}
}
@media print{.k2-menu-overview,.k2-menu-meta-panel,.k2-menu-builder-column,.k2-menu-actions{display:none!important}.k2-menu-workspace{display:block}.k2-working-menu{box-shadow:none;border:0;padding:0}}
.k2-status[data-status="warning"]{color:#8a4d08}
