.region-results{align-items:start}
.region-result-card.result-v2,.empty-state .result-card.result-v2,.events-hub .event-hub-card.result-v2{display:grid;grid-template-columns:4.75rem minmax(0,1fr);grid-template-rows:auto;align-content:start;gap:.8rem;min-height:0;padding:.85rem;margin-block:.5rem;border:1px solid #63718066;border-radius:.8rem;background:linear-gradient(125deg,#172636,#101923);color:#f0f3f7;box-shadow:0 5px 18px #0002;box-sizing:border-box;overflow:visible}
.result-v2 .result-v2-visual{display:grid;place-items:center;position:relative;margin:0;width:4.75rem;height:4.75rem;min-height:0;overflow:hidden;border:1px solid #d5b87555;border-radius:.65rem;background:linear-gradient(145deg,#344e67,#16293d);color:#e8c980}
.result-v2-visual[data-category=doctor],.result-v2-visual[data-category=hospital],.result-v2-visual[data-category=pharmacy]{background:linear-gradient(140deg,#285c62,#172f41);color:#bfebe2}
.result-v2-visual[data-category=nature],.result-v2-visual[data-category=family]{background:linear-gradient(140deg,#345940,#172e2b);color:#d3e1ac}
.result-v2-visual[data-category=restaurant],.result-v2-visual[data-category=cafe],.result-v2-visual[data-category=festival]{background:linear-gradient(140deg,#72543d,#302434);color:#f4d5a1}
.result-v2-visual[data-category=museum],.result-v2-visual[data-category=music],.result-v2-visual[data-category=event]{background:linear-gradient(140deg,#544268,#1c293e);color:#e4d2ff}
.result-v2-visual svg{width:2.3rem;height:2.3rem}.result-v2-visual img{width:100%;height:100%;object-fit:cover}.result-v2-visual figcaption,.result-v2-credit{position:absolute;inset:auto 0 0;padding:.15rem;background:#000c;color:white;font:.5rem/1.2 system-ui;max-height:2rem;overflow:auto}
.result-v2-body{min-width:0}.result-v2-body h2,.result-v2-body h3,.empty-state .result-v2-body h3{margin:0 0 .25rem;color:#fff;font:650 1rem/1.3 system-ui;overflow-wrap:anywhere}
.result-v2 .result-v2-body p,.empty-state .result-v2 .result-v2-body p{margin:.25rem 0;color:#c6d0db;font:.82rem/1.4 system-ui;overflow-wrap:anywhere}
.result-v2 .result-v2-category,.result-v2 time.result-v2-date{display:block;margin:.2rem 0;color:#e7c781;font:.75rem/1.4 system-ui}.result-v2-date{font-weight:650}.result-v2-description{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.result-v2 .result-v2-actions,.result-v2 .event-hub-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;margin:.5rem 0 0}.result-v2 .result-v2-actions>a,.result-v2 .result-v2-actions>button,.result-v2 .result-v2-actions summary,.result-v2 .event-hub-actions>a{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;padding:.4rem .65rem;margin:0;border:1px solid #bda66b80;border-radius:.4rem;background:#243140;color:#f2deae;font:600 .76rem/1.3 system-ui;text-decoration:none;cursor:pointer;overflow-wrap:anywhere;box-sizing:border-box}
.result-v2 a:focus-visible,.result-v2 button:focus-visible,.result-v2 summary:focus-visible{outline:2px solid #edcc82;outline-offset:2px}.result-v2-details{position:relative}.result-v2-detail-body{padding:.7rem;min-width:10rem;border:1px solid #637180;background:#142231;color:#e5edf4;border-radius:.4rem}.result-v2 .result-v2-actions details{max-width:100%}.result-v2 .result-v2-actions details[open]{flex-basis:100%}.result-v2 .result-v2-actions details[open]>summary{width:max-content}
@media(max-width:600px){.region-result-card.result-v2,.empty-state .result-card.result-v2,.events-hub .event-hub-card.result-v2{grid-template-columns:3.5rem minmax(0,1fr);gap:.65rem;padding:.7rem}.result-v2 .result-v2-visual{width:3.5rem;height:3.5rem}.result-v2 .result-v2-visual svg{width:1.8rem;height:1.8rem}.result-v2 .result-v2-actions{gap:.3rem}}

/* Compact shared cards; decorative fallback graphics require no downloads. */
.region-result-card.result-v2,.empty-state .result-card.result-v2,.events-hub .event-hub-card.result-v2{align-items:start;gap:.65rem;padding:.7rem;margin-block:.35rem}
.result-v2 .result-v2-visual::before{content:'';position:absolute;width:80%;height:80%;border:1px solid currentColor;border-radius:50%;opacity:.12;pointer-events:none}
.result-v2 .result-v2-visual svg{position:relative;z-index:1}
.result-v2 .result-v2-visual img{position:relative}
.result-v2-visual[data-category=transport],.result-v2-visual[data-category=mechanic],.result-v2-visual[data-category=carDealer]{background:linear-gradient(135deg,#254c70,#182f3c);color:#c5e3ff}
.result-v2-visual[data-category=office],.result-v2-visual[data-category=bank],.result-v2-visual[data-category=castles]{background:linear-gradient(135deg,#5b5137,#27323d);color:#f0dc9e}
.result-v2-visual[data-category=shop],.result-v2-visual[data-category=hotel],.result-v2-visual[data-category=school]{background:linear-gradient(135deg,#5b3e61,#263348);color:#efd5ed}
.result-v2 .result-v2-body{align-self:start;min-height:0;padding:0}
.result-v2 .result-v2-body h3{min-height:0;margin:0 0 .15rem}
.result-v2 .result-v2-body p{margin:.2rem 0}
.result-v2 .result-v2-actions{margin-top:.35rem;gap:.3rem}
.result-v2 .result-v2-details{min-width:0}
.result-v2 .result-v2-detail-body{min-width:0;max-width:100%;overflow-wrap:anywhere}
.result-v2 .result-v2-date-range time{display:inline}
@media(max-width:600px){.result-v2 .result-v2-visual{width:3rem;height:3rem}.region-result-card.result-v2,.empty-state .result-card.result-v2,.events-hub .event-hub-card.result-v2{grid-template-columns:3rem minmax(0,1fr);gap:.55rem;padding:.6rem}}

/* OWNER: readable, compact event lists; independent controls stay above the stretched detail link. */
.canonical-events .event-hub-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,23rem),1fr));align-items:start}
.canonical-events .event-hub-card.result-v2 .result-v2-actions>:not(.event-card-detail){position:relative;z-index:3}

/* Cards follow their actual container width, including a narrow assistant on desktop. */
#assistant-status .region-results,.region-results:has(>.result-v2){grid-template-columns:repeat(auto-fit,minmax(min(100%,26rem),1fr));align-items:start;min-width:0}
.region-result-card.result-v2,.empty-state .result-card.result-v2,.events-hub .event-hub-card.result-v2{min-width:0;max-width:100%}
.result-v2 .result-v2-body h2,.result-v2 .result-v2-body h3,.result-v2 .result-v2-body p,.result-v2 .result-v2-category{overflow-wrap:normal;word-break:normal;white-space:normal}
.result-v2 .result-v2-actions>a,.result-v2 .result-v2-actions>button,.result-v2 .result-v2-actions summary{overflow-wrap:normal;word-break:normal;max-width:100%}
.result-v2 .result-v2-nearby{display:block;color:#e7c781;font:.75rem/1.4 system-ui}
.result-v2 .result-v2-rights{display:block;position:static;color:#c6d0db;font:.7rem/1.4 system-ui;margin-top:.4rem}
.result-v2 .result-v2-detail-body a{display:inline-block;margin:.35rem;overflow-wrap:anywhere}

/* Global narrow-panel qualification: reserve useful text width even on a large screen. */
.region-results:has(>.result-v2){container-type:inline-size}
.result-v2 .result-v2-body h2,.result-v2 .result-v2-body h3,.result-v2 .result-v2-body p{overflow-wrap:break-word;word-break:normal;hyphens:auto}
@container(max-width:25rem){
 .region-result-card.result-v2{grid-template-columns:2.25rem minmax(0,1fr);padding:.5rem;gap:.5rem}
 .result-v2 .result-v2-visual{width:2.25rem;height:2.25rem}
 .result-v2 .result-v2-visual svg{width:1.5rem;height:1.5rem}
}

/* Search controls follow container width; keep the complete input above actions. */
.search-panel{container-type:inline-size}
@container(max-width:28rem){
 .search-panel .query-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.5rem;min-width:0}
 .search-panel .query-row #query{grid-column:1/-1;width:100%;min-width:0;max-width:100%;box-sizing:border-box}
 .search-panel .query-row #query-button{grid-column:2;min-width:0;max-width:100%;white-space:normal}
}
