/* Phone fixes shared by every page (header-home, header-check, header-dashboard).
   Desktop (>= 768px) is untouched except the menu labels staying hidden. */

/* Header: names next to the three checker icons (shown in the open hamburger menu only) */
.navbar .menu-label { display: none; }

@media screen and (max-width: 767px) {
  .navbar-toggle { min-height: 40px; min-width: 44px; }
  .navbar .navbar-nav > li > a .menu-label { display: inline-block; margin-left: 10px; vertical-align: middle; font-size: 16px; font-weight: 600; line-height: 30px; color: inherit; }
  .navbar .navbar-nav > li > a .image-menu { vertical-align: middle; margin-top: 0; }
  .navbar .navbar-nav > li > a { min-height: 44px; }

  /* Headings: wrapped text must not collide with its own next line */
  h1, h2, h3, h4, h5, h6,
  .h1, .h2, .h3, .h4, .h5, .h6 { line-height: 1.2 !important; }
  h2.text-center { font-size: 24px; margin-left: 15px; margin-right: 15px; }
  .title-result, .title-atau { line-height: 1.25 !important; }

  /* Ads keep their place in the flow and never sit on content */
  .sticky_bottom { max-width: 100vw; width: 100%; left: 0; right: 0; box-sizing: border-box; }
  body:has(.sticky_bottom) { padding-bottom: 70px; }
  /* AnyMind floating video (#sliderDiv): dock it at the bottom edge (above the 320x50 bar) instead of mid-screen */
  /* cookie banner sits above the sticky ad bar, and the page scrolls clear of both */
  body:has(.sticky_bottom) .cc-window { bottom: 66px !important; }
  body:has(.cc-window):has(.sticky_bottom) { padding-bottom: 250px; }
  body:has(.cc-window:not(.cc-invisible)) { padding-bottom: 190px; }
  /* AnyMind scales its 320px box to 45% around the centre, so the visible ad floated ~90px above its own bottom edge:
     scale from the bottom-right corner instead, so the ad sits right on top of the 60px sticky bar */
  #sliderDiv { top: auto !important; bottom: 64px !important; transform: translateX(-6px) scale(0.45) !important; transform-origin: right bottom !important; }
  body:has(#sliderDiv > *) { padding-bottom: 230px; }
  /* Text checker: a small gap left and right of the input and result boxes (they touched the screen edges) */
  #textpage > .col-md-5 { padding-left: 8px !important; padding-right: 8px !important; }
  /* Reserve the space of in-flow slots so the page does not jump under the reader */
  [id^="div-gpt-ad-"], #sas_44269 { max-width: 100%; overflow: hidden; }

  /* Tap targets >= 40px */
  footer a { display: inline-block; padding: 11px 0; line-height: 18px; }
  footer .footer-image { padding: 0; }
  footer a:has(> i) { min-width: 40px; text-align: center; }
  .doc-toc a, .doc-lang a { display: inline-block; padding: 9px 0; }
  .doc-lang a { padding: 9px 6px; }
  .auth-card a:not(.auth-tab):not(.auth-logo) { display: inline-block; padding: 10px 2px; }
  .auth-input, .auth-submit, .auth-btn-fb, .auth-tab { min-height: 44px; }
  .dash-btn, .dash-link, .dash-chip { min-height: 40px; min-width: 40px; display: inline-flex; align-items: center; justify-content: center; }
  .dash-quick-item, .dash-nav-item { min-height: 44px; }
  .home-v2 .list-kata a, .other_word { display: inline-block; padding-top: 10px; padding-bottom: 10px; min-height: 40px; box-sizing: border-box; }
  .home-v2 .main-result a { display: inline-block; padding: 8px 0; }
}

/* menu button: the same look open or closed (no grey box when tapped or open), white outline and lines */
.navbar .navbar-toggle,
.navbar .navbar-toggle:hover,
.navbar .navbar-toggle:focus,
.navbar .navbar-toggle:active,
.navbar .navbar-toggle[aria-expanded="true"] { background-color: transparent !important; border-color: rgba(255,255,255,.75) !important; box-shadow: none !important; }
.navbar .navbar-toggle .icon-bar { background-color: #fff !important; }
