:root {
  --ink: #111827;
  --muted: #667085;
  --soft: #f7f8fb;
  --line: rgba(17, 24, 39, 0.1);
  --panel: rgba(255, 255, 255, 0.86);
  --blue: #2658d9;
  --blue-dark: #153f91;
  --green: #0d8f74;
  --green-dark: #0b6f61;
  --coral: #e25a3d;
  --amber: #f5b84b;
  --violet: #6b5cf6;
  --shadow: 0 20px 54px rgba(20, 31, 54, 0.14);
  --soft-shadow: 0 10px 26px rgba(20, 31, 54, 0.08);
  --radius-card: 16px;
  --radius-control: 14px;
  --invite-listing-person-name-size: 0.96rem;
}


html {
  min-height: 100%;
  max-width: 100%;
  overflow-x: hidden;
  background: #f8f8f5;
  color-scheme: light;
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  min-height: 100dvh;
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
  color: var(--ink);
  background-color: #f8f8f5;
  background-image: linear-gradient(180deg, #f8f8f5 0%, #eef4f2 52%, #eef1f7 100%);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
}

body.sheet-open {
  overflow: hidden;
}

.prototype-device-switch {
  width: min(430px, calc(100% - 24px));
  min-height: 44px;
  margin: 10px auto 0;
  border: 1px solid var(--line);
  border-radius: var(--radius-card);
  background: rgba(255, 255, 255, 0.9);
  display: grid;
  grid-template-columns: 1fr auto auto;
  align-items: center;
  gap: 6px;
  padding: 5px;
  position: sticky;
  top: 8px;
  z-index: 20;
  backdrop-filter: blur(18px);
}

.prototype-device-switch span {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 850;
  padding-left: 9px;
}

.prototype-scenario-picker {
  min-width: 0;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 6px;
}

.prototype-scenario-picker span {
  padding-left: 5px;
}

.prototype-scenario-picker select {
  min-width: 0;
  width: 152px;
  height: 34px;
  min-height: 34px;
  border: 0;
  border-radius: 10px;
  background: #f2f4f7;
  color: var(--ink);
  padding: 0 28px 0 9px;
  font-size: 0.82rem;
  font-weight: 850;
}

.prototype-device-switch button {
  min-height: 32px;
  border: 0;
  border-radius: 11px;
  background: transparent;
  color: var(--muted);
  padding: 0 11px;
  font-size: 0.82rem;
  font-weight: 900;
}

.prototype-device-switch button.is-active {
  background: var(--blue);
  color: white;
}

button,
input,
select,
textarea {
  font: inherit;
}

button {
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

button,
input,
select,
textarea {
  transition: border-color 160ms ease, background-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

button:hover:not(:disabled) {
  transform: translateY(-1px);
}

.app-shell {
  min-height: calc(100dvh - 54px);
  width: min(430px, 100%);
  margin: 0 auto;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr;
}

.compose-panel,
.preview-panel,
.review-panel {
  border: 1px solid var(--line);
  background: var(--panel);
  backdrop-filter: blur(22px);
}

.compose-panel {
  height: calc(100dvh - 54px);
  min-height: 0;
  border-radius: 0;
  border-left: 0;
  border-right: 0;
  padding: max(12px, env(safe-area-inset-top)) 16px max(10px, env(safe-area-inset-bottom));
  display: grid;
  grid-template-rows: 1fr auto;
  overflow: hidden;
  position: relative;
  box-shadow: none;
}

.preview-panel {
  border-radius: 22px;
  padding: 14px;
  box-shadow: none;
}

.review-panel {
  border-radius: 22px;
  padding: 14px;
  margin-top: 0;
  box-shadow: none;
}

.screen-scroll {
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior-x: none;
  -webkit-overflow-scrolling: touch;
  touch-action: pan-y;
  padding: 2px 0 96px;
  scrollbar-width: none;
  position: relative;
  z-index: 1;
}

.screen-scroll::-webkit-scrollbar {
  display: none;
}

.panel-head,
.app-nav,
.app-title-row,
.reply-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.screen-title-stack {
  min-width: 0;
}

.screen-title-line {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.find-results-summary .screen-metric {
  min-height: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 0;
  font-size: 0.84rem;
}

.screen-metric {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  border: 1px solid rgba(17, 24, 39, 0.09);
  border-radius: 999px;
  background: #f4f6f9;
  color: var(--muted);
  padding: 4px 9px;
  font-size: 0.76rem;
  font-weight: 850;
  white-space: nowrap;
}

.screen-metric[hidden] {
  display: none;
}

.find-results {
  min-width: 0;
}

.find-results[hidden] {
  display: none;
}

.find-results-summary {
  display: flex;
  align-items: center;
  min-height: 24px;
  margin: 8px 0;
}

.app-nav {
  align-items: center;
  min-height: 48px;
  margin: -2px 0 10px;
  position: sticky;
  top: 0;
  z-index: 80;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.97);
  padding: 5px;
  backdrop-filter: blur(18px);
  box-shadow: 0 10px 24px rgba(20, 31, 54, 0.07);
}

.app-nav.is-root-invitations {
  position: relative;
  top: auto;
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 0 5px;
  backdrop-filter: none;
  box-shadow: none;
}

.app-nav.is-root-invitations + .root-tabs {
  top: 0;
}

.icon-button {
  width: 44px;
  height: 44px;
  border: 1px solid var(--line);
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: white;
  color: var(--ink);
  font-size: 1.25rem;
  font-weight: 760;
  box-shadow: var(--soft-shadow);
}

.icon-button[hidden] {
  visibility: hidden;
  display: grid;
}

.avatar-button {
  width: 44px;
  height: 44px;
  border: 0;
  border-radius: 50%;
  color: white;
  background: #1f2937;
  font-weight: 850;
  box-shadow: var(--soft-shadow);
}

.member-menu-shell {
  position: relative;
  z-index: 90;
}

.avatar-button[aria-expanded="true"] {
  box-shadow: 0 0 0 4px rgba(33, 100, 232, 0.14), var(--soft-shadow);
}

.member-menu {
  position: absolute;
  top: calc(100% + 9px);
  right: 0;
  z-index: 100;
  width: min(252px, calc(100vw - 36px));
  border: 1px solid var(--line);
  border-radius: var(--radius-card);
  background: white;
  padding: 7px;
  box-shadow: var(--shadow);
}

body.is-prototype-mobile.member-menu-open .screen-scroll::before {
  content: "";
  position: fixed;
  inset: 54px 0 0;
  z-index: 70;
  background: rgba(247, 248, 251, 0.72);
  backdrop-filter: blur(6px);
}

body.member-menu-open .app-nav {
  z-index: 120;
}

body.member-menu-open .member-menu-shell {
  z-index: 130;
}

body.member-menu-open .bottom-action {
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}

body.member-menu-open .root-tabs,
body.member-menu-open .view-tabs,
body.member-menu-open .find-controls-panel,
body.member-menu-open .profile-preview {
  z-index: 1;
}

body.is-prototype-desktop.member-menu-open .screen-scroll::before {
  content: "";
  position: fixed;
  inset: 54px 0 0;
  z-index: 70;
  background: rgba(247, 248, 251, 0.58);
  backdrop-filter: blur(4px);
}

body.is-prototype-mobile .member-menu {
  width: min(252px, calc(100vw - 32px));
}

.member-menu[hidden] {
  display: none;
}

.member-menu button {
  width: 100%;
  min-height: 52px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: var(--ink);
  display: grid;
  gap: 2px;
  padding: 9px 10px;
  text-align: left;
}

.member-menu button:hover,
.member-menu button:focus-visible {
  background: var(--soft);
}

.member-menu strong {
  font-size: 0.92rem;
  font-weight: 880;
}

.member-menu span {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 720;
  line-height: 1.25;
}

.eyebrow {
  margin: 0 0 5px;
  color: var(--blue);
  font-size: 0.74rem;
  font-weight: 850;
  letter-spacing: 0;
  text-transform: uppercase;
}

.screen-eyebrow {
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 820;
  text-transform: none;
}

h1,
h2,
h3,
p {
  margin: 0;
  letter-spacing: 0;
}

h1 {
  font-size: clamp(1.65rem, 6vw, 2rem);
  line-height: 1.02;
  font-weight: 880;
  max-width: none;
}

h2 {
  font-size: 1.32rem;
  line-height: 1.14;
}

h3 {
  font-size: 1rem;
}

.status-pill,
.quiet-pill,
.status-dot {
  flex: 0 0 auto;
  border-radius: 999px;
  border: 1px solid rgba(33, 100, 232, 0.18);
  background: #edf4ff;
  color: var(--blue-dark);
  padding: 8px 11px;
  font-size: 0.82rem;
  font-weight: 820;
  white-space: nowrap;
}

.quiet-pill {
  background: #f4f6f9;
  color: var(--muted);
}

.app-nav .nav-status {
  flex: 0 0 auto;
  border-radius: 999px;
  border-color: var(--line);
  background: rgba(255, 255, 255, 0.68);
  color: var(--muted);
  border-style: solid;
  border-width: 1px;
  padding: 6px 10px;
  font-size: 0.76rem;
  font-weight: 820;
  white-space: nowrap;
  box-shadow: none;
}

.app-nav .nav-status.is-navigation-title {
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--ink);
  padding: 0;
  font-size: clamp(1.25rem, 4vw, 1.5rem);
  font-weight: 880;
  letter-spacing: -0.02em;
  line-height: 1;
}

.status-dot {
  background: #fff7ed;
  border-color: rgba(226, 90, 61, 0.22);
  color: #9a3b25;
}

.intro-copy {
  margin: 7px 0 12px;
  color: var(--muted);
  font-size: 0.92rem;
  line-height: 1.34;
  max-width: 34rem;
}

.root-tabs,
.view-tabs {
  position: sticky;
  top: 58px;
  z-index: 4;
  display: grid;
  gap: 6px;
  border: 1px solid var(--line);
  border-radius: var(--radius-card);
  background: rgba(255, 255, 255, 0.98);
  padding: 5px;
  margin: 10px 0 14px;
  backdrop-filter: blur(18px);
}

.root-tabs {
  grid-template-columns: repeat(3, 1fr);
}

.view-tabs {
  grid-template-columns: repeat(3, 1fr);
}

.root-tabs[hidden],
.view-tabs[hidden] {
  display: none;
}

.notification-center {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5px;
  margin: 0 0 8px;
}

.notification-center:empty {
  display: none;
}

.notification-item {
  border: 1px solid rgba(17, 24, 39, 0.07);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.62);
  padding: 7px 8px;
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 7px;
  align-items: center;
  box-shadow: none;
}

.notification-item:has(.notification-item-action) {
  grid-template-columns: 18px minmax(0, 1fr) auto;
}

.notification-item-copy {
  min-width: 0;
}

.notification-item-action {
  min-width: 76px;
  min-height: 44px;
  border: 1px solid rgba(49, 91, 181, 0.18);
  border-radius: 10px;
  background: #f0f4ff;
  color: var(--blue-dark);
  padding: 0 12px;
  font: inherit;
  font-size: 0.78rem;
  font-weight: 850;
}

.notification-item-action:hover {
  border-color: rgba(49, 91, 181, 0.34);
  background: #e8efff;
}

.notification-item-action:focus-visible {
  outline: 3px solid rgba(49, 91, 181, 0.24);
  outline-offset: 2px;
}

.notification-item.is-social-mix {
  border-color: rgba(95, 72, 167, 0.2);
}

.notification-item.is-social-mix.is-private {
  background: linear-gradient(110deg, rgba(247, 244, 255, 0.94), rgba(255, 255, 255, 0.76));
}

.notification-item.is-social-mix.is-private .notification-icon {
  background: #eee9ff;
  color: #5f48a7;
}

.notification-item.is-secondary {
  background: transparent;
}

.notification-icon {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  position: relative;
  background: #edf4ff;
  color: var(--blue-dark);
}

.notification-icon::before {
  content: "";
  position: absolute;
  inset: 5px;
  border: 2px solid currentColor;
  border-radius: 50%;
}

.notification-icon::after {
  content: "";
  position: absolute;
  left: 8px;
  top: 4px;
  width: 2px;
  height: 7px;
  border-radius: 2px;
  background: currentColor;
}

.notification-item strong,
.notification-item small {
  display: block;
}

.notification-item strong {
  font-size: 0.8rem;
  line-height: 1.2;
}

.notification-item small {
  margin-top: 1px;
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 720;
  line-height: 1.28;
}

.notification-item.is-action {
  border-color: rgba(226, 90, 61, 0.24);
  background: #fff8f4;
}

.notification-item.is-action .notification-icon {
  background: #fff0e8;
  color: #9a3b25;
}

.notification-item.is-complete {
  border-color: rgba(13, 143, 116, 0.22);
  background: #f4fbf8;
}

.notification-item.is-complete .notification-icon {
  background: #dff7ee;
  color: var(--green);
}

.notification-item.is-private .notification-icon {
  background: #eef2f7;
  color: #475467;
}

@media (max-width: 380px) {
  .notification-item:has(.notification-item-action) {
    grid-template-columns: 18px minmax(0, 1fr);
  }

  .notification-item-action {
    grid-column: 2;
    justify-self: start;
    min-width: 96px;
  }
}

@media (max-width: 600px) {
  .notification-item.is-plan-check-in:has(.notification-item-action) {
    grid-template-columns: 22px minmax(0, 1fr);
  }

  .notification-item.is-plan-check-in .notification-item-action {
    grid-column: 2;
    justify-self: start;
    min-width: 0;
    padding-inline: 14px;
  }
}

/* Invitation RSVP and context refinement v12 -----------------------
   Deadlines are quiet metadata. Decisions stay together. Context
   belongs outside the invitation face on neutral system surfaces. */
body.is-unified-invitation-system :where(
  .find-event-action-row.is-traditional-rsvp,
  .invite-detail-actions.is-traditional-rsvp,
  .guest-response-row.is-traditional-rsvp
) {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr) !important;
  gap: 8px !important;
}

body.is-unified-invitation-system :where(
  .find-event-action-row.is-traditional-rsvp,
  .invite-detail-actions.is-traditional-rsvp
) {
  padding-top: 14px !important;
}

body.is-unified-invitation-system .invitation-response-meta.traditional-rsvp-heading {
  grid-column: 1 / -1 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 4px !important;
  align-items: start !important;
  width: 100% !important;
  padding: 0 2px 5px !important;
}

body.is-unified-invitation-system .invitation-response-meta > small {
  grid-row: 2;
  color: var(--system-muted) !important;
  font-size: 0.68rem !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.35 !important;
  text-transform: none !important;
}

body.is-unified-invitation-system .invitation-response-deadline {
  display: inline-flex;
  grid-row: 1;
  align-items: center;
  gap: 6px;
  width: max-content;
  max-width: 100%;
  color: var(--system-copy);
  font-size: 0.7rem;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.25;
}

body.is-unified-invitation-system .invitation-response-deadline > span:first-child {
  color: var(--system-muted);
}

body.is-unified-invitation-system .invitation-response-deadline > span:first-child::after {
  content: " ·";
}

body.is-unified-invitation-system .invitation-response-deadline .person-timer {
  min-height: 0 !important;
  border: 0 !important;
  background: transparent !important;
  padding: 0 !important;
  color: var(--system-ink) !important;
  font-size: inherit !important;
  font-weight: 500 !important;
  line-height: inherit !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system .invitation-response-deadline .timer-icon {
  display: none !important;
}

body.is-unified-invitation-system :where(
  .find-event-action-row.is-traditional-rsvp,
  .invite-detail-actions.is-traditional-rsvp
) > :where(.find-not-now-action, .secondary-action) {
  grid-column: 1 !important;
  grid-row: auto !important;
  min-width: 0 !important;
  min-height: 52px !important;
}

body.is-unified-invitation-system :where(
  .find-event-action-row.is-traditional-rsvp,
  .invite-detail-actions.is-traditional-rsvp
) > .profile-add-action {
  grid-column: 2 !important;
  grid-row: auto !important;
  min-width: 0 !important;
  min-height: 52px !important;
}

body.is-unified-invitation-system .guest-response-row.is-traditional-rsvp > .inline-action {
  grid-column: 1 !important;
  min-width: 0 !important;
  min-height: 52px !important;
}

body.is-unified-invitation-system .guest-response-row.is-traditional-rsvp > .profile-add-action {
  grid-column: 2 !important;
  min-width: 0 !important;
  min-height: 52px !important;
}

body.is-unified-invitation-system .guest-response-row.invitation-confirmation-actions > .profile-add-action {
  grid-column: 1 / -1 !important;
}

/* Canonical v143: recognizable non-Invitation controls, neutral editorial
   photo presentation, and a continuous page-level surface progression.
   Traditional Invitation objects and response actions remain unchanged. */
body.is-unified-invitation-system {
  --chrome-canvas: #edf0f4;
  --chrome-paper: #ffffff;
  --chrome-utility: #f3f6f9;
  --chrome-line: rgba(38, 51, 66, 0.15);
  --chrome-line-strong: rgba(38, 51, 66, 0.24);
  --chrome-ink: #1b232c;
  --chrome-copy: #46515d;
  --chrome-muted: #707b87;
  --chrome-navy: #264f76;
  --chrome-navy-dark: #173a5a;
  --system-canvas: var(--chrome-canvas);
}

.system-line-icon {
  width: 20px;
  height: 20px;
  display: block;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}

body.is-unified-invitation-system .compose-panel {
  background: var(--chrome-canvas) !important;
}

body.is-unified-invitation-system #backButton {
  display: grid;
  place-items: center;
  font-size: 0 !important;
}

body.is-unified-invitation-system #backButton[hidden] {
  display: none !important;
}

body.is-unified-invitation-system #backButton .system-line-icon {
  width: 22px;
  height: 22px;
}

/* Status symbols are conventional line icons; readable state labels remain. */
body.is-unified-invitation-system .notification-item {
  grid-template-columns: 26px minmax(0, 1fr) !important;
  border-color: var(--chrome-line) !important;
  border-inline-start-width: 1px !important;
  background: rgba(255, 255, 255, 0.92) !important;
}

body.is-unified-invitation-system .notification-icon {
  width: 24px !important;
  height: 24px !important;
  display: grid !important;
  place-items: center;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--chrome-navy) !important;
  font-size: 0 !important;
}

body.is-unified-invitation-system .notification-icon .system-line-icon {
  width: 22px;
  height: 22px;
  stroke-width: 1.75;
}

body.is-unified-invitation-system .notification-item.is-action .notification-icon {
  color: #8b3f3f !important;
}

body.is-unified-invitation-system .notification-item.is-waiting .notification-icon {
  color: #5f6874 !important;
}

body.is-unified-invitation-system .notification-item.is-complete .notification-icon {
  color: #276b5d !important;
}

body.is-unified-invitation-system .notification-item.is-private .notification-icon {
  color: var(--chrome-navy) !important;
}

body.is-unified-invitation-system .notification-item:has(.notification-item-action) .notification-item-action {
  grid-column: 2;
}

/* Recognizable response, waiting, and filtering controls sit in the chrome,
   never inside an Invitation object. */
body.is-unified-invitation-system.is-traditional-invitation-system .incoming-section-header {
  grid-template-columns: 30px minmax(0, 1fr) auto !important;
  gap: 12px !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system .response-disclosure-mark,
body.is-unified-invitation-system.is-traditional-invitation-system .find-filter-mark {
  width: 30px !important;
  height: 30px !important;
  display: grid !important;
  place-items: center;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--chrome-navy) !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system .response-disclosure-mark::before,
body.is-unified-invitation-system.is-traditional-invitation-system .response-disclosure-mark::after,
body.is-unified-invitation-system.is-traditional-invitation-system .find-filter-mark::before,
body.is-unified-invitation-system.is-traditional-invitation-system .find-filter-mark::after {
  content: none !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system .response-disclosure-mark .system-line-icon,
body.is-unified-invitation-system.is-traditional-invitation-system .find-filter-mark .system-line-icon {
  width: 22px;
  height: 22px;
}

body.is-unified-invitation-system.is-traditional-invitation-system .incoming-section-header .response-disclosure-copy {
  grid-column: 2 !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system .incoming-section-toggle {
  grid-column: 3 !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system .find-filter-summary {
  grid-template-columns: 30px minmax(0, 1fr) auto auto !important;
  gap: 12px !important;
  background: var(--chrome-utility) !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system .find-filter-summary-copy {
  grid-column: 2 !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system .find-controls-panel {
  border-color: var(--chrome-line) !important;
  background: var(--chrome-utility) !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system .find-controls-body {
  border-top-color: var(--chrome-line) !important;
  background: #f8fafc !important;
}

/* The page now descends from white action surfaces into one cool neutral field.
   Invitation cards retain their exact selectors, dimensions, and treatment. */
body.is-unified-invitation-system #findView .incoming-response-stack {
  border-color: var(--chrome-line) !important;
  background: var(--chrome-paper) !important;
}

body.is-unified-invitation-system #findView .find-results {
  position: relative;
  isolation: isolate;
  margin-top: 22px;
}

body.is-unified-invitation-system #findView .find-results::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: -12px;
  border: 1px solid rgba(38, 51, 66, 0.08);
  border-radius: 20px;
  background: #e9edf2;
}

body.is-unified-invitation-system #findView .find-results-summary {
  margin-bottom: 12px !important;
  border-bottom-color: var(--chrome-line) !important;
}

body.is-unified-invitation-system #findView .find-invite-list {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system #findView .find-invite-group-head {
  border-bottom-color: var(--chrome-line) !important;
  background: transparent !important;
  padding-inline: 4px !important;
}

body.is-unified-invitation-system #findView .find-invite-group-head > span {
  border-color: var(--chrome-line) !important;
  background: rgba(255, 255, 255, 0.74) !important;
  color: var(--chrome-copy) !important;
  font-weight: 500 !important;
}

/* Account navigation uses one quiet, literal icon language. */
body.is-unified-invitation-system.is-editorial-confidence-path #accountView .account-settings-symbol {
  width: 34px !important;
  height: 34px !important;
  border: 1px solid rgba(38, 51, 66, 0.09) !important;
  border-radius: 9px !important;
  background: #eef2f6 !important;
  color: var(--chrome-navy) !important;
  font-size: 0 !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .account-settings-symbol .system-line-icon {
  width: 20px;
  height: 20px;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .account-settings-chevron {
  width: 24px;
  height: 24px;
  display: grid;
  place-items: center;
  color: #7d8791 !important;
  font-size: 0 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .account-settings-chevron .system-line-icon {
  width: 18px;
  height: 18px;
  stroke-width: 1.8;
}

/* Photo management is a single editorial portrait workspace, not nested
   pastel upload cards. All approval, privacy, and upload behavior is retained. */
body.is-unified-invitation-system.is-editorial-confidence-path #accountView .photo-edit-panel {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 2px 0 0 !important;
  grid-template-columns: 112px minmax(0, 1fr) !important;
  gap: 20px !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .photo-primary-preview {
  align-content: start;
  gap: 8px;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .photo-preview-frame {
  width: 96px !important;
  border: 4px solid #fff !important;
  outline: 2px solid #5f6c79 !important;
  background-color: #eef1f4 !important;
  color: var(--chrome-navy) !important;
  box-shadow: 0 9px 22px rgba(28, 39, 51, 0.14) !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .photo-primary-preview > strong {
  color: var(--chrome-ink) !important;
  font-size: 0.82rem !important;
  font-weight: 500 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .photo-primary-preview > span {
  color: var(--chrome-muted) !important;
  font-size: 0.7rem !important;
  font-weight: 400 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .photo-edit-fields {
  gap: 12px !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .photo-person-rule {
  border: 1px solid #d8e1e9 !important;
  border-radius: 14px !important;
  background: #eef4f8 !important;
  padding: 12px !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .photo-person-rule-mark {
  width: 34px !important;
  height: 34px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--chrome-navy) !important;
  font-size: 0 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .photo-person-rule-mark .system-line-icon {
  width: 28px;
  height: 28px;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .photo-person-rule strong {
  color: var(--chrome-ink) !important;
  font-weight: 500 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .photo-person-rule span {
  color: var(--chrome-copy) !important;
  font-weight: 400 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .photo-upload-control {
  border: 1px solid var(--chrome-line) !important;
  border-radius: 14px !important;
  background: #f8fafc !important;
  padding: 12px !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .photo-upload-control > span strong {
  color: var(--chrome-ink) !important;
  font-weight: 500 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .photo-upload-control input[type="file"]::file-selector-button {
  border: 1px solid var(--chrome-navy-dark) !important;
  border-radius: 10px !important;
  background: var(--chrome-navy-dark) !important;
  color: #fff !important;
  font-weight: 500 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .member-photo-upload-gallery {
  gap: 10px !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .member-photo-upload-item,
body.is-unified-invitation-system.is-editorial-confidence-path #accountView .member-photo-upload-item.is-primary {
  border: 1px solid var(--chrome-line) !important;
  border-radius: 14px !important;
  background: #fff !important;
  padding: 10px !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .member-photo-upload-item.is-primary {
  border-color: #5e7890 !important;
  box-shadow: inset 0 0 0 1px rgba(38, 79, 118, 0.12) !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .member-photo-upload-item.is-primary .member-photo-upload-thumb {
  border: 3px solid #fff !important;
  outline: 2px solid #5f6c79 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .member-photo-primary-badge {
  border-color: #fff !important;
  background: #29343f !important;
  color: #fff !important;
  font-weight: 500 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .member-photo-upload-copy strong {
  color: var(--chrome-ink) !important;
  font-weight: 500 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .member-photo-upload-copy span,
body.is-unified-invitation-system.is-editorial-confidence-path #accountView .member-photo-approved-receipt {
  color: var(--chrome-muted) !important;
  font-weight: 400 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .member-photo-selected-receipt {
  border: 1px solid rgba(38, 79, 118, 0.12) !important;
  background: #eef3f7 !important;
  color: var(--chrome-navy-dark) !important;
  font-weight: 500 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .member-primary-photo-confirm {
  border: 0 !important;
  border-top: 1px solid var(--chrome-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 12px 2px 0 !important;
  color: var(--chrome-copy) !important;
  font-weight: 400 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .member-primary-photo-confirm input {
  accent-color: var(--chrome-navy) !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .member-photo-validation {
  color: var(--chrome-navy-dark) !important;
  font-weight: 500 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .member-photo-privacy-note {
  border: 0 !important;
  border-left: 2px solid #8794a1 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--chrome-muted) !important;
  padding: 2px 0 2px 10px !important;
  font-weight: 400 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .member-photo-expand-mark {
  background: var(--chrome-navy-dark) !important;
  color: #fff !important;
  box-shadow: 0 4px 12px rgba(23, 58, 90, 0.2) !important;
}

/* The standalone approved-photo viewer follows the same neutral system. */
body.is-unified-invitation-system .member-photo-viewer-panel {
  border-color: var(--chrome-line) !important;
  background: #fff !important;
  box-shadow: 0 32px 100px rgba(23, 31, 40, 0.3) !important;
}

body.is-unified-invitation-system .member-photo-viewer-head h2 {
  color: var(--chrome-ink) !important;
  font-family: var(--salon-sans) !important;
  font-weight: 500 !important;
}

body.is-unified-invitation-system .member-photo-viewer-head > p:last-child {
  color: var(--chrome-muted) !important;
  font-weight: 400 !important;
}

body.is-unified-invitation-system .member-photo-stage figure {
  background: #e7ebef !important;
  box-shadow: inset 0 0 0 1px var(--chrome-line) !important;
}

body.is-unified-invitation-system .member-photo-stage figcaption {
  background: #f8fafb !important;
  color: var(--chrome-copy) !important;
  font-weight: 500 !important;
}

body.is-unified-invitation-system .member-photo-nav {
  border-color: var(--chrome-line) !important;
  background: #fff !important;
  color: var(--chrome-navy) !important;
  box-shadow: 0 8px 22px rgba(23, 31, 40, 0.1) !important;
}

body.is-unified-invitation-system .member-photo-thumbnail.is-active {
  border-color: var(--chrome-navy) !important;
}

body.is-unified-invitation-system .member-photo-viewer-privacy {
  border-color: #d8e1e9 !important;
  background: #eef4f8 !important;
  color: var(--chrome-copy) !important;
  font-weight: 400 !important;
}

@media (max-width: 640px) {
  body.is-unified-invitation-system.is-editorial-confidence-path #accountView .photo-edit-panel {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 16px !important;
  }

  body.is-unified-invitation-system.is-editorial-confidence-path #accountView .photo-primary-preview {
    grid-template-columns: 96px minmax(0, 1fr) !important;
    padding: 2px 2px 16px;
    border-bottom: 1px solid var(--chrome-line);
  }
}

@media (min-width: 641px) {
  body.is-unified-invitation-system.is-editorial-confidence-path #accountView .member-photo-upload-gallery {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 360px) {
  body.is-unified-invitation-system.is-traditional-invitation-system .incoming-section-header,
  body.is-unified-invitation-system.is-traditional-invitation-system .find-filter-summary {
    gap: 9px !important;
  }

  body.is-unified-invitation-system .notification-item,
  body.is-unified-invitation-system .notification-item:has(.notification-item-action) {
    grid-template-columns: 24px minmax(0, 1fr) !important;
  }

  body.is-unified-invitation-system .notification-item:has(.notification-item-action) .notification-item-action {
    grid-column: 2 !important;
  }
}

body.is-unified-invitation-system .traditional-rsvp-heading > .invitation-response-deadline,
body.is-unified-invitation-system .traditional-rsvp-heading > .invitation-response-deadline :where(span) {
  letter-spacing: 0 !important;
  text-transform: none !important;
}

body.is-unified-invitation-system .find-event-action-row.is-traditional-rsvp,
body.is-unified-invitation-system .invite-detail-actions.is-traditional-rsvp,
body.is-unified-invitation-system .guest-response-row.is-traditional-rsvp {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr) !important;
}

body.is-unified-invitation-system .find-event-action-row.is-traditional-rsvp > button.find-not-now-action,
body.is-unified-invitation-system .invite-detail-actions.is-traditional-rsvp > button.secondary-action,
body.is-unified-invitation-system .find-event-action-row.is-traditional-rsvp > button.profile-add-action,
body.is-unified-invitation-system .invite-detail-actions.is-traditional-rsvp > button.profile-add-action {
  min-height: 52px !important;
}

/* Canonical v142 Out creation hierarchy -----------------------------
   One calm action surface above management content; no gradient,
   shadow, badge, or decorative icon tile. */
body.is-unified-invitation-system #homeView .home-dashboard {
  margin-bottom: 18px;
}

body.is-unified-invitation-system #homeView .home-command.is-primary {
  min-height: 72px !important;
  border: 1px solid rgba(8, 120, 230, 0.26) !important;
  border-radius: 15px !important;
  background: #edf5fd !important;
  color: var(--system-ink) !important;
  grid-template-columns: 28px minmax(0, 1fr) auto !important;
  grid-template-rows: auto auto !important;
  column-gap: 12px !important;
  row-gap: 2px !important;
  padding: 12px 14px !important;
  box-shadow: none !important;
  transition: background-color 140ms ease, border-color 140ms ease;
}

body.is-unified-invitation-system #homeView .home-command.is-primary:hover {
  border-color: rgba(8, 120, 230, 0.38) !important;
  background: #e7f1fc !important;
}

body.is-unified-invitation-system #homeView .home-command.is-primary .action-icon {
  grid-column: 1 !important;
  grid-row: 1 / 3 !important;
  width: 28px !important;
  height: 28px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--system-action) !important;
  font-size: 1.75rem !important;
  font-weight: 300 !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system #homeView .home-command.is-primary strong {
  grid-column: 2 !important;
  grid-row: 1 !important;
  color: var(--system-ink) !important;
  font-size: 0.98rem !important;
  font-weight: 500 !important;
  letter-spacing: -0.015em;
}

body.is-unified-invitation-system #homeView .home-command.is-primary small {
  grid-column: 2 !important;
  grid-row: 2 !important;
  color: var(--system-muted) !important;
  font-size: 0.73rem !important;
  font-weight: 400 !important;
  line-height: 1.25 !important;
}

body.is-unified-invitation-system #homeView .home-command.is-primary::after {
  content: "›";
  grid-column: 3;
  grid-row: 1 / 3;
  align-self: center;
  color: var(--system-action);
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1;
}

@media (max-width: 900px) {
  body.is-unified-invitation-system #homeView .home-command.is-primary {
    width: calc(100% - 32px) !important;
    margin: 0 16px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.is-unified-invitation-system #homeView .home-command.is-primary {
    transition: none;
  }
}

body.is-unified-invitation-system .rsvp-open-action-copy {
  display: inline-flex;
  align-items: baseline;
  justify-content: center;
  gap: 0.34em;
  min-width: 0;
  max-width: 100%;
  color: #fff;
  line-height: 1;
  white-space: nowrap;
}

body.is-unified-invitation-system .rsvp-open-action-prefix {
  color: #fff;
  font-size: 0.76rem;
  font-weight: 600;
  letter-spacing: 0.045em;
  line-height: 1;
  text-transform: uppercase;
}

body.is-unified-invitation-system .rsvp-open-action-separator {
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.78rem;
  font-weight: 400;
}

body.is-unified-invitation-system .rsvp-open-action-label {
  color: #fff;
  font-size: 0.88rem;
  font-weight: 500;
  line-height: 1;
}

body.is-unified-invitation-system .invitation-context-receipt {
  display: grid !important;
  grid-template-columns: 24px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 12px 16px 0 !important;
  border: 1px solid var(--system-line) !important;
  border-radius: 11px !important;
  background: #f0f1f3 !important;
  padding: 11px 12px !important;
  color: var(--system-copy) !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system .invitation-context-receipt :where(strong, small) {
  display: block;
}

body.is-unified-invitation-system .invitation-context-receipt strong {
  color: var(--system-copy) !important;
  font-size: 0.74rem !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
}

body.is-unified-invitation-system .invitation-context-receipt small {
  margin-top: 3px !important;
  color: var(--system-muted) !important;
  font-size: 0.67rem !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
}

body.is-unified-invitation-system .invitation-context-receipt :where(
  .last-minute-clock,
  .recurring-series-icon
) {
  display: grid;
  place-items: center;
  width: 22px !important;
  height: 22px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--system-muted) !important;
}

body.is-unified-invitation-system .invitation-context-receipt .recurring-series-icon svg {
  width: 21px;
  height: 21px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.55;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body.is-unified-invitation-system .invitation-context-receipt .recurring-series-icon::before,
body.is-unified-invitation-system .invitation-context-receipt .recurring-series-icon::after {
  display: none !important;
}

body.is-unified-invitation-system .invitation-context-receipt .last-minute-clock {
  width: 18px !important;
  height: 18px !important;
  margin-left: 2px;
  border: 1.5px solid currentColor !important;
  border-radius: 50% !important;
}

body.is-unified-invitation-system .invitation-context-receipt .last-minute-clock::before,
body.is-unified-invitation-system .invitation-context-receipt .last-minute-clock::after {
  background: currentColor !important;
}

body.is-unified-invitation-system .out-final-confirmation-callout .invitation-response-deadline {
  margin-top: 8px;
}

@media (max-width: 360px) {
  body.is-unified-invitation-system :where(
    .find-event-action-row.is-traditional-rsvp,
    .invite-detail-actions.is-traditional-rsvp,
    .guest-response-row.is-traditional-rsvp
  ) {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr) !important;
  }

  body.is-unified-invitation-system :where(
    .find-event-action-row.is-traditional-rsvp,
    .invite-detail-actions.is-traditional-rsvp
  ) > :where(.find-not-now-action, .secondary-action, .profile-add-action) {
    grid-row: auto !important;
  }

  body.is-unified-invitation-system .guest-response-row.is-traditional-rsvp > .profile-add-action {
    grid-column: 2 !important;
  }

  body.is-unified-invitation-system .guest-response-row.invitation-confirmation-actions > .profile-add-action {
    grid-column: 1 / -1 !important;
  }
}

.root-tab,
.view-tab {
  min-height: 44px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: var(--muted);
  font-size: 0.92rem;
  font-weight: 850;
  padding: 0 4px;
}

.root-tab.is-active,
.view-tab.is-active {
  color: white;
  background: var(--ink);
  box-shadow: 0 8px 18px rgba(17, 24, 39, 0.12);
}

.back-to-top {
  position: absolute;
  right: 18px;
  bottom: calc(18px + env(safe-area-inset-bottom));
  z-index: 70;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(17, 24, 39, 0.1);
  border-radius: 50%;
  background: rgba(17, 24, 39, 0.92);
  color: white;
  display: grid;
  place-items: center;
  box-shadow: 0 14px 32px rgba(20, 31, 54, 0.22);
}

.back-to-top[hidden] {
  display: none;
}

.back-to-top span {
  width: 12px;
  height: 12px;
  border-top: 2px solid currentColor;
  border-left: 2px solid currentColor;
  transform: translateY(3px) rotate(45deg);
}

.compose-panel:has(.bottom-action:not([hidden])) .back-to-top {
  bottom: calc(86px + env(safe-area-inset-bottom));
}

.app-view {
  display: none;
}

.app-view.is-active {
  display: block;
}

.journey-progress {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
  margin: 4px 0 12px;
}

.journey-step {
  min-width: 0;
  border-radius: 12px;
  background: #f2f4f7;
  color: var(--muted);
  padding: 8px;
}

.journey-step strong,
.journey-step span {
  display: block;
}

.journey-step strong {
  font-size: 0.72rem;
  line-height: 1.12;
}

.journey-step span {
  margin-top: 3px;
  font-size: 0.64rem;
  font-weight: 760;
  line-height: 1.2;
}

.journey-step.is-active {
  background: #edf4ff;
  color: var(--blue-dark);
  box-shadow: inset 0 0 0 1px rgba(33, 100, 232, 0.16);
}

.journey-step.is-complete {
  background: #edf9f5;
  color: var(--green-dark);
}

.journey-card {
  margin-top: 12px;
  border: 1px solid var(--line);
  border-radius: var(--radius-card);
  background: rgba(255, 255, 255, 0.9);
  padding: 14px;
  box-shadow: 0 8px 22px rgba(20, 31, 54, 0.05);
}

.journey-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.journey-card h2 {
  font-size: 1.15rem;
  line-height: 1.12;
}

.journey-lede {
  margin-top: 9px;
  color: #475467;
  font-size: 0.9rem;
  font-weight: 690;
  line-height: 1.42;
}

.privacy-promise-grid {
  display: grid;
  gap: 7px;
  margin-top: 12px;
}

.privacy-promise-grid div {
  border-left: 3px solid rgba(13, 143, 116, 0.32);
  border-radius: 0 11px 11px 0;
  background: #f4fbf8;
  padding: 8px 9px;
}

.privacy-promise-grid strong,
.privacy-promise-grid span {
  display: block;
}

.privacy-promise-grid strong {
  font-size: 0.84rem;
}

.privacy-promise-grid span {
  margin-top: 2px;
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 700;
  line-height: 1.28;
}

.application-form {
  display: grid;
  gap: 13px;
}

.application-form[hidden] {
  display: none;
}

.setup-form {
  display: grid;
  gap: 13px;
}

.setup-form[hidden],
.setup-first-action[hidden],
.setup-result[hidden] {
  display: none;
}

.setup-choice-grid {
  display: grid;
  gap: 8px;
  margin-top: 12px;
}

.setup-choice-grid button {
  min-height: 68px;
  border: 1px solid rgba(17, 24, 39, 0.1);
  border-radius: 14px;
  background: #f8fafc;
  color: var(--ink);
  padding: 11px;
  text-align: left;
  cursor: pointer;
}

.setup-choice-grid button:hover,
.setup-choice-grid button:focus-visible,
.setup-choice-grid button.is-selected {
  border-color: rgba(33, 100, 232, 0.4);
  background: #edf4ff;
}

.setup-choice-grid strong,
.setup-choice-grid span {
  display: block;
}

.notification-journey-controls {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 14px;
}

.notification-journey-controls label {
  display: grid;
  gap: 5px;
  color: #475467;
  font-size: 0.76rem;
  font-weight: 850;
}

.external-notification-preview {
  margin-top: 12px;
  border: 1px solid rgba(17, 24, 39, 0.1);
  border-radius: 16px;
  background: #f8fafc;
  padding: 13px;
}

.external-notification-preview.is-push,
.external-notification-preview.is-sms {
  max-width: 430px;
}

.external-notification-preview span,
.external-notification-preview strong,
.external-notification-preview p,
.external-notification-preview small {
  display: block;
}

.external-notification-preview span {
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 900;
  text-transform: uppercase;
}

.external-notification-preview strong {
  margin-top: 6px;
  font-size: 0.96rem;
  line-height: 1.2;
}

.external-notification-preview p {
  margin-top: 7px;
  color: #475467;
  font-size: 0.84rem;
  font-weight: 680;
  line-height: 1.4;
}

.external-notification-preview small {
  margin-top: 10px;
  border-top: 1px solid rgba(17, 24, 39, 0.08);
  color: var(--muted);
  padding-top: 8px;
  font-weight: 720;
}

.notification-privacy-receipt,
.notification-return-summary {
  margin-top: 11px;
  border-radius: 13px;
  background: #f4f8ff;
  padding: 10px;
}

.notification-privacy-receipt strong,
.notification-privacy-receipt span,
.notification-return-summary strong,
.notification-return-summary span {
  display: block;
}

.access-policy-controls {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 14px;
}

.access-policy-controls label {
  display: grid;
  gap: 5px;
  color: #475467;
  font-size: 0.76rem;
  font-weight: 850;
}

.access-action-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 12px;
}

.access-action-grid button {
  min-height: 92px;
  border: 1px solid rgba(17, 24, 39, 0.1);
  border-radius: 14px;
  background: #f8fafc;
  color: var(--ink);
  padding: 11px;
  text-align: left;
}

.access-action-grid button:not(:disabled):hover,
.access-action-grid button:not(:disabled):focus-visible {
  border-color: rgba(33, 100, 232, 0.42);
  background: #edf4ff;
}

.access-action-grid button:disabled {
  opacity: 0.7;
}

.access-action-grid strong,
.access-action-grid span,
.access-action-grid em {
  display: block;
}

.access-action-grid strong { font-size: 0.88rem; }
.access-action-grid span { margin-top: 4px; color: var(--muted); font-size: 0.72rem; font-weight: 720; line-height: 1.28; }
.access-action-grid em { margin-top: 7px; color: var(--blue-dark); font-size: 0.66rem; font-style: normal; font-weight: 900; text-transform: uppercase; }

.pilot-stage-boundary {
  margin-top: 12px;
  border-radius: 13px;
  background: #f4f8ff;
  padding: 10px;
}

.pilot-stage-boundary strong,
.pilot-stage-boundary span { display: block; }
.pilot-stage-boundary strong { font-size: 0.8rem; }
.pilot-stage-boundary span { margin-top: 3px; color: var(--muted); font-size: 0.75rem; font-weight: 720; line-height: 1.32; }

.pilot-metrics-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 7px;
  margin-top: 12px;
}

.pilot-metrics-grid div {
  border-radius: 13px;
  background: #f4f6f8;
  padding: 10px 7px;
  text-align: center;
}

.pilot-metrics-grid strong,
.pilot-metrics-grid span { display: block; }
.pilot-metrics-grid strong { font-size: 1.05rem; }
.pilot-metrics-grid span { margin-top: 3px; color: var(--muted); font-size: 0.66rem; font-weight: 780; line-height: 1.15; }

.notification-privacy-receipt strong,
.notification-return-summary strong {
  font-size: 0.8rem;
}

.notification-privacy-receipt span,
.notification-return-summary span {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.75rem;
  font-weight: 720;
  line-height: 1.32;
}

.setup-choice-grid strong {
  font-size: 0.9rem;
}

.setup-choice-grid span {
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 700;
  line-height: 1.3;
}

.application-field-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.application-form label,
.member-operations-checklist-card > label {
  display: grid;
  gap: 6px;
  color: #475467;
  font-size: 0.8rem;
  font-weight: 850;
}

.application-agreements {
  margin: 0;
  border: 0;
  padding: 0;
  display: grid;
  gap: 8px;
}

.application-agreements legend {
  margin-bottom: 7px;
  color: #475467;
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.agreement-row {
  min-height: 58px;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 14px;
  background: #f8fafc;
  padding: 9px;
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  gap: 9px;
  align-items: start;
  color: var(--ink);
}

.agreement-row input {
  width: 22px;
  height: 22px;
  min-height: 22px;
  margin: 1px 0 0;
  accent-color: var(--green);
}

.agreement-row strong,
.agreement-row small {
  display: block;
}

.agreement-row strong {
  font-size: 0.86rem;
  line-height: 1.23;
}

.agreement-row small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 700;
  line-height: 1.28;
}

.application-result {
  border-color: rgba(13, 143, 116, 0.24);
  background: #f4fbf8;
}

.journey-result-icon {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #dff7ee;
  color: var(--green-dark);
  display: grid;
  place-items: center;
  font-size: 1.2rem;
  font-weight: 900;
}

.journey-result-layout {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 11px;
  align-items: start;
}

.journey-result-layout p {
  margin-top: 5px;
  color: #475467;
  font-size: 0.86rem;
  font-weight: 690;
  line-height: 1.38;
}

.journey-result-actions {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 3px;
}

.member-operations-command-bar {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 4px 0 12px;
}

.member-operations-queue {
  display: grid;
  gap: 7px;
  margin-top: 12px;
}

.member-operations-row {
  min-height: 62px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 9px;
  border: 1px solid rgba(17, 24, 39, 0.09);
  border-radius: 14px;
  background: #f8fafc;
  color: var(--ink);
  padding: 9px;
  text-align: left;
}

.member-operations-row:hover,
.member-operations-row:focus-visible,
.member-operations-row.is-selected {
  border-color: rgba(33, 100, 232, 0.42);
  background: #edf4ff;
}

.member-operations-row.is-urgent {
  border-left: 4px solid #c64930;
}

.member-operations-priority {
  border-radius: 999px;
  background: #eef2f6;
  color: #475467;
  padding: 4px 6px;
  font-size: 0.64rem;
  font-weight: 900;
  text-transform: uppercase;
}

.member-operations-row.is-urgent .member-operations-priority {
  background: #fff0ec;
  color: #a63824;
}

.member-operations-row-copy strong,
.member-operations-row-copy small,
.member-operations-time strong,
.member-operations-time small {
  display: block;
}

.member-operations-row-copy strong {
  font-size: 0.82rem;
}

.member-operations-row-copy small,
.member-operations-time small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 720;
  line-height: 1.2;
}

.member-operations-time {
  text-align: right;
}

.member-operations-time strong {
  font-size: 0.78rem;
}

.member-operations-task-detail > label {
  display: grid;
  gap: 6px;
  margin-top: 12px;
  color: #475467;
  font-size: 0.78rem;
  font-weight: 850;
}

.member-operations-boundary {
  margin-top: 12px;
  border-radius: 13px;
  background: #f4f8ff;
  padding: 10px;
}

.member-operations-boundary strong,
.member-operations-boundary span,
.member-operations-resolution-receipt strong,
.member-operations-resolution-receipt span {
  display: block;
}

.member-operations-boundary strong,
.member-operations-resolution-receipt strong {
  font-size: 0.8rem;
}

.member-operations-boundary span,
.member-operations-resolution-receipt span {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.75rem;
  font-weight: 720;
  line-height: 1.32;
}

.member-operations-resolution-receipt {
  grid-column: 1 / -1;
  margin-top: 12px;
  border: 1px solid rgba(13, 143, 116, 0.22);
  border-radius: 14px;
  background: #edf9f5;
  padding: 11px;
}

.member-operations-resolution-receipt[hidden] {
  display: none;
}

.application-operation[hidden] {
  display: none;
}

.member-operations-command-bar div {
  border: 1px solid var(--line);
  border-radius: 14px;
  background: white;
  padding: 10px;
  text-align: center;
}

.member-operations-command-bar strong,
.member-operations-command-bar span {
  display: block;
}

.member-operations-command-bar strong {
  font-size: 1.18rem;
}

.member-operations-command-bar span {
  margin-top: 2px;
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 820;
  line-height: 1.14;
  text-transform: uppercase;
}

.member-operations-applicant-summary {
  margin-top: 12px;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 11px;
  align-items: start;
}

.member-operations-avatar {
  width: 48px;
  height: 48px;
  border-radius: 16px;
  background: var(--ink);
  color: white;
  display: grid;
  place-items: center;
  font-size: 1.1rem;
  font-weight: 900;
}

.member-operations-applicant-summary strong {
  font-size: 0.92rem;
}

.member-operations-applicant-summary p {
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.8rem;
  font-weight: 700;
  line-height: 1.34;
}

.member-operations-risk-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 11px;
}

.member-operations-risk-strip span {
  border-radius: 999px;
  background: #edf9f5;
  color: var(--green-dark);
  padding: 6px 8px;
  font-size: 0.7rem;
  font-weight: 850;
}

.member-operations-checklist-card {
  display: grid;
  gap: 11px;
}

.member-operations-checklist {
  display: grid;
  gap: 8px;
}

.member-operations-decision-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.member-operations-decision-actions .confirm-button {
  grid-column: 1 / -1;
}

.decision-helper {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 760;
  line-height: 1.3;
}

.member-operations-decision-receipt {
  border-color: rgba(13, 143, 116, 0.24);
}

.prototype-scenario-note {
  border-radius: 12px;
  background: #fff8f4;
  color: #7a3b2c;
  padding: 9px;
  font-size: 0.76rem;
  font-weight: 760;
  line-height: 1.3;
}

.role-switch {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
  margin-top: 12px;
  border-radius: 14px;
  background: #f2f4f7;
  padding: 4px;
}

.role-switch button {
  min-height: 44px;
  border: 0;
  border-radius: 11px;
  background: transparent;
  color: var(--muted);
  padding: 6px;
  font-size: 0.78rem;
  font-weight: 850;
}

.role-switch button.is-active {
  background: var(--ink);
  color: white;
  box-shadow: 0 7px 16px rgba(17, 24, 39, 0.13);
}

.invite-view-card {
  display: grid;
  gap: 10px;
}

.invite-view-card h3 {
  font-size: 1.18rem;
  line-height: 1.12;
}

.invite-view-meta,
.privacy-receipt-row {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.invite-view-meta span,
.privacy-receipt-row span {
  border-radius: 999px;
  background: #f2f4f7;
  color: #475467;
  padding: 6px 8px;
  font-size: 0.7rem;
  font-weight: 850;
}

.locked-detail-panel {
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 14px;
  background: #f8fafc;
  padding: 11px;
}

.locked-detail-panel.is-unlocked {
  border-color: rgba(13, 143, 116, 0.2);
  background: #f4fbf8;
}

.locked-detail-panel strong,
.locked-detail-panel span {
  display: block;
}

.lifecycle-exchange,
.lifecycle-confirmation-receipt {
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 14px;
  background: #fbfcfe;
  padding: 10px;
  display: grid;
  gap: 8px;
}

.lifecycle-exchange-head {
  display: grid;
  gap: 2px;
}

.lifecycle-exchange-head strong {
  color: var(--ink);
  font-size: 0.82rem;
}

.lifecycle-exchange-head span,
.lifecycle-exchange-waiting {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 700;
  line-height: 1.32;
}

.lifecycle-exchange-row {
  border-left: 3px solid rgba(33, 100, 232, 0.28);
  background: white;
  padding: 8px 9px;
  display: grid;
  gap: 3px;
}

.lifecycle-exchange-row.is-answer {
  border-left-color: rgba(13, 143, 116, 0.42);
  background: #f4fbf8;
}

.lifecycle-exchange-row > span {
  color: var(--blue-dark);
  font-size: 0.66rem;
  font-weight: 900;
  text-transform: uppercase;
}

.lifecycle-exchange-row.is-answer > span {
  color: var(--green-dark);
}

.lifecycle-exchange-row strong {
  font-size: 0.82rem;
  line-height: 1.32;
}

.lifecycle-exchange-row small {
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 720;
}

.lifecycle-exchange-waiting {
  margin: 0;
}

.lifecycle-confirmation-list {
  display: grid;
  gap: 6px;
}

.lifecycle-confirmation-row {
  min-height: 46px;
  border-radius: 12px;
  background: white;
  padding: 7px 8px;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
}

.confirmation-check {
  width: 24px;
  height: 24px;
  border: 2px solid #98a2b3;
  border-radius: 50%;
}

.lifecycle-confirmation-row.is-complete .confirmation-check {
  position: relative;
  border-color: var(--green);
  background: var(--green);
}

.lifecycle-confirmation-row.is-complete .confirmation-check::after {
  content: "";
  position: absolute;
  left: 6px;
  top: 4px;
  width: 8px;
  height: 5px;
  border-left: 2px solid white;
  border-bottom: 2px solid white;
  transform: rotate(-45deg);
}

.lifecycle-confirmation-row strong,
.lifecycle-confirmation-row small {
  display: block;
}

.lifecycle-confirmation-row strong {
  font-size: 0.82rem;
}

.lifecycle-confirmation-row small,
.lifecycle-confirmation-row em {
  color: var(--muted);
  font-size: 0.68rem;
  font-style: normal;
  font-weight: 740;
}

.lifecycle-confirmation-row.is-complete em {
  color: var(--green-dark);
}

.locked-detail-panel span {
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.8rem;
  font-weight: 700;
  line-height: 1.34;
}

.lifecycle-action-panel {
  display: grid;
  gap: 11px;
}

.lifecycle-next-action {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(150px, 0.45fr);
  gap: 10px;
  align-items: center;
}

.lifecycle-next-action p {
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 720;
  line-height: 1.34;
}

.section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
}

.section-head .eyebrow,
.account-card-head .eyebrow,
.panel-head .eyebrow,
.privacy-strip .eyebrow {
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 850;
  margin-bottom: 3px;
  text-transform: none;
}

.section-head h2 {
  font-size: 1.08rem;
  font-weight: 860;
  line-height: 1.15;
}

.section-head .quiet-pill {
  padding: 6px 9px;
  font-size: 0.74rem;
}

.section-actions {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.disclosure-button {
  min-height: 44px;
  border: 1px solid rgba(33, 100, 232, 0.2);
  border-radius: 999px;
  background: white;
  color: var(--blue-dark);
  padding: 0 10px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-size: 0.8rem;
  font-weight: 850;
  box-shadow: 0 8px 18px rgba(20, 31, 54, 0.06);
}

.disclosure-icon {
  width: 9px;
  height: 9px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg) translateY(-2px);
  transition: transform 160ms ease;
}

.disclosure-button[aria-expanded="true"] .disclosure-icon {
  transform: rotate(225deg) translate(-2px, -1px);
}

.home-actions,
.home-dashboard {
  margin: 8px 0 12px;
}

.home-command-bar {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 8px;
}

.home-dashboard {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 8px;
  align-items: stretch;
}

.home-command {
  min-height: 54px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: white;
  color: var(--ink);
  padding: 8px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  justify-content: center;
  align-items: center;
  gap: 12px;
  text-align: left;
  box-shadow: 0 8px 22px rgba(20, 31, 54, 0.06);
}

.home-command.is-primary {
  border-color: rgba(33, 100, 232, 0.24);
  color: white;
  background: var(--blue);
  box-shadow: 0 12px 28px rgba(33, 100, 232, 0.2);
}

.action-icon {
  position: relative;
  width: 28px;
  height: 28px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  color: white;
  background: var(--blue);
  font-size: 1.12rem;
  font-weight: 900;
  line-height: 1;
  justify-self: start;
  grid-row: span 2;
}

.home-command.is-primary .action-icon {
  color: var(--blue);
  background: white;
}

.home-command:not(.is-primary) .action-icon {
  color: var(--blue-dark);
  background: #edf4ff;
}

.availability-icon::before {
  content: "";
  width: 12px;
  height: 12px;
  border: 3px solid currentColor;
  border-radius: 50%;
}

.prefs-icon {
  gap: 3px;
}

.prefs-icon::before,
.prefs-icon::after {
  content: "";
  width: 14px;
  height: 3px;
  border-radius: 999px;
  background: currentColor;
  box-shadow: 0 6px 0 currentColor;
}

.prefs-icon::after {
  display: none;
}

.billing-icon::before {
  content: "";
  width: 16px;
  height: 12px;
  border: 2px solid currentColor;
  border-radius: 4px;
}

.billing-icon::after {
  content: "";
  position: absolute;
  left: 10px;
  right: 10px;
  top: 12px;
  height: 2px;
  border-radius: 999px;
  background: currentColor;
}

.home-command strong {
  grid-column: 2;
  font-size: 0.92rem;
  white-space: nowrap;
}

.home-command small {
  grid-column: 2;
  color: rgba(255, 255, 255, 0.82);
  font-size: 0.75rem;
  font-weight: 760;
  line-height: 1.16;
}

.home-command:not(.is-primary) small {
  color: var(--muted);
}

.open-now-panel {
  scroll-margin-top: 132px;
  border: 1px solid rgba(13, 143, 116, 0.2);
  border-radius: var(--radius-card);
  background: white;
  overflow: hidden;
  margin: 2px 0 12px;
}

.open-now-panel.is-active,
.open-now-panel.is-expanded {
  background: #f7fcfa;
}

.open-now-toggle {
  width: 100%;
  min-height: 72px;
  border: 0;
  background: transparent;
  color: var(--ink);
  padding: 10px 12px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 10px;
  text-align: left;
  cursor: pointer;
}

.open-now-toggle:hover {
  background: rgba(13, 143, 116, 0.045);
}

.open-now-toggle:focus-visible {
  outline: 3px solid rgba(33, 100, 232, 0.32);
  outline-offset: -3px;
}

.open-now-summary-copy {
  min-width: 0;
  display: grid;
  gap: 1px;
}

.open-now-summary-copy .eyebrow {
  margin: 0;
}

.open-now-title {
  font-size: 0.98rem;
  line-height: 1.16;
}

.open-now-summary-copy small {
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 720;
  line-height: 1.24;
}

.open-now-mark {
  width: 30px;
  height: 30px;
  border-radius: 11px;
  background: #dff5ee;
  display: grid;
  place-items: center;
}

.open-now-mark::before {
  content: "";
  width: 10px;
  height: 10px;
  border: 3px solid var(--green);
  border-radius: 50%;
}

.open-now-chevron {
  width: 8px;
  height: 8px;
  border-right: 2px solid var(--muted);
  border-bottom: 2px solid var(--muted);
  transform: rotate(45deg) translateY(-2px);
  transition: transform 160ms ease;
}

.open-now-toggle[aria-expanded="true"] .open-now-chevron {
  transform: rotate(225deg) translate(-2px, -1px);
}

.open-now-details {
  border-top: 1px solid rgba(13, 143, 116, 0.14);
  padding: 0 13px 13px;
}

.open-now-details[hidden] {
  display: none;
}

.signal-intro {
  color: var(--muted);
  font-size: 0.88rem;
  font-weight: 720;
  line-height: 1.35;
  margin: 11px 0 12px;
}

.open-now-editor {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 9px;
}

.open-now-editor[hidden],
.open-now-active-receipt[hidden] {
  display: none;
}

.open-now-editor label {
  color: var(--ink);
  font-size: 0.8rem;
  font-weight: 850;
}

.open-now-editor label span {
  display: block;
  margin-bottom: 5px;
}

.open-now-editor select,
.open-now-editor .primary-action {
  min-height: 48px;
}

.open-now-editor select {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: white;
  color: var(--ink);
  padding: 0 36px 0 13px;
  font: inherit;
  font-size: 0.94rem;
  font-weight: 820;
}

.open-now-editor .primary-action {
  min-width: 108px;
  border-radius: 13px;
  padding-inline: 16px;
  white-space: nowrap;
}

.open-now-active-receipt {
  border: 1px solid rgba(13, 143, 116, 0.18);
  border-radius: 14px;
  background: white;
  padding: 11px 12px;
  display: grid;
  gap: 3px;
}

.open-now-active-receipt strong,
.open-now-active-receipt span {
  display: block;
}

.open-now-active-receipt strong {
  color: #08745f;
  font-size: 0.94rem;
}

.open-now-active-receipt span {
  color: var(--ink);
  font-size: 0.84rem;
  font-weight: 750;
  line-height: 1.32;
}

.open-now-context {
  margin-top: 10px;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.open-now-context span {
  border-radius: 999px;
  background: #eaf7f2;
  color: #176b5b;
  padding: 5px 8px;
  font-size: 0.7rem;
  font-weight: 850;
  line-height: 1.1;
}

.open-now-note {
  display: block;
  margin-top: 8px;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1.32;
}

.signal-no-go-panel {
  margin-top: 12px;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.72);
  padding: 11px;
  display: grid;
  gap: 10px;
}

.signal-no-go-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
}

.signal-no-go-head strong,
.signal-no-go-head span {
  display: block;
}

.signal-no-go-head span {
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 720;
  line-height: 1.3;
}

.signal-chip-groups {
  display: grid;
  gap: 9px;
}

.signal-chip-group {
  min-width: 0;
  border: 0;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.signal-chip-group legend {
  width: 100%;
  padding: 0;
  margin-bottom: 1px;
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0;
}

.signal-chip-group label {
  min-height: 44px;
  border: 1px solid rgba(17, 24, 39, 0.1);
  border-radius: 999px;
  background: #f8fafc;
  padding: 7px 10px;
  color: var(--ink);
  font-size: 0.8rem;
  font-weight: 850;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  line-height: 1.1;
}

.signal-chip-group input {
  width: 15px;
  min-height: 15px;
  accent-color: var(--green);
}

.signal-actions {
  margin-top: 10px;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.account-stack {
  display: grid;
  gap: 12px;
}

.account-context {
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: var(--radius-card);
  background: rgba(255, 255, 255, 0.76);
  padding: 12px;
  margin: 2px 0 12px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
}

.account-context h2 {
  font-size: 1.06rem;
  line-height: 1.12;
}

.account-context span {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 720;
  line-height: 1.28;
}

.account-context-pills {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
}

.account-context-pills span {
  width: max-content;
  margin: 0;
  border: 1px solid rgba(13, 143, 116, 0.18);
  border-radius: 999px;
  background: #f4fbf8;
  color: var(--green-dark);
  padding: 6px 8px;
  font-size: 0.72rem;
  font-weight: 850;
  line-height: 1;
}

.account-card {
  border: 1px solid var(--line);
  border-radius: var(--radius-card);
  background: rgba(255, 255, 255, 0.88);
  padding: 14px;
  display: grid;
  gap: 12px;
}

.account-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.account-card h2 {
  font-size: 1.16rem;
}

.account-identity {
  min-height: 64px;
  border-radius: var(--radius-card);
  background: #f6f9ff;
  padding: 10px;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 10px;
  align-items: center;
}

.account-avatar {
  width: 44px;
  height: 44px;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}

.account-avatar.has-photo {
  color: transparent;
}

.account-identity strong,
.account-identity span {
  display: block;
}

.account-identity span {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.84rem;
  font-weight: 720;
}

.photo-edit-panel {
  border: 1px solid rgba(33, 100, 232, 0.14);
  border-radius: var(--radius-card);
  background: #f6f9ff;
  padding: 14px;
  display: grid;
  grid-template-columns: 104px minmax(0, 1fr);
  gap: 16px;
  align-items: start;
}

.photo-primary-preview {
  display: grid;
  justify-items: center;
  gap: 6px;
  text-align: center;
}

.photo-primary-preview > strong {
  color: var(--ink);
  font-size: 0.82rem;
  line-height: 1.15;
}

.photo-primary-preview > span {
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 740;
  line-height: 1.25;
}

.photo-preview-frame {
  width: 88px;
  aspect-ratio: 1;
  border: 4px solid white;
  border-radius: 999px;
  outline: 3px solid color-mix(in srgb, var(--account-accent, #8b4f73) 70%, #263a68);
  background: white;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  color: var(--blue-dark);
  display: grid;
  place-items: center;
  font-size: 1.35rem;
  font-weight: 900;
  overflow: hidden;
}

.photo-preview-frame.has-photo span {
  display: none;
}

.photo-edit-fields {
  display: grid;
  gap: 11px;
  min-width: 0;
}

.photo-person-rule {
  border: 1px solid color-mix(in srgb, var(--account-accent, #8b4f73) 25%, #e7dfe5);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.76);
  padding: 11px;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
}

.photo-person-rule-mark {
  width: 34px;
  height: 34px;
  border: 2px solid color-mix(in srgb, var(--account-accent, #8b4f73) 54%, white);
  border-radius: 999px;
  color: var(--account-accent-deep, #673753);
  display: grid;
  place-items: center;
  font-size: 1.35rem;
  font-weight: 900;
}

.photo-person-rule strong,
.photo-person-rule span {
  display: block;
}

.photo-person-rule span {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.42;
}

.photo-upload-control {
  border: 1px dashed color-mix(in srgb, var(--account-accent, #8b4f73) 38%, #c8ced8);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.7);
  padding: 11px;
  display: grid;
  gap: 9px;
}

.photo-upload-control > span,
.photo-upload-control > span strong,
.photo-upload-control > span small {
  display: block;
}

.photo-upload-control > span small {
  margin-top: 3px;
  color: var(--muted);
  line-height: 1.35;
}

.photo-upload-control input[type="file"] {
  width: 100%;
  min-height: 44px;
  border: 0;
  background: transparent;
  padding: 0;
  color: var(--muted);
  font-size: 0.76rem;
}

.photo-upload-control input[type="file"]::file-selector-button {
  min-height: 44px;
  margin-right: 9px;
  border: 1px solid color-mix(in srgb, var(--account-accent, #8b4f73) 40%, white);
  border-radius: 12px;
  background: color-mix(in srgb, var(--account-tint, #f8edf3) 74%, white);
  padding: 0 14px;
  color: var(--account-accent-deep, #673753);
  font: inherit;
  font-weight: 860;
  cursor: pointer;
}

.photo-upload-control input[type="file"]:disabled {
  opacity: 0.58;
}

.member-photo-upload-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 9px;
}

.member-photo-upload-item {
  border: 1px solid color-mix(in srgb, var(--account-accent, #8b4f73) 18%, #d8dce5);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.82);
  padding: 9px;
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 9px;
  align-items: center;
}

.member-photo-upload-item.is-primary {
  border-color: color-mix(in srgb, var(--account-accent, #8b4f73) 56%, white);
  box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--account-accent, #8b4f73) 14%, transparent);
}

.member-photo-upload-thumb {
  position: relative;
  width: 58px;
  height: 58px;
  border-radius: 15px;
  background: #f2edf0;
}

.member-photo-upload-item.is-primary .member-photo-upload-thumb {
  border: 3px solid white;
  border-radius: 999px;
  outline: 3px solid color-mix(in srgb, var(--account-accent, #8b4f73) 68%, #263a68);
}

.member-photo-upload-thumb img {
  width: 100%;
  height: 100%;
  border-radius: inherit;
  object-fit: cover;
}

.member-photo-primary-badge {
  position: absolute;
  left: 50%;
  bottom: -7px;
  transform: translateX(-50%);
  border: 2px solid white;
  border-radius: 999px;
  background: var(--account-accent-deep, #673753);
  padding: 2px 7px;
  color: white;
  font-size: 0.58rem;
  font-weight: 900;
  letter-spacing: 0.04em;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
}

.member-photo-upload-copy {
  min-width: 0;
}

.member-photo-upload-copy strong,
.member-photo-upload-copy span {
  display: block;
}

.member-photo-upload-copy strong {
  overflow: hidden;
  color: var(--ink);
  font-size: 0.78rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.member-photo-upload-copy span {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.68rem;
  line-height: 1.3;
}

.member-photo-upload-actions {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
}

.member-photo-upload-actions button,
.member-photo-selected-receipt,
.member-photo-approved-receipt {
  min-height: 44px;
}

.member-photo-upload-actions button {
  flex: 1 1 96px;
  padding-inline: 8px;
  font-size: 0.74rem;
  white-space: nowrap;
}

.member-photo-upload-actions .quiet-button {
  border: 1px solid color-mix(in srgb, var(--account-accent, #8b4f73) 24%, #d8dce5);
  border-radius: 11px;
  background: rgba(255, 255, 255, 0.86);
  color: var(--account-accent-deep, #673753);
  font-weight: 820;
}

.member-photo-selected-receipt,
.member-photo-approved-receipt {
  border-radius: 11px;
  padding: 0 10px;
  display: inline-flex;
  align-items: center;
  color: var(--account-accent-deep, #673753);
  font-size: 0.68rem;
  font-weight: 850;
}

.member-photo-selected-receipt {
  background: color-mix(in srgb, var(--account-tint, #f8edf3) 76%, white);
}

.member-photo-approved-receipt {
  color: var(--muted);
}

.member-primary-photo-confirm {
  min-height: 44px;
  border: 1px solid color-mix(in srgb, var(--account-accent, #8b4f73) 18%, #d8dce5);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.76);
  padding: 10px;
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  gap: 9px;
  align-items: start;
  color: var(--ink);
  font-size: 0.76rem;
  font-weight: 740;
  line-height: 1.4;
}

.member-primary-photo-confirm input {
  width: 20px;
  height: 20px;
  margin: 0;
  accent-color: var(--account-accent-deep, #673753);
}

.member-primary-photo-confirm input:disabled {
  opacity: 0.72;
}

.member-photo-validation,
.member-photo-privacy-note {
  margin: 0;
  font-size: 0.72rem;
  line-height: 1.42;
}

.member-photo-validation {
  color: var(--account-accent-deep, #673753);
  font-weight: 780;
}

.member-photo-validation.is-error {
  color: #8c2f42;
}

.member-photo-privacy-note {
  color: var(--muted);
}

@media (max-width: 640px) {
  .photo-edit-panel {
    grid-template-columns: minmax(0, 1fr);
  }

  .photo-primary-preview {
    grid-template-columns: 88px minmax(0, 1fr);
    justify-items: start;
    align-items: center;
    text-align: left;
  }

  .photo-primary-preview .photo-preview-frame {
    grid-row: 1 / 3;
  }

  .photo-primary-preview > strong {
    align-self: end;
  }

  .photo-primary-preview > span {
    align-self: start;
  }

  .member-photo-upload-gallery {
    grid-template-columns: minmax(0, 1fr);
  }
}

.member-preview-photo {
  width: 44px;
  aspect-ratio: 1;
  border-radius: 999px;
  object-fit: cover;
  border: 1px solid rgba(13, 143, 116, 0.2);
  background: white;
}

.member-visible-preview {
  border: 1px solid rgba(13, 143, 116, 0.22);
  border-radius: var(--radius-card);
  background: #f4fbf8;
  padding: 12px;
  display: grid;
  gap: 10px;
}

.member-preview-head {
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 10px;
  align-items: start;
}

.member-preview-head > .profile-initial {
  width: 44px;
  height: 44px;
  font-size: 0.95rem;
}

.member-preview-head h3 {
  font-size: 1.05rem;
}

.member-preview-list {
  display: grid;
  gap: 8px;
  margin: 0;
}

.member-preview-list div {
  border-top: 1px solid rgba(13, 143, 116, 0.16);
  padding-top: 8px;
}

.member-preview-list dt {
  color: var(--green);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.member-preview-list dd {
  margin: 4px 0 0;
  color: var(--ink);
  font-size: 0.88rem;
  line-height: 1.32;
}

.member-preview-note {
  margin: 0;
  border-radius: 14px;
  background: white;
  color: var(--muted);
  padding: 10px;
  font-size: 0.8rem;
  font-weight: 760;
  line-height: 1.3;
}

.management-list,
.familiar-management-list {
  display: grid;
  gap: 8px;
}

.management-list div {
  border: 1px solid var(--line);
  border-radius: 16px;
  background: white;
  padding: 10px;
  display: grid;
  gap: 3px;
}

.management-list strong,
.management-list span,
.management-list em {
  display: block;
}

.management-list span {
  color: var(--muted);
  font-size: 0.84rem;
  font-weight: 720;
}

.management-list em {
  color: var(--blue-dark);
  font-size: 0.78rem;
  font-style: normal;
  font-weight: 850;
}

.familiar-management-card {
  border: 1px solid var(--line);
  border-radius: 16px;
  background: white;
  padding: 10px;
  display: grid;
  grid-template-columns: 52px 1fr;
  gap: 10px;
}

.familiar-management-card img {
  width: 52px;
  height: 52px;
  border-radius: 16px;
  object-fit: cover;
  border: 1px solid var(--line);
}

.familiar-management-card strong,
.familiar-management-card span,
.familiar-management-card small {
  display: block;
}

.familiar-management-card span {
  margin-top: 2px;
  color: var(--ink);
  font-size: 0.84rem;
  font-weight: 780;
  line-height: 1.28;
}

.familiar-management-card small {
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1.3;
}

.familiar-management-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 9px;
}

.signal-empty-state,
.signal-example-card {
  border: 1px solid var(--line);
  border-radius: 16px;
  background: white;
  padding: 11px;
}

.signal-empty-state {
  display: grid;
  gap: 3px;
}

.signal-empty-state strong,
.signal-empty-state span,
.signal-example-card strong,
.signal-example-card span,
.signal-example-card small {
  display: block;
}

.signal-empty-state span,
.signal-example-card small {
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 720;
  line-height: 1.3;
}

.signal-example-card {
  display: grid;
  gap: 7px;
  background: #f8fbff;
}

.signal-example-card span {
  margin-top: 3px;
  color: var(--ink);
  font-size: 0.86rem;
  font-weight: 760;
  line-height: 1.28;
}

.settings-list {
  display: grid;
  gap: 10px;
}

.membership-card,
.billing-card {
  border-color: rgba(33, 100, 232, 0.16);
}

.membership-status-panel,
.portal-preview {
  border-radius: var(--radius-card);
  background: #f6f9ff;
  padding: 12px;
  display: grid;
  gap: 10px;
}

.membership-status-panel strong,
.membership-status-panel span,
.portal-preview strong,
.portal-preview span,
.billing-note strong,
.billing-note span {
  display: block;
}

.membership-status-panel span,
.portal-preview span,
.billing-note span {
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.86rem;
  font-weight: 700;
  line-height: 1.32;
}

.membership-plan-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px;
}

.membership-plan {
  min-height: 112px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: white;
  color: var(--ink);
  padding: 11px;
  text-align: left;
  display: grid;
  align-content: space-between;
  gap: 6px;
}

.membership-plan.is-selected {
  border-color: rgba(33, 100, 232, 0.42);
  background: #f4f8ff;
  box-shadow: inset 0 0 0 1px rgba(33, 100, 232, 0.12);
}

.membership-plan span,
.membership-plan strong,
.membership-plan small {
  display: block;
}

.membership-plan span,
.billing-summary-grid span,
.checkout-card-preview span {
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 850;
  text-transform: uppercase;
}

.membership-plan strong {
  font-size: 1.22rem;
  line-height: 1.1;
}

.membership-plan small,
.checkout-card-preview small,
.checkout-row small {
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 720;
  line-height: 1.28;
}

.membership-renewal-note {
  border-radius: 14px;
  background: #f8fafc;
  color: var(--muted);
  padding: 10px 11px;
  font-size: 0.82rem;
  font-weight: 720;
  line-height: 1.34;
}

.prototype-debug-panel {
  border-top: 1px solid var(--line);
  padding-top: 10px;
}

.prototype-debug-panel summary {
  min-height: 44px;
  color: var(--muted);
  display: flex;
  align-items: center;
  font-size: 0.8rem;
  font-weight: 800;
  cursor: pointer;
}

.checkout-preview {
  display: grid;
  gap: 8px;
}

.checkout-card-preview {
  border: 1px solid rgba(33, 100, 232, 0.16);
  border-radius: 18px;
  background: white;
  padding: 12px;
  display: grid;
  gap: 10px;
}

.checkout-card-preview strong {
  display: block;
  margin-top: 4px;
  font-size: 1rem;
}

.card-form-preview {
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fbfcfe;
  padding: 10px;
}

.card-form-preview strong {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  letter-spacing: 0;
}

.checkout-row {
  border-radius: 16px;
  background: #f4fbf8;
  padding: 12px;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 9px;
  align-items: start;
}

.checkout-row > span {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  margin-top: 3px;
  background: var(--green);
}

.checkout-row.is-warning {
  background: #fff7ed;
}

.checkout-row.is-warning > span {
  background: var(--coral);
}

.billing-note {
  border-left: 3px solid rgba(13, 143, 116, 0.28);
  border-radius: 14px;
  background: #f4fbf8;
  padding: 11px 12px;
}

.compact-actions {
  grid-template-columns: 1fr;
  margin-top: 0;
}

.billing-summary-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px;
}

.billing-summary-grid div {
  min-height: 76px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: white;
  padding: 10px;
  display: grid;
  align-content: space-between;
  gap: 6px;
}

.billing-summary-grid strong {
  font-size: 0.93rem;
  line-height: 1.18;
}

.billing-policy {
  margin-top: 0;
}

.phase-row {
  display: grid;
  grid-template-columns: 1.15fr 1fr 1fr;
  gap: 8px;
  margin: 18px 0 16px;
}

.phase-card {
  min-height: 82px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: white;
  padding: 11px;
  display: grid;
  align-content: space-between;
  box-shadow: 0 8px 22px rgba(20, 31, 54, 0.06);
}

.phase-card span {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
}

.phase-card strong {
  font-size: 0.9rem;
  line-height: 1.12;
}

.phase-card.is-now {
  color: white;
  border-color: transparent;
  background: linear-gradient(135deg, var(--blue), #3988ff);
}

.phase-card.is-now span {
  color: rgba(255, 255, 255, 0.78);
}

.plan-form {
  display: grid;
  gap: 15px;
}

fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}

legend,
label {
  color: var(--ink);
  font-size: 0.92rem;
  font-weight: 780;
}

legend {
  margin-bottom: 9px;
}

.section-note {
  margin: -2px 0 12px;
  color: var(--muted);
  font-size: 0.9rem;
  font-weight: 650;
  line-height: 1.35;
}

label,
.field-block {
  display: grid;
  gap: 7px;
}

#inviteCapacityField[hidden] {
  display: none;
}

.field-label-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.date-field {
  grid-column: 1 / -1;
  scroll-margin-top: 112px;
}

.date-picker-panel {
  border: 1px solid rgba(33, 100, 232, 0.16);
  border-radius: 18px;
  background: #f8fbff;
  padding: 12px;
  display: grid;
  gap: 10px;
}

.date-picker-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.date-picker-head strong,
.date-picker-head span {
  display: block;
}

.date-picker-head strong {
  color: var(--ink);
  font-size: 1.04rem;
  line-height: 1.1;
}

.date-picker-head span {
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 760;
  line-height: 1.25;
  margin-top: 2px;
}

.date-picker-head .quiet-pill {
  margin-top: 0;
  white-space: nowrap;
}

.date-quick-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(104px, 1fr));
  gap: 7px;
}

.date-quick,
.date-choice {
  border: 1px solid var(--line);
  background: white;
  color: var(--ink);
  font-weight: 850;
}

.date-quick {
  min-height: 52px;
  border-radius: 14px;
  padding: 7px 8px;
  display: grid;
  gap: 2px;
  text-align: left;
}

.date-quick span {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 780;
}

.date-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 6px;
}

.date-choice {
  min-width: 0;
  min-height: 58px;
  border-radius: 14px;
  padding: 6px 4px;
  display: grid;
  place-items: center;
  gap: 1px;
}

.date-choice span {
  color: var(--muted);
  font-size: 0.64rem;
  font-weight: 850;
  text-transform: uppercase;
}

.date-choice strong {
  font-size: 1.02rem;
  line-height: 1;
}

.date-quick.is-selected,
.date-choice.is-selected {
  border-color: rgba(33, 100, 232, 0.42);
  color: white;
  background: var(--blue);
  box-shadow: 0 10px 22px rgba(33, 100, 232, 0.18);
}

.date-quick.is-selected span,
.date-choice.is-selected span {
  color: rgba(255, 255, 255, 0.82);
}

.required-mark {
  width: max-content;
  border-radius: 999px;
  background: #f2f4f7;
  color: #7a4a3d;
  padding: 3px 7px;
  font-size: 0.64rem;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
}

.combo-shell {
  position: relative;
  min-width: 0;
  max-width: 100%;
}

.activity-picker {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  min-height: 76px;
  border: 1px solid rgba(17, 24, 39, 0.12);
  border-radius: 18px;
  background: white;
  color: var(--ink);
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 10px;
  padding: 12px;
  text-align: left;
  box-shadow: 0 8px 20px rgba(20, 31, 54, 0.05);
}

.selected-tag {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  color: white;
  background: var(--ink);
  padding: 0 18px;
  font-size: 1.02rem;
  font-weight: 850;
  white-space: nowrap;
}

.picker-copy {
  color: var(--muted);
  font-size: 0.94rem;
  font-weight: 680;
  line-height: 1.25;
}

.activity-menu {
  position: absolute;
  z-index: 10;
  top: calc(100% + 8px);
  left: 0;
  right: 0;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: white;
  padding: 10px;
  box-shadow: var(--shadow);
}

input,
select,
textarea {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: white;
  color: var(--ink);
  padding: 0 13px;
  font-size: 1rem;
  font-weight: 650;
}

input,
select {
  height: 48px;
  min-height: 48px;
  line-height: 1.2;
}

select,
input[type="date"] {
  border-radius: 12px;
  font-weight: 760;
}

input[type="date"] {
  appearance: none;
  -webkit-appearance: none;
  padding-inline: 14px 10px;
}

input[type="date"]::-webkit-date-and-time-value {
  min-height: 1.2em;
  text-align: left;
}

input[type="date"]::-webkit-calendar-picker-indicator {
  margin: 0;
  padding: 4px;
}

.locked-policy {
  height: 48px;
  min-height: 48px;
  border: 1px solid rgba(13, 143, 116, 0.2);
  border-radius: 12px;
  background: #f4fbf8;
  color: var(--ink);
  padding: 0 13px;
  display: flex;
  align-items: center;
  font-size: 1rem;
  font-weight: 760;
  line-height: 1.12;
}

textarea {
  min-height: 100px;
  padding-top: 12px;
  resize: vertical;
  line-height: 1.35;
}

input:focus,
select:focus,
textarea:focus,
button:focus-visible {
  outline: 3px solid rgba(33, 100, 232, 0.22);
  outline-offset: 2px;
}

body.is-prototype-mobile #timeWindow {
  font-size: 0.94rem;
  padding-right: 34px;
}

[aria-invalid="true"] {
  border-color: rgba(226, 90, 61, 0.65);
  background: #fffaf7;
  box-shadow: 0 0 0 3px rgba(226, 90, 61, 0.12);
}

label.is-invalid {
  color: #9a3b25;
}

.field-error {
  min-height: 0;
  color: #9a3b25;
  font-size: 0.8rem;
  font-weight: 820;
  line-height: 1.28;
}

.field-error:empty {
  display: none;
}

.fill-example-action {
  justify-self: start;
}

.option-stack {
  display: grid;
  gap: 10px;
  max-height: 240px;
  margin-top: 8px;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}

.activity-option-group {
  display: grid;
  gap: 6px;
}

.activity-option-head {
  display: grid;
  gap: 2px;
  padding: 4px 3px 0;
}

.activity-option-head strong {
  color: var(--ink);
  font-size: 0.8rem;
  font-weight: 900;
  text-transform: uppercase;
}

.activity-option-head span {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 720;
  line-height: 1.25;
}

.activity-option {
  min-height: 44px;
  border: 0;
  border-radius: 14px;
  background: var(--soft);
  color: var(--ink);
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  gap: 4px;
  padding: 9px 12px;
  font-weight: 760;
  text-align: left;
}

.activity-option span {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 7px;
  min-width: 0;
}

.activity-option strong {
  font-size: 0.95rem;
}

.activity-option em {
  color: var(--ink);
  font-size: 0.92rem;
  font-style: normal;
  font-weight: 850;
}

.activity-option small {
  color: var(--muted);
  font-weight: 720;
  line-height: 1.25;
}

.requirements-panel {
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.7);
  padding: 10px;
  display: grid;
  gap: 8px;
}

.requirements-head {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: flex-start;
}

.requirements-head strong,
.requirements-head span {
  display: block;
}

.requirements-head strong {
  font-size: 0.94rem;
  line-height: 1.2;
}

.requirements-head span {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 720;
  line-height: 1.3;
}

.requirements-head em {
  flex: 0 0 auto;
  border-radius: 999px;
  background: #f2f4f7;
  color: #475467;
  padding: 5px 8px;
  font-size: 0.68rem;
  font-style: normal;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}

.requirements-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 5px;
}

.requirements-list li {
  min-height: 30px;
  border-radius: 10px;
  background: rgba(248, 250, 252, 0.82);
  padding: 6px 7px;
  display: grid;
  grid-template-columns: 16px 1fr;
  gap: 7px;
  align-items: start;
}

.requirements-list li > span {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  margin-top: 1px;
  display: grid;
  place-items: center;
}

.requirements-list li > span::before {
  content: "";
  width: 7px;
  height: 4px;
  border-left: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(-45deg) translateY(-1px);
}

.requirements-list .is-complete > span {
  background: #dff7ee;
  color: var(--green);
}

.requirements-list .is-missing > span {
  background: #f2f4f7;
  color: #9a3b25;
}

.requirements-list .is-missing > span::before {
  width: 7px;
  height: 7px;
  border: 2px solid currentColor;
  border-radius: 50%;
  transform: none;
}

.requirements-list .is-pending > span {
  background: #eef2f7;
  color: #667085;
}

.requirements-list .is-pending > span::before {
  width: 7px;
  height: 7px;
  border: 2px solid currentColor;
  border-radius: 50%;
  transform: none;
}

.requirements-list strong,
.requirements-list small {
  display: block;
}

.requirements-list strong {
  font-size: 0.82rem;
  line-height: 1.22;
}

.requirements-list small {
  margin-top: 2px;
  color: #9a3b25;
  font-size: 0.76rem;
  font-weight: 760;
  line-height: 1.25;
}

.no-chat-strip {
  border: 1px solid rgba(13, 143, 116, 0.18);
  border-radius: 16px;
  background: #f4fbf8;
  padding: 12px;
  display: grid;
  gap: 3px;
}

.no-chat-strip strong,
.no-chat-strip span {
  display: block;
}

.no-chat-strip strong {
  color: var(--ink);
  font-size: 0.94rem;
}

.no-chat-strip span {
  color: var(--muted);
  font-size: 0.86rem;
  font-weight: 720;
  line-height: 1.32;
}

.field-grid,
.compact-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.compact-grid {
  grid-template-columns: 1fr;
}

.split-input {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.range-receipt {
  border-radius: 12px;
  background: #f8fafc;
  color: var(--muted);
  padding: 8px 10px;
  font-size: 0.8rem;
  font-weight: 780;
  line-height: 1.25;
}

.field-hint {
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 720;
  line-height: 1.32;
}

.settings-fieldset,
.people-fieldset,
.preference-panel {
  border: 1px solid var(--line);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.86);
  padding: 14px;
}

.preference-panel {
  display: grid;
  gap: 12px;
}

.preference-panel[hidden] {
  display: none;
}

.preference-disclosure {
  width: 100%;
  justify-content: center;
  margin-bottom: 10px;
}

.preference-callout {
  border-radius: 14px;
  background: #f8fafc;
  color: var(--ink);
  padding: 11px;
  display: grid;
  gap: 3px;
}

.preference-callout strong,
.preference-callout span {
  display: block;
}

.preference-callout strong {
  font-size: 0.92rem;
}

.preference-callout span {
  color: var(--muted);
  font-size: 0.84rem;
  font-weight: 700;
  line-height: 1.3;
}

.switch-row {
  min-height: 62px;
  grid-template-columns: auto 1fr;
  align-items: center;
  border-radius: 16px;
  background: #f4f8ff;
  padding: 11px;
  margin-bottom: 11px;
}

.switch-row input {
  width: 26px;
  min-height: 26px;
  accent-color: var(--green);
}

.switch-row.is-locked {
  background: #eef2f7;
}

.switch-row.is-locked input {
  cursor: not-allowed;
}

.notification-channel-list .switch-row {
  margin-bottom: 0;
}

.switch-row small,
.settings-note {
  color: var(--muted);
  font-size: 0.86rem;
  line-height: 1.3;
}

.settings-note {
  margin-top: 10px;
  border-radius: 16px;
  background: var(--soft);
  padding: 11px;
  font-weight: 700;
}

.find-controls-panel {
  margin-top: 7px;
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 0;
}

.find-controls-panel[hidden],
#findEvents[hidden],
.readiness-state-card[hidden] {
  display: none;
}

.readiness-lab {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 10px;
  margin-top: 8px;
  border: 1px dashed rgba(33, 100, 232, 0.28);
  border-radius: 14px;
  background: #f7f9ff;
  padding: 9px;
}

#findView .readiness-lab {
  margin-top: 0;
}

.readiness-lab label {
  display: grid;
  gap: 4px;
  flex: 1 1 220px;
  color: #475467;
  font-size: 0.72rem;
  font-weight: 900;
}

.readiness-lab select {
  min-height: 44px;
}

.readiness-lab-copy {
  flex: 0 1 220px;
}

.readiness-lab-copy strong,
.readiness-lab-copy span {
  display: block;
}

.readiness-lab-copy strong {
  font-size: 0.76rem;
}

.readiness-lab-copy span {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 1.25;
}

.readiness-state-card {
  margin-top: 10px;
  border: 1px solid rgba(17, 24, 39, 0.09);
  border-radius: var(--radius-card);
  background: white;
  padding: 16px;
  box-shadow: 0 8px 22px rgba(20, 31, 54, 0.05);
}

.readiness-state-card.is-waiting {
  border-left: 4px solid #d7921e;
}

.readiness-state-card.is-choice {
  border-left: 4px solid var(--blue);
}

.readiness-state-card.is-paused {
  border-left: 4px solid #7b8798;
}

.readiness-state-card h3 {
  margin-top: 3px;
  font-size: 1.12rem;
  line-height: 1.15;
}

.readiness-state-card > p:not(.eyebrow) {
  margin-top: 8px;
  color: #475467;
  font-size: 0.88rem;
  font-weight: 680;
  line-height: 1.42;
}

.readiness-note {
  margin-top: 11px;
  border-radius: 12px;
  background: #f4f6f8;
  color: var(--muted);
  padding: 9px;
  font-size: 0.76rem;
  font-weight: 780;
  line-height: 1.32;
}

.readiness-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.readiness-actions button {
  min-height: 44px;
}

.routing-lab {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
  border: 1px dashed rgba(33, 100, 232, 0.28);
  border-radius: 14px;
  background: #f7f9ff;
  padding: 9px;
}

.routing-lab label {
  display: grid;
  gap: 4px;
  flex: 1 1 220px;
  color: #475467;
  font-size: 0.72rem;
  font-weight: 900;
}

.routing-lab select {
  min-height: 44px;
}

.routing-lab-copy {
  flex: 0 1 220px;
}

.routing-lab-copy strong,
.routing-lab-copy span {
  display: block;
}

.routing-lab-copy strong {
  font-size: 0.76rem;
}

.routing-lab-copy span {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 700;
}

.routing-state-card {
  border: 1px solid rgba(17, 24, 39, 0.09);
  border-radius: var(--radius-card);
  background: white;
  padding: 16px;
  box-shadow: 0 8px 22px rgba(20, 31, 54, 0.05);
}

.routing-state-card[hidden] {
  display: none;
}

#whoView > [hidden] {
  display: none;
}

.routing-state-card.is-waiting { border-left: 4px solid #d7921e; }
.routing-state-card.is-choice { border-left: 4px solid var(--blue); }
.routing-state-card.is-assisted { border-left: 4px solid #6f5bd3; }
.routing-state-card.is-action { border-left: 4px solid #c64930; }
.routing-state-card.is-paused { border-left: 4px solid #7b8798; }

.routing-state-card h2 {
  margin-top: 3px;
  font-size: 1.12rem;
  line-height: 1.15;
}

.routing-state-card > p:not(.eyebrow) {
  margin-top: 8px;
  color: #475467;
  font-size: 0.88rem;
  font-weight: 680;
  line-height: 1.42;
}

.routing-note {
  margin-top: 11px;
  border-radius: 12px;
  background: #f4f6f8;
  color: var(--muted);
  padding: 9px;
  font-size: 0.76rem;
  font-weight: 780;
  line-height: 1.32;
}

.routing-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.routing-actions button {
  min-height: 44px;
}

@media (max-width: 560px) {
  .readiness-lab {
    align-items: stretch;
    flex-direction: column;
  }

  .readiness-lab-copy {
    flex-basis: auto;
  }

  .readiness-actions {
    display: grid;
  }

  .routing-lab {
    align-items: stretch;
    flex-direction: column;
  }

  .routing-lab-copy {
    flex-basis: auto;
  }

  .routing-actions {
    display: grid;
  }
}

/* Prototype v55: compact In controls and invitation matching surface. */
.prototype-scenario-tools .prototype-scenario-picker {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 9px;
}

.prototype-scenario-picker > label {
  display: grid;
  gap: 4px;
  color: #475467;
  font-size: 0.72rem;
  font-weight: 850;
}

.prototype-scenario-picker > small {
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 1.3;
}

#findView .open-now-panel {
  margin: 2px 0 8px;
  border-radius: 15px;
}

#findView .open-now-toggle {
  min-height: 62px;
  padding: 8px 10px;
  grid-template-columns: auto minmax(0, 1fr) auto auto auto;
  gap: 7px;
}

#findView .open-now-mark,
#findView .response-disclosure-mark {
  width: 28px;
  height: 28px;
  border-radius: 10px;
}

#findView .open-now-title {
  font-size: 0.9rem;
}

#findView .open-now-summary-copy small {
  font-size: 0.68rem;
  line-height: 1.2;
}

.disclosure-label {
  color: var(--blue-dark);
  font-size: 0.64rem;
  font-weight: 880;
  line-height: 1;
  white-space: nowrap;
}

.is-collapse-label {
  display: none;
}

details[open] > summary .is-expand-label {
  display: none;
}

details[open] > summary .is-collapse-label {
  display: inline;
}

#findView .incoming-priority-panel {
  gap: 8px;
  margin-top: 0;
}

.incoming-response-stack {
  overflow: hidden;
  border: 1px solid rgba(17, 24, 39, 0.09);
  border-radius: 15px;
  background: rgba(255, 255, 255, 0.8);
}

.incoming-response-stack .incoming-priority-section,
.incoming-response-stack .incoming-waiting-section {
  border: 0;
  border-radius: 0;
  background: transparent;
}

.incoming-response-stack .incoming-priority-section {
  border-bottom: 1px solid rgba(17, 24, 39, 0.08);
}

#findView .response-disclosure-summary {
  min-height: 56px;
  padding: 7px 9px;
  grid-template-columns: auto minmax(0, 1fr) auto auto auto;
  gap: 7px;
}

#findView .response-disclosure-copy strong {
  font-size: 0.9rem;
}

#findView .response-disclosure-copy small {
  font-size: 0.68rem;
  line-height: 1.18;
}

#findView .response-disclosure-summary .quiet-pill {
  min-width: 28px;
  padding: 5px 7px;
}

#findView .response-disclosure-body {
  padding: 9px;
}

.find-controls-panel {
  overflow: hidden;
  margin: 0;
  border: 1px solid rgba(33, 100, 232, 0.14);
  border-radius: 15px;
  background: rgba(248, 250, 255, 0.82);
}

.find-controls-panel > summary::-webkit-details-marker {
  display: none;
}

.find-filter-summary {
  min-height: 58px;
  padding: 8px 10px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  list-style: none;
}

.find-filter-summary:hover {
  background: rgba(33, 100, 232, 0.035);
}

.find-filter-summary:focus-visible {
  outline: 3px solid rgba(33, 100, 232, 0.3);
  outline-offset: -3px;
}

.find-filter-mark {
  position: relative;
  width: 28px;
  height: 28px;
  border-radius: 10px;
  background: #edf4ff;
}

.find-filter-mark::before,
.find-filter-mark::after {
  content: "";
  position: absolute;
  left: 7px;
  right: 7px;
  height: 2px;
  border-radius: 99px;
  background: var(--blue);
  box-shadow: 0 6px 0 var(--blue);
}

.find-filter-mark::before {
  top: 7px;
}

.find-filter-mark::after {
  top: 10px;
  left: 11px;
  right: 11px;
  background: #edf4ff;
  box-shadow: -3px 6px 0 -1px #edf4ff;
}

.find-filter-summary-copy {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.find-filter-summary-copy strong {
  font-size: 0.9rem;
  line-height: 1.1;
}

.find-filter-summary-copy strong span {
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 760;
}

.find-filter-summary-copy small {
  overflow: hidden;
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 720;
  line-height: 1.18;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.find-controls-panel[open] > .find-filter-summary {
  background: rgba(33, 100, 232, 0.035);
}

.find-controls-panel[open] > .find-filter-summary .response-disclosure-chevron {
  transform: rotate(225deg) translate(-2px, -1px);
}

.find-controls-body {
  border-top: 1px solid rgba(33, 100, 232, 0.1);
  padding: 10px;
}

.find-controls-body .area-scope-control {
  margin: 0;
}

.find-controls-body .find-filter-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 8px;
}

.find-filter-actions {
  margin-top: 10px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 8px;
}

.find-filter-actions .primary-action,
.find-filter-actions .secondary-action {
  min-height: 44px;
}

.find-filter-actions .primary-action {
  width: 100%;
}

.find-filter-actions .secondary-action[hidden] {
  display: none;
}

#resetFindFilters[hidden] + #applyFindFilters {
  grid-column: 1 / -1;
}

#findView .find-note {
  display: block;
  margin-top: 8px;
  padding: 9px 10px;
  font-size: 0.72rem;
}

.find-results {
  margin-top: 12px;
}

.find-results-summary {
  min-height: 34px;
  margin: 0 2px 7px;
  justify-content: space-between;
  gap: 12px;
}

.find-results-summary > div {
  min-width: 0;
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 6px;
}

.find-results-summary strong {
  font-size: 0.94rem;
}

.find-results-summary .screen-metric {
  color: var(--muted);
  font-size: 0.72rem;
}

.find-invite-list {
  min-width: 0;
  overflow: clip;
  border: 1px solid rgba(17, 24, 39, 0.12);
  border-radius: 18px;
  background: white;
  box-shadow: 0 10px 24px rgba(20, 31, 54, 0.07);
}

.find-event-card {
  position: relative;
  overflow: hidden;
  min-height: 0;
  border-bottom: 1px solid rgba(17, 24, 39, 0.1);
  padding: 14px 15px 14px 18px;
  background: white;
  transition: background 150ms ease;
}

.find-event-card:last-child {
  border-bottom: 0;
}

.find-event-card:focus-visible {
  z-index: 1;
  outline: 3px solid rgba(33, 100, 232, 0.3);
  outline-offset: -3px;
}

.find-event-card:focus-within,
.find-event-card:hover {
  background: #fbfcff;
}

.find-event-card .event-plan-note {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.find-event-card .host-name-row small {
  color: #667085;
  font-size: 0.64rem;
  font-weight: 850;
  text-transform: uppercase;
}

.find-event-detail-row {
  min-height: 44px;
  margin-top: 9px;
  border-radius: 12px;
  background: #f6f8fb;
  padding: 7px 8px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.find-event-detail-row span {
  color: #475467;
  font-size: 0.72rem;
  font-weight: 820;
}

.find-event-detail-row button {
  min-height: 34px;
  border: 0;
  border-radius: 10px;
  background: #edf4ff;
  color: var(--blue-dark);
  padding: 0 9px;
  font-size: 0.72rem;
  font-weight: 860;
  white-space: nowrap;
}

.find-event-action-row {
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  margin-top: 9px;
  gap: 7px;
}

.find-event-action-row > button {
  min-width: 0;
  min-height: 44px;
  width: 100%;
}

.find-event-action-row .person-timer {
  justify-self: center;
  font-size: 0.7rem;
  white-space: nowrap;
}

.find-not-now-action {
  border-radius: 14px;
  color: #475467;
}

.find-list-undo {
  min-height: 52px;
  margin-bottom: 8px;
  border: 1px solid rgba(13, 143, 116, 0.18);
  border-radius: 14px;
  background: #f2fbf7;
  padding: 8px 9px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.find-list-undo[hidden] {
  display: none;
}

.find-list-undo span,
.find-list-undo strong {
  display: block;
}

.find-list-undo span {
  color: #475467;
  font-size: 0.7rem;
  font-weight: 720;
  line-height: 1.25;
}

.find-list-undo strong {
  color: var(--green-dark);
  font-size: 0.76rem;
}

.find-list-undo button {
  min-width: 58px;
  min-height: 36px;
  border: 0;
  border-radius: 10px;
  background: var(--green);
  color: white;
  font-size: 0.74rem;
  font-weight: 880;
}

.response-undo-action {
  margin-top: 9px;
}

.invite-detail-panel {
  width: min(520px, 100%);
}

.invite-detail-hero {
  padding-right: 48px;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  align-items: center;
  gap: 11px;
}

.invite-detail-hero .event-category-icon {
  width: 48px;
  height: 48px;
  border-radius: 15px;
}

.invite-detail-hero h2 {
  font-size: 1.18rem;
  line-height: 1.14;
}

.invite-detail-hero p:last-child {
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.8rem;
  font-weight: 740;
}

.invite-detail-host {
  margin-top: 10px;
}

.invite-detail-note {
  font-size: 0.9rem;
}

.invite-decision-grid {
  margin-top: 11px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.invite-decision-grid > div {
  border-radius: 12px;
  background: #f6f8fb;
  padding: 8px 9px;
}

.invite-decision-grid dt {
  color: var(--muted);
  font-size: 0.64rem;
  font-weight: 900;
  text-transform: uppercase;
}

.invite-decision-grid dd {
  margin: 3px 0 0;
  color: var(--ink);
  font-size: 0.8rem;
  font-weight: 780;
}

.invite-detail-privacy {
  margin-top: 10px;
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 700;
  line-height: 1.35;
}

.invite-detail-actions {
  position: sticky;
  bottom: -18px;
  margin: 12px -16px -18px;
  border-top: 1px solid rgba(17, 24, 39, 0.08);
  background: rgba(255, 255, 255, 0.96);
  padding: 10px 16px max(12px, env(safe-area-inset-bottom));
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 8px;
}

.invite-detail-actions > button {
  min-height: 48px;
  width: 100%;
}

.invite-detail-actions > .person-timer {
  grid-column: 1 / -1;
  justify-self: center;
  order: -1;
}

@media (prefers-reduced-motion: reduce) {
  .find-event-card {
    transition: none;
  }
}

@media (min-width: 901px) {
  body.is-prototype-desktop #findView .event-section {
    max-width: 820px;
    grid-template-columns: minmax(0, 1fr);
  }

  body.is-prototype-desktop #findView .open-now-panel,
  body.is-prototype-desktop #findView .incoming-priority-panel,
  body.is-prototype-desktop #findView .find-results,
  body.is-prototype-desktop #findView .readiness-state-card {
    grid-column: 1;
  }

  body.is-prototype-desktop #findView .incoming-priority-panel {
    display: grid;
    margin-top: 0;
  }

  body.is-prototype-desktop #findView .incoming-response-stack {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.is-prototype-desktop #findView .incoming-response-stack .incoming-priority-section {
    border-right: 1px solid rgba(17, 24, 39, 0.08);
    border-bottom: 0;
  }

  body.is-prototype-desktop #findView .incoming-priority-section,
  body.is-prototype-desktop #findView .incoming-waiting-section,
  body.is-prototype-desktop #findView .find-controls-panel {
    grid-column: auto;
    grid-row: auto;
    margin-top: 0;
  }

  body.is-prototype-desktop #findView .find-controls-panel {
    position: static;
    padding: 0;
  }

  body.is-prototype-desktop #findView .find-filter-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  body.is-prototype-desktop #findView .find-filter-grid select {
    min-height: 44px;
    height: 44px;
    padding: 0 9px;
    font-size: 0.82rem;
  }

  body.is-prototype-desktop #findResults {
    grid-column: 1;
    width: min(680px, 100%);
    margin-left: auto;
    margin-right: auto;
  }

  body.is-prototype-desktop .find-event-card {
    min-height: 390px;
  }
}

/* Prototype v94: private, expiring Travel Plans extend location eligibility without an away mode. */
.account-settings-symbol.is-travel {
  background: #e7eef8;
  color: #315cb8;
}

.area-scope-control {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px 10px;
}

.area-scope-control > label {
  min-width: 0;
}

.area-scope-control > label > span {
  display: block;
  margin-bottom: 5px;
  font-size: 0.76rem;
  font-weight: 800;
}

.area-scope-control > p,
.area-scope-control > .area-setup-action {
  grid-column: 1 / -1;
}

.area-scope-control > label[hidden] {
  display: none;
}

.travel-plan-card {
  gap: 14px;
}

.travel-plan-summary {
  overflow: hidden;
  border: 1px solid var(--settings-divider);
  border-radius: 17px;
  background: #fbfaf7;
}

.travel-summary-head {
  min-width: 0;
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) auto;
  align-items: center;
  gap: 11px;
  padding: 14px;
}

.travel-summary-mark,
.travel-create-mark,
.travel-unsupported-mark {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 13px;
  background: #e8eef9;
  color: #315cb8;
  font-size: 1.05rem;
  font-weight: 900;
}

.travel-summary-head > div {
  min-width: 0;
}

.travel-summary-head > div > span,
.travel-summary-head strong,
.travel-summary-head small {
  display: block;
}

.travel-summary-head > div > span {
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.travel-summary-head strong {
  margin-top: 2px;
  font-family: ui-serif, "New York", Georgia, serif;
  font-size: 1.05rem;
}

.travel-summary-head small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.73rem;
  font-weight: 680;
  line-height: 1.3;
}

.travel-matching-state {
  max-width: 132px;
  border-radius: 999px;
  background: #e2f1ec;
  color: #0b665e;
  padding: 6px 8px;
  font-size: 0.67rem;
  font-weight: 850;
  line-height: 1.2;
  text-align: center;
}

.travel-matching-state.is-paused {
  background: #eeeae4;
  color: #6f665e;
}

.travel-summary-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  margin: 0;
  border-top: 1px solid var(--settings-divider);
  border-bottom: 1px solid var(--settings-divider);
  background: var(--settings-divider);
}

.travel-summary-grid > div {
  min-width: 0;
  background: #fffdfa;
  padding: 10px 12px;
}

.travel-summary-grid dt,
.travel-summary-grid dd {
  margin: 0;
}

.travel-summary-grid dt {
  color: var(--muted);
  font-size: 0.67rem;
  font-weight: 780;
}

.travel-summary-grid dd {
  margin-top: 3px;
  color: var(--ink);
  font-size: 0.79rem;
  font-weight: 780;
  line-height: 1.3;
}

.travel-occurrence-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  padding: 12px;
}

.travel-occurrence-list > span {
  min-width: 0;
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  border-radius: 12px;
  background: #f1f4fa;
  padding: 8px;
}

.travel-occurrence-list i {
  width: 25px;
  height: 25px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #315cb8;
  color: white;
  font-size: 0.68rem;
  font-style: normal;
  font-weight: 850;
}

.travel-occurrence-list strong,
.travel-occurrence-list small {
  display: block;
}

.travel-occurrence-list strong {
  font-size: 0.75rem;
}

.travel-occurrence-list small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 0.66rem;
  font-weight: 680;
}

.travel-occurrence-list > span.is-ended {
  background: #f1efeb;
  opacity: 0.78;
}

.travel-occurrence-list > span.is-ended i {
  background: #756d66;
}

.travel-state-copy {
  margin: 0;
  border-top: 1px solid var(--settings-divider);
  padding: 11px 12px;
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 680;
  line-height: 1.42;
}

.travel-conflict-receipt {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  gap: 9px;
  border-top: 1px solid rgba(172, 79, 38, 0.18);
  background: #fff4eb;
  color: #7b3d22;
  padding: 11px 12px;
}

.travel-conflict-receipt > span {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #b6572d;
  color: white;
  font-weight: 900;
}

.travel-conflict-receipt strong,
.travel-conflict-receipt div > span {
  display: block;
}

.travel-conflict-receipt strong {
  font-size: 0.79rem;
}

.travel-conflict-receipt div > span {
  margin-top: 3px;
  font-size: 0.71rem;
  font-weight: 650;
  line-height: 1.38;
}

.travel-empty-state {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: center;
  gap: 11px;
  padding: 14px;
}

.travel-empty-state strong,
.travel-empty-state div > span {
  display: block;
}

.travel-empty-state strong {
  font-size: 0.86rem;
}

.travel-empty-state div > span {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.73rem;
  font-weight: 650;
  line-height: 1.4;
}

.travel-plan-editor {
  border-top: 1px solid var(--settings-divider);
  padding-top: 14px;
}

.travel-plan-editor-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 11px;
}

.travel-plan-editor-head strong,
.travel-plan-editor-head div > span {
  display: block;
}

.travel-plan-editor-head strong {
  font-size: 0.88rem;
}

.travel-plan-editor-head div > span {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 650;
  line-height: 1.35;
}

.travel-town-selector {
  margin: 12px 0 0;
  border: 1px solid var(--settings-divider);
  border-radius: 16px;
  background: #fffdfa;
  padding: 12px;
}

.travel-town-selector legend {
  width: 100%;
  padding: 0 1px 8px;
}

.travel-town-selector legend strong,
.travel-town-selector legend span {
  display: block;
}

.travel-town-selector legend strong {
  font-size: 0.8rem;
}

.travel-town-selector legend span {
  margin-top: 2px;
  color: var(--muted);
  font-size: 0.69rem;
  font-weight: 650;
}

.travel-town-options {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
}

.travel-town-options label {
  min-height: 44px;
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  border: 1px solid var(--settings-divider);
  border-radius: 12px;
  padding: 8px;
  font-size: 0.75rem;
  font-weight: 760;
}

.travel-town-options input {
  width: 18px;
  height: 18px;
  accent-color: var(--settings-green);
}

.travel-inheritance-receipt {
  margin-top: 11px;
  border-left: 3px solid #197c72;
  background: #edf7f3;
  padding: 10px 11px;
}

.travel-inheritance-receipt strong,
.travel-inheritance-receipt span {
  display: block;
}

.travel-inheritance-receipt strong {
  color: #0b5b54;
  font-size: 0.78rem;
}

.travel-inheritance-receipt span {
  margin-top: 3px;
  color: #476c67;
  font-size: 0.7rem;
  font-weight: 650;
  line-height: 1.4;
}

.travel-matching-switch {
  margin-top: 11px;
  border: 1px solid var(--settings-divider);
  border-radius: 15px;
  background: #fffdfa;
}

.travel-plan-actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
  gap: 8px;
  margin-top: 11px;
}

.travel-plan-actions > button {
  min-height: 44px;
  width: 100%;
  margin: 0;
}

.travel-plan-validation {
  margin-top: 10px;
  border: 1px solid rgba(172, 79, 38, 0.2);
  border-radius: 12px;
  background: #fff4eb;
  color: #8a4021;
  padding: 10px 11px;
  font-size: 0.74rem;
  font-weight: 740;
  line-height: 1.35;
}

.travel-unsupported {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 11px;
  border: 1px solid var(--settings-divider);
  border-radius: 16px;
  background: #f7f3ee;
  padding: 13px;
}

.travel-unsupported[hidden],
.travel-plan-editor[hidden],
.travel-create-notice[hidden] {
  display: none;
}

.travel-unsupported > div > strong,
.travel-unsupported > div > span {
  display: block;
}

.travel-unsupported > div > strong {
  font-size: 0.85rem;
}

.travel-unsupported > div > span {
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 650;
  line-height: 1.4;
}

.travel-unsupported label {
  display: grid;
  gap: 5px;
  margin-top: 11px;
  font-size: 0.74rem;
  font-weight: 780;
}

.travel-unsupported .secondary-action {
  width: 100%;
  margin: 8px 0 0;
}

#travelAreaRequestReceipt {
  display: block;
  margin-top: 7px;
  color: #0b665e;
  font-weight: 700;
  line-height: 1.35;
}

.travel-state-lab {
  margin-top: 2px;
}

.travel-create-notice {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  align-items: center;
  gap: 11px;
  border: 1px solid rgba(49, 92, 184, 0.18);
  border-radius: 16px;
  background: #f1f4fb;
  padding: 11px;
}

.travel-create-notice > div {
  min-width: 0;
}

.travel-create-notice strong,
.travel-create-notice div > span {
  display: block;
}

.travel-create-notice strong {
  color: #263f77;
  font-size: 0.8rem;
}

.travel-create-notice div > span {
  margin-top: 3px;
  color: #566681;
  font-size: 0.7rem;
  font-weight: 650;
  line-height: 1.35;
}

.travel-create-notice .secondary-action {
  width: auto;
  min-width: 124px;
  margin: 0;
}

@media (max-width: 520px) {
  .area-scope-control,
  .travel-summary-grid,
  .travel-occurrence-list,
  .travel-town-options {
    grid-template-columns: 1fr;
  }

  .travel-summary-head {
    grid-template-columns: 42px minmax(0, 1fr);
  }

  .travel-matching-state {
    grid-column: 2;
    justify-self: start;
    max-width: none;
  }

  .travel-plan-actions {
    grid-template-columns: 1fr 1fr;
  }

  .travel-plan-actions .primary-action {
    grid-column: 1 / -1;
  }

  .travel-create-notice {
    grid-template-columns: 42px minmax(0, 1fr);
  }

  .travel-create-notice .secondary-action {
    grid-column: 1 / -1;
    width: 100%;
  }
}

@media (max-width: 340px) {
  .travel-plan-actions {
    grid-template-columns: 1fr;
  }

  .travel-plan-actions .primary-action {
    grid-column: auto;
  }
}

/* Prototype v140: collapsed Familiar Faces picker, explained Invite filters, and automatic private routing. */
body.is-editorial-confidence-path #whoView .profile-section {
  border: 1px solid var(--alt-line);
  border-radius: 22px;
  background: rgba(255, 253, 249, 0.92);
  padding: 14px;
  box-shadow: var(--alt-shadow-small);
}

.familiar-picker-disclosure {
  overflow: clip;
  border: 1px solid rgba(164, 117, 75, 0.24);
  border-radius: 20px;
  background: rgba(255, 251, 245, 0.94);
  box-shadow: 0 12px 30px rgba(78, 54, 34, 0.07);
}

.familiar-picker-disclosure > summary {
  min-height: 78px;
  list-style: none;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  cursor: pointer;
  padding: 13px 14px;
}

.familiar-picker-disclosure > summary::-webkit-details-marker {
  display: none;
}

.familiar-picker-disclosure > summary:hover {
  background: rgba(255, 247, 236, 0.82);
}

.familiar-picker-disclosure > summary:focus-visible {
  outline: 3px solid rgba(132, 91, 55, 0.22);
  outline-offset: -3px;
}

.familiar-picker-mark,
.automatic-routing-mark {
  position: relative;
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  border-radius: 13px;
}

.familiar-picker-mark {
  border: 1px solid rgba(156, 104, 59, 0.18);
  background: #fff1dc;
}

.familiar-picker-mark::before,
.familiar-picker-mark::after {
  content: "";
  position: absolute;
  top: 10px;
  width: 8px;
  height: 8px;
  border: 2px solid #8b542c;
  border-radius: 50%;
  box-shadow: 0 9px 0 -2px #8b542c;
}

.familiar-picker-mark::before {
  left: 8px;
}

.familiar-picker-mark::after {
  right: 8px;
}

.familiar-picker-summary-copy {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.familiar-picker-summary-copy strong {
  color: var(--alt-ink, var(--ink));
  font-family: ui-serif, "New York", Georgia, serif;
  font-size: 1.04rem;
  letter-spacing: -0.012em;
  line-height: 1.12;
}

.familiar-picker-summary-copy small {
  color: var(--alt-muted, var(--muted));
  font-size: 0.78rem;
  font-weight: 690;
  line-height: 1.32;
}

.familiar-picker-summary-state {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

.familiar-picker-summary-state .disclosure-label {
  color: var(--alt-blue-dark, var(--blue-dark));
  font-size: 0.73rem;
  font-weight: 820;
}

.familiar-picker-summary-state .response-disclosure-chevron {
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  border-radius: 50%;
  background: var(--alt-blue-soft, #edf4ff);
  display: grid;
  place-items: center;
}

.familiar-picker-summary-state .response-disclosure-chevron::before {
  content: "";
  width: 7px;
  height: 7px;
  border-right: 2px solid var(--alt-blue-dark, var(--blue-dark));
  border-bottom: 2px solid var(--alt-blue-dark, var(--blue-dark));
  transform: rotate(45deg) translate(-1px, -1px);
}

.familiar-picker-disclosure[open] > summary {
  border-bottom: 1px solid rgba(164, 117, 75, 0.18);
  background: #fff8ee;
}

.familiar-picker-disclosure[open] > summary .response-disclosure-chevron::before {
  transform: rotate(225deg) translate(-1px, -1px);
}

.familiar-picker-body {
  padding: 12px;
}

.automatic-routing-receipt {
  border: 1px solid rgba(53, 112, 97, 0.2);
  border-radius: 18px;
  background: #f3faf7;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 13px 14px;
}

.automatic-routing-mark {
  border: 1px solid rgba(53, 112, 97, 0.2);
  background: #e2f3ed;
}

.automatic-routing-mark::before {
  content: "";
  position: absolute;
  inset: 8px 10px 9px;
  border: 2px solid #356f61;
  border-radius: 10px 10px 12px 12px;
  clip-path: polygon(50% 0, 100% 20%, 88% 76%, 50% 100%, 12% 76%, 0 20%);
}

.automatic-routing-mark::after {
  content: "";
  position: absolute;
  left: 15px;
  top: 14px;
  width: 7px;
  height: 4px;
  border-left: 2px solid #356f61;
  border-bottom: 2px solid #356f61;
  transform: rotate(-45deg);
}

.automatic-routing-receipt > div {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.automatic-routing-receipt strong,
.automatic-routing-receipt span {
  display: block;
}

.automatic-routing-receipt strong {
  color: #214f44;
  font-size: 0.9rem;
}

.automatic-routing-receipt > div > span {
  color: #516b65;
  font-size: 0.78rem;
  font-weight: 690;
  line-height: 1.35;
}

.automatic-routing-receipt > .quiet-pill {
  color: #285f51;
  background: rgba(255, 255, 255, 0.86);
}

#whoView .settings-fieldset > .section-note {
  margin-bottom: 11px;
}

#whoView .settings-fieldset > .preference-disclosure {
  min-height: 48px;
}

@media (max-width: 560px) {
  .familiar-picker-disclosure > summary {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .familiar-picker-summary-state {
    grid-column: 1 / -1;
    justify-content: space-between;
    padding-left: 50px;
  }

  .automatic-routing-receipt {
    grid-template-columns: auto minmax(0, 1fr);
    align-items: start;
  }

  .automatic-routing-receipt > .quiet-pill {
    grid-column: 2;
    justify-self: start;
  }
}

body.is-prototype-mobile .familiar-picker-disclosure > summary {
  grid-template-columns: auto minmax(0, 1fr);
}

body.is-prototype-mobile .familiar-picker-summary-state {
  grid-column: 1 / -1;
  justify-content: space-between;
  padding-left: 50px;
}

body.is-prototype-mobile .automatic-routing-receipt {
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
}

body.is-prototype-mobile .automatic-routing-receipt > .quiet-pill {
  grid-column: 2;
  justify-self: start;
}

@media (max-width: 360px) {
  .familiar-picker-disclosure > summary {
    gap: 10px;
    padding-inline: 11px;
  }

  .familiar-picker-summary-state {
    padding-left: 48px;
  }

  .familiar-picker-summary-state .disclosure-label {
    display: none;
  }
}

/* v10 cascade refinements over the earlier editorial Account and utility rules. */
body.is-traditional-invitation-system :where(
  .last-minute-receipt,
  .last-minute-note,
  .last-minute-list-receipt,
  .last-minute-timing-receipt
) {
  border: 0 !important;
  color: var(--system-copy) !important;
}

body.is-traditional-invitation-system :where(
  .last-minute-receipt,
  .last-minute-note,
  .last-minute-list-receipt,
  .last-minute-timing-receipt
) :where(strong, span, small) {
  color: var(--system-copy) !important;
}

body.is-traditional-invitation-system #homeView .home-command.is-primary .action-icon {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--system-action) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system .in-familiar-host-summary {
  border: 0 !important;
  border-top: 1px solid var(--system-line) !important;
  border-bottom: 1px solid var(--system-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system .in-familiar-host-kicker,
body.is-traditional-invitation-system .in-familiar-host-copy > strong {
  color: var(--system-copy) !important;
}

body.is-traditional-invitation-system .in-familiar-host-summary .member-card-words span,
body.is-traditional-invitation-system .member-card-words span,
body.is-traditional-invitation-system .profile-tags span,
body.is-traditional-invitation-system .host-words span {
  border-color: var(--system-line) !important;
  background: transparent !important;
  color: #55555a !important;
}

body.is-traditional-invitation-system:has(#accountView.is-active) .compose-panel {
  background: var(--system-canvas) !important;
}

body.is-traditional-invitation-system:has(#accountView.is-active) #screenHeader,
body.is-traditional-invitation-system:has(#accountView.is-active) > .app-shell .intro-copy,
body.is-traditional-invitation-system #accountView {
  width: min(1120px, 100%);
}

body.is-traditional-invitation-system:has(#accountView.is-active) #screenEyebrow {
  color: var(--system-muted) !important;
  font-size: 0.68rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.13em !important;
}

body.is-traditional-invitation-system:has(#accountView.is-active) #compose-title {
  color: var(--system-ink) !important;
  font-family: var(--salon-sans) !important;
  font-size: clamp(2rem, 4vw, 2.55rem) !important;
  font-weight: 600 !important;
  letter-spacing: -0.055em !important;
  line-height: 1 !important;
}

body.is-traditional-invitation-system:has(#accountView.is-active) > .app-shell .intro-copy {
  color: var(--system-muted) !important;
  font-weight: 400 !important;
}

body.is-traditional-invitation-system #accountView .account-settings-index {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

body.is-traditional-invitation-system #accountView .account-settings-index-head {
  isolation: auto !important;
  min-height: 86px !important;
  grid-template-columns: 54px minmax(0, 1fr) !important;
  gap: 13px !important;
  border: 1px solid var(--system-line) !important;
  border-radius: 17px !important;
  background: var(--system-paper) !important;
  padding: 15px !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system #accountView .account-settings-index-head::after {
  display: none !important;
}

body.is-traditional-invitation-system #accountView .account-settings-index-head strong {
  color: var(--system-ink) !important;
  font-size: 1.1rem !important;
  font-weight: 500 !important;
}

body.is-traditional-invitation-system #accountView .account-settings-index-head small {
  color: var(--system-muted) !important;
  font-size: 0.69rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.08em !important;
}

body.is-traditional-invitation-system #accountView .account-settings-monogram {
  width: 50px !important;
  height: 50px !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: var(--system-ink) !important;
  color: white !important;
  font-weight: 500 !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system #accountView .account-settings-list {
  gap: 8px !important;
  margin-top: 10px !important;
}

body.is-traditional-invitation-system #accountView .account-settings-list button {
  min-height: 66px !important;
  grid-template-columns: 24px minmax(0, 1fr) 18px !important;
  gap: 12px !important;
  border: 1px solid var(--system-line) !important;
  border-radius: 14px !important;
  background: var(--system-paper) !important;
  padding: 10px 14px !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system #accountView .account-settings-list button + button {
  border-top: 1px solid var(--system-line) !important;
}

body.is-traditional-invitation-system #accountView .account-settings-list button:hover,
body.is-traditional-invitation-system #accountView .account-settings-list button:focus-visible,
body.is-traditional-invitation-system #accountView .account-settings-list button.is-active {
  border-color: var(--system-line-strong) !important;
  background: #fafafd !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system #accountView .account-settings-list button strong {
  color: var(--system-ink) !important;
  font-size: 0.92rem !important;
  font-weight: 500 !important;
}

body.is-traditional-invitation-system #accountView .account-settings-list button small {
  color: var(--system-muted) !important;
  font-size: 0.7rem !important;
  font-weight: 400 !important;
}

body.is-traditional-invitation-system #accountView .account-settings-symbol {
  width: 24px !important;
  height: 24px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--system-muted) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system #accountView .account-settings-chevron {
  width: 18px !important;
  height: 18px !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--system-muted) !important;
}

body.is-traditional-invitation-system #accountView .account-settings-footer {
  color: var(--system-muted) !important;
}

/* Traditional Invitation v9 ---------------------------------------------
   One incoming record models familiar invitation anatomy with restrained,
   contemporary typesetting. It is formal without imitating stationery. */
body.is-traditional-invitation .is-traditional-invitation-example {
  overflow: hidden;
  border-color: rgba(60, 60, 67, 0.18) !important;
  background: #fff !important;
  box-shadow:
    0 1px 2px rgba(0, 0, 0, 0.03),
    0 8px 24px rgba(0, 0, 0, 0.055) !important;
}

body.is-traditional-invitation .traditional-invitation-face {
  position: relative;
  display: grid;
  justify-items: center;
  width: 100%;
  overflow: hidden;
  border: 0 !important;
  border-bottom: 1px solid rgba(60, 60, 67, 0.13) !important;
  border-radius: 0 !important;
  background: linear-gradient(180deg, #fff 0%, #fdfdfe 100%) !important;
  padding: 22px 24px 26px;
  color: #1d1d1f;
  text-align: center;
  box-shadow: none !important;
}

body.is-traditional-invitation .traditional-invitation-face::before,
body.is-traditional-invitation .traditional-invitation-face::after {
  display: none !important;
}

body.is-traditional-invitation .traditional-invitation-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  gap: 14px;
}

body.is-traditional-invitation .traditional-invitation-kicker {
  color: #78787d;
  font-size: 0.56rem;
  font-weight: 500;
  letter-spacing: 0.19em;
  line-height: 1;
  text-transform: uppercase;
}

body.is-traditional-invitation .traditional-invitation-heading .invite-record-state-pill {
  color: #636368 !important;
  font-size: 0.62rem !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
}

body.is-traditional-invitation .traditional-invitation-symbol {
  display: grid;
  width: 28px;
  height: 28px;
  margin-top: 24px;
  place-items: center;
  color: #737378;
}

body.is-traditional-invitation .traditional-invitation-symbol .event-category-icon {
  width: 26px !important;
  height: 26px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: currentColor !important;
  box-shadow: none !important;
}

body.is-traditional-invitation .traditional-invitation-host {
  margin: 14px 0 0;
  color: #636368;
  font-size: 0.78rem;
  font-weight: 400;
  letter-spacing: 0.02em;
}

body.is-traditional-invitation .traditional-invitation-host span {
  color: #343438;
  font-weight: 500;
}

body.is-traditional-invitation .traditional-invitation-face h3 {
  max-width: 310px;
  margin: 9px auto 0;
  color: #151517;
  font-size: clamp(1.75rem, 7.5vw, 2.15rem);
  font-weight: 600;
  letter-spacing: -0.05em;
  line-height: 1;
  text-wrap: balance;
}

body.is-traditional-invitation .traditional-invitation-category {
  margin: 10px 0 0;
  color: #737378;
  font-size: 0.58rem;
  font-weight: 500;
  letter-spacing: 0.17em;
  line-height: 1.2;
  text-transform: uppercase;
}

body.is-traditional-invitation .traditional-invitation-facts {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  width: min(100%, 330px);
  margin: 28px 0 0;
  padding: 0;
}

body.is-traditional-invitation .traditional-invitation-facts > div {
  min-width: 0;
  padding: 0 16px;
}

body.is-traditional-invitation .traditional-invitation-facts > div + div {
  border-left: 1px solid rgba(60, 60, 67, 0.16);
}

body.is-traditional-invitation .traditional-invitation-facts dt,
body.is-traditional-invitation .traditional-invitation-note > span,
body.is-traditional-invitation .traditional-rsvp-heading > span {
  color: #7b7b80;
  font-size: 0.55rem;
  font-weight: 500;
  letter-spacing: 0.16em;
  line-height: 1.2;
  text-transform: uppercase;
}

body.is-traditional-invitation .traditional-invitation-facts dd {
  margin: 6px 0 0;
  color: #28282c;
  font-size: 0.82rem;
  font-weight: 500;
  line-height: 1.25;
}

body.is-traditional-invitation .traditional-invitation-facts small {
  display: block;
  margin-top: 4px;
  color: #77777c;
  font-size: 0.65rem;
  font-weight: 400;
  line-height: 1.35;
}

body.is-traditional-invitation .traditional-invitation-note {
  width: min(100%, 330px);
  margin-top: 26px;
  padding-top: 20px;
  border-top: 1px solid rgba(60, 60, 67, 0.14);
  text-align: left;
}

body.is-traditional-invitation .traditional-invitation-note p {
  margin: 8px 0 0;
  color: #45454a;
  font-size: 0.78rem;
  font-weight: 400;
  line-height: 1.48;
}

body.is-traditional-invitation .is-traditional-invitation-example .invite-inline-disclosure {
  margin-inline: 14px;
}

body.is-traditional-invitation .guest-response-row.is-traditional-rsvp {
  grid-template-columns: auto minmax(0, 1fr) minmax(0, 1.15fr) !important;
  gap: 8px !important;
  padding-top: 14px !important;
}

body.is-traditional-invitation .traditional-rsvp-heading {
  grid-column: 1 / -1;
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  width: 100%;
  padding: 0 2px 3px;
}

body.is-traditional-invitation .traditional-rsvp-heading small {
  color: #66666b;
  font-size: 0.69rem;
  font-weight: 400;
}

body.is-traditional-invitation .is-traditional-invitation-example .guest-response-row > button {
  min-width: 0 !important;
}

@media (max-width: 360px) {
  body.is-traditional-invitation .traditional-invitation-face {
    padding-inline: 18px;
  }

  body.is-traditional-invitation .traditional-invitation-facts > div {
    padding-inline: 10px;
  }

  body.is-traditional-invitation .traditional-invitation-face h3 {
    font-size: 1.7rem;
  }

  body.is-traditional-invitation .guest-response-row.is-traditional-rsvp {
    grid-template-columns: auto minmax(0, 1fr) !important;
  }

  body.is-traditional-invitation .guest-response-row.is-traditional-rsvp .profile-add-action {
    grid-column: 1 / -1;
  }
}

/* Canonical v118: launch-ready private Member Operations workspace. */
#memberOperationsView.is-active {
  width: 100%;
  max-width: 1180px;
  margin-right: auto;
  margin-left: auto;
}

#memberOperationsView .operations-stage {
  --ops-ink: #342f2c;
  --ops-muted: #726a65;
  --ops-line: rgba(64, 53, 47, 0.14);
  --ops-paper: #fffcf8;
  --ops-sage: #dce9df;
  --ops-lavender: #e8e2f0;
  --ops-blush: #f4ded8;
  --ops-gold: #d8ba7e;
  min-width: 0;
  color: var(--ops-ink);
}

.operations-stage-header {
  position: relative;
  overflow: hidden;
  min-height: 126px;
  border: 1px solid var(--ops-line);
  border-radius: 26px 26px 12px 12px;
  background:
    radial-gradient(circle at 93% 0%, rgba(219, 197, 225, 0.82), transparent 40%),
    linear-gradient(125deg, #f7e4dd 0%, #f8f1e8 48%, #e6eee6 100%);
  padding: 22px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
}

.operations-stage-header::after {
  content: "";
  position: absolute;
  top: -34px;
  right: 16%;
  width: 120px;
  height: 120px;
  border: 1px solid rgba(69, 56, 48, 0.08);
  border-radius: 36% 64% 54% 46%;
  transform: rotate(18deg);
  pointer-events: none;
}

.operations-stage-header > * {
  position: relative;
  z-index: 1;
}

.operations-stage-header h1 {
  margin: 4px 0 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.8rem, 3vw, 2.6rem);
  font-weight: 500;
  letter-spacing: -0.035em;
}

.operations-stage-header > div:first-child > p:last-child {
  max-width: 650px;
  margin: 7px 0 0;
  color: var(--ops-muted);
  font-size: 0.86rem;
  font-weight: 680;
  line-height: 1.45;
}

.operations-operator-chip {
  min-width: 174px;
  border: 1px solid rgba(64, 53, 47, 0.12);
  border-radius: 17px;
  background: rgba(255, 252, 248, 0.7);
  padding: 8px 10px;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  align-items: center;
  gap: 9px;
  backdrop-filter: blur(12px);
}

.operations-operator-chip > span:first-child {
  width: 38px;
  height: 38px;
  border-radius: 13px;
  background: var(--ops-ink);
  color: white;
  display: grid;
  place-items: center;
  font-size: 0.7rem;
  font-weight: 900;
}

.operations-operator-chip strong,
.operations-operator-chip small {
  display: block;
}

.operations-operator-chip strong {
  font-size: 0.78rem;
}

.operations-operator-chip small {
  margin-top: 2px;
  color: var(--ops-muted);
  font-size: 0.66rem;
  font-weight: 700;
}

.operations-nav {
  position: sticky;
  top: 0;
  z-index: 9;
  margin: -14px 12px 18px;
  border: 1px solid var(--ops-line);
  border-radius: 18px;
  background: rgba(255, 252, 248, 0.94);
  padding: 5px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 4px;
  box-shadow: 0 12px 30px rgba(63, 50, 42, 0.08);
  backdrop-filter: blur(16px);
}

.operations-nav button {
  min-width: 0;
  min-height: 48px;
  border: 0;
  border-radius: 13px;
  background: transparent;
  color: var(--ops-muted);
  padding: 0 12px;
  display: grid;
  grid-template-columns: 22px minmax(0, auto) auto;
  align-items: center;
  justify-content: center;
  gap: 7px;
  font-size: 0.76rem;
  font-weight: 800;
}

.operations-nav button:hover,
.operations-nav button:focus-visible {
  background: #f3eee8;
  color: var(--ops-ink);
}

.operations-nav button.is-active {
  background: var(--ops-ink);
  color: white;
}

.operations-nav svg {
  width: 21px;
  height: 21px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.operations-nav button strong {
  min-width: 21px;
  height: 21px;
  border-radius: 999px;
  background: rgba(63, 53, 48, 0.08);
  display: grid;
  place-items: center;
  font-size: 0.64rem;
}

.operations-nav button.is-active strong {
  background: rgba(255, 255, 255, 0.18);
}

.operations-screen[hidden],
.operations-dialog[hidden],
.operations-toast[hidden],
.operations-import-receipt[hidden] {
  display: none;
}

.operations-screen {
  min-width: 0;
  animation: operations-enter 180ms ease-out both;
}

@keyframes operations-enter {
  from { opacity: 0; transform: translateY(4px); }
  to { opacity: 1; transform: translateY(0); }
}

#operationsTodayScreen {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
}

#operationsTodayScreen .member-operations-command-bar {
  margin-top: 0;
}

#operationsTodayScreen .member-operations-command-bar div {
  border-color: var(--ops-line);
  background: var(--ops-paper);
}

#operationsTodayScreen .journey-card,
#operationsTodayScreen .member-operations-task-detail {
  border-color: var(--ops-line);
  background: var(--ops-paper);
}

.operations-screen-heading {
  min-height: 86px;
  margin-bottom: 12px;
  border-bottom: 1px solid var(--ops-line);
  padding: 4px 2px 16px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
}

.operations-screen-heading h2 {
  margin: 3px 0 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.45rem, 2.4vw, 2rem);
  font-weight: 500;
  letter-spacing: -0.025em;
}

.operations-screen-heading > div:first-child > p:last-child {
  max-width: 650px;
  margin: 5px 0 0;
  color: var(--ops-muted);
  font-size: 0.8rem;
  font-weight: 680;
  line-height: 1.4;
}

.operations-heading-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.operations-heading-actions .primary-action,
.operations-screen-heading > .primary-action,
.operations-import-action {
  min-height: 44px;
  margin: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
}

.operations-import-action {
  border: 1px solid var(--ops-line);
  border-radius: 13px;
  background: var(--ops-paper);
  color: var(--ops-ink);
  padding: 0 14px;
  font-size: 0.76rem;
  font-weight: 820;
  cursor: pointer;
}

.operations-import-action:hover,
.operations-import-action:focus-within {
  border-color: rgba(73, 63, 56, 0.3);
  background: #f5f0e9;
}

.operations-import-receipt {
  margin-bottom: 10px;
  border: 1px solid rgba(44, 111, 86, 0.2);
  border-radius: 14px;
  background: #edf6f0;
  padding: 10px 12px;
}

.operations-import-receipt strong,
.operations-import-receipt span {
  display: block;
}

.operations-import-receipt strong {
  color: #245b47;
  font-size: 0.78rem;
}

.operations-import-receipt span {
  margin-top: 3px;
  color: #567064;
  font-size: 0.7rem;
  font-weight: 680;
}

.operations-people-workspace {
  min-width: 0;
  min-height: 650px;
  overflow: hidden;
  border: 1px solid var(--ops-line);
  border-radius: 22px;
  background: var(--ops-paper);
  display: grid;
  grid-template-columns: minmax(270px, 320px) minmax(0, 1fr);
  box-shadow: 0 18px 44px rgba(66, 53, 44, 0.07);
}

.operations-registry {
  min-width: 0;
  border-right: 1px solid var(--ops-line);
  background: #f6f1eb;
  display: flex;
  flex-direction: column;
}

.operations-registry-tools {
  border-bottom: 1px solid var(--ops-line);
  padding: 12px;
  display: grid;
  gap: 8px;
}

.operations-registry-tools label,
.operations-registry-tools select,
.operations-registry-tools input {
  width: 100%;
}

.operations-registry-tools select,
.operations-search-field {
  min-height: 44px;
  border: 1px solid var(--ops-line);
  border-radius: 12px;
  background: var(--ops-paper);
}

.operations-registry-tools select {
  padding: 0 10px;
  color: var(--ops-ink);
  font-size: 0.73rem;
  font-weight: 750;
}

.operations-search-field {
  padding: 0 10px;
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  align-items: center;
  gap: 7px;
}

.operations-search-field svg {
  width: 19px;
  height: 19px;
  fill: none;
  stroke: var(--ops-muted);
  stroke-width: 1.8;
  stroke-linecap: round;
}

.operations-search-field input {
  min-width: 0;
  min-height: 42px;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--ops-ink);
  font-size: 0.75rem;
}

.operations-search-field:focus-within {
  border-color: rgba(77, 65, 58, 0.42);
  box-shadow: 0 0 0 3px rgba(212, 193, 222, 0.28);
}

.operations-registry-summary {
  padding: 12px 13px 7px;
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
}

.operations-registry-summary strong {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1rem;
  font-weight: 600;
}

.operations-registry-summary span {
  color: var(--ops-muted);
  font-size: 0.64rem;
  font-weight: 750;
}

.operations-people-list {
  min-height: 0;
  overflow-y: auto;
  padding: 5px 8px 12px;
  display: grid;
  align-content: start;
  gap: 5px;
}

.operations-person-row {
  min-width: 0;
  min-height: 68px;
  border: 1px solid transparent;
  border-radius: 15px;
  background: transparent;
  color: var(--ops-ink);
  padding: 8px;
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  align-items: center;
  gap: 9px;
  text-align: left;
}

.operations-person-row:hover,
.operations-person-row:focus-visible {
  border-color: rgba(64, 53, 47, 0.1);
  background: rgba(255, 252, 248, 0.74);
}

.operations-person-row.is-selected {
  border-color: rgba(91, 78, 70, 0.18);
  background: var(--ops-paper);
  box-shadow: 0 5px 16px rgba(59, 49, 43, 0.06);
}

.operations-person-avatar,
.operations-record-avatar {
  background: linear-gradient(145deg, #d7c8df, #c8d9cd);
  color: #40363e;
  display: grid;
  place-items: center;
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 700;
}

.operations-person-avatar {
  width: 40px;
  height: 40px;
  border-radius: 14px;
  font-size: 0.94rem;
}

.operations-person-copy,
.operations-person-copy strong,
.operations-person-copy small {
  min-width: 0;
  display: block;
}

.operations-person-copy strong {
  overflow: hidden;
  font-size: 0.78rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.operations-person-copy small {
  margin-top: 3px;
  overflow: hidden;
  color: var(--ops-muted);
  font-size: 0.63rem;
  font-weight: 680;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.operations-person-state {
  grid-column: 2;
  margin-top: -8px;
  color: var(--ops-muted);
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 0.61rem;
  font-weight: 800;
}

.operations-person-state i {
  width: 7px;
  height: 7px;
  border: 1px solid currentColor;
  border-radius: 50%;
  background: #eee6dd;
}

.operations-person-state.is-active {
  color: #2f6c51;
}

.operations-person-state.is-active i {
  background: #77b494;
}

.operations-person-state.is-action {
  color: #8d5c22;
}

.operations-person-state.is-action i {
  background: #ddb777;
}

.operations-person-state.is-paused {
  color: #8b4637;
}

.operations-person-state.is-paused i {
  background: #d89481;
}

.operations-person-record {
  min-width: 0;
  min-height: 0;
  overflow-y: auto;
  background: var(--ops-paper);
}

.operations-person-record > form {
  min-height: 100%;
  display: flex;
  flex-direction: column;
}

.operations-record-header {
  min-height: 112px;
  border-bottom: 1px solid var(--ops-line);
  background:
    radial-gradient(circle at 92% 8%, rgba(231, 214, 223, 0.65), transparent 31%),
    linear-gradient(120deg, #f9eee8, #f2f4ed);
  padding: 18px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.operations-record-identity {
  min-width: 0;
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
}

.operations-record-avatar {
  width: 58px;
  height: 58px;
  border-radius: 20px;
  font-size: 1.35rem;
}

.operations-record-identity h2 {
  margin: 2px 0 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: -0.025em;
}

.operations-record-identity > div > p:last-child {
  margin: 3px 0 0;
  overflow: hidden;
  color: var(--ops-muted);
  font-size: 0.69rem;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.operations-record-badges {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
}

.operations-record-badges span,
.operations-restricted-badge {
  border: 1px solid var(--ops-line);
  border-radius: 999px;
  background: rgba(255, 252, 248, 0.78);
  color: var(--ops-muted);
  padding: 6px 9px;
  font-size: 0.64rem;
  font-weight: 830;
  white-space: nowrap;
}

.operations-record-badges span.is-active {
  border-color: rgba(47, 108, 81, 0.2);
  background: #eaf4ed;
  color: #2f6c51;
}

.operations-record-badges span.is-action {
  border-color: rgba(141, 92, 34, 0.2);
  background: #fbf1dc;
  color: #83541e;
}

.operations-record-badges span.is-paused,
.operations-restricted-badge {
  border-color: rgba(139, 70, 55, 0.2);
  background: #fae9e4;
  color: #854334;
}

.operations-mobile-back {
  display: none;
}

.operations-record-tabs {
  min-height: 48px;
  overflow-x: auto;
  border-bottom: 1px solid var(--ops-line);
  background: #fbf8f4;
  padding: 0 12px;
  display: flex;
  align-items: stretch;
  gap: 2px;
  scrollbar-width: none;
}

.operations-record-tabs::-webkit-scrollbar {
  display: none;
}

.operations-record-tabs button {
  min-width: max-content;
  min-height: 47px;
  border: 0;
  border-bottom: 2px solid transparent;
  background: transparent;
  color: var(--ops-muted);
  padding: 0 10px;
  font-size: 0.68rem;
  font-weight: 800;
}

.operations-record-tabs button:hover,
.operations-record-tabs button:focus-visible,
.operations-record-tabs button.is-active {
  color: var(--ops-ink);
}

.operations-record-tabs button.is-active {
  border-bottom-color: var(--ops-ink);
}

.operations-record-body {
  flex: 1;
  padding: 18px 20px 24px;
}

.operations-record-section {
  display: grid;
  gap: 14px;
}

.operations-section-heading {
  min-height: 42px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.operations-section-heading h3 {
  margin: 2px 0 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.14rem;
  font-weight: 600;
}

.operations-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.operations-record-body label,
.operations-dialog-panel form > label,
.operations-dialog-panel .operations-form-grid label {
  min-width: 0;
  display: grid;
  gap: 6px;
  color: #625a55;
  font-size: 0.68rem;
  font-weight: 820;
}

.operations-record-body input,
.operations-record-body select,
.operations-record-body textarea,
.operations-dialog-panel input,
.operations-dialog-panel select,
.operations-dialog-panel textarea {
  width: 100%;
  min-width: 0;
  min-height: 44px;
  border: 1px solid var(--ops-line);
  border-radius: 12px;
  background: #fffdfa;
  color: var(--ops-ink);
  padding: 10px;
  font: inherit;
  font-size: 0.76rem;
  font-weight: 680;
}

.operations-record-body textarea,
.operations-dialog-panel textarea {
  min-height: 84px;
  resize: vertical;
  line-height: 1.4;
}

.operations-record-body input:focus,
.operations-record-body select:focus,
.operations-record-body textarea:focus,
.operations-dialog-panel input:focus,
.operations-dialog-panel select:focus,
.operations-dialog-panel textarea:focus {
  outline: 3px solid rgba(212, 193, 222, 0.34);
  border-color: rgba(77, 65, 58, 0.4);
}

.operations-checkbox {
  min-height: 58px;
  border: 1px solid var(--ops-line);
  border-radius: 14px;
  background: #f6f1eb;
  padding: 10px;
  display: grid !important;
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: start;
  gap: 9px !important;
}

.operations-checkbox input {
  width: 20px !important;
  min-height: 20px !important;
  margin: 1px 0 0;
}

.operations-checkbox strong,
.operations-checkbox small {
  display: block;
}

.operations-checkbox strong {
  color: var(--ops-ink);
  font-size: 0.74rem;
}

.operations-checkbox small {
  margin-top: 3px;
  color: var(--ops-muted);
  font-size: 0.64rem;
  font-weight: 670;
  line-height: 1.35;
}

.operations-inline-checkbox {
  align-self: end;
}

.operations-check-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.operations-boundary-note {
  border: 1px solid rgba(44, 111, 86, 0.14);
  border-radius: 14px;
  background: #eff5f0;
  padding: 11px 12px;
}

.operations-boundary-note strong,
.operations-boundary-note p {
  display: block;
}

.operations-boundary-note strong {
  color: #2d5c49;
  font-size: 0.75rem;
}

.operations-boundary-note p {
  margin: 4px 0 0;
  color: #557064;
  font-size: 0.69rem;
  font-weight: 680;
  line-height: 1.4;
}

.operations-fact-grid,
.operations-safety-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.operations-fact-grid > div,
.operations-safety-grid > div {
  min-height: 66px;
  border: 1px solid var(--ops-line);
  border-radius: 13px;
  background: #f7f3ee;
  padding: 10px;
}

.operations-fact-grid span,
.operations-fact-grid strong,
.operations-safety-grid span,
.operations-safety-grid strong {
  display: block;
}

.operations-fact-grid span,
.operations-safety-grid span {
  color: var(--ops-muted);
  font-size: 0.62rem;
  font-weight: 760;
}

.operations-fact-grid strong,
.operations-safety-grid strong {
  margin-top: 5px;
  font-size: 0.73rem;
  line-height: 1.25;
}

.operations-inline-action {
  width: fit-content;
  min-height: 44px;
  margin: 0;
}

.operations-assisted-action {
  margin-top: 4px;
  border: 1px solid rgba(112, 82, 128, 0.16);
  border-radius: 17px;
  background: #f4f0f6;
  padding: 14px;
  display: grid;
  gap: 12px;
}

.operations-assisted-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.operations-assisted-footer p {
  max-width: 420px;
  margin: 0;
  color: #6b6170;
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 1.35;
}

.operations-assisted-footer .primary-action {
  min-width: 128px;
  min-height: 44px;
  margin: 0;
}

.operations-history-list {
  display: grid;
}

.operations-history-list article {
  position: relative;
  min-height: 82px;
  padding: 4px 0 18px 28px;
}

.operations-history-list article:not(:last-child)::before {
  content: "";
  position: absolute;
  top: 12px;
  bottom: -2px;
  left: 7px;
  width: 1px;
  background: var(--ops-line);
}

.operations-history-mark {
  position: absolute;
  top: 6px;
  left: 2px;
  width: 11px;
  height: 11px;
  border: 2px solid #fdfaf6;
  border-radius: 50%;
  background: #8ba99a;
  box-shadow: 0 0 0 1px #8ba99a;
}

.operations-history-list span,
.operations-history-list strong,
.operations-history-list p {
  display: block;
}

.operations-history-list article > div > span {
  color: var(--ops-muted);
  font-size: 0.62rem;
  font-weight: 740;
}

.operations-history-list strong {
  margin-top: 3px;
  font-size: 0.77rem;
}

.operations-history-list p {
  margin: 4px 0 0;
  color: var(--ops-muted);
  font-size: 0.7rem;
  font-weight: 670;
  line-height: 1.4;
}

.operations-record-save-bar,
.operations-form-save-bar {
  position: sticky;
  bottom: 0;
  z-index: 6;
  min-height: 68px;
  border-top: 1px solid var(--ops-line);
  background: rgba(255, 252, 248, 0.96);
  padding: 10px 14px max(10px, env(safe-area-inset-bottom));
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  box-shadow: 0 -10px 28px rgba(60, 49, 43, 0.07);
  backdrop-filter: blur(14px);
}

.operations-record-save-bar.is-dirty,
.operations-person-record:has(input:focus, select:focus, textarea:focus) .operations-record-save-bar.is-dirty {
  border-top-color: rgba(150, 102, 47, 0.25);
  background: rgba(255, 249, 239, 0.97);
}

.operations-record-save-bar strong,
.operations-record-save-bar small,
.operations-form-save-bar strong,
.operations-form-save-bar small {
  display: block;
}

.operations-record-save-bar strong,
.operations-form-save-bar strong {
  font-size: 0.76rem;
}

.operations-record-save-bar small,
.operations-form-save-bar small {
  margin-top: 2px;
  color: var(--ops-muted);
  font-size: 0.65rem;
  font-weight: 680;
}

.operations-record-save-bar > div:last-child,
.operations-form-save-bar > div:last-child {
  display: flex;
  align-items: center;
  gap: 8px;
}

.operations-record-save-bar button,
.operations-form-save-bar button {
  width: auto;
  min-width: 104px;
  min-height: 44px;
  margin: 0;
}

.operations-record-save-bar button:disabled {
  opacity: 0.48;
  cursor: default;
}

.operations-empty-state {
  min-height: 170px;
  padding: 24px;
  color: var(--ops-muted);
  display: grid;
  place-content: center;
  text-align: center;
}

.operations-empty-state strong,
.operations-empty-state span {
  display: block;
}

.operations-empty-state strong {
  color: var(--ops-ink);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1rem;
}

.operations-empty-state span {
  margin-top: 4px;
  font-size: 0.7rem;
  font-weight: 680;
}

.operations-worklist {
  display: grid;
  gap: 9px;
}

.operations-work-row {
  min-width: 0;
  border: 1px solid var(--ops-line);
  border-radius: 18px;
  background: var(--ops-paper);
  padding: 13px;
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) minmax(150px, auto);
  align-items: center;
  gap: 13px;
}

.operations-work-row.is-high {
  border-left: 4px solid #c88771;
}

.operations-work-symbol {
  width: 44px;
  height: 44px;
  border-radius: 15px;
  background: var(--ops-lavender);
  display: grid;
  place-items: center;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.1rem;
  font-weight: 700;
}

.operations-work-row.is-high .operations-work-symbol {
  background: var(--ops-blush);
  color: #7d4334;
}

.operations-kicker {
  color: #7b6f67;
  font-size: 0.62rem;
  font-weight: 850;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.operations-work-row h3,
.operations-safety-case h3 {
  margin: 3px 0 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1rem;
  font-weight: 600;
}

.operations-work-row p {
  margin: 4px 0 0;
  color: var(--ops-muted);
  font-size: 0.69rem;
  font-weight: 670;
  line-height: 1.35;
}

.operations-work-meta {
  min-width: 150px;
  display: grid;
  justify-items: end;
  gap: 3px;
}

.operations-work-meta span {
  color: var(--ops-muted);
  font-size: 0.62rem;
  font-weight: 700;
}

.operations-work-meta strong {
  font-size: 0.7rem;
}

.operations-work-meta button {
  min-height: 36px;
  margin-top: 4px;
  border: 1px solid var(--ops-line);
  border-radius: 11px;
  background: #f4efe8;
  color: var(--ops-ink);
  padding: 0 10px;
  font-size: 0.68rem;
  font-weight: 820;
}

#operationsInvitationsScreen > .operations-boundary-note {
  margin-top: 12px;
}

.operations-safety-case {
  border: 1px solid rgba(139, 70, 55, 0.2);
  border-radius: 20px;
  background: var(--ops-paper);
  padding: 16px;
}

.operations-safety-case > header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.operations-safety-grid {
  margin-top: 14px;
}

.operations-safety-case > .operations-boundary-note {
  margin-top: 12px;
}

.operations-safety-actions {
  margin-top: 12px;
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

.operations-safety-actions button {
  width: auto;
  min-width: 120px;
  min-height: 44px;
  margin: 0;
}

.operations-audit-summary {
  margin-top: 12px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.operations-audit-summary > div {
  border: 1px solid var(--ops-line);
  border-radius: 15px;
  background: #f6f1eb;
  padding: 11px;
}

.operations-audit-summary strong,
.operations-audit-summary span {
  display: block;
}

.operations-audit-summary strong {
  font-size: 0.73rem;
}

.operations-audit-summary span {
  margin-top: 4px;
  color: var(--ops-muted);
  font-size: 0.66rem;
  font-weight: 670;
  line-height: 1.35;
}

.operations-dialog {
  position: fixed;
  z-index: 80;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 18px;
}

.operations-dialog-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(43, 37, 34, 0.46);
  backdrop-filter: blur(7px);
}

.operations-dialog-panel {
  position: relative;
  width: min(680px, 100%);
  max-height: min(820px, calc(100vh - 36px));
  overflow-y: auto;
  border: 1px solid rgba(255, 255, 255, 0.48);
  border-radius: 24px;
  background: var(--ops-paper);
  box-shadow: 0 26px 70px rgba(37, 29, 25, 0.25);
}

.operations-dialog-panel > header {
  position: sticky;
  top: 0;
  z-index: 3;
  min-height: 96px;
  border-bottom: 1px solid var(--ops-line);
  background:
    radial-gradient(circle at 85% 0%, rgba(220, 207, 230, 0.78), transparent 42%),
    linear-gradient(120deg, #f9e7df, #eef2e9);
  padding: 16px 58px 14px 18px;
}

.operations-dialog-panel > header h2 {
  margin: 3px 0 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.45rem;
  font-weight: 600;
}

.operations-dialog-panel > header p:last-child {
  margin: 4px 0 0;
  color: var(--ops-muted);
  font-size: 0.69rem;
  font-weight: 680;
}

.operations-dialog-panel > header > button {
  position: absolute;
  top: 14px;
  right: 14px;
  width: 44px;
  height: 44px;
  border: 1px solid var(--ops-line);
  border-radius: 50%;
  background: rgba(255, 252, 248, 0.76);
  color: var(--ops-ink);
  font-size: 1.2rem;
}

.operations-dialog-panel form {
  display: grid;
  gap: 13px;
  padding: 16px 18px 0;
}

.operations-dialog-panel .operations-form-save-bar {
  margin: 2px -18px 0;
}

body.has-operations-dialog {
  overflow: hidden;
}

.operations-toast {
  position: fixed;
  z-index: 100;
  right: 20px;
  bottom: max(20px, env(safe-area-inset-bottom));
  max-width: min(410px, calc(100vw - 32px));
  border: 1px solid rgba(42, 93, 72, 0.22);
  border-radius: 15px;
  background: #eef6f0;
  color: #285643;
  padding: 11px 13px;
  box-shadow: 0 16px 44px rgba(36, 62, 50, 0.16);
  font-size: 0.73rem;
  font-weight: 760;
  line-height: 1.4;
}

@media (min-width: 901px) {
  body.is-prototype-desktop #memberOperationsView.is-active {
    max-width: 1180px;
  }

  body.is-prototype-desktop #operationsTodayScreen {
    grid-template-columns: minmax(0, 1.1fr) minmax(300px, 0.9fr);
    align-items: start;
  }

  body.is-prototype-desktop #operationsTodayScreen .member-operations-command-bar,
  body.is-prototype-desktop #operationsTodayScreen .member-operations-resolution-receipt {
    grid-column: 1 / -1;
  }

  body.is-prototype-desktop #operationsTodayScreen .member-operations-queue-card,
  body.is-prototype-desktop #operationsTodayScreen .member-operations-task-detail {
    grid-column: 1;
  }

  body.is-prototype-desktop #operationsTodayScreen .application-operation {
    grid-column: 2;
  }

  body.is-prototype-desktop .operations-people-workspace {
    height: min(720px, calc(100vh - 210px));
    min-height: 620px;
  }
}

@media (max-width: 700px) {
  .operations-stage-header {
    min-height: 148px;
    border-radius: 22px 22px 10px 10px;
    padding: 18px;
    display: block;
  }

  .operations-stage-header h1 {
    font-size: 1.75rem;
  }

  .operations-stage-header > div:first-child > p:last-child {
    padding-right: 4px;
    font-size: 0.76rem;
  }

  .operations-operator-chip {
    width: fit-content;
    min-width: 160px;
    margin-top: 12px;
  }

  .operations-nav {
    margin: -10px 7px 14px;
  }

  .operations-nav button {
    min-height: 54px;
    padding: 3px;
    grid-template-columns: 1fr;
    grid-template-rows: 21px auto;
    justify-items: center;
    gap: 2px;
    font-size: 0.61rem;
  }

  .operations-nav button strong {
    position: absolute;
    margin: -24px 0 0 28px;
    min-width: 18px;
    height: 18px;
    font-size: 0.56rem;
  }

  .operations-nav svg {
    width: 20px;
    height: 20px;
  }

  .operations-screen-heading {
    display: grid;
    gap: 12px;
  }

  .operations-heading-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .operations-heading-actions > * {
    width: 100%;
  }

  .operations-screen-heading > .primary-action {
    width: 100%;
  }

  .operations-people-workspace {
    min-height: 520px;
    scroll-margin-top: 68px;
    display: block;
  }

  .operations-registry {
    min-height: 520px;
    border-right: 0;
  }

  .operations-person-record {
    display: none;
  }

  .operations-people-workspace.is-record-open .operations-registry {
    display: none;
  }

  .operations-people-workspace.is-record-open .operations-person-record {
    min-height: 620px;
    display: block;
  }

  .operations-record-header {
    min-height: 148px;
    padding: 48px 13px 13px;
    display: grid;
    align-items: start;
  }

  .operations-mobile-back {
    position: absolute;
    margin: -39px 0 0 -4px;
    min-height: 38px;
    border: 0;
    background: transparent;
    color: var(--ops-ink);
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 1.1rem;
    font-weight: 800;
  }

  .operations-mobile-back span {
    font-size: 0.7rem;
  }

  .operations-record-identity {
    grid-template-columns: 52px minmax(0, 1fr);
  }

  .operations-record-avatar {
    width: 52px;
    height: 52px;
    border-radius: 18px;
  }

  .operations-record-identity h2 {
    font-size: 1.3rem;
  }

  .operations-record-badges {
    justify-content: flex-start;
  }

  .operations-record-tabs {
    padding: 0 6px;
  }

  .operations-record-body {
    padding: 14px 12px 24px;
  }

  .operations-form-grid,
  .operations-check-grid,
  .operations-fact-grid,
  .operations-safety-grid,
  .operations-audit-summary {
    grid-template-columns: minmax(0, 1fr);
  }

  .operations-assisted-footer,
  .operations-record-save-bar,
  .operations-form-save-bar {
    align-items: stretch;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .operations-assisted-footer .primary-action {
    width: 100%;
  }

  .operations-record-save-bar > div:last-child,
  .operations-form-save-bar > div:last-child {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .operations-record-save-bar button,
  .operations-form-save-bar button {
    width: 100%;
    min-width: 0;
  }

  .operations-work-row {
    grid-template-columns: 42px minmax(0, 1fr);
    align-items: start;
  }

  .operations-work-meta {
    grid-column: 2;
    min-width: 0;
    justify-items: start;
  }

  .operations-work-meta button {
    min-height: 44px;
  }

  .operations-safety-case > header {
    display: grid;
  }

  .operations-safety-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .operations-safety-actions button {
    width: 100%;
    min-width: 0;
  }

  .operations-dialog {
    align-items: end;
    padding: 0;
  }

  .operations-dialog-panel {
    width: 100%;
    max-height: calc(100dvh - 18px);
    border-radius: 24px 24px 0 0;
  }

  .operations-dialog-panel .operations-form-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .operations-toast {
    right: 12px;
    bottom: max(12px, env(safe-area-inset-bottom));
    left: 12px;
    max-width: none;
  }
}

/* The prototype device switch, rather than the outer browser width, owns preview geometry. */
body.is-prototype-mobile .operations-stage-header {
  min-height: 148px;
  border-radius: 22px 22px 10px 10px;
  padding: 18px;
  display: block;
}

body.is-prototype-mobile .operations-stage-header h1 {
  font-size: 1.75rem;
}

body.is-prototype-mobile .operations-stage-header > div:first-child > p:last-child {
  padding-right: 4px;
  font-size: 0.76rem;
}

body.is-prototype-mobile .operations-operator-chip {
  width: fit-content;
  min-width: 160px;
  margin-top: 12px;
}

body.is-prototype-mobile .operations-nav {
  margin: -10px 7px 14px;
}

body.is-prototype-mobile .operations-nav button {
  min-height: 54px;
  padding: 3px;
  grid-template-columns: 1fr;
  grid-template-rows: 21px auto;
  justify-items: center;
  gap: 2px;
  font-size: 0.61rem;
}

body.is-prototype-mobile .operations-nav button strong {
  position: absolute;
  margin: -24px 0 0 28px;
  min-width: 18px;
  height: 18px;
  font-size: 0.56rem;
}

body.is-prototype-mobile .operations-nav svg {
  width: 20px;
  height: 20px;
}

body.is-prototype-mobile .operations-screen-heading {
  display: grid;
  gap: 12px;
}

body.is-prototype-mobile .operations-heading-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.is-prototype-mobile .operations-heading-actions > *,
body.is-prototype-mobile .operations-screen-heading > .primary-action {
  width: 100%;
}

body.is-prototype-mobile .operations-people-workspace {
  min-height: 520px;
  scroll-margin-top: 68px;
  display: block;
}

body.is-prototype-mobile .operations-registry {
  min-height: 520px;
  border-right: 0;
}

body.is-prototype-mobile .operations-person-record {
  display: none;
}

body.is-prototype-mobile .operations-people-workspace.is-record-open .operations-registry {
  display: none;
}

body.is-prototype-mobile .operations-people-workspace.is-record-open .operations-person-record {
  min-height: 620px;
  display: block;
}

body.is-prototype-mobile .operations-record-header {
  min-height: 148px;
  padding: 48px 13px 13px;
  display: grid;
  align-items: start;
}

body.is-prototype-mobile .operations-mobile-back {
  position: absolute;
  margin: -39px 0 0 -4px;
  min-height: 38px;
  border: 0;
  background: transparent;
  color: var(--ops-ink);
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 1.1rem;
  font-weight: 800;
}

body.is-prototype-mobile .operations-mobile-back span {
  font-size: 0.7rem;
}

body.is-prototype-mobile .operations-record-identity {
  grid-template-columns: 52px minmax(0, 1fr);
}

body.is-prototype-mobile .operations-record-avatar {
  width: 52px;
  height: 52px;
  border-radius: 18px;
}

body.is-prototype-mobile .operations-record-identity h2 {
  font-size: 1.3rem;
}

body.is-prototype-mobile .operations-record-badges {
  justify-content: flex-start;
}

body.is-prototype-mobile .operations-record-tabs {
  padding: 0 6px;
}

body.is-prototype-mobile .operations-record-body {
  padding: 14px 12px 24px;
}

body.is-prototype-mobile .operations-form-grid,
body.is-prototype-mobile .operations-check-grid,
body.is-prototype-mobile .operations-fact-grid,
body.is-prototype-mobile .operations-safety-grid,
body.is-prototype-mobile .operations-audit-summary {
  grid-template-columns: minmax(0, 1fr);
}

body.is-prototype-mobile .operations-assisted-footer,
body.is-prototype-mobile .operations-record-save-bar,
body.is-prototype-mobile .operations-form-save-bar {
  align-items: stretch;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
}

body.is-prototype-mobile .operations-assisted-footer .primary-action {
  width: 100%;
}

body.is-prototype-mobile .operations-record-save-bar > div:last-child,
body.is-prototype-mobile .operations-form-save-bar > div:last-child {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.is-prototype-mobile .operations-record-save-bar button,
body.is-prototype-mobile .operations-form-save-bar button {
  width: 100%;
  min-width: 0;
}

body.is-prototype-mobile .operations-work-row {
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: start;
}

body.is-prototype-mobile .operations-work-meta {
  grid-column: 2;
  min-width: 0;
  justify-items: start;
}

body.is-prototype-mobile .operations-work-meta button {
  min-height: 44px;
}

body.is-prototype-mobile .operations-safety-case > header {
  display: grid;
}

body.is-prototype-mobile .operations-safety-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.is-prototype-mobile .operations-safety-actions button {
  width: 100%;
  min-width: 0;
}

body.is-prototype-mobile .operations-dialog {
  align-items: end;
  padding: 0;
}

body.is-prototype-mobile .operations-dialog-panel {
  width: 100%;
  max-height: calc(100dvh - 18px);
  border-radius: 24px 24px 0 0;
}

body.is-prototype-mobile .operations-dialog-panel .operations-form-grid {
  grid-template-columns: minmax(0, 1fr);
}

body.is-prototype-mobile .operations-toast {
  right: 12px;
  bottom: max(12px, env(safe-area-inset-bottom));
  left: 12px;
  max-width: none;
}

@media (max-width: 360px) {
  .operations-nav button span {
    overflow: hidden;
    max-width: 68px;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .operations-record-save-bar > div:last-child,
  .operations-form-save-bar > div:last-child,
  .operations-safety-actions {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (prefers-reduced-motion: reduce) {
  .operations-screen {
    animation: none;
  }
}

/* prototype-20260718-97: privacy-contract release gate baseline */

@media (prefers-reduced-motion: reduce) {
  .travel-plan-card *,
  .travel-create-notice * {
    scroll-behavior: auto;
  }
}

@media (max-width: 390px) {
  #findView .open-now-toggle {
    gap: 6px;
  }

  #findView .open-now-summary-copy .eyebrow {
    display: none;
  }

  #findView .response-disclosure-summary {
    gap: 6px;
  }

  .find-filter-summary-copy small {
    max-width: 190px;
  }

  .find-event-action-row {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }

  .find-event-action-row .person-timer {
    grid-column: 1 / -1;
    grid-row: 1;
  }
}

.area-mode-tabs {
  display: grid;
  grid-template-columns: 1fr;
  gap: 4px;
  margin: 0;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.72);
  padding: 4px;
}

.area-mode-tab {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  column-gap: 10px;
  min-width: 0;
  border: 1px solid transparent;
  border-radius: 10px;
  background: transparent;
  color: var(--ink);
  min-height: 52px;
  padding: 8px 10px;
  text-align: left;
  box-shadow: none;
}

.area-mode-tab strong,
.area-mode-tab .area-mode-description {
  display: block;
  min-width: 0;
}

.area-mode-tab strong {
  grid-column: 1;
  font-size: 0.82rem;
  line-height: 1.2;
}

.area-mode-tab .area-mode-description {
  grid-column: 1;
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 800;
}

.area-mode-tab small {
  grid-column: 2;
  grid-row: 1 / span 2;
  border-radius: 999px;
  background: rgba(17, 24, 39, 0.05);
  padding: 4px 7px;
  color: #667085;
  font-size: 0.66rem;
  font-weight: 850;
  white-space: nowrap;
}

.area-mode-tab.is-active {
  border-color: rgba(13, 143, 116, 0.18);
  background: #f4fbf8;
  box-shadow: inset 0 0 0 1px rgba(13, 143, 116, 0.08);
}

.area-mode-tab.is-active strong {
  color: var(--green-dark);
}

.area-mode-tab.is-active small {
  background: rgba(13, 143, 116, 0.1);
  color: var(--green-dark);
}

.area-range-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 6px;
}

.area-range-heading div {
  display: grid;
  gap: 2px;
}

.area-range-heading strong {
  color: #344054;
  font-size: 0.78rem;
}

.area-range-heading span {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 700;
  line-height: 1.3;
}

.area-range-summary {
  margin-top: 7px;
  border: 1px solid rgba(13, 143, 116, 0.16);
  border-radius: 13px;
  background: rgba(244, 251, 248, 0.72);
  padding: 10px;
}

.area-range-summary-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
}

.area-range-summary-head strong {
  color: #344054;
  font-size: 0.76rem;
}

.area-range-summary-head span {
  color: var(--green-dark);
  font-size: 0.68rem;
  font-weight: 850;
  white-space: nowrap;
}

.area-town-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 7px;
}

.area-town-chips span {
  border: 1px solid rgba(13, 143, 116, 0.14);
  border-radius: 999px;
  background: #fff;
  padding: 5px 8px;
  color: #315c54;
  font-size: 0.7rem;
  font-weight: 830;
}

.area-range-summary p {
  margin: 7px 0 0;
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 720;
  line-height: 1.35;
}

.area-setup-action {
  min-height: 34px;
  margin-top: 5px;
  border: 0;
  background: transparent;
  padding: 4px 0;
  color: var(--blue);
  font-size: 0.72rem;
  font-weight: 850;
  text-align: left;
  box-shadow: none;
}

.area-setup-action:hover,
.area-setup-action:focus-visible {
  text-decoration: underline;
}

.find-filter-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
  margin: 7px 0 0;
}

.find-filter-grid .town-filter {
  grid-column: 1 / -1;
}

.optional-label {
  color: var(--muted);
  font-size: 0.66rem;
  font-weight: 750;
}

.member-area-editor {
  scroll-margin-top: 86px;
  margin: 10px 0 14px;
  border: 1px solid rgba(13, 143, 116, 0.16);
  border-radius: 16px;
  background: rgba(244, 251, 248, 0.62);
  padding: 12px;
}

.member-area-editor-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.member-area-editor-head > div {
  display: grid;
  gap: 3px;
}

.member-area-editor-head strong {
  color: #344054;
  font-size: 0.9rem;
}

.member-area-editor-head span:not(.quiet-pill),
.member-area-editor > p {
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 720;
  line-height: 1.35;
}

.member-area-search {
  display: grid;
  gap: 5px;
  margin-top: 12px;
  color: #475467;
  font-size: 0.74rem;
  font-weight: 850;
}

.member-area-search input {
  min-height: 44px;
  border-radius: 12px;
  font-size: 0.82rem;
}

.member-area-search small {
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 1.35;
}

.member-area-groups {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.member-area-group {
  margin: 0;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 13px;
  background: #fff;
  padding: 9px;
}

.member-area-group legend {
  display: grid;
  gap: 2px;
  width: auto;
  padding: 0 5px;
}

.member-area-group legend strong {
  color: #344054;
  font-size: 0.76rem;
}

.member-area-group legend span {
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 720;
}

.member-area-group legend .member-area-distance {
  width: fit-content;
  max-width: 100%;
  margin-top: 3px;
  border-radius: 999px;
  background: #f4fbf8;
  padding: 4px 7px;
  color: #315c54;
  font-size: 0.66rem;
  font-variant-numeric: tabular-nums;
  font-weight: 820;
  line-height: 1.3;
}

.member-area-selection-receipt {
  display: grid;
  gap: 7px;
}

.member-area-selection-receipt > div:first-child {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
}

.member-area-selection-receipt > div:first-child span {
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 760;
}

.member-area-selection-receipt > div:first-child strong {
  color: var(--green-dark);
  font-size: 0.68rem;
  font-weight: 850;
}

.member-area-selected-towns {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.member-area-selected-towns > span {
  border: 1px solid rgba(13, 143, 116, 0.14);
  border-radius: 999px;
  background: #f4fbf8;
  padding: 5px 8px;
  color: #315c54;
  font-size: 0.68rem;
  font-weight: 800;
}

.member-area-selected-towns > span.is-empty {
  border-style: dashed;
  background: #fff;
  color: var(--muted);
}

.member-area-browse {
  margin-top: 9px;
  border-top: 1px solid rgba(17, 24, 39, 0.07);
  padding-top: 8px;
}

.member-area-browse summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 38px;
  border-radius: 10px;
  padding: 6px 8px;
  color: var(--blue);
  cursor: pointer;
  list-style: none;
}

.member-area-browse summary::-webkit-details-marker {
  display: none;
}

.member-area-browse summary::after {
  content: "+";
  flex: 0 0 auto;
  color: var(--green-dark);
  font-size: 1rem;
  font-weight: 800;
}

.member-area-browse[open] summary::after {
  content: "−";
}

.member-area-browse summary:hover,
.member-area-browse summary:focus-visible {
  background: rgba(244, 251, 248, 0.8);
}

.member-area-browse summary > span {
  font-size: 0.72rem;
  font-weight: 850;
}

.member-area-browse summary small {
  margin-left: auto;
  color: var(--muted);
  font-size: 0.65rem;
  font-weight: 720;
}

.member-area-county-list {
  display: grid;
  gap: 10px;
  padding: 6px 4px 2px;
}

.member-area-county {
  display: grid;
  gap: 6px;
}

.member-area-county h4 {
  margin: 0;
  color: #667085;
  font-size: 0.65rem;
  font-weight: 850;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.member-area-no-results {
  margin: 0;
  border: 1px dashed rgba(17, 24, 39, 0.12);
  border-radius: 11px;
  background: #fbfcfd;
  padding: 10px;
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 700;
  line-height: 1.4;
}

.member-area-town-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.member-area-town {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  border: 1px solid rgba(17, 24, 39, 0.1);
  border-radius: 999px;
  background: #fff;
  padding: 6px 9px;
  color: #475467;
  cursor: pointer;
}

.member-area-town.is-selected {
  border-color: rgba(13, 143, 116, 0.22);
  background: #f4fbf8;
  color: var(--green-dark);
}

.member-area-town input {
  width: 15px;
  height: 15px;
  margin: 0 5px 0 0;
  accent-color: var(--green);
}

.member-area-town span {
  font-size: 0.7rem;
  font-weight: 800;
}

.member-area-editor > p {
  margin: 8px 0 0;
}

.find-filter-grid label {
  gap: 4px;
  color: #475467;
  font-size: 0.72rem;
  font-weight: 860;
}

.find-filter-grid select {
  min-height: 44px;
  height: 44px;
  border-radius: 12px;
  padding: 0 9px;
  font-size: 0.82rem;
  font-weight: 790;
}

.filter-helper {
  grid-column: 1 / -1;
  display: none;
  margin: -2px 0 0;
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 800;
  line-height: 1.3;
}

.find-note {
  display: none;
  margin: 10px 0 0;
  border-radius: 13px;
  background: rgba(244, 251, 248, 0.72);
  color: #4f625f;
  font-size: 0.8rem;
  font-weight: 760;
}

.find-event-card {
  padding: 13px;
  border-color: rgba(17, 24, 39, 0.12);
  box-shadow: none;
}

.event-category-icon {
  width: 38px;
  height: 38px;
  border-radius: 13px;
  display: grid;
  place-items: center;
  color: var(--blue-dark);
  background: #edf4ff;
  box-shadow: inset 0 0 0 1px rgba(33, 100, 232, 0.12);
}

.event-category-icon svg {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.event-category-icon.is-watch-listen {
  color: #0f766e;
  background: #e7f8f3;
}

.event-category-icon.is-attend-specific,
.event-category-icon.is-learn-make {
  color: var(--blue-dark);
  background: #edf4ff;
}

.event-category-icon.is-eat-drink {
  color: #a33a22;
  background: #fff1ea;
}

.event-category-icon.is-walk-explore,
.event-category-icon.is-relax-reset {
  color: #5b4be0;
  background: #f0edff;
}

.event-category-icon.is-play-do {
  color: #7c2d12;
  background: #fff7ed;
}

.event-title-copy {
  min-width: 0;
  padding-right: 4px;
}

.find-event-card .event-card-head h3 {
  font-size: 1.1rem;
  line-height: 1.12;
  letter-spacing: 0;
}

.find-event-card .event-card-head p {
  margin-top: 4px;
  color: #475467;
  font-size: 0.88rem;
  font-weight: 780;
}

.find-event-card .profile-tags {
  margin-top: 7px;
  gap: 5px;
}

.find-event-card .profile-tags span {
  padding: 4px 7px;
  font-size: 0.7rem;
}

.area-label-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-top: 9px;
  color: #475467;
  font-size: 0.72rem;
  font-weight: 880;
}

.area-label-row span {
  border-radius: 999px;
  background: #f3f4f6;
  padding: 5px 8px;
  line-height: 1.1;
}

.area-label-row .area-fit-label {
  background: #e7f8f3;
  color: var(--green-dark);
}

.event-plan-note {
  margin-top: 10px;
  padding: 0;
  color: var(--ink);
  font-size: 0.86rem;
  font-weight: 720;
  line-height: 1.36;
}

.shared-plan-detail {
  margin-top: 10px;
  border: 1px solid rgba(13, 143, 116, 0.18);
  border-radius: 14px;
  background: #f4fbf8;
  padding: 10px;
}

.updated-event-label {
  width: fit-content;
  border-radius: 999px;
  background: var(--green);
  color: white;
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 0 8px;
  font-size: 0.68rem;
  font-weight: 900;
  text-transform: uppercase;
}

.shared-plan-detail-head {
  display: flex;
  align-items: center;
  gap: 8px;
}

.shared-plan-detail-summary {
  min-width: 0;
}

.shared-plan-detail-summary strong,
.shared-plan-detail-summary small {
  display: block;
}

.shared-plan-detail-summary strong {
  color: var(--green-dark);
  font-size: 0.8rem;
  letter-spacing: 0.01em;
}

.shared-plan-detail-summary small {
  margin-top: 1px;
  color: var(--muted);
  font-size: 0.65rem;
  font-weight: 760;
  line-height: 1.2;
}

.shared-answer-pairs {
  margin: 9px 0 0;
}

.shared-answer-pair {
  border-top: 1px solid rgba(13, 143, 116, 0.14);
  padding: 10px 2px;
}

.shared-answer-pair:first-child {
  border-top: 0;
  padding-top: 3px;
}

.shared-answer-pair:last-child {
  padding-bottom: 4px;
}

.shared-answer-pair dt,
.shared-answer-pair dd {
  margin: 0;
}

.shared-answer-pair dt small,
.shared-answer-pair dd small {
  display: block;
  color: var(--green-dark);
  font-size: 0.62rem;
  font-weight: 900;
  text-transform: uppercase;
}

.shared-answer-pair dt strong {
  display: block;
  margin-top: 2px;
  color: #344054;
  font-size: 0.8rem;
  font-weight: 800;
  line-height: 1.3;
  text-transform: none;
}

.shared-answer-pair dd {
  margin-top: 6px;
  border-left: 3px solid rgba(13, 143, 116, 0.28);
  padding-left: 9px;
}

.shared-answer-pair dd p {
  margin-top: 2px;
  color: var(--ink);
  font-size: 0.84rem;
  font-weight: 700;
  line-height: 1.38;
}

.shared-plan-detail-note {
  display: block;
  margin-top: 8px;
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 1.35;
}

.shared-plan-detail > strong,
.shared-plan-detail > small {
  display: block;
}

.shared-plan-detail > strong {
  margin-top: 6px;
  color: var(--green);
  font-size: 0.74rem;
  font-weight: 900;
  text-transform: uppercase;
}

.shared-plan-detail > p {
  margin-top: 4px;
  color: var(--ink);
  font-size: 0.84rem;
  font-weight: 700;
  line-height: 1.34;
}

.shared-plan-detail small {
  margin-top: 5px;
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 760;
}

.question-box {
  margin-top: 10px;
  border-top: 1px solid rgba(17, 24, 39, 0.08);
  padding-top: 9px;
}

.question-compact-row {
  min-height: 42px;
  border-radius: 14px;
  background: #f8fbff;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 8px;
  padding: 8px;
}

.question-compact-row strong,
.question-compact-row small {
  display: block;
}

.question-compact-row strong {
  font-size: 0.84rem;
  line-height: 1.16;
}

.question-compact-row small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 720;
  line-height: 1.22;
}

.question-box.is-open .question-compact-row {
  background: #edf4ff;
}

.question-scroll {
  max-height: 136px;
  overflow: auto;
  display: grid;
  gap: 6px;
  margin-top: 8px;
  padding-right: 3px;
  scrollbar-width: thin;
}

.question-choice {
  min-height: 52px;
  border: 1px solid rgba(33, 100, 232, 0.16);
  border-radius: 13px;
  background: #f8fbff;
  color: var(--ink);
  padding: 8px;
  text-align: left;
}

.question-choice span,
.question-choice small {
  display: block;
}

.question-choice span {
  font-size: 0.76rem;
  font-weight: 900;
  line-height: 1.18;
}

.question-choice small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 720;
  line-height: 1.18;
}

.question-choice.is-selected {
  border-color: rgba(33, 100, 232, 0.4);
  background: #edf4ff;
  box-shadow: inset 0 0 0 1px rgba(33, 100, 232, 0.12);
}

.question-choice.is-sent {
  border-color: rgba(13, 143, 116, 0.28);
  background: #eefaf5;
}

.question-send-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  margin-top: 8px;
}

.question-send-row span {
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 800;
}

.find-event-action-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  margin-top: 9px;
}

.find-event-action-row > span {
  display: grid;
  justify-items: center;
}

body.is-prototype-mobile .find-event-action-row {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

body.is-prototype-mobile .find-event-action-row .person-timer {
  grid-column: 1 / -1;
  grid-row: 1;
  justify-self: center;
}

body.is-prototype-mobile .find-event-action-row > button:first-child {
  grid-column: 1;
  grid-row: 2;
}

body.is-prototype-mobile .find-event-action-row > button:last-child {
  grid-column: 2;
  grid-row: 2;
}

.find-event-action-row .request-status {
  display: none;
}

.compact-request-action {
  min-height: 44px;
  border-radius: 14px;
  padding: 0 12px;
  font-size: 0.82rem;
}

.prototype-version {
  margin: 20px auto 0;
  padding: 14px 0 4px;
  width: 100%;
  color: rgba(102, 112, 133, 0.78);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.2;
  text-align: center;
}

body.is-prototype-desktop .prototype-device-switch {
  width: min(1080px, calc(100% - 48px));
}

body.is-prototype-desktop .app-shell {
  width: min(1080px, calc(100% - 48px));
}

body.is-prototype-desktop .compose-panel {
  border-left: 1px solid var(--line);
  border-right: 1px solid var(--line);
  border-radius: 24px 24px 0 0;
  padding-inline: 24px;
}

body.is-prototype-desktop .screen-scroll {
  padding-bottom: 110px;
}

body.is-prototype-desktop .app-nav {
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
}

body.is-prototype-desktop .app-title-row,
body.is-prototype-desktop .intro-copy,
body.is-prototype-desktop .root-tabs {
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
}

body.is-prototype-desktop #findView .event-section {
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: minmax(260px, 300px) minmax(0, 1fr);
  column-gap: 16px;
  align-items: start;
}

body.is-prototype-desktop #findView .readiness-lab,
body.is-prototype-desktop #findView .readiness-state-card {
  grid-column: 1 / -1;
}

body.is-prototype-desktop #findView .open-now-panel {
  grid-column: 1 / -1;
}

body.is-prototype-desktop .find-controls-panel {
  position: sticky;
  top: 74px;
  margin-top: 0;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: var(--radius-card);
  background: rgba(255, 255, 255, 0.58);
  padding: 10px;
}

body.is-prototype-desktop #findResults {
  grid-column: 2;
}

body.is-prototype-desktop .area-mode-tabs,
body.is-prototype-desktop .find-filter-grid {
  grid-template-columns: 1fr;
}

body.is-prototype-desktop .find-filter-grid .town-filter {
  grid-column: auto;
}

body.is-prototype-desktop .find-filter-grid label {
  font-size: 0.82rem;
}

body.is-prototype-desktop .find-filter-grid select {
  min-height: 48px;
  height: 48px;
  padding: 0 13px;
  font-size: 1rem;
}

body.is-prototype-desktop .filter-helper,
body.is-prototype-desktop .find-note {
  display: block;
}

body.is-prototype-desktop #findEvents {
  grid-template-columns: minmax(0, 1fr);
  align-items: start;
}

body.is-prototype-desktop #homeView.is-active {
  max-width: 1030px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: minmax(230px, 280px) minmax(0, 1fr);
  column-gap: 16px;
  align-items: start;
}

body.is-prototype-desktop #homeView .home-dashboard {
  grid-column: 1;
  position: sticky;
  top: 74px;
  grid-template-columns: 1fr;
  margin-top: 0;
}

body.is-prototype-desktop #homeView .event-section {
  grid-column: 2;
  margin-top: 12px;
}

body.is-prototype-desktop #homeView .action-queue-section {
  margin-top: 0;
}

body.is-prototype-desktop #onView.is-active {
  max-width: 780px;
  margin-left: auto;
  margin-right: auto;
}

body.is-prototype-desktop #onView .event-section:first-child {
  margin-top: 0;
}

body.is-prototype-desktop .work-row {
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
}

body.is-prototype-desktop .work-row-side {
  grid-column: auto;
  min-width: 170px;
  justify-content: flex-end;
  flex-wrap: wrap;
}

body.is-prototype-desktop .work-row-side .row-actions {
  justify-content: flex-end;
}

body.is-prototype-desktop .receipt-columns {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.is-prototype-desktop .find-event-card {
  min-height: 0;
  display: block;
}

body.is-prototype-desktop .find-event-action-row {
  margin-top: 9px;
  padding-top: 0;
}

body.is-prototype-desktop #whoView,
body.is-prototype-desktop #planView,
body.is-prototype-desktop #reviewView {
  max-width: 1030px;
  margin-left: auto;
  margin-right: auto;
}

body.is-prototype-desktop #whoView .routing-lab,
body.is-prototype-desktop #whoView .routing-state-card {
  grid-column: 1 / -1;
}

body.is-prototype-desktop #whoView .profile-section {
  display: grid;
  grid-template-columns: minmax(310px, 0.85fr) minmax(0, 1.15fr);
  gap: 14px;
  align-items: start;
}

body.is-prototype-desktop #whoView .profile-section .section-head {
  grid-column: 1 / -1;
}

body.is-prototype-desktop #whoView .profile-preview {
  margin: 0;
  position: sticky;
  top: 84px;
}

body.is-prototype-desktop #applicantView.is-active,
body.is-prototype-desktop #memberOperationsView.is-active,
body.is-prototype-desktop #setupView.is-active,
body.is-prototype-desktop #notificationJourneyView.is-active,
body.is-prototype-desktop #accessPolicyView.is-active,
body.is-prototype-desktop #pilotWalkthroughView.is-active,
body.is-prototype-desktop #lifecycleView.is-active {
  max-width: 1030px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  align-items: start;
}

body.is-prototype-desktop #applicantView .journey-progress,
body.is-prototype-desktop #applicantView .application-result,
body.is-prototype-desktop #memberOperationsView .member-operations-command-bar,
body.is-prototype-desktop #memberOperationsView .member-operations-decision-receipt {
  grid-column: 1 / -1;
}

body.is-prototype-desktop #memberOperationsView .member-operations-queue-card {
  grid-row: span 2;
}

@media (max-width: 560px) {
  .member-operations-row {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .member-operations-priority {
    grid-column: 1 / -1;
    justify-self: start;
  }
}

body.is-prototype-desktop #setupView .setup-progress,
body.is-prototype-desktop #setupView .setup-result {
  grid-column: 1 / -1;
}

body.is-prototype-desktop #setupView .setup-progress {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.is-prototype-desktop #setupView .setup-intro-card {
  position: sticky;
  top: 84px;
}

body.is-prototype-desktop #setupView .setup-choice-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.is-prototype-desktop #notificationJourneyView .notification-journey-intro {
  grid-column: 1 / -1;
}

body.is-prototype-desktop #accessPolicyView .access-policy-intro,
body.is-prototype-desktop #pilotWalkthroughView .pilot-progress,
body.is-prototype-desktop #pilotWalkthroughView .pilot-reset-card {
  grid-column: 1 / -1;
}

body.is-prototype-desktop #pilotWalkthroughView .pilot-progress {
  grid-template-columns: repeat(7, minmax(0, 1fr));
}

@media (max-width: 560px) {
  .notification-journey-controls {
    grid-template-columns: 1fr;
  }

  .access-policy-controls,
  .access-action-grid {
    grid-template-columns: 1fr;
  }

  .pilot-metrics-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

body.is-prototype-desktop #lifecycleView .journey-progress,
body.is-prototype-desktop #lifecycleView .lifecycle-overview {
  grid-column: 1 / -1;
}

body.is-prototype-desktop #lifecycleView .journey-progress {
  grid-template-columns: repeat(8, minmax(0, 1fr));
}

body.is-prototype-desktop #applicantView .journey-progress {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.is-prototype-desktop #applicantView .applicant-intro-card,
body.is-prototype-desktop #memberOperationsView .member-operations-review-card {
  position: sticky;
  top: 84px;
}

.host-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
  border-radius: 14px;
  background: #f8fafc;
  padding: 8px;
  margin-top: 8px;
}

.host-name-row {
  display: flex;
  align-items: center;
  gap: 7px;
  flex-wrap: wrap;
}

.host-summary strong {
  font-size: 0.9rem;
  line-height: 1.1;
}

.host-words {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.host-words span {
  border-radius: 999px;
  background: white;
  color: #344054;
  padding: 4px 7px;
  font-size: 0.69rem;
  font-weight: 850;
  line-height: 1.1;
}

.people-grid {
  display: grid;
  gap: 9px;
}

.people-card {
  min-height: 78px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: var(--radius-card);
  background: white;
  padding: 11px;
  color: var(--ink);
}

.people-card:has(input:checked) {
  border-color: rgba(33, 100, 232, 0.32);
  background: #f4f8ff;
  box-shadow: 0 8px 22px rgba(33, 100, 232, 0.08);
}

.people-card input {
  width: 24px;
  min-height: 24px;
  accent-color: var(--blue);
}

.people-card strong,
.people-card small {
  display: block;
}

.people-card strong {
  font-size: 0.95rem;
}

.people-card small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.82rem;
  line-height: 1.25;
}

.people-card em {
  align-self: start;
  border-radius: 999px;
  background: var(--soft);
  color: var(--muted);
  padding: 6px 8px;
  font-size: 0.72rem;
  font-style: normal;
  font-weight: 820;
  white-space: nowrap;
}

.people-card:has(input:checked) em {
  background: var(--blue);
  color: white;
}

.profile-section {
  margin-top: 12px;
}

.profile-list {
  display: grid;
  gap: 10px;
}

.profile-source-group {
  display: grid;
  gap: 9px;
}

.profile-source-group + .profile-source-group {
  margin-top: 3px;
}

.profile-source-head {
  border-radius: var(--radius-control);
  background: #f7faff;
  padding: 9px 10px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
  align-items: center;
}

.profile-source-group.source-familiar .profile-source-head {
  background: #fff7ec;
}

.profile-source-head strong,
.profile-source-head span {
  display: block;
}

.profile-source-head strong {
  font-size: 0.86rem;
}

.profile-source-head span {
  margin-top: 2px;
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 720;
  line-height: 1.24;
}

.profile-source-head em {
  min-width: 28px;
  min-height: 28px;
  border-radius: 999px;
  background: white;
  color: var(--blue-dark);
  display: grid;
  place-items: center;
  font-style: normal;
  font-size: 0.78rem;
  font-weight: 900;
}

.profile-card {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 11px;
  border: 1px solid var(--line);
  border-radius: var(--radius-card);
  background: white;
  padding: 11px;
  box-shadow: 0 10px 24px rgba(20, 31, 54, 0.06);
}

.profile-card.is-selected {
  border-color: rgba(33, 100, 232, 0.42);
  background: #f8fbff;
  box-shadow: 0 10px 24px rgba(33, 100, 232, 0.1);
}

.profile-card.is-active {
  border-color: rgba(13, 143, 116, 0.38);
  box-shadow: inset 0 0 0 1px rgba(13, 143, 116, 0.18), 0 8px 22px rgba(20, 31, 54, 0.06);
}

.profile-card.is-active .profile-identity-receipt {
  border-color: rgba(13, 143, 116, 0.3);
  background: #edf9f5;
}

.profile-gate {
  border: 1px dashed rgba(33, 100, 232, 0.34);
  border-radius: var(--radius-card);
  background: #f7faff;
  padding: 12px;
  display: grid;
  gap: 10px;
}

.profile-gate strong {
  font-size: 0.92rem;
}

.profile-gate p,
.profile-gate small,
.token-note {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.32;
}

.profile-gate small {
  display: block;
  margin-top: 6px;
  font-weight: 760;
}

.token-action {
  min-height: 44px;
  border-radius: 14px;
}

.token-note {
  border-radius: 14px;
  background: #edf9f5;
  padding: 10px;
  font-weight: 720;
}

.profile-photo {
  width: 48px;
  height: 48px;
  border-radius: 14px;
  object-fit: cover;
  background: var(--soft);
  border: 1px solid var(--line);
}

.profile-photo.is-limited,
.detail-photo.is-limited,
.sheet-photo.is-limited {
  filter: saturate(0.75);
  opacity: 0.86;
}

.profile-copy {
  min-width: 0;
  display: grid;
  gap: 8px;
}

.profile-title-row {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: start;
  gap: 8px;
}

.profile-card-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
}

.profile-name-row {
  display: flex;
  align-items: center;
  gap: 7px;
  flex-wrap: wrap;
}

.profile-identity-receipt {
  width: fit-content;
  max-width: 100%;
  margin-top: 5px;
  border: 1px solid rgba(33, 100, 232, 0.16);
  border-radius: 999px;
  background: #f6f9ff;
  color: var(--blue-dark);
  display: inline-grid;
  grid-template-columns: 26px minmax(0, 1fr);
  align-items: center;
  gap: 7px;
  padding: 4px 9px 4px 4px;
}

.profile-identity-receipt.is-compact {
  margin: 5px 0 3px;
  grid-template-columns: 22px minmax(0, 1fr);
  padding: 3px 8px 3px 3px;
}

.profile-identity-receipt.is-selected {
  border-color: rgba(13, 143, 116, 0.32);
  background: #edf9f5;
  color: var(--green-dark);
}

.profile-initial {
  width: 26px;
  height: 26px;
  border-radius: 999px;
  background: currentColor;
  color: white;
  display: grid;
  place-items: center;
  font-size: 0.76rem;
  font-weight: 900;
  line-height: 1;
}

.profile-identity-receipt.is-compact .profile-initial {
  width: 22px;
  height: 22px;
  font-size: 0.68rem;
}

.profile-identity-receipt strong,
.profile-identity-receipt small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.profile-identity-receipt strong {
  font-size: 0.76rem;
  font-weight: 900;
  line-height: 1.05;
}

.profile-identity-receipt small {
  margin-top: 1px;
  color: var(--muted);
  font-size: 0.66rem;
  font-weight: 780;
  line-height: 1.08;
}

.profile-title-row h3 {
  font-size: 1rem;
}

.source-badge {
  border-radius: 999px;
  padding: 4px 7px;
  font-size: 0.68rem;
  font-weight: 850;
  line-height: 1;
  white-space: nowrap;
}

.source-badge.familiar {
  color: #81400d;
  background: #fff3df;
}

.source-badge.open {
  color: var(--blue-dark);
  background: #e5efff;
}

.trust-badge {
  min-height: 22px;
  border-radius: 999px;
  padding: 3px 7px 3px 4px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: var(--blue-dark);
  background: #e5efff;
  font-size: 0.68rem;
  font-weight: 850;
  line-height: 1;
  white-space: nowrap;
}

.trust-badge.is-mini {
  font-size: 0.64rem;
  font-style: normal;
  font-weight: 900;
}

.trust-badge.is-inline {
  vertical-align: middle;
}

.trust-icon {
  position: relative;
  width: 15px;
  height: 15px;
  border-radius: 999px;
  background: currentColor;
  flex: 0 0 auto;
}

.trust-icon::before,
.trust-icon::after {
  content: "";
  position: absolute;
  display: block;
}

.trust-badge.is-verified {
  color: var(--blue-dark);
  background: #edf4ff;
}

.trust-badge.is-verified .trust-icon::after {
  left: 4px;
  top: 3px;
  width: 6px;
  height: 4px;
  border-left: 2px solid white;
  border-bottom: 2px solid white;
  transform: rotate(-45deg);
}

.trust-badge.is-familiar {
  color: #81400d;
  background: #fff3df;
}

.trust-badge.is-familiar .trust-icon::before,
.trust-badge.is-familiar .trust-icon::after {
  top: 4px;
  width: 5px;
  height: 5px;
  border-radius: 999px;
  background: white;
}

.trust-badge.is-familiar .trust-icon::before {
  left: 3px;
}

.trust-badge.is-familiar .trust-icon::after {
  right: 3px;
}

.trust-badge.is-open {
  color: var(--green);
  background: #e7f8f3;
}

.trust-badge.is-open .trust-icon::after {
  inset: 4px;
  border: 2px solid white;
  border-radius: 999px;
}

.trust-badge.is-host {
  color: #5b4be0;
  background: #f0edff;
}

.trust-badge.is-host .trust-icon::before {
  left: 3px;
  top: 7px;
  width: 9px;
  height: 5px;
  background: white;
  border-radius: 1px;
}

.trust-badge.is-host .trust-icon::after {
  left: 4px;
  top: 3px;
  width: 7px;
  height: 7px;
  border-left: 2px solid white;
  border-top: 2px solid white;
  transform: rotate(45deg);
}

.trust-badge.is-trusted {
  color: #9a3b25;
  background: #fff0e8;
}

.trust-badge.is-trusted .trust-icon::after {
  left: 4px;
  top: 3px;
  width: 7px;
  height: 8px;
  border: 2px solid white;
  border-top-width: 3px;
  border-radius: 2px 2px 5px 5px;
}

.trust-badge.is-private {
  color: #475467;
  background: #f2f4f7;
}

.trust-badge.is-private .trust-icon::before {
  left: 4px;
  top: 6px;
  width: 7px;
  height: 6px;
  background: white;
  border-radius: 1px;
}

.trust-badge.is-private .trust-icon::after {
  left: 5px;
  top: 3px;
  width: 5px;
  height: 5px;
  border: 2px solid white;
  border-bottom: 0;
  border-radius: 6px 6px 0 0;
}

.trust-badge.is-picked {
  color: white;
  background: var(--green);
}

.trust-badge.is-picked .trust-icon {
  background: white;
}

.trust-badge.is-picked .trust-icon::after {
  left: 4px;
  top: 3px;
  width: 6px;
  height: 4px;
  border-left: 2px solid var(--green);
  border-bottom: 2px solid var(--green);
  transform: rotate(-45deg);
}

.profile-title-row p,
.profile-detail {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.28;
}

.member-intro-copy {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.34;
}

.member-field-label {
  display: block;
  margin-top: 5px;
  color: var(--green);
  font-size: 0.66rem;
  font-weight: 900;
  letter-spacing: 0.035em;
  text-transform: uppercase;
}

.profile-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.profile-tags span {
  border-radius: 999px;
  background: #edf4ff;
  color: var(--blue-dark);
  padding: 5px 8px;
  font-size: 0.74rem;
  font-weight: 780;
}

.member-card-words {
  margin-top: 1px;
}

.mini-action {
  min-width: 86px;
  min-height: 44px;
  border: 0;
  border-radius: 999px;
  color: white;
  background: var(--blue);
  font-size: 0.82rem;
  font-weight: 850;
  padding: 0 11px;
}

.mini-action.is-selected {
  color: var(--blue-dark);
  background: #dfeaff;
}

.profile-card-ask-action {
  min-width: 64px;
  background: var(--green);
}

.profile-card-ask-action.is-selected {
  color: var(--green);
  background: #edf9f5;
}

.secondary-action {
  color: var(--ink);
  background: #eef2f7;
}

.danger-action {
  color: #9f2d1f;
  background: #fff2ed;
}

.profile-preview {
  margin: 0 0 10px;
}

body.is-prototype-mobile #whoView .profile-preview {
  display: none;
}

.detail-card {
  border: 1px solid rgba(13, 143, 116, 0.22);
  border-radius: var(--radius-card);
  background: #f4fbf8;
  padding: 12px;
  display: grid;
  gap: 10px;
}

.detail-hero {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 10px;
  align-items: center;
}

.detail-photo {
  width: 58px;
  height: 58px;
  border-radius: var(--radius-control);
  object-fit: cover;
  border: 1px solid rgba(13, 143, 116, 0.2);
  background: white;
}

.detail-hero p {
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.9rem;
  line-height: 1.3;
}

.detail-list {
  display: grid;
  gap: 8px;
  margin: 0;
}

.detail-list div {
  border-top: 1px solid rgba(13, 143, 116, 0.16);
  padding-top: 8px;
}

.detail-list dt {
  color: var(--green);
  font-size: 0.72rem;
  font-weight: 850;
  text-transform: uppercase;
}

.detail-list dd {
  margin: 4px 0 0;
  color: var(--ink);
  font-size: 0.88rem;
  line-height: 1.3;
}

.field-source-panel {
  display: grid;
  gap: 8px;
  margin: 0 0 14px;
}

.detail-card .field-source-panel {
  margin-bottom: 0;
}

.field-source-panel article {
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: var(--radius-control);
  background: #fbfcff;
  padding: 10px;
}

.field-source-panel strong,
.field-source-panel p,
.field-source-panel small {
  display: block;
}

.field-source-panel strong {
  color: var(--green);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.field-source-panel p {
  margin: 4px 0 0;
  color: var(--ink);
  font-size: 0.86rem;
  line-height: 1.3;
}

.field-source-panel small {
  margin-top: 5px;
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 760;
  line-height: 1.28;
}

.profile-add-action {
  min-height: 48px;
  border: 0;
  border-radius: var(--radius-control);
  color: white;
  background: var(--green);
  font-weight: 850;
}

.profile-add-action.is-selected {
  color: var(--green);
  background: white;
  border: 1px solid rgba(13, 143, 116, 0.24);
}

.profile-sheet[hidden] {
  display: none;
}

.profile-sheet {
  position: fixed;
  inset: 0;
  z-index: 20;
  display: grid;
  align-items: end;
}

.sheet-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(17, 24, 39, 0.42);
}

.sheet-panel {
  position: relative;
  z-index: 1;
  width: min(430px, 100%);
  max-height: 88dvh;
  margin: 0 auto;
  border-radius: 22px 22px 0 0;
  background: white;
  padding: 18px 16px max(18px, env(safe-area-inset-bottom));
  box-shadow: 0 -18px 60px rgba(17, 24, 39, 0.24);
  overflow: auto;
}

.sheet-close {
  position: absolute;
  top: 12px;
  right: 14px;
  width: 44px;
  height: 44px;
  border: 1px solid var(--line);
  border-radius: 50%;
  background: white;
  color: var(--ink);
  font-size: 1.25rem;
  font-weight: 850;
}

.sheet-hero {
  display: grid;
  grid-template-columns: 84px 1fr;
  gap: 13px;
  align-items: center;
  padding-right: 42px;
  margin-bottom: 14px;
}

.sheet-photo {
  width: 84px;
  height: 84px;
  border-radius: 26px;
  object-fit: cover;
  border: 1px solid var(--line);
  background: var(--soft);
}

.sheet-hero p:last-child {
  margin-top: 5px;
  color: var(--muted);
  font-size: 0.92rem;
  line-height: 1.3;
}

.sheet-detail-list {
  margin-bottom: 14px;
}

.privacy-strip {
  border: 1px solid rgba(33, 100, 232, 0.14);
  border-radius: 18px;
  background: #f6f9ff;
  padding: 13px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.privacy-strip h2 {
  font-size: 1.05rem;
}

.privacy-strip p:last-child {
  margin-top: 5px;
  color: var(--muted);
  font-size: 0.88rem;
  line-height: 1.34;
}

.event-section {
  margin-top: 16px;
}

.event-section:first-child {
  margin-top: 0;
}

.event-list,
.response-list,
.notice-list,
.work-queue-list {
  display: grid;
  gap: 8px;
}

.section-head-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 7px;
}

.section-toggle,
.queue-toggle {
  min-height: 44px;
  border: 0;
  border-radius: 999px;
  background: #edf4ff;
  color: var(--blue-dark);
  padding: 0 13px;
  font-size: 0.8rem;
  font-weight: 850;
}

.queue-toggle {
  width: 100%;
  margin-top: 2px;
}

.confirmed-plans-section {
  border: 1px solid rgba(13, 143, 116, 0.14);
  border-radius: 16px;
  background: rgba(244, 251, 248, 0.74);
  padding: 10px;
}

.completed-plans-section {
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.58);
  padding: 10px;
}

.action-queue-section {
  border: 1px solid rgba(33, 100, 232, 0.12);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.58);
  padding: 10px;
}

.work-row {
  min-width: 0;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 14px;
  background: white;
  padding: 9px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 9px;
  align-items: start;
  box-shadow: 0 8px 18px rgba(20, 31, 54, 0.05);
}

.work-row.is-question {
  border-color: rgba(33, 100, 232, 0.22);
  background: #f8fbff;
}

.work-row.is-selection,
.work-row.is-open-response {
  border-color: rgba(13, 143, 116, 0.2);
  background: #f8fcfa;
}

.work-row.is-answer {
  border-color: rgba(226, 90, 61, 0.16);
  background: #fffdfb;
}

.work-row-photo,
.work-row-icon {
  width: 34px;
  height: 34px;
  border-radius: 12px;
  border: 1px solid rgba(17, 24, 39, 0.08);
  background: #edf4ff;
  object-fit: cover;
}

.work-row-icon {
  position: relative;
  display: grid;
  place-items: center;
}

.work-row-icon::before {
  content: "";
  width: 12px;
  height: 12px;
  border: 3px solid var(--blue);
  border-radius: 50%;
}

.work-row-main {
  min-width: 0;
}

.work-row-kicker {
  color: var(--blue-dark);
  font-size: 0.66rem;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}

.work-row-main h3 {
  margin-top: 3px;
  font-size: 0.98rem;
  line-height: 1.15;
}

.work-row-main p,
.work-row-main small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 720;
  line-height: 1.24;
}

.work-row-main small {
  color: #465366;
}

.work-row-tags {
  margin-top: 6px;
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.work-row-tags span {
  border-radius: 999px;
  background: #eef2f7;
  color: #344054;
  padding: 4px 7px;
  font-size: 0.66rem;
  font-weight: 820;
}

.work-row-side {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.event-card,
.response-card,
.notice-card {
  border: 1px solid var(--line);
  border-radius: 14px;
  background: white;
  padding: 11px;
  box-shadow: 0 8px 18px rgba(20, 31, 54, 0.05);
}

.plan-management-card,
.invite-answer-card {
  box-shadow: none;
}

.invite-answer-card .guest-detail-list {
  border-radius: 12px;
  background: #fbfcfe;
  padding: 8px;
}

.invite-answer-card .host-preview {
  margin: 8px 0;
}

.event-card.is-raised {
  border-color: rgba(13, 143, 116, 0.32);
  background: #f4fbf8;
}

.response-card {
  border-color: rgba(13, 143, 116, 0.22);
  background: #f8fcfa;
}

.response-card-main,
.response-meta-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.response-card-main h3 {
  font-size: 1rem;
  line-height: 1.18;
}

.response-card-main p,
.response-detail,
.response-meta-row {
  color: var(--muted);
  font-size: 0.86rem;
  line-height: 1.3;
}

.response-detail {
  margin-top: 8px;
  font-weight: 680;
}

.response-receipt {
  margin-top: 10px;
  display: grid;
  gap: 8px;
}

.receipt-block {
  min-width: 0;
  border: 1px solid rgba(13, 143, 116, 0.14);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.72);
  padding: 9px;
}

.receipt-block > span,
.receipt-block > strong,
.receipt-next-step strong,
.receipt-next-step span {
  display: block;
}

.receipt-block > span {
  color: var(--green);
  font-size: 0.68rem;
  font-weight: 900;
  text-transform: uppercase;
}

.receipt-block > strong {
  margin-top: 4px;
  color: var(--ink);
  font-size: 0.84rem;
  line-height: 1.28;
}

.receipt-columns,
.receipt-question-list,
.receipt-update-list {
  display: grid;
  gap: 8px;
}

.receipt-question-list,
.receipt-update-list {
  margin-top: 7px;
  gap: 6px;
}

.receipt-question-row {
  border-radius: 11px;
  background: #f3fbf8;
  padding: 7px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: start;
  gap: 7px;
}

.receipt-question-row strong,
.receipt-question-row small,
.receipt-question-row em,
.receipt-update-row strong,
.receipt-update-row p {
  display: block;
}

.receipt-question-row strong {
  color: var(--ink);
  font-size: 0.78rem;
  line-height: 1.22;
}

.receipt-question-row small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 720;
  line-height: 1.2;
}

.receipt-question-row em {
  border-radius: 999px;
  background: #e7f8f3;
  color: var(--green-dark);
  padding: 4px 6px;
  font-size: 0.66rem;
  font-style: normal;
  font-weight: 900;
  line-height: 1;
  white-space: nowrap;
}

.receipt-update-row {
  border-left: 3px solid rgba(13, 143, 116, 0.35);
  border-radius: 11px;
  background: #f4fbf8;
  padding: 7px 8px;
}

.receipt-update-row strong {
  color: var(--green);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.receipt-update-row p {
  margin-top: 3px;
  color: var(--ink);
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1.28;
}

.receipt-empty {
  margin-top: 6px;
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 720;
  line-height: 1.28;
}

.receipt-next-step {
  border-radius: 13px;
  background: #eefaf5;
  padding: 8px 9px;
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: start;
  gap: 8px;
}

.receipt-next-step strong {
  color: var(--green);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.receipt-next-step span {
  color: var(--ink);
  font-size: 0.8rem;
  font-weight: 740;
  line-height: 1.25;
}

.response-status {
  flex: 0 0 auto;
  border-radius: 999px;
  background: #e7f8f3;
  color: #0f766e;
  padding: 6px 9px;
  font-size: 0.75rem;
  font-weight: 900;
}

.response-meta-row {
  align-items: center;
  margin-top: 9px;
  font-weight: 820;
}

.event-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.event-card-head h3,
.notice-card h3 {
  font-size: 1rem;
  line-height: 1.18;
}

.event-card-head p,
.notice-card p,
.event-person-row small,
.event-status {
  color: var(--muted);
  font-size: 0.86rem;
  line-height: 1.3;
}

.countdown-pill {
  flex: 0 0 auto;
  border-radius: 999px;
  background: #fff7ed;
  color: #9a3b25;
  padding: 7px 9px;
  font-size: 0.78rem;
  font-weight: 850;
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.timer-icon {
  position: relative;
  width: 14px;
  height: 14px;
  flex: 0 0 auto;
  border: 2px solid currentColor;
  border-radius: 50%;
  opacity: 0.8;
}

.timer-icon::before,
.timer-icon::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 2px;
  width: 2px;
  border-radius: 2px;
  background: currentColor;
  transform-origin: bottom center;
}

.timer-icon::before {
  height: 5px;
}

.timer-icon::after {
  height: 4px;
  transform: rotate(48deg);
}

.event-status {
  margin-top: 9px;
  font-weight: 740;
}

.confirmed-plan-card {
  position: relative;
  overflow: hidden;
  border-color: rgba(13, 143, 116, 0.26);
  background: linear-gradient(180deg, #ffffff 0%, #f6fcf9 100%);
}

.confirmed-plan-card::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(115deg, transparent 0%, rgba(255, 255, 255, 0.88) 44%, transparent 62%);
  transform: translateX(-120%);
  animation: unlock-sheen 900ms ease-out 180ms both;
}

.plan-followup {
  margin-top: 10px;
  border-top: 1px solid rgba(17, 24, 39, 0.08);
  padding-top: 11px;
}

.plan-followup-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.plan-followup-head > div {
  display: grid;
  gap: 3px;
}

.plan-followup-head strong {
  color: #344054;
  font-size: 0.82rem;
}

.plan-followup-head span:not(.quiet-pill) {
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 720;
  line-height: 1.35;
}

.plan-followup-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
  margin-top: 9px;
}

.plan-followup-actions button {
  min-height: 44px;
  border: 1px solid rgba(17, 24, 39, 0.12);
  border-radius: 12px;
  background: #fff;
  padding: 8px 10px;
  color: #475467;
  font-size: 0.74rem;
  font-weight: 820;
  box-shadow: none;
}

.plan-followup-actions button.is-selected {
  border-color: rgba(13, 143, 116, 0.28);
  background: #edf9f5;
  color: var(--green-dark);
}

.plan-followup-actions button.is-help {
  color: #8c2f1f;
}

.plan-followup-actions button.is-help.is-selected {
  border-color: rgba(154, 59, 37, 0.24);
  background: #fff3ee;
}

.plan-followup-receipt {
  display: grid;
  gap: 3px;
  margin-top: 8px;
  border-radius: 12px;
  background: #f6f8fb;
  padding: 9px 10px;
}

.plan-followup-receipt strong {
  color: #344054;
  font-size: 0.76rem;
}

.plan-followup-receipt span {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 700;
  line-height: 1.35;
}

@media (max-width: 560px) {
  .plan-followup-actions {
    grid-template-columns: minmax(0, 1fr);
  }
}

.confirmed-logistics {
  margin-top: 10px;
  border: 1px solid rgba(13, 143, 116, 0.16);
  border-radius: 14px;
  background: #f4fbf8;
  padding: 9px;
}

.confirmed-logistics span {
  color: var(--green-dark);
  font-size: 0.7rem;
  font-weight: 900;
  text-transform: uppercase;
}

.confirmed-logistics p {
  margin-top: 4px;
  color: var(--ink);
  font-size: 0.84rem;
  font-weight: 720;
  line-height: 1.34;
}

.event-person-list {
  display: grid;
  gap: 7px;
  margin-top: 10px;
}

.event-person-row {
  min-height: 54px;
  border-radius: 15px;
  background: var(--soft);
  padding: 8px 9px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 8px;
}

.event-person-row.is-removed {
  opacity: 0.72;
  background: #f9fafb;
}

.event-person-row.is-request {
  border: 1px solid rgba(33, 100, 232, 0.22);
  background: #edf4ff;
}

.event-person-row.is-find-request {
  border: 1px solid rgba(13, 143, 116, 0.24);
  background: #f3fbf8;
}

.event-person-row.is-picked {
  border: 1px solid rgba(13, 143, 116, 0.38);
  background: #eefaf5;
  box-shadow: inset 0 0 0 1px rgba(13, 143, 116, 0.12);
}

.event-person-row.is-confirmed-unlocked {
  position: relative;
  border: 1px solid rgba(13, 143, 116, 0.32);
  background: #f8fdfa;
  box-shadow: 0 0 0 0 rgba(13, 143, 116, 0.26);
  animation: unlock-ring 760ms ease-out 120ms both;
}

.host-clarification-panel {
  border: 1px solid rgba(33, 100, 232, 0.2);
  border-radius: 14px;
  background: #f8fbff;
  padding: 9px;
  display: grid;
  gap: 7px;
}

.host-clarification-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
}

.host-clarification-head strong,
.host-clarification-head small,
.shared-detail-editor span {
  display: block;
}

.host-clarification-head strong {
  font-size: 0.86rem;
}

.host-clarification-head small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 730;
  line-height: 1.22;
}

.clarification-request-list {
  display: grid;
  gap: 6px;
}

.clarification-request-list p {
  border-radius: 11px;
  background: #edf4ff;
  color: var(--blue-dark);
  padding: 7px 8px;
  font-size: 0.78rem;
  font-weight: 820;
  line-height: 1.25;
}

.shared-detail-editor {
  display: grid;
  gap: 5px;
}

.shared-detail-editor span {
  color: var(--blue-dark);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.shared-detail-editor textarea {
  width: 100%;
  min-height: 62px;
  resize: vertical;
  border: 1px solid rgba(17, 24, 39, 0.12);
  border-radius: 13px;
  background: white;
  color: var(--ink);
  padding: 8px;
  font-size: 0.84rem;
  line-height: 1.32;
}

.shared-detail-editor textarea:focus {
  outline: 2px solid rgba(33, 100, 232, 0.22);
  border-color: rgba(33, 100, 232, 0.44);
}

.clarification-actions {
  justify-content: flex-start;
}

.event-person-main {
  min-width: 0;
  display: grid;
  grid-template-columns: 36px 1fr;
  align-items: center;
  gap: 9px;
}

.event-person-title {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}

.source-badge-mini {
  border-radius: 999px;
  background: #dff7ee;
  color: var(--green);
  padding: 3px 6px;
  font-size: 0.64rem;
  font-style: normal;
  font-weight: 900;
  line-height: 1;
}

.source-badge-mini.picked {
  background: var(--green);
  color: white;
}

.event-person-photo {
  width: 36px;
  height: 36px;
  border-radius: 12px;
  object-fit: cover;
  border: 1px solid rgba(17, 24, 39, 0.08);
  background: white;
}

.event-person-photo.is-hidden {
  position: relative;
  display: grid;
  place-items: center;
  background: #e8edf5;
}

.event-person-photo.is-hidden::before {
  content: "";
  width: 12px;
  height: 9px;
  border: 2px solid var(--muted);
  border-radius: 3px;
  transform: translateY(3px);
}

.event-person-photo.is-hidden::after {
  content: "";
  position: absolute;
  top: 8px;
  width: 10px;
  height: 8px;
  border: 2px solid var(--muted);
  border-bottom: 0;
  border-radius: 8px 8px 0 0;
}

.event-person-row strong,
.event-person-row small {
  display: block;
}

.event-person-row em {
  color: var(--muted);
  font-size: 0.76rem;
  font-style: normal;
  font-weight: 780;
}

.event-person-row .source-badge-mini {
  color: var(--green);
  font-size: 0.64rem;
}

.event-person-row .source-badge-mini.picked {
  color: white;
}

.event-person-detail {
  grid-column: 1 / -1;
  margin: -2px 0 0 45px;
  color: var(--ink);
  font-size: 0.8rem;
  line-height: 1.26;
}

.event-person-tags {
  grid-column: 1 / -1;
  margin-left: 45px;
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.event-person-tags span {
  border-radius: 999px;
  background: #edf4ff;
  color: var(--blue-dark);
  padding: 4px 7px;
  font-size: 0.68rem;
  font-weight: 820;
}

.unlocked-contact-card {
  grid-column: 1 / -1;
  margin-left: 45px;
  border: 1px solid rgba(13, 143, 116, 0.2);
  border-radius: 14px;
  background: white;
  padding: 9px;
  display: grid;
  grid-template-columns: 34px 1fr;
  gap: 9px;
  align-items: start;
}

.unlock-badge {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #e7f8f3;
  color: var(--green-dark);
  display: grid;
  place-items: center;
}

.unlock-badge span {
  position: relative;
  width: 14px;
  height: 12px;
  border: 2px solid currentColor;
  border-radius: 3px;
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
}

.unlock-badge span::before {
  content: "";
  position: absolute;
  left: 1px;
  top: -11px;
  width: 11px;
  height: 11px;
  border: 2px solid currentColor;
  border-bottom: 0;
  border-radius: 9px 9px 0 0;
  transform: translateX(5px) rotate(25deg);
  transform-origin: bottom left;
}

.contact-kicker,
.unlocked-contact-card dt {
  color: var(--green-dark);
  font-size: 0.68rem;
  font-weight: 900;
  text-transform: uppercase;
}

.unlocked-contact-card strong {
  margin-top: 2px;
  font-size: 0.9rem;
}

.unlocked-contact-card dl {
  margin: 7px 0 0;
  display: grid;
  gap: 5px;
}

.unlocked-contact-card div {
  min-width: 0;
}

.unlocked-contact-card dd {
  margin: 2px 0 0;
  color: var(--ink);
  font-size: 0.84rem;
  font-weight: 780;
  overflow-wrap: anywhere;
}

.unlocked-contact-card small {
  margin-top: 7px;
  color: var(--muted);
  line-height: 1.28;
}

.person-timer {
  min-height: 30px;
  border-radius: 999px;
  background: white;
  color: #9a3b25;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 0 8px;
  font-size: 0.78rem;
  font-weight: 850;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.person-timer.is-expired {
  background: #f2efec;
  color: #655f5a;
}

.person-timer.is-expired .timer-icon::before,
.person-timer.is-expired .timer-icon::after {
  transform: none;
}

.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.event-person-row > .person-timer {
  justify-self: start;
}

.request-status {
  color: var(--blue-dark);
  font-size: 0.78rem;
  font-weight: 850;
}

.row-actions {
  grid-column: 1 / -1;
  display: flex;
  justify-content: flex-end;
  gap: 7px;
}

.host-preview {
  margin: 10px 0;
  border: 1px solid rgba(13, 143, 116, 0.18);
  border-radius: 18px;
  background: #f4fbf8;
  padding: 10px;
  display: grid;
  grid-template-columns: 46px 1fr;
  gap: 10px;
  align-items: start;
}

.host-preview img {
  width: 46px;
  height: 46px;
  border-radius: 15px;
  object-fit: cover;
  border: 1px solid rgba(13, 143, 116, 0.2);
}

.host-preview p {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.28;
}

.host-preview .member-card-words {
  margin-top: 7px;
}

.guest-detail-list {
  display: grid;
  gap: 7px;
  margin: 8px 0 10px;
}

.guest-detail-list div {
  border-top: 1px solid rgba(17, 24, 39, 0.08);
  padding-top: 7px;
}

.guest-detail-list dt {
  color: var(--green);
  font-size: 0.68rem;
  font-weight: 850;
  text-transform: uppercase;
}

.guest-detail-list dd {
  margin: 3px 0 0;
  color: var(--ink);
  font-size: 0.84rem;
  line-height: 1.3;
}

.guest-response-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin: 10px 0;
}

.inline-action {
  min-height: 44px;
  border: 0;
  border-radius: 999px;
  background: #edf4ff;
  color: var(--blue-dark);
  padding: 0 10px;
  font-size: 0.8rem;
  font-weight: 850;
}

.inline-action.danger {
  color: #9a3b25;
  background: #fff0e8;
}

.inline-action.is-selected {
  color: white;
  background: var(--green);
}

.inline-action:disabled {
  cursor: not-allowed;
  color: #8b96a5;
  background: #e7ebf0;
}

.compact-action {
  min-height: 44px;
  margin-top: 10px;
  border-radius: 14px;
}

.notice-card {
  display: grid;
  gap: 9px;
  background: #fbfcfe;
}

.notice-card small {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.34;
}

.bottom-action {
  margin-top: 0;
  border-top: 1px solid rgba(17, 24, 39, 0.08);
  padding: 10px 0 4px;
  background: rgba(255, 255, 255, 0.96);
  position: relative;
  z-index: 3;
}

.bottom-action.has-error-locator {
  display: grid;
  gap: 8px;
}

.bottom-action[hidden] {
  display: none;
}

.bottom-error-locator {
  border: 1px solid rgba(226, 90, 61, 0.24);
  border-radius: 14px;
  background: #fff8f4;
  color: #7a3322;
  padding: 8px 8px 8px 10px;
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
  align-items: center;
}

.bottom-error-locator[hidden] {
  display: none;
}

.bottom-error-locator span {
  min-width: 0;
  font-size: 0.8rem;
  font-weight: 820;
  line-height: 1.24;
}

.bottom-error-jump {
  min-height: 44px;
  border: 0;
  border-radius: 999px;
  background: #9a3b25;
  color: white;
  padding: 0 12px;
  font-size: 0.76rem;
  font-weight: 900;
  white-space: nowrap;
}

.primary-action,
.secondary-action,
.confirm-button {
  width: 100%;
  min-height: 54px;
  border: 0;
  border-radius: var(--radius-control);
  color: white;
  background: var(--blue);
  padding: 0 16px;
  font-size: 1rem;
  font-weight: 850;
  box-shadow: 0 12px 28px rgba(33, 100, 232, 0.24);
}

.secondary-action {
  color: var(--blue-dark);
  background: #edf4ff;
  box-shadow: none;
}

.confirm-button {
  background: var(--green);
  box-shadow: 0 12px 28px rgba(13, 143, 116, 0.2);
}

.primary-action.is-blocked {
  background: #9a3b25;
  box-shadow: 0 12px 28px rgba(154, 59, 37, 0.18);
}

.primary-action:disabled,
.secondary-action:disabled,
.confirm-button:disabled {
  cursor: not-allowed;
  color: #8b96a5;
  background: #e7ebf0;
  box-shadow: none;
}

.review-summary-card {
  margin-top: 14px;
  border-radius: 18px;
  background: #111827;
  color: white;
  padding: 16px;
  box-shadow: var(--soft-shadow);
}

.summary-kicker {
  color: rgba(255, 255, 255, 0.64);
  font-size: 0.76rem;
  font-weight: 850;
  text-transform: uppercase;
}

.review-summary-card h3 {
  margin-top: 7px;
  font-size: 1.5rem;
  line-height: 1.08;
}

.summary-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 14px;
}

.summary-tags span {
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.12);
  padding: 7px 9px;
  font-size: 0.82rem;
  font-weight: 780;
}

.summary-note {
  margin-top: 12px;
  color: rgba(255, 255, 255, 0.78);
  font-size: 0.9rem;
  line-height: 1.34;
}

.review-people {
  margin-top: 14px;
}

.review-private-settings {
  border: 1px solid rgba(33, 100, 232, 0.16);
  border-radius: 16px;
  background: #f6f9ff;
  padding: 12px;
  margin-bottom: 12px;
}

.review-private-settings strong {
  display: block;
  font-size: 0.94rem;
}

.review-private-settings p:last-child {
  margin-top: 5px;
  color: var(--muted);
  font-size: 0.84rem;
  font-weight: 700;
  line-height: 1.34;
}

.account-card[hidden],
.event-list[hidden],
.response-list[hidden],
.notice-list[hidden] {
  display: none;
}

.review-people-list {
  display: grid;
  gap: 8px;
}

.review-person {
  min-height: 58px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: white;
  padding: 9px;
  display: grid;
  grid-template-columns: 40px 1fr;
  align-items: center;
  gap: 10px;
  box-shadow: 0 8px 22px rgba(20, 31, 54, 0.06);
}

.review-private-source {
  border-style: dashed;
  background: #f8fafc;
}

.review-person img {
  width: 40px;
  height: 40px;
  border-radius: 14px;
  object-fit: cover;
}

.review-person strong,
.review-person span {
  display: block;
}

.review-person span {
  margin-top: 2px;
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 700;
}

.timeline-list {
  display: grid;
  gap: 10px;
  margin-top: 16px;
}

.timeline-item,
.reply-card {
  border: 1px solid var(--line);
  border-radius: var(--radius-card);
  background: white;
  padding: 14px;
  box-shadow: 0 8px 22px rgba(20, 31, 54, 0.06);
}

.timeline-item p,
.reply-card p {
  margin-top: 4px;
  color: var(--muted);
  line-height: 1.38;
  font-size: 0.94rem;
}

.timeline-item {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 10px;
}

.timeline-item > span {
  width: 13px;
  height: 13px;
  border-radius: 50%;
  margin-top: 3px;
  background: #d8dee8;
}

.timeline-item.is-active > span {
  background: var(--blue);
  box-shadow: 0 0 0 6px rgba(33, 100, 232, 0.12);
}

.timeline-item.is-complete > span {
  background: var(--green);
}

.reply-box {
  margin-top: 16px;
}

.empty-state {
  border: 1px dashed rgba(17, 24, 39, 0.16);
  border-radius: var(--radius-card);
  color: var(--muted);
  background: rgba(255, 255, 255, 0.58);
  padding: 15px;
  line-height: 1.38;
}

.reply-card {
  display: grid;
  gap: 12px;
}

.reply-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.reply-meta span {
  border-radius: 999px;
  background: #edf4ff;
  color: var(--blue-dark);
  padding: 7px 9px;
  font-size: 0.8rem;
  font-weight: 780;
}

.action-stack {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  margin-top: 16px;
}

@media (max-width: 900px) {
  .app-shell {
    width: min(430px, 100%);
  }
}

@media (max-width: 480px) {
  .activity-picker {
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
  }

  .selected-tag {
    width: 100%;
    max-width: 100%;
    min-height: 44px;
    padding: 10px 14px;
    white-space: normal;
    overflow-wrap: anywhere;
    line-height: 1.12;
    text-align: center;
  }

  .picker-copy {
    min-width: 0;
    text-align: center;
  }

  .activity-menu {
    position: static;
    width: 100%;
    max-width: 100%;
    margin-top: 8px;
  }

  .home-dashboard {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .field-grid {
    grid-template-columns: 1fr;
  }

  .application-field-grid,
  .journey-result-actions,
  .member-operations-decision-actions,
  .lifecycle-next-action,
  .safety-actions {
    grid-template-columns: 1fr;
  }

  .member-operations-decision-actions .confirm-button {
    grid-column: auto;
  }

  .unlocked-contact-card {
    margin-left: 0;
  }
}

@keyframes unlock-sheen {
  0% {
    transform: translateX(-120%);
  }

  100% {
    transform: translateX(120%);
  }
}

@keyframes unlock-ring {
  0% {
    box-shadow: 0 0 0 0 rgba(13, 143, 116, 0.28);
  }

  70% {
    box-shadow: 0 0 0 7px rgba(13, 143, 116, 0.08);
  }

  100% {
    box-shadow: 0 0 0 0 rgba(13, 143, 116, 0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .confirmed-plan-card::before,
  .event-person-row.is-confirmed-unlocked {
    animation: none;
  }
}

/* Prototype v47: quieter research controls and clearer member workflows. */
.prototype-scenario-tools {
  position: relative;
  min-width: 0;
}

.prototype-scenario-tools > summary {
  min-height: 34px;
  border-radius: 10px;
  background: #f2f4f7;
  color: #344054;
  padding: 0 11px;
  display: flex;
  align-items: center;
  font-size: 0.78rem;
  font-weight: 850;
  list-style: none;
  cursor: pointer;
}

.prototype-scenario-tools > summary::-webkit-details-marker,
.readiness-lab > summary::-webkit-details-marker,
.routing-lab > summary::-webkit-details-marker,
.find-more-filters > summary::-webkit-details-marker,
.plan-details-disclosure > summary::-webkit-details-marker,
.confirmed-plan-card.is-completed > summary::-webkit-details-marker,
.why-invite-disclosure > summary::-webkit-details-marker {
  display: none;
}

.prototype-scenario-tools[open] > summary {
  background: #e9efff;
  color: var(--blue-dark);
}

.prototype-scenario-tools .prototype-scenario-picker {
  position: absolute;
  z-index: 120;
  top: calc(100% + 8px);
  left: 0;
  width: min(270px, calc(100vw - 34px));
  border: 1px solid var(--line);
  border-radius: 14px;
  background: white;
  padding: 10px;
  box-shadow: var(--shadow);
}

.prototype-scenario-tools .prototype-scenario-picker select {
  width: 100%;
  min-height: 44px;
}

.prototype-profile-reset {
  margin-top: 2px;
  border-top: 1px solid rgba(56, 46, 39, 0.12);
  padding-top: 10px;
  display: grid;
  gap: 9px;
}

.prototype-profile-reset > div {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.prototype-profile-reset em {
  width: fit-content;
  border-radius: 999px;
  background: #eef3ff;
  color: var(--blue-dark);
  padding: 3px 7px;
  font-size: 0.63rem;
  font-style: normal;
  font-weight: 900;
  letter-spacing: 0.035em;
  line-height: 1.2;
  text-transform: uppercase;
}

.prototype-profile-reset strong {
  color: var(--ink);
  font-size: 0.82rem;
  font-weight: 900;
}

.prototype-profile-reset small {
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 720;
  line-height: 1.35;
}

.prototype-device-switch .prototype-profile-reset button {
  min-height: 44px;
  border: 1px solid rgba(119, 55, 74, 0.2);
  border-radius: 11px;
  background: #fff8fa;
  color: #77374a;
  padding: 8px 11px;
  font-size: 0.76rem;
  font-weight: 900;
  line-height: 1.2;
}

.prototype-device-switch .prototype-profile-reset button:hover,
.prototype-device-switch .prototype-profile-reset button:focus-visible {
  background: #f9ebef;
}

.prototype-reset-confirm[hidden] {
  display: none;
}

.prototype-reset-confirm {
  display: grid;
  gap: 7px;
}

.prototype-reset-confirm p {
  margin: 0;
  color: var(--ink);
  font-size: 0.72rem;
  font-weight: 780;
  line-height: 1.35;
}

.prototype-reset-confirm > div {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 7px;
}

.prototype-device-switch .prototype-reset-confirm button.is-confirm {
  border-color: #77374a;
  background: #77374a;
  color: white;
}

.prototype-device-switch .prototype-reset-confirm button.is-confirm:hover,
.prototype-device-switch .prototype-reset-confirm button.is-confirm:focus-visible {
  background: #612d3d;
}

.prototype-device-switch button {
  min-height: 36px;
}

.readiness-lab {
  display: block;
  border-color: rgba(33, 100, 232, 0.18);
  background: rgba(247, 249, 255, 0.72);
  padding: 5px 9px;
}

.readiness-lab > summary {
  min-height: 34px;
  color: var(--muted);
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 0.72rem;
  font-weight: 850;
  cursor: pointer;
}

.readiness-lab > summary::after,
.routing-lab > summary::after,
.find-more-filters > summary::after,
.plan-details-disclosure > summary::after,
.why-invite-disclosure > summary::after {
  content: "";
  width: 8px;
  height: 8px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg) translateY(-2px);
}

.readiness-lab[open] > summary::after,
.routing-lab[open] > summary::after,
.find-more-filters[open] > summary::after,
.plan-details-disclosure[open] > summary::after,
.why-invite-disclosure[open] > summary::after {
  transform: rotate(225deg) translate(-2px, -1px);
}

.readiness-lab-body {
  border-top: 1px solid rgba(33, 100, 232, 0.12);
  padding-top: 9px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 10px;
}

.readiness-lab-body > span {
  max-width: 210px;
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 700;
  line-height: 1.25;
}

.routing-lab {
  display: block;
  margin-bottom: 12px;
  border-color: rgba(33, 100, 232, 0.18);
  background: rgba(247, 249, 255, 0.72);
  padding: 5px 9px;
}

.routing-lab > summary {
  min-height: 34px;
  color: var(--muted);
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 0.72rem;
  font-weight: 850;
  list-style: none;
  cursor: pointer;
}

.routing-lab-body {
  border-top: 1px solid rgba(33, 100, 232, 0.12);
  padding-top: 9px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 10px;
}

.routing-lab-body > span {
  max-width: 210px;
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 700;
  line-height: 1.25;
}

.incoming-priority-panel {
  display: grid;
  gap: 9px;
  margin-top: 9px;
}

.incoming-priority-panel[hidden] {
  display: none;
}

.incoming-priority-section,
.incoming-waiting-section {
  border: 1px solid rgba(33, 100, 232, 0.12);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.64);
}

.incoming-waiting-section {
  border-color: rgba(17, 24, 39, 0.08);
}

.response-disclosure {
  overflow: hidden;
}

.response-disclosure-summary {
  min-height: 72px;
  padding: 10px 12px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 10px;
  color: var(--ink);
  cursor: pointer;
  list-style: none;
}

.response-disclosure-summary::-webkit-details-marker {
  display: none;
}

.response-disclosure-summary:hover {
  background: rgba(33, 100, 232, 0.035);
}

.response-disclosure-summary:focus-visible {
  outline: 3px solid rgba(33, 100, 232, 0.32);
  outline-offset: -3px;
}

.response-disclosure-copy {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.response-disclosure-copy strong {
  font-size: 0.98rem;
  line-height: 1.16;
}

.response-disclosure-copy small {
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 720;
  line-height: 1.24;
}

.response-disclosure-mark {
  position: relative;
  width: 30px;
  height: 30px;
  border-radius: 11px;
  background: #e8efff;
}

.response-disclosure-mark.is-action::before {
  content: "";
  position: absolute;
  left: 13px;
  top: 7px;
  width: 3px;
  height: 10px;
  border-radius: 99px;
  background: var(--blue);
}

.response-disclosure-mark.is-action::after {
  content: "";
  position: absolute;
  left: 13px;
  top: 20px;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: var(--blue);
}

.response-disclosure-mark.is-waiting {
  background: #f0f2f5;
}

.response-disclosure-mark.is-waiting::before {
  content: "";
  position: absolute;
  inset: 7px;
  border: 2px solid #667085;
  border-radius: 50%;
}

.response-disclosure-mark.is-waiting::after {
  content: "";
  position: absolute;
  left: 14px;
  top: 10px;
  width: 5px;
  height: 5px;
  border-left: 2px solid #667085;
  border-bottom: 2px solid #667085;
}

.response-disclosure-summary .quiet-pill {
  min-width: 30px;
  padding: 6px 9px;
  text-align: center;
}

.response-disclosure-chevron {
  width: 8px;
  height: 8px;
  border-right: 2px solid var(--muted);
  border-bottom: 2px solid var(--muted);
  transform: rotate(45deg) translateY(-2px);
  transition: transform 160ms ease;
}

.response-disclosure[open] > .response-disclosure-summary {
  background: rgba(33, 100, 232, 0.035);
}

.response-disclosure[open] > .response-disclosure-summary .response-disclosure-chevron {
  transform: rotate(225deg) translate(-2px, -1px);
}

.response-disclosure-body {
  border-top: 1px solid rgba(33, 100, 232, 0.1);
  padding: 10px;
}

.incoming-waiting-section .response-disclosure-body {
  border-top-color: rgba(17, 24, 39, 0.08);
}

@media (prefers-reduced-motion: reduce) {
  .response-disclosure-chevron {
    transition: none;
  }
}

.find-more-filters {
  grid-column: 1 / -1;
  min-width: 0;
  border: 1px solid rgba(17, 24, 39, 0.09);
  border-radius: 12px;
  background: #f8fafc;
}

.find-more-filters > summary {
  min-height: 44px;
  padding: 0 11px;
  color: #475467;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 8px;
  cursor: pointer;
}

.find-more-filters > summary strong {
  color: #344054;
  font-size: 0.78rem;
}

.find-more-filters > summary span {
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 720;
}

.find-more-filter-grid {
  border-top: 1px solid rgba(17, 24, 39, 0.08);
  padding: 9px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.area-setup-action {
  min-height: 44px;
  margin-top: 0;
}

.incoming-invite-note {
  margin-top: 8px;
  color: #344054;
  font-size: 0.84rem;
  font-weight: 720;
  line-height: 1.35;
}

.why-invite-disclosure {
  margin-top: 7px;
  border-top: 1px solid rgba(17, 24, 39, 0.08);
}

.why-invite-disclosure > summary {
  min-height: 44px;
  color: var(--blue-dark);
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 0.76rem;
  font-weight: 820;
  cursor: pointer;
}

.why-invite-disclosure p {
  margin: -2px 0 9px;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1.34;
}

.member-profile-disclosure .compact-member-detail-list {
  margin: 2px 0 8px;
}

.home-dashboard {
  grid-template-columns: minmax(0, 1fr);
}

.date-grid[hidden] {
  display: none;
}

.date-grid-toggle {
  min-height: 44px;
  border: 0;
  border-radius: 12px;
  background: #edf4ff;
  color: var(--blue-dark);
  padding: 0 12px;
  font-size: 0.8rem;
  font-weight: 850;
}

.plan-details-disclosure {
  border: 1px solid rgba(17, 24, 39, 0.09);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.72);
}

.plan-details-disclosure > summary {
  min-height: 64px;
  padding: 10px 13px;
  color: #475467;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 10px;
  cursor: pointer;
}

.plan-details-disclosure > summary span,
.plan-details-disclosure > summary strong,
.plan-details-disclosure > summary small {
  display: block;
}

.plan-details-disclosure > summary strong {
  color: var(--ink);
  font-size: 0.92rem;
}

.plan-details-disclosure > summary small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 720;
}

.plan-details-disclosure > summary em {
  color: var(--blue-dark);
  font-size: 0.76rem;
  font-style: normal;
  font-weight: 850;
}

.plan-details-fields {
  border-top: 1px solid rgba(17, 24, 39, 0.08);
  padding: 12px;
}

.plan-policy-summary {
  margin-top: 10px;
  border-radius: 12px;
  background: #f4fbf8;
  padding: 9px 10px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
}

.plan-policy-summary span {
  border-radius: 999px;
  background: white;
  color: var(--green-dark);
  padding: 5px 8px;
  font-size: 0.72rem;
  font-weight: 830;
}

.plan-policy-summary small {
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 720;
}

.requirements-panel {
  padding: 9px 10px;
}

.requirements-head span {
  margin-top: 2px;
}

.confirmed-plans-section,
.completed-plans-section {
  border: 0;
  background: transparent;
  padding: 0;
}

.confirmed-plan-card {
  overflow: visible;
  border-color: rgba(13, 143, 116, 0.2);
  background: white;
}

.confirmed-plan-card::before {
  display: none;
}

.confirmed-person-summary {
  margin-top: 11px;
  border-top: 1px solid rgba(17, 24, 39, 0.08);
  padding-top: 11px;
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
}

.confirmed-person-summary img {
  width: 40px;
  height: 40px;
  border-radius: 13px;
  object-fit: cover;
}

.confirmed-person-summary strong,
.confirmed-person-summary span {
  display: block;
}

.confirmed-detail-grid {
  margin: 11px 0 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.confirmed-detail-grid > div {
  min-width: 0;
  border-radius: 12px;
  background: #f4fbf8;
  padding: 9px 10px;
}

.confirmed-detail-grid > .is-wide {
  grid-column: 1 / -1;
}

.confirmed-detail-grid dt {
  color: var(--green-dark);
  font-size: 0.66rem;
  font-weight: 900;
  text-transform: uppercase;
}

.confirmed-detail-grid dd {
  margin: 3px 0 0;
  color: var(--ink);
  font-size: 0.8rem;
  font-weight: 760;
  line-height: 1.28;
  overflow-wrap: anywhere;
}

.locked-detail-panel .confirmed-detail-grid {
  margin-top: 8px;
}

.confirmed-person-summary strong {
  font-size: 0.92rem;
}

.confirmed-person-summary span {
  margin-top: 2px;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 720;
}

.confirmed-logistics {
  border: 0;
  border-top: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 0;
  background: transparent;
  padding: 11px 0 0;
}

.confirmed-contact-actions {
  margin-top: 11px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.confirmed-contact-actions a {
  min-width: 0;
  min-height: 54px;
  border: 1px solid rgba(13, 143, 116, 0.18);
  border-radius: 13px;
  background: #f4fbf8;
  color: var(--ink);
  padding: 9px 10px;
  display: grid;
  align-content: center;
  gap: 2px;
  text-decoration: none;
}

.confirmed-contact-actions a:focus-visible {
  outline: 3px solid rgba(33, 100, 232, 0.22);
  outline-offset: 2px;
}

.confirmed-contact-actions span {
  color: var(--green-dark);
  font-size: 0.68rem;
  font-weight: 900;
  text-transform: uppercase;
}

.confirmed-contact-actions strong {
  min-width: 0;
  font-size: 0.78rem;
  overflow-wrap: anywhere;
}

.confirmed-privacy-note {
  margin-top: 8px;
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 700;
  line-height: 1.3;
}

.confirmed-plan-card.is-completed > summary {
  min-height: 64px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  list-style: none;
}

.confirmed-plan-card.is-completed[open] > summary {
  border-bottom: 1px solid rgba(17, 24, 39, 0.08);
  padding-bottom: 10px;
}

.completed-plan-details {
  padding-top: 1px;
}

.plan-followup-actions button {
  min-height: 44px;
}

.signal-actions .mini-action {
  width: auto;
  min-height: 44px;
  padding-inline: 14px;
}

@media (min-width: 901px) {
  body.is-prototype-desktop #findView .event-section {
    grid-auto-flow: row dense;
  }

  body.is-prototype-desktop #findView .incoming-priority-panel {
    display: contents;
  }

  body.is-prototype-desktop #findView .incoming-priority-panel[hidden] {
    display: none;
  }

  body.is-prototype-desktop #findView .incoming-priority-section {
    grid-column: 2;
    grid-row: auto;
    margin-top: 9px;
  }

  body.is-prototype-desktop #findView .incoming-waiting-section {
    grid-column: 1;
    grid-row: auto;
    margin-top: 9px;
  }

  body.is-prototype-desktop #findView .find-controls-panel {
    grid-column: 1;
    grid-row: auto;
    margin-top: 9px;
  }

  body.is-prototype-desktop #onView.is-active {
    max-width: 980px;
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
    gap: 16px;
    align-items: start;
  }

  body.is-prototype-desktop #onView .event-section {
    margin-top: 0;
  }
}

@media (max-width: 560px) {
  .open-now-editor {
    grid-template-columns: minmax(0, 1fr);
  }

  .open-now-editor .primary-action {
    width: 100%;
  }

  .readiness-lab-body,
  .routing-lab-body,
  .find-more-filter-grid,
  .confirmed-contact-actions {
    grid-template-columns: 1fr;
  }

  .readiness-lab-body > span {
    max-width: none;
  }

  .routing-lab-body > span {
    max-width: none;
  }

  .prototype-device-switch {
    grid-template-columns: minmax(0, 1fr) auto auto;
  }

  .prototype-device-switch button {
    min-height: 36px;
    padding-inline: 10px;
  }
}

/* v56: explicit list differentiation, Out invitation context, and filter affordance. */
.notification-item {
  position: relative;
  grid-template-columns: 22px minmax(0, 1fr);
  align-items: start;
  gap: 9px;
  border-inline-start-width: 4px;
  padding: 9px 10px 9px 8px;
}

.notification-item > div {
  min-width: 0;
}

.notification-icon {
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  font-size: 0.78rem;
  font-weight: 950;
  line-height: 1;
}

.notification-icon::before,
.notification-icon::after {
  content: none;
}

.notification-item-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
}

.notification-state-label {
  flex: 0 0 auto;
  border-radius: 999px;
  padding: 3px 7px;
  font-size: 0.61rem;
  font-weight: 900;
  line-height: 1.1;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.notification-item.is-action,
.notification-item.is-secondary.is-action {
  border-color: rgba(180, 69, 42, 0.3);
  border-inline-start-color: #b4452a;
  background: #fff7f2;
}

.notification-item.is-action .notification-state-label {
  background: #ffe7dc;
  color: #8f321f;
}

.notification-item.is-waiting,
.notification-item.is-secondary.is-waiting {
  border-color: rgba(180, 119, 20, 0.26);
  border-inline-start-color: #b47714;
  background: #fffaf0;
}

.notification-item.is-waiting .notification-icon,
.notification-item.is-waiting .notification-state-label {
  background: #fff0c9;
  color: #80540d;
}

.notification-item.is-complete,
.notification-item.is-secondary.is-complete {
  border-color: rgba(13, 143, 116, 0.25);
  border-inline-start-color: var(--green);
  background: #f3fbf8;
}

.notification-item.is-complete .notification-state-label {
  background: #dff7ee;
  color: var(--green-dark);
}

.notification-item.is-private,
.notification-item.is-secondary.is-private {
  border-color: rgba(71, 84, 103, 0.22);
  border-inline-start-color: #667085;
  background: #f7f8fa;
}

.notification-item.is-private .notification-state-label {
  background: #e8edf3;
  color: #344054;
}

.work-row {
  border-inline-start-width: 4px;
}

.work-row.is-question {
  border-inline-start-color: var(--blue);
}

.work-row.is-open-response {
  border-color: rgba(13, 143, 116, 0.25);
  border-inline-start-color: var(--green);
  background: #f6fcf9;
}

.work-row.is-selection {
  border-color: rgba(91, 75, 224, 0.22);
  border-inline-start-color: #5b4be0;
  background: #faf9ff;
}

.work-row.is-answer {
  border-inline-start-color: #b4452a;
}

.work-row.is-selection .work-row-kicker {
  color: #5142c7;
}

.work-row.is-open-response .work-row-kicker {
  color: var(--green-dark);
}

.notice-card {
  position: relative;
  grid-template-columns: 30px minmax(0, 1fr);
  align-items: start;
  gap: 9px;
  border-inline-start-width: 4px;
  padding: 10px 10px 10px 8px;
}

.notice-card.is-private {
  border-color: rgba(71, 84, 103, 0.2);
  border-inline-start-color: #667085;
  background: #f7f8fa;
}

.notice-card.is-familiar {
  border-color: rgba(91, 75, 224, 0.2);
  border-inline-start-color: #5b4be0;
  background: #faf9ff;
}

.notice-card-icon {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: #e8edf3;
  color: #475467;
}

.notice-card-icon::before {
  content: "i";
  font-size: 0.8rem;
  font-weight: 950;
}

.notice-card.is-familiar .notice-card-icon {
  background: #f0edff;
  color: #5142c7;
}

.notice-card.is-familiar .notice-card-icon::before {
  content: "✓";
}

.notice-card-main {
  min-width: 0;
}

.notice-card-label {
  display: block;
  margin-bottom: 3px;
  color: #475467;
  font-size: 0.62rem;
  font-weight: 950;
  letter-spacing: 0.05em;
  line-height: 1.15;
  text-transform: uppercase;
}

.notice-card.is-familiar .notice-card-label {
  color: #5142c7;
}

.notice-card-main small {
  display: block;
  margin-top: 6px;
}

.find-controls-panel {
  border-color: rgba(33, 100, 232, 0.32);
  background: #f5f8ff;
  box-shadow: inset 4px 0 0 var(--blue), 0 7px 18px rgba(33, 100, 232, 0.06);
}

.find-filter-summary,
.find-controls-panel[open] > .find-filter-summary {
  min-height: 62px;
  background: #eef4ff;
  padding-left: 13px;
}

.find-filter-mark {
  background: #dfe9ff;
  box-shadow: inset 0 0 0 1px rgba(33, 100, 232, 0.14);
}

.find-filter-title-row {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 7px;
}

.find-filter-title-row strong {
  color: var(--blue-dark);
  font-size: 0.9rem;
  line-height: 1.1;
}

#findFilterActiveCount {
  flex: 0 0 auto;
  border-radius: 999px;
  background: white;
  color: #526079;
  box-shadow: inset 0 0 0 1px rgba(33, 100, 232, 0.14);
  padding: 3px 6px;
  font-size: 0.62rem;
  font-weight: 850;
  line-height: 1;
}

.find-filter-summary-copy small {
  color: #43526b;
}

.find-controls-body {
  border-top-color: rgba(33, 100, 232, 0.2);
  background: #f8faff;
}

.find-controls-body label,
.find-controls-body .area-scope-control > label > span {
  color: #263750;
}

.find-controls-body select {
  border-color: rgba(33, 100, 232, 0.24);
  background-color: white;
}

@media (max-width: 390px) {
  .notification-item-head {
    display: grid;
    justify-items: start;
  }

}

/* v57: identifiable In records. */
#availableEvents,
#openResponses {
  gap: 10px;
}

.incoming-invite-record {
  --incoming-category-accent: var(--blue);
  position: relative;
  overflow: hidden;
  border-top: 4px solid var(--incoming-category-accent);
  box-shadow: 0 10px 22px rgba(20, 31, 54, 0.08);
}

.incoming-invite-record.category-watch-listen {
  --incoming-category-accent: #0f766e;
}

.incoming-invite-record.category-attend-specific,
.incoming-invite-record.category-learn-make {
  --incoming-category-accent: var(--blue);
}

.incoming-invite-record.category-eat-drink {
  --incoming-category-accent: #b4452a;
}

.incoming-invite-record.category-walk-explore,
.incoming-invite-record.category-relax-reset {
  --incoming-category-accent: #5b4be0;
}

.incoming-invite-record.category-play-do,
.incoming-invite-record.category-excursions {
  --incoming-category-accent: #a15c12;
}

.incoming-invite-record.is-action-record {
  border-right-color: rgba(180, 119, 20, 0.2);
  border-bottom-color: rgba(180, 119, 20, 0.2);
  border-left-color: rgba(180, 119, 20, 0.2);
  background: #fffdf8;
}

.incoming-invite-record.is-waiting-record {
  border-right-color: rgba(33, 100, 232, 0.18);
  border-bottom-color: rgba(33, 100, 232, 0.18);
  border-left-color: rgba(33, 100, 232, 0.18);
  background: #f8faff;
}

.incoming-invite-identity {
  min-width: 0;
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  align-items: start;
  column-gap: 9px;
  row-gap: 6px;
  border: 1px solid rgba(17, 24, 39, 0.09);
  border-radius: 12px;
  padding: 8px;
}

.incoming-invite-identity.is-action {
  border-color: rgba(180, 119, 20, 0.22);
  background: #fff7e9;
}

.incoming-invite-identity.is-waiting {
  border-color: rgba(33, 100, 232, 0.18);
  background: #eef4ff;
}

.incoming-invite-identity .event-category-icon {
  grid-row: 1 / span 2;
  width: 36px;
  height: 36px;
  border-radius: 12px;
}

.incoming-invite-identity .event-category-icon svg {
  width: 21px;
  height: 21px;
}

.incoming-invite-identity-copy {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.incoming-invite-identity-copy > span {
  color: var(--blue-dark);
  font-size: 0.61rem;
  font-weight: 950;
  letter-spacing: 0.06em;
  line-height: 1;
  text-transform: uppercase;
}

.incoming-invite-identity-copy strong {
  color: var(--ink);
  font-size: 0.94rem;
  font-weight: 900;
  line-height: 1.14;
}

.incoming-invite-identity-copy small {
  color: #526079;
  font-size: 0.72rem;
  font-weight: 730;
  line-height: 1.18;
}

.incoming-invite-state-group {
  grid-column: 2;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 5px;
}

.incoming-invite-state-pill,
.incoming-invite-status-pill {
  border-radius: 999px;
  padding: 4px 7px;
  font-size: 0.62rem;
  font-weight: 900;
  line-height: 1;
}

.incoming-invite-identity.is-action .incoming-invite-state-pill {
  background: #ffe6bb;
  color: #80540d;
}

.incoming-invite-identity.is-action .incoming-invite-status-pill {
  background: white;
  color: #9a3b25;
  box-shadow: inset 0 0 0 1px rgba(180, 69, 42, 0.18);
}

.incoming-invite-identity.is-waiting .incoming-invite-state-pill {
  background: #dce8ff;
  color: var(--blue-dark);
}

.incoming-invite-identity.is-waiting .incoming-invite-status-pill {
  background: #dff7ee;
  color: var(--green-dark);
}

.incoming-invite-record .host-preview {
  border-radius: 14px;
}

.incoming-invite-record .response-detail {
  color: #3f4d63;
}

@media (min-width: 901px) {
  body.is-prototype-desktop .incoming-invite-identity {
    grid-template-columns: 36px minmax(0, 1fr) auto;
    align-items: center;
  }

  body.is-prototype-desktop .incoming-invite-identity .event-category-icon {
    grid-row: 1;
  }

  body.is-prototype-desktop .incoming-invite-state-group {
    grid-column: 3;
    justify-content: flex-end;
  }
}

/* v58: richer Out member context and differentiated On invitation records. */
.out-person-disclosure {
  grid-column: 1 / -1;
  min-width: 0;
  border: 1px solid rgba(33, 100, 232, 0.14);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.82);
  overflow: hidden;
}

.event-person-row > .out-person-disclosure {
  margin-left: 45px;
}

.out-person-disclosure > summary {
  min-height: 44px;
  list-style: none;
  padding: 8px 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  color: #263750;
  cursor: pointer;
  font-size: 0.76rem;
  font-weight: 880;
}

.out-person-disclosure > summary::-webkit-details-marker {
  display: none;
}

.out-person-disclosure > summary:focus-visible {
  outline: 3px solid rgba(33, 100, 232, 0.22);
  outline-offset: -3px;
}

.out-person-disclosure-action {
  flex: 0 0 auto;
  min-width: 54px;
  display: inline-flex;
  justify-content: flex-end;
  align-items: center;
  gap: 6px;
  color: var(--blue-dark);
  font-size: 0.7rem;
}

.out-person-disclosure-action::after {
  content: "⌄";
  font-size: 0.9rem;
  line-height: 1;
  transform: translateY(-1px);
}

.out-person-disclosure .when-open,
.completed-plan-toggle .when-open {
  display: none;
}

.out-person-disclosure[open] .when-closed,
.confirmed-plan-card.is-completed[open] .completed-plan-toggle .when-closed {
  display: none;
}

.out-person-disclosure[open] .when-open,
.confirmed-plan-card.is-completed[open] .completed-plan-toggle .when-open {
  display: inline;
}

.out-person-disclosure[open] .out-person-disclosure-action::after {
  content: "⌃";
  transform: translateY(2px);
}

.out-person-card-body {
  border-top: 1px solid rgba(33, 100, 232, 0.11);
  background: #f8faff;
  padding: 9px 10px 10px;
}

.out-person-card-body > p {
  color: #263750;
  font-size: 0.78rem;
  font-weight: 690;
  line-height: 1.38;
}

.out-person-card-body .member-card-words {
  margin-top: 7px;
}

.out-person-yes {
  margin-top: 8px;
  border-inline-start: 3px solid rgba(33, 100, 232, 0.42);
  border-radius: 0 9px 9px 0;
  background: white;
  padding: 7px 8px;
  display: grid;
  gap: 3px;
}

.out-person-yes strong {
  color: var(--blue-dark);
  font-size: 0.67rem;
  font-weight: 900;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.out-person-yes span {
  color: #344054;
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.32;
}

.out-person-card-body > small {
  display: block;
  margin-top: 7px;
  color: #667085;
  font-size: 0.67rem;
  font-weight: 700;
  line-height: 1.3;
}

#confirmedPlans,
#completedPlans {
  gap: 12px;
}

.confirmed-plan-card {
  --on-accent: #0f766e;
  --on-soft: #edf9f5;
  --on-deep: #0b625b;
}

.confirmed-plan-card.category-eat-drink {
  --on-accent: #b4452a;
  --on-soft: #fff2ec;
  --on-deep: #8f321f;
}

.confirmed-plan-card.category-attend-specific,
.confirmed-plan-card.category-learn-make {
  --on-accent: #2164e8;
  --on-soft: #edf4ff;
  --on-deep: #174da8;
}

.confirmed-plan-card.category-walk-explore,
.confirmed-plan-card.category-relax-reset {
  --on-accent: #5b4be0;
  --on-soft: #f1efff;
  --on-deep: #4638b5;
}

.confirmed-plan-card.category-play-do,
.confirmed-plan-card.category-excursions {
  --on-accent: #a15c12;
  --on-soft: #fff5e8;
  --on-deep: #7a430b;
}

.confirmed-plan-card.is-upcoming {
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--on-accent) 30%, white);
  border-top: 5px solid var(--on-accent);
  border-radius: 18px;
  background: white;
  padding: 0 0 12px;
  box-shadow: 0 16px 36px rgba(20, 31, 54, 0.12);
}

.confirmed-plan-card.is-completed > summary .event-category-icon {
  width: 42px;
  height: 42px;
  border-radius: 13px;
  background: white;
  color: var(--on-deep);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--on-accent) 22%, white);
}

.confirmed-plan-card.is-completed > summary .event-category-icon svg {
  width: 23px;
  height: 23px;
}

.on-ready-strip {
  margin: 11px 12px 0;
  border: 1px solid color-mix(in srgb, var(--on-accent) 18%, white);
  border-radius: 13px;
  background: #fbfdfc;
  padding: 9px 10px;
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
}

.on-ready-strip > span {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--on-accent);
  color: white;
  display: grid;
  place-items: center;
  font-size: 0.78rem;
  font-weight: 950;
}

.on-ready-strip strong,
.on-ready-strip small {
  display: block;
}

.on-ready-strip strong {
  color: var(--ink);
  font-size: 0.8rem;
}

.on-ready-strip small {
  margin-top: 2px;
  color: #526079;
  font-size: 0.7rem;
  font-weight: 700;
}

.confirmed-plan-card.is-upcoming .confirmed-person-summary {
  margin: 11px 12px 0;
}

.confirmed-person-summary {
  border: 1px solid color-mix(in srgb, var(--on-accent) 16%, white);
  border-top: 1px solid color-mix(in srgb, var(--on-accent) 16%, white);
  border-radius: 14px;
  background: white;
  padding: 9px;
  grid-template-columns: 48px minmax(0, 1fr);
}

.confirmed-person-summary img {
  width: 48px;
  height: 48px;
  border-radius: 15px;
  border: 2px solid var(--on-soft);
}

.on-counterpart-kicker {
  color: var(--on-deep) !important;
  font-size: 0.62rem !important;
  font-weight: 950 !important;
  letter-spacing: 0.05em;
  line-height: 1 !important;
  text-transform: uppercase;
}

.confirmed-person-summary strong {
  margin-top: 4px;
  font-size: 0.98rem;
}

/* Mutual approved-member context inside upcoming On records. */
.on-counterpart-profile {
  grid-column: 1 / -1;
  min-width: 0;
  margin-top: 2px;
  border-top: 1px solid color-mix(in srgb, var(--on-accent) 15%, white);
  padding-top: 10px;
}

.on-counterpart-profile-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 4px 10px;
}

.on-counterpart-profile-head strong {
  margin: 0;
  color: var(--ink);
  font-size: 0.82rem;
}

.on-counterpart-profile-head span {
  margin: 0;
  color: var(--on-deep);
  font-size: 0.63rem;
  font-weight: 900;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.on-counterpart-intro {
  margin: 6px 0 0;
  color: #344054;
  font-size: 0.78rem;
  font-weight: 680;
  line-height: 1.38;
}

.on-counterpart-profile .member-card-words {
  margin-top: 8px;
}

.on-counterpart-profile .member-card-words span {
  background: var(--on-soft);
  color: var(--on-deep);
}

.on-counterpart-yes {
  margin-top: 8px;
  border-inline-start: 3px solid color-mix(in srgb, var(--on-accent) 55%, white);
  padding-inline-start: 8px;
  display: grid;
  gap: 3px;
}

.on-counterpart-yes strong {
  margin: 0;
  color: var(--on-deep);
  font-size: 0.66rem;
  font-weight: 900;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.on-counterpart-yes span {
  margin: 0;
  color: #344054;
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.34;
}

.on-counterpart-profile > small {
  display: block;
  margin-top: 8px;
  color: #667085;
  font-size: 0.66rem;
  font-weight: 700;
  line-height: 1.32;
}

.on-plan-details,
.on-contact-panel {
  margin: 12px 12px 0;
}

.on-plan-details {
  border-top: 1px solid rgba(17, 24, 39, 0.08);
  padding-top: 11px;
}

.on-section-heading strong,
.on-section-heading span {
  display: block;
}

.on-section-heading strong {
  color: var(--ink);
  font-size: 0.82rem;
}

.on-section-heading span {
  margin-top: 2px;
  color: #667085;
  font-size: 0.7rem;
  font-weight: 700;
  line-height: 1.3;
}

.confirmed-plan-card .confirmed-detail-grid {
  margin-top: 8px;
}

.confirmed-plan-card .confirmed-detail-grid > div {
  border: 1px solid color-mix(in srgb, var(--on-accent) 13%, white);
  background: var(--on-soft);
}

.confirmed-plan-card .confirmed-detail-grid dt {
  color: var(--on-deep);
}

.on-contact-panel {
  border: 1px solid color-mix(in srgb, var(--on-accent) 20%, white);
  border-radius: 15px;
  background: var(--on-soft);
  padding: 10px;
}

.on-contact-panel .confirmed-contact-actions {
  margin-top: 8px;
}

.on-contact-panel .confirmed-contact-actions a {
  border-color: color-mix(in srgb, var(--on-accent) 20%, white);
  background: white;
}

.on-contact-panel .confirmed-contact-actions span {
  color: var(--on-deep);
}

.on-contact-panel .confirmed-privacy-note strong {
  color: var(--on-deep);
}

.confirmed-plan-card.is-completed {
  border: 1px solid rgba(17, 24, 39, 0.11);
  border-inline-start: 5px solid var(--on-accent);
  border-radius: 16px;
  background: #fbfcfd;
  padding: 0;
  overflow: hidden;
}

.confirmed-plan-card.is-completed > summary {
  min-height: 84px;
  padding: 10px;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
}

.confirmed-plan-card.is-completed > summary:focus-visible {
  outline: 3px solid rgba(33, 100, 232, 0.22);
  outline-offset: -3px;
}

.completed-plan-toggle {
  color: #526079;
  font-size: 0.66rem;
  font-weight: 850;
  white-space: nowrap;
}

.confirmed-plan-card.is-completed[open] > summary {
  border-bottom-color: color-mix(in srgb, var(--on-accent) 18%, white);
  background: var(--on-soft);
  padding-bottom: 10px;
}

.confirmed-plan-card.is-completed .completed-plan-details {
  padding: 0 11px 11px;
}

.confirmed-plan-card.is-completed .confirmed-person-summary,
.confirmed-plan-card.is-completed .on-plan-details,
.confirmed-plan-card.is-completed .on-contact-panel {
  margin-right: 0;
  margin-left: 0;
}

@media (max-width: 420px) {
  .event-person-row > .out-person-disclosure {
    margin-left: 0;
  }

  .confirmed-plan-card.is-completed > summary {
    grid-template-columns: 38px minmax(0, 1fr) auto;
    gap: 8px;
  }

  .completed-plan-toggle {
    font-size: 0.62rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .confirmed-plan-card,
  .out-person-disclosure-action::after {
    animation: none;
    transition: none;
  }
}

/* v59: searchable full-catalog town picker for Create Invite. */
.invite-essential-grid .invite-town-field {
  grid-column: 1 / -1;
}

.invite-town-field {
  position: relative;
  scroll-margin-top: 112px;
}

.invite-town-value {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  border: 0 !important;
  white-space: nowrap !important;
}

.invite-town-picker {
  min-width: 0;
  border: 1px solid rgba(33, 100, 232, 0.2);
  border-radius: 16px;
  background: white;
  overflow: hidden;
  box-shadow: 0 8px 20px rgba(20, 31, 54, 0.05);
}

.invite-town-picker > summary {
  min-height: 72px;
  list-style: none;
  padding: 10px 12px;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  cursor: pointer;
}

.invite-town-picker > summary::-webkit-details-marker {
  display: none;
}

.invite-town-picker > summary:focus-visible {
  outline: 3px solid rgba(33, 100, 232, 0.24);
  outline-offset: -3px;
}

.invite-town-picker[open] > summary {
  border-bottom: 1px solid rgba(33, 100, 232, 0.14);
  background: #f8faff;
}

.invite-town-mark {
  width: 38px;
  height: 38px;
  border-radius: 12px;
  background: #edf4ff;
  color: var(--blue-dark);
  display: grid;
  place-items: center;
}

.invite-town-mark svg {
  width: 21px;
  height: 21px;
}

.invite-town-summary-copy {
  min-width: 0;
}

.invite-town-summary-copy strong,
.invite-town-summary-copy small {
  display: block;
}

.invite-town-summary-copy strong {
  color: var(--ink);
  font-size: 1rem;
  line-height: 1.15;
}

.invite-town-summary-copy small {
  margin-top: 3px;
  color: #667085;
  font-size: 0.72rem;
  font-weight: 700;
  line-height: 1.2;
}

.invite-town-summary-action {
  min-width: 54px;
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  color: var(--blue-dark);
  font-size: 0.72rem;
  font-weight: 900;
}

.invite-town-summary-action::after {
  content: "⌄";
  font-size: 0.95rem;
  line-height: 1;
  transform: translateY(-1px);
}

.invite-town-picker .when-open {
  display: none;
}

.invite-town-picker[open] .when-closed {
  display: none;
}

.invite-town-picker[open] .when-open {
  display: inline;
}

.invite-town-picker[open] .invite-town-summary-action::after {
  content: "⌃";
  transform: translateY(2px);
}

.invite-town-picker-body {
  background: #fbfcff;
  padding: 11px;
  display: grid;
  gap: 10px;
}

.invite-town-search {
  gap: 5px;
}

.invite-town-search > span {
  color: #263750;
  font-size: 0.75rem;
  font-weight: 900;
}

.invite-town-search input {
  min-height: 46px;
  height: 46px;
  border-color: rgba(33, 100, 232, 0.24);
  background: white;
}

.invite-town-search small {
  color: #667085;
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 1.25;
}

.invite-town-options {
  max-height: 330px;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  display: grid;
  gap: 11px;
  padding-right: 2px;
}

.invite-town-county {
  display: grid;
  gap: 6px;
}

.invite-town-county h3 {
  position: sticky;
  top: 0;
  z-index: 1;
  background: #fbfcff;
  color: #526079;
  padding: 3px 2px;
  font-size: 0.65rem;
  font-weight: 950;
  letter-spacing: 0.05em;
  line-height: 1;
  text-transform: uppercase;
}

.invite-town-county-options {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 6px;
}

.invite-town-option {
  width: 100%;
  min-width: 0;
  min-height: 50px;
  border: 1px solid rgba(17, 24, 39, 0.1);
  border-radius: 12px;
  background: white;
  color: var(--ink);
  padding: 8px 9px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 24px;
  align-items: center;
  gap: 8px;
  text-align: left;
  box-shadow: none;
}

.invite-town-option strong,
.invite-town-option small {
  display: block;
}

.invite-town-option strong {
  font-size: 0.82rem;
  line-height: 1.15;
}

.invite-town-option small {
  margin-top: 3px;
  color: #667085;
  font-size: 0.65rem;
  font-weight: 700;
  line-height: 1.2;
}

.invite-town-option:hover,
.invite-town-option:focus-visible {
  border-color: rgba(33, 100, 232, 0.35);
  background: #f5f8ff;
}

.invite-town-option:focus-visible {
  outline: 3px solid rgba(33, 100, 232, 0.2);
  outline-offset: 1px;
}

.invite-town-option.is-selected {
  border-color: rgba(33, 100, 232, 0.4);
  background: #edf4ff;
}

.invite-town-option-check {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #e8edf5;
  color: var(--blue-dark);
  display: grid;
  place-items: center;
  font-size: 0.72rem;
  font-weight: 950;
}

.invite-town-option.is-selected .invite-town-option-check {
  background: var(--blue);
  color: white;
}

.invite-town-no-results {
  border: 1px dashed rgba(33, 100, 232, 0.24);
  border-radius: 12px;
  background: white;
  color: #526079;
  padding: 12px;
  font-size: 0.76rem;
  font-weight: 700;
  line-height: 1.35;
}

@media (min-width: 901px) {
  body.is-prototype-desktop .invite-town-county-options {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 390px) {
  .invite-town-picker > summary {
    grid-template-columns: 34px minmax(0, 1fr) auto;
    padding-inline: 9px;
    gap: 8px;
  }

  .invite-town-mark {
    width: 34px;
    height: 34px;
  }

  .invite-town-summary-action {
    min-width: 48px;
    font-size: 0.68rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .invite-town-summary-action::after {
    transition: none;
  }
}

/* v64: matching invitations use one full-width list column on desktop. */
@media (min-width: 901px) {
  body.is-prototype-desktop #findView .event-section {
    max-width: 820px;
    grid-template-columns: minmax(0, 1fr);
    grid-auto-flow: row;
  }

  body.is-prototype-desktop #findView .open-now-panel,
  body.is-prototype-desktop #findView .incoming-priority-panel,
  body.is-prototype-desktop #findView .find-results,
  body.is-prototype-desktop #findView .readiness-state-card {
    grid-column: 1;
  }

  body.is-prototype-desktop #findView .incoming-priority-panel {
    display: grid;
    margin-top: 0;
  }

  body.is-prototype-desktop #findView .incoming-response-stack {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.is-prototype-desktop #findView .incoming-priority-section,
  body.is-prototype-desktop #findView .incoming-waiting-section,
  body.is-prototype-desktop #findView .find-controls-panel {
    grid-column: auto;
    grid-row: auto;
    margin-top: 0;
  }

  body.is-prototype-desktop #findView .find-controls-panel {
    position: static;
    padding: 0;
  }

  body.is-prototype-desktop #findResults {
    width: min(760px, 100%);
    margin-left: auto;
    margin-right: auto;
  }
}

/* v66: one calm Invitation record system across every In state. */
.find-invite-list {
  border-color: var(--line);
  border-radius: 14px;
  box-shadow: none;
}

.incoming-invite-record {
  --incoming-category-accent: var(--blue);
  border: 1px solid var(--line);
  border-radius: 14px;
  background: white;
  box-shadow: none;
  padding: 11px;
}

.incoming-invite-record.is-action-record,
.incoming-invite-record.is-waiting-record {
  border-color: var(--line);
  background: white;
}

.find-event-card.incoming-invite-record {
  min-height: 0;
  border: 0;
  border-bottom: 1px solid var(--line);
  border-radius: 0;
  background: white;
  padding: 12px;
  box-shadow: none;
}

.find-event-card.incoming-invite-record:last-child {
  border-bottom: 0;
}

.find-event-card.incoming-invite-record:hover,
.find-event-card.incoming-invite-record:focus-within {
  background: #fcfcfd;
}

.incoming-invite-identity,
.incoming-invite-identity.is-action,
.incoming-invite-identity.is-waiting,
.incoming-invite-identity.is-match {
  grid-template-columns: 38px minmax(0, 1fr);
  align-items: start;
  column-gap: 10px;
  row-gap: 7px;
  border: 0;
  border-bottom: 1px solid var(--line);
  border-radius: 0;
  background: transparent;
  padding: 0 0 10px;
}

.incoming-invite-identity .event-category-icon {
  grid-row: 1 / span 2;
  width: 38px;
  height: 38px;
  border-radius: 12px;
}

.incoming-invite-identity .event-category-icon svg {
  width: 21px;
  height: 21px;
}

.incoming-invite-identity-copy {
  gap: 3px;
}

.incoming-invite-identity-copy > span {
  color: #526079;
  font-size: 0.6rem;
  font-weight: 900;
  letter-spacing: 0.055em;
}

.incoming-invite-identity-copy strong {
  font-size: 0.98rem;
  line-height: 1.16;
}

.incoming-invite-identity-copy small {
  color: var(--muted);
  font-size: 0.73rem;
  font-weight: 720;
}

.incoming-invite-state-group {
  grid-column: 2;
  gap: 5px;
}

.incoming-invite-state-pill,
.incoming-invite-status-pill {
  padding: 4px 7px;
  font-size: 0.61rem;
  font-weight: 860;
}

.incoming-invite-identity.is-match .incoming-invite-state-pill {
  background: #eef2f7;
  color: #344054;
}

.incoming-invite-identity.is-action .incoming-invite-state-pill {
  background: #fff0d5;
  color: #80540d;
}

.incoming-invite-identity.is-waiting .incoming-invite-state-pill {
  background: #eaf1ff;
  color: var(--blue-dark);
}

.incoming-invite-identity.is-match .incoming-invite-status-pill,
.incoming-invite-identity.is-action .incoming-invite-status-pill,
.incoming-invite-identity.is-waiting .incoming-invite-status-pill {
  background: #f2f4f7;
  color: #526079;
  box-shadow: none;
}

.invite-record-host {
  min-width: 0;
  margin-top: 9px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px 10px;
}

.invite-record-host .host-name-row {
  min-width: 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 5px;
}

.invite-record-host .host-name-row small {
  color: var(--muted);
  font-size: 0.62rem;
  font-weight: 850;
  letter-spacing: 0.045em;
  text-transform: uppercase;
}

.invite-record-host .host-name-row strong {
  font-size: 0.82rem;
}

.invite-record-words {
  min-width: 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 5px;
  color: #526079;
  font-size: 0.68rem;
  font-weight: 740;
}

.invite-record-words span + span::before {
  content: "·";
  margin-right: 5px;
  color: #98a2b3;
}

.invite-record-summary .event-plan-note {
  margin: 9px 0 0;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  font-size: 0.82rem;
  line-height: 1.35;
}

.invite-record-facts {
  margin-top: 8px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 5px;
}

.invite-record-facts span {
  border-radius: 999px;
  background: #f2f4f7;
  color: #475467;
  padding: 4px 7px;
  font-size: 0.65rem;
  font-weight: 760;
}

.find-event-detail-row {
  min-height: 40px;
  margin-top: 9px;
  border-top: 1px solid var(--line);
  border-radius: 0;
  background: transparent;
  padding: 9px 0 0;
}

.find-event-detail-row button {
  background: transparent;
  box-shadow: inset 0 0 0 1px rgba(33, 100, 232, 0.16);
}

.find-event-action-row {
  border-top: 1px solid var(--line);
  margin-top: 9px;
  padding-top: 9px;
}

.incoming-invite-record .host-preview {
  margin: 9px 0 0;
  border: 0;
  border-bottom: 1px solid var(--line);
  border-radius: 0;
  background: transparent;
  padding: 0 0 9px;
  box-shadow: none;
}

.incoming-invite-record .response-detail {
  margin-top: 9px;
}

@media (min-width: 901px) {
  body.is-prototype-desktop .incoming-invite-identity,
  body.is-prototype-desktop .incoming-invite-identity.is-action,
  body.is-prototype-desktop .incoming-invite-identity.is-waiting,
  body.is-prototype-desktop .incoming-invite-identity.is-match {
    grid-template-columns: 38px minmax(0, 1fr) auto;
    align-items: center;
  }

  body.is-prototype-desktop .incoming-invite-identity .event-category-icon {
    grid-row: 1;
  }

  body.is-prototype-desktop .incoming-invite-state-group {
    grid-column: 3;
    justify-content: flex-end;
  }
}

/* v67: one Invitation presentation system across In, Out, and On. */
.invite-record {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: white;
  padding: 11px;
  box-shadow: none;
}

.invite-record-identity,
.invite-record-identity.is-match,
.invite-record-identity.is-action,
.invite-record-identity.is-waiting,
.invite-record-identity.is-out,
.invite-record-identity.is-on,
.invite-record-identity.is-past {
  min-width: 0;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  align-items: start;
  column-gap: 10px;
  row-gap: 7px;
  border: 0;
  border-bottom: 1px solid var(--line);
  border-radius: 0;
  background: transparent;
  padding: 0 0 10px;
}

.invite-record-identity .event-category-icon {
  grid-row: 1 / span 2;
  width: 38px;
  height: 38px;
  border-radius: 12px;
}

.invite-record-identity .event-category-icon svg {
  width: 21px;
  height: 21px;
}

.invite-record-identity-copy {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.invite-record-identity-copy > span {
  color: #526079;
  font-size: 0.6rem;
  font-weight: 900;
  letter-spacing: 0.055em;
  line-height: 1;
  text-transform: uppercase;
}

.invite-record-identity-copy strong {
  color: var(--ink);
  font-size: 0.98rem;
  font-weight: 900;
  line-height: 1.16;
}

.invite-record-identity-copy small {
  color: var(--muted);
  font-size: 0.73rem;
  font-weight: 720;
  line-height: 1.2;
}

.invite-record-state-group {
  grid-column: 2;
  min-width: 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 5px;
}

.invite-record-state-pill,
.invite-record-status-pill {
  border-radius: 999px;
  padding: 4px 7px;
  font-size: 0.61rem;
  font-weight: 860;
  line-height: 1;
}

.invite-record-identity.is-match .invite-record-state-pill,
.invite-record-identity.is-past .invite-record-state-pill {
  background: #eef2f7;
  color: #344054;
}

.invite-record-identity.is-action .invite-record-state-pill {
  background: #fff0d5;
  color: #80540d;
}

.invite-record-identity.is-waiting .invite-record-state-pill,
.invite-record-identity.is-out .invite-record-state-pill {
  background: #eaf1ff;
  color: var(--blue-dark);
}

.invite-record-identity.is-on .invite-record-state-pill {
  background: #dff7ee;
  color: var(--green-dark);
}

.invite-record-status-pill {
  background: #f2f4f7;
  color: #526079;
  box-shadow: none;
}

#homeView .action-queue-section,
#onView .confirmed-plans-section,
#onView .completed-plans-section {
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 0;
}

#homeView .section-head .quiet-pill,
#onView .section-head .quiet-pill {
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--muted);
  box-shadow: none;
  padding: 0;
  font-size: 0.7rem;
}

.work-row.invite-record {
  display: block;
  border: 1px solid var(--line);
  background: white;
  padding: 11px;
  box-shadow: none;
}

.work-row.invite-record.is-question,
.work-row.invite-record.is-open-response,
.work-row.invite-record.is-selection,
.work-row.invite-record.is-answer {
  border-color: var(--line);
  border-inline-start-width: 1px;
  background: white;
}

.work-row-body {
  min-width: 0;
  margin-top: 9px;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 9px;
  align-items: start;
}

.work-row-body.has-photo {
  grid-template-columns: 40px minmax(0, 1fr);
}

.work-row-body .work-row-photo {
  width: 40px;
  height: 40px;
  border-radius: 12px;
}

.work-row-body .work-row-main h3 {
  margin-top: 3px;
  font-size: 0.92rem;
}

.work-row-body .work-row-main p,
.work-row-body .work-row-main small {
  font-size: 0.76rem;
  line-height: 1.3;
}

.work-row.invite-record .work-row-side {
  min-width: 0;
  margin-top: 9px;
  border-top: 1px solid var(--line);
  padding-top: 9px;
}

.out-invite-record .out-person-disclosure {
  margin: 9px 0 0;
  border: 0;
  border-top: 1px solid var(--line);
  border-radius: 0;
  background: transparent;
}

.out-invite-record .out-person-disclosure > summary {
  padding: 0;
}

.out-invite-record .out-person-card-body {
  border-top: 1px solid var(--line);
  background: transparent;
  padding: 9px 0 0;
}

.out-invite-record .out-person-yes {
  border: 0;
  border-radius: 10px;
  background: #f6f7f9;
  padding: 8px;
}

.plan-management-card.invite-record {
  padding: 11px;
}

.invite-record-status-copy {
  margin: 9px 0 0;
  color: #475467;
  font-size: 0.78rem;
  font-weight: 760;
  line-height: 1.3;
}

.plan-management-card .event-person-list {
  gap: 0;
  margin-top: 9px;
}

.plan-management-card .event-person-row,
.plan-management-card .event-person-row.is-request,
.plan-management-card .event-person-row.is-find-request,
.plan-management-card .event-person-row.is-picked,
.plan-management-card .event-person-row.is-confirmed-unlocked {
  border: 0;
  border-top: 1px solid var(--line);
  border-radius: 0;
  background: transparent;
  padding: 10px 0;
  box-shadow: none;
}

.plan-management-card .host-clarification-panel {
  border: 0;
  border-top: 1px solid var(--line);
  border-radius: 0;
  background: transparent;
  padding: 10px 0;
}

.on-invite-record.confirmed-plan-card.is-upcoming,
.on-invite-record.confirmed-plan-card.is-completed {
  overflow: hidden;
  border: 1px solid var(--line);
  border-top: 1px solid var(--line);
  border-inline-start: 1px solid var(--line);
  border-radius: 14px;
  background: white;
  padding: 11px;
  box-shadow: none;
}

.on-invite-record .on-ready-strip {
  margin: 9px 0 0;
  border: 0;
  border-bottom: 1px solid var(--line);
  border-radius: 0;
  background: transparent;
  padding: 0 0 9px;
}

.on-invite-record .on-ready-strip > span {
  background: var(--green);
}

.on-invite-record .confirmed-person-summary {
  margin: 9px 0 0;
  border: 0;
  border-bottom: 1px solid var(--line);
  border-radius: 0;
  background: transparent;
  padding: 0 0 9px;
}

.on-invite-record .confirmed-person-summary img {
  width: 40px;
  height: 40px;
  border: 1px solid var(--line);
  border-radius: 12px;
}

.on-invite-record .on-counterpart-profile {
  border-top-color: var(--line);
}

.on-invite-record .on-counterpart-profile .member-card-words span {
  background: #f2f4f7;
  color: #344054;
}

.on-invite-record .on-counterpart-yes {
  border: 0;
  border-radius: 10px;
  background: #f6f7f9;
  padding: 8px;
}

.on-invite-record .on-plan-details,
.on-invite-record .on-contact-panel {
  margin: 9px 0 0;
}

.on-invite-record .on-plan-details {
  border-top: 0;
  border-bottom: 1px solid var(--line);
  padding: 0 0 9px;
}

.on-invite-record .confirmed-detail-grid > div {
  border: 0;
  background: #f2f4f7;
}

.on-invite-record .confirmed-detail-grid dt {
  color: #526079;
}

.on-invite-record .on-contact-panel {
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 0;
}

.on-invite-record .on-contact-panel .confirmed-contact-actions a {
  border-color: var(--line);
  background: white;
}

.on-invite-record.confirmed-plan-card.is-completed > summary {
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 9px;
  padding: 0;
}

.completed-private-cue {
  min-width: 128px;
  border: 1px solid rgba(49, 92, 184, 0.16);
  border-radius: 11px;
  background: #f5f7fc;
  padding: 7px 9px;
  display: grid;
  gap: 2px;
}

.completed-private-cue strong {
  color: #344054;
  font-size: 0.68rem;
  font-weight: 850;
}

.completed-private-cue small {
  color: #667085;
  font-size: 0.62rem;
  font-weight: 680;
}

.on-invite-record.confirmed-plan-card.is-completed > summary .invite-record-identity {
  width: 100%;
  border-bottom: 0;
  padding-bottom: 0;
}

.on-invite-record.confirmed-plan-card.is-completed[open] > summary {
  border-bottom: 1px solid var(--line);
  background: transparent;
  padding-bottom: 10px;
}

.on-invite-record.confirmed-plan-card.is-completed .completed-plan-details {
  padding: 0;
}

.on-invite-record.confirmed-plan-card.is-completed[open] .completed-plan-details {
  padding-top: 1px;
}

.on-invite-record .completed-plan-toggle {
  color: var(--blue-dark);
  font-size: 0.66rem;
  font-weight: 850;
}

@media (max-width: 420px) {
  .on-invite-record .confirmed-contact-actions {
    grid-template-columns: minmax(0, 1fr);
  }

  .on-invite-record.confirmed-plan-card.is-completed > summary {
    grid-template-columns: minmax(0, 1fr);
  }

  .completed-private-cue {
    width: 100%;
    min-width: 0;
  }

  .on-invite-record .completed-plan-toggle {
    justify-self: end;
  }
}

@media (min-width: 901px) {
  body.is-prototype-desktop .invite-record-identity {
    grid-template-columns: 38px minmax(0, 1fr) auto;
    align-items: center;
  }

  body.is-prototype-desktop .invite-record-identity .event-category-icon {
    grid-row: 1;
  }

  body.is-prototype-desktop .invite-record-state-group {
    grid-column: 3;
    justify-content: flex-end;
  }
}

/* v68: a stable visual signature differentiates each invitation in every state. */
.invite-record-identity {
  position: relative;
  border-bottom-color: color-mix(in srgb, var(--invite-accent) 22%, var(--line));
}

.invite-record-identity::after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 48px;
  width: 58px;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--invite-accent) 0 68%, color-mix(in srgb, var(--invite-accent) 34%, white) 68% 100%);
}

.invite-record-identity .event-category-icon,
.invite-detail-hero.invitation-visual-surface .event-category-icon {
  color: var(--invite-accent-deep);
  background: var(--invite-accent-soft);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--invite-accent) 22%, white);
}

.invite-record-category,
.invite-detail-category,
.notice-card-label {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
}

.invite-record-category > span:last-child,
.invite-detail-category > span:last-child,
.notice-card-label > span:last-child {
  min-width: 0;
}

.invite-record-category > span:last-child,
.invite-detail-category > span:last-child {
  color: var(--invite-accent-deep);
}

.invite-signature-mark {
  flex: 0 0 auto;
  width: 22px;
  height: 10px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: center;
  gap: 2px;
}

.invite-signature-mark i {
  width: 100%;
  height: 5px;
  display: block;
  border-radius: 999px;
  background: var(--invite-accent);
}

.invite-signature-mark.is-rhythm i:nth-child(1) {
  height: 4px;
}

.invite-signature-mark.is-rhythm i:nth-child(2) {
  height: 10px;
}

.invite-signature-mark.is-rhythm i:nth-child(3) {
  height: 7px;
}

.invite-signature-mark.is-steps {
  align-items: end;
}

.invite-signature-mark.is-steps i:nth-child(1) {
  height: 3px;
}

.invite-signature-mark.is-steps i:nth-child(2) {
  height: 6px;
}

.invite-signature-mark.is-steps i:nth-child(3) {
  height: 10px;
}

.invite-signature-mark.is-pulse i:nth-child(1),
.invite-signature-mark.is-pulse i:nth-child(3) {
  height: 3px;
}

.invite-signature-mark.is-pulse i:nth-child(2) {
  height: 10px;
  border-radius: 3px;
}

.invite-signature-mark.is-split i:nth-child(1) {
  height: 9px;
  border-radius: 6px 2px 2px 6px;
}

.invite-signature-mark.is-split i:nth-child(2) {
  height: 4px;
}

.invite-signature-mark.is-split i:nth-child(3) {
  height: 9px;
  border-radius: 2px 6px 6px 2px;
}

.invite-signature-mark.is-orbit i {
  width: 6px;
  height: 6px;
  justify-self: center;
  border-radius: 50%;
}

.invite-signature-mark.is-orbit i:nth-child(2) {
  width: 10px;
  height: 10px;
  background: transparent;
  box-shadow: inset 0 0 0 2px var(--invite-accent);
}

.invite-signature-mark.is-trail {
  align-items: end;
}

.invite-signature-mark.is-trail i:nth-child(1) {
  height: 9px;
}

.invite-signature-mark.is-trail i:nth-child(2) {
  height: 6px;
}

.invite-signature-mark.is-trail i:nth-child(3) {
  height: 3px;
}

.invite-signature-mark.is-spark i:nth-child(1),
.invite-signature-mark.is-spark i:nth-child(3) {
  width: 5px;
  height: 5px;
  justify-self: center;
  border-radius: 50%;
}

.invite-signature-mark.is-spark i:nth-child(2) {
  width: 8px;
  height: 8px;
  justify-self: center;
  border-radius: 2px;
  transform: rotate(45deg);
}

.invite-signature-mark.is-blocks i {
  height: 8px;
  border-radius: 2px;
}

.invite-signature-mark.is-blocks i:nth-child(1) {
  opacity: 0.45;
}

.invite-signature-mark.is-blocks i:nth-child(2) {
  opacity: 0.72;
}

.notice-card.invitation-visual-surface {
  border-color: color-mix(in srgb, var(--invite-accent) 20%, var(--line));
}

.notice-card.invitation-visual-surface .notice-card-label {
  color: var(--invite-accent-deep);
}

.invite-detail-hero.invitation-visual-surface {
  border-bottom: 2px solid color-mix(in srgb, var(--invite-accent) 52%, white);
  padding-bottom: 12px;
}

.invite-detail-hero .invite-detail-category {
  margin-bottom: 5px;
}

@media (max-width: 420px) {
  .invite-record-identity::after {
    width: 46px;
  }

  .invite-signature-mark {
    width: 20px;
  }
}

@media (prefers-contrast: more) {
  .invite-record-identity::after {
    height: 3px;
  }

  .invite-signature-mark i {
    outline: 1px solid var(--invite-accent-deep);
  }
}

/* v69: stronger invitation-level differentiation without changing state language. */
.invite-record[data-invite-signature] {
  position: relative;
  border-color: color-mix(in srgb, var(--invite-accent) 38%, var(--line));
  box-shadow:
    inset 0 4px 0 var(--invite-accent),
    0 6px 16px rgba(20, 31, 54, 0.055);
}

.invite-record[data-invite-signature]:hover,
.invite-record[data-invite-signature]:focus-within {
  border-color: color-mix(in srgb, var(--invite-accent) 58%, var(--line));
  box-shadow:
    inset 0 4px 0 var(--invite-accent),
    0 9px 22px rgba(20, 31, 54, 0.085);
}

.invite-record[data-invite-signature]:not(.is-completed) > .invite-record-identity {
  margin: -7px -7px 0;
  border-radius: 10px 10px 0 0;
  background: linear-gradient(
    108deg,
    var(--invite-accent-soft) 0%,
    color-mix(in srgb, var(--invite-accent-soft) 54%, white) 52%,
    white 100%
  );
  padding: 12px 7px 11px;
}

.invite-record[data-invite-signature] .invite-record-identity::after {
  left: 48px;
  width: 78px;
  height: 3px;
}

.invite-record[data-invite-signature] .event-category-icon {
  box-shadow:
    inset 0 0 0 1px color-mix(in srgb, var(--invite-accent) 35%, white),
    0 3px 8px color-mix(in srgb, var(--invite-accent) 16%, transparent);
}

.invite-record[data-invite-signature] .invite-signature-mark,
.invite-detail-hero[data-invite-signature] .invite-signature-mark,
.notice-card[data-invite-signature] .invite-signature-mark {
  width: 28px;
  height: 12px;
  gap: 3px;
}

.invite-record[data-invite-signature] .invite-signature-mark i,
.invite-detail-hero[data-invite-signature] .invite-signature-mark i,
.notice-card[data-invite-signature] .invite-signature-mark i {
  min-height: 5px;
}

.on-invite-record.is-completed[data-invite-signature] > summary {
  margin: -7px -7px 0;
  border-radius: 10px 10px 0 0;
  background: linear-gradient(
    108deg,
    var(--invite-accent-soft) 0%,
    color-mix(in srgb, var(--invite-accent-soft) 54%, white) 58%,
    white 100%
  );
  padding: 12px 7px 11px;
}

.on-invite-record.is-completed[data-invite-signature] > summary .invite-record-identity {
  margin: 0;
  background: transparent;
  padding: 0;
}

.notice-card.invitation-visual-surface[data-invite-signature] {
  border-color: color-mix(in srgb, var(--invite-accent) 40%, var(--line));
  background: linear-gradient(108deg, var(--invite-accent-soft) 0%, white 70%);
  box-shadow: inset 4px 0 0 var(--invite-accent);
}

.invite-detail-hero.invitation-visual-surface[data-invite-signature] {
  border: 1px solid color-mix(in srgb, var(--invite-accent) 38%, var(--line));
  border-top: 4px solid var(--invite-accent);
  border-radius: 15px;
  background: linear-gradient(108deg, var(--invite-accent-soft) 0%, white 76%);
  padding: 11px;
}

@media (max-width: 420px) {
  .invite-record[data-invite-signature]:not(.is-completed) > .invite-record-identity,
  .on-invite-record.is-completed[data-invite-signature] > summary {
    margin-right: -6px;
    margin-left: -6px;
  }

  .invite-record[data-invite-signature] .invite-signature-mark,
  .invite-detail-hero[data-invite-signature] .invite-signature-mark,
  .notice-card[data-invite-signature] .invite-signature-mark {
    width: 25px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .invite-record[data-invite-signature] {
    transition: none;
  }
}

/* v70: warm editorial invitation system inside an adaptive native-style shell. */
:root {
  --ink: #221e1b;
  --muted: #706861;
  --soft: #f7f3ed;
  --line: rgba(56, 46, 39, 0.13);
  --panel: rgba(255, 253, 249, 0.94);
  --blue: #315cb8;
  --blue-dark: #234184;
  --green: #197c72;
  --green-dark: #0b5b54;
  --coral: #bd5b43;
  --amber: #d9a347;
  --violet: #7959ad;
  --shadow: 0 22px 60px rgba(66, 51, 41, 0.14);
  --soft-shadow: 0 8px 24px rgba(66, 51, 41, 0.08);
  --radius-card: 18px;
  --radius-control: 14px;
}

html,
body {
  background: #f3eee7;
}

body {
  background-image:
    radial-gradient(circle at 12% 0%, rgba(189, 91, 67, 0.08), transparent 30%),
    radial-gradient(circle at 90% 8%, rgba(25, 124, 114, 0.08), transparent 34%),
    linear-gradient(180deg, #f8f4ee 0%, #f1ece5 56%, #ebe8e3 100%);
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", sans-serif;
}

button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--blue) 52%, white);
  outline-offset: 2px;
}

.prototype-device-switch {
  border-color: rgba(56, 46, 39, 0.12);
  background: rgba(250, 247, 242, 0.92);
  box-shadow: 0 8px 24px rgba(66, 51, 41, 0.07);
  backdrop-filter: none;
}

.prototype-device-switch button.is-active {
  background: var(--ink);
}

.prototype-scenario-picker select {
  background: #efeae3;
}

.compose-panel {
  border-color: rgba(56, 46, 39, 0.12);
  background: #fffdfa;
  backdrop-filter: none;
}

.app-nav.is-root-invitations {
  position: sticky;
  top: 0;
  z-index: 60;
  min-height: 58px;
  margin: -2px -4px 12px;
  border-bottom: 1px solid rgba(56, 46, 39, 0.1);
  background: rgba(255, 253, 249, 0.88);
  padding: 4px 6px 7px;
  backdrop-filter: none;
}

.nav-status.is-navigation-title {
  color: var(--ink);
  font-size: 1.16rem;
  font-weight: 760;
  letter-spacing: -0.025em;
}

.avatar-button {
  background: var(--ink);
  box-shadow: 0 7px 18px rgba(34, 30, 27, 0.17);
}

.member-menu,
.sheet-panel {
  border-color: rgba(56, 46, 39, 0.14);
  background: #fffcf7;
}

.member-menu button:hover,
.member-menu button:focus-visible {
  background: #f3eee7;
}

.root-tab svg {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Prototype v79: In / Out / On are top-level categories within Invitations on mobile. */
body.is-prototype-mobile .app-nav.is-root-invitations {
  margin-bottom: 0;
  border-bottom: 0;
}

body.is-prototype-mobile .root-tabs {
  position: sticky;
  top: 58px !important;
  left: auto;
  bottom: auto;
  z-index: 55;
  width: 100%;
  min-height: 48px;
  margin: 0 0 14px;
  transform: none;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  border: 0;
  border-bottom: 1px solid rgba(56, 46, 39, 0.13);
  border-radius: 0;
  background: rgba(255, 253, 249, 0.97);
  padding: 0 4px;
  box-shadow: none;
  backdrop-filter: none;
}

body.is-prototype-mobile .root-tabs[hidden] {
  display: none !important;
}

body.is-prototype-mobile .root-tab {
  position: relative;
  min-height: 48px;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 0;
  border-radius: 0;
  color: #776f69;
  font-size: 0.86rem;
  font-weight: 780;
}

body.is-prototype-mobile .root-tab svg {
  display: none;
}

body.is-prototype-mobile .root-tab.is-active {
  color: var(--blue-dark);
  background: transparent;
  box-shadow: none;
}

body.is-prototype-mobile .root-tab.is-active::after {
  content: "";
  position: absolute;
  right: 14px;
  bottom: 0;
  left: 14px;
  height: 3px;
  border-radius: 3px 3px 0 0;
  background: var(--blue);
}

body.is-prototype-mobile .screen-scroll:has(.root-tabs:not([hidden])) {
  padding-bottom: 32px;
}

.event-card,
.response-card,
.notice-card,
.journey-card,
.readiness-state-card,
.review-summary-card {
  border-color: rgba(56, 46, 39, 0.12);
  border-radius: var(--radius-card);
  background: #fffdfa;
  box-shadow: 0 8px 24px rgba(66, 51, 41, 0.055);
}

.journey-card,
.review-panel,
.preview-panel {
  background: #fffdfa;
}

input,
select,
textarea {
  border-color: rgba(56, 46, 39, 0.16);
  background-color: #fffdfa;
}

.primary-action,
.confirm-button,
.profile-add-action {
  border-radius: var(--radius-control);
  background: var(--blue);
  box-shadow: 0 8px 18px rgba(49, 92, 184, 0.16);
}

.secondary-action,
.inline-action,
.find-event-detail-row button {
  border-color: rgba(49, 92, 184, 0.16);
  background: #f1f4fb;
  color: var(--blue-dark);
}

.invite-record[data-invite-signature] {
  border-color: color-mix(in srgb, var(--invite-accent) 25%, rgba(56, 46, 39, 0.12));
  background: #fffdfa;
  box-shadow:
    inset 0 3px 0 var(--invite-accent),
    0 8px 24px rgba(66, 51, 41, 0.06);
}

.invite-record[data-invite-signature]:hover,
.invite-record[data-invite-signature]:focus-within {
  border-color: color-mix(in srgb, var(--invite-accent) 45%, rgba(56, 46, 39, 0.12));
  box-shadow:
    inset 0 3px 0 var(--invite-accent),
    0 12px 28px rgba(66, 51, 41, 0.09);
}

.invite-record[data-invite-signature]:not(.is-completed) > .invite-record-identity {
  margin: -7px -7px 0;
  border-radius: 14px 14px 0 0;
  background:
    radial-gradient(circle at 88% 12%, color-mix(in srgb, var(--invite-accent) 9%, transparent), transparent 34%),
    linear-gradient(110deg, var(--invite-accent-soft) 0%, color-mix(in srgb, var(--invite-accent-soft) 52%, #fffdfa) 54%, #fffdfa 100%);
  padding: 14px 9px 12px;
}

.invite-record-identity {
  grid-template-columns: 54px minmax(0, 1fr);
  align-items: center;
  gap: 11px;
}

.invite-record-identity::after {
  display: none;
}

.invitation-seal {
  position: relative;
  width: 52px;
  height: 52px;
  flex: 0 0 52px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--invite-accent) 34%, white);
  border-radius: 17px 17px 17px 7px;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.78), transparent 48%),
    var(--invite-accent-soft);
  box-shadow: 0 6px 16px color-mix(in srgb, var(--invite-accent) 14%, transparent);
}

.invitation-seal::before {
  content: "";
  position: absolute;
  width: 28px;
  height: 28px;
  right: -12px;
  top: -12px;
  border: 6px solid color-mix(in srgb, var(--invite-accent) 17%, transparent);
  border-radius: 50%;
}

.invitation-seal .event-category-icon {
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--invite-accent-deep);
  box-shadow: none !important;
}

.invitation-seal .event-category-icon svg {
  width: 25px;
  height: 25px;
}

.invitation-seal .invite-signature-mark {
  position: absolute;
  right: 4px;
  bottom: 4px;
  width: 23px !important;
  height: 13px !important;
  display: grid;
  gap: 1.5px !important;
  border: 1px solid color-mix(in srgb, var(--invite-accent) 28%, white);
  border-radius: 7px;
  background: rgba(255, 253, 249, 0.94);
  padding: 3px;
  box-shadow: 0 2px 5px rgba(56, 46, 39, 0.08);
}

.invitation-seal .invite-signature-mark i {
  min-height: 2px !important;
  max-height: 7px;
}

.invite-record-category,
.invite-detail-category {
  color: var(--invite-accent-deep);
  font-size: 0.67rem;
  font-weight: 860;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

.invite-record-identity-copy > strong,
.invite-detail-hero h2 {
  font-family: ui-serif, "New York", Georgia, serif;
  font-weight: 680;
  letter-spacing: -0.018em;
}

.invite-record-identity-copy > strong {
  margin-top: 2px;
  font-size: 1.12rem;
  line-height: 1.08;
}

.invite-record-identity-copy > small {
  margin-top: 4px;
  color: #736b64;
  line-height: 1.2;
}

.invite-record-state-pill,
.incoming-invite-state-pill,
.invite-record-status-pill,
.incoming-invite-status-pill {
  border: 1px solid color-mix(in srgb, var(--invite-accent) 16%, rgba(56, 46, 39, 0.1));
  background: rgba(255, 253, 249, 0.8);
  color: var(--invite-accent-deep);
}

.find-event-card {
  padding: 11px;
}

.find-event-card .invite-record-host {
  min-height: 42px;
  margin: 0;
  padding: 10px 2px 8px;
}

.find-event-card .find-event-detail-row {
  min-height: 45px;
  margin-top: 0;
  border-top: 1px solid rgba(56, 46, 39, 0.1);
  border-bottom: 1px solid rgba(56, 46, 39, 0.1);
  padding: 7px 1px;
}

.find-event-card .find-event-detail-row.is-action-only {
  justify-content: flex-end;
}

.find-event-card .find-event-detail-row.is-action-only button {
  padding-inline: 13px;
}

.find-event-card .find-event-action-row {
  margin-top: 9px;
}

.find-event-action-row button {
  min-height: 46px;
}

.find-not-now-action {
  background: #f3eee7;
  color: #554d47;
}

.invite-inline-disclosure,
.out-plan-disclosure,
.on-plan-disclosure {
  margin-top: 8px;
  border-top: 1px solid rgba(56, 46, 39, 0.11);
}

.invite-inline-disclosure > summary,
.out-plan-disclosure > summary,
.on-plan-disclosure > summary {
  min-height: 54px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  cursor: pointer;
  list-style: none;
  color: var(--ink);
  padding: 9px 2px;
}

.invite-inline-disclosure > summary::-webkit-details-marker,
.out-plan-disclosure > summary::-webkit-details-marker,
.on-plan-disclosure > summary::-webkit-details-marker {
  display: none;
}

.invite-inline-disclosure > summary > span:first-child,
.out-plan-disclosure > summary > span:first-child,
.on-plan-disclosure > summary > span:first-child {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.invite-inline-disclosure summary small,
.out-plan-disclosure summary small,
.on-plan-disclosure summary small {
  color: var(--muted);
  font-size: 0.75rem;
  font-weight: 650;
  line-height: 1.2;
}

.disclosure-label {
  flex: 0 0 auto;
  color: var(--blue-dark);
  font-size: 0.75rem;
  font-weight: 820;
}

.invite-inline-disclosure[open] .when-closed,
.out-plan-disclosure[open] .when-closed,
.on-plan-disclosure[open] .when-closed {
  display: none;
}

.invite-inline-disclosure:not([open]) .when-open,
.out-plan-disclosure:not([open]) .when-open,
.on-plan-disclosure:not([open]) .when-open {
  display: none;
}

.invite-inline-disclosure-body,
.out-plan-disclosure-body,
.on-plan-disclosure-body {
  border-top: 1px solid rgba(56, 46, 39, 0.09);
  padding-top: 10px;
}

.on-ready-strip {
  margin: 8px 0 0;
  border: 0;
  border-radius: 12px;
  background: #eef7f3;
  padding: 9px;
}

.on-plan-disclosure-body .confirmed-person-summary {
  margin-top: 0;
}

.invite-detail-hero.invitation-visual-surface[data-invite-signature] {
  grid-template-columns: 68px minmax(0, 1fr);
  align-items: center;
  border-top-width: 3px;
  border-radius: 20px;
  background:
    radial-gradient(circle at 88% 12%, color-mix(in srgb, var(--invite-accent) 10%, transparent), transparent 36%),
    linear-gradient(115deg, var(--invite-accent-soft) 0%, #fffdfa 78%);
  padding: 15px;
}

.invite-detail-seal {
  width: 64px;
  height: 64px;
  flex-basis: 64px;
  border-radius: 21px 21px 21px 8px;
}

.invite-detail-seal .event-category-icon svg {
  width: 30px;
  height: 30px;
}

.profile-sheet .sheet-backdrop {
  background: rgba(34, 30, 27, 0.44);
  backdrop-filter: blur(5px);
}

#memberOperationsView .journey-card,
#memberOperationsView .member-operations-task-detail,
#memberOperationsView .member-operations-review-card {
  box-shadow: none;
}

#memberOperationsView .member-operations-command-bar {
  border: 1px solid rgba(56, 46, 39, 0.12);
  background: #f4efe8;
}

#memberOperationsView .member-operations-queue-card,
#memberOperationsView .member-operations-review-card,
#memberOperationsView .member-operations-checklist-card {
  border-radius: 14px;
}

.view-tabs {
  border-color: rgba(56, 46, 39, 0.12);
  background: #f2ede6;
}

.view-tab.is-active {
  background: var(--ink);
  box-shadow: none;
}

.privacy-strip,
.settings-note,
.readiness-note {
  border-color: rgba(25, 124, 114, 0.14);
  background: #f0f6f2;
}

@media (max-width: 420px) {
  .invite-record[data-invite-signature]:not(.is-completed) > .invite-record-identity,
  .on-invite-record.is-completed[data-invite-signature] > summary {
    margin-right: -6px;
    margin-left: -6px;
  }

  .invite-record-identity {
    grid-template-columns: 50px minmax(0, 1fr);
    gap: 9px;
  }

  .invitation-seal {
    width: 48px;
    height: 48px;
    flex-basis: 48px;
    border-radius: 15px 15px 15px 6px;
  }

  .invite-record-state-group {
    grid-column: 2;
    justify-content: flex-start;
  }

  .find-event-card .invite-record-words {
    display: none;
  }

  .out-invite-record .work-row-main > small {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  .out-invite-record .work-row-tags {
    display: none;
  }
}

@media (min-width: 901px) {
  body.is-prototype-desktop .compose-panel {
    border-radius: 28px 28px 0 0;
  }

  body.is-prototype-desktop .screen-scroll:has(.root-tabs:not([hidden])) {
    display: grid;
    grid-template-columns: 96px minmax(0, 1fr);
    grid-auto-flow: row;
    align-content: start;
    column-gap: 24px;
    padding-right: 24px;
    padding-left: 24px;
  }

  body.is-prototype-desktop .screen-scroll:has(.root-tabs:not([hidden])) > .app-nav {
    grid-column: 1 / -1;
    width: 100%;
    max-width: none;
  }

  body.is-prototype-desktop .screen-scroll:has(.root-tabs:not([hidden])) > .root-tabs {
    grid-column: 1;
    align-self: start;
    position: sticky;
    top: 16px;
    width: 96px;
    min-height: 0;
    margin: 0;
    display: grid;
    grid-template-columns: 1fr;
    gap: 6px;
    border: 1px solid rgba(56, 46, 39, 0.12);
    border-radius: 20px;
    background: #f5f0e9;
    padding: 8px;
    box-shadow: none;
  }

  body.is-prototype-desktop .root-tab {
    min-height: 68px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    border-radius: 14px;
    color: #776f69;
    font-size: 0.74rem;
  }

  body.is-prototype-desktop .root-tab.is-active {
    color: var(--blue-dark);
    background: #e9eef9;
    box-shadow: none;
  }

  body.is-prototype-desktop .screen-scroll:has(.root-tabs:not([hidden])) > *:not(.app-nav):not(.root-tabs) {
    grid-column: 2;
    width: 100%;
    max-width: none;
  }

  /* Prototype v108: keep On content beside the desktop invitation rail instead of auto-placing it below. */
  body.is-prototype-desktop .screen-scroll:has(.root-tabs:not([hidden])) > #onView.is-active {
    grid-row: 2;
    align-self: start;
  }

  body.is-prototype-desktop #findView .event-section {
    max-width: none;
  }

  body.is-prototype-desktop .invite-record-identity {
    grid-template-columns: 54px minmax(0, 1fr) auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.001ms !important;
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* v71: cleaner Invitation Seals and larger, more legible member photography. */
.invitation-seal {
  border-radius: 16px;
  background:
    linear-gradient(160deg, rgba(255, 255, 255, 0.86), transparent 58%),
    var(--invite-accent-soft);
  box-shadow: 0 5px 14px color-mix(in srgb, var(--invite-accent) 12%, transparent);
}

.invitation-seal::before {
  width: auto;
  height: 3px;
  inset: 0 7px auto;
  border: 0;
  border-radius: 0 0 999px 999px;
  background: var(--invite-accent);
}

.invitation-seal .event-category-icon {
  transform: translateY(-4px);
}

.invitation-seal .event-category-icon svg {
  width: 27px;
  height: 27px;
}

.invitation-seal .invite-signature-mark,
.invite-record[data-invite-signature] .invitation-seal .invite-signature-mark,
.invite-detail-hero[data-invite-signature] .invitation-seal .invite-signature-mark {
  right: auto;
  bottom: 5px;
  left: 50%;
  width: 26px !important;
  height: 7px !important;
  gap: 2px !important;
  transform: translateX(-50%);
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 0;
  box-shadow: none;
}

.invitation-seal .invite-signature-mark i,
.invite-record[data-invite-signature] .invitation-seal .invite-signature-mark i,
.invite-detail-hero[data-invite-signature] .invitation-seal .invite-signature-mark i {
  min-height: 2px !important;
  max-height: 6px;
  box-shadow: none;
}

.work-row-body.has-photo {
  grid-template-columns: 56px minmax(0, 1fr);
  gap: 12px;
}

.work-row-body .work-row-photo {
  width: 56px;
  height: 56px;
  border: 2px solid #fffdfa;
  border-radius: 17px;
  object-position: center 24%;
  box-shadow: 0 5px 14px rgba(56, 46, 39, 0.14);
}

.host-preview {
  grid-template-columns: 64px minmax(0, 1fr);
  gap: 12px;
}

.host-preview img {
  width: 64px;
  height: 64px;
  border-radius: 18px;
  object-position: center 24%;
}

.on-invite-record .confirmed-person-summary {
  grid-template-columns: 64px minmax(0, 1fr);
  gap: 12px;
}

.on-invite-record .confirmed-person-summary img {
  width: 64px;
  height: 64px;
  border: 2px solid #fffdfa;
  border-radius: 18px;
  object-position: center 24%;
  box-shadow: 0 5px 14px rgba(56, 46, 39, 0.12);
}

.profile-card {
  grid-template-columns: 62px minmax(0, 1fr);
  gap: 12px;
}

.profile-photo {
  width: 62px;
  height: 62px;
  border-radius: 18px;
  object-position: center 24%;
}

.sheet-hero {
  grid-template-columns: 96px minmax(0, 1fr);
}

.sheet-photo {
  width: 96px;
  height: 96px;
  border-radius: 28px;
  object-position: center 24%;
}

.invite-detail-seal .event-category-icon {
  transform: translateY(-5px);
}

.invite-detail-seal .event-category-icon svg {
  width: 32px;
  height: 32px;
}

.invite-detail-seal .invite-signature-mark,
.invite-detail-hero[data-invite-signature] .invite-detail-seal .invite-signature-mark {
  bottom: 7px;
  width: 32px !important;
}

@media (max-width: 420px) {
  .invitation-seal {
    border-radius: 15px;
  }

  .work-row-body.has-photo {
    grid-template-columns: 54px minmax(0, 1fr);
  }

  .work-row-body .work-row-photo {
    width: 54px;
    height: 54px;
    border-radius: 16px;
  }

  .profile-card {
    grid-template-columns: 58px minmax(0, 1fr);
  }

  .profile-photo {
    width: 58px;
    height: 58px;
    border-radius: 17px;
  }
}

/* Prototype v75: viewer-relative saved travel range on every current Invitation. */
.invite-record-identity-copy > .invite-record-travel-range {
  display: block;
  margin-top: 1px;
  color: #52636c;
  font-size: 0.68rem;
  font-weight: 790;
  letter-spacing: 0.005em;
  line-height: 1.2;
}

.area-label-row {
  gap: 0;
}

.area-label-row span {
  border-radius: 0;
  background: transparent;
  padding: 0;
}

.area-label-row span + span::before {
  content: "·";
  margin: 0 6px;
  color: #98a2b3;
}

.area-label-row .area-fit-label {
  background: transparent;
  color: #52636c;
}

@media (min-width: 901px) {
  body.is-prototype-desktop .incoming-response-stack .invite-record-identity {
    grid-template-columns: 54px minmax(0, 1fr);
    align-items: center;
  }

  body.is-prototype-desktop .incoming-response-stack .invite-record-state-group {
    grid-column: 2;
    justify-content: flex-start;
  }
}

/* Prototype v77: optically aligned Invitation Seals and progressive current-member portraits. */
.invite-record-identity,
.invite-record-identity:is(.is-match, .is-action, .is-waiting, .is-out, .is-on, .is-past) {
  grid-template-columns: 52px minmax(0, 1fr);
  align-items: start;
  column-gap: 14px;
}

.invitation-seal {
  align-self: start;
}

.invitation-seal .event-category-icon {
  transform: translateY(-2px);
}

.invitation-seal .event-category-icon svg {
  display: block;
}

.invitation-seal .invite-signature-mark,
.invite-record[data-invite-signature] .invitation-seal .invite-signature-mark {
  bottom: 6px;
  width: 28px !important;
}

.invite-detail-hero.invitation-visual-surface[data-invite-signature] {
  align-items: start;
}

.invite-detail-seal .event-category-icon {
  transform: translateY(-3px);
}

.work-row-body.has-photo {
  grid-template-columns: 80px minmax(0, 1fr);
  gap: 16px;
}

.work-row-body .work-row-photo {
  width: 80px;
  height: 80px;
  border-radius: 22px;
}

.out-invite-record:has(> .out-person-disclosure[open]) .work-row-body.has-photo {
  grid-template-columns: 112px minmax(0, 1fr);
}

.out-invite-record:has(> .out-person-disclosure[open]) .work-row-body .work-row-photo {
  width: 112px;
  height: 112px;
  border-radius: 28px;
}

.event-person-main:has(.event-person-photo:not(.is-hidden)) {
  grid-template-columns: 64px minmax(0, 1fr);
  align-items: start;
  gap: 12px;
}

.event-person-photo:not(.is-hidden) {
  width: 64px;
  height: 64px;
  border: 2px solid #fffdfa;
  border-radius: 18px;
  object-position: center 24%;
  box-shadow: 0 5px 14px rgba(56, 46, 39, 0.12);
}

.event-person-row:has(> .out-person-disclosure[open]) .event-person-main {
  grid-template-columns: 88px minmax(0, 1fr);
}

.event-person-row:has(> .out-person-disclosure[open]) .event-person-photo:not(.is-hidden) {
  width: 88px;
  height: 88px;
  border-radius: 24px;
}

.event-person-row > .out-person-disclosure {
  margin-left: 76px;
}

.event-person-row:has(> .out-person-disclosure[open]) > .out-person-disclosure {
  margin-left: 100px;
}

.host-preview {
  grid-template-columns: 88px minmax(0, 1fr);
  gap: 14px;
}

.host-preview img {
  width: 88px;
  height: 88px;
  border-radius: 24px;
}

.on-invite-record:not(.is-completed) .confirmed-person-summary {
  grid-template-columns: 88px minmax(0, 1fr);
  align-items: start;
  gap: 14px;
}

.on-invite-record:not(.is-completed) .confirmed-person-summary img {
  width: 88px;
  height: 88px;
  border-radius: 24px;
}

.invite-detail-host {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr);
  align-items: start;
  gap: 16px;
  padding: 12px;
}

.invite-detail-host-photo {
  width: 112px;
  height: 112px;
  border: 2px solid #fffdfa;
  border-radius: 28px;
  background: white;
  object-fit: cover;
  object-position: center 24%;
  box-shadow: 0 7px 18px rgba(56, 46, 39, 0.14);
}

.invite-detail-host-copy {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 10px;
}

@media (min-width: 901px) {
  body.is-prototype-desktop .invite-record-identity,
  body.is-prototype-desktop .invite-record-identity:is(.is-match, .is-action, .is-waiting, .is-out, .is-on, .is-past) {
    grid-template-columns: 52px minmax(0, 1fr) auto;
    align-items: start;
  }

  body.is-prototype-desktop .invite-record-state-group {
    align-self: center;
  }

  body.is-prototype-desktop .incoming-response-stack .invite-record-identity,
  body.is-prototype-desktop .incoming-response-stack .invite-record-identity:is(.is-match, .is-action, .is-waiting, .is-out, .is-on, .is-past) {
    grid-template-columns: 52px minmax(0, 1fr);
    align-items: start;
  }

  body.is-prototype-desktop .incoming-response-stack .invite-record-state-group {
    align-self: start;
  }
}

@media (max-width: 420px) {
  .invite-record-identity,
  .invite-record-identity:is(.is-match, .is-action, .is-waiting, .is-out, .is-on, .is-past) {
    grid-template-columns: 48px minmax(0, 1fr);
    column-gap: 12px;
  }

  .work-row-body.has-photo {
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 12px;
  }

  .work-row-body .work-row-photo {
    width: 72px;
    height: 72px;
    border-radius: 20px;
  }

  .out-invite-record:has(> .out-person-disclosure[open]) .work-row-body.has-photo {
    grid-template-columns: 96px minmax(0, 1fr);
  }

  .out-invite-record:has(> .out-person-disclosure[open]) .work-row-body .work-row-photo {
    width: 96px;
    height: 96px;
    border-radius: 26px;
  }

  .event-person-main:has(.event-person-photo:not(.is-hidden)) {
    grid-template-columns: 56px minmax(0, 1fr);
    gap: 10px;
  }

  .event-person-photo:not(.is-hidden) {
    width: 56px;
    height: 56px;
    border-radius: 17px;
  }

  .event-person-row:has(> .out-person-disclosure[open]) .event-person-main {
    grid-template-columns: 72px minmax(0, 1fr);
  }

  .event-person-row:has(> .out-person-disclosure[open]) .event-person-photo:not(.is-hidden) {
    width: 72px;
    height: 72px;
    border-radius: 20px;
  }

  .event-person-row > .out-person-disclosure,
  .event-person-row:has(> .out-person-disclosure[open]) > .out-person-disclosure {
    margin-left: 0;
  }

  .host-preview {
    grid-template-columns: 80px minmax(0, 1fr);
    gap: 12px;
  }

  .host-preview img {
    width: 80px;
    height: 80px;
    border-radius: 22px;
  }

  .on-invite-record:not(.is-completed) .confirmed-person-summary {
    grid-template-columns: 80px minmax(0, 1fr);
    gap: 12px;
  }

  .on-invite-record:not(.is-completed) .confirmed-person-summary img {
    width: 80px;
    height: 80px;
    border-radius: 22px;
  }

  .invite-detail-host {
    grid-template-columns: 96px minmax(0, 1fr);
    gap: 12px;
  }

  .invite-detail-host-photo {
    width: 96px;
    height: 96px;
    border-radius: 26px;
  }
}
/* Prototype v78: Apple-structured Create and settings system, kept in the warm editorial brand. */
:root {
  --control-min: 44px;
  --settings-surface: #fffdfa;
  --settings-group: #f4f0ea;
  --settings-divider: rgba(56, 46, 39, 0.11);
  --settings-blue: #315cb8;
  --settings-green: #197c72;
}

button:active:not(:disabled) {
  transform: scale(0.985);
}

:is(
  #planView,
  #whoView,
  #reviewView,
  #accountView,
  #applicantView,
  #memberOperationsView,
  #setupView,
  #notificationJourneyView,
  #accessPolicyView,
  #pilotWalkthroughView,
  #lifecycleView
) :is(button, summary) {
  min-height: var(--control-min);
}

:is(
  #planView,
  #whoView,
  #accountView,
  #applicantView,
  #memberOperationsView,
  #setupView,
  #notificationJourneyView,
  #accessPolicyView,
  #lifecycleView
) :is(input:not([type="checkbox"]):not([type="radio"]), select) {
  min-height: 48px;
  border-radius: 12px;
  padding-top: 0;
  padding-bottom: 0;
}

:is(
  #planView,
  #whoView,
  #accountView,
  #applicantView,
  #memberOperationsView,
  #setupView,
  #notificationJourneyView,
  #accessPolicyView,
  #lifecycleView
) textarea {
  min-height: 112px;
  border-radius: 12px;
  padding: 12px;
  line-height: 1.42;
}

/* Create is a task progression, not top-level tab navigation. */
.view-tabs {
  top: 58px;
  z-index: 12;
  gap: 4px;
  border: 0;
  border-bottom: 1px solid var(--settings-divider);
  border-radius: 0;
  background: rgba(255, 253, 249, 0.95);
  margin: 2px -2px 16px;
  padding: 7px 2px 10px;
  box-shadow: none;
  backdrop-filter: none;
}

.view-tab {
  position: relative;
  min-width: 0;
  min-height: 52px;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  align-items: center;
  gap: 7px;
  border-radius: 13px;
  color: #756d66;
  padding: 5px 7px;
  text-align: left;
}

.view-tab.is-active,
.view-tab.is-complete {
  color: var(--ink);
  background: transparent;
  box-shadow: none;
}

.view-tab.is-active {
  background: #edf1fb;
}

.view-step-number {
  width: 27px;
  height: 27px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(56, 46, 39, 0.15);
  border-radius: 50%;
  background: #f4f0ea;
  color: #756d66;
  font-size: 0.76rem;
  font-weight: 820;
}

.view-tab.is-active .view-step-number {
  border-color: var(--settings-blue);
  background: var(--settings-blue);
  color: white;
}

.view-tab.is-complete .view-step-number {
  border-color: rgba(25, 124, 114, 0.2);
  background: #e2f1ec;
  color: var(--settings-green);
}

.view-step-copy {
  min-width: 0;
  display: grid;
  gap: 1px;
}

.view-step-copy strong,
.view-step-copy small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.view-step-copy strong {
  font-size: 0.84rem;
  line-height: 1.08;
}

.view-step-copy small {
  color: var(--muted);
  font-size: 0.66rem;
  font-weight: 690;
  line-height: 1.1;
}

#planView .plan-form,
#whoView,
#reviewView {
  gap: 14px;
}

#planView .plan-form > fieldset,
#planView .plan-form > label,
#planView .plan-form > details,
#whoView > .profile-section,
#whoView > .people-fieldset,
#whoView > .settings-fieldset,
#whoView > .privacy-strip {
  border: 1px solid var(--settings-divider);
  border-radius: 18px;
  background: var(--settings-surface);
  box-shadow: none;
}

#planView .plan-form > label,
#planView .plan-form > details {
  padding: 14px;
}

#planView .plan-form > fieldset,
#whoView > .people-fieldset,
#whoView > .settings-fieldset {
  padding: 14px;
}

#planView .plan-form > label > .field-label-row,
#planView .plan-form > label:not(:has(.field-label-row)) {
  color: var(--ink);
  font-weight: 780;
}

#planView .plan-details,
#whoView .preference-panel {
  border-color: var(--settings-divider);
  background: #f7f3ee;
  box-shadow: none;
}

#planView .plan-policy-summary,
#whoView .settings-note,
#whoView .privacy-strip {
  box-shadow: none;
}

/* Native-like toggles only for real binary settings. */
.switch-row input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  width: 51px;
  height: 31px;
  min-height: 31px;
  flex: 0 0 51px;
  position: relative;
  border: 0;
  border-radius: 999px;
  background: #d8d4ce;
  box-shadow: inset 0 0 0 1px rgba(56, 46, 39, 0.08);
  cursor: pointer;
}

.switch-row input[type="checkbox"]::after {
  content: "";
  position: absolute;
  top: 2px;
  left: 2px;
  width: 27px;
  height: 27px;
  border-radius: 50%;
  background: white;
  box-shadow: 0 2px 5px rgba(56, 46, 39, 0.24);
  transition: transform 160ms ease;
}

.switch-row input[type="checkbox"]:checked {
  background: var(--settings-green);
}

.switch-row input[type="checkbox"]:checked::after {
  transform: translateX(20px);
}

.switch-row input[type="checkbox"]:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--settings-blue) 48%, white);
  outline-offset: 2px;
}

.switch-row input[type="checkbox"]:disabled {
  cursor: default;
  opacity: 0.6;
}

.switch-row {
  min-height: 58px;
  grid-template-columns: 51px minmax(0, 1fr);
  gap: 12px;
  border-radius: 0;
  background: transparent;
  padding: 11px 12px;
  margin: 0;
}

.notification-channel-list,
.settings-list:has(> .switch-row) {
  overflow: hidden;
  gap: 0;
  border: 1px solid var(--settings-divider);
  border-radius: 16px;
  background: var(--settings-surface);
}

.notification-channel-list > .switch-row + .switch-row,
.settings-list > .switch-row + * {
  border-top: 1px solid var(--settings-divider);
}

/* Settings index on compact widths, sidebar/detail on desktop. */
.account-settings-layout {
  display: grid;
  gap: 14px;
}

.account-settings-index {
  min-width: 0;
}

.account-settings-index-head {
  min-height: 74px;
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  padding: 4px 4px 15px;
}

.account-settings-index-head strong,
.account-settings-index-head small {
  display: block;
}

.account-settings-index-head strong {
  font-family: ui-serif, "New York", Georgia, serif;
  font-size: 1.14rem;
  letter-spacing: -0.015em;
}

.account-settings-index-head small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.79rem;
  font-weight: 680;
}

.account-settings-monogram {
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  border-radius: 17px;
  background: var(--ink);
  color: white;
  font-size: 1rem;
  font-weight: 820;
  box-shadow: 0 7px 18px rgba(34, 30, 27, 0.14);
}

.account-settings-list {
  overflow: hidden;
  border: 1px solid var(--settings-divider);
  border-radius: 18px;
  background: var(--settings-surface);
}

.account-settings-list button {
  width: 100%;
  min-height: 64px;
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) auto;
  align-items: center;
  gap: 11px;
  border: 0;
  background: transparent;
  color: var(--ink);
  padding: 9px 12px;
  text-align: left;
}

.account-settings-list button + button {
  border-top: 1px solid var(--settings-divider);
}

.account-settings-list button:hover,
.account-settings-list button:focus-visible,
.account-settings-list button.is-active {
  background: #f1f4fb;
}

.account-settings-list button > span:nth-child(2) {
  min-width: 0;
}

.account-settings-list button strong,
.account-settings-list button small {
  display: block;
}

.account-settings-list button strong {
  font-size: 0.91rem;
  line-height: 1.18;
}

.account-settings-list button small {
  margin-top: 3px;
  overflow: hidden;
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 650;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.account-settings-symbol {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border-radius: 9px;
  background: #e9eef9;
  color: var(--settings-blue);
  font-size: 0.75rem;
  font-weight: 900;
}

.account-settings-symbol.is-notifications {
  background: #f8eadb;
  color: #a85a23;
}

.account-settings-symbol.is-private {
  background: #efe8f5;
  color: #74528a;
}

.account-settings-symbol.is-defaults,
.account-settings-symbol.is-familiar {
  background: #e2f1ec;
  color: var(--settings-green);
}

.account-settings-chevron {
  color: #9a928b;
  font-size: 1.5rem;
  font-weight: 400;
}

.account-settings-footer {
  margin: 10px 12px 0;
  color: var(--muted);
  font-size: 0.75rem;
  font-weight: 620;
  line-height: 1.38;
}

.account-detail-column {
  min-width: 0;
}

.account-context {
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 0 2px 12px;
  margin: 0;
}

.account-card {
  border-color: var(--settings-divider);
  border-radius: 18px;
  background: var(--settings-surface);
  padding: 16px;
  box-shadow: none;
}

.account-card-head {
  min-height: 44px;
  align-items: center;
  border-bottom: 1px solid var(--settings-divider);
  padding-bottom: 12px;
}

.account-card .preference-callout,
.account-card .membership-status-panel,
.account-card .portal-preview,
.account-card .photo-edit-panel,
.account-card .member-area-editor {
  border-color: var(--settings-divider);
  background: #f7f3ee;
  box-shadow: none;
}

.account-card .compact-grid,
.application-form .application-field-grid,
.setup-form .application-field-grid,
.access-policy-controls {
  overflow: hidden;
  gap: 1px;
  border: 1px solid var(--settings-divider);
  border-radius: 16px;
  background: var(--settings-divider);
}

.account-card .compact-grid > label,
.application-form .application-field-grid > label,
.setup-form .application-field-grid > label,
.access-policy-controls > label {
  min-width: 0;
  background: var(--settings-surface);
  padding: 12px;
}

.account-card .range-receipt,
.account-card .field-hint {
  border-radius: 0;
  background: transparent;
  padding: 6px 1px 0;
}

.account-save-receipt {
  min-height: 44px;
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  border: 1px solid rgba(25, 124, 114, 0.16);
  border-radius: 14px;
  background: #edf7f3;
  color: #0b5b54;
  padding: 9px 12px;
  margin: 0 0 10px;
  opacity: 0;
  transform: translateY(-4px);
  transition: opacity 160ms ease, transform 160ms ease;
}

.account-save-receipt:not([hidden]) {
  display: grid;
}

.account-save-receipt.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.account-save-receipt > span {
  width: 24px;
  height: 24px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: var(--settings-green);
  color: white;
  font-size: 0.72rem;
}

.account-save-receipt strong {
  font-size: 0.84rem;
}

.account-save-bar {
  min-height: 66px;
  position: sticky;
  bottom: 6px;
  z-index: 8;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  border: 1px solid var(--settings-divider);
  border-radius: 16px;
  background: rgba(255, 253, 249, 0.96);
  padding: 9px 10px 9px 13px;
  box-shadow: 0 8px 24px rgba(66, 51, 41, 0.1);
}

.account-save-bar span,
.account-save-bar strong,
.account-save-bar small {
  display: block;
}

.account-save-bar small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.73rem;
  font-weight: 650;
}

.account-save-bar.is-dirty small {
  color: #9a3b25;
}

.account-save-bar .primary-action {
  width: auto;
  min-width: 126px;
  margin: 0;
  padding: 0 16px;
}

/* Journey and operator forms share the same calm field hierarchy. */
.journey-card {
  border-color: var(--settings-divider);
  background: var(--settings-surface);
  box-shadow: none;
}

.journey-card-head {
  min-height: 44px;
  align-items: center;
}

.application-agreements,
.member-operations-checklist,
.people-grid {
  border-color: var(--settings-divider);
  border-radius: 16px;
  background: #f7f3ee;
}

.agreement-row {
  min-height: 56px;
}

.member-operations-decision-actions,
.journey-result-actions,
.signal-actions,
.filter-actions {
  align-items: stretch;
}

.member-operations-decision-actions > button,
.journey-result-actions > button,
.signal-actions > button,
.filter-actions > button {
  min-height: 46px;
}

.routing-lab,
.readiness-lab,
.prototype-scenario-tools {
  border-color: var(--settings-divider);
  background: #f4f0ea;
  box-shadow: none;
}

.prototype-device-switch {
  min-height: 52px;
  border-radius: 16px;
  padding: 4px;
}

.prototype-device-switch > button,
.prototype-scenario-tools > summary {
  min-height: 44px;
}

.prototype-scenario-tools .prototype-scenario-picker select {
  min-height: 44px;
  border-radius: 11px;
}

body.is-prototype-mobile #accountView.is-index-only .account-detail-column {
  display: none;
}

body.is-prototype-mobile #accountView:not(.is-index-only) .account-settings-index {
  display: none;
}

@media (max-width: 390px) {
  .view-tab {
    grid-template-columns: 27px minmax(0, 1fr);
    gap: 5px;
    padding-right: 4px;
    padding-left: 4px;
  }

  .view-step-copy small {
    display: none;
  }

  .account-save-bar {
    grid-template-columns: 1fr;
  }

  .account-save-bar .primary-action {
    width: 100%;
  }
}

@media (min-width: 901px) {
  body.is-prototype-desktop #accountView.is-active {
    width: 100%;
    max-width: 1120px;
  }

  body.is-prototype-desktop .account-settings-layout {
    grid-template-columns: 250px minmax(0, 1fr);
    align-items: start;
    gap: 22px;
  }

  body.is-prototype-desktop .account-settings-index {
    position: sticky;
    top: 10px;
  }

  body.is-prototype-desktop .account-settings-list button {
    min-height: 66px;
  }

  body.is-prototype-desktop .account-settings-chevron {
    display: none;
  }

  body.is-prototype-desktop .view-tabs {
    width: min(760px, 100%);
    margin-right: auto;
    margin-left: auto;
  }

  body.is-prototype-desktop #planView,
  body.is-prototype-desktop #whoView,
  body.is-prototype-desktop #reviewView {
    max-width: 860px;
  }

  body.is-prototype-desktop #memberOperationsView .application-operation,
  body.is-prototype-desktop #memberOperationsView .member-operations-task-detail {
    max-width: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .switch-row input[type="checkbox"]::after,
  .account-save-receipt {
    transition: none;
  }
}

body:has(#accountView.is-active) > .app-shell .notification-center {
  display: none;
}

body.is-prototype-mobile #accountView .account-context {
  display: none;
}

/* Prototype v83 deployment build: invite format controls scope small-group capacity correctly. */
.app-nav.is-root-invitations > .icon-button[hidden] {
  display: none;
}

.app-nav.is-root-invitations {
  display: grid;
  grid-template-columns: minmax(44px, 1fr) auto minmax(44px, 1fr);
  align-items: center;
  column-gap: 8px;
}

.app-nav.is-root-invitations > .nav-status {
  grid-column: 2;
  justify-self: center;
  margin: 0;
  text-align: center;
}

.workspace-toolbar-actions {
  grid-column: 3;
  justify-self: end;
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 7px;
}

.open-now-workspace-action {
  min-height: 44px;
  border: 1px solid rgba(13, 143, 116, 0.2);
  border-radius: 999px;
  background: #f6fbf9;
  color: #176b5b;
  padding: 0 10px 0 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  font-size: 0.72rem;
  font-weight: 880;
  line-height: 1;
  white-space: nowrap;
}

.open-now-workspace-action[hidden] {
  display: none;
}

.open-now-workspace-action.is-active {
  border-color: rgba(13, 143, 116, 0.34);
  background: #dff5ee;
  color: #075f4f;
}

.open-now-toolbar-mark,
.open-now-status-mark {
  position: relative;
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
  border-radius: 9px;
  background: #dff5ee;
}

.open-now-toolbar-mark::before,
.open-now-status-mark::before {
  content: "";
  position: absolute;
  inset: 6px;
  border: 2px solid var(--green);
  border-radius: 50%;
}

.open-now-workspace-action.is-active .open-now-toolbar-mark {
  background: #0d8f74;
}

.open-now-workspace-action.is-active .open-now-toolbar-mark::before {
  border-color: white;
}

.open-now-workspace-status {
  min-height: 52px;
  margin: 0 0 12px;
  border: 1px solid rgba(13, 143, 116, 0.2);
  border-radius: 15px;
  background: #f5fbf8;
  padding: 7px 8px 7px 10px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 9px;
}

.open-now-workspace-status[hidden] {
  display: none;
}

.open-now-status-copy {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.open-now-status-copy strong {
  color: #075f4f;
  font-size: 0.83rem;
  line-height: 1.15;
}

.open-now-status-copy small {
  color: #52636c;
  font-size: 0.67rem;
  font-weight: 720;
  line-height: 1.2;
}

.open-now-workspace-status > button {
  min-height: 44px;
  border: 0;
  border-radius: 999px;
  background: white;
  color: #075f4f;
  padding: 0 11px;
  font-size: 0.72rem;
  font-weight: 880;
}

.find-event-detail-row button {
  min-height: 44px;
}

.open-now-sheet {
  z-index: 200;
}

.open-now-sheet-panel {
  width: min(480px, 100%);
  padding-top: 20px;
}

.open-now-sheet-head {
  min-height: 54px;
  padding-right: 52px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 11px;
}

.open-now-sheet-head .eyebrow {
  margin: 0 0 2px;
}

.open-now-sheet-head h2 {
  margin: 0;
  font-size: 1.35rem;
  line-height: 1.08;
}

.open-now-sheet .signal-intro {
  margin-top: 12px;
}

.open-now-sheet .open-now-editor {
  grid-template-columns: 1fr;
}

.open-now-sheet .open-now-editor .primary-action {
  width: 100%;
}

.open-now-sheet .signal-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.open-now-sheet .signal-actions > button:first-child,
.open-now-sheet .signal-actions > button:last-child:nth-child(odd) {
  grid-column: 1 / -1;
}

#findView .incoming-priority-panel {
  gap: 12px;
}

#findView .incoming-response-stack {
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}

#findView .incoming-response-stack .incoming-priority-section,
#findView .incoming-response-stack .incoming-waiting-section {
  overflow: hidden;
  border: 1px solid rgba(56, 46, 39, 0.12);
  border-radius: 16px;
  background: #fffdfa;
}

#findView .incoming-response-stack .incoming-priority-section {
  border-bottom: 1px solid rgba(56, 46, 39, 0.12);
}

.incoming-section-header {
  min-height: 64px;
  padding: 9px 10px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 9px;
}

details > .incoming-section-header {
  list-style: none;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

details > .incoming-section-header::-webkit-details-marker {
  display: none;
}

details > .incoming-section-header:hover {
  background: rgba(49, 92, 184, 0.025);
}

details > .incoming-section-header:focus-visible {
  outline: 3px solid rgba(49, 92, 184, 0.24);
  outline-offset: -3px;
}

.incoming-section-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  color: var(--blue-dark);
  white-space: nowrap;
}

.incoming-section-toggle .disclosure-label {
  min-width: 50px;
  text-align: right;
  font-size: 0.72rem;
  font-weight: 850;
}

.incoming-priority-section[open] > .incoming-section-header,
.incoming-waiting-section[open] > .incoming-section-header {
  background: rgba(49, 92, 184, 0.025);
}

.incoming-priority-section[open] > .incoming-section-header .response-disclosure-chevron,
.incoming-waiting-section[open] > .incoming-section-header .response-disclosure-chevron {
  transform: rotate(225deg) translate(-2px, -1px);
}

@media (max-width: 360px) {
  .incoming-section-toggle {
    gap: 6px;
  }

  .incoming-section-toggle .disclosure-label {
    min-width: 0;
    font-size: 0.68rem;
  }

  .waiting-response-foot {
    padding-left: 5px;
  }
}

.incoming-section-header .response-disclosure-copy strong {
  font-size: 0.94rem;
}

.incoming-section-header .response-disclosure-copy small {
  font-size: 0.7rem;
}

.incoming-section-header .quiet-pill {
  min-width: 30px;
  padding: 6px 9px;
  text-align: center;
}

.incoming-section-body {
  border-top: 1px solid rgba(56, 46, 39, 0.1);
  padding: 9px;
}

.incoming-section-body.is-waiting-body {
  background: #faf8f5;
}

.waiting-response-row {
  padding: 0;
  overflow: hidden;
}

.waiting-response-open {
  width: 100%;
  min-height: 44px;
  border: 0;
  background: transparent;
  color: var(--ink);
  padding: 7px;
  display: grid;
  gap: 7px;
  text-align: left;
}

.waiting-response-open:hover {
  background: rgba(49, 92, 184, 0.035);
}

.waiting-response-open .invite-record-identity {
  margin: 0;
  border: 0;
  border-radius: 11px;
  background: linear-gradient(110deg, var(--invite-accent-soft), #fffdfa 74%);
  padding: 9px;
}

.waiting-response-foot {
  min-width: 0;
  padding: 0 5px 1px 63px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 7px;
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 780;
}

.waiting-response-foot .person-timer {
  min-width: 0;
}

.waiting-row-chevron {
  color: var(--blue-dark);
  font-size: 1.1rem;
  line-height: 1;
}

.waiting-detail-state {
  margin: 0 0 12px;
  border: 1px solid rgba(49, 92, 184, 0.14);
  border-radius: 14px;
  background: #f5f7fc;
  padding: 11px 12px;
  display: grid;
  gap: 3px;
}

.waiting-detail-state strong {
  color: var(--blue-dark);
  font-size: 0.88rem;
}

.waiting-detail-state span {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 720;
  line-height: 1.3;
}

body.is-prototype-mobile .root-tabs {
  width: calc(100% - 8px);
  min-height: 52px;
  margin: 0 4px 14px;
  gap: 3px;
  border: 1px solid rgba(56, 46, 39, 0.12);
  border-radius: 14px;
  background: #f2eee8;
  padding: 3px;
}

body.is-prototype-mobile .root-tab {
  min-height: 44px;
  border-radius: 10px;
  font-size: 0.78rem;
}

body.is-prototype-mobile .root-tab.is-active {
  background: #fffdfa;
  box-shadow: 0 1px 5px rgba(56, 46, 39, 0.12);
}

body.is-prototype-mobile .root-tab.is-active::after {
  display: none;
}

@media (max-width: 350px) {
  .open-now-workspace-action {
    padding-right: 8px;
  }

  .open-now-workspace-action .open-now-toolbar-mark {
    display: none;
  }

  .open-now-status-copy small {
    display: none;
  }
}

@media (min-width: 901px) {
  body.is-prototype-desktop #findView .incoming-response-stack {
    grid-template-columns: 1fr;
  }

  body.is-prototype-desktop .root-tab {
    font-size: 0.68rem;
  }

  body.is-prototype-desktop .open-now-workspace-status {
    max-width: 820px;
  }
}

/* Consent-critical member states */

.platform-invite-badge {
  margin: 8px 1px 0;
  border: 1px solid rgba(106, 74, 134, 0.18);
  border-radius: 12px;
  background: #f5f0f8;
  color: #56386f;
  padding: 8px 9px;
  display: flex;
  align-items: center;
  gap: 8px;
  text-align: left;
}

.platform-invite-mark {
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  border-radius: 9px 9px 9px 3px;
  background: #6a4a86;
  color: white;
  display: grid;
  place-items: center;
  font-family: ui-serif, "New York", Georgia, serif;
  font-size: 0.82rem;
  font-weight: 800;
}

.platform-invite-badge > span:last-child {
  min-width: 0;
  display: grid;
  gap: 1px;
}

.platform-invite-badge strong {
  font-size: 0.76rem;
  line-height: 1.15;
}

.platform-invite-badge small {
  color: #6f5a7e;
  font-size: 0.66rem;
  font-weight: 680;
  line-height: 1.28;
}

.invite-record.is-platform-invite {
  border-color: color-mix(in srgb, #6a4a86 34%, rgba(56, 46, 39, 0.12));
}

.final-confirmation-card-body {
  border-top: 1px solid rgba(56, 46, 39, 0.1);
  padding-top: 10px;
  display: grid;
  gap: 9px;
}

.final-confirmation-counterpart {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
}

.final-confirmation-counterpart img {
  width: 48px;
  height: 48px;
  border-radius: 15px;
  object-fit: cover;
}

.final-confirmation-counterpart > span {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.final-confirmation-counterpart small {
  color: var(--green-dark);
  font-size: 0.68rem;
  font-weight: 820;
}

.final-confirmation-counterpart strong {
  font-size: 0.88rem;
}

.final-confirmation-counterpart span span {
  overflow: hidden;
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 650;
  line-height: 1.3;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.locked-detail-receipt,
.locked-logistics-panel > div:first-child {
  border-radius: 12px;
  background: #f4f1ec;
  padding: 9px 10px;
  display: flex;
  align-items: flex-start;
  gap: 8px;
}

.locked-detail-icon {
  width: 25px;
  height: 25px;
  flex: 0 0 25px;
  border: 1px solid rgba(56, 46, 39, 0.13);
  border-radius: 8px;
  background: #fffdfa;
  color: #665d55;
  display: grid;
  place-items: center;
  font-size: 0.9rem;
  font-weight: 900;
}

.locked-detail-receipt > span:last-child,
.locked-logistics-panel > div:first-child > span:last-child {
  display: grid;
  gap: 2px;
}

.locked-detail-receipt strong,
.locked-logistics-panel strong {
  color: #443d37;
  font-size: 0.76rem;
}

.locked-detail-receipt small,
.locked-logistics-panel small {
  color: #746b63;
  font-size: 0.68rem;
  font-weight: 650;
  line-height: 1.3;
}

.out-final-confirmation-callout {
  margin-bottom: 10px;
  border: 1px solid rgba(174, 108, 34, 0.2);
  border-radius: 14px;
  background: #fbf5e9;
  padding: 10px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 10px;
}

.out-final-confirmation-callout > div {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.out-final-confirmation-callout strong {
  font-size: 0.82rem;
}

.out-final-confirmation-callout small {
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 680;
  line-height: 1.3;
}

.out-final-confirmation-callout .primary-action {
  width: auto;
  min-height: 44px;
  padding-inline: 12px;
  font-size: 0.76rem;
}

.member-action-panel {
  width: min(560px, 100%);
  max-height: 92dvh;
}

.member-action-panel .sheet-close {
  z-index: 3;
}

.member-action-hero {
  position: relative;
  margin: -2px -1px 12px;
  border-top: 3px solid var(--invite-accent);
  border-radius: 19px;
  background: linear-gradient(115deg, var(--invite-accent-soft), #fffdfa 78%);
  padding: 14px 52px 14px 14px;
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr);
  align-items: center;
  gap: 11px;
}

.member-action-hero > div {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.member-action-hero h2 {
  margin: 0;
  color: var(--ink);
  font-family: ui-serif, "New York", Georgia, serif;
  font-size: 1.2rem;
  line-height: 1.1;
}

.member-action-hero > div > strong {
  margin-top: 4px;
  color: var(--invite-accent-deep);
  font-size: 0.82rem;
}

.member-action-hero > div > span {
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 700;
}

.member-action-hero > .quiet-pill {
  position: absolute;
  right: 12px;
  bottom: 11px;
  max-width: 120px;
}

.confirmation-counterpart-card {
  border-bottom: 1px solid rgba(56, 46, 39, 0.1);
  padding: 3px 2px 12px;
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr);
  gap: 11px;
}

.confirmation-counterpart-card > img {
  width: 64px;
  height: 64px;
  border-radius: 19px;
  object-fit: cover;
}

.confirmation-counterpart-card > div {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.confirmation-counterpart-card > div > span:first-child {
  color: var(--green-dark);
  font-size: 0.68rem;
  font-weight: 820;
}

.confirmation-counterpart-card > div > strong {
  font-size: 0.96rem;
}

.confirmation-counterpart-card p {
  margin: 0;
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 650;
  line-height: 1.3;
}

.confirmation-row-list {
  margin-top: 10px;
  display: grid;
  gap: 7px;
}

.confirmation-state-row {
  min-height: 54px;
  border: 1px solid rgba(56, 46, 39, 0.11);
  border-radius: 13px;
  background: #fffdfa;
  padding: 8px 10px;
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  align-items: center;
  gap: 9px;
}

.confirmation-state-row > span:first-child {
  width: 30px;
  height: 30px;
  border-radius: 10px;
  background: #eef1f4;
  display: grid;
  place-items: center;
  color: #675f57;
  font-size: 0.76rem;
  font-weight: 900;
}

.confirmation-state-row.is-complete > span:first-child {
  background: #e5f4ee;
  color: var(--green-dark);
}

.confirmation-state-row > span:last-child {
  display: grid;
  gap: 2px;
}

.confirmation-state-row strong {
  font-size: 0.82rem;
}

.confirmation-state-row small {
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 680;
}

.locked-logistics-panel {
  margin-top: 10px;
}

.locked-logistics-panel dl {
  margin: 7px 0 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}

.locked-logistics-panel dl > div {
  border: 1px solid rgba(56, 46, 39, 0.09);
  border-radius: 10px;
  background: #fbfaf8;
  padding: 7px 8px;
}

.locked-logistics-panel dt {
  color: #746b63;
  font-size: 0.61rem;
  font-weight: 900;
  text-transform: uppercase;
}

.locked-logistics-panel dd {
  margin: 2px 0 0;
  color: #524b45;
  font-size: 0.67rem;
  font-weight: 720;
}

.confirmation-cost-acknowledgment {
  margin-top: 10px;
  min-height: 58px;
  border: 1px solid rgba(49, 92, 184, 0.17);
  border-radius: 13px;
  background: #f5f7fc;
  padding: 9px 10px;
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  align-items: start;
  gap: 9px;
}

.confirmation-cost-acknowledgment input {
  width: 20px;
  height: 20px;
  margin: 1px 0 0;
}

.confirmation-cost-acknowledgment > span {
  display: grid;
  gap: 2px;
}

.confirmation-cost-acknowledgment strong {
  font-size: 0.78rem;
}

.confirmation-cost-acknowledgment small {
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 650;
  line-height: 1.3;
}

.private-pass-prompt,
.on-cancellation-boundary {
  margin-top: 11px;
  border: 1px solid rgba(159, 45, 31, 0.16);
  border-radius: 14px;
  background: #fff5f1;
  padding: 11px;
}

.private-pass-prompt strong,
.on-cancellation-boundary strong {
  color: #7b2b21;
  font-size: 0.84rem;
}

.private-pass-prompt p,
.on-cancellation-boundary p {
  margin: 4px 0 0;
  color: #735950;
  font-size: 0.72rem;
  font-weight: 680;
  line-height: 1.35;
}

.private-pass-prompt > div {
  margin-top: 9px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.member-action-footer {
  position: sticky;
  bottom: -18px;
  margin: 12px -16px -18px;
  border-top: 1px solid rgba(56, 46, 39, 0.1);
  background: rgba(255, 255, 255, 0.97);
  padding: 10px 16px max(14px, env(safe-area-inset-bottom));
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.member-action-footer.is-single {
  grid-template-columns: minmax(0, 1fr);
}

.member-action-footer > button,
.private-pass-prompt button {
  width: 100%;
  min-height: 48px;
  border: 0;
  border-radius: var(--radius-control);
  padding: 0 12px;
  font-size: 0.82rem;
  font-weight: 850;
}

.member-action-footer .danger-action,
.private-pass-prompt .danger-action {
  color: white;
  background: #a53d2d;
}

.member-action-footer .danger-action:disabled {
  cursor: not-allowed;
  color: #8b96a5;
  background: #e7ebf0;
}

.member-action-result {
  border: 1px solid rgba(13, 143, 116, 0.16);
  border-radius: 15px;
  background: #f0f7f4;
  padding: 13px;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 10px;
}

.member-action-result > span {
  width: 34px;
  height: 34px;
  border-radius: 11px;
  background: var(--green);
  color: white;
  display: grid;
  place-items: center;
  font-size: 0.92rem;
  font-weight: 900;
}

.member-action-result > div {
  display: grid;
  gap: 3px;
}

.member-action-result strong {
  font-size: 0.88rem;
}

.member-action-result p {
  margin: 0;
  color: #536761;
  font-size: 0.75rem;
  font-weight: 680;
  line-height: 1.38;
}

.counterpart-notice-preview {
  margin-top: 10px;
  border: 1px solid rgba(56, 46, 39, 0.12);
  border-radius: 14px;
  background: #f7f5f2;
  padding: 11px;
  display: grid;
  gap: 3px;
}

.counterpart-notice-preview > span {
  color: var(--muted);
  font-size: 0.64rem;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.counterpart-notice-preview strong {
  font-size: 0.84rem;
}

.counterpart-notice-preview p {
  margin: 0;
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 670;
  line-height: 1.35;
}

.member-action-intro {
  margin: 0 2px 10px;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 680;
  line-height: 1.35;
}

.support-choice-list {
  margin: 0;
  border: 0;
  padding: 0;
  display: grid;
  gap: 7px;
}

.support-choice-list legend {
  margin-bottom: 7px;
  font-size: 0.78rem;
  font-weight: 850;
}

.support-choice-list label {
  min-height: 60px;
  border: 1px solid rgba(56, 46, 39, 0.12);
  border-radius: 13px;
  background: #fffdfa;
  padding: 9px 10px;
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  align-items: start;
  gap: 9px;
}

.support-choice-list label:has(input:checked) {
  border-color: rgba(49, 92, 184, 0.34);
  background: #f4f7fd;
}

.support-choice-list input {
  width: 19px;
  height: 19px;
  margin: 1px 0 0;
}

.support-choice-list label > span {
  display: grid;
  gap: 2px;
}

.support-choice-list strong {
  font-size: 0.8rem;
}

.support-choice-list small {
  color: var(--muted);
  font-size: 0.69rem;
  font-weight: 650;
  line-height: 1.3;
}

.support-note-field {
  margin-top: 10px;
  display: grid;
  gap: 5px;
  font-size: 0.76rem;
  font-weight: 820;
}

.support-note-field > span {
  display: flex;
  justify-content: space-between;
}

.support-note-field small {
  color: var(--muted);
  font-weight: 680;
}

.support-note-field textarea {
  width: 100%;
  min-height: 92px;
  resize: vertical;
}

.support-boundary-note {
  margin-top: 10px;
  border-left: 3px solid #a53d2d;
  background: #fff7f4;
  padding: 9px 10px;
  display: grid;
  gap: 2px;
}

.support-boundary-note strong {
  color: #7b2b21;
  font-size: 0.74rem;
}

.support-boundary-note span {
  color: #735950;
  font-size: 0.68rem;
  font-weight: 660;
  line-height: 1.3;
}

.private-feedback-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.private-feedback-grid label {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 6px;
  border: 1px solid rgba(56, 46, 39, 0.11);
  border-radius: 13px;
  background: #fffdfa;
  padding: 10px;
}

.private-feedback-grid label > span {
  color: #443d37;
  font-size: 0.72rem;
  font-weight: 800;
  line-height: 1.3;
}

.private-feedback-grid select {
  width: 100%;
  min-height: 44px;
  border: 1px solid rgba(56, 46, 39, 0.16);
  border-radius: 10px;
  background: white;
  padding: 0 30px 0 9px;
  color: var(--ink);
  font: inherit;
  font-size: 0.72rem;
}

.feedback-validation {
  margin: 8px 2px 0;
  color: #8c2f1f;
  font-size: 0.72rem;
  font-weight: 780;
  line-height: 1.35;
}

.feedback-boundary-note {
  margin-top: 10px;
  border-left: 3px solid rgba(49, 92, 184, 0.55);
  background: #f5f7fc;
  padding: 9px 10px;
  display: grid;
  gap: 3px;
}

.feedback-boundary-note strong {
  color: #344054;
  font-size: 0.74rem;
}

.feedback-boundary-note span {
  color: #526079;
  font-size: 0.68rem;
  font-weight: 660;
  line-height: 1.35;
}

.feedback-boundary-note .text-action {
  width: fit-content;
  min-height: 44px;
  margin-top: 3px;
  padding: 0;
}

.on-support-actions {
  margin-top: 11px;
  border-top: 1px solid rgba(56, 46, 39, 0.1);
  padding-top: 11px;
  display: grid;
  gap: 9px;
}

.on-support-actions > div:first-child {
  display: grid;
  gap: 2px;
}

.on-support-actions > div:first-child strong {
  font-size: 0.8rem;
}

.on-support-actions > div:first-child span {
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 660;
}

.on-support-actions > div:last-child {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.on-support-actions button {
  min-height: 44px;
  padding: 7px 10px;
  font-size: 0.72rem;
}

.cancelled-plan-receipt {
  border: 1px solid rgba(159, 45, 31, 0.14);
  border-radius: 14px;
  background: #fff5f1;
  padding: 11px;
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  gap: 9px;
}

.cancelled-plan-receipt > span {
  width: 32px;
  height: 32px;
  border-radius: 10px;
  background: #a53d2d;
  color: white;
  display: grid;
  place-items: center;
  font-size: 1rem;
  font-weight: 900;
}

.cancelled-plan-receipt strong {
  font-size: 0.84rem;
}

.cancelled-plan-receipt p {
  margin: 3px 0 0;
  color: #735950;
  font-size: 0.7rem;
  font-weight: 660;
  line-height: 1.35;
}

.confirmed-plan-card.is-cancelled {
  opacity: 0.94;
}

@media (max-width: 520px) {
  .out-final-confirmation-callout {
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
  }

  .out-final-confirmation-callout .primary-action {
    width: 100%;
  }

  .member-action-hero {
    grid-template-columns: 54px minmax(0, 1fr);
    padding-left: 11px;
  }

  .member-action-hero .invite-detail-seal {
    width: 52px;
    height: 52px;
  }

  .member-action-hero > .quiet-pill {
    position: static;
    grid-column: 2;
    justify-self: start;
    margin-top: 3px;
  }

  .locked-logistics-panel dl {
    grid-template-columns: minmax(0, 1fr);
  }

  .member-action-footer.is-stacked-mobile,
  .on-support-actions > div:last-child {
    grid-template-columns: minmax(0, 1fr);
  }

  .private-feedback-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Prototype v87: real last-minute Invites replace the retired Open Now action. */
.setup-choice-grid button.is-recommended {
  position: relative;
  border-color: rgba(174, 108, 34, 0.42);
  background: linear-gradient(145deg, #fff9ef, #f8fafc);
}

.setup-choice-grid button.is-recommended:hover,
.setup-choice-grid button.is-recommended:focus-visible,
.setup-choice-grid button.is-recommended.is-selected {
  border-color: rgba(174, 108, 34, 0.68);
  background: #fff6e7;
}

.setup-choice-grid .setup-choice-badge {
  display: inline-flex;
  width: fit-content;
  margin: 0 0 7px;
  border-radius: 999px;
  background: #f2dfbd;
  color: #6f4212;
  padding: 4px 7px;
  font-size: 0.62rem;
  font-weight: 900;
  letter-spacing: 0.045em;
  line-height: 1;
  text-transform: uppercase;
}

.find-invite-list {
  display: grid;
  gap: 16px;
}

.find-invite-group {
  display: grid;
  gap: 8px;
}

.find-invite-group + .find-invite-group {
  padding-top: 2px;
}

.find-invite-group-head {
  min-height: 42px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 0 2px 7px;
  border-bottom: 1px solid rgba(56, 46, 39, 0.12);
}

.find-invite-group-head div,
.find-invite-group-head strong,
.find-invite-group-head small {
  display: block;
}

.find-invite-group-head strong {
  color: var(--ink);
  font-size: 0.86rem;
  line-height: 1.2;
}

.find-invite-group-head small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 720;
  line-height: 1.3;
}

.find-invite-group-head > span {
  min-width: 28px;
  border: 1px solid rgba(56, 46, 39, 0.12);
  border-radius: 999px;
  background: #fffdfa;
  color: var(--muted);
  padding: 5px 8px;
  text-align: center;
  font-size: 0.68rem;
  font-weight: 900;
}

.find-invite-group-list {
  display: grid;
}

.last-minute-timing-receipt {
  margin: 10px 13px 0;
  border: 1px solid rgba(174, 108, 34, 0.28);
  border-radius: 12px;
  background: #fff8ec;
  color: #633b12;
  padding: 9px 10px;
  display: flex;
  align-items: center;
  gap: 9px;
}

.recurring-series-receipt {
  margin: 10px 13px 0;
  border: 1px solid rgba(57, 111, 95, 0.22);
  border-radius: 12px;
  background: #f4fbf7;
  color: #204f43;
  padding: 9px 10px;
  display: flex;
  align-items: center;
  gap: 9px;
}

.last-minute-timing-receipt > span:last-child,
.recurring-series-receipt > span:last-child,
.last-minute-timing-receipt strong,
.last-minute-timing-receipt small,
.recurring-series-receipt strong,
.recurring-series-receipt small {
  display: block;
}

.last-minute-timing-receipt strong,
.recurring-series-receipt strong {
  font-size: 0.76rem;
  line-height: 1.15;
}

.last-minute-timing-receipt small {
  margin-top: 2px;
  color: #775024;
  font-size: 0.68rem;
  font-weight: 760;
  line-height: 1.3;
}

.recurring-series-receipt small {
  margin-top: 2px;
  color: #476f63;
  font-size: 0.68rem;
  font-weight: 760;
  line-height: 1.3;
}

.last-minute-clock {
  position: relative;
  flex: 0 0 25px;
  width: 25px;
  height: 25px;
  border: 2px solid #8b581f;
  border-radius: 50%;
}

.recurring-series-icon {
  position: relative;
  flex: 0 0 26px;
  width: 26px;
  height: 26px;
  border: 2px solid #367563;
  border-radius: 9px;
}

.recurring-series-icon::before,
.recurring-series-icon::after {
  content: "";
  position: absolute;
  left: 50%;
  width: 14px;
  height: 2px;
  border-radius: 999px;
  background: #367563;
  transform: translateX(-50%);
}

.recurring-series-icon::before {
  top: 8px;
}

.recurring-series-icon::after {
  bottom: 8px;
}

.last-minute-clock::before,
.last-minute-clock::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 2px;
  border-radius: 999px;
  background: #8b581f;
  transform-origin: 50% 100%;
}

.last-minute-clock::before {
  height: 7px;
  transform: translate(-50%, -100%);
}

.last-minute-clock::after {
  height: 6px;
  transform: translate(-50%, -100%) rotate(118deg);
}

.invite-detail-panel .last-minute-timing-receipt {
  margin: 12px 0 0;
}

.invite-detail-panel .recurring-series-receipt {
  margin: 12px 0 0;
}

@media (max-width: 360px) {
  .find-invite-group-head {
    align-items: flex-start;
  }

  .find-invite-group-head small {
    max-width: 240px;
  }

  .last-minute-timing-receipt,
  .recurring-series-receipt {
    margin-inline: 10px;
  }
}

/* Prototype v93: compact Invitation listings with visible shared-answer updates. */
.invite-record[data-invite-signature]:not(.is-completed) > .invite-record-identity {
  margin: -7px -7px 0;
  padding: 10px 9px 9px;
}

.invite-record-identity,
.invite-record-identity.is-match,
.invite-record-identity.is-action,
.invite-record-identity.is-waiting,
.invite-record-identity.is-out,
.invite-record-identity.is-on,
.invite-record-identity.is-past {
  grid-template-columns: 46px minmax(0, 1fr);
  align-items: start;
  column-gap: 9px;
  row-gap: 0;
  padding-bottom: 9px;
}

.invite-record-identity > .invitation-seal {
  width: 46px;
  height: 46px;
  flex-basis: 46px;
  border-radius: 14px;
}

.invite-record-identity > .invitation-seal .event-category-icon svg {
  width: 23px;
  height: 23px;
}

.invite-record-identity > .invitation-seal .invite-signature-mark {
  bottom: 4px;
  width: 23px !important;
}

.invite-record-identity-copy,
.incoming-invite-identity-copy {
  gap: 2px;
}

.invite-record-identity-copy > .invite-record-identity-topline,
.invite-record-identity-copy > .invite-record-identity-support {
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: normal;
  line-height: normal;
  text-transform: none;
}

.invite-record-identity-topline {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 4px 8px;
}

.invite-record-category,
.invite-detail-category {
  font-size: 0.61rem;
  letter-spacing: 0.06em;
  line-height: 1.1;
}

.invite-record-state-group,
.incoming-invite-state-group {
  grid-column: auto;
  flex: 0 0 auto;
  gap: 4px;
}

.invite-record-state-pill,
.incoming-invite-state-pill,
.invite-record-status-pill,
.incoming-invite-status-pill {
  padding: 3px 6px;
  font-size: 0.57rem;
}

.invite-record-identity-copy > strong {
  font-size: 1.04rem;
}

.invite-review-host-name {
  font-size: var(--invite-listing-person-name-size);
  font-weight: 900;
}

.invite-record-identity-copy > strong {
  margin-top: 1px;
  line-height: 1.08;
}

.invite-record-identity-copy > small {
  margin-top: 2px;
  font-size: 0.7rem;
  line-height: 1.16;
}

.invite-record-identity-support {
  min-width: 0;
  margin-top: 2px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px 7px;
}

.invite-record-identity-support .invite-record-travel-range {
  min-width: 0;
  margin: 0;
  color: #526079;
  font-size: 0.66rem;
  font-weight: 760;
  line-height: 1.15;
}

.invite-list-update {
  min-height: 20px;
  border: 1px solid rgba(25, 124, 114, 0.2);
  border-radius: 999px;
  background: #edf8f4;
  color: #0b5b54;
  padding: 3px 6px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 0.62rem;
  font-weight: 860;
  letter-spacing: 0;
  line-height: 1;
  text-transform: none;
  white-space: nowrap;
}

.invite-update-mark {
  position: relative;
  width: 11px;
  height: 11px;
  flex: 0 0 11px;
  border: 1.5px solid currentColor;
  border-radius: 4px;
}

.invite-update-mark::after {
  content: "";
  position: absolute;
  width: 4px;
  height: 2px;
  left: 2px;
  top: 3px;
  border-left: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(-45deg);
}

.invite-record > .last-minute-timing-receipt {
  min-height: 34px;
  margin: 7px 0 0;
  border-radius: 10px;
  padding: 6px 8px;
  gap: 6px;
}

.invite-record > .last-minute-timing-receipt > span:last-child {
  min-width: 0;
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 2px 5px;
}

.invite-record > .last-minute-timing-receipt strong,
.invite-record > .last-minute-timing-receipt small {
  display: inline;
  margin: 0;
}

.invite-record > .last-minute-timing-receipt strong {
  font-size: 0.7rem;
}

.invite-record > .last-minute-timing-receipt small {
  font-size: 0.65rem;
  line-height: 1.15;
}

.invite-record > .last-minute-timing-receipt .last-minute-clock {
  width: 18px;
  height: 18px;
  flex-basis: 18px;
  border-width: 1.5px;
}

.invite-record > .last-minute-timing-receipt .last-minute-clock::before {
  height: 5px;
}

.invite-record > .last-minute-timing-receipt .last-minute-clock::after {
  height: 4px;
}

.invite-card-context-row {
  min-width: 0;
  min-height: 44px;
  border-bottom: 1px solid rgba(56, 46, 39, 0.1);
  padding: 3px 1px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
}

.find-event-card .invite-card-context-row .invite-record-host {
  min-height: 0;
  margin: 0;
  padding: 2px 1px;
  display: grid;
  gap: 2px;
}

.invite-card-context-row .platform-invite-badge {
  min-width: 0;
  margin: 0;
  border: 0;
  background: transparent;
  padding: 2px 1px;
}

.invite-card-context-row .platform-invite-mark {
  width: 25px;
  height: 25px;
  flex-basis: 25px;
  border-radius: 8px;
}

.invite-record-review-action {
  min-width: 64px;
  min-height: 44px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: var(--blue-dark);
  padding: 0 8px;
  font-size: 0.75rem;
  font-weight: 860;
}

.invite-record-review-action:hover {
  background: #f1f4fb;
}

.find-event-card .find-event-action-row {
  margin-top: 6px;
  border-top: 0;
  padding-top: 0;
}

body.is-prototype-mobile .find-event-action-row {
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
}

body.is-prototype-mobile .find-event-action-row .person-timer,
body.is-prototype-mobile .find-event-action-row > button:first-child,
body.is-prototype-mobile .find-event-action-row > button:last-child {
  grid-column: auto;
  grid-row: auto;
}

.invite-inline-disclosure,
.out-plan-disclosure,
.on-plan-disclosure {
  margin-top: 6px;
}

.invite-inline-disclosure > summary,
.out-plan-disclosure > summary,
.on-plan-disclosure > summary {
  min-height: 44px;
  padding: 5px 2px;
}

.invite-review-byline {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 0 4px;
}

.invite-review-host-name {
  color: inherit;
  line-height: 1.08;
}

.guest-response-row.is-response-actions {
  margin: 7px 0 0;
  display: grid;
  grid-template-columns: minmax(0, auto) minmax(82px, 1fr) minmax(82px, 1fr);
  gap: 7px;
}

.guest-response-row.is-response-actions .person-timer {
  white-space: nowrap;
}

.guest-response-row.is-response-actions > button {
  width: 100%;
  min-width: 0;
  min-height: 44px;
  margin: 0;
  padding-inline: 8px;
}

.final-confirmation-card-body {
  padding-top: 7px;
}

.final-confirmation-counterpart {
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 8px;
}

.final-confirmation-counterpart img {
  width: 42px;
  height: 42px;
  border-radius: 13px;
}

.work-row-body {
  margin-top: 7px;
}

.work-row-body .work-row-main small {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.work-row.invite-record .work-row-side {
  margin-top: 7px;
  padding-top: 7px;
}

.out-invite-record .out-person-disclosure {
  margin-top: 7px;
}

.on-invite-record .on-ready-strip {
  margin-top: 7px;
  padding-bottom: 7px;
}

.waiting-response-open .invite-record-identity {
  margin: 0;
  padding: 8px;
}

@media (max-width: 360px) {
  body.is-prototype-mobile .find-event-action-row {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }

  body.is-prototype-mobile .find-event-action-row .person-timer {
    grid-column: 1 / -1;
    grid-row: 1;
  }

  body.is-prototype-mobile .find-event-action-row > button:first-child {
    grid-column: 1;
    grid-row: 2;
  }

  body.is-prototype-mobile .find-event-action-row > button:last-child {
    grid-column: 2;
    grid-row: 2;
  }

  .guest-response-row.is-response-actions {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }

  .guest-response-row.is-response-actions .person-timer {
    grid-column: 1 / -1;
    justify-self: center;
  }
}

@media (min-width: 901px) {
  body.is-prototype-desktop .invite-record-identity,
  body.is-prototype-desktop .incoming-invite-identity {
    grid-template-columns: 46px minmax(0, 1fr);
    align-items: start;
  }

  body.is-prototype-desktop .invite-record-state-group,
  body.is-prototype-desktop .incoming-invite-state-group {
    grid-column: auto;
    justify-content: flex-start;
  }
}

/* Prototype v95: Trips hides scheduling machinery behind one short, private flow. */
.travel-plan-card {
  gap: 12px;
}

.travel-plan-summary {
  background: #fffdfa;
}

.travel-summary-head {
  padding: 14px;
}

.travel-summary-head strong {
  font-size: 1.12rem;
}

.travel-matching-state {
  max-width: 146px;
}

.trip-summary-actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
  gap: 8px;
}

.trip-summary-actions > button {
  min-height: 44px;
  width: 100%;
  margin: 0;
}

.trip-summary-actions .text-action {
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: #943f32;
  box-shadow: none;
  padding: 0 12px;
  font-weight: 780;
}

.trip-summary-actions .text-action:hover,
.trip-summary-actions .text-action:focus-visible {
  background: #f8ede9;
}

/* Prototype v96: pre-response host identity stays photo-free and short-card-free. */
.pre-response-host {
  border: 1px solid rgba(47, 68, 104, 0.13);
  border-radius: 16px;
  background: #f7f8fb;
  padding: 11px 12px;
  display: grid;
  gap: 9px;
}

.pre-response-host-identity {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 9px;
  align-items: center;
}

.pre-response-host-mark {
  width: 34px;
  height: 34px;
  border: 1px solid rgba(49, 92, 184, 0.18);
  border-radius: 11px;
  background: #edf1fb;
  position: relative;
}

.pre-response-host-mark::before,
.pre-response-host-mark::after {
  content: "";
  position: absolute;
  left: 50%;
  translate: -50% 0;
  border-radius: 999px;
  background: #315cb8;
}

.pre-response-host-mark::before {
  top: 7px;
  width: 8px;
  height: 8px;
}

.pre-response-host-mark::after {
  bottom: 6px;
  width: 17px;
  height: 9px;
  border-radius: 9px 9px 6px 6px;
}

.pre-response-host-identity small {
  display: block;
  margin-bottom: 3px;
  color: var(--muted);
  font-size: 0.66rem;
  font-weight: 820;
  letter-spacing: 0.055em;
  text-transform: uppercase;
}

.pre-response-host-identity .host-name-row strong {
  font-size: 0.92rem;
}

.pre-response-host p {
  margin: 0;
  color: var(--muted);
  font-size: 0.79rem;
  font-weight: 680;
  line-height: 1.35;
}

.travel-plan-editor {
  border: 1px solid var(--settings-divider);
  border-radius: 17px;
  background: #fbfaf7;
  padding: 14px;
}

.trip-core-fields {
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.9fr) minmax(0, 0.9fr);
}

.travel-matching-switch {
  margin-top: 12px;
}

.travel-matching-switch > span,
.travel-matching-switch strong,
.travel-matching-switch small {
  display: block;
}

.travel-matching-switch > span {
  min-width: 0;
}

.travel-matching-switch small {
  margin-top: 3px;
}

.trip-repeat-disclosure {
  margin-top: 10px;
  border: 1px solid var(--settings-divider);
  border-radius: 15px;
  background: #fffdfa;
  overflow: hidden;
}

.trip-repeat-disclosure > summary {
  min-height: 52px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  cursor: pointer;
  list-style: none;
}

.trip-repeat-disclosure > summary::-webkit-details-marker {
  display: none;
}

.trip-repeat-disclosure > summary span,
.trip-repeat-disclosure > summary strong,
.trip-repeat-disclosure > summary small {
  display: block;
}

.trip-repeat-disclosure > summary strong {
  font-size: 0.8rem;
}

.trip-repeat-disclosure > summary small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 680;
}

.trip-repeat-disclosure > summary em {
  color: #284c98;
  font-size: 0.72rem;
  font-style: normal;
  font-weight: 820;
}

.trip-repeat-disclosure[open] > summary {
  border-bottom: 1px solid var(--settings-divider);
}

.trip-repeat-disclosure[open] > summary em {
  font-size: 0;
}

.trip-repeat-disclosure[open] > summary em::after {
  content: "Close";
  font-size: 0.72rem;
}

.trip-repeat-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  padding: 12px;
}

.trip-repeat-fields label {
  display: grid;
  gap: 5px;
  color: var(--ink);
  font-size: 0.75rem;
  font-weight: 780;
}

#travelSupportedFields[hidden],
.trip-summary-actions [hidden] {
  display: none;
}

.travel-plan-actions {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.travel-unsupported {
  margin-top: 12px;
}

@media (max-width: 720px) {
  .trip-core-fields {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 520px) {
  .trip-summary-actions {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }

  .trip-summary-actions .text-action {
    grid-column: 1 / -1;
  }

  .trip-repeat-fields {
    grid-template-columns: 1fr;
  }

  .travel-plan-actions {
    grid-template-columns: 1fr;
  }

  .travel-plan-actions .primary-action {
    grid-column: auto;
  }
}

@media (max-width: 340px) {
  .trip-summary-actions,
  .travel-plan-actions {
    grid-template-columns: 1fr;
  }

  .trip-summary-actions .text-action {
    grid-column: auto;
  }
}

/* Prototype v107: keep every shared Invite date, time, and place line unmistakably bold. */
.invite-record-identity-copy > .invite-record-meta {
  font-weight: 900;
}

/* Prototype v100: the Together seal is prominent in every mutually confirmed Invite header. */
.mutual-confirmation-seal {
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  border: 1px solid rgba(11, 98, 91, 0.24);
  border-radius: 50%;
  background: #eaf7f2;
  color: #0b625b;
  display: inline-grid;
  place-items: center;
  box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.7);
}

.mutual-confirmation-seal svg {
  width: 30px;
  height: 30px;
  display: block;
  overflow: visible;
}

.mutual-seal-hands {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.65;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.mutual-seal-cuff {
  fill: currentColor;
  opacity: 0.88;
}

.mutual-seal-spark {
  fill: #c58a21;
}

.invite-record-identity.is-on .invite-record-state-group,
.invite-record-identity.is-past .invite-record-state-group {
  align-items: center;
  gap: 6px;
}

.invite-record-identity.is-on .mutual-confirmation-seal {
  width: 42px;
  height: 42px;
  flex-basis: 42px;
  background: #eaf7f2;
  color: #0b625b;
}

.invite-record-identity.is-past .mutual-confirmation-seal {
  width: 40px;
  height: 40px;
  flex-basis: 40px;
  border-color: rgba(82, 96, 121, 0.18);
  background: #f1f3f6;
  color: #526079;
  box-shadow: none;
}

.invite-record-identity.is-past .mutual-confirmation-seal svg {
  width: 29px;
  height: 29px;
}

.on-ready-strip {
  grid-template-columns: minmax(0, 1fr);
}

.member-action-result {
  grid-template-columns: 64px minmax(0, 1fr);
  align-items: center;
}

.member-action-result > .mutual-confirmation-seal {
  width: 64px;
  height: 64px;
  flex-basis: 64px;
  border-radius: 50%;
  background: #e3f5ee;
  color: #0b625b;
}

.member-action-result > .mutual-confirmation-seal svg {
  width: 48px;
  height: 48px;
}

@media (max-width: 340px) {
  .invite-record-identity.is-on .mutual-confirmation-seal,
  .invite-record-identity.is-past .mutual-confirmation-seal {
    width: 38px;
    height: 38px;
    flex-basis: 38px;
  }
}

/* Prototype v112: private Your Social Mix assessment with in-flow actions. */
.account-settings-symbol.is-social-fit {
  background: #e9eef9;
  color: #315cb8;
  font-size: 0.95rem;
}

.social-fit-card {
  gap: 14px;
}

.social-fit-promise {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  align-items: center;
  gap: 11px;
  border: 1px solid rgba(49, 92, 184, 0.14);
  border-radius: 16px;
  background: #f4f7fd;
  padding: 12px;
}

.social-fit-promise-mark {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  background: #e4ebfa;
  color: #315cb8;
  font-size: 1.35rem;
  font-weight: 900;
}

.social-fit-promise strong,
.social-fit-promise span,
.social-fit-overview-head strong,
.social-fit-overview-head span,
.social-fit-summary-row strong,
.social-fit-summary-row span,
.social-fit-empty strong,
.social-fit-empty span {
  display: block;
}

.social-fit-promise strong {
  font-size: 0.88rem;
  line-height: 1.25;
}

.social-fit-promise div > span {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 660;
  line-height: 1.38;
}

.social-fit-overview,
.social-fit-editor {
  display: grid;
  gap: 13px;
}

.social-fit-overview-head {
  min-height: 54px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.social-fit-overview-head div > span {
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 820;
  letter-spacing: 0.055em;
  text-transform: uppercase;
}

.social-fit-overview-head strong {
  margin-top: 3px;
  font-family: ui-serif, "New York", Georgia, serif;
  font-size: 1.16rem;
  letter-spacing: -0.015em;
}

.social-fit-overview-head > .social-fit-count {
  flex: 0 0 auto;
  border-radius: 999px;
  background: #e8f3ef;
  color: #176b62;
  padding: 7px 10px;
  font-size: 0.71rem;
  font-weight: 820;
}

.social-fit-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow: hidden;
  gap: 1px;
  border: 1px solid var(--settings-divider);
  border-radius: 15px;
  background: var(--settings-divider);
}

.social-fit-facts div {
  min-width: 0;
  background: #faf8f4;
  padding: 11px 8px;
  text-align: center;
}

.social-fit-facts strong,
.social-fit-facts span {
  display: block;
}

.social-fit-facts strong {
  color: #2f456e;
  font-size: 0.8rem;
}

.social-fit-facts span {
  margin-top: 2px;
  color: var(--muted);
  font-size: 0.65rem;
  font-weight: 680;
  line-height: 1.2;
}

.social-fit-empty {
  border: 1px dashed rgba(49, 92, 184, 0.22);
  border-radius: 16px;
  background: #fbfcff;
  padding: 16px;
}

.social-fit-empty strong {
  font-size: 0.88rem;
}

.social-fit-empty span {
  margin-top: 5px;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 660;
  line-height: 1.4;
}

.social-fit-completion-receipt {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  align-items: center;
  gap: 9px;
  border: 1px solid rgba(25, 124, 114, 0.16);
  border-radius: 15px;
  background: #edf7f3;
  color: #0b5b54;
  padding: 10px 11px;
}

.social-fit-completion-receipt > span {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #197c72;
  color: white;
  font-size: 0.74rem;
  font-weight: 900;
}

.social-fit-completion-receipt strong,
.social-fit-completion-receipt small {
  display: block;
}

.social-fit-completion-receipt strong {
  font-size: 0.8rem;
}

.social-fit-completion-receipt small {
  margin-top: 2px;
  color: #3f6e68;
  font-size: 0.69rem;
  font-weight: 660;
  line-height: 1.32;
}

.social-fit-summary-list {
  overflow: hidden;
  border: 1px solid var(--settings-divider);
  border-radius: 16px;
  background: #fffdfa;
}

.social-fit-summary-row {
  min-height: 62px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 9px 10px 9px 12px;
}

.social-fit-summary-row + .social-fit-summary-row {
  border-top: 1px solid var(--settings-divider);
}

.social-fit-summary-row div {
  min-width: 0;
}

.social-fit-summary-row div > span {
  color: var(--muted);
  font-size: 0.65rem;
  font-weight: 820;
  letter-spacing: 0.045em;
  text-transform: uppercase;
}

.social-fit-summary-row strong {
  margin-top: 3px;
  overflow-wrap: anywhere;
  font-size: 0.8rem;
  line-height: 1.28;
}

.social-fit-summary-row button {
  min-width: 58px;
  border: 0;
  border-radius: 11px;
  background: #edf1fb;
  color: #284c98;
  padding: 0 10px;
  font-size: 0.74rem;
  font-weight: 820;
}

.social-fit-summary-row button:hover,
.social-fit-summary-row button:focus-visible {
  background: #e1e8f8;
}

.social-fit-start {
  margin: 0;
}

.social-fit-footnote {
  margin: -3px 2px 0;
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 650;
  line-height: 1.38;
  text-align: center;
}

.social-fit-progress-head {
  min-height: 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.social-fit-progress-head strong {
  font-size: 0.76rem;
}

.social-fit-progress-head span {
  color: #176b62;
  font-size: 0.7rem;
  font-weight: 780;
}

.social-fit-progress-track {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 4px;
}

.social-fit-progress-track span {
  height: 5px;
  border-radius: 999px;
  background: #e3dfd9;
}

.social-fit-progress-track span.is-complete {
  background: #72a99f;
}

.social-fit-progress-track span.is-current {
  background: #315cb8;
}

.social-fit-question-head {
  padding: 4px 1px 0;
}

.social-fit-question-head .eyebrow {
  margin: 0;
}

.social-fit-question-head h3 {
  margin: 5px 0 0;
  font-family: ui-serif, "New York", Georgia, serif;
  font-size: clamp(1.35rem, 5vw, 1.75rem);
  line-height: 1.08;
  letter-spacing: -0.025em;
}

.social-fit-question-head h3:focus {
  outline: none;
}

.social-fit-question-head > span {
  display: block;
  margin-top: 6px;
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 660;
  line-height: 1.38;
}

.social-fit-fields {
  display: grid;
  gap: 14px;
}

.social-fit-field {
  min-width: 0;
  border: 0;
  padding: 0;
  margin: 0;
}

.social-fit-field + .social-fit-field {
  border-top: 1px solid var(--settings-divider);
  padding-top: 14px;
}

.social-fit-field legend {
  max-width: 690px;
  padding: 0;
  font-size: 0.93rem;
  font-weight: 820;
  line-height: 1.32;
}

.social-fit-field-helper {
  max-width: 690px;
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 650;
  line-height: 1.4;
}

.social-fit-choice-list {
  display: grid;
  gap: 7px;
  margin-top: 11px;
}

.social-fit-choice {
  min-width: 0;
  min-height: 50px;
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  border: 1px solid var(--settings-divider);
  border-radius: 14px;
  background: #fffdfa;
  color: var(--ink);
  padding: 9px 11px;
  cursor: pointer;
}

.social-fit-choice:hover,
.social-fit-choice:has(input:focus-visible) {
  border-color: rgba(49, 92, 184, 0.42);
  background: #f6f8fd;
}

.social-fit-choice:has(input:checked) {
  border-color: rgba(49, 92, 184, 0.48);
  background: #edf2fc;
  box-shadow: inset 3px 0 0 #315cb8;
}

.social-fit-choice input {
  width: 20px;
  height: 20px;
  min-height: 20px;
  margin: 0;
  accent-color: #315cb8;
}

.social-fit-choice input:focus-visible {
  outline: 2px solid #315cb8;
  outline-offset: 2px;
}

.social-fit-choice span {
  min-width: 0;
  font-size: 0.8rem;
  font-weight: 720;
  line-height: 1.3;
}

.social-fit-actions {
  position: static;
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) auto minmax(0, 1.2fr);
  align-items: center;
  gap: 8px;
  margin-top: 2px;
  border: 1px solid var(--settings-divider);
  border-radius: 16px;
  background: #fffdfa;
  padding: 8px;
  box-shadow: none;
}

.social-fit-actions .primary-action,
.social-fit-actions .secondary-action {
  min-width: 0;
  min-height: 50px;
  margin: 0;
  padding: 0 10px;
  font-size: 0.84rem;
}

.social-fit-skip-action {
  min-height: 44px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: #596579;
  padding: 0 8px;
  font-size: 0.75rem;
  font-weight: 790;
  white-space: nowrap;
}

.social-fit-skip-action:hover,
.social-fit-skip-action:focus-visible {
  background: #f1eee9;
}

@media (min-width: 901px) {
  body.is-prototype-desktop .social-fit-overview,
  body.is-prototype-desktop .social-fit-editor {
    max-width: 720px;
  }

  body.is-prototype-desktop .social-fit-choice-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.is-prototype-desktop .social-fit-choice:last-child:nth-child(odd) {
    grid-column: 1 / -1;
  }
}

@media (max-width: 420px) {
  .social-fit-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .social-fit-actions > .secondary-action {
    grid-column: 1;
    grid-row: 1;
  }

  .social-fit-actions > .primary-action {
    grid-column: 2;
    grid-row: 1;
  }

  .social-fit-skip-action {
    grid-column: 1 / -1;
    grid-row: 2;
  }
}

@media (max-width: 340px) {
  .social-fit-promise {
    grid-template-columns: 38px minmax(0, 1fr);
  }

  .social-fit-promise-mark {
    width: 38px;
    height: 38px;
    border-radius: 12px;
  }

  .social-fit-facts strong {
    font-size: 0.73rem;
  }

  .social-fit-facts span {
    font-size: 0.6rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .social-fit-choice {
    transition: none;
  }
}

/* Your Social Mix invitation-area promotion. It occupies layout space only while visible. */
.social-mix-promo {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  align-items: center;
  gap: 11px;
  margin: 4px 8px 14px;
  border: 1px solid rgba(49, 92, 184, 0.2);
  border-radius: 20px;
  background: #f1f5fd;
  padding: 14px;
  box-shadow: 0 10px 28px rgba(49, 70, 112, 0.08);
}

.social-mix-promo[hidden] {
  display: none !important;
}

.social-mix-promo-mark {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(49, 92, 184, 0.15);
  border-radius: 15px;
  background: #e2eafa;
  color: #315cb8;
  font-size: 1.3rem;
  font-weight: 900;
}

.social-mix-promo-copy {
  min-width: 0;
}

.social-mix-promo-copy .eyebrow {
  margin: 0;
  color: #315cb8;
}

.social-mix-promo-copy h2 {
  margin: 4px 0 0;
  font-family: ui-serif, "New York", Georgia, serif;
  font-size: clamp(1.18rem, 5vw, 1.45rem);
  line-height: 1.06;
  letter-spacing: -0.025em;
}

.social-mix-promo-copy > p:last-child {
  margin: 5px 0 0;
  color: #596579;
  font-size: 0.75rem;
  font-weight: 660;
  line-height: 1.38;
}

.social-mix-promo-actions {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, 0.85fr);
  gap: 8px;
}

.social-mix-promo-actions .primary-action,
.social-mix-promo-later {
  min-width: 0;
  min-height: 48px;
  margin: 0;
  border-radius: 14px;
  font-size: 0.8rem;
  font-weight: 830;
}

.social-mix-promo-later {
  border: 1px solid rgba(49, 92, 184, 0.13);
  background: rgba(255, 255, 255, 0.7);
  color: #39527f;
}

.social-mix-promo-later:hover,
.social-mix-promo-later:focus-visible {
  border-color: rgba(49, 92, 184, 0.35);
  background: white;
}

/* Conversational five-point presentation around the validated Mini-IPIP items. */
.social-fit-progress-track {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.social-fit-progress-track span.is-family {
  border: 1px dashed #9ba8be;
  background: transparent;
}

.social-fit-progress-track span.is-family.is-current,
.social-fit-progress-track span.is-family.is-complete {
  border-color: #315cb8;
  background: #dce6fa;
}

.social-mix-scale-key {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 16px;
  border-bottom: 1px solid var(--settings-divider);
  padding: 0 2px 9px;
}

.social-mix-scale-key span,
.social-mix-scale-key strong,
.social-mix-scale-key small {
  display: block;
}

.social-mix-scale-key span:last-child {
  text-align: right;
}

.social-mix-scale-key strong {
  color: #315cb8;
  font-size: 0.73rem;
}

.social-mix-scale-key small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 0.62rem;
  font-weight: 680;
}

.social-fit-fields.is-personality-round {
  gap: 9px;
}

.social-fit-field.social-mix-statement,
.social-fit-field.social-mix-statement + .social-fit-field.social-mix-statement {
  border: 1px solid var(--settings-divider);
  border-radius: 15px;
  background: #fffdfa;
  padding: 11px;
}

.social-fit-field.social-mix-statement legend {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: start;
  gap: 8px;
  width: 100%;
  font-size: 0.83rem;
  line-height: 1.3;
}

.social-fit-field.social-mix-statement legend > span {
  width: 24px;
  height: 24px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  background: #edf1fb;
  color: #315cb8;
  font-size: 0.66rem;
  font-weight: 880;
}

.social-mix-scale {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 4px;
  margin-top: 10px;
}

.social-mix-scale-choice {
  position: relative;
  min-width: 0;
  min-height: 58px;
  display: grid;
  place-items: center;
  border: 1px solid #dddfe6;
  border-radius: 11px;
  background: #f8f7f4;
  color: #5e626b;
  padding: 5px 3px;
  text-align: center;
  cursor: pointer;
}

.social-mix-scale-choice:hover,
.social-mix-scale-choice:has(input:focus-visible) {
  border-color: rgba(49, 92, 184, 0.45);
  background: #f0f4fc;
}

.social-mix-scale-choice:has(input:checked) {
  border-color: #315cb8;
  background: #315cb8;
  color: white;
  box-shadow: 0 6px 14px rgba(49, 92, 184, 0.2);
}

.social-mix-scale-choice input {
  position: absolute;
  width: 1px;
  height: 1px;
  min-height: 1px;
  overflow: hidden;
  opacity: 0;
}

.social-mix-scale-choice span {
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: clamp(0.57rem, 2.15vw, 0.7rem);
  font-weight: 810;
  line-height: 1.12;
}

.social-mix-round-message {
  margin: -2px 2px 0;
  color: #315cb8;
  font-size: 0.71rem;
  font-weight: 780;
  text-align: right;
}

.social-fit-validation {
  margin: 0;
  border: 1px solid #e6c79d;
  border-radius: 13px;
  background: #fff8ed;
  color: #754817;
  padding: 10px 11px;
  font-size: 0.75rem;
  font-weight: 720;
  line-height: 1.36;
}

.social-fit-validation:focus {
  outline: 2px solid #b56c1d;
  outline-offset: 2px;
}

/* Private blend and transparent five-dimension result. */
.social-mix-result {
  display: grid;
  gap: 12px;
  border: 1px solid rgba(49, 92, 184, 0.17);
  border-radius: 20px;
  background: #f8f9fd;
  padding: 13px;
}

.social-mix-result-hero {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  align-items: center;
  gap: 11px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(49, 92, 184, 0.13);
}

.social-mix-result-mark {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border-radius: 15px;
  background: #315cb8;
  color: white;
  font-size: 1.25rem;
}

.social-mix-result-hero .eyebrow {
  margin: 0;
  color: #315cb8;
}

.social-mix-result-hero h3 {
  margin: 3px 0 0;
  font-family: ui-serif, "New York", Georgia, serif;
  font-size: clamp(1.35rem, 5.5vw, 1.8rem);
  line-height: 1.04;
  letter-spacing: -0.03em;
}

.social-mix-result-hero p:last-child {
  margin: 5px 0 0;
  color: #596579;
  font-size: 0.73rem;
  font-weight: 660;
  line-height: 1.38;
}

.social-mix-trait-list {
  display: grid;
  gap: 8px;
}

.social-mix-trait-card {
  border: 1px solid rgba(56, 46, 39, 0.1);
  border-radius: 14px;
  background: #fffdfa;
  padding: 10px;
}

.social-mix-trait-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
}

.social-mix-trait-head strong {
  color: #273f70;
  font-size: 0.79rem;
}

.social-mix-trait-head span {
  color: var(--muted);
  font-size: 0.62rem;
  font-weight: 720;
  text-align: right;
}

.social-mix-trait-spectrum {
  position: relative;
  height: 16px;
  margin: 8px 6px 2px;
}

.social-mix-trait-line {
  position: absolute;
  top: 7px;
  right: 0;
  left: 0;
  height: 3px;
  border-radius: 999px;
  background: #dce3ef;
}

.social-mix-trait-position {
  position: absolute;
  top: 2px;
  width: 13px;
  height: 13px;
  transform: translateX(-50%);
  border: 2px solid white;
  border-radius: 50%;
  background: #315cb8;
  box-shadow: 0 1px 5px rgba(49, 92, 184, 0.35);
}

.social-mix-trait-ends {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  color: #6d7280;
  font-size: 0.59rem;
  font-weight: 680;
  line-height: 1.2;
}

.social-mix-trait-ends span {
  max-width: 46%;
}

.social-mix-trait-ends span:last-child {
  text-align: right;
}

.social-mix-result-note {
  margin: 0;
  color: #697080;
  font-size: 0.66rem;
  font-weight: 640;
  line-height: 1.42;
}

/* Prototype v113: completed Social Mix is a permanent result, never a retake surface. */
.social-fit-card.is-complete > .social-fit-promise {
  display: none;
}

.social-fit-overview.is-complete {
  gap: 14px;
}

.social-fit-result-status {
  min-height: 56px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border-bottom: 1px solid var(--settings-divider);
  padding: 0 2px 12px;
}

.social-fit-result-status div > span,
.social-fit-result-status strong {
  display: block;
}

.social-fit-result-status div > span {
  color: #176b62;
  font-size: 0.68rem;
  font-weight: 850;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.social-fit-result-status strong {
  margin-top: 4px;
  font-family: ui-serif, "New York", Georgia, serif;
  font-size: clamp(1.08rem, 4.5vw, 1.35rem);
  line-height: 1.12;
}

.social-fit-result-lock {
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #e3f3ed;
  color: #176b62;
  font-size: 0.86rem;
  font-weight: 900;
}

/* Prototype v114: layered, cross-trait interpretation for the final private result. */
.social-mix-story {
  display: grid;
  gap: 10px;
  border: 1px solid rgba(49, 92, 184, 0.13);
  border-radius: 16px;
  background: #fffdfa;
  padding: 12px;
}

.social-mix-story-head .eyebrow {
  margin: 0;
  color: #315cb8;
}

.social-mix-story-head h4 {
  margin: 4px 0 0;
  font-family: ui-serif, "New York", Georgia, serif;
  font-size: clamp(1.08rem, 4.6vw, 1.3rem);
  line-height: 1.08;
  letter-spacing: -0.02em;
}

.social-mix-story-pair {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
}

.social-mix-story-pair span {
  border: 1px solid rgba(49, 92, 184, 0.13);
  border-radius: 999px;
  background: #edf2fc;
  color: #284c98;
  padding: 6px 9px;
  font-size: 0.68rem;
  font-weight: 830;
}

.social-mix-story-pair b {
  color: #7b8494;
  font-size: 0.72rem;
}

.social-mix-story > p {
  margin: 0;
  color: #4f596a;
  font-size: 0.74rem;
  font-weight: 650;
  line-height: 1.5;
}

.social-mix-contrast {
  border-left: 3px solid #8ba5dc;
  background: #f5f7fc;
  padding: 9px 10px;
}

.social-mix-contrast strong,
.social-mix-contrast p {
  display: block;
}

.social-mix-contrast strong {
  color: #273f70;
  font-size: 0.72rem;
}

.social-mix-contrast p {
  margin: 4px 0 0;
  color: #5d6573;
  font-size: 0.69rem;
  font-weight: 640;
  line-height: 1.46;
}

.social-mix-reflections {
  display: grid;
  gap: 10px;
  border-top: 1px solid rgba(49, 92, 184, 0.13);
  padding-top: 12px;
}

.social-mix-reflections-head .eyebrow {
  margin: 0;
  color: #315cb8;
}

.social-mix-reflections-head h4 {
  margin: 4px 0 0;
  font-family: ui-serif, "New York", Georgia, serif;
  font-size: 1.08rem;
  line-height: 1.1;
  letter-spacing: -0.02em;
}

.social-mix-reflections-head > p:last-child {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 0.69rem;
  font-weight: 650;
  line-height: 1.38;
}

.social-mix-reflection-list {
  display: grid;
  gap: 8px;
}

.social-mix-reflection-card {
  min-width: 0;
  display: grid;
  grid-template-columns: 31px minmax(0, 1fr);
  align-items: start;
  gap: 9px;
  border: 1px solid rgba(56, 46, 39, 0.1);
  border-radius: 14px;
  background: #fffdfa;
  padding: 10px;
}

.social-mix-reflection-card > span {
  width: 31px;
  height: 31px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: #edf1fb;
  color: #315cb8;
  font-size: 0.61rem;
  font-weight: 900;
}

.social-mix-reflection-card strong,
.social-mix-reflection-card p {
  display: block;
}

.social-mix-reflection-card strong {
  color: #273f70;
  font-size: 0.76rem;
}

.social-mix-reflection-card p {
  margin: 3px 0 0;
  color: #5f6673;
  font-size: 0.69rem;
  font-weight: 650;
  line-height: 1.4;
}

.social-mix-experiment {
  min-width: 0;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  border: 1px solid rgba(23, 107, 98, 0.16);
  border-radius: 15px;
  background: #eef7f3;
  padding: 11px;
}

.social-mix-experiment > span {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: #dcefe8;
  color: #176b62;
  font-size: 0.92rem;
  font-weight: 900;
}

.social-mix-experiment .eyebrow {
  margin: 0;
  color: #176b62;
}

.social-mix-experiment strong,
.social-mix-experiment p,
.social-mix-experiment small {
  display: block;
}

.social-mix-experiment strong {
  margin-top: 3px;
  color: #184f49;
  font-family: ui-serif, "New York", Georgia, serif;
  font-size: 0.96rem;
  line-height: 1.1;
}

.social-mix-experiment p {
  margin: 5px 0 0;
  color: #3f625e;
  font-size: 0.72rem;
  font-weight: 680;
  line-height: 1.44;
}

.social-mix-experiment small {
  margin-top: 5px;
  color: #64807c;
  font-size: 0.63rem;
  font-weight: 650;
  line-height: 1.35;
}

.social-fit-complete-note {
  margin: -2px 4px 0;
  color: #697080;
  font-size: 0.68rem;
  font-weight: 650;
  line-height: 1.4;
  text-align: center;
}

@media (min-width: 901px) {
  body.is-prototype-desktop .screen-scroll:has(.root-tabs:not([hidden])) > .social-mix-promo:not([hidden]) {
    grid-column: 1 / -1;
    grid-row: 2;
    margin: 0 0 18px;
  }

  body.is-prototype-desktop .screen-scroll.has-social-mix-promo > .root-tabs {
    grid-row: 3;
  }

  /* Prototype v127: keep the desktop Invitations workspace below the optional promotion. */
  body.is-prototype-desktop .screen-scroll.has-social-mix-promo:has(.root-tabs:not([hidden])) > #findView.is-active,
  body.is-prototype-desktop .screen-scroll.has-social-mix-promo:has(.root-tabs:not([hidden])) > #homeView.is-active,
  body.is-prototype-desktop .screen-scroll.has-social-mix-promo:has(.root-tabs:not([hidden])) > #onView.is-active {
    grid-row: 3;
    align-self: start;
  }

  body.is-prototype-desktop .social-mix-promo {
    grid-template-columns: 56px minmax(0, 1fr) auto;
    gap: 14px;
    padding: 16px 18px;
  }

  body.is-prototype-desktop .social-mix-promo-mark {
    width: 56px;
    height: 56px;
    border-radius: 18px;
  }

  body.is-prototype-desktop .social-mix-promo-actions {
    grid-column: 3;
    display: flex;
    min-width: 270px;
  }

  body.is-prototype-desktop .social-mix-promo-actions .primary-action,
  body.is-prototype-desktop .social-mix-promo-later {
    min-width: 128px;
  }

  body.is-prototype-desktop .social-fit-overview,
  body.is-prototype-desktop .social-fit-editor {
    max-width: 780px;
  }

  body.is-prototype-desktop .social-mix-statement .social-mix-scale-choice span {
    font-size: 0.68rem;
  }

  body.is-prototype-desktop .social-mix-trait-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.is-prototype-desktop .social-mix-trait-card:last-child:nth-child(odd) {
    grid-column: 1 / -1;
  }

  body.is-prototype-desktop .social-mix-reflection-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 340px) {
  .social-mix-promo {
    margin-right: 4px;
    margin-left: 4px;
    padding: 12px;
  }

  .social-mix-promo-actions {
    grid-template-columns: 1fr;
  }

  .social-mix-scale-choice {
    min-height: 62px;
    padding: 4px 2px;
  }

  .social-mix-scale-choice span {
    font-size: 0.55rem;
  }

  .social-mix-trait-head {
    display: grid;
  }

  .social-mix-trait-head span {
    text-align: left;
  }

  .social-fit-result-status {
    align-items: flex-start;
  }
}

@media (prefers-reduced-motion: reduce) {
  .social-mix-promo,
  .social-mix-scale-choice,
  .social-mix-trait-position {
    transition: none;
  }
}

/* Prototype v117: public Journal boundary and signature platform invitation. */

.app-nav.is-public-journal {
  border-bottom-color: rgba(82, 55, 44, 0.12);
}

.app-nav.is-public-journal .nav-status {
  color: #52372c;
  font-family: ui-serif, "New York", Georgia, serif;
  letter-spacing: 0.01em;
}

.public-journal-view {
  color: #3f3029;
}

.public-journal-view.is-active {
  display: grid;
  gap: 16px;
}

.journal-masthead {
  margin-top: 4px;
  border-top: 1px solid rgba(82, 55, 44, 0.16);
  border-bottom: 1px solid rgba(82, 55, 44, 0.16);
  padding: 18px 2px 20px;
}

.journal-masthead-topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 28px;
}

.journal-wordmark {
  font-family: ui-serif, "New York", Georgia, serif;
  font-size: 1.05rem;
  font-style: italic;
  font-weight: 760;
}

.journal-public-label {
  color: #7b665c;
  font-size: 0.64rem;
  font-weight: 800;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

.journal-masthead .eyebrow {
  margin: 0;
  color: #8a513e;
}

.journal-masthead h2 {
  max-width: 660px;
  margin: 7px 0 0;
  font-family: ui-serif, "New York", Georgia, serif;
  font-size: clamp(2rem, 8.5vw, 3.3rem);
  font-weight: 680;
  letter-spacing: -0.045em;
  line-height: 0.98;
}

.journal-masthead > p:last-child {
  max-width: 620px;
  margin: 13px 0 0;
  color: #725f56;
  font-size: 0.9rem;
  font-weight: 620;
  line-height: 1.55;
}

.journal-feature {
  overflow: hidden;
  border: 1px solid rgba(82, 55, 44, 0.14);
  border-radius: 22px;
  background: #f3e8dc;
}

.journal-feature-art {
  min-height: 210px;
  overflow: hidden;
  position: relative;
  background: #b86f56;
}

.journal-art-sun {
  width: 82px;
  height: 82px;
  border-radius: 50%;
  background: #f1c783;
  position: absolute;
  top: 26px;
  right: 26px;
}

.journal-art-arch {
  width: 58%;
  height: 82%;
  border: 18px solid #5b3b4b;
  border-bottom: 0;
  border-radius: 48% 48% 0 0;
  position: absolute;
  bottom: -8px;
  left: 12%;
}

.journal-art-path {
  width: 74%;
  height: 34px;
  background: #ead8bd;
  position: absolute;
  right: -12%;
  bottom: 23px;
  transform: rotate(-9deg);
}

.journal-feature-copy {
  padding: 18px;
}

.journal-section-label {
  margin: 0;
  color: #9a513a;
  font-size: 0.66rem;
  font-weight: 860;
  letter-spacing: 0.075em;
  line-height: 1.2;
  text-transform: uppercase;
}

.journal-feature-copy h3,
.journal-story-grid h3,
.journal-boundary h3 {
  font-family: ui-serif, "New York", Georgia, serif;
}

.journal-feature-copy h3 {
  margin: 7px 0 0;
  font-size: 1.55rem;
  font-weight: 690;
  letter-spacing: -0.025em;
  line-height: 1.05;
}

.journal-feature-copy > p:not(.journal-section-label) {
  margin: 10px 0 0;
  color: #6e5a51;
  font-size: 0.82rem;
  font-weight: 630;
  line-height: 1.5;
}

.journal-feature-copy > span {
  display: block;
  margin-top: 14px;
  color: #8c7469;
  font-size: 0.66rem;
  font-weight: 780;
}

.journal-story-grid {
  display: grid;
  gap: 10px;
}

.journal-story-grid article {
  min-width: 0;
  border-top: 1px solid rgba(82, 55, 44, 0.16);
  padding: 16px 2px 8px;
}

.journal-story-mark {
  width: 100%;
  height: 78px;
  display: block;
  margin-bottom: 14px;
  overflow: hidden;
  position: relative;
  background: #d7a86e;
}

.journal-story-mark::before,
.journal-story-mark::after {
  content: "";
  position: absolute;
}

.journal-story-mark::before {
  width: 72px;
  height: 72px;
  border: 12px solid #62414f;
  border-radius: 50%;
  top: 14px;
  left: 18px;
}

.journal-story-mark::after {
  width: 56%;
  height: 14px;
  background: #f1e4cd;
  right: -8px;
  bottom: 15px;
  transform: rotate(-8deg);
}

.journal-story-mark.is-nearby {
  background: #729a88;
}

.journal-story-mark.is-nearby::before {
  border-radius: 50% 50% 14px 14px;
  border-color: #f0c986;
}

.journal-story-mark.is-founder {
  background: #7e617d;
}

.journal-story-mark.is-founder::before {
  border-color: #d9b969;
  border-radius: 4px 38px 4px 38px;
}

.journal-story-mark.is-after {
  background: #b9614f;
}

.journal-story-mark.is-after::before {
  border-color: #f0d8bd;
  border-radius: 50% 4px 50% 4px;
}

.journal-story-grid h3 {
  margin: 6px 0 0;
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.12;
}

.journal-story-grid article > p:last-child {
  margin: 8px 0 0;
  color: #76635a;
  font-size: 0.76rem;
  font-weight: 630;
  line-height: 1.48;
}

.journal-boundary {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 12px;
  border: 1px solid rgba(69, 94, 86, 0.18);
  border-radius: 20px;
  background: #eaf0ec;
  padding: 16px;
}

.journal-boundary-mark {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(69, 94, 86, 0.24);
  border-radius: 50%;
  color: #47665c;
  font-size: 1.4rem;
}

.journal-boundary h3 {
  margin: 6px 0 0;
  color: #344e47;
  font-size: 1.1rem;
  line-height: 1.12;
}

.journal-boundary div > p:last-child {
  margin: 8px 0 0;
  color: #5d736b;
  font-size: 0.76rem;
  font-weight: 650;
  line-height: 1.48;
}

.journal-membership-action {
  grid-column: 1 / -1;
  min-height: 48px;
  border: 1px solid #47665c;
  border-radius: 14px;
  background: #47665c;
  color: #fff;
  padding: 0 16px;
  font-size: 0.78rem;
  font-weight: 840;
}

.platform-invite-badge {
  border-color: rgba(91, 59, 75, 0.2);
  background: #f4ebe7;
  color: #5b3b4b;
}

.platform-invite-mark {
  border-radius: 50% 50% 50% 9px;
  background: #5b3b4b;
  font-size: 0.9rem;
}

.platform-invite-badge small {
  color: #7d5b68;
}

.invite-record.is-platform-invite {
  border-color: color-mix(in srgb, #8e5c72 38%, rgba(56, 46, 39, 0.12));
}

.signature-invite-teaser {
  min-width: 0;
  min-height: 34px;
  display: flex;
  align-items: center;
  gap: 7px;
  border-bottom: 1px solid rgba(91, 59, 75, 0.12);
  color: #654555;
  padding: 5px 2px;
}

.signature-invite-teaser > span {
  width: 22px;
  height: 22px;
  flex: 0 0 22px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #f0e1e6;
  font-size: 0.66rem;
}

.signature-invite-teaser strong {
  min-width: 0;
  font-size: 0.67rem;
  font-weight: 780;
  line-height: 1.28;
}

.signature-invite-story {
  margin-top: 12px;
  overflow: hidden;
  border: 1px solid rgba(91, 59, 75, 0.16);
  border-radius: 20px;
  background: #fffdfa;
}

.signature-invite-editorial {
  display: grid;
  grid-template-columns: 118px minmax(0, 1fr);
  background: #f6eee9;
}

.signature-invite-art {
  min-height: 178px;
  overflow: hidden;
  position: relative;
  background: #573a58;
}

.signature-art-moon {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #e6bd70;
  position: absolute;
  top: 18px;
  right: 13px;
}

.signature-art-arch {
  width: 82px;
  height: 112px;
  border: 12px solid #c47565;
  border-bottom: 0;
  border-radius: 42px 42px 0 0;
  position: absolute;
  bottom: 0;
  left: 12px;
}

.signature-art-stage {
  width: 104px;
  height: 12px;
  background: #e7d5b6;
  position: absolute;
  bottom: 23px;
  left: 16px;
  transform: rotate(-6deg);
}

.signature-art-note {
  color: #f3ddbd;
  position: absolute;
  font-family: ui-serif, "New York", Georgia, serif;
  font-weight: 800;
}

.signature-art-note.is-one {
  top: 72px;
  left: 34px;
}

.signature-art-note.is-two {
  top: 56px;
  left: 68px;
}

.signature-art-note.is-three {
  top: 91px;
  left: 76px;
}

.signature-invite-editorial-copy {
  align-self: center;
  padding: 16px;
}

.signature-invite-editorial-copy .eyebrow {
  margin: 0;
  color: #995548;
}

.signature-invite-editorial-copy h3 {
  margin: 6px 0 0;
  color: #49333f;
  font-family: ui-serif, "New York", Georgia, serif;
  font-size: 1.18rem;
  font-weight: 720;
  letter-spacing: -0.02em;
  line-height: 1.05;
}

.signature-invite-editorial-copy > p:last-child {
  margin: 8px 0 0;
  color: #725c66;
  font-size: 0.72rem;
  font-weight: 640;
  line-height: 1.45;
}

.signature-arrival-promise {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: center;
  gap: 9px;
  border-bottom: 1px solid rgba(91, 59, 75, 0.12);
  padding: 13px 14px;
}

.signature-arrival-promise > span {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #e8efe9;
  color: #47665c;
  font-size: 1rem;
  font-weight: 900;
}

.signature-arrival-promise small,
.signature-arrival-promise strong {
  display: block;
}

.signature-arrival-promise small {
  color: #7b696f;
  font-size: 0.62rem;
  font-weight: 840;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.signature-arrival-promise strong {
  margin-top: 2px;
  color: #3f564f;
  font-size: 0.82rem;
  line-height: 1.24;
}

.signature-hospitality-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0;
  padding: 4px 14px;
}

.signature-hospitality-grid > div {
  min-width: 0;
  border-bottom: 1px solid rgba(91, 59, 75, 0.1);
  padding: 11px 8px 11px 0;
}

.signature-hospitality-grid > div:nth-child(odd) {
  border-right: 1px solid rgba(91, 59, 75, 0.1);
}

.signature-hospitality-grid > div:nth-child(even) {
  padding-left: 11px;
}

.signature-hospitality-grid dt {
  color: #8d554c;
  font-size: 0.62rem;
  font-weight: 860;
  letter-spacing: 0.055em;
  text-transform: uppercase;
}

.signature-hospitality-grid dd {
  margin: 4px 0 0;
  color: #65565c;
  font-size: 0.7rem;
  font-weight: 650;
  line-height: 1.4;
}

.signature-accommodation-note {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  margin: 0;
  background: #edf2ef;
  color: #557067;
  padding: 11px 14px;
  font-size: 0.68rem;
  font-weight: 640;
  line-height: 1.4;
}

.signature-accommodation-note > span:first-child {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(71, 102, 92, 0.2);
  border-radius: 50%;
  font-size: 0.86rem;
}

.signature-accommodation-note strong {
  display: block;
  color: #405b52;
  font-size: 0.64rem;
}

@media (min-width: 720px) {
  body.is-prototype-desktop #journalView.is-active {
    max-width: 980px;
    margin-right: auto;
    margin-left: auto;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }

  body.is-prototype-desktop #journalView .journal-masthead,
  body.is-prototype-desktop #journalView .journal-feature,
  body.is-prototype-desktop #journalView .journal-boundary {
    grid-column: 1 / -1;
  }

  body.is-prototype-desktop #journalView .journal-masthead {
    padding-top: 28px;
    padding-bottom: 34px;
  }

  body.is-prototype-desktop #journalView .journal-masthead h2 {
    font-size: 3.8rem;
  }

  body.is-prototype-desktop #journalView .journal-feature {
    display: grid;
    grid-template-columns: minmax(280px, 0.9fr) minmax(0, 1.1fr);
  }

  body.is-prototype-desktop #journalView .journal-feature-art {
    min-height: 290px;
  }

  body.is-prototype-desktop #journalView .journal-feature-copy {
    align-self: center;
    padding: 34px;
  }

  body.is-prototype-desktop #journalView .journal-feature-copy h3 {
    font-size: 2rem;
  }

  body.is-prototype-desktop #journalView .journal-story-grid {
    grid-column: 1 / -1;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
  }

  body.is-prototype-desktop #journalView .journal-boundary {
    grid-template-columns: 52px minmax(0, 1fr) auto;
    align-items: center;
    padding: 20px;
  }

  body.is-prototype-desktop #journalView .journal-membership-action {
    grid-column: 3;
    min-width: 190px;
  }
}

@media (max-width: 360px) {
  .signature-invite-editorial {
    grid-template-columns: 92px minmax(0, 1fr);
  }

  .signature-invite-art {
    min-height: 196px;
  }

  .signature-art-arch {
    left: 2px;
  }

  .signature-hospitality-grid {
    grid-template-columns: 1fr;
  }

  .signature-hospitality-grid > div:nth-child(odd) {
    border-right: 0;
  }

  .signature-hospitality-grid > div:nth-child(even) {
    padding-left: 0;
  }

  .journal-masthead-topline {
    align-items: flex-start;
  }

  .journal-public-label {
    max-width: 126px;
    text-align: right;
  }
}

/* Editorial Confidence Path
   Canonical presentation layer, promoted from the vetted research direction. */
body.is-editorial-confidence-path {
  --alt-canvas: #f1ece4;
  --alt-canvas-deep: #e8e0d5;
  --alt-surface: #fffdf9;
  --alt-surface-strong: #ffffff;
  --alt-ink: #211d1a;
  --alt-muted: #726960;
  --alt-line: rgba(54, 44, 36, 0.13);
  --alt-line-strong: rgba(54, 44, 36, 0.22);
  --alt-blue: #2859b8;
  --alt-blue-dark: #173d87;
  --alt-blue-soft: #edf2ff;
  --alt-green: #176e63;
  --alt-green-soft: #e9f6f1;
  --alt-shadow-small: 0 10px 28px rgba(58, 44, 32, 0.07);
  --alt-shadow-large: 0 28px 80px rgba(58, 44, 32, 0.15);
  --invite-listing-person-name-size: 1.04rem;
  color: var(--alt-ink);
  background:
    radial-gradient(circle at 7% 2%, rgba(169, 81, 53, 0.1), transparent 32rem),
    radial-gradient(circle at 92% 8%, rgba(87, 114, 95, 0.1), transparent 31rem),
    linear-gradient(180deg, #f8f5ef 0, var(--alt-canvas) 34rem, var(--alt-canvas-deep) 100%);
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", Inter, "Segoe UI", sans-serif;
}

body.is-editorial-confidence-path .prototype-device-switch {
  width: min(1180px, calc(100% - 28px));
  min-height: 54px;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  gap: 7px;
  border-color: rgba(255, 255, 255, 0.82);
  border-radius: 22px;
  background: rgba(249, 246, 241, 0.76);
  padding: 5px 6px 5px 10px;
  box-shadow: 0 12px 38px rgba(58, 44, 32, 0.09);
  backdrop-filter: blur(24px) saturate(135%);
  -webkit-backdrop-filter: blur(24px) saturate(135%);
}

body.is-editorial-confidence-path .canonical-build-label {
  min-width: 0;
  padding: 0;
  display: flex;
  align-items: center;
  gap: 7px;
  color: var(--alt-muted);
  white-space: nowrap;
}

body.is-editorial-confidence-path .canonical-build-label strong {
  border-radius: 999px;
  background: var(--alt-ink);
  color: white;
  padding: 6px 9px;
  font-size: 0.66rem;
  font-weight: 850;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

body.is-editorial-confidence-path .canonical-build-label a {
  min-height: 34px;
  border-radius: 999px;
  color: var(--alt-blue-dark);
  padding: 0 7px;
  display: inline-flex;
  align-items: center;
  font-size: 0.7rem;
  font-weight: 800;
  text-decoration: none;
}

body.is-editorial-confidence-path .canonical-label-compact,
body.is-editorial-confidence-path .regular-label-compact {
  display: none;
}

body.is-editorial-confidence-path .canonical-build-label span {
  padding-left: 0;
}

body.is-editorial-confidence-path .canonical-build-label strong span {
  color: white;
}

body.is-editorial-confidence-path .canonical-build-label a span {
  color: inherit;
}

body.is-editorial-confidence-path .prototype-device-switch button {
  min-height: 44px;
  border-radius: 15px;
}

body.is-editorial-confidence-path .prototype-device-switch button.is-active {
  background: var(--alt-ink);
}

body.is-editorial-confidence-path .prototype-scenario-tools {
  min-width: 0;
  justify-self: start;
}

body.is-editorial-confidence-path .compose-panel {
  border-color: rgba(255, 255, 255, 0.78);
  background: rgba(255, 253, 249, 0.95);
  box-shadow: 0 26px 90px rgba(58, 44, 32, 0.11);
}

body.is-editorial-confidence-path .app-nav.is-root-invitations {
  min-height: 62px;
  margin: 0 0 10px;
  border: 1px solid rgba(255, 255, 255, 0.82);
  border-radius: 22px;
  background: rgba(250, 247, 242, 0.76);
  padding: 8px 10px;
  box-shadow: 0 10px 34px rgba(58, 44, 32, 0.08);
  backdrop-filter: blur(24px) saturate(135%);
  -webkit-backdrop-filter: blur(24px) saturate(135%);
}

body.is-editorial-confidence-path .app-nav .nav-status.is-navigation-title {
  color: var(--alt-ink);
  font-size: 1.12rem;
  font-weight: 820;
}

body.is-editorial-confidence-path .avatar-button {
  background: var(--alt-ink);
  box-shadow: 0 9px 20px rgba(33, 29, 26, 0.18);
}

body.is-editorial-confidence-path .root-tabs {
  border: 1px solid rgba(255, 255, 255, 0.82);
  background: rgba(250, 247, 242, 0.76);
  box-shadow: 0 10px 30px rgba(58, 44, 32, 0.07);
  backdrop-filter: blur(22px) saturate(135%);
  -webkit-backdrop-filter: blur(22px) saturate(135%);
}

body.is-editorial-confidence-path .root-tab {
  min-height: 48px;
  border-radius: 15px;
  color: var(--alt-muted);
  font-weight: 820;
}

body.is-editorial-confidence-path .root-tab.is-active {
  background: rgba(255, 255, 255, 0.94);
  color: var(--alt-ink);
  box-shadow: 0 5px 16px rgba(58, 44, 32, 0.11);
}

body.is-editorial-confidence-path .root-tab.is-active::after {
  display: none;
}

body.is-editorial-confidence-path .social-mix-promo,
body.is-editorial-confidence-path .notification-item,
body.is-editorial-confidence-path .readiness-state-card {
  border-color: var(--alt-line);
  background: rgba(255, 253, 249, 0.92);
  box-shadow: var(--alt-shadow-small);
}

body.is-editorial-confidence-path .incoming-response-stack {
  gap: 12px;
}

body.is-editorial-confidence-path .incoming-priority-section,
body.is-editorial-confidence-path .incoming-waiting-section {
  border: 1px solid var(--alt-line);
  border-radius: 22px;
  background: rgba(255, 253, 249, 0.9);
  overflow: clip;
  box-shadow: var(--alt-shadow-small);
}

body.is-editorial-confidence-path .incoming-section-header {
  min-height: 72px;
  padding: 12px 14px;
}

body.is-editorial-confidence-path .incoming-priority-section[open] > .incoming-section-header {
  border-bottom-color: var(--alt-line);
  background: #faf7f2;
}

body.is-editorial-confidence-path .incoming-waiting-section > .incoming-section-header {
  background: rgba(247, 244, 239, 0.76);
}

body.is-editorial-confidence-path .incoming-section-body {
  padding: 10px;
}

body.is-editorial-confidence-path .find-controls-panel {
  border-color: rgba(255, 255, 255, 0.82);
  border-radius: 20px;
  background: rgba(250, 247, 242, 0.74);
  box-shadow: 0 12px 34px rgba(58, 44, 32, 0.07);
  backdrop-filter: blur(20px) saturate(130%);
  -webkit-backdrop-filter: blur(20px) saturate(130%);
}

body.is-editorial-confidence-path .find-filter-summary {
  min-height: 58px;
}

body.is-editorial-confidence-path .find-filter-mark {
  border-color: rgba(40, 89, 184, 0.2);
  background: var(--alt-blue-soft);
  color: var(--alt-blue);
}

body.is-editorial-confidence-path .invite-record[data-invite-signature] {
  border-color: color-mix(in srgb, var(--invite-accent) 30%, var(--alt-line));
  border-radius: 23px;
  background: var(--alt-surface);
  box-shadow:
    inset 0 3px 0 var(--invite-accent),
    0 14px 38px rgba(58, 44, 32, 0.08);
  transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

body.is-editorial-confidence-path .invite-record[data-invite-signature]:hover,
body.is-editorial-confidence-path .invite-record[data-invite-signature]:focus-within {
  border-color: color-mix(in srgb, var(--invite-accent) 48%, var(--alt-line));
  box-shadow:
    inset 0 3px 0 var(--invite-accent),
    0 20px 48px color-mix(in srgb, var(--invite-accent) 12%, rgba(58, 44, 32, 0.08));
}

body.is-editorial-confidence-path .invite-record[data-invite-signature]:not(.is-completed) > .invite-record-identity {
  margin: -7px -7px 0;
  border-radius: 20px 20px 0 0;
  background:
    radial-gradient(circle at 91% 6%, color-mix(in srgb, var(--invite-accent) 13%, transparent), transparent 38%),
    linear-gradient(115deg, var(--invite-accent-soft), color-mix(in srgb, var(--invite-accent-soft) 35%, var(--alt-surface)) 68%, var(--alt-surface));
  padding: 14px 12px 13px;
}

body.is-editorial-confidence-path .invitation-seal {
  border-radius: 17px;
  background:
    linear-gradient(155deg, rgba(255, 255, 255, 0.92), transparent 62%),
    var(--invite-accent-soft);
  box-shadow: 0 8px 20px color-mix(in srgb, var(--invite-accent) 14%, transparent);
}

body.is-editorial-confidence-path .invite-record-identity-copy > strong,
body.is-editorial-confidence-path .invite-detail-hero h2 {
  font-family: ui-serif, "New York", Georgia, serif;
  letter-spacing: -0.025em;
}

body.is-editorial-confidence-path .invite-record-identity-copy > strong {
  font-size: 1.16rem;
}

body.is-editorial-confidence-path .find-event-card {
  padding: 12px;
}

body.is-editorial-confidence-path .invite-card-context-row {
  min-height: 52px;
  padding-block: 5px;
}

body.is-editorial-confidence-path .invite-record-review-action {
  min-width: 78px;
  border-radius: 14px;
  background: var(--alt-blue-soft);
  color: var(--alt-blue-dark);
}

body.is-editorial-confidence-path .find-event-action-row,
body.is-editorial-confidence-path .guest-response-row.is-response-actions {
  gap: 9px;
}

body.is-editorial-confidence-path .find-event-action-row button,
body.is-editorial-confidence-path .guest-response-row.is-response-actions > button {
  min-height: 48px;
  border-radius: 15px;
}

body.is-editorial-confidence-path .find-not-now-action {
  background: #f2eee8;
  color: #524a44;
}

body.is-editorial-confidence-path .profile-add-action,
body.is-editorial-confidence-path .primary-action,
body.is-editorial-confidence-path .confirm-button {
  background: var(--alt-blue);
  box-shadow: 0 9px 20px rgba(40, 89, 184, 0.2);
}

body.is-editorial-confidence-path .waiting-response-row {
  border-radius: 17px;
  background: #fbf8f3;
}

body.is-editorial-confidence-path .profile-sheet .sheet-backdrop {
  background: rgba(33, 29, 26, 0.5);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

body.is-editorial-confidence-path .sheet-panel {
  border-color: rgba(255, 255, 255, 0.82);
  border-radius: 30px 30px 0 0;
  background: var(--alt-surface);
  box-shadow: var(--alt-shadow-large);
}

body.is-editorial-confidence-path .invite-detail-panel {
  padding: 18px;
}

body.is-editorial-confidence-path .invite-detail-panel .sheet-close {
  z-index: 8;
  border-color: rgba(255, 255, 255, 0.38);
  background: rgba(255, 255, 255, 0.88);
  color: var(--alt-ink);
  box-shadow: 0 8px 20px rgba(33, 29, 26, 0.14);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

body.is-editorial-confidence-path .invite-detail-hero.invitation-visual-surface[data-invite-signature] {
  position: relative;
  min-height: 190px;
  grid-template-columns: 74px minmax(0, 1fr);
  align-items: end;
  overflow: hidden;
  border: 0;
  border-radius: 24px;
  background:
    radial-gradient(circle at 87% 5%, rgba(255, 255, 255, 0.2), transparent 31%),
    linear-gradient(145deg,
      color-mix(in srgb, var(--invite-accent-deep) 88%, #241b17),
      color-mix(in srgb, var(--invite-accent) 62%, #171310));
  color: white;
  padding: 24px;
  box-shadow: 0 18px 42px color-mix(in srgb, var(--invite-accent) 18%, rgba(58, 44, 32, 0.12));
}

body.is-editorial-confidence-path .invite-detail-hero::after {
  content: "";
  position: absolute;
  right: 26px;
  bottom: -62px;
  width: 190px;
  height: 220px;
  border: 18px solid rgba(255, 255, 255, 0.11);
  border-bottom: 0;
  border-radius: 96px 96px 0 0;
  pointer-events: none;
}

body.is-editorial-confidence-path .invite-detail-hero > * {
  position: relative;
  z-index: 1;
}

body.is-editorial-confidence-path .invite-detail-hero .invite-detail-category,
body.is-editorial-confidence-path .invite-detail-hero p {
  color: rgba(255, 255, 255, 0.8);
}

body.is-editorial-confidence-path .invite-detail-hero .invite-detail-category > span {
  color: rgba(255, 255, 255, 0.88);
}

body.is-editorial-confidence-path .invite-detail-hero h2 {
  max-width: 470px;
  color: white;
  font-size: clamp(2rem, 6vw, 3rem);
  line-height: 0.98;
}

body.is-editorial-confidence-path .invite-detail-seal {
  border-color: rgba(255, 255, 255, 0.28);
  background: rgba(255, 255, 255, 0.14);
  color: white;
  box-shadow: none;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

body.is-editorial-confidence-path .invite-detail-seal .event-category-icon {
  color: var(--invite-accent-deep);
  background: rgba(255, 255, 255, 0.9);
  box-shadow:
    inset 0 0 0 1px color-mix(in srgb, var(--invite-accent) 34%, white),
    0 5px 14px rgba(33, 29, 26, 0.12);
}

body.is-editorial-confidence-path .invite-detail-seal .invite-signature-mark {
  background: rgba(255, 255, 255, 0.88);
}

body.is-editorial-confidence-path .area-label-row,
body.is-editorial-confidence-path .waiting-detail-state,
body.is-editorial-confidence-path .response-receipt,
body.is-editorial-confidence-path .invite-decision-grid {
  border-color: var(--alt-line);
  background: #f8f5f0;
}

body.is-editorial-confidence-path .invite-decision-grid {
  overflow: hidden;
  border: 1px solid var(--alt-line);
  border-radius: 18px;
  gap: 1px;
}

body.is-editorial-confidence-path .invite-decision-grid > div {
  background: var(--alt-surface);
  padding: 12px;
}

body.is-editorial-confidence-path .invite-detail-actions {
  position: sticky;
  z-index: 4;
  bottom: -1px;
  margin: 20px -8px -8px;
  border: 1px solid rgba(255, 255, 255, 0.84);
  border-radius: 21px;
  background: rgba(250, 247, 242, 0.82);
  padding: 10px;
  box-shadow: 0 18px 44px rgba(58, 44, 32, 0.16);
  backdrop-filter: blur(24px) saturate(140%);
  -webkit-backdrop-filter: blur(24px) saturate(140%);
}

body.is-editorial-confidence-path .invite-detail-actions > button {
  min-height: 50px;
  border-radius: 15px;
}

body.is-editorial-confidence-path .invitation-confidence-disclosure {
  margin-top: 12px;
  border-top: 1px solid var(--alt-line);
}

body.is-editorial-confidence-path .invitation-confidence-disclosure > summary {
  min-height: 54px;
  padding: 8px 2px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  list-style: none;
  cursor: pointer;
}

body.is-editorial-confidence-path .invitation-confidence-disclosure > summary::-webkit-details-marker {
  display: none;
}

body.is-editorial-confidence-path .invitation-confidence-disclosure > summary > span:first-child,
body.is-editorial-confidence-path .invitation-confidence-disclosure > summary strong,
body.is-editorial-confidence-path .invitation-confidence-disclosure > summary small {
  display: block;
}

body.is-editorial-confidence-path .invitation-confidence-disclosure > summary strong {
  font-size: 0.8rem;
}

body.is-editorial-confidence-path .invitation-confidence-disclosure > summary small {
  margin-top: 3px;
  color: var(--alt-muted);
  font-size: 0.7rem;
}

body.is-editorial-confidence-path .confidence-disclosure-label {
  color: var(--alt-blue-dark);
  font-size: 0.72rem;
  font-weight: 850;
}

body.is-editorial-confidence-path .invitation-confidence-disclosure[open] .when-closed,
body.is-editorial-confidence-path .invitation-confidence-disclosure:not([open]) .when-open {
  display: none;
}

body.is-editorial-confidence-path .invitation-confidence-path {
  margin-top: 18px;
  border: 1px solid var(--alt-line);
  border-radius: 20px;
  background: #f8f5f0;
  padding: 18px;
}

body.is-editorial-confidence-path .invitation-confidence-path.is-compact {
  margin: 2px 0 10px;
  border-radius: 17px;
  padding: 14px;
}

body.is-editorial-confidence-path .confidence-path-head {
  min-height: 40px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

body.is-editorial-confidence-path .confidence-path-head span:first-child,
body.is-editorial-confidence-path .confidence-path-head strong,
body.is-editorial-confidence-path .confidence-path-head small {
  display: block;
}

body.is-editorial-confidence-path .confidence-path-head small {
  color: var(--alt-green);
  font-size: 0.61rem;
  font-weight: 880;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

body.is-editorial-confidence-path .confidence-path-head strong {
  margin-top: 3px;
  font-size: 0.92rem;
}

body.is-editorial-confidence-path .confidence-path-head > span:last-child {
  color: var(--alt-green);
  font-size: 0.63rem;
  font-weight: 880;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  white-space: nowrap;
}

body.is-editorial-confidence-path .confidence-path-steps {
  position: relative;
  margin: 16px 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  list-style: none;
}

body.is-editorial-confidence-path .confidence-path-steps::before {
  content: "";
  position: absolute;
  left: 14%;
  right: 14%;
  top: 14px;
  height: 1px;
  background: var(--alt-line-strong);
}

body.is-editorial-confidence-path .confidence-path-steps li {
  position: relative;
  z-index: 1;
  min-width: 0;
}

body.is-editorial-confidence-path .confidence-path-dot {
  width: 29px;
  height: 29px;
  border: 5px solid #f8f5f0;
  border-radius: 50%;
  background: white;
  display: grid;
  place-items: center;
  color: white;
  font-size: 0.65rem;
  font-weight: 900;
  box-shadow: inset 0 0 0 1.5px rgba(54, 44, 36, 0.24);
}

body.is-editorial-confidence-path .confidence-path-steps li.is-current .confidence-path-dot,
body.is-editorial-confidence-path .confidence-path-steps li.is-complete .confidence-path-dot {
  background: var(--alt-green);
  box-shadow: none;
}

body.is-editorial-confidence-path .confidence-path-steps li > strong,
body.is-editorial-confidence-path .confidence-path-steps li > span:last-child {
  display: block;
}

body.is-editorial-confidence-path .confidence-path-steps li > strong {
  margin-top: 9px;
  font-size: 0.72rem;
}

body.is-editorial-confidence-path .confidence-path-steps li > span:last-child {
  margin-top: 4px;
  color: var(--alt-muted);
  font-size: 0.68rem;
  font-weight: 640;
  line-height: 1.4;
}

body.is-editorial-confidence-path .prototype-version {
  color: var(--alt-muted);
}

@media (min-width: 901px) {
  body.is-editorial-confidence-path.is-prototype-desktop .app-shell {
    width: min(1180px, calc(100% - 48px));
  }

  body.is-editorial-confidence-path.is-prototype-desktop .compose-panel {
    border-radius: 32px 32px 0 0;
    padding-inline: 28px;
  }

  body.is-editorial-confidence-path.is-prototype-desktop .screen-scroll:has(.root-tabs:not([hidden])) {
    grid-template-columns: 104px minmax(0, 1fr);
    column-gap: 28px;
  }

  body.is-editorial-confidence-path.is-prototype-desktop .screen-scroll:has(.root-tabs:not([hidden])) > .root-tabs {
    width: 104px;
    border-color: rgba(255, 255, 255, 0.82);
    border-radius: 23px;
    background: rgba(250, 247, 242, 0.76);
    padding: 8px;
    box-shadow: 0 12px 34px rgba(58, 44, 32, 0.07);
    backdrop-filter: blur(22px) saturate(135%);
    -webkit-backdrop-filter: blur(22px) saturate(135%);
  }

  body.is-editorial-confidence-path.is-prototype-desktop .root-tab {
    min-height: 72px;
    border-radius: 16px;
  }

  body.is-editorial-confidence-path.is-prototype-desktop #findView .event-section {
    grid-template-columns: minmax(330px, 380px) minmax(0, 1fr);
    align-items: start;
    gap: 20px 24px;
  }

  body.is-editorial-confidence-path.is-prototype-desktop #findView .incoming-priority-panel {
    display: contents;
  }

  body.is-editorial-confidence-path.is-prototype-desktop #findView .incoming-response-stack {
    grid-column: 1;
    grid-row: 1 / span 2;
    grid-template-columns: minmax(0, 1fr);
    align-self: start;
  }

  body.is-editorial-confidence-path.is-prototype-desktop #findView .incoming-priority-section,
  body.is-editorial-confidence-path.is-prototype-desktop #findView .incoming-waiting-section {
    grid-column: 1;
  }

  body.is-editorial-confidence-path.is-prototype-desktop #findView .find-controls-panel {
    grid-column: 2;
    grid-row: 1;
    width: 100%;
    margin: 0;
    align-self: start;
  }

  body.is-editorial-confidence-path.is-prototype-desktop #findView .find-results {
    grid-column: 2;
    grid-row: 2;
    width: 100%;
    margin: 0;
  }

  body.is-editorial-confidence-path.is-prototype-desktop #findView .readiness-state-card {
    grid-column: 1 / -1;
  }

  body.is-editorial-confidence-path.is-prototype-desktop .find-controls-panel {
    top: 82px;
  }

  body.is-editorial-confidence-path .sheet-panel {
    width: min(720px, calc(100vw - 44px));
    max-height: calc(100dvh - 32px);
    border-radius: 30px;
  }
}

@media (max-width: 900px) {
  body.is-editorial-confidence-path .prototype-device-switch {
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    gap: 4px;
  }

  body.is-editorial-confidence-path .canonical-build-label {
    width: auto;
    gap: 3px;
  }

  body.is-editorial-confidence-path .canonical-build-label strong {
    width: 34px;
    padding-inline: 0;
    overflow: hidden;
    font-size: 0.64rem;
    text-align: center;
  }

  body.is-editorial-confidence-path .canonical-build-label strong::after {
    content: none;
  }

  body.is-editorial-confidence-path .canonical-build-label a {
    min-height: 44px;
    padding-inline: 4px;
    display: inline-flex;
    font-size: 0.64rem;
  }

  body.is-editorial-confidence-path .canonical-build-label a::after {
    content: none;
  }

  body.is-editorial-confidence-path .canonical-label-wide,
  body.is-editorial-confidence-path .regular-label-wide {
    display: none;
  }

  body.is-editorial-confidence-path .canonical-label-compact,
  body.is-editorial-confidence-path .regular-label-compact {
    display: inline;
  }

  body.is-editorial-confidence-path.is-prototype-mobile .app-nav.is-root-invitations {
    margin: 0 0 8px;
    border: 1px solid rgba(255, 255, 255, 0.82);
    border-radius: 21px;
  }

  body.is-editorial-confidence-path.is-prototype-mobile .root-tabs {
    top: 70px !important;
    width: min(360px, calc(100% - 16px));
    min-height: 54px;
    margin: 0 auto 16px;
    border: 1px solid rgba(255, 255, 255, 0.82);
    border-radius: 999px;
    background: rgba(250, 247, 242, 0.78);
    padding: 5px;
    box-shadow: 0 10px 30px rgba(58, 44, 32, 0.08);
    backdrop-filter: blur(22px) saturate(135%);
    -webkit-backdrop-filter: blur(22px) saturate(135%);
  }

  body.is-editorial-confidence-path.is-prototype-mobile .root-tab {
    min-height: 44px;
    border-radius: 999px;
  }

  body.is-editorial-confidence-path .invite-detail-hero.invitation-visual-surface[data-invite-signature] {
    min-height: 218px;
    grid-template-columns: 62px minmax(0, 1fr);
    padding: 22px 18px;
  }

  body.is-editorial-confidence-path .invite-detail-hero h2 {
    font-size: clamp(2rem, 10vw, 2.7rem);
  }

  body.is-editorial-confidence-path .confidence-path-steps {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  body.is-editorial-confidence-path .confidence-path-steps::before {
    left: 14px;
    right: auto;
    top: 14px;
    bottom: 42px;
    width: 1px;
    height: auto;
  }

  body.is-editorial-confidence-path .confidence-path-steps li {
    display: grid;
    grid-template-columns: 29px minmax(0, 1fr);
    column-gap: 12px;
  }

  body.is-editorial-confidence-path .confidence-path-dot {
    grid-column: 1;
    grid-row: 1 / span 2;
  }

  body.is-editorial-confidence-path .confidence-path-steps li > strong {
    grid-column: 2;
    margin-top: 3px;
  }

  body.is-editorial-confidence-path .confidence-path-steps li > span:last-child {
    grid-column: 2;
  }
}

@media (max-width: 370px) {
  body.is-editorial-confidence-path .prototype-device-switch {
    width: calc(100% - 16px);
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    padding-left: 6px;
  }

  body.is-editorial-confidence-path .prototype-device-switch button {
    padding-inline: 8px;
    font-size: 0.76rem;
  }

  body.is-editorial-confidence-path .incoming-section-header {
    padding-inline: 10px;
  }

  body.is-editorial-confidence-path .invite-detail-panel {
    padding: 10px;
  }

  body.is-editorial-confidence-path .invite-detail-hero.invitation-visual-surface[data-invite-signature] {
    grid-template-columns: 54px minmax(0, 1fr);
    padding: 20px 14px;
  }

  body.is-editorial-confidence-path .invite-detail-seal {
    width: 54px;
    height: 54px;
    flex-basis: 54px;
  }

  body.is-editorial-confidence-path .invitation-confidence-path {
    padding: 14px;
  }
}

@media (prefers-reduced-transparency: reduce) {
  body.is-editorial-confidence-path .prototype-device-switch,
  body.is-editorial-confidence-path .app-nav.is-root-invitations,
  body.is-editorial-confidence-path .root-tabs,
  body.is-editorial-confidence-path .find-controls-panel,
  body.is-editorial-confidence-path .invite-detail-actions {
    background: #faf7f2;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
}

/* Alternative v3: consent-gated Familiar Face portraits and one reusable approved-photo viewer. */
.member-photo-trigger {
  position: relative;
  width: fit-content;
  min-width: 44px;
  min-height: 44px;
  border: 0;
  border-radius: 18px;
  background: transparent;
  padding: 0;
  display: grid;
  place-items: center;
  overflow: visible;
  cursor: zoom-in;
  isolation: isolate;
}

.member-photo-trigger > img {
  display: block;
}

.member-photo-trigger:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--plum-strong, #7b4f69) 58%, white);
  outline-offset: 3px;
}

.member-photo-expand-mark {
  position: absolute;
  right: -4px;
  bottom: -4px;
  z-index: 2;
  width: 25px;
  height: 25px;
  border: 2px solid #fffdf9;
  border-radius: 999px;
  background: #6f5265;
  color: white;
  display: grid;
  place-items: center;
  box-shadow: 0 4px 12px rgba(63, 40, 54, 0.22);
  pointer-events: none;
}

.member-photo-expand-mark svg {
  width: 15px;
  height: 15px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-width: 1.8;
}

.member-preview-head > .member-photo-trigger {
  border-radius: 999px;
}

.familiar-management-card > .member-photo-trigger,
.review-person > .member-photo-trigger,
.final-confirmation-counterpart > .member-photo-trigger,
.confirmation-counterpart-card > .member-photo-trigger {
  align-self: start;
}

.familiar-management-card > .member-photo-trigger img {
  width: 52px;
  height: 52px;
  border-radius: 16px;
  object-fit: cover;
  border: 1px solid var(--line);
}

.review-person > .member-photo-trigger img {
  width: 40px;
  height: 40px;
  border-radius: 14px;
  object-fit: cover;
}

.final-confirmation-counterpart > .member-photo-trigger img {
  width: 48px;
  height: 48px;
  border-radius: 15px;
  object-fit: cover;
}

.confirmation-counterpart-card > .member-photo-trigger img {
  width: 64px;
  height: 64px;
  border-radius: 19px;
  object-fit: cover;
}

body.is-editorial-confidence-path .invite-record-host.is-familiar-face {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
}

body.is-editorial-confidence-path .invite-record-host-copy {
  min-width: 0;
  display: grid;
  gap: 6px;
}

body.is-editorial-confidence-path .find-event-host-photo {
  width: 58px;
  height: 58px;
  border: 2px solid rgba(255, 253, 249, 0.94);
  border-radius: 18px;
  object-fit: cover;
  object-position: center 24%;
  box-shadow: 0 6px 16px rgba(91, 62, 78, 0.17);
}

body.is-editorial-confidence-path .invite-record-host.is-familiar-face .host-name-row small {
  width: 100%;
}

body.photo-viewer-open {
  overflow: hidden;
}

.member-photo-viewer {
  z-index: 80;
  align-items: center;
  justify-items: center;
  padding: 18px;
}

.member-photo-viewer .sheet-backdrop {
  background: rgba(31, 25, 29, 0.72);
  backdrop-filter: blur(14px) saturate(0.82);
  -webkit-backdrop-filter: blur(14px) saturate(0.82);
}

.member-photo-viewer-panel {
  width: min(760px, calc(100vw - 36px));
  max-height: calc(100dvh - 36px);
  margin: 0;
  border: 1px solid rgba(111, 82, 101, 0.16);
  border-radius: 32px;
  background:
    radial-gradient(circle at 0 0, rgba(232, 217, 228, 0.7), transparent 18rem),
    linear-gradient(145deg, #fffdf9, #f7f1f3);
  padding: 24px;
  box-shadow: 0 32px 100px rgba(31, 21, 27, 0.35);
  overflow: auto;
}

.member-photo-viewer-head {
  padding-right: 58px;
}

.member-photo-viewer-head h2 {
  margin-top: 4px;
  color: #382d34;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.75rem, 4vw, 2.45rem);
  line-height: 1.02;
}

.member-photo-viewer-head > p:last-child {
  margin-top: 7px;
  color: #756870;
  font-size: 0.86rem;
  font-weight: 690;
}

.member-photo-stage {
  margin-top: 18px;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) 48px;
  align-items: center;
  gap: 12px;
}

.member-photo-stage figure {
  min-width: 0;
  margin: 0;
  border-radius: 26px;
  background: #e8dde3;
  overflow: hidden;
  box-shadow: inset 0 0 0 1px rgba(89, 61, 77, 0.1);
}

.member-photo-stage.is-single-photo {
  grid-template-columns: minmax(0, 1fr);
}

.member-photo-stage.is-single-photo figure {
  grid-column: 1;
  width: 100%;
}

.member-photo-stage.is-single-photo figure > img {
  object-fit: contain;
}

.member-photo-stage figure > img {
  width: 100%;
  height: min(58dvh, 540px);
  min-height: 320px;
  display: block;
  object-fit: cover;
  object-position: center;
}

.member-photo-stage figcaption {
  min-height: 44px;
  padding: 12px 14px;
  background: rgba(255, 253, 249, 0.92);
  color: #5d5058;
  font-size: 0.82rem;
  font-weight: 760;
  line-height: 1.3;
}

.member-photo-nav {
  width: 48px;
  min-width: 48px;
  height: 48px;
  border: 1px solid rgba(111, 82, 101, 0.18);
  border-radius: 999px;
  background: rgba(255, 253, 249, 0.94);
  color: #5f4656;
  font-size: 1.75rem;
  line-height: 1;
  box-shadow: 0 8px 22px rgba(77, 53, 67, 0.12);
}

.member-photo-viewer-meta {
  margin-top: 13px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.member-photo-viewer-meta > strong {
  color: #63545d;
  font-size: 0.78rem;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.member-photo-thumbnails {
  min-width: 0;
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  overflow-x: auto;
  padding: 3px;
}

.member-photo-thumbnails[hidden] {
  display: none;
}

.member-photo-thumbnail {
  width: 54px;
  min-width: 54px;
  height: 54px;
  border: 2px solid transparent;
  border-radius: 16px;
  background: transparent;
  padding: 2px;
}

.member-photo-thumbnail.is-active {
  border-color: #7b526a;
}

.member-photo-thumbnail img {
  width: 100%;
  height: 100%;
  border-radius: 11px;
  display: block;
  object-fit: cover;
}

.member-photo-viewer-privacy {
  margin-top: 14px;
  border: 1px solid rgba(85, 111, 109, 0.14);
  border-radius: 16px;
  background: rgba(228, 239, 236, 0.72);
  color: #566866;
  padding: 11px 13px;
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 0.76rem;
  font-weight: 720;
  line-height: 1.36;
}

@media (max-width: 600px) {
  .member-photo-viewer {
    align-items: stretch;
    padding: 0;
  }

  .member-photo-viewer-panel {
    width: 100%;
    height: 100dvh;
    max-height: 100dvh;
    border: 0;
    border-radius: 0;
    padding: 16px 14px max(18px, env(safe-area-inset-bottom));
  }

  .member-photo-stage {
    grid-template-columns: 44px minmax(0, 1fr) 44px;
    gap: 7px;
  }

  .member-photo-stage figure {
    border-radius: 22px;
  }

  .member-photo-stage figure > img {
    height: min(57dvh, 470px);
    min-height: 300px;
  }

  .member-photo-nav {
    width: 44px;
    min-width: 44px;
    height: 44px;
  }

  .member-photo-viewer-meta {
    align-items: flex-start;
  }

  .member-photo-thumbnails {
    justify-content: flex-start;
  }
}

@media (max-width: 370px) {
  body.is-editorial-confidence-path .invite-record-host.is-familiar-face {
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 10px;
  }

  body.is-editorial-confidence-path .find-event-host-photo {
    width: 52px;
    height: 52px;
    border-radius: 16px;
  }

  .member-photo-viewer-panel {
    padding-inline: 10px;
  }

  .member-photo-stage {
    grid-template-columns: 44px minmax(0, 1fr) 44px;
    gap: 4px;
  }

  .member-photo-stage figure > img {
    min-height: 270px;
  }
}

@media (prefers-reduced-transparency: reduce) {
  .member-photo-viewer .sheet-backdrop {
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
}

@media (max-width: 420px) {
  body.is-editorial-confidence-path .prototype-device-switch {
    width: calc(100% - 12px);
    min-height: 100px;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    grid-template-rows: 44px 44px;
    gap: 4px;
    padding: 4px;
  }

  body.is-editorial-confidence-path .canonical-build-label {
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
  }

  body.is-editorial-confidence-path .prototype-scenario-tools {
    grid-column: 2;
    grid-row: 1;
    justify-self: stretch;
  }

  body.is-editorial-confidence-path .prototype-scenario-tools > summary {
    justify-content: center;
  }

  body.is-editorial-confidence-path .prototype-device-switch > [data-device-view="mobile"] {
    grid-column: 1;
    grid-row: 2;
  }

  body.is-editorial-confidence-path .prototype-device-switch > [data-device-view="desktop"] {
    grid-column: 2;
    grid-row: 2;
  }

  body.is-editorial-confidence-path .prototype-device-switch > button {
    width: 100%;
  }

  body.is-editorial-confidence-path .app-shell {
    min-height: calc(100dvh - 112px);
  }

  body.is-editorial-confidence-path .compose-panel {
    height: calc(100dvh - 112px);
  }
}

/* Alternative refinement: compose Out guest activity as clear response cards. */
body.is-editorial-confidence-path .plan-management-card .event-person-list {
  gap: 11px;
  margin-top: 14px;
}

body.is-editorial-confidence-path .out-guest-section-heading {
  min-width: 0;
  border: 1px solid rgba(92, 53, 76, 0.12);
  border-radius: 18px;
  background:
    radial-gradient(circle at 100% 0%, rgba(255, 255, 255, 0.72), transparent 9rem),
    linear-gradient(145deg, #f2e9f1, #edf2f2);
  padding: 11px 12px;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
}

body.is-editorial-confidence-path .out-guest-section-heading > span:last-child {
  min-width: 0;
  display: grid;
  gap: 2px;
}

body.is-editorial-confidence-path .out-guest-section-heading strong {
  color: var(--alt-ink);
  font-size: 0.9rem;
  line-height: 1.2;
}

body.is-editorial-confidence-path .out-guest-section-heading small {
  color: #6d6268;
  font-size: 0.74rem;
  font-weight: 720;
  line-height: 1.3;
}

body.is-editorial-confidence-path .out-guest-section-icon {
  position: relative;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(92, 53, 76, 0.14);
  border-radius: 14px;
  background: rgba(255, 253, 249, 0.82);
}

body.is-editorial-confidence-path .out-guest-section-icon i {
  position: absolute;
  width: 11px;
  height: 11px;
  border: 2px solid var(--alt-wine);
  border-radius: 50%;
}

body.is-editorial-confidence-path .out-guest-section-icon i:first-child {
  top: 9px;
  left: 8px;
}

body.is-editorial-confidence-path .out-guest-section-icon i:last-child {
  top: 9px;
  right: 8px;
  opacity: 0.72;
}

body.is-editorial-confidence-path .out-guest-section-icon::after {
  content: "";
  position: absolute;
  right: 7px;
  bottom: 7px;
  left: 7px;
  height: 10px;
  border: 2px solid var(--alt-wine);
  border-bottom: 0;
  border-radius: 12px 12px 0 0;
  opacity: 0.88;
}

body.is-editorial-confidence-path .plan-management-card .event-person-row,
body.is-editorial-confidence-path .plan-management-card .event-person-row.is-request,
body.is-editorial-confidence-path .plan-management-card .event-person-row.is-find-request,
body.is-editorial-confidence-path .plan-management-card .event-person-row.is-picked,
body.is-editorial-confidence-path .plan-management-card .event-person-row.is-confirmed-unlocked {
  min-height: 0;
  border: 1px solid rgba(92, 53, 76, 0.12);
  border-radius: 18px;
  background: rgba(255, 253, 249, 0.94);
  padding: 12px;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 11px 14px;
  box-shadow: 0 8px 24px rgba(72, 54, 63, 0.07);
}

body.is-editorial-confidence-path .plan-management-card .event-person-row.is-request {
  border-color: rgba(69, 92, 169, 0.18);
  background: #f4f5fb;
}

body.is-editorial-confidence-path .plan-management-card .event-person-row.is-find-request,
body.is-editorial-confidence-path .plan-management-card .event-person-row.is-picked {
  border-color: rgba(35, 116, 105, 0.2);
  background: #f2f8f4;
}

body.is-editorial-confidence-path .plan-management-card .event-person-row.is-confirmed-unlocked {
  border-color: rgba(35, 116, 105, 0.24);
  background: #f4f9f5;
}

body.is-editorial-confidence-path .plan-management-card .event-person-row.is-removed {
  background: #f7f4f3;
}

body.is-editorial-confidence-path .plan-management-card .event-person-main {
  grid-column: 1 / -1;
  grid-template-columns: 58px minmax(0, 1fr);
  align-items: center;
  gap: 11px;
}

body.is-editorial-confidence-path .plan-management-card .event-person-photo,
body.is-editorial-confidence-path .plan-management-card .event-person-photo:not(.is-hidden) {
  width: 58px;
  height: 58px;
  border-radius: 18px;
}

body.is-editorial-confidence-path .plan-management-card .event-person-photo.is-hidden {
  border: 1px solid rgba(69, 92, 169, 0.16);
  background: #edf0f7;
}

body.is-editorial-confidence-path .plan-management-card .event-person-title strong {
  color: var(--alt-ink);
  font-size: 0.92rem;
  line-height: 1.18;
}

body.is-editorial-confidence-path .plan-management-card .event-person-main small {
  margin-top: 3px;
  color: #6f6568;
  font-size: 0.78rem;
  line-height: 1.32;
}

body.is-editorial-confidence-path .plan-management-card .event-person-row > .out-person-disclosure,
body.is-editorial-confidence-path .plan-management-card .event-person-row:has(> .out-person-disclosure[open]) > .out-person-disclosure {
  margin: 0;
  border: 0;
  border-top: 1px solid rgba(92, 53, 76, 0.1);
  border-radius: 0;
  background: transparent;
}

body.is-editorial-confidence-path .plan-management-card .out-person-disclosure > summary {
  min-height: 44px;
  padding: 8px 2px 0;
}

body.is-editorial-confidence-path .plan-management-card .event-person-detail,
body.is-editorial-confidence-path .plan-management-card .unlocked-contact-card {
  margin-left: 0;
}

body.is-editorial-confidence-path .event-person-response-footer {
  grid-column: 1 / -1;
  min-width: 0;
  border-top: 1px solid rgba(92, 53, 76, 0.1);
  padding-top: 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

body.is-editorial-confidence-path .event-person-response-footer .person-timer {
  flex: 0 0 auto;
  border: 1px solid rgba(176, 75, 54, 0.1);
  background: #fffaf5;
}

body.is-editorial-confidence-path .event-person-response-footer .row-actions {
  grid-column: auto;
  width: auto;
  min-width: 0;
  margin-left: auto;
  align-items: center;
  flex-wrap: wrap;
}

body.is-editorial-confidence-path .event-person-response-footer .inline-action {
  min-height: 44px;
  padding-inline: 12px;
  background: #f0f2fa;
  color: #2d477f;
}

body.is-editorial-confidence-path .event-person-response-footer .inline-action.danger {
  background: #fff0e9;
  color: #a04029;
}

body.is-editorial-confidence-path .event-person-response-footer .inline-action.is-selected {
  background: var(--alt-wine-deep);
  color: white;
}

@media (max-width: 420px) {
  body.is-editorial-confidence-path .out-guest-section-heading {
    grid-template-columns: 38px minmax(0, 1fr);
    padding: 10px;
  }

  body.is-editorial-confidence-path .out-guest-section-icon {
    width: 38px;
    height: 38px;
    border-radius: 13px;
  }

  body.is-editorial-confidence-path .plan-management-card .event-person-row,
  body.is-editorial-confidence-path .plan-management-card .event-person-row.is-request,
  body.is-editorial-confidence-path .plan-management-card .event-person-row.is-find-request,
  body.is-editorial-confidence-path .plan-management-card .event-person-row.is-picked,
  body.is-editorial-confidence-path .plan-management-card .event-person-row.is-confirmed-unlocked {
    padding: 11px;
  }

  body.is-editorial-confidence-path .plan-management-card .event-person-main {
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 10px;
  }

  body.is-editorial-confidence-path .plan-management-card .event-person-photo,
  body.is-editorial-confidence-path .plan-management-card .event-person-photo:not(.is-hidden) {
    width: 54px;
    height: 54px;
    border-radius: 17px;
  }

  body.is-editorial-confidence-path .event-person-response-footer {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
  }

  body.is-editorial-confidence-path .event-person-response-footer .row-actions {
    justify-content: flex-end;
    padding-right: 38px;
  }
}

@media (max-width: 350px) {
  body.is-editorial-confidence-path .event-person-response-footer {
    grid-template-columns: 1fr;
  }

  body.is-editorial-confidence-path .event-person-response-footer .person-timer {
    justify-self: start;
  }

  body.is-editorial-confidence-path .event-person-response-footer .row-actions {
    width: 100%;
    margin-left: 0;
    padding-right: 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  body.is-editorial-confidence-path .event-person-response-footer .row-actions .inline-action {
    width: 100%;
    min-width: 0;
    padding-inline: 6px;
  }
}

/* Canonical pastel editorial invitation system.
   Information architecture, fixtures, privacy stages, and controls remain inherited. */
body.is-editorial-confidence-path {
  --alt-stage: #eee7f1;
  --alt-stage-soft: #e1ebe7;
  --alt-paper: #fffaf4;
  --alt-paper-deep: #f1e7dd;
  --alt-wine: #8d5a78;
  --alt-wine-deep: #5c354c;
  --alt-wine-soft: #f3e6ee;
  --alt-ink: #302731;
  --alt-blue: #74678f;
  --alt-blue-dark: #51466f;
  --alt-blue-soft: #ece9f6;
  background:
    radial-gradient(circle at 10% -8%, rgba(213, 165, 187, 0.58), transparent 34rem),
    radial-gradient(circle at 92% 2%, rgba(156, 199, 181, 0.46), transparent 32rem),
    linear-gradient(145deg, #fbf0f4 0%, var(--alt-stage) 52%, var(--alt-stage-soft) 100%);
}

body.is-editorial-confidence-path .prototype-device-switch {
  border-color: rgba(92, 53, 76, 0.12);
  background: rgba(255, 250, 246, 0.84);
  color: var(--alt-ink);
  box-shadow: 0 18px 52px rgba(92, 67, 82, 0.16);
}

body.is-editorial-confidence-path .canonical-build-label strong {
  background: linear-gradient(135deg, #9c536e, var(--alt-wine));
  box-shadow: 0 7px 18px rgba(113, 51, 78, 0.32);
}

body.is-editorial-confidence-path .canonical-build-label a {
  color: var(--alt-wine-deep);
}

body.is-editorial-confidence-path .prototype-scenario-tools > summary {
  background: var(--alt-blue-soft);
  color: var(--alt-blue-dark);
}

body.is-editorial-confidence-path .prototype-scenario-tools {
  border-color: transparent;
  background: transparent;
}

body.is-editorial-confidence-path .prototype-scenario-tools[open] > summary {
  background: #fff8ef;
  color: var(--alt-ink);
}

body.is-editorial-confidence-path .prototype-device-switch > button {
  color: #716572;
  background: transparent;
}

body.is-editorial-confidence-path .prototype-device-switch > button.is-active {
  color: var(--alt-ink);
  background: #fffdf9;
  box-shadow: 0 8px 20px rgba(92, 67, 82, 0.14);
}

body.is-editorial-confidence-path .app-shell {
  border: 1px solid rgba(255, 255, 255, 0.74);
  border-radius: 38px 38px 0 0;
  background: var(--alt-paper);
  box-shadow: 0 34px 110px rgba(92, 67, 82, 0.18);
}

body.is-editorial-confidence-path .compose-panel {
  border: 0;
  background:
    radial-gradient(circle at 102% -4%, rgba(113, 51, 78, 0.08), transparent 30rem),
    linear-gradient(180deg, #f9f4ed 0%, var(--alt-paper) 52%, var(--alt-paper-deep) 100%);
  box-shadow: none;
}

body.is-editorial-confidence-path .app-nav.is-root-invitations {
  position: relative;
  min-height: 78px;
  overflow: hidden;
  border: 1px solid rgba(92, 53, 76, 0.1);
  background:
    radial-gradient(circle at 84% -40%, rgba(255, 255, 255, 0.76), transparent 16rem),
    linear-gradient(118deg, #ecd9e2 0%, #dedbed 56%, #dceae4 100%);
  box-shadow: 0 18px 42px rgba(92, 67, 82, 0.13);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

body.is-editorial-confidence-path .app-nav.is-root-invitations::after {
  content: "";
  position: absolute;
  right: 9%;
  bottom: -86px;
  width: 170px;
  height: 190px;
  border: 16px solid rgba(92, 53, 76, 0.08);
  border-bottom: 0;
  border-radius: 88px 88px 0 0;
  pointer-events: none;
}

body.is-editorial-confidence-path .app-nav.is-root-invitations > * {
  position: relative;
  z-index: 1;
}

body.is-editorial-confidence-path .app-nav .nav-status.is-navigation-title {
  display: grid;
  gap: 2px;
  color: var(--alt-ink);
  font-family: ui-serif, "New York", Georgia, serif;
  font-size: 1.38rem;
  font-weight: 760;
  letter-spacing: -0.025em;
}

body.is-editorial-confidence-path .app-nav .nav-status.is-navigation-title::before {
  content: "Private membership";
  color: var(--alt-wine-deep);
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", Inter, sans-serif;
  font-size: 0.56rem;
  font-weight: 850;
  letter-spacing: 0.12em;
  line-height: 1;
  text-transform: uppercase;
}

body.is-editorial-confidence-path .avatar-button {
  color: var(--alt-wine-deep);
  background: #fffdf9;
  box-shadow: 0 10px 24px rgba(92, 67, 82, 0.16);
}

body.is-editorial-confidence-path .root-tabs {
  border-color: rgba(92, 53, 76, 0.1);
  background:
    radial-gradient(circle at 20% 0%, rgba(255, 255, 255, 0.6), transparent 9rem),
    linear-gradient(160deg, #e8dce7, #dfe8e8);
  box-shadow: 0 18px 42px rgba(92, 67, 82, 0.13);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

body.is-editorial-confidence-path .root-tab {
  color: #685c69;
}

body.is-editorial-confidence-path .root-tab.is-active {
  color: var(--alt-ink);
  background: #fffdf9;
  box-shadow: 0 9px 24px rgba(92, 67, 82, 0.15);
}

body.is-editorial-confidence-path .social-mix-promo,
body.is-editorial-confidence-path .notification-item.is-social-mix {
  border-color: rgba(113, 51, 78, 0.18);
  background:
    radial-gradient(circle at 95% 0%, rgba(113, 51, 78, 0.12), transparent 15rem),
    linear-gradient(120deg, #f4edf8, #fffaf4);
  box-shadow: 0 16px 40px rgba(65, 40, 53, 0.1);
}

body.is-editorial-confidence-path .incoming-priority-section,
body.is-editorial-confidence-path .incoming-waiting-section {
  overflow: visible;
  border: 0;
  background: transparent;
  box-shadow: none;
}

body.is-editorial-confidence-path .incoming-priority-section[open] > .incoming-section-header {
  border: 0;
  border-radius: 22px;
  background:
    radial-gradient(circle at 92% 0%, rgba(255, 255, 255, 0.58), transparent 11rem),
    linear-gradient(120deg, #eadde5, #e1e6f0);
  color: var(--alt-ink);
  box-shadow: 0 14px 34px rgba(92, 67, 82, 0.12);
}

body.is-editorial-confidence-path .incoming-priority-section[open] > .incoming-section-header small,
body.is-editorial-confidence-path .incoming-priority-section[open] > .incoming-section-header .disclosure-label {
  color: #746875;
}

body.is-editorial-confidence-path .incoming-priority-section[open] > .incoming-section-header .quiet-pill {
  border-color: rgba(92, 53, 76, 0.14);
  color: var(--alt-ink);
  background: #fffdf9;
}

body.is-editorial-confidence-path .incoming-priority-section[open] > .incoming-section-header .response-disclosure-chevron {
  border-color: var(--alt-wine);
}

body.is-editorial-confidence-path .incoming-waiting-section > .incoming-section-header {
  border: 1px solid rgba(68, 51, 44, 0.12);
  border-radius: 20px;
  background: rgba(255, 250, 244, 0.72);
  box-shadow: 0 10px 28px rgba(58, 44, 32, 0.08);
}

body.is-editorial-confidence-path .incoming-section-body {
  padding: 12px 0 2px;
}

body.is-editorial-confidence-path .find-controls-panel {
  overflow: hidden;
  border: 0;
  background: #fffaf4;
  box-shadow: 0 16px 40px rgba(57, 42, 37, 0.12);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

body.is-editorial-confidence-path .find-filter-summary {
  border-radius: 20px;
  background:
    radial-gradient(circle at 92% -30%, rgba(255, 255, 255, 0.62), transparent 12rem),
    linear-gradient(120deg, #e4e1ef, #eadde5);
  color: var(--alt-ink);
}

body.is-editorial-confidence-path .find-filter-summary-copy small,
body.is-editorial-confidence-path .find-filter-title-row > span,
body.is-editorial-confidence-path .find-filter-summary .disclosure-label {
  color: #746875;
}

body.is-editorial-confidence-path .find-filter-summary .find-filter-title-row strong {
  color: var(--alt-ink);
}

body.is-editorial-confidence-path .find-filter-summary .response-disclosure-chevron {
  border-color: var(--alt-wine);
}

body.is-editorial-confidence-path .find-filter-mark {
  border-color: rgba(92, 53, 76, 0.12);
  color: var(--alt-wine-deep);
  background: #fff8ef;
}

body.is-editorial-confidence-path .find-results-summary strong {
  color: var(--alt-ink);
  font-family: ui-serif, "New York", Georgia, serif;
  font-size: 1.35rem;
  letter-spacing: -0.025em;
}

body.is-editorial-confidence-path .invite-record[data-invite-signature] {
  overflow: clip;
  border: 0;
  border-radius: 27px;
  background: #fffaf4;
  box-shadow: 0 18px 44px rgba(92, 67, 82, 0.12);
}

body.is-editorial-confidence-path .invite-record[data-invite-signature]:hover,
body.is-editorial-confidence-path .invite-record[data-invite-signature]:focus-within {
  border: 0;
  box-shadow: 0 24px 58px rgba(92, 67, 82, 0.17);
  transform: translateY(-2px);
}

body.is-editorial-confidence-path .invite-record[data-invite-signature]:not(.is-completed) > .invite-record-identity,
body.is-editorial-confidence-path .invite-record[data-invite-signature] > .invite-record-identity {
  position: relative;
  min-height: 126px;
  margin: -7px -7px 0;
  overflow: hidden;
  border: 0;
  border-radius: 24px 24px 0 0;
  background:
    radial-gradient(circle at 88% 0%, rgba(255, 255, 255, 0.74), transparent 13rem),
    linear-gradient(138deg,
      color-mix(in srgb, var(--invite-accent-soft) 84%, white),
      color-mix(in srgb, var(--invite-accent) 20%, white));
  padding: 18px 15px;
}

body.is-editorial-confidence-path .invite-record-identity::before {
  content: "";
  position: absolute;
  right: 4%;
  bottom: -92px;
  width: 145px;
  height: 176px;
  border: 14px solid color-mix(in srgb, var(--invite-accent) 14%, transparent);
  border-bottom: 0;
  border-radius: 76px 76px 0 0;
  pointer-events: none;
}

body.is-editorial-confidence-path .invite-record-identity::after {
  display: none;
}

body.is-editorial-confidence-path .invite-record-identity > * {
  position: relative;
  z-index: 1;
}

body.is-editorial-confidence-path .invite-record-identity-copy > strong {
  color: color-mix(in srgb, var(--invite-accent-deep) 88%, var(--alt-ink));
  font-size: 1.16rem;
  line-height: 1.02;
}

body.is-editorial-confidence-path .invite-record-category > span:last-child,
body.is-editorial-confidence-path .invite-record-meta,
body.is-editorial-confidence-path .invite-record-travel-range,
body.is-editorial-confidence-path .invite-record-identity-support {
  color: color-mix(in srgb, var(--invite-accent-deep) 72%, #6b6266);
}

body.is-editorial-confidence-path .invite-record-state-pill {
  border-color: color-mix(in srgb, var(--invite-accent) 26%, white);
  color: var(--invite-accent-deep);
  background: rgba(255, 250, 244, 0.92);
}

body.is-editorial-confidence-path .invite-record .invitation-seal {
  border-color: rgba(255, 255, 255, 0.72);
  background: rgba(255, 253, 249, 0.9);
  box-shadow: 0 12px 28px color-mix(in srgb, var(--invite-accent) 15%, transparent);
}

body.is-editorial-confidence-path .invite-record .invitation-seal .event-category-icon {
  color: var(--invite-accent-deep);
  background: transparent;
  box-shadow: none;
}

body.is-editorial-confidence-path .invite-record .invitation-seal .invite-signature-mark i {
  background: var(--invite-accent);
}

body.is-editorial-confidence-path .last-minute-timing-receipt {
  margin: 10px 10px 0;
  border-radius: 15px;
  background: #fff5e8;
}

body.is-editorial-confidence-path .invite-inline-disclosure,
body.is-editorial-confidence-path .invite-card-context-row,
body.is-editorial-confidence-path .find-event-action-row,
body.is-editorial-confidence-path .guest-response-row.is-response-actions {
  margin-inline: 5px;
}

body.is-editorial-confidence-path .review-invitation-label {
  font-weight: 500;
}

/* Alternative v10: repeated disclosure text reads as an actionable control. */
body.is-editorial-confidence-path .invite-inline-disclosure > summary .disclosure-label,
body.is-editorial-confidence-path .out-plan-disclosure > summary .disclosure-label,
body.is-editorial-confidence-path .on-plan-disclosure > summary .disclosure-label,
body.is-editorial-confidence-path .invitation-confidence-disclosure > summary .confidence-disclosure-label,
body.is-editorial-confidence-path .out-person-disclosure > summary .out-person-disclosure-action,
body.is-editorial-confidence-path .confirmed-plan-card.is-completed > summary .completed-plan-toggle,
body.is-editorial-confidence-path .invite-town-picker > summary .invite-town-summary-action {
  --disclosure-control-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2351466f' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 9.5 5 5 5-5'/%3E%3C/svg%3E");
  min-width: 0;
  min-height: 36px;
  border: 1px solid rgba(81, 70, 111, 0.18);
  border-radius: 999px;
  background: rgba(255, 253, 249, 0.96);
  padding: 4px 5px 4px 11px;
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 7px;
  color: var(--alt-blue-dark);
  font-size: 0.72rem;
  font-weight: 820;
  line-height: 1;
  white-space: nowrap;
  box-shadow: 0 5px 14px rgba(81, 70, 111, 0.09);
  transition: border-color 150ms ease, background-color 150ms ease, box-shadow 150ms ease;
}

body.is-editorial-confidence-path .invite-inline-disclosure > summary .disclosure-label::after,
body.is-editorial-confidence-path .out-plan-disclosure > summary .disclosure-label::after,
body.is-editorial-confidence-path .on-plan-disclosure > summary .disclosure-label::after,
body.is-editorial-confidence-path .invitation-confidence-disclosure > summary .confidence-disclosure-label::after,
body.is-editorial-confidence-path .out-person-disclosure > summary .out-person-disclosure-action::after,
body.is-editorial-confidence-path .confirmed-plan-card.is-completed > summary .completed-plan-toggle::after,
body.is-editorial-confidence-path .invite-town-picker > summary .invite-town-summary-action::after {
  content: "";
  width: 26px;
  height: 26px;
  flex: 0 0 26px;
  border-radius: 50%;
  background-color: var(--alt-blue-soft);
  background-image: var(--disclosure-control-icon);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 16px 16px;
  transform: none;
}

body.is-editorial-confidence-path .invite-inline-disclosure[open] > summary .disclosure-label,
body.is-editorial-confidence-path .out-plan-disclosure[open] > summary .disclosure-label,
body.is-editorial-confidence-path .on-plan-disclosure[open] > summary .disclosure-label,
body.is-editorial-confidence-path .invitation-confidence-disclosure[open] > summary .confidence-disclosure-label,
body.is-editorial-confidence-path .out-person-disclosure[open] > summary .out-person-disclosure-action,
body.is-editorial-confidence-path .confirmed-plan-card.is-completed[open] > summary .completed-plan-toggle,
body.is-editorial-confidence-path .invite-town-picker[open] > summary .invite-town-summary-action {
  --disclosure-control-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2351466f' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 14.5 5-5 5 5'/%3E%3C/svg%3E");
}

body.is-editorial-confidence-path .invite-inline-disclosure > summary:hover .disclosure-label,
body.is-editorial-confidence-path .out-plan-disclosure > summary:hover .disclosure-label,
body.is-editorial-confidence-path .on-plan-disclosure > summary:hover .disclosure-label,
body.is-editorial-confidence-path .invitation-confidence-disclosure > summary:hover .confidence-disclosure-label,
body.is-editorial-confidence-path .out-person-disclosure > summary:hover .out-person-disclosure-action,
body.is-editorial-confidence-path .confirmed-plan-card.is-completed > summary:hover .completed-plan-toggle,
body.is-editorial-confidence-path .invite-town-picker > summary:hover .invite-town-summary-action {
  border-color: rgba(92, 53, 76, 0.32);
  background: #fff8f2;
  box-shadow: 0 7px 18px rgba(92, 53, 76, 0.14);
}

body.is-editorial-confidence-path .section-toggle,
body.is-editorial-confidence-path .queue-toggle {
  --disclosure-control-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2351466f' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 9.5 5 5 5-5'/%3E%3C/svg%3E");
  border: 1px solid rgba(81, 70, 111, 0.18);
  background: rgba(255, 253, 249, 0.96);
  padding: 4px 5px 4px 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: var(--alt-blue-dark);
  box-shadow: 0 5px 14px rgba(81, 70, 111, 0.08);
}

body.is-editorial-confidence-path .section-toggle::after,
body.is-editorial-confidence-path .queue-toggle::after {
  content: "";
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  border-radius: 50%;
  background-color: var(--alt-blue-soft);
  background-image: var(--disclosure-control-icon);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 16px 16px;
}

body.is-editorial-confidence-path .section-toggle[aria-expanded="true"],
body.is-editorial-confidence-path .queue-toggle[aria-expanded="true"] {
  --disclosure-control-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2351466f' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 14.5 5-5 5 5'/%3E%3C/svg%3E");
}

body.is-editorial-confidence-path .section-toggle:hover,
body.is-editorial-confidence-path .queue-toggle:hover {
  border-color: rgba(92, 53, 76, 0.32);
  background: #fff8f2;
  box-shadow: 0 7px 18px rgba(92, 53, 76, 0.14);
}

body.is-editorial-confidence-path .section-toggle:focus-visible,
body.is-editorial-confidence-path .queue-toggle:focus-visible {
  outline: 3px solid rgba(113, 103, 143, 0.24);
  outline-offset: 2px;
}

body.is-editorial-confidence-path .incoming-section-toggle .disclosure-label,
body.is-editorial-confidence-path .find-filter-summary .disclosure-label {
  min-width: 0;
  color: var(--alt-blue-dark);
  font-size: 0.73rem;
  font-weight: 820;
  text-align: right;
}

body.is-editorial-confidence-path .incoming-section-toggle .response-disclosure-chevron,
body.is-editorial-confidence-path .find-filter-summary .response-disclosure-chevron {
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  border: 0;
  border-radius: 50%;
  background: var(--alt-blue-soft);
  display: grid;
  place-items: center;
  transform: none;
}

body.is-editorial-confidence-path .incoming-section-toggle .response-disclosure-chevron::before,
body.is-editorial-confidence-path .find-filter-summary .response-disclosure-chevron::before {
  content: "";
  width: 7px;
  height: 7px;
  border-right: 2px solid var(--alt-blue-dark);
  border-bottom: 2px solid var(--alt-blue-dark);
  transform: rotate(45deg) translate(-1px, -1px);
}

body.is-editorial-confidence-path .incoming-priority-section[open] > .incoming-section-header .response-disclosure-chevron,
body.is-editorial-confidence-path .incoming-waiting-section[open] > .incoming-section-header .response-disclosure-chevron,
body.is-editorial-confidence-path .find-controls-panel[open] > .find-filter-summary .response-disclosure-chevron {
  transform: none;
}

body.is-editorial-confidence-path .incoming-priority-section[open] > .incoming-section-header .response-disclosure-chevron::before,
body.is-editorial-confidence-path .incoming-waiting-section[open] > .incoming-section-header .response-disclosure-chevron::before,
body.is-editorial-confidence-path .find-controls-panel[open] > .find-filter-summary .response-disclosure-chevron::before {
  transform: rotate(225deg) translate(-1px, -1px);
}

@media (max-width: 360px) {
  body.is-editorial-confidence-path .incoming-section-toggle .response-disclosure-chevron,
  body.is-editorial-confidence-path .find-filter-summary .response-disclosure-chevron {
    width: 26px;
    height: 26px;
    flex-basis: 26px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.is-editorial-confidence-path .invite-inline-disclosure > summary .disclosure-label,
  body.is-editorial-confidence-path .out-plan-disclosure > summary .disclosure-label,
  body.is-editorial-confidence-path .on-plan-disclosure > summary .disclosure-label,
  body.is-editorial-confidence-path .invitation-confidence-disclosure > summary .confidence-disclosure-label,
  body.is-editorial-confidence-path .out-person-disclosure > summary .out-person-disclosure-action,
  body.is-editorial-confidence-path .confirmed-plan-card.is-completed > summary .completed-plan-toggle,
  body.is-editorial-confidence-path .invite-town-picker > summary .invite-town-summary-action {
    transition: none;
  }
}

body.is-editorial-confidence-path .queue-shared-answer-editor {
  margin-top: 14px;
  border-top: 1px solid color-mix(in srgb, var(--invite-accent) 22%, #ddd2ca);
  padding: 14px 0 2px;
}

body.is-editorial-confidence-path .queue-shared-answer-editor .shared-detail-editor {
  gap: 7px;
}

body.is-editorial-confidence-path .queue-shared-answer-editor .shared-detail-editor span {
  color: color-mix(in srgb, var(--invite-accent-deep) 78%, var(--alt-ink));
  font-size: 0.76rem;
  letter-spacing: 0.035em;
}

body.is-editorial-confidence-path .queue-shared-answer-editor textarea {
  min-height: 104px;
  border-color: color-mix(in srgb, var(--invite-accent) 26%, #d9d1ca);
  border-radius: 18px;
  background: rgba(255, 253, 249, 0.96);
  padding: 13px 14px;
  color: var(--alt-ink);
  font-size: 0.96rem;
  line-height: 1.42;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
}

body.is-editorial-confidence-path .queue-shared-answer-editor textarea:focus {
  outline: 3px solid color-mix(in srgb, var(--invite-accent) 20%, transparent);
  border-color: color-mix(in srgb, var(--invite-accent) 64%, var(--alt-wine));
}

body.is-editorial-confidence-path .queue-shared-answer-helper,
body.is-editorial-confidence-path .queue-shared-answer-error {
  margin: 8px 2px 0;
  font-size: 0.76rem;
  font-weight: 650;
  line-height: 1.35;
}

body.is-editorial-confidence-path .queue-shared-answer-helper {
  color: #70666b;
}

body.is-editorial-confidence-path .queue-shared-answer-error {
  color: #9f382c;
}

body.is-editorial-confidence-path .queue-shared-answer-actions {
  margin-top: 11px;
  display: grid;
  grid-template-columns: minmax(0, 0.72fr) minmax(0, 1.28fr);
  gap: 9px;
}

body.is-editorial-confidence-path .queue-shared-answer-actions .inline-action {
  width: 100%;
  min-width: 0;
}

body.is-editorial-confidence-path .work-row.invite-record:has(.queue-shared-answer-editor) .work-row-side {
  border-top: 0;
  padding-top: 0;
}

body.is-editorial-confidence-path .work-row.invite-record:has(.queue-shared-answer-editor) .work-row-side .person-timer {
  margin-top: 2px;
}

body.is-editorial-confidence-path .invite-record-review-action {
  color: var(--alt-wine-deep);
  background: var(--alt-wine-soft);
}

body.is-editorial-confidence-path .profile-add-action,
body.is-editorial-confidence-path .primary-action,
body.is-editorial-confidence-path .confirm-button {
  background: var(--alt-wine-deep);
  box-shadow: 0 10px 24px rgba(92, 53, 76, 0.22);
}

body.is-editorial-confidence-path .profile-add-action:hover,
body.is-editorial-confidence-path .primary-action:hover,
body.is-editorial-confidence-path .confirm-button:hover {
  background: #4b293f;
}

body.is-editorial-confidence-path .invite-detail-hero.invitation-visual-surface[data-invite-signature] {
  background:
    radial-gradient(circle at 87% 5%, rgba(255, 255, 255, 0.78), transparent 31%),
    linear-gradient(145deg,
      color-mix(in srgb, var(--invite-accent-soft) 86%, white),
      color-mix(in srgb, var(--invite-accent) 22%, white));
  color: color-mix(in srgb, var(--invite-accent-deep) 88%, var(--alt-ink));
}

body.is-editorial-confidence-path .invite-detail-hero::after {
  border-color: color-mix(in srgb, var(--invite-accent) 14%, transparent);
}

body.is-editorial-confidence-path .invite-detail-hero h2 {
  color: color-mix(in srgb, var(--invite-accent-deep) 88%, var(--alt-ink));
}

body.is-editorial-confidence-path .invite-detail-hero .invite-detail-category > span,
body.is-editorial-confidence-path .invite-detail-hero p {
  color: color-mix(in srgb, var(--invite-accent-deep) 72%, #655d62);
}

body.is-editorial-confidence-path .invitation-confidence-path {
  border-color: rgba(113, 51, 78, 0.16);
  background:
    radial-gradient(circle at 100% 0%, rgba(113, 51, 78, 0.08), transparent 13rem),
    #faf5ef;
}

body.is-editorial-confidence-path:has(#inviteDetailSheet:not([hidden])) #backToTop {
  display: none;
}

body.is-editorial-confidence-path .confidence-path-dot {
  border-color: #faf5ef;
}

body.is-editorial-confidence-path .confidence-path-steps li.is-current .confidence-path-dot,
body.is-editorial-confidence-path .confidence-path-steps li.is-complete .confidence-path-dot {
  background: var(--alt-wine);
}

@media (min-width: 901px) {
  body.is-editorial-confidence-path.is-prototype-desktop .screen-scroll:has(.root-tabs:not([hidden])) {
    grid-template-columns: 112px minmax(0, 1fr);
    column-gap: 32px;
  }

  body.is-editorial-confidence-path.is-prototype-desktop .screen-scroll:has(.root-tabs:not([hidden])) > .root-tabs {
    width: 112px;
    border-color: rgba(92, 53, 76, 0.1);
    border-radius: 28px;
    background:
      radial-gradient(circle at 20% 0%, rgba(255, 255, 255, 0.6), transparent 9rem),
      linear-gradient(160deg, #e8dce7, #dfe8e8);
    padding: 10px;
    box-shadow: 0 18px 42px rgba(92, 67, 82, 0.13);
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }

  body.is-editorial-confidence-path.is-prototype-desktop .root-tab {
    min-height: 78px;
    border-radius: 19px;
  }

  body.is-editorial-confidence-path.is-prototype-desktop #findView .event-section {
    grid-template-columns: minmax(350px, 400px) minmax(0, 1fr);
    gap: 24px 28px;
  }

  body.is-editorial-confidence-path.is-prototype-desktop .find-event-card .invite-record-identity {
    min-height: 148px;
    padding: 22px 18px;
  }

  body.is-editorial-confidence-path.is-prototype-desktop .find-event-card .invite-record-identity-copy > strong {
    max-width: 390px;
    font-size: 1.16rem;
  }

  body.is-editorial-confidence-path .invite-detail-sheet {
    align-items: stretch;
    justify-items: end;
    padding: 16px 18px;
  }

  body.is-editorial-confidence-path .invite-detail-sheet .invite-detail-panel {
    width: min(760px, calc(100vw - 72px));
    height: calc(100dvh - 32px);
    max-height: none;
    margin: 0;
    border-radius: 34px;
    box-shadow: -28px 0 90px rgba(18, 14, 13, 0.34);
  }
}

@media (max-width: 900px) {
  body.is-editorial-confidence-path.is-prototype-mobile .app-nav.is-root-invitations {
    min-height: 72px;
    border-radius: 25px;
  }

  body.is-editorial-confidence-path.is-prototype-mobile .root-tabs {
    top: 80px !important;
    border-radius: 22px;
    background:
      radial-gradient(circle at 10% 0%, rgba(255, 255, 255, 0.62), transparent 8rem),
      linear-gradient(160deg, #e8dce7, #dfe8e8);
  }

  body.is-editorial-confidence-path .invite-record[data-invite-signature]:not(.is-completed) > .invite-record-identity,
  body.is-editorial-confidence-path .invite-record[data-invite-signature] > .invite-record-identity {
    min-height: 118px;
    padding: 17px 13px;
  }

  body.is-editorial-confidence-path .invite-record-identity-copy > strong {
    font-size: 1.16rem;
  }

  body.is-editorial-confidence-path .invite-detail-sheet {
    align-items: stretch;
  }

  body.is-editorial-confidence-path .invite-detail-sheet .invite-detail-panel {
    width: 100%;
    height: 100dvh;
    max-height: 100dvh;
    border-radius: 0;
    padding: 12px 12px max(16px, env(safe-area-inset-bottom));
  }

  body.is-editorial-confidence-path .invite-detail-hero.invitation-visual-surface[data-invite-signature] {
    min-height: 250px;
    border-radius: 28px;
  }
}

@media (max-width: 370px) {
  body.is-editorial-confidence-path .canonical-build-label strong {
    width: 44px;
  }

  body.is-editorial-confidence-path .invite-record[data-invite-signature]:not(.is-completed) > .invite-record-identity,
  body.is-editorial-confidence-path .invite-record[data-invite-signature] > .invite-record-identity {
    min-height: 112px;
    padding: 15px 11px;
  }

  body.is-editorial-confidence-path .invite-record-identity-copy > strong {
    font-size: 1.12rem;
  }
}

@media (prefers-reduced-transparency: reduce) {
  body.is-editorial-confidence-path .prototype-device-switch,
  body.is-editorial-confidence-path .app-nav.is-root-invitations,
  body.is-editorial-confidence-path .root-tabs,
  body.is-editorial-confidence-path .find-controls-panel,
  body.is-editorial-confidence-path .invite-detail-actions {
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
}

/* Alternative direction 4
   Keep research controls visually subordinate on phones and put the member's
   primary In / Out / On navigation directly beneath the Invitations header. */
body.is-editorial-confidence-path .prototype-tool-icon {
  width: 20px;
  height: 20px;
  flex: 0 0 auto;
  display: none;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  pointer-events: none;
}

body.is-editorial-confidence-path:has(.prototype-scenario-tools[open]) .prototype-device-switch {
  z-index: 100;
}

@media (max-width: 900px) {
  body.is-editorial-confidence-path.is-prototype-mobile .app-nav.is-root-invitations {
    margin-bottom: 6px;
  }

  body.is-editorial-confidence-path.is-prototype-mobile .root-tabs {
    top: 0 !important;
    min-height: 52px;
    margin: 0 0 12px;
    padding: 4px;
  }

  body.is-editorial-confidence-path.is-prototype-mobile .root-tab {
    min-height: 44px;
    gap: 6px;
    border-radius: 17px;
  }

  body.is-editorial-confidence-path.is-prototype-mobile .root-tab svg {
    width: 18px;
    height: 18px;
    display: block;
    stroke-width: 1.9;
  }
}

@media (max-width: 600px) {
  body.is-editorial-confidence-path .prototype-device-switch {
    width: calc(100% - 12px);
    height: 52px;
    min-height: 52px;
    margin-top: 6px;
    grid-template-columns: minmax(82px, 1fr) repeat(3, 44px);
    grid-template-rows: 44px;
    gap: 3px;
    border-radius: 20px;
    padding: 4px;
    top: 4px;
    z-index: 20;
  }

  body.is-editorial-confidence-path .canonical-build-label {
    grid-column: 1;
    grid-row: 1;
    justify-self: start;
    gap: 2px;
  }

  body.is-editorial-confidence-path .canonical-build-label strong {
    width: 36px;
    min-width: 36px;
    min-height: 36px;
    border-radius: 13px;
    padding: 0;
    display: grid;
    place-items: center;
  }

  body.is-editorial-confidence-path .canonical-label-wide,
  body.is-editorial-confidence-path .regular-label-wide,
  body.is-editorial-confidence-path .regular-label-compact,
  body.is-editorial-confidence-path .prototype-tool-label {
    display: none;
  }

  body.is-editorial-confidence-path .canonical-label-compact,
  body.is-editorial-confidence-path .prototype-tool-icon {
    display: block;
  }

  body.is-editorial-confidence-path .canonical-build-label a {
    width: 44px;
    min-width: 44px;
    height: 44px;
    min-height: 44px;
    border-radius: 15px;
    padding: 0;
    justify-content: center;
  }

  body.is-editorial-confidence-path .canonical-build-label a:hover,
  body.is-editorial-confidence-path .canonical-build-label a:focus-visible {
    background: rgba(255, 255, 255, 0.76);
  }

  body.is-editorial-confidence-path .prototype-scenario-tools {
    grid-column: 2;
    grid-row: 1;
    width: 44px;
    justify-self: stretch;
  }

  body.is-editorial-confidence-path .prototype-scenario-tools > summary {
    width: 44px;
    height: 44px;
    min-height: 44px;
    border-radius: 15px;
    padding: 0;
    justify-content: center;
  }

  body.is-editorial-confidence-path .prototype-scenario-tools .prototype-scenario-picker {
    position: fixed;
    top: 64px;
    right: 8px;
    left: 8px;
    width: auto;
    max-height: calc(100dvh - 76px);
    overflow-y: auto;
  }

  body.is-editorial-confidence-path .prototype-device-switch > [data-device-view="mobile"] {
    grid-column: 3;
    grid-row: 1;
  }

  body.is-editorial-confidence-path .prototype-device-switch > [data-device-view="desktop"] {
    grid-column: 4;
    grid-row: 1;
  }

  body.is-editorial-confidence-path .prototype-device-switch > button {
    width: 44px;
    height: 44px;
    min-height: 44px;
    border-radius: 15px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  body.is-editorial-confidence-path .app-shell {
    min-height: calc(100dvh - 58px);
  }

  body.is-editorial-confidence-path .compose-panel {
    height: calc(100dvh - 58px);
  }
}

/* Alternative v11: richer pastel separation for the site stage and Invite identities. */
body.is-editorial-confidence-path {
  --alt-color-pop-level: enhanced;
  --alt-stage: #e9ddea;
  --alt-stage-soft: #d6e9e2;
  --alt-paper: #fff8f0;
  --alt-paper-deep: #eee0d5;
  --alt-wine: #985273;
  --alt-wine-deep: #592a46;
  --alt-wine-soft: #f4dfe9;
  --alt-blue: #69558c;
  --alt-blue-dark: #49376c;
  --alt-blue-soft: #e7e1f4;
  background:
    radial-gradient(circle at 9% -7%, rgba(218, 127, 166, 0.68), transparent 35rem),
    radial-gradient(circle at 93% 2%, rgba(103, 184, 151, 0.56), transparent 33rem),
    linear-gradient(145deg, #fae9f0 0%, var(--alt-stage) 51%, var(--alt-stage-soft) 100%);
}

body.is-editorial-confidence-path .prototype-device-switch {
  border-color: rgba(89, 42, 70, 0.18);
  background: rgba(255, 248, 242, 0.9);
  box-shadow: 0 18px 52px rgba(89, 42, 70, 0.2);
}

body.is-editorial-confidence-path .app-shell {
  background: var(--alt-paper);
  box-shadow: 0 36px 116px rgba(89, 42, 70, 0.23);
}

body.is-editorial-confidence-path .compose-panel {
  background:
    radial-gradient(circle at 102% -4%, rgba(152, 82, 115, 0.12), transparent 31rem),
    linear-gradient(180deg, #f8efe8 0%, var(--alt-paper) 52%, var(--alt-paper-deep) 100%);
}

body.is-editorial-confidence-path .app-nav.is-root-invitations {
  border-color: rgba(89, 42, 70, 0.16);
  background:
    radial-gradient(circle at 84% -40%, rgba(255, 255, 255, 0.68), transparent 16rem),
    linear-gradient(118deg, #e8cad8 0%, #d8d1ed 56%, #cfe6dc 100%);
  box-shadow: 0 18px 46px rgba(89, 42, 70, 0.18);
}

body.is-editorial-confidence-path .app-nav.is-root-invitations::after {
  border-color: rgba(89, 42, 70, 0.12);
}

body.is-editorial-confidence-path .root-tabs,
body.is-editorial-confidence-path.is-prototype-desktop .screen-scroll:has(.root-tabs:not([hidden])) > .root-tabs {
  border-color: rgba(89, 42, 70, 0.16);
  background:
    radial-gradient(circle at 14% 0%, rgba(255, 255, 255, 0.56), transparent 9rem),
    linear-gradient(160deg, #e4d1df, #d4e6e2);
  box-shadow: 0 18px 44px rgba(89, 42, 70, 0.17);
}

body.is-editorial-confidence-path .root-tab.is-active {
  color: var(--alt-wine-deep);
  background: #fffaf5;
  box-shadow:
    inset 0 -3px 0 var(--alt-wine),
    0 9px 24px rgba(89, 42, 70, 0.18);
}

body.is-editorial-confidence-path .social-mix-promo,
body.is-editorial-confidence-path .notification-item.is-social-mix {
  border-color: rgba(152, 82, 115, 0.25);
  background:
    radial-gradient(circle at 95% 0%, rgba(152, 82, 115, 0.17), transparent 15rem),
    linear-gradient(120deg, #eee4f7, #fff5ec);
  box-shadow: 0 16px 42px rgba(89, 42, 70, 0.14);
}

body.is-editorial-confidence-path .incoming-priority-section[open] > .incoming-section-header {
  background:
    radial-gradient(circle at 92% 0%, rgba(255, 255, 255, 0.5), transparent 11rem),
    linear-gradient(120deg, #e4cedc, #d8deee);
  box-shadow: 0 14px 38px rgba(89, 42, 70, 0.16);
}

body.is-editorial-confidence-path .incoming-waiting-section > .incoming-section-header {
  border-color: rgba(89, 42, 70, 0.16);
  background: rgba(250, 237, 233, 0.82);
}

body.is-editorial-confidence-path .find-controls-panel {
  background: #fff7ef;
  box-shadow: 0 16px 42px rgba(89, 42, 70, 0.15);
}

body.is-editorial-confidence-path .find-filter-summary {
  background:
    radial-gradient(circle at 92% -30%, rgba(255, 255, 255, 0.54), transparent 12rem),
    linear-gradient(120deg, #dcd7ed, #e7d0dd);
}

body.is-editorial-confidence-path .invite-record[data-invite-signature] {
  background: #fff8f0;
  box-shadow:
    inset 0 0 0 1px color-mix(in srgb, var(--invite-accent) 18%, transparent),
    0 18px 46px color-mix(in srgb, var(--invite-accent) 14%, rgba(89, 42, 70, 0.13));
}

body.is-editorial-confidence-path .invite-record[data-invite-signature]:hover,
body.is-editorial-confidence-path .invite-record[data-invite-signature]:focus-within {
  box-shadow:
    inset 0 0 0 1px color-mix(in srgb, var(--invite-accent) 30%, transparent),
    0 25px 62px color-mix(in srgb, var(--invite-accent) 22%, rgba(89, 42, 70, 0.16));
}

body.is-editorial-confidence-path .invite-record[data-invite-signature]:not(.is-completed) > .invite-record-identity,
body.is-editorial-confidence-path .invite-record[data-invite-signature] > .invite-record-identity {
  background:
    radial-gradient(circle at 88% 0%, rgba(255, 255, 255, 0.58), transparent 13rem),
    linear-gradient(138deg,
      color-mix(in srgb, var(--invite-accent-soft) 72%, white),
      color-mix(in srgb, var(--invite-accent) 34%, white));
  box-shadow: inset 0 4px 0 var(--invite-accent);
}

body.is-editorial-confidence-path .invite-record-identity::before {
  border-color: color-mix(in srgb, var(--invite-accent) 22%, transparent);
}

body.is-editorial-confidence-path .invite-record-state-pill {
  border-color: color-mix(in srgb, var(--invite-accent) 38%, white);
  background: color-mix(in srgb, var(--invite-accent-soft) 68%, white);
  box-shadow: 0 4px 12px color-mix(in srgb, var(--invite-accent) 12%, transparent);
}

body.is-editorial-confidence-path .invite-record .invitation-seal {
  border-color: color-mix(in srgb, var(--invite-accent) 24%, white);
  background: rgba(255, 252, 247, 0.94);
  box-shadow: 0 12px 30px color-mix(in srgb, var(--invite-accent) 22%, transparent);
}

body.is-editorial-confidence-path .last-minute-timing-receipt {
  border-color: rgba(174, 108, 34, 0.3);
  background: #ffead2;
}

body.is-editorial-confidence-path .invite-record-review-action {
  border-color: rgba(152, 82, 115, 0.22);
  color: var(--alt-wine-deep);
  background: #f3dce7;
}

body.is-editorial-confidence-path .invite-detail-hero.invitation-visual-surface[data-invite-signature] {
  background:
    radial-gradient(circle at 87% 5%, rgba(255, 255, 255, 0.62), transparent 31%),
    linear-gradient(145deg,
      color-mix(in srgb, var(--invite-accent-soft) 72%, white),
      color-mix(in srgb, var(--invite-accent) 36%, white));
  box-shadow: inset 0 5px 0 var(--invite-accent);
}

body.is-editorial-confidence-path .incoming-invite-note-stack {
  margin-top: 10px;
  display: grid;
  gap: 9px;
}

body.is-editorial-confidence-path .incoming-invite-note-stack p {
  margin: 0;
  color: #344054;
  font-size: 0.84rem;
  font-weight: 650;
  line-height: 1.46;
}

body.is-editorial-confidence-path .incoming-invite-note-stack p + p {
  border-top: 1px dashed color-mix(in srgb, var(--invite-accent) 28%, #d9d1ca);
  padding-top: 9px;
}

/* Canonical Mobile preview geometry follows the selected mode, not the outer Safari width. */
body.is-editorial-confidence-path.is-prototype-mobile .app-nav.is-root-invitations {
  margin-bottom: 6px;
}

body.is-editorial-confidence-path.is-prototype-mobile .root-tabs {
  position: sticky;
  top: 0 !important;
  left: auto;
  bottom: auto;
  z-index: 55;
  width: min(360px, calc(100% - 16px));
  min-height: 52px;
  margin: 0 auto 12px;
  transform: none;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  border: 1px solid rgba(89, 42, 70, 0.16);
  border-radius: 22px;
  background:
    radial-gradient(circle at 10% 0%, rgba(255, 255, 255, 0.62), transparent 8rem),
    linear-gradient(160deg, #e4d1df, #d4e6e2);
  padding: 4px;
  box-shadow: 0 12px 32px rgba(89, 42, 70, 0.14);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

body.is-editorial-confidence-path.is-prototype-mobile .root-tab {
  min-height: 44px;
  gap: 6px;
  border-radius: 17px;
}

body.is-editorial-confidence-path.is-prototype-mobile .root-tab svg {
  width: 18px;
  height: 18px;
  display: block;
  stroke-width: 1.9;
}

/* Alternative v14: the complete Account family joins the pastel editorial system. */
body.is-editorial-confidence-path:has(#accountView.is-active) .compose-panel {
  background:
    radial-gradient(circle at 6% 4%, rgba(239, 196, 217, 0.58), transparent 28rem),
    radial-gradient(circle at 96% 18%, rgba(191, 224, 215, 0.6), transparent 31rem),
    linear-gradient(155deg, #fff8f2 0%, #f8ebe5 52%, #eef6f2 100%);
}

body.is-editorial-confidence-path:has(#accountView.is-active) #screenHeader,
body.is-editorial-confidence-path:has(#accountView.is-active) > .app-shell .intro-copy,
body.is-editorial-confidence-path #accountView {
  width: min(1120px, 100%);
  margin-right: auto;
  margin-left: auto;
}

body.is-editorial-confidence-path:has(#accountView.is-active) #screenHeader {
  margin-top: 8px;
}

body.is-editorial-confidence-path:has(#accountView.is-active) #screenEyebrow {
  color: #7d3d65;
  font-size: 0.72rem;
  letter-spacing: 0.105em;
}

body.is-editorial-confidence-path:has(#accountView.is-active) #compose-title {
  font-family: ui-serif, "New York", Georgia, serif;
  font-size: clamp(2rem, 4.2vw, 2.8rem);
  font-weight: 760;
  letter-spacing: -0.035em;
  line-height: 0.98;
}

body.is-editorial-confidence-path:has(#accountView.is-active) > .app-shell .intro-copy {
  max-width: 1120px;
  color: #6d625d;
  font-weight: 620;
  line-height: 1.42;
}

body.is-editorial-confidence-path #accountView {
  --account-accent: #8b426a;
  --account-accent-deep: #60304b;
  --account-tint: #f2dce7;
  --account-tint-soft: #fbf2f6;
  --account-secondary: #2f7d72;
}

body.is-editorial-confidence-path #accountView:has(#accountMembership:not([hidden])) {
  --account-accent: #ad6529;
  --account-accent-deep: #70431f;
  --account-tint: #f4dfc8;
  --account-tint-soft: #fff7ed;
  --account-secondary: #8b426a;
}

body.is-editorial-confidence-path #accountView:has(#accountNotifications:not([hidden])) {
  --account-accent: #bd6749;
  --account-accent-deep: #783d2c;
  --account-tint: #f4d9cd;
  --account-tint-soft: #fff4ef;
  --account-secondary: #7d4d82;
}

body.is-editorial-confidence-path #accountView:has(#accountProfile:not([hidden])) {
  --account-accent: #745184;
  --account-accent-deep: #4d365c;
  --account-tint: #e8d9ef;
  --account-tint-soft: #faf3fc;
  --account-secondary: #397b73;
}

body.is-editorial-confidence-path #accountView:has(#accountTravel:not([hidden])) {
  --account-accent: #3d6e98;
  --account-accent-deep: #294c6a;
  --account-tint: #d9e7f2;
  --account-tint-soft: #f2f8fc;
  --account-secondary: #2f7d72;
}

body.is-editorial-confidence-path #accountView:has(#accountPreferences:not([hidden])) {
  --account-accent: #367c70;
  --account-accent-deep: #275a53;
  --account-tint: #d4e9e2;
  --account-tint-soft: #f1f9f6;
  --account-secondary: #8b426a;
}

body.is-editorial-confidence-path #accountView:has(#accountSocialFit:not([hidden])) {
  --account-accent: #4b65a8;
  --account-accent-deep: #344879;
  --account-tint: #dce3f5;
  --account-tint-soft: #f3f5fc;
  --account-secondary: #7f4c82;
}

body.is-editorial-confidence-path #accountView:has(#accountFamiliar:not([hidden])) {
  --account-accent: #2b7f72;
  --account-accent-deep: #205d55;
  --account-tint: #d1e8e1;
  --account-tint-soft: #f0f8f5;
  --account-secondary: #9a4770;
}

body.is-editorial-confidence-path #accountView .account-settings-layout {
  gap: 18px;
}

body.is-editorial-confidence-path #accountView .account-settings-index-head {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 96px;
  grid-template-columns: 62px minmax(0, 1fr);
  gap: 14px;
  border: 1px solid rgba(111, 58, 88, 0.14);
  border-radius: 26px;
  background:
    radial-gradient(circle at 95% 0%, rgba(255, 255, 255, 0.84), transparent 9rem),
    linear-gradient(145deg, #f1d8e4, #dcebe6);
  padding: 16px;
  box-shadow: 0 18px 44px rgba(91, 52, 72, 0.14);
}

body.is-editorial-confidence-path #accountView .account-settings-index-head::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 126px;
  height: 126px;
  right: -34px;
  bottom: -78px;
  border: 20px solid rgba(120, 71, 100, 0.11);
  border-radius: 999px 999px 0 0;
}

body.is-editorial-confidence-path #accountView .account-settings-index-head strong {
  font-size: 1.36rem;
  color: #392832;
}

body.is-editorial-confidence-path #accountView .account-settings-index-head small {
  color: #725f69;
  font-size: 0.76rem;
  letter-spacing: 0.035em;
  text-transform: uppercase;
}

body.is-editorial-confidence-path #accountView .account-settings-monogram {
  width: 62px;
  height: 62px;
  border: 2px solid rgba(255, 255, 255, 0.82);
  border-radius: 21px;
  background: linear-gradient(150deg, #713c5d, #2f756c);
  box-shadow: 0 13px 28px rgba(74, 43, 61, 0.22);
}

body.is-editorial-confidence-path #accountView .account-settings-list {
  display: grid;
  gap: 8px;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  margin-top: 12px;
}

body.is-editorial-confidence-path #accountView .account-settings-list button {
  min-height: 70px;
  grid-template-columns: 40px minmax(0, 1fr) 24px;
  gap: 12px;
  border: 1px solid rgba(100, 72, 83, 0.13);
  border-radius: 18px;
  background: rgba(255, 252, 248, 0.88);
  padding: 10px 12px;
  box-shadow: 0 9px 24px rgba(84, 58, 69, 0.07);
}

body.is-editorial-confidence-path #accountView .account-settings-list button + button {
  border-top: 1px solid rgba(100, 72, 83, 0.13);
}

body.is-editorial-confidence-path #accountView .account-settings-list button:hover,
body.is-editorial-confidence-path #accountView .account-settings-list button:focus-visible {
  border-color: color-mix(in srgb, var(--account-accent) 30%, white);
  background: #fffdfa;
  box-shadow: 0 13px 30px rgba(84, 58, 69, 0.12);
}

body.is-editorial-confidence-path #accountView .account-settings-list button.is-active {
  border-color: color-mix(in srgb, var(--account-accent) 38%, white);
  background:
    linear-gradient(135deg,
      color-mix(in srgb, var(--account-tint) 76%, white),
      color-mix(in srgb, var(--account-tint-soft) 86%, white));
  box-shadow:
    inset 5px 0 0 var(--account-accent),
    0 14px 32px color-mix(in srgb, var(--account-accent) 14%, transparent);
}

body.is-editorial-confidence-path #accountView .account-settings-list button strong {
  font-size: 0.94rem;
}

body.is-editorial-confidence-path #accountView .account-settings-list button small {
  color: #746863;
  font-size: 0.72rem;
}

body.is-editorial-confidence-path #accountView .account-settings-symbol {
  width: 40px;
  height: 40px;
  border: 1px solid rgba(255, 255, 255, 0.72);
  border-radius: 14px;
  box-shadow: 0 7px 15px rgba(83, 61, 72, 0.1);
  font-size: 0.82rem;
}

body.is-editorial-confidence-path #accountView .account-settings-symbol.is-membership {
  background: #f5dfc8;
  color: #8e4f20;
}

body.is-editorial-confidence-path #accountView .account-settings-symbol.is-notifications {
  background: #f5d9ce;
  color: #9b4f38;
}

body.is-editorial-confidence-path #accountView .account-settings-symbol.is-private {
  background: #e9dcef;
  color: #654575;
}

body.is-editorial-confidence-path #accountView .account-settings-symbol.is-travel {
  background: #dce9f4;
  color: #35658e;
}

body.is-editorial-confidence-path #accountView .account-settings-symbol.is-defaults {
  background: #d7eae4;
  color: #276d63;
}

body.is-editorial-confidence-path #accountView .account-settings-symbol.is-social-fit {
  background: #dfe5f6;
  color: #3e5795;
}

body.is-editorial-confidence-path #accountView .account-settings-symbol.is-familiar {
  background: #d1e9e2;
  color: #237266;
}

body.is-editorial-confidence-path #accountView .account-settings-chevron {
  width: 24px;
  height: 24px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.72);
  color: #7f6573;
  font-size: 1.15rem;
}

body.is-editorial-confidence-path #accountView .account-settings-footer {
  margin: 14px 10px 0;
  color: #705f67;
  line-height: 1.45;
}

body.is-editorial-confidence-path #accountView .account-context {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 116px;
  grid-template-columns: minmax(0, 1fr) minmax(220px, auto);
  border: 1px solid color-mix(in srgb, var(--account-accent) 22%, white);
  border-radius: 28px;
  background:
    radial-gradient(circle at 87% 0%, rgba(255, 255, 255, 0.84), transparent 14rem),
    linear-gradient(145deg, var(--account-tint), var(--account-tint-soft));
  padding: 22px 24px;
  margin-bottom: 16px;
  box-shadow: 0 18px 42px color-mix(in srgb, var(--account-accent) 13%, transparent);
}

body.is-editorial-confidence-path #accountView .account-context::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 180px;
  height: 180px;
  right: 18px;
  bottom: -120px;
  border: 24px solid color-mix(in srgb, var(--account-accent) 12%, transparent);
  border-radius: 999px 999px 0 0;
}

body.is-editorial-confidence-path #accountView .account-context .eyebrow,
body.is-editorial-confidence-path #accountView .account-card-head .eyebrow {
  color: var(--account-accent-deep);
  letter-spacing: 0.09em;
}

body.is-editorial-confidence-path #accountView .account-context h2 {
  margin-top: 4px;
  font-family: ui-serif, "New York", Georgia, serif;
  color: #34252e;
  font-size: 1.62rem;
  letter-spacing: -0.025em;
}

body.is-editorial-confidence-path #accountView .account-context > div:first-child > span {
  max-width: 620px;
  color: #665a5f;
  font-size: 0.82rem;
}

body.is-editorial-confidence-path #accountView .account-context-pills span {
  border-color: color-mix(in srgb, var(--account-accent) 24%, white);
  background: rgba(255, 255, 255, 0.76);
  color: var(--account-accent-deep);
  box-shadow: 0 5px 14px color-mix(in srgb, var(--account-accent) 10%, transparent);
}

body.is-editorial-confidence-path #accountView .account-card {
  position: relative;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--account-accent) 18%, #e1d9d3);
  border-radius: 28px;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--account-tint-soft) 78%, white) 0, #fffdfa 150px);
  padding: 22px;
  gap: 16px;
  box-shadow: 0 22px 52px rgba(78, 54, 65, 0.12);
}

body.is-editorial-confidence-path #accountView .account-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 5px;
  background: linear-gradient(90deg, var(--account-accent), var(--account-secondary));
}

body.is-editorial-confidence-path #accountView .account-card-head {
  min-height: 62px;
  align-items: center;
  border-bottom-color: color-mix(in srgb, var(--account-accent) 16%, #ddd6d0);
  padding: 4px 2px 15px;
}

body.is-editorial-confidence-path #accountView .account-card h2 {
  margin-top: 3px;
  font-family: ui-serif, "New York", Georgia, serif;
  color: #34252e;
  font-size: 1.58rem;
  letter-spacing: -0.028em;
}

body.is-editorial-confidence-path #accountView .account-card-head .quiet-pill {
  border-color: color-mix(in srgb, var(--account-accent) 30%, white);
  background: color-mix(in srgb, var(--account-tint) 62%, white);
  color: var(--account-accent-deep);
  box-shadow: 0 6px 16px color-mix(in srgb, var(--account-accent) 10%, transparent);
}

body.is-editorial-confidence-path #accountView .account-card .preference-callout,
body.is-editorial-confidence-path #accountView .account-card .membership-status-panel,
body.is-editorial-confidence-path #accountView .account-card .portal-preview,
body.is-editorial-confidence-path #accountView .account-card .photo-edit-panel,
body.is-editorial-confidence-path #accountView .account-card .member-area-editor,
body.is-editorial-confidence-path #accountView .social-fit-promise,
body.is-editorial-confidence-path #accountView .travel-plan-summary {
  border-color: color-mix(in srgb, var(--account-accent) 18%, white);
  border-radius: 20px;
  background:
    linear-gradient(145deg,
      color-mix(in srgb, var(--account-tint-soft) 82%, white),
      rgba(255, 255, 255, 0.82));
  box-shadow: 0 10px 25px color-mix(in srgb, var(--account-accent) 8%, transparent);
}

body.is-editorial-confidence-path #accountView .account-card .compact-grid {
  overflow: visible;
  gap: 10px;
  border: 0;
  border-radius: 0;
  background: transparent;
}

body.is-editorial-confidence-path #accountView .account-card .compact-grid > label {
  border: 1px solid color-mix(in srgb, var(--account-accent) 14%, #e4ddd7);
  border-radius: 17px;
  background: rgba(255, 255, 255, 0.8);
  padding: 13px;
}

body.is-editorial-confidence-path #accountView input:not([type="checkbox"]):not([type="radio"]),
body.is-editorial-confidence-path #accountView select,
body.is-editorial-confidence-path #accountView textarea {
  border-color: color-mix(in srgb, var(--account-accent) 18%, #d7d0ca);
  border-radius: 13px;
  background: rgba(255, 255, 255, 0.9);
}

body.is-editorial-confidence-path #accountView input:focus,
body.is-editorial-confidence-path #accountView select:focus,
body.is-editorial-confidence-path #accountView textarea:focus {
  border-color: var(--account-accent);
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--account-accent) 14%, transparent);
}

body.is-editorial-confidence-path #accountView .notification-channel-list,
body.is-editorial-confidence-path #accountView .settings-list:has(> .switch-row) {
  overflow: visible;
  display: grid;
  gap: 10px;
  border: 0;
  border-radius: 0;
  background: transparent;
}

body.is-editorial-confidence-path #accountView .notification-channel-list > .switch-row,
body.is-editorial-confidence-path #accountView .settings-list > .switch-row {
  min-height: 70px;
  border: 1px solid color-mix(in srgb, var(--account-accent) 16%, #dfd8d2);
  border-radius: 19px;
  background: rgba(255, 255, 255, 0.82);
  padding: 12px 14px;
  box-shadow: 0 7px 19px color-mix(in srgb, var(--account-accent) 6%, transparent);
}

body.is-editorial-confidence-path #accountView .notification-channel-list > .switch-row + .switch-row,
body.is-editorial-confidence-path #accountView .settings-list > .switch-row + * {
  border-top: 1px solid color-mix(in srgb, var(--account-accent) 16%, #dfd8d2);
}

body.is-editorial-confidence-path #accountView .switch-row input[type="checkbox"]:checked {
  border-color: var(--account-accent);
  background: var(--account-accent);
}

body.is-editorial-confidence-path #accountView .membership-plan-grid {
  gap: 10px;
}

body.is-editorial-confidence-path #accountView .membership-plan {
  min-height: 116px;
  border-color: rgba(150, 99, 55, 0.18);
  border-radius: 20px;
  background: rgba(255, 252, 247, 0.84);
  box-shadow: 0 10px 24px rgba(124, 77, 40, 0.07);
}

body.is-editorial-confidence-path #accountView .membership-plan.is-selected {
  border-color: var(--account-accent);
  background: linear-gradient(145deg, #f5dec5, #fff8ee);
  box-shadow:
    inset 0 4px 0 var(--account-accent),
    0 14px 30px rgba(150, 87, 40, 0.15);
}

body.is-editorial-confidence-path #accountView .billing-summary-grid {
  gap: 9px;
  background: transparent;
}

body.is-editorial-confidence-path #accountView .billing-summary-grid > div {
  border: 1px solid rgba(150, 99, 55, 0.14);
  border-radius: 17px;
  background: rgba(255, 255, 255, 0.82);
  padding: 14px;
}

body.is-editorial-confidence-path #accountView .account-identity {
  border: 1px solid color-mix(in srgb, var(--account-accent) 16%, white);
  border-radius: 20px;
  background: linear-gradient(145deg, var(--account-tint-soft), #fffdfa);
  padding: 13px;
}

body.is-editorial-confidence-path #accountView .account-avatar {
  width: 52px;
  height: 52px;
  border: 2px solid rgba(255, 255, 255, 0.84);
  box-shadow: 0 8px 19px color-mix(in srgb, var(--account-accent) 17%, transparent);
}

/* v121: preserve the approved-photo crop after the canonical avatar background shorthand. */
body.is-editorial-confidence-path #accountView .account-avatar.has-photo {
  color: transparent;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

body.is-editorial-confidence-path #accountView .member-visible-preview,
body.is-editorial-confidence-path #accountView .travel-plan-editor,
body.is-editorial-confidence-path #accountView .trip-repeat-disclosure,
body.is-editorial-confidence-path #accountView .settings-note,
body.is-editorial-confidence-path #accountView .billing-note {
  border-color: color-mix(in srgb, var(--account-accent) 16%, #dfd7d1);
  border-radius: 20px;
  background: color-mix(in srgb, var(--account-tint-soft) 70%, white);
}

body.is-editorial-confidence-path #accountView .social-fit-promise-mark,
body.is-editorial-confidence-path #accountView .travel-summary-mark,
body.is-editorial-confidence-path #accountView .travel-create-mark,
body.is-editorial-confidence-path #accountView .travel-unsupported-mark {
  background: var(--account-tint);
  color: var(--account-accent-deep);
}

body.is-editorial-confidence-path #accountView .familiar-management-list {
  gap: 12px;
}

body.is-editorial-confidence-path #accountView .familiar-management-card {
  grid-template-columns: 68px minmax(0, 1fr);
  gap: 14px;
  border: 1px solid rgba(43, 127, 114, 0.17);
  border-radius: 22px;
  background:
    radial-gradient(circle at 96% 0%, rgba(255, 255, 255, 0.86), transparent 10rem),
    linear-gradient(145deg, #f0f8f5, #fffaf5);
  padding: 15px;
  box-shadow: 0 12px 28px rgba(45, 95, 84, 0.09);
}

body.is-editorial-confidence-path #accountView .familiar-management-card:nth-child(2) {
  border-color: rgba(76, 102, 164, 0.17);
  background: linear-gradient(145deg, #f2f5fc, #fffaf5);
}

body.is-editorial-confidence-path #accountView .familiar-management-card:nth-child(3) {
  border-color: rgba(154, 71, 112, 0.18);
  background: linear-gradient(145deg, #faf0f5, #fff9ef);
}

body.is-editorial-confidence-path #accountView .familiar-management-card > .member-photo-trigger,
body.is-editorial-confidence-path #accountView .familiar-management-card > .member-photo-trigger img {
  width: 68px;
  height: 68px;
  border-radius: 22px;
}

body.is-editorial-confidence-path #accountView .familiar-management-card > .member-photo-trigger {
  box-shadow: 0 10px 24px rgba(67, 45, 56, 0.15);
}

body.is-editorial-confidence-path #accountView .familiar-management-card > div > strong {
  font-family: ui-serif, "New York", Georgia, serif;
  font-size: 1.2rem;
  letter-spacing: -0.018em;
}

body.is-editorial-confidence-path #accountView .familiar-management-card span {
  color: #342d31;
  font-size: 0.86rem;
}

body.is-editorial-confidence-path #accountView .familiar-management-card small {
  color: #716662;
  font-size: 0.78rem;
}

body.is-editorial-confidence-path #accountView .familiar-management-actions {
  gap: 8px;
  margin-top: 11px;
}

body.is-editorial-confidence-path #accountView .familiar-management-actions .mini-action {
  min-height: 44px;
  border-radius: 16px;
  padding: 0 18px;
}

body.is-editorial-confidence-path #accountView .familiar-management-actions .profile-card-ask-action {
  background: var(--account-accent);
  color: white;
}

body.is-editorial-confidence-path #accountView .account-save-bar {
  border-color: color-mix(in srgb, var(--account-accent) 22%, #dcd5cf);
  border-radius: 20px;
  background: color-mix(in srgb, var(--account-tint-soft) 82%, rgba(255, 255, 255, 0.96));
  box-shadow: 0 15px 34px color-mix(in srgb, var(--account-accent) 13%, transparent);
}

body.is-editorial-confidence-path #accountView .account-save-bar .primary-action,
body.is-editorial-confidence-path #accountView .travel-plan-actions .primary-action,
body.is-editorial-confidence-path #accountView .trip-summary-actions .primary-action {
  background: var(--account-accent);
}

body.is-editorial-confidence-path #accountView .account-save-receipt {
  border-color: color-mix(in srgb, var(--account-accent) 22%, white);
  background: color-mix(in srgb, var(--account-tint) 54%, white);
  color: var(--account-accent-deep);
}

body.is-editorial-confidence-path #accountView .account-save-receipt > span {
  background: var(--account-accent);
}

@media (min-width: 901px) {
  body.is-editorial-confidence-path.is-prototype-desktop #accountView .account-settings-layout {
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 24px;
  }

  body.is-editorial-confidence-path.is-prototype-desktop #accountView .account-settings-index {
    top: 12px;
  }

  body.is-editorial-confidence-path.is-prototype-desktop #accountView .account-settings-list button {
    min-height: 72px;
  }

  body.is-editorial-confidence-path.is-prototype-desktop #accountView .account-settings-chevron {
    display: grid;
  }

  body.is-editorial-confidence-path.is-prototype-desktop #accountView .membership-plan-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  body.is-editorial-confidence-path #accountView .account-settings-index-head {
    min-height: 92px;
  }

  body.is-editorial-confidence-path #accountView .account-card {
    border-radius: 24px;
    padding: 17px;
  }

  body.is-editorial-confidence-path #accountView .account-card h2 {
    font-size: 1.42rem;
  }

  body.is-editorial-confidence-path #accountView .account-card-head {
    min-height: 58px;
  }

  body.is-editorial-confidence-path #accountView .familiar-management-card {
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 12px;
    padding: 13px;
  }

  body.is-editorial-confidence-path #accountView .familiar-management-card > .member-photo-trigger,
  body.is-editorial-confidence-path #accountView .familiar-management-card > .member-photo-trigger img {
    width: 58px;
    height: 58px;
    border-radius: 19px;
  }
}

@media (max-width: 390px) {
  body.is-editorial-confidence-path #accountView .account-settings-index-head {
    grid-template-columns: 54px minmax(0, 1fr);
    border-radius: 22px;
    padding: 13px;
  }

  body.is-editorial-confidence-path #accountView .account-settings-monogram {
    width: 54px;
    height: 54px;
    border-radius: 18px;
  }

  body.is-editorial-confidence-path #accountView .account-settings-list button {
    min-height: 66px;
    grid-template-columns: 38px minmax(0, 1fr) 22px;
    gap: 10px;
    border-radius: 17px;
    padding: 9px 10px;
  }

  body.is-editorial-confidence-path #accountView .account-settings-symbol {
    width: 38px;
    height: 38px;
    border-radius: 13px;
  }

  body.is-editorial-confidence-path #accountView .account-card-head {
    align-items: flex-start;
  }

  body.is-editorial-confidence-path #accountView .account-card-head .quiet-pill {
    max-width: 132px;
    white-space: normal;
    text-align: center;
  }

  body.is-editorial-confidence-path #accountView .familiar-management-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.is-editorial-confidence-path #accountView .familiar-management-actions .mini-action {
    width: 100%;
    padding: 0 10px;
  }
}

@media (max-width: 340px) {
  body.is-editorial-confidence-path #accountView .familiar-management-actions {
    gap: 5px;
  }

  body.is-editorial-confidence-path #accountView .familiar-management-actions .mini-action {
    padding: 0 4px;
    font-size: 0.72rem;
    white-space: nowrap;
  }
}

/* v118 operations overrides must follow the legacy journey layout. */
body.is-prototype-desktop #memberOperationsView.is-active,
#memberOperationsView.is-active {
  width: 100%;
  max-width: 1180px;
  margin-right: auto;
  margin-left: auto;
  display: block;
}

#memberOperationsView > .operations-stage {
  width: 100%;
  min-width: 0;
}

body.is-prototype-desktop #memberOperationsView .member-operations-queue-card {
  grid-row: auto;
}

body.is-prototype-desktop #memberOperationsView .member-operations-review-card {
  position: static;
  top: auto;
}

body:has(#memberOperationsView.is-active) .app-nav,
body:has(#memberOperationsView.is-active) #screenHeader,
body:has(#memberOperationsView.is-active) .notification-center {
  display: none;
}

.operations-nav button {
  position: relative;
}

#memberOperationsView .operations-screen[hidden] {
  display: none !important;
}

.operations-people-workspace {
  grid-template-rows: minmax(0, 1fr);
}

.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
}

@media (min-width: 901px) {
  body.is-prototype-desktop .operations-people-workspace {
    height: min(700px, calc(100vh - 440px));
    min-height: 560px;
  }

  body.is-prototype-desktop #operationsTodayScreen .member-operations-queue-card {
    grid-column: 1;
    grid-row: 2 / span 3;
  }

  body.is-prototype-desktop #operationsTodayScreen .member-operations-task-detail,
  body.is-prototype-desktop #operationsTodayScreen .application-operation {
    grid-column: 2;
  }

  body.is-prototype-desktop #operationsTodayScreen .member-operations-task-detail {
    grid-row: 2;
  }
}

@media (max-width: 700px) {
  .operations-people-workspace.is-record-open {
    height: min(700px, calc(100dvh - 120px));
    min-height: 560px;
    overflow: hidden;
  }

  .operations-people-workspace.is-record-open .operations-person-record {
    height: 100%;
    min-height: 0;
    overflow-y: auto;
  }
}

body.is-prototype-mobile .operations-people-workspace.is-record-open {
  height: min(700px, calc(100dvh - 120px));
  min-height: 560px;
  overflow: hidden;
}

body.is-prototype-mobile .operations-people-workspace.is-record-open .operations-person-record {
  height: 100%;
  min-height: 0;
  overflow-y: auto;
}

/* Prototype v120: Create Invitation joins the canonical Editorial Confidence Path. */
body.is-editorial-confidence-path.is-create-flow {
  --create-accent: #985273;
  --create-accent-deep: #592a46;
  --create-accent-soft: #f4dfe9;
  --create-lavender: #e7e1f4;
  --create-lavender-deep: #49376c;
  --create-sage: #dcebe4;
  --create-sage-deep: #2d6f63;
  --create-paper: #fffaf5;
  --create-line: rgba(89, 42, 70, 0.15);
}

body.is-editorial-confidence-path.is-create-flow .compose-panel {
  background:
    radial-gradient(circle at 5% 4%, rgba(239, 196, 217, 0.62), transparent 29rem),
    radial-gradient(circle at 97% 16%, rgba(191, 224, 215, 0.64), transparent 32rem),
    linear-gradient(155deg, #fff8f2 0%, #f8ebe5 50%, #eef6f2 100%);
}

body.is-editorial-confidence-path.is-create-flow .app-nav {
  border: 1px solid rgba(255, 255, 255, 0.84);
  border-radius: 22px;
  background:
    radial-gradient(circle at 88% -35%, rgba(255, 255, 255, 0.74), transparent 15rem),
    linear-gradient(118deg, rgba(232, 202, 216, 0.9), rgba(216, 209, 237, 0.88) 56%, rgba(207, 230, 220, 0.9));
  padding: 8px 10px;
  box-shadow: 0 15px 38px rgba(89, 42, 70, 0.15);
  backdrop-filter: blur(22px) saturate(135%);
  -webkit-backdrop-filter: blur(22px) saturate(135%);
}

body.is-editorial-confidence-path.is-create-flow .app-nav .icon-button,
body.is-editorial-confidence-path.is-create-flow .app-nav .avatar-button {
  border-color: rgba(255, 255, 255, 0.68);
  background: rgba(255, 251, 247, 0.84);
  color: var(--create-accent-deep);
  box-shadow: 0 7px 18px rgba(89, 42, 70, 0.11);
}

body.is-editorial-confidence-path.is-create-flow .app-nav .nav-status {
  border-color: var(--create-line);
  background: rgba(255, 251, 247, 0.66);
  color: var(--create-accent-deep);
}

body.is-editorial-confidence-path.is-create-flow #screenHeader,
body.is-editorial-confidence-path.is-create-flow .intro-copy,
body.is-editorial-confidence-path.is-create-flow .view-tabs,
body.is-editorial-confidence-path.is-create-flow #planView,
body.is-editorial-confidence-path.is-create-flow #whoView,
body.is-editorial-confidence-path.is-create-flow #reviewView {
  width: min(960px, 100%);
  margin-right: auto;
  margin-left: auto;
}

body.is-editorial-confidence-path.is-create-flow #screenHeader {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 92px;
  margin-top: 10px;
  margin-bottom: 0;
  border: 1px solid var(--create-line);
  border-bottom: 0;
  border-radius: 28px 28px 0 0;
  background:
    radial-gradient(circle at 91% 5%, rgba(255, 255, 255, 0.82), transparent 13rem),
    linear-gradient(135deg, #f3dce7 0%, #e8e1f3 52%, #dcebe4 100%);
  padding: 21px 24px 7px;
  box-shadow: 0 18px 42px rgba(89, 42, 70, 0.11);
}

body.is-editorial-confidence-path.is-create-flow #screenHeader::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 170px;
  height: 150px;
  right: 24px;
  bottom: -112px;
  border: 22px solid rgba(152, 82, 115, 0.11);
  border-radius: 999px 999px 0 0;
  pointer-events: none;
}

body.is-editorial-confidence-path.is-create-flow #screenEyebrow {
  color: #7d3d65;
  font-size: 0.7rem;
  letter-spacing: 0.105em;
}

body.is-editorial-confidence-path.is-create-flow #compose-title {
  margin-top: 4px;
  font-family: ui-serif, "New York", Georgia, serif;
  color: #34252e;
  font-size: clamp(1.85rem, 4vw, 2.45rem);
  font-weight: 680;
  letter-spacing: -0.035em;
  line-height: 1;
}

body.is-editorial-confidence-path.is-create-flow .intro-copy {
  max-width: 960px;
  margin-top: 0;
  margin-bottom: 14px;
  border: 1px solid var(--create-line);
  border-top: 0;
  border-radius: 0 0 28px 28px;
  background: linear-gradient(90deg, #f6e7eb, #f0ecee 55%, #e8f1ed);
  color: #665a5f;
  padding: 0 24px 20px;
  box-shadow: 0 18px 42px rgba(89, 42, 70, 0.11);
}

body.is-editorial-confidence-path.is-create-flow .view-tabs {
  position: sticky;
  top: 72px;
  z-index: 12;
  gap: 8px;
  margin-top: 0;
  margin-bottom: 16px;
  border: 1px solid rgba(255, 255, 255, 0.82);
  border-radius: 22px;
  background: rgba(255, 250, 245, 0.78);
  padding: 7px;
  box-shadow: 0 12px 34px rgba(89, 42, 70, 0.1);
  backdrop-filter: blur(20px) saturate(130%);
  -webkit-backdrop-filter: blur(20px) saturate(130%);
}

body.is-editorial-confidence-path.is-create-flow .view-tab {
  min-height: 58px;
  border: 1px solid transparent;
  border-radius: 17px;
  padding: 7px 10px;
}

body.is-editorial-confidence-path.is-create-flow .view-tab.is-active {
  border-color: rgba(152, 82, 115, 0.19);
  background: linear-gradient(135deg, #f2dbe6, #ebe5f4);
  color: var(--create-accent-deep);
  box-shadow:
    inset 0 -3px 0 var(--create-accent),
    0 8px 20px rgba(89, 42, 70, 0.12);
}

body.is-editorial-confidence-path.is-create-flow .view-tab.is-complete {
  border-color: rgba(45, 111, 99, 0.15);
  background: rgba(220, 235, 228, 0.7);
  color: var(--create-sage-deep);
}

body.is-editorial-confidence-path.is-create-flow .view-step-number {
  border-color: rgba(89, 42, 70, 0.17);
  background: rgba(255, 253, 249, 0.86);
}

body.is-editorial-confidence-path.is-create-flow .view-tab.is-active .view-step-number {
  border-color: var(--create-accent);
  background: var(--create-accent);
  color: white;
}

body.is-editorial-confidence-path.is-create-flow .view-tab.is-complete .view-step-number {
  border-color: var(--create-sage-deep);
  background: var(--create-sage-deep);
  color: white;
}

body.is-editorial-confidence-path.is-create-flow #planView .plan-form {
  position: relative;
  overflow: hidden;
  gap: 0;
  border: 1px solid var(--create-line);
  border-radius: 28px;
  background:
    radial-gradient(circle at 98% 0%, rgba(244, 223, 233, 0.5), transparent 17rem),
    var(--create-paper);
  padding: 22px;
  box-shadow: 0 22px 52px rgba(89, 42, 70, 0.12);
}

body.is-editorial-confidence-path.is-create-flow #planView .plan-form::before,
body.is-editorial-confidence-path.is-create-flow #whoView .profile-section::before,
body.is-editorial-confidence-path.is-create-flow #reviewView .review-panel::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 5px;
  background: linear-gradient(90deg, var(--create-accent), #8571ad 52%, #5e9b8b);
}

body.is-editorial-confidence-path.is-create-flow #planView .plan-form > fieldset,
body.is-editorial-confidence-path.is-create-flow #planView .plan-form > label,
body.is-editorial-confidence-path.is-create-flow #planView .plan-form > details {
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 19px 2px;
  box-shadow: none;
}

body.is-editorial-confidence-path.is-create-flow #planView .plan-form > fieldset {
  padding-top: 8px;
}

body.is-editorial-confidence-path.is-create-flow #planView .plan-form > .field-grid,
body.is-editorial-confidence-path.is-create-flow #planView .plan-form > details,
body.is-editorial-confidence-path.is-create-flow #planView .plan-form > label {
  border-top: 1px solid rgba(89, 42, 70, 0.1);
}

body.is-editorial-confidence-path.is-create-flow #planView .plan-form > .field-grid {
  padding: 19px 2px;
}

body.is-editorial-confidence-path.is-create-flow #planView legend,
body.is-editorial-confidence-path.is-create-flow #planView .field-label-row,
body.is-editorial-confidence-path.is-create-flow #whoView legend,
body.is-editorial-confidence-path.is-create-flow #reviewView .panel-head h2 {
  color: #3a2c33;
}

body.is-editorial-confidence-path.is-create-flow .required-mark {
  border: 1px solid rgba(152, 82, 115, 0.14);
  background: #f5e4eb;
  color: #753c5b;
}

body.is-editorial-confidence-path.is-create-flow #planView .activity-picker {
  min-height: 82px;
  border-color: rgba(152, 82, 115, 0.19);
  border-radius: 20px;
  background: linear-gradient(135deg, #f5e5ec, rgba(255, 255, 255, 0.9) 72%);
  box-shadow: 0 10px 24px rgba(89, 42, 70, 0.08);
}

body.is-editorial-confidence-path.is-create-flow #planView .selected-tag {
  background: var(--create-accent-deep);
  box-shadow: 0 8px 18px rgba(89, 42, 70, 0.19);
}

body.is-editorial-confidence-path.is-create-flow #planView .requirements-panel {
  margin: 4px 0 0;
  border-color: rgba(45, 111, 99, 0.16);
  border-radius: 18px;
  background: linear-gradient(135deg, #e8f3ee, #f8f5ef);
  box-shadow: none;
}

body.is-editorial-confidence-path.is-create-flow #planView .date-picker-panel {
  border-color: rgba(105, 85, 140, 0.2);
  border-radius: 20px;
  background: linear-gradient(145deg, #f0ecf8, #fbf8f2);
  box-shadow: 0 10px 24px rgba(73, 55, 108, 0.07);
}

body.is-editorial-confidence-path.is-create-flow #planView .date-quick,
body.is-editorial-confidence-path.is-create-flow #planView .date-choice {
  border-color: rgba(73, 55, 108, 0.15);
  background: rgba(255, 253, 249, 0.9);
}

body.is-editorial-confidence-path.is-create-flow #planView .date-quick.is-selected,
body.is-editorial-confidence-path.is-create-flow #planView .date-choice.is-selected {
  border-color: var(--create-lavender-deep);
  background: var(--create-lavender-deep);
  box-shadow: 0 9px 20px rgba(73, 55, 108, 0.17);
}

body.is-editorial-confidence-path.is-create-flow #planView .date-grid-toggle {
  border-color: rgba(73, 55, 108, 0.12);
  background: rgba(231, 225, 244, 0.68);
  color: var(--create-lavender-deep);
}

body.is-editorial-confidence-path.is-create-flow #planView input,
body.is-editorial-confidence-path.is-create-flow #planView select,
body.is-editorial-confidence-path.is-create-flow #planView textarea,
body.is-editorial-confidence-path.is-create-flow #whoView input:not([type="checkbox"]):not([type="radio"]),
body.is-editorial-confidence-path.is-create-flow #whoView select,
body.is-editorial-confidence-path.is-create-flow #whoView textarea {
  border-color: rgba(89, 42, 70, 0.16);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.9);
}

body.is-editorial-confidence-path.is-create-flow #planView input:focus,
body.is-editorial-confidence-path.is-create-flow #planView select:focus,
body.is-editorial-confidence-path.is-create-flow #planView textarea:focus,
body.is-editorial-confidence-path.is-create-flow #whoView input:focus,
body.is-editorial-confidence-path.is-create-flow #whoView select:focus,
body.is-editorial-confidence-path.is-create-flow #whoView textarea:focus {
  border-color: var(--create-accent);
  box-shadow: 0 0 0 4px rgba(152, 82, 115, 0.13);
}

body.is-editorial-confidence-path.is-create-flow #planView .invite-town-picker {
  border-color: rgba(45, 111, 99, 0.18);
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.86);
  box-shadow: 0 10px 24px rgba(45, 111, 99, 0.08);
}

body.is-editorial-confidence-path.is-create-flow #planView .invite-town-mark {
  background: var(--create-sage);
  color: var(--create-sage-deep);
}

body.is-editorial-confidence-path.is-create-flow #planView .invite-town-summary-action,
body.is-editorial-confidence-path.is-create-flow #planView .plan-details-disclosure summary em {
  color: var(--create-sage-deep);
}

body.is-editorial-confidence-path.is-create-flow #planView .plan-details-disclosure > summary {
  min-height: 68px;
  border: 1px solid rgba(45, 111, 99, 0.15);
  border-radius: 18px;
  background: linear-gradient(135deg, #edf5f1, #fbf7f1);
  padding: 10px 13px;
}

/* Prototype v126: keep Format and Style controls top-aligned when only Format has helper copy. */
body.is-editorial-confidence-path.is-create-flow #planView .plan-details-fields > .field-grid {
  align-items: start;
}

body.is-editorial-confidence-path.is-create-flow #planView .fill-example-action {
  border-color: rgba(152, 82, 115, 0.16);
  background: var(--create-accent-soft);
  color: var(--create-accent-deep);
}

body.is-editorial-confidence-path.is-create-flow #whoView,
body.is-editorial-confidence-path.is-create-flow #reviewView {
  gap: 16px;
}

body.is-editorial-confidence-path.is-create-flow #whoView > .profile-section,
body.is-editorial-confidence-path.is-create-flow #whoView > .people-fieldset,
body.is-editorial-confidence-path.is-create-flow #whoView > .settings-fieldset,
body.is-editorial-confidence-path.is-create-flow #whoView > .privacy-strip,
body.is-editorial-confidence-path.is-create-flow #reviewView .review-panel {
  position: relative;
  overflow: hidden;
  border-color: var(--create-line);
  border-radius: 26px;
  background: rgba(255, 250, 245, 0.94);
  box-shadow: 0 18px 44px rgba(89, 42, 70, 0.1);
}

body.is-editorial-confidence-path.is-create-flow #whoView > .people-fieldset:nth-of-type(2) {
  background: linear-gradient(145deg, #f4e6ed, #fffaf5);
}

body.is-editorial-confidence-path.is-create-flow #whoView > .settings-fieldset {
  background: linear-gradient(145deg, #f0ecf8, #fffaf5);
}

body.is-editorial-confidence-path.is-create-flow #whoView > .privacy-strip {
  background: linear-gradient(145deg, #e6f2ed, #fffaf5);
}

body.is-editorial-confidence-path.is-create-flow #whoView .profile-section .section-head h2,
body.is-editorial-confidence-path.is-create-flow #reviewView .review-panel h2 {
  font-family: ui-serif, "New York", Georgia, serif;
  letter-spacing: -0.025em;
}

body.is-editorial-confidence-path.is-create-flow #reviewView .review-panel {
  padding: 22px;
}

body.is-editorial-confidence-path.is-create-flow #reviewView .review-summary-card {
  border: 1px solid rgba(255, 255, 255, 0.18);
  background:
    radial-gradient(circle at 92% 0%, rgba(255, 255, 255, 0.15), transparent 13rem),
    linear-gradient(138deg, var(--create-accent-deep), var(--create-lavender-deep));
  color: white;
  box-shadow: 0 16px 34px rgba(89, 42, 70, 0.18);
}

body.is-editorial-confidence-path.is-create-flow #reviewView .summary-kicker {
  color: rgba(255, 255, 255, 0.72);
}

body.is-editorial-confidence-path.is-create-flow #reviewView .summary-note {
  color: rgba(255, 255, 255, 0.84);
}

body.is-editorial-confidence-path.is-create-flow #reviewView .summary-tags span {
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.13);
  color: white;
}

body.is-editorial-confidence-path.is-create-flow .bottom-action {
  width: min(960px, calc(100% - 16px));
  margin: 0 auto 8px;
  border: 1px solid rgba(255, 255, 255, 0.84);
  border-radius: 22px;
  background: rgba(255, 248, 242, 0.86);
  padding: 9px;
  box-shadow: 0 16px 38px rgba(89, 42, 70, 0.16);
  backdrop-filter: blur(22px) saturate(135%);
  -webkit-backdrop-filter: blur(22px) saturate(135%);
}

body.is-editorial-confidence-path.is-create-flow .bottom-action .primary-action {
  min-height: 52px;
  border-radius: 16px;
  background: linear-gradient(135deg, var(--create-accent), var(--create-accent-deep));
  box-shadow: 0 10px 24px rgba(89, 42, 70, 0.2);
}

@media (max-width: 900px) {
  body.is-editorial-confidence-path.is-create-flow #screenHeader {
    min-height: 82px;
    border-radius: 24px 24px 0 0;
    padding: 17px 16px 6px;
  }

  body.is-editorial-confidence-path.is-create-flow .intro-copy {
    border-radius: 0 0 24px 24px;
    padding: 0 16px 17px;
  }

  body.is-editorial-confidence-path.is-create-flow .view-tabs {
    top: 0;
    gap: 4px;
    border-radius: 20px;
    padding: 5px;
  }

  body.is-editorial-confidence-path.is-create-flow .view-tab {
    min-height: 54px;
    grid-template-columns: 27px minmax(0, 1fr);
    gap: 5px;
    border-radius: 15px;
    padding: 5px 6px;
  }

  body.is-editorial-confidence-path.is-create-flow #planView .plan-form {
    border-radius: 24px;
    padding: 17px;
  }

  body.is-editorial-confidence-path.is-create-flow #planView .activity-picker {
    grid-template-columns: 1fr;
    gap: 7px;
  }

  body.is-editorial-confidence-path.is-create-flow #planView .selected-tag {
    width: 100%;
  }

  body.is-editorial-confidence-path.is-create-flow #whoView > .profile-section,
  body.is-editorial-confidence-path.is-create-flow #whoView > .people-fieldset,
  body.is-editorial-confidence-path.is-create-flow #whoView > .settings-fieldset,
  body.is-editorial-confidence-path.is-create-flow #whoView > .privacy-strip,
  body.is-editorial-confidence-path.is-create-flow #reviewView .review-panel {
    border-radius: 23px;
  }

  body.is-editorial-confidence-path.is-create-flow #whoView .profile-title-row {
    grid-template-columns: minmax(0, 1fr);
  }

  body.is-editorial-confidence-path.is-create-flow #whoView .profile-card-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-content: stretch;
  }

  body.is-editorial-confidence-path.is-create-flow #whoView .profile-card-actions .mini-action {
    width: 100%;
  }

  body.is-editorial-confidence-path.is-create-flow .bottom-action {
    width: calc(100% - 12px);
    margin-bottom: max(6px, env(safe-area-inset-bottom));
    border-radius: 20px;
    padding: 7px;
  }
}

@media (max-width: 390px) {
  body.is-editorial-confidence-path.is-create-flow .view-step-copy small {
    display: none;
  }

  body.is-editorial-confidence-path.is-create-flow .view-tab {
    grid-template-columns: 26px minmax(0, 1fr);
  }

  body.is-editorial-confidence-path.is-create-flow #planView .plan-form {
    padding: 15px;
  }
}

/* Canonical visual coverage for the non-member research journeys.
   These surfaces share the editorial system without changing their workflow. */
body.is-editorial-confidence-path #applicantView {
  --journey-accent: #925b79;
  --journey-accent-deep: #633c54;
  --journey-accent-soft: #f3e5ed;
}

body.is-editorial-confidence-path #setupView {
  --journey-accent: #567c6e;
  --journey-accent-deep: #36594e;
  --journey-accent-soft: #e5f0eb;
}

body.is-editorial-confidence-path #notificationJourneyView {
  --journey-accent: #75668f;
  --journey-accent-deep: #51456b;
  --journey-accent-soft: #ece8f5;
}

body.is-editorial-confidence-path #accessPolicyView {
  --journey-accent: #48786f;
  --journey-accent-deep: #31574f;
  --journey-accent-soft: #e2efeb;
}

body.is-editorial-confidence-path #pilotWalkthroughView {
  --journey-accent: #9a6676;
  --journey-accent-deep: #684250;
  --journey-accent-soft: #f3e7ea;
}

body.is-editorial-confidence-path #lifecycleView {
  --journey-accent: #687696;
  --journey-accent-deep: #475473;
  --journey-accent-soft: #e9edf5;
}

body.is-editorial-confidence-path :is(
  #applicantView,
  #setupView,
  #notificationJourneyView,
  #accessPolicyView,
  #pilotWalkthroughView,
  #lifecycleView
) .journey-card {
  position: relative;
  overflow: hidden;
  border-color: color-mix(in srgb, var(--journey-accent) 24%, transparent);
  border-radius: 26px;
  background:
    radial-gradient(circle at 94% 0%, color-mix(in srgb, var(--journey-accent-soft) 70%, transparent), transparent 17rem),
    linear-gradient(145deg, rgba(255, 252, 247, 0.98), rgba(255, 249, 244, 0.92));
  box-shadow: 0 18px 44px color-mix(in srgb, var(--journey-accent-deep) 11%, transparent);
}

body.is-editorial-confidence-path :is(
  #applicantView,
  #setupView,
  #notificationJourneyView,
  #accessPolicyView,
  #pilotWalkthroughView,
  #lifecycleView
) .journey-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 4px;
  background: linear-gradient(90deg, var(--journey-accent), color-mix(in srgb, var(--journey-accent) 22%, transparent));
}

body.is-editorial-confidence-path :is(
  #applicantView,
  #setupView,
  #notificationJourneyView,
  #accessPolicyView,
  #pilotWalkthroughView,
  #lifecycleView
) .journey-card h2 {
  font-family: ui-serif, "New York", Georgia, serif;
  letter-spacing: -0.025em;
}

body.is-editorial-confidence-path :is(
  #applicantView,
  #setupView,
  #notificationJourneyView,
  #accessPolicyView,
  #pilotWalkthroughView,
  #lifecycleView
) .journey-card .eyebrow {
  color: var(--journey-accent-deep);
}

body.is-editorial-confidence-path :is(
  #applicantView,
  #setupView,
  #notificationJourneyView,
  #accessPolicyView,
  #pilotWalkthroughView,
  #lifecycleView
) .journey-progress {
  gap: 6px;
  border: 1px solid rgba(255, 255, 255, 0.78);
  border-radius: 20px;
  background: rgba(255, 250, 245, 0.7);
  padding: 6px;
  box-shadow: 0 12px 30px color-mix(in srgb, var(--journey-accent-deep) 9%, transparent);
  backdrop-filter: blur(16px) saturate(125%);
  -webkit-backdrop-filter: blur(16px) saturate(125%);
}

body.is-editorial-confidence-path :is(
  #applicantView,
  #setupView,
  #notificationJourneyView,
  #accessPolicyView,
  #pilotWalkthroughView,
  #lifecycleView
) .journey-step {
  border-radius: 14px;
  background: rgba(247, 241, 235, 0.86);
}

body.is-editorial-confidence-path :is(
  #applicantView,
  #setupView,
  #notificationJourneyView,
  #accessPolicyView,
  #pilotWalkthroughView,
  #lifecycleView
) .journey-step.is-active {
  background: var(--journey-accent-soft);
  color: var(--journey-accent-deep);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--journey-accent) 24%, transparent);
}

body.is-editorial-confidence-path :is(
  #applicantView,
  #setupView,
  #notificationJourneyView,
  #accessPolicyView,
  #pilotWalkthroughView,
  #lifecycleView
) .journey-step.is-complete {
  background: #e4efe9;
  color: #365d51;
}

@media (max-width: 900px) {
  body.is-editorial-confidence-path :is(
    #applicantView,
    #setupView,
    #notificationJourneyView,
    #accessPolicyView,
    #pilotWalkthroughView,
    #lifecycleView
  ) .journey-card {
    border-radius: 23px;
  }

  body.is-editorial-confidence-path :is(
    #applicantView,
    #setupView,
    #notificationJourneyView,
    #accessPolicyView,
    #pilotWalkthroughView,
    #lifecycleView
  ) .journey-progress {
    border-radius: 18px;
  }
}

/* Prototype v123: simplify Your Social Mix without changing the instrument. */
body.is-editorial-confidence-path #accountView .social-fit-card {
  gap: 12px;
}

body.is-editorial-confidence-path #accountView .social-fit-card.is-editing > .social-fit-promise,
body.is-editorial-confidence-path #accountView .social-fit-card.is-complete > .social-fit-promise {
  display: none;
}

body.is-editorial-confidence-path #accountView .social-fit-promise {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
  padding: 14px 15px;
}

body.is-editorial-confidence-path #accountView .social-fit-promise strong {
  font-family: ui-serif, "New York", Georgia, serif;
  font-size: 1.02rem;
  letter-spacing: -0.015em;
}

body.is-editorial-confidence-path #accountView .social-fit-promise div > span {
  font-size: 0.76rem;
}

.social-fit-privacy-note,
.social-fit-saved-rounds,
.social-mix-more {
  border-top: 1px solid var(--settings-divider);
}

.social-fit-privacy-note > summary,
.social-fit-saved-rounds > summary,
.social-mix-more > summary {
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  color: #344879;
  font-size: 0.75rem;
  font-weight: 820;
  list-style: none;
  cursor: pointer;
}

.social-fit-privacy-note > summary::-webkit-details-marker,
.social-fit-saved-rounds > summary::-webkit-details-marker,
.social-mix-more > summary::-webkit-details-marker {
  display: none;
}

.social-fit-privacy-note > summary::after,
.social-fit-saved-rounds > summary::after,
.social-mix-more > summary::after {
  content: "⌄";
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(75, 101, 168, 0.09);
  font-size: 0.9rem;
  transition: transform 160ms ease;
}

.social-fit-privacy-note[open] > summary::after,
.social-fit-saved-rounds[open] > summary::after,
.social-mix-more[open] > summary::after {
  transform: rotate(180deg);
}

.social-fit-privacy-note > p {
  margin: 0 0 4px;
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 650;
  line-height: 1.45;
}

.social-fit-ready-copy {
  margin: -2px 0 0;
  color: var(--muted);
  font-size: 0.8rem;
  font-weight: 660;
  line-height: 1.45;
}

.social-fit-saved-rounds {
  border-bottom: 1px solid var(--settings-divider);
}

.social-fit-saved-rounds .social-fit-summary-list {
  margin-bottom: 10px;
}

body.is-editorial-confidence-path #accountView .social-fit-overview-head {
  min-height: 46px;
}

body.is-editorial-confidence-path #accountView .social-fit-overview-head strong {
  font-size: 1.06rem;
}

body.is-editorial-confidence-path #accountView .social-fit-editor {
  gap: 11px;
}

body.is-editorial-confidence-path #accountView .social-fit-question-head {
  padding-top: 1px;
}

body.is-editorial-confidence-path #accountView .social-fit-question-head h3 {
  font-size: clamp(1.3rem, 4.8vw, 1.64rem);
}

body.is-editorial-confidence-path #accountView .social-fit-fields.is-personality-round {
  overflow: hidden;
  gap: 0;
  border: 1px solid color-mix(in srgb, var(--account-accent) 16%, #ddd7d1);
  border-radius: 18px;
  background: rgba(255, 253, 250, 0.86);
}

body.is-editorial-confidence-path #accountView .social-fit-field.social-mix-statement,
body.is-editorial-confidence-path #accountView .social-fit-field.social-mix-statement + .social-fit-field.social-mix-statement {
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 11px 12px 12px;
}

body.is-editorial-confidence-path #accountView .social-fit-field.social-mix-statement + .social-fit-field.social-mix-statement {
  border-top: 1px solid var(--settings-divider);
}

body.is-editorial-confidence-path #accountView .social-fit-field.social-mix-statement legend {
  grid-template-columns: 22px minmax(0, 1fr);
  gap: 7px;
  font-size: 0.82rem;
}

body.is-editorial-confidence-path #accountView .social-mix-scale {
  margin-top: 8px;
}

body.is-editorial-confidence-path #accountView .social-mix-scale-choice {
  min-height: 46px;
  border-radius: 10px;
  background: rgba(250, 248, 245, 0.9);
}

body.is-editorial-confidence-path #accountView .social-fit-actions {
  position: static;
  border: 0;
  background: transparent;
  padding: 0;
}

body.is-editorial-confidence-path #accountView .social-fit-result-status {
  min-height: 44px;
  justify-content: flex-start;
  gap: 9px;
  border: 0;
  border-radius: 14px;
  background: #edf6f2;
  padding: 8px 10px;
}

body.is-editorial-confidence-path #accountView .social-fit-result-status strong {
  margin: 0;
  font-family: inherit;
  color: #205d55;
  font-size: 0.78rem;
  letter-spacing: 0;
}

body.is-editorial-confidence-path #accountView .social-fit-result-status div > span {
  margin-top: 2px;
  color: #55736e;
  font-size: 0.67rem;
  font-weight: 680;
  letter-spacing: 0;
  text-transform: none;
}

body.is-editorial-confidence-path #accountView .social-fit-result-lock {
  width: 30px;
  height: 30px;
  flex-basis: 30px;
  background: #d8eee7;
}

body.is-editorial-confidence-path #accountView .social-mix-result {
  gap: 12px;
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 0;
}

body.is-editorial-confidence-path #accountView .social-mix-result-hero {
  border: 1px solid rgba(75, 101, 168, 0.15);
  border-radius: 18px;
  background: linear-gradient(145deg, #edf1fb, #fbf8f5);
  padding: 13px;
}

body.is-editorial-confidence-path #accountView .social-mix-story {
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 2px 1px 0;
}

body.is-editorial-confidence-path #accountView .social-mix-trait-list {
  overflow: hidden;
  gap: 0;
  border: 1px solid rgba(56, 46, 39, 0.1);
  border-radius: 16px;
  background: rgba(255, 253, 250, 0.86);
}

body.is-editorial-confidence-path #accountView .social-mix-trait-card {
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 10px 11px;
}

body.is-editorial-confidence-path #accountView .social-mix-trait-card + .social-mix-trait-card {
  border-top: 1px solid rgba(56, 46, 39, 0.09);
}

.social-mix-more {
  border-bottom: 1px solid var(--settings-divider);
}

.social-mix-more > summary > span {
  display: grid;
  gap: 2px;
}

.social-mix-more > summary strong,
.social-mix-more > summary small {
  display: block;
}

.social-mix-more > summary strong {
  color: #344879;
  font-size: 0.78rem;
}

.social-mix-more > summary small {
  color: var(--muted);
  font-size: 0.65rem;
  font-weight: 650;
}

.social-mix-more .social-mix-reflections {
  margin-top: 2px;
  padding: 12px 0 10px;
}

.social-mix-more .social-mix-result-note {
  margin-bottom: 10px;
}

body.is-editorial-confidence-path #accountView .social-fit-complete-note {
  margin-top: 0;
}

@media (min-width: 901px) {
  body.is-editorial-confidence-path.is-prototype-desktop #accountView .social-mix-trait-list {
    grid-template-columns: 1fr;
  }

  body.is-editorial-confidence-path.is-prototype-desktop #accountView .social-mix-trait-card:last-child:nth-child(odd) {
    grid-column: auto;
  }
}

@media (max-width: 420px) {
  body.is-editorial-confidence-path #accountView .social-fit-field.social-mix-statement,
  body.is-editorial-confidence-path #accountView .social-fit-field.social-mix-statement + .social-fit-field.social-mix-statement {
    padding-inline: 10px;
  }

  body.is-editorial-confidence-path #accountView .social-mix-scale-choice span {
    font-size: 0.56rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .social-fit-privacy-note > summary::after,
  .social-fit-saved-rounds > summary::after,
  .social-mix-more > summary::after {
    transition: none;
  }
}

/* Prototype v125: state-driven Invite feedback motion; never a source of state by itself. */
.find-list-undo.is-response-confirmed {
  transform-origin: center top;
  animation: response-receipt-settle 460ms cubic-bezier(0.2, 0.76, 0.28, 1) both;
}

.waiting-response-row.is-response-arrival {
  transform-origin: center top;
  animation: response-row-arrive 520ms cubic-bezier(0.2, 0.76, 0.28, 1) both;
}

.member-action-result.is-success.is-confirmation-celebration {
  transform-origin: center;
  animation: confirmation-result-reveal 680ms cubic-bezier(0.16, 0.82, 0.24, 1) both;
}

.member-action-result.is-confirmation-celebration > .mutual-confirmation-seal {
  animation: confirmation-seal-settle 720ms cubic-bezier(0.16, 0.82, 0.24, 1) both;
}

.member-action-result.is-confirmation-celebration .mutual-seal-hands {
  stroke-dasharray: 48;
  stroke-dashoffset: 48;
  animation: confirmation-hands-join 520ms ease-out 120ms forwards;
}

.member-action-result.is-confirmation-celebration .mutual-seal-cuff {
  transform-box: fill-box;
  transform-origin: center;
  animation: confirmation-cuff-join 440ms ease-out 80ms both;
}

.member-action-result.is-confirmation-celebration .mutual-seal-cuff:nth-of-type(2) {
  --confirmation-cuff-offset: -3px;
}

.member-action-result.is-confirmation-celebration .mutual-seal-cuff:nth-of-type(3) {
  --confirmation-cuff-offset: 3px;
}

.member-action-result.is-confirmation-celebration .mutual-seal-spark {
  transform-box: fill-box;
  transform-origin: center;
  animation: confirmation-spark-arrive 420ms ease-out 300ms both;
}

.person-timer.is-expiry-transition {
  animation: deadline-expiry-settle 340ms ease-out both;
}

@keyframes response-receipt-settle {
  0% {
    opacity: 0;
    transform: translateY(5px) scale(0.985);
    box-shadow: 0 0 0 0 rgba(43, 127, 114, 0);
  }
  62% {
    opacity: 1;
    transform: translateY(0) scale(1);
    box-shadow: 0 0 0 5px rgba(43, 127, 114, 0.08);
  }
  100% {
    opacity: 1;
    transform: none;
    box-shadow: 0 0 0 0 rgba(43, 127, 114, 0);
  }
}

@keyframes response-row-arrive {
  0% {
    opacity: 0;
    transform: translateY(7px);
  }
  100% {
    opacity: 1;
    transform: none;
  }
}

@keyframes confirmation-result-reveal {
  0% {
    opacity: 0;
    transform: translateY(4px);
  }
  58% {
    opacity: 1;
    transform: translateY(-1px);
  }
  100% {
    opacity: 1;
    transform: none;
  }
}

@keyframes confirmation-seal-settle {
  0% {
    opacity: 0.2;
    transform: translateY(2px);
    box-shadow: 0 0 0 0 rgba(43, 127, 114, 0);
  }
  62% {
    opacity: 1;
    transform: translateY(-1px);
    box-shadow: 0 0 0 9px rgba(43, 127, 114, 0.1);
  }
  100% {
    opacity: 1;
    transform: none;
    box-shadow: 0 0 0 0 rgba(43, 127, 114, 0);
  }
}

@keyframes confirmation-hands-join {
  to {
    stroke-dashoffset: 0;
  }
}

@keyframes confirmation-cuff-join {
  from {
    opacity: 0;
    transform: translateX(var(--confirmation-cuff-offset, 0));
  }
  to {
    opacity: 0.88;
    transform: none;
  }
}

@keyframes confirmation-spark-arrive {
  0% {
    opacity: 0;
    transform: scale(0.3) rotate(-18deg);
  }
  72% {
    opacity: 1;
    transform: scale(1.16) rotate(3deg);
  }
  100% {
    opacity: 1;
    transform: none;
  }
}

@keyframes deadline-expiry-settle {
  0% {
    opacity: 0.7;
    transform: scale(0.98);
  }
  100% {
    opacity: 1;
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .find-list-undo.is-response-confirmed,
  .waiting-response-row.is-response-arrival,
  .member-action-result.is-success.is-confirmation-celebration,
  .member-action-result.is-confirmation-celebration > .mutual-confirmation-seal,
  .member-action-result.is-confirmation-celebration .mutual-seal-hands,
  .member-action-result.is-confirmation-celebration .mutual-seal-cuff,
  .member-action-result.is-confirmation-celebration .mutual-seal-spark,
  .person-timer.is-expiry-transition {
    animation: none;
  }
}

/* Prototype v132: v131 plus the approved one-time One Invite Trial offer. */
/* Prototype v134: plan-centered Invitation style replaces relationship-outcome fields. */
body.is-editorial-confidence-path .in-familiar-host-summary {
  min-width: 0;
  margin: 10px 5px 1px;
  border-block: 1px solid color-mix(in srgb, var(--invite-accent) 20%, transparent);
  background: linear-gradient(
    90deg,
    color-mix(in srgb, var(--invite-accent-soft) 48%, transparent),
    transparent 78%
  );
  padding: 11px 5px;
  display: grid;
  grid-template-columns: 62px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
}

body.is-editorial-confidence-path .in-familiar-host-photo-trigger,
body.is-editorial-confidence-path .in-familiar-host-photo {
  width: 62px;
  height: 62px;
  border-radius: 19px;
}

body.is-editorial-confidence-path .in-familiar-host-photo {
  border: 2px solid rgba(255, 253, 249, 0.94);
  object-fit: cover;
  object-position: center 24%;
  box-shadow: 0 7px 18px color-mix(in srgb, var(--invite-accent) 18%, rgba(56, 46, 39, 0.1));
}

body.is-editorial-confidence-path .in-familiar-host-copy {
  min-width: 0;
  display: grid;
  justify-items: start;
  gap: 3px;
}

body.is-editorial-confidence-path .in-familiar-host-kicker {
  color: color-mix(in srgb, var(--invite-accent-deep) 74%, #6b6266);
  font-size: 0.65rem;
  font-weight: 880;
  letter-spacing: 0.055em;
  line-height: 1.1;
  text-transform: uppercase;
}

body.is-editorial-confidence-path .in-familiar-host-copy > strong {
  color: color-mix(in srgb, var(--invite-accent-deep) 88%, var(--alt-ink));
  font-family: ui-serif, "New York", Georgia, serif;
  font-size: 1.08rem;
  line-height: 1.08;
}

body.is-editorial-confidence-path .in-familiar-host-summary .member-card-words {
  margin-top: 2px;
}

body.is-editorial-confidence-path .in-familiar-host-summary .member-card-words span {
  border: 1px solid color-mix(in srgb, var(--invite-accent) 18%, white);
  background: rgba(255, 253, 249, 0.82);
  color: color-mix(in srgb, var(--invite-accent-deep) 76%, #5d5559);
  padding: 4px 7px;
  font-size: 0.67rem;
}

body.is-editorial-confidence-path .incoming-invite-record .host-preview.is-familiar-detail {
  grid-template-columns: minmax(0, 1fr);
}

body.is-editorial-confidence-path #accountView .social-mix-scale-choice:has(input:checked) {
  border-color: #314b91;
  background: #465fa2;
  color: #ffffff;
  box-shadow:
    inset 0 0 0 2px rgba(255, 255, 255, 0.34),
    0 6px 14px color-mix(in srgb, var(--account-accent) 24%, transparent);
}

body.is-editorial-confidence-path .invite-record-identity[data-invite-signature]::before,
body.is-editorial-confidence-path .invite-detail-hero[data-invite-signature]::after {
  content: "";
  position: absolute;
  border: 0;
  border-radius: 0;
  pointer-events: none;
  opacity: 0.82;
}

body.is-editorial-confidence-path .invite-record-identity[data-invite-signature]::before {
  right: -18px;
  bottom: -18px;
  width: min(46%, 210px);
  height: calc(100% + 12px);
}

body.is-editorial-confidence-path .invite-detail-hero[data-invite-signature]::after {
  right: -20px;
  bottom: -28px;
  width: min(46%, 270px);
  height: calc(100% + 36px);
}

body.is-editorial-confidence-path .invite-record-identity[data-invite-signature="rhythm"]::before,
body.is-editorial-confidence-path .invite-detail-hero[data-invite-signature="rhythm"]::after {
  background: repeating-radial-gradient(
    ellipse at 100% 100%,
    transparent 0 17px,
    color-mix(in srgb, var(--invite-accent) 24%, transparent) 18px 24px,
    transparent 25px 38px
  );
}

body.is-editorial-confidence-path .invite-record-identity[data-invite-signature="steps"]::before,
body.is-editorial-confidence-path .invite-detail-hero[data-invite-signature="steps"]::after {
  background:
    linear-gradient(color-mix(in srgb, var(--invite-accent) 28%, transparent) 0 0) 7% 88% / 19% 24% no-repeat,
    linear-gradient(color-mix(in srgb, var(--invite-accent) 24%, transparent) 0 0) 33% 76% / 19% 40% no-repeat,
    linear-gradient(color-mix(in srgb, var(--invite-accent) 20%, transparent) 0 0) 59% 62% / 19% 58% no-repeat,
    linear-gradient(color-mix(in srgb, var(--invite-accent) 16%, transparent) 0 0) 85% 44% / 19% 82% no-repeat;
  transform: rotate(-4deg);
}

body.is-editorial-confidence-path .invite-record-identity[data-invite-signature="pulse"]::before,
body.is-editorial-confidence-path .invite-detail-hero[data-invite-signature="pulse"]::after {
  border-radius: 50%;
  background: repeating-radial-gradient(
    circle at 58% 52%,
    color-mix(in srgb, var(--invite-accent) 26%, transparent) 0 6px,
    transparent 7px 20px,
    color-mix(in srgb, var(--invite-accent) 18%, transparent) 21px 27px,
    transparent 28px 42px
  );
  transform: scale(1.08);
}

body.is-editorial-confidence-path .invite-record-identity[data-invite-signature="split"]::before,
body.is-editorial-confidence-path .invite-detail-hero[data-invite-signature="split"]::after {
  background:
    linear-gradient(
      132deg,
      transparent 0 30%,
      color-mix(in srgb, var(--invite-accent) 26%, transparent) 30% 44%,
      transparent 44% 58%,
      color-mix(in srgb, var(--invite-accent-deep) 14%, transparent) 58% 70%,
      transparent 70%
    );
  transform: skewX(-8deg);
}

body.is-editorial-confidence-path .invite-record-identity[data-invite-signature="orbit"]::before,
body.is-editorial-confidence-path .invite-detail-hero[data-invite-signature="orbit"]::after {
  border-radius: 50%;
  background:
    radial-gradient(circle at 78% 28%, color-mix(in srgb, var(--invite-accent-deep) 32%, transparent) 0 6px, transparent 7px),
    radial-gradient(
      ellipse at 50% 52%,
      transparent 0 31%,
      color-mix(in srgb, var(--invite-accent) 25%, transparent) 32% 37%,
      transparent 38% 49%,
      color-mix(in srgb, var(--invite-accent) 15%, transparent) 50% 54%,
      transparent 55%
    );
  transform: rotate(-12deg);
}

body.is-editorial-confidence-path .invite-record-identity[data-invite-signature="trail"]::before,
body.is-editorial-confidence-path .invite-detail-hero[data-invite-signature="trail"]::after {
  background:
    radial-gradient(circle at 10% 82%, color-mix(in srgb, var(--invite-accent) 32%, transparent) 0 5px, transparent 6px),
    radial-gradient(circle at 29% 67%, color-mix(in srgb, var(--invite-accent) 29%, transparent) 0 7px, transparent 8px),
    radial-gradient(circle at 51% 73%, color-mix(in srgb, var(--invite-accent) 24%, transparent) 0 4px, transparent 5px),
    radial-gradient(circle at 67% 48%, color-mix(in srgb, var(--invite-accent) 27%, transparent) 0 8px, transparent 9px),
    radial-gradient(circle at 88% 29%, color-mix(in srgb, var(--invite-accent-deep) 22%, transparent) 0 5px, transparent 6px);
  transform: rotate(-4deg);
}

body.is-editorial-confidence-path .invite-record-identity[data-invite-signature="spark"]::before,
body.is-editorial-confidence-path .invite-detail-hero[data-invite-signature="spark"]::after {
  border-radius: 50%;
  background: repeating-conic-gradient(
    from -8deg at 62% 52%,
    color-mix(in srgb, var(--invite-accent) 25%, transparent) 0 5deg,
    transparent 5deg 25deg
  );
  clip-path: polygon(50% 0, 59% 35%, 88% 12%, 69% 43%, 100% 50%, 67% 58%, 88% 88%, 58% 68%, 50% 100%, 42% 68%, 12% 88%, 32% 57%, 0 50%, 34% 42%, 12% 12%, 41% 34%);
  transform: rotate(6deg) scale(0.94);
}

body.is-editorial-confidence-path .invite-record-identity[data-invite-signature="blocks"]::before,
body.is-editorial-confidence-path .invite-detail-hero[data-invite-signature="blocks"]::after {
  border-radius: 18px;
  background:
    conic-gradient(
      from 90deg,
      color-mix(in srgb, var(--invite-accent) 24%, transparent) 0 25%,
      transparent 0 50%,
      color-mix(in srgb, var(--invite-accent-deep) 13%, transparent) 0 75%,
      transparent 0
    ) 0 0 / 52px 52px;
  transform: rotate(-7deg) scale(1.08);
}

@media (min-width: 901px) {
  body.is-editorial-confidence-path.is-prototype-desktop .in-familiar-host-summary {
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 14px;
    padding-block: 13px;
  }

  body.is-editorial-confidence-path.is-prototype-desktop .in-familiar-host-photo-trigger,
  body.is-editorial-confidence-path.is-prototype-desktop .in-familiar-host-photo {
    width: 72px;
    height: 72px;
    border-radius: 22px;
  }
}

/* Prototype v136: completed Past cards keep one stable non-overlapping summary flow. */
.on-invite-record.confirmed-plan-card.is-completed > summary {
  grid-template-columns: minmax(0, 1fr);
}

.on-invite-record.is-completed .invite-record-identity,
.on-invite-record.is-completed .invite-record-identity:is(.is-match, .is-action, .is-waiting, .is-out, .is-on, .is-past) {
  grid-template-columns: 48px minmax(0, 1fr);
  column-gap: 12px;
}

.on-invite-record.is-completed .invite-record-state-group {
  grid-column: 2;
  justify-content: flex-start;
}

.on-invite-record.is-completed .completed-private-cue {
  width: 100%;
  min-width: 0;
}

.on-invite-record.is-completed .completed-plan-toggle {
  justify-self: end;
}

/* Prototype v139: multiple private Trips and viewer-owned Trip context across Invite actions and states. */
.travel-plan-summary {
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  display: grid;
  gap: 10px;
}

.travel-plan-item,
.travel-empty-state {
  overflow: hidden;
  border: 1px solid var(--settings-divider);
  border-radius: 17px;
  background: #fffdfa;
}

.travel-plan-item-actions {
  border-top: 1px solid var(--settings-divider);
  padding: 9px 10px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
  gap: 8px;
}

.travel-plan-item-actions > button {
  width: 100%;
  min-height: 44px;
  margin: 0;
}

.travel-plan-item-actions .text-action {
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: #943f32;
  padding-inline: 12px;
  font-weight: 780;
}

.travel-plan-item-actions .text-action:hover,
.travel-plan-item-actions .text-action:focus-visible {
  background: #f8ede9;
}

.trip-summary-actions {
  grid-template-columns: minmax(0, 1fr);
}

.travel-summary-mark .trip-context-luggage {
  width: 21px;
  height: 21px;
  flex-basis: 21px;
}

.invite-record-review-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}

.invite-record-review-action.is-trip-linked {
  min-width: 96px;
  color: #315f58;
  background: #eaf5f1;
}

.invite-record-review-action.is-trip-linked .trip-context-luggage {
  width: 15px;
  height: 15px;
  flex-basis: 15px;
}

.find-town-filter {
  min-width: 0;
  display: grid;
  gap: 4px;
  color: #475467;
  font-size: 0.72rem;
  font-weight: 860;
}

.find-town-picker {
  min-width: 0;
  border: 1px solid rgba(33, 45, 58, 0.18);
  border-radius: 12px;
  background: #fff;
}

.find-town-picker > summary {
  min-height: 44px;
  padding: 7px 9px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  list-style: none;
}

.find-town-picker > summary::-webkit-details-marker {
  display: none;
}

.find-town-picker > summary:focus-visible {
  border-radius: 11px;
  outline: 3px solid rgba(33, 100, 232, 0.2);
  outline-offset: 1px;
}

.find-town-selected {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
}

.find-town-selected > span,
.find-town-options button > span:not(.find-town-selected-mark) {
  min-width: 0;
  display: grid;
  gap: 1px;
  text-align: left;
}

.find-town-selected strong,
.find-town-options strong {
  color: var(--ink);
  font-size: 0.82rem;
  line-height: 1.15;
}

.find-town-selected small,
.find-town-options small {
  color: #526079;
  font-size: 0.66rem;
  font-weight: 740;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.find-town-picker-action {
  color: var(--blue-dark);
  font-size: 0.68rem;
  font-weight: 850;
}

.find-town-picker .when-open {
  display: none;
}

.find-town-picker[open] .when-closed {
  display: none;
}

.find-town-picker[open] .when-open {
  display: inline;
}

.find-town-options {
  max-height: 280px;
  overflow-y: auto;
  border-top: 1px solid rgba(33, 45, 58, 0.1);
  padding: 5px;
  display: grid;
  gap: 3px;
}

.find-town-options button {
  width: 100%;
  min-width: 0;
  min-height: 44px;
  border: 1px solid transparent;
  border-radius: 9px;
  background: transparent;
  padding: 6px 7px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 7px;
  color: var(--ink);
}

.find-town-options button.is-trip-town {
  grid-template-columns: 18px minmax(0, 1fr) auto;
  background: #f4faf8;
}

.find-town-options button:hover,
.find-town-options button:focus-visible,
.find-town-options button[aria-selected="true"] {
  border-color: rgba(13, 143, 116, 0.24);
  background: #edf8f4;
}

.find-town-options button:focus-visible {
  outline: 3px solid rgba(33, 100, 232, 0.2);
  outline-offset: 1px;
}

.find-town-selected-mark {
  opacity: 0;
  color: var(--green-dark);
  font-weight: 900;
}

.find-town-options button[aria-selected="true"] .find-town-selected-mark {
  opacity: 1;
}

.trip-context-luggage {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  color: currentColor;
}

.invite-trip-context {
  min-width: 0;
  max-width: 100%;
  display: inline-flex;
  align-items: flex-start;
  gap: 5px;
  color: #315f58;
  font-size: 0.68rem;
  font-weight: 790;
  letter-spacing: 0.005em;
  line-height: 1.2;
}

.invite-trip-context > span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.invite-record-trip-context {
  color: #315f58;
  font-size: 0.66rem;
  font-weight: 790;
  line-height: 1.15;
}

.area-label-row .invite-trip-context {
  display: inline-flex;
  align-items: center;
  color: #315f58;
}

.member-action-hero > div > .member-action-trip-context {
  margin-top: 4px;
  display: inline-flex;
  align-items: center;
  color: #315f58;
  font-size: 0.7rem;
  font-weight: 790;
}

@media (min-width: 901px) {
  body.is-prototype-desktop .find-town-filter {
    font-size: 0.82rem;
  }

  body.is-prototype-desktop .find-town-picker > summary {
    min-height: 48px;
    padding-inline: 13px;
  }

  body.is-prototype-desktop .find-town-selected strong,
  body.is-prototype-desktop .find-town-options strong {
    font-size: 1rem;
  }

  body.is-prototype-desktop .find-town-selected small,
  body.is-prototype-desktop .find-town-options small {
    font-size: 0.76rem;
  }
}

@media (max-width: 520px) {
  .travel-plan-item-actions {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }

  .travel-plan-item-actions .text-action {
    grid-column: 1 / -1;
  }
}

@media (max-width: 340px) {
  .travel-plan-item-actions {
    grid-template-columns: 1fr;
  }

  .travel-plan-item-actions .text-action {
    grid-column: auto;
  }
}

/* Prototype v140: retire the legacy desktop picker split now that Familiar Faces is one disclosure. */
body.is-prototype-desktop #whoView .profile-section {
  display: block;
}

body.is-prototype-desktop #whoView .profile-section .familiar-picker-disclosure {
  margin-top: 14px;
}

/* Traditional Invitation System source layer, promoted in canonical v141 and refined in v142.
   Presentation only; behavior and privacy retain the canonical Invite contract. */
body.is-modern-salon {
  --salon-canvas: #f1f2f2;
  --salon-paper: #ffffff;
  --salon-soft: #f7f7f6;
  --salon-ink: #181a1d;
  --salon-ink-soft: #3f4248;
  --salon-muted: #6c7078;
  --salon-line: #d8dade;
  --salon-line-dark: #b9bdc4;
  --salon-brand: #d94232;
  --salon-brand-deep: #a82c21;
  --salon-focus: #2757a5;
  --salon-confirm: #16705c;
  --salon-shadow: 0 10px 28px rgba(24, 26, 29, 0.07);
  --salon-shadow-raised: 0 18px 44px rgba(24, 26, 29, 0.12);
  --salon-sans: "Avenir Next", Avenir, -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", sans-serif;
  --alt-canvas: var(--salon-canvas);
  --alt-canvas-deep: #e5e7e8;
  --alt-surface: var(--salon-paper);
  --alt-surface-strong: var(--salon-paper);
  --alt-ink: var(--salon-ink);
  --alt-muted: var(--salon-muted);
  --alt-line: rgba(24, 26, 29, 0.13);
  --alt-line-strong: rgba(24, 26, 29, 0.23);
  --alt-blue: var(--salon-focus);
  --alt-blue-dark: #1b3c76;
  --alt-blue-soft: #eef2f8;
  --alt-green: var(--salon-confirm);
  --alt-green-soft: #edf4f1;
  color: var(--salon-ink);
  background:
    linear-gradient(rgba(24, 26, 29, 0.018) 1px, transparent 1px),
    var(--salon-canvas);
  background-size: 100% 64px;
  font-family: var(--salon-sans);
  font-size: 15px;
  line-height: 1.48;
}

body.is-modern-salon * {
  font-weight: 400 !important;
}

body.is-modern-salon :where(
  h1, h2, h3, h4, h5, h6,
  strong, b,
  button, summary, label,
  [role="tab"],
  .eyebrow,
  .quiet-pill,
  .invite-record-state-pill,
  .invite-record-status-pill,
  .incoming-invite-state-pill,
  .incoming-invite-status-pill,
  .primary-action,
  .confirm-button,
  .profile-add-action
) {
  font-weight: 500 !important;
}

body.is-modern-salon .prototype-device-switch {
  width: min(1180px, calc(100% - 28px));
  min-height: 52px;
  border: 0;
  border-bottom: 1px solid var(--salon-line);
  border-radius: 0;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: none;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

body.is-modern-salon .canonical-build-label strong {
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 4px 0;
  color: var(--salon-ink);
  font-size: 0.67rem;
  letter-spacing: 0.13em;
  text-transform: uppercase;
  box-shadow: none !important;
}

body.is-modern-salon .canonical-label-compact,
body.is-modern-salon .canonical-label-wide {
  color: var(--salon-ink) !important;
}

body.is-modern-salon .prototype-device-switch button,
body.is-modern-salon .prototype-scenario-tools > summary {
  min-height: 38px;
  border-radius: 0;
  background: transparent;
  color: var(--salon-muted);
  box-shadow: none;
}

body.is-modern-salon .prototype-device-switch button.is-active,
body.is-modern-salon .prototype-scenario-tools[open] > summary {
  background: transparent;
  color: var(--salon-ink);
  box-shadow: inset 0 -3px 0 var(--salon-brand);
}

body.is-modern-salon .compose-panel {
  border: 0;
  border-radius: 0;
  background: rgba(250, 250, 249, 0.99);
  box-shadow: 0 24px 70px rgba(24, 26, 29, 0.09);
}

body.is-modern-salon .screen-scroll {
  scrollbar-color: var(--salon-line-dark) transparent;
}

body.is-modern-salon .app-nav.is-root-invitations {
  min-height: 72px;
  border: 0;
  border-bottom: 1px solid var(--salon-line);
  border-radius: 0;
  background: var(--salon-paper);
  padding: 10px 14px;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

body.is-modern-salon .app-nav.is-root-invitations::after {
  display: none;
}

body.is-modern-salon .app-nav .nav-status.is-navigation-title {
  color: var(--salon-ink);
  font-family: var(--salon-sans) !important;
  font-size: clamp(1.6rem, 4vw, 2rem);
  font-weight: 500 !important;
  letter-spacing: -0.045em;
  line-height: 1;
}

body.is-modern-salon .app-nav .nav-status.is-navigation-title::before {
  display: block;
  margin-bottom: 6px;
  color: var(--salon-brand-deep);
  font-size: 0.59rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

body.is-modern-salon .avatar-button {
  width: 44px;
  height: 44px;
  border: 1px solid var(--salon-ink);
  background: var(--salon-paper);
  color: var(--salon-ink);
  box-shadow: inset 0 -4px 0 var(--salon-brand);
}

body.is-modern-salon .root-tabs,
body.is-modern-salon.is-prototype-desktop .screen-scroll:has(.root-tabs:not([hidden])) > .root-tabs {
  border: 0;
  border-bottom: 1px solid var(--salon-line);
  border-radius: 0;
  background: var(--salon-paper) !important;
  padding: 0 8px;
  box-shadow: none !important;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

body.is-modern-salon .root-tab {
  min-height: 54px;
  border: 0;
  border-radius: 0 !important;
  background: transparent;
  color: var(--salon-muted);
  box-shadow: none;
}

body.is-modern-salon .root-tab svg {
  width: 16px;
  height: 16px;
}

body.is-modern-salon .root-tab.is-active {
  background: transparent;
  color: var(--salon-ink);
  box-shadow: inset 0 -3px 0 var(--salon-brand);
}

body.is-modern-salon .root-tab.is-active::after {
  display: none;
}

body.is-modern-salon .social-mix-promo {
  min-height: 0;
  border: 0;
  border-bottom: 1px solid var(--salon-line);
  border-radius: 0;
  background: var(--salon-paper);
  padding: 9px 12px;
  box-shadow: none;
}

body.is-modern-salon .social-mix-promo::before,
body.is-modern-salon .social-mix-promo::after {
  display: none;
}

body.is-modern-salon .social-mix-promo-mark {
  width: 30px;
  height: 30px;
  border: 1px solid var(--salon-line-dark);
  border-radius: 0;
  background: var(--salon-paper);
  color: var(--salon-brand);
  font-size: 0.78rem;
  box-shadow: none;
}

body.is-modern-salon .social-mix-promo-copy .eyebrow {
  display: none;
}

body.is-modern-salon .social-mix-promo-copy h2 {
  color: var(--salon-ink-soft);
  font-family: var(--salon-sans) !important;
  font-size: 0.87rem;
  line-height: 1.18;
}

body.is-modern-salon .social-mix-promo-copy > p:last-child {
  color: var(--salon-muted);
  font-size: 0.74rem;
}

body.is-modern-salon .social-mix-promo-actions,
body.is-modern-salon .social-mix-promo-actions .primary-action,
body.is-modern-salon .social-mix-promo-later {
  width: auto;
  gap: 0;
}

body.is-modern-salon .social-mix-promo-actions .primary-action,
body.is-modern-salon .social-mix-promo-later {
  min-height: 40px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--salon-brand-deep);
  padding-inline: 8px;
  white-space: nowrap;
  box-shadow: none;
}

body.is-modern-salon .notification-center {
  gap: 0;
}

body.is-modern-salon .notification-item,
body.is-modern-salon .notification-item.is-social-mix,
body.is-modern-salon .readiness-state-card {
  border: 0;
  border-bottom: 1px solid var(--salon-line);
  border-radius: 0;
  background: var(--salon-paper);
  color: var(--salon-ink-soft);
  padding: 8px 12px;
  box-shadow: none;
}

body.is-modern-salon .notification-item strong {
  color: var(--salon-ink-soft);
  font-size: 0.82rem;
}

body.is-modern-salon .notification-item p,
body.is-modern-salon .notification-item span {
  color: var(--salon-muted);
}

body.is-modern-salon .notification-state-label {
  border: 0;
  background: transparent !important;
  color: var(--salon-muted) !important;
  font-size: 0.62rem;
  letter-spacing: 0.045em;
}

body.is-modern-salon .notification-item button,
body.is-modern-salon .notification-item-action {
  min-width: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--salon-brand-deep);
  padding-inline: 6px;
  box-shadow: none;
}

body.is-modern-salon .incoming-priority-section,
body.is-modern-salon .incoming-waiting-section {
  border: 0;
  border-radius: 0 !important;
  background: transparent;
  box-shadow: none;
}

body.is-modern-salon .incoming-section-header,
body.is-modern-salon .incoming-priority-section[open] > .incoming-section-header,
body.is-modern-salon .incoming-waiting-section > .incoming-section-header {
  min-height: 66px;
  border: 0;
  border-bottom: 1px solid var(--salon-line);
  border-radius: 0;
  background: transparent;
  padding: 11px 8px;
}

body.is-modern-salon .incoming-priority-section[open] > .incoming-section-header {
  border-left: 0;
  box-shadow: inset 4px 0 0 var(--salon-brand);
}

body.is-modern-salon .incoming-section-header .response-disclosure-copy strong {
  color: var(--salon-ink);
  font-family: var(--salon-sans) !important;
  font-size: 1.03rem;
  letter-spacing: -0.025em;
}

body.is-modern-salon .incoming-section-header .response-disclosure-copy small {
  color: var(--salon-muted) !important;
  font-size: 0.74rem;
}

body.is-modern-salon .incoming-section-header .quiet-pill {
  border: 1px solid var(--salon-line-dark);
  background: var(--salon-paper);
  color: var(--salon-ink-soft);
  box-shadow: none;
}

body.is-modern-salon .response-disclosure-chevron {
  background: transparent !important;
  color: var(--salon-brand-deep) !important;
}

body.is-modern-salon .incoming-section-body {
  background: transparent;
  padding: 12px 0;
}

body.is-modern-salon .find-controls-panel {
  border: 0;
  border-bottom: 1px solid var(--salon-line);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

body.is-modern-salon .find-filter-summary {
  min-height: 58px;
  background: transparent;
}

body.is-modern-salon .find-filter-mark {
  border: 1px solid var(--salon-line-dark);
  border-radius: 0;
  background: var(--salon-paper);
  color: var(--salon-focus);
}

body.is-modern-salon .find-filter-title-row strong,
body.is-modern-salon .find-filter-summary-copy > strong {
  color: var(--salon-ink);
  font-size: 0.9rem;
}

body.is-modern-salon .find-filter-summary-copy small,
body.is-modern-salon .find-filter-summary .disclosure-label {
  color: var(--salon-muted) !important;
}

body.is-modern-salon [data-invite-signature="rhythm"] {
  --invite-accent: #cf3f35 !important;
  --invite-accent-soft: #f8eeec !important;
  --invite-accent-deep: #9f2b25 !important;
}

body.is-modern-salon [data-invite-signature="steps"] {
  --invite-accent: #295db0 !important;
  --invite-accent-soft: #edf1f8 !important;
  --invite-accent-deep: #204783 !important;
}

body.is-modern-salon [data-invite-signature="pulse"] {
  --invite-accent: #70548a !important;
  --invite-accent-soft: #f1eef4 !important;
  --invite-accent-deep: #503b65 !important;
}

body.is-modern-salon [data-invite-signature="split"] {
  --invite-accent: #e25735 !important;
  --invite-accent-soft: #f9eeea !important;
  --invite-accent-deep: #ac3e25 !important;
}

body.is-modern-salon [data-invite-signature="orbit"] {
  --invite-accent: #335aa1 !important;
  --invite-accent-soft: #edf1f7 !important;
  --invite-accent-deep: #263f75 !important;
}

body.is-modern-salon [data-invite-signature="trail"] {
  --invite-accent: #28705a !important;
  --invite-accent-soft: #edf4f1 !important;
  --invite-accent-deep: #1e5142 !important;
}

body.is-modern-salon [data-invite-signature="spark"] {
  --invite-accent: #d33d4f !important;
  --invite-accent-soft: #f8edef !important;
  --invite-accent-deep: #9c2939 !important;
}

body.is-modern-salon [data-invite-signature="blocks"] {
  --invite-accent: #17798d !important;
  --invite-accent-soft: #ebf3f5 !important;
  --invite-accent-deep: #12596a !important;
}

body.is-modern-salon .invite-record[data-invite-signature] {
  overflow: hidden;
  border: 1px solid var(--salon-line-dark);
  border-radius: 0;
  background: var(--salon-paper);
  box-shadow: var(--salon-shadow);
  transition: transform 160ms ease, box-shadow 160ms ease;
}

body.is-modern-salon .invite-record[data-invite-signature]:hover,
body.is-modern-salon .invite-record[data-invite-signature]:focus-within {
  transform: translateY(-2px);
  box-shadow: var(--salon-shadow-raised);
}

body.is-modern-salon .invite-record[data-invite-signature] > .invite-record-identity,
body.is-modern-salon .invite-record[data-invite-signature]:not(.is-completed) > .invite-record-identity {
  position: relative;
  overflow: hidden;
  grid-template-columns: 76px minmax(0, 1fr);
  column-gap: 15px;
  min-height: 126px;
  margin: 0;
  border: 0;
  border-bottom: 1px solid var(--salon-line);
  border-radius: 0;
  background: var(--salon-paper);
  color: var(--salon-ink);
  padding: 14px 14px 14px 0;
}

body.is-modern-salon .invite-record-identity::before {
  opacity: 0.07 !important;
  filter: grayscale(1);
}

body.is-modern-salon .invite-record-identity::after {
  content: "";
  position: absolute;
  inset: auto 0 0 91px;
  width: auto;
  height: 4px;
  border-radius: 0;
  background: var(--invite-accent);
  pointer-events: none;
}

body.is-modern-salon .invite-record-identity > * {
  position: relative;
  z-index: 1;
}

body.is-modern-salon .invite-record .invitation-seal {
  grid-row: 1 / span 3;
  align-self: stretch;
  width: 76px;
  height: auto;
  min-height: 98px;
  border: 0;
  border-radius: 0;
  background: var(--invite-accent);
  color: white;
  box-shadow: none;
}

body.is-modern-salon .invite-record .invitation-seal .event-category-icon {
  background: transparent;
  color: white;
  box-shadow: none;
}

body.is-modern-salon .invite-record .invite-signature-mark i {
  background: rgba(255, 255, 255, 0.9);
}

body.is-modern-salon .invite-record-identity-copy > .invite-record-identity-topline,
body.is-modern-salon .invite-record-identity-topline {
  margin-bottom: 8px;
}

body.is-modern-salon .invite-record-identity-topline > span:first-child,
body.is-modern-salon .invite-record-category,
body.is-modern-salon .invite-record-category > span:last-child {
  color: var(--invite-accent-deep) !important;
  font-size: 0.65rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

body.is-modern-salon .invite-record-identity-copy > strong {
  color: var(--salon-ink);
  font-family: var(--salon-sans) !important;
  font-size: 1.26rem;
  font-weight: 500 !important;
  letter-spacing: -0.045em;
  line-height: 1.05;
}

body.is-modern-salon .invite-record-identity-copy > small,
body.is-modern-salon .invite-record-meta,
body.is-modern-salon .invite-record-identity-support,
body.is-modern-salon .invite-record-travel-range,
body.is-modern-salon .invite-trip-context,
body.is-modern-salon .invite-record-trip-context {
  color: var(--salon-muted) !important;
  font-size: 0.74rem;
  line-height: 1.32;
}

body.is-modern-salon .invite-record-state-pill,
body.is-modern-salon .invite-record-status-pill {
  border: 1px solid color-mix(in srgb, var(--invite-accent) 45%, var(--salon-line));
  background: var(--salon-paper) !important;
  color: var(--invite-accent-deep) !important;
  font-size: 0.64rem;
  letter-spacing: 0.01em;
  box-shadow: none;
}

body.is-modern-salon .invite-card-context-row,
body.is-modern-salon .host-preview,
body.is-modern-salon .in-familiar-host-summary {
  border-color: var(--salon-line);
  background: var(--salon-paper);
}

body.is-modern-salon .member-card-words span,
body.is-modern-salon .invite-card-context-row .member-card-words span {
  border: 0;
  background: transparent;
  color: var(--salon-muted);
  padding-inline: 0;
}

body.is-modern-salon :where(
  .last-minute-receipt,
  .last-minute-note,
  .last-minute-list-receipt,
  .last-minute-timing-receipt
) {
  border: 0 !important;
  border-bottom: 1px solid #dfaba4 !important;
  border-radius: 0 !important;
  background: var(--salon-paper) !important;
  color: var(--salon-brand-deep) !important;
  box-shadow: inset 4px 0 0 var(--salon-brand) !important;
}

body.is-modern-salon .person-timer {
  border: 1px solid var(--salon-line-dark);
  background: var(--salon-paper);
  color: var(--salon-ink-soft);
  box-shadow: none;
}

body.is-modern-salon .find-event-detail-row,
body.is-modern-salon .find-event-action-row,
body.is-modern-salon .guest-response-row.is-response-actions {
  border-top-color: var(--salon-line);
}

body.is-modern-salon .find-event-action-row,
body.is-modern-salon .guest-response-row.is-response-actions {
  gap: 8px;
}

body.is-modern-salon .find-event-action-row button,
body.is-modern-salon .guest-response-row.is-response-actions > button,
body.is-modern-salon .invite-detail-actions > button {
  min-height: 48px;
  border-radius: 0;
  box-shadow: none;
}

body.is-modern-salon .find-not-now-action,
body.is-modern-salon .find-event-action-row > button:first-child,
body.is-modern-salon .guest-response-row.is-response-actions > button:first-child {
  border: 1px solid var(--salon-line-dark);
  background: var(--salon-paper);
  color: var(--salon-ink-soft);
}

body.is-modern-salon .find-event-action-row > button:last-child,
body.is-modern-salon .guest-response-row.is-response-actions > button:last-child,
body.is-modern-salon .primary-action,
body.is-modern-salon .confirm-button,
body.is-modern-salon .profile-add-action {
  border-color: var(--salon-ink);
  border-radius: 0;
  background: var(--salon-ink);
  color: white;
  box-shadow: inset 0 -4px 0 var(--salon-brand);
}

body.is-modern-salon .find-event-action-row > button:last-child:hover,
body.is-modern-salon .guest-response-row.is-response-actions > button:last-child:hover,
body.is-modern-salon .primary-action:hover,
body.is-modern-salon .confirm-button:hover {
  background: #000;
}

body.is-modern-salon .invite-record-review-action,
body.is-modern-salon .invite-record-review-action.is-trip-linked,
body.is-modern-salon .text-action,
body.is-modern-salon .secondary-action {
  border: 0;
  border-bottom: 1px solid currentColor;
  border-radius: 0;
  background: transparent;
  color: var(--salon-ink);
  box-shadow: none;
}

body.is-modern-salon .find-list-head strong,
body.is-modern-salon .list-group-head strong,
body.is-modern-salon #homeView h2,
body.is-modern-salon #onView h2 {
  color: var(--salon-ink);
  font-family: var(--salon-sans) !important;
  font-size: 1.26rem;
  font-weight: 500 !important;
  letter-spacing: -0.04em;
}

body.is-modern-salon .list-group-head,
body.is-modern-salon .find-list-head {
  color: var(--salon-muted);
}

body.is-modern-salon #homeView .action-queue-section,
body.is-modern-salon #onView .confirmed-plans-section,
body.is-modern-salon #onView .completed-plans-section {
  border-radius: 0;
  background: transparent;
}

body.is-modern-salon .home-command.is-primary {
  border: 1px solid var(--salon-ink);
  border-radius: 0;
  background: var(--salon-ink);
  color: white;
  box-shadow: inset 0 -5px 0 var(--salon-brand);
}

body.is-modern-salon .home-command.is-primary .action-icon {
  border-radius: 0;
  background: var(--salon-brand);
  color: white;
}

body.is-modern-salon .sheet-backdrop {
  background: rgba(18, 19, 21, 0.64);
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
}

body.is-modern-salon .sheet-panel,
body.is-modern-salon .invite-detail-panel {
  border-color: rgba(255, 255, 255, 0.72);
  border-radius: 0;
  background: var(--salon-paper);
  box-shadow: 0 34px 90px rgba(14, 15, 17, 0.3);
}

body.is-modern-salon .invite-detail-hero.invitation-visual-surface[data-invite-signature] {
  position: relative;
  min-height: 238px;
  overflow: hidden;
  border: 0;
  border-top: 8px solid var(--invite-accent);
  border-radius: 0;
  background: linear-gradient(90deg, var(--salon-paper) 0 70%, var(--invite-accent) 70% 100%);
  color: var(--salon-ink);
  padding: 28px 32% 28px 26px;
  box-shadow: none;
}

body.is-modern-salon .invite-detail-hero::after {
  inset: 0 0 0 70%;
  opacity: 0.25 !important;
  filter: grayscale(1) brightness(2.8);
}

body.is-modern-salon .invite-detail-hero > * {
  position: relative;
  z-index: 1;
}

body.is-modern-salon .invite-detail-hero h2 {
  max-width: 520px;
  color: var(--salon-ink);
  font-family: var(--salon-sans) !important;
  font-size: clamp(2.05rem, 5.2vw, 3.25rem);
  font-weight: 500 !important;
  letter-spacing: -0.06em;
  line-height: 0.98;
}

body.is-modern-salon .invite-detail-hero .invite-detail-category,
body.is-modern-salon .invite-detail-hero .invite-detail-category > span {
  color: var(--invite-accent-deep) !important;
}

body.is-modern-salon .invite-detail-hero p {
  color: var(--salon-muted) !important;
}

body.is-modern-salon .invite-detail-seal {
  border: 0;
  border-radius: 0;
  background: var(--invite-accent);
  color: white;
  box-shadow: none;
}

body.is-modern-salon .invite-detail-seal .event-category-icon {
  background: transparent;
  color: white;
  box-shadow: none;
}

body.is-modern-salon :where(
  .pre-response-host,
  .shared-plan-detail,
  .area-label-row,
  .waiting-detail-state,
  .response-receipt,
  .invite-decision-grid,
  .invitation-confidence-path
) {
  border-color: var(--salon-line) !important;
  border-radius: 0 !important;
  background: var(--salon-soft) !important;
  box-shadow: none !important;
}

body.is-modern-salon .invite-decision-grid > div {
  background: var(--salon-paper);
}

body.is-modern-salon .invite-detail-actions {
  border: 1px solid var(--salon-line);
  border-radius: 0;
  background: rgba(255, 255, 255, 0.97);
  box-shadow: 0 16px 36px rgba(24, 26, 29, 0.13);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

body.is-modern-salon .mutual-confirmation-seal {
  color: var(--salon-confirm);
}

body.is-modern-salon .bottom-action,
body.is-modern-salon .account-save-bar,
body.is-modern-salon .operations-record-save-bar {
  border-color: var(--salon-line);
  background: rgba(255, 255, 255, 0.97);
  box-shadow: 0 -12px 30px rgba(24, 26, 29, 0.08);
}

body.is-modern-salon .account-card,
body.is-modern-salon .journey-card,
body.is-modern-salon .profile-section,
body.is-modern-salon .review-summary-card,
body.is-modern-salon .create-editorial-hero,
body.is-modern-salon .create-editorial-workspace {
  border-color: var(--salon-line);
  border-radius: 0;
  background: var(--salon-paper);
  box-shadow: none;
}

body.is-modern-salon .create-editorial-hero,
body.is-modern-salon .journey-hero,
body.is-modern-salon .account-identity-hero {
  background-color: var(--salon-soft);
  background-image: none;
}

body.is-modern-salon :focus-visible {
  outline: 3px solid rgba(39, 87, 165, 0.34);
  outline-offset: 3px;
}

@media (min-width: 901px) {
  body.is-modern-salon.is-prototype-desktop .compose-panel,
  body.is-modern-salon.is-prototype-desktop .screen-scroll:has(.root-tabs:not([hidden])) > .root-tabs {
    border-radius: 0;
  }

  body.is-modern-salon.is-prototype-desktop .root-tab {
    min-height: 68px;
    border-radius: 0;
  }

  body.is-modern-salon.is-prototype-desktop .invite-record-identity-copy > strong {
    font-size: 1.36rem;
  }

  body.is-modern-salon.is-prototype-desktop .invite-detail-hero.invitation-visual-surface[data-invite-signature] {
    min-height: 280px;
  }

  body.is-modern-salon.is-prototype-desktop .screen-scroll:has(.root-tabs:not([hidden])) > .social-mix-promo:not([hidden]) {
    min-height: 88px;
  }
}

@media (max-width: 900px) {
  body.is-modern-salon.is-prototype-mobile .app-nav.is-root-invitations,
  body.is-modern-salon.is-prototype-mobile .root-tabs {
    border-radius: 0;
  }

  body.is-modern-salon .invite-record[data-invite-signature] > .invite-record-identity,
  body.is-modern-salon .invite-record[data-invite-signature]:not(.is-completed) > .invite-record-identity {
    grid-template-columns: 68px minmax(0, 1fr);
    column-gap: 13px;
    min-height: 122px;
    padding-right: 12px;
  }

  body.is-modern-salon .invite-record .invitation-seal {
    width: 68px;
  }

  body.is-modern-salon .invite-record-identity::after {
    left: 81px;
  }

  body.is-modern-salon .invite-record-identity-copy > strong {
    font-size: 1.18rem;
  }

  body.is-modern-salon .invite-detail-hero.invitation-visual-surface[data-invite-signature] {
    min-height: 220px;
    padding: 24px 32% 24px 22px;
  }

  body.is-modern-salon .invite-detail-hero h2 {
    font-size: clamp(1.85rem, 9vw, 2.65rem);
  }
}

@media (max-width: 520px) {
  body.is-modern-salon .prototype-device-switch {
    width: 100%;
    border-inline: 0;
  }

  body.is-modern-salon .canonical-build-label strong {
    width: auto !important;
    min-width: 48px;
    height: auto !important;
    padding-inline: 4px;
  }

  body.is-modern-salon .social-mix-promo {
    grid-template-columns: 30px minmax(0, 1fr) auto;
    gap: 8px;
    min-height: 72px;
  }

  body.is-modern-salon .social-mix-promo-actions {
    grid-column: 3;
    width: auto !important;
  }

  body.is-modern-salon .social-mix-promo-later {
    display: none;
  }

  body.is-modern-salon .notification-item,
  body.is-modern-salon .notification-item:has(.notification-item-action) {
    grid-template-columns: 22px minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
  }

  body.is-modern-salon .notification-item-action {
    grid-column: 3 !important;
    grid-row: 1 !important;
    align-self: center;
    white-space: nowrap;
  }
}

@media (max-width: 360px) {
  body.is-modern-salon .notification-item,
  body.is-modern-salon .notification-item:has(.notification-item-action) {
    grid-template-columns: 22px minmax(0, 1fr);
    align-items: start;
  }

  body.is-modern-salon .notification-item-action {
    grid-column: 2 !important;
    grid-row: auto !important;
    justify-self: start;
  }

  body.is-modern-salon .invite-record[data-invite-signature] > .invite-record-identity,
  body.is-modern-salon .invite-record[data-invite-signature]:not(.is-completed) > .invite-record-identity {
    grid-template-columns: 60px minmax(0, 1fr);
    column-gap: 11px;
  }

  body.is-modern-salon .invite-record .invitation-seal {
    width: 60px;
  }

  body.is-modern-salon .invite-record-identity::after {
    left: 71px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.is-modern-salon *,
  body.is-modern-salon *::before,
  body.is-modern-salon *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}

/* Quiet Frame v5 — a selective correction to Modern Salon v3.
   The workspace recedes; Invite-specific identity owns the color. */
body.is-modern-salon.is-quiet-frame {
  --salon-canvas: #f1f2f3;
  --salon-paper: #ffffff;
  --salon-soft: #f7f8f8;
  --salon-ink: #181a1d;
  --salon-ink-soft: #41454c;
  --salon-muted: #696e77;
  --salon-line: #d7dade;
  --salon-line-dark: #b9bec5;
  --salon-brand: var(--salon-ink);
  --salon-brand-deep: var(--salon-ink);
  --salon-shadow: 0 7px 20px rgba(24, 26, 29, 0.055);
  --salon-shadow-raised: 0 14px 34px rgba(24, 26, 29, 0.1);
  background: var(--salon-canvas);
}

body.is-modern-salon.is-quiet-frame .prototype-device-switch {
  border-bottom-color: var(--salon-line);
}

body.is-modern-salon.is-quiet-frame .canonical-build-label strong,
body.is-modern-salon.is-quiet-frame .canonical-label-compact,
body.is-modern-salon.is-quiet-frame .canonical-label-wide {
  color: var(--salon-muted) !important;
}

body.is-modern-salon.is-quiet-frame .prototype-device-switch button.is-active,
body.is-modern-salon.is-quiet-frame .prototype-scenario-tools[open] > summary {
  color: var(--salon-ink);
  box-shadow: inset 0 -2px 0 var(--salon-ink);
}

body.is-modern-salon.is-quiet-frame .compose-panel {
  background: #fbfbfa;
}

body.is-modern-salon.is-quiet-frame .app-nav.is-root-invitations {
  min-height: 66px;
  border: 0 !important;
  border-bottom: 1px solid var(--salon-line) !important;
  border-radius: 0 !important;
  background: var(--salon-paper) !important;
  box-shadow: none !important;
}

body.is-modern-salon.is-quiet-frame .app-nav .nav-status.is-navigation-title::before {
  color: var(--salon-muted);
}

body.is-modern-salon.is-quiet-frame .avatar-button {
  border-color: var(--salon-ink);
  background: var(--salon-ink);
  color: white;
  box-shadow: none;
}

body.is-modern-salon.is-quiet-frame .root-tabs,
body.is-modern-salon.is-quiet-frame.is-prototype-desktop .screen-scroll:has(.root-tabs:not([hidden])) > .root-tabs {
  border: 0 !important;
  border-bottom: 1px solid var(--salon-line) !important;
  border-radius: 0 !important;
  background: var(--salon-paper) !important;
  box-shadow: none !important;
}

body.is-modern-salon.is-quiet-frame .root-tab {
  color: var(--salon-muted);
}

body.is-modern-salon.is-quiet-frame .root-tab.is-active {
  background: transparent !important;
  color: var(--salon-ink);
  box-shadow: inset 0 -2px 0 var(--salon-ink) !important;
}

/* Optional utilities stay available but no longer occupy the visual foreground. */
body.is-modern-salon.is-quiet-frame .social-mix-promo {
  min-height: 52px !important;
  grid-template-columns: 24px minmax(0, 1fr) auto !important;
  gap: 8px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--salon-line) !important;
  border-radius: 0 !important;
  background: var(--salon-paper) !important;
  padding: 6px 10px !important;
  box-shadow: none !important;
}

body.is-modern-salon.is-quiet-frame .social-mix-promo-mark {
  width: 24px;
  height: 24px;
  border-color: var(--salon-line-dark);
  color: var(--salon-muted);
}

body.is-modern-salon.is-quiet-frame .social-mix-promo-copy h2 {
  font-size: 0.82rem;
}

body.is-modern-salon.is-quiet-frame .social-mix-promo-copy > p:last-child,
body.is-modern-salon.is-quiet-frame .notification-item-copy > small {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
}

body.is-modern-salon.is-quiet-frame .social-mix-promo-actions {
  grid-column: 3 !important;
  width: auto !important;
}

body.is-modern-salon.is-quiet-frame .social-mix-promo-actions .primary-action,
body.is-modern-salon.is-quiet-frame .social-mix-promo-later {
  min-height: 44px;
  color: var(--salon-ink);
}

body.is-modern-salon.is-quiet-frame .social-mix-promo-later {
  display: none;
}

body.is-modern-salon.is-quiet-frame .notification-center {
  gap: 0;
  border: 0;
  border-bottom: 1px solid var(--salon-line);
  background: var(--salon-paper);
}

body.is-modern-salon.is-quiet-frame .notification-item,
body.is-modern-salon.is-quiet-frame .notification-item.is-social-mix,
body.is-modern-salon.is-quiet-frame .readiness-state-card {
  min-height: 52px !important;
  grid-template-columns: 20px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 7px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--salon-line) !important;
  border-radius: 0 !important;
  background: var(--salon-paper) !important;
  padding: 4px 10px !important;
  box-shadow: none !important;
}

body.is-modern-salon.is-quiet-frame .notification-item:last-child {
  border-bottom: 0 !important;
}

body.is-modern-salon.is-quiet-frame .notification-icon {
  width: 20px;
  height: 20px;
  border: 0;
  background: transparent;
  color: var(--salon-muted);
}

body.is-modern-salon.is-quiet-frame .notification-item-head {
  gap: 6px;
}

body.is-modern-salon.is-quiet-frame .notification-item strong {
  color: var(--salon-ink-soft);
  font-size: 0.8rem;
}

body.is-modern-salon.is-quiet-frame .notification-state-label {
  border: 0;
  background: transparent !important;
  color: var(--salon-muted) !important;
  font-size: 0.59rem;
}

body.is-modern-salon.is-quiet-frame .notification-item-action {
  grid-column: 3 !important;
  grid-row: 1 !important;
  min-height: 44px;
  border: 0;
  background: transparent;
  color: var(--salon-ink);
  padding-inline: 4px;
  white-space: nowrap;
}

body.is-modern-salon.is-quiet-frame .incoming-priority-section,
body.is-modern-salon.is-quiet-frame .incoming-waiting-section {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.is-modern-salon.is-quiet-frame .incoming-section-header,
body.is-modern-salon.is-quiet-frame .incoming-priority-section[open] > .incoming-section-header,
body.is-modern-salon.is-quiet-frame .incoming-waiting-section > .incoming-section-header {
  min-height: 58px;
  border: 0;
  border-top: 1px solid var(--salon-line);
  border-bottom: 1px solid var(--salon-line);
  background: transparent;
  padding: 9px 8px;
}

body.is-modern-salon.is-quiet-frame .incoming-priority-section[open] > .incoming-section-header {
  box-shadow: inset 3px 0 0 var(--salon-ink);
}

body.is-modern-salon.is-quiet-frame .incoming-section-header .response-disclosure-copy strong {
  font-size: 0.98rem;
}

body.is-modern-salon.is-quiet-frame .incoming-section-header .quiet-pill {
  border-color: var(--salon-line);
  color: var(--salon-ink-soft);
}

body.is-modern-salon.is-quiet-frame .response-disclosure-chevron {
  border-radius: 50% !important;
  background: #f1f3f5 !important;
  color: var(--salon-ink) !important;
}

body.is-modern-salon.is-quiet-frame .incoming-section-body {
  padding: 10px 0;
}

body.is-modern-salon.is-quiet-frame .find-controls-panel {
  border: 0 !important;
  border-bottom: 1px solid var(--salon-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
}

body.is-modern-salon.is-quiet-frame .find-filter-mark {
  border-color: var(--salon-line-dark);
  color: var(--salon-ink);
}

/* Invitation records: one strong identity field, then a quiet decision body. */
body.is-modern-salon.is-quiet-frame .invite-record[data-invite-signature] {
  border: 1px solid var(--salon-line-dark) !important;
  border-radius: 0 !important;
  background: var(--salon-paper) !important;
  box-shadow: var(--salon-shadow) !important;
}

body.is-modern-salon.is-quiet-frame .invite-record[data-invite-signature]:hover,
body.is-modern-salon.is-quiet-frame .invite-record[data-invite-signature]:focus-within {
  border-color: var(--salon-ink-soft) !important;
  box-shadow: var(--salon-shadow-raised) !important;
}

body.is-modern-salon.is-quiet-frame .invite-record[data-invite-signature] > .invite-record-identity,
body.is-modern-salon.is-quiet-frame .invite-record[data-invite-signature]:not(.is-completed) > .invite-record-identity {
  grid-template-columns: 82px minmax(0, 1fr);
  column-gap: 16px;
  min-height: 132px;
  border-bottom: 1px solid var(--salon-line);
  background: color-mix(in srgb, var(--invite-accent) 2.5%, white) !important;
  padding: 15px 15px 15px 0;
  box-shadow: inset 0 3px 0 var(--invite-accent);
}

body.is-modern-salon.is-quiet-frame .invite-record .invitation-seal {
  width: 82px;
  min-height: 102px;
  background: var(--invite-accent);
}

body.is-modern-salon.is-quiet-frame .invite-record-identity::after {
  display: none;
}

body.is-modern-salon.is-quiet-frame .invite-record-identity-copy > strong {
  font-size: 1.34rem;
  letter-spacing: -0.05em;
  line-height: 1.02;
}

body.is-modern-salon.is-quiet-frame .invite-record-identity-topline > span:first-child,
body.is-modern-salon.is-quiet-frame .invite-record-category,
body.is-modern-salon.is-quiet-frame .invite-record-category > span:last-child {
  letter-spacing: 0.13em;
}

body.is-modern-salon.is-quiet-frame .invite-record-state-pill,
body.is-modern-salon.is-quiet-frame .invite-record-status-pill {
  border: 0;
  border-radius: 0;
  background: transparent !important;
  color: var(--salon-ink-soft) !important;
  padding-inline: 0;
}

body.is-modern-salon.is-quiet-frame :where(
  .last-minute-receipt,
  .last-minute-note,
  .last-minute-list-receipt,
  .last-minute-timing-receipt
) {
  margin-inline: 10px !important;
  border: 0 !important;
  border-bottom: 1px solid #dfaaa3 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #a73225 !important;
  padding: 8px 2px !important;
  box-shadow: none !important;
}

body.is-modern-salon.is-quiet-frame .find-event-detail-row {
  margin-inline: 10px;
  border-top: 0;
  border-bottom: 1px solid var(--salon-line);
  padding-block: 9px;
}

body.is-modern-salon.is-quiet-frame .invite-record-review-action,
body.is-modern-salon.is-quiet-frame .invite-record-review-action.is-trip-linked,
body.is-modern-salon.is-quiet-frame .text-action,
body.is-modern-salon.is-quiet-frame .secondary-action {
  min-height: 44px;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--salon-ink) !important;
  padding-inline: 8px;
  box-shadow: none !important;
}

body.is-modern-salon.is-quiet-frame .find-event-action-row,
body.is-modern-salon.is-quiet-frame .guest-response-row.is-response-actions {
  margin-inline: 10px;
  border-top: 0;
  gap: 8px;
  padding-top: 8px;
}

body.is-modern-salon.is-quiet-frame .find-event-action-row button,
body.is-modern-salon.is-quiet-frame .guest-response-row.is-response-actions > button,
body.is-modern-salon.is-quiet-frame .invite-detail-actions > button {
  min-height: 48px;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body.is-modern-salon.is-quiet-frame .find-not-now-action,
body.is-modern-salon.is-quiet-frame .find-event-action-row > button:first-child,
body.is-modern-salon.is-quiet-frame .guest-response-row.is-response-actions > button:first-child {
  border: 1px solid var(--salon-line-dark) !important;
  background: var(--salon-paper) !important;
  color: var(--salon-ink-soft) !important;
}

body.is-modern-salon.is-quiet-frame .find-event-action-row > button:last-child,
body.is-modern-salon.is-quiet-frame .guest-response-row.is-response-actions > button:last-child,
body.is-modern-salon.is-quiet-frame .primary-action,
body.is-modern-salon.is-quiet-frame .confirm-button,
body.is-modern-salon.is-quiet-frame .profile-add-action {
  border: 1px solid var(--salon-ink) !important;
  background: var(--salon-ink) !important;
  color: white !important;
  box-shadow: none !important;
}

body.is-modern-salon.is-quiet-frame .home-command.is-primary {
  border: 1px solid var(--salon-ink) !important;
  border-radius: 0 !important;
  background: var(--salon-ink) !important;
  box-shadow: none !important;
}

body.is-modern-salon.is-quiet-frame .home-command.is-primary .action-icon {
  background: white;
  color: var(--salon-ink);
}

body.is-modern-salon.is-quiet-frame .sheet-panel,
body.is-modern-salon.is-quiet-frame .invite-detail-panel,
body.is-modern-salon.is-quiet-frame .invite-detail-hero.invitation-visual-surface[data-invite-signature],
body.is-modern-salon.is-quiet-frame .invite-detail-actions {
  border-radius: 0 !important;
}

body.is-modern-salon.is-quiet-frame .invite-detail-hero.invitation-visual-surface[data-invite-signature] {
  box-shadow: none !important;
}

body.is-modern-salon.is-quiet-frame .invite-detail-actions {
  box-shadow: 0 -8px 24px rgba(24, 26, 29, 0.08) !important;
}

body.is-modern-salon.is-quiet-frame :focus-visible {
  outline-color: rgba(24, 26, 29, 0.34);
}

@media (min-width: 901px) {
  body.is-modern-salon.is-quiet-frame.is-prototype-desktop .invite-record-identity-copy > strong {
    font-size: 1.44rem;
  }

  body.is-modern-salon.is-quiet-frame.is-prototype-desktop .screen-scroll:has(.root-tabs:not([hidden])) > .social-mix-promo:not([hidden]) {
    min-height: 54px !important;
  }
}

@media (max-width: 900px) {
  body.is-modern-salon.is-quiet-frame.is-prototype-mobile .app-nav.is-root-invitations,
  body.is-modern-salon.is-quiet-frame.is-prototype-mobile .root-tabs {
    border-radius: 0 !important;
  }

  body.is-modern-salon.is-quiet-frame .invite-record[data-invite-signature] > .invite-record-identity,
  body.is-modern-salon.is-quiet-frame .invite-record[data-invite-signature]:not(.is-completed) > .invite-record-identity {
    grid-template-columns: 76px minmax(0, 1fr);
    column-gap: 14px;
    min-height: 128px;
    padding-right: 12px;
  }

  body.is-modern-salon.is-quiet-frame .invite-record .invitation-seal {
    width: 76px;
  }
}

@media (max-width: 360px) {
  body.is-modern-salon.is-quiet-frame .notification-item,
  body.is-modern-salon.is-quiet-frame .notification-item:has(.notification-item-action) {
    grid-template-columns: 18px minmax(0, 1fr) auto !important;
    gap: 5px !important;
  }

  body.is-modern-salon.is-quiet-frame .notification-state-label {
    display: none;
  }

  body.is-modern-salon.is-quiet-frame .invite-record[data-invite-signature] > .invite-record-identity,
  body.is-modern-salon.is-quiet-frame .invite-record[data-invite-signature]:not(.is-completed) > .invite-record-identity {
    grid-template-columns: 64px minmax(0, 1fr);
    column-gap: 11px;
  }

  body.is-modern-salon.is-quiet-frame .invite-record .invitation-seal {
    width: 64px;
  }
}

/* Final live-review corrections: disclosure affordances belong to the row rather
   than a floating UI-kit pill, and the results heading stays in the same type
   system as the rest of the workspace. */
body.is-modern-salon.is-quiet-frame .find-results-summary strong {
  font-family: var(--salon-sans) !important;
  font-size: 1.28rem;
  font-weight: 500 !important;
  letter-spacing: -0.035em;
}

body.is-modern-salon.is-quiet-frame .invite-inline-disclosure > summary .disclosure-label,
body.is-modern-salon.is-quiet-frame .out-plan-disclosure > summary .disclosure-label,
body.is-modern-salon.is-quiet-frame .on-plan-disclosure > summary .disclosure-label,
body.is-modern-salon.is-quiet-frame .invitation-confidence-disclosure > summary .confidence-disclosure-label,
body.is-modern-salon.is-quiet-frame .out-person-disclosure > summary .out-person-disclosure-action,
body.is-modern-salon.is-quiet-frame .confirmed-plan-card.is-completed > summary .completed-plan-toggle,
body.is-modern-salon.is-quiet-frame .invite-town-picker > summary .invite-town-summary-action {
  min-width: 0;
  min-height: 44px;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 0 !important;
  gap: 5px;
  color: var(--salon-ink) !important;
  font-size: 0.72rem;
  font-weight: 500 !important;
  box-shadow: none !important;
}

body.is-modern-salon.is-quiet-frame .invite-inline-disclosure > summary .disclosure-label::after,
body.is-modern-salon.is-quiet-frame .out-plan-disclosure > summary .disclosure-label::after,
body.is-modern-salon.is-quiet-frame .on-plan-disclosure > summary .disclosure-label::after,
body.is-modern-salon.is-quiet-frame .invitation-confidence-disclosure > summary .confidence-disclosure-label::after,
body.is-modern-salon.is-quiet-frame .out-person-disclosure > summary .out-person-disclosure-action::after,
body.is-modern-salon.is-quiet-frame .confirmed-plan-card.is-completed > summary .completed-plan-toggle::after,
body.is-modern-salon.is-quiet-frame .invite-town-picker > summary .invite-town-summary-action::after {
  width: 18px;
  height: 18px;
  flex-basis: 18px;
  border-radius: 0;
  background-color: transparent !important;
  background-size: 14px 14px;
}

body.is-modern-salon.is-quiet-frame .invite-inline-disclosure > summary:hover .disclosure-label,
body.is-modern-salon.is-quiet-frame .out-plan-disclosure > summary:hover .disclosure-label,
body.is-modern-salon.is-quiet-frame .on-plan-disclosure > summary:hover .disclosure-label,
body.is-modern-salon.is-quiet-frame .invitation-confidence-disclosure > summary:hover .confidence-disclosure-label,
body.is-modern-salon.is-quiet-frame .out-person-disclosure > summary:hover .out-person-disclosure-action,
body.is-modern-salon.is-quiet-frame .confirmed-plan-card.is-completed > summary:hover .completed-plan-toggle,
body.is-modern-salon.is-quiet-frame .invite-town-picker > summary:hover .invite-town-summary-action {
  border-color: transparent !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Completed records use the prototype's intentionally compact 48px identity
   column. Keep the seal aligned to that column instead of the full-card width. */
body.is-modern-salon.is-quiet-frame .invite-record.is-completed .invitation-seal {
  width: 48px;
}

body.is-modern-salon.is-quiet-frame .review-invitation-label {
  font-weight: 500 !important;
}

body.is-modern-salon.is-quiet-frame .social-mix-promo-actions {
  display: flex !important;
  align-items: center;
  justify-content: flex-end;
  gap: 2px !important;
}

body.is-modern-salon.is-quiet-frame .social-mix-promo-actions .primary-action,
body.is-modern-salon.is-quiet-frame .social-mix-promo-later {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding-inline: 8px;
  font-size: 0 !important;
}

body.is-modern-salon.is-quiet-frame .social-mix-promo-actions .primary-action {
  min-width: 58px;
  border: 1px solid var(--salon-ink) !important;
  background: var(--salon-ink) !important;
  color: white !important;
}

body.is-modern-salon.is-quiet-frame .social-mix-promo-later {
  min-width: 48px;
  border: 0 !important;
  background: transparent !important;
  color: var(--salon-muted) !important;
}

body.is-modern-salon.is-quiet-frame .social-mix-promo-actions .primary-action::before,
body.is-modern-salon.is-quiet-frame .social-mix-promo-later::before {
  font-size: 0.72rem;
  font-weight: 500;
}

body.is-modern-salon.is-quiet-frame .social-mix-promo-actions .primary-action::before {
  content: "Start";
}

body.is-modern-salon.is-quiet-frame .social-mix-promo-later::before {
  content: "Later";
}

/* Apple Native v6 ---------------------------------------------------------
   Platform-inspired hierarchy and materials. This remains a presentation-only
   layer over the accepted Invite workflow and privacy stages. */
body.is-apple-native {
  --apple-blue: #007aff;
  --apple-blue-pressed: #0062cc;
  --apple-label: #1c1c1e;
  --apple-secondary: #6e6e73;
  --apple-tertiary: #8e8e93;
  --apple-separator: rgba(60, 60, 67, 0.18);
  --apple-opaque-separator: #c6c6c8;
  --apple-system-background: #f2f2f7;
  --apple-secondary-background: #ffffff;
  --apple-tertiary-background: #e5e5ea;
  --apple-fill: rgba(120, 120, 128, 0.12);
  --apple-fill-strong: rgba(120, 120, 128, 0.20);
  --apple-orange: #c93400;
  --salon-sans: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Helvetica Neue", Arial, sans-serif;
  background: #e5e5ea !important;
  color: var(--apple-label);
  font-family: var(--salon-sans) !important;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body.is-apple-native :where(button, input, select, textarea) {
  font-family: inherit;
}

body.is-apple-native .prototype-device-switch {
  border-bottom: 1px solid var(--apple-separator);
  background: rgba(250, 250, 252, 0.82) !important;
  backdrop-filter: saturate(180%) blur(18px);
  -webkit-backdrop-filter: saturate(180%) blur(18px);
}

body.is-apple-native .prototype-device-switch button.is-active {
  color: var(--apple-blue) !important;
  box-shadow: inset 0 -2px 0 var(--apple-blue) !important;
}

body.is-apple-native .app-shell {
  background: var(--apple-system-background) !important;
}

body.is-apple-native .compose-panel,
body.is-apple-native .screen-scroll {
  background: var(--apple-system-background) !important;
}

body.is-apple-native .app-nav.is-root-invitations {
  min-height: 88px;
  align-items: flex-end;
  border-bottom: 0 !important;
  background: rgba(242, 242, 247, 0.86) !important;
  padding: 22px 16px 8px !important;
  backdrop-filter: saturate(180%) blur(18px);
  -webkit-backdrop-filter: saturate(180%) blur(18px);
}

body.is-apple-native .app-nav .nav-status.is-navigation-title {
  justify-content: flex-start !important;
  color: var(--apple-label) !important;
  font-size: 2.12rem !important;
  font-weight: 600 !important;
  letter-spacing: -0.045em !important;
  line-height: 1;
}

body.is-apple-native .app-nav .nav-status.is-navigation-title::before {
  display: none !important;
}

body.is-apple-native .avatar-button {
  width: 44px;
  height: 44px;
  border: 0 !important;
  border-radius: 50% !important;
  background: var(--apple-label) !important;
  color: white !important;
  font-size: 0.88rem;
  font-weight: 500 !important;
  box-shadow: none !important;
}

body.is-apple-native .root-tabs {
  min-height: 38px !important;
  margin: 0 16px 12px !important;
  border: 0 !important;
  border-radius: 9px !important;
  background: var(--apple-fill) !important;
  padding: 2px !important;
  box-shadow: none !important;
}

body.is-apple-native .root-tab {
  min-height: 34px;
  border: 0 !important;
  border-radius: 7px !important;
  color: var(--apple-secondary) !important;
  font-size: 0.82rem;
  font-weight: 500 !important;
  box-shadow: none !important;
}

body.is-apple-native .root-tab svg {
  display: none;
}

body.is-apple-native .root-tab.is-active {
  background: white !important;
  color: var(--apple-label) !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.14) !important;
}

body.is-apple-native .notification-center {
  margin: 0 16px 12px !important;
  overflow: hidden;
  border: 0 !important;
  border-radius: 12px !important;
  background: white !important;
  box-shadow: none !important;
}

body.is-apple-native .notification-item,
body.is-apple-native .notification-item.is-social-mix,
body.is-apple-native .readiness-state-card {
  min-height: 54px !important;
  border-bottom: 1px solid var(--apple-separator) !important;
  background: white !important;
  padding: 5px 12px !important;
}

body.is-apple-native .notification-item:last-child {
  border-bottom: 0 !important;
}

body.is-apple-native .notification-icon {
  border: 0 !important;
  background: transparent !important;
  color: var(--apple-blue) !important;
}

body.is-apple-native .notification-item strong,
body.is-apple-native .notification-item-action {
  font-weight: 500 !important;
}

body.is-apple-native .notification-item-action {
  color: var(--apple-blue) !important;
}

body.is-apple-native .social-mix-promo {
  margin: 0 16px 12px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: white !important;
}

body.is-apple-native .social-mix-promo-actions .primary-action {
  border-color: var(--apple-blue) !important;
  border-radius: 9px !important;
  background: var(--apple-blue) !important;
}

body.is-apple-native .incoming-priority-section,
body.is-apple-native .incoming-waiting-section {
  margin: 0 16px 12px !important;
  overflow: hidden;
  border: 0 !important;
  border-radius: 12px !important;
  background: white !important;
  box-shadow: none !important;
}

body.is-apple-native .incoming-section-header,
body.is-apple-native .incoming-priority-section[open] > .incoming-section-header,
body.is-apple-native .incoming-waiting-section > .incoming-section-header {
  min-height: 58px;
  border: 0 !important;
  background: white !important;
  padding: 8px 12px !important;
  box-shadow: none !important;
}

body.is-apple-native .incoming-priority-section[open] > .incoming-section-header {
  border-bottom: 1px solid var(--apple-separator) !important;
}

body.is-apple-native .incoming-section-header .response-disclosure-copy strong {
  color: var(--apple-label);
  font-size: 0.98rem;
  font-weight: 500 !important;
}

body.is-apple-native .incoming-section-header .quiet-pill {
  border-color: var(--apple-separator) !important;
  background: var(--apple-system-background) !important;
  color: var(--apple-label) !important;
}

body.is-apple-native .response-disclosure-chevron {
  background: var(--apple-fill) !important;
  color: var(--apple-blue) !important;
}

body.is-apple-native .incoming-section-body {
  padding: 10px 0 2px !important;
  background: var(--apple-system-background);
}

body.is-apple-native .find-controls-panel {
  margin: 0 16px 14px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: white !important;
}

body.is-apple-native .find-filter-mark {
  border: 0 !important;
  border-radius: 8px !important;
  background: rgba(0, 122, 255, 0.12) !important;
  color: var(--apple-blue) !important;
}

body.is-apple-native .find-results-summary,
body.is-apple-native .find-list-head,
body.is-apple-native .list-group-head,
body.is-apple-native #homeView > section > header,
body.is-apple-native #onView > section > header {
  color: var(--apple-secondary);
}

body.is-apple-native .find-results-summary strong,
body.is-apple-native .find-list-head strong,
body.is-apple-native .list-group-head strong,
body.is-apple-native #homeView h2,
body.is-apple-native #onView h2 {
  color: var(--apple-label) !important;
  font-family: var(--salon-sans) !important;
  font-weight: 600 !important;
  letter-spacing: -0.035em;
}

body.is-apple-native .invite-record[data-invite-signature] {
  overflow: hidden;
  border: 1px solid var(--apple-separator) !important;
  border-radius: 16px !important;
  background: white !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.035) !important;
}

body.is-apple-native .invite-record[data-invite-signature]:hover,
body.is-apple-native .invite-record[data-invite-signature]:focus-within {
  border-color: rgba(0, 122, 255, 0.28) !important;
  box-shadow: 0 5px 18px rgba(0, 0, 0, 0.08) !important;
  transform: none !important;
}

body.is-apple-native .invite-record[data-invite-signature] > .invite-record-identity,
body.is-apple-native .invite-record[data-invite-signature]:not(.is-completed) > .invite-record-identity {
  grid-template-columns: 84px minmax(0, 1fr) !important;
  column-gap: 8px !important;
  min-height: 116px !important;
  border-top: 0 !important;
  background: linear-gradient(90deg, color-mix(in srgb, var(--invite-accent) 7%, white), white 72%) !important;
  padding: 0 12px 0 0 !important;
  box-shadow: inset 4px 0 0 var(--invite-accent) !important;
}

body.is-apple-native .invite-record .invitation-seal {
  width: 62px !important;
  height: 62px !important;
  align-self: center;
  justify-self: center;
  border-radius: 14px !important;
  background: var(--invite-accent) !important;
  color: white !important;
}

body.is-apple-native .invite-record .invitation-seal::after {
  opacity: 0.12;
}

body.is-apple-native .invite-record-identity-copy {
  gap: 3px;
  align-self: center;
}

body.is-apple-native .invite-record-identity-copy > strong {
  color: var(--apple-label) !important;
  font-size: 1.26rem !important;
  font-weight: 600 !important;
  letter-spacing: -0.035em !important;
  line-height: 1.06;
}

body.is-apple-native .invite-record-identity-topline,
body.is-apple-native .invite-record-meta,
body.is-apple-native .invite-record-area {
  font-weight: 400 !important;
}

body.is-apple-native .invite-record-identity-topline > span:first-child,
body.is-apple-native .invite-record-category,
body.is-apple-native .invite-record-category > span:last-child {
  color: color-mix(in srgb, var(--invite-accent) 80%, #1c1c1e) !important;
}

body.is-apple-native .invite-record-state-pill,
body.is-apple-native .invite-record-status-pill {
  border: 0 !important;
  background: transparent !important;
  color: var(--apple-secondary) !important;
  padding: 0 !important;
  font-weight: 500 !important;
}

body.is-apple-native :where(
  .last-minute-receipt,
  .last-minute-note,
  .last-minute-list-receipt,
  .last-minute-timing-receipt
) {
  margin-inline: 12px !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(201, 52, 0, 0.32) !important;
  background: white !important;
  color: var(--apple-orange) !important;
  box-shadow: none !important;
}

body.is-apple-native .find-event-detail-row,
body.is-apple-native .invite-inline-disclosure {
  margin-inline: 12px !important;
  border-color: var(--apple-separator) !important;
}

body.is-apple-native .find-event-action-row,
body.is-apple-native .guest-response-row.is-response-actions {
  margin-inline: 12px !important;
  gap: 8px !important;
}

body.is-apple-native .find-event-action-row button,
body.is-apple-native .guest-response-row.is-response-actions > button,
body.is-apple-native .invite-detail-actions > button,
body.is-apple-native .review-confirmation-button,
body.is-apple-native .select-guest-action {
  min-height: 48px;
  border-radius: 12px !important;
  font-weight: 500 !important;
}

body.is-apple-native .find-event-action-row > button:first-child,
body.is-apple-native .guest-response-row.is-response-actions > button:first-child,
body.is-apple-native .find-not-now-action,
body.is-apple-native .secondary-action {
  border: 0 !important;
  background: var(--apple-fill) !important;
  color: var(--apple-label) !important;
}

body.is-apple-native .find-event-action-row > button:last-child,
body.is-apple-native .guest-response-row.is-response-actions > button:last-child,
body.is-apple-native .primary-action,
body.is-apple-native .confirm-button,
body.is-apple-native .review-confirmation-button,
body.is-apple-native .select-guest-action {
  border-color: var(--apple-blue) !important;
  background: var(--apple-blue) !important;
  color: white !important;
  box-shadow: none !important;
}

body.is-apple-native .find-event-action-row > button:last-child:hover,
body.is-apple-native .guest-response-row.is-response-actions > button:last-child:hover,
body.is-apple-native .primary-action:hover,
body.is-apple-native .confirm-button:hover {
  background: var(--apple-blue-pressed) !important;
}

body.is-apple-native .text-action,
body.is-apple-native .invite-record-review-action,
body.is-apple-native .notification-item-action {
  color: var(--apple-blue) !important;
}

body.is-apple-native .person-timer {
  border-color: var(--apple-separator) !important;
  border-radius: 999px !important;
  background: white !important;
  color: var(--apple-secondary) !important;
}

body.is-apple-native .home-command.is-primary {
  border: 0 !important;
  border-radius: 14px !important;
  background: var(--apple-blue) !important;
  color: white !important;
  box-shadow: none !important;
}

body.is-apple-native .home-command.is-primary .action-icon {
  border-radius: 9px !important;
  background: white !important;
  color: var(--apple-blue) !important;
}

body.is-apple-native .sheet-backdrop,
body.is-apple-native .invite-detail-backdrop {
  background: rgba(0, 0, 0, 0.24) !important;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}

body.is-apple-native .sheet-panel,
body.is-apple-native .invite-detail-panel {
  border-radius: 22px 22px 0 0 !important;
  background: var(--apple-system-background) !important;
  box-shadow: 0 -8px 30px rgba(0, 0, 0, 0.16) !important;
}

body.is-apple-native .invite-detail-close,
body.is-apple-native .sheet-close {
  border: 0 !important;
  border-radius: 50% !important;
  background: rgba(242, 242, 247, 0.92) !important;
  color: var(--apple-label) !important;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

body.is-apple-native .invite-detail-hero.invitation-visual-surface[data-invite-signature] {
  border-radius: 16px !important;
  box-shadow: none !important;
}

body.is-apple-native .invite-detail-actions {
  border-top: 1px solid var(--apple-separator) !important;
  border-radius: 0 !important;
  background: rgba(250, 250, 252, 0.88) !important;
  box-shadow: none !important;
  backdrop-filter: saturate(180%) blur(18px);
  -webkit-backdrop-filter: saturate(180%) blur(18px);
}

body.is-apple-native :focus-visible {
  outline: 3px solid rgba(0, 122, 255, 0.38) !important;
  outline-offset: 2px;
}

@media (min-width: 901px) {
  body.is-apple-native .app-shell {
    max-width: 1180px;
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 16px 16px 0 0;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.12);
  }

  body.is-apple-native.is-prototype-desktop .app-nav.is-root-invitations {
    min-height: 76px;
    padding-inline: 28px !important;
  }

  body.is-apple-native.is-prototype-desktop .screen-scroll:has(.root-tabs:not([hidden])) > .root-tabs {
    margin: 0 !important;
    border-right: 1px solid var(--apple-separator) !important;
    border-radius: 0 !important;
    background: rgba(242, 242, 247, 0.78) !important;
    padding: 12px 10px !important;
  }

  body.is-apple-native.is-prototype-desktop .root-tab {
    min-height: 48px;
    border-radius: 10px !important;
  }

  body.is-apple-native.is-prototype-desktop .root-tab.is-active {
    color: var(--apple-blue) !important;
  }

  body.is-apple-native.is-prototype-desktop .invite-record-identity-copy > strong {
    font-size: 1.34rem !important;
  }
}

@media (max-width: 360px) {
  body.is-apple-native .app-nav .nav-status.is-navigation-title {
    font-size: 1.92rem !important;
  }

  body.is-apple-native .invite-record[data-invite-signature] > .invite-record-identity,
  body.is-apple-native .invite-record[data-invite-signature]:not(.is-completed) > .invite-record-identity {
    grid-template-columns: 72px minmax(0, 1fr) !important;
  }

  body.is-apple-native .invite-record .invitation-seal {
    width: 54px !important;
    height: 54px !important;
    border-radius: 12px !important;
  }
}

/* Cascade corrections over the inherited Quiet Frame experiment. */
body.is-modern-salon.is-quiet-frame.is-apple-native .app-nav.is-root-invitations {
  grid-template-columns: minmax(0, 1fr) auto !important;
  border-radius: 0 !important;
  background: rgba(242, 242, 247, 0.86) !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native .app-nav .nav-status.is-navigation-title {
  grid-column: 1;
  justify-items: start !important;
  justify-self: start !important;
  text-align: left !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native .workspace-toolbar-actions {
  grid-column: 2;
}

body.is-modern-salon.is-quiet-frame.is-apple-native .root-tabs {
  border-radius: 9px !important;
  background: var(--apple-fill) !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native .root-tab.is-active {
  border-radius: 7px !important;
  background: white !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.14) !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native .social-mix-promo,
body.is-modern-salon.is-quiet-frame.is-apple-native .notification-center,
body.is-modern-salon.is-quiet-frame.is-apple-native .incoming-priority-section,
body.is-modern-salon.is-quiet-frame.is-apple-native .incoming-waiting-section,
body.is-modern-salon.is-quiet-frame.is-apple-native .find-controls-panel {
  border-radius: 12px !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native .social-mix-promo-actions .primary-action {
  border-color: var(--apple-blue) !important;
  border-radius: 9px !important;
  background: var(--apple-blue) !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native .invite-record[data-invite-signature] {
  border: 1px solid var(--apple-separator) !important;
  border-radius: 16px !important;
  background: white !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.035) !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native .find-event-action-row > button,
body.is-modern-salon.is-quiet-frame.is-apple-native .guest-response-row.is-response-actions > button,
body.is-modern-salon.is-quiet-frame.is-apple-native .invite-detail-actions > button,
body.is-modern-salon.is-quiet-frame.is-apple-native .review-confirmation-button,
body.is-modern-salon.is-quiet-frame.is-apple-native .select-guest-action {
  border-radius: 12px !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native .find-event-action-row > button:last-child,
body.is-modern-salon.is-quiet-frame.is-apple-native .guest-response-row.is-response-actions > button:last-child,
body.is-modern-salon.is-quiet-frame.is-apple-native .primary-action,
body.is-modern-salon.is-quiet-frame.is-apple-native .confirm-button,
body.is-modern-salon.is-quiet-frame.is-apple-native .review-confirmation-button,
body.is-modern-salon.is-quiet-frame.is-apple-native .select-guest-action {
  border-color: var(--apple-blue) !important;
  background: var(--apple-blue) !important;
  color: white !important;
  box-shadow: none !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native .find-event-action-row > button:first-child,
body.is-modern-salon.is-quiet-frame.is-apple-native .guest-response-row.is-response-actions > button:first-child,
body.is-modern-salon.is-quiet-frame.is-apple-native .find-not-now-action,
body.is-modern-salon.is-quiet-frame.is-apple-native .secondary-action {
  border: 0 !important;
  border-radius: 12px !important;
  background: var(--apple-fill) !important;
  color: var(--apple-label) !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native .inline-action.is-selected,
body.is-modern-salon.is-quiet-frame.is-apple-native .profile-add-action {
  border-color: var(--apple-blue) !important;
  border-radius: 12px !important;
  background: var(--apple-blue) !important;
  color: white !important;
  box-shadow: none !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native .invite-detail-hero.invitation-visual-surface[data-invite-signature] {
  border-radius: 16px !important;
}

@media (max-width: 900px) {
  body.is-modern-salon.is-quiet-frame.is-apple-native .app-shell {
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  body.is-modern-salon.is-quiet-frame.is-apple-native .compose-panel {
    padding: 0 !important;
    box-shadow: none !important;
  }

  body.is-modern-salon.is-quiet-frame.is-apple-native .home-command.is-primary {
    width: calc(100% - 32px) !important;
    margin: 0 16px 14px !important;
    border: 0 !important;
    border-radius: 14px !important;
    background: white !important;
    color: var(--apple-label) !important;
    grid-template-columns: 28px minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    column-gap: 12px !important;
    row-gap: 1px !important;
    padding: 10px 8px !important;
    box-shadow: none !important;
  }

  body.is-modern-salon.is-quiet-frame.is-apple-native .home-command.is-primary .action-icon {
    grid-row: 1 / 3;
    border-radius: 9px !important;
    background: var(--apple-blue) !important;
    color: white !important;
  }

  body.is-modern-salon.is-quiet-frame.is-apple-native .home-command.is-primary small {
    color: var(--apple-secondary) !important;
  }

  body.is-modern-salon.is-quiet-frame.is-apple-native #homeView .section-head,
  body.is-modern-salon.is-quiet-frame.is-apple-native #onView .section-head {
    padding-inline: 16px !important;
  }

  body.is-modern-salon.is-quiet-frame.is-apple-native #homeView .event-list,
  body.is-modern-salon.is-quiet-frame.is-apple-native #onView .event-list {
    padding-inline: 16px !important;
  }
}

/* Apple Reserved v7 -------------------------------------------------------
   Remove the rejected colored-tile, accent-rail, and split-color hero system.
   Invitation identity is now typographic with a quiet geometric watermark. */
body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-record[data-invite-signature] {
  border-color: rgba(60, 60, 67, 0.16) !important;
  background: white !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.025) !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-record[data-invite-signature]:hover,
body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-record[data-invite-signature]:focus-within {
  border-color: rgba(60, 60, 67, 0.24) !important;
  box-shadow: 0 5px 18px rgba(0, 0, 0, 0.065) !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-record[data-invite-signature] > .invite-record-identity,
body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-record[data-invite-signature]:not(.is-completed) > .invite-record-identity {
  grid-template-columns: 40px minmax(0, 1fr) !important;
  column-gap: 10px !important;
  min-height: 108px !important;
  border-top: 0 !important;
  border-bottom: 1px solid var(--apple-separator) !important;
  background: color-mix(in srgb, var(--invite-accent) 1.35%, white) !important;
  padding: 12px 14px 12px 10px !important;
  box-shadow: none !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-record .invitation-seal {
  width: 32px !important;
  height: 42px !important;
  min-height: 42px !important;
  align-self: center;
  justify-self: center;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #737378 !important;
  box-shadow: none !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-record .invitation-seal::after,
body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-record .invitation-seal::before,
body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-record .invitation-seal .invite-signature-mark {
  display: none !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-record .invitation-seal .event-category-icon,
body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-record[data-invite-signature] .event-category-icon {
  width: 28px !important;
  height: 28px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #737378 !important;
  box-shadow: none !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-record-identity[data-invite-signature]::before {
  right: -30px !important;
  bottom: -28px !important;
  width: min(42%, 180px) !important;
  height: calc(100% + 28px) !important;
  opacity: 0.10 !important;
  filter: grayscale(1) contrast(0.72) !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-record-identity-copy > strong {
  font-size: 1.25rem !important;
  font-weight: 600 !important;
  letter-spacing: -0.034em !important;
  line-height: 1.08 !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-record-identity-topline > span:first-child,
body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-record-category,
body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-record-category > span:last-child {
  color: #69696e !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-detail-hero.invitation-visual-surface[data-invite-signature] {
  grid-template-columns: 38px minmax(0, 1fr) !important;
  min-height: 208px !important;
  overflow: hidden;
  border: 1px solid var(--apple-separator) !important;
  border-top: 1px solid var(--apple-separator) !important;
  border-radius: 16px !important;
  background: color-mix(in srgb, var(--invite-accent) 1.25%, white) !important;
  color: var(--apple-label) !important;
  padding: 28px 24px !important;
  box-shadow: none !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-detail-hero[data-invite-signature]::after {
  inset: auto -34px -46px auto !important;
  width: 220px !important;
  height: 220px !important;
  opacity: 0.075 !important;
  filter: grayscale(1) contrast(0.65) !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-detail-seal {
  width: 32px !important;
  height: 44px !important;
  min-height: 44px !important;
  align-self: start;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #737378 !important;
  box-shadow: none !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-detail-seal .event-category-icon {
  width: 30px !important;
  height: 30px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #737378 !important;
  box-shadow: none !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-detail-seal .invite-signature-mark {
  display: none !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-detail-seal::before,
body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-detail-seal::after {
  display: none !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-detail-hero h2 {
  max-width: 100% !important;
  color: var(--apple-label) !important;
  font-size: clamp(2rem, 9vw, 2.8rem) !important;
  font-weight: 600 !important;
  letter-spacing: -0.052em !important;
  line-height: 0.98 !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-detail-hero .invite-detail-category,
body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-detail-hero .invite-detail-category > span,
body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-detail-hero p {
  color: var(--apple-secondary) !important;
}

@media (max-width: 360px) {
  body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-record[data-invite-signature] > .invite-record-identity,
  body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-record[data-invite-signature]:not(.is-completed) > .invite-record-identity {
    grid-template-columns: 34px minmax(0, 1fr) !important;
    column-gap: 8px !important;
    padding-inline: 8px 11px !important;
  }

  body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-record .invitation-seal {
    width: 26px !important;
  }

  body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved .invite-record .invitation-seal .event-category-icon {
    width: 24px !important;
    height: 24px !important;
  }
}

/* Invitation Object v8 ---------------------------------------------------
   The workspace remains native and quiet; the Invite face becomes a composed,
   paper-like private invitation rather than another application card. */
body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record[data-invite-signature] {
  border-color: rgba(60, 60, 67, 0.15) !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  box-shadow: 0 2px 7px rgba(0, 0, 0, 0.045) !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record[data-invite-signature] > .invite-record-identity,
body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record[data-invite-signature]:not(.is-completed) > .invite-record-identity {
  display: grid !important;
  grid-template-columns: 1fr !important;
  grid-template-rows: auto !important;
  min-height: 166px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--apple-separator) !important;
  background: linear-gradient(180deg, #ffffff 0%, #fcfcfd 100%) !important;
  padding: 30px 22px 24px !important;
  text-align: center;
  box-shadow: none !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record .invitation-seal {
  position: absolute !important;
  top: 17px;
  left: 18px;
  z-index: 2;
  width: 26px !important;
  height: 26px !important;
  min-height: 26px !important;
  margin: 0 !important;
  color: #77777c !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record .invitation-seal .event-category-icon {
  width: 24px !important;
  height: 24px !important;
  color: #77777c !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record-identity-copy {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 292px;
  min-height: 112px;
  margin-inline: auto;
  display: grid !important;
  justify-items: center;
  align-content: center;
  gap: 5px !important;
  text-align: center;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record-identity-copy::before {
  content: "Private invitation";
  color: #8a8a90;
  font-size: 0.56rem;
  font-weight: 500;
  letter-spacing: 0.18em;
  line-height: 1;
  text-transform: uppercase;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record-identity-topline {
  width: 100%;
  min-height: 14px;
  display: flex !important;
  justify-content: center !important;
  text-align: center;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record-state-group {
  position: absolute;
  top: -14px;
  right: -2px;
  width: max-content !important;
  max-width: none !important;
  justify-content: flex-end;
  text-align: right;
  white-space: nowrap;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record-state-pill,
body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record-status-pill {
  white-space: nowrap;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record-category {
  justify-content: center !important;
  color: #626267 !important;
  font-size: 0.63rem !important;
  letter-spacing: 0.16em !important;
  text-align: center;
  text-transform: uppercase;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record-identity-copy > strong {
  max-width: 278px;
  margin-top: 5px;
  color: var(--apple-label) !important;
  font-size: 1.48rem !important;
  font-weight: 600 !important;
  letter-spacing: -0.045em !important;
  line-height: 1.04 !important;
  text-wrap: balance;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record-meta {
  margin-top: 4px;
  color: #55555a !important;
  font-size: 0.78rem !important;
  font-weight: 500 !important;
  letter-spacing: -0.006em;
  text-align: center;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record-identity-support,
body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record-identity-support > * {
  justify-content: center !important;
  text-align: center;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record-identity[data-invite-signature]::before {
  right: 50% !important;
  bottom: -44px !important;
  width: 210px !important;
  height: 210px !important;
  opacity: 0.075 !important;
  filter: grayscale(1) contrast(0.62) !important;
  transform: translateX(50%) scale(1) !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-detail-hero.invitation-visual-surface[data-invite-signature] {
  display: grid !important;
  grid-template-columns: 1fr !important;
  min-height: 260px !important;
  align-content: center;
  border-color: rgba(60, 60, 67, 0.15) !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, #ffffff 0%, #fbfbfc 100%) !important;
  padding: 42px 28px 34px !important;
  text-align: center;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-detail-seal {
  position: absolute !important;
  top: 22px;
  left: 22px;
  z-index: 2;
  width: 28px !important;
  height: 28px !important;
  min-height: 28px !important;
  color: #77777c !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-detail-seal .event-category-icon {
  width: 26px !important;
  height: 26px !important;
  color: #77777c !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-detail-hero > div {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 430px;
  margin-inline: auto;
  display: grid;
  justify-items: center;
  gap: 6px;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-detail-hero > div::before {
  content: "Private invitation";
  color: #8a8a90;
  font-size: 0.58rem;
  font-weight: 500;
  letter-spacing: 0.2em;
  line-height: 1;
  text-transform: uppercase;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-detail-hero .invite-detail-category {
  margin: 3px 0 0 !important;
  color: #626267 !important;
  font-size: 0.64rem !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-detail-hero h2 {
  max-width: 390px !important;
  margin: 8px auto 2px;
  font-size: clamp(2.2rem, 10vw, 3.1rem) !important;
  font-weight: 600 !important;
  letter-spacing: -0.058em !important;
  line-height: 0.96 !important;
  text-wrap: balance;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-detail-hero p:last-child {
  color: #55555a !important;
  font-size: 0.84rem !important;
  font-weight: 500 !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-detail-hero[data-invite-signature]::after {
  inset: auto 50% -72px auto !important;
  width: 260px !important;
  height: 260px !important;
  opacity: 0.07 !important;
  filter: grayscale(1) contrast(0.62) !important;
  transform: translateX(50%) scale(1) !important;
}

/* Past records are compact invitation receipts, not compressed full-size faces. */
body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record.is-completed > summary .invite-record-identity {
  display: grid !important;
  grid-template-columns: 30px minmax(0, 1fr) !important;
  column-gap: 10px !important;
  min-height: 126px !important;
  padding: 24px 14px 18px !important;
  text-align: left !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record.is-completed .invitation-seal {
  position: static !important;
  align-self: start;
  width: 26px !important;
  height: 26px !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record.is-completed .invite-record-identity-copy {
  max-width: none;
  min-height: 0;
  margin: 0;
  justify-items: start !important;
  align-content: start;
  gap: 4px !important;
  text-align: left !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record.is-completed .invite-record-identity-copy::before {
  font-size: 0.52rem;
  letter-spacing: 0.16em;
  text-align: left;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record.is-completed .invite-record-identity-topline {
  justify-content: space-between !important;
  text-align: left;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record.is-completed .invite-record-state-group {
  position: static;
  max-width: 58%;
  justify-content: flex-end;
  text-align: right;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record.is-completed .invite-record-category {
  justify-content: flex-start !important;
  text-align: left;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record.is-completed .invite-record-identity-copy > strong {
  max-width: none;
  margin-top: 3px;
  font-size: 1.28rem !important;
  text-align: left;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record.is-completed .invite-record-meta,
body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record.is-completed .invite-record-identity-support,
body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record.is-completed .invite-record-identity-support > * {
  justify-content: flex-start !important;
  text-align: left !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .on-invite-record.is-upcoming .invite-record-identity-copy {
  padding-top: 10px;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .on-invite-record.is-upcoming .invite-record-state-group {
  top: -22px;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .mutual-confirmation-seal.is-header {
  width: 26px !important;
  height: 26px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #737378 !important;
  box-shadow: none !important;
}

body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .mutual-confirmation-seal.is-header svg,
body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .mutual-confirmation-seal.is-header path {
  color: #737378 !important;
  stroke: currentColor !important;
}

@media (max-width: 360px) {
  body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record[data-invite-signature] > .invite-record-identity,
  body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record[data-invite-signature]:not(.is-completed) > .invite-record-identity {
    min-height: 158px !important;
    padding: 30px 16px 22px !important;
  }

  body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record-identity-copy > strong {
    font-size: 1.34rem !important;
  }

  body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object .invite-record-state-group {
    max-width: none !important;
  }
}

/* Traditional Invitation System v10 ------------------------------------
   System-wide extension of the traditional invitation direction. The app
   frame stays cool and operational; Invite faces carry the ceremony. */
body.is-traditional-invitation-system {
  --system-canvas: #f3f3f6;
  --system-paper: #ffffff;
  --system-ink: #19191c;
  --system-copy: #444448;
  --system-muted: #747479;
  --system-faint: #929297;
  --system-line: rgba(60, 60, 67, 0.15);
  --system-line-strong: rgba(60, 60, 67, 0.22);
  --system-fill: #f1f2f6;
  --system-action: #087cff;
  --system-action-pressed: #0068db;
  background: #e8e9ed !important;
  color: var(--system-ink);
}

body.is-traditional-invitation-system .app-shell,
body.is-traditional-invitation-system .compose-panel,
body.is-traditional-invitation-system .screen-scroll {
  background: var(--system-canvas) !important;
}

body.is-traditional-invitation-system :where(
  .section-head h2,
  .account-card-head h2,
  .journey-card-head h2,
  .operations-screen-heading h2,
  .panel-head h2,
  .find-results-summary strong,
  .find-list-head strong,
  .list-group-head strong,
  .on-section-heading strong
) {
  color: var(--system-ink) !important;
  font-weight: 500 !important;
  letter-spacing: -0.025em !important;
}

body.is-traditional-invitation-system :where(
  button,
  input,
  select,
  textarea,
  .section-toggle,
  .disclosure-label
) {
  font-weight: 400;
}

body.is-traditional-invitation-system :where(
  .primary-action,
  .profile-add-action,
  .confirm-button,
  .review-confirmation-button,
  .select-guest-action
) {
  font-weight: 500 !important;
}

/* Root workspace ------------------------------------------------------- */
body.is-traditional-invitation-system .app-nav.is-root-invitations {
  border-bottom-color: var(--system-line) !important;
  background: rgba(243, 243, 246, 0.9) !important;
}

body.is-traditional-invitation-system .app-nav .nav-status.is-navigation-title {
  color: var(--system-ink) !important;
  font-weight: 600 !important;
  letter-spacing: -0.055em !important;
}

body.is-traditional-invitation-system .root-tabs {
  border: 1px solid var(--system-line) !important;
  background: #e8e9ed !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system .root-tab {
  color: #626267 !important;
  font-weight: 400 !important;
}

body.is-traditional-invitation-system .root-tab.is-active {
  color: var(--system-ink) !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.09) !important;
}

body.is-traditional-invitation-system .avatar-button {
  background: var(--system-ink) !important;
  font-weight: 500 !important;
}

/* Quiet utilities and notices ---------------------------------------- */
body.is-traditional-invitation-system :where(
  .social-mix-promo,
  .notification-center,
  .readiness-state-card
) {
  border: 1px solid var(--system-line) !important;
  border-radius: 15px !important;
  background: var(--system-paper) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system :where(
  .notification-item,
  .social-mix-promo
) {
  color: var(--system-copy) !important;
}

body.is-traditional-invitation-system :where(
  .notification-item-mark,
  .social-mix-promo-mark,
  .notice-card-icon
) {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--system-muted) !important;
  box-shadow: none !important;
}

/* One section-header system ------------------------------------------ */
body.is-traditional-invitation-system .incoming-response-stack {
  overflow: hidden;
  border: 1px solid var(--system-line) !important;
  border-radius: 16px !important;
  background: var(--system-paper) !important;
}

body.is-traditional-invitation-system .incoming-priority-section,
body.is-traditional-invitation-system .incoming-waiting-section {
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system .incoming-priority-section + .incoming-waiting-section {
  border-top: 1px solid var(--system-line) !important;
}

body.is-traditional-invitation-system .incoming-section-header {
  grid-template-columns: minmax(0, 1fr) auto !important;
  min-height: 70px !important;
  gap: 16px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: var(--system-paper) !important;
  padding: 14px 16px !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system .response-disclosure-mark,
body.is-traditional-invitation-system .find-filter-mark {
  display: none !important;
}

body.is-traditional-invitation-system .incoming-section-header .response-disclosure-copy {
  grid-column: 1;
}

body.is-traditional-invitation-system .incoming-section-header .response-disclosure-copy strong {
  color: var(--system-ink) !important;
  font-size: 0.98rem !important;
  font-weight: 500 !important;
  letter-spacing: -0.018em !important;
}

body.is-traditional-invitation-system .incoming-section-header .response-disclosure-copy small,
body.is-traditional-invitation-system .find-filter-summary-copy small {
  margin-top: 3px;
  color: var(--system-muted) !important;
  font-size: 0.7rem !important;
  font-weight: 400 !important;
}

body.is-traditional-invitation-system .incoming-section-toggle {
  grid-column: 2;
  gap: 10px !important;
}

body.is-traditional-invitation-system .incoming-section-header .quiet-pill,
body.is-traditional-invitation-system .section-head .quiet-pill,
body.is-traditional-invitation-system .find-list-head .quiet-pill,
body.is-traditional-invitation-system .list-group-head .quiet-pill {
  min-width: 0 !important;
  min-height: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--system-muted) !important;
  padding: 0 !important;
  font-size: 0.7rem !important;
  font-weight: 400 !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system .incoming-section-header .quiet-pill {
  color: var(--system-ink) !important;
  font-variant-numeric: tabular-nums;
}

body.is-traditional-invitation-system .incoming-section-body {
  border-top: 1px solid var(--system-line) !important;
  background: #f8f8fa !important;
  padding-top: 12px !important;
}

body.is-traditional-invitation-system .section-head,
body.is-traditional-invitation-system .find-results-summary,
body.is-traditional-invitation-system .find-list-head,
body.is-traditional-invitation-system .list-group-head {
  min-height: 52px;
  align-items: end !important;
  border: 0 !important;
  border-bottom: 1px solid var(--system-line) !important;
  background: transparent !important;
  padding-block: 10px 9px !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system .section-head h2,
body.is-traditional-invitation-system .find-results-summary strong {
  font-size: 1.15rem !important;
}

body.is-traditional-invitation-system .find-results-summary .screen-metric,
body.is-traditional-invitation-system .list-group-head small,
body.is-traditional-invitation-system .find-list-head small {
  color: var(--system-muted) !important;
  font-size: 0.7rem !important;
  font-weight: 400 !important;
}

body.is-traditional-invitation-system .find-controls-panel {
  overflow: hidden;
  border: 1px solid var(--system-line) !important;
  border-radius: 16px !important;
  background: var(--system-paper) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system .find-filter-summary {
  grid-template-columns: minmax(0, 1fr) auto auto !important;
  min-height: 70px !important;
  border: 0 !important;
  background: var(--system-paper) !important;
  padding: 14px 16px !important;
}

body.is-traditional-invitation-system .find-filter-summary-copy {
  grid-column: 1;
}

body.is-traditional-invitation-system .find-filter-summary-copy strong {
  color: var(--system-ink) !important;
  font-size: 0.98rem !important;
  font-weight: 500 !important;
}

body.is-traditional-invitation-system .find-filter-title-row > span {
  border: 0 !important;
  background: transparent !important;
  color: var(--system-muted) !important;
}

/* Invite objects ------------------------------------------------------ */
body.is-traditional-invitation-system .invite-record[data-invite-signature] {
  border-color: var(--system-line-strong) !important;
  border-radius: 18px !important;
  background: var(--system-paper) !important;
  box-shadow:
    0 1px 2px rgba(0, 0, 0, 0.025),
    0 8px 24px rgba(0, 0, 0, 0.04) !important;
}

body.is-traditional-invitation-system .invite-record[data-invite-signature]:hover,
body.is-traditional-invitation-system .invite-record[data-invite-signature]:focus-within {
  border-color: rgba(60, 60, 67, 0.28) !important;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.07) !important;
}

body.is-traditional-invitation-system .uses-traditional-invitation-face {
  overflow: hidden;
}

body.is-traditional-invitation-system .uses-traditional-invitation-face .invite-inline-disclosure {
  margin-inline: 14px !important;
}

body.is-traditional-invitation-system .uses-traditional-invitation-face .guest-response-row.is-traditional-rsvp {
  grid-template-columns: auto minmax(0, 1fr) minmax(0, 1.15fr) !important;
  gap: 8px !important;
  padding-top: 14px !important;
}

body.is-traditional-invitation-system .uses-traditional-invitation-face .traditional-rsvp-heading {
  grid-column: 1 / -1;
}

body.is-traditional-invitation-system .invite-record-identity,
body.is-traditional-invitation-system .traditional-invitation-face,
body.is-traditional-invitation-system .invite-detail-hero {
  background: linear-gradient(180deg, #ffffff 0%, #fdfdfe 100%) !important;
}

body.is-traditional-invitation-system .invite-record-identity[data-invite-signature]::before,
body.is-traditional-invitation-system .invite-detail-hero[data-invite-signature]::after {
  opacity: 0.045 !important;
  filter: grayscale(1) contrast(0.55) !important;
}

body.is-traditional-invitation-system .invite-record-category,
body.is-traditional-invitation-system .invite-record-meta,
body.is-traditional-invitation-system .invite-record-state-pill,
body.is-traditional-invitation-system .invite-record-status-pill {
  color: var(--system-muted) !important;
}

body.is-traditional-invitation-system .invite-record-identity-copy > strong {
  color: var(--system-ink) !important;
  font-weight: 500 !important;
}

body.is-traditional-invitation-system .invitation-seal,
body.is-traditional-invitation-system .event-category-icon {
  color: var(--system-muted) !important;
}

body.is-traditional-invitation-system .mutual-confirmation-seal,
body.is-traditional-invitation-system .mutual-confirmation-seal.is-header,
body.is-traditional-invitation-system .mutual-confirmation-seal.is-summary {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--system-muted) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system .confirmed-plan-card.is-completed,
body.is-traditional-invitation-system .confirmed-plan-card.is-completed > summary,
body.is-traditional-invitation-system .confirmed-plan-card.is-completed .invite-record-identity {
  background: var(--system-paper) !important;
}

body.is-traditional-invitation-system :where(
  .invite-inline-disclosure,
  .out-plan-disclosure,
  .on-plan-disclosure
) > summary {
  color: var(--system-copy) !important;
}

body.is-traditional-invitation-system :where(
  .last-minute-receipt,
  .last-minute-note,
  .last-minute-list-receipt,
  .last-minute-timing-receipt,
  .recurring-series-receipt,
  .platform-invite-badge
) {
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Actions ------------------------------------------------------------- */
body.is-traditional-invitation-system :where(
  .primary-action,
  .profile-add-action,
  .confirm-button,
  .review-confirmation-button,
  .select-guest-action,
  .guest-response-row.is-response-actions > button:last-child,
  .find-event-action-row > button:last-child
) {
  border-color: var(--system-action) !important;
  background: var(--system-action) !important;
  color: #fff !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system :where(
  .primary-action,
  .profile-add-action,
  .confirm-button,
  .review-confirmation-button,
  .select-guest-action,
  .guest-response-row.is-response-actions > button,
  .find-event-action-row > button,
  .secondary-action
) {
  min-height: 46px;
  border-radius: 12px !important;
}

body.is-traditional-invitation-system :where(
  .secondary-action,
  .find-not-now-action,
  .guest-response-row.is-response-actions > button:first-of-type,
  .find-event-action-row > button:first-child
) {
  border: 0 !important;
  background: var(--system-fill) !important;
  color: #1f3f7a !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system :where(
  .text-action,
  .invite-record-review-action,
  .notification-item-action,
  .section-toggle
) {
  color: #075fb9 !important;
}

body.is-traditional-invitation-system .person-timer {
  border-color: var(--system-line-strong) !important;
  background: #fff !important;
  color: var(--system-muted) !important;
}

body.is-traditional-invitation-system .home-command.is-primary {
  border: 1px solid var(--system-line) !important;
  border-radius: 15px !important;
  background: var(--system-paper) !important;
  color: var(--system-ink) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system .home-command.is-primary .action-icon {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--system-action) !important;
  font-size: 1.7rem !important;
  font-weight: 300 !important;
  box-shadow: none !important;
}

/* Detail sheets: one expanded invitation, then flat workflow ---------- */
body.is-traditional-invitation-system .sheet-panel,
body.is-traditional-invitation-system .invite-detail-panel {
  background: var(--system-canvas) !important;
}

body.is-traditional-invitation-system .invite-detail-hero {
  border-color: var(--system-line-strong) !important;
  border-radius: 18px !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system .pre-response-host,
body.is-traditional-invitation-system .invite-detail-host {
  border: 0 !important;
  border-top: 1px solid var(--system-line) !important;
  border-bottom: 1px solid var(--system-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 14px 0 !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system .pre-response-host-identity {
  grid-template-columns: minmax(0, 1fr) !important;
}

body.is-traditional-invitation-system .pre-response-host-mark {
  display: none !important;
}

body.is-traditional-invitation-system .invite-detail-note {
  color: var(--system-copy) !important;
  font-weight: 400 !important;
  line-height: 1.48 !important;
}

body.is-traditional-invitation-system .invite-decision-grid {
  overflow: hidden;
  border: 1px solid var(--system-line) !important;
  border-radius: 14px !important;
  background: var(--system-paper) !important;
}

body.is-traditional-invitation-system .invite-decision-grid > div {
  border-color: var(--system-line) !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system :where(
  .shared-plan-detail,
  .question-box,
  .invitation-confidence-path,
  .why-invite-disclosure,
  .confirmed-logistics,
  .confirmed-contact-panel
) {
  border-color: var(--system-line) !important;
  background: var(--system-paper) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system .invite-detail-actions {
  border-top-color: var(--system-line) !important;
  background: rgba(249, 249, 251, 0.94) !important;
}

/* Create, Account, journeys, and Member Operations ------------------- */
body.is-traditional-invitation-system :where(
  .account-card,
  .journey-card,
  .profile-section,
  .review-panel,
  .requirements-panel,
  .operations-stage,
  .operations-dialog-panel
) {
  border: 1px solid var(--system-line) !important;
  border-radius: 16px !important;
  background: var(--system-paper) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system :where(
  .account-card-head,
  .journey-card-head,
  .panel-head,
  .operations-screen-heading
) {
  border-bottom-color: var(--system-line) !important;
  background: transparent !important;
}

body.is-traditional-invitation-system :where(
  .account-card-head .eyebrow,
  .journey-card-head .eyebrow,
  .panel-head .eyebrow,
  .operations-screen-heading .eyebrow,
  .field-label-row,
  label
) {
  color: var(--system-muted);
  font-weight: 500;
}

body.is-traditional-invitation-system :where(input, select, textarea) {
  border-color: var(--system-line-strong) !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: var(--system-ink) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system :where(
  .membership-status-panel,
  .preference-panel,
  .settings-note,
  .photo-edit-panel,
  .travel-plan-editor,
  .account-context,
  .routing-state-card
) {
  border-color: var(--system-line) !important;
  background: #f8f8fa !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system .account-settings-index {
  border-color: var(--system-line) !important;
  background: var(--system-paper) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system .account-settings-list > button {
  border-bottom-color: var(--system-line) !important;
  background: transparent !important;
}

body.is-traditional-invitation-system .account-settings-symbol {
  width: 24px !important;
  height: 24px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--system-muted) !important;
  font-weight: 500 !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system .membership-plan {
  border-color: var(--system-line-strong) !important;
  background: var(--system-paper) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system .membership-plan.is-selected {
  border-color: var(--system-action) !important;
  background: #fff !important;
  box-shadow: inset 0 0 0 1px var(--system-action) !important;
}

body.is-traditional-invitation-system .operations-nav button,
body.is-traditional-invitation-system .role-switch button {
  border-color: var(--system-line) !important;
  background: transparent !important;
  color: var(--system-copy) !important;
  font-weight: 400 !important;
}

body.is-traditional-invitation-system .operations-nav button.is-active,
body.is-traditional-invitation-system .role-switch button.is-active {
  background: var(--system-paper) !important;
  color: var(--system-ink) !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08) !important;
}

@media (max-width: 900px) {
  body.is-traditional-invitation-system .incoming-priority-panel {
    gap: 12px !important;
  }

  body.is-traditional-invitation-system .uses-traditional-invitation-face .guest-response-row.is-traditional-rsvp {
    grid-template-columns: auto minmax(0, 1fr) minmax(0, 1.15fr) !important;
  }

  body.is-traditional-invitation-system #homeView .section-head,
  body.is-traditional-invitation-system #onView .section-head {
    padding-inline: 16px !important;
  }
}

@media (max-width: 360px) {
  body.is-traditional-invitation-system .incoming-section-header,
  body.is-traditional-invitation-system .find-filter-summary {
    padding-inline: 14px !important;
  }

  body.is-traditional-invitation-system .incoming-section-toggle {
    gap: 7px !important;
  }

  body.is-traditional-invitation-system .incoming-section-toggle .disclosure-label {
    display: none !important;
  }

  body.is-traditional-invitation-system .uses-traditional-invitation-face .guest-response-row.is-traditional-rsvp {
    grid-template-columns: auto minmax(0, 1fr) !important;
  }

  body.is-traditional-invitation-system .uses-traditional-invitation-face .guest-response-row.is-traditional-rsvp .profile-add-action {
    grid-column: 1 / -1;
  }
}

/* Final high-specificity overrides for inherited editorial experiments. */
body.is-traditional-invitation-system.is-modern-salon.is-quiet-frame.is-apple-native :where(
  .last-minute-receipt,
  .last-minute-note,
  .last-minute-list-receipt,
  .last-minute-timing-receipt
) {
  border: 0 !important;
  background: transparent !important;
  color: var(--system-copy) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-modern-salon.is-quiet-frame.is-apple-native :where(
  .last-minute-receipt,
  .last-minute-note,
  .last-minute-list-receipt,
  .last-minute-timing-receipt
) :where(strong, span, small) {
  color: var(--system-copy) !important;
}

body.is-traditional-invitation-system.is-modern-salon.is-quiet-frame.is-apple-native .last-minute-clock {
  border-color: var(--system-muted) !important;
  color: var(--system-muted) !important;
}

body.is-traditional-invitation-system.is-modern-salon.is-quiet-frame.is-apple-native .shared-plan-detail .updated-event-label {
  border: 1px solid var(--system-line-strong) !important;
  background: transparent !important;
  color: var(--system-copy) !important;
}

body.is-traditional-invitation-system.is-modern-salon.is-quiet-frame.is-apple-native .shared-plan-detail :where(
  .shared-plan-detail-summary strong,
  .shared-answer-pair dt small,
  .shared-answer-pair dd small
) {
  color: var(--system-copy) !important;
}

body.is-traditional-invitation-system.is-modern-salon.is-quiet-frame.is-apple-native .shared-plan-detail .shared-answer-pair {
  border-color: var(--system-line) !important;
}

body.is-traditional-invitation-system.is-modern-salon.is-quiet-frame.is-apple-native .shared-plan-detail .shared-answer-pair dd {
  border-left-color: var(--system-line-strong) !important;
}

body.is-traditional-invitation-system.is-modern-salon.is-quiet-frame.is-apple-native #homeView .home-command.is-primary .action-icon {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--system-action) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-modern-salon.is-quiet-frame.is-apple-native .in-familiar-host-summary {
  border: 0 !important;
  border-top: 1px solid var(--system-line) !important;
  border-bottom: 1px solid var(--system-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-modern-salon.is-quiet-frame.is-apple-native .in-familiar-host-kicker,
body.is-traditional-invitation-system.is-modern-salon.is-quiet-frame.is-apple-native .in-familiar-host-copy > strong {
  color: var(--system-copy) !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path:has(#accountView.is-active) .compose-panel {
  background: var(--system-canvas) !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path:has(#accountView.is-active) #screenEyebrow {
  color: var(--system-muted) !important;
  font-size: 0.68rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.13em !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path:has(#accountView.is-active) #compose-title {
  color: var(--system-ink) !important;
  font-family: var(--salon-sans) !important;
  font-size: clamp(2rem, 4vw, 2.55rem) !important;
  font-weight: 600 !important;
  letter-spacing: -0.055em !important;
  line-height: 1 !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path:has(#accountView.is-active) > .app-shell .intro-copy {
  color: var(--system-muted) !important;
  font-weight: 400 !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-settings-index {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-settings-index-head {
  isolation: auto !important;
  min-height: 86px !important;
  grid-template-columns: 54px minmax(0, 1fr) !important;
  gap: 13px !important;
  border: 1px solid var(--system-line) !important;
  border-radius: 17px !important;
  background: var(--system-paper) !important;
  padding: 15px !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-settings-index-head::after {
  display: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-settings-index-head strong {
  color: var(--system-ink) !important;
  font-size: 1.1rem !important;
  font-weight: 500 !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-settings-index-head small {
  color: var(--system-muted) !important;
  font-size: 0.69rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.08em !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-settings-monogram {
  width: 50px !important;
  height: 50px !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: var(--system-ink) !important;
  color: white !important;
  font-weight: 500 !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-settings-list {
  gap: 8px !important;
  margin-top: 10px !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-settings-list button {
  min-height: 66px !important;
  grid-template-columns: 24px minmax(0, 1fr) 18px !important;
  gap: 12px !important;
  border: 1px solid var(--system-line) !important;
  border-radius: 14px !important;
  background: var(--system-paper) !important;
  padding: 10px 14px !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-settings-list button + button {
  border-top: 1px solid var(--system-line) !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-settings-list button:hover,
body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-settings-list button:focus-visible,
body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-settings-list button.is-active {
  border-color: var(--system-line-strong) !important;
  background: #fafafd !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-settings-list button strong {
  color: var(--system-ink) !important;
  font-size: 0.92rem !important;
  font-weight: 500 !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-settings-list button small {
  color: var(--system-muted) !important;
  font-size: 0.7rem !important;
  font-weight: 400 !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-settings-symbol {
  width: 24px !important;
  height: 24px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--system-muted) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-settings-chevron {
  width: 18px !important;
  height: 18px !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--system-muted) !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-settings-footer {
  color: var(--system-muted) !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-settings-index-head strong {
  font-family: var(--salon-sans) !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-card {
  border: 1px solid var(--system-line) !important;
  border-radius: 17px !important;
  background: var(--system-paper) !important;
  padding: 18px !important;
  gap: 15px !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-card::before {
  display: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-card-head {
  min-height: 54px !important;
  border-bottom-color: var(--system-line) !important;
  padding: 0 0 13px !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-card h2,
body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-context h2 {
  color: var(--system-ink) !important;
  font-family: var(--salon-sans) !important;
  font-size: 1.32rem !important;
  font-weight: 500 !important;
  letter-spacing: -0.035em !important;
  line-height: 1.08 !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-card-head .eyebrow,
body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-context .eyebrow {
  color: var(--system-muted) !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-card-head .quiet-pill {
  border: 1px solid var(--system-line) !important;
  background: #f7f7f9 !important;
  color: var(--system-copy) !important;
  font-weight: 400 !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-card :where(
  .preference-callout,
  .membership-status-panel,
  .portal-preview,
  .photo-edit-panel,
  .member-area-editor,
  .social-fit-promise,
  .travel-plan-summary
) {
  border-color: var(--system-line) !important;
  border-radius: 14px !important;
  background: #f8f8fa !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-context {
  border-color: var(--system-line) !important;
  border-radius: 17px !important;
  background: var(--system-paper) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path #accountView .account-context::after {
  display: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow {
  --create-accent: var(--system-action);
  --create-accent-deep: #1d1d1f;
  --create-accent-soft: #eef4fb;
  --create-lavender: #f2f2f6;
  --create-lavender-deep: #1d1d1f;
  --create-sage: #f2f2f6;
  --create-sage-deep: #45454a;
  --create-paper: #ffffff;
  --create-line: var(--system-line);
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow .compose-panel {
  background: var(--system-canvas) !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow .app-nav {
  border: 1px solid var(--system-line) !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  box-shadow: none !important;
  backdrop-filter: blur(18px) saturate(120%);
  -webkit-backdrop-filter: blur(18px) saturate(120%);
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow .app-nav .icon-button,
body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow .app-nav .avatar-button {
  border-color: var(--system-line) !important;
  background: #fff !important;
  color: var(--system-ink) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow .app-nav .nav-status {
  border-color: var(--system-line) !important;
  background: #fff !important;
  color: var(--system-muted) !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #screenHeader {
  min-height: 86px !important;
  border: 1px solid var(--system-line) !important;
  border-bottom: 0 !important;
  border-radius: 18px 18px 0 0 !important;
  background: var(--system-paper) !important;
  padding: 20px 22px 7px !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #screenHeader::after {
  display: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #screenEyebrow {
  color: var(--system-muted) !important;
  font-size: 0.66rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.15em !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #compose-title {
  color: var(--system-ink) !important;
  font-family: var(--salon-sans) !important;
  font-size: clamp(1.85rem, 4vw, 2.35rem) !important;
  font-weight: 600 !important;
  letter-spacing: -0.052em !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow .intro-copy {
  border: 1px solid var(--system-line) !important;
  border-top: 0 !important;
  border-radius: 0 0 18px 18px !important;
  background: var(--system-paper) !important;
  color: var(--system-muted) !important;
  padding: 0 22px 18px !important;
  font-weight: 400 !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow .view-tabs {
  gap: 0 !important;
  border: 1px solid var(--system-line) !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  padding: 5px !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow .view-tab {
  min-height: 52px !important;
  border: 0 !important;
  border-radius: 11px !important;
  background: transparent !important;
  color: var(--system-muted) !important;
  font-weight: 400 !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow .view-tab.is-active,
body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow .view-tab.is-complete {
  border: 0 !important;
  background: var(--system-fill) !important;
  color: var(--system-ink) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow .view-step-number,
body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow .view-tab.is-active .view-step-number,
body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow .view-tab.is-complete .view-step-number {
  border-color: var(--system-line-strong) !important;
  background: #fff !important;
  color: var(--system-copy) !important;
  font-weight: 500 !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #planView .plan-form,
body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #whoView .profile-section,
body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #reviewView .review-panel {
  border: 1px solid var(--system-line) !important;
  border-radius: 18px !important;
  background: var(--system-paper) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #planView .plan-form {
  padding: 20px !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #planView .plan-form::before,
body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #whoView .profile-section::before,
body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #reviewView .review-panel::before {
  display: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #planView .plan-form > .field-grid,
body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #planView .plan-form > details,
body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #planView .plan-form > label {
  border-top-color: var(--system-line) !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #planView :where(legend, .field-label-row),
body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #whoView legend,
body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #reviewView .panel-head h2 {
  color: var(--system-copy) !important;
  font-weight: 500 !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow .required-mark {
  border: 0 !important;
  background: transparent !important;
  color: #6b4a4a !important;
  padding: 0 !important;
  font-weight: 500 !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #planView .activity-picker {
  border-color: var(--system-line-strong) !important;
  border-radius: 14px !important;
  background: #fafafd !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #planView .selected-tag {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--system-ink) !important;
  font-size: 1.08rem !important;
  font-weight: 500 !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #planView .requirements-panel,
body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #planView .date-picker-panel,
body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #planView .invite-town-picker {
  border-color: var(--system-line) !important;
  border-radius: 14px !important;
  background: #f8f8fa !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #planView .date-quick,
body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #planView .date-choice {
  border-color: var(--system-line) !important;
  background: #fff !important;
  color: var(--system-copy) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #planView .date-quick.is-selected,
body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #planView .date-choice.is-selected {
  border-color: var(--system-action) !important;
  background: var(--system-action) !important;
  color: #fff !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #planView .date-grid-toggle {
  border-color: var(--system-line) !important;
  background: #fff !important;
  color: #075fb9 !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #planView input,
body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #planView select,
body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #planView textarea,
body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #whoView input:not([type="checkbox"]):not([type="radio"]),
body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #whoView select,
body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow #whoView textarea {
  border-color: var(--system-line-strong) !important;
  border-radius: 10px !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path.is-create-flow .app-nav .avatar-button {
  border: 0 !important;
  border-radius: 50% !important;
  background: var(--system-ink) !important;
  color: #fff !important;
}

body.is-traditional-invitation-system #memberOperationsView .operations-stage {
  --ops-ink: var(--system-ink);
  --ops-muted: var(--system-muted);
  --ops-line: var(--system-line);
  --ops-paper: var(--system-paper);
  --ops-sage: #f3f3f6;
  --ops-lavender: #f3f3f6;
  --ops-blush: #f3f3f6;
  --ops-gold: #8a8a90;
}

body.is-traditional-invitation-system #memberOperationsView .operations-stage-header {
  min-height: 122px !important;
  border: 1px solid var(--system-line) !important;
  border-radius: 18px 18px 10px 10px !important;
  background: var(--system-paper) !important;
  padding: 20px !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system #memberOperationsView .operations-stage-header::after {
  display: none !important;
}

body.is-traditional-invitation-system #memberOperationsView .operations-stage-header .eyebrow {
  color: var(--system-muted) !important;
  font-size: 0.66rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.14em !important;
}

body.is-traditional-invitation-system #memberOperationsView .operations-stage-header h1 {
  color: var(--system-ink) !important;
  font-family: var(--salon-sans) !important;
  font-size: clamp(1.8rem, 3vw, 2.4rem) !important;
  font-weight: 600 !important;
  letter-spacing: -0.052em !important;
  line-height: 1 !important;
}

body.is-traditional-invitation-system #memberOperationsView .operations-stage-header > div:first-child > p:last-child {
  color: var(--system-muted) !important;
  font-weight: 400 !important;
}

body.is-traditional-invitation-system #memberOperationsView .operations-operator-chip {
  border-color: var(--system-line) !important;
  border-radius: 14px !important;
  background: #f8f8fa !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system #memberOperationsView .operations-operator-chip > span:first-child {
  border-radius: 50% !important;
  background: var(--system-ink) !important;
  font-weight: 500 !important;
}

body.is-traditional-invitation-system #memberOperationsView .operations-operator-chip :where(strong, small) {
  font-weight: 400 !important;
}

body.is-traditional-invitation-system #memberOperationsView .operations-nav {
  border-color: var(--system-line) !important;
  border-radius: 15px !important;
  background: rgba(255, 255, 255, 0.94) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system #memberOperationsView .operations-nav button {
  border: 0 !important;
  border-radius: 10px !important;
  background: transparent !important;
  color: var(--system-muted) !important;
  font-weight: 400 !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system #memberOperationsView .operations-nav button.is-active {
  background: var(--system-fill) !important;
  color: var(--system-ink) !important;
}

body.is-traditional-invitation-system #memberOperationsView .operations-nav button strong {
  background: transparent !important;
  font-weight: 500 !important;
}

body.is-traditional-invitation-system #memberOperationsView .member-operations-command-bar {
  border-color: var(--system-line) !important;
  border-radius: 14px !important;
  background: var(--system-paper) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system #memberOperationsView .member-operations-command-bar > div {
  border-color: var(--system-line) !important;
  background: transparent !important;
}

body.is-traditional-invitation-system #memberOperationsView .member-operations-command-bar strong {
  color: var(--system-ink) !important;
  font-weight: 500 !important;
}

body.is-traditional-invitation-system #memberOperationsView .member-operations-command-bar span {
  color: var(--system-muted) !important;
  font-weight: 400 !important;
}

body.is-traditional-invitation-system #memberOperationsView :where(
  .member-operations-queue-card,
  .member-operations-review-card,
  .member-operations-checklist-card,
  .member-operations-task-detail
) {
  border-color: var(--system-line) !important;
  border-radius: 16px !important;
  background: var(--system-paper) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path :is(
  #applicantView,
  #setupView,
  #notificationJourneyView,
  #accessPolicyView,
  #pilotWalkthroughView,
  #lifecycleView
) {
  --journey-accent: var(--system-action);
  --journey-accent-deep: var(--system-ink);
  --journey-accent-soft: var(--system-fill);
}

body.is-traditional-invitation-system.is-editorial-confidence-path :is(
  #applicantView,
  #setupView,
  #notificationJourneyView,
  #accessPolicyView,
  #pilotWalkthroughView,
  #lifecycleView
) .journey-card {
  border: 1px solid var(--system-line) !important;
  border-radius: 17px !important;
  background: var(--system-paper) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path :is(
  #applicantView,
  #setupView,
  #notificationJourneyView,
  #accessPolicyView,
  #pilotWalkthroughView,
  #lifecycleView
) .journey-card::before {
  display: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path :is(
  #applicantView,
  #setupView,
  #notificationJourneyView,
  #accessPolicyView,
  #pilotWalkthroughView,
  #lifecycleView
) .journey-card h2 {
  color: var(--system-ink) !important;
  font-family: var(--salon-sans) !important;
  font-size: 1.28rem !important;
  font-weight: 500 !important;
  letter-spacing: -0.035em !important;
  line-height: 1.1 !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path :is(
  #applicantView,
  #setupView,
  #notificationJourneyView,
  #accessPolicyView,
  #pilotWalkthroughView,
  #lifecycleView
) .journey-card .eyebrow {
  color: var(--system-muted) !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path :is(
  #applicantView,
  #setupView,
  #notificationJourneyView,
  #accessPolicyView,
  #pilotWalkthroughView,
  #lifecycleView
) .journey-progress {
  gap: 4px !important;
  border: 1px solid var(--system-line) !important;
  border-radius: 15px !important;
  background: var(--system-paper) !important;
  padding: 5px !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path :is(
  #applicantView,
  #setupView,
  #notificationJourneyView,
  #accessPolicyView,
  #pilotWalkthroughView,
  #lifecycleView
) .journey-step {
  border: 0 !important;
  border-radius: 10px !important;
  background: transparent !important;
  color: var(--system-muted) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system.is-editorial-confidence-path :is(
  #applicantView,
  #setupView,
  #notificationJourneyView,
  #accessPolicyView,
  #pilotWalkthroughView,
  #lifecycleView
) .journey-step.is-active,
body.is-traditional-invitation-system.is-editorial-confidence-path :is(
  #applicantView,
  #setupView,
  #notificationJourneyView,
  #accessPolicyView,
  #pilotWalkthroughView,
  #lifecycleView
) .journey-step.is-complete {
  background: var(--system-fill) !important;
  color: var(--system-ink) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system :where(.privacy-promise-grid, .setup-choice-grid) > * {
  border: 0 !important;
  border-radius: 10px !important;
  background: #f8f8fa !important;
  color: var(--system-copy) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system .privacy-promise-grid > div {
  border-left: 0 !important;
  border-top: 1px solid var(--system-line) !important;
}

body.is-traditional-invitation-system .journey-card .quiet-pill,
body.is-traditional-invitation-system .journey-card .required-mark {
  border-color: var(--system-line) !important;
  background: #f8f8fa !important;
  color: var(--system-muted) !important;
  font-weight: 400 !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system :where(
  .application-field-grid,
  .application-agreements,
  .notification-channel-list,
  .settings-list
) {
  border-color: var(--system-line) !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system :where(
  .application-field-grid label,
  .agreement-row,
  .switch-row
) {
  border-color: var(--system-line) !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system #journalView {
  background: var(--system-canvas) !important;
  color: var(--system-copy) !important;
}

body.is-traditional-invitation-system #journalView .journal-masthead {
  border-bottom-color: var(--system-line) !important;
  background: transparent !important;
}

body.is-traditional-invitation-system #journalView .journal-wordmark,
body.is-traditional-invitation-system #journalView .journal-masthead h2,
body.is-traditional-invitation-system #journalView :where(
  .journal-feature-copy h3,
  .journal-story-grid h3,
  .journal-boundary h3
) {
  color: var(--system-ink) !important;
  font-family: var(--salon-sans) !important;
  font-weight: 500 !important;
  letter-spacing: -0.04em !important;
}

body.is-traditional-invitation-system #journalView .journal-masthead h2 {
  font-weight: 600 !important;
}

body.is-traditional-invitation-system #journalView :where(
  .journal-public-label,
  .journal-section-label,
  .journal-masthead .eyebrow
) {
  color: var(--system-muted) !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
}

body.is-traditional-invitation-system #journalView :where(
  .journal-feature,
  .journal-story-grid article,
  .journal-boundary
) {
  overflow: hidden;
  border: 1px solid var(--system-line) !important;
  border-radius: 17px !important;
  background: var(--system-paper) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system #journalView .journal-feature-art {
  background: #253049 !important;
}

body.is-traditional-invitation-system #journalView .journal-art-sun {
  background: #d9deea !important;
}

body.is-traditional-invitation-system #journalView .journal-art-arch {
  border-color: #8995ad !important;
}

body.is-traditional-invitation-system #journalView .journal-art-path {
  background: #f3f5fa !important;
}

body.is-traditional-invitation-system #journalView .journal-feature-copy,
body.is-traditional-invitation-system #journalView .journal-boundary {
  background: var(--system-paper) !important;
}

body.is-traditional-invitation-system #journalView .journal-story-mark,
body.is-traditional-invitation-system #journalView .journal-boundary-mark {
  border-color: var(--system-line) !important;
  background: transparent !important;
  color: var(--system-muted) !important;
  box-shadow: none !important;
}

body.is-traditional-invitation-system #journalView .journal-membership-action {
  border-color: var(--system-action) !important;
  background: var(--system-action) !important;
  color: #fff !important;
  font-weight: 500 !important;
  box-shadow: none !important;
}

/* Unified Traditional Invitation System v11 ---------------------------
   Every Invite state shares one invitation grammar. Workflow content
   remains flat beneath the face; waiting receipts retain compact density. */
body.is-unified-invitation-system .traditional-invitation-state-group {
  min-width: 0;
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 4px 8px;
}

body.is-unified-invitation-system .traditional-invitation-state-group :where(
  .invite-record-state-pill,
  .invite-record-status-pill
) {
  min-height: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 0 !important;
  color: var(--system-muted) !important;
  font-size: 0.62rem !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  line-height: 1.2 !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system .traditional-invitation-state-group .invite-record-status-pill::before {
  content: "·";
  margin-right: 8px;
}

body.is-unified-invitation-system .traditional-invitation-face :where(h2, h3) {
  max-width: 340px;
  margin: 9px auto 0;
  color: var(--system-ink) !important;
  font-family: var(--salon-sans) !important;
  font-size: clamp(1.72rem, 7.2vw, 2.15rem) !important;
  font-weight: 600 !important;
  letter-spacing: -0.05em !important;
  line-height: 1 !important;
  text-align: center;
  text-wrap: balance;
}

body.is-unified-invitation-system .traditional-invitation-face.is-compact {
  padding: 17px 20px 19px !important;
}

body.is-unified-invitation-system .traditional-invitation-face.is-compact .traditional-invitation-symbol {
  width: 24px;
  height: 24px;
  margin-top: 15px;
}

body.is-unified-invitation-system .traditional-invitation-face.is-compact .traditional-invitation-host {
  margin-top: 9px;
}

body.is-unified-invitation-system .traditional-invitation-face.is-compact :where(h2, h3) {
  max-width: 390px;
  margin-top: 6px;
  font-size: clamp(1.35rem, 5vw, 1.62rem) !important;
}

body.is-unified-invitation-system .traditional-invitation-face.is-compact .traditional-invitation-category {
  margin-top: 7px;
}

body.is-unified-invitation-system .traditional-invitation-face.is-compact .traditional-invitation-facts {
  width: min(100%, 390px);
  margin-top: 18px;
}

body.is-unified-invitation-system .traditional-invitation-face.is-compact .traditional-invitation-note {
  width: min(100%, 390px);
  margin-top: 17px;
  padding-top: 14px;
}

body.is-unified-invitation-system .traditional-invitation-face.is-compact .traditional-invitation-note p {
  font-size: 0.74rem;
  line-height: 1.42;
}

body.is-unified-invitation-system :where(
  .work-row,
  .plan-management-card,
  .confirmed-plan-card,
  .is-final-confirmation
).uses-traditional-invitation-face {
  overflow: hidden !important;
  padding-top: 0 !important;
}

body.is-unified-invitation-system .work-row.has-invite-context .work-row-body {
  border-top: 0 !important;
  padding-top: 14px !important;
}

body.is-unified-invitation-system .plan-management-card > .out-plan-disclosure,
body.is-unified-invitation-system .confirmed-plan-card > .on-plan-disclosure,
body.is-unified-invitation-system .confirmed-plan-card > .completed-plan-disclosure {
  margin: 0 14px 12px !important;
  border-top: 0 !important;
}

body.is-unified-invitation-system .confirmed-plan-card.is-completed {
  display: block !important;
  background: var(--system-paper) !important;
}

body.is-unified-invitation-system .confirmed-plan-card.is-completed .completed-private-cue {
  width: fit-content;
  min-width: 0;
  margin: 8px 0 0 !important;
  border-color: var(--system-line) !important;
  background: #f7f8fb !important;
  color: var(--system-copy) !important;
}

body.is-unified-invitation-system .confirmed-plan-card.is-completed .completed-private-cue strong {
  font-weight: 500 !important;
}

body.is-unified-invitation-system .confirmed-plan-card.is-completed .completed-private-cue small {
  font-weight: 400 !important;
}

body.is-unified-invitation-system .confirmed-plan-card.is-completed .completed-plan-details {
  padding-top: 14px !important;
}

body.is-unified-invitation-system .traditional-invitation-receipt {
  width: 100%;
  display: block;
  color: var(--system-copy);
  text-align: left;
}

body.is-unified-invitation-system .traditional-receipt-topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  color: var(--system-muted);
  font-size: 0.54rem;
  font-weight: 500;
  letter-spacing: 0.16em;
  line-height: 1.2;
  text-transform: uppercase;
}

body.is-unified-invitation-system .traditional-receipt-main {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  margin-top: 10px;
}

body.is-unified-invitation-system .traditional-receipt-symbol {
  display: grid;
  place-items: center;
  color: var(--system-muted);
}

body.is-unified-invitation-system .traditional-receipt-symbol .event-category-icon {
  width: 26px !important;
  height: 26px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: currentColor !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system .traditional-receipt-copy {
  min-width: 0;
  display: grid;
  gap: 3px;
}

body.is-unified-invitation-system .traditional-receipt-copy > small {
  color: var(--system-muted);
  font-size: 0.55rem;
  font-weight: 500;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body.is-unified-invitation-system .traditional-receipt-copy > strong {
  overflow: hidden;
  color: var(--system-ink);
  font-size: 0.98rem;
  font-weight: 500;
  letter-spacing: -0.025em;
  line-height: 1.15;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.is-unified-invitation-system .traditional-receipt-copy > :where(span, em) {
  overflow: hidden;
  color: var(--system-muted);
  font-size: 0.68rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.is-unified-invitation-system .uses-traditional-invitation-receipt .waiting-response-open {
  display: block !important;
  padding: 15px 16px 12px !important;
}

body.is-unified-invitation-system .uses-traditional-invitation-receipt .waiting-response-foot {
  margin-top: 12px !important;
  border-top: 1px solid var(--system-line) !important;
  padding-top: 10px !important;
}

body.is-unified-invitation-system .invite-card-context-main {
  min-width: 0;
  display: grid;
  gap: 6px;
}

body.is-unified-invitation-system :where(
  .invite-card-trip-context,
  .waiting-response-trip-context
) {
  color: var(--system-muted) !important;
  font-weight: 400 !important;
}

body.is-unified-invitation-system .waiting-response-trip-context {
  margin-top: 10px;
}

body.is-unified-invitation-system .invite-detail-content > .traditional-invitation-face,
body.is-unified-invitation-system .member-action-content > .traditional-invitation-face {
  border-bottom-color: var(--system-line) !important;
}

body.is-unified-invitation-system .invite-detail-content > .traditional-invitation-face .traditional-invitation-state-group {
  margin-right: 34px;
}

body.is-unified-invitation-system .member-action-context {
  border-bottom: 1px solid var(--system-line);
  padding: 18px 16px;
  background: var(--system-paper);
}

body.is-unified-invitation-system .member-action-context .eyebrow {
  margin: 0;
  color: var(--system-muted) !important;
}

body.is-unified-invitation-system .member-action-context h2 {
  margin: 5px 0 0;
  color: var(--system-ink) !important;
  font-family: var(--salon-sans) !important;
  font-size: 1.25rem !important;
  font-weight: 500 !important;
  letter-spacing: -0.035em !important;
  line-height: 1.15 !important;
}

body.is-unified-invitation-system .invite-view-card.uses-traditional-invitation-face {
  overflow: hidden;
  gap: 0 !important;
  padding: 0 !important;
}

body.is-unified-invitation-system .invite-view-card .invite-view-workflow {
  display: grid;
  gap: 10px;
  padding: 16px;
}

body.is-unified-invitation-system .lifecycle-next-action > div:first-child {
  grid-row: 1 / span 2;
}

body.is-unified-invitation-system .lifecycle-next-action > .traditional-rsvp-heading {
  grid-column: 2;
  align-self: end;
  gap: 12px;
}

body.is-unified-invitation-system .lifecycle-next-action > .primary-action {
  grid-column: 2;
}

body.is-unified-invitation-system .find-event-action-row.is-traditional-rsvp,
body.is-unified-invitation-system .invite-detail-actions.is-traditional-rsvp {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
  gap: 8px !important;
}

body.is-unified-invitation-system .find-event-action-row.is-traditional-rsvp .traditional-rsvp-heading,
body.is-unified-invitation-system .invite-detail-actions.is-traditional-rsvp .traditional-rsvp-heading {
  grid-column: 1 / -1;
  padding-bottom: 4px;
}

body.is-unified-invitation-system .find-event-action-row.is-traditional-rsvp .traditional-rsvp-heading small,
body.is-unified-invitation-system .invite-detail-actions.is-traditional-rsvp .traditional-rsvp-heading small {
  color: var(--system-muted) !important;
  font-weight: 400 !important;
}

body.is-unified-invitation-system .find-event-action-row.is-traditional-rsvp .find-not-now-action,
body.is-unified-invitation-system .invite-detail-actions.is-traditional-rsvp > .secondary-action {
  grid-column: 1;
}

body.is-unified-invitation-system .find-event-action-row.is-traditional-rsvp .person-timer,
body.is-unified-invitation-system .invite-detail-actions.is-traditional-rsvp > .person-timer {
  grid-column: 2;
}

body.is-unified-invitation-system .find-event-action-row.is-traditional-rsvp .profile-add-action,
body.is-unified-invitation-system .invite-detail-actions.is-traditional-rsvp > .profile-add-action {
  grid-column: 3;
}

@media (max-width: 760px) {
  body.is-unified-invitation-system .lifecycle-next-action {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.is-unified-invitation-system .lifecycle-next-action > div:first-child {
    grid-column: 1 !important;
    grid-row: auto !important;
  }

  body.is-unified-invitation-system .lifecycle-next-action > .traditional-rsvp-heading,
  body.is-unified-invitation-system .lifecycle-next-action > .primary-action {
    grid-column: 1 !important;
  }
}

@media (max-width: 360px) {
  body.is-unified-invitation-system .traditional-invitation-state-group .invite-record-status-pill {
    display: none !important;
  }

  body.is-unified-invitation-system .traditional-receipt-copy > strong {
    font-size: 0.92rem;
  }

  body.is-unified-invitation-system .find-event-action-row.is-traditional-rsvp,
  body.is-unified-invitation-system .invite-detail-actions.is-traditional-rsvp {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  }

  body.is-unified-invitation-system .find-event-action-row.is-traditional-rsvp .person-timer,
  body.is-unified-invitation-system .invite-detail-actions.is-traditional-rsvp > .person-timer {
    grid-column: 1 / -1;
    grid-row: auto;
    justify-self: center;
  }

  body.is-unified-invitation-system .find-event-action-row.is-traditional-rsvp .find-not-now-action,
  body.is-unified-invitation-system .invite-detail-actions.is-traditional-rsvp > .secondary-action {
    grid-column: 1;
    grid-row: auto;
  }

  body.is-unified-invitation-system .find-event-action-row.is-traditional-rsvp .profile-add-action,
  body.is-unified-invitation-system .invite-detail-actions.is-traditional-rsvp > .profile-add-action {
    grid-column: 2;
    grid-row: auto;
  }

  body.is-unified-invitation-system .lifecycle-next-action > div:first-child {
    grid-row: auto;
  }

  body.is-unified-invitation-system .lifecycle-next-action > :where(.traditional-rsvp-heading, .primary-action) {
    grid-column: 1;
  }
}

/* Unified System Completion v11 --------------------------------------
   The traditional invitation is the expressive object. Navigation,
   creation, settings, journeys, and operations use one quiet system. */
body.is-unified-invitation-system {
  --system-canvas: #f5f5f7;
  --system-paper: #ffffff;
  --system-ink: #19191b;
  --system-copy: #454549;
  --system-muted: #747478;
  --system-faint: #96969b;
  --system-line: rgba(60, 60, 67, 0.14);
  --system-line-strong: rgba(60, 60, 67, 0.22);
  --system-fill: #f1f1f4;
  --system-action: #0878e6;
  --system-action-pressed: #0068ce;
}

body.is-unified-invitation-system .prototype-device-switch > button[data-device-view] {
  min-height: 44px !important;
  font-weight: 500 !important;
}

body.is-unified-invitation-system button {
  min-height: 44px !important;
}

body.is-unified-invitation-system :where(
  .account-settings-index,
  .account-card,
  .profile-section,
  .review-panel,
  .journey-card,
  .operations-stage,
  .operations-dialog-panel
) {
  box-shadow: none !important;
}

body.is-unified-invitation-system :where(
  .account-card-head h2,
  #whoView .section-head h2,
  #reviewView .panel-head h2,
  .journey-card h2,
  .operations-screen-heading h2
) {
  color: var(--system-ink) !important;
  font-family: var(--salon-sans) !important;
  font-weight: 500 !important;
  letter-spacing: -0.035em !important;
}

body.is-unified-invitation-system :where(
  .quiet-pill,
  .status-dot,
  .travel-matching-state,
  .account-context-pills span
) {
  border: 1px solid var(--system-line) !important;
  background: #f7f7f9 !important;
  color: var(--system-copy) !important;
  font-weight: 400 !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system :where(
  .primary-action,
  .profile-add-action,
  .profile-card-ask-action,
  .confirm-button,
  .review-confirmation-button,
  .select-guest-action
) {
  border-color: var(--system-action) !important;
  background: var(--system-action) !important;
  color: #fff !important;
  font-weight: 500 !important;
  box-shadow: none !important;
}

/* Member menu and Account index -------------------------------------- */
body.is-unified-invitation-system .member-menu {
  overflow: hidden;
  width: min(300px, calc(100vw - 36px));
  border: 1px solid var(--system-line-strong) !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, 0.98) !important;
  padding: 6px !important;
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.13) !important;
}

body.is-unified-invitation-system .member-menu button {
  min-height: 58px;
  border-radius: 10px !important;
  padding: 10px 12px !important;
}

body.is-unified-invitation-system .member-menu button + button {
  border-top: 1px solid var(--system-line) !important;
}

body.is-unified-invitation-system .member-menu :where(strong, span) {
  font-weight: 400 !important;
}

body.is-unified-invitation-system .member-menu strong {
  color: var(--system-ink) !important;
  font-size: 0.9rem !important;
  font-weight: 500 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .account-settings-index-head {
  min-height: 76px !important;
  border: 1px solid var(--system-line) !important;
  border-radius: 15px !important;
  background: var(--system-paper) !important;
  padding: 12px 14px !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .account-settings-monogram {
  width: 44px !important;
  height: 44px !important;
  background: var(--system-ink) !important;
  color: #fff !important;
  font-weight: 500 !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .account-settings-list {
  overflow: hidden;
  display: block !important;
  margin-top: 10px !important;
  border: 1px solid var(--system-line) !important;
  border-radius: 15px !important;
  background: var(--system-paper) !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .account-settings-list button {
  min-height: 62px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 9px 13px !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .account-settings-list button + button {
  border-top: 1px solid var(--system-line) !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .account-settings-list button:hover,
body.is-unified-invitation-system.is-editorial-confidence-path #accountView .account-settings-list button:focus-visible,
body.is-unified-invitation-system.is-editorial-confidence-path #accountView .account-settings-list button.is-active {
  border-color: transparent !important;
  background: var(--system-fill) !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .account-settings-list button.is-active .account-settings-chevron {
  color: var(--system-action) !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .account-settings-footer {
  margin: 14px 4px 0 !important;
  font-size: 0.7rem !important;
  line-height: 1.45 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .account-context {
  min-height: 0 !important;
  border: 1px solid var(--system-line) !important;
  border-radius: 16px !important;
  background: var(--system-paper) !important;
  padding: 16px 18px !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .account-context-pills span {
  color: var(--system-muted) !important;
}

/* Account detail surfaces -------------------------------------------- */
body.is-unified-invitation-system.is-editorial-confidence-path #accountView .account-card {
  border: 1px solid var(--system-line) !important;
  border-radius: 16px !important;
  background: var(--system-paper) !important;
  padding: 18px !important;
  gap: 14px !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .account-card :where(
  .preference-callout,
  .membership-status-panel,
  .portal-preview,
  .photo-edit-panel,
  .member-area-editor,
  .social-fit-promise,
  .settings-note,
  .billing-note
) {
  border: 0 !important;
  border-radius: 12px !important;
  background: #f7f7f9 !important;
  color: var(--system-copy) !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .account-identity {
  border: 1px solid var(--system-line) !important;
  border-radius: 13px !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .account-avatar {
  border: 0 !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView :where(
  .notification-channel-list,
  .settings-list:has(> .switch-row)
) {
  overflow: hidden !important;
  display: block !important;
  border: 1px solid var(--system-line) !important;
  border-radius: 13px !important;
  background: #fff !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView :where(
  .notification-channel-list > .switch-row,
  .settings-list > .switch-row
) {
  min-height: 68px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 12px 14px !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView :where(
  .notification-channel-list > .switch-row,
  .settings-list > .switch-row
) + .switch-row {
  border-top: 1px solid var(--system-line) !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .switch-row input[type="checkbox"]:checked {
  border-color: var(--system-action) !important;
  background: var(--system-action) !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .membership-plan {
  min-height: 112px !important;
  border: 1px solid var(--system-line-strong) !important;
  border-radius: 15px !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .membership-plan.is-selected {
  border-color: var(--system-action) !important;
  background: #fff !important;
  box-shadow: inset 0 0 0 1px var(--system-action) !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .billing-summary-grid {
  overflow: hidden;
  gap: 1px !important;
  border: 1px solid var(--system-line) !important;
  border-radius: 13px !important;
  background: var(--system-line) !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .billing-summary-grid > div {
  border: 0 !important;
  border-radius: 0 !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .travel-plan-summary {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView :where(
  .travel-plan-item,
  .travel-empty-state
) {
  border: 1px solid var(--system-line) !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView :where(
  .travel-summary-head,
  .travel-plan-item-actions
) {
  background: #fff !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView :where(
  .travel-summary-mark,
  .travel-create-mark,
  .travel-unsupported-mark
) {
  width: 32px !important;
  height: 32px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--system-muted) !important;
  font-weight: 500 !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .travel-summary-head {
  grid-template-columns: 32px minmax(0, 1fr) auto !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .travel-summary-head strong {
  color: var(--system-ink) !important;
  font-family: var(--salon-sans) !important;
  font-weight: 500 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .travel-matching-state {
  background: #f7f7f9 !important;
  color: var(--system-muted) !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .familiar-management-list {
  gap: 10px !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .familiar-management-card,
body.is-unified-invitation-system.is-editorial-confidence-path #accountView .familiar-management-card:nth-child(2),
body.is-unified-invitation-system.is-editorial-confidence-path #accountView .familiar-management-card:nth-child(3) {
  border: 1px solid var(--system-line) !important;
  border-radius: 15px !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .familiar-management-card > .member-photo-trigger {
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .familiar-management-card > div > strong {
  color: var(--system-ink) !important;
  font-family: var(--salon-sans) !important;
  font-size: 1.04rem !important;
  font-weight: 500 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .familiar-management-actions .mini-action {
  min-height: 42px !important;
  border-radius: 11px !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .familiar-management-actions .profile-card-ask-action {
  border-color: var(--system-action) !important;
  background: var(--system-action) !important;
  color: #fff !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .familiar-management-actions .mini-action:not(.profile-card-ask-action) {
  border: 0 !important;
  background: var(--system-fill) !important;
  color: #1d4678 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .photo-preview-frame {
  outline-color: #676a70 !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView :where(
  .photo-person-rule,
  .photo-upload-control,
  .member-primary-photo-confirm,
  .member-photo-privacy-note
) {
  border-color: var(--system-line) !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .photo-person-rule-mark {
  border-color: var(--system-line-strong) !important;
  color: var(--system-muted) !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView :where(
  .social-fit-promise strong,
  .social-fit-overview-head strong,
  .social-fit-empty strong,
  .social-fit-summary-row strong
) {
  color: var(--system-ink) !important;
  font-family: var(--salon-sans) !important;
  font-weight: 500 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView :where(
  .social-fit-count,
  .social-fit-overview-head > .social-fit-count,
  .social-fit-completion-receipt
) {
  border-color: var(--system-line) !important;
  background: #f7f7f9 !important;
  color: var(--system-muted) !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView :where(
  .social-fit-facts,
  .social-fit-summary-list,
  .social-fit-empty
) {
  border-color: var(--system-line) !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path #accountView .social-fit-facts div {
  background: #fff !important;
}

/* Create Invitation -------------------------------------------------- */
body.is-unified-invitation-system.is-editorial-confidence-path.is-create-flow :where(
  #planView .plan-form,
  #whoView .profile-section,
  #reviewView .review-panel,
  #whoView .settings-fieldset,
  #whoView .privacy-strip
) {
  border: 1px solid var(--system-line) !important;
  border-radius: 16px !important;
  background: var(--system-paper) !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path.is-create-flow :where(
  #whoView .routing-lab,
  #whoView .routing-state-card,
  #whoView .familiar-picker-disclosure,
  #whoView .automatic-routing-receipt,
  #whoView .settings-note,
  #whoView .preference-panel
) {
  border-color: var(--system-line) !important;
  background: #f7f7f9 !important;
  color: var(--system-copy) !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path.is-create-flow #whoView .routing-lab {
  border-style: dashed !important;
  border-radius: 13px !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path.is-create-flow #whoView .routing-lab > summary {
  color: var(--system-muted) !important;
  font-weight: 400 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path.is-create-flow #whoView .familiar-picker-disclosure {
  border-radius: 14px !important;
  background: #fff !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path.is-create-flow #whoView .familiar-picker-disclosure > summary:hover,
body.is-unified-invitation-system.is-editorial-confidence-path.is-create-flow #whoView .familiar-picker-disclosure[open] > summary {
  border-color: var(--system-line) !important;
  background: #f7f7f9 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path.is-create-flow #whoView .familiar-picker-summary-copy strong {
  color: var(--system-ink) !important;
  font-family: var(--salon-sans) !important;
  font-weight: 500 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path.is-create-flow #whoView :where(
  .familiar-picker-mark,
  .automatic-routing-mark
) {
  width: 30px !important;
  height: 30px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--system-muted) !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path.is-create-flow #whoView .familiar-picker-mark::before,
body.is-unified-invitation-system.is-editorial-confidence-path.is-create-flow #whoView .familiar-picker-mark::after {
  border-color: var(--system-muted) !important;
  box-shadow: 0 9px 0 -2px var(--system-muted) !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path.is-create-flow #whoView .automatic-routing-mark::before,
body.is-unified-invitation-system.is-editorial-confidence-path.is-create-flow #whoView .automatic-routing-mark::after {
  border-color: var(--system-muted) !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path.is-create-flow #whoView .automatic-routing-receipt {
  border-radius: 14px !important;
  background: #fff !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path.is-create-flow #whoView .automatic-routing-receipt strong {
  color: var(--system-ink) !important;
  font-weight: 500 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path.is-create-flow #whoView .automatic-routing-receipt > div > span {
  color: var(--system-muted) !important;
  font-weight: 400 !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path.is-create-flow #whoView .profile-card {
  border-color: var(--system-line) !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path.is-create-flow #reviewView .review-panel {
  overflow: hidden;
  padding: 18px !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path.is-create-flow #reviewView .panel-head {
  padding-bottom: 14px !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path.is-create-flow #reviewView .review-summary-card.review-invitation-preview {
  overflow: hidden;
  border: 1px solid var(--system-line-strong) !important;
  border-radius: 16px !important;
  background: #fff !important;
  padding: 0 !important;
  color: var(--system-copy) !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.045) !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path.is-create-flow #reviewView .review-summary-card.review-invitation-preview::before {
  display: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path.is-create-flow #reviewView .review-summary-card .traditional-invitation-face {
  border: 0 !important;
  border-radius: 0 !important;
}

body.is-unified-invitation-system .review-invitation-terms {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 1px solid var(--system-line);
  background: #fafafd;
}

body.is-unified-invitation-system .review-invitation-terms span {
  min-width: 0;
  padding: 10px 12px;
  color: var(--system-muted);
  font-size: 0.68rem;
  font-weight: 400;
  line-height: 1.3;
}

body.is-unified-invitation-system .review-invitation-terms span:nth-child(even) {
  border-left: 1px solid var(--system-line);
}

body.is-unified-invitation-system .review-invitation-terms span:nth-child(n + 3) {
  border-top: 1px solid var(--system-line);
}

body.is-unified-invitation-system .invite-trip-context {
  color: var(--system-muted) !important;
  font-size: 0.72rem;
  font-weight: 400 !important;
  letter-spacing: 0;
  line-height: 1.35;
}

body.is-unified-invitation-system :where(
  .in-action-trip-context,
  .final-confirmation-trip-context,
  .out-invite-trip-context,
  .on-invite-trip-context,
  .work-row-trip-context
) {
  margin: 12px 20px 0;
}

body.is-unified-invitation-system .completed-plan-disclosure .on-invite-trip-context {
  margin: 4px 0 0;
}

body.is-unified-invitation-system .invite-record-identity.traditional-confirmation-receipt {
  width: fit-content !important;
  min-height: 40px !important;
  display: flex !important;
  grid-template-columns: none !important;
  align-items: center !important;
  gap: 9px !important;
  border: 0 !important;
  background: transparent !important;
  padding: 0 !important;
  color: var(--system-muted) !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system .confirmed-plan-card.is-upcoming > .traditional-confirmation-receipt {
  margin: 12px 20px 0;
}

body.is-unified-invitation-system .completed-plan-disclosure .traditional-confirmation-receipt {
  margin: 0 0 8px;
}

body.is-unified-invitation-system .traditional-confirmation-receipt > span:last-child {
  display: grid;
  gap: 1px;
}

body.is-unified-invitation-system .traditional-confirmation-receipt strong {
  color: var(--system-copy) !important;
  font-size: 0.72rem !important;
  font-weight: 500 !important;
}

body.is-unified-invitation-system .traditional-confirmation-receipt small {
  color: var(--system-muted) !important;
  font-size: 0.66rem !important;
  font-weight: 400 !important;
}

body.is-unified-invitation-system .traditional-confirmation-receipt .mutual-confirmation-seal,
body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object.is-unified-invitation-system .traditional-confirmation-receipt .mutual-confirmation-seal.is-header {
  width: 40px !important;
  height: 40px !important;
  flex: 0 0 40px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--system-muted) !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system .traditional-confirmation-receipt .mutual-seal-spark {
  fill: currentColor !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path.is-create-flow #reviewView :where(
  .review-private-settings,
  .review-person,
  .timeline-item
) {
  border-color: var(--system-line) !important;
  background: #f7f7f9 !important;
  box-shadow: none !important;
}

/* Supporting journeys and operations -------------------------------- */
body.is-unified-invitation-system.is-editorial-confidence-path :is(
  #applicantView,
  #setupView,
  #notificationJourneyView,
  #accessPolicyView,
  #pilotWalkthroughView,
  #lifecycleView
) :where(.journey-card, .journey-progress) {
  border-color: var(--system-line) !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-editorial-confidence-path :is(
  #applicantView,
  #setupView,
  #notificationJourneyView,
  #accessPolicyView,
  #pilotWalkthroughView,
  #lifecycleView
) :where(
  .privacy-promise-grid > *,
  .setup-choice-grid > *,
  .journey-result-card,
  .notification-preview-card,
  .policy-control-grid
) {
  border-color: var(--system-line) !important;
  background: #f7f7f9 !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system #memberOperationsView :where(
  .operations-stage-header,
  .operations-nav,
  .member-operations-command-bar,
  .member-operations-queue-card,
  .member-operations-review-card,
  .member-operations-checklist-card,
  .member-operations-task-detail
) {
  border-color: var(--system-line) !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system #memberOperationsView .member-operations-queue-item.is-active {
  border-color: var(--system-line-strong) !important;
  background: #f3f6fb !important;
}

@media (max-width: 900px) {
  body.is-unified-invitation-system.is-prototype-mobile #accountView .account-settings-index {
    gap: 0 !important;
  }

  body.is-unified-invitation-system.is-prototype-mobile #accountView .account-settings-list button {
    min-height: 64px !important;
  }

  body.is-unified-invitation-system.is-prototype-mobile #accountView .account-card {
    padding: 18px !important;
  }

  body.is-unified-invitation-system.is-prototype-mobile #reviewView .review-panel {
    padding: 14px !important;
  }
}

@media (max-width: 360px) {
  body.is-unified-invitation-system .review-invitation-terms {
    grid-template-columns: minmax(0, 1fr);
  }

  body.is-unified-invitation-system .review-invitation-terms span:nth-child(even) {
    border-left: 0;
  }

  body.is-unified-invitation-system .review-invitation-terms span + span {
    border-top: 1px solid var(--system-line);
  }
}

@media (max-width: 600px) {
  body.is-unified-invitation-system .notification-item.is-plan-check-in:has(.notification-item-action) {
    grid-template-columns: 22px minmax(0, 1fr) !important;
  }

  body.is-unified-invitation-system .notification-item.is-plan-check-in .notification-item-action {
    grid-column: 2 !important;
    grid-row: 2 !important;
    width: 100%;
    min-height: 44px;
    margin-top: 4px;
    justify-self: stretch;
  }
}

/* v12 final cascade: keep the two response decisions aligned after
   the inherited v11 narrow-layout rules. */
body.is-unified-invitation-system .find-event-action-row.is-traditional-rsvp,
body.is-unified-invitation-system .invite-detail-actions.is-traditional-rsvp,
body.is-unified-invitation-system .guest-response-row.is-traditional-rsvp {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr) !important;
}

body.is-unified-invitation-system .find-event-action-row.is-traditional-rsvp > button.find-not-now-action,
body.is-unified-invitation-system .invite-detail-actions.is-traditional-rsvp > button.secondary-action,
body.is-unified-invitation-system .find-event-action-row.is-traditional-rsvp > button.profile-add-action,
body.is-unified-invitation-system .invite-detail-actions.is-traditional-rsvp > button.profile-add-action {
  grid-row: auto !important;
  min-height: 52px !important;
}

body.is-unified-invitation-system .find-event-action-row.is-traditional-rsvp > button.find-not-now-action,
body.is-unified-invitation-system .invite-detail-actions.is-traditional-rsvp > button.secondary-action {
  grid-column: 1 !important;
}

body.is-unified-invitation-system .find-event-action-row.is-traditional-rsvp > button.profile-add-action,
body.is-unified-invitation-system .invite-detail-actions.is-traditional-rsvp > button.profile-add-action {
  grid-column: 2 !important;
}

body.is-unified-invitation-system .guest-response-row.is-traditional-rsvp > .inline-action {
  grid-column: 1 !important;
}

body.is-unified-invitation-system .guest-response-row.is-traditional-rsvp > .profile-add-action {
  grid-column: 2 !important;
}

body.is-unified-invitation-system .guest-response-row.invitation-confirmation-actions > .profile-add-action {
  grid-column: 1 / -1 !important;
}
/* Canonical v144: one restrained supporting-context language for viewer-private
   Trip cues and mutual-confirmation receipts. The Traditional Invitation face,
   RSVP controls, state logic, copy, and privacy behavior remain unchanged. */
body.is-unified-invitation-system {
  --support-context-bg: #f7f9fb;
  --support-context-line: rgba(38, 51, 66, 0.13);
  --support-context-icon: #596571;
  --support-context-copy: #59636e;
}

body.is-unified-invitation-system .invite-trip-context {
  align-items: center !important;
  gap: 9px !important;
  color: var(--support-context-copy) !important;
  font-size: 0.72rem !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
}

body.is-unified-invitation-system .invite-trip-context .trip-context-luggage {
  width: 20px !important;
  height: 20px !important;
  flex-basis: 20px !important;
  color: var(--support-context-icon) !important;
  stroke-width: 1.65 !important;
}

body.is-unified-invitation-system .confirmed-plan-card.is-upcoming > .on-invite-trip-context,
body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object.is-unified-invitation-system .confirmed-plan-card.is-upcoming[data-invite-signature] > .invite-record-identity.is-on.traditional-confirmation-receipt {
  box-sizing: border-box !important;
  width: auto !important;
  min-height: 48px !important;
  display: flex !important;
  grid-template-columns: none !important;
  align-items: center !important;
  gap: 10px !important;
  position: static !important;
  margin: 0 !important;
  border: 0 !important;
  border-top: 1px solid var(--support-context-line) !important;
  border-radius: 0 !important;
  background: var(--support-context-bg) !important;
  padding: 12px 20px !important;
  color: var(--support-context-copy) !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system .confirmed-plan-card.is-upcoming > .on-invite-trip-context + .traditional-confirmation-receipt {
  border-top-color: rgba(38, 51, 66, 0.09) !important;
}

body.is-unified-invitation-system .traditional-confirmation-receipt .mutual-confirmation-seal,
body.is-unified-invitation-system .completed-plan-disclosure .traditional-confirmation-receipt .mutual-confirmation-seal,
body.is-modern-salon.is-quiet-frame.is-apple-native.is-apple-reserved.is-invitation-object.is-unified-invitation-system .traditional-confirmation-receipt .mutual-confirmation-seal.is-header {
  width: 26px !important;
  height: 26px !important;
  flex: 0 0 26px !important;
  color: var(--support-context-icon) !important;
}

body.is-unified-invitation-system .traditional-confirmation-receipt .mutual-confirmation-seal svg {
  width: 24px !important;
  height: 24px !important;
}

body.is-unified-invitation-system .traditional-confirmation-receipt > span:last-child {
  min-width: 0;
  display: grid !important;
  gap: 2px !important;
  position: static !important;
  text-align: left !important;
}

body.is-unified-invitation-system .traditional-confirmation-receipt strong {
  color: var(--system-copy) !important;
  font-size: 0.74rem !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
}

body.is-unified-invitation-system .traditional-confirmation-receipt small {
  color: var(--system-muted) !important;
  font-size: 0.7rem !important;
  font-weight: 400 !important;
  line-height: 1.25 !important;
}

body.is-unified-invitation-system .completed-plan-disclosure .traditional-confirmation-receipt {
  min-height: 32px !important;
  gap: 9px !important;
}

body.is-unified-invitation-system .completed-plan-disclosure .on-invite-trip-context {
  margin-top: 7px !important;
}
/* Canonical v145: confirmed-plan utilities stay unmistakably under On. The
   accepted Invitation face remains unchanged; this layer only composes the
   always-visible counterpart receipt, calendar export, and detail access. */
body.is-unified-invitation-system .confirmed-plan-card.is-upcoming > .on-ready-strip {
  box-sizing: border-box;
  min-height: 58px;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center;
  gap: 10px;
  margin: 0 !important;
  border: 0 !important;
  border-top: 1px solid var(--support-context-line) !important;
  border-radius: 0 !important;
  background: #fff !important;
  padding: 9px 16px !important;
}

body.is-unified-invitation-system .confirmed-plan-card.is-upcoming > .on-ready-strip > div {
  min-width: 0;
  display: grid;
  gap: 2px;
}

body.is-unified-invitation-system .confirmed-plan-card.is-upcoming > .on-ready-strip > div > strong {
  color: var(--system-ink) !important;
  font-size: 0.8rem !important;
  font-weight: 500 !important;
  line-height: 1.2;
}

body.is-unified-invitation-system .confirmed-plan-card.is-upcoming > .on-ready-strip > div > small {
  color: var(--system-muted) !important;
  font-size: 0.68rem !important;
  font-weight: 400 !important;
  line-height: 1.3;
}

body.is-unified-invitation-system .on-calendar-action {
  min-width: 132px;
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid rgba(8, 120, 230, 0.28);
  border-radius: 11px;
  background: #f6f9fd;
  color: var(--system-action);
  padding: 6px 10px;
  text-decoration: none;
}

body.is-unified-invitation-system .on-calendar-action:hover {
  border-color: rgba(8, 120, 230, 0.48);
  background: #eef5fd;
}

body.is-unified-invitation-system .on-calendar-action:focus-visible {
  outline: 3px solid rgba(8, 120, 230, 0.24);
  outline-offset: 2px;
}

body.is-unified-invitation-system .on-calendar-action > svg {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.65;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body.is-unified-invitation-system .on-calendar-action > span {
  min-width: 0;
  display: grid;
  gap: 1px;
  text-align: left;
}

body.is-unified-invitation-system .on-calendar-action strong,
body.is-unified-invitation-system .on-calendar-action small {
  display: block;
  white-space: nowrap;
}

body.is-unified-invitation-system .on-calendar-action strong {
  color: currentColor;
  font-size: 0.69rem;
  font-weight: 500;
  line-height: 1.15;
}

body.is-unified-invitation-system .on-calendar-action small {
  color: var(--system-muted);
  font-size: 0.58rem;
  font-weight: 400;
  line-height: 1.15;
}

body.is-unified-invitation-system .on-counterpart-summary {
  min-height: 76px;
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  border-top: 1px solid var(--support-context-line);
  background: #fafbfc;
  padding: 11px 16px;
}

body.is-unified-invitation-system .on-counterpart-photo {
  width: 52px;
  height: 52px;
  display: block;
  border: 1px solid rgba(38, 51, 66, 0.13);
  border-radius: 15px;
  background: #fff;
  object-fit: cover;
  object-position: center 24%;
  box-shadow: none;
}

body.is-unified-invitation-system .on-counterpart-summary > span {
  min-width: 0;
  display: grid;
  gap: 2px;
}

body.is-unified-invitation-system .on-counterpart-summary > span > small {
  color: var(--system-muted);
  font-size: 0.56rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.2;
  text-transform: uppercase;
}

body.is-unified-invitation-system .on-counterpart-summary > span > strong {
  color: var(--system-ink);
  font-size: 0.94rem;
  font-weight: 500;
  line-height: 1.2;
}

body.is-unified-invitation-system .on-counterpart-summary > span > span {
  color: var(--system-muted);
  font-size: 0.69rem;
  font-weight: 400;
  line-height: 1.3;
}

body.is-unified-invitation-system .confirmed-plan-card.is-upcoming > .on-plan-disclosure {
  margin: 0 14px 12px !important;
  border-top: 0 !important;
}

body.is-unified-invitation-system .confirmed-plan-card.is-upcoming > .on-plan-disclosure > summary {
  min-height: 52px;
  border-top: 0;
  padding: 8px 2px;
}

body.is-unified-invitation-system .confirmed-plan-card.is-upcoming > .on-plan-disclosure > summary strong {
  color: var(--system-copy);
  font-size: 0.78rem;
  font-weight: 500;
}

body.is-unified-invitation-system .confirmed-plan-card.is-upcoming > .on-plan-disclosure > summary small {
  color: var(--system-muted);
  font-size: 0.68rem;
  font-weight: 400;
}

body.is-unified-invitation-system .confirmed-plan-card.is-upcoming > .on-plan-disclosure .disclosure-label {
  color: var(--system-action);
  font-size: 0.69rem;
  font-weight: 500;
}

@media (max-width: 340px) {
  body.is-unified-invitation-system .confirmed-plan-card.is-upcoming > .on-ready-strip {
    grid-template-columns: minmax(0, 1fr) 122px !important;
    gap: 8px;
    padding-inline: 14px !important;
  }

  body.is-unified-invitation-system .on-calendar-action {
    min-width: 0;
    padding-inline: 8px;
  }

  body.is-unified-invitation-system .on-calendar-action > svg {
    width: 18px;
    height: 18px;
    flex-basis: 18px;
  }

  body.is-unified-invitation-system .on-counterpart-summary {
    grid-template-columns: 48px minmax(0, 1fr);
    padding-inline: 14px;
  }

  body.is-unified-invitation-system .on-counterpart-photo {
    width: 48px;
    height: 48px;
    border-radius: 14px;
  }
}
/* Canonical v146: completed Past records expose optional private follow-up
   and repeat-draft entry without changing the accepted Invitation face. */
body.is-unified-invitation-system .confirmed-plan-card.is-completed > .plan-followup {
  margin: 0;
  border-top: 1px solid var(--support-context-line);
  background: #fafbfc;
  padding: 14px 16px 13px;
}

body.is-unified-invitation-system .confirmed-plan-card.is-completed .plan-followup-head {
  align-items: center;
}

body.is-unified-invitation-system .confirmed-plan-card.is-completed .plan-followup-head > div {
  gap: 2px;
}

body.is-unified-invitation-system .confirmed-plan-card.is-completed .plan-followup-head small {
  color: var(--system-muted);
  font-size: 0.56rem;
  font-style: normal;
  font-weight: 500;
  letter-spacing: 0.11em;
  line-height: 1.2;
  text-transform: uppercase;
}

body.is-unified-invitation-system .confirmed-plan-card.is-completed .plan-followup-head strong {
  color: var(--system-ink);
  font-size: 0.88rem;
  font-weight: 500;
  line-height: 1.25;
}

body.is-unified-invitation-system .confirmed-plan-card.is-completed .plan-followup-head span:not(.quiet-pill) {
  color: var(--system-muted);
  font-size: 0.68rem;
  font-weight: 400;
}

body.is-unified-invitation-system .confirmed-plan-card.is-completed .plan-followup-head .quiet-pill {
  flex: 0 0 auto;
  border: 1px solid var(--system-line);
  background: #fff;
  color: var(--system-muted);
  padding: 5px 8px;
  font-size: 0.58rem;
  font-weight: 400;
}

body.is-unified-invitation-system .plan-followup-featured-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 12px;
}

body.is-unified-invitation-system .past-feature-action {
  min-width: 0;
  min-height: 64px;
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: center;
  gap: 9px;
  border: 1px solid rgba(8, 120, 230, 0.24);
  border-radius: 12px;
  background: #fff;
  color: var(--system-action);
  padding: 9px 10px;
  text-align: left;
}

body.is-unified-invitation-system .past-feature-action.is-repeat {
  border-color: rgba(8, 120, 230, 0.36);
  background: #f3f8fd;
}

body.is-unified-invitation-system .past-feature-action:hover {
  border-color: rgba(8, 120, 230, 0.48);
  background: #eef5fd;
}

body.is-unified-invitation-system .past-feature-action:focus-visible {
  outline: 3px solid rgba(8, 120, 230, 0.24);
  outline-offset: 2px;
}

body.is-unified-invitation-system .past-feature-action > svg {
  width: 24px;
  height: 24px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.65;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body.is-unified-invitation-system .past-feature-action > span {
  min-width: 0;
  display: grid;
  gap: 2px;
}

body.is-unified-invitation-system .past-feature-action strong {
  color: currentColor;
  font-size: 0.7rem;
  font-weight: 500;
  line-height: 1.2;
}

body.is-unified-invitation-system .past-feature-action small {
  color: var(--system-muted);
  font-size: 0.6rem;
  font-weight: 400;
  line-height: 1.25;
}

body.is-unified-invitation-system .confirmed-plan-card.is-completed .plan-followup-actions {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
  margin-top: 8px;
}

body.is-unified-invitation-system .confirmed-plan-card.is-completed .plan-followup-actions button {
  min-height: 44px;
  border-color: var(--system-line);
  border-radius: 11px;
  color: var(--system-copy);
  padding: 7px 9px;
  font-size: 0.66rem;
  font-weight: 400;
}

body.is-unified-invitation-system .confirmed-plan-card.is-completed .plan-followup-actions .is-help {
  grid-column: 1 / -1;
  color: #7a3027;
}

body.is-unified-invitation-system .plan-followup-boundary {
  margin: 9px 0 0;
  color: var(--system-muted);
  font-size: 0.61rem;
  font-weight: 400;
  line-height: 1.4;
}

body.is-unified-invitation-system .confirmed-plan-card.is-completed > .completed-plan-disclosure {
  margin-top: 0 !important;
  border-top: 1px solid var(--support-context-line) !important;
}

body.is-unified-invitation-system .repeat-invite-seed-receipt {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  align-items: start;
  gap: 11px;
  border: 1px solid rgba(8, 120, 230, 0.24);
  border-radius: 14px;
  background: #f4f8fc;
  padding: 12px 13px;
}

body.is-unified-invitation-system .repeat-invite-seed-receipt[hidden] {
  display: none;
}

body.is-unified-invitation-system .repeat-invite-seed-icon {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 11px;
  background: #fff;
  color: var(--system-action);
}

body.is-unified-invitation-system .repeat-invite-seed-icon svg {
  width: 21px;
  height: 21px;
}

body.is-unified-invitation-system .repeat-invite-seed-receipt > span:last-child {
  min-width: 0;
  display: grid;
  gap: 3px;
}

body.is-unified-invitation-system .repeat-invite-seed-receipt small {
  color: var(--system-muted);
  font-size: 0.56rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

body.is-unified-invitation-system .repeat-invite-seed-receipt strong {
  color: var(--system-ink);
  font-size: 0.82rem;
  font-weight: 500;
  line-height: 1.25;
}

body.is-unified-invitation-system .repeat-invite-seed-receipt span,
body.is-unified-invitation-system .repeat-invite-seed-receipt em {
  color: var(--system-muted);
  font-size: 0.67rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.4;
}

body.is-unified-invitation-system .repeat-invite-seed-receipt em {
  margin-top: 2px;
  color: var(--system-copy);
}

@media (max-width: 340px) {
  body.is-unified-invitation-system .confirmed-plan-card.is-completed > .plan-followup {
    padding-inline: 14px;
  }

  body.is-unified-invitation-system .confirmed-plan-card.is-completed .plan-followup-head {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
  }

  body.is-unified-invitation-system .confirmed-plan-card.is-completed .plan-followup-head .quiet-pill {
    max-width: 88px;
    text-align: center;
  }

  body.is-unified-invitation-system .plan-followup-featured-actions {
    grid-template-columns: minmax(0, 1fr);
  }
}
/* Canonical v147: expanded leaf-level activity discovery and a category-bound
   custom activity path stay inside Create Invitation. */
body.is-unified-invitation-system .activity-menu .option-stack {
  gap: 6px;
  max-height: min(58vh, 420px);
}

body.is-unified-invitation-system .activity-option-group {
  overflow: hidden;
  border: 1px solid var(--system-line);
  border-radius: 13px;
  background: #fff;
}

body.is-unified-invitation-system .activity-option-group + .activity-option-group {
  margin-top: 2px;
}

body.is-unified-invitation-system summary.activity-option-head {
  min-height: 58px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 9px 11px;
  cursor: pointer;
  list-style: none;
}

body.is-unified-invitation-system summary.activity-option-head::-webkit-details-marker {
  display: none;
}

body.is-unified-invitation-system summary.activity-option-head > span {
  min-width: 0;
  display: grid;
  gap: 2px;
}

body.is-unified-invitation-system summary.activity-option-head > span > strong {
  color: var(--system-ink);
  font-size: 0.78rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

body.is-unified-invitation-system summary.activity-option-head > span > small {
  color: var(--system-muted);
  font-size: 0.68rem;
  font-weight: 400;
  line-height: 1.3;
}

body.is-unified-invitation-system summary.activity-option-head > em {
  min-width: 66px;
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  color: var(--system-muted);
  font-size: 0.64rem;
  font-style: normal;
  font-weight: 400;
  white-space: nowrap;
}

body.is-unified-invitation-system summary.activity-option-head > em::after {
  width: 8px;
  height: 8px;
  border-right: 1.5px solid var(--system-copy);
  border-bottom: 1.5px solid var(--system-copy);
  content: "";
  transform: rotate(45deg) translateY(-2px);
  transition: transform 150ms ease;
}

body.is-unified-invitation-system .activity-option-group[open] > summary.activity-option-head > em::after {
  transform: rotate(225deg) translate(-2px, -1px);
}

body.is-unified-invitation-system .activity-option-group[open] > summary.activity-option-head {
  border-bottom: 1px solid var(--system-line);
  background: #f8f9fb;
}

body.is-unified-invitation-system .activity-option-list {
  display: grid;
  gap: 5px;
  padding: 7px;
}

body.is-unified-invitation-system .activity-option {
  min-height: 44px;
  border-radius: 10px;
  background: #f5f6f8;
  padding: 9px 10px;
}

body.is-unified-invitation-system .activity-option em {
  font-weight: 450;
}

body.is-unified-invitation-system .activity-option.is-custom {
  border: 1px solid #cbd4df;
  background: #fff;
}

body.is-unified-invitation-system .activity-option.is-custom span {
  display: grid;
  gap: 2px;
}

body.is-unified-invitation-system .activity-option.is-custom small {
  font-size: 0.68rem;
  font-weight: 400;
}

body.is-unified-invitation-system .activity-no-match {
  border: 1px solid var(--system-line);
  border-radius: 13px;
  background: #f8f9fb;
  display: grid;
  gap: 7px;
  padding: 12px;
}

body.is-unified-invitation-system .activity-no-match > strong {
  color: var(--system-ink);
  font-size: 0.8rem;
  font-weight: 500;
}

body.is-unified-invitation-system .activity-no-match > span {
  color: var(--system-muted);
  font-size: 0.7rem;
  font-weight: 400;
  line-height: 1.35;
}

body.is-unified-invitation-system .activity-no-match > div {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}

body.is-unified-invitation-system .activity-no-match button {
  min-height: 44px;
  border: 1px solid #cbd4df;
  border-radius: 9px;
  background: #fff;
  color: var(--system-copy);
  padding: 7px 8px;
  font-size: 0.7rem;
  font-weight: 450;
  text-align: left;
}

body.is-unified-invitation-system .custom-activity-field {
  margin-top: 10px;
  border: 1px solid #cbd4df;
  border-radius: 14px;
  background: #f8f9fb;
  display: grid;
  gap: 6px;
  padding: 12px;
}

body.is-unified-invitation-system .custom-activity-field[hidden] {
  display: none;
}

body.is-unified-invitation-system .custom-activity-field label {
  display: grid;
  gap: 7px;
}

body.is-unified-invitation-system .custom-activity-field input {
  border-radius: 10px;
  background: #fff;
  font-weight: 450;
}

body.is-unified-invitation-system .custom-activity-field > p {
  margin: 0;
  color: var(--system-muted);
  font-size: 0.68rem;
  font-weight: 400;
  line-height: 1.4;
}

@media (max-width: 340px) {
  body.is-unified-invitation-system .activity-no-match > div {
    grid-template-columns: minmax(0, 1fr);
  }

  body.is-unified-invitation-system summary.activity-option-head {
    gap: 8px;
    padding-inline: 9px;
  }
}
/* Canonical v148: one neutral, professional Create Invitation workspace across
   Invite, Guests, and Review. The Traditional Invitation face remains frozen. */
body.is-unified-invitation-system.is-create-flow #planView,
body.is-unified-invitation-system.is-create-flow #whoView,
body.is-unified-invitation-system.is-create-flow #reviewView {
  --create-surface: #ffffff;
  --create-subtle: #f7f8fa;
  --create-hover: #f2f5f8;
  --create-line: #d8dde5;
  --create-line-strong: #b8c1cc;
  --create-copy: #3f4650;
  --create-muted: #6f7681;
  color: var(--system-ink);
}

body.is-unified-invitation-system.is-create-flow #planView .plan-form,
body.is-unified-invitation-system.is-create-flow #whoView,
body.is-unified-invitation-system.is-create-flow #reviewView {
  gap: 16px;
}

body.is-unified-invitation-system.is-create-flow #planView .plan-form > fieldset,
body.is-unified-invitation-system.is-create-flow #planView .plan-form > .field-grid,
body.is-unified-invitation-system.is-create-flow #planView .plan-form > .invite-essential-grid,
body.is-unified-invitation-system.is-create-flow #planView .plan-form > .decision-context-field {
  margin: 0;
}

body.is-unified-invitation-system.is-create-flow #planView fieldset,
body.is-unified-invitation-system.is-create-flow #whoView fieldset {
  min-width: 0;
}

body.is-unified-invitation-system.is-create-flow #planView legend,
body.is-unified-invitation-system.is-create-flow #planView .field-label-row,
body.is-unified-invitation-system.is-create-flow #planView .plan-details-fields label,
body.is-unified-invitation-system.is-create-flow #whoView .compact-grid label,
body.is-unified-invitation-system.is-create-flow #whoView .routing-lab-body label,
body.is-unified-invitation-system.is-create-flow #whoView .settings-fieldset > legend {
  color: var(--create-copy);
  font-size: 0.78rem;
  font-weight: 500;
  line-height: 1.3;
}

body.is-unified-invitation-system.is-create-flow #planView .required-mark {
  color: #6d3f43;
  font-size: 0.56rem;
  font-weight: 500;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

body.is-unified-invitation-system.is-create-flow #planView input:not([type="hidden"]),
body.is-unified-invitation-system.is-create-flow #planView select,
body.is-unified-invitation-system.is-create-flow #planView textarea,
body.is-unified-invitation-system.is-create-flow #whoView select {
  min-height: 48px;
  border: 1px solid var(--create-line);
  border-radius: 12px;
  background: var(--create-surface);
  color: var(--system-ink);
  font: inherit;
  font-size: 0.84rem;
  font-weight: 400;
  box-shadow: none;
}

body.is-unified-invitation-system.is-create-flow #planView input:not([type="hidden"]):hover,
body.is-unified-invitation-system.is-create-flow #planView select:hover,
body.is-unified-invitation-system.is-create-flow #planView textarea:hover,
body.is-unified-invitation-system.is-create-flow #whoView select:hover {
  border-color: var(--create-line-strong);
}

body.is-unified-invitation-system.is-create-flow #planView input:not([type="hidden"]):focus-visible,
body.is-unified-invitation-system.is-create-flow #planView select:focus-visible,
body.is-unified-invitation-system.is-create-flow #planView textarea:focus-visible,
body.is-unified-invitation-system.is-create-flow #whoView select:focus-visible {
  border-color: var(--system-action);
  outline: 3px solid rgba(8, 120, 230, 0.16);
  outline-offset: 1px;
  background: #fff;
}

body.is-unified-invitation-system.is-create-flow #planView .field-hint,
body.is-unified-invitation-system.is-create-flow #planView .custom-activity-field > p,
body.is-unified-invitation-system.is-create-flow #whoView .section-note,
body.is-unified-invitation-system.is-create-flow #whoView .settings-note {
  color: var(--create-muted);
  font-size: 0.7rem;
  font-weight: 400;
  line-height: 1.42;
}

body.is-unified-invitation-system.is-create-flow #planView .activity-picker,
body.is-unified-invitation-system.is-create-flow #planView .date-picker-panel,
body.is-unified-invitation-system.is-create-flow #planView .invite-town-picker,
body.is-unified-invitation-system.is-create-flow #planView .plan-details-disclosure,
body.is-unified-invitation-system.is-create-flow #planView .custom-activity-field {
  border: 1px solid var(--create-line);
  border-radius: 14px;
  background: var(--create-surface);
  box-shadow: none;
}

body.is-unified-invitation-system.is-create-flow #planView .activity-picker:hover,
body.is-unified-invitation-system.is-create-flow #planView .invite-town-picker > summary:hover,
body.is-unified-invitation-system.is-create-flow #planView .plan-details-disclosure > summary:hover {
  border-color: var(--create-line-strong);
  background: var(--create-hover);
}

body.is-unified-invitation-system.is-create-flow #planView .activity-picker:focus-visible,
body.is-unified-invitation-system.is-create-flow #planView .invite-town-picker > summary:focus-visible,
body.is-unified-invitation-system.is-create-flow #planView .plan-details-disclosure > summary:focus-visible {
  outline: 3px solid rgba(8, 120, 230, 0.16);
  outline-offset: 1px;
}

body.is-unified-invitation-system.is-create-flow #planView .activity-picker .selected-tag {
  color: var(--system-ink);
  font-weight: 500;
}

body.is-unified-invitation-system.is-create-flow #planView .activity-picker .picker-copy {
  color: var(--create-muted);
  font-weight: 400;
}

body.is-unified-invitation-system.is-create-flow #planView .activity-menu {
  border-color: var(--create-line);
  background: #fff;
  box-shadow: 0 18px 42px rgba(22, 31, 43, 0.12);
}

body.is-unified-invitation-system.is-create-flow #planView .activity-option-group,
body.is-unified-invitation-system.is-create-flow #planView .activity-no-match,
body.is-unified-invitation-system.is-create-flow #planView .activity-option.is-custom {
  border-color: var(--create-line);
}

body.is-unified-invitation-system.is-create-flow #planView .activity-option,
body.is-unified-invitation-system.is-create-flow #planView .activity-option-group[open] > summary.activity-option-head,
body.is-unified-invitation-system.is-create-flow #planView .activity-no-match {
  background: var(--create-subtle);
}

body.is-unified-invitation-system.is-create-flow #planView .activity-option.is-custom,
body.is-unified-invitation-system.is-create-flow #planView .custom-activity-field,
body.is-unified-invitation-system.is-create-flow #planView .custom-activity-field input {
  background: #fff;
}

body.is-unified-invitation-system.is-create-flow #planView .requirements-panel {
  border: 1px solid var(--create-line);
  border-radius: 13px;
  background: var(--create-subtle);
  box-shadow: none;
}

body.is-unified-invitation-system.is-create-flow #planView .requirements-panel em,
body.is-unified-invitation-system.is-create-flow #planView .requirements-panel .quiet-pill {
  border: 0;
  background: transparent;
  color: #566171;
  font-size: 0.58rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

body.is-unified-invitation-system.is-create-flow #planView .date-picker-panel,
body.is-unified-invitation-system.is-create-flow #planView .invite-town-picker {
  overflow: hidden;
}

body.is-unified-invitation-system.is-create-flow #planView .date-quick-row button,
body.is-unified-invitation-system.is-create-flow #planView .date-grid-toggle {
  min-height: 44px;
  border: 1px solid var(--create-line);
  border-radius: 11px;
  background: #fff;
  color: var(--create-copy);
  font-weight: 400;
  box-shadow: none;
}

body.is-unified-invitation-system.is-create-flow #planView .date-quick-row button.is-selected {
  border-color: var(--system-action);
  background: var(--system-action);
  color: #fff;
}

body.is-unified-invitation-system.is-create-flow #planView .date-grid-toggle {
  color: var(--system-action);
  font-weight: 500;
}

body.is-unified-invitation-system.is-create-flow #planView .invite-town-picker > summary,
body.is-unified-invitation-system.is-create-flow #planView .plan-details-disclosure > summary {
  border: 0;
  background: #fff;
}

body.is-unified-invitation-system.is-create-flow #planView .invite-town-mark {
  border: 0;
  background: transparent;
  color: var(--create-copy);
}

body.is-unified-invitation-system.is-create-flow #planView .invite-town-summary-copy strong,
body.is-unified-invitation-system.is-create-flow #planView .plan-details-disclosure > summary strong {
  color: var(--system-ink);
  font-weight: 500;
}

body.is-unified-invitation-system.is-create-flow #planView .invite-town-summary-copy small,
body.is-unified-invitation-system.is-create-flow #planView .plan-details-disclosure > summary small {
  color: var(--create-muted);
  font-weight: 400;
}

body.is-unified-invitation-system.is-create-flow #planView .plan-details-disclosure[open] > summary {
  border-bottom: 1px solid var(--create-line);
  background: var(--create-subtle);
}

body.is-unified-invitation-system.is-create-flow #planView .plan-details-disclosure > summary em {
  color: var(--system-action);
  font-weight: 500;
}

body.is-unified-invitation-system.is-create-flow #planView .plan-details-fields {
  border-top: 0;
  padding: 14px;
  background: #fff;
}

body.is-unified-invitation-system.is-create-flow #planView .plan-policy-summary {
  margin-top: 12px;
  border: 1px solid var(--create-line);
  border-radius: 11px;
  background: var(--create-subtle);
  padding: 0;
  display: grid;
  grid-template-columns: auto auto minmax(0, 1fr);
  gap: 0;
}

body.is-unified-invitation-system.is-create-flow #planView .plan-policy-summary span,
body.is-unified-invitation-system.is-create-flow #planView .plan-policy-summary small {
  min-height: 38px;
  border: 0;
  border-right: 1px solid var(--create-line);
  border-radius: 0;
  background: transparent;
  color: var(--create-copy);
  padding: 0 10px;
  display: flex;
  align-items: center;
  font-size: 0.68rem;
  font-weight: 400;
}

body.is-unified-invitation-system.is-create-flow #planView .plan-policy-summary span::before {
  margin-right: 6px;
  color: var(--system-action);
  content: "✓";
  font-weight: 500;
}

body.is-unified-invitation-system.is-create-flow #planView .plan-policy-summary small {
  border-right: 0;
  color: var(--create-muted);
}

body.is-unified-invitation-system.is-create-flow #planView .decision-context-field {
  border-top: 1px solid var(--create-line);
  padding-top: 16px;
  display: grid;
  gap: 7px;
}

body.is-unified-invitation-system.is-create-flow #planView .decision-context-field textarea {
  min-height: 132px;
  padding: 12px 13px;
  resize: vertical;
  line-height: 1.48;
}

body.is-unified-invitation-system.is-create-flow #planView .fill-example-action {
  min-height: 44px;
  width: fit-content;
  border: 1px solid var(--create-line);
  border-radius: 11px;
  background: #fff;
  color: var(--system-action);
  padding: 0 12px;
  font-size: 0.72rem;
  font-weight: 500;
}

body.is-unified-invitation-system.is-create-flow #planView .fill-example-action:hover,
body.is-unified-invitation-system.is-create-flow #planView .fill-example-action:focus-visible {
  border-color: var(--create-line-strong);
  background: var(--create-hover);
}

body.is-unified-invitation-system.is-create-flow #planView .field-error:not(:empty) {
  margin-top: 1px;
  border-left: 2px solid #a33d46;
  color: #8b3038;
  padding-left: 8px;
  font-size: 0.68rem;
  font-weight: 500;
}

body.is-unified-invitation-system.is-create-flow #whoView .routing-lab,
body.is-unified-invitation-system.is-create-flow #whoView .profile-section,
body.is-unified-invitation-system.is-create-flow #whoView .familiar-picker-disclosure,
body.is-unified-invitation-system.is-create-flow #whoView .automatic-routing-receipt,
body.is-unified-invitation-system.is-create-flow #whoView .settings-fieldset,
body.is-unified-invitation-system.is-create-flow #whoView .privacy-strip,
body.is-unified-invitation-system.is-create-flow #reviewView .review-panel {
  border: 1px solid var(--create-line);
  background: #fff;
  box-shadow: none;
}

body.is-unified-invitation-system.is-create-flow #whoView .routing-lab {
  border-style: dashed;
  border-radius: 12px;
  color: var(--create-muted);
  padding: 6px 10px;
}

body.is-unified-invitation-system.is-create-flow #whoView .routing-lab > summary,
body.is-unified-invitation-system.is-create-flow #whoView .routing-lab-body > span {
  color: var(--create-muted);
  font-weight: 400;
}

body.is-unified-invitation-system.is-create-flow #whoView .profile-section,
body.is-unified-invitation-system.is-create-flow #whoView .settings-fieldset,
body.is-unified-invitation-system.is-create-flow #whoView .privacy-strip {
  border-radius: 16px;
  padding: 14px;
}

body.is-unified-invitation-system.is-create-flow #whoView .section-head h2,
body.is-unified-invitation-system.is-create-flow #whoView .settings-fieldset > legend,
body.is-unified-invitation-system.is-create-flow #whoView .privacy-strip h2 {
  color: var(--system-ink);
  font-family: inherit;
  font-weight: 500;
}

body.is-unified-invitation-system.is-create-flow #whoView .familiar-picker-disclosure {
  overflow: hidden;
  border-radius: 14px;
}

body.is-unified-invitation-system.is-create-flow #whoView .familiar-picker-disclosure > summary,
body.is-unified-invitation-system.is-create-flow #whoView .familiar-picker-disclosure[open] > summary {
  border: 0;
  background: #fff;
}

body.is-unified-invitation-system.is-create-flow #whoView .familiar-picker-disclosure[open] > summary {
  border-bottom: 1px solid var(--create-line);
  background: var(--create-subtle);
}

body.is-unified-invitation-system.is-create-flow #whoView .familiar-picker-disclosure > summary:hover {
  background: var(--create-hover);
}

body.is-unified-invitation-system.is-create-flow #whoView .familiar-picker-disclosure > summary:focus-visible {
  outline: 3px solid rgba(8, 120, 230, 0.16);
  outline-offset: -3px;
}

body.is-unified-invitation-system.is-create-flow #whoView .familiar-picker-mark,
body.is-unified-invitation-system.is-create-flow #whoView .automatic-routing-mark {
  width: 34px;
  height: 34px;
  flex-basis: 34px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--create-copy);
  display: grid;
  place-items: center;
}

body.is-unified-invitation-system.is-create-flow #whoView .familiar-picker-mark::before,
body.is-unified-invitation-system.is-create-flow #whoView .familiar-picker-mark::after,
body.is-unified-invitation-system.is-create-flow #whoView .automatic-routing-mark::before,
body.is-unified-invitation-system.is-create-flow #whoView .automatic-routing-mark::after {
  display: none;
}

body.is-unified-invitation-system.is-create-flow #whoView .familiar-picker-mark svg,
body.is-unified-invitation-system.is-create-flow #whoView .automatic-routing-mark svg {
  width: 22px;
  height: 22px;
}

body.is-unified-invitation-system.is-create-flow #whoView .familiar-picker-summary-copy strong {
  color: var(--system-ink);
  font-family: inherit;
  font-size: 0.86rem;
  font-weight: 500;
}

body.is-unified-invitation-system.is-create-flow #whoView .familiar-picker-summary-copy small,
body.is-unified-invitation-system.is-create-flow #whoView .automatic-routing-receipt > div > span {
  color: var(--create-muted);
  font-size: 0.7rem;
  font-weight: 400;
}

body.is-unified-invitation-system.is-create-flow #whoView .familiar-picker-summary-state .disclosure-label,
body.is-unified-invitation-system.is-create-flow #whoView .preference-disclosure {
  color: var(--system-action);
  font-weight: 500;
}

body.is-unified-invitation-system.is-create-flow #whoView .familiar-picker-summary-state .response-disclosure-chevron {
  width: 30px;
  height: 30px;
  border: 0;
  border-radius: 50%;
  background: var(--create-subtle);
  display: grid;
  place-items: center;
  transform: none;
}

body.is-unified-invitation-system.is-editorial-confidence-path.is-create-flow #whoView .automatic-routing-receipt,
body.is-unified-invitation-system.is-create-flow #whoView .automatic-routing-receipt {
  border-radius: 14px;
  background: var(--create-subtle) !important;
}

body.is-unified-invitation-system.is-create-flow #whoView .automatic-routing-receipt strong {
  color: var(--system-ink);
  font-weight: 500;
}

body.is-unified-invitation-system.is-create-flow #whoView .automatic-routing-receipt > .quiet-pill,
body.is-unified-invitation-system.is-create-flow #whoView .familiar-picker-summary-state .quiet-pill,
body.is-unified-invitation-system.is-create-flow #whoView .privacy-strip > .quiet-pill {
  border: 1px solid var(--create-line);
  background: #fff;
  color: var(--create-copy);
  font-weight: 400;
}

body.is-unified-invitation-system.is-create-flow #whoView .preference-disclosure {
  min-height: 46px;
  border: 1px solid var(--create-line);
  border-radius: 11px;
  background: #fff;
}

body.is-unified-invitation-system.is-create-flow #whoView .preference-disclosure:hover,
body.is-unified-invitation-system.is-create-flow #whoView .preference-disclosure:focus-visible {
  border-color: var(--create-line-strong);
  background: var(--create-hover);
}

body.is-unified-invitation-system.is-create-flow #whoView .settings-note {
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 9px 0 0;
}

body.is-unified-invitation-system.is-create-flow #whoView #preferenceIndicator,
body.is-unified-invitation-system.is-create-flow #whoView #settingsSummary {
  border-top: 1px solid var(--create-line);
  background: transparent;
  padding: 10px 0 0;
}

body.is-unified-invitation-system.is-create-flow #whoView #settingsSummary {
  margin-top: 10px;
}

body.is-unified-invitation-system.is-create-flow #whoView .preference-panel {
  margin-top: 12px;
  border-color: var(--create-line);
  border-radius: 13px;
  background: var(--create-subtle);
}

body.is-unified-invitation-system.is-create-flow #whoView .switch-row {
  border-color: var(--create-line);
  background: #fff;
}

body.is-unified-invitation-system.is-create-flow #whoView .privacy-strip {
  background: var(--create-subtle);
}

body.is-unified-invitation-system.is-create-flow #reviewView .review-panel {
  border-radius: 16px;
  background: #fff;
  backdrop-filter: none;
}

body.is-unified-invitation-system.is-create-flow #reviewView .panel-head {
  border-bottom: 1px solid var(--create-line);
  padding-bottom: 13px;
}

body.is-unified-invitation-system.is-create-flow #reviewView .panel-head h2 {
  color: var(--system-ink);
  font-family: inherit;
  font-weight: 500;
}

body.is-unified-invitation-system.is-create-flow #reviewView .status-dot {
  border: 1px solid var(--create-line);
  background: var(--create-subtle);
  color: var(--create-copy);
  font-weight: 400;
}

body.is-unified-invitation-system.is-create-flow #reviewView .review-people,
body.is-unified-invitation-system.is-create-flow #reviewView .timeline-list {
  border-color: var(--create-line);
  background: var(--create-subtle);
}

@media (max-width: 560px) {
  body.is-unified-invitation-system.is-create-flow #planView .plan-policy-summary {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }

  body.is-unified-invitation-system.is-create-flow #planView .plan-policy-summary small {
    min-height: 32px;
    grid-column: 1 / -1;
    border-top: 1px solid var(--create-line);
  }

  body.is-unified-invitation-system.is-create-flow #planView .plan-policy-summary span:nth-child(2) {
    border-right: 0;
  }

  body.is-unified-invitation-system.is-create-flow #planView .decision-context-field textarea {
    min-height: 146px;
  }

  body.is-unified-invitation-system.is-create-flow #whoView .profile-section,
  body.is-unified-invitation-system.is-create-flow #whoView .settings-fieldset,
  body.is-unified-invitation-system.is-create-flow #whoView .privacy-strip,
  body.is-unified-invitation-system.is-create-flow #reviewView .review-panel {
    padding: 13px;
  }
}

@media (max-width: 340px) {
  body.is-unified-invitation-system.is-create-flow #planView .plan-policy-summary {
    grid-template-columns: minmax(0, 1fr);
  }

  body.is-unified-invitation-system.is-create-flow #planView .plan-policy-summary span,
  body.is-unified-invitation-system.is-create-flow #planView .plan-policy-summary span:nth-child(2) {
    border-right: 0;
    border-bottom: 1px solid var(--create-line);
  }

  body.is-unified-invitation-system.is-create-flow #planView .plan-policy-summary small {
    grid-column: auto;
    border-top: 0;
  }
}
/* Canonical v149: Invitation fit uses the same in-panel Guest-section hierarchy
   as nearby Create surfaces. Behavior and the Traditional Invitation face remain frozen. */
body.is-unified-invitation-system.is-create-flow #whoView .settings-fieldset > h2 {
  margin: 0 0 5px;
  color: var(--system-ink);
  font-family: inherit;
  font-size: 1.15rem;
  font-weight: 500;
  letter-spacing: -0.035em;
  line-height: 1.15;
}

body.is-unified-invitation-system.is-create-flow #whoView .settings-fieldset > .section-note {
  margin: 0 0 12px;
  max-width: 62ch;
  color: var(--create-muted);
  font-family: inherit;
  font-size: 0.7rem;
  font-weight: 400;
  line-height: 1.42;
}

body.is-unified-invitation-system.is-create-flow #whoView .settings-fieldset > .preference-disclosure {
  font-family: inherit;
  font-size: 0.8rem;
  font-weight: 500;
  line-height: 1.3;
}
/* Canonical v150: each Invitation-fit field exposes its saved-default source and
   owns its per-Invite override directly. The redundant master toggle is retired. */
body.is-unified-invitation-system.is-create-flow #whoView .preference-panel-intro {
  display: grid;
  gap: 3px;
  padding: 0 0 12px;
  border-bottom: 1px solid var(--create-line);
}

body.is-unified-invitation-system.is-create-flow #whoView .preference-panel-intro strong {
  color: var(--system-ink);
  font-size: 0.78rem;
  font-weight: 500;
  line-height: 1.3;
}

body.is-unified-invitation-system.is-create-flow #whoView .preference-panel-intro span {
  max-width: 62ch;
  color: var(--create-muted);
  font-size: 0.68rem;
  font-weight: 400;
  line-height: 1.42;
}

body.is-unified-invitation-system.is-create-flow #whoView .preference-panel > .compact-grid {
  gap: 0;
}

body.is-unified-invitation-system.is-create-flow #whoView .preference-field {
  display: grid;
  gap: 7px;
  min-width: 0;
  padding: 12px 0;
  border-bottom: 1px solid var(--create-line);
}

body.is-unified-invitation-system.is-create-flow #whoView .preference-field:last-child {
  border-bottom: 0;
}

body.is-unified-invitation-system.is-create-flow #whoView .preference-field > label {
  color: var(--create-copy);
  font-size: 0.78rem;
  font-weight: 500;
  line-height: 1.3;
}

body.is-unified-invitation-system.is-create-flow #whoView .preference-field > select {
  min-height: 44px;
  margin: 0;
}

body.is-unified-invitation-system.is-create-flow #whoView .preference-field-meta {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

body.is-unified-invitation-system.is-create-flow #whoView .preference-field-source {
  color: var(--create-muted);
  font-size: 0.68rem;
  font-weight: 400;
  line-height: 1.35;
}

body.is-unified-invitation-system.is-create-flow #whoView .preference-field.is-changed .preference-field-source {
  color: #455b78;
  font-weight: 500;
}

body.is-unified-invitation-system.is-create-flow #whoView .preference-reset {
  min-height: 44px;
  flex: 0 0 auto;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: var(--system-action);
  padding: 7px 4px;
  font-family: inherit;
  font-size: 0.68rem;
  font-weight: 500;
  line-height: 1.25;
}

body.is-unified-invitation-system.is-create-flow #whoView .preference-reset:hover,
body.is-unified-invitation-system.is-create-flow #whoView .preference-reset:focus-visible {
  background: var(--create-hover);
}

body.is-unified-invitation-system.is-create-flow #whoView .preference-reset[hidden],
body.is-unified-invitation-system.is-create-flow #whoView .save-defaults-row[hidden] {
  display: none !important;
}

body.is-unified-invitation-system.is-create-flow #whoView .save-defaults-row {
  margin-top: 2px;
  border: 1px solid var(--create-line);
  border-radius: 12px;
  background: #fff;
}

body.is-unified-invitation-system.is-create-flow #whoView .save-defaults-row > span {
  display: grid;
  gap: 2px;
  min-width: 0;
}

body.is-unified-invitation-system.is-create-flow #whoView .save-defaults-row strong {
  color: var(--system-ink);
  font-size: 0.76rem;
  font-weight: 500;
}

body.is-unified-invitation-system.is-create-flow #whoView .save-defaults-row small {
  color: var(--create-muted);
  font-size: 0.68rem;
  font-weight: 400;
  line-height: 1.4;
}

@media (max-width: 340px) {
  body.is-unified-invitation-system.is-create-flow #whoView .preference-field-meta {
    align-items: flex-start;
    flex-direction: column;
    gap: 1px;
  }

  body.is-unified-invitation-system.is-create-flow #whoView .preference-reset {
    align-self: flex-start;
    margin-left: -4px;
  }
}
/* Canonical v151: keep the shared Guest decisions on one row while giving the
   unmistakable RSVP label enough room to remain fully visible at stress-narrow
   widths. Invitation faces, response meaning, and response behavior are frozen. */
body.is-unified-invitation-system.is-unified-invitation-system .find-event-action-row.is-traditional-rsvp,
body.is-unified-invitation-system.is-unified-invitation-system .invite-detail-actions.is-traditional-rsvp,
body.is-unified-invitation-system.is-unified-invitation-system .guest-response-row.is-traditional-rsvp {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr) !important;
}

body.is-unified-invitation-system :where(
  .find-event-action-row.is-traditional-rsvp,
  .invite-detail-actions.is-traditional-rsvp,
  .guest-response-row.is-traditional-rsvp
) > * {
  min-width: 0;
}

body.is-unified-invitation-system :where(
  .find-event-action-row.is-traditional-rsvp,
  .invite-detail-actions.is-traditional-rsvp,
  .guest-response-row.is-traditional-rsvp
) > :where(button, .secondary-button, .primary-button) {
  max-width: 100%;
}

body.is-unified-invitation-system .rsvp-open-action-copy {
  width: 100%;
  max-width: none;
}

@media (max-width: 280px) {
  body.is-unified-invitation-system.is-unified-invitation-system .find-event-action-row.is-traditional-rsvp,
  body.is-unified-invitation-system.is-unified-invitation-system .invite-detail-actions.is-traditional-rsvp,
  body.is-unified-invitation-system.is-unified-invitation-system .guest-response-row.is-traditional-rsvp {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.is-unified-invitation-system.is-unified-invitation-system .find-event-action-row.is-traditional-rsvp > button.find-not-now-action,
  body.is-unified-invitation-system.is-unified-invitation-system .find-event-action-row.is-traditional-rsvp > button.profile-add-action,
  body.is-unified-invitation-system.is-unified-invitation-system .invite-detail-actions.is-traditional-rsvp > button.secondary-action,
  body.is-unified-invitation-system.is-unified-invitation-system .invite-detail-actions.is-traditional-rsvp > button.profile-add-action,
  body.is-unified-invitation-system.is-unified-invitation-system .guest-response-row.is-traditional-rsvp > button.inline-action,
  body.is-unified-invitation-system.is-unified-invitation-system .guest-response-row.is-traditional-rsvp > button.profile-add-action {
    width: 100%;
    grid-column: 1 !important;
  }
}
/* Canonical v152: use one quiet Invitations workspace canvas and let Invitation
   cards remain the primary raised objects. Navigation, utility sections, group
   headings, counts, and spacing are simplified without touching Invite faces,
   content, state, actions, behavior, or privacy. */
body.is-unified-invitation-system.is-traditional-invitation-system {
  --system-canvas: #f5f5f7;
  background: var(--system-canvas) !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system :where(
  .app-shell,
  .compose-panel,
  .screen-scroll
) {
  background: var(--system-canvas) !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system .app-nav.is-root-invitations {
  background: rgba(245, 245, 247, 0.94) !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system.is-apple-native.is-modern-salon .root-tabs,
body.is-unified-invitation-system.is-traditional-invitation-system.is-apple-native.is-modern-salon.is-prototype-desktop .screen-scroll:has(.root-tabs:not([hidden])) > .root-tabs {
  border: 0 !important;
  border-bottom: 1px solid var(--system-line) !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 0 !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system.is-apple-native.is-modern-salon .root-tab.root-tab {
  min-height: 44px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system.is-apple-native.is-modern-salon .root-tab svg {
  width: 20px !important;
  height: 20px !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system.is-apple-native.is-modern-salon .root-tab.root-tab.is-active {
  background: transparent !important;
  box-shadow: inset 0 -2px 0 var(--system-ink) !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system #findView .incoming-response-stack {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system #findView .incoming-priority-section + .incoming-waiting-section {
  border-top: 0 !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system #findView .incoming-section-header {
  background: transparent !important;
  padding: 12px 4px !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system #findView .incoming-section-body {
  border-top: 0 !important;
  background: transparent !important;
  padding-top: 8px !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system #findView .find-controls-panel {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system #findView .find-filter-summary {
  background: transparent !important;
  padding: 12px 4px !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system #findView .find-controls-body {
  background: transparent !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system #findView .find-results {
  margin-top: 28px !important;
}

body.is-unified-invitation-system #findView .find-results::before {
  content: none !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system #findView .find-results-summary {
  min-height: 0 !important;
  margin: 0 0 6px !important;
  border: 0 !important;
  padding: 8px 4px !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system #findView .find-invite-list {
  gap: 0 !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system #findView .find-invite-group {
  gap: 10px !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system #findView .find-invite-group + .find-invite-group {
  margin-top: 26px !important;
  padding-top: 0 !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system #findView .find-invite-group-head {
  min-height: 0 !important;
  align-items: flex-end !important;
  border: 0 !important;
  padding: 0 4px 10px !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system #findView .find-invite-group-head strong {
  color: var(--system-ink) !important;
  font-size: 0.9rem !important;
  font-weight: 500 !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system #findView .find-invite-group-head small {
  color: var(--system-muted) !important;
  font-size: 0.7rem !important;
  font-weight: 400 !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system #findView .find-invite-group-head > span {
  min-width: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--system-muted) !important;
  padding: 0 2px 1px !important;
  font-size: 0.7rem !important;
  font-weight: 400 !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system :where(#homeView, #onView) > .event-section + .event-section {
  margin-top: 26px !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system :where(#homeView, #onView) .section-head {
  min-height: 0 !important;
  align-items: center !important;
  border: 0 !important;
  padding: 8px 16px !important;
  margin-bottom: 8px !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system :where(#homeView, #onView) .section-toggle {
  min-height: 44px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--system-copy) !important;
  padding: 0 0 0 6px !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system :where(#homeView, #onView) .section-toggle::after {
  width: 24px !important;
  height: 24px !important;
  flex-basis: 24px !important;
  border-radius: 0 !important;
  background-color: transparent !important;
  background-size: 14px 14px !important;
}
/* Canonical v153: a restrained, viewport-visible receipt explains the RSVP
   transition without altering the Invitation object or using flashing motion. */
body.is-unified-invitation-system .response-transition-receipt {
  position: absolute;
  z-index: 70;
  right: max(12px, env(safe-area-inset-right));
  bottom: max(14px, env(safe-area-inset-bottom));
  left: max(12px, env(safe-area-inset-left));
  width: min(540px, calc(100% - 24px));
  min-width: 0;
  margin-inline: auto;
  border: 1px solid rgba(60, 60, 67, 0.18);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.98);
  padding: 14px 52px 14px 14px;
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  align-items: start;
  gap: 10px 12px;
  color: var(--system-ink);
  box-shadow: 0 16px 42px rgba(28, 28, 30, 0.18), 0 2px 7px rgba(28, 28, 30, 0.08);
  opacity: 0;
  transform: translateY(12px) scale(0.985);
  transform-origin: center bottom;
  pointer-events: none;
  transition: opacity 220ms ease, transform 340ms cubic-bezier(0.2, 0.78, 0.24, 1);
}

body.is-unified-invitation-system .response-transition-receipt[hidden] {
  display: none;
}

body.is-unified-invitation-system .response-transition-receipt.is-visible {
  opacity: 1;
  transform: none;
  pointer-events: auto;
}

body.is-unified-invitation-system .response-transition-mark {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: rgba(8, 124, 255, 0.09);
  color: var(--system-action);
}

body.is-unified-invitation-system .response-transition-mark svg {
  width: 22px;
  height: 22px;
}

body.is-unified-invitation-system .response-transition-copy {
  min-width: 0;
  display: grid;
  gap: 2px;
  line-height: 1.28;
}

body.is-unified-invitation-system .response-transition-copy strong {
  color: var(--system-ink);
  font-size: 0.92rem;
  font-weight: 600;
  letter-spacing: -0.015em;
}

body.is-unified-invitation-system .response-transition-invite {
  overflow: hidden;
  color: var(--system-copy);
  font-size: 0.76rem;
  font-weight: 400;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.is-unified-invitation-system .response-transition-destination {
  margin-top: 4px;
  color: var(--system-ink);
  font-size: 0.76rem;
  font-weight: 500;
}

body.is-unified-invitation-system .response-transition-copy small {
  color: var(--system-muted);
  font-size: 0.7rem;
  font-weight: 400;
}

body.is-unified-invitation-system .response-transition-actions {
  grid-column: 2;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
}

body.is-unified-invitation-system .response-transition-actions button {
  min-height: 44px;
  border: 0;
  border-radius: 12px;
  padding: 0 14px;
  font-size: 0.76rem;
  font-weight: 500;
}

body.is-unified-invitation-system .response-transition-actions [data-response-transition-view] {
  background: var(--system-action);
  color: #fff;
}

body.is-unified-invitation-system .response-transition-actions [data-response-transition-undo] {
  background: var(--system-fill);
  color: var(--system-ink);
}

body.is-unified-invitation-system .response-transition-close {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 44px;
  height: 44px;
  border: 0;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: transparent;
  color: var(--system-muted);
}

body.is-unified-invitation-system .response-transition-close svg {
  width: 18px;
  height: 18px;
}

@media (max-width: 300px) {
  body.is-unified-invitation-system .response-transition-receipt {
    right: 8px;
    bottom: 8px;
    left: 8px;
    width: calc(100% - 16px);
    padding: 12px 44px 12px 12px;
    grid-template-columns: 32px minmax(0, 1fr);
    gap: 8px;
    border-radius: 16px;
  }

  body.is-unified-invitation-system .response-transition-mark {
    width: 32px;
    height: 32px;
  }

  body.is-unified-invitation-system .response-transition-invite {
    white-space: normal;
  }

  body.is-unified-invitation-system .response-transition-actions {
    grid-column: 1 / -1;
  }

  body.is-unified-invitation-system .response-transition-actions button {
    flex: 1 1 0;
    padding-inline: 8px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.is-unified-invitation-system .response-transition-receipt {
    transition: none;
  }
}

/* Canonical v155: optional utilities read as compact system rows instead of
   competing feature cards. Invitation objects and their actions are untouched. */
body.is-unified-invitation-system.is-modern-salon.is-quiet-frame .social-mix-promo {
  min-height: 56px !important;
  grid-template-columns: 20px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 16px 12px !important;
  border: 1px solid var(--system-line) !important;
  border-radius: 12px !important;
  background: #fff !important;
  padding: 5px 8px !important;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-modern-salon.is-quiet-frame .social-mix-promo-mark {
  width: 20px !important;
  height: 20px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--system-muted) !important;
  font-size: 0.72rem !important;
}

body.is-unified-invitation-system.is-modern-salon.is-quiet-frame .social-mix-promo-copy h2 {
  overflow: hidden;
  margin: 0 !important;
  color: var(--system-copy) !important;
  font-family: var(--salon-sans) !important;
  font-size: 0.8rem !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.is-unified-invitation-system.is-modern-salon.is-quiet-frame .social-mix-promo-actions {
  grid-column: 3 !important;
  display: flex !important;
  align-items: center;
  justify-content: flex-end;
  gap: 0 !important;
  width: auto !important;
  min-width: 0 !important;
}

body.is-unified-invitation-system.is-modern-salon.is-quiet-frame .social-mix-promo-actions .primary-action,
body.is-unified-invitation-system.is-modern-salon.is-quiet-frame .social-mix-promo-later {
  display: inline-flex !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 44px !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: transparent !important;
  padding: 0 8px !important;
  font-size: 0.74rem !important;
  font-weight: 500 !important;
  white-space: nowrap;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-modern-salon.is-quiet-frame .social-mix-promo-actions .primary-action {
  color: var(--system-action) !important;
}

body.is-unified-invitation-system.is-modern-salon.is-quiet-frame .social-mix-promo-later {
  color: var(--system-muted) !important;
}

body.is-unified-invitation-system.is-modern-salon.is-quiet-frame .social-mix-promo-actions .primary-action::before,
body.is-unified-invitation-system.is-modern-salon.is-quiet-frame .social-mix-promo-later::before {
  content: none !important;
}

body.is-unified-invitation-system.is-modern-salon.is-quiet-frame .social-mix-promo-actions .primary-action:hover,
body.is-unified-invitation-system.is-modern-salon.is-quiet-frame .social-mix-promo-actions .primary-action:focus-visible,
body.is-unified-invitation-system.is-modern-salon.is-quiet-frame .social-mix-promo-later:hover,
body.is-unified-invitation-system.is-modern-salon.is-quiet-frame .social-mix-promo-later:focus-visible {
  background: var(--system-fill) !important;
}

body.is-unified-invitation-system.is-modern-salon.is-quiet-frame .notification-item.is-plan-check-in:has(.notification-item-action) {
  min-height: 64px !important;
  grid-template-columns: 22px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 7px 10px !important;
}

body.is-unified-invitation-system.is-modern-salon.is-quiet-frame .notification-item.is-plan-check-in .notification-item-copy > small {
  position: static !important;
  width: auto !important;
  height: auto !important;
  overflow: visible !important;
  clip-path: none !important;
  margin-top: 2px !important;
  color: var(--system-muted) !important;
  font-size: 0.68rem !important;
  font-weight: 400 !important;
  line-height: 1.28 !important;
  white-space: normal !important;
}

body.is-unified-invitation-system.is-modern-salon.is-quiet-frame .notification-item.is-plan-check-in .notification-item-action {
  grid-column: 3 !important;
  grid-row: 1 !important;
  align-self: center !important;
  justify-self: end !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 44px !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: transparent !important;
  padding: 0 8px !important;
  color: var(--system-action) !important;
  font-size: 0.74rem !important;
  font-weight: 500 !important;
  white-space: nowrap;
  box-shadow: none !important;
}

body.is-unified-invitation-system.is-modern-salon.is-quiet-frame .notification-item.is-plan-check-in .notification-item-action:hover,
body.is-unified-invitation-system.is-modern-salon.is-quiet-frame .notification-item.is-plan-check-in .notification-item-action:focus-visible {
  background: var(--system-fill) !important;
}

@media (min-width: 901px) {
  body.is-unified-invitation-system.is-modern-salon.is-quiet-frame.is-prototype-desktop .screen-scroll:has(.root-tabs:not([hidden])) > .social-mix-promo:not([hidden]) {
    min-height: 56px !important;
    grid-template-columns: 20px minmax(0, 1fr) auto !important;
    margin: 0 0 16px !important;
    padding: 5px 8px !important;
  }
}

@media (max-width: 300px) {
  body.is-unified-invitation-system.is-modern-salon.is-quiet-frame .notification-item.is-plan-check-in:has(.notification-item-action) {
    grid-template-columns: 20px minmax(0, 1fr) !important;
    align-items: start !important;
  }

  body.is-unified-invitation-system.is-modern-salon.is-quiet-frame .notification-item.is-plan-check-in .notification-item-action {
    grid-column: 2 !important;
    grid-row: 2 !important;
    justify-self: start !important;
  }
}

/* Canonical v157: clarify that In filters narrow the eligible invitations below. */
body.is-unified-invitation-system.is-traditional-invitation-system #findView .find-controls-panel {
  position: relative !important;
  margin-top: 6px !important;
  padding-top: 10px !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system #findView .find-controls-panel::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 4px !important;
  right: 4px !important;
  height: 1px !important;
  background: rgba(60, 60, 67, 0.18) !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system #findView .find-filter-summary {
  padding: 8px 4px 10px !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system #findView .find-results {
  margin-top: 14px !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system #findView .find-results-summary {
  margin: 0 0 4px !important;
  padding: 2px 16px 8px !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system #findView .find-results-summary strong {
  font-size: 1.06rem !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system #findView .find-invite-group {
  gap: 8px !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system #findView .find-invite-group-head {
  padding: 0 16px 8px !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system #findView .find-invite-group + .find-invite-group {
  margin-top: 20px !important;
}

/* Canonical v159: bounded, focused Invitation collections for high-volume states. */
body.is-unified-invitation-system .collection-overflow-slot:empty {
  display: none;
}

body.is-unified-invitation-system .collection-overflow-action,
body.is-unified-invitation-system .collection-head-action {
  min-height: 44px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--system-action);
  font: inherit;
  font-size: 0.76rem;
  font-weight: 500;
  box-shadow: none;
}

body.is-unified-invitation-system .collection-overflow-action {
  width: 100%;
  margin-top: 10px;
  border-top: 1px solid var(--system-line);
  padding: 12px 4px 0;
  text-align: center;
}

body.is-unified-invitation-system .collection-head-action {
  padding: 0 2px;
  white-space: nowrap;
}

body.is-unified-invitation-system :where(.collection-overflow-action, .collection-head-action):hover {
  color: var(--system-action-strong, #123f82);
}

body.is-unified-invitation-system :where(.collection-overflow-action, .collection-head-action):focus-visible {
  outline: 3px solid color-mix(in srgb, var(--system-action) 32%, transparent);
  outline-offset: 3px;
}

body.is-unified-invitation-system .invitation-collection-view {
  width: min(100%, 760px);
  margin-inline: auto;
  padding: 18px 16px 40px;
}

body.is-unified-invitation-system .invitation-collection-header {
  display: grid;
  gap: 6px;
  padding: 8px 2px 18px;
}

body.is-unified-invitation-system .invitation-collection-header .eyebrow {
  margin: 0;
  color: var(--system-muted);
  font-size: 0.58rem;
  font-weight: 500;
  letter-spacing: 0.16em;
}

body.is-unified-invitation-system .invitation-collection-header h1 {
  margin: 0;
  color: var(--system-ink);
  font-size: clamp(1.7rem, 5vw, 2.35rem);
  font-weight: 600;
  letter-spacing: -0.045em;
  line-height: 1.05;
}

body.is-unified-invitation-system .invitation-collection-header > p:last-child {
  max-width: 62ch;
  margin: 0;
  color: var(--system-muted);
  font-size: 0.78rem;
  font-weight: 400;
  line-height: 1.45;
}

body.is-unified-invitation-system .invitation-collection-tools {
  position: sticky;
  z-index: 8;
  top: 0;
  margin: 0 0 18px;
  border-bottom: 1px solid var(--system-line);
  background: rgba(245, 245, 247, 0.96);
  padding: 0 0 14px;
  backdrop-filter: blur(18px) saturate(1.1);
}

body.is-unified-invitation-system .invitation-collection-search {
  display: grid;
  gap: 6px;
  color: var(--system-muted);
  font-size: 0.64rem;
  font-weight: 500;
}

body.is-unified-invitation-system .invitation-collection-search input {
  width: 100%;
  min-height: 48px;
  border: 1px solid rgba(60, 60, 67, 0.2);
  border-radius: 13px;
  background: #fff;
  padding: 0 14px;
  color: var(--system-ink);
  font: inherit;
  font-size: 0.82rem;
  font-weight: 400;
  box-shadow: 0 1px 2px rgba(28, 28, 30, 0.03);
}

body.is-unified-invitation-system .invitation-collection-search input:focus {
  border-color: var(--system-action);
  outline: 3px solid color-mix(in srgb, var(--system-action) 20%, transparent);
  outline-offset: 1px;
}

body.is-unified-invitation-system .invitation-collection-list {
  display: grid;
  gap: 12px;
}

body.is-unified-invitation-system .invitation-collection-receipt,
body.is-unified-invitation-system .invitation-collection-disclosure {
  overflow: hidden;
  margin: 0;
  border: 1px solid rgba(60, 60, 67, 0.16);
  border-top: 2px solid var(--invite-accent, rgba(60, 60, 67, 0.22));
  border-radius: 17px;
  background: #fff;
  box-shadow: 0 5px 18px rgba(28, 28, 30, 0.055);
}

body.is-unified-invitation-system .invitation-collection-receipt-button,
body.is-unified-invitation-system .invitation-collection-disclosure > summary {
  width: 100%;
  border: 0;
  background: transparent;
  padding: 15px 16px 12px;
  color: inherit;
  font: inherit;
  text-align: left;
  list-style: none;
}

body.is-unified-invitation-system .invitation-collection-disclosure > summary {
  cursor: pointer;
}

body.is-unified-invitation-system .invitation-collection-disclosure > summary::-webkit-details-marker {
  display: none;
}

body.is-unified-invitation-system :where(.invitation-collection-receipt-button, .invitation-collection-disclosure > summary):hover {
  background: rgba(116, 116, 128, 0.055);
}

body.is-unified-invitation-system :where(.invitation-collection-receipt-button, .invitation-collection-disclosure > summary):focus-visible {
  outline: 3px solid color-mix(in srgb, var(--system-action) 30%, transparent);
  outline-offset: -3px;
}

body.is-unified-invitation-system .invitation-collection-record-foot {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto 18px;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
  border-top: 1px solid var(--system-line);
  padding-top: 10px;
  color: var(--system-muted);
  font-size: 0.68rem;
  font-weight: 400;
}

body.is-unified-invitation-system .invitation-collection-record-foot strong {
  color: var(--system-action);
  font-weight: 500;
}

body.is-unified-invitation-system .invitation-collection-disclosure > summary .when-open {
  display: none;
}

body.is-unified-invitation-system .invitation-collection-disclosure[open] > summary .when-closed {
  display: none;
}

body.is-unified-invitation-system .invitation-collection-disclosure[open] > summary .when-open {
  display: inline;
}

body.is-unified-invitation-system .invitation-collection-chevron {
  display: inline-grid;
  place-items: center;
  width: 18px;
  height: 18px;
  color: var(--system-muted);
  font-size: 0.78rem;
  transition: transform 160ms ease;
}

body.is-unified-invitation-system .invitation-collection-disclosure[open] .invitation-collection-chevron {
  transform: rotate(180deg);
}

body.is-unified-invitation-system .invitation-collection-direct-actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
  border-top: 1px solid var(--system-line);
  padding: 10px 12px 12px;
}

body.is-unified-invitation-system .invitation-collection-direct-actions > span {
  color: var(--system-muted);
  font-size: 0.66rem;
  font-weight: 400;
}

body.is-unified-invitation-system .invitation-collection-direct-actions button {
  min-height: 44px;
  margin: 0;
  padding-inline: 13px;
  white-space: nowrap;
}

body.is-unified-invitation-system .invitation-collection-expanded-card {
  border-top: 1px solid var(--system-line);
  background: var(--system-canvas, #f5f5f7);
  padding: 12px;
}

body.is-unified-invitation-system .invitation-collection-expanded-card > .event-card {
  margin: 0;
}

body.is-unified-invitation-system .invitation-month-group {
  display: grid;
  gap: 10px;
}

body.is-unified-invitation-system .invitation-month-group + .invitation-month-group {
  margin-top: 18px;
}

body.is-unified-invitation-system .invitation-month-group > header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  padding: 4px 2px;
}

body.is-unified-invitation-system .invitation-month-group > header h2 {
  margin: 0;
  color: var(--system-ink);
  font-size: 0.94rem;
  font-weight: 500;
}

body.is-unified-invitation-system .invitation-month-group > header span {
  color: var(--system-muted);
  font-size: 0.68rem;
  font-weight: 400;
}

body.is-unified-invitation-system .invitation-month-group > div {
  display: grid;
  gap: 12px;
}

body.is-unified-invitation-system .invitation-collection-action-record + .invitation-collection-action-record {
  margin-top: 2px;
}

body.is-unified-invitation-system .invitation-collection-pagination {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 10px;
  margin-top: 20px;
  border-top: 1px solid var(--system-line);
  padding-top: 16px;
}

body.is-unified-invitation-system .invitation-collection-pagination[hidden] {
  display: none;
}

body.is-unified-invitation-system .invitation-collection-pagination button {
  min-height: 44px;
  border: 1px solid rgba(60, 60, 67, 0.18);
  border-radius: 12px;
  background: #fff;
  color: var(--system-action);
  font: inherit;
  font-size: 0.74rem;
  font-weight: 500;
}

body.is-unified-invitation-system .invitation-collection-pagination button:last-child {
  justify-self: stretch;
}

body.is-unified-invitation-system .invitation-collection-pagination button:disabled {
  color: var(--system-muted);
  opacity: 0.45;
}

body.is-unified-invitation-system .invitation-collection-pagination span {
  color: var(--system-muted);
  font-size: 0.68rem;
  font-weight: 400;
  white-space: nowrap;
}

@media (max-width: 420px) {
  body.is-unified-invitation-system .invitation-collection-view {
    padding: 12px 12px 32px;
  }

  body.is-unified-invitation-system .invitation-collection-direct-actions {
    grid-template-columns: 1fr 1fr;
  }

  body.is-unified-invitation-system .invitation-collection-direct-actions > span {
    grid-column: 1 / -1;
  }

  body.is-unified-invitation-system .invitation-collection-direct-actions button {
    width: 100%;
    padding-inline: 9px;
  }
}

@media (max-width: 300px) {
  body.is-unified-invitation-system .invitation-collection-direct-actions {
    grid-template-columns: 1fr;
  }

  body.is-unified-invitation-system .invitation-collection-direct-actions > span {
    grid-column: auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.is-unified-invitation-system .invitation-collection-view *,
  body.is-unified-invitation-system .invitation-collection-view *::before,
  body.is-unified-invitation-system .invitation-collection-view *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}

/* Canonical v160: restore one scannable Invitation alignment system.
   The workspace name is centered as navigation; the Invitation itself keeps
   the established anatomy but follows the left-aligned compact-receipt
   reading hierarchy across In, Out, On, detail, Create review, and history. */
body.is-unified-invitation-system.is-traditional-invitation-system.is-apple-native.is-modern-salon.is-quiet-frame .app-nav.is-root-invitations {
  display: grid !important;
  grid-template-columns: 44px minmax(0, 1fr) 44px !important;
  align-items: center;
}

body.is-unified-invitation-system.is-traditional-invitation-system .app-nav.is-root-invitations > .icon-button {
  grid-column: 1;
}

body.is-unified-invitation-system.is-traditional-invitation-system .app-nav.is-root-invitations > .nav-status.is-navigation-title {
  grid-column: 2;
  justify-self: stretch !important;
  justify-content: center !important;
  width: 100%;
  max-width: none;
  text-align: center !important;
}

body.is-unified-invitation-system.is-traditional-invitation-system .app-nav.is-root-invitations > .workspace-toolbar-actions {
  grid-column: 3;
  justify-self: end;
}

body.is-unified-invitation-system .traditional-invitation-face {
  justify-items: stretch;
  text-align: left;
}

body.is-unified-invitation-system .traditional-invitation-symbol {
  justify-self: start;
  margin-left: 0;
}

body.is-unified-invitation-system .traditional-invitation-host,
body.is-unified-invitation-system .traditional-invitation-category {
  width: 100%;
  text-align: left;
}

body.is-unified-invitation-system .traditional-invitation-face :where(h2, h3) {
  width: 100%;
  max-width: none;
  margin-right: 0;
  margin-left: 0;
  text-align: left;
  text-wrap: pretty;
}

body.is-unified-invitation-system .traditional-invitation-facts,
body.is-unified-invitation-system .traditional-invitation-face.is-compact .traditional-invitation-facts,
body.is-unified-invitation-system .traditional-invitation-note,
body.is-unified-invitation-system .traditional-invitation-face.is-compact .traditional-invitation-note {
  width: 100%;
  max-width: none;
}

body.is-unified-invitation-system .traditional-invitation-facts > div {
  text-align: left;
}

body.is-unified-invitation-system .traditional-invitation-facts > div:first-child {
  padding-left: 0;
}

body.is-unified-invitation-system .traditional-invitation-facts > div:last-child {
  padding-right: 0;
}

@media (max-width: 300px) {
  body.is-unified-invitation-system .traditional-invitation-heading {
    align-items: flex-start;
    gap: 8px;
  }

  body.is-unified-invitation-system .traditional-invitation-kicker {
    max-width: 44%;
  }

  body.is-unified-invitation-system .traditional-invitation-state-group {
    max-width: 56%;
    justify-content: flex-end;
    text-align: right;
  }

  body.is-unified-invitation-system .traditional-invitation-state-group :where(
    .invite-record-state-pill,
    .invite-record-status-pill
  ) {
    white-space: normal;
  }

  body.is-unified-invitation-system .traditional-invitation-facts {
    grid-template-columns: minmax(0, 1fr);
  }

  body.is-unified-invitation-system .traditional-invitation-facts > div {
    padding-inline: 0;
  }

  body.is-unified-invitation-system .traditional-invitation-facts > div + div {
    margin-top: 14px;
    border-top: 1px solid rgba(60, 60, 67, 0.16);
    border-left: 0;
    padding-top: 14px;
  }
}
