/* Foursys Manager – közös alkalmazás stílus + mobil/iOS (PWA) optimalizálás */

/* ---------------------------------------------------------------------------
 * Alap színek / eredmény doboz (korábban a base.html-ben inline volt)
 * ------------------------------------------------------------------------- */
.result-box {
  background-color: #2b3035;
  border: 1px solid #495057;
  border-radius: 0.375rem;
  padding: 1rem;
  margin-top: 1rem;
  max-height: 420px;
  overflow-y: auto;
  color: #f8f9fa;
  white-space: pre-wrap;
  /* iOS-en lendületes (momentum) görgetés a kód/log dobozokban */
  -webkit-overflow-scrolling: touch;
  /* Hosszú, tördelhetetlen sorok (pl. traceback) ne feszítsék szét a layoutot */
  overflow-wrap: anywhere;
  word-break: break-word;
}

/* ---------------------------------------------------------------------------
 * iOS "safe area" (notch / Dynamic Island / home indicator) kezelése.
 * A viewport-fit=cover mellett a tartalom a biztonságos zónába kerül.
 * ------------------------------------------------------------------------- */
body {
  min-height: 100svh;
  padding-left: env(safe-area-inset-left);
  padding-right: env(safe-area-inset-right);
  /* iOS-en a szövegméret ne skálázódjon váratlanul fekvő módban */
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

.navbar {
  padding-top: calc(0.5rem + env(safe-area-inset-top));
  padding-left: calc(0.5rem + env(safe-area-inset-left));
  padding-right: calc(0.5rem + env(safe-area-inset-right));
}

footer {
  padding-bottom: calc(1.5rem + env(safe-area-inset-bottom)) !important;
}

/* ---------------------------------------------------------------------------
 * iOS input auto-zoom megelőzése: a 16px-nél kisebb betűs mezőkre fókuszáláskor
 * a Safari belenagyít. Mobilon minden űrlapmezőt legalább 16px-re állítunk.
 * ------------------------------------------------------------------------- */
@media (max-width: 767.98px) {
  .form-control,
  .form-select,
  textarea,
  input[type="text"],
  input[type="password"],
  input[type="email"],
  input[type="number"],
  input[type="search"] {
    font-size: 16px;
  }

  /* Kényelmes, "hüvelykujj-barát" érintési célpontok mobilon */
  .btn {
    min-height: 44px;
  }

  .btn-sm {
    min-height: 38px;
  }

  .navbar .nav-link {
    padding-top: 0.6rem;
    padding-bottom: 0.6rem;
  }

  /* Táblázatok mobilon kicsit kompaktabbak, de olvashatóak maradnak */
  .table {
    font-size: 0.9rem;
  }
}

/* ---------------------------------------------------------------------------
 * Touch-eszközök: tapintható visszajelzés, dupla-koppintásos zoom kikapcsolása
 * a gombokon/linkeken, és a natívabb érzet.
 * ------------------------------------------------------------------------- */
.btn,
.nav-link,
a[role="button"],
button {
  touch-action: manipulation;
}

/* Görgetés lendülettel a reszponzív táblázatokban is */
.table-responsive {
  -webkit-overflow-scrolling: touch;
}

/* ---------------------------------------------------------------------------
 * Standalone (kezdőképernyőről indított PWA) mód finomhangolása.
 * ------------------------------------------------------------------------- */
@media (display-mode: standalone) {
  /* A hosszú nyomásra megjelenő szövegkijelölést a nem-tartalmi elemeknél tiltjuk,
     hogy natívabb (app-szerű) érzetet adjon. */
  .navbar,
  .btn,
  footer {
    -webkit-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
  }
}

/* A "Telepítés" gomb alapból rejtett, JS mutatja meg, ha telepíthető. */
#pwa-install-btn {
  display: none;
}
