/* SharmJoy v2.3 — focused fixes only. Scoped to the bright theme. */
/* Language menu lives above the header and can always be reached at any width.
   JS places the fixed panel directly under the language trigger. */
body.sj-bright .sj-topbar{z-index:10050!important;isolation:auto;overflow:visible}
body.sj-bright .sj-topbar__inner,
body.sj-bright .sj-topbar__right{overflow:visible}
body.sj-bright .sj-language{position:relative;min-width:0}
body.sj-bright .sj-language summary{min-height:38px;padding:4px 9px;gap:8px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:9px;cursor:pointer;user-select:none;font-size:13px;font-weight:700}
body.sj-bright .sj-language summary:hover,
body.sj-bright .sj-language[open] summary{background:rgba(255,255,255,.13)}
body.sj-bright .sj-language[open] summary>span:last-child{transform:rotate(180deg)}
body.sj-bright .sj-language__menu{position:fixed!important;inset:auto!important;top:45px!important;left:12px;min-width:194px;width:max-content;max-width:calc(100vw - 24px);max-height:min(310px,calc(100dvh - 24px));overflow-y:auto;z-index:10060!important;padding:8px!important;background:#fff!important;border:1px solid #cddfeb!important;border-radius:15px!important;box-shadow:0 18px 45px rgba(0,25,54,.25)!important}
body.sj-bright .sj-language__menu a{display:flex!important;align-items:center;gap:12px;min-height:45px;padding:10px 13px!important;border-radius:9px;color:#07325a!important;font-weight:700;font-size:14px!important;white-space:nowrap}
body.sj-bright .sj-language__menu a span:nth-child(2){flex:1}
body.sj-bright .sj-language__menu a:hover,
body.sj-bright .sj-language__menu a:focus-visible,
body.sj-bright .sj-language__menu a[aria-current=page]{background:#eaf5ff!important;color:#004e8a!important}
body.sj-bright .sj-language__menu .sj-language__code{display:inline-grid;place-items:center;width:33px;height:27px;flex:0 0 33px;background:#ecf5fa;color:#003060;font-size:11px;font-weight:900;border-radius:7px;letter-spacing:.035em}
body.sj-bright .sj-language__menu a[aria-current=page] .sj-language__code{background:#003060;color:#fff}
body.sj-bright .sj-language__menu i.fa-check{color:#1673ac;font-size:12px}
body.sj-bright .sj-site-header{z-index:100}
/* Give the existing brand its real visual weight without stretching/cropping the logo. */
body.sj-bright .sj-header__inner{min-height:92px;gap:clamp(12px,1.55vw,23px);justify-content:flex-start}
body.sj-bright .sj-logo,
body.sj-bright .sj-logo:has(img){flex:0 0 225px;width:225px;min-width:225px;max-width:225px;min-height:70px;padding:6px 0 7px;justify-content:flex-start;border:0;border-radius:0;background:transparent;box-shadow:none;position:relative}
body.sj-bright .sj-logo:has(img)::after{content:'';position:absolute;width:65px;height:3px;background:linear-gradient(90deg,var(--sj-gold),var(--sj-sky));inset-inline-start:0;bottom:0;border-radius:5px}
body.sj-bright .sj-logo img{display:block;width:100%;max-width:225px;max-height:69px;height:auto;object-fit:contain;object-position: center left}
body.sj-bright[dir=rtl] .sj-logo img{object-position:center right}
body.sj-bright .sj-nav{margin-inline:0;flex:1 1 auto;min-width:0;display:flex;justify-content:center}
body.sj-bright .sj-navigation{gap:clamp(9px,1vw,17px);flex-wrap:nowrap}
body.sj-bright .sj-navigation>li>a{font-size:clamp(12px,.85vw,14px);font-weight:750}
body.sj-bright .sj-header__actions{flex:0 0 auto;margin-inline-start:auto}
/* Higher breakpoint avoids nav collisions with wider Italian/Russian words. */
@media(max-width:1279px){
 body.sj-bright .sj-menu-toggle{display:grid;place-items:center}
 body.sj-bright .sj-header__inner{position:relative;min-height:80px}
 body.sj-bright .sj-nav{position:absolute;inset-block-start:100%;inset-inline:0;display:none!important;width:100%;max-height:min(72dvh,680px);overflow-y:auto;overscroll-behavior:contain;z-index:200;margin:0;flex:none;padding:12px clamp(18px,3vw,35px) 16px;border:1px solid #d7e6f0;border-top:0;border-radius:0 0 17px 17px;box-shadow:0 18px 31px rgba(0,41,78,.15);background:#fff}
 body.sj-bright .sj-nav.is-open{display:block!important}
 body.sj-bright .sj-navigation{flex-direction:column;align-items:stretch;gap:0;width:100%;padding:0}
 body.sj-bright .sj-navigation>li>a{display:block;padding:13px 8px;font-size:15px;white-space:normal;border-block-end:1px solid #e9f2f7}
 body.sj-bright .sj-navigation ul{display:block;position:static;background:#f5faff;border:0;box-shadow:none;margin:0;padding:4px 11px 9px}
 body.sj-bright .sj-navigation ul a{display:block;padding:10px 7px}
}
@media(max-width:760px){
 body.sj-bright .sj-header__inner{min-height:76px;gap:12px}
 body.sj-bright .sj-logo,
 body.sj-bright .sj-logo:has(img){width:175px;min-width:0;max-width:175px;flex:0 1 175px;min-height:57px;padding:5px 0 7px}
 body.sj-bright .sj-logo img{max-width:175px;max-height:54px}
 body.sj-bright .sj-logo:has(img)::after{width:48px}
 body.sj-bright .sj-language summary{min-height:38px;padding:5px 6px;font-size:12px}
 body.sj-bright .sj-topbar__right{gap:9px}
 body.sj-bright .sj-header__actions{margin-inline-start:auto}
 body.sj-bright .sj-site-header{top:0}
}
@media(max-width:390px){
 body.sj-bright .sj-logo,
 body.sj-bright .sj-logo:has(img){max-width:153px;flex-basis:153px}
 body.sj-bright .sj-logo img{max-width:153px}
 body.sj-bright .sj-header__inner{gap:8px}
 body.sj-bright .sj-topbar__right>a{font-size:10px}
}
/* Native video: silent autoplay, steady 16:9 presentation, keep visible controls for explicit unmute. */
body.sj-bright .sj-participation__media{border:1px solid #c7dfed;border-radius:20px;background:#002c52;overflow:hidden;aspect-ratio:16/9;box-shadow:0 15px 38px rgba(0,45,80,.16);line-height:0}
body.sj-bright .sj-participation__media video{display:block;width:100%;height:100%;aspect-ratio:16/9;object-fit:cover;background:#002c52}
/* Clear and truthful star ratings on both horizontal cards and mobile cards. */
body.sj-bright .sj-card__image-rating{position:absolute;top:14px;inset-inline-end:14px;display:inline-flex;gap:6px;align-items:center;justify-content:center;padding:7px 11px;color:#002e55;background:#fff;border-radius:999px;box-shadow:0 7px 18px rgba(0,29,54,.22);font:800 13px/1.2 'Roboto','Almarai',sans-serif;z-index:4;pointer-events:none}
body.sj-bright .sj-card__image-rating i{color:#f4a500;font-size:13px}
body.sj-bright .sj-card__rating{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-height:25px;color:#003060;font-size:14px;margin-bottom:12px}
body.sj-bright .sj-card__rating small{color:#546c7e;margin-inline-start:0;font-size:12px}
body.sj-bright .sj-card__stars{position:relative;display:inline-block;width:6.05em;flex:none;line-height:1.1;font-size:15px;letter-spacing:0;color:#cddbe4;white-space:nowrap}
body.sj-bright .sj-card__stars>span:last-child{position:absolute;inset-block-start:0;inset-inline-start:0;white-space:nowrap;overflow:hidden;color:#f5a500;direction:ltr;text-align:left}
body.sj-bright .sj-card__stars{direction:ltr;text-align:left}
body.sj-bright .sj-card__rating--empty{font-size:12px;color:#6f8392!important;font-weight:500}
body.sj-bright .sj-featured-list .sj-card__rating,
body.sj-bright .sj-archive .sj-card__rating{margin-bottom:12px}
/* Footer: consistent social buttons, clear return action, no malformed legacy glyphs. */
body.sj-bright .sj-site-footer{background:linear-gradient(145deg,#003060,#002348);border-top:4px solid #ffb703;color:#e8f6ff}
body.sj-bright .sj-site-footer .sj-footer__top{padding-bottom:34px}
body.sj-bright .sj-site-footer .sj-footer__columns{padding-block:36px;gap:clamp(22px,3vw,45px)}
body.sj-bright .sj-site-footer .sj-footer__columns h3{font-size:18px;color:#fff;font-weight:800}
body.sj-bright .sj-site-footer .sj-footer__columns a{width:fit-content;max-width:100%;overflow-wrap:anywhere}
body.sj-bright .sj-socials{display:flex!important;flex-direction:row!important;align-items:center!important;gap:10px!important;flex-wrap:wrap;margin-top:12px}
body.sj-bright .sj-footer__columns .sj-socials a{display:inline-grid!important;place-items:center!important;width:44px!important;height:44px!important;min-width:44px!important;border-radius:12px!important;border:1px solid rgba(142,202,230,.55)!important;color:#fff!important;background:rgba(255,255,255,.09)!important;transition:background .2s,transform .2s}
body.sj-bright .sj-footer__columns .sj-socials a:hover,
body.sj-bright .sj-footer__columns .sj-socials a:focus-visible{background:#ffb703!important;color:#002348!important;transform:translateY(-2px)}
body.sj-bright .sj-socials i{font-size:20px!important;line-height:1;display:inline-block!important;color:inherit!important}
body.sj-bright .sj-footer__bottom{min-height:66px;gap:15px;flex-wrap:wrap}
body.sj-bright .sj-back-top{display:inline-flex!important;align-items:center;justify-content:center;gap:12px;padding:12px 16px;border:1px solid rgba(142,202,230,.45);border-radius:12px;color:#fff!important;font-size:13px;font-weight:800;cursor:pointer;background:rgba(255,255,255,.07);width:auto!important;transition:background .2s}
body.sj-bright .sj-back-top:hover{background:rgba(255,183,3,.18);color:#fff!important}
body.sj-bright .sj-back-top i{color:#ffb703;font-size:15px}
@media(max-width:760px){
 body.sj-bright .sj-participation__grid{grid-template-columns:minmax(0,1fr);gap:22px}
 body.sj-bright .sj-participation__media{min-height:0;max-width:100%}
 body.sj-bright .sj-card__image-rating{top:12px;inset-inline-end:12px;padding:7px 10px}
 body.sj-bright .sj-card__rating{margin-bottom:9px}
 body.sj-bright .sj-site-footer .sj-footer__columns{padding-block:29px;gap:25px}
 body.sj-bright .sj-back-top{min-height:44px}
}
