﻿.csg-registration-dialog{box-sizing:border-box;position:fixed;inset:0;width:min(680px,calc(100% - 24px));max-width:calc(100% - 24px);max-height:calc(100dvh - 24px);margin:auto;padding:24px;border:1px solid var(--csg-line);border-radius:16px;color:var(--csg-ink);background:#fff;box-shadow:var(--csg-shadow);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;font-size:16px;line-height:1.5}
.csg-registration-dialog *{box-sizing:border-box}
.csg-registration-dialog::backdrop{background:#102a43b3}
.csg-registration-dialog:not([open]){display:none}
.csg-registration-dialog h2{font-size:24px;line-height:1.3;margin:0 40px 6px 0}
.csg-registration-dialog>p{max-width:58ch;font-size:14px;color:var(--csg-muted);margin:0 32px 18px 0}
.csg-registration-close{position:absolute;right:10px;top:10px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:10px;background:transparent;color:var(--csg-dark);font-size:28px;line-height:1;cursor:pointer}
.csg-registration-close:hover{background:#f3f5f8}
.csg-registration-dialog :focus-visible{outline:2px solid var(--csg-primary,#c81925);outline-offset:2px}
.csg-registration-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;min-width:0}
.csg-registration-form>label{display:grid;gap:4px;min-width:0;margin:0;font-size:14px;font-weight:600}
.csg-registration-form input:not([type=checkbox]),.csg-registration-form textarea,.csg-registration-form select{display:block;width:100%;max-width:100%;min-width:0;margin:0;padding:9px 11px;border:1px solid var(--csg-line);border-radius:8px;font:inherit;font-size:16px;line-height:1.4;min-height:44px;background:#fff;color:var(--csg-dark)}
.csg-registration-form textarea{height:64px;min-height:44px;resize:vertical}
.csg-registration-form>label:has([name=note]),.csg-registration-form .csg-registration-consent,.csg-registration-offer,.csg-registration-status,.csg-registration-form>button{grid-column:1/-1}
.csg-registration-form .csg-registration-consent{display:flex;align-items:flex-start;gap:9px;font-size:13px;line-height:1.5;font-weight:400;overflow-wrap:anywhere}
.csg-registration-consent input{width:18px;height:18px;margin:2px 0 0;flex:0 0 18px}
.csg-registration-form>button{min-height:46px;width:100%;margin:0;white-space:normal}
.csg-registration-offer{padding:8px 12px;margin:0;border-radius:8px;background:#fff1f2;color:#a51420;font-size:14px;font-weight:600;overflow-wrap:anywhere}
.csg-registration-trap{position:absolute;inset:0 auto auto 0;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;pointer-events:none}
.csg-registration-status{font-size:14px;line-height:1.5;margin:0;overflow-wrap:anywhere}
.csg-registration-status:empty{display:none}
.csg-registration-form button:disabled{opacity:.6;cursor:wait}
.csg-registration-open{overflow:hidden}
button.csg-contact-button{font-family:inherit;cursor:pointer}
@media(max-width:560px){.csg-registration-dialog{padding:20px 16px}.csg-registration-dialog h2{font-size:24px}.csg-registration-dialog>p{margin:0 20px 14px 0}.csg-registration-form{gap:10px 12px}.csg-registration-form>label:has([name=address]),.csg-registration-form>label:has([name=service]){grid-column:1/-1}}
@media(max-height:700px){.csg-registration-dialog{padding-block:16px}.csg-registration-dialog>p{margin-bottom:12px}.csg-registration-form{row-gap:8px}.csg-registration-form textarea{height:48px}}
