/* ============================================================================
   Formulár žiadosti o prijatie do záujmového útvaru
   ========================================================================== */
.zia-overlay{
  position:fixed;inset:0;z-index:2000;display:none;
  background:rgba(15,17,21,.6);backdrop-filter:blur(3px);
  padding:2rem 1rem;overflow-y:auto;
}
.zia-overlay.open{display:block}
.zia-sheet{
  background:#fff;border-radius:22px;max-width:760px;margin:0 auto;
  box-shadow:0 24px 60px rgba(0,0,0,.28);position:relative;overflow:hidden;
}
.zia-head{
  padding:1.5rem 1.8rem 1.2rem;border-bottom:1px solid #EEF0F3;
  position:sticky;top:0;background:#fff;z-index:2;
}
.zia-head h2{font-family:var(--display);font-size:1.5rem;line-height:1.2;padding-right:2.5rem}
.zia-head p{color:var(--muted);font-size:.85rem;margin-top:.25rem}
.zia-close{
  position:absolute;top:1.1rem;right:1.2rem;border:none;background:#F3F4F6;
  width:34px;height:34px;border-radius:50%;cursor:pointer;font-size:1rem;line-height:1;
}
.zia-body{padding:1.4rem 1.8rem 2rem}

.zia-sec{margin-bottom:1.9rem}
.zia-sec > h3{
  font-family:var(--display);font-size:1.12rem;margin-bottom:.2rem;
  display:flex;align-items:center;gap:.5rem;
}
.zia-sec > h3 .num{
  width:24px;height:24px;border-radius:50%;background:var(--primary);color:#fff;
  font-family:var(--font);font-size:.78rem;font-weight:800;
  display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;
}
.zia-sec > .zia-hint{color:var(--muted);font-size:.8rem;margin:.15rem 0 .9rem 2rem}

.zia-row{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}
.zia-f{margin-bottom:.9rem}
.zia-f label{display:block;font-weight:800;font-size:.79rem;margin-bottom:.3rem}
.zia-f .req{color:var(--pink)}
.zia-f input, .zia-f select, .zia-f textarea{
  width:100%;padding:.66rem .9rem;border-radius:11px;border:2px solid #E5E7EB;
  font-family:var(--font);font-size:.88rem;outline:none;background:#fff;color:var(--text);
  transition:border-color .15s;
}
.zia-f input:focus, .zia-f select:focus, .zia-f textarea:focus{border-color:var(--primary)}
.zia-f .note{font-size:.73rem;color:var(--muted);font-weight:600;margin-top:.25rem}

/* vybraté krúžky */
.zia-kruzok{
  display:flex;align-items:center;gap:.8rem;background:#F9FAFB;
  border:2px solid #EEF0F3;border-radius:13px;padding:.7rem .9rem;margin-bottom:.6rem;
}
.zia-kruzok .em{font-size:1.5rem;line-height:1}
.zia-kruzok .info{flex:1;min-width:0}
.zia-kruzok .nm{font-weight:800;font-size:.9rem}
.zia-kruzok .meta{font-size:.75rem;color:var(--muted);font-weight:700}
.zia-kruzok button{
  border:none;background:#fff;border:2px solid #E5E7EB;border-radius:9px;
  width:30px;height:30px;cursor:pointer;font-size:.85rem;color:var(--muted);flex-shrink:0;
}
.zia-kruzok button:hover{border-color:var(--pink);color:var(--pink)}

/* právne texty */
.zia-legal{
  background:#FAFAFB;border:1px solid #EEF0F3;border-radius:13px;
  padding:1rem 1.1rem;font-size:.81rem;line-height:1.6;color:#3A3A3A;margin-bottom:.9rem;
}
.zia-legal p{margin-bottom:.6rem}
.zia-legal p:last-child{margin-bottom:0}
.zia-legal ol{margin:.4rem 0 0 1.1rem}
.zia-legal li{margin-bottom:.4rem}
.zia-legal b{color:var(--text)}

.zia-check{
  display:flex;gap:.65rem;align-items:flex-start;font-size:.84rem;line-height:1.5;
  font-weight:700;cursor:pointer;margin-bottom:.7rem;
}
.zia-check input{width:19px;height:19px;accent-color:var(--primary);cursor:pointer;flex-shrink:0;margin-top:.1rem}

/* súhlasy GDPR */
.zia-consent{border:2px solid #EEF0F3;border-radius:13px;padding:.9rem 1rem;margin-bottom:.7rem}
.zia-consent .t{font-weight:800;font-size:.85rem;margin-bottom:.3rem}
.zia-consent .d{font-size:.78rem;color:var(--muted);line-height:1.55;margin-bottom:.7rem}
/* Dve rovnako široké tlačidlá vedľa seba. Obal musí byť blokový, inak by
   sa štítky vykreslili ako obyčajný text a šírku by nedostali. */
.zia-choice{display:flex;gap:.5rem}
.zia-choice > span{flex:1;position:relative;display:block}
.zia-choice input{position:absolute;opacity:0;pointer-events:none}
.zia-choice label{
  display:block;text-align:center;border:2px solid #E5E7EB;border-radius:10px;
  padding:.55rem;font-size:.83rem;font-weight:800;cursor:pointer;color:var(--muted);
  transition:all .15s;
}
.zia-choice label:hover{border-color:var(--primary);color:var(--primary)}
/* Zvolená možnosť je vždy oranžová — aj Nesúhlasím, nech je jasné, čo je stlačené. */
.zia-choice input:checked + label{background:var(--primary);border-color:var(--primary);color:#fff}
.zia-choice input:focus-visible + label{outline:2px solid var(--blue);outline-offset:2px}

.zia-msg{border-radius:12px;padding:.75rem 1rem;font-size:.84rem;font-weight:700;margin-bottom:1rem}
.zia-msg.err{background:#FEF2F2;border:2px solid #FECACA;color:#B91C1C}
.zia-msg.info{background:#EFF6FF;border:2px solid #BFDBFE;color:#1D4ED8}

.zia-submit{
  width:100%;padding:.95rem;border-radius:14px;background:var(--primary);color:#fff;
  border:none;font-family:var(--font);font-weight:800;font-size:1rem;cursor:pointer;
  transition:filter .2s;
}
.zia-submit:hover{filter:brightness(1.06)}
.zia-submit:disabled{opacity:.6;cursor:wait}

/* výsledok */
.zia-done{text-align:center;padding:.5rem 0 0}
.zia-done .em{font-size:3.4rem}
.zia-done h3{font-family:var(--display);font-size:1.5rem;margin:.5rem 0 .3rem}
.zia-done > p{color:var(--muted);font-size:.88rem;margin-bottom:1.3rem}
.zia-steps{text-align:left;display:grid;gap:.8rem;margin-bottom:1.3rem}
.zia-step{
  display:flex;gap:.9rem;align-items:flex-start;background:#FAFAFB;
  border:1px solid #EEF0F3;border-radius:14px;padding:.95rem 1.1rem;
}
.zia-step .n{
  width:26px;height:26px;border-radius:50%;background:var(--primary);color:#fff;
  font-weight:800;font-size:.8rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.zia-step .tx{flex:1;font-size:.85rem;line-height:1.6}
.zia-step .tx b{display:block;margin-bottom:.15rem;font-size:.9rem}
.zia-pay{display:grid;gap:.35rem;margin-top:.5rem;font-size:.83rem}
.zia-pay div{display:flex;gap:.5rem}
.zia-pay .k{color:var(--muted);font-weight:700;min-width:120px}
.zia-pay .v{font-weight:800;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.zia-actions{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:center}
.zia-actions .b{
  border:none;background:var(--primary);color:#fff;border-radius:13px;padding:.75rem 1.3rem;
  font-family:var(--font);font-weight:800;font-size:.88rem;cursor:pointer;text-decoration:none;
  display:inline-flex;align-items:center;gap:.4rem;
}
.zia-actions .b.ghost{background:#fff;color:var(--text);border:2px solid #E5E7EB}

@media(max-width:640px){
  .zia-overlay{padding:0}
  .zia-sheet{border-radius:0;min-height:100vh}
  .zia-head,.zia-body{padding-left:1.1rem;padding-right:1.1rem}
  .zia-row{grid-template-columns:1fr}
}

/* výber dátumu narodenia — deň, mesiac, rok zvlášť */
.cvc-dob{display:grid;grid-template-columns:.8fr 1.3fr 1fr;gap:.5rem}
.cvc-dob select{
  width:100%;padding:.66rem .6rem;border-radius:11px;border:2px solid #E5E7EB;
  font-family:var(--font);font-size:.88rem;outline:none;background:#fff;color:var(--text);
}
.cvc-dob select:focus{border-color:var(--primary)}
