/* Website forms ([FORM]id[/FORM]). Override the --wms-form-* variables in the site CSS to restyle. */
.wms-form {
  --wms-form-akcent: var(--color-one, var(--mw-color-1, #1f6feb));
  --wms-form-text: inherit;
  --wms-form-tlumene: color-mix(in srgb, currentColor 62%, transparent);
  --wms-form-okraj: color-mix(in srgb, currentColor 22%, transparent);
  --wms-form-pozadi: var(--wms-form-pole-pozadi, #fff);
  --wms-form-chyba: #d93025;
  --wms-form-uspech: #137333;
  --wms-form-radius: 8px;
  --wms-form-mezera: 16px;
  position: relative;
  color: var(--wms-form-text);
  font: inherit;
}
/* Themes often style the legacy builder `.form` as a grid or flex row; the field grid below handles layout. */
.form.wms-form { display: block; grid-template-columns: none; flex-direction: column; columns: auto; height: auto; }
.wms-form .wms-akce .wms-odeslat { height: auto; align-self: flex-start; }
.wms-form .wms-pole-mriz { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: var(--wms-form-mezera); }
.wms-form .wms-pole { grid-column: span 6; display: flex; flex-direction: column; gap: 6px; width: auto; max-width: none; min-width: 0; margin: 0; padding: 0; float: none; }
.wms-form .wms-pole.wms-half { grid-column: span 3; }
.wms-form .wms-pole.wms-third { grid-column: span 2; }
@media (max-width: 640px) {
  .wms-form .wms-pole.wms-half, .wms-form .wms-pole.wms-third { grid-column: span 6; }
}
.wms-form .wms-pole > label, .wms-form .wms-stitek { font-weight: 600; font-size: .92em; line-height: 1.35; }
.wms-form .wms-povinne { margin-left: 3px; color: var(--wms-form-chyba); }
.wms-form :is(input[type=text], input[type=email], input[type=tel], input[type=number], input[type=date], select, textarea) {
  box-sizing: border-box; width: 100%; min-height: 46px; margin: 0; padding: 11px 14px;
  border: 1px solid var(--wms-form-okraj); border-radius: var(--wms-form-radius); background: var(--wms-form-pozadi);
  color: #1b1b1f; font: inherit; font-size: 1rem; line-height: 1.4; transition: border-color .15s, box-shadow .15s;
}
.wms-form textarea { min-height: 120px; resize: vertical; }
.wms-form select { appearance: auto; }
.wms-form :is(input, select, textarea):focus { outline: none; border-color: var(--wms-form-akcent); box-shadow: 0 0 0 3px color-mix(in srgb, var(--wms-form-akcent) 22%, transparent); }
.wms-form input[type=file] { font: inherit; font-size: .92em; max-width: 100%; }
.wms-form .wms-volby { display: flex; flex-wrap: wrap; gap: 8px 18px; }
.wms-form .wms-volba { display: inline-flex; align-items: flex-start; gap: 9px; font-weight: 400; cursor: pointer; line-height: 1.45; }
.wms-form .wms-volba input { flex: none; width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--wms-form-akcent); }
.wms-form .wms-souhlas { font-size: .92em; }
.wms-form .wms-volba a, .wms-form .wms-napoveda a { color: inherit; text-decoration: underline; }
.wms-form .wms-napoveda { color: var(--wms-form-tlumene); font-size: .85em; line-height: 1.45; }
.wms-form .wms-chyba { color: var(--wms-form-chyba); font-size: .85em; line-height: 1.4; }
.wms-form .wms-chyba:empty { display: none; }
.wms-form .wms-neplatne :is(input, select, textarea):not([type=checkbox]):not([type=radio]) { border-color: var(--wms-form-chyba); }
.wms-form .wms-platne :is(input, select, textarea):not([type=checkbox]):not([type=radio]) { border-color: color-mix(in srgb, var(--wms-form-uspech) 70%, transparent); }
.wms-form .wms-pole:not(.wms-neplatne) .wms-chyba { display: none; }
.wms-form .wms-nadpis { margin: 8px 0 0; font-size: 1.15em; }
.wms-form .wms-typ-nadpis p { margin: 0; color: var(--wms-form-tlumene); }
.wms-form .wms-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.wms-form .wms-turnstile { margin-top: var(--wms-form-mezera); }
.wms-form .wms-akce { display: flex; margin-top: calc(var(--wms-form-mezera) + 4px); }
/* Theme `.button` classes usually colour only an inner <a>; the submit holds plain text, so it needs its own text styles. */
.wms-form .wms-odeslat {
  position: relative; min-width: 140px; min-height: 46px; padding: 0 28px; border: 0; cursor: pointer;
  color: var(--wms-form-tlacitko-text, #fff); font: inherit; font-size: var(--text-velikost-4, 1rem); font-weight: 600; line-height: 1.2; white-space: nowrap;
}
.wms-form .wms-odeslat:disabled { opacity: .7; cursor: progress; }
.wms-form .wms-vysledek { margin-top: var(--wms-form-mezera); padding: 12px 16px; border-radius: var(--wms-form-radius); line-height: 1.5; outline: none; }
.wms-form .wms-vysledek[hidden] { display: none; }
.wms-form .wms-vysledek.wms-uspech { background: color-mix(in srgb, var(--wms-form-uspech) 10%, transparent); color: var(--wms-form-uspech); }
.wms-form .wms-vysledek.wms-chyba { background: color-mix(in srgb, var(--wms-form-chyba) 9%, transparent); color: var(--wms-form-chyba); }
.wms-form.wms-odeslano .wms-pole-mriz, .wms-form.wms-odeslano .wms-akce, .wms-form.wms-odeslano .wms-turnstile { display: none; }
.wms-form.wms-odeslano .wms-vysledek { margin-top: 0; }
.wms-form-vypnuty p { opacity: .7; }
