.cmce-registration{--cmce-gap:18px;--cmce-accent:var(--e-global-color-primary,#765b37);color:inherit;font-family:Arial,sans-serif;font-size:16px;line-height:1.5;max-width:100%;min-width:0;overflow-wrap:anywhere}
.cmce-registration [hidden]{display:none!important}
.cmce-registration *{box-sizing:border-box}
.cmce-registration__form,.cmce-registration__fields{display:grid;gap:var(--cmce-gap);min-width:0}
.cmce-registration__fields{grid-template-columns:repeat(2,minmax(0,1fr))}
.cmce-registration__field{min-width:0}
.cmce-registration__appointment{margin:0 0 var(--cmce-gap);padding:20px;border:1px solid currentColor;border-radius:6px;min-width:0}
.cmce-registration__appointment h3{font-family:inherit;font-size:1.15em;line-height:1.4;margin:0 0 10px}
.cmce-registration__appointment .cmce-registration__help{margin:0 0 16px}
.cmce-registration__appointment select{display:block;width:100%;max-width:100%;min-width:0;min-height:46px;padding:11px 12px;border:1px solid currentColor;border-radius:4px;background:var(--e-global-color-background,#fff);color:inherit;font:inherit;font-size:max(16px,1em);line-height:1.4}
.cmce-registration__appointment select:focus-visible{outline:3px solid var(--cmce-accent);outline-offset:3px}
.cmce-registration__appointment select[aria-invalid=true]{border-color:#a12622}
.cmce-registration__appointment select:disabled{opacity:.65}
.cmce-registration [data-cmce-retry]{margin-top:var(--cmce-gap)}
.cmce-registration__member{min-width:0;border:1px solid #aaa;border-radius:6px;padding:16px;margin:0 0 18px;display:grid;gap:12px}
.cmce-registration__member legend{padding:0 6px;font-weight:600}
.cmce-registration label{display:block;margin-bottom:6px;font-family:inherit;font-size:inherit;line-height:inherit;font-weight:600}
.cmce-registration input:not([type=checkbox]){display:block;width:100%;max-width:100%;min-width:0;min-height:46px;padding:11px 12px;border:1px solid currentColor;border-radius:4px;background:transparent;color:inherit;font-family:inherit;font-size:max(16px,1em);line-height:1.4}
.cmce-registration input:focus-visible,.cmce-registration button:focus-visible,.cmce-registration a:focus-visible{outline:3px solid var(--cmce-accent);outline-offset:3px}
.cmce-registration input[aria-invalid=true]{border-color:#a12622}
.cmce-registration__error{color:#a12622;font-size:max(14px,.9em);margin:6px 0 0}
.cmce-registration__privacy{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;align-items:start;min-width:0}
.cmce-registration__privacy input{width:20px;height:20px;margin:4px 0 0;accent-color:var(--cmce-accent)}
.cmce-registration__privacy label{font-weight:400;line-height:1.5;margin:0;min-width:0}
.cmce-registration__privacy .cmce-registration__error{grid-column:2}
.cmce-registration__privacy a{text-decoration:underline;text-underline-offset:3px}
.cmce-registration .cmce-registration__summary,.cmce-registration .cmce-registration__status{font-family:inherit;font-size:inherit;margin:0 0 var(--cmce-gap);line-height:1.5;min-width:0}
.cmce-registration__status:focus{outline:2px solid var(--cmce-accent);outline-offset:4px}
.cmce-registration__button{width:fit-content;max-width:100%;min-height:46px;padding:12px 24px;border:1px solid var(--cmce-accent);border-radius:4px;background:var(--cmce-accent);color:var(--cmce-button-text,#fff);font:inherit;font-size:max(16px,1em);line-height:1.4;white-space:normal;cursor:pointer}
.cmce-registration__button:disabled{opacity:.6;cursor:default}
.cmce-registration .cmce-registration__status--receipt{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.cmce-registration__thankyou{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding:32px;border:1px solid #dbe5e9;border-top:4px solid var(--cmce-accent);border-radius:12px;background:#fff;color:#173344;box-shadow:0 8px 26px rgba(17,46,62,.06);min-width:0}
.cmce-registration__receipt-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:#edf7fa;color:var(--cmce-accent);font:600 30px/1 Arial,sans-serif}
.cmce-registration__receipt-chip{display:inline-flex;align-items:center;max-width:100%;padding:5px 12px;border-radius:999px;background:#edf7fa;color:#285362;font-size:13px;font-weight:600;line-height:1.4}
.cmce-registration__thankyou[data-state=confirmed] .cmce-registration__receipt-icon,.cmce-registration__thankyou[data-state=confirmed] .cmce-registration__receipt-chip{background:#eaf6ed;color:#25633e}
.cmce-registration__thankyou[data-state=cancelled] .cmce-registration__receipt-icon,.cmce-registration__thankyou[data-state=cancelled] .cmce-registration__receipt-chip{background:#f0f3f5;color:#536875}
.cmce-registration .cmce-registration__thankyou h3{font-family:inherit;font-size:clamp(24px,3vw,30px);font-weight:600;line-height:1.2;letter-spacing:-.02em;color:inherit;margin:0;max-width:100%}
.cmce-registration .cmce-registration__receipt-message{font:inherit;color:#536875;margin:0;max-width:50ch}
.cmce-registration__meeting{display:grid;gap:5px;width:100%;padding:20px;background:#f3f8fa;border-left:3px solid var(--cmce-accent);border-radius:0 8px 8px 0;margin:4px 0;min-width:0}
.cmce-registration__meeting-label{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#536875;margin-bottom:5px}
.cmce-registration__meeting strong{font-size:19px;line-height:1.4;font-weight:600}
.cmce-registration__meeting [data-cmce-meeting-time]{font-size:24px;font-weight:600;line-height:1.3;font-variant-numeric:tabular-nums}
.cmce-registration__meeting small{font-size:13px;color:#536875}
.cmce-registration__receipt-details{margin:18px 0;color:#536875;font-size:13px}
.cmce-registration__receipt-details summary{cursor:pointer;font-weight:600;width:fit-content;padding:4px 0}
.cmce-registration__receipt-details .cmce-registration__note{font-size:13px;margin:8px 0 0}
.cmce-registration [data-cmce-cancel-form]{border-top:1px solid #dbe5e9;margin-top:20px;padding-top:4px;font-size:14px}
.cmce-registration [data-cmce-cancel]{background:transparent;color:inherit;border-color:#b5c5cd;font-size:14px}
@media(max-width:600px){.cmce-registration__thankyou{padding:24px 20px;gap:14px}.cmce-registration__meeting{padding:16px}.cmce-registration__meeting strong{font-size:17px}}
.cmce-registration .cmce-registration__note{font-family:inherit;font-size:max(14px,.9em);line-height:1.5;margin:0}
.cmce-registration .cmce-registration__test-badge{display:inline-block;width:fit-content;max-width:100%;font:400 14px/1.4 Arial,sans-serif;margin:0 0 14px;padding:5px 8px;border:1px solid currentColor;border-radius:4px}
@media(max-width:600px){.cmce-registration__fields{grid-template-columns:minmax(0,1fr)}.cmce-registration__button{width:100%}}
@media(prefers-reduced-motion:reduce){.cmce-registration *{scroll-behavior:auto}}
/* Backend form choices retain a single readable column on narrow screens. */
.cmce-registration__fields[data-columns="1"]{grid-template-columns:minmax(0,1fr)}
.cmce-registration__fields[data-columns="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}
.cmce-registration__help{font-size:.85em;color:#536875;margin:6px 0 0;overflow-wrap:anywhere}
.cmce-registration__help:empty{display:none}
.cmce-registration__field[hidden]{display:none!important}
.cmce-registration label{-webkit-hyphens:none;hyphens:none;overflow-wrap:anywhere}
body:has(.cmce-registration[data-cmce-in-view="true"]) #cmc-back-on-top,
body:has(.cmce-registration[data-cmce-in-view="true"]) #chatbase-bubble-button:not([aria-expanded="true"]),
body:has(.cmce-registration[data-cmce-in-view="true"]) #chatbase-message-bubbles{visibility:hidden!important;pointer-events:none!important}
/* On small/touch screens the registration controls remain clear even before
   delayed JavaScript starts. An already open chat keeps its close control. */
@media(max-width:1024px),(hover:none) and (pointer:coarse){
body:has(.cmce-registration) #cmc-back-on-top,
body:has(.cmce-registration) #chatbase-bubble-button:not([aria-expanded="true"]),
body:has(.cmce-registration) #chatbase-message-bubbles{visibility:hidden!important;pointer-events:none!important}
}
@media(max-width:600px){.cmce-registration__fields[data-columns="2"]{grid-template-columns:minmax(0,1fr)}}
.cmce-registration .cmce-question[data-width=full],.cmce-registration .cmce-question:has(h3){grid-column:1/-1}.cmce-registration .cmce-question textarea,.cmce-registration .cmce-question select{font:inherit;width:100%;max-width:100%;min-width:0;padding:12px;border:1px solid #b8c8d2;border-radius:6px;background:#fff;color:#163344}.cmce-registration .cmce-question input[type=file]{font-size:14px;width:100%;padding:10px;white-space:normal}.cmce-registration .cmce-question-options{border:0;padding:0;margin:0;min-width:0}.cmce-registration .cmce-question-options legend{font-weight:600;margin-bottom:12px}.cmce-registration .cmce-question-options label,.cmce-registration .cmce-question-check{display:flex;gap:10px;align-items:start;margin-bottom:10px}.cmce-registration .cmce-question-options input,.cmce-registration .cmce-question-check input{width:18px;height:18px;flex:0 0 18px;min-height:18px;margin-top:3px}.cmce-registration .cmce-question[hidden]{display:none!important}.cmce-registration .cmce-question h3{font-size:21px;margin:12px 0}.cmce-registration .cmce-question :focus-visible{outline:3px solid #35a4c4;outline-offset:2px}
