/* Shopping card presentation; shared navigation and homepage styles stay independent. */
.shopping-browser .shopping-card{min-width:0}
.shopping-browser .shopping-card .card-top{background:#302754;color:#fff;flex-wrap:wrap;min-height:70px;padding:19px 21px;gap:10px}
.shopping-browser .shopping-card .card-kicker{flex:1 1 150px;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.shopping-browser .shopping-card .card-top .status-badge{background:#fff;color:#302754;border-color:transparent;font-weight:700}
.shopping-browser .shopping-card .card-body{padding:22px;gap:0}
.shopping-browser .shopping-card .business-name{font-size:25px;line-height:1.2;margin:0 0 9px;overflow-wrap:anywhere}
.shopping-browser .shopping-name-link{color:var(--orange,#ff2a85);text-decoration:none}
.shopping-browser .shopping-name-link:hover{text-decoration:underline;text-underline-offset:4px}
.shopping-browser .shopping-name-link:focus-visible{outline:3px solid var(--orange,#ff2a85);outline-offset:4px}
.shopping-browser .shopping-card .venue-name{color:#00f5d4;font-size:14px;line-height:1.5;margin-bottom:10px}
.shopping-browser .thing-description{font-size:14px;line-height:1.65;margin:0 0 12px;overflow-wrap:anywhere}
.shopping-browser .shopping-card .card-actions{margin-top:auto;padding-top:20px;gap:8px 12px}
.shopping-browser .shopping-card .card-actions a{display:inline-flex;align-items:center;min-height:44px;max-width:100%;overflow-wrap:anywhere}
.shopping-browser .shopping-card .map-button{background:#00f5d4;color:#0a0b1a;border:1px solid #00f5d4;font-size:12px;font-weight:700;padding:8px 14px;text-decoration:none}
.shopping-browser .shopping-card .map-button:hover{filter:brightness(.92)}
.shopping-browser .shopping-card .legal-notice{margin:16px 0 0;padding-top:12px;border-top:1px solid var(--line)}
:root[data-site-theme=light] .shopping-browser .shopping-card .venue-name{color:#007c70}
@media(max-width:600px){.shopping-browser .shopping-card .card-top{padding:18px}.shopping-browser .shopping-card .card-body{padding:20px}.shopping-count-row{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.shopping-browser .shopping-card{transition:none}.shopping-browser .shopping-card:hover{transform:none}}

/* Individual shop details reuse the unchanged record and card actions. */
.shopping-detail-open{overflow:hidden}
.shopping-browser .shopping-detail-dialog{width:min(640px,calc(100% - 32px));max-width:640px;max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);overscroll-behavior:contain}
.shopping-detail-dialog::backdrop{background:#080a1acc}
.shopping-browser .shopping-detail-close{display:flex;align-items:center;min-height:48px;margin:8px 18px;padding:8px 4px;background:transparent;color:var(--ink);font-weight:700}
.shopping-browser .shopping-detail-dialog .shopping-card{border-radius:0;border-bottom:0}
.shopping-browser .shopping-detail-dialog .shopping-card:hover{transform:none;box-shadow:none}
.shopping-browser .shopping-detail-dialog .business-name{color:var(--orange,#ff2a85);font-size:clamp(26px,5vw,34px)}
.shopping-browser .shopping-detail-dialog .card-actions{margin-top:0}
@media(max-width:600px){.shopping-browser .shopping-detail-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px)}}
