/* SOFON Weather PHASE02 — Compact flag icon dropdown. */
.header-actions { align-items:center; }
.sofon-weather-language { position:relative; flex:0 0 auto; z-index:40; }
.sofon-weather-language-trigger { font-size:23px; line-height:1; color:inherit; }
.sofon-weather-language-trigger > span { display:block; line-height:1; }
.sofon-weather-language-menu {
    position:absolute; top:calc(100% - 1px); right:0; z-index:100;
    min-width:152px; padding:6px; background:var(--surface-strong, #15243a);
    color:var(--text-primary, #fff); border:1px solid var(--surface-border,rgba(50,65,80,.18));
    border-radius:15px; box-shadow:0 14px 36px rgba(12,30,48,.19);
    backdrop-filter:blur(22px); -webkit-backdrop-filter:blur(22px);
    visibility:hidden; opacity:0; transform:translateY(-5px); pointer-events:none;
    transition:opacity .15s ease,transform .15s ease,visibility .15s;
}
.sofon-weather-language:hover .sofon-weather-language-menu,
.sofon-weather-language:focus-within .sofon-weather-language-menu,
.sofon-weather-language.is-open .sofon-weather-language-menu {
    visibility:visible; opacity:1;transform:translateY(0);pointer-events:auto;
}
.sofon-weather-language-option {
    display:flex;align-items:center;justify-content:flex-start;gap:9px;width:100%;
    border:0;border-radius:10px;padding:10px 12px;background:transparent;
    text-align:left;font-size:14px;font-weight:650;font-family:inherit;line-height:1.3;color:inherit;cursor:pointer;
}
.sofon-weather-language-option:hover,.sofon-weather-language-option:focus-visible {
    background:rgba(109,148,175,.14);outline:none;
}
.sofon-weather-language-trigger:focus-visible {outline:2px solid #5b8bef;outline-offset:3px;}
@media (max-width:640px){
    .app-header {gap:8px;}
    .header-actions {gap:5px;}
    .brand {gap:7px;min-width:0;}
    .brand-icon {width:39px;height:39px;}
    .brand-title {font-size:18px;}
    .brand-overline {font-size:8px;}
    .header-actions .icon-button {width:37px;height:37px;border-radius:13px;}
    .sofon-weather-language-trigger {font-size:19px;}
}
@media (max-width:380px){
    .app-header {gap:4px;}
    .header-actions {gap:3px;}
    .brand {gap:5px;}
    .brand-icon {width:31px;height:31px;border-radius:10px;}
    .brand-title {font-size:15px;}
    .brand-overline {font-size:7px;}
    .header-actions .icon-button {width:30px;height:30px;border-radius:10px;font-size:16px;}
    .sofon-weather-language-trigger {font-size:16px;}
}
@media (prefers-reduced-motion: reduce) {
 .sofon-weather-language-menu {transition:none;}
}
