.psad-dashboard-menu {
  position: relative;
  z-index: 10020;
  display: inline-flex !important;
  align-items: center;
  gap: 12px;
  overflow: visible !important;
}

/* Member profile: private account details inside the dashboard. */
.psad-member-profile { max-width: 1180px; margin: 0 auto; padding: clamp(20px,3vw,38px); background: #f7f8fb !important; }
.psad-member-profile-form { display: grid; gap: 18px; }
.psad-member-profile-head { display: flex; align-items: end; justify-content: space-between; gap: 24px; }
.psad-member-profile-head h1 { margin: 4px 0 5px; color: #211a2b; font-size: clamp(29px,4vw,42px); }
.psad-member-profile-head p { max-width: 680px; margin: 0; color: #6d6578; }
.psad-member-profile button[type="submit"] { min-height: 42px; padding: 10px 17px; color: #fff; border: 0; border-radius: 9px; background: #330099; font: inherit; font-weight: 750; }
.psad-member-profile button[disabled] { opacity: .65; }
.psad-profile-notice { padding: 14px 17px; color: #265f72; border: 1px solid #9edcec; border-left: 4px solid #31b7d8; border-radius: 10px; background: #e5f8fc; }
.psad-profile-section { display: grid; grid-template-columns: 180px minmax(0,1fr); gap: clamp(20px,4vw,44px); padding: clamp(20px,3vw,30px); border: 1px solid #e4deec; border-radius: 16px; background: #fff; box-shadow: 0 10px 30px rgba(42,25,71,.045); }
.psad-profile-section.is-single { display: block; }
.psad-profile-section h2 { margin: 0 0 14px; color: #330099; font-size: 22px; }
.psad-profile-section h2 small { color: #6d6578; font-size: 13px; font-weight: 500; }
.psad-profile-section>p { margin: -7px 0 15px; color: #6d6578; }
.psad-profile-avatar { display: flex; align-items: center; flex-direction: column; gap: 9px; }
.psad-profile-avatar img { display: block; width: 150px; height: 150px; object-fit: cover; border: 7px solid #f1ecfa; border-radius: 50%; background: #f1ecfa; }
.psad-profile-avatar small { color: #6d6578; }
.psad-profile-fields,.psad-profile-grid { display: grid; gap: 15px; }
.psad-profile-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
.psad-profile-grid.is-name-grid { grid-template-columns: .55fr 1fr 1fr; }
.psad-profile-grid.is-phone-grid>label>span { display: grid; grid-template-columns: minmax(150px,.8fr) minmax(160px,1.2fr); gap: 8px; }
.psad-member-profile label,.psad-member-profile fieldset { display: grid; gap: 7px; margin: 0; color: #342b40; font-weight: 650; }
.psad-member-profile label>small { color: #6d6578; font-weight: 500; }
.psad-member-profile input,.psad-member-profile select,.psad-member-profile textarea { width: 100%; min-height: 44px; padding: 10px 12px; color: #211a2b; border: 1px solid #dcd5e6; border-radius: 8px; background: #fff; font: inherit; font-weight: 500; }
.psad-member-profile select[multiple] { min-height: 132px; }
.psad-member-profile input:focus,.psad-member-profile select:focus,.psad-member-profile textarea:focus { border-color: #6030b8; outline: 3px solid rgba(96,48,184,.13); }
.psad-member-profile input:disabled { color: #6d6578; background: #f1f0f3; }
.psad-profile-email { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 12px; }
.psad-profile-email a { color: #330099; font-weight: 750; }
.psad-profile-account-grid { display: grid; grid-template-columns: minmax(210px,.65fr) minmax(280px,1.35fr); gap: 16px; }
.psad-profile-email-link { display: inline-block; margin-top: 12px; color: #330099; font-weight: 750; }
.psad-member-profile fieldset { padding: 0; border: 0; }
.psad-member-profile legend { margin-bottom: 7px; color: #342b40; font-weight: 650; }
.psad-voip-apps { display: flex; flex-wrap: wrap; gap: 8px; }
.psad-voip-apps label { display: inline-flex; min-height: 40px; align-items: center; grid-template-columns: auto 1fr; padding: 8px 11px; border: 1px solid #e2ddea; border-radius: 8px; background: #f8f6fb; font-weight: 600; }
.psad-voip-apps input { width: 18px; min-height: 18px; margin: 0; }
.psad-member-profile-foot { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.psad-profile-feedback { min-height: 22px; color: #6d6578; }
.psad-profile-feedback.is-success { color: #176b70; font-weight: 700; }
.psad-profile-feedback.is-error { color: #a51c30; font-weight: 700; }

/* Membership account: plan, dates, Mollie reference and account actions. */
.psad-member-membership { max-width: 1180px; margin: 0 auto; padding: clamp(22px,4vw,42px); background: #f7f8fb !important; }
.psad-member-membership > header h1 { margin: 4px 0 6px; color: #211a2b; font-size: clamp(30px,4vw,44px); }
.psad-member-membership > header p:last-child { color: #6d6578; }
.psad-membership-feedback { margin: 22px 0; padding: 14px 17px; color: #342b40; border-left: 4px solid #6030b8; border-radius: 8px; background: #f0ebf8; }
.psad-membership-feedback.is-success { border-left-color: #218c55; background: #eaf7f0; }
.psad-membership-summary { display: grid; grid-template-columns: minmax(250px,.8fr) minmax(420px,1.7fr); gap: clamp(24px,4vw,48px); margin-top: 25px; padding: clamp(22px,4vw,38px); border: 1px solid #e2dce9; border-radius: 18px; background: #fff; box-shadow: 0 14px 38px rgba(42,25,71,.06); }
.psad-membership-plan span { color: #ff7900; font-size: 12px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.psad-membership-plan h2 { margin: 7px 0 5px; color: #330099; font-size: clamp(25px,3vw,36px); }
.psad-membership-plan p { margin: 0 0 14px; color: #6d6578; }
.psad-membership-plan b { color: #211a2b; font-size: 20px; }
.psad-membership-summary dl { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; margin: 0; }
.psad-membership-summary dl div { padding: 14px 16px; border-radius: 10px; background: #f7f4fb; }
.psad-membership-summary dt { color: #6d6578; font-size: 12px; font-weight: 750; text-transform: uppercase; }
.psad-membership-summary dd { overflow-wrap: anywhere; margin: 5px 0 0; color: #211a2b; font-weight: 750; }
.psad-membership-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 20px; }
.psad-membership-action { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; padding: 10px 17px; color: #330099; border: 1px solid #d9d1e3; border-radius: 9px; background: #fff; font-weight: 780; text-decoration: none; }
.psad-membership-action.is-primary { color: #fff; border-color: #330099; background: #330099; }
.psad-membership-action.is-danger { color: #963132; border-color: #e6c9c9; }
.psad-membership-conditions { max-width: 850px; margin: 20px 0 0; color: #6d6578; font-size: 14px; }
.psad-membership-conditions a { color: #330099; font-weight: 750; }

@media (max-width: 900px) {
  .psad-profile-section { grid-template-columns: 130px minmax(0,1fr); }
  .psad-profile-avatar img { width: 112px; height: 112px; }
  .psad-profile-grid.is-name-grid { grid-template-columns: .7fr 1fr; }
  .psad-profile-grid.is-name-grid label:last-child { grid-column: 1/-1; }
  .psad-profile-grid.is-phone-grid { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  .psad-member-profile { padding: 16px 12px; }
  .psad-member-profile-head { align-items: stretch; flex-direction: column; }
  .psad-member-profile-head button { width: 100%; }
  .psad-profile-section { grid-template-columns: 1fr; padding: 18px 15px; }
  .psad-profile-avatar { align-items: flex-start; flex-direction: row; }
  .psad-profile-avatar img { width: 82px; height: 82px; }
  .psad-profile-grid,.psad-profile-grid.is-name-grid { grid-template-columns: 1fr; }
  .psad-profile-grid.is-name-grid label:last-child { grid-column: auto; }
  .psad-profile-grid.is-phone-grid>label>span { grid-template-columns: 1fr; }
  .psad-profile-email { grid-template-columns: 1fr; }
	.psad-profile-account-grid,.psad-membership-summary,.psad-membership-summary dl { grid-template-columns: 1fr; }
	.psad-membership-actions { flex-direction: column; }
	.psad-membership-action { width: 100%; }
  .psad-member-profile-foot { align-items: stretch; flex-direction: column; }
  .psad-member-profile-foot button { width: 100%; }
}

.psad-dashboard-submenu {
  position: absolute;
  z-index: 10021;
  top: calc(100% + 12px);
  right: 0;
  min-width: 220px;
  padding: 14px;
  visibility: hidden;
  opacity: 0;
  transform: translateY(-5px);
  transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
  background: #fff;
  border: 1px solid rgba(16, 44, 60, .14);
  border-radius: 16px;
  box-shadow: 0 18px 42px rgba(35, 11, 78, .2);
}

.psad-dashboard-submenu::before {
  content: '';
  position: absolute;
  right: 0;
  bottom: 100%;
  width: 100%;
  height: 14px;
}

.psad-dashboard-menu:hover .psad-dashboard-submenu,
.psad-dashboard-menu:focus-within .psad-dashboard-submenu {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
}

.psad-dashboard-submenu a {
  display: block;
  padding: 13px 20px;
  color: #330099 !important;
  text-decoration: none !important;
  white-space: nowrap;
  border-radius: 9px;
  font-size: 17px;
  font-weight: 750;
}

.psad-dashboard-submenu a:hover,
.psad-dashboard-submenu a:focus {
  color: #330099 !important;
  background: #f1ecfa;
}

.psad-message-notice {
  position: relative;
  display: inline-grid !important;
  width: 28px;
  height: 28px;
  margin-right: 2px;
  place-items: center;
  color: #fff !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 50%;
  box-shadow: none !important;
  text-decoration: none !important;
}

.psad-message-notice span { font-size: 20px; font-weight: 800; line-height: 1; }
.psad-message-notice b {
  position: absolute;
  top: -4px;
  right: -5px;
  min-width: 18px;
  height: 18px;
  padding: 0 4px;
  color: #330099;
  background: #fff;
  border: 2px solid #330099;
  border-radius: 10px;
  font-size: 10px;
  line-height: 14px;
  text-align: center;
}

.ps-dashboard-tabs {
  position: sticky;
  z-index: 700;
  top: 0;
  background: #fff;
  box-shadow: 0 7px 18px rgba(30, 18, 58, .07);
}

/* Canonical member workspace: the old Houzez left sidebar is redundant and
   was also forcing the listing editor into a narrow, offset canvas. */
body.psad-member-workspace .dashboard-sidebar,
body.psad-member-workspace .psad-obsolete-dashboard-sidebar {
  display: none !important;
}

body.psad-member-workspace .dashboard-right {
  width: 100% !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
}

body.psad-member-workspace .dashboard-right .dashboard-content {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
}

.psad-member-dashboard-page {
  min-height: 660px;
  background: #f7f8fb;
}

.psad-member-dashboard-page .ps-dashboard-tabs {
  display: flex;
  gap: clamp(18px, 4vw, 72px);
  align-items: center;
  justify-content: center;
  overflow-x: auto;
  padding: 0 clamp(18px, 4vw, 56px);
  white-space: nowrap;
}

.psad-member-dashboard-page .ps-dashboard-tabs a {
  position: relative;
  padding: 20px 3px;
  color: #211a2b !important;
  font-size: 15px;
  font-weight: 800;
  text-decoration: none !important;
}

.psad-member-dashboard-page .ps-dashboard-tabs a::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 4px;
  content: '';
  background: #ff9700;
  opacity: 0;
}

.psad-member-dashboard-page .ps-dashboard-tabs a.is-active {
  color: #330099 !important;
}

.psad-member-dashboard-page .ps-dashboard-tabs a.is-active::after {
  opacity: 1;
}

.psad-member-dashboard-page > .dashboard-content {
  min-height: 580px;
  padding: clamp(24px, 4vw, 56px) !important;
}

.psad-member-dashboard-page .ps-dashboard-panel {
  width: min(1240px, 100%);
  margin: 0 auto;
}

.psad-dashboard-section-head {
  display: flex;
  gap: 24px;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 24px;
}
.psad-dashboard-section-head h1 { margin: 3px 0 6px; color: #211a2b; font-size: clamp(29px,4vw,42px); line-height: 1.08; }
.psad-dashboard-section-head p:last-child { max-width: 760px; margin: 0; color: #64717c; line-height: 1.55; }
.psad-outline-action { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; padding: 10px 17px; color: #330099 !important; border: 1px solid #cfc3dd; border-radius: 9px; background: #fff; font-weight: 800; text-decoration: none !important; white-space: nowrap; }

/* One clean, status-independent member property overview. */
.psad-member-properties { max-width: 1240px; margin: 0 auto; }
.psad-member-properties-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 24px; }
.psad-member-properties-head h1 { margin: 3px 0 6px; color: #211a2b; font-size: clamp(28px,3vw,40px); }
.psad-member-properties-head p { margin: 0; color: #64717c; }
.psad-create-property,
.psad-member-property-empty a { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; padding: 10px 17px; border-radius: 9px; background: #330099; color: #fff !important; font-weight: 800; text-decoration: none !important; white-space: nowrap; }
.psad-member-property-list { display: grid; gap: 14px; }
.psad-member-property-card { display: grid; grid-template-columns: 170px minmax(0,1fr); overflow: hidden; border: 1px solid #ded7eb; border-radius: 14px; background: #fff; box-shadow: 0 8px 26px rgba(41,22,77,.07); }
.psad-member-property-image { display: grid; min-height: 150px; place-items: center; overflow: hidden; background: #eee9f5; text-decoration: none !important; }
.psad-member-property-image img { width: 100%; height: 100%; object-fit: cover; }
.psad-property-placeholder { color: #8c7ca4; font-size: 54px; }
.psad-member-property-main { min-width: 0; padding: 20px 22px; }
.psad-member-property-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }
.psad-property-reference { color: #766c80; font-size: 12px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.psad-member-property-heading h2 { margin: 4px 0 13px; font-size: 20px; line-height: 1.3; }
.psad-member-property-heading h2 a { color: #330099 !important; text-decoration: none !important; }
.psad-member-property-heading h2 a:hover,
.psad-member-property-heading h2 a:focus { text-decoration: underline !important; }
.psad-property-status { flex: 0 0 auto; padding: 6px 10px; border-radius: 999px; background: #eee9f5; color: #533887; font-size: 12px; font-weight: 800; }
.psad-property-status.is-publish { background: #e2f2eb; color: #176b53; }
.psad-property-status.is-pending { background: #fff2d9; color: #835500; }
.psad-member-property-main dl { margin: 0 0 17px; }
.psad-member-property-main dl div { display: flex; gap: 8px; }
.psad-member-property-main dt { color: #766c80; font-size: 13px; font-weight: 650; }
.psad-member-property-main dd { margin: 0; color: #211a2b; font-size: 13px; font-weight: 800; }
.psad-member-property-actions { display: flex; flex-wrap: wrap; gap: 9px; opacity: 1 !important; visibility: visible !important; }
.psad-member-property-actions a { display: inline-flex; min-height: 38px; align-items: center; justify-content: center; padding: 8px 14px; border: 1px solid #d9d1e3; border-radius: 8px; background: #fff; color: #330099 !important; font-size: 13px; font-weight: 800; text-decoration: none !important; }
.psad-member-property-actions a.is-primary { border-color: #330099; background: #330099; color: #fff !important; }
.psad-member-property-actions a.is-delete { border-color: #e7c8cc; color: #9a2c39 !important; }
.psad-member-property-empty { padding: 42px 24px; border: 1px dashed #cfc3dd; border-radius: 14px; background: #fff; text-align: center; }
.psad-member-property-empty strong { display: block; color: #211a2b; font-size: 22px; }
.psad-member-property-empty p { margin: 8px 0 18px; color: #64717c; }

/* Saved property cards in the same visual system as My Property. */
.psad-member-bookmarks { max-width: 1240px; }
.psad-bookmark-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.psad-bookmark-card { overflow: hidden; background: #fff; border: 1px solid #ded7eb; border-radius: 16px; box-shadow: 0 10px 30px rgba(41,22,77,.07); }
.psad-bookmark-image { display: grid; height: 210px; place-items: center; overflow: hidden; background: #eee9f5; }
.psad-bookmark-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .2s ease; }
.psad-bookmark-card:hover .psad-bookmark-image img { transform: scale(1.025); }
.psad-bookmark-body { padding: 19px; }
.psad-bookmark-body h2 { margin: 5px 0 8px; font-size: 20px; line-height: 1.28; }
.psad-bookmark-body h2 a { color: #330099 !important; text-decoration: none !important; }
.psad-bookmark-body p { margin: 0 0 8px; color: #71687b; font-size: 14px; }
.psad-bookmark-body > strong { display: block; margin-bottom: 16px; color: #211a2b; }
.psad-bookmark-open { display: inline-flex; min-height: 38px; align-items: center; padding: 8px 13px; color: #fff !important; background: #330099; border-radius: 8px; font-size: 13px; font-weight: 800; text-decoration: none !important; }
.psad-dashboard-empty { padding: 54px 24px !important; border: 1px dashed #cfc3dd !important; border-radius: 16px !important; background: #fff !important; text-align: center; }
.psad-dashboard-empty strong,.psad-dashboard-empty span { display: block; }
.psad-dashboard-empty strong { color: #211a2b; font-size: 22px; }
.psad-dashboard-empty span { margin: 8px 0 18px; color: #64717c; }
.psad-dashboard-empty a { display: inline-flex; min-height: 42px; align-items: center; padding: 9px 16px; color: #fff !important; background: #330099; border-radius: 8px; font-weight: 800; text-decoration: none !important; }

@media (max-width: 700px) {
  .psad-member-dashboard-page .ps-dashboard-tabs { justify-content: flex-start; gap: 24px; }
  .psad-member-dashboard-page > .dashboard-content { padding: 22px 14px !important; }
  .psad-member-properties-head { align-items: stretch; flex-direction: column; }
  .psad-create-property { width: 100%; }
  .psad-member-property-card { grid-template-columns: 1fr; }
  .psad-member-property-image { min-height: 190px; max-height: 240px; }
  .psad-member-property-heading { align-items: flex-start; flex-direction: column-reverse; gap: 9px; }
  .psad-member-property-main { padding: 18px; }
  .psad-member-property-actions a { flex: 1 1 auto; }
  .psad-dashboard-section-head { align-items: stretch; flex-direction: column; }
  .psad-outline-action { width: 100%; }
}

@media (max-width: 1000px) { .psad-bookmark-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 620px) { .psad-bookmark-grid { grid-template-columns: 1fr; } .psad-bookmark-image { height: 220px; } }

/* Keep the member dashboard canvas continuous with its surrounding frame. */
body.houzez-dashboard-body .dashboard-content,
body.houzez-dashboard-body .ps-dashboard-panel {
  background: #f7f8fb !important;
}

body.houzez-dashboard-body .ps-dashboard-panel {
  box-shadow: none !important;
}

.psad-messaging-centre {
  overflow: hidden;
  margin-top: 18px;
  background: #fff;
  border: 1px solid #ded7eb;
  border-radius: 16px;
  box-shadow: 0 15px 40px rgba(41, 22, 77, .1);
}

.psad-message-upgrade {
  display: flex;
  gap: 8px 14px;
  align-items: center;
  flex-wrap: wrap;
  margin: 18px 0 0;
  padding: 17px 20px;
  color: #342b40;
  background: #fff7e6;
  border: 1px solid #f3dfb8;
  border-left: 4px solid #ff9700;
  border-radius: 10px;
}

.psad-message-upgrade strong { color: #211a2b; }
.psad-message-upgrade a { color: #330099 !important; font-weight: 800; text-decoration: underline !important; }

.psad-messaging-actions {
  display: flex;
  justify-content: flex-start;
  padding: 12px 14px;
  background: #f6f2fb;
  border-bottom: 1px solid #ded7eb;
}

.psad-message-admin {
  display: inline-flex;
  min-height: 42px;
  padding: 10px 16px;
  align-items: center;
  color: #fff !important;
  background: #330099;
  border-radius: 9px;
  font-weight: 700;
  text-decoration: none !important;
}

.psad-messaging-frame {
  display: block;
  width: 100%;
  height: min(720px, calc(100vh - 220px));
  min-height: 540px;
  border: 0;
  background: #fff;
}

body.psad-messages-embed header,
body.psad-messages-embed footer,
body.psad-messages-embed #wpadminbar,
body.psad-messages-embed #ps-site-header,
body.psad-messages-embed #ps-site-footer,
body.psad-messages-embed .header-main-wrap,
body.psad-messages-embed .footer-wrap,
body.psad-messages-embed .footer-bottom-wrap { display: none !important; }
body.psad-messages-embed .ps-membership-message { display: none !important; }

body.psad-messages-embed { margin: 0 !important; background: #fff !important; }
html:has(body.psad-messages-embed) { margin-top: 0 !important; }
body.psad-messages-embed .bm-wrap { min-height: 100vh !important; }
body.psad-messages-embed [aria-label*="Full Screen" i],
body.psad-messages-embed [aria-label*="Fullscreen" i],
body.psad-messages-embed [aria-label="Maximize" i],
body.psad-messages-embed [title*="Full Screen" i],
body.psad-messages-embed [title*="Fullscreen" i],
body.psad-messages-embed [title="Maximize" i],
body.psad-messages-embed [aria-label*="Favorited" i],
body.psad-messages-embed [title*="Favorited" i] { display: none !important; }

@media (max-width: 767px) {
  .ps-dashboard-tabs { overflow-x: auto; white-space: nowrap; }
  .psad-messaging-frame { height: calc(100vh - 170px); min-height: 500px; }
  .psad-messaging-actions { justify-content: stretch; }
  .psad-message-admin { width: 100%; justify-content: center; }
}

.psad-forgot-password-row {
  margin: 8px 0 14px;
  text-align: right;
}

.psad-forgot-password {
  color: #315bae !important;
  font-size: 15px !important;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: none !important;
}

.psad-forgot-password:hover,
.psad-forgot-password:focus {
  color: #176b70 !important;
  text-decoration: underline !important;
}

.psad-welcome-toast {
  position: fixed;
  z-index: 100000;
  right: 22px;
  bottom: 22px;
  width: min(380px, calc(100vw - 32px));
  padding: 20px 48px 20px 20px;
  opacity: 0;
  transform: translateY(12px);
  transition: opacity .2s ease, transform .2s ease;
  color: #17212b;
  background: #fff;
  border: 1px solid rgba(16, 44, 60, .14);
  border-left: 5px solid #176b70;
  border-radius: 12px;
  box-shadow: 0 18px 55px rgba(16, 44, 60, .22);
  font-family: inherit;
}

.psad-popup-logo {
  display: block;
  width: 220px;
  max-width: calc(100% - 52px);
  height: auto;
  margin: 0 0 18px;
  padding: 12px 16px;
  object-fit: contain;
  object-position: left center;
  background: #330099;
  border-radius: 10px;
  box-sizing: border-box;
}

.psad-members-only-modal > .psad-popup-logo,
.psad-members-only-modal .psad-popup-logo { margin: 4px 0 18px 12px; }
.psad-welcome-toast .psad-popup-logo { width: 178px; margin-bottom: 12px; padding: 9px 12px; border-radius: 8px; }

html.psad-auth-open { overflow: hidden; }
.psad-auth[hidden] { display: none !important; }
.psad-auth { position: fixed; z-index: 1000000; inset: 0; display: grid; place-items: center; padding: 20px; font-family: inherit; }
.psad-auth-backdrop { position: absolute; inset: 0; background: rgba(7, 27, 37, .72); backdrop-filter: blur(2px); }
.psad-auth-card { position: relative; z-index: 1; width: min(560px, 100%); max-height: calc(100vh - 40px); overflow-y: auto; padding: 28px 32px 32px; background: #fff; border-radius: 14px; box-shadow: 0 30px 90px rgba(4, 25, 36, .35); }
.psad-auth-close { position: absolute; top: 12px; right: 14px; padding: 3px 8px; color: #66757f; background: transparent; border: 0; font-size: 28px; line-height: 1; cursor: pointer; }
.psad-auth-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 5px; margin: 0 0 24px; padding: 4px; background: #eef3f5; border-radius: 9px; }
.psad-auth-tabs button { padding: 10px 14px; color: #53626d; background: transparent; border: 0; border-radius: 7px; font: inherit; font-size: 15px; font-weight: 700; cursor: pointer; }
.psad-auth-tabs button.is-active { color: #fff; background: #315bae; box-shadow: 0 3px 10px rgba(49, 91, 174, .2); }
.psad-auth-panel { display: none; }
.psad-auth-panel.is-active { display: block; }
.psad-auth-panel h2 { margin: 0 0 7px; color: #102c3c; font-size: 25px; line-height: 1.2; }
.psad-auth-panel > p { margin: 0 0 22px; color: #66757f; font-size: 15px; line-height: 1.5; }
.psad-admin-auth-panel { text-align: center; }
.psad-admin-auth-panel form { text-align: left; }
.psad-admin-auth-icon { display: grid; place-items: center; width: 58px; height: 58px; margin: 0 auto 16px; color: #fff; background: #330099; border-radius: 50%; font-size: 25px; box-shadow: 0 10px 26px rgba(51, 0, 153, .22); }
.psad-admin-auth-panel input { text-align: center; letter-spacing: .22em; font-size: 19px !important; font-weight: 750; }
.psad-auth-panel form > label, .psad-auth-grid label { display: block; margin: 0 0 15px; color: #263640; font-size: 14px; font-weight: 700; }
.psad-auth-panel input[type="text"], .psad-auth-panel input[type="email"], .psad-auth-panel input[type="password"] { display: block; width: 100%; min-height: 46px; margin-top: 6px; padding: 10px 12px; color: #17212b; background: #f8fafb; border: 1px solid #cad4d9; border-radius: 7px; box-sizing: border-box; font: inherit; font-size: 16px; }
.psad-auth-panel input:focus { outline: 2px solid rgba(49, 91, 174, .25); border-color: #315bae; }
.psad-auth-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; }
.psad-auth-panel small { display: block; margin-top: 4px; color: #73818a; font-size: 12px; font-weight: 400; }
.psad-auth-options { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 17px; }
.psad-auth-check { display: flex !important; align-items: flex-start; gap: 7px; margin: 0 0 17px !important; font-size: 13px !important; font-weight: 500 !important; line-height: 1.45; }
.psad-auth-check input { flex: 0 0 auto; margin-top: 3px; }
.psad-auth-link { padding: 0; color: #315bae; background: transparent; border: 0; font: inherit; font-size: 13px; font-weight: 700; text-decoration: underline; cursor: pointer; }
.psad-auth-submit { width: 100%; min-height: 46px; padding: 11px 18px; color: #fff; background: #315bae; border: 0; border-radius: 7px; font: inherit; font-size: 15px; font-weight: 700; cursor: pointer; }
.psad-auth-submit:hover, .psad-auth-submit:focus { background: #176b70; }
.psad-auth-submit:disabled { opacity: .6; cursor: wait; }
.psad-auth-back-link { display: block; margin: 15px auto 0; }
.psad-auth-feedback { display: none; margin: 0 0 15px; padding: 10px 12px; border-radius: 7px; font-size: 13px; line-height: 1.45; }
.psad-auth-feedback.is-success, .psad-auth-feedback.is-error { display: block; }
.psad-auth-feedback.is-success { color: #145d47; background: #e7f7f1; border: 1px solid #abdcc9; }
.psad-auth-feedback.is-error { color: #9a2432; background: #fff0f1; border: 1px solid #efb5bd; }

.psad-account-type { margin: 0 0 18px; padding: 0; border: 0; }
.psad-account-type legend { margin: 0 0 8px; color: #263640; font-size: 14px; font-weight: 800; }
.psad-account-type { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.psad-account-type legend { grid-column: 1 / -1; }
.psad-account-type label { position: relative; display: block; margin: 0; cursor: pointer; }
.psad-account-type input { position: absolute; opacity: 0; pointer-events: none; }
.psad-account-type span { display: flex; min-height: 82px; padding: 13px; flex-direction: column; justify-content: center; color: #3e4650; background: #f7f5fb; border: 1px solid #ded7eb; border-radius: 10px; }
.psad-account-type strong { color: #330099; font-size: 14px; }
.psad-account-type small { margin-top: 4px; line-height: 1.35; }
.psad-account-type input:checked + span { background: #f0eafb; border-color: #330099; box-shadow: inset 0 0 0 1px #330099; }
.psad-account-type input:focus-visible + span { outline: 3px solid rgba(51, 0, 153, .18); outline-offset: 2px; }
.psad-advisor-signup-fields[hidden] { display: none !important; }

.psad-advisor-dashboard .dashboard-content { min-height: 620px; padding: clamp(22px, 4vw, 54px) !important; background: #f7f8fb !important; }
.psad-advisor-dashboard .ps-dashboard-tabs { display: flex; justify-content: center; gap: clamp(18px, 6vw, 90px); padding-inline: 24px; }
.psad-advisor-dashboard .ps-dashboard-tabs a { position: relative; padding: 20px 4px; color: #17131d; font-weight: 750; text-decoration: none; }
.psad-advisor-dashboard .ps-dashboard-tabs a::after { position: absolute; right: 0; bottom: 0; left: 0; height: 4px; content: ''; background: #ff9700; opacity: 0; }
.psad-advisor-dashboard .ps-dashboard-tabs a.is-active { color: #330099; }
.psad-advisor-dashboard .ps-dashboard-tabs a.is-active::after { opacity: 1; }
.psad-advisor-shell { width: min(1180px, 100%); margin: 0 auto; color: #26222d; }
.psad-advisor-shell > h1 { margin: 0 0 8px; color: #231b2d; font-size: clamp(30px, 4vw, 46px); line-height: 1.08; }
.psad-advisor-shell > p:not(.ps-eyebrow) { color: #66717b; font-size: 17px; }
.psad-advisor-hero { display: flex; gap: 30px; align-items: center; justify-content: space-between; padding: clamp(26px, 4vw, 48px); color: #fff; background: linear-gradient(125deg, #330099, #4c13ae); border-radius: 22px; box-shadow: 0 24px 65px rgba(51, 0, 153, .18); }
.psad-advisor-hero h1 { max-width: 680px; margin: 0 0 12px; color: #fff; font-size: clamp(30px, 4vw, 50px); line-height: 1.06; }
.psad-advisor-hero p { max-width: 720px; margin: 0; color: rgba(255,255,255,.82); font-size: 17px; line-height: 1.55; }
.psad-advisor-primary { display: inline-flex; min-height: 48px; padding: 12px 20px; align-items: center; justify-content: center; color: #231b2d !important; background: #ff9700; border-radius: 10px; font-weight: 800; text-decoration: none !important; white-space: nowrap; }
.psad-advisor-stat-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: 22px 0; }
.psad-advisor-stat-grid article { padding: 22px; background: #fff; border: 1px solid #e4deec; border-radius: 16px; box-shadow: 0 12px 32px rgba(42, 25, 71, .06); }
.psad-advisor-stat-grid span, .psad-advisor-membership span { display: block; margin-bottom: 6px; color: #ff7900; font-size: 12px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.psad-advisor-stat-grid strong { display: block; color: #330099; font-size: 23px; line-height: 1.2; }
.psad-advisor-stat-grid small { display: block; margin-top: 7px; color: #6a7078; line-height: 1.45; }
.psad-advisor-checklist { padding: 28px; background: #fff; border: 1px solid #e4deec; border-radius: 18px; }
.psad-advisor-checklist h2 { margin: 0 0 18px; color: #330099; }
.psad-advisor-checklist a { display: flex; gap: 15px; padding: 15px 0; align-items: center; color: inherit !important; border-top: 1px solid #ece7f1; text-decoration: none !important; }
.psad-advisor-checklist a b { display: grid; flex: 0 0 38px; height: 38px; place-items: center; color: #330099; background: #eaf5f2; border-radius: 10px; }
.psad-advisor-checklist a span, .psad-advisor-checklist a strong, .psad-advisor-checklist a small { display: block; }
.psad-advisor-checklist a small { margin-top: 3px; color: #6a7078; }
.psad-advisor-profile-form, .psad-advisor-membership { margin-top: 24px; padding: clamp(22px, 4vw, 38px); background: #fff; border: 1px solid #e4deec; border-radius: 18px; box-shadow: 0 14px 38px rgba(42, 25, 71, .06); }
.psad-advisor-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.psad-advisor-form-grid label { color: #302939; font-weight: 750; }
.psad-advisor-form-grid label.is-wide { grid-column: 1 / -1; }
.psad-advisor-form-grid input, .psad-advisor-form-grid textarea { display: block; width: 100%; margin-top: 7px; padding: 12px 14px; color: #211a2b; background: #faf9fc; border: 1px solid #d9d2e3; border-radius: 9px; font: inherit; font-weight: 500; box-sizing: border-box; }
.psad-advisor-form-grid input:focus, .psad-advisor-form-grid textarea:focus { outline: 3px solid rgba(51,0,153,.12); border-color: #330099; }
.psad-advisor-form-actions { display: flex; gap: 16px; align-items: center; margin-top: 20px; }
.psad-advisor-form-actions button { min-height: 48px; padding: 12px 22px; color: #fff; background: #330099; border: 0; border-radius: 9px; font: inherit; font-weight: 800; cursor: pointer; }
.psad-advisor-form-actions .is-success { color: #176b70; }.psad-advisor-form-actions .is-error { color: #a22734; }
.psad-advisor-membership { display: grid; grid-template-columns: 1.2fr 1.4fr auto; gap: 28px; align-items: center; }
.psad-advisor-membership h2 { margin: 0 0 7px; color: #330099; }
.psad-advisor-membership p { margin: 0; color: #66717b; }
.psad-advisor-membership dl { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin: 0; }
.psad-advisor-membership dl div { padding-left: 14px; border-left: 2px solid #eee8f4; }
.psad-advisor-membership dt { color: #6a7078; font-size: 12px; }.psad-advisor-membership dd { margin: 4px 0 0; color: #302939; font-weight: 750; }
.psad-human-check { margin: 18px 0; padding: 16px; border: 1px solid #ded8ea; border-radius: 12px; background: #f8f6fc; }
.psad-human-check legend { padding: 0 7px; color: #211a2a; font-weight: 800; }
.psad-human-prompt { margin: 0 0 12px !important; color: #554d60 !important; font-size: 14px !important; font-weight: 700; }
.psad-human-options { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.psad-human-option { display: grid; min-height: 78px; place-items: center; gap: 2px; padding: 8px 4px; color: #3f3650; border: 2px solid #ded8ea; border-radius: 10px; background: #fff; cursor: pointer; }
.psad-human-option span { font-size: 29px; line-height: 1; }
.psad-human-option small { font-size: 11px; font-weight: 750; }
.psad-human-option:hover, .psad-human-option:focus { border-color: #330099; outline: none; }
.psad-human-option.is-selected { color: #fff; border-color: #330099; background: #330099; box-shadow: 0 0 0 3px rgba(51,0,153,.12); }
.psad-human-refresh { margin-top: 10px; font-size: 12px; }
@media (max-width: 520px) { .psad-human-options { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

.psad-member-blog { max-width: 1240px; }
.psad-blog-workspace { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(340px,.95fr); gap: 22px; align-items: start; }
.psad-blog-form { margin: 0; padding: 24px; background: #fff; border: 1px solid #e2dced; border-radius: 16px; box-shadow: 0 10px 30px rgba(41,22,77,.06); }
.psad-blog-form h2,.psad-blog-posts > h2 { margin: 0 0 18px; color: #330099; font-size: 22px; }
.psad-blog-form label { display: block; margin-bottom: 17px; color: #211a2a; font-size: 14px; font-weight: 750; }
.psad-blog-form input[type="text"], .psad-blog-form textarea { display: block; width: 100%; margin-top: 7px; padding: 12px 14px; color: #211a2a; background: #fff; border: 1px solid #d5cde1; border-radius: 9px; box-sizing: border-box; font: inherit; font-weight: 400; }
.psad-blog-form textarea { resize: vertical; line-height: 1.55; }
.psad-blog-form input:focus, .psad-blog-form textarea:focus { border-color: #330099; box-shadow: 0 0 0 3px rgba(51,0,153,.1); outline: none; }
.psad-blog-form-actions, .psad-blog-card-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.psad-blog-form-actions button, .psad-blog-card-actions button { padding: 9px 15px; color: #fff; background: #330099; border: 1px solid #330099; border-radius: 8px; font: inherit; font-size: 13px; font-weight: 750; cursor: pointer; }
.psad-blog-form-actions .psad-blog-cancel, .psad-blog-card-actions button { color: #330099; background: #fff; }
.psad-blog-card-actions button[data-blog-action="delete"] { color: #a12a37; border-color: #e4bcc1; }
.psad-blog-form-actions button:disabled, .psad-blog-card-actions button:disabled { opacity: .55; cursor: wait; }
.psad-blog-feedback { display: none; margin-top: 15px; padding: 10px 12px; border-radius: 8px; font-size: 13px; }
.psad-blog-feedback.is-success, .psad-blog-feedback.is-error { display: block; }
.psad-blog-feedback.is-success { color: #145d47; background: #e7f7f1; }
.psad-blog-feedback.is-error { color: #9a2432; background: #fff0f1; }
.psad-blog-posts { padding: 24px; background: #f7f5fb; border: 1px solid #e2dced; border-radius: 16px; }
.psad-blog-list { display: grid; gap: 14px; }
.psad-blog-card { padding: 20px; background: #fff; border: 1px solid #e2dced; border-radius: 13px; box-shadow: 0 7px 24px rgba(34,22,54,.06); }
.psad-blog-card time { color: #776b84; font-size: 12px; font-weight: 700; }
.psad-blog-card h3 { margin: 5px 0 8px; color: #211a2a; font-size: 19px; }
.psad-blog-card p { margin: 0 0 15px; color: #5f5668; line-height: 1.55; white-space: pre-line; }

@media (max-width: 900px) { .psad-blog-workspace { grid-template-columns: 1fr; } }

.psad-property-blog { clear: both; margin: 42px 0 10px; padding: 30px; color: #211a2a; background: #f7f5fb; border: 1px solid #e2dced; border-radius: 18px; }
.psad-property-blog-eyebrow { margin: 0 0 5px !important; color: #330099; font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.psad-property-blog > h2 { margin: 0 0 20px; color: #211a2a; font-size: 28px; }
.psad-property-blog-grid { display: grid; gap: 14px; }
.psad-property-blog article { padding: 20px; background: #fff; border-radius: 12px; }
.psad-property-blog time { color: #776b84; font-size: 12px; font-weight: 700; }
.psad-property-blog h3 { margin: 5px 0 10px; color: #211a2a; font-size: 19px; }
.psad-property-blog article p:last-child { margin-bottom: 0; }

.psad-welcome-toast.is-ready { opacity: 1; transform: translateY(0); }
.psad-welcome-title { display: block; margin-bottom: 7px; color: #102c3c; font-size: 18px; line-height: 1.3; }
.psad-welcome-toast p { margin: 0; color: #53626d; font-size: 15px; line-height: 1.5; }
.psad-welcome-close { position: absolute; top: 8px; right: 10px; padding: 4px 7px; color: #66757f; background: transparent; border: 0; font-size: 24px; line-height: 1; cursor: pointer; }
.psad-welcome-action { display: inline-block; margin-top: 13px; padding: 8px 14px; color: #fff !important; background: #315bae; border-radius: 7px; font-size: 14px; font-weight: 700; line-height: 1.3; text-decoration: none !important; }
.psad-welcome-action:hover, .psad-welcome-action:focus { color: #fff !important; background: #176b70; }

.psad-unread-toast {
  border-left-color: #ff9700;
}

.psad-unread-toast-icon {
  display: inline-grid;
  width: 38px;
  height: 38px;
  margin: 0 0 12px;
  place-items: center;
  color: #fff;
  background: #330099;
  border-radius: 50%;
  font-size: 21px;
  font-weight: 800;
  line-height: 1;
}

.psad-members-only-modal,
.psad-members-only-modal * {
  font-family: inherit;
}

.psad-members-only-modal .psad-members-only-title {
  font-size: 28px !important;
  line-height: 1.25 !important;
  letter-spacing: normal !important;
}

.psad-members-only-modal .psad-members-only-message {
  font-size: 18px !important;
  line-height: 1.5 !important;
}

.psad-members-only-modal .psad-members-only-action {
  min-width: 0 !important;
  padding: 10px 20px !important;
  font-size: 16px !important;
  line-height: 1.25 !important;
}

.psad-members-only-modal .psad-members-only-close {
  font-size: 28px !important;
  line-height: 1 !important;
}

@media (max-width: 767px) {
	.psad-account-type { grid-template-columns: 1fr; }
	.psad-account-type legend { grid-column: 1; }
	.psad-advisor-dashboard .dashboard-content { padding: 22px 14px !important; }
	.psad-advisor-dashboard .ps-dashboard-tabs { justify-content: flex-start; gap: 24px; }
	.psad-advisor-hero { align-items: stretch; flex-direction: column; }
	.psad-advisor-primary { width: 100%; white-space: normal; }
	.psad-advisor-stat-grid, .psad-advisor-form-grid, .psad-advisor-membership, .psad-advisor-membership dl { grid-template-columns: 1fr; }
	.psad-advisor-form-grid label.is-wide { grid-column: 1; }
	.psad-advisor-membership { align-items: stretch; }
	.psad-dashboard-submenu { min-width: 190px; padding: 10px; }
	.psad-dashboard-submenu a { padding: 11px 14px; font-size: 15px; }
	.psad-forgot-password { font-size: 14px !important; }
  .psad-welcome-toast { right: 16px; bottom: 16px; padding: 17px 42px 17px 17px; }
  .psad-welcome-title { font-size: 17px; }.psad-welcome-toast p { font-size: 14px; }
  .psad-members-only-modal .psad-members-only-title { font-size: 24px !important; }
  .psad-members-only-modal .psad-members-only-message { font-size: 16px !important; }
  .psad-members-only-modal .psad-members-only-action { padding: 9px 17px !important; font-size: 15px !important; }
  .psad-members-only-modal .psad-members-only-close { font-size: 24px !important; }
  .psad-auth { padding: 10px; }
  .psad-auth-card { max-height: calc(100vh - 20px); padding: 22px 20px 24px; border-radius: 11px; }
  .psad-popup-logo { width: 184px; margin-bottom: 15px; padding: 10px 13px; }
  .psad-auth-grid { grid-template-columns: 1fr; gap: 0; }
  .psad-auth-options { align-items: flex-start; flex-direction: column; gap: 8px; }
  .psad-blog-form, .psad-property-blog { padding: 18px; border-radius: 12px; }
  .psad-property-blog > h2 { font-size: 24px; }
}
.psad-chat-dashboard-nav {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 24px;
  margin: 0 0 20px;
  padding: 12px 16px;
  border: 1px solid #e6e0ef;
  border-radius: 12px;
  background: #fff;
  font-family: Outfit, sans-serif;
}
.psad-chat-dashboard-nav a {
  position: relative;
  padding: 8px 0;
  color: #330099;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
}
.psad-chat-dashboard-nav a::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 3px;
  background: #ff9900;
  content: '';
  transform: scaleX(0);
  transition: transform .15s ease;
}
.psad-chat-dashboard-nav a:hover::after,
.psad-chat-dashboard-nav a:focus-visible::after,
.psad-chat-dashboard-nav a.is-active::after { transform: scaleX(1); }
@media (max-width: 600px) {
  .psad-chat-dashboard-nav { gap: 4px 16px; padding: 10px 12px; }
}
.psad-account-status { width: 100%; }
.psad-account-status summary { cursor: pointer; list-style: none; }
.psad-account-status summary::-webkit-details-marker { display: none; }
.psad-account-status > div { display: flex; flex-wrap: wrap; gap: 6px; padding-top: 8px; }
.psad-account-status [data-action="delete"] { color: #a32635 !important; border-color: #e7bac0 !important; }
