.manage-shell {
  max-width: 1140px;
  margin: auto;
  padding: 0 30px 45px;
}
.manage-header {
  display: flex;
  justify-content: space-between;
  padding: 28px 0 50px;
  gap: 20px;
}
.manage-header div {
  display: flex;
  gap: 24px;
}
.manage-header a:not(.logo) {
  font-size: 13px;
  color: #cba9ef;
}
.manage-shell > h1 {
  font-size: 60px;
  line-height: 1.03;
  letter-spacing: -2px;
  margin: 15px 0 20px;
}
.manage-shell > h1 span {
  color: #c17bff;
}
.manage-intro {
  color: #aeb8c7;
  max-width: 680px;
  line-height: 1.7;
}
.stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 15px;
  margin: 30px 0;
}
.stats > div {
  background: linear-gradient(135deg, #1e1930, #111b24);
  border: 1px solid #ffffff18;
  border-radius: 14px;
  padding: 24px;
}
.stats strong {
  display: block;
  font-size: 34px;
  color: #d0a6ff;
}
.stats span {
  display: block;
  font-size: 12px;
  color: #aeb8c7;
  margin-top: 8px;
}
.manage-tabs {
  display: flex;
  gap: 10px;
  margin: 28px 0;
}
.manage-shell button:not(.button):not(.coral-button) {
  background: #202335;
  border: 1px solid #ffffff20;
  border-radius: 9px;
  padding: 11px 15px;
  font-size: 12px;
}
.manage-tabs button.active {
  background: #8232d9 !important;
  color: #fff;
}
.manage-panel,
.login-card {
  padding: 30px;
  border: 1px solid #ffffff18;
  border-radius: 17px;
  background: #101820;
  margin: 25px 0;
}
.manage-panel h2 {
  margin-bottom: 18px;
}
.manage-panel p,
.login-card p {
  font-size: 13px;
  line-height: 1.7;
  color: #b3bdcc;
}
.manage-panel label {
  display: block;
  font-size: 12px;
  color: #d7c3eb;
  margin: 16px 0;
}
.manage-shell input,
.manage-shell textarea,
.manage-shell select {
  display: block;
  width: 100%;
  border: 1px solid #3d3c4c;
  background: #090f16;
  color: #fff;
  border-radius: 9px;
  font: inherit;
  padding: 12px;
  margin-top: 8px;
  min-height: 43px;
}
.manage-shell textarea {
  min-height: 115px;
  resize: vertical;
}
.form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 20px;
}
.manage-shell label.check {
  display: flex;
  align-items: center;
  gap: 12px;
  line-height: 1.6;
}
.manage-shell .check input {
  width: 18px;
  min-height: 18px;
  margin: 0;
}
.form-panel {
  border: 1px dashed #645176;
  padding: 20px;
  border-radius: 12px;
  margin: 25px 0;
}
.form-panel h3 {
  margin: 0 0 12px;
}
.media-preview {
  display: block;
  width: 100%;
  max-width: 500px;
  max-height: 280px;
  object-fit: contain;
  border-radius: 12px;
  margin: 15px 0;
  background: #05080c;
}
.form-actions {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-top: 25px;
}
.manage-shell .button {
  width: auto;
  max-width: 100%;
  font-size: 13px;
}
.admin-list article {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  padding: 22px 0;
  border-bottom: 1px solid #ffffff12;
}
.admin-list h3 {
  font-size: 18px;
  margin: 10px 0 5px;
}
.admin-list p {
  margin: 5px 0;
}
.admin-list small {
  color: #8794a6;
  font-size: 11px;
  line-height: 1.6;
}
.row-actions {
  display: flex;
  gap: 8px;
  flex-shrink: 0;
}
.status {
  display: inline-block;
  border-radius: 30px;
  padding: 5px 10px;
  font-size: 10px;
  background: #332245;
  color: #d6b6f4;
  text-transform: uppercase;
}
.status.pending {
  background: #473b16;
  color: #f4dc8c;
}
.status.published {
  background: #153b2c;
  color: #a9e3c5;
}
.manage-shell .error {
  background: #5a17223b;
  color: #ffadb0;
  padding: 15px;
  border: 1px solid #a63d4666;
  border-radius: 10px;
  font-size: 13px;
}
.manage-shell .success {
  background: #153b2c;
  padding: 15px;
  border: 1px solid #6fad7d55;
  border-radius: 10px;
  font-size: 13px;
}
.manage-footnote {
  font-size: 11px;
  color: #8694a5;
  line-height: 1.8;
}
.filter-label {
  max-width: 250px;
}
.link-result {
  background: #29203c;
  border: 1px solid #9d6ad354;
  padding: 22px;
  margin-top: 25px;
  border-radius: 12px;
}
.link-result input {
  font-family: monospace;
  font-size: 12px;
  margin-bottom: 12px;
}
.preview-card {
  background: #080d13;
  border: 1px solid #50425e;
  border-radius: 13px;
  padding: 24px;
  margin: 24px 0;
}
.preview-card h2 {
  margin-bottom: 15px;
}
.pre-line {
  white-space: pre-line;
}
.reservation {
  display: flex;
  flex-direction: column;
  gap: 12px;
  border: 1px solid #925ad566;
  border-radius: 12px;
  padding: 22px;
  background: #271d37;
  margin: 25px 0;
  color: #ddd0ed;
}
.reservation span {
  font-size: 13px;
}
.reservation small {
  font-size: 11px;
  color: #b4a4c7;
}
.login-card {
  max-width: 650px;
  margin: 40px auto;
  padding: 45px;
}
.login-card h1 {
  font-size: 42px;
  letter-spacing: -1px;
}
.login-card > a:last-child {
  display: block;
  font-size: 12px;
  margin-top: 25px;
  color: #c9a4ed;
}
.submit-shell {
  max-width: 900px;
}
input[readonly] {
  color: #a7acb6;
}
.manage-shell input[type="file"] {
  font-size: 12px;
  padding: 12px;
}
.manage-shell button:disabled {
  opacity: 0.45;
  cursor: wait;
}
.detail-video {
  width: 100%;
  max-height: 500px;
  background: #000;
  display: block;
}
@media (max-width: 600px) {
  .manage-shell {
    padding: 0 16px 30px;
  }
  .manage-header {
    padding: 22px 0 30px;
  }
  .manage-header .logo {
    font-size: 21px;
  }
  .manage-header div {
    gap: 12px;
  }
  .manage-header a:not(.logo) {
    font-size: 11px;
  }
  .manage-shell > h1 {
    font-size: 43px;
  }
  .stats {
    gap: 8px;
  }
  .stats > div {
    padding: 16px 12px;
  }
  .stats strong {
    font-size: 27px;
  }
  .stats span {
    font-size: 10px;
    line-height: 1.4;
  }
  .manage-panel,
  .login-card {
    padding: 20px;
  }
  .form-grid {
    grid-template-columns: 1fr;
  }
  .admin-list article {
    display: block;
  }
  .row-actions {
    margin-top: 14px;
  }
  .form-actions {
    flex-wrap: wrap;
  }
  .manage-tabs button {
    font-size: 10px !important;
  }
  .login-card h1 {
    font-size: 33px;
  }
  .manage-panel .section-head {
    align-items: center;
  }
  .manage-panel h2 {
    font-size: 23px;
  }
  .manage-panel .section-head h2 {
    margin: 0;
  }
  .manage-shell .button {
    width: 100%;
  }
  .manage-panel input,
  .manage-panel textarea,
  .manage-panel select {
    font-size: 16px;
  }
}

.analytics-stats {
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
}
.analytics-presets {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 20px 0;
}
.analytics-trend {
  display: flex;
  gap: 14px;
  overflow-x: auto;
  align-items: flex-end;
  padding: 20px 0;
  margin-bottom: 24px;
}
.trend-column {
  display: flex;
  flex: 0 0 44px;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  font-size: 12px;
}
.trend-bar {
  width: 26px;
  background: linear-gradient(#b337ff, #f36e88);
  border-radius: 5px 5px 0 0;
}
.analytics-table-wrap {
  overflow-x: auto;
}
.analytics-table {
  border-collapse: collapse;
  width: 100%;
  font-size: 13px;
}
.analytics-table th,
.analytics-table td {
  text-align: left;
  padding: 14px;
  border-bottom: 1px solid #33404d;
}
.analytics-table th small {
  display: block;
  font-weight: 400;
  color: #b9c5d0;
  margin-top: 6px;
  min-width: 190px;
}
.analytics-panel .notice {
  margin-top: 24px;
}
.analytics-panel .notice p {
  font-size: 13px;
  line-height: 1.6;
}
.manage-tabs {
  flex-wrap: wrap;
}

.pricing-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 18px;
  margin: 24px 0;
}
.pricing-card {
  border: 1px solid #3e4354;
  background: #121b23;
  border-radius: 18px;
  padding: 22px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.pricing-card > strong {
  font-size: 28px;
  color: #ddabff;
}
.pricing-card button {
  margin-top: auto;
}
.pricing-card button:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}
.pricing-card p {
  font-size: 14px;
  line-height: 1.6;
}
.manage-header > div {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
}
/* Business signup, profile and guided listing builder */
.business-shell {
  max-width: 1160px;
}
.business-welcome {
  padding: 60px 0 30px;
}
.business-welcome h1 {
  max-width: 850px;
  font-size: clamp(42px, 6vw, 76px);
  line-height: 1.04;
  letter-spacing: -3px;
}
.business-welcome > p:not(.eyebrow) {
  max-width: 650px;
  font-size: 18px;
  line-height: 1.7;
  color: #b8c5d0;
}
.business-welcome .form-actions {
  margin: 30px 0 60px;
}
.business-welcome-benefits {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  border-top: 1px solid #2b3442;
  padding-top: 28px;
}
.business-welcome-benefits strong {
  font-size: 18px;
}
.business-welcome-benefits p {
  font-size: 14px;
  color: #9fadb9;
  line-height: 1.6;
}
.business-signup-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 70px;
  align-items: start;
  padding-top: 50px;
}
.business-signup-story h1 {
  font-size: clamp(38px, 5vw, 64px);
  line-height: 1.08;
  letter-spacing: -2px;
}
.business-signup-story > p:not(.eyebrow) {
  color: #b7c3cf;
  line-height: 1.7;
  max-width: 360px;
}
.business-signup-story ol {
  list-style: none;
  padding: 24px 0;
  margin: 0 0 20px;
  display: grid;
  gap: 20px;
}
.business-signup-story li {
  display: flex;
  gap: 18px;
  align-items: center;
  font-size: 14px;
}
.business-signup-story li b {
  color: #c385f2;
  font-size: 12px;
}
.business-signup-story a {
  font-size: 13px;
  color: #dbc1f4;
}
.business-signup-card {
  margin-top: 0 !important;
  padding: 32px !important;
  border-color: #4c355f !important;
  background: radial-gradient(ellipse at top right, #5c238f26, transparent 60%), #101820 !important;
}
.business-signup-card h2 {
  font-size: 28px;
  margin: 5px 0 12px;
}
.business-signup-card > p:not(.eyebrow) {
  font-size: 14px;
  color: #aebcc9;
}
.business-signup-form {
  display: grid;
  gap: 18px;
  margin-top: 25px;
}
.business-signup-form > label {
  margin: 0;
}
.business-signup-form input:not([type="checkbox"]) {
  height: 49px;
}
.phone-prefix {
  display: flex;
  align-items: center;
  border: 1px solid #374554;
  border-radius: 10px;
  overflow: hidden;
  background: #090f16;
}
.phone-prefix > span {
  padding: 0 16px;
  font-size: 15px;
  border-right: 1px solid #374554;
  color: #e2c6ff;
}
.phone-prefix input {
  border: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
  margin: 0 !important;
  min-width: 0;
}
.phone-prefix:focus-within {
  outline: 2px solid #bc79f1;
  outline-offset: 2px;
}
.business-signup-form .button {
  width: 100%;
  text-align: center;
}
.business-signup-form > small {
  color: #9aaab8;
  font-size: 12px;
  line-height: 1.6;
}
.business-sms-consent {
  font-size: 12px !important;
  line-height: 1.6;
  align-items: flex-start !important;
}
.business-profile-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 25px;
  margin: 38px 0 28px;
}
.business-profile-heading h1 {
  font-size: clamp(32px, 4vw, 48px);
  letter-spacing: -1.5px;
  margin: 8px 0 14px;
  overflow-wrap: anywhere;
}
.business-profile-heading p:not(.eyebrow) {
  font-size: 14px;
  color: #aab8c4;
}
.business-profile-heading p > span {
  padding: 0 10px;
}
.business-profile-heading .button {
  white-space: nowrap;
}
.business-tabs {
  margin-bottom: 28px;
}
.business-overview-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin: 24px 0;
}
.business-overview-stats > div {
  display: flex;
  flex-direction: column;
  border: 1px solid #2b3544;
  background: #101922;
  border-radius: 16px;
  padding: 23px;
}
.business-overview-stats small {
  color: #b2bfcb;
  font-size: 13px;
}
.business-overview-stats strong {
  font-size: 35px;
  line-height: 1.2;
  margin: 14px 0 10px;
}
.business-overview-stats span {
  font-size: 11px;
  color: #8396a7;
}
.business-next-action {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  background: radial-gradient(ellipse at top right, #7f2ac846, transparent 70%), #151724;
  border: 1px solid #503461;
  border-radius: 18px;
  padding: 28px;
  margin: 28px 0 40px;
}
.business-next-action h2 {
  font-size: 25px;
  margin: 8px 0 12px;
}
.business-next-action p:not(.eyebrow) {
  font-size: 14px;
  color: #b4bece;
  max-width: 600px;
  line-height: 1.6;
}
.business-next-action > button {
  white-space: nowrap;
  border-color: #9170a6;
  background: #2a1d3b;
}
.business-listing-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}
.business-listing-card {
  background: #111a23;
  border: 1px solid #2d3a47;
  border-radius: 18px;
  padding: 24px;
  min-width: 0;
}
.business-listing-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.business-listing-top > small {
  color: #94a7b8;
  font-size: 11px;
  text-transform: capitalize;
}
.business-status {
  display: inline-block;
  border: 1px solid #455266;
  background: #1c2736;
  color: #c5d3e3;
  font-size: 11px;
  border-radius: 50px;
  padding: 7px 10px;
}
.status-pending {
  border-color: #77613b;
  background: #382e1b;
  color: #edcf8b;
}
.status-published {
  border-color: #3c6f60;
  background: #14352a;
  color: #a4dfc3;
}
.status-rejected {
  border-color: #77404a;
  background: #381d24;
  color: #f3a3af;
}
.business-listing-card h3 {
  font-size: 21px;
  line-height: 1.4;
  margin: 22px 0 10px;
}
.business-listing-card > p {
  font-size: 13px;
  color: #a5b6c5;
  line-height: 1.6;
}
.business-listing-card > small {
  font-size: 10px;
  color: #8495a6;
}
.listing-mini-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid #2b3948;
  padding-top: 18px;
  margin: 20px 0 10px;
  gap: 12px;
}
.listing-mini-stats > span {
  display: flex;
  flex-direction: column;
  font-size: 11px;
  gap: 8px;
  color: #97a8b8;
}
.listing-mini-stats strong {
  font-size: 24px;
  color: #f2f5fa;
}
.business-listing-card .form-actions {
  margin-top: 22px;
  flex-wrap: wrap;
  gap: 12px;
}
.business-listing-card .form-actions button {
  font-size: 12px;
}
.business-empty {
  text-align: center;
  border: 1px dashed #534361;
  border-radius: 20px;
  padding: 60px 24px;
  background: #10151d;
}
.business-empty > span {
  color: #c897f3;
  font-size: 28px;
}
.business-empty h3 {
  font-size: 24px;
}
.business-empty p {
  color: #a8b7c6;
  max-width: 480px;
  margin: 0 auto 25px;
  line-height: 1.7;
}
.business-report-heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
}
.listing-builder {
  width: min(900px, calc(100vw - 32px));
  max-height: 90dvh;
  overflow-y: auto;
  padding: 30px;
  border: 1px solid #695079;
  border-radius: 24px;
  background: radial-gradient(ellipse at top right, #59267e25, transparent 50%), #101720;
  color: #edf2f7;
  box-shadow: 0 20px 90px #0008;
}
.listing-builder::backdrop,
.submission-receipt::backdrop {
  background: #02050bd9;
  backdrop-filter: blur(7px);
}
.builder-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  border-bottom: 1px solid #303648;
  padding-bottom: 20px;
  margin-bottom: 26px;
}
.builder-header .eyebrow {
  margin: 0 0 8px;
}
.builder-header span {
  font-size: 12px;
  color: #adbacb;
}
.builder-header > button {
  font-size: 25px;
  padding: 4px 13px;
  border: 1px solid #455065;
  border-radius: 50%;
  background: #19212d;
  color: white;
  cursor: pointer;
}
.listing-builder > h2 {
  font-size: 32px;
  letter-spacing: -0.6px;
  margin: 18px 0 12px;
}
.listing-builder > p {
  color: #b0bdd0;
  font-size: 14px;
  line-height: 1.7;
}
.builder-kind-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-top: 24px;
}
.builder-choice {
  display: flex;
  align-items: flex-start;
  gap: 15px;
  padding: 22px;
  background: #151e2b;
  border: 1px solid #394358;
  border-radius: 16px;
  color: #f4f2f8;
  text-align: left;
  cursor: pointer;
}
.builder-choice:hover,
.builder-placement:hover {
  border-color: #ad76d3;
  background: #201d32;
}
.builder-kind-icon {
  font-size: 25px;
  color: #d7a5ff;
  line-height: 1.2;
}
.builder-choice > span:nth-child(2) {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 12px;
}
.builder-choice strong {
  font-size: 17px;
}
.builder-choice small {
  color: #a9b8ca;
  font-size: 12px;
  line-height: 1.7;
}
.builder-choice b {
  color: #dac0f3;
  font-size: 12px;
}
.builder-placement-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 15px;
  margin: 22px 0;
}
.builder-placement {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 22px;
  background: #151e2b;
  border: 1px solid #394358;
  border-radius: 16px;
  color: #f4f2f8;
  text-align: left;
  cursor: pointer;
}
.builder-placement > div {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 15px;
  width: 100%;
}
.builder-placement strong {
  font-size: 18px;
}
.builder-placement b {
  font-size: 17px;
  color: #dbb7fb;
  white-space: nowrap;
}
.builder-placement p {
  margin: 0;
  font-size: 13px;
  line-height: 1.7;
  color: #afbed0;
}
.builder-placement small {
  font-size: 11px;
  color: #91a6b9;
}
.builder-placement > span {
  margin-top: auto;
  font-size: 12px;
  color: #e5cafa;
}
.listing-builder .back-link {
  background: none;
  border: 0;
  padding: 0;
  color: #c8aedf;
  cursor: pointer;
}
.builder-order-summary {
  display: flex;
  justify-content: space-between;
  gap: 25px;
  padding: 24px;
  background: #1a2030;
  border: 1px solid #4e3b68;
  border-radius: 16px;
  margin: 25px 0;
}
.builder-order-summary span {
  font-size: 11px;
  letter-spacing: 1px;
  color: #d2acef;
  text-transform: uppercase;
}
.builder-order-summary h3 {
  font-size: 23px;
  margin: 10px 0;
}
.builder-order-summary p {
  font-size: 13px;
  line-height: 1.6;
  color: #b4c0d1;
}
.builder-order-summary small {
  font-size: 11px;
  color: #8fabc1;
}
.builder-order-summary > strong {
  font-size: 26px;
  white-space: nowrap;
}
.payment-access-note {
  display: flex;
  gap: 15px;
  background: #1a2530;
  padding: 20px;
  border-radius: 14px;
  margin: 22px 0;
}
.payment-access-note > span {
  font-size: 22px;
}
.payment-access-note strong {
  font-size: 14px;
}
.payment-access-note p {
  font-size: 12px;
  line-height: 1.7;
  color: #aabdce;
  margin: 10px 0 0;
}
.builder-help {
  font-size: 12px !important;
  color: #97aabd !important;
  line-height: 1.7;
}
.builder-policies {
  border: 1px solid #364252;
  border-radius: 12px;
  padding: 16px;
  margin: 20px 0;
}
.builder-policies summary {
  cursor: pointer;
  font-size: 14px;
}
.builder-policies p {
  font-size: 12px;
  line-height: 1.7;
  color: #b0bdcc;
}
.builder-pay {
  display: block;
  width: 100%;
  margin-top: 22px;
  text-align: center;
}
.builder-pay:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.submission-receipt {
  width: min(520px, calc(100vw - 32px));
  background: #111a24;
  color: #edf2f8;
  border: 1px solid #705087;
  border-radius: 24px;
  padding: 38px;
  text-align: center;
  box-shadow: 0 20px 90px #0008;
}
.receipt-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: #20382e;
  color: #a7e2c6;
  font-size: 28px;
  margin: 0 auto 26px;
}
.submission-receipt h2 {
  font-size: 34px;
  margin: 14px 0 24px;
}
.receipt-window {
  display: block;
  font-size: 17px;
  color: #ddb7fb;
  line-height: 1.5;
}
.submission-receipt p:not(.eyebrow) {
  font-size: 13px;
  line-height: 1.8;
  color: #b6c3d2;
}
.submission-receipt .button {
  display: block;
  margin-top: 28px;
}
@media (max-width: 760px) {
  .business-signup-layout {
    grid-template-columns: 1fr;
    gap: 28px;
    padding-top: 20px;
  }
  .business-signup-story ol {
    display: none;
  }
  .business-signup-story h1 {
    font-size: 40px;
  }
  .business-profile-heading {
    align-items: flex-start;
    flex-direction: column;
  }
  .business-profile-heading p:not(.eyebrow) {
    overflow-wrap: anywhere;
  }
  .business-overview-stats {
    grid-template-columns: 1fr 1fr;
  }
  .business-listing-grid {
    grid-template-columns: 1fr;
  }
  .business-next-action {
    flex-direction: column;
    align-items: flex-start;
    padding: 24px;
  }
  .business-welcome-benefits {
    grid-template-columns: 1fr;
    gap: 15px;
  }
  .business-welcome {
    padding-top: 25px;
  }
  .business-welcome h1 {
    letter-spacing: -1.8px;
  }
  .business-signup-card {
    padding: 24px !important;
  }
  .builder-kind-grid,
  .builder-placement-grid {
    grid-template-columns: 1fr;
  }
  .listing-builder {
    padding: 22px 18px;
    border-radius: 18px;
  }
  .listing-builder > h2 {
    font-size: 27px;
  }
  .builder-order-summary {
    padding: 20px;
    flex-direction: column;
    gap: 12px;
  }
  .builder-order-summary > strong {
    font-size: 25px;
  }
  .builder-placement b {
    white-space: normal;
    font-size: 15px;
  }
  .business-report-heading {
    align-items: flex-start;
    flex-direction: column;
  }
  .submission-receipt {
    padding: 28px 22px;
  }
  .business-overview-stats > div {
    padding: 18px;
  }
  .business-overview-stats small {
    font-size: 11px;
  }
}
.profile-categories {
  border: 1px solid #ffffff28;
  border-radius: 12px;
  padding: 18px;
  margin: 8px 0 18px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.profile-categories legend {
  padding: 0 8px;
  font-size: 14px;
  font-weight: 700;
}
.profile-categories .check {
  margin: 0;
  align-items: center;
  font-size: 13px;
}
.profile-optional {
  border: 1px solid #ffffff24;
  border-radius: 12px;
  padding: 16px;
  margin-bottom: 18px;
}
.profile-optional summary {
  cursor: pointer;
  font-weight: 700;
  margin-bottom: 12px;
}
.free-profile-panel {
  background: radial-gradient(ellipse at 100% 0%, #a12af02a, transparent 65%), #141a22;
  border: 1px solid #79519b;
  border-radius: 18px;
  padding: 28px;
  margin-bottom: 24px;
}
.free-profile-panel h2 {
  margin-bottom: 10px;
}
.free-profile-panel p {
  color: #c7c3d4;
  line-height: 1.6;
}
.profile-metrics {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
  margin: 24px 0 14px;
}
.profile-metrics strong {
  display: block;
  font-size: 30px;
}
.profile-metrics small {
  display: block;
  color: #bbb5c9;
  margin-top: 4px;
}
.free-profile-panel .form-actions {
  margin-top: 20px;
}
.business-signup-form > small {
  display: block;
  color: #b9b4c6;
  line-height: 1.6;
  margin-bottom: 15px;
}
.listing-mini-stats {
  flex-wrap: wrap;
}
@media (max-width: 600px) {
  .profile-categories {
    grid-template-columns: 1fr;
    padding: 15px;
  }
  .free-profile-panel {
    padding: 20px;
  }
  .profile-metrics {
    grid-template-columns: 1fr 1fr;
    gap: 20px;
  }
  .profile-metrics strong {
    font-size: 26px;
  }
  .free-profile-panel .form-actions {
    display: flex;
    flex-direction: column;
    align-items: stretch;
  }
  .business-signup-story {
    padding-bottom: 10px;
  }
}
.profile-photo-editor {
  border: 1px solid #a46cc45c;
  border-radius: 14px;
  padding: 20px;
  margin-bottom: 24px;
  background: #ffffff04;
}
.profile-photo-editor p,
.profile-photo-editor small {
  color: #bbb5c9;
  font-size: 13px;
  line-height: 1.6;
  display: block;
}
.profile-photo-editor small {
  margin-top: 12px;
}
.profile-photo-preview {
  display: block;
  width: 100%;
  max-height: 280px;
  aspect-ratio: 16/9;
  object-fit: cover;
  border-radius: 10px;
  margin: 14px 0;
}
.profile-overview-photo {
  width: 130px;
  height: 90px;
  object-fit: cover;
  border-radius: 12px;
  margin: 10px 0;
}
.profile-photo-help {
  font-size: 13px;
  color: #c1aecf;
  line-height: 1.6;
}
.profile-quick-edit {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 22px;
  padding: 22px;
  background: #080e1666;
  border: 1px solid #ffffff24;
  border-radius: 15px;
  margin: 18px 0;
}
.dashboard-photo-upload {
  margin: 0;
}
.dashboard-photo-upload h3 {
  margin-top: 0;
}
.dashboard-photo-upload p {
  font-size: 13px;
}
.dashboard-upload-button {
  display: block !important;
  padding: 15px 18px;
  border: 2px solid #dca7ff;
  border-radius: 12px;
  background: #9c2be2;
  color: white;
  font-weight: 800 !important;
  cursor: pointer;
  margin: 12px 0 !important;
}
.dashboard-upload-button input {
  display: block;
  width: 100%;
  margin-top: 12px;
  font-size: 13px;
  color: #eee;
  cursor: pointer;
}
.dashboard-photo-upload small,
.dashboard-address-form small {
  display: block;
  color: #bfb5cc;
  line-height: 1.6;
  font-size: 12px;
}
.dashboard-address-form label {
  font-weight: 700;
}
.dashboard-address-form input {
  margin: 10px 0;
}
.dashboard-address-form button {
  margin-top: 14px;
  padding: 12px 18px;
  border-radius: 9px;
  background: #273342;
  border: 1px solid #a981bc;
  color: white;
  font-weight: 700;
}
.dashboard-address {
  overflow-wrap: anywhere;
  color: #e4c8f5 !important;
  font-size: 15px !important;
}
.business-signup-form label > small {
  font-size: 12px;
  color: #c1b6cc;
  line-height: 1.5;
  font-weight: 400;
}
@media (max-width: 650px) {
  .profile-quick-edit {
    grid-template-columns: 1fr;
    padding: 18px;
    gap: 24px;
  }
  .dashboard-upload-button {
    font-size: 16px;
  }
  .dashboard-address-form button {
    width: 100%;
  }
}
.free-listing-allowance {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  border: 1px solid #8e67c9;
  background: linear-gradient(110deg, #251b3c, #141d28);
  padding: 25px;
  border-radius: 16px;
  margin: 24px 0;
}
.free-listing-allowance p {
  color: #d2c6df;
  line-height: 1.6;
}
.free-placement {
  border: 2px solid #ad6fe7 !important;
  background: #2b1c42 !important;
}
.free-placement .button {
  margin-top: 15px;
}
.free-placement small {
  display: block;
}
.full-media-trigger {
  display: block;
  position: relative;
  border: 0;
  background: transparent;
  color: inherit;
  width: 100%;
  cursor: zoom-in;
  padding: 0;
  margin: 16px 0;
}
.full-media-trigger span {
  display: block;
  background: #252d3c;
  padding: 10px;
  border-radius: 8px;
  font-size: 13px;
}
.full-media-dialog {
  background: #080b10;
  border: 1px solid #ffffff33;
  border-radius: 14px;
  padding: 36px 12px 12px;
  width: min(1100px, 95vw);
  max-width: 95vw;
  max-height: 95vh;
}
.full-media-dialog img,
.full-media-dialog video {
  display: block;
  width: 100%;
  height: auto;
  max-height: 82vh;
  object-fit: contain;
}
.full-media-close {
  position: absolute;
  top: 5px;
  right: 12px;
  z-index: 2;
  border: 0;
  background: #18202b;
  color: white;
  border-radius: 50%;
  font-size: 28px;
  width: 34px;
  height: 34px;
}
.full-media-dialog::backdrop {
  background: #000d;
}
@media (max-width: 650px) {
  .free-listing-allowance {
    display: block;
    padding: 20px;
  }
  .free-listing-allowance .button {
    display: block;
    width: 100%;
    margin-top: 18px;
  }
  .full-media-dialog {
    padding: 40px 5px 10px;
  }
}
.profile-overview-media {
  max-width: 180px;
  margin: 12px 0;
}
.profile-overview-media .full-media-trigger {
  margin: 0;
}
.profile-overview-media .full-media-trigger span {
  font-size: 11px;
}

.https-input {
  display: flex;
  align-items: center;
  background: #0a1118;
  border: 1px solid #39414c;
  border-radius: 12px;
  overflow: hidden;
  min-width: 0;
}
.https-input > span {
  padding: 0 0 0 14px;
  color: #aeb9c9;
  flex-shrink: 0;
}
.https-input > input {
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  min-width: 0;
  flex: 1;
  width: 100%;
  padding-left: 2px !important;
}
.https-input:focus-within {
  outline: 2px solid #b62cff;
  outline-offset: 2px;
}

/* Local updates signup */
.subscribe-shell {
  max-width: 1240px;
}
.subscribe-layout {
  display: grid;
  grid-template-columns: 0.85fr 1.15fr;
  gap: 60px;
  align-items: start;
}
.subscribe-intro {
  position: sticky;
  top: 50px;
  padding-top: 42px;
}
.subscribe-intro h1 {
  font-size: clamp(46px, 5.8vw, 76px);
  line-height: 1.02;
  letter-spacing: -3px;
  margin: 20px 0 28px;
}
.subscribe-intro h1 span {
  color: #c17bff;
}
.subscribe-intro > p:not(.eyebrow) {
  color: #b4bfce;
  line-height: 1.9;
  font-size: 16px;
  max-width: 390px;
}
.subscribe-intro > a {
  display: inline-block;
  margin-top: 30px;
  color: #e3b7ff;
  font-size: 13px;
}
.subscribe-benefits {
  margin-top: 38px;
  color: #d4d6df;
  font-size: 13px;
  line-height: 2;
}
.subscribe-panel {
  margin: 0;
  padding: 32px;
  background: radial-gradient(ellipse at 100% 0%, #66359025, transparent 60%), #101820;
}
.subscribe-panel h2 {
  font-size: 28px;
  letter-spacing: -0.7px;
}
.subscribe-panel a {
  color: #deb3ff;
  text-underline-offset: 3px;
}
.subscribe-panel a.button {
  color: white;
}
.optional {
  color: #a9afbc;
  font-weight: 400;
}
.signup-choices {
  border: 0;
  padding: 0;
  margin: 26px 0;
  min-width: 0;
}
.signup-choices legend {
  font-size: 15px;
  font-weight: 700;
  margin-bottom: 14px;
}
.signup-choices legend small {
  display: block;
  color: #a6afbd;
  font-size: 11px;
  font-weight: 400;
  margin-top: 7px;
}
.signup-choices > div {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}
.manage-shell .signup-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 10px 12px;
  border: 1px solid #596071;
  border-radius: 24px;
  font-size: 12px;
  color: #d9dce5;
  cursor: pointer;
}
.signup-chip.selected {
  background: #6e2aa648;
  border-color: #c57aff;
  color: #f2defe;
}
.manage-shell .signup-chip input {
  width: 14px;
  min-height: 14px;
  height: 14px;
  padding: 0;
  margin: 0;
  accent-color: #b452f1;
}
.signup-chip:focus-within {
  outline: 2px solid #c784ff;
  outline-offset: 3px;
}
.signup-consent {
  border-top: 1px solid #ffffff20;
  padding-top: 24px;
  margin-top: 28px;
}
.signup-consent h3 {
  font-size: 15px;
  margin-bottom: 22px;
}
.signup-consent .check {
  align-items: flex-start !important;
  color: #c2c6d1;
  font-size: 12px !important;
  line-height: 1.8 !important;
}
.signup-consent .check input {
  flex-shrink: 0;
  margin-top: 4px !important;
  accent-color: #b452f1;
}
.signup-consent strong {
  display: block;
  color: #f3eaff;
  font-size: 14px;
  margin-bottom: 5px;
}
.signup-consent > p {
  font-size: 11px;
  line-height: 1.8;
}
.manage-shell .signup-submit {
  width: 100%;
  margin: 15px 0 8px;
  padding: 16px;
}
.phone-prefix {
  display: flex;
  align-items: center;
  border: 1px solid #3d3c4c;
  background: #090f16;
  border-radius: 9px;
  margin-top: 8px;
  overflow: hidden;
}
.phone-prefix > span {
  padding-left: 12px;
  color: #aeb8c7;
  font-size: 14px;
}
.phone-prefix input {
  border: 0;
  margin: 0;
  min-width: 0;
  flex: 1;
}
.phone-prefix:focus-within {
  outline: 2px solid #c784ff;
}
.signup-trap {
  position: absolute !important;
  left: -10000px !important;
  opacity: 0;
  pointer-events: none;
}
.signup-unsubscribe {
  display: block;
  margin: 12px auto !important;
}
.subscribe-panel .manage-footnote {
  font-size: 11px;
  line-height: 1.8;
  color: #a7b0c1;
}
.manage-tabs {
  flex-wrap: wrap;
}
@media (max-width: 900px) {
  .subscribe-layout {
    gap: 30px;
    grid-template-columns: 0.8fr 1.2fr;
  }
  .subscribe-intro h1 {
    font-size: 50px;
  }
}
@media (max-width: 700px) {
  .subscribe-layout {
    display: block;
  }
  .subscribe-intro {
    position: static;
    padding: 0 0 30px;
  }
  .subscribe-intro h1 {
    font-size: 47px;
    letter-spacing: -2px;
    margin: 16px 0 20px;
  }
  .subscribe-intro > p:not(.eyebrow) {
    font-size: 14px;
    max-width: 100%;
  }
  .subscribe-benefits {
    margin-top: 20px;
    line-height: 1.8;
  }
  .subscribe-intro > a {
    display: none;
  }
  .subscribe-panel {
    padding: 24px 20px;
  }
  .subscribe-panel h2 {
    font-size: 26px;
  }
  .subscribe-panel .form-grid {
    grid-template-columns: 1fr;
  }
  .subscribe-shell .manage-header {
    padding-bottom: 32px;
  }
}

.post-action-dialog {
  width: min(520px, calc(100vw - 32px));
  max-height: 90vh;
  overflow: auto;
  background: #111a24;
  color: #edf2f8;
  border: 1px solid #705087;
  border-radius: 20px;
  padding: 30px;
  box-shadow: 0 20px 90px #0008;
}
.post-action-dialog::backdrop {
  background: #000b;
}
.post-action-dialog h2 {
  font-size: 28px;
  margin: 10px 0 20px;
}
.post-action-dialog p {
  line-height: 1.7;
  color: #c9c4d4;
}
.post-action-dialog .form-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}
.post-action-dialog button,
.post-analytics-link {
  padding: 13px 18px;
  border-radius: 9px;
  border: 1px solid #4b4059;
  background: #252433;
  color: white;
}
.post-action-dialog .button {
  background: linear-gradient(110deg, #8a2ce9, #b13aef);
}
.post-action-dialog button:disabled {
  opacity: 0.5;
  cursor: wait;
}
.post-action-dialog .error {
  padding: 14px;
  background: #5a17223b;
  color: #ffadb0;
  border: 1px solid #a63d4666;
  border-radius: 10px;
}
#business-report {
  scroll-margin-top: 24px;
}

.manage-shell a.return-link,
.manage-shell .manage-header a.return-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 18px;
  border: 1px solid #9c79bd;
  border-radius: 12px;
  background: #22192e;
  color: #f0ddff;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none;
}
.manage-shell a.return-link:hover {
  background: #332344;
  color: #fff;
}
.manage-header {
  gap: 18px;
  flex-wrap: wrap;
}
.manage-header a.return-link {
  flex-shrink: 0;
}
.login-card > a.return-link:last-child {
  margin-top: 22px;
}
@media (max-width: 600px) {
  .manage-shell .manage-header a.return-link {
    min-height: 48px;
    font-size: 16px;
    padding: 12px 16px;
  }
}
