/* Opt-in components. Loading this file alone never restyles legacy pages. */
:where([data-lqds]) {
  color: var(--lqds-color-ink);
  font-family: var(--lqds-font-sans);
  font-size: var(--lqds-font-body);
  line-height: var(--lqds-leading-body);
}
:where(.lqds-button, .lqds-card, .lqds-choice, .lqds-input, .lqds-price, .lqds-modal) { box-sizing: border-box; }
.lqds-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--lqds-space-2);
  min-height: var(--lqds-control-height);
  padding: var(--lqds-space-2) var(--lqds-space-5);
  border: var(--lqds-border-width) solid transparent;
  border-radius: var(--lqds-radius-pill);
  color: var(--lqds-action-foreground);
  background: var(--lqds-action-background);
  font-family: var(--lqds-font-sans);
  font-size: var(--lqds-font-label);
  font-weight: var(--lqds-weight-bold);
  line-height: var(--lqds-leading-label);
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: opacity var(--lqds-motion-fast) var(--lqds-ease), box-shadow var(--lqds-motion-fast) var(--lqds-ease);
}
.lqds-button--secondary {
  color: var(--lqds-color-ink);
  background: var(--lqds-color-surface);
  border-color: var(--lqds-color-border);
}
.lqds-button--quiet {
  color: var(--lqds-color-muted);
  background: transparent;
  padding-inline: var(--lqds-space-3);
}
.lqds-button--danger { color: var(--lqds-color-danger); background: var(--lqds-color-surface); border-color: var(--lqds-color-border); }
.lqds-button--compact { min-height: var(--lqds-control-compact); padding-inline: var(--lqds-space-3); }
.lqds-button--large { min-height: var(--lqds-control-large); }
.lqds-button--wide { width: 100%; }
.lqds-button:disabled { opacity: var(--lqds-opacity-disabled); cursor: not-allowed; }
.lqds-button[aria-busy="true"] { cursor: progress; }
.lqds-button[aria-pressed="true"] { color: var(--lqds-accent); background: var(--lqds-accent-soft); border-color: var(--lqds-accent); }
:where(.lqds-button, .lqds-choice, .lqds-input, .lqds-modal-close):focus-visible {
  outline: var(--lqds-focus-width) solid var(--lqds-color-brand);
  outline-offset: var(--lqds-focus-offset);
}
.lqds-icon { width: var(--lqds-icon-size); height: var(--lqds-icon-size); flex-shrink: 0; }
.lqds-title { margin: 0; color: var(--lqds-color-ink); font-size: var(--lqds-font-page); font-weight: var(--lqds-weight-heavy); line-height: var(--lqds-leading-title); letter-spacing: var(--lqds-tracking-title); word-break: keep-all; }
.lqds-section-title { margin: 0; color: var(--lqds-color-ink); font-size: var(--lqds-font-section); font-weight: var(--lqds-weight-bold); line-height: var(--lqds-leading-title); letter-spacing: var(--lqds-tracking-title); }
.lqds-card { display: flex; flex-direction: column; min-width: 0; padding: var(--lqds-space-5); border: var(--lqds-border-width) solid var(--lqds-color-border); border-radius: var(--lqds-radius-card); background: var(--lqds-color-surface); }
.lqds-card__media { display: grid; place-items: center; min-height: var(--lqds-media-height); margin-block-end: var(--lqds-space-4); background: var(--lqds-color-canvas); border-radius: var(--lqds-radius-small); }
.lqds-card__title { margin: 0; font-size: var(--lqds-font-card-title); font-weight: var(--lqds-weight-bold); line-height: var(--lqds-leading-title); color: var(--lqds-color-ink); word-break: keep-all; }
.lqds-card__description { margin: var(--lqds-space-2) 0 var(--lqds-space-4); font-size: var(--lqds-font-label); color: var(--lqds-color-muted); line-height: var(--lqds-leading-body); }
.lqds-card__actions { display: flex; flex-wrap: wrap; gap: var(--lqds-space-2); margin-top: auto; padding-top: var(--lqds-space-4); }
.lqds-choice { position: relative; display: flex; align-items: center; gap: var(--lqds-space-3); min-height: var(--lqds-control-large); padding: var(--lqds-space-3) var(--lqds-space-4); border: var(--lqds-border-width) solid var(--lqds-color-border); border-radius: var(--lqds-radius-control); background: var(--lqds-color-surface); color: var(--lqds-color-ink); font-family: var(--lqds-font-sans); font-size: var(--lqds-font-label); font-weight: var(--lqds-weight-semibold); text-align: left; cursor: pointer; }
.lqds-choice[aria-pressed="true"] { background: var(--lqds-accent-soft); border-color: var(--lqds-accent); color: var(--lqds-accent); }
.lqds-choice__mark { display: inline-grid; place-items: center; width: var(--lqds-icon-size); height: var(--lqds-icon-size); border: var(--lqds-border-width) solid var(--lqds-color-border); border-radius: var(--lqds-radius-pill); color: transparent; flex-shrink: 0; }
.lqds-choice[aria-pressed="true"] .lqds-choice__mark { background: var(--lqds-accent); border-color: var(--lqds-accent); color: var(--lqds-color-surface); }
.lqds-input { display: block; width: 100%; min-height: var(--lqds-control-height); padding: var(--lqds-space-2) var(--lqds-space-3); border: var(--lqds-border-width) solid var(--lqds-color-border); border-radius: var(--lqds-radius-control); background: var(--lqds-color-surface); color: var(--lqds-color-ink); font-family: var(--lqds-font-sans); font-size: var(--lqds-font-body); line-height: var(--lqds-leading-label); }
.lqds-input[aria-invalid="true"] { border-color: var(--lqds-color-danger); }
.lqds-help { margin: var(--lqds-space-2) 0 0; font-size: var(--lqds-font-label); color: var(--lqds-color-muted); line-height: var(--lqds-leading-body); }
.lqds-help--error { color: var(--lqds-color-danger); }
.lqds-price { padding: var(--lqds-space-4); border: var(--lqds-border-width) solid var(--lqds-color-border); border-radius: var(--lqds-radius-card); background: var(--lqds-color-canvas); color: var(--lqds-color-ink); }
.lqds-price--monthly { color: var(--lqds-color-surface); background: linear-gradient(125deg, var(--lqds-color-monthly-start), var(--lqds-color-monthly-end)); }
.lqds-price--cash { color: var(--lqds-color-pink); background: var(--lqds-color-pink-soft); border-color: var(--lqds-color-pink-border); }
.lqds-price__label { display: block; font-size: var(--lqds-font-label); font-weight: var(--lqds-weight-semibold); }
.lqds-price__amount { display: block; font-size: var(--lqds-font-amount); font-weight: var(--lqds-weight-heavy); line-height: var(--lqds-leading-title); letter-spacing: var(--lqds-tracking-title); font-variant-numeric: tabular-nums; margin-top: var(--lqds-space-1); overflow-wrap: anywhere; }
.lqds-price__pending { display: block; font-size: var(--lqds-font-card-title); font-weight: var(--lqds-weight-semibold); line-height: var(--lqds-leading-label); margin-top: var(--lqds-space-2); }
.lqds-price__note { margin: var(--lqds-space-2) 0 0; font-size: var(--lqds-font-caption); line-height: var(--lqds-leading-body); color: var(--lqds-color-muted); }
.lqds-price--monthly .lqds-price__note { color: var(--lqds-color-monthly-note); }
.lqds-modal { width: min(560px, calc(100vw - 32px)); max-height: calc(100dvh - 48px); padding: var(--lqds-space-6); border: var(--lqds-border-width) solid var(--lqds-color-border); border-radius: var(--lqds-radius-panel); color: var(--lqds-color-ink); background: var(--lqds-color-surface); box-shadow: var(--lqds-shadow-dialog); font-family: var(--lqds-font-sans); }
.lqds-modal::backdrop { background: var(--lqds-color-ink); opacity: var(--lqds-opacity-disabled); }
.lqds-modal-close { position: absolute; top: var(--lqds-space-3); right: var(--lqds-space-3); display: grid; place-items: center; width: var(--lqds-control-height); height: var(--lqds-control-height); padding: 0; border: 0; border-radius: var(--lqds-radius-pill); background: var(--lqds-color-canvas); color: var(--lqds-color-ink); font-size: var(--lqds-font-section); cursor: pointer; }
@media (hover: hover) { .lqds-button:not(:disabled):hover { box-shadow: var(--lqds-shadow-soft); } }
@media (prefers-reduced-motion: reduce) { .lqds-button { transition: none; } }

/* 2026-10-12: shared native select. Keep the OS picker, original field values and events. */
body.lqds-ready .lqds-native-select:not([multiple]):not([hidden]):not([aria-hidden="true"]):not([tabindex="-1"]),
body.lqds-ready .lqe select:not([multiple]):not([hidden]):not([aria-hidden="true"]):not([tabindex="-1"]) {
  -webkit-appearance: none; -moz-appearance: none; appearance: none;
  box-sizing: border-box; width: 100%; max-width: 100%; min-width: 0;
  height: auto; min-height: calc(var(--lqds-control-large) + var(--lqds-space-1));
  border: var(--lqds-border-width) solid var(--lqds-color-border); border-radius: var(--lqds-radius-control);
  padding: var(--lqds-space-3) var(--lqds-space-10) var(--lqds-space-3) var(--lqds-space-4);
  font-family: var(--lqds-font-sans); font-size: var(--lqds-font-body); font-weight: var(--lqds-weight-regular);
  line-height: var(--lqds-leading-label); color: var(--lqds-color-ink);
  background-color: var(--lqds-color-surface);
  background-image: linear-gradient(45deg, transparent 50%, var(--lqds-color-ink) 50%), linear-gradient(135deg, var(--lqds-color-ink) 50%, transparent 50%);
  background-position: calc(100% - var(--lqds-space-5) - var(--lqds-space-1)) center, calc(100% - var(--lqds-space-4) - var(--lqds-space-1) / 2) center;
  background-size: calc(var(--lqds-space-3) / 2) calc(var(--lqds-space-3) / 2);
  background-repeat: no-repeat; box-shadow: none; cursor: pointer;
}
body.lqds-ready .lqds-native-select:not([multiple]):not([hidden]):not([aria-hidden="true"]):not([tabindex="-1"]):focus,
body.lqds-ready .lqe select:focus-visible,
body.lqds-ready .lqe .lqe-money-field > input:focus-visible {
  outline: var(--lqds-focus-width) solid var(--lqds-color-brand-soft);
  outline-offset: var(--lqds-focus-offset); border-color: var(--lqds-color-brand);
}
body.lqds-ready .lqds-native-select:not([multiple]):not([hidden]):not([aria-hidden="true"]):not([tabindex="-1"])[aria-invalid="true"] { border-color: var(--lqds-color-danger); }
body.lqds-ready .lqds-native-select:disabled { opacity: var(--lqds-opacity-disabled); cursor: not-allowed; }
body.lqds-ready form.lifeq-consult-form .lqds-consult-extra {
  box-sizing: border-box; grid-column: 1 / -1; width: 100%; max-width: 100%; min-width: 0;
}
body.lqds-ready form .lifeq-flow-consents label.lqds-quote-consent,
body.lqds-ready form label.lqds-quote-consent {
  display: grid; grid-template-columns: var(--lqds-icon-size) minmax(0, 1fr);
  column-gap: var(--lqds-space-3); align-items: start;
}
body.lqds-ready .lqds-quote-consent > input { margin: var(--lqds-space-1) 0 0; }
.lqds-consent-copy { min-width: 0; line-height: var(--lqds-leading-body); word-break: keep-all; overflow-wrap: anywhere; }
.lqds-quote-followup { font: inherit; color: inherit; }
@media (forced-colors: active) {
  body.lqds-ready .lqds-native-select:not([multiple]):not([hidden]):not([aria-hidden="true"]):not([tabindex="-1"]),
  body.lqds-ready .lqe select:not([multiple]):not([hidden]):not([aria-hidden="true"]):not([tabindex="-1"]) {
    -webkit-appearance: auto; -moz-appearance: auto; appearance: auto; background-image: none;
  }
}

/* Requested date-input alignment; the calendar remains the browser's native control. */
body.lqds-ready form .lqds-native-date,
body.lqds-ready .lifeq-flow-page.lqu-application-compact form .lifeq-flow-customer .lqds-native-date {
  -webkit-appearance: none; appearance: none; display: block; box-sizing: border-box;
  min-width: 0; width: 100%; max-width: 100%;
  height: calc(var(--lqds-control-large) + var(--lqds-space-1)); min-height: calc(var(--lqds-control-large) + var(--lqds-space-1));
  font-family: var(--lqds-font-sans); font-size: var(--lqds-font-body); line-height: var(--lqds-leading-label);
  padding: var(--lqds-space-3) var(--lqds-space-4); margin: 0;
  border: var(--lqds-border-width) solid var(--lqds-color-border); border-radius: var(--lqds-radius-control);
  color: var(--lqds-color-ink); background-color: var(--lqds-color-surface);
}
.lqds-native-date::-webkit-datetime-edit { display: inline-flex; align-items: center; padding: 0; }
.lqds-native-date::-webkit-datetime-edit-fields-wrapper { padding: 0; }
.lqds-native-date::-webkit-date-and-time-value { min-height: var(--lqds-space-6); text-align: left; }
.lqds-native-date::-webkit-calendar-picker-indicator { margin: 0; padding: 0; width: var(--lqds-icon-size); height: var(--lqds-icon-size); cursor: pointer; }
/* Replace the oversized optional-checkbox fieldset with one compact action row. */
body.lqds-ready form .lifeq-flow-consult.lqds-service-add { display: block; border: 0; border-radius: 0; padding: 0; margin: var(--lqds-space-5) 0; background: transparent; min-width: 0; }
body.lqds-ready .lqds-service-add > label[hidden] { display: none; }
.lqds-service-add-row { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: var(--lqds-space-4); align-items: center; }
.lqds-service-add-copy { min-width: 0; }
.lqds-service-add-title { display: block; font-size: var(--lqds-font-body); line-height: var(--lqds-leading-label); font-weight: var(--lqds-weight-bold); }
.lqds-service-add-help, .lqds-previous-interest { margin: var(--lqds-space-1) 0 0; font-size: var(--lqds-font-label); color: var(--lqds-color-muted); line-height: var(--lqds-leading-label); }
body.lqds-ready .lqu-extra-chips.lqds-service-add-action { margin: 0; padding: 0; }
body.lqds-ready .lqu-chip.lqds-service-add-button { min-height: var(--lqds-control-large); padding: var(--lqds-space-3) var(--lqds-space-4); border: var(--lqds-border-width) solid var(--lqds-color-border); border-radius: var(--lqds-radius-control); background: var(--lqds-color-brand-soft); color: var(--lqds-color-brand); font-size: var(--lqds-font-label); font-weight: var(--lqds-weight-bold); white-space: nowrap; }
body.lqds-ready .lqu-add-dialog[open] { max-height: calc(100vh - var(--lqds-space-8)); max-height: calc(100dvh - var(--lqds-space-8)); }
body.lqds-ready .lqu-add-dialog[open] > .lqu-add-main { flex: 1 1 auto; min-height: 0; overflow-y: auto; }
@media (max-width: 600px) {
 .lqds-service-add-row { grid-template-columns: minmax(0,1fr); gap: var(--lqds-space-3); }
 body.lqds-ready .lqu-extra-chips.lqds-service-add-action { display: block; }
 body.lqds-ready .lqu-chip.lqds-service-add-button { width: 100%; }
}
@media (max-width: 700px) {
 body.lqds-ready .lqu-add-dialog[open] { height: 100vh; max-height: 100vh; height: 100dvh; max-height: 100dvh; }
 body.lqds-ready .lqu-add-footer { padding-bottom: calc(var(--lqds-space-4) + env(safe-area-inset-bottom,0px)); }
}
@media (min-width: 701px) {
 body.lqds-ready .lqu-add-dialog[open] { height: min(760px,calc(100vh - var(--lqds-space-8))); height: min(760px,calc(100dvh - var(--lqds-space-8))); }
}

/* Existing card and payout notices, grouped without changing their original conditions. */
body.lqds-ready .lqds-readable-notice {
  display: block; box-sizing: border-box; min-width: 0; max-width: 100%;
  margin: var(--lqds-space-3) 0; padding: var(--lqds-space-3) var(--lqds-space-4);
  border: 0; border-radius: var(--lqds-radius-small); background: var(--lqds-color-canvas);
  text-align: left; font-size: var(--lqds-font-label); line-height: var(--lqds-leading-body); color: var(--lqds-color-muted);
}
body.lqds-ready .lqds-notice-title { display: block; margin: 0 0 var(--lqds-space-2); color: var(--lqds-color-ink); font-size: var(--lqds-font-label); font-weight: var(--lqds-weight-bold); line-height: var(--lqds-leading-label); }
.lqds-notice-list { display: grid; gap: var(--lqds-space-3); }
.lqds-notice-item { display: grid; grid-template-columns: var(--lqds-space-1) minmax(0,1fr); column-gap: var(--lqds-space-2); row-gap: var(--lqds-space-1); min-width: 0; }
.lqds-notice-item::before { content: ''; grid-column: 1; grid-row: 1; margin-top: var(--lqds-space-2); width: var(--lqds-space-1); height: var(--lqds-space-1); border-radius: var(--lqds-radius-pill); background: var(--lqds-color-muted); }
body.lqds-ready .lqds-notice-key { grid-column: 2; display: block; color: var(--lqds-color-ink); font-size: var(--lqds-font-label); font-weight: var(--lqds-weight-semibold); line-height: var(--lqds-leading-label); }
body.lqds-ready .lqds-notice-value { grid-column: 2; display: block; min-width: 0; color: var(--lqds-color-muted); font-size: var(--lqds-font-label); line-height: var(--lqds-leading-body); word-break: keep-all; overflow-wrap: anywhere; }

/* Native details keeps its summary behavior. Equal desktop columns do not depend on experimental ::details-content. */
body.lqds-ready form.lifeq-consult-form .lqds-consult-extra > .lifeq-field { box-sizing:border-box; min-width:0; width:100%; }
body.lqds-ready form.lifeq-consult-form .lqds-consult-extra::after { content:''; display:block; clear:both; }
@media (min-width:768px) {
 body.lqds-ready form.lifeq-consult-form .lqds-consult-extra > .lifeq-field:nth-of-type(1),
 body.lqds-ready form.lifeq-consult-form .lqds-consult-extra > .lifeq-field:nth-of-type(2) { float:left; width:calc((100% - var(--lqds-space-5)) / 2); }
 body.lqds-ready form.lifeq-consult-form .lqds-consult-extra > .lifeq-field:nth-of-type(2) { margin-left:var(--lqds-space-5); }
 body.lqds-ready form.lifeq-consult-form .lqds-consult-extra > .lifeq-field:nth-of-type(3) { clear:both; width:100%; }
}
@media (max-width:767px) {
 body.lqds-ready form.lifeq-consult-form .lqds-consult-extra > .lifeq-field { float:none; width:100%; margin-left:0; }
}
