/* CATNARA multilingual public header control; admin CMS is not translated. */
.catnara-language-switch{position:relative;display:flex;align-items:center;flex:0 0 auto;z-index:45;font-family:system-ui,-apple-system,"Noto Sans",sans-serif}
.catnara-language-trigger{box-sizing:border-box;height:36px;min-width:58px;padding:0 9px;border:1px solid rgba(130,101,96,.22);border-radius:11px;background:#fffdfb;color:#54423d;font:800 11px/1 system-ui,sans-serif;white-space:nowrap;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.catnara-language-trigger:hover{background:#faf0ee}
.catnara-language-trigger:focus-visible,.catnara-language-options button:focus-visible{outline:3px solid #bf7f86;outline-offset:2px}
.catnara-language-options{position:absolute;top:calc(100% + 7px);right:0;min-width:164px;box-sizing:border-box;padding:5px;border:1px solid #eadbd6;border-radius:14px;background:#fffefc;color:#362b28;box-shadow:0 12px 30px rgba(53,34,31,.18);z-index:1001}
.catnara-language-options[hidden]{display:none!important}
.catnara-language-options button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:39px;padding:8px 10px;border:0;border-radius:9px;background:transparent;text-align:left;font:800 12px/1.2 system-ui,sans-serif;color:#453533;cursor:pointer;touch-action:manipulation}
.catnara-language-options button small{font-size:11px;font-weight:550;color:#776765}
.catnara-language-options button:hover,.catnara-language-options button[aria-checked="true"]{background:#f8e9e8;color:#8c4853}
@media(min-width:821px){
 #app .public-header>.catnara-language-switch{margin-left:-12px;margin-right:-14px}
 #app .minimal-header>.catnara-language-switch,#app .cat-header>.catnara-language-switch,#app .editorial-mast>.catnara-language-switch{margin:0 8px}
 #app .impact-actions>.catnara-language-switch{margin-bottom:9px}
 #app .mobile-site-chrome .catnara-language-switch{display:none!important}
}
@media(max-width:820px){
 #app .public-header>.catnara-language-switch,#app .minimal-header>.catnara-language-switch,
 #app .cat-header>.catnara-language-switch,#app .editorial-header .catnara-language-switch,
 #app .impact-sidebar .catnara-language-switch{display:none!important}
 #app .mobile-site-bar-actions>.catnara-language-switch{margin-right:2px}
 #app .mobile-site-bar-actions .catnara-language-trigger{min-width:43px;height:38px;padding:0 5px;font-size:10px}
 #catnara-app-home-v3 .catapp-original-header-actions>.catnara-language-switch{margin-right:0;z-index:21}
 #catnara-app-home-v3 .catapp-original-header-actions .catnara-language-trigger{height:44px;min-width:43px;max-width:45px;border-radius:14px;padding:0 4px;font-size:10px;border-color:#f0e3de;box-shadow:0 3px 12px rgba(99,61,56,.07)}
 #app .catapp-global-logo-row>.catnara-language-switch{margin-left:auto;z-index:21}
 #app .catapp-global-logo-row .catnara-language-trigger{width:44px;min-width:44px;height:40px;padding:0 3px;font-size:10px}
 #catnara-app-home-v3 .catnara-language-options,#app .catapp-global-logo-row .catnara-language-options{position:absolute;right:0;top:calc(100% + 6px)}
}
@media(max-width:350px){
 #catnara-app-home-v3 .catapp-original-header-actions{gap:3px!important}
 #catnara-app-home-v3 .catapp-original-header-actions .catnara-language-trigger{min-width:38px;max-width:38px;font-size:9px}
}

/* V2: Render the open menu in document.body, outside clipped APP mastheads.
   A fixed top-level layer stays above the 2017 greeting, hero and bottom tabs. */
.catnara-language-portal{
 position:fixed!important;z-index:2147483635!important;display:block!important;
 right:auto!important;transform:none!important;opacity:1!important;visibility:visible!important;
 width:max-content;max-width:min(220px,calc(100vw - 16px));
 max-height:min(280px,calc(100dvh - 16px));overflow:auto;overscroll-behavior:contain;
 pointer-events:auto!important;touch-action:pan-y;isolation:isolate;
}
body[data-catnara-i18n-standalone] header.head .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px}
body[data-catnara-i18n-standalone] header.head .catnara-language-switch{margin-left:auto}
@media(max-width:820px){
 #catnara-app-home-v3 .catapp-home-brandrow>.catnara-language-switch{margin-left:auto;z-index:21}
 #catnara-app-home-v3 .catapp-home-brandrow .catnara-language-trigger{height:42px;min-width:43px;padding:0 4px;font-size:10px}
 #catnara-app-home-v3 .catapp-original-masthead{position:relative;z-index:6}
 #catnara-app-home-v3 .catapp-original-header-actions{position:relative;z-index:7}
 #catnara-app-home-v3 .catapp-original-greeting{position:relative;z-index:1}
}

/* Native PWA: keep language choice in the header row before Consultation,
   without creating a second row or gap above EST. 2017 · CATNARA. */
@media(max-width:820px){
 #catnara-app-home-v3 .catapp-original-masthead{
   margin-bottom:17px!important;
 }
 #catnara-app-home-v3 .catapp-original-greeting{
   padding-right:3px!important;
 }
 #catnara-app-home-v3 .catapp-original-header-actions>.catnara-language-switch,
 #catnara-app-home-v3 .catapp-original-header-actions>.catnara-language-switch[data-catnara-language-place="pwa-bell"]{
   position:relative!important;
   order:-1!important;
   inset:auto!important;
   margin:0!important;
   width:auto!important;
   z-index:21!important;
 }
 #catnara-app-home-v3 .catapp-original-header-actions>.catnara-language-switch .catnara-language-trigger{
   height:44px!important;
 }
}

/* English Q&A: keep long localized labels and question cards inside their borders. */
@media(max-width:820px){
 html:is([data-catnara-language="en"],[data-catnara-language="ru"],[data-catnara-language="th"]) #crewPublicListPanel,
 html:is([data-catnara-language="en"],[data-catnara-language="ru"],[data-catnara-language="th"]) #crewPublicListPanel .crew-question-list,
 html:is([data-catnara-language="en"],[data-catnara-language="ru"],[data-catnara-language="th"]) #crewPublicListPanel .crew-question-list>button,
 html:is([data-catnara-language="en"],[data-catnara-language="ru"],[data-catnara-language="th"]) .crew-public-search,
 html:is([data-catnara-language="en"],[data-catnara-language="ru"],[data-catnara-language="th"]) .crew-public-detail-panel{
  box-sizing:border-box!important;width:100%!important;max-width:100%!important;
  min-width:0!important;overflow-wrap:anywhere;
 }
 html:is([data-catnara-language="en"],[data-catnara-language="ru"],[data-catnara-language="th"]) #crewPublicListPanel .crew-question-list{
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;
 }
 html:is([data-catnara-language="en"],[data-catnara-language="ru"],[data-catnara-language="th"]) #crewPublicListPanel .crew-question-list>button{
  margin-inline:0!important;text-align:left!important;
 }
 html:is([data-catnara-language="en"],[data-catnara-language="ru"],[data-catnara-language="th"]) #crewPublicListPanel .crew-panel-head,
 html:is([data-catnara-language="en"],[data-catnara-language="ru"],[data-catnara-language="th"]) #crewPublicListPanel .crew-panel-head>div{
  min-width:0!important;max-width:100%!important;
 }
}

/* Russian/Thai Crew labels: preserve the same full-width Q&A card geometry as English. */
@media(max-width:820px){
 html:is([data-catnara-language="ru"],[data-catnara-language="th"]) #crewPublicListPanel .crew-question-list{
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important;max-width:100%!important;
 }
 html:is([data-catnara-language="ru"],[data-catnara-language="th"]) #crewPublicListPanel .crew-question-list>button{
  box-sizing:border-box!important;min-width:0!important;max-width:100%!important;width:100%!important;margin-inline:0!important;overflow-wrap:anywhere;text-align:left!important;
 }
}

/* RU/TH longer text must not overflow mobile PWA MY/booking cards. */
@media(max-width:820px){
 html:is([data-catnara-language="ru"],[data-catnara-language="th"]) :is(.catapp-my-v1-intro,.catapp-my-v1-summary,.catapp-my-v1-shortcuts,.catapp-reservation-v5-intro,.my-data-card,.my-member-card,.catapp-crew-hub-v1-grid){min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
 html:is([data-catnara-language="ru"],[data-catnara-language="th"]) :is(.catapp-my-v1-intro,.catapp-reservation-v5-intro,.catapp-crew-hub-v1-copy,.my-data-card p,.catapp-explore-copy){overflow-wrap:anywhere;word-break:normal}
}

/* Keep Russian public-consultation cards and headers in the same full-width
   geometry as the verified English layout, without affecting other routes. */
@media(max-width:820px){
 html[data-catnara-language="ru"] #crewPublicListPanel :is(.crew-panel-head,.crew-question-list,.crew-question-list>button),
 html[data-catnara-language="ru"] :is(.crew-public-detail-panel,.crew-public-search){
  box-sizing:border-box!important;min-width:0!important;max-width:100%!important;
  overflow-wrap:anywhere;
 }
 html[data-catnara-language="ru"] #crewPublicListPanel .crew-question-list{
  grid-template-columns:minmax(0,1fr)!important;justify-items:stretch!important;
 }
 html[data-catnara-language="ru"] #crewPublicListPanel .crew-question-list>button{
  justify-self:stretch!important;text-align:left!important;
 }
}
/* Long translated Q&A status must not squeeze member-written question contents. */
#app .crew-workspace.crew-list-first,
#app #crewPublicListPanel,
#app #crewPublicListPanel .crew-question-list{min-width:0;max-width:100%;box-sizing:border-box}
#app #crewPublicListPanel .crew-question-list>button{
 display:flex;flex-wrap:wrap;align-items:flex-start;gap:7px 10px;
 min-width:0;max-width:100%;box-sizing:border-box;text-align:left;overflow-wrap:anywhere;
}
#app #crewPublicListPanel .crew-question-list>button>div{
 flex:1 1 160px;min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:normal;
}
#app #crewPublicListPanel .crew-question-list>button>em{
 flex:0 1 auto;max-width:100%;min-width:0;white-space:normal;
 overflow-wrap:anywhere;word-break:normal;text-align:right;
}
@media(max-width:820px){
 #app #crewPublicListPanel .crew-question-list>button>div{flex:1 1 100%;min-width:0;}
 #app #crewPublicListPanel .crew-question-list>button>em{flex:0 1 100%;text-align:left!important;margin-top:0;}
 #app #crewPublicListPanel .crew-panel-head>div{min-width:0;max-width:100%;overflow-wrap:anywhere;}
 #app #crewPublicListPanel .crew-public-search{min-width:0;max-width:100%;}
}

/* V30: user-visible progress, nonmodal and above mobile navigation. */
.catnara-language-progress{
 position:fixed!important;z-index:2147483633!important;
 bottom:20px;left:50%;transform:translateX(-50%);
 width:min(470px,calc(100vw - 24px));box-sizing:border-box;
 display:flex;gap:12px;align-items:center;padding:15px 13px 15px 17px;
 border-radius:17px;background:rgba(34,38,52,.96);color:#fff;
 box-shadow:0 12px 35px rgba(0,0,0,.24);
 font:500 13px/1.5 system-ui,-apple-system,"Noto Sans",sans-serif;
 pointer-events:none;
}
.catnara-language-progress-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:3px}
.catnara-language-progress-copy strong{font-size:13px;font-weight:750;line-height:1.5}
.catnara-language-progress-copy span{font-size:12px;opacity:.82}
.catnara-language-progress-spinner{
 flex:none;box-sizing:border-box;width:21px;height:21px;border-radius:50%;
 border:3px solid rgba(255,255,255,.25);border-top-color:#fff;
 animation:catnara-i18n-spin 1s linear infinite;
}
@keyframes catnara-i18n-spin{to{transform:rotate(360deg)}}
.catnara-language-progress-close{
 flex:none;align-self:flex-start;background:transparent;border:0;color:#fff;
 font:500 24px/1 system-ui,sans-serif;padding:0 2px;cursor:pointer;
 pointer-events:auto;touch-action:manipulation;
}
@media(max-width:820px){
 .catnara-language-progress{
  bottom:calc(84px + env(safe-area-inset-bottom,0px));
  padding:12px 12px 12px 14px;width:calc(100vw - 24px);
 }
 .catnara-language-progress-copy strong{font-size:12px}
 .catnara-language-progress-copy span{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.catnara-language-progress-spinner{animation:none}}
