/*
 * BSOURIA V61 — focused visibility corrections.
 * Scope: social-login text, header language selector, dark CV preview,
 * and official-resource icon contrast. No layout/content changes.
 */

/* Google sign-in: always keep the label truly black on its white button.
   The text-fill rule prevents inherited dark-theme text-fill from fading it. */
.social-auth-google,
.social-auth-google:link,
.social-auth-google:visited,
.social-auth-google:hover,
.social-auth-google:focus,
.social-auth-google > span:not(.social-auth-icon),
html[data-theme="dark"] .social-auth-google,
html[data-theme="dark"] .social-auth-google > span:not(.social-auth-icon) {
  color: #111111 !important;
  -webkit-text-fill-color: #111111 !important;
  opacity: 1 !important;
}

html[data-theme="dark"] .social-auth-google {
  background: #ffffff !important;
  border-color: #d7dce0 !important;
}

/* Keep the Google artwork untouched. */
.social-auth-google .social-auth-icon,
.social-auth-google .social-auth-icon svg,
.social-auth-google .social-auth-icon svg * {
  -webkit-text-fill-color: initial !important;
  opacity: 1 !important;
  filter: none !important;
}

/* Language control: one horizontal row, centered flag, visible arrow.
   This prevents the flag and arrow from stacking or being clipped. */
.header-utility-group .language-dropdown,
.topbar .language-dropdown {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
}

.header-utility-group .language-current,
.topbar .language-current {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  width: 58px !important;
  min-width: 58px !important;
  height: 42px !important;
  min-height: 42px !important;
  padding: 0 7px !important;
  gap: 5px !important;
  line-height: 1 !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
}

.header-utility-group .language-current .language-flag,
.topbar .language-current .language-flag,
.language-menu .language-flag {
  display: block !important;
  width: 27px !important;
  min-width: 27px !important;
  height: 18px !important;
  flex: 0 0 27px !important;
  object-fit: contain !important;
  object-position: center !important;
  margin: 0 !important;
  border-radius: 3px !important;
  opacity: 1 !important;
  filter: none !important;
}

.header-utility-group .language-current .language-chevron,
.topbar .language-current .language-chevron {
  display: inline-block !important;
  flex: 0 0 auto !important;
  width: auto !important;
  margin: 0 !important;
  font-size: 9px !important;
  line-height: 1 !important;
  opacity: .8 !important;
  transform: none !important;
}

html[data-theme="dark"] .header-utility-group .language-current,
html[data-theme="dark"] .topbar .language-current {
  background: #10251d !important;
  border: 1px solid #315345 !important;
  color: #e9fff3 !important;
  -webkit-text-fill-color: #e9fff3 !important;
}

html[data-theme="dark"] .language-menu {
  background: #10251d !important;
  border-color: #315345 !important;
}

html[data-theme="dark"] .language-menu a {
  color: #e9fff3 !important;
  -webkit-text-fill-color: #e9fff3 !important;
}

html[data-theme="dark"] .language-menu a:hover,
html[data-theme="dark"] .language-menu a.is-active {
  background: #173c2d !important;
  color: #9be7bd !important;
  -webkit-text-fill-color: #9be7bd !important;
}

/* CV preview: remove the bright white sheet in dark mode. */
html[data-theme="dark"] .home-cv-preview-v64,
html[data-theme="dark"] .home-cv-preview-v73,
html[data-theme="dark"] .dashboard-cv-card-v64 {
  background: #0c2119 !important;
  border-color: #315345 !important;
  box-shadow: none !important;
}

html[data-theme="dark"] .home-cv-sheet-v64,
html[data-theme="dark"] .home-cv-sheet-v73 {
  background: #10251d !important;
  border-color: #315345 !important;
  color: #e9fff3 !important;
  -webkit-text-fill-color: #e9fff3 !important;
  box-shadow: 0 18px 45px rgba(0,0,0,.18) !important;
}

html[data-theme="dark"] .home-cv-sheet-v73 :is(b,strong) {
  color: #e9fff3 !important;
  -webkit-text-fill-color: #e9fff3 !important;
}

html[data-theme="dark"] .home-cv-head-v73 span,
html[data-theme="dark"] .home-cv-experience-v73 > b,
html[data-theme="dark"] .home-cv-skills-v73 strong {
  color: #8ce0b5 !important;
  -webkit-text-fill-color: #8ce0b5 !important;
}

html[data-theme="dark"] .home-cv-experience-v73 > span {
  color: #b8cec2 !important;
  -webkit-text-fill-color: #b8cec2 !important;
}

html[data-theme="dark"] .home-cv-summary-v73,
html[data-theme="dark"] .home-cv-experience-v73,
html[data-theme="dark"] .home-cv-skills-v73 {
  border-color: #3a5e4f !important;
}

html[data-theme="dark"] .home-cv-summary-v73 i,
html[data-theme="dark"] .home-cv-experience-v73 i,
html[data-theme="dark"] .home-cv-line-v64,
html[data-theme="dark"] .home-cv-columns-v64 span {
  background: #355849 !important;
}

html[data-theme="dark"] .home-cv-skills-v73 em,
html[data-theme="dark"] .home-cv-features-v64 span {
  background: #173c2d !important;
  border-color: #426b59 !important;
  color: #c9f5dc !important;
  -webkit-text-fill-color: #c9f5dc !important;
}

html[data-theme="dark"] .home-cv-footer-v73 {
  background: #087a4a !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* Official/resource cards: high-contrast icon tiles in dark mode. */
html[data-theme="dark"] .ws-resource-card i,
html[data-theme="dark"] .ws-external-card i {
  background: #dff5e8 !important;
  border: 1px solid #a9d9bf !important;
  color: #087a4a !important;
  -webkit-text-fill-color: #087a4a !important;
  opacity: 1 !important;
  filter: none !important;
  text-shadow: none !important;
}

html[data-theme="dark"] .ws-resource-card i *,
html[data-theme="dark"] .ws-external-card i * {
  color: #087a4a !important;
  -webkit-text-fill-color: #087a4a !important;
  opacity: 1 !important;
  filter: none !important;
}

@media (max-width: 700px) {
  .header-utility-group .language-current,
  .topbar .language-current {
    width: 52px !important;
    min-width: 52px !important;
    height: 40px !important;
    min-height: 40px !important;
    padding-inline: 6px !important;
  }

  .header-utility-group .language-current .language-flag,
  .topbar .language-current .language-flag {
    width: 25px !important;
    min-width: 25px !important;
    height: 17px !important;
    flex-basis: 25px !important;
  }
}

/* V62 — additional dark-mode icon contrast fixes.
   Scope: Welcome feature cards, business-directory CTA cards, and footer CV badge. */

/* Welcome-to-Syria feature cards: keep the symbol dark green on the pale tile. */
html[data-theme="dark"] .ws-feature i,
body:not([data-theme="light"]) .ws-feature i {
  background: #dff5e8 !important;
  border: 1px solid #a9d9bf !important;
  color: #087a4a !important;
  -webkit-text-fill-color: #087a4a !important;
  opacity: 1 !important;
  filter: none !important;
  text-shadow: none !important;
}

html[data-theme="dark"] .ws-feature i *,
body:not([data-theme="light"]) .ws-feature i * {
  color: #087a4a !important;
  -webkit-text-fill-color: #087a4a !important;
  opacity: 1 !important;
  filter: none !important;
}

/* Business-directory CTA cards: make check, plus and phone symbols readable. */
html[data-theme="dark"] .bd-cta-icon,
body:not([data-theme="light"]) .bd-cta-icon {
  background: #dff5e8 !important;
  border: 1px solid #a9d9bf !important;
  color: #087a4a !important;
  -webkit-text-fill-color: #087a4a !important;
  opacity: 1 !important;
  filter: none !important;
  text-shadow: none !important;
}

/* Footer CV label: prevent white text disappearing on the pale badge. */
html[data-theme="dark"] .footer-cv-link-v64 strong,
body:not([data-theme="light"]) .footer-cv-link-v64 strong,
.site-footer .footer-cv-link-v64 strong {
  display: inline-grid !important;
  place-items: center !important;
  min-width: 25px !important;
  min-height: 22px !important;
  padding: 2px 5px !important;
  background: #dff5e8 !important;
  border: 1px solid #a9d9bf !important;
  color: #087a4a !important;
  -webkit-text-fill-color: #087a4a !important;
  opacity: 1 !important;
  filter: none !important;
  text-shadow: none !important;
}
