/* iNaprawy Rezerwacje — subtelnie odświeżony wygląd formularza */
.inr-booking{
  --inr-text:#1d1d1f;
  --inr-muted:#6e6e73;
  --inr-border:#e5e5ea;
  --inr-border-strong:#d2d2d7;
  --inr-bg:#f5f5f7;
  --inr-surface:#fff;
  --inr-primary:#111;
  --inr-primary-hover:#2b2b2f;
  --inr-success:#137333;
  --inr-error:#b3261e;
  --inr-radius:14px;
  --inr-shadow:0 10px 35px rgba(0,0,0,.06);
  max-width:900px;
  margin:0 auto;
  color:var(--inr-text);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}

.inr-booking *,
.inr-booking *::before,
.inr-booking *::after{box-sizing:border-box}

.inr-form{
  display:grid;
  gap:20px;
  padding:28px;
  background:var(--inr-surface);
  border:1px solid var(--inr-border);
  border-radius:20px;
  box-shadow:var(--inr-shadow);
}

.inr-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.inr-form label{
  display:grid;
  gap:8px;
  margin:0;
  font-size:14px;
  line-height:1.35;
  font-weight:650;
  color:var(--inr-text);
}

.inr-form input,
.inr-form select,
.inr-form textarea{
  width:100%;
  min-height:48px;
  border:1px solid var(--inr-border-strong);
  border-radius:var(--inr-radius);
  padding:12px 14px;
  font:inherit;
  font-size:15px;
  font-weight:400;
  color:var(--inr-text);
  background:#fff;
  outline:none;
  transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease;
  -webkit-appearance:none;
  appearance:none;
}

.inr-form select{
  padding-right:42px;
  background-image:linear-gradient(45deg,transparent 50%,#6e6e73 50%),linear-gradient(135deg,#6e6e73 50%,transparent 50%);
  background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%;
  background-size:6px 6px,6px 6px;
  background-repeat:no-repeat;
}

.inr-form textarea{
  min-height:116px;
  resize:vertical;
  line-height:1.5;
}

.inr-form input:focus,
.inr-form select:focus,
.inr-form textarea:focus{
  border-color:var(--inr-primary);
  box-shadow:0 0 0 4px rgba(0,0,0,.08);
}

.inr-form input:disabled,
.inr-form select:disabled,
.inr-form textarea:disabled{
  color:#8a8a8e;
  background:var(--inr-bg);
  cursor:not-allowed;
}

.inr-section{
  display:grid;
  gap:12px;
  padding-top:4px;
}

.inr-section > strong{
  display:block;
  font-size:15px;
  color:var(--inr-text);
}

.inr-slots{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  min-height:44px;
  align-items:center;
}

.inr-slot{
  border:1px solid var(--inr-border-strong);
  background:#fff;
  color:var(--inr-text);
  border-radius:999px;
  padding:11px 17px;
  min-width:76px;
  font:inherit;
  font-size:15px;
  font-weight:650;
  line-height:1;
  cursor:pointer;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease;
}

.inr-slot:hover{
  border-color:var(--inr-primary);
  transform:translateY(-1px);
  box-shadow:0 6px 18px rgba(0,0,0,.08);
}

.inr-slot.active{
  border-color:var(--inr-primary);
  background:var(--inr-primary);
  color:#fff;
  box-shadow:0 8px 22px rgba(0,0,0,.16);
}

.inr-submit{
  justify-self:start;
  min-height:50px;
  border:0;
  border-radius:var(--inr-radius);
  padding:14px 26px;
  background:var(--inr-primary);
  color:#fff;
  font:inherit;
  font-weight:750;
  letter-spacing:.02em;
  text-transform:uppercase;
  cursor:pointer;
  transition:background-color .16s ease,transform .16s ease,box-shadow .16s ease,opacity .16s ease;
}

.inr-submit:hover{
  background:var(--inr-primary-hover);
  transform:translateY(-1px);
  box-shadow:0 8px 22px rgba(0,0,0,.14);
}

.inr-submit:disabled{
  opacity:.6;
  cursor:not-allowed;
  transform:none;
  box-shadow:none;
}

.inr-consent{
  display:flex!important;
  grid-template-columns:auto 1fr!important;
  align-items:flex-start;
  gap:10px!important;
  font-size:14px!important;
  line-height:1.45!important;
  font-weight:400!important;
  color:var(--inr-muted)!important;
}

.inr-consent input{
  width:18px!important;
  min-height:18px!important;
  height:18px!important;
  margin:2px 0 0!important;
  padding:0!important;
  flex:0 0 18px;
  appearance:auto;
  -webkit-appearance:checkbox;
}

.inr-consent a{color:var(--inr-text);text-decoration:underline;text-underline-offset:3px}

.inr-message{
  min-height:22px;
  font-weight:650;
  line-height:1.45;
}

.inr-message.success,
.inr-message.inr-success{color:var(--inr-success)}
.inr-message.error,
.inr-message.inr-error{color:var(--inr-error)}

.inr-muted{
  color:var(--inr-muted);
  margin:0;
  font-size:14px;
}

.inr-hp{position:absolute!important;left:-9999px!important}

@media(max-width:700px){
  .inr-booking{max-width:100%}
  .inr-form{padding:20px;border-radius:16px;gap:18px}
  .inr-grid{grid-template-columns:1fr;gap:16px}
  .inr-slot{flex:1 1 calc(33.333% - 10px);min-width:0;text-align:center;padding-left:10px;padding-right:10px}
  .inr-submit{width:100%;justify-self:stretch}
}

@media(max-width:420px){
  .inr-form{padding:18px}
  .inr-slot{flex-basis:calc(50% - 10px)}
}
