:root {
  color-scheme: light;
  --bg: #f4f0e8;
  --surface: #fffdf8;
  --surface-2: #f8f4ed;
  --ink: #121820;
  --muted: #667085;
  --line: #ddd5c8;
  --line-strong: #c8bdad;
  --charcoal: #101820;
  --red: #bf3f32;
  --red-soft: #fff0ed;
  --teal: #0f766e;
  --teal-soft: #eaf6f3;
  --gold: #b7791f;
  --gold-soft: #fff6df;
  --danger: #9f2d24;
  --shadow: 0 24px 70px rgba(24, 31, 38, 0.14);
  --hero-image: url("./assets/hero-lightblue-choice-eu3-gallery-lineart-qa499.webp");
  --hero-position: center 50%;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  min-width: 320px;
  background: var(--bg);
  color: var(--ink);
  font-family: "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", Arial, sans-serif;
  letter-spacing: 0;
}

body[data-hero-bg="city"],
body[data-hero-bg="tokyo"],
body[data-hero-bg="skytree"],
body[data-hero-bg="river"] {
  --hero-image: url("./assets/hero-lightblue-choice-eu3-gallery-lineart-qa499.webp");
  --hero-position: center 50%;
}

body[data-hero-bg="tokyo-city"],
body[data-hero-bg="night"],
body[data-hero-bg="waterfront"] {
  --hero-image: url("./assets/hero-bg-tokyo-city.webp");
  --hero-position: center 55%;
}

body[data-hero-bg="bay"] {
  --hero-image: url("./assets/hero-bg-tokyo-bay-bright.webp");
  --hero-position: center 43%;
}

body[data-hero-bg="hanabi"],
body[data-hero-bg="beach"],
body[data-hero-bg="fireworks"] {
  --hero-image: url("./assets/hero-bg-summer-hanabi-bright.webp");
  --hero-position: center 45%;
}

body[data-hero-bg="walk"],
body[data-hero-bg="street"],
body[data-hero-bg="romance"] {
  --hero-image: url("./assets/hero-bg-tokyo-walk-bright.webp");
  --hero-position: center 45%;
}

body[data-hero-bg="original"] {
  --hero-image: url("./assets/hero-couple-events.webp");
  --hero-position: center;
}

button,
input,
select {
  font: inherit;
}

button {
  cursor: pointer;
}

a {
  color: inherit;
  text-decoration: none;
}

svg {
  width: 19px;
  height: 19px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2;
}

.topbar {
  position: sticky;
  top: 0;
  z-index: 30;
  height: 72px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 0 clamp(16px, 4vw, 56px);
  background: rgba(255, 253, 248, 0.9);
  border-bottom: 1px solid rgba(221, 213, 200, 0.78);
  backdrop-filter: blur(18px);
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

.brand-mark {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 8px;
  background: var(--charcoal);
  color: #fff;
  font-weight: 900;
  font-size: 14px;
  box-shadow: 0 10px 24px rgba(16, 24, 32, 0.2);
}

.brand-mark.logo-mark {
  overflow: hidden;
  padding: 0;
  background: #000000;
  color: transparent;
}

.brand-mark.logo-mark img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.brand strong,
.brand small {
  display: block;
}

.brand strong {
  font-size: 16px;
  line-height: 1.08;
}

.brand small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
}

.topnav {
  display: flex;
  align-items: center;
  gap: 24px;
  color: #344054;
  font-size: 14px;
}

.topnav a,
.topnav-button {
  padding: 8px 0;
  border: 0;
  border-bottom: 2px solid transparent;
  background: transparent;
  color: inherit;
  font: inherit;
}

.topnav a:hover,
.topnav-button:hover {
  border-color: var(--red);
}

.top-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.hero {
  position: relative;
  min-height: 430px;
  overflow: hidden;
  background: #111820;
}

.hero-bg {
  position: absolute;
  inset: 0;
  background-image:
    radial-gradient(circle at 50% 24%, rgba(12, 18, 28, 0.42) 0%, rgba(12, 18, 28, 0.12) 46%, rgba(12, 18, 28, 0.08) 74%),
    linear-gradient(180deg, rgba(10, 16, 24, 0.24) 0%, rgba(10, 16, 24, 0.04) 54%, rgba(10, 16, 24, 0.3) 100%),
    var(--hero-image);
  background-position: center, center, var(--hero-position);
  background-size: cover;
}

.hero-bg::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 82px;
  background: linear-gradient(180deg, rgba(244, 240, 232, 0), var(--bg));
}

.hero-inner {
  display: grid;
  justify-items: center;
  position: relative;
  width: min(1500px, calc(100% - 40px));
  margin: 0 auto;
  padding: 58px 0 34px;
  color: #fff;
  text-align: center;
}

.hero-copy {
  max-width: 760px;
  margin: 0 auto;
}

.status-line {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 16px;
}

.status-line span,
.signal,
.tag {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 5px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
}

.status-line span {
  border: 1px solid rgba(255, 255, 255, 0.32);
  background: rgba(255, 255, 255, 0.12);
  color: rgba(255, 255, 255, 0.9);
}

.hero h1 {
  display: grid;
  justify-items: center;
  gap: 0;
  margin: 0;
  max-width: 760px;
  font-size: clamp(46px, 5.4vw, 72px);
  line-height: 1.02;
  letter-spacing: 0;
  text-wrap: balance;
  text-shadow: 0 4px 26px rgba(0, 0, 0, 0.54);
}

.hero h1 span {
  display: block;
  min-width: 0;
  max-width: 100%;
  overflow-wrap: normal;
  word-break: keep-all;
}

.hero-copy p {
  max-width: 720px;
  margin: 12px auto 22px;
  color: rgba(255, 255, 255, 0.88);
  font-size: 17px;
  line-height: 1.5;
  text-shadow: 0 1px 14px rgba(0, 0, 0, 0.36);
}

.planner {
  position: relative;
  z-index: 5;
  display: grid;
  grid-template-columns: minmax(280px, 1.35fr) minmax(142px, 170px) minmax(142px, 170px) auto;
  gap: 10px;
  width: min(1120px, 100%);
  padding: 8px;
  border: 1px solid rgba(255, 255, 255, 0.28);
  border-radius: 8px;
  background: rgba(255, 253, 248, 0.96);
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.32);
  text-align: left;
}

.planner .date-range-field {
  display: grid;
}

.field {
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 9px 12px;
  border: 1px solid #e8dfd3;
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
}

.field span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.field div {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
}

.field input {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--ink);
}

.search-suggestions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  width: min(1040px, 100%);
  margin-top: 10px;
}

.search-suggestions span {
  color: rgba(255, 255, 255, 0.78);
  font-size: 12px;
  font-weight: 900;
}

.search-suggestions button,
.empty-suggestions button {
  min-height: 34px;
  padding: 0 11px;
  border: 1px solid rgba(255, 255, 255, 0.32);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.14);
  color: #fff;
  font-size: 13px;
  font-weight: 850;
  backdrop-filter: blur(10px);
}

.search-suggestions button:hover {
  transform: translateY(-1px);
  border-color: rgba(255, 255, 255, 0.62);
  background: rgba(255, 255, 255, 0.22);
}

.intent-suggestions button {
  display: grid;
  align-content: center;
  gap: 2px;
  min-height: 40px;
  min-width: 86px;
  padding: 6px 12px;
  text-align: left;
}

.intent-suggestions strong,
.intent-suggestions small {
  display: block;
  min-width: 0;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.intent-suggestions strong {
  color: #fff;
  font-size: 12px;
}

.intent-suggestions small {
  color: rgba(255, 255, 255, 0.72);
  font-size: 10px;
  font-weight: 800;
}

.search-assist {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  width: min(1040px, 100%);
  margin-top: 12px;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 253, 248, 0.94);
  box-shadow: 0 16px 45px rgba(0, 0, 0, 0.16);
}

.search-assist[hidden] {
  display: none;
}

.search-assist > span {
  padding: 8px 2px;
  color: var(--teal);
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

.search-assist-content {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.search-assist-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.search-understanding {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 8px;
  align-items: stretch;
  min-width: 0;
  padding: 8px;
  border: 1px solid rgba(15, 118, 110, 0.14);
  border-radius: 8px;
  background: #f4fbf7;
}

.search-understanding > div:first-child {
  display: grid;
  align-content: center;
  min-width: 0;
  padding: 0 6px;
}

.search-understanding small,
.search-understanding strong,
.search-understanding span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.search-understanding > div:first-child small {
  color: var(--teal);
  font-size: 11px;
  font-weight: 900;
}

.search-understanding > div:first-child strong {
  margin-top: 3px;
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
}

.search-understanding-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
  min-width: 0;
}

.search-understanding-chip {
  display: grid;
  gap: 3px;
  min-width: 0;
  padding: 8px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fff;
  color: inherit;
  text-align: left;
}

button.search-understanding-chip {
  cursor: pointer;
}

button.search-understanding-chip:hover {
  border-color: rgba(15, 118, 110, 0.28);
  background: var(--teal-soft);
}

.search-understanding-chip small {
  color: #667085;
  font-size: 10px;
  font-weight: 900;
}

.search-understanding-chip strong {
  color: var(--charcoal);
  font-size: 12px;
  line-height: 1.3;
}

.search-understanding-chip span {
  color: #667085;
  font-size: 11px;
  line-height: 1.35;
}

.search-understanding-chip.gap,
.search-understanding-chip.performer {
  border-color: rgba(191, 63, 50, 0.18);
  background: #fff7f7;
}

.search-understanding-chip.gap small,
.search-understanding-chip.performer small {
  color: var(--red);
}

.search-assist-item {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fff;
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.search-assist-item:hover {
  border-color: rgba(28, 105, 102, 0.32);
  background: var(--teal-soft);
}

.search-assist-item.event {
  background: #fbfaf7;
}

.search-assist-item small,
.search-assist-item strong,
.search-assist-item em {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.search-assist-item small {
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
}

.search-assist-item strong {
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.search-assist-item em {
  color: #667085;
  font-size: 12px;
  font-style: normal;
}

.month-jump[hidden] {
  display: none !important;
}

.month-jump {
  display: grid;
  grid-template-columns: auto minmax(120px, 150px) minmax(120px, 150px) auto;
  align-items: center;
  gap: 8px;
  width: min(980px, 100%);
  margin-top: 8px;
  padding: 8px;
  border: 1px solid rgba(255, 255, 255, 0.28);
  border-radius: 8px;
  background: rgba(255, 253, 248, 0.92);
  color: var(--ink);
  box-shadow: 0 16px 45px rgba(0, 0, 0, 0.2);
}

.month-jump strong {
  padding: 0 8px;
  color: var(--charcoal);
  font-size: 14px;
  white-space: nowrap;
}

.month-jump label {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.month-jump label span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.month-jump select {
  min-height: 38px;
}

.month-button {
  min-height: 38px;
}

.rank-board:empty,
.result-insights:empty,
.spotlight:empty,
.empty-alternatives:empty,
.result-stat-grid,
.result-next {
  display: none !important;
}

.secondary-shortcuts {
  display: none !important;
}

.primary-button,
.secondary-button,
.ghost-button,
.text-button,
.icon-button,
.detail-button,
.save-button,
.dialog-close,
.quick-filter,
.chip,
.saved-item,
.map-dot {
  border-radius: 8px;
}

.primary-button,
.secondary-button,
.ghost-button,
.text-button,
.icon-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  border: 1px solid transparent;
  white-space: nowrap;
}

.primary-button {
  padding: 0 18px;
  background: var(--red);
  color: #fff;
  font-weight: 900;
}

.primary-button:disabled,
.secondary-button:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.secondary-button,
.ghost-button,
.icon-button {
  border-color: var(--line);
  background: var(--surface);
  color: var(--ink);
  font-weight: 800;
}

.secondary-button {
  padding: 0 14px;
}

.ghost-button {
  padding: 0 12px;
}

.icon-button {
  display: none;
  width: 44px;
  padding: 0;
}

.text-button {
  min-height: 34px;
  padding: 0 8px;
  border: 0;
  background: transparent;
  color: var(--red);
  font-weight: 900;
}

.hero-metrics {
  display: none;
  grid-template-columns: repeat(4, minmax(0, 160px));
  gap: 10px;
  margin-top: 16px;
}

.hero-metrics div {
  padding: 10px 14px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.14);
  backdrop-filter: blur(12px);
}

.hero-metrics strong,
.hero-metrics span {
  display: block;
}

.hero-metrics strong {
  font-size: 22px;
}

.hero-metrics span {
  margin-top: 2px;
  color: rgba(255, 255, 255, 0.78);
  font-size: 12px;
}

.command-strip {
  position: relative;
  z-index: 2;
  display: flex;
  gap: 10px;
  width: min(1500px, calc(100% - 40px));
  margin: -28px auto 22px;
  padding: 10px;
  overflow-x: auto;
  border: 1px solid rgba(221, 213, 200, 0.95);
  border-radius: 8px;
  background: rgba(255, 253, 248, 0.95);
  box-shadow: var(--shadow);
}

.quick-filter {
  flex: 0 0 auto;
  min-height: 38px;
  padding: 0 14px;
  border: 1px solid var(--line);
  background: #fff;
  color: #344054;
  font-weight: 800;
}

.quick-filter.active {
  border-color: rgba(191, 63, 50, 0.35);
  background: var(--red-soft);
  color: var(--danger);
}

.app-shell {
  display: grid;
  grid-template-columns: 208px minmax(0, 1fr) 388px;
  gap: 16px;
  width: min(1620px, calc(100% - 32px));
  margin: 0 auto 70px;
  align-items: start;
}

.filter-panel,
.feed,
.rail-panel {
  border: 1px solid rgba(221, 213, 200, 0.95);
  border-radius: 8px;
  background: rgba(255, 253, 248, 0.96);
  box-shadow: 0 14px 34px rgba(24, 31, 38, 0.08);
}

.filter-panel,
.right-rail {
  position: static;
  top: auto;
}

.filter-panel,
.rail-panel,
.feed {
  padding: 16px;
}

.panel-title,
.feed-toolbar,
.toolbar-actions,
.event-title-row,
.card-actions,
.dialog-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.panel-title p,
.eyebrow {
  margin: 0 0 4px;
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.panel-title h2,
.feed-toolbar h2 {
  margin: 0;
  color: var(--charcoal);
  font-size: 22px;
  line-height: 1.2;
}

.panel-title.compact h2 {
  font-size: 18px;
}

.panel-title.compact > span {
  display: grid;
  place-items: center;
  min-width: 30px;
  min-height: 30px;
  border-radius: 8px;
  background: var(--charcoal);
  color: #fff;
  font-weight: 900;
}

.filter-section {
  padding: 18px 0;
  border-top: 1px solid #eee5da;
}

.filter-section h3 {
  margin: 0 0 10px;
  color: #344054;
  font-size: 13px;
}

.chip-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.chip {
  min-height: 36px;
  padding: 0 11px;
  border: 1px solid var(--line);
  background: #fff;
  color: #475467;
  font-weight: 700;
}

.chip.active {
  border-color: rgba(191, 63, 50, 0.35);
  background: var(--red-soft);
  color: var(--danger);
}

select,
.reminder-content input,
.reminder-content textarea {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
}

select,
.reminder-content input {
  min-height: 42px;
  padding: 0 12px;
}

.reminder-content textarea {
  min-height: 108px;
  resize: vertical;
  padding: 10px 12px;
  font: inherit;
  line-height: 1.5;
}

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

.toggle-stack label {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #344054;
  font-size: 14px;
}

.toggle-stack input {
  width: 18px;
  height: 18px;
  accent-color: var(--red);
}

.budget-row {
  display: grid;
  gap: 10px;
}

input[type="range"] {
  width: 100%;
  accent-color: var(--red);
}

.budget-row strong {
  color: var(--charcoal);
}

.feed {
  min-width: 0;
}

.feed-toolbar {
  margin-bottom: 16px;
}

.toolbar-actions {
  justify-content: flex-end;
}

.result-insights {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 8px;
  align-items: start;
  margin-bottom: 16px;
}

.result-brief,
.result-stat-grid,
.result-next,
.result-agenda {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.82);
  box-shadow: 0 10px 26px rgba(16, 24, 32, 0.05);
}

.result-brief {
  padding: 14px;
  border-left: 4px solid var(--teal);
}

.result-brief.empty {
  grid-column: 1 / -1;
  border-left-color: var(--red);
}

.result-brief h3,
.result-brief p {
  margin: 0;
}

.result-brief h3 {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.result-brief p:not(.eyebrow) {
  margin-top: 7px;
  color: #5d6672;
  font-size: 13px;
  line-height: 1.55;
}

.result-stat-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  overflow: hidden;
  background: var(--line);
}

.result-stat-grid span {
  display: grid;
  gap: 3px;
  align-content: center;
  min-width: 0;
  min-height: 72px;
  padding: 10px;
  background: #fff;
}

.result-stat-grid b {
  color: var(--charcoal);
  font-size: 22px;
  line-height: 1;
}

.result-stat-grid small {
  min-width: 0;
  color: #667085;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.result-next {
  display: grid;
  gap: 5px;
  align-content: center;
  padding: 14px;
  border-left: 4px solid var(--red);
  text-align: left;
}

.result-next:hover {
  transform: translateY(-2px);
  border-color: var(--line-strong);
}

.result-next small,
.result-next strong,
.result-next span {
  display: block;
  min-width: 0;
}

.result-next small {
  color: var(--red);
  font-size: 12px;
  font-weight: 900;
}

.result-next strong {
  color: var(--charcoal);
  font-size: 15px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.result-next span {
  color: #667085;
  font-size: 12px;
  line-height: 1.35;
}

.result-agenda {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  padding: 12px;
  border-left: 4px solid var(--teal);
}

.result-agenda-head span,
.result-agenda-head strong,
.result-agenda-head small {
  display: block;
}

.result-agenda-head span {
  color: var(--teal);
  font-size: 12px;
  font-weight: 900;
}

.result-agenda-head strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 17px;
  line-height: 1.25;
}

.result-agenda-head small {
  margin-top: 6px;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.result-agenda-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 8px;
}

.result-agenda-item {
  display: grid;
  gap: 5px;
  min-width: 0;
  min-height: 116px;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fbfaf7;
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.result-agenda-item:hover {
  border-color: rgba(28, 105, 102, 0.32);
  background: var(--teal-soft);
}

.result-agenda-item time,
.result-agenda-item strong,
.result-agenda-item span,
.result-agenda-item em {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.result-agenda-item time {
  color: var(--red);
  font-size: 12px;
  font-weight: 900;
}

.result-agenda-item strong {
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
}

.result-agenda-item span {
  color: #667085;
  font-size: 11px;
  line-height: 1.4;
}

.result-agenda-item em {
  align-self: end;
  justify-self: start;
  padding: 4px 7px;
  border-radius: 999px;
  background: #fff;
  color: #475467;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}

.result-agenda-item em.easy {
  background: var(--teal-soft);
  color: var(--teal-strong);
}

.result-agenda-item em.date {
  background: var(--red-soft);
  color: var(--red);
}

.result-agenda-item em.risk {
  background: #fffaf0;
  color: #8a4b08;
}

.reminder-bridge {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(28, 105, 102, 0.18);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: linear-gradient(135deg, #f4fbf8 0%, #fff 58%, #fff7f5 100%);
  box-shadow: 0 10px 26px rgba(16, 24, 32, 0.05);
}

.reminder-bridge.watch {
  border-color: rgba(191, 63, 50, 0.18);
  border-left-color: var(--red);
  background: linear-gradient(135deg, #fff7f5 0%, #fff 64%, #f4fbf8 100%);
}

.reminder-bridge.active {
  border-color: rgba(28, 105, 102, 0.24);
  border-left-color: var(--teal);
  background: linear-gradient(135deg, #eefaf6 0%, #fff 68%);
}

.reminder-bridge > div,
.reminder-bridge span,
.reminder-bridge strong,
.reminder-bridge small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.reminder-bridge > div {
  display: grid;
  gap: 5px;
}

.reminder-bridge span {
  color: var(--teal);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.reminder-bridge.watch span {
  color: var(--red);
}

.reminder-bridge strong {
  color: var(--charcoal);
  font-size: 16px;
  line-height: 1.3;
}

.reminder-bridge small {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.month-radar {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(220px, 0.72fr) minmax(0, 1fr);
  gap: 10px;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(28, 105, 102, 0.2);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: linear-gradient(135deg, #f4fbf8 0%, #fff 58%, #fff7f5 100%);
  box-shadow: 0 10px 26px rgba(16, 24, 32, 0.05);
}

.month-radar-head,
.month-radar-metrics,
.month-radar-pick,
.month-radar-flow {
  min-width: 0;
}

.month-radar-head {
  display: grid;
  gap: 6px;
  align-content: start;
  padding: 12px;
  border: 1px solid rgba(28, 105, 102, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.78);
}

.month-radar-head span,
.month-radar-head strong,
.month-radar-head p {
  display: block;
  min-width: 0;
  margin: 0;
}

.month-radar-head span {
  color: var(--teal);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.month-radar-head strong {
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.month-radar-head p {
  color: #5d6672;
  font-size: 12px;
  line-height: 1.55;
}

.month-radar-metrics {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 1px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--line);
}

.month-radar-metrics span {
  display: grid;
  gap: 3px;
  align-content: center;
  min-width: 0;
  min-height: 78px;
  padding: 10px;
  background: #fff;
}

.month-radar-metrics b,
.month-radar-metrics small {
  display: block;
  min-width: 0;
}

.month-radar-metrics b {
  color: var(--charcoal);
  font-size: 21px;
  line-height: 1;
}

.month-radar-metrics small {
  color: #667085;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.month-radar-picks {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.month-radar-pick {
  display: grid;
  gap: 5px;
  min-height: 132px;
  padding: 11px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.86);
  text-align: left;
  cursor: pointer;
}

.month-radar-pick:hover,
.month-radar-chip:hover {
  transform: translateY(-2px);
  border-color: rgba(191, 63, 50, 0.22);
  background: #fff;
}

.month-radar-pick span,
.month-radar-pick strong,
.month-radar-pick small,
.month-radar-pick em {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.month-radar-pick span {
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
}

.month-radar-pick strong {
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
}

.month-radar-pick small {
  color: #667085;
  font-size: 11px;
  line-height: 1.35;
}

.month-radar-pick em {
  align-self: end;
  color: #155e55;
  font-size: 11px;
  font-style: normal;
  font-weight: 800;
  line-height: 1.35;
}

.month-radar-flow {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(180px, 0.35fr) minmax(0, 1fr);
  gap: 10px;
  align-items: stretch;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.7);
}

.month-radar-flow > div:first-child {
  display: grid;
  gap: 4px;
  align-content: center;
  min-width: 0;
}

.month-radar-flow span,
.month-radar-flow strong {
  display: block;
  min-width: 0;
}

.month-radar-flow span {
  color: var(--teal);
  font-size: 12px;
  font-weight: 900;
}

.month-radar-flow strong {
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.month-radar-chip-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 8px;
  min-width: 0;
}

.month-radar-chip {
  display: grid;
  gap: 4px;
  min-width: 0;
  min-height: 64px;
  padding: 9px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fbfaf7;
  text-align: left;
  cursor: pointer;
}

.month-radar-chip strong,
.month-radar-chip small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.month-radar-chip strong {
  color: var(--charcoal);
  font-size: 12px;
  line-height: 1.3;
}

.month-radar-chip small {
  color: #667085;
  font-size: 11px;
  line-height: 1.35;
}

.choice-compass {
  grid-column: 1 / -1;
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(191, 63, 50, 0.16);
  border-left: 4px solid var(--red);
  border-radius: 8px;
  background: linear-gradient(135deg, #fff7f5 0%, #fff 62%, #f4fbf8 100%);
  box-shadow: 0 10px 26px rgba(16, 24, 32, 0.05);
}

.choice-compass-head {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.choice-compass-head span,
.choice-compass-head strong,
.choice-compass-head p {
  display: block;
  min-width: 0;
  margin: 0;
}

.choice-compass-head span {
  color: var(--red);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.choice-compass-head strong {
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.25;
}

.choice-compass-head p {
  color: #667085;
  font-size: 13px;
  line-height: 1.45;
}

.choice-card-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  min-width: 0;
}

.choice-card {
  display: grid;
  gap: 8px;
  min-width: 0;
  min-height: 192px;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-top: 4px solid var(--charcoal);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.88);
}

.choice-card.easy {
  border-top-color: var(--teal);
}

.choice-card.date {
  border-top-color: #b4234a;
}

.choice-card.risk {
  border-top-color: #8a4b08;
}

.choice-card span,
.choice-card strong,
.choice-card small,
.choice-card p,
.choice-card em,
.choice-actions span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.choice-card span {
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
}

.choice-card strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.choice-card small {
  margin-top: 5px;
  color: #667085;
  font-size: 11px;
  line-height: 1.35;
}

.choice-card p {
  margin: 0;
  color: #344054;
  font-size: 12px;
  line-height: 1.45;
}

.choice-card em {
  color: #8a4b08;
  font-size: 11px;
  font-style: normal;
  font-weight: 800;
  line-height: 1.4;
}

.choice-actions {
  align-self: end;
  display: grid;
  gap: 6px;
}

.choice-actions span {
  color: #667085;
  font-size: 11px;
  line-height: 1.35;
}

.active-filter-row {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.76);
}

.active-filter-row.quiet {
  color: #667085;
  font-size: 13px;
  font-weight: 800;
}

.active-filter-row > span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

.active-filter-row > div {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  min-width: 0;
}

.active-filter-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  min-height: 32px;
  max-width: 100%;
  padding: 6px 8px;
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-radius: 999px;
  background: #fff;
  color: #344054;
  font-size: 12px;
  font-weight: 900;
}

.active-filter-chip:hover {
  border-color: rgba(191, 63, 50, 0.35);
  background: var(--red-soft);
  color: var(--danger);
}

.active-filter-chip small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.active-filter-chip strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 12px;
}

.active-filter-chip em {
  display: grid;
  place-items: center;
  width: 16px;
  height: 16px;
  border-radius: 999px;
  background: #eef0f2;
  color: #475467;
  font-style: normal;
  line-height: 1;
}

.active-filter-chip.clear-all {
  border-color: rgba(191, 63, 50, 0.22);
  background: var(--red-soft);
  color: var(--red);
}

.active-filter-chip.share-link {
  border-color: rgba(15, 118, 110, 0.22);
  background: #eaf6f3;
  color: var(--teal-strong);
}

.active-filter-chip.share-link:hover {
  border-color: rgba(15, 118, 110, 0.38);
  background: #dff3ef;
  color: var(--teal-strong);
}

.month-direct-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 11px 12px;
  border: 1px solid #dfe7f0;
  border-left: 4px solid var(--red);
  border-radius: 8px;
  background: #ffffff;
}

.month-direct-summary div,
.month-direct-summary strong,
.month-direct-summary span,
.month-direct-summary small {
  min-width: 0;
}

.month-direct-summary div {
  display: grid;
  gap: 4px;
}

.month-direct-summary strong {
  color: var(--charcoal);
  font-size: 15px;
}

.month-direct-summary span,
.month-direct-summary small {
  color: #667085;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.month-direct-summary small {
  text-align: right;
}

.month-first-look {
  display: grid;
  grid-template-columns: minmax(190px, 0.28fr) minmax(0, 1fr);
  gap: 10px;
  align-items: stretch;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fff;
}

.month-first-look-head,
.month-first-look-grid,
.month-first-look button,
.month-first-look span,
.month-first-look strong,
.month-first-look small,
.month-first-look em {
  min-width: 0;
}

.month-first-look-head {
  display: grid;
  gap: 5px;
  align-content: center;
}

.month-first-look-head span {
  color: var(--teal-strong);
  font-size: 11px;
  font-weight: 900;
}

.month-first-look-head strong {
  color: var(--charcoal);
  font-size: 15px;
  line-height: 1.35;
}

.month-first-look-head small {
  color: #667085;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.45;
}

.month-first-look-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.month-first-look button {
  display: grid;
  gap: 5px;
  align-content: start;
  min-height: 118px;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.09);
  border-radius: 8px;
  background: #f8fafc;
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.month-first-look button:hover {
  border-color: rgba(28, 105, 102, 0.28);
  background: #f2fbf8;
}

.month-first-look button.hot {
  border-color: rgba(191, 63, 50, 0.2);
  background: #fff7f5;
}

.month-first-look button.date {
  border-color: rgba(194, 65, 12, 0.18);
  background: #fff8ed;
}

.month-first-look button.easy {
  border-color: rgba(34, 148, 95, 0.2);
  background: #f1fbf5;
}

.month-first-look button.risk {
  border-color: rgba(180, 35, 74, 0.18);
  background: #fff5f7;
}

.month-first-look button small,
.month-first-look button strong,
.month-first-look button span,
.month-first-look button em {
  display: block;
  overflow-wrap: anywhere;
}

.month-first-look button small {
  color: var(--teal-strong);
  font-size: 10px;
  font-weight: 900;
}

.month-first-look button strong {
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.32;
}

.month-first-look button span,
.month-first-look button em {
  color: #667085;
  font-size: 11px;
  font-style: normal;
  line-height: 1.35;
}

.month-first-look button em {
  margin-top: auto;
  color: #475467;
  font-weight: 800;
}

.share-url-field {
  flex: 1 1 320px;
  min-width: min(100%, 260px);
  height: 34px;
  padding: 7px 10px;
  border: 1px solid rgba(15, 118, 110, 0.24);
  border-radius: 8px;
  background: #fff;
  color: #344054;
  font-size: 12px;
}

.share-text-field {
  flex: 1 1 100%;
  min-width: min(100%, 280px);
  min-height: 132px;
  padding: 9px 10px;
  border: 1px solid rgba(15, 118, 110, 0.24);
  border-radius: 8px;
  background: #fff;
  color: #344054;
  font-size: 12px;
  line-height: 1.55;
  resize: vertical;
}

.result-intent-panel {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 0.72fr);
  gap: 12px;
  align-items: center;
  padding: 11px 12px;
  border: 1px solid rgba(16, 24, 40, 0.09);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: #fff;
}

.result-intent-panel > div {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.result-intent-panel span {
  color: var(--teal-strong);
  font-size: 11px;
  font-weight: 900;
}

.result-intent-panel strong {
  color: var(--charcoal);
  font-size: 15px;
  line-height: 1.35;
}

.result-intent-panel small {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.result-intent-panel dl {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
}

.result-intent-panel dl div {
  min-width: 0;
  padding: 7px 8px;
  border-radius: 8px;
  background: #f7f8fa;
}

.result-intent-panel dt {
  margin: 0 0 3px;
  color: #667085;
  font-size: 11px;
  font-weight: 800;
  white-space: nowrap;
}

.result-intent-panel dd {
  min-width: 0;
  margin: 0;
  overflow: hidden;
  color: var(--charcoal);
  font-size: 13px;
  font-weight: 900;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.result-intent-panel.warm {
  border-left-color: var(--red);
}

.result-intent-panel.warm span {
  color: var(--red);
}

.result-intent-panel.risk {
  border-left-color: #b4234a;
}

.result-intent-panel.risk span {
  color: #b4234a;
}

.result-intent-panel.date {
  border-left-color: #b45309;
}

.result-intent-panel.date span {
  color: #92400e;
}

.result-intent-panel.easy,
.result-intent-panel.calm,
.result-intent-panel.time {
  border-left-color: var(--teal);
}

.search-intent-overview {
  grid-column: 1 / -1;
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.09);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: linear-gradient(135deg, #f4fbf8 0%, #fff 72%);
}

.search-intent-overview.watch {
  border-left-color: #d97706;
  background: linear-gradient(135deg, #fffaf0 0%, #fff 72%);
}

.search-intent-overview.risk {
  border-left-color: var(--red);
  background: linear-gradient(135deg, #fff7f5 0%, #fff 72%);
}

.search-intent-overview-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
  min-width: 0;
}

.search-intent-overview-head > div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.search-intent-overview-head span,
.search-intent-overview-head strong,
.search-intent-overview-head small,
.search-intent-overview-chips small,
.search-intent-overview-chips strong,
.search-intent-overview-chips span,
.search-intent-overview-chips em {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.search-intent-overview-head span {
  color: var(--teal);
  font-size: 11px;
  font-weight: 900;
}

.search-intent-overview.watch .search-intent-overview-head span {
  color: #92400e;
}

.search-intent-overview.risk .search-intent-overview-head span {
  color: var(--red);
}

.search-intent-overview-head strong {
  color: var(--charcoal);
  font-size: 16px;
  line-height: 1.35;
}

.search-intent-overview-head small {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.search-intent-overview-head b {
  display: grid;
  place-items: center;
  min-width: 46px;
  min-height: 38px;
  padding: 0 10px;
  border-radius: 8px;
  background: rgba(15, 118, 110, 0.12);
  color: var(--teal);
  font-size: 16px;
}

.search-intent-overview.watch .search-intent-overview-head b {
  background: rgba(217, 119, 6, 0.12);
  color: #92400e;
}

.search-intent-overview.risk .search-intent-overview-head b {
  background: rgba(191, 63, 50, 0.12);
  color: var(--red);
}

.search-intent-overview-chips {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}

.search-intent-overview-chips button,
.search-intent-overview-chips > span {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 9px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.88);
  color: inherit;
  text-align: left;
}

.search-intent-overview-chips button:hover {
  border-color: rgba(15, 118, 110, 0.3);
  background: var(--teal-soft);
}

.search-intent-overview-chips .gap,
.search-intent-overview-chips .performer {
  border-color: rgba(191, 63, 50, 0.18);
  background: #fff7f7;
}

.search-intent-overview-chips small {
  color: #667085;
  font-size: 10px;
  font-weight: 900;
}

.search-intent-overview-chips .gap small,
.search-intent-overview-chips .performer small {
  color: var(--red);
}

.search-intent-overview-chips strong {
  color: var(--charcoal);
  font-size: 12px;
  line-height: 1.35;
}

.search-intent-overview-chips span,
.search-intent-overview-chips em {
  color: #667085;
  font-size: 11px;
  font-style: normal;
  line-height: 1.35;
}

.search-intent-overview-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.result-action-plan {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0, 0.38fr) minmax(0, 1fr);
  gap: 10px;
  align-items: stretch;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.09);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: #ffffff;
}

.result-action-plan.risk {
  border-left-color: var(--red);
}

.result-action-plan.easy {
  border-left-color: var(--gold);
}

.result-action-plan-head,
.result-action-plan-grid button {
  min-width: 0;
}

.result-action-plan-head {
  display: grid;
  align-content: center;
  gap: 4px;
}

.result-action-plan-head span,
.result-action-plan-head strong,
.result-action-plan-head small,
.result-action-plan-grid small,
.result-action-plan-grid strong,
.result-action-plan-grid span,
.result-action-plan-grid em {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.result-action-plan-head span {
  color: var(--teal);
  font-size: 11px;
  font-weight: 900;
}

.result-action-plan.risk .result-action-plan-head span {
  color: var(--red);
}

.result-action-plan.easy .result-action-plan-head span {
  color: #9a6700;
}

.result-action-plan-head strong {
  color: var(--charcoal);
  font-size: 15px;
  line-height: 1.35;
}

.result-action-plan-head small {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.result-action-plan-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.result-action-plan-grid button {
  display: grid;
  gap: 4px;
  min-height: 82px;
  padding: 10px;
  border: 1px solid #e4e7ec;
  border-radius: 8px;
  background: #fbfcfd;
  color: inherit;
  text-align: left;
}

.result-action-plan-grid button:hover {
  border-color: #cfd4dc;
  background: #ffffff;
  box-shadow: 0 8px 18px rgba(16, 24, 40, 0.07);
}

.result-action-plan-grid small {
  color: #667085;
  font-size: 10px;
  font-weight: 900;
}

.result-action-plan-grid strong {
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
}

.result-action-plan-grid span {
  color: #667085;
  font-size: 11px;
  line-height: 1.35;
}

.result-action-plan-grid em {
  align-self: end;
  width: fit-content;
  margin-top: 2px;
  padding: 4px 7px;
  border-radius: 6px;
  background: var(--charcoal);
  color: #ffffff;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}

.result-refine-panel {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0, 0.42fr) minmax(0, 1fr);
  gap: 10px;
  align-items: stretch;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.09);
  border-left: 4px solid var(--gold);
  border-radius: 8px;
  background: #fffdf6;
}

.result-refine-panel > div:first-child,
.result-refine-actions button {
  min-width: 0;
}

.result-refine-panel > div:first-child {
  display: grid;
  align-content: center;
  gap: 4px;
}

.result-refine-panel span,
.result-refine-panel strong,
.result-refine-panel small {
  display: block;
  min-width: 0;
}

.result-refine-panel > div:first-child span {
  color: #9a6700;
  font-size: 11px;
  font-weight: 900;
}

.result-refine-panel > div:first-child strong {
  color: var(--charcoal);
  font-size: 15px;
  line-height: 1.35;
}

.result-refine-panel > div:first-child small {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.result-refine-actions {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}

.result-refine-actions button {
  display: grid;
  gap: 4px;
  align-content: center;
  min-height: 66px;
  padding: 9px;
  border: 1px solid rgba(154, 103, 0, 0.16);
  border-radius: 8px;
  background: #fff;
  color: inherit;
  text-align: left;
}

.result-refine-actions button:hover {
  border-color: rgba(15, 118, 110, 0.28);
  background: #eefaf6;
}

.result-refine-actions small {
  color: #9a6700;
  font-size: 11px;
  font-weight: 900;
}

.result-refine-actions strong {
  overflow: hidden;
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.result-refine-actions span {
  color: #667085;
  font-size: 11px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.result-decision-strip {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 0.95fr) auto;
  gap: 10px;
  align-items: stretch;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.09);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: #fff;
}

.result-decision-strip.risk {
  border-left-color: #b4234a;
}

.result-decision-strip.watch {
  border-left-color: #d97706;
}

.result-decision-head,
.result-decision-actions {
  display: grid;
  align-content: center;
  gap: 5px;
  min-width: 0;
}

.result-decision-head span,
.result-decision-head strong,
.result-decision-head small,
.result-decision-actions small,
.result-decision-counts span,
.result-decision-counts b,
.result-decision-counts i,
.result-decision-counts em {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.result-decision-head span {
  color: var(--teal-strong);
  font-size: 11px;
  font-weight: 900;
}

.result-decision-strip.risk .result-decision-head span {
  color: #b4234a;
}

.result-decision-strip.watch .result-decision-head span {
  color: #b54708;
}

.result-decision-head strong {
  color: var(--charcoal);
  font-size: 15px;
  line-height: 1.35;
}

.result-decision-head small,
.result-decision-actions small {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.result-decision-counts {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
  min-width: 0;
}

.result-decision-counts span {
  min-height: 62px;
  padding: 8px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #f7f8fa;
}

.result-decision-counts span.ready {
  background: #f0fdfa;
}

.result-decision-counts span.highDemand {
  background: #fff1f3;
}

.result-decision-counts span.freeRule {
  background: #fffaf0;
}

.result-decision-counts b {
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1;
}

.result-decision-counts i {
  margin-top: 4px;
  color: #344054;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
  line-height: 1.2;
}

.result-decision-counts em {
  margin-top: 4px;
  color: #667085;
  font-size: 10px;
  font-style: normal;
  font-weight: 800;
  line-height: 1.25;
}

.result-decision-actions {
  justify-items: end;
}

.result-decision-actions .compact-button {
  min-width: 138px;
}

.month-overview {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
  align-items: stretch;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(28, 105, 102, 0.14);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: #fff;
}

.month-overview-head,
.month-overview-stats,
.month-overview-actions {
  min-width: 0;
}

.month-overview-head {
  display: grid;
  gap: 5px;
  align-content: center;
}

.month-overview-head span,
.month-overview-head strong,
.month-overview-head small,
.month-overview-stats b,
.month-overview-stats small,
.month-overview-actions strong,
.month-overview-actions small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.month-overview-head span {
  color: var(--teal-strong);
  font-size: 11px;
  font-weight: 900;
}

.month-overview-head strong {
  color: var(--charcoal);
  font-size: 16px;
  line-height: 1.3;
}

.month-overview-head small {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.month-ticket-pulse {
  display: grid;
  gap: 7px;
  margin-top: 6px;
  padding: 8px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #f7f8fa;
}

.month-ticket-pulse > strong,
.month-ticket-pulse p,
.month-ticket-pulse-row span,
.month-ticket-pulse-row b,
.month-ticket-pulse-row i,
.month-ticket-pulse-row em {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.month-ticket-pulse > strong {
  color: var(--charcoal);
  font-size: 12px;
  line-height: 1.25;
}

.month-ticket-pulse-row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 5px;
}

.month-ticket-pulse-row span {
  min-height: 52px;
  padding: 7px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 7px;
  background: #fff;
}

.month-ticket-pulse-row span.ready {
  border-color: rgba(28, 105, 102, 0.22);
}

.month-ticket-pulse-row span.highDemand {
  border-color: rgba(180, 35, 74, 0.22);
}

.month-ticket-pulse-row span.freeRule {
  border-color: rgba(34, 148, 95, 0.22);
}

.month-ticket-pulse-row span.search {
  border-color: rgba(37, 99, 235, 0.18);
}

.month-ticket-pulse-row b {
  color: var(--charcoal);
  font-size: 16px;
  line-height: 1;
}

.month-ticket-pulse-row i {
  margin-top: 4px;
  color: var(--teal-strong);
  font-size: 10px;
  font-style: normal;
  font-weight: 900;
  line-height: 1.2;
}

.month-ticket-pulse-row em {
  margin-top: 3px;
  color: #667085;
  font-size: 10px;
  font-style: normal;
  line-height: 1.25;
}

.month-ticket-pulse p {
  margin: 0;
  color: #475467;
  font-size: 11px;
  line-height: 1.35;
}

.month-overview-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
}

.month-overview-stats span,
.month-overview-stats button {
  min-width: 0;
  min-height: 64px;
  padding: 9px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #f7f8fa;
  color: inherit;
  text-align: left;
}

.month-overview-stats button {
  cursor: pointer;
}

.month-overview-stats button:hover {
  border-color: rgba(28, 105, 102, 0.28);
  background: var(--teal-soft);
}

.month-overview-stats b {
  overflow: hidden;
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.month-overview-stats small {
  margin-top: 4px;
  color: #667085;
  font-size: 11px;
  font-weight: 800;
}

.month-overview-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
}

.month-overview-actions button {
  display: grid;
  gap: 3px;
  align-content: center;
  min-width: 0;
  min-height: 52px;
  padding: 8px;
  border: 1px solid rgba(28, 105, 102, 0.16);
  border-radius: 8px;
  background: #f4fbf8;
  color: var(--teal-strong);
  text-align: left;
  cursor: pointer;
}

.month-overview-actions button:hover {
  border-color: rgba(191, 63, 50, 0.26);
  background: var(--red-soft);
  color: var(--red);
}

.month-overview-actions strong {
  font-size: 12px;
  line-height: 1.25;
}

.month-overview-actions small {
  color: #667085;
  font-size: 11px;
  line-height: 1.25;
}

.month-day-guide {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 180px minmax(0, 1fr);
  gap: 10px;
  align-items: stretch;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid #b45309;
  border-radius: 8px;
  background: #fffaf0;
}

.month-day-guide-head,
.month-day-guide-list,
.month-day-guide button,
.month-day-guide span,
.month-day-guide strong,
.month-day-guide small {
  min-width: 0;
}

.month-day-guide-head {
  display: grid;
  gap: 5px;
  align-content: center;
}

.month-day-guide-head span {
  color: #92400e;
  font-size: 11px;
  font-weight: 900;
}

.month-day-guide-head strong {
  color: var(--charcoal);
  font-size: 15px;
  line-height: 1.35;
}

.month-day-guide-list {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 7px;
}

.month-day-guide button {
  display: grid;
  gap: 5px;
  align-content: start;
  min-height: 126px;
  padding: 9px;
  border: 1px solid rgba(180, 83, 9, 0.18);
  border-radius: 8px;
  background: #fff;
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.month-day-guide button:hover {
  border-color: rgba(191, 63, 50, 0.28);
  background: var(--red-soft);
}

.month-day-guide time,
.month-day-guide strong,
.month-day-guide small,
.month-day-guide span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.month-day-guide time {
  color: #92400e;
  font-size: 12px;
  font-weight: 900;
}

.month-day-guide strong {
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
}

.month-day-guide small {
  color: #667085;
  font-size: 11px;
  line-height: 1.35;
}

.month-day-guide span {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-top: auto;
}

.month-day-guide b {
  padding: 3px 6px;
  border-radius: 999px;
  background: #fff3d6;
  color: #92400e;
  font-size: 10px;
  font-weight: 900;
}

.spotlight {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  margin-bottom: 16px;
  padding: 16px;
  border: 1px solid rgba(191, 63, 50, 0.18);
  border-radius: 8px;
  background:
    linear-gradient(90deg, rgba(255, 240, 237, 0.92), rgba(255, 246, 223, 0.75)),
    #fff;
}

.spotlight h3,
.spotlight p {
  margin: 0;
}

.spotlight h3 {
  color: var(--charcoal);
  font-size: 21px;
}

.spotlight-copy > p:not(.eyebrow) {
  margin-top: 7px;
  color: #5d6672;
  line-height: 1.55;
}

.spotlight-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.spotlight-meta span {
  padding: 5px 8px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.75);
  color: #344054;
  font-size: 12px;
  font-weight: 800;
}

.rank-board {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 16px;
}

.rank-item {
  min-width: 0;
  min-height: 124px;
  padding: 14px;
  border: 1px solid var(--line);
  border-left: 4px solid var(--rank-accent, var(--red));
  border-radius: 8px;
  background: linear-gradient(135deg, var(--rank-tint, #fff), #fff 58%);
  text-align: left;
  box-shadow: 0 10px 26px rgba(16, 24, 32, 0.06);
}

.rank-item:hover {
  transform: translateY(-2px);
  border-color: var(--line-strong);
}

.rank-item span,
.rank-item strong,
.rank-item small {
  display: block;
  min-width: 0;
}

.rank-item span {
  color: var(--rank-accent, var(--red));
  font-size: 12px;
  font-weight: 900;
}

.rank-item strong {
  margin-top: 8px;
  color: var(--charcoal);
  font-size: 15px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.rank-item small {
  margin-top: 8px;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.month-archive {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  align-items: start;
  margin-bottom: 12px;
  padding: 14px;
  border: 1px solid #dde5ef;
  border-radius: 8px;
  background: #ffffff;
}

.month-archive > div:first-child {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 14px;
}

.month-archive h3 {
  margin: 3px 0 0;
  color: var(--charcoal);
  font-size: 16px;
  white-space: nowrap;
}

.month-archive > div:first-child small {
  display: block;
  max-width: 520px;
  margin-top: 6px;
  color: #667085;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.month-archive-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}

.month-board-status {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-width: 0;
  padding: 10px 12px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #fbfcfd;
}

.month-board-status.active {
  border-color: rgba(217, 54, 43, 0.2);
  background: #fff8f6;
}

.month-board-status div {
  min-width: 0;
}

.month-board-status strong,
.month-board-status span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.month-board-status strong {
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.month-board-status span {
  margin-top: 3px;
  color: #667085;
  font-size: 12px;
  line-height: 1.4;
}

.month-board-status .text-button {
  flex: 0 0 auto;
  white-space: nowrap;
}

.year-month-panel {
  display: grid;
  grid-template-columns: 104px minmax(0, 1fr);
  gap: 12px;
  align-items: stretch;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-left: 4px solid #2b8a7c;
  border-radius: 8px;
  background: #f8fafc;
}

.year-month-panel.active {
  border-color: rgba(191, 63, 50, 0.34);
  border-left-color: var(--red);
  background: #fff8f7;
}

.year-month-head {
  display: grid;
  align-content: center;
  gap: 8px;
  min-width: 0;
}

.year-month-head span,
.year-month-head strong,
.year-month-head small,
.year-month-head b {
  display: block;
  min-width: 0;
}

.year-month-head strong {
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1;
}

.year-month-head small {
  margin-top: 5px;
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.year-month-head b {
  color: var(--red);
  font-size: 12px;
}

.year-month-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(88px, 1fr));
  gap: 8px;
  min-width: 0;
}

.month-card {
  position: relative;
  display: grid;
  align-content: start;
  overflow: hidden;
  width: 100%;
  min-width: 0;
  min-height: 72px;
  padding: 11px 12px 10px 14px;
  border: 1px solid #e4e7ec;
  border-radius: 8px;
  background: linear-gradient(135deg, var(--month-bg, #ffffff) 0%, var(--month-bg-2, #ffffff) 100%);
  box-shadow: none;
  text-align: left;
  transition: border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
}

.month-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 5px;
  background: #d0d5dd;
}

.month-card:hover,
.month-card.active {
  border-color: #cfd4dc;
  box-shadow: 0 8px 18px rgba(16, 24, 40, 0.08);
  transform: translateY(-1px);
}

.month-card.active::before {
  width: 6px;
  background: var(--red);
}

.month-card span,
.month-card strong,
.month-card small,
.month-card em,
.month-card b {
  display: block;
  min-width: 0;
}

.month-card span {
  color: #667085;
  font-size: 10px;
  font-weight: 800;
}

.month-card strong {
  margin-top: 4px;
  color: #101828;
  font-size: 18px;
  line-height: 1.05;
}

.month-card small {
  margin-top: 5px;
  color: #344054;
  font-size: 11px;
  font-weight: 900;
}

.month-card em {
  display: block;
  margin-top: 6px;
  color: #667085;
  font-size: 11px;
  font-style: normal;
  font-weight: 800;
  line-height: 1.25;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.month-card .month-card-tags {
  display: none;
}

.month-card-tags i {
  display: inline-flex;
  min-width: 0;
  max-width: 100%;
  padding: 2px 5px;
  border-radius: 999px;
  background: #f2f4f7;
  color: #475467;
  font-size: 9px;
  font-style: normal;
  font-weight: 900;
  line-height: 1.2;
}

.month-card-tags i.fireworks {
  background: #fff4ed;
  color: #b54708;
}

.month-card-tags i.hot {
  background: var(--red-soft);
  color: var(--red);
}

.month-card-tags i.date {
  background: #fff1f3;
  color: #b4234a;
}

.month-card-tags i.easy {
  background: #eaf6f3;
  color: var(--teal-strong);
}

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

.result-load-more {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  margin-top: 16px;
  padding: 14px;
  border: 1px solid rgba(15, 118, 110, 0.18);
  border-radius: 8px;
  background: linear-gradient(135deg, #fffdf8, #f4fbf8);
}

.result-load-more[hidden] {
  display: none;
}

.result-load-more strong,
.result-load-more span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.result-load-more strong {
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.result-load-more span {
  margin-top: 3px;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.result-load-more button {
  min-width: 138px;
}

.event-card {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.event-card::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  z-index: 2;
  width: 5px;
  height: 100%;
  background: var(--card-accent, var(--red));
}

.event-card:hover {
  transform: translateY(-3px);
  border-color: var(--line-strong);
  box-shadow: var(--shadow);
}

.event-thumb {
  position: relative;
  min-height: 180px;
  background-image: var(--event-image, url("./assets/hero-couple-events.webp"));
  background-size: cover;
  background-position: var(--thumb-x, center) var(--thumb-y, center);
  background-color: var(--card-tint, #fff);
}

.event-thumb::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.02), rgba(0, 0, 0, 0.26));
}

.dialog-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.03), rgba(0, 0, 0, 0.52));
}

.category-pill,
.date-badge {
  position: absolute;
  z-index: 1;
  border-radius: 8px;
  font-weight: 900;
}

.category-pill {
  left: 12px;
  top: 12px;
  padding: 6px 10px;
  background: rgba(255, 255, 255, 0.94);
  color: var(--charcoal);
  font-size: 12px;
}

.date-badge {
  left: 12px;
  bottom: 12px;
  padding: 8px 10px;
  background: rgba(255, 253, 248, 0.95);
  color: var(--red);
  font-size: 13px;
  line-height: 1.15;
  max-width: calc(100% - 24px);
}

.date-badge.ongoing-date-badge {
  background: rgba(237, 250, 246, 0.96);
  color: #12625f;
}

.card-image-safety {
  position: absolute;
  right: 12px;
  top: 12px;
  z-index: 1;
  display: grid;
  gap: 2px;
  max-width: 132px;
  padding: 7px 9px;
  border: 1px solid rgba(16, 24, 40, 0.14);
  border-radius: 8px;
  background: rgba(255, 253, 248, 0.94);
  color: var(--charcoal);
  box-shadow: 0 10px 22px rgba(16, 24, 40, 0.14);
  backdrop-filter: blur(12px);
}

.card-image-safety strong,
.card-image-safety small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
  line-height: 1.15;
}

.card-image-safety strong {
  font-size: 12px;
  font-weight: 900;
}

.card-image-safety small {
  color: #667085;
  font-size: 10px;
  font-weight: 900;
}

.card-image-safety.safe {
  border-color: rgba(12, 111, 96, 0.24);
  background: rgba(240, 253, 250, 0.94);
  color: var(--teal-strong);
}

.card-image-safety.warn,
.card-image-safety.watch {
  border-color: rgba(217, 119, 6, 0.26);
  background: rgba(255, 250, 240, 0.95);
  color: #8a4b08;
}

.card-image-safety.danger {
  border-color: rgba(191, 63, 50, 0.26);
  background: rgba(255, 241, 240, 0.95);
  color: var(--red);
}

.event-body {
  padding: 16px;
  background: linear-gradient(180deg, var(--card-tint, #fff), #fff 72px);
}

.card-kicker {
  margin: 0 0 10px;
  color: var(--card-accent, var(--red));
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0;
}

.event-title-row {
  align-items: flex-start;
}

.event-title-row h3 {
  margin: 0;
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.35;
}

.event-title-row p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 12px;
}

.save-button {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border: 1px solid var(--line);
  background: #fff;
  color: #7a8491;
}

.save-button.active {
  border-color: rgba(191, 63, 50, 0.35);
  background: var(--red-soft);
  color: var(--red);
}

.meta-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 7px 12px;
  margin: 13px 0;
}

.meta-grid span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #5d6672;
  font-size: 12px;
}

.card-access-strip {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr) auto;
  gap: 8px;
  align-items: stretch;
  margin: -2px 0 13px;
  padding: 9px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid #2563eb;
  border-radius: 8px;
  background: #f8fafc;
}

.card-access-strip.ready,
.card-access-strip.safe {
  border-left-color: var(--teal);
  background: #f2fbf8;
}

.card-access-strip.risk,
.card-access-strip.danger {
  border-left-color: var(--coral);
  background: #fff5f7;
}

.card-access-strip.notice,
.card-access-strip.review {
  border-left-color: #2563eb;
  background: #f5f8ff;
}

.card-access-strip div,
.card-access-strip button,
.card-access-strip small,
.card-access-strip strong,
.card-access-strip span,
.card-access-strip a {
  min-width: 0;
}

.card-access-strip small,
.card-access-strip strong,
.card-access-strip span {
  display: block;
  overflow-wrap: anywhere;
}

.card-access-strip small {
  color: #667085;
  font-size: 10px;
  font-weight: 900;
}

.card-access-strip strong {
  margin-top: 2px;
  color: var(--charcoal);
  font-size: 12px;
  line-height: 1.25;
}

.card-access-strip span {
  margin-top: 3px;
  color: #667085;
  font-size: 11px;
  line-height: 1.3;
}

.card-entry-action {
  display: grid;
  align-content: center;
  min-height: 100%;
  padding: 0 0 0 8px;
  border: 0;
  border-left: 1px solid rgba(16, 24, 40, 0.08);
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.card-entry-action:hover strong {
  color: var(--teal-strong);
}

.card-entry-action:focus-visible {
  outline: 2px solid rgba(15, 118, 110, 0.38);
  outline-offset: 3px;
}

.card-map-actions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5px;
  align-content: center;
  min-width: 72px;
}

.card-map-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 0 8px;
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal);
  font-size: 11px;
  font-weight: 900;
  text-decoration: none;
}

.card-map-actions a:hover {
  border-color: rgba(28, 105, 102, 0.3);
  color: var(--teal-strong);
}

.event-summary {
  min-height: 68px;
  margin: 0 0 13px;
  color: #475467;
  font-size: 14px;
  line-height: 1.65;
}

.micro-details {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-bottom: 13px;
}

.micro-details span {
  min-width: 0;
  padding: 9px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.72);
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.micro-details b {
  display: block;
  margin-bottom: 3px;
  color: var(--card-accent, var(--red));
  font-size: 11px;
}

.card-conversion {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 4px 9px;
  align-items: center;
  min-height: 72px;
  margin-bottom: 13px;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-left: 4px solid var(--card-accent, var(--red));
  border-radius: 8px;
  background: linear-gradient(90deg, var(--card-tint, #fff), #fff 72%);
}

.card-conversion span {
  display: inline-grid;
  place-items: center;
  min-height: 26px;
  padding: 4px 8px;
  border-radius: 999px;
  background: #eef0f2;
  color: #475467;
  font-size: 11px;
  font-weight: 900;
  white-space: nowrap;
}

.card-conversion strong,
.card-conversion small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.card-conversion strong {
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
}

.card-conversion small {
  grid-column: 1 / -1;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.card-couple-hint {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 4px 8px;
  align-items: center;
  margin: -3px 0 13px;
  padding: 9px 10px;
  border: 1px solid rgba(190, 24, 93, 0.14);
  border-left: 4px solid #be185d;
  border-radius: 8px;
  background: #fff7fb;
}

.card-couple-hint span,
.card-couple-hint strong,
.card-couple-hint small,
.card-couple-hint em {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.card-couple-hint span {
  display: inline-grid;
  place-items: center;
  min-height: 24px;
  padding: 4px 8px;
  border-radius: 999px;
  background: #fce7f3;
  color: #be185d;
  font-size: 11px;
  font-weight: 900;
  white-space: nowrap;
}

.card-couple-hint strong {
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
}

.card-couple-hint small {
  justify-self: end;
  color: #9d174d;
  font-size: 11px;
  font-weight: 900;
  text-align: right;
}

.card-couple-hint em {
  grid-column: 1 / -1;
  color: #667085;
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}

.card-fireworks-hint {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 4px 8px;
  align-items: center;
  margin: -3px 0 13px;
  padding: 9px 10px;
  border: 1px solid rgba(217, 119, 6, 0.16);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #fffaf0;
}

.card-fireworks-hint span,
.card-fireworks-hint strong,
.card-fireworks-hint small,
.card-fireworks-hint em {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.card-fireworks-hint span {
  display: inline-grid;
  place-items: center;
  min-height: 24px;
  padding: 4px 8px;
  border-radius: 999px;
  background: #ffedd5;
  color: #b45309;
  font-size: 11px;
  font-weight: 900;
  white-space: nowrap;
}

.card-fireworks-hint strong {
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
}

.card-fireworks-hint small {
  justify-self: end;
  color: #b45309;
  font-size: 11px;
  font-weight: 900;
  text-align: right;
}

.card-fireworks-hint em {
  grid-column: 1 / -1;
  color: #667085;
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}

.card-high-demand-hint {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 4px 8px;
  align-items: center;
  margin: -3px 0 13px;
  padding: 9px 10px;
  border: 1px solid rgba(220, 38, 38, 0.14);
  border-left: 4px solid #dc2626;
  border-radius: 8px;
  background: #fff5f5;
}

.card-high-demand-hint span,
.card-high-demand-hint strong,
.card-high-demand-hint small,
.card-high-demand-hint em {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.card-high-demand-hint span {
  display: inline-grid;
  place-items: center;
  min-height: 24px;
  padding: 4px 8px;
  border-radius: 999px;
  background: #fee2e2;
  color: #b91c1c;
  font-size: 11px;
  font-weight: 900;
  white-space: nowrap;
}

.card-high-demand-hint strong {
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
}

.card-high-demand-hint small {
  justify-self: end;
  color: #b91c1c;
  font-size: 11px;
  font-weight: 900;
  text-align: right;
}

.card-high-demand-hint em {
  grid-column: 1 / -1;
  color: #667085;
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}

.card-artist-image-guard {
  display: grid;
  gap: 3px;
  margin: -4px 0 10px;
  padding: 8px 9px;
  border: 1px solid rgba(217, 119, 6, 0.14);
  border-radius: 8px;
  background: rgba(255, 250, 240, 0.72);
}

.card-artist-image-guard.safe {
  border-color: rgba(15, 118, 110, 0.18);
  background: rgba(240, 253, 250, 0.72);
}

.card-artist-image-guard small,
.card-artist-image-guard strong,
.card-artist-image-guard span,
.card-artist-image-guard em {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.card-artist-image-guard small {
  color: #b45309;
  font-size: 10px;
  font-weight: 900;
}

.card-artist-image-guard.safe small {
  color: var(--teal);
}

.card-artist-image-guard strong {
  color: var(--charcoal);
  font-size: 12px;
  line-height: 1.3;
}

.card-artist-image-guard span {
  color: #475467;
  font-size: 11px;
  line-height: 1.35;
}

.card-artist-image-guard em {
  color: #8a4b08;
  font-size: 10px;
  font-style: normal;
  font-weight: 800;
  line-height: 1.35;
}

.card-artist-image-guard.safe em {
  color: #0f766e;
}

.card-ticket-trust {
  display: grid;
  gap: 4px;
  margin: -4px 0 13px;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #fffaf0;
}

.card-ticket-trust.ready,
.card-ticket-trust.safe {
  border-left-color: var(--teal);
  background: #f0fdfa;
}

.card-ticket-trust.notice,
.card-ticket-trust.review {
  border-left-color: #2563eb;
  background: #eff6ff;
}

.card-ticket-trust.risk,
.card-ticket-trust.danger {
  border-left-color: var(--coral);
  background: #fff1f2;
}

.card-ticket-trust small,
.card-ticket-trust strong,
.card-ticket-trust span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.card-ticket-trust small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.card-ticket-trust strong {
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.3;
}

.card-ticket-trust span {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.card-next-strip {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  margin: -2px 0 13px;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #fffaf0;
}

.card-next-strip.ready,
.card-next-strip.easy {
  border-left-color: var(--teal);
  background: #f0fdfa;
}

.card-next-strip.checked {
  border-left-color: #2563eb;
  background: #eff6ff;
}

.card-next-strip.risk,
.card-next-strip.danger {
  border-left-color: var(--coral);
  background: #fff1f2;
}

.card-next-strip small,
.card-next-strip strong,
.card-next-strip span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.card-next-strip small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.card-next-strip strong {
  margin-top: 2px;
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.25;
}

.card-next-strip span {
  margin-top: 2px;
  color: #667085;
  font-size: 12px;
}

.card-next-buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
}

.primary-mini,
.secondary-mini {
  min-height: 32px;
  padding: 0 10px;
  border-radius: 8px;
  font-size: 12px;
}

.primary-mini {
  border: 1px solid var(--charcoal);
  background: var(--charcoal);
  color: #fff;
}

.secondary-mini {
  border: 1px solid rgba(16, 24, 32, 0.12);
  background: #fff;
  color: var(--charcoal);
}

.card-conversion.direct {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, #eaf6f3, #fff 70%);
}

.card-conversion.direct span,
.card-conversion.easy span {
  background: var(--teal-soft);
  color: var(--teal-strong);
}

.card-conversion.hot {
  border-left-color: var(--red);
  background: linear-gradient(90deg, var(--red-soft), #fff 70%);
}

.card-conversion.hot span {
  background: var(--red-soft);
  color: var(--danger);
}

.card-conversion.date {
  border-left-color: #b4234a;
  background: linear-gradient(90deg, #fff1f4, #fff 70%);
}

.card-conversion.date span {
  background: #fff1f4;
  color: #b4234a;
}

.signal-row {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-bottom: 14px;
}

.signal.easy,
.signal.teal,
.tag {
  background: var(--teal-soft);
  color: var(--teal);
}

.signal.warn {
  background: var(--gold-soft);
  color: #8a5a10;
}

.signal.rose {
  background: #fff1f4;
  color: #b4234a;
}

.signal.danger {
  background: var(--red-soft);
  color: var(--danger);
}

.signal.muted {
  background: #eef0f2;
  color: #667085;
}

.tag {
  min-height: 26px;
  padding: 4px 8px;
}

.card-actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
}

.detail-button {
  min-height: 42px;
  border: 1px solid var(--charcoal);
  background: var(--charcoal);
  color: #fff;
  font-weight: 900;
}

.detail-button.action-safe,
.detail-button.action-ready {
  border-color: var(--teal);
  background: var(--teal);
}

.detail-button.action-notice,
.detail-button.action-info {
  border-color: #2563eb;
  background: #2563eb;
}

.detail-button.action-review {
  border-color: #475467;
  background: #475467;
}

.detail-button.action-risk,
.detail-button.action-watch {
  border-color: #d97706;
  background: #d97706;
}

.detail-button.action-danger {
  border-color: var(--coral);
  background: var(--coral);
}

.card-actions strong {
  display: inline-flex;
  align-items: center;
  color: var(--charcoal);
  white-space: nowrap;
}

.right-rail {
  display: grid;
  gap: 16px;
}

.rail-panel {
  overflow: hidden;
}

.saved-list {
  display: grid;
  gap: 8px;
  margin-top: 12px;
  max-height: none;
  overflow: visible;
}

.saved-empty {
  padding: 14px;
  border: 1px dashed var(--line-strong);
  border-radius: 8px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}

.saved-item {
  display: grid;
  gap: 4px;
  width: 100%;
  padding: 12px;
  border: 1px solid var(--line);
  background: #fff;
  text-align: left;
}

.saved-item span {
  color: var(--red);
  font-size: 12px;
  font-weight: 900;
}

.saved-item strong {
  color: var(--charcoal);
}

.saved-item small {
  color: var(--muted);
}

.trip-board-meter {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.trip-board-meter div {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 10px;
  border: 1px solid var(--line);
  background: var(--surface-2);
}

.trip-board-meter span,
.trip-board-meter strong {
  display: block;
  min-width: 0;
}

.trip-board-meter span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
}

.trip-board-meter strong {
  color: var(--charcoal);
  font-size: 14px;
  overflow-wrap: anywhere;
}

.trip-next-move {
  padding: 10px 12px;
  border: 1px solid rgba(15, 118, 110, 0.22);
  background: var(--teal-soft);
  color: #155e55;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.5;
}

.trip-optimizer {
  display: grid;
  gap: 9px;
  padding: 10px;
  border: 1px solid rgba(191, 63, 50, 0.16);
  border-left: 4px solid var(--red);
  background: linear-gradient(135deg, #fff7f5, #fff 68%, #f4fbf8);
}

.trip-optimizer-head {
  display: grid;
  gap: 4px;
}

.trip-optimizer-head span,
.trip-optimizer-head strong,
.trip-optimizer-head small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.trip-optimizer-head span {
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.trip-optimizer-head strong {
  color: var(--charcoal);
  font-size: 15px;
  line-height: 1.25;
}

.trip-optimizer-head small {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.trip-optimizer-alerts {
  display: grid;
  gap: 5px;
  padding: 8px;
  border: 1px solid rgba(15, 118, 110, 0.18);
  background: var(--teal-soft);
}

.trip-optimizer-alerts.watch {
  border-color: rgba(191, 63, 50, 0.18);
  background: var(--red-soft);
}

.trip-optimizer-alerts span {
  display: block;
  min-width: 0;
  color: #155e55;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.trip-optimizer-alerts.watch span {
  color: var(--red);
}

.trip-priority-list {
  display: grid;
  gap: 7px;
}

.trip-priority-item {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 9px;
  border: 1px solid var(--line);
  border-left: 4px solid var(--charcoal);
  background: rgba(255, 255, 255, 0.86);
  text-align: left;
}

.trip-priority-item.risk {
  border-left-color: #8a4b08;
  background: #fffaf0;
}

.trip-priority-item.easy,
.trip-priority-item.indoor {
  border-left-color: var(--teal);
}

.trip-priority-item.date {
  border-left-color: #b4234a;
}

.trip-priority-item span,
.trip-priority-item strong,
.trip-priority-item small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.trip-priority-item span {
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
}

.trip-priority-item strong {
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
}

.trip-priority-item small {
  color: #667085;
  font-size: 11px;
  line-height: 1.35;
}

.trip-day-optimizer {
  display: grid;
  gap: 7px;
}

.trip-day-route {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 9px;
  border: 1px solid var(--line);
  background: #fff;
}

.trip-day-route.watch {
  border-color: rgba(138, 75, 8, 0.22);
  background: #fffaf0;
}

.trip-day-route.risk {
  border-color: rgba(191, 63, 50, 0.24);
  background: var(--red-soft);
}

.trip-day-route span,
.trip-day-route strong,
.trip-day-route small,
.trip-day-route p,
.trip-day-route em {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.trip-day-route span {
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
}

.trip-day-route strong {
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
}

.trip-day-route small,
.trip-day-route p,
.trip-day-route em {
  color: #667085;
  font-size: 11px;
  line-height: 1.4;
}

.trip-day-route p,
.trip-day-route em {
  margin: 0;
}

.trip-day-route em {
  color: #8a4b08;
  font-style: normal;
  font-weight: 800;
}

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

.trip-day-card {
  display: grid;
  gap: 8px;
  padding: 10px;
  border: 1px solid var(--line);
  background: #fff;
}

.trip-day-head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 4px 10px;
  align-items: start;
}

.trip-day-head span {
  color: var(--red);
  font-size: 12px;
  font-weight: 900;
}

.trip-day-head strong {
  min-width: 0;
  color: var(--charcoal);
  overflow-wrap: anywhere;
}

.trip-day-head em {
  grid-column: 1 / -1;
  color: var(--muted);
  font-size: 12px;
  font-style: normal;
}

.saved-item.trip-item {
  position: relative;
  padding-right: 82px;
}

.saved-item.trip-item em {
  position: absolute;
  top: 10px;
  right: 10px;
  max-width: 68px;
  padding: 4px 6px;
  border: 1px solid rgba(191, 63, 50, 0.18);
  background: var(--red-soft);
  color: var(--red);
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
  text-align: center;
}

.trip-suggestions {
  display: grid;
  gap: 8px;
  padding-top: 10px;
  border-top: 1px solid #eee5da;
}

.trip-suggestions > span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}

.trip-suggestion {
  display: grid;
  gap: 4px;
  width: 100%;
  padding: 10px;
  border: 1px dashed var(--line-strong);
  background: var(--gold-soft);
  text-align: left;
}

.trip-suggestion strong {
  color: var(--gold);
  font-size: 12px;
}

.trip-suggestion small {
  color: var(--charcoal);
  font-weight: 800;
  line-height: 1.45;
}

.trip-board-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.trip-board-actions .compact-button {
  justify-content: center;
  width: 100%;
  min-height: 38px;
}

.trip-share-field {
  width: 100%;
  min-height: 180px;
  padding: 12px;
  border: 1px solid var(--line-strong);
  background: #fff;
  color: var(--charcoal);
  font-size: 12px;
  line-height: 1.55;
  resize: vertical;
}

.board-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid #eee5da;
}

.board-summary span {
  color: var(--muted);
}

.board-summary strong {
  color: var(--charcoal);
}

.mini-map {
  display: grid;
  gap: 14px;
  min-height: 0;
  margin-top: 12px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fbfaf7;
}

.map-summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  width: 100%;
  min-width: 0;
  padding: 11px 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: linear-gradient(135deg, #ffffff 0%, #f8f2ea 100%);
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.map-summary:hover,
.map-summary.active {
  border-color: rgba(15, 118, 110, 0.28);
  background: linear-gradient(135deg, #f4fbf8 0%, #ffffff 100%);
}

.map-summary span,
.map-summary strong,
.map-summary em,
.map-summary-copy,
.map-area-row strong,
.map-area-row small,
.map-area-row b,
.map-more {
  min-width: 0;
  overflow-wrap: anywhere;
}

.map-summary span {
  display: block;
  color: var(--teal);
  font-size: 12px;
  font-weight: 900;
}

.map-summary strong {
  display: block;
  margin-top: 3px;
  color: var(--charcoal);
  font-size: 16px;
  line-height: 1.25;
}

.map-summary em {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 76px;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  background: rgba(191, 63, 50, 0.1);
  color: var(--red);
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
  white-space: nowrap;
}

.map-area-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 11px;
}

.map-area-row {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-areas:
    "head"
    "sub"
    "meter";
  gap: 9px;
  align-items: stretch;
  min-width: 0;
  min-height: 0;
  padding: 14px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fff;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.map-area-all {
  grid-column: 1 / -1;
  min-height: 64px;
}

.map-area-row:not(.map-area-all) {
  grid-template-columns: 1fr;
  grid-template-areas:
    "head"
    "sub"
    "meter";
  align-content: start;
  min-height: 0;
}

.map-area-row:hover,
.map-area-row.active {
  border-color: rgba(15, 118, 110, 0.26);
  background: var(--teal-soft);
}

.map-area-head {
  grid-area: head;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-width: 0;
}

.map-area-sub {
  grid-area: sub;
  display: block;
  min-width: 0;
}

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

.map-area-row strong {
  flex: 1 1 auto;
  min-width: 0;
  color: var(--charcoal);
  font-size: 15px;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.map-area-row small {
  color: #667085;
  font-size: 12px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.map-area-row b {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  min-width: 50px;
  min-height: 26px;
  padding: 0 10px;
  border-radius: 999px;
  background: rgba(191, 63, 50, 0.1);
  color: var(--red);
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

.map-area-all b {
  justify-self: end;
}

.map-area-row i {
  display: none;
}

.map-area-meter {
  grid-area: meter;
  display: block;
  height: 8px;
  border-radius: inherit;
  background: rgba(15, 118, 110, 0.1);
  overflow: hidden;
}

.map-area-meter span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--teal), var(--gold));
}

.map-area-row.active .map-area-meter span {
  background: linear-gradient(90deg, var(--red), var(--gold));
}

.map-area-row.active b {
  background: rgba(15, 118, 110, 0.14);
  color: var(--teal);
}

.map-more {
  margin: 0;
  color: #667085;
  font-size: 11px;
  line-height: 1.45;
}

.right-rail #map .mini-map {
  gap: 12px;
  padding: 14px;
}

.right-rail #map .map-summary {
  min-height: 72px;
  padding: 12px;
}

.right-rail #map .map-area-list {
  grid-template-columns: 1fr;
  gap: 11px;
}

.right-rail #map .map-area-row {
  min-height: auto;
  padding: 14px;
  row-gap: 9px;
}

.right-rail #map .map-area-row:not(.map-area-all) {
  min-height: 0;
}

.right-rail #map .map-area-row strong {
  font-size: 15px;
}

.right-rail #map .map-area-row b {
  width: auto;
  min-width: 50px;
  min-height: 26px;
  padding: 0 10px;
}

.intel-list {
  display: grid;
  gap: 10px;
  margin: 12px 0 0;
  padding-left: 18px;
  color: #475467;
  font-size: 14px;
  line-height: 1.6;
}

.visitor-trust-panel {
  border-color: rgba(15, 118, 110, 0.16);
  background: linear-gradient(135deg, #fffdf8, #f4fbf8);
}

.visitor-trust-panel .intel-list b {
  color: var(--teal);
}

.front-ops-panel {
  display: none;
}

body.ops-mode .front-ops-panel {
  display: block;
}

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

.ops-grid div {
  min-width: 0;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}

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

.ops-grid span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.ops-grid strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 24px;
  line-height: 1;
}

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

.ops-actions .primary-button {
  grid-column: 1 / -1;
}

.ops-actions .primary-button,
.ops-actions .secondary-button,
.ops-actions .text-button {
  width: 100%;
}

.search-gap-notice[hidden] {
  display: none;
}

.search-gap-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  margin: 0 0 14px;
  padding: 14px;
  border: 1px solid rgba(191, 63, 50, 0.18);
  border-left: 4px solid var(--red);
  border-radius: 8px;
  background: linear-gradient(135deg, #fff8f5, #ffffff);
}

.search-gap-panel.artist {
  border-color: rgba(217, 119, 6, 0.2);
  border-left-color: #d97706;
  background: linear-gradient(135deg, #fffbeb, #ffffff);
}

.search-gap-panel span,
.search-gap-panel strong,
.search-gap-panel small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.search-gap-panel span {
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
}

.search-gap-panel.artist span {
  color: #92400e;
}

.search-gap-panel strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 17px;
  line-height: 1.25;
}

.search-gap-panel small {
  margin-top: 5px;
  color: #667085;
  font-size: 13px;
  line-height: 1.45;
}

.search-gap-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.empty-state {
  display: grid;
  place-items: center;
  min-height: 240px;
  margin-bottom: 16px;
  border: 1px dashed var(--line-strong);
  border-radius: 8px;
  color: var(--muted);
  text-align: center;
}

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

.empty-state strong {
  display: block;
  color: var(--charcoal);
}

.empty-suggestions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-top: 14px;
}

.empty-suggestions button {
  border-color: var(--line);
  background: #fff;
  color: #344054;
}

.empty-suggestions button:hover {
  border-color: rgba(191, 63, 50, 0.35);
  background: var(--red-soft);
  color: var(--danger);
}

.empty-alternatives {
  display: grid;
  gap: 12px;
  width: 100%;
  margin-top: 18px;
  padding: 0 16px 18px;
}

.empty-recovery {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: #fff;
  text-align: left;
}

.no-result-rescue-panel {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid #e4e7ec;
  border-left: 4px solid var(--red);
  border-radius: 8px;
  background: #ffffff;
}

.no-result-rescue-panel.query {
  border-left-color: var(--teal);
}

.no-result-rescue-panel.date-miss {
  border-left-color: var(--gold);
}

.no-result-rescue-panel.missing {
  border-left-color: var(--red);
  background: #fffafa;
}

.no-result-rescue-head small,
.no-result-rescue-head strong,
.no-result-rescue-head span,
.no-result-rescue-action strong,
.no-result-rescue-action span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.no-result-rescue-head small {
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
}

.no-result-rescue-panel.query .no-result-rescue-head small {
  color: var(--teal);
}

.no-result-rescue-panel.date-miss .no-result-rescue-head small {
  color: var(--gold);
}

.no-result-rescue-head strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.3;
}

.no-result-rescue-head span {
  margin-top: 5px;
  color: #667085;
  font-size: 13px;
  line-height: 1.5;
}

.no-result-rescue-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.no-result-rescue-action {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 5px 8px;
  min-width: 0;
  padding: 12px;
  border: 1px solid #e4e7ec;
  border-radius: 8px;
  background: #f9fafb;
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.no-result-rescue-action.primary {
  border-color: rgba(217, 54, 43, 0.28);
  background: var(--red-soft);
}

.no-result-rescue-action:hover {
  border-color: rgba(217, 54, 43, 0.36);
  background: #fff7f6;
}

.no-result-rescue-action b {
  grid-row: 1 / span 2;
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: var(--red);
  color: #ffffff;
  font-size: 12px;
}

.no-result-rescue-action.secondary b {
  background: #344054;
}

.no-result-rescue-action strong {
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.3;
}

.no-result-rescue-action span {
  grid-column: 2;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.no-result-diagnosis {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #fffaf0;
}

.no-result-diagnosis.query {
  border-left-color: var(--teal);
  background: #f0fdfa;
}

.no-result-diagnosis.date-miss {
  border-left-color: var(--gold);
  background: #fff8e6;
}

.no-result-diagnosis.missing {
  border-left-color: var(--coral);
  background: #fff1f2;
}

.no-result-diagnosis small,
.no-result-diagnosis strong,
.no-result-diagnosis span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.no-result-diagnosis small {
  color: var(--teal-strong);
  font-size: 12px;
  font-weight: 900;
}

.no-result-diagnosis.missing small {
  color: var(--danger);
}

.no-result-diagnosis strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 17px;
  line-height: 1.35;
}

.no-result-diagnosis > div:first-child > span {
  margin-top: 5px;
  color: #475467;
  font-size: 13px;
  line-height: 1.5;
}

.no-result-diagnosis .no-result-gap-guard {
  display: inline-flex;
  width: fit-content;
  max-width: 100%;
  margin-top: 8px;
  padding: 6px 9px;
  border: 1px solid rgba(191, 63, 50, 0.14);
  border-radius: 999px;
  background: rgba(191, 63, 50, 0.08);
  color: #9f2f24;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.35;
}

.no-result-status-panel {
  display: grid;
  gap: 10px;
  padding: 13px;
  border: 1px solid rgba(16, 24, 40, 0.09);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: #fff;
}

.no-result-status-panel.risk {
  border-left-color: #b4234a;
  background: #fff5f6;
}

.no-result-status-panel.watch,
.no-result-status-panel.time {
  border-left-color: #d97706;
  background: #fffaf0;
}

.no-result-status-panel.date {
  border-left-color: #b45309;
  background: #fff7ed;
}

.no-result-status-panel.easy {
  border-left-color: var(--teal);
  background: #eefaf6;
}

.no-result-status-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 12px;
  align-items: center;
  min-width: 0;
}

.no-result-status-head small,
.no-result-status-head strong,
.no-result-status-head span,
.no-result-status-grid small,
.no-result-status-grid strong,
.no-result-status-grid span {
  display: block;
  min-width: 0;
}

.no-result-status-head small {
  color: var(--teal-strong);
  font-size: 11px;
  font-weight: 900;
}

.no-result-status-panel.risk .no-result-status-head small {
  color: #b4234a;
}

.no-result-status-panel.watch .no-result-status-head small,
.no-result-status-panel.time .no-result-status-head small,
.no-result-status-panel.date .no-result-status-head small {
  color: #b54708;
}

.no-result-status-head strong {
  grid-column: 1;
  color: var(--charcoal);
  font-size: 15px;
  line-height: 1.35;
}

.no-result-status-head span {
  grid-row: 1 / span 2;
  grid-column: 2;
  align-self: center;
  padding: 7px 10px;
  border-radius: 999px;
  background: rgba(15, 118, 110, 0.1);
  color: var(--teal);
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

.no-result-status-panel.risk .no-result-status-head span {
  background: rgba(180, 35, 74, 0.1);
  color: #b4234a;
}

.no-result-status-panel.watch .no-result-status-head span,
.no-result-status-panel.time .no-result-status-head span,
.no-result-status-panel.date .no-result-status-head span {
  background: rgba(217, 119, 6, 0.13);
  color: #92400e;
}

.no-result-status-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.no-result-status-grid div {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.78);
}

.no-result-status-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.no-result-status-grid strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
}

.no-result-status-grid span {
  margin-top: 5px;
  color: #475467;
  font-size: 12px;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

.no-result-status-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.no-result-diagnosis-facts {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
}

.no-result-diagnosis-facts span {
  padding: 5px 8px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.82);
  color: #475467;
  font-size: 11px;
  font-weight: 800;
}

.no-result-split-panel {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid rgba(183, 121, 31, 0.18);
  border-radius: 8px;
  background: #fffaf0;
}

.no-result-split-panel > div:first-child small,
.no-result-split-panel > div:first-child strong {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.no-result-split-panel > div:first-child small {
  color: #b45309;
  font-size: 12px;
  font-weight: 900;
}

.no-result-split-panel > div:first-child strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 17px;
  line-height: 1.35;
}

.no-result-split-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
  gap: 8px;
}

.no-result-split-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 5px 8px;
  min-width: 0;
  padding: 11px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fff;
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.no-result-split-card:hover {
  border-color: rgba(183, 121, 31, 0.32);
  background: #fff7e5;
}

.no-result-split-card small,
.no-result-split-card strong,
.no-result-split-card span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.no-result-split-card small {
  grid-column: 1;
  color: #b45309;
  font-size: 11px;
  font-weight: 900;
}

.no-result-split-card strong {
  grid-column: 1 / -1;
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.no-result-split-card span {
  grid-column: 1 / -1;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.no-result-split-card b {
  grid-row: 1;
  grid-column: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  min-height: 24px;
  padding: 0 7px;
  border-radius: 999px;
  background: rgba(217, 119, 6, 0.12);
  color: #92400e;
  font-size: 11px;
  font-weight: 900;
}

.no-result-rewrite-panel {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid rgba(15, 118, 110, 0.16);
  border-radius: 8px;
  background: #f7fffd;
}

.no-result-rewrite-panel > div:first-child small,
.no-result-rewrite-panel > div:first-child strong {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.no-result-rewrite-panel > div:first-child small {
  color: var(--teal);
  font-size: 12px;
  font-weight: 900;
}

.no-result-rewrite-panel > div:first-child strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 17px;
  line-height: 1.35;
}

.no-result-rewrite-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.no-result-rewrite-card {
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 11px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fff;
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.no-result-rewrite-card:hover {
  border-color: rgba(15, 118, 110, 0.3);
  background: var(--teal-soft);
}

.no-result-rewrite-card.reminder {
  border-color: rgba(191, 63, 50, 0.16);
  background: #fffafa;
}

.no-result-rewrite-card.align {
  border-color: rgba(183, 121, 31, 0.18);
  background: #fffaf0;
}

.no-result-rewrite-card small,
.no-result-rewrite-card strong,
.no-result-rewrite-card span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.no-result-rewrite-card small {
  color: var(--teal);
  font-size: 11px;
  font-weight: 900;
}

.no-result-rewrite-card.reminder small {
  color: var(--red);
}

.no-result-rewrite-card.align small {
  color: #b45309;
}

.no-result-rewrite-card strong {
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.no-result-rewrite-card span {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.no-result-action-checklist {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.no-result-action-checklist div {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 11px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fbfaf7;
}

.no-result-action-checklist small,
.no-result-action-checklist strong,
.no-result-action-checklist span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.no-result-action-checklist small {
  color: var(--teal);
  font-size: 11px;
  font-weight: 900;
}

.no-result-action-checklist strong {
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.no-result-action-checklist span {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.empty-recovery > div:first-child small,
.empty-recovery > div:first-child strong {
  display: block;
}

.empty-recovery > div:first-child small {
  color: var(--teal);
  font-size: 12px;
  font-weight: 900;
}

.empty-recovery > div:first-child strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 18px;
}

.date-miss-panel {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid rgba(183, 121, 31, 0.18);
  border-radius: 8px;
  background: #fffaf0;
}

.date-miss-panel small,
.date-miss-panel strong,
.date-miss-panel span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.date-miss-panel > div:first-child small {
  color: var(--gold);
  font-size: 12px;
  font-weight: 900;
}

.date-miss-panel > div:first-child strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 17px;
}

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

.date-miss-card {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 11px;
  border: 1px solid rgba(183, 121, 31, 0.18);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.78);
  color: inherit;
  text-align: left;
}

.date-miss-card:hover {
  border-color: rgba(183, 121, 31, 0.42);
  background: #fff6df;
}

.date-miss-card strong {
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.date-miss-card span {
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.date-miss-card small {
  color: var(--gold);
  font-size: 12px;
  font-weight: 900;
}

.empty-recovery-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}

.empty-recovery-action {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 11px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fbfaf7;
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.empty-recovery-action:hover {
  border-color: rgba(28, 105, 102, 0.3);
  background: var(--teal-soft);
}

.empty-recovery-action strong,
.empty-recovery-action span,
.empty-recovery-action small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.empty-recovery-action strong {
  color: var(--charcoal);
  font-size: 14px;
}

.empty-recovery-action span {
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.empty-recovery-action small {
  color: var(--red);
  font-size: 12px;
  font-weight: 900;
}

.no-result-demand-capture {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 14px;
  border: 1px solid rgba(15, 118, 110, 0.18);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: linear-gradient(90deg, #eaf6f3, #fff 72%);
}

.no-result-demand-capture small,
.no-result-demand-capture strong,
.no-result-demand-capture span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.no-result-demand-capture small {
  color: var(--teal-strong);
  font-size: 12px;
  font-weight: 900;
}

.no-result-demand-capture strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 17px;
  line-height: 1.35;
}

.no-result-demand-capture span {
  margin-top: 6px;
  color: #667085;
  font-size: 13px;
  line-height: 1.5;
}

.no-result-demand-capture > div:last-child {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.empty-alt-title small,
.empty-alt-title strong {
  display: block;
}

.empty-alt-title small {
  color: var(--red);
  font-size: 12px;
  font-weight: 900;
}

.empty-alt-title strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 18px;
}

.empty-alt-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.empty-alt-card,
.related-card {
  position: relative;
  min-width: 0;
  min-height: 150px;
  overflow: hidden;
  display: grid;
  align-content: end;
  gap: 5px;
  padding: 13px;
  border: 1px solid var(--line);
  border-left: 4px solid var(--card-accent, var(--red));
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(16, 24, 32, 0.04), rgba(16, 24, 32, 0.72)),
    var(--event-image),
    var(--card-tint, #fff);
  background-size: cover;
  background-position: center;
  color: #fff;
  text-align: left;
  box-shadow: 0 12px 28px rgba(16, 24, 32, 0.08);
}

.empty-alt-card:hover,
.related-card:hover {
  transform: translateY(-2px);
  border-color: var(--line-strong);
}

.empty-alt-card span,
.empty-alt-card strong,
.empty-alt-card small,
.related-card span,
.related-card strong,
.related-card small {
  position: relative;
  z-index: 1;
  display: block;
  min-width: 0;
  text-shadow: 0 1px 12px rgba(0, 0, 0, 0.32);
}

.empty-alt-card span,
.related-card span {
  font-size: 12px;
  font-weight: 900;
}

.empty-alt-card strong,
.related-card strong {
  font-size: 15px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.empty-alt-card small,
.related-card small {
  color: rgba(255, 255, 255, 0.86);
  font-size: 12px;
  line-height: 1.35;
}

.detail-choice-compare {
  border: 1px solid rgba(191, 63, 50, 0.16);
  border-left: 4px solid var(--red);
  border-radius: 8px;
  padding: 14px;
  background: linear-gradient(135deg, #fff7f5, #fff 70%);
}

.choice-compare-list {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.choice-compare-row {
  display: grid;
  grid-template-columns: 92px minmax(0, 1.1fr) minmax(0, 0.9fr);
  gap: 8px 12px;
  align-items: start;
  min-width: 0;
  padding: 11px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.86);
}

.choice-compare-row.current {
  border-color: rgba(28, 105, 102, 0.24);
  background: var(--teal-soft);
}

.choice-compare-row span,
.choice-compare-row strong,
.choice-compare-row small,
.choice-compare-row p,
.choice-compare-row em,
.choice-compare-row div {
  min-width: 0;
}

.choice-compare-row span {
  grid-row: span 3;
  color: var(--red);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.35;
}

.choice-compare-row strong {
  display: block;
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.choice-compare-row > small {
  display: block;
  color: #667085;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.choice-compare-row p,
.choice-compare-row em {
  margin: 0;
  color: #344054;
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.choice-compare-row em {
  color: #8a4b08;
  font-style: normal;
  font-weight: 800;
}

.choice-compare-row div {
  display: grid;
  gap: 5px;
  justify-items: start;
}

.choice-compare-row div small {
  color: #667085;
  font-size: 11px;
  line-height: 1.35;
}

.detail-reminder-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  border-left: 4px solid var(--teal);
  background: linear-gradient(135deg, #f4fbf8 0%, #fff 70%);
}

.detail-reminder-panel.watch {
  border-left-color: var(--red);
  background: linear-gradient(135deg, #fff7f5 0%, #fff 70%);
}

.detail-reminder-panel.active {
  border-left-color: var(--teal);
  background: linear-gradient(135deg, #eefaf6 0%, #fff 72%);
}

.detail-reminder-panel > div,
.detail-reminder-panel small,
.detail-reminder-panel strong,
.detail-reminder-panel span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-reminder-panel > div {
  display: grid;
  gap: 5px;
}

.detail-reminder-panel small {
  color: var(--teal);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.detail-reminder-panel.watch small {
  color: var(--red);
}

.detail-reminder-panel strong {
  color: var(--charcoal);
  font-size: 15px;
  line-height: 1.35;
}

.detail-reminder-panel span {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.event-dialog,
.reminder-dialog {
  width: min(850px, calc(100% - 28px));
  max-height: 88vh;
  padding: 0;
  overflow: auto;
  border: 0;
  border-radius: 8px;
  background: var(--surface);
  color: var(--ink);
  box-shadow: 0 36px 100px rgba(0, 0, 0, 0.35);
}

.reminder-dialog {
  width: min(520px, calc(100% - 28px));
}

.saved-dialog {
  width: min(720px, calc(100% - 28px));
}

.saved-dialog-content {
  display: grid;
  gap: 12px;
}

.saved-dialog .saved-list {
  margin-top: 0;
}

.saved-dialog .trip-optimizer {
  border-left-width: 3px;
}

.saved-dialog-summary {
  margin-top: 0;
}

.ops-dialog {
  width: min(980px, calc(100% - 28px));
}

.event-dialog::backdrop,
.reminder-dialog::backdrop {
  background: rgba(14, 22, 32, 0.6);
  backdrop-filter: blur(4px);
}

.dialog-close {
  position: absolute;
  right: 14px;
  top: 14px;
  z-index: 3;
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(255, 255, 255, 0.35);
  background: rgba(255, 255, 255, 0.92);
  color: var(--charcoal);
}

.dialog-hero {
  position: relative;
  min-height: 260px;
  display: grid;
  align-items: end;
  padding: 28px;
  background-image: var(--event-image, url("./assets/hero-couple-events.webp"));
  background-size: cover;
  background-position: var(--thumb-x, center) var(--thumb-y, center);
  color: #fff;
}

.dialog-hero > div {
  position: relative;
  z-index: 1;
}

.dialog-hero h2 {
  max-width: 650px;
  margin: 8px 0 4px;
  font-size: 32px;
  line-height: 1.18;
}

.dialog-hero .category-pill {
  position: static;
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 5px 10px;
  background: rgba(255, 255, 255, 0.94);
}

.dialog-hero p {
  margin: 0;
  color: rgba(255, 255, 255, 0.82);
}

.hero-rights-badge {
  position: absolute;
  right: 68px;
  top: 16px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  max-width: min(320px, calc(100% - 120px));
  padding: 0 11px;
  border: 1px solid rgba(255, 255, 255, 0.58);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.92);
  color: var(--charcoal);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.25;
  box-shadow: 0 10px 24px rgba(16, 24, 40, 0.18);
  backdrop-filter: blur(12px);
}

.hero-rights-badge.warn,
.hero-rights-badge.watch {
  border-color: rgba(217, 119, 6, 0.28);
  background: rgba(255, 250, 240, 0.94);
  color: #8a4b08;
}

.hero-rights-badge.danger {
  border-color: rgba(191, 63, 50, 0.28);
  background: rgba(255, 241, 240, 0.94);
  color: var(--red);
}

.dialog-body,
.reminder-content {
  padding: 26px 28px 30px;
}

.detail-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 20px;
}

.detail-grid div {
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}

.detail-grid small,
.detail-grid strong {
  display: block;
}

.detail-grid small {
  color: var(--muted);
  font-size: 12px;
}

.detail-grid strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 14px;
}

.detail-trust-overview {
  display: grid;
  gap: 12px;
  margin: 0 0 16px;
  padding: 15px;
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #fffaf0;
}

.detail-trust-overview.ready {
  border-left-color: var(--teal);
  background: #eefaf6;
}

.detail-trust-overview.risk {
  border-left-color: var(--red);
  background: #fff7f7;
}

.detail-trust-overview-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
}

.detail-trust-overview-head div {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.detail-trust-overview-head small,
.detail-trust-overview-head strong,
.detail-trust-overview-head span,
.detail-trust-overview-grid small,
.detail-trust-overview-grid strong,
.detail-trust-overview-grid span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-trust-overview-head small {
  color: #d97706;
  font-size: 12px;
  font-weight: 900;
}

.detail-trust-overview.ready .detail-trust-overview-head small {
  color: var(--teal);
}

.detail-trust-overview.risk .detail-trust-overview-head small {
  color: var(--red);
}

.detail-trust-overview-head strong {
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.35;
}

.detail-trust-overview-head span {
  color: #475467;
  font-size: 13px;
  line-height: 1.45;
}

.detail-trust-overview-head b {
  display: grid;
  place-items: center;
  min-width: 54px;
  min-height: 42px;
  padding: 0 10px;
  border-radius: 8px;
  background: rgba(217, 119, 6, 0.12);
  color: #92400e;
  font-size: 16px;
}

.detail-trust-overview.ready .detail-trust-overview-head b {
  background: rgba(15, 118, 110, 0.12);
  color: var(--teal);
}

.detail-trust-overview.risk .detail-trust-overview-head b {
  background: rgba(191, 63, 50, 0.12);
  color: var(--red);
}

.detail-trust-overview-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.detail-trust-overview-grid div {
  min-width: 0;
  padding: 11px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.9);
}

.detail-trust-overview-grid div.good {
  border-left: 4px solid var(--teal);
}

.detail-trust-overview-grid div.warn {
  border-left: 4px solid #d97706;
}

.detail-trust-overview-grid div.risk {
  border-left: 4px solid var(--red);
}

.detail-trust-overview-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.detail-trust-overview-grid strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
}

.detail-trust-overview-grid span {
  margin-top: 5px;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.detail-trust-overview-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.detail-quick-check {
  display: grid;
  gap: 12px;
  margin: 0 0 18px;
  padding: 15px;
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #fffdf7;
}

.detail-quick-check.ready {
  border-left-color: var(--teal);
  background: #f4fbf7;
}

.detail-quick-check.risk {
  border-left-color: var(--red);
  background: #fff7f7;
}

.detail-quick-head {
  display: grid;
  gap: 5px;
}

.detail-quick-head small,
.detail-quick-head strong,
.detail-quick-head span,
.detail-quick-item small,
.detail-quick-item strong,
.detail-quick-item span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-quick-head small {
  color: var(--teal);
  font-size: 12px;
  font-weight: 900;
}

.detail-quick-check.risk .detail-quick-head small {
  color: var(--red);
}

.detail-quick-head strong {
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.35;
}

.detail-quick-head span {
  color: #475467;
  font-size: 13px;
  line-height: 1.45;
}

.detail-quick-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.detail-quick-item {
  min-width: 0;
  padding: 11px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.9);
}

.detail-quick-item small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.detail-quick-item strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
}

.detail-quick-item span {
  margin-top: 5px;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.detail-quick-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.detail-go-switch {
  display: grid;
  gap: 12px;
  margin: 0 0 18px;
  padding: 14px;
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: #fff;
}

.detail-go-switch.hot {
  border-left-color: var(--red);
  background: #fffafa;
}

.detail-go-switch.fireworks {
  border-left-color: #d97706;
  background: #fffdf7;
}

.detail-go-switch-head {
  display: grid;
  gap: 5px;
}

.detail-go-switch-head small,
.detail-go-switch-head strong,
.detail-go-switch-grid small,
.detail-go-switch-grid strong,
.detail-go-switch-grid span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-go-switch-head small {
  color: var(--teal);
  font-size: 12px;
  font-weight: 900;
}

.detail-go-switch.hot .detail-go-switch-head small {
  color: var(--red);
}

.detail-go-switch.fireworks .detail-go-switch-head small {
  color: #b45309;
}

.detail-go-switch-head strong {
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.35;
}

.detail-go-switch-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
}

.detail-go-switch-grid > div {
  display: grid;
  grid-template-rows: auto auto minmax(70px, 1fr) auto;
  gap: 7px;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fff;
}

.detail-go-switch-grid > div.wait {
  border-color: rgba(191, 63, 50, 0.2);
  background: #fffafa;
}

.detail-go-switch-grid > div.switch {
  border-color: rgba(15, 118, 110, 0.16);
  background: #f8fffd;
}

.detail-go-switch-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.detail-go-switch-grid strong {
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.detail-go-switch-grid span {
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.detail-go-switch-grid .compact-button {
  align-self: end;
  min-height: 34px;
  min-width: 0;
  padding: 6px 10px;
  white-space: normal;
  line-height: 1.2;
  text-align: center;
  overflow-wrap: anywhere;
}

.detail-decision-summary {
  display: grid;
  gap: 12px;
  margin: 0 0 18px;
  padding: 16px;
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: #fff;
}

.detail-decision-summary.hot {
  border-left-color: var(--red);
  background: #fffafa;
}

.detail-decision-summary.review {
  border-left-color: #d97706;
  background: #fffdf7;
}

.detail-action-router {
  display: grid;
  gap: 12px;
  margin: 0 0 18px;
  padding: 14px;
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: #fff;
}

.detail-action-router.hot {
  border-left-color: var(--red);
  background: #fffafa;
}

.detail-action-router.easy,
.detail-action-router.direct {
  border-left-color: var(--teal);
}

.detail-action-router.watch,
.detail-action-router.standard {
  border-left-color: #d97706;
}

.detail-action-router-head {
  display: grid;
  gap: 5px;
}

.detail-action-router-head small,
.detail-action-router-head strong,
.detail-action-router-head span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-action-router-head small {
  color: var(--teal);
  font-size: 12px;
  font-weight: 900;
}

.detail-action-router.hot .detail-action-router-head small {
  color: var(--red);
}

.detail-action-router.watch .detail-action-router-head small,
.detail-action-router.standard .detail-action-router-head small {
  color: #b45309;
}

.detail-action-router-head strong {
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.35;
}

.detail-action-router-head span {
  color: #475467;
  font-size: 13px;
  line-height: 1.5;
}

.detail-action-router-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
}

.detail-action-route {
  display: grid;
  grid-template-rows: auto auto auto minmax(58px, 1fr) auto;
  gap: 6px;
  min-width: 0;
  padding: 11px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fff;
}

.detail-action-route > span {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: var(--charcoal);
  color: #fff;
  font-size: 11px;
  font-weight: 900;
}

.detail-action-route.ticket > span {
  background: var(--teal);
}

.detail-action-route.consult > span {
  background: var(--red);
}

.detail-action-route.save > span {
  background: #b45309;
}

.detail-action-route small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.detail-action-route strong {
  min-width: 0;
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.detail-action-route p {
  margin: 0;
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.detail-action-route div {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-self: end;
}

.detail-action-route .compact-button {
  min-height: 34px;
  min-width: 0;
  padding: 6px 10px;
  white-space: normal;
  line-height: 1.2;
  text-align: center;
  overflow-wrap: anywhere;
}

.detail-ticket-trust-bridge {
  display: grid;
  gap: 12px;
  margin: 0 0 18px;
  padding: 14px;
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #fffaf0;
}

.detail-ticket-trust-bridge.ready,
.detail-ticket-trust-bridge.safe {
  border-left-color: var(--teal);
  background: #f0fdfa;
}

.detail-ticket-trust-bridge.notice,
.detail-ticket-trust-bridge.review {
  border-left-color: #2563eb;
  background: #eff6ff;
}

.detail-ticket-trust-bridge.risk,
.detail-ticket-trust-bridge.danger {
  border-left-color: var(--coral);
  background: #fff1f2;
}

.detail-ticket-trust-head small,
.detail-ticket-trust-head strong,
.detail-ticket-trust-head span,
.detail-ticket-trust-grid small,
.detail-ticket-trust-grid strong,
.detail-ticket-trust-grid span,
.detail-ticket-trust-bridge p {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-ticket-trust-head small {
  color: #b45309;
  font-size: 12px;
  font-weight: 900;
}

.detail-ticket-trust-bridge.ready .detail-ticket-trust-head small,
.detail-ticket-trust-bridge.safe .detail-ticket-trust-head small {
  color: var(--teal);
}

.detail-ticket-trust-bridge.risk .detail-ticket-trust-head small,
.detail-ticket-trust-bridge.danger .detail-ticket-trust-head small {
  color: var(--red);
}

.detail-ticket-trust-head strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.35;
}

.detail-ticket-trust-head span,
.detail-ticket-trust-bridge p {
  margin-top: 6px;
  color: #475467;
  font-size: 13px;
  line-height: 1.5;
}

.detail-ticket-trust-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.detail-ticket-trust-grid div {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.82);
}

.detail-ticket-trust-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.detail-ticket-trust-grid strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 15px;
  line-height: 1.3;
}

.detail-ticket-trust-grid span {
  margin-top: 5px;
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.detail-purchase-receipt {
  display: grid;
  gap: 12px;
  margin: 0 0 18px;
  padding: 14px;
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: linear-gradient(135deg, #fffaf0, #fff 72%);
}

.detail-purchase-receipt.ready,
.detail-purchase-receipt.easy {
  border-left-color: var(--teal);
  background: linear-gradient(135deg, #f0fdfa, #fff 72%);
}

.detail-purchase-receipt.risk,
.detail-purchase-receipt.danger {
  border-left-color: var(--red);
  background: linear-gradient(135deg, #fff1f2, #fff 72%);
}

.detail-purchase-receipt-head {
  display: grid;
  gap: 5px;
}

.detail-purchase-receipt-head small,
.detail-purchase-receipt-head strong,
.detail-purchase-receipt-head span,
.detail-purchase-receipt-grid small,
.detail-purchase-receipt-grid strong,
.detail-purchase-receipt-grid span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-purchase-receipt-head small {
  color: #b45309;
  font-size: 12px;
  font-weight: 900;
}

.detail-purchase-receipt.ready .detail-purchase-receipt-head small,
.detail-purchase-receipt.easy .detail-purchase-receipt-head small {
  color: var(--teal);
}

.detail-purchase-receipt.risk .detail-purchase-receipt-head small,
.detail-purchase-receipt.danger .detail-purchase-receipt-head small {
  color: var(--red);
}

.detail-purchase-receipt-head strong {
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.35;
}

.detail-purchase-receipt-head span {
  color: #475467;
  font-size: 13px;
  line-height: 1.5;
}

.detail-purchase-receipt-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.detail-purchase-receipt-grid div {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.84);
}

.detail-purchase-receipt-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.detail-purchase-receipt-grid strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.detail-purchase-receipt-grid span {
  margin-top: 5px;
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.detail-purchase-evidence-chain {
  display: grid;
  grid-template-columns: minmax(170px, 0.9fr) repeat(4, minmax(0, 1fr));
  gap: 8px;
  align-items: stretch;
}

.detail-purchase-evidence-title,
.detail-purchase-evidence-chain > div:not(.detail-purchase-evidence-title) {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.78);
}

.detail-purchase-evidence-title {
  border-left: 4px solid var(--teal);
  background: rgba(240, 253, 250, 0.76);
}

.detail-purchase-evidence-title small,
.detail-purchase-evidence-title strong,
.detail-purchase-evidence-chain > div:not(.detail-purchase-evidence-title) small,
.detail-purchase-evidence-chain > div:not(.detail-purchase-evidence-title) strong,
.detail-purchase-evidence-chain > div:not(.detail-purchase-evidence-title) span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-purchase-evidence-title small,
.detail-purchase-evidence-chain > div:not(.detail-purchase-evidence-title) small {
  color: var(--teal);
  font-size: 11px;
  font-weight: 900;
}

.detail-purchase-evidence-title strong,
.detail-purchase-evidence-chain > div:not(.detail-purchase-evidence-title) strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
}

.detail-purchase-evidence-chain > div:not(.detail-purchase-evidence-title) span {
  margin-top: 5px;
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.detail-purchase-receipt-redline {
  margin: 0;
  padding: 10px 11px;
  border: 1px dashed rgba(191, 63, 50, 0.28);
  border-radius: 8px;
  background: rgba(255, 241, 240, 0.72);
  color: #8a231a;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

.detail-purchase-receipt-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.detail-scenario-guide {
  display: grid;
  gap: 12px;
  margin: 0 0 18px;
  padding: 14px;
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: #fff;
}

.detail-scenario-guide.fireworks {
  border-left-color: #d97706;
  background: linear-gradient(135deg, #fff7ed, #fff 72%);
}

.detail-scenario-guide.date {
  border-left-color: #b4234a;
  background: linear-gradient(135deg, #fff1f3, #fff 72%);
}

.detail-scenario-guide.easy {
  border-left-color: var(--teal);
  background: linear-gradient(135deg, #eefaf6, #fff 72%);
}

.detail-scenario-guide.risk {
  border-left-color: var(--red);
  background: linear-gradient(135deg, #fff4f2, #fff 72%);
}

.detail-scenario-head {
  display: grid;
  gap: 5px;
}

.detail-scenario-head small,
.detail-scenario-head strong,
.detail-scenario-head span,
.detail-scenario-guide p {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-scenario-head small {
  color: var(--teal);
  font-size: 12px;
  font-weight: 900;
}

.detail-scenario-guide.fireworks .detail-scenario-head small {
  color: #b45309;
}

.detail-scenario-guide.date .detail-scenario-head small {
  color: #b4234a;
}

.detail-scenario-guide.risk .detail-scenario-head small {
  color: var(--red);
}

.detail-scenario-head strong {
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.35;
}

.detail-scenario-head span,
.detail-scenario-guide p {
  margin: 0;
  color: #475467;
  font-size: 13px;
  line-height: 1.5;
}

.detail-scenario-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
}

.detail-scenario-grid div {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.82);
}

.detail-scenario-grid small,
.detail-scenario-grid span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-scenario-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.detail-scenario-grid span {
  margin-top: 5px;
  color: #344054;
  font-size: 12px;
  line-height: 1.45;
}

.detail-cost-reality {
  display: grid;
  gap: 12px;
  margin: 0 0 18px;
  padding: 14px;
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: linear-gradient(135deg, #fffaf0, #fff 72%);
}

.detail-cost-reality.easy {
  border-left-color: var(--teal);
  background: linear-gradient(135deg, #eefaf6, #fff 72%);
}

.detail-cost-reality.risk {
  border-left-color: var(--red);
  background: linear-gradient(135deg, #fff4f2, #fff 72%);
}

.detail-cost-head {
  display: grid;
  gap: 5px;
}

.detail-cost-head small,
.detail-cost-head strong,
.detail-cost-head span,
.detail-cost-grid small,
.detail-cost-grid strong,
.detail-cost-grid span,
.detail-cost-hidden small,
.detail-cost-hidden span,
.detail-cost-alternatives small,
.detail-cost-alt-grid strong,
.detail-cost-alt-grid span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-cost-head small {
  color: #b45309;
  font-size: 12px;
  font-weight: 900;
}

.detail-cost-reality.easy .detail-cost-head small {
  color: var(--teal);
}

.detail-cost-reality.risk .detail-cost-head small {
  color: var(--red);
}

.detail-cost-head strong {
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.35;
}

.detail-cost-head span {
  color: #475467;
  font-size: 13px;
  line-height: 1.5;
}

.detail-cost-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.detail-cost-grid div {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.86);
}

.detail-cost-grid small,
.detail-cost-hidden small,
.detail-cost-alternatives small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.detail-cost-grid strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.3;
}

.detail-cost-grid span {
  margin-top: 5px;
  color: #475467;
  font-size: 12px;
  line-height: 1.42;
}

.detail-cost-hidden {
  display: grid;
  gap: 7px;
}

.detail-cost-hidden div {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.detail-cost-hidden span {
  padding: 6px 8px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.86);
  color: #475467;
  font-size: 11px;
  font-weight: 900;
}

.detail-cost-alternatives {
  display: grid;
  gap: 7px;
}

.detail-cost-alt-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.detail-cost-alt-grid button {
  min-width: 0;
  min-height: 66px;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fff;
  text-align: left;
}

.detail-cost-alt-grid button:hover {
  border-color: rgba(191, 63, 50, 0.28);
  background: var(--red-soft);
}

.detail-cost-alt-grid strong {
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
}

.detail-cost-alt-grid span {
  margin-top: 5px;
  color: #667085;
  font-size: 11px;
  line-height: 1.35;
}

.detail-decision-head small,
.detail-decision-head strong,
.detail-decision-head span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-decision-head small {
  color: var(--red);
  font-size: 12px;
  font-weight: 900;
}

.detail-decision-head strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.35;
}

.detail-decision-head span {
  margin-top: 6px;
  color: #475467;
  font-size: 13px;
  line-height: 1.55;
}

.detail-decision-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.detail-decision-grid div {
  min-width: 0;
  padding: 11px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fbfaf7;
}

.detail-decision-grid small,
.detail-decision-grid strong,
.detail-decision-grid span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-decision-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.detail-decision-grid strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.4;
}

.detail-decision-grid span {
  margin-top: 5px;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.detail-decision-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.detail-readiness {
  display: grid;
  gap: 12px;
  margin: -4px 0 18px;
  padding: 14px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #fffaf0;
}

.detail-readiness.ready {
  border-left-color: var(--teal);
  background: #f0fbf7;
}

.detail-readiness.risk {
  border-left-color: var(--red);
  background: #fff5f5;
}

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

.detail-readiness-head small,
.detail-readiness-head strong,
.detail-readiness-head span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-readiness-head small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.detail-readiness-head strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 16px;
  line-height: 1.35;
}

.detail-readiness-head span {
  margin-top: 5px;
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.detail-readiness-head b {
  flex: 0 0 auto;
  padding: 6px 9px;
  border-radius: 999px;
  background: #fff;
  color: var(--charcoal);
  font-size: 12px;
  box-shadow: inset 0 0 0 1px rgba(16, 24, 40, 0.1);
}

.detail-readiness-meta,
.detail-readiness-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.detail-readiness-meta span {
  min-width: 0;
  padding: 6px 8px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.86);
  color: #475467;
  font-size: 11px;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.detail-readiness-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.detail-readiness-item {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.86);
}

.detail-readiness-item.todo {
  box-shadow: inset 3px 0 0 #d97706;
}

.detail-readiness-item.done {
  box-shadow: inset 3px 0 0 var(--teal);
}

.detail-readiness-item small,
.detail-readiness-item strong,
.detail-readiness-item span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-readiness-item small {
  color: #667085;
  font-size: 10px;
  font-weight: 900;
}

.detail-readiness-item strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 12px;
}

.detail-readiness-item span {
  margin-top: 4px;
  color: #475467;
  font-size: 12px;
  line-height: 1.38;
}

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

.insight-grid div {
  min-width: 0;
  padding: 14px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: #fff;
}

.insight-grid small,
.insight-grid strong {
  display: block;
}

.insight-grid small {
  color: var(--red);
  font-size: 12px;
  font-weight: 900;
}

.insight-grid strong {
  margin-top: 6px;
  color: #344054;
  font-size: 14px;
  line-height: 1.55;
  overflow-wrap: anywhere;
}

.dialog-section {
  margin: 18px 0;
}

.dialog-section h3 {
  margin: 0 0 8px;
  color: var(--charcoal);
}

.dialog-section p {
  margin: 0 0 8px;
  color: #475467;
  line-height: 1.75;
}

.user-ticket-section {
  margin-top: 16px;
}

.detail-ticket-flow {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 12px;
  min-width: 0;
}

.detail-ticket-flow div {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 4px 8px;
  align-content: start;
  min-width: 0;
  min-height: 116px;
  padding: 11px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-top: 4px solid #d97706;
  border-radius: 8px;
  background: #fff;
}

.detail-ticket-flow.ready div,
.detail-ticket-flow.easy div {
  border-top-color: var(--teal);
}

.detail-ticket-flow.risk div,
.detail-ticket-flow.danger div {
  border-top-color: var(--coral);
}

.detail-ticket-flow span {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: #fff7ed;
  color: #9a3412;
  font-size: 12px;
  font-weight: 900;
}

.detail-ticket-flow.ready span,
.detail-ticket-flow.easy span {
  background: #dcfce7;
  color: #166534;
}

.detail-ticket-flow.risk span,
.detail-ticket-flow.danger span {
  background: #fee2e2;
  color: #991b1b;
}

.detail-ticket-flow strong,
.detail-ticket-flow b,
.detail-ticket-flow small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-ticket-flow strong {
  align-self: center;
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.detail-ticket-flow b {
  grid-column: 1 / -1;
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.3;
}

.detail-ticket-flow small {
  grid-column: 1 / -1;
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.detail-ticket-state {
  display: grid;
  gap: 12px;
  margin-bottom: 12px;
  padding: 14px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #fffaf0;
}

.detail-ticket-state.ready,
.detail-ticket-state.safe {
  border-left-color: var(--teal);
  background: #f0fdfa;
}

.detail-ticket-state.checked,
.detail-ticket-state.notice {
  border-left-color: #2563eb;
  background: #eff6ff;
}

.detail-ticket-state.candidate,
.detail-ticket-state.watch {
  border-left-color: #d97706;
  background: #fffbeb;
}

.detail-ticket-state.easy {
  border-left-color: #16a34a;
  background: #f0fdf4;
}

.detail-ticket-state.risk,
.detail-ticket-state.danger {
  border-left-color: var(--coral);
  background: #fff1f2;
}

.detail-ticket-state-head small,
.detail-ticket-state-head strong,
.detail-ticket-state-head span,
.detail-ticket-state-grid small,
.detail-ticket-state-grid strong,
.detail-ticket-state-grid span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-ticket-state-head small {
  color: var(--red);
  font-size: 12px;
  font-weight: 900;
}

.detail-ticket-state.ready .detail-ticket-state-head small,
.detail-ticket-state.safe .detail-ticket-state-head small,
.detail-ticket-state.notice .detail-ticket-state-head small,
.detail-ticket-state.easy .detail-ticket-state-head small {
  color: var(--teal);
}

.detail-ticket-state-head strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.35;
}

.detail-ticket-state-head span {
  margin-top: 6px;
  color: #475467;
  font-size: 13px;
  line-height: 1.5;
}

.detail-ticket-state-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.detail-ticket-state-grid div {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.82);
}

.detail-ticket-state-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.detail-ticket-state-grid strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 15px;
  line-height: 1.3;
}

.detail-ticket-state-grid span {
  margin-top: 5px;
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.pre-purchase-checklist {
  display: grid;
  gap: 12px;
  margin-bottom: 12px;
  padding: 14px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #fffaf0;
}

.pre-purchase-checklist.easy {
  border-left-color: #16a34a;
  background: #f0fdf4;
}

.pre-purchase-checklist.risk,
.pre-purchase-checklist.danger {
  border-left-color: var(--coral);
  background: #fff1f2;
}

.pre-purchase-checklist.ready {
  border-left-color: var(--teal);
  background: #f0fdfa;
}

.detail-ticket-sample-guard {
  display: grid;
  gap: 12px;
  margin-bottom: 12px;
  padding: 14px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid #2563eb;
  border-radius: 8px;
  background: #eff6ff;
}

.detail-ticket-sample-guard.easy,
.detail-ticket-sample-guard.ready {
  border-left-color: var(--teal);
  background: #f0fdfa;
}

.detail-ticket-sample-guard.risk,
.detail-ticket-sample-guard.danger {
  border-left-color: var(--coral);
  background: #fff1f2;
}

.detail-ticket-sample-head small,
.detail-ticket-sample-head strong,
.detail-ticket-sample-head span,
.detail-ticket-sample-grid small,
.detail-ticket-sample-grid strong,
.detail-ticket-sample-grid span,
.detail-ticket-sample-guard p {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-ticket-sample-head small {
  color: #1d4ed8;
  font-size: 12px;
  font-weight: 900;
}

.detail-ticket-sample-guard.easy .detail-ticket-sample-head small,
.detail-ticket-sample-guard.ready .detail-ticket-sample-head small {
  color: var(--teal);
}

.detail-ticket-sample-guard.risk .detail-ticket-sample-head small,
.detail-ticket-sample-guard.danger .detail-ticket-sample-head small {
  color: var(--danger);
}

.detail-ticket-sample-head strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.35;
}

.detail-ticket-sample-head span {
  margin-top: 6px;
  color: #475467;
  font-size: 13px;
  line-height: 1.5;
}

.detail-ticket-sample-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.detail-ticket-sample-grid div {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.82);
}

.detail-ticket-sample-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.detail-ticket-sample-grid strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 15px;
  line-height: 1.3;
}

.detail-ticket-sample-grid span {
  margin-top: 5px;
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.detail-ticket-sample-guard p {
  margin: 0;
  padding: 9px 10px;
  border-radius: 8px;
  background: rgba(16, 24, 40, 0.06);
  color: #344054;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.5;
}

.pre-purchase-head small,
.pre-purchase-head strong,
.pre-purchase-head span,
.pre-purchase-grid small,
.pre-purchase-grid strong,
.pre-purchase-grid span,
.pre-purchase-checklist p {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.pre-purchase-head small {
  color: #b45309;
  font-size: 12px;
  font-weight: 900;
}

.pre-purchase-checklist.easy .pre-purchase-head small,
.pre-purchase-checklist.ready .pre-purchase-head small {
  color: var(--teal);
}

.pre-purchase-checklist.risk .pre-purchase-head small,
.pre-purchase-checklist.danger .pre-purchase-head small {
  color: var(--red);
}

.pre-purchase-head strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 17px;
  line-height: 1.35;
}

.pre-purchase-head span {
  margin-top: 6px;
  color: #475467;
  font-size: 13px;
  line-height: 1.5;
}

.pre-purchase-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}

.pre-purchase-grid div {
  min-width: 0;
  min-height: 118px;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.84);
}

.pre-purchase-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.pre-purchase-grid strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.3;
}

.pre-purchase-grid span {
  margin-top: 5px;
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.pre-purchase-checklist p {
  margin: 0;
  color: #344054;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.45;
}

.detail-payment-guard {
  display: grid;
  gap: 11px;
  margin: 0 0 18px;
  padding: 14px;
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #fffaf0;
}

.detail-payment-guard.risk,
.detail-payment-guard.danger {
  border-left-color: var(--coral);
  background: #fff1f2;
}

.detail-payment-guard.easy,
.detail-payment-guard.ready {
  border-left-color: var(--teal);
  background: #f0fdfa;
}

.detail-payment-guard-head {
  display: grid;
  gap: 5px;
}

.detail-payment-guard-head small,
.detail-payment-guard-head strong,
.detail-payment-guard-head span,
.detail-payment-guard-grid small,
.detail-payment-guard-grid strong,
.detail-payment-guard-grid span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-payment-guard-head small {
  color: #b45309;
  font-size: 12px;
  font-weight: 900;
}

.detail-payment-guard.risk .detail-payment-guard-head small,
.detail-payment-guard.danger .detail-payment-guard-head small {
  color: var(--red);
}

.detail-payment-guard.easy .detail-payment-guard-head small,
.detail-payment-guard.ready .detail-payment-guard-head small {
  color: var(--teal);
}

.detail-payment-guard-head strong {
  color: var(--charcoal);
  font-size: 17px;
  line-height: 1.35;
}

.detail-payment-guard-head span {
  color: #475467;
  font-size: 13px;
  line-height: 1.45;
}

.detail-payment-guard-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.detail-payment-guard-grid div {
  min-width: 0;
  min-height: 106px;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.86);
}

.detail-payment-guard-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.detail-payment-guard-grid strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.3;
}

.detail-payment-guard-grid span {
  margin-top: 5px;
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.visitor-detail-summary {
  display: grid;
  gap: 12px;
  border-left: 4px solid var(--red);
  background: linear-gradient(135deg, #fffdf8, #fff7ef);
}

.visitor-detail-head small,
.visitor-detail-head strong,
.visitor-detail-head span,
.visitor-detail-grid small,
.visitor-detail-grid strong,
.visitor-detail-grid span,
.visitor-detail-summary p {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.visitor-detail-head small {
  color: var(--red);
  font-size: 12px;
  font-weight: 900;
}

.visitor-detail-head strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 20px;
  line-height: 1.3;
}

.visitor-detail-head span,
.visitor-detail-summary p {
  margin-top: 6px;
  color: #475467;
  font-size: 13px;
  line-height: 1.55;
}

.visitor-detail-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.visitor-detail-grid div {
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.78);
}

.visitor-detail-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.visitor-detail-grid strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.visitor-detail-grid span {
  margin-top: 5px;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.detail-ops-disclosure {
  margin: 18px 0;
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-radius: 8px;
  background: #fbfaf7;
}

.detail-ops-disclosure summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 52px;
  padding: 0 14px;
  color: var(--charcoal);
  cursor: pointer;
  list-style: none;
}

.detail-ops-disclosure summary::-webkit-details-marker {
  display: none;
}

.detail-ops-disclosure summary::after {
  content: "+";
  display: grid;
  flex: 0 0 auto;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 999px;
  background: var(--paper);
  color: var(--red);
  font-weight: 900;
}

.detail-ops-disclosure[open] summary::after {
  content: "-";
}

.detail-ops-disclosure summary span,
.detail-ops-disclosure summary small {
  display: block;
  min-width: 0;
}

.detail-ops-disclosure summary span {
  font-size: 15px;
  font-weight: 900;
}

.detail-ops-disclosure summary small {
  color: #667085;
  font-size: 12px;
  font-weight: 800;
}

.detail-ops-content {
  display: grid;
  gap: 12px;
  padding: 0 14px 14px;
}

.detail-ops-content > .dialog-section,
.detail-ops-content > .decision-guide,
.detail-ops-content > .readiness-panel,
.detail-ops-content > .source-trust,
.detail-ops-content > .source-dossier-panel,
.detail-ops-content > .evidence-pack,
.detail-ops-content > .ticket-decision,
.detail-ops-content > .ticket-route-grid,
.detail-ops-content > .commercial-route,
.detail-ops-content > .ticket-launch-plan {
  margin: 0;
}

.decision-guide {
  display: grid;
  gap: 12px;
  margin: 18px 0;
  padding: 14px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #fff;
}

.decision-guide.easy {
  border-left-color: var(--teal);
}

.decision-guide.hot {
  border-left-color: var(--red);
}

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

.decision-head small {
  color: var(--teal);
  font-size: 12px;
  font-weight: 900;
}

.decision-head strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 19px;
  line-height: 1.35;
}

.decision-head span {
  margin-top: 6px;
  color: #475467;
  line-height: 1.6;
}

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

.decision-columns > div {
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fbfaf7;
}

.decision-columns small {
  display: block;
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
}

.decision-columns ul {
  display: grid;
  gap: 6px;
  margin: 8px 0 0;
  padding-left: 18px;
}

.decision-columns li,
.decision-columns p {
  margin: 0;
  color: #344054;
  font-size: 13px;
  line-height: 1.55;
}

.decision-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.audience-fit-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}

.audience-fit-grid div {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fff;
}

.audience-fit-grid div.good {
  background: var(--teal-soft);
}

.audience-fit-grid div.warn {
  background: var(--red-soft);
}

.audience-fit-grid small,
.audience-fit-grid strong,
.audience-fit-grid span {
  display: block;
  min-width: 0;
}

.audience-fit-grid small {
  color: var(--teal);
  font-size: 11px;
  font-weight: 900;
}

.audience-fit-grid strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.audience-fit-grid span {
  margin-top: 5px;
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.feedback-strip {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  padding: 10px;
  border: 1px dashed rgba(16, 24, 40, 0.16);
  border-radius: 8px;
  background: #fbfaf7;
}

.feedback-strip > small {
  color: var(--teal);
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

.feedback-strip > div {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.feedback-strip button {
  min-height: 34px;
  padding: 0 11px;
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-radius: 999px;
  background: #fff;
  color: #344054;
  font-size: 13px;
  font-weight: 850;
  cursor: pointer;
}

.feedback-strip button:hover,
.feedback-strip button.active {
  border-color: rgba(28, 105, 102, 0.35);
  background: var(--teal-soft);
  color: var(--teal-strong);
}

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

.action-brief {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fbfaf7;
}

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

.action-brief-head small,
.action-brief-head strong {
  display: block;
}

.action-brief-head small {
  color: var(--red);
  font-size: 12px;
  font-weight: 900;
}

.action-brief-head strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 18px;
}

.compact-button {
  width: auto;
  min-height: 38px;
  padding: 9px 12px;
  white-space: nowrap;
}

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

.brief-grid div {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fff;
}

.brief-grid small,
.brief-grid span {
  display: block;
}

.brief-grid small {
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
}

.brief-grid span {
  margin-top: 4px;
  color: #344054;
  font-size: 13px;
  line-height: 1.55;
}

.consult-brief {
  max-height: 170px;
  margin: 0;
  padding: 12px;
  overflow: auto;
  border: 1px dashed rgba(16, 24, 40, 0.16);
  border-radius: 8px;
  background: #fff;
  color: #344054;
  font-family: inherit;
  font-size: 13px;
  line-height: 1.65;
  white-space: pre-wrap;
}

.date-plan {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fff;
}

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

.date-plan-head small {
  color: var(--teal);
  font-size: 12px;
  font-weight: 900;
}

.date-plan-head strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 18px;
}

.date-plan-head span {
  margin-top: 6px;
  color: #475467;
  line-height: 1.6;
}

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

.date-plan-grid div {
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fbfaf7;
}

.date-plan-grid small,
.date-plan-grid span {
  display: block;
}

.date-plan-grid small {
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
}

.date-plan-grid span {
  margin-top: 5px;
  color: #344054;
  font-size: 13px;
  line-height: 1.55;
  overflow-wrap: anywhere;
}

.image-safety-grid {
  display: grid;
  grid-template-columns: 0.8fr 0.9fr 1.5fr;
  gap: 8px;
  margin-bottom: 10px;
}

.image-safety-grid div {
  min-width: 0;
  padding: 11px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: #fff;
}

.image-safety-grid.warn div,
.image-safety-grid.watch div {
  border-left-color: #d97706;
  background: #fffaf0;
}

.image-safety-grid.danger div {
  border-left-color: var(--red);
  background: var(--red-soft);
}

.image-safety-grid small,
.image-safety-grid strong,
.image-safety-grid span {
  display: block;
  min-width: 0;
}

.image-safety-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.image-safety-grid strong,
.image-safety-grid span {
  margin-top: 5px;
  color: #344054;
  font-size: 13px;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

.image-policy-extra {
  padding: 11px 12px;
  border: 1px solid rgba(217, 119, 6, 0.24);
  border-radius: 8px;
  background: #fffaf0;
  color: #5f3b07 !important;
  font-size: 13px;
  font-weight: 750;
}

.detail-hero-rights-notice {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 10px;
  margin: -4px 0 16px;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #fffaf0;
}

.detail-hero-rights-notice.safe {
  border-left-color: var(--teal);
  background: #eefaf6;
}

.detail-hero-rights-notice.danger {
  border-left-color: var(--red);
  background: var(--red-soft);
}

.detail-hero-rights-notice div {
  min-width: 0;
}

.detail-hero-rights-notice small,
.detail-hero-rights-notice strong,
.detail-hero-rights-notice span {
  display: block;
  min-width: 0;
}

.detail-hero-rights-notice small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.detail-hero-rights-notice strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.detail-hero-rights-notice span {
  margin-top: 5px;
  color: #475467;
  font-size: 12px;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

.detail-hero-rights-notice p {
  grid-column: 1 / -1;
  margin: 0;
  padding-top: 9px;
  border-top: 1px solid rgba(16, 24, 40, 0.08);
  color: #7a2e22;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.5;
}

.detail-hero-rights-notice.safe p {
  color: #0f766e;
}

.detail-image-evidence-receipt {
  display: grid;
  gap: 10px;
  margin: -6px 0 16px;
  padding: 13px;
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #fffaf0;
}

.detail-image-evidence-receipt.safe {
  border-left-color: var(--teal);
  background: #eefaf6;
}

.detail-image-evidence-receipt.danger {
  border-left-color: var(--red);
  background: var(--red-soft);
}

.detail-image-evidence-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  min-width: 0;
}

.detail-image-evidence-head small,
.detail-image-evidence-head strong,
.detail-image-evidence-head span,
.detail-image-evidence-grid small,
.detail-image-evidence-grid strong,
.detail-image-evidence-grid span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-image-evidence-head small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.detail-image-evidence-head strong {
  margin-top: 3px;
  color: var(--charcoal);
  font-size: 15px;
  line-height: 1.35;
}

.detail-image-evidence-head > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 0 10px;
  border-radius: 999px;
  background: rgba(217, 119, 6, 0.13);
  color: #8a4b08;
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

.detail-image-evidence-receipt.safe .detail-image-evidence-head > span {
  background: rgba(15, 118, 110, 0.13);
  color: var(--teal);
}

.detail-image-evidence-receipt.danger .detail-image-evidence-head > span {
  background: rgba(191, 63, 50, 0.12);
  color: var(--red);
}

.detail-image-evidence-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.detail-image-evidence-grid div {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.76);
}

.detail-image-evidence-grid div:first-child {
  grid-column: 1 / -1;
}

.detail-image-evidence-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.detail-image-evidence-grid strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
}

.detail-image-evidence-grid span {
  margin-top: 5px;
  color: #475467;
  font-size: 12px;
  line-height: 1.5;
}

.image-publish-gate {
  display: grid;
  gap: 10px;
  margin-top: 12px;
  padding: 13px;
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #fffaf0;
}

.dialog-body > .image-publish-gate {
  margin: 0 0 18px;
}

.image-publish-gate.safe {
  border-left-color: var(--teal);
  background: #eefaf6;
}

.image-publish-gate.danger {
  border-left-color: var(--red);
  background: var(--red-soft);
}

.image-publish-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 12px;
  align-items: center;
  min-width: 0;
}

.image-publish-head small,
.image-publish-head strong,
.image-publish-head span,
.image-publish-grid small,
.image-publish-grid strong,
.image-publish-grid span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.image-publish-head small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.image-publish-head strong {
  color: var(--charcoal);
  font-size: 15px;
  line-height: 1.35;
}

.image-publish-head span {
  grid-row: 1 / span 2;
  grid-column: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 0 10px;
  border-radius: 999px;
  background: rgba(217, 119, 6, 0.13);
  color: #8a4b08;
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

.image-publish-gate.safe .image-publish-head span {
  background: rgba(15, 118, 110, 0.13);
  color: var(--teal);
}

.image-publish-gate.danger .image-publish-head span {
  background: rgba(191, 63, 50, 0.12);
  color: var(--red);
}

.image-publish-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.image-publish-grid div {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.78);
}

.image-publish-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.image-publish-grid strong,
.image-publish-grid span {
  margin-top: 5px;
  color: #344054;
  font-size: 12px;
  line-height: 1.5;
}

.image-publish-grid strong {
  color: var(--charcoal);
  font-size: 13px;
}

.image-rights-checklist {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 12px;
}

.image-rights-checklist div {
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: #fff;
}

.image-rights-checklist div.watch {
  border-left-color: #d97706;
  background: #fffaf0;
}

.image-rights-checklist div.danger {
  border-left-color: var(--red);
  background: var(--red-soft);
}

.image-rights-checklist small,
.image-rights-checklist strong,
.image-rights-checklist span {
  display: block;
  min-width: 0;
}

.image-rights-checklist small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.image-rights-checklist strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.image-rights-checklist span {
  margin-top: 6px;
  color: #475467;
  font-size: 12px;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

.readiness-panel {
  display: grid;
  gap: 12px;
  margin: 0 0 20px;
  padding: 14px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #fffaf0;
}

.readiness-panel.ready {
  border-left-color: var(--teal);
  background: #eefaf6;
}

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

.readiness-head small {
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.readiness-head strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 18px;
}

.readiness-head span {
  margin-top: 5px;
  color: #475467;
  font-size: 13px;
  line-height: 1.55;
}

.readiness-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.readiness-grid div {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.82);
}

.readiness-grid small,
.readiness-grid strong,
.readiness-grid span {
  display: block;
  min-width: 0;
}

.readiness-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.readiness-grid strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.readiness-grid span {
  margin-top: 4px;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.source-trust-panel {
  display: grid;
  gap: 12px;
  margin: 0 0 20px;
  padding: 14px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #fffaf0;
}

.source-trust-panel.ready {
  border-left-color: var(--teal);
  background: #eefaf6;
}

.source-trust-panel.risk {
  border-left-color: var(--red);
  background: var(--red-soft);
}

.source-trust-head small,
.source-trust-head strong,
.source-trust-head span {
  display: block;
  min-width: 0;
}

.source-trust-head small {
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.source-trust-head strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.35;
}

.source-trust-head span {
  margin-top: 5px;
  color: #475467;
  font-size: 13px;
  line-height: 1.55;
}

.source-trust-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}

.source-trust-grid div {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.82);
}

.source-trust-grid div.good {
  border-left-color: var(--teal);
}

.source-trust-grid small,
.source-trust-grid strong,
.source-trust-grid span {
  display: block;
  min-width: 0;
}

.source-trust-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.source-trust-grid strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.source-trust-grid span {
  margin-top: 4px;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.evidence-pack {
  display: grid;
  gap: 12px;
  margin: 0 0 20px;
  padding: 14px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #fffaf0;
}

.evidence-pack.ready {
  border-left-color: var(--teal);
  background: #eefaf6;
}

.evidence-pack.risk {
  border-left-color: var(--red);
  background: var(--red-soft);
}

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

.evidence-pack-head small,
.evidence-pack-head strong,
.evidence-pack-head span,
.evidence-pack p {
  display: block;
  min-width: 0;
}

.evidence-pack-head small {
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.evidence-pack-head strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.35;
}

.evidence-pack-head span {
  flex: 0 0 auto;
  padding: 6px 9px;
  border-radius: 999px;
  background: #fff;
  color: var(--charcoal);
  font-size: 12px;
  font-weight: 900;
  box-shadow: inset 0 0 0 1px rgba(16, 24, 32, 0.1);
}

.evidence-pack p {
  margin: 0;
  color: #475467;
  font-size: 13px;
  line-height: 1.55;
}

.evidence-pack-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}

.evidence-pack-grid div {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.84);
}

.evidence-pack-grid div.good {
  border-left-color: var(--teal);
}

.evidence-pack-grid small,
.evidence-pack-grid strong,
.evidence-pack-grid span {
  display: block;
  min-width: 0;
}

.evidence-pack-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.evidence-pack-grid strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.evidence-pack-grid span {
  margin-top: 4px;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.evidence-pack-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.evidence-copy-field {
  width: 100%;
  min-height: 190px;
  padding: 12px;
  border: 1px solid var(--line-strong);
  background: #fff;
  color: var(--charcoal);
  font-size: 12px;
  line-height: 1.55;
  resize: vertical;
}

.detail-context {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  margin: 0 0 12px;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: #eefaf6;
}

.detail-context.mismatch {
  border-left-color: #d97706;
  background: #fffaf0;
}

.detail-context small,
.detail-context strong,
.detail-context span {
  display: block;
  min-width: 0;
}

.detail-context small {
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.detail-context strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 16px;
}

.detail-context span {
  margin-top: 4px;
  color: #475467;
  font-size: 13px;
  line-height: 1.5;
}

.detail-context-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.ticket-decision {
  display: grid;
  gap: 10px;
  margin-bottom: 12px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}

.ticket-decision.hot {
  border-color: rgba(208, 56, 45, 0.24);
  background: linear-gradient(135deg, rgba(255, 240, 237, 0.96), rgba(255, 255, 255, 0.98));
}

.ticket-decision.easy {
  border-color: rgba(23, 162, 141, 0.24);
  background: linear-gradient(135deg, rgba(232, 249, 245, 0.94), rgba(255, 255, 255, 0.98));
}

.ticket-decision-head {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.ticket-decision-head span {
  flex: 0 0 auto;
  padding: 5px 9px;
  border-radius: 999px;
  background: var(--charcoal);
  color: #fff;
  font-size: 12px;
  font-weight: 900;
}

.ticket-decision.hot .ticket-decision-head span {
  background: var(--red);
}

.ticket-decision.easy .ticket-decision-head span {
  background: var(--teal);
}

.ticket-decision-head strong {
  min-width: 0;
  color: var(--charcoal);
  font-size: 16px;
  line-height: 1.45;
}

.ticket-decision p {
  margin: 0;
}

.ticket-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.ticket-checklist div {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.78);
}

.ticket-checklist small,
.ticket-checklist span {
  display: block;
}

.ticket-checklist small {
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.ticket-checklist span {
  margin-top: 4px;
  color: #344054;
  font-size: 13px;
  line-height: 1.55;
}

.ticket-route-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 12px 0;
}

.ticket-route-card {
  min-width: 0;
  display: grid;
  gap: 8px;
  align-content: start;
  padding: 13px;
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-top: 4px solid var(--charcoal);
  border-radius: 8px;
  background: #fff;
}

.ticket-route-card.official {
  border-top-color: var(--red);
}

.ticket-route-card.reminder {
  border-top-color: #d97706;
}

.ticket-route-card.consult {
  border-top-color: var(--teal);
}

.ticket-route-card span,
.ticket-route-card strong,
.ticket-route-card p,
.ticket-route-card small {
  display: block;
  min-width: 0;
}

.ticket-route-card span {
  width: fit-content;
  padding: 4px 8px;
  border-radius: 999px;
  background: #f2f4f7;
  color: #344054;
  font-size: 11px;
  font-weight: 900;
}

.ticket-route-card strong {
  color: var(--charcoal);
  font-size: 15px;
  line-height: 1.35;
}

.ticket-route-card p {
  margin: 0;
  color: #475467;
  font-size: 13px;
  line-height: 1.55;
}

.ticket-route-card small {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.ticket-route-action {
  margin-top: auto;
}

.ticket-route-action .primary-button,
.ticket-route-action .secondary-button {
  width: 100%;
}

.commercial-route {
  display: grid;
  gap: 10px;
  margin: 12px 0;
  padding: 14px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #fffaf0;
}

.commercial-route.affiliate {
  border-left-color: var(--teal);
  background: #eefaf6;
}

.commercial-route.consult {
  border-left-color: var(--red);
  background: var(--red-soft);
}

.commercial-route.itinerary {
  border-left-color: var(--gold);
  background: var(--gold-soft);
}

.commercial-route.reminder {
  border-left-color: #7c3aed;
  background: #f5f3ff;
}

.commercial-route-head {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.commercial-route-head span {
  flex: 0 0 auto;
  padding: 5px 8px;
  border-radius: 999px;
  background: #fff;
  color: var(--charcoal);
  font-size: 12px;
  font-weight: 900;
  box-shadow: inset 0 0 0 1px rgba(16, 24, 32, 0.1);
}

.commercial-route-head strong,
.commercial-route p,
.commercial-route-grid span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.commercial-route-head strong {
  color: var(--charcoal);
  font-size: 17px;
  line-height: 1.35;
}

.commercial-route p {
  margin: 0;
  color: #475467;
  font-size: 13px;
  line-height: 1.55;
}

.commercial-route-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.commercial-route-grid div {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.84);
}

.commercial-route-grid small,
.commercial-route-grid span {
  display: block;
}

.commercial-route-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.commercial-route-grid span {
  margin-top: 5px;
  color: #344054;
  font-size: 12px;
  line-height: 1.45;
}

.ticket-launch-plan {
  display: grid;
  gap: 12px;
  margin: 12px 0;
  padding: 14px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: #eefaf6;
}

.ticket-launch-plan.watch {
  border-left-color: #d97706;
  background: #fffaf0;
}

.ticket-launch-plan.risk {
  border-left-color: var(--red);
  background: var(--red-soft);
}

.source-dossier-panel {
  display: grid;
  gap: 12px;
  margin: 12px 0;
  padding: 14px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #fffaf0;
}

.source-dossier-panel.ready {
  border-left-color: var(--teal);
  background: var(--teal-soft);
}

.source-dossier-panel.risk {
  border-left-color: var(--red);
  background: var(--red-soft);
}

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

.source-dossier-head small,
.source-dossier-head strong,
.source-dossier-head span,
.source-dossier-panel p {
  min-width: 0;
  overflow-wrap: anywhere;
}

.source-dossier-head small {
  display: block;
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.source-dossier-head strong {
  display: block;
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 17px;
}

.source-dossier-head > span {
  flex: 0 0 auto;
  padding: 6px 9px;
  border-radius: 999px;
  background: #fff;
  color: var(--charcoal);
  font-size: 12px;
  font-weight: 900;
  box-shadow: inset 0 0 0 1px rgba(16, 24, 32, 0.1);
}

.source-dossier-panel p {
  margin: 0;
  color: #475467;
  font-size: 13px;
  line-height: 1.55;
}

.source-dossier-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.source-dossier-grid div {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.86);
}

.source-dossier-grid div.todo {
  box-shadow: inset 3px 0 0 #d97706;
}

.source-dossier-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.source-dossier-grid strong {
  color: var(--charcoal);
  font-size: 13px;
  overflow-wrap: anywhere;
}

.source-dossier-grid span {
  color: #475467;
  font-size: 12px;
  line-height: 1.42;
  overflow-wrap: anywhere;
}

.source-dossier-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.source-dossier-copy-field {
  width: 100%;
  min-height: 150px;
  resize: vertical;
  padding: 12px;
  border: 1px solid rgba(16, 24, 32, 0.14);
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal);
  font: 13px/1.55 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.ticket-launch-head {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.ticket-launch-head > span {
  flex: 0 0 auto;
  padding: 5px 8px;
  border-radius: 999px;
  background: #fff;
  color: var(--charcoal);
  font-size: 12px;
  font-weight: 900;
  box-shadow: inset 0 0 0 1px rgba(16, 24, 32, 0.1);
}

.ticket-launch-head strong,
.ticket-launch-head p,
.ticket-launch-grid span,
.ticket-launch-grid em {
  min-width: 0;
  overflow-wrap: anywhere;
}

.ticket-launch-head strong {
  color: var(--charcoal);
  font-size: 17px;
}

.ticket-launch-head p {
  margin: 4px 0 0;
  color: #475467;
  font-size: 13px;
  line-height: 1.55;
}

.ticket-launch-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.ticket-launch-grid div {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.86);
}

.ticket-launch-grid div.todo {
  box-shadow: inset 3px 0 0 #d97706;
}

.ticket-launch-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.ticket-launch-grid strong {
  color: var(--charcoal);
  font-size: 13px;
}

.ticket-launch-grid span,
.ticket-launch-grid em {
  color: #475467;
  font-size: 12px;
  font-style: normal;
  line-height: 1.4;
}

.ticket-launch-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.ticket-blueprint-field {
  width: 100%;
  min-height: 150px;
  resize: vertical;
  padding: 12px;
  border: 1px solid rgba(16, 24, 32, 0.14);
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal);
  font: 13px/1.55 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.ticket-entry {
  display: grid;
  grid-template-columns: minmax(220px, 0.85fr) minmax(0, 1.15fr);
  gap: 12px;
}

.ticket-primary,
.ticket-notes div {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}

.ticket-primary {
  padding: 16px;
  background:
    linear-gradient(135deg, rgba(255, 240, 237, 0.92), rgba(255, 255, 255, 0.95)),
    #fff;
}

.ticket-primary small,
.ticket-primary strong,
.ticket-notes small,
.ticket-notes span {
  display: block;
}

.ticket-primary small,
.ticket-notes small {
  color: var(--red);
  font-size: 12px;
  font-weight: 900;
}

.ticket-primary strong {
  margin-top: 6px;
  color: var(--charcoal);
  font-size: 22px;
}

.ticket-primary p {
  margin: 8px 0 14px;
}

.ticket-primary .ticket-beta-note {
  margin-top: -4px;
  padding: 9px 10px;
  border-radius: 8px;
  background: rgba(16, 24, 40, 0.06);
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.ticket-cta-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}

.ticket-cta-row .primary-button,
.ticket-cta-row .secondary-button {
  width: 100%;
}

.ticket-notes {
  display: grid;
  gap: 8px;
}

.ticket-notes div {
  padding: 12px;
}

.ticket-notes span {
  margin-top: 5px;
  color: #344054;
  font-size: 14px;
  line-height: 1.55;
}

.ticket-platform-hints {
  display: grid;
  grid-template-columns: minmax(0, 0.72fr) minmax(0, 1.28fr);
  gap: 10px;
  align-items: center;
  margin-top: 10px;
  padding: 11px;
  border: 1px solid rgba(15, 118, 110, 0.16);
  border-radius: 8px;
  background: #f4fbf8;
}

.ticket-platform-hints small,
.ticket-platform-hints strong,
.ticket-platform-hints span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.ticket-platform-hints small {
  color: var(--teal-strong);
  font-size: 11px;
  font-weight: 900;
}

.ticket-platform-hints strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.ticket-platform-hints > div:last-child {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  min-width: 0;
}

.ticket-platform-hints span {
  padding: 5px 8px;
  border: 1px solid rgba(15, 118, 110, 0.14);
  border-radius: 999px;
  background: #fff;
  color: #155e55;
  font-size: 11px;
  font-weight: 900;
}

.ticket-gate-dialog .reminder-content {
  max-width: min(680px, calc(100vw - 28px));
}

.purchase-gate {
  display: grid;
  gap: 12px;
  margin-top: 12px;
  padding: 13px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #fffaf0;
}

.purchase-gate.ready {
  border-left-color: var(--teal);
  background: #eefaf6;
}

.purchase-gate.risk {
  border-left-color: var(--red);
  background: var(--red-soft);
}

.purchase-gate.danger {
  border-left-color: #a11212;
  background: #fff1f1;
}

.purchase-gate-head small,
.purchase-gate-head strong,
.purchase-gate-head span,
.purchase-gate-decision small,
.purchase-gate-decision strong,
.purchase-gate-decision span,
.purchase-gate-decision em,
.purchase-gate-route small,
.purchase-gate-route strong,
.purchase-gate-route span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.purchase-gate-head small {
  color: var(--red);
  font-size: 12px;
  font-weight: 900;
}

.purchase-gate-head strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 19px;
  line-height: 1.35;
}

.purchase-gate-head span {
  margin-top: 6px;
  color: #475467;
  font-size: 14px;
  line-height: 1.55;
}

.purchase-gate-decision {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 5px 10px;
  align-items: center;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.92);
}

.purchase-gate-decision small {
  padding: 5px 8px;
  border-radius: 999px;
  background: var(--teal-soft);
  color: var(--teal);
  font-size: 11px;
  font-weight: 900;
  white-space: nowrap;
}

.purchase-gate.risk .purchase-gate-decision small,
.purchase-gate.danger .purchase-gate-decision small {
  background: var(--red-soft);
  color: var(--red);
}

.purchase-gate-decision strong {
  color: var(--charcoal);
  font-size: 16px;
  line-height: 1.35;
}

.purchase-gate-decision span {
  grid-column: 1 / 3;
  color: #475467;
  font-size: 13px;
  line-height: 1.45;
}

.purchase-gate-decision em {
  justify-self: end;
  color: #344054;
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
  text-align: right;
}

.purchase-gate-route {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.9);
}

.purchase-gate-route small {
  color: var(--teal);
  font-size: 12px;
  font-weight: 900;
}

.purchase-gate-route strong {
  color: var(--charcoal);
  font-size: 16px;
  line-height: 1.35;
}

.purchase-gate-route span {
  color: #475467;
  font-size: 13px;
  line-height: 1.5;
}

.purchase-entry-router {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.88);
}

.purchase-entry-head {
  display: grid;
  gap: 5px;
}

.purchase-entry-head small,
.purchase-entry-head strong,
.purchase-entry-head span,
.purchase-entry-route small,
.purchase-entry-route strong,
.purchase-entry-route p {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.purchase-entry-head small {
  color: var(--teal);
  font-size: 11px;
  font-weight: 900;
}

.purchase-entry-head strong {
  color: var(--charcoal);
  font-size: 16px;
  line-height: 1.35;
}

.purchase-entry-head span {
  color: #475467;
  font-size: 13px;
  line-height: 1.45;
}

.purchase-entry-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.purchase-entry-route {
  display: grid;
  grid-template-rows: auto auto auto auto auto;
  gap: 6px;
  min-width: 0;
  padding: 11px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fff;
}

.purchase-entry-route > span {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: var(--charcoal);
  color: #fff;
  font-size: 11px;
  font-weight: 900;
}

.purchase-entry-route.ready > span {
  background: var(--teal);
}

.purchase-entry-route.consult > span,
.purchase-entry-route.blocked > span {
  background: var(--red);
}

.purchase-entry-route.reminder > span,
.purchase-entry-route.verify > span,
.purchase-entry-route.review > span {
  background: #b45309;
}

.purchase-entry-route small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.purchase-entry-route strong {
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
}

.purchase-entry-route p {
  margin: 0;
  color: #5d6672;
  font-size: 12px;
  line-height: 1.45;
}

.purchase-entry-route button {
  width: 100%;
}

.purchase-gate-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.purchase-gate-grid div {
  min-width: 0;
  padding: 11px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.84);
}

.purchase-gate-grid small,
.purchase-gate-grid strong,
.purchase-gate-grid span,
.purchase-gate-checks span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.purchase-gate-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.purchase-gate-grid strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.purchase-gate-grid span {
  margin-top: 5px;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.purchase-gate-checks {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.purchase-gate-checks span {
  padding: 10px;
  border: 1px dashed rgba(16, 24, 40, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.78);
  color: #344054;
  font-size: 13px;
  line-height: 1.5;
}

.purchase-payment-checklist {
  display: grid;
  gap: 9px;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.9);
}

.purchase-payment-title small,
.purchase-payment-title strong,
.purchase-payment-grid small,
.purchase-payment-grid strong,
.purchase-payment-grid span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.purchase-payment-title small {
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
}

.purchase-payment-title strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 15px;
  line-height: 1.35;
}

.purchase-payment-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.purchase-payment-grid div {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 3px solid #d97706;
  border-radius: 8px;
  background: #fbfaf7;
}

.purchase-payment-grid div.ready {
  border-left-color: var(--teal);
  background: #f0fdfa;
}

.purchase-payment-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.purchase-payment-grid strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
}

.purchase-payment-grid span {
  margin-top: 5px;
  color: #667085;
  font-size: 11.5px;
  line-height: 1.45;
}

.purchase-gate-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.purchase-gate-actions .primary-button,
.purchase-gate-actions .secondary-button {
  width: 100%;
  min-width: 0;
  padding-inline: 10px;
  white-space: normal;
  line-height: 1.2;
  text-align: center;
  overflow-wrap: anywhere;
}

.purchase-gate-actions .primary-button:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.purchase-safe-line {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.purchase-safe-line span {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 0 9px;
  border: 1px solid rgba(15, 118, 110, 0.14);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.74);
  color: #155e55;
  font-size: 12px;
  font-weight: 900;
}

.purchase-public-note {
  display: grid;
  gap: 5px;
  padding: 11px 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #ffffff;
}

.purchase-public-note strong,
.purchase-public-note span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.purchase-public-note strong {
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.purchase-public-note span {
  color: #5d6672;
  font-size: 13px;
  line-height: 1.5;
}

.purchase-route-disclosure {
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.72);
}

.purchase-route-disclosure summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 44px;
  padding: 0 12px;
  color: var(--charcoal);
  cursor: pointer;
  list-style: none;
}

.purchase-route-disclosure summary::-webkit-details-marker {
  display: none;
}

.purchase-route-disclosure summary::after {
  content: "+";
  display: grid;
  flex: 0 0 auto;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: 999px;
  background: rgba(16, 24, 40, 0.06);
  color: #344054;
  font-weight: 900;
}

.purchase-route-disclosure[open] summary::after {
  content: "-";
}

.purchase-route-disclosure summary span,
.purchase-route-disclosure summary small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.purchase-route-disclosure summary span {
  font-size: 14px;
  font-weight: 900;
}

.purchase-route-disclosure summary small {
  color: #667085;
  font-size: 12px;
  font-weight: 800;
}

.purchase-route-disclosure .purchase-entry-router {
  margin: 0 12px 12px;
}

.purchase-review-disclosure {
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.82);
}

.purchase-review-disclosure summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 48px;
  padding: 0 12px;
  color: var(--charcoal);
  cursor: pointer;
  list-style: none;
}

.purchase-review-disclosure summary::-webkit-details-marker {
  display: none;
}

.purchase-review-disclosure summary::after {
  content: "+";
  display: grid;
  flex: 0 0 auto;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: rgba(16, 24, 40, 0.06);
  color: #344054;
  font-weight: 900;
}

.purchase-review-disclosure[open] summary::after {
  content: "-";
}

.purchase-review-disclosure summary span,
.purchase-review-disclosure summary small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.purchase-review-disclosure summary span {
  font-size: 14px;
  font-weight: 900;
}

.purchase-review-disclosure summary small {
  color: #667085;
  font-size: 12px;
  font-weight: 800;
}

.purchase-review-content {
  display: grid;
  gap: 10px;
  padding: 0 12px 12px;
}

.purchase-review-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.steps {
  display: grid;
  gap: 8px;
  margin: 0;
  padding-left: 22px;
  color: #475467;
  line-height: 1.65;
}

.dialog-tags {
  margin: 18px 0;
}

.dialog-actions {
  justify-content: flex-start;
  flex-wrap: wrap;
}

.detail-sticky-actions {
  position: sticky;
  bottom: 0;
  z-index: 7;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto auto;
  align-items: center;
  gap: 8px;
  margin: 18px -28px -30px;
  padding: 10px 28px calc(10px + env(safe-area-inset-bottom));
  border-top: 1px solid rgba(16, 24, 40, 0.1);
  background: rgba(255, 253, 248, 0.96);
  box-shadow: 0 -16px 32px rgba(16, 24, 40, 0.08);
  backdrop-filter: blur(14px);
}

.detail-sticky-actions > div {
  min-width: 0;
}

.detail-sticky-actions small,
.detail-sticky-actions strong {
  display: block;
}

.detail-sticky-actions small {
  color: var(--teal);
  font-size: 11px;
  font-weight: 900;
}

.detail-sticky-actions strong {
  overflow: hidden;
  color: var(--ink);
  font-size: 13px;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.detail-sticky-actions button {
  min-height: 40px;
  min-width: 0;
  padding: 6px 12px;
  white-space: normal;
  line-height: 1.2;
  text-align: center;
  overflow-wrap: anywhere;
}

.detail-sticky-actions .sticky-consult-button {
  border-color: rgba(15, 118, 110, 0.28);
  color: var(--teal);
}

.event-share-field,
.event-share-text-field,
.event-ticket-check-text-field {
  flex: 1 1 100%;
  min-width: min(100%, 280px);
  max-width: 100%;
  border: 1px solid rgba(15, 118, 110, 0.24);
  border-radius: 8px;
  background: #fff;
  color: #344054;
  font-size: 12px;
}

.event-share-field {
  height: 38px;
  padding: 8px 10px;
}

.event-share-text-field,
.event-ticket-check-text-field {
  min-height: 112px;
  padding: 10px;
  line-height: 1.5;
}

.reminder-content h2 {
  margin: 0 0 8px;
  font-size: 28px;
}

.reminder-content p:not(.eyebrow) {
  color: #475467;
  line-height: 1.65;
}

.reminder-content form {
  display: grid;
  gap: 14px;
  margin-top: 18px;
}

.reminder-content label {
  display: grid;
  gap: 7px;
  color: #344054;
  font-weight: 800;
}

.ticket-lead-summary {
  display: block;
  margin-top: 14px;
  padding: 12px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal);
  line-height: 1.45;
}

.ticket-lead-context {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 10px;
}

.ticket-lead-context > div {
  min-width: 0;
  padding: 11px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fbfaf7;
}

.ticket-lead-context small,
.ticket-lead-context strong,
.ticket-lead-context span {
  display: block;
  min-width: 0;
}

.ticket-lead-context small {
  color: var(--teal);
  font-size: 11px;
  font-weight: 900;
}

.ticket-lead-context strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.ticket-lead-context span {
  margin-top: 5px;
  color: #475467;
  font-size: 12px;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

.ticket-consult-prep {
  grid-column: 1 / -1;
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: #fff;
}

.ticket-consult-prep.risk {
  border-left-color: var(--red);
  background: #fffafa;
}

.ticket-consult-prep.easy {
  border-left-color: var(--teal);
  background: #eefaf6;
}

.ticket-consult-prep.watch {
  border-left-color: #d97706;
  background: #fffaf0;
}

.ticket-consult-head {
  display: grid;
  gap: 4px;
}

.ticket-consult-head small,
.ticket-consult-head strong,
.ticket-consult-head span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.ticket-consult-head small {
  color: var(--teal);
  font-size: 11px;
  font-weight: 900;
}

.ticket-consult-prep.risk .ticket-consult-head small {
  color: var(--red);
}

.ticket-consult-prep.watch .ticket-consult-head small {
  color: #b45309;
}

.ticket-consult-head strong {
  color: var(--charcoal);
  font-size: 16px;
  line-height: 1.35;
}

.ticket-consult-head span {
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.ticket-consult-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.ticket-consult-grid div {
  min-width: 0;
  padding: 9px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.86);
}

.ticket-consult-grid small,
.ticket-consult-grid strong,
.ticket-consult-grid span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.ticket-consult-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.ticket-consult-grid strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
}

.ticket-consult-grid span {
  margin-top: 4px;
  color: #475467;
  font-size: 12px;
  line-height: 1.4;
}

.policy-check {
  display: grid !important;
  grid-template-columns: 20px minmax(0, 1fr);
  gap: 9px !important;
  align-items: start;
  padding: 11px;
  border: 1px solid rgba(191, 63, 50, 0.22);
  border-radius: 8px;
  background: var(--red-soft);
}

.policy-check input {
  width: 18px;
  height: 18px;
  margin-top: 2px;
  accent-color: var(--red);
}

.policy-check span {
  color: #344054;
  font-size: 13px;
  line-height: 1.5;
}

.link-dialog-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  align-items: center;
}

.link-dialog-actions .secondary-button:disabled {
  cursor: not-allowed;
  opacity: 0.45;
}

.tester-issue-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 32, 0.1);
  border-radius: 8px;
  background: #fff;
}

.tester-issue-grid legend {
  padding: 0 6px;
  color: #344054;
  font-size: 13px;
  font-weight: 900;
}

.tester-issue-grid label {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  font-size: 13px;
  font-weight: 800;
}

.tester-issue-grid input {
  width: 17px;
  height: 17px;
  min-height: 0;
  accent-color: var(--red);
}

.link-safety-preview {
  min-height: 0;
}

.link-intake-handoff {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-left: 4px solid #2563eb;
  border-radius: 8px;
  background: #eff6ff;
}

.link-intake-handoff:empty {
  display: none;
}

.link-intake-handoff-head span,
.link-intake-handoff-head strong,
.link-intake-handoff-head small,
.link-intake-handoff-grid small,
.link-intake-handoff-grid strong,
.link-intake-handoff-grid span,
.link-intake-handoff p {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.link-intake-handoff-head span {
  color: #1d4ed8;
  font-size: 11px;
  font-weight: 900;
}

.link-intake-handoff-head strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.link-intake-handoff-head small,
.link-intake-handoff p {
  margin-top: 4px;
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.link-intake-handoff-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.link-intake-handoff-grid div {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(37, 99, 235, 0.14);
  border-radius: 8px;
  background: #fff;
}

.link-intake-handoff-grid small {
  color: #1d4ed8;
  font-size: 11px;
  font-weight: 900;
}

.link-intake-handoff-grid strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 12px;
  line-height: 1.35;
}

.link-intake-handoff-grid span {
  margin-top: 4px;
  color: #667085;
  font-size: 11px;
  line-height: 1.45;
}

.current-ticket-intake-field {
  width: 100%;
  min-height: 150px;
  margin-top: 8px;
  resize: vertical;
  padding: 12px;
  border: 1px solid rgba(16, 24, 32, 0.14);
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal);
  font: 13px/1.55 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.link-safety-card {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #fff;
}

.link-safety-card.safe {
  border-left-color: var(--teal);
  background: var(--teal-soft);
}

.link-safety-card.warn,
.link-safety-card.review,
.link-safety-card.empty {
  border-left-color: #d97706;
  background: #fffbeb;
}

.link-safety-card.danger {
  border-left-color: var(--red);
  background: var(--red-soft);
}

.link-safety-card strong,
.link-safety-card span,
.link-safety-card li {
  color: var(--charcoal);
  line-height: 1.45;
}

.link-safety-card strong {
  font-size: 14px;
}

.link-safety-card span,
.link-safety-card li {
  color: #475467;
  font-size: 13px;
}

.link-safety-card ul {
  display: grid;
  gap: 4px;
  margin: 0;
  padding-left: 18px;
}

.link-type-guide,
.link-intake-checklist {
  display: grid;
  gap: 8px;
  margin-top: 8px;
}

.link-type-guide {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.link-intake-checklist {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.link-type-card,
.link-intake-checklist div {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #fff;
}

.link-type-card.active {
  box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.14);
}

.link-type-card.safe,
.link-intake-checklist div.safe {
  border-left-color: var(--teal);
  background: #f0fdfa;
}

.link-type-card.warn,
.link-intake-checklist div.warn,
.link-type-card.review,
.link-intake-checklist div.review {
  border-left-color: #d97706;
  background: #fffbeb;
}

.link-type-card.danger,
.link-intake-checklist div.danger {
  border-left-color: var(--red);
  background: var(--red-soft);
}

.link-type-card strong,
.link-type-card span,
.link-type-card small,
.link-intake-checklist small,
.link-intake-checklist strong,
.link-intake-checklist span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.link-type-card strong,
.link-intake-checklist strong {
  color: var(--charcoal);
  font-size: 12px;
  line-height: 1.35;
}

.link-type-card span,
.link-type-card small,
.link-intake-checklist span,
.link-intake-checklist small {
  margin-top: 4px;
  color: #667085;
  font-size: 11px;
  line-height: 1.45;
}

.link-intake-checklist small {
  color: #475467;
  font-weight: 900;
}

.ticket-service-note {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 14px 0;
}

.ticket-service-note div {
  min-width: 0;
  padding: 11px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fff;
}

.ticket-service-note small,
.ticket-service-note strong,
.ticket-service-note span {
  display: block;
}

.ticket-service-note small {
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
}

.ticket-service-note strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.ticket-service-note span {
  margin-top: 5px;
  color: #475467;
  font-size: 12px;
  line-height: 1.55;
}

.form-split {
  display: grid;
  grid-template-columns: 0.7fr 1.3fr;
  gap: 12px;
}

.ops-dashboard {
  display: grid;
  gap: 18px;
  margin-top: 18px;
}

.ops-loading-shell {
  display: grid;
  gap: 14px;
  padding: 16px;
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-left: 5px solid var(--teal);
  border-radius: 8px;
  background: #f0fdfa;
}

.ops-loading-shell span,
.ops-loading-shell strong,
.ops-loading-shell small,
.ops-loading-grid span,
.ops-loading-grid strong {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.ops-loading-shell span,
.ops-loading-grid span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.ops-loading-shell strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 20px;
  line-height: 1.3;
}

.ops-loading-shell small {
  margin-top: 6px;
  color: #475467;
  font-size: 13px;
  line-height: 1.55;
}

.ops-loading-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.ops-loading-grid div {
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(15, 118, 110, 0.12);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.8);
}

.ops-loading-grid strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 22px;
  line-height: 1;
}

.ops-quick-start {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.ops-quick-start div {
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: #fbfaf7;
}

.ops-quick-start small,
.ops-quick-start strong,
.ops-quick-start span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.ops-quick-start small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.ops-quick-start strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 15px;
  line-height: 1.35;
}

.ops-quick-start span {
  margin-top: 5px;
  color: #475467;
  font-size: 12px;
  line-height: 1.5;
}

.ops-quick-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 12px;
}

.ops-kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.ops-kpi-grid div,
.ops-card {
  min-width: 0;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: #fff;
}

.ops-kpi-grid div {
  padding: 13px;
}

.ops-kpi-grid span,
.ops-kpi-grid strong,
.ops-card-title span,
.ops-card-title strong {
  display: block;
}

.ops-kpi-grid span,
.ops-card-title span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}

.ops-kpi-grid strong {
  margin-top: 6px;
  color: var(--charcoal);
  font-size: 26px;
  line-height: 1;
}

.ops-report-grid {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 12px;
}

.ops-card {
  padding: 16px;
}

.ops-card.wide {
  grid-column: 1 / -1;
}

.ops-card-title {
  margin-bottom: 12px;
}

.ops-card-title strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 18px;
}

.morning-brief {
  display: grid;
  gap: 12px;
}

.morning-brief-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-left: 5px solid var(--teal);
  border-radius: 8px;
  background: #f0fdfa;
}

.morning-brief-hero.missing {
  border-left-color: var(--coral);
  background: #fff1f2;
}

.morning-brief-hero span,
.morning-brief-card span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.morning-brief-hero strong {
  display: block;
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 19px;
}

.morning-brief-hero small,
.morning-brief-card small {
  display: block;
  margin-top: 5px;
  color: #475467;
  font-weight: 800;
  line-height: 1.45;
}

.morning-brief-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}

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

.morning-action-row {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 12px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #fffaf0;
}

.morning-action-row.ready {
  border-left-color: var(--teal);
  background: #f0fdfa;
}

.morning-action-row.missing,
.morning-action-row.risk {
  border-left-color: var(--red);
  background: #fff1f2;
}

.morning-action-row > span {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 999px;
  background: #d97706;
  color: #fff;
  font-weight: 900;
  font-size: 12px;
}

.morning-action-row.ready > span {
  background: var(--teal);
}

.morning-action-row.missing > span,
.morning-action-row.risk > span {
  background: var(--red);
}

.morning-action-row div {
  min-width: 0;
}

.morning-action-row small,
.morning-action-row strong,
.morning-action-row em,
.morning-action-row p {
  display: block;
}

.morning-action-row small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.morning-action-row strong {
  margin-top: 3px;
  color: var(--charcoal);
  font-size: 15px;
}

.morning-action-row em {
  margin-top: 3px;
  color: #667085;
  font-style: normal;
  font-size: 12px;
  font-weight: 800;
}

.morning-action-row p {
  margin: 5px 0 0;
  color: #344054;
  font-size: 13px;
  line-height: 1.45;
}

.morning-brief-card {
  min-width: 0;
  padding: 11px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-left: 4px solid #64748b;
  border-radius: 8px;
  background: #f8fafc;
}

.morning-brief-card.ready {
  border-left-color: var(--teal);
  background: #f0fdfa;
}

.morning-brief-card.risk,
.morning-brief-card.watch {
  border-left-color: #d97706;
  background: #fffbeb;
}

.morning-brief-card.danger,
.morning-brief-card.missing {
  border-left-color: var(--coral);
  background: #fff1f2;
}

.morning-brief-card strong {
  display: block;
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 20px;
  line-height: 1.1;
}

.business-funnel {
  display: grid;
  gap: 12px;
  padding: 12px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.92), #fff 74%);
}

.business-funnel.direct {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, #eaf6f3, #fff 74%);
}

.business-funnel.watch {
  border-left-color: var(--gold);
}

.business-funnel-head {
  display: grid;
  gap: 5px;
}

.business-funnel-head span {
  justify-self: start;
  padding: 4px 8px;
  border-radius: 999px;
  background: #fff;
  color: #92400e;
  font-size: 12px;
  font-weight: 900;
}

.business-funnel.direct .business-funnel-head span {
  color: var(--teal-strong);
}

.business-funnel-head strong,
.business-funnel-head small,
.business-funnel-head em {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.business-funnel-head strong {
  color: var(--charcoal);
  font-size: 16px;
  line-height: 1.35;
}

.business-funnel-head small,
.business-funnel-head em {
  color: #667085;
  font-size: 13px;
  line-height: 1.5;
}

.business-funnel-head em {
  color: #344054;
  font-style: normal;
  font-weight: 800;
}

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

.business-funnel-item {
  display: grid;
  gap: 5px;
  min-width: 0;
  min-height: 96px;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.84);
}

.business-funnel-item span,
.business-funnel-item strong,
.business-funnel-item small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.business-funnel-item span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
}

.business-funnel-item strong {
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.1;
}

.business-funnel-item small {
  color: #667085;
  font-size: 11px;
  line-height: 1.35;
}

.ops-table,
.ops-lead-list,
.ops-chip-list,
.ops-next-list {
  display: grid;
  gap: 8px;
}

.ops-subtitle {
  margin: 16px 0 8px;
  color: #475467;
  font-size: 13px;
  font-weight: 900;
}

.ops-row {
  display: grid;
  grid-template-columns: 28px minmax(0, 1.25fr) minmax(120px, 0.75fr) auto;
  align-items: center;
  gap: 10px;
  padding: 10px 0;
  border-top: 1px solid rgba(16, 24, 32, 0.08);
}

.ops-row:first-child {
  border-top: 0;
  padding-top: 0;
}

.ops-row span {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: var(--charcoal);
  color: #fff;
  font-size: 12px;
  font-weight: 900;
}

.ops-row strong,
.ops-lead strong {
  color: var(--charcoal);
  overflow-wrap: anywhere;
}

.ops-row em,
.ops-lead span,
.ops-lead em,
.ops-lead small {
  color: #667085;
  font-size: 13px;
  font-style: normal;
}

.ops-row b {
  color: var(--red);
  font-size: 13px;
  white-space: nowrap;
}

.ops-row b.ops-row-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  min-width: 0;
  white-space: normal;
}

.ops-row .ops-link-status {
  display: block;
  width: auto;
  height: auto;
  min-width: 0;
  max-width: 420px;
  border-radius: 0;
  background: transparent;
  color: inherit;
  overflow-wrap: anywhere;
  text-align: right;
  place-items: initial;
}

.ops-link-button {
  flex: 0 0 auto;
  padding: 6px 9px;
  border-radius: 8px;
  background: #fff;
  box-shadow: inset 0 0 0 1px rgba(16, 24, 32, 0.1);
}

.ops-row.link-row {
  padding-left: 10px;
  border-left: 4px solid #d97706;
}

.ops-row.feedback-row {
  padding-left: 10px;
  border-left: 4px solid #d97706;
}

.ops-row.feedback-action-row {
  padding-left: 10px;
  border-left: 4px solid #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.86), rgba(255, 255, 255, 0));
}

.ops-row.feedback-action-row span {
  background: #d97706;
}

.ops-row.feedback-action-row.direct {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.86), rgba(255, 255, 255, 0));
}

.ops-row.feedback-action-row.direct span {
  background: var(--teal);
}

.ops-row.feedback-action-row.missing {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.88), rgba(255, 255, 255, 0));
}

.ops-row.feedback-action-row.missing span {
  background: var(--red);
}

.ops-row.feedback-action-row.watch {
  border-left-color: var(--line-strong);
  background: #fff;
}

.ops-row.feedback-action-row.watch span {
  background: var(--muted);
}

.ops-row.feedback-action-row b {
  color: #92400e;
}

.ops-row.feedback-action-row.direct b {
  color: var(--teal-strong);
}

.ops-row.feedback-action-row.missing b {
  color: var(--red);
}

.ticket-triage-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}

.ticket-triage-summary div {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-left: 4px solid #667085;
  border-radius: 8px;
  background: #fff;
}

.ticket-triage-summary div.risk {
  border-left-color: var(--red);
}

.ticket-triage-summary div.convert {
  border-left-color: var(--teal);
}

.ticket-triage-summary div.itinerary {
  border-left-color: #d97706;
}

.ticket-triage-summary div.data {
  border-left-color: #667085;
}

.ticket-triage-summary span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.ticket-triage-summary strong {
  color: var(--charcoal);
  font-size: 20px;
  line-height: 1.1;
}

.ticket-triage-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
  margin-bottom: 12px;
  padding: 12px;
  border: 1px solid rgba(28, 105, 102, 0.18);
  border-radius: 8px;
  background: linear-gradient(135deg, #f4fbf8, #fff 72%);
}

.ticket-triage-head div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.ticket-triage-head small {
  color: var(--teal-strong);
  font-size: 11px;
  font-weight: 900;
}

.ticket-triage-head strong {
  color: var(--charcoal);
  font-size: 15px;
  overflow-wrap: anywhere;
}

.ticket-triage-head span {
  color: #475467;
  font-size: 13px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.ops-row.ticket-triage-row {
  grid-template-columns: 28px minmax(0, 1.1fr) minmax(160px, 0.8fr) minmax(180px, auto);
  align-items: flex-start;
  padding-left: 10px;
  border-left: 4px solid #667085;
  background: linear-gradient(90deg, rgba(242, 244, 247, 0.82), rgba(255, 255, 255, 0));
}

.ops-row.ticket-triage-row span {
  background: #667085;
}

.ops-row.ticket-triage-row.risk {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.ticket-triage-row.risk span {
  background: var(--red);
}

.ops-row.ticket-triage-row.convert {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.88), rgba(255, 255, 255, 0));
}

.ops-row.ticket-triage-row.convert span {
  background: var(--teal);
}

.ops-row.ticket-triage-row.itinerary {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.ticket-triage-row.itinerary span {
  background: #d97706;
}

.ops-row.ticket-triage-row small {
  grid-column: 2 / -1;
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.ticket-triage-copy-field {
  width: 100%;
  min-height: 140px;
  margin-top: 12px;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.14);
  border-radius: 8px;
  color: var(--charcoal);
  font: inherit;
  resize: vertical;
}

.ops-row.tester-feedback-row,
.ops-row.tester-action-row {
  padding-left: 10px;
  border-left: 4px solid #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.88), rgba(255, 255, 255, 0));
}

.ops-row.tester-feedback-row span,
.ops-row.tester-action-row span {
  background: #d97706;
}

.ops-row.tester-feedback-row.missing,
.ops-row.tester-action-row.missing {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.tester-feedback-row.missing span,
.ops-row.tester-action-row.missing span {
  background: var(--red);
}

.ops-row.tester-feedback-row.watch,
.ops-row.tester-action-row.watch {
  border-left-color: #667085;
  background: linear-gradient(90deg, rgba(242, 244, 247, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.tester-feedback-row.watch span,
.ops-row.tester-action-row.watch span {
  background: #667085;
}

.ops-row.tester-feedback-row b,
.ops-row.tester-action-row b {
  color: #92400e;
}

.ops-row.tester-feedback-row.missing b,
.ops-row.tester-action-row.missing b {
  color: var(--red);
}

.tester-feedback-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}

.tester-feedback-summary div {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: #fff;
}

.tester-feedback-summary span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.tester-feedback-summary strong {
  color: var(--charcoal);
  font-size: 15px;
  overflow-wrap: anywhere;
}

.tester-reply-archive {
  display: grid;
  gap: 10px;
  margin: 0 0 12px;
  padding: 12px;
  border: 1px solid rgba(28, 105, 102, 0.2);
  border-radius: 8px;
  background: linear-gradient(135deg, #f4fbf8, #fff 72%);
}

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

.tester-reply-head > div:first-child {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.tester-reply-head span {
  color: var(--teal);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.tester-reply-head strong {
  color: var(--charcoal);
  font-size: 16px;
}

.tester-reply-head small {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.tester-reply-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.tester-reply-input {
  width: 100%;
  min-height: 116px;
  resize: vertical;
  padding: 10px 12px;
  border: 1px solid rgba(16, 24, 32, 0.14);
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal);
  font: inherit;
  line-height: 1.5;
}

.tester-reply-input:focus {
  outline: 2px solid rgba(28, 105, 102, 0.18);
  border-color: var(--teal);
}

.tester-reply-copy-field {
  width: 100%;
  min-height: 150px;
  resize: vertical;
  padding: 12px;
  border: 1px solid rgba(16, 24, 32, 0.14);
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal);
  font: 13px/1.55 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.tester-reply-preview {
  display: grid;
  gap: 6px;
}

.tester-reply-preview-row {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  min-width: 0;
  padding: 9px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: #fff;
}

.tester-reply-preview-row.duplicate {
  border-left-color: #d97706;
  background: #fffbf5;
}

.tester-reply-preview-row.watch {
  border-left-color: #667085;
}

.tester-reply-preview-row span {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: var(--teal);
  color: #fff;
  font-size: 11px;
  font-weight: 900;
}

.tester-reply-preview-row.duplicate span {
  background: #d97706;
}

.tester-reply-preview-row.watch span {
  background: #667085;
}

.tester-reply-preview-row strong,
.tester-reply-preview-row em,
.tester-reply-preview-row small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.tester-reply-preview-row strong {
  color: var(--charcoal);
  font-size: 13px;
}

.tester-reply-preview-row em {
  color: #667085;
  font-size: 12px;
  font-style: normal;
}

.tester-reply-preview-row small {
  color: var(--teal);
  font-size: 11px;
  font-weight: 900;
}

.tester-batch-import {
  display: grid;
  gap: 10px;
  margin: 0 0 12px;
  padding: 12px;
  border: 1px solid rgba(217, 119, 6, 0.22);
  border-radius: 8px;
  background: #fffbf5;
}

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

.tester-batch-head > div:first-child {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.tester-batch-head span {
  color: #b45309;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.tester-batch-head strong {
  color: var(--charcoal);
  font-size: 16px;
}

.tester-batch-head small {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.tester-batch-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.tester-batch-input {
  width: 100%;
  min-height: 112px;
  resize: vertical;
  padding: 10px 12px;
  border: 1px solid rgba(16, 24, 32, 0.14);
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal);
  font: inherit;
  line-height: 1.5;
}

.tester-batch-input:focus {
  outline: 2px solid rgba(217, 119, 6, 0.22);
  border-color: #d97706;
}

.tester-mission-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 10px;
}

.tester-mission-summary div {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: #fff;
}

.tester-mission-summary span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.tester-mission-summary strong {
  color: var(--charcoal);
  font-size: 16px;
}

.tester-mission-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  margin-bottom: 10px;
}

.ops-row.tester-mission-row {
  padding-left: 10px;
  border-left: 4px solid #0ea5e9;
  background: linear-gradient(90deg, rgba(239, 246, 255, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.tester-mission-row.direct {
  border-left-color: var(--teal-strong);
}

.ops-row.tester-mission-row.missing {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.tester-mission-row.watch {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.88), rgba(255, 255, 255, 0));
}

.tester-mission-steps {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 5px;
}

.tester-mission-steps i {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 3px 7px;
  border-radius: 999px;
  font-style: normal;
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
}

.tester-mission-steps .done {
  color: #065f46;
  background: #d1fae5;
}

.tester-mission-steps .todo {
  color: #475467;
  background: #f2f4f7;
}

.ops-row.tester-mission-row small {
  grid-column: 2 / -1;
  color: #475467;
  font-size: 12px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.tester-mission-copy-field {
  width: 100%;
  min-height: 140px;
  margin-top: 10px;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.12);
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal);
  font: inherit;
}

.retest-outreach-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 10px;
}

.retest-outreach-summary div {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: #fff;
}

.retest-outreach-summary span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.retest-outreach-summary strong {
  color: var(--charcoal);
  font-size: 16px;
}

.retest-outreach-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  margin-bottom: 10px;
}

.ops-row.retest-outreach-row {
  padding-left: 10px;
  border-left: 4px solid #2563eb;
  background: linear-gradient(90deg, rgba(239, 246, 255, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.retest-outreach-row.direct {
  border-left-color: var(--teal-strong);
  background: linear-gradient(90deg, rgba(236, 253, 245, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.retest-outreach-row.missing {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.retest-outreach-row.watch {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.retest-outreach-row .ops-link-status {
  max-width: 100%;
}

.retest-outreach-copy-field {
  width: 100%;
  min-height: 150px;
  margin-top: 10px;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.12);
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal);
  font: inherit;
}

.ticket-trust-retest-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 10px;
}

.ticket-trust-retest-summary div {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: #fff;
}

.ticket-trust-retest-summary span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.ticket-trust-retest-summary strong {
  color: var(--charcoal);
  font-size: 16px;
}

.ticket-trust-retest-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  margin-bottom: 10px;
}

.ops-row.ticket-trust-retest-row {
  padding-left: 10px;
  border-left: 4px solid #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.ticket-trust-retest-row.missing {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.ticket-trust-retest-row.missing span {
  background: var(--red);
}

.ops-row.ticket-trust-retest-row.watch {
  border-left-color: #d97706;
}

.ops-row.ticket-trust-retest-row.watch span {
  background: #d97706;
}

.ops-row.ticket-trust-retest-row.test {
  border-left-color: #2563eb;
  background: linear-gradient(90deg, rgba(239, 246, 255, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.ticket-trust-retest-row.test span {
  background: #2563eb;
}

.ticket-trust-retest-copy-field {
  width: 100%;
  min-height: 150px;
  margin-top: 10px;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.12);
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal);
  font: inherit;
}

.product-decision-hero {
  display: grid;
  gap: 6px;
  min-width: 0;
  margin: 12px 0;
  padding: 14px;
  border: 1px solid rgba(37, 99, 235, 0.16);
  border-left: 4px solid #2563eb;
  border-radius: 8px;
  background: linear-gradient(135deg, #eff6ff, #fff 74%);
}

.product-decision-hero.direct {
  border-color: rgba(28, 105, 102, 0.18);
  border-left-color: var(--teal);
  background: linear-gradient(135deg, #f4fbf8, #fff 74%);
}

.product-decision-hero.watch {
  border-color: rgba(217, 119, 6, 0.2);
  border-left-color: #d97706;
  background: linear-gradient(135deg, #fffaf0, #fff 74%);
}

.product-decision-hero span,
.product-decision-hero strong,
.product-decision-hero small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.product-decision-hero span {
  color: #2563eb;
  font-size: 12px;
  font-weight: 900;
}

.product-decision-hero.direct span {
  color: var(--teal);
}

.product-decision-hero.watch span {
  color: #92400e;
}

.product-decision-hero strong {
  color: var(--charcoal);
  font-size: 17px;
  line-height: 1.35;
}

.product-decision-hero small {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.product-decision-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 10px;
}

.product-decision-summary div {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: #fff;
}

.product-decision-summary span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.product-decision-summary strong {
  color: var(--charcoal);
  font-size: 16px;
}

.product-decision-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  margin-bottom: 10px;
}

.ops-row.product-decision-row {
  padding-left: 10px;
  border-left: 4px solid #2563eb;
  background: linear-gradient(90deg, rgba(239, 246, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.product-decision-row span {
  background: #2563eb;
}

.ops-row.product-decision-row.missing {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.product-decision-row.missing span {
  background: var(--red);
}

.ops-row.product-decision-row.watch {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.product-decision-row.watch span {
  background: #d97706;
}

.ops-row.product-decision-row.test {
  border-left-color: #7c3aed;
  background: linear-gradient(90deg, rgba(245, 243, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.product-decision-row.test span {
  background: #7c3aed;
}

.ops-row.product-decision-row.direct {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.product-decision-row.direct span {
  background: var(--teal);
}

.product-decision-copy-field {
  width: 100%;
  min-height: 170px;
  margin-top: 10px;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.12);
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal);
  font: inherit;
}

.today-focus-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin: 12px 0;
  padding: 14px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-left: 4px solid #2563eb;
  border-radius: 8px;
  background: linear-gradient(135deg, #eff6ff, #fff 76%);
}

.today-focus-head.missing {
  border-left-color: var(--red);
  background: linear-gradient(135deg, #fff0ed, #fff 76%);
}

.today-focus-head.test {
  border-left-color: #7c3aed;
  background: linear-gradient(135deg, #f5f3ff, #fff 76%);
}

.today-focus-head.direct {
  border-left-color: var(--teal);
  background: linear-gradient(135deg, #eefaf6, #fff 76%);
}

.today-focus-head div {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.today-focus-head span,
.today-focus-head strong,
.today-focus-head small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.today-focus-head span {
  color: #2563eb;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.today-focus-head.missing span {
  color: var(--red);
}

.today-focus-head.test span {
  color: #7c3aed;
}

.today-focus-head.direct span {
  color: var(--teal);
}

.today-focus-head strong {
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.35;
}

.today-focus-head small {
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.today-focus-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}

.today-focus-summary div {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: #fff;
}

.today-focus-summary span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.today-focus-summary strong {
  color: var(--charcoal);
  font-size: 16px;
}

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

.today-focus-row {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: start;
  padding: 12px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-left: 4px solid #2563eb;
  border-radius: 8px;
  background: linear-gradient(90deg, rgba(239, 246, 255, 0.94), rgba(255, 255, 255, 0.98));
}

.today-focus-row.missing {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.94), rgba(255, 255, 255, 0.98));
}

.today-focus-row.watch {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.94), rgba(255, 255, 255, 0.98));
}

.today-focus-row.test {
  border-left-color: #7c3aed;
  background: linear-gradient(90deg, rgba(245, 243, 255, 0.94), rgba(255, 255, 255, 0.98));
}

.today-focus-row.direct {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.94), rgba(255, 255, 255, 0.98));
}

.today-focus-row > span {
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 999px;
  background: #2563eb;
  color: #fff;
  font-size: 12px;
  font-weight: 900;
}

.today-focus-row.missing > span {
  background: var(--red);
}

.today-focus-row.watch > span {
  background: #d97706;
}

.today-focus-row.test > span {
  background: #7c3aed;
}

.today-focus-row.direct > span {
  background: var(--teal);
}

.today-focus-row div {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.today-focus-row strong,
.today-focus-row em,
.today-focus-row small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.today-focus-row strong {
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.today-focus-row em {
  color: #667085;
  font-size: 12px;
  font-style: normal;
}

.today-focus-row small {
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.today-focus-copy-field {
  width: 100%;
  min-height: 160px;
  margin-bottom: 10px;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.12);
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal);
  font: inherit;
}

.daily-test-focus-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin: 12px 0;
  padding: 14px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: linear-gradient(135deg, #eefaf6, #fff 72%);
}

.daily-test-focus-head div {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.daily-test-focus-head span,
.daily-test-focus-head strong,
.daily-test-focus-head small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.daily-test-focus-head span {
  color: var(--teal);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.daily-test-focus-head strong {
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.35;
}

.daily-test-focus-head small {
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.daily-test-focus-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}

.daily-test-focus-summary div {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: #fff;
}

.daily-test-focus-summary span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.daily-test-focus-summary strong {
  color: var(--charcoal);
  font-size: 16px;
  overflow-wrap: anywhere;
}

.daily-test-focus-list {
  display: grid;
  gap: 10px;
}

.daily-test-focus-row {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: start;
  padding: 12px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.94), rgba(255, 255, 255, 0.98));
}

.daily-test-focus-row.test {
  border-left-color: #7c3aed;
  background: linear-gradient(90deg, rgba(245, 243, 255, 0.94), rgba(255, 255, 255, 0.98));
}

.daily-test-focus-row.watch {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.94), rgba(255, 255, 255, 0.98));
}

.daily-test-focus-row.missing {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.94), rgba(255, 255, 255, 0.98));
}

.daily-test-focus-row > span {
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 999px;
  background: var(--teal);
  color: #fff;
  font-size: 12px;
  font-weight: 900;
}

.daily-test-focus-row.test > span {
  background: #7c3aed;
}

.daily-test-focus-row.watch > span {
  background: #d97706;
}

.daily-test-focus-row.missing > span {
  background: var(--red);
}

.daily-test-focus-row div {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.daily-test-focus-row strong,
.daily-test-focus-row em,
.daily-test-focus-row small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.daily-test-focus-row strong {
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.daily-test-focus-row em {
  color: #667085;
  font-size: 12px;
  font-style: normal;
}

.daily-test-focus-row small {
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.daily-test-checks {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.daily-test-checks span {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 8px;
  border-radius: 999px;
  background: rgba(15, 118, 110, 0.1);
  color: #0f766e;
  font-size: 11px;
  font-weight: 900;
}

.daily-test-focus-copy-field {
  width: 100%;
  min-height: 170px;
  margin-bottom: 10px;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.12);
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal);
  font: inherit;
}

.execution-board-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin: 12px 0;
  padding: 14px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-left: 4px solid #2563eb;
  border-radius: 8px;
  background: linear-gradient(135deg, #eff6ff, #fff 74%);
}

.execution-board-head div {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.execution-board-head span,
.execution-board-head strong,
.execution-board-head small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.execution-board-head span {
  color: #2563eb;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.execution-board-head strong {
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.35;
}

.execution-board-head small {
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.execution-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}

.execution-summary div {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: #fff;
}

.execution-summary span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.execution-summary strong {
  color: var(--charcoal);
  font-size: 16px;
  overflow-wrap: anywhere;
}

.execution-lane-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.execution-lane {
  display: grid;
  align-content: start;
  gap: 10px;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-left: 4px solid #2563eb;
  border-radius: 8px;
  background: #fff;
}

.execution-lane.missing {
  border-left-color: var(--red);
  background: linear-gradient(135deg, #fff7f5, #fff 76%);
}

.execution-lane.watch {
  border-left-color: #d97706;
  background: linear-gradient(135deg, #fffaf0, #fff 76%);
}

.execution-lane.test {
  border-left-color: #7c3aed;
  background: linear-gradient(135deg, #f5f3ff, #fff 76%);
}

.execution-lane.direct {
  border-left-color: var(--teal);
  background: linear-gradient(135deg, #f4fbf8, #fff 76%);
}

.execution-lane-head {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.execution-lane-head span {
  width: fit-content;
  padding: 3px 7px;
  border-radius: 999px;
  background: rgba(37, 99, 235, 0.1);
  color: #2563eb;
  font-size: 11px;
  font-weight: 900;
}

.execution-lane.missing .execution-lane-head span {
  background: rgba(191, 63, 50, 0.1);
  color: var(--red);
}

.execution-lane.watch .execution-lane-head span {
  background: rgba(217, 119, 6, 0.1);
  color: #92400e;
}

.execution-lane.test .execution-lane-head span {
  background: rgba(124, 58, 237, 0.1);
  color: #6d28d9;
}

.execution-lane.direct .execution-lane-head span {
  background: var(--teal-soft);
  color: var(--teal);
}

.execution-lane-head strong {
  color: var(--charcoal);
  font-size: 15px;
}

.execution-lane-head small,
.execution-lane p,
.execution-lane em {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.execution-lane p,
.execution-lane em {
  margin: 0;
}

.execution-lane em {
  font-style: normal;
}

.execution-task-list {
  display: grid;
  gap: 8px;
}

.execution-task {
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr) auto;
  gap: 8px;
  align-items: start;
  min-width: 0;
  padding: 9px;
  border: 1px solid rgba(16, 24, 32, 0.07);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.82);
}

.execution-task > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: #2563eb;
  color: #fff;
  font-size: 11px;
  font-weight: 900;
}

.execution-task.missing > span {
  background: var(--red);
}

.execution-task.watch > span {
  background: #d97706;
}

.execution-task.test > span {
  background: #7c3aed;
}

.execution-task.direct > span {
  background: var(--teal);
}

.execution-task.doing {
  border-color: rgba(124, 58, 237, 0.2);
  box-shadow: inset 0 0 0 1px rgba(124, 58, 237, 0.06);
}

.execution-task.retest {
  border-color: rgba(191, 63, 50, 0.2);
  box-shadow: inset 0 0 0 1px rgba(191, 63, 50, 0.06);
}

.execution-task.done {
  border-color: rgba(28, 105, 102, 0.18);
  background: rgba(244, 251, 248, 0.86);
}

.execution-task div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.execution-task strong,
.execution-task em,
.execution-task small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.execution-task strong {
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
}

.execution-task em,
.execution-task small {
  color: #667085;
  font-size: 12px;
  font-style: normal;
  line-height: 1.4;
}

.execution-task .text-button {
  align-self: start;
  white-space: nowrap;
}

.execution-status-row {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  min-width: 0;
  margin-top: 4px;
}

.execution-status-button {
  min-height: 26px;
  padding: 4px 8px;
  border: 1px solid rgba(16, 24, 32, 0.12);
  border-radius: 999px;
  background: #fff;
  color: #475467;
  font: inherit;
  font-size: 11px;
  font-weight: 900;
  cursor: pointer;
}

.execution-status-button:hover {
  border-color: rgba(37, 99, 235, 0.35);
  color: #2563eb;
}

.execution-status-button.active {
  border-color: rgba(37, 99, 235, 0.18);
  background: rgba(37, 99, 235, 0.1);
  color: #2563eb;
}

.execution-status-button[data-product-execution-status="doing"].active {
  border-color: rgba(124, 58, 237, 0.2);
  background: rgba(124, 58, 237, 0.1);
  color: #6d28d9;
}

.execution-status-button[data-product-execution-status="retest"].active {
  border-color: rgba(191, 63, 50, 0.2);
  background: rgba(191, 63, 50, 0.1);
  color: var(--red);
}

.execution-status-button[data-product-execution-status="done"].active {
  border-color: rgba(28, 105, 102, 0.18);
  background: var(--teal-soft);
  color: var(--teal);
}

.execution-empty {
  padding: 12px;
  border: 1px dashed rgba(16, 24, 32, 0.14);
  border-radius: 8px;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.product-execution-copy-field {
  width: 100%;
  min-height: 180px;
  margin: 10px 0 12px;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.12);
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal);
  font: inherit;
}

.execution-retest-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 12px 0 10px;
}

.execution-retest-summary div {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: #fff;
}

.execution-retest-summary span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.execution-retest-summary strong {
  color: var(--charcoal);
  font-size: 16px;
}

.execution-retest-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  margin-bottom: 10px;
}

.ops-row.execution-retest-row {
  padding-left: 10px;
  border-left: 4px solid #2563eb;
  background: linear-gradient(90deg, rgba(239, 246, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.execution-retest-row.visual {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.execution-retest-row.ticket {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.execution-retest-row.search {
  border-left-color: #2563eb;
}

.ops-row.execution-retest-row.mobile {
  border-left-color: #7c3aed;
  background: linear-gradient(90deg, rgba(245, 243, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.execution-retest-row.direct {
  border-left-color: var(--teal);
}

.ops-row.execution-retest-row.missing {
  border-left-color: var(--red);
}

.ops-row.execution-retest-row.test {
  border-left-color: #7c3aed;
}

.execution-retest-result-pill {
  flex: 0 0 auto;
  padding: 5px 8px;
  border: 1px solid rgba(16, 24, 32, 0.1);
  border-radius: 999px;
  background: #fff;
  color: #667085;
  font-size: 11px;
  font-weight: 900;
  white-space: nowrap;
}

.execution-retest-result-pill.direct {
  border-color: rgba(28, 105, 102, 0.18);
  background: var(--teal-soft);
  color: var(--teal);
}

.execution-retest-result-pill.missing {
  border-color: rgba(191, 63, 50, 0.18);
  background: rgba(191, 63, 50, 0.08);
  color: var(--red);
}

.execution-retest-result-pill.test {
  border-color: rgba(124, 58, 237, 0.18);
  background: rgba(124, 58, 237, 0.08);
  color: #6d28d9;
}

.execution-retest-result-actions {
  display: flex;
  flex: 1 1 190px;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 5px;
  min-width: 0;
}

.execution-retest-result-button {
  min-height: 26px;
  padding: 4px 8px;
  border: 1px solid rgba(16, 24, 32, 0.12);
  border-radius: 999px;
  background: #fff;
  color: #475467;
  font: inherit;
  font-size: 11px;
  font-weight: 900;
  cursor: pointer;
}

.execution-retest-result-button:hover {
  border-color: rgba(37, 99, 235, 0.35);
  color: #2563eb;
}

.execution-retest-result-button.active {
  border-color: rgba(37, 99, 235, 0.18);
  background: rgba(37, 99, 235, 0.1);
  color: #2563eb;
}

.execution-retest-result-button[data-execution-retest-result="pass"].active {
  border-color: rgba(28, 105, 102, 0.18);
  background: var(--teal-soft);
  color: var(--teal);
}

.execution-retest-result-button[data-execution-retest-result="fail"].active {
  border-color: rgba(191, 63, 50, 0.2);
  background: rgba(191, 63, 50, 0.1);
  color: var(--red);
}

.execution-retest-result-button[data-execution-retest-result="revise"].active {
  border-color: rgba(124, 58, 237, 0.2);
  background: rgba(124, 58, 237, 0.1);
  color: #6d28d9;
}

.execution-retest-copy-field {
  width: 100%;
  min-height: 170px;
  margin: 10px 0 12px;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.12);
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal);
  font: inherit;
}

.tester-note-list {
  display: grid;
  gap: 8px;
  margin-top: 12px;
}

.tester-note {
  display: grid;
  gap: 5px;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: #fff;
}

.tester-note strong,
.tester-note span,
.tester-note small,
.tester-note p {
  min-width: 0;
  overflow-wrap: anywhere;
}

.tester-note strong {
  color: var(--charcoal);
  font-size: 13px;
}

.tester-note span,
.tester-note small {
  color: #667085;
  font-size: 12px;
}

.tester-note p {
  margin: 0;
  color: #344054;
  font-size: 13px;
  line-height: 1.5;
}

.ops-row.commercial-row {
  padding-left: 10px;
  border-left: 4px solid #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.86), rgba(255, 255, 255, 0));
}

.ops-row.commercial-row span {
  background: #d97706;
}

.ops-row.commercial-row.affiliate {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.86), rgba(255, 255, 255, 0));
}

.ops-row.commercial-row.affiliate span {
  background: var(--teal);
}

.ops-row.commercial-row.consult {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.88), rgba(255, 255, 255, 0));
}

.ops-row.commercial-row.consult span {
  background: var(--red);
}

.ops-row.commercial-row.itinerary {
  border-left-color: var(--gold);
  background: linear-gradient(90deg, rgba(255, 246, 223, 0.88), rgba(255, 255, 255, 0));
}

.ops-row.commercial-row.itinerary span {
  background: var(--gold);
}

.ops-row.commercial-row.reminder {
  border-left-color: #7c3aed;
  background: linear-gradient(90deg, rgba(245, 243, 255, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.commercial-row.reminder span {
  background: #7c3aed;
}

.ops-row.commercial-row b {
  color: #92400e;
}

.ops-row.commercial-row.affiliate b {
  color: var(--teal-strong);
}

.ops-row.commercial-row.consult b {
  color: var(--red);
}

.ops-row.ticket-blueprint-row {
  padding-left: 10px;
  border-left: 4px solid #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.ticket-blueprint-row span {
  background: #d97706;
}

.ops-row.ticket-blueprint-row.ready {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.ticket-blueprint-row.ready span {
  background: var(--teal);
}

.ops-row.ticket-blueprint-row.risk {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.ticket-blueprint-row.risk span {
  background: var(--red);
}

.ops-row.ticket-blueprint-row b {
  color: #92400e;
}

.ops-row.ticket-blueprint-row.ready b {
  color: var(--teal-strong);
}

.ops-row.ticket-blueprint-row.risk b {
  color: var(--red);
}

.ops-row.source-dossier-row {
  padding-left: 10px;
  border-left: 4px solid #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.source-dossier-row span {
  background: #d97706;
}

.ops-row.source-dossier-row.ready {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.source-dossier-row.ready span {
  background: var(--teal);
}

.ops-row.source-dossier-row.risk {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.source-dossier-row.risk span {
  background: var(--red);
}

.ops-row.source-dossier-row b {
  color: #92400e;
}

.ops-row.source-dossier-row.ready b {
  color: var(--teal-strong);
}

.ops-row.source-dossier-row.risk b {
  color: var(--red);
}

.detail-readiness-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 12px;
}

.detail-readiness-summary div {
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fbfaf7;
}

.detail-readiness-summary span,
.detail-readiness-summary strong,
.detail-readiness-summary small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-readiness-summary span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.detail-readiness-summary strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.25;
}

.detail-readiness-summary small {
  margin-top: 5px;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

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

.detail-readiness-copy-field {
  width: 100%;
  min-height: 180px;
  margin-top: 12px;
  resize: vertical;
  padding: 12px;
  border: 1px solid rgba(16, 24, 32, 0.14);
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal);
  font: 13px/1.55 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.research-trail-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 12px;
}

.research-trail-summary div {
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fbfaf7;
}

.research-trail-summary span,
.research-trail-summary strong,
.research-trail-summary small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.research-trail-summary span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.research-trail-summary strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.25;
}

.research-trail-summary small {
  margin-top: 5px;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.research-trail-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 12px;
}

.research-trail-copy-field {
  width: 100%;
  min-height: 180px;
  margin-top: 12px;
  resize: vertical;
  padding: 12px;
  border: 1px solid rgba(16, 24, 32, 0.14);
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal);
  font: 13px/1.55 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.official-handoff-summary {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 12px;
}

.official-handoff-summary div {
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #f8fafc;
}

.official-handoff-summary span,
.official-handoff-summary strong,
.official-handoff-summary small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.official-handoff-summary span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.official-handoff-summary strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.25;
}

.official-handoff-summary small {
  margin-top: 5px;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.official-handoff-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 12px;
}

.official-handoff-copy-field {
  width: 100%;
  min-height: 180px;
  margin-top: 12px;
  resize: vertical;
  padding: 12px;
  border: 1px solid rgba(16, 24, 32, 0.14);
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal);
  font: 13px/1.55 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.next-entry-flow-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 12px;
}

.next-entry-flow-summary div {
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #f8fafc;
}

.next-entry-flow-summary span,
.next-entry-flow-summary strong,
.next-entry-flow-summary small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.next-entry-flow-summary span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.next-entry-flow-summary strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.25;
}

.next-entry-flow-summary small {
  margin-top: 5px;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.next-entry-flow-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 12px;
}

.next-entry-flow-copy-field {
  width: 100%;
  min-height: 180px;
  margin-top: 12px;
  resize: vertical;
  padding: 12px;
  border: 1px solid rgba(16, 24, 32, 0.14);
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal);
  font: 13px/1.55 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.ops-row.detail-readiness-row {
  padding-left: 10px;
  border-left: 4px solid #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.detail-readiness-row > span {
  background: #d97706;
}

.ops-row.detail-readiness-row.ready {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.detail-readiness-row.ready > span {
  background: var(--teal);
}

.ops-row.detail-readiness-row.risk {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.detail-readiness-row.risk > span {
  background: var(--red);
}

.ops-row.detail-readiness-row > small {
  grid-column: 2 / -1;
  min-width: 0;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.ops-row.detail-readiness-row b {
  color: #92400e;
}

.ops-row.detail-readiness-row.ready b {
  color: var(--teal-strong);
}

.ops-row.detail-readiness-row.risk b {
  color: var(--red);
}

.ops-row.research-trail-row {
  padding-left: 10px;
  border-left: 4px solid var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.research-trail-row > span {
  background: var(--teal);
}

.ops-row.research-trail-row.ticket {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.research-trail-row.ticket > span {
  background: #d97706;
}

.ops-row.research-trail-row.rights {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.research-trail-row.rights > span {
  background: var(--red);
}

.ops-row.research-trail-row b {
  color: var(--teal-strong);
}

.ops-row.research-trail-row.ticket b {
  color: #92400e;
}

.ops-row.research-trail-row.rights b {
  color: var(--red);
}

.ops-row.official-handoff-row {
  padding-left: 10px;
  border-left: 4px solid #475467;
  background: linear-gradient(90deg, rgba(248, 250, 252, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.official-handoff-row > span {
  background: #475467;
}

.ops-row.official-handoff-row.ready {
  border-left-color: #2563eb;
  background: linear-gradient(90deg, rgba(239, 246, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.official-handoff-row.ready > span {
  background: #2563eb;
}

.ops-row.official-handoff-row.queue {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 251, 235, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.official-handoff-row.queue > span {
  background: #d97706;
}

.ops-row.official-handoff-row b {
  color: #1d4ed8;
}

.ops-row.official-handoff-row.queue b {
  color: #92400e;
}

.ops-row.next-entry-flow-row {
  padding-left: 10px;
  border-left: 4px solid #2563eb;
  background: linear-gradient(90deg, rgba(239, 246, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.next-entry-flow-row > span {
  background: #2563eb;
}

.ops-row.next-entry-flow-row.ready {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(240, 253, 250, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.next-entry-flow-row.ready > span {
  background: var(--teal);
}

.ops-row.next-entry-flow-row.watch {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 251, 235, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.next-entry-flow-row.watch > span {
  background: #d97706;
}

.ops-row.next-entry-flow-row.risk {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.next-entry-flow-row.risk > span {
  background: var(--red);
}

.ops-row.next-entry-flow-row b {
  color: #1d4ed8;
}

.ops-row.next-entry-flow-row.ready b {
  color: var(--teal-strong);
}

.ops-row.next-entry-flow-row.watch b {
  color: #92400e;
}

.ops-row.next-entry-flow-row.risk b {
  color: var(--red);
}

.ops-row.source-advance-row {
  padding-left: 10px;
  border-left: 4px solid var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.source-advance-row span {
  background: var(--teal);
}

.ops-row.source-advance-row.watch {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.source-advance-row.watch span {
  background: #d97706;
}

.ops-row.source-advance-row.risk {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.source-advance-row.risk span {
  background: var(--red);
}

.ops-row.source-advance-row b {
  color: var(--teal-strong);
}

.ops-row.source-advance-row.watch b {
  color: #92400e;
}

.ops-row.source-advance-row.risk b {
  color: var(--red);
}

.ops-row.source-verification-row {
  padding-left: 10px;
  border-left: 4px solid #0f766e;
  background: linear-gradient(90deg, rgba(240, 253, 250, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.source-verification-row span {
  background: #0f766e;
}

.ops-row.source-verification-row.watch {
  border-left-color: #2563eb;
  background: linear-gradient(90deg, rgba(239, 246, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.source-verification-row.watch span {
  background: #2563eb;
}

.ops-row.source-verification-row.risk {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 251, 235, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.source-verification-row.risk span {
  background: #d97706;
}

.ops-row.source-verification-row b {
  color: #0f766e;
}

.ops-row.source-verification-row.watch b {
  color: #1d4ed8;
}

.ops-row.source-verification-row.risk b {
  color: #92400e;
}

.ops-row.source-risk-row {
  padding-left: 10px;
  border-left: 4px solid #475467;
  background: linear-gradient(90deg, rgba(248, 250, 252, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.source-risk-row span {
  background: #475467;
}

.ops-row.source-risk-row.danger {
  border-left-color: #dc2626;
  background: linear-gradient(90deg, rgba(254, 242, 242, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.source-risk-row.danger span {
  background: #dc2626;
}

.ops-row.source-risk-row.risk,
.ops-row.source-risk-row.test,
.ops-row.source-risk-row.missing {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 251, 235, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.source-risk-row.risk span,
.ops-row.source-risk-row.test span,
.ops-row.source-risk-row.missing span {
  background: #d97706;
}

.ops-row.source-risk-row.review {
  border-left-color: #7c3aed;
  background: linear-gradient(90deg, rgba(245, 243, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.source-risk-row.review span {
  background: #7c3aed;
}

.ops-row.source-risk-row.notice {
  border-left-color: #2563eb;
  background: linear-gradient(90deg, rgba(239, 246, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.source-risk-row.notice span {
  background: #2563eb;
}

.ops-row.source-risk-row.safe {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(240, 253, 250, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.source-risk-row.safe span {
  background: var(--teal);
}

.ops-row.ticket-health-row {
  padding-left: 10px;
  border-left: 4px solid #475467;
  background: linear-gradient(90deg, rgba(248, 250, 252, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.ticket-health-row span {
  background: #475467;
}

.ops-row.ticket-health-row.ready,
.ops-row.ticket-health-row.checked {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(240, 253, 250, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.ticket-health-row.ready span,
.ops-row.ticket-health-row.checked span {
  background: var(--teal);
}

.ops-row.ticket-health-row.risk,
.ops-row.ticket-health-row.missing {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 251, 235, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.ticket-health-row.risk span,
.ops-row.ticket-health-row.missing span {
  background: #d97706;
}

.ops-row.ticket-health-row.review {
  border-left-color: #7c3aed;
  background: linear-gradient(90deg, rgba(245, 243, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.ticket-health-row.review span {
  background: #7c3aed;
}

.ops-row.ticket-health-row.notice {
  border-left-color: #2563eb;
  background: linear-gradient(90deg, rgba(239, 246, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.ticket-health-row.notice span {
  background: #2563eb;
}

.ops-row.ticket-health-row.danger {
  border-left-color: #dc2626;
  background: linear-gradient(90deg, rgba(254, 242, 242, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.ticket-health-row.danger span {
  background: #dc2626;
}

.ops-row.ticket-backfill-row {
  align-items: flex-start;
  padding-left: 10px;
  border-left: 4px solid #d97706;
  background: linear-gradient(90deg, rgba(255, 251, 235, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.ticket-backfill-row span {
  background: #d97706;
}

.ops-row.ticket-backfill-row.danger {
  border-left-color: #dc2626;
  background: linear-gradient(90deg, rgba(254, 242, 242, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.ticket-backfill-row.danger span {
  background: #dc2626;
}

.ops-row.ticket-backfill-row.review {
  border-left-color: #7c3aed;
  background: linear-gradient(90deg, rgba(245, 243, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.ticket-backfill-row.review span {
  background: #7c3aed;
}

.ops-row.ticket-backfill-row.notice {
  border-left-color: #2563eb;
  background: linear-gradient(90deg, rgba(239, 246, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.ticket-backfill-row.notice span {
  background: #2563eb;
}

.ops-row.ticket-entry-review-row {
  padding-left: 10px;
  border-left: 4px solid #2563eb;
  background: linear-gradient(90deg, rgba(239, 246, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.ticket-entry-review-row span {
  background: #2563eb;
}

.ops-row.ticket-entry-review-row.safe {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(240, 253, 250, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.ticket-entry-review-row.safe span {
  background: var(--teal);
}

.ops-row.ticket-entry-review-row.danger,
.ops-row.ticket-entry-review-row.risk {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 251, 235, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.ticket-entry-review-row.danger span,
.ops-row.ticket-entry-review-row.risk span {
  background: #d97706;
}

.ops-row.entry-sample-row {
  padding-left: 10px;
  border-left: 4px solid #2563eb;
  background: linear-gradient(90deg, rgba(239, 246, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.entry-sample-row span {
  background: #2563eb;
}

.ops-row.entry-sample-row.risk,
.ops-row.entry-sample-row.test,
.ops-row.entry-sample-row.missing {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 251, 235, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.entry-sample-row.risk span,
.ops-row.entry-sample-row.test span,
.ops-row.entry-sample-row.missing span {
  background: #d97706;
}

.ops-row.entry-sample-row.done,
.ops-row.entry-sample-row.safe {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(240, 253, 250, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.entry-sample-row.done span,
.ops-row.entry-sample-row.safe span {
  background: var(--teal);
}

.launch-handoff-summary {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
  margin: 14px 0;
}

.launch-handoff-summary div {
  min-height: 86px;
  padding: 12px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 8px;
  background: #f8fafc;
}

.launch-handoff-summary span,
.launch-handoff-summary small {
  display: block;
  color: var(--muted);
  font-size: 0.72rem;
}

.launch-handoff-summary strong {
  display: block;
  margin: 4px 0;
  color: var(--ink);
  font-size: 1.45rem;
  line-height: 1.1;
}

.launch-handoff-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 8px 0 12px;
}

.source-advance-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin: 12px 0;
  padding: 14px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: linear-gradient(135deg, #eefaf6, #fff 74%);
}

.source-advance-head.watch {
  border-left-color: #d97706;
  background: linear-gradient(135deg, #fffaf0, #fff 74%);
}

.source-advance-head div {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.source-advance-head span,
.source-advance-head strong,
.source-advance-head small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.source-advance-head span {
  color: var(--teal);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.source-advance-head.watch span {
  color: #92400e;
}

.source-advance-head strong {
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.35;
}

.source-advance-head small {
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.source-advance-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}

.source-advance-summary div {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: #f4fbf8;
}

.source-advance-summary span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.source-advance-summary strong {
  color: var(--charcoal);
  font-size: 16px;
}

.source-verification-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin: 12px 0;
  padding: 14px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-left: 4px solid #0f766e;
  border-radius: 8px;
  background: linear-gradient(135deg, #f0fdfa, #fff 74%);
}

.source-verification-head div {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.source-verification-head span,
.source-verification-head strong,
.source-verification-head small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.source-verification-head span {
  color: #0f766e;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.source-verification-head strong {
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.35;
}

.source-verification-head small {
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.source-verification-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}

.source-verification-summary div {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: #f2fbf9;
}

.source-verification-summary span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.source-verification-summary strong {
  color: var(--charcoal);
  font-size: 16px;
}

.source-risk-summary,
.source-risk-domain-grid,
.ticket-health-summary,
.ticket-backfill-summary {
  display: grid;
  gap: 10px;
  margin-bottom: 12px;
}

.source-risk-summary {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.source-risk-domain-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.ticket-health-summary {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ticket-backfill-summary {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.source-risk-summary div,
.source-risk-domain-grid div,
.ticket-health-summary div,
.ticket-backfill-summary div {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: #f8fafc;
}

.source-risk-summary div:first-child {
  background: #fff1f2;
}

.ticket-health-summary div {
  border-left: 4px solid #d97706;
  background: #fffbeb;
}

.ticket-health-summary div:first-child {
  border-left-color: var(--teal);
  background: #f0fdfa;
}

.ticket-health-summary div:nth-child(3) {
  border-left-color: #7c3aed;
  background: #f5f3ff;
}

.ticket-health-summary div:nth-child(4) {
  border-left-color: var(--coral);
  background: #fff1f2;
}

.ticket-backfill-summary div {
  border-left: 4px solid #d97706;
  background: #fffbeb;
}

.ticket-backfill-summary div:first-child {
  border-left-color: var(--teal);
  background: #f0fdfa;
}

.ticket-backfill-summary div:nth-child(2) {
  border-left-color: #dc2626;
  background: #fff1f2;
}

.ticket-backfill-summary div:nth-child(3) {
  border-left-color: #2563eb;
  background: #eff6ff;
}

.source-risk-summary span,
.source-risk-domain-grid span,
.source-risk-domain-grid small,
.ticket-health-summary span,
.ticket-health-summary small,
.ticket-backfill-summary span,
.ticket-backfill-summary small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
  overflow-wrap: anywhere;
}

.source-risk-summary strong,
.source-risk-domain-grid strong,
.ticket-health-summary strong,
.ticket-backfill-summary strong {
  color: var(--charcoal);
  font-size: 16px;
}

.source-risk-actions,
.ticket-health-actions,
.ticket-backfill-actions,
.test-scenario-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 8px 0 12px;
}

.ticket-evidence-summary {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}

.ticket-evidence-summary div {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-left: 4px solid #64748b;
  border-radius: 8px;
  background: #f8fafc;
}

.ticket-evidence-summary div:nth-child(2) {
  border-left-color: var(--teal);
  background: #f0fdfa;
}

.ticket-evidence-summary div:nth-child(5) {
  border-left-color: var(--coral);
  background: #fff1f2;
}

.ticket-evidence-summary span,
.ticket-evidence-summary small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
  overflow-wrap: anywhere;
}

.ticket-evidence-summary strong {
  color: var(--charcoal);
  font-size: 16px;
}

.ticket-evidence-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 8px 0 12px;
}

.ops-row.ticket-evidence-row {
  align-items: flex-start;
  padding-left: 10px;
  border-left: 4px solid #667085;
}

.ops-row.ticket-evidence-row.ready {
  border-left-color: var(--teal);
  background: #f0fdfa;
}

.ops-row.ticket-evidence-row.checked {
  border-left-color: #2563eb;
  background: #eff6ff;
}

.ops-row.ticket-evidence-row.candidate {
  border-left-color: #f59e0b;
  background: #fffbeb;
}

.ops-row.ticket-evidence-row.danger {
  border-left-color: var(--coral);
  background: #fff1f2;
}

.ops-row.ticket-evidence-row.ready span {
  color: #0f766e;
}

.ops-row.ticket-evidence-row.checked span {
  color: #2563eb;
}

.ops-row.ticket-evidence-row.candidate span {
  color: #92400e;
}

.ops-row.ticket-evidence-row.danger span {
  color: #be123c;
}

.ops-row.ticket-evidence-row small {
  grid-column: 2 / -1;
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.ticket-entry-review-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}

.ticket-entry-review-summary div {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: #f6fbff;
}

.ticket-entry-review-summary span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.ticket-entry-review-summary strong {
  color: var(--charcoal);
  font-size: 16px;
}

.ticket-entry-review-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin: 12px 0;
  padding: 14px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-left: 4px solid #2563eb;
  border-radius: 8px;
  background: linear-gradient(135deg, #eff6ff, #fff 74%);
}

.ticket-entry-review-head div {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.ticket-entry-review-head span,
.ticket-entry-review-head strong,
.ticket-entry-review-head small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.ticket-entry-review-head span {
  color: #2563eb;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.ticket-entry-review-head strong {
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.35;
}

.ticket-entry-review-head small {
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.entry-sample-summary {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}

.entry-sample-summary div {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: #f7fbff;
}

.entry-sample-summary span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.entry-sample-summary strong {
  color: var(--charcoal);
  font-size: 16px;
}

.entry-sample-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 8px 0 12px;
}

.entry-sample-status-board {
  display: grid;
  gap: 10px;
  margin: 10px 0 14px;
  padding: 14px;
  border: 1px solid rgba(20, 184, 166, 0.16);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: linear-gradient(135deg, #eefaf6, #fff 76%);
}

.entry-sample-status-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.entry-sample-status-head div {
  min-width: 0;
}

.entry-sample-status-head span,
.entry-sample-status-head strong,
.entry-sample-status-head small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.entry-sample-status-head span {
  color: var(--teal);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.entry-sample-status-head strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.35;
}

.entry-sample-status-head small {
  margin-top: 4px;
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.entry-sample-stage-grid,
.entry-sample-next-list {
  display: grid;
  gap: 8px;
}

.entry-sample-stage-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.entry-sample-stage {
  min-width: 0;
  min-height: 92px;
  padding: 11px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.86);
}

.entry-sample-stage span,
.entry-sample-stage strong,
.entry-sample-stage small,
.entry-sample-next-item span,
.entry-sample-next-item strong,
.entry-sample-next-item small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.entry-sample-stage span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.entry-sample-stage strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 22px;
  line-height: 1;
}

.entry-sample-stage small {
  margin-top: 7px;
  color: #667085;
  font-size: 11px;
  line-height: 1.4;
}

.entry-sample-next-list {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.entry-sample-next-item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 6px 8px;
  min-width: 0;
  min-height: 86px;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.9);
  text-align: left;
  cursor: pointer;
}

.entry-sample-next-item:hover {
  border-color: rgba(20, 184, 166, 0.3);
  background: #fff;
}

.entry-sample-next-item span {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: var(--teal);
  color: #fff;
  font-size: 11px;
  font-weight: 900;
}

.entry-sample-next-item strong {
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
}

.entry-sample-next-item small {
  grid-column: 2;
  color: #667085;
  font-size: 11px;
  line-height: 1.4;
}

.entry-sample-sprint {
  display: grid;
  gap: 10px;
  margin: 10px 0 14px;
  padding: 14px;
  border: 1px solid rgba(37, 99, 235, 0.16);
  border-left: 4px solid #2563eb;
  border-radius: 8px;
  background: linear-gradient(135deg, #eff6ff, #fff 76%);
}

.entry-sample-sprint-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.entry-sample-sprint-head div {
  min-width: 0;
}

.entry-sample-sprint-head span,
.entry-sample-sprint-head strong,
.entry-sample-sprint-head small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.entry-sample-sprint-head span {
  color: #2563eb;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.entry-sample-sprint-head strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.35;
}

.entry-sample-sprint-head small {
  margin-top: 4px;
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.entry-sample-sprint-list {
  display: grid;
  gap: 8px;
}

.entry-sample-sprint-row {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.86);
}

.entry-sample-sprint-row > span {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: #2563eb;
  color: #fff;
  font-size: 12px;
  font-weight: 900;
}

.entry-sample-sprint-row strong,
.entry-sample-sprint-row em,
.entry-sample-sprint-row small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.entry-sample-sprint-row strong {
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
}

.entry-sample-sprint-row em,
.entry-sample-sprint-row small {
  margin-top: 3px;
  color: #667085;
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}

.entry-sample-status-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.entry-sample-status-button {
  min-height: 30px;
  padding: 0 9px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  color: #475467;
  font-size: 11px;
  font-weight: 900;
  cursor: pointer;
}

.entry-sample-status-button.active {
  border-color: #2563eb;
  background: #eff6ff;
  color: #1d4ed8;
}

.entry-sample-research-pill {
  flex: 0 0 auto;
  padding: 6px 9px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  color: #667085;
  font-size: 11px;
  font-weight: 900;
  white-space: nowrap;
}

.entry-sample-research-pill.active {
  border-color: rgba(28, 105, 102, 0.18);
  background: var(--teal-soft);
  color: var(--teal);
}

.intake-helper-actions,
.ticket-intake-actions,
.reality-actions,
.workflow-actions,
.publish-actions,
.import-sim-actions,
.intent-actions,
.reminder-workbench-actions,
.followup-playbook-actions,
.followup-status-actions,
.test-recap-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 8px 0 12px;
}

.launch-handoff-copy-field,
.launch-handoff-summary-field,
.source-advance-copy-field,
.source-verification-copy-field,
.source-risk-copy-field,
.ticket-entry-review-copy-field,
.ticket-entry-evidence-copy-field,
.entry-sample-copy-field,
.entry-sample-status-copy-field,
.ticket-intake-copy-field,
.reality-priority-copy-field,
.reality-heatmap-copy-field,
.reality-workflow-copy-field,
.publish-checklist-copy-field,
.publish-json-copy-field,
.intent-subscription-copy-field,
.reminder-workbench-copy-field,
.followup-playbook-copy-field,
.followup-status-copy-field,
.test-recap-copy-field,
.import-simulation-copy-field,
.import-simulation-json-field {
  width: 100%;
  min-height: 180px;
  margin-top: 10px;
  padding: 12px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #ffffff;
  color: var(--ink);
  font: inherit;
  resize: vertical;
}

.intent-summary,
.reminder-workbench-summary,
.followup-playbook-summary,
.followup-status-summary,
.test-recap-summary {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  margin: 12px 0;
}

.reminder-workbench-summary {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.followup-playbook-summary {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.followup-status-summary {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.test-recap-summary {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.intent-summary div,
.reminder-workbench-summary div,
.followup-playbook-summary div,
.followup-status-summary div,
.test-recap-summary div {
  min-width: 0;
  min-height: 78px;
  padding: 11px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 8px;
  background: #f8fafc;
}

.reminder-workbench-summary div {
  background: #f7f5fb;
}

.followup-playbook-summary div {
  background: #f4fbf8;
}

.followup-status-summary div {
  background: #f8fafc;
}

.test-recap-summary div {
  background: #fff7f5;
}

.intent-summary span,
.intent-summary strong,
.reminder-workbench-summary span,
.reminder-workbench-summary strong,
.followup-playbook-summary span,
.followup-playbook-summary strong,
.followup-status-summary span,
.followup-status-summary strong,
.test-recap-summary span,
.test-recap-summary strong {
  display: block;
  min-width: 0;
}

.intent-summary span,
.reminder-workbench-summary span,
.followup-playbook-summary span,
.followup-status-summary span,
.test-recap-summary span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
}

.intent-summary strong,
.reminder-workbench-summary strong,
.followup-playbook-summary strong,
.followup-status-summary strong,
.test-recap-summary strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 22px;
  line-height: 1;
}

.ops-row.intent-row {
  padding-left: 10px;
  border-left: 4px solid #7c3aed;
  background: linear-gradient(90deg, rgba(245, 243, 255, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.intent-row span {
  background: #7c3aed;
}

.ops-row.intent-row.direct {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.intent-row.direct span {
  background: var(--red);
}

.ops-row.intent-row.missing {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.intent-row.missing span {
  background: #d97706;
}

.ops-row.intent-row.itinerary {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.intent-row.itinerary span {
  background: var(--teal);
}

.ops-row.intent-row b {
  color: #6d28d9;
}

.ops-row.intent-row.direct b {
  color: var(--red);
}

.ops-row.intent-row.missing b {
  color: #92400e;
}

.ops-row.reminder-workbench-row {
  padding-left: 10px;
  border-left: 4px solid #7c3aed;
  background: linear-gradient(90deg, rgba(245, 243, 255, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.reminder-workbench-row span {
  background: #7c3aed;
}

.ops-row.reminder-workbench-row.direct {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.reminder-workbench-row.direct span {
  background: var(--red);
}

.ops-row.reminder-workbench-row.reminder {
  border-left-color: #7c3aed;
  background: linear-gradient(90deg, rgba(245, 243, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.reminder-workbench-row.reminder span {
  background: #7c3aed;
}

.ops-row.reminder-workbench-row.missing {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.reminder-workbench-row.missing span {
  background: #d97706;
}

.ops-row.reminder-workbench-row.source {
  border-left-color: #2563eb;
  background: linear-gradient(90deg, rgba(239, 246, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.reminder-workbench-row.source span {
  background: #2563eb;
}

.ops-row.reminder-workbench-row.itinerary {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.reminder-workbench-row.itinerary span {
  background: var(--teal);
}

.ops-row.reminder-workbench-row b {
  color: #6d28d9;
}

.ops-row.reminder-workbench-row.direct b {
  color: var(--red);
}

.ops-row.reminder-workbench-row.missing b {
  color: #92400e;
}

.ops-row.reminder-workbench-row.source b {
  color: #1d4ed8;
}

.ops-row.reminder-workbench-row.itinerary b {
  color: var(--teal-strong);
}

.ops-row.followup-playbook-row {
  padding-left: 10px;
  border-left: 4px solid #7c3aed;
  background: linear-gradient(90deg, rgba(245, 243, 255, 0.88), rgba(255, 255, 255, 0));
}

.ops-row.followup-playbook-row span {
  background: #7c3aed;
}

.ops-row.followup-playbook-row.direct {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.followup-playbook-row.direct span {
  background: var(--red);
}

.ops-row.followup-playbook-row.reminder {
  border-left-color: #7c3aed;
  background: linear-gradient(90deg, rgba(245, 243, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.followup-playbook-row.reminder span {
  background: #7c3aed;
}

.ops-row.followup-playbook-row.missing {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.followup-playbook-row.missing span {
  background: #d97706;
}

.ops-row.followup-playbook-row.source {
  border-left-color: #2563eb;
  background: linear-gradient(90deg, rgba(239, 246, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.followup-playbook-row.source span {
  background: #2563eb;
}

.ops-row.followup-playbook-row.itinerary {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.followup-playbook-row.itinerary span {
  background: var(--teal);
}

.ops-row.followup-playbook-row b {
  color: #344054;
}

.ops-row.followup-playbook-row .ops-link-status {
  white-space: normal;
  line-height: 1.45;
}

.ops-row.followup-status-row {
  padding-left: 10px;
  border-left: 4px solid #64748b;
  background: linear-gradient(90deg, rgba(248, 250, 252, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.followup-status-row span {
  background: #64748b;
}

.ops-row.followup-status-row.pending {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.followup-status-row.pending span {
  background: #d97706;
}

.ops-row.followup-status-row.replied {
  border-left-color: #2563eb;
  background: linear-gradient(90deg, rgba(239, 246, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.followup-status-row.replied span {
  background: #2563eb;
}

.ops-row.followup-status-row.notified {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.followup-status-row.notified span {
  background: var(--teal);
}

.ops-row.followup-status-row.closed {
  border-left-color: #98a2b3;
  background: linear-gradient(90deg, rgba(242, 244, 247, 0.92), rgba(255, 255, 255, 0));
  opacity: 0.78;
}

.ops-row.followup-status-row.closed span {
  background: #98a2b3;
}

.ops-row.followup-status-row .active-status {
  color: var(--charcoal);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.test-recap-hero {
  display: grid;
  gap: 6px;
  min-width: 0;
  margin: 12px 0;
  padding: 14px;
  border: 1px solid rgba(191, 63, 50, 0.16);
  border-left: 4px solid var(--red);
  border-radius: 8px;
  background: linear-gradient(135deg, #fff7f5, #fff 72%);
}

.test-recap-hero.direct {
  border-color: rgba(28, 105, 102, 0.18);
  border-left-color: var(--teal);
  background: linear-gradient(135deg, #f4fbf8, #fff 72%);
}

.test-recap-hero.missing {
  border-color: rgba(217, 119, 6, 0.22);
  border-left-color: #d97706;
  background: linear-gradient(135deg, #fffaf0, #fff 72%);
}

.test-recap-hero span,
.test-recap-hero strong,
.test-recap-hero small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.test-recap-hero span {
  color: var(--red);
  font-size: 12px;
  font-weight: 900;
}

.test-recap-hero.direct span {
  color: var(--teal);
}

.test-recap-hero.missing span {
  color: #92400e;
}

.test-recap-hero strong {
  color: var(--charcoal);
  font-size: 16px;
  line-height: 1.4;
}

.test-recap-hero small {
  color: #667085;
  font-size: 12px;
  line-height: 1.4;
}

.ops-row.test-recap-row {
  padding-left: 10px;
  border-left: 4px solid #7c3aed;
  background: linear-gradient(90deg, rgba(245, 243, 255, 0.88), rgba(255, 255, 255, 0));
}

.ops-row.test-recap-row span {
  background: #7c3aed;
}

.ops-row.test-recap-row.direct {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.test-recap-row.direct span {
  background: var(--teal);
}

.ops-row.test-recap-row.watch {
  border-left-color: #2563eb;
  background: linear-gradient(90deg, rgba(239, 246, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.test-recap-row.watch span {
  background: #2563eb;
}

.ops-row.test-recap-row.missing {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.test-recap-row.missing span {
  background: #d97706;
}

.reality-priority-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin: 12px 0;
  padding: 14px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-left: 4px solid #2563eb;
  border-radius: 8px;
  background: linear-gradient(135deg, #eff6ff, #fff 74%);
}

.reality-priority-head div {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.reality-priority-head span,
.reality-priority-head strong,
.reality-priority-head small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.reality-priority-head span {
  color: #2563eb;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.reality-priority-head strong {
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.35;
}

.reality-priority-head small {
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.ticket-intake-summary,
.reality-priority-summary,
.reality-summary,
.workflow-summary,
.publish-summary,
.import-sim-summary {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
  margin: 14px 0;
}

.ticket-intake-summary div,
.reality-priority-summary div,
.reality-summary div,
.workflow-summary div,
.publish-summary div,
.import-sim-summary div {
  min-height: 86px;
  padding: 12px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 8px;
  background: #f6fbff;
}

.reality-summary div {
  background: #f7f8f4;
}

.reality-priority-summary {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.reality-priority-summary div {
  background: #f6fbff;
}

.workflow-summary {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.workflow-summary div {
  background: #fbf7f2;
}

.publish-summary div {
  background: #f7f5fb;
}

.import-sim-summary {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.import-sim-summary div {
  background: #f3f8f7;
}

.ticket-intake-summary span,
.ticket-intake-summary small,
.reality-priority-summary span,
.reality-priority-summary small,
.reality-summary span,
.reality-summary small,
.workflow-summary span,
.workflow-summary small,
.publish-summary span,
.publish-summary small,
.import-sim-summary span,
.import-sim-summary small {
  display: block;
  color: var(--muted);
  font-size: 0.72rem;
}

.ticket-intake-summary strong,
.reality-priority-summary strong,
.reality-summary strong,
.workflow-summary strong,
.publish-summary strong,
.import-sim-summary strong {
  display: block;
  margin: 4px 0;
  color: var(--ink);
  font-size: 1.45rem;
  line-height: 1.1;
}

.publish-schema-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 10px 0 12px;
}

.publish-schema-item {
  min-height: 92px;
  padding: 11px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-left: 4px solid #64748b;
  border-radius: 8px;
  background: #ffffff;
}

.publish-schema-item.required {
  border-left-color: #7c3aed;
}

.publish-schema-item strong,
.publish-schema-item span,
.publish-schema-item small {
  display: block;
}

.publish-schema-item strong {
  color: var(--ink);
  font-size: 0.86rem;
}

.publish-schema-item span {
  margin: 4px 0;
  color: #5b21b6;
  font-size: 0.72rem;
  font-weight: 800;
}

.publish-schema-item.optional span {
  color: var(--muted);
}

.publish-schema-item small {
  color: var(--muted);
  font-size: 0.72rem;
  line-height: 1.45;
}

.publish-gap-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 8px 0 12px;
}

.publish-gap-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 10px;
  border-radius: 999px;
  background: rgba(124, 58, 237, 0.1);
  color: #5b21b6;
  font-size: 0.76rem;
  font-weight: 800;
}

.publish-gap-chip b {
  color: var(--ink);
}

.reality-dimension-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 10px 0 12px;
}

.reality-dimension-item {
  padding: 12px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 8px;
  background: #ffffff;
}

.reality-dimension-item div:first-child {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: baseline;
}

.reality-dimension-item strong,
.reality-dimension-item span,
.reality-dimension-item small {
  display: block;
}

.reality-dimension-item strong {
  color: var(--ink);
  font-size: 0.9rem;
}

.reality-dimension-item span,
.reality-dimension-item small {
  color: var(--muted);
  font-size: 0.74rem;
}

.reality-bar {
  height: 8px;
  margin: 9px 0 8px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.08);
}

.reality-bar i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ef4444, #f59e0b, #14b8a6);
}

.workflow-lanes {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 10px 0 12px;
}

.workflow-lane {
  min-height: 210px;
  padding: 12px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #ffffff;
}

.workflow-lane.ready {
  border-left-color: var(--teal);
}

.workflow-lane.risk {
  border-left-color: var(--red);
}

.workflow-lane-head {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 8px;
  align-items: center;
  margin-bottom: 8px;
}

.workflow-lane-head span {
  padding: 4px 7px;
  border-radius: 999px;
  background: rgba(217, 119, 6, 0.12);
  color: #92400e;
  font-size: 0.7rem;
  font-weight: 800;
}

.workflow-lane.ready .workflow-lane-head span {
  background: rgba(20, 184, 166, 0.12);
  color: var(--teal-strong);
}

.workflow-lane.risk .workflow-lane-head span {
  background: rgba(239, 68, 68, 0.12);
  color: var(--red);
}

.workflow-lane-head strong,
.workflow-lane-head em,
.workflow-lane > small {
  color: var(--ink);
}

.workflow-lane-head strong {
  font-size: 0.9rem;
}

.workflow-lane-head em,
.workflow-lane > small {
  color: var(--muted);
  font-size: 0.74rem;
  font-style: normal;
}

.workflow-lane-list {
  display: grid;
  gap: 7px;
  margin-top: 10px;
}

.workflow-lane-item,
.workflow-empty {
  padding: 8px;
  border-radius: 8px;
  background: #f8fafc;
}

.workflow-lane-item button {
  display: block;
  width: 100%;
  text-align: left;
  color: var(--ink);
  font-weight: 800;
}

.workflow-lane-item span,
.workflow-empty {
  display: block;
  color: var(--muted);
  font-size: 0.74rem;
}

.ops-row.launch-handoff-row {
  padding-left: 10px;
  border-left: 4px solid #7c3aed;
  background: linear-gradient(90deg, rgba(245, 243, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.launch-handoff-row span {
  background: #7c3aed;
}

.ops-row.launch-handoff-row.ready {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.launch-handoff-row.ready span {
  background: var(--teal);
}

.ops-row.launch-handoff-row.risk {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.launch-handoff-row.risk span {
  background: var(--red);
}

.ops-row.launch-handoff-row b {
  color: #5b21b6;
}

.ops-row.launch-handoff-row.ready b {
  color: var(--teal-strong);
}

.ops-row.launch-handoff-row.risk b {
  color: var(--red);
}

.ops-row.ticket-intake-row {
  padding-left: 10px;
  border-left: 4px solid #2563eb;
  background: linear-gradient(90deg, rgba(239, 246, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.ticket-intake-row span {
  background: #2563eb;
}

.ops-row.ticket-intake-row.ready {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.ticket-intake-row.ready span {
  background: var(--teal);
}

.ops-row.ticket-intake-row.risk {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.ticket-intake-row.risk span {
  background: var(--red);
}

.ops-row.ticket-intake-row b {
  color: #1d4ed8;
}

.ops-row.ticket-intake-row.ready b {
  color: var(--teal-strong);
}

.ops-row.ticket-intake-row.risk b {
  color: var(--red);
}

.ops-row.reality-priority-row {
  padding-left: 10px;
  border-left: 4px solid #2563eb;
  background: linear-gradient(90deg, rgba(239, 246, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.reality-priority-row span {
  background: #2563eb;
}

.ops-row.reality-priority-row.risk,
.ops-row.reality-priority-row.missing {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.reality-priority-row.risk span,
.ops-row.reality-priority-row.missing span {
  background: var(--red);
}

.ops-row.reality-priority-row.watch {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.reality-priority-row.watch span {
  background: #d97706;
}

.ops-row.reality-priority-row.test {
  border-left-color: #7c3aed;
  background: linear-gradient(90deg, rgba(245, 243, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.reality-priority-row.test span {
  background: #7c3aed;
}

.ops-row.reality-priority-row.direct,
.ops-row.reality-priority-row.ready {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.reality-priority-row.direct span,
.ops-row.reality-priority-row.ready span {
  background: var(--teal);
}

.ops-row.reality-priority-row b {
  color: #1d4ed8;
}

.ops-row.reality-priority-row.risk b,
.ops-row.reality-priority-row.missing b {
  color: var(--red);
}

.ops-row.reality-priority-row.watch b {
  color: #92400e;
}

.ops-row.reality-priority-row.test b {
  color: #6d28d9;
}

.ops-row.reality-priority-row.direct b,
.ops-row.reality-priority-row.ready b {
  color: var(--teal-strong);
}

.ops-row.reality-row {
  padding-left: 10px;
  border-left: 4px solid #64748b;
  background: linear-gradient(90deg, rgba(248, 250, 252, 0.95), rgba(255, 255, 255, 0));
}

.ops-row.reality-row span {
  background: #64748b;
}

.ops-row.reality-row.ready {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.reality-row.ready span {
  background: var(--teal);
}

.ops-row.reality-row.watch {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.reality-row.watch span {
  background: #d97706;
}

.ops-row.reality-row.risk {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.reality-row.risk span {
  background: var(--red);
}

.ops-row.reality-row b {
  color: #475569;
}

.ops-row.reality-row.ready b {
  color: var(--teal-strong);
}

.ops-row.reality-row.watch b {
  color: #92400e;
}

.ops-row.reality-row.risk b {
  color: var(--red);
}

.ops-row.workflow-row {
  padding-left: 10px;
  border-left: 4px solid #7c2d12;
  background: linear-gradient(90deg, rgba(255, 247, 237, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.workflow-row span {
  background: #7c2d12;
}

.ops-row.workflow-row.ready {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.workflow-row.ready span {
  background: var(--teal);
}

.ops-row.workflow-row.watch {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.workflow-row.watch span {
  background: #d97706;
}

.ops-row.workflow-row.risk {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.workflow-row.risk span {
  background: var(--red);
}

.ops-row.workflow-row b {
  color: #7c2d12;
}

.ops-row.workflow-row.ready b {
  color: var(--teal-strong);
}

.ops-row.workflow-row.watch b {
  color: #92400e;
}

.ops-row.workflow-row.risk b {
  color: var(--red);
}

.ops-row.publish-row {
  padding-left: 10px;
  border-left: 4px solid #7c3aed;
  background: linear-gradient(90deg, rgba(245, 243, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.publish-row span {
  background: #7c3aed;
}

.ops-row.publish-row.publishable {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.publish-row.publishable span {
  background: var(--teal);
}

.ops-row.publish-row.review {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.publish-row.review span {
  background: #d97706;
}

.ops-row.publish-row.blocked {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.publish-row.blocked span {
  background: var(--red);
}

.ops-row.publish-row b {
  color: #5b21b6;
}

.ops-row.publish-row.publishable b {
  color: var(--teal-strong);
}

.ops-row.publish-row.review b {
  color: #92400e;
}

.ops-row.publish-row.blocked b {
  color: var(--red);
}

.ops-row.import-sim-row {
  padding-left: 10px;
  border-left: 4px solid #0f766e;
  background: linear-gradient(90deg, rgba(240, 253, 250, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.import-sim-row span {
  background: #0f766e;
}

.ops-row.import-sim-row.publishable {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.import-sim-row.publishable span {
  background: var(--teal);
}

.ops-row.import-sim-row.review {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.import-sim-row.review span {
  background: #d97706;
}

.ops-row.import-sim-row.blocked {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.import-sim-row.blocked span {
  background: var(--red);
}

.ops-row.import-sim-row b {
  color: #0f766e;
}

.ops-row.import-sim-row.publishable b {
  color: var(--teal-strong);
}

.ops-row.import-sim-row.review b {
  color: #92400e;
}

.ops-row.import-sim-row.blocked b {
  color: var(--red);
}

.ops-row.no-result-row {
  padding-left: 10px;
  border-left: 4px solid #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.86), rgba(255, 255, 255, 0));
}

.ops-row.no-result-row span {
  background: #d97706;
}

.ops-row.no-result-row b {
  color: #92400e;
}

.ops-row.test-scenario-row {
  padding-left: 10px;
  border-left: 4px solid var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.86), rgba(255, 255, 255, 0));
}

.ops-row.test-scenario-row span {
  background: var(--teal);
}

.ops-row.test-scenario-row b {
  color: var(--teal-strong);
}

.search-alias-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}

.search-alias-summary div {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: #f0fdfa;
}

.search-alias-summary div:nth-child(3) {
  border-left-color: #d97706;
  background: #fffbeb;
}

.search-alias-summary div:nth-child(4) {
  border-left-color: var(--coral);
  background: #fff1f2;
}

.search-alias-summary span,
.search-alias-summary small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.search-alias-summary strong {
  color: var(--charcoal);
  font-size: 16px;
}

.search-alias-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 8px 0 12px;
}

.ops-row.search-alias-row {
  padding-left: 10px;
  border-left: 4px solid var(--teal);
  background: linear-gradient(90deg, rgba(240, 253, 250, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.search-alias-row span {
  background: var(--teal);
}

.ops-row.search-alias-row.watch,
.ops-row.search-alias-row.risk {
  border-left-color: #d97706;
  background: linear-gradient(90deg, rgba(255, 251, 235, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.search-alias-row.watch span,
.ops-row.search-alias-row.risk span {
  background: #d97706;
}

.ops-row.search-alias-row.missing {
  border-left-color: var(--coral);
  background: linear-gradient(90deg, rgba(255, 241, 242, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.search-alias-row.missing span {
  background: var(--coral);
}

.friend-test-pack {
  display: grid;
  gap: 14px;
}

.friend-test-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  padding: 14px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(238, 250, 246, 0.94), rgba(255, 250, 240, 0.86));
}

.friend-test-head > div:first-child {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.friend-test-head span,
.friend-url-grid span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.friend-test-head strong {
  color: var(--charcoal);
  font-size: 18px;
}

.friend-test-head small {
  color: #475467;
  font-size: 13px;
  line-height: 1.45;
}

.friend-test-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.friend-url-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.friend-url-grid div {
  display: grid;
  gap: 7px;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: #fff;
}

.friend-url-grid strong {
  color: var(--charcoal);
  font-size: 12px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.ops-row.friend-test-row {
  padding-left: 10px;
  border-left: 4px solid #2563eb;
  background: linear-gradient(90deg, rgba(239, 246, 255, 0.94), rgba(255, 255, 255, 0));
}

.ops-row.friend-test-row span {
  background: #2563eb;
}

.ops-row.friend-test-row b {
  color: #1d4ed8;
}

.friend-copy-field,
.friend-links-field {
  width: 100%;
  min-height: 150px;
  resize: vertical;
  padding: 12px;
  border: 1px solid rgba(16, 24, 32, 0.14);
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal);
  font: 13px/1.55 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.test-dispatch-summary {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
  margin: 12px 0 10px;
}

.test-dispatch-summary div {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: #fff;
}

.test-dispatch-summary span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.test-dispatch-summary strong {
  color: var(--charcoal);
  font-size: 16px;
}

.test-dispatch-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  margin-bottom: 10px;
}

.ops-row.test-dispatch-row {
  padding-left: 10px;
  border-left: 4px solid #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.test-dispatch-row span {
  background: #d97706;
}

.ops-row.test-dispatch-row.test {
  border-left-color: #7c3aed;
  background: linear-gradient(90deg, rgba(245, 243, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.test-dispatch-row.test span {
  background: #7c3aed;
}

.ops-row.test-dispatch-row.direct {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.test-dispatch-row.direct span {
  background: var(--teal);
}

.ops-row.test-dispatch-row.missing {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.test-dispatch-row.missing span {
  background: var(--red);
}

.ops-row.test-dispatch-row b {
  color: #92400e;
}

.ops-row.test-dispatch-row.direct b {
  color: var(--teal-strong);
}

.ops-row.test-dispatch-row.missing b {
  color: var(--red);
}

.test-dispatch-copy-field {
  width: 100%;
  min-height: 170px;
  margin: 10px 0 12px;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.12);
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal);
  font: 13px/1.55 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.tester-crm-summary {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
  margin: 12px 0 10px;
}

.tester-crm-summary div {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: #fff;
}

.tester-crm-summary span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.tester-crm-summary strong {
  color: var(--charcoal);
  font-size: 16px;
}

.tester-crm-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  margin-bottom: 10px;
}

.ops-row.tester-crm-row {
  padding-left: 10px;
  border-left: 4px solid #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.tester-crm-row span {
  background: #d97706;
}

.ops-row.tester-crm-row.test {
  border-left-color: #7c3aed;
  background: linear-gradient(90deg, rgba(245, 243, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.tester-crm-row.test span {
  background: #7c3aed;
}

.ops-row.tester-crm-row.direct {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.tester-crm-row.direct span {
  background: var(--teal);
}

.ops-row.tester-crm-row.missing {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.tester-crm-row.missing span {
  background: var(--red);
}

.tester-crm-contact-input {
  flex: 0 1 170px;
  min-height: 32px;
  min-width: 130px;
  padding: 0 9px;
  border: 1px solid rgba(16, 24, 32, 0.12);
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal);
  font-size: 12px;
  font-weight: 800;
}

.tester-crm-status-actions {
  display: flex;
  flex: 1 1 260px;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 5px;
  min-width: 0;
}

.tester-crm-status-button {
  min-height: 26px;
  padding: 4px 8px;
  border: 1px solid rgba(16, 24, 32, 0.12);
  border-radius: 999px;
  background: #fff;
  color: #475467;
  font: inherit;
  font-size: 11px;
  font-weight: 900;
  cursor: pointer;
}

.tester-crm-status-button:hover {
  border-color: rgba(37, 99, 235, 0.35);
  color: #2563eb;
}

.tester-crm-status-button.active {
  border-color: rgba(37, 99, 235, 0.18);
  background: rgba(37, 99, 235, 0.1);
  color: #2563eb;
}

.tester-crm-status-button[data-tester-crm-status="sent"].active {
  border-color: rgba(124, 58, 237, 0.2);
  background: rgba(124, 58, 237, 0.1);
  color: #6d28d9;
}

.tester-crm-status-button[data-tester-crm-status="replied"].active,
.tester-crm-status-button[data-tester-crm-status="closed"].active {
  border-color: rgba(28, 105, 102, 0.18);
  background: var(--teal-soft);
  color: var(--teal);
}

.tester-crm-status-button[data-tester-crm-status="remind"].active {
  border-color: rgba(191, 63, 50, 0.2);
  background: rgba(191, 63, 50, 0.1);
  color: var(--red);
}

.tester-crm-copy-field {
  width: 100%;
  min-height: 170px;
  margin: 10px 0 12px;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.12);
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal);
  font: 13px/1.55 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.tester-reminder-summary {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
  margin: 12px 0 10px;
}

.tester-reminder-summary div {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: #fff;
}

.tester-reminder-summary span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.tester-reminder-summary strong {
  color: var(--charcoal);
  font-size: 16px;
}

.tester-reminder-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  margin-bottom: 10px;
}

.ops-row.tester-reminder-row {
  padding-left: 10px;
  border-left: 4px solid #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.9), rgba(255, 255, 255, 0));
}

.ops-row.tester-reminder-row span {
  background: #d97706;
}

.ops-row.tester-reminder-row.test {
  border-left-color: #7c3aed;
  background: linear-gradient(90deg, rgba(245, 243, 255, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.tester-reminder-row.test span {
  background: #7c3aed;
}

.ops-row.tester-reminder-row.missing {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.92), rgba(255, 255, 255, 0));
}

.ops-row.tester-reminder-row.missing span {
  background: var(--red);
}

.ops-row.tester-reminder-row b {
  color: #92400e;
}

.ops-row.tester-reminder-row.missing b {
  color: var(--red);
}

.tester-reminder-copy-field {
  width: 100%;
  min-height: 170px;
  margin: 10px 0 12px;
  padding: 10px;
  border: 1px solid rgba(16, 24, 32, 0.12);
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal);
  font: 13px/1.55 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.ops-row.launch-risk-row {
  padding-left: 10px;
  border-left: 4px solid #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.86), rgba(255, 255, 255, 0));
}

.ops-row.launch-risk-row span {
  background: #d97706;
}

.ops-row.launch-risk-row.risk {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.88), rgba(255, 255, 255, 0));
}

.ops-row.launch-risk-row.risk span {
  background: var(--red);
}

.ops-row.launch-risk-row.ready {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.86), rgba(255, 255, 255, 0));
}

.ops-row.launch-risk-row.ready span {
  background: var(--teal);
}

.ops-row.launch-risk-row b {
  color: #92400e;
}

.ops-row.launch-risk-row.risk b {
  color: var(--red);
}

.ops-row.launch-risk-row.ready b {
  color: var(--teal-strong);
}

.ops-row.evidence-row {
  padding-left: 10px;
  border-left: 4px solid #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.86), rgba(255, 255, 255, 0));
}

.ops-row.evidence-row span {
  background: #d97706;
}

.ops-row.evidence-row.risk {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.88), rgba(255, 255, 255, 0));
}

.ops-row.evidence-row.risk span {
  background: var(--red);
}

.ops-row.evidence-row.ready {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.86), rgba(255, 255, 255, 0));
}

.ops-row.evidence-row.ready span {
  background: var(--teal);
}

.ops-row.evidence-row b {
  color: #92400e;
}

.ops-row.evidence-row.risk b {
  color: var(--red);
}

.ops-row.evidence-row.ready b {
  color: var(--teal-strong);
}

.ops-row.submission-review-row {
  padding-left: 10px;
  border-left: 4px solid #d97706;
  background: linear-gradient(90deg, rgba(255, 250, 240, 0.86), rgba(255, 255, 255, 0));
}

.ops-row.submission-review-row span {
  background: #d97706;
}

.ops-row.submission-review-row.safe {
  border-left-color: var(--teal);
  background: linear-gradient(90deg, rgba(238, 250, 246, 0.86), rgba(255, 255, 255, 0));
}

.ops-row.submission-review-row.safe span {
  background: var(--teal);
}

.ops-row.submission-review-row.danger {
  border-left-color: var(--red);
  background: linear-gradient(90deg, rgba(255, 240, 237, 0.88), rgba(255, 255, 255, 0));
}

.ops-row.submission-review-row.danger span {
  background: var(--red);
}

.ops-row.submission-review-row b {
  color: #92400e;
}

.ops-row.submission-review-row.safe b {
  color: var(--teal-strong);
}

.ops-row.submission-review-row.danger b {
  color: var(--red);
}

.ops-row.link-row.missing {
  border-left-color: var(--red);
}

.ops-row.link-row.direct,
.ops-row.feedback-row.direct {
  border-left-color: var(--teal);
}

.ops-row.link-row.test b {
  color: #92400e;
}

.ops-row.link-row.missing b {
  color: var(--red);
}

.ops-row.link-row.direct b,
.ops-row.feedback-row.direct b {
  color: var(--teal-strong);
}

.ops-lead {
  display: grid;
  gap: 5px;
  padding: 11px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 8px;
  background: #fbfaf7;
}

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

.ops-priority {
  flex: 0 0 auto;
  padding: 4px 8px;
  border-radius: 999px;
  background: #eef4ff;
  color: #175cd3;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.2;
  white-space: nowrap;
}

.ops-priority.a {
  background: #fff1f0;
  color: var(--red);
}

.ops-priority.b {
  background: #fff7e6;
  color: #b54708;
}

.ops-priority.c {
  background: #eef4ff;
  color: #175cd3;
}

.ops-risk-list {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.ops-risk-tag {
  padding: 4px 7px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 999px;
  background: #fff;
  color: #344054;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
}

.ops-lead-action {
  padding: 8px;
  border-radius: 8px;
  background: #fff;
  color: var(--charcoal) !important;
  font-weight: 800;
}

.ops-chip-list {
  display: flex;
  flex-wrap: wrap;
}

.ops-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 10px;
  border: 1px solid rgba(16, 24, 32, 0.08);
  border-radius: 999px;
  background: #fbfaf7;
  color: #344054;
  font-size: 13px;
  font-weight: 800;
}

.ops-chip b {
  color: var(--red);
}

.ops-audit-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.ops-audit-item {
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: #fbfaf7;
}

.ops-audit-item.warn {
  border-left-color: #d97706;
  background: #fffaf0;
}

.ops-audit-item span,
.ops-audit-item strong,
.ops-audit-item small {
  display: block;
  min-width: 0;
}

.ops-audit-item span {
  color: #667085;
  font-size: 12px;
  font-weight: 900;
}

.ops-audit-item strong {
  margin-top: 6px;
  color: var(--charcoal);
  font-size: 22px;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.ops-audit-item small {
  margin-top: 6px;
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.image-source-matrix,
.image-semantic-matrix {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 12px 0;
}

.image-matrix-item,
.image-semantic-item {
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  background: #fff;
}

.image-matrix-item.safe,
.image-semantic-item.safe {
  border-left-color: var(--teal);
  background: var(--teal-soft);
}

.image-matrix-item.watch,
.image-semantic-item.watch {
  border-left-color: #d97706;
  background: #fffbeb;
}

.image-matrix-item.danger {
  border-left-color: var(--red);
  background: var(--red-soft);
}

.image-matrix-item strong,
.image-matrix-item span,
.image-matrix-item small,
.image-semantic-item strong,
.image-semantic-item span,
.image-semantic-item small {
  display: block;
  min-width: 0;
}

.image-matrix-item strong,
.image-semantic-item strong {
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.image-matrix-item span,
.image-semantic-item span {
  margin-top: 6px;
  color: #344054;
  font-size: 13px;
  font-weight: 850;
}

.image-matrix-item small,
.image-semantic-item small {
  margin-top: 6px;
  color: #667085;
  font-size: 12px;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

.image-visual-row {
  grid-template-columns: 28px minmax(0, 1.1fr) minmax(140px, 0.8fr) minmax(180px, auto);
}

.image-visual-row.safe > span {
  background: var(--teal);
}

.image-visual-row.watch > span {
  background: #d97706;
}

.image-visual-row.danger > span {
  background: var(--red);
}

.image-visual-row > small {
  grid-column: 2 / -1;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.image-reroll-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 12px 0;
}

.image-reroll-summary div {
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fff;
}

.image-reroll-summary span,
.image-reroll-summary strong,
.image-reroll-summary small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.image-reroll-summary span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.image-reroll-summary strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 20px;
  line-height: 1.2;
}

.image-reroll-summary small {
  margin-top: 4px;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.image-reroll-row {
  grid-template-columns: 42px minmax(0, 1fr) minmax(170px, 0.9fr) minmax(210px, auto);
}

.image-reroll-row.p0 > span {
  background: var(--red);
}

.image-reroll-row.p1 > span {
  background: #d97706;
}

.image-reroll-row.p2 > span {
  background: var(--teal);
}

.image-reroll-row > small {
  grid-column: 2 / -1;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.image-evidence-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin: 12px 0;
}

.image-license-summary,
.image-license-stage-grid,
.image-license-rule-grid {
  display: grid;
  gap: 8px;
  margin: 12px 0;
}

.image-license-summary {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.image-license-stage-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.image-license-rule-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.image-evidence-summary div,
.image-license-summary div,
.image-license-stage-grid div,
.image-license-rule {
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fff;
}

.image-evidence-summary span,
.image-evidence-summary strong,
.image-evidence-summary small,
.image-license-summary span,
.image-license-summary strong,
.image-license-summary small,
.image-license-stage-grid span,
.image-license-stage-grid strong,
.image-license-stage-grid small,
.image-license-rule strong,
.image-license-rule span,
.image-license-rule small,
.image-license-rule em {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.image-evidence-summary span,
.image-license-summary span,
.image-license-stage-grid span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.image-evidence-summary strong,
.image-license-summary strong,
.image-license-stage-grid strong,
.image-license-rule strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 20px;
  line-height: 1.2;
}

.image-license-stage-grid strong,
.image-license-rule strong {
  font-size: 14px;
  line-height: 1.35;
}

.image-evidence-summary small,
.image-license-summary small,
.image-license-stage-grid small,
.image-license-rule span,
.image-license-rule small,
.image-license-rule em {
  margin-top: 4px;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.image-license-rule em {
  color: var(--red);
  font-style: normal;
  font-weight: 900;
}

.image-evidence-row,
.image-license-row {
  grid-template-columns: 32px minmax(0, 0.95fr) minmax(180px, 0.95fr) minmax(210px, auto);
}

.image-evidence-row.ready > span,
.image-license-row.ready > span {
  background: var(--teal);
}

.image-evidence-row.review > span,
.image-license-row.review > span {
  background: #d97706;
}

.image-evidence-row.blocked > span,
.image-license-row.blocked > span {
  background: var(--red);
}

.image-evidence-row > small,
.image-license-row > small {
  grid-column: 2 / -1;
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 8px;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.image-evidence-row > small i,
.image-license-row > small i {
  color: var(--charcoal);
  font-style: normal;
  font-weight: 900;
}

.ops-qa-list {
  display: grid;
  gap: 8px;
}

.ops-qa-row {
  display: grid;
  grid-template-columns: 58px minmax(0, 0.8fr) 72px minmax(0, 1.4fr);
  gap: 10px;
  align-items: center;
  min-width: 0;
  padding: 11px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: #fbfaf7;
}

.ops-qa-row.fail {
  border-left-color: #d97706;
  background: #fffaf0;
}

.ops-qa-row span,
.ops-qa-row strong,
.ops-qa-row em,
.ops-qa-row small {
  display: block;
  min-width: 0;
}

.ops-qa-row span {
  display: inline-grid;
  place-items: center;
  min-height: 26px;
  border-radius: 999px;
  background: var(--teal-soft);
  color: var(--teal);
  font-size: 12px;
  font-weight: 900;
}

.ops-qa-row.fail span {
  background: #fff7e6;
  color: #b54708;
}

.ops-qa-row strong {
  color: var(--charcoal);
  overflow-wrap: anywhere;
}

.ops-qa-row em {
  color: var(--red);
  font-style: normal;
  font-weight: 900;
}

.ops-qa-row small {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.ops-next-list {
  margin: 0;
  padding-left: 22px;
  color: #475467;
  line-height: 1.65;
}

.ops-empty {
  padding: 16px;
  border: 1px dashed var(--line-strong);
  border-radius: 8px;
  color: var(--muted);
  background: #fbfaf7;
  line-height: 1.6;
}

.toast {
  position: fixed;
  left: 50%;
  bottom: 22px;
  z-index: 50;
  transform: translateX(-50%) translateY(20px);
  opacity: 0;
  pointer-events: none;
  padding: 12px 16px;
  border-radius: 8px;
  background: var(--charcoal);
  color: #fff;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.26);
  transition: opacity 0.18s ease, transform 0.18s ease;
}

.toast.show {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

@media (max-width: 1180px) {
  .app-shell {
    grid-template-columns: 200px minmax(0, 1fr);
  }

  .right-rail {
    grid-column: 1 / -1;
    position: static;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  #map {
    grid-column: span 2;
  }

  #map .map-area-list {
    grid-template-columns: 1fr;
  }

  .right-rail #map .map-area-list {
    grid-template-columns: 1fr;
  }

  .rail-panel {
    min-width: 0;
  }

  .rank-board {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .result-refine-panel {
    grid-template-columns: 1fr;
  }

  .result-refine-actions {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .search-intent-overview-chips {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .search-gap-panel {
    grid-template-columns: 1fr;
  }

  .search-gap-actions {
    justify-content: flex-start;
  }

  .result-agenda {
    grid-template-columns: 1fr;
  }

  .result-load-more {
    grid-template-columns: 1fr;
  }

  .result-load-more button {
    width: 100%;
  }

  .result-agenda-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .month-radar {
    grid-template-columns: 1fr;
  }

  .month-overview {
    grid-template-columns: 1fr;
  }

  .month-day-guide {
    grid-template-columns: 1fr;
  }

  .month-day-guide-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .month-overview-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .month-radar-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .month-radar-picks {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .choice-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .choice-compare-row {
    grid-template-columns: 86px minmax(0, 1fr);
  }

  .choice-compare-row div {
    grid-column: 2;
  }

  .result-brief {
    grid-column: 1 / -1;
  }

  .empty-alt-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .month-archive-list {
    grid-template-columns: 1fr;
  }

  .business-funnel-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .ticket-triage-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .launch-handoff-summary {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .source-advance-summary {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .source-verification-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .daily-test-focus-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .morning-brief-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .search-alias-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .source-risk-summary,
  .source-risk-domain-grid,
  .ticket-health-summary,
  .ticket-backfill-summary,
  .ticket-evidence-summary {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .ticket-entry-review-summary,
  .entry-sample-summary,
  .official-handoff-summary,
  .next-entry-flow-summary,
  .entry-sample-stage-grid,
  .entry-sample-next-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .link-type-guide,
  .link-intake-checklist,
  .link-intake-handoff-grid,
  .detail-ticket-sample-grid,
  .pre-purchase-grid,
  .detail-payment-guard-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .entry-sample-sprint-row {
    grid-template-columns: 28px minmax(0, 1fr);
  }

  .entry-sample-sprint-row .ops-row-actions {
    grid-column: 2;
    justify-content: flex-start;
  }

  .ticket-intake-summary {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .reality-priority-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .reality-summary,
  .reality-dimension-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .workflow-summary,
  .workflow-lanes {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .publish-summary,
  .publish-schema-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .import-sim-summary {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .intent-summary,
  .image-reroll-summary,
  .reminder-workbench-summary,
  .followup-playbook-summary,
  .followup-status-summary,
  .test-recap-summary,
  .tester-mission-summary,
  .retest-outreach-summary,
  .test-dispatch-summary,
  .tester-crm-summary,
  .tester-reminder-summary,
  .product-decision-summary,
  .daily-test-focus-summary,
  .today-focus-summary,
  .execution-summary,
  .execution-retest-summary {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .image-evidence-summary,
  .image-license-summary,
  .image-license-stage-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .image-license-rule-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .execution-lane-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 920px) {
  .topnav,
  .ghost-button span {
    display: none;
  }

  .icon-button {
    display: inline-flex;
  }

  .entry-sample-sprint-head,
  .entry-sample-status-head {
    display: grid;
  }

  .entry-sample-stage-grid,
  .entry-sample-next-list {
    grid-template-columns: 1fr;
  }

  .link-type-guide,
  .link-intake-checklist,
  .link-intake-handoff-grid {
    grid-template-columns: 1fr;
  }

  .hero {
    min-height: 0;
  }

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

  .month-jump {
    display: grid;
    grid-template-columns: 1fr 1fr auto;
  }

  .month-jump strong {
    grid-column: 1 / -1;
  }

  .field.wide,
  .planner .primary-button {
    grid-column: 1 / -1;
  }

  .hero-metrics,
  .event-grid,
  .right-rail,
  .detail-grid,
  .detail-trust-overview-grid,
  .detail-quick-grid,
  .detail-go-switch-grid,
  .detail-decision-grid,
  .detail-cost-grid,
  .detail-cost-alt-grid,
  .detail-readiness-grid,
  .detail-context,
  .insight-grid,
  .decision-columns,
  .audience-fit-grid,
  .brief-grid,
  .date-plan-grid,
  .detail-scenario-grid,
  .related-grid,
  .image-safety-grid,
  .detail-hero-rights-notice,
  .detail-image-evidence-grid,
  .image-publish-grid,
  .image-rights-checklist,
  .readiness-grid,
  .source-trust-grid,
  .source-dossier-grid,
  .evidence-pack-grid,
  .commercial-route-grid,
  .ticket-launch-grid,
  .ticket-checklist,
  .ticket-route-grid,
  .ticket-service-note,
  .ticket-lead-context,
  .tester-feedback-summary,
  .ticket-triage-summary,
  .tester-issue-grid,
  .ticket-entry,
  .ticket-platform-hints,
  .detail-ticket-trust-grid,
  .detail-purchase-receipt-grid,
  .detail-purchase-evidence-chain,
  .detail-ticket-flow,
  .detail-ticket-state-grid,
  .purchase-entry-grid,
  .purchase-gate-grid,
  .purchase-gate-checks,
  .purchase-payment-grid,
  .purchase-gate-actions,
  .ops-audit-grid,
  .image-source-matrix,
  .image-semantic-matrix,
  .business-funnel-grid,
  .launch-handoff-summary,
  .source-advance-summary,
  .source-verification-summary,
  .source-risk-summary,
  .source-risk-domain-grid,
  .ticket-health-summary,
  .ticket-backfill-summary,
  .morning-brief-grid,
  .search-alias-summary,
  .ticket-evidence-summary,
  .ticket-entry-review-summary,
  .entry-sample-summary,
  .detail-readiness-summary,
  .research-trail-summary,
  .official-handoff-summary,
  .next-entry-flow-summary,
  .ticket-intake-summary,
  .reality-priority-summary,
  .reality-summary,
  .reality-dimension-grid,
  .workflow-summary,
  .workflow-lanes,
  .publish-summary,
  .publish-schema-grid,
  .import-sim-summary,
  .intent-summary,
  .reminder-workbench-summary,
  .followup-playbook-summary,
  .followup-status-summary,
  .test-recap-summary,
  .tester-mission-summary,
  .retest-outreach-summary,
  .test-dispatch-summary,
  .tester-crm-summary,
  .tester-reminder-summary,
  .product-decision-summary,
  .daily-test-focus-summary,
  .today-focus-summary,
  .execution-summary,
  .execution-retest-summary,
  .execution-lane-grid,
  .reminder-bridge,
  .detail-reminder-panel,
  .month-overview,
  .month-overview-stats,
  .month-overview-actions,
  .month-radar,
  .month-radar-flow,
  .choice-card-grid,
  .choice-compare-row,
  .friend-url-grid,
  .search-intent-overview-chips,
  .result-action-plan,
  .result-action-plan-grid,
  .result-refine-panel,
  .no-result-diagnosis,
  .no-result-action-checklist,
  .no-result-status-grid,
  .date-miss-grid,
  .no-result-split-grid,
  .no-result-rewrite-grid,
  .empty-recovery-grid,
  .ops-loading-grid,
  .ops-quick-start,
  .ops-report-grid {
    grid-template-columns: 1fr;
  }

  #map {
    grid-column: auto;
  }

  #map .map-area-list {
    grid-template-columns: 1fr;
  }

  .right-rail #map .map-area-list {
    grid-template-columns: 1fr;
  }

  #map .map-area-row:not(.map-area-all) {
    grid-template-columns: 1fr;
    grid-template-areas:
      "head"
      "sub"
      "meter";
    align-content: start;
    min-height: 0;
  }

  #map .map-area-row:not(.map-area-all) b {
    flex: 0 0 auto;
  }

  .tester-batch-head {
    display: grid;
  }

  .tester-reply-head {
    display: grid;
  }

  .tester-batch-actions {
    justify-content: flex-start;
  }

  .tester-reply-actions {
    justify-content: flex-start;
  }

  .tester-mission-actions,
  .tester-mission-steps,
  .retest-outreach-actions,
  .test-dispatch-actions,
  .tester-crm-actions,
  .tester-crm-status-actions,
  .tester-reminder-actions,
  .product-decision-actions,
  .execution-retest-actions,
  .execution-retest-result-actions {
    justify-content: flex-start;
  }

  .execution-board-head {
    display: grid;
  }

  .source-advance-head {
    display: grid;
  }

  .source-verification-head {
    display: grid;
  }

  .ticket-entry-review-head {
    display: grid;
  }

  .reality-priority-head {
    display: grid;
  }

  .daily-test-focus-head {
    display: grid;
  }

  .daily-test-focus-row {
    grid-template-columns: 26px minmax(0, 1fr);
  }

  .daily-test-focus-row .ops-row-actions {
    grid-column: 2;
    justify-content: flex-start;
  }

  .today-focus-head {
    display: grid;
  }

  .today-focus-row {
    grid-template-columns: 26px minmax(0, 1fr);
  }

  .today-focus-row .ops-row-actions {
    grid-column: 2;
    justify-content: flex-start;
  }

  .execution-task {
    grid-template-columns: 26px minmax(0, 1fr);
  }

  .execution-task .text-button {
    grid-column: 2;
    justify-self: start;
  }

  .ops-kpi-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .month-archive {
    grid-template-columns: 1fr;
  }

  .month-archive > div:first-child small {
    max-width: none;
  }

  .month-archive-list {
    grid-template-columns: 1fr;
  }

  .app-shell {
    grid-template-columns: 1fr;
  }

  .filter-panel {
    position: fixed;
    inset: 72px 0 auto 0;
    z-index: 25;
    max-height: calc(100vh - 72px);
    overflow: auto;
    border-radius: 0 0 8px 8px;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(calc(-100% - 82px));
    transition: transform 0.22s ease, visibility 0.22s ease;
  }

  .filter-panel.open {
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
  }

  .feed-toolbar,
  .toolbar-actions,
  .result-insights,
  .search-assist,
  .feedback-strip,
  .spotlight {
    align-items: stretch;
    grid-template-columns: 1fr;
    flex-direction: column;
  }

  .search-assist-content,
  .search-assist-grid,
  .search-understanding,
  .search-understanding-list {
    grid-template-columns: 1fr;
  }

  .purchase-gate-decision {
    grid-template-columns: 1fr;
  }

  .purchase-gate-decision span {
    grid-column: auto;
  }

  .purchase-gate-decision em {
    justify-self: start;
    text-align: left;
  }

  .ticket-consult-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .no-result-rescue-actions {
    grid-template-columns: 1fr;
  }

  .result-agenda-list {
    grid-template-columns: 1fr;
  }

  .active-filter-row {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .month-direct-summary {
    display: grid;
    align-items: start;
  }

  .month-first-look {
    grid-template-columns: 1fr;
  }

  .month-first-look-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .month-direct-summary small {
    text-align: left;
  }

  .result-intent-panel {
    grid-template-columns: 1fr;
  }

  .result-decision-strip {
    grid-template-columns: 1fr;
  }

  .result-decision-actions {
    justify-items: start;
  }

  .result-intent-panel dl {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .result-refine-actions {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .no-result-demand-capture {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .no-result-demand-capture > div:last-child {
    justify-content: flex-start;
  }

  .no-result-diagnosis-facts {
    justify-content: flex-start;
  }

  .reminder-bridge .compact-button,
  .detail-reminder-panel .compact-button {
    width: 100%;
  }

  .detail-context-actions {
    justify-content: flex-start;
  }

  .visitor-detail-grid {
    grid-template-columns: 1fr;
  }

  .evidence-pack-head,
  .evidence-pack-actions,
  .source-dossier-head,
  .ticket-launch-head,
  .friend-test-head {
    display: grid;
  }

  .friend-test-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 560px) {
  .topbar {
    height: 66px;
    padding: 0 12px;
  }

  .brand small {
    display: none;
  }

  .hero-inner {
    width: calc(100% - 24px);
    padding-top: 34px;
    padding-bottom: 22px;
  }

  .hero h1 {
    font-size: 29px;
    line-height: 1.05;
  }

  .hero-copy p {
    margin: 12px 0 16px;
    font-size: 14px;
    line-height: 1.55;
  }

  .planner {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .status-line {
    margin-bottom: 14px;
  }

  .status-line span {
    min-height: 26px;
    padding: 4px 9px;
    font-size: 11px;
  }

  .intent-suggestions button {
    min-height: 38px;
    min-width: 94px;
  }

  .month-jump {
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }

  .month-jump .month-button {
    grid-column: 1 / -1;
  }

  .month-ticket-pulse-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .result-decision-counts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .result-decision-actions .compact-button {
    width: 100%;
  }

  .result-intent-panel dl {
    grid-template-columns: 1fr 1fr;
  }

  .result-intent-panel dd {
    font-size: 12px;
  }

  .result-refine-actions {
    grid-template-columns: 1fr 1fr;
  }

  .ticket-consult-grid {
    grid-template-columns: 1fr;
  }

  .field.wide,
  .planner .primary-button {
    grid-column: auto;
  }

  .hero-metrics {
    display: none;
  }

  .command-strip,
  .app-shell {
    width: calc(100% - 24px);
  }

  .feed,
  .filter-panel,
  .rail-panel {
    padding: 14px;
  }

    .meta-grid,
    .card-actions,
    .card-next-strip,
    .micro-details,
    .detail-trust-overview-grid,
    .detail-purchase-evidence-chain,
    .rank-board,
    .image-evidence-summary,
    .image-license-summary,
    .image-license-stage-grid,
    .image-license-rule-grid,
    .image-reroll-summary,
    .result-stat-grid,
    .month-overview-stats,
    .month-overview-actions,
    .month-first-look-grid,
    .month-day-guide-list,
    .month-radar-metrics,
    .month-radar-picks,
    .month-radar-chip-row,
    .choice-card-grid,
    .empty-alt-grid,
  .related-grid,
  .form-split,
  .trip-board-meter,
  .trip-board-actions {
    grid-template-columns: 1fr;
  }

  .month-archive-list {
    grid-template-columns: 1fr;
  }

  .month-archive > div:first-child {
    display: grid;
    align-items: start;
  }

  .year-month-panel {
    grid-template-columns: 1fr;
  }

  .year-month-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .saved-list {
    max-height: none;
  }

  .saved-item.trip-item {
    padding-right: 12px;
  }

  .saved-item.trip-item em {
    position: static;
    justify-self: start;
    max-width: 100%;
  }

  .ops-kpi-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .morning-brief-hero {
    align-items: flex-start;
    flex-direction: column;
  }

  .ops-row {
    grid-template-columns: 28px minmax(0, 1fr);
    align-items: start;
  }

  .tester-reply-preview-row {
    grid-template-columns: 28px minmax(0, 1fr);
  }

  .tester-reply-preview-row em,
  .tester-reply-preview-row small {
    grid-column: 2;
  }

  .ops-qa-row {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .ops-qa-row span {
    justify-self: start;
    padding: 0 10px;
  }

  .ops-row em,
  .ops-row b {
    grid-column: 2;
  }

  .ops-row b {
    white-space: normal;
  }

  .ops-row b.ops-row-actions {
    align-items: flex-start;
    justify-content: flex-start;
    flex-direction: column;
  }

  .ops-row .ops-link-status {
    max-width: 100%;
    text-align: left;
  }

  .ticket-triage-head {
    display: grid;
  }

  .ops-row.ticket-triage-row {
    grid-template-columns: 28px minmax(0, 1fr);
  }

  .ops-row.ticket-triage-row em,
  .ops-row.ticket-triage-row b,
  .ops-row.ticket-triage-row small {
    grid-column: 2;
  }

  .link-dialog-actions {
    grid-template-columns: 1fr;
  }

  .ops-lead-head {
    display: grid;
    gap: 6px;
  }

  .ops-priority {
    justify-self: start;
  }

  .action-brief-head {
    display: grid;
  }

  .compact-button {
    justify-self: start;
    white-space: normal;
  }

  .card-next-buttons {
    justify-content: flex-start;
  }

  .dialog-body,
  .reminder-content {
    padding: 20px;
  }

  .detail-action-router-grid,
  .detail-scenario-grid,
  .detail-ticket-trust-grid,
  .detail-ticket-flow,
  .detail-ticket-state-grid,
  .detail-ticket-sample-grid,
  .pre-purchase-grid,
  .detail-payment-guard-grid {
    grid-template-columns: 1fr;
  }

  .detail-action-route {
    grid-template-rows: auto auto auto auto auto;
  }

  .detail-sticky-actions {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin: 16px -20px -20px;
    padding: 10px 12px calc(10px + env(safe-area-inset-bottom));
  }

  .detail-sticky-actions > div {
    grid-column: 1 / -1;
  }

  .detail-sticky-actions button {
    width: 100%;
    min-width: 0;
    padding: 6px 8px;
  }

  .dialog-hero h2 {
    font-size: 25px;
  }

  .hero-rights-badge {
    left: 14px;
    right: auto;
    top: 58px;
    max-width: calc(100% - 28px);
  }
}

@media (max-width: 640px) {
  #map .map-area-list,
  .right-rail #map .map-area-list {
    grid-template-columns: 1fr;
  }
}

/* Ticket Pia inspired compact ticket desk style. */
:root {
  --bg: #f5f6f8;
  --surface: #ffffff;
  --surface-2: #f7f8fa;
  --ink: #111827;
  --muted: #667085;
  --line: #e4e7ec;
  --line-strong: #cfd4dc;
  --charcoal: #111827;
  --red: #d9362b;
  --red-soft: #fff2f1;
  --teal: #087f78;
  --teal-soft: #e9f8f6;
  --gold: #9a6a12;
  --gold-soft: #fff8e6;
  --danger: #b42318;
  --shadow: 0 14px 30px rgba(16, 24, 40, 0.09);
}

body {
  background: linear-gradient(180deg, #ffffff 0, #f5f6f8 220px, #f5f6f8 100%);
}

.topbar {
  height: 64px;
  gap: 16px;
  padding: 0 clamp(18px, 3vw, 48px);
  background: rgba(255, 255, 255, 0.98);
  border-bottom: 1px solid #e4e7ec;
  box-shadow: 0 1px 0 rgba(16, 24, 40, 0.03);
  backdrop-filter: none;
}

.brand {
  gap: 10px;
}

.brand-mark {
  width: 36px;
  height: 36px;
  background: var(--red);
  border-radius: 7px;
  box-shadow: none;
  font-size: 13px;
}

.brand strong {
  font-size: 15px;
}

.brand small {
  margin-top: 2px;
  color: #667085;
}

.topnav {
  gap: 18px;
  font-size: 13px;
}

.topnav a:hover {
  border-color: var(--red);
  color: var(--red);
}

.topnav a[href*="ops=1"] {
  display: none;
}

body.ops-mode .topnav a[href*="ops=1"] {
  display: inline-flex;
}

#openSubmitEvent,
#openTesterFeedback {
  display: none;
}

.hero {
  min-height: 0;
  overflow: visible;
  background:
    linear-gradient(90deg, rgba(217, 54, 43, 0.08), transparent 32%),
    #f7f8fa;
  border-bottom: 1px solid #e4e7ec;
}

.hero::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 4px;
  background: var(--red);
}

.hero-bg,
.hero-bg::after {
  display: none;
}

.hero-inner {
  justify-items: stretch;
  width: min(1640px, calc(100% - 32px));
  padding: 22px 0 18px;
  color: var(--ink);
  text-align: left;
}

.hero-copy {
  display: grid;
  gap: 4px;
  max-width: none;
  margin: 0 0 12px;
}

.hero h1 {
  justify-items: start;
  max-width: none;
  font-size: clamp(30px, 3vw, 44px);
  line-height: 1.08;
  color: var(--charcoal);
  text-shadow: none;
}

.hero-copy p {
  max-width: none;
  margin: 0;
  color: #5d6672;
  font-size: 15px;
  line-height: 1.45;
  text-shadow: none;
}

.planner {
  grid-template-columns: minmax(320px, 1fr) 180px 180px 150px;
  gap: 8px;
  width: 100%;
  padding: 10px;
  border: 1px solid #d9dee8;
  background: #ffffff;
  box-shadow: 0 10px 22px rgba(16, 24, 40, 0.08);
}

.field {
  gap: 5px;
  padding: 9px 12px;
  border-color: #dfe4ec;
  background: #f9fafb;
}

.field:focus-within {
  border-color: rgba(217, 54, 43, 0.45);
  background: #ffffff;
  box-shadow: 0 0 0 3px rgba(217, 54, 43, 0.1);
}

.field span {
  color: #667085;
  font-size: 11px;
}

.field input {
  font-size: 14px;
}

.primary-button {
  background: var(--red);
  color: #ffffff;
  box-shadow: none;
}

.primary-button:hover,
.detail-button:hover,
.primary-mini:hover {
  filter: brightness(0.96);
}

.search-suggestions span {
  color: #667085;
}

.search-suggestions button,
.empty-suggestions button {
  border-color: #d9dee8;
  background: #ffffff;
  color: #344054;
  backdrop-filter: none;
}

.intent-suggestions strong {
  color: #111827;
}

.month-jump {
  width: 100%;
  border-color: #d9dee8;
  background: #ffffff;
  box-shadow: none;
}

.secondary-shortcuts {
  display: flex !important;
}

.playguide-panel {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto 12px;
}

.playguide-inner {
  display: grid;
  grid-template-columns: 190px minmax(285px, 0.95fr) minmax(410px, 1.35fr) minmax(220px, 0.8fr);
  gap: 10px;
  align-items: stretch;
  padding: 10px;
  border: 1px solid #e4e7ec;
  border-radius: 8px;
  background: #ffffff;
}

.playguide-lead,
.playguide-track {
  min-width: 0;
}

.playguide-lead {
  display: grid;
  align-content: center;
  gap: 4px;
  padding: 8px 10px;
  border-right: 1px solid #edf0f4;
}

.playguide-lead span,
.playguide-lead strong,
.playguide-track small,
.playguide-track b,
.playguide-track em {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.playguide-lead span,
.playguide-track small {
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
}

.playguide-lead strong {
  color: var(--charcoal);
  font-size: 16px;
  line-height: 1.25;
}

.playguide-track {
  display: grid;
  grid-template-columns: auto repeat(3, minmax(0, 1fr));
  gap: 6px;
  align-items: stretch;
}

.playguide-track.playguide-categories {
  grid-template-columns: auto repeat(4, minmax(0, 1fr));
}

.playguide-track.playguide-trust {
  grid-template-columns: auto repeat(2, minmax(0, 1fr));
}

.playguide-track small {
  align-self: center;
  padding: 0 4px 0 2px;
  color: #667085;
}

.playguide-track button {
  display: grid;
  align-content: center;
  gap: 2px;
  min-width: 0;
  min-height: 50px;
  padding: 8px 10px;
  border: 1px solid #d9dee8;
  border-radius: 8px;
  background: #f9fafb;
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.playguide-track button:hover,
.playguide-track button.active {
  border-color: rgba(217, 54, 43, 0.38);
  background: #fff5f5;
}

.playguide-track b {
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.2;
}

.playguide-track em {
  color: #667085;
  font-size: 11px;
  font-style: normal;
  line-height: 1.25;
}

.command-strip {
  width: min(1640px, calc(100% - 32px));
  margin: 0 auto 14px;
  padding: 10px 0;
  border: 0;
  border-bottom: 1px solid #e4e7ec;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.quick-filter {
  min-height: 34px;
  padding: 0 13px;
  border-color: #d9dee8;
  background: #ffffff;
  color: #344054;
  font-size: 13px;
  font-weight: 800;
}

.quick-filter.active {
  border-color: rgba(217, 54, 43, 0.4);
  background: var(--red);
  color: #ffffff;
}

.app-shell {
  grid-template-columns: 196px minmax(0, 1fr) 320px;
  gap: 14px;
  width: min(1640px, calc(100% - 32px));
}

.filter-panel,
.feed,
.rail-panel {
  border-color: #e4e7ec;
  background: #ffffff;
  box-shadow: none;
}

.filter-panel,
.rail-panel,
.feed {
  padding: 14px;
}

.panel-title p,
.eyebrow {
  color: var(--red);
  letter-spacing: 0;
}

.panel-title h2,
.feed-toolbar h2 {
  font-size: 20px;
}

.filter-section {
  padding: 14px 0;
  border-top-color: #edf0f4;
}

.chip,
.secondary-button,
.ghost-button,
.icon-button,
select,
.reminder-content input,
.reminder-content textarea {
  border-color: #d9dee8;
  background: #ffffff;
}

.chip.active,
.save-button.active {
  border-color: rgba(217, 54, 43, 0.35);
  background: var(--red-soft);
  color: var(--red);
}

.result-brief,
.result-stat-grid,
.result-next,
.result-agenda,
.month-archive,
.month-overview,
.result-load-more {
  border-color: #e4e7ec;
  background: #ffffff;
  box-shadow: none;
}

.month-archive {
  padding: 14px;
}

.month-archive-list {
  gap: 8px;
}

.month-card {
  border-color: #e4e7ec;
  background: linear-gradient(135deg, var(--month-bg, #ffffff) 0%, var(--month-bg-2, #ffffff) 100%);
  box-shadow: none;
}

.month-card:hover,
.month-card.active {
  border-color: #cfd4dc;
  box-shadow: 0 8px 18px rgba(16, 24, 40, 0.07);
}

.event-grid {
  grid-template-columns: 1fr;
  gap: 10px;
}

.event-card {
  display: grid;
  grid-template-columns: 178px minmax(0, 1fr);
  min-height: 0;
  border-color: #e4e7ec;
  box-shadow: none;
}

@supports (content-visibility: auto) {
  .event-card {
    content-visibility: auto;
    contain: layout paint style;
    contain-intrinsic-size: 300px;
  }

  .event-card.featured-card {
    content-visibility: visible;
  }
}

.event-card::before {
  width: 4px;
}

.event-card:hover {
  transform: none;
  border-color: #cfd4dc;
  box-shadow: 0 8px 22px rgba(16, 24, 40, 0.08);
}

.event-thumb {
  min-height: 100%;
  height: 100%;
}

.event-thumb::after {
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.04), rgba(0, 0, 0, 0.18));
}

.category-pill,
.date-badge,
.card-image-safety {
  border-radius: 6px;
}

.category-pill {
  left: 10px;
  top: 10px;
}

.date-badge {
  left: 10px;
  bottom: 10px;
}

.card-image-safety {
  right: 10px;
  top: 48px;
  max-width: 120px;
  padding: 6px 8px;
}

.event-body {
  padding: 14px;
  background: #ffffff;
}

.card-kicker {
  margin-bottom: 7px;
  font-size: 11px;
}

.event-title-row h3 {
  font-size: 17px;
  line-height: 1.3;
}

.meta-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px 10px;
  margin: 10px 0;
}

.event-summary {
  min-height: 0;
  margin-bottom: 10px;
  color: #475467;
  font-size: 13px;
  line-height: 1.5;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.micro-details,
.card-artist-image-guard,
.card-ticket-trust,
.card-conversion {
  display: none;
}

.card-next-strip {
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  margin: 0 0 8px;
  padding: 8px;
  border-color: #e4e7ec;
  border-left-color: var(--red);
  background: #fffafa;
}

.card-next-strip.ready,
.card-next-strip.easy {
  border-left-color: var(--teal);
  background: #f5fffd;
}

.card-next-strip.checked {
  border-left-color: #2563eb;
  background: #f7fbff;
}

.card-couple-hint {
  grid-template-columns: auto minmax(0, 1fr);
  gap: 3px 8px;
  margin: 0 0 8px;
  padding: 8px;
  border-color: rgba(190, 24, 93, 0.12);
  border-left-color: #be185d;
  background: #fff8fc;
}

.card-couple-hint small {
  justify-self: start;
  text-align: left;
}

.card-couple-hint em {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}

.card-fireworks-hint {
  grid-template-columns: auto minmax(0, 1fr);
  gap: 3px 8px;
  margin: 0 0 8px;
  padding: 8px;
  border-color: rgba(217, 119, 6, 0.12);
  border-left-color: #d97706;
  background: #fffaf0;
}

.card-fireworks-hint small {
  justify-self: start;
  text-align: left;
}

.card-fireworks-hint em {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}

.card-high-demand-hint {
  grid-template-columns: auto minmax(0, 1fr);
  gap: 3px 8px;
  margin: 0 0 8px;
  padding: 8px;
  border-color: rgba(220, 38, 38, 0.12);
  border-left-color: #dc2626;
  background: #fff7f7;
}

.card-high-demand-hint small {
  justify-self: start;
  text-align: left;
}

.card-high-demand-hint em {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}

.card-next-strip small {
  font-size: 10px;
}

.card-next-strip strong {
  font-size: 12px;
}

.card-next-strip span {
  display: none;
}

.card-next-buttons {
  gap: 5px;
}

.card-next-buttons .primary-mini,
.card-next-buttons .secondary-mini {
  min-height: 28px;
  padding: 0 8px;
  font-size: 11px;
}

.signal-row {
  gap: 5px;
  margin-bottom: 8px;
}

.signal-row span:nth-child(n+5) {
  display: none;
}

.card-actions {
  grid-template-columns: auto 1fr;
  justify-content: start;
}

.detail-button {
  min-height: 36px;
  padding: 0 14px;
  border-color: var(--red);
  background: var(--red);
}

.card-actions strong {
  justify-content: flex-end;
  color: #344054;
  font-size: 13px;
}

.right-rail {
  gap: 14px;
}

.mini-map,
.saved-item,
.ops-grid div,
.trip-board-meter div {
  border-color: #e4e7ec;
  background: #f9fafb;
}

.front-ops-panel {
  display: none;
}

body.ops-mode .front-ops-panel {
  display: block;
}

.event-dialog {
  width: min(980px, calc(100% - 28px));
  background: #ffffff;
}

.dialog-close {
  border-color: #d9dee8;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 8px 20px rgba(16, 24, 40, 0.12);
}

.detail-ticket-desk {
  display: grid;
  grid-template-columns: 284px minmax(0, 1fr);
  min-height: 300px;
  border-bottom: 1px solid #e4e7ec;
  background: #ffffff;
}

.detail-ticket-desk.ready {
  --desk-tone: var(--teal);
  --desk-soft: #f0fffb;
}

.detail-ticket-desk.watch {
  --desk-tone: #b45309;
  --desk-soft: #fffaf0;
}

.detail-ticket-desk.risk {
  --desk-tone: var(--red);
  --desk-soft: #fff5f5;
}

.detail-ticket-media {
  position: relative;
  display: grid;
  align-content: space-between;
  min-height: 300px;
  padding: 16px;
  background-image:
    linear-gradient(180deg, rgba(0, 0, 0, 0.06), rgba(0, 0, 0, 0.24)),
    var(--event-image, url("./assets/hero-couple-events.webp"));
  background-size: cover;
  background-position: var(--thumb-x, center) var(--thumb-y, center);
  color: #ffffff;
}

.detail-ticket-media span,
.detail-ticket-media small {
  position: relative;
  z-index: 1;
  display: inline-flex;
  width: fit-content;
  max-width: 100%;
  border-radius: 7px;
  font-weight: 900;
  line-height: 1.25;
}

.detail-ticket-media span {
  min-height: 28px;
  align-items: center;
  padding: 5px 10px;
  background: rgba(255, 255, 255, 0.94);
  color: var(--charcoal);
  font-size: 12px;
}

.detail-ticket-media small {
  padding: 7px 9px;
  background: rgba(17, 24, 39, 0.78);
  color: rgba(255, 255, 255, 0.92);
  font-size: 11px;
}

.detail-ticket-main {
  display: grid;
  align-content: start;
  gap: 14px;
  min-width: 0;
  padding: 26px 28px 20px;
}

.detail-ticket-title-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: start;
}

.detail-ticket-title-row span,
.detail-ticket-title-row h2,
.detail-ticket-title-row p,
.detail-ticket-title-row b,
.detail-ticket-facts small,
.detail-ticket-facts strong,
.detail-ticket-facts span,
.detail-ticket-redline {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-ticket-title-row span {
  color: var(--desk-tone);
  font-size: 12px;
  font-weight: 900;
}

.detail-ticket-title-row h2 {
  margin: 6px 0 4px;
  color: var(--charcoal);
  font-size: 28px;
  line-height: 1.22;
}

.detail-ticket-title-row p {
  margin: 0;
  color: #667085;
  font-size: 13px;
  line-height: 1.45;
}

.detail-ticket-title-row b {
  min-width: 92px;
  padding: 8px 10px;
  border: 1px solid color-mix(in srgb, var(--desk-tone) 34%, transparent);
  border-radius: 7px;
  background: var(--desk-soft);
  color: var(--desk-tone);
  font-size: 12px;
  text-align: center;
}

.detail-ticket-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.detail-ticket-facts div {
  min-width: 0;
  padding: 11px;
  border: 1px solid #e4e7ec;
  border-left: 3px solid var(--desk-tone);
  border-radius: 7px;
  background: #f9fafb;
}

.detail-ticket-facts small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.detail-ticket-facts strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.3;
}

.detail-ticket-facts span {
  margin-top: 5px;
  color: #667085;
  font-size: 12px;
  line-height: 1.42;
}

.compact-entry-status {
  --entry-tone: #2563eb;
  --entry-soft: #eff6ff;
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px 12px;
  border: 1px solid color-mix(in srgb, var(--entry-tone) 18%, #d9e2f2);
  border-left: 4px solid var(--entry-tone);
  border-radius: 8px;
  background: linear-gradient(135deg, var(--entry-soft), #ffffff);
}

.compact-entry-status.safe,
.compact-entry-status.ready {
  --entry-tone: var(--teal);
  --entry-soft: #f0fdfa;
}

.compact-entry-status.notice,
.compact-entry-status.review {
  --entry-tone: #2563eb;
  --entry-soft: #eff6ff;
}

.compact-entry-status.risk {
  --entry-tone: #b45309;
  --entry-soft: #fffaf0;
}

.compact-entry-status.danger {
  --entry-tone: var(--red);
  --entry-soft: #fff1f2;
}

.compact-entry-status span,
.compact-entry-status strong,
.compact-entry-status small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.compact-entry-status span {
  color: var(--entry-tone);
  font-size: 11px;
  font-weight: 900;
  line-height: 1.2;
}

.compact-entry-status strong {
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.3;
}

.compact-entry-status small {
  color: #667085;
  font-size: 12px;
  line-height: 1.42;
}

.detail-ticket-trust-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  padding: 9px;
  border: 1px solid color-mix(in srgb, var(--desk-tone) 22%, #e4e7ec);
  border-radius: 7px;
  background: linear-gradient(135deg, var(--desk-soft), #ffffff);
}

.detail-ticket-trust-strip div {
  min-width: 0;
  padding: 8px 9px;
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.78);
}

.detail-ticket-trust-strip small,
.detail-ticket-trust-strip strong,
.detail-ticket-trust-strip span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-ticket-trust-strip small {
  color: var(--desk-tone);
  font-size: 10px;
  font-weight: 900;
}

.detail-ticket-trust-strip strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.25;
}

.detail-ticket-trust-strip span {
  margin-top: 4px;
  color: #667085;
  font-size: 11px;
  line-height: 1.35;
}

.detail-ticket-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.detail-ticket-actions .compact-button,
.detail-preflight-actions .compact-button,
.ticket-cta-row .compact-button {
  min-width: 0;
  max-width: 100%;
  white-space: normal;
  line-height: 1.2;
  text-align: center;
  overflow-wrap: anywhere;
}

.detail-ticket-safety-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.detail-ticket-safety-chips span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 5px 9px;
  border: 1px solid color-mix(in srgb, var(--desk-tone) 22%, #e4e7ec);
  border-radius: 999px;
  background: var(--desk-soft);
  color: var(--desk-tone);
  font-size: 11px;
  font-weight: 900;
  line-height: 1.2;
}

.detail-ticket-redline {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #475467;
  font-size: 12px;
  line-height: 1.5;
}

.detail-map-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 14px 28px;
  border-bottom: 1px solid #e4e7ec;
  background: #fbfcfd;
}

.detail-map-copy small,
.detail-map-copy strong,
.detail-map-copy span,
.detail-map-copy em {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-map-copy small {
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
}

.detail-map-copy strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 16px;
  line-height: 1.3;
}

.detail-map-copy span {
  margin-top: 4px;
  color: #344054;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.45;
}

.detail-map-copy em {
  margin-top: 4px;
  color: #667085;
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}

.detail-map-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.detail-entry-hub {
  --entry-tone: #b45309;
  --entry-soft: #fffaf0;
  display: grid;
  gap: 12px;
  padding: 16px 28px 18px;
  border-bottom: 1px solid #e4e7ec;
  background: linear-gradient(135deg, var(--entry-soft), #ffffff 70%);
}

.detail-entry-hub.ready {
  --entry-tone: var(--teal);
  --entry-soft: #f0fdfa;
}

.detail-entry-hub.easy {
  --entry-tone: #0f766e;
  --entry-soft: #f2fbf8;
}

.detail-entry-hub.watch {
  --entry-tone: #b45309;
  --entry-soft: #fffaf0;
}

.detail-entry-hub.danger {
  --entry-tone: var(--red);
  --entry-soft: #fff5f5;
}

.detail-entry-head {
  display: grid;
  gap: 4px;
}

.detail-entry-head small,
.detail-entry-head strong,
.detail-entry-head span,
.detail-entry-grid small,
.detail-entry-grid strong,
.detail-entry-grid span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-entry-head small {
  color: var(--entry-tone);
  font-size: 11px;
  font-weight: 900;
}

.detail-entry-head strong {
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.32;
}

.detail-entry-head span {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.detail-entry-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 9px;
}

.detail-entry-grid article {
  display: grid;
  grid-template-rows: auto auto minmax(58px, 1fr) auto;
  gap: 7px;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-top: 3px solid var(--entry-tone);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.92);
}

.detail-entry-grid article.ticket {
  border-top-color: var(--red);
}

.detail-entry-grid article.map {
  border-top-color: #2563eb;
}

.detail-entry-grid article.assist {
  border-top-color: #7c3aed;
}

.detail-entry-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.detail-entry-grid strong {
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.32;
}

.detail-entry-grid span {
  color: #475467;
  font-size: 12px;
  line-height: 1.45;
}

.simple-detail-body {
  display: grid;
  gap: 12px;
  padding-top: 16px;
}

.detail-simple-actions {
  --simple-tone: #b45309;
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 12px;
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-left: 4px solid var(--simple-tone);
  border-radius: 8px;
  background: #fff;
}

.detail-simple-actions.ready,
.detail-simple-actions.easy {
  --simple-tone: var(--teal);
}

.detail-simple-actions.danger,
.detail-simple-actions.risk {
  --simple-tone: var(--red);
}

.detail-simple-head {
  display: grid;
  gap: 4px;
}

.detail-simple-head small,
.detail-simple-head strong,
.detail-simple-head span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-simple-head small {
  color: var(--simple-tone);
  font-size: 11px;
  font-weight: 900;
}

.detail-simple-head strong {
  color: var(--charcoal);
  font-size: 17px;
  line-height: 1.32;
}

.detail-simple-head span {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.detail-simple-action-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.detail-simple-action-row .compact-button,
.detail-simple-action-row .detail-entry-action {
  min-height: 36px;
  padding: 7px 12px;
}

.detail-booking-panel {
  --booking-tone: #b45309;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, auto);
  gap: 12px;
  align-items: center;
  padding: 13px 14px;
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-left: 4px solid var(--booking-tone);
  border-radius: 8px;
  background: #ffffff;
}

.detail-booking-panel.ready,
.detail-booking-panel.easy {
  --booking-tone: var(--teal);
}

.detail-booking-panel.danger,
.detail-booking-panel.risk {
  --booking-tone: var(--red);
}

.detail-booking-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.detail-booking-copy small,
.detail-booking-copy strong,
.detail-booking-copy span,
.detail-booking-copy em {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-booking-copy small {
  color: var(--booking-tone);
  font-size: 11px;
  font-weight: 900;
}

.detail-booking-copy strong {
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.28;
}

.detail-booking-copy span {
  color: #475467;
  font-size: 13px;
  line-height: 1.45;
}

.detail-booking-copy em {
  color: #667085;
  font-size: 12px;
  font-style: normal;
  line-height: 1.4;
}

.detail-booking-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 7px;
  min-width: 0;
}

.detail-booking-actions .primary-button {
  min-width: 118px;
}

.detail-booking-actions .compact-button,
.detail-booking-actions .detail-entry-action {
  min-height: 34px;
  padding: 7px 10px;
}

.simple-detail-body > .dialog-tags,
.simple-detail-body > .dialog-actions {
  display: none !important;
}

body:not(.ops-mode) .detail-ticket-desk {
  grid-template-columns: 260px minmax(0, 1fr);
  min-height: 240px;
}

body:not(.ops-mode) .detail-ticket-media {
  min-height: 240px;
  padding: 14px;
}

body:not(.ops-mode) .detail-ticket-main {
  gap: 10px;
  padding: 22px 24px 16px;
}

body:not(.ops-mode) .detail-ticket-title-row h2 {
  font-size: 25px;
}

body:not(.ops-mode) .detail-ticket-facts div {
  padding: 9px 10px;
}

body:not(.ops-mode) .detail-ticket-facts span {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

body:not(.ops-mode) .detail-ticket-trust-strip,
body:not(.ops-mode) .detail-ticket-actions,
body:not(.ops-mode) .detail-ticket-safety-chips,
body:not(.ops-mode) .detail-ticket-redline {
  display: none !important;
}

.detail-entry-grid article > div {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-self: end;
}

.detail-entry-action {
  min-height: 34px;
  min-width: 0;
  padding: 7px 10px;
  white-space: normal;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  overflow-wrap: anywhere;
}

.detail-preflight-panel {
  display: grid;
  gap: 12px;
  margin-bottom: 14px;
  padding: 14px;
  border: 1px solid #e4e7ec;
  border-left: 4px solid var(--red);
  border-radius: 8px;
  background: #ffffff;
}

.detail-preflight-head small,
.detail-preflight-head strong,
.detail-preflight-head span,
.detail-preflight-grid small,
.detail-preflight-grid strong,
.detail-preflight-grid span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-preflight-head small {
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
}

.detail-preflight-head strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.3;
}

.detail-preflight-head span {
  margin-top: 5px;
  color: #667085;
  font-size: 13px;
  line-height: 1.5;
}

.detail-preflight-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.detail-preflight-grid div {
  min-width: 0;
  padding: 11px;
  border: 1px solid #e4e7ec;
  border-radius: 7px;
  background: #f9fafb;
}

.detail-preflight-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.detail-preflight-grid strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.3;
}

.detail-preflight-grid span {
  margin-top: 5px;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.detail-preflight-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.field-rule-strip {
  display: grid;
  gap: 11px;
  margin: 0 0 14px;
  padding: 13px;
  border: 1px solid #e4e7ec;
  border-left: 4px solid var(--teal);
  border-radius: 8px;
  background: #ffffff;
}

.field-rule-strip.fireworks {
  border-left-color: #d97706;
  background: linear-gradient(135deg, #fff7ed, #ffffff 72%);
}

.field-rule-strip.free {
  border-left-color: var(--teal);
  background: linear-gradient(135deg, #eefaf6, #ffffff 72%);
}

.field-rule-head small,
.field-rule-head strong,
.field-rule-head span,
.field-rule-grid small,
.field-rule-grid strong,
.field-rule-grid span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.field-rule-head small {
  color: var(--teal);
  font-size: 11px;
  font-weight: 900;
}

.field-rule-strip.fireworks .field-rule-head small {
  color: #b45309;
}

.field-rule-head strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 16px;
  line-height: 1.3;
}

.field-rule-head span {
  margin-top: 5px;
  color: #667085;
  font-size: 12px;
  line-height: 1.5;
}

.field-rule-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.field-rule-grid div {
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 7px;
  background: rgba(255, 255, 255, 0.78);
}

.field-rule-grid small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.field-rule-grid strong {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.3;
}

.field-rule-grid span {
  margin-top: 5px;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.detail-more-disclosure {
  margin: 14px 0;
  border: 1px solid #e4e7ec;
  border-radius: 8px;
  background: #ffffff;
}

.detail-more-disclosure summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 50px;
  padding: 0 14px;
  color: var(--charcoal);
  cursor: pointer;
  list-style: none;
}

.detail-more-disclosure summary::-webkit-details-marker {
  display: none;
}

.detail-more-disclosure summary::after {
  content: "+";
  display: grid;
  flex: 0 0 auto;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 999px;
  background: var(--red-soft);
  color: var(--red);
  font-weight: 900;
}

.detail-more-disclosure[open] summary::after {
  content: "-";
}

.detail-more-disclosure summary span,
.detail-more-disclosure summary small {
  display: block;
  min-width: 0;
}

.detail-more-disclosure summary span {
  font-size: 15px;
  font-weight: 900;
}

.detail-more-disclosure summary small {
  color: #667085;
  font-size: 12px;
  font-weight: 800;
}

.detail-more-content {
  display: grid;
  gap: 12px;
  padding: 0 14px 14px;
}

.detail-more-content > .dialog-section {
  margin: 0;
}

.detail-more-compact {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.detail-more-compact article {
  display: grid;
  gap: 6px;
  min-width: 0;
  padding-left: 12px;
  border-left: 3px solid #d9362b;
}

.detail-more-compact article:nth-child(2) {
  border-left-color: #087f78;
}

.detail-more-compact article:nth-child(3) {
  border-left-color: #9a6a12;
}

.detail-more-compact small,
.detail-more-compact strong,
.detail-more-compact em,
.detail-more-compact span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.detail-more-compact small {
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
}

.detail-more-compact strong {
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.35;
}

.detail-more-compact em,
.detail-more-compact span {
  color: #667085;
  font-size: 12px;
  font-style: normal;
  line-height: 1.45;
}

.account-button.active {
  border-color: rgba(217, 54, 43, 0.28);
  background: var(--red-soft);
  color: var(--red);
}

.auth-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

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

.auth-benefits div {
  min-width: 0;
  padding: 10px;
  border: 1px solid #e4e7ec;
  border-radius: 8px;
  background: #f8fafc;
}

.auth-benefits strong,
.auth-benefits span {
  display: block;
}

.auth-benefits strong {
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
}

.auth-benefits span {
  margin-top: 4px;
  color: #667085;
  font-size: 12px;
  line-height: 1.4;
}

.account-content {
  display: grid;
  gap: 14px;
}

.account-hero {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  padding: 14px;
  border: 1px solid #e4e7ec;
  border-left: 4px solid var(--red);
  border-radius: 8px;
  background: #fffafa;
}

.account-hero small,
.account-hero strong,
.account-hero span,
.account-hero b {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.account-hero small {
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
}

.account-hero strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 22px;
  line-height: 1.2;
}

.account-hero span {
  margin-top: 4px;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.account-hero b {
  flex: 0 0 auto;
  padding: 5px 8px;
  border-radius: 999px;
  background: #ffffff;
  color: var(--teal);
  font-size: 11px;
}

.account-kpis {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.account-kpis div {
  min-width: 0;
  padding: 10px;
  border: 1px solid #e4e7ec;
  border-radius: 8px;
  background: #ffffff;
}

.account-kpis span,
.account-kpis strong {
  display: block;
  min-width: 0;
}

.account-kpis span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.account-kpis strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 20px;
}

.account-action-hub {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid rgba(217, 54, 43, 0.16);
  border-radius: 8px;
  background: #fffafa;
}

.account-action-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.account-action-card {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #ffffff;
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.account-action-card:hover {
  border-color: rgba(217, 54, 43, 0.24);
  background: #fff5f5;
}

.account-action-card span,
.account-action-card strong,
.account-action-card small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.account-action-card span {
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
}

.account-action-card strong {
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.3;
}

.account-action-card small {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.account-section {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid #e4e7ec;
  border-radius: 8px;
  background: #ffffff;
}

.account-section-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
}

.account-section-head strong,
.account-section-head small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.account-section-head strong {
  color: var(--charcoal);
  font-size: 15px;
}

.account-section-head small {
  color: #667085;
  font-size: 11px;
  font-weight: 800;
  text-align: right;
}

.account-event-row,
.account-record-row,
.account-empty {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 9px 10px;
  border: 1px solid #edf0f4;
  border-radius: 8px;
  background: #f7f8fa;
  color: inherit;
  text-align: left;
}

.account-event-row {
  cursor: pointer;
}

.account-event-row:hover {
  border-color: rgba(217, 54, 43, 0.24);
  background: var(--red-soft);
}

.account-event-row span,
.account-event-row strong,
.account-event-row small,
.account-record-row span,
.account-record-row strong,
.account-record-row small,
.account-empty,
.account-note {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.account-event-row span,
.account-record-row span {
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
}

.account-event-row strong,
.account-record-row strong {
  color: var(--charcoal);
  font-size: 13px;
  line-height: 1.35;
}

.account-event-row small,
.account-record-row small,
.account-empty,
.account-note {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.account-logout {
  justify-self: start;
}

@media (max-width: 1180px) {
  .app-shell {
    grid-template-columns: 188px minmax(0, 1fr);
  }
}

@media (max-width: 920px) {
  .hero-inner,
  .command-strip,
  .app-shell {
    width: calc(100% - 28px);
  }

  .app-shell {
    grid-template-columns: 1fr;
  }

  .right-rail {
    grid-column: auto;
  }

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

  .event-card {
    grid-template-columns: 1fr;
  }

  .card-access-strip {
    grid-template-columns: 1fr;
  }

  .card-map-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    min-width: 0;
  }

  @supports (content-visibility: auto) {
    .event-card {
      contain-intrinsic-size: 620px;
    }
  }

  .event-thumb {
    min-height: 190px;
  }

  .detail-ticket-desk {
    grid-template-columns: 1fr;
  }

  .detail-ticket-media {
    min-height: 210px;
  }

  .detail-ticket-trust-strip {
    grid-template-columns: 1fr;
  }

  .detail-map-panel {
    grid-template-columns: 1fr;
    padding: 14px 16px;
  }

  .detail-map-actions {
    justify-content: flex-start;
  }

  .detail-entry-hub {
    padding: 14px 16px;
  }

  .detail-entry-grid {
    grid-template-columns: 1fr;
  }

  .detail-booking-panel {
    grid-template-columns: 1fr;
  }

  .detail-booking-actions {
    justify-content: flex-start;
  }

  .detail-preflight-grid {
    grid-template-columns: 1fr;
  }

  .field-rule-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .topbar {
    height: 62px;
  }

  .hero-inner {
    width: calc(100% - 24px);
    padding-top: 18px;
  }

  .hero h1 {
    font-size: 28px;
  }

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

  .command-strip,
  .app-shell {
    width: calc(100% - 24px);
  }

  .year-month-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .event-dialog {
    width: min(100% - 18px, 980px);
  }

  .detail-ticket-main {
    padding: 20px 16px 16px;
  }

  .detail-ticket-title-row,
  .detail-ticket-facts {
    grid-template-columns: 1fr;
  }

  .detail-ticket-title-row h2 {
    font-size: 24px;
  }

  .detail-ticket-title-row b {
    justify-self: start;
  }

  .detail-ticket-actions .compact-button {
    width: 100%;
  }

  .detail-preflight-actions .compact-button {
    width: 100%;
  }

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

  .auth-actions,
  .account-hero,
  .account-section-head {
    display: grid;
  }

  .auth-benefits {
    grid-template-columns: 1fr;
  }

  .auth-actions .primary-button,
  .auth-actions .secondary-button {
    width: 100%;
  }

  .account-kpis {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .account-action-grid {
    grid-template-columns: 1fr;
  }

  .account-section-head small {
    text-align: left;
  }
}

body:not(.ops-mode) .topnav a[href="#map"],
body:not(.ops-mode) .topnav a[href="#saved"],
body:not(.ops-mode) #mobileFilterToggle,
body:not(.ops-mode) .filter-panel,
body:not(.ops-mode) .right-rail,
body:not(.ops-mode) .hero-metrics,
body:not(.ops-mode) .rank-board,
body:not(.ops-mode) .spotlight,
body:not(.ops-mode) #openReminder {
  display: none !important;
}

body:not(.ops-mode) .hero-inner,
body:not(.ops-mode) .command-strip,
body:not(.ops-mode) .app-shell {
  width: min(1180px, calc(100% - 32px));
}

body:not(.ops-mode) .hero-inner {
  padding: 18px 0 14px;
}

body:not(.ops-mode) .hero-copy {
  margin-bottom: 10px;
}

body:not(.ops-mode) .hero h1 {
  font-size: clamp(28px, 2.7vw, 38px);
}

body:not(.ops-mode) .planner {
  grid-template-columns: minmax(280px, 1fr) 164px 164px 112px;
  box-shadow: none;
}

body:not(.ops-mode) .command-strip {
  margin-bottom: 10px;
  padding: 8px 0;
}

body:not(.ops-mode) .quick-filter {
  min-height: 32px;
  padding: 0 12px;
}

body:not(.ops-mode) .app-shell {
  display: block;
}

body:not(.ops-mode) .feed {
  padding: 16px;
}

body:not(.ops-mode) .feed-toolbar {
  margin-bottom: 10px;
}

body:not(.ops-mode) .feed-toolbar .eyebrow {
  display: none;
}

body:not(.ops-mode) .toolbar-actions {
  justify-content: flex-end;
}

body:not(.ops-mode) .result-insights > :not(.result-brief) {
  display: none !important;
}

body:not(.ops-mode) .card-image-safety,
body:not(.ops-mode) .card-couple-hint,
body:not(.ops-mode) .card-fireworks-hint,
body:not(.ops-mode) .card-high-demand-hint,
body:not(.ops-mode) .card-next-strip {
  display: none !important;
}

body:not(.ops-mode) .event-card.compact-card,
body:not(.ops-mode) .event-card.featured-card {
  grid-template-columns: 154px minmax(0, 1fr);
}

body:not(.ops-mode) .event-card.compact-card .event-body,
body:not(.ops-mode) .event-card.featured-card .event-body {
  padding: 12px 14px;
}

body:not(.ops-mode) .event-card.compact-card .meta-grid,
body:not(.ops-mode) .event-card.featured-card .meta-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 8px 0;
}

body:not(.ops-mode) .event-card.compact-card .card-access-strip,
body:not(.ops-mode) .event-card.featured-card .card-access-strip {
  grid-template-columns: minmax(0, 1fr) minmax(118px, 150px) auto;
  gap: 8px;
  margin: 0 0 8px;
  padding: 8px 9px;
}

body:not(.ops-mode) .event-card.compact-card .card-access-strip > div:nth-child(2),
body:not(.ops-mode) .event-card.featured-card .card-access-strip > div:nth-child(2),
body:not(.ops-mode) .event-card.compact-card .card-entry-action,
body:not(.ops-mode) .event-card.featured-card .card-entry-action {
  display: grid;
  align-content: center;
  padding-left: 8px;
  border-left: 1px solid rgba(16, 24, 40, 0.08);
}

body:not(.ops-mode) .event-card.compact-card .card-access-strip strong,
body:not(.ops-mode) .event-card.featured-card .card-access-strip strong {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

body:not(.ops-mode) .event-card.compact-card .card-access-strip span,
body:not(.ops-mode) .event-card.featured-card .card-access-strip span {
  display: none;
}

body:not(.ops-mode) .event-card.compact-card .card-map-actions,
body:not(.ops-mode) .event-card.featured-card .card-map-actions {
  grid-template-columns: repeat(2, minmax(0, auto));
  min-width: 0;
}

body:not(.ops-mode) .event-card.compact-card .card-map-actions a,
body:not(.ops-mode) .event-card.featured-card .card-map-actions a {
  min-height: 26px;
  padding: 0 8px;
}

body:not(.ops-mode) .event-card.compact-card .meta-grid span:nth-child(4),
body:not(.ops-mode) .event-card.featured-card .meta-grid span:nth-child(4) {
  display: none;
}

body:not(.ops-mode) .event-card.compact-card .event-summary,
body:not(.ops-mode) .event-card.featured-card .event-summary {
  margin-bottom: 8px;
  -webkit-line-clamp: 1;
}

body:not(.ops-mode) .event-card.compact-card .signal-row,
body:not(.ops-mode) .event-card.featured-card .signal-row {
  margin-bottom: 8px;
}

body:not(.ops-mode) .event-card.compact-card .signal-row span:nth-child(n+4),
body:not(.ops-mode) .event-card.featured-card .signal-row span:nth-child(n+4) {
  display: none;
}

body:not(.ops-mode) .event-card.compact-card .card-actions,
body:not(.ops-mode) .event-card.featured-card .card-actions {
  grid-template-columns: auto minmax(0, 1fr);
}

body:not(.ops-mode) .event-card.compact-card .detail-button,
body:not(.ops-mode) .event-card.featured-card .detail-button {
  min-height: 34px;
  padding: 0 12px;
}

body:not(.ops-mode) .empty-recovery > .no-result-diagnosis,
body:not(.ops-mode) .empty-recovery > .no-result-status-panel,
body:not(.ops-mode) .empty-recovery > .no-result-split-panel,
body:not(.ops-mode) .empty-recovery > .no-result-rewrite-panel,
body:not(.ops-mode) .empty-recovery > .no-result-action-checklist,
body:not(.ops-mode) .empty-recovery > .no-result-demand-capture,
body:not(.ops-mode) .empty-recovery > .empty-recovery-grid,
body:not(.ops-mode) .empty-recovery > div:not([class]) {
  display: none !important;
}

body:not(.ops-mode) .no-result-rescue-panel {
  padding: 14px;
  border-color: #e4e7ec;
  background: #fff;
  box-shadow: none;
}

body:not(.ops-mode) .no-result-rescue-head {
  gap: 5px;
}

body:not(.ops-mode) .no-result-rescue-head small {
  font-size: 11px;
}

body:not(.ops-mode) .no-result-rescue-head strong {
  font-size: 18px;
}

body:not(.ops-mode) .no-result-rescue-head span {
  max-width: 760px;
}

body:not(.ops-mode) .no-result-rescue-actions {
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 8px;
}

body:not(.ops-mode) .no-result-rescue-action {
  min-height: 92px;
  padding: 10px;
}

body:not(.ops-mode) .no-result-rescue-action b {
  width: 24px;
  height: 24px;
}

body:not(.ops-mode) .result-brief {
  padding: 10px 12px;
}

body:not(.ops-mode) .result-brief h3 {
  font-size: 16px;
}

body:not(.ops-mode) .month-archive {
  margin-top: 8px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

body:not(.ops-mode) .month-archive > div:first-child {
  display: none;
}

body:not(.ops-mode) .month-archive-list {
  gap: 8px;
}

body:not(.ops-mode) .year-month-panel {
  grid-template-columns: minmax(72px, 96px) minmax(0, 1fr);
  gap: 8px;
  padding: 8px;
  border-left-width: 3px;
  background: #fff;
}

body:not(.ops-mode) .year-month-head {
  gap: 4px;
}

body:not(.ops-mode) .year-month-head strong {
  font-size: 17px;
}

body:not(.ops-mode) .year-month-head small {
  display: none;
}

body:not(.ops-mode) .year-month-head b {
  font-size: 11px;
}

body:not(.ops-mode) .year-month-grid {
  grid-template-columns: repeat(auto-fit, minmax(92px, 1fr));
  gap: 6px;
}

body:not(.ops-mode) .month-card {
  min-height: 58px;
  padding: 9px 9px 8px 12px;
}

body:not(.ops-mode) .month-card span,
body:not(.ops-mode) .month-card em,
body:not(.ops-mode) .month-card .month-card-tags {
  display: none;
}

body:not(.ops-mode) .month-card strong {
  margin-top: 0;
  font-size: 18px;
}

body:not(.ops-mode) .month-card small {
  margin-top: 4px;
  font-size: 11px;
}

body:not(.ops-mode) .event-grid {
  gap: 8px;
}

@media (max-width: 640px) {
  body:not(.ops-mode) .month-archive {
    margin-top: 6px;
  }

  body:not(.ops-mode) .year-month-panel {
    grid-template-columns: 70px minmax(0, 1fr);
    gap: 7px;
    align-items: center;
    padding: 7px;
  }

  body:not(.ops-mode) .year-month-head {
    display: grid;
    align-content: center;
    gap: 3px;
  }

  body:not(.ops-mode) .year-month-head span {
    min-width: 0;
  }

  body:not(.ops-mode) .year-month-head strong {
    font-size: 15px;
  }

  body:not(.ops-mode) .year-month-head b {
    font-size: 10px;
  }

  body:not(.ops-mode) .year-month-grid {
    display: flex;
    gap: 6px;
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 2px;
    scroll-snap-type: x proximity;
    scrollbar-width: thin;
  }

  body:not(.ops-mode) .month-card {
    flex: 0 0 82px;
    min-height: 44px;
    padding: 7px 8px 7px 10px;
    scroll-snap-align: start;
  }

  body:not(.ops-mode) .month-card strong {
    font-size: 15px;
  }

  body:not(.ops-mode) .month-card small {
    margin-top: 3px;
    font-size: 9px;
  }

  body:not(.ops-mode) .event-card.compact-card .card-access-strip,
  body:not(.ops-mode) .event-card.featured-card .card-access-strip {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  body:not(.ops-mode) .event-card.compact-card .card-access-strip > div:nth-child(2),
  body:not(.ops-mode) .event-card.featured-card .card-access-strip > div:nth-child(2),
  body:not(.ops-mode) .event-card.compact-card .card-entry-action,
  body:not(.ops-mode) .event-card.featured-card .card-entry-action {
    grid-column: 1 / -1;
    padding: 7px 0 0;
    border-top: 1px solid rgba(16, 24, 40, 0.08);
    border-left: 0;
  }
}

@media (max-width: 920px) {
  body:not(.ops-mode) .hero-inner,
  body:not(.ops-mode) .playguide-panel,
  body:not(.ops-mode) .command-strip,
  body:not(.ops-mode) .app-shell {
    width: calc(100% - 24px);
  }

  body:not(.ops-mode) .planner {
    grid-template-columns: 1fr 1fr;
  }

  .playguide-inner {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    padding: 8px;
  }

  .playguide-lead {
    flex: 0 0 152px;
    border-right: 0;
    border-bottom: 0;
    border-right: 1px solid #edf0f4;
  }

  .playguide-track {
    flex: 0 0 auto;
    min-width: 396px;
  }

  .playguide-track.playguide-categories {
    min-width: 520px;
  }

  .playguide-track.playguide-trust {
    min-width: 270px;
  }
}

@media (max-width: 560px) {
  body:not(.ops-mode) .planner {
    grid-template-columns: 1fr;
  }

  .playguide-track,
  .playguide-track.playguide-trust {
    grid-template-columns: auto repeat(3, minmax(92px, 1fr));
  }

  .playguide-track small {
    grid-column: auto;
  }

  .playguide-track.playguide-trust {
    grid-template-columns: auto repeat(2, minmax(104px, 1fr));
  }

  .playguide-track button {
    min-height: 44px;
    padding: 7px 9px;
  }
}

body:not(.ops-mode) .ticket-switchboard {
  display: flex !important;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 16px;
  margin-bottom: 10px;
  padding: 8px 0 10px;
}

.switchboard-group {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  min-width: 0;
}

.switchboard-group > span {
  flex: 0 0 auto;
  margin-right: 2px;
  color: #667085;
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
}

.ticket-filter {
  flex: 0 0 auto;
  min-height: 32px;
  padding: 0 12px;
  border: 1px solid #d9dee8;
  border-radius: 8px;
  background: #ffffff;
  color: #344054;
  font-size: 13px;
  font-weight: 800;
  white-space: nowrap;
}

.ticket-filter.active,
body:not(.ops-mode) .ticket-switchboard .quick-filter.active {
  border-color: rgba(217, 54, 43, 0.42);
  background: var(--red);
  color: #ffffff;
}

body:not(.ops-mode) .ticket-switchboard .quick-filter,
body:not(.ops-mode) .ticket-switchboard .ticket-filter {
  min-height: 32px;
  padding: 0 12px;
}

@media (max-width: 920px) {
  body:not(.ops-mode) .ticket-switchboard {
    width: calc(100% - 24px);
    flex-wrap: nowrap;
    overflow-x: auto;
  }

  .switchboard-group {
    flex: 0 0 auto;
    flex-wrap: nowrap;
  }
}

@media (max-width: 640px) {
  body:not(.ops-mode) .event-card.compact-card,
  body:not(.ops-mode) .event-card.featured-card {
    grid-template-columns: 1fr;
  }

  body:not(.ops-mode) .event-card.compact-card .event-thumb,
  body:not(.ops-mode) .event-card.featured-card .event-thumb {
    min-height: 188px;
  }
}

/* qa467: stronger first impression and simpler ticket actions */
body:not(.ops-mode) .hero {
  min-height: 328px;
  overflow: hidden;
  border-bottom: 0;
  background: #111820;
}

body:not(.ops-mode) .hero::before {
  display: none;
}

body:not(.ops-mode) .hero-bg,
body:not(.ops-mode) .hero-bg::after {
  display: block;
}

body:not(.ops-mode) .hero-bg {
  opacity: 1;
}

body:not(.ops-mode) .hero-bg::after {
  height: 118px;
  background: linear-gradient(180deg, rgba(247, 248, 250, 0), #f6f7f8);
}

body:not(.ops-mode) .hero-inner {
  align-content: center;
  justify-items: center;
  min-height: 328px;
  padding: 44px 0 44px;
  color: #ffffff;
  text-align: center;
}

body:not(.ops-mode) .hero-copy {
  justify-items: center;
  max-width: 780px;
  margin: 0 0 20px;
}

body:not(.ops-mode) .hero h1 {
  justify-items: center;
  color: #ffffff;
  font-family: "Source Han Serif SC", "Noto Serif CJK SC", "Songti SC", "STSong", "SimSun", serif;
  font-size: clamp(42px, 4.3vw, 60px);
  font-weight: 800;
  line-height: 1.08;
  letter-spacing: 0;
  text-shadow:
    0 2px 13px rgba(22, 55, 92, 0.42),
    0 0 24px rgba(255, 255, 255, 0.32);
}

body:not(.ops-mode) .hero-copy p {
  max-width: 760px;
  margin: 0;
  color: rgba(255, 255, 255, 0.92);
  font-family: "PingFang SC", "Hiragino Sans GB", "Noto Sans CJK SC", "Microsoft YaHei UI", "Microsoft YaHei", sans-serif;
  font-size: 17px;
  font-weight: 400;
  letter-spacing: 0;
  text-shadow: 0 2px 14px rgba(22, 55, 92, 0.36);
}

body:not(.ops-mode) .planner {
  width: min(1000px, 100%);
  grid-template-columns: minmax(260px, 1.35fr) 150px 150px 118px;
  gap: 8px;
  padding: 8px;
  border-color: rgba(255, 255, 255, 0.72);
  background: rgba(255, 253, 248, 0.97);
  box-shadow: 0 22px 58px rgba(0, 0, 0, 0.24);
}

body:not(.ops-mode) .planner .primary-button {
  min-height: 54px;
}

body:not(.ops-mode) .playguide-panel {
  position: relative;
  z-index: 4;
  margin: -28px auto 16px;
}

body:not(.ops-mode) .playguide-inner {
  grid-template-columns: 150px minmax(270px, 0.95fr) minmax(408px, 1.32fr) minmax(210px, 0.78fr);
  padding: 8px;
  border-color: rgba(16, 24, 40, 0.09);
  background: rgba(255, 255, 255, 0.98);
  box-shadow: 0 18px 46px rgba(16, 24, 40, 0.14);
}

body:not(.ops-mode) .playguide-lead {
  padding: 8px 10px;
}

body:not(.ops-mode) .playguide-lead span {
  color: var(--red);
}

body:not(.ops-mode) .playguide-lead strong {
  font-size: 15px;
}

body:not(.ops-mode) .playguide-track button {
  min-height: 48px;
  background: #ffffff;
}

body:not(.ops-mode) .playguide-track button:hover,
body:not(.ops-mode) .playguide-track button.active {
  border-color: rgba(217, 54, 43, 0.4);
  background: #fff6f4;
  box-shadow: 0 7px 18px rgba(217, 54, 43, 0.08);
}

body:not(.ops-mode) .ticket-switchboard {
  display: none !important;
}

body:not(.ops-mode) .app-shell {
  margin-top: 0;
}

body:not(.ops-mode) .feed {
  padding: 18px;
  border-color: rgba(16, 24, 40, 0.08);
  box-shadow: 0 18px 48px rgba(16, 24, 40, 0.08);
}

body:not(.ops-mode) .feed-toolbar {
  margin-bottom: 12px;
}

body:not(.ops-mode) .event-grid {
  gap: 12px;
}

body:not(.ops-mode) .event-card.compact-card,
body:not(.ops-mode) .event-card.featured-card {
  grid-template-columns: 220px minmax(0, 1fr);
  border-color: rgba(16, 24, 40, 0.08);
  box-shadow: 0 6px 18px rgba(16, 24, 40, 0.05);
}

body:not(.ops-mode) .event-card.compact-card:hover,
body:not(.ops-mode) .event-card.featured-card:hover {
  border-color: rgba(217, 54, 43, 0.28);
  box-shadow: 0 14px 32px rgba(16, 24, 40, 0.1);
}

body:not(.ops-mode) .event-card.compact-card .event-thumb,
body:not(.ops-mode) .event-card.featured-card .event-thumb {
  min-height: 232px;
}

body:not(.ops-mode) .event-card.compact-card .event-body,
body:not(.ops-mode) .event-card.featured-card .event-body {
  padding: 16px 18px 14px;
}

body:not(.ops-mode) .event-title-row h3 {
  font-size: 19px;
}

body:not(.ops-mode) .event-card.compact-card .meta-grid,
body:not(.ops-mode) .event-card.featured-card .meta-grid {
  margin: 9px 0 10px;
}

body:not(.ops-mode) .event-card.compact-card .card-access-strip,
body:not(.ops-mode) .event-card.featured-card .card-access-strip {
  grid-template-columns: minmax(0, 1fr) minmax(118px, 150px) auto;
  margin: 0 0 10px;
  background: #fbfcfd;
}

body:not(.ops-mode) .event-card.compact-card .event-summary,
body:not(.ops-mode) .event-card.featured-card .event-summary {
  margin-bottom: 10px;
  -webkit-line-clamp: 2;
}

body:not(.ops-mode) .event-card.compact-card .card-actions,
body:not(.ops-mode) .event-card.featured-card .card-actions {
  grid-template-columns: minmax(120px, 0.34fr) minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  padding-top: 10px;
  border-top: 1px solid #edf0f4;
}

body:not(.ops-mode) .event-card.compact-card .card-actions strong,
body:not(.ops-mode) .event-card.featured-card .card-actions strong {
  order: 1;
  justify-content: flex-start;
  font-size: 13px;
}

body:not(.ops-mode) .event-card.compact-card .detail-button,
body:not(.ops-mode) .event-card.featured-card .detail-button {
  order: 2;
  width: 100%;
  min-height: 42px;
  padding: 0 16px;
  font-size: 14px;
}

body:not(.ops-mode) .ticket-gate-dialog .reminder-content {
  max-width: min(620px, calc(100vw - 28px));
}

body:not(.ops-mode) .ticket-gate-dialog .reminder-content > p:not(.eyebrow) {
  color: #5d6672;
  font-size: 13px;
  line-height: 1.5;
}

body:not(.ops-mode) .purchase-gate {
  gap: 10px;
  margin-top: 10px;
  padding: 0;
  border: 0;
  background: transparent;
}

body:not(.ops-mode) .purchase-gate-head {
  padding: 10px 12px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #fff;
}

body:not(.ops-mode) .purchase-gate-head strong {
  margin-top: 4px;
  font-size: 18px;
}

body:not(.ops-mode) .purchase-gate-head span {
  display: none;
}

body:not(.ops-mode) .purchase-gate-decision {
  grid-template-columns: auto minmax(0, 1fr);
  gap: 6px 10px;
  padding: 11px;
  border-left: 4px solid var(--teal);
  background: #ffffff;
}

body:not(.ops-mode) .purchase-gate.risk .purchase-gate-decision,
body:not(.ops-mode) .purchase-gate.danger .purchase-gate-decision {
  border-left-color: var(--red);
}

body:not(.ops-mode) .purchase-gate-decision span,
body:not(.ops-mode) .purchase-gate-decision em {
  grid-column: 1 / -1;
}

body:not(.ops-mode) .purchase-gate-decision em {
  justify-self: start;
  text-align: left;
}

body:not(.ops-mode) .purchase-gate-actions {
  grid-template-columns: 1.15fr 0.9fr 0.9fr;
}

body:not(.ops-mode) .purchase-safe-line {
  justify-content: center;
}

body:not(.ops-mode) .purchase-route-disclosure summary,
body:not(.ops-mode) .purchase-review-disclosure summary {
  padding: 9px 10px;
  background: #ffffff;
}

@media (max-width: 920px) {
  body:not(.ops-mode) .hero {
    min-height: 392px;
  }

  body:not(.ops-mode) .hero-inner {
    min-height: 392px;
    padding: 34px 0 42px;
  }

  body:not(.ops-mode) .hero h1 {
    font-size: clamp(34px, 8vw, 48px);
  }

  body:not(.ops-mode) .planner {
    width: 100%;
    grid-template-columns: 1fr 1fr;
  }

  body:not(.ops-mode) .playguide-panel {
    margin-top: -24px;
  }

  body:not(.ops-mode) .playguide-inner {
    padding: 8px;
  }
}

@media (max-width: 640px) {
  body:not(.ops-mode) .hero {
    min-height: 382px;
  }

  body:not(.ops-mode) .hero-inner {
    min-height: 382px;
    padding: 26px 0 42px;
  }

  body:not(.ops-mode) .planner {
    grid-template-columns: 1fr 1fr;
    gap: 7px;
  }

  body:not(.ops-mode) .hero-copy p {
    font-size: 14px;
  }

  body:not(.ops-mode) .hero h1 {
    font-size: clamp(32px, 9vw, 42px);
  }

  body:not(.ops-mode) .planner .field.wide,
  body:not(.ops-mode) .planner .primary-button {
    grid-column: 1 / -1;
  }

  body:not(.ops-mode) .planner .primary-button {
    min-height: 50px;
  }

  body:not(.ops-mode) .event-card.compact-card,
  body:not(.ops-mode) .event-card.featured-card {
    grid-template-columns: 1fr;
  }

  body:not(.ops-mode) .event-card.compact-card .event-thumb,
  body:not(.ops-mode) .event-card.featured-card .event-thumb {
    min-height: 194px;
  }

  body:not(.ops-mode) .event-card.compact-card .card-actions,
  body:not(.ops-mode) .event-card.featured-card .card-actions {
    grid-template-columns: 1fr;
  }

  body:not(.ops-mode) .event-card.compact-card .card-actions strong,
  body:not(.ops-mode) .event-card.featured-card .card-actions strong {
    justify-content: flex-start;
  }

  body:not(.ops-mode) .purchase-gate-actions {
    grid-template-columns: 1fr;
  }
}

/* qa468: visitor copy is shorter, so make action areas feel like clear app entries. */
body:not(.ops-mode) .playguide-track button,
body:not(.ops-mode) .card-entry-action,
body:not(.ops-mode) .detail-entry-action {
  border-radius: 8px;
}

body:not(.ops-mode) .playguide-track button {
  min-height: 54px;
}

body:not(.ops-mode) .card-access-strip {
  border-color: rgba(15, 23, 42, 0.08);
}

body:not(.ops-mode) .card-entry-action {
  min-height: 64px;
  border-color: rgba(217, 54, 43, 0.18);
  background: #fff8f6;
}

body:not(.ops-mode) .card-entry-action small {
  color: #9b2c23;
}

body:not(.ops-mode) .card-entry-action strong {
  color: #1f2937;
}

body:not(.ops-mode) .event-card.compact-card .card-actions strong,
body:not(.ops-mode) .event-card.featured-card .card-actions strong {
  min-height: 38px;
  padding: 0 12px;
  border: 1px solid #edf0f4;
  border-radius: 8px;
  background: #f8fafc;
}

body:not(.ops-mode) .detail-entry-grid article {
  border-radius: 8px;
}

body:not(.ops-mode) .detail-entry-grid article strong,
body:not(.ops-mode) .detail-simple-head strong,
body:not(.ops-mode) .purchase-gate-head strong {
  letter-spacing: 0;
}

body:not(.ops-mode) .purchase-gate-actions .primary-button {
  background: #d9362b;
}

body:not(.ops-mode) .purchase-gate-actions .secondary-button {
  background: #ffffff;
}

/* qa469: one clear ticket entry, fewer quick choices. */
body:not(.ops-mode) .playguide-panel {
  margin-bottom: 12px;
}

body:not(.ops-mode) .playguide-inner {
  grid-template-columns: minmax(230px, 0.72fr) minmax(0, 1.8fr);
  gap: 8px;
  align-items: stretch;
}

body:not(.ops-mode) .playguide-buy-entry {
  padding: 8px;
  border-right: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: linear-gradient(180deg, #fff7f5, #ffffff);
}

body:not(.ops-mode) .playguide-buy-entry button {
  display: grid;
  gap: 2px;
  min-height: 48px;
  margin-top: 6px;
  padding: 8px 10px;
  border: 1px solid rgba(217, 54, 43, 0.26);
  border-radius: 8px;
  background: #d9362b;
  color: #ffffff;
  text-align: left;
  cursor: pointer;
}

body:not(.ops-mode) .playguide-buy-entry button:hover,
body:not(.ops-mode) .playguide-buy-entry button.active {
  background: #c22f26;
}

body:not(.ops-mode) .playguide-buy-entry button b {
  color: #ffffff;
  font-size: 14px;
  line-height: 1.2;
}

body:not(.ops-mode) .playguide-buy-entry button em {
  color: rgba(255, 255, 255, 0.84);
  font-size: 11px;
  font-style: normal;
  line-height: 1.25;
}

body:not(.ops-mode) .playguide-main {
  grid-template-columns: auto repeat(5, minmax(92px, 1fr));
  gap: 6px;
}

body:not(.ops-mode) .playguide-main button {
  min-height: 54px;
}

body:not(.ops-mode) .playguide-main button:first-of-type {
  border-color: rgba(217, 54, 43, 0.22);
  background: #fff8f6;
}

@media (max-width: 920px) {
  body:not(.ops-mode) .playguide-inner {
    display: grid;
    grid-template-columns: 1fr;
    overflow: visible;
  }

  body:not(.ops-mode) .playguide-buy-entry {
    border-right: 0;
    border-bottom: 1px solid rgba(16, 24, 40, 0.08);
  }

  body:not(.ops-mode) .playguide-main {
    min-width: 0;
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  body:not(.ops-mode) .playguide-main {
    display: flex;
    overflow-x: auto;
    padding-bottom: 2px;
  }

  body:not(.ops-mode) .playguide-main small {
    flex: 0 0 auto;
    align-self: center;
  }

  body:not(.ops-mode) .playguide-main button {
    flex: 0 0 88px;
  }
}

/* qa470: tighten the visible formatting without adding new content. */
body:not(.ops-mode) .playguide-inner {
  padding: 9px;
  border-color: rgba(16, 24, 40, 0.08);
}

body:not(.ops-mode) .playguide-main {
  grid-template-columns: 48px repeat(5, minmax(96px, 1fr));
  align-items: stretch;
}

body:not(.ops-mode) .playguide-main small {
  display: grid;
  place-items: center;
  padding: 0;
  border-right: 1px solid #edf0f4;
}

body:not(.ops-mode) .playguide-main button {
  border-color: #e2e7ef;
  background: #ffffff;
}

body:not(.ops-mode) .month-archive {
  margin: 10px 0 12px;
  padding: 9px;
  border: 1px solid #edf0f4;
  border-radius: 8px;
  background: #fbfcfd;
}

body:not(.ops-mode) .month-archive-list {
  gap: 0;
}

body:not(.ops-mode) .year-month-panel {
  grid-template-columns: 94px minmax(0, 1fr);
  gap: 8px;
  padding: 6px 0;
  border: 0;
  background: transparent;
}

body:not(.ops-mode) .year-month-panel + .year-month-panel {
  margin-top: 4px;
  padding-top: 10px;
  border-top: 1px solid #edf0f4;
}

body:not(.ops-mode) .year-month-head {
  padding-left: 2px;
  border-left: 3px solid var(--teal);
}

body:not(.ops-mode) .year-month-head b {
  color: var(--red);
}

body:not(.ops-mode) .year-month-grid {
  gap: 8px;
}

body:not(.ops-mode) .month-card {
  min-height: 54px;
  border-color: #e4e7ec;
  background: #ffffff !important;
  box-shadow: none;
}

body:not(.ops-mode) .month-card::before {
  width: 3px;
  opacity: 0.5;
}

body:not(.ops-mode) .month-card:hover,
body:not(.ops-mode) .month-card.active {
  border-color: rgba(217, 54, 43, 0.32);
  background: #fff8f6 !important;
  box-shadow: none;
}

body:not(.ops-mode) .event-card.compact-card .detail-button,
body:not(.ops-mode) .event-card.featured-card .detail-button {
  border-color: rgba(217, 54, 43, 0.28);
  background: #ffffff;
  color: #9b2c23;
}

body:not(.ops-mode) .event-card.compact-card .detail-button.action-safe,
body:not(.ops-mode) .event-card.compact-card .detail-button.action-ready,
body:not(.ops-mode) .event-card.featured-card .detail-button.action-safe,
body:not(.ops-mode) .event-card.featured-card .detail-button.action-ready {
  border-color: #d9362b;
  background: #d9362b;
  color: #ffffff;
}

body:not(.ops-mode) .event-card.compact-card .detail-button.action-risk,
body:not(.ops-mode) .event-card.compact-card .detail-button.action-watch,
body:not(.ops-mode) .event-card.featured-card .detail-button.action-risk,
body:not(.ops-mode) .event-card.featured-card .detail-button.action-watch {
  border-color: rgba(217, 119, 6, 0.32);
  background: #fff7ed;
  color: #9a3412;
}

body:not(.ops-mode) .detail-entry-grid {
  gap: 8px;
}

body:not(.ops-mode) .detail-entry-grid article {
  padding: 12px;
}

body:not(.ops-mode) .detail-entry-action {
  min-height: 38px;
  padding: 0 12px;
}

/* qa475: cleaner list cards and less crowded detail header. */
body:not(.ops-mode) .event-card.compact-card,
body:not(.ops-mode) .event-card.featured-card {
  grid-template-columns: 210px minmax(0, 1fr);
}

body:not(.ops-mode) .event-card.compact-card .event-thumb,
body:not(.ops-mode) .event-card.featured-card .event-thumb {
  min-height: 218px;
}

body:not(.ops-mode) .event-card.compact-card .event-body,
body:not(.ops-mode) .event-card.featured-card .event-body {
  padding: 15px 18px 14px;
}

body:not(.ops-mode) .event-card.compact-card .card-access-strip,
body:not(.ops-mode) .event-card.featured-card .card-access-strip {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  min-height: 52px;
  margin: 0 0 10px;
  padding: 8px 10px;
  border-left-width: 3px;
  background: #f8fafc;
}

body:not(.ops-mode) .event-card.compact-card .card-access-strip > div:first-child,
body:not(.ops-mode) .event-card.featured-card .card-access-strip > div:first-child {
  display: grid;
  gap: 2px;
}

body:not(.ops-mode) .event-card.compact-card .card-access-strip span,
body:not(.ops-mode) .event-card.featured-card .card-access-strip span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body:not(.ops-mode) .event-card.compact-card .card-map-actions,
body:not(.ops-mode) .event-card.featured-card .card-map-actions {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

body:not(.ops-mode) .event-card.compact-card .card-map-actions a,
body:not(.ops-mode) .event-card.featured-card .card-map-actions a {
  min-height: 30px;
  padding: 0 10px;
  border-radius: 7px;
  background: #ffffff;
}

body:not(.ops-mode) .event-card.compact-card .card-actions,
body:not(.ops-mode) .event-card.featured-card .card-actions {
  grid-template-columns: auto 150px;
  justify-content: space-between;
  gap: 12px;
  padding-top: 10px;
}

body:not(.ops-mode) .event-card.compact-card .card-actions strong,
body:not(.ops-mode) .event-card.featured-card .card-actions strong {
  min-height: 38px;
  justify-self: start;
  justify-content: flex-start;
  padding: 0 12px;
  border-color: transparent;
  background: #f8fafc;
  color: #344054;
}

body:not(.ops-mode) .event-card.compact-card .detail-button,
body:not(.ops-mode) .event-card.featured-card .detail-button {
  width: 150px;
  min-height: 38px;
  justify-self: end;
}

body:not(.ops-mode) .detail-ticket-title-row {
  grid-template-columns: minmax(0, 1fr);
}

body:not(.ops-mode) .detail-ticket-title-row b {
  display: none;
}

body:not(.ops-mode) .detail-ticket-facts div {
  background: #fbfcfd;
}

/* qa481: compact visitor detail view. */
body:not(.ops-mode) .detail-ops-disclosure {
  display: none !important;
}

body:not(.ops-mode) .compact-detail-desk {
  grid-template-columns: 220px minmax(0, 1fr);
  min-height: 218px;
}

body:not(.ops-mode) .compact-detail-desk .detail-ticket-media {
  min-height: 218px;
}

body:not(.ops-mode) .compact-detail-desk .detail-ticket-media small,
body:not(.ops-mode) .compact-detail-title-row p {
  display: none;
}

body:not(.ops-mode) .compact-detail-desk .detail-ticket-main {
  gap: 10px;
  padding: 20px 22px 16px;
}

body:not(.ops-mode) .compact-detail-title-row h2 {
  margin: 5px 0 0;
  font-size: 25px;
  line-height: 1.2;
}

body:not(.ops-mode) .compact-detail-facts {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

body:not(.ops-mode) .compact-detail-facts div {
  padding: 9px;
  border-left-width: 0;
  border-top: 3px solid var(--desk-tone);
}

body:not(.ops-mode) .compact-detail-facts strong {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

body:not(.ops-mode) .compact-detail-facts span {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}

body:not(.ops-mode) .compact-detail-booking {
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  margin: 0;
  padding: 12px 14px;
}

body:not(.ops-mode) .compact-detail-booking .detail-booking-copy em {
  display: none;
}

body:not(.ops-mode) .compact-detail-booking .detail-booking-copy strong {
  font-size: 17px;
}

body:not(.ops-mode) .compact-detail-booking .detail-booking-actions {
  display: grid;
  grid-template-columns: repeat(4, minmax(96px, 1fr));
  justify-content: end;
  width: min(100%, 520px);
}

body:not(.ops-mode) .compact-detail-booking .detail-entry-action {
  width: 100%;
}

body:not(.ops-mode) .compact-detail-disclosure summary {
  min-height: 46px;
  padding: 12px 14px;
}

body:not(.ops-mode) .compact-detail-disclosure summary small {
  font-size: 11px;
}

body:not(.ops-mode) .compact-detail-more {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body:not(.ops-mode) .compact-detail-more article {
  padding: 12px;
}

@media (max-width: 760px) {
  body:not(.ops-mode) .compact-detail-desk,
  body:not(.ops-mode) .compact-detail-booking {
    grid-template-columns: 1fr;
  }

  body:not(.ops-mode) .compact-detail-facts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body:not(.ops-mode) .compact-detail-booking .detail-booking-actions,
  body:not(.ops-mode) .compact-detail-more {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
  }
}

@media (max-width: 520px) {
  body:not(.ops-mode) .compact-detail-booking .detail-booking-actions,
  body:not(.ops-mode) .compact-detail-more {
    grid-template-columns: 1fr;
  }

  body:not(.ops-mode) .compact-detail-desk .detail-ticket-media {
    min-height: 164px;
  }

  body:not(.ops-mode) .compact-detail-desk .detail-ticket-main {
    padding: 16px 14px 12px;
  }

  body:not(.ops-mode) .compact-detail-title-row h2 {
    font-size: 22px;
  }

  body:not(.ops-mode) .compact-detail-facts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body:not(.ops-mode) .compact-detail-facts div {
    padding: 8px;
  }

  body:not(.ops-mode) .compact-detail-facts strong {
    font-size: 13px;
  }

  body:not(.ops-mode) .compact-detail-facts span {
    font-size: 11px;
  }
}

/* qa476: professional trust center and launch-readiness check. */
.trust-panel-actions {
  margin-top: 14px;
}

.trust-panel-actions .compact-button {
  width: 100%;
}

.site-trust-strip {
  width: min(1500px, calc(100% - 40px));
  margin: 6px auto 34px;
}

.site-trust-inner {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  gap: 12px;
  align-items: stretch;
  padding: 14px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #ffffff;
}

.site-trust-copy {
  display: grid;
  align-content: center;
  gap: 4px;
  padding: 8px 12px;
  border-left: 4px solid var(--teal);
}

.site-trust-copy p,
.site-trust-copy h2 {
  margin: 0;
}

.site-trust-copy p {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}

.site-trust-copy h2 {
  color: var(--charcoal);
  font-size: 19px;
  line-height: 1.25;
}

.site-trust-copy a {
  width: fit-content;
  margin-top: 8px;
  color: var(--teal);
  font-size: 13px;
  font-weight: 900;
}

.site-trust-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.site-trust-grid article {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 4px 9px;
  min-width: 0;
  align-content: center;
  padding: 11px 12px;
  border: 1px solid #edf0f4;
  border-radius: 8px;
  background: #fbfcfd;
}

.site-trust-grid span,
.site-trust-grid strong,
.site-trust-grid small {
  display: block;
}

.site-trust-grid span {
  grid-row: span 2;
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
}

.site-trust-grid strong {
  color: var(--charcoal);
  font-size: 14px;
  line-height: 1.25;
}

.site-trust-grid small {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.site-trust-grid .text-button {
  justify-self: start;
  padding: 0;
  color: var(--teal);
  font-size: 12px;
}

.trust-center-dialog .reminder-content {
  width: min(860px, calc(100vw - 34px));
  max-width: 860px;
}

.trust-center-dialog {
  width: min(900px, calc(100% - 28px));
}

.trust-center-dialog .reminder-content {
  width: auto;
  max-width: none;
  overflow: hidden;
}

.trust-center-content > p:not(.eyebrow) {
  max-width: 720px;
}

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

.trust-rule-card {
  display: grid;
  gap: 8px;
  min-width: 0;
  padding: 16px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #ffffff;
}

.trust-rule-card.active {
  border-color: rgba(217, 54, 43, 0.34);
  background: #fff8f6;
}

.trust-rule-card small {
  color: var(--teal);
  font-size: 12px;
  font-weight: 900;
}

.trust-rule-card strong {
  color: var(--charcoal);
  font-size: 17px;
  line-height: 1.28;
}

.trust-rule-card p {
  margin: 0;
  color: #475467;
  font-size: 14px;
  line-height: 1.65;
}

.trust-rule-card small,
.trust-rule-card strong,
.trust-rule-card p {
  min-width: 0;
  overflow-wrap: anywhere;
}

.trust-source-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin-top: 18px;
  padding-top: 14px;
  border-top: 1px solid #edf0f4;
}

.trust-source-list span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}

.trust-source-list a {
  min-height: 30px;
  display: inline-flex;
  align-items: center;
  padding: 0 10px;
  border: 1px solid #e5e7eb;
  border-radius: 999px;
  background: #fbfcfd;
  color: #344054;
  font-size: 12px;
  font-weight: 800;
}

.site-footer {
  width: min(1500px, calc(100% - 40px));
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: center;
  margin: 0 auto 34px;
  padding: 18px 0 0;
  border-top: 1px solid #e5e7eb;
  color: #667085;
  font-size: 13px;
}

.site-footer div,
.site-footer nav {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.site-footer strong {
  color: var(--charcoal);
}

.site-footer a {
  color: #344054;
  font-weight: 800;
}

.legal-page {
  background: #f5f6f8;
}

.legal-main {
  width: min(1220px, calc(100% - 40px));
  margin: 0 auto;
  padding: 28px 0 46px;
}

.legal-hero {
  display: grid;
  gap: 8px;
  padding: 28px 30px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #ffffff;
}

.legal-hero p,
.legal-hero h1 {
  margin: 0;
}

.legal-hero p {
  color: var(--red);
  font-size: 12px;
  font-weight: 900;
}

.legal-hero h1 {
  color: var(--charcoal);
  font-size: clamp(30px, 4vw, 44px);
  line-height: 1.08;
}

.legal-hero span {
  color: #667085;
  font-size: 14px;
}

.legal-hero strong {
  max-width: 860px;
  padding: 12px 14px;
  border-left: 4px solid var(--red);
  background: #fff8f6;
  color: #344054;
  font-size: 14px;
  line-height: 1.65;
}

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

.legal-summary-grid article {
  display: grid;
  gap: 8px;
  padding: 15px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #ffffff;
}

.legal-summary-grid span {
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
}

.legal-summary-grid strong {
  color: var(--charcoal);
  font-size: 16px;
  line-height: 1.25;
}

.legal-summary-grid small {
  color: #667085;
  font-size: 13px;
  line-height: 1.55;
}

.legal-section {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  gap: 16px;
  margin-top: 16px;
  padding: 20px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #ffffff;
}

.legal-section-title {
  padding-left: 14px;
  border-left: 4px solid var(--teal);
}

.legal-section-title p,
.legal-section-title h2 {
  margin: 0;
}

.legal-section-title p {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}

.legal-section-title h2 {
  margin-top: 5px;
  color: var(--charcoal);
  font-size: 20px;
  line-height: 1.25;
}

.legal-body {
  display: grid;
  gap: 12px;
}

.legal-body h3,
.legal-body p {
  margin: 0;
}

.legal-body h3 {
  color: var(--charcoal);
  font-size: 16px;
}

.legal-body p {
  color: #475467;
  font-size: 14px;
  line-height: 1.75;
}

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

.legal-source-grid a {
  min-width: 0;
  padding: 13px 14px;
  border: 1px solid #edf0f4;
  border-radius: 8px;
  background: #fbfcfd;
  color: #344054;
  font-size: 13px;
  font-weight: 800;
}

.legal-contact-box {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  margin-top: 16px;
  padding: 18px 22px;
  border: 1px solid rgba(15, 118, 110, 0.18);
  border-radius: 8px;
  background: #f0fdfa;
}

.legal-contact-box p,
.legal-contact-box strong {
  display: block;
  margin: 0;
}

.legal-contact-box p {
  color: var(--teal);
  font-size: 12px;
  font-weight: 900;
}

.legal-contact-box strong {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 16px;
  line-height: 1.35;
}

.professional-readiness-card {
  border-color: rgba(15, 118, 110, 0.18);
}

.professional-readiness-head {
  display: grid;
  grid-template-columns: 160px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  padding: 14px;
  border: 1px solid #edf0f4;
  border-radius: 8px;
  background: #fbfcfd;
}

.professional-readiness-head.ready {
  background: #f0fdfa;
  border-color: rgba(15, 118, 110, 0.2);
}

.professional-readiness-head.review {
  background: #fffbeb;
  border-color: rgba(217, 119, 6, 0.2);
}

.professional-readiness-head.risk {
  background: #fff8f6;
  border-color: rgba(217, 54, 43, 0.2);
}

.professional-readiness-head small,
.professional-readiness-head strong,
.professional-readiness-head span {
  display: block;
}

.professional-readiness-head small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
}

.professional-readiness-head strong {
  margin-top: 2px;
  color: var(--charcoal);
  font-size: 34px;
  line-height: 1;
}

.professional-readiness-head span,
.professional-readiness-head p {
  color: #475467;
  font-size: 13px;
  line-height: 1.55;
}

.professional-readiness-head p {
  margin: 0;
}

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

.professional-readiness-row {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  min-width: 0;
  padding: 12px;
  border: 1px solid #edf0f4;
  border-radius: 8px;
  background: #ffffff;
}

.professional-readiness-row span {
  display: inline-grid;
  place-items: center;
  min-height: 24px;
  border-radius: 999px;
  background: #eef2f6;
  color: #475467;
  font-size: 11px;
  font-weight: 900;
}

.professional-readiness-row.pass span {
  background: #dcfce7;
  color: #166534;
}

.professional-readiness-row.check span {
  background: #fef3c7;
  color: #92400e;
}

.professional-readiness-row strong {
  overflow: hidden;
  color: var(--charcoal);
  font-size: 14px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.professional-readiness-row b {
  color: var(--charcoal);
  font-size: 13px;
}

.professional-readiness-row small {
  grid-column: 2 / -1;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

/* qa491: launch conversion radar for official/ticket/map/consult actions. */
.conversion-tracker-summary {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
  margin: 12px 0;
}

.conversion-tracker-summary div {
  border: 1px solid rgba(16, 24, 40, 0.1);
  border-radius: 8px;
  background: #ffffff;
  padding: 10px;
}

.conversion-tracker-summary span,
.conversion-tracker-summary strong,
.conversion-tracker-summary small {
  display: block;
}

.conversion-tracker-summary span {
  color: #6b7280;
  font-size: 12px;
}

.conversion-tracker-summary strong {
  margin-top: 4px;
  color: #111827;
  font-size: 22px;
  line-height: 1.1;
}

.conversion-tracker-summary small {
  margin-top: 4px;
  color: #7a828e;
  font-size: 11px;
}

.conversion-recent-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 12px;
}

.conversion-recent-item {
  min-width: 0;
  padding: 9px 10px;
  border: 1px solid rgba(16, 24, 40, 0.08);
  border-radius: 8px;
  background: #f7f9fc;
}

.conversion-recent-item strong,
.conversion-recent-item span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.conversion-recent-item strong {
  color: #1f2937;
  font-size: 12px;
}

.conversion-recent-item span {
  margin-top: 3px;
  color: #6b7280;
  font-size: 11px;
}

.ops-row.conversion-row {
  border-left: 4px solid #cbd5e1;
}

.ops-row.conversion-row.direct {
  border-left-color: #1f9d55;
}

.ops-row.conversion-row.test {
  border-left-color: #d97706;
}

.ops-row.conversion-row.missing {
  border-left-color: #dc2626;
}

@media (max-width: 980px) {
  .site-trust-inner {
    grid-template-columns: 1fr;
  }

  .site-trust-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .professional-readiness-grid {
    grid-template-columns: 1fr;
  }

  .legal-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .legal-section {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .site-trust-strip {
    width: min(100% - 24px, 1500px);
  }

  .site-trust-grid,
  .trust-center-grid {
    grid-template-columns: 1fr;
  }

  .trust-center-dialog {
    width: min(100% - 20px, 520px);
  }

  .trust-center-dialog .reminder-content {
    padding: 22px 18px 20px;
  }

  .trust-source-list a {
    flex: 1 1 calc(50% - 8px);
    justify-content: center;
  }

  .professional-readiness-head {
    grid-template-columns: 1fr;
  }

  .professional-readiness-row {
    grid-template-columns: 48px minmax(0, 1fr);
  }

  .professional-readiness-row b {
    grid-column: 2;
  }

  .site-footer,
  .legal-main {
    width: min(100% - 24px, 1500px);
  }

  .site-footer,
  .legal-contact-box {
    align-items: flex-start;
    flex-direction: column;
  }

  .legal-hero,
  .legal-section,
  .legal-contact-box {
    padding: 18px;
  }

  .legal-summary-grid,
  .legal-source-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  body:not(.ops-mode) .event-card.compact-card,
  body:not(.ops-mode) .event-card.featured-card {
    grid-template-columns: 1fr;
  }

  body:not(.ops-mode) .event-card.compact-card .card-actions,
  body:not(.ops-mode) .event-card.featured-card .card-actions {
    grid-template-columns: 1fr;
  }

  body:not(.ops-mode) .event-card.compact-card .detail-button,
  body:not(.ops-mode) .event-card.featured-card .detail-button {
    width: 100%;
    justify-self: stretch;
  }
}

body:not(.ops-mode) .detail-entry-hub.easy .primary-button.detail-entry-action {
  border: 1px solid rgba(217, 54, 43, 0.28);
  background: #fff8f6;
  color: #9b2c23;
}

@media (max-width: 640px) {
  body:not(.ops-mode) .playguide-main small {
    display: none;
  }

  body:not(.ops-mode) .playguide-main button {
    flex: 0 0 104px;
  }

  body:not(.ops-mode) .month-archive {
    padding: 8px;
  }

  body:not(.ops-mode) .year-month-panel {
    grid-template-columns: 72px minmax(0, 1fr);
  }

  body:not(.ops-mode) .month-card {
    flex-basis: 86px;
  }
}

/* qa478: same label, same visual weight. Card status stays in the small chips. */
body:not(.ops-mode) .event-card.compact-card .detail-button,
body:not(.ops-mode) .event-card.compact-card .detail-button.action-safe,
body:not(.ops-mode) .event-card.compact-card .detail-button.action-ready,
body:not(.ops-mode) .event-card.compact-card .detail-button.action-risk,
body:not(.ops-mode) .event-card.compact-card .detail-button.action-watch,
body:not(.ops-mode) .event-card.compact-card .detail-button.action-review,
body:not(.ops-mode) .event-card.compact-card .detail-button.action-info,
body:not(.ops-mode) .event-card.compact-card .detail-button.action-notice,
body:not(.ops-mode) .event-card.featured-card .detail-button,
body:not(.ops-mode) .event-card.featured-card .detail-button.action-safe,
body:not(.ops-mode) .event-card.featured-card .detail-button.action-ready,
body:not(.ops-mode) .event-card.featured-card .detail-button.action-risk,
body:not(.ops-mode) .event-card.featured-card .detail-button.action-watch,
body:not(.ops-mode) .event-card.featured-card .detail-button.action-review,
body:not(.ops-mode) .event-card.featured-card .detail-button.action-info,
body:not(.ops-mode) .event-card.featured-card .detail-button.action-notice {
  border-color: #d9362b;
  background: #d9362b;
  color: #ffffff;
}

/* qa479: standalone launch dossier workbench. */
.dossier-main {
  width: min(1280px, calc(100% - 40px));
  margin: 0 auto;
  padding: 34px 0 56px;
}

.dossier-hero {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-end;
  padding: 28px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #ffffff;
}

.dossier-hero p,
.dossier-hero h1,
.dossier-hero span {
  display: block;
  margin: 0;
}

.dossier-hero p {
  color: var(--red);
  font-size: 12px;
  font-weight: 900;
}

.dossier-hero h1 {
  margin-top: 8px;
  color: var(--charcoal);
  font-size: clamp(34px, 5vw, 58px);
  line-height: 1.05;
}

.dossier-hero span {
  max-width: 720px;
  margin-top: 10px;
  color: #475467;
  font-size: 15px;
  line-height: 1.65;
}

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

.dossier-kpi-grid article {
  min-width: 0;
  padding: 16px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #ffffff;
}

.dossier-kpi-grid span,
.dossier-kpi-grid strong,
.dossier-kpi-grid small {
  display: block;
}

.dossier-kpi-grid span {
  color: #667085;
  font-size: 12px;
  font-weight: 900;
}

.dossier-kpi-grid strong {
  margin-top: 6px;
  color: var(--charcoal);
  font-size: 28px;
  line-height: 1;
}

.dossier-kpi-grid small {
  margin-top: 7px;
  color: #667085;
  font-size: 12px;
}

.dossier-toolbar {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) 160px 160px 170px;
  gap: 10px;
  margin-top: 14px;
  padding: 14px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #ffffff;
}

.dossier-toolbar label {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.dossier-toolbar span {
  color: #667085;
  font-size: 12px;
  font-weight: 900;
}

.dossier-toolbar input,
.dossier-toolbar select {
  min-width: 0;
  min-height: 42px;
  padding: 0 12px;
  border: 1px solid #d9dee8;
  border-radius: 8px;
  background: #fbfcfd;
  color: var(--charcoal);
  font: inherit;
}

.dossier-board {
  margin-top: 14px;
  padding: 16px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #ffffff;
}

.dossier-board-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  padding-bottom: 14px;
  border-bottom: 1px solid #edf0f4;
}

.dossier-board-head p,
.dossier-board-head h2 {
  margin: 0;
}

.dossier-board-head p {
  color: #667085;
  font-size: 12px;
  font-weight: 900;
}

.dossier-board-head h2 {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 24px;
}

.dossier-board-head span {
  color: var(--teal);
  font-size: 13px;
  font-weight: 900;
}

.dossier-list {
  display: grid;
  gap: 10px;
  margin-top: 14px;
}

.dossier-row {
  display: grid;
  grid-template-columns: 86px minmax(0, 1fr) 148px;
  gap: 14px;
  min-width: 0;
  padding: 14px;
  border: 1px solid #edf0f4;
  border-left: 4px solid #d9dee8;
  border-radius: 8px;
  background: #ffffff;
}

.dossier-row.ready {
  border-left-color: var(--teal);
}

.dossier-row.check {
  border-left-color: #d97706;
}

.dossier-row.risk {
  border-left-color: var(--red);
}

.dossier-score {
  display: grid;
  place-items: center;
  align-content: center;
  gap: 6px;
  min-height: 84px;
  border-radius: 8px;
  background: #fbfcfd;
}

.dossier-score strong,
.dossier-score span {
  display: block;
}

.dossier-score strong {
  color: var(--charcoal);
  font-size: 30px;
  line-height: 1;
}

.dossier-score span {
  color: #667085;
  font-size: 12px;
  font-weight: 900;
}

.dossier-event-main {
  display: grid;
  gap: 10px;
  min-width: 0;
}

.dossier-event-title span,
.dossier-event-title h3,
.dossier-event-title small {
  display: block;
}

.dossier-event-title span {
  color: var(--teal);
  font-size: 12px;
  font-weight: 900;
}

.dossier-event-title h3 {
  margin: 4px 0;
  overflow: hidden;
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.28;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dossier-event-title small {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.dossier-event-main p {
  margin: 0;
  color: #475467;
  font-size: 13px;
  line-height: 1.65;
}

.dossier-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.dossier-chip {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 0 9px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 900;
}

.dossier-chip.ok {
  background: #e7f8f2;
  color: #0f766e;
}

.dossier-chip.todo {
  background: #fff1f0;
  color: #b42318;
}

.dossier-missing {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  padding: 10px 12px;
  border-radius: 8px;
  background: #fbfcfd;
}

.dossier-missing span {
  color: #667085;
  font-size: 12px;
  font-weight: 900;
}

.dossier-missing strong {
  overflow: hidden;
  color: var(--charcoal);
  font-size: 13px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dossier-actions {
  display: grid;
  align-content: start;
  gap: 8px;
}

.dossier-actions .compact-button {
  width: 100%;
}

.dossier-empty {
  padding: 24px;
  border-radius: 8px;
  background: #fbfcfd;
  color: #667085;
  text-align: center;
}

.dossier-next-box {
  align-items: center;
}

@media (max-width: 980px) {
  .dossier-kpi-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dossier-toolbar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dossier-row {
    grid-template-columns: 74px minmax(0, 1fr);
  }

  .dossier-actions {
    grid-column: 1 / -1;
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .dossier-main {
    width: min(100% - 24px, 1280px);
    padding-top: 24px;
  }

  .dossier-hero,
  .dossier-board-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .dossier-hero {
    padding: 18px;
  }

  .dossier-kpi-grid,
  .dossier-toolbar,
  .dossier-row,
  .dossier-actions {
    grid-template-columns: 1fr;
  }

  .dossier-score {
    grid-template-columns: auto 1fr;
    justify-items: start;
    min-height: auto;
    padding: 12px;
  }

  .dossier-event-title h3,
  .dossier-missing strong {
    white-space: normal;
  }
}

/* qa482: simple launch desk for publish decisions. */
.launch-main {
  width: min(1240px, calc(100% - 40px));
  margin: 0 auto;
  padding: 34px 0 56px;
}

.launch-hero {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-end;
  padding: 28px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #ffffff;
}

.launch-hero p,
.launch-hero h1,
.launch-hero span {
  display: block;
  margin: 0;
}

.launch-hero p {
  color: var(--red);
  font-size: 12px;
  font-weight: 900;
}

.launch-hero h1 {
  margin-top: 8px;
  color: var(--charcoal);
  font-size: clamp(34px, 5vw, 58px);
  line-height: 1.05;
}

.launch-hero span {
  max-width: 720px;
  margin-top: 10px;
  color: #475467;
  font-size: 15px;
  line-height: 1.65;
}

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

.launch-kpi-grid article {
  min-width: 0;
  padding: 16px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #ffffff;
}

.launch-kpi-grid span,
.launch-kpi-grid strong,
.launch-kpi-grid small {
  display: block;
}

.launch-kpi-grid span {
  color: #667085;
  font-size: 12px;
  font-weight: 900;
}

.launch-kpi-grid strong {
  margin-top: 6px;
  color: var(--charcoal);
  font-size: 28px;
  line-height: 1;
}

.launch-kpi-grid small {
  margin-top: 7px;
  color: #667085;
  font-size: 12px;
}

.launch-toolbar {
  display: grid;
  grid-template-columns: minmax(280px, 1fr) 150px 160px;
  gap: 10px;
  margin-top: 14px;
  padding: 14px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #ffffff;
}

.launch-toolbar label {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.launch-toolbar span {
  color: #667085;
  font-size: 12px;
  font-weight: 900;
}

.launch-toolbar input,
.launch-toolbar select {
  min-width: 0;
  min-height: 42px;
  padding: 0 12px;
  border: 1px solid #d9dee8;
  border-radius: 8px;
  background: #fbfcfd;
  color: var(--charcoal);
  font: inherit;
}

.launch-board {
  margin-top: 14px;
  padding: 16px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #ffffff;
}

.launch-board-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  padding-bottom: 14px;
  border-bottom: 1px solid #edf0f4;
}

.launch-board-head p,
.launch-board-head h2 {
  margin: 0;
}

.launch-board-head p {
  color: #667085;
  font-size: 12px;
  font-weight: 900;
}

.launch-board-head h2 {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 24px;
}

.launch-board-head span {
  color: var(--teal);
  font-size: 13px;
  font-weight: 900;
}

.launch-list {
  display: grid;
  gap: 10px;
  margin-top: 14px;
}

.launch-row {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr) 132px;
  gap: 14px;
  min-width: 0;
  padding: 14px;
  border: 1px solid #edf0f4;
  border-left: 4px solid #d9dee8;
  border-radius: 8px;
  background: #ffffff;
}

.launch-row.ready {
  border-left-color: var(--teal);
}

.launch-row.elite {
  border-color: rgba(217, 54, 43, 0.22);
  border-left-color: var(--red);
  background: linear-gradient(90deg, #fff8f6 0, #ffffff 190px);
}

.launch-row.fix {
  border-left-color: #d97706;
}

.launch-row.hold {
  border-left-color: var(--red);
}

.launch-status {
  display: grid;
  place-items: center;
  align-content: center;
  gap: 6px;
  min-height: 82px;
  border-radius: 8px;
  background: #fbfcfd;
}

.launch-row.elite .launch-status {
  background: #fff1f0;
}

.launch-row.elite .launch-status strong {
  color: var(--red);
}

.launch-status strong,
.launch-status span {
  display: block;
}

.launch-status strong {
  color: var(--charcoal);
  font-size: 15px;
}

.launch-status span {
  color: #667085;
  font-size: 24px;
  font-weight: 900;
  line-height: 1;
}

.launch-event-main {
  display: grid;
  gap: 10px;
  min-width: 0;
}

.launch-event-title span,
.launch-event-title h3,
.launch-event-title small {
  display: block;
}

.launch-event-title span {
  color: var(--teal);
  font-size: 12px;
  font-weight: 900;
}

.launch-event-title h3 {
  margin: 4px 0;
  overflow: hidden;
  color: var(--charcoal);
  font-size: 18px;
  line-height: 1.28;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.launch-event-title small {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.launch-event-main p {
  margin: 0;
  color: #475467;
  font-size: 13px;
  line-height: 1.65;
}

.launch-badge-row {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.launch-badge {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 0 9px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 900;
}

.launch-badge.ok {
  background: #e7f8f2;
  color: #0f766e;
}

.launch-badge.todo {
  background: #fff1f0;
  color: #b42318;
}

.launch-actions {
  display: grid;
  align-content: start;
  gap: 8px;
}

.launch-actions .compact-button {
  width: 100%;
}

.launch-empty {
  padding: 24px;
  border-radius: 8px;
  background: #fbfcfd;
  color: #667085;
  text-align: center;
}

/* qa540: local admin console for launch operations. */
.launch-admin-panel,
.launch-issue-panel,
.launch-month-panel {
  margin-top: 14px;
  padding: 16px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #ffffff;
}

.launch-admin-head,
.launch-issue-head,
.launch-month-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
  padding-bottom: 14px;
  border-bottom: 1px solid #edf0f4;
}

.launch-admin-head p,
.launch-admin-head h2,
.launch-admin-head span,
.launch-issue-head p,
.launch-issue-head h2,
.launch-month-head p,
.launch-month-head h2 {
  display: block;
  margin: 0;
}

.launch-admin-head p,
.launch-issue-head p,
.launch-month-head p {
  color: var(--red);
  font-size: 12px;
  font-weight: 900;
}

.launch-admin-head h2,
.launch-issue-head h2,
.launch-month-head h2 {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 22px;
}

.launch-admin-head span,
.launch-issue-head > span,
.launch-month-head > span {
  margin-top: 5px;
  color: #667085;
  font-size: 13px;
  line-height: 1.45;
}

.launch-admin-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.launch-admin-grid,
.launch-issue-grid,
.launch-month-grid {
  display: grid;
  gap: 10px;
  margin-top: 14px;
}

.launch-admin-grid {
  grid-template-columns: repeat(auto-fit, minmax(148px, 1fr));
}

.launch-issue-grid {
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
}

.launch-month-grid {
  grid-template-columns: repeat(auto-fit, minmax(158px, 1fr));
}

.launch-admin-card,
.launch-issue-card,
.launch-month-card {
  min-width: 0;
  border: 1px solid #edf0f4;
  border-radius: 8px;
  background: #fbfcfd;
}

.launch-admin-card {
  padding: 14px;
}

.launch-admin-card span,
.launch-admin-card strong,
.launch-admin-card small {
  display: block;
}

.launch-admin-card span {
  color: #667085;
  font-size: 12px;
  font-weight: 900;
}

.launch-admin-card strong {
  margin-top: 7px;
  color: var(--charcoal);
  font-size: 28px;
  line-height: 1;
}

.launch-admin-card small {
  margin-top: 7px;
  color: #667085;
  font-size: 12px;
}

.launch-issue-card {
  display: grid;
  gap: 8px;
  padding: 12px;
}

.launch-issue-card div {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: baseline;
}

.launch-issue-card span,
.launch-issue-card strong,
.launch-issue-card small,
.launch-issue-card p {
  display: block;
  margin: 0;
}

.launch-issue-card span {
  color: var(--charcoal);
  font-size: 13px;
  font-weight: 900;
}

.launch-issue-card strong {
  color: #d97706;
  font-size: 24px;
  line-height: 1;
}

.launch-issue-card.good strong {
  color: var(--teal);
}

.launch-issue-card p,
.launch-issue-card small {
  color: #667085;
  font-size: 12px;
  line-height: 1.5;
}

.launch-issue-card small {
  min-height: 36px;
}

.launch-issue-card.active,
.launch-month-card.active {
  border-color: var(--charcoal);
  box-shadow: 0 0 0 2px rgba(31, 41, 55, 0.08);
}

.launch-month-card {
  display: grid;
  gap: 6px;
  padding: 12px;
  text-align: left;
  cursor: pointer;
}

.launch-month-card span,
.launch-month-card strong,
.launch-month-card small {
  display: block;
}

.launch-month-card span {
  color: #667085;
  font-size: 12px;
  font-weight: 900;
}

.launch-month-card strong {
  color: var(--charcoal);
  font-size: 22px;
  line-height: 1;
}

.launch-month-card small {
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.launch-month-card.good {
  border-left: 4px solid var(--teal);
}

.launch-month-card.warn {
  border-left: 4px solid #d97706;
}

.launch-month-card.danger {
  border-left: 4px solid var(--red);
}

.launch-row.manual {
  border-color: rgba(31, 41, 55, 0.22);
  background: linear-gradient(90deg, #f8fafc 0, #ffffff 190px);
}

.launch-status small {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.launch-local-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.launch-local-actions .compact-button {
  min-height: 30px;
  padding: 0 10px;
  font-size: 12px;
}

.launch-local-actions .compact-button.active {
  border-color: var(--charcoal);
  background: var(--charcoal);
  color: #ffffff;
}

.launch-manual-note {
  display: block;
  color: #667085;
  font-size: 12px;
}

/* qa541: local admin v2 with login and editable activity records. */
.launch-login-panel,
.launch-editor-panel {
  margin-top: 14px;
  padding: 16px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #ffffff;
  scroll-margin-top: 86px;
}

.launch-login-panel[hidden],
.launch-editor-panel[hidden],
#adminLogout[hidden] {
  display: none;
}

.launch-login-panel {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) 260px auto;
  gap: 12px;
  align-items: end;
}

.launch-login-panel p,
.launch-login-panel h2,
.launch-login-panel span,
.launch-editor-head p,
.launch-editor-head h2,
.launch-editor-head span,
.launch-admin-event-list p,
.launch-admin-event-list h3,
.launch-admin-event-list span {
  display: block;
  margin: 0;
}

.launch-login-panel p,
.launch-editor-head p,
.launch-admin-event-list p {
  color: var(--red);
  font-size: 12px;
  font-weight: 900;
}

.launch-login-panel h2,
.launch-editor-head h2 {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 22px;
}

.launch-login-panel > div > span,
.launch-editor-head span,
.launch-admin-event-list > div > span {
  margin-top: 5px;
  color: #667085;
  font-size: 13px;
  line-height: 1.45;
}

.launch-login-panel label,
.launch-event-form label {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.launch-login-panel label span,
.launch-event-form label span {
  color: #667085;
  font-size: 12px;
  font-weight: 900;
}

.launch-login-panel input,
.launch-event-form input,
.launch-event-form select,
.launch-event-form textarea {
  width: 100%;
  min-width: 0;
  min-height: 42px;
  padding: 0 12px;
  border: 1px solid #d9dee8;
  border-radius: 8px;
  background: #fbfcfd;
  color: var(--charcoal);
  font: inherit;
}

.launch-event-form textarea {
  min-height: 88px;
  padding-top: 11px;
  resize: vertical;
}

.launch-editor-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
  padding-bottom: 14px;
  border-bottom: 1px solid #edf0f4;
}

.launch-editor-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 14px;
  margin-top: 14px;
}

.launch-event-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.launch-event-form .wide,
.launch-form-actions {
  grid-column: 1 / -1;
}

.launch-form-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.launch-admin-side {
  display: grid;
  align-content: start;
  gap: 12px;
  min-width: 0;
}

.launch-admin-review,
.launch-admin-event-list {
  display: grid;
  align-content: start;
  gap: 10px;
  min-width: 0;
  padding: 14px;
  border: 1px solid #edf0f4;
  border-radius: 8px;
  background: #fbfcfd;
}

.launch-admin-review-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
}

.launch-admin-review-head p,
.launch-admin-review-head h3,
.launch-admin-review-head span,
.launch-admin-event-list h3 {
  display: block;
  margin: 0;
}

.launch-admin-review-head h3,
.launch-admin-event-list h3 {
  margin-top: 4px;
  color: var(--charcoal);
  font-size: 20px;
}

.launch-admin-review-head strong {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border: 1px solid #d9dee8;
  border-radius: 50%;
  background: #ffffff;
  color: var(--charcoal);
  font-size: 22px;
  line-height: 1;
}

.launch-admin-review-list {
  display: grid;
  gap: 7px;
}

.launch-review-item {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 4px 8px;
  align-items: start;
  padding: 9px;
  border: 1px solid #e5e7eb;
  border-left: 4px solid #d9dee8;
  border-radius: 8px;
  background: #ffffff;
}

.launch-review-item.ok {
  border-left-color: var(--teal);
}

.launch-review-item.warn {
  border-left-color: #d97706;
}

.launch-review-item.danger {
  border-left-color: var(--red);
}

.launch-review-item span,
.launch-review-item strong,
.launch-review-item small {
  display: block;
}

.launch-review-item span {
  color: #667085;
  font-size: 11px;
  font-weight: 900;
}

.launch-review-item strong {
  color: var(--charcoal);
  font-size: 13px;
}

.launch-review-item small {
  grid-column: 2;
  color: #667085;
  font-size: 12px;
  line-height: 1.4;
}

.launch-admin-review-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

#adminEventList {
  display: grid;
  gap: 8px;
}

.launch-admin-mini-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 10px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #ffffff;
}

.launch-admin-mini-row.deleted {
  background: #fff8f6;
}

.launch-admin-mini-row strong,
.launch-admin-mini-row span {
  display: block;
  min-width: 0;
}

.launch-admin-mini-row strong {
  overflow: hidden;
  color: var(--charcoal);
  font-size: 13px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.launch-admin-mini-row span,
.launch-admin-list-empty {
  margin-top: 3px;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.launch-import-button {
  position: relative;
  overflow: hidden;
  cursor: pointer;
}

.launch-import-button input {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}

@media (max-width: 980px) {
  .launch-kpi-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .launch-toolbar {
    grid-template-columns: minmax(0, 1fr) 150px 160px;
  }

  .launch-row {
    grid-template-columns: 86px minmax(0, 1fr);
  }

  .launch-actions {
    grid-column: 1 / -1;
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .launch-admin-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 640px) {
  .launch-main {
    width: min(100% - 24px, 1240px);
    padding-top: 24px;
  }

  .launch-hero,
  .launch-board-head,
  .launch-admin-head,
  .launch-issue-head,
  .launch-month-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .launch-hero,
  .launch-admin-panel,
  .launch-issue-panel,
  .launch-month-panel,
  .launch-board {
    padding: 18px;
  }

  .launch-kpi-grid,
  .launch-admin-grid,
  .launch-issue-grid,
  .launch-month-grid,
  .launch-toolbar,
  .launch-row,
  .launch-actions {
    grid-template-columns: 1fr;
  }

  .launch-admin-actions,
  .launch-local-actions {
    width: 100%;
  }

  .launch-admin-actions .compact-button,
  .launch-local-actions .compact-button {
    flex: 1 1 120px;
  }

  .launch-login-panel,
  .launch-editor-head,
  .launch-editor-layout,
  .launch-event-form {
    grid-template-columns: 1fr;
  }

  .launch-editor-head {
    flex-direction: column;
  }

  .launch-form-actions {
    flex-direction: column;
  }

  .launch-form-actions .compact-button,
  .launch-login-panel .compact-button {
    width: 100%;
  }

  .launch-admin-review-actions {
    grid-template-columns: 1fr;
  }

  .launch-status {
    grid-template-columns: auto 1fr;
    justify-items: start;
    min-height: auto;
    padding: 12px;
  }

  .launch-event-title h3 {
    white-space: normal;
  }
}

/* qa488: non-image simplification pass. Keep the site readable before adding more content. */
body:not(.ops-mode) .feed {
  padding: 16px 18px 18px;
}

body:not(.ops-mode) .feed-toolbar {
  margin-bottom: 10px;
}

body:not(.ops-mode) .month-archive {
  margin: 10px 0 12px;
  padding: 9px;
  border: 1px solid #edf0f4;
  border-radius: 8px;
  background: #fbfcfd;
}

body:not(.ops-mode) .year-month-panel {
  grid-template-columns: 94px minmax(0, 1fr);
  gap: 8px;
  padding: 6px 0;
}

body:not(.ops-mode) .year-month-panel + .year-month-panel {
  margin-top: 4px;
  padding-top: 10px;
  border-top: 1px solid #edf0f4;
}

body:not(.ops-mode) .year-month-head {
  padding-left: 2px;
  border-left: 3px solid var(--teal);
}

body:not(.ops-mode) .year-month-head strong {
  font-size: 17px;
}

body:not(.ops-mode) .year-month-head b {
  font-size: 11px;
}

body:not(.ops-mode) .year-month-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(92px, 1fr));
  gap: 8px;
  overflow: visible;
  padding-bottom: 0;
}

body:not(.ops-mode) .month-card {
  flex: initial;
  min-height: 54px;
  padding: 9px 9px 8px 12px;
}

body:not(.ops-mode) .month-card strong {
  font-size: 18px;
}

body:not(.ops-mode) .month-card small {
  margin-top: 4px;
  font-size: 11px;
}

body:not(.ops-mode) .event-grid {
  gap: 10px;
}

body:not(.ops-mode) .event-card.compact-card,
body:not(.ops-mode) .event-card.featured-card {
  grid-template-columns: 198px minmax(0, 1fr);
}

body:not(.ops-mode) .event-card.compact-card .event-thumb,
body:not(.ops-mode) .event-card.featured-card .event-thumb {
  min-height: 198px;
}

body:not(.ops-mode) .event-card.compact-card .event-body,
body:not(.ops-mode) .event-card.featured-card .event-body {
  padding: 14px 16px 13px;
}

body:not(.ops-mode) .event-title-row h3 {
  font-size: 18px;
  line-height: 1.22;
}

body:not(.ops-mode) .event-title-row p {
  display: none;
}

body:not(.ops-mode) .event-card.compact-card .meta-grid,
body:not(.ops-mode) .event-card.featured-card .meta-grid {
  display: flex;
  gap: 8px;
  margin: 6px 0 8px;
}

body:not(.ops-mode) .event-card.compact-card .meta-grid span:nth-child(1),
body:not(.ops-mode) .event-card.compact-card .meta-grid span:nth-child(3),
body:not(.ops-mode) .event-card.compact-card .meta-grid span:nth-child(4),
body:not(.ops-mode) .event-card.featured-card .meta-grid span:nth-child(1),
body:not(.ops-mode) .event-card.featured-card .meta-grid span:nth-child(3),
body:not(.ops-mode) .event-card.featured-card .meta-grid span:nth-child(4) {
  display: none;
}

body:not(.ops-mode) .event-card.compact-card .meta-grid span:nth-child(2),
body:not(.ops-mode) .event-card.featured-card .meta-grid span:nth-child(2) {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 8px;
  border: 1px solid #edf0f4;
  border-radius: 7px;
  background: #fbfcfd;
  color: #475467;
  font-size: 12px;
  font-weight: 800;
}

body:not(.ops-mode) .event-card.compact-card .card-access-strip,
body:not(.ops-mode) .event-card.featured-card .card-access-strip {
  min-height: 46px;
  margin-bottom: 8px;
  padding: 7px 9px;
}

body:not(.ops-mode) .event-card.compact-card .card-access-strip small,
body:not(.ops-mode) .event-card.featured-card .card-access-strip small {
  display: none;
}

body:not(.ops-mode) .event-card.compact-card .card-access-strip span,
body:not(.ops-mode) .event-card.featured-card .card-access-strip span {
  display: block;
  overflow: hidden;
  color: #667085;
  font-size: 11px;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body:not(.ops-mode) .event-card.compact-card .event-summary,
body:not(.ops-mode) .event-card.featured-card .event-summary {
  margin-bottom: 8px;
  -webkit-line-clamp: 1;
}

body:not(.ops-mode) .event-card.compact-card .signal-row,
body:not(.ops-mode) .event-card.featured-card .signal-row {
  margin-bottom: 7px;
}

body:not(.ops-mode) .event-card.compact-card .signal-row span:nth-child(n+4),
body:not(.ops-mode) .event-card.featured-card .signal-row span:nth-child(n+4) {
  display: none;
}

body:not(.ops-mode) .event-card.compact-card .card-actions,
body:not(.ops-mode) .event-card.featured-card .card-actions {
  grid-template-columns: minmax(96px, auto) minmax(0, 1fr);
  gap: 8px;
  padding-top: 8px;
}

body:not(.ops-mode) .event-card.compact-card .card-actions strong,
body:not(.ops-mode) .event-card.featured-card .card-actions strong {
  min-height: 36px;
}

body:not(.ops-mode) .event-card.compact-card .detail-button,
body:not(.ops-mode) .event-card.featured-card .detail-button {
  min-height: 40px;
}

@media (max-width: 920px) {
  body:not(.ops-mode) .event-card.compact-card,
  body:not(.ops-mode) .event-card.featured-card {
    grid-template-columns: 176px minmax(0, 1fr);
  }

  body:not(.ops-mode) .event-card.compact-card .event-thumb,
  body:not(.ops-mode) .event-card.featured-card .event-thumb {
    min-height: 184px;
  }
}

@media (max-width: 640px) {
  body:not(.ops-mode) .feed {
    padding: 12px;
  }

  body:not(.ops-mode) .year-month-panel {
    grid-template-columns: 70px minmax(0, 1fr);
  }

  body:not(.ops-mode) .year-month-grid {
    display: flex;
    gap: 6px;
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 2px;
    scroll-snap-type: x proximity;
    scrollbar-width: thin;
  }

  body:not(.ops-mode) .month-card {
    flex: 0 0 82px;
    min-height: 44px;
    padding: 7px 8px 7px 10px;
    scroll-snap-align: start;
  }

  body:not(.ops-mode) .month-card strong {
    font-size: 15px;
  }

  body:not(.ops-mode) .month-card small {
    margin-top: 3px;
    font-size: 9px;
  }

  body:not(.ops-mode) .event-card.compact-card,
  body:not(.ops-mode) .event-card.featured-card {
    grid-template-columns: 1fr;
  }

  body:not(.ops-mode) .event-card.compact-card .event-thumb,
  body:not(.ops-mode) .event-card.featured-card .event-thumb {
    min-height: 188px;
  }

  body:not(.ops-mode) .event-card.compact-card .card-actions,
  body:not(.ops-mode) .event-card.featured-card .card-actions {
    grid-template-columns: 1fr;
  }
}

/* qa512: public-facing professional cleanup. */
body:not(.ops-mode) #openSubmitEvent,
body:not(.ops-mode) #openTesterFeedback {
  display: none !important;
}

body:not(.ops-mode) .topbar {
  height: 64px;
  gap: 16px;
  background: rgba(255, 253, 248, 0.94);
}

body:not(.ops-mode) .brand-mark {
  width: 36px;
  height: 36px;
  font-size: 13px;
}

body:not(.ops-mode) .brand strong {
  font-size: 15px;
}

body:not(.ops-mode) .brand small {
  font-size: 11px;
}

body:not(.ops-mode) .topnav {
  gap: 18px;
  font-size: 13px;
  font-weight: 850;
}

body:not(.ops-mode) .top-actions {
  gap: 6px;
}

body:not(.ops-mode) .top-actions .ghost-button {
  min-height: 38px;
  padding: 0 11px;
}

body:not(.ops-mode) .playguide-inner {
  grid-template-columns: 188px minmax(0, 1fr);
  gap: 8px;
}

body:not(.ops-mode) .playguide-lead {
  border-right: 1px solid #edf0f4;
}

body:not(.ops-mode) .playguide-track.playguide-main {
  grid-template-columns: auto repeat(5, minmax(96px, 1fr));
}

body:not(.ops-mode) .playguide-track button {
  min-height: 46px;
  padding: 8px 10px;
}

body:not(.ops-mode) .playguide-track b {
  font-size: 13px;
}

body:not(.ops-mode) .playguide-track em {
  font-size: 11px;
}

body:not(.ops-mode) .site-trust-inner {
  grid-template-columns: 230px minmax(0, 1fr);
  padding: 12px;
  box-shadow: 0 10px 28px rgba(16, 24, 40, 0.04);
}

body:not(.ops-mode) .site-trust-copy h2 {
  font-size: 18px;
}

@media (max-width: 920px) {
  body:not(.ops-mode) .topbar {
    padding: 0 14px;
  }

  body:not(.ops-mode) .playguide-inner {
    display: flex;
    gap: 8px;
    overflow-x: auto;
  }

  body:not(.ops-mode) .playguide-lead {
    flex: 0 0 174px;
  }

  body:not(.ops-mode) .playguide-track.playguide-main {
    flex: 0 0 560px;
    grid-template-columns: auto repeat(5, minmax(92px, 1fr));
  }

  body:not(.ops-mode) .site-trust-inner {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  body:not(.ops-mode) .topnav {
    gap: 12px;
  }

  body:not(.ops-mode) .brand small {
    display: none;
  }

  body:not(.ops-mode) .top-actions .ghost-button span {
    display: none;
  }

  body:not(.ops-mode) .top-actions .ghost-button {
    width: 38px;
    padding: 0;
  }
}

/* qa518: keep internal launch tools out of the public visitor path. */
body:not(.ops-mode) .internal-nav-link {
  display: none !important;
}

body:not(.ops-mode) .auth-dialog .primary-button {
  min-width: 128px;
}

body:not(.ops-mode) .account-note {
  color: #667085;
}

/* qa520: make the detail cover feel like a framed image, not a loose background. */
body:not(.ops-mode) .detail-ticket-desk {
  background: linear-gradient(180deg, #ffffff, #fbfcfd);
}

body:not(.ops-mode) .detail-ticket-media {
  margin: 14px 0 14px 14px;
  border: 1px solid rgba(16, 24, 40, 0.14);
  border-radius: 10px;
  overflow: hidden;
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.38),
    0 12px 26px rgba(16, 24, 40, 0.12);
}

body:not(.ops-mode) .detail-ticket-media::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  border-radius: inherit;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.26);
}

body:not(.ops-mode) .detail-ticket-media span,
body:not(.ops-mode) .detail-ticket-media small {
  z-index: 1;
}

/* qa521: turn detail actions into a clear fixed purchase/consult/save bar. */
body:not(.ops-mode) .simple-detail-body > .detail-sticky-actions {
  display: grid !important;
}

body:not(.ops-mode) .detail-sticky-actions {
  grid-template-columns: minmax(0, 1fr) minmax(126px, auto) auto auto;
  gap: 8px;
  margin: 2px -28px -30px;
  padding: 11px 28px calc(11px + env(safe-area-inset-bottom));
  border-top-color: rgba(16, 24, 40, 0.12);
  background: rgba(255, 255, 255, 0.98);
  box-shadow: 0 -18px 34px rgba(16, 24, 40, 0.1);
}

body:not(.ops-mode) .detail-sticky-actions small {
  color: var(--red);
}

body:not(.ops-mode) .detail-sticky-actions button,
body:not(.ops-mode) .detail-sticky-actions a {
  min-height: 42px;
  min-width: 0;
  padding: 7px 12px;
  border-radius: 8px;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
}

body:not(.ops-mode) .detail-sticky-actions .primary-button {
  border-color: var(--red);
  background: var(--red);
  color: #ffffff;
}

body:not(.ops-mode) .detail-sticky-actions .sticky-consult-button {
  border-color: rgba(15, 118, 110, 0.32);
  background: #f0fffb;
  color: var(--teal);
}

@media (max-width: 640px) {
  body:not(.ops-mode) .detail-sticky-actions {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin: 2px -16px -22px;
    padding: 10px 16px calc(10px + env(safe-area-inset-bottom));
  }

  body:not(.ops-mode) .detail-sticky-actions > div {
    grid-column: 1 / -1;
  }

  body:not(.ops-mode) .detail-sticky-actions button,
  body:not(.ops-mode) .detail-sticky-actions a {
    padding: 7px 8px;
    white-space: normal;
  }
}

@media (max-width: 920px) {
  body:not(.ops-mode) .detail-ticket-media {
    margin: 14px 14px 0;
  }
}

/* qa529: keep search results simple; do not show internal intent parsing. */
body:not(.ops-mode) .search-understanding,
body:not(.ops-mode) .search-intent-overview,
body:not(.ops-mode) .search-assist {
  display: none !important;
}

/* qa528: more useful hot entries without making the first screen noisy. */
body:not(.ops-mode) .playguide-track.playguide-main {
  grid-template-columns: 50px repeat(5, minmax(86px, 1fr));
}

body:not(.ops-mode) .playguide-main small {
  grid-row: 1 / span 2;
  color: var(--red);
}

@media (max-width: 920px) {
  body:not(.ops-mode) .playguide-track.playguide-main {
    flex: 0 0 640px;
    grid-template-columns: 48px repeat(5, minmax(88px, 1fr));
  }
}

@media (max-width: 640px) {
  body:not(.ops-mode) .playguide-main small {
    grid-row: auto;
  }
}

/* qa531: only the actually selected hot shortcut should look selected. */
body:not(.ops-mode) .playguide-main button,
body:not(.ops-mode) .playguide-main button:first-of-type:not(.active) {
  border-color: #e2e7ef;
  background: #ffffff;
  box-shadow: none;
}

body:not(.ops-mode) .playguide-main button:hover:not(.active) {
  border-color: #d7dde8;
  background: #f8fafc;
  box-shadow: none;
}

body:not(.ops-mode) .playguide-main button.active {
  border-color: rgba(217, 54, 43, 0.48);
  background: #fff1ee;
  box-shadow: 0 7px 18px rgba(217, 54, 43, 0.1);
}

/* qa532: first screen = search, months, hot shortcuts, activity list. */
body:not(.ops-mode) .playguide-panel {
  margin: -16px auto 12px;
}

body:not(.ops-mode) .playguide-inner {
  display: block;
  padding: 10px;
}

body:not(.ops-mode) .playguide-buy-entry {
  display: none !important;
}

body:not(.ops-mode) .playguide-track.playguide-main {
  display: grid;
  grid-template-columns: 50px repeat(5, minmax(88px, 1fr));
  gap: 8px;
  width: 100%;
}

body:not(.ops-mode) .playguide-main button {
  min-height: 52px;
}

body:not(.ops-mode) .feed-toolbar {
  margin-bottom: 6px;
}

body:not(.ops-mode) .month-archive {
  margin: 6px 0 12px;
}

@media (max-width: 920px) {
  body:not(.ops-mode) .playguide-inner {
    display: block;
    overflow: visible;
  }

  body:not(.ops-mode) .playguide-track.playguide-main {
    display: flex;
    overflow-x: auto;
    padding-bottom: 2px;
  }

  body:not(.ops-mode) .playguide-main small {
    flex: 0 0 auto;
    align-self: center;
    min-width: 44px;
    border-right: 1px solid #edf0f4;
    color: var(--red);
  }

  body:not(.ops-mode) .playguide-main button {
    flex: 0 0 92px;
  }
}

/* qa534: focused mobile polish for the public visitor path. */
@media (max-width: 760px) {
  html,
  body {
    max-width: 100%;
    overflow-x: hidden;
  }

  body:not(.ops-mode) .topbar {
    height: auto;
    min-height: 56px;
    padding: 8px 12px;
  }

  body:not(.ops-mode) .brand {
    min-width: 0;
  }

  body:not(.ops-mode) .brand-mark {
    width: 34px;
    height: 34px;
  }

  body:not(.ops-mode) .brand strong {
    max-width: 142px;
    overflow: hidden;
    font-size: 14px;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  body:not(.ops-mode) .top-actions {
    gap: 5px;
  }

  body:not(.ops-mode) .top-actions .ghost-button {
    width: 36px;
    min-height: 36px;
    padding: 0;
    border-radius: 8px;
  }

  body:not(.ops-mode) .hero {
    min-height: 272px;
  }

  body:not(.ops-mode) .hero-bg {
    background-position: 50% 40%;
  }

  body:not(.ops-mode) .hero-bg::after {
    height: 78px;
  }

  body:not(.ops-mode) .hero-inner {
    width: calc(100% - 24px);
    min-height: 272px;
    padding: 18px 0 16px;
  }

  body:not(.ops-mode) .hero-copy {
    max-width: 100%;
    margin-bottom: 10px;
  }

  body:not(.ops-mode) .hero h1 {
    font-size: 30px;
    line-height: 1.12;
    text-shadow: 0 2px 12px rgba(22, 55, 92, 0.38);
  }

  body:not(.ops-mode) .hero-copy p {
    max-width: 280px;
    margin: 6px auto 0;
    font-size: 13px;
    line-height: 1.45;
  }

  body:not(.ops-mode) .planner {
    width: 100%;
    grid-template-columns: 1fr 1fr;
    gap: 7px;
    padding: 7px;
    border-radius: 10px;
  }

  body:not(.ops-mode) .planner .field.wide,
  body:not(.ops-mode) .planner .primary-button {
    grid-column: 1 / -1;
  }

  body:not(.ops-mode) .field {
    gap: 3px;
    padding: 6px 9px;
  }

  body:not(.ops-mode) .field span {
    font-size: 10px;
  }

  body:not(.ops-mode) .field div,
  body:not(.ops-mode) .field input {
    min-height: 36px;
  }

  body:not(.ops-mode) .field input {
    font-size: 16px;
  }

  body:not(.ops-mode) .planner .primary-button {
    min-height: 42px;
    font-size: 14px;
  }

  body:not(.ops-mode) .playguide-panel {
    width: calc(100% - 24px);
    margin: -12px auto 10px;
  }

  body:not(.ops-mode) .playguide-inner {
    padding: 7px;
    border-radius: 10px;
    overflow: hidden;
  }

  body:not(.ops-mode) .playguide-track.playguide-main {
    display: flex;
    width: 100%;
    gap: 6px;
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 2px;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity;
    scrollbar-width: thin;
  }

  body:not(.ops-mode) .playguide-main small {
    position: sticky;
    left: 0;
    z-index: 2;
    flex: 0 0 42px;
    align-self: stretch;
    display: grid;
    place-items: center;
    min-width: 42px;
    border-right: 1px solid #edf0f4;
    background: #ffffff;
    font-size: 11px;
  }

  body:not(.ops-mode) .playguide-main button {
    flex: 0 0 86px;
    min-height: 44px;
    padding: 7px 8px;
    scroll-snap-align: start;
  }

  body:not(.ops-mode) .playguide-track b {
    font-size: 12px;
    line-height: 1.15;
  }

  body:not(.ops-mode) .playguide-track em {
    margin-top: 2px;
    font-size: 10px;
    line-height: 1.15;
  }

  body:not(.ops-mode) .app-shell {
    width: calc(100% - 24px);
    margin-top: 0;
  }

  body:not(.ops-mode) .feed {
    padding: 10px;
    border-radius: 10px;
  }

  body:not(.ops-mode) .feed-toolbar {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    align-items: stretch;
    margin-bottom: 8px;
  }

  body:not(.ops-mode) .feed-toolbar h2 {
    font-size: 18px;
  }

  body:not(.ops-mode) .toolbar-actions {
    justify-content: stretch;
    width: 100%;
  }

  body:not(.ops-mode) .toolbar-actions select {
    width: 100%;
    min-height: 38px;
  }

  body:not(.ops-mode) .result-brief {
    padding: 9px 10px;
    border-radius: 8px;
  }

  body:not(.ops-mode) .month-archive {
    margin: 8px 0 10px;
    padding: 8px;
    border-radius: 10px;
  }

  body:not(.ops-mode) .month-archive > div:first-child {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 6px;
  }

  body:not(.ops-mode) .month-archive h3 {
    font-size: 15px;
  }

  body:not(.ops-mode) .month-archive > div:first-child small,
  body:not(.ops-mode) .month-archive .eyebrow {
    display: none;
  }

  body:not(.ops-mode) .month-archive-list {
    gap: 7px;
  }

  body:not(.ops-mode) .month-board-status {
    display: none !important;
  }

  body:not(.ops-mode) .year-month-panel {
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 6px;
    padding: 6px 0;
  }

  body:not(.ops-mode) .year-month-head {
    align-content: center;
    min-height: 68px;
    padding-left: 0;
    border-left: 0;
  }

  body:not(.ops-mode) .year-month-head small {
    display: none;
  }

  body:not(.ops-mode) .year-month-head span {
    display: block;
  }

  body:not(.ops-mode) .year-month-head strong {
    display: inline-grid;
    place-items: center;
    min-height: 28px;
    padding: 0 5px;
    border: 1px solid rgba(15, 118, 110, 0.16);
    border-radius: 8px;
    background: #eef8f7;
    color: var(--teal-strong);
    font-size: 11px;
    white-space: nowrap;
  }

  body:not(.ops-mode) .year-month-head b {
    margin-top: 5px;
    font-size: 10px;
    line-height: 1.25;
  }

  body:not(.ops-mode) .year-month-grid {
    display: flex;
    gap: 6px;
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 0;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
  }

  body:not(.ops-mode) .year-month-grid::-webkit-scrollbar {
    display: none;
  }

  body:not(.ops-mode) .year-month-panel + .year-month-panel {
    margin-top: 11px;
    padding-top: 11px;
    border-top: 1px solid #eef2f6;
  }

  body:not(.ops-mode) .month-card {
    flex: 0 0 92px;
    min-height: 68px;
    padding: 9px 9px 8px;
    scroll-snap-align: start;
  }

  body:not(.ops-mode) .month-card strong {
    font-size: 16px;
  }

  body:not(.ops-mode) .month-card small {
    margin-top: 4px;
    font-size: 10px;
  }

  body:not(.ops-mode) .month-card span,
  body:not(.ops-mode) .month-card em,
  body:not(.ops-mode) .month-card .month-card-tags {
    display: none;
  }

  body:not(.ops-mode) .event-grid {
    gap: 10px;
  }

  body:not(.ops-mode) .event-card.compact-card,
  body:not(.ops-mode) .event-card.featured-card {
    grid-template-columns: 1fr;
    border-radius: 10px;
  }

  body:not(.ops-mode) .event-card.compact-card:hover,
  body:not(.ops-mode) .event-card.featured-card:hover {
    transform: none;
  }

  body:not(.ops-mode) .event-card.compact-card .event-thumb,
  body:not(.ops-mode) .event-card.featured-card .event-thumb {
    height: clamp(174px, 48vw, 220px);
    min-height: 0;
  }

  body:not(.ops-mode) .category-pill {
    left: 10px;
    top: 10px;
    padding: 5px 8px;
    font-size: 11px;
  }

  body:not(.ops-mode) .date-badge {
    left: 10px;
    bottom: 10px;
    padding: 7px 8px;
    font-size: 12px;
  }

  body:not(.ops-mode) .event-card.compact-card .event-body,
  body:not(.ops-mode) .event-card.featured-card .event-body {
    padding: 11px 12px 12px;
  }

  body:not(.ops-mode) .card-kicker {
    margin-bottom: 7px;
    font-size: 11px;
  }

  body:not(.ops-mode) .event-title-row {
    gap: 8px;
  }

  body:not(.ops-mode) .event-title-row h3 {
    font-size: 17px;
    line-height: 1.28;
  }

  body:not(.ops-mode) .save-button {
    width: 34px;
    height: 34px;
    border-radius: 8px;
  }

  body:not(.ops-mode) .event-card.compact-card .meta-grid,
  body:not(.ops-mode) .event-card.featured-card .meta-grid {
    display: flex;
    gap: 6px;
    margin: 7px 0;
    overflow: hidden;
  }

  body:not(.ops-mode) .event-card.compact-card .meta-grid span,
  body:not(.ops-mode) .event-card.featured-card .meta-grid span {
    flex: 0 1 auto;
    min-height: 24px;
    padding: 0 8px;
    border: 1px solid #edf0f4;
    border-radius: 7px;
    background: #fbfcfd;
    color: #475467;
    font-size: 11px;
    font-weight: 800;
  }

  body:not(.ops-mode) .event-card.compact-card .meta-grid span:nth-child(1),
  body:not(.ops-mode) .event-card.compact-card .meta-grid span:nth-child(4),
  body:not(.ops-mode) .event-card.featured-card .meta-grid span:nth-child(1),
  body:not(.ops-mode) .event-card.featured-card .meta-grid span:nth-child(4) {
    display: none;
  }

  body:not(.ops-mode) .event-card.compact-card .card-access-strip,
  body:not(.ops-mode) .event-card.featured-card .card-access-strip {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    min-height: 0;
    margin-bottom: 8px;
    padding: 8px;
  }

  body:not(.ops-mode) .event-card.compact-card .card-access-strip > div:first-child,
  body:not(.ops-mode) .event-card.featured-card .card-access-strip > div:first-child {
    align-content: center;
  }

  body:not(.ops-mode) .event-card.compact-card .card-access-strip strong,
  body:not(.ops-mode) .event-card.featured-card .card-access-strip strong {
    font-size: 12px;
  }

  body:not(.ops-mode) .event-card.compact-card .card-map-actions,
  body:not(.ops-mode) .event-card.featured-card .card-map-actions {
    grid-template-columns: 1fr;
    gap: 4px;
    width: 64px;
  }

  body:not(.ops-mode) .event-card.compact-card .card-map-actions a,
  body:not(.ops-mode) .event-card.featured-card .card-map-actions a {
    min-height: 28px;
    padding: 0 6px;
    font-size: 10px;
  }

  body:not(.ops-mode) .event-card.compact-card .event-summary,
  body:not(.ops-mode) .event-card.featured-card .event-summary {
    min-height: 0;
    margin-bottom: 8px;
    font-size: 13px;
    line-height: 1.55;
    -webkit-line-clamp: 2;
  }

  body:not(.ops-mode) .micro-details,
  body:not(.ops-mode) .event-card .card-conversion,
  body:not(.ops-mode) .event-card .card-ticket-trust,
  body:not(.ops-mode) .event-card .card-artist-image-guard {
    display: none !important;
  }

  body:not(.ops-mode) .signal-row {
    gap: 5px;
    margin-bottom: 8px;
  }

  body:not(.ops-mode) .signal-row span {
    min-height: 23px;
    padding: 0 7px;
    font-size: 10px;
  }

  body:not(.ops-mode) .event-card.compact-card .card-actions,
  body:not(.ops-mode) .event-card.featured-card .card-actions {
    grid-template-columns: minmax(82px, auto) minmax(0, 1fr);
    gap: 8px;
    padding-top: 8px;
  }

  body:not(.ops-mode) .event-card.compact-card .card-actions strong,
  body:not(.ops-mode) .event-card.featured-card .card-actions strong {
    order: 1;
    justify-content: flex-start;
    min-height: 40px;
    font-size: 12px;
  }

  body:not(.ops-mode) .event-card.compact-card .detail-button,
  body:not(.ops-mode) .event-card.featured-card .detail-button {
    order: 2;
    justify-self: stretch;
    width: 100%;
    min-height: 42px;
    padding: 0 12px;
    font-size: 13px;
  }

  body:not(.ops-mode) .event-dialog {
    width: min(100% - 12px, 980px);
    max-height: calc(100dvh - 12px);
    border-radius: 10px;
  }

  body:not(.ops-mode) .dialog-close {
    top: 10px;
    right: 10px;
    width: 36px;
    height: 36px;
  }

  body:not(.ops-mode) .simple-detail-body {
    padding: 0 12px 18px;
  }

  body:not(.ops-mode) .compact-detail-desk,
  body:not(.ops-mode) .compact-detail-booking {
    grid-template-columns: 1fr;
    border-radius: 10px;
  }

  body:not(.ops-mode) .compact-detail-desk .detail-ticket-media {
    height: clamp(178px, 50vw, 224px);
    min-height: 0;
    margin: 10px;
    border-radius: 10px;
  }

  body:not(.ops-mode) .compact-detail-desk .detail-ticket-main {
    gap: 9px;
    padding: 4px 12px 12px;
  }

  body:not(.ops-mode) .compact-detail-title-row h2 {
    font-size: 21px;
    line-height: 1.22;
  }

  body:not(.ops-mode) .compact-detail-facts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
  }

  body:not(.ops-mode) .compact-detail-facts div {
    padding: 8px;
  }

  body:not(.ops-mode) .compact-entry-status {
    padding: 9px 10px;
  }

  body:not(.ops-mode) .compact-entry-status small {
    display: none;
  }

  body:not(.ops-mode) .compact-detail-booking {
    gap: 10px;
    margin-top: 10px;
    padding: 11px;
  }

  body:not(.ops-mode) .compact-detail-booking .detail-booking-copy span {
    display: none;
  }

  body:not(.ops-mode) .compact-detail-booking .detail-booking-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
    width: 100%;
  }

  body:not(.ops-mode) .compact-detail-booking .detail-entry-action {
    min-height: 42px;
    padding: 0 8px;
    font-size: 12px;
  }

  body:not(.ops-mode) .compact-detail-disclosure summary {
    min-height: 42px;
    padding: 10px 11px;
  }

  body:not(.ops-mode) .compact-detail-disclosure summary small {
    display: none;
  }

  body:not(.ops-mode) .compact-detail-more {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  body:not(.ops-mode) .related-events-disclosure {
    display: none;
  }

  body:not(.ops-mode) .detail-sticky-actions {
    grid-template-columns: 1fr 1fr 1fr;
    gap: 7px;
    align-items: stretch;
    margin: 2px -12px -18px;
    padding: 9px 12px calc(9px + env(safe-area-inset-bottom));
  }

  body:not(.ops-mode) .detail-sticky-actions > div {
    grid-column: 1 / -1;
  }

  body:not(.ops-mode) .detail-sticky-actions button,
  body:not(.ops-mode) .detail-sticky-actions a {
    width: 100%;
    min-height: 42px;
    padding: 6px 7px;
    font-size: 12px;
    justify-content: center;
    white-space: normal;
  }
}

@media (max-width: 360px) {
  body:not(.ops-mode) .hero h1 {
    font-size: 28px;
  }

  body:not(.ops-mode) .hero-copy p {
    max-width: 250px;
  }

  body:not(.ops-mode) .playguide-main button {
    flex-basis: 80px;
  }

  body:not(.ops-mode) .month-card {
    flex-basis: 86px;
  }

  body:not(.ops-mode) .event-card.compact-card .event-thumb,
  body:not(.ops-mode) .event-card.featured-card .event-thumb {
    height: 168px;
  }

  body:not(.ops-mode) .event-card.compact-card .card-actions,
  body:not(.ops-mode) .event-card.featured-card .card-actions,
  body:not(.ops-mode) .detail-sticky-actions {
    grid-template-columns: 1fr;
  }
}

/* qa535: prevent the mobile hot shortcut label from overlapping the first chip. */
@media (max-width: 760px) {
  body:not(.ops-mode) .playguide-panel {
    width: 100%;
    margin: -8px auto 12px;
    padding: 12px 12px 10px;
    background: #ffffff;
    border-top: 1px solid rgba(16, 24, 40, 0.06);
    border-bottom: 1px solid rgba(16, 24, 40, 0.06);
  }

  body:not(.ops-mode) .playguide-inner {
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
  }

  body:not(.ops-mode) .playguide-track.playguide-main {
    align-items: stretch;
    gap: 8px;
    min-height: 50px;
    padding: 1px 2px 3px;
    border: 0;
    background: #ffffff;
    scrollbar-width: none;
  }

  body:not(.ops-mode) .playguide-track.playguide-main::-webkit-scrollbar {
    display: none;
  }

  body:not(.ops-mode) .playguide-main small {
    display: none !important;
  }

  body:not(.ops-mode) .playguide-main button {
    flex: 0 0 auto;
    min-width: 90px;
    min-height: 46px;
    padding: 0 15px;
    border: 0;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 1px 0 rgba(16, 24, 40, 0.06), 0 8px 18px rgba(16, 24, 40, 0.06);
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  body:not(.ops-mode) .playguide-main button.active {
    border: 0;
    background: var(--red);
    color: #ffffff;
    box-shadow: 0 10px 22px rgba(217, 54, 43, 0.18);
  }

  body:not(.ops-mode) .playguide-track b {
    max-width: none;
    overflow: visible;
    font-size: 12px;
    line-height: 1;
    text-overflow: clip;
    white-space: nowrap;
  }

  body:not(.ops-mode) .playguide-track em {
    display: none;
  }
}
.destination-strip {
  margin: 16px 0 20px;
  padding: 16px;
  border: 1px solid #e4e7ec;
  background: #fff;
}

.destination-strip-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
}

.destination-strip-head h3 {
  margin: 2px 0 0;
  font-size: 20px;
  line-height: 1.25;
}

.destination-strip-head > small {
  color: #667085;
  white-space: nowrap;
}

.destination-list {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}

.destination-item {
  display: grid;
  grid-template-rows: 104px minmax(58px, auto);
  gap: 0;
  min-width: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid #e4e7ec;
  border-radius: 6px;
  background: #fff;
  color: #101828;
  text-align: left;
}

.destination-item:hover {
  border-color: #98a2b3;
  box-shadow: 0 5px 16px rgba(16, 24, 40, 0.08);
}

.destination-media {
  position: relative;
  display: block;
  min-width: 0;
  overflow: hidden;
  background: #eef4f8;
}

.destination-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 220ms ease;
}

.destination-item:hover .destination-media img {
  transform: scale(1.025);
}

.destination-media.is-missing::after {
  content: "白鳥游";
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: #667085;
  font-size: 13px;
  font-weight: 700;
}

.destination-index {
  position: absolute;
  top: 8px;
  left: 8px;
  display: grid;
  width: 28px;
  height: 28px;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, 0.72);
  border-radius: 50%;
  background: rgba(16, 24, 40, 0.78);
  color: #fff;
  font-size: 11px;
  font-weight: 800;
}

.destination-copy {
  display: grid;
  gap: 4px;
  align-content: center;
  min-width: 0;
  padding: 10px 12px 11px;
}

.destination-copy strong,
.destination-copy small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.destination-copy strong {
  font-size: 14px;
  line-height: 1.35;
}

.destination-copy small {
  color: #667085;
  font-size: 12px;
}

@media (max-width: 980px) {
  .destination-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .destination-strip {
    margin: 12px -12px 16px;
    padding: 14px 12px;
    border-right: 0;
    border-left: 0;
  }

  .destination-list {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
  }

  .destination-list::-webkit-scrollbar {
    display: none;
  }

  .destination-item {
    flex: 0 0 72%;
    grid-template-rows: 132px minmax(62px, auto);
    scroll-snap-align: start;
  }
}
