.grocery-page{padding-bottom:12px}
.grocery-layout{display:grid;gap:16px}
.grocery-layout h2{margin:0 0 8px;font-size:1.05rem}
.grocery-search{display:flex;flex-direction:column;gap:6px;font-weight:700}
.grocery-search input{width:100%;min-height:44px;padding:10px 12px;border-radius:12px;border:1px solid var(--line,#e2e8f0);background:var(--paper,#fff);color:var(--ink,#0f172a);font-size:16px}
.recipe-hits,.pick-list{display:flex;flex-direction:column;gap:8px;margin:10px 0 16px}
.recipe-hit{width:100%;min-height:44px;justify-content:space-between;text-align:left}
.recipe-hit small{font-weight:600;color:var(--muted,#334155)}
.pick-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;align-items:center;min-height:44px;padding:8px 0;border-bottom:1px solid var(--line,#e2e8f0)}
.pick-row strong{grid-column:1 / -1}
.pick-row label{display:flex;align-items:center;gap:6px;font-weight:700;margin:0}
.pick-row input{width:5rem;min-height:44px;padding:8px;border-radius:12px;border:1px solid var(--line,#e2e8f0);background:var(--paper,#fff);color:var(--ink,#0f172a);font-size:16px}
.grocery-empty{margin:8px 0;color:var(--muted,#334155)}
.g-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end;margin:0 0 8px;padding:0}
.g-form label{display:flex;flex-direction:column;gap:4px;font-weight:700;flex:none;min-height:0;margin:0}
.g-form .g-aisle{grid-column:1 / -1}
.g-form input,.g-form select{width:100%;min-height:44px;padding:8px 10px;border-radius:12px;border:1px solid var(--line,#e2e8f0);background:var(--paper,#fff);color:var(--ink,#0f172a);font-size:16px}
.g-form button{min-height:44px}
.grocery-page .check-row{cursor:pointer}
@media (min-width:860px){
  .grocery-layout{grid-template-columns:minmax(260px,340px) minmax(0,1fr);align-items:start}
  .grocery-layout .coast-panel{position:sticky;top:72px}
}
