.cbtn, .cbtn-modal {
  --cb-acc:#ffd000;
  --cb-ink:#111111;
  --cb-mute:#5f5f5f;
  --cb-line:#dcdcdc;
  --cb-page:#ffffff;
  --cb-card:#ffffff;
  --cb-neg:#c0392b;
  --cb-focus:#111111;
  --cb-white:#ffffff;
  --cb-orange:#ffd000;
  --cb-dark:#333;
  font-family:inherit;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .cbtn,
  :root:not([data-theme="light"]) .cbtn-modal {
    color-scheme: dark;
    --cb-white:#333333;
    --cb-orange:#2a2a2a;
    --cb-dark:#ffffff;
    --cb-page:#161616;
    --cb-card:#2a2a2a;
    --cb-ink:#ffffff;
  }
}

:root[data-theme="dark"] .cbtn,
:root[data-theme="dark"] .cbtn-modal {
  color-scheme: dark;
  --cb-white:#333333;
  --cb-orange:#2a2a2a;
  --cb-dark:#ffffff;
  --cb-page:#161616;
  --cb-card:#2a2a2a;
  --cb-ink:#ffffff;
}





.cbtn,.cbtn *,.cbtn-modal,.cbtn-modal *{box-sizing:border-box}

/* Кнопка */
.cbtn{margin:0}
.cbtn--center{text-align:center}.cbtn--right{text-align:right}
.cbtn--full .cbtn__btn{display:block;width:100%}
.cbtn .cbtn__btn,.cbtn-modal .cbtn__btn{display:inline-block;padding:15px 28px;font:inherit;font-size:1rem;font-weight:600;line-height:1.2;color:var(--cb-dark);background-color:var(--cb-orange);background-image:none;border:0;cursor:pointer;text-decoration:none}
.cbtn .cbtn__btn:hover,.cbtn-modal .cbtn__btn:hover{background-color:var(--cb-dark);color:var(--cb-white);}
.cbtn .cbtn__btn:focus-visible,.cbtn-modal .cbtn__btn:focus-visible{outline:2px solid var(--cb-focus);outline-offset:2px}
.cbtn-modal .cbtn__btn:disabled{opacity:.6;cursor:wait}
.cbtn-modal .cbtn__btn--block{display:block;width:100%}

/* Окно */
.cbtn-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:16px;overflow-y:auto;color:var(--cb-ink)}
.cbtn-modal[hidden]{display:none}
.cbtn-modal__bg{position:fixed;inset:0;background:rgba(0,0,0,.6)}
.cbtn-modal__dialog{position:relative;width:100%;max-width:420px;margin:auto;padding:28px 24px 24px;background-color:var(--cb-page);color:var(--cb-ink);border:1px solid var(--cb-line);border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.35)}
.cbtn-modal__h{margin:0 0 16px;padding-right:32px}
.cbtn-modal__x{position:absolute;top:10px;right:10px;width:36px;height:36px;padding:0;font-size:1.6rem;line-height:1;color:var(--cb-ink);background:none;border:0;border-radius:6px;cursor:pointer}
.cbtn-modal__x:focus-visible{outline:2px solid var(--cb-focus)}
.cbtn-form{display:grid;gap:14px}
.cbtn-f{display:flex;flex-direction:column;gap:6px;font-size:.875rem;color:var(--cb-mute)}
.cbtn-modal input[type=text],.cbtn-modal input[type=tel]{width:100%;min-height:44px;padding:8px 12px;font:inherit;font-size:1rem;color:var(--cb-ink);background:var(--cb-card);border:1px solid var(--cb-line);border-radius:6px}
.cbtn-modal input:focus-visible{outline:2px solid var(--cb-focus);outline-offset:2px}
.cbtn-modal input[aria-invalid=true]{border-color:var(--cb-neg)}
.cbtn-check{display:flex;gap:10px;align-items:flex-start;font-size:.85rem;line-height:1.4;color:var(--cb-mute);cursor:pointer}
.cbtn-check input{flex:none;width:20px;height:20px;margin:1px 0 0;accent-color:#ffd000}
.cbtn-check a{color:var(--cb-ink);text-decoration:underline}
.cbtn-err{margin:0;color:var(--cb-neg);font-size:.875rem}
.cbtn-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.cbtn-thanks{line-height:1.5}
.cbtn-thanks p{margin:0 0 16px}
