[hidden]{display:none!important}
.hero-inline{padding:1.2rem 0 .4rem}
.hero-inline .lead{font-size:1.1rem;color:var(--muted);max-width:64ch}
.gn-h{font-size:1.05rem;margin:0 0 .4rem}
.gn-kwfield{grid-column:1/-1}
.gn-goes{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.9rem}
.gn-goes .btn-primary{flex:1 1 220px}
.gn:not(.is-live) .gn-filters,.gn:not(.is-live) .gn-bulk,.gn:not(.is-live) .gn-favs,.gn:not(.is-live) .gn-acts,.gn:not(.is-live) .gn-fav{display:none}
.gn-status{margin:.9rem 0 .4rem;color:var(--muted);font-size:.95rem;min-height:1.6em}
.gn-locks{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;margin:.4rem 0}
.gn-lockhead{font-weight:650;font-size:.9rem}
.gn-lockchip{min-height:44px;cursor:pointer;font:inherit;font-weight:600}
.gn-list{list-style:none;margin:.4rem 0;padding:0;display:grid;gap:.6rem;grid-template-columns:1fr}
@media (min-width:860px){.gn-list{grid-template-columns:1fr 1fr}}
.gn-item{display:grid;grid-template-columns:44px 1fr;grid-template-areas:"fav main" "acts acts";gap:.15rem .4rem;align-items:center;background:var(--surface);border:1px solid var(--rule);border-radius:14px;padding:.55rem .7rem}
.gn-item.is-fav{border-color:var(--accent);background:var(--tint)}
.gn-fav{grid-area:fav;width:44px;height:44px;border-radius:12px;border:1.5px solid var(--border);background:var(--surface);color:var(--accent);font-size:1.35rem;line-height:1;cursor:pointer}
.gn-fav[aria-pressed=true]{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
.gn-main{grid-area:main;display:flex;flex-direction:column;min-width:0}
.gn-name{font-size:1.2rem;font-weight:700;overflow-wrap:anywhere;line-height:1.25}
.gn-pat{font-size:.82rem;color:var(--muted);overflow-wrap:anywhere}
.gn-acts{grid-area:acts;display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.2rem}
.gn-acts .btn{min-height:44px}
.gn-lockrow{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;border-top:1px dashed var(--rule);padding-top:.5rem;margin-top:.2rem}
.gn-lockrow .btn{min-height:44px}
.gn-lockhint{font-size:.88rem;color:var(--muted);flex-basis:100%}
.gn-bulk{margin:.8rem 0}
.gn-bulk .btn{min-height:44px}
.gn-favs{margin-top:1.4rem}
.gn-favs h2{margin:0;font-size:1.2rem}
.gn-favlist{list-style:none;margin:.6rem 0;padding:0}
.gn-favitem{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem .7rem;padding:.35rem 0;border-bottom:1px solid var(--rule)}
.gn-favname{font-weight:700;flex:1 1 auto;overflow-wrap:anywhere}
.gn-favsrc{font-size:.82rem;color:var(--muted)}
.gn-favitem .btn{min-height:44px}
.gn-favacts{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.6rem}
.gn-favacts .btn{min-height:44px}
.gn-favacts .btn:disabled{opacity:.5;cursor:default}
.gn-fallback{width:100%;margin-top:.6rem;font:inherit;border:1.5px solid var(--border);border-radius:10px;padding:.5rem;background:var(--surface);color:var(--text)}
.gn-examplelist{list-style:none;padding:0}
.gn-examplelist .chip{font-size:.95rem;padding:.3rem .8rem}
.gn-taste{padding-left:1.1rem}
.gn-recipes table td,.gn-recipes table th{min-width:6rem}
@media (min-width:560px){
  .gn-item{grid-template-columns:44px 1fr auto;grid-template-areas:"fav main acts"}
  .gn-acts{margin-top:0;flex-wrap:nowrap}
}
@media print{
  .gn-filters,.gn-acts,.gn-fav,.gn-bulk,.gn-locks{display:none!important}
  .gn-list{grid-template-columns:1fr 1fr}
  .gn-item{border:0;padding:.1rem 0}
}
.gn-filters .row{grid-template-columns:1fr 1fr;gap:.2rem .8rem}
@media (min-width:860px){.gn-filters .row{grid-template-columns:repeat(4,1fr)}}
