/* FluentCRM public pages (unsubscribe, preferences, link request, invalid DOI link) in the site look.
   Printed by includes/planner-mail/i18n-fluentcrm.php after FluentCRM's public_pref.css. Values = design system v1.1
   (tokens.css is not loaded on these bare pages, so the hex fallbacks are the real values). Own prefix: lmus-fcp. */
body.fc_unsub,
body:has(> .fluentcrm_unsubscribe_wrapper) {
  --_ink: #011E2C; --_navy: #023047; --_muted: #4D5D68; --_line: #D3DCE2; --_bg: #F5F7F9; --_cool: #E6F6FE;
  --_cta: #BA4021; --_cta-hover: #9A3418; --_ok: #1F7A4D; --_ok-bg: #E8F5EE; --_err: #B42318; --_err-bg: #FEF3F2;
  margin: 0;
  background: var(--_bg) !important;
  color: var(--_navy);
  font-family: Montserrat, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}
.fluentcrm_unsubscribe_wrapper {
  box-sizing: border-box;
  max-width: 560px;
  margin: 0 auto;
  padding: 56px 16px 0;
}
.fluentcrm_unsubscribe_wrapper *, .fluentcrm_unsubscribe_wrapper *::before, .fluentcrm_unsubscribe_wrapper *::after { box-sizing: border-box; }
.fluentcrm_unsubscribe_wrapper .fluentcrm_un_title { margin-bottom: 24px; text-align: center; }
.fluentcrm_unsubscribe_wrapper .fluentcrm_un_title img { display: block; width: 220px; max-width: 70%; height: auto; max-height: none; margin: 0 auto; }
.fluentcrm_unsubscribe_wrapper .fluentcrm_un_title h3 { font-size: 1.125rem; font-weight: 800; color: var(--_ink); }
.fluentcrm_unsubscribe_wrapper .fluentcrm_un_form_wrapper {
  padding: 32px;
  background: #fff;
  border: 1px solid var(--_line);
  border-radius: 20px;
  box-shadow: 0 4px 16px rgb(1 30 44 / .08);
  color: var(--_navy);
  font-size: 1rem;
  line-height: 1.5;
}
.fluentcrm_unsubscribe_wrapper .fluentcrm_un_form_wrapper h3,
.fluentcrm_unsubscribe_wrapper .fluentcrm_un_form_wrapper h4 {
  margin: 0 0 8px;
  color: var(--_ink);
  font-size: 1.625rem;
  line-height: 1.25;
  font-weight: 800;
  letter-spacing: -.01em;
}
.fluentcrm_unsubscribe_wrapper .fluentcrm_un_form_wrapper p { margin: 0 0 20px; color: var(--_muted); }
.fluentcrm_unsubscribe_wrapper .fluentcrm_un_form_wrapper a { color: var(--_navy); font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }

/* Fields */
.fluentcrm_unsubscribe_wrapper .fluentcrm_form_item { margin-bottom: 20px; }
.fluentcrm_unsubscribe_wrapper .fluentcrm_form_item > label,
.fluentcrm_unsubscribe_wrapper form.fc_public_form .fc_field > label {
  display: block;
  margin-bottom: 8px;
  color: var(--_ink);
  font-size: .9375rem;
  font-weight: 700;
  line-height: 1.3;
  opacity: 1;
}
.fluentcrm_unsubscribe_wrapper .fluentcrm_form_control,
.fluentcrm_unsubscribe_wrapper form.fc_public_form .fc_field .fc_input_control {
  display: block;
  width: 100%;
  min-height: 48px;
  margin: 0;
  padding: 10px 14px;
  background: #fff;
  border: 1px solid var(--_line);
  border-radius: 10px;
  color: var(--_ink);
  font: inherit;
  font-size: 1rem;
}
.fluentcrm_unsubscribe_wrapper .fluentcrm_form_control:read-only,
.fluentcrm_unsubscribe_wrapper form.fc_public_form .fc_field .fc_input_control:read-only { background: var(--_bg); color: var(--_muted); cursor: default; }
.fluentcrm_unsubscribe_wrapper .fluentcrm_form_control:focus,
.fluentcrm_unsubscribe_wrapper form.fc_public_form .fc_field .fc_input_control:focus { border-color: var(--_navy) !important; outline: 3px solid rgb(2 48 71 / .18); outline-offset: 0; }
.fluentcrm_unsubscribe_wrapper form.fc_public_form .fc_field { margin-bottom: 20px; overflow: visible; }

/* Reasons (radio) and list checkboxes */
.fluentcrm_unsubscribe_wrapper .fluentcrm_radio_group { display: grid; gap: 8px; }
.fluentcrm_unsubscribe_wrapper .fluentcrm_radio_group > label,
.fluentcrm_unsubscribe_wrapper .fc_list_items {
  display: flex;
  gap: 10px;
  align-items: center;
  padding: 10px 14px;
  border: 1px solid var(--_line);
  border-radius: 10px;
  color: var(--_navy);
  font-size: .9375rem;
  font-weight: 500;
  line-height: 1.35;
  cursor: pointer;
}
.fluentcrm_unsubscribe_wrapper .fluentcrm_radio_group > label:has(input:checked),
.fluentcrm_unsubscribe_wrapper .fc_list_items:has(input:checked) { border-color: var(--_navy); background: var(--_cool); }
.fluentcrm_unsubscribe_wrapper input[type=radio],
.fluentcrm_unsubscribe_wrapper input[type=checkbox] { flex: none; width: 18px; height: 18px; margin: 0; accent-color: var(--_navy); }
.fluentcrm_unsubscribe_wrapper h4.mainling_list_group_title { margin: 8px 0 10px; font-size: 1rem; }

/* Submit = the one CTA (brick) */
.fluentcrm_unsubscribe_wrapper #fluentcrm_unsubscribe_submit,
.fluentcrm_unsubscribe_wrapper form.fc_public_form #fluentcrm_preferences_submit,
.fluentcrm_unsubscribe_wrapper input[type=submit] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 52px;
  margin: 4px 0 0;
  padding: 12px 24px;
  background: var(--_cta);
  border: 0;
  border-radius: 999px;
  line-height: 1.2;
  color: #fff;
  font: inherit;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: .01em;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  transition: background-color .15s ease;
}
.fluentcrm_unsubscribe_wrapper input[type=submit]:hover,
.fluentcrm_unsubscribe_wrapper form.fc_public_form #fluentcrm_preferences_submit:hover { background: var(--_cta-hover); }
.fluentcrm_unsubscribe_wrapper input[type=submit]:focus-visible { outline: 3px solid rgb(186 64 33 / .35); outline-offset: 2px; }
.fluentcrm_unsubscribe_wrapper input[type=submit]:disabled { opacity: .6; cursor: wait; }

/* Responses */
.fluentcrm_unsubscribe_wrapper .fluentcrm_form_responses:empty { display: none; }
.fluentcrm_unsubscribe_wrapper .fluentcrm_form_responses { margin-top: 16px; }
.fluentcrm_unsubscribe_wrapper .fluentcrm_success,
.fluentcrm_unsubscribe_wrapper .fluentcrm_form_responses > *:not(.fluentcrm_error) {
  margin: 0;
  padding: 14px 16px;
  background: var(--_ok-bg);
  border: 1px solid rgb(31 122 77 / .25);
  border-radius: 12px;
  color: var(--_ok);
  font-size: 1rem;
  font-weight: 600;
  text-align: left;
}
.fluentcrm_unsubscribe_wrapper .fluentcrm_error {
  padding: 14px 16px;
  background: var(--_err-bg);
  border: 1px solid rgb(180 35 24 / .25);
  border-radius: 12px;
  color: var(--_err);
  font-weight: 600;
}

/* Back link (printed in the footer hooks) */
.lmus-fcp-back { max-width: 560px; margin: 20px auto 56px; padding: 0 16px; text-align: center; font-size: .9375rem; }
.lmus-fcp-back a { color: var(--_navy, #023047); font-weight: 600; text-decoration: none; }
.lmus-fcp-back a:hover { text-decoration: underline; }

@media (max-width: 600px) {
  .fluentcrm_unsubscribe_wrapper { padding-top: 32px; }
  .fluentcrm_unsubscribe_wrapper .fluentcrm_un_form_wrapper { padding: 24px 20px; border-radius: 16px; }
  .fluentcrm_unsubscribe_wrapper .fluentcrm_un_form_wrapper h3,
  .fluentcrm_unsubscribe_wrapper .fluentcrm_un_form_wrapper h4 { font-size: 1.375rem; }
}
