.language-menu { position: relative; border: 0; padding: 0; font-size: 12px; }
.language-menu > summary { padding: 7px 10px; border: 1px solid var(--line); border-radius: 5px; }
.language-menu > nav { position: absolute; right: 0; top: 42px; z-index: 3; display: grid; grid-template-columns: 1fr; gap: 0; min-width: 190px; max-height: 65vh; overflow-y: auto; background: var(--white); border: 1px solid var(--line); border-radius: 7px; padding: 8px; box-shadow: 0 12px 30px #173c3212; }
.language-menu a { padding: 7px 11px; border-radius: 3px; }
.language-menu a[aria-current=page] { background: #eaf1e4; font-weight: 650; }
.hero-copy, .checker, .app-card, .input-line { min-width: 0; }
.hero h1 { font-size: clamp(36px, 3.4vw, 60px); overflow-wrap: anywhere; }
.lead { max-width: 44ch; }
.app-meta strong { overflow-wrap: anywhere; }
.app-card p { display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }
.input-line button { max-width: 52%; white-space: normal; line-height: 1.3; padding-block: 9px; }
.checker-bottom { flex-wrap: wrap; }
.hero-notes { row-gap: 6px; }
.manual-input button { max-width: 55%; line-height: 1.3; }
.facts-strip { flex-wrap: wrap; gap: 14px 26px; }
.footer a, .facts-strip a { white-space: normal; }
@media (max-width: 760px) {
  .topbar > nav { flex-wrap: wrap; gap: 12px 18px; }
  .language-menu > nav { right: auto; left: 0; }
  .hero h1 { font-size: clamp(36px, 10vw, 49px); }
  .result { flex-wrap: wrap; }
  .idle-graphic { display: none; }
  .report-detail dl { grid-template-columns: minmax(0, 1fr); }
  .report-detail dd { margin-bottom: 8px; }
  .app-grid { grid-template-columns: minmax(0, 1fr); }
  .app-meta { display: flex; }
  .section-title h2 { overflow-wrap: anywhere; }
}
