/* Obsah bežných WP stránok z editora (ochrana súkromia, cookies, galéria…) v dizajne webu */

.wp-obsah {
  max-width: 80ch;
}

.wp-obsah a {
  text-decoration: underline;
  text-underline-offset: 3px;
}

.wp-obsah ol {
  padding-left: 1.4em;
  list-style: decimal;
  display: grid;
  gap: 6px;
}

.wp-obsah img,
.wp-obsah iframe,
.wp-obsah video {
  max-width: 100%;
  height: auto;
}

.wp-obsah table {
  width: 100%;
  border-collapse: collapse;
}

.wp-obsah th,
.wp-obsah td {
  border: 1px solid var(--line);
  padding: 8px 10px;
  text-align: left;
  vertical-align: top;
}

.wp-obsah .aligncenter {
  display: block;
  margin-inline: auto;
}

.wp-obsah .alignleft {
  float: left;
  margin: 0 20px 12px 0;
}

.wp-obsah .alignright {
  float: right;
  margin: 0 0 12px 20px;
}

.wp-obsah .wp-caption-text,
.wp-obsah figcaption {
  font-size: 0.9rem;
  color: var(--muted);
}

/* prihlásený používateľ má hore lištu WordPressu – prilepené menu ide pod ňu, nie za ňu */
.admin-bar .nav {
  top: 32px;
}

@media (max-width: 782px) {
  .admin-bar .nav {
    top: 46px;
  }
}

/* na mobile WP lišta nie je prilepená, menu sa môže prilepiť až k hornému okraju */
@media (max-width: 600px) {
  .admin-bar .nav {
    top: 0;
  }
}

/* galéria (NextGEN aj WP galéria) môže byť širšia než text */
.wp-obsah .ngg-galleryoverview,
.wp-obsah .gallery,
.wp-obsah .wp-block-gallery {
  max-width: none;
}

/* ---------- Kontaktný formulár (Contact Form 7) na stránke Kontakt ---------- */

/* odznak reCAPTCHA v3 (vpravo dole na každej stránke) by prekryl tlačidlo chatu – namiesto neho je pri formulári
   upozornenie .formular__recaptcha, čo Google dovoľuje (jednicka_recaptcha_upozornenie v inc/render.php) */
.grecaptcha-badge {
  visibility: hidden;
}

.formular__recaptcha {
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.45;
}

.formular__recaptcha a {
  color: inherit;
}

/* biela karta v ľavom stĺpci kontaktov – rovnaká ako karta s mapou vpravo (.contact__card) */
.formular {
  margin-top: 14px;
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 28px 26px;
  display: grid;
  gap: 6px;
}

.formular__title {
  font-size: 1.25rem;
}

.formular__lead {
  color: var(--muted);
  font-size: 0.95rem;
  margin-bottom: 10px;
}

/* meno a e-mail vedľa seba, ostatné polia na celú šírku */
.formular .wpcf7-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 12px;
}

.formular .wpcf7-form > * {
  grid-column: 1 / -1;
}

.formular .wpcf7-form > p:nth-of-type(1),
.formular .wpcf7-form > p:nth-of-type(2) {
  grid-column: auto;
}

@media (max-width: 520px) {
  .formular .wpcf7-form > p:nth-of-type(1),
  .formular .wpcf7-form > p:nth-of-type(2) {
    grid-column: 1 / -1;
  }
}

.formular .wpcf7-form p {
  margin: 0;
}

.formular .wpcf7-form-control-wrap {
  display: block;
}

.formular input[type="text"],
.formular input[type="email"],
.formular input[type="tel"],
.formular textarea {
  width: 100%;
  padding: 14px 16px;
  border: 1px solid var(--line);
  border-radius: var(--radius-s);
  background: var(--paper);
  color: var(--text);
  font: inherit;
  font-size: 1rem;
  transition: border-color 0.15s ease, background-color 0.15s ease, box-shadow 0.15s ease;
}

/* CF7 dáva poľu správy 10 riadkov – nižšie, aby formulár končil zhruba s kartou mapy vedľa */
.formular textarea {
  height: 130px;
  min-height: 100px;
  resize: vertical;
}

.formular input::placeholder,
.formular textarea::placeholder {
  color: var(--muted);
}

.formular input:focus,
.formular textarea:focus {
  outline: none;
  border-color: var(--accent);
  background: var(--white);
  box-shadow: 0 0 0 4px var(--accent-glow);
}

.formular input[type="submit"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 16px 30px;
  border: 0;
  border-radius: 999px;
  background: var(--accent);
  color: var(--on-accent);
  font: inherit;
  font-weight: 800;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 10px 30px var(--accent-glow);
  transition: background-color 0.18s ease, transform 0.18s ease;
}

.formular input[type="submit"]:hover {
  background: var(--accent-hover);
}

.formular input[type="submit"]:active {
  transform: translateY(1px);
}

.formular input[type="submit"]:focus-visible {
  outline: 3px solid var(--ink);
  outline-offset: 3px;
}

.formular .wpcf7-spinner,
.formular .ajax-loader {
  margin-left: 12px;
  vertical-align: middle;
}

/* chyba pri poli a správa po odoslaní */
.formular input.wpcf7-not-valid,
.formular textarea.wpcf7-not-valid {
  border-color: #b3261e;
}

.formular .wpcf7-not-valid-tip {
  display: block;
  margin-top: 6px;
  color: #b3261e;
  font-size: 0.9rem;
  font-weight: 700;
}

.formular .wpcf7 form .wpcf7-response-output {
  margin: 4px 0 0;
  padding: 12px 16px;
  border: 2px solid var(--line);
  border-radius: var(--radius-s);
  font-weight: 700;
}

.formular .wpcf7 form.sent .wpcf7-response-output {
  border-color: #2e7d32;
  background: #edf7ee;
  color: #1b5e20;
}

.formular .wpcf7 form.invalid .wpcf7-response-output,
.formular .wpcf7 form.unaccepted .wpcf7-response-output,
.formular .wpcf7 form.failed .wpcf7-response-output,
.formular .wpcf7 form.spam .wpcf7-response-output {
  border-color: #b3261e;
  background: #fdeceb;
  color: #8c1d18;
}
