/* Pouze vlastní modul personalizace; původní ceny a sklad se nepřepisují. */
.kuf-pers-box { padding:18px; margin:18px 0; border:1px solid #cbd5e1; border-radius:8px; background:#fff; color:#18334e; box-sizing:border-box; max-width:100%; }
.kuf-pers-box h2 { font-size:20px; margin:0 0 14px; }
.kuf-pers-box p { line-height:1.55; }
.kuf-pers-label { display:block; font-weight:700; margin:0 0 8px; }
.kuf-pers-fields { margin-top:16px; }
.kuf-pers-box [hidden] { display:none !important; }
.kuf-pers-box .form-control { width:100%; min-height:44px; max-width:100%; border:1px solid #98a8ba; border-radius:4px; background:#fff; color:#18334e; font-size:16px; margin-bottom:8px; }
.kuf-pers-box .form-control:focus-visible { outline:3px solid #3a79bc; outline-offset:2px; }
.kuf-pers-small { font-size:13px; color:#4b6075; }
.kuf-pers-confirm { display:block; font-weight:400; font-size:14px; line-height:1.6; }
.kuf-pers-confirm input { width:18px; height:18px; vertical-align:middle; margin-right:4px; }
.kuf-pers-status { font-size:14px; font-weight:600; }
.kuf-pers-status:empty { display:none; }
.kuf-pers-cart-link { text-decoration:underline; }
.kuf-pers-notice { border:1px solid #9ab4cb; background:#f0f6fb; padding:15px; margin:16px 0; color:#18334e; }
.kuf-pers-error { color:#962b23; background:#fff2f0; padding:10px; border-radius:4px; }
.kuf-pers-summary { overflow-wrap:anywhere; background:#fff; border:1px solid #d8e1eb; padding:10px; }
.kuf-pers-box .btn { margin:6px 8px 6px 0; white-space:normal; min-height:44px; }
.kuf-pers-recovery-row { padding:12px 0; border-bottom:1px solid #d5dfea; }
.kuf-pers-recovery-row label { display:block; width:100%; }
.kuf-pers-recovery-row select { margin-top:7px; }
/* Volba personalizace nesmí zobrazit původní kratší příslib doručení kufru. */
.kuf-pers-selected #product-detail-form .delivery-time-row { display:none; }
.kuf-pers-availability-note { display:none; font-size:14px; color:#18334e; }
.kuf-pers-selected .kuf-pers-availability-note { display:inline; }
@media(max-width:480px) { .kuf-pers-box {padding:14px;} .kuf-pers-box .btn {width:100%;margin-right:0;} }

/* Oprava 2.1: bílé pozadí a viditelné nativní zaškrtávací políčko. */
.kuf-pers-box {
  background: #fff !important;
}
#kuf-pers-box .kuf-pers-confirm {
  display: flex !important;
  align-items: flex-start;
  gap: 10px;
  padding-left: 0 !important;
}
#kuf-pers-box .kuf-pers-confirm::before,
#kuf-pers-box .kuf-pers-confirm::after {
  display: none !important;
}
#kuf-pers-box #kuf-pers-confirm {
  -webkit-appearance: checkbox !important;
  appearance: auto !important;
  display: inline-block !important;
  position: static !important;
  opacity: 1 !important;
  visibility: visible !important;
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  max-width: 20px !important;
  flex: 0 0 20px;
  margin: 3px 0 0 !important;
  clip: auto !important;
  clip-path: none !important;
  transform: none !important;
  pointer-events: auto !important;
  accent-color: #18334e;
}
#kuf-pers-box #kuf-pers-confirm:focus-visible {
  outline: 2px solid #3575b4;
  outline-offset: 3px;
}

/* Oprava 2.2: popisek nativní poznámky nad polem, bez překrývání textu. */
.kuf-pers-note-group {
  display: block;
}
.kuf-pers-note-label {
  position: static !important;
  display: block !important;
  inset: auto !important;
  top: auto !important;
  left: auto !important;
  transform: none !important;
  float: none !important;
  width: auto !important;
  max-width: 100%;
  margin: 0 0 8px !important;
  padding: 0 !important;
  line-height: 1.4 !important;
  font-size: 14px !important;
  background: transparent !important;
}
textarea.kuf-pers-note-field {
  display: block;
  width: 100%;
  max-width: 100%;
  min-height: 180px !important;
  height: auto !important;
  padding: 12px !important;
  line-height: 1.6 !important;
  box-sizing: border-box;
  background: #fff !important;
  resize: vertical;
}
