/* Floating language + currency switchers (bottom-start; WhatsApp is bottom-end) */
.fsw { position: fixed; bottom: 30px; inset-inline-start: 30px; z-index: 500; display: flex; flex-direction: column-reverse; gap: 12px; }
.fsw[hidden] { display: none; }
.fsw-item { position: relative; }
.fsw-btn {
    width: 56px; height: 56px; border-radius: 50%; border: 0; cursor: pointer;
    background: #fff; color: var(--color-primary-darker);
    display: flex; align-items: center; justify-content: center;
    box-shadow: 0 4px 20px rgba(44, 30, 19, 0.18), inset 0 0 0 2px var(--color-primary);
    transition: transform .25s ease, box-shadow .25s ease;
}
.fsw-btn:hover, .fsw-item.open .fsw-btn { transform: scale(1.08); box-shadow: 0 6px 26px rgba(232, 115, 74, .35), inset 0 0 0 2px var(--color-primary); }
#fswCur .fsw-btn { background: linear-gradient(135deg, #e8734a, #c2693d); color: #fff; box-shadow: 0 4px 20px rgba(232, 115, 74, .4); }
.fsw-cur-sym { font: 700 1rem/1 var(--font-body, sans-serif); letter-spacing: -.02em; }
.fsw-flag { font-size: 1.7rem; line-height: 1; }
.fsw-menu {
    position: absolute; bottom: 0; inset-inline-start: 68px; min-width: 210px;
    background: #fff; border-radius: 14px; padding: 8px; box-shadow: 0 12px 40px rgba(44, 30, 19, .22);
    opacity: 0; visibility: hidden; transform: translateX(-8px); transition: all .2s ease;
}
[dir="rtl"] .fsw-menu { transform: translateX(8px); }
.fsw-item.open .fsw-menu { opacity: 1; visibility: visible; transform: none; }
.fsw-menu-lang { display: grid; grid-template-columns: 1fr 1fr; min-width: 300px; }
.fsw-menu-title { grid-column: 1 / -1; font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--color-text-muted); padding: 6px 10px 8px; }
.fsw-opt {
    display: flex; align-items: center; gap: 10px; width: 100%; padding: 9px 10px; border: 0; background: none;
    border-radius: 9px; font: inherit; font-size: .92rem; color: var(--color-text); text-align: start; cursor: pointer; text-decoration: none;
}
.fsw-opt b { min-width: 34px; color: var(--color-primary-darker); }
.fsw-opt span { font-size: 1.2rem; }
.fsw-opt:hover { background: var(--color-bg-warm-light); }
.fsw-opt.is-current { background: var(--color-bg-warm); font-weight: 600; }
@media (max-width: 768px) {
    .fsw { bottom: 20px; inset-inline-start: 20px; gap: 10px; }
    .fsw-btn { width: 50px; height: 50px; }
    .fsw-menu { inset-inline-start: 60px; }
    .fsw-menu-lang { min-width: 250px; }
}
.fsw-note { margin: 6px 4px 2px; padding: 8px 6px 2px; border-top: 1px solid var(--color-border); font-size: .74rem; line-height: 1.45; color: var(--color-text-muted); max-width: 230px; }
