/* Passion Profile app-specific compatibility styles extracted from the proven single-file version. */

    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
      min-height: 100vh;
      font-family: Arial, Helvetica, sans-serif;
      color: #ffffff;
      background:
        radial-gradient(circle at 15% 15%, rgba(226, 52, 91, 0.16), transparent 34%),
        radial-gradient(circle at 85% 80%, rgba(56, 85, 255, 0.18), transparent 38%),
        radial-gradient(circle at 55% 45%, rgba(145, 61, 255, 0.1), transparent 42%),
        #09090c;
      padding: 0;
    }
    button, input, textarea { font: inherit; }
    button { cursor: pointer; }
    .screen { display: none; width: 100%; }
    .screen.active { display: block; }
    .welcome-wrap {
      min-height: calc(100vh - 64px);
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .card, .panel {
      width: 100%;
      background: rgba(18, 18, 24, 0.88);
      border: 1px solid rgba(255, 255, 255, 0.1);
      border-radius: 26px;
      box-shadow: 0 30px 90px rgba(0, 0, 0, 0.42);
      backdrop-filter: blur(18px);
    }
    .card {
      max-width: 760px;
      padding: 64px 48px;
      text-align: center;
    }
    .eyebrow, .completion-pill {
      display: inline-block;
      padding: 8px 14px;
      border: 1px solid rgba(255, 255, 255, 0.12);
      border-radius: 999px;
      color: #b7b7c5;
      font-size: 12px;
      font-weight: 700;
      letter-spacing: 0.14em;
      text-transform: uppercase;
    }
    .eyebrow { margin-bottom: 24px; }
    h1 {
      margin: 0;
      font-size: clamp(42px, 8vw, 72px);
      line-height: 1;
      letter-spacing: -0.045em;
    }
    .gradient-text {
      background: linear-gradient(90deg, #ef3c5c, #a847e8, #416cff);
      -webkit-background-clip: text;
      background-clip: text;
      color: transparent;
    }
    .intro {
      max-width: 590px;
      margin: 24px auto 0;
      color: #a9a9b7;
      font-size: 18px;
      line-height: 1.65;
    }
    .primary-button, .submit-button, .continue-button {
      border: 0;
      color: white;
      background: linear-gradient(90deg, #e93658, #a340e7, #3866fa);
      font-weight: 700;
      box-shadow: 0 14px 40px rgba(104, 64, 255, 0.2);
      transition: transform 160ms ease, filter 160ms ease;
    }
    .primary-button:hover, .submit-button:hover, .continue-button:hover {
      transform: translateY(-2px);
      filter: brightness(1.08);
    }
    .primary-button {
      width: 100%;
      max-width: 360px;
      margin-top: 36px;
      padding: 17px 24px;
      border-radius: 13px;
      font-size: 16px;
    }
    .saved-actions {
      display: none;
      gap: 12px;
      justify-content: center;
      flex-wrap: wrap;
      margin-top: 18px;
    }
    .saved-actions.visible { display: flex; }
    .shell { width: 100%; max-width: 940px; margin: 0 auto; }
    .topbar {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 20px;
      margin-bottom: 28px;
    }
    .brand { font-size: 18px; font-weight: 800; }
    .step { color: #9c9cab; font-size: 14px; }
    .progress-track {
      height: 6px;
      margin-bottom: 32px;
      overflow: hidden;
      background: rgba(255, 255, 255, 0.08);
      border-radius: 999px;
    }
    .progress-fill {
      height: 100%;
      background: linear-gradient(90deg, #e93658, #a340e7, #3866fa);
      border-radius: 999px;
    }
    .progress-20 { width: 20%; }
    .progress-40 { width: 40%; }
    .progress-60 { width: 60%; }
    .progress-80 { width: 80%; }
    .progress-100 { width: 100%; }
    .panel { padding: 40px; }
    .panel h2 {
      margin: 0;
      font-size: clamp(32px, 5vw, 46px);
      letter-spacing: -0.035em;
    }
    .panel > p, .section-copy {
      margin: 14px 0 0;
      color: #aaaab7;
      line-height: 1.7;
    }
    .instructions {
      margin: 28px 0 34px;
      padding: 22px;
      background: rgba(255, 255, 255, 0.035);
      border: 1px solid rgba(255, 255, 255, 0.08);
      border-radius: 16px;
      color: #c1c1cc;
      line-height: 1.65;
    }
    .instructions strong { color: white; }
    .example {
      margin-top: 14px;
      padding: 16px;
      background: rgba(0, 0, 0, 0.22);
      border-radius: 12px;
      color: #a9a9b7;
      white-space: pre-line;
    }
    .field { margin-top: 28px; }
    label {
      display: block;
      margin-bottom: 10px;
      color: #ffffff;
      font-size: 16px;
      font-weight: 700;
      line-height: 1.45;
    }
    .question-number { color: #a847e8; }
    input, textarea {
      width: 100%;
      border: 1px solid rgba(255, 255, 255, 0.12);
      border-radius: 13px;
      color: #ffffff;
      background: rgba(255, 255, 255, 0.045);
      outline: none;
      transition: border-color 160ms ease, background 160ms ease;
    }
    input { padding: 15px 16px; }
    textarea {
      min-height: 125px;
      padding: 16px;
      resize: vertical;
      line-height: 1.55;
    }
    input:focus, textarea:focus {
      border-color: rgba(168, 71, 232, 0.8);
      background: rgba(255, 255, 255, 0.065);
    }
    .helper { margin-top: 8px; color: #81818f; font-size: 13px; line-height: 1.5; }
    .actions {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 16px;
      margin-top: 38px;
    }
    .secondary-button, .text-button, .submit-button, .continue-button, .danger-button {
      padding: 15px 22px;
      border-radius: 12px;
      font-weight: 700;
    }
    .secondary-button {
      border: 1px solid rgba(255, 255, 255, 0.12);
      color: #c8c8d2;
      background: transparent;
    }
    .text-button {
      border: 0;
      color: #a9a9b7;
      background: transparent;
      padding-left: 8px;
      padding-right: 8px;
    }
    .danger-button {
      border: 1px solid rgba(239, 60, 92, 0.35);
      color: #ff9aae;
      background: rgba(239, 60, 92, 0.06);
    }
    .submit-button, .continue-button { flex: 1; max-width: 340px; }
    button:disabled { cursor: not-allowed; opacity: 0.58; transform: none !important; }
    .status {
      min-height: 24px;
      margin-top: 18px;
      color: #ff9cab;
      text-align: right;
      font-size: 14px;
    }
    .priority-list, .goal-summary-list { display: grid; gap: 16px; margin-top: 30px; }
    .priority-card {
      display: grid;
      grid-template-columns: 54px minmax(0, 1fr) auto;
      gap: 18px;
      align-items: start;
      padding: 22px;
      background: rgba(255, 255, 255, 0.035);
      border: 1px solid rgba(255, 255, 255, 0.09);
      border-radius: 17px;
    }
    .priority-index {
      display: grid;
      place-items: center;
      width: 42px;
      height: 42px;
      border-radius: 13px;
      background: linear-gradient(135deg, rgba(233, 54, 88, 0.25), rgba(56, 102, 250, 0.25));
      color: white;
      font-weight: 800;
    }
    .priority-copy h3 { margin: 0; font-size: 19px; }
    .priority-copy p { margin: 8px 0 0; color: #aaaab7; line-height: 1.6; }
    .priority-count {
      padding: 7px 11px;
      border-radius: 999px;
      background: rgba(168, 71, 232, 0.13);
      border: 1px solid rgba(168, 71, 232, 0.25);
      color: #d9b2f4;
      font-size: 13px;
      white-space: nowrap;
    }
    .results-note {
      margin-top: 24px;
      padding: 17px 18px;
      border-left: 3px solid #a847e8;
      background: rgba(168, 71, 232, 0.07);
      color: #bdbdca;
      line-height: 1.6;
    }
    .framework-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 14px;
      margin-top: 18px;
    }
    .framework-item {
      padding: 17px;
      background: rgba(0, 0, 0, 0.2);
      border: 1px solid rgba(255, 255, 255, 0.07);
      border-radius: 13px;
    }
    .framework-item strong { display: block; margin-bottom: 6px; color: #ffffff; }
    .framework-item span { color: #aaaab7; font-size: 14px; line-height: 1.55; }
    .life-areas { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 13px; }
    .life-area {
      padding: 7px 10px;
      border-radius: 999px;
      background: rgba(168, 71, 232, 0.1);
      border: 1px solid rgba(168, 71, 232, 0.2);
      color: #d4b2eb;
      font-size: 12px;
    }
    .goal-summary-card {
      padding: 20px;
      background: rgba(255, 255, 255, 0.035);
      border: 1px solid rgba(255, 255, 255, 0.09);
      border-radius: 16px;
    }
    .goal-summary-card span {
      display: block;
      margin-bottom: 8px;
      color: #c7a1e7;
      font-size: 12px;
      font-weight: 800;
      letter-spacing: 0.1em;
      text-transform: uppercase;
    }
    .goal-summary-card p { margin: 0; color: #d6d6df; line-height: 1.65; }
    .skill-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 14px;
      margin-top: 28px;
    }
    .skill-option { position: relative; }
    .skill-option input { position: absolute; opacity: 0; pointer-events: none; }
    .skill-card {
      display: block;
      height: 100%;
      min-height: 190px;
      padding: 20px;
      border: 1px solid rgba(255, 255, 255, 0.1);
      border-radius: 17px;
      background: rgba(255, 255, 255, 0.035);
      transition: border-color 150ms ease, background 150ms ease, transform 150ms ease;
    }
    .skill-card:hover { transform: translateY(-2px); border-color: rgba(168, 71, 232, 0.48); }
    .skill-option input:checked + .skill-card {
      border-color: #a847e8;
      background: rgba(168, 71, 232, 0.11);
      box-shadow: 0 0 0 2px rgba(168, 71, 232, 0.12);
    }
    .skill-card h3 { margin: 18px 0 9px; font-size: 18px; }
    .skill-card p { margin: 0; color: #a9a9b7; line-height: 1.55; font-size: 14px; }
    .skill-number { color: #777785; font-size: 12px; font-weight: 800; }
    .recommended-badge {
      display: inline-block;
      padding: 6px 9px;
      border-radius: 999px;
      background: linear-gradient(90deg, rgba(233, 54, 88, 0.18), rgba(56, 102, 250, 0.18));
      border: 1px solid rgba(168, 71, 232, 0.32);
      color: #e2c3f6;
      font-size: 10px;
      font-weight: 800;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }
    .skill-tools {
      display: flex;
      align-items: center;
      gap: 14px;
      margin-top: 20px;
    }
    .skill-tools .helper { margin-top: 0; }
    .custom-skill-field { display: none; margin-top: 20px; }
    .custom-skill-field.visible { display: block; }
    .profile-header { text-align: center; padding-bottom: 10px; }
    .completion-pill { color: #cfcfd8; margin-bottom: 18px; }
    .profile-title {
      margin: 0;
      font-size: clamp(38px, 6vw, 60px);
      letter-spacing: -0.045em;
    }
    .profile-subtitle { margin: 12px 0 0; color: #9696a5; }
    .profile-section { margin-top: 34px; }
    .profile-section h3 {
      margin: 0 0 16px;
      font-size: 22px;
      letter-spacing: -0.02em;
    }
    .profile-priorities {
      display: grid;
      gap: 12px;
      padding: 22px;
      border: 1px solid rgba(255, 255, 255, 0.09);
      border-radius: 18px;
      background: rgba(255, 255, 255, 0.03);
    }
    .profile-priority-row {
      display: grid;
      grid-template-columns: 34px minmax(0, 1fr) auto;
      gap: 14px;
      align-items: start;
      padding-bottom: 14px;
      border-bottom: 1px solid rgba(255, 255, 255, 0.07);
    }
    .profile-priority-row:last-child { padding-bottom: 0; border-bottom: 0; }
    .mini-index {
      display: grid;
      place-items: center;
      width: 30px;
      height: 30px;
      border-radius: 10px;
      background: rgba(168, 71, 232, 0.14);
      color: #dfc0f2;
      font-weight: 800;
      font-size: 13px;
    }
    .profile-priority-copy strong { display: block; font-size: 17px; }
    .profile-priority-copy p { margin: 6px 0 0; color: #9f9fac; line-height: 1.55; }
    .goal-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
    .profile-goal-card {
      padding: 20px;
      border: 1px solid rgba(255, 255, 255, 0.09);
      border-radius: 17px;
      background: rgba(255, 255, 255, 0.035);
    }
    .profile-goal-card span {
      color: #c7a1e7;
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.1em;
      text-transform: uppercase;
    }
    .profile-goal-card p { margin: 12px 0 0; color: #d1d1db; line-height: 1.65; }
    .core-skill-card {
      padding: 26px;
      border: 1px solid rgba(168, 71, 232, 0.35);
      border-radius: 20px;
      background:
        linear-gradient(135deg, rgba(233, 54, 88, 0.09), rgba(56, 102, 250, 0.09)),
        rgba(255, 255, 255, 0.025);
    }
    .core-skill-card span {
      color: #c8a2e5;
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }
    .core-skill-card h4 { margin: 11px 0 8px; font-size: 27px; }
    .core-skill-card p { margin: 0; color: #b4b4c0; line-height: 1.65; }
    .closing-statement {
      max-width: 760px;
      margin: 30px auto 0;
      color: #8f8f9e;
      text-align: center;
      font-size: 14px;
      line-height: 1.7;
    }
    .profile-actions { justify-content: center; flex-wrap: wrap; }
    .course-link {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      text-align: center;
      text-decoration: none;
    }
    .edit-priority-list { display: grid; gap: 16px; margin-top: 24px; }
    .edit-priority-row {
      padding: 18px;
      border: 1px solid rgba(255, 255, 255, 0.09);
      border-radius: 16px;
      background: rgba(255, 255, 255, 0.03);
    }
    .edit-priority-top { display: grid; grid-template-columns: minmax(0, 1fr) 110px auto; gap: 10px; align-items: end; }
    .compact-label { color: #9f9fac; font-size: 12px; margin-bottom: 7px; }
    .remove-priority { padding: 13px 14px; }
    .loading-overlay {
      position: fixed;
      inset: 0;
      z-index: 1000;
      display: none;
      align-items: center;
      justify-content: center;
      padding: 24px;
      background: rgba(5, 5, 9, 0.74);
      backdrop-filter: blur(8px);
    }
    .loading-overlay.active { display: flex; }
    .loading-card {
      width: 100%;
      max-width: 430px;
      padding: 38px 30px;
      text-align: center;
      background: rgba(20, 20, 27, 0.97);
      border: 1px solid rgba(255, 255, 255, 0.12);
      border-radius: 22px;
      box-shadow: 0 30px 90px rgba(0, 0, 0, 0.55);
    }
    .spinner {
      width: 48px;
      height: 48px;
      margin: 0 auto 24px;
      border: 4px solid rgba(255, 255, 255, 0.12);
      border-top-color: #a847e8;
      border-radius: 50%;
      animation: spin 850ms linear infinite;
    }
    .loading-card h3 { margin: 0; font-size: 23px; }
    .loading-card p { margin: 12px 0 0; color: #9f9fac; line-height: 1.6; }
    @keyframes spin { to { transform: rotate(360deg); } }

    /* Persistent member control shown on every authenticated screen. */
    .logout-button {
      position: fixed;
      top: 18px;
      right: 18px;
      z-index: 950;
      display: none;
      align-items: center;
      justify-content: center;
      padding: 10px 14px;
      border: 1px solid rgba(255, 255, 255, 0.14);
      border-radius: 999px;
      color: #c8c8d2;
      background: rgba(18, 18, 24, 0.9);
      box-shadow: 0 12px 32px rgba(0, 0, 0, 0.34);
      backdrop-filter: blur(14px);
      font-size: 13px;
      font-weight: 700;
      transition: border-color 160ms ease, color 160ms ease, transform 160ms ease;
    }
    .logout-button.visible { display: inline-flex; }
    .logout-button:hover {
      transform: translateY(-1px);
      border-color: rgba(239, 60, 92, 0.45);
      color: #ffb2c0;
    }
    .logout-button:disabled {
      cursor: wait;
      opacity: 0.65;
    }

    .auth-card {
  max-width: 560px;
  text-align: left;
}

.auth-card h2 {
  margin: 0;
  font-size: clamp(32px, 6vw, 48px);
  letter-spacing: -0.04em;
}

.auth-card .intro {
  margin: 16px 0 0;
  font-size: 16px;
}

.auth-card .primary-button {
  max-width: none;
}

.auth-note {
  margin-top: 20px;
  color: #858594;
  font-size: 13px;
  line-height: 1.6;
  text-align: center;
}

.auth-email {
  color: #d9b2f4;
  font-weight: 700;
}

.code-input {
  text-align: center;
  font-size: 28px;
  font-weight: 800;
  letter-spacing: 10px;
}

.auth-link-button {
  display: block;
  margin: 18px auto 0;
  border: 0;
  color: #aaaab7;
  background: transparent;
  text-decoration: underline;
}
    /* =====================================================
       NEXUS AI HOME DASHBOARD
       The dashboard is the stable member entrance for current work,
       saved Passion Profiles, and future Nexus tools.
       ===================================================== */
    .dashboard-shell {
      width: 100%;
      max-width: 1040px;
      margin: 0 auto;
      padding: 30px 0 70px;
    }
    .dashboard-header {
      padding: 34px 0 20px;
    }
    .dashboard-header h1 {
      margin: 8px 0 0;
      font-size: clamp(42px, 7vw, 68px);
    }
    .dashboard-subtitle {
      max-width: 680px;
      margin: 18px 0 0;
      color: #aaaab7;
      font-size: 17px;
      line-height: 1.7;
    }
    .dashboard-section {
      margin-top: 30px;
    }
    .dashboard-section-heading {
      display: flex;
      align-items: end;
      justify-content: space-between;
      gap: 18px;
      margin-bottom: 14px;
    }
    .dashboard-section-heading h2 {
      margin: 0;
      font-size: 25px;
      letter-spacing: -0.025em;
    }
    .dashboard-section-heading p {
      margin: 0;
      color: #858594;
      font-size: 13px;
    }
    .continue-progress-section {
      display: none;
    }
    .continue-progress-section.visible {
      display: block;
    }
    .continue-card {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 24px;
      align-items: center;
      padding: 25px;
      border: 1px solid rgba(168, 71, 232, 0.34);
      border-radius: 20px;
      background:
        linear-gradient(135deg, rgba(233, 54, 88, 0.08), rgba(56, 102, 250, 0.08)),
        rgba(18, 18, 24, 0.88);
      box-shadow: 0 22px 60px rgba(0, 0, 0, 0.26);
    }
    .continue-card h3 {
      margin: 0;
      font-size: 21px;
    }
    .continue-card p {
      margin: 8px 0 0;
      color: #aaaab7;
      line-height: 1.6;
    }
    .continue-button-compact {
      min-width: 210px;
      padding: 15px 20px;
      border-radius: 12px;
    }
    .tool-card,
    .profile-control-card {
      padding: 26px;
      border: 1px solid rgba(255, 255, 255, 0.1);
      border-radius: 22px;
      background: rgba(18, 18, 24, 0.88);
      box-shadow: 0 22px 65px rgba(0, 0, 0, 0.28);
      backdrop-filter: blur(16px);
    }
    .tool-card-header {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 20px;
    }
    .tool-card-header h3 {
      margin: 0;
      font-size: 27px;
      letter-spacing: -0.025em;
    }
    .tool-card-header p {
      margin: 9px 0 0;
      color: #9d9daa;
      line-height: 1.6;
    }
    .tool-status {
      flex: 0 0 auto;
      padding: 7px 11px;
      border-radius: 999px;
      border: 1px solid rgba(76, 214, 155, 0.28);
      background: rgba(76, 214, 155, 0.08);
      color: #9ae7c4;
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }
    .tool-status.coming-soon {
      border-color: rgba(168, 71, 232, 0.25);
      background: rgba(168, 71, 232, 0.08);
      color: #d8b4ef;
    }
    .current-profile-summary {
      display: none;
      margin-top: 22px;
      padding: 20px;
      border: 1px solid rgba(168, 71, 232, 0.3);
      border-radius: 17px;
      background: rgba(168, 71, 232, 0.07);
    }
    .current-profile-summary.visible {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 18px;
      align-items: center;
    }
    .current-profile-summary h4 {
      margin: 0;
      font-size: 18px;
    }
    .current-profile-summary p {
      margin: 7px 0 0;
      color: #aaaab7;
      line-height: 1.5;
    }
    .profile-version-pill {
      display: inline-flex;
      align-items: center;
      padding: 6px 9px;
      margin-bottom: 9px;
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.07);
      color: #d9d9e2;
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.07em;
      text-transform: uppercase;
    }
    .no-current-profile {
      margin-top: 20px;
      padding: 18px;
      border: 1px dashed rgba(255, 255, 255, 0.13);
      border-radius: 15px;
      color: #9696a4;
      line-height: 1.6;
    }
    .no-current-profile.hidden {
      display: none;
    }
    .dashboard-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 11px;
      margin-top: 20px;
    }
    .dashboard-actions .primary-button,
    .dashboard-actions .secondary-button {
      width: auto;
      max-width: none;
      margin-top: 0;
    }
    .history-block {
      margin-top: 26px;
      padding-top: 24px;
      border-top: 1px solid rgba(255, 255, 255, 0.08);
    }
    .history-block h4 {
      margin: 0;
      font-size: 18px;
    }
    .history-list {
      display: grid;
      gap: 10px;
      margin-top: 14px;
    }
    .history-row {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 16px;
      align-items: center;
      padding: 15px 16px;
      border: 1px solid rgba(255, 255, 255, 0.08);
      border-radius: 14px;
      background: rgba(255, 255, 255, 0.025);
    }
    .history-row strong {
      display: block;
      font-size: 15px;
    }
    .history-row span {
      display: block;
      margin-top: 5px;
      color: #888896;
      font-size: 13px;
    }
    .history-view-button {
      padding: 10px 13px;
      border: 1px solid rgba(255, 255, 255, 0.12);
      border-radius: 10px;
      color: #d0d0d9;
      background: transparent;
      font-weight: 700;
    }
    .history-empty {
      padding: 16px;
      border-radius: 13px;
      color: #858594;
      background: rgba(255, 255, 255, 0.025);
      line-height: 1.55;
    }
    .coming-soon-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 14px;
      margin-top: 14px;
    }
    .coming-soon-card {
      min-height: 175px;
      padding: 21px;
      border: 1px solid rgba(255, 255, 255, 0.08);
      border-radius: 18px;
      background: rgba(255, 255, 255, 0.025);
    }
    .coming-soon-card h3 {
      margin: 18px 0 8px;
      font-size: 19px;
    }
    .coming-soon-card p {
      margin: 0;
      color: #8f8f9d;
      font-size: 14px;
      line-height: 1.6;
    }
    .profile-control-card {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 24px;
      align-items: center;
    }
    .profile-control-card h3 {
      margin: 0;
      font-size: 20px;
    }
    .profile-control-card p {
      margin: 8px 0 0;
      color: #9696a4;
      line-height: 1.55;
    }
    .profile-control-buttons {
      display: flex;
      gap: 10px;
      flex-wrap: wrap;
      justify-content: flex-end;
    }
    .profile-control-buttons button:disabled {
      opacity: 0.45;
    }
    .saved-profile-meta {
      margin: 10px 0 0;
      color: #9696a5;
      text-align: center;
      line-height: 1.55;
    }
    .home-link-button {
      margin-right: auto;
    }

    /* Authentication screens */

    @media (max-width: 860px) {
      .skill-grid, .goal-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    }
    @media (max-width: 650px) {
      body { padding: 18px 14px; }
      .logout-button { top: 10px; right: 10px; }
      .card { padding: 48px 24px; }
      .intro { font-size: 16px; }
      .panel { padding: 26px 20px; }
      .topbar { align-items: flex-start; flex-direction: column; gap: 6px; }
      .actions { flex-direction: column-reverse; align-items: stretch; }
      .secondary-button, .submit-button, .continue-button, .danger-button { width: 100%; max-width: none; }
      .priority-card { grid-template-columns: 44px minmax(0, 1fr); }
      .priority-count { grid-column: 2; justify-self: start; }
      .framework-grid, .skill-grid, .goal-grid { grid-template-columns: 1fr; }
      .skill-tools { align-items: stretch; flex-direction: column; }
      .skill-card { min-height: 0; }
      .profile-priority-row { grid-template-columns: 32px minmax(0, 1fr); }
      .profile-priority-row .priority-count { grid-column: 2; }
      .edit-priority-top { grid-template-columns: 1fr 92px; }
      .remove-priority { grid-column: 1 / -1; }
      .dashboard-header { padding-top: 54px; }
      .dashboard-section-heading { align-items: flex-start; flex-direction: column; gap: 5px; }
      .continue-card, .current-profile-summary.visible, .profile-control-card { grid-template-columns: 1fr; }
      .continue-button-compact { width: 100%; min-width: 0; }
      .coming-soon-grid { grid-template-columns: 1fr; }
      .tool-card, .profile-control-card { padding: 21px; }
      .tool-card-header { flex-direction: column; }
      .dashboard-actions { flex-direction: column; }
      .dashboard-actions .primary-button, .dashboard-actions .secondary-button { width: 100%; }
      .history-row { grid-template-columns: 1fr; }
      .history-view-button { width: 100%; }
      .profile-control-buttons { justify-content: stretch; }
      .profile-control-buttons button { width: 100%; }
    }
  
.logout-button { display:none !important; }

/* Top aspects are added by the separate Passion Search tool. */
.top-aspect-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.top-aspect-card { display:grid; grid-template-columns:34px minmax(0,1fr); gap:12px; align-items:start; padding:17px; border:1px solid rgba(168,71,232,.24); border-radius:15px; background:rgba(168,71,232,.06); }
.top-aspect-card>span { display:grid; place-items:center; width:30px; height:30px; border-radius:10px; background:rgba(168,71,232,.16); color:#dfc0f2; font-size:12px; font-weight:800; }
.top-aspect-card strong { display:block; }
.top-aspect-card p { margin:6px 0 0; color:#9797a4; font-size:13px; line-height:1.5; }
@media(max-width:650px){.top-aspect-grid{grid-template-columns:1fr}}

/* Keeps the current saved profile visibly distinct on the tool overview. */
.profile-tool-current { margin-top:14px; }
.profile-tool-current h4 { margin:0; font-size:19px; }

/* Current profile is rendered directly on the Passion Profile tool home. */
.profile-tool-current-full { margin-top: 28px; }
.profile-tool-current-full > .profile-header { padding-top: 8px; }
.profile-tool-current-full .report-actions { margin-bottom: 30px; }
.profile-section-kicker {
  display: block;
  margin-bottom: 8px;
  color: #d5b1ef;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.passion-direction-section {
  position: relative;
  overflow: hidden;
  padding: 28px;
  border: 1px solid rgba(168, 71, 232, .34);
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(233,54,88,.08), rgba(56,102,250,.09));
}
.passion-direction-section h3 { margin: 0; font-size: clamp(28px, 4vw, 42px); }
.passion-direction-section p { margin: 12px 0 0; color: #b8b8c4; line-height: 1.65; }
.passion-confirmed-glow {
  animation: passionPulse 3.6s ease-in-out infinite;
  box-shadow: 0 0 38px rgba(168, 71, 232, .2);
}
.confirmed-passion-badge {
  display: inline-flex;
  margin-top: 18px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(168,71,232,.14);
  border: 1px solid rgba(168,71,232,.34);
  color: #e4c8f6;
  font-size: 12px;
  font-weight: 800;
}
@keyframes passionPulse {
  0%,100% { box-shadow: 0 0 24px rgba(168,71,232,.14); }
  50% { box-shadow: 0 0 50px rgba(65,108,255,.26); }
}
.backup-passion-list { display: grid; gap: 10px; }
.backup-passion-list > div {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 18px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 14px;
  background: rgba(255,255,255,.03);
}
.backup-passion-list span {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 9px;
  background: rgba(168,71,232,.13);
  color: #dbbbed;
  font-weight: 800;
}
.top-aspect-card small { display: block; margin-top: 7px; color: #868695; }
.aspect-edit-grid { grid-template-columns: minmax(0, 1fr) 130px 150px; }
.account-help-note { margin: 24px 0 0; color: #8e8e9c; font-size: 14px; line-height: 1.6; }
@media (max-width: 760px) {
  .aspect-edit-grid { grid-template-columns: 1fr; }
}

/* July 19 refinement: compact priority context and a true STAR acrostic. */
.star-context-grid {
  display: grid;
  grid-template-columns: minmax(240px, .72fr) minmax(0, 1.28fr);
  gap: 14px;
  margin: 24px 0 30px;
}
.star-priority-panel,
.star-framework-panel {
  padding: 18px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 16px;
  background: rgba(255,255,255,.026);
}
.star-framework-panel {
  border-color: rgba(168,71,232,.28);
  background: linear-gradient(135deg,rgba(168,71,232,.075),rgba(56,102,250,.045));
}
.star-panel-heading {
  display: grid;
  gap: 5px;
}
.star-panel-heading > strong { font-size: 16px; }
.star-priority-summary {
  display: grid;
  gap: 8px;
  margin-top: 14px;
}
.star-priority-chip {
  display: grid;
  grid-template-columns: 28px minmax(0,1fr);
  gap: 10px;
  align-items: center;
  padding: 10px 11px;
  border-radius: 12px;
  background: rgba(255,255,255,.04);
}
.star-priority-chip > span {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 9px;
  color: #e1c5f2;
  background: rgba(168,71,232,.14);
  font-size: 11px;
  font-weight: 800;
}
.star-priority-chip strong { display: block; font-size: 13px; line-height: 1.25; }
.star-priority-chip small { display: block; margin-top: 3px; color: #858593; font-size: 11px; }
.star-framework-grid {
  grid-template-columns: 1fr;
  gap: 7px;
  margin-top: 14px;
}
.star-framework-grid .framework-item {
  display: grid;
  grid-template-columns: 36px minmax(0,1fr);
  gap: 11px;
  align-items: center;
  padding: 10px 12px;
  border-color: rgba(255,255,255,.08);
  background: rgba(0,0,0,.16);
}
.framework-letter {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 10px;
  color: #fff;
  background: linear-gradient(135deg,rgba(233,54,88,.36),rgba(56,102,250,.4));
  box-shadow: 0 0 18px rgba(168,71,232,.14);
  font-size: 15px;
  font-weight: 900;
}
.star-framework-grid .framework-item strong { margin: 0 0 2px; font-size: 14px; }
.star-framework-grid .framework-item span:not(.framework-letter) { font-size: 12px; line-height: 1.4; }
.editable-later-note {
  margin: 16px 0 0;
  padding: 12px 14px;
  border-left: 3px solid #a847e8;
  border-radius: 0 11px 11px 0;
  color: #b7b7c2;
  background: rgba(168,71,232,.065);
  font-size: 13px;
  line-height: 1.55;
}
@media (max-width: 760px) {
  .star-context-grid { grid-template-columns: 1fr; }
}

/* July 19 follow-up: one current-profile view, living-profile note, and clean assessment warning. */
.passion-profile-home-panel > .profile-tool-current-full { margin-top: 0; }
.living-profile-note {
  max-width: 720px;
  margin: 16px auto 0;
  color: #9b9baa;
  font-size: 14px;
  line-height: 1.65;
}
.profile-history-section { margin-top: 34px; }
.profile-modal[hidden] { display: none; }
.profile-modal {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: grid;
  place-items: center;
  padding: 24px;
}
.profile-modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(2,2,7,.78);
  backdrop-filter: blur(9px);
}
.profile-modal-card {
  position: relative;
  width: min(560px, 100%);
  padding: 28px;
  border: 1px solid rgba(168,71,232,.34);
  border-radius: 22px;
  background: linear-gradient(145deg,rgba(34,23,47,.98),rgba(14,15,24,.98));
  box-shadow: 0 30px 90px rgba(0,0,0,.5), 0 0 45px rgba(168,71,232,.12);
}
.profile-modal-card h2 {
  margin: 10px 0 0;
  font-size: clamp(28px,5vw,40px);
  letter-spacing: -.035em;
}
.profile-modal-card p {
  margin: 16px 0 0;
  color: #b1b1bd;
  line-height: 1.7;
}
.profile-modal-actions {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 26px;
}
.profile-modal-actions .primary-button { margin: 0; }

/* Saturated moving light inside a confirmed Current Passion card. */
.passion-confirmed-glow {
  isolation: isolate;
  background: linear-gradient(135deg,rgba(217,54,114,.13),rgba(108,79,245,.16),rgba(56,102,250,.13));
}
.passion-confirmed-glow::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: -70%;
  background:
    radial-gradient(circle at 25% 35%,rgba(255,45,112,.42),transparent 27%),
    radial-gradient(circle at 70% 28%,rgba(126,64,255,.46),transparent 29%),
    radial-gradient(circle at 56% 76%,rgba(48,119,255,.42),transparent 31%);
  filter: blur(18px) saturate(1.35);
  opacity: .8;
  animation: passionInnerGlow 8s ease-in-out infinite alternate;
}
.passion-confirmed-glow > * {
  position: relative;
  z-index: 1;
}
@keyframes passionInnerGlow {
  0% { transform: translate3d(-8%,-5%,0) rotate(-5deg) scale(.92); }
  45% { transform: translate3d(7%,2%,0) rotate(6deg) scale(1.08); }
  100% { transform: translate3d(-1%,8%,0) rotate(-2deg) scale(1.02); }
}
@media(max-width:650px) {
  .profile-modal-actions { flex-direction: column-reverse; }
  .profile-modal-actions button { width: 100%; }
}
@media(prefers-reduced-motion:reduce) {
  .passion-confirmed-glow,
  .passion-confirmed-glow::before { animation: none; }
}

/* Passion Profile PDF export, clearer discovery instructions, and Free Access flow controls. */
.priority-instructions {
  border-color: rgba(184,80,255,.5);
  background: linear-gradient(135deg,rgba(168,71,232,.16),rgba(56,102,250,.085));
  box-shadow: inset 0 0 30px rgba(126,64,255,.055), 0 0 28px rgba(126,64,255,.055);
}
.priority-instructions .instructions-heading {
  display: block;
  color: #fff;
  font-size: 15px;
  letter-spacing: .055em;
  text-transform: uppercase;
}
.priority-instructions .instructions-heading span {
  color: #aaaab7;
  font-size: 12px;
  letter-spacing: .025em;
  text-transform: none;
}
.priority-instructions p {
  margin: 14px 0 0;
}
textarea::placeholder,
input::placeholder {
  color: #777785;
  opacity: 1;
}
.skill-selection-heading {
  margin: 30px 0 0;
  color: #fff;
  font-size: 19px;
  letter-spacing: -.01em;
}
.skill-selection-heading + .skill-grid { margin-top: 16px; }
.actions.forward-only { justify-content: flex-end; }
.profile-header,
.profile-tool-current-full > .profile-header {
  position: relative;
  padding-top: 0;
}
.profile-heading-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: 16px;
  margin-bottom: 18px;
}
.profile-heading-row .completion-pill {
  justify-self: center;
  margin-bottom: 0;
}
.profile-download-button {
  position: static;
  justify-self: start;
  width: auto;
  margin: 0;
  padding: 11px 16px;
  font-size: 13px;
  white-space: nowrap;
}
.profile-heading-spacer {
  justify-self: end;
  width: 100%;
}

.profile-icon-button {
  display: grid;
  place-items: center;
  width: 44px !important;
  height: 44px;
  min-width: 44px;
  max-width: 44px !important;
  padding: 0 !important;
  margin: 0;
  justify-self: start;
}
.profile-heading-row > .profile-icon-button:last-child { justify-self: end; }
.profile-action-icon {
  width: 21px;
  height: 21px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.profile-icon-button:hover,
.profile-icon-button:focus-visible {
  color: #fff;
  border-color: rgba(168,71,232,.5);
  background: rgba(168,71,232,.08);
  box-shadow: 0 0 18px rgba(168,71,232,.14);
}
.passion-profile-home-panel > .profile-actions {
  flex-wrap: nowrap;
  align-items: stretch;
}
.passion-profile-home-panel > .profile-actions > button {
  display: inline-flex;
  flex: 1 1 0;
  align-items: center;
  justify-content: center;
  width: auto;
  max-width: 270px;
  min-height: 52px;
  margin: 0;
}
@media (max-width: 760px) {
  .passion-profile-home-panel > .profile-actions {
    flex-wrap: wrap;
  }
  .passion-profile-home-panel > .profile-actions > button {
    flex: 1 1 calc(50% - 8px);
    max-width: none;
  }
}
@media (max-width: 650px) {
  .profile-heading-row {
    grid-template-columns: 1fr;
    justify-items: center;
  }
  .profile-download-button {
    justify-self: center;
  }
  .profile-heading-row > .profile-icon-button,
  .profile-heading-row > .profile-icon-button:last-child { justify-self: center; }
  .profile-heading-spacer { display: none; }
  .passion-profile-home-panel > .profile-actions {
    flex-direction: column;
  }
  .passion-profile-home-panel > .profile-actions > button {
    width: 100%;
    flex-basis: auto;
  }
}

/* Assessment overview is separate from the member's current profile record. */
.passion-assessment-overview { max-width: 980px; margin-inline: auto; }
.profile-assessment-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin: 26px 0; }
.profile-assessment-steps > div { padding: 17px; border-radius: 16px; background: rgba(255,255,255,.035); border: 1px solid rgba(255,255,255,.08); }
.profile-assessment-steps span { display: grid; place-items: center; width: 30px; height: 30px; margin-bottom: 10px; border-radius: 50%; background: rgba(188, 104, 255, .18); color: #ead5ff; font-weight: 800; }
.profile-assessment-steps strong { display: block; }
.profile-assessment-steps p { margin: 7px 0 0; color: var(--muted); font-size: .88rem; line-height: 1.45; }
.assessment-current-note { color: var(--muted); font-size: .92rem; line-height: 1.55; }
.results-heading-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: start; gap: 24px; }
.results-heading-row h2 { margin-bottom: 8px; }
.results-heading-row p { margin-bottom: 0; }
.results-heading-row .continue-button { align-self: center; }
@media (max-width: 760px) {
  .profile-assessment-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .results-heading-row { grid-template-columns: 1fr; }
  .results-heading-row .continue-button { justify-self: start; }
}
@media (max-width: 480px) { .profile-assessment-steps { grid-template-columns: 1fr; } }

/* Revocable current-profile sharing. */
.profile-share-card { width: min(660px, 100%); }
.profile-share-panel {
  display: grid;
  gap: 15px;
  margin-top: 22px;
  padding: 18px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 16px;
  background: rgba(255,255,255,.025);
}
.profile-share-panel[hidden] { display: none; }
.profile-share-panel > p { margin: 0; }
.profile-share-panel > .primary-button { justify-self: start; margin: 0; }
.profile-share-link-row {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 10px;
}
.profile-share-link-row input {
  min-width: 0;
  font-size: 13px;
}
.profile-share-link-row button,
.profile-share-social-actions button,
.profile-share-management-actions button { margin: 0; }
.profile-share-social-actions,
.profile-share-management-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.profile-share-privacy-note {
  padding-top: 14px;
  border-top: 1px solid rgba(255,255,255,.08);
  font-size: 13px;
}
.profile-share-management-actions { justify-content: space-between; }
#profileShareStatus.error { color: #ff9eaf; }
@media(max-width:650px) {
  .profile-share-link-row { grid-template-columns: 1fr; }
  .profile-share-social-actions,
  .profile-share-management-actions { flex-direction: column; }
  .profile-share-link-row button,
  .profile-share-social-actions button,
  .profile-share-management-actions button { width: 100%; }
}
.profile-modal-backdrop {
  padding: 0;
  border: 0;
}

/* Seven-stage current-profile layout and unlimited manual editing. */
.current-profile-heading-grid {
  grid-template-columns: minmax(150px, 1fr) auto minmax(150px, 1fr);
}
.current-profile-heading-grid > :last-child { justify-self: end; }
.profile-title { text-align: center; }
.saved-profile-meta,
.living-profile-note {
  color: #9f9fad;
  text-align: center;
  line-height: 1.55;
}
.living-profile-note { max-width: 700px; margin: 12px auto 0; }
.profile-empty-section {
  margin: 0;
  padding: 18px;
  border: 1px dashed rgba(255,255,255,.11);
  border-radius: 14px;
  color: #858594;
  background: rgba(255,255,255,.018);
}
.profile-history-section { margin-top: 32px; }
.profile-history-section .section-copy,
.section-copy { color: #a3a3b1; line-height: 1.6; }
.profile-edit-section {
  margin-top: 22px;
  padding: 22px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 18px;
  background: rgba(255,255,255,.025);
}
.profile-edit-section > h3 { margin: 0 0 18px; }
.profile-edit-heading,
.profile-edit-row-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}
.profile-edit-heading { margin-bottom: 14px; }
.profile-edit-heading h3 { margin: 0; }
.profile-add-row { margin: 0; }
.profile-edit-rows { display: grid; gap: 14px; }
.profile-edit-row {
  display: grid;
  gap: 10px;
  padding: 16px;
  border: 1px solid rgba(255,255,255,.075);
  border-radius: 14px;
  background: rgba(0,0,0,.15);
}
.profile-edit-row-heading strong {
  display: grid;
  width: 28px;
  height: 28px;
  place-items: center;
  border-radius: 999px;
  color: #e7dcff;
  background: rgba(168,71,232,.2);
}
.profile-edit-row .text-button { margin: 0; }
.profile-edit-row input,
.profile-edit-row textarea,
.profile-edit-section input,
.profile-edit-section textarea { width: 100%; }
.profile-edit-row [data-edit-count] { max-width: 150px; }
.profile-share-empty { display: grid; gap: 14px; }
.profile-share-empty p { margin: 0; color: #aaaab7; }
.profile-share-empty .primary-button { margin: 0; justify-self: start; }
.profile-share-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 16px;
}
.profile-share-actions > * { margin: 0; }
.profile-share-actions a { text-decoration: none; }
.passion-bank-list > div { align-items: flex-start; }
.passion-bank-list > div > div { min-width: 0; }
.passion-bank-list p { margin: 7px 0 0; color: #9d9daa; line-height: 1.5; }
.current-bank-passion {
  border-color: rgba(168,71,232,.42) !important;
  background: linear-gradient(125deg,rgba(233,54,88,.07),rgba(56,102,250,.07)) !important;
}
.aspiration-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }

@media (max-width: 760px) {
  .current-profile-heading-grid { grid-template-columns: 1fr; justify-items: center; }
  .current-profile-heading-grid > :last-child { justify-self: center; }
  .aspiration-grid { grid-template-columns: 1fr; }
}
@media (max-width: 650px) {
  .profile-share-actions { flex-direction: column; }
  .profile-share-actions > * { width: 100%; text-align: center; justify-content: center; }
  .profile-edit-section { padding: 17px; }
}

/* Private Do Next guidance and category-style Drivers/Phases. */
.do-next-section {
  border-color: rgba(168,71,232,.28);
  background: linear-gradient(135deg,rgba(233,54,88,.04),rgba(56,102,250,.055));
}
.do-next-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}
.do-next-heading h3 { margin: 5px 0 0; }
.do-next-heading button { margin: 0; flex: 0 0 auto; }
.do-next-tile {
  margin-top: 20px;
  padding: 24px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 18px;
  background: rgba(8,8,13,.38);
  box-shadow: inset 0 0 34px rgba(168,71,232,.035);
}
.do-next-tile > span {
  color: #c89be9;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.do-next-tile h4 { margin: 9px 0 10px; font-size: clamp(22px,3vw,30px); }
.do-next-action { margin: 0; color: #eceaf1; font-size: 17px; line-height: 1.65; }
.do-next-reason {
  margin-top: 18px;
  padding-top: 17px;
  border-top: 1px solid rgba(255,255,255,.08);
}
.do-next-reason strong { color: #d6b4f1; }
.do-next-reason p { margin: 7px 0 0; color: #aaa8b7; line-height: 1.58; }
.do-next-empty {
  margin-top: 18px;
  padding: 20px;
  border: 1px dashed rgba(255,255,255,.13);
  border-radius: 15px;
  color: #9f9eac;
  line-height: 1.6;
}
.do-next-usage { margin: 14px 0 0; color: #858492; font-size: 13px; line-height: 1.5; }
.do-next-nexus-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 20px;
  padding: 15px 16px;
  border: 1px solid rgba(168,71,232,.22);
  border-radius: 14px;
  background: rgba(168,71,232,.065);
}
.do-next-nexus-cta span { color: #d5d2df; font-weight: 700; }
.do-next-nexus-cta a { margin: 0; text-decoration: none; white-space: nowrap; }
.profile-category-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(220px,1fr));
  gap: 14px;
}
.profile-category-card {
  position: relative;
  min-width: 0;
  padding: 21px;
  overflow: hidden;
  border: 1px solid rgba(168,71,232,.22);
  border-radius: 18px;
  background: linear-gradient(145deg,rgba(168,71,232,.065),rgba(56,102,250,.035));
}
.profile-category-card::after {
  content: "";
  position: absolute;
  inset: auto -38px -48px auto;
  width: 110px;
  height: 110px;
  border-radius: 50%;
  background: radial-gradient(circle,rgba(168,71,232,.16),transparent 68%);
  pointer-events: none;
}
.profile-category-card > span {
  color: #9d72c1;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .14em;
}
.profile-category-card strong {
  display: block;
  margin-top: 9px;
  color: #f0eaf6;
  font-size: 18px;
  line-height: 1.25;
  overflow-wrap: anywhere;
}
.profile-category-card p { margin: 9px 0 0; color: #aaa8b7; line-height: 1.55; }
@media (max-width: 650px) {
  .do-next-heading,
  .do-next-nexus-cta { align-items: stretch; flex-direction: column; }
  .do-next-heading button,
  .do-next-nexus-cta a { width: 100%; justify-content: center; text-align: center; }
}

/* 0011: give Aspirations stronger visual priority without changing content. */
.profile-aspirations-section {
  padding: 24px;
  border: 1px solid rgba(168,71,232,.3);
  border-radius: 20px;
  background:
    linear-gradient(135deg,rgba(233,54,88,.065),rgba(56,102,250,.075)),
    rgba(255,255,255,.018);
  box-shadow: inset 0 0 34px rgba(168,71,232,.035);
}
.profile-aspirations-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 17px;
}
.profile-aspirations-heading h3 {
  margin: 0;
  font-size: clamp(24px,3vw,30px);
}
.profile-aspirations-section .profile-goal-card {
  border-color: rgba(185,90,239,.25);
  background: rgba(8,8,13,.38);
  box-shadow: inset 0 0 22px rgba(168,71,232,.025);
}
.profile-aspirations-section .profile-goal-card span { color: #d6b4f1; }
.profile-aspirations-section .profile-goal-card p { color: #eceaf1; }

/* Keep private next-step guidance useful without letting it dominate the profile. */
.do-next-section {
  padding: 18px 20px;
  border: 1px solid rgba(168,71,232,.24);
  border-radius: 18px;
}
.do-next-heading { align-items: center; gap: 14px; }
.do-next-heading h3 { margin-top: 3px; font-size: 21px; }
.do-next-heading button { padding: 9px 13px; font-size: 13px; }
.do-next-tile {
  margin-top: 14px;
  padding: 18px;
  border-radius: 15px;
}
.do-next-tile h4 { margin: 7px 0 8px; font-size: clamp(20px,2.5vw,26px); }
.do-next-action { font-size: 15px; line-height: 1.55; }
.do-next-reason { margin-top: 13px; padding-top: 13px; }
.do-next-reason p { line-height: 1.5; }
.do-next-empty { margin-top: 13px; padding: 15px 16px; }
.do-next-usage {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 10px;
  margin-top: 10px;
  font-size: 12px;
  line-height: 1.4;
}
.do-next-usage strong { color: #aaa8b7; }
.do-next-usage span { color: #777684; }
.do-next-nexus-cta { margin-top: 14px; padding: 12px 14px; }
@media (max-width: 650px) {
  .profile-aspirations-section { padding: 18px; }
  .profile-aspirations-heading { display: block; }
  .profile-aspirations-heading .profile-section-kicker { display: block; margin-bottom: 5px; }
  .do-next-heading { align-items: stretch; flex-direction: column; }
  .do-next-heading button { width: 100%; }
  .do-next-nexus-cta { align-items: stretch; flex-direction: column; }
  .do-next-nexus-cta a { width: 100%; text-align: center; }
}

/* Update 0012: bounded Recent History and curated Identity History. */
.profile-history-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
}
.profile-history-heading h3 { margin: 4px 0 0; }
.history-row-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 8px;
}
.compact-button,
.history-row-actions .history-view-button {
  width: auto;
  margin: 0;
  padding: 9px 12px;
  font-size: 12px;
}
.identity-saved-pill {
  display: inline-flex !important;
  align-items: center;
  margin: 0 !important;
  padding: 6px 9px;
  border: 1px solid rgba(76,214,155,.25);
  border-radius: 999px;
  color: #9ae7c4 !important;
  background: rgba(76,214,155,.07);
  font-size: 11px !important;
  font-weight: 800;
}
.recent-history-section {
  border-color: rgba(168,71,232,.18);
  background: linear-gradient(145deg,rgba(168,71,232,.035),rgba(255,255,255,.018));
}
.legacy-history-section { opacity: .92; }
.identity-history-header .profile-heading-row {
  grid-template-columns: minmax(150px,1fr) auto minmax(150px,1fr);
}
.identity-history-header .completion-pill { justify-self: center; }
.identity-history-intro {
  border-color: rgba(168,71,232,.18);
  background: rgba(168,71,232,.045);
}
.identity-history-intro p { margin: 0; color: #b6b3c1; line-height: 1.65; }
.identity-title-dialog input { width: 100%; }

@media (max-width: 720px) {
  .profile-history-heading { align-items: stretch; flex-direction: column; }
  .profile-history-heading .secondary-button { width: 100%; }
  .profile-version-row { grid-template-columns: 1fr; }
  .history-row-actions { justify-content: flex-start; }
  .history-row-actions > * { flex: 1 1 auto; text-align: center; justify-content: center; }
  .identity-history-header .profile-heading-row { grid-template-columns: 1fr; gap: 12px; }
  .identity-history-header .profile-heading-row > * { justify-self: stretch; }
}

/* Update 0013: unified Nexus Profile organization and Business Profile presentation. */
.profile-tip-note {
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  gap: 14px;
  align-items: start;
  margin: 26px 0 4px;
  padding: 16px 18px;
  border: 1px solid rgba(168,71,232,.22);
  border-radius: 15px;
  background: linear-gradient(135deg,rgba(233,54,88,.045),rgba(56,102,250,.045));
  color: #aaa8b7;
  line-height: 1.55;
}
.profile-tip-note strong { color: #d8b8ef; white-space: nowrap; }
.profile-tip-note p { margin: 0; }
.profile-combined-section {
  display: grid;
  grid-template-columns: minmax(0,1fr) 1px minmax(0,1fr);
  gap: 24px;
  padding: 24px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 20px;
  background: rgba(255,255,255,.025);
}
.profile-combined-block { min-width: 0; }
.profile-combined-block > h3 { margin-bottom: 15px; }
.profile-combined-block .profile-priorities { padding: 17px; }
.profile-combined-block .profile-category-grid { grid-template-columns: 1fr; }
.profile-combined-divider { width: 1px; background: linear-gradient(180deg,transparent,rgba(255,255,255,.13),transparent); }
.profile-section-heading-with-action {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}
.profile-section-heading-with-action h3 { margin: 0; }
.business-profile-tone .completion-pill {
  border-color: rgba(168,220,255,.35);
  color: #ccecff;
  background: rgba(168,220,255,.07);
}
.business-profile-section.profile-tip-note { border-color: rgba(168,220,255,.22); background: rgba(168,220,255,.055); }
.business-profile-section.profile-tip-note strong { color: #bfe7ff; }
.business-offer-summary,
.business-profile-focus {
  padding: 18px;
  border: 1px solid rgba(168,220,255,.16);
  border-radius: 16px;
  background: rgba(168,220,255,.045);
}
.business-offer-summary h4,
.business-profile-focus h4 { margin: 0 0 9px; font-size: 20px; }
.business-offer-summary > p,
.business-profile-focus > p { margin: 0; color: #bec8cf; line-height: 1.6; }
.business-profile-focus small { display: block; margin-top: 10px; color: #8fc9ec; line-height: 1.5; }
.business-offer-details { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin-top: 16px; }
.business-offer-details p { margin: 0; padding: 12px; border-radius: 12px; background: rgba(0,0,0,.2); color: #c5ccd2; line-height: 1.5; }
.business-offer-details strong { display: block; margin-bottom: 5px; color: #a8dcff; font-size: 11px; text-transform: uppercase; letter-spacing: .08em; }
.business-offer-summary ol { display: grid; gap: 7px; margin: 16px 0 0; padding-left: 21px; color: #c8d0d6; line-height: 1.5; }

@media (max-width: 760px) {
  .profile-combined-section { grid-template-columns: 1fr; gap: 20px; padding: 18px; }
  .profile-combined-divider { width: 100%; height: 1px; }
  .profile-section-heading-with-action { align-items: stretch; flex-direction: column; }
  .profile-section-heading-with-action button { width: 100%; }
  .profile-tip-note { grid-template-columns: 1fr; gap: 6px; }
  .business-offer-details { grid-template-columns: 1fr; }
}

/* Update 0014: top profile tips and compact nested differentiator. */
.profile-tip-full-width {
  width: 100%;
  max-width: none;
  margin: 18px 0 22px;
}
.business-offer-section { padding: 24px; }
.business-differentiator-inset {
  margin-top: 17px;
  padding: 14px 16px;
  border: 1px solid rgba(168,220,255,.14);
  border-radius: 14px;
  background: rgba(0,0,0,.17);
}
.business-differentiator-inset h4 { margin: 5px 0 7px; font-size: 1rem; }
.business-differentiator-inset p { margin: 0; color: #c3cbd1; line-height: 1.5; }
.business-profile-focus .avatar-name-line { display: flex; align-items: baseline; flex-wrap: wrap; gap: 7px; }
.business-profile-focus .avatar-name-line h4 { margin-bottom: 0; }
.business-profile-focus .avatar-family-status { margin: 4px 0 8px; color: #aeb8bf; }

/* 0.2.4 simplified Lighthouse Offer and Core Copy presentation. */
.business-offer-title-row { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.business-offer-title-row h4 { margin-bottom: 0; }
.business-offer-title-row > strong { color: #bfe7ff; font-size: 1rem; }
.business-offer-subheadline { margin-top: 10px !important; color: #d9effc !important; font-weight: 700; }
.business-offer-item-list { display: grid; gap: 10px; margin-top: 18px; }
.business-offer-item-list article { padding: 13px 15px; border-radius: 13px; background: rgba(168,220,255,.055); }
.business-offer-item-list article > strong { color: #dff3ff; }
.business-offer-item-list article p { margin: 5px 0 0; color: #bfc9cf; line-height: 1.5; }
.business-core-copy-preview { max-height: 520px; overflow: auto; padding: 17px; border-radius: 14px; background: rgba(0,0,0,.18); color: #c8d0d6; line-height: 1.65; }

/* Business Profile banks, Core Copy actions, and generated Sales Copy. */
.business-profile-section-heading { display: flex; justify-content: space-between; align-items: flex-start; gap: 18px; }
.business-section-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 9px; }
.business-section-actions .primary-button,
.business-section-actions .secondary-button { width: auto; max-width: none; margin: 0; padding: 11px 14px; }
.business-bank-list { display: grid; gap: 10px; margin-top: 16px; }
.business-bank-list article { display: grid; grid-template-columns: 34px minmax(0,1fr); gap: 12px; padding: 14px; border: 1px solid rgba(168,220,255,.12); border-radius: 14px; background: rgba(168,220,255,.03); }
.business-bank-list article > span { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; color: #061018; background: #a8dcff; font-weight: 900; }
.business-bank-list strong { display: block; }
.business-bank-list p { margin: 5px 0 0; color: #b8bbc4; line-height: 1.5; }
.sales-copy-output { border-color: rgba(168,220,255,.24); background: radial-gradient(circle at top right,rgba(168,220,255,.08),transparent 35%),rgba(255,255,255,.025); }
.sales-copy-sections { display: grid; gap: 12px; margin-top: 18px; }
.sales-copy-sections article { padding: 17px; border: 1px solid rgba(255,255,255,.08); border-radius: 15px; background: rgba(255,255,255,.025); }
.sales-copy-sections h4 { margin: 0 0 8px; color: #dff3ff; }
.sales-copy-sections p { margin: 0; color: #c8cbd3; line-height: 1.65; }
.sales-copy-generator { margin-top: 24px; border-color: rgba(168,220,255,.25); }
.sales-copy-generator fieldset { margin: 22px 0 0; padding: 0; border: 0; }
.sales-copy-generator legend { margin-bottom: 10px; font-weight: 900; }
.sales-copy-option-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; }
.sales-copy-option-grid label { position: relative; margin: 0; }
.sales-copy-option-grid input { position: absolute; opacity: 0; }
.sales-copy-option-grid span { display: grid; place-items: center; min-height: 52px; padding: 11px; border: 1px solid rgba(255,255,255,.1); border-radius: 13px; background: rgba(255,255,255,.03); cursor: pointer; }
.sales-copy-option-grid input:checked + span { border-color: rgba(168,220,255,.55); color: #eaf8ff; background: rgba(168,220,255,.09); }
@media (max-width: 720px) {
  .business-profile-section-heading { flex-direction: column; }
  .business-section-actions { justify-content: flex-start; }
  .sales-copy-option-grid { grid-template-columns: 1fr; }
}

/* 0.3.0 profile actions and Skill Bank. */
.profile-heading-actions-right { display:flex; align-items:center; justify-content:space-between; gap:18px; }
.profile-top-actions { display:flex; align-items:center; justify-content:flex-end; gap:9px; }
.skill-bank-profile-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:18px; }
.skill-bank-profile-grid article { padding:15px; border:1px solid rgba(255,255,255,.08); border-radius:14px; background:rgba(255,255,255,.03); }
.skill-bank-profile-grid article > div:first-child { display:flex; justify-content:space-between; gap:12px; }
.skill-bank-profile-grid article span { color:#ffc16a; font-weight:800; }
.skill-level-track { height:7px; margin-top:11px; overflow:hidden; border-radius:99px; background:rgba(255,255,255,.08); }
.skill-level-track span { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#ef3c5c,#a847e8,#416cff); }
@media(max-width:650px){.profile-heading-actions-right{align-items:flex-start}.skill-bank-profile-grid{grid-template-columns:1fr}}

/* 0.3.1 profile controls, privacy scopes, and progress status */
.profile-control-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;margin:0 0 20px}.profile-control-row .profile-type-toggle{margin:0;justify-self:center}.profile-control-row .profile-top-actions{justify-self:end;display:flex;align-items:center;gap:9px}.profile-control-balance{min-width:1px}.profile-progress-pill{display:inline-flex;align-items:center;justify-content:center;align-self:center;margin:12px auto 0;padding:7px 13px;border:1px solid;border-radius:999px;font-size:.74rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.profile-progress-pill.not-started{color:#ff7182;border-color:rgba(255,74,96,.32);background:rgba(255,57,79,.08);box-shadow:0 0 18px rgba(255,58,78,.08)}.profile-progress-pill.in-progress{color:#ffb254;border-color:rgba(255,166,65,.34);background:rgba(255,146,44,.09);box-shadow:0 0 18px rgba(255,145,44,.1)}.profile-progress-pill.complete{color:#72e7a8;border-color:rgba(82,218,145,.34);background:rgba(50,195,117,.09);box-shadow:0 0 18px rgba(62,210,135,.1)}.profile-scope-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}.profile-scope-option{display:grid;gap:8px;min-height:132px;padding:18px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.035);color:#f4f1f7;text-align:left}.profile-scope-option span{color:#aaa6b2;line-height:1.45}.profile-scope-option:hover,.profile-scope-option.selected{border-color:rgba(154,82,255,.5);box-shadow:0 0 24px rgba(129,72,255,.13)}.profile-share-scope-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.profile-share-scope-summary{margin-bottom:16px;padding:16px;border:1px solid rgba(163,96,255,.22);border-radius:15px;background:rgba(126,73,255,.055)}.profile-share-scope-summary>span{display:block;color:#a8a3b2;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.profile-share-scope-summary>strong{display:block;margin-top:5px;font-size:1.05rem}.profile-share-scope-summary>p{margin:7px 0 0;color:#aaa6b2;line-height:1.45}@media(max-width:720px){.profile-control-row{grid-template-columns:1fr auto}.profile-control-row .profile-type-toggle{grid-column:1/-1;grid-row:1}.profile-control-row .profile-control-balance{display:none}.profile-control-row .profile-top-actions{grid-column:2;grid-row:2}.profile-scope-options,.profile-share-scope-actions{grid-template-columns:1fr}}

/* Update 0.3.2: compact share-link controls and privacy nested in the current scope. */
.profile-share-scope-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px}
.profile-share-link-field{position:relative;display:flex;align-items:center}
.profile-share-link-field input{width:100%;padding-right:52px}
.profile-copy-link-button{position:absolute;right:6px;display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(180,91,245,.3);border-radius:9px;color:#e6d4f6;background:rgba(168,71,232,.08);font-size:1.1rem}
.profile-copy-link-button:hover{border-color:rgba(201,119,255,.7);background:rgba(168,71,232,.15)}
.profile-regenerate-link{margin-top:12px}
.profile-share-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}
@media(max-width:650px){.profile-share-scope-summary{grid-template-columns:1fr}.profile-share-scope-summary button{justify-self:start}.profile-share-actions{grid-template-columns:1fr}}

/* 0.4.2: make an affirmed passion unmistakably celebratory while preserving layout. */
.passion-confirmed-glow{border-color:rgba(225,101,255,.72);box-shadow:0 0 0 1px rgba(255,93,184,.16),0 0 54px rgba(176,69,255,.36),inset 0 0 42px rgba(67,109,255,.12);animation:affirmedPassionPulse 2.8s ease-in-out infinite}
.passion-confirmed-glow::after{content:"✦";position:absolute;right:24px;top:18px;z-index:1;color:#fff;font-size:28px;text-shadow:0 0 10px #fff,0 0 26px #d84cff;animation:affirmedSpark 2.1s ease-in-out infinite}
.confirmed-passion-badge{background:linear-gradient(105deg,rgba(255,48,132,.22),rgba(126,70,255,.25));border-color:rgba(235,116,255,.62);color:#fff;box-shadow:0 0 24px rgba(189,70,255,.24)}
@keyframes affirmedPassionPulse{0%,100%{transform:translateY(0);box-shadow:0 0 0 1px rgba(255,93,184,.12),0 0 35px rgba(176,69,255,.24),inset 0 0 32px rgba(67,109,255,.09)}50%{transform:translateY(-2px);box-shadow:0 0 0 1px rgba(255,116,210,.25),0 0 70px rgba(187,71,255,.48),inset 0 0 55px rgba(67,109,255,.16)}}
@keyframes affirmedSpark{0%,100%{transform:scale(.8) rotate(0);opacity:.65}50%{transform:scale(1.25) rotate(18deg);opacity:1}}
@media(prefers-reduced-motion:reduce){.passion-confirmed-glow,.passion-confirmed-glow::after{animation:none}}


/* 0.4.3: energetic background-only affirmation effects. Content remains fixed. */
.passion-confirmed-glow{position:relative;overflow:hidden;animation:affirmedFrame043 1.65s ease-in-out infinite!important}
.passion-confirmed-glow::before{inset:-35%!important;background:conic-gradient(from 0deg,transparent 0 18%,rgba(255,72,187,.28) 25%,transparent 34% 53%,rgba(93,142,255,.25) 62%,transparent 72%)!important;animation:affirmedSweep043 2.4s linear infinite!important;transform-origin:center}
.passion-confirmed-glow::after{content:""!important;inset:0!important;background:radial-gradient(circle at 16% 18%,rgba(255,255,255,.22) 0 1px,transparent 2px),radial-gradient(circle at 78% 28%,rgba(255,137,227,.28) 0 1.5px,transparent 2.5px),radial-gradient(circle at 62% 76%,rgba(124,169,255,.26) 0 1px,transparent 2px)!important;background-size:58px 58px,83px 83px,71px 71px!important;animation:affirmedStars043 1.8s steps(2,end) infinite!important;pointer-events:none}
.passion-confirmed-glow>*{position:relative;z-index:2;transform:none!important}
.affirmed-passion-name{display:inline-flex;align-items:center;gap:12px;position:relative}
.passion-sparkles{display:inline-flex;gap:5px;color:#fff6a8;text-shadow:0 0 8px #fff,0 0 18px #ff4fcb,0 0 28px #5b92ff}
.passion-sparkles i{font-style:normal;animation:passionSparkle043 .9s ease-in-out infinite}.passion-sparkles i:nth-child(2){animation-delay:-.3s;color:#fff}.passion-sparkles i:nth-child(3){animation-delay:-.6s;color:#a9d3ff}
@keyframes affirmedFrame043{0%,100%{box-shadow:0 0 0 1px rgba(255,93,184,.16),0 0 38px rgba(176,69,255,.3),inset 0 0 32px rgba(67,109,255,.1)}50%{box-shadow:0 0 0 1px rgba(255,161,226,.32),0 0 68px rgba(190,70,255,.46),inset 0 0 48px rgba(67,109,255,.18)}}
@keyframes affirmedSweep043{to{transform:rotate(360deg)}}@keyframes affirmedStars043{50%{opacity:.35;background-position:12px -8px,-14px 10px,8px 14px}}@keyframes passionSparkle043{0%,100%{opacity:.35;filter:brightness(.8);transform:scale(.72)}50%{opacity:1;filter:brightness(1.5);transform:scale(1.2)}}
@media(prefers-reduced-motion:reduce){.passion-confirmed-glow,.passion-confirmed-glow::before,.passion-confirmed-glow::after,.passion-sparkles i{animation:none!important}}

/* Simpler, stronger offer hierarchy. */
.business-offer-section{border-color:rgba(219,111,255,.38);box-shadow:0 0 42px rgba(157,71,255,.16),inset 0 0 35px rgba(81,104,255,.06);background:linear-gradient(145deg,rgba(73,32,102,.2),rgba(17,17,25,.93))}
.business-offer-summary{display:grid;gap:16px;padding:22px;border:1px solid rgba(255,255,255,.09);border-radius:18px;background:rgba(8,8,15,.38)}
.business-offer-title-row{align-items:flex-start;gap:16px}.business-offer-title-row h4{font-size:clamp(1.25rem,2.4vw,1.75rem);line-height:1.18}.business-offer-title-row strong{white-space:nowrap;padding:8px 12px;border-radius:999px;background:linear-gradient(100deg,rgba(220,74,255,.2),rgba(74,129,255,.2));border:1px solid rgba(220,140,255,.28)}
.business-offer-subheadline{font-size:1.04rem;color:#eee7f6!important}
.business-offer-item-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}.business-offer-item-list article{padding:14px 15px;border-radius:13px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.075)}
.business-differentiator-inset{margin-top:18px;padding:18px 20px;border-left:3px solid #cf67ff;border-radius:0 14px 14px 0;background:linear-gradient(90deg,rgba(190,71,255,.12),rgba(75,119,255,.04))}

/* 0.4.4 affirmed passion: stationary content, moving background glows, twinkling passion text */
.passion-confirmed-glow{isolation:isolate;overflow:hidden!important;animation:none!important}
.passion-confirmed-glow::before{content:""!important;position:absolute!important;inset:-30%!important;background:radial-gradient(circle at 22% 35%,rgba(255,72,187,.46),transparent 30%),radial-gradient(circle at 78% 60%,rgba(93,142,255,.42),transparent 34%),radial-gradient(circle at 52% 22%,rgba(177,74,255,.3),transparent 26%)!important;filter:blur(22px)!important;animation:affirmedGlowDrift044 4.8s ease-in-out infinite alternate!important;transform:none!important;z-index:0!important}
.passion-confirmed-glow::after{content:""!important;position:absolute!important;inset:-18%!important;background:radial-gradient(circle at 68% 28%,rgba(255,150,225,.28),transparent 24%),radial-gradient(circle at 32% 74%,rgba(111,157,255,.26),transparent 28%)!important;background-size:auto!important;filter:blur(28px)!important;animation:affirmedGlowDriftB044 6.2s ease-in-out infinite alternate!important;z-index:0!important}
.passion-confirmed-glow>*{position:relative;z-index:2;transform:none!important}
.passion-sparkles{display:none!important}
.affirmed-passion-name{animation:affirmedTextTwinkle044 1.15s ease-in-out infinite alternate!important;text-shadow:0 0 8px rgba(255,255,255,.28),0 0 22px rgba(255,72,187,.58),0 0 40px rgba(93,142,255,.3)}
@keyframes affirmedGlowDrift044{to{transform:translate3d(16%,8%,0) scale(1.12)}}
@keyframes affirmedGlowDriftB044{to{transform:translate3d(-14%,-10%,0) scale(1.15)}}
@keyframes affirmedTextTwinkle044{0%,22%{filter:brightness(1)}48%{filter:brightness(1.38)}62%{filter:brightness(1.08)}100%{filter:brightness(1.28)}}
@media(prefers-reduced-motion:reduce){.passion-confirmed-glow::before,.passion-confirmed-glow::after,.affirmed-passion-name{animation:none!important}}

/* Nexus 0.5.0: faster living glows and stationary per-letter star twinkles. */
.passion-confirmed-glow{
  background:linear-gradient(135deg,rgba(217,54,114,.13),rgba(108,79,245,.16),rgba(56,102,250,.13));
  box-shadow:0 0 0 1px rgba(255,93,184,.18),0 0 58px rgba(176,69,255,.35),inset 0 0 48px rgba(67,109,255,.14)
}
.passion-confirmed-glow::before{
  inset:-22%!important;
  background:
    radial-gradient(circle at 12% 38%,rgba(255,72,187,.58),transparent 27%),
    radial-gradient(circle at 82% 68%,rgba(93,142,255,.54),transparent 31%),
    radial-gradient(circle at 58% 16%,rgba(177,74,255,.45),transparent 25%),
    radial-gradient(circle at 42% 82%,rgba(255,45,112,.3),transparent 24%)!important;
  filter:blur(18px) saturate(1.18)!important;
  animation:affirmedGlowDrift050 2.7s cubic-bezier(.45,.02,.3,1) infinite alternate!important
}
.passion-confirmed-glow::after{
  inset:-12%!important;
  background:
    radial-gradient(circle at 72% 24%,rgba(255,185,231,.38),transparent 20%),
    radial-gradient(circle at 24% 70%,rgba(119,170,255,.38),transparent 23%),
    radial-gradient(circle at 50% 48%,rgba(204,91,255,.24),transparent 26%)!important;
  filter:blur(22px)!important;
  animation:affirmedGlowDriftB050 3.4s cubic-bezier(.42,0,.28,1) infinite alternate!important
}
.affirmed-passion-name{display:block;animation:none!important;filter:none!important}
.affirmed-letter-run{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:.01em}
.affirmed-letter-space{display:inline-block;width:.3em}
.affirmed-letter{position:relative;display:inline-block;color:inherit;text-shadow:0 0 9px rgba(255,255,255,.22),0 0 23px rgba(255,72,187,.42),0 0 38px rgba(93,142,255,.24)}
.affirmed-letter::before,
.affirmed-letter::after{
  content:"";
  position:absolute;
  left:calc(14% + (var(--letter-index) % 3) * 28%);
  top:calc(-.16em - (var(--letter-index) % 2) * .08em);
  width:.13em;
  height:.13em;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 .12em #fff,0 0 .26em #ff67c8,0 0 .4em rgba(112,159,255,.86);
  opacity:.24;
  transform:scale(.42);
  animation:affirmedLetterStar050 1.45s ease-in-out infinite;
  animation-delay:calc(var(--letter-index) * -83ms)
}
.affirmed-letter::after{left:auto;right:5%;top:56%;width:.08em;height:.08em;animation-duration:1.9s;animation-delay:calc(var(--letter-index) * -121ms - .35s)}
@keyframes affirmedGlowDrift050{0%{transform:translate3d(-8%,-5%,0) scale(.94)}55%{transform:translate3d(8%,5%,0) scale(1.13)}100%{transform:translate3d(-1%,10%,0) scale(1.04)}}
@keyframes affirmedGlowDriftB050{0%{transform:translate3d(8%,8%,0) scale(1.05)}100%{transform:translate3d(-12%,-9%,0) scale(1.2)}}
@keyframes affirmedLetterStar050{0%,62%,100%{opacity:.18;transform:scale(.38)}72%{opacity:1;transform:scale(1.3)}82%{opacity:.48;transform:scale(.68)}}
@media(prefers-reduced-motion:reduce){.passion-confirmed-glow::before,.passion-confirmed-glow::after,.affirmed-letter::before,.affirmed-letter::after{animation:none!important}.affirmed-letter::before{opacity:.65;transform:scale(.8)}}

/* Nexus 0.5.1: randomized, non-sequential affirmed-passion star nodes. */
.affirmed-letter::before,
.affirmed-letter::after{
  left:var(--star-a-x)!important;
  right:auto!important;
  top:var(--star-a-y)!important;
  width:var(--star-a-size)!important;
  height:var(--star-a-size)!important;
  opacity:.16;
  transform:scale(.42);
  --twinkle-brightness:var(--star-a-brightness,1);
  animation-name:affirmedLetterStar051!important;
  animation-duration:var(--star-a-duration,1.7s)!important;
  animation-delay:var(--star-a-delay,-.4s)!important;
  animation-timing-function:ease-in-out!important;
  animation-iteration-count:infinite!important
}
.affirmed-letter::after{
  left:var(--star-b-x)!important;
  top:var(--star-b-y)!important;
  width:var(--star-b-size)!important;
  height:var(--star-b-size)!important;
  --twinkle-brightness:var(--star-b-brightness,.9);
  animation-duration:var(--star-b-duration,2.1s)!important;
  animation-delay:var(--star-b-delay,-.8s)!important
}
@keyframes affirmedLetterStar051{
  0%,56%,100%{opacity:calc(.11 * var(--twinkle-brightness));transform:scale(.34)}
  68%{opacity:calc(.82 * var(--twinkle-brightness));transform:scale(1.05)}
  75%{opacity:var(--twinkle-brightness);transform:scale(1.32)}
  84%{opacity:calc(.34 * var(--twinkle-brightness));transform:scale(.65)}
}
@media(prefers-reduced-motion:reduce){
  .affirmed-letter::before,.affirmed-letter::after{animation:none!important;opacity:.52!important;transform:scale(.72)!important}
}

/* Nexus 0.6.0: reusable result disclosures and the skills-based Inclination. */
.expandable-result{position:relative;overflow:hidden;isolation:isolate}
.expandable-result-main{position:relative;z-index:2}
.expandable-result-trigger{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:18px;padding:12px 14px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(4,5,12,.32);color:#f7f2ff;font:inherit;font-weight:800;cursor:pointer;transition:border-color .22s ease,background .22s ease,box-shadow .22s ease}
.expandable-result-trigger:hover,.expandable-result-trigger:focus-visible,.expandable-result.is-open .expandable-result-trigger{border-color:rgba(213,133,255,.46);background:rgba(111,55,176,.13);box-shadow:0 0 22px rgba(112,71,255,.14)}
.expandable-result-chevron{font-size:1.15rem;transition:transform .28s ease}.expandable-result.is-open .expandable-result-chevron{transform:rotate(180deg)}
.expandable-result-details{position:relative;z-index:2;max-height:0;opacity:0;overflow:hidden;transform:translateY(-8px);transition:max-height .34s ease,opacity .25s ease,transform .3s ease}
.expandable-result-details.is-open{max-height:2400px;opacity:1;transform:translateY(0)}
.expandable-result-badge{display:inline-flex;margin-top:13px;padding:7px 10px;border:1px solid rgba(177,137,255,.26);border-radius:999px;background:rgba(96,75,190,.12);color:#d9ceff;font-size:.75rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.inclination-result{background:linear-gradient(135deg,rgba(217,54,114,.1),rgba(108,79,245,.13),rgba(56,102,250,.1));box-shadow:0 0 0 1px rgba(151,109,255,.16),0 0 32px rgba(126,79,255,.18),inset 0 0 34px rgba(67,109,255,.08)}
.inclination-result::before,.inclination-result::after{content:"";position:absolute;z-index:0;inset:-22%;pointer-events:none;filter:blur(20px);background:radial-gradient(circle at 18% 35%,rgba(255,72,187,.38),transparent 28%),radial-gradient(circle at 78% 65%,rgba(93,142,255,.34),transparent 32%),radial-gradient(circle at 54% 18%,rgba(177,74,255,.28),transparent 26%);animation:inclinationGlowDrift060 5.4s cubic-bezier(.45,.02,.3,1) infinite alternate}
.inclination-result::after{inset:-12%;filter:blur(25px);animation:inclinationGlowDriftB060 6.8s cubic-bezier(.42,0,.28,1) infinite alternate}
.inclination-result h3{position:relative;z-index:2;margin:.35rem 0 .7rem;font-size:clamp(1.65rem,4vw,2.7rem);line-height:1.08}
.inclination-letter::before,.inclination-letter::after{display:none!important}
.inclination-letter-spark::before{display:block!important;animation-duration:calc(var(--star-a-duration,1.7s) * 2)!important;animation-delay:var(--star-a-delay,-.4s)!important}
.inclination-detail-grid{display:grid;gap:16px;padding-top:18px}.inclination-detail-grid>div:not(.skill-bank-section){padding:16px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(8,8,16,.3)}
.inclination-detail-grid ul{margin:10px 0 0;padding-left:20px;display:grid;gap:8px;color:#d9d3e5}.inclination-detail-grid .skill-bank-section{margin:0;background:rgba(8,8,16,.24)}
@keyframes inclinationGlowDrift060{0%{transform:translate3d(-8%,-5%,0) scale(.94)}100%{transform:translate3d(8%,7%,0) scale(1.1)}}
@keyframes inclinationGlowDriftB060{0%{transform:translate3d(7%,7%,0) scale(1.04)}100%{transform:translate3d(-10%,-8%,0) scale(1.16)}}
@media(hover:hover){.inclination-result:not(.is-open) .expandable-result-trigger{opacity:.72}.inclination-result:hover .expandable-result-trigger,.inclination-result:focus-within .expandable-result-trigger{opacity:1}}
@media(prefers-reduced-motion:reduce){.inclination-result::before,.inclination-result::after,.inclination-letter-spark::before{animation:none!important}.expandable-result-details,.expandable-result-chevron{transition:none}}
