/* Wind & Sway add-on for the Alerts tile + sheet. Orange only (no cyan). No boxes, borders or divider lines – whitespace only. */
.ws-sym,.ws-vsym,.ws-bsym{flex:none}
/* variant i: wind glyph in front of the headline when wind is the headline */
.tile.ws-head .line b{display:inline-flex;align-items:center;gap:5px}
.tile.ws-head .bignum + .line b::before{content:"";width:15px;height:15px;flex:none;background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12.8 19.6A2 2 0 1 0 14 16H2'/%3E%3Cpath d='M17.5 8a2.5 2.5 0 1 1 2 4H2'/%3E%3Cpath d='M9.8 4.4A2 2 0 1 1 11 8H2'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12.8 19.6A2 2 0 1 0 14 16H2'/%3E%3Cpath d='M17.5 8a2.5 2.5 0 1 1 2 4H2'/%3E%3Cpath d='M9.8 4.4A2 2 0 1 1 11 8H2'/%3E%3C/svg%3E") center/contain no-repeat}
/* Caution alone = subtle orange (edge + number), not the full Alerts gradient the host gives every towing item */
.tile.ws-head.ws-l1.alert-on:not(.ws-nws){background:var(--glass);border-color:var(--accent-line)}
.tile.ws-head.ws-l1.alert-on:not(.ws-nws) .t-head{color:var(--mut)}
.tile.ws-head.ws-l1.alert-on:not(.ws-nws) .t-head .ic{color:var(--accent)}
/* variant j: second half, separated by spacing + its own small label; replaces the hazards footer */
.tile.ws-split .sub{display:none}
.ws-half{margin-top:auto;padding-top:8px;display:flex;flex-direction:column;gap:2px}
.ws-lab{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:650;color:var(--mut);text-transform:uppercase;letter-spacing:.09em}
.ws-lab .ic{width:13px;height:13px;color:var(--accent)}
.ws-val{display:flex;align-items:center;gap:6px;font-size:13.5px;color:var(--head);white-space:nowrap;overflow:hidden}
.ws-val .ws-vsym{display:none}
.ws-l2 .ws-val b,.ws-l3 .ws-val b{color:var(--accent)}
/* sheet section */
.ws-sec{margin:26px 0 8px}
.ws-sec .ws-h{margin:0 0 8px}
.ws-okstate .ws-h .ic{color:var(--mut)}
.ws-sample{margin-left:8px;padding:1px 7px;border-radius:99px;background:rgba(255,255,255,.12);color:var(--head);font-size:10px;letter-spacing:.08em}
.ws-quiet{display:flex;align-items:center;gap:8px;color:var(--txt);font-size:15px;margin:4px 0 6px}
.ws-quiet .ic{width:17px;height:17px;color:var(--mut)}
.ws-hero{display:flex;align-items:center;gap:16px;margin:2px 0 10px}
.ws-big{display:flex;align-items:center;gap:6px;font-size:54px;font-weight:300;line-height:1;letter-spacing:-.04em;color:var(--head);font-variant-numeric:tabular-nums}
.ws-big small{font-size:16px;font-weight:550;letter-spacing:0;color:var(--txt);align-self:flex-end;padding-bottom:6px}
.ws-big .ws-sym{width:40px;height:40px;stroke-width:1.6;margin-left:6px}
.ws-lvl{display:flex;flex-direction:column;font-size:20px;font-weight:650;color:var(--head)}
.ws-lvl span{font-size:13px;font-weight:500;color:var(--mut)}
.ws-l1 .ws-big,.ws-l1 .ws-lvl{color:var(--accent)}
.ws-l2 .ws-big,.ws-l2 .ws-lvl,.ws-l3 .ws-big,.ws-l3 .ws-lvl{color:var(--accent)}
.ws-l2 .ws-big,.ws-l3 .ws-big{font-weight:400}
.ws-row{display:grid;grid-template-columns:118px 1fr;gap:12px;padding:9px 0;align-items:baseline}
.ws-k{font-size:13px;color:var(--mut)}
.ws-v{font-size:15px;color:var(--head);line-height:1.35}
.ws-v small{display:block;font-size:13px;color:var(--mut);margin-top:2px}
.ws-more{margin-top:10px}
.ws-more>summary{min-height:44px;display:flex;align-items:center;cursor:pointer;color:var(--txt);font-size:14px}
.ws-tbl{font-size:12.5px;font-variant-numeric:tabular-nums;margin:8px 0}
.ws-tr{display:grid;grid-template-columns:42px 64px 50px 1fr 64px 62px;gap:6px;padding:3px 0;color:var(--txt)}
.ws-th{color:var(--mut);font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.ws-r1,.ws-r2,.ws-r3{color:var(--accent)}
/* CarPlay-size banner */
.ws-banner{display:flex;align-items:center;gap:18px;padding:18px 22px;border-radius:22px;border:1px solid var(--accent-line);background:var(--glass);color:var(--head)}
.ws-banner.ws-l2,.ws-banner.ws-l3{background:linear-gradient(160deg,rgba(255,159,10,.24),rgba(255,159,10,.06) 60%),var(--glass)}
.ws-banner .ws-bsym{width:46px;height:46px;color:var(--accent);stroke-width:1.8}
.ws-banner b{display:block;font-size:30px;font-weight:650;color:var(--accent)}
.ws-banner span{display:block;font-size:20px;color:var(--txt);margin-top:2px}
.tile.ws-split .bignum{margin-bottom:0}
.tile.ws-split .ws-half{padding-top:3px;gap:0}
.ws-sec button{min-height:44px}
/* j quiet half (OK / blank / no trailer): neutral, body-text colours only */
.ws-quiet0 .ws-lab .ic{color:var(--mut)}
.ws-quiet0 .ws-val b{color:var(--txt);font-weight:600}
.ws-soft{color:var(--mut);font-weight:400}
/* the forecast-hazard branch has two .line rows – keep the first so the half fits the standard tile height */
.tile.ws-split .bignum ~ .line + .line{display:none}
/* forecast failed: friendly message + Retry (back-off countdown) */
.ws-errstate .ws-errhint{margin:0 0 10px}
.ws-retry{min-height:44px;min-width:120px;justify-content:center}
.ws-retry .ic{width:16px;height:16px}
.ws-retry[disabled]{opacity:.55;cursor:default}
