.menu-cards{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.menu-card{border:1px solid var(--color-line);border-radius:14px;background:#fff;overflow:hidden;display:flex;flex-direction:column;transition:border-color .15s ease,box-shadow .15s ease}.menu-card:hover{border-color:var(--color-line-2);box-shadow:var(--shadow-sm)}.menu-card.is-out{opacity:.68}.menu-card-img{aspect-ratio:4 / 3;background:var(--color-surface);position:relative;overflow:hidden}.menu-card-img img{width:100%;height:100%;object-fit:cover;display:block}.menu-card-img .ph{width:100%;height:100%;background:linear-gradient(135deg,transparent 49%,var(--color-line-2) 49%,var(--color-line-2) 51%,transparent 51%),linear-gradient(45deg,transparent 49%,var(--color-line-2) 49%,var(--color-line-2) 51%,transparent 51%);opacity:.25}.menu-out-tag{position:absolute;top:8px;left:8px;background:#0a0a0ac7;color:#fff;padding:3px 8px;border-radius:5px;font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.menu-card-body{padding:12px 14px 14px;display:flex;flex-direction:column;gap:6px;flex:1}.menu-card-name{font-size:14.5px;font-weight:700;line-height:1.3;color:var(--color-ink);margin:0;letter-spacing:-.01em}.menu-card-name a{color:inherit;text-decoration:none}.menu-card-name a:hover{color:var(--color-green-2)}.menu-card-rating{display:inline-flex;align-items:center;gap:5px;margin-top:-2px;text-decoration:none;width:fit-content}.menu-card-rating-stars{color:var(--color-gold);font-size:12.5px;letter-spacing:.5px;line-height:1}.menu-card-rating-num{font-family:var(--font-mono);font-weight:700;font-size:12px;color:var(--color-ink);font-variant-numeric:tabular-nums}.menu-card-rating-count{font-size:11.5px;color:var(--color-muted)}.menu-card-rating:hover .menu-card-rating-count{color:var(--color-text-2)}.menu-card-meta{display:flex;flex-wrap:wrap;gap:4px 6px;color:var(--color-muted);font-size:12px}.menu-card-numbers{display:flex;flex-wrap:wrap;gap:10px;color:var(--color-text-2);font-size:12px;margin-top:2px}.menu-card-numbers strong{color:var(--color-ink);font-family:var(--font-mono);font-weight:600}.menu-card-price-row{display:flex;align-items:baseline;gap:8px;margin-top:auto;padding-top:8px}.menu-card-price{font-family:var(--font-mono);font-size:17px;font-weight:700;color:var(--color-ink);font-variant-numeric:tabular-nums}.menu-card-was{font-family:var(--font-mono);font-size:13px;color:var(--color-muted);text-decoration:line-through}.menu-card-coa{margin-left:auto;font-size:10.5px;font-weight:700;letter-spacing:.04em;color:var(--color-green-2);background:var(--color-green-soft);padding:3px 8px;border-radius:5px}.menu-add-btn{margin-top:10px;width:100%;background:var(--color-graphite);color:#fff;border:0;padding:9px 14px;border-radius:9px;font-weight:700;font-size:13px;cursor:pointer;transition:background .12s ease,transform .08s ease;white-space:nowrap}.menu-add-btn:hover{background:var(--color-green)}.menu-add-btn:active{transform:translateY(1px)}.menu-add-btn.added{background:var(--color-green-2)}.deal-cards{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.deal-card{position:relative;padding:16px 18px;border:1px solid var(--color-line);border-radius:14px;background:#fff;display:flex;flex-direction:column;gap:6px;transition:border-color .15s ease,box-shadow .15s ease}.deal-card:hover{border-color:var(--color-line-2);box-shadow:var(--shadow-sm)}.deal-card.active{border-color:color-mix(in srgb,var(--color-green) 40%,var(--color-line));background:color-mix(in srgb,var(--color-green) 3%,#fff)}.deal-card-type{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-green-2)}.deal-card-name{font-size:15px;font-weight:800;letter-spacing:-.01em;line-height:1.25;color:var(--color-ink);margin:0}.deal-card-headline{font-size:14px;font-weight:600;color:var(--color-ink-2)}.deal-card-desc{font-size:13px;color:var(--color-text-2);margin:4px 0 0;line-height:1.5}.deal-card-meta{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:6px;padding-top:8px;border-top:1px dashed var(--color-line);font-size:12px;color:var(--color-muted)}.deal-code code{font-family:var(--font-mono);font-size:11.5px;background:var(--color-surface);color:var(--color-ink);padding:1px 6px;border-radius:4px}
