/* Pola personalizacji na karcie produktu (formularz przed "Dodaj do koszyka") - jak pozostałe pola sklepu */
.tk-pers { margin: 0 0 22px; width: 100%; }
.tk-pers__pole { margin: 0 0 16px; }
.tk-pers__etykieta { display: block; margin: 0 0 6px 4px; font-size: 13px; font-weight: 600; letter-spacing: 0.02em; color: #424245; }
.tk-pers__etykieta .required { color: #d70015; text-decoration: none; }
.tk-pers input[type="text"] {
  width: 100%; height: 50px; padding: 0 20px; box-sizing: border-box;
  border: 1px solid #c8c8c8; border-radius: 999px; background: #fff; color: #111; font-size: 16px; box-shadow: none;
}
.tk-pers input[type="text"]:focus { border-color: #111; outline: none; }
.tk-pers__opcje { display: flex; flex-wrap: wrap; gap: 10px; }
.tk-pers__opcja { position: relative; margin: 0; cursor: pointer; }
.tk-pers__opcja input { position: absolute; opacity: 0; pointer-events: none; }
.tk-pers__opcja span {
  display: inline-block; padding: 3px 26px; border: 1px solid #c8c8c8; border-radius: 999px;
  background: #fff; color: #111; font-size: 15px; transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}
.tk-pers__opcja input:checked + span { background: #111; border-color: #111; color: #fff; }
.tk-pers__opcja input:focus-visible + span { outline: 2px solid #0066cc; outline-offset: 2px; }
.tk-pers input[type="file"] { display: block; width: 100%; font-size: 14px; color: #424245; }
.tk-pers input[type="file"]::file-selector-button {
  margin-right: 14px; padding: 3px 26px; border: 1px solid #c8c8c8; border-radius: 999px;
  background: #fff; color: #111; font-size: 14px; font-weight: 500; cursor: pointer; transition: background 0.15s ease;
}
.tk-pers input[type="file"]::file-selector-button:hover { background: #f5f5f7; }
.tk-pers__podpowiedz { display: block; margin: 6px 0 0 4px; font-size: 12px; color: #6e6e73; }
