/* ConSurv request form, B2 look (plugin-forms). Notes: includes/dialog.php */
.cs-request, .cs-request-dialog {
  --csq-blue: var(--c-blue, #1143a1); --csq-blue-h: var(--c-blue-hover, #0b3483); --csq-tint: var(--c-blue-tint, #e9effb);
  --csq-ink: var(--c-ink, #0d1117); --csq-ink2: var(--c-ink-2, #3a4250); --csq-muted: var(--c-muted, #566070);
  --csq-line: var(--c-line, #dde2e9); --csq-line2: var(--c-line-2, #c3cad5); --csq-field: var(--c-field-line, #7a8392);
  --csq-bg: var(--c-bg, #fff); --csq-alt: var(--c-bg-alt, #f3f5f8); --csq-err: #b42318;
  --csq-head: var(--font-head, "Saira", Arial, sans-serif);
  --csq-sans: var(--font-sans, "Instrument Sans", system-ui, Arial, sans-serif);
  --csq-r: var(--radius-btn, 6px);
  --csq-compass: var(--cs-q-compass, url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-50 -50 100 100'%3E%3Cpath d='M0-50 13-13 50 0 13 13 0 50-13 13-50 0-13-13z'/%3E%3C/svg%3E"));
  color: var(--csq-ink); font: 400 1rem/1.5 var(--csq-sans); text-align: left;
}
.cs-request { position: relative; scroll-margin-top: calc(var(--header-h, 72px) + 16px); }
.cs-request *, .cs-request *::before, .cs-request *::after, .cs-request-dialog * { box-sizing: border-box; }
.cs-request [hidden], .cs-request-dialog [hidden], .cs-request.is-enhanced :is(.cs-q-kicker, .cs-q-cond, .cs-q-nojs, .cs-q-required-note, .cs-q-fineprint) { display: none !important; }
.cs-request:not([data-in-dialog]) { background: var(--csq-bg); border: 1px solid var(--csq-line); border-top: 3px solid var(--csq-ink); padding: clamp(18px, 4vw, 36px); }
.cs-request p { margin: 0; }
.cs-request a:not(.cs-q-btn), .csd-call a { color: var(--csq-blue); text-underline-offset: .2em; }
.cs-request fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
.cs-request legend { padding: 0; float: none; width: 100%; }
.cs-request-dialog :focus-visible, .cs-request :focus-visible { outline: 3px solid var(--csq-blue); outline-offset: 2px; }
.cs-request-dialog [tabindex="-1"]:focus, .cs-request [tabindex="-1"]:focus { outline: 0; }
.cs-q-sr { position: absolute !important; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.cs-q-hp { position: absolute !important; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.cs-q-mark { display: inline-block; flex: none; width: 1em; height: 1em; background: var(--csq-blue); mask: var(--csq-compass) center / contain no-repeat; }
.cs-q-notice, .cs-q-test-note { display: inline-block; margin: 0 0 18px !important; padding: .4em .7em; border: 1px dashed #c9950c; background: #fff3cf; color: #533a00; font-size: .875rem; font-weight: 600; }
.cs-q-test-note { margin: 14px 0 0 !important; }
.cs-q-required-note, .cs-q-fineprint, .cs-q-nojs { margin: 0 0 18px !important; font-size: .9375rem; color: var(--csq-muted); }
.cs-q-fineprint { margin: 18px 0 0 !important; }
.cs-q-req { color: var(--csq-err); font-weight: 700; }

.cs-q-layout { display: grid; grid-template-columns: minmax(0, 1fr); gap: 22px; }
.cs-q-main { min-width: 0; container: csq / inline-size; }
html.js .cs-request:not(.is-enhanced) .cs-q-required-note { display: none; }
html.js .cs-request:not(.is-enhanced) .cs-q-main { padding-top: calc(36px + 1.40625rem); }
.cs-request.is-wide .cs-q-layout { grid-template-columns: minmax(0, 1fr) 272px; column-gap: 32px; align-items: start; }
.cs-request.is-wide .cs-q-summary { grid-area: 1 / 2 / span 2; position: sticky; top: 0; }

.cs-q-step + .cs-q-step { margin-top: 34px; padding-top: 28px; border-top: 3px solid var(--csq-ink); }
.cs-request.is-enhanced .cs-q-step + .cs-q-step { margin: 0; padding: 0; border: 0; }
.cs-q-legend, .cs-q-review-title, .csd-title, .cs-q-success-title { margin: 0 0 6px !important; font: italic 800 clamp(1.5rem, 1.25rem + 1vw, 2rem)/1.05 var(--csq-head); font-stretch: 87.5%; color: var(--csq-ink); }
.cs-q-legend { display: block; }
.cs-q-kicker { display: block; font: 600 .8125rem/1.6 var(--csq-sans); text-transform: uppercase; color: var(--csq-blue); }
.cs-q-intro { margin-bottom: 20px !important; color: var(--csq-ink2); }
.cs-q-prog { margin: 0 0 22px; }
.cs-q-prog-text { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 2px 12px; margin-bottom: 9px !important; font-size: .875rem; color: var(--csq-muted); }
.cs-q-prog-count { font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--csq-blue); }
.cs-q-prog-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 4px; margin: 0; padding: 0; list-style: none; }
.cs-q-prog-list li { display: flex; gap: .35em; min-width: 0; margin: 0; padding-top: 7px; border-top: 4px solid var(--csq-line); font-size: .8125rem; font-weight: 600; line-height: 1.25; color: var(--csq-muted); }
.cs-q-prog-list .is-done { border-color: var(--csq-blue); color: var(--csq-ink2); }
.cs-q-prog-list .is-current { border-color: var(--csq-ink); color: var(--csq-ink); }
.cs-q-prog-list .is-skip { border-top-style: dotted; text-decoration: line-through; }
@container csq (max-width: 520px) { .cs-q-prog-list { display: flex; } .cs-q-prog-list li { flex: 1 1 0; } .cs-q-prog-list li.is-current { flex: 0 1 auto; min-width: 25%; } .cs-q-prog-list li:not(.is-current) .cs-q-prog-t { display: none; } }

.cs-q-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 22px; }
@container csq (min-width: 470px) { .cs-q-grid { grid-template-columns: 1fr 1fr; column-gap: 18px; } .cs-q-grid > * { grid-column: 1 / -1; } .cs-q-grid > .cs-q-half { grid-column: auto; } }
.cs-q-field { min-width: 0; }
.cs-q-label { display: block; margin: 0 0 7px !important; font-weight: 600; line-height: 1.35; }
.cs-q-cond { font-weight: 400; font-size: .875rem; color: var(--csq-muted); }
.cs-q-help { margin: -2px 0 8px !important; font-size: .9rem; color: var(--csq-muted); }
.cs-q-field--consent .cs-q-help { margin: 8px 0 0 !important; }
.cs-request .cs-q-input { display: block; width: 100%; min-height: 48px; margin: 0; padding: 11px 13px; font: 400 max(16px, 1rem)/1.4 var(--csq-sans); color: var(--csq-ink); background: var(--csq-bg); border: 1.5px solid var(--csq-field); border-radius: var(--csq-r); box-shadow: none; -webkit-appearance: none; appearance: none; }
.cs-request textarea.cs-q-input { min-height: 112px; resize: vertical; }
.cs-request .cs-q-input:focus { border-color: var(--csq-blue); }

.cs-q-card, .cs-q-tile, .cs-q-seg-opt, .cs-q-chip { position: relative; display: flex; align-items: center; color: var(--csq-ink); background: var(--csq-bg); cursor: pointer; }
.cs-request :is(.cs-q-card, .cs-q-tile, .cs-q-seg-opt, .cs-q-chip) input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
:is(.cs-q-card, .cs-q-tile, .cs-q-seg-opt, .cs-q-chip):has(:focus-visible) { outline: 3px solid var(--csq-blue); outline-offset: 2px; z-index: 1; }
.cs-q-ico { width: 26px; height: 26px; flex: none; color: var(--csq-blue); fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.cs-q-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 200px), 1fr)); gap: 10px; }
.cs-q-card { display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: 3px 12px; align-items: start; min-height: 64px; padding: 14px 40px 14px 14px; border: 1.5px solid var(--csq-line2); border-radius: var(--csq-r); }
.cs-q-card .cs-q-ico { width: 30px; height: 30px; grid-row: span 2; }
.cs-q-card-title { font-weight: 600; font-size: 1.0625rem; line-height: 1.2; }
.cs-q-card-hint { grid-column: 2; font-size: .9rem; line-height: 1.4; color: var(--csq-muted); }
.cs-q-cards--big .cs-q-card { grid-template-columns: minmax(0, 1fr); min-height: 132px; padding: 16px 40px 16px 16px; }
.cs-q-cards--big .cs-q-ico { width: 34px; height: 34px; grid-row: auto; margin-bottom: 6px; }
.cs-q-cards--big .cs-q-card-title { font: italic 800 1.3125rem/1.1 var(--csq-head); font-stretch: 87.5%; }
.cs-q-cards--big .cs-q-card-hint { grid-column: 1; }
.cs-q-card::after { content: ""; position: absolute; top: 12px; right: 12px; width: 20px; height: 20px; border: 2px solid var(--csq-line2); border-radius: 50%; }
.cs-request .cs-q-input:hover, .cs-q-card:hover, .cs-q-chip:hover { border-color: var(--csq-ink2); }
.cs-q-card:has(:checked) { border-color: var(--csq-blue); background: var(--csq-tint); box-shadow: inset 0 0 0 1px var(--csq-blue); }
.cs-q-card:has(:checked)::after { width: 22px; height: 22px; border: 0; background: var(--csq-blue); mask: var(--csq-compass) center / contain no-repeat; }
.cs-q-families { display: grid; gap: 16px 20px; }
@container csq (min-width: 600px) { .cs-q-families { grid-template-columns: 1fr 1fr; } .cs-q-family--other { grid-column: 1 / -1; } }
.cs-q-family-title { margin: 0 0 8px !important; padding-bottom: 5px; border-bottom: 2px solid var(--csq-ink); font-size: .8125rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--csq-ink2); }
.cs-q-tiles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: var(--csq-line2); border: 1px solid var(--csq-line2); }
.cs-q-family--other .cs-q-tiles { grid-template-columns: minmax(0, 1fr); }
.cs-q-tiles > :last-child:nth-child(odd) { grid-column: 1 / -1; }
.cs-q-tile { gap: 10px; min-height: 58px; padding: 9px 12px; font-weight: 600; font-size: .9375rem; line-height: 1.2; }
.cs-q-tile:hover, .cs-q-seg-opt:hover { background: var(--csq-tint); }
.cs-q-tile:has(:checked) { background: var(--csq-blue); color: #fff; }
.cs-q-tile:has(:checked) .cs-q-ico { color: #fff; }
.cs-q-tile:has(:focus-visible) { outline-color: var(--csq-ink); outline-offset: -5px; box-shadow: inset 0 0 0 7px #fff; }
.cs-q-seg, .cs-q-chip-row { display: flex; flex-wrap: wrap; }
.cs-q-seg-opt, .cs-q-chip { justify-content: center; min-height: 44px; padding: 9px 15px; border: 1.5px solid var(--csq-line2); border-radius: var(--csq-r); font-weight: 600; font-size: .9375rem; }
.cs-q-seg-opt { min-width: 88px; margin-left: -1.5px; border-color: var(--csq-field); border-radius: 0; }
.cs-q-seg-opt:first-child { margin-left: 0; border-radius: var(--csq-r) 0 0 var(--csq-r); }
.cs-q-seg-opt:last-child { border-radius: 0 var(--csq-r) var(--csq-r) 0; }
.cs-q-chip-row { gap: 8px; }
.cs-q-seg-opt:has(:checked), .cs-q-chip:has(:checked) { background: var(--csq-blue); border-color: var(--csq-blue); color: #fff; z-index: 1; }
.cs-q-other { margin-top: 14px; }
.cs-q-chips + .cs-q-other .cs-q-label { font-weight: 500; font-size: .9375rem; }
.cs-q-qty { display: flex; max-width: 200px; }
.cs-request .cs-q-qty .cs-q-input { text-align: center; border-radius: 0; }
.cs-request .cs-q-qbtn { flex: none; width: 48px; margin: 0; padding: 0; border: 1.5px solid var(--csq-field); background: var(--csq-alt); color: var(--csq-ink); font: 700 1.375rem/1 var(--csq-sans); cursor: pointer; }
.cs-q-qbtn:first-child { border-right: 0; border-radius: var(--csq-r) 0 0 var(--csq-r); }
.cs-q-qbtn:last-child { border-left: 0; border-radius: 0 var(--csq-r) var(--csq-r) 0; }
.cs-q-items { margin: 0; padding: 0; list-style: none; border-top: 2px solid var(--csq-ink); }
.cs-q-item { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; align-items: center; gap: 6px 16px; padding: 10px 0; border-bottom: 1px solid var(--csq-line2); line-height: 1.3; overflow-wrap: anywhere; }
.cs-q-item-brand, .cs-q-item-cat, .cs-q-itab small { display: block; font-size: .8125rem; color: var(--csq-muted); }
.cs-q-item-brand, .cs-q-itab th { font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
.cs-q-item .cs-q-qty { width: 160px; }
.cs-request :is(.cs-q-item-rm, .cs-q-add) { margin: 0 -8px; }
@container csq (max-width: 469.98px) { .cs-q-item { grid-template-columns: auto auto; justify-content: space-between; } .cs-q-item-name { grid-column: 1 / -1; } }
.cs-q-itab { flex: 1; width: 100%; border-collapse: collapse; }
.cs-q-itab th { padding: 0 8px 4px 0; font-size: .75rem; color: var(--csq-muted); text-align: left; }
.cs-q-itab td { padding: 6px 8px 6px 0; border-top: 1px solid var(--csq-line2); vertical-align: top; }
dd > .cs-q-itab th:first-child { font-size: 0; } /* the row label above already says Products */
.cs-q-itab :is(th, td):last-child { width: 3.5em; padding-right: 0; text-align: right; }
.cs-q-check { display: flex; align-items: flex-start; gap: 12px; min-height: 48px; padding: 12px 14px; background: var(--csq-alt); border: 1.5px solid var(--csq-line2); border-radius: var(--csq-r); font-weight: 600; cursor: pointer; }
.cs-request .cs-q-check input { flex: none; width: 22px; height: 22px; margin: 0; accent-color: var(--csq-blue); }
.cs-q-check:has(:checked) { border-color: var(--csq-blue); background: var(--csq-tint); }

.cs-q-error { display: flex; gap: 8px; margin: 0 0 8px !important; font-weight: 600; font-size: .9375rem; line-height: 1.35; color: var(--csq-err); }
.cs-q-error::before { content: "!"; flex: none; display: grid; place-content: center; width: 18px; height: 18px; margin-top: 1px; background: var(--csq-err); color: #fff; font: 700 .75rem/1 var(--csq-sans); }
.cs-q-field.is-invalid .cs-q-input { border-color: var(--csq-err); box-shadow: inset 0 0 0 1px var(--csq-err); }
.cs-q-field.is-invalid :is(.cs-q-card, .cs-q-seg-opt, .cs-q-chip, .cs-q-check) { border-color: var(--csq-err); }
.cs-q-field.is-invalid .cs-q-tiles { background: var(--csq-err); border-color: var(--csq-err); }
.cs-q-errsum, .cs-q-alert { margin: 0 0 20px; padding: 14px 16px; border-left: 4px solid var(--csq-err); background: #fef3f2; }
.cs-q-errsum-title { margin-bottom: 6px !important; font-weight: 700; font-size: 1.0625rem; }
.cs-q-errsum ul { margin: 0; padding-left: 1.1em; }
.cs-request :is(.cs-q-errsum, .cs-q-alert) a { color: var(--csq-err); font-weight: 600; }

.cs-q-btn { display: inline-flex; align-items: center; justify-content: center; gap: .5em; min-height: 48px; min-width: 48px; margin: 0; padding: .6em 1.2em; border: 2px solid var(--csq-blue); border-radius: var(--csq-r); background: var(--csq-blue); color: #fff; font: italic 800 1.0625rem/1.15 var(--csq-head); font-stretch: 87.5%; text-decoration: none; white-space: nowrap; cursor: pointer; }
.cs-q-btn:hover { background: var(--csq-blue-h); border-color: var(--csq-blue-h); color: #fff; }
.cs-q-btn--ghost { background: var(--csq-bg); border-color: var(--csq-blue); color: var(--csq-blue); }
.cs-q-btn--ghost:hover { background: var(--csq-blue); border-color: var(--csq-blue); color: #fff; }
.cs-q-btn[disabled] { opacity: .6; cursor: progress; }
.cs-q-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 10px; padding-top: 18px; border-top: 1px solid var(--csq-line); }
.cs-q-back { margin-right: auto; }
.cs-request:not(.is-enhanced) .cs-q-actions { justify-content: flex-start; }
.cs-q-link { min-height: 44px; min-width: 44px; margin: -10px -8px -10px 0; padding: 8px; border: 0; background: none; color: var(--csq-blue); font: 600 .9375rem/1 var(--csq-sans); text-decoration: underline; text-underline-offset: .2em; cursor: pointer; }
.cs-q-link:hover { color: var(--csq-blue-h); }

.cs-q-summary { background: var(--csq-alt); border-top: 3px solid var(--csq-ink); }
.cs-q-summary > summary { display: flex; align-items: center; gap: 10px; min-height: 48px; padding: 10px 14px; cursor: pointer; list-style: none; }
.cs-q-summary > summary::-webkit-details-marker { display: none; }
.cs-q-summary > summary:focus-visible { outline-offset: -3px; }
.cs-q-summary-title { display: inline-flex; align-items: center; gap: .4em; flex: none; font: italic 800 1.125rem/1.1 var(--csq-head); font-stretch: 87.5%; }
.cs-q-summary-brief { min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-size: .9375rem; color: var(--csq-ink2); }
.cs-q-chev { flex: none; margin-left: auto; }
.cs-q-summary[open] .cs-q-chev { transform: rotate(180deg); }
.cs-q-summary.is-pinned > summary { cursor: default; }
.cs-q-summary.is-pinned :is(.cs-q-chev, .cs-q-summary-brief), .cs-q-summary.is-review:not(.is-pinned) { display: none; }
.cs-q-summary-body { padding: 4px 14px 14px; }
.cs-q-summary-group { display: flex; flex-direction: row-reverse; align-items: flex-start; gap: 8px; padding: 10px 0; border-top: 1px solid var(--csq-line2); }
.cs-q-summary-group dl { flex: 1; min-width: 0; }
.cs-q-summary-group .cs-q-link { flex: none; margin: -6px -8px 0 0; }
.cs-q-summary-group:has(.cs-q-itab) { position: relative; }
.cs-q-summary-group:has(.cs-q-itab) > .cs-q-link { position: absolute; top: 2px; right: 0; }
.cs-q-summary dl { display: grid; gap: 8px; margin: 0; }
.cs-q-summary dt { font-size: .75rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--csq-muted); }
.cs-q-summary dd, .cs-q-review dd { display: flex; align-items: flex-start; gap: 6px; margin: 0; overflow-wrap: anywhere; }
.cs-q-summary dd { font-size: .9375rem; line-height: 1.35; }
:is(.cs-q-summary, .cs-q-review) dd .cs-q-ico { width: 22px; height: 22px; }
.cs-q-summary-empty, .cs-q-none { font-size: .9375rem; color: var(--csq-muted); }

.cs-q-review-group { padding: 12px 0 14px; border-top: 1px solid var(--csq-line2); }
.cs-q-review-group:first-child { border-top: 3px solid var(--csq-ink); }
.cs-q-review-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 6px; }
.cs-q-review-step { margin: 0 !important; font: italic 800 1.25rem/1.15 var(--csq-head); font-stretch: 87.5%; }
.cs-q-review-n { color: var(--csq-blue); }
.cs-q-review dl { margin: 0; }
.cs-q-review dl > div { display: grid; gap: 0 16px; padding: 6px 0; }
@container csq (min-width: 470px) { .cs-q-review dl > div { grid-template-columns: minmax(120px, 32%) minmax(0, 1fr); } }
.cs-q-review dt { color: var(--csq-muted); }
.cs-q-review dd { white-space: pre-line; }

.cs-q-success-mark { display: block; width: 56px; height: 56px; margin-bottom: 14px; }
.cs-q-success-title { margin-bottom: 14px !important; font-size: clamp(1.9rem, 1.5rem + 1.5vw, 2.5rem); }
.cs-q-ref { display: inline-flex !important; flex-wrap: wrap; align-items: baseline; gap: 4px 14px; max-width: 100%; padding: 10px 16px; border: 1.5px dashed var(--csq-field); background: var(--csq-alt); }
.cs-q-ref-label { font-size: .8125rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--csq-muted); }
.cs-q-ref-value, .cs-q-success-call a, .csd-call a { font: italic 800 1.5rem/1.1 var(--csq-head); font-stretch: 87.5%; letter-spacing: .02em; }
.cs-q-success-call a, .csd-call a { font-size: 1.125rem; }
.cs-q-ref-note { margin: 6px 0 16px !important; font-size: .9375rem; color: var(--csq-muted); }
.cs-q-success-text, .cs-q-success-call { margin-bottom: 6px !important; font-size: 1.0625rem; }
.cs-q-success-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 24px; }

html.cs-request-open { overflow: hidden; scrollbar-gutter: stable; }
.cs-request-dialog:not([open]) { display: none !important; }
.cs-request-dialog { width: min(1080px, calc(100% - 32px)); max-width: none; height: min(880px, calc(100dvh - 32px)); max-height: calc(100dvh - 32px); margin: auto; padding: 0; border: 0; border-radius: var(--radius-lg, 4px); background: var(--csq-bg); overflow: hidden; box-shadow: 0 30px 80px -24px rgb(8 33 82 / .55); }
.cs-request-dialog::backdrop { background: rgb(13 17 23 / .62); }
.csd-shell { display: flex; flex-direction: column; height: 100%; }
.cs-request-dialog.is-done { height: fit-content; }
.cs-request-dialog.is-done .csd-shell { height: auto; max-height: calc(100dvh - 32px); }
.csd-head { position: relative; flex: none; padding: 18px 80px 14px 28px; border-bottom: 3px solid var(--csq-ink); }
.csd-title { display: flex; align-items: center; gap: .35em; margin-bottom: 4px !important; font-size: clamp(1.5rem, 1.2rem + 1.2vw, 2.125rem); }
.csd-title .cs-q-mark { width: .9em; height: .9em; }
.csd-call { margin: 0; font-size: .9375rem; color: var(--csq-ink2); }
.csd-call a { text-decoration: none; }
.csd-close { position: absolute; top: 16px; right: 16px; display: grid; place-items: center; width: 48px; height: 48px; margin: 0; padding: 0; border: 2px solid var(--csq-blue); border-radius: var(--csq-r); background: var(--csq-bg); color: var(--csq-blue); cursor: pointer; }
.csd-close:hover { background: var(--csq-blue); color: #fff; }
.csd-body { flex: 1 1 auto; min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 22px 28px 26px; }
.csd-foot { flex: none; padding: 12px 28px; border-top: 1px solid var(--csq-line2); background: var(--csq-bg); }
.csd-foot .cs-q-actions { padding-top: 0; border-top: 0; }
.csd-foot .cs-q-summary { margin: -12px -28px 12px; border-top: 0; border-bottom: 1px solid var(--csq-line2); }
.csd-foot .cs-q-summary-body { max-height: 38dvh; overflow-y: auto; overscroll-behavior: contain; }
.cs-request-dialog .is-pinned .cs-q-summary-body { max-height: calc(100dvh - 330px); overflow-y: auto; }
@media (max-width: 640px) {
  .cs-request-dialog, .cs-request-dialog.is-done { width: 100%; height: 100dvh; max-height: 100dvh; border-radius: 0; }
  .csd-shell, .cs-request-dialog.is-done .csd-shell { height: 100%; max-height: none; }
  .csd-head { padding: 10px 64px 10px 16px; }
  .csd-title { font-size: 1.4rem; margin: 0 !important; }
  .csd-close { top: 8px; right: 8px; width: 44px; height: 44px; }
  .csd-body { padding: 16px 16px 22px; }
  .csd-foot { padding: 10px 16px calc(10px + env(safe-area-inset-bottom, 0px)); }
  .csd-foot .cs-q-summary { margin: -10px -16px 10px; }
  .csd-foot :is(.cs-q-next, .cs-q-submit) { flex: 1 1 auto; }
  .cs-q-cards--big .cs-q-card { min-height: 0; grid-template-columns: 34px minmax(0, 1fr); }
  .cs-q-cards--big .cs-q-ico { grid-row: span 2; margin: 0; }
  .cs-q-cards--big .cs-q-card-hint { grid-column: 2; }
}
@media (prefers-reduced-motion: no-preference) {
  .cs-request.is-enhanced .cs-q-step, .cs-q-review, .cs-q-success, .cs-request-dialog[open] { animation: csq-in .18s ease-out both; }
  .cs-request-dialog[open]::backdrop { animation: csq-fade .18s ease-out both; }
  .cs-q-card, .cs-q-tile, .cs-q-chip, .cs-q-seg-opt { transition: background-color .15s, border-color .15s, color .15s; }
}
@keyframes csq-in { from { opacity: 0; transform: translateY(8px); } }
@keyframes csq-fade { from { opacity: 0; } }
@media (forced-colors: active) {
  :is(.cs-q-card, .cs-q-tile, .cs-q-chip, .cs-q-seg-opt, .cs-q-check):has(:checked) { outline: 3px solid Highlight; outline-offset: -3px; }
  .cs-q-mark, .cs-q-card:has(:checked)::after { forced-color-adjust: none; background: CanvasText; }
  .cs-q-prog-list :is(.is-current, .is-done) { border-color: Highlight; }
  .cs-request-dialog { border: 2px solid CanvasText; }
}
