/* Herb & Lime — Cook Mode. Mobile-first. */

/* Entry CTA */
.hlcook-entry{margin:26px 0;text-align:center}
.hlcook-start{display:inline-flex;flex-direction:column;align-items:center;gap:4px;
  background:#244132;color:#fff;border:0;border-radius:16px;
  padding:16px 34px;min-height:64px;cursor:pointer;
  font-size:1.15rem;font-weight:700;line-height:1.25}
.hlcook-start:hover{background:#2e523f}
.hlcook-start:active{transform:scale(.98)}
.hlcook-start-ic{font-size:1.5rem;line-height:1}
.hlcook-start-sub{font-size:.85rem;font-weight:400;opacity:.85}

/* Full-screen overlay */
.hlcook-ov{position:fixed;inset:0;z-index:99999;background:#FBFDF7;color:#1e2a23;
  display:flex;flex-direction:column;font-family:inherit}
.hlcook-top{display:flex;align-items:center;gap:10px;padding:12px 14px;
  border-bottom:1px solid #e3ead9;background:#fff}
.hlcook-exit{border:0;background:#eef2e8;border-radius:50%;width:44px;height:44px;
  font-size:1.3rem;line-height:1;cursor:pointer;color:#244132;flex:0 0 auto}
.hlcook-meta{flex:1;min-width:0}
.hlcook-title{font-weight:700;font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hlcook-stepcount{font-size:.8rem;color:#5c6f60}
.hlcook-bar{height:6px;background:#e3ead9;border-radius:3px;margin-top:6px;overflow:hidden}
.hlcook-bar > span{display:block;height:100%;background:#7fb069;border-radius:3px;
  transition:width .25s ease}

.hlcook-body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;
  padding:22px 18px 140px;max-width:640px;width:100%;margin:0 auto}
.hlcook-section{font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:#7a8b6f;margin:0 0 10px}
.hlcook-steptext{font-size:1.35rem;line-height:1.65;margin:0 0 20px}
.hlcook-steptext img{max-width:100%;height:auto;border-radius:10px;margin-top:12px}
.hlcook-stepimg{max-width:100%;height:auto;border-radius:12px;margin:0 0 16px}

.hlcook-ing{border:1px solid #e3ead9;border-radius:12px;background:#fff;
  padding:14px;margin:0 0 18px}
.hlcook-ing h3{margin:0 0 8px;font-size:.95rem}
.hlcook-ing ul{list-style:none;margin:0;padding:0}
.hlcook-ing li{margin:0}
.hlcook-ing label{display:flex;align-items:center;gap:12px;padding:10px 4px;
  font-size:1rem;cursor:pointer;border-bottom:1px solid #f0f4ec;min-height:48px}
.hlcook-ing li:last-child label{border-bottom:0}
.hlcook-ing input[type=checkbox]{width:24px;height:24px;flex:0 0 auto;accent-color:#244132}
.hlcook-ing label.done .hlcook-ing-name{text-decoration:line-through;color:#8a9789}
.hlcook-ing-qty{color:#5c6f60;font-size:.9rem}

/* Timer */
.hlcook-timer{border:2px solid #c9d4c2;border-radius:14px;background:#fff;
  padding:16px;margin:0 0 18px;text-align:center}
.hlcook-timer h3{margin:0 0 6px;font-size:.95rem}
.hlcook-timer-display{font-size:3rem;font-weight:800;font-variant-numeric:tabular-nums;
  letter-spacing:.02em;margin:4px 0 10px;color:#244132}
.hlcook-timer-display.ring{color:#b3541e;animation:hlcook-pulse 1s infinite}
@keyframes hlcook-pulse{50%{opacity:.55}}
.hlcook-timer-row{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
.hlcook-tbtn{border:0;border-radius:10px;min-height:48px;padding:10px 18px;
  font-size:1rem;font-weight:600;cursor:pointer;background:#eef2e8;color:#244132}
.hlcook-tbtn.primary{background:#244132;color:#fff}
.hlcook-timer-edit{display:flex;gap:8px;justify-content:center;align-items:center;margin-top:10px}
.hlcook-timer-edit input{width:76px;padding:10px;border:2px solid #c9d4c2;border-radius:10px;
  font-size:1.05rem;text-align:center}
.hlcook-timer-edit label{font-size:.85rem;color:#5c6f60}

/* Bottom nav */
.hlcook-nav{position:fixed;left:0;right:0;bottom:0;z-index:100000;
  background:#fff;border-top:1px solid #e3ead9;padding:12px 14px calc(12px + env(safe-area-inset-bottom));
  display:flex;gap:10px}
.hlcook-nav button{flex:1;min-height:58px;border-radius:12px;font-size:1.05rem;font-weight:700;
  cursor:pointer;border:2px solid #244132}
.hlcook-prev{background:#fff;color:#244132}
.hlcook-prev:disabled{opacity:.35;cursor:default}
.hlcook-next{background:#244132;color:#fff;border-color:#244132}

/* Finish screen */
.hlcook-finish{text-align:center;padding-top:10px}
.hlcook-finish-ic{font-size:3rem}
.hlcook-finish h2{font-size:1.6rem;margin:10px 0 6px}
.hlcook-finish p{color:#5c6f60;margin:0 0 18px}
.hlcook-field{margin:0 0 14px;text-align:left}
.hlcook-field label{display:block;font-weight:700;font-size:.9rem;margin-bottom:6px}
.hlcook-field textarea{width:100%;min-height:88px;border:2px solid #c9d4c2;border-radius:10px;
  padding:10px;font-size:1rem;font-family:inherit;resize:vertical}
.hlcook-again{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e3ead9;
  border-radius:12px;padding:14px;margin:0 0 18px;cursor:pointer;font-size:1rem;min-height:56px}
.hlcook-again input{width:24px;height:24px;accent-color:#244132}
.hlcook-cooked{display:block;width:100%;min-height:62px;border:0;border-radius:14px;
  background:#c96f2e;color:#fff;font-size:1.2rem;font-weight:800;cursor:pointer;margin:0 0 8px}
.hlcook-cooked:active{transform:scale(.98)}
.hlcook-saved-note{font-size:.85rem;color:#5c6f60;margin:0 0 20px}

.hlcook-next-steps{border-top:1px solid #e3ead9;padding-top:18px;margin-top:6px;text-align:left}
.hlcook-next-steps h3{margin:0 0 10px;font-size:1.05rem}
.hlcook-ns{display:block;background:#fff;border:1px solid #e3ead9;border-radius:12px;
  padding:14px;margin:0 0 10px;text-decoration:none;color:#1e2a23;min-height:56px}
.hlcook-ns b{display:block;font-size:1rem;color:#244132}
.hlcook-ns span{font-size:.88rem;color:#5c6f60}
.hlcook-tip{background:#fdf6ec;border:1px solid #ecd9b8;border-radius:12px;padding:14px;
  font-size:.92rem;color:#6b5b3e;margin:0 0 10px}
.hlcook-back{background:none;border:0;color:#244132;font-size:1rem;cursor:pointer;
  padding:12px;min-height:48px;text-decoration:underline}

@media (min-width:700px){
  .hlcook-steptext{font-size:1.5rem}
  .hlcook-body{padding:30px 24px 150px}
}
