/* Business pages: open-now badge on the card, comparison with the city and nearby businesses. */
.sag-open-now { display: inline-flex; align-items: center; gap: 7px; margin: 8px 0 0 !important; padding: 4px 12px; border-radius: 999px; font-size: 13px; font-weight: 700; line-height: 1.4; }
.sag-open-now::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: currentColor; }
.sag-open-now.is-open { background: #ecfdf3; color: #15803d; }
.sag-open-now.is-closed { background: #fef2f2; color: #b91c1c; }
.sag-open-now[hidden] { display: none !important; }

.sag-biz-context {
    --sag-biz-accent: var(--sag-recipe-accent, #c2410c);
    container-type: inline-size; margin: 32px 0; padding: clamp(18px, 3vw, 26px);
    background: #fff; border: 1px solid #efe4da; border-radius: 20px; color: #2a1f1a; line-height: 1.5; box-sizing: border-box;
}
.sag-biz-context *, .sag-biz-context *::before { box-sizing: border-box; }
.sag-biz-context p { margin: 0; }
.sag-biz-context dl, .sag-biz-context dd { margin: 0; padding: 0; }
.sag-biz-context dt, .sag-biz-context dd { text-decoration: none; border: 0; }
.sag-biz-context ul { list-style: none !important; margin: 0 !important; padding: 0 !important; }
.sag-biz-context li { margin: 0; }
.sag-biz-context li::before, .sag-biz-context li::marker { content: none; }
.sag-biz-context__eyebrow { display: inline-block; margin-bottom: 14px !important; padding: 5px 12px; border-radius: 999px; background: #fff1e6; color: #9a3412; font-size: .74em; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.sag-biz-context__stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; }
.sag-biz-stat { padding: 12px 14px; border: 1px solid #efe4da; border-radius: 14px; background: #fbf6f0; }
.sag-biz-stat dt { font-size: .72em; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; color: #7a6a60; }
.sag-biz-stat dd { margin-top: 3px; font-size: 1.3em; font-weight: 800; line-height: 1.2; color: #2a1f1a; }
.sag-biz-stat dd.sag-biz-stat__note { font-size: .8em; font-weight: 500; color: #7a6a60; }
.sag-biz-stat--rating dd:not(.sag-biz-stat__note) { color: #b45309; }
.sag-biz-stat__bar { height: 7px; margin-top: 8px !important; border-radius: 999px; background: #fff; overflow: hidden; }
.sag-biz-stat__bar span { display: block; height: 100%; border-radius: 999px; background: var(--sag-biz-accent); }
.sag-biz-context__title { margin: 22px 0 10px !important; font-size: 1.08em; font-weight: 700; }
.sag-biz-context__nearby { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 10px; }
.sag-biz-context__nearby a { display: flex; flex-direction: column; gap: 3px; height: 100%; padding: 12px 14px; border: 1px solid #efe4da; border-radius: 14px; color: #2a1f1a !important; text-decoration: none !important; transition: border-color .15s, background-color .15s; }
.sag-biz-context__nearby a:hover, .sag-biz-context__nearby a:focus-visible { border-color: var(--sag-biz-accent); background: #fff7ed; }
.sag-biz-nearby__name { font-weight: 700; line-height: 1.3; }
.sag-biz-nearby__name::after { content: " →"; color: var(--sag-biz-accent); }
.sag-biz-context[dir="rtl"] .sag-biz-nearby__name::after { content: " ←"; }
.sag-biz-nearby__rating { font-size: .86em; font-weight: 700; color: #b45309; }
@container (max-width: 420px) { .sag-biz-context__stats { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media print { .sag-biz-context { border: 1px solid #ddd; break-inside: avoid; } .sag-open-now { display: none !important; } }
