/* Otrock Return Button — formulář odstoupení od smlouvy.
   Obecné přes CSS proměnné; akcent lze přebít přes .orb-form-wrap{--orb-accent:...}. */
.orb-form-wrap{
  --orb-accent:#b03a6e;
  --orb-accent-d:#8c2c57;
  --orb-ink:#2a2622;
  --orb-muted:#6f6862;
  --orb-border:#e5ded6;
  --orb-bg:#fff;
  --orb-panel:#faf6f2;
  --orb-radius:12px;
  max-width:680px;
  margin:1.5rem auto 0;
  color:var(--orb-ink);
  font-size:16px;
  line-height:1.55;
}
.orb-form-wrap *{box-sizing:border-box;}
.orb-form-wrap h2{margin:0 0 .35rem;font-size:1.6rem;line-height:1.15;}
.orb-intro{margin:0 0 1.25rem;color:var(--orb-muted);}

/* Adresát = „hlavička dopisu" (signature prvek) */
.orb-letter{
  background:var(--orb-panel);
  border:1px solid var(--orb-border);
  border-left:3px solid var(--orb-accent);
  border-radius:var(--orb-radius);
  padding:1rem 1.15rem;
  margin:0 0 1.5rem;
}
.orb-letter__label{
  font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;
  color:var(--orb-accent-d);font-weight:700;margin-bottom:.4rem;
}
.orb-letter__body{white-space:pre-line;font-weight:500;}

/* Pole v gridu */
.orb-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.25rem;}
.orb-field{margin:0;display:flex;flex-direction:column;}
.orb-field--full{grid-column:1 / -1;}
.orb-label{font-size:.85rem;font-weight:600;margin-bottom:.35rem;color:var(--orb-ink);}
.orb-req{color:var(--orb-accent);margin-left:.15em;}

.orb-form-wrap input[type=text],
.orb-form-wrap input[type=email],
.orb-form-wrap input[type=date],
.orb-form-wrap textarea{
  width:100%;font:inherit;color:var(--orb-ink);
  padding:.6rem .7rem;
  border:1px solid var(--orb-border);
  border-radius:9px;background:var(--orb-bg);
  transition:border-color .15s ease, box-shadow .15s ease;
}
.orb-form-wrap input:focus,
.orb-form-wrap textarea:focus{
  outline:none;border-color:var(--orb-accent);
  box-shadow:0 0 0 3px rgba(176,58,110,.18);
}
.orb-form-wrap textarea{min-height:84px;resize:vertical;}

.orb-declaration{
  margin:1.5rem 0 1rem;padding:.85rem 1rem;
  background:var(--orb-panel);border-radius:9px;
  border:1px solid var(--orb-border);
  font-style:italic;
}
.orb-consent{
  display:flex;gap:.6rem;align-items:flex-start;
  margin:0 0 1.4rem;font-size:.95rem;cursor:pointer;
}
.orb-consent input{
  margin-top:.15rem;width:1.1rem;height:1.1rem;
  accent-color:var(--orb-accent);flex:0 0 auto;
}

.orb-submit{
  -webkit-appearance:none;appearance:none;border:0;cursor:pointer;
  background:var(--orb-accent);color:#fff;font:inherit;font-weight:600;
  padding:.8rem 1.7rem;border-radius:10px;font-size:1rem;
  transition:background .15s ease, transform .05s ease;
}
.orb-submit:hover{background:var(--orb-accent-d);}
.orb-submit:active{transform:translateY(1px);}
.orb-submit:focus-visible{outline:3px solid rgba(176,58,110,.4);outline-offset:2px;}

.orb-notice{padding:.85rem 1rem;border-radius:10px;margin:0 0 1.4rem;font-weight:500;}
.orb-notice--ok{background:#eaf6ee;color:#1d6b3a;border:1px solid #bfe3cc;}
.orb-notice--error{background:#fdecec;color:#a12626;border:1px solid #f3c4c4;}
.orb-notice ul{margin:.35rem 0 0;padding-left:1.1rem;}

.orb-hp{position:absolute !important;left:-9999px !important;width:1px;height:1px;overflow:hidden;}

@media (max-width:560px){
  .orb-grid{grid-template-columns:1fr;}
}
@media (prefers-reduced-motion:reduce){
  .orb-form-wrap input,.orb-form-wrap textarea,.orb-submit{transition:none;}
}
