/* Komponent: form — polia, labely, validácia (mockupy account/admin) */

.field{ margin-bottom:var(--sp-4); }
.field > label{
  display:block; font-size:12px; letter-spacing:.06em; text-transform:uppercase;
  color:var(--muted); margin-bottom:6px;
}

.input,
input[type="text"], input[type="email"], input[type="password"],
input[type="search"], input[type="number"], input[type="tel"],
select, textarea{
  width:100%; font-family:var(--font-body); font-size:15px; color:var(--text);
  background:var(--paper); border:1px solid var(--line-strong); border-radius:var(--r-sm);
  padding:11px 14px; transition:border-color var(--t-fast) var(--ease);
}
.input:focus,
input:focus, select:focus, textarea:focus{ outline:none; border-color:var(--crema); }
textarea{ min-height:120px; resize:vertical; }

.field--error .input,
.field--error input, .field--error select, .field--error textarea{ border-color:var(--rosso); }
.field-error{ color:var(--rosso); font-size:12.5px; margin-top:5px; }
.hint{ color:var(--muted); font-size:12.5px; margin-top:5px; }

/* Checkbox/label — text aj odkazy ostávajú INLINE (predtým display:flex robil z každého
   <a>/textového úseku samostatný flex-prvok → súhlas s odkazmi sa roztrhal do stĺpcov).
   Block + absolútny input → text plynie normálne a prirodzene wrapuje. */
.checkbox{ display:block; position:relative; padding-left:28px; font-size:14px; line-height:1.5; }
.checkbox input{ position:absolute; left:0; top:3px; width:auto; margin:0; }
