
.bo-lang-ui{position:fixed;left:18px;bottom:18px;z-index:10050;font-family:Arial,Helvetica,sans-serif;direction:ltr}
.bo-lang-button{border:1px solid #d9a72f;background:#0b1420;color:#fff;border-radius:999px;padding:11px 14px;font-weight:800;box-shadow:0 8px 28px #0008;min-width:74px}
.bo-lang-panel{position:absolute;left:0;bottom:54px;width:min(270px,calc(100vw - 36px));max-height:62vh;overflow:auto;padding:9px;background:#07101a;border:1px solid #73551c;border-radius:14px;box-shadow:0 18px 50px #000c;display:grid;grid-template-columns:1fr 1fr;gap:7px}
.bo-lang-panel[hidden]{display:none!important}
.bo-lang-option{background:#101722;color:#f6f7f9;border:1px solid #303846;border-radius:9px;padding:10px 8px;text-align:left;font-weight:700}
.bo-lang-option.active{border-color:#e9b83f;box-shadow:inset 0 0 0 1px #e9b83f;color:#ffd76a}
html[dir="rtl"] body{direction:rtl;text-align:right}
html[dir="rtl"] .brand,html[dir="rtl"] .phone,html[dir="rtl"] .call,html[dir="rtl"] .bo-lang-ui{direction:ltr}
html[dir="rtl"] input[type="email"],html[dir="rtl"] input[type="tel"],html[dir="rtl"] input[id*="eircode" i],html[dir="rtl"] #eircode{direction:ltr;text-align:left}
@media(max-width:600px){.bo-lang-ui{left:12px;bottom:14px}.bo-lang-panel{grid-template-columns:1fr 1fr}.bo-lang-button{padding:10px 12px}}
@media print{.bo-lang-ui{display:none!important}}

.bo-lang-option{display:flex;align-items:center;gap:9px}.bo-lang-flag{font-size:20px;line-height:1;flex:0 0 auto}.bo-lang-option span:last-child{min-width:0}.bo-lang-button{display:inline-flex;align-items:center;justify-content:center;gap:6px}

.bo-translation-status{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:10001;background:#101722;color:#fff;border:1px solid #e9b83f;border-radius:999px;padding:8px 14px;font-size:12px;box-shadow:0 6px 25px #0008}.bo-translation-status.busy{border-color:#58b5ff}.bo-translation-status[hidden]{display:none!important}

/* V19.4: language control is present in HTML, so it stays visible even if translation requests fail. */
.bo-lang-ui{z-index:2147483000!important;left:max(12px,env(safe-area-inset-left));bottom:max(14px,env(safe-area-inset-bottom));pointer-events:auto!important}
.bo-lang-ui.bo-lang-static>summary{list-style:none;cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent}
.bo-lang-ui.bo-lang-static>summary::-webkit-details-marker{display:none}
.bo-lang-ui.bo-lang-static:not([open]) .bo-lang-panel{display:none!important}
.bo-lang-ui.bo-lang-static[open] .bo-lang-panel{display:grid!important}
.bo-lang-option{text-decoration:none;cursor:pointer}
.bo-lang-option:active{transform:none}

/* V19.6: translation runs silently; never cover page content with a stuck status pill. */
.bo-translation-status{display:none!important}

/* V19.7: don't show English helper subtitles inside visual cards in non-English modes. */
html:not([lang="en"]) .visual-card .sub { display:none !important; }
