.recipe-cook-dialog{width:min(1160px,calc(100vw - 32px));max-width:none;max-height:min(94dvh,980px);margin:auto;padding:0;border:1px solid rgba(214,174,88,.38);border-radius:28px;background:#0f110e;color:#f6f2e8;box-shadow:0 35px 130px rgba(0,0,0,.75);overflow:hidden}
.recipe-cook-dialog::backdrop{background:rgba(0,0,0,.78);backdrop-filter:blur(7px)}
.cook-shell{max-height:min(94dvh,980px);display:flex;flex-direction:column;min-height:0}
.cook-header{display:flex;align-items:start;justify-content:space-between;gap:20px;padding:24px 30px;border-bottom:1px solid rgba(214,174,88,.2);background:linear-gradient(115deg,rgba(215,171,73,.13),transparent 60%)}
.cook-eyebrow{display:block;color:#e6c77d;font-size:.67rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.cook-header h2{margin:8px 0 4px;color:#fff;font-size:clamp(1.5rem,3vw,2.55rem);line-height:1.05;letter-spacing:-.035em}
.cook-header p{margin:0;color:#c9c5b8;font-size:.85rem}
.cook-close{flex:none;display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(214,174,88,.3);border-radius:12px;background:#1b1d18;color:#f0d99b;font-size:1.7rem;line-height:1;cursor:pointer}
.cook-layout{display:grid;grid-template-columns:minmax(0,1.13fr) minmax(315px,.8fr);min-height:0;overflow:auto}
.cook-focus,.cook-shopping{min-width:0;padding:30px}
.cook-focus{border-right:1px solid rgba(214,174,88,.16)}
.cook-progress{display:flex;align-items:center;gap:17px;color:#f0d99b;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.09em}
.cook-progress progress{flex:1;height:7px;border:0;border-radius:99px;background:#303126;overflow:hidden;accent-color:#d8ad54}
.cook-progress progress::-webkit-progress-bar{background:#303126}.cook-progress progress::-webkit-progress-value{background:#d8ad54}.cook-progress progress::-moz-progress-bar{background:#d8ad54}
.cook-steps{min-height:190px;padding:25px 0 18px}
.cook-step[hidden]{display:none!important}.cook-step-number{display:grid;place-items:center;width:52px;height:52px;border:1px solid rgba(214,174,88,.38);border-radius:15px;background:rgba(214,174,88,.12);color:#f0d99b;font-size:1rem;font-weight:950}
.cook-step p{margin:18px 0 0;color:#fff;font-size:clamp(1.25rem,2vw,1.9rem);line-height:1.55;overflow-wrap:anywhere}
.cook-navigation{display:flex;gap:10px}
.cook-navigation button,.cook-timer-controls button,.cook-timer-suggestions button,.cook-shopping-actions button{padding:11px 15px;border:1px solid rgba(214,174,88,.36);border-radius:11px;background:#22251d;color:#fff;font:inherit;font-size:.83rem;font-weight:850;cursor:pointer}
.cook-navigation button:last-child,.cook-timer-controls [data-cook-timer-start]{background:linear-gradient(125deg,#f3d889,#bd8831);color:#18130b;border-color:transparent}
.cook-navigation button:disabled,.cook-timer-controls button:disabled{opacity:.42;cursor:not-allowed}
.cook-timer{margin-top:27px;padding:20px;border:1px solid rgba(214,174,88,.22);border-radius:18px;background:#171a15}
.cook-timer-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.cook-timer-title small{color:#d9b765;font-size:.63rem;font-weight:900;letter-spacing:.12em}.cook-timer-title h3{margin:3px 0 0;font-size:1.23rem}.cook-timer-title strong{font-variant-numeric:tabular-nums;color:#f0d99b;font-size:1.7rem;white-space:nowrap}
.cook-timer-suggestions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-height:40px;margin:12px 0;color:#a7a99d;font-size:.76rem}.cook-timer-suggestions button{padding:7px 10px;border-radius:999px;color:#f0d99b}
.cook-timer-controls{display:flex;align-items:end;flex-wrap:wrap;gap:8px}.cook-timer-controls label{display:grid;gap:5px;color:#c7c9c0;font-size:.71rem;font-weight:800}.cook-timer-controls input{width:92px;min-height:39px;padding:7px;border:1px solid rgba(214,174,88,.36);border-radius:9px;background:#0b0d0a;color:#fff;font:inherit}.cook-timer-controls button{min-height:39px;padding:8px 10px}.cook-timer-status{min-height:1.2em;margin:11px 0 0;color:#f0d99b;font-size:.76rem}
.cook-shopping{background:linear-gradient(145deg,#151711,#0e100d)}.cook-shopping-heading h3{margin:8px 0 5px;font-size:1.65rem}.cook-shopping-heading p{margin:0;color:#b4b6ac;font-size:.78rem;line-height:1.5}
.cook-shopping-list{display:grid;gap:7px;max-height:205px;overflow:auto;margin:18px 0;padding-right:4px}.cook-shopping-item{display:flex;align-items:center;gap:10px;padding:9px 10px;border:1px solid rgba(214,174,88,.12);border-radius:10px;background:rgba(255,255,255,.025);color:#ece9df;font-size:.83rem;line-height:1.4;cursor:pointer}.cook-shopping-item input{flex:none;accent-color:#d8ad54;width:17px;height:17px}.cook-shopping-item span{overflow-wrap:anywhere}.cook-shopping-item.is-checked span{opacity:.46;text-decoration:line-through}
.cook-apps{padding-top:17px;border-top:1px solid rgba(214,174,88,.18)}.cook-apps h4{margin:6px 0 14px;font-size:1.2rem}
.cook-app{display:grid;grid-template-columns:1fr auto;gap:3px 10px;align-items:center;width:100%;margin-bottom:7px;padding:11px 13px;border:1px solid rgba(214,174,88,.22);border-radius:12px;background:#191c16;color:#f5f0e4;text-align:left;text-decoration:none;font:inherit;cursor:pointer;transition:background .15s,border-color .15s}
.cook-app:hover,.cook-app:focus-visible{border-color:#dbb65f;background:#25281e}.cook-app strong{grid-column:1;font-size:.85rem}.cook-app small{grid-column:1;color:#bfc1b5;font-size:.7rem;line-height:1.35}.cook-app>span{grid-column:2;grid-row:1/3;color:#e6c77d;font-size:1.08rem}.cook-app-bring{border-color:rgba(214,174,88,.55);background:linear-gradient(115deg,rgba(213,169,72,.2),#191c16)}
.cook-shopping-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.cook-shopping-actions button{font-size:.73rem;padding:9px 10px}.cook-shopping-hint{margin:13px 0 0;color:#a7a99d;font-size:.68rem;line-height:1.5}.cook-shopping-status{min-height:1.25em;color:#f0d99b;font-size:.76rem}.cook-shopping textarea{width:100%;min-height:70px;padding:10px;border:1px solid #dbb65f;border-radius:8px;background:#0b0d0a;color:#fff;font:inherit;font-size:.72rem}.cook-shopping textarea[hidden]{display:none}
.cook-shopping-only{width:min(650px,calc(100vw - 32px))}.cook-shopping-only .cook-layout{display:block}.cook-shopping-only .cook-shopping-list{max-height:270px}
.recipe-cook-dialog button:focus-visible,.recipe-cook-dialog a:focus-visible,.recipe-cook-dialog input:focus-visible{outline:2px solid #f0d99b;outline-offset:3px}
@media(max-width:800px){.recipe-cook-dialog{width:100vw;height:100dvh;max-height:none;border:0;border-radius:0}.cook-shell{max-height:100dvh}.cook-header{padding:calc(16px + env(safe-area-inset-top)) 18px 15px}.cook-layout{display:block;overflow:auto}.cook-focus,.cook-shopping{padding:20px 18px}.cook-focus{border-right:0;border-bottom:1px solid rgba(214,174,88,.16)}.cook-steps{min-height:0}.cook-shopping{padding-bottom:calc(20px + env(safe-area-inset-bottom))}.cook-shopping-list{max-height:240px}.cook-apps{margin-top:12px}}
@media(max-width:480px){.cook-header h2{font-size:1.45rem}.cook-step p{font-size:1.2rem}.cook-navigation button{flex:1}.cook-shopping-actions{grid-template-columns:1fr}.cook-timer-title strong{font-size:1.4rem}}
@media(prefers-reduced-motion:reduce){.cook-app{transition:none}}

/* 2.5.21: cooking, shopping and rescue are easier to scan on a phone. */
.cook-tabs{display:none}
.cook-rescue-jump{display:inline-flex;margin-top:14px;padding:9px 0;border:0;background:none;color:#f2d477;font:inherit;font-size:.82rem;font-weight:900;cursor:pointer;text-align:left}
.cook-rescue,.cook-app-other{margin:16px 0;border:1px solid rgba(214,174,88,.32);border-radius:14px;background:rgba(214,174,88,.07);overflow:hidden}
.cook-rescue summary,.cook-app-other summary{display:flex;align-items:center;gap:9px;padding:13px 14px;color:#f5dfa5;cursor:pointer;list-style:none;font-size:.83rem;font-weight:850}
.cook-rescue summary::-webkit-details-marker,.cook-app-other summary::-webkit-details-marker{display:none}
.cook-rescue summary span:last-child,.cook-app-other summary span{margin-left:auto;transition:transform .15s}
.cook-rescue[open] summary span:last-child,.cook-app-other[open] summary span{transform:rotate(180deg)}
.cook-rescue-body{display:grid;gap:8px;padding:0 12px 13px}
.cook-rescue-body article{padding:12px;border:1px solid rgba(214,174,88,.18);border-radius:10px;background:#141711}
.cook-rescue-body h4{margin:0 0 5px;color:#f5dfa5;font-size:.83rem}.cook-rescue-body p{margin:0;color:#e8e6da;font-size:.78rem;line-height:1.5}
.cook-rescue-language{color:#cfc6aa!important;font-style:italic}
.cook-app-other{margin-top:12px;background:rgba(255,255,255,.025)}
.cook-app-other>div{padding:0 10px 6px}.cook-app-other .cook-app{margin-bottom:7px}
.cook-rescue-jump:focus-visible,.cook-rescue summary:focus-visible,.cook-app-other summary:focus-visible{outline:2px solid #f2d477;outline-offset:-2px}
@media(max-width:800px){
  .cook-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:11px 17px;border-bottom:1px solid rgba(214,174,88,.2);background:#11140f}
  .cook-tabs button{min-height:45px;padding:9px;border:1px solid rgba(214,174,88,.3);border-radius:11px;background:#1b1e18;color:#f2d477;font:inherit;font-size:.8rem;font-weight:900;cursor:pointer}
  .cook-tabs button[aria-pressed=true]{border-color:#e0bb68;background:#d9b66b;color:#17130a}
  .cook-layout[data-cook-tab=steps] .cook-shopping,.cook-layout[data-cook-tab=shopping] .cook-focus{display:none}
  .cook-layout .cook-focus,.cook-layout .cook-shopping{min-height:100%;border-bottom:0}
  .cook-navigation{position:sticky;bottom:0;z-index:2;padding:9px 0 calc(9px + env(safe-area-inset-bottom));background:linear-gradient(transparent,#0f110e 24%)}
}
@media(max-width:480px){.cook-navigation button{min-height:48px}.cook-app{min-height:57px}.cook-shopping-actions button{min-height:44px}}
