/* ==========================================================================
   P1218.1 — canonical Weather Outlook matrix primitives
   Keeps embedded homepage fragments and full DataTable pages aligned without
   requiring the report-only DataTable stylesheet on the homepage.
   ========================================================================== */
.sw-weather-outlook-table{
  width:var(--sw-weather-outlook-table-width,50.75rem)!important;
  min-width:var(--sw-weather-outlook-table-min-width,50.75rem);
  max-width:none;
  table-layout:fixed;
}
.sw-weather-outlook-table col.sw-wo-col-resort{width:11.5rem}
.sw-weather-outlook-table col.sw-wo-col-weather{width:1.8rem}
.sw-weather-outlook-table col.sw-wo-col-precip{width:2.15rem}
.sw-weather-outlook-table col.sw-wo-col-temp{width:1.95rem}
.sw-wo-weather-cell{width:1.8rem;min-width:1.8rem;max-width:1.8rem;padding-inline:.08rem!important;text-align:center;vertical-align:middle}
.sw-wo-weather{display:inline-flex;width:1.56rem;min-width:1.56rem;min-height:1.55rem;align-items:center;justify-content:center;line-height:1}
.sw-wo-weather .wt-sprite{display:inline-block;margin:0;transform:scale(.72);transform-origin:center}
.sw-wo-precip-cell{width:2.15rem;min-width:2.15rem;max-width:2.15rem;text-align:center}
.sw-wo-precip{display:inline-flex;align-items:center;justify-content:center;min-width:0;padding:0 .02rem;border-radius:0;background:transparent;font-size:.66rem!important;font-variant-numeric:tabular-nums;font-weight:600;line-height:1.05;white-space:nowrap}
.sw-wo-temp{width:1.95rem;min-width:1.95rem;max-width:1.95rem;font-size:.70rem;font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap;text-align:center}
@media(max-width:991.98px){
  .sw-weather-outlook-table{width:47rem!important;min-width:47rem}
  .sw-weather-outlook-table col.sw-wo-col-resort{width:9.75rem}
  .sw-weather-outlook-table col.sw-wo-col-weather{width:1.7rem}
  .sw-weather-outlook-table col.sw-wo-col-precip{width:2.05rem}
  .sw-weather-outlook-table col.sw-wo-col-temp{width:1.85rem}
}


/* Homepage/top compact outlook: country + resort + four two-column day groups. */
.sw-weather-outlook-compact-frame{
  width:100%;
  min-width:0;
  overflow-x:auto;
  overscroll-behavior-inline:contain;
  -webkit-overflow-scrolling:touch;
}
.sw-weather-outlook-compact{
  width:100%!important;
  min-width:54rem;
  table-layout:fixed;
  border-collapse:collapse;
}
.sw-weather-outlook-compact col.sw-wo-compact-col-flag{width:1.8rem}
.sw-weather-outlook-compact col.sw-wo-compact-col-resort{width:15.5rem}
.sw-weather-outlook-compact col.sw-wo-compact-col-weather{width:5.2rem}
.sw-weather-outlook-compact col.sw-wo-compact-col-temp{width:3.5rem}
.sw-weather-outlook-compact thead th{
  padding:.28rem .25rem;
  text-align:center;
  vertical-align:middle;
  white-space:nowrap;
}
.sw-weather-outlook-compact .sw-wo-compact-head-resort{text-align:left}
.sw-weather-outlook-compact tbody td{
  padding:.24rem .25rem;
  vertical-align:middle;
}
.sw-weather-outlook-compact tbody td:nth-child(1),
.sw-weather-outlook-compact .sw-wo-compact-flag{text-align:center}
.sw-weather-outlook-compact tbody td:nth-child(2),
.sw-weather-outlook-compact .sw-wo-compact-resort{
  overflow:hidden;
  text-align:left;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.sw-weather-outlook-compact tbody td:nth-child(2n+3),
.sw-weather-outlook-compact .sw-wo-compact-weather{
  position:relative;
  text-align:center;
  white-space:nowrap;
}
.sw-weather-outlook-compact tbody td:nth-child(2n+4),
.sw-weather-outlook-compact .sw-wo-compact-temp{
  text-align:center;
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
}
.sw-weather-outlook-compact .wt-sprite{
  display:inline-block;
  margin:0 .08rem 0 0;
  vertical-align:middle;
  transform:scale(.72);
  transform-origin:center;
}
.sw-weather-outlook-compact .badge{
  display:inline-flex;
  vertical-align:middle;
  align-items:center;
  justify-content:center;
  margin:0;
}
@media(max-width:760px){
  .sw-weather-outlook-compact{min-width:48rem}
  .sw-weather-outlook-compact col.sw-wo-compact-col-resort{width:12rem}
}
