:root {
  --mhb-ink: #2c211c;
  --mhb-wine: #6d2434;
  --mhb-wine-dark: #4b1722;
  --mhb-cream: #f7f0e4;
  --mhb-paper: #fffdf8;
  --mhb-gold: #c49a52;
  --mhb-line: rgba(80, 49, 35, 0.18);
  --mhb-shadow: 0 24px 70px rgba(62, 35, 26, 0.14);
}

.mhb-owner-office {
  max-width: 1120px;
  background: #e9dfcf;
  border-color: rgba(66, 42, 27, .34);
  box-shadow: 0 32px 90px rgba(31, 24, 20, .26);
}
.mhb-owner-office-hero {
  min-height: 390px;
  padding: clamp(2rem, 5vw, 4.25rem);
  position: relative;
  isolation: isolate;
  overflow: hidden;
  align-items: flex-end;
  background: linear-gradient(110deg, #2a160f, #57301f 58%, #21130f);
  border-bottom: 9px solid #b58a49;
}
.mhb-penthouse-view {
  position: absolute;
  inset: 0;
  z-index: -2;
  display: grid;
  grid-template-columns: 1fr 1.35fr 1fr;
  gap: 12px;
  padding: 22px 24px 82px;
  background: linear-gradient(90deg, #25150f 0 2.5%, transparent 2.5% 97.5%, #25150f 97.5%);
}
.mhb-window {
  position: relative;
  overflow: hidden;
  border: 5px solid #4b2b1d;
  border-bottom-width: 12px;
  box-shadow: inset 0 0 0 2px rgba(213, 174, 103, .58), 0 10px 30px rgba(0,0,0,.25);
  background:
    linear-gradient(to bottom, transparent 0 54%, rgba(255,255,255,.13) 54.5% 55.3%, transparent 56%),
    linear-gradient(to bottom, #80b5d0 0 42%, #e9d3a7 42% 48%, #4e879b 48% 66%, #214f64 66% 100%);
}
.mhb-window::before {
  content: "";
  position: absolute;
  left: 0; right: 0; top: 47%; height: 3px;
  background: rgba(39, 65, 74, .55);
  box-shadow: 0 13px 28px rgba(255,255,255,.16);
}
.mhb-window::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(115deg, rgba(255,255,255,.2), transparent 28% 72%, rgba(255,255,255,.08));
}
.mhb-window-west { transform: perspective(900px) rotateY(8deg); transform-origin: right center; }
.mhb-window-east { transform: perspective(900px) rotateY(-8deg); transform-origin: left center; }
.mhb-lake-sun {
  position: absolute;
  right: 18%; top: 23%;
  width: 54px; height: 54px;
  border-radius: 50%;
  background: #f7d58b;
  box-shadow: 0 0 42px rgba(255, 218, 144, .72), 0 93px 38px rgba(247, 213, 139, .2);
}
.mhb-office-identity {
  max-width: 650px;
  padding: 1.35rem 1.55rem;
  border: 1px solid rgba(237, 210, 161, .55);
  border-left: 5px solid #d2ad6d;
  border-radius: 4px 18px 18px 4px;
  background: linear-gradient(120deg, rgba(39, 21, 15, .9), rgba(73, 37, 28, .78));
  box-shadow: 0 18px 42px rgba(0,0,0,.28);
  backdrop-filter: blur(5px);
}
.mhb-owner-office-hero h2 { text-shadow: 0 3px 18px rgba(0,0,0,.45); }
.mhb-owner-office-links { display: flex; flex-wrap: wrap; gap: .7rem; justify-content: flex-end; position: relative; }
.mhb-owner-office-links a { color: #fff8e9; background: rgba(42,22,15,.76); border: 1px solid #cda767; border-radius: 999px; padding: .68rem 1rem; text-decoration: none; box-shadow: 0 8px 20px rgba(0,0,0,.18); }
.mhb-owner-office-links a:hover { background: #6d2434; }
.mhb-office-appointments { display: flex; flex-wrap: wrap; justify-content: center; gap: .7rem 1.8rem; padding: .85rem 1.25rem; color: #f7ead2; background: linear-gradient(90deg, #321d14, #69442b, #321d14); border-bottom: 1px solid #aa8248; font: 600 .76rem/1.2 ui-sans-serif, system-ui, sans-serif; letter-spacing: .13em; text-transform: uppercase; }
.mhb-office-appointments span::before { content: "◆"; color: #d5ad68; margin-right: .6rem; font-size: .65em; }
.mhb-owner-office .mhb-panel { margin: 1.2rem; border: 1px solid rgba(88,57,36,.26); border-radius: 18px; background: linear-gradient(135deg, #fffdf8, #f5ecdd); box-shadow: 0 14px 36px rgba(66,42,27,.12); }
.mhb-owner-office .mhb-panel-heading { border-bottom-color: rgba(181,138,73,.45); }
.mhb-owner-office .mhb-history { min-height: 280px; max-height: 580px; overflow-y: auto; background: linear-gradient(rgba(255,253,248,.9), rgba(247,240,228,.92)), repeating-linear-gradient(90deg, transparent 0 44px, rgba(111,72,44,.04) 45px 46px); }
.mhb-owner-archive-panel { margin-top:1.2rem; }
.mhb-owner-archives { display:grid; gap:.75rem; }
.mhb-owner-archive { border:1px solid rgba(109,36,52,.18); border-radius:14px; background:rgba(255,253,248,.82); overflow:hidden; }
.mhb-owner-archive > summary { cursor:pointer; padding:1rem 1.1rem; color:var(--mhb-wine-dark); font-weight:800; }
.mhb-owner-archive-transcript { max-height:520px; overflow:auto; padding:.25rem 1rem 1rem; border-top:1px solid rgba(109,36,52,.12); }
.mhb-owner-archive-delete { margin:0 1rem 1rem; color:#8b2635; }
.mhb-owner-office .mhb-message-body { white-space: pre-wrap; }
.mhb-owner-office .mhb-message.is-assistant { border-left: 4px solid #b58a49; }
.mhb-owner-empty { color: #75665f; font-style: italic; text-align: center; padding: 2rem 1rem; }
.mhb-owner-inline-status { flex:1 1 100%; min-height:1.35em; font-size:.82rem; line-height:1.4; }
.mhb-owner-inline-status.is-error { color:#9c2636; font-weight:750; }
.mhb-owner-inline-status.is-success { color:#286542; font-weight:750; }
.mhb-owner-composer-actions,
.mhb-message-actions { align-items:flex-start; display:flex; flex-wrap:wrap; gap:.7rem; margin-top:-.2rem; }
.mhb-owner-composer-actions .mhb-dictation,
.mhb-message-actions .mhb-dictation { flex:1 1 360px; margin:0; min-height:46px; }
.mhb-owner-composer-actions .mhb-button,
.mhb-message-actions .mhb-button { flex:0 0 auto; min-width:190px; }
.mhb-message-autoplay { align-self:center; flex:0 0 auto; min-height:46px; }
.mhb-owner-composer-actions + .mhb-owner-inline-status { display:block; margin-top:-.35rem; }
.mhb-owner-office .mhb-message.is-undelivered { border:2px dashed #9c2636; opacity:.84; }
.mhb-message-delivery-note { display:block; margin-top:.6rem; color:#9c2636; font-size:.78rem; }
@media (max-width: 700px) {
  .mhb-owner-office-hero { min-height: 340px; padding: 1.25rem; }
  .mhb-penthouse-view { grid-template-columns: .7fr 1.6fr .7fr; padding: 12px 10px 105px; gap: 5px; }
  .mhb-office-identity { padding: 1rem; }
  .mhb-owner-office-links { justify-content: flex-start; }
  .mhb-owner-office .mhb-panel { margin: .65rem; }
}

.mhb-shell,
.mhb-shell * {
  box-sizing: border-box;
}

.mhb-shell [hidden] { display: none !important; }

.mhb-shell {
  width: min(100%, 980px);
  margin: 2rem auto;
  color: var(--mhb-ink);
  background: var(--mhb-cream);
  border: 1px solid var(--mhb-line);
  border-radius: 28px;
  box-shadow: var(--mhb-shadow);
  overflow: hidden;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.mhb-entry {
  padding: clamp(2rem, 7vw, 5rem);
  text-align: center;
}

.mhb-entry-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.8rem;
  margin-top: 1.5rem;
}

.mhb-entry h2,
.mhb-hero h2,
.mhb-panel h3 {
  margin: 0;
  color: var(--mhb-wine-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 600;
  line-height: 1.05;
}

.mhb-entry h2 { font-size: clamp(2.25rem, 7vw, 4.8rem); }
.mhb-hero h2 { font-size: clamp(2rem, 6vw, 3.8rem); }
.mhb-panel h3 { font-size: clamp(1.65rem, 4vw, 2.55rem); }

.mhb-eyebrow {
  margin: 0 0 0.45rem;
  color: var(--mhb-wine);
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.mhb-small,
.mhb-user {
  color: rgba(44, 33, 28, 0.7);
  font-size: 0.86rem;
}

.mhb-member-bar {
  display: grid;
  grid-template-columns: minmax(220px, 0.62fr) minmax(0, 1.38fr);
  align-items: start;
  gap: 1rem;
  min-height: 78px;
  padding: 0.9rem clamp(1.1rem, 4vw, 2.4rem);
  color: var(--mhb-ink);
  background: linear-gradient(90deg, #fffdf8, #f6eee2);
  border-bottom: 1px solid var(--mhb-line);
}

.mhb-member-bar-kicker {
  margin: 0 0 0.18rem;
  color: var(--mhb-wine);
  font-size: 0.66rem;
  font-weight: 850;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.mhb-member-bar h2 {
  margin: 0;
  color: var(--mhb-wine-dark);
  font: 600 clamp(1.2rem, 3vw, 1.65rem)/1.1 Georgia, "Times New Roman", serif;
}

.mhb-member-bar .mhb-user {
  color: rgba(44, 33, 28, 0.68);
}

.mhb-member-bar .mhb-member-links a {
  color: var(--mhb-wine) !important;
}

.mhb-member-bar .mhb-member-links a:hover,
.mhb-member-bar .mhb-member-links a:focus {
  color: var(--mhb-wine-dark) !important;
}

.mhb-hero {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1rem;
  padding: clamp(1.6rem, 5vw, 3.5rem);
  color: var(--mhb-paper);
  background:
    radial-gradient(circle at top right, rgba(196, 154, 82, 0.38), transparent 34%),
    linear-gradient(135deg, var(--mhb-wine-dark), var(--mhb-wine));
}

.mhb-hero h2,
.mhb-hero .mhb-eyebrow,
.mhb-hero .mhb-user { color: var(--mhb-paper); }
.mhb-hero .mhb-user { margin: 0; white-space: nowrap; }

.mhb-session {
  display: grid;
	justify-items: stretch;
	gap: 0.55rem;
	min-width: 0;
}

.mhb-member-links {
	display: grid;
	grid-template-columns: repeat(3, minmax(130px, 1fr));
	gap: 0.55rem;
	width: 100%;
}

.mhb-member-bar .mhb-member-links a,
.mhb-member-bar .mhb-member-links button {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	flex-direction: column;
	min-height: 54px;
	min-width: 0;
	padding: 0.62rem 0.75rem;
	color: var(--mhb-wine) !important;
	background: rgba(255, 253, 248, 0.88);
	border: 1px solid rgba(109, 36, 52, 0.38);
	border-radius: 12px;
	box-sizing: border-box;
	font: inherit;
	line-height: 1.15;
	text-align: left;
	text-decoration: none !important;
	cursor: pointer;
}

.mhb-member-bar .mhb-member-links a strong,
.mhb-member-bar .mhb-member-links button strong {
	display: block;
	font-size: 0.83rem;
	font-weight: 850;
}

.mhb-member-bar .mhb-member-links a span,
.mhb-member-bar .mhb-member-links button span {
	display: block;
	margin-top: 0.18rem;
	color: rgba(44, 33, 28, 0.66);
	font-size: 0.67rem;
	font-weight: 650;
}

.mhb-member-bar .mhb-member-links a:hover,
.mhb-member-bar .mhb-member-links a:focus,
.mhb-member-bar .mhb-member-links button:hover,
.mhb-member-bar .mhb-member-links button:focus {
	color: var(--mhb-wine-dark) !important;
	background: #fff;
	border-color: var(--mhb-wine);
	box-shadow: 0 4px 12px rgba(70, 37, 27, 0.1);
}

.mhb-member-bar .mhb-member-links .mhb-logout-button {
	color: #fff !important;
	background: var(--mhb-wine);
	border-color: var(--mhb-wine);
}

.mhb-member-bar .mhb-member-links .mhb-logout-button span { color: rgba(255,255,255,.78); }

.mhb-member-bar .mhb-member-links .mhb-logout-button:hover,
.mhb-member-bar .mhb-member-links .mhb-logout-button:focus { color: #fff !important; background: var(--mhb-wine-dark); }

.mhb-member-bar .mhb-member-links .mhb-refresh-bistro {
	border-color: rgba(160, 111, 43, 0.62);
	background: linear-gradient(145deg, #fffdf7, #f3e6c9);
}

.mhb-member-bar .mhb-member-links button:disabled { cursor: wait; opacity: 0.72; }

.mhb-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  padding: 0.75rem clamp(1rem, 5vw, 3.5rem) 0;
  background: var(--mhb-paper);
  border-bottom: 1px solid var(--mhb-line);
}

.mhb-tab {
  appearance: none;
  padding: 0.85rem 1.1rem;
  color: rgba(44, 33, 28, 0.66);
  background: transparent;
  border: 0;
  border-bottom: 3px solid transparent;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}

.mhb-tab.is-active {
  color: var(--mhb-wine);
  border-bottom-color: var(--mhb-gold);
}

.mhb-member-bar.mhb-member-bar-simple {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 0;
  padding-block: 0.72rem;
}

.mhb-member-bar-logout {
  flex: 0 0 auto;
  padding: 0.48rem 0.78rem;
  color: var(--mhb-wine-dark)!important;
  border: 1px solid rgba(109, 36, 52, 0.32);
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 800;
  text-decoration: none!important;
}

.mhb-member-bar-logout:hover,
.mhb-member-bar-logout:focus { background: #fff; border-color: var(--mhb-wine); }

.mhb-front-door-panel {
  padding: clamp(0.7rem, 2.5vw, 1.5rem);
  background: linear-gradient(145deg, #fffaf0, #f3e5d2);
}

.mhb-bistro-home-welcome {
  max-width: 760px;
  margin: 0 auto;
  padding: clamp(1.2rem, 4vw, 2.4rem) 1rem clamp(1rem, 3vw, 1.7rem);
  text-align: center;
}

.mhb-bistro-home-welcome h3 {
  margin: 0.18rem 0 0.5rem;
  color: var(--mhb-wine-dark);
  font: 650 clamp(2rem, 6vw, 3.6rem)/1.02 Georgia, "Times New Roman", serif;
}

.mhb-bistro-home-welcome > p:last-child { margin: 0; color: rgba(44, 33, 28, 0.72); font-size: clamp(1rem, 2.2vw, 1.18rem); }

.mhb-bistro-home-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.9rem;
}

.mhb-bistro-home-card {
  appearance: none;
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  min-height: 190px;
  padding: clamp(1.15rem, 3vw, 1.65rem);
  color: var(--mhb-ink);
  background: rgba(255, 253, 248, 0.94);
  border: 1px solid rgba(109, 36, 52, 0.2);
  border-radius: 20px;
  box-shadow: 0 10px 24px rgba(57, 34, 24, 0.08);
  cursor: pointer;
  font: inherit;
  text-align: left;
  transition: transform 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease;
}

.mhb-bistro-home-card.is-primary { color: #fffaf0; background: linear-gradient(145deg, var(--mhb-wine), var(--mhb-wine-dark)); border-color: #8a4055; }
.mhb-bistro-home-card:hover,
.mhb-bistro-home-card:focus { border-color: var(--mhb-gold); box-shadow: 0 14px 30px rgba(57, 34, 24, 0.15); outline: none; transform: translateY(-3px); }
.mhb-bistro-home-card span { color: #8b5d2f; font-size: 0.68rem; font-weight: 900; letter-spacing: 0.15em; text-transform: uppercase; }
.mhb-bistro-home-card.is-primary span { color: #f0cf90; }
.mhb-bistro-home-card strong { display: block; margin: auto 0 0.55rem; color: var(--mhb-wine-dark); font: 650 clamp(1.35rem, 3vw, 1.8rem)/1.08 Georgia, "Times New Roman", serif; }
.mhb-bistro-home-card.is-primary strong { color: #fff; }
.mhb-bistro-home-card small { color: rgba(44, 33, 28, 0.72); font-size: 0.84rem; font-weight: 650; line-height: 1.45; }
.mhb-bistro-home-card.is-primary small { color: rgba(255, 250, 240, 0.83); }
.mhb-bistro-home-detail { margin: 1rem 0 0; text-align: center; }

.mhb-bistro-entrance {
  position: relative;
  min-height: clamp(420px, 62vw, 650px);
  overflow: hidden;
  border: 1px solid rgba(244, 214, 157, 0.34);
  border-radius: 22px;
  background: #07101a;
  box-shadow: 0 24px 55px rgba(0, 0, 0, 0.42);
}

.mhb-bistro-entrance > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.mhb-bistro-entrance-shade {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, transparent 38%, rgba(3, 8, 14, 0.12) 56%, rgba(3, 8, 14, 0.72) 100%),
    linear-gradient(0deg, rgba(7, 8, 10, 0.7), transparent 48%);
}

.mhb-bistro-sign {
  position: absolute;
  right: clamp(1.2rem, 5vw, 4rem);
  bottom: clamp(1.2rem, 5vw, 4rem);
  width: min(44%, 410px);
  padding: clamp(1.15rem, 3.5vw, 2.25rem);
  color: #fff8e9;
  border: 1px solid rgba(231, 198, 134, 0.66);
  border-left: 5px solid #d2ad6d;
  border-radius: 5px 20px 20px 5px;
  background: linear-gradient(135deg, rgba(34, 21, 16, 0.92), rgba(75, 23, 34, 0.84));
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.38);
  backdrop-filter: blur(5px);
}

.mhb-bistro-sign p,
.mhb-bistro-sign span {
  margin: 0;
  color: #ead2a5;
  font-size: 0.68rem;
  font-weight: 850;
  letter-spacing: 0.14em;
  line-height: 1.45;
  text-transform: uppercase;
}

.mhb-bistro-sign h3 {
  margin: 0.45rem 0 0.75rem;
  color: #fffdf8;
  font-size: clamp(2rem, 5vw, 4rem);
  text-shadow: 0 3px 16px rgba(0, 0, 0, 0.48);
}

.mhb-arrival-grid {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 1rem;
  padding: 1rem 0 0;
}

.mhb-arrival-card {
  padding: clamp(1.35rem, 4vw, 2.5rem);
  color: var(--mhb-ink);
  background: linear-gradient(135deg, #fffdf8, #f5ecdd);
  border: 1px solid rgba(196, 154, 82, 0.35);
  border-radius: 20px;
}

.mhb-arrival-card.is-welcome {
  background:
    radial-gradient(circle at top right, rgba(196, 154, 82, 0.2), transparent 36%),
    linear-gradient(135deg, #fffdf8, #f7efe3);
}

.mhb-arrival-card h3 {
  margin: 0;
  color: var(--mhb-wine-dark);
  font: 600 clamp(1.75rem, 4vw, 2.8rem)/1.08 Georgia, "Times New Roman", serif;
}

.mhb-arrival-card p:not(.mhb-eyebrow) {
  margin: 0.9rem 0 0;
  line-height: 1.62;
}

.mhb-arrival-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.7rem;
  margin-top: 1.35rem;
}

.mhb-returning-arrival {
  display: grid;
  gap: 1rem;
  padding: 1rem 0 0;
}

.mhb-returning-welcome {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.25rem;
  padding: clamp(1.25rem, 3.5vw, 2rem);
  color: var(--mhb-ink);
  background:
    radial-gradient(circle at top right, rgba(196, 154, 82, 0.18), transparent 32%),
    linear-gradient(135deg, #fffdf8, #f7efe3);
  border: 1px solid rgba(196, 154, 82, 0.35);
  border-radius: 20px;
}

.mhb-returning-welcome h3 {
  margin: 0;
  color: var(--mhb-wine-dark);
  font: 600 clamp(1.75rem, 4vw, 2.75rem)/1.08 Georgia, "Times New Roman", serif;
}

.mhb-returning-welcome p:not(.mhb-eyebrow) { margin: 0.55rem 0 0; }
.mhb-returning-welcome .mhb-arrival-actions { flex: 0 0 auto; margin-top: 0; }

.mhb-activity-grid {
  display: grid;
  grid-template-columns: 1.25fr 1fr;
  gap: 1rem;
}

.mhb-activity-card,
.mhb-bistro-tour {
  min-width: 0;
  padding: 1.25rem;
  color: var(--mhb-ink);
  background: linear-gradient(135deg, #fffdf8, #f5ecdd);
  border: 1px solid rgba(196, 154, 82, 0.32);
  border-radius: 18px;
}

.mhb-activity-card.is-conversation { border-top: 4px solid var(--mhb-wine); }
.mhb-activity-card.is-photos { grid-column: 1 / -1; grid-row: 2; border-top: 4px solid var(--mhb-gold); }
.mhb-activity-grid > .mhb-activity-card:last-child { grid-column: 2; grid-row: 1; }
.mhb-activity-card h4 { margin: 0; color: var(--mhb-wine-dark); font: 600 1.3rem/1.18 Georgia, "Times New Roman", serif; }
.mhb-activity-card > p:not(.mhb-eyebrow) { margin: 0.75rem 0; color: rgba(44, 33, 28, 0.76); line-height: 1.5; }

.mhb-progress-track {
  height: 9px;
  margin: 0.85rem 0;
  overflow: hidden;
  background: rgba(109, 36, 52, 0.12);
  border-radius: 999px;
}

.mhb-progress-track span {
  display: block;
  width: 0;
  height: 100%;
  background: linear-gradient(90deg, var(--mhb-wine), var(--mhb-gold));
  border-radius: inherit;
  transition: width 0.35s ease;
}

.mhb-recent-attachments {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.6rem;
  margin-top: 0.75rem;
}

.mhb-recent-attachments > p { grid-column: 1 / -1; margin: 0; color: rgba(44, 33, 28, 0.7); line-height: 1.5; }

.mhb-recent-attachment {
  min-width: 0;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--mhb-line);
  border-radius: 11px;
}

.mhb-recent-attachment img { display: block; width: 100%; aspect-ratio: 3 / 2; object-fit: cover; }
.mhb-recent-attachment > span:last-child { display: block; overflow: hidden; padding: 0.55rem 0.65rem; font-size: 0.82rem; font-weight: 750; text-overflow: ellipsis; white-space: nowrap; }
.mhb-recent-file-icon { display: grid; min-height: 76px; place-items: center; color: var(--mhb-wine); background: #f5e7d2; font-size: 0.72rem; font-weight: 850; letter-spacing: 0.08em; text-transform: uppercase; }

.mhb-bistro-tour { padding: 0; }
.mhb-bistro-tour summary { padding: 1rem 1.25rem; color: var(--mhb-wine); cursor: pointer; font-weight: 850; }
.mhb-tour-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; padding: 0 1.25rem 1.25rem; border-top: 1px solid var(--mhb-line); }
.mhb-tour-grid p { margin: 1rem 0 0; line-height: 1.5; }
.mhb-photo-state { margin: 0.7rem 0 0; color: #ead2a5; }

.mhb-mic-help {
  margin: -0.35rem 0 1rem;
  padding: 0.9rem 1rem;
  color: #542b20;
  background: #fff3dd;
  border: 1px solid #d5a85d;
  border-radius: 14px;
}
.mhb-mic-help[hidden] { display: none; }
.mhb-mic-help p { margin: 0 0 0.75rem; line-height: 1.5; }
.mhb-mic-help .mhb-secondary-button { display: inline-flex; margin: 0.2rem 0.45rem 0.2rem 0; text-decoration: none; }
.mhb-mic-help .mhb-secondary-button[hidden] { display: none; }
.mhb-mic-help.is-in-app-browser { border-color: #9c3f2f; background: #fff0df; }

.mhb-kitchen-timers {
  margin: 1rem clamp(1rem, 5vw, 3.5rem);
  padding: 1rem;
  color: var(--mhb-ink);
  background: linear-gradient(135deg, #fffaf0, #f5e7d0);
  border: 1px solid rgba(109, 36, 52, 0.24);
  border-left: 5px solid var(--mhb-gold);
  border-radius: 16px;
  box-shadow: 0 8px 24px rgba(48, 27, 20, 0.08);
}
.mhb-timer-header { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.mhb-timer-heading { display: flex; align-items: center; min-width: 0; gap: 0.8rem; }
.mhb-timer-heading > span:last-child { min-width: 0; }
.mhb-timer-header .mhb-eyebrow { display: block; margin: 0 0 0.18rem; }
.mhb-timer-header h3 { margin: 0; color: var(--mhb-wine-dark); font: 700 clamp(1.15rem, 3vw, 1.45rem)/1.15 Georgia, "Times New Roman", serif; }
.mhb-timer-shelf-icon {
  position: relative;
  flex: 0 0 52px;
  width: 52px;
  height: 48px;
  padding: 4px 6px 7px;
  background: linear-gradient(145deg, #fffdf4, #d9c9ad);
  border: 1px solid #a9987d;
  border-radius: 46% 46% 18% 18% / 18% 18% 12% 12%;
  box-shadow: inset 0 1px #fff, 0 4px 8px rgba(49, 31, 22, 0.16);
}
.mhb-timer-shelf-icon::after {
  position: absolute;
  right: 8px;
  bottom: -4px;
  left: 8px;
  height: 5px;
  background: linear-gradient(#d9d3ca, #625c56);
  border-radius: 0 0 999px 999px;
  content: "";
}
.mhb-timer-shelf-icon > span {
  position: relative;
  display: block;
  width: 38px;
  height: 38px;
  background:
    radial-gradient(circle, #fffdf5 0 52%, transparent 54%),
    repeating-conic-gradient(from -3deg, #6d2637 0deg 1.2deg, transparent 1.2deg 12deg),
    radial-gradient(circle, #fffdf6 0 69%, #928a80 71% 78%, #ded9d2 80% 100%);
  border: 2px solid #8b847d;
  border-radius: 50%;
  box-shadow: inset 0 0 4px rgba(44, 31, 24, 0.25), 0 1px 2px rgba(44, 31, 24, 0.22);
}
.mhb-timer-shelf-icon > span::before {
  position: absolute;
  bottom: 50%;
  left: 50%;
  width: 2px;
  height: 28%;
  background: #7c2639;
  border-radius: 999px;
  content: "";
  transform: translateX(-50%) rotate(48deg);
  transform-origin: 50% 100%;
}
.mhb-timer-shelf-icon > span::after {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 7px;
  height: 7px;
  background: radial-gradient(circle at 35% 30%, #fff, #777 55%, #38332f);
  border: 1px solid #eee9e2;
  border-radius: 50%;
  content: "";
  transform: translate(-50%, -50%);
}
.mhb-timer-maker { display: grid; grid-template-columns: minmax(190px, 230px) minmax(0, 1fr); align-items: center; gap: 1.25rem 1.6rem; margin-top: 1rem; padding-top: 1rem; border-top: 1px solid rgba(109, 36, 52, 0.18); }
.mhb-timer-maker[hidden] { display: none; }
.mhb-timer-appliance {
  --mhb-timer-angle: 48deg;
  position: relative;
  display: grid;
  justify-items: center;
  width: min(100%, 230px);
  margin-inline: auto;
  padding: 0.9rem 0.85rem 0.65rem;
  color: var(--mhb-wine-dark);
  background:
    linear-gradient(115deg, rgba(255, 255, 255, 0.9), transparent 24%),
    linear-gradient(145deg, #fffdf4 0%, #eadfc9 72%, #d4c4aa 100%);
  border: 1px solid #b8a78d;
  border-radius: 48% 48% 20% 20% / 14% 14% 12% 12%;
  box-shadow:
    inset 0 1px 0 #fff,
    inset 0 -5px 10px rgba(75, 49, 34, 0.1),
    0 10px 18px rgba(54, 34, 24, 0.18);
}
.mhb-timer-appliance::after {
  position: absolute;
  right: 14%;
  bottom: -7px;
  left: 14%;
  height: 9px;
  background: linear-gradient(#8f877e, #d8d2c9 35%, #665f58 38%, #3e3935);
  border-radius: 0 0 999px 999px;
  box-shadow: 0 2px 4px rgba(35, 25, 20, 0.28);
  content: "";
}
.mhb-timer-appliance > p {
  position: relative;
  z-index: 2;
  margin: 0.55rem 0 0.1rem;
  color: #6d2637;
  font-size: 0.67rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-align: center;
  text-transform: uppercase;
}
.mhb-timer-dial {
  position: relative;
  isolation: isolate;
  width: clamp(168px, 18vw, 202px);
  aspect-ratio: 1;
  overflow: hidden;
  background:
    radial-gradient(circle, #fffdf5 0 55%, transparent 56%),
    repeating-conic-gradient(from -3deg, #6d2637 0deg 0.8deg, transparent 0.8deg 6deg),
    radial-gradient(circle, #fffdf6 0 68%, #d8cbb8 69% 74%, #8d867f 75% 79%, #f4f1eb 80% 83%, #726b64 84% 100%);
  border: 7px solid #bbb5ad;
  border-radius: 50%;
  box-shadow:
    inset 0 0 0 2px #f8f6f0,
    inset 0 0 12px rgba(38, 29, 24, 0.3),
    0 0 0 2px #766f68,
    0 0 0 4px #e8e4dd,
    0 6px 10px rgba(42, 30, 24, 0.24);
}
.mhb-timer-dial::before {
  position: absolute;
  inset: 8%;
  z-index: -1;
  background: radial-gradient(circle at 34% 26%, rgba(255, 255, 255, 0.9), transparent 35%);
  border: 1px solid rgba(94, 75, 63, 0.16);
  border-radius: 50%;
  content: "";
}
.mhb-timer-mark {
  position: absolute;
  z-index: 1;
  color: #5b3a31;
  font: 850 0.65rem/1 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}
.mhb-timer-mark.is-zero { top: 17%; left: 50%; transform: translateX(-50%); }
.mhb-timer-mark.is-fifteen { top: 50%; right: 16%; transform: translateY(-50%); }
.mhb-timer-mark.is-thirty { bottom: 16%; left: 50%; transform: translateX(-50%); }
.mhb-timer-mark.is-forty-five { top: 50%; left: 14%; transform: translateY(-50%); }
.mhb-timer-pointer {
  position: absolute;
  bottom: 50%;
  left: 50%;
  z-index: 2;
  width: 5px;
  height: 36%;
  background: linear-gradient(90deg, #4f1423, #a33e54 50%, #4f1423);
  border-radius: 999px 999px 2px 2px;
  box-shadow: 0 1px 2px rgba(40, 20, 20, 0.32);
  transform: translateX(-50%) rotate(var(--mhb-timer-angle));
  transform-origin: 50% 100%;
  transition: transform 280ms ease;
}
.mhb-timer-pointer::before {
  position: absolute;
  top: -5px;
  left: 50%;
  width: 9px;
  height: 9px;
  background: #7c2639;
  border-radius: 50% 50% 50% 0;
  content: "";
  transform: translateX(-50%) rotate(-45deg);
}
.mhb-timer-hub {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 4;
  width: 24px;
  height: 24px;
  background: radial-gradient(circle at 35% 30%, #fff 0 8%, #d7d2cc 18%, #777069 56%, #3e3935 100%);
  border: 2px solid #f2eee9;
  border-radius: 50%;
  box-shadow: 0 2px 4px rgba(33, 24, 20, 0.36);
  transform: translate(-50%, -50%);
}
.mhb-timer-dial-readout {
  position: absolute;
  top: 60%;
  left: 50%;
  z-index: 3;
  display: grid;
  justify-items: center;
  min-width: 66px;
  padding: 0.08rem 0.4rem 0.16rem;
  color: var(--mhb-wine-dark);
  background: rgba(255, 253, 245, 0.86);
  border: 1px solid rgba(109, 38, 55, 0.14);
  border-radius: 7px;
  box-shadow: 0 1px 3px rgba(52, 34, 26, 0.08);
  transform: translateX(-50%);
}
.mhb-timer-dial-readout strong { font: 900 1.35rem/1 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-variant-numeric: tabular-nums; }
.mhb-timer-dial-readout small { font-size: 0.56rem; font-weight: 850; letter-spacing: 0.08em; text-transform: uppercase; }
.mhb-timer-controls { display: grid; min-width: 0; gap: 0.85rem; }
.mhb-timer-controls > .mhb-small { margin: 0; }
.mhb-timer-quick { display: flex; align-items: end; flex-wrap: wrap; gap: 0.55rem; }
.mhb-timer-quick-button {
  min-height: 46px;
  padding: 0.65rem 0.9rem;
  color: #fff;
  background: var(--mhb-wine);
  border: 0;
  border-radius: 999px;
  cursor: pointer;
  font: inherit;
  font-weight: 850;
}
.mhb-timer-quick-button:hover,
.mhb-timer-quick-button:focus { background: var(--mhb-wine-dark); }
.mhb-timer-custom { display: flex; align-items: end; gap: 0.7rem; }
.mhb-timer-custom label { flex: 0 0 auto; width: min(100%, 9rem); }
.mhb-timer-custom #mhb-timer-custom-minutes { width: 7rem; padding: 0.48rem 0.6rem; font: 900 1.6rem/1.1 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-variant-numeric: tabular-nums; text-align: center; }
.mhb-timer-custom .mhb-button { flex: 0 0 auto; }
.mhb-timer-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 0.65rem; margin-top: 0.85rem; }
.mhb-timer-empty { grid-column: 1 / -1; margin: 0; color: rgba(44, 33, 28, 0.66); font-size: 0.86rem; }
.mhb-timer-card { display: flex; align-items: center; justify-content: space-between; gap: 0.75rem; min-width: 0; padding: 0.75rem 0.85rem; background: rgba(255, 255, 255, 0.78); border: 1px solid rgba(109, 36, 52, 0.2); border-radius: 13px; }
.mhb-timer-card > div:first-child { display: grid; min-width: 0; gap: 0.1rem; }
.mhb-timer-card strong { overflow: hidden; color: var(--mhb-wine-dark); text-overflow: ellipsis; white-space: nowrap; }
.mhb-timer-countdown { font: 850 1.35rem/1.1 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-variant-numeric: tabular-nums; }
.mhb-timer-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 0.35rem; }
.mhb-timer-actions .mhb-text-button { min-height: 38px; padding: 0.25rem 0.45rem; }
.mhb-timer-card.is-finished { color: #fff; background: var(--mhb-wine); border-color: var(--mhb-wine); box-shadow: 0 0 0 4px rgba(109, 36, 52, 0.15); }
.mhb-timer-card.is-finished strong,
.mhb-timer-card.is-finished .mhb-text-button { color: #fff; }
.mhb-kitchen-timers.is-in-cook-mode { margin: 1rem 0 1.5rem; background: #fff7e8; }
.mhb-service-rail {
  position: fixed;
  z-index: 100005;
  right: max(14px, env(safe-area-inset-right));
  bottom: max(14px, env(safe-area-inset-bottom));
  display: grid;
  grid-template-columns: repeat(6, minmax(72px, 1fr));
  gap: 4px;
  width: min(760px, calc(100vw - 28px));
  padding: 5px;
  background: linear-gradient(135deg, var(--mhb-wine), var(--mhb-wine-dark));
  border: 2px solid #e6c17b;
  border-radius: 18px;
  box-shadow: 0 14px 38px rgba(39, 20, 18, 0.34);
}
.mhb-service-rail-button {
  appearance: none;
  display: grid;
  min-width: 0;
  min-height: 52px;
  align-content: center;
  padding: 0.42rem 0.55rem;
  color: #fff;
  background: transparent;
  border: 0;
  border-radius: 12px;
  cursor: pointer;
  line-height: 1.1;
  text-align: center;
  text-decoration: none;
}
.mhb-service-rail-button:hover,
.mhb-service-rail-button:focus,
.mhb-service-rail-button.is-active { color: var(--mhb-wine-dark); background: #fff6df; outline: none; }
.mhb-service-rail-button small { color: #efd49f; font-size: 0.61rem; font-weight: 900; letter-spacing: 0.08em; text-transform: uppercase; }
.mhb-service-rail-button:hover small,
.mhb-service-rail-button:focus small,
.mhb-service-rail-button.is-active small { color: #86562a; }
.mhb-service-rail-button strong { overflow: hidden; font-size: 0.86rem; font-weight: 850; text-overflow: ellipsis; white-space: nowrap; }
.mhb-help-launcher {
  position: fixed;
  z-index: 100006;
  right: max(16px, env(safe-area-inset-right));
  bottom: max(16px, env(safe-area-inset-bottom));
  display: flex;
  align-items: center;
  gap: 0.42rem;
  min-height: 48px;
  padding: 0.45rem 0.85rem 0.45rem 0.55rem;
  color: #fff;
  background: var(--mhb-wine-dark);
  border: 2px solid #e6c17b;
  border-radius: 999px;
  box-shadow: 0 12px 30px rgba(39,20,18,.3);
  cursor: pointer;
  font: inherit;
}
.mhb-has-service-rail .mhb-help-launcher { bottom: calc(max(14px, env(safe-area-inset-bottom)) + 88px); }
.mhb-has-service-rail { padding-bottom: calc(160px + env(safe-area-inset-bottom)) !important; }
.mhb-timer-utility { position:fixed; z-index:100007; right:calc(max(16px,env(safe-area-inset-right)) + 118px); bottom:calc(max(14px,env(safe-area-inset-bottom)) + 104px); display:grid; min-width:92px; min-height:48px; align-content:center; padding:.45rem .75rem; color:#fff; background:var(--mhb-wine-dark); border:2px solid #e6c17b; border-radius:999px; box-shadow:0 12px 30px rgba(39,20,18,.3); cursor:pointer; font:inherit; text-align:center; text-decoration:none; }
.mhb-timer-utility small { color:#efd49f; font-size:.6rem; font-weight:900; letter-spacing:.07em; text-transform:uppercase; }
.mhb-timer-utility:hover,.mhb-timer-utility:focus { background:var(--mhb-wine); outline:3px solid rgba(230,193,123,.45); outline-offset:2px; }
.mhb-conversation-timer { display:none; }
.mhb-help-launcher > span { display: grid; width: 30px; height: 30px; place-items: center; color: var(--mhb-wine-dark); background: #fff6df; border-radius: 50%; font-weight: 950; }
.mhb-help-launcher:hover,
.mhb-help-launcher:focus { outline: 3px solid rgba(230,193,123,.45); outline-offset: 2px; }
.mhb-help-drawer[hidden] { display: none; }
.mhb-help-drawer { position: fixed; z-index: 100030; inset: 0; display: grid; justify-items: end; padding: 14px; background: rgba(18,12,10,.58); backdrop-filter: blur(4px); }
.mhb-help-card { display: grid; grid-template-rows: auto minmax(130px,1fr) auto auto; width: min(520px,100%); max-height: calc(100dvh - 28px); box-sizing: border-box; overflow: hidden; padding: 1.15rem; color: #34241e; background: #fffaf0; border: 2px solid #d2ad6d; border-radius: 22px; box-shadow: 0 22px 60px rgba(0,0,0,.38); }
.mhb-help-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; padding-bottom: .8rem; border-bottom: 1px solid #ddccb0; }
.mhb-help-header p,
.mhb-help-header h2 { margin: 0; }
.mhb-help-header h2 { color: var(--mhb-wine-dark); font: 700 2rem/1 Georgia,"Times New Roman",serif; }
.mhb-help-header-actions { display: flex; align-items: center; flex-wrap: wrap; gap: .35rem .7rem; margin-top: .45rem; }
.mhb-help-tour-launch,
.mhb-help-report-launch,
.mhb-help-new-conversation { margin-top: .45rem; padding: 0; color: var(--mhb-wine-dark); background: transparent; border: 0; border-bottom: 1px solid currentColor; cursor: pointer; font: inherit; font-size: .76rem; font-weight: 800; }
.mhb-help-header-actions .mhb-help-tour-launch,
.mhb-help-header-actions .mhb-help-report-launch,
.mhb-help-header-actions .mhb-help-new-conversation { margin-top: 0; }
.mhb-help-tour-launch:hover,
.mhb-help-tour-launch:focus,
.mhb-help-report-launch:hover,
.mhb-help-report-launch:focus,
.mhb-help-new-conversation:hover,
.mhb-help-new-conversation:focus { color: var(--mhb-wine); outline: 2px solid rgba(123,35,59,.18); outline-offset: 3px; }
.mhb-help-tour-launch:disabled,
.mhb-help-report-launch:disabled,
.mhb-help-new-conversation:disabled { cursor: wait; opacity: .55; }
.mhb-help-close { flex: none; width: 40px; height: 40px; color: #fff; background: var(--mhb-wine); border: 0; border-radius: 50%; cursor: pointer; font-size: 1.55rem; line-height: 1; }
.mhb-help-tour { overflow-y: auto; display: grid; align-content: start; gap: .9rem; padding: 1rem .1rem .35rem; }
.mhb-help-tour-progress { display: grid; gap: .35rem; color: #6b5044; font-size: .76rem; font-weight: 850; }
.mhb-help-tour-progress progress { overflow: hidden; width: 100%; height: .6rem; accent-color: var(--mhb-wine); border: 0; border-radius: 999px; }
.mhb-help-tour-copy { padding: 1rem; background: #f1e6d4; border-radius: 16px; }
.mhb-help-tour-copy .mhb-eyebrow { margin: 0 0 .35rem; }
.mhb-help-tour-copy h3 { margin: 0 0 .65rem; color: var(--mhb-wine-dark); font: 700 clamp(1.45rem,5vw,2rem)/1.05 Georgia,"Times New Roman",serif; }
.mhb-help-tour-copy > p:last-of-type { margin: 0; font-size: .98rem; line-height: 1.5; }
.mhb-help-tour-destinations { display: grid; grid-template-columns: 1fr 1fr; gap: .55rem; }
.mhb-help-tour-destinations .mhb-secondary-button { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; box-sizing: border-box; text-align: center; text-decoration: none; }
.mhb-help-tour-destinations [aria-disabled="true"] { pointer-events: none; opacity: .55; }
.mhb-help-tour-actions { display: grid; grid-template-columns: auto auto minmax(150px,1fr); align-items: center; gap: .55rem; padding-top: .8rem; border-top: 1px solid #ddccb0; }
.mhb-help-tour-actions .mhb-text-button { padding: .45rem .2rem; color: var(--mhb-wine-dark); background: transparent; border: 0; text-decoration: underline; cursor: pointer; font: inherit; font-size: .8rem; font-weight: 800; }
.mhb-help-tour-actions .mhb-text-button:disabled { cursor: default; opacity: .35; }
.mhb-help-tour-actions .mhb-button { min-height: 46px; }
.mhb-help-history { overflow-y: auto; display: grid; align-content: start; gap: .7rem; padding: .9rem .1rem; }
.mhb-help-tour[hidden],
.mhb-help-report[hidden],
.mhb-help-history[hidden] { display: none !important; }
.mhb-help-report { overflow-y: auto; display: grid; align-content: start; gap: .9rem; padding: 1rem .1rem .35rem; }
.mhb-help-report h3 { margin: 0 0 .5rem; color: var(--mhb-wine-dark); font: 700 1.55rem/1.08 Georgia,"Times New Roman",serif; }
.mhb-help-report p { margin: 0; line-height: 1.5; }
.mhb-help-report-form { display: grid; gap: .75rem; }
.mhb-help-report-form > label:not(.mhb-file-button) { display: grid; gap: .3rem; font-size: .82rem; font-weight: 800; }
.mhb-help-report-form textarea { box-sizing: border-box; width: 100%; padding: .65rem .75rem; resize: vertical; color: #34241e; background: #fff; border: 1px solid #bda57f; border-radius: 10px; font: inherit; font-weight: 400; }
.mhb-help-report-actions { display: grid; grid-template-columns: auto minmax(180px,1fr); gap: .55rem; }
.mhb-help-report-actions button { min-height: 46px; }
.mhb-help-report-confirmation[hidden] { display: none !important; }
.mhb-help-report-confirmation { align-self: center; display: grid; justify-items: center; gap: .65rem; padding: clamp(1.25rem,5vw,2rem); text-align: center; background: #f1e6d4; border: 1px solid #cfb487; border-radius: 18px; }
.mhb-help-report-confirmation-mark { display: grid; width: 58px; height: 58px; place-items: center; color: #fff; background: #2f704c; border-radius: 50%; font-size: 2rem; font-weight: 900; }
.mhb-help-report-confirmation h3,
.mhb-help-report-confirmation p { margin: 0; }
.mhb-help-report-confirmation .mhb-button { width: 100%; min-height: 48px; margin-top: .35rem; }
.mhb-help-message { max-width: 92%; padding: .72rem .82rem; border-radius: 14px; }
.mhb-help-message strong { display: block; margin-bottom: .2rem; font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; }
.mhb-help-message p { margin: 0; white-space: pre-wrap; }
.mhb-help-message.is-help { justify-self: start; background: #f1e6d4; }
.mhb-help-message.is-member { justify-self: end; color: #fff; background: var(--mhb-wine); }
.mhb-help-listen { margin-top: .55rem; padding: .38rem .62rem; color: var(--mhb-wine-dark); background: #fffaf0; border: 1px solid #c6a878; border-radius: 999px; cursor: pointer; font: inherit; font-size: .78rem; font-weight: 800; }
.mhb-help-listen:hover,
.mhb-help-listen:focus { background: #fff; outline: 2px solid rgba(123,35,59,.22); outline-offset: 2px; }
.mhb-help-listen:disabled { cursor: wait; opacity: .72; }
.mhb-help-compose-toggle { min-height: 46px; margin-top: .5rem; padding: .55rem 1rem; color: #fff; background: var(--mhb-wine); border: 0; border-radius: 999px; cursor: pointer; font: inherit; font-weight: 850; }
.mhb-help-compose-toggle:hover,
.mhb-help-compose-toggle:focus { background: var(--mhb-wine-dark); outline: 3px solid rgba(230,193,123,.45); outline-offset: 2px; }
.mhb-help-composer { display: grid; }
.mhb-help-compose-toggle[hidden],
.mhb-help-composer[hidden] { display: none !important; }
.mhb-help-card.is-reading .mhb-help-history { padding-bottom: .35rem; }
.mhb-help-suggestions { display: flex; flex-wrap: wrap; gap: .45rem; padding: 0 0 .8rem; }
.mhb-help-suggestions[hidden] { display: none; }
.mhb-help-suggestions button { min-height: 38px; padding: .4rem .65rem; color: var(--mhb-wine-dark); background: #fff; border: 1px solid #c9aa7a; border-radius: 999px; cursor: pointer; font: inherit; font-size: .82rem; font-weight: 750; }
.mhb-help-voice-tools { display: grid; gap: .35rem; padding: 0 0 .75rem; }
.mhb-help-voice-actions { display: flex; align-items: center; flex-wrap: wrap; gap: .55rem .8rem; }
.mhb-help-voice-tools .mhb-secondary-button { flex: none; min-height: 42px; padding: .48rem .72rem; }
.mhb-help-voice-tools .mhb-small { margin: 0; }
.mhb-help-auto-voice { display: inline-flex; align-items: center; gap: .38rem; min-height: 42px; padding: .35rem .65rem; color: var(--mhb-wine-dark); background: #fff; border: 1px solid #c9aa7a; border-radius: 999px; cursor: pointer; font-size: .82rem; font-weight: 800; }
.mhb-help-auto-voice input { width: 1.05rem; height: 1.05rem; margin: 0; accent-color: var(--mhb-wine); }
.mhb-help-form { display: grid; gap: .35rem; padding-top: .8rem; border-top: 1px solid #ddccb0; }
.mhb-help-form > label { font-size: .8rem; font-weight: 800; }
.mhb-help-form > div { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: end; gap: .55rem; }
.mhb-help-form textarea { box-sizing: border-box; width: 100%; min-height: 62px; padding: .65rem .75rem; resize: vertical; background: #fff; border: 1px solid #bda57f; border-radius: 10px; color: #34241e; font: inherit; }
.mhb-help-form .mhb-button { min-height: 46px; }
.mhb-help-form .mhb-button.is-loading::before,
.mhb-help-report-form .mhb-button.is-loading::before { content: ""; display: inline-block; width: .9em; height: .9em; margin-right: .4em; vertical-align: -.1em; border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%; animation: mhb-help-spin .7s linear infinite; }
.mhb-help-state { min-height: 1.2em; margin: .45rem 0 0; font-size: .8rem; }
.mhb-help-state.is-error { color: #8b2435; font-weight: 750; }
.mhb-help-open { overflow: hidden; }
@keyframes mhb-help-spin { to { transform: rotate(360deg); } }
.mhb-timer-floater strong { display: grid; gap: 1px; text-overflow: clip; white-space: normal; }
.mhb-timer-rail-line { display: flex; align-items: baseline; justify-content: center; gap: 3px; min-width: 0; }
.mhb-timer-rail-name { overflow: hidden; min-width: 0; text-overflow: ellipsis; white-space: nowrap; }
.mhb-timer-rail-time { flex: none; font-variant-numeric: tabular-nums; }
.mhb-timer-rail-more { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mhb-timer-floater.is-finished { color: #4d1722; background: #ffd979; box-shadow: inset 0 0 0 2px #7d2839; }
.mhb-timer-floater.is-finished small { color: #4d1722; }
.mhb-timer-drawer[hidden] { display:none; }
.mhb-timer-drawer { position:fixed; z-index:100010; inset:0; display:grid; align-items:end; padding:18px; background:rgba(18,12,10,.56); }
.mhb-timer-drawer-card { position:relative; overflow:auto; max-height:min(84vh,760px); padding:48px 12px 12px; background:#fffaf0; border:2px solid #d2ad6d; border-radius:22px 22px 12px 12px; box-shadow:0 22px 55px rgba(0,0,0,.35); }
.mhb-timer-drawer-close { position:absolute; z-index:2; top:10px; right:12px; width:38px; height:38px; color:#fff; background:var(--mhb-wine); border:0; border-radius:50%; cursor:pointer; font-size:1.5rem; line-height:1; }
.mhb-timer-drawer .mhb-kitchen-timers { margin:0; }
#mhb-app > .mhb-kitchen-timers { display:none; }
.mhb-timer-drawer .mhb-kitchen-timers,
.mhb-cook-mode .mhb-kitchen-timers { display:block; }

.mhb-cook-mode[hidden] { display: none; }
.mhb-staff-session-dialog[hidden] { display: none; }
.mhb-staff-session-dialog {
  position: fixed;
  z-index: 100040;
  inset: 0;
  display: grid;
  place-items: center;
  overflow-y: auto;
  padding: 16px;
  background: rgba(23, 13, 11, 0.78);
  backdrop-filter: blur(6px);
}
body.mhb-staff-session-open { overflow: hidden; }
.mhb-staff-session-card {
  box-sizing: border-box;
  width: min(560px, 100%);
  padding: clamp(1.3rem, 5vw, 2.4rem);
  color: #302019;
  background: linear-gradient(145deg, #fffdf7, #f4e5cc);
  border: 2px solid #c69c57;
  border-radius: 24px;
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.42);
}
.mhb-staff-session-card h2 { margin: .25rem 0 .65rem; color: var(--mhb-wine-dark); font: 700 clamp(1.7rem, 6vw, 2.5rem)/1.08 Georgia, "Times New Roman", serif; }
.mhb-staff-session-note { min-height: 3em; margin: 1rem 0; padding: .8rem 1rem; background: #fff9ed; border: 1px solid #d5ba8b; border-radius: 12px; font-weight: 750; }
.mhb-staff-session-error { margin:.7rem 0; color:#8b1d2c; font-weight:800; }
.mhb-staff-session-actions { display: grid; gap: .7rem; }
.mhb-staff-session-actions button { width: 100%; min-height: 52px; justify-content: center; }
.mhb-staff-session-actions .mhb-text-button { padding: .7rem; }
.mhb-conversation-room { container-type:inline-size; display:flex; flex-direction:column; box-sizing:border-box; width:100%; height:min(76dvh,760px); min-height:520px; margin:1rem 0; overflow:hidden; background:rgba(255,252,245,.97); border:2px solid rgba(109,36,52,.28); border-radius:20px; box-shadow:0 16px 38px rgba(49,28,22,.14); }
.mhb-conversation-room[hidden] { display:none!important; }
.mhb-conversation-room-toolbar { display:flex; flex:none; align-items:center; justify-content:space-between; gap:.8rem; padding:.7rem .85rem; background:#f4e5c7; border-bottom:1px solid rgba(109,36,52,.2); }
.mhb-conversation-room-toolbar > div:first-child { display:grid; gap:.08rem; min-width:0; }
.mhb-conversation-room-kicker { color:#78584b; font-size:.67rem; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.mhb-conversation-room-toolbar strong { overflow:hidden; color:#4e1724; font-family:Georgia,"Times New Roman",serif; font-size:1rem; text-overflow:ellipsis; white-space:nowrap; }
.mhb-conversation-room-toolbar [data-mhb-room-meta] { overflow:hidden; color:rgba(44,33,28,.7); font-size:.76rem; text-overflow:ellipsis; white-space:nowrap; }
.mhb-conversation-room-actions { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:.4rem; }
.mhb-conversation-room-actions button { min-height:38px; padding:.42rem .65rem; font-size:.74rem; }
.mhb-conversation-room-actions button[hidden] { display:none!important; }
.mhb-conversation-room-history { flex:1 1 auto!important; min-height:0!important; max-height:none!important; margin:0!important; overflow-y:auto!important; overscroll-behavior:contain; padding:1rem!important; scroll-behavior:smooth; background:transparent!important; border:0!important; border-radius:0!important; box-shadow:none!important; }
.mhb-playback-dock { flex:none; display:grid; grid-template-columns:minmax(0,1fr) auto auto auto; align-items:center; gap:.4rem; padding:.48rem .7rem; color:#4e1724; background:#f5dfb8; border-top:1px solid rgba(109,36,52,.2); border-bottom:1px solid rgba(109,36,52,.16); box-shadow:0 -5px 18px rgba(49,28,22,.08); }
.mhb-playback-dock[hidden] { display:none!important; }
.mhb-playback-dock strong { overflow:hidden; font-size:.78rem; text-overflow:ellipsis; white-space:nowrap; }
.mhb-playback-dock button { width:auto!important; min-height:36px!important; padding:.35rem .62rem!important; font-size:.72rem!important; }
.mhb-chat-form > .mhb-playback-dock { margin:-.35rem 0 0; border:1px solid rgba(109,36,52,.2); border-radius:13px; box-shadow:0 5px 15px rgba(49,28,22,.08); }
.mhb-conversation-room-earlier { display:none!important; }
.mhb-conversation-room.is-history-open .mhb-conversation-room-history { scroll-behavior:auto; }
.mhb-conversation-room > .mhb-live-line,
.mhb-conversation-room > .mhb-chat-form,
.mhb-conversation-room > .mhb-help-composer,
.mhb-conversation-room > .mhb-help-compose-toggle,
.mhb-conversation-room > .mhb-help-state,
.mhb-conversation-room > .mhb-coupon-lady-working { flex:none; margin:.45rem .7rem; }
.mhb-conversation-room > .mhb-chat-form { max-height:none; overflow:visible; }
.mhb-conversation-room .mhb-pastry-finish-bottom { display:none; }
.mhb-help-card > .mhb-conversation-room { height:auto; min-height:0; margin:.75rem 0 0; background:transparent; border:0; border-radius:0; box-shadow:none; }
.mhb-help-card > .mhb-conversation-room .mhb-conversation-room-toolbar { padding:.55rem .65rem; }
.mhb-help-card > .mhb-conversation-room .mhb-conversation-room-actions button { min-height:34px; }
.mhb-conversation-room > .mhb-coupon-lady-form,
.mhb-conversation-room > .mhb-coupon-lady-state { flex:none; margin:.45rem .7rem; }
.mhb-conversation-room.is-coupon-room { height:auto; min-height:0; overflow:visible; }
.mhb-conversation-room.is-coupon-room > .mhb-conversation-room-history { flex:none!important; overflow:visible!important; }
body.mhb-conversation-room-active .mhb-conversation-room.is-coupon-room { position:fixed; z-index:100004; top:calc(var(--mhb-visible-top,0px) + max(10px,env(safe-area-inset-top))); left:var(--mhb-visible-center,50%); box-sizing:border-box; width:min(920px,calc(var(--mhb-visible-width,100vw) - 20px)); height:calc(var(--mhb-visible-height,100dvh) - 102px); min-height:0; margin:0; overflow:hidden; transform:translateX(-50%); }
body.mhb-conversation-room-active.mhb-hands-free-active .mhb-conversation-room.is-coupon-room { height:calc(var(--mhb-visible-height,100dvh) - 244px); }
body.mhb-conversation-room-active .mhb-conversation-room.is-coupon-room > .mhb-conversation-room-history { flex:1 1 auto!important; overflow-y:auto!important; }
body.mhb-conversation-room-active .mhb-conversation-room.is-coupon-room > .mhb-coupon-lady-form { display:grid; gap:.4rem; margin:0!important; padding:.5rem .65rem; background:rgba(255,252,245,.98); border-top:1px solid rgba(109,36,52,.2); }
body.mhb-conversation-room-active .mhb-conversation-room.is-coupon-room > .mhb-coupon-lady-form > label { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
body.mhb-conversation-room-active .mhb-conversation-room.is-coupon-room #mhb-coupon-lady-message { min-height:52px; max-height:88px; padding:.55rem .65rem; resize:vertical; }
body.mhb-conversation-room-active .mhb-conversation-room.is-coupon-room .mhb-message-actions { grid-template-columns:1fr 1fr; gap:.4rem; }
body.mhb-conversation-room-active .mhb-conversation-room.is-coupon-room .mhb-message-actions .mhb-dictate-launch,
body.mhb-conversation-room-active .mhb-conversation-room.is-coupon-room .mhb-message-actions .mhb-button { min-height:42px; padding:.42rem .55rem; }
body.mhb-conversation-room-active .mhb-conversation-room.is-coupon-room .mhb-message-actions .mhb-message-autoplay { grid-column:1/-1; min-height:32px; padding:.25rem .4rem; }
body.mhb-conversation-room-active.mhb-hands-free-active .mhb-conversation-room.is-coupon-room > .mhb-coupon-lady-form,
body.mhb-conversation-room-active.mhb-hands-free-active .mhb-conversation-room.is-coupon-room > .mhb-coupon-lady-state { display:none; }
.mhb-conversation-noise { display:flex; flex:none; align-items:center; justify-content:space-between; gap:.7rem; margin:.55rem .7rem 0; padding:.65rem .75rem; color:#4e372a; background:#fff2c9; border:1px solid #d5a94e; border-radius:12px; }
.mhb-conversation-noise[hidden] { display:none!important; }
.mhb-conversation-noise > div:first-child { display:grid; gap:.12rem; }
.mhb-conversation-noise span { font-size:.77rem; }
.mhb-conversation-noise-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:.35rem; }
.mhb-conversation-noise-actions button { min-height:36px; padding:.35rem .55rem; font-size:.7rem; }
html.mhb-conversation-room-active,
body.mhb-conversation-room-active { overflow:hidden!important; overscroll-behavior:none; }
body.mhb-conversation-room-active::before { content:""; position:fixed; z-index:100003; inset:0; background:rgba(24,13,11,.68); backdrop-filter:blur(3px); }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room { position:fixed; z-index:100004; top:calc(var(--mhb-visible-top,0px) + max(10px,env(safe-area-inset-top))); right:auto; bottom:auto; left:var(--mhb-visible-center,50%); width:min(920px,calc(var(--mhb-visible-width,100vw) - 20px)); height:calc(var(--mhb-visible-height,100dvh) - 102px); min-height:0; margin:0; transform:translateX(-50%); }
body.mhb-conversation-room-active.mhb-hands-free-active #mhb-app .mhb-conversation-room { height:calc(var(--mhb-visible-height,100dvh) - 244px); }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form { gap:.55rem; margin:0!important; padding:.65rem .75rem!important; overflow:visible!important; background:rgba(255,252,245,.98)!important; border:0!important; border-top:1px solid rgba(109,36,52,.2)!important; border-radius:0!important; box-shadow:none!important; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form > .mhb-composer-label { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form #mhb-message { min-height:54px; max-height:112px; padding:.65rem .75rem; resize:vertical; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-composer-entry .mhb-button { min-width:128px; min-height:54px; padding:.55rem .8rem; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-composer-tools { min-height:38px; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-message-autoplay { min-height:38px; margin-left:auto; padding:.35rem .55rem; background:transparent; border:0; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-add-to-conversation { position:static; background:transparent; border:0; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-add-to-conversation > summary { list-style:none; color:#5c1d30; background:#fff8ec; border:1px solid rgba(109,36,52,.28); border-radius:999px; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-add-to-conversation > summary::-webkit-details-marker { display:none; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-add-to-conversation[open] > .mhb-attachments { position:absolute; z-index:4; right:.75rem; bottom:calc(100% - 4px); left:.75rem; margin:0; padding:.7rem; background:#fffaf0; border:1px solid #c99c70; border-radius:13px; box-shadow:0 12px 28px rgba(49,28,22,.25); }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form > .mhb-form-row { display:none!important; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room .mhb-pastry-finish-bottom { display:none!important; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > .mhb-live-line:not(.is-floating-live) { gap:.45rem; margin:0!important; padding:.4rem .75rem; background:rgba(244,229,199,.5)!important; border:0!important; border-top:1px solid rgba(109,36,52,.16)!important; border-radius:0!important; box-shadow:none!important; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > .mhb-live-line:not(.is-floating-live) .mhb-live-button { min-height:38px; padding:.4rem .7rem; font-size:.78rem; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > .mhb-live-line:not(.is-floating-live) .mhb-live-state { overflow:hidden; font-size:.76rem; text-overflow:ellipsis; white-space:nowrap; }
body.mhb-conversation-room-active .mhb-help-launcher { display:none!important; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-timer { display:inline-flex; align-items:center; justify-content:center; }
body.mhb-conversation-room-active #mhb-app > .mhb-timer-floater { display:none!important; }
body.mhb-conversation-room-active #mhb-app .mhb-composer-file-state { min-height:0; margin:0; color:#245834; font-weight:800; }
body.mhb-conversation-room-active #mhb-app .mhb-composer-file-tray { display:flex; gap:.45rem; max-height:68px; overflow-x:auto; overflow-y:hidden; padding:.1rem 0; }
body.mhb-conversation-room-active #mhb-app .mhb-composer-file-tray:empty { display:none; }
body.mhb-conversation-room-active #mhb-app .mhb-composer-file-tray .mhb-file-card { display:grid; flex:0 0 150px; grid-template-columns:46px minmax(0,1fr); align-items:center; min-height:52px; padding:4px; }
body.mhb-conversation-room-active #mhb-app .mhb-composer-file-tray .mhb-file-card img { width:46px; height:46px; aspect-ratio:auto; }
body.mhb-conversation-room-active #mhb-app .mhb-composer-file-tray .mhb-file-card span { padding:3px 22px 3px 6px; }
@media (max-width:900px) {
	.mhb-conversation-room { min-height:0; border-radius:14px; }
	.mhb-conversation-room-toolbar { align-items:flex-start; flex-direction:column; gap:.35rem; padding:.45rem .58rem; }
	.mhb-conversation-room-kicker { display:none; }
	.mhb-conversation-room-toolbar strong { font-size:.9rem; }
	.mhb-conversation-room-actions { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); width:100%; gap:.25rem; }
	.mhb-conversation-room-actions button { padding:.36rem .25rem; font-size:.66rem; }
	.mhb-conversation-room-history { padding:.62rem!important; }
	.mhb-conversation-room > .mhb-chat-form { max-height:none; margin:0; overflow:visible; }
	.mhb-conversation-room > .mhb-live-line { margin:.35rem; }
	.mhb-composer-entry { grid-template-columns:minmax(0,1fr) 92px; }
	.mhb-composer-entry .mhb-button { min-width:0!important; padding:.45rem!important; }
	body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-message-autoplay { margin-left:0; }
	body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form { gap:.35rem; padding:.42rem .52rem!important; }
	body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form #mhb-message { min-height:44px; max-height:84px; padding:.48rem .58rem; }
	body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-composer-entry .mhb-button { min-height:44px; }
	body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-composer-tools { flex-wrap:wrap; min-height:34px; overflow-x:visible; }
	body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-composer-tools > * { flex:0 1 auto; min-width:0; white-space:normal; }
	body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-composer-tools .mhb-dictation { display:contents; }
	body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form #mhb-dictate-state { order:20; flex:1 0 100%; min-width:0; overflow-wrap:anywhere; white-space:normal; }
	body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > .mhb-live-line:not(.is-floating-live) { padding:.3rem .52rem; }
	body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > .mhb-live-line:not(.is-floating-live) .mhb-live-button { min-height:34px; padding:.32rem .55rem; }
	.mhb-playback-dock { grid-template-columns:minmax(0,1fr) auto auto auto; padding:.38rem .5rem; }
	.mhb-playback-dock button { min-height:32px!important; padding:.28rem .45rem!important; font-size:.66rem!important; }
	.mhb-conversation-noise { align-items:stretch; flex-direction:column; }
	.mhb-conversation-noise-actions { display:grid; grid-template-columns:1fr 1fr; }
}

@media (hover:none), (max-width:900px) {
	body.mhb-composer-focused .mhb-service-rail,
	body.mhb-composer-focused .mhb-help-launcher,
	body.mhb-composer-focused .mhb-staff-finish-floater,
	body.mhb-composer-focused .mhb-timer-floater { display:none!important; }
	body.mhb-conversation-room-active.mhb-composer-focused #mhb-app .mhb-conversation-room { height:calc(var(--mhb-visible-height,100dvh) - 20px); }
}

/* Reflow the focused room inside the visual viewport when a cook pinch-zooms. */
@container (max-width: 320px) {
	.mhb-conversation-room-toolbar strong,
	.mhb-conversation-room-toolbar [data-mhb-room-meta] { overflow:visible; text-overflow:clip; white-space:normal; }
	.mhb-conversation-room-actions { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.mhb-conversation-room-actions button { min-width:0; overflow-wrap:anywhere; white-space:normal; }
	.mhb-conversation-room-history { padding:.45rem!important; }
	.mhb-message { box-sizing:border-box; max-width:100%; padding:.72rem; }
	.mhb-message-body { min-width:0; overflow-wrap:anywhere; }
	.mhb-message-body pre,
	.mhb-message-body code { white-space:pre-wrap; overflow-wrap:anywhere; }
	.mhb-composer-entry { grid-template-columns:1fr; }
	body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-composer-entry .mhb-button { width:100%; }
	body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-composer-tools { flex-wrap:wrap; overflow-x:visible; }
}
@container (max-width: 220px) {
	.mhb-conversation-room-actions { grid-template-columns:1fr; }
}
.mhb-cook-mode {
  position: fixed;
  z-index: 100050;
  inset: 0;
  display: grid;
  place-items: start center;
  overflow-y: auto;
  padding: clamp(0.65rem, 2vw, 1.5rem);
  background: rgba(23, 13, 11, 0.84);
  backdrop-filter: blur(7px);
}
body.mhb-cook-mode-open { overflow: hidden; }
.mhb-cook-mode-card {
  position: relative;
  width: min(900px, 100%);
  min-height: calc(100dvh - clamp(1.3rem, 4vw, 3rem));
  padding: clamp(1.4rem, 5vw, 3.5rem);
  color: #271b16;
  background: linear-gradient(145deg, #fffdf6, #f6ead5);
  border: 2px solid #c69c57;
  border-radius: clamp(16px, 3vw, 28px);
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.42);
}
.mhb-cook-mode-close {
  position: sticky;
  z-index: 2;
  top: 0;
  float: right;
  width: 52px;
  height: 52px;
  color: #fff;
  background: #6d2434;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  font: 400 2rem/1 Arial, sans-serif;
}
.mhb-cook-mode-timer {
  position: sticky;
  z-index: 2;
  top: 5px;
  float: right;
  min-height: 46px;
  margin: 3px 0.75rem 0 0;
  padding: 0.55rem 0.85rem;
  color: var(--mhb-wine-dark);
  background: #fff8ec;
  border: 1px solid rgba(109, 36, 52, 0.35);
  border-radius: 999px;
  cursor: pointer;
  font: inherit;
  font-weight: 850;
}
.mhb-cook-mode-timer:hover,
.mhb-cook-mode-timer:focus { background: #f4dfb9; }
.mhb-cook-mode-card > h2 { margin: 0.1rem 4rem 1.5rem 0; color: var(--mhb-wine-dark); font: 700 clamp(2.2rem, 7vw, 4.5rem)/1 Georgia, "Times New Roman", serif; }
.mhb-cook-mode-content { max-width: 760px; font-size: clamp(1.12rem, 2.8vw, 1.5rem); line-height: 1.55; }
.mhb-cook-mode-content h3 { margin: 1.7em 0 0.55em; color: var(--mhb-wine); font: 700 clamp(1.55rem, 4vw, 2.35rem)/1.1 Georgia, "Times New Roman", serif; }
.mhb-cook-mode-content h4 { margin: 1.5em 0 0.45em; color: var(--mhb-wine); font-size: 1.2em; }
.mhb-cook-mode-content p { margin: 0.65em 0; }
.mhb-cook-mode-content ul,
.mhb-cook-mode-content ol { margin: 0.5em 0 1em; padding-left: 1.35em; }
.mhb-cook-mode-content li { margin: 0.55em 0; padding-left: 0.25em; }
.mhb-recipe-share-tools { display:grid; gap:.75rem; margin:0 0 1.35rem; padding:1rem; color:#3f2c25; background:#f4e5c9; border:1px solid #c79d60; border-radius:14px; font-size:1rem; line-height:1.35; }
.mhb-recipe-share-tools > div:first-child { display:grid; gap:.2rem; }
.mhb-recipe-share-tools strong { color:var(--mhb-wine-dark); font-size:1.08rem; }
.mhb-recipe-share-tools small { color:#695247; }
.mhb-recipe-share-actions { display:flex; flex-wrap:wrap; gap:.55rem; }
.mhb-recipe-share-tools [data-recipe-share-state] { color:#31583b; font-size:.84rem; font-weight:800; margin:0; min-height:1.2em; }
.mhb-recipe-share-tools [data-recipe-share-state].is-error { color:#98293a; }
.mhb-opened-recipe { min-width:0; }
.mhb-cook-mode-loading { display: flex; align-items: center; gap: 0.8rem; min-height: 40vh; justify-content: center; }
.mhb-recipe-card-maker { display:grid; grid-template-columns:140px minmax(0,1fr); align-items:center; gap:clamp(1.25rem,4vw,2.5rem); min-height:40vh; padding:1.5rem; color:#4e1724; background:radial-gradient(circle at 15% 30%,#fffdf6,#f4e2c2); border:1px solid #d4b47e; border-radius:22px; }
.mhb-recipe-card-maker strong { display:block; font:700 clamp(1.45rem,4vw,2.25rem)/1.1 Georgia,"Times New Roman",serif; }
.mhb-recipe-card-maker p { max-width:34rem; margin:.65rem 0 0; color:#5e4b41; font-size:clamp(.94rem,2.2vw,1.08rem); }
.mhb-recipe-card-animation { position:relative; width:132px; height:150px; }
.mhb-recipe-paper { position:absolute; z-index:2; top:0; left:28px; display:grid; gap:8px; box-sizing:border-box; width:78px; height:100px; padding:25px 13px 12px; background:#fffdf7; border:2px solid #b88d4f; border-radius:7px; box-shadow:0 8px 18px rgba(70,35,24,.18); animation:mhb-file-recipe-card 1.8s ease-in-out infinite; }
.mhb-recipe-paper::before { content:"RECIPE"; position:absolute; top:9px; left:0; right:0; color:#6d2434; font:800 10px/1 Georgia,"Times New Roman",serif; letter-spacing:.08em; text-align:center; }
.mhb-recipe-paper i { display:block; height:4px; background:#d8c5a6; border-radius:999px; }
.mhb-recipe-paper i:last-child { width:68%; }
.mhb-recipe-box { position:absolute; z-index:3; left:0; bottom:0; display:flex; align-items:center; justify-content:center; box-sizing:border-box; width:132px; height:60px; padding-top:10px; color:#fff8e9; background:linear-gradient(#8a3a4d,#5c1e2d); border:3px solid #c99e57; border-radius:9px 9px 15px 15px; box-shadow:0 10px 18px rgba(70,35,24,.22); font:800 11px/1.1 Georgia,"Times New Roman",serif; letter-spacing:.06em; }
.mhb-voice-button.is-making-card { display:inline-flex; align-items:center; gap:.45rem; cursor:wait; opacity:1; }
.mhb-voice-button.is-making-card .mhb-spinner { flex:0 0 16px; width:16px; height:16px; border-width:2px; border-color:rgba(255,255,255,.42); border-top-color:#fff; }
@keyframes mhb-file-recipe-card { 0% { transform:translateY(0) rotate(-2deg); opacity:.35; } 35% { opacity:1; } 70%,100% { transform:translateY(60px) rotate(1deg); opacity:1; } }
@media (prefers-reduced-motion:reduce) { .mhb-recipe-paper { animation:none; transform:translateY(38px); opacity:1; } }
@media (max-width:560px) { .mhb-recipe-card-maker { grid-template-columns:1fr; justify-items:center; text-align:center; } }
.mhb-cook-mode-error { color: #98293a; font-weight: 750; }
.mhb-voice-button.is-cook-mode { color: #fff; background: var(--mhb-wine); border-color: var(--mhb-wine); }

.mhb-cookbook { display: grid; gap: 0.85rem; }
.mhb-cookbook-search { display: grid; gap: 0.35rem; max-width: 48rem; margin: 0 0 1rem; color: var(--mhb-wine-dark); font-weight: 850; }
.mhb-cookbook-search-row { display: flex; align-items: stretch; gap: 0.55rem; }
.mhb-cookbook-search input { width: 100%; min-height: 52px; padding: 0.75rem 1rem; border: 1px solid #c9aa7f; border-radius: 14px; background: #fffdf7; font: inherit; font-size: 1.05rem; }
.mhb-cookbook-search-row .mhb-button { align-items: center; display: inline-flex; flex: 0 0 auto; gap: 0.5rem; justify-content: center; min-height: 52px; white-space: nowrap; }
.mhb-cookbook-search-row .mhb-button .mhb-spinner { border-color: rgba(255,255,255,.38); border-top-color: #fff; flex: 0 0 18px; height: 18px; width: 18px; }
.mhb-cookbook-search small { min-height: 1.2em; color: #73635a; font-weight: 650; }
.mhb-cookbook-smart-loading { align-items: center; display: flex; gap: 0.9rem; min-height: 8rem; padding: 1.25rem; color: #4f3f37; background: linear-gradient(135deg,#fffdf7,#f6ead5); border: 1px solid #d6bd94; border-radius: 16px; }
.mhb-cookbook-smart-loading .mhb-spinner { flex: 0 0 28px; height: 28px; width: 28px; }
.mhb-cookbook-smart-loading strong { color: var(--mhb-wine-dark); font-size: 1.05rem; }
.mhb-cookbook-smart-loading p { margin: 0.25rem 0 0; font-size: 0.88rem; }
.mhb-cookbook-empty { padding: clamp(2rem, 6vw, 4rem); color: rgba(44, 33, 28, 0.7); background: #f4ebde; border: 1px solid var(--mhb-line); border-radius: 20px; text-align: center; }
.mhb-cookbook-empty p { margin: 0.45rem 0; }
.mhb-cookbook-card { display: flex; align-items: center; justify-content: space-between; gap: 1.25rem; padding: 1.1rem 1.2rem; background: linear-gradient(135deg, #fffdf7, #f6ead5); border: 1px solid #d6bd94; border-radius: 16px; }
.mhb-cookbook-card h4 { margin: 0.2rem 0 0; color: var(--mhb-wine-dark); font: 700 clamp(1.15rem, 3vw, 1.5rem)/1.2 Georgia, "Times New Roman", serif; }
.mhb-cookbook-card.is-included { display: block; padding: 0.8rem 1rem; background: #f5f0e7; border-color: #cfc3b3; border-radius: 12px; }
.mhb-cookbook-card.is-included .mhb-eyebrow { color: #8a766b; font-size: 0.68rem; }
.mhb-cookbook-card.is-included h4 { margin-top: 0.12rem; color: #5e5149; font-size: clamp(1rem, 2.5vw, 1.18rem); }
.mhb-cookbook-included-note { max-width: 46rem; margin: 0.3rem 0 0; color: #675b52; font-size: 0.82rem; line-height: 1.3; }
.mhb-cookbook-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 0.55rem; }
.mhb-cookbook-card.is-included .mhb-cookbook-actions { justify-content: flex-start; gap: 1.35rem; margin-top: 0.62rem; }
.mhb-cookbook-archive-link { width: auto; padding: 0.08rem 0; color: var(--mhb-wine-dark); background: transparent; border: 0; border-bottom: 1px solid currentColor; border-radius: 0; box-shadow: none; font: inherit; font-size: 0.78rem; font-weight: 800; line-height: 1.25; cursor: pointer; }
.mhb-cookbook-archive-link::after { content: "  ›"; font-size: 1.05em; text-decoration: none; }
.mhb-cookbook-archive-link:hover,
.mhb-cookbook-archive-link:focus-visible { color: var(--mhb-wine); background: transparent; }
.mhb-cookbook-actions .mhb-button,
.mhb-cookbook-actions .mhb-secondary-button { white-space: nowrap; }
.mhb-cookbook-card { flex-wrap: wrap; }
.mhb-cookbook-copy { min-width: min(100%, 18rem); }
.mhb-cookbook-tags { display: flex; flex-wrap: wrap; gap: 0.35rem; margin-top: 0.55rem; }
.mhb-cookbook-tag { padding: 0.25rem 0.55rem; color: #6d2434; background: #f3e3c9; border: 1px solid #d7bb91; border-radius: 999px; cursor: pointer; font: inherit; font-size: 0.76rem; font-weight: 800; }
.mhb-cookbook-tag:hover,
.mhb-cookbook-tag:focus-visible { background: #ead3ae; }
.mhb-cookbook-smart-reason { max-width: 46rem; margin: 0.65rem 0 0; padding-left: 0.7rem; color: #5f5149; border-left: 3px solid #b88d4f; font-size: 0.84rem; line-height: 1.4; }
.mhb-cookbook-smart-reason.is-exact { border-left-color: #3f7b55; }
.mhb-cookbook-smart-reason.is-possible { border-left-color: #a66a32; }
.mhb-cookbook-versions,
.mhb-cookbook-archived { flex: 1 0 100%; padding-top: 0.35rem; border-top: 1px solid rgba(109, 36, 52, 0.15); }
.mhb-cookbook-versions summary,
.mhb-cookbook-archived summary { color: var(--mhb-wine-dark); cursor: pointer; font-size: 0.86rem; font-weight: 850; }
.mhb-cookbook-archived { padding: 1rem 1.1rem; background: #f5f0e7; border: 1px solid #cfc3b3; border-radius: 14px; }
.mhb-cookbook-version-row { display: flex; align-items: center; flex-wrap: wrap; gap: 0.65rem 1rem; padding: 0.65rem 0; border-bottom: 1px solid rgba(109, 36, 52, 0.11); }
.mhb-cookbook-version-row:last-child { border-bottom: 0; }
.mhb-cookbook-version-row > span { flex: 1 1 16rem; color: #5e5149; font-size: 0.86rem; }
.mhb-cookbook-editor { display: grid; gap: 1rem; max-width: 760px; font-size: 1rem; }
.mhb-cookbook-editor label { display: grid; gap: 0.4rem; color: var(--mhb-wine-dark); font-weight: 850; }
.mhb-cookbook-editor input,
.mhb-cookbook-editor textarea { width: 100%; padding: 0.75rem 0.85rem; color: #2c211c; background: #fffdf7; border: 1px solid #c9aa7f; border-radius: 12px; font: inherit; font-weight: 500; line-height: 1.45; }
.mhb-cookbook-editor textarea { min-height: 22rem; resize: vertical; }
.mhb-cookbook-editor small { color: #6f625b; font-weight: 600; }
.mhb-cookbook-editor-actions { display: flex; flex-wrap: wrap; gap: 0.65rem; }
.mhb-cookbook-editor-state { min-height: 1.35em; margin: 0; color: #7c2438; font-weight: 800; }
.mhb-share-card-status { display: grid; flex: 1 0 100%; gap: 0.2rem; margin: 0; color: #6e4c3a; font-size: 0.84rem; }
.mhb-share-card-status:empty { display: none; }
.mhb-share-card-status small { color: #8d3040; }
.mhb-share-card-status a { color: var(--mhb-wine); font-weight: 800; }
.mhb-share-card-status a.mhb-open-table-story {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	justify-self: start;
	min-height: 42px;
	margin-top: 0.35rem;
	padding: 0.55rem 0.9rem;
	color: #fff;
	background: var(--mhb-wine);
	border: 1px solid var(--mhb-wine-dark);
	border-radius: 999px;
	text-decoration: none;
}
.mhb-share-card-status a.mhb-open-table-story:hover,
.mhb-share-card-status a.mhb-open-table-story:focus-visible { background: var(--mhb-wine-dark); }
.mhb-cookbook-actions .is-cook-again { color: #fff !important; background: #7c2438; border-color: #7c2438; white-space: normal; }
.mhb-cookbook-actions .is-cook-again:hover,
.mhb-cookbook-actions .is-cook-again:focus,
.mhb-cookbook-actions .is-cook-again:focus-visible { color: #fff !important; background: #541724; }
.mhb-cookbook-actions .is-cook-again:disabled { color: #fff !important; }

@media (max-width: 620px) {
	.mhb-cookbook-search-row { flex-direction: column; }
	.mhb-cookbook-search-row .mhb-button { width: 100%; }
}

.mhb-share-evening[hidden] { display: none; }
.mhb-share-evening {
	position: fixed;
	inset: 0;
	z-index: 100020;
	display: grid;
	place-items: center;
	padding: 1.25rem;
	background: rgba(23, 12, 10, 0.78);
	backdrop-filter: blur(5px);
	overflow-y: auto;
}
.mhb-share-open .mhb-service-rail,
.mhb-share-open .mhb-help-launcher,
.mhb-share-open .mhb-live-line.is-floating-live { display: none; }
.mhb-share-card {
	position: relative;
	width: min(980px, 100%);
	max-height: calc(100dvh - 2.5rem);
	overflow-y: auto;
	box-sizing: border-box;
	padding: clamp(1.25rem, 4vw, 2.75rem);
	background: #fffaf0;
	border: 2px solid #bd9061;
	border-radius: 24px;
	box-shadow: 0 28px 80px rgba(0, 0, 0, 0.38);
}
.mhb-share-card > h2 { margin: 0.15rem 3.5rem 0.65rem 0; color: var(--mhb-wine-dark); font: 700 clamp(2rem, 6vw, 3.7rem)/1 Georgia, "Times New Roman", serif; }
.mhb-share-toolbar { position: sticky; z-index: 5; top: 0; display: flex; align-items: center; justify-content: space-between; gap: .75rem; margin: 0 0 .85rem; padding: .65rem .75rem; color: #513126; background: rgba(255,246,223,.97); border: 1px solid #d4b77e; border-radius: 12px; box-shadow: 0 8px 20px rgba(70,43,27,.12); }
.mhb-share-toolbar span { font-size: .8rem; font-weight: 750; }
.mhb-share-toolbar span.is-success { color: #1f6238; font-size: .92rem; font-weight: 900; }
.mhb-share-toolbar.is-ready { border-color: #4d7b59; background: rgba(236,247,233,.98); }
.mhb-share-toolbar .mhb-button { flex: none; }
.mhb-share-privacy { max-width: 800px; padding: 0.9rem 1rem; background: #e8f0e7; border-left: 4px solid #486d54; border-radius: 10px; color: #294633; }
.mhb-share-published-handoff[hidden] { display: none !important; }
.mhb-share-published-handoff { display: grid; gap: .45rem; justify-items: start; padding: 1rem 1.1rem; color: #173128; background: #edf7eb; border: 2px solid #4d7b59; border-radius: 14px; box-shadow: 0 10px 24px rgba(18,34,28,.14); }
.mhb-share-published-handoff .mhb-button { margin-top: .25rem; }
.mhb-share-card form { display: grid; gap: 1rem; }
.mhb-share-source-material,
.mhb-share-public-material { padding: 1rem 1.1rem; border-radius: 14px; }
.mhb-share-source-material { background: #edf3eb; border: 1px solid #aac0aa; }
.mhb-share-public-material { margin-top: 0.35rem; background: #f5e8d4; border: 1px solid #d5b98e; }
.mhb-share-source-material h3,
.mhb-share-public-material h3 { margin: 0.15rem 0 0.45rem; color: var(--mhb-wine-dark); font: 700 clamp(1.25rem, 3vw, 1.7rem)/1.15 Georgia, "Times New Roman", serif; }
.mhb-share-source-material p,
.mhb-share-public-material p { margin: 0.25rem 0; }
.mhb-share-card form > label:not(.mhb-share-check) { display: grid; gap: 0.35rem; color: #522e28; font-weight: 800; }
.mhb-share-card input[type="text"],
.mhb-share-card input[type="url"],
.mhb-share-card input:not([type]),
.mhb-share-card textarea { box-sizing: border-box; width: 100%; padding: 0.8rem 0.9rem; background: #fff; border: 1px solid #c4a680; border-radius: 10px; color: #2e1d19; font: inherit; }
.mhb-share-card textarea { resize: vertical; }
.mhb-share-paths,
.mhb-share-files,
.mhb-share-submit { display: flex; flex-wrap: wrap; gap: 0.7rem; align-items: center; }
.mhb-share-check { display: flex; gap: 0.55rem; align-items: flex-start; font-weight: 750; }
.mhb-share-check input { margin-top: 0.25rem; }
.mhb-share-files .mhb-file-button { display: inline-flex; align-items: center; min-height: 44px; box-sizing: border-box; }
.mhb-share-files button.mhb-file-button { background: #fffaf0; color: #522e28; font: inherit; }
#mhb-share-ai[aria-busy="true"] { opacity: 0.78; cursor: wait; }
.mhb-share-photo-choices { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.7rem; }
.mhb-share-photo-choice { position: relative; overflow: hidden; display: grid; align-content: start; background: #fff; border: 2px solid #d6c7af; border-radius: 12px; }
.mhb-share-photo-choice.is-selected { border-color: #286542; box-shadow: 0 0 0 2px rgba(40, 101, 66, 0.12); }
.mhb-share-photo-choice img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.mhb-share-photo-choice.is-loading::before,
.mhb-preview-photo.is-loading::before { content: "Loading photograph…"; display: grid; position: absolute; z-index: 1; inset: 0 0 auto; min-height: 112px; place-items: center; color: #765849; background: #f3eadc; font-size: 0.78rem; font-weight: 800; }
.mhb-share-photo-choice.is-loading img,
.mhb-preview-photo.is-loading img { opacity: 0; }
.mhb-share-photo-choice.is-error::before,
.mhb-preview-photo.is-error::before { content: "Photograph did not load — reopen the editor and try again."; display: grid; position: absolute; z-index: 1; inset: 0 0 auto; min-height: 112px; padding: 0.7rem; place-items: center; color: #7c2438; background: #fff0e5; text-align: center; font-size: 0.78rem; font-weight: 850; }
.mhb-share-photo-choice > span { display: flex; gap: 0.4rem; align-items: flex-start; padding: 0.55rem; color: #522e28; font-size: 0.78rem; font-weight: 750; overflow-wrap: anywhere; }
.mhb-share-photo-choice input { margin-top: 0.1rem; }
.mhb-share-photo-toggle { cursor: pointer; }
.mhb-share-photo-choice > input[type="text"] { width: calc(100% - 1rem); margin: 0 0.5rem 0.55rem; padding: 0.55rem 0.65rem; font-size: 0.82rem; }
.mhb-share-photo-order { display: flex; gap: 0.45rem; padding: 0 0.5rem 0.6rem; }
.mhb-share-photo-order button { flex: 1; min-height: 36px; padding: 0.35rem 0.45rem; background: #f7eedf; border: 1px solid #c4a680; border-radius: 8px; color: #522e28; font: inherit; font-size: 0.76rem; font-weight: 800; cursor: pointer; }
.mhb-share-photo-order button:disabled { opacity: 0.42; cursor: default; }
.mhb-share-history { margin-top: 1rem; padding: 1rem; background: #f7eedf; border: 1px solid #d7c09a; border-radius: 12px; }
.mhb-share-history > h3 { margin: 0 0 0.35rem; color: var(--mhb-wine-dark); font-family: Georgia, "Times New Roman", serif; }
.mhb-share-history-row { display: flex; align-items: center; justify-content: space-between; gap: 0.8rem; padding: 0.7rem 0; border-top: 1px solid rgba(110, 76, 58, 0.2); }
.mhb-share-history-row small { display: block; margin-top: 0.15rem; color: #6e4c3a; }
.mhb-share-history-row button { flex: 0 0 auto; }
.mhb-share-preview { margin-top: 0.5rem; padding: clamp(1rem, 3vw, 1.7rem); background: #eadcc5; border-radius: 18px; }
.mhb-share-preview > h3 { margin: 0.1rem 0 1rem; color: var(--mhb-wine-dark); font: 700 clamp(1.5rem, 4vw, 2.2rem)/1.1 Georgia, "Times New Roman", serif; }
.mhb-share-public-card,
.mhb-community-preview-article { padding: clamp(1rem, 4vw, 2rem); background: #fffefa; border: 1px solid #d5c3a4; border-radius: 14px; box-shadow: 0 8px 25px rgba(74, 49, 33, 0.08); }
.mhb-share-public-card > h2,
.mhb-community-preview-article > h3 { margin: 0.2rem 0 1rem; color: var(--mhb-wine-dark); font: 700 clamp(1.8rem, 5vw, 3rem)/1.05 Georgia, "Times New Roman", serif; }
.mhb-share-preview-copy,
.mhb-community-preview-article { line-height: 1.65; }
.mhb-share-public-card section,
.mhb-community-preview-article section { margin: 1.4rem 0; padding: 1rem; background: #f7eedf; border-radius: 10px; }
.mhb-share-public-card details,
.mhb-community-preview-article details { margin: 1.2rem 0; padding: 0.85rem 1rem; border: 1px solid #d7c09a; border-radius: 10px; }
.mhb-share-public-card summary,
.mhb-community-preview-article summary { color: var(--mhb-wine); font-weight: 850; cursor: pointer; }
.mhb-share-public-card pre { margin: 0.8rem 0 0; white-space: pre-wrap; font: inherit; line-height: 1.55; }
.mhb-share-preview-lead,
.mhb-community-preview-lead { margin: 0 0 1.25rem; }
.mhb-share-preview-lead figure,
.mhb-community-preview-lead figure { position: relative; margin: 0; overflow: hidden; background: #f7eedf; border-radius: 12px; }
.mhb-share-preview-lead img,
.mhb-community-preview-lead img { display: block; width: 100%; max-height: 560px; aspect-ratio: 16 / 10; object-fit: cover; border-radius: 12px 12px 0 0; }
.mhb-share-preview-lead figcaption,
.mhb-community-preview-lead figcaption { padding: 0.65rem 0.8rem; color: #5b4033; font-size: 0.88rem; line-height: 1.4; }
.mhb-share-preview-photos,
.mhb-community-preview-photos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.65rem; margin-top: 1.2rem; }
.mhb-share-preview-photos figure,
.mhb-community-preview-photos figure { position: relative; margin: 0; overflow: hidden; background: #f7eedf; border-radius: 10px; }
.mhb-share-preview-photos img,
.mhb-community-preview-photos img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 10px 10px 0 0; }
.mhb-share-preview-photos figcaption,
.mhb-community-preview-photos figcaption { padding: 0.55rem 0.65rem; color: #5b4033; font-size: 0.8rem; line-height: 1.35; }
.mhb-community-description { color: #6e4c3a; font-size: 1.08rem; font-weight: 700; line-height: 1.5; }
.mhb-table-story-share { box-sizing: border-box; margin: 1rem 0; padding: clamp(1rem, 4vw, 1.45rem); color: #3a281f; background: #f7eedf; border: 1px solid #d2b98f; border-left: 6px solid var(--mhb-wine); border-radius: 14px; box-shadow: 0 6px 18px rgba(74,49,33,.08); }
.mhb-table-story-share h2 { margin: .15rem 0 .45rem; color: var(--mhb-wine-dark); font: 700 clamp(1.35rem, 4vw, 1.85rem)/1.1 Georgia, "Times New Roman", serif; }
.mhb-table-story-share > div > p:last-child { margin: 0; line-height: 1.5; }
.mhb-table-story-share-actions { display: flex; flex-wrap: wrap; gap: .65rem; margin-top: 1rem; }
.mhb-table-story-share-actions button { min-height: 48px; }
.mhb-table-story-share-state { min-height: 1.4em; margin: .7rem 0 0; color: #286542; font-weight: 800; }
.mhb-table-story-share-state.is-error { color: #9b263f; }
.mhb-referral-landing,
.mhb-referral-share { width: min(920px, calc(100% - 2rem)); box-sizing: border-box; margin: 1.25rem auto; padding: clamp(1.15rem, 4vw, 2rem); border-radius: 18px; }
.mhb-referral-landing { color: #fff9ed; background: #173b32; box-shadow: 0 12px 35px rgba(23,59,50,.2); }
.mhb-referral-share { color: #3a281f; background: #f1e2bc; border: 1px solid #d0ad70; }
.mhb-referral-landing h3,
.mhb-referral-share h3 { margin: .15rem 0 .55rem; font: 700 clamp(1.8rem,5vw,3rem)/1.05 Georgia,"Times New Roman",serif; }
.mhb-referral-landing .mhb-eyebrow { color: #efc373; }
.mhb-referral-share .mhb-eyebrow { color: #7c2438; }
.mhb-referral-actions { display: flex; flex-wrap: wrap; gap: .65rem; align-items: center; margin: 1rem 0 .55rem; }
.mhb-referral-landing .mhb-secondary-button { color: #173b32; background: #fff9ed; border-color: #fff9ed; }
.mhb-referral-guest-door { margin-top: 1rem; }
.mhb-referral-guest-promise { max-width: 760px; font-size: 1.05rem; line-height: 1.55; }
.mhb-referral-visitor-state { margin: .9rem 0; padding: .75rem .9rem; color: #173b32; background: #f6e5be; border-radius: 10px; }
.mhb-referral-benefit-hooks { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .8rem; }
.mhb-referral-benefit-hooks span { padding: .38rem .62rem; color: #173b32; background: #fff9ed; border-radius: 999px; font-size: .78rem; font-weight: 800; }
.mhb-anchor-target { position: relative; top: -1rem; }
.mhb-acquisition-page {
	--acq-green: #12382f;
	--acq-green-soft: #1d4b40;
	--acq-wine: #641d2d;
	--acq-terracotta: #a74337;
	--acq-cream: #fff8ea;
	--acq-paper: #f3e3c5;
	--acq-gold: #e6b762;
	position: relative;
	left: 50%;
	width: min(1240px, calc(100vw - 24px));
	margin: 1rem 0 3rem;
	transform: translateX(-50%);
	color: #30221d;
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
body.single-mhb_community_post main .entry-header,
body.single-mhb_community_post main > .wp-block-post-title,
body.single-mhb_community_post main article > .wp-block-post-title { display: none; }
body.single-mhb_community_post main .entry-content { margin-top: 0; }
.mhb-acquisition-page,
.mhb-acquisition-page * { box-sizing: border-box; }
.mhb-acquisition-page section { margin: 0; }
.mhb-acquisition-page figure,
.mhb-acquisition-page blockquote { margin: 0; }
.mhb-acquisition-page .mhb-eyebrow { margin: 0 0 .5rem; color: var(--acq-terracotta); font-size: .76rem; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.mhb-front-preview-flag { margin: 0 0 1rem; padding: .8rem 1rem; color: #3a281f; background: #f7d98e; border: 1px solid #c99332; border-radius: 12px; font-size: .9rem; line-height: 1.45; text-align: center; }
.mhb-bistro-service-bar { display: grid; grid-template-columns: minmax(240px, .8fr) minmax(0, 1.2fr); gap: 1rem 2rem; align-items: center; margin: 0 0 1rem !important; padding: 1rem clamp(1rem, 3vw, 1.6rem); color: #fff8ea; background: linear-gradient(120deg, #173b32, #244e43); border: 1px solid #d0ad70; border-radius: 18px; box-shadow: 0 10px 28px rgba(40, 24, 17, .16); }
.mhb-bistro-service-bar.is-owner { background: linear-gradient(120deg, #3f1722, #641d2d); }
.mhb-bistro-service-bar .mhb-eyebrow { margin-bottom: .25rem; color: #efc77c; }
.mhb-bistro-service-bar h2 { margin: 0; color: #fff8ea; font: 700 clamp(1.2rem, 2.4vw, 1.75rem)/1.1 Georgia, "Times New Roman", serif; }
.mhb-bistro-service-bar h2 span { color: #efc77c; }
.mhb-bistro-service-bar p:last-child { margin: .35rem 0 0; color: #eadcc5; font-size: .86rem; line-height: 1.4; }
.mhb-bistro-service-bar nav { display: flex; flex-wrap: wrap; gap: .55rem; justify-content: flex-end; }
.mhb-bistro-service-bar nav a { display: inline-flex; min-height: 42px; align-items: center; justify-content: center; padding: .65rem .85rem; color: #fff8ea; border: 1px solid rgba(255, 248, 234, .55); border-radius: 999px; font-size: .82rem; font-weight: 850; line-height: 1.15; text-decoration: none; }
.mhb-bistro-service-bar nav a:hover,
.mhb-bistro-service-bar nav a:focus { color: #2d201a; background: #fff8ea; border-color: #fff8ea; }
.mhb-bistro-service-bar nav .mhb-service-primary { color: #3b271e; background: #efc77c; border-color: #efc77c; }
.mhb-bistro-service-bar nav .mhb-service-logout { color: #ffd9d2; border-color: rgba(255, 173, 160, .65); }
.mhb-acquisition-hero { overflow: hidden; background: var(--acq-cream); border: 1px solid #d4bd96; border-radius: 26px; box-shadow: 0 22px 70px rgba(67, 38, 25, .18); }
.mhb-acquisition-hero-head { padding: clamp(1.75rem, 4vw, 3.25rem) clamp(1.2rem, 5vw, 4.25rem) clamp(1.6rem, 3.5vw, 2.65rem); color: #fff8ea; background: radial-gradient(circle at 85% 20%, rgba(180, 75, 57, .28), transparent 32%), linear-gradient(135deg, #102f28, #173f35 60%, #3e2024); text-align: center; }
.mhb-acquisition-hero-head .mhb-eyebrow { color: var(--acq-gold); }
.mhb-acquisition-hero-head h2 { max-width: 980px; margin: 0 auto; color: #fff8ea; font: 700 clamp(2.35rem, 5.3vw, 4.7rem)/.97 Georgia, "Times New Roman", serif; letter-spacing: -.035em; text-wrap: balance; }
.mhb-acquisition-hero-head h2 span { display: block; color: #efc77c; }
.mhb-acquisition-deck { max-width: 820px; margin: 1rem auto 0; color: #f7ead3; font: 500 clamp(1rem, 1.8vw, 1.2rem)/1.5 Georgia, "Times New Roman", serif; }
.mhb-acquisition-route-note { max-width: 740px; margin: 1rem auto 0; padding-top: .8rem; color: #f5cf88; border-top: 1px solid rgba(245, 207, 136, .38); font: 750 .9rem/1.45 Arial, sans-serif; letter-spacing: .01em; }
.mhb-acquisition-actions { justify-content: center; margin-top: 1.55rem; }
.mhb-acquisition-actions .mhb-secondary-button { color: #17382f; background: #fff8ea; border-color: #fff8ea; }
.mhb-acquisition-primary { min-height: 52px; padding: .9rem 1.25rem; background: #b64a3f; box-shadow: 0 8px 22px rgba(0, 0, 0, .2); }
.mhb-acquisition-primary:hover,
.mhb-acquisition-primary:focus { background: #98352f; transform: translateY(-1px); }
.mhb-acquisition-hero-image { position: relative; overflow: hidden; background: #241a17; }
.mhb-acquisition-hero-image img { display: block; width: 100%; aspect-ratio: 2.45 / 1; object-fit: cover; }
.mhb-acquisition-hero-image .mhb-acquisition-hero-photo { width: min(720px, 100%); height: auto; aspect-ratio: 2 / 1; margin-inline: auto; }
.mhb-acquisition-hero-image .mhb-acquisition-hero-photo img { display: block; width: 100%; height: 100%; max-height: 360px; aspect-ratio: 2 / 1; object-fit: contain; object-position: center; }
.mhb-acquisition-hero-image figcaption { position: absolute; right: .75rem; bottom: .65rem; max-width: calc(100% - 1.5rem); padding: .35rem .55rem; color: #fff9ed; background: rgba(20, 15, 12, .7); border-radius: 7px; font-size: .7rem; line-height: 1.3; }
.mhb-acquisition-promise-grid { display: grid; grid-template-columns: 1.08fr .92fr; gap: clamp(1rem, 3vw, 2.35rem); align-items: center; padding: clamp(1.3rem, 3vw, 2.35rem); background: #f7ead2; }
.mhb-acquisition-promises { display: grid; gap: .95rem; margin: 0; padding: 0; list-style: none; }
.mhb-acquisition-promises li { position: relative; padding-left: 1.8rem; color: #3b2820; font: 700 clamp(1.08rem, 2vw, 1.35rem)/1.35 Georgia, "Times New Roman", serif; }
.mhb-acquisition-promises li::before { content: "◆"; position: absolute; left: 0; top: .08em; color: var(--acq-terracotta); font-size: .82em; }
.mhb-acquisition-arrival { padding: 1.15rem 1.25rem; color: #fff8ea; background: var(--acq-green); border-radius: 15px; box-shadow: 0 10px 28px rgba(18, 56, 47, .17); }
.mhb-acquisition-arrival .mhb-eyebrow { color: var(--acq-gold); }
.mhb-acquisition-arrival h3 { margin: .1rem 0 .45rem; color: #fff8ea; font: 700 clamp(1.45rem, 3vw, 2.2rem)/1.05 Georgia, "Times New Roman", serif; }
.mhb-acquisition-arrival p { line-height: 1.5; }
.mhb-acquisition-arrival .mhb-text-button { color: #f5cf88; font-weight: 850; }
.mhb-acquisition-visit-line { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; padding: .9rem clamp(1rem, 4vw, 2rem); color: #3d2b23; background: #fffaf0; border-top: 1px solid #dfcaa4; }
.mhb-acquisition-visit-line p { margin: 0; font-size: .85rem; line-height: 1.45; }
.mhb-acquisition-possibilities,
.mhb-acquisition-hosts,
.mhb-acquisition-origin,
.mhb-acquisition-chef,
.mhb-acquisition-cost,
.mhb-acquisition-lounge,
.mhb-acquisition-community { margin-top: 1.25rem !important; padding: clamp(1.5rem, 4vw, 3.1rem); border-radius: 24px; }
.mhb-acquisition-possibilities { background: #fffaf0; border: 1px solid #ddc7a4; }
.mhb-acquisition-hosts { display: grid; grid-template-columns: minmax(210px, 250px) minmax(0, 1fr); gap: clamp(1.4rem, 3vw, 2.5rem); align-items: center; color: #fff8ea; background: radial-gradient(circle at 85% 15%, rgba(230, 183, 98, .18), transparent 32%), linear-gradient(135deg, #4b1727, #6b2337 58%, #173b32); border: 1px solid #a46f57; }
.mhb-acquisition-hosts figure { width: min(100%, 250px); justify-self: center; overflow: hidden; background: #211714; border: 1px solid rgba(239, 199, 124, .42); border-radius: 16px; box-shadow: 0 16px 38px rgba(0, 0, 0, .28); }
.mhb-acquisition-hosts img { display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; object-position: center 26%; }
.mhb-acquisition-hosts figcaption { padding: .65rem .8rem; color: #f1dfc3; background: #211714; font-size: .74rem; line-height: 1.35; text-align: center; }
.mhb-acquisition-hosts .mhb-eyebrow { color: var(--acq-gold); }
.mhb-acquisition-hosts h2 { margin: .1rem 0 .65rem; color: #fff8ea; font: 700 clamp(2rem, 4vw, 3.25rem)/1 Georgia, "Times New Roman", serif; letter-spacing: -.025em; text-wrap: balance; }
.mhb-acquisition-hosts > div > p:last-child { max-width: 690px; margin-bottom: 0; color: #f2e4cd; font-size: clamp(1rem, 2vw, 1.2rem); line-height: 1.65; }
.mhb-acquisition-section-head { max-width: 850px; margin-bottom: 1.5rem; }
.mhb-acquisition-section-head h2,
.mhb-acquisition-origin h2,
.mhb-acquisition-community h2 { margin: .1rem 0 .7rem; color: var(--acq-wine); font: 700 clamp(2.05rem, 4.6vw, 3.65rem)/1 Georgia, "Times New Roman", serif; letter-spacing: -.025em; text-wrap: balance; }
.mhb-acquisition-section-head > p:last-child,
.mhb-acquisition-origin-story > p,
.mhb-acquisition-community > div > p { max-width: 790px; font-size: clamp(1rem, 2vw, 1.2rem); line-height: 1.62; }
.mhb-acquisition-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.mhb-acquisition-gallery figure { overflow: hidden; background: #281b18; border-radius: 16px; box-shadow: 0 12px 30px rgba(66, 38, 23, .15); }
.mhb-acquisition-gallery img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.mhb-acquisition-gallery figcaption { padding: .8rem 1rem; color: #fff6e5; background: linear-gradient(90deg, #173b32, #3f2325); font: 700 1rem/1.3 Georgia, "Times New Roman", serif; }
.mhb-acquisition-swipe-note { display: none; }
.mhb-acquisition-disclosure { margin: .85rem 0 0; color: #755a49; font-size: .77rem; line-height: 1.45; }
.mhb-acquisition-testimonial { max-width: 800px; margin: 1.5rem auto 0; padding: clamp(1.25rem, 4vw, 2.3rem); color: #fff8ea; background: linear-gradient(135deg, #641d2d, #3f2025); border-radius: 18px; box-shadow: 0 14px 34px rgba(67, 30, 35, .18); text-align: center; }
.mhb-acquisition-testimonial p { margin: 0; font: italic 700 clamp(1.65rem, 4vw, 2.8rem)/1.15 Georgia, "Times New Roman", serif; }
.mhb-acquisition-testimonial cite { display: block; margin-top: .65rem; color: #f0c474; font-size: .78rem; font-style: normal; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.mhb-acquisition-origin { display: block; background: #f1dfbc; border: 1px solid #d0ac72; }
.mhb-acquisition-origin-copy::after { display: table; clear: both; content: ""; }
.mhb-acquisition-origin-story > p { max-width: none; }
.mhb-acquisition-origin-story > p:first-of-type { margin-top: 0; }
.mhb-acquisition-origin-photos { float: right; display: grid; width: min(52%, 560px); grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; margin: .25rem 0 1rem 1.5rem; }
.mhb-acquisition-origin-photos figure { overflow: hidden; background: #fff9ed; border-radius: 14px; box-shadow: 0 10px 28px rgba(69, 41, 25, .15); }
.mhb-acquisition-origin-photos img { display: block; width: 100%; aspect-ratio: 3 / 4; object-fit: cover; }
.mhb-acquisition-origin-photos figcaption { padding: .65rem .75rem; color: #5a3c2e; font-size: .75rem; line-height: 1.4; }
.mhb-acquisition-origin .mhb-acquisition-testimonial { grid-column: 1 / -1; width: min(800px, 100%); }
.mhb-acquisition-origin-bridge { grid-column: 1 / -1; margin: .15rem 0 0; color: var(--acq-wine); font: 700 clamp(1.15rem, 2.7vw, 1.55rem)/1.35 Georgia, "Times New Roman", serif; text-align: center; }
.mhb-acquisition-chef { color: #fff8ea; background: radial-gradient(circle at 90% 10%, rgba(230, 183, 98, .16), transparent 27%), var(--acq-green); }
.mhb-acquisition-chef .mhb-eyebrow { color: var(--acq-gold); }
.mhb-acquisition-chef .mhb-acquisition-section-head h2 { color: #fff8ea; }
.mhb-acquisition-chef .mhb-acquisition-section-head > p:last-child { color: #f2e4cd; }
.mhb-acquisition-three,
.mhb-acquisition-cost-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .85rem; }
.mhb-acquisition-three article { min-height: 100%; padding: 1.25rem; color: #2f211c; background: #fff8ea; border-radius: 15px; }
.mhb-acquisition-three article > span { display: grid; width: 2rem; height: 2rem; place-items: center; color: #fff; background: var(--acq-terracotta); border-radius: 999px; font-weight: 900; }
.mhb-acquisition-three h3,
.mhb-acquisition-cost-cards h3 { margin: .7rem 0 .4rem; color: var(--acq-wine); font: 700 clamp(1.3rem, 2.5vw, 1.8rem)/1.1 Georgia, "Times New Roman", serif; }
.mhb-acquisition-three p,
.mhb-acquisition-cost-cards p { line-height: 1.55; }
.mhb-acquisition-center { margin: 1.4rem 0 0; text-align: center; }
.mhb-acquisition-cost { background: #fffaf0; border: 1px solid #ddc7a4; }
.mhb-acquisition-cost-cards article { padding: 1.2rem; background: #f2e0bd; border-top: 5px solid var(--acq-terracotta); border-radius: 13px; }
.mhb-acquisition-cost-cards article:nth-child(2) { border-top-color: var(--acq-gold); }
.mhb-acquisition-cost-cards article:nth-child(3) { border-top-color: var(--acq-green-soft); }
.mhb-acquisition-cost-cards .mhb-eyebrow { margin-bottom: .25rem; }
.mhb-acquisition-lounge { display: grid; grid-template-columns: 1.15fr .85fr; gap: clamp(1.1rem, 4vw, 3rem); align-items: center; overflow: hidden; color: #fff5e4; background: radial-gradient(circle at 85% 12%, rgba(196, 46, 83, .24), transparent 30%), linear-gradient(135deg, #171110, #3a1521 58%, #111e1a); border: 1px solid #6f3b42; }
.mhb-acquisition-lounge .mhb-eyebrow { color: var(--acq-gold); }
.mhb-acquisition-lounge h2 { color: #fff8ea; }
.mhb-acquisition-lounge-copy > p:not(.mhb-eyebrow) { color: #f0dfcb; font-size: 1.02rem; line-height: 1.65; }
.mhb-acquisition-lounge-ticket { position: relative; padding: 1.35rem; color: #33231f; background: #fff5dd; border: 1px solid #d8ae69; border-radius: 17px; box-shadow: 0 16px 38px rgba(0, 0, 0, .27); }
.mhb-acquisition-lounge-ticket > span { display: inline-block; margin-bottom: .85rem; padding: .38rem .7rem; color: #fff; background: #a8354c; border-radius: 999px; font-size: .72rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.mhb-acquisition-lounge-ticket .mhb-eyebrow { color: var(--acq-terracotta); }
.mhb-acquisition-lounge-ticket h3 { margin: .15rem 0 .75rem; color: var(--acq-wine); font: 700 clamp(1.7rem, 3.3vw, 2.5rem)/1 Georgia, "Times New Roman", serif; }
.mhb-acquisition-lounge-ticket ul { margin: .65rem 0 1rem; padding-left: 1.2rem; }
.mhb-acquisition-lounge-ticket li { margin: .35rem 0; }
.mhb-acquisition-lounge-image { position: relative; grid-column: 1 / -1; overflow: hidden; background: #120d0c; border: 1px solid rgba(239, 199, 124, .35); border-radius: 18px; box-shadow: 0 18px 44px rgba(0, 0, 0, .3); }
.mhb-acquisition-lounge-image img { display: block; width: 100%; height: auto; }
.mhb-acquisition-lounge-image figcaption { padding: .7rem .9rem; color: #e8d3b5; background: #18100f; font-size: .76rem; line-height: 1.45; }
.mhb-acquisition-lounge-proof { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(220px, .7fr) minmax(0, 1.3fr); gap: clamp(1.1rem, 4vw, 3rem); align-items: center; padding: clamp(1rem, 3vw, 1.6rem); color: #34231f; background: #fff5dd; border: 1px solid #d8ae69; border-radius: 18px; }
.mhb-acquisition-lounge-proof figure { overflow: hidden; margin: 0; background: #2a1816; border-radius: 13px; box-shadow: 0 14px 32px rgba(0, 0, 0, .22); }
.mhb-acquisition-lounge-proof img { display: block; width: 100%; height: auto; }
.mhb-acquisition-lounge-proof figcaption { padding: .65rem .8rem; color: #f2ddbc; background: #211513; font-size: .72rem; line-height: 1.4; }
.mhb-acquisition-lounge-proof .mhb-eyebrow { color: var(--acq-terracotta); }
.mhb-acquisition-lounge-proof h3 { margin: .15rem 0 .7rem; color: var(--acq-wine); font: 700 clamp(1.8rem, 4vw, 3.25rem)/1 Georgia, "Times New Roman", serif; }
.mhb-acquisition-lounge-proof blockquote { margin: .8rem 0; color: #4a292b; font: italic 700 clamp(1.25rem, 2.6vw, 1.9rem)/1.25 Georgia, "Times New Roman", serif; }
.mhb-acquisition-lounge-proof p:last-child { font-size: 1rem; line-height: 1.6; }
.mhb-acquisition-community { display: grid; grid-template-columns: 1.15fr .85fr; gap: clamp(1.2rem, 5vw, 4rem); align-items: center; color: #fff7e8; background: linear-gradient(135deg, #4e1826, #701e30 60%, #3a2325); }
.mhb-acquisition-community .mhb-eyebrow { color: var(--acq-gold); }
.mhb-acquisition-community h2 { color: #fff8ea; }
.mhb-acquisition-community aside { padding: 1.25rem; color: #30221d; background: #fff8ea; border-radius: 17px; box-shadow: 0 14px 34px rgba(0, 0, 0, .18); }
.mhb-acquisition-community aside .mhb-eyebrow { color: var(--acq-terracotta); }
.mhb-acquisition-community aside h3 { margin: .15rem 0 .55rem; color: var(--acq-wine); font: 700 clamp(1.5rem, 3vw, 2.25rem)/1.05 Georgia, "Times New Roman", serif; }
.mhb-acquisition-private { padding: .85rem 1rem; color: #3b2a22; background: #f3dfb6; border-radius: 12px; }
.mhb-front-pricing { display: grid; grid-template-columns: 1.25fr .75fr; gap: clamp(1.2rem, 5vw, 4rem); align-items: center; margin-top: 1.25rem !important; padding: clamp(1.5rem, 5vw, 4rem); color: #33231f; background: linear-gradient(135deg, #f5e4c5, #fffaf0); border: 1px solid #d0ac72; border-radius: 24px; }
.mhb-front-pricing h2 { margin: .1rem 0 .7rem; color: var(--acq-wine); font: 700 clamp(2.15rem, 5.8vw, 4.5rem)/.98 Georgia, "Times New Roman", serif; letter-spacing: -.025em; text-wrap: balance; }
.mhb-front-pricing > div > p:not(.mhb-eyebrow) { max-width: 760px; font-size: clamp(1rem, 2vw, 1.2rem); line-height: 1.62; }
.mhb-front-pricing aside { display: grid; gap: .8rem; justify-items: center; padding: 1.4rem; background: #fff; border-radius: 17px; box-shadow: 0 14px 34px rgba(67, 38, 25, .14); text-align: center; }
.mhb-front-price { display: flex; gap: .35rem; align-items: baseline; margin: 0; color: var(--acq-wine); }
.mhb-front-price strong { font: 800 clamp(3rem, 7vw, 5rem)/1 Georgia, "Times New Roman", serif; }
.mhb-front-price span { font-weight: 800; }
.mhb-front-pricing .mhb-text-button { color: var(--acq-wine); font-weight: 850; }
@media (max-width: 780px) {
	.mhb-acquisition-page { width: calc(100vw - 12px); }
	.mhb-acquisition-hero { border-radius: 18px; }
	.mhb-acquisition-hero-head h2 { font-size: clamp(2.25rem, 12vw, 3.75rem); }
	.mhb-acquisition-hero-image img { height: auto; aspect-ratio: auto; object-fit: contain; }
	.mhb-acquisition-promise-grid,
	.mhb-bistro-service-bar,
	.mhb-acquisition-hosts,
	.mhb-acquisition-origin,
	.mhb-acquisition-lounge,
	.mhb-acquisition-community,
	.mhb-front-pricing,
	.mhb-acquisition-visit-line { grid-template-columns: 1fr; }
	.mhb-acquisition-lounge-proof { grid-template-columns: 1fr; }
	.mhb-acquisition-swipe-note { display: block; margin: -.45rem 0 .8rem; color: var(--acq-wine); font-size: .82rem; font-weight: 850; letter-spacing: .03em; }
	.mhb-acquisition-gallery { display: flex; margin-right: -1.5rem; padding-right: 1.5rem; overflow-x: auto; overscroll-behavior-inline: contain; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch; }
	.mhb-acquisition-gallery figure { flex: 0 0 min(84vw, 540px); scroll-snap-align: start; }
	.mhb-acquisition-three,
	.mhb-acquisition-cost-cards { grid-template-columns: 1fr; }
	.mhb-acquisition-origin-story { display: flex; flex-direction: column; }
	.mhb-acquisition-origin-story > p { order: 1; }
	.mhb-acquisition-origin-photos { float: none; order: 2; width: 100%; grid-template-columns: 1fr 1fr; margin: 1.25rem 0 0; }
	.mhb-acquisition-actions > * { flex: 1 1 100%; justify-content: center; text-align: center; }
	.mhb-bistro-service-bar nav { justify-content: flex-start; }
	.mhb-bistro-service-bar nav a { flex: 1 1 auto; }
}
@media (max-width: 520px) {
	.mhb-acquisition-origin-photos { grid-template-columns: 1fr; }
	.mhb-acquisition-hero-head { padding-inline: 1rem; }
	.mhb-acquisition-possibilities,
	.mhb-acquisition-hosts,
	.mhb-acquisition-origin,
	.mhb-acquisition-chef,
	.mhb-acquisition-cost,
	.mhb-acquisition-lounge,
	.mhb-acquisition-community,
	.mhb-front-pricing { border-radius: 18px; }
}
.mhb-referral-attribution { margin: 1rem 0; padding: .85rem 1rem; color: #35251e; background: #fff4d7; border-left: 5px solid #d79b38; border-radius: 10px; }
.mhb-signup > .mhb-referral-attribution { margin: 1rem 0 1.2rem; }
.mhb-referral-copy-state { min-height: 1.35em; margin: .5rem 0 0; font-size: .86rem; font-weight: 750; }
.mhb-referral-copy-state.is-error { color: #8c2335; }
.mhb-referral-qr { width: min(340px,100%); box-sizing: border-box; margin-top: 1rem; padding: 1rem; text-align: center; background: #fff; border-radius: 14px; }
.mhb-referral-qr[hidden] { display: none; }
.mhb-referral-qr svg { display: block; width: 100%; height: auto; }
.mhb-wallet-open { padding: 0; color: inherit; background: transparent; border: 0; font: inherit; text-decoration: underline; cursor: pointer; }
.mhb-wallet-overlay[hidden] { display: none; }
.mhb-wallet-overlay { position: fixed; inset: 0; z-index: 100001; display: grid; place-items: center; padding: 1rem; overflow-y: auto; background: rgba(23,12,10,.78); backdrop-filter: blur(5px); }
.mhb-wallet-card { position: relative; width: min(720px,100%); max-height: calc(100dvh - 2rem); box-sizing: border-box; overflow-y: auto; padding: clamp(1.25rem,5vw,2.4rem); color: #34241e; background: #fff9ed; border: 2px solid #d0ad70; border-radius: 22px; box-shadow: 0 28px 80px rgba(0,0,0,.38); }
.mhb-wallet-card h2 { margin: .15rem 2.5rem .8rem 0; color: var(--mhb-wine-dark); font: 700 clamp(2rem,6vw,3.5rem)/1 Georgia,"Times New Roman",serif; }
.mhb-wallet-close { position: absolute; top: 12px; right: 14px; width: 42px; height: 42px; color: #fff; background: #7c2438; border: 0; border-radius: 999px; font-size: 26px; cursor: pointer; }
.mhb-wallet-balances { display: grid; grid-template-columns: 1fr 1fr; gap: .8rem; margin: 1.2rem 0; }
.mhb-wallet-balances > div { padding: 1rem; background: #f1e2bc; border-radius: 13px; }
.mhb-wallet-balances span,.mhb-wallet-balances strong,.mhb-wallet-balances small { display: block; }
.mhb-wallet-balances strong { margin: .2rem 0; color: #173b32; font-size: 2rem; }
.mhb-wallet-balances small { color: #6e4c3a; }
.mhb-wallet-history { margin-top: 1.2rem; }
.mhb-wallet-history > div { display: flex; justify-content: space-between; gap: 1rem; padding: .75rem 0; border-top: 1px solid #dfcfb2; }
.mhb-wallet-history span,.mhb-wallet-history small { display: block; }
.mhb-wallet-history b { color: #24633e; white-space: nowrap; }
.mhb-wallet-history b.is-negative { color: #8c2335; }
@media (max-width: 620px) {
	.mhb-help-drawer { align-items: end; padding: 8px; }
	.mhb-help-card { width: 100%; max-height: calc(100dvh - 16px); padding: 1rem; border-radius: 22px 22px 12px 12px; }
	.mhb-help-form > div { grid-template-columns: 1fr; }
	.mhb-help-form .mhb-button { width: 100%; }
	.mhb-help-voice-actions { align-items: stretch; flex-direction: column; }
	.mhb-help-voice-actions .mhb-secondary-button,
	.mhb-help-auto-voice { box-sizing: border-box; justify-content: center; width: 100%; }
	.mhb-help-tour-destinations { grid-template-columns: 1fr; }
	.mhb-help-tour-actions { grid-template-columns: 1fr 1fr; }
	.mhb-help-tour-actions .mhb-button { grid-column: 1 / -1; grid-row: 1; width: 100%; }
	.mhb-share-toolbar { align-items: stretch; flex-direction: column; }
	.mhb-share-toolbar .mhb-button { width: 100%; }
	.mhb-referral-actions > * { flex: 1 1 100%; justify-content: center; text-align: center; }
	.mhb-wallet-balances { grid-template-columns: 1fr; }
}
.mhb-share-video-placeholder { margin-top: 1rem; padding: 1rem; background: #27201d; border-radius: 10px; color: #fff; }
.mhb-share-submit { justify-content: flex-end; }
.mhb-share-submit .is-danger { color: #832a35; border-color: #832a35; }
.mhb-share-submit .mhb-button.is-receipt:disabled { opacity: 1; cursor: default; background: #286542; }

.mhb-community-journal { width: min(1120px, calc(100% - 2rem)); margin: 2rem auto 5rem; color: #2f211c; }
.mhb-reader-return { display: flex; width: min(1120px, calc(100% - 2rem)); margin: 1.25rem auto 0; }
.mhb-reader-return .mhb-button { display: inline-flex; align-items: center; justify-content: center; width: auto; min-height: 44px; padding: .68rem 1rem; text-decoration: none; }
.mhb-community-journal > header { max-width: 760px; margin-bottom: 2rem; }
.mhb-community-journal > header h1 { margin: 0.25rem 0 0.75rem; color: var(--mhb-wine-dark); font: 700 clamp(2.4rem, 7vw, 4.7rem)/0.98 Georgia, "Times New Roman", serif; }
.mhb-bistro-community { padding-top: 1.5rem; border-top: 1px solid var(--mhb-line); }
.mhb-bistro-community > header h2 { margin: 0.25rem 0 0.75rem; color: var(--mhb-wine-dark); font: 700 clamp(2rem, 6vw, 3.5rem)/1 Georgia, "Times New Roman", serif; }
.mhb-community-all { margin-top: 1.25rem; }
.mhb-community-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.3rem; }
.mhb-community-card { overflow: hidden; background: #fffaf0; border: 1px solid #d9c5a4; border-radius: 18px; box-shadow: 0 12px 32px rgba(73, 42, 27, 0.1); }
.mhb-community-card img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.mhb-community-card > div { padding: 1.25rem; }
.mhb-community-card h2 { margin: 0.2rem 0 0.65rem; font: 700 clamp(1.45rem, 3vw, 2rem)/1.1 Georgia, "Times New Roman", serif; }
.mhb-community-card h2 a,
.mhb-community-card .mhb-text-button,
.mhb-single-back a { color: var(--mhb-wine); }
.mhb-official-journal > header { max-width: 760px; }
.mhb-official-journal-grid .wp-block-query { margin: 0; }
.mhb-official-journal-grid .wp-block-post-template {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 1.3rem !important;
  margin: 0 !important;
  padding: 0 !important;
}
.mhb-official-journal-grid .wp-block-post {
  min-width: 0;
  overflow: hidden;
  padding: 0 !important;
  color: #2f211c;
  background: #fffaf0;
  border: 1px solid #d9c5a4;
  border-radius: 18px;
  box-shadow: 0 12px 32px rgba(73, 42, 27, 0.1);
}
.mhb-official-journal-grid .wp-block-post-featured-image {
  width: 100% !important;
  margin: 0 0 1.1rem !important;
}
.mhb-official-journal-grid .wp-block-post-featured-image a { display: block; }
.mhb-official-journal-grid .wp-block-post-featured-image img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  max-height: none !important;
  aspect-ratio: 16 / 10 !important;
  object-fit: cover !important;
  border-radius: 0 !important;
}
.mhb-official-journal-grid .wp-block-post > :not(.wp-block-post-featured-image) {
  margin-right: 1.25rem;
  margin-left: 1.25rem;
}
.mhb-official-journal-grid .wp-block-post > :first-child:not(.wp-block-post-featured-image) { margin-top: 1.25rem; }
.mhb-official-journal-grid .wp-block-post > :last-child { margin-bottom: 1.25rem; }
.mhb-official-journal-grid .wp-block-post {
  background: #f7f9f2 !important;
  border-color: #c8cfbc !important;
}
.mhb-official-journal-grid .wp-block-post-title {
  margin-top: .2rem;
  margin-bottom: .65rem;
  font: 700 clamp(1.45rem, 3vw, 2rem)/1.1 Georgia, "Times New Roman", serif;
}
.mhb-official-journal-grid .wp-block-post-title a,
.mhb-official-journal-grid .mhb-journal-card-read a { color: var(--mhb-wine); }
.mhb-official-journal-grid .wp-block-post-title a {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .12em;
}
.mhb-official-journal-grid .wp-block-post-excerpt,
.mhb-official-journal-grid .wp-block-post-content { line-height: 1.55; }
.mhb-community-preview-article { width: min(850px, calc(100% - 2rem)); margin: 2rem auto; }
.mhb-community-video { position: relative; margin-top: 1.5rem; }
.mhb-community-video iframe { max-width: 100%; }
.mhb-single-back { width: min(850px, calc(100% - 2rem)); margin: 0 auto 4rem; }
.mhb-publication-return { display: flex; flex-wrap: wrap; gap: .75rem; width: min(850px, calc(100% - 2rem)); box-sizing: border-box; margin: 1.5rem auto 4rem; padding-top: 1.25rem; border-top: 1px solid var(--mhb-line); }
.mhb-publication-return .mhb-secondary-button { display: inline-flex; align-items: center; justify-content: center; width: auto; min-height: 44px; text-decoration: none; }
.mhb-community-owner-edit { display: flex; align-items: center; justify-content: space-between; gap: 1rem; width: min(850px, calc(100% - 2rem)); box-sizing: border-box; margin: 1.5rem auto 0; padding: 1rem; background: #f3e5d1; border: 1px solid #d2b58e; border-radius: 14px; color: #5b4033; }
.mhb-community-owner-edit .mhb-button { flex: 0 0 auto; }
.mhb-cookbook-context { display: grid; gap: 1rem; }
.mhb-context-turn { max-width: 88%; padding: 0.9rem 1rem; border-radius: 18px; }
.mhb-context-turn.is-user { justify-self: end; color: #fff; background: var(--mhb-wine); border-bottom-right-radius: 5px; }
.mhb-context-turn.is-assistant { justify-self: start; background: #fffdf8; border: 1px solid var(--mhb-line); border-bottom-left-radius: 5px; }
.mhb-context-attachment { margin: 0.55rem 0 0; font-size: 0.82em; font-weight: 750; opacity: 0.82; }
.mhb-context-photo { margin: 0.7rem 0 0; overflow: hidden; background: #f3e5d1; border-radius: 10px; }
.mhb-context-photo img { display: block; width: min(100%, 520px); max-height: 420px; object-fit: contain; background: #201814; }
.mhb-context-photo figcaption { padding: 0.45rem 0.65rem; color: #5b4033; font-size: 0.8rem; font-weight: 750; }

.mhb-app-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.1rem clamp(1.3rem, 5vw, 3.5rem);
  color: rgba(255, 248, 233, 0.82);
  background: #321b20;
  font-size: 0.82rem;
}
.mhb-app-footer p { margin: 0; }
.mhb-app-footer nav { display: flex; flex-wrap: wrap; gap: 0.9rem; }
.mhb-app-footer a { color: #fff3d2; }
.mhb-app-footer span[aria-disabled="true"] { opacity: 0.48; }

.mhb-photo-picker {
  cursor: pointer;
}

.mhb-field-note {
  color: rgba(44, 33, 28, 0.62);
  font-size: 0.78rem;
  font-weight: 500;
  line-height: 1.4;
}

.mhb-status {
  min-height: 0;
  padding: 0 clamp(1.3rem, 5vw, 3.5rem);
  color: rgba(44, 33, 28, 0.76);
  background: var(--mhb-paper);
  font-size: 0.88rem;
}

.mhb-status:not(:empty) { padding-top: 0.85rem; }
.mhb-status.is-error { color: #9c2636; }
.mhb-status.is-success { color: #286542; }

.mhb-panel {
  padding: clamp(1.3rem, 5vw, 3.5rem);
  background: var(--mhb-paper);
}

.mhb-panel-heading,
.mhb-form-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.mhb-panel-heading { margin-bottom: 1.35rem; }

.mhb-meal-control {
  margin: 0 0 1rem;
  padding: 0.9rem;
  background: #fff9ee;
  border: 1px solid var(--mhb-line);
  border-left: 5px solid var(--mhb-gold);
  border-radius: 16px;
}

.mhb-meal-summary,
.mhb-meal-actions,
.mhb-meal-form-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.65rem;
}

.mhb-meal-summary h4 { margin: 0.1rem 0 0.2rem; }
.mhb-meal-summary p { margin-top: 0; }
.mhb-meal-actions { flex-wrap: wrap; justify-content: flex-end; }
.mhb-meal-actions .mhb-button,
.mhb-meal-actions .mhb-secondary-button { min-height: 40px; padding: 0.55rem 0.85rem; }
.mhb-meal-actions .is-working { cursor: wait; gap: 0.5rem; opacity: 1; }
.mhb-meal-actions .is-working .mhb-spinner { flex: 0 0 18px; height: 18px; width: 18px; }
.mhb-repeat-source-reference[hidden] { display:none!important; }
.mhb-repeat-source-reference { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin:0 0 1rem; padding:.85rem 1rem; color:#173128; background:#fff8e8; border:1px solid #d3a84f; border-left:5px solid #6e263d; border-radius:14px; }
.mhb-repeat-source-reference p,.mhb-repeat-source-reference span { display:block; margin:.12rem 0; }
.mhb-repeat-source-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:.55rem; }
.mhb-cookbook-browse-title { margin:1rem 0 .7rem; color:var(--mhb-wine-dark); font:700 clamp(1.15rem,2.5vw,1.45rem)/1.2 Georgia,"Times New Roman",serif; }
.mhb-saved-meal-reference h3 { margin-top:0; }

.mhb-meal-form {
  margin-top: 0.85rem;
  padding-top: 0.85rem;
  border-top: 1px solid var(--mhb-line);
}

.mhb-meal-form fieldset { margin: 0 0 0.75rem; padding: 0; border: 0; }
.mhb-meal-detail-grid { display: grid; grid-template-columns: minmax(0, 2fr) minmax(120px, 1fr); gap: 0.65rem; }
.mhb-meal-form legend,
.mhb-meal-occasion { font-weight: 800; }
.mhb-meal-type-pills { display: flex; flex-wrap: wrap; gap: 0.45rem; margin-top: 0.45rem; }
.mhb-meal-type-pills label { cursor: pointer; }
.mhb-meal-type-pills input { position: absolute; opacity: 0; pointer-events: none; }
.mhb-meal-type-pills span {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  padding: 0.4rem 0.7rem;
  color: var(--mhb-wine);
  background: var(--mhb-paper);
  border: 1px solid var(--mhb-line);
  border-radius: 999px;
  font-weight: 800;
}
.mhb-meal-type-pills input:checked + span { color: #fff; background: var(--mhb-wine); border-color: var(--mhb-wine); }
.mhb-meal-type-pills input:focus-visible + span { outline: 3px solid rgba(109,36,52,.25); outline-offset: 2px; }
.mhb-meal-occasion { display: grid; gap: 0.35rem; margin-bottom: 0.75rem; }
.mhb-meal-occasion input,
.mhb-organize-destination select,
.mhb-organize-create input,
.mhb-organize-create select { min-height: 42px; width: 100%; padding: 0.55rem 0.65rem; border: 1px solid var(--mhb-line); border-radius: 10px; background: #fff; font: inherit; }

.mhb-saved-meals,
.mhb-meal-organizer { margin-top: 0.65rem; border-top: 1px solid var(--mhb-line); padding-top: 0.55rem; }
.mhb-saved-meals summary,
.mhb-meal-organizer summary { color: var(--mhb-wine); cursor: pointer; font-weight: 800; }
.mhb-saved-meals-content { display: grid; gap: 0.45rem; margin-top: 0.65rem; }
.mhb-saved-meal-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0.65rem; align-items: center; padding: 0.55rem 0.6rem; background: var(--mhb-paper); border: 1px solid var(--mhb-line); border-radius: 11px; }
.mhb-saved-meal-row strong,
.mhb-saved-meal-row small { display: block; }
.mhb-saved-meal-copy { min-width: 0; }
.mhb-saved-meal-eyebrow { display: block; margin-bottom: 0.12rem; color: var(--mhb-wine); font-size: 0.7rem; font-weight: 900; letter-spacing: 0.08em; text-transform: uppercase; }
.mhb-saved-meal-description { margin: 0.18rem 0 0.12rem; color: rgba(44,33,28,.82); font-size: 0.9rem; line-height: 1.35; }
.mhb-saved-meal-row small { margin-top: 0.12rem; color: rgba(44,33,28,.68); }
.mhb-saved-meal-row .mhb-secondary-button { min-height: 38px; width: auto; padding: 0.45rem 0.65rem; }

@media (max-width: 560px) {
  .mhb-meal-detail-grid { grid-template-columns: 1fr; gap: 0; }
}
.mhb-organize-destination,
.mhb-organize-create label { display: grid; gap: 0.3rem; font-weight: 800; }
.mhb-organize-create { display: grid; grid-template-columns: 1fr 1fr; gap: 0.65rem; margin: 0.65rem 0; }
.mhb-organize-create[hidden] { display: none; }
.mhb-organize-list { display: grid; gap: 0.45rem; margin: 0.7rem 0; }
.mhb-organize-row { display: grid; grid-template-columns: 24px 1fr; gap: 0.55rem; align-items: start; padding: 0.6rem; background: var(--mhb-paper); border: 1px solid var(--mhb-line); border-radius: 11px; cursor: pointer; }
.mhb-organize-row input { width: 20px; height: 20px; margin-top: 0.1rem; accent-color: var(--mhb-wine); }
.mhb-organize-row strong,
.mhb-organize-row small,
.mhb-organize-preview { display: block; }
.mhb-organize-row small { margin: 0.12rem 0; color: rgba(44,33,28,.68); }
.mhb-organize-preview { overflow: hidden; color: rgba(44,33,28,.8); font-size: 0.9rem; text-overflow: ellipsis; white-space: nowrap; }
.mhb-organize-intro { margin: 0.55rem 0 0.7rem; line-height: 1.45; }
.mhb-meal-recovery-bin { margin-top: 0.85rem; padding-top: 0.7rem; border-top: 1px dashed var(--mhb-line); }
.mhb-meal-recovery-bin > summary { color: rgba(44,33,28,.72); font-size: 0.82rem; font-weight: 800; }
.mhb-recovery-group { margin-top: 0.55rem; padding: 0.55rem 0.6rem; background: rgba(44,33,28,.035); border: 1px solid rgba(44,33,28,.12); border-radius: 9px; }
.mhb-recovery-group > strong,
.mhb-recovery-group > small { display: block; }
.mhb-recovery-group > small { margin: 0.08rem 0 0.35rem; color: rgba(44,33,28,.62); }
.mhb-recovery-piece { display: flex; align-items: center; justify-content: space-between; gap: 0.7rem; padding: 0.3rem 0; border-top: 1px solid rgba(44,33,28,.09); color: rgba(44,33,28,.72); font-size: 0.82rem; }
.mhb-recovery-piece:first-of-type { border-top: 0; }
.mhb-recovery-context-note { padding: 0.55rem 0.65rem; background: var(--mhb-paper); border-radius: 8px; color: rgba(44,33,28,.72); font-size: 0.86rem; }

.mhb-button,
.mhb-text-button {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}

.mhb-button {
  min-height: 46px;
  padding: 0.75rem 1.25rem;
  color: #fff !important;
  background: var(--mhb-wine);
  border-radius: 999px;
  box-shadow: 0 10px 26px rgba(109, 36, 52, 0.2);
  text-decoration: none !important;
}

.mhb-button:hover { background: var(--mhb-wine-dark); }
.mhb-button:disabled { opacity: 0.58; cursor: wait; }

.mhb-secondary-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0.75rem 1.25rem;
  color: var(--mhb-wine) !important;
  background: transparent;
  border: 1px solid currentColor;
  border-radius: 999px;
  font-weight: 800;
  text-decoration: none !important;
}

.mhb-secondary-button:hover,
.mhb-secondary-button:focus {
  color: var(--mhb-wine-dark) !important;
  background: rgba(109, 36, 52, 0.06);
}

.mhb-journal-invitation {
  width: min(calc(100% - 2rem), 920px);
  margin: clamp(1.5rem, 5vw, 3.5rem) auto;
  padding: clamp(1.5rem, 5vw, 3rem);
  color: var(--mhb-ink);
  background: var(--mhb-cream);
  border: 1px solid var(--mhb-line);
  border-radius: 24px;
  box-shadow: var(--mhb-shadow);
  text-align: center;
}

.mhb-journal-invitation.is-introduction {
  background:
    radial-gradient(circle at top right, rgba(196, 154, 82, 0.25), transparent 34%),
    var(--mhb-cream);
}

.mhb-journal-invitation h2 {
  margin: 0;
  color: var(--mhb-wine-dark);
  font: 600 clamp(1.8rem, 5vw, 3.2rem)/1.08 Georgia, "Times New Roman", serif;
}

.mhb-journal-invitation p {
  max-width: 680px;
  margin: 0.9rem auto 0;
  line-height: 1.65;
}

.mhb-journal-invitation .mhb-journal-kicker {
  margin: 0 0 0.55rem;
  color: var(--mhb-wine);
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.mhb-journal-byline {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.35rem 0.8rem;
  margin: 0 0 1.4rem;
  padding: 0 0 0.8rem;
  color: var(--mhb-wine-dark);
  border-bottom: 1px solid var(--mhb-line);
}

.mhb-journal-byline span {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.mhb-journal-byline strong {
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.05rem;
}

.mhb-journal-card-byline {
  margin: 0.25rem 0 0.9rem;
  color: var(--mhb-wine);
  font: 700 0.92rem/1.35 Georgia, "Times New Roman", serif;
}

.mhb-journal-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.8rem;
  margin-top: 1.5rem;
}

.mhb-journal-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0.75rem 1.25rem;
  color: #fff !important;
  background: var(--mhb-wine);
  border: 1px solid var(--mhb-wine);
  border-radius: 999px;
  font-weight: 800;
  text-decoration: none !important;
}

.mhb-journal-button:hover,
.mhb-journal-button:focus {
  color: #fff !important;
  background: var(--mhb-wine-dark);
  border-color: var(--mhb-wine-dark);
}

.mhb-journal-button.is-secondary {
  color: var(--mhb-wine) !important;
  background: transparent;
}

.mhb-journal-button.is-secondary:hover,
.mhb-journal-button.is-secondary:focus {
  color: var(--mhb-wine-dark) !important;
  background: rgba(109, 36, 52, 0.06);
}

body.blog main.wp-block-group {
  width: min(calc(100% - 1.5rem), 1120px);
  margin-inline: auto;
  padding-bottom: clamp(2rem, 6vw, 5rem);
}
body.blog main .wp-block-query { margin-top: clamp(1.25rem, 4vw, 2.75rem); }
body.blog main .wp-block-post-template {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1rem, 3vw, 1.75rem);
  margin: 0;
  padding: 0;
}
body.blog main .wp-block-post {
  min-width: 0;
  overflow: hidden;
  padding: clamp(1.25rem, 3vw, 2rem);
  color: var(--mhb-ink);
  background: var(--mhb-paper);
  border: 1px solid var(--mhb-line);
  border-radius: 20px;
  box-shadow: 0 12px 34px rgba(62, 35, 26, 0.1);
}
body.blog main .wp-block-post-title { margin-top: 0; font: 600 clamp(1.65rem, 3.5vw, 2.45rem)/1.12 Georgia, "Times New Roman", serif; }
body.blog main .wp-block-post-title a { color: var(--mhb-wine-dark); text-decoration-thickness: 1px; text-underline-offset: 0.16em; }
body.blog main .wp-block-post-featured-image { margin: -2rem -2rem 1.4rem; }
body.blog main .wp-block-post-featured-image:empty { display: none; }
body.blog main .wp-block-post-featured-image img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
body.blog main .wp-block-post-excerpt,
body.blog main .wp-block-post-content { line-height: 1.65; }
body.blog main .wp-block-post-excerpt p,
body.blog main .wp-block-post-content p { margin: 0 0 1em; }
body.blog main .wp-block-post-excerpt p:last-child,
body.blog main .wp-block-post-content p:last-child { margin-bottom: 0; }
body.blog main .wp-block-post-content h2,
body.blog main .wp-block-post-content h3,
body.blog main .wp-block-post-content h4 { margin: 1.15em 0 .5em; color: var(--mhb-wine-dark); font-family: Georgia, "Times New Roman", serif; line-height: 1.18; }
body.blog main .wp-block-post-content ul,
body.blog main .wp-block-post-content ol { margin: .65em 0 1em 1.35em; padding: 0; }
body.blog main .mhb-journal-card-read { margin-top: 1.05rem; font-weight: 800; }
body.blog main .mhb-journal-card-read a { color: var(--mhb-wine); text-underline-offset: .14em; }

@media (max-width: 700px) {
  body.blog main .wp-block-post-template,
  .mhb-official-journal-grid .wp-block-post-template { grid-template-columns: 1fr !important; }
  .mhb-official-journal-grid .wp-block-post-featured-image { margin-bottom: .9rem !important; }
}

.mhb-single-article {
  width: min(calc(100% - 2rem), 850px);
  box-sizing: border-box;
  margin: 2rem auto;
  padding: clamp(1rem, 4vw, 2rem);
  color: var(--mhb-ink);
  background: #f7f9f2;
  border: 1px solid #c8cfbc;
  border-radius: 14px;
  box-shadow: 0 8px 25px rgba(74, 49, 33, 0.08);
}

.mhb-single-header {
  margin-bottom: 1rem;
}

.mhb-single-kicker {
  margin: 0 0 0.65rem;
  color: var(--mhb-wine);
  font-size: 0.74rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.mhb-single-header h1 {
  margin: 0 0 1rem;
  color: var(--mhb-wine-dark);
  font: 700 clamp(1.8rem, 5vw, 3rem)/1.05 Georgia, "Times New Roman", serif;
}

.mhb-single-header time {
  color: rgba(44, 33, 28, 0.68);
  font-size: 0.9rem;
}

.mhb-single-content {
  font-size: 1rem;
  line-height: 1.65;
}

.mhb-single-article .mhb-reader-controls {
  margin: 0 0 1.25rem;
}

.mhb-single-article .mhb-journal-byline {
  margin-bottom: 1.25rem;
}

.mhb-single-article .mhb-reader-source > figure:first-of-type,
.mhb-single-article .mhb-reader-source > .wp-block-image:first-of-type,
.mhb-single-article .mhb-journal-article-lead {
  position: relative;
  width: 100%;
  max-width: none !important;
  margin: 0 0 1.25rem !important;
  overflow: hidden;
  background: #edf1e5;
  border-radius: 12px;
}

.mhb-single-article .mhb-reader-source > figure:first-of-type img,
.mhb-single-article .mhb-reader-source > .wp-block-image:first-of-type img,
.mhb-single-article .mhb-journal-article-lead img {
  display: block;
  width: 100% !important;
  max-width: none !important;
  max-height: 560px !important;
  aspect-ratio: 16 / 10;
  object-fit: cover !important;
  border-radius: 12px 12px 0 0;
}

.mhb-single-article .mhb-reader-source > figure:first-of-type figcaption,
.mhb-single-article .mhb-reader-source > .wp-block-image:first-of-type figcaption,
.mhb-single-article .mhb-journal-article-lead figcaption {
  margin: 0;
  padding: .65rem .8rem;
  color: #4e5848;
  background: #edf1e5;
  font-size: .88rem;
  line-height: 1.4;
}

.mhb-single-content p {
  margin: 0 0 1.15em;
}

.mhb-single-content h2,
.mhb-single-content h3,
.mhb-single-content h4 {
  margin: 1.45em 0 0.55em;
  color: var(--mhb-wine-dark);
  font-family: Georgia, "Times New Roman", serif;
  line-height: 1.18;
}

.mhb-single-content ul,
.mhb-single-content ol {
  margin: .7em 0 1.2em 1.45em;
  padding: 0;
}

.mhb-single-content li + li {
  margin-top: .35em;
}

.mhb-single-content blockquote {
  margin: 1.4em 0;
  padding: .2em 0 .2em 1.15em;
  border-left: 4px solid var(--mhb-gold);
  font-family: Georgia, "Times New Roman", serif;
  font-style: italic;
}

.mhb-single-content > :first-child {
  margin-top: 0;
}

.mhb-single-back {
  margin: 2.25rem 0 0;
  padding-top: 1.25rem;
  border-top: 1px solid var(--mhb-line);
  font-weight: 800;
}

.mhb-single-back a {
  color: var(--mhb-wine);
}

/* Reader pages temporarily clear the floating furniture while the page moves. */
body.mhb-reader-page .mhb-service-rail,
body.mhb-reader-page .mhb-help-launcher,
body.mhb-reader-page .mhb-timer-utility {
  transition: opacity .18s ease, transform .18s ease;
}

body.mhb-reader-page.mhb-reader-scrolling .mhb-service-rail,
body.mhb-reader-page.mhb-reader-scrolling .mhb-help-launcher,
body.mhb-reader-page.mhb-reader-scrolling .mhb-timer-utility {
  pointer-events: none;
  opacity: 0;
  transform: translateY(24px);
}

.mhb-acquisition-lounge a { color: inherit; text-decoration-thickness: .08em; text-underline-offset: .12em; }

.mhb-signup {
  max-width: 720px;
}

.mhb-signup-form {
  display: grid;
  gap: 1rem;
  max-width: 480px;
  margin: 2rem auto 1.25rem;
  text-align: left;
}

.mhb-signup-form .mhb-button {
  justify-self: center;
  margin-top: 0.5rem;
}

.mhb-google-button {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.7rem;
  width: min(100%, 480px);
  min-height: 52px;
  margin: 1.5rem auto 0;
  padding: 0.75rem 1.1rem;
  color: var(--mhb-wine-dark);
  background: #fff;
  border: 1px solid var(--mhb-line);
  border-radius: 999px;
  box-shadow: 0 6px 18px rgba(60, 35, 23, 0.08);
  font-weight: 800;
  text-decoration: none;
}

.mhb-google-button:hover,
.mhb-google-button:focus {
  color: var(--mhb-wine);
  border-color: var(--mhb-wine);
  box-shadow: 0 0 0 2px rgba(123, 41, 65, 0.15);
}

.mhb-google-mark {
  display: inline-grid;
  place-items: center;
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  color: #4285f4;
  background: #fff;
  border: 1px solid #d6d6d6;
  border-radius: 50%;
  font-family: Arial, sans-serif;
  font-size: 17px;
  font-weight: 700;
}

.mhb-google-service-note {
  max-width: 480px;
  margin: 1.25rem auto 0;
  color: var(--mhb-muted);
  font-size: 0.9rem;
}

.mhb-notice {
  max-width: 520px;
  margin: 1.5rem auto;
  padding: 1rem 1.15rem;
  background: #fff8e9;
  border: 1px solid var(--mhb-gold);
  border-radius: 14px;
}

.mhb-notice.is-success {
  color: #205f3e;
  background: #edf8f1;
  border-color: #6ba982;
}

.mhb-notice.is-error {
  color: #8c2030;
  background: #fff0f2;
  border-color: #c46a78;
}

.mhb-honeypot {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

.mhb-text-button {
  padding: 0.35rem;
  color: var(--mhb-wine);
  background: transparent;
  text-decoration: underline;
  text-underline-offset: 0.2em;
}

.mhb-history {
  min-height: 280px;
  max-height: 580px;
  margin: 0 0 1.25rem;
  padding: clamp(0.75rem, 2vw, 1.2rem);
  overflow-y: auto;
  background: #f4ebde;
  border: 1px solid var(--mhb-line);
  border-radius: 20px;
}

/* Member conversations follow the page itself; avoid a second scrollbar inside Windows browsers. */
#mhb-app .mhb-history { max-height:none; overflow-y:visible; }

/* The staff member and open line always precede supporting records. */
#mhb-app [data-mhb-panel="chat"] { display:flex; flex-direction:column; }
#mhb-app [data-mhb-panel="chat"][hidden] { display:none; }
#mhb-app [data-mhb-panel="chat"] > .mhb-station-switcher { order:1; }
#mhb-app [data-mhb-panel="chat"] > .mhb-panel-heading { order:2; }
#mhb-app #mhb-meal-control,
#mhb-app #mhb-bar-station { display:contents; }
#mhb-app #mhb-meal-control[hidden],
#mhb-app #mhb-bar-station[hidden] { display:none; }
#mhb-app .mhb-meal-summary,
#mhb-app .mhb-meal-form,
#mhb-app .mhb-repeat-source-reference,
#mhb-app .mhb-meal-recipe-handoff,
#mhb-app .mhb-bar-welcome,
#mhb-app .mhb-pastry-station,
#mhb-app .mhb-wine-station { order:3; }
#mhb-app .mhb-meal-summary { margin:0 0 1rem; padding:.9rem; background:#fff9ee; border:1px solid var(--mhb-line); border-left:5px solid var(--mhb-gold); border-radius:16px; }
#mhb-app .mhb-meal-form { margin:0 0 1rem; padding:.9rem; background:#fff9ee; border:1px solid var(--mhb-line); border-radius:16px; }
#mhb-app .mhb-repeat-source-reference,
#mhb-app .mhb-meal-recipe-handoff { order:3; }
#mhb-app #mhb-history { order:4; }
#mhb-app .mhb-live-line { order:5; }
#mhb-app .mhb-mic-help { order:6; }
#mhb-app #mhb-chat-form { order:7; }
#mhb-app .mhb-saved-meals,
#mhb-app .mhb-meal-organizer,
#mhb-app .mhb-check-please,
#mhb-app .mhb-bar-book,
#mhb-app .mhb-saved-drinks { order:8; }
#mhb-app .mhb-saved-meals,
#mhb-app .mhb-meal-organizer,
#mhb-app .mhb-check-please,
#mhb-app .mhb-bar-book,
#mhb-app .mhb-saved-drinks { margin-inline:clamp(.75rem,3vw,2rem); }
#mhb-app { padding-bottom:92px; }

.mhb-empty {
  max-width: 520px;
  margin: 4.5rem auto;
  color: rgba(44, 33, 28, 0.65);
  text-align: center;
}

.mhb-message {
  max-width: 86%;
  margin: 0 0 1rem;
  padding: 0.9rem 1rem;
  border-radius: 18px;
}

.mhb-message.is-user {
  margin-left: auto;
  color: #fff;
  background: var(--mhb-wine);
  border-bottom-right-radius: 5px;
}

.mhb-message.is-assistant {
  margin-right: auto;
  background: var(--mhb-paper);
  border: 1px solid var(--mhb-line);
  border-bottom-left-radius: 5px;
}

.mhb-message-label {
  margin: 0 0 0.35rem !important;
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  opacity: 0.72;
  text-transform: uppercase;
}

.mhb-message-body > :first-child { margin-top: 0; }
.mhb-message-body > :last-child { margin-bottom: 0; }
.mhb-message-body p { margin: 0 0 0.75rem; }
.mhb-message-body h3,
.mhb-message-body h4 { margin: 1rem 0 0.45rem; color: var(--mhb-wine-dark); font-family: Georgia, serif; }
.mhb-message-body ul,
.mhb-message-body ol { margin: 0.5rem 0 0.9rem 1.25rem; }
.mhb-message-body code { padding: 0.1em 0.3em; background: rgba(44, 33, 28, 0.08); border-radius: 4px; }
.mhb-chat-offers { display:grid; gap:.75rem; margin:.9rem 0 .2rem; }
.mhb-chat-offer { position:relative; overflow:hidden; padding:.9rem 1rem; background:#fff8e7; border:1px dashed rgba(109,36,52,.48); border-radius:12px; box-shadow:0 5px 15px rgba(62,39,29,.08); }
.mhb-chat-offer::before,.mhb-chat-offer::after { content:""; position:absolute; top:50%; width:14px; height:14px; background:var(--mhb-paper); border:1px solid rgba(109,36,52,.32); border-radius:50%; transform:translateY(-50%); }
.mhb-chat-offer::before { left:-8px; }
.mhb-chat-offer::after { right:-8px; }
.mhb-chat-offer-kicker { margin:0 0 .25rem; color:var(--mhb-wine); font-size:.68rem; font-weight:900; letter-spacing:.11em; text-transform:uppercase; }
.mhb-chat-offer-store { display:block; color:#514039; font-size:.76rem; letter-spacing:.04em; text-transform:uppercase; }
.mhb-chat-offer h4 { margin:.28rem 0 .2rem; color:var(--mhb-wine-dark); font-family:Georgia,serif; font-size:1.08rem; }
.mhb-chat-offer-price { margin:0; color:#174f3d; font-size:1.08rem; font-weight:900; }
.mhb-chat-offer-details,.mhb-chat-offer-fine { margin:.32rem 0 0; font-size:.78rem; line-height:1.4; }
.mhb-chat-offer-fine { color:rgba(44,33,28,.7); }
.mhb-chat-offer-actions { display:flex; flex-wrap:wrap; gap:.45rem; margin-top:.65rem; }
.mhb-chat-offer-actions a,.mhb-chat-offer-actions button { appearance:none; display:inline-flex; align-items:center; min-height:34px; padding:.42rem .7rem; color:#fff; background:var(--mhb-wine); border:1px solid var(--mhb-wine); border-radius:999px; font:inherit; font-size:.72rem; font-weight:850; line-height:1.1; text-decoration:none; cursor:pointer; }
.mhb-chat-offer-actions button { color:var(--mhb-wine-dark); background:transparent; }
.mhb-chat-offer-actions a:hover,.mhb-chat-offer-actions a:focus,.mhb-chat-offer-actions button:hover,.mhb-chat-offer-actions button:focus { filter:brightness(.92); }
.mhb-chat-offer-actions button.is-saved { color:#245834; background:#edf5e8; border-color:#477650; opacity:1; cursor:default; }
.mhb-chat-offer-actions .mhb-chat-pocket-link { color:#fff; background:#174f3d; border-color:#174f3d; }
.mhb-voice-controls { display:flex; flex-wrap:wrap; gap:.45rem; margin:.7rem 0 0; }
.mhb-voice-button { appearance:none; margin:0; padding:.45rem .7rem; color:var(--mhb-wine-dark); background:#fff8ec; border:1px solid rgba(109,36,52,.28); border-radius:999px; font:inherit; font-size:.78rem; font-weight:800; cursor:pointer; }
.mhb-voice-button.is-secondary { background:transparent; font-weight:700; }
.mhb-voice-button:hover,.mhb-voice-button:focus { background:#f6e4c1; }
.mhb-voice-button:disabled { opacity:.6; cursor:wait; }
.mhb-reply-tools-label { flex-basis:100%; color:rgba(44,33,28,.68); font-size:.72rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.mhb-voice-controls .mhb-voice-button:first-of-type { min-height:44px; padding:.62rem 1rem; color:#fff; background:var(--mhb-wine); border-color:var(--mhb-wine); font-size:.86rem; box-shadow:0 3px 10px rgba(80,20,36,.13); }
.mhb-voice-controls .mhb-voice-button:first-of-type:hover,.mhb-voice-controls .mhb-voice-button:first-of-type:focus { background:var(--mhb-wine-dark); }
.mhb-voice-button.is-cook-mode { color:var(--mhb-wine-dark); background:#f3e4c7; border-color:#a86f5f; }
.mhb-voice-button.is-cook-mode:hover,.mhb-voice-button.is-cook-mode:focus { color:#fff; background:var(--mhb-wine); }
.mhb-autoplay { display:inline-flex; align-items:center; gap:.4rem; font-size:.78rem; font-weight:750; white-space:nowrap; }
.mhb-autoplay input { width:1rem; height:1rem; margin:0; }
.mhb-ai-voice-note { opacity:.82; }
.mhb-live-line { display:flex; align-items:center; flex-wrap:wrap; gap:.75rem; margin:1rem 0; padding:.8rem; background:rgba(244,229,199,.62); border:1px solid rgba(109,36,52,.18); border-radius:14px; }
.mhb-live-button { appearance:none; padding:.68rem .95rem; color:#fff; background:var(--mhb-wine); border:0; border-radius:999px; font:inherit; font-weight:800; cursor:pointer; }
.mhb-live-button:hover,.mhb-live-button:focus { background:var(--mhb-wine-dark); }
.mhb-live-button.is-live { background:#174f3d; box-shadow:0 0 0 4px rgba(23,79,61,.13); }
.mhb-live-button:disabled { opacity:.62; cursor:wait; }
.mhb-live-state { flex:1 1 240px; font-size:.84rem; line-height:1.35; }
.mhb-live-state.is-error { color:#a52c32; font-weight:750; }
.mhb-live-state.has-graphic { display:flex; align-items:center; gap:.55rem; min-height:24px; font-weight:750; }
.mhb-live-indicator { position:relative; display:inline-block; flex:0 0 18px; width:18px; height:18px; border:3px solid rgba(109,36,52,.2); border-radius:50%; background:#fff; }
.mhb-live-indicator.is-listening { border-color:rgba(23,79,61,.28); background:#2f805f; box-shadow:0 0 0 4px rgba(47,128,95,.1); }
.mhb-live-indicator.is-listening::after { position:absolute; inset:-7px; content:""; border:1px solid rgba(47,128,95,.45); border-radius:50%; animation:mhb-live-pulse 1.4s ease-out infinite; }
.mhb-live-indicator.is-hearing { border-color:#bc9139; background:#f0c65f; }
.mhb-live-indicator.is-speaking { border-color:#6d2434; background:repeating-linear-gradient(90deg,#6d2434 0 3px,#fff 3px 5px); animation:mhb-live-speaking .7s ease-in-out infinite alternate; }
@keyframes mhb-live-pulse { to { transform:scale(1.35); opacity:0; } }
@keyframes mhb-live-speaking { to { transform:scaleY(.68); } }

.mhb-thinking {
  width: max-content;
  max-width: 80%;
  padding: 0.8rem 1rem;
  color: rgba(44, 33, 28, 0.64);
  background: rgba(255, 253, 248, 0.72);
  border-radius: 18px;
  font-style: italic;
}

.mhb-chat-failure { align-items:center; display:flex; flex-wrap:wrap; gap:.65rem; max-width:min(92%,680px); padding:.8rem 1rem; color:#762233; background:#fff1ee; border:1px solid #c98086; border-radius:14px; font-size:.88rem; font-weight:750; line-height:1.4; }
.mhb-chat-failure span { flex:1 1 260px; }
.mhb-chat-failure button { appearance:none; min-height:40px; padding:.5rem .9rem; color:#fff; background:var(--mhb-wine); border:0; border-radius:999px; cursor:pointer; font:inherit; font-weight:850; }
.mhb-chat-failure button:hover,.mhb-chat-failure button:focus { background:var(--mhb-wine-dark); }

.mhb-chat-form,
.mhb-profile-form {
  display: grid;
  gap: 1rem;
}
.mhb-chat-form { position:relative; }
.mhb-composer-entry { align-items:stretch; display:grid; gap:.55rem; grid-template-columns:minmax(0,1fr) auto; }
.mhb-composer-entry .mhb-button { min-width:150px; }
.mhb-composer-tools { align-items:center; display:flex; flex-wrap:wrap; gap:.45rem; }
.mhb-composer-tools .mhb-dictation { flex:0 0 auto; margin:0; }
.mhb-composer-tools .mhb-dictate-launch { min-height:38px; padding:.4rem .7rem; }
.mhb-composer-tools .mhb-add-to-conversation { overflow:visible; }
.mhb-composer-tools .mhb-add-to-conversation > summary { box-sizing:border-box; min-height:38px; padding:.45rem .7rem; }
.mhb-conversation-help { display:none; min-height:38px; padding:.4rem .7rem; }
body.mhb-conversation-room-active .mhb-conversation-help { display:inline-flex; align-items:center; justify-content:center; }
.mhb-composer-file-state:empty,.mhb-composer-file-tray:empty { display:none; }
.mhb-message-actions { align-items:stretch; display:grid; gap:.7rem; grid-template-columns:minmax(190px,.8fr) minmax(210px,1fr) minmax(190px,.9fr); }
.mhb-message-actions .mhb-dictation { margin:0; }
.mhb-message-actions .mhb-dictate-launch,.mhb-message-actions .mhb-button { align-items:center; display:flex; justify-content:center; min-height:50px; width:100%; }
.mhb-message-actions .mhb-dictate-launch { color:#fff; background:#6d2434; border-color:#6d2434; }
.mhb-message-actions .mhb-dictate-launch:hover,.mhb-message-actions .mhb-dictate-launch:focus { color:#fff; background:#4b1722; }
.mhb-message-autoplay { align-items:center; background:#fffaf1; border:1px solid rgba(109,36,52,.22); border-radius:14px; min-height:50px; padding:.55rem .75rem; white-space:normal; }
.mhb-profile-save-copy { display:grid; gap:.2rem; }
.mhb-profile-save-copy .is-working { color:#6d2434; font-weight:800; }
.mhb-profile-save-copy .is-success { color:#245834; font-weight:800; }
.mhb-profile-save-copy .is-error { color:#a52c32; font-weight:800; }
.mhb-profile-interview {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 1rem 1.25rem;
	margin-bottom: 1.15rem;
	padding: clamp(1rem, 3vw, 1.4rem);
	background: linear-gradient(135deg, #fffaf0, #f2dfc1);
	border: 1px solid #c9aa7f;
	border-radius: 18px;
}
.mhb-profile-interview h4 { margin: 0.12rem 0 0.35rem; color: var(--mhb-wine-dark); font: 700 clamp(1.18rem, 3vw, 1.48rem)/1.2 Georgia, "Times New Roman", serif; }
.mhb-profile-interview p { margin: 0; }
.mhb-profile-interview-conversation { grid-column: 1 / -1; display: grid; gap: 0.85rem; }
.mhb-profile-interview-conversation[hidden] { display: none; }
.mhb-profile-interview-transcript { display:grid; gap:.65rem; max-height:min(46vh,440px); overflow-y:auto; padding:.8rem; background:rgba(255,253,248,.7); border:1px solid rgba(109,36,52,.18); border-radius:16px; scroll-behavior:smooth; }
.mhb-profile-interview-turn { width:min(88%,660px); padding:.8rem 1rem; border-radius:16px; box-shadow:0 6px 18px rgba(76,42,30,.06); }
.mhb-profile-interview-turn.is-assistant { justify-self:start; background:#fffdf8; border:1px solid rgba(109,36,52,.2); border-bottom-left-radius:5px; }
.mhb-profile-interview-turn.is-member { justify-self:end; color:#fff; background:var(--mhb-wine); border-bottom-right-radius:5px; }
.mhb-profile-interview-turn strong { display:block; margin-bottom:.28rem; color:#8b3042; font-size:.7rem; letter-spacing:.13em; }
.mhb-profile-interview-turn.is-member strong { color:#f6d9a9; }
.mhb-profile-interview-turn p { color:inherit; font-size:1rem; line-height:1.48; white-space:pre-wrap; }
.mhb-profile-interview-listen { margin-top:.7rem; min-height:42px; padding:.55rem .85rem; color:#fff; background:var(--mhb-wine); border-color:var(--mhb-wine); }
.mhb-profile-interview-listen:hover,.mhb-profile-interview-listen:focus { color:#fff; background:var(--mhb-wine-dark); }
.mhb-profile-interview-dictation { display: flex; flex-wrap: wrap; align-items: center; gap: 0.55rem; }
.mhb-profile-interview-dictation .mhb-dictate-launch { margin: 0; }
.mhb-profile-interview-dictation + .mhb-dictation-panel { margin-top: 0; }
.mhb-profile-interview-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 0.65rem; }
.mhb-profile-manual { padding: 0.2rem 0 0; }
.mhb-profile-manual > summary { padding: 0.8rem 1rem; color: var(--mhb-wine-dark); background: #fffaf1; border: 1px solid rgba(109,36,52,.25); border-radius: 14px; cursor: pointer; font-weight: 850; }
.mhb-profile-manual[open] > summary { margin-bottom: 1rem; background: #f4e4cc; }
.mhb-profile-manual .mhb-profile-form { padding-top: 0.15rem; }
.mhb-add-to-conversation { background:rgba(247,234,215,.52); border:1px solid rgba(109,36,52,.18); border-radius:14px; overflow:hidden; }
.mhb-add-to-conversation > summary { cursor:pointer; font-size:.88rem; font-weight:850; list-style-position:inside; padding:.75rem .9rem; }
.mhb-add-to-conversation[open] > summary { background:#f4e4cc; border-bottom:1px solid rgba(109,36,52,.15); }
.mhb-add-to-conversation .mhb-attachments { margin:0; padding:.85rem; }
.mhb-attachment-picker-heading { display:flex; flex:1 0 100%; align-items:center; justify-content:space-between; gap:.75rem; margin:0 0 .15rem; }
.mhb-attachment-picker-heading strong { color:#442d25; font-size:.84rem; }
.mhb-attachment-picker-close { min-height:36px; padding:.38rem .72rem; color:#6d2434; background:#fff; border:1px solid rgba(109,36,52,.36); border-radius:999px; cursor:pointer; font:inherit; font-size:.8rem; font-weight:850; }
.mhb-attachment-picker-close:hover,.mhb-attachment-picker-close:focus { color:#fff; background:#6d2434; outline:3px solid rgba(196,154,82,.32); outline-offset:2px; }

.mhb-shell label {
  display: grid;
  gap: 0.45rem;
  color: var(--mhb-ink);
  font-size: 0.9rem;
  font-weight: 800;
}

/* The signed-in member application does not need the public acquisition button. */
body.logged-in header a[href*="follow-along"],
body.logged-in header a[href*="signup"],
body.logged-in header a[href*="sign-up"] { display: none !important; }

@media (max-width: 620px) {
	.mhb-profile-interview { grid-template-columns: 1fr; }
	.mhb-profile-interview > .mhb-button { width: 100%; }
	.mhb-profile-interview-conversation { grid-column: 1; }
	.mhb-profile-interview-actions > * { flex: 1 1 100%; justify-content: center; }
}

.mhb-shell input,
.mhb-shell textarea,
.mhb-shell select {
  width: 100%;
  margin: 0;
  padding: 0.85rem 0.95rem;
  color: var(--mhb-ink);
  background: #fff;
  border: 1px solid rgba(80, 49, 35, 0.26);
  border-radius: 12px;
  box-shadow: none;
  font: inherit;
  font-weight: 400;
  line-height: 1.45;
}

.mhb-shell input:focus,
.mhb-shell textarea:focus,
.mhb-shell select:focus {
  outline: 3px solid rgba(196, 154, 82, 0.28);
  border-color: var(--mhb-gold);
}

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

.mhb-wide { grid-column: 1 / -1; }

.mhb-shopping-profile { padding: clamp(1rem,3vw,1.5rem); border: 1px solid rgba(109,36,52,.2); border-radius: 16px; background: rgba(244,229,199,.42); }
.mhb-shopping-profile h4 { margin: .15rem 0 .45rem; font: 800 clamp(1.35rem,3vw,1.8rem)/1.1 Georgia, "Times New Roman", serif; }
.mhb-shopping-profile > p:not(.mhb-eyebrow):not(.mhb-shopping-note) { max-width: 820px; margin: 0 0 1rem; line-height: 1.55; }
.mhb-shopping-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; }
.mhb-shopping-note { margin: 1rem 0 0; padding-top: .8rem; border-top: 1px solid rgba(109,36,52,.16); font-size: .78rem; font-weight: 700; line-height: 1.5; }


@media (max-width: 700px) {
  .mhb-shell { margin: 1rem auto; border-radius: 18px; }
  .mhb-hero,
  .mhb-panel-heading,
  .mhb-form-row { align-items: stretch; flex-direction: column; }
	.mhb-owner-composer-actions,
	.mhb-message-actions { align-items:stretch; flex-direction:column; }
	.mhb-owner-composer-actions .mhb-dictation,
	.mhb-message-actions .mhb-dictation { flex-basis:auto; width:100%; }
	.mhb-message-autoplay { align-self:flex-start; min-height:0; }
	.mhb-shopping-grid { grid-template-columns: 1fr; }
	.mhb-member-bar { display: grid; grid-template-columns: 1fr; align-items: flex-start; min-height: 0; padding: 0.85rem 1rem; }
	.mhb-member-bar.mhb-member-bar-simple { display:flex; align-items:center; flex-direction:row; padding:.68rem .8rem; }
	.mhb-member-bar.mhb-member-bar-simple h2 { font-size:1.12rem; }
	.mhb-member-bar.mhb-member-bar-simple .mhb-member-bar-kicker { font-size:.58rem; }
	.mhb-member-bar-logout { padding:.4rem .62rem; font-size:.7rem; }
  .mhb-hero .mhb-user { white-space: normal; }
	.mhb-session { justify-items: start; gap: 0.7rem; width: 100%; }
	.mhb-member-bar .mhb-user { font-size: 0.92rem; line-height: 1.4; margin: 0; }
	.mhb-member-links { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.6rem; width: 100%; }
	.mhb-member-bar .mhb-member-links a,
	.mhb-member-bar .mhb-member-links button,
	.mhb-member-bar .mhb-member-links .mhb-logout-button {
		align-items: flex-start;
		min-height: 50px;
		padding: 0.65rem 0.55rem;
	}
	.mhb-member-bar .mhb-member-links .mhb-logout-button {
		color: #fff !important;
		background: var(--mhb-wine);
		border-color: var(--mhb-wine);
	}
  .mhb-grid { grid-template-columns: 1fr; }
  .mhb-wide { grid-column: auto; }
	.mhb-message { max-width: 94%; }
	.mhb-recalled-recipe { align-items:stretch; flex-direction:column; }
	.mhb-recalled-recipe .mhb-secondary-button { width:100%; }
  .mhb-meal-summary { align-items: stretch; flex-direction: column; }
  .mhb-meal-actions { display: grid; grid-template-columns: 1fr 1fr; justify-content: stretch; }
  .mhb-meal-actions .mhb-button,
  .mhb-meal-actions .mhb-secondary-button { width: 100%; }
  .mhb-meal-actions .mhb-text-button { grid-column: 1 / -1; justify-content: center; }
  .mhb-meal-form-actions { align-items: stretch; flex-direction: column; }
  .mhb-meal-form-actions .mhb-text-button { justify-content: center; }
	.mhb-saved-meal-row { grid-template-columns: 1fr; }
	.mhb-saved-meal-row .mhb-secondary-button { width: 100%; }
	.mhb-recovery-piece { align-items: stretch; flex-direction: column; }
	.mhb-recovery-piece .mhb-recovery-view { justify-content: center; width: 100%; }
	.mhb-organize-create { grid-template-columns: 1fr; }
  .mhb-button { width: 100%; }
	.mhb-entry-actions,
	.mhb-signup-form .mhb-button { width: 100%; }
	.mhb-secondary-button { width: 100%; }
  .mhb-text-button { justify-content: flex-start; }
	.mhb-tabs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: visible; padding: 0.65rem; }
	.mhb-kitchen-timers { margin: 0.75rem; }
	.mhb-service-rail { right:10px; bottom:max(10px, env(safe-area-inset-bottom)); left:10px; grid-template-columns:repeat(6,minmax(0,1fr)); box-sizing:border-box; width:auto; max-width:calc(100vw - 20px); overflow:hidden; }
	.mhb-service-rail-button { min-width:0; padding:.42rem .3rem; }
	.mhb-service-rail-button small { font-size:.52rem; letter-spacing:.045em; }
	.mhb-service-rail-button strong { font-size:.66rem; line-height:1.05; white-space:normal; }
	.mhb-timer-floater strong { font-size:.66rem; font-variant-numeric:tabular-nums; line-height:1.05; }
	.mhb-timer-floater .mhb-timer-rail-time { font-size:.76rem; }
	.mhb-timer-drawer { padding:8px; }
	.mhb-timer-header { align-items: stretch; flex-direction: column; }
	.mhb-timer-heading { min-height: 52px; }
	.mhb-timer-header .mhb-secondary-button { width: 100%; }
	.mhb-timer-maker { grid-template-columns: 1fr; }
	.mhb-timer-appliance { width: min(100%, 220px); }
	.mhb-timer-dial { width: min(182px, 72vw); }
	.mhb-timer-quick { align-items: stretch; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.mhb-timer-quick-button { width: 100%; padding-inline: 0.35rem; }
	.mhb-timer-custom { align-items: flex-start; flex-direction: column; }
	.mhb-timer-custom .mhb-button { width: 100%; }
	.mhb-timer-list { grid-template-columns: 1fr; }
	.mhb-timer-card { align-items: stretch; }
	.mhb-cook-mode-timer { float: none; margin: 0 0 1rem; }
	.mhb-tab { min-width: 0; padding: 0.8rem 0.55rem; line-height: 1.2; white-space: normal; }
	.mhb-front-door-panel { padding: 0.55rem; }
	.mhb-bistro-home-welcome { padding:1.35rem .65rem 1rem; }
	.mhb-bistro-home-actions { grid-template-columns:1fr; gap:.7rem; }
	.mhb-bistro-home-card { min-height:132px; padding:1rem; }
	.mhb-bistro-entrance { min-height: 560px; border-radius: 16px; }
	.mhb-bistro-entrance > img { object-position: 39% center; }
	.mhb-bistro-entrance-shade {
		background: linear-gradient(0deg, rgba(5, 8, 12, 0.82) 0, rgba(5, 8, 12, 0.18) 55%, transparent 78%);
	}
	.mhb-bistro-sign { left: 1rem; right: 1rem; bottom: 1rem; width: auto; padding: 1.15rem; }
	.mhb-bistro-sign h3 { font-size: clamp(2rem, 10vw, 3.2rem); }
	.mhb-arrival-grid { grid-template-columns: 1fr; }
	.mhb-arrival-actions { align-items: stretch; flex-direction: column; }
	.mhb-arrival-actions .mhb-secondary-button,
	.mhb-arrival-actions .mhb-button { width: 100%; }
	.mhb-returning-welcome { align-items: stretch; flex-direction: column; }
	.mhb-returning-welcome .mhb-arrival-actions { width: 100%; }
	.mhb-activity-grid,
	.mhb-tour-grid { grid-template-columns: 1fr; }
	.mhb-activity-card.is-photos,
	.mhb-activity-grid > .mhb-activity-card:last-child { grid-column: auto; grid-row: auto; }
	.mhb-recent-attachments { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.mhb-app-footer { align-items: flex-start; flex-direction: column; }
	.mhb-cookbook-card { align-items: stretch; flex-direction: column; }
	.mhb-cookbook-actions { justify-content: stretch; }
	.mhb-cookbook-actions .mhb-button,
	.mhb-cookbook-actions .mhb-secondary-button { width: 100%; }
	.mhb-cook-mode { padding: 0; }
	.mhb-cook-mode-card { min-height: 100dvh; border-width: 0; border-radius: 0; }
	.mhb-share-evening { padding: 0; place-items: start center; }
	.mhb-share-card { max-height: none; min-height: 100dvh; border-width: 0; border-radius: 0; }
	.mhb-share-paths,
	.mhb-share-files { align-items: stretch; flex-direction: column; }
	.mhb-share-paths .mhb-button,
	.mhb-share-paths .mhb-secondary-button,
	.mhb-share-files .mhb-file-button { width: 100%; justify-content: center; }
	.mhb-share-preview-photos,
	.mhb-community-preview-photos,
	.mhb-community-grid { grid-template-columns: 1fr; }
	.mhb-share-photo-choices { grid-template-columns: 1fr 1fr; }
	.mhb-share-history-row,
	.mhb-community-owner-edit { align-items: stretch; flex-direction: column; }
	.mhb-share-history-row button,
	.mhb-community-owner-edit .mhb-button { width: 100%; }
	.mhb-member-bar .mhb-member-links .mhb-logout-button { justify-content: center; }
}

.mhb-community-preview-article.mhb-publication-detail--official {
  color: var(--mhb-ink);
  background: #f7f9f2;
  border-color: #c8cfbc;
}
.mhb-publication-detail--official > .mhb-publication-date {
  display: block;
  margin: -.45rem 0 1rem;
  color: rgba(44, 33, 28, .68);
  font-size: .9rem;
}
.mhb-community-preview-article.mhb-publication-detail--official > .mhb-reader-controls {
  margin-top: 0;
}
.mhb-community-preview-article.mhb-publication-detail--official .mhb-journal-byline span {
  display: none;
}
.mhb-community-preview-article.mhb-publication-detail--official .mhb-journal-byline {
  margin-bottom: .35rem;
  padding-bottom: 0;
  border-bottom: 0;
}
.mhb-community-bistro-name {
  margin: 0 0 .35rem;
  padding: 0;
  color: var(--mhb-wine-dark);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.05rem;
  font-weight: 700;
}
.mhb-publication-dates {
  display: flex;
  flex-wrap: wrap;
  gap: .25rem 1rem;
  margin: 0 0 1.4rem;
  padding: 0 0 .8rem;
  color: rgba(44, 33, 28, .68);
  border-bottom: 1px solid var(--mhb-line);
  font-size: .82rem;
}
.mhb-community-preview-article.mhb-publication-detail--official .mhb-single-back {
  width: auto;
  margin: 1.5rem 0 0;
}

@media (max-width: 350px) {
	.mhb-member-links { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
	.mhb-timer-pointer { transition: none; }
}
.mhb-attachments { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin:.65rem 0; }
.mhb-file-button { border:1px solid #b98c67; border-radius:999px; cursor:pointer; font-weight:700; padding:7px 12px; }
.mhb-file-button:hover { background:#f7e7d2; }
.mhb-shell label.mhb-photo-batch-button { color:#fff; background:#6d2434; border-color:#6d2434; }
.mhb-shell label.mhb-photo-batch-button:hover,
.mhb-shell label.mhb-photo-batch-button:focus-within { color:#fff; background:#4b1722; }
.mhb-photo-batch-help { flex-basis:100%; margin:0.15rem 0 0; color:rgba(44,33,28,.72); font-size:.82rem; line-height:1.45; }
.mhb-attachment-chip { background:#f3e5d1; border-radius:10px; display:inline-block; margin:.45rem 0 0; padding:6px 9px; font-size:.86rem; }
.mhb-attachment-chip img { border-radius:8px; display:block; margin-bottom:6px; max-height:180px; max-width:100%; }
.mhb-file-tray { display:grid; flex-basis:100%; gap:8px; grid-template-columns:repeat(auto-fill,minmax(120px,1fr)); width:100%; }
.mhb-file-card { background:#fff8ee; border:1px solid #d4b797; border-radius:10px; overflow:hidden; padding:6px; position:relative; }
.mhb-file-card img { aspect-ratio:4/3; border-radius:7px; display:block; object-fit:cover; width:100%; }
.mhb-file-card span { display:block; font-size:.78rem; overflow:hidden; padding:5px 20px 0 2px; text-overflow:ellipsis; white-space:nowrap; }
.mhb-file-card button { background:#6f3028; border:0; border-radius:50%; color:#fff; cursor:pointer; height:24px; position:absolute; right:5px; top:5px; width:24px; }
.mhb-file-card button:hover,.mhb-file-card button:focus { background:#3f151e; outline:2px solid #fff; outline-offset:-4px; }
.mhb-live-button.is-danger { background:#8a2f28; color:#fff; }
.mhb-live-line.is-floating-live { position:fixed; z-index:100008; right:auto; bottom:calc(max(14px,env(safe-area-inset-bottom)) + 88px); left:50%; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:.42rem; box-sizing:border-box; width:min(760px,calc(100vw - 28px)); margin:0; padding:.55rem; background:rgba(255,248,232,.98); border:2px solid #d7ad64; border-radius:17px; box-shadow:0 14px 38px rgba(39,20,18,.4); transform:translateX(-50%); }
.mhb-live-line.is-floating-live .mhb-live-button { min-width:0; min-height:44px; padding:.55rem .45rem; font-size:.76rem; line-height:1.12; white-space:normal; }
.mhb-live-line.is-floating-live .mhb-live-button.is-live:disabled { opacity:1; cursor:default; }
.mhb-live-line.is-floating-live .mhb-live-state { grid-column:1 / -1; overflow:hidden; margin:0; color:#4c352b; font-size:.73rem; font-weight:750; line-height:1.25; text-align:center; text-overflow:ellipsis; white-space:nowrap; }
.mhb-live-line.is-floating-live #mhb-live-end { border:2px solid #f0cf8a; box-shadow:none; }
.mhb-live-line.is-floating-live #mhb-live-end:hover,.mhb-live-line.is-floating-live #mhb-live-end:focus { background:#641f1a; outline:3px solid rgba(230,193,123,.48); outline-offset:2px; }
.mhb-hands-free-active .mhb-help-launcher { bottom:calc(max(14px,env(safe-area-inset-bottom)) + 218px); }
body.mhb-hands-free-active { padding-bottom:calc(292px + env(safe-area-inset-bottom)) !important; }
@media (max-width:720px) {
	.mhb-live-line.is-floating-live { right:10px; bottom:calc(max(10px,env(safe-area-inset-bottom)) + 82px); left:10px; width:auto; transform:none; }
	.mhb-live-line.is-floating-live .mhb-live-button { min-height:42px; padding:.45rem .25rem; font-size:.66rem; }
	.mhb-live-line.is-floating-live .mhb-live-state { font-size:.67rem; }
}
.mhb-help-live-line { margin:.5rem 0 0; }
.mhb-help-live-line.is-floating-live { z-index:100040; right:28px; bottom:28px; left:auto; width:min(492px,calc(100vw - 56px)); transform:none; }
body.mhb-help-hands-free-active .mhb-help-card { padding-bottom:190px; }
@media (max-width:720px) {
	.mhb-help-live-line.is-floating-live { right:10px; bottom:calc(max(10px,env(safe-area-inset-bottom))); left:10px; width:auto; }
	body.mhb-help-hands-free-active .mhb-help-card { padding-bottom:185px; }
}
.mhb-dictation { align-items:center; display:flex; flex-wrap:wrap; gap:8px; margin:.5rem 0; }
.mhb-reader-controls { align-items:center; background:#f6ead7; border:1px solid #cda982; border-radius:14px; display:flex; flex-wrap:wrap; gap:10px 14px; margin:1rem 0 1.35rem; padding:10px 12px; }
.mhb-reader-buttons { display:flex; flex-wrap:wrap; gap:8px; }
.mhb-reader-controls button { align-items:center; background:#fffaf1; border:1px solid #7b233b; border-radius:999px; color:#5a1729; cursor:pointer; display:inline-flex; font:800 .88rem/1.15 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; justify-content:center; min-height:44px; padding:9px 14px; }
.mhb-reader-controls .mhb-reader-listen { background:#7b233b; color:#fff; }
.mhb-reader-controls button:hover,.mhb-reader-controls button:focus { box-shadow:0 0 0 3px rgba(199,161,97,.38); outline:none; }
.mhb-reader-controls button:disabled { cursor:default; opacity:.48; }
.mhb-reader-state { color:#674b3e; flex:1 1 180px; font-size:.82rem; line-height:1.35; }
.mhb-reader-controls.is-playing { border-color:#7b233b; box-shadow:0 0 0 3px rgba(123,35,59,.08); }
.mhb-reader-controls.is-paused { background:#fff5dc; }
.mhb-reader-controls.is-loading .mhb-reader-listen::before { animation:mhb-spin .85s linear infinite; border:2px solid rgba(255,255,255,.4); border-radius:50%; border-top-color:#fff; content:""; height:13px; margin-right:7px; width:13px; }
.mhb-dictation-panel { align-items:center; background:linear-gradient(145deg,#fffaf0,#f5e3c8); border:2px solid #8b5260; border-radius:18px; box-shadow:inset 0 0 0 3px rgba(255,255,255,.58); display:grid; gap:10px; grid-template-columns:minmax(0,1fr) auto; margin:.65rem 0; padding:12px; }
.mhb-dictation-panel[hidden] { display:none !important; }
.mhb-dictation-wave-wrap { align-items:center; background:#fffdf8; border:1px solid #d7bca1; border-radius:14px; display:flex; min-height:82px; overflow:hidden; padding:5px 8px; }
.mhb-dictation-wave-wrap canvas { display:block; height:70px; width:100%; }
.mhb-dictation-send { align-items:center; background:#7b233b; border:3px solid #fff7e8; border-radius:999px; box-shadow:0 0 0 2px #7b233b,0 5px 14px rgba(68,21,33,.24); color:#fff; cursor:pointer; display:flex; font:800 .9rem/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; height:50px; justify-content:center; min-width:78px; padding:0 16px; }
.mhb-dictation-send:hover,.mhb-dictation-send:focus { background:#541526; outline:3px solid #c7a161; outline-offset:3px; }
.mhb-dictation-send:disabled { cursor:wait; opacity:.48; }
.mhb-dictation-panel .mhb-small { grid-column:1 / -1; margin:0; min-height:1.35em; text-align:center; }
.mhb-dictation-panel.is-committing .mhb-dictation-wave-wrap { opacity:.58; }
.mhb-dictation-panel.is-committing .mhb-dictation-send { animation:mhb-dictation-pulse 1s ease-in-out infinite; }
@keyframes mhb-dictation-pulse { 50% { transform:scale(.92); } }
.mhb-thinking { align-items:center; display:flex; gap:10px; }
.mhb-spinner { animation:mhb-spin .85s linear infinite; border:3px solid rgba(111,48,40,.2); border-radius:50%; border-top-color:#6f3028; display:inline-block; height:20px; width:20px; }
@keyframes mhb-spin { to { transform:rotate(360deg); } }
#mhb-file-state { background:#f7ead7; border-radius:10px; cursor:pointer; display:block; flex-basis:100%; font-weight:700; min-height:1.25rem; padding:8px 10px; }
#mhb-file-state:empty { display:none; }

@media (max-width:700px) {
	.mhb-message-actions { grid-template-columns:1fr 1fr; }
	.mhb-message-autoplay { align-self:stretch; grid-column:1 / -1; min-height:50px; width:100%; }
	.mhb-voice-controls { display:grid; grid-template-columns:1fr 1fr; }
	.mhb-reply-tools-label,.mhb-voice-controls .mhb-voice-button:first-of-type { grid-column:1 / -1; }
	.mhb-reader-controls { align-items:stretch; flex-direction:column; }
	.mhb-reader-buttons { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
	.mhb-reader-buttons > button:last-child:nth-child(odd) { grid-column:1 / -1; }
	.mhb-reader-controls button { min-width:0; padding-inline:8px; }
	.mhb-reader-state { flex-basis:auto; text-align:center; }
	.mhb-dictation-panel { grid-template-columns:minmax(0,1fr) 54px; padding:10px; }
	.mhb-dictation-wave-wrap { min-height:76px; }
	.mhb-dictation-wave-wrap canvas { height:64px; }
	.mhb-dictation-send { height:48px; min-width:72px; padding:0 13px; }
}

/* Meal Calendar */
.mhb-calendar-panel { background:linear-gradient(150deg,#fffaf0,#f4e4cb); }
.mhb-calendar-heading { border-bottom:1px solid #d8bc91; margin-bottom:14px; }
.mhb-calendar-toolbar { align-items:center; background:#fffaf2; border:1px solid #d4b887; border-radius:14px; display:grid; gap:12px; grid-template-columns:auto 1fr auto; margin-bottom:16px; padding:12px; }
.mhb-calendar-toolbar > div { display:grid; gap:3px; text-align:center; }
.mhb-calendar-toolbar strong { color:#5f1f33; font-family:Georgia,"Times New Roman",serif; font-size:1.12rem; }
.mhb-calendar-form { background:#fff; border:2px solid #9c6c3d; border-radius:16px; box-shadow:0 10px 28px rgba(74,42,24,.13); margin:0 0 18px; padding:16px; }
.mhb-calendar-form-heading { align-items:start; display:flex; gap:12px; justify-content:space-between; }
.mhb-calendar-form-heading h4 { color:#5f1f33; font-family:Georgia,"Times New Roman",serif; font-size:1.35rem; margin:.1rem 0 .8rem; }
.mhb-calendar-fields { display:grid; gap:12px; grid-template-columns:1.2fr 1fr .7fr; }
.mhb-calendar-fields label { color:#52392f; display:grid; font-size:.8rem; font-weight:850; gap:5px; }
.mhb-calendar-fields input,.mhb-calendar-fields select,.mhb-calendar-fields textarea { background:#fffdf8; border:1px solid #b99d78; border-radius:9px; box-sizing:border-box; color:#33251f; font:inherit; min-height:44px; padding:9px 10px; width:100%; }
.mhb-calendar-fields textarea { resize:vertical; }
.mhb-calendar-wide { grid-column:1/-1; }
.mhb-calendar-days { display:grid; gap:12px; grid-template-columns:repeat(2,minmax(0,1fr)); }
.mhb-calendar-day { background:rgba(255,253,247,.9); border:1px solid #d6bc94; border-left:6px solid #c6a166; border-radius:14px; color:#362820; min-width:0; padding:14px; }
.mhb-calendar-day.is-today { border-color:#7b2941; border-left-width:8px; box-shadow:0 8px 22px rgba(92,28,48,.12); }
.mhb-calendar-day.has-plan { background:#fffaf0; }
.mhb-calendar-day-heading { align-items:start; border-bottom:1px solid #e6d5bb; display:flex; justify-content:space-between; margin-bottom:10px; padding-bottom:8px; }
.mhb-calendar-day-heading div { display:grid; }
.mhb-calendar-day-heading span { color:#7b2941; font-size:.74rem; font-weight:900; letter-spacing:.11em; text-transform:uppercase; }
.mhb-calendar-day-heading strong { font-family:Georgia,"Times New Roman",serif; font-size:1.15rem; }
.mhb-calendar-day-heading em { background:#7b2941; border-radius:999px; color:#fff; font-size:.72rem; font-style:normal; font-weight:900; padding:4px 8px; }
.mhb-calendar-day h4 { color:#5f1f33; font-family:Georgia,"Times New Roman",serif; font-size:1.28rem; line-height:1.15; margin:.2rem 0 .65rem; overflow-wrap:anywhere; }
.mhb-calendar-empty { color:#80685b; font-style:italic; min-height:2rem; }
.mhb-calendar-note { background:#f4e8d4; border-radius:8px; line-height:1.42; margin:.5rem 0; overflow-wrap:anywhere; padding:8px 10px; white-space:pre-line; }
.mhb-calendar-note strong { color:#6b2437; display:block; font-size:.72rem; letter-spacing:.08em; text-transform:uppercase; }
.mhb-calendar-actions { align-items:center; display:flex; flex-wrap:wrap; gap:9px; margin-top:12px; }
.mhb-calendar-actions .is-danger { color:#8a2f28; }

@media (max-width:700px) {
	.mhb-calendar-toolbar { grid-template-columns:1fr 1fr; }
	.mhb-calendar-toolbar > div { grid-column:1/-1; grid-row:1; }
	.mhb-calendar-fields,.mhb-calendar-days { grid-template-columns:1fr; }
	.mhb-calendar-wide { grid-column:auto; }
	.mhb-calendar-actions { align-items:stretch; display:grid; grid-template-columns:1fr 1fr; }
	.mhb-calendar-actions .mhb-button { grid-column:1/-1; width:100%; }
	.mhb-calendar-form { padding:13px; }
}

.mhb-restaurant-spotlight { background:linear-gradient(150deg,#fffdf7,#f7ead4); border-color:#b78343; }
.mhb-check-arrival { background:linear-gradient(145deg,#4b1227,#7c2d47 58%,#a26743); border:1px solid #c49658; border-radius:18px; box-shadow:0 16px 36px rgba(64,24,32,.24); color:#fff9ed; overflow:hidden; padding:clamp(18px,4vw,34px); position:relative; }
.mhb-check-arrival::after { border:1px solid rgba(255,244,221,.28); border-radius:50%; content:""; height:180px; position:absolute; right:-76px; top:-88px; width:180px; }
.mhb-check-arrival-top { align-items:center; display:flex; gap:12px; justify-content:space-between; position:relative; z-index:1; }
.mhb-check-arrival-top .mhb-eyebrow { color:#f8dfb2; margin:0; }
.mhb-check-arrival-top > span { background:rgba(255,255,255,.13); border:1px solid rgba(255,255,255,.25); border-radius:999px; font-size:.68rem; font-weight:900; letter-spacing:.05em; padding:6px 9px; text-transform:uppercase; }
.mhb-check-arrival-question { margin:clamp(24px,5vw,46px) 0 20px; max-width:620px; position:relative; z-index:1; }
.mhb-check-arrival-question small { color:#f2d6b0; display:block; font-size:.95rem; font-weight:800; }
.mhb-check-arrival-question h3 { color:#fffaf1; font-family:Georgia,"Times New Roman",serif; font-size:clamp(2rem,7vw,4.25rem); line-height:.98; margin:.35rem 0; text-wrap:balance; }
.mhb-check-arrival-list { display:grid; gap:9px; max-width:680px; position:relative; z-index:1; }
.mhb-check-arrival-list > h4 { color:#fff9ed; font-size:.9rem; margin:0 0 2px; }
.mhb-check-arrival-choice { align-items:center; background:#fffaf0; border:1px solid #e3c28f; border-radius:14px; box-shadow:0 6px 16px rgba(47,12,24,.18); color:#3e2a24; cursor:pointer; display:grid; gap:10px; grid-template-columns:minmax(0,1fr) auto auto; min-height:72px; padding:13px 15px; text-align:left; width:100%; }
.mhb-check-arrival-choice:hover,.mhb-check-arrival-choice:focus-visible { background:#fff; border-color:#f0cf93; box-shadow:0 9px 22px rgba(47,12,24,.28); transform:translateY(-1px); }
.mhb-check-arrival-choice-main { display:grid; gap:4px; min-width:0; }
.mhb-check-arrival-choice-main strong { color:#50162a; font-family:Georgia,"Times New Roman",serif; font-size:1.08rem; line-height:1.15; overflow-wrap:anywhere; }
.mhb-check-arrival-choice-main small { color:#725749; font-size:.73rem; font-weight:750; }
.mhb-check-arrival-choice-status { background:#eee0cc; border-radius:999px; color:#684030; font-size:.65rem; font-weight:900; padding:5px 8px; text-transform:uppercase; white-space:nowrap; }
.mhb-check-arrival-choice-status.is-ready { background:#6b1f35; color:#fff9ed; }
.mhb-check-arrival-choice-arrow { color:#7f4050; font-size:1.75rem; font-weight:500; line-height:1; }
.mhb-check-arrival-picker { color:#fff9ed!important; font-size:.76rem!important; margin-bottom:16px; max-width:680px; position:relative; z-index:1; }
.mhb-check-arrival-picker select { background:#fffaf0!important; border:2px solid #d8af72!important; color:#421426!important; font-size:1rem!important; font-weight:850; min-height:55px!important; }
.mhb-check-arrival-meal { background:#fffaf0; border:1px solid #e3c28f; border-radius:16px; box-shadow:0 10px 24px rgba(47,12,24,.22); color:#3e2a24; max-width:680px; padding:clamp(16px,3vw,25px); position:relative; z-index:1; }
.mhb-check-arrival-meal .mhb-eyebrow { color:#8a3a48; margin:0 0 .25rem; }
.mhb-check-arrival-meal h4 { color:#50162a; font-family:Georgia,"Times New Roman",serif; font-size:clamp(1.55rem,4vw,2.35rem); line-height:1.08; margin:.1rem 0 .65rem; }
.mhb-check-arrival-meal > p:last-of-type { color:#604b40; line-height:1.45; }
.mhb-check-arrival-meta { display:flex; flex-wrap:wrap; gap:6px; }
.mhb-check-arrival-meta span { background:#f0e1c9; border-radius:999px; color:#684030; font-size:.72rem; font-weight:800; padding:5px 8px; }
.mhb-check-arrival-actions { display:flex; flex-wrap:wrap; gap:9px; margin-top:17px; }
.mhb-check-arrival-actions button { min-height:48px; }
.mhb-check-arrival-foot { color:#f1d9ba; font-size:.75rem; margin:15px 2px 0; position:relative; z-index:1; }
.mhb-check-back { background:transparent; border:0; color:#6b1f35; cursor:pointer; font:inherit; font-size:.8rem; font-weight:850; margin:0 0 10px; padding:2px 0; text-decoration:underline; text-underline-offset:3px; }
.mhb-check-entry { background:linear-gradient(145deg,#fffaf0,#f1dfc4); border:2px solid #b78343; border-radius:16px; box-shadow:0 8px 22px rgba(79,38,27,.1); display:grid; gap:12px; padding:16px; }
.mhb-check-entry-heading { align-items:center; display:flex; gap:12px; justify-content:space-between; }
.mhb-check-entry-heading h4 { color:#4f1728; font-family:Georgia,"Times New Roman",serif; font-size:clamp(1.35rem,3vw,1.8rem); margin:.1rem 0; }
.mhb-check-entry-status { background:#6b1f35; border-radius:999px; color:#fff9ec; font-size:.72rem; font-weight:900; letter-spacing:.04em; padding:6px 10px; text-transform:uppercase; }
.mhb-check-meal-picker { color:#4f1728!important; font-size:.9rem!important; }
.mhb-check-meal-picker select { border:2px solid #8e5863!important; font-size:1rem!important; font-weight:800; min-height:54px!important; }
.mhb-check-entry-essentials { display:grid; gap:10px; grid-template-columns:minmax(120px,.55fr) minmax(220px,2fr); }
.mhb-check-quick-facts { display:flex; flex-wrap:wrap; gap:6px; }
.mhb-check-quick-facts span { background:rgba(255,255,255,.72); border:1px solid #d8bc96; border-radius:999px; color:#5e4438; font-size:.73rem; font-weight:750; padding:5px 8px; }
.mhb-check-primary-action { align-items:center; display:flex; flex-wrap:wrap; gap:8px 14px; }
.mhb-check-primary-action .mhb-small { flex:1 1 240px; margin:0; }
.mhb-check-primary-action.is-bottom { grid-column:1/-1; justify-content:flex-end; padding-top:4px; }
.mhb-check-ready-note { margin:0; }
.mhb-check-adjustments { background:#fffaf1; border:1px solid #c8a77d; border-radius:14px; margin-top:14px; overflow:hidden; }
.mhb-check-adjustments > summary { align-items:center; color:#5f1d2f; cursor:pointer; display:flex; flex-wrap:wrap; gap:5px 16px; justify-content:space-between; padding:13px 15px; }
.mhb-check-adjustments > summary strong { font-family:Georgia,"Times New Roman",serif; font-size:1.02rem; }
.mhb-check-adjustments > summary span { color:#725749; font-size:.76rem; font-weight:750; }
.mhb-check-adjustments[open] > summary { background:#f2e2cc; border-bottom:1px solid #d8bea0; }
.mhb-check-adjustments > .mhb-restaurant-form { grid-template-columns:repeat(2,minmax(0,1fr)); padding:14px; }
.mhb-check-adjustments .mhb-cost-beverages,.mhb-check-adjustments .mhb-course-check,.mhb-check-adjustments .mhb-night-out,.mhb-check-adjustments .mhb-restaurant-consult { grid-column:1/-1; }
.mhb-restaurant-awaiting { background:#fffaf0; border:1px dashed #b58b5e; border-radius:14px; margin:14px 0; padding:16px; }
.mhb-restaurant-awaiting.is-working { align-items:center; background:#fff4df; border-style:solid; box-shadow:0 7px 22px rgba(90,46,31,.12); display:grid; gap:14px; grid-template-columns:auto minmax(0,1fr); min-height:92px; }
.mhb-restaurant-awaiting.is-working .mhb-spinner { align-self:center; border-width:4px; height:34px; margin:0; width:34px; }
.mhb-restaurant-awaiting.is-error { background:#fff1ea; border-color:#9c3f2f; }
.mhb-restaurant-awaiting.is-error .mhb-eyebrow { color:#7a2941; }
.mhb-restaurant-consult { background:#fff8eb; border:1px solid #c79a61; border-radius:14px; display:grid; gap:10px; grid-column:1/-1; grid-template-columns:minmax(0,2fr) minmax(210px,1fr); padding:14px; }
.mhb-restaurant-consult h5 { color:#5b1d30; font-family:Georgia,"Times New Roman",serif; font-size:1.15rem; margin:.15rem 0 .35rem; }
.mhb-restaurant-consult .mhb-restaurant-request,.mhb-restaurant-consult .mhb-restaurant-dictation-tools,.mhb-restaurant-consult .mhb-dictation-panel,.mhb-restaurant-consult .mhb-restaurant-guidance { grid-column:1/-1; }
.mhb-restaurant-dictation-tools { align-items:center; display:flex; flex-wrap:wrap; gap:10px; }
.mhb-restaurant-dictation-tools .mhb-small { margin:0; }
.mhb-restaurant-guidance { display:flex; flex-wrap:wrap; gap:7px; }
.mhb-restaurant-guidance button { background:#fff; border:1px solid #8b5361; border-radius:999px; color:#6b1f35; cursor:pointer; font-size:.78rem; font-weight:800; min-height:36px; padding:7px 11px; }
.mhb-restaurant-guidance button:hover,.mhb-restaurant-guidance button:focus { background:#f8e4d6; outline:2px solid rgba(107,31,53,.18); }
.mhb-restaurant-discussion { background:#fffdf8; border:1px solid #dcc3a3; border-radius:12px; display:grid; gap:9px; grid-column:1/-1; max-height:420px; overflow:auto; padding:11px; }
.mhb-check-turn { border-radius:11px; max-width:92%; padding:9px 11px; }
.mhb-check-turn strong { color:#6b1f35; display:block; font-size:.78rem; margin-bottom:3px; }
.mhb-check-turn p { margin:0; white-space:pre-wrap; }
.mhb-check-turn.is-member { background:#f3e5ce; justify-self:end; }
.mhb-check-turn.is-big-daddy { background:#f7f1e8; border-left:4px solid #7b233b; justify-self:start; }
.mhb-check-reply-listen { background:transparent; border:0; color:#6b1f35; cursor:pointer; font-size:.76rem; font-weight:850; margin-top:7px; padding:2px 0; text-decoration:underline; text-underline-offset:2px; }
.mhb-check-discussion-actions { display:flex; flex-wrap:wrap; gap:9px; grid-column:1/-1; }
.mhb-check-discussion-actions button { align-items:center; display:inline-flex; gap:8px; justify-content:center; }
.mhb-check-discussion-actions .mhb-spinner { border-color:rgba(255,255,255,.42); border-top-color:#fff; height:17px; width:17px; }
.mhb-check-autoplay { grid-column:1/-1; justify-self:start; }
.mhb-check-playback { align-items:center; background:#f4eadc; border:1px solid #c8a77d; border-radius:13px; display:flex; flex-wrap:wrap; gap:7px; margin:12px 0; max-width:100%; min-width:0; padding:10px; }
.mhb-check-playback .mhb-small { flex:1 1 190px; margin:0; }
body.mhb-check-reader-active .mhb-shell,body.mhb-check-reader-active .mhb-check-please { overflow:visible; }
.mhb-check-playback.is-active { position:sticky; z-index:100020; top:max(8px,env(safe-area-inset-top)); display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); box-shadow:0 10px 28px rgba(54,24,31,.3); }
.mhb-check-playback.is-active #mhb-check-listen { display:none; }
.mhb-check-playback.is-active #mhb-check-playback-state { grid-column:1/-1; grid-row:1; color:#4f1728; font-weight:850; line-height:1.3; text-align:center; }
.mhb-check-playback.is-active #mhb-check-pause { grid-column:1; grid-row:2; }
.mhb-check-playback.is-active #mhb-check-resume { grid-column:2; grid-row:2; }
.mhb-check-playback.is-active #mhb-check-stop { grid-column:3; grid-row:2; }
.mhb-word-on-street { background:linear-gradient(145deg,#f4eadc,#fffaf0); border:1px solid #b98b55; border-radius:15px; margin:18px 0; max-width:100%; min-width:0; padding:15px; }
.mhb-word-on-street h5 { margin-top:.1rem; }
.mhb-word-on-street.is-awaiting { border-style:dashed; }
.mhb-word-on-street-head { align-items:flex-start; display:flex; flex-wrap:wrap; gap:10px 16px; justify-content:space-between; }
.mhb-word-on-street-head > div { flex:1 1 250px; }
.mhb-word-on-street-head .mhb-secondary-button { flex:0 0 auto; }
.mhb-review-overview { color:#3d2921; font-family:Georgia,"Times New Roman",serif; font-size:1.03rem; line-height:1.55; }
.mhb-review-grid { display:grid; gap:10px; margin:12px 0; }
.mhb-review-signal { background:#fffdf8; border:1px solid #dbc5a9; border-left:5px solid #a67b48; border-radius:11px; padding:11px 12px; }
.mhb-review-signal.is-praise { border-left-color:#66804e; }
.mhb-review-signal.is-complaint { border-left-color:#9b4f47; }
.mhb-review-signal > div { align-items:baseline; display:flex; flex-wrap:wrap; gap:7px 12px; }
.mhb-review-signal > div span { color:#73533f; font-size:.7rem; font-weight:900; letter-spacing:.05em; text-transform:uppercase; }
.mhb-review-signal h6 { color:#5b1d30; font-family:Georgia,"Times New Roman",serif; font-size:1rem; margin:.45rem 0 .3rem; }
.mhb-review-signal p { margin:.25rem 0 .45rem; }
.mhb-review-signal a { color:#6b1f35; font-size:.78rem; font-weight:850; }
.mhb-review-listen,.mhb-line-listen { background:transparent; border:0; color:#6b1f35; cursor:pointer; font-size:.76rem; font-weight:850; padding:2px 0; text-decoration:underline; text-underline-offset:2px; }
.mhb-review-listen:hover,.mhb-review-listen:focus,.mhb-line-listen:hover,.mhb-line-listen:focus { color:#40101f; outline:2px solid rgba(107,31,53,.15); outline-offset:2px; }
.mhb-review-links { align-items:center; display:flex; flex-wrap:wrap; gap:7px 14px; margin-top:8px; }
.mhb-review-links a { background:#f4eadc; border:1px solid #ceb18e; border-radius:999px; padding:6px 9px; text-decoration:none; }
.mhb-review-links a:hover,.mhb-review-links a:focus { background:#ead7bd; outline:2px solid rgba(107,31,53,.16); }
.mhb-review-signal .mhb-review-match { background:#eee1ce; border:1px solid #cdb394; border-radius:999px; color:#5c4132; padding:3px 7px; }
.mhb-review-signal .mhb-review-match.is-exact_dish { background:#e4edda; border-color:#9eb484; color:#40572f; }
.mhb-review-signal .mhb-review-match.is-similar_local_dish { background:#f5e8c9; border-color:#d6b66e; color:#674d16; }
.mhb-review-connection { background:#f7efe3; border-radius:8px; color:#3d2921; padding:8px 9px; }
.mhb-review-connection summary { color:#6b1f35; cursor:pointer; font-size:.78rem; font-weight:850; }
.mhb-review-connection p { margin:.55rem 0 0; }
.mhb-review-takeaway { background:#e7efdd; border-left:4px solid #68824f; border-radius:8px; color:#314126; padding:9px 10px; }
.mhb-review-source-note { color:#655248; margin-top:7px; }
.mhb-comparison-request { background:#fff4df; border-left:4px solid #d4a249; border-radius:8px; color:#35231e; margin:14px 0; padding:10px 12px; }
.mhb-comparison-request p:last-child { margin-bottom:0; }
.mhb-restaurant-headline { display:block; font-family:Georgia,"Times New Roman",serif; font-size:clamp(1.65rem,5vw,2.45rem); line-height:1.05; margin:.25rem 0 .45rem; }
.mhb-restaurant-service { display:block; font-weight:800; margin-top:5px; }
.mhb-restaurant-result h5 { color:#5b1d30; font-family:Georgia,"Times New Roman",serif; font-size:1.15rem; margin:1.15rem 0 .45rem; }
.mhb-restaurant-sourced-lines > li { align-items:flex-start; gap:14px; }
.mhb-restaurant-sourced-lines > li > div { display:grid; flex:1 1 auto; gap:5px; min-width:0; }
.mhb-restaurant-sourced-lines .mhb-restaurant-price-stack { display:grid; flex:0 0 auto; gap:2px; min-width:max-content; text-align:right; }
.mhb-restaurant-price-stack strong { white-space:nowrap; }
.mhb-restaurant-price-stack small { font-size:.76rem; white-space:nowrap; }
.mhb-restaurant-evidence { background:rgba(255,255,255,.62); border-left:3px solid #ba8b4d; border-radius:6px; box-sizing:border-box; display:grid; gap:3px; max-width:100%; min-width:0; overflow:hidden; padding:7px 9px; width:100%; }
.mhb-restaurant-evidence > span { color:#7a2941; font-size:.68rem; font-weight:900; letter-spacing:.07em; text-transform:uppercase; }
.mhb-restaurant-evidence > span,.mhb-restaurant-evidence > strong,.mhb-restaurant-evidence > small,.mhb-restaurant-evidence > p,.mhb-restaurant-evidence > div { max-width:100%; min-width:0; overflow-wrap:anywhere; }
.mhb-restaurant-evidence > a { color:#6b1f35; font-size:.78rem; font-weight:850; max-width:100%; overflow-wrap:anywhere; width:max-content; }
.mhb-evidence-actions { align-items:center; display:flex; flex-wrap:wrap; gap:7px 14px; margin-top:3px; }
.mhb-evidence-actions > a { color:#6b1f35; font-size:.78rem; font-weight:850; max-width:100%; overflow-wrap:anywhere; width:max-content; }
.mhb-estimate-explanation-head { align-items:center; display:flex; flex-wrap:wrap; gap:8px 16px; justify-content:space-between; }
.mhb-estimate-explanation-head .mhb-eyebrow { margin:0; }
@media (max-width:640px) { .mhb-restaurant-sourced-lines > li { align-items:stretch; flex-direction:column; min-width:0; } .mhb-restaurant-sourced-lines .mhb-restaurant-price-stack { align-self:flex-end; min-width:0; } .mhb-restaurant-consult { grid-template-columns:minmax(0,1fr); min-width:0; } .mhb-check-discussion-actions { display:grid; grid-template-columns:minmax(0,1fr); } .mhb-check-turn { max-width:96%; min-width:0; } .mhb-check-playback { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); } .mhb-check-playback button { min-width:0; overflow-wrap:anywhere; white-space:normal; } .mhb-check-playback #mhb-check-listen,.mhb-check-playback .mhb-small { grid-column:1/-1; } .mhb-word-on-street-head .mhb-secondary-button { width:100%; } }

/* On phones, keep active narration controls tied to the visible screen instead
   of the restaurant-result container. Android otherwise drops the sticky bar
   as the member scrolls from the computed check into the meal controls. */
@media (max-width:640px) {
	body.mhb-check-reader-active .mhb-check-playback.is-active {
		box-sizing:border-box;
		left:var(--mhb-visible-center,50%);
		margin:0;
		max-width:calc(100vw - 16px);
		position:fixed;
		right:auto;
		top:calc(var(--mhb-visible-top,0px) + max(6px,env(safe-area-inset-top)));
		transform:translateX(-50%);
		width:min(560px,calc(var(--mhb-visible-width,100vw) - 16px));
		z-index:100060;
	}
}

/* Keep the last turn readable above the fixed Floating Menu on portrait devices. */
@media (max-width:900px) {
	#mhb-app #mhb-history,
	.mhb-coupon-lady-history,
	.mhb-help-history,
	.mhb-help-card.is-reading .mhb-help-history {
		box-sizing:border-box;
		padding-bottom:calc(112px + env(safe-area-inset-bottom));
		scroll-padding-bottom:calc(112px + env(safe-area-inset-bottom));
	}
	.mhb-cook-mode-content { padding-bottom:calc(112px + env(safe-area-inset-bottom)); }
}

@media (prefers-reduced-motion:reduce) {
	.mhb-dictation-panel.is-committing .mhb-dictation-send { animation:none; }
}

.mhb-check-please { background:linear-gradient(145deg,#fffaf0,#f4e5cf); border:1px solid #c8a47d; border-radius:14px; margin-top:10px; max-width:100%; min-width:0; overflow:hidden; }
.mhb-check-please > summary { color:#5f1d2f; cursor:pointer; font-family:Georgia,"Times New Roman",serif; font-size:1.03rem; font-weight:800; padding:11px 13px; }
.mhb-check-please > p { margin:0; padding:0 13px 11px; }
#mhb-check-please-content { display:grid; gap:14px; grid-template-columns:minmax(0,1fr); max-width:100%; min-width:0; padding:2px 13px 14px; }
.mhb-monthly-check { background:#5b1830; border-radius:14px; color:#fffaf1; display:grid; gap:5px; grid-template-columns:repeat(3,minmax(0,1fr)); padding:14px 16px; }
.mhb-monthly-check strong,.mhb-monthly-check small { grid-column:1/-1; }
.mhb-monthly-check span { background:rgba(255,255,255,.1); border-radius:9px; font-size:.84rem; padding:8px; }
.mhb-monthly-check small { color:#edd9bd; }
.mhb-cost-section { background:#fffdf8; border:1px solid #d8bea0; border-radius:14px; max-width:100%; min-width:0; padding:14px; }
.mhb-cost-precision > summary { align-items:center; color:#6d2434; cursor:pointer; display:flex; flex-wrap:wrap; gap:6px 16px; justify-content:space-between; }
.mhb-cost-precision > summary strong { font-family:Georgia,"Times New Roman",serif; font-size:1.02rem; }
.mhb-cost-precision > summary span { color:#806657; font-size:.78rem; font-weight:700; }
.mhb-cost-precision-body { margin-top:14px; }
.mhb-cost-heading { align-items:end; display:flex; flex-wrap:wrap; gap:12px; justify-content:space-between; margin-bottom:10px; }
.mhb-cost-heading h4,.mhb-cost-heading p { margin:.1rem 0; }
.mhb-cost-heading label { min-width:230px; }
.mhb-cost-section label { color:#49352d; display:grid; font-size:.8rem; font-weight:800; gap:4px; }
.mhb-cost-section input,.mhb-cost-section select,.mhb-cost-section textarea { background:#fff; border:1px solid #bba184; border-radius:8px; box-sizing:border-box; color:#2e231f; font:inherit; min-height:42px; padding:8px 9px; width:100%; }
.mhb-cost-section textarea { min-height:76px; resize:vertical; }
.mhb-receipt-reader { align-items:center; display:flex; flex-wrap:wrap; gap:8px; }
.mhb-receipt-reader .mhb-small { flex:1 1 160px; }
.mhb-receipt-list { color:#684d40; font-size:.82rem; margin:.65rem 0; padding-left:1.1rem; }
.mhb-price-entry { background:#f8ead7; border-radius:10px; margin-top:10px; padding:8px 10px; }
.mhb-price-entry summary { color:#6d2434; cursor:pointer; font-weight:800; }
.mhb-price-form { align-items:end; display:grid; gap:8px; grid-template-columns:2fr 1fr 1fr 1fr 1.4fr 1.2fr; margin-top:9px; }
.mhb-price-form button { min-height:42px; }
.mhb-price-list { border-top:1px solid #e0cbb2; margin-top:12px; }
.mhb-price-row { align-items:center; border-bottom:1px solid #ead8c3; display:flex; gap:10px; justify-content:space-between; padding:8px 1px; }
.mhb-price-row div { display:grid; gap:2px; }
.mhb-price-row small { color:#72574a; }
.mhb-cost-people { max-width:150px; }
#mhb-cost-lines { display:grid; gap:9px; margin:11px 0; }
.mhb-check-summary { background:#f8eee0; border:1px solid #dfc7aa; border-radius:12px; display:grid; gap:8px; margin:11px 0; padding:11px 12px; }
.mhb-check-summary > p { margin:0; }
.mhb-check-summary-list { display:grid; gap:5px; list-style:none; margin:0; padding:0; }
.mhb-check-summary-list li { align-items:start; display:flex; gap:12px; justify-content:space-between; }
.mhb-check-summary-list strong { color:#651c34; white-space:nowrap; }
.mhb-cost-pantry { background:#fffaf1; border-radius:9px; padding:8px 10px; }
.mhb-cost-pantry summary,.mhb-cost-editor > summary { color:#6d2434; cursor:pointer; font-weight:850; }
.mhb-cost-pantry ul { margin:.65rem 0 .1rem; padding-left:1.15rem; }
.mhb-cost-pantry li { margin:.25rem 0; }
.mhb-cost-editor { margin:10px 0; }
.mhb-cost-editor > summary { padding:7px 1px; }
.mhb-cost-line { align-items:end; background:#f8eee0; border:1px solid #dfc7aa; border-radius:12px; display:grid; gap:7px; grid-template-columns:1.5fr 1.2fr .7fr .7fr .75fr; padding:10px; }
.mhb-cost-line .mhb-cost-source,.mhb-cost-line .mhb-cost-note { grid-column:span 2; }
.mhb-cost-estimate { align-items:center!important; display:flex!important; gap:7px!important; min-height:42px; }
.mhb-cost-estimate input { min-height:auto; width:auto; }
.mhb-cost-line-result { align-items:flex-end; display:grid; justify-items:end; }
.mhb-cost-line-result strong { color:#651c34; font-size:1.15rem; }
.mhb-cost-line-result span { color:#806657; font-size:.72rem; }
.mhb-cost-line-actions { align-items:center; display:flex; flex-wrap:wrap; gap:8px; }
.mhb-cost-beverages { background:#f7ecdc; border:1px solid #ddc4a5; border-radius:12px; margin:14px 0; padding:12px; }
#mhb-cost-beverage-lines { display:grid; gap:8px; margin:9px 0; }
.mhb-cost-beverage { align-items:end; background:#fffaf1; border:1px solid #e2ccb0; border-radius:10px; display:grid; gap:8px; grid-template-columns:2fr .7fr 1fr auto; padding:9px; }
.mhb-cost-beverage > small { color:#755c4f; grid-column:1/-1; }
.mhb-beverage-quick { display:flex; flex-wrap:wrap; gap:6px; margin:8px 0 10px; }
.mhb-beverage-quick button { min-height:36px; padding:6px 9px; color:#5f1d2f; background:#fff; border:1px solid #b98f62; border-radius:999px; cursor:pointer; font:inherit; font-size:.78rem; font-weight:800; }
.mhb-water-only { align-items:center!important; display:flex!important; gap:8px!important; margin:8px 0; }
.mhb-water-only input { min-height:auto!important; width:auto!important; }
.mhb-course-check { background:#f7ecdc; border:1px solid #ddc4a5; border-radius:12px; margin:14px 0; padding:12px; }
.mhb-course-row { border:0; border-top:1px solid #dfc7aa; margin:10px 0 0; padding:10px 0 0; }
.mhb-course-row legend { color:#5f1d2f; font-family:Georgia,"Times New Roman",serif; font-weight:800; padding-right:8px; }
.mhb-course-choices { display:flex; flex-wrap:wrap; gap:7px 14px; }
.mhb-course-choices label { align-items:center!important; display:flex!important; gap:6px!important; }
.mhb-course-choices input { min-height:auto!important; width:auto!important; }
.mhb-course-addition { align-items:end; background:#fffaf1; border-radius:10px; display:grid; gap:8px; grid-template-columns:2fr 1fr; margin-top:9px; padding:9px; }
.mhb-course-addition[hidden] { display:none!important; }
.mhb-course-addition small { color:#755c4f; grid-column:1/-1; }
.mhb-check-total { align-items:center; background:#efe0c9; border-radius:12px; display:grid; gap:2px; grid-template-columns:1fr auto; margin:12px 0; padding:12px 14px; }
.mhb-check-total strong { color:#5f1d2f; font-family:Georgia,"Times New Roman",serif; font-size:1.75rem; grid-row:span 2; }
.mhb-check-total small { color:#735a4d; }
.mhb-estimate-explanation { background:#fff7e7; border-left:4px solid #b67b38; border-radius:8px; margin:10px 0 13px; padding:11px 13px; }
.mhb-estimate-explanation p { line-height:1.5; margin:.2rem 0; }
.mhb-estimate-explanation small { color:#735a4d; display:block; margin-top:6px; }
.mhb-restaurant-form { align-items:end; display:grid; gap:8px; grid-template-columns:2fr 1fr 1fr auto; }
.mhb-restaurant-form .mhb-cost-description { grid-column:1/-1; }
.mhb-night-out { background:#f7ecdc; border:1px solid #ddc4a5; border-radius:12px; grid-column:1/-1; padding:10px 12px; }
.mhb-night-out > summary { align-items:center; color:#6d2434; cursor:pointer; display:flex; flex-wrap:wrap; gap:5px 14px; justify-content:space-between; }
.mhb-night-out > summary span { color:#806657; font-size:.78rem; font-weight:700; }
.mhb-night-out-body { display:grid; gap:7px; margin-top:10px; }
.mhb-night-extra { align-items:center; background:#fffaf1; border:1px solid #e2ccb0; border-radius:10px; display:grid; gap:8px; grid-template-columns:2fr 1.5fr 1fr; opacity:.72; padding:8px 10px; }
.mhb-night-extra.is-selected { opacity:1; }
.mhb-night-extra > label:first-child { align-items:center!important; display:flex!important; gap:7px!important; }
.mhb-night-extra > label:first-child input { min-height:auto!important; width:auto!important; }
.mhb-night-extra-amount { justify-self:end; max-width:120px; }
.mhb-whole-night { border-top:2px solid rgba(255,255,255,.35); margin-top:14px; padding-top:12px; }
.mhb-restaurant-result { background:linear-gradient(145deg,#5d1c34,#7d3247); border-radius:14px; color:#fff8ec; margin-top:13px; max-width:100%; min-width:0; overflow-wrap:anywhere; padding:16px; }
.mhb-restaurant-result .mhb-eyebrow,.mhb-restaurant-result p { color:#fff8ec; }
.mhb-restaurant-result h5 { color:#fff8ec; }
.mhb-restaurant-result > strong { display:block; font-family:Georgia,"Times New Roman",serif; font-size:2rem; margin:.2rem 0 .5rem; }
.mhb-restaurant-result small { color:#efd9bd; display:block; line-height:1.45; }
.mhb-restaurant-result .mhb-restaurant-evidence { background:#fffaf0; color:#38251f; }
.mhb-restaurant-result .mhb-restaurant-evidence > span { color:#7a2941; }
.mhb-restaurant-result .mhb-restaurant-evidence > strong { color:#4f1728; }
.mhb-restaurant-result .mhb-restaurant-evidence > small { color:#4f4038; }
.mhb-restaurant-result .mhb-restaurant-evidence > a { color:#681b32; }
.mhb-restaurant-result .mhb-restaurant-rationale { color:#38251f; line-height:1.48; margin:5px 0 2px; }
.mhb-restaurant-result .mhb-restaurant-rationale strong { color:#4f1728; }
.mhb-restaurant-result .mhb-estimate-explanation,.mhb-restaurant-result .mhb-estimate-explanation p { color:#38251f; }
.mhb-restaurant-result .mhb-estimate-explanation .mhb-eyebrow { color:#7a2941; }
.mhb-restaurant-result .mhb-word-on-street { color:#38251f; }
.mhb-restaurant-result .mhb-word-on-street .mhb-eyebrow { color:#6b1f35; }
.mhb-restaurant-result .mhb-word-on-street h5 { color:#4f1728; }
.mhb-restaurant-result .mhb-word-on-street p { color:#38251f; }
.mhb-restaurant-result .mhb-word-on-street small { color:#5f4b40; }
.mhb-restaurant-lines { border-bottom:1px solid rgba(255,255,255,.22); border-top:1px solid rgba(255,255,255,.22); display:grid; gap:0; list-style:none; margin:12px 0; padding:5px 0; }
.mhb-restaurant-lines li { align-items:start; display:flex; gap:12px; justify-content:space-between; padding:7px 0; }
.mhb-restaurant-lines li span { line-height:1.35; }
.mhb-restaurant-lines li strong { white-space:nowrap; }
.mhb-restaurant-omissions { background:rgba(255,255,255,.1); border-radius:10px; margin:10px 0; padding:10px 12px; }
.mhb-restaurant-omissions > strong { display:block; margin-bottom:4px; }
.mhb-restaurant-omissions ul { margin:0; padding-left:1.15rem; }
.mhb-saved-meal-actions { align-items:flex-end; display:flex; flex-direction:column; gap:4px; }
.mhb-saved-meal-check { font-size:.76rem!important; padding:2px 5px!important; }
.mhb-cost-empty { color:#6c5145; padding:10px 2px; }

@media (max-width:900px) {
	.mhb-price-form { grid-template-columns:repeat(3,minmax(0,1fr)); }
	.mhb-cost-line { grid-template-columns:repeat(3,minmax(0,1fr)); }
	.mhb-restaurant-form { grid-template-columns:2fr 1fr 1fr; }
	.mhb-restaurant-form button { grid-column:1/-1; }
}
@media (max-width:700px) {
	.mhb-check-arrival { border-radius:14px; padding:18px 14px; }
	.mhb-check-arrival-question { margin:28px 0 18px; }
	.mhb-check-arrival-actions { display:grid; grid-template-columns:1fr; }
	.mhb-check-arrival-actions button { width:100%; }
	.mhb-check-arrival-choice { grid-template-columns:minmax(0,1fr) auto; }
	.mhb-check-arrival-choice-status { grid-column:1; justify-self:start; }
	.mhb-check-arrival-choice-arrow { grid-column:2; grid-row:1/3; }
	.mhb-check-entry-essentials { grid-template-columns:1fr; }
	.mhb-check-primary-action { align-items:stretch; display:grid; }
	.mhb-check-primary-action button { width:100%; }
	.mhb-monthly-check { grid-template-columns:1fr; }
	.mhb-monthly-check strong,.mhb-monthly-check small { grid-column:auto; }
	.mhb-cost-heading { align-items:stretch; flex-direction:column; }
	.mhb-cost-heading label { min-width:0; }
	.mhb-receipt-reader,.mhb-saved-meal-actions { align-items:stretch; flex-direction:column; }
	.mhb-receipt-reader .mhb-file-button,.mhb-receipt-reader button,.mhb-saved-meal-actions button { justify-content:center; width:100%; }
	.mhb-price-form,.mhb-cost-line,.mhb-cost-beverage,.mhb-course-addition,.mhb-night-extra,.mhb-restaurant-form { grid-template-columns:1fr; }
	.mhb-night-extra-amount { justify-self:stretch; max-width:none; }
	.mhb-cost-line .mhb-cost-source,.mhb-cost-line .mhb-cost-note,.mhb-restaurant-form .mhb-cost-description { grid-column:auto; }
	.mhb-cost-line-result { justify-items:start; }
	.mhb-cost-line-actions { align-items:stretch; display:grid; grid-template-columns:1fr; }
	.mhb-check-total strong { font-size:1.45rem; }
}

@media (max-width:420px) {
	#mhb-app .mhb-check-please { margin-inline:0; }
	#mhb-check-please-content { padding:2px 0 10px; }
	.mhb-check-arrival { border-radius:0; }
	.mhb-restaurant-spotlight { background:transparent; border:0; border-radius:0; padding:0; }
	.mhb-check-entry { border-radius:13px; margin:10px; padding:13px; }
	.mhb-check-entry-heading { align-items:flex-start; }
	.mhb-check-entry-status { font-size:.62rem; }
	.mhb-restaurant-spotlight > .mhb-restaurant-consult,.mhb-restaurant-spotlight > .mhb-check-adjustments,.mhb-restaurant-spotlight > .mhb-restaurant-awaiting { margin-inline:10px; }
	.mhb-restaurant-spotlight > .mhb-cost-heading { margin:10px 0; padding-inline:12px; }
	.mhb-restaurant-spotlight > .mhb-restaurant-result { border-radius:0; margin-top:8px; padding:14px 12px; }
	.mhb-restaurant-spotlight > .mhb-restaurant-form { padding:0 10px 10px; }
	.mhb-check-playback { padding:8px; }
	.mhb-check-playback .mhb-text-button { font-size:.82rem; padding-inline:2px; }
	.mhb-restaurant-headline { font-size:clamp(1.55rem,9vw,2rem); }
	.mhb-word-on-street { padding:11px; }
}

/* The Service Bar shares household continuity with the kitchen while remaining Mike's own room and transcript. */
.mhb-station-switcher { background:#f5ead7; border:1px solid #cbb38f; border-radius:14px; display:grid; gap:5px; grid-template-columns:repeat(4,minmax(0,1fr)); margin:0 0 15px; padding:5px; position:sticky; top:8px; z-index:12; }
.mhb-station-button { background:transparent; border:1px solid transparent; border-radius:10px; color:#624638; cursor:pointer; display:grid; font:inherit; gap:1px; min-height:50px; padding:7px 10px; text-align:left; }
.mhb-station-button span { font-size:.68rem; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.mhb-station-button strong { font-family:Georgia,"Times New Roman",serif; font-size:1rem; }
.mhb-station-button.is-active { background:#fffaf0; border-color:#a9865c; box-shadow:0 4px 12px rgba(61,37,25,.12); color:#5c1d30; }
#mhb-app[data-mhb-service-role="bar"] .mhb-panel[data-mhb-panel="chat"] { background-color:#281b18; background-image:linear-gradient(180deg,rgba(24,12,10,.24),rgba(22,10,12,.72) 48%,rgba(33,13,20,.94)),url("service-bar-back-v1.webp"); background-position:center top;background-repeat:no-repeat;background-size:cover;border-color:#6e4d3b;box-shadow:0 18px 45px rgba(32,14,17,.28);padding:clamp(12px,2.5vw,24px); }
#mhb-app[data-mhb-service-role="bar"] .mhb-station-switcher { background:rgba(35,19,17,.88); border-color:#9c774d; box-shadow:0 5px 18px rgba(0,0,0,.26); backdrop-filter:blur(7px); }
#mhb-app[data-mhb-service-role="bar"] .mhb-station-button { color:#e8d5b5; }
#mhb-app[data-mhb-service-role="bar"] .mhb-station-button.is-active { background:#6a2036; border-color:#d0ab6b; color:#fff7e7; }
#mhb-app[data-mhb-service-role="bar"] .mhb-panel-heading { background:linear-gradient(110deg,rgba(255,248,232,.95),rgba(240,220,185,.9)); border:1px solid rgba(220,184,122,.86); border-radius:15px; box-shadow:0 9px 22px rgba(0,0,0,.22); color:#38251e; padding:15px 17px; }
#mhb-app[data-mhb-service-role="bar"] .mhb-panel-heading h3 { color:#5a1b2e; }
#mhb-app[data-mhb-service-role="bar"] .mhb-panel-heading p { color:#6b4b3d; }
#mhb-app[data-mhb-service-role="bar"] #mhb-history { background:rgba(255,249,237,.94); border:1px solid rgba(211,174,113,.78); border-radius:15px; box-shadow:0 10px 25px rgba(0,0,0,.2); padding:12px; }
#mhb-app[data-mhb-service-role="bar"] #mhb-chat-form,#mhb-app[data-mhb-service-role="bar"] .mhb-live-line { background:rgba(255,249,237,.96); border:1px solid rgba(211,174,113,.82); border-radius:15px; box-shadow:0 10px 24px rgba(0,0,0,.22); padding:13px; }
.mhb-bar-station { background:linear-gradient(145deg,rgba(47,18,27,.91),rgba(102,37,56,.9)); border:1px solid #aa8062; border-radius:18px; box-shadow:0 14px 32px rgba(16,7,9,.28); color:#fff8eb; display:grid; gap:14px; margin:16px 0; padding:16px; backdrop-filter:blur(8px); }
.mhb-bar-station[hidden] { display:none!important; }
.mhb-bar-station .mhb-eyebrow,.mhb-bar-station .mhb-small { color:#ead4b5; }
.mhb-bar-station h4,.mhb-bar-station h5,.mhb-bar-station p { color:inherit; }
.mhb-bar-welcome { background:radial-gradient(circle at top right,rgba(219,178,103,.18),transparent 42%),#4b1b2a; border:1px solid rgba(229,200,151,.34); border-radius:14px; padding:16px; }
.mhb-bar-welcome h4 { font-family:Georgia,"Times New Roman",serif; font-size:clamp(1.35rem,3vw,1.9rem); margin:.18rem 0 .45rem; }
.mhb-bar-meal-context { background:rgba(22,11,14,.35); border:1px solid rgba(231,199,145,.32); border-radius:10px; display:grid; gap:2px; margin-top:12px; padding:10px 12px; }
.mhb-bar-meal-context span { color:#d7b982; font-size:.66rem; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.mhb-bar-meal-context strong { color:#fff8eb; font-family:Georgia,"Times New Roman",serif; }
.mhb-bar-meal-context small { color:#ead4b5; line-height:1.4; }
.mhb-bar-meal-context.has-meal { border-left:4px solid #d7aa5d; }
.mhb-bar-prompts { display:flex; flex-wrap:wrap; gap:8px; margin-top:13px; }
.mhb-bar-station .mhb-bar-prompts .mhb-secondary-button { background:#fff7e7; border-color:#d8b87c; color:#5d1d30; }
.mhb-bar-station-actions { align-items:center; display:flex; flex-wrap:wrap; gap:10px; margin-top:12px; }
.mhb-bar-station-actions .mhb-secondary-button { background:#d7aa5d; border-color:#e5c282; color:#35151d; }
.mhb-bar-station-actions .mhb-secondary-button:disabled { background:rgba(255,248,235,.12); border-color:rgba(239,213,170,.25); color:#d5bea0; cursor:default; }
.mhb-pastry-station { background:radial-gradient(circle at 85% 12%,rgba(255,255,255,.78) 0 6%,transparent 7%),linear-gradient(145deg,#fff8f0,#f2d8d8 56%,#dfb6bd); border:1px solid #bd7f89; border-radius:18px; box-shadow:0 14px 32px rgba(75,30,43,.18); color:#4b202d; display:grid; gap:14px; margin:16px 0; padding:18px; position:relative; overflow:hidden; }
.mhb-pastry-station::after { content:"PÂTISSERIE"; position:absolute; right:-9px; top:22px; transform:rotate(7deg); padding:.35rem .75rem; color:#7b2941; background:rgba(255,250,240,.74); border:1px solid rgba(123,41,65,.28); border-radius:999px; font-family:Georgia,"Times New Roman",serif; font-size:.68rem; font-weight:800; letter-spacing:.14em; }
.mhb-pastry-station[hidden] { display:none!important; }
.mhb-pastry-station .mhb-eyebrow { color:#8a354d; }
.mhb-pastry-station h4 { color:#5d1d30; font-family:Georgia,"Times New Roman",serif; font-size:1.65rem; margin:.2rem 0 .65rem; }
.mhb-pastry-station p { color:#53343b; }
.mhb-pastry-meal-context { display:grid; gap:3px; margin:14px 0; padding:12px 14px; background:rgba(255,250,241,.82); border:1px solid rgba(139,74,90,.34); border-radius:12px; }
.mhb-pastry-meal-context span { color:#915269; font-size:.68rem; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.mhb-pastry-meal-context strong { color:#5d1d30; }
.mhb-pastry-meal-context small { color:#67444c; }
.mhb-pastry-prompts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin:14px 0; }
.mhb-pastry-prompts .mhb-secondary-button { background:#fffaf2; border-color:#bd7f89; color:#642137; }
#mhb-app[data-mhb-service-role="pastry"] .mhb-panel[data-mhb-panel="chat"] { background:linear-gradient(180deg,#fffaf1,#f8e6e2 62%,#eed1d3); border-color:#bd7f89; box-shadow:0 18px 45px rgba(75,30,43,.2); }
#mhb-app[data-mhb-service-role="pastry"] .mhb-station-switcher { background:#6a2438; border-color:#d6a0a7; }
#mhb-app[data-mhb-service-role="pastry"] .mhb-station-button { color:#f6dce0; }
#mhb-app[data-mhb-service-role="pastry"] .mhb-station-button.is-active { background:#fff7e9; border-color:#d29ba2; color:#621f35; }
#mhb-app[data-mhb-service-role="pastry"] .mhb-panel-heading { background:linear-gradient(110deg,#fffaf0,#f3d7d4); border:1px solid #d1a2a4; border-radius:15px; color:#4b202d; padding:15px 17px; }
#mhb-app[data-mhb-service-role="pastry"] #mhb-history,#mhb-app[data-mhb-service-role="pastry"] #mhb-chat-form,#mhb-app[data-mhb-service-role="pastry"] .mhb-live-line { background:rgba(255,252,245,.96); border:1px solid #d7aeb0; border-radius:15px; box-shadow:0 10px 24px rgba(75,30,43,.13); padding:13px; }
.mhb-wine-station { background:radial-gradient(circle at 88% 8%,rgba(210,176,101,.2),transparent 30%),linear-gradient(145deg,#172f28,#25483a 55%,#56283a); border:1px solid #b89a62; border-radius:18px; box-shadow:0 14px 34px rgba(18,34,28,.28); color:#fff8e8; display:grid; gap:14px; margin:16px 0; padding:18px; overflow:hidden; }
.mhb-wine-station[hidden] { display:none!important; }
.mhb-wine-station .mhb-eyebrow,.mhb-wine-station .mhb-small { color:#e4c98e; }
.mhb-wine-station h4 { margin:.2rem 0 .65rem; color:#fff8e8; font-family:Georgia,"Times New Roman",serif; font-size:1.65rem; }
.mhb-wine-station p { color:#f4ead7; }
.mhb-wine-meal-context { display:grid; gap:3px; margin:14px 0; padding:12px 14px; background:rgba(9,25,20,.38); border:1px solid rgba(225,196,133,.38); border-radius:12px; }
.mhb-wine-meal-context span { color:#dfbf79; font-size:.68rem; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.mhb-wine-meal-context strong { color:#fff8e8; }
.mhb-wine-meal-context small { color:#e8ddc8; }
.mhb-wine-meal-context.has-meal { border-left:5px solid #d3a84f; }
.mhb-wine-prompts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin:14px 0; }
.mhb-wine-prompts .mhb-secondary-button { background:#fff8e8; border-color:#d4b66f; color:#4f1b2d; }
.mhb-wine-room-actions { display:flex; flex-wrap:wrap; align-items:center; gap:.7rem 1rem; margin-top:.85rem; }
.mhb-wine-room-actions .mhb-secondary-button { width:auto; background:#d3a84f; border-color:#efd18b; color:#183329; }
.mhb-wine-current-note[hidden] { display:none!important; }
.mhb-wine-current-note { display:grid; gap:.2rem; margin:.85rem 0; padding:.75rem .9rem; color:#173128; background:rgba(255,248,232,.94); border:1px solid #c9a962; border-left:5px solid #6e263d; border-radius:12px; }
.mhb-wine-filed-actions[hidden] { display:none!important; }
.mhb-wine-filed-actions { display:grid; gap:.4rem; margin:1rem 0; padding:1rem; color:#173128; background:#fff8e8; border:2px solid #d3a84f; border-radius:14px; box-shadow:0 10px 24px rgba(18,34,28,.18); }
.mhb-wine-filed-actions > div { display:flex; flex-wrap:wrap; gap:.65rem; margin-top:.25rem; }
.mhb-wine-filed-actions .mhb-secondary-button { background:#6e263d; border-color:#8d3a53; color:#fff; }
.mhb-meal-recipe-handoff { margin:.85rem 0; }
.mhb-wine-consultations { margin-top:1rem; overflow:hidden; color:#223b32; background:rgba(255,249,235,.94); border:1px solid #c9a962; border-radius:12px; }
.mhb-wine-consultations > summary { padding:.8rem .9rem; cursor:pointer; color:#5c1d30; font-family:Georgia,"Times New Roman",serif; font-weight:800; }
.mhb-wine-consultations > p { margin:0; padding:0 .9rem .65rem; }
.mhb-wine-consultation-list { display:grid; gap:.65rem; padding:0 .9rem .9rem; }
.mhb-wine-consultation-card { display:grid; gap:.45rem; padding:.8rem; background:#fffdf8; border:1px solid #d0b573; border-radius:11px; }
.mhb-wine-consultation-card strong { color:#5d1d30; }
.mhb-wine-consultation-card p { margin:0; font-size:.84rem; line-height:1.4; }
.mhb-wine-consultation-card .mhb-secondary-button { justify-self:start; }
.mhb-wine-age-note { margin:.2rem 0 0!important; color:#dfcfaf!important; font-size:.74rem; line-height:1.35; }
#mhb-app[data-mhb-service-role="wine"] .mhb-panel[data-mhb-panel="chat"] { background:linear-gradient(180deg,#ecdfc5,#cfb887 38%,#29483d); border-color:#9b7b41; box-shadow:0 18px 45px rgba(18,34,28,.24); }
#mhb-app[data-mhb-service-role="wine"] .mhb-station-switcher { background:#173128; border-color:#c5a45e; }
#mhb-app[data-mhb-service-role="wine"] .mhb-station-button { color:#eadbbd; }
#mhb-app[data-mhb-service-role="wine"] .mhb-station-button.is-active { background:#fff8e8; border-color:#d1ae63; color:#521d30; }
#mhb-app[data-mhb-service-role="wine"] .mhb-panel-heading { background:linear-gradient(110deg,#fff8e8,#ead9b5); border:1px solid #c4a15b; border-radius:15px; color:#243b32; padding:15px 17px; }
#mhb-app[data-mhb-service-role="wine"] #mhb-history,#mhb-app[data-mhb-service-role="wine"] #mhb-chat-form,#mhb-app[data-mhb-service-role="wine"] .mhb-live-line { background:rgba(255,252,243,.96); border:1px solid #c6aa6c; border-radius:15px; box-shadow:0 10px 24px rgba(18,34,28,.16); padding:13px; }
.mhb-return-to-kitchen { background:transparent; border:0; color:#f1d7aa; cursor:pointer; font:inherit; font-weight:800; padding:6px 0; text-decoration:underline; text-underline-offset:3px; }
.mhb-pastry-room-actions { display:flex; flex-wrap:wrap; align-items:center; gap:.7rem 1rem; margin-top:.85rem; }
.mhb-pastry-room-actions .mhb-secondary-button { width:auto; }
.mhb-pastry-current-note[hidden] { display:none!important; }
.mhb-pastry-current-note { display:grid; gap:.2rem; margin:.85rem 0; padding:.75rem .9rem; color:#572236; background:rgba(255,250,241,.9); border:1px solid rgba(139,74,90,.34); border-left:5px solid #9b5369; border-radius:12px; }
.mhb-pastry-current-note span { font-size:.84rem; line-height:1.4; }
.mhb-pastry-consultations { margin-top:1rem; overflow:hidden; color:#4b202d; background:rgba(255,250,241,.88); border:1px solid rgba(139,74,90,.34); border-radius:12px; }
.mhb-pastry-consultations > summary { padding:.8rem .9rem; cursor:pointer; color:#642137; font-family:Georgia,"Times New Roman",serif; font-weight:800; }
.mhb-pastry-consultations > p { margin:0; padding:0 .9rem .65rem; }
.mhb-pastry-consultation-list { display:grid; gap:.65rem; padding:0 .9rem .9rem; }
.mhb-pastry-consultation-card { display:grid; gap:.45rem; padding:.8rem; background:#fffdf8; border:1px solid #d7aeb0; border-radius:11px; }
.mhb-pastry-consultation-card strong { color:#5d1d30; }
.mhb-pastry-consultation-card p { margin:0; font-size:.84rem; line-height:1.4; }
.mhb-pastry-consultation-card .mhb-secondary-button { justify-self:start; }
.mhb-archive-transcript { overflow:hidden; background:#fffaf1; border:1px solid rgba(109,36,52,.18); border-radius:10px; }
.mhb-archive-transcript > summary { padding:.55rem .65rem; color:#5d1d30; cursor:pointer; font-size:.8rem; font-weight:850; }
.mhb-archive-transcript-body { display:grid; gap:.55rem; max-height:min(52dvh,520px); overflow:auto; padding:.65rem; border-top:1px solid rgba(109,36,52,.14); }
.mhb-archive-transcript-body .mhb-context-turn { margin:0; padding:.6rem .7rem; }
.mhb-pastry-finish-bottom { display:none; }
#mhb-app[data-mhb-service-role="pastry"] .mhb-pastry-finish-bottom { display:inline-flex; flex:0 0 auto; }
.mhb-staff-finish-floater[hidden] { display:none!important; }
.mhb-staff-finish-floater { position:fixed; z-index:100007; bottom:calc(max(12px,env(safe-area-inset-bottom)) + 86px); left:max(12px,calc((100vw - 1180px)/2)); box-sizing:border-box; max-width:min(280px,calc(100vw - 24px)); min-height:48px; padding:.65rem 1rem; color:#fff; background:#7b2941; border:2px solid #efcf93; border-radius:999px; box-shadow:0 10px 28px rgba(57,20,32,.34); cursor:pointer; font:inherit; font-size:.82rem; font-weight:900; }
.mhb-staff-finish-floater:hover,.mhb-staff-finish-floater:focus { background:#5f1f33; outline:3px solid rgba(230,193,123,.48); outline-offset:2px; }
.mhb-staff-finish-floater.is-above-hands-free { bottom:calc(max(12px,env(safe-area-inset-bottom)) + 220px); }
@media (max-width:640px) { .mhb-pastry-room-actions,.mhb-wine-room-actions,.mhb-wine-filed-actions > div { align-items:stretch; flex-direction:column; } .mhb-pastry-room-actions .mhb-secondary-button,.mhb-wine-room-actions .mhb-secondary-button,.mhb-wine-filed-actions .mhb-secondary-button { width:100%; } }
@media (max-width:640px) { .mhb-repeat-source-reference,.mhb-repeat-source-actions { align-items:stretch; flex-direction:column; } .mhb-repeat-source-actions .mhb-secondary-button,.mhb-repeat-source-actions .mhb-text-button { width:100%; } }
.mhb-bar-book,.mhb-saved-drinks { background:#fffaf0; border:1px solid #d6b98e; border-radius:14px; color:#35251f; overflow:hidden; }
.mhb-bar-book > summary,.mhb-saved-drinks > summary { color:#5d1d30; cursor:pointer; font-family:Georgia,"Times New Roman",serif; font-size:1.05rem; font-weight:800; padding:12px 14px; }
.mhb-bar-book > p { margin:0; padding:0 14px 4px; }
.mhb-bar-profile-form { padding:8px 14px 14px; }
.mhb-bar-profile-form .mhb-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.mhb-bar-profile-form label { color:#49352d; display:grid; font-size:.82rem; font-weight:800; gap:5px; }
.mhb-bar-profile-form textarea { background:#fff; border:1px solid #baa083; border-radius:9px; box-sizing:border-box; color:#2f231e; font:inherit; min-height:88px; padding:9px 10px; resize:vertical; width:100%; }
.mhb-bar-profile-form .mhb-form-row { border-top:1px solid #e4cfb1; margin-top:14px; padding-top:12px; }
.mhb-saved-drinks-list { display:grid; gap:10px; grid-template-columns:repeat(2,minmax(0,1fr)); padding:2px 14px 14px; }
.mhb-saved-drink-card { background:#fff; border:1px solid #ddc5a5; border-left:5px solid #967342; border-radius:12px; color:#35251f; padding:12px; }
.mhb-saved-drink-card.is-signature { border-left-color:#6b1f35; box-shadow:inset 0 0 0 1px rgba(107,31,53,.14); }
.mhb-saved-drink-card h5 { color:#5d1d30; font-family:Georgia,"Times New Roman",serif; font-size:1.15rem; margin:.15rem 0 .35rem; }
.mhb-saved-drink-card > p:not(.mhb-eyebrow) { color:#6e5549; font-size:.82rem; line-height:1.4; }
.mhb-saved-drink-card details { border-top:1px solid #ead9c2; margin-top:9px; padding-top:7px; }
.mhb-saved-drink-card summary { color:#6b2437; cursor:pointer; font-weight:800; }
.mhb-saved-drink-actions { align-items:center; display:flex; flex-wrap:wrap; gap:7px; margin-top:10px; }
.mhb-saved-drink-actions input { border:1px solid #bba184; border-radius:8px; flex:1 1 150px; min-height:40px; padding:7px 9px; }
.mhb-saved-drink-actions .is-danger { color:#8a2f28; }
.mhb-drink-candidate { background:linear-gradient(145deg,#fffaf0,#efe0c6); border:2px solid #8a4a5c; border-radius:15px; box-shadow:0 8px 22px rgba(68,25,39,.12); margin:12px 0 2px; padding:14px; }
.mhb-recalled-recipe { align-items:center; background:linear-gradient(135deg,#fffdf7,#f1e2c4); border:2px solid #9b6b32; border-radius:14px; box-shadow:0 8px 20px rgba(69,42,22,.12); display:flex; gap:14px; justify-content:space-between; margin:12px 0 2px; padding:13px 14px; }
.mhb-recalled-recipe > div { display:grid; gap:2px; min-width:0; }
.mhb-recalled-recipe span { color:#7a2941; font-size:.72rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.mhb-recalled-recipe strong { color:#4f1c2d; font-family:Georgia,"Times New Roman",serif; font-size:1.08rem; }
.mhb-recalled-recipe small { color:#6d5548; }
.mhb-recalled-recipe .mhb-secondary-button { flex:0 0 auto; }
.mhb-drink-candidate > .mhb-eyebrow { color:#7a2a41; }
.mhb-drink-spec h4 { color:#5c1d30; font-family:Georgia,"Times New Roman",serif; font-size:1.35rem; margin:.15rem 0 .6rem; }
.mhb-drink-style { color:#806356; font-size:.75rem; font-weight:800; letter-spacing:.08em; margin:0; text-transform:uppercase; }
.mhb-drink-spec ul { margin:.35rem 0 .8rem; padding-left:1.2rem; }
.mhb-drink-spec li { margin:.18rem 0; }
.mhb-drink-spec dl { display:grid; gap:6px; margin:.6rem 0; }
.mhb-drink-spec dl div { display:grid; gap:3px; grid-template-columns:minmax(70px,.35fr) 1fr; }
.mhb-drink-spec dt { color:#6b2437; font-weight:800; }
.mhb-drink-spec dd { margin:0; }
.mhb-zero-proof { background:#f8eddb; border-left:4px solid #76874f; border-radius:8px; margin-top:10px; padding:8px 10px; }
.mhb-zero-proof summary { color:#52603b; cursor:pointer; font-weight:800; }
.mhb-drink-save-row { align-items:end; border-top:1px solid #d5b996; display:flex; flex-wrap:wrap; gap:9px; margin-top:12px; padding-top:11px; }
.mhb-drink-save-row label { color:#5e4236; display:grid; flex:1 1 190px; font-size:.78rem; font-weight:800; gap:4px; }
.mhb-drink-save-row input { border:1px solid #aa8d72; border-radius:8px; min-height:42px; padding:8px 9px; }
.mhb-bar-ticket { background:#fffaf0; border:2px solid #8f5262; border-radius:12px; box-shadow:0 8px 20px rgba(65,22,35,.13); color:#36251f; margin-top:12px; overflow:hidden; padding:14px; position:relative; }
.mhb-bar-ticket::before { border-top:2px dashed #d5ba91; content:""; left:0; position:absolute; right:0; top:43px; }
.mhb-bar-ticket > .mhb-eyebrow { color:#7a2941; margin-bottom:15px; }
.mhb-bar-ticket > h4 { color:#5b1d30; font-family:Georgia,"Times New Roman",serif; font-size:1.35rem; margin:.2rem 0 .75rem; }
.mhb-bar-ticket-item { border-top:1px solid #dfccb0; padding:10px 0 6px; }
.mhb-bar-ticket-item h5 { color:#5b1d30; font-size:1rem; margin:0 0 6px; }
.mhb-bar-ticket-item h5 span { color:#9b6532; }
.mhb-bar-ticket-item p,.mhb-bar-ticket-item ul { margin:.35rem 0; }
.mhb-bar-ticket-sequence { background:#f3e7d2; border-left:4px solid #a77436; border-radius:8px; margin:10px 0; padding:10px 12px; }
.mhb-bar-ticket-sequence h5 { color:#5b1d30; margin:0; }
.mhb-bar-ticket-sequence ol { margin:.4rem 0 0; padding-left:1.25rem; }
.mhb-bar-ticket-note { color:#684b3e; font-style:italic; }
.mhb-round-ready { margin-top:8px; width:100%; }

@media (max-width:700px) {
	.mhb-table-story-share-actions { display:grid; grid-template-columns:1fr; }
	.mhb-table-story-share-actions button { width:100%; }
	.mhb-station-switcher { top:5px; }
	.mhb-station-button { min-height:46px; padding:6px 8px; }
	#mhb-app[data-mhb-service-role="bar"] .mhb-panel[data-mhb-panel="chat"] { background-attachment:scroll; background-position:58% top; border-radius:12px; padding:9px; }
	#mhb-app[data-mhb-service-role="bar"] #mhb-history,#mhb-app[data-mhb-service-role="bar"] #mhb-chat-form,#mhb-app[data-mhb-service-role="bar"] .mhb-live-line { border-radius:11px; padding:10px; }
	.mhb-bar-station { border-radius:13px; padding:11px; }
	.mhb-pastry-station { border-radius:13px; padding:13px 11px; }
	.mhb-pastry-station::after { display:none; }
	.mhb-pastry-prompts { grid-template-columns:1fr; }
	.mhb-wine-prompts { grid-template-columns:1fr; }
	.mhb-bar-prompts { align-items:stretch; flex-direction:column; }
	.mhb-bar-prompts button { width:100%; }
	.mhb-bar-station-actions { align-items:stretch; flex-direction:column; }
	.mhb-bar-station-actions button { justify-content:center; width:100%; }
	.mhb-bar-profile-form .mhb-grid,.mhb-saved-drinks-list { grid-template-columns:1fr; }
	.mhb-drink-spec dl div { grid-template-columns:1fr; }
	.mhb-drink-save-row { align-items:stretch; flex-direction:column; }
	.mhb-drink-save-row .mhb-button { width:100%; }
	.mhb-saved-drink-actions { align-items:stretch; flex-direction:column; }
	.mhb-saved-drink-actions input,.mhb-saved-drink-actions button { width:100%; }
}

/* The original meal stays a compact reference in the main conversation scroll area. */
#mhb-app .mhb-conversation-room-history .mhb-repeat-source-reference { display:block; margin:0 0 .75rem; padding:.65rem; }
#mhb-app .mhb-conversation-room-history .mhb-repeat-source-reference[hidden] { display:none; }
.mhb-repeat-transcript,.mhb-repeat-recipe { margin:.65rem 0; }
.mhb-repeat-transcript > summary,.mhb-repeat-recipe > summary { cursor:pointer; font-weight:800; }
.mhb-repeat-transcript .mhb-context-turn { padding:.65rem 0; border-top:1px solid #d6b98e; }

.mhb-earlier-meal-controls { display:flex; gap:.4rem; align-items:stretch; }
.mhb-earlier-meal-controls[hidden] { display:none!important; }
.mhb-earlier-meal-controls button { flex:1; white-space:normal; }
.mhb-repeat-transcript > summary[hidden] { display:none!important; }

/* Recipe card choices: cooking and sharing first, smaller upkeep below. */
.mhb-cookbook-actions { display: flex; flex-direction: column; align-items: stretch; }
.mhb-cookbook-primary-actions { display: flex; flex-wrap: wrap; gap: 0.55rem; }
.mhb-cookbook-primary-actions > button { flex: 1; }
.mhb-cookbook-actions .mhb-button,
.mhb-cookbook-actions .mhb-secondary-button { white-space: normal; }
.mhb-cookbook-housekeeping { display: flex; flex-wrap: wrap; align-items: center; gap: 0.4rem 0.65rem; margin-top: 0.3rem; }
.mhb-cookbook-housekeeping .mhb-secondary-button { width: auto; min-height: 44px; padding: 0.35rem 0.7rem; font-size: 0.78rem; }

/* Compact conversation controls leave the recipe and dialogue room to breathe. */
.mhb-conversation-room-toolbar { position:relative; padding:.4rem .6rem; gap:.35rem; }
.mhb-conversation-room-toolbar [data-mhb-room-meta], .mhb-conversation-room-kicker { display:none; }
.mhb-conversation-room-actions { display:flex; flex-wrap:wrap; align-items:center; gap:.35rem; }
.mhb-conversation-room-actions > button, .mhb-room-options > summary { min-height:44px; padding:.35rem .6rem; font-size:.78rem; }
.mhb-room-options > summary, .mhb-more-controls > summary { display:flex; align-items:center; justify-content:center; list-style:none; cursor:pointer; color:#5c1d30; background:#fff8ec; border:1px solid rgba(109,36,52,.28); border-radius:999px; }
.mhb-room-options > summary::-webkit-details-marker, .mhb-more-controls > summary::-webkit-details-marker { display:none; }
.mhb-room-options-items { position:absolute; z-index:8; top:100%; right:.5rem; display:grid; gap:.45rem; width:min(320px,calc(100% - 1rem)); max-height:60dvh; overflow:auto; padding:.7rem; background:#fffaf0; border:1px solid #c99c70; border-radius:12px; box-shadow:0 10px 25px rgba(49,28,22,.25); }
.mhb-room-options-items button { min-height:44px; white-space:normal; }
.mhb-room-options:not([open]) .mhb-room-options-items { display:none; }
.mhb-earlier-meal-controls { flex-basis:100%; }
.mhb-earlier-meal-controls button { min-height:44px; font-size:.73rem; padding:.25rem .4rem; }
.mhb-more-controls { position:static; }
.mhb-more-controls > summary { min-height:44px; padding:.3rem .5rem; font-size:.78rem; }
.mhb-more-controls-panel { position:absolute; z-index:7; bottom:100%; right:.5rem; left:.5rem; display:flex; flex-wrap:wrap; align-items:center; gap:.5rem; max-height:55dvh; overflow-y:auto; padding:.65rem; background:#fffaf0; border:1px solid #c99c70; border-radius:12px; box-shadow:0 10px 25px rgba(49,28,22,.25); }
.mhb-more-controls:not([open]) .mhb-more-controls-panel { display:none; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form { position:relative; gap:.25rem; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room .mhb-composer-tools { gap:.35rem; }
body.mhb-conversation-room-active #mhb-app .mhb-composer-tools > .mhb-live-line:not(.is-floating-live) { display:contents; }
body.mhb-conversation-room-active #mhb-app .mhb-composer-tools > .mhb-live-line:not(.is-floating-live) .mhb-live-state { display:none; }
body.mhb-conversation-room-active #mhb-app .mhb-composer-tools > .mhb-live-line:not(.is-floating-live) .mhb-live-button { min-height:44px; padding:.3rem .5rem; font-size:.78rem; }
body.mhb-conversation-room-active #mhb-app .mhb-more-controls-panel .mhb-message-autoplay { display:flex; align-items:center; gap:.4rem; width:auto; margin:0; min-height:44px; }
body.mhb-conversation-room-active #mhb-app .mhb-more-controls-panel .mhb-message-autoplay input { width:20px; height:20px; margin:0; }
body.mhb-conversation-room-active #mhb-app .mhb-more-controls-panel .mhb-add-to-conversation { position:static; }
body.mhb-conversation-room-active #mhb-app .mhb-more-controls-panel .mhb-add-to-conversation[open] > .mhb-attachments { position:static; margin-top:.4rem; }
@media (max-width:700px) {
 .mhb-conversation-room-toolbar { flex-direction:column; align-items:stretch; }
 .mhb-conversation-room-toolbar strong { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; white-space:normal; font-size:.9rem; line-height:1.15; }
 .mhb-conversation-room-actions { display:flex; width:100%; }
 .mhb-conversation-room-actions > button, .mhb-room-options > summary { min-height:44px; font-size:.75rem; }
 body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-composer-entry { grid-template-columns:minmax(0,1fr) 64px; }
 body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-composer-tools { display:flex; flex-wrap:wrap; }
 body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-composer-tools > .mhb-more-controls { flex:1 0 auto; }
 body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form #mhb-message { min-height:44px; max-height:84px; }
 body.mhb-conversation-room-active #mhb-app .mhb-composer-tools #mhb-dictate { min-height:44px; padding:.3rem .5rem; font-size:.78rem; }
}

/* Forget an unwanted open conversation directly from its Home doorway. */
.mhb-current-meal-doorway { display:flex; flex-direction:column; align-items:stretch; gap:.35rem; }
.mhb-current-meal-doorway > .mhb-bistro-home-card { flex:1; width:100%; }
.mhb-current-meal-doorway > .mhb-forget-current { align-self:flex-start; min-height:44px; padding:.35rem .65rem; color:var(--mhb-wine-dark); font-size:.85rem; }

/* Keep automatic listening visible and avoid stretched control capsules. */
.mhb-conversation-room-actions { justify-content:flex-start; }
.mhb-earlier-meal-controls { gap:.25rem; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-composer-tools > .mhb-more-controls { flex:0 0 auto; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-composer-tools > .mhb-message-autoplay { display:flex; align-items:center; gap:.3rem; flex:0 1 auto; width:auto; margin:0; min-height:36px; padding:.2rem .3rem; font-size:.78rem; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-composer-tools > .mhb-message-autoplay input { width:20px; height:20px; margin:0; }

/* Group meal navigation and show planning without opening an options menu. */
.mhb-conversation-room-actions { justify-content:flex-start; align-items:center; }
.mhb-conversation-room-actions > .mhb-secondary-button { min-height:44px; padding:.35rem .55rem; font-size:.75rem; white-space:normal; }
.mhb-cookbook-primary-actions > .mhb-plan-saved-source { flex-basis:100%; }
.mhb-calendar-source-summary { margin:.4rem 0 .8rem; padding:.55rem .7rem; color:#4e1724; background:#f4e5c7; border-radius:10px; font-size:.9rem; }
.mhb-earlier-meal-controls button { overflow-wrap:anywhere; }
@media (min-width:701px) {
 .mhb-conversation-room-toolbar { flex-direction:column; align-items:stretch; }
 .mhb-conversation-room-actions { width:100%; }
 .mhb-earlier-meal-controls { flex-basis:auto; margin-left:.4rem; }
}

/* Calendar sources: visible search results instead of a native option sheet. */
.mhb-calendar-source-picker { min-width:0; }
.mhb-calendar-source-picker > label { display:block; margin-bottom:.4rem; }
.mhb-calendar-search-row { display:flex; gap:.5rem; align-items:center; }
.mhb-calendar-search-row input { flex:1; min-width:0; }
.mhb-calendar-search-row button { flex:none; min-height:44px; }
.mhb-calendar-source-results { max-height:320px; overflow-y:auto; margin-top:.6rem; padding:.2rem; }
.mhb-calendar-source-results h5 { color:#5f1f33; font-family:Georgia,"Times New Roman",serif; font-size:1rem; margin:.6rem 0 .4rem; }
.mhb-calendar-source-result { display:flex; align-items:center; justify-content:space-between; gap:.8rem; width:100%; text-align:left; padding:.7rem .8rem; margin-bottom:.4rem; min-height:48px; background:#fff8ed; color:#5f1f33; border:1px solid #c8a477; border-radius:12px; font:inherit; cursor:pointer; }
.mhb-calendar-source-result strong { flex:none; font-size:.8rem; }
.mhb-calendar-source-result[aria-pressed="true"] { color:#fff; background:#7b2039; border-color:#7b2039; }
.mhb-calendar-source-result:focus-visible { outline:3px solid #9c6c3d; outline-offset:2px; }

/* Keep the dish search usable even when mobile button styles request full width. */
#mhb-calendar-form .mhb-calendar-search-row { display:grid; grid-template-columns:minmax(0,1fr) auto; width:100%; min-width:0; }
#mhb-calendar-form #mhb-calendar-source-search { width:100%; min-width:0; max-width:100%; font-size:1rem; }
#mhb-calendar-form #mhb-calendar-source-find { width:auto; min-width:0; max-width:none; padding:.6rem .85rem; white-space:nowrap; font-size:.9rem; }
#mhb-calendar-form .mhb-calendar-optional { min-width:0; padding:.7rem; border:1px solid #c8a477; border-radius:12px; background:#fff8ed; }
#mhb-calendar-form .mhb-calendar-optional summary { color:#5f1f33; cursor:pointer; min-height:44px; display:flex; align-items:center; font-weight:700; }
#mhb-calendar-form .mhb-calendar-optional label { margin-top:.7rem; }

/* Basic month calendar: reminders only; cooking stays in the Kitchen. */
#mhb-calendar-days { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:4px; margin-bottom:12px; }
.mhb-calendar-weekday { text-align:center; font-size:.75rem; font-weight:800; color:#5f1f33; padding:.4rem 0; }
#mhb-calendar-days .mhb-calendar-date-cell { box-sizing:border-box; min-width:0; width:100%; min-height:90px; display:flex; flex-direction:column; align-items:flex-start; gap:4px; border:1px solid #c8a477; border-radius:8px; background:#fff8ed; color:#5f1f33; padding:7px; text-align:left; font:inherit; cursor:pointer; }
#mhb-calendar-days .mhb-calendar-date-cell strong { font-size:.9rem; }
#mhb-calendar-days .mhb-calendar-date-cell span { font-size:.73rem; line-height:1.2; overflow-wrap:anywhere; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
#mhb-calendar-days .mhb-calendar-date-cell.is-outside { opacity:.5; }
#mhb-calendar-days .mhb-calendar-date-cell.is-today { border:2px solid #7b2039; }
#mhb-calendar-days .mhb-calendar-date-cell[aria-pressed="true"] { background:#7b2039; color:#fff; }
.mhb-calendar-day-detail { background:#fff8ed; border:1px solid #c8a477; border-radius:12px; padding:12px; margin-bottom:12px; }
.mhb-calendar-day-detail h4 { color:#5f1f33; margin:0 0 .5rem; font-family:Georgia,serif; }
.mhb-calendar-detail-title { font-weight:800; margin:.5rem 0; }
.mhb-calendar-day-detail .mhb-calendar-note { white-space:pre-wrap; }
#mhb-calendar-form .mhb-calendar-fields { grid-template-columns:repeat(2,minmax(0,1fr)); }
#mhb-calendar-form .mhb-calendar-wide { grid-column:1/-1; }
@media(max-width:640px) {
 #mhb-calendar-days { gap:2px; }
 #mhb-calendar-days .mhb-calendar-date-cell { min-height:70px; padding:4px 2px; border-radius:5px; }
 #mhb-calendar-days .mhb-calendar-date-cell span { font-size:.62rem; }
 .mhb-calendar-toolbar { gap:5px; }
 .mhb-calendar-toolbar > button { min-width:0; padding:.5rem; font-size:.75rem; }
}

.mhb-home-journals a.mhb-bistro-home-card { text-decoration:none; box-sizing:border-box; }

/* Three direct member-home actions, with no explanatory fine print. */
#mhb-app .mhb-home-icon-actions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
#mhb-app .mhb-home-icon-actions[hidden] { display:none; }
#mhb-app .mhb-home-icon-card { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; min-width:0; min-height:150px; padding:16px 10px; text-align:center; }
#mhb-app .mhb-home-action-icon { width:64px; height:64px; flex:none; }
#mhb-app .mhb-home-icon-card strong { margin:0; font-size:1.2rem; line-height:1.15; }
@media(max-width:640px) {
 #mhb-app .mhb-home-icon-actions { gap:7px; }
 #mhb-app .mhb-home-icon-card { min-height:125px; padding:12px 6px; gap:8px; }
 #mhb-app .mhb-home-action-icon { width:48px; height:48px; }
 #mhb-app .mhb-home-icon-card strong { font-size:1rem; }
}

/* Executive Chef doorway: one heading, four useful choices. */
#mhb-app[data-mhb-service-role="chef"]:has([data-mhb-panel="chat"].is-active) > .mhb-tabs { display:none; }
#mhb-app[data-mhb-service-role="chef"] #mhb-station-eyebrow,
#mhb-app[data-mhb-service-role="chef"] #mhb-station-intro { display:none; }
#mhb-app .mhb-chef-actions { display:none; }
#mhb-app[data-mhb-service-role="chef"] .mhb-chef-actions { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin:0 0 26px; }
#mhb-app .mhb-chef-choice { min-height:108px; padding:20px 12px; border:1px solid #c8b58d; border-radius:8px; background:linear-gradient(145deg,#fffdf7,#f2ebdc); color:#243d30; font:400 23px/1.2 Georgia,serif; cursor:pointer; }
#mhb-app .mhb-chef-choice.is-primary { background:linear-gradient(135deg,#793247,#48202e); color:#fff2d7; border-color:#713043; }
#mhb-app .mhb-chef-choice:hover { border-color:#ad8243; box-shadow:0 5px 14px #24382e18; }
#mhb-app .mhb-chef-choice:focus-visible { outline:3px solid #b28744; outline-offset:3px; }
#mhb-app[data-mhb-service-role="chef"]:not(.mhb-chef-cooking) #mhb-meal-control { display:none; }
#mhb-app:not(.mhb-has-active-meal) #mhb-meal-control .mhb-meal-summary { display:none; }
@media(max-width:700px) { #mhb-app[data-mhb-service-role="chef"] .mhb-chef-actions { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; } #mhb-app .mhb-chef-choice { min-height:92px; font-size:21px; } }

/* Keep meal setup focused and provide a local return to the Chef choices. */
#mhb-app[data-mhb-service-role="chef"] .mhb-station-switcher { display:none; }
#mhb-app[data-mhb-service-role="chef"] [data-mhb-panel="chat"] > .mhb-panel-heading { background:none; border:0; border-radius:0; box-shadow:none; padding:0; flex-wrap:wrap; gap:12px; }
#mhb-app[data-mhb-service-role="chef"] #mhb-chat-title { display:block; background:none; border:0; border-radius:0; box-shadow:none; padding:0; color:#243d30; font:400 clamp(28px,5vw,38px)/1.15 Georgia,serif; cursor:default; }
#mhb-app[data-mhb-service-role="chef"] .mhb-chef-actions { order:3; }
#mhb-app[data-mhb-service-role="chef"].mhb-chef-cooking .mhb-chef-actions { display:none; }
#mhb-app #mhb-chef-back { display:none; }
#mhb-app[data-mhb-service-role="chef"].mhb-chef-cooking #mhb-chef-back { display:inline-flex; min-height:44px; align-items:center; color:#65283b; text-decoration:underline; }
/* Check, Please lives in its own workspace and stays available after dinner. */

/* Show the cooking conversation actions directly, with readable phone wrapping. */
#mhb-app .mhb-chef-direct-actions .mhb-room-options { display:none; }
#mhb-app .mhb-chef-direct-actions .mhb-conversation-room-actions { justify-content:flex-start; }
#mhb-app .mhb-chef-direct-actions .mhb-conversation-room-actions > button { white-space:normal; }
#mhb-app .mhb-conversation-history-tools { padding:.4rem .6rem; background:#fff8ec; }
#mhb-app .mhb-conversation-history-tools[hidden] { display:none; }
#mhb-app .mhb-conversation-history-tools button { min-height:44px; }
@media(max-width:700px) {
 #mhb-app .mhb-chef-direct-actions .mhb-conversation-room-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; }
 #mhb-app .mhb-chef-direct-actions .mhb-conversation-room-actions > button { min-width:0; min-height:44px; }
 #mhb-app .mhb-chef-direct-actions .mhb-conversation-room-actions > button:last-child { grid-column:1 / -1; }
}

/* Calendar navigation follows the Executive Chef workflow. */
#mhb-app:has([data-mhb-panel="calendar"].is-active) > .mhb-tabs { display:none; }
#mhb-app .mhb-calendar-navigation { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px; margin:0 0 22px; padding:0 0 14px; border-bottom:1px solid #d3c3a3; }
#mhb-app .mhb-calendar-navigation button { min-height:44px; padding:10px 15px; border:1px solid #c8b58d; border-radius:7px; background:#fffaf0; color:#65283b; font-family:inherit; font-size:15px; font-weight:600; line-height:1.35; cursor:pointer; }
#mhb-app .mhb-calendar-navigation button:hover { background:#f2e8d6; border-color:#a98549; }
#mhb-app .mhb-calendar-navigation button:focus-visible { outline:3px solid #b28744; outline-offset:3px; }
@media(max-width:480px) { #mhb-app .mhb-calendar-navigation { align-items:stretch; gap:8px; } #mhb-app .mhb-calendar-navigation button { flex:1 1 auto; font-size:14px; } }

/* Direct Chef conversation and consistent Recipe Card navigation. */
#mhb-app[data-mhb-service-role="chef"].mhb-chef-cooking #mhb-meal-control:not(:has(#mhb-meal-form:not([hidden]))) { display:none; }
#mhb-app:has([data-mhb-panel="cookbook"].is-active) > .mhb-tabs { display:none; }

/* 0.12.84: a single, compact member navigation system. */
body.mhb-member-layout .mhbd-site-doorway,
body.mhb-member-layout footer.wp-block-template-part:has(.mhb-footer),
body.mhb-member-layout #mhb-app > .mhb-tabs,
body.mhb-member-layout #mhb-app > .mhb-member-bar:not(.mhb-account-strip) { display:none!important; }
body.mhb-member-layout .mhb-account-strip { display:flex; align-items:center; justify-content:flex-start; gap:14px; padding:10px 20px; margin:0; min-height:48px; background:#1c382b; color:#f9f1db; border:0; border-radius:0; font:500 15px/1.4 system-ui,sans-serif; box-sizing:border-box; }
body.mhb-member-layout .mhb-account-strip .mhb-account-name { font-size:15px; overflow-wrap:anywhere; }
body.mhb-member-layout .mhb-account-strip .mhb-member-bar-logout { color:#f9f1db!important; font:inherit; padding:8px 0; margin:0; background:none; border:0; text-decoration:underline; white-space:nowrap; }
body.mhb-member-layout .mhb-account-strip [hidden] { display:none!important; }
body.mhb-member-layout .mhb-account-menu { margin-left:auto; position:relative; }
body.mhb-member-layout .mhb-account-menu summary { cursor:pointer; min-height:44px; display:flex; align-items:center; font-size:13px; }
body.mhb-member-layout .mhb-account-menu > div { position:absolute; z-index:120; right:0; top:100%; display:grid; gap:6px; min-width:190px; padding:12px; border:1px solid #c8b58d; border-radius:10px; background:#fffaf0; box-shadow:0 10px 30px #152d2533; }
body.mhb-member-layout .mhb-account-menu button,body.mhb-member-layout .mhb-account-menu a { min-height:44px; padding:10px; border:0; background:none; color:#243d30; font:500 14px/1.4 system-ui,sans-serif; text-align:left; cursor:pointer; text-decoration:none; }
#mhb-app .mhb-home-journals { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin:24px 0 0; padding-top:20px; border-top:1px solid #c8b58d; }
#mhb-app .mhb-home-journals a { display:flex; align-items:center; justify-content:center; min-height:110px; padding:18px; text-align:center; background:linear-gradient(145deg,#fffdf7,#f2ebdc); border:1px solid #d8cbb5; border-radius:9px; color:#243d30; font:400 23px/1.25 Georgia,serif; box-shadow:0 3px 8px #24382e08; }
#mhb-app .mhb-home-journals a:hover { border-color:#ad8243; box-shadow:0 5px 14px #24382e18; }
#mhb-app .mhb-chef-journals { display:none; order:4; }
#mhb-app[data-mhb-service-role="chef"]:not(.mhb-chef-cooking) .mhb-chef-journals { display:grid; }
#mhb-app[data-mhb-service-role="chef"] .mhb-chef-actions { grid-template-columns:repeat(3,minmax(0,1fr)); margin-bottom:0; }
#mhb-app .mhb-app-footer { display:flex; flex-wrap:wrap; gap:16px 24px; align-items:center; justify-content:space-between; margin-top:28px; padding:24px; background:#183529; color:#f5efd9; border:0; font:400 13px/1.6 system-ui,sans-serif; }
#mhb-app .mhb-app-footer p { margin:0; }
#mhb-app .mhb-app-footer p > a { display:block; font:400 25px/1.2 Georgia,serif; margin-bottom:8px; }
#mhb-app .mhb-app-footer a { color:#f5efd9; }
#mhb-app .mhb-app-footer .mhb-footer-brand { flex:1 0 100%; display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px 20px; padding-bottom:14px; border-bottom:1px solid #f5efd933; order:0; }
#mhb-app .mhb-app-footer nav { display:flex; flex-wrap:wrap; gap:14px; }
#mhb-app .mhb-conversation-room-toolbar { gap:16px; padding:18px 20px; background:#f3eddc; border-bottom:1px solid #d6c8ae; }
#mhb-app .mhb-conversation-room-toolbar strong { display:block; font:400 clamp(21px,3vw,28px)/1.25 Georgia,serif; color:#243d30; white-space:normal; -webkit-line-clamp:unset; }
#mhb-app .mhb-conversation-room-kicker { display:none; }
#mhb-app .mhb-chef-direct-actions .mhb-conversation-room-actions { display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
#mhb-app .mhb-chef-direct-actions .mhb-conversation-room-actions button { font:600 14px/1.3 system-ui,sans-serif; border-radius:9px; min-height:44px; padding:11px 14px; text-decoration:none; }
#mhb-app .mhb-chef-direct-actions .mhb-room-back { background:transparent; border:1px solid #c8b58d; color:#243d30; }
#mhb-app .mhb-chef-direct-actions .mhb-room-finish { color:#fffaf0; background:#254c39; border:1px solid #254c39; box-shadow:0 3px 8px #24382e14; }
#mhb-app .mhb-chef-direct-actions .is-danger { color:#763b45; background:transparent; border:1px solid #d8bfc3; }
#mhb-app .mhb-chef-direct-actions .mhb-conversation-room-actions button:hover { filter:brightness(.96); }
#mhb-app #mhb-chef-back { display:none!important; }
#mhb-app .mhb-chef-welcome-art { display:flex; align-items:center; justify-content:center; width:110px; height:110px; margin:0 auto 12px; border-radius:50%; color:#31543e; background:radial-gradient(circle,#faf5e6,#e5e9db); box-shadow:inset 0 0 0 1px #c8b58d66; }
#mhb-app .mhb-chef-welcome-art svg { width:86px; height:76px; }
#mhb-app .mhb-chef-welcome-question { font:400 25px/1.3 Georgia,serif; color:#243d30; margin:0; }
#mhb-app .mhb-conversation-room-history:has(.mhb-empty) { flex:0 0 auto!important; min-height:0!important; height:auto!important; max-height:none; padding:24px 18px 18px; }
#mhb-app .mhb-conversation-room-history .mhb-empty { min-height:0; padding:10px; text-align:center; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form #mhb-message { min-height:70px; max-height:150px; font-size:16px; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-composer-tools { display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
body.mhb-conversation-room-active #mhb-app .mhb-add-to-conversation { position:relative; display:block!important; }
body.mhb-conversation-room-active #mhb-app .mhb-add-to-conversation > summary { min-height:44px; display:flex; align-items:center; padding:8px 12px; border:1px solid #c8b58d; border-radius:9px; color:#243d30; background:#fffaf0; }
body.mhb-conversation-room-active #mhb-app #mhb-conversation-help { min-height:44px; border:1px solid #c8b58d; border-radius:9px; padding:8px 12px; color:#243d30; background:#fffaf0; }
@media(max-width:700px) {
 body.mhb-member-layout .mhb-account-strip { padding:6px 12px; gap:12px; }
 body.mhb-member-layout .mhb-account-name { flex:1; }
 body.mhb-member-layout .mhb-account-menu summary { font-size:12px; }
 #mhb-app .mhb-home-journals { gap:10px; padding-top:16px; margin-top:20px; }
 #mhb-app .mhb-home-journals a { padding:12px 8px; min-height:96px; font-size:19px; }
 #mhb-app[data-mhb-service-role="chef"] .mhb-chef-actions { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
 #mhb-app .mhb-chef-choice { font-size:19px; padding:14px 6px; }
 #mhb-app .mhb-conversation-room-toolbar { padding:12px; }
 #mhb-app .mhb-chef-direct-actions .mhb-conversation-room-actions { display:grid; grid-template-columns:auto minmax(0,1fr); gap:8px; }
 #mhb-app .mhb-chef-direct-actions .mhb-conversation-room-actions > .is-danger { grid-column:1 / -1; justify-self:end; font-size:12px; min-height:40px; padding:8px 12px; }
 #mhb-app .mhb-chef-welcome-art { width:88px; height:88px; }
 #mhb-app .mhb-chef-welcome-question { font-size:23px; }
 #mhb-app .mhb-app-footer { padding:20px 16px; gap:16px; }
}
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room:has(.mhb-empty) { height:auto!important; max-height:calc(var(--mhb-visible-height,100dvh) - 24px); min-height:0; overflow-y:auto; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room:has(.mhb-empty) #mhb-chat-form { flex:none; }

/* Keep account links legible against the dark green header. */
body.mhb-member-layout .mhb-account-strip .mhb-member-bar-logout:hover { color:#fff!important; text-decoration-thickness:2px; }
body.mhb-member-layout .mhb-account-strip .mhb-member-bar-logout:focus-visible { color:#fff!important; outline:2px solid #f9f1db; outline-offset:3px; border-radius:3px; }

#mhb-app .mhb-app-footer .mhb-footer-wordmark { color:#f7f1e4; font:700 25px/1 Georgia,serif; }
#mhb-app .mhb-app-footer .mhb-footer-wordmark em { color:#9c3f2f; font-style:italic; }
#mhb-app .mhb-app-footer a:has(.mhb-footer-wordmark) { text-decoration:none; }

.mhb-help-launcher { width:48px; height:48px; min-width:48px; padding:0; justify-content:center; border-radius:50%; }
body.mhb-conversation-room-active #mhb-app #mhb-conversation-help { width:44px; height:44px; padding:0; border-radius:50%; font-size:22px; font-weight:700; }

/* Help belongs to the floating menu, just above its right edge. */
#mhb-service-rail { overflow:visible; }
body #mhb-service-rail .mhb-help-launcher.mhb-menu-help { position:absolute; top:-56px; right:0; bottom:auto; width:48px; height:48px; display:flex!important; }

body #mhb-service-rail .mhb-timer-utility.mhb-menu-timer { position:absolute; top:-56px; left:0; right:auto; bottom:auto; display:flex!important; justify-content:center; align-items:center; width:48px; height:48px; min-width:48px; padding:0; border-radius:50%; box-sizing:border-box; }
#mhb-service-rail .mhb-menu-timer > small, #mhb-service-rail .mhb-menu-timer > strong { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }

/* Save is the primary action: maintain light text on green in every state. */
body #mhb-app .mhb-conversation-room .mhb-room-finish { color:#fffaf0!important; background:#254c39!important; border-color:#254c39!important; }
body #mhb-app .mhb-conversation-room .mhb-room-finish:hover { color:#fff!important; background:#1c382b!important; }
body #mhb-app .mhb-conversation-room .mhb-room-finish:focus-visible { color:#fff!important; outline:3px solid #c8a663; outline-offset:3px; }

/* A deliberate Chef heading and action hierarchy, with a full-width composer. */
#mhb-app .mhb-chef-direct-actions .mhb-conversation-room-toolbar { display:grid; grid-template-columns:minmax(0,1fr); gap:16px; padding:20px 24px; background:#f5f0e3; }
#mhb-app .mhb-chef-direct-actions .mhb-conversation-room-toolbar > div:first-child { display:flex; align-items:center; justify-content:space-between; gap:16px; }
#mhb-app .mhb-chef-direct-actions .mhb-conversation-room-toolbar strong { min-width:0; margin:0; }
#mhb-app .mhb-chef-direct-actions .mhb-room-back { flex:none; min-height:44px; padding:8px 10px; border:0; background:transparent; box-shadow:none; color:#243d30!important; font:600 14px/1.3 system-ui,sans-serif; }
#mhb-app .mhb-chef-direct-actions .mhb-conversation-room-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; width:100%; }
#mhb-app .mhb-chef-direct-actions .mhb-conversation-room-actions button { width:100%; min-height:48px; margin:0; padding:12px 16px; border-radius:12px; box-sizing:border-box; }
#mhb-app .mhb-chef-direct-actions .mhb-conversation-room-actions .is-danger { color:#763b45!important; background:#fffaf0; border-color:#dccbc5; box-shadow:none; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-composer-entry { display:grid; grid-template-columns:minmax(0,1fr)!important; gap:10px; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form #mhb-message { grid-column:1; width:100%; min-height:96px; padding:14px 16px; border-radius:12px; box-sizing:border-box; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form #mhb-send { grid-column:1; justify-self:end; width:auto; min-width:112px; min-height:44px; padding:10px 24px; border-radius:12px; }
@media(max-width:600px) {
 #mhb-app .mhb-chef-direct-actions .mhb-conversation-room-toolbar { padding:16px; gap:12px; }
 #mhb-app .mhb-chef-direct-actions .mhb-conversation-room-toolbar strong { font-size:22px; }
 #mhb-app .mhb-chef-direct-actions .mhb-conversation-room-actions { gap:8px; }
 #mhb-app .mhb-chef-direct-actions .mhb-conversation-room-actions button { padding:10px; font-size:13px; }
}

/* Reserve the menu and its utility icons below the conversation. */
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room { height:calc(var(--mhb-visible-height,100dvh) - var(--mhb-menu-clearance,170px))!important; max-height:calc(var(--mhb-visible-height,100dvh) - var(--mhb-menu-clearance,170px))!important; overflow-y:auto; overscroll-behavior:contain; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room:has(.mhb-empty) { height:auto!important; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form { flex-shrink:0; }
body.mhb-conversation-room-active #mhb-app #mhb-conversation-timer { display:none!important; }

body.mhb-member-layout .mhb-account-strip .mhb-account-refresh { color:#f9f1db!important; background:transparent; border:0; margin:0; padding:8px 0; min-height:44px; font:inherit; cursor:pointer; }
body.mhb-member-layout .mhb-account-strip .mhb-account-refresh strong { font:inherit; }
body.mhb-member-layout .mhb-account-strip .mhb-account-refresh:focus-visible { outline:2px solid #f9f1db; outline-offset:3px; }

/* The opening should not make members scroll past empty conversation space. */
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room:has(.mhb-empty) > #mhb-history { flex:none!important; height:auto!important; padding:16px!important; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-composer-tools #mhb-send { order:20; flex:0 0 auto; margin-left:auto; width:auto; min-width:88px; min-height:44px; padding:10px 20px; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-composer-entry { gap:0; }
@media(max-width:600px), (max-height:700px) {
 body.mhb-conversation-room-active #mhb-app .mhb-conversation-room:has(.mhb-empty) > #mhb-history { padding:10px!important; }
 #mhb-app .mhb-chef-welcome-art { width:64px; height:64px; margin-bottom:8px; }
 #mhb-app .mhb-chef-welcome-art svg { width:48px; height:44px; }
 #mhb-app .mhb-chef-welcome-question { font-size:21px; }
 body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form #mhb-message { min-height:76px; }
 body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-composer-tools { gap:6px; }
}

/* 0.12.87: shared member proportions and a composer that stays in view. */
#mhb-app .mhb-panel { padding:clamp(16px,3vw,36px); }
#mhb-app .mhb-panel-heading { gap:12px; margin-bottom:18px; }
#mhb-app .mhb-panel-heading h3 { margin:0 0 8px; line-height:1.18; }
#mhb-app .mhb-panel-heading p { margin:0; line-height:1.45; }
#mhb-app .mhb-calendar-navigation { margin-bottom:16px; padding-bottom:12px; }
#mhb-app .mhb-app-footer { padding-bottom:28px; }
#mhb-app { padding-bottom:160px; }
#mhb-app .mhb-conversation-room-history .mhb-empty { margin:0 auto; padding:8px; color:#445348; }
#mhb-app .mhb-conversation-room-history .mhb-empty > p { margin:6px 0 0; }
#mhb-app .mhb-chef-welcome-art { width:52px; height:52px; margin:0 auto 8px; }
#mhb-app .mhb-chef-welcome-art svg { width:40px; height:36px; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room { overflow:hidden; border-radius:16px; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room:has(.mhb-empty) { height:calc(var(--mhb-visible-height,100dvh) - var(--mhb-menu-clearance,170px))!important; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-history { order:initial; flex:1 1 auto!important; min-height:0!important; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room:has(.mhb-empty) > #mhb-history { display:flex; align-items:center; justify-content:center; flex:1 1 auto!important; min-height:0!important; padding:12px!important; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form { order:initial; gap:8px; }
body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form #mhb-message { min-height:72px; max-height:120px; }
#mhb-app .mhb-chef-direct-actions .mhb-conversation-room-toolbar { padding:14px 18px; gap:10px; }
#mhb-app .mhb-chef-direct-actions .mhb-conversation-room-actions { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
#mhb-app .mhb-chef-direct-actions .mhb-conversation-room-actions > .is-danger { grid-column:auto; }
#mhb-app .mhb-chef-direct-actions .mhb-conversation-room-actions button { min-height:44px; padding:9px 12px; border-radius:9px; }
#mhb-app .mhb-conversation-room-toolbar .mhb-room-back { min-height:44px; display:flex; align-items:center; white-space:nowrap; }
body.mhb-conversation-room-active #mhb-app #mhb-conversation-help { display:none; }
@media(max-width:700px) {
 #mhb-app .mhb-panel { padding:16px; }
 #mhb-app .mhb-panel-heading h3 { font-size:26px; }
 #mhb-app .mhb-panel-heading .mhb-kicker { margin-bottom:6px; }
 #mhb-app .mhb-calendar-navigation { flex-wrap:nowrap; gap:8px; }
 #mhb-app .mhb-calendar-navigation button { flex:0 1 auto; font-size:13px; padding:8px 10px; }
 #mhb-app .mhb-calendar-toolbar { grid-template-columns:auto minmax(0,1fr) auto; padding:8px; }
 #mhb-app .mhb-calendar-toolbar > div { grid-column:auto; grid-row:auto; }
 #mhb-app .mhb-calendar-toolbar strong { font-size:15px; }
 #mhb-app .mhb-home-journals { margin-top:16px; padding-top:14px; }
 #mhb-app .mhb-home-journals a { min-height:76px; font-size:18px; }
 #mhb-app .mhb-chef-choice { min-height:80px; font-size:18px; }
 #mhb-app .mhb-conversation-room-toolbar { padding:10px 12px; gap:8px; }
 #mhb-app .mhb-conversation-room-toolbar strong { font-size:19px; line-height:1.2; }
 #mhb-app .mhb-chef-direct-actions .mhb-conversation-room-toolbar { padding:10px 12px; gap:6px; }
 #mhb-app .mhb-chef-direct-actions .mhb-conversation-room-actions button { font-size:12px; padding:7px; }
 body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form #mhb-message { min-height:60px; max-height:88px; padding:10px; }
 body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-composer-tools { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); grid-template-areas:'dictate live send' 'read read attach'; gap:6px; }
 body.mhb-conversation-room-active #mhb-app .mhb-composer-tools .mhb-dictation,
 body.mhb-conversation-room-active #mhb-app .mhb-composer-tools .mhb-live-line { display:contents; }
 body.mhb-conversation-room-active #mhb-app .mhb-composer-tools #mhb-dictate { grid-area:dictate; }
 body.mhb-conversation-room-active #mhb-app .mhb-composer-tools #mhb-live-toggle { grid-area:live; }
 body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form .mhb-composer-tools #mhb-send { grid-area:send; margin:0; width:100%; min-width:0; padding:8px; }
 body.mhb-conversation-room-active #mhb-app .mhb-composer-tools .mhb-message-autoplay { grid-area:read; justify-content:flex-start; margin:0; padding:4px!important; }
 body.mhb-conversation-room-active #mhb-app .mhb-composer-tools .mhb-add-to-conversation { grid-area:attach; }
 body.mhb-conversation-room-active #mhb-app .mhb-composer-tools #mhb-dictate,
 body.mhb-conversation-room-active #mhb-app .mhb-composer-tools #mhb-live-toggle,
 body.mhb-conversation-room-active #mhb-app .mhb-add-to-conversation > summary { min-height:44px; width:100%; box-sizing:border-box; justify-content:center; padding:6px; font-size:12px; line-height:1.2; text-align:center; border-radius:9px; }
 body.mhb-conversation-room-active #mhb-app .mhb-composer-tools #mhb-live-state { display:none; }
 body.mhb-conversation-room-active #mhb-app .mhb-composer-tools #mhb-dictate-state:empty { display:none; }
 #mhb-app .mhb-chef-welcome-art { display:none; }
 #mhb-app .mhb-chef-welcome-question { font-size:19px; }
}
@media(max-width:420px) {
 body #mhb-service-rail { grid-template-columns:repeat(3,minmax(0,1fr)); padding:4px; gap:3px; }
 body #mhb-service-rail .mhb-service-rail-button { min-height:44px; padding:4px 3px; }
 body #mhb-service-rail .mhb-service-rail-button strong { font-size:11px; line-height:1.15; }
 body #mhb-service-rail .mhb-service-rail-button small { font-size:8px; }
 body #mhb-service-rail .mhb-menu-help,
 body #mhb-service-rail .mhb-timer-utility.mhb-menu-timer { top:-48px; width:40px; height:40px; min-width:40px; }
 body.mhb-member-layout .mhb-account-strip { flex-wrap:wrap; gap:4px 12px; padding:4px 10px; }
 body.mhb-member-layout .mhb-account-strip .mhb-account-name { font-size:13px; flex:1 1 auto; }
 body.mhb-member-layout .mhb-account-strip .mhb-account-menu { margin-left:0; }
 body.mhb-member-layout .mhb-account-strip .mhb-account-refresh { font-size:13px; }
 #mhb-app { padding-bottom:190px; }
 #mhb-app .mhb-panel-heading p { font-size:14px; }
 #mhb-app .mhb-conversation-room-toolbar strong { font-size:17px; }
 #mhb-app .mhb-chef-direct-actions .mhb-conversation-room-toolbar > div:first-child { gap:6px; }
 #mhb-app .mhb-chef-direct-actions .mhb-room-back { font-size:12px; padding:4px; }
 #mhb-app .mhb-calendar-navigation button { flex:0 1 auto; }
 #mhb-app .mhb-home-journals a { font-size:17px; padding:8px; }
}
@media(max-height:600px) {
 body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-history .mhb-empty { font-size:13px; padding:0; }
 body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-history .mhb-empty > p { display:none; }
 body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form { padding:6px 8px!important; gap:6px; }
}
/* Retire the older full-width final-action rule in compact Chef headers. */
#mhb-app .mhb-chef-direct-actions .mhb-conversation-room-actions > button:last-child { grid-column:auto; }
@media(max-width:420px), (max-height:600px) {
 #mhb-app .mhb-chef-direct-actions .mhb-conversation-room-toolbar { padding:6px 10px; gap:4px; }
 #mhb-app .mhb-chef-direct-actions .mhb-conversation-room-toolbar strong { font-size:17px; line-height:1.15; }
 body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-chat-form #mhb-message { min-height:52px; height:52px; max-height:76px; }
 body.mhb-conversation-room-active #mhb-app .mhb-conversation-room > #mhb-history { padding:4px 8px!important; }
 body.mhb-conversation-room-active #mhb-app .mhb-conversation-room:has(.mhb-empty) > #mhb-history { padding:4px 8px!important; }
}

/* 0.12.89: keep both floating utilities square and on one baseline. */
body #mhb-service-rail .mhb-help-launcher.mhb-menu-help,
body #mhb-service-rail .mhb-timer-utility.mhb-menu-timer {
 top:-56px; width:48px; height:48px; min-width:48px; min-height:48px;
 max-width:48px; max-height:48px; margin:0; padding:0; box-sizing:border-box;
}
@media(max-width:420px) {
 body #mhb-service-rail .mhb-help-launcher.mhb-menu-help,
 body #mhb-service-rail .mhb-timer-utility.mhb-menu-timer {
  top:-48px; width:40px; height:40px; min-width:40px; min-height:40px;
  max-width:40px; max-height:40px;
 }
}

/* Staff rooms share the Chef actions; empty rooms keep the composer in focus. */
#mhb-app .mhb-chef-direct-actions .mhb-conversation-room-actions[hidden],
#mhb-app .mhb-chef-direct-actions .mhb-conversation-room-actions button[hidden] { display:none!important; }
#mhb-app .mhb-chef-direct-actions .mhb-conversation-history-tools { display:flex; flex-wrap:wrap; align-items:center; gap:4px 12px; }
#mhb-app .mhb-chef-direct-actions .mhb-conversation-history-tools[hidden],
#mhb-app .mhb-chef-direct-actions .mhb-conversation-history-tools button[hidden] { display:none!important; }
#mhb-app.mhb-unified-conversations #mhb-close-round,
#mhb-app.mhb-unified-conversations [data-mhb-close-pastry],
#mhb-app.mhb-unified-conversations [data-mhb-close-wine] { display:none!important; }

/* Archive browsing is secondary to the current conversation. */
#mhb-app .mhb-conversation-archive-tools { padding:8px 12px; border-top:1px solid #dccfb9; text-align:center; background:#fffaf0; }
#mhb-app .mhb-conversation-archive-tools[hidden] { display:none!important; }
#mhb-app .mhb-conversation-archive-tools button { min-height:44px; font-size:14px; }
#mhb-app .mhb-chef-direct-actions .mhb-conversation-room-actions button:disabled { opacity:.5; cursor:default; box-shadow:none; }
#mhb-app .mhb-history-return { margin:10px 0; min-height:44px; }

/* Compact archive access below communication controls. */
#mhb-app .mhb-conversation-archive-tools { flex:none; padding:2px 12px; }
#mhb-app .mhb-conversation-archive-tools button { min-height:44px; padding:4px 8px; font-size:13px; }

/* 0.12.93: compact recipe shelf and consistent communication controls. */
#mhb-app .mhb-cookbook-card:has(.mhb-recipe-disclosure) { display:block; padding:0; }
.mhb-recipe-summary { display:flex; align-items:center; gap:12px; padding:16px 18px; cursor:pointer; list-style:none; min-height:60px; }
.mhb-recipe-summary::-webkit-details-marker { display:none; }
.mhb-recipe-summary::before { content:"›"; font-size:24px; color:#6d2434; transition:transform .15s; }
.mhb-recipe-disclosure[open] > summary::before { transform:rotate(90deg); }
.mhb-recipe-summary-title { flex:1; color:#542537; font-weight:700; font-size:18px; }
.mhb-recipe-summary-date { color:#596159; font-size:13px; white-space:nowrap; }
.mhb-recipe-disclosure-body { padding:0 18px 18px; border-top:1px solid #ded3bd; }
.mhb-recipe-disclosure-body .mhb-cookbook-copy { padding-top:14px; }
.mhb-recipe-summary:focus-visible { outline:3px solid #254c39; outline-offset:-3px; border-radius:12px; }
.mhb-has-continuation strong::after { content:" •"; color:#ead4a0; }
.mhb-shared-staff-tools { display:flex!important; flex-wrap:wrap; align-items:center; gap:8px!important; }
.mhb-shared-staff-tools > .mhb-live-line { flex:0 1 auto!important; margin:0!important; padding:0!important; background:none!important; border:0!important; box-shadow:none!important; }
.mhb-shared-staff-tools .mhb-live-state { display:none; }
.mhb-shared-staff-tools .mhb-live-button,.mhb-shared-staff-tools .mhb-dictate-launch,.mhb-shared-staff-tools .mhb-help-voice-actions > button { min-height:40px!important; padding:8px 12px!important; font-size:13px!important; border-radius:999px!important; }
.mhb-shared-staff-tools > button[type="submit"] { margin-left:auto!important; flex:0 0 auto!important; width:auto!important; min-height:44px!important; padding:10px 20px!important; border-radius:9px!important; }
.mhb-shared-staff-tools .mhb-autoplay,.mhb-shared-staff-tools .mhb-help-auto-voice { border:0!important; background:none!important; padding:4px!important; font-size:12px!important; margin:0!important; }
#mhb-help-form { display:block; }
#mhb-help-form > div:first-of-type { display:block; }
#mhb-help-form textarea { width:100%; min-height:72px; box-sizing:border-box; }
#mhb-help-form .mhb-shared-staff-tools { margin-top:8px; }
#mhb-help-form .mhb-help-voice-actions { display:contents; }
#mhb-help-form .mhb-help-voice-tools { margin:0; }
#mhb-help-form #mhb-help-dictate-state:empty { display:none; }
#mhb-help-new-conversation { display:none; }
#mhb-help-drawer .mhb-conversation-room-toolbar { background:#f5f0e3; color:#20342e; border-bottom:1px solid #d0c6af; padding:14px 18px; }
#mhb-help-drawer .mhb-conversation-room-toolbar strong { color:#243d30; font-family:Georgia,serif; font-size:24px; font-weight:400; }
.mhb-chef-direct-actions .mhb-conversation-room-kicker { display:none; }
.mhb-chef-direct-actions .mhb-conversation-room-toolbar > div:first-child { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.mhb-chef-direct-actions .mhb-conversation-room-actions { display:flex; flex-wrap:wrap; gap:8px; }
.mhb-chef-direct-actions .mhb-room-finish { background:#254c39; color:#fffaf0; border-radius:9px; min-height:44px; }
.mhb-chef-direct-actions .mhb-room-back { color:#243d30; margin-left:auto; min-height:44px; }
.mhb-chef-direct-actions .mhb-room-options[hidden] { display:none!important; }
#mhb-coupon-lady-form .mhb-shared-staff-tools { display:flex; }
#mhb-coupon-lady-form textarea { min-height:72px; }
@media(max-width:600px) {
 .mhb-recipe-summary { gap:8px; padding:12px; flex-wrap:wrap; }
 .mhb-recipe-summary-title { font-size:16px; flex-basis:calc(100% - 30px); }
 .mhb-recipe-summary-date { padding-left:22px; }
 .mhb-shared-staff-tools { gap:6px!important; }
 #mhb-help-drawer .mhb-conversation-room-toolbar strong { font-size:20px; }
}

#mhb-help-drawer .mhb-room-finish,#mhb-coupon-lady .mhb-room-finish { color:#fffaf0!important; background:#254c39!important; text-decoration:none!important; font-weight:700; padding:10px 16px!important; min-height:44px; border-radius:9px!important; }
#mhb-help-drawer .mhb-room-finish { width:100%; }
#mhb-coupon-lady .mhb-conversation-room-toolbar { background:#f5f0e3!important; color:#20342e!important; padding:14px 18px; }
#mhb-coupon-lady .mhb-conversation-room-toolbar strong { color:#243d30!important; font-family:Georgia,serif; font-size:24px; font-weight:400; }
#mhb-coupon-lady .mhb-dictation { flex:0 0 auto!important; width:auto!important; }
#mhb-coupon-lady .mhb-message-actions .mhb-dictation button { width:auto!important; flex:0 0 auto!important; }
#mhb-coupon-lady-fresh { display:none!important; }
#mhb-coupon-lady .mhb-room-finish:disabled { opacity:.5; cursor:default; }

/* Keep company furniture on Home; task screens retain access through Member Menu. */
#mhb-app > .mhb-app-footer { display:none!important; }
#mhb-app:has([data-mhb-panel="front-door"]:not([hidden])) > .mhb-app-footer { display:flex!important; }
.mhb-account-menu .mhb-menu-company { display:block; margin:8px 0; padding-top:8px; border-top:1px solid #ded3bd; }
.mhb-account-menu .mhb-menu-company small { display:block; padding:8px 12px; max-width:210px; color:#596159; line-height:1.4; }

/* Explain empty sessions in words rather than presenting unresponsive actions. */
.mhb-conversation-room-toolbar .mhb-room-finish[hidden], .mhb-conversation-room-toolbar .is-danger[hidden] { display:none!important; }
.mhb-conversation-empty-actions { margin:4px 0 0!important; color:#445348!important; font:400 14px/1.45 system-ui,sans-serif!important; grid-column:1/-1; }
.mhb-conversation-empty-actions[hidden] { display:none!important; }

/* Titles and dates remain visible; each saved Meal opens independently. */
#mhb-app .mhb-saved-meal-row { display:block; padding:0; }
#mhb-app .mhb-saved-meal-row > summary { display:list-item; margin:0 18px; padding:16px 4px; cursor:pointer; color:#243d30; }
#mhb-app .mhb-saved-meal-row > summary strong { font-family:Georgia,serif; font-size:20px; }
#mhb-app .mhb-saved-meal-row > summary small { display:block; margin:5px 0 0 18px; }
#mhb-app .mhb-saved-meal-row > .mhb-saved-meal-copy, #mhb-app .mhb-saved-meal-row > .mhb-saved-meal-actions { margin:0 18px 16px; }
#mhb-app .mhb-restaurant-choice { display:grid; gap:10px; margin:16px 0; }
#mhb-app .mhb-restaurant-choice label { display:grid; gap:6px; }
#mhb-app .mhb-restaurant-choice [hidden] { display:none!important; }

#mhb-app .mhb-closest-matches { margin-top:18px; padding-top:16px; border-top:1px solid #bba783; }
#mhb-app .mhb-closest-matches button, #mhb-app #mhb-cost-restaurant { width:100%; white-space:normal; min-height:48px; }
#mhb-app .mhb-earlier-comparisons { margin-top:20px; }
#mhb-app .mhb-earlier-comparisons > details { margin:10px 0; padding:14px; border:1px solid #bba783; border-radius:12px; }
