/* SOLVY LAUNCH POLISH V1
   Final responsive, multilingual and accessibility safeguards.
   Loaded last so older page-specific rules cannot crop translated copy. */

html { scroll-padding-top: 92px; }

.solvy-skip-link {
  position: fixed;
  z-index: 10000;
  inset-block-start: 12px;
  inset-inline-start: 12px;
  transform: translateY(-160%);
  padding: 10px 14px;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 12px;
  background: #10101a;
  color: #fff;
  font: 700 12px/1.2 inherit;
  box-shadow: 0 12px 30px rgba(0,0,0,.35);
  transition: transform .18s ease;
}

.solvy-skip-link:focus { transform: translateY(0); }

:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible {
  outline: 3px solid rgba(129,73,255,.5) !important;
  outline-offset: 3px !important;
}

button:disabled,
[aria-disabled="true"] { cursor: not-allowed !important; }

html body .tm-site-header .tm-language button {
  min-width: 32px !important;
  width: 32px !important;
  min-height: 32px !important;
  height: 32px !important;
  font-size: 8px !important;
}

html body .tm-site-header .tm-lang-pill { width: 32px !important; }

html body .tm-site-header .tm-lang-pill,
html[dir="rtl"] body .tm-site-header .tm-lang-pill {
  transform: translateX(calc(var(--tm-lang-index,0) * 32px)) !important;
}

html[lang="fr"] :where(.btn-primary,.btn-secondary,.svy-btn,.auth-submit),
html[lang="ar"] :where(.btn-primary,.btn-secondary,.svy-btn,.auth-submit) {
  line-height: 1.45 !important;
}

html[lang="ar"] :where(.btn-primary,.btn-secondary,.svy-btn,.auth-submit) > :where(span,b),
html[lang="ar"] :where(.svy92-free-green,.svy92-free-price) {
  line-height: 1.5 !important;
  padding-block: .08em .18em !important;
}

html[lang="ar"] .v8-hero-actions :where(.btn-primary,.btn-secondary),
html[lang="ar"] .v8-techmen-card .btn-secondary,
html[lang="ar"] .auth-submit {
  height: auto !important;
  min-height: 54px !important;
  padding-block: 9px !important;
  overflow: hidden !important;
}

html[lang="ar"] .v8-hero-actions .btn-primary > span,
html[lang="ar"] .v8-hero-actions .btn-secondary,
html[lang="ar"] .auth-submit > span {
  overflow: visible !important;
  white-space: normal !important;
}

.svy92-mini-features .svy-feature { height: auto !important; }

.svy92-mini-features .svy-feature p {
  display: block !important;
  min-height: 0 !important;
  overflow: visible !important;
  -webkit-line-clamp: unset !important;
  line-clamp: unset !important;
  font-size: 10px !important;
  line-height: 1.65 !important;
}

html[lang="fr"] .svy92-mini-features .svy-feature p,
html[lang="ar"] .svy92-mini-features .svy-feature p {
  font-size: 10.5px !important;
  line-height: 1.75 !important;
}

.auth-form .form-row { align-items: center; gap: 12px; }

.auth-form .form-row a,
.auth-switch a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding-inline: 7px;
  font-size: 10px !important;
  line-height: 1.4 !important;
}

.auth-switch { font-size: 10px !important; line-height: 1.55 !important; }
.auth-submit { min-height: 54px !important; }

.v18-dashboard-page :where(.v96-brand-edit,.svy-post-details-toggle,.v81-under-image-download,.svy-publish-btn),
.v18-account-page :where(.btn,button) {
  min-height: 40px !important;
}

.v18-dashboard-page :where(.v96-brand-edit,.svy-post-details-toggle,.v81-under-image-download,.svy-publish-btn):focus-visible,
.v18-account-page :where(.btn,button):focus-visible {
  outline-offset: 2px !important;
}

@media (max-width: 720px) {
  html { scroll-padding-top: 80px; }

  html body .tm-site-header .tm-language button {
    min-width: 34px !important;
    width: 34px !important;
    min-height: 34px !important;
    height: 34px !important;
    font-size: 8px !important;
  }
  html body .tm-site-header .tm-lang-pill { width: 34px !important; }
  html body .tm-site-header .tm-lang-pill,
  html[dir="rtl"] body .tm-site-header .tm-lang-pill {
    transform: translateX(calc(var(--tm-lang-index,0) * 34px)) !important;
  }
  .tm-mobile-menu-btn { min-width: 42px !important; min-height: 42px !important; }

  .v8-hero-actions .btn-primary,
  .v8-hero-actions .btn-secondary {
    height: auto !important;
    min-height: 48px !important;
  }
  html[lang="ar"] .v8-hero-actions {
    grid-template-columns: minmax(0,1.28fr) minmax(0,.72fr) !important;
  }
  html[lang="ar"] .v8-hero-actions .btn-primary,
  html[lang="ar"] .v8-hero-actions .btn-secondary {
    min-height: 50px !important;
    padding-inline: 9px !important;
    padding-block: 8px !important;
    font-size: 10px !important;
  }
  html[lang="ar"] .v8-hero-actions .btn-primary > span { font-size: 10px !important; }

  .svy92-filters {
    display: grid !important;
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    gap: 7px !important;
    width: 100% !important;
    overflow: visible !important;
    padding: 0 !important;
  }
  .svy92-filters button {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 40px !important;
    padding: 8px 7px !important;
    white-space: normal !important;
    font-size: 9px !important;
    line-height: 1.25 !important;
  }

  .svy92-mini-features .svy-feature { padding: 15px !important; }
  .svy92-mini-features .svy-feature strong {
    font-size: 13px !important;
    line-height: 1.4 !important;
  }
  .svy92-mini-features .svy-feature p,
  html[lang="fr"] .svy92-mini-features .svy-feature p,
  html[lang="ar"] .svy92-mini-features .svy-feature p {
    font-size: 10px !important;
    line-height: 1.7 !important;
  }

  .auth-form-side { padding-inline: 20px !important; }
  .auth-switch { margin-top: 14px !important; padding-top: 12px !important; }

  .v18-dashboard-page :where(.v96-brand-edit,.svy-post-details-toggle,.v81-under-image-download,.svy-publish-btn),
  .v18-account-page :where(.btn,button) { min-height: 42px !important; }
}

@media (max-width: 370px) {
  html body .tm-site-header .tm-language button {
    min-width: 31px !important;
    width: 31px !important;
  }
  html body .tm-site-header .tm-lang-pill { width: 31px !important; }
  html body .tm-site-header .tm-lang-pill,
  html[dir="rtl"] body .tm-site-header .tm-lang-pill {
    transform: translateX(calc(var(--tm-lang-index,0) * 31px)) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  :where(a,button,input,select,textarea,summary) { scroll-behavior: auto !important; }
}
