/* AutoSchools V2.0.8 — production polish: Hero resilience, language selector, KPI legibility. */
.language-trigger::after { content:none !important; display:none !important; }
.language-trigger { display:inline-flex; align-items:center; justify-content:center; gap:7px !important; }
.language-chevron { width:14px; height:14px; flex:0 0 14px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; opacity:.7; transition:transform .18s ease, opacity .18s ease; }
.language-trigger[aria-expanded="true"] .language-chevron { transform:rotate(180deg); opacity:1; }
.language-trigger:focus-visible { outline:2px solid rgba(52,145,255,.82); outline-offset:2px; }

.approved-role-art .approved-role-image { opacity:1; transition:opacity .2s ease, transform .24s ease; }
.approved-role-art.hero-art-fallback img { opacity:0; }
.approved-role-art.hero-art-fallback::after {
  content:"AS"; position:absolute; right:12%; top:18%; width:148px; height:148px; border-radius:40px;
  display:grid; place-items:center; font:800 40px/1 -apple-system,BlinkMacSystemFont,"SF Pro Display",Inter,Arial,sans-serif;
  letter-spacing:-.05em; color:#ddecff; border:1px solid rgba(93,166,255,.38);
  background:radial-gradient(circle at 35% 30%,rgba(63,153,255,.52),rgba(13,54,122,.5) 45%,rgba(4,14,34,.24) 72%);
  box-shadow:0 0 42px rgba(31,123,255,.42), inset 0 0 28px rgba(78,157,255,.2);
  transform:perspective(420px) rotateX(56deg) rotateZ(-10deg);
}

.role-metric-copy { min-width:0; }
.role-metric-copy strong { max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-variant-numeric:tabular-nums; }
.role-metric-copy small { overflow-wrap:anywhere; hyphens:auto; }

@media (max-width:390px) {
  .role-metric-copy strong { font-size:clamp(18px,5.8vw,24px); }
  .role-metric-copy small { font-size:clamp(10px,2.8vw,12px); line-height:1.15; }
}

@media (max-width:350px) {
  .language-trigger { min-width:56px !important; padding-inline:7px !important; gap:5px !important; }
  .language-chevron { width:12px; height:12px; flex-basis:12px; }
}

@media (prefers-reduced-motion:reduce) {
  .language-chevron, .approved-role-art .approved-role-image { transition:none !important; }
}

@media (max-width:430px) {
  .role-metric-copy strong { font-size:clamp(17px,5vw,22px); }
}

/* Final typography fit: never split user-facing words inside KPI labels or
   action-card titles. Gain space from chrome before shrinking legibility. */
.role-metric-copy small {
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
  text-wrap: pretty;
}
#home-apps-grid .app-widget-head strong {
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
  text-wrap: pretty;
}

@media (min-width:351px) and (max-width:430px) {
  .role-metric {
    grid-template-columns:30px minmax(0,1fr) !important;
    gap:4px !important;
    padding-inline:6px !important;
  }
  .role-metric-icon,
  .role-hero--student .role-metric-ring {
    width:30px !important;
    height:30px !important;
  }
  .role-metric-icon .as-icon { width:18px !important; height:18px !important; }
  .role-hero--student .role-metric:nth-child(2) {
    grid-template-columns:30px minmax(0,1fr) !important;
  }
  .role-metric-copy small {
    font-size:clamp(8.6px,2.15vw,9.3px) !important;
    letter-spacing:-.08px;
  }

  #home-apps-grid .app-widget-head {
    grid-template-columns:42px minmax(0,1fr) !important;
    gap:8px !important;
  }
  #home-apps-grid .app-widget-icon {
    width:42px !important;
    height:42px !important;
    flex-basis:42px !important;
    border-radius:13px !important;
  }
  #home-apps-grid .app-widget-icon .as-icon { width:24px !important; height:24px !important; }
  #home-apps-grid .app-widget-head strong {
    font-size:clamp(13px,3.25vw,14px) !important;
    line-height:1.1 !important;
    letter-spacing:-.24px !important;
  }
}
