/* Entitlements 75h - locked states for paid features. Calm, quiet surfaces on
   the existing glass tokens, so day/night/sunrise/sunset themes all follow. */
.ent75h{
  display:flex;flex-direction:column;align-items:flex-start;gap:12px;
  max-width:520px;margin:24px auto 0;padding:26px 22px 22px;
  background:var(--glass);border:1px solid var(--line);border-radius:26px;
  box-shadow:var(--shadow-sm);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);
}
.ent75h h1{font-size:30px;margin:0}
.ent75h .small{max-width:44ch}
.ent75h-lock{
  width:52px;height:52px;border-radius:50%;display:grid;place-items:center;
  color:var(--sand-deep);background:var(--sand-tint);border:1px solid var(--line);
}
.ent75h-actions{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:6px}
.ent75h-cta.is-disabled{opacity:.55;cursor:default;pointer-events:none}
.ent75h-cta-note{margin:0}
.ent75h-home{margin:2px 0 0}
.ent75h-note{display:flex;align-items:center;gap:10px;margin:4px 0 0}
.ent75h-note .ent75h-lock{width:34px;height:34px;flex:none}
.ent75h-note .ent75h-lock svg{width:18px;height:18px}
@media (min-width:1000px){
  .ent75h{margin-top:48px;padding:34px 30px 26px;max-width:560px}
  .ent75h h1{font-size:34px}
}

/* ---------- Upgrade / booking preview screen ---------- */
.ent75h-lane{display:flex;flex-direction:column;gap:12px}
.ent75h-tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.ent75h-tier h3,.ent75h-call h3{color:var(--ink)}
.ent75h-tier{display:flex;flex-direction:column;gap:8px;align-items:flex-start;padding:20px 18px;height:100%}
.ent75h-tier .ent75h-cta{margin-top:auto}
.ent75h-tier-note{margin:0;min-height:1.25em}
.ent75h-tier.ent75h-mine{border-color:var(--sand);box-shadow:var(--shadow-sm)}
.ent75h-chart-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:18px;background:var(--glass)}
.ent75h-chart{width:100%;border-collapse:collapse;font-size:14px;min-width:480px}
.ent75h-chart th,.ent75h-chart td{padding:10px 14px;text-align:left;border-bottom:1px solid var(--line)}
.ent75h-chart thead th{font-family:var(--f-title);font-weight:400;letter-spacing:.08em;text-transform:uppercase;font-size:12px;color:var(--ink-3)}
.ent75h-chart tbody th{font-weight:500}
.ent75h-chart tbody tr:last-child th,.ent75h-chart tbody tr:last-child td{border-bottom:0}
.ent75h-chart td{color:var(--ink-2)}
.ent75h-calls{display:flex;flex-direction:column;gap:12px}
.ent75h-call{display:flex;flex-direction:column;gap:10px;padding:20px 18px}
.ent75h-price{font-family:var(--f-title);font-size:26px;color:var(--sand-deep)}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (min-width:560px){
  .ent75h-call{flex-direction:row;align-items:center}
}
.ent75h-banner{padding:14px 18px;border:1px solid var(--sand);border-radius:16px;background:var(--sand-tint);color:var(--ink);font-size:15px;line-height:1.5}
.ent75h-tier-price{font-family:var(--f-title);font-size:22px;color:var(--sand-deep);margin:2px 0 0;min-height:1.4em}
.ent75h-tier-price .tiny{font-family:var(--f);font-size:12px;letter-spacing:.02em}
.ent75h-tier-blurb{font-family:var(--f);font-size:15px;line-height:1.45;letter-spacing:0;color:var(--ink-2)}

/* Paid meal-builder lock: readable night card, scoped to this new surface. */
[data-theme="night"] .ent75h.ent75h-meal-builder { background:#292824; color:#f4eee5; border:1px solid #716758; }
[data-theme="night"] .ent75h-meal-builder .muted,
[data-theme="night"] .ent75h-meal-builder .eyebrow,
[data-theme="night"] .ent75h-meal-builder .ent75h-home .link { color:#e4dacb; }
[data-theme="night"] .ent75h-meal-builder .ent75h-cta { color:#fff; background:#806749; }
