/*
Theme Name: Invest Informatics Blank
Theme URI: https://investinformatics.com
Author: Invest Informatics
Description: Zero-spacing blank block theme for Invest Informatics. No block gap, no root padding, no content-width constraint, no theme chrome. Every page renders its Custom HTML blocks edge to edge, with a global header and footer template part. Built as the foundation for Members Library V3. v1.0.1: the theme now owns the site-wide globals (house fonts, default body font, navy canvas, horizontal-scroll guard) on every template, including Blank Canvas. v1.0.2: style.css is now enqueued on the front end and carries the PMPro member-pages restyle, scoped entirely under .pmpro. v1.0.3: refinement pass — hairlines removed, widths condensed, light-blue link accent, brighter button press states, login hub styling. v1.0.4: widths tightened further (account page exempt), pill-highlight link hovers replace underlines, submit buttons covered directly with bright disabled states. v1.0.5: sticky footer — the page wrapper now flexes to full viewport height so the footer sits at the bottom of short pages; login redirect retargeted to the Log In hub. v1.0.6: administrators with no explicit redirect land in wp-admin; only members are sent to the hub. v1.0.7: the bespoke member dashboard — ii_dashboard shortcode, saved-notes REST endpoint, companies.json manifest reader, observatory backdrop on all member pages, transparent hero blocks, cancel-page button colours corrected. v1.0.8: Your Membership values and the signed-in strip set in Figtree natural case, matching the row labels.
Version: 1.0.8
Requires at least: 6.5
Tested up to: 7.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ii-blank
*/

/* Site-wide globals live in functions.php as an inline style. This file carries plugin-output styling only. Everything below is scoped to PMPro pages and touches nothing else. */

/* ii-pmpro start */

.pmpro,
.pmpro *,
.pmpro *::before,
.pmpro *::after {
  box-sizing: border-box;
}

.pmpro {
  max-width: 690px;
  margin-left: auto;
  margin-right: auto;
  padding: 8px 24px 64px;
  color: #c3cfe2;
  font-family: 'Figtree', system-ui, sans-serif;
  color-scheme: dark;
}

.pmpro:has(#loginform),
.pmpro:has(.pmpro_logged_in_welcome_wrap) {
  max-width: 450px;
}

body.pmpro-account .pmpro,
.pmpro:has([id^="pmpro_account"]),
.pmpro:has(.pmpro_heading-with-avatar) {
  max-width: 860px;
}

.pmpro:has(#loginform) {
  max-width: 450px !important;
}

body[class*="pmpro-"] .wp-block-post-title,
body[class*="pmpro-"] h1.entry-title,
body[class*="pmpro-"] .entry-header h1 {
  max-width: 690px;
  margin: 28px auto 18px;
  padding: 0 24px;
  font-family: 'EB Garamond', Georgia, serif;
  font-weight: 500;
  font-size: 28px;
  letter-spacing: 0.01em;
  color: #f2f6fc;
}

.pmpro a:not(.pmpro_btn) {
  color: #5fa8ff !important;
  text-decoration: none !important;
  padding: 2px 6px;
  margin: -2px -6px;
  border-radius: 6px;
  transition: background 0.15s ease, color 0.15s ease;
}

.pmpro a:not(.pmpro_btn):hover,
.pmpro a:not(.pmpro_btn):focus {
  color: #8cc3ff !important;
  background: #5fa8ff1f;
  text-decoration: none !important;
}

.pmpro_actions_nav {
  max-width: 860px;
  margin: 16px auto 0;
  padding: 0 24px;
}

.pmpro_actions_nav a {
  color: #5fa8ff !important;
  font-weight: 600;
  text-decoration: none !important;
  padding: 4px 8px;
  margin: -4px -8px;
  border-radius: 6px;
  transition: background 0.15s ease, color 0.15s ease;
}

.pmpro_actions_nav a:hover,
.pmpro_actions_nav a:focus {
  color: #8cc3ff !important;
  background: #5fa8ff1f;
  text-decoration: none !important;
}

.pmpro hr {
  display: none !important;
}

.pmpro fieldset,
.pmpro .pmpro_form_fieldset {
  border: 0 !important;
  padding: 0;
  margin: 0 0 18px;
}

.pmpro .pmpro_divider {
  display: none !important;
}

.pmpro .pmpro_section {
  background: transparent !important;
  border: 0 !important;
  margin-bottom: 28px;
}

.pmpro .pmpro_section_title {
  font-family: 'DM Mono', 'Roboto Mono', monospace;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  color: #8497b4 !important;
  background: transparent !important;
  border: 0 !important;
  margin-bottom: 12px;
}

.pmpro .pmpro_card {
  background: #081527 !important;
  border: 1px solid #ffffff14 !important;
  border-radius: 14px !important;
  box-shadow: 0 16px 40px #00000059 !important;
  color: #c3cfe2 !important;
  overflow: hidden;
}

.pmpro .pmpro_card_title {
  background: transparent !important;
  border: 0 !important;
  padding: 22px 24px 6px !important;
  margin: 0 !important;
  font-family: 'EB Garamond', Georgia, serif !important;
  font-weight: 500 !important;
  font-size: 22px !important;
  letter-spacing: 0.01em;
  color: #f2f6fc !important;
}

.pmpro .pmpro_card_content {
  padding: 14px 24px 20px !important;
  color: #c3cfe2 !important;
  border: 0 !important;
}

.pmpro .pmpro_card_content p:not(.pmpro_form_hint) {
  color: #c3cfe2 !important;
  line-height: 1.6;
}

.pmpro .pmpro_card_content strong {
  color: #f2f6fc;
}

.pmpro .pmpro_card_actions {
  padding: 0 24px 20px !important;
  background: transparent !important;
  border: 0 !important;
}

.pmpro .pmpro_card_action_separator {
  color: #8497b4;
}

.pmpro .pmpro_form_legend,
.pmpro .pmpro_form_heading {
  color: #f2f6fc !important;
  background: transparent !important;
  border: 0 !important;
  font-family: 'EB Garamond', Georgia, serif;
  font-weight: 500;
  font-size: 18px;
}

.pmpro .pmpro_form_label,
.pmpro .pmpro_form_label:not(.pmpro_form_label-inline) {
  color: #dce6f5 !important;
  font-family: 'Figtree', system-ui, sans-serif;
  font-weight: 600;
  font-size: 13.5px;
  letter-spacing: 0.01em;
}

.pmpro .pmpro_asterisk abbr,
.pmpro .pmpro_asterisk abbr[title] {
  color: #c8a84b;
  text-decoration: none;
  border: 0;
}

.pmpro .pmpro_form_hint {
  color: #8497b4 !important;
  font-size: 12.5px;
  line-height: 1.55;
}

.pmpro .pmpro_form_input,
.pmpro .pmpro_form_input-textarea,
.pmpro .pmpro_form_input-select,
.pmpro select,
.pmpro textarea,
.pmpro input[type="text"],
.pmpro input[type="email"],
.pmpro input[type="url"],
.pmpro input[type="password"],
.pmpro input[type="search"],
.pmpro input[type="number"],
.pmpro input[type="date"] {
  background: #050e1f !important;
  border: 1px solid #ffffff21 !important;
  border-radius: 8px !important;
  color: #f2f6fc !important;
  padding: 10px 12px !important;
  font-family: 'Figtree', system-ui, sans-serif !important;
  font-size: 15px;
  box-shadow: none !important;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.pmpro input::placeholder,
.pmpro textarea::placeholder {
  color: #8497b4 !important;
}

.pmpro .pmpro_form_input-text:focus,
.pmpro .pmpro_form_input-email:focus,
.pmpro .pmpro_form_input-url:focus,
.pmpro .pmpro_form_input-password:focus,
.pmpro .pmpro_form_input-search:focus,
.pmpro .pmpro_form_input-select:focus,
.pmpro .pmpro_form_input-multiselect:focus,
.pmpro .pmpro_form_input-number:focus,
.pmpro .pmpro_form_input-file:focus,
.pmpro .pmpro_form_input-date:focus,
.pmpro .pmpro_form_input-textarea:focus,
.pmpro select:focus,
.pmpro textarea:focus,
.pmpro input[type="text"]:focus,
.pmpro input[type="email"]:focus,
.pmpro input[type="password"]:focus {
  border-color: #5fa8ff !important;
  box-shadow: 0 0 0 3px #5fa8ff26 !important;
  outline: none !important;
}

.pmpro input:-webkit-autofill,
.pmpro input:-webkit-autofill:hover,
.pmpro input:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0 1000px #050e1f inset !important;
  -webkit-text-fill-color: #f2f6fc !important;
  caret-color: #f2f6fc;
}

.pmpro input[type="checkbox"],
.pmpro input[type="radio"] {
  accent-color: #5fa8ff;
  width: 16px;
  height: 16px;
}

.pmpro .pmpro_form_field-checkbox .pmpro_form_label,
.pmpro .pmpro_form_field-radio-item .pmpro_form_label {
  color: #dce6f5 !important;
  font-weight: 500;
  line-height: 1.6;
}

.pmpro .pmpro_form_field-checkbox .pmpro_form_hint,
.pmpro .pmpro_form_field-radio-item .pmpro_form_hint {
  color: #8497b4 !important;
}

.pmpro #pmpro_tos_fields {
  background: #c8a84b0f !important;
  border: 1px solid #c8a84b40 !important;
  border-radius: 10px !important;
  padding: 16px 18px !important;
}

.pmpro #pmpro_tos_fields .pmpro_form_label,
.pmpro #pmpro_tos_fields label {
  color: #ecdfb2 !important;
}

.pmpro #pmpro_tos_fields #pmpro_license {
  background: #050e1f !important;
  border: 1px solid #ffffff21 !important;
  color: #c3cfe2 !important;
}

.pmpro #pmpro_tos_fields input[type="checkbox"]#tos {
  accent-color: #c8a84b;
}

.pmpro .pmpro_form_field-password-toggle button,
.pmpro .pmpro_form_field-password-toggle button:hover,
.pmpro .pmpro_form_field-password-toggle button:focus,
.pmpro .pmpro_form_field-password-toggle button:active {
  background: transparent !important;
  border: 0 !important;
  color: #5fa8ff !important;
  font-family: 'DM Mono', 'Roboto Mono', monospace;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  box-shadow: none !important;
}

.pmpro .pmpro_form_field-password-toggle .pmpro_icon-eye {
  color: #5fa8ff;
}

.pmpro .pmpro_btn {
  display: inline-block;
  background: #00c2d4 !important;
  border: 1px solid #00c2d4 !important;
  border-radius: 8px !important;
  color: #04101f !important;
  font-family: 'Figtree', system-ui, sans-serif !important;
  font-weight: 700 !important;
  font-size: 14px;
  letter-spacing: 0.01em;
  padding: 10px 20px !important;
  text-decoration: none !important;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.pmpro .pmpro_btn:hover,
.pmpro .pmpro_btn:focus {
  background: #35d9e8 !important;
  border-color: #35d9e8 !important;
  color: #04101f !important;
}

.pmpro .pmpro_btn:active {
  background: #5ce4f0 !important;
  border-color: #5ce4f0 !important;
  color: #04101f !important;
}

.pmpro input[type="submit"],
.pmpro button[type="submit"],
.pmpro #wp-submit {
  display: inline-block;
  background: #00c2d4 !important;
  border: 1px solid #00c2d4 !important;
  border-radius: 8px !important;
  color: #04101f !important;
  font-family: 'Figtree', system-ui, sans-serif !important;
  font-weight: 700 !important;
  font-size: 14px;
  letter-spacing: 0.01em;
  padding: 10px 20px !important;
  cursor: pointer;
  opacity: 1 !important;
  transition: background 0.15s ease, border-color 0.15s ease;
}

.pmpro input[type="submit"]:hover,
.pmpro button[type="submit"]:hover,
.pmpro #wp-submit:hover,
.pmpro input[type="submit"]:focus,
.pmpro button[type="submit"]:focus,
.pmpro #wp-submit:focus {
  background: #35d9e8 !important;
  border-color: #35d9e8 !important;
  color: #04101f !important;
}

.pmpro input[type="submit"]:active,
.pmpro button[type="submit"]:active,
.pmpro #wp-submit:active {
  background: #5ce4f0 !important;
  border-color: #5ce4f0 !important;
  color: #04101f !important;
}

.pmpro input[type="submit"]:disabled,
.pmpro button[type="submit"]:disabled,
.pmpro #wp-submit:disabled,
.pmpro .pmpro_btn:disabled,
.pmpro .pmpro_btn[disabled],
.pmpro .pmpro_btn[aria-disabled="true"] {
  background: #35d9e8 !important;
  border-color: #35d9e8 !important;
  color: #04101f !important;
  opacity: 1 !important;
}

.pmpro .pmpro_btn-outline {
  background: transparent !important;
  border: 1px solid #ffffff40 !important;
  color: #f2f6fc !important;
}

.pmpro .pmpro_btn-outline:hover,
.pmpro .pmpro_btn-outline:focus {
  background: #5fa8ff14 !important;
  border-color: #5fa8ff !important;
  color: #8cc3ff !important;
}

.pmpro .pmpro_btn-outline:active {
  background: #5fa8ff29 !important;
  border-color: #8cc3ff !important;
  color: #b8d9ff !important;
}

.pmpro .pmpro_btn-cancel {
  background: transparent !important;
  border: 1px solid #ffffff33 !important;
  color: #c3cfe2 !important;
  font-weight: 600 !important;
}

.pmpro .pmpro_btn-cancel:hover,
.pmpro .pmpro_btn-cancel:focus {
  border-color: #ff7b7b !important;
  color: #ff9d9d !important;
  background: #e0525214 !important;
}

.pmpro .pmpro_btn-cancel:active {
  background: #e0525229 !important;
  color: #ffb8b8 !important;
}

.pmpro .pmpro_btn-delete {
  background: transparent !important;
  border: 1px solid #e0525259 !important;
  color: #ff9d9d !important;
}

.pmpro .pmpro_btn-delete:hover,
.pmpro .pmpro_btn-delete:focus {
  background: #e0525221 !important;
  border-color: #e05252 !important;
  color: #ffb8b8 !important;
}

.pmpro .pmpro_btn-plain,
.pmpro .pmpro_btn-plain:hover,
.pmpro .pmpro_btn-plain:focus,
.pmpro .pmpro_btn-plain:active {
  background: transparent !important;
  border: 0 !important;
  color: #5fa8ff !important;
  font-weight: 600 !important;
  padding: 0 !important;
}

.pmpro .pmpro_btn-print {
  background: transparent !important;
  border: 1px solid #ffffff33 !important;
  color: #c3cfe2 !important;
  font-weight: 600 !important;
}

.pmpro .pmpro_btn-print:hover {
  border-color: #5fa8ff !important;
  color: #8cc3ff !important;
}

.pmpro button[type="button"]#other_discount_code_toggle,
.pmpro button[type="button"]#other_discount_code_toggle:hover,
.pmpro button[type="button"]#other_discount_code_toggle:focus {
  background: transparent !important;
  border: 0 !important;
  color: #5fa8ff !important;
  font-weight: 600;
  cursor: pointer;
}

.pmpro .pmpro_message {
  border-radius: 10px !important;
  border: 1px solid #ffffff21 !important;
  background: #081527 !important;
  color: #c3cfe2 !important;
  padding: 13px 16px !important;
  line-height: 1.6;
}

.pmpro .pmpro_message.pmpro_success {
  background: #2fbf6b14 !important;
  border-color: #2fbf6b40 !important;
  color: #7fe6a8 !important;
}

.pmpro .pmpro_message.pmpro_error {
  background: #e0525214 !important;
  border-color: #e0525240 !important;
  color: #ff9d9d !important;
}

.pmpro .pmpro_message.pmpro_alert {
  background: #c8a84b14 !important;
  border-color: #c8a84b40 !important;
  color: #ecdfb2 !important;
}

.pmpro .pmpro_message a {
  color: inherit !important;
  text-decoration: none !important;
  padding: 2px 6px;
  margin: -2px -6px;
  border-radius: 6px;
}

.pmpro .pmpro_message a:hover,
.pmpro .pmpro_message a:focus {
  background: #ffffff14;
}

.pmpro .pmpro_table,
.pmpro .pmpro_levels_table {
  width: 100%;
  border-collapse: collapse;
  background: transparent !important;
  border: 0 !important;
}

.pmpro .pmpro_table th,
.pmpro .pmpro_levels_table th {
  background: transparent !important;
  border: 0 !important;
  padding: 8px 14px !important;
  text-align: left;
  font-family: 'DM Mono', 'Roboto Mono', monospace !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  color: #8497b4 !important;
}

.pmpro .pmpro_table td,
.pmpro .pmpro_levels_table td {
  background: transparent !important;
  border: 0 !important;
  padding: 13px 14px !important;
  color: #c3cfe2 !important;
  vertical-align: middle;
  font-size: 14.5px;
}

.pmpro .pmpro_levels_table td:first-child,
.pmpro .pmpro_levels_table td:first-child * {
  font-family: 'EB Garamond', Georgia, serif !important;
  font-weight: 500 !important;
  font-size: 19px !important;
  letter-spacing: 0.01em !important;
  text-transform: none !important;
  color: #f2f6fc !important;
}

.pmpro .pmpro_table td:first-child:not(:has(a)),
.pmpro .pmpro_table td:first-child:not(:has(a)) * {
  font-family: 'EB Garamond', Georgia, serif !important;
  font-weight: 500 !important;
  font-size: 16px !important;
  letter-spacing: 0.01em !important;
  text-transform: none !important;
  color: #f2f6fc !important;
}

.pmpro .pmpro_level .pmpro_btn {
  min-width: 160px;
  text-align: center;
}

.pmpro .pmpro_tag {
  display: inline-block;
  font-family: 'DM Mono', 'Roboto Mono', monospace !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  border-radius: 999px !important;
  padding: 4px 12px !important;
  background: #ffffff0f !important;
  border: 1px solid #ffffff21 !important;
  color: #c3cfe2 !important;
}

.pmpro .pmpro_tag-success {
  background: #2fbf6b1a !important;
  border-color: #2fbf6b40 !important;
  color: #7fe6a8 !important;
}

.pmpro .pmpro_tag-error {
  background: #e052521a !important;
  border-color: #e0525240 !important;
  color: #ff9d9d !important;
}

.pmpro .pmpro_tag-alert,
.pmpro .pmpro_tag-discount-code {
  background: #c8a84b1a !important;
  border-color: #c8a84b40 !important;
  color: #ecdfb2 !important;
}

.pmpro .pmpro_list_item_label,
.pmpro .pmpro_list-with-labels .pmpro_list_item_label {
  font-family: 'DM Mono', 'Roboto Mono', monospace !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  color: #8497b4 !important;
}

.pmpro .pmpro_list-with-labels .pmpro_list_item_value {
  color: #f2f6fc !important;
  font-size: 14.5px;
}

.pmpro .pmpro_invoice_details .pmpro_invoice-billing-address {
  color: #c3cfe2 !important;
  line-height: 1.6;
}

.pmpro .pmpro_price_part_span {
  font-family: 'DM Mono', 'Roboto Mono', monospace;
  color: #f2f6fc !important;
}

.pmpro .pmpro_price_part-total {
  font-family: 'DM Mono', 'Roboto Mono', monospace !important;
  font-weight: 500 !important;
  font-size: 17px !important;
  color: #c8a84b !important;
  border: 0 !important;
  padding-top: 8px;
}

.pmpro #pmpro_account-links a {
  font-weight: 600;
}

.pmpro .pmpro_logged_in_welcome_wrap {
  text-align: center;
}

.pmpro .pmpro_logged_in_welcome_wrap h2,
.pmpro .pmpro_logged_in_welcome_wrap h3 {
  font-family: 'EB Garamond', Georgia, serif;
  font-weight: 500;
  color: #f2f6fc;
  margin-bottom: 6px;
}

.pmpro .pmpro_logged_in_welcome_wrap h2 a,
.pmpro .pmpro_logged_in_welcome_wrap h3 a {
  display: inline !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  font-family: 'EB Garamond', Georgia, serif !important;
  font-weight: 500 !important;
  font-size: inherit !important;
  color: #8cc3ff !important;
}

.pmpro .pmpro_logged_in_welcome_wrap ul {
  list-style: none;
  margin: 14px 0 0;
  padding: 0;
}

.pmpro .pmpro_logged_in_welcome_wrap li {
  margin: 0;
  padding: 0;
}

.pmpro .pmpro_logged_in_welcome_wrap a {
  display: block;
  max-width: 300px;
  margin: 8px auto;
  padding: 10px 16px;
  border-radius: 8px;
  background: #ffffff0a;
  color: #8cc3ff !important;
  font-weight: 600;
  font-size: 14.5px;
  text-decoration: none !important;
  transition: background 0.15s ease, color 0.15s ease;
}

.pmpro .pmpro_logged_in_welcome_wrap a:hover,
.pmpro .pmpro_logged_in_welcome_wrap a:focus {
  background: #5fa8ff1f;
  color: #b8d9ff !important;
  text-decoration: none !important;
}

.pmpro .pmpro_content_message {
  color: #c3cfe2;
}

.pmpro .pmpro_captcha div {
  margin: 0 auto;
}

@media (max-width: 700px) {
  .pmpro {
    padding: 4px 16px 48px;
  }

  body[class*="pmpro-"] .wp-block-post-title,
  body[class*="pmpro-"] h1.entry-title,
  body[class*="pmpro-"] .entry-header h1 {
    font-size: 24px;
    margin: 20px auto 14px;
    padding: 0 16px;
  }

  .pmpro .pmpro_card_title {
    padding: 18px 18px 4px !important;
    font-size: 20px !important;
  }

  .pmpro .pmpro_card_content {
    padding: 12px 18px 18px !important;
  }

  .pmpro .pmpro_card_actions {
    padding: 0 18px 18px !important;
  }

  .pmpro .pmpro_table th,
  .pmpro .pmpro_levels_table th {
    padding: 8px 8px !important;
    font-size: 10px !important;
    letter-spacing: 1.2px;
  }

  .pmpro .pmpro_table td,
  .pmpro .pmpro_levels_table td {
    padding: 11px 8px !important;
    font-size: 13.5px;
  }

  .pmpro .pmpro_levels_table td:first-child,
  .pmpro .pmpro_levels_table td:first-child * {
    font-size: 17px !important;
  }

  .pmpro .pmpro_level .pmpro_btn {
    min-width: 0;
    width: 100%;
  }

  .pmpro .pmpro_btn {
    padding: 10px 16px !important;
  }

  .pmpro .pmpro_actions_nav {
    padding: 0 16px;
  }
}

/* ii-pmpro end */

/* ii-observatory: v1.0.7 — the member-pages backdrop.
   Every page carrying the PMPro wrapper or the dashboard gets the
   observatory field: deep base, twin radial glows, fixed starfield.
   Hero blocks go transparent so the backdrop runs uninterrupted. */

html:has(.pmpro),
html:has(.ii-dash) {
  background: #02091a;
}

body:has(.pmpro),
body:has(.ii-dash) {
  background:
    radial-gradient(ellipse 70% 50% at 50% 0%, rgba(59, 143, 255, 0.14) 0%, rgba(2, 9, 26, 0) 60%),
    radial-gradient(ellipse 60% 40% at 50% 100%, rgba(0, 194, 212, 0.08) 0%, rgba(2, 9, 26, 0) 60%),
    #02091a;
}

body:has(.pmpro)::before,
body:has(.ii-dash)::before {
  content: '';
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: 0.6;
  background-image:
    radial-gradient(circle at 12% 18%, rgba(59, 143, 255, 0.45) 0%, transparent 1px),
    radial-gradient(circle at 28% 62%, rgba(255, 255, 255, 0.30) 0%, transparent 1px),
    radial-gradient(circle at 50% 28%, rgba(0, 194, 212, 0.35) 0%, transparent 1px),
    radial-gradient(circle at 70% 78%, rgba(255, 255, 255, 0.25) 0%, transparent 1px),
    radial-gradient(circle at 86% 22%, rgba(59, 143, 255, 0.4) 0%, transparent 1px),
    radial-gradient(circle at 18% 88%, rgba(255, 255, 255, 0.25) 0%, transparent 1px),
    radial-gradient(circle at 92% 65%, rgba(59, 143, 255, 0.35) 0%, transparent 1px),
    radial-gradient(circle at 40% 92%, rgba(255, 255, 255, 0.2) 0%, transparent 1px),
    radial-gradient(circle at 62% 8%, rgba(59, 143, 255, 0.3) 0%, transparent 1px);
}

.ii-mhero, .ii-cohero, .ii-lhero, .ii-ohero,
.ii-vhero, .ii-phero, .ii-cfhero, .ii-bhero {
  background: transparent !important;
}

/* Cancel page: the confirm pair renders reversed out of the box —
   the destructive Yes as the bright primary, the safe No in red.
   The Yes link is the only pmpro_btn carrying both levelstocancel
   and confirm in its href; restyle it as the quiet red-leaning
   action, and its sibling No as the reassuring primary. */

.pmpro a.pmpro_btn[href*="levelstocancel"][href*="confirm"] {
  background: transparent !important;
  border: 1px solid #e0525259 !important;
  color: #ff9d9d !important;
  font-weight: 600 !important;
}

.pmpro a.pmpro_btn[href*="levelstocancel"][href*="confirm"]:hover,
.pmpro a.pmpro_btn[href*="levelstocancel"][href*="confirm"]:focus {
  background: #e0525221 !important;
  border-color: #e05252 !important;
  color: #ffb8b8 !important;
}

.pmpro *:has(> a.pmpro_btn[href*="levelstocancel"][href*="confirm"]) a.pmpro_btn-cancel {
  background: #00c2d4 !important;
  border: 1px solid #00c2d4 !important;
  color: #04101f !important;
  font-weight: 700 !important;
}

.pmpro *:has(> a.pmpro_btn[href*="levelstocancel"][href*="confirm"]) a.pmpro_btn-cancel:hover,
.pmpro *:has(> a.pmpro_btn[href*="levelstocancel"][href*="confirm"]) a.pmpro_btn-cancel:focus {
  background: #35d9e8 !important;
  border-color: #35d9e8 !important;
  color: #04101f !important;
}

/* ii-dash: the member dashboard rendered by the ii_dashboard shortcode. */

.ii-dash,
.ii-dash *,
.ii-dash *::before,
.ii-dash *::after {
  box-sizing: border-box;
}

.ii-dash {
  color: #d7dfeb;
  font-family: 'Figtree', system-ui, sans-serif;
  padding: 48px 24px 64px;
}

.ii-dash-wrap {
  max-width: 860px;
  margin: 0 auto;
}

.ii-dash-btn {
  display: inline-block;
  text-decoration: none;
  white-space: nowrap;
  font-family: 'Figtree', system-ui, sans-serif;
  font-size: 13px;
  font-weight: 600;
  color: #8cc2ff;
  border: 1px solid rgba(95, 168, 255, 0.45);
  border-radius: 999px;
  padding: 7px 17px;
  background: transparent;
  cursor: pointer;
  transition: border-color 0.16s ease, color 0.16s ease, background 0.16s ease;
}

.ii-dash-btn:hover,
.ii-dash-btn:focus {
  border-color: #5fa8ff;
  color: #ffffff;
  background: rgba(95, 168, 255, 0.08);
}

.ii-dash-btn-sm { font-size: 12px; padding: 5px 13px; }

.ii-dash-btn-quiet { border-color: rgba(138, 148, 168, 0.35); color: #8a94a8; }
.ii-dash-btn-quiet:hover, .ii-dash-btn-quiet:focus { border-color: rgba(138, 148, 168, 0.6); color: #d7dfeb; background: rgba(138, 148, 168, 0.07); }

.ii-dash-btn-warn { border-color: rgba(138, 148, 168, 0.35); color: #8a94a8; }
.ii-dash-btn-warn:hover, .ii-dash-btn-warn:focus { border-color: rgba(226, 104, 122, 0.6); color: #e2687a; background: rgba(226, 104, 122, 0.06); }

.ii-dash-mast { display: flex; align-items: center; gap: 28px; flex-wrap: wrap; }
.ii-dash-ident { flex: 1; min-width: 260px; }

.ii-dash-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  font-family: 'DM Mono', 'Roboto Mono', monospace;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #5fa8ff;
  margin: 0 0 10px;
}

.ii-dash-dot {
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: #00c2d4;
  animation: ii-dash-pulse 2.4s ease-in-out infinite;
}

@keyframes ii-dash-pulse {
  0% { box-shadow: 0 0 0 0 rgba(0, 194, 212, 0.4); }
  70% { box-shadow: 0 0 0 9px rgba(0, 194, 212, 0); }
  100% { box-shadow: 0 0 0 0 rgba(0, 194, 212, 0); }
}

.ii-dash-name {
  margin: 0;
  font-family: 'EB Garamond', Georgia, serif;
  font-weight: 600;
  font-size: 40px;
  line-height: 1.08;
  color: #ffffff;
}

.ii-dash-chips { display: flex; gap: 8px; margin-top: 12px; flex-wrap: wrap; }

.ii-dash-chip {
  font-family: 'DM Mono', 'Roboto Mono', monospace;
  font-size: 11px;
  letter-spacing: 1px;
  padding: 4px 11px;
  border: 1px solid #1e2c47;
  border-radius: 999px;
  color: #d7dfeb;
}

.ii-dash-chip-gold { border-color: #c8a84b; color: #c8a84b; }
.ii-dash-chip-cyan { border-color: rgba(0, 194, 212, 0.55); color: #00c2d4; }
.ii-dash-chip-pos { border-color: rgba(62, 207, 142, 0.5); color: #3ecf8e; }

.ii-dash-plaque { background: #ffffff; padding: 10px 12px; display: block; }
.ii-dash-plaque svg { display: block; width: 76px; height: auto; }

.ii-dash-panel {
  background: #08132a;
  border: 1px solid #17243d;
  border-radius: 8px;
  padding: 18px 22px 16px;
  margin-top: 26px;
}

.ii-dash-panel-t {
  font-family: 'EB Garamond', Georgia, serif;
  font-size: 21px;
  font-weight: 500;
  color: #ffffff;
  margin: 0 0 6px;
}

.ii-dash-empty { margin: 4px 0 6px; font-size: 14px; line-height: 1.6; color: #8a94a8; }

.ii-dash-lrow { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; padding: 7px 0; }
.ii-dash-lrow .l { font-size: 13.5px; color: #8a94a8; }
.ii-dash-lrow .v { font-family: 'Figtree', system-ui, sans-serif; font-weight: 600; font-size: 13px; color: #ffffff; text-align: right; }
.ii-dash-lrow .v.up { color: #3ecf8e; }
.ii-dash-lrow .v.au { color: #c8a84b; }
.ii-dash-lrow .v.cy { color: #00c2d4; }

.ii-dash-acts { margin-top: 12px; display: flex; flex-wrap: wrap; gap: 8px; }

.ii-dash-id { margin-top: 16px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 20px; }
.ii-dash-id-l { font-family: 'Figtree', system-ui, sans-serif; font-size: 12.5px; color: #8a94a8; }
.ii-dash-id-l b { display: block; font-weight: 600; font-size: 13.5px; color: #d7dfeb; margin-bottom: 2px; }
.ii-dash-id-r { display: flex; gap: 8px; flex-wrap: wrap; }

.ii-dash-tbl, .ii-dash-otbl { width: 100%; border-collapse: collapse; margin-top: 2px; }

.ii-dash-tbl th, .ii-dash-otbl th {
  font-family: 'DM Mono', 'Roboto Mono', monospace;
  font-size: 9.5px;
  font-weight: 500;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  color: #8a94a8;
  text-align: left;
  padding: 7px 10px;
  border: 0;
}

.ii-dash-tbl th.r, .ii-dash-tbl td.r,
.ii-dash-otbl th.r, .ii-dash-otbl td.r { text-align: right; }

.ii-dash-tbl td { padding: 10px; border: 0; vertical-align: middle; }
.ii-dash-otbl td { padding: 9px 10px; border: 0; }

.ii-dash-tbl tbody tr, .ii-dash-otbl tbody tr { transition: background 0.15s ease; }
.ii-dash-tbl tbody tr { cursor: pointer; }
.ii-dash-tbl tbody tr:hover { background: rgba(95, 168, 255, 0.06); }
.ii-dash-otbl tbody tr:hover { background: rgba(95, 168, 255, 0.05); }

.ii-dash-tk {
  display: inline-block;
  min-width: 70px;
  text-align: center;
  font-family: 'DM Mono', 'Roboto Mono', monospace;
  font-size: 11px;
  letter-spacing: 1px;
  padding: 4px 8px;
  border: 1px solid #1e2c47;
  border-radius: 999px;
  color: #d7dfeb;
}

.ii-dash-tk-vc { border-color: rgba(200, 168, 75, 0.55); color: #c8a84b; }

.ii-dash-co { font-size: 14.5px; font-weight: 500; color: #ffffff; }
.ii-dash-co small { display: block; font-weight: 400; font-size: 11.5px; color: #8a94a8; margin-top: 2px; }

.ii-dash-earn { font-family: 'DM Mono', 'Roboto Mono', monospace; font-size: 12px; white-space: nowrap; color: #d7dfeb; }
.ii-dash-earn small { display: block; font-size: 9.5px; letter-spacing: 1.2px; margin-top: 2px; }
.ii-dash-earn small.beat { color: #3ecf8e; }
.ii-dash-earn small.due { color: #c8a84b; }

.ii-dash-pc { font-family: 'DM Mono', 'Roboto Mono', monospace; font-size: 12.5px; white-space: nowrap; }
.ii-dash-pc.up { color: #3ecf8e; }
.ii-dash-pc.dn { color: #e2687a; }

.ii-dash-spark svg { display: block; width: 104px; height: 28px; margin-left: auto; }
.ii-dash-spark .sl-line { fill: none; stroke: #3ecf8e; stroke-width: 1.6; }
.ii-dash-spark .sl-fill { fill: rgba(62, 207, 142, 0.09); stroke: none; }
.ii-dash-spark.neg .sl-line { stroke: #e2687a; }
.ii-dash-spark.neg .sl-fill { fill: rgba(226, 104, 122, 0.09); }

.ii-dash-unpin {
  width: 26px;
  height: 26px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  margin-left: auto;
  border: 0;
  background: transparent;
  cursor: pointer;
  transition: background 0.15s ease;
}

.ii-dash-unpin svg { width: 13px; height: 13px; fill: #c8a84b; }
.ii-dash-tbl tr:hover .ii-dash-unpin { background: rgba(200, 168, 75, 0.14); }

.ii-dash-hz { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 8px; padding-bottom: 4px; }

.ii-dash-hz a {
  display: inline-flex;
  align-items: baseline;
  gap: 10px;
  text-decoration: none;
  border: 1px solid #1e2c47;
  border-radius: 999px;
  padding: 7px 15px;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.ii-dash-hz a:hover { border-color: rgba(95, 168, 255, 0.45); background: rgba(95, 168, 255, 0.06); }
.ii-dash-hz a.saved { border-color: rgba(200, 168, 75, 0.5); }
.ii-dash-hz .tk { font-family: 'DM Mono', 'Roboto Mono', monospace; font-size: 11.5px; letter-spacing: 1px; color: #ffffff; }
.ii-dash-hz .dt { font-family: 'DM Mono', 'Roboto Mono', monospace; font-size: 11px; color: #8a94a8; }
.ii-dash-hz .in { font-family: 'DM Mono', 'Roboto Mono', monospace; font-size: 10px; letter-spacing: 0.8px; color: #c8a84b; }

.ii-dash-od { font-family: 'DM Mono', 'Roboto Mono', monospace; font-size: 11.5px; color: #5fa8ff; white-space: nowrap; }
.ii-dash-oi { font-size: 13.5px; color: #d7dfeb; }
.ii-dash-ot { font-family: 'DM Mono', 'Roboto Mono', monospace; font-size: 12px; color: #ffffff; white-space: nowrap; }

.ii-dash-paid {
  font-family: 'DM Mono', 'Roboto Mono', monospace;
  font-size: 9.5px;
  letter-spacing: 1.4px;
  padding: 4px 11px;
  border: 1px solid rgba(62, 207, 142, 0.5);
  border-radius: 999px;
  color: #3ecf8e;
}

@media (max-width: 700px) {
  .ii-dash { padding: 30px 14px 48px; }
  .ii-dash-name { font-size: 29px; }
  .ii-dash-panel { padding: 16px 14px 12px; margin-top: 20px; }
  .ii-dash-tbl .th-spark, .ii-dash-tbl .td-spark, .ii-dash-co small { display: none; }
  .ii-dash-plaque svg { width: 62px; }
}

@media (prefers-reduced-motion: reduce) {
  .ii-dash-dot { animation: none; }
}

/* ii-dash end */
