/* Public language choice and compact bilingual transport; established palette and type. */
.language-switch { display:flex; align-items:center; gap:2px; padding:2px; border:1px solid var(--line); border-radius:10px; flex-shrink:0; }
.language-switch button { appearance:none; display:flex; align-items:center; justify-content:center; gap:6px; min-height:44px; padding:0 8px; border:0; border-radius:7px; background:transparent; color:var(--muted); font:inherit; font-size:12px; cursor:pointer; }
.language-switch button[aria-pressed=true] { background:var(--accent-soft); color:var(--blue-strong); font-weight:650; box-shadow:inset 0 0 0 1px var(--line); }
.flag { width:20px; height:14px; border-radius:2px; flex-shrink:0; }
.brand-product > [data-i18n] { color:inherit; }
.topbar-inner { flex-wrap:wrap; gap:10px; }
.language-switch { margin-left:auto; }
.weather-topbar .header-observation { margin-left:auto; }
.weather-topbar .language-switch { margin-left:0; }
.atis-inline { min-width:0; }
.atis-inline .atis-listen { appearance:none; -webkit-appearance:none; width:100%; text-align:left; cursor:pointer; font-family:inherit; }
.atis-mini { padding:5px 2px 0; }
.atis-mini[hidden] { display:none; }
#atis-playback-status { display:block; font-size:11px; color:var(--muted); padding:3px 5px; }
.atis-mini-controls { display:flex; flex-wrap:wrap; gap:3px; }
.atis-mini-controls button { appearance:none; flex:1; min-height:44px; padding:0 5px; border:1px solid var(--line); border-radius:7px; background:var(--surface); color:var(--text); font:inherit; font-size:11px; cursor:pointer; }
.atis-mini-controls button:hover { background:var(--accent-soft); }
@media (min-width:768px) and (max-width:1199px) {
 .topbar .topbar-inner { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:0 14px; padding-top:8px; padding-bottom:8px; }
 .topbar .brand { grid-column:1; grid-row:1; }
 .topbar .language-switch { grid-column:2; grid-row:1; margin:0; }
 .topbar .top-actions { grid-column:3; grid-row:1; }
 .weather-topbar .header-observation { grid-column:1/-1; grid-row:2; max-width:none; justify-content:flex-end; gap:5px; margin:0; font-size:10px; }
 .weather-topbar .header-observation #weather-age { margin:0; }
 .topbar .utc-clock { display:none; }
}
@media (max-width:767px) {
 .topbar .topbar-inner { display:grid; grid-template-columns:minmax(0,1fr) auto; padding:10px 16px 6px; gap:3px 8px; }
 .topbar .brand { grid-row:1; grid-column:1; }
 .topbar .top-actions { grid-row:1; grid-column:2; }
 .topbar .language-switch { grid-row:2; grid-column:1/-1; justify-self:end; margin:0; }
 .topbar .language-switch button { font-size:11px; gap:5px; padding:0 7px; }
 .topbar .utc-clock { display:none; }
 .weather-topbar .header-observation { grid-row:2; grid-column:1/-1; max-width:calc(100% - 202px); align-content:center; align-self:center; justify-self:start; margin:0; gap:2px 4px; flex-wrap:wrap; font-size:10px; }
 .weather-topbar .header-observation time, .weather-topbar #weather-age { white-space:normal; }
 [data-page=meteo] .atis-inline { grid-area:atis; }
}
