/* MomBoss ODO (One Day Only) — v2.9.4 */

.mb-odo-page { background: #FAFAFA; }

/* Flash messages */
.mb-odo-flash { padding: 14px 20px; text-align: center; font-family: 'Poppins', sans-serif; font-size: 0.9rem; font-weight: 600; border-radius: 0; }
.mb-odo-flash--success { background: linear-gradient(135deg, #E8F5E9, #C8E6C9); color: #2E7D32; }

/* Hero */
.mb-odo-hero { background: linear-gradient(160deg, #FFE0EC 0%, #F3D9F8 40%, #DDD3F5 80%, #C9D8F5 100%); color:var(--mb-ink,#3D2630); padding: 48px 20px 40px; text-align: center; position: relative; overflow: hidden; }
.mb-odo-hero::after { content: ''; position: absolute; bottom: -2px; left: 0; right: 0; height: 40px; background: linear-gradient(to top, #FAFAFA, transparent); }
.mb-odo-hero__icon { font-size: 3rem; margin-bottom: 12px; animation: mb-odo-float 3s ease-in-out infinite; }
@keyframes mb-odo-float { 0%,100% { transform: translateY(0) rotate(-10deg); } 50% { transform: translateY(-8px) rotate(10deg); } }
.mb-odo-hero__title { font-family: 'Playfair Display', serif; font-size: 2.2rem; font-weight: 700; margin: 0 0 8px; }
.mb-odo-hero__sub { font-family: 'Poppins', sans-serif; font-size: 1rem; opacity: 0.75; max-width: 500px; margin: 0 auto 24px; }
.mb-odo-hero__countdown { display: flex; justify-content: center; gap: 16px; }
.mb-odo-cd { display: flex; flex-direction: column; align-items: center; }
.mb-odo-cd__num { font-family: 'Poppins', sans-serif; font-size: 2.4rem; font-weight: 800; background: linear-gradient(135deg, var(--mb-rose-gold,#B76E79) 0%, #F5E6CC 100%); color:var(--mb-ink,#3D2630); border-radius: 10px; padding: 8px 16px; min-width: 64px; line-height: 1.1; box-shadow: 0 4px 12px rgba(183,110,121,0.35); }
.mb-odo-cd__lbl { font-size: 0.7rem; text-transform: uppercase; letter-spacing: 1px; opacity: 0.7; margin-top: 4px; font-weight: 600; }

/* Deals grid */
.mb-odo-deals { padding: 32px 0; }
.mb-odo-deals__title { font-family: 'Playfair Display', serif; font-size: 1.5rem; color:var(--mb-ink,#3D2630); margin-bottom: 20px; }
.mb-odo-deals__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 20px; }

/* Deal card */
.mb-odo-card { background: #fff; border-radius: 14px; overflow: hidden; text-decoration: none; color:var(--mb-ink,#3D2630); box-shadow: 0 2px 12px rgba(0,0,0,0.06); transition: transform 0.2s, box-shadow 0.2s; display: flex; flex-direction: column; position: relative; }
.mb-odo-card:hover { transform: translateY(-3px); box-shadow: 0 8px 24px rgba(233,30,99,0.12); }
.mb-odo-card__badge { position: absolute; top: 12px; left: 12px; background: #E91E63; color: #fff; font-size: 0.65rem; font-weight: 700; padding: 3px 10px; border-radius: 20px; z-index: 2; letter-spacing: 0.5px; }
.mb-odo-card--full_monty .mb-odo-card__badge { background: linear-gradient(135deg, #E91E63, var(--mb-rose-gold,#B76E79)); }
.mb-odo-card--autopilot .mb-odo-card__badge { background: linear-gradient(135deg, var(--mb-rose-gold,#B76E79), #FFD700); color:var(--mb-ink,#3D2630); }
.mb-odo-card__img { aspect-ratio: 1; overflow: hidden; background: linear-gradient(135deg, #FCE4EC, #F3E5F5); }
.mb-odo-card__img img { width: 100%; height: 100%; object-fit: cover; }
.mb-odo-card__placeholder { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; font-size: 3rem; }
.mb-odo-card__body { padding: 14px 16px; flex: 1; display: flex; flex-direction: column; }
.mb-odo-card__vendor { font-size: 0.75rem; color: #999; margin-bottom: 4px; }
.mb-odo-card__title { font-family: 'Poppins', sans-serif; font-size: 0.95rem; font-weight: 600; margin: 0 0 8px; line-height: 1.3; }
.mb-odo-card__price { display: flex; align-items: center; gap: 8px; margin-bottom: 6px; }
.mb-odo-card__was { color: #999; font-size: 0.85rem; }
.mb-odo-card__now { color: #E91E63; font-weight: 700; font-size: 1.05rem; }
.mb-odo-card__timer { font-size: 0.75rem; color: #E91E63; font-weight: 600; margin-top: auto; }

/* Tier CTAs */
.mb-odo-cta-strip { padding: 40px 0 48px; background: #fff; }
.mb-odo-tiers { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 20px; max-width: 900px; margin: 0 auto; }
.mb-odo-tier { background: #FAFAFA; border: 2px solid #eee; border-radius: 16px; padding: 28px 24px; text-align: center; position: relative; transition: border-color 0.2s, transform 0.2s; overflow: hidden; }
.mb-odo-tier__img { margin: -28px -24px 20px; aspect-ratio: 3/2; overflow: hidden; background: linear-gradient(160deg, #FFE4EC 0%, #FFC8D8 50%, #FF9EBD 100%); }
.mb-odo-tier__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.mb-odo-tier:hover { transform: translateY(-2px); }
.mb-odo-tier--full-monty { border-color: #E91E63; background: #FFF0F5; }
.mb-odo-tier--autopilot { border-color: var(--mb-rose-gold,#B76E79); background: #FFFBF0; }
.mb-odo-tier__ribbon { position: absolute; top: 12px; left: 50%; transform: translateX(-50%); background: #E91E63; color: #fff; font-size: 0.7rem; font-weight: 700; padding: 4px 16px; border-radius: 20px; white-space: nowrap; z-index: 2; box-shadow: 0 2px 8px rgba(233,30,99,0.35); }
.mb-odo-tier__badge { font-family: 'Poppins', sans-serif; font-size: 0.75rem; font-weight: 800; letter-spacing: 1.5px; color: #999; margin-bottom: 8px; }
.mb-odo-tier--full-monty .mb-odo-tier__badge { color: #E91E63; }
.mb-odo-tier--autopilot .mb-odo-tier__badge { color: var(--mb-rose-gold,#B76E79); }
.mb-odo-tier__price { font-family: 'Playfair Display', serif; font-size: 2rem; font-weight: 700; color:var(--mb-ink,#3D2630); margin-bottom: 12px; }
.mb-odo-tier__cadence { font-size: 0.9rem; font-weight: 400; opacity: 0.6; }
.mb-odo-tier__pitch { font-family: 'Poppins', sans-serif; font-size: 0.85rem; color: #666; line-height: 1.5; margin-bottom: 20px; }

/* Buttons */
.mb-odo-btn { display: inline-block; padding: 12px 28px; border-radius: 30px; font-family: 'Poppins', sans-serif; font-size: 0.9rem; font-weight: 600; text-decoration: none; text-align: center; transition: all 0.2s; cursor: pointer; }
.mb-odo-btn--ghost { background: transparent; border: 2px solid #1A1A2E; color:var(--mb-ink,#3D2630); }
.mb-odo-btn--ghost:hover { background: #1A1A2E; color: #fff; }
.mb-odo-btn--primary { background: #E91E63; border: 2px solid #E91E63; color: #fff; }
.mb-odo-btn--primary:hover { background: #C2185B; border-color: #C2185B; }
.mb-odo-btn--gold { background: linear-gradient(135deg, var(--mb-rose-gold,#B76E79), #FFD700); border: 2px solid var(--mb-rose-gold,#B76E79); color:var(--mb-ink,#3D2630); }
.mb-odo-btn--gold:hover { background: linear-gradient(135deg, #C49B30, #E6C200); }

.mb-odo-math { text-align: center; font-family: 'Poppins', sans-serif; font-size: 0.8rem; color: #999; margin-top: 24px; max-width: 600px; margin-left: auto; margin-right: auto; }

/* Mobile */
@media (max-width: 600px) {
	.mb-odo-hero__title { font-size: 1.6rem; }
	.mb-odo-hero__sub { font-size: 0.85rem; }
	.mb-odo-cd__num { font-size: 1.8rem; padding: 6px 12px; min-width: 50px; }
	.mb-odo-deals__grid { grid-template-columns: 1fr 1fr; gap: 12px; }
	.mb-odo-card__title { font-size: 0.85rem; }
	.mb-odo-tiers { grid-template-columns: 1fr; }
	.mb-odo-tier__price { font-size: 1.6rem; }
}


/* ============================================================
 * Q3 (15 Jul 2026) — urgency machine additions.
 * Appended to assets/css/odo.css (handle mb-odo-css, served raw
 * via data-no-optimize from the template filter).
 * Light Pink Economy tokens: ink var(--mb-ink) #3D2630 · #E91E63 · var(--mb-rose-gold,#B76E79).
 * ============================================================ */

/* Hover lift on deal cards */
.mb-odo-card { transition: transform .18s cubic-bezier(0.4,0,0.2,1), box-shadow .2s ease; position: relative; }
.mb-odo-card:hover { transform: translateY(-4px); box-shadow: 0 14px 36px rgba(233,30,99,0.18); }

/* -% badge */
.mb-odo-card__pct {
	position: absolute; top: 10px; left: 10px; z-index: 3;
	background: linear-gradient(135deg, #E91E63, #C2185B);
	color: #fff; font-weight: 800; font-size: 0.8rem;
	padding: 5px 12px; border-radius: 12px;
	box-shadow: 0 4px 12px rgba(233,30,99,0.35);
	font-family: 'Poppins', sans-serif;
}
.mb-odo-card__pct--tomorrow { background: linear-gradient(135deg, var(--mb-rose-gold,#B76E79), #B8860B); font-size: 0.72rem; }

/* Stock urgency chip */
.mb-odo-card__stock {
	position: absolute; top: 10px; right: 10px; z-index: 3;
	background: #FFF4E5; color: #B45309; border: 1px solid rgba(180,83,9,0.35);
	font-weight: 700; font-size: 0.7rem; padding: 4px 10px; border-radius: 10px;
	font-family: 'Poppins', sans-serif;
}

/* Branded gradient fallback — never the placeholder bag */
.mb-odo-card__brandfall {
	width: 100%; height: 100%; min-height: 180px;
	display: flex; align-items: center; justify-content: center; position: relative;
	background: linear-gradient(160deg, #FFE0EC 0%, #F3D9F8 55%, #FDE8F0 100%);
}
.mb-odo-card__brandfall-initial {
	font-family: 'Playfair Display', serif; font-size: 3.2rem; font-weight: 700;
	color: rgba(233,30,99,0.5);
}
.mb-odo-card__brandfall-petal {
	position: absolute; bottom: 10px; right: 12px; font-size: 1.2rem; opacity: 0.7;
}

/* Tomorrow's Drops */
.mb-odo-upcoming { padding: 40px 0 48px; background: linear-gradient(180deg, #FFF5F7 0%, #FFF 100%); }
.mb-odo-upcoming__title::before { content: none; }
.mb-odo-upcoming__sub { text-align: center; color: #757575; font-size: 0.9rem; margin: -8px 0 24px; font-family: 'Poppins', sans-serif; }
.mb-odo-card--teaser { cursor: default; }
.mb-odo-card--teaser:hover { transform: translateY(-2px); }
.mb-odo-card__img--teaser { position: relative; overflow: hidden; }
.mb-odo-card__img--teaser img { filter: blur(3px) saturate(0.7) brightness(1.05); transform: scale(1.05); }
.mb-odo-card__lock {
	position: absolute; inset: auto 0 0 0; text-align: center;
	background: linear-gradient(0deg, rgba(33,33,33,0.55), rgba(33,33,33,0));
	color: #fff; font-size: 0.75rem; font-weight: 700; padding: 18px 8px 8px;
	font-family: 'Poppins', sans-serif;
}
.mb-odo-card__title--teaser { color: #757575; }
.mb-odo-remind {
	margin-top: 10px; width: 100%; min-height: 44px;
	border: 1.5px solid rgba(183,110,121,0.55); border-radius: 12px;
	background: linear-gradient(90deg, #FDF6E3, #FAF0D7); color: #8a6d1f;
	font-weight: 700; font-size: 0.85rem; cursor: pointer;
	font-family: 'Poppins', sans-serif;
	transition: transform .15s ease, box-shadow .2s ease;
}
.mb-odo-remind:hover { transform: translateY(-1px); box-shadow: 0 6px 16px rgba(183,110,121,0.3); }
.mb-odo-remind:disabled { opacity: 0.85; cursor: default; transform: none; }

/* Pink Flash CTA card */
.mb-odo-flashcard {
	max-width: 420px; margin: 0 auto;
	background: #fff; border: 1.5px solid rgba(233,30,99,0.2); border-radius: 20px;
	padding: 26px 24px; box-shadow: 0 8px 30px rgba(233,30,99,0.12);
	display: flex; flex-direction: column; align-items: center; gap: 6px;
}
.mb-odo-flashcard__emoji { font-size: 2rem; }
.mb-odo-flashcard__name { font-family: 'Playfair Display', serif; font-size: 1.2rem; font-weight: 700; color:var(--mb-ink,#3D2630); }
.mb-odo-flashcard__price { font-size: 1.6rem; font-weight: 800; color: #E91E63; font-family: 'Playfair Display', serif; }
.mb-odo-flashcard__price em { font-style: normal; font-size: 0.85rem; color: #8a6d1f; font-family: 'Poppins', sans-serif; margin-left: 6px; }
.mb-odo-flashcard__per { font-size: 0.78rem; color: #9E9E9E; font-family: 'Poppins', sans-serif; }
.mb-odo-flashcard__btns { display: flex; gap: 10px; flex-wrap: wrap; justify-content: center; margin-top: 14px; }


/* ── Line icons (10 Aug 2026) ──────────────────────────────────
   Emoji were standing in for icons here. They are now inline SVG using
   currentColor, so each mark takes the colour of the text it sits in and
   there is one icon language across the site instead of two. */
.mb-odo-hero__icon svg,
.mb-odo-empty__mark svg,
.mb-odo-flashcard__emoji svg { color: var(--mb-pink,#E91E63); }
.mb-odo-empty__mark { margin-bottom: 12px; line-height: 0; }
.mb-odo-deals__title svg,
.mb-odo-card__lock svg,
.mb-odo-remind svg,
.mb-odo-btn svg,
.mb-odo-card__brandfall-petal svg,
.mb-odo-flashcard__price svg { vertical-align: -0.14em; }
.mb-odo-deals__title svg { color: var(--mb-pink,#E91E63); }
