/* Smartphoneshop 2.0 - Checkout v2
   Progressive enhancement only. DanDomain form fields and checkout actions remain intact. */

.ss-checkout-minimal-header,
.ss-checkout-footer { display:none; }

body.ss-checkout-page {
  --ss-ink:#11181c;
  --ss-muted:#66777c;
  --ss-border:#dfe6e8;
  --ss-border-strong:#cbd7da;
  --ss-soft:#f5f8f8;
  --ss-soft-teal:#f0fafa;
  --ss-teal:#00adb5;
  --ss-teal-dark:#008e95;
  --ss-yellow:#fed766;
  background:#f4f7f7;
  color:var(--ss-ink);
}

body.ss-checkout-page *,
body.ss-checkout-page *::before,
body.ss-checkout-page *::after { box-sizing:border-box; }

/* Enclosed checkout. */
body.ss-checkout-page .site-corporate,
body.ss-checkout-page .ss-header-shell,
body.ss-checkout-page .moveBreadcrumb,
body.ss-checkout-page .site-slider,
body.ss-checkout-page .site-footer.ss-footer { display:none !important; }

body.ss-checkout-page .ss-checkout-minimal-header {
  display:block;
  position:relative;
  z-index:80;
  background:#11181c;
  border-bottom:1px solid rgba(255,255,255,.08);
  box-shadow:0 5px 20px rgba(17,24,28,.12);
}

.ss-checkout-minimal-header__inner {
  min-height:78px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
}

.ss-checkout-minimal-header__left {
  display:flex;
  align-items:center;
  min-width:0;
  gap:19px;
}

.ss-checkout-minimal-header__brand {
  order:-1;
  display:inline-flex;
  align-items:baseline;
  flex:0 0 auto;
  color:#fff !important;
  font-family:"Reddit Sans","Open Sans",Arial,sans-serif;
  font-size:20px;
  font-weight:850;
  line-height:1;
  letter-spacing:-.045em;
  text-decoration:none !important;
}

.ss-checkout-brand-accent { color:var(--ss-yellow); }

.ss-checkout-back-link {
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding-left:18px;
  border-left:1px solid rgba(255,255,255,.16);
  color:#b9c4c7 !important;
  font-size:12px;
  font-weight:650;
  text-decoration:none !important;
  transition:color .16s ease;
}

.ss-checkout-back-link:hover { color:#fff !important; }
.ss-checkout-back-link i { color:var(--ss-teal); font-size:11px; }

.ss-checkout-minimal-header__meta {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:20px;
  color:#c4ced0;
  font-size:12px;
  line-height:1.3;
}

.ss-checkout-minimal-header__meta > span,
.ss-checkout-minimal-header__meta > a {
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:inherit !important;
  text-decoration:none !important;
}

.ss-checkout-minimal-header__meta i { color:var(--ss-teal); }
.ss-checkout-minimal-header__meta a:hover { color:#fff !important; }

body.ss-checkout-page .site-content {
  background:#f4f7f7;
  padding-top:34px;
  padding-bottom:58px;
}

body.ss-checkout-page .site-main-content {
  margin-top:0 !important;
  margin-bottom:0 !important;
  padding-bottom:0 !important;
}

/* JS creates this shell from the existing DanDomain columns. */
body.ss-checkout-page .ss-checkout-shell {
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) minmax(330px, 390px);
  align-items:start;
  gap:28px;
  width:100%;
  max-width:1120px;
  margin:0 auto;
}

body.ss-checkout-page .ss-checkout-main {
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:14px;
}

body.ss-checkout-page .ss-checkout-address-col,
body.ss-checkout-page .ss-checkout-flow-col,
body.ss-checkout-page .ss-checkout-summary-col {
  float:none !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

body.ss-checkout-page .ss-checkout-flow-col {
  display:flex;
  flex-direction:column;
  gap:14px;
}

/* Accordion steps. */
body.ss-checkout-page .ss-checkout-step {
  position:relative;
  width:100%;
  margin:0 !important;
  padding:0 !important;
  border:1px solid var(--ss-border) !important;
  border-radius:14px !important;
  background:#fff !important;
  box-shadow:0 5px 20px rgba(17,24,28,.035) !important;
  overflow:hidden;
  transition:border-color .18s ease, box-shadow .18s ease, opacity .18s ease;
}

body.ss-checkout-page .ss-checkout-step.is-open {
  border-color:#cbdfe1 !important;
  box-shadow:0 8px 28px rgba(17,24,28,.055) !important;
}

body.ss-checkout-page .ss-checkout-step.is-locked {
  opacity:.72;
}

.ss-checkout-step-toggle {
  width:100%;
  min-height:72px;
  display:grid;
  grid-template-columns:34px minmax(0,1fr) auto;
  grid-template-areas:
    "number title action"
    "number summary action";
  align-items:center;
  column-gap:13px;
  row-gap:2px;
  padding:14px 18px;
  border:0 !important;
  background:#fff !important;
  color:var(--ss-ink) !important;
  box-shadow:none !important;
  text-align:left;
  cursor:pointer;
}

.ss-checkout-step-toggle:hover { background:#fbfdfd !important; }
.ss-checkout-step-toggle:focus-visible { outline:3px solid rgba(0,173,181,.18); outline-offset:-3px; }
.ss-checkout-step.is-open .ss-checkout-step-toggle { cursor:default; }
.ss-checkout-step.is-locked .ss-checkout-step-toggle { cursor:default; }

.ss-checkout-step-number {
  grid-area:number;
  width:32px;
  height:32px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid #d6e0e2;
  border-radius:50%;
  background:#f6f8f8;
  color:#586a6f;
  font-size:12px;
  font-weight:850;
}

.ss-checkout-step.is-open .ss-checkout-step-number {
  border-color:rgba(0,173,181,.25);
  background:var(--ss-soft-teal);
  color:var(--ss-teal-dark);
}

.ss-checkout-step.is-complete .ss-checkout-step-number {
  border-color:var(--ss-teal);
  background:var(--ss-teal);
  color:transparent;
  font-size:0;
}

.ss-checkout-step.is-complete .ss-checkout-step-number::before {
  content:"\2713";
  color:#fff;
  font-size:15px;
  font-weight:900;
}

.ss-checkout-step-title {
  grid-area:title;
  color:var(--ss-ink);
  font-size:16px;
  font-weight:850;
  line-height:1.2;
  letter-spacing:-.015em;
}

.ss-checkout-step-summary {
  grid-area:summary;
  min-width:0;
  overflow:hidden;
  color:#6c7d82;
  font-size:11px;
  font-weight:500;
  line-height:1.35;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.ss-checkout-step.is-open .ss-checkout-step-summary:empty::before {
  content:"Udfyld oplysningerne nedenfor";
  color:#809095;
}

.ss-checkout-step-action {
  grid-area:action;
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:#66777c;
  font-size:11px;
  font-weight:750;
  white-space:nowrap;
}

.ss-checkout-step.is-complete:not(.is-open) .ss-checkout-step-action { color:var(--ss-teal-dark); }
.ss-checkout-step-action i { font-size:10px; }

.ss-checkout-step-body {
  display:block !important;
  width:100%;
  padding:0 18px 20px;
  border-top:1px solid #edf1f2;
  background:#fff;
}

.ss-checkout-step-body[hidden] { display:none !important; }

.ss-checkout-step.is-open .ss-checkout-step-body {
  padding-top:19px;
}

/* Hide only the old DanDomain step heading; the new accordion owns the hierarchy. */
body.ss-checkout-page .ss-checkout-original-heading { display:none !important; }

/* Remove legacy panel chrome inside an open step without disturbing grid/inputs. */
body.ss-checkout-page .ss-checkout-step-body .panel,
body.ss-checkout-page .ss-checkout-step-body .panel-border,
body.ss-checkout-page .ss-checkout-step-body .panel-body,
body.ss-checkout-page .ss-checkout-step-body .panel-heading,
body.ss-checkout-page .ss-checkout-step-body fieldset {
  box-shadow:none !important;
}

body.ss-checkout-page .ss-checkout-step-body .panel,
body.ss-checkout-page .ss-checkout-step-body .panel-border {
  border-color:transparent !important;
  background:transparent !important;
}

body.ss-checkout-page .ss-checkout-step-body .panel-heading {
  background:transparent !important;
}

/* Form language - deliberately broad to override legacy Memento controls. */
body.ss-checkout-page .ss-checkout-main label,
body.ss-checkout-page .ss-checkout-main .form-label,
body.ss-checkout-page .ss-checkout-main legend {
  color:#334349 !important;
  font-size:12px !important;
  font-weight:750 !important;
  line-height:1.35;
}

body.ss-checkout-page .ss-checkout-main .form-group {
  margin-bottom:14px !important;
}

body.ss-checkout-page .ss-checkout-main input[type="text"],
body.ss-checkout-page .ss-checkout-main input[type="email"],
body.ss-checkout-page .ss-checkout-main input[type="tel"],
body.ss-checkout-page .ss-checkout-main input[type="number"],
body.ss-checkout-page .ss-checkout-main input[type="password"],
body.ss-checkout-page .ss-checkout-main select,
body.ss-checkout-page .ss-checkout-main textarea,
body.ss-checkout-page .ss-checkout-main .form-input {
  min-height:46px !important;
  padding:10px 12px !important;
  border:1px solid var(--ss-border-strong) !important;
  border-radius:8px !important;
  background:#fff !important;
  color:var(--ss-ink) !important;
  box-shadow:none !important;
  font-size:13px !important;
  line-height:1.35 !important;
  transition:border-color .16s ease, box-shadow .16s ease;
}

body.ss-checkout-page .ss-checkout-main textarea {
  min-height:112px !important;
  resize:vertical;
}

body.ss-checkout-page .ss-checkout-main input:focus,
body.ss-checkout-page .ss-checkout-main select:focus,
body.ss-checkout-page .ss-checkout-main textarea:focus,
body.ss-checkout-page .ss-checkout-main .form-input:focus {
  outline:none !important;
  border-color:var(--ss-teal) !important;
  box-shadow:0 0 0 3px rgba(0,173,181,.11) !important;
}

body.ss-checkout-page .ss-checkout-main input::placeholder,
body.ss-checkout-page .ss-checkout-main textarea::placeholder { color:#97a4a8; opacity:1; }

body.ss-checkout-page .ss-checkout-main .ss-field-invalid {
  border-color:#d86a6a !important;
  box-shadow:0 0 0 3px rgba(216,106,106,.10) !important;
}

/* Input groups (phone prefix etc.). */
body.ss-checkout-page .ss-checkout-main .input-group {
  display:flex;
  align-items:stretch;
  width:100%;
}

body.ss-checkout-page .ss-checkout-main .input-group .input-group-addon,
body.ss-checkout-page .ss-checkout-main .input-group .input-group-button > .button {
  min-height:46px !important;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--ss-border-strong) !important;
  background:#f6f8f8 !important;
  color:#607277 !important;
  box-shadow:none !important;
}

body.ss-checkout-page .ss-checkout-main .input-group .input-group-addon {
  padding:0 11px !important;
  border-radius:8px 0 0 8px !important;
  border-right:0 !important;
}

body.ss-checkout-page .ss-checkout-main .input-group .form-input {
  flex:1 1 auto;
  min-width:0;
}

.ss-checkout-field-help {
  display:block;
  margin:6px 0 0;
  color:#7a898e;
  font-size:11px;
  line-height:1.4;
}

/* Customer type segmented control. */
body.ss-checkout-page .ss-checkout-main .button-group {
  display:flex !important;
  width:100% !important;
  gap:3px !important;
  margin:4px 0 15px !important;
  padding:3px !important;
  border:1px solid #d8e1e3 !important;
  border-radius:9px !important;
  background:#f5f8f8 !important;
  box-shadow:none !important;
}

body.ss-checkout-page .ss-checkout-main .button-group > li {
  flex:1 1 0 !important;
  margin:0 !important;
  padding:0 !important;
}

body.ss-checkout-page .ss-checkout-main .button-group .button,
body.ss-checkout-page .ss-checkout-main .button-group button,
body.ss-checkout-page .ss-checkout-main .button-group a {
  width:100% !important;
  min-height:38px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 !important;
  padding:8px 9px !important;
  border:0 !important;
  border-radius:7px !important;
  background:transparent !important;
  color:#5a6b70 !important;
  box-shadow:none !important;
  font-size:11px !important;
  font-weight:800 !important;
  text-transform:none !important;
}

body.ss-checkout-page .ss-checkout-main .button-group .active,
body.ss-checkout-page .ss-checkout-main .button-group .is-active,
body.ss-checkout-page .ss-checkout-main .button-group [aria-pressed="true"],
body.ss-checkout-page .ss-checkout-main .button-group > li.active .button,
body.ss-checkout-page .ss-checkout-main .button-group > li.is-active .button {
  background:var(--ss-teal) !important;
  color:#fff !important;
  box-shadow:0 2px 6px rgba(0,173,181,.18) !important;
}

/* Secondary legacy buttons, e.g. login. */
body.ss-checkout-page .ss-checkout-main .button:not(.button-group *):not(.button-primary):not(.ss-checkout-step-toggle):not(.ss-checkout-step-continue):not(.ss-checkout-review-edit),
body.ss-checkout-page .ss-checkout-main button:not(.button-group *):not(.button-primary):not(.ss-checkout-step-toggle):not(.ss-checkout-step-continue):not(.ss-checkout-review-edit) {
  min-height:38px;
  padding:8px 12px;
  border:1px solid #d5dfe1 !important;
  border-radius:8px !important;
  background:#f7f9f9 !important;
  color:#536469 !important;
  box-shadow:none !important;
  font-size:11px;
  font-weight:750;
  text-transform:none !important;
}

/* Radio choices become selectable cards. */
body.ss-checkout-page .ss-checkout-choice {
  position:relative !important;
  display:block !important;
  width:100% !important;
  min-height:58px;
  margin:0 0 9px !important;
  padding:13px 14px 13px 43px !important;
  border:1px solid #d9e2e4 !important;
  border-radius:10px !important;
  background:#fff !important;
  color:#2a393e !important;
  box-shadow:none !important;
  cursor:pointer;
  transition:border-color .16s ease, background .16s ease, box-shadow .16s ease;
}

body.ss-checkout-page .ss-checkout-choice:hover {
  border-color:#b8dadd !important;
  background:#fbfefe !important;
}

body.ss-checkout-page .ss-checkout-choice.is-selected {
  border-color:var(--ss-teal) !important;
  background:var(--ss-soft-teal) !important;
  box-shadow:0 0 0 2px rgba(0,173,181,.065) !important;
}

body.ss-checkout-page .ss-checkout-choice input[type="radio"] {
  position:absolute !important;
  left:14px !important;
  top:17px !important;
  width:17px !important;
  height:17px !important;
  margin:0 !important;
  accent-color:var(--ss-teal);
}

body.ss-checkout-page .ss-checkout-choice strong,
body.ss-checkout-page .ss-checkout-choice b {
  color:var(--ss-ink);
  font-weight:800;
}

body.ss-checkout-page input[type="checkbox"] { accent-color:var(--ss-teal); }

body.ss-checkout-page .ss-checkout-checkbox-row {
  display:flex;
  align-items:flex-start;
  gap:9px;
  margin:8px 0 !important;
  padding:10px 11px !important;
  border:1px solid #e1e7e9 !important;
  border-radius:8px !important;
  background:#fafcfc !important;
  color:#586a6f !important;
}

body.ss-checkout-page .ss-checkout-checkbox-row input[type="checkbox"] {
  flex:0 0 auto;
  width:16px;
  height:16px;
  margin-top:1px;
}

/* Continue buttons are the only strong CTA inside a step. */
.ss-checkout-step-actions {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  margin-top:19px;
  padding-top:17px;
  border-top:1px solid #edf1f2;
}

.ss-checkout-step-continue {
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:10px 16px;
  border:1px solid var(--ss-teal) !important;
  border-radius:8px !important;
  background:var(--ss-teal) !important;
  color:#fff !important;
  box-shadow:0 6px 15px rgba(0,173,181,.15) !important;
  font-size:12px;
  font-weight:850;
  text-transform:none !important;
  cursor:pointer;
}

.ss-checkout-step-continue:hover {
  border-color:var(--ss-teal-dark) !important;
  background:var(--ss-teal-dark) !important;
}

.ss-checkout-step-error {
  display:none;
  margin:12px 0 0;
  padding:9px 11px;
  border:1px solid #efc8c8;
  border-radius:8px;
  background:#fff7f7;
  color:#8a3333;
  font-size:11px;
  line-height:1.45;
}

.ss-checkout-step.has-error .ss-checkout-step-error { display:block; }

/* Review step. */
.ss-checkout-review-intro {
  margin:0 0 14px;
  color:#64767b;
  font-size:12px;
  line-height:1.55;
}

.ss-checkout-review-list {
  display:grid;
  gap:9px;
}

.ss-checkout-review-row {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:12px 13px;
  border:1px solid #e1e8e9;
  border-radius:9px;
  background:#fafcfc;
}

.ss-checkout-review-label {
  display:block;
  margin-bottom:3px;
  color:#334349;
  font-size:11px;
  font-weight:850;
}

.ss-checkout-review-value {
  display:block;
  color:#66777c;
  font-size:11px;
  line-height:1.4;
}

.ss-checkout-review-edit {
  min-height:32px;
  padding:6px 9px;
  border:0 !important;
  background:transparent !important;
  color:var(--ss-teal-dark) !important;
  box-shadow:none !important;
  font-size:11px;
  font-weight:800;
  cursor:pointer;
}

.ss-checkout-review-finish {
  display:flex;
  align-items:flex-start;
  gap:9px;
  margin-top:14px;
  padding:11px 12px;
  border-radius:9px;
  background:var(--ss-soft-teal);
  color:#506267;
  font-size:11px;
  line-height:1.45;
}

.ss-checkout-review-finish i { margin-top:2px; color:var(--ss-teal-dark); }

/* Sticky order summary. */
body.ss-checkout-page .ss-checkout-summary-col {
  position:sticky;
  top:96px;
  padding:0 !important;
  border:1px solid #dbe4e6 !important;
  border-radius:15px !important;
  background:#fff !important;
  box-shadow:0 10px 30px rgba(17,24,28,.065) !important;
  overflow:hidden;
  transition:border-color .18s ease, box-shadow .18s ease;
}

body.ss-checkout-page.ss-checkout-review-ready .ss-checkout-summary-col {
  border-color:#bddfe1 !important;
  box-shadow:0 12px 34px rgba(17,24,28,.075) !important;
}

body.ss-checkout-page .ss-checkout-summary-col > * { margin-left:0; margin-right:0; }

body.ss-checkout-page .ss-checkout-summary-col > header,
body.ss-checkout-page .ss-checkout-summary-col > h2,
body.ss-checkout-page .ss-checkout-summary-col > h3,
body.ss-checkout-page .ss-checkout-summary-col .b-checkout-header:first-child {
  margin:0 !important;
  padding:19px 20px 14px !important;
  border:0 !important;
  border-bottom:1px solid #e8edef !important;
  background:#fff !important;
  color:var(--ss-ink) !important;
  font-size:17px !important;
  font-weight:850 !important;
  line-height:1.25 !important;
}

body.ss-checkout-page .ss-checkout-summary-col .orderSummary {
  padding:0 20px 18px;
  background:#fff;
}

body.ss-checkout-page .orderSummary #orderLines {
  margin:0 -20px;
  padding:0 20px;
}

body.ss-checkout-page .orderSummary .m-cart,
body.ss-checkout-page .orderSummary .panel,
body.ss-checkout-page .orderSummary .panel-border {
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

body.ss-checkout-page .orderSummary ul { margin:0; padding:0; }

body.ss-checkout-page .orderSummary .orderLine {
  padding:13px 0;
  border-bottom:1px solid #edf1f2;
  background:#fff !important;
}

body.ss-checkout-page .orderSummary .orderLine article,
body.ss-checkout-page .orderSummary .orderLine header { margin:0; padding:0; }

body.ss-checkout-page .orderSummary .orderLine .row { margin-left:-5px; margin-right:-5px; }
body.ss-checkout-page .orderSummary .orderLine [class*="col-"] { padding-left:5px; padding-right:5px; }

body.ss-checkout-page .orderSummary .orderLine .title,
body.ss-checkout-page .orderSummary .orderLine a {
  color:#26363b;
  font-size:12px;
  font-weight:700;
  line-height:1.35;
  text-decoration:none;
}

body.ss-checkout-page .orderSummary .orderLine .h6,
body.ss-checkout-page .orderSummary .orderLine strong { color:var(--ss-ink); font-size:12px; }
body.ss-checkout-page .orderSummary .cart-total-value { text-align:right; }
body.ss-checkout-page .orderSummary .cart-total-value .reset { display:none; }

body.ss-checkout-page .orderSummary > table,
body.ss-checkout-page .orderSummary .ss-checkout-summary-totals {
  width:100%;
  margin:14px 0 0;
  border:0;
  border-collapse:collapse;
  background:transparent;
}

body.ss-checkout-page .orderSummary > table td,
body.ss-checkout-page .orderSummary .ss-checkout-summary-totals td {
  padding:6px 0;
  border:0;
  color:#596a6f;
  font-size:12px;
}

body.ss-checkout-page .orderSummary .orderLineSum td {
  padding-top:13px;
  border-top:1px solid #dfe7e9;
  color:var(--ss-ink);
  font-size:17px;
}

body.ss-checkout-page .orderSummary .orderLineSum strong { font-size:inherit; font-weight:850; }

body.ss-checkout-page .orderSummary anyday-price-widget {
  display:block !important;
  margin:7px 0 2px !important;
  color:#536469 !important;
  font-size:11px !important;
  text-align:right;
}

.ss-checkout-summary-trust {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  margin:14px 0 0;
  padding:10px 12px;
  border-radius:8px;
  background:#f5f8f8;
  color:#5e7075;
  font-size:11px;
}

.ss-checkout-summary-trust i { color:var(--ss-teal-dark); }

/* Approval is intentionally withheld until the customer reaches review. */
body.ss-checkout-page.ss-checkout-enhanced:not(.ss-checkout-review-ready) .ss-checkout-summary-col .ss-checkout-approval {
  display:none !important;
}

body.ss-checkout-page .ss-checkout-summary-col .ss-checkout-approval {
  margin-left:10px !important;
  margin-right:10px !important;
}

body.ss-checkout-page .ss-checkout-summary-col .button-primary,
body.ss-checkout-page .ss-checkout-summary-col button[type="submit"].button-primary,
body.ss-checkout-page .ss-checkout-summary-col input[type="submit"].button-primary {
  min-height:48px;
  padding:12px 17px;
  border:1px solid var(--ss-teal) !important;
  border-radius:9px !important;
  background:var(--ss-teal) !important;
  color:#fff !important;
  box-shadow:0 7px 18px rgba(0,173,181,.18) !important;
  font-size:13px;
  font-weight:850;
  letter-spacing:.01em;
  text-transform:none !important;
}

body.ss-checkout-page .ss-checkout-summary-col .button-primary:hover {
  border-color:var(--ss-teal-dark) !important;
  background:var(--ss-teal-dark) !important;
}

body.ss-checkout-page .ss-checkout-summary-col .button:not(.button-primary) {
  min-height:38px;
  border:1px solid #d9e1e3 !important;
  border-radius:8px !important;
  background:#f7f9f9 !important;
  color:#627378 !important;
  box-shadow:none !important;
  text-transform:none !important;
}

/* Existing delivery-split notice. */
body.ss-checkout-page .ss-delivery-checkout-note {
  margin:15px 0 2px !important;
  border:1px solid #d7e8e9 !important;
  border-radius:10px !important;
  background:#f3fbfb !important;
  box-shadow:none !important;
}

/* Compact checkout footer. */
body.ss-checkout-page .ss-checkout-footer {
  display:block;
  border-top:1px solid #dfe7e9;
  background:#fff;
}

.ss-checkout-footer__inner {
  min-height:72px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  color:#66777c;
  font-size:11px;
}

.ss-checkout-footer__links { display:flex; flex-wrap:wrap; gap:14px; }
.ss-checkout-footer a { color:#536469; text-decoration:none; }
.ss-checkout-footer a:hover { color:var(--ss-teal-dark); }

@media (max-width:980px) {
  body.ss-checkout-page .ss-checkout-shell {
    grid-template-columns:minmax(0,1fr);
    gap:16px;
  }
  body.ss-checkout-page .ss-checkout-summary-col { position:static; }
}

@media (max-width:700px) {
  body.ss-checkout-page .site-content { padding-top:16px; padding-bottom:28px; }

  .ss-checkout-minimal-header__inner { min-height:64px; gap:14px; }
  .ss-checkout-minimal-header__left { gap:10px; }
  .ss-checkout-minimal-header__brand { font-size:16px; }
  .ss-checkout-back-link { padding-left:10px; font-size:0; }
  .ss-checkout-back-link i { font-size:14px; }
  .ss-checkout-minimal-header__meta { gap:10px; font-size:11px; }
  .ss-checkout-minimal-header__meta .ss-checkout-help-copy,
  .ss-checkout-minimal-header__meta .ss-checkout-secure { display:none; }

  body.ss-checkout-page .ss-checkout-main { gap:10px; }
  body.ss-checkout-page .ss-checkout-flow-col { gap:10px; }
  body.ss-checkout-page .ss-checkout-step { border-radius:11px !important; }
  .ss-checkout-step-toggle { min-height:66px; padding:12px 13px; grid-template-columns:31px minmax(0,1fr) auto; column-gap:10px; }
  .ss-checkout-step-number { width:29px; height:29px; }
  .ss-checkout-step-title { font-size:15px; }
  .ss-checkout-step-action { font-size:0; }
  .ss-checkout-step-action i { font-size:11px; }
  .ss-checkout-step-body { padding-left:13px; padding-right:13px; padding-bottom:16px; }
  .ss-checkout-step-actions { justify-content:stretch; }
  .ss-checkout-step-continue { width:100%; }
  .ss-checkout-review-row { grid-template-columns:minmax(0,1fr) auto; }

  body.ss-checkout-page .ss-checkout-summary-col { border-radius:11px !important; }
  body.ss-checkout-page .ss-checkout-summary-col .orderSummary { padding:0 16px 16px; }
  body.ss-checkout-page .orderSummary #orderLines { margin:0 -16px; padding:0 16px; }

  .ss-checkout-footer__inner {
    min-height:88px;
    flex-direction:column;
    justify-content:center;
    text-align:center;
    gap:8px;
  }
  .ss-checkout-footer__links { justify-content:center; }
}

/* Keep segmented customer-type controls above the generic secondary-button skin. */
body.ss-checkout-page .ss-checkout-main .button-group .button,
body.ss-checkout-page .ss-checkout-main .button-group button,
body.ss-checkout-page .ss-checkout-main .button-group a {
  border:0 !important;
  background:transparent !important;
  color:#5a6b70 !important;
  box-shadow:none !important;
}
body.ss-checkout-page .ss-checkout-main .button-group .active,
body.ss-checkout-page .ss-checkout-main .button-group .is-active,
body.ss-checkout-page .ss-checkout-main .button-group [aria-pressed="true"],
body.ss-checkout-page .ss-checkout-main .button-group > li.active .button,
body.ss-checkout-page .ss-checkout-main .button-group > li.is-active .button {
  background:var(--ss-teal) !important;
  color:#fff !important;
  box-shadow:0 2px 6px rgba(0,173,181,.18) !important;
}

/* v2.3: live DanDomain checkout DOM wrappers. */
body.ss-checkout-page .ss-checkout-legacy-wrapper {
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

body.ss-checkout-page .ss-checkout-flow-stack {
  display:flex !important;
  flex-direction:column !important;
  gap:14px !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
}

/* DanDomain marks the selected customer type with button-primary on a label. */
body.ss-checkout-page .ss-checkout-main .button-group .button-primary {
  flex:1 1 0 !important;
  min-height:38px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 !important;
  padding:8px 9px !important;
  border:0 !important;
  border-radius:7px !important;
  background:var(--ss-teal) !important;
  color:#fff !important;
  box-shadow:0 2px 6px rgba(0,173,181,.18) !important;
  font-size:11px !important;
  font-weight:800 !important;
  text-transform:none !important;
}

body.ss-checkout-page .ss-checkout-main .button-group > label.button:not(.button-primary) {
  flex:1 1 0 !important;
  min-height:38px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 !important;
  padding:8px 9px !important;
  border:0 !important;
  border-radius:7px !important;
  background:transparent !important;
  color:#5a6b70 !important;
  box-shadow:none !important;
}

/* =========================================================
   Checkout v2.5 polish: controls, delivery hierarchy, payment hierarchy
   ========================================================= */

/* Phone prefix: DanDomain can render +45 as a raw text node, so JS wraps it. */
body.ss-checkout-page .ss-phone-group {
  display:grid !important;
  grid-template-columns:56px minmax(0,1fr) !important;
  align-items:stretch !important;
  gap:0 !important;
}
body.ss-checkout-page .ss-phone-prefix {
  min-height:46px;
  display:flex !important;
  align-items:center;
  justify-content:center;
  padding:0 10px !important;
  border:1px solid var(--ss-border-strong) !important;
  border-right:0 !important;
  border-radius:8px 0 0 8px !important;
  background:#f5f8f8 !important;
  color:#52656a !important;
  font-size:13px !important;
  font-weight:700 !important;
  line-height:1 !important;
}
body.ss-checkout-page .ss-phone-group .ss-phone-input {
  width:100% !important;
  min-width:0 !important;
  border-radius:0 8px 8px 0 !important;
}

/* Checkbox rows: neutralise old absolute/floated checkbox positioning. */
body.ss-checkout-page .ss-checkout-checkbox-row {
  position:relative !important;
  display:grid !important;
  grid-template-columns:18px minmax(0,1fr) !important;
  align-items:start !important;
  column-gap:10px !important;
  row-gap:2px !important;
}
body.ss-checkout-page .ss-checkout-checkbox-row input[type="checkbox"] {
  position:static !important;
  float:none !important;
  inset:auto !important;
  transform:none !important;
  width:17px !important;
  height:17px !important;
  min-height:0 !important;
  margin:1px 0 0 !important;
  padding:0 !important;
  grid-column:1 !important;
  align-self:start !important;
}
body.ss-checkout-page .ss-checkout-checkbox-row > label,
body.ss-checkout-page label.ss-checkout-checkbox-row {
  line-height:1.45 !important;
}
body.ss-checkout-page .ss-checkout-checkbox-row > label {
  grid-column:2 !important;
  margin:0 !important;
}

/* DELIVERY: custom top-level selector mirrors native inputs without moving them. */
body.ss-checkout-page .ss-delivery-top-options {
  display:grid;
  gap:10px;
  margin:0 0 18px;
}
body.ss-checkout-page .ss-delivery-top-heading {
  display:flex;
  flex-direction:column;
  gap:2px;
  margin:0 0 2px;
}
body.ss-checkout-page .ss-delivery-top-heading strong {
  color:var(--ss-ink);
  font-size:13px;
  font-weight:850;
}
body.ss-checkout-page .ss-delivery-top-heading span {
  color:#718287;
  font-size:11px;
  line-height:1.45;
}
body.ss-checkout-page .ss-delivery-top-option {
  position:relative;
  width:100%;
  display:grid;
  grid-template-columns:20px minmax(0,1fr) auto;
  align-items:start;
  gap:11px;
  padding:14px 15px !important;
  border:1px solid #d9e2e4 !important;
  border-radius:11px !important;
  background:#fff !important;
  color:var(--ss-ink) !important;
  box-shadow:none !important;
  text-align:left;
  text-transform:none !important;
  cursor:pointer;
  transition:border-color .16s ease, background .16s ease, box-shadow .16s ease;
}
body.ss-checkout-page .ss-delivery-top-option:hover {
  border-color:#b8dadd !important;
  background:#fbfefe !important;
}
body.ss-checkout-page .ss-delivery-top-option.is-selected {
  border-color:var(--ss-teal) !important;
  background:var(--ss-soft-teal) !important;
  box-shadow:0 0 0 2px rgba(0,173,181,.06) !important;
}
body.ss-checkout-page .ss-delivery-top-radio {
  width:17px;
  height:17px;
  margin-top:2px;
  border:1.5px solid #9caeb3;
  border-radius:50%;
  background:#fff;
  box-shadow:inset 0 0 0 4px #fff;
}
body.ss-checkout-page .ss-delivery-top-option.is-selected .ss-delivery-top-radio {
  border-color:var(--ss-teal-dark);
  background:var(--ss-teal);
}
body.ss-checkout-page .ss-delivery-top-copy {
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:3px;
}
body.ss-checkout-page .ss-delivery-top-title {
  color:var(--ss-ink);
  font-size:13px;
  font-weight:850;
  line-height:1.3;
}
body.ss-checkout-page .ss-delivery-top-description {
  color:#66787d;
  font-size:11.5px;
  font-weight:400;
  line-height:1.45;
}
body.ss-checkout-page .ss-delivery-top-price {
  padding-left:8px;
  color:#44565b;
  font-size:12px;
  font-weight:800;
  line-height:1.35;
  white-space:nowrap;
}
/* Native top-level delivery radios stay in DOM for DanDomain but are not duplicated visually. */
body.ss-checkout-page .ss-native-delivery-top-choice {
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
  clip:rect(0 0 0 0) !important;
  clip-path:inset(50%) !important;
  white-space:nowrap !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
}

/* Pakkeshops are visibly nested under the top-level delivery choice. */
body.ss-checkout-page .ss-delivery-pickup-panel {
  margin:2px 0 18px !important;
  padding:14px !important;
  border:1px solid #dfe8e9 !important;
  border-left:3px solid #9bd5d8 !important;
  border-radius:10px !important;
  background:#f8fbfb !important;
}
body.ss-checkout-page .ss-delivery-pickup-title {
  display:flex;
  flex-direction:column;
  gap:2px;
  margin:0 0 12px;
}
body.ss-checkout-page .ss-delivery-pickup-title strong {
  color:#35474c;
  font-size:12px;
  font-weight:850;
}
body.ss-checkout-page .ss-delivery-pickup-title span {
  color:#77888d;
  font-size:11px;
  line-height:1.4;
}
body.ss-checkout-page .ss-delivery-pickup-panel .ss-delivery-location-choice,
body.ss-checkout-page .ss-delivery-pickup-panel .ss-checkout-choice {
  margin:7px 0 !important;
  padding:11px 12px 11px 40px !important;
  border-radius:8px !important;
  background:#fff !important;
}
body.ss-checkout-page .ss-delivery-pickup-panel .ss-delivery-location-choice.is-selected,
body.ss-checkout-page .ss-delivery-pickup-panel .ss-checkout-choice.is-selected {
  background:#f0fbfb !important;
}
body.ss-checkout-page .ss-delivery-pickup-panel input[type="radio"] {
  top:14px !important;
  left:13px !important;
}
body.ss-checkout-page .ss-delivery-pickup-panel,
body.ss-checkout-page .ss-delivery-pickup-panel label,
body.ss-checkout-page .ss-delivery-pickup-panel .form-group,
body.ss-checkout-page .ss-delivery-pickup-panel .input-group {
  font-weight:400 !important;
}
body.ss-checkout-page .ss-delivery-pickup-panel strong,
body.ss-checkout-page .ss-delivery-pickup-panel b {
  font-weight:750 !important;
}

/* Native delivery descriptions should read like descriptions, not headings. */
body.ss-checkout-page [data-ss-checkout-step="2"] .deliveryMethodContainer,
body.ss-checkout-page [data-ss-checkout-step="2"] .deliveryMethodContainer label,
body.ss-checkout-page [data-ss-checkout-step="2"] .deliveryMethodContainer .form-group,
body.ss-checkout-page [data-ss-checkout-step="2"] .deliveryMethodContainer .input-group {
  font-weight:400 !important;
}
body.ss-checkout-page [data-ss-checkout-step="2"] .deliveryMethodName,
body.ss-checkout-page [data-ss-checkout-step="2"] .deliveryMethodName strong,
body.ss-checkout-page [data-ss-checkout-step="2"] .deliveryMethodName b {
  font-weight:850 !important;
}

/* PAYMENT: if there is one top-level payment category, make it intro copy. */
body.ss-checkout-page .ss-payment-intro {
  margin:0 0 15px !important;
  padding:14px 15px !important;
  border:1px solid #e0e8e9 !important;
  border-radius:10px !important;
  background:#f8fbfb !important;
  color:#5d6f74 !important;
}
body.ss-checkout-page .ss-payment-intro .input-group,
body.ss-checkout-page .ss-payment-intro .form-group,
body.ss-checkout-page .ss-payment-intro label {
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  font-weight:400 !important;
}
body.ss-checkout-page .ss-payment-intro-radio-wrap,
body.ss-checkout-page .ss-payment-intro input[name="paymentType"] {
  display:none !important;
}
body.ss-checkout-page .ss-payment-intro strong,
body.ss-checkout-page .ss-payment-intro b {
  color:var(--ss-ink) !important;
  font-weight:850 !important;
}
body.ss-checkout-page .ss-payment-option-heading {
  margin:0 0 9px;
  color:#33464b;
  font-size:12px;
  font-weight:850;
}
body.ss-checkout-page .ss-payment-option {
  min-height:58px;
  margin:8px 0 !important;
  padding:12px 13px 12px 43px !important;
}
body.ss-checkout-page .ss-payment-option .input-group,
body.ss-checkout-page .ss-payment-option .form-group,
body.ss-checkout-page .ss-payment-option label {
  font-weight:400 !important;
}
body.ss-checkout-page .ss-payment-option strong,
body.ss-checkout-page .ss-payment-option b {
  color:var(--ss-ink) !important;
  font-weight:800 !important;
}
body.ss-checkout-page .ss-payment-option input[type="radio"] {
  top:19px !important;
  left:14px !important;
}
body.ss-checkout-page .ss-payment-top-choice .input-group,
body.ss-checkout-page .ss-payment-top-choice label {
  font-weight:400 !important;
}

/* Review is deliberately more readable than the compact collapsed summaries. */
body.ss-checkout-page .ss-checkout-review-intro {
  font-size:13px;
  line-height:1.6;
}
body.ss-checkout-page .ss-checkout-review-row {
  padding:14px 14px;
}
body.ss-checkout-page .ss-checkout-review-label {
  font-size:12px;
}
body.ss-checkout-page .ss-checkout-review-value {
  font-size:12.5px;
  line-height:1.5;
}
body.ss-checkout-page .ss-checkout-review-edit {
  font-size:12px;
}
body.ss-checkout-page .ss-checkout-review-finish {
  font-size:12px;
  line-height:1.5;
}

@media (max-width:700px) {
  body.ss-checkout-page .ss-delivery-top-option {
    grid-template-columns:20px minmax(0,1fr);
  }
  body.ss-checkout-page .ss-delivery-top-price {
    grid-column:2;
    padding-left:0;
  }
}
body.ss-checkout-page .ss-delivery-native-empty {
  display:none !important;
}
body.ss-checkout-page .ss-delivery-native-shell {
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
}


/* =========================================================
   Checkout v2.6 polish: control alignment + compact hierarchy
   ========================================================= */

/* Keep the country prefix visually attached to the phone input. */
body.ss-checkout-page .ss-phone-group {
  display:flex !important;
  align-items:stretch !important;
  gap:0 !important;
  column-gap:0 !important;
}
body.ss-checkout-page .ss-phone-group .ss-phone-prefix {
  flex:0 0 56px !important;
  width:56px !important;
  min-width:56px !important;
  max-width:56px !important;
  margin:0 !important;
  justify-self:auto !important;
  border-radius:8px 0 0 8px !important;
}
body.ss-checkout-page .ss-phone-group .ss-phone-input {
  flex:1 1 auto !important;
  width:auto !important;
  min-width:0 !important;
  margin:0 0 0 -1px !important;
  border-radius:0 8px 8px 0 !important;
}

/* DanDomain checkboxes often live in an input-group with a narrow addon cell. */
body.ss-checkout-page .ss-checkout-checkbox-row {
  align-items:center !important;
}
body.ss-checkout-page .ss-checkout-checkbox-row .input-group {
  width:100% !important;
  min-height:44px !important;
  display:grid !important;
  grid-template-columns:40px minmax(0,1fr) !important;
  align-items:stretch !important;
  gap:0 !important;
}
body.ss-checkout-page .ss-checkout-checkbox-row .input-group-addon {
  position:static !important;
  float:none !important;
  width:40px !important;
  min-width:40px !important;
  height:auto !important;
  min-height:44px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-right:1px solid #e1e7e9 !important;
  border-radius:0 !important;
  background:#f7fafa !important;
}
body.ss-checkout-page .ss-checkout-checkbox-row .input-group-addon input[type="checkbox"],
body.ss-checkout-page .ss-checkout-checkbox-row input[type="checkbox"] {
  position:static !important;
  inset:auto !important;
  transform:none !important;
  align-self:center !important;
  justify-self:center !important;
  margin:0 !important;
  vertical-align:middle !important;
}
body.ss-checkout-page .ss-checkout-checkbox-row .input-group-main {
  min-width:0 !important;
  display:flex !important;
  align-items:center !important;
  margin:0 !important;
  padding:10px 12px !important;
  border:0 !important;
  border-radius:0 !important;
  background:#fff !important;
}

/* Delivery cards: title/price form row one; supporting copy gets its own row. */
body.ss-checkout-page .ss-delivery-top-option {
  grid-template-columns:20px minmax(0,1fr) auto !important;
  grid-template-rows:auto auto !important;
  grid-template-areas:
    "radio title price"
    "radio description description" !important;
  align-items:center !important;
  column-gap:11px !important;
  row-gap:4px !important;
}
body.ss-checkout-page .ss-delivery-top-radio {
  grid-area:radio !important;
  align-self:start !important;
  margin-top:1px !important;
}
body.ss-checkout-page .ss-delivery-top-copy {
  display:contents !important;
}
body.ss-checkout-page .ss-delivery-top-title {
  grid-area:title !important;
  align-self:center !important;
}
body.ss-checkout-page .ss-delivery-top-price {
  grid-area:price !important;
  align-self:center !important;
  padding-left:10px !important;
}
body.ss-checkout-page .ss-delivery-top-description {
  grid-area:description !important;
  max-width:62ch;
  color:#6f8085 !important;
  line-height:1.42 !important;
}

/* Radio controls should sit in the vertical centre of variable-height cards. */
body.ss-checkout-page .ss-delivery-pickup-panel .ss-delivery-location-choice,
body.ss-checkout-page .ss-delivery-pickup-panel .ss-checkout-choice,
body.ss-checkout-page .ss-payment-option {
  position:relative !important;
}
body.ss-checkout-page .ss-delivery-pickup-panel input[type="radio"],
body.ss-checkout-page .ss-payment-option input[type="radio"] {
  top:50% !important;
  transform:translateY(-50%) !important;
  margin:0 !important;
}
body.ss-checkout-page .ss-delivery-pickup-panel .input-group-addon,
body.ss-checkout-page .ss-payment-option .input-group-addon {
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

/* Give the final review card breathing room before the white checkout canvas ends. */
body.ss-checkout-page .site-main-content {
  padding-bottom:34px !important;
}
body.ss-checkout-page .ss-checkout-shell {
  margin-bottom:0 !important;
}

@media (max-width:700px) {
  body.ss-checkout-page .ss-delivery-top-option {
    grid-template-columns:20px minmax(0,1fr) auto !important;
    grid-template-areas:
      "radio title price"
      "radio description description" !important;
  }
  body.ss-checkout-page .ss-delivery-top-price {
    grid-column:auto !important;
    padding-left:6px !important;
  }
}


/* =========================================================
   Checkout v2.7 polish: native control cells
   ========================================================= */

/* Checkbox rows: one coherent card, not a bordered cell inside a bordered card. */
body.ss-checkout-page .ss-checkout-checkbox-row .input-group {
  display:grid !important;
  grid-template-columns:32px minmax(0,1fr) !important;
  align-items:stretch !important;
  gap:0 !important;
  width:100% !important;
  min-height:44px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
body.ss-checkout-page .ss-checkout-checkbox-row .input-group-addon {
  position:static !important;
  float:none !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:32px !important;
  min-width:32px !important;
  min-height:44px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
body.ss-checkout-page .ss-checkout-checkbox-row .input-group-main {
  min-width:0 !important;
  display:flex !important;
  align-items:center !important;
  margin:0 !important;
  padding:10px 8px 10px 4px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
body.ss-checkout-page .ss-checkout-checkbox-row .input-group-addon input[type="checkbox"],
body.ss-checkout-page .ss-checkout-checkbox-row input[type="checkbox"] {
  position:static !important;
  left:auto !important;
  top:auto !important;
  inset:auto !important;
  transform:none !important;
  width:17px !important;
  height:17px !important;
  margin:0 !important;
  padding:0 !important;
  align-self:center !important;
  justify-self:center !important;
}

/*
 * Pakkeshop + payment options contain their own DanDomain input-group.
 * The native radio belongs to that inner grey group, so let that group
 * own the radio layout instead of absolutely centring against the outer card.
 */
body.ss-checkout-page .ss-delivery-pickup-panel .ss-delivery-location-choice,
body.ss-checkout-page .ss-delivery-pickup-panel .ss-checkout-choice,
body.ss-checkout-page .ss-payment-option {
  padding:9px 10px !important;
}
body.ss-checkout-page .ss-delivery-pickup-panel .ss-delivery-location-choice > .input-group,
body.ss-checkout-page .ss-delivery-pickup-panel .ss-checkout-choice > .input-group,
body.ss-checkout-page .ss-payment-option > .input-group,
body.ss-checkout-page .ss-payment-option fieldset > .input-group {
  position:relative !important;
  display:grid !important;
  grid-template-columns:36px minmax(0,1fr) !important;
  align-items:stretch !important;
  width:100% !important;
  min-height:46px !important;
  margin:0 !important;
  padding:0 !important;
  gap:0 !important;
}
body.ss-checkout-page .ss-delivery-pickup-panel .ss-delivery-location-choice .input-group-addon,
body.ss-checkout-page .ss-delivery-pickup-panel .ss-checkout-choice .input-group-addon,
body.ss-checkout-page .ss-payment-option .input-group-addon {
  position:static !important;
  float:none !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:36px !important;
  min-width:36px !important;
  height:auto !important;
  min-height:100% !important;
  margin:0 !important;
  padding:0 !important;
}
body.ss-checkout-page .ss-delivery-pickup-panel .ss-delivery-location-choice .input-group-addon input[type="radio"],
body.ss-checkout-page .ss-delivery-pickup-panel .ss-checkout-choice .input-group-addon input[type="radio"],
body.ss-checkout-page .ss-payment-option .input-group-addon input[type="radio"],
body.ss-checkout-page .ss-delivery-pickup-panel .ss-delivery-location-choice input[type="radio"],
body.ss-checkout-page .ss-delivery-pickup-panel .ss-checkout-choice input[type="radio"],
body.ss-checkout-page .ss-payment-option input[type="radio"] {
  position:static !important;
  left:auto !important;
  top:auto !important;
  inset:auto !important;
  transform:none !important;
  width:17px !important;
  height:17px !important;
  margin:0 !important;
  padding:0 !important;
  align-self:center !important;
  justify-self:center !important;
}
body.ss-checkout-page .ss-delivery-pickup-panel .ss-delivery-location-choice .input-group-main,
body.ss-checkout-page .ss-delivery-pickup-panel .ss-checkout-choice .input-group-main,
body.ss-checkout-page .ss-payment-option .input-group-main {
  min-width:0 !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
}
\n\n/* =========================================================\n   Checkout v2.8 polish: checkbox cards are one visual unit\n   ========================================================= */\n\n/*\n * DanDomain wraps these checkboxes in several nested input-group / label\n * elements. The outer .ss-checkout-checkbox-row is our card, so every\n * nested wrapper must be visually transparent. This removes the small\n * bordered half-cell that otherwise remains around the checkbox.\n */\nbody.ss-checkout-page .ss-checkout-checkbox-row > *,\nbody.ss-checkout-page .ss-checkout-checkbox-row .input-group,\nbody.ss-checkout-page .ss-checkout-checkbox-row .input-group > *,\nbody.ss-checkout-page .ss-checkout-checkbox-row .input-group-addon,\nbody.ss-checkout-page .ss-checkout-checkbox-row .input-group-main,\nbody.ss-checkout-page .ss-checkout-checkbox-row fieldset,\nbody.ss-checkout-page .ss-checkout-checkbox-row label {\n  border:0 !important;\n  border-radius:0 !important;\n  outline:0 !important;\n  background:transparent !important;\n  box-shadow:none !important;\n}\n\nbody.ss-checkout-page .ss-checkout-checkbox-row .input-group {\n  min-height:44px !important;\n}\n\nbody.ss-checkout-page .ss-checkout-checkbox-row .input-group-addon {\n  width:34px !important;\n  min-width:34px !important;\n  min-height:44px !important;\n  padding:0 !important;\n  display:flex !important;\n  align-items:center !important;\n  justify-content:center !important;\n}\n\nbody.ss-checkout-page .ss-checkout-checkbox-row .input-group-main {\n  padding:10px 8px 10px 2px !important;\n  display:flex !important;\n  align-items:center !important;\n}\n\nbody.ss-checkout-page .ss-checkout-checkbox-row input[type="checkbox"] {\n  position:static !important;\n  width:17px !important;\n  height:17px !important;\n  margin:0 !important;\n  align-self:center !important;\n  justify-self:center !important;\n}\n
/* =========================================================
   Checkout v2.9 polish: remove residual checkbox addon chrome
   ========================================================= */

/*
 * The generic checkout input-group addon rule has higher specificity than
 * the checkbox reset above. Scope through .ss-checkout-main + .input-group
 * so these declarations win even when both sides use !important.
 */
body.ss-checkout-page .ss-checkout-main .ss-checkout-checkbox-row .input-group .input-group-addon,
body.ss-checkout-page .ss-checkout-main .ss-checkout-checkbox-row .input-group > .input-group-addon {
  border:0 !important;
  border-top:0 !important;
  border-right:0 !important;
  border-bottom:0 !important;
  border-left:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:0 !important;
}

/* Keep every native wrapper inside the checkbox card visually neutral. */
body.ss-checkout-page .ss-checkout-main .ss-checkout-checkbox-row .input-group,
body.ss-checkout-page .ss-checkout-main .ss-checkout-checkbox-row .input-group-main,
body.ss-checkout-page .ss-checkout-main .ss-checkout-checkbox-row fieldset,
body.ss-checkout-page .ss-checkout-main .ss-checkout-checkbox-row label {
  box-shadow:none !important;
}

/* =========================================================
   Checkout adjacent polish - logged-in address + final approval alignment
========================================================= */
body.ss-checkout-page .ss-checkout-logged-address .ss-checkout-step-body {
  color:#52666c;
}

body.ss-checkout-page .ss-checkout-logged-address .ss-checkout-logged-address-card {
  margin:0 0 14px;
  padding:16px 17px;
  border:1px solid #dce7e9;
  border-radius:10px;
  background:#f8fbfb;
  color:#4e6268;
  font-size:13px;
  line-height:1.45;
}

body.ss-checkout-page .ss-checkout-logged-address .ss-checkout-logged-address-card strong {
  display:block;
  margin-bottom:6px;
  color:var(--ss-ink);
  font-size:13px;
  font-weight:800;
}

body.ss-checkout-page .ss-checkout-logged-address .ss-checkout-logged-address-card .button,
body.ss-checkout-page .ss-checkout-logged-address .ss-checkout-logged-address-card .button-primary {
  margin-top:12px;
}

/* Final approval: one clean left edge from total -> trust -> terms -> actions. */
body.ss-checkout-page .ss-checkout-summary-col .ss-checkout-approval {
  box-sizing:border-box !important;
  width:100% !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
}

body.ss-checkout-page .ss-checkout-summary-col .ss-checkout-approval .input-group,
body.ss-checkout-page .ss-checkout-summary-col .ss-checkout-approval .form-group,
body.ss-checkout-page .ss-checkout-summary-col .ss-checkout-approval fieldset,
body.ss-checkout-page .ss-checkout-summary-col .ss-checkout-approval label {
  box-sizing:border-box !important;
  width:100% !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
}

body.ss-checkout-page .ss-checkout-summary-col .ss-checkout-approval .input-group {
  min-height:54px;
  padding:0 12px !important;
  border:1px solid #dbe4e6 !important;
  border-radius:9px !important;
  background:#fff !important;
}

body.ss-checkout-page .ss-checkout-summary-col .ss-checkout-approval .input-group-addon {
  width:34px !important;
  min-width:34px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
}

/* Logged-in native address content: soften DanDomain's raw text block. */
body.ss-checkout-page .ss-checkout-logged-address .ss-checkout-step-body > .stepBox,
body.ss-checkout-page .ss-checkout-logged-address .ss-checkout-step-body .contactInfoContainer {
  margin:0 0 14px !important;
  padding:16px 17px !important;
  border:1px solid #dce7e9 !important;
  border-radius:10px !important;
  background:#f8fbfb !important;
  box-shadow:none !important;
}
body.ss-checkout-page .ss-checkout-logged-address .ss-checkout-step-body > .stepBox hr,
body.ss-checkout-page .ss-checkout-logged-address .ss-checkout-step-body .contactInfoContainer hr {
  border-color:#e6edef !important;
}
body.ss-checkout-page .ss-checkout-logged-address .ss-checkout-step-body p {
  margin:0 0 10px !important;
  color:#53676c !important;
  font-size:13px !important;
  line-height:1.5 !important;
}
body.ss-checkout-page .ss-checkout-logged-address .ss-checkout-step-body .button {
  border-radius:8px !important;
  background:#fff !important;
}


/* =========================================================
   Adjacent UI v3.1: final order approval card polish
   ========================================================= */

/*
 * Terms sit outside .orderSummary, while the totals/trust content has 20px
 * inner padding. Match that content edge instead of spanning the whole
 * summary column.
 */
body.ss-checkout-page .ss-checkout-summary-col .ss-checkout-terms {
  box-sizing:border-box !important;
  width:auto !important;
  max-width:none !important;
  margin:14px 20px 0 !important;
  padding:0 !important;
  border:1px solid #dbe4e6 !important;
  border-radius:9px !important;
  background:#fff !important;
  overflow:hidden !important;
  box-shadow:none !important;
}

/* The outer rounded terms card owns all chrome. Native DanDomain wrappers stay neutral. */
body.ss-checkout-page .ss-checkout-summary-col .ss-checkout-terms .input-group,
body.ss-checkout-page .ss-checkout-summary-col .ss-checkout-terms .form-group,
body.ss-checkout-page .ss-checkout-summary-col .ss-checkout-terms fieldset,
body.ss-checkout-page .ss-checkout-summary-col .ss-checkout-terms label {
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:0 !important;
}

body.ss-checkout-page .ss-checkout-summary-col .ss-checkout-terms .input-group {
  display:grid !important;
  grid-template-columns:40px minmax(0,1fr) !important;
  align-items:stretch !important;
  min-height:54px !important;
}

body.ss-checkout-page .ss-checkout-summary-col .ss-checkout-terms .input-group-addon {
  position:static !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:40px !important;
  min-width:40px !important;
  min-height:54px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-right:1px solid #e2e8ea !important;
  border-radius:0 !important;
  background:#fafcfc !important;
  box-shadow:none !important;
}

body.ss-checkout-page .ss-checkout-summary-col .ss-checkout-terms .input-group-main {
  min-width:0 !important;
  display:flex !important;
  align-items:center !important;
  margin:0 !important;
  padding:11px 12px !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

body.ss-checkout-page .ss-checkout-summary-col .ss-checkout-terms input[type="checkbox"] {
  position:static !important;
  width:16px !important;
  height:16px !important;
  margin:0 !important;
  transform:none !important;
}

/*
 * Keep the two final actions on one deliberate row. The back action stays
 * compact, while the purchase CTA takes the remaining width.
 */
body.ss-checkout-page .ss-checkout-summary-col .ss-checkout-final-actions {
  box-sizing:border-box !important;
  display:flex !important;
  align-items:stretch !important;
  gap:8px !important;
  width:auto !important;
  max-width:none !important;
  margin:8px 20px 20px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

body.ss-checkout-page .ss-checkout-summary-col .ss-checkout-final-actions > * {
  margin:0 !important;
}

body.ss-checkout-page .ss-checkout-summary-col .ss-checkout-final-back {
  flex:0 0 auto !important;
  min-width:72px !important;
  min-height:46px !important;
}

body.ss-checkout-page .ss-checkout-summary-col .ss-checkout-final-submit {
  flex:1 1 auto !important;
  width:auto !important;
  min-width:0 !important;
  min-height:46px !important;
  margin:0 !important;
}

@media (max-width: 640px) {
  body.ss-checkout-page .ss-checkout-summary-col .ss-checkout-terms {
    margin-left:16px !important;
    margin-right:16px !important;
  }

  body.ss-checkout-page .ss-checkout-summary-col .ss-checkout-final-actions {
    margin-left:16px !important;
    margin-right:16px !important;
    margin-bottom:16px !important;
  }
}

/* =========================================================
   Adjacent UI v3.2: final micro-polish
   ========================================================= */

/* Keep the terms link together. It may wrap as a unit, but never split "Læs her.". */
body.ss-checkout-page .ss-checkout-summary-col .ss-checkout-terms a {
  display:inline-block !important;
  white-space:nowrap !important;
  margin-left:3px !important;
}

/* DanDomain's generic .button rules can leave the compact back button text off-centre. */
body.ss-checkout-page .ss-checkout-summary-col .ss-checkout-final-back {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  padding:0 14px !important;
  line-height:1 !important;
}
