/* Xionia v24 — shared content boundaries, scoped to Snow Atlas and search.
   Real containing blocks, not overflow-x:hidden. Maps and forecast tables keep
   their own scroll containers. Does not target Leaflet tiles or dialogs. */
body[data-x23-atlas] > main,
body[data-x23-atlas] > header.header,
body[data-x23-atlas] > footer.footer.xionia-footer,
body.xionia-search-page > main,
body.xionia-search-page > footer.xionia-footer {
  box-sizing:border-box;
  width:min(1180px,calc(100% - 24px));
  max-width:1180px;
  min-width:0;
  margin-inline:auto;
}
body[data-x23-atlas] > main {padding:0;}
body[data-x23-atlas] > main > .wrap,
body[data-x23-atlas] > header.header > .wrap,
body[data-x23-atlas] > footer.footer.xionia-footer > .wrap {
  box-sizing:border-box;width:100%;max-width:100%;min-width:0;margin-inline:auto;
}
body[data-x23-atlas] > header.header {padding:0 clamp(14px,2vw,24px);border-radius:12px;}
body[data-x23-atlas] > footer.footer.xionia-footer {padding-inline:clamp(14px,2vw,24px);border-radius:12px;}
body[data-x23-atlas] > main > :is(.hero,.country-section) {width:100%;max-width:100%;border-radius:12px;}
body[data-x23-atlas] > main > .hero .wrap,
body[data-x23-atlas] > main > .country-section > .wrap {
  box-sizing:border-box;width:calc(100% - 40px);max-width:100%;margin-inline:auto;
}
body[data-x23-atlas] > main > :is(.xf-discovery,.xionia-model-guide,.xionia-source-guide,.xionia-provider-guide),
body[data-x23-atlas] > main .x23-info-bound {
  box-sizing:border-box;width:100%;max-width:100%;min-width:0;margin:24px auto;
}
body[data-x23-atlas] > main :is(.detail-layout,.detail-main,.detail-aside,.atlas-weather,.atlas-history,.atlas-home-map-panel,.country-grid,.grid,.model-guide-grid,.mapped-facts) {min-width:0;max-width:100%;}
body[data-x23-atlas] > main :is(.atlas-weather,.atlas-history,.detail-aside,.xf-discovery,.x23-info-bound) {overflow-wrap:anywhere;}
body[data-x23-atlas] .mapped-facts dl {grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));}
body[data-x23-atlas] .footer-top,
body[data-x23-atlas] .footer-links,
body[data-x23-atlas] .footer-bottom {flex-wrap:wrap;min-width:0;}
body[data-x23-atlas] .footer-links {justify-content:center;gap:12px 22px;}
body[data-x23-atlas] .footer-bottom > p {min-width:0;flex:1 1 260px;overflow-wrap:anywhere;}
body[data-x23-atlas] :is(.atlas-table,.xf-comparison,.xf-blend-scroll,.summit-scroll) {min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;}
body.xionia-search-page > main {padding:0;margin-block:24px 32px;}
.xionia-search-page .x24-search-intro {display:block;padding:clamp(18px,3vw,28px);margin:0 0 20px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--text);}
.xionia-search-page .x24-search-intro h1 {font-size:clamp(26px,4vw,38px);line-height:1.2;margin:8px 0 12px;letter-spacing:normal;}
.xionia-search-page .x24-search-intro p {max-width:76ch;color:var(--muted);}
.xionia-search-page .x24-breadcrumb {display:flex;flex-wrap:wrap;gap:8px;font-size:14px;margin:0 0 16px;}
.xionia-search-page .x23-search-page {width:100%;max-width:100%;margin:0;border-radius:14px;}
.xionia-search-page .x24-search-links {padding:clamp(18px,3vw,28px);margin-top:24px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--text);}
.xionia-search-page .x24-search-links h2 {margin:0 0 16px;}
.xionia-search-page .x24-section-links {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px;}
.xionia-search-page .x24-section-links a {display:flex;align-items:center;min-width:0;min-height:54px;padding:12px 16px;border:1px solid var(--line);border-radius:10px;text-decoration:none;overflow-wrap:anywhere;}
.xionia-search-page .x24-section-links a:hover {border-color:var(--accent);text-decoration:underline;}
.xionia-search-page .x23-search-foot {border-radius:0 0 14px 14px;}
.xionia-search-page > footer.xionia-footer {border-top:1px solid var(--line);}
.xionia-search-page .x23-search-results a {transition:background-color .12s ease,border-color .12s ease;}
@media(max-width:600px) {
  body[data-x23-atlas] > main > .hero .wrap,
  body[data-x23-atlas] > main > .country-section > .wrap {width:calc(100% - 28px);}
  body[data-x23-atlas] .footer-top {justify-content:center;}
  body[data-x23-atlas] .footer-bottom {display:block;}
  body.xionia-search-page > main {margin-top:16px;}
  .xionia-search-page .x23-search-head,.xionia-search-page .x23-search form {padding-inline:14px;}
  .xionia-search-page .x23-search-results {padding-inline:14px!important;}
  .xionia-search-page .x23-search-status {padding-inline:14px;}
}
@media(prefers-reduced-motion:reduce) {.xionia-search-page .x23-search-results a {transition:none;}}

/* Credits grids may not use their content's unbroken URL as minimum width. */
body[data-x23-atlas] .credits {grid-template-columns:minmax(0,1fr);}
body[data-x23-atlas] :is(.credits,.credit-item,.prose) {min-width:0;max-width:100%;overflow-wrap:anywhere;}
/* The forecast theme's generic mobile nav selector must not turn the shared
   menu or breadcrumb into a vertical column on standalone search pages. */
body.xionia-search-page > nav.xionia-nav {flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:center;}
.xionia-search-page nav.x24-breadcrumb {flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-start;}
