/* Вікно оформлення покупки (assets/checkout.js) */
.co-modal{
  position:fixed;inset:0;z-index:1300;background:rgba(20,36,61,.55);
  display:flex;align-items:center;justify-content:center;padding:16px;
  font-family:'Onest',system-ui,sans-serif;
}
.co-modal[hidden],.co-panel[hidden]{display:none}
body.co-open{overflow:hidden}
.co-panel{
  position:relative;width:100%;max-width:460px;max-height:calc(100dvh - 32px);overflow:auto;
  background:#FFFDF7;color:#14243D;border-radius:22px;padding:28px 26px 22px;
  box-shadow:0 30px 80px rgba(0,0,0,.3);
}
.co-panel h3{font-size:1.35rem;font-weight:800;margin:0 48px 14px 0;letter-spacing:-.02em}
.co-x{
  position:absolute;top:14px;right:14px;width:44px;height:44px;border-radius:50%;
  border:none;background:#F1ECDC;color:#14243D;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
}
.co-sum{
  display:flex;justify-content:space-between;align-items:baseline;gap:12px;
  background:#F1ECDC;border-radius:14px;padding:12px 16px;margin-bottom:18px;font-size:.95rem;
}
.co-sum b{font-size:1.15rem;white-space:nowrap}
.co-label{display:block;font-weight:700;font-size:.92rem;margin-bottom:6px}
.co-input{
  width:100%;font:inherit;font-size:1rem;color:#14243D;background:#fff;
  border:2px solid rgba(20,36,61,.18);border-radius:14px;padding:12px 14px;min-height:48px;
  transition:border-color .15s;
}
.co-input:focus{outline:none;border-color:#14243D}
.co-hint{font-size:.82rem;color:#47526B;margin:6px 0 0;line-height:1.45}
.co-age{border:0;margin:16px 0 0;padding:0;min-width:0}
.co-age legend{padding:0}
.co-method{margin:0 0 16px}
.co-label-gap{margin-top:14px}
#coPhoneBox[hidden],.co-method[hidden]{display:none}
.co-radio{display:flex;gap:10px;align-items:flex-start;font-size:.9rem;line-height:1.4;
  padding:9px 12px;margin-top:6px;border:2px solid rgba(20,36,61,.14);border-radius:12px;cursor:pointer}
.co-radio:has(input:checked){border-color:#14243D;background:#F8F5E9}
.co-radio input{margin:2px 0 0;accent-color:#C2202A;width:18px;height:18px;flex:none}
.co-ts{margin-top:14px;min-height:0}
.co-ts:empty{display:none}
.co-err{
  margin:14px 0 0;padding:10px 14px;border-radius:12px;font-size:.9rem;line-height:1.45;
  background:rgba(194,32,42,.08);color:#9E161F;
}
.co-err[hidden]{display:none}
.co-pay{
  width:100%;margin-top:16px;min-height:52px;border:none;border-radius:999px;cursor:pointer;
  background:#C2202A;color:#fff;font:inherit;font-weight:800;font-size:1.02rem;
  transition:background .15s,opacity .15s;
}
.co-pay:hover{background:#9E161F}
.co-pay:disabled{opacity:.6;cursor:wait}
.co-pay:focus-visible,.co-x:focus-visible{outline:3px solid rgba(194,32,42,.35);outline-offset:2px}
.co-legal{font-size:.78rem;color:#47526B;line-height:1.5;margin:12px 0 0;text-align:center}
.co-legal a{color:#14243D;text-decoration:underline;text-underline-offset:2px}
@media(max-width:480px){
  .co-modal{align-items:flex-end;padding:0}
  .co-panel{border-radius:22px 22px 0 0;padding:24px 18px 20px;max-height:92dvh}
}
/* заглушка «оплата скоро» */
.co-soon-text{font-size:.98rem;line-height:1.6;color:#47526B;margin:0 0 6px}
a.co-pay{display:flex;align-items:center;justify-content:center;text-decoration:none}
.co-alt{display:flex;align-items:center;justify-content:center;width:100%;margin-top:10px;min-height:48px;
  border:2px solid rgba(20,36,61,.22);border-radius:999px;color:#14243D;font-weight:700;text-decoration:none}
.co-alt:hover{border-color:#14243D}
