/* =====================================================================
   Meravyaah UI v2 - components (LIGHT theme)
   Uses ONLY variables from tokens.css. No raw colours.
   Contrast rules: body/UI text is always --mv-text(-2/-3) (ink);
   wine-500 is the accent: fills, borders, icons, buttons (6.8:1 with white).
   All classes are prefixed "mv-" so they never clash with legacy CSS.
   ===================================================================== */

/* ---------- site-wide typography (replaces Raleway / Muli) ---------- */
html body,
html body :is(p, span, a, li, td, th, label, input, select, textarea, button, small, strong, b, em, div, dt, dd, blockquote):not(.fa):not([class^="icon-"]):not([class*=" icon-"]) {
  font-family: var(--mv-font-body) !important;
}
html body :is(h1, h2, h3, h4, h5, h6) { font-family: var(--mv-font-head) !important; letter-spacing: 0; }
html body { -webkit-font-smoothing: antialiased; }

/* ---------- helpers ---------- */
.mv-scope *, .mv-scope *::before, .mv-scope *::after { box-sizing: border-box; }
.mv-scope :focus-visible { outline: 3px solid var(--mv-focus); outline-offset: 2px; }
.mv-scope img { max-width: 100%; }
.mv-container { max-width: 1200px; margin: 0 auto !important; padding-left: var(--mv-gutter) !important; padding-right: var(--mv-gutter) !important; width: 100%; }
.mv-sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.mv-i { width: 20px; height: 20px; flex: none; display: inline-block; vertical-align: middle; color: inherit; }
.mv-i-sm { width: 16px; height: 16px; }
.mv-i-lg { width: 24px; height: 24px; }
.mv-i-xl { width: 28px; height: 28px; }

/* ---------- wordmark ---------- */
.mv-wordmark { display: inline-flex; align-items: baseline; font-family: var(--mv-font-head) !important; font-weight: 700; font-size: 26px; line-height: 1; letter-spacing: .01em; text-decoration: none !important; white-space: nowrap; }
.mv-wordmark .mv-wm-a { color: var(--mv-text); }
.mv-wordmark .mv-wm-b { color: var(--mv-wine-500); position: relative; }
.mv-wordmark .mv-wm-b::after { content: ""; position: absolute; left: 2px; right: 2px; bottom: -5px; height: 2px; border-radius: 2px; background: var(--mv-gold-500); transform-origin: left; }
.mv-wordmark span span { display: inline-block; }
.mv-wordmark.is-animated span span { opacity: 0; transform: translateY(10px); animation: mv-letter 520ms var(--mv-ease) forwards; animation-delay: calc(var(--d) * 55ms + 120ms); }
.mv-wordmark.is-animated .mv-wm-b::after { transform: scaleX(0); animation: mv-line 600ms var(--mv-ease) 760ms forwards; }
@keyframes mv-letter { to { opacity: 1; transform: none; } }
@keyframes mv-line { to { transform: scaleX(1); } }

/* ---------- buttons ---------- */
.mv-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  min-height: 48px; padding: 0 22px; border-radius: var(--mv-r-md); border: 1.5px solid transparent;
  font-size: 16px; font-weight: 500; line-height: 1; text-decoration: none !important; cursor: pointer; white-space: nowrap;
  transition: background var(--mv-fast) ease, color var(--mv-fast) ease, border-color var(--mv-fast) ease, box-shadow var(--mv-base) ease, transform var(--mv-base) var(--mv-ease);
}
.mv-btn:active { transform: translateY(1px); }
/* primary: white text on wine-500 (passes AA at any size) */
.mv-btn-primary { background: var(--mv-primary); color: var(--mv-on-primary) !important; font-size: 16px; font-weight: 500; letter-spacing: .01em; box-shadow: var(--mv-shadow-primary); }
.mv-btn-primary:hover { background: var(--mv-primary); color: var(--mv-on-primary) !important; transform: translateY(-1px); box-shadow: 0 12px 26px rgba(163,52,58,.32); }
.mv-btn-outline { background: var(--mv-surface); color: var(--mv-text) !important; border-color: var(--mv-accent-line); }
.mv-btn-outline:hover { background: var(--mv-wine-50); }
.mv-btn-block { width: 100%; }
.mv-btn-lg { min-height: 56px; padding: 0 28px; }

/* ---------- AI chip ---------- */
.mv-ai-chip { display: inline-flex; align-items: center; gap: 5px; padding: 3px 10px 3px 8px; border-radius: var(--mv-r-pill); background: var(--mv-grad-ai-soft); border: 1px solid var(--mv-wine-200); color: var(--mv-text); font-size: 12px; font-weight: 500; white-space: nowrap; }
.mv-ai-chip .mv-i { color: var(--mv-wine-500); }

/* =====================================================================
   HEADER  (views/Home/navbar.php)
   ===================================================================== */
.mv-header { position: sticky; top: 0; z-index: 1030; background: rgba(255,255,255,.96); border-bottom: 1px solid var(--mv-border); backdrop-filter: saturate(1.4) blur(6px); }
.mv-header-bar { display: flex; align-items: center; gap: 12px; min-height: 64px; }
.mv-nav { display: none; }
.mv-header-actions { margin-left: auto; display: flex; align-items: center; gap: 6px; }
.mv-login { display: inline-flex; align-items: center; gap: 6px; color: var(--mv-text) !important; font-weight: 500; text-decoration: none !important; padding: 10px; }
.mv-login .mv-i { color: var(--mv-wine-500); }
.mv-login:hover { text-decoration: underline !important; text-decoration-color: var(--mv-accent-line) !important; text-underline-offset: 6px; }
.mv-header-actions .mv-btn { display: none; }
.mv-burger { width: 44px; height: 44px; border-radius: var(--mv-r-md); border: 1px solid var(--mv-border); background: var(--mv-surface); color: var(--mv-text); display: inline-flex; align-items: center; justify-content: center; cursor: pointer; padding: 0; }
.mv-drawer { display: none; border-top: 1px solid var(--mv-border); background: var(--mv-surface); max-height: calc(100vh - 64px); overflow-y: auto; }
.mv-drawer.is-open { display: block; }
.mv-drawer a, .mv-drawer summary { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 52px; padding: 0 var(--mv-gutter, 16px); color: var(--mv-text) !important; font-weight: 500; text-decoration: none !important; border-bottom: 1px solid var(--mv-border); cursor: pointer; list-style: none; }
.mv-drawer summary::-webkit-details-marker { display: none; }
.mv-drawer details[open] summary .mv-i { transform: rotate(180deg); }
.mv-drawer details a { font-weight: 500; padding-left: calc(var(--mv-gutter, 16px) + 14px); background: var(--mv-bg); }
.mv-drawer .mv-drawer-cta { padding: 14px var(--mv-gutter, 16px) 18px; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; border: 0; }
.mv-drawer .mv-drawer-cta a { border-bottom: 0; justify-content: center; padding: 0 12px; }
.mv-drawer .mv-drawer-cta .mv-btn-outline { border: 1.5px solid var(--mv-accent-line); }
.mv-dd { position: relative; }
.mv-dd-btn { display: inline-flex; align-items: center; gap: 4px; background: none; border: 0; padding: 0; cursor: pointer; }
.mv-dd-menu { position: absolute; top: calc(100% + 8px); left: -16px; min-width: 250px; background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-md); box-shadow: var(--mv-shadow-lg); padding: 8px; display: none; z-index: 10; }
.mv-dd.is-open .mv-dd-menu, .mv-dd:hover .mv-dd-menu, .mv-dd:focus-within .mv-dd-menu { display: block; }
.mv-dd-menu a { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: var(--mv-r-sm); color: var(--mv-text) !important; font-weight: 500 !important; text-decoration: none !important; }
.mv-dd-menu a .mv-i { color: var(--mv-wine-500); }
.mv-dd-menu a:hover { background: var(--mv-wine-50); }
.mv-dd::after { content: ""; position: absolute; left: 0; right: 0; top: 100%; height: 10px; }

/* =====================================================================
   HOME  (views/Home/index.php)
   ===================================================================== */
.mv-home { background: var(--mv-bg); color: var(--mv-text); font-size: 16px; line-height: 1.6; overflow-x: hidden; }
.mv-home h1, .mv-home h2, .mv-home h3, .mv-home h4 { margin: 0; color: var(--mv-text); font-weight: 500; line-height: 1.18; }
.mv-home p { margin: 0; }
.mv-home ul, .mv-home ol { margin: 0; padding: 0; list-style: none; }
.mv-section { padding: 56px 0; }
.mv-section-white { background: var(--mv-surface); border-top: 1px solid var(--mv-border); border-bottom: 1px solid var(--mv-border); }
.mv-section-sand { background: var(--mv-sunken); }
.mv-head { margin-bottom: 28px; }
.mv-head-center { text-align: center; max-width: 720px; margin-left: auto; margin-right: auto; }
.mv-eyebrow { display: inline-flex; align-items: center; gap: 8px; color: var(--mv-text-2); font-size: 13px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; margin-bottom: 12px; }
.mv-eyebrow::before, .mv-head-center .mv-eyebrow::after { content: ""; width: 22px; height: 2px; background: var(--mv-wine-500); border-radius: 2px; }
.mv-head h2 { font-size: 28px; }
.mv-head p { color: var(--mv-text-2); margin-top: 10px !important; font-size: 17px; }
.mv-head-row { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 14px 24px; margin-bottom: 26px; }
.mv-head-row .mv-head { margin-bottom: 0; }
.mv-link { display: inline-flex; align-items: center; gap: 4px; min-height: 44px; color: var(--mv-text) !important; font-weight: 500; text-decoration: underline !important; text-decoration-color: var(--mv-accent-line) !important; text-decoration-thickness: 2px !important; text-underline-offset: 6px; transition: gap var(--mv-base) var(--mv-ease); }
.mv-link .mv-i { color: var(--mv-wine-500); }
.mv-link:hover { gap: 8px; }

/* form controls */
.mv-field { display: flex; flex-direction: column; gap: 5px; min-width: 0; }
.mv-field.mv-full { grid-column: 1 / -1; }
.mv-field > label, .mv-field > .mv-label { font-size: 13px; font-weight: 500; color: var(--mv-text-2); margin: 0; }
.mv-input {
  width: 100%; height: 48px; padding: 0 12px; margin: 0;
  border: 1.5px solid var(--mv-border-strong) !important; border-radius: 10px !important;
  background: var(--mv-surface) !important; color: var(--mv-text) !important; font-size: 16px !important; box-shadow: none !important;
  transition: border-color var(--mv-fast) ease, box-shadow var(--mv-fast) ease;
}
.mv-input:focus { border-color: var(--mv-wine-500) !important; box-shadow: var(--mv-ring) !important; outline: none; }
.mv-err { font-size: 13px; color: var(--mv-error); }
.mv-err:empty { display: none; }
.mv-err p { margin: 0; }

/* ---------- HERO ---------- */
.mv-hero { position: relative; background: var(--mv-grad-hero); border-bottom: 1px solid var(--mv-border); }
.mv-hero-grid { display: grid; gap: 36px; padding: 32px 0 44px; }
.mv-hero-chip { display: inline-flex; align-items: center; gap: 8px; padding: 6px 14px 6px 6px; border-radius: var(--mv-r-pill); background: var(--mv-surface); border: 1px solid var(--mv-border); box-shadow: var(--mv-shadow-sm); font-size: 14px; font-weight: 500; color: var(--mv-text); }
.mv-hero-chip b { width: 26px; height: 26px; border-radius: 50%; background: var(--mv-wine-50); color: var(--mv-wine-500); display: inline-flex; align-items: center; justify-content: center; }
.mv-hero h1 { font-size: 38px; line-height: 1.1; margin-top: 18px !important; }
.mv-hero h1 em { font-style: normal; color: var(--mv-wine-500); }
.mv-hero-sub { margin-top: 16px !important; font-size: 17px; color: var(--mv-text-2); max-width: 560px; }
.mv-qs { margin-top: 26px; background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-xl); box-shadow: var(--mv-shadow-lg); padding: 18px; }
.mv-qs-title { display: flex; align-items: center; gap: 8px; font-family: var(--mv-font-head) !important; font-weight: 500; font-size: 18px; margin-bottom: 14px !important; }
.mv-qs-title .mv-i { color: var(--mv-wine-500); }
.mv-qs-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; align-items: end; }
.mv-qs-grid .mv-qs-btn { grid-column: 1 / -1; }
.mv-age { display: flex; align-items: center; gap: 6px; }
.mv-age .mv-select { flex: 1 1 0; min-width: 78px; }
.mv-collage { max-width: min(480px, 94%); }
.mv-age span { color: var(--mv-text-3); font-size: 14px; }
.mv-qs-foot { display: flex; flex-wrap: wrap; gap: 4px 18px; margin-top: 12px; padding-top: 12px; border-top: 1px dashed var(--mv-border); font-size: 14px; }
.mv-qs-foot a { display: inline-flex; align-items: center; gap: 6px; color: var(--mv-text-2) !important; font-weight: 400; text-decoration: none !important; min-height: 32px; }
.mv-qs-foot a .mv-i { color: var(--mv-wine-500); }
.mv-qs-foot a:hover { color: var(--mv-text) !important; text-decoration: underline !important; text-decoration-color: var(--mv-accent-line) !important; }
.mv-hero-trust { display: flex; flex-wrap: wrap; gap: 10px 28px; margin-top: 20px; padding: 0 4px; font-size: 14px; font-weight: 400; color: var(--mv-text-2); }
.mv-hero-trust li { display: flex; align-items: center; gap: 8px; }
.mv-hero-trust .mv-i { color: var(--mv-success); }

/* hero collage of real featured members */
.mv-collage { position: relative; height: 420px; max-width: 480px; width: 100%; margin: 0 auto; }
.mv-ccard { position: absolute; width: 58%; background: var(--mv-surface); border-radius: var(--mv-r-lg); box-shadow: var(--mv-shadow-lg); overflow: hidden; transition: transform var(--mv-slow) var(--mv-ease); }
.mv-ccard-photo { aspect-ratio: 4 / 5; background: var(--mv-sand-200); position: relative; overflow: hidden; }
.mv-ccard-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.mv-ccard-body { padding: 10px 12px 12px; font-size: 13px; color: var(--mv-text-2); }
.mv-ccard-body strong { display: block; font-size: 15px; color: var(--mv-text); }
.mv-ccard-1 { left: 0; top: 30px; transform: rotate(-5deg); z-index: 1; }
.mv-ccard-2 { right: 0; top: 0; transform: rotate(4deg); z-index: 2; }
.mv-ccard-3 { left: 22%; bottom: 0; transform: rotate(-1deg); z-index: 3; width: 56%; }
.mv-collage:hover .mv-ccard-1 { transform: rotate(-7deg) translateX(-6px); }
.mv-collage:hover .mv-ccard-2 { transform: rotate(6deg) translateX(6px); }
.mv-pop { position: absolute; z-index: 4; background: var(--mv-surface); border-radius: var(--mv-r-md); box-shadow: var(--mv-shadow-lg); padding: 10px 14px; display: flex; align-items: center; gap: 10px; font-size: 13px; font-weight: 600; color: var(--mv-text); }
.mv-pop small { display: block; font-size: 12px; font-weight: 500; color: var(--mv-text-3); }
.mv-pop-ic { width: 34px; height: 34px; border-radius: 10px; display: flex; align-items: center; justify-content: center; flex: none; }
.mv-pop-1 { left: -4px; bottom: 26%; }
.mv-pop-1 .mv-pop-ic { background: var(--mv-success-bg); color: var(--mv-success); }
.mv-pop-2 { right: -4px; bottom: 6%; display: none; }
@media (min-width: 768px) { .mv-pop-2 { display: flex; } }
.mv-pop-2 .mv-pop-ic { background: var(--mv-wine-50); color: var(--mv-wine-500); }

/* ---------- COUNTRIES ---------- */
.mv-strip { background: var(--mv-surface); border-bottom: 1px solid var(--mv-border); }
.mv-strip-inner { display: flex; flex-direction: column; gap: 12px; padding: 18px 0; }
.mv-strip p { display: flex; align-items: center; gap: 8px; font-size: 15px; font-weight: 600; color: var(--mv-text-2); }
.mv-strip p .mv-i { color: var(--mv-wine-500); }
.mv-strip ul { display: flex; flex-wrap: wrap; gap: 8px; }
.mv-strip li a { display: inline-flex; align-items: center; min-height: 36px; padding: 0 14px; border-radius: var(--mv-r-pill); background: var(--mv-sunken); color: var(--mv-text) !important; font-size: 14px; font-weight: 500; text-decoration: none !important; transition: background var(--mv-fast) ease; }
.mv-strip li a:hover { background: var(--mv-wine-100); }

/* ---------- STEPS ---------- */

/* ---------- PROFILES ---------- */
.mv-tabs { display: inline-flex; padding: 4px; background: var(--mv-sunken); border-radius: var(--mv-r-pill); gap: 4px; }
.mv-tab { min-height: 42px; padding: 0 22px; border: 0; border-radius: var(--mv-r-pill); background: transparent; font-weight: 500; color: var(--mv-text-2); cursor: pointer; transition: background var(--mv-base) ease, color var(--mv-base) ease, box-shadow var(--mv-base) ease; }
.mv-tab[aria-selected="true"] { background: var(--mv-surface); color: var(--mv-text); box-shadow: var(--mv-shadow-sm), inset 0 -2px 0 var(--mv-accent-line); }
.mv-profiles { display: grid; grid-auto-flow: column; grid-auto-columns: 68%; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; padding: 4px var(--mv-gutter, 16px) 16px; margin: 0 calc(var(--mv-gutter, 16px) * -1); scrollbar-width: thin; }
.mv-profiles[hidden] { display: none; }
.mv-card { scroll-snap-align: start; background: var(--mv-surface); border-radius: var(--mv-r-lg); overflow: hidden; box-shadow: var(--mv-shadow-md); display: flex; flex-direction: column; transition: transform var(--mv-base) var(--mv-ease), box-shadow var(--mv-base) var(--mv-ease); }
.mv-card:hover { transform: translateY(-4px); box-shadow: var(--mv-shadow-lg); }
.mv-card-photo { position: relative; aspect-ratio: 4 / 5; background: var(--mv-sand-200); overflow: hidden; }
.mv-card-photo img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 400ms ease; }
.mv-card:hover .mv-card-photo img { transform: scale(1.03); }
.mv-initials { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; font-family: var(--mv-font-head) !important; font-size: 42px; font-weight: 700; color: var(--mv-wine-300); }
.mv-card-lock { position: absolute; inset: 0; z-index: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; background: rgba(251,242,241,.88); color: var(--mv-text); font-size: 14px; font-weight: 600; }
.mv-card-lock .mv-i { color: var(--mv-wine-500); }
.mv-card-badge { position: absolute; z-index: 1; top: 10px; left: 10px; display: inline-flex; align-items: center; gap: 4px; padding: 4px 9px; border-radius: var(--mv-r-sm); background: var(--mv-surface); color: var(--mv-success); font-size: 12px; font-weight: 600; box-shadow: var(--mv-shadow-sm); }
.mv-card-body { padding: 14px 16px 16px; display: flex; flex-direction: column; gap: 2px; flex: 1; }
.mv-card-body h3 { font-size: 17px; font-weight: 600; letter-spacing: .01em; }
.mv-card-meta { display: flex; align-items: center; gap: 6px; font-size: 14px; color: var(--mv-text-2); }
.mv-card-meta .mv-i { color: var(--mv-icon); }
.mv-card-spacer { flex: 1; min-height: 12px; }
.mv-card-body .mv-btn { min-height: 44px; font-size: 15px; }

/* ---------- REGISTER (soft panel) ---------- */
.mv-register { background: var(--mv-grad-soft); position: relative; overflow: hidden; border-top: 1px solid var(--mv-wine-100); border-bottom: 1px solid var(--mv-wine-100); }
.mv-register::before { content: ""; position: absolute; right: -180px; top: -180px; width: 560px; height: 560px; border-radius: 50%; border: 1px solid var(--mv-wine-200); box-shadow: 0 0 0 60px rgba(255,255,255,.35), 0 0 0 140px rgba(255,255,255,.2); pointer-events: none; }
.mv-register-grid { position: relative; display: grid; gap: 28px; padding: 56px 0; }
.mv-register h2 { font-size: 30px; }
.mv-register-lead { color: var(--mv-text-2); font-size: 17px; margin-top: 12px !important; max-width: 480px; }
.mv-benefits { margin-top: 24px !important; display: grid; gap: 16px; }
.mv-benefits li { display: flex; gap: 14px; align-items: flex-start; }
.mv-b-ic { width: 44px; height: 44px; border-radius: var(--mv-r-md); background: var(--mv-surface); border: 1px solid var(--mv-wine-200); color: var(--mv-wine-500); display: flex; align-items: center; justify-content: center; flex: none; box-shadow: var(--mv-shadow-sm); }
.mv-benefits strong { display: block; color: var(--mv-text); font-size: 16px; font-weight: 600; }
.mv-benefits span { color: var(--mv-text-2); font-size: 14px; }
.mv-reg { background: var(--mv-surface); color: var(--mv-text); border-radius: var(--mv-r-xl); box-shadow: var(--mv-shadow-lg); border: 1px solid var(--mv-border); padding: 22px 18px 18px; }
.mv-reg-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 4px; }
.mv-reg h3 { font-size: 22px; font-weight: 500; }
.mv-reg-free { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; font-weight: 600; color: var(--mv-success); background: var(--mv-success-bg); padding: 4px 10px; border-radius: var(--mv-r-pill); white-space: nowrap; }
.mv-reg-sub { font-size: 14px; color: var(--mv-text-2); margin-bottom: 16px !important; }
.mv-reg-sub a { color: var(--mv-text) !important; font-weight: 600; text-decoration: underline !important; text-decoration-color: var(--mv-accent-line) !important; text-underline-offset: 4px; }
.mv-grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.mv-row { display: flex; gap: 8px; }
.mv-row .mv-code { flex: 0 0 138px; }
.mv-row .mv-input:not(select) { flex: 1 1 auto; min-width: 0; }
.mv-dob { display: grid; grid-template-columns: 1fr 1.1fr 1.2fr; gap: 8px; }
.mv-check { display: flex; align-items: flex-start; gap: 10px; font-size: 14px; color: var(--mv-text-2); margin: 0; cursor: pointer; grid-column: 1 / -1; }
.mv-check a { color: var(--mv-text) !important; text-decoration: underline !important; text-decoration-color: var(--mv-accent-line) !important; }
.mv-check input[type="checkbox"] { width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--mv-wine-500); flex: none; display: inline-block !important; opacity: 1 !important; position: static !important; visibility: visible !important; -webkit-appearance: checkbox; appearance: auto; }
.mv-reg .mv-btn { margin-top: 8px; }

/* ---------- WHY ---------- */
.mv-why { display: grid; gap: 14px; }
.mv-why-card { background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-lg); padding: 22px; display: flex; flex-direction: column; gap: 10px; transition: box-shadow var(--mv-base) ease, transform var(--mv-base) var(--mv-ease); }
.mv-why-card:hover { box-shadow: var(--mv-shadow-md); transform: translateY(-2px); }
.mv-why-card.is-ai { background: linear-gradient(var(--mv-surface), var(--mv-surface)) padding-box, var(--mv-grad-ai) border-box; border: 1.5px solid transparent; }
.mv-why-ic { width: 50px; height: 50px; border-radius: 14px; display: flex; align-items: center; justify-content: center; }
.mv-why-ic.is-wine { background: var(--mv-wine-50); color: var(--mv-wine-500); }
.mv-why-ic.is-green { background: var(--mv-success-bg); color: var(--mv-success); }
.mv-why-ic.is-gold { background: var(--mv-premium-bg); color: var(--mv-premium-text); }
.mv-why-ic.is-ai { background: var(--mv-grad-ai-soft); color: var(--mv-wine-500); }
.mv-why-card h3 { font-size: 18px; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.mv-why-card p { font-size: 15px; color: var(--mv-text-2); }

/* ---------- PLANS ---------- */
.mv-plans { display: grid; gap: 16px; }
.mv-plan { position: relative; background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-xl); padding: 26px 24px 24px; display: flex; flex-direction: column; gap: 8px; transition: box-shadow var(--mv-base) ease, transform var(--mv-base) var(--mv-ease); }
.mv-plan:hover { transform: translateY(-3px); box-shadow: var(--mv-shadow-lg); }
.mv-plan.is-best { border: 2px solid var(--mv-accent-line); box-shadow: var(--mv-shadow-lg); }
.mv-plan-ribbon { position: absolute; top: -14px; left: 22px; display: inline-flex; align-items: center; gap: 4px; background: var(--mv-gold-300); color: var(--mv-text); font-size: 12px; font-weight: 600; padding: 5px 12px; border-radius: var(--mv-r-pill); }
.mv-plan-name { display: inline-flex; align-self: flex-start; align-items: center; gap: 4px; font-size: 11px; font-weight: 600; letter-spacing: .1em; color: var(--mv-premium-text); background: var(--mv-premium-bg); padding: 4px 10px; border-radius: var(--mv-r-sm); }
.mv-plan h3 { font-size: 20px; margin-top: 4px !important; }
.mv-price { display: flex; align-items: baseline; gap: 6px; }
.mv-price b { font-family: var(--mv-font-head) !important; font-size: 40px; font-weight: 500; color: var(--mv-text); line-height: 1; }
.mv-price span { font-size: 15px; font-weight: 600; color: var(--mv-text-2); }
.mv-plan-per { font-size: 14px; color: var(--mv-text-3); }
.mv-plan ul { margin: 10px 0 14px !important; display: grid; gap: 8px; font-size: 15px; color: var(--mv-text-2); }
.mv-plan li { display: flex; gap: 8px; align-items: flex-start; }
.mv-plan li .mv-i { color: var(--mv-success); margin-top: 3px; }
.mv-plan .mv-btn { margin-top: auto; }
.mv-free-row { margin-top: 18px; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px 16px; font-size: 15px; color: var(--mv-text-2); }

/* ---------- FAQ ---------- */
.mv-faq { display: grid; gap: 10px; max-width: 880px; margin: 0 auto; }
.mv-faq details { background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: 14px; transition: box-shadow var(--mv-base) ease; }
.mv-faq details[open] { box-shadow: var(--mv-shadow-md); border-color: var(--mv-wine-200); }
.mv-faq summary { list-style: none; cursor: pointer; padding: 18px 20px; display: flex; justify-content: space-between; gap: 14px; align-items: center; font-weight: 500; font-size: 16px; color: var(--mv-text); }
.mv-faq summary::-webkit-details-marker { display: none; }
.mv-faq summary .mv-i { color: var(--mv-wine-500); transition: transform var(--mv-base) var(--mv-ease); }
.mv-faq details[open] summary .mv-i { transform: rotate(45deg); }
.mv-faq details p { padding: 0 20px 20px; color: var(--mv-text-2); font-size: 15px; line-height: 1.7; }

/* ---------- CTA ---------- */
.mv-cta { background: var(--mv-grad-soft); border: 1px solid var(--mv-wine-100); border-radius: var(--mv-r-xl); padding: 30px 22px; display: flex; flex-direction: column; gap: 18px; position: relative; overflow: hidden; }
.mv-cta h2 { font-size: 26px; }
.mv-cta p { color: var(--mv-text-2); margin-top: 8px !important; }
.mv-cta-actions { display: flex; flex-wrap: wrap; gap: 10px; }

/* ---------- sticky mobile CTA ---------- */
.mv-sticky { position: fixed; left: 0; right: 0; bottom: 0; z-index: 1020; display: flex; gap: 10px; padding: 10px var(--mv-gutter, 16px) calc(10px + env(safe-area-inset-bottom)); background: rgba(255,255,255,.97); border-top: 1px solid var(--mv-border); transform: translateY(110%); transition: transform var(--mv-base) var(--mv-ease); }
.mv-sticky.is-on { transform: none; }
.mv-sticky .mv-btn { flex: 1; }

/* scroll reveal */
.mv-reveal { opacity: 0; transform: translateY(16px); transition: opacity 600ms var(--mv-ease), transform 600ms var(--mv-ease); }
.mv-reveal.is-in { opacity: 1; transform: none; }

/* =====================================================================
   FOOTER  (views/Home/footer.php) - light
   ===================================================================== */
.mv-footer { background: var(--mv-footer-bg); color: var(--mv-footer-text); font-size: 15px; border-top: 0; }
.mv-footer a { color: var(--mv-footer-text-2) !important; text-decoration: none !important; transition: color var(--mv-fast) ease; }
.mv-footer a:hover { color: var(--mv-ivory-0) !important; text-decoration: underline !important; text-decoration-color: var(--mv-footer-accent) !important; text-underline-offset: 4px; }
.mv-footer h3 { color: var(--mv-ivory-0) !important; font-size: 13px !important; font-weight: 600 !important; letter-spacing: .08em; text-transform: uppercase; margin: 0 0 14px !important; }
.mv-footer-note { background: rgba(0,0,0,.12); color: var(--mv-footer-text-2); text-align: center; font-size: 13px; padding: 14px 0; border-bottom: 1px solid var(--mv-footer-line); }
.mv-browse { padding: 36px 0 12px; border-bottom: 1px solid var(--mv-footer-line); }
.mv-browse-title { font-family: var(--mv-font-head) !important; color: var(--mv-ivory-0); font-size: 20px; font-weight: 500; margin: 0 0 20px !important; }
.mv-browse-grid { display: grid; gap: 20px; }
.mv-browse ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 4px 16px; }
.mv-browse li a { font-size: 14px; line-height: 2; }
.mv-footer-main { padding: 36px 0; display: grid; grid-template-columns: 1fr 1fr; gap: 26px; }
.mv-footer-about { grid-column: 1 / -1; }
.mv-footer-about p { color: var(--mv-footer-text-2); font-size: 14px; line-height: 1.6; max-width: 360px; margin-top: 14px; }
.mv-footer .mv-wordmark .mv-wm-a { color: var(--mv-ivory-0); }
.mv-footer .mv-wordmark .mv-wm-b { color: var(--mv-footer-accent); }
.mv-footer-main ul { list-style: none; margin: 0; padding: 0; }
.mv-footer-main li a { display: inline-flex; align-items: center; gap: 8px; padding: 5px 0; font-size: 14px; }
.mv-footer-main li a .mv-i { color: var(--mv-footer-accent); }
.mv-social { display: flex; gap: 10px; margin-top: 18px; }
.mv-social a { width: 42px; height: 42px; border-radius: 50%; background: rgba(255,255,255,.06); border: 1px solid var(--mv-footer-line); color: var(--mv-ivory-0) !important; display: inline-flex !important; align-items: center; justify-content: center; }
.mv-social a:hover { background: var(--mv-primary); border-color: var(--mv-primary); text-decoration: none !important; }
.mv-footer-bottom { border-top: 1px solid var(--mv-footer-line); padding: 18px 0 22px; font-size: 13px; color: var(--mv-footer-text-2); display: flex; flex-direction: column; gap: 6px; }
.mv-whatsapp { position: fixed; right: 18px; bottom: 86px; z-index: 1010; width: 54px; height: 54px; border-radius: 50%; background: var(--mv-brand-whatsapp); color: var(--mv-ivory-0) !important; display: flex !important; align-items: center; justify-content: center; box-shadow: var(--mv-shadow-lg); text-decoration: none !important; transition: transform var(--mv-base) var(--mv-ease); }
.mv-whatsapp:hover { transform: scale(1.06); }

/* neutralise legacy rules that leak into the new footer / page bottom */
footer.mv-footer { padding: 0 !important; margin: 0 !important; background-image: none !important; }
.mv-footer ~ .gt-footer-bottom { padding: 0 !important; margin: 0 !important; background: transparent !important; border: 0 !important; }

/* ---------- scrollbar (replaces the old orange gradient) ---------- */
html { scrollbar-color: var(--mv-sand-300) var(--mv-ivory-50); scrollbar-width: thin; }
body::-webkit-scrollbar, *::-webkit-scrollbar { width: 10px; height: 10px; }
body::-webkit-scrollbar-track, *::-webkit-scrollbar-track { background: var(--mv-ivory-50) !important; }
body::-webkit-scrollbar-thumb, *::-webkit-scrollbar-thumb { background: var(--mv-sand-300) !important; border-radius: 999px; border: 2px solid var(--mv-ivory-50); }
body::-webkit-scrollbar-thumb:hover, *::-webkit-scrollbar-thumb:hover { background: var(--mv-wine-300) !important; }

/* ---------- dropdowns (themed select) ---------- */
.mv-select { position: relative; display: block; min-width: 0; }
.mv-select > select.mv-input {
  -webkit-appearance: none !important; -moz-appearance: none !important; appearance: none !important;
  padding-right: 38px !important; cursor: pointer; text-overflow: ellipsis; background-image: none !important;
}
.mv-select > select.mv-input::-ms-expand { display: none; }
.mv-select > select.mv-input:hover { border-color: var(--mv-wine-200) !important; }
.mv-select > select.mv-input option { color: var(--mv-text); background: var(--mv-surface); }
.mv-select > select.mv-input option:disabled { color: var(--mv-text-3); }
.mv-select::after {
  content: ""; position: absolute; right: 12px; top: 50%; width: 18px; height: 18px; margin-top: -9px; pointer-events: none;
  background: var(--mv-icon);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;
  transition: background var(--mv-fast) ease;
}
.mv-select:hover::after, .mv-select:focus-within::after { background: var(--mv-wine-500); }
.mv-age .mv-select > select.mv-input { padding-left: 12px !important; padding-right: 30px !important; }
.mv-age .mv-select::after { right: 9px; }

/* ---------- hero: countries row ---------- */
.mv-hero-countries { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; padding: 18px 0 26px; border-top: 1px solid var(--mv-border); }
.mv-hero-countries > span { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; color: var(--mv-text-2); }
.mv-hero-countries > span .mv-i { color: var(--mv-wine-500); }
.mv-hero-countries ul { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.mv-hero-countries a { display: inline-flex; align-items: center; min-height: 34px; padding: 0 14px; border-radius: var(--mv-r-pill); background: rgba(255,255,255,.7); border: 1px solid var(--mv-border); color: var(--mv-text) !important; font-size: 14px; text-decoration: none !important; transition: background var(--mv-fast) ease, border-color var(--mv-fast) ease; }
.mv-hero-countries a:hover { background: var(--mv-surface); border-color: var(--mv-wine-200); }
.mv-hero-trust { margin-top: 18px; }
.mv-hero-grid { padding-bottom: 32px; }

/* =====================================================================
   RESPONSIVE
   ===================================================================== */
@media (min-width: 768px) {
  :root { --mv-gutter: 28px; }
  .mv-section { padding: 72px 0; }
  .mv-head h2 { font-size: 34px; }
  .mv-hero h1 { font-size: 48px; }
  .mv-qs { padding: 20px; }
  .mv-qs-grid { grid-template-columns: 1.1fr 1.4fr 1.4fr; }
  .mv-strip-inner { flex-direction: row; align-items: center; justify-content: space-between; }
  .mv-profiles { grid-auto-columns: 36%; }
  .mv-reg { padding: 28px 28px 22px; }
  .mv-why { grid-template-columns: 1fr 1fr; }
  .mv-plans { grid-template-columns: repeat(3, 1fr); }
  .mv-cta { padding: 40px; }
  .mv-browse-grid { grid-template-columns: repeat(2, 1fr); }
  .mv-footer-main { grid-template-columns: repeat(4, 1fr); }
  .mv-collage { height: 460px; }
}

@media (min-width: 992px) {
  :root { --mv-gutter: 32px; }
  .mv-header-bar { min-height: 76px; gap: 40px; }
  .mv-wordmark { font-size: 30px; }
  .mv-nav { display: flex; align-items: center; gap: 30px; }
  .mv-nav > a, .mv-nav .mv-dd-btn { color: var(--mv-text-2) !important; font-weight: 500; font-size: 15px; text-decoration: none !important; padding: 26px 0; }
  .mv-nav > a:hover, .mv-nav .mv-dd-btn:hover { box-shadow: inset 0 -3px 0 var(--mv-wine-200); }
  .mv-nav > a.is-active, .mv-nav .mv-dd-btn.is-active { color: var(--mv-text) !important; box-shadow: inset 0 -2px 0 var(--mv-accent-line); }
  .mv-nav > a:hover, .mv-nav .mv-dd-btn:hover { color: var(--mv-text) !important; }
  .mv-header-actions .mv-btn { display: inline-flex; min-height: 46px; }
  .mv-burger, .mv-drawer { display: none !important; }

  .mv-section { padding: 80px 0; }
  .mv-head { margin-bottom: 40px; }
  .mv-head h2 { font-size: 40px; }
  .mv-hero-grid { grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 56px; align-items: center; padding: 52px 0 40px; }
  .mv-hero h1 { font-size: 56px; }
  .mv-hero-sub { font-size: 19px; }
  .mv-qs { padding: 20px 22px; margin-top: 30px; }
  .mv-qs-grid { grid-template-columns: minmax(0, .9fr) minmax(0, 1.5fr) minmax(0, 1.1fr) auto; }
  .mv-qs-grid .mv-qs-btn { grid-column: auto; }
  .mv-collage { height: 520px; }
  .mv-profiles { grid-auto-flow: row; grid-template-columns: repeat(5, 1fr); overflow: visible; margin: 0; padding: 4px 0 0; gap: 18px; }
  .mv-register-grid { grid-template-columns: minmax(0, 1fr) 500px; gap: 64px; align-items: center; padding: 88px 0; }
  .mv-register h2 { font-size: 40px; }
  .mv-reg .mv-grid2 { gap: 10px 12px; }
  .mv-field.mv-half-lg { grid-column: auto; }
  .mv-why { grid-template-columns: repeat(3, 1fr); gap: 20px; }
  .mv-plans { gap: 22px; }
  .mv-cta { flex-direction: row; align-items: center; justify-content: space-between; padding: 48px 56px; }
  .mv-cta h2 { font-size: 32px; }
  .mv-sticky { display: none; }
  .mv-browse-grid { grid-template-columns: 1fr 1.6fr 1.6fr 1.2fr 1.3fr; gap: 28px; }
  .mv-browse ul { flex-direction: column; gap: 0; }
  .mv-footer-main { grid-template-columns: 1.6fr repeat(4, 1fr); }
  .mv-footer-about { grid-column: auto; }
  .mv-footer-bottom { flex-direction: row; justify-content: space-between; }
  .mv-whatsapp { bottom: 28px; right: 28px; }
}

@media (min-width: 1200px) {
  .mv-hero h1 { font-size: 62px; }
}

@media (prefers-reduced-motion: reduce) {
  .mv-scope *, .mv-wordmark span span, .mv-wordmark .mv-wm-b::after { animation: none !important; transition: none !important; }
  .mv-wordmark.is-animated span span { opacity: 1; transform: none; }
  .mv-wordmark.is-animated .mv-wm-b::after { transform: scaleX(1); }
  .mv-reveal { opacity: 1; transform: none; }
}

/* ---------- quick search: age gets its own row on phones ---------- */
.mv-qs-grid .mv-qs-rel { order: 2; }
.mv-qs-grid .mv-qs-age { order: 3; grid-column: 1 / -1; }
.mv-qs-grid .mv-qs-btn { order: 4; }
.mv-age .mv-select { flex: 1 1 0; min-width: 0; }
.mv-hero-trust { margin-top: 24px; }
@media (min-width: 768px) {
  .mv-qs-grid .mv-qs-rel, .mv-qs-grid .mv-qs-age, .mv-qs-grid .mv-qs-btn { order: 0; }
  .mv-qs-grid .mv-qs-age { grid-column: auto; }
}
@media (min-width: 992px) {
  .mv-qs-grid { grid-template-columns: minmax(0, .95fr) minmax(0, 1.55fr) minmax(0, 1fr) auto !important; gap: 12px; }
  .mv-age .mv-select { min-width: 76px; }
}

/* =====================================================================
   COMPACT HEADER + HERO (client request: reduce heights)
   ===================================================================== */
.mv-header-bar { min-height: 58px; }
.mv-wordmark { font-size: 24px; }
.mv-wordmark .mv-wm-b::after { bottom: -4px; }
.mv-burger { width: 40px; height: 40px; }
.mv-drawer { max-height: calc(100vh - 58px); }

.mv-hero-grid { gap: 24px; padding: 20px 0 20px; }
.mv-hero-chip { padding: 4px 12px 4px 4px; font-size: 13px; }
.mv-hero-chip b { width: 22px; height: 22px; }
.mv-hero h1 { font-size: 32px; margin-top: 12px !important; }
.mv-hero-sub { margin-top: 10px !important; font-size: 16px; line-height: 1.55; }
.mv-hero-trust { margin-top: 12px !important; gap: 6px 20px; font-size: 13px; }
.mv-qs { margin-top: 18px; padding: 14px; }
.mv-qs-title { font-size: 16px; margin-bottom: 10px !important; }
.mv-qs-foot { margin-top: 10px; padding-top: 10px; }
.mv-collage { height: 330px; }
.mv-hero-countries { padding: 12px 0 16px; }
.mv-hero-countries a { min-height: 30px; padding: 0 12px; font-size: 13px; }

@media (min-width: 768px) {
  .mv-hero h1 { font-size: 40px; }
  .mv-collage { height: 380px; }
}

@media (min-width: 992px) {
  .mv-header-bar { min-height: 64px; gap: 36px; }
  .mv-wordmark { font-size: 26px; }
  .mv-nav { gap: 28px; }
  .mv-nav > a, .mv-nav .mv-dd-btn { padding: 21px 0; }
  .mv-header-actions .mv-btn { min-height: 40px; padding: 0 18px; font-size: 15px; }
  .mv-login { padding: 8px 10px; }

  .mv-hero-grid { gap: 48px; padding: 28px 0 20px; align-items: center; }
  .mv-hero h1 { font-size: 46px; line-height: 1.1; }
  .mv-hero-sub { font-size: 17px; max-width: 540px; }
  .mv-qs { margin-top: 20px; padding: 16px 18px; }
  .mv-collage { height: 400px; max-width: 420px; }
}

@media (min-width: 1200px) {
  .mv-hero h1 { font-size: 50px; }
}

/* ---------- footer: disclaimer moved into the bottom row ---------- */
.mv-browse { padding-top: 44px; }
.mv-footer-bottom { align-items: flex-start; gap: 8px; }
.mv-footer-disclaimer { display: inline-flex; align-items: center; gap: 8px; color: var(--mv-footer-text-2); }
.mv-footer-disclaimer .mv-i { color: var(--mv-footer-accent); }
@media (min-width: 992px) {
  .mv-footer-bottom { align-items: center; gap: 24px; }
  .mv-footer-bottom > span:first-child { flex: 1 1 0; }
  .mv-footer-bottom > span:last-child { flex: 1 1 0; text-align: right; }
  .mv-footer-disclaimer { flex: 0 1 auto; justify-content: center; text-align: center; }
}

/* ---------- wordmark animation: fail-safe (visible if animation never runs) ---------- */
.mv-wordmark.is-animated span span { opacity: 1; transform: none; animation: mv-letter-in 520ms var(--mv-ease) both; animation-delay: calc(var(--d) * 55ms + 120ms); }
.mv-wordmark.is-animated .mv-wm-b::after { transform: scaleX(1); animation: mv-line-in 600ms var(--mv-ease) 760ms both; }
@keyframes mv-letter-in { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
@keyframes mv-line-in { from { transform: scaleX(0); } to { transform: scaleX(1); } }

/* ---------- tabs (Brides / Grooms): solid pill, soft focus ring ---------- */
.mv-tabs { padding: 5px; gap: 4px; background: var(--mv-surface); border: 1px solid var(--mv-border); box-shadow: var(--mv-shadow-sm); }
.mv-tab { min-height: 40px; padding: 0 22px; font-size: 15px; font-weight: 500; color: var(--mv-text-2); box-shadow: none !important; outline: none; }
.mv-tab:hover { background: var(--mv-wine-50); color: var(--mv-text); }
.mv-tab[aria-selected="true"] { background: var(--mv-primary); color: var(--mv-on-primary); box-shadow: 0 4px 12px rgba(163,52,58,.22) !important; }
.mv-tab[aria-selected="true"]:hover { background: var(--mv-primary); color: var(--mv-on-primary); }
.mv-scope .mv-tab:focus-visible { outline: none; box-shadow: var(--mv-ring) !important; }
.mv-scope .mv-tab[aria-selected="true"]:focus-visible { box-shadow: 0 0 0 3px var(--mv-surface), 0 0 0 5px var(--mv-wine-500) !important; }

/* ---------- dropdowns v2: chevron in a soft circle, more breathing room ---------- */
.mv-select > select.mv-input { padding-left: 14px !important; padding-right: 46px !important; font-weight: 500; }
.mv-select::before {
  content: ""; position: absolute; right: 9px; top: 50%; width: 26px; height: 26px; margin-top: -13px;
  border-radius: 50%; background: var(--mv-wine-50); pointer-events: none;
  transition: background var(--mv-fast) ease, transform var(--mv-base) var(--mv-ease);
}
.mv-select::after { right: 13px; width: 18px; height: 18px; margin-top: -9px; background: var(--mv-wine-500); }
.mv-select:hover::before { background: var(--mv-wine-100); }
.mv-select:focus-within::before { background: var(--mv-wine-100); }
.mv-select:hover::after, .mv-select:focus-within::after { background: var(--mv-wine-500); }
.mv-age .mv-select > select.mv-input { padding-left: 12px !important; padding-right: 40px !important; }
.mv-age .mv-select::before { right: 7px; width: 24px; height: 24px; margin-top: -12px; }
.mv-age .mv-select::after { right: 10px; width: 18px; height: 18px; }
.mv-age > span { padding: 0 2px; }
@media (min-width: 992px) {
  .mv-age .mv-select { min-width: 86px; }
  .mv-qs-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1.7fr) minmax(0, 1.05fr) auto !important; }
}

/* ---------- quick search links: consistent icon + text ---------- */
.mv-qs-foot { gap: 6px 20px; }
.mv-qs-foot a { gap: 7px; }
.mv-qs-foot a .mv-i { color: var(--mv-wine-500); }

/* quick search: give the age pair enough width so it never touches Religion */
@media (min-width: 992px) {
  .mv-qs-grid { grid-template-columns: minmax(0, .9fr) minmax(0, 2fr) minmax(0, .95fr) auto !important; column-gap: 14px; }
  .mv-age .mv-select { min-width: 0; }
}
@media (min-width: 992px) {
  .mv-qs-grid { grid-template-columns: minmax(104px, 1fr) minmax(180px, 1.8fr) minmax(96px, 1fr) auto !important; column-gap: 12px; }
  .mv-qs-btn { padding: 0 18px; }
}

/* ---------- nav: active indicator sits just under the text ---------- */
@media (min-width: 992px) {
  .mv-nav > a, .mv-nav .mv-dd-btn { position: relative; padding: 8px 0 !important; box-shadow: none !important; }
  .mv-nav > a::after, .mv-nav .mv-dd-btn::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 2px; border-radius: 2px; background: transparent; transform: scaleX(.4); transition: transform var(--mv-base) var(--mv-ease), background var(--mv-base) ease; }
  .mv-nav > a:hover::after, .mv-nav .mv-dd-btn:hover::after { background: var(--mv-wine-200); transform: scaleX(1); }
  .mv-nav > a.is-active::after, .mv-nav .mv-dd-btn.is-active::after { background: var(--mv-accent-line); transform: scaleX(1); }
  .mv-nav .mv-dd-btn::after { right: 20px; }
}

/* ---------- hero countries row: centred ---------- */
.mv-hero-countries { justify-content: center; text-align: center; }
.mv-hero-countries ul { justify-content: center; }

/* footer contact icons: white (client request) */
.mv-footer-main li a .mv-i { color: var(--mv-ivory-0); }

/* no black outline on mouse click (legacy Bootstrap adds one); keyboard focus keeps a soft ring */
.mv-scope button:focus, .mv-scope a:focus, .mv-scope select:focus, .mv-tab:focus { outline: none !important; }
.mv-scope button:focus:not(:focus-visible), .mv-scope a:focus:not(:focus-visible) { box-shadow: none; }
.mv-tab:focus:not(:focus-visible) { box-shadow: none !important; }
.mv-tab[aria-selected="true"]:focus:not(:focus-visible) { box-shadow: 0 4px 12px rgba(163,52,58,.22) !important; }
.mv-scope button:focus-visible, .mv-scope a:focus-visible { outline: none !important; box-shadow: var(--mv-ring) !important; border-radius: var(--mv-r-sm); }

/* =====================================================================
   ONE SPACING RHYTHM for every home section (client request)
   ===================================================================== */
@media (min-width: 768px) { :root { --mv-section-y: 64px; --mv-head-gap: 36px; } }
@media (min-width: 992px) { :root { --mv-section-y: 80px; --mv-head-gap: 40px; } }
.mv-home .mv-section { padding-top: var(--mv-section-y) !important; padding-bottom: var(--mv-section-y) !important; }
.mv-home .mv-register-grid { padding-top: var(--mv-section-y) !important; padding-bottom: var(--mv-section-y) !important; }
.mv-home .mv-head, .mv-home .mv-head-row { margin-bottom: var(--mv-head-gap) !important; }
.mv-home .mv-head-row .mv-head { margin-bottom: 0 !important; }
.mv-home .mv-head p { margin-top: 12px !important; }
.mv-home .mv-eyebrow { margin-bottom: 12px; }
.mv-cta-wrap { padding: 0 0 var(--mv-section-y); }
.mv-more { margin: 28px 0 0; text-align: center; }
.mv-free-row { margin-top: 28px; }
/* consistent gaps inside grids */
.mv-why, .mv-plans { gap: 16px; }
@media (min-width: 992px) { .mv-why, .mv-plans, .mv-profiles { gap: 20px; } }

/* =====================================================================
   SELECTED / FOCUS STATES: wine-to-gold gradient language
   ===================================================================== */
/* inputs + dropdowns: wine border with a soft double ring */
.mv-input:focus { border-color: var(--mv-wine-500) !important; box-shadow: var(--mv-ring-select) !important; }
.mv-select:focus-within::before { background: var(--mv-wine-500); }
.mv-select:focus-within::after { background: var(--mv-ivory-0); }

/* selected tab: gradient pill */
.mv-tab[aria-selected="true"], .mv-tab[aria-selected="true"]:hover { background: var(--mv-grad-accent) !important; color: var(--mv-on-primary) !important; }

/* best-value plan: gradient border + soft glow */
.mv-plan.is-best { border: 2px solid transparent !important; background: linear-gradient(var(--mv-surface), var(--mv-surface)) padding-box, var(--mv-grad-accent) border-box !important; box-shadow: 0 20px 44px rgba(163,52,58,.14) !important; }
.mv-plan-ribbon { background: var(--mv-grad-accent); color: var(--mv-on-primary); }

/* open FAQ: gradient border instead of plain wine */
.mv-faq details[open] { border: 1.5px solid transparent !important; background: linear-gradient(var(--mv-surface), var(--mv-surface)) padding-box, var(--mv-grad-accent) border-box; }

/* registration card + search card: hairline gradient top accent */
.mv-reg, .mv-qs { position: relative; overflow: hidden; }
.mv-reg::before, .mv-qs::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: var(--mv-grad-accent); }

/* active nav line + checkbox in the same language */
@media (min-width: 992px) { .mv-nav > a.is-active::after, .mv-nav .mv-dd-btn.is-active::after { background: var(--mv-grad-accent); } }
.mv-check input[type="checkbox"] { accent-color: var(--mv-wine-500); }

/* =====================================================================
   CUSTOM DROPDOWN (assets/js/mv-select.js)
   The native <select> stays in the form, invisible underneath.
   ===================================================================== */
.mv-select.is-custom > select.mv-input { position: absolute !important; inset: 0; width: 100% !important; height: 100% !important; opacity: 0 !important; pointer-events: none !important; }
.mv-sel-btn {
  display: flex; align-items: center; width: 100%; height: 48px; margin: 0; padding: 0 46px 0 14px;
  border: 1.5px solid var(--mv-border-strong); border-radius: 10px; background: var(--mv-surface);
  color: var(--mv-text); font-size: 16px; font-weight: 500; text-align: left; cursor: pointer;
  transition: border-color var(--mv-fast) ease, box-shadow var(--mv-fast) ease;
}
.mv-sel-value { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mv-sel-btn.is-placeholder .mv-sel-value { color: var(--mv-text-3); font-weight: 400; }
.mv-sel-btn:hover { border-color: var(--mv-wine-200); }
.mv-scope .mv-sel-btn:focus-visible, .mv-select.is-open .mv-sel-btn { outline: none !important; border-color: var(--mv-wine-500); box-shadow: var(--mv-ring-select) !important; border-radius: 10px; }
.mv-select.is-invalid .mv-sel-btn { border-color: var(--mv-error); }
.mv-reg .mv-sel-btn { height: 44px; }
.mv-age .mv-sel-btn { padding: 0 38px 0 12px; }
/* chevron circle: rotate when open */
.mv-select.is-custom::after { transition: transform var(--mv-base) var(--mv-ease), background var(--mv-fast) ease; }
.mv-select.is-open::before { background: var(--mv-wine-500); }
.mv-select.is-open::after { background: var(--mv-ivory-0); transform: rotate(180deg); }
.mv-select.is-custom::before, .mv-select.is-custom::after { z-index: 2; }

/* popup */
.mv-sel-pop {
  position: absolute; z-index: 60; left: 0; top: calc(100% + 6px); min-width: 100%; width: max-content; max-width: min(320px, 90vw);
  background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-md);
  box-shadow: var(--mv-shadow-lg); padding: 6px; animation: mv-pop-in 160ms var(--mv-ease);
}
.mv-select.is-up .mv-sel-pop { top: auto; bottom: calc(100% + 6px); }
.mv-sel-pop[hidden] { display: none; }
@keyframes mv-pop-in { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }
.mv-sel-search { width: 100%; height: 40px; margin: 0 0 6px; padding: 0 12px; border: 1.5px solid var(--mv-border) !important; border-radius: var(--mv-r-sm); background: var(--mv-bg); color: var(--mv-text); font-size: 15px; }
.mv-sel-search:focus { outline: none; border-color: var(--mv-wine-500) !important; background: var(--mv-surface); }
.mv-sel-list { list-style: none; margin: 0; padding: 0; max-height: 260px; overflow-y: auto; overscroll-behavior: contain; }
.mv-sel-list:focus { outline: none; }
.mv-sel-list li[role="option"] {
  position: relative; display: block; padding: 10px 36px 10px 12px; border-radius: var(--mv-r-sm);
  font-size: 15px; color: var(--mv-text); cursor: pointer; white-space: nowrap;
}
.mv-sel-list li.is-empty { color: var(--mv-text-3); }
.mv-sel-list li.is-active { background: var(--mv-wine-50); }
.mv-sel-list li[aria-selected="true"] { color: var(--mv-wine-500); font-weight: 600; }
.mv-sel-list li[aria-selected="true"]::after {
  content: ""; position: absolute; right: 12px; top: 50%; width: 16px; height: 16px; margin-top: -8px; background: var(--mv-wine-500);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / contain no-repeat;
}
.mv-sel-list li[aria-disabled="true"] { color: var(--mv-text-3); opacity: .45; cursor: not-allowed; }
.mv-sel-none { padding: 12px; font-size: 14px; color: var(--mv-text-3); }
.mv-sel-list::-webkit-scrollbar { width: 8px; }
@media (prefers-reduced-motion: reduce) { .mv-sel-pop { animation: none; } }

/* cards must not clip the dropdown popups; accent line drawn inside the rounded corners */
.mv-reg, .mv-qs { overflow: visible !important; }
.mv-reg::before, .mv-qs::before { left: 28px; right: 28px; height: 3px; border-radius: 0 0 3px 3px; }
.mv-select.is-open { z-index: 70; }

/* ---------- dropdown popup v2: roomier list, clear hover vs selected ---------- */
.mv-sel-pop { min-width: max(100%, 200px); top: calc(100% + 8px); padding: 6px; border-radius: 14px; }
.mv-select.is-up .mv-sel-pop { bottom: calc(100% + 8px); }
.mv-sel-list li[role="option"] { padding: 11px 42px 11px 14px; font-size: 15px; font-weight: 500; line-height: 1.3; margin: 1px 0; }
.mv-sel-list li.is-active { background: var(--mv-sand-100); }
.mv-sel-list li[aria-selected="true"] { background: var(--mv-wine-50); color: var(--mv-wine-500); font-weight: 600; }
.mv-sel-list li[aria-selected="true"].is-active { background: var(--mv-wine-100); }
.mv-sel-list li[aria-selected="true"]::after { right: 14px; }
.mv-sel-search { height: 42px; padding: 0 14px; }

/* ---------- registration section: compact ---------- */
.mv-home .mv-register-grid { padding-top: 56px !important; padding-bottom: 56px !important; }
.mv-reg { padding: 20px 18px 18px; }
.mv-reg .mv-grid2 { gap: 10px 12px; }
.mv-reg .mv-field { gap: 4px; }
.mv-reg .mv-input, .mv-reg .mv-sel-btn { height: 44px; }
.mv-reg-sub { margin-bottom: 14px !important; }
.mv-reg .mv-check { min-height: 22px; font-size: 13px; }
.mv-reg .mv-btn { margin-top: 6px; min-height: 50px; }
@media (min-width: 992px) {
  .mv-home .mv-register-grid { grid-template-columns: minmax(0, 1fr) 560px; gap: 56px; align-items: start; padding-top: 64px !important; padding-bottom: 64px !important; }
  .mv-register-grid > div:first-child { padding-top: 24px; }
  .mv-reg { padding: 24px 26px 22px; }
  .mv-reg .mv-row .mv-code { flex: 0 0 118px; }
}
.mv-reg .mv-row .mv-code { flex: 0 0 104px; }
@media (min-width: 992px) { .mv-reg .mv-row .mv-code { flex: 0 0 100px; } }
/* date of birth: narrow boxes on phones */
.mv-dob .mv-sel-btn { padding: 0 34px 0 10px; }
.mv-dob .mv-select::before { right: 6px; width: 22px; height: 22px; margin-top: -11px; }
.mv-dob .mv-select::after { right: 9px; width: 16px; height: 16px; margin-top: -8px; }
.mv-dob { gap: 6px; }

/* ---------- selected tab: same solid wine as the other primary buttons ---------- */
.mv-tab[aria-selected="true"], .mv-tab[aria-selected="true"]:hover { background: var(--mv-primary) !important; color: var(--mv-on-primary) !important; box-shadow: var(--mv-shadow-primary) !important; }

/* ---------- page loader (#openloader) in the new theme ---------- */
#openloader.preloader-wrapper { background: var(--mv-bg) !important; }
.mv-loader { display: flex; flex-direction: column; align-items: center; gap: 18px; font-family: var(--mv-font-body); }
.mv-loader-mark { font-size: 30px; }
.mv-loader-mark .mv-wm-b::after { transform: scaleX(1); }
.mv-loader-ring {
  width: 40px; height: 40px; border-radius: 50%;
  border: 3px solid var(--mv-sand-200); border-top-color: var(--mv-wine-500);
  animation: mv-spin 800ms linear infinite;
}
.mv-loader-text { font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--mv-text-3); }
@keyframes mv-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .mv-loader-ring { animation-duration: 2.4s; } }

/* featured grid: as many equal boxes as there are profiles (max 5) */
@media (min-width: 992px) {
  .mv-home .mv-profiles { grid-template-columns: repeat(var(--mv-cols, 5), minmax(0, 1fr)); }
}

/* ---------- combined phone field: code + number in one box ---------- */
.mv-phone {
  gap: 0 !important; align-items: stretch; height: 46px;
  border: 1.5px solid var(--mv-border-strong); border-radius: 10px; background: var(--mv-surface);
  transition: border-color var(--mv-fast) ease, box-shadow var(--mv-fast) ease;
}
.mv-reg .mv-phone { height: 44px; }
.mv-phone:hover { border-color: var(--mv-wine-200); }
.mv-phone:focus-within { border-color: var(--mv-wine-500); box-shadow: var(--mv-ring-select); }
.mv-phone .mv-select.mv-code { flex: 0 0 96px !important; position: relative; }
.mv-phone .mv-select.mv-code::before { right: 8px; width: 22px; height: 22px; margin-top: -11px; }
.mv-phone .mv-select.mv-code::after { right: 11px; width: 16px; height: 16px; margin-top: -8px; }
.mv-phone .mv-sel-btn, .mv-phone .mv-input {
  height: 100% !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; background: transparent !important;
}
.mv-phone .mv-sel-btn { padding: 0 34px 0 12px; border-radius: 9px 0 0 9px !important; font-weight: 500; }
.mv-phone .mv-select.mv-code { border-right: 1.5px solid var(--mv-border); }
.mv-phone .mv-select.is-open .mv-sel-btn { box-shadow: none !important; }
.mv-phone .mv-input:not(select) { padding: 0 14px !important; letter-spacing: .02em; }
.mv-phone .mv-input:not(select)::placeholder { color: var(--mv-text-3); font-weight: 400; letter-spacing: 0; }
.mv-phone .mv-input:not(select):focus { box-shadow: none !important; }
.mv-phone .mv-sel-pop { min-width: 240px; }

/* ---- hero deck: swipeable collage (same look; extra members wait behind the front card) ---- */
.mv-collage[data-mv-deck] { touch-action: pan-y; -webkit-user-select: none; user-select: none; outline: none; }
.mv-collage[data-mv-deck]:focus-visible { box-shadow: var(--mv-ring-select); border-radius: var(--mv-r-lg); }
.mv-ccard { transition: transform var(--mv-slow) var(--mv-ease), opacity var(--mv-slow) var(--mv-ease); }
.mv-ccard-q { left: 22%; bottom: 0; width: 56%; z-index: 0; opacity: 0; pointer-events: none; transform: rotate(-1deg) scale(.94); }
.mv-collage[data-mv-deck] .mv-ccard-3 { cursor: grab; }
.mv-collage.is-dragging .mv-ccard-3 { cursor: grabbing; box-shadow: var(--mv-shadow-lg), var(--mv-shadow-md); }
.mv-collage .mv-ccard img { -webkit-user-drag: none; pointer-events: none; }

/* ---- plan tier badges: own icon + colour per tier (bronze medal, silver award, gold crown, higher gem) ---- */
.mv-plan-name.mv-tier-bronze { color: var(--mv-tier-bronze); background: var(--mv-tier-bronze-bg); }
.mv-plan-name.mv-tier-silver { color: var(--mv-tier-silver); background: var(--mv-tier-silver-bg); }
.mv-plan-name.mv-tier-gold   { color: var(--mv-premium-text); background: var(--mv-premium-bg); }
.mv-plan-name.mv-tier-top    { color: var(--mv-wine-500); background: var(--mv-wine-50); }
.mv-plan-name .mv-i { width: 15px; height: 15px; }

/* =====================================================================
   Member header (navbar-login.php): same bar as the guest header.
   Nav shows from 1200px (four menus + ID search + account); below that the
   drawer holds everything and phones also get a bottom tab bar.
   ===================================================================== */
.mv-header-member .mv-header-actions { gap: 8px; }
.mv-idsearch { display: none; position: relative; align-items: center; }
.mv-idsearch input { width: 170px; height: 40px; border: 1px solid var(--mv-border); border-radius: var(--mv-r-pill); background: var(--mv-bg); padding: 0 40px 0 16px; font: 500 14px var(--mv-font-body); color: var(--mv-text); outline: none; transition: border-color var(--mv-fast) ease, box-shadow var(--mv-fast) ease, background var(--mv-fast) ease; }
.mv-idsearch input::placeholder { color: var(--mv-text-3); opacity: 1; }
.mv-idsearch input:focus { border-color: var(--mv-accent-line); background: var(--mv-surface); box-shadow: var(--mv-ring); }
.mv-idsearch button { position: absolute; right: 4px; top: 50%; transform: translateY(-50%); width: 32px; height: 32px; border-radius: 50%; border: 0; background: transparent; color: var(--mv-wine-500); display: inline-flex; align-items: center; justify-content: center; cursor: pointer; padding: 0; }
.mv-idsearch button:hover { background: var(--mv-wine-50); }
.mv-idsearch-drawer { display: flex; padding: 14px var(--mv-gutter, 16px); border-bottom: 1px solid var(--mv-border); }
.mv-idsearch-drawer input { width: 100%; height: 46px; }
.mv-idsearch-drawer button { right: calc(var(--mv-gutter, 16px) + 6px); }

.mv-memchip { display: none; align-items: center; gap: 6px; height: 36px; padding: 0 14px; border-radius: var(--mv-r-pill); font-size: 13px; font-weight: 600; background: var(--mv-premium-bg); color: var(--mv-premium-text) !important; text-decoration: none !important; white-space: nowrap; }
.mv-memchip.is-upgrade { background: var(--mv-primary); color: var(--mv-on-primary) !important; box-shadow: var(--mv-shadow-primary); transition: transform var(--mv-fast) ease; }
.mv-memchip.is-upgrade:hover { transform: translateY(-1px); }

.mv-iconbtn { width: 42px; height: 42px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; color: var(--mv-text) !important; text-decoration: none !important; transition: background var(--mv-fast) ease; }
.mv-iconbtn:hover { background: var(--mv-wine-50); color: var(--mv-wine-500) !important; }

.mv-user-btn { display: inline-flex; align-items: center; gap: 4px; border: 0; background: none; padding: 2px; border-radius: var(--mv-r-pill); cursor: pointer; color: var(--mv-text-2); }
.mv-user-btn img { width: 40px; height: 40px; border-radius: 50%; object-fit: cover; object-position: top; box-shadow: 0 0 0 2px var(--mv-surface), 0 0 0 3.5px var(--mv-wine-200); }
.mv-user-btn .mv-i { display: none; }
.mv-user .mv-dd-menu { left: auto; right: 0; }
.mv-user-menu { width: 300px; padding: 0; overflow: hidden; }
.mv-user-card { display: flex; gap: 12px; align-items: center; padding: 16px; background: var(--mv-grad-soft); }
.mv-user-card img { width: 48px; height: 48px; border-radius: 50%; object-fit: cover; object-position: top; box-shadow: 0 0 0 2px var(--mv-surface); }
.mv-user-card strong { display: block; font-family: var(--mv-font-head); font-weight: 600; font-size: 16px; color: var(--mv-text); line-height: 1.25; word-break: break-word; }
.mv-user-card span { font-size: 13px; color: var(--mv-text-2); }
.mv-user-meta { margin: 0; padding: 12px 16px 0; display: grid; gap: 6px; }
.mv-user-meta > div { display: flex; justify-content: space-between; gap: 12px; font-size: 13px; }
.mv-user-meta dt { font-weight: 500; color: var(--mv-text-3); }
.mv-user-meta dd { margin: 0; color: var(--mv-text); text-align: right; }
.mv-user-meta dd b { font-weight: 600; }
.mv-user-progress { padding: 12px 16px 14px; border-bottom: 1px solid var(--mv-border); font-size: 13px; color: var(--mv-text-2); }
.mv-bar { display: block; height: 6px; border-radius: var(--mv-r-pill); background: var(--mv-sand-200); margin: 8px 0 10px; overflow: hidden; }
.mv-bar i { display: block; height: 100%; border-radius: inherit; background: var(--mv-grad-accent); }
.mv-user-progress a { display: inline-flex; align-items: center; gap: 4px; padding: 0 !important; color: var(--mv-wine-500) !important; font-weight: 600 !important; text-decoration: none !important; background: none !important; }
.mv-user-progress a .mv-i { transition: transform var(--mv-fast) ease; }
.mv-user-progress a:hover .mv-i { transform: translateX(3px); }
.mv-user-links { padding: 8px; }
.mv-user-links .mv-logout { border-top: 1px solid var(--mv-border); border-radius: 0 0 var(--mv-r-sm) var(--mv-r-sm); margin-top: 6px; padding-top: 12px; }

.mv-dd-menu a.is-current { background: var(--mv-wine-50); box-shadow: inset 3px 0 0 var(--mv-accent-line); }
.mv-count { margin-left: auto; min-width: 26px; height: 22px; padding: 0 7px; border-radius: var(--mv-r-pill); background: var(--mv-sand-100); color: var(--mv-text-2); font-size: 12px; font-weight: 600; display: inline-flex; align-items: center; justify-content: center; }
.mv-drawer .mv-count { margin-left: auto; }
.mv-drawer-cta span.mv-btn { display: inline-flex; align-items: center; justify-content: center; }

/* phone bottom tab bar */
.mv-tabbar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 1020; display: grid; grid-template-columns: repeat(5, 1fr); background: rgba(255,255,255,.97); border-top: 1px solid var(--mv-border); box-shadow: 0 -6px 18px rgba(42,36,33,.06); padding-bottom: env(safe-area-inset-bottom, 0); backdrop-filter: blur(6px); }
.mv-tabbar a { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; min-height: 58px; font-size: 11px; font-weight: 500; color: var(--mv-text-3) !important; text-decoration: none !important; position: relative; }
.mv-tabbar a .mv-i { width: 22px; height: 22px; }
.mv-tabbar a.is-active { color: var(--mv-wine-500) !important; font-weight: 600; }
.mv-tabbar a.is-active::before { content: ""; position: absolute; top: 0; left: 30%; right: 30%; height: 3px; border-radius: 0 0 3px 3px; background: var(--mv-accent-line); }
body.mv-body:has(.mv-tabbar) { padding-bottom: 64px; }
body.mv-body:has(.mv-tabbar) .mv-whatsapp { bottom: 80px; }

@media (min-width: 576px) { .mv-memchip { display: inline-flex; } }
@media (min-width: 768px) {
  .mv-tabbar { display: none; }
  body.mv-body:has(.mv-tabbar) { padding-bottom: 0; }
  body.mv-body:has(.mv-tabbar) .mv-whatsapp { bottom: 28px; }
  .mv-header-member .mv-idsearch:not(.mv-idsearch-drawer) { display: flex; }
  .mv-user-btn .mv-i { display: inline-block; }
}
/* 992-1199: the guest nav fits, the member nav does not, so keep the drawer */
@media (min-width: 992px) and (max-width: 1199.98px) {
  .mv-header-member .mv-nav { display: none; }
  .mv-header-member .mv-burger { display: inline-flex !important; }
  .mv-header-member .mv-drawer { display: none !important; }
  .mv-header-member .mv-drawer.is-open { display: block !important; }
}
@media (min-width: 1200px) {
  .mv-header-member .mv-header-bar { gap: 28px; }
  .mv-header-member .mv-nav { gap: 24px; }
  .mv-header-member .mv-idsearch-drawer { display: none; }
}

/* deck: equal card sizes and one-line meta so cards never change size while moving */
.mv-collage[data-mv-deck] .mv-ccard { width: 57%; will-change: transform, opacity; }
.mv-collage[data-mv-deck] .mv-ccard-body { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mv-collage[data-mv-deck] .mv-ccard.is-flying { z-index: 6; }

/* footer: some legacy pages leave a Bootstrap .row/.container open, which turned the
   footer into a shrunken flex item. Always span the full row. */
.mv-footer { width: 100%; flex: 0 0 100%; max-width: none; align-self: stretch; clear: both; }

/* =====================================================================
   HOW IT WORKS: four step cards, each with a live-looking mini screen,
   a "Step 0x" badge and arrow connectors between cards
   ===================================================================== */
.mv-how { background: var(--mv-bg); position: relative; overflow: hidden; }
.mv-how .mv-head h2 em { font-style: normal; color: var(--mv-wine-500); }
.mv-flow { list-style: none; margin: 0; padding: 0; display: grid; gap: 34px; }
.mv-flow-step { position: relative; display: flex; flex-direction: column; background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-xl); box-shadow: var(--mv-shadow-sm); transition: transform var(--mv-base) var(--mv-ease), box-shadow var(--mv-base) ease, border-color var(--mv-base) ease; }
.mv-flow-step:hover { transform: translateY(-4px); box-shadow: var(--mv-shadow-lg); border-color: var(--mv-wine-200); }
.mv-flow-step.is-final { border: 1.5px solid transparent; background: linear-gradient(var(--mv-surface), var(--mv-surface)) padding-box, var(--mv-grad-accent) border-box; }

/* arrow connector between cards (down on phones, right on desktop) */
.mv-flow-step:not(:last-child)::after {
  content: ""; position: absolute; z-index: 2; left: 50%; bottom: -29px; width: 24px; height: 24px; margin-left: -12px; border-radius: 50%;
  background: var(--mv-wine-500); box-shadow: 0 0 0 5px var(--mv-bg);
  -webkit-mask: none; mask: none;
}
.mv-flow-step:not(:last-child)::before {
  content: ""; position: absolute; z-index: 3; left: 50%; bottom: -23px; width: 12px; height: 12px; margin-left: -6px; background: var(--mv-on-primary);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* mini screen */
.mv-flow-prev { position: relative; height: 176px; margin: 8px 8px 0; border-radius: calc(var(--mv-r-xl) - 6px); overflow: hidden; display: flex; align-items: center; justify-content: center; padding: 40px 18px 16px;
  background: radial-gradient(220px 150px at 0% 100%, var(--mv-gold-300), transparent 70%), radial-gradient(260px 170px at 100% 0%, var(--mv-wine-100), transparent 72%), var(--mv-wine-50); }
.mv-flow-search .mv-flow-prev { background: radial-gradient(240px 160px at 100% 100%, var(--mv-wine-100), transparent 70%), radial-gradient(220px 150px at 0% 0%, var(--mv-sand-200), transparent 72%), var(--mv-ivory-50); }
.mv-flow-chat .mv-flow-prev { background: radial-gradient(240px 160px at 0% 0%, var(--mv-success-bg), transparent 70%), radial-gradient(260px 170px at 100% 100%, var(--mv-wine-100), transparent 72%), var(--mv-ivory-50); }
.mv-flow-contact .mv-flow-prev { background: radial-gradient(240px 160px at 100% 0%, var(--mv-premium-bg), transparent 70%), radial-gradient(260px 170px at 0% 100%, var(--mv-wine-100), transparent 72%), var(--mv-wine-50); }
.mv-flow-badge { position: absolute; top: 12px; left: 12px; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--mv-wine-500); background: var(--mv-surface); padding: 5px 10px; border-radius: var(--mv-r-pill); box-shadow: var(--mv-shadow-sm); }
.mv-flow-step.is-final .mv-flow-badge { background: var(--mv-primary); color: var(--mv-on-primary); }
.mv-flow-ui { width: 100%; max-width: 250px; display: flex; flex-direction: column; gap: 8px; transition: transform var(--mv-slow) var(--mv-ease); }
.mv-flow-step:hover .mv-flow-ui { transform: translateY(-3px) scale(1.02); }

.mv-ui-card { display: flex; align-items: center; gap: 10px; background: var(--mv-surface); border-radius: var(--mv-r-md); box-shadow: 0 6px 16px rgba(42,36,33,.08), 0 1px 2px rgba(42,36,33,.06); padding: 9px 11px; }
.mv-ui-avatar { width: 36px; height: 36px; flex: none; border-radius: 50%; background: var(--mv-grad-accent); color: var(--mv-on-primary); font-size: 11px; font-weight: 700; display: flex; align-items: center; justify-content: center; }
.mv-ui-txt { flex: 1; min-width: 0; display: flex; flex-direction: column; line-height: 1.25; }
.mv-ui-txt b { font-size: 13px; font-weight: 600; color: var(--mv-text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mv-ui-txt small { font-size: 11.5px; color: var(--mv-text-3); }
.mv-ui-ok { color: var(--mv-success); display: flex; }
.mv-ui-progress { display: flex; justify-content: space-between; font-size: 12px; color: var(--mv-text-2); margin-top: 4px; }
.mv-ui-progress b { color: var(--mv-wine-500); font-weight: 700; }
.mv-flow-ui .mv-bar { margin: 0; background: var(--mv-surface); }
.mv-ui-field { border-radius: var(--mv-r-pill); font-size: 13px; color: var(--mv-text); padding: 10px 14px; }
.mv-ui-field .mv-i { color: var(--mv-wine-500); }
.mv-ui-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.mv-ui-chips span { font-size: 12px; font-weight: 500; padding: 4px 10px; border-radius: var(--mv-r-pill); background: var(--mv-surface); color: var(--mv-wine-500); box-shadow: inset 0 0 0 1px var(--mv-wine-200); }
.mv-ui-found { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 600; color: var(--mv-wine-500); }
.mv-ui-msg { display: flex; align-items: flex-end; gap: 8px; }
.mv-ui-msg span { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 500; padding: 9px 13px; box-shadow: 0 6px 16px rgba(42,36,33,.08); }
.mv-ui-msg.is-out { justify-content: flex-end; }
.mv-ui-msg.is-out span { background: var(--mv-primary); color: var(--mv-on-primary); border-radius: 16px 16px 4px 16px; }
.mv-ui-msg.is-in span { background: var(--mv-surface); color: var(--mv-success); border-radius: 16px 16px 16px 4px; }
.mv-ui-dot { width: 26px; height: 26px; flex: none; border-radius: 50%; font-style: normal; font-size: 9px; font-weight: 700; display: flex; align-items: center; justify-content: center; background: var(--mv-surface); color: var(--mv-wine-500); box-shadow: var(--mv-shadow-sm); }
.mv-ui-dot.is-them { background: var(--mv-gold-300); color: var(--mv-premium-text); font-size: 11px; }
.mv-ui-contact { padding: 8px 10px; }
.mv-ui-ic { width: 30px; height: 30px; flex: none; border-radius: 9px; background: var(--mv-wine-50); color: var(--mv-wine-500); display: flex; align-items: center; justify-content: center; }
.mv-ui-unlock { align-self: center; display: inline-flex; align-items: center; gap: 6px; font-size: 11.5px; font-weight: 600; color: var(--mv-premium-text); background: var(--mv-premium-bg); padding: 4px 10px; border-radius: var(--mv-r-pill); }

.mv-flow-body { padding: 18px 22px 22px; display: flex; flex-direction: column; flex: 1; }
.mv-flow-body h3 { font-size: 19px; font-weight: 600; margin: 0 0 8px !important; }
.mv-flow-body p { font-size: 15px; line-height: 1.6; color: var(--mv-text-2); margin: 0 0 16px !important; }
.mv-how-tag { margin-top: auto; align-self: flex-start; display: inline-flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 600; padding: 5px 10px; border-radius: var(--mv-r-pill); background: var(--mv-success-bg); color: var(--mv-success); }
.mv-how-tag.is-premium { background: var(--mv-premium-bg); color: var(--mv-premium-text); }
.mv-how-tag .mv-i { width: 14px; height: 14px; }
.mv-how-cta { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 40px; }
.mv-how-cta .mv-btn { min-height: 48px; gap: 8px; }

@media (min-width: 640px) and (max-width: 991.98px) {
  .mv-flow { grid-template-columns: 1fr 1fr; gap: 24px; }
  .mv-flow-step::before, .mv-flow-step::after { content: none !important; }
}
@media (min-width: 992px) {
  .mv-flow { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; }
  /* connector sits in the gap, level with the mini screens */
  .mv-flow-step:not(:last-child)::after { left: auto; right: -27px; bottom: auto; top: 84px; margin: 0; width: 26px; height: 26px; }
  .mv-flow-step:not(:last-child)::before { left: auto; right: -20px; bottom: auto; top: 91px; margin: 0; transform: rotate(-90deg); }
}

/* =====================================================================
   WHY MERAVYAAH: compact. Intro left, six plain features in a hairline grid.
   ===================================================================== */
.mv-why3-grid { display: grid; gap: 28px; align-items: start; }
.mv-why3-intro h2 { font-size: clamp(26px, 3.6vw, 34px); line-height: 1.2; margin: 10px 0 12px !important; }
.mv-why3-intro p { font-size: 16px; line-height: 1.6; color: var(--mv-text-2); margin: 0 0 22px !important; max-width: 40ch; }
.mv-why3-intro .mv-btn { min-height: 46px; gap: 8px; }
.mv-why3-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr; background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-lg); overflow: hidden; }
.mv-why3-item { padding: 22px; border-bottom: 1px solid var(--mv-border); display: flex; flex-direction: column; transition: background var(--mv-fast) ease; }
.mv-why3-item:last-child { border-bottom: 0; }
.mv-why3-item:hover { background: var(--mv-ivory-50); }
.mv-why3-ic { width: 40px; height: 40px; border-radius: 12px; background: var(--mv-wine-50); color: var(--mv-wine-500); display: flex; align-items: center; justify-content: center; margin-bottom: 14px; }
.mv-why3-item h3 { font-size: 17px; font-weight: 600; margin: 0 0 6px !important; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.mv-why3-item p { font-size: 14.5px; line-height: 1.6; color: var(--mv-text-2); margin: 0 !important; }
.mv-soon { font-family: var(--mv-font-body); font-size: 11px; font-weight: 600; letter-spacing: .04em; padding: 2px 8px; border-radius: var(--mv-r-pill); background: var(--mv-sand-100); color: var(--mv-text-2); }
.mv-why3-link { margin-top: 12px; align-self: flex-start; display: inline-flex; align-items: center; gap: 4px; font-size: 14px; font-weight: 600; color: var(--mv-wine-500) !important; text-decoration: none !important; }
.mv-why3-link .mv-i { transition: transform var(--mv-fast) ease; }
.mv-why3-link:hover .mv-i { transform: translateX(3px); }

@media (min-width: 640px) {
  .mv-why3-list { grid-template-columns: 1fr 1fr; }
  .mv-why3-item { border-right: 1px solid var(--mv-border); }
  .mv-why3-item:nth-child(2n) { border-right: 0; }
  .mv-why3-item:nth-last-child(-n+2) { border-bottom: 0; }
}
@media (min-width: 992px) {
  .mv-why3-grid { grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: 48px; align-items: center; }
  .mv-why3-list { grid-template-columns: repeat(3, 1fr); }
  .mv-why3-item { border-right: 1px solid var(--mv-border) !important; border-bottom: 1px solid var(--mv-border) !important; }
  .mv-why3-item:nth-child(3n) { border-right: 0 !important; }
  .mv-why3-item:nth-last-child(-n+3) { border-bottom: 0 !important; }
}

/* how it works: step 4 preview needs a little more room under the badge */
.mv-flow-prev { height: 188px; padding-top: 46px; }
.mv-ui-contact { padding: 6px 10px; }
.mv-ui-contact .mv-ui-ic { width: 26px; height: 26px; }
.mv-flow-contact .mv-flow-ui { gap: 6px; }
@media (min-width: 992px) {
  .mv-flow-step:not(:last-child)::after { top: 89px; }
  .mv-flow-step:not(:last-child)::before { top: 96px; }
}

/* =====================================================================
   HEADER v3: balanced bar. Logo left, menu centred, actions right.
   Menu items are soft pills; the current page is a filled wine pill.
   ===================================================================== */
.mv-header { box-shadow: 0 1px 0 var(--mv-border), 0 6px 20px rgba(42,36,33,.04); border-bottom: 0; }
@media (min-width: 992px) {
  .mv-header .mv-header-bar { max-width: 1280px; min-height: 72px; display: grid; grid-template-columns: 1fr auto 1fr; gap: 24px; }
  .mv-header .mv-header-bar > .mv-wordmark { justify-self: start; }
  .mv-header .mv-header-actions { justify-self: end; margin-left: 0; gap: 10px; }
  .mv-nav { gap: 4px !important; }
  .mv-nav > a, .mv-nav .mv-dd-btn { position: relative; padding: 9px 16px !important; border-radius: var(--mv-r-pill); font-size: 15px; font-weight: 500; color: var(--mv-text-2) !important; box-shadow: none !important; transition: background var(--mv-fast) ease, color var(--mv-fast) ease; }
  .mv-nav > a::after, .mv-nav .mv-dd-btn::after { content: none !important; }
  .mv-nav > a:hover, .mv-nav .mv-dd-btn:hover, .mv-dd.is-open > .mv-dd-btn { background: var(--mv-sand-100); color: var(--mv-text) !important; }
  .mv-nav > a.is-active, .mv-nav .mv-dd-btn.is-active { background: var(--mv-wine-50); color: var(--mv-wine-500) !important; font-weight: 600; }
  .mv-dd-btn .mv-i { transition: transform var(--mv-fast) ease; }
  .mv-dd:hover > .mv-dd-btn .mv-i, .mv-dd.is-open > .mv-dd-btn .mv-i { transform: rotate(180deg); }
  .mv-nav .mv-dd-menu { top: calc(100% + 10px); left: 0; }
  .mv-nav .mv-dd::after { height: 14px; }

  .mv-login { height: 44px; padding: 0 18px !important; border: 1.5px solid var(--mv-border-strong); border-radius: var(--mv-r-pill); transition: border-color var(--mv-fast) ease, background var(--mv-fast) ease; }
  .mv-login:hover { text-decoration: none !important; border-color: var(--mv-accent-line); background: var(--mv-wine-50); }
  .mv-header-actions .mv-btn { min-height: 44px !important; height: 44px; padding: 0 22px; border-radius: var(--mv-r-pill); font-size: 15px; box-shadow: 0 4px 12px rgba(163,52,58,.20); }
}
/* member bar has more on the right, so the menu sits after the logo instead of dead centre */
@media (min-width: 1200px) {
  .mv-header-member .mv-header-bar { grid-template-columns: auto 1fr auto; }
  .mv-header-member .mv-nav { justify-self: start; }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
  .mv-header-member .mv-header-bar { grid-template-columns: auto 1fr; }
}

/* phones: legacy chat bar sits above the member tab bar instead of on top of it */
@media (max-width: 767.98px) { body.mv-body:has(.mv-tabbar) #chatList { bottom: 64px !important; } }

/* why: "Soon" label pinned top-right so titles stay on one line */
.mv-why3-item { position: relative; }
.mv-why3-item .mv-soon { position: absolute; top: 22px; right: 22px; }

/* =====================================================================
   AUTH PAGES (login): welcome panel + form card, same look as the home page
   ===================================================================== */
.mv-auth { background: var(--mv-grad-hero); padding: 32px 0 56px; min-height: calc(100vh - 72px); display: flex; align-items: center; }
.mv-auth-grid { display: grid; gap: 28px; align-items: center; }
.mv-auth-side { display: none; }
.mv-auth-side h2 { font-size: clamp(30px, 3.4vw, 42px); line-height: 1.15; margin: 12px 0 14px !important; }
.mv-auth-side h2 em { font-style: normal; color: var(--mv-wine-500); }
.mv-auth-side > p { font-size: 17px; line-height: 1.6; color: var(--mv-text-2); max-width: 44ch; margin: 0 0 24px !important; }
.mv-auth-points { list-style: none; margin: 0 0 32px; padding: 0; display: grid; gap: 14px; }
.mv-auth-points li { display: flex; align-items: center; gap: 12px; font-size: 15px; color: var(--mv-text); }
.mv-auth-points li > span { width: 38px; height: 38px; flex: none; border-radius: 11px; background: var(--mv-surface); color: var(--mv-wine-500); box-shadow: var(--mv-shadow-sm); display: flex; align-items: center; justify-content: center; }
.mv-auth-art { max-width: 340px; display: flex; flex-direction: column; gap: 10px; }
.mv-auth-art .mv-ui-card { padding: 12px 14px; }
.mv-auth-art .mv-ui-ok { color: var(--mv-wine-500); }
.mv-auth-art .mv-ui-msg { padding-left: 24px; }

.mv-auth-card { position: relative; width: 100%; max-width: 460px; margin: 0 auto; background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-xl); box-shadow: var(--mv-shadow-lg); padding: 28px 22px 24px; }
.mv-auth-card::before { content: ""; position: absolute; left: 28px; right: 28px; top: 0; height: 3px; border-radius: 0 0 3px 3px; background: var(--mv-grad-accent); }
.mv-auth-card h1 { font-size: 28px; font-weight: 600; margin: 0 0 4px !important; }
.mv-auth-sub { font-size: 15px; color: var(--mv-text-2); margin: 0 0 20px !important; }
.mv-auth-msg { margin: 0 0 16px; }
.mv-auth-msg .alert, .mv-auth-msg > p { margin: 0 !important; padding: 12px 14px !important; border-radius: var(--mv-r-md) !important; border: 0 !important; font-size: 14px; background: var(--mv-error-bg) !important; color: var(--mv-error) !important; }
.mv-auth-msg .alert .close, .mv-auth-msg .alert .fa { display: none; }
.mv-auth-form { display: grid; gap: 16px; }

/* input with leading icon */
.mv-ifield { position: relative; display: block; }
.mv-ifield .mv-ifield-ic { position: absolute; left: 14px; top: 50%; transform: translateY(-50%); width: 18px; height: 18px; color: var(--mv-icon); pointer-events: none; transition: color var(--mv-fast) ease; }
.mv-ifield .mv-input { padding-left: 44px !important; height: 50px; }
.mv-ifield:focus-within .mv-ifield-ic { color: var(--mv-wine-500); }
.mv-ifield-btn { position: absolute; right: 6px; top: 50%; transform: translateY(-50%); width: 38px; height: 38px; border: 0; border-radius: 50%; background: transparent; color: var(--mv-icon); display: flex; align-items: center; justify-content: center; cursor: pointer; padding: 0; }
.mv-ifield-btn:hover { background: var(--mv-wine-50); color: var(--mv-wine-500); }
.mv-ifield-btn .mv-pw-hide, .mv-ifield-btn.is-shown .mv-pw-show { display: none; }
.mv-ifield-btn.is-shown .mv-pw-hide { display: block; }
.mv-ifield:has(.mv-ifield-btn) .mv-input { padding-right: 48px !important; }

.mv-auth-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.mv-auth-row .mv-check { align-items: center; grid-column: auto; }
.mv-auth-row .mv-check input[type="checkbox"] { margin: 0; }
.mv-auth-link { font-size: 14px; font-weight: 600; color: var(--mv-wine-500) !important; text-decoration: none !important; }
.mv-auth-link:hover { text-decoration: underline !important; text-underline-offset: 4px; }
.mv-auth-submit { width: 100%; min-height: 50px; gap: 8px; }
.mv-auth-or { display: flex; align-items: center; gap: 12px; font-size: 13px; color: var(--mv-text-3); }
.mv-auth-or::before, .mv-auth-or::after { content: ""; flex: 1; height: 1px; background: var(--mv-border); }
.mv-auth-otp { width: 100%; min-height: 48px; gap: 8px; }
.mv-auth-otp .mv-i { color: var(--mv-wine-500); }
.mv-auth-foot { text-align: center; font-size: 15px; color: var(--mv-text-2); margin: 20px 0 0 !important; }
.mv-auth-foot a { font-weight: 600; color: var(--mv-wine-500) !important; text-decoration: none !important; }
.mv-auth-foot a:hover { text-decoration: underline !important; text-underline-offset: 4px; }
.mv-auth-safe { display: flex; gap: 8px; align-items: flex-start; font-size: 12.5px; line-height: 1.5; color: var(--mv-text-3); background: var(--mv-ivory-50); border-radius: var(--mv-r-md); padding: 10px 12px; margin: 18px 0 0 !important; }
.mv-auth-safe .mv-i { flex: none; color: var(--mv-success); margin-top: 1px; }

@media (min-width: 576px) { .mv-auth-card { padding: 36px 36px 30px; } }
@media (min-width: 992px) {
  .mv-auth { padding: 56px 0 72px; }
  .mv-auth-grid { grid-template-columns: minmax(0, 1fr) 460px; gap: 64px; max-width: 1120px; }
  .mv-auth-side { display: block; }
  .mv-auth-card { margin: 0; }
}

/* ---- modal (OTP login) ---- */
.mv-modal .modal-dialog { max-width: 420px; margin-left: auto; margin-right: auto; padding: 0 16px; }
.mv-modal .modal-content { border: 0 !important; border-radius: var(--mv-r-xl) !important; box-shadow: var(--mv-shadow-lg); overflow: hidden; background: var(--mv-surface); }
.mv-modal-head { position: relative; text-align: center; padding: 28px 24px 8px; background: radial-gradient(320px 160px at 50% 0%, var(--mv-wine-50), transparent 75%); }
.mv-modal-ic { width: 52px; height: 52px; margin: 0 auto 12px; border-radius: 16px; background: var(--mv-surface); color: var(--mv-wine-500); box-shadow: var(--mv-shadow-md); display: flex; align-items: center; justify-content: center; }
.mv-modal-title { font-size: 21px; font-weight: 600; margin: 0 0 6px !important; color: var(--mv-text); }
.mv-modal-head p { font-size: 14px; line-height: 1.55; color: var(--mv-text-2); margin: 0 !important; }
.mv-modal-close { position: absolute; top: 12px; right: 12px; width: 36px; height: 36px; border: 0; border-radius: 50%; background: transparent; color: var(--mv-text-2); display: flex; align-items: center; justify-content: center; cursor: pointer; padding: 0; }
.mv-modal-close:hover { background: var(--mv-sand-100); color: var(--mv-text); }
.mv-modal-body { padding: 18px 24px 26px; display: grid; gap: 14px; }
.mv-modal-body .mv-err { margin: 0 !important; }
.mv-header-actions .mv-login.is-active { border-color: var(--mv-accent-line); background: var(--mv-wine-50); color: var(--mv-wine-500) !important; }

/* phones: card starts near the top instead of centring in a tall empty area */
@media (max-width: 991.98px) { .mv-auth { min-height: 0; align-items: flex-start; padding-top: 24px; } }

/* phones/tablets: short welcome line above the card (points and preview stay desktop-only) */
@media (max-width: 991.98px) {
  .mv-auth-grid { gap: 18px; }
  .mv-auth-side { display: block; text-align: center; max-width: 460px; margin: 0 auto; width: 100%; }
  .mv-auth-side h2 { font-size: 24px; margin: 8px 0 0 !important; }
  .mv-auth-side > p, .mv-auth-points, .mv-auth-art { display: none; }
  .mv-auth-side .mv-eyebrow { justify-content: center; }
}

/* auth: success messages are green, not red */
.mv-auth-msg .alert-success { background: var(--mv-success-bg) !important; color: var(--mv-success) !important; }
.mv-auth-msg .alert-success strong { color: inherit; }
/* forgot password: icon tile, numbered steps, back link */
.mv-auth-ic { width: 48px; height: 48px; border-radius: 14px; background: var(--mv-wine-50); color: var(--mv-wine-500); display: flex; align-items: center; justify-content: center; margin-bottom: 14px; }
.mv-auth-steps { list-style: none; margin: 0; padding: 0; display: grid; gap: 16px; position: relative; }
.mv-auth-steps li { display: flex; gap: 14px; align-items: flex-start; position: relative; }
.mv-auth-steps li > span { width: 36px; height: 36px; flex: none; border-radius: 50%; background: var(--mv-surface); color: var(--mv-wine-500); border: 2px solid var(--mv-wine-200); font-family: var(--mv-font-head); font-weight: 600; display: flex; align-items: center; justify-content: center; position: relative; z-index: 1; }
.mv-auth-steps li:not(:last-child)::before { content: ""; position: absolute; left: 17px; top: 36px; bottom: -16px; width: 2px; background: var(--mv-wine-100); }
.mv-auth-steps li div { font-size: 14.5px; line-height: 1.55; color: var(--mv-text-2); padding-top: 2px; }
.mv-auth-steps li b { display: block; font-size: 15.5px; font-weight: 600; color: var(--mv-text); margin-bottom: 2px; }
.mv-auth-foot a { display: inline-flex; align-items: center; gap: 6px; }
.mv-i.mv-flip { transform: scaleX(-1); }
@media (max-width: 991.98px) { .mv-auth-steps { display: none; } }

@media (min-width: 992px) { .mv-auth-side h2 em { display: block; } }

/* =====================================================================
   SEARCH PAGES (search/search.php guest + Home/search.php member)
   New shell: hero, sidebar of search types, form card. The forms inside keep
   their legacy markup (names/ids/AJAX) and are re-skinned here, scoped to .mv-srch.
   ===================================================================== */
.mv-srch { background: var(--mv-bg); }
.mv-srch-hero { background: var(--mv-grad-hero); padding: 32px 0 26px; border-bottom: 1px solid var(--mv-border); }
.mv-srch-hero h1 { font-size: clamp(28px, 4vw, 40px); line-height: 1.15; font-weight: 500; margin: 10px 0 10px !important; color: var(--mv-text); }
.mv-srch-hero h1 em { font-style: normal; color: var(--mv-wine-500); }
.mv-srch-hero p { font-size: 16px; line-height: 1.6; color: var(--mv-text-2); margin: 0 !important; max-width: 60ch; }
.mv-srch-layout { display: grid; gap: 18px; padding-top: 20px !important; padding-bottom: 56px !important; align-items: start; }

/* search type menu: swipeable pills on phones, sidebar on desktop */
.mv-srch-nav { position: sticky; top: 64px; z-index: 5; background: var(--mv-bg); margin: 0 calc(var(--mv-gutter) * -1); padding: 8px var(--mv-gutter); }
.mv-srch-nav ul { list-style: none; margin: 0; padding: 0 0 4px; display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; flex-wrap: nowrap; border: 0; }
.mv-srch-nav ul::-webkit-scrollbar { display: none; }
.mv-srch-nav li { flex: none; margin: 0; padding: 0; }
.mv-srch-nav a { display: flex; align-items: center; gap: 8px; padding: 7px 14px 7px 8px; border-radius: var(--mv-r-pill); border: 1px solid var(--mv-border); background: var(--mv-surface); color: var(--mv-text) !important; text-decoration: none !important; white-space: nowrap; transition: background var(--mv-fast) ease, border-color var(--mv-fast) ease, color var(--mv-fast) ease; }
.mv-srch-nav-ic { width: 30px; height: 30px; flex: none; border-radius: 50%; background: var(--mv-wine-50); color: var(--mv-wine-500); display: flex; align-items: center; justify-content: center; transition: background var(--mv-fast) ease, color var(--mv-fast) ease; }
.mv-srch-nav-txt { display: flex; flex-direction: column; line-height: 1.2; }
.mv-srch-nav-txt b { font-size: 14px; font-weight: 600; }
.mv-srch-nav-txt small { display: none; font-size: 12.5px; color: var(--mv-text-3); margin-top: 2px; }
.mv-srch-nav a:hover { border-color: var(--mv-wine-200); }
.mv-srch-nav a.active { background: var(--mv-wine-50); border-color: var(--mv-accent-line); color: var(--mv-wine-500) !important; }
.mv-srch-nav a.active .mv-srch-nav-ic { background: var(--mv-primary); color: var(--mv-on-primary); }
.mv-srch-tip { display: none; }

.mv-srch-card { background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-xl); box-shadow: var(--mv-shadow-sm); padding: 22px 18px 26px; position: relative; }
.mv-srch-card::before { content: ""; position: absolute; left: 28px; right: 28px; top: 0; height: 3px; border-radius: 0 0 3px 3px; background: var(--mv-grad-accent); }
.mv-srch .tab-content { padding: 0 !important; }
.mv-srch .tab-pane > .row, .mv-srch .tab-pane form > .row { margin-left: -10px; margin-right: -10px; }
.mv-srch .tab-pane [class*="col-"], .mv-srch .tab-pane .col { padding-left: 10px; padding-right: 10px; }

/* pane heading + intro */
.mv-srch h3.textLightS { font-family: var(--mv-font-head); font-size: 24px; font-weight: 600; color: var(--mv-text) !important; margin: 0 0 6px !important; }
.mv-srch .gt-padding-bottom-10.gt-border-bottom-smoke-white { font-size: 15px; line-height: 1.6; color: var(--mv-text-2); border-bottom: 1px solid var(--mv-border) !important; padding-bottom: 16px !important; margin-bottom: 6px !important; }
.mv-srch .form-group { margin-bottom: 18px; }
.mv-srch label.gt-margin-top-10, .mv-srch .form-group > div > label:not(.check-box):not(.cursor-pointer) { font-size: 13.5px; font-weight: 500; color: var(--mv-text-2); margin: 10px 0 6px !important; }

/* inputs + native selects */
.mv-srch .form-control, .mv-srch select.form-control { height: 48px; border: 1.5px solid var(--mv-border-strong) !important; border-radius: 10px !important; background-color: var(--mv-surface) !important; color: var(--mv-text) !important; font-size: 15px !important; box-shadow: none !important; padding: 0 12px; transition: border-color var(--mv-fast) ease, box-shadow var(--mv-fast) ease; }
.mv-srch .form-control:focus { border-color: var(--mv-wine-500) !important; box-shadow: var(--mv-ring) !important; outline: none; }
.mv-srch .col-auto.align-self-center { font-size: 14px; color: var(--mv-text-3); }

/* Chosen multi-selects */
.mv-srch .chosen-container { width: 100% !important; font-size: 15px; }
.mv-srch .chosen-container-multi .chosen-choices { min-height: 48px; padding: 6px 8px; border: 1.5px solid var(--mv-border-strong) !important; border-radius: 10px; background: var(--mv-surface) !important; box-shadow: none !important; display: flex; flex-wrap: wrap; align-items: center; gap: 6px; cursor: text; }
.mv-srch .chosen-container-active .chosen-choices { border-color: var(--mv-wine-500) !important; box-shadow: var(--mv-ring) !important; }
.mv-srch .chosen-container-multi .chosen-choices li.search-field input[type="text"] { height: 32px; margin: 0; padding: 0 6px; font-family: var(--mv-font-body) !important; font-size: 15px; color: var(--mv-text-3) !important; }
.mv-srch .chosen-container-multi .chosen-choices li.search-choice { margin: 0; padding: 6px 26px 6px 10px; border: 0; border-radius: var(--mv-r-pill); background: var(--mv-wine-50) !important; box-shadow: none; color: var(--mv-wine-500); font-size: 13px; font-weight: 500; line-height: 1.2; }
.mv-srch .chosen-container-multi .chosen-choices li.search-choice .search-choice-close { top: 50%; right: 8px; transform: translateY(-50%); }
.mv-srch .chosen-container .chosen-drop { border: 1px solid var(--mv-border) !important; border-radius: var(--mv-r-md); box-shadow: var(--mv-shadow-lg); margin-top: 6px; overflow: hidden; }
.mv-srch .chosen-container .chosen-results { padding: 6px; margin: 0; max-height: 260px; }
.mv-srch .chosen-container .chosen-results li { padding: 9px 12px; border-radius: var(--mv-r-sm); color: var(--mv-text); font-size: 14.5px; }
.mv-srch .chosen-container .chosen-results li.highlighted { background: var(--mv-wine-50) !important; background-image: none !important; color: var(--mv-wine-500) !important; }
.mv-srch .chosen-container .chosen-results li.no-results { background: var(--mv-sand-100); color: var(--mv-text-2); }

/* choice pills (radio + checkbox), legacy .check-box re-drawn */
.mv-srch .reado-btns-design, .mv-srch .keep-me-logged { float: none !important; display: inline-flex; align-items: center; gap: 8px; margin: 0 8px 8px 0; padding: 7px 14px 7px 9px; border: 1.5px solid var(--mv-border); border-radius: var(--mv-r-pill); background: var(--mv-surface); transition: border-color var(--mv-fast) ease, background var(--mv-fast) ease; }
.mv-srch .reado-btns-design:hover, .mv-srch .keep-me-logged:hover { border-color: var(--mv-wine-200); }
.mv-srch .reado-btns-design:has(input:checked), .mv-srch .keep-me-logged:has(input:checked) { border-color: var(--mv-accent-line); background: var(--mv-wine-50); }
.mv-srch .reado-btns-design label, .mv-srch .keep-me-logged label { float: none !important; margin: 0 !important; padding: 0 !important; font-size: 14.5px; color: var(--mv-text); line-height: 1.2; }
.mv-srch .check-box { width: 20px; height: 20px; border: 1.5px solid var(--mv-border-strong); border-radius: 6px; background: var(--mv-surface); margin: 0 !important; flex: none; }
.mv-srch input[type=radio] + .check-box { border-radius: 50%; }
.mv-srch input[type=checkbox]:checked + .check-box, .mv-srch input[type=radio]:checked + .check-box { border-color: var(--mv-primary); background: var(--mv-primary); }
.mv-srch .check-box::before, .mv-srch .check-box::after { background-color: var(--mv-on-primary); box-shadow: none; width: 2.5px; }
.mv-srch .check-box::before { top: 13px; left: 8.5px; }
.mv-srch .check-box::after { top: 8px; left: 3.5px; }
.mv-srch input:checked + .check-box::after { height: 6px; animation: none; }
.mv-srch input:checked + .check-box::before { height: 11px; animation: none; }
.mv-srch label.radio_button.float-left.pr-3 { display: block; float: none !important; font-size: 13.5px; font-weight: 500; color: var(--mv-text-2); margin: 0 0 8px !important; padding: 0 !important; }
.mv-srch label.radio_button small { color: var(--mv-wine-500); font-size: 13px; }
.mv-srch .pt-2 { padding-top: 0 !important; }
.mv-srch .d-flex.h-100.justify-content-center { justify-content: flex-start !important; }

/* submit */
.mv-srch .mv-srch-submit { min-width: 220px; min-height: 50px; padding: 0 32px; border: 0; cursor: pointer; }
.mv-srch .form-group.text-center { text-align: left !important; border-top: 1px solid var(--mv-border); padding-top: 20px; margin-top: 6px !important; }

/* messages */
.mv-srch .alert { border: 0 !important; border-radius: var(--mv-r-md) !important; font-size: 14px; }

@media (min-width: 768px) { .mv-srch-card { padding: 30px 32px 32px; } }
@media (min-width: 992px) {
  .mv-srch-hero { padding: 44px 0 32px; }
  .mv-srch-layout { grid-template-columns: 290px minmax(0, 1fr); gap: 28px; padding-top: 32px !important; padding-bottom: 80px !important; }
  .mv-srch-nav { top: 96px; margin: 0; padding: 8px; background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-lg); box-shadow: var(--mv-shadow-sm); }
  .mv-srch-nav ul { flex-direction: column; overflow: visible; gap: 2px; padding: 0; }
  .mv-srch-nav a { border: 0; border-radius: var(--mv-r-md); padding: 10px 12px; gap: 12px; white-space: normal; position: relative; }
  .mv-srch-nav a.active { box-shadow: inset 3px 0 0 var(--mv-accent-line); }
  .mv-srch-nav a:hover:not(.active) { background: var(--mv-ivory-50); }
  .mv-srch-nav-ic { width: 36px; height: 36px; border-radius: 11px; }
  .mv-srch-nav-txt small { display: block; }
  .mv-srch-tip { display: flex; gap: 8px; align-items: flex-start; margin: 8px 6px 4px !important; padding: 12px; border-top: 1px solid var(--mv-border); font-size: 12.5px; line-height: 1.5; color: var(--mv-text-3); }
  .mv-srch-tip .mv-i { flex: none; color: var(--mv-success); margin-top: 1px; }
}

/* search fixes: grid items may shrink (phone overflow), full-width chosen placeholder, neutral select text */
.mv-srch-layout > * { min-width: 0; }
.mv-srch .chosen-container-multi .chosen-choices li.search-field { flex: 1 1 120px; min-width: 120px; }
.mv-srch .chosen-container-multi .chosen-choices li.search-field input[type="text"] { width: 100% !important; }
.mv-srch .tab-pane select.form-control.flat, .mv-srch .tab-pane input.form-control.flat { color: var(--mv-text) !important; border-color: var(--mv-border-strong) !important; background-color: var(--mv-surface) !important; font-weight: 500; }
.mv-srch .tab-pane select.form-control.flat:focus, .mv-srch .tab-pane input.form-control.flat:focus { border-color: var(--mv-wine-500) !important; }
.mv-srch .check-box { margin-right: 8px !important; vertical-align: middle; }
.mv-srch .reado-btns-design .check-box, .mv-srch .keep-me-logged .check-box { margin-right: 0 !important; }
/* legacy uses -webkit-text-fill-color (wine) on inputs and gradient-clipped headings; neutralise in search */
.mv-srch .tab-pane .form-control, .mv-srch .chosen-container input { -webkit-text-fill-color: currentColor !important; padding-left: 14px !important; padding-right: 14px !important; }
.mv-srch .tab-pane select.form-control { padding-right: 8px !important; }
.mv-srch h3.textLightS { background: none !important; -webkit-background-clip: border-box !important; -webkit-text-fill-color: currentColor !important; }

/* search: compact (client) - slim header strip, tighter form so it fits without much scrolling */
.mv-srch-hero { padding: 16px 0 14px; }
.mv-srch-hero .mv-eyebrow { display: none; }
.mv-srch-hero h1 { font-size: clamp(22px, 2.6vw, 28px); margin: 0 0 4px !important; }
.mv-srch-hero p { font-size: 14.5px; }
.mv-srch-layout { padding-top: 16px !important; padding-bottom: 40px !important; gap: 14px; }
.mv-srch-card { padding: 18px 16px 18px; }
.mv-srch h3.textLightS { font-size: 20px; margin: 0 0 2px !important; }
.mv-srch .gt-padding-bottom-10.gt-border-bottom-smoke-white { font-size: 14px; line-height: 1.5; padding-bottom: 10px !important; margin-bottom: 0 !important; }
.mv-srch .form-group { margin-bottom: 10px; }
.mv-srch label.gt-margin-top-10, .mv-srch .form-group > div > label:not(.check-box):not(.cursor-pointer) { font-size: 13px; margin: 8px 0 4px !important; }
.mv-srch .form-control, .mv-srch select.form-control { height: 42px !important; font-size: 14.5px !important; }
.mv-srch .chosen-container-multi .chosen-choices { min-height: 42px; padding: 4px 8px; }
.mv-srch .chosen-container-multi .chosen-choices li.search-field input[type="text"] { height: 30px; font-size: 14.5px; }
.mv-srch label.radio_button.float-left.pr-3 { margin: 0 0 6px !important; }
.mv-srch .reado-btns-design, .mv-srch .keep-me-logged { padding: 5px 12px 5px 7px; margin: 0 6px 6px 0; }
.mv-srch .reado-btns-design label, .mv-srch .keep-me-logged label { font-size: 14px; }
.mv-srch .form-group.text-center { padding-top: 14px; margin-top: 4px !important; margin-bottom: 0; }
.mv-srch .mv-srch-submit { min-height: 44px; min-width: 180px; }
.mv-srch .mt-3 { margin-top: 8px !important; }
@media (min-width: 768px) { .mv-srch-card { padding: 22px 26px 22px; } }
@media (min-width: 992px) {
  .mv-srch-hero { padding: 22px 0 18px; }
  .mv-srch-layout { grid-template-columns: 250px minmax(0, 1fr); gap: 22px; padding-top: 22px !important; padding-bottom: 56px !important; }
  .mv-srch-nav { top: 88px; padding: 6px; }
  .mv-srch-nav a { padding: 7px 10px; gap: 10px; }
  .mv-srch-nav-ic { width: 30px; height: 30px; border-radius: 9px; }
  .mv-srch-nav-txt b { font-size: 14px; }
  .mv-srch-nav-txt small { font-size: 12px; margin-top: 1px; }
  .mv-srch-tip { margin: 6px 4px 2px !important; padding: 10px 8px; }
}
.mv-srch .tab-content .tab-pane .form-control { height: 42px !important; line-height: normal; }

/* =====================================================================
   SEARCH RESULTS (guest): compact profile cards + pagination
   ===================================================================== */
.mv-res { background: var(--mv-bg); }
.mv-res-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.mv-res-head h1 { font-size: clamp(22px, 2.6vw, 28px); font-weight: 500; margin: 0 0 4px !important; }
.mv-res-head p { font-size: 14.5px; color: var(--mv-text-2); margin: 0 !important; }
.mv-res-head .mv-btn { min-height: 42px; gap: 8px; }
.mv-res-body { padding-top: 20px !important; padding-bottom: 56px !important; max-width: 1180px; }

/* toolbar above the grid */
.mv-res-bar { display: flex; align-items: center; justify-content: space-between; gap: 10px 16px; flex-wrap: wrap; margin-bottom: 16px; }
.mv-res-bar p { display: inline-flex; align-items: center; gap: 8px; font-size: 14.5px; color: var(--mv-text-2); margin: 0 !important; }
.mv-res-bar p .mv-i { color: var(--mv-wine-500); }
.mv-res-bar b { color: var(--mv-text); font-weight: 600; }
.mv-res-bar-note { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; color: var(--mv-text-3); background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-pill); padding: 6px 12px; }

/* grid of vertical profile cards */
.mv-res-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); gap: 20px; }
.mv-res-card { display: flex; flex-direction: column; background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-lg); overflow: hidden; box-shadow: var(--mv-shadow-sm); transition: box-shadow var(--mv-base) ease, border-color var(--mv-base) ease, transform var(--mv-base) ease; margin: 0 !important; padding: 0 !important; min-width: 0; }
.mv-res-card:hover { box-shadow: var(--mv-shadow-md); border-color: var(--mv-wine-200); transform: translateY(-2px); }
.mv-res-card.is-new { animation: mvResIn .35s ease both; }
@keyframes mvResIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }

.mv-res-photo { position: relative; display: block; aspect-ratio: 4 / 3; overflow: hidden; background: var(--mv-sand-100); }
.mv-res-photo img { width: 100%; height: 100%; object-fit: cover; filter: blur(10px); transform: scale(1.15); }
.mv-res-photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0) 55%, rgba(0,0,0,.45) 100%); pointer-events: none; }
.mv-res-lock { position: absolute; left: 50%; top: 44%; transform: translate(-50%, -50%); z-index: 1; display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; font-size: 12.5px; font-weight: 600; color: var(--mv-text); background: rgba(255,255,255,.94); padding: 7px 12px; border-radius: var(--mv-r-pill); box-shadow: var(--mv-shadow-md); transition: transform var(--mv-fast) ease; }
.mv-res-lock .mv-i { color: var(--mv-wine-500); }
.mv-res-photo:hover .mv-res-lock { transform: translate(-50%, -50%) scale(1.04); }
.mv-res-badge { position: absolute; left: 12px; bottom: 10px; z-index: 1; font-size: 13px; font-weight: 600; color: var(--mv-on-primary); text-shadow: 0 1px 2px rgba(0,0,0,.35); }

.mv-res-info { display: flex; flex-direction: column; flex: 1; padding: 14px 16px 16px; min-width: 0; }
.mv-res-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 8px; }
.mv-res-top h2 { font-size: 18px; font-weight: 600; margin: 0 !important; letter-spacing: .01em; }
.mv-res-top h2 a { color: var(--mv-text) !important; text-decoration: none !important; }
.mv-res-top h2 a:hover { color: var(--mv-wine-500) !important; }
.mv-res-meta { font-size: 12px; font-weight: 600; color: var(--mv-wine-500); background: var(--mv-wine-50); border-radius: var(--mv-r-pill); padding: 3px 10px; }
.mv-res-line { display: flex; align-items: center; gap: 8px; font-size: 14px; color: var(--mv-text); margin: 0 0 4px !important; min-width: 0; }
.mv-res-line span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mv-res-line .mv-i { color: var(--mv-wine-500); flex: none; }

.mv-res-facts { display: grid; gap: 6px; margin: 10px 0 0; padding: 10px 0 0; border-top: 1px dashed var(--mv-border-strong); }
.mv-res-facts > div { display: grid; grid-template-columns: 104px minmax(0, 1fr); gap: 8px; font-size: 13.5px; min-width: 0; }
.mv-res-facts dt { display: inline-flex; align-items: center; gap: 6px; font-weight: 500; color: var(--mv-text-3); }
.mv-res-facts dt .mv-i { width: 14px; height: 14px; }
.mv-res-facts dd { margin: 0; color: var(--mv-text); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mv-res-about { font-size: 13.5px; line-height: 1.5; color: var(--mv-text-2); margin: 10px 0 0 !important; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

.mv-res-actions { display: flex; align-items: center; gap: 6px; margin-top: auto; padding-top: 14px; }
.mv-res-actions .mv-btn { flex: 1; min-width: 0; white-space: nowrap; min-height: 40px; padding: 0 12px; font-size: 14px; gap: 6px; }
.mv-res-act { display: inline-flex; align-items: center; justify-content: center; flex: none; width: 40px; height: 40px; border-radius: 50%; border: 1px solid var(--mv-border); color: var(--mv-wine-500) !important; text-decoration: none !important; transition: background var(--mv-fast) ease, border-color var(--mv-fast) ease; }
.mv-res-act:hover { background: var(--mv-wine-50); border-color: var(--mv-wine-200); }

/* skeleton cards while the next page loads */
.mv-res-skel { pointer-events: none; }
.mv-res-skel .mv-res-photo, .mv-res-skel .mv-res-info i { background: linear-gradient(90deg, var(--mv-sand-100) 0%, var(--mv-surface) 50%, var(--mv-sand-100) 100%); background-size: 200% 100%; animation: mvResShim 1.2s linear infinite; }
.mv-res-skel .mv-res-photo::after { display: none; }
.mv-res-skel .mv-res-info { gap: 10px; }
.mv-res-skel .mv-res-info i { display: block; height: 12px; border-radius: 6px; }
.mv-res-skel .mv-res-info i:nth-child(1) { width: 45%; height: 16px; }
.mv-res-skel .mv-res-info i:nth-child(2) { width: 70%; }
.mv-res-skel .mv-res-info i:nth-child(3) { width: 85%; }
.mv-res-skel .mv-res-info i:nth-child(4) { width: 100%; height: 40px; border-radius: 20px; margin-top: 10px; }
@keyframes mvResShim { from { background-position: 200% 0; } to { background-position: -200% 0; } }

/* show more */
.mv-res-more { display: flex; flex-direction: column; align-items: center; gap: 10px; margin-top: 26px; }
.mv-res-more[hidden], .mv-res-more [hidden] { display: none !important; }
.mv-res-more .mv-btn { min-height: 46px; padding: 0 26px; gap: 8px; font-size: 15px; }
.mv-res-more .mv-btn.is-loading { opacity: .65; cursor: progress; }
.mv-res-end { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; color: var(--mv-text-2); margin: 0 !important; }
.mv-res-end .mv-i { color: var(--mv-success); }
.mv-res-end a { color: var(--mv-wine-500) !important; font-weight: 600; }
.mv-pag[hidden] { display: none !important; }

@media (max-width: 575.98px) {
  .mv-res-list { grid-template-columns: 1fr; gap: 14px; }
  .mv-res-photo { aspect-ratio: 16 / 10; }
  .mv-res-bar-note { display: none; }
}
@media (prefers-reduced-motion: reduce) { .mv-res-card.is-new, .mv-res-skel * { animation: none !important; } }

.mv-res-empty { text-align: center; background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-xl); padding: 40px 20px; }
.mv-res-empty-ic { width: 56px; height: 56px; margin: 0 auto 12px; border-radius: 16px; background: var(--mv-wine-50); color: var(--mv-wine-500); display: flex; align-items: center; justify-content: center; }
.mv-res-empty h2 { font-size: 22px; margin: 0 0 6px !important; }
.mv-res-empty p { color: var(--mv-text-2); margin: 0 0 18px !important; }

/* CodeIgniter pagination: ul.pagination > li > a.page-numbers1 (current) + span.numlink/nextlink > a */
.mv-pag { margin: 4px 0 14px; }
.mv-pag:last-child { margin: 18px 0 0; }
.mv-pag ul.pagination { display: block; margin: 0; padding: 0; list-style: none; }
.mv-pag ul.pagination > li { display: flex !important; flex-wrap: wrap; justify-content: center; gap: 6px; margin: 0 !important; }
.mv-pag a { display: inline-flex !important; align-items: center; justify-content: center; min-width: 38px; height: 38px; padding: 0 12px !important; border-radius: var(--mv-r-pill) !important; border: 1px solid var(--mv-border) !important; background: var(--mv-surface) !important; color: var(--mv-text) !important; font-size: 14px; font-weight: 500; text-decoration: none !important; float: none !important; margin: 0 !important; }
.mv-pag a:hover { border-color: var(--mv-wine-200) !important; color: var(--mv-wine-500) !important; }
.mv-pag a.page-numbers1 { background: var(--mv-primary) !important; border-color: var(--mv-primary) !important; color: var(--mv-on-primary) !important; }


.mv-pag span { border: 0 !important; background: none !important; padding: 0 !important; margin: 0 !important; box-shadow: none !important; display: inline-flex; }

/* =====================================================================
   PAGE SKELETON LOADER (replaces the old wordmark + ring loader)
   #openloader.preloader-wrapper stays the full-screen layer scripts show/hide.
   ===================================================================== */
.preloader-wrapper#openloader { background: var(--mv-bg) !important; text-align: left !important; overflow: hidden; z-index: 1671; }
.mv-skel { position: absolute; inset: 0; overflow: hidden; }
.mv-skel-in { max-width: 1200px; margin: 0 auto; padding: 0 var(--mv-gutter); }
.mv-skel-bar { background: var(--mv-surface); border-bottom: 1px solid var(--mv-border); }
.mv-skel-bar .mv-skel-in { height: 64px; display: flex; align-items: center; gap: 24px; }
.mv-skel-nav { display: none; gap: 10px; flex: 1; justify-content: center; }
.mv-skel-act { display: flex; gap: 10px; margin-left: auto; }
.mv-skel-hero { background: var(--mv-grad-hero); border-bottom: 1px solid var(--mv-border); }
.mv-skel-col { display: flex; flex-direction: column; gap: 12px; padding-top: 28px; padding-bottom: 28px; }
.mv-skel-grid { display: grid; grid-template-columns: 1fr; gap: 16px; padding-top: 24px; }
.mv-skel-card { background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-lg); padding: 12px 12px 16px; display: flex; flex-direction: column; gap: 10px; }
.mv-skel-card:nth-child(n+2) { display: none; }

/* shimmer blocks */
.mv-sk { display: block; border-radius: 8px; background: linear-gradient(90deg, var(--mv-sand-100) 0%, var(--mv-sand-200) 40%, var(--mv-sand-100) 80%); background-size: 300% 100%; animation: mv-shimmer 1.4s ease-in-out infinite; }
.mv-sk-logo { width: 130px; height: 24px; }
.mv-sk-pill { width: 84px; height: 14px; border-radius: var(--mv-r-pill); }
.mv-sk-btn { width: 92px; height: 38px; border-radius: var(--mv-r-pill); background: linear-gradient(90deg, var(--mv-wine-100) 0%, var(--mv-wine-200) 40%, var(--mv-wine-100) 80%); background-size: 300% 100%; }
.mv-sk-btn.is-ghost { display: none; background: linear-gradient(90deg, var(--mv-sand-100) 0%, var(--mv-sand-200) 40%, var(--mv-sand-100) 80%); background-size: 300% 100%; }
.mv-sk-title { height: 30px; border-radius: 10px; }
.mv-sk-line { height: 12px; border-radius: 6px; }
.mv-sk-img { aspect-ratio: 4 / 3; border-radius: 12px; }
.mv-sk.w-20 { width: 20%; min-width: 90px; } .mv-sk.w-40 { width: 40%; } .mv-sk.w-55 { width: 55%; } .mv-sk.w-60 { width: 60%; } .mv-sk.w-80 { width: 80%; }
@keyframes mv-shimmer { 0% { background-position: 100% 0; } 100% { background-position: 0 0; } }

/* status pill (also shows "Saving..." on chat) */
.mv-skel-status { position: fixed; left: 50%; bottom: 28px; transform: translateX(-50%); display: inline-flex; align-items: center; gap: 8px; padding: 8px 16px; border-radius: var(--mv-r-pill); background: var(--mv-surface); box-shadow: var(--mv-shadow-md); font: 500 13.5px var(--mv-font-body); color: var(--mv-text-2); z-index: 2; }
.mv-skel-status #textch { font: inherit !important; color: inherit !important; margin: 0 !important; }
.mv-skel-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--mv-wine-500); animation: mv-pulse 1s ease-in-out infinite; }
@keyframes mv-pulse { 0%, 100% { opacity: .35; transform: scale(.8); } 50% { opacity: 1; transform: scale(1); } }

@media (min-width: 640px) { .mv-skel-grid { grid-template-columns: repeat(2, 1fr); } .mv-skel-card:nth-child(2) { display: flex; } }
@media (min-width: 992px) {
  .mv-skel-bar .mv-skel-in { height: 72px; }
  .mv-skel-nav { display: flex; }
  .mv-sk-btn.is-ghost { display: block; }
  .mv-skel-col { padding-top: 40px; padding-bottom: 40px; }
  .mv-skel-grid { grid-template-columns: repeat(3, 1fr); gap: 20px; padding-top: 32px; }
  .mv-skel-card:nth-child(3) { display: flex; }
}
@media (prefers-reduced-motion: reduce) { .mv-sk, .mv-skel-dot { animation: none; } }
.mv-skel-card:nth-child(2) { display: flex; }

/* =====================================================================
   MEMBERSHIP PAGE (plan cards reuse the home .mv-plan styles)
   ===================================================================== */
.mv-mem { background: var(--mv-bg); }
.mv-mem-hero h1 em { font-style: normal; color: var(--mv-wine-500); }
.mv-mem-hero .mv-eyebrow { display: inline-flex; }
.mv-mem-hero h1 { margin-top: 8px !important; }
.mv-mem-body { padding-top: 22px !important; padding-bottom: 56px !important; }
.mv-mem-free { list-style: none; margin: 0 0 30px; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.mv-mem-free li { display: inline-flex; align-items: center; gap: 8px; padding: 7px 14px; border-radius: var(--mv-r-pill); background: var(--mv-surface); border: 1px solid var(--mv-border); font-size: 14px; font-weight: 500; color: var(--mv-text); }
.mv-mem-free .mv-i { color: var(--mv-success); }
.mv-mem-plans { max-width: 1040px; margin: 0 auto; padding-top: 6px; }
.mv-mem-plans .mv-plan ul { font-size: 14.5px; }
.mv-mem-plans .mv-plan li b { color: var(--mv-text); font-weight: 600; }
.mv-mem-plans .mv-btn { min-height: 48px; cursor: pointer; }
.mv-mem-note { max-width: 1040px; margin: 28px auto 0; display: flex; gap: 14px; align-items: flex-start; background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-lg); padding: 16px 18px; }
.mv-mem-note-ic { width: 40px; height: 40px; flex: none; border-radius: 12px; background: var(--mv-success-bg); color: var(--mv-success); display: flex; align-items: center; justify-content: center; }
.mv-mem-note b { display: block; font-size: 15px; font-weight: 600; color: var(--mv-text); margin-bottom: 2px; }
.mv-mem-note p { font-size: 14px; color: var(--mv-text-2); margin: 0 !important; }
.mv-mem-note a { color: var(--mv-wine-500) !important; font-weight: 600; }

/* modal summary list */
.mv-sum { margin: 0; display: grid; gap: 0; border: 1px solid var(--mv-border); border-radius: var(--mv-r-md); overflow: hidden; }
.mv-sum > div { display: flex; justify-content: space-between; gap: 12px; padding: 12px 14px; border-bottom: 1px solid var(--mv-border); font-size: 14.5px; }
.mv-sum > div:last-child { border-bottom: 0; }
.mv-sum dt { font-weight: 500; color: var(--mv-text-2); }
.mv-sum dd { margin: 0; font-weight: 600; color: var(--mv-text); text-align: right; }
.mv-sum .is-total { background: var(--mv-wine-50); }
.mv-sum .is-total dd { color: var(--mv-wine-500); font-size: 17px; }
.mv-modal-body .mv-auth-foot { margin: 0 !important; font-size: 13.5px; }

/* ---- search hero: popular chips + member avatars ---- */
.mv-srch-hero-in { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.mv-srch-pop { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-top: 12px; }
.mv-srch-pop span { font-size: 13px; font-weight: 600; color: var(--mv-text-3); margin-right: 2px; }
.mv-srch-pop a { font-size: 13px; font-weight: 500; padding: 5px 12px; border-radius: var(--mv-r-pill); background: var(--mv-surface); border: 1px solid var(--mv-border); color: var(--mv-text) !important; text-decoration: none !important; transition: border-color var(--mv-fast) ease, color var(--mv-fast) ease, background var(--mv-fast) ease; }
.mv-srch-pop a:hover { border-color: var(--mv-wine-200); background: var(--mv-wine-50); color: var(--mv-wine-500) !important; }
.mv-srch-hero-art { display: none; flex-direction: column; align-items: flex-end; gap: 10px; flex: none; }
.mv-srch-avs { display: flex; }
.mv-srch-avs i { width: 46px; height: 46px; margin-left: -12px; border-radius: 50%; border: 3px solid var(--mv-surface); display: flex; align-items: center; justify-content: center; font-style: normal; font-size: 12px; font-weight: 700; color: var(--mv-on-primary); background: var(--mv-grad-accent); box-shadow: var(--mv-shadow-sm); }
.mv-srch-avs i:nth-child(2) { background: var(--mv-wine-400); }
.mv-srch-avs i:nth-child(3) { background: var(--mv-gold-500); }
.mv-srch-avs i:nth-child(4) { background: var(--mv-wine-300); }
.mv-srch-avs i:nth-child(5) { background: var(--mv-wine-500); }
.mv-srch-hero-note { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 500; color: var(--mv-text-2); background: var(--mv-surface); padding: 6px 12px; border-radius: var(--mv-r-pill); box-shadow: var(--mv-shadow-sm); }
.mv-srch-hero-note .mv-i { color: var(--mv-success); }
@media (min-width: 992px) { .mv-srch-hero-art { display: flex; } }

/* ---- search: custom dropdowns, compact ---- */
.mv-srch .mv-select { flex: 1 1 0; min-width: 0; }
.mv-srch .mv-sel-btn { height: 42px; font-size: 14.5px; padding: 0 42px 0 14px; }
.mv-srch .row > .col > .mv-select, .mv-srch .form-group .mv-select { display: block; }
.mv-srch .mv-sel-pop { z-index: 30; }
.mv-srch .tab-pane .mv-select.is-custom > select.form-control { height: 100% !important; }

/* =====================================================================
   SUCCESS STORIES
   ===================================================================== */
.mv-story { background: var(--mv-bg); }
.mv-story-hero h1 em { font-style: normal; color: var(--mv-wine-500); }
.mv-story-hero .mv-eyebrow { display: inline-flex; margin-bottom: 6px; }
.mv-story-hero .mv-btn { min-height: 44px; gap: 8px; }
.mv-story-body { padding-top: 22px !important; padding-bottom: 56px !important; }

/* segmented tabs */
.mv-seg { display: inline-flex !important; gap: 4px; padding: 4px; margin: 0 0 22px !important; background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-pill); flex-wrap: nowrap; }
.mv-seg .nav-item { margin: 0; }
.mv-seg .nav-link { display: inline-flex; align-items: center; gap: 8px; padding: 9px 18px !important; border: 0 !important; border-radius: var(--mv-r-pill) !important; font-size: 14.5px; font-weight: 500; color: var(--mv-text-2) !important; background: transparent !important; transition: background var(--mv-fast) ease, color var(--mv-fast) ease; }
.mv-seg .nav-link .mv-i { color: currentColor; }
.mv-seg .nav-link:hover { color: var(--mv-text) !important; background: var(--mv-sand-100) !important; }
.mv-seg .nav-link.active { background: var(--mv-primary) !important; color: var(--mv-on-primary) !important; box-shadow: var(--mv-shadow-primary); }

/* story cards */
.mv-story-grid { display: grid; grid-template-columns: 1fr; gap: 18px; }
.mv-story-card { background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-xl); overflow: hidden; display: flex; flex-direction: column; box-shadow: var(--mv-shadow-sm); transition: transform var(--mv-base) var(--mv-ease), box-shadow var(--mv-base) ease; }
.mv-story-card:hover { transform: translateY(-3px); box-shadow: var(--mv-shadow-lg); }
.mv-story-photo { aspect-ratio: 4 / 3; overflow: hidden; background: var(--mv-sand-100); }
.mv-story-photo img { width: 100%; height: 100%; object-fit: cover; transition: transform var(--mv-slow) var(--mv-ease); }
.mv-story-card:hover .mv-story-photo img { transform: scale(1.04); }
.mv-story-info { padding: 18px 20px 20px; display: flex; flex-direction: column; flex: 1; }
.mv-story-info h2 { font-size: 20px; font-weight: 600; margin: 0 0 4px !important; color: var(--mv-text); }
.mv-story-date { display: inline-flex; align-items: center; gap: 6px; font-size: 13.5px; font-weight: 500; color: var(--mv-wine-500); margin: 0 0 12px !important; }
.mv-story-text { position: relative; padding-left: 26px; max-height: 6.4em; overflow: hidden; }
.mv-story-text.is-open { max-height: none; }
.mv-story-text:not(.is-open)::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 1.6em; background: linear-gradient(rgba(255,255,255,0), var(--mv-surface)); }
.mv-story-text p { font-size: 14.5px; line-height: 1.6; color: var(--mv-text-2); margin: 0 !important; }
.mv-story-q { position: absolute; left: 0; top: 2px; width: 18px; height: 18px; color: var(--mv-wine-200); }
.mv-story-more { align-self: flex-start; margin-top: 10px; padding: 0; border: 0; background: none; font-size: 14px; font-weight: 600; color: var(--mv-wine-500); cursor: pointer; }
.mv-story-more:hover { text-decoration: underline; text-underline-offset: 4px; }

/* post form */
.mv-story-post { display: grid; gap: 18px; align-items: start; }
.mv-story-form { background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-xl); box-shadow: var(--mv-shadow-sm); padding: 22px 18px 22px; position: relative; }
.mv-story-form::before { content: ""; position: absolute; left: 28px; right: 28px; top: 0; height: 3px; border-radius: 0 0 3px 3px; background: var(--mv-grad-accent); }
.mv-story-form h2 { font-size: 22px; font-weight: 600; margin: 0 0 4px !important; }
.mv-story-fields { display: grid; grid-template-columns: 1fr; gap: 14px; margin-bottom: 18px; }
.mv-story-fields .mv-input { height: 44px; }
.mv-req { color: var(--mv-wine-500); }
.mv-textarea { height: auto !important; min-height: 120px; padding: 12px 14px !important; resize: vertical; line-height: 1.5; }
.mv-file { position: relative; display: flex !important; align-items: center; gap: 10px; height: 44px; padding: 0 14px; border: 1.5px dashed var(--mv-border-strong); border-radius: 10px; background: var(--mv-ivory-50); color: var(--mv-text-2) !important; font-size: 14.5px !important; cursor: pointer; margin: 0 !important; overflow: hidden; }
.mv-file .mv-i { color: var(--mv-wine-500); flex: none; }
.mv-file span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mv-file:hover { border-color: var(--mv-wine-300); background: var(--mv-wine-50); }
.mv-file input[type=file] { position: absolute; inset: 0; opacity: 0; cursor: pointer; display: block !important; width: 100%; }
.mv-story-submit { min-height: 48px; padding: 0 28px; gap: 8px; }
.mv-story-tips { background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-lg); padding: 18px 20px; }
.mv-story-tips h3 { font-size: 16px; font-weight: 600; margin: 0 0 10px !important; }
.mv-story-tips ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.mv-story-tips li { display: flex; gap: 8px; font-size: 14px; line-height: 1.5; color: var(--mv-text-2); }
.mv-story-tips .mv-i { flex: none; color: var(--mv-success); margin-top: 2px; }

@media (min-width: 640px) {
  .mv-story-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mv-story-fields { grid-template-columns: 1fr 1fr; }
  .mv-story-form { padding: 28px 30px; }
}
@media (min-width: 992px) {
  .mv-story-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
  .mv-story-post { grid-template-columns: minmax(0, 1fr) 300px; gap: 24px; }
  .mv-story-tips { position: sticky; top: 96px; }
}

/* search: "Profiles with Photo" is the same pill in every tab (markup differs per tab) */
.mv-srch div:has(> input[name="txtphoto"][type="checkbox"]) { float: none !important; display: inline-flex !important; align-items: center; gap: 8px; margin: 6px 0 0; padding: 7px 14px 7px 9px; border: 1.5px solid var(--mv-border); border-radius: var(--mv-r-pill); background: var(--mv-surface); cursor: pointer; transition: border-color var(--mv-fast) ease, background var(--mv-fast) ease; }
.mv-srch div:has(> input[name="txtphoto"][type="checkbox"]):hover { border-color: var(--mv-wine-200); }
.mv-srch div:has(> input[name="txtphoto"][type="checkbox"]:checked) { border-color: var(--mv-accent-line); background: var(--mv-wine-50); }
.mv-srch div:has(> input[name="txtphoto"][type="checkbox"]) label { float: none !important; margin: 0 !important; padding: 0 !important; font-size: 14px; color: var(--mv-text); line-height: 1.2; }
.mv-srch div:has(> input[name="txtphoto"][type="checkbox"]) .check-box { margin: 0 !important; }

/* search: Matrimony ID tab */
.mv-mid { max-width: 640px; }
.mv-mid .mv-auth-msg { margin: 10px 0 0; }
.mv-mid-intro { font-size: 14.5px; line-height: 1.6; color: var(--mv-text-2); margin: 4px 0 18px !important; padding-bottom: 14px; border-bottom: 1px solid var(--mv-border); }
.mv-mid-label { display: block; font-size: 13px; font-weight: 500; color: var(--mv-text-2); margin: 0 0 6px !important; }
.mv-mid-row { display: flex; gap: 10px; align-items: stretch; flex-wrap: wrap; }
.mv-mid-row .mv-ifield { flex: 1 1 240px; }
.mv-srch .mv-mid-row .mv-ifield .form-control { padding-left: 44px !important; height: 46px !important; font-size: 15px !important; text-transform: uppercase; letter-spacing: .04em; }
.mv-srch .mv-mid-row .mv-ifield .form-control::placeholder { text-transform: none; letter-spacing: 0; }
.mv-srch .mv-mid-row .mv-srch-submit { min-height: 46px; min-width: 160px; margin: 0; }
.mv-mid-hints { list-style: none; margin: 14px 0 4px; padding: 0; display: flex; flex-wrap: wrap; gap: 8px 18px; }
.mv-mid-hints li { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; color: var(--mv-text-3); }
.mv-mid-hints .mv-i { color: var(--mv-success); }
.mv-srch .tab-pane .form-control::placeholder { -webkit-text-fill-color: var(--mv-text-3) !important; color: var(--mv-text-3) !important; opacity: 1; }

/* success stories: show the whole photo at its real quality (no crop, no upscaling blur);
   the frame behind is a soft blurred copy of the same photo. Cards are centred. */
.mv-story-grid { grid-template-columns: repeat(auto-fit, minmax(260px, 340px)); justify-content: center; }
.mv-story-photo { position: relative; aspect-ratio: 5 / 4; display: flex; align-items: center; justify-content: center; isolation: isolate; }
.mv-story-photo::before { content: ""; position: absolute; inset: -20px; z-index: -1; background: var(--mv-bg) center / cover no-repeat; filter: blur(18px) saturate(1.1); opacity: .55; }
.mv-story-photo img { width: auto !important; height: auto !important; max-width: 100%; max-height: 100%; object-fit: contain; box-shadow: 0 6px 18px rgba(42,36,33,.18); transform: none !important; }
.mv-story-card:hover .mv-story-photo img { transform: none !important; }
@media (min-width: 992px) { .mv-story-grid { grid-template-columns: repeat(auto-fit, minmax(280px, 360px)); } }

/* success stories: post form now uses the login layout (side panel + form card) */
.mv-story-post { gap: 24px; padding: 4px 0 8px; max-width: none; }
.mv-story-side h2 { font-size: clamp(26px, 3vw, 36px) !important; }
.mv-story-card-form { max-width: 560px; }
.mv-story-card-form h1 { font-size: 26px; }
.mv-story-two { display: grid; grid-template-columns: 1fr; gap: 14px; }
.mv-story-form2 { gap: 14px; }
.mv-story-form2 .mv-ifield .mv-input { height: 46px; }
.mv-story-form2 .mv-file { height: 46px; }
.mv-ifield-area .mv-ifield-ic { top: 16px; transform: none; }
.mv-ifield-area .mv-textarea { padding-left: 44px !important; min-height: 110px; height: auto !important; }
.mv-story-form2 input[type="date"] { padding-right: 12px !important; }
@media (min-width: 576px) { .mv-story-two { grid-template-columns: 1fr 1fr; } }
@media (min-width: 992px) {
  .mv-story-post { grid-template-columns: minmax(0, 1fr) 560px !important; gap: 56px; align-items: center; }
  .mv-story-side { display: block; }
}
@media (max-width: 991.98px) {
  .mv-story-side { text-align: left; max-width: 560px; }
  .mv-story-side .mv-eyebrow { justify-content: flex-start; }
}

/* =====================================================================
   CONTACT US (login layout) + thank-you page
   ===================================================================== */
.mv-contact-grid { max-width: 1160px; }
.mv-contact-side a { color: var(--mv-wine-500); font-weight: 600; }
.mv-contact-cards { display: grid; gap: 10px; max-width: 460px; }
.mv-contact-card { display: flex; align-items: flex-start; gap: 12px; padding: 14px 16px; background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-lg); color: var(--mv-text) !important; font-weight: 400 !important; text-decoration: none !important; box-shadow: var(--mv-shadow-sm); transition: border-color var(--mv-fast) ease, transform var(--mv-fast) ease; }
a.mv-contact-card:hover { border-color: var(--mv-wine-200); transform: translateY(-1px); }
.mv-contact-card > span:last-child, .mv-contact-card .mv-cms { display: flex; flex-direction: column; font-size: 14px; color: var(--mv-text-2); line-height: 1.5; min-width: 0; }
.mv-contact-card b { font-size: 15px; font-weight: 600; color: var(--mv-text); margin-bottom: 2px; }
.mv-contact-ic { width: 40px; height: 40px; flex: none; border-radius: 12px; background: var(--mv-wine-50); color: var(--mv-wine-500); display: flex; align-items: center; justify-content: center; }
.mv-contact-ic.is-wa { background: var(--mv-success-bg); color: var(--mv-success); }
/* CMS address arrives with old <font>/<h3>/inline styles: normalise them */
.mv-cms, .mv-cms * { font-family: var(--mv-font-body) !important; font-size: 14px !important; line-height: 1.55 !important; color: var(--mv-text-2) !important; font-weight: 400 !important; margin: 0 !important; padding: 0 !important; background: none !important; text-transform: none !important; }
.mv-cms h1, .mv-cms h2, .mv-cms h3, .mv-cms h4, .mv-cms h3 *, .mv-cms h4 * { font-weight: 600 !important; color: var(--mv-text) !important; }
.mv-cms p, .mv-cms div { display: block; }
.mv-cms b { font-size: 15px !important; font-weight: 600 !important; color: var(--mv-text) !important; margin-bottom: 2px !important; }
.mv-contact-card-form { max-width: 560px; }
@media (min-width: 992px) { .mv-contact-grid { grid-template-columns: minmax(0, 1fr) 560px !important; gap: 56px; } }
@media (max-width: 991.98px) {
  .mv-contact-side { text-align: left; max-width: 560px; }
  .mv-contact-side .mv-eyebrow { justify-content: flex-start; }
  .mv-contact-side > p { display: block; font-size: 15px; margin-top: 8px !important; }
  .mv-contact-cards { margin-top: 14px; max-width: none; }
}

.mv-thanks-card { text-align: center; max-width: 520px; }
.mv-thanks-ic { width: 64px; height: 64px; margin: 4px auto 16px; border-radius: 50%; background: var(--mv-success-bg); color: var(--mv-success); display: flex; align-items: center; justify-content: center; box-shadow: 0 0 0 8px rgba(47,122,79,.08); }
.mv-thanks-ic .mv-i { width: 30px; height: 30px; }
.mv-thanks-card h1 { font-size: 26px; }
.mv-thanks-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 8px; }
.mv-thanks-actions .mv-btn { min-height: 46px; gap: 8px; }
.mv-thanks .mv-container { display: flex; justify-content: center; }

/* contact: action tiles + office card */
.mv-reach { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; max-width: 520px; margin-top: 4px; }
.mv-reach-tile { position: relative; display: flex; flex-direction: column; gap: 2px; padding: 14px 12px 14px; background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-lg); text-decoration: none !important; box-shadow: var(--mv-shadow-sm); overflow: hidden; transition: transform var(--mv-base) var(--mv-ease), box-shadow var(--mv-base) ease, border-color var(--mv-base) ease; min-width: 0; }
.mv-reach-tile::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: var(--mv-tile, var(--mv-wine-500)); transform: scaleX(0); transform-origin: left; transition: transform var(--mv-base) var(--mv-ease); }
.mv-reach-tile:hover { transform: translateY(-3px); box-shadow: var(--mv-shadow-lg); border-color: transparent; }
.mv-reach-tile:hover::after { transform: scaleX(1); }
.mv-reach-ic { width: 42px; height: 42px; border-radius: 13px; display: flex; align-items: center; justify-content: center; margin-bottom: 8px; color: var(--mv-on-primary); background: var(--mv-tile, var(--mv-wine-500)); box-shadow: 0 6px 14px rgba(42,36,33,.14); }
.mv-reach-tile b { font-size: 14.5px; font-weight: 600; color: var(--mv-text); }
.mv-reach-tile small { font-size: 12.5px; color: var(--mv-text-3); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mv-reach-go { position: absolute; top: 14px; right: 12px; color: var(--mv-text-3); transition: transform var(--mv-fast) ease, color var(--mv-fast) ease; }
.mv-reach-tile:hover .mv-reach-go { transform: translateX(3px); color: var(--mv-tile, var(--mv-wine-500)); }
.mv-reach-tile.is-mail { --mv-tile: var(--mv-wine-500); }
.mv-reach-tile.is-wa { --mv-tile: var(--mv-success); }
.mv-reach-tile.is-call { --mv-tile: var(--mv-gold-500); }

.mv-office { max-width: 520px; margin-top: 12px; background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-lg); overflow: hidden; box-shadow: var(--mv-shadow-sm); }
.mv-office-band { position: relative; display: flex; align-items: center; gap: 12px; padding: 14px 16px; background: radial-gradient(240px 120px at 100% 0%, var(--mv-premium-bg), transparent 70%), var(--mv-grad-soft); border-bottom: 1px solid var(--mv-border); }
.mv-office-band::after { content: ""; position: absolute; right: 16px; top: 50%; width: 64px; height: 64px; transform: translateY(-50%); border-radius: 50%; border: 2px dashed var(--mv-wine-200); opacity: .7; }
.mv-office-pin { width: 42px; height: 42px; flex: none; border-radius: 50%; background: var(--mv-surface); color: var(--mv-wine-500); display: flex; align-items: center; justify-content: center; box-shadow: 0 0 0 6px rgba(255,255,255,.6), var(--mv-shadow-md); }
.mv-office-band b { display: block; font-size: 15.5px; font-weight: 600; color: var(--mv-text); }
.mv-office-band small { font-size: 12.5px; color: var(--mv-text-2); }
.mv-office-body { padding: 14px 18px 16px; }
@media (max-width: 479.98px) {
  .mv-reach { grid-template-columns: 1fr; }
  .mv-reach-tile { flex-direction: row; align-items: center; gap: 12px; padding: 12px 40px 12px 12px; flex-wrap: wrap; }
  .mv-reach-tile .mv-reach-ic { margin: 0; }
  .mv-reach-tile b { flex: 1 1 auto; }
  .mv-reach-tile small { flex-basis: 100%; padding-left: 54px; margin-top: -10px; }
  .mv-reach-go { top: 50%; transform: translateY(-50%); }
}
@media (max-width: 991.98px) { .mv-reach, .mv-office { max-width: none; } .mv-reach { margin-top: 14px; } }
.mv-office .mv-cms.mv-office-body { padding: 14px 18px 16px !important; }
.mv-reach-tile small { white-space: normal; overflow-wrap: anywhere; }
.mv-reach-tile small { overflow-wrap: normal; }

/* contact: structured office card */
.mv-office-band small { display: block; font-weight: 500; color: var(--mv-text-2); }
.mv-office-addr { font-size: 15px; line-height: 1.6; color: var(--mv-text); margin: 0 0 12px !important; }
.mv-office-rows { list-style: none; margin: 0 0 14px; padding: 12px 0 0; border-top: 1px dashed var(--mv-border-strong); display: grid; gap: 8px; }
.mv-office-rows li { display: flex; align-items: center; gap: 10px; font-size: 14.5px; min-width: 0; }
.mv-office-rows li > span { width: 30px; height: 30px; flex: none; border-radius: 9px; background: var(--mv-wine-50); color: var(--mv-wine-500); display: flex; align-items: center; justify-content: center; }
.mv-office-rows li > span.is-wa { background: var(--mv-success-bg); color: var(--mv-success); }
.mv-office-rows a { color: var(--mv-text) !important; text-decoration: none !important; font-weight: 500; overflow-wrap: anywhere; }
.mv-office-rows a:hover { color: var(--mv-wine-500) !important; }
.mv-office-dir { min-height: 42px; gap: 8px; font-size: 14.5px; }
.mv-office-dir .mv-i { color: var(--mv-wine-500); }
.mv-office .mv-office-body:not(.mv-cms) { padding: 16px 18px 18px; }

/* success stories: no tab switcher; "Share your story" opens the form, "All stories" goes back */
.mv-story #bologna-list { display: none !important; }
.mv-story-body { scroll-margin-top: 90px; }
.mv-story-back { display: inline-flex; align-items: center; gap: 6px; margin: 0 0 14px; font-size: 14px; font-weight: 600; color: var(--mv-wine-500) !important; text-decoration: none !important; }
.mv-story-back:hover { text-decoration: underline !important; text-underline-offset: 4px; }
.mv-story-hero [data-mv-tab][hidden] { display: none !important; }

/* contact office card: no decorative circle; "Get directions" sits beside the contact rows */
.mv-office-band::after { content: none !important; }
.mv-office .mv-office-body:not(.mv-cms) { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 16px; align-items: end; }
.mv-office-addr { grid-column: 1 / -1; }
.mv-office-rows { grid-column: 1 / -1; margin-bottom: 0 !important; }
.mv-office-dir { grid-column: 2; grid-row: 2; align-self: center; margin: 0; }
.mv-office-rows { grid-row: 2; grid-column: 1; }
@media (max-width: 479.98px) {
  .mv-office .mv-office-body:not(.mv-cms) { grid-template-columns: 1fr; }
  .mv-office-rows, .mv-office-dir { grid-column: 1; }
  .mv-office-dir { grid-row: 3; margin-top: 14px; justify-self: start; }
}
.mv-office-rows { border-top: 0 !important; padding-top: 0 !important; }
.mv-office-addr { padding-bottom: 12px; border-bottom: 1px dashed var(--mv-border-strong); margin-bottom: 12px !important; }

/* story form: left panel starts at the top, level with the form card */
@media (min-width: 992px) { .mv-story-post { align-items: start !important; } .mv-story-side { padding-top: 28px; } }

/* =====================================================================
   INFO PAGES (About, FAQ, Privacy, Terms, Refund, Delivery, Disclaimer)
   ===================================================================== */
.mv-legal { background: var(--mv-bg); }
.mv-legal-hero { background: linear-gradient(120deg, var(--mv-sand-100) 0%, var(--mv-wine-50) 100%); border-bottom: 1px solid var(--mv-border); }
.mv-legal-hero-in { display: flex; align-items: center; gap: 18px; padding-top: 28px !important; padding-bottom: 28px !important; }
.mv-legal-hero-ic { width: 56px; height: 56px; flex: none; border-radius: 16px; background: var(--mv-surface); color: var(--mv-wine-500); display: flex; align-items: center; justify-content: center; box-shadow: var(--mv-shadow-sm); }
.mv-legal-hero-ic .mv-i { width: 26px; height: 26px; }
.mv-legal-crumb { display: flex; align-items: center; gap: 4px; font-size: 13px; color: var(--mv-text-3); margin-bottom: 4px; }
.mv-legal-crumb a { color: var(--mv-text-2) !important; text-decoration: none !important; }
.mv-legal-crumb a:hover { color: var(--mv-wine-500) !important; }
.mv-legal-crumb .mv-i { width: 13px; height: 13px; }
.mv-legal-hero h1 { font-size: clamp(24px, 3vw, 32px); font-weight: 500; margin: 0 0 4px !important; color: var(--mv-text); }
.mv-legal-hero p { font-size: 15px; color: var(--mv-text-2); margin: 0 !important; }

.mv-legal-grid { display: grid; grid-template-columns: 1fr; gap: 20px; padding-top: 24px !important; padding-bottom: 56px !important; max-width: 1180px; }
.mv-legal-grid > * { min-width: 0; }

.mv-legal-nav { display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; padding-bottom: 2px; }
.mv-legal-nav::-webkit-scrollbar { display: none; }
.mv-legal-nav a { display: inline-flex; align-items: center; gap: 8px; flex: none; padding: 8px 14px; border-radius: var(--mv-r-pill); border: 1px solid var(--mv-border); background: var(--mv-surface); color: var(--mv-text) !important; font-size: 14px; font-weight: 500; text-decoration: none !important; transition: background var(--mv-fast) ease, border-color var(--mv-fast) ease, color var(--mv-fast) ease; }
.mv-legal-nav a .mv-i { color: var(--mv-text-3); }
.mv-legal-nav a:hover { border-color: var(--mv-wine-200); color: var(--mv-wine-500) !important; }
.mv-legal-nav a.is-active { background: var(--mv-wine-50); border-color: var(--mv-wine-200); color: var(--mv-wine-500) !important; font-weight: 600; }
.mv-legal-nav a.is-active .mv-i { color: var(--mv-wine-500); }

.mv-legal-toc, .mv-legal-help { display: none; }
.mv-legal-toc[hidden] { display: none !important; }

.mv-legal-card { background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-xl); box-shadow: var(--mv-shadow-sm); padding: 22px 20px; }

/* CMS content: even out old inline Word / editor styles */
.mv-prose, .mv-prose * { font-family: var(--mv-font-body) !important; background: none !important; color: inherit; }
.mv-prose { font-size: 15.5px; line-height: 1.7; color: var(--mv-text-2); overflow-wrap: anywhere; }
.mv-prose [style] { font-size: inherit !important; line-height: inherit !important; color: inherit !important; margin-left: 0 !important; text-indent: 0 !important; }
.mv-prose p, .mv-prose div { margin: 0 0 14px !important; }
.mv-prose p:empty { display: none; }
.mv-prose strong, .mv-prose b { color: var(--mv-text); font-weight: 600 !important; }
.mv-prose h1, .mv-prose h2, .mv-prose h3, .mv-prose h4, .mv-prose h5 { font-family: var(--mv-font-head, var(--mv-font-body)) !important; color: var(--mv-text) !important; font-weight: 600 !important; line-height: 1.35 !important; margin: 26px 0 10px !important; scroll-margin-top: 96px; }
.mv-prose h2 { font-size: 22px !important; } .mv-prose h3 { font-size: 19px !important; } .mv-prose h4 { font-size: 17.5px !important; } .mv-prose h5 { font-size: 16px !important; }
.mv-prose > :first-child { margin-top: 0 !important; }
.mv-prose ul, .mv-prose ol { margin: 0 0 16px !important; padding-left: 0 !important; list-style: none; }
.mv-prose li { position: relative; padding-left: 22px; margin: 0 0 8px; }
.mv-prose li::before { content: ""; position: absolute; left: 4px; top: .7em; width: 7px; height: 7px; border-radius: 50%; background: var(--mv-wine-300, var(--mv-wine-500)); }
.mv-prose li > i.fa, .mv-prose li > i[class*="fa-"] { display: none; }
.mv-prose a { color: var(--mv-wine-500) !important; font-weight: 500; text-decoration: underline; text-underline-offset: 2px; }
.mv-prose .disclaim_red { border-left: 3px solid var(--mv-wine-500); background: var(--mv-wine-50) !important; border-radius: 0 var(--mv-r-md) var(--mv-r-md) 0; padding: 12px 16px; margin-bottom: 18px !important; color: var(--mv-text) !important; }
.mv-prose .disclaim_red p { margin: 0 !important; }

/* FAQ accordion */
.mv-faq-item { border: 1px solid var(--mv-border); border-radius: var(--mv-r-lg); margin: 0 0 10px; background: var(--mv-surface); transition: border-color var(--mv-fast) ease, box-shadow var(--mv-fast) ease; }
.mv-faq-item[open] { border-color: var(--mv-wine-200); box-shadow: var(--mv-shadow-sm); }
.mv-faq-item summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 16px; cursor: pointer; list-style: none; font-size: 16px; font-weight: 600; color: var(--mv-text); line-height: 1.4; }
.mv-faq-item summary::-webkit-details-marker { display: none; }
.mv-faq-item summary .mv-i { flex: none; color: var(--mv-wine-500); transition: transform var(--mv-fast) ease; }
.mv-faq-item[open] summary .mv-i { transform: rotate(180deg); }
.mv-faq-item summary:hover { color: var(--mv-wine-500); }
.mv-faq-a { padding: 0 16px 6px; font-size: 15px; }

@media (min-width: 992px) {
  .mv-legal-grid { grid-template-columns: 260px minmax(0, 1fr); gap: 28px; align-items: start; }
  .mv-legal-side { position: sticky; top: 96px; display: grid; gap: 14px; }
  .mv-legal-nav { flex-direction: column; gap: 2px; overflow: visible; background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-lg); padding: 8px; }
  .mv-legal-nav a { border: 0; border-radius: var(--mv-r-md); padding: 10px 12px; background: none; }
  .mv-legal-nav a:hover { background: var(--mv-sand-100); }
  .mv-legal-nav a.is-active { background: var(--mv-wine-50); }
  .mv-legal-toc { display: block; background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-lg); padding: 14px 16px; max-height: 40vh; overflow: auto; }
  .mv-legal-toc b { display: block; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: var(--mv-text-3); margin-bottom: 8px; }
  .mv-legal-toc ol { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
  .mv-legal-toc a { font-size: 13.5px; color: var(--mv-text-2) !important; text-decoration: none !important; line-height: 1.4; display: block; }
  .mv-legal-toc a:hover { color: var(--mv-wine-500) !important; }
  .mv-legal-help { display: block; background: var(--mv-wine-50); border: 1px solid var(--mv-wine-100, var(--mv-border)); border-radius: var(--mv-r-lg); padding: 16px; }
  .mv-legal-help b { display: block; font-size: 15px; color: var(--mv-text); margin-bottom: 4px; }
  .mv-legal-help p { font-size: 13.5px; color: var(--mv-text-2); margin: 0 0 12px !important; }
  .mv-legal-help .mv-btn { width: 100%; min-height: 42px; gap: 8px; }
  .mv-legal-card { padding: 32px 36px; }
}
@media (max-width: 575.98px) {
  .mv-legal-hero-in { gap: 14px; padding-top: 20px !important; padding-bottom: 20px !important; }
  .mv-legal-hero-ic { width: 46px; height: 46px; border-radius: 13px; }
  .mv-legal-hero p { font-size: 14px; }
  .mv-legal-card { padding: 18px 16px; border-radius: var(--mv-r-lg); }
  .mv-prose { font-size: 15px; }
}

/* Result cards: illustrated placeholder instead of the blurred stock photo */
.mv-res-ph { position: absolute; inset: 0; display: flex; align-items: flex-end; justify-content: center; background: radial-gradient(120% 90% at 50% 0%, var(--mv-sand-100) 0%, var(--mv-sand-200) 100%); }
.mv-res-ph.is-bride { background: radial-gradient(120% 90% at 50% 0%, var(--mv-wine-50) 0%, var(--mv-wine-100, var(--mv-sand-200)) 100%); }
.mv-res-ph svg { width: 62%; height: auto; max-height: 92%; color: var(--mv-sand-300); }
.mv-res-ph.is-bride svg { color: var(--mv-wine-200); }
.mv-res-ph::before { content: ""; position: absolute; inset: 0; background-image: radial-gradient(var(--mv-surface) 1px, transparent 1.4px); background-size: 14px 14px; opacity: .55; }
.mv-res-photo::after { background: linear-gradient(180deg, rgba(0,0,0,0) 62%, rgba(40,20,20,.38) 100%) !important; }
/* info pages: keep the grid inside the phone width, and calm Word bold spans */
@media (max-width: 991.98px) { .mv-legal-grid { grid-template-columns: minmax(0, 1fr); } }
.mv-legal-hero-in > div { min-width: 0; }
.mv-prose span[style*="bold"] { font-weight: inherit !important; }
.mv-prose img, .mv-prose table { max-width: 100% !important; height: auto; }
/* Result cards v3: illustrated placeholder photo, 4 per row, shorter cards */
.mv-res-body { max-width: 1260px; }
.mv-res-list { grid-template-columns: minmax(0, 1fr); gap: 16px; }
@media (min-width: 576px)  { .mv-res-list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 992px)  { .mv-res-list { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1200px) { .mv-res-list { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.mv-res-photo { aspect-ratio: 4 / 3 !important; }
.mv-res-ph { position: absolute; inset: 0; display: block; background: var(--mv-sand-100); }
.mv-res-ph::before { display: none; }
.mv-res-ph img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 18%; filter: none !important; transform: none !important; transition: transform var(--mv-slow, .4s) ease; }
.mv-res-card:hover .mv-res-ph img { transform: scale(1.04) !important; }
.mv-res-photo::after { background: linear-gradient(180deg, rgba(0,0,0,0) 60%, rgba(30,14,14,.5) 100%) !important; }
.mv-res-lock { left: auto; right: 10px; top: 10px; transform: none; font-size: 12px; padding: 5px 10px; gap: 5px; }
.mv-res-photo:hover .mv-res-lock { transform: none; }
.mv-res-badge { font-size: 12.5px; bottom: 8px; left: 10px; }
.mv-res-info { padding: 12px 14px 14px; }
.mv-res-top { margin-bottom: 6px; }
.mv-res-top h2 { font-size: 16.5px; }
.mv-res-meta { font-size: 11.5px; padding: 2px 8px; }
.mv-res-line { font-size: 13.5px; margin-bottom: 2px !important; }
.mv-res-facts { gap: 4px; margin-top: 8px; padding-top: 8px; }
.mv-res-facts > div { grid-template-columns: 98px minmax(0, 1fr); gap: 6px; font-size: 13px; }
.mv-res-about { font-size: 13px; margin-top: 8px !important; -webkit-line-clamp: 1; }
.mv-res-actions { gap: 5px; padding-top: 12px; }
.mv-res-actions .mv-btn { min-height: 36px; padding: 0 10px; font-size: 13.5px; }
.mv-res-act { width: 36px; height: 36px; }
@media (max-width: 575.98px) { .mv-res-photo { aspect-ratio: 16 / 11 !important; } }
/* placeholder portraits are always blurred (guests cannot see photos) */
.mv-res-ph img { filter: blur(9px) saturate(1.05) !important; transform: scale(1.12) !important; }
.mv-res-card:hover .mv-res-ph img { transform: scale(1.16) !important; }
/* contact tiles v2: soft tinted icon tiles, fill on hover */
.mv-reach-tile.is-mail { --mv-tile-bg: var(--mv-wine-50); }
.mv-reach-tile.is-wa   { --mv-tile-bg: var(--mv-success-bg); }
.mv-reach-tile.is-call { --mv-tile-bg: var(--mv-gold-50, var(--mv-sand-100)); --mv-tile: var(--mv-gold-600, var(--mv-gold-500)); }
.mv-reach-ic { width: 46px; height: 46px; border-radius: 14px; color: var(--mv-tile); background: var(--mv-tile-bg); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--mv-tile) 18%, transparent); transition: background var(--mv-base) ease, color var(--mv-base) ease, transform var(--mv-base) var(--mv-ease); }
.mv-reach-ic .mv-i { width: 22px; height: 22px; stroke-width: 1.8; }
.mv-reach-tile:hover .mv-reach-ic { background: var(--mv-tile); color: var(--mv-on-primary); transform: rotate(-6deg) scale(1.04); }
.mv-reach-tile small { color: var(--mv-text-2); }
/* front-facing placeholder portraits: blurred, mirrored for every second set */
.mv-res-ph img { object-position: 50% 22%; filter: blur(8px) saturate(1.05) !important; }
.mv-res-ph.is-flip img { transform: scale(1.12) scaleX(-1) !important; }
.mv-res-card:hover .mv-res-ph.is-flip img { transform: scale(1.16) scaleX(-1) !important; }
.mv-res-pageinfo { font-size: 13px; color: var(--mv-text-3); }
.mv-res-pageinfo[hidden] { display: none !important; }
/* search: gender group. "Looking for" is now the field heading; hide the inline duplicate
   and lay the Groom / Bride pills out like the Marital Status pills */
.mv-srch label.radio_button.float-left:not([for]) { display: none !important; }
.mv-srch div:has(> .reado-btns-design) { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; padding-top: 6px !important; }
.mv-srch div:has(> .reado-btns-design) > .reado-btns-design { float: none !important; margin: 0 !important; }
/* guests: the photo filter is hidden, so drop its empty column and give the button the full row */
.mv-srch.mv-guest .form-group:has(input[name="txtphoto"]):not(:has(select, input[type="text"], input[type="radio"], input[type="submit"], button)) { display: none !important; }
.mv-srch.mv-guest .form-group:has(> .mv-srch-submit), .mv-srch.mv-guest .form-group:has(.mv-srch-submit):not(:has(select, input[type="text"], input[type="radio"])) { flex: 0 0 100% !important; max-width: 100% !important; text-align: center !important; }
/* search: Marital Status pills in one line, Looking for in a narrower column, so no empty gap */
.mv-srch .row:has(> [class*="col"] > .reado-btns-design > input[name="ms"]) { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 !important; padding-top: 6px; }
.mv-srch .row:has(> [class*="col"] > .reado-btns-design > input[name="ms"]) > [class*="col"] { display: contents; }
@media (min-width: 768px) {
  .mv-srch .form-group.col-md-6:has(input[name="txtGender"]):not(:has(select)) { flex: 0 0 34%; max-width: 34%; }
  .mv-srch .form-group.col-md-6:has(input[name="ms"]):not(:has(select)) { flex: 0 0 66%; max-width: 66%; }
  .mv-srch .form-group:has(input[name="ms"]) .reado-btns-design { padding: 5px 11px 5px 7px; }
  .mv-srch .form-group:has(input[name="ms"]) .reado-btns-design label { font-size: 13.5px; }
}
/* real member photo, already blurred on the server: only a light extra softening here */
.mv-res-ph.is-real img { filter: blur(3px) saturate(1.1) !important; transform: scale(1.06) !important; -webkit-user-drag: none; user-select: none; pointer-events: none; }
.mv-res-card:hover .mv-res-ph.is-real img { transform: scale(1.1) !important; }
.mv-res-ph.is-real { background: var(--mv-text); }
.mv-res-ph.is-real img { filter: none !important; transform: none !important; object-fit: cover; object-position: 50% 15%; }
.mv-res-card:hover .mv-res-ph.is-real img { transform: scale(1.03) !important; }
/* no photo, or photo protected: strongly blurred placeholder with a lock badge */
.mv-res-nophoto { position: absolute; inset: 0; display: block; }
.mv-res-nophoto .mv-res-ph img { filter: blur(22px) saturate(.9) brightness(1.02) !important; transform: scale(1.3) !important; }
.mv-res-nophoto .mv-res-ph.is-flip img { transform: scale(1.3) scaleX(-1) !important; }
.mv-res-card:hover .mv-res-nophoto .mv-res-ph img { transform: scale(1.3) !important; }
.mv-res-nophoto-lock { position: absolute; left: 50%; top: 46%; z-index: 1; transform: translate(-50%, -50%); width: 58px; height: 58px; border-radius: 50%; display: flex; align-items: center; justify-content: center; color: var(--mv-wine-500); background: rgba(255,255,255,.72); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); box-shadow: 0 0 0 6px rgba(255,255,255,.28), var(--mv-shadow-md); }
.mv-res-nophoto-lock .mv-i { width: 24px; height: 24px; }
.mv-res-ph.is-real img { filter: blur(6px) saturate(1.05) !important; transform: scale(1.1) !important; }
.mv-res-card:hover .mv-res-ph.is-real img { transform: scale(1.13) !important; }

/* =====================================================================
   REGISTRATION STEPS (Save-registration-details): login layout, 5 steps
   ===================================================================== */
.mv-rf-grid { max-width: 1180px; }
.mv-rf-card { max-width: 640px; }
@media (min-width: 992px) { .mv-rf-grid { grid-template-columns: minmax(0, 1fr) 640px !important; gap: 48px; align-items: start; } .mv-rf-side { padding-top: 24px; position: sticky; top: 96px; } }
.mv-rf-head { margin-bottom: 18px; }
.mv-rf-count { font-size: 13px; font-weight: 600; color: var(--mv-wine-500); letter-spacing: .02em; margin: 0 0 2px !important; }
.mv-rf-head h1 { font-size: clamp(22px, 2.4vw, 26px); font-weight: 500; margin: 0 0 12px !important; }
.mv-rf-bar { height: 6px; border-radius: 6px; background: var(--mv-sand-100); overflow: hidden; }
.mv-rf-bar i { display: block; height: 100%; border-radius: 6px; background: var(--mv-grad-accent, var(--mv-primary)); transition: width var(--mv-base) var(--mv-ease); }

/* stepper */
.mv-steps { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); margin: 0 0 22px !important; padding: 0 !important; list-style: none; position: relative; }
.mv-steps li { position: relative; display: flex; flex-direction: column; align-items: center; gap: 6px; text-align: center; float: none !important; width: auto !important; font-size: 12.5px; color: var(--mv-text-3); }
.mv-steps li::before { content: ""; position: absolute; top: 15px; left: -50%; width: 100%; height: 2px; background: var(--mv-border); z-index: 0; }
.mv-steps li:first-child::before { display: none; }
.mv-steps li.active::before { background: var(--mv-wine-500); }
.mv-steps li::after { display: none !important; content: none !important; }
.mv-steps-n { position: relative; z-index: 1; width: 32px; height: 32px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: var(--mv-surface); border: 2px solid var(--mv-border); color: var(--mv-text-3); font-size: 13px; transition: background var(--mv-fast) ease, border-color var(--mv-fast) ease, color var(--mv-fast) ease; }
.mv-steps-n .mv-i { display: none; width: 15px; height: 15px; }
.mv-steps li strong { font-weight: 500; }
.mv-steps li.is-here .mv-steps-n { border-color: var(--mv-wine-500); color: var(--mv-wine-500); box-shadow: 0 0 0 4px var(--mv-wine-50); }
.mv-steps li.is-here strong { color: var(--mv-text); font-weight: 600; }
.mv-steps li.is-done { cursor: pointer; color: var(--mv-text-2); }
.mv-steps li.is-done .mv-steps-n { background: var(--mv-wine-500); border-color: var(--mv-wine-500); color: var(--mv-on-primary); }
.mv-steps li.is-done .mv-steps-n b { display: none; }
.mv-steps li.is-done .mv-steps-n .mv-i { display: block; }
.mv-steps li.is-done:hover strong { color: var(--mv-wine-500); }
@media (max-width: 479.98px) { .mv-steps li strong { font-size: 11px; } }

/* steps */
#msform .mv-rf-step { display: none; border: 0; margin: 0; padding: 0; min-width: 0; background: none; }
#msform .mv-rf-step.is-current { display: block; animation: mvRfIn .25s ease both; }
@keyframes mvRfIn { from { opacity: 0; transform: translateX(10px); } to { opacity: 1; transform: none; } }
.mv-rf .mv-field { margin-bottom: 14px; }
.mv-rf .mv-story-two { gap: 0 14px; }
.mv-rf .mv-field label, .mv-rf .mv-label { font-size: 14px; font-weight: 500; color: var(--mv-text); margin: 0; }
.mv-opt { font-size: 12px; font-weight: 400; color: var(--mv-text-3); margin-left: 4px; }
.mv-rf .mv-ifield .mv-input { height: 48px; }
.mv-ifield-sel select.mv-input { appearance: none; -webkit-appearance: none; padding-right: 40px !important; background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2216%22 height=%2216%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%239a8f88%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22m6 9 6 6 6-6%22/%3E%3C/svg%3E") !important; background-repeat: no-repeat !important; background-position: right 14px center !important; cursor: pointer; text-overflow: ellipsis; }
.mv-rf .mv-input:disabled { background-color: var(--mv-sand-100) !important; cursor: not-allowed; }
.mv-rf .mv-ifield-area .mv-input { height: auto; }

/* choice pills (marital status, children) */
.mv-choice { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 4px; }
.mv-pill { position: relative; display: inline-flex !important; align-items: center; gap: 8px; min-height: 44px; padding: 0 16px 0 12px; border: 1.5px solid var(--mv-border); border-radius: var(--mv-r-pill); background: var(--mv-surface); cursor: pointer; font-size: 14.5px !important; font-weight: 500; color: var(--mv-text); transition: border-color var(--mv-fast) ease, background var(--mv-fast) ease; user-select: none; }
.mv-pill input { position: absolute; opacity: 0; width: 1px; height: 1px; pointer-events: none; display: block !important; }
.mv-pill span::before { content: ""; display: inline-block; vertical-align: -4px; width: 18px; height: 18px; margin-right: 8px; border-radius: 50%; border: 2px solid var(--mv-border-strong); background: var(--mv-surface); box-sizing: border-box; transition: border-color var(--mv-fast) ease, box-shadow var(--mv-fast) ease; }
.mv-pill:hover { border-color: var(--mv-wine-200); }
.mv-pill:has(input:checked) { border-color: var(--mv-wine-500); background: var(--mv-wine-50); color: var(--mv-wine-500); }
.mv-pill:has(input:checked) span::before { border-color: var(--mv-wine-500); box-shadow: inset 0 0 0 4px var(--mv-surface); background: var(--mv-wine-500); }
.mv-pill:has(input:focus-visible) { outline: 2px solid var(--mv-wine-500); outline-offset: 2px; }
.mv-pill:has(input:disabled) { opacity: .55; cursor: not-allowed; }

/* errors */
.mv-ferr { display: flex; align-items: center; gap: 6px; font-size: 12.5px; color: var(--mv-error); margin-top: 2px; }
.mv-field.is-invalid .mv-input { border-color: var(--mv-error) !important; box-shadow: 0 0 0 3px var(--mv-error-bg) !important; }
.mv-field.is-invalid .mv-ifield-ic { color: var(--mv-error); }
.mv-field.is-invalid .mv-pill { border-color: var(--mv-error); }
.mv-field.is-off { opacity: .5; }

/* nav buttons */
.mv-rf-nav { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 8px; padding-top: 16px; border-top: 1px solid var(--mv-border); }
.mv-rf-nav .mv-btn { min-height: 48px; padding: 0 22px; gap: 8px; font-size: 15px; }
.mv-rf-nav .mv-btn-primary { margin-left: auto; min-width: 160px; }
.mv-flip { transform: scaleX(-1); }

/* photo + about */
.mv-rf-photo { display: flex; align-items: center; gap: 18px; padding: 16px; margin-bottom: 16px; border: 1.5px dashed var(--mv-border-strong); border-radius: var(--mv-r-lg); background: var(--mv-sand-100); }
.mv-rf-photo.has-photo { border-style: solid; border-color: var(--mv-wine-200); background: var(--mv-wine-50); }
.mv-rf-avatar { position: relative; flex: none; width: 96px; height: 96px; border-radius: 50%; cursor: pointer; margin: 0 !important; }
.mv-rf-avatar img { width: 100%; height: 100%; border-radius: 50%; object-fit: cover; background: var(--mv-surface); border: 3px solid var(--mv-surface); box-shadow: var(--mv-shadow-sm); }
.mv-rf-avatar-cam { position: absolute; right: -2px; bottom: 2px; width: 32px; height: 32px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: var(--mv-primary); color: var(--mv-on-primary); border: 3px solid var(--mv-surface); }
.mv-rf-photo-txt { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; min-width: 0; }
.mv-rf-photo-txt b { font-size: 15.5px; color: var(--mv-text); }
.mv-rf-photo-txt small { font-size: 13px; color: var(--mv-text-2); line-height: 1.45; }
.mv-rf-photo-btn { min-height: 38px; padding: 0 14px; gap: 6px; font-size: 13.5px; margin: 6px 0 4px !important; cursor: pointer; }
#msform .file-upload { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.mv-switch { display: inline-flex !important; align-items: center; gap: 10px; cursor: pointer; font-size: 13.5px !important; font-weight: 500 !important; color: var(--mv-text-2) !important; margin: 4px 0 0 !important; }
.mv-switch input { position: absolute; opacity: 0; width: 1px; height: 1px; display: block !important; }
.mv-switch-ui { position: relative; flex: none; width: 36px; height: 20px; border-radius: 20px; background: var(--mv-border-strong); transition: background var(--mv-fast) ease; }
.mv-switch-ui::after { content: ""; position: absolute; left: 2px; top: 2px; width: 16px; height: 16px; border-radius: 50%; background: var(--mv-surface); box-shadow: var(--mv-shadow-sm); transition: transform var(--mv-fast) ease; }
.mv-switch:has(input:checked) .mv-switch-ui { background: var(--mv-wine-500); }
.mv-switch:has(input:checked) .mv-switch-ui::after { transform: translateX(16px); }
.mv-switch:has(input:focus-visible) .mv-switch-ui { outline: 2px solid var(--mv-wine-500); outline-offset: 2px; }
.mv-rf-hint { display: flex; justify-content: space-between; gap: 12px; font-size: 12.5px; color: var(--mv-text-3); line-height: 1.4; }
.mv-rf-hint b { flex: none; font-weight: 600; color: var(--mv-text-3); }
.mv-rf-hint b.is-ok { color: var(--mv-success); }

@media (max-width: 575.98px) {
  .mv-rf-photo { flex-direction: column; text-align: center; }
  .mv-rf-photo-txt { align-items: center; }
  .mv-rf-nav .mv-btn-primary { min-width: 0; flex: 1; }
  .mv-rf-nav .mv-btn-outline { padding: 0 16px; }
}

.mv-rf.mv-auth { align-items: flex-start; padding-top: 28px; }
.mv-rf-photo-field .mv-rf-photo { margin-bottom: 0; }
.mv-rf-photo-field.is-invalid .mv-rf-photo { border-color: var(--mv-error); background: var(--mv-error-bg); }

/* registration stepper v2: icon steps on a soft panel, one filled track */
.mv-rf-head { margin-bottom: 14px; }
.mv-rf-head h1 { margin-bottom: 0 !important; }
.mv-steps { --mv-p: 0; background: linear-gradient(180deg, var(--mv-sand-100), var(--mv-wine-50)); border: 1px solid var(--mv-border); border-radius: var(--mv-r-lg); padding: 16px 6px 12px !important; margin-bottom: 22px !important; }
.mv-steps::before, .mv-steps::after { content: ""; position: absolute; top: 37px; left: 10%; height: 3px; border-radius: 3px; z-index: 0; }
.mv-steps::before { right: 10%; background: var(--mv-border-strong); opacity: .6; }
.mv-steps::after { width: calc(80% * var(--mv-p)); background: linear-gradient(90deg, var(--mv-wine-500), var(--mv-gold-500)); transition: width .35s var(--mv-ease); }
.mv-steps li::before { display: none !important; }
.mv-steps li { gap: 4px; z-index: 1; }
.mv-steps-n { width: 44px; height: 44px; border-width: 2px; background: var(--mv-surface); box-shadow: var(--mv-shadow-sm); }
.mv-steps-n .mv-i { width: 19px; height: 19px; }
.mv-steps-n .mv-steps-ic { display: block; color: var(--mv-text-3); }
.mv-steps-n .mv-steps-ok { display: none; }
.mv-steps li strong { margin-top: 4px; font-size: 13px; }
.mv-steps li small { font-size: 11px; color: var(--mv-text-3); line-height: 1; }
.mv-steps li.is-here .mv-steps-n { background: var(--mv-wine-500); border-color: var(--mv-wine-500); box-shadow: 0 0 0 5px rgba(158,43,51,.14), 0 6px 14px rgba(158,43,51,.28); transform: scale(1.06); }
.mv-steps li.is-here .mv-steps-ic { color: var(--mv-on-primary); }
.mv-steps li.is-here strong { color: var(--mv-wine-500); }
.mv-steps li.is-done .mv-steps-n { background: var(--mv-wine-50); border-color: var(--mv-wine-500); color: var(--mv-wine-500); box-shadow: none; }
.mv-steps li.is-done .mv-steps-ic { display: none; }
.mv-steps li.is-done .mv-steps-ok { display: block; color: var(--mv-wine-500); }
.mv-steps-n { transition: background var(--mv-fast) ease, border-color var(--mv-fast) ease, transform var(--mv-fast) ease, box-shadow var(--mv-fast) ease; }
@media (max-width: 479.98px) {
  .mv-steps { padding: 12px 2px 10px !important; }
  .mv-steps::before, .mv-steps::after { top: 30px; }
  .mv-steps-n { width: 36px; height: 36px; }
  .mv-steps-n .mv-i { width: 16px; height: 16px; }
  .mv-steps li small { display: none; }
}

/* no full-screen stretch on this page: end shortly after the card */
.mv-rf.mv-auth { min-height: 0; padding-bottom: 48px; }

/* registration: custom dropdowns with the field icon on the left */
.mv-ifield.mv-select .mv-ifield-ic { z-index: 3; }
.mv-ifield.mv-select .mv-sel-btn { padding-left: 44px; height: 48px; }
.mv-rf .mv-sel-pop { z-index: 30; }
.mv-select.is-disabled .mv-sel-btn { background: var(--mv-sand-100); cursor: not-allowed; opacity: .7; }
.mv-select.is-disabled::before, .mv-select.is-disabled::after { opacity: .4; }
.mv-field.is-invalid .mv-sel-btn { border-color: var(--mv-error) !important; box-shadow: 0 0 0 3px var(--mv-error-bg) !important; }
/* finished steps: show only the tick */
.mv-steps li.is-done .mv-steps-n .mv-i.mv-steps-ic { display: none; }
.mv-steps li.is-done .mv-steps-n .mv-i.mv-steps-ok { display: block; }
.mv-steps li:not(.is-done) .mv-steps-n .mv-i.mv-steps-ok { display: none; }
.mv-steps li:not(.is-done) .mv-steps-n .mv-i.mv-steps-ic { display: block; }

/* registration stepper v3: richer panel, dashed path ahead, glowing current step */
.mv-steps { background: radial-gradient(120% 140% at 0% 0%, var(--mv-wine-50) 0%, var(--mv-ivory-50) 55%, var(--mv-sand-100) 100%); border: 1px solid var(--mv-wine-100); box-shadow: inset 0 1px 0 var(--mv-ivory-0), 0 6px 18px rgba(163,52,58,.06); padding: 18px 6px 14px !important; }
.mv-steps::before { height: 0; background: none; opacity: 1; top: 39px; border-top: 2px dashed var(--mv-sand-300); }
.mv-steps::after { top: 38px; height: 4px; background: linear-gradient(90deg, var(--mv-wine-500), var(--mv-wine-400) 60%, var(--mv-gold-500)); box-shadow: 0 2px 6px rgba(163,52,58,.25); }
.mv-steps-n { width: 46px; height: 46px; border: 2px solid var(--mv-sand-200); background: var(--mv-ivory-0); box-shadow: 0 2px 6px rgba(42,36,33,.06); }
.mv-steps li:not(.is-done):not(.is-here) .mv-steps-ic { color: var(--mv-text-3); opacity: .8; }
.mv-steps li.is-here .mv-steps-n { width: 50px; height: 50px; margin-top: -2px; border: 0; background: linear-gradient(145deg, var(--mv-wine-400), var(--mv-wine-500) 70%); box-shadow: 0 0 0 5px var(--mv-ivory-0), 0 0 0 7px var(--mv-wine-200), 0 10px 22px rgba(163,52,58,.35); transform: none; }
.mv-steps li.is-here .mv-steps-n::after { content: ""; position: absolute; inset: -7px; border-radius: 50%; border: 2px solid var(--mv-wine-300); animation: mvStepPulse 2.2s ease-out infinite; }
@keyframes mvStepPulse { 0% { transform: scale(1); opacity: .7; } 80%, 100% { transform: scale(1.35); opacity: 0; } }
.mv-steps li.is-here .mv-steps-ic { width: 21px !important; height: 21px !important; color: var(--mv-ivory-0) !important; }
.mv-steps li.is-done .mv-steps-n { border: 0; background: linear-gradient(145deg, var(--mv-wine-400), var(--mv-wine-500)); box-shadow: 0 4px 10px rgba(163,52,58,.25); }
.mv-steps li.is-done .mv-steps-ok { color: var(--mv-ivory-0) !important; width: 20px !important; height: 20px !important; }
.mv-steps li strong { margin-top: 6px; font-size: 13px; letter-spacing: .01em; }
.mv-steps li.is-here strong { color: var(--mv-wine-500); font-weight: 700; }
.mv-steps li.is-done strong { color: var(--mv-text); }
.mv-steps li.is-done:hover .mv-steps-n { transform: translateY(-2px); }
@media (prefers-reduced-motion: reduce) { .mv-steps li.is-here .mv-steps-n::after { animation: none; opacity: 0; } }
@media (max-width: 479.98px) {
  .mv-steps::before { top: 31px; } .mv-steps::after { top: 30px; }
  .mv-steps-n { width: 36px; height: 36px; }
  .mv-steps li.is-here .mv-steps-n { width: 40px; height: 40px; box-shadow: 0 0 0 4px var(--mv-ivory-0), 0 0 0 6px var(--mv-wine-200), 0 8px 16px rgba(163,52,58,.3); }
}

/* footer: accepted payment methods */
.mv-pay { margin-top: 18px; padding-top: 14px; border-top: 1px solid rgba(255,255,255,.12); }
.mv-pay-t { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: rgba(255,255,255,.85); margin-bottom: 10px; }
.mv-pay-t .mv-i { color: var(--mv-gold-300); }
.mv-footer .mv-pay-list { display: flex !important; flex-wrap: wrap; gap: 8px; list-style: none; margin: 0 0 8px !important; padding: 0 !important; }
.mv-footer .mv-pay-list li { margin: 0 !important; padding: 0 !important; line-height: 0; }
.mv-pay-list svg { display: block; width: 46px; height: 29px; border-radius: 5px; box-shadow: 0 2px 6px rgba(0,0,0,.18); transition: transform var(--mv-fast) ease; }
.mv-pay-list li:hover svg { transform: translateY(-2px); }
.mv-pay-note { display: block; font-size: 11.5px; line-height: 1.45; color: rgba(255,255,255,.6); max-width: 240px; }

/* footer payment badges on one row */
.mv-footer .mv-pay-list { gap: 6px; flex-wrap: nowrap; }
.mv-pay-list svg { width: 40px; height: 25px; }

/* registration stepper: more compact panel and circles */
.mv-steps { padding: 12px 4px 10px !important; margin-bottom: 18px !important; }
.mv-steps::before { top: 28px; }
.mv-steps::after { top: 27px; height: 3px; }
.mv-steps-n { width: 34px; height: 34px; }
.mv-steps-n .mv-i { width: 15px !important; height: 15px !important; }
.mv-steps li.is-here .mv-steps-n { width: 38px; height: 38px; margin-top: -2px; box-shadow: 0 0 0 3px var(--mv-ivory-0), 0 0 0 5px var(--mv-wine-200), 0 6px 14px rgba(163,52,58,.3); }
.mv-steps li.is-here .mv-steps-n::after { inset: -5px; }
.mv-steps li.is-here .mv-steps-ic { width: 17px !important; height: 17px !important; }
.mv-steps li.is-done .mv-steps-ok { width: 16px !important; height: 16px !important; }
.mv-steps li strong { margin-top: 3px; font-size: 12.5px; }
@media (max-width: 479.98px) {
  .mv-steps::before { top: 25px; } .mv-steps::after { top: 24px; }
  .mv-steps-n { width: 30px; height: 30px; }
  .mv-steps li.is-here .mv-steps-n { width: 34px; height: 34px; }
}

/* stepper: every circle sits in the same 38px slot so icons and names line up; row centred in the panel */
.mv-steps { padding: 12px 4px 12px !important; align-items: start; }
.mv-steps li { display: grid !important; grid-template-rows: 38px auto; justify-items: center; align-items: center; row-gap: 6px; }
.mv-steps-n, .mv-steps li.is-here .mv-steps-n { margin: 0 !important; align-self: center; justify-self: center; }
.mv-steps-n { display: grid !important; place-items: center; }
.mv-steps-n .mv-i { margin: 0 !important; }
.mv-steps li strong { margin-top: 0 !important; line-height: 1.2; }
.mv-steps::before { top: 31px; }
.mv-steps::after { top: 30px; }
@media (max-width: 479.98px) {
  .mv-steps li { grid-template-rows: 34px auto; }
  .mv-steps::before { top: 29px; } .mv-steps::after { top: 28px; }
}

/* registration step 5 v2: photo upload area, privacy row, guided "About you" */
.mv-rf-step[data-mv-step="4"] > * + * { margin-top: 18px; }
.mv-rf-step[data-mv-step="4"] .mv-field { margin-bottom: 0; }
.mv-rf-photo-field { gap: 8px; }

.mv-rf-photo { position: relative; display: flex; align-items: center; gap: 22px; padding: 20px 22px; margin: 0 !important; border: 2px dashed var(--mv-wine-200); border-radius: var(--mv-r-lg); background: linear-gradient(135deg, var(--mv-wine-50), var(--mv-ivory-50)); transition: border-color var(--mv-fast) ease, background var(--mv-fast) ease, box-shadow var(--mv-fast) ease; }
.mv-rf-photo.is-drag { border-color: var(--mv-wine-500); background: var(--mv-wine-100); box-shadow: 0 0 0 4px var(--mv-wine-50); }
.mv-rf-photo.has-photo { border-style: solid; border-color: var(--mv-success); background: linear-gradient(135deg, var(--mv-success-bg), var(--mv-ivory-50)); }

.mv-rf-avatar { position: relative; flex: none; width: 112px; height: 112px; border-radius: 50%; cursor: pointer; margin: 0 !important; background: var(--mv-ivory-0); box-shadow: 0 0 0 4px var(--mv-ivory-0), 0 8px 20px rgba(163,52,58,.14); display: grid; place-items: center; }
.mv-rf-avatar-ph { display: grid; place-items: center; width: 100%; height: 100%; border-radius: 50%; background: radial-gradient(circle at 50% 35%, var(--mv-wine-50), var(--mv-wine-100)); color: var(--mv-wine-300); }
.mv-rf-avatar-ph .mv-i { width: 46px; height: 46px; stroke-width: 1.5; }
.mv-rf-avatar img { display: none; position: absolute; inset: 0; width: 100%; height: 100%; border-radius: 50%; object-fit: cover; border: 0; box-shadow: none; }
.mv-rf-avatar img[src^="data:"] { display: block; }
.mv-rf-photo.has-photo .mv-rf-avatar-ph { visibility: hidden; }
.mv-rf-avatar-cam { position: absolute; right: 2px; bottom: 4px; width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; background: var(--mv-primary); color: var(--mv-on-primary); border: 3px solid var(--mv-ivory-0); box-shadow: var(--mv-shadow-sm); transition: transform var(--mv-fast) ease; }
.mv-rf-avatar:hover .mv-rf-avatar-cam { transform: scale(1.08); }
.mv-rf-photo.has-photo .mv-rf-avatar-cam { background: var(--mv-success); }

.mv-rf-photo-txt { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; min-width: 0; flex: 1; }
.mv-rf-photo-txt b { font-size: 16.5px; font-weight: 600; color: var(--mv-text); }
.mv-rf-photo.has-photo .mv-rf-photo-txt b { color: var(--mv-success); }
.mv-rf-photo-txt small { font-size: 13.5px; color: var(--mv-text-2); line-height: 1.5; }
.mv-rf-photo-actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-top: 4px; min-width: 0; max-width: 100%; }
.mv-rf-photo-btn { min-height: 40px !important; padding: 0 18px !important; margin: 0 !important; font-size: 14px !important; gap: 8px; }
.mv-rf-photo.has-photo .mv-rf-photo-btn { background: var(--mv-ivory-0) !important; color: var(--mv-text) !important; border: 1px solid var(--mv-border-strong) !important; box-shadow: none !important; }
.mv-rf-photo-name { font-size: 13px; color: var(--mv-text-2); max-width: 200px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mv-rf-tips { display: flex; flex-wrap: wrap; gap: 6px 14px; list-style: none; margin: 6px 0 0 !important; padding: 0 !important; }
.mv-rf-tips li { display: inline-flex; align-items: center; gap: 5px; font-size: 12.5px; color: var(--mv-text-2); margin: 0 !important; }
.mv-rf-tips .mv-i { width: 13px; height: 13px; color: var(--mv-success); }
.mv-rf-photo-field.is-invalid .mv-rf-photo { border-color: var(--mv-error); background: var(--mv-error-bg); }

/* privacy row */
.mv-rf-privacy { display: flex !important; align-items: center; gap: 14px; padding: 14px 16px; margin: 0; border: 1px solid var(--mv-border); border-radius: var(--mv-r-lg); background: var(--mv-ivory-0); cursor: pointer; transition: border-color var(--mv-fast) ease, background var(--mv-fast) ease; }
.mv-rf-privacy:hover { border-color: var(--mv-wine-200); }
.mv-rf-privacy:has(input:checked) { border-color: var(--mv-wine-300); background: var(--mv-wine-50); }
.mv-rf-privacy-ic { flex: none; width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center; background: var(--mv-sand-100); color: var(--mv-text-2); }
.mv-rf-privacy:has(input:checked) .mv-rf-privacy-ic { background: var(--mv-wine-100); color: var(--mv-wine-500); }
.mv-rf-privacy-txt { display: flex; flex-direction: column; gap: 2px; flex: 1; min-width: 0; }
.mv-rf-privacy-txt b { font-size: 14.5px; font-weight: 600; color: var(--mv-text); }
.mv-rf-privacy-txt small { font-size: 12.5px; color: var(--mv-text-2); line-height: 1.4; }
.mv-rf-privacy .mv-switch { margin: 0 !important; flex: none; }
.mv-rf-privacy .mv-switch-ui { width: 44px; height: 24px; }
.mv-rf-privacy .mv-switch-ui::after { width: 20px; height: 20px; }
.mv-rf-privacy:has(input:checked) .mv-switch-ui { background: var(--mv-wine-500); }
.mv-rf-privacy:has(input:checked) .mv-switch-ui::after { transform: translateX(20px); }
.mv-rf-privacy:has(input:focus-visible) { outline: 2px solid var(--mv-wine-500); outline-offset: 2px; }

/* about you */
.mv-rf-about { gap: 8px; }
.mv-rf-about-head { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
.mv-rf-ideas-t { font-size: 12.5px; color: var(--mv-text-3); }
.mv-rf-ideas { display: flex; flex-wrap: wrap; gap: 6px; }
.mv-rf-ideas button { display: inline-flex; align-items: center; gap: 4px; height: 32px; padding: 0 12px; border: 1px dashed var(--mv-wine-200); border-radius: var(--mv-r-pill); background: var(--mv-wine-50); color: var(--mv-wine-500); font-size: 13px; font-weight: 500; cursor: pointer; transition: background var(--mv-fast) ease, border-color var(--mv-fast) ease; }
.mv-rf-ideas button::before { content: "+"; font-weight: 700; }
.mv-rf-ideas button:hover { background: var(--mv-wine-100); border-color: var(--mv-wine-300); }
.mv-rf-ideas button.is-used { border-style: solid; background: var(--mv-ivory-0); color: var(--mv-text-2); }
.mv-rf-ideas button.is-used::before { content: "\2713"; }
.mv-rf .mv-rf-textarea { min-height: 150px; padding: 14px 16px !important; line-height: 1.6; resize: vertical; height: auto !important; }
.mv-rf-meter { height: 4px; border-radius: 4px; background: var(--mv-sand-100); overflow: hidden; }
.mv-rf-meter i { display: block; width: 0; height: 100%; border-radius: 4px; background: var(--mv-wine-300); transition: width var(--mv-fast) ease, background var(--mv-fast) ease; }
.mv-rf-meter i.is-ok { background: var(--mv-success); }
.mv-rf-about .mv-rf-hint { align-items: flex-start; }
.mv-rf-about .mv-rf-hint span { display: inline-flex; align-items: flex-start; gap: 6px; }
.mv-rf-about .mv-rf-hint span .mv-i { flex: none; width: 14px; height: 14px; margin-top: 1px; color: var(--mv-text-3); }

@media (max-width: 575.98px) {
  .mv-rf-photo { flex-direction: column; text-align: center; padding: 20px 16px; gap: 14px; }
  .mv-rf-photo-txt { align-items: center; }
  .mv-rf-photo-actions, .mv-rf-tips { justify-content: center; }
  .mv-rf-privacy { padding: 12px; gap: 12px; }
  .mv-rf-privacy-ic { width: 36px; height: 36px; }
}
.mv-rf-step[data-mv-step="4"] > legend + * { margin-top: 0 !important; }
/* registration: "answers restored" note */
.mv-rf-restored { display: flex; align-items: center; gap: 8px; margin: 0 0 14px; padding: 9px 12px; border-radius: var(--mv-r-md); background: var(--mv-success-bg); color: var(--mv-text); font-size: 13.5px; }
.mv-rf-restored[hidden] { display: none !important; }
.mv-rf-restored .mv-i { color: var(--mv-success); flex: none; }
.mv-rf-restored span { flex: 1; min-width: 0; }
.mv-rf-restored button { flex: none; border: 0; background: none; padding: 2px 4px; color: var(--mv-wine-500); font-weight: 600; font-size: 13px; text-decoration: underline; text-underline-offset: 2px; cursor: pointer; }

/* registration step 5: compact, so "Create my profile" is visible without scrolling */
.mv-rf-step[data-mv-step="4"] > * + * { margin-top: 12px; }
.mv-rf-photo { gap: 14px; padding: 12px 14px; border-width: 1.5px; }
.mv-rf-avatar { width: 76px; height: 76px; box-shadow: 0 0 0 3px var(--mv-ivory-0), 0 4px 12px rgba(163,52,58,.12); }
.mv-rf-avatar-ph .mv-i { width: 30px; height: 30px; }
.mv-rf-avatar-cam { width: 26px; height: 26px; right: -2px; bottom: 0; border-width: 2px; }
.mv-rf-avatar-cam .mv-i { width: 13px; height: 13px; }
.mv-rf-photo-txt { gap: 2px; }
.mv-rf-photo-txt b { font-size: 15px; }
.mv-rf-photo-txt small { font-size: 12.5px; line-height: 1.4; }
.mv-rf-photo-actions { gap: 8px 12px; margin-top: 6px; }
.mv-rf-photo-btn { min-height: 34px !important; padding: 0 14px !important; font-size: 13.5px !important; }
.mv-rf-tips { display: inline-flex !important; align-items: center; gap: 4px; margin: 0 !important; font-size: 12px !important; color: var(--mv-text-3) !important; }
.mv-rf-tips .mv-i { width: 12px; height: 12px; color: var(--mv-success); }
.mv-rf-privacy { padding: 8px 12px; gap: 10px; }
.mv-rf-privacy-ic { width: 32px; height: 32px; border-radius: 10px; }
.mv-rf-privacy-ic .mv-i { width: 16px; height: 16px; }
.mv-rf-privacy-txt b { font-size: 14px; }
.mv-rf-privacy-txt small { font-size: 12px; }
.mv-rf-about { gap: 6px; }
.mv-rf-ideas { gap: 5px; }
.mv-rf-ideas button { height: 28px; padding: 0 10px; font-size: 12.5px; }
.mv-rf .mv-rf-textarea { min-height: 88px; padding: 10px 14px !important; }
.mv-rf-about .mv-rf-hint { font-size: 12px; }
.mv-rf-step[data-mv-step="4"] .mv-rf-nav { margin-top: 14px; padding-top: 12px; }
@media (max-width: 575.98px) {
  .mv-rf-photo { flex-direction: row; text-align: left; padding: 12px; }
  .mv-rf-photo-txt { align-items: flex-start; }
  .mv-rf-photo-actions { justify-content: flex-start; }
  .mv-rf-avatar { width: 64px; height: 64px; }
  .mv-rf-tips { display: none !important; }
}

/* registration: less space above the form so every step fits on a laptop or phone screen */
.mv-rf.mv-auth { padding-top: 14px; }
.mv-rf .mv-rf-card { padding-top: 22px; padding-bottom: 20px; }
@media (min-width: 576px) { .mv-rf .mv-rf-card { padding: 24px 32px 22px; } }
.mv-rf-head { margin-bottom: 10px; }
.mv-rf .mv-auth-safe { margin-top: 12px !important; }
.mv-rf .mv-rf-textarea { min-height: 78px; }
@media (max-width: 991.98px) { .mv-rf-side { display: none !important; } }
@media (max-width: 575.98px) {
  .mv-rf.mv-auth { padding-top: 10px; }
  .mv-rf .mv-rf-card { padding: 16px 14px 16px; }
  .mv-rf-head h1 { font-size: 20px; }
  .mv-rf .mv-auth-safe { display: none; }
}
.mv-rf-step[data-mv-step="4"] > * + * { margin-top: 10px; }
.mv-rf .mv-rf-textarea { min-height: 72px; }
@media (max-width: 575.98px) {
  .mv-rf .mv-field { margin-bottom: 10px; }
  .mv-rf .mv-ifield .mv-input, .mv-rf .mv-ifield.mv-select .mv-sel-btn { height: 44px; }
  .mv-rf .mv-field label, .mv-rf .mv-label { font-size: 13.5px; }
  .mv-rf-nav { padding-top: 12px; }
  .mv-rf-nav .mv-btn { min-height: 46px; }
  .mv-steps { margin-bottom: 14px !important; }
}
/* about you: no meter line; a little space between the idea buttons and the text box */
.mv-rf-meter { display: none !important; }
.mv-rf-ideas { margin-bottom: 4px; }
.mv-rf-about .mv-rf-hint { margin-top: 2px; }
/* field error messages: clearer text with a small warning icon */
.mv-rf .mv-ferr { display: flex; align-items: flex-start; gap: 6px; margin-top: 4px; font-family: var(--mv-font-body); font-size: 13px; font-weight: 500; line-height: 1.35; letter-spacing: 0; color: var(--mv-error); }
.mv-rf .mv-ferr .mv-i { flex: none; width: 14px; height: 14px; margin-top: 1px; }
.mv-rf .mv-ferr span { min-width: 0; }

/* =====================================================================
   MEMBER VERIFICATION POP-UPS (footer: email / mobile / OTP / notices)
   Opened by the existing #dialog + #mask script; centred here.
   ===================================================================== */
.mv-vf #mask { position: fixed !important; inset: 0 !important; width: auto !important; height: auto !important; z-index: 1990 !important; background: rgba(42,36,33,.55) !important; opacity: 1 !important; -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); font-size: 0 !important; }
.mv-vf #dialog.window { position: fixed !important; top: 50% !important; left: 50% !important; transform: translate(-50%, -50%); z-index: 1991 !important; width: min(440px, calc(100vw - 32px)) !important; max-height: calc(100vh - 32px); overflow: auto; opacity: 1 !important; margin: 0 !important; padding: 0 !important; background: none !important; }
.mv-vf #san { width: 100% !important; margin: 0 !important; padding: 0 !important; }
.mv-vf .modal-content { width: 100% !important; margin: 0 !important; border: 1px solid var(--mv-border) !important; border-radius: var(--mv-r-xl) !important; background: var(--mv-surface) !important; box-shadow: 0 24px 60px rgba(42,36,33,.28) !important; overflow: hidden; text-align: center; font-family: var(--mv-font-body); animation: mvVfIn .3s var(--mv-ease) both; }
.mv-vf .modal-content::before { content: ""; display: block; height: 4px; background: var(--mv-grad-accent); }
@keyframes mvVfIn { from { opacity: 0; transform: translateY(8px) scale(.98); } to { opacity: 1; transform: none; } }
.mv-vf .modal-header { display: flex !important; flex-direction: column; align-items: center; gap: 12px; border: 0 !important; padding: 26px 24px 4px !important; background: none !important; }
.mv-vf .modal-header:empty { padding: 14px 24px 0 !important; }
.mv-vf-ic { width: 56px; height: 56px; border-radius: 50%; display: grid; place-items: center; background: var(--mv-wine-50); color: var(--mv-wine-500); box-shadow: 0 0 0 6px rgba(163,52,58,.06); }
.mv-vf-ic .mv-i { width: 26px; height: 26px; }
.mv-vf-ic.is-ok { background: var(--mv-success-bg); color: var(--mv-success); box-shadow: 0 0 0 6px rgba(47,122,79,.08); }
.mv-vf .modal-title { margin: 0 !important; font-family: var(--mv-font-head) !important; font-size: 22px !important; line-height: 1.25; color: var(--mv-text) !important; }
.mv-vf .modal-title b { font-weight: 600 !important; }
.mv-vf .modal-body { padding: 8px 24px 6px !important; text-align: center; }
.mv-vf .modal-body .row { margin: 0 !important; }
.mv-vf .modal-body [class*="col-"] { padding: 0 !important; flex: 0 0 100% !important; max-width: 100% !important; }
.mv-vf .modal-body p { margin: 0 0 14px !important; }
.mv-vf .modal-body small, .mv-vf .modal-body p { font-size: 14.5px !important; line-height: 1.55 !important; color: var(--mv-text-2) !important; -webkit-text-fill-color: currentColor; }
.mv-vf .modal-body p b { color: var(--mv-text) !important; font-weight: 600 !important; }
.mv-vf .modal-body img[src*="success.gif"] { display: none !important; }
.mv-vf .modal-body br + br { display: none; }
.mv-vf .form-control { width: 100% !important; height: 48px !important; margin: 0 0 4px !important; padding: 0 14px !important; border: 1.5px solid var(--mv-border-strong) !important; border-radius: var(--mv-r-md) !important; background: var(--mv-surface) !important; color: var(--mv-text) !important; -webkit-text-fill-color: var(--mv-text) !important; font-family: var(--mv-font-body) !important; font-size: 16px !important; text-align: center; box-shadow: none !important; transition: border-color var(--mv-fast) ease, box-shadow var(--mv-fast) ease; }
.mv-vf .form-control:focus { border-color: var(--mv-wine-500) !important; box-shadow: 0 0 0 3px var(--mv-wine-100) !important; outline: none; }
.mv-vf .form-control::placeholder { color: var(--mv-text-3) !important; -webkit-text-fill-color: var(--mv-text-3) !important; }
.mv-vf input[name="email_otp"], .mv-vf input[name="mobile_otp"] { letter-spacing: .2em; font-weight: 600 !important; font-size: 18px !important; }
.mv-vf input[name="email_otp"]::placeholder, .mv-vf input[name="mobile_otp"]::placeholder { letter-spacing: 0; font-weight: 400; font-size: 15px; }
.mv-vf select.form-control { text-align: left; appearance: auto; }
.mv-vf .mx-auto.col-8 { flex: 0 0 100% !important; max-width: 100% !important; margin-bottom: 8px !important; }
.mv-vf .form-group { margin: 0 !important; padding: 6px 24px 0; }
.mv-vf .modal-body .form-group { padding: 6px 0 0; }
.mv-vf .form-group .row { margin: 0 !important; }
.mv-vf .form-group [class*="col-"] { display: flex !important; flex-wrap: wrap; justify-content: center; gap: 10px; padding: 0 !important; margin: 0 !important; flex: 0 0 100% !important; max-width: 100% !important; }
.mv-vf .btn.gt-btn-orange { display: inline-flex !important; align-items: center; justify-content: center; flex: 1 1 140px; min-height: 46px; margin: 0 !important; padding: 0 20px !important; border-radius: var(--mv-r-md) !important; font-family: var(--mv-font-body) !important; font-size: 15px !important; font-weight: 600 !important; text-transform: none !important; letter-spacing: 0 !important; text-decoration: none !important; box-shadow: none !important; transition: background var(--mv-fast) ease, border-color var(--mv-fast) ease, color var(--mv-fast) ease; }
.mv-vf button.btn.gt-btn-orange { background: var(--mv-primary) !important; border: 1px solid var(--mv-primary) !important; color: var(--mv-on-primary) !important; }
.mv-vf button.btn.gt-btn-orange:hover { background: var(--mv-wine-400) !important; border-color: var(--mv-wine-400) !important; }
.mv-vf a.btn.gt-btn-orange { background: var(--mv-surface) !important; border: 1px solid var(--mv-border-strong) !important; color: var(--mv-text) !important; }
.mv-vf a.btn.gt-btn-orange:hover { border-color: var(--mv-wine-200) !important; color: var(--mv-wine-500) !important; }
.mv-vf a[href*="show_account"].btn.gt-btn-orange { background: var(--mv-primary) !important; border-color: var(--mv-primary) !important; color: var(--mv-on-primary) !important; }
.mv-vf a > button.btn.gt-btn-orange, .mv-vf a.d-block { width: 100%; }
.mv-vf a:has(> button.btn) { display: flex; flex: 1 1 140px; text-decoration: none !important; }
.mv-vf a:has(> button.btn) > button { flex: 1; }
/* the "Resend" button sits in its own small form: show it as a link */
.mv-vf form + form { padding: 4px 24px 22px; }
.mv-vf form + form .form-group { padding: 0; }
.mv-vf form + form button.btn.gt-btn-orange { flex: none; min-height: 0; padding: 4px 8px !important; background: none !important; border: 0 !important; color: var(--mv-wine-500) !important; font-size: 14px !important; text-decoration: underline !important; text-underline-offset: 3px; }
.mv-vf form + form button.btn.gt-btn-orange::before { content: "Did not get the code? "; color: var(--mv-text-2); text-decoration: none; font-weight: 400; display: inline-block; margin-right: 4px; }
.mv-vf .modal-content > .form-group:last-child, .mv-vf .modal-body > form:last-child .form-group:last-child { padding-bottom: 22px; }
.mv-vf .modal-content > .form-group:last-child { padding-bottom: 24px; }
.mv-vf .modal-body > form:only-child .form-group:last-child, .mv-vf .modal-body > .form-group:last-child { padding-bottom: 22px; }
.mv-vf .alert, .mv-vf .text-danger { font-size: 13.5px; border-radius: var(--mv-r-md); }
@media (max-width: 480px) {
  .mv-vf .modal-header { padding: 22px 18px 2px !important; }
  .mv-vf .modal-body { padding: 6px 18px 4px !important; }
  .mv-vf .form-group { padding-left: 18px; padding-right: 18px; }
  .mv-vf .modal-title { font-size: 20px !important; }
}
/* the page's mismatched closing tags move #mask out of #boxes (to <body>): style it wherever it lands, below the pop-up */
html body #mask { position: fixed !important; inset: 0 !important; width: auto !important; height: auto !important; z-index: 1990 !important; background: rgba(42,36,33,.55) !important; opacity: 1 !important; -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); font-size: 0 !important; }
html body #dialog.window { z-index: 1991 !important; }
/* beat the page's old "#boxes #dialog { left:0 !important; width:100% !important }" (phones) */
html body #boxes.mv-vf #dialog.window { position: fixed !important; top: 50% !important; left: 50% !important; right: auto !important; bottom: auto !important; width: min(440px, calc(100vw - 32px)) !important; max-width: none !important; height: auto !important; padding: 0 !important; font-size: 16px !important; transform: translate(-50%, -50%); }

/* verification pop-ups v2: one window at a time, tinted header, labelled field, clear main action */
body:has(.mv-vf:not(.d-none) #dialog.window) .modal.show,
body:has(.mv-vf:not(.d-none) #dialog.window) .modal-backdrop { display: none !important; }
html body #boxes.mv-vf #dialog.window { width: min(420px, calc(100vw - 32px)) !important; }
.mv-vf .modal-content { border: 0 !important; box-shadow: 0 30px 70px rgba(42,36,33,.35) !important; }
.mv-vf .modal-content::before { display: none; }
.mv-vf .modal-header { padding: 30px 28px 14px !important; gap: 14px; background: linear-gradient(180deg, var(--mv-wine-50) 0%, var(--mv-surface) 100%) !important; }
.mv-vf-ic { width: 64px; height: 64px; background: var(--mv-surface); border: 1px solid var(--mv-wine-100); box-shadow: 0 8px 20px rgba(163,52,58,.16); }
.mv-vf-ic .mv-i { width: 28px; height: 28px; }
.mv-vf-ic.is-ok { background: var(--mv-surface); border-color: var(--mv-success-bg); box-shadow: 0 8px 20px rgba(47,122,79,.16); }
.mv-vf .modal-title { font-size: 23px !important; }
.mv-vf .modal-body { padding: 0 28px 4px !important; }
.mv-vf .modal-body p { margin-bottom: 18px !important; }
.mv-vf .modal-body small, .mv-vf .modal-body p { font-size: 14.5px !important; }

/* field: label above, icon inside */
.mv-vf [class*="col-"]:has(input[name="edit_email"]),
.mv-vf [class*="col-"]:has(input[name="edit_mobile"]) { display: flex !important; flex-direction: column; align-items: stretch; text-align: left; gap: 6px; }
.mv-vf [class*="col-"]:has(input[name="edit_email"])::before { content: "Email address"; }
.mv-vf [class*="col-"]:has(input[name="edit_mobile"])::before { content: "Mobile number"; }
.mv-vf [class*="col-"]:has(input[name="edit_email"])::before,
.mv-vf [class*="col-"]:has(input[name="edit_mobile"])::before { font-size: 13.5px; font-weight: 600; color: var(--mv-text); }
.mv-vf [class*="col-"] > b:has(input) { display: block; font-weight: 400; }
.mv-vf input[name="edit_email"].form-control, .mv-vf input[name="edit_mobile"].form-control { text-align: left; padding-left: 44px !important; height: 50px !important; background-repeat: no-repeat !important; background-position: 14px center !important; background-size: 18px 18px !important; }
.mv-vf input[name="edit_email"].form-control { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%239a8f88%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect width=%2220%22 height=%2216%22 x=%222%22 y=%224%22 rx=%222%22/%3E%3Cpath d=%22m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7%22/%3E%3C/svg%3E") !important; }
.mv-vf input[name="edit_mobile"].form-control { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%239a8f88%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z%22/%3E%3C/svg%3E") !important; }

/* actions: main button full width, Log out / Back as quiet links below */
.mv-vf .form-group [class*="col-"] { flex-direction: column; align-items: stretch; gap: 6px; }
.mv-vf .form-group { padding-top: 18px; }
.mv-vf .modal-body .form-group { padding-top: 18px; }
.mv-vf button.btn.gt-btn-orange { flex: none !important; width: 100%; min-height: 50px !important; font-size: 15.5px !important; border-radius: var(--mv-r-md) !important; box-shadow: 0 8px 18px rgba(163,52,58,.25) !important; order: 1; }
.mv-vf a.btn.gt-btn-orange[href*="logout"], .mv-vf a.btn.gt-btn-orange[href*="myprofile"]:not(:has(button)), .mv-vf a.btn.gt-btn-orange[href*="verification_user_mobile_otp"] { order: 2; flex: none !important; align-self: center; min-height: 36px !important; padding: 0 10px !important; background: none !important; border: 0 !important; color: var(--mv-text-2) !important; font-size: 14px !important; font-weight: 500 !important; }
.mv-vf a.btn.gt-btn-orange[href*="logout"]::before { content: "Not now?"; margin-right: 5px; color: var(--mv-text-3); font-weight: 400; }
.mv-vf a.btn.gt-btn-orange[href*="logout"] { color: var(--mv-wine-500) !important; text-decoration: underline !important; text-underline-offset: 3px; }
.mv-vf a.btn.gt-btn-orange[href*="myprofile"]:not(:has(button))::before, .mv-vf a.btn.gt-btn-orange[href*="verification_user_mobile_otp"]::before { content: "\2190"; margin-right: 6px; }
.mv-vf a[href*="show_account"].btn.gt-btn-orange { order: 1; width: 100%; min-height: 50px !important; box-shadow: 0 8px 18px rgba(163,52,58,.25) !important; }
.mv-vf .modal-content > .form-group:last-child, .mv-vf .modal-body > form:last-child .form-group:last-child { padding-bottom: 24px; }
.mv-vf .modal-body > form:only-child .form-group:last-child { padding-bottom: 22px; }
.mv-vf input[name="edit_email"].form-control, .mv-vf input[name="edit_mobile"].form-control { text-align: left !important; }
.mv-vf a.btn.gt-btn-orange[href*="logout"]::before { display: inline-block; text-decoration: none; }
.mv-vf a.btn.gt-btn-orange[href*="logout"] { text-decoration: none !important; font-weight: 600 !important; }
.mv-vf a.btn.gt-btn-orange[href*="logout"]:hover { text-decoration: underline !important; }
/* "Did not get the code? Resend": plain text, only "Resend" is clickable, no box or hover fill */
.mv-vf form + form { padding: 2px 24px 24px; }
.mv-vf form + form .form-group { display: flex !important; justify-content: center; align-items: baseline; gap: 6px; padding: 0 !important; }
.mv-vf form + form .form-group::before { content: "Did not get the code?"; font-size: 14px; color: var(--mv-text-2); }
.mv-vf form + form button.btn.gt-btn-orange { order: 2; width: auto !important; flex: none !important; min-height: 0 !important; height: auto !important; padding: 0 !important; margin: 0 !important; background: none !important; border: 0 !important; box-shadow: none !important; color: var(--mv-wine-500) !important; font-size: 14px !important; font-weight: 600 !important; text-decoration: none !important; line-height: 1.4; cursor: pointer; }
.mv-vf form + form button.btn.gt-btn-orange::before { content: none !important; }
.mv-vf form + form button.btn.gt-btn-orange:hover, .mv-vf form + form button.btn.gt-btn-orange:focus { background: none !important; border: 0 !important; box-shadow: none !important; color: var(--mv-wine-500) !important; text-decoration: underline !important; text-underline-offset: 3px; }
.mv-vf form + form button.btn.gt-btn-orange:focus-visible { outline: 2px solid var(--mv-wine-500); outline-offset: 3px; border-radius: 4px; }
/* quiet links (Back / Log out): no colour flash on hover, just an underline */
.mv-vf a.btn.gt-btn-orange[href*="logout"]:hover, .mv-vf a.btn.gt-btn-orange[href*="myprofile"]:not(:has(button)):hover, .mv-vf a.btn.gt-btn-orange[href*="verification_user_mobile_otp"]:hover { background: none !important; border: 0 !important; box-shadow: none !important; text-decoration: underline !important; text-underline-offset: 3px; }
/* pop-up outer box: invisible, exactly as wide as the card */
html body #boxes.mv-vf #dialog.window, html body #boxes.mv-vf #dialog.window #san { background: transparent !important; box-shadow: none !important; border: 0 !important; border-radius: 0 !important; outline: 0 !important; }
html body #boxes.mv-vf #dialog.window #san { width: 100% !important; max-width: none !important; padding: 0 !important; margin: 0 !important; }
html body #boxes.mv-vf #dialog.window .modal-content { width: 100% !important; max-width: none !important; }
html body #boxes.mv-vf #dialog.window { overflow: visible !important; }

/* =====================================================================
   MY PROFILE (member dashboard) + side menu
   ===================================================================== */
.mv-dash { background: var(--mv-bg); background-image: var(--mv-grad-hero); background-size: 100% 520px; background-repeat: no-repeat; padding: 24px 0 56px; }
.mv-dash-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 20px; max-width: 1280px; }
.mv-dash-grid > * { min-width: 0; }
@media (min-width: 992px) { .mv-dash-grid { grid-template-columns: 280px minmax(0, 1fr); gap: 24px; align-items: start; } .mv-dash-side { position: sticky; top: 88px; } }
.mv-dash-main { display: grid; gap: 20px; }

/* side menu */
.mv-side { display: grid; gap: 14px; }
.mv-side-me, .mv-side-card { background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-lg); box-shadow: var(--mv-shadow-sm); }
.mv-side-me { display: flex; flex-direction: column; align-items: center; text-align: center; padding: 22px 18px 18px; position: relative; overflow: hidden; }
.mv-side-me::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 64px; background: linear-gradient(120deg, var(--mv-wine-500), var(--mv-wine-400) 60%, var(--mv-gold-500)); }
.mv-side-photo { position: relative; width: 104px; height: 104px; border-radius: 50%; margin-top: 8px; box-shadow: 0 0 0 4px var(--mv-surface), var(--mv-shadow-md); display: block; }
.mv-side-photo img, .mv-side-ph { width: 100%; height: 100%; border-radius: 50%; object-fit: cover; display: grid; place-items: center; background: var(--mv-wine-50); color: var(--mv-wine-300); }
.mv-side-ph .mv-i { width: 40px; height: 40px; }
.mv-side-cam { position: absolute; right: 0; bottom: 4px; width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; background: var(--mv-primary); color: var(--mv-on-primary); border: 3px solid var(--mv-surface); }
.mv-side-cam .mv-i { width: 13px; height: 13px; }
.mv-side-name { margin-top: 12px; font-family: var(--mv-font-head); font-size: 18px; font-weight: 600; color: var(--mv-text); }
.mv-side-id { font-size: 13px; color: var(--mv-text-3); }
.mv-side-thumbs { display: flex; gap: 6px; margin-top: 12px; }
.mv-side-thumbs img { width: 38px; height: 38px; border-radius: 10px; object-fit: cover; border: 1px solid var(--mv-border); }
.mv-side-manage { display: inline-flex; align-items: center; gap: 6px; margin-top: 12px; font-size: 13.5px; font-weight: 600; color: var(--mv-wine-500) !important; text-decoration: none !important; }
.mv-side-card { padding: 8px; }
.mv-side-card h3 { display: flex; align-items: center; justify-content: space-between; margin: 6px 10px 6px !important; font-size: 12px !important; font-weight: 600 !important; letter-spacing: .08em; text-transform: uppercase; color: var(--mv-text-3) !important; font-family: var(--mv-font-body) !important; }
.mv-side-card > a { display: flex; align-items: center; gap: 10px; padding: 9px 10px; border-radius: var(--mv-r-md); color: var(--mv-text) !important; font-size: 14px; font-weight: 500; text-decoration: none !important; transition: background var(--mv-fast) ease; }
.mv-side-card > a:hover { background: var(--mv-wine-50); }
.mv-side-ic { width: 30px; height: 30px; flex: none; border-radius: 9px; display: grid; place-items: center; background: var(--mv-sand-100); color: var(--mv-wine-500); }
.mv-side-t { flex: 1; min-width: 0; }
.mv-side-n { min-width: 26px; height: 22px; padding: 0 7px; border-radius: 11px; display: grid; place-items: center; font-size: 12px; font-weight: 700; background: var(--mv-sand-100); color: var(--mv-text-2); }
.mv-side-n.is-on { background: var(--mv-primary); color: var(--mv-on-primary); }
.mv-side-go { color: var(--mv-text-3); }
.mv-side-noti .noti-total-count { min-width: 22px; height: 20px; padding: 0 6px; border-radius: 10px; display: inline-grid; place-items: center; background: var(--mv-primary); color: var(--mv-on-primary); font-size: 11px; letter-spacing: 0; float: none !important; }
.mv-side-noti ul { list-style: none; margin: 0 !important; padding: 0 !important; }
#notifictionlist1:empty::before { content: "No new notifications"; display: block; padding: 10px 10px 12px; font-size: 13.5px; color: var(--mv-text-3); }
#notifictionlist1 li { border-radius: var(--mv-r-md); overflow: hidden; }
#notifictionlist1 li a, #notifictionlist1 li p { font-size: 13px !important; color: var(--mv-text) !important; }
#notifictionlist1 img { width: 34px !important; height: 34px !important; border-radius: 50% !important; object-fit: cover; }
.mv-side-all { display: flex; align-items: center; justify-content: center; gap: 6px; padding: 9px; font-size: 13.5px; font-weight: 600; color: var(--mv-wine-500) !important; text-decoration: none !important; }
@media (max-width: 991.98px) { .mv-side-me { flex-direction: row; text-align: left; gap: 14px; padding: 16px; flex-wrap: wrap; } .mv-side-me::before { display: none; } .mv-side-photo { width: 64px; height: 64px; margin: 0; box-shadow: var(--mv-shadow-sm); } .mv-side-name { margin: 0; } .mv-side-thumbs { display: none; } .mv-side-manage { margin: 0 0 0 auto; } }

/* hero: greeting + completion */
.mv-dash-hero { display: grid; gap: 18px; padding: 24px; background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-xl); box-shadow: var(--mv-shadow-sm); position: relative; overflow: hidden; }
.mv-dash-hero::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 4px; background: var(--mv-grad-accent); }
@media (min-width: 768px) { .mv-dash-hero { grid-template-columns: minmax(0, 1fr) minmax(0, 340px); align-items: center; padding: 28px 30px; } }
.mv-dash-plan { display: inline-flex; align-items: center; gap: 6px; padding: 4px 11px; border-radius: var(--mv-r-pill); background: var(--mv-sand-100); color: var(--mv-text-2); font-size: 12.5px; font-weight: 600; }
.mv-dash-plan.is-paid { background: var(--mv-wine-50); color: var(--mv-wine-500); }
.mv-dash-hello h1 { margin: 10px 0 4px !important; font-size: clamp(24px, 3vw, 30px); font-weight: 500; line-height: 1.2; color: var(--mv-text); }
.mv-dash-hello h1 em { font-style: normal; color: var(--mv-wine-500); }
.mv-dash-hello p { margin: 0 !important; font-size: 14.5px; color: var(--mv-text-2); }
.mv-dash-hello p b { color: var(--mv-text); }
.mv-dash-cta { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 16px; }
.mv-dash-cta .mv-btn { min-height: 44px; gap: 8px; padding: 0 18px; }
.mv-dash-up { margin: 0; }
.mv-dash-complete { display: flex; align-items: center; gap: 16px; padding: 16px; border-radius: var(--mv-r-lg); background: linear-gradient(135deg, var(--mv-wine-50), var(--mv-ivory-50)); border: 1px solid var(--mv-wine-100); }
.mv-ring { position: relative; flex: none; width: 92px; height: 92px; }
.mv-ring svg { width: 100%; height: 100%; transform: rotate(-90deg); }
.mv-ring circle { fill: none; stroke-width: 10; }
.mv-ring-bg { stroke: var(--mv-surface); }
.mv-ring-fg { stroke: var(--mv-wine-500); stroke-linecap: round; stroke-dasharray: 326.7; stroke-dashoffset: calc(326.7 - 326.7 * var(--mv-p) / 100); transition: stroke-dashoffset .8s var(--mv-ease); }
.mv-ring span { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; line-height: 1.1; }
.mv-ring b { font-family: var(--mv-font-head); font-size: 22px; color: var(--mv-text); }
.mv-ring small { font-size: 11px; color: var(--mv-text-3); }
.mv-dash-complete-txt { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.mv-dash-complete-txt b { font-size: 15.5px; color: var(--mv-text); }
.mv-dash-complete-txt small { font-size: 13px; color: var(--mv-text-2); line-height: 1.4; }
.mv-dash-missing { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.mv-dash-missing a { display: inline-flex; align-items: center; gap: 4px; height: 26px; padding: 0 10px; border-radius: var(--mv-r-pill); background: var(--mv-surface); border: 1px dashed var(--mv-wine-200); color: var(--mv-wine-500) !important; font-size: 12.5px; font-weight: 500; text-decoration: none !important; }
.mv-dash-missing .mv-i { width: 12px; height: 12px; }

/* search by ID */
.mv-dash-card { background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-lg); box-shadow: var(--mv-shadow-sm); }
.mv-dash-find { display: grid; gap: 12px; padding: 18px 22px; align-items: center; }
@media (min-width: 900px) { .mv-dash-find { grid-template-columns: minmax(0, 1fr) minmax(0, 420px); } }
.mv-dash-find h2, .mv-dash-sec-head h2 { margin: 0 !important; font-size: 18px; font-weight: 600; color: var(--mv-text); }
.mv-dash-find p { margin: 2px 0 0 !important; font-size: 13.5px; color: var(--mv-text-2); }
.mv-dash-find form { display: flex; gap: 8px; flex-wrap: wrap; margin: 0; }
.mv-dash-find .mv-ifield { flex: 1 1 200px; }
.mv-dash-find .mv-ifield .mv-input { height: 46px; }
.mv-dash-find .mv-btn { min-height: 46px; gap: 8px; padding: 0 20px; }
.mv-dash-find .alert { flex-basis: 100%; margin: 0 0 4px; font-size: 13.5px; }

/* section headings */
.mv-dash-sec { display: grid; gap: 12px; }
.mv-dash-sec-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.mv-dash-sec-head h2 { display: inline-flex; align-items: center; gap: 8px; }
.mv-dash-sec-head h2 .mv-i { color: var(--mv-wine-500); }
.mv-dash-sec-head a { display: inline-flex; align-items: center; gap: 6px; font-size: 13.5px; font-weight: 600; color: var(--mv-wine-500) !important; text-decoration: none !important; }
.mv-dash-empty { margin: 0 !important; padding: 18px; border-radius: var(--mv-r-lg); background: var(--mv-surface); border: 1px dashed var(--mv-border-strong); color: var(--mv-text-2); font-size: 14px; }

/* recently online */
.mv-dash-recent { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(170px, 1fr); gap: 14px; overflow-x: auto; padding-bottom: 6px; scrollbar-width: thin; }
@media (min-width: 1200px) { .mv-dash-recent { grid-auto-flow: row; grid-template-columns: repeat(6, minmax(0, 1fr)); overflow: visible; } }
.mv-dash-person { position: relative; display: flex; flex-direction: column; background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-lg); overflow: hidden; box-shadow: var(--mv-shadow-sm); transition: transform var(--mv-base) ease, box-shadow var(--mv-base) ease; }
.mv-dash-person:hover { transform: translateY(-2px); box-shadow: var(--mv-shadow-md); }
.mv-dash-person-photo { position: relative; display: block; aspect-ratio: 4 / 5; background: var(--mv-sand-100); }
.mv-dash-person-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 20%; }
.mv-dash-noimg { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; color: var(--mv-wine-300); background: linear-gradient(160deg, var(--mv-wine-50), var(--mv-sand-100)); }
.mv-dash-noimg .mv-i { width: 32px; height: 32px; }
.mv-dash-noimg small { font-size: 12px; color: var(--mv-text-3); }
.mv-dash-online { position: absolute; right: 10px; top: 10px; width: 12px; height: 12px; border-radius: 50%; background: var(--mv-success); box-shadow: 0 0 0 3px var(--mv-surface); }
.mv-dash-req { padding: 8px 10px 0; }
.mv-dash-req .btn.gt-btn-green, .mv-dash-cards .btn.gt-btn-green { display: flex !important; align-items: center; justify-content: center; gap: 6px; width: 100%; min-height: 34px; padding: 0 10px !important; border-radius: var(--mv-r-pill) !important; border: 1px solid var(--mv-wine-200) !important; background: var(--mv-wine-50) !important; color: var(--mv-wine-500) !important; font-size: 12.5px !important; font-weight: 600 !important; text-transform: none !important; box-shadow: none !important; text-decoration: none !important; }
.mv-dash-req .btn.gt-btn-green:hover { background: var(--mv-wine-100) !important; }
.mv-dash-req .btn.gt-btn-green.is-done, #matchlistid .profile-view-btn .btn.gt-btn-green { background: var(--mv-success-bg) !important; border-color: transparent !important; color: var(--mv-success) !important; }
.mv-dash-person-info { display: flex; flex-direction: column; gap: 2px; padding: 10px 12px 12px; min-width: 0; }
.mv-dash-person-info a { text-decoration: none !important; }
.mv-dash-person-info b { font-size: 15px; color: var(--mv-text); }
.mv-dash-person-info small { font-size: 12.5px; color: var(--mv-text-2); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mv-dash-loc { display: inline-flex; align-items: center; gap: 4px; }
.mv-dash-loc .mv-i { width: 12px; height: 12px; color: var(--mv-text-3); }

/* match cards (HTML comes from the server: restyled here) */
.mv-dash-cards.row { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 16px; margin: 0 !important; }
.mv-dash-cards > [class*="col-"] { max-width: none !important; flex: none !important; width: auto !important; padding: 0 !important; margin: 0 !important; background: var(--mv-surface) !important; border: 1px solid var(--mv-border); border-radius: var(--mv-r-lg); overflow: hidden; box-shadow: var(--mv-shadow-sm); transition: transform var(--mv-base) ease, box-shadow var(--mv-base) ease; }
.mv-dash-cards > [class*="col-"]:hover { transform: translateY(-2px); box-shadow: var(--mv-shadow-md); }
.mv-dash-cards .myprofile-user-list { margin: 0 !important; padding: 0 !important; }
.mv-dash-cards .user-slider-img-parent { position: relative; padding: 0 !important; height: auto !important; }
.mv-dash-cards .myhome-listing { position: relative; aspect-ratio: 4 / 5; background: var(--mv-sand-100); overflow: hidden; }
.mv-dash-cards .myhome-listing > a { display: block; width: 100%; height: 100%; }
.mv-dash-cards .myhome-listing img { width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; object-position: 50% 20%; border-radius: 0 !important; }
.mv-dash-cards .online_status_bar { position: absolute; left: 10px; top: 10px; width: 12px; height: 12px; border-radius: 50%; background: var(--mv-border-strong); box-shadow: 0 0 0 3px var(--mv-surface); z-index: 2; }
.mv-dash-cards .online_status_bar.online { background: var(--mv-success); }
.mv-dash-cards .profile-view-btn { position: absolute; left: 10px; right: 10px; bottom: 10px; z-index: 2; margin: 0 !important; }
.mv-dash-cards .profile-view-btn form { margin: 0; }
/* action buttons: a column of round icon buttons on the photo */
.mv-dash-cards .social-icon-matches-posi { position: absolute !important; right: 8px; top: 8px; bottom: auto; left: auto; z-index: 3; display: block !important; width: auto !important; height: auto !important; background: none !important; }
.mv-dash-cards .fixed-social { display: flex; flex-direction: column; gap: 6px; padding: 0 !important; }
.mv-dash-cards .fixed-social > div:empty { display: none; }
.mv-dash-cards .socia-icon:not(.myhome-profile) { position: relative; display: grid !important; place-items: center; width: 34px; height: 34px; padding: 0 !important; margin: 0 !important; border-radius: 50% !important; background: rgba(255,255,255,.94) !important; color: var(--mv-wine-500) !important; box-shadow: 0 2px 8px rgba(42,36,33,.18); text-decoration: none !important; transition: background var(--mv-fast) ease, transform var(--mv-fast) ease; }
.mv-dash-cards .socia-icon:not(.myhome-profile):hover { background: var(--mv-wine-500) !important; color: var(--mv-on-primary) !important; transform: scale(1.06); }
.mv-dash-cards .socia-icon i.fa { display: none !important; }
.mv-dash-cards .socia-icon:not(.myhome-profile)::before { content: ""; width: 16px; height: 16px; background: currentColor; -webkit-mask: var(--mv-ic) center / contain no-repeat; mask: var(--mv-ic) center / contain no-repeat; }
.mv-dash-cards .socia-icon > span { position: absolute; right: calc(100% + 8px); top: 50%; transform: translateY(-50%); white-space: nowrap; padding: 4px 8px; border-radius: 6px; background: var(--mv-text); color: var(--mv-surface); font-size: 11.5px; opacity: 0; pointer-events: none; transition: opacity var(--mv-fast) ease; }
.mv-dash-cards .socia-icon > span small { font-size: inherit; color: inherit; }
.mv-dash-cards .socia-icon:hover > span { opacity: 1; }
.mv-dash-cards .socia-icon.send { --mv-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M14.5 21.7a.5.5 0 0 0 .9 0l6.5-19a.5.5 0 0 0-.6-.6l-19 6.5a.5.5 0 0 0 0 .9l7.9 3.2a2 2 0 0 1 1.1 1.1z%22/%3E%3Cpath d=%22m21.9 2.1-10.9 10.9%22/%3E%3C/svg%3E"); }
.mv-dash-cards .socia-icon.envelope { --mv-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M7.9 20A9 9 0 1 0 4 16.1L2 22Z%22/%3E%3C/svg%3E"); }
.mv-dash-cards .socia-icon.heart-bg { --mv-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M19 14c1.5-1.5 3-3.2 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.8 0-3 .5-4.5 2-1.5-1.5-2.7-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4 3 5.5l7 7Z%22/%3E%3C/svg%3E"); }
.mv-dash-cards .socia-icon.phone { --mv-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1 1 .4 1.9.7 2.8a2 2 0 0 1-.5 2.1L8.1 9.9a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.8.7a2 2 0 0 1 1.7 2z%22/%3E%3C/svg%3E"); }
.mv-dash-cards .socia-icon[id^="notyet"] { --mv-ic: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M18 6 6 18%22/%3E%3Cpath d=%22m6 6 12 12%22/%3E%3C/svg%3E"); }
.mv-dash-cards .mt-2 { margin: 0 !important; padding: 10px 12px 12px; }
.mv-dash-cards h6 { margin: 0 0 2px !important; font-size: 15px !important; font-weight: 600 !important; color: var(--mv-text) !important; }
.mv-dash-cards .list-group-item { padding: 0 !important; background: none !important; border: 0 !important; }
.mv-dash-cards .list-group-item span { font-size: 12.5px !important; color: var(--mv-text-2) !important; font-weight: 400 !important; }

/* loading placeholders for the matches list */
.mv-dash-skel { border-radius: var(--mv-r-lg); background: var(--mv-surface); border: 1px solid var(--mv-border); overflow: hidden; display: grid; gap: 8px; padding-bottom: 12px; }
.mv-dash-skel i { display: block; height: 12px; margin: 0 12px; border-radius: 6px; background: linear-gradient(90deg, var(--mv-sand-100), var(--mv-surface), var(--mv-sand-100)); background-size: 200% 100%; animation: mvResShim 1.2s linear infinite; }
.mv-dash-skel i:first-child { height: auto; aspect-ratio: 4 / 5; margin: 0 0 4px; border-radius: 0; }
.mv-dash-skel i:last-child { width: 60%; }
@media (max-width: 575.98px) {
  .mv-dash { padding-top: 14px; }
  .mv-dash-hero { padding: 20px 16px; }
  .mv-dash-cards.row { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .mv-dash-recent { grid-auto-columns: 150px; }
}
/* verification pop-ups: busy state while the code is being sent / checked */
.mv-vf button.btn.gt-btn-orange.is-busy { gap: 10px; opacity: .9; cursor: progress !important; }
.mv-vf button.btn.gt-btn-orange:disabled:not(.is-busy) { opacity: .5; }
.mv-spin { width: 16px; height: 16px; border-radius: 50%; border: 2px solid currentColor; border-right-color: transparent; display: inline-block; animation: mvSpin .7s linear infinite; }
@keyframes mvSpin { to { transform: rotate(360deg); } }
.mv-vf form + form button.btn.gt-btn-orange.is-busy { color: var(--mv-text-2) !important; }
/* "My profile" skeleton (shown behind the verification pop-ups until the member is verified) */
.mv-sk-b { display: block; height: 12px; border-radius: 6px; background: linear-gradient(90deg, var(--mv-sand-100), var(--mv-surface), var(--mv-sand-100)); background-size: 200% 100%; animation: mvResShim 1.4s linear infinite; }
.mv-sk .mv-side-me::before { background: var(--mv-sand-200); }
.mv-sk .mv-dash-complete { background: var(--mv-surface); border-color: var(--mv-border); }
.mv-sk .mv-dash-hero::before { background: var(--mv-sand-200); }
@media (prefers-reduced-motion: reduce) { .mv-sk-b { animation: none; } }
/* busy state v2: lock the other buttons without greying them; calm "Sending a new code..." line */
.mv-vf.is-locked button:not(.is-busy), .mv-vf.is-locked a.btn { pointer-events: none; }
.mv-vf form + form.is-busy .form-group::before { content: none; }
.mv-vf form + form button.btn.gt-btn-orange.is-busy { display: inline-flex !important; align-items: center; gap: 8px; color: var(--mv-text-2) !important; font-weight: 500 !important; text-decoration: none !important; cursor: progress !important; opacity: 1; }
.mv-vf form + form button.btn.gt-btn-orange.is-busy .mv-spin { width: 14px; height: 14px; border-width: 2px; color: var(--mv-wine-500); }
.mv-vf button.btn.gt-btn-orange.is-busy:not(form + form button) { display: inline-flex !important; align-items: center; justify-content: center; }
/* skeleton: same look as before, but still (no shimmer animation) */
.mv-sk .mv-sk-b, .mv-sk .mv-dash-skel i { animation: none !important; background: var(--mv-sand-100) !important; }
.mv-sk .mv-dash-skel i:first-child { background: linear-gradient(160deg, var(--mv-sand-100), var(--mv-wine-50)) !important; }

/* =====================================================================
   MEMBER HEADER v3 (two rows: brand/search/account + icon tabs)
   ===================================================================== */
.mv-hm { padding: 0; }
.mv-hm-top-in { display: flex; align-items: center; gap: 18px; min-height: 64px; }
.mv-hm-search { display: none; flex: 1; max-width: 520px; margin: 0 auto; position: relative; align-items: center; }
.mv-hm-search .mv-hm-search-ic { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); color: var(--mv-text-3); pointer-events: none; }
.mv-hm-search input { width: 100% !important; height: 44px !important; padding: 0 96px 0 44px !important; border: 1px solid var(--mv-border) !important; border-radius: var(--mv-r-pill) !important; background: var(--mv-sand-100) !important; font-size: 14.5px !important; }
.mv-hm-search input:focus { background: var(--mv-surface) !important; }
.mv-hm-search button { right: 5px !important; width: auto !important; height: 34px !important; padding: 0 16px !important; border-radius: var(--mv-r-pill) !important; background: var(--mv-primary) !important; color: var(--mv-on-primary) !important; font-size: 13.5px; font-weight: 600; }
.mv-hm-actions { display: flex; align-items: center; gap: 10px; margin-left: auto; }
.mv-hm-plan { text-decoration: none !important; }
.mv-hm-plan span { max-width: 130px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mv-hm-bell { position: relative; background: var(--mv-sand-100); }
.mv-hm-bell b { position: absolute; top: 2px; right: 0; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 9px; display: grid; place-items: center; background: var(--mv-primary); color: var(--mv-on-primary); font-size: 10.5px; font-weight: 700; box-shadow: 0 0 0 2px var(--mv-surface); }
.mv-hm-user { gap: 10px !important; padding: 3px 10px 3px 3px !important; border: 1px solid var(--mv-border) !important; border-radius: var(--mv-r-pill) !important; background: var(--mv-surface) !important; }
.mv-hm-user img { width: 36px !important; height: 36px !important; }
.mv-hm-user-t { display: none; flex-direction: column; align-items: flex-start; line-height: 1.15; text-align: left; }
.mv-hm-user-t b { font-size: 14px; color: var(--mv-text); max-width: 110px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mv-hm-user-t small { font-size: 11.5px; color: var(--mv-text-3); }
.mv-hm-tabs { display: none; border-top: 1px solid var(--mv-border); background: var(--mv-surface); }
.mv-hm-nav { display: flex !important; align-items: stretch; gap: 4px !important; min-height: 48px; }
.mv-hm-nav > a, .mv-hm-nav .mv-dd-btn { position: relative; display: inline-flex !important; align-items: center; gap: 8px; height: 48px; padding: 0 14px !important; border-radius: 0 !important; background: none !important; color: var(--mv-text-2) !important; font-size: 14.5px; font-weight: 500; text-decoration: none !important; border: 0; }
.mv-hm-nav > a .mv-i, .mv-hm-nav .mv-dd-btn > .mv-i:first-child { color: var(--mv-text-3); }
.mv-hm-nav > a:hover, .mv-hm-nav .mv-dd-btn:hover { color: var(--mv-wine-500) !important; }
.mv-hm-nav > a.is-active, .mv-hm-nav .mv-dd-btn.is-active { color: var(--mv-wine-500) !important; font-weight: 600; }
.mv-hm-nav > a.is-active .mv-i, .mv-hm-nav .mv-dd-btn.is-active .mv-i { color: var(--mv-wine-500); }
.mv-hm-nav > a.is-active::after, .mv-hm-nav .mv-dd-btn.is-active::after { content: ""; position: absolute; left: 12px; right: 12px; bottom: 0; height: 3px; border-radius: 3px 3px 0 0; background: var(--mv-primary); }
.mv-hm-nav .mv-dd-menu { top: calc(100% - 4px); }
@media (min-width: 768px) { .mv-hm-search { display: flex; } }
@media (min-width: 1100px) { .mv-hm-user-t { display: flex; } }
@media (min-width: 1200px) {
  .mv-hm-tabs { display: block; }
  .mv-header-member.mv-hm .mv-burger { display: none !important; }
}
@media (max-width: 1199.98px) {
  .mv-header-member.mv-hm .mv-burger { display: inline-flex !important; }
  .mv-header-member.mv-hm .mv-drawer { display: none !important; }
  .mv-header-member.mv-hm .mv-drawer.is-open { display: block !important; }
}
@media (max-width: 575.98px) { .mv-hm-top-in { gap: 10px; min-height: 58px; } .mv-hm-bell { display: none; } }

/* =====================================================================
   MY PROFILE v3 (app style: you, activity tiles, matches, online, activity)
   ===================================================================== */
.mv-app { padding: 22px 0 56px; }
.mv-app-wrap { max-width: 1240px; }
.mv-app-main { display: grid; gap: 22px; }
.mv-app-flash .alert { margin: 0; border-radius: var(--mv-r-md); }

.mv-app-me { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 18px 22px; align-items: center; padding: 24px; border-radius: var(--mv-r-xl); overflow: hidden; color: var(--mv-ivory-0); background: radial-gradient(120% 140% at 0% 0%, var(--mv-wine-400) 0%, var(--mv-wine-500) 45%, #6e1f28 100%); box-shadow: 0 18px 40px rgba(163,52,58,.25); }
.mv-app-me::after { content: ""; position: absolute; right: -80px; top: -80px; width: 280px; height: 280px; border-radius: 50%; background: radial-gradient(circle, rgba(201,162,94,.35), rgba(201,162,94,0) 70%); pointer-events: none; }
.mv-app-avatar { position: relative; width: 88px; height: 88px; border-radius: 50%; box-shadow: 0 0 0 4px rgba(255,255,255,.25); display: block; }
.mv-app-avatar img, .mv-app-avatar > span { width: 100%; height: 100%; border-radius: 50%; object-fit: cover; object-position: 50% 20%; display: grid; place-items: center; background: rgba(255,255,255,.15); color: var(--mv-ivory-0); }
.mv-app-avatar > span .mv-i { width: 36px; height: 36px; }
.mv-app-avatar > i { position: absolute; right: -2px; bottom: 2px; width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center; background: var(--mv-gold-500); color: #3b2a12; border: 3px solid var(--mv-wine-500); }
.mv-app-avatar > i .mv-i { width: 12px; height: 12px; }
.mv-app-hello { position: relative; z-index: 1; min-width: 0; }
.mv-app-me .mv-dash-plan { background: rgba(255,255,255,.16); color: var(--mv-ivory-0); }
.mv-app-me .mv-dash-plan.is-paid { background: var(--mv-gold-500); color: #3b2a12; }
.mv-app-hello h1 { margin: 8px 0 4px !important; font-size: clamp(24px, 3vw, 32px); font-weight: 500; color: var(--mv-ivory-0) !important; line-height: 1.15; }
.mv-app-hello h1 em { font-style: normal; color: var(--mv-gold-300); }
.mv-app-hello p { margin: 0 !important; font-size: 14px; color: rgba(255,255,255,.85); }
.mv-app-hello p b { color: var(--mv-ivory-0); }
.mv-app-hello p a { color: var(--mv-ivory-0) !important; text-decoration: underline !important; text-underline-offset: 3px; text-decoration-color: rgba(255,255,255,.4) !important; }
.mv-app-dot { opacity: .5; margin: 0 4px; }
.mv-app-me .mv-dash-cta { margin-top: 14px; }
.mv-app-me .mv-btn-primary { background: var(--mv-ivory-0) !important; color: var(--mv-wine-500) !important; border-color: var(--mv-ivory-0) !important; box-shadow: none !important; }
.mv-btn-gold { background: var(--mv-gold-500) !important; color: #3b2a12 !important; border: 1px solid var(--mv-gold-500) !important; font-weight: 600; }
.mv-btn-gold:hover { background: var(--mv-gold-300) !important; }
.mv-app-complete { position: relative; z-index: 1; grid-column: 1 / -1; display: flex; align-items: center; gap: 14px; padding: 12px 14px; border-radius: var(--mv-r-lg); background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.18); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.mv-app-complete .mv-ring { width: 70px; height: 70px; }
.mv-app-complete .mv-ring-bg { stroke: rgba(255,255,255,.2); }
.mv-app-complete .mv-ring-fg { stroke: var(--mv-gold-300); }
.mv-app-complete .mv-ring b { font-size: 17px; color: var(--mv-ivory-0); }
.mv-app-complete .mv-ring small { font-size: 10px; color: rgba(255,255,255,.75); }
.mv-app-complete > div:last-child { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.mv-app-complete > div:last-child > b { font-size: 15px; color: var(--mv-ivory-0); }
.mv-app-complete small { font-size: 13px; color: rgba(255,255,255,.8); }
.mv-app-complete .mv-dash-missing { margin-top: 2px; }
.mv-app-complete .mv-dash-missing a { background: rgba(255,255,255,.95); border: 0; }
@media (min-width: 992px) {
  .mv-app-me { grid-template-columns: auto minmax(0, 1fr) minmax(0, 320px); padding: 28px 30px; }
  .mv-app-complete { grid-column: auto; }
}

/* activity tiles */
.mv-app-tiles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
@media (min-width: 640px) { .mv-app-tiles { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 992px) { .mv-app-tiles { grid-template-columns: repeat(5, minmax(0, 1fr)); } }
.mv-app-tile { position: relative; display: flex; flex-direction: column; gap: 4px; padding: 16px; border-radius: var(--mv-r-lg); background: var(--mv-surface); border: 1px solid var(--mv-border); box-shadow: var(--mv-shadow-sm); text-decoration: none !important; transition: transform var(--mv-base) ease, box-shadow var(--mv-base) ease, border-color var(--mv-base) ease; }
.mv-app-tile:hover { transform: translateY(-2px); box-shadow: var(--mv-shadow-md); border-color: var(--mv-wine-200); }
.mv-app-tile-ic { width: 36px; height: 36px; border-radius: 11px; display: grid; place-items: center; background: var(--mv-sand-100); color: var(--mv-text-2); margin-bottom: 6px; }
.mv-app-tile.has-new .mv-app-tile-ic { background: var(--mv-wine-50); color: var(--mv-wine-500); }
.mv-app-tile.has-new::after { content: ""; position: absolute; top: 14px; right: 14px; width: 8px; height: 8px; border-radius: 50%; background: var(--mv-primary); box-shadow: 0 0 0 3px var(--mv-wine-50); }
.mv-app-tile b { font-family: var(--mv-font-head); font-size: 26px; line-height: 1; color: var(--mv-text); }
.mv-app-tile small { font-size: 13px; color: var(--mv-text-2); }

/* section heads */
.mv-app .mv-dash-sec-head h2 { font-size: 20px; font-weight: 600; }

/* recently online: round avatars */
.mv-app-online { display: grid; grid-auto-flow: column; grid-auto-columns: 132px; gap: 14px; overflow-x: auto; padding: 4px 2px 8px; scrollbar-width: thin; }
.mv-app-person { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 2px; padding: 14px 10px 12px; border-radius: var(--mv-r-lg); background: var(--mv-surface); border: 1px solid var(--mv-border); box-shadow: var(--mv-shadow-sm); }
.mv-app-person-photo { position: relative; display: block; width: 84px; height: 84px; border-radius: 50%; margin-bottom: 8px; padding: 3px; background: conic-gradient(var(--mv-wine-500), var(--mv-gold-500), var(--mv-wine-500)); }
.mv-app-person-photo img, .mv-app-noimg { width: 100%; height: 100%; border-radius: 50%; object-fit: cover; object-position: 50% 20%; display: grid; place-items: center; border: 3px solid var(--mv-surface); background: var(--mv-wine-50); color: var(--mv-wine-300); }
.mv-app-noimg .mv-i { width: 28px; height: 28px; }
.mv-app-on { position: absolute; right: 4px; bottom: 6px; width: 14px; height: 14px; border-radius: 50%; background: var(--mv-success); border: 3px solid var(--mv-surface); }
.mv-app-person-id { font-size: 14px; font-weight: 600; color: var(--mv-text) !important; text-decoration: none !important; }
.mv-app-person small { font-size: 12px; color: var(--mv-text-2); max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mv-app-person .mv-dash-req { padding: 8px 0 0; width: 100%; }
.mv-app-person .mv-dash-req .btn.gt-btn-green { min-height: 30px; font-size: 12px !important; }

/* latest activity */
.mv-app-noti-list { background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-lg); box-shadow: var(--mv-shadow-sm); padding: 6px; max-height: 360px; overflow: auto; }
.mv-app-noti-list ul { list-style: none; margin: 0 !important; padding: 0 !important; }
.mv-app-noti-list #notifictionlist1 > li { border-bottom: 1px solid var(--mv-border); }
.mv-app-noti-list #notifictionlist1 > li:last-child { border-bottom: 0; }
.mv-app-noti-list #notifictionlist1:empty::before { content: "No new activity yet."; display: block; padding: 14px; font-size: 14px; color: var(--mv-text-3); }

/* skeleton (not verified yet) */
.mv-app .mv-sk .mv-app-me { background: var(--mv-surface); box-shadow: var(--mv-shadow-sm); border: 1px solid var(--mv-border); }
.mv-app .mv-sk .mv-app-me::after { display: none; }
.mv-app .mv-sk .mv-app-tile { box-shadow: none; }
@media (max-width: 575.98px) {
  .mv-app { padding-top: 12px; }
  .mv-app-me { padding: 20px 16px; gap: 14px; }
  .mv-app-avatar { width: 68px; height: 68px; }
  .mv-app-tile { padding: 12px; }
  .mv-app-tile b { font-size: 22px; }
}

/* phones: lift the chat bar and chat windows above the bottom tab bar */
@media (max-width: 767.98px) {
  body.mv-body:has(.mv-tabbar) .chat_buttons, body.mv-body:has(.mv-tabbar) .chat_buttons_box { bottom: 64px !important; }
  body.mv-body:has(.mv-tabbar) .chat_list_box, body.mv-body:has(.mv-tabbar) .active_list_box { bottom: 104px !important; }
}
/* My profile on phones: stacked greeting, one-row scrollable activity tiles */
@media (max-width: 575.98px) {
  .mv-app-me { grid-template-columns: 1fr; text-align: left; }
  .mv-app-avatar { width: 64px; height: 64px; }
  .mv-app-hello h1 { font-size: 24px; }
  .mv-app-me .mv-dash-cta { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
  .mv-app-me .mv-dash-cta .mv-btn, .mv-app-me .mv-dash-up, .mv-app-me .mv-dash-up .mv-btn { width: 100%; padding: 0 10px; font-size: 14px; justify-content: center; }
  .mv-app-tiles { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 132px; overflow-x: auto; padding-bottom: 4px; scrollbar-width: none; }
  .mv-app-tiles::-webkit-scrollbar { display: none; }
}
@media (min-width: 576px) and (max-width: 991.98px) { .mv-app-tiles { grid-template-columns: repeat(5, minmax(0, 1fr)); } .mv-app-tile small { font-size: 12px; } }
/* match cards: "Online/Offline" as a small pill; "View more" as a card-width button */
.mv-dash-cards .online_status_bar { width: auto !important; height: 22px !important; padding: 0 8px 0 18px; border-radius: 11px !important; display: inline-flex !important; align-items: center; font-size: 11px; font-weight: 600; color: var(--mv-text-2) !important; background: rgba(255,255,255,.92) !important; box-shadow: 0 1px 4px rgba(0,0,0,.12) !important; line-height: 1; }
.mv-dash-cards .online_status_bar::before { content: ""; position: absolute; left: 7px; top: 50%; width: 7px; height: 7px; margin-top: -3.5px; border-radius: 50%; background: var(--mv-text-3); }
.mv-dash-cards .online_status_bar.online { color: var(--mv-success) !important; background: rgba(255,255,255,.92) !important; }
.mv-dash-cards .online_status_bar.online::before { background: var(--mv-success); }
.mv-dash-cards > .col-12.text-right, .mv-dash-cards > [class*="col-"]:has(> form > .btn-green-o) { grid-column: 1 / -1; background: none !important; border: 0 !important; box-shadow: none !important; text-align: center !important; transform: none !important; }
.mv-dash-cards .btn-green-o { display: inline-flex !important; align-items: center; justify-content: center; min-height: 44px; padding: 0 28px !important; border-radius: var(--mv-r-pill) !important; background: var(--mv-surface) !important; border: 1px solid var(--mv-wine-200) !important; color: var(--mv-wine-500) !important; font-size: 14.5px !important; font-weight: 600 !important; text-transform: none !important; box-shadow: var(--mv-shadow-sm) !important; }
.mv-dash-cards .btn-green-o font { font-size: 0 !important; }
.mv-dash-cards .btn-green-o font::after { content: "See more matches"; font-size: 14.5px; }
.mv-dash-cards .btn-green-o:hover { background: var(--mv-wine-50) !important; }
/* match cards: show the status pill only when the member is online */
.mv-dash-cards .online_status_bar:not(.online) { display: none !important; }
.mv-dash-cards .online_status_bar.online { font-size: 0 !important; }
.mv-dash-cards .online_status_bar.online::after { content: "Online"; font-size: 11px; }
.mv-dash-cards .myhome-listing img[alt]:not([src*="."]) { visibility: hidden; }

/* =====================================================================
   MEMBER HEADER v4: one row (logo, menus, ID search, plan, bell, account)
   ===================================================================== */
.mv-hm-top { border-bottom: 0; }
.mv-hm-top-in { max-width: 1560px !important; gap: 14px !important; min-height: 68px !important; }
.mv-hm .mv-hm-nav { display: none !important; align-items: center; gap: 2px !important; min-height: 0; margin-left: 10px; }
.mv-hm .mv-hm-nav > a, .mv-hm .mv-hm-nav .mv-dd-btn { height: 40px; padding: 0 12px !important; border-radius: var(--mv-r-pill) !important; font-size: 14.5px; gap: 7px; }
.mv-hm .mv-hm-nav > a:hover, .mv-hm .mv-hm-nav .mv-dd-btn:hover { background: var(--mv-sand-100) !important; color: var(--mv-text) !important; }
.mv-hm .mv-hm-nav > a.is-active, .mv-hm .mv-hm-nav .mv-dd-btn.is-active { background: var(--mv-wine-50) !important; color: var(--mv-wine-500) !important; }
.mv-hm .mv-hm-nav > a.is-active::after, .mv-hm .mv-hm-nav .mv-dd-btn.is-active::after { display: none; }
.mv-hm .mv-hm-nav > a[href*="all_notification"] { display: none !important; }
.mv-hm .mv-hm-nav .mv-dd-menu { top: calc(100% + 8px); }
.mv-hm .mv-hm-search { flex: 0 1 200px !important; max-width: 220px !important; margin: 0 0 0 auto !important; }
.mv-hm .mv-hm-search input { height: 40px !important; padding: 0 44px 0 38px !important; font-size: 14px !important; }
.mv-hm .mv-hm-search .mv-hm-search-ic { left: 13px; }
.mv-hm .mv-hm-search button { width: 32px !important; height: 32px !important; padding: 0 !important; display: grid !important; place-items: center; }
.mv-hm .mv-hm-actions { margin-left: 0 !important; gap: 8px !important; }
.mv-hm .mv-hm-plan { height: 40px; }
.mv-hm .mv-hm-bell { width: 40px; height: 40px; }
.mv-hm .mv-hm-user { padding: 3px 8px 3px 3px !important; }
.mv-hm .mv-hm-user-t { display: none !important; }
@media (min-width: 1200px) { .mv-hm .mv-hm-nav { display: flex !important; } }
@media (min-width: 1400px) { .mv-hm .mv-hm-search { flex-basis: 240px !important; max-width: 260px !important; } .mv-hm .mv-hm-user-t { display: flex !important; } }
@media (max-width: 1199.98px) { .mv-hm .mv-hm-search { margin-left: auto !important; } }

/* =====================================================================
   MY PROFILE v4: discover profiles (wide grid, photo-first cards)
   ===================================================================== */
.mv-disc .mv-app-wrap { max-width: 1560px !important; width: 100%; margin-left: auto !important; margin-right: auto !important; }
.mv-disc { padding-top: 18px; background: var(--mv-bg); background-image: none; }
.mv-disc .mv-app-main { gap: 18px; }

/* slim "you" row */
.mv-disc-me { display: flex; align-items: center; gap: 16px 22px; flex-wrap: wrap; padding: 14px 18px; border-radius: var(--mv-r-xl); background: var(--mv-surface); border: 1px solid var(--mv-border); box-shadow: var(--mv-shadow-sm); }
.mv-disc-avatar { position: relative; flex: none; width: 64px; height: 64px; display: grid; place-items: center; }
.mv-disc-avatar img, .mv-disc-avatar > span { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; object-position: 50% 20%; display: grid; place-items: center; background: var(--mv-wine-50); color: var(--mv-wine-300); }
.mv-disc-avatar svg { position: absolute; inset: 0; width: 100%; height: 100%; transform: rotate(-90deg); }
.mv-disc-avatar circle { fill: none; stroke-width: 4; }
.mv-disc-ring-bg { stroke: var(--mv-sand-200); }
.mv-disc-ring-fg { stroke: var(--mv-wine-500); stroke-linecap: round; stroke-dasharray: 207.3; stroke-dashoffset: calc(207.3 - 207.3 * var(--mv-p) / 100); }
.mv-disc-hello { min-width: 0; flex: 1 1 260px; }
.mv-disc-hello h1 { margin: 0 0 2px !important; font-size: 22px; font-weight: 600; color: var(--mv-text); line-height: 1.2; }
.mv-disc-hello h1 em { font-style: normal; color: var(--mv-wine-500); }
.mv-disc-hello p { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; margin: 0 !important; font-size: 13.5px; color: var(--mv-text-2); }
.mv-disc-hello p a { color: var(--mv-wine-500) !important; font-weight: 600; text-decoration: none !important; }
.mv-disc-hello .mv-dash-plan { padding: 2px 9px; font-size: 12px; }
.mv-disc-stats { display: flex; gap: 6px; flex-wrap: wrap; }
.mv-disc-stats a { display: flex; flex-direction: column; align-items: center; min-width: 76px; padding: 6px 10px; border-radius: var(--mv-r-md); text-decoration: none !important; transition: background var(--mv-fast) ease; }
.mv-disc-stats a:hover { background: var(--mv-sand-100); }
.mv-disc-stats b { font-family: var(--mv-font-head); font-size: 20px; color: var(--mv-text); line-height: 1.1; }
.mv-disc-stats a.has-new b { color: var(--mv-wine-500); }
.mv-disc-stats small { font-size: 11.5px; color: var(--mv-text-3); white-space: nowrap; }
.mv-disc-me-cta { display: flex; gap: 8px; }
.mv-disc-me-cta .mv-btn { min-height: 40px; padding: 0 16px; gap: 6px; font-size: 14px; }

/* tabs */
.mv-disc-main { display: grid; gap: 16px; }
.mv-disc-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.mv-disc-head h2 { margin: 0 !important; font-size: 24px; font-weight: 600; color: var(--mv-text); }
.mv-disc-tabs { display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; }
.mv-disc-tabs::-webkit-scrollbar { display: none; }
.mv-disc-tabs button { display: inline-flex; align-items: center; gap: 7px; flex: none; height: 40px; padding: 0 16px; border-radius: var(--mv-r-pill); border: 1px solid var(--mv-border); background: var(--mv-surface); color: var(--mv-text-2); font: 500 14px var(--mv-font-body); cursor: pointer; transition: background var(--mv-fast) ease, color var(--mv-fast) ease, border-color var(--mv-fast) ease; }
.mv-disc-tabs button:hover { border-color: var(--mv-wine-200); color: var(--mv-text); }
.mv-disc-tabs button.is-on { background: var(--mv-text); border-color: var(--mv-text); color: var(--mv-surface); }
.mv-disc-tabs button span:empty { display: none; }
.mv-disc-tabs button span { min-width: 22px; height: 20px; padding: 0 6px; border-radius: 10px; display: inline-grid; place-items: center; background: var(--mv-sand-100); color: var(--mv-text-2); font-size: 11.5px; font-weight: 700; }
.mv-disc-tabs button.is-on span { background: rgba(255,255,255,.18); color: var(--mv-surface); }
.mv-disc-pane[hidden] { display: none !important; }

/* grid: fills the width with as many cards as fit */
.mv-disc-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 18px; }
@media (min-width: 1500px) { .mv-disc-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); } }

/* profile card */
.mv-pc { position: relative; display: flex; flex-direction: column; border-radius: var(--mv-r-xl); overflow: hidden; background: var(--mv-surface); border: 1px solid var(--mv-border); box-shadow: var(--mv-shadow-sm); transition: transform var(--mv-base) var(--mv-ease), box-shadow var(--mv-base) ease, opacity .25s ease; }
.mv-pc:hover { transform: translateY(-4px); box-shadow: 0 18px 36px rgba(42,36,33,.14); }
.mv-pc.is-new { animation: mvResIn .35s ease both; }
.mv-pc.is-gone { opacity: 0; transform: scale(.96); }
.mv-pc-photo { position: relative; display: block; aspect-ratio: 3 / 4; background: var(--mv-sand-100); overflow: hidden; text-decoration: none !important; }
.mv-pc-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 18%; transition: transform .5s var(--mv-ease); }
.mv-pc:hover .mv-pc-photo img { transform: scale(1.05); }
.mv-pc-photo::after { content: ""; position: absolute; inset: 45% 0 0; background: linear-gradient(180deg, rgba(20,10,12,0) 0%, rgba(20,10,12,.82) 100%); pointer-events: none; }
.mv-pc-photo.is-ph::after { inset: 55% 0 0; background: linear-gradient(180deg, rgba(110,31,40,0) 0%, rgba(110,31,40,.7) 100%); }
.mv-pc-ph { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; padding-bottom: 30%; color: var(--mv-wine-300); background: radial-gradient(120% 80% at 50% 0%, var(--mv-wine-50), var(--mv-sand-100)); }
.mv-pc-ph .mv-i { width: 40px; height: 40px; stroke-width: 1.5; }
.mv-pc-ph small { font-size: 12.5px; color: var(--mv-text-3); }
.mv-pc-online { position: absolute; left: 12px; top: 12px; z-index: 1; display: inline-flex; align-items: center; gap: 5px; height: 24px; padding: 0 10px 0 8px; border-radius: 12px; background: rgba(255,255,255,.95); color: var(--mv-success); font-size: 11.5px; font-weight: 700; box-shadow: 0 2px 8px rgba(0,0,0,.15); }
.mv-pc-online::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--mv-success); box-shadow: 0 0 0 3px rgba(47,122,79,.18); }
.mv-pc-over { position: absolute; left: 14px; right: 14px; bottom: 12px; z-index: 1; display: flex; flex-direction: column; gap: 2px; color: #fff; text-shadow: 0 1px 3px rgba(0,0,0,.35); }
.mv-pc-over b { font-family: var(--mv-font-head); font-size: 19px; font-weight: 600; letter-spacing: .01em; }
.mv-pc-over span { font-size: 13px; opacity: .95; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mv-pc-loc { display: inline-flex; align-items: center; gap: 4px; }
.mv-pc-loc::before { content: ""; width: 12px; height: 12px; flex: none; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%222.2%22%3E%3Cpath d=%22M20 10c0 5-5.5 10.2-7.4 11.8a1 1 0 0 1-1.2 0C9.5 20.2 4 15 4 10a8 8 0 0 1 16 0%22/%3E%3Ccircle cx=%2212%22 cy=%2210%22 r=%223%22/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%222.2%22%3E%3Cpath d=%22M20 10c0 5-5.5 10.2-7.4 11.8a1 1 0 0 1-1.2 0C9.5 20.2 4 15 4 10a8 8 0 0 1 16 0%22/%3E%3Ccircle cx=%2212%22 cy=%2210%22 r=%223%22/%3E%3C/svg%3E") center / contain no-repeat; }
.mv-pc-meta { margin: 0 !important; padding: 10px 14px 0; font-size: 12.5px; color: var(--mv-text-2); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mv-pc-act { display: flex; align-items: center; gap: 6px; padding: 10px 12px 12px; margin-top: auto; }
.mv-pc-act input[type=hidden] { display: none; }
.mv-pc-act .mv-pc-main { flex: 1; min-width: 0; display: inline-flex !important; align-items: center; justify-content: center; gap: 6px; height: 38px; padding: 0 10px !important; border-radius: var(--mv-r-pill) !important; background: var(--mv-primary) !important; border: 0 !important; color: var(--mv-on-primary) !important; font-size: 13.5px !important; font-weight: 600 !important; text-transform: none !important; text-decoration: none !important; white-space: nowrap; box-shadow: 0 6px 14px rgba(163,52,58,.22) !important; transition: transform var(--mv-fast) ease, background var(--mv-fast) ease; }
.mv-pc-act .mv-pc-main:hover { background: var(--mv-wine-400) !important; transform: translateY(-1px); }
.mv-pc-act .mv-pc-main span { overflow: hidden; text-overflow: ellipsis; }
.mv-pc-act .mv-pc-main.is-done, .mv-pc-act .mv-pc-main[style*="none"] + .mv-pc-ic { background: var(--mv-success-bg) !important; color: var(--mv-success) !important; box-shadow: none !important; }
.mv-pc-act .mv-pc-view { background: var(--mv-surface) !important; color: var(--mv-wine-500) !important; border: 1px solid var(--mv-wine-200) !important; box-shadow: none !important; }
.mv-pc-act .gt-btn-green.mv-pc-main { background: var(--mv-wine-50) !important; color: var(--mv-wine-500) !important; box-shadow: none !important; border: 1px solid var(--mv-wine-200) !important; }
.mv-pc-ic { flex: none; width: 38px; height: 38px; border-radius: 50%; display: grid !important; place-items: center; border: 1px solid var(--mv-border); background: var(--mv-surface); color: var(--mv-wine-500) !important; text-decoration: none !important; transition: background var(--mv-fast) ease, border-color var(--mv-fast) ease, transform var(--mv-fast) ease; }
.mv-pc-ic:hover { background: var(--mv-wine-50); border-color: var(--mv-wine-200); transform: translateY(-1px); }
.mv-pc-ic.is-skip { color: var(--mv-text-3) !important; }
/* when a "send interest" handler hides its link after sending, show the card as sent */
.mv-pc-act:has(> a.mv-pc-main[style*="display: none"])::before { content: "Interest sent"; flex: 1; display: grid; place-items: center; height: 38px; border-radius: var(--mv-r-pill); background: var(--mv-success-bg); color: var(--mv-success); font-size: 13px; font-weight: 600; }

/* loading placeholders */
.mv-pc-skel { pointer-events: none; gap: 10px; padding-bottom: 14px; }
.mv-pc-skel i { display: block; height: 12px; margin: 0 14px; border-radius: 6px; background: var(--mv-sand-100); }
.mv-pc-skel i:first-child { height: auto; aspect-ratio: 3 / 4; margin: 0 0 4px; border-radius: 0; background: linear-gradient(160deg, var(--mv-sand-100), var(--mv-wine-50)); }
.mv-pc-skel i:last-child { width: 60%; height: 34px; border-radius: 17px; }

/* show more */
.mv-disc-more { display: flex; flex-direction: column; align-items: center; gap: 10px; margin-top: 8px; }
.mv-disc-more .mv-btn { min-height: 48px; padding: 0 28px; gap: 8px; font-size: 15px; }
.mv-disc-more .mv-btn.is-busy { opacity: .7; cursor: progress; }
.mv-disc-all { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 600; color: var(--mv-wine-500) !important; text-decoration: none !important; }

@media (max-width: 991.98px) { .mv-disc-stats { order: 4; width: 100%; justify-content: space-between; } .mv-disc-me-cta { margin-left: auto; } }
@media (max-width: 575.98px) {
  .mv-disc-me { padding: 12px; gap: 12px; }
  .mv-disc-avatar { width: 54px; height: 54px; }
  .mv-disc-avatar img, .mv-disc-avatar > span { width: 44px; height: 44px; }
  .mv-disc-hello h1 { font-size: 19px; }
  .mv-disc-me-cta { width: 100%; }
  .mv-disc-me-cta .mv-btn, .mv-disc-me-cta form, .mv-disc-me-cta form .mv-btn { flex: 1; width: 100%; justify-content: center; }
  .mv-disc-stats a { min-width: 0; flex: 1; padding: 6px 2px; }
  .mv-disc-stats small { font-size: 10.5px; }
  .mv-disc-head h2 { font-size: 20px; }
  .mv-disc-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .mv-pc { border-radius: var(--mv-r-lg); }
  .mv-pc-over { left: 10px; right: 10px; bottom: 8px; }
  .mv-pc-over b { font-size: 16px; }
  .mv-pc-over span { font-size: 12px; }
  .mv-pc-meta { display: none; }
  .mv-pc-act { padding: 8px; gap: 4px; flex-wrap: wrap; }
  .mv-pc-act .mv-pc-main { flex-basis: 100%; height: 34px; font-size: 12.5px !important; }
  .mv-pc-ic { width: 32px; height: 32px; flex: 1; border-radius: 16px; }
}
/* cards v2: quick actions on the photo, full-width main button */
.mv-pc-quick { position: absolute; right: 10px; top: 10px; z-index: 2; display: flex; flex-direction: column; gap: 6px; }
.mv-pc-quick .mv-pc-ic { width: 34px; height: 34px; border: 0; background: rgba(255,255,255,.94); box-shadow: 0 2px 8px rgba(0,0,0,.18); }
.mv-pc-quick .mv-pc-ic:hover { background: var(--mv-primary); color: var(--mv-on-primary) !important; }
.mv-pc-act .mv-pc-main { width: 100%; }
.mv-pc-act .mv-pc-main:not(:has(span)) { overflow: hidden; text-overflow: ellipsis; }
.mv-disc-avatar > span .mv-i { width: 24px !important; height: 24px !important; }
/* phones: never wider than the screen */
.mv-disc .mv-app-main > *, .mv-disc-main > *, .mv-disc-pane, .mv-disc-grid > * { min-width: 0; }
@media (max-width: 575.98px) {
  .mv-disc-me { display: grid; grid-template-columns: auto minmax(0, 1fr); }
  .mv-disc-hello { flex: none; }
  .mv-disc-hello p { font-size: 12.5px; }
  .mv-disc-stats { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 2px; width: auto; }
  .mv-disc-me-cta { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; margin: 0; }
  .mv-disc-me-cta:has(> :only-child) { grid-template-columns: 1fr; }
  .mv-disc-head { display: grid; gap: 10px; }
  .mv-pc-quick { right: 6px; top: 6px; gap: 4px; }
  .mv-pc-quick .mv-pc-ic { width: 30px; height: 30px; flex: none; }
  .mv-pc-online { left: 8px; top: 8px; }
}
.mv-disc-avatar > span svg { position: static !important; inset: auto; transform: none !important; width: 24px !important; height: 24px !important; }
/* member header: menus after the logo, account actions pushed to the right edge */
.mv-hm .mv-hm-top-in { width: 100%; }
.mv-hm .mv-hm-actions { margin-left: auto !important; }
.mv-hm .mv-hm-bell b { top: -2px; right: -4px; }

/* My profile: "Latest activity" as a grid of small cards */
.mv-app-noti-list { background: none !important; border: 0 !important; box-shadow: none !important; padding: 0 !important; max-height: none !important; overflow: visible !important; }
.mv-app-noti-list #notifictionlist1 { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 12px; }
.mv-app-noti-list #notifictionlist1 > li { display: block !important; border: 1px solid var(--mv-border) !important; border-radius: var(--mv-r-lg); background: var(--mv-surface); box-shadow: var(--mv-shadow-sm); transition: border-color var(--mv-fast) ease, transform var(--mv-fast) ease; }
.mv-app-noti-list #notifictionlist1 > li:nth-child(n+10) { display: none !important; }
.mv-app-noti-list #notifictionlist1 > li:hover { border-color: var(--mv-wine-200) !important; transform: translateY(-1px); }
.mv-app-noti-list #notifictionlist1 > li > .row { display: flex; align-items: center; flex-wrap: nowrap; margin: 0 !important; padding: 12px 10px 12px 14px !important; gap: 12px; }
.mv-app-noti-list #notifictionlist1 > li > .row > [class*="col"] { padding: 0 !important; flex: 0 0 auto; max-width: none; }
.mv-app-noti-list #notifictionlist1 > li > .row > .col { flex: 1 1 auto; min-width: 0; }
.mv-app-noti-list .noti-list-icon { width: 46px !important; height: 46px !important; border-radius: 50% !important; overflow: hidden; background: var(--mv-wine-50); box-shadow: 0 0 0 2px var(--mv-surface), 0 0 0 3.5px var(--mv-wine-100); }
.mv-app-noti-list .noti-list-icon img { width: 100% !important; height: 100% !important; object-fit: cover !important; object-position: 50% 20% !important; border-radius: 50%; }
.mv-app-noti-list .top-text-heading { font-size: 14px !important; line-height: 1.4; color: var(--mv-text-2) !important; margin: 0 0 3px !important; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.mv-app-noti-list .top-text-heading a { color: var(--mv-text) !important; font-weight: 600; text-decoration: none !important; }
.mv-app-noti-list .top-text-heading a:hover { color: var(--mv-wine-500) !important; }
.mv-app-noti-list .noti-time { display: inline-flex; align-items: center; gap: 5px; font-size: 12px !important; color: var(--mv-text-3) !important; }
.mv-app-noti-list .noti-time::before { content: ""; width: 12px; height: 12px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%222%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%2210%22/%3E%3Cpath d=%22M12 6v6l4 2%22/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%222%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%2210%22/%3E%3Cpath d=%22M12 6v6l4 2%22/%3E%3C/svg%3E") center / contain no-repeat; }
.mv-app-noti-list [onclick^="deletenoti_second"] { width: 32px; height: 32px; border-radius: 50%; display: grid !important; place-items: center; cursor: pointer; opacity: 0; transition: opacity var(--mv-fast) ease, background var(--mv-fast) ease; }
.mv-app-noti-list li:hover [onclick^="deletenoti_second"], .mv-app-noti-list [onclick^="deletenoti_second"]:focus-within { opacity: 1; }
.mv-app-noti-list [onclick^="deletenoti_second"]:hover { background: var(--mv-error-bg); }
.mv-app-noti-list [onclick^="deletenoti_second"] a { display: grid; place-items: center; margin: 0 !important; color: var(--mv-text-3) !important; text-decoration: none !important; }
.mv-app-noti-list [onclick^="deletenoti_second"]:hover a { color: var(--mv-error) !important; }
.mv-app-noti-list [onclick^="deletenoti_second"] i.fa { display: none !important; }
.mv-app-noti-list [onclick^="deletenoti_second"] a::before { content: ""; width: 16px; height: 16px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%222%22 stroke-linecap=%22round%22%3E%3Cpath d=%22M3 6h18M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2%22/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%222%22 stroke-linecap=%22round%22%3E%3Cpath d=%22M3 6h18M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2%22/%3E%3C/svg%3E") center / contain no-repeat; }
@media (hover: none) { .mv-app-noti-list [onclick^="deletenoti_second"] { opacity: 1; } }
.mv-app-noti .mv-dash-sec-head { margin-top: 8px; }
.mv-app-noti .mv-dash-sec-head h2 { font-size: 22px; }
@media (max-width: 575.98px) { .mv-app-noti-list #notifictionlist1 { grid-template-columns: 1fr; gap: 8px; } .mv-app-noti-list #notifictionlist1 > li:nth-child(n+6) { display: none !important; } }
/* activity: if a photo file is missing, show a soft person icon instead of the image's alt text */
.mv-app-noti-list .noti-list-icon { position: relative; background: var(--mv-wine-50) url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23DA9694%22 stroke-width=%221.8%22 stroke-linecap=%22round%22%3E%3Ccircle cx=%2212%22 cy=%228%22 r=%224%22/%3E%3Cpath d=%22M5 21a7 7 0 0 1 14 0%22/%3E%3C/svg%3E") center / 22px no-repeat !important; }
.mv-app-noti-list .noti-list-icon img { color: transparent !important; font-size: 0 !important; text-indent: -999px; }

/* member header: menus centred between the logo and the account actions */
@media (min-width: 1200px) { .mv-hm .mv-hm-nav { margin-left: auto !important; margin-right: auto !important; } .mv-hm .mv-hm-actions { margin-left: 0 !important; } }

/* =====================================================================
   NOTIFICATIONS PANEL (slides in from the right)
   ===================================================================== */
.mv-noti-veil { position: fixed; inset: 0; z-index: 1100; background: rgba(42,36,33,.35); opacity: 0; transition: opacity .3s ease; }
body.mv-noti-on .mv-noti-veil { opacity: 1; }
.mv-noti-panel { position: fixed; top: 0; right: 0; bottom: 0; z-index: 1101; width: min(420px, 100vw); display: flex; flex-direction: column; background: var(--mv-surface); box-shadow: -18px 0 40px rgba(42,36,33,.18); transform: translateX(105%); transition: transform .35s var(--mv-ease); outline: none; }
body.mv-noti-on .mv-noti-panel { transform: none; }
body.mv-noti-on { overflow: hidden; }
.mv-noti-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 20px 20px 16px; border-bottom: 1px solid var(--mv-border); background: linear-gradient(180deg, var(--mv-wine-50), var(--mv-surface)); }
.mv-noti-head b { display: block; font-family: var(--mv-font-head); font-size: 20px; font-weight: 600; color: var(--mv-text); }
.mv-noti-head small { font-size: 13px; color: var(--mv-text-2); }
.mv-noti-x { width: 38px; height: 38px; border-radius: 50%; border: 1px solid var(--mv-border); background: var(--mv-surface); color: var(--mv-text-2); display: grid; place-items: center; cursor: pointer; }
.mv-noti-x:hover { color: var(--mv-wine-500); border-color: var(--mv-wine-200); }
.mv-noti-list { flex: 1; overflow-y: auto; list-style: none; margin: 0 !important; padding: 8px 10px !important; }
.mv-noti-list > li { border-radius: var(--mv-r-lg); opacity: 0; transform: translateX(16px); transition: background var(--mv-fast) ease; }
body.mv-noti-on .mv-noti-list > li { animation: mvNotiIn .35s var(--mv-ease) forwards; }
body.mv-noti-on .mv-noti-list > li:nth-child(1) { animation-delay: .08s; } body.mv-noti-on .mv-noti-list > li:nth-child(2) { animation-delay: .12s; } body.mv-noti-on .mv-noti-list > li:nth-child(3) { animation-delay: .16s; } body.mv-noti-on .mv-noti-list > li:nth-child(4) { animation-delay: .2s; } body.mv-noti-on .mv-noti-list > li:nth-child(5) { animation-delay: .24s; } body.mv-noti-on .mv-noti-list > li:nth-child(n+6) { animation-delay: .28s; }
@keyframes mvNotiIn { to { opacity: 1; transform: none; } }
.mv-noti-list > li:hover { background: var(--mv-sand-100); }
.mv-noti-list > li > .row { display: flex; align-items: center; flex-wrap: nowrap; margin: 0 !important; padding: 10px 8px !important; gap: 12px; }
.mv-noti-list > li > .row > [class*="col"] { padding: 0 !important; flex: 0 0 auto; max-width: none; }
.mv-noti-list > li > .row > .col { flex: 1 1 auto; min-width: 0; }
.mv-noti-list .noti-list-icon { width: 46px !important; height: 46px !important; border-radius: 50% !important; overflow: hidden; background: var(--mv-wine-50) url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23DA9694%22 stroke-width=%221.8%22 stroke-linecap=%22round%22%3E%3Ccircle cx=%2212%22 cy=%228%22 r=%224%22/%3E%3Cpath d=%22M5 21a7 7 0 0 1 14 0%22/%3E%3C/svg%3E") center / 22px no-repeat !important; box-shadow: 0 0 0 2px var(--mv-surface), 0 0 0 3.5px var(--mv-wine-100); }
.mv-noti-list .noti-list-icon img { width: 100% !important; height: 100% !important; object-fit: cover !important; object-position: 50% 20% !important; border-radius: 50%; color: transparent !important; font-size: 0 !important; }
.mv-noti-list .top-text-heading { font-size: 14px !important; line-height: 1.4; color: var(--mv-text-2) !important; margin: 0 0 3px !important; }
.mv-noti-list .top-text-heading a { color: var(--mv-text) !important; font-weight: 600; text-decoration: none !important; }
.mv-noti-list .top-text-heading a:hover { color: var(--mv-wine-500) !important; }
.mv-noti-list .noti-time { font-size: 12px !important; color: var(--mv-text-3) !important; }
.mv-noti-list [onclick^="deletenoti_second"] { width: 32px; height: 32px; border-radius: 50%; display: grid !important; place-items: center; cursor: pointer; opacity: .55; transition: opacity var(--mv-fast) ease, background var(--mv-fast) ease; }
.mv-noti-list li:hover [onclick^="deletenoti_second"] { opacity: 1; }
.mv-noti-list [onclick^="deletenoti_second"]:hover { background: var(--mv-error-bg); }
.mv-noti-list [onclick^="deletenoti_second"] a { display: grid; place-items: center; margin: 0 !important; color: var(--mv-text-3) !important; text-decoration: none !important; }
.mv-noti-list [onclick^="deletenoti_second"]:hover a { color: var(--mv-error) !important; }
.mv-noti-list [onclick^="deletenoti_second"] i.fa { display: none !important; }
.mv-noti-list [onclick^="deletenoti_second"] a::before { content: ""; width: 16px; height: 16px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%222%22 stroke-linecap=%22round%22%3E%3Cpath d=%22M3 6h18M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2%22/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22black%22 stroke-width=%222%22 stroke-linecap=%22round%22%3E%3Cpath d=%22M3 6h18M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2%22/%3E%3C/svg%3E") center / contain no-repeat; }
.mv-noti-empty { padding: 30px 16px; text-align: center; font-size: 14px; color: var(--mv-text-3); opacity: 1 !important; transform: none !important; }
.mv-noti-all { display: flex; align-items: center; justify-content: center; gap: 6px; margin: 0 16px 16px; min-height: 46px; border-radius: var(--mv-r-md); background: var(--mv-primary); color: var(--mv-on-primary) !important; font-weight: 600; text-decoration: none !important; }
.mv-noti-all:hover { background: var(--mv-wine-400); }
@media (prefers-reduced-motion: reduce) { .mv-noti-panel, .mv-noti-veil { transition: none; } .mv-noti-list > li { opacity: 1; transform: none; animation: none !important; } }

/* =====================================================================
   CHAT BUTTONS (legacy radio-button bar restyled as two floating pills)
   ===================================================================== */
.chat_buttons { right: 92px !important; bottom: 30px !important; height: auto !important; }
.chat_buttons_box { gap: 8px; }
.chat_buttons .custom-control { position: static !important; margin: 0 !important; }
.chat_buttons .custom-control-label { position: static !important; display: block; width: auto !important; height: auto !important; padding: 0 !important; margin: 0 !important; cursor: pointer; }
.chat_buttons .custom-control-label::before { display: none !important; }
.chat_buttons .custom-control-label::after { position: static !important; transform: none !important; display: inline-flex !important; align-items: center; justify-content: center; width: auto !important; height: 44px !important; padding: 0 18px 0 40px !important; border-radius: 22px !important; border: 1px solid var(--mv-border) !important; background-color: var(--mv-surface) !important; background-repeat: no-repeat !important; background-position: 16px center !important; background-size: 17px 17px !important; color: var(--mv-text) !important; font: 600 14px/1 var(--mv-font-body) !important; box-shadow: 0 8px 22px rgba(42,36,33,.16) !important; transition: transform var(--mv-fast) ease, box-shadow var(--mv-fast) ease; }
.chat_buttons .custom-control-label:hover::after { transform: translateY(-2px) !important; box-shadow: 0 12px 26px rgba(42,36,33,.2) !important; }
.chat_buttons .custom-radio-chat .custom-control-label::after { content: "Chats" !important; background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23A3343A%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M7.9 20A9 9 0 1 0 4 16.1L2 22Z%22/%3E%3C/svg%3E") !important; }
.chat_buttons .custom-radio-active .custom-control-label::after { content: "Online" !important; background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%225%22 fill=%22%232F7A4F%22/%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%229%22 fill=%22none%22 stroke=%22%232F7A4F%22 stroke-opacity=%22.3%22 stroke-width=%222%22/%3E%3C/svg%3E") !important; }
.chat_buttons .custom-control-input:checked ~ .custom-control-label::after { background-color: var(--mv-primary) !important; border-color: var(--mv-primary) !important; color: var(--mv-on-primary) !important; }
@media (max-width: 767.98px) {
  .chat_buttons { right: 84px !important; bottom: 80px !important; }
  .chat_buttons .custom-control-label::after { height: 40px !important; padding: 0 14px 0 34px !important; background-position: 12px center !important; font-size: 13px !important; }
}

/* initials when a member has no photo */
.mv-initials { display: grid !important; place-items: center; border-radius: 50%; background: linear-gradient(135deg, var(--mv-wine-400), var(--mv-wine-500)) !important; color: var(--mv-ivory-0) !important; font-family: var(--mv-font-head); font-weight: 600; letter-spacing: .02em; }
.mv-disc-avatar > .mv-initials { font-size: 19px; }
.mv-hm-init { width: 36px; height: 36px; font-size: 14px; box-shadow: 0 0 0 2px var(--mv-surface), 0 0 0 3.5px var(--mv-wine-200); }
.mv-hm-init.is-lg { width: 48px; height: 48px; font-size: 18px; flex: none; }
/* gender placeholder pictures, and the protected-photo look */
.mv-pc-ph { padding-bottom: 0 !important; background: none !important; }
.mv-pc-ph > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 30%; }
.mv-pc-ph > small { position: relative; z-index: 1; margin-top: -30%; padding: 4px 10px; border-radius: 12px; background: rgba(255,255,255,.85); color: var(--mv-text-2) !important; font-weight: 500; }
.mv-pc-ph.is-lock > img { filter: blur(6px) saturate(.9); transform: scale(1.1); }
.mv-pc-lock { position: relative; z-index: 1; width: 58px; height: 58px; margin-top: -30%; border-radius: 50%; display: grid; place-items: center; color: var(--mv-wine-500); background: rgba(255,255,255,.85); box-shadow: 0 0 0 6px rgba(255,255,255,.35), var(--mv-shadow-md); }
.mv-pc-lock .mv-i { width: 24px !important; height: 24px !important; }
.mv-pc-ph.is-lock > small { margin-top: 10px; }
.mv-pc-photo.is-ph::after { inset: 55% 0 0; background: linear-gradient(180deg, rgba(20,10,12,0) 0%, rgba(20,10,12,.6) 100%); }
/* chat buttons: beat the legacy ":checked ~ label::before" circle and its phone sizing */
html body .chat_buttons .custom-control .custom-control-input:not(#mv-x) ~ .custom-control-label::before { display: none !important; content: none !important; }
html body .chat_buttons .gif_box { display: none !important; }
@media (max-width: 576px) {
  html body .chat_buttons, html body .chat_buttons .chat_buttons_box, html body .chat_buttons .chat_buttons_box .custom-control { width: auto !important; height: auto !important; }
  html body .chat_buttons { right: 80px !important; left: auto !important; }
}
body.mv-noti-on .chat_buttons, body.mv-noti-on .mv-whatsapp { visibility: hidden; }
/* no-photo placeholder: the picture says it; keep the caption only for protected photos */
.mv-pc-ph:not(.is-lock) > small { display: none; }
/* chat pills: higher priority than the legacy rules (custom.css loads later) */
html body .chat_buttons .custom-control:not(#mv-x) .custom-control-label::after { position: static !important; transform: none !important; left: auto !important; bottom: auto !important; display: inline-flex !important; align-items: center; justify-content: center; width: auto !important; height: 44px !important; padding: 0 18px 0 40px !important; border-radius: 22px !important; border: 1px solid var(--mv-border) !important; background-color: var(--mv-surface) !important; background-repeat: no-repeat !important; background-position: 16px center !important; background-size: 17px 17px !important; color: var(--mv-text) !important; font: 600 14px/1 var(--mv-font-body) !important; box-shadow: 0 8px 22px rgba(42,36,33,.16) !important; }
html body .chat_buttons .custom-radio-chat:not(#mv-x) .custom-control-label::after { content: "Chats" !important; background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23A3343A%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M7.9 20A9 9 0 1 0 4 16.1L2 22Z%22/%3E%3C/svg%3E") !important; }
html body .chat_buttons .custom-radio-active:not(#mv-x) .custom-control-label::after { content: "Online" !important; background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%225%22 fill=%22%232F7A4F%22/%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%229%22 fill=%22none%22 stroke=%22%232F7A4F%22 stroke-opacity=%22.3%22 stroke-width=%222%22/%3E%3C/svg%3E") !important; }
html body .chat_buttons .custom-control:not(#mv-x) .custom-control-input:checked ~ .custom-control-label::after { background-color: var(--mv-primary) !important; border-color: var(--mv-primary) !important; color: var(--mv-on-primary) !important; }
@media (max-width: 767.98px) {
  html body .chat_buttons .custom-control:not(#mv-x) .custom-control-label::after { height: 38px !important; padding: 0 12px 0 32px !important; background-position: 11px center !important; font-size: 13px !important; }
  html body .chat_buttons { bottom: 78px !important; right: 80px !important; }
}
@media (max-width: 575.98px) { .mv-hm .mv-user { display: none !important; } .mv-hm .mv-hm-actions { gap: 6px !important; } }
/* new portrait placeholders: show the whole picture */
.mv-pc-ph > img { object-position: 50% 15% !important; }
/* header: bell count and account button spacing (no overlap) */
.mv-hm .mv-hm-actions { gap: 12px !important; }
.mv-hm .mv-hm-bell { position: relative; overflow: visible; }
.mv-hm .mv-hm-bell b { top: -4px !important; right: -6px !important; z-index: 2; }
.mv-hm .mv-hm-user { display: inline-flex !important; align-items: center; gap: 8px !important; }
.mv-hm .mv-hm-user > img, .mv-hm .mv-hm-user > .mv-hm-init { flex: none; }
.mv-hm .mv-hm-user-t { min-width: 0; }
.mv-hm .mv-hm-user .mv-hm-init { width: 36px !important; height: 36px !important; min-width: 36px; position: static !important; margin: 0 !important; }
.mv-hm .mv-hm-user-t { position: static !important; }
/* "you" avatar: photo/initials exactly centred inside the completion ring */
.mv-disc-avatar > img, .mv-disc-avatar > span { position: absolute !important; left: 6px !important; top: 6px !important; width: 52px !important; height: 52px !important; margin: 0 !important; }
.mv-disc-avatar > svg { position: absolute !important; inset: 0 !important; }
@media (max-width: 575.98px) { .mv-disc-avatar > img, .mv-disc-avatar > span { left: 5px !important; top: 5px !important; width: 44px !important; height: 44px !important; font-size: 16px !important; } }
.mv-pc-ph > img { object-position: 50% 0 !important; }
/* activity stats with icons */
.mv-disc-stats a { flex-direction: row !important; align-items: center; gap: 10px; min-width: 0 !important; padding: 8px 12px !important; border: 1px solid transparent; }
.mv-disc-stats a:hover { border-color: var(--mv-border); }
.mv-stat-ic { width: 38px; height: 38px; flex: none; border-radius: 12px; display: grid; place-items: center; background: var(--mv-sand-100); color: var(--mv-text-2); transition: transform var(--mv-base) var(--mv-ease); }
.mv-disc-stats a.has-new .mv-stat-ic { background: var(--mv-wine-50); color: var(--mv-wine-500); }
.mv-disc-stats a:hover .mv-stat-ic { transform: translateY(-2px) rotate(-6deg); }
.mv-stat-t { display: flex; flex-direction: column; align-items: flex-start; line-height: 1.1; }
.mv-disc-stats a.has-new .mv-stat-ic { animation: mvStatPop .5s var(--mv-ease) both; }
.mv-disc-stats a:nth-child(2) .mv-stat-ic { animation-delay: .08s; } .mv-disc-stats a:nth-child(3) .mv-stat-ic { animation-delay: .16s; } .mv-disc-stats a:nth-child(4) .mv-stat-ic { animation-delay: .24s; } .mv-disc-stats a:nth-child(5) .mv-stat-ic { animation-delay: .32s; }
@keyframes mvStatPop { from { transform: scale(.6); opacity: 0; } to { transform: none; opacity: 1; } }
@media (max-width: 575.98px) { .mv-disc-stats a { flex-direction: column !important; gap: 4px; padding: 6px 2px !important; } .mv-stat-ic { width: 30px; height: 30px; border-radius: 9px; } .mv-stat-t { align-items: center; } }
@media (prefers-reduced-motion: reduce) { .mv-disc-stats a .mv-stat-ic { animation: none !important; } }
/* no-photo avatar: keep the badge centred in the upper part of the card */
.mv-pc-ph > img { object-position: 50% 20% !important; }
/* activity stats v3: coloured pills, number only (label in the tooltip) */
.mv-disc-stats { gap: 8px !important; }
.mv-disc-stats a { gap: 8px !important; padding: 5px 14px 5px 5px !important; border-radius: 999px !important; border: 1px solid transparent !important; background: var(--mv-st-bg, var(--mv-sand-100)); transition: transform var(--mv-fast) ease, box-shadow var(--mv-fast) ease !important; }
.mv-disc-stats a:hover { transform: translateY(-2px); box-shadow: 0 8px 18px rgba(42,36,33,.12); background: var(--mv-st-bg, var(--mv-sand-100)) !important; }
.mv-disc-stats small { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.mv-disc-stats .mv-stat-ic { width: 34px !important; height: 34px !important; border-radius: 50% !important; background: var(--mv-st, var(--mv-text-2)) !important; color: #fff !important; box-shadow: 0 4px 10px var(--mv-st-sh, rgba(0,0,0,.12)); }
.mv-disc-stats b { font-size: 20px !important; color: var(--mv-st, var(--mv-text)) !important; }
.mv-disc-stats a:nth-child(1) { --mv-st: #A3343A; --mv-st-bg: #FBEDEC; --mv-st-sh: rgba(163,52,58,.3); }
.mv-disc-stats a:nth-child(2) { --mv-st: #B5651D; --mv-st-bg: #FBF0E4; --mv-st-sh: rgba(181,101,29,.3); }
.mv-disc-stats a:nth-child(3) { --mv-st: #6B4FA0; --mv-st-bg: #F1ECF8; --mv-st-sh: rgba(107,79,160,.3); }
.mv-disc-stats a:nth-child(4) { --mv-st: #2B7A8C; --mv-st-bg: #E8F4F6; --mv-st-sh: rgba(43,122,140,.3); }
.mv-disc-stats a:nth-child(5) { --mv-st: #2F7A4F; --mv-st-bg: #E9F4EE; --mv-st-sh: rgba(47,122,79,.3); }
.mv-disc-stats a:not(.has-new) { --mv-st: #8A817B; --mv-st-bg: var(--mv-sand-100); --mv-st-sh: rgba(0,0,0,.08); }
.mv-disc-stats a { position: relative; }
.mv-disc-stats a::after { content: attr(title); position: absolute; left: 50%; top: calc(100% + 8px); transform: translateX(-50%) translateY(4px); white-space: nowrap; padding: 4px 9px; border-radius: 6px; background: var(--mv-text); color: var(--mv-surface); font-size: 12px; opacity: 0; pointer-events: none; transition: opacity .15s ease, transform .15s ease; z-index: 5; }
.mv-disc-stats a:hover::after { opacity: 1; transform: translateX(-50%); }
@media (max-width: 575.98px) { .mv-disc-stats { display: flex !important; justify-content: space-between; } .mv-disc-stats a { flex-direction: row !important; padding: 4px 10px 4px 4px !important; flex: none; } .mv-disc-stats .mv-stat-ic { width: 28px !important; height: 28px !important; } .mv-disc-stats b { font-size: 16px !important; } }
/* "explore more" filler cards */
.mv-pc-more { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; min-height: 300px; padding: 22px; text-align: center; border: 2px dashed var(--mv-wine-200); background: linear-gradient(160deg, var(--mv-wine-50), var(--mv-surface)); text-decoration: none !important; box-shadow: none; }
.mv-pc-more:hover { border-color: var(--mv-wine-500); }
.mv-pc-more span { width: 56px; height: 56px; border-radius: 50%; display: grid; place-items: center; background: var(--mv-primary); color: #fff; box-shadow: 0 8px 18px rgba(163,52,58,.28); }
.mv-pc-more b { font-size: 16px; color: var(--mv-text); }
.mv-pc-more small { font-size: 13px; color: var(--mv-text-2); }
/* stats v4: smaller pills, gently animated icons */
.mv-disc-stats { gap: 6px !important; }
.mv-disc-stats a { padding: 3px 11px 3px 3px !important; gap: 6px !important; }
.mv-disc-stats .mv-stat-ic { width: 28px !important; height: 28px !important; }
.mv-disc-stats .mv-stat-ic .mv-i { width: 14px !important; height: 14px !important; }
.mv-disc-stats b { font-size: 16px !important; }
.mv-disc-stats a.has-new .mv-stat-ic { animation: mvStatPop .5s var(--mv-ease) both, mvStatBeat 2.8s ease-in-out 1s infinite !important; }
.mv-disc-stats a:nth-child(2).has-new .mv-stat-ic { animation-delay: .08s, 1.4s !important; }
.mv-disc-stats a:nth-child(3).has-new .mv-stat-ic { animation-delay: .16s, 1.8s !important; }
.mv-disc-stats a:nth-child(4).has-new .mv-stat-ic { animation-delay: .24s, 2.2s !important; }
.mv-disc-stats a:nth-child(5).has-new .mv-stat-ic { animation-delay: .32s, 2.6s !important; }
@keyframes mvStatBeat { 0%, 70%, 100% { transform: none; } 76% { transform: scale(1.18) rotate(-8deg); } 82% { transform: scale(.95) rotate(4deg); } 88% { transform: scale(1.05); } }
.mv-disc-stats a.has-new .mv-stat-ic::after { content: ""; position: absolute; inset: -3px; border-radius: 50%; border: 2px solid var(--mv-st); opacity: 0; animation: mvStatRing 2.8s ease-out 1s infinite; }
.mv-disc-stats .mv-stat-ic { position: relative; }
@keyframes mvStatRing { 0%, 70% { opacity: 0; transform: scale(.9); } 75% { opacity: .5; } 100% { opacity: 0; transform: scale(1.5); } }
@media (prefers-reduced-motion: reduce) { .mv-disc-stats a .mv-stat-ic, .mv-disc-stats a .mv-stat-ic::after { animation: none !important; } }
/* suggested profiles in short tabs */
.mv-pc-sugg { position: absolute; left: 12px; top: 12px; z-index: 1; height: 24px; padding: 0 10px; border-radius: 12px; display: inline-flex; align-items: center; background: rgba(201,162,94,.95); color: #3b2a12; font-size: 11.5px; font-weight: 700; }
.mv-pc.is-suggest .mv-pc-online { top: 42px; }
.mv-pc-more { min-height: 0; aspect-ratio: auto; }
/* no black fills: active tab and tooltips use the brand wine colour */
.mv-disc-tabs button.is-on { background: var(--mv-primary) !important; border-color: var(--mv-primary) !important; color: var(--mv-on-primary) !important; box-shadow: 0 6px 14px rgba(163,52,58,.25); }
.mv-disc-tabs button.is-on span { background: rgba(255,255,255,.22) !important; color: #fff !important; }
.mv-disc-stats a::after, .mv-dash-cards .socia-icon > span { background: var(--mv-wine-500) !important; color: #fff !important; box-shadow: 0 6px 14px rgba(163,52,58,.25); }
.mv-res-ph.is-real { background: var(--mv-wine-50) !important; }
/* stats v5: simple and still (no animation) */
.mv-disc-stats a, .mv-disc-stats a .mv-stat-ic, .mv-disc-stats a .mv-stat-ic::after { animation: none !important; }
.mv-disc-stats a .mv-stat-ic::after { display: none !important; }
.mv-disc-stats a { background: var(--mv-surface) !important; border: 1px solid var(--mv-border) !important; padding: 3px 12px 3px 3px !important; transition: border-color var(--mv-fast) ease !important; }
.mv-disc-stats a:hover { transform: none !important; box-shadow: none !important; border-color: var(--mv-st, var(--mv-wine-200)) !important; }
.mv-disc-stats .mv-stat-ic { background: var(--mv-st-bg, var(--mv-sand-100)) !important; color: var(--mv-st, var(--mv-text-2)) !important; box-shadow: none !important; transform: none !important; }
.mv-disc-stats a:hover .mv-stat-ic { transform: none !important; }
.mv-disc-stats b { color: var(--mv-text) !important; font-weight: 600; }
/* empty tab: one slim full-width note above the suggested profiles */
.mv-disc-grid > .mv-disc-note { grid-column: 1 / -1; margin: 0 !important; padding: 12px 16px; border-radius: var(--mv-r-md); border: 1px solid var(--mv-border); background: var(--mv-surface); font-size: 14px; color: var(--mv-text-2); }
.mv-pc-more { display: none !important; }
.mv-pc-sugg { background: #9A7432 !important; color: #fff !important; letter-spacing: .02em; box-shadow: 0 2px 6px rgba(0,0,0,.2); }
/* account menu: initials circle beside the name, not on top of it */
.mv-user-card { display: flex !important; align-items: center; gap: 12px; }
.mv-user-card .mv-hm-init.is-lg { position: static !important; flex: none; width: 48px !important; height: 48px !important; margin: 0 !important; }
.mv-user-card > div { min-width: 0; }
.mv-user-card strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* =====================================================================
   CHAT PANELS (chat list, online list, chat window): new UI
   Markup and scripts are the original ones; only the look changes.
   ===================================================================== */
html body .chat_list_box.card, html body .active_list_box.card, html body .chat_box.card {
  position: fixed !important; right: 24px !important; bottom: 92px !important; left: auto !important; top: auto !important;
  width: 340px !important; max-width: calc(100vw - 32px) !important; height: min(520px, calc(100vh - 140px)) !important;
  border: 1px solid var(--mv-border) !important; border-radius: 18px !important; overflow: hidden;
  background: var(--mv-surface) !important; box-shadow: 0 24px 60px rgba(42,36,33,.22) !important; z-index: 1103 !important;
  font-family: var(--mv-font-body); animation: mvChatIn .25s var(--mv-ease) both;
}
@keyframes mvChatIn { from { opacity: 0; transform: translateY(10px) scale(.98); } to { opacity: 1; transform: none; } }
html body .chat_box.card { right: 380px !important; width: 360px !important; display: flex; flex-direction: column; }
@media (max-width: 1100px) { html body .chat_box.card { right: 24px !important; } }

/* header */
html body .chat_list_box .card-header, html body .active_list_box .card-header, html body #chatBoxHeader {
  background: linear-gradient(120deg, var(--mv-wine-500), var(--mv-wine-400)) !important; border: 0 !important; padding: 14px 16px !important; min-height: 56px;
}
html body .chat_list_box .card-header h6, html body .active_list_box .card-header h6 { font-size: 16px !important; font-weight: 600 !important; color: #fff !important; }
html body .chat_list_box .card-header h6::before { content: "Messages"; }
html body .chat_list_box .card-header h6 { font-size: 0 !important; }
html body .chat_list_box .card-header h6::before { font-size: 16px; }
html body .active_list_box .card-header h6 { font-size: 0 !important; }
html body .active_list_box .card-header h6::before { content: "Online now"; font-size: 16px; }
/* close buttons (legacy radio labels): a round white X */
html body .custom-radio-chat-list-close .custom-control-label, html body .custom-radio-active-list-close .custom-control-label { width: 30px !important; height: 30px !important; padding: 0 !important; border-radius: 50%; background: rgba(255,255,255,.18); cursor: pointer; position: relative !important; display: block; }
html body .custom-radio-chat-list-close .custom-control-label::before, html body .custom-radio-active-list-close .custom-control-label::before { display: none !important; }
html body .custom-radio-chat-list-close .custom-control-label::after, html body .custom-radio-active-list-close .custom-control-label::after { content: "" !important; position: absolute !important; inset: 0 !important; width: auto !important; height: auto !important; transform: none !important; border: 0 !important; background: center / 14px no-repeat url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22white%22 stroke-width=%222.4%22 stroke-linecap=%22round%22%3E%3Cpath d=%22M18 6 6 18M6 6l12 12%22/%3E%3C/svg%3E") !important; }

/* lists */
html body .chat_list_box .card-body, html body .active_list_box .card-body { padding: 6px !important; overflow-y: auto; height: calc(100% - 56px); background: var(--mv-surface); }
html body .chatlistuser > li, html body .activeuserlist > li { border-radius: 12px; cursor: pointer; border: 0 !important; transition: background var(--mv-fast) ease; }
html body .chatlistuser > li:hover, html body .activeuserlist > li:hover { background: var(--mv-sand-100); }
html body .chatlistuser .media, html body .activeuserlist .media { padding: 10px !important; gap: 12px; }
html body .chatlistuser .img_box, html body .activeuserlist .img_box { margin: 0 !important; flex: none; position: relative; }
html body .chatlistuser img.img-thumbnail, html body .activeuserlist img.img-thumbnail, html body #headerimgsrc { width: 44px !important; height: 44px !important; padding: 0 !important; border: 2px solid var(--mv-surface) !important; box-shadow: 0 0 0 1.5px var(--mv-wine-100); object-fit: cover; background: var(--mv-wine-50); }
html body .chatlistuser .user_name, html body .activeuserlist .user_name { font-size: 14.5px !important; font-weight: 600 !important; color: var(--mv-text) !important; }
html body .chatlistuser .date { font-size: 11.5px !important; color: var(--mv-text-3) !important; }
html body .chatlistuser .message { font-size: 13px !important; color: var(--mv-text-2) !important; }
html body .activeuserlist small { font-size: 12.5px !important; color: var(--mv-text-2) !important; }
html body .activeuserlist .online i.fa { color: var(--mv-success) !important; font-size: 10px !important; }
html body .chat_list_box .loading_box, html body .active_list_box .loading_box { background: transparent !important; }
html body #load_more1.btn { border-radius: 999px !important; background: var(--mv-wine-50) !important; border: 1px solid var(--mv-wine-200) !important; color: var(--mv-wine-500) !important; font-weight: 600 !important; padding: 6px 18px !important; text-transform: none !important; }

/* chat window */
html body #chatBoxHeader { padding: 10px 12px !important; }
html body #chatBoxHeader .userid { font-size: 15px !important; font-weight: 600 !important; color: #fff !important; }
html body #chatBoxHeader #status { font-size: 12px; color: rgba(255,255,255,.85) !important; }
html body #chatBoxHeader i.fa { color: #fff !important; border-radius: 50%; cursor: pointer; }
html body #chatBoxHeader i.fa:hover { background: rgba(255,255,255,.18); }
html body #chatBoxBody { flex: 1; background: var(--mv-bg) !important; overflow-y: auto; }
html body #chatBoxFooter { background: var(--mv-surface) !important; border-top: 1px solid var(--mv-border) !important; }
html body #chatBoxFooter #message { height: 42px !important; border-radius: 21px !important; border: 1px solid var(--mv-border-strong) !important; padding: 0 44px 0 16px !important; font-size: 14px !important; background: var(--mv-sand-100) !important; }
html body #chatBoxFooter #message:focus { background: var(--mv-surface) !important; border-color: var(--mv-wine-500) !important; box-shadow: 0 0 0 3px var(--mv-wine-100) !important; }

@media (max-width: 767.98px) {
  html body .chat_list_box.card, html body .active_list_box.card, html body .chat_box.card { right: 12px !important; left: 12px !important; width: auto !important; bottom: 128px !important; height: min(480px, calc(100vh - 200px)) !important; }
}
html body .chatlistuser .media-body, html body .activeuserlist .media-body { flex: 1 1 auto; min-width: 0; }
html body .chatlistuser .media, html body .activeuserlist .media { display: flex !important; }

/* =====================================================================
   MEMBER INNER PAGES: new look for the old building blocks
   (scoped to .mv-member, set on #main by navbar-login.php)
   ===================================================================== */
.mv-member { background: var(--mv-bg); font-family: var(--mv-font-body); }
.mv-member > .container-fluid, .mv-member > .container, .mv-member .gt-view-profile { max-width: 1320px !important; margin: 0 auto !important; padding: 24px 20px 56px !important; }
.mv-member .container-fluid-max-1340, .mv-member .container-fluid-max-1640 { max-width: 1320px !important; }

/* side menu */
.mv-mnav { position: sticky; top: 88px; display: grid; gap: 12px; margin-top: 0; }
.mv-mnav-me { display: flex; align-items: center; gap: 12px; padding: 14px; border-radius: var(--mv-r-lg); background: var(--mv-surface); border: 1px solid var(--mv-border); box-shadow: var(--mv-shadow-sm); }
.mv-mnav-pic { flex: none; width: 52px; height: 52px; border-radius: 50%; overflow: hidden; display: block; box-shadow: 0 0 0 2px var(--mv-surface), 0 0 0 3.5px var(--mv-wine-200); }
.mv-mnav-pic img, .mv-mnav-pic .mv-initials { width: 100%; height: 100%; object-fit: cover; font-size: 18px; }
.mv-mnav-me b { display: block; font-size: 15px; color: var(--mv-text); max-width: 180px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mv-mnav-me small { font-size: 12.5px; color: var(--mv-text-3); }
.mv-mnav nav { padding: 8px; border-radius: var(--mv-r-lg); background: var(--mv-surface); border: 1px solid var(--mv-border); box-shadow: var(--mv-shadow-sm); }
.mv-mnav-h { margin: 10px 10px 4px !important; font-size: 11.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--mv-text-3); }
.mv-mnav-h:first-child { margin-top: 4px !important; }
.mv-mnav nav a { display: flex; align-items: center; gap: 10px; padding: 8px 10px; border-radius: 10px; color: var(--mv-text-2) !important; font-size: 14px; font-weight: 500; text-decoration: none !important; transition: background var(--mv-fast) ease, color var(--mv-fast) ease; }
.mv-mnav nav a .mv-i { color: var(--mv-text-3); }
.mv-mnav nav a span { flex: 1; min-width: 0; }
.mv-mnav nav a b { min-width: 22px; height: 20px; padding: 0 6px; border-radius: 10px; display: grid; place-items: center; background: var(--mv-wine-50); color: var(--mv-wine-500); font-size: 11.5px; }
.mv-mnav nav a:hover { background: var(--mv-sand-100); color: var(--mv-text) !important; }
.mv-mnav nav a.is-on { background: var(--mv-wine-50); color: var(--mv-wine-500) !important; font-weight: 600; }
.mv-mnav nav a.is-on .mv-i { color: var(--mv-wine-500); }
@media (max-width: 767.98px) {
  .mv-mnav { position: static; }
  .mv-mnav nav { display: flex; gap: 6px; overflow-x: auto; padding: 6px; scrollbar-width: none; }
  .mv-mnav nav::-webkit-scrollbar { display: none; }
  .mv-mnav-h { display: none; }
  .mv-mnav nav a { flex: none; padding: 7px 12px; border: 1px solid var(--mv-border); border-radius: 999px; }
  .mv-member aside { margin-bottom: 16px; }
}

/* page titles */
.mv-member h2.textLightS, .mv-member .textLightS { font-family: var(--mv-font-head) !important; font-size: clamp(24px, 3vw, 30px) !important; font-weight: 600 !important; color: var(--mv-text) !important; -webkit-text-fill-color: var(--mv-text) !important; background: none !important; text-align: left !important; margin: 0 0 18px !important; }

/* accordion headers (Edit profile groups) */
.mv-member .bg-green-light { background: var(--mv-surface) !important; border: 1px solid var(--mv-border) !important; border-radius: var(--mv-r-lg) !important; padding: 12px 16px !important; box-shadow: var(--mv-shadow-sm); }
.mv-member .bg-green-light h6 { font-size: 16px !important; font-weight: 600 !important; color: var(--mv-text) !important; }
.mv-member .bg-green-light .fa { color: var(--mv-wine-500) !important; }

/* cards */
.mv-member .card:not(.chat_list_box):not(.active_list_box):not(.chat_box) { border: 1px solid var(--mv-border) !important; border-radius: var(--mv-r-lg) !important; box-shadow: var(--mv-shadow-sm) !important; overflow: hidden; background: var(--mv-surface) !important; }
.mv-member .card:not(.chat_list_box):not(.active_list_box):not(.chat_box) > .card-header { background: var(--mv-surface) !important; border-bottom: 1px solid var(--mv-border) !important; padding: 14px 18px !important; display: flex !important; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.mv-member .card:not(.chat_list_box):not(.active_list_box):not(.chat_box) > .card-header > div { margin: 0 !important; text-align: left !important; }
.mv-member .card-header h5, .mv-member .card-header h4 { font-family: var(--mv-font-head) !important; font-size: 17px !important; font-weight: 600 !important; color: var(--mv-text) !important; margin: 0 !important; display: flex; align-items: center; gap: 10px; }
.mv-member .card-header h5::before { content: ""; width: 4px; height: 18px; border-radius: 2px; background: var(--mv-primary); }
.mv-member .card:not(.chat_list_box):not(.active_list_box):not(.chat_box) > .card-body { padding: 18px !important; }
.mv-member .card-body p.mb-1 { font-size: 14px; color: var(--mv-text-2); }
.mv-member .card-body p.font-weight-bold { color: var(--mv-text) !important; font-weight: 600 !important; }
.mv-member .card-body .col-xl-6.my-1 { padding-top: 8px; padding-bottom: 8px; border-bottom: 1px dashed var(--mv-border); }

/* buttons */
.mv-member .btn.gt-btn-orange, .mv-member .btn.gt-btn-green, .mv-member .btn-green-o, .mv-member .btn.gt-btn-default {
  display: inline-flex !important; align-items: center; justify-content: center; gap: 6px; min-height: 40px; padding: 0 18px !important; border-radius: 999px !important; font-family: var(--mv-font-body) !important; font-size: 14px !important; font-weight: 600 !important; text-transform: none !important; letter-spacing: 0 !important; box-shadow: none !important; cursor: pointer; transition: background var(--mv-fast) ease, transform var(--mv-fast) ease; }
.mv-member .btn.gt-btn-orange, .mv-member .btn.gt-btn-green { background: var(--mv-primary) !important; border: 1px solid var(--mv-primary) !important; color: #fff !important; }
.mv-member .btn.gt-btn-orange:hover, .mv-member .btn.gt-btn-green:hover { background: var(--mv-wine-400) !important; transform: translateY(-1px); }
.mv-member .btn-green-o, .mv-member .btn.gt-btn-default { background: var(--mv-surface) !important; border: 1px solid var(--mv-wine-200) !important; color: var(--mv-wine-500) !important; }
.mv-member .btn .fa { margin: 0 !important; }
.mv-member h4.btn.gt-btn-green { border-radius: var(--mv-r-lg) !important; min-height: 52px; font-size: 17px !important; cursor: default; }

/* form fields */
.mv-member .form-control:not(#message) { height: 44px; border: 1px solid var(--mv-border-strong) !important; border-radius: 12px !important; background: var(--mv-surface) !important; color: var(--mv-text) !important; -webkit-text-fill-color: var(--mv-text) !important; font-size: 14.5px !important; padding: 0 14px !important; box-shadow: none !important; }
.mv-member textarea.form-control { height: auto; min-height: 110px; padding: 12px 14px !important; }
.mv-member select.form-control:not([multiple]) { appearance: none; -webkit-appearance: none; padding-right: 38px !important; background: var(--mv-surface) url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2216%22 height=%2216%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%239a8f88%22 stroke-width=%222%22 stroke-linecap=%22round%22%3E%3Cpath d=%22m6 9 6 6 6-6%22/%3E%3C/svg%3E") right 12px center no-repeat !important; }
.mv-member .form-control:focus { border-color: var(--mv-wine-500) !important; box-shadow: 0 0 0 3px var(--mv-wine-100) !important; }
.mv-member .form-group { margin-bottom: 10px; }
.mv-member .chosen-container-multi .chosen-choices { min-height: 44px; border: 1px solid var(--mv-border-strong) !important; border-radius: 12px !important; background: var(--mv-surface) !important; box-shadow: none !important; padding: 4px 8px !important; }
.mv-member .chosen-container-multi .chosen-choices li.search-choice { border: 0 !important; background: var(--mv-wine-50) !important; color: var(--mv-wine-500) !important; border-radius: 999px !important; box-shadow: none !important; padding: 4px 22px 4px 10px !important; }

/* tables (transactions, requests) */
.mv-member table.table { background: var(--mv-surface); border-radius: var(--mv-r-lg); overflow: hidden; border: 1px solid var(--mv-border); }
.mv-member table.table thead th { background: var(--mv-sand-100) !important; color: var(--mv-text-2) !important; font-size: 13px; font-weight: 600; border: 0 !important; text-transform: none; }
.mv-member table.table td { border-color: var(--mv-border) !important; font-size: 14px; color: var(--mv-text); vertical-align: middle; }

/* pagination */
.mv-member .pagination { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; }
.mv-member .pagination a, .mv-member .pagination .page-numbers1 { display: inline-grid !important; place-items: center; min-width: 38px; height: 38px; padding: 0 12px !important; border-radius: 999px !important; border: 1px solid var(--mv-border) !important; background: var(--mv-surface) !important; color: var(--mv-text) !important; font-size: 14px; text-decoration: none !important; float: none !important; }
.mv-member .pagination .page-numbers1 { background: var(--mv-primary) !important; border-color: var(--mv-primary) !important; color: #fff !important; }

/* alerts */
.mv-member .alert { border-radius: var(--mv-r-md) !important; border: 1px solid transparent; font-size: 14px; }

/* list rows (interests, matches, heart list...) */
.mv-member .matches-blog-row { background: var(--mv-surface) !important; border: 1px solid var(--mv-border) !important; border-radius: var(--mv-r-lg) !important; box-shadow: var(--mv-shadow-sm); padding: 16px !important; margin: 0 0 14px !important; transition: box-shadow var(--mv-base) ease, border-color var(--mv-base) ease; }
.mv-member .matches-blog-row:hover { box-shadow: var(--mv-shadow-md); border-color: var(--mv-wine-200) !important; }
.mv-member .match-listing img { border-radius: var(--mv-r-md) !important; object-fit: cover; }
.mv-member .matches-blog-row h6 a { color: var(--mv-text) !important; font-family: var(--mv-font-head); font-size: 18px; font-weight: 600; text-decoration: none !important; }
.mv-member .matches-content { font-size: 14px; color: var(--mv-text); }
.mv-member .matches-blog-row label { font-size: 13px; color: var(--mv-text-3); }
.mv-member .matches-blog-row .socia-icon:not(.view-profile) { width: 38px; height: 38px; border-radius: 50%; display: inline-grid !important; place-items: center; background: var(--mv-wine-50) !important; color: var(--mv-wine-500) !important; border: 1px solid var(--mv-wine-100); text-decoration: none !important; }
.mv-member .matches-blog-row .socia-icon:not(.view-profile):hover { background: var(--mv-primary) !important; color: #fff !important; }
.mv-member .matches-blog-row .socia-icon span { display: none; }
.mv-member .online_status_bar.online { background: var(--mv-success) !important; }
/* member side menu: photo/initials fixed size (older aside rules stretched it) */
.mv-mnav .mv-mnav-pic { width: 52px !important; height: 52px !important; min-width: 52px; overflow: hidden !important; }
.mv-mnav .mv-mnav-pic > img, .mv-mnav .mv-mnav-pic > .mv-initials { width: 52px !important; height: 52px !important; max-width: none !important; position: static !important; display: grid !important; }
:root[data-theme="light"] { color-scheme: light; }

/* =====================================================================
   MANAGE PHOTOS (Home/updateprofile)
   ===================================================================== */
.mv-ph { padding: 24px 0 56px; }
.mv-ph-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; max-width: 1320px; }
@media (min-width: 992px) { .mv-ph-grid { grid-template-columns: 270px minmax(0, 1fr); align-items: start; } }
.mv-ph-main { display: grid; gap: 18px; min-width: 0; }
.mv-ph-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.mv-ph-head h1 { margin: 0 0 4px !important; font-size: clamp(24px, 3vw, 30px); font-weight: 600; color: var(--mv-text); }
.mv-ph-head p { margin: 0 !important; max-width: 60ch; font-size: 14.5px; color: var(--mv-text-2); }
.mv-ph-count { display: grid; grid-template-columns: auto auto; align-items: baseline; gap: 2px 8px; padding: 12px 16px; border-radius: var(--mv-r-lg); background: var(--mv-surface); border: 1px solid var(--mv-border); min-width: 180px; }
.mv-ph-count b { font-family: var(--mv-font-head); font-size: 26px; color: var(--mv-wine-500); }
.mv-ph-count span { font-size: 13px; color: var(--mv-text-2); }
.mv-ph-count i { grid-column: 1 / -1; height: 6px; border-radius: 3px; background: linear-gradient(90deg, var(--mv-primary) var(--mv-p), var(--mv-sand-100) var(--mv-p)); margin-top: 6px; }
.mv-ph-flash .alert { margin: 0; }
.mv-ph-privacy { display: flex; align-items: center; gap: 14px; padding: 14px 18px; border-radius: var(--mv-r-lg); background: var(--mv-surface); border: 1px solid var(--mv-border); box-shadow: var(--mv-shadow-sm); }
.mv-ph-privacy-ic { width: 44px; height: 44px; flex: none; border-radius: 12px; display: grid; place-items: center; background: var(--mv-wine-50); color: var(--mv-wine-500); }
.mv-ph-privacy-t { flex: 1; min-width: 0; }
.mv-ph-privacy-t b { display: block; font-size: 15px; color: var(--mv-text); }
.mv-ph-privacy-t small { font-size: 13px; color: var(--mv-text-2); }
.mv-ph-switch { margin: 0 !important; flex: none; }
.mv-ph-switch .mv-switch-ui { width: 46px; height: 26px; }
.mv-ph-switch .mv-switch-ui::after { width: 22px; height: 22px; }
.mv-ph-switch:has(input:checked) .mv-switch-ui { background: var(--mv-success); }
.mv-ph-switch:has(input:checked) .mv-switch-ui::after { transform: translateX(20px); }
.mv-ph-switch-t { font-size: 13.5px; font-weight: 600; color: var(--mv-text-2); }

.mv-ph-gallery { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
@media (max-width: 767.98px) { .mv-ph-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; } }
.mv-ph-card { position: relative; margin: 0; aspect-ratio: 3 / 4; border-radius: var(--mv-r-lg); overflow: hidden; background: var(--mv-sand-100); border: 1px solid var(--mv-border); box-shadow: var(--mv-shadow-sm); }
.mv-ph-card > img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 20%; display: block; }
.mv-ph-tag { position: absolute; left: 10px; top: 10px; display: inline-flex; align-items: center; gap: 5px; height: 26px; padding: 0 10px; border-radius: 13px; background: rgba(255,255,255,.95); color: var(--mv-text); font-size: 12px; font-weight: 700; box-shadow: 0 2px 6px rgba(0,0,0,.15); z-index: 2; }
.mv-ph-tag.is-main { background: var(--mv-primary); color: #fff; }
.mv-ph-tag.is-review { top: 42px; background: var(--mv-warning-bg); color: var(--mv-warning); }
.mv-ph-hidden { position: absolute; inset: 0; z-index: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; background: rgba(42,36,33,.45); color: #fff; font-size: 13px; font-weight: 600; -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px); }
.mv-ph-acts { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; display: flex; gap: 8px; padding: 30px 10px 10px; background: linear-gradient(180deg, rgba(20,10,12,0), rgba(20,10,12,.65)); opacity: 0; transition: opacity var(--mv-fast) ease; }
.mv-ph-card:hover .mv-ph-acts, .mv-ph-card:focus-within .mv-ph-acts { opacity: 1; }
@media (hover: none) { .mv-ph-acts { opacity: 1; } }
.mv-ph-btn { flex: 1; display: inline-flex; align-items: center; justify-content: center; gap: 6px; height: 36px; border-radius: 18px; border: 0; background: rgba(255,255,255,.95); color: var(--mv-text) !important; font: 600 13px var(--mv-font-body); cursor: pointer; text-decoration: none !important; }
.mv-ph-btn:hover { background: #fff; }
.mv-ph-btn.is-del { flex: none; width: 36px; color: var(--mv-error) !important; }
.mv-ph-card.is-empty { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; cursor: pointer; border: 2px dashed var(--mv-wine-200); background: linear-gradient(160deg, var(--mv-wine-50), var(--mv-surface)); box-shadow: none; font-family: var(--mv-font-body); transition: border-color var(--mv-fast) ease, transform var(--mv-fast) ease; }
.mv-ph-card.is-empty:hover { border-color: var(--mv-wine-500); transform: translateY(-2px); }
.mv-ph-plus { width: 52px; height: 52px; border-radius: 50%; display: grid; place-items: center; background: var(--mv-primary); color: #fff; box-shadow: 0 8px 18px rgba(163,52,58,.25); margin-bottom: 4px; }
.mv-ph-card.is-empty b { font-size: 15px; color: var(--mv-text); }
.mv-ph-card.is-empty small { font-size: 12.5px; color: var(--mv-text-3); }

.mv-ph-tips { padding: 18px 20px; border-radius: var(--mv-r-lg); background: var(--mv-surface); border: 1px solid var(--mv-border); }
.mv-ph-tips h2 { display: flex; align-items: center; gap: 8px; margin: 0 0 12px !important; font-size: 17px; font-weight: 600; color: var(--mv-text); }
.mv-ph-tips h2 .mv-i { color: var(--mv-success); }
.mv-ph-tips ul { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 8px 20px; list-style: none; margin: 0 !important; padding: 0 !important; }
.mv-ph-tips li { display: flex; align-items: flex-start; gap: 8px; font-size: 13.5px; color: var(--mv-text-2); line-height: 1.45; }
.mv-ph-tips li .mv-i { flex: none; margin-top: 2px; color: var(--mv-success); }
.mv-ph-tips li:nth-child(4) .mv-i, .mv-ph-tips li:nth-child(5) .mv-i { color: var(--mv-error); }
.mv-ph-tips li:nth-child(6) .mv-i { color: var(--mv-warning); }

/* upload pop-up */
.mv-ph-drop { position: relative; display: grid; place-items: center; height: 260px; margin: 0 0 12px; border-radius: var(--mv-r-lg); border: 2px dashed var(--mv-wine-200); background: var(--mv-wine-50); cursor: pointer; overflow: hidden; transition: border-color var(--mv-fast) ease, background var(--mv-fast) ease; }
.mv-ph-drop.is-drag { border-color: var(--mv-wine-500); background: var(--mv-wine-100); }
.mv-ph-drop img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; background: var(--mv-sand-100); }
.mv-ph-drop.has-img .mv-ph-drop-empty { display: none; }
.mv-ph-drop-empty { display: flex; flex-direction: column; align-items: center; gap: 4px; color: var(--mv-wine-500); }
.mv-ph-drop-empty b { color: var(--mv-text); font-size: 15px; }
.mv-ph-drop-empty small { color: var(--mv-text-2); font-size: 13px; }
.mv-ph-err { margin: 0 0 10px !important; font-size: 13px; color: var(--mv-error); }

/* no-photo profiles: slim list under the photo grid */
.mv-disc-compact { margin-top: 22px; padding: 16px; border-radius: var(--mv-r-xl); background: var(--mv-surface); border: 1px solid var(--mv-border); box-shadow: var(--mv-shadow-sm); }
.mv-disc-compact[hidden] { display: none !important; }
.mv-disc-compact h3 { display: flex; align-items: center; gap: 8px; margin: 2px 4px 12px !important; font-size: 16px; font-weight: 600; color: var(--mv-text); }
.mv-disc-compact h3 .mv-i { color: var(--mv-text-3); }
.mv-disc-rows { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 460px), 1fr)); gap: 8px 16px; }
.mv-pc.is-row { display: flex !important; flex-direction: row !important; align-items: center; gap: 12px; padding: 10px 12px; border-radius: var(--mv-r-lg); border: 1px solid var(--mv-border); box-shadow: none; background: var(--mv-surface); transform: none !important; }
.mv-pc.is-row[hidden] { display: none !important; }
.mv-pc.is-row:hover { border-color: var(--mv-wine-200); background: var(--mv-ivory-50); box-shadow: none; }
.mv-pc-mono { position: relative; flex: none; width: 46px; height: 46px; border-radius: 50%; display: grid; place-items: center; background: var(--mv-wine-50); color: var(--mv-wine-500) !important; font-family: var(--mv-font-head); font-size: 15px; font-weight: 700; letter-spacing: .03em; text-decoration: none !important; border: 1px solid var(--mv-wine-100); }
.mv-pc-mono.is-lock { background: var(--mv-sand-100); color: var(--mv-text-2) !important; border-color: var(--mv-border); }
.mv-pc-mono .mv-i { width: 18px; height: 18px; }
.mv-pc-mono-on { position: absolute; right: 0; bottom: 1px; width: 12px; height: 12px; border-radius: 50%; background: var(--mv-success); border: 2px solid var(--mv-surface); }
.mv-pc-rowinfo { flex: 1; min-width: 0; display: flex; flex-direction: column; text-decoration: none !important; line-height: 1.3; }
.mv-pc-rowinfo b { font-size: 15px; color: var(--mv-text); }
.mv-pc-rowinfo span, .mv-pc-rowinfo small { font-size: 12.5px; color: var(--mv-text-2); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mv-pc-rowinfo small { color: var(--mv-text-3); }
.mv-pc.is-row .mv-pc-sugg { display: none; }
.mv-pc.is-row .mv-pc-quick { position: static; flex-direction: row; gap: 4px; order: 3; }
.mv-pc.is-row .mv-pc-quick .mv-pc-ic { width: 34px; height: 34px; background: var(--mv-surface); border: 1px solid var(--mv-border); box-shadow: none; }
.mv-pc.is-row .mv-pc-act { order: 2; flex: none; margin: 0; padding: 0; }
.mv-pc.is-row .mv-pc-act .mv-pc-main { width: auto; height: 34px; padding: 0 14px !important; font-size: 12.5px !important; }
.mv-disc-rows-more { display: block; margin: 14px auto 2px; height: 40px; padding: 0 22px; border-radius: 999px; border: 1px solid var(--mv-wine-200); background: var(--mv-surface); color: var(--mv-wine-500); font: 600 14px var(--mv-font-body); cursor: pointer; }
.mv-disc-rows-more:hover { background: var(--mv-wine-50); }
.mv-disc-rows-more[hidden] { display: none; }
@media (max-width: 575.98px) {
  .mv-pc.is-row { flex-wrap: wrap; }
  .mv-pc.is-row .mv-pc-rowinfo { flex-basis: calc(100% - 60px); }
  .mv-pc.is-row .mv-pc-act { flex: 1; }
  .mv-pc.is-row .mv-pc-act .mv-pc-main { width: 100%; }
}

/* =====================================================================
   LOGO v2: mark + lowercase wordmark (no underline, no letter animation)
   ===================================================================== */
.mv-logo { display: inline-flex !important; align-items: center; gap: 9px; text-decoration: none !important; line-height: 1; }
.mv-logo-mark { width: 34px; height: 34px; flex: none; display: block; }
.mv-logo-bg { fill: var(--mv-wine-500); }
.mv-logo-ring { fill: none; stroke: #fff; stroke-width: 2.4; }
.mv-logo-gem { fill: var(--mv-gold-300); }
.mv-logo-t { display: inline-flex; align-items: baseline; font-family: var(--mv-font-body) !important; font-weight: 700; font-size: 25px; letter-spacing: -.035em; }
.mv-logo .mv-wm-a { color: var(--mv-text); }
.mv-logo .mv-wm-b { color: var(--mv-wine-500); }
.mv-logo .mv-wm-b::after { display: none !important; }
.mv-logo span span { opacity: 1 !important; transform: none !important; animation: none !important; }
/* white version (footer) */
.mv-logo.is-light .mv-logo-bg { fill: rgba(255,255,255,.12); stroke: rgba(255,255,255,.55); stroke-width: 1.5; }
.mv-logo.is-light .mv-logo-gem { fill: #fff; }
.mv-logo.is-light .mv-wm-a, .mv-logo.is-light .mv-wm-b, .mv-footer .mv-logo .mv-wm-a, .mv-footer .mv-logo .mv-wm-b { color: #fff !important; }
@media (max-width: 575.98px) { .mv-logo-mark { width: 30px; height: 30px; } .mv-logo-t { font-size: 22px; } }

/* profile photos v2: face-focused crop, gentle colour lift, cleaner badges */
.mv-pc-photo img { object-position: 50% 30% !important; filter: saturate(1.06) contrast(1.03); transform: scale(1.06); transform-origin: 50% 35%; }
.mv-pc:hover .mv-pc-photo img { transform: scale(1.1); }
.mv-pc-photo::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 22%; z-index: 1; pointer-events: none; background: linear-gradient(180deg, rgba(20,10,12,.35), rgba(20,10,12,0)); }
.mv-pc-photo.is-ph::before { display: none; }
/* badges: one tidy row above the name, not on the face */
.mv-pc-online, .mv-pc-sugg { position: static !important; display: inline-flex !important; align-items: center; height: 22px !important; padding: 0 9px !important; border-radius: 11px !important; font-size: 11px !important; font-weight: 600 !important; letter-spacing: .01em; box-shadow: none !important; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.mv-pc-online { background: rgba(255,255,255,.22) !important; color: #fff !important; border: 1px solid rgba(255,255,255,.35); }
.mv-pc-online::before { background: #4ade80 !important; box-shadow: 0 0 0 2px rgba(74,222,128,.3) !important; }
.mv-pc-sugg { background: rgba(255,255,255,.22) !important; color: #fff !important; border: 1px solid rgba(255,255,255,.35); }
.mv-pc-sugg::before { content: ""; width: 6px; height: 6px; margin-right: 6px; border-radius: 50%; background: var(--mv-gold-300); }
.mv-pc-badges { display: flex; gap: 6px; margin-bottom: 6px; }
.mv-pc.is-suggest .mv-pc-online { top: auto !important; }

/* =====================================================================
   LOGO v3: thin elegant wordmark + small animated heart (no box icon)
   ===================================================================== */
.mv-logo { gap: 2px !important; align-items: flex-start !important; }
.mv-logo-t { font-family: "Cormorant Garamond", Georgia, serif !important; font-weight: 500 !important; font-size: 30px !important; letter-spacing: .01em !important; line-height: 1 !important; }
.mv-logo .mv-wm-a { color: var(--mv-text) !important; }
.mv-logo .mv-wm-b { color: var(--mv-wine-500) !important; font-style: italic; }
.mv-logo-heart { width: 11px; height: 11px; margin-top: 3px; flex: none; fill: var(--mv-wine-500); transform-origin: 50% 60%; animation: mvLogoBeat 1.6s ease-in-out .3s 2; }
@keyframes mvLogoBeat { 0%, 100% { transform: scale(1); } 15% { transform: scale(1.35); } 30% { transform: scale(1); } 45% { transform: scale(1.2); } 60% { transform: scale(1); } }
.mv-logo:hover .mv-logo-heart { animation: mvLogoBeat 1.6s ease-in-out 1; }
.mv-logo.is-light .mv-wm-a, .mv-logo.is-light .mv-wm-b { color: #fff !important; }
.mv-logo.is-light .mv-logo-heart { fill: #fff; }
@media (max-width: 575.98px) { .mv-logo-t { font-size: 26px !important; } }
@media (prefers-reduced-motion: reduce) { .mv-logo-heart { animation: none !important; } }
.mv-logo .mv-logo-t > span { margin: 0 !important; padding: 0 !important; letter-spacing: inherit !important; }
.mv-logo .mv-wm-b { margin-left: -1px !important; }

/* =====================================================================
   LOGO (final, concept C): thin modern "mera" + medium wine "vyaah" + beating heart
   ===================================================================== */
html body .mv-logo { gap: 3px !important; align-items: flex-start !important; text-decoration: none !important; }
html body .mv-logo .mv-logo-t, html body .mv-logo .mv-logo-t > span { font-family: "Jost", "Figtree", sans-serif !important; font-style: normal !important; letter-spacing: .015em !important; line-height: 1 !important; }
html body .mv-logo .mv-logo-t { font-size: 31px !important; }
html body .mv-logo .mv-wm-a { font-weight: 300 !important; color: var(--mv-text) !important; }
html body .mv-logo .mv-wm-b { font-weight: 500 !important; color: var(--mv-wine-500) !important; margin-left: 0 !important; }
html body .mv-logo .mv-logo-heart { width: 11px; height: 11px; margin-top: 4px; fill: var(--mv-wine-500); }
html body .mv-logo.is-light .mv-wm-a, html body .mv-logo.is-light .mv-wm-b { color: #fff !important; }
html body .mv-logo.is-light .mv-logo-heart { fill: #fff; }
@media (max-width: 575.98px) { html body .mv-logo .mv-logo-t { font-size: 27px !important; } }
html body a.mv-logo:not(#mv-x) span.mv-logo-t > span, html body a.mv-logo:not(#mv-x) span.mv-logo-t { font-family: "Jost", "Figtree", sans-serif !important; }
/* logo: restore the version the client preferred (plain "mera" + italic wine "vyaah" + heart) */
html body a.mv-logo:not(#mv-x) span.mv-logo-t > span, html body a.mv-logo:not(#mv-x) span.mv-logo-t { font-family: var(--mv-font-body) !important; }
html body a.mv-logo:not(#mv-x) .mv-logo-t { font-size: 30px !important; letter-spacing: .01em !important; }
html body a.mv-logo:not(#mv-x) .mv-wm-a { font-weight: 500 !important; }
html body a.mv-logo:not(#mv-x) .mv-wm-b { font-weight: 500 !important; font-style: italic !important; }
html body a.mv-logo:not(#mv-x) .mv-logo-heart { width: 11px; height: 11px; margin-top: 3px; }
@media (max-width: 575.98px) { html body a.mv-logo:not(#mv-x) .mv-logo-t { font-size: 26px !important; } }

/* =====================================================================
   EDIT PROFILE v2 (hero, section tabs, field tiles)
   ===================================================================== */
.mv-ep { background: var(--mv-bg); background-image: var(--mv-grad-hero); background-size: 100% 420px; background-repeat: no-repeat; padding: 24px 0 64px; }
.mv-ep-wrap { max-width: 1120px !important; }
.mv-ep-main { display: block; min-width: 0; }
.mv-ep-flash { margin-bottom: 14px; }
.mv-ep-flash .alert { margin: 0; }

/* hero */
.mv-ep-hero { display: grid; grid-template-columns: auto minmax(0, 1fr) minmax(0, 300px); gap: 20px 24px; align-items: center; padding: 22px 24px; border-radius: var(--mv-r-xl); background: var(--mv-surface); border: 1px solid var(--mv-border); box-shadow: var(--mv-shadow-md); position: relative; overflow: hidden; }
.mv-ep-hero::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 4px; background: var(--mv-grad-accent); }
.mv-ep-avatar { position: relative; width: 92px; height: 92px; border-radius: 50%; display: block; box-shadow: 0 0 0 4px var(--mv-surface), 0 0 0 5.5px var(--mv-wine-200); }
.mv-ep-avatar img, .mv-ep-avatar .mv-initials { width: 100%; height: 100%; border-radius: 50%; object-fit: cover; font-size: 30px; }
.mv-ep-avatar i { position: absolute; right: -2px; bottom: 2px; width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; background: var(--mv-primary); color: #fff; border: 3px solid var(--mv-surface); }
.mv-ep-avatar i .mv-i { width: 13px; height: 13px; }
.mv-ep-who h1 { margin: 6px 0 2px !important; font-size: clamp(24px, 3vw, 30px); font-weight: 600; color: var(--mv-text); }
.mv-ep-who p { margin: 0 !important; font-size: 14px; color: var(--mv-text-2); }
.mv-ep-links { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.mv-ep-links a { display: inline-flex; align-items: center; gap: 6px; height: 34px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--mv-border); background: var(--mv-surface); color: var(--mv-text) !important; font-size: 13.5px; font-weight: 500; text-decoration: none !important; }
.mv-ep-links a .mv-i { color: var(--mv-wine-500); }
.mv-ep-links a:hover { border-color: var(--mv-wine-200); background: var(--mv-wine-50); }
.mv-ep-done { padding: 14px 16px; border-radius: var(--mv-r-lg); background: var(--mv-wine-50); border: 1px solid var(--mv-wine-100); }
.mv-ep-done-top { display: flex; align-items: baseline; gap: 8px; }
.mv-ep-done-top b { font-family: var(--mv-font-head); font-size: 28px; color: var(--mv-wine-500); }
.mv-ep-done-top span { font-size: 13.5px; color: var(--mv-text-2); }
.mv-ep-bar { display: block; height: 7px; border-radius: 4px; background: var(--mv-surface); overflow: hidden; margin: 8px 0; }
.mv-ep-bar i { display: block; height: 100%; border-radius: 4px; background: var(--mv-grad-accent); }
.mv-ep-done small { font-size: 12.5px; color: var(--mv-text-2); }

/* section tabs */
.mv-ep-nav { position: sticky; top: 70px; z-index: 20; display: flex; gap: 6px; overflow-x: auto; margin: 18px 0 16px; padding: 8px; border-radius: 999px; background: rgba(255,255,255,.92); border: 1px solid var(--mv-border); box-shadow: var(--mv-shadow-sm); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); scrollbar-width: none; }
.mv-ep-nav::-webkit-scrollbar { display: none; }
.mv-ep-nav a { flex: none; height: 34px; padding: 0 14px; border-radius: 999px; display: inline-flex; align-items: center; color: var(--mv-text-2) !important; font-size: 13.5px; font-weight: 500; text-decoration: none !important; white-space: nowrap; }
.mv-ep-nav a:hover { background: var(--mv-sand-100); color: var(--mv-text) !important; }
.mv-ep-nav a.is-on { background: var(--mv-primary); color: #fff !important; }
.mv-ep-anchor { display: block; position: relative; top: -140px; visibility: hidden; height: 0; }

/* old group headers are replaced by the tabs */
.mv-ep #details_detail_heading_two { display: none !important; }
.mv-ep .mv-ep-part { display: block !important; height: auto !important; }

/* section cards */
.mv-ep .user-details-sections, .mv-ep .gt-panel-default { margin-bottom: 16px !important; }
.mv-ep .card { border: 1px solid var(--mv-border) !important; border-radius: var(--mv-r-xl) !important; box-shadow: var(--mv-shadow-sm) !important; overflow: hidden; background: var(--mv-surface) !important; }
.mv-ep .card > .card-header { display: flex !important; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 20px !important; background: var(--mv-surface) !important; border-bottom: 1px solid var(--mv-border) !important; }
.mv-ep .card > .card-header > div { margin: 0 !important; text-align: left !important; display: flex; align-items: center; gap: 8px; }
.mv-ep .card-header h5 { margin: 0 !important; font-family: var(--mv-font-head) !important; font-size: 18px !important; font-weight: 600 !important; color: var(--mv-text) !important; display: flex; align-items: center; gap: 10px; }
.mv-ep .card-header h5::before { content: ""; width: 4px; height: 20px; border-radius: 2px; background: var(--mv-primary); }
.mv-ep .card-header .btn.gt-btn-orange { min-height: 36px !important; padding: 0 16px !important; border-radius: 999px !important; background: var(--mv-surface) !important; border: 1px solid var(--mv-wine-200) !important; color: var(--mv-wine-500) !important; font-size: 13.5px !important; font-weight: 600 !important; text-transform: none !important; box-shadow: none !important; }
.mv-ep .card-header .btn.gt-btn-orange:hover { background: var(--mv-wine-50) !important; }
.mv-ep .card-header .btn.gt-btn-orange.mv-ep-save { background: var(--mv-primary) !important; border-color: var(--mv-primary) !important; color: #fff !important; }
.mv-ep .card-header .btn .fa { font-size: 12px; margin-right: 6px !important; }
.mv-ep-cancel { height: 36px; padding: 0 16px; border-radius: 999px; border: 1px solid var(--mv-border); background: var(--mv-surface); color: var(--mv-text-2); font: 600 13.5px var(--mv-font-body); cursor: pointer; }
.mv-ep-cancel:hover { border-color: var(--mv-border-strong); color: var(--mv-text); }
.mv-ep .card > .card-body { padding: 18px 20px 20px !important; }

/* view mode: label + value tiles in a grid */
.mv-ep .user-details-sections .card-body > .row { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 0 !important; }
.mv-ep .user-details-sections .card-body > .row > [class*="col"] { max-width: none !important; flex: none !important; width: auto !important; padding: 0 !important; margin: 0 !important; border: 0 !important; }
.mv-ep .user-details-sections .card-body > .row > [class*="col"] > .row { display: flex; flex-direction: column; gap: 2px; margin: 0 !important; padding: 12px 14px; border-radius: var(--mv-r-md); background: var(--mv-ivory-50); border: 1px solid var(--mv-border); height: 100%; }
.mv-ep .user-details-sections .card-body > .row > [class*="col"] > .row > [class*="col"] { max-width: none !important; flex: none !important; padding: 0 !important; }
.mv-ep .user-details-sections .card-body p.mb-1 { margin: 0 !important; font-size: 12px !important; letter-spacing: .02em; color: var(--mv-text-3) !important; text-transform: uppercase; }
.mv-ep .user-details-sections .card-body p.font-weight-bold { margin: 0 !important; font-size: 15px !important; text-transform: none; letter-spacing: 0; color: var(--mv-text) !important; font-weight: 600 !important; word-break: break-word; }
.mv-ep .user-details-sections .card-body p.font-weight-bold:empty::before { content: "Not added"; color: var(--mv-text-3); font-weight: 400; font-style: italic; }
.mv-ep .user-details-sections .card-body select { height: 28px; margin-left: 8px !important; padding: 0 26px 0 10px !important; border-radius: 999px !important; border: 1px solid var(--mv-border-strong) !important; background-color: var(--mv-surface) !important; font-size: 12.5px; }
/* "About me" text and approval status */
.mv-ep .user-details-sections .card-body > p, .mv-ep .user-details-sections .card-body .about-me-text { font-size: 15px; line-height: 1.65; color: var(--mv-text); }
.mv-ep h6[style*="Approval"], .mv-ep h6.text-center.rounded { display: inline-flex !important; align-items: center; gap: 6px; height: 28px; padding: 0 12px !important; border-radius: 999px !important; background: var(--mv-success-bg) !important; color: var(--mv-success) !important; font-size: 12.5px !important; font-weight: 600 !important; margin: 10px 0 0 !important; }
.mv-ep button[style*="#cff5e4"] { height: 28px; padding: 0 12px !important; border-radius: 999px !important; background: var(--mv-warning-bg) !important; color: var(--mv-warning) !important; font-size: 12.5px; font-weight: 600; }

/* partner preference divider */
.mv-ep h4.btn.gt-btn-green { display: flex !important; align-items: center; justify-content: flex-start !important; gap: 10px; min-height: 0 !important; padding: 18px 4px 8px !important; margin: 10px 0 4px !important; background: none !important; border: 0 !important; color: var(--mv-text) !important; font-family: var(--mv-font-head) !important; font-size: 22px !important; font-weight: 600 !important; box-shadow: none !important; text-transform: none !important; cursor: default; }
.mv-ep h4.btn.gt-btn-green .fa { color: var(--mv-wine-500); }

/* edit mode forms */
.mv-ep .gt-panel-default .card-body .row { margin-left: -8px; margin-right: -8px; }
.mv-ep .gt-panel-default .card-body [class*="col"] { padding-left: 8px; padding-right: 8px; }
.mv-ep .gt-panel-default .card-body p.mb-1 { font-size: 13px !important; font-weight: 600; color: var(--mv-text) !important; margin: 8px 0 4px !important; }
.mv-ep .gt-panel-default .col-xl-6.my-1 > .row { flex-direction: column; }
.mv-ep .gt-panel-default .col-xl-6.my-1 > .row > [class*="col"] { max-width: 100% !important; flex: 0 0 100% !important; }
.mv-ep .gt-panel-default .card-body .col-xl-6.my-1 { border-bottom: 0 !important; }

@media (max-width: 991.98px) {
  .mv-ep-hero { grid-template-columns: auto minmax(0, 1fr); }
  .mv-ep-done { grid-column: 1 / -1; }
  .mv-ep .user-details-sections .card-body > .row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 575.98px) {
  .mv-ep { padding-top: 12px; }
  .mv-ep-hero { padding: 18px 16px; gap: 14px; }
  .mv-ep-avatar { width: 64px; height: 64px; }
  .mv-ep-avatar .mv-initials { font-size: 22px; }
  .mv-ep-nav { border-radius: var(--mv-r-lg); top: 62px; }
  .mv-ep .card > .card-header { padding: 14px 16px !important; }
  .mv-ep .card > .card-body { padding: 14px 16px 16px !important; }
  .mv-ep .user-details-sections .card-body > .row { grid-template-columns: 1fr; gap: 8px; }
}
/* About me: one full-width block, status chip underneath */
.mv-ep #edit21 .card-body > .row { display: block !important; }
.mv-ep #edit21 .card-body > .row > [class*="col"] > .row, .mv-ep #edit21 .card-body > .row > [class*="col"] { background: none !important; border: 0 !important; padding: 0 !important; }
.mv-ep #edit21 .card-body, .mv-ep #edit21 .card-body p, .mv-ep #edit21 .card-body div { font-size: 15px; line-height: 1.65; color: var(--mv-text); text-transform: none; letter-spacing: 0; }
.mv-ep .user-details-sections .card-body p.font-weight-bold { overflow-wrap: anywhere; }

/* =====================================================================
   EDIT PROFILE v3: tabs (one section at a time), modern form + buttons
   ===================================================================== */
.mv-ep-nav { border-radius: var(--mv-r-lg) !important; padding: 6px !important; gap: 4px !important; }
.mv-ep-nav a { gap: 7px; height: 40px !important; padding: 0 14px !important; border-radius: 12px !important; }
.mv-ep-nav a .mv-i { color: var(--mv-text-3); }
.mv-ep-nav a.is-on { background: var(--mv-primary) !important; color: #fff !important; box-shadow: 0 6px 14px rgba(163,52,58,.22); }
.mv-ep-nav a.is-on .mv-i { color: #fff; }
.mv-ep-panel[hidden] { display: none !important; }
.mv-ep-panel { animation: mvRfIn .25s ease both; }
.mv-ep-panel > div { margin-bottom: 0 !important; }
/* header buttons */
.mv-ep .card-header .btn.mv-ep-editbtn { display: inline-flex !important; align-items: center; gap: 6px; height: 38px !important; padding: 0 18px !important; border-radius: 999px !important; background: var(--mv-primary) !important; border: 0 !important; color: #fff !important; font-size: 14px !important; font-weight: 600 !important; box-shadow: 0 6px 14px rgba(163,52,58,.22) !important; }
.mv-ep .card-header .btn.mv-ep-editbtn:hover { background: var(--mv-wine-400) !important; }
.mv-ep .card-header .btn.mv-ep-save, .mv-ep-foot .mv-ep-save { display: inline-flex !important; align-items: center; gap: 6px; height: 40px !important; padding: 0 20px !important; border-radius: 999px !important; background: var(--mv-primary) !important; border: 0 !important; color: #fff !important; font-size: 14px !important; font-weight: 600 !important; text-transform: none !important; box-shadow: 0 6px 14px rgba(163,52,58,.22) !important; cursor: pointer; text-decoration: none !important; }
.mv-ep-cancel { height: 40px !important; }
/* edit form: two-column labelled fields */
.mv-ep .gt-panel-default .card-body form > .row, .mv-ep .gt-panel-default .card-body > form > div > .row { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 20px; margin: 0 !important; }
.mv-ep .gt-panel-default .card-body form .row > [class*="col"] { max-width: none !important; flex: none !important; width: auto !important; padding: 0 !important; }
.mv-ep .gt-panel-default .card-body form .col-xl-6.my-1 > .row { display: flex !important; flex-direction: column !important; gap: 0; margin: 0 !important; }
.mv-ep .gt-panel-default .card-body form p.mb-1 { margin: 10px 0 6px !important; font-size: 13.5px !important; font-weight: 600 !important; color: var(--mv-text) !important; text-transform: none !important; letter-spacing: 0 !important; }
.mv-ep .gt-panel-default .card-body form .form-group { margin: 0 !important; }
.mv-ep .gt-panel-default .form-control { height: 46px !important; border-radius: 12px !important; border: 1px solid var(--mv-border-strong) !important; background-color: var(--mv-ivory-50) !important; font-size: 14.5px !important; }
.mv-ep .gt-panel-default textarea.form-control { height: auto !important; min-height: 140px; }
.mv-ep .gt-panel-default .form-control:focus { background-color: var(--mv-surface) !important; border-color: var(--mv-wine-500) !important; box-shadow: 0 0 0 3px var(--mv-wine-100) !important; }
.mv-ep .gt-panel-default .card { border-color: var(--mv-wine-200) !important; box-shadow: 0 10px 28px rgba(163,52,58,.10) !important; }
.mv-ep .gt-panel-default .card > .card-header { background: var(--mv-wine-50) !important; }
.mv-ep-foot { display: flex; justify-content: flex-end; gap: 10px; margin-top: 22px; padding-top: 16px; border-top: 1px solid var(--mv-border); }
@media (max-width: 767.98px) {
  .mv-ep .gt-panel-default .card-body form > .row, .mv-ep .gt-panel-default .card-body > form > div > .row { grid-template-columns: 1fr; }
  .mv-ep-foot { position: sticky; bottom: 64px; background: var(--mv-surface); padding: 12px 0; }
  .mv-ep-foot > * { flex: 1; justify-content: center; }
}
.mv-ep .mv-ep-part[hidden] { display: none !important; }

/* =====================================================================
   EDIT PROFILE v4: settings layout (left menu + one section), detail list
   ===================================================================== */
.mv-ep-wrap { max-width: 1240px !important; }
.mv-ep-body { display: grid; grid-template-columns: minmax(0, 1fr); gap: 18px; margin-top: 18px; }
@media (min-width: 992px) { .mv-ep-body { grid-template-columns: 270px minmax(0, 1fr); gap: 24px; align-items: start; } }
/* left menu */
.mv-ep-body .mv-ep-nav { position: sticky; top: 86px; margin: 0 !important; display: flex !important; flex-direction: column; gap: 2px !important; padding: 10px !important; border-radius: var(--mv-r-xl) !important; background: var(--mv-surface) !important; border: 1px solid var(--mv-border); box-shadow: var(--mv-shadow-sm); overflow: visible; }
.mv-ep-nav-h { margin: 10px 10px 6px !important; font-size: 11.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--mv-text-3); }
.mv-ep-nav-h:first-child { margin-top: 4px !important; }
.mv-ep-body .mv-ep-nav a { justify-content: flex-start; height: 44px !important; padding: 0 12px !important; border-radius: 12px !important; font-size: 14.5px !important; color: var(--mv-text-2) !important; box-shadow: none !important; }
.mv-ep-body .mv-ep-nav a .mv-i { width: 17px; height: 17px; }
.mv-ep-body .mv-ep-nav a:hover { background: var(--mv-sand-100); color: var(--mv-text) !important; }
.mv-ep-body .mv-ep-nav a.is-on { background: var(--mv-wine-50) !important; color: var(--mv-wine-500) !important; font-weight: 600; box-shadow: inset 3px 0 0 var(--mv-primary) !important; }
.mv-ep-body .mv-ep-nav a.is-on .mv-i { color: var(--mv-wine-500); }
@media (max-width: 991.98px) {
  .mv-ep-body .mv-ep-nav { position: sticky; top: 60px; z-index: 20; flex-direction: row; overflow-x: auto !important; border-radius: var(--mv-r-lg) !important; padding: 6px !important; scrollbar-width: none; }
  .mv-ep-body .mv-ep-nav::-webkit-scrollbar { display: none; }
  .mv-ep-nav-h { display: none; }
  .mv-ep-body .mv-ep-nav a { flex: none; height: 38px !important; }
  .mv-ep-body .mv-ep-nav a.is-on { background: var(--mv-primary) !important; color: #fff !important; box-shadow: none !important; }
  .mv-ep-body .mv-ep-nav a.is-on .mv-i { color: #fff; }
}
/* section panel */
.mv-ep-panel { background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: var(--mv-r-xl); box-shadow: var(--mv-shadow-sm); overflow: hidden; }
.mv-ep-phead { display: flex; align-items: center; gap: 14px; padding: 20px 24px; border-bottom: 1px solid var(--mv-border); background: linear-gradient(120deg, var(--mv-wine-50), var(--mv-surface) 70%); }
.mv-ep-phead-ic { width: 46px; height: 46px; flex: none; border-radius: 14px; display: grid; place-items: center; background: var(--mv-primary); color: #fff; box-shadow: 0 6px 14px rgba(163,52,58,.25); }
.mv-ep-phead-ic .mv-i { width: 20px; height: 20px; }
.mv-ep-phead > div { flex: 1; min-width: 0; }
.mv-ep-phead h2 { margin: 0 !important; font-size: 21px; font-weight: 600; color: var(--mv-text); }
.mv-ep-phead p { margin: 2px 0 0 !important; font-size: 13.5px; color: var(--mv-text-2); }
.mv-ep-panel.is-editing .mv-ep-phead .mv-ep-editbtn { display: none !important; }
/* the old cards inside the panel: no frame, no header */
.mv-ep-panel .card { border: 0 !important; box-shadow: none !important; border-radius: 0 !important; }
.mv-ep-panel .card > .card-header { display: none !important; }
.mv-ep-panel .card > .card-body { padding: 8px 24px 24px !important; }
/* view mode: clean two-column detail list */
.mv-ep-panel .user-details-sections .card-body > .row { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 32px !important; }
.mv-ep-panel .user-details-sections .card-body > .row > [class*="col"] > .row { flex-direction: row !important; justify-content: space-between; align-items: baseline; gap: 16px !important; padding: 14px 0 !important; background: none !important; border: 0 !important; border-bottom: 1px solid var(--mv-border) !important; border-radius: 0 !important; height: auto !important; }
.mv-ep-panel .user-details-sections .card-body p.mb-1 { text-transform: none !important; letter-spacing: 0 !important; font-size: 14px !important; color: var(--mv-text-2) !important; white-space: nowrap; }
.mv-ep-panel .user-details-sections .card-body p.font-weight-bold { text-align: right; font-size: 14.5px !important; }
.mv-ep-panel .user-details-sections .card-body > .row > [class*="col"] > .row > [class*="col"]:last-child { text-align: right; }
@media (max-width: 767.98px) {
  .mv-ep-phead { padding: 16px; }
  .mv-ep-panel .card > .card-body { padding: 6px 16px 18px !important; }
  .mv-ep-panel .user-details-sections .card-body > .row { grid-template-columns: 1fr; }
}
/* leftovers */
.mv-ep h4.btn.gt-btn-green, .mv-ep .mv-ep-part { display: none !important; }
/* inner cards in the edit-profile panel: beat the generic member card rules */
html body .mv-ep-panel .card:not(.chat_list_box):not(.active_list_box):not(.chat_box):not(#mv-x) { border: 0 !important; box-shadow: none !important; border-radius: 0 !important; background: none !important; }
html body .mv-ep-panel .card:not(.chat_list_box):not(.active_list_box):not(.chat_box):not(#mv-x) > .card-header { display: none !important; }
html body .mv-ep-panel .card:not(.chat_list_box):not(.active_list_box):not(.chat_box):not(#mv-x) > .card-body { padding: 6px 24px 24px !important; }
@media (max-width: 767.98px) { html body .mv-ep-panel .card:not(.chat_list_box):not(.active_list_box):not(.chat_box):not(#mv-x) > .card-body { padding: 4px 16px 18px !important; } }
/* every edit form in a panel: label above field, two columns, no dashed lines */
html body .mv-ep-panel form > .row:not(#mv-x) { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 20px; margin: 0 !important; }
html body .mv-ep-panel form .row > [class*="col"]:not(#mv-x) { max-width: none !important; flex: none !important; width: auto !important; padding: 0 !important; border: 0 !important; }
html body .mv-ep-panel form .col-xl-6.my-1:not(#mv-x) > .row { display: flex !important; flex-direction: column !important; margin: 0 !important; padding: 0 !important; border: 0 !important; }
html body .mv-ep-panel form .col-xl-6.my-1:not(#mv-x) > .row > [class*="col"] { width: 100% !important; }
html body .mv-ep-panel form p.mb-1 { margin: 12px 0 6px !important; font-size: 13.5px !important; font-weight: 600 !important; color: var(--mv-text) !important; text-transform: none !important; letter-spacing: 0 !important; }
html body .mv-ep-panel form .form-control { height: 46px !important; border-radius: 12px !important; border: 1px solid var(--mv-border-strong) !important; background-color: var(--mv-ivory-50) !important; font-size: 14.5px !important; }
html body .mv-ep-panel form textarea.form-control { height: auto !important; min-height: 140px; }
html body .mv-ep-panel form .form-control:focus { background-color: var(--mv-surface) !important; border-color: var(--mv-wine-500) !important; box-shadow: 0 0 0 3px var(--mv-wine-100) !important; }
/* fields that come in a group (code + number, day + month + year) sit side by side */
html body .mv-ep-panel form .col-xl-6.my-1 .form-group:has(> .form-control + .form-control), html body .mv-ep-panel form .col-xl-6.my-1 [class*="col"] > .d-flex { display: flex !important; gap: 8px; }
html body .mv-ep-panel form .col-xl-6.my-1 .row .row { display: flex !important; flex-wrap: nowrap; gap: 8px; margin: 0 !important; }
html body .mv-ep-panel form .col-xl-6.my-1 .row .row > [class*="col"] { flex: 1 1 0 !important; min-width: 0; }
@media (max-width: 767.98px) { html body .mv-ep-panel form > .row:not(#mv-x) { grid-template-columns: 1fr; } }

/* MANAGE PHOTOS v2: no side menu, header card, compact slots */
.mv-ph-grid { display: block !important; max-width: 1080px !important; }
.mv-ph-head { position: relative; display: flex !important; align-items: center !important; gap: 16px; padding: 22px 24px; border-radius: var(--mv-r-xl); background: var(--mv-surface); border: 1px solid var(--mv-border); box-shadow: var(--mv-shadow-md); overflow: hidden; }
.mv-ph-head::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 4px; background: var(--mv-grad-accent); }
.mv-ph-head-ic { width: 54px; height: 54px; flex: none; border-radius: 16px; display: grid; place-items: center; background: var(--mv-primary); color: #fff; box-shadow: 0 8px 18px rgba(163,52,58,.25); }
.mv-ph-head-t { flex: 1; min-width: 0; }
.mv-ph-back { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; color: var(--mv-wine-500) !important; text-decoration: none !important; margin-bottom: 4px; }
.mv-ph-head h1 { font-size: 26px !important; }
.mv-ph-head p { font-size: 14px !important; }
.mv-ph-count { border-color: var(--mv-wine-100) !important; background: var(--mv-wine-50) !important; }
.mv-ph-gallery { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 14px !important; }
.mv-ph-card { aspect-ratio: 4 / 5 !important; }
.mv-ph-card.is-empty { gap: 4px !important; }
.mv-ph-plus { width: 42px !important; height: 42px !important; }
.mv-ph-card.is-empty b { font-size: 14px !important; }
.mv-ph-card.is-empty small { font-size: 12px !important; }
@media (min-width: 768px) { .mv-ph-card.is-main { grid-column: span 2; grid-row: span 2; aspect-ratio: auto !important; } }
@media (max-width: 767.98px) { .mv-ph-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } .mv-ph-head { flex-wrap: wrap; padding: 18px 16px; } .mv-ph-count { width: 100%; } }
/* photos grid: 3 columns, main photo 2x2, five square slots fill the rest exactly */
html body .mv-ph-gallery { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
html body .mv-ph-card { aspect-ratio: 1 / 1 !important; }
@media (min-width: 768px) { html body .mv-ph-card.is-main { grid-column: span 2 !important; grid-row: span 2 !important; aspect-ratio: auto !important; } }
.mv-ph-card > img { color: transparent; background: var(--mv-sand-100) url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23DA9694%22 stroke-width=%221.6%22%3E%3Crect x=%223%22 y=%223%22 width=%2218%22 height=%2218%22 rx=%222%22/%3E%3Ccircle cx=%229%22 cy=%229%22 r=%222%22/%3E%3Cpath d=%22m21 15-3.1-3.1a2 2 0 0 0-2.8 0L6 21%22/%3E%3C/svg%3E") center / 44px no-repeat; }
@media (max-width: 767.98px) { html body .mv-ph-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } html body .mv-ph-card.is-main { grid-column: span 2 !important; aspect-ratio: 4 / 3 !important; } }
/* custom dropdowns inside edit forms */
html body .mv-ep-panel .mv-ep-sel { display: block; width: 100%; }
html body .mv-ep-panel .mv-ep-sel .mv-sel-btn { height: 46px !important; border-radius: 12px !important; border: 1px solid var(--mv-border-strong) !important; background: var(--mv-ivory-50) !important; font-size: 14.5px !important; padding: 0 40px 0 14px !important; }
html body .mv-ep-panel .mv-ep-sel.is-open .mv-sel-btn { background: var(--mv-surface) !important; border-color: var(--mv-wine-500) !important; }
html body .mv-ep-panel .mv-sel-pop { z-index: 40; }
html body .mv-ep-panel form .col-xl-6.my-1:not(#mv-x) { margin: 0 !important; }
html body .mv-ep-panel form p.mb-1 { margin: 14px 0 6px !important; }
html body .mv-ep-panel form .col-xl-6.my-1 .row .row > [class*="col"]:last-child { flex: 3 1 0 !important; }
/* photos: gallery + guidelines side by side on desktop */
@media (min-width: 992px) {
  html body .mv-ph-main { display: grid !important; grid-template-columns: minmax(0, 1fr) 300px; gap: 18px; align-items: start; }
  html body .mv-ph-main > .mv-ph-head, html body .mv-ph-main > .mv-ph-privacy, html body .mv-ph-main > .mv-ph-flash { grid-column: 1 / -1; }
  html body .mv-ph-tips { position: sticky; top: 90px; }
  html body .mv-ph-tips ul { grid-template-columns: 1fr !important; }
}

/* EDIT PROFILE view v5: label-above-value tiles, 3 per row, no long divider lines */
html body .mv-ep-panel .user-details-sections .card-body > .row { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 12px !important; }
html body .mv-ep-panel .user-details-sections .card-body > .row > [class*="col"] > .row { flex-direction: column !important; justify-content: flex-start !important; align-items: flex-start !important; gap: 4px !important; padding: 14px 16px !important; border: 1px solid var(--mv-border) !important; border-radius: 14px !important; background: var(--mv-surface) !important; height: 100% !important; transition: border-color var(--mv-fast) ease, box-shadow var(--mv-fast) ease; }
html body .mv-ep-panel .user-details-sections .card-body > .row > [class*="col"] > .row:hover { border-color: var(--mv-wine-200) !important; box-shadow: 0 6px 16px rgba(163,52,58,.08); }
html body .mv-ep-panel .user-details-sections .card-body > .row > [class*="col"] > .row > [class*="col"] { text-align: left !important; width: 100%; }
html body .mv-ep-panel .user-details-sections .card-body p.mb-1 { font-size: 12.5px !important; color: var(--mv-wine-500) !important; font-weight: 600 !important; }
html body .mv-ep-panel .user-details-sections .card-body p.font-weight-bold { text-align: left !important; font-size: 15.5px !important; }
html body .mv-ep-panel .card:not(.chat_list_box):not(.active_list_box):not(.chat_box):not(#mv-x) > .card-body { padding: 20px 24px 24px !important; }
/* mobile privacy switch */
.mv-ep-privsw { display: inline-flex !important; align-items: center; gap: 8px; margin: 6px 0 0 !important; font-size: 12.5px !important; font-weight: 600 !important; color: var(--mv-text-2) !important; cursor: pointer; }
.mv-ep-privsw .mv-switch-ui { width: 36px; height: 20px; }
.mv-ep-privsw .mv-switch-ui::after { width: 16px; height: 16px; }
.mv-ep-privsw:has(input:checked) .mv-switch-ui { background: var(--mv-success); }
.mv-ep-privsw:has(input:checked) .mv-switch-ui::after { transform: translateX(16px); }
.mv-ep-panel p.font-weight-bold:has(.mv-ep-privsw) { display: flex; flex-direction: column; align-items: flex-start; }
@media (max-width: 991.98px) { html body .mv-ep-panel .user-details-sections .card-body > .row { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
@media (max-width: 575.98px) { html body .mv-ep-panel .user-details-sections .card-body > .row { grid-template-columns: 1fr !important; } }
html body .mv-ep-panel .user-details-sections .card-body p.mb-1.font-weight-bold { color: var(--mv-text) !important; font-size: 15.5px !important; font-weight: 600 !important; }

/* ===== EDIT PROFILE v3: compact panels, tidy tiles, chips, smaller forms ===== */
.mv-ep-phead { gap: 12px; padding: 16px 20px; }
.mv-ep-phead-ic { width: 40px; height: 40px; border-radius: 12px; box-shadow: 0 4px 10px rgba(163,52,58,.22); }
.mv-ep-phead-ic .mv-i { width: 18px; height: 18px; }
.mv-ep-phead h2 { font-size: 18px !important; }
.mv-ep-phead p { font-size: 13px !important; }
.mv-ep-phead .btn, .mv-ep-phead .mv-ep-cancel { min-height: 36px !important; height: 36px; font-size: 13.5px !important; padding: 0 16px !important; }
.mv-ep-body .mv-ep-nav a { height: 40px !important; font-size: 14px !important; }

html body .mv-ep-panel .card:not(.chat_list_box):not(.active_list_box):not(.chat_box):not(#mv-x) > .card-body { padding: 16px 20px 20px !important; }
html body .mv-ep-panel .user-details-sections .card-body > .row { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 10px !important; }
html body .mv-ep-panel .user-details-sections .card-body > .row > [class*="col"] { min-width: 0 !important; }
html body .mv-ep-panel .user-details-sections .card-body > .row > [class*="col"] > .row { gap: 3px !important; padding: 11px 14px !important; border: 1px solid transparent !important; border-radius: 12px !important; background: var(--mv-ivory-50) !important; box-shadow: none !important; min-width: 0; }
html body .mv-ep-panel .user-details-sections .card-body > .row > [class*="col"] > .row:hover { border-color: var(--mv-wine-100) !important; background: var(--mv-surface) !important; box-shadow: 0 4px 12px rgba(42,36,33,.06) !important; }
html body .mv-ep-panel .user-details-sections .card-body > .row > [class*="col"] > .row > [class*="col"] { flex: none !important; max-width: 100% !important; width: 100% !important; min-width: 0; padding: 0 !important; }
html body .mv-ep-panel .user-details-sections .card-body p.mb-1:not(.font-weight-bold) { font-size: 11.5px !important; font-weight: 600 !important; letter-spacing: .05em !important; text-transform: uppercase !important; color: var(--mv-text-3) !important; white-space: normal !important; }
html body .mv-ep-panel .user-details-sections .card-body p.mb-1.font-weight-bold { font-size: 14.5px !important; font-weight: 600 !important; color: var(--mv-text) !important; line-height: 1.45; white-space: normal !important; overflow-wrap: anywhere; word-break: normal !important; text-align: left !important; }
html body .mv-ep-panel .user-details-sections .card-body p.mb-1.font-weight-bold:empty::before { content: "Not added"; font-weight: 400; font-style: normal; color: var(--mv-text-3); }
/* long values and full width text */
html body .mv-ep-panel .user-details-sections .card-body > .row > .mv-ep-wide { grid-column: span 2; }
html body .mv-ep-panel .user-details-sections .card-body > .row > .mv-ep-full { grid-column: 1 / -1; }
html body .mv-ep-panel .user-details-sections .card-body > .row > .mv-ep-full > .row { background: none !important; padding: 0 !important; border: 0 !important; box-shadow: none !important; }
html body .mv-ep-panel .user-details-sections .card-body p.mv-ep-prose { position: relative; padding: 14px 16px 14px 18px !important; border-radius: 12px; background: var(--mv-ivory-50); border-left: 3px solid var(--mv-wine-500); font-size: 15px !important; font-weight: 400 !important; line-height: 1.65 !important; color: var(--mv-text) !important; }
html body .mv-ep-panel .user-details-sections .card-body > .row > .mv-ep-full:has(p.mv-ep-prose:empty) { display: none; }
/* chips */
html body .mv-ep-panel .user-details-sections .card-body p.mv-ep-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 4px !important; }
.mv-ep-chip { display: inline-flex; align-items: center; height: 26px; padding: 0 10px; border-radius: 13px; background: var(--mv-surface); border: 1px solid var(--mv-wine-100); color: var(--mv-text); font-size: 13px; font-weight: 500; white-space: nowrap; }
/* approval badge row */
html body .mv-ep-panel .user-details-sections .card-body > .row > [class*="col"]:has(> .row > [class*="col"]:empty:only-child) { display: none; }

/* edit forms: smaller fields, tighter spacing */
html body .mv-ep-panel form > .row:not(#mv-x) { gap: 0 16px; }
html body .mv-ep-panel form p.mb-1 { margin: 10px 0 5px !important; font-size: 12.5px !important; font-weight: 600 !important; color: var(--mv-text-2) !important; }
html body .mv-ep-panel form .form-control { height: 40px !important; border-radius: 10px !important; font-size: 14px !important; padding: 0 12px !important; }
html body .mv-ep-panel form textarea.form-control { min-height: 120px; padding: 10px 12px !important; line-height: 1.55; }
html body .mv-ep-panel .mv-ep-sel .mv-sel-btn { height: 40px !important; border-radius: 10px !important; font-size: 14px !important; padding: 0 36px 0 12px !important; }
html body .mv-ep-panel form .chosen-container .chosen-choices, html body .mv-ep-panel form .chosen-container .chosen-single { min-height: 40px !important; border-radius: 10px !important; border: 1px solid var(--mv-border-strong) !important; background: var(--mv-ivory-50) !important; box-shadow: none !important; padding: 3px 8px !important; }
html body .mv-ep-panel form .chosen-container-multi .chosen-choices li.search-choice { margin: 3px 4px 3px 0 !important; padding: 4px 22px 4px 9px !important; border-radius: 12px !important; border: 1px solid var(--mv-wine-100) !important; background: var(--mv-wine-50) !important; box-shadow: none !important; color: var(--mv-text) !important; font-size: 13px !important; }

@media (max-width: 991.98px) { html body .mv-ep-panel .user-details-sections .card-body > .row > .mv-ep-wide { grid-column: 1 / -1; } }
@media (max-width: 575.98px) {
  .mv-ep-phead { padding: 14px 16px; }
  html body .mv-ep-panel .card:not(.chat_list_box):not(.active_list_box):not(.chat_box):not(#mv-x) > .card-body { padding: 12px 14px 16px !important; }
  html body .mv-ep-panel .user-details-sections .card-body > .row { gap: 8px !important; }
}
html body .mv-ep-panel .user-details-sections .card-body > .row { grid-auto-flow: row dense; }

/* edit profile view: compact tiles */
html body .mv-ep-panel .user-details-sections .card-body > .row { gap: 8px !important; }
html body .mv-ep-panel .user-details-sections .card-body > .row > [class*="col"] > .row { gap: 2px !important; padding: 8px 12px !important; border-radius: 10px !important; }
html body .mv-ep-panel .user-details-sections .card-body p.mb-1:not(.font-weight-bold) { font-size: 10.5px !important; letter-spacing: .06em !important; line-height: 1.4 !important; }
html body .mv-ep-panel .user-details-sections .card-body p.mb-1.font-weight-bold { font-size: 13.5px !important; line-height: 1.4 !important; }
html body .mv-ep-panel .user-details-sections .card-body p.mv-ep-chips { gap: 4px; margin-top: 3px !important; }
.mv-ep-chip { height: 22px; padding: 0 8px; border-radius: 11px; font-size: 12px; white-space: normal; }
html body .mv-ep-panel .user-details-sections .card-body p.mv-ep-prose { padding: 10px 14px !important; font-size: 14px !important; line-height: 1.6 !important; }
html body .mv-ep-panel .card:not(.chat_list_box):not(.active_list_box):not(.chat_box):not(#mv-x) > .card-body { padding: 14px 18px 18px !important; }
.mv-ep-phead { padding: 14px 18px; }

/* edit profile: side menu active state (no left bar) */
html body .mv-ep-body .mv-ep-nav a { position: relative; gap: 10px; border: 1px solid transparent; }
html body .mv-ep-body .mv-ep-nav a.is-on { background: var(--mv-wine-50) !important; border-color: var(--mv-wine-100); box-shadow: none !important; color: var(--mv-wine-500) !important; }
html body .mv-ep-body .mv-ep-nav a.is-on::after { content: ""; position: absolute; right: 12px; top: 50%; width: 6px; height: 6px; margin-top: -3px; border-radius: 50%; background: var(--mv-primary); }
@media (max-width: 991.98px) { html body .mv-ep-body .mv-ep-nav a.is-on { background: var(--mv-primary) !important; color: #fff !important; } html body .mv-ep-body .mv-ep-nav a.is-on::after { display: none; } }

/* about me / partner expectation text */
html body .mv-ep-panel .user-details-sections .card-body p.mv-ep-prose { position: relative; margin: 0 !important; padding: 18px 20px 18px 54px !important; border: 1px solid var(--mv-border); border-left: 1px solid var(--mv-border); border-radius: 14px; background: linear-gradient(135deg, var(--mv-ivory-50), var(--mv-surface)); font-size: 14.5px !important; font-weight: 400 !important; line-height: 1.7 !important; color: var(--mv-text) !important; }
html body .mv-ep-panel .user-details-sections .card-body p.mv-ep-prose::before { content: "\201C"; position: absolute; left: 16px; top: 6px; font: 600 44px/1 Georgia, serif; color: var(--mv-wine-200); }
html body .mv-ep-panel .user-details-sections .card-body p.mv-ep-prose:empty::before { content: "Not added yet"; position: static; font: italic 400 14px var(--mv-font-body); color: var(--mv-text-3); }
html body .mv-ep-panel .user-details-sections .card-body p.mv-ep-prose:empty { padding-left: 20px !important; }

/* approval status pill */
html body .mv-ep-panel h6.mv-ep-status, html body .mv-ep-panel button.mv-ep-status { display: inline-flex !important; align-items: center; gap: 7px; height: 26px !important; margin: 10px 0 0 !important; padding: 0 11px !important; border: 1px solid transparent !important; border-radius: 13px !important; font: 600 12px var(--mv-font-body) !important; line-height: 1 !important; cursor: default; }
html body .mv-ep-panel .mv-ep-status::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
html body .mv-ep-panel .mv-ep-status.is-ok { background: var(--mv-success-bg) !important; border-color: rgba(46,125,80,.18) !important; color: var(--mv-success) !important; }
html body .mv-ep-panel .mv-ep-status.is-wait { background: var(--mv-warning-bg) !important; border-color: rgba(176,112,20,.2) !important; color: var(--mv-warning) !important; }

/* =====================================================================
   PROFILE DETAILS (Single-Details)
   ===================================================================== */
.mv-i-flip { transform: scaleX(-1); }
.mv-pd { background: var(--mv-bg); background-image: var(--mv-grad-hero); background-size: 100% 380px; background-repeat: no-repeat; padding: 16px 0 64px; }
.mv-pd-wrap { max-width: 1180px !important; }
.mv-pd-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.mv-pd-back { display: inline-flex; align-items: center; gap: 6px; height: 34px; padding: 0 12px 0 8px; border-radius: 17px; color: var(--mv-text-2) !important; font-size: 13.5px; font-weight: 600; text-decoration: none !important; }
.mv-pd-back:hover { background: var(--mv-surface); color: var(--mv-text) !important; }
.mv-pd-pn { display: flex; gap: 8px; }
.mv-pd-pn a { display: inline-flex; align-items: center; gap: 8px; height: 38px; padding: 0 12px; border-radius: 19px; background: var(--mv-surface); border: 1px solid var(--mv-border); color: var(--mv-text) !important; font-size: 13px; font-weight: 600; text-decoration: none !important; box-shadow: var(--mv-shadow-sm); transition: border-color var(--mv-fast) ease; }
.mv-pd-pn a:hover { border-color: var(--mv-wine-200); }
.mv-pd-pn img { width: 26px; height: 26px; border-radius: 50%; object-fit: cover; object-position: 50% 20%; background: var(--mv-sand-100); }
.mv-pd-flash { margin-bottom: 12px; }

/* hero */
.mv-pd-hero { position: relative; display: grid; grid-template-columns: 300px minmax(0, 1fr) 210px; gap: 28px; padding: 20px; border-radius: var(--mv-r-xl); background: var(--mv-surface); border: 1px solid var(--mv-border); box-shadow: var(--mv-shadow-md); }
.mv-pd-photo { position: relative; }
.mv-pd-photo-a { position: relative; display: block; aspect-ratio: 4 / 5; border-radius: 18px; overflow: hidden; background: var(--mv-sand-100); cursor: pointer; }
.mv-pd-photo-a img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 20%; display: block; transition: transform .5s ease; }
.mv-pd-photo-a:hover img:not(.is-ph) { transform: scale(1.03); }
.mv-pd-photo-a img.is-ph { object-fit: contain; padding: 18%; background: linear-gradient(160deg, var(--mv-wine-50), var(--mv-sand-100)); }
.mv-pd-photo.is-locked .mv-pd-photo-a img { filter: blur(14px) saturate(.8); transform: scale(1.15); }
.mv-pd-lock { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; color: #fff; background: rgba(42,20,24,.35); text-align: center; }
.mv-pd-lock .mv-i { width: 30px; height: 30px; margin-bottom: 4px; }
.mv-pd-lock b { font-size: 15px; } .mv-pd-lock small { font-size: 12.5px; opacity: .9; }
.mv-pd-count { position: absolute; right: 10px; bottom: 10px; display: inline-flex; align-items: center; gap: 5px; height: 26px; padding: 0 10px; border-radius: 13px; background: rgba(0,0,0,.55); color: #fff; font-size: 12px; font-weight: 600; }
.mv-pd-preq { position: absolute; left: 12px; right: 12px; bottom: 12px; z-index: 2; }
html body .mv-pd-preq .btn { display: flex !important; align-items: center; justify-content: center; gap: 6px; height: 40px !important; min-height: 0 !important; padding: 0 14px !important; border-radius: 20px !important; border: 0 !important; background: rgba(255,255,255,.96) !important; color: var(--mv-wine-500) !important; font: 600 13.5px var(--mv-font-body) !important; text-transform: none !important; box-shadow: 0 6px 16px rgba(0,0,0,.18) !important; }
html body .mv-pd-preq .btn[disabled] { color: var(--mv-text-2) !important; opacity: 1; }
html body .mv-pd-preq .btn .fa-center { display: none; }

.mv-pd-info { min-width: 0; padding-top: 4px; }
.mv-pd-idrow { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.mv-pd-id { font-size: 13px; font-weight: 700; letter-spacing: .04em; color: var(--mv-wine-500); }
.mv-pd-on, .mv-pd-ver, .mv-pd-prem { display: inline-flex; align-items: center; gap: 5px; height: 24px; padding: 0 9px; border-radius: 12px; font-size: 12px; font-weight: 600; background: var(--mv-sand-100); color: var(--mv-text-2); }
.mv-pd-on i { width: 7px; height: 7px; border-radius: 50%; background: var(--mv-text-3); }
.mv-pd-on.is-on { background: var(--mv-success-bg); color: var(--mv-success); }
.mv-pd-on.is-on i { background: var(--mv-success); box-shadow: 0 0 0 3px rgba(46,125,80,.18); }
.mv-pd-ver { background: #e8f1fb; color: #2b6cb0; }
.mv-pd-prem { background: #fbf3e2; color: #9a6a12; }
.mv-pd-title { margin: 10px 0 2px !important; font-size: clamp(24px, 3vw, 30px); font-weight: 600; color: var(--mv-text); }
.mv-pd-sub { margin: 0 0 14px !important; font-size: 15px; color: var(--mv-text-2); }
.mv-pd-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 18px; list-style: none; margin: 0 0 18px !important; padding: 0 !important; }
.mv-pd-facts li { display: flex; align-items: center; gap: 9px; min-width: 0; font-size: 14px; color: var(--mv-text); }
.mv-pd-facts li .mv-i { flex: none; width: 28px; height: 28px; padding: 6px; border-radius: 8px; background: var(--mv-wine-50); color: var(--mv-wine-500); }
.mv-pd-facts li span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.mv-pd-acts { display: flex; flex-wrap: wrap; gap: 8px; }
.mv-pd-acts form { margin: 0; }
.mv-pd-btn { display: inline-flex; align-items: center; justify-content: center; gap: 7px; height: 42px; padding: 0 18px; border-radius: 21px; border: 1px solid var(--mv-border-strong); background: var(--mv-surface); color: var(--mv-text) !important; font: 600 14px var(--mv-font-body); text-decoration: none !important; cursor: pointer; white-space: nowrap; transition: background var(--mv-fast) ease, border-color var(--mv-fast) ease, transform var(--mv-fast) ease; }
.mv-pd-btn:hover { border-color: var(--mv-wine-200); background: var(--mv-wine-50); }
.mv-pd-btn:active { transform: scale(.97); }
.mv-pd-btn .mv-i { color: var(--mv-wine-500); }
.mv-pd-btn.is-primary { background: var(--mv-primary); border-color: var(--mv-primary); color: #fff !important; box-shadow: 0 6px 16px rgba(163,52,58,.25); }
.mv-pd-btn.is-primary .mv-i { color: #fff; }
.mv-pd-btn.is-primary:hover { background: var(--mv-wine-600, #8e2a31); }
.mv-pd-btn.is-done { background: var(--mv-success-bg); border-color: transparent; color: var(--mv-success) !important; cursor: default; }
.mv-pd-btn.is-done .mv-i { color: var(--mv-success); }
.mv-pd-btn.is-saved { background: var(--mv-wine-50); border-color: var(--mv-wine-100); color: var(--mv-wine-500) !important; cursor: default; }
.mv-pd-btn.is-saved .mv-i { fill: currentColor; }
.mv-pd-more { display: flex; flex-wrap: wrap; gap: 4px 16px; margin-top: 14px; padding-top: 12px; border-top: 1px dashed var(--mv-border); }
.mv-pd-more a { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 500; color: var(--mv-text-2) !important; text-decoration: none !important; }
.mv-pd-more a:hover { color: var(--mv-wine-500) !important; }

/* match ring */
.mv-pd-score { align-self: start; display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 20px 14px; border-radius: 18px; background: linear-gradient(160deg, var(--mv-wine-50), var(--mv-surface)); border: 1px solid var(--mv-wine-100); text-align: center; text-decoration: none !important; transition: transform var(--mv-fast) ease, box-shadow var(--mv-fast) ease; }
.mv-pd-score:hover { transform: translateY(-2px); box-shadow: var(--mv-shadow-sm); }
.mv-pd-ring { --p: 0; position: relative; width: 96px; height: 96px; border-radius: 50%; display: grid; place-items: center; background: conic-gradient(var(--mv-primary) calc(var(--p) * 1%), var(--mv-sand-100) 0); }
.mv-pd-ring::before { content: ""; position: absolute; inset: 8px; border-radius: 50%; background: var(--mv-surface); }
.mv-pd-ring b { position: relative; font-family: var(--mv-font-head); font-size: 24px; color: var(--mv-wine-500); }
.mv-pd-ring b .mv-i { width: 24px; height: 24px; color: var(--mv-text-3); }
.mv-pd-ring.is-lg { width: 110px; height: 110px; }
.mv-pd-score-t b { display: block; font-size: 14.5px; color: var(--mv-text); }
.mv-pd-score-t small { font-size: 12.5px; color: var(--mv-text-2); }

/* body grid */
.mv-pd-grid { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 22px; margin-top: 20px; align-items: start; }
.mv-pd-main { min-width: 0; }
.mv-pd-main > .row { margin: 0 0 14px !important; }
.mv-pd-main > .row > .col-12 { padding: 0 !important; }
.mv-pd-main > .row[hidden] { display: none !important; }
.mv-pd-tabs { position: sticky; top: 76px; z-index: 15; display: flex; gap: 4px; margin-bottom: 14px; padding: 5px; border-radius: 16px; background: rgba(255,255,255,.94); border: 1px solid var(--mv-border); box-shadow: var(--mv-shadow-sm); overflow-x: auto; scrollbar-width: none; -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
.mv-pd-tabs::-webkit-scrollbar { display: none; }
.mv-pd-tabs a { flex: 1 0 auto; display: inline-flex; align-items: center; justify-content: center; gap: 7px; height: 40px; padding: 0 14px; border-radius: 12px; color: var(--mv-text-2) !important; font-size: 14px; font-weight: 600; text-decoration: none !important; white-space: nowrap; }
.mv-pd-tabs a:hover { background: var(--mv-sand-100); color: var(--mv-text) !important; }
.mv-pd-tabs a.is-on { background: var(--mv-primary); color: #fff !important; box-shadow: 0 4px 12px rgba(163,52,58,.22); }

/* section cards */
html body .mv-pd-main .card:not(.chat_list_box):not(.active_list_box):not(.chat_box):not(#mv-x) { border: 1px solid var(--mv-border) !important; border-radius: var(--mv-r-xl) !important; box-shadow: var(--mv-shadow-sm) !important; background: var(--mv-surface) !important; overflow: hidden; animation: mvRfIn .25s ease both; }
html body .mv-pd-main .card:not(.chat_list_box):not(.active_list_box):not(.chat_box):not(#mv-x) > .card-header { display: flex !important; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 18px !important; background: var(--mv-surface) !important; border-bottom: 1px solid var(--mv-border) !important; }
html body .mv-pd-main .card > .card-header > div { margin: 0 !important; }
html body .mv-pd-main .card > .card-header h5 { display: flex; align-items: center; gap: 10px; margin: 0 !important; font-family: var(--mv-font-head) !important; font-size: 17px !important; font-weight: 600 !important; color: var(--mv-text) !important; }
html body .mv-pd-main .card > .card-header h5 .fa { width: 32px; height: 32px; margin: 0 !important; border-radius: 10px; display: inline-grid; place-items: center; background: var(--mv-wine-50); color: var(--mv-wine-500) !important; font-size: 14px; }
html body .mv-pd-main .card > .card-header .btn { display: inline-flex !important; align-items: center; gap: 6px; height: 32px !important; min-height: 0 !important; padding: 0 12px !important; border-radius: 16px !important; border: 1px solid var(--mv-wine-200) !important; background: var(--mv-surface) !important; color: var(--mv-wine-500) !important; font: 600 12.5px var(--mv-font-body) !important; text-transform: none !important; box-shadow: none !important; }
html body .mv-pd-main .card > .card-header .btn[disabled] { border-color: var(--mv-border) !important; color: var(--mv-text-2) !important; opacity: 1; }
html body .mv-pd-main .card:not(.chat_list_box):not(.active_list_box):not(.chat_box):not(#mv-x) > .card-body { padding: 14px 18px 18px !important; }
html body .mv-pd-main .card-body > .row { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-flow: row dense; gap: 8px; margin: 0 !important; }
html body .mv-pd-main .card-body > .row > [class*="col"] { max-width: none !important; flex: none !important; width: auto !important; min-width: 0; padding: 0 !important; margin: 0 !important; }
html body .mv-pd-main .card-body > .row > .mv-ep-wide { grid-column: span 2; }
html body .mv-pd-main .card-body > .row > .col-md-12 { grid-column: 1 / -1; }
html body .mv-pd-main .mv-pd-tile { display: flex !important; flex-direction: column; gap: 2px; height: 100%; margin: 0 !important; padding: 8px 12px; border-radius: 10px; background: var(--mv-ivory-50); border: 1px solid transparent; }
html body .mv-pd-main .mv-pd-tile > [class*="col"] { max-width: 100% !important; flex: none !important; width: 100% !important; padding: 0 !important; text-align: left !important; }
html body .mv-pd-main .mv-pd-tile span.mb-1 { display: block; font-size: 10.5px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--mv-text-3); line-height: 1.4; }
html body .mv-pd-main .mv-pd-tile b { display: block; font-size: 13.5px; font-weight: 600; color: var(--mv-text); line-height: 1.4; overflow-wrap: anywhere; }
html body .mv-pd-main .mv-pd-tile.is-empty b::before { content: "Not added"; font-weight: 400; color: var(--mv-text-3); }
html body .mv-pd-main .mv-pd-tile b.mv-ep-chips { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 3px; }
/* about me text */
html body .mv-pd-main .card-body article p { position: relative; margin: 0 !important; padding: 16px 18px 16px 50px; border-radius: 14px; border: 1px solid var(--mv-border); background: linear-gradient(135deg, var(--mv-ivory-50), var(--mv-surface)); font-size: 14.5px; line-height: 1.7; color: var(--mv-text); }
html body .mv-pd-main .card-body article p::before { content: "\201C"; position: absolute; left: 14px; top: 4px; font: 600 42px/1 Georgia, serif; color: var(--mv-wine-200); }
html body .mv-pd-main .card-body article p:empty { padding-left: 18px; }
html body .mv-pd-main .card-body article p:empty::before { content: "Not added yet"; position: static; font: italic 400 14px var(--mv-font-body); color: var(--mv-text-3); }

/* compatibility */
.mv-cp-head { display: flex; align-items: center; justify-content: center; gap: 28px; padding: 6px 0 18px; }
.mv-cp-face { display: flex; flex-direction: column; align-items: center; gap: 6px; }
.mv-cp-face img, .mv-cp-face .mv-initials { width: 72px; height: 72px; border-radius: 50%; object-fit: cover; object-position: 50% 20%; box-shadow: 0 0 0 3px var(--mv-surface), 0 0 0 4.5px var(--mv-wine-100); background: var(--mv-sand-100); font-size: 22px; }
.mv-cp-face img.is-blur { filter: blur(6px); }
.mv-cp-face small { font-size: 12.5px; font-weight: 600; color: var(--mv-text-2); }
.mv-cp-mid { display: flex; flex-direction: column; align-items: center; gap: 2px; text-align: center; }
.mv-cp-mid > b { margin-top: 6px; font-size: 14.5px; color: var(--mv-text); }
.mv-cp-mid > small { font-size: 12.5px; color: var(--mv-text-2); }
.mv-cp-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; list-style: none; margin: 0 !important; padding: 0 !important; }
.mv-cp-list li { display: flex; align-items: flex-start; gap: 10px; padding: 10px 12px; border-radius: 12px; background: var(--mv-ivory-50); min-width: 0; }
.mv-cp-ic { flex: none; width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; background: var(--mv-success); color: #fff; }
.mv-cp-ic .mv-i { width: 13px; height: 13px; }
.mv-cp-list li.is-no .mv-cp-ic { background: var(--mv-sand-200, #e5ddd2); color: var(--mv-text-2); }
.mv-cp-list li.is-open .mv-cp-ic { background: var(--mv-success-bg); color: var(--mv-success); }
.mv-cp-t { min-width: 0; }
.mv-cp-t b { display: block; font-size: 13.5px; color: var(--mv-text); }
.mv-cp-t small { display: block; font-size: 12px; color: var(--mv-text-2); overflow-wrap: anywhere; }
.mv-cp-lock { display: flex; align-items: center; gap: 20px; padding: 6px 0; }
.mv-cp-lock b { display: block; font-size: 16px; color: var(--mv-text); }
.mv-cp-lock p { margin: 4px 0 12px !important; font-size: 13.5px; color: var(--mv-text-2); max-width: 46ch; }

/* horoscope */
.mv-hr-table { border: 1px solid var(--mv-border); border-radius: 12px; overflow: hidden; }
.mv-hr-row { display: grid; grid-template-columns: 1.1fr 1fr 1fr; gap: 12px; padding: 10px 14px; font-size: 13.5px; border-top: 1px solid var(--mv-border); }
.mv-hr-row:first-child { border-top: 0; }
.mv-hr-row.is-head { background: var(--mv-ivory-50); font-size: 11.5px; letter-spacing: .05em; text-transform: uppercase; color: var(--mv-text-3); }
.mv-hr-row span { color: var(--mv-text-2); }
.mv-hr-row b { color: var(--mv-text); font-weight: 600; overflow-wrap: anywhere; }
.mv-hr-row b i { font-weight: 400; color: var(--mv-text-3); }
.mv-hr-notes { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.mv-hr-note { display: inline-flex; align-items: center; gap: 6px; height: 28px; padding: 0 12px; border-radius: 14px; font-size: 12.5px; font-weight: 600; }
.mv-hr-note.is-ok { background: var(--mv-success-bg); color: var(--mv-success); }
.mv-hr-note.is-warn { background: var(--mv-warning-bg); color: var(--mv-warning); }
.mv-hr-foot { margin: 12px 0 0 !important; font-size: 12.5px; color: var(--mv-text-3); }
.mv-hr-empty { display: flex; align-items: flex-start; gap: 14px; padding: 4px 0; }
.mv-hr-empty > .mv-i { flex: none; width: 44px; height: 44px; padding: 11px; border-radius: 12px; background: var(--mv-wine-50); color: var(--mv-wine-500); }
.mv-hr-empty b { display: block; font-size: 15px; color: var(--mv-text); }
.mv-hr-empty p { margin: 2px 0 0 !important; font-size: 13.5px; color: var(--mv-text-2); }

/* side column */
.mv-pd-side { position: sticky; top: 76px; display: grid; gap: 14px; }
.mv-pd-card { padding: 16px; border-radius: var(--mv-r-xl); background: var(--mv-surface); border: 1px solid var(--mv-border); box-shadow: var(--mv-shadow-sm); }
.mv-pd-card h3 { display: flex; align-items: center; gap: 8px; margin: 0 0 10px !important; font-size: 15px; font-weight: 600; color: var(--mv-text); }
.mv-pd-card h3 .mv-i { color: var(--mv-wine-500); }
.mv-pd-ver-list { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; gap: 6px; }
.mv-pd-ver-list li { display: flex; align-items: center; gap: 10px; padding: 8px 10px; border-radius: 10px; background: var(--mv-ivory-50); font-size: 13.5px; color: var(--mv-text); }
.mv-pd-ver-list li .mv-i { color: var(--mv-text-3); }
.mv-pd-ver-list li span { flex: 1; }
.mv-pd-ver-list li em { font-style: normal; font-size: 12px; font-weight: 600; color: var(--mv-text-3); }
.mv-pd-ver-list li.is-yes .mv-i, .mv-pd-ver-list li.is-yes em { color: var(--mv-success); }
.mv-pd-people { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; gap: 2px; }
.mv-pd-people a { display: flex; align-items: center; gap: 10px; padding: 7px 8px; border-radius: 12px; text-decoration: none !important; color: var(--mv-text) !important; }
.mv-pd-people a:hover { background: var(--mv-ivory-50); }
.mv-pd-people img { flex: none; width: 42px; height: 42px; border-radius: 50%; object-fit: cover; object-position: 50% 20%; background: var(--mv-sand-100); }
.mv-pd-people span { flex: 1; min-width: 0; }
.mv-pd-people b { display: block; font-size: 13.5px; }
.mv-pd-people small { display: block; font-size: 12px; color: var(--mv-text-2); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mv-pd-people .mv-i { color: var(--mv-text-3); }

@media (max-width: 1199.98px) {
  .mv-pd-hero { grid-template-columns: 260px minmax(0, 1fr); }
  .mv-pd-score { grid-column: 2; flex-direction: row; justify-content: flex-start; text-align: left; padding: 12px 16px; }
  .mv-pd-score .mv-pd-ring { width: 64px; height: 64px; }
  .mv-pd-score .mv-pd-ring b { font-size: 17px; }
  .mv-pd-grid { grid-template-columns: minmax(0, 1fr); }
  .mv-pd-side { position: static; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
}
@media (max-width: 767.98px) {
  .mv-pd { padding-top: 10px; }
  .mv-pd-pn span { display: none; }
  .mv-pd-hero { grid-template-columns: minmax(0, 1fr); gap: 16px; padding: 12px; }
  .mv-pd-photo-a { aspect-ratio: 1 / 1; }
  .mv-pd-score { grid-column: auto; }
  .mv-pd-facts { grid-template-columns: minmax(0, 1fr); }
  .mv-pd-acts > div:first-child { flex: 1 1 100%; }
  .mv-pd-acts > div:first-child .mv-pd-btn { width: 100%; }
  .mv-pd-acts > div:not(:first-child) { flex: 1 1 0; }
  .mv-pd-acts > div:not(:first-child) .mv-pd-btn { width: 100%; padding: 0 10px; font-size: 13px; }
  .mv-pd-tabs { top: 62px; }
  .mv-pd-tabs a { flex: none; }
  html body .mv-pd-main .card-body > .row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html body .mv-pd-main .card-body > .row > .mv-ep-wide { grid-column: 1 / -1; }
  .mv-cp-list { grid-template-columns: minmax(0, 1fr); }
  .mv-cp-head { gap: 14px; }
  .mv-cp-face img, .mv-cp-face .mv-initials { width: 56px; height: 56px; }
  .mv-hr-row { grid-template-columns: 1fr 1fr 1fr; gap: 8px; padding: 9px 10px; font-size: 12.5px; }
}

/* edit forms: grouped fields (mobile, date of birth, height range) fill the row */
html body .mv-ep-panel form .col-xl-6.my-1 .row .row:not(#mv-x) { display: flex !important; flex-wrap: nowrap !important; gap: 8px; width: 100%; margin: 0 !important; }
html body .mv-ep-panel form .col-xl-6.my-1 .row .row:not(#mv-x) > [class*="col"] { flex: 1 1 0 !important; min-width: 0; max-width: none !important; width: auto !important; padding: 0 !important; }
html body .mv-ep-panel form .col-xl-6.my-1 .row .row:not(#mv-x) .form-group { margin: 0 !important; }
html body .mv-ep-panel form .col-xl-6.my-1 .row .row:not(#mv-x) .mv-select { display: block; width: 100%; }
/* date of birth: day | month (wider) | year */
html body .mv-ep-panel form .row .row:has(#dobDay):not(#mv-x) > [class*="col"]:nth-child(2) { flex: 1.6 1 0 !important; }

/* mobile: one joined field like registration */
html body .mv-ep-panel form .row .row:has(select[name="mobile_code"]):not(#mv-x) { gap: 0; height: 40px; border: 1px solid var(--mv-border-strong); border-radius: 10px; background: var(--mv-ivory-50); overflow: visible; transition: border-color var(--mv-fast) ease, box-shadow var(--mv-fast) ease; }
html body .mv-ep-panel form .row .row:has(select[name="mobile_code"]):not(#mv-x):focus-within { border-color: var(--mv-wine-500); background: var(--mv-surface); box-shadow: 0 0 0 3px var(--mv-wine-100); }
html body .mv-ep-panel form .row .row:has(select[name="mobile_code"]):not(#mv-x) > [class*="col"]:first-child { flex: 0 0 104px !important; border-right: 1px solid var(--mv-border); }
html body .mv-ep-panel form .row .row:has(select[name="mobile_code"]) .form-control,
html body .mv-ep-panel form .row .row:has(select[name="mobile_code"]) .mv-sel-btn { height: 38px !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }
html body .mv-ep-panel form .row .row:has(select[name="mobile_code"]) > [class*="col"]:first-child .mv-sel-btn { border-radius: 10px 0 0 10px !important; }

/* multi select (chosen): clean tag field */
html body .mv-ep-panel form .chosen-container { width: 100% !important; font-size: 14px; }
html body .mv-ep-panel form .chosen-container-multi .chosen-choices { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; min-height: 40px !important; height: auto !important; padding: 4px 8px !important; border: 1px solid var(--mv-border-strong) !important; border-radius: 10px !important; background: var(--mv-ivory-50) !important; background-image: none !important; box-shadow: none !important; cursor: text; }
html body .mv-ep-panel form .chosen-container-active .chosen-choices { border-color: var(--mv-wine-500) !important; background: var(--mv-surface) !important; box-shadow: 0 0 0 3px var(--mv-wine-100) !important; }
html body .mv-ep-panel form .chosen-container-multi .chosen-choices li { float: none !important; }
html body .mv-ep-panel form .chosen-container-multi .chosen-choices li.search-choice { position: relative; display: inline-flex; align-items: center; height: 26px; margin: 0 !important; padding: 0 26px 0 10px !important; border-radius: 13px !important; border: 1px solid var(--mv-wine-100) !important; background: var(--mv-wine-50) !important; background-image: none !important; box-shadow: none !important; color: var(--mv-text) !important; font-size: 12.5px !important; font-weight: 500; line-height: 1 !important; }
html body .mv-ep-panel form .chosen-container-multi .chosen-choices li.search-choice .search-choice-close { top: 50% !important; right: 7px !important; width: 14px !important; height: 14px !important; margin-top: -7px; border-radius: 50%; background: var(--mv-wine-200) !important; opacity: .9; }
html body .mv-ep-panel form .chosen-container-multi .chosen-choices li.search-choice .search-choice-close::before, html body .mv-ep-panel form .chosen-container-multi .chosen-choices li.search-choice .search-choice-close::after { content: ""; position: absolute; left: 3px; right: 3px; top: 6.5px; height: 1.5px; background: #fff; transform: rotate(45deg); }
html body .mv-ep-panel form .chosen-container-multi .chosen-choices li.search-choice .search-choice-close::after { transform: rotate(-45deg); }
html body .mv-ep-panel form .chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover { background: var(--mv-wine-500) !important; }
html body .mv-ep-panel form .chosen-container-multi .chosen-choices li.search-field input[type="text"] { height: 28px !important; margin: 0 !important; padding: 0 4px !important; font: 14px var(--mv-font-body) !important; color: var(--mv-text) !important; }
html body .mv-ep-panel form .chosen-container .chosen-drop { margin-top: 6px; border: 1px solid var(--mv-border) !important; border-radius: 12px !important; box-shadow: 0 12px 30px rgba(42,36,33,.14) !important; overflow: hidden; background: var(--mv-surface) !important; }
html body .mv-ep-panel form .chosen-container .chosen-results { max-height: 240px; margin: 0 !important; padding: 6px !important; }
html body .mv-ep-panel form .chosen-container .chosen-results li { padding: 8px 10px !important; border-radius: 8px; font-size: 13.5px; color: var(--mv-text); line-height: 1.3; }
html body .mv-ep-panel form .chosen-container .chosen-results li.highlighted { background: var(--mv-wine-50) !important; background-image: none !important; color: var(--mv-wine-500) !important; }
html body .mv-ep-panel form .chosen-container .chosen-results li.result-selected { color: var(--mv-text-3) !important; }

/* undo the mobile rule on the outer label/field row */
html body .mv-ep-panel form .col-xl-6.my-1:not(#mv-x) > .row:has(select[name="mobile_code"]) { display: flex !important; flex-direction: column !important; height: auto !important; border: 0 !important; background: none !important; box-shadow: none !important; gap: 0 !important; }
html body .mv-ep-panel form .col-xl-6.my-1:not(#mv-x) > .row:has(select[name="mobile_code"]) > [class*="col"] { flex: none !important; width: 100% !important; border: 0 !important; }

/* tag-style multi select */
.mv-multi { position: relative; width: 100%; }
.mv-multi-field { position: relative; display: flex; align-items: center; min-height: 40px; padding: 4px 36px 4px 8px; border: 1px solid var(--mv-border-strong); border-radius: 10px; background: var(--mv-ivory-50); cursor: pointer; transition: border-color var(--mv-fast) ease, box-shadow var(--mv-fast) ease; }
.mv-multi-field:hover { border-color: var(--mv-wine-200); }
.mv-multi.is-open .mv-multi-field, .mv-multi-field:focus { outline: 0; border-color: var(--mv-wine-500); background: var(--mv-surface); box-shadow: 0 0 0 3px var(--mv-wine-100); }
.mv-multi-tags { display: flex; flex-wrap: wrap; gap: 4px; }
.mv-multi-ph { padding-left: 4px; font-size: 14px; color: var(--mv-text-3); }
.mv-multi.has-val .mv-multi-ph { display: none; }
.mv-multi-caret { position: absolute; right: 12px; top: 50%; width: 8px; height: 8px; margin-top: -6px; border-right: 1.8px solid var(--mv-wine-500); border-bottom: 1.8px solid var(--mv-wine-500); transform: rotate(45deg); transition: transform var(--mv-fast) ease; }
.mv-multi.is-open .mv-multi-caret { transform: rotate(-135deg); margin-top: -2px; }
.mv-multi-tag { display: inline-flex; align-items: center; gap: 4px; height: 26px; padding: 0 4px 0 10px; border-radius: 13px; background: var(--mv-wine-50); border: 1px solid var(--mv-wine-100); color: var(--mv-text); font-size: 12.5px; font-weight: 500; white-space: nowrap; }
.mv-multi-x { position: relative; width: 18px; height: 18px; padding: 0; border: 0; border-radius: 50%; background: transparent; cursor: pointer; }
.mv-multi-x::before, .mv-multi-x::after { content: ""; position: absolute; left: 5px; right: 5px; top: 8.5px; height: 1.5px; background: var(--mv-wine-500); transform: rotate(45deg); }
.mv-multi-x::after { transform: rotate(-45deg); }
.mv-multi-x:hover { background: var(--mv-wine-100); }
.mv-multi-pop { position: absolute; left: 0; right: 0; top: calc(100% + 6px); z-index: 50; padding: 8px; border-radius: 12px; background: var(--mv-surface); border: 1px solid var(--mv-border); box-shadow: 0 14px 34px rgba(42,36,33,.16); animation: mvRfIn .15s ease both; }
.mv-multi-q { width: 100%; height: 36px; margin-bottom: 6px; padding: 0 10px; border: 1px solid var(--mv-border); border-radius: 8px; background: var(--mv-ivory-50); font: 14px var(--mv-font-body); color: var(--mv-text); outline: 0; }
.mv-multi-q:focus { border-color: var(--mv-wine-200); background: var(--mv-surface); }
.mv-multi-list { max-height: 230px; overflow-y: auto; margin: 0 !important; padding: 0 !important; list-style: none; }
.mv-multi-list li { display: flex; align-items: center; gap: 10px; padding: 8px 8px; border-radius: 8px; font-size: 13.5px; color: var(--mv-text); cursor: pointer; }
.mv-multi-list li:hover { background: var(--mv-ivory-50); }
.mv-multi-list li[hidden] { display: none; }
.mv-multi-cb { flex: none; position: relative; width: 18px; height: 18px; border-radius: 5px; border: 1.5px solid var(--mv-border-strong); background: var(--mv-surface); transition: background var(--mv-fast) ease, border-color var(--mv-fast) ease; }
.mv-multi-list li.is-on .mv-multi-cb { background: var(--mv-primary); border-color: var(--mv-primary); }
.mv-multi-list li.is-on .mv-multi-cb::after { content: ""; position: absolute; left: 5px; top: 1.5px; width: 5px; height: 9px; border-right: 2px solid #fff; border-bottom: 2px solid #fff; transform: rotate(45deg); }
.mv-multi-list li.is-on { color: var(--mv-wine-500); font-weight: 600; }
html body .mv-ep-panel form .row .row:has(select[name="mobile_code"]) .form-control:focus { border: 0 !important; box-shadow: none !important; background: transparent !important; }
html body .mv-ep-panel, html body .mv-ep-panel .card:not(.chat_list_box):not(.active_list_box):not(.chat_box):not(#mv-x) { overflow: visible !important; }
html body .mv-ep-panel .mv-ep-phead { border-radius: var(--mv-r-xl) var(--mv-r-xl) 0 0; }
html body .mv-multi-q:focus, html body .mv-multi-q:focus-visible { outline: 0 !important; box-shadow: none !important; border-color: var(--mv-wine-200) !important; }
.mv-pd-side { grid-template-columns: minmax(0, 1fr); min-width: 0; }
.mv-pd-side > * { min-width: 0; }
@media (max-width: 1199.98px) { .mv-pd-side { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); } }
/* edit profile: no accent line on top, one input style everywhere */
.mv-ep-hero::before { display: none !important; }
html body .mv-ep-panel form input.form-control:not([type="hidden"]):not(#mv-x), html body .mv-ep-panel form textarea.form-control:not(#mv-x), html body .mv-ep-panel .mv-ep-sel .mv-sel-btn:not(#mv-x), html body .mv-ep-panel .mv-multi-field { border: 1px solid var(--mv-border-strong) !important; background: var(--mv-ivory-50) !important; color: var(--mv-text) !important; box-shadow: none !important; }
html body .mv-ep-panel form input.form-control:not(#mv-x):focus, html body .mv-ep-panel form textarea.form-control:not(#mv-x):focus { border-color: var(--mv-wine-500) !important; background: var(--mv-surface) !important; box-shadow: 0 0 0 3px var(--mv-wine-100) !important; }
html body .mv-ep-panel form .row .row:has(select[name="mobile_code"]) input.form-control:not(#mv-x), html body .mv-ep-panel form .row .row:has(select[name="mobile_code"]) input.form-control:not(#mv-x):focus, html body .mv-ep-panel form .row .row:has(select[name="mobile_code"]) .mv-sel-btn:not(#mv-x) { height: 38px !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }
html body .mv-ep-panel form .row .row:has(select[name="mobile_code"]):not(#mv-x):focus-within { background: var(--mv-surface) !important; }
html body .mv-pd-main .card > .card-header h5::before { display: none !important; }
.mv-pd-card { overflow: hidden; }
.mv-pd-people li, .mv-pd-people a { min-width: 0; }
.mv-pd-people a > .mv-i { flex: none; }
@media (min-width: 1200px) { .mv-pd-hero { grid-template-columns: 280px minmax(0, 1fr) 190px; gap: 24px; } .mv-pd-acts .mv-pd-btn { padding: 0 15px; font-size: 13.5px; } }
/* edit profile view tiles v4: tighter, clearer colours */
html body .mv-ep-panel .user-details-sections .card-body > .row { gap: 6px !important; }
html body .mv-ep-panel .user-details-sections .card-body > .row > [class*="col"] > .row { gap: 1px !important; padding: 7px 12px !important; border: 1px solid var(--mv-border) !important; background: var(--mv-surface) !important; border-radius: 10px !important; }
html body .mv-ep-panel .user-details-sections .card-body > .row > [class*="col"] > .row:hover { border-color: var(--mv-wine-200) !important; background: var(--mv-wine-50) !important; box-shadow: none !important; }
html body .mv-ep-panel .user-details-sections .card-body p.mb-1:not(.font-weight-bold) { font-size: 10.5px !important; font-weight: 600 !important; letter-spacing: .05em !important; color: var(--mv-wine-400) !important; }
html body .mv-ep-panel .user-details-sections .card-body p.mb-1.font-weight-bold { font-size: 14px !important; font-weight: 500 !important; color: #2A2421 !important; }
html body .mv-ep-panel .user-details-sections .card-body p.mb-1.font-weight-bold:empty::before { color: rgba(42,36,33,.45); }
html body .mv-ep-panel .card:not(.chat_list_box):not(.active_list_box):not(.chat_box):not(#mv-x) > .card-body { padding: 12px 16px 16px !important; }
.mv-ep-phead { padding: 12px 16px; }
/* mobile privacy switch inline with the number */
html body .mv-ep-panel p.font-weight-bold:has(.mv-ep-privsw) { flex-direction: row !important; flex-wrap: wrap; align-items: center !important; gap: 4px 12px; }
html body .mv-ep-panel .mv-ep-privsw { margin: 0 !important; gap: 6px; }
html body .mv-ep-panel .mv-ep-privsw .mv-switch-ui { width: 30px; height: 18px; }
html body .mv-ep-panel .mv-ep-privsw .mv-switch-ui::after { width: 14px; height: 14px; }
html body .mv-ep-panel .mv-ep-privsw:has(input:checked) .mv-switch-ui::after { transform: translateX(12px); }
html body .mv-ep-panel .mv-ep-privsw-t { font-size: 12px !important; font-weight: 500 !important; color: var(--mv-text-2) !important; }
/* edit profile: calm focus state */
html body .mv-ep-panel form input.form-control:not(#mv-x):focus, html body .mv-ep-panel form textarea.form-control:not(#mv-x):focus,
html body .mv-ep-panel form input.form-control:not(#mv-x):focus-visible, html body .mv-ep-panel form textarea.form-control:not(#mv-x):focus-visible,
html body .mv-ep-panel .mv-ep-sel .mv-sel-btn:not(#mv-x):focus, html body .mv-ep-panel .mv-ep-sel .mv-sel-btn:not(#mv-x):focus-visible,
html body .mv-ep-panel .mv-ep-sel.is-open .mv-sel-btn:not(#mv-x), html body .mv-ep-panel .mv-multi-field:focus, html body .mv-ep-panel .mv-multi.is-open .mv-multi-field { outline: 0 !important; border-color: var(--mv-wine-400) !important; background: var(--mv-surface) !important; box-shadow: 0 0 0 3px rgba(163,52,58,.08) !important; }
html body .mv-ep-panel form .row .row:has(select[name="mobile_code"]):not(#mv-x):focus-within { border-color: var(--mv-wine-400) !important; box-shadow: 0 0 0 3px rgba(163,52,58,.08) !important; }
html body .mv-ep-panel form .row .row:has(select[name="mobile_code"]) input.form-control:not(#mv-x):focus-visible, html body .mv-ep-panel form .row .row:has(select[name="mobile_code"]) .mv-sel-btn:not(#mv-x):focus-visible { outline: 0 !important; box-shadow: none !important; border: 0 !important; background: transparent !important; }
html body .mv-ep-panel .chosen-container-active .chosen-choices { border-color: var(--mv-wine-400) !important; box-shadow: 0 0 0 3px rgba(163,52,58,.08) !important; }
/* manage photos v3: compact header, equal small tiles */
html body .mv-ph-head::before { display: none !important; }
html body .mv-ph-head { gap: 14px !important; padding: 16px 18px !important; box-shadow: var(--mv-shadow-sm) !important; }
html body .mv-ph-head-ic { width: 44px !important; height: 44px !important; border-radius: 12px !important; box-shadow: none !important; }
html body .mv-ph-head h1 { font-size: 21px !important; margin: 2px 0 2px !important; }
html body .mv-ph-head p { font-size: 13px !important; max-width: 56ch; }
html body .mv-ph-back { font-size: 12.5px !important; }
html body .mv-ph-count { min-width: 150px !important; padding: 10px 14px !important; }
html body .mv-ph-count b { font-size: 22px !important; }
html body .mv-ph-privacy { padding: 10px 14px !important; gap: 12px !important; box-shadow: none !important; }
html body .mv-ph-privacy-ic { width: 36px !important; height: 36px !important; border-radius: 10px !important; }
html body .mv-ph-privacy-t b { font-size: 14px !important; }
html body .mv-ph-privacy-t small { font-size: 12.5px !important; }
html body .mv-ph-main { gap: 12px !important; }
html body .mv-ph-gallery { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 12px !important; max-width: 640px; }
@media (min-width: 768px) { html body .mv-ph-card.is-main { grid-column: auto !important; grid-row: auto !important; aspect-ratio: 4 / 5 !important; } }
html body .mv-ph-card { aspect-ratio: 4 / 5 !important; border-radius: 14px !important; box-shadow: none !important; }
html body .mv-ph-card.is-empty { gap: 4px !important; border: 1.5px dashed var(--mv-wine-200) !important; background: var(--mv-surface) !important; }
html body .mv-ph-card.is-empty:hover { background: var(--mv-wine-50) !important; transform: none !important; border-color: var(--mv-wine-400) !important; }
html body .mv-ph-plus { width: 34px !important; height: 34px !important; margin-bottom: 2px !important; box-shadow: none !important; }
html body .mv-ph-plus .mv-i { width: 16px; height: 16px; }
html body .mv-ph-card.is-empty b { font-size: 13px !important; }
html body .mv-ph-card.is-empty small { font-size: 11.5px !important; }
html body .mv-ph-tag { height: 22px !important; padding: 0 8px !important; font-size: 11px !important; left: 8px !important; top: 8px !important; }
html body .mv-ph-tag.is-review { top: 34px !important; }
html body .mv-ph-btn { height: 30px !important; font-size: 12px !important; }
html body .mv-ph-btn.is-del { width: 30px !important; }
html body .mv-ph-tips { padding: 14px 16px !important; }
html body .mv-ph-tips h2 { font-size: 15px !important; margin-bottom: 8px !important; }
html body .mv-ph-tips li { font-size: 12.5px !important; }
@media (max-width: 767.98px) { html body .mv-ph-gallery { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 8px !important; max-width: none; } html body .mv-ph-card.is-main { grid-column: auto !important; aspect-ratio: 4 / 5 !important; } html body .mv-ph-card.is-empty small { display: none; } }
html body .mv-ph-gallery { max-width: 540px; gap: 10px !important; }
/* photo upload pop-up v2 */
.mv-phm .modal-dialog { max-width: 420px; }
.mv-phm .modal-content { border: 0 !important; border-radius: 18px !important; overflow: hidden; box-shadow: 0 24px 60px rgba(42,36,33,.25) !important; background: var(--mv-surface) !important; }
.mv-phm-head { display: flex; align-items: center; gap: 12px; padding: 16px 18px 12px; }
.mv-phm-ic { flex: none; width: 38px; height: 38px; border-radius: 11px; display: grid; place-items: center; background: var(--mv-wine-50); color: var(--mv-wine-500); }
.mv-phm-ic .mv-i { width: 18px; height: 18px; }
.mv-phm-head > div { flex: 1; min-width: 0; }
.mv-phm-head h3 { margin: 0 !important; font-size: 17px !important; font-weight: 600; color: var(--mv-text); }
.mv-phm-head p { margin: 1px 0 0 !important; font-size: 12.5px; color: var(--mv-text-3); }
.mv-phm-close { flex: none; width: 32px; height: 32px; border-radius: 50%; border: 0; background: var(--mv-sand-100); color: var(--mv-text-2); display: grid; place-items: center; cursor: pointer; }
.mv-phm-close:hover { background: var(--mv-wine-50); color: var(--mv-wine-500); }
.mv-phm-close .mv-i { width: 16px; height: 16px; }
.mv-phm-body { padding: 0 18px 14px; }
html body .mv-phm .mv-ph-drop { height: 200px !important; margin: 0 0 10px !important; border-radius: 14px !important; border: 1.5px dashed var(--mv-wine-200) !important; background: var(--mv-ivory-50) !important; }
html body .mv-phm .mv-ph-drop:hover, html body .mv-phm .mv-ph-drop.is-drag { border-color: var(--mv-wine-400) !important; background: var(--mv-wine-50) !important; }
html body .mv-phm .mv-ph-drop img { object-fit: cover !important; object-position: 50% 25%; background: var(--mv-sand-100); }
.mv-phm-up { width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center; background: var(--mv-surface); color: var(--mv-wine-500); box-shadow: 0 4px 12px rgba(163,52,58,.12); margin-bottom: 6px; }
.mv-phm-up .mv-i { width: 20px; height: 20px; }
html body .mv-phm .mv-ph-drop-empty b { font-size: 14px !important; }
html body .mv-phm .mv-ph-drop-empty small { font-size: 12.5px !important; color: var(--mv-text-3) !important; }
html body .mv-phm .mv-ph-drop-empty u { color: var(--mv-wine-500); text-decoration: none; font-weight: 600; }
.mv-phm-change { position: absolute; right: 10px; bottom: 10px; z-index: 2; display: none; align-items: center; gap: 5px; height: 28px; padding: 0 10px; border-radius: 14px; background: rgba(255,255,255,.95); color: var(--mv-text); font-size: 12px; font-weight: 600; box-shadow: 0 2px 8px rgba(0,0,0,.15); }
.mv-ph-drop.has-img .mv-phm-change { display: inline-flex; }
.mv-phm-tips { display: flex; flex-wrap: wrap; gap: 6px 14px; list-style: none; margin: 0 !important; padding: 0 !important; }
.mv-phm-tips li { display: inline-flex; align-items: center; gap: 5px; font-size: 12px; color: var(--mv-text-2); }
.mv-phm-tips .mv-i { width: 14px; height: 14px; color: var(--mv-success); }
.mv-phm-foot { display: flex; justify-content: flex-end; gap: 8px; padding: 12px 18px; border-top: 1px solid var(--mv-border); background: var(--mv-ivory-50); }
.mv-phm-cancel, .mv-phm-submit { display: inline-flex; align-items: center; gap: 6px; height: 38px; padding: 0 16px; border-radius: 19px; font: 600 13.5px var(--mv-font-body); cursor: pointer; }
.mv-phm-cancel { border: 1px solid var(--mv-border-strong); background: var(--mv-surface); color: var(--mv-text-2); }
.mv-phm-cancel:hover { color: var(--mv-text); border-color: var(--mv-text-3); }
.mv-phm-submit { border: 0; background: var(--mv-primary); color: #fff; }
.mv-phm-submit:hover { background: #8e2a31; }
.mv-phm-submit:disabled { background: var(--mv-wine-200); cursor: not-allowed; }
/* manage photos v4: one row of six, guidelines below */
@media (min-width: 992px) {
  html body .mv-ph-main { grid-template-columns: minmax(0, 1fr) !important; gap: 12px !important; }
  html body .mv-ph-tips { position: static !important; }
  html body .mv-ph-tips ul { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 6px 18px !important; }
}
html body .mv-ph-gallery { max-width: none !important; grid-template-columns: repeat(6, minmax(0, 1fr)) !important; gap: 10px !important; }
@media (max-width: 991.98px) { html body .mv-ph-gallery { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; } }
html body .mv-ph-card { aspect-ratio: 3 / 4 !important; border-radius: 12px !important; }
html body .mv-ph-card.is-empty { border: 1.5px dashed var(--mv-border-strong) !important; background: var(--mv-ivory-50) !important; }
html body .mv-ph-card.is-empty .mv-ph-plus { width: 30px !important; height: 30px !important; background: var(--mv-surface) !important; color: var(--mv-wine-500) !important; border: 1px solid var(--mv-wine-200); }
html body .mv-ph-card.is-empty:hover .mv-ph-plus { background: var(--mv-primary) !important; color: #fff !important; border-color: var(--mv-primary); }
html body .mv-ph-card.is-empty b { font-size: 12.5px !important; font-weight: 600 !important; }
html body .mv-ph-card.is-empty small { font-size: 11px !important; color: var(--mv-text-3) !important; }
/* hidden photo: small badge instead of a full cover */
html body .mv-ph-hidden { inset: auto 8px 8px auto !important; flex-direction: row !important; gap: 4px !important; height: 22px; padding: 0 8px; border-radius: 11px; background: rgba(20,10,12,.7) !important; font-size: 11px !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important; }
html body .mv-ph-hidden .mv-i { width: 12px; height: 12px; }
html body .mv-ph-tips { padding: 12px 16px !important; }
/* =====================================================================
   MEMBER LISTS (my matches, heart list, visited, featured, don't show again, results)
   ===================================================================== */
html body .mv-lst { background: var(--mv-bg) !important; background-image: var(--mv-grad-hero) !important; background-size: 100% 300px !important; background-repeat: no-repeat !important; padding: 20px 0 56px; }
html body .mv-lst > .container { max-width: 1240px !important; padding-left: 16px !important; padding-right: 16px !important; }
html body .mv-lst .gt-hearts, html body .mv-lst .gt-hearts-group { display: none !important; }
html body .mv-lst h3.textLightS { margin: 4px 0 4px !important; text-align: left !important; font-family: var(--mv-font-head) !important; font-size: clamp(24px, 3vw, 30px) !important; font-weight: 600 !important; color: var(--mv-text) !important; }
html body .mv-lst p.indexContent, html body .mv-lst .gt-text-Grey { margin: 0 0 14px !important; max-width: 70ch; text-align: left !important; font-size: 14px !important; letter-spacing: 0 !important; color: var(--mv-text-2) !important; }
html body .mv-lst .col-lg-8.m-auto { margin-left: 0 !important; max-width: 100%; flex: 0 0 100%; }
html body .mv-lst .mv-lst-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin: 6px 0 22px; }
@media (max-width: 1199.98px) { html body .mv-lst .mv-lst-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 767.98px) { html body .mv-lst .mv-lst-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; } html body .mv-lst { padding-top: 12px; } }
/* pager */
html body .mv-lst #pagination nav, html body .mv-lst nav.w-100 { display: flex; justify-content: center; }
html body .mv-lst .pagination { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; margin: 8px 0 0 !important; }
html body .mv-lst .pagination li a, html body .mv-lst .pagination li span, html body .mv-lst #pagination a:not(.mv-pc *), html body .mv-lst #pagination strong { display: inline-flex !important; align-items: center; justify-content: center; min-width: 38px; height: 38px; padding: 0 12px !important; border-radius: 19px !important; border: 1px solid var(--mv-border) !important; background: var(--mv-surface) !important; color: var(--mv-text) !important; font: 600 13.5px var(--mv-font-body) !important; text-decoration: none !important; box-shadow: none !important; }
html body .mv-lst .pagination li.active a, html body .mv-lst .pagination li.active span, html body .mv-lst #pagination strong { background: var(--mv-primary) !important; border-color: var(--mv-primary) !important; color: #fff !important; }
html body .mv-lst .pagination li a:hover, html body .mv-lst #pagination a:not(.mv-pc *):hover { border-color: var(--mv-wine-200) !important; background: var(--mv-wine-50) !important; }
html body .mv-ph-card, html body .mv-ph-card.is-main { aspect-ratio: 3 / 4 !important; grid-column: auto !important; grid-row: auto !important; height: auto !important; }
html body .mv-ph-card { border: 1px solid var(--mv-border) !important; }
html body .mv-ph-card.is-empty { border: 1px solid var(--mv-border-strong) !important; background: linear-gradient(180deg, var(--mv-surface), var(--mv-ivory-50)) !important; transition: border-color var(--mv-fast) ease, box-shadow var(--mv-fast) ease, background var(--mv-fast) ease !important; }
html body .mv-ph-card.is-empty:hover { border-color: var(--mv-wine-300) !important; background: var(--mv-wine-50) !important; box-shadow: 0 6px 16px rgba(163,52,58,.08) !important; }
html body .mv-ph-card.is-empty.is-main { border-color: var(--mv-wine-200) !important; }
/* interest pages */
html body .mv-lst ul.mv-lst-tabs { display: inline-flex !important; flex-wrap: wrap; gap: 4px; margin: 4px 0 18px !important; padding: 5px !important; border: 1px solid var(--mv-border) !important; border-radius: 16px; background: var(--mv-surface); box-shadow: var(--mv-shadow-sm); }
html body .mv-lst .gt-search-opt { padding: 0 !important; background: none !important; }
html body .mv-lst .gt-hearts:has(.mv-lst-tabs), html body .mv-lst .gt-hearts-group:has(.mv-lst-tabs) { display: block !important; background: none !important; margin: 0 !important; padding: 0 !important; width: 100%; }
html body .mv-lst ul.mv-lst-tabs li { margin: 0 !important; }
html body .mv-lst ul.mv-lst-tabs li a { display: inline-flex !important; align-items: center; gap: 6px; height: 38px; padding: 0 16px !important; border: 0 !important; border-radius: 12px !important; background: transparent !important; color: var(--mv-text-2) !important; font: 600 13.5px var(--mv-font-body) !important; text-decoration: none !important; box-shadow: none !important; white-space: nowrap; }
html body .mv-lst ul.mv-lst-tabs li a:hover { background: var(--mv-sand-100) !important; color: var(--mv-text) !important; }
html body .mv-lst ul.mv-lst-tabs li a.is-on { background: var(--mv-primary) !important; color: #fff !important; }
html body .mv-lst ul.mv-lst-tabs li a span { font-weight: 700; }
.mv-pc-status { display: inline-flex; align-items: center; height: 22px; padding: 0 9px; border-radius: 11px; background: var(--mv-primary); color: #fff; font-size: 11px; font-weight: 700; letter-spacing: .01em; }
.mv-pc-badges .mv-pc-status + .mv-pc-online { position: static; }
.mv-pc-act.is-pair { gap: 6px; }
.mv-pc-act.is-pair .mv-pc-main.is-accept { background: var(--mv-success) !important; box-shadow: 0 6px 14px rgba(46,125,80,.22) !important; }
.mv-pc-act .mv-pc-sec { flex: 1; min-width: 0; display: inline-flex !important; align-items: center; justify-content: center; gap: 6px; height: 38px; padding: 0 10px !important; border-radius: 19px !important; border: 1px solid var(--mv-border-strong) !important; background: var(--mv-surface) !important; color: var(--mv-text-2) !important; font: 600 13.5px var(--mv-font-body) !important; text-decoration: none !important; box-shadow: none !important; margin: 0 !important; }
.mv-pc-act .mv-pc-sec:hover { border-color: var(--mv-wine-300) !important; color: var(--mv-wine-500) !important; background: var(--mv-wine-50) !important; }
.mv-pc-act.is-pair .mv-pc-main, .mv-pc-act.is-pair .mv-pc-sec { flex: 1 1 0 !important; margin: 0 !important; }
/* empty state */
html body .mv-lst .matches-blog-row.img-thumbnail { display: flex !important; flex-direction: column; align-items: center; gap: 8px; padding: 36px 20px !important; border: 1px dashed var(--mv-border-strong) !important; border-radius: var(--mv-r-xl) !important; background: var(--mv-surface) !important; }
html body .mv-lst .matches-blog-row.img-thumbnail h1 { margin: 0 !important; font-family: var(--mv-font-head) !important; font-size: 18px !important; font-weight: 600 !important; color: var(--mv-text) !important; }
html body .mv-lst .matches-blog-row.img-thumbnail .thumbnail { margin: 4px 0 0 !important; }
html body .mv-lst .matches-blog-row.img-thumbnail img { max-width: 160px !important; opacity: .85; }
html body .mv-lst > .container > .row > .col-12 > ul { margin: 0 !important; padding: 0 !important; list-style: none; }
html body .mv-lst .gt-hearts:has(.mv-lst-tabs)::before, html body .mv-lst .gt-hearts:has(.mv-lst-tabs)::after, html body .mv-lst .gt-hearts-group:has(.mv-lst-tabs)::before, html body .mv-lst .gt-hearts-group:has(.mv-lst-tabs)::after { display: none !important; }
html body .mv-lst .gt-hearts:has(.mv-lst-tabs) { border: 0 !important; text-align: left !important; }
html body .mv-lst .row:has(> .gt-hearts .mv-lst-tabs) { margin: 0 !important; border: 0 !important; }
html body .mv-lst ul.mv-lst-tabs li, html body .mv-lst ul.mv-lst-tabs li.item { border: 0 !important; background: none !important; box-shadow: none !important; padding: 0 !important; }
html body .mv-lst ul.mv-lst-tabs li a:not(.is-on) { border: 0 !important; background: transparent !important; box-shadow: none !important; }
@media (max-width: 767.98px) { html body .mv-lst ul.mv-lst-tabs { display: flex !important; flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; } html body .mv-lst ul.mv-lst-tabs li a { padding: 0 12px !important; font-size: 13px !important; } }
@media (max-width: 767.98px) { .mv-pc-act.is-pair { flex-direction: column; flex-wrap: nowrap; } .mv-pc-act.is-pair .mv-pc-main, .mv-pc-act.is-pair .mv-pc-sec { flex: none !important; width: 100%; height: 34px; font-size: 12.5px !important; } }
/* =====================================================================
   MEMBER SIDEBAR v2 + ACCOUNT PAGE SHELL (pages with the side menu)
   ===================================================================== */
html body .gt-view-profile:has(.mv-mnav), html body .container:has(> .row > [class*="col"] .mv-mnav) { max-width: 1200px !important; padding: 22px 16px 56px !important; }
html body .row:has(> [class*="col"] .mv-mnav) { display: grid !important; grid-template-columns: 250px minmax(0, 1fr); gap: 24px; align-items: start; margin: 0 !important; }
html body .row:has(> [class*="col"] .mv-mnav) > [class*="col"] { max-width: none !important; flex: none !important; width: auto !important; padding: 0 !important; margin: 0 !important; }
html body .row:has(> [class*="col"] .mv-mnav) > [class*="col"]:not(:has(.mv-mnav)) { padding-top: 0 !important; }
html body .row:has(> [class*="col"] .mv-mnav) .mt-md-5, html body .row:has(> [class*="col"] .mv-mnav) .pt-md-5 { margin-top: 0 !important; padding-top: 0 !important; }
/* the menu: one compact card, sticky, scrolls inside */
html body .mv-mnav { position: sticky; top: 84px; display: block; padding: 8px; border-radius: 16px; background: var(--mv-surface); border: 1px solid var(--mv-border); box-shadow: var(--mv-shadow-sm); max-height: calc(100vh - 100px); overflow-y: auto; scrollbar-width: thin; scrollbar-color: var(--mv-sand-200, #e5ddd2) transparent; }
html body .mv-mnav-me { padding: 8px 8px 12px !important; margin-bottom: 4px; border: 0 !important; border-bottom: 1px solid var(--mv-border) !important; border-radius: 0 !important; box-shadow: none !important; background: none !important; gap: 10px !important; }
html body .mv-mnav .mv-mnav-pic { width: 40px !important; height: 40px !important; min-width: 40px; }
html body .mv-mnav .mv-mnav-pic > img, html body .mv-mnav .mv-mnav-pic > .mv-initials { width: 40px !important; height: 40px !important; font-size: 14px !important; }
html body .mv-mnav-me b { font-size: 14px !important; max-width: 160px !important; }
html body .mv-mnav-me small { font-size: 11.5px !important; }
html body .mv-mnav nav { padding: 0 !important; border: 0 !important; box-shadow: none !important; background: none !important; }
html body .mv-mnav-h { margin: 10px 8px 3px !important; font-size: 10.5px !important; letter-spacing: .08em; }
html body .mv-mnav nav a { gap: 9px !important; height: 34px; padding: 0 9px !important; border-radius: 9px !important; font-size: 13.5px !important; border: 1px solid transparent; }
html body .mv-mnav nav a .mv-i { width: 15px; height: 15px; }
html body .mv-mnav nav a b { min-width: 20px !important; height: 18px !important; font-size: 10.5px !important; }
html body .mv-mnav nav a.is-on { background: var(--mv-wine-50) !important; border-color: var(--mv-wine-100); }
@media (max-width: 991.98px) {
  html body .row:has(> [class*="col"] .mv-mnav) { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  html body .mv-mnav { position: static; max-height: none; padding: 6px; }
  html body .mv-mnav-me { display: none !important; }
  html body .mv-mnav nav { display: flex !important; gap: 6px; overflow-x: auto; scrollbar-width: none; }
  html body .mv-mnav-h { display: none !important; }
  html body .mv-mnav nav a { flex: none; height: 34px; border: 1px solid var(--mv-border) !important; border-radius: 17px !important; padding: 0 12px !important; }
}
/* shared content look on these pages */
html body .row:has(> [class*="col"] .mv-mnav) h2.textLightS, html body .row:has(> [class*="col"] .mv-mnav) h3.textLightS, html body .row:has(> [class*="col"] .mv-mnav) h2.mv-acc-title { margin: 0 0 4px !important; text-align: left !important; font-family: var(--mv-font-head) !important; font-size: clamp(22px, 2.6vw, 28px) !important; font-weight: 600 !important; color: var(--mv-text) !important; }
html body .row:has(> [class*="col"] .mv-mnav) .gt-profile-pic-title { margin: 0 !important; padding: 16px 20px !important; border-radius: 16px 16px 0 0 !important; background: var(--mv-surface) !important; border: 1px solid var(--mv-border) !important; border-bottom: 0 !important; }
html body .row:has(> [class*="col"] .mv-mnav) .gt-profile-pic-title h4 { margin: 0 !important; font-family: var(--mv-font-head) !important; font-size: 19px !important; font-weight: 600 !important; color: var(--mv-text) !important; }
html body .row:has(> [class*="col"] .mv-mnav) .gt-profile-pic-panel { margin: 0 !important; padding: 18px 20px 22px !important; border-radius: 0 0 16px 16px !important; background: var(--mv-surface) !important; border: 1px solid var(--mv-border) !important; box-shadow: var(--mv-shadow-sm) !important; }
/* account pages: shared card */
.mv-acc { padding: 20px 22px 22px; border-radius: 18px; background: var(--mv-surface); border: 1px solid var(--mv-border); box-shadow: var(--mv-shadow-sm); }
.mv-acc + .mv-acc { margin-top: 16px; }
.mv-acc-head { display: flex; align-items: flex-start; gap: 14px; margin-bottom: 16px; }
.mv-acc-ic { flex: none; width: 44px; height: 44px; border-radius: 12px; display: grid; place-items: center; background: var(--mv-wine-50); color: var(--mv-wine-500); }
.mv-acc-ic .mv-i { width: 20px; height: 20px; }
.mv-acc-head > div { flex: 1; min-width: 0; }
.mv-acc-head p { margin: 2px 0 0 !important; font-size: 13.5px; color: var(--mv-text-2); }
.mv-acc-head .mv-acc-tools { flex: none; display: flex; gap: 8px; align-items: center; }
html body .mv-acc .mv-acc-title { margin: 0 !important; font-size: 21px !important; }
.mv-acc-flash { margin-bottom: 14px; }
.mv-acc-flash .alert { margin: 0; border-radius: 12px; }
.mv-acc-form { display: grid; gap: 14px; max-width: 460px; }
.mv-acc-field { display: grid; gap: 6px; margin: 0; }
.mv-acc-field > span:first-child { font-size: 12.5px; font-weight: 600; color: var(--mv-text-2); }
html body .mv-acc .form-control { height: 42px; border-radius: 10px !important; border: 1px solid var(--mv-border-strong) !important; background: var(--mv-ivory-50) !important; box-shadow: none !important; font-size: 14px; color: var(--mv-text); }
html body .mv-acc .form-control:focus { border-color: var(--mv-wine-400) !important; background: var(--mv-surface) !important; box-shadow: 0 0 0 3px rgba(163,52,58,.08) !important; outline: 0 !important; }
.mv-acc-pw { position: relative; display: block; }
html body .mv-acc-pw .form-control { padding-right: 44px !important; }
.mv-acc-eye { position: absolute; right: 6px; top: 50%; width: 32px; height: 32px; margin-top: -16px; border: 0; border-radius: 8px; background: transparent; color: var(--mv-text-3); display: grid; place-items: center; cursor: pointer; }
.mv-acc-eye:hover, .mv-acc-eye.is-on { color: var(--mv-wine-500); background: var(--mv-wine-50); }
.mv-acc-hint { font-size: 12px; color: var(--mv-error); }
.mv-acc-actions { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 4px; }
.mv-acc-btn { display: inline-flex; align-items: center; justify-content: center; gap: 7px; height: 42px; padding: 0 20px; border: 0; border-radius: 21px; background: var(--mv-primary); color: #fff !important; font: 600 14px var(--mv-font-body); text-decoration: none !important; cursor: pointer; box-shadow: 0 6px 14px rgba(163,52,58,.2); }
.mv-acc-btn:hover { background: #8e2a31; }
.mv-acc-btn.is-ghost { background: var(--mv-surface); color: var(--mv-text) !important; border: 1px solid var(--mv-border-strong); box-shadow: none; }
.mv-acc-btn.is-ghost:hover { border-color: var(--mv-wine-200); background: var(--mv-wine-50); }
.mv-acc-btn.is-danger { background: var(--mv-error); }
.mv-acc-btn.is-sm { height: 34px; padding: 0 14px; font-size: 13px; }
.mv-acc-empty { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 34px 16px; border: 1px dashed var(--mv-border-strong); border-radius: 14px; text-align: center; color: var(--mv-text-2); font-size: 14px; }
.mv-acc-empty .mv-i { width: 30px; height: 30px; color: var(--mv-wine-300); }
.mv-acc-empty b { font-size: 15px; color: var(--mv-text); }
@media (max-width: 575.98px) { .mv-acc { padding: 16px; } .mv-acc-head { gap: 10px; } .mv-acc-ic { width: 38px; height: 38px; } }
/* my membership */
.mv-mp-plan { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; padding: 18px 20px; border-radius: 14px; background: linear-gradient(135deg, #7c2a31, #a3343a 55%, #c2625f); color: #fff; }
.mv-mp-plan.is-paid { background: linear-gradient(135deg, #6b4a12, #a0741e 50%, #d4a94a); }
.mv-mp-plan-t { display: flex; flex-direction: column; gap: 2px; }
.mv-mp-badge { align-self: flex-start; display: inline-flex; align-items: center; height: 22px; padding: 0 9px; border-radius: 11px; background: rgba(255,255,255,.2); font-size: 11px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.mv-mp-plan-t b { margin-top: 6px; font-family: var(--mv-font-head); font-size: 26px; font-weight: 600; line-height: 1.1; }
.mv-mp-plan-t small { font-size: 14px; opacity: .9; }
.mv-mp-exp { display: flex; flex-direction: column; align-items: flex-end; gap: 2px; text-align: right; }
.mv-mp-exp small { font-size: 12px; opacity: .85; }
.mv-mp-exp b { font-size: 17px; }
.mv-mp-exp em { font-style: normal; display: inline-flex; height: 22px; align-items: center; padding: 0 9px; border-radius: 11px; background: rgba(255,255,255,.95); color: var(--mv-text); font-size: 11.5px; font-weight: 700; }
.mv-mp-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; list-style: none; margin: 12px 0 14px !important; padding: 0 !important; }
.mv-mp-stats li { display: flex; flex-direction: column; gap: 2px; padding: 10px 12px; border-radius: 12px; background: var(--mv-ivory-50); border: 1px solid var(--mv-border); }
.mv-mp-stats li .mv-i { color: var(--mv-wine-500); margin-bottom: 4px; }
.mv-mp-stats li span { font-size: 12px; color: var(--mv-text-2); }
.mv-mp-stats li b { font-size: 16px; color: var(--mv-text); }
.mv-mp-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 16px; list-style: none; margin: 0 !important; padding: 0 !important; }
.mv-mp-list li { display: flex; align-items: center; gap: 10px; font-size: 13.5px; color: var(--mv-text); }
.mv-mp-list li span { flex: none; width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; background: var(--mv-success-bg); color: var(--mv-success); }
.mv-mp-list li span .mv-i { width: 13px; height: 13px; }
.mv-mp-list li.is-no { color: var(--mv-text-3); }
.mv-mp-list li.is-no span { background: var(--mv-sand-100); color: var(--mv-text-3); }
.mv-mp-note p { margin: 0 0 6px !important; font-size: 14px; color: var(--mv-text-2); }
@media (max-width: 575.98px) { .mv-mp-stats, .mv-mp-list { grid-template-columns: minmax(0, 1fr); } .mv-mp-exp { align-items: flex-start; text-align: left; } }
/* header dropdown + search side nav: no left bar on the current item */
html body .mv-dd-menu a.is-current { box-shadow: none !important; background: var(--mv-wine-50) !important; color: var(--mv-wine-500) !important; font-weight: 600; }
html body .mv-dd-menu a.is-current .mv-i { color: var(--mv-wine-500) !important; }
html body .mv-srch-nav a.active { box-shadow: none !important; }
/* my transactions */
.mv-mo-list { display: grid; gap: 8px; }
.mv-mo { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 12px; border: 1px solid var(--mv-border); background: var(--mv-surface); transition: border-color var(--mv-fast) ease; }
.mv-mo:hover { border-color: var(--mv-wine-200); }
.mv-mo-ic { flex: none; width: 36px; height: 36px; border-radius: 10px; display: grid; place-items: center; background: var(--mv-wine-50); color: var(--mv-wine-500); }
.mv-mo-main { flex: 1; min-width: 0; }
.mv-mo-main b { display: block; font-size: 14.5px; color: var(--mv-text); }
.mv-mo-main small { font-size: 12.5px; color: var(--mv-text-2); }
.mv-mo-amt { flex: none; font-weight: 700; font-size: 14.5px; color: var(--mv-text); }
.mv-mo form { margin: 0; }
.mv-mo-del { width: 34px; height: 34px; border-radius: 50%; border: 1px solid var(--mv-border); background: var(--mv-surface); color: var(--mv-text-3); display: grid; place-items: center; cursor: pointer; }
.mv-mo-del:hover { color: var(--mv-error); border-color: var(--mv-error); background: #fdf1f1; }
.mv-mo-note { display: flex; gap: 10px; margin-top: 14px; padding: 12px 14px; border-radius: 12px; background: var(--mv-ivory-50); }
.mv-mo-note .mv-i { flex: none; color: var(--mv-wine-500); margin-top: 2px; }
.mv-mo-note p { margin: 0 !important; font-size: 13px; color: var(--mv-text-2); }
@media (max-width: 575.98px) { .mv-mo { flex-wrap: wrap; } .mv-mo-main { flex-basis: calc(100% - 50px); } .mv-mo-amt { margin-left: 48px; } .mv-mo form { margin-left: auto; } }
.mv-lst .mv-pc[hidden] { display: none !important; }
.mv-lst-more { display: flex; justify-content: center; margin: 4px 0 24px; }
.mv-lst-more-btn { display: inline-flex; align-items: center; gap: 8px; height: 44px; padding: 0 22px; border-radius: 22px; border: 1px solid var(--mv-wine-200); background: var(--mv-surface); color: var(--mv-wine-500); font: 600 14px var(--mv-font-body); cursor: pointer; box-shadow: var(--mv-shadow-sm); transition: background var(--mv-fast) ease, border-color var(--mv-fast) ease; }
.mv-lst-more-btn:hover { background: var(--mv-wine-50); border-color: var(--mv-wine-400); }
.mv-lst-more.is-busy .mv-lst-more-btn { opacity: .7; cursor: progress; }
.mv-lst-more.is-busy .mv-i { animation: mvSpin .8s linear infinite; }
@keyframes mvSpin { to { transform: rotate(360deg); } }
/* notifications (all + history) */
html body .row:has(.mv-mnav) .gt-exp-main .gt-panel { margin: 0 !important; border: 0 !important; background: none !important; box-shadow: none !important; }
html body .row:has(.mv-mnav) .all-notification-container { border: 1px solid var(--mv-border) !important; border-radius: 18px !important; background: var(--mv-surface) !important; box-shadow: var(--mv-shadow-sm) !important; overflow: visible; }
html body .row:has(.mv-mnav) .noti-header-box { display: flex !important; align-items: center; justify-content: space-between; padding: 16px 20px !important; background: var(--mv-surface) !important; border-bottom: 1px solid var(--mv-border); border-radius: 18px 18px 0 0; }
html body .row:has(.mv-mnav) .noti-header-box h6 { float: none !important; display: flex; align-items: center; gap: 8px; margin: 0 !important; padding: 0 !important; font-family: var(--mv-font-head) !important; font-size: 20px !important; font-weight: 600 !important; color: var(--mv-text) !important; }
html body .row:has(.mv-mnav) .noti-total-count { display: inline-grid !important; place-items: center; min-width: 24px; height: 22px; padding: 0 7px; border-radius: 11px; background: var(--mv-wine-50) !important; color: var(--mv-wine-500) !important; font: 700 12px var(--mv-font-body) !important; }
html body .row:has(.mv-mnav) .noti-header-box > .fa-filter { float: none !important; width: 36px; height: 36px; display: grid !important; place-items: center; border-radius: 10px; border: 1px solid var(--mv-border); color: var(--mv-wine-500) !important; font-size: 15px !important; padding: 0 !important; }
html body .row:has(.mv-mnav) .noti-header-box .dropdown-menu { border: 1px solid var(--mv-border) !important; border-radius: 12px !important; padding: 6px !important; box-shadow: 0 12px 28px rgba(42,36,33,.14) !important; }
html body .row:has(.mv-mnav) .noti-header-box .dropdown-menu a { display: flex !important; justify-content: space-between; gap: 12px; padding: 8px 10px !important; border-radius: 8px; color: var(--mv-text) !important; font-size: 13.5px; }
html body .row:has(.mv-mnav) .noti-header-box .dropdown-menu a:hover { background: var(--mv-wine-50); }
html body .row:has(.mv-mnav) #hideli { margin: 0 !important; padding: 0 !important; list-style: none; }
html body .row:has(.mv-mnav) #hideli .notifi-check-box { display: flex; align-items: center; gap: 10px; padding: 10px 20px !important; border-bottom: 1px solid var(--mv-border) !important; background: var(--mv-ivory-50); }
html body .row:has(.mv-mnav) #hideli h6 { margin: 0 !important; font-size: 13.5px; font-weight: 600; }
html body .row:has(.mv-mnav) #hideli .btn-danger { margin-left: auto !important; height: 32px; padding: 0 12px !important; border-radius: 16px !important; border: 1px solid var(--mv-border-strong) !important; background: var(--mv-surface) !important; color: var(--mv-error) !important; font-size: 12.5px !important; }
html body .row:has(.mv-mnav) ul.all_nitifi_page { margin: 0 !important; padding: 6px 10px 10px !important; list-style: none; }
html body .row:has(.mv-mnav) ul.all_nitifi_page > li { margin: 0; padding: 0; border-bottom: 1px solid var(--mv-border); }
html body .row:has(.mv-mnav) ul.all_nitifi_page > li:last-child { border-bottom: 0; }
html body .row:has(.mv-mnav) ul.all_nitifi_page > li > .row { display: grid !important; grid-template-columns: 48px minmax(0, 1fr); column-gap: 12px; margin: 0 !important; padding: 12px 10px !important; border-radius: 12px; transition: background var(--mv-fast) ease; }
html body .row:has(.mv-mnav) ul.all_nitifi_page > li > .row:hover { background: var(--mv-ivory-50); }
html body .row:has(.mv-mnav) ul.all_nitifi_page > li > .row > [class*="col"] { max-width: none !important; flex: none !important; width: auto !important; padding: 0 !important; border: 0 !important; }
html body .row:has(.mv-mnav) ul.all_nitifi_page > li > .row > .col-auto { grid-row: span 2; }
html body .row:has(.mv-mnav) ul.all_nitifi_page > li > .row > .col-12 { grid-column: 2; }
html body .row:has(.mv-mnav) .noti-list-icon { width: 48px !important; height: 48px !important; border-radius: 50% !important; overflow: hidden; background: var(--mv-sand-100); border: 0 !important; }
html body .row:has(.mv-mnav) .noti-list-icon img { width: 100% !important; height: 100% !important; object-fit: cover; object-position: 50% 20% !important; }
html body .row:has(.mv-mnav) ul.all_nitifi_page p.top-text-heading { margin: 2px 0 2px !important; padding-right: 40px; font-size: 14px !important; line-height: 1.45; color: var(--mv-text) !important; }
html body .row:has(.mv-mnav) ul.all_nitifi_page p.top-text-heading a { color: var(--mv-wine-500) !important; font-weight: 600; text-decoration: none !important; }
html body .row:has(.mv-mnav) ul.all_nitifi_page .noti-time { float: none !important; font-size: 12px; color: var(--mv-text-3); }
html body .row:has(.mv-mnav) ul.all_nitifi_page .col { position: relative; }
html body .row:has(.mv-mnav) ul.all_nitifi_page .notifi-check-box { position: absolute; right: 0; top: 0; float: none !important; }
html body .row:has(.mv-mnav) ul.all_nitifi_page .notifi-check-box a, html body .row:has(.mv-mnav) ul.all_nitifi_page .notifi-check-box h5 { display: grid; place-items: center; width: 32px; height: 32px; margin: 0 !important; border-radius: 50%; color: var(--mv-text-3) !important; font-size: 14px !important; }
html body .row:has(.mv-mnav) ul.all_nitifi_page .notifi-check-box a:hover { background: #fdf1f1; color: var(--mv-error) !important; }
html body .row:has(.mv-mnav) ul.all_nitifi_page .col-12 p { margin: 2px 0 0 !important; font-size: 12px !important; font-style: normal !important; color: var(--mv-text-2) !important; }
html body .row:has(.mv-mnav) .noti-header-box h6 { flex: 1; }
html body .row:has(.mv-mnav) .noti-header-box > .fa-filter { margin-left: auto; order: 9; }
html body .row:has(.mv-mnav) ul.all_nitifi_page { padding: 10px 14px 14px !important; font-size: 14px; color: var(--mv-text-2); }
/* horoscope */
.mv-hr-up { display: grid; gap: 12px; }
.mv-hr-drop { position: relative; display: grid; place-items: center; min-height: 200px; max-width: 520px; margin: 0; border-radius: 14px; border: 1.5px dashed var(--mv-wine-200); background: var(--mv-ivory-50); cursor: pointer; overflow: hidden; transition: border-color var(--mv-fast) ease, background var(--mv-fast) ease; }
.mv-hr-drop:hover, .mv-hr-drop.is-drag { border-color: var(--mv-wine-400); background: var(--mv-wine-50); }
.mv-hr-drop img { display: block; max-width: 100%; max-height: 420px; object-fit: contain; }
.mv-hr-drop.has-img { border-style: solid; border-color: var(--mv-border); background: var(--mv-surface); padding: 8px; }
.mv-hr-drop.has-img .mv-hr-drop-empty { display: none; }
.mv-hr-drop.has-img .mv-phm-change { display: inline-flex; }
.mv-hr-drop-empty { display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 20px; text-align: center; }
.mv-hr-drop-empty b { font-size: 14.5px; color: var(--mv-text); }
.mv-hr-drop-empty small { font-size: 12.5px; color: var(--mv-text-3); }
.mv-acc-btn:disabled { background: var(--mv-wine-200); box-shadow: none; cursor: not-allowed; }
.mv-hr-charts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.mv-hr-chart { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-template-rows: repeat(4, minmax(56px, auto)); border: 1.5px solid var(--mv-wine-300); border-radius: 12px; overflow: hidden; background: var(--mv-surface); }
.mv-hr-cell { display: grid; place-items: center; padding: 6px; border: .5px solid var(--mv-wine-100); font-size: 12.5px; font-weight: 600; color: var(--mv-text); text-align: center; word-break: break-word; }
.mv-hr-cell.is-empty { background: var(--mv-ivory-50); }
.mv-hr-mid { grid-column: 2 / 4; grid-row: 2 / 4; display: grid; place-items: center; background: linear-gradient(135deg, var(--mv-wine-50), var(--mv-surface)); border: .5px solid var(--mv-wine-100); }
.mv-hr-mid b { font-family: var(--mv-font-head); font-size: 18px; color: var(--mv-wine-500); }
@media (max-width: 767.98px) { .mv-hr-charts { grid-template-columns: minmax(0, 1fr); } }
/* =====================================================================
   PRICING (Home/pricing): plan cards + payment step
   ===================================================================== */
html body .mv-pr { max-width: 1160px !important; padding: 26px 16px 56px !important; }
html body .mv-pr > .row.pt-5 { padding-top: 0 !important; }
html body .mv-pr h3.textLightS { margin: 0 0 6px !important; font-family: var(--mv-font-head) !important; font-size: clamp(26px, 3.2vw, 34px) !important; font-weight: 600 !important; color: var(--mv-text) !important; }
html body .mv-pr p.indexContent { margin: 0 auto 22px !important; max-width: 60ch; font-size: 14.5px !important; line-height: 1.7 !important; letter-spacing: 0 !important; color: var(--mv-text-2) !important; }
html body .mv-pr .gt-hearts { display: none !important; }
html body .mv-pr #plandetail { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 18px; margin: 0 0 20px !important; }
html body .mv-pr #plandetail > label { max-width: none !important; flex: none !important; width: auto !important; margin: 0 !important; padding: 0 !important; }
html body .mv-pr .gt-plan { position: relative; display: flex !important; flex-direction: column; height: 100%; margin: 0 !important; border: 1px solid var(--mv-border) !important; border-radius: 20px !important; background: var(--mv-surface) !important; box-shadow: var(--mv-shadow-sm) !important; overflow: hidden; transition: transform var(--mv-base) ease, box-shadow var(--mv-base) ease, border-color var(--mv-base) ease; }
html body .mv-pr .gt-plan:hover { transform: translateY(-4px); border-color: var(--mv-wine-200) !important; box-shadow: 0 18px 36px rgba(42,36,33,.12) !important; }
html body .mv-pr .gt-plan-header { position: relative; padding: 22px 22px 18px !important; text-align: left !important; background: none !important; border-bottom: 1px solid var(--mv-border); }
html body .mv-pr .gt-plan-header::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 5px; background: var(--mv-tier, var(--mv-primary)); }
html body .mv-pr .gt-plan-header h1 { display: grid !important; place-items: center; width: 44px; height: 44px; margin: 0 0 12px !important; border-radius: 12px; background: var(--mv-tier-bg, var(--mv-wine-50)); color: var(--mv-tier, var(--mv-primary)) !important; font-size: 20px !important; text-shadow: none !important; }
html body .mv-pr .gt-plan-header h6 { margin: 0 0 6px !important; font-family: var(--mv-font-head) !important; font-size: 22px !important; font-weight: 600 !important; color: var(--mv-text) !important; text-shadow: none !important; text-transform: none !important; letter-spacing: 0 !important; }
html body .mv-pr .gt-plan-price { margin: 0 !important; padding: 0 !important; background: none !important; }
html body .mv-pr .gt-plan-price h5 { margin: 0 !important; font-family: var(--mv-font-head) !important; font-size: 30px !important; font-weight: 700 !important; color: var(--mv-text) !important; text-shadow: none !important; }
html body .mv-pr .gtMobPlan, html body .mv-pr .gt-plan .collapse { display: none !important; }
html body .mv-pr .gt-plan-body { display: block !important; flex: 1; padding: 12px 22px !important; background: none !important; }
html body .mv-pr .gt-plan-desc { margin: 0 !important; padding: 0 !important; list-style: none; }
html body .mv-pr .gt-plan-desc li { display: flex !important; align-items: baseline; justify-content: space-between; gap: 10px; padding: 9px 0 !important; border: 0 !important; border-bottom: 1px dashed var(--mv-border) !important; background: none !important; text-align: left !important; }
html body .mv-pr .gt-plan-desc li:last-child { border-bottom: 0 !important; }
html body .mv-pr .gt-plan-desc h3 { margin: 0 !important; font: 500 13.5px var(--mv-font-body) !important; color: var(--mv-text-2) !important; }
html body .mv-pr .gt-plan-desc h5 { margin: 0 !important; font: 700 14.5px var(--mv-font-body) !important; color: var(--mv-text) !important; text-align: right; }
html body .mv-pr .gt-plan-footer { display: flex !important; align-items: center; justify-content: center; gap: 8px; height: 46px; margin: 6px 22px 22px !important; padding: 0 !important; border-radius: 23px !important; background: var(--mv-primary) !important; color: #fff !important; font: 600 15px var(--mv-font-body) !important; cursor: pointer; box-shadow: 0 8px 18px rgba(163,52,58,.22); transition: background var(--mv-fast) ease, transform var(--mv-fast) ease; }
html body .mv-pr .gt-plan-footer:hover { background: #8e2a31 !important; }
html body .mv-pr .gt-plan-footer:active { transform: scale(.98); }
html body .mv-pr #plandetail > label:nth-child(3n+1) { --mv-tier: #b88a1c; --mv-tier-bg: #fbf3e2; }
html body .mv-pr #plandetail > label:nth-child(3n+2) { --mv-tier: #7d8796; --mv-tier-bg: #eef1f5; }
html body .mv-pr #plandetail > label:nth-child(3n+3) { --mv-tier: #a8603a; --mv-tier-bg: #f8ece4; }
html body .mv-pr #plandetail > label:first-child .gt-plan::after { content: "Best value"; position: absolute; right: 16px; top: 20px; height: 24px; padding: 0 10px; display: inline-flex; align-items: center; border-radius: 12px; background: #fbf3e2; color: #8a6510; font: 700 11.5px var(--mv-font-body); }
/* payment step */
html body .mv-pr #chkplan { border: 1px solid var(--mv-border) !important; border-radius: 20px !important; box-shadow: var(--mv-shadow-sm) !important; overflow: hidden; }
html body .mv-pr #chkplan > .card-header { display: flex !important; align-items: center; justify-content: space-between; padding: 16px 20px !important; background: var(--mv-surface) !important; border-bottom: 1px solid var(--mv-border) !important; }
html body .mv-pr #chkplan > .card-header h5 { margin: 0 !important; font-family: var(--mv-font-head) !important; font-size: 19px !important; font-weight: 600 !important; color: var(--mv-text) !important; }
html body .mv-pr #chkplan .plan { float: none !important; height: 36px; padding: 0 16px !important; border-radius: 18px !important; border: 1px solid var(--mv-border-strong) !important; background: var(--mv-surface) !important; color: var(--mv-text) !important; font-size: 13.5px !important; }
html body .mv-pr #chkplan > .card-body { padding: 18px 20px !important; }
html body .mv-pr #chkplan .card-body > .border-bottom h5 { font-size: 13.5px !important; font-weight: 500 !important; color: var(--mv-text-2) !important; }
html body .mv-pr #chkplan .card-body .card { border: 1px solid var(--mv-border) !important; border-radius: 14px !important; box-shadow: none !important; }
html body .mv-pr #chkplan .card-body .card .card-header { background: var(--mv-ivory-50) !important; border-radius: 14px; }
html body .mv-pr #chkplan h6.mb-1 { font-size: 14px !important; }
html body .mv-pr .gt-plan-price, html body .mv-pr .gt-plan-price h5 { background: none !important; background-image: none !important; padding: 0 !important; box-shadow: none !important; -webkit-text-fill-color: currentColor; }
html body .mv-pr .gt-plan-price::before, html body .mv-pr .gt-plan-price::after, html body .mv-pr .gt-plan-price h5::before, html body .mv-pr .gt-plan-price h5::after { display: none !important; }
html body .mv-pr .gt-plan-footer { line-height: 1 !important; }
html body .mv-pr .gt-plan-footer .fa { margin: 0 !important; line-height: 1 !important; }
html body .mv-pr p.indexContent { text-align: left !important; margin-left: 0 !important; }
html body .mv-pr .col-lg-8.m-auto { margin-left: 0 !important; max-width: 100%; flex: 0 0 100%; }
html body .mv-pr h3.textLightS { text-align: left !important; }
html body .mv-pr .gt-plan-footer { display: block !important; height: 46px; line-height: 46px !important; text-align: center; }
html body .mv-pr #plandetail[style*="none"] { display: none !important; }
html body .mv-pr.mv-mem { background: none !important; padding-top: 18px !important; }
html body .mv-pr .mv-mem-free { margin-bottom: 18px !important; }
/* membership: plan pop-up */
.mv-planm .modal-dialog { max-width: 400px; }
.mv-planm-card { border: 1px solid var(--mv-border); border-radius: 14px; overflow: hidden; }
.mv-planm-top { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 14px 16px; background: linear-gradient(135deg, var(--mv-wine-50), var(--mv-surface)); border-bottom: 1px solid var(--mv-border); }
.mv-planm-top span { font-size: 12px; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; color: var(--mv-text-3); }
.mv-planm-top b { font-family: var(--mv-font-head); font-size: 20px; color: var(--mv-wine-500); }
.mv-planm-rows { margin: 0 !important; padding: 4px 16px; }
.mv-planm-rows > div { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 9px 0; border-bottom: 1px dashed var(--mv-border); }
.mv-planm-rows > div:last-child { border-bottom: 0; }
.mv-planm-rows dt { display: inline-flex; align-items: center; gap: 8px; margin: 0; font-size: 13.5px; font-weight: 500; color: var(--mv-text-2); }
.mv-planm-rows dt .mv-i { color: var(--mv-wine-400); }
.mv-planm-rows dd { margin: 0; font-size: 14px; font-weight: 600; color: var(--mv-text); }
.mv-planm-total { display: flex; align-items: baseline; justify-content: space-between; padding: 12px 16px; background: var(--mv-ivory-50); border-top: 1px solid var(--mv-border); }
.mv-planm-total span { font-size: 13.5px; font-weight: 600; color: var(--mv-text); }
.mv-planm-total b { font-family: var(--mv-font-head); font-size: 24px; color: var(--mv-text); }
.mv-planm .mv-phm-tips { margin-top: 12px !important; }
.mv-planm .mv-phm-submit { text-decoration: none !important; }
.mv-planm-note { margin: 0 !important; padding: 0 18px 14px; background: var(--mv-ivory-50); font-size: 12px; color: var(--mv-text-3); text-align: right; }
/* small account pages: hide profile, delete profile, facebook share */
html body .row:has(.mv-mnav) .gt-profile-pic-panel p, html body .row:has(.mv-mnav) .gt-profile-pic-panel h5, html body .row:has(.mv-mnav) .gt-profile-pic-panel h3 { font-family: var(--mv-font-body) !important; font-size: 15px !important; font-weight: 500 !important; line-height: 1.6 !important; color: var(--mv-text) !important; }
html body .row:has(.mv-mnav) .gt-profile-pic-panel [style*="padding-top: 50px"] { padding-top: 6px !important; }
html body .row:has(.mv-mnav) .gt-profile-pic-panel .btn { display: inline-flex !important; align-items: center; justify-content: center; min-width: 110px; height: 40px !important; padding: 0 20px !important; border-radius: 20px !important; font: 600 14px var(--mv-font-body) !important; text-transform: none !important; box-shadow: none !important; }
html body .row:has(.mv-mnav) .gt-profile-pic-panel .btn.bg-light, html body .row:has(.mv-mnav) .gt-profile-pic-panel .btn-default12:not(.gt-btn-green) { background: var(--mv-surface) !important; border: 1px solid var(--mv-border-strong) !important; color: var(--mv-text) !important; }
html body .row:has(.mv-mnav) .gt-profile-pic-panel .btn.gt-btn-green, html body .row:has(.mv-mnav) .gt-profile-pic-panel .btn.gt-btn-orange { background: var(--mv-primary) !important; border: 1px solid var(--mv-primary) !important; color: #fff !important; }
html body .row:has(.mv-mnav) .gt-profile-pic-panel .row.text-center:has(#btn-show) { display: flex !important; justify-content: center; gap: 10px; margin: 6px 0 0 !important; }
html body .row:has(.mv-mnav) .gt-profile-pic-panel .row.text-center:has(#btn-show) > .col-sm-3 { flex: none !important; max-width: none !important; width: auto !important; padding: 0 !important; }
html body .row:has(.mv-mnav) .gt-profile-pic-panel .row.text-center:has(#btn-show) > .col-sm-3:empty { display: none; }
/* delete reasons as option tiles */
html body .row:has(.mv-mnav) .gt-profile-pic-panel form > label { display: block; margin: 0 0 8px; font-size: 13px; font-weight: 600; color: var(--mv-text-2); }
html body .row:has(.mv-mnav) .gt-profile-pic-panel .w-100.mb-3:has(input[name="reason"]) { position: relative; display: flex; align-items: center; gap: 10px; margin: 0 0 8px !important; padding: 0 14px; min-height: 46px; max-width: 460px; border: 1px solid var(--mv-border); border-radius: 12px; background: var(--mv-surface); cursor: pointer; transition: border-color var(--mv-fast) ease, background var(--mv-fast) ease; }
html body .row:has(.mv-mnav) .gt-profile-pic-panel .w-100.mb-3:has(input[name="reason"]:checked) { border-color: var(--mv-wine-400); background: var(--mv-wine-50); }
html body .row:has(.mv-mnav) .gt-profile-pic-panel .w-100.mb-3 .check-box { float: none !important; margin: 0 !important; }
html body .row:has(.mv-mnav) .gt-profile-pic-panel .w-100.mb-3 .radio_button { margin: 0 !important; font-size: 14px; color: var(--mv-text); flex: 1; }
html body .row:has(.mv-mnav) .gt-profile-pic-panel .w-100.mb-3 .radio_button::after { content: ""; position: absolute; inset: 0; }
html body .container-fluid:has(> .row > [class*="col"] .mv-mnav) { max-width: 1200px !important; margin-left: auto !important; margin-right: auto !important; padding: 22px 16px 56px !important; }
/* list pages: empty state */
.mv-lst-empty { display: flex; flex-direction: column; align-items: center; gap: 6px; margin: 6px 0 24px; padding: 40px 20px; border: 1px dashed var(--mv-border-strong); border-radius: 20px; background: var(--mv-surface); text-align: center; }
.mv-lst-empty-ic { width: 64px; height: 64px; margin-bottom: 6px; border-radius: 50%; display: grid; place-items: center; background: radial-gradient(circle at 30% 30%, var(--mv-surface), var(--mv-wine-50)); box-shadow: 0 0 0 8px var(--mv-ivory-50), 0 0 0 9px var(--mv-wine-100); color: var(--mv-wine-500); }
.mv-lst-empty-ic .mv-i { width: 26px; height: 26px; }
.mv-lst-empty b { font-family: var(--mv-font-head); font-size: 19px; font-weight: 600; color: var(--mv-text); }
.mv-lst-empty p { margin: 0 0 10px !important; max-width: 42ch; font-size: 14px; color: var(--mv-text-2); }
.mv-lst-empty-btn { display: inline-flex; align-items: center; gap: 7px; height: 40px; padding: 0 18px; border-radius: 20px; background: var(--mv-primary); color: #fff !important; font: 600 13.5px var(--mv-font-body); text-decoration: none !important; box-shadow: 0 6px 14px rgba(163,52,58,.2); }
.mv-lst-empty-btn:hover { background: #8e2a31; }
/* new portrait placeholders: fill the photo area */
html body .mv-pc-ph > img { position: absolute !important; inset: 0 !important; width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover !important; object-position: 50% 30% !important; border-radius: 0 !important; box-shadow: none !important; transform: none !important; }
html body .mv-pc-ph small { position: absolute; left: 50%; top: 12px; transform: translateX(-50%); padding: 3px 9px; border-radius: 10px; background: rgba(255,255,255,.85); font-size: 11px !important; white-space: nowrap; z-index: 1; display: none; }
html body .mv-pd-photo-a img.is-ph { object-fit: cover !important; padding: 0 !important; object-position: 50% 30%; }
html body .mv-pc-ph.is-lock > img { filter: blur(6px) saturate(.9) !important; transform: scale(1.1) !important; }
html body .mv-pc-ph.is-lock small { display: inline-block !important; }
html body .mv-pc-ph:not(.is-lock) small { display: none !important; }

/* =====================================================================
   CHAT v2 (Messages list, Online now list, chat window)
   ===================================================================== */
html body .chat_list_box.card:not(#mv-x), html body .active_list_box.card:not(#mv-x), html body .chat_box.card:not(#mv-x) { display: flex; flex-direction: column; border: 1px solid var(--mv-border) !important; border-radius: 18px !important; background: var(--mv-surface) !important; box-shadow: 0 24px 60px rgba(42,36,33,.2) !important; }
html body .chat_list_box.card[style*="none"], html body .active_list_box.card[style*="none"], html body .chat_box.card[style*="none"] { display: none !important; }
/* headers: white, clean */
html body .chat_list_box.card:not(#mv-x) > .card-header, html body .active_list_box.card:not(#mv-x) > .card-header, html body .chat_box.card:not(#mv-x) #chatBoxHeader { flex: none; display: flex !important; align-items: center; justify-content: space-between; min-height: 58px; padding: 10px 12px 10px 16px !important; background: var(--mv-surface) !important; border-bottom: 1px solid var(--mv-border) !important; border-radius: 18px 18px 0 0 !important; }
html body .chat_list_box .card-header h6::before, html body .active_list_box .card-header h6::before { color: var(--mv-text); font-family: var(--mv-font-head); font-size: 17px !important; font-weight: 600; }
html body .active_list_box .card-header h6::after { content: ""; display: inline-block; width: 8px; height: 8px; margin-left: 8px; border-radius: 50%; background: var(--mv-success); box-shadow: 0 0 0 3px rgba(46,125,80,.15); vertical-align: middle; }
html body .custom-radio-chat-list-close .custom-control-label, html body .custom-radio-active-list-close .custom-control-label { background: var(--mv-sand-100) !important; }
html body .custom-radio-chat-list-close .custom-control-label::after, html body .custom-radio-active-list-close .custom-control-label::after { background: center / 13px no-repeat url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%235b524d%22 stroke-width=%222.4%22 stroke-linecap=%22round%22%3E%3Cpath d=%22M18 6 6 18M6 6l12 12%22/%3E%3C/svg%3E") !important; }
html body .custom-radio-chat-list-close .custom-control-label:hover, html body .custom-radio-active-list-close .custom-control-label:hover { background: var(--mv-wine-50) !important; }
/* list bodies fill the window */
html body .chat_list_box.card:not(#mv-x) > .card-body, html body .active_list_box.card:not(#mv-x) > .card-body { flex: 1; width: auto !important; height: auto !important; min-height: 0; padding: 6px !important; overflow-y: auto !important; background: var(--mv-surface) !important; }
html body .chatlistuser > li, html body .activeuserlist > li { margin: 0 0 2px !important; }
html body .chatlistuser .media, html body .activeuserlist .media { align-items: center !important; padding: 8px 10px !important; }
html body .chatlistuser img.img-thumbnail, html body .activeuserlist img.img-thumbnail { width: 42px !important; height: 42px !important; object-fit: cover; object-position: 50% 25%; border: 0 !important; box-shadow: none !important; background: var(--mv-sand-100); }
html body .chatlistuser .img_box::before, html body .activeuserlist .img_box::before { display: none !important; }
html body .activeuserlist .img_box::after { content: ""; position: absolute; right: 0; bottom: 1px; width: 11px; height: 11px; border-radius: 50%; background: var(--mv-success); border: 2px solid var(--mv-surface); }
html body .activeuserlist .online { display: none !important; }
html body .activeuserlist .media-body .clearfix { display: flex; align-items: center; }
html body .activeuserlist small, html body .chatlistuser .message { display: block; float: none !important; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
html body .chatlistuser .badge-pill { background: var(--mv-primary) !important; color: #fff !important; font-size: 11px !important; }
html body .active_list_box #load_more3 { margin: 8px 0 6px !important; }
html body #load_more1.btn { height: 34px; display: inline-flex !important; align-items: center; font-size: 13px !important; }
/* chat window */
html body .chat_box.card:not(#mv-x) #chatBoxHeader > .d-flex { width: 100%; padding: 0 !important; }
html body #chatBoxHeader .img_box { margin-right: 10px !important; }
html body #chatBoxHeader .img_box::before { display: none !important; }
html body #chatBoxHeader #headerimgsrc { width: 40px !important; height: 40px !important; object-fit: cover; object-position: 50% 25%; border: 0 !important; box-shadow: 0 0 0 2px var(--mv-wine-100) !important; }
html body #chatBoxHeader .userid { margin: 0 !important; color: var(--mv-text) !important; font-size: 15px !important; }
html body #chatBoxHeader #status { color: var(--mv-success) !important; font-size: 12px !important; font-weight: 500; }
html body #chatBoxHeader i.fa { width: 32px; height: 32px; display: inline-grid !important; place-items: center; padding: 0 !important; margin: 0 0 0 2px !important; color: var(--mv-text-2) !important; font-size: 14px !important; }
html body #chatBoxHeader i.fa[style*="none"] { display: none !important; }
html body #chatBoxHeader i.fa:hover { background: var(--mv-sand-100) !important; color: var(--mv-text) !important; }
html body #chatBoxHeader .dropdown-menu { border: 1px solid var(--mv-border) !important; border-radius: 12px !important; padding: 6px !important; box-shadow: 0 12px 28px rgba(42,36,33,.14) !important; }
html body #chatBoxHeader .dropdown-menu a.dropdown-item { border-radius: 8px; font-size: 13.5px !important; color: var(--mv-text) !important; padding: 8px 10px !important; }
html body #chatBoxHeader .dropdown-menu a.dropdown-item:hover { background: var(--mv-wine-50) !important; }
html body .chat_box.card:not(#mv-x) #chatBoxBody { flex: 1; width: auto !important; height: auto !important; min-height: 0; padding: 10px 12px !important; overflow-y: auto !important; background: var(--mv-ivory-50) !important; }
html body .chat_box.card:not(#mv-x) .msglist { width: 100% !important; }
/* bubbles */
html body .chat_box .my_mssg_box { display: flex !important; justify-content: flex-end !important; padding: 3px 0 !important; }
html body .chat_box .my_text_box, html body .chat_box .my_img_box { max-width: 78% !important; width: auto !important; margin: 0 !important; }
html body .chat_box .my_text_box p { margin: 0 !important; padding: 8px 12px 6px !important; border-radius: 16px 16px 4px 16px !important; background: var(--mv-primary) !important; color: #fff !important; font-size: 14px !important; line-height: 1.45; box-shadow: none !important; }
html body .chat_box .my_text_box p::before, html body .chat_box .user_text_box p::before, html body .chat_box .my_text_box p::after, html body .chat_box .user_text_box p::after { display: none !important; }
html body .chat_box .my_text_box .time_box { color: rgba(255,255,255,.8) !important; font-size: 10.5px !important; }
html body .chat_box .my_text_box .mb-n2 { margin-bottom: 0 !important; height: auto !important; }
html body .chat_box .my_text_box img.d-block { width: 15px !important; filter: brightness(10); opacity: .85; }
html body .chat_box .user_mssg_box { display: flex !important; align-items: flex-end !important; gap: 6px; padding: 3px 0 !important; }
html body .chat_box .user_mssg_box .img_box { flex: none; margin: 0 !important; }
html body .chat_box .user_mssg_box .img_box::before { display: none !important; }
html body .chat_box .user_mssg_box .img_box img { width: 28px !important; height: 28px !important; object-fit: cover; border: 0 !important; padding: 0 !important; }
html body .chat_box .user_text_box, html body .chat_box .user_img_box { max-width: 78% !important; width: auto !important; margin: 0 !important; }
html body .chat_box .user_text_box p { margin: 0 !important; padding: 8px 12px 6px !important; border-radius: 16px 16px 16px 4px !important; background: var(--mv-surface) !important; border: 1px solid var(--mv-border) !important; color: var(--mv-text) !important; font-size: 14px !important; line-height: 1.45; }
html body .chat_box .user_text_box .time_box { font-size: 10.5px !important; color: var(--mv-text-3) !important; margin: 0 !important; }
html body .chat_box .main_img { max-width: 200px !important; border-radius: 12px !important; padding: 0 !important; border: 0 !important; }
/* footer: input with camera inside, round send */
html body .chat_box.card:not(#mv-x) #chatBoxFooter { flex: none; width: auto !important; padding: 0 !important; border-top: 1px solid var(--mv-border) !important; background: var(--mv-surface) !important; border-radius: 0 0 18px 18px !important; }
html body #chatBoxFooter > .d-flex { gap: 8px; padding: 10px !important; }
html body #chatBoxFooter .form-group { flex: 1; }
html body #chatBoxFooter #message:not(#mv-x) { width: 100% !important; height: 42px !important; padding: 0 14px 0 44px !important; border-radius: 21px !important; border: 1px solid var(--mv-border-strong) !important; background: var(--mv-ivory-50) !important; font-size: 14px !important; box-shadow: none !important; }
html body #chatBoxFooter #message:not(#mv-x):focus { border-color: var(--mv-wine-400) !important; background: var(--mv-surface) !important; box-shadow: 0 0 0 3px rgba(163,52,58,.08) !important; outline: 0 !important; }
html body #chatBoxFooter .upload_btn_wrapper { position: absolute !important; left: 6px !important; right: auto !important; top: 50% !important; transform: translateY(-50%); margin: 0 !important; width: 32px; height: 32px; }
html body #chatBoxFooter .upload_btn_wrapper label { width: 32px; height: 32px; margin: 0 !important; padding: 0 !important; display: grid !important; place-items: center; border: 0 !important; border-radius: 50%; color: var(--mv-text-3) !important; background: none !important; cursor: pointer; }
html body #chatBoxFooter .upload_btn_wrapper label:hover { background: var(--mv-wine-50) !important; color: var(--mv-wine-500) !important; }
html body #chatBoxFooter .send_button { flex: none; width: 42px !important; height: 42px !important; margin: 0 !important; border-radius: 50% !important; display: grid !important; place-items: center; background: var(--mv-primary) !important; color: #fff !important; cursor: pointer; box-shadow: 0 6px 14px rgba(163,52,58,.25); }
html body #chatBoxFooter .send_button:hover { background: #8e2a31 !important; }
html body #chatBoxFooter .send_button i { color: #fff !important; font-size: 15px !important; margin: 0 !important; }
html body .chatlistuser .img_box, html body .activeuserlist .img_box, html body #chatBoxHeader .img_box { position: relative; flex: none; width: 42px !important; height: 42px !important; border-radius: 50%; background: #E8ECF1 url("../../images/mv-avatar-male.svg") 50% 30% / cover no-repeat; }
html body #chatBoxHeader .img_box { width: 40px !important; height: 40px !important; }
html body .chatlistuser .img_box img, html body .activeuserlist .img_box img { display: block; color: transparent; font-size: 0; }
html body .chat_box.card:not(#mv-x) #chatBoxFooter, html body .chat_box.card:not(#mv-x) #chatBoxFooter > .d-flex, html body .chat_box.card:not(#mv-x) #chatBoxBody, html body .chat_box.card:not(#mv-x) #chatBoxBody1 { width: 100% !important; max-width: none !important; }
html body .chat_box.card:not(#mv-x) #chatBoxFooter .form-group { width: auto !important; min-width: 0; }
html body .chat_box.card:not(#mv-x) > .position-relative:has(#counterloader) { flex: none; }
html body .chat_box.card:not(#mv-x) #chatBoxFooter > .d-flex { box-sizing: border-box; }

/* =====================================================================
   PHOTO GALLERY (profile details, #myModal51)
   ===================================================================== */
.mv-gal.modal { padding: 0 !important; background: rgba(18,12,14,.94) !important; }
.mv-gal.modal.show { display: flex !important; flex-direction: column; }
.mv-gal-top { flex: none; display: flex; align-items: center; justify-content: space-between; padding: 14px 18px; color: #fff; }
.mv-gal-title { display: flex; align-items: baseline; gap: 10px; font: 600 15px var(--mv-font-body); letter-spacing: .03em; }
.mv-gal-title small { font-size: 12.5px; font-weight: 500; opacity: .7; }
.mv-gal-x { width: 40px; height: 40px; border: 0; border-radius: 50%; background: rgba(255,255,255,.12); color: #fff; display: grid; place-items: center; cursor: pointer; }
.mv-gal-x:hover { background: rgba(255,255,255,.22); }
.mv-gal-stage { position: relative; flex: 1; min-height: 0; display: flex; align-items: center; justify-content: center; padding: 0 70px; }
.mv-gal-slides { position: relative; width: 100%; height: 100%; }
.mv-gal-slide { position: absolute; inset: 0; margin: 0; display: none; align-items: center; justify-content: center; }
.mv-gal-slide.is-on { display: flex; animation: mvGalIn .25s ease both; }
@keyframes mvGalIn { from { opacity: 0; transform: scale(.98); } to { opacity: 1; transform: none; } }
.mv-gal-slide > img { max-width: 100%; max-height: 100%; object-fit: contain; border-radius: 12px; box-shadow: 0 20px 60px rgba(0,0,0,.5); user-select: none; }
.mv-gal-slide > img.is-ph { width: min(360px, 80vw); height: auto; aspect-ratio: 3 / 4; object-fit: cover; }
.mv-gal-slide > img.is-blur { filter: blur(10px); opacity: .55; }
.mv-gal-lock { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); width: min(320px, 80vw); display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 22px 20px; border-radius: 16px; background: rgba(255,255,255,.96); text-align: center; box-shadow: 0 16px 40px rgba(0,0,0,.35); }
.mv-gal-lock > .mv-i { width: 26px; height: 26px; color: var(--mv-wine-500); }
.mv-gal-lock b { font-size: 15.5px; color: var(--mv-text); }
.mv-gal-lock small { font-size: 13px; color: var(--mv-text-2); }
.mv-gal-btn { display: inline-flex; align-items: center; gap: 6px; height: 38px; margin-top: 8px; padding: 0 18px; border-radius: 19px; background: var(--mv-primary); color: #fff !important; font: 600 13.5px var(--mv-font-body); text-decoration: none !important; }
.mv-gal-btn.is-off { background: var(--mv-sand-100); color: var(--mv-text-2) !important; }
.mv-gal-nav { position: absolute; top: 50%; z-index: 2; width: 48px; height: 48px; margin-top: -24px; border: 0; border-radius: 50%; background: rgba(255,255,255,.12); color: #fff; display: grid; place-items: center; cursor: pointer; transition: background var(--mv-fast) ease; }
.mv-gal-nav:hover { background: rgba(255,255,255,.25); }
.mv-gal-nav.is-prev { left: 14px; } .mv-gal-nav.is-next { right: 14px; }
.mv-gal.is-single .mv-gal-nav { display: none; }
.mv-gal-thumbs { flex: none; display: flex; justify-content: center; gap: 8px; padding: 14px 16px 18px; overflow-x: auto; }
.mv-gal-th { position: relative; flex: none; width: 58px; height: 74px; padding: 0; border: 2px solid transparent; border-radius: 10px; overflow: hidden; background: #2a2224; opacity: .55; cursor: pointer; transition: opacity var(--mv-fast) ease, border-color var(--mv-fast) ease; }
.mv-gal-th img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 25%; }
.mv-gal-th.is-lock img { filter: blur(4px); }
.mv-gal-th .mv-i { position: absolute; left: 50%; top: 50%; margin: -8px 0 0 -8px; color: #fff; }
.mv-gal-th:hover { opacity: .85; }
.mv-gal-th.is-on { opacity: 1; border-color: #fff; }
@media (max-width: 767.98px) { .mv-gal-stage { padding: 0 8px; } .mv-gal-nav { width: 40px; height: 40px; margin-top: -20px; background: rgba(0,0,0,.35); } .mv-gal-nav.is-prev { left: 6px; } .mv-gal-nav.is-next { right: 6px; } }
body.modal-open:has(.mv-gal.show) .chat_buttons, body.modal-open:has(.mv-gal.show) .mv-whatsapp { visibility: hidden; }

/* profile details: polish */
.mv-pd-photo-a { cursor: zoom-in; }
.mv-pd-photo-a::after { content: "View photos"; position: absolute; right: 10px; top: 10px; height: 26px; padding: 0 10px; display: inline-flex; align-items: center; border-radius: 13px; background: rgba(0,0,0,.5); color: #fff; font: 600 11.5px var(--mv-font-body); opacity: 0; transition: opacity var(--mv-fast) ease; }
.mv-pd-photo-a:hover::after { opacity: 1; }
.mv-pd-photo.is-locked .mv-pd-photo-a::after { display: none; }
html body .mv-pd-main .card:not(.chat_list_box):not(.active_list_box):not(.chat_box):not(#mv-x) > .card-header { padding: 12px 16px !important; }
html body .mv-pd-main .card > .card-header h5 { font-size: 16px !important; }
html body .mv-pd-main .card > .card-header h5 .fa { width: 30px; height: 30px; font-size: 13px; }
html body .mv-pd-main .card:not(.chat_list_box):not(.active_list_box):not(.chat_box):not(#mv-x) > .card-body { padding: 12px 16px 16px !important; }
html body .mv-pd-main .card-body > .row { gap: 6px !important; }
html body .mv-pd-main .mv-pd-tile { padding: 7px 12px !important; border: 1px solid var(--mv-border) !important; background: var(--mv-surface) !important; gap: 1px !important; }
html body .mv-pd-main .mv-pd-tile:hover { border-color: var(--mv-wine-200) !important; background: var(--mv-wine-50) !important; }
html body .mv-pd-main .mv-pd-tile span.mb-1 { color: var(--mv-wine-400) !important; font-size: 10.5px !important; }
html body .mv-pd-main .mv-pd-tile b { font-weight: 500 !important; font-size: 14px !important; color: #2A2421 !important; }
html body .mv-pd-main .card-body article p { padding: 14px 16px 14px 46px !important; font-size: 14px !important; }
html body .mv-pd-main > .row { margin-bottom: 12px !important; }
.mv-pd-hero { padding: 18px !important; gap: 24px !important; }
.mv-pd-facts { gap: 6px 16px !important; }
.mv-pd-facts li { font-size: 13.5px !important; }
.mv-pd-facts li .mv-i { width: 26px; height: 26px; padding: 5px; }
.mv-pd-btn { height: 40px !important; font-size: 13.5px !important; padding: 0 16px !important; }
.mv-pd-score { padding: 16px 12px !important; }
.mv-pd-tabs a { height: 38px !important; font-size: 13.5px !important; }
.mv-pd-card { padding: 14px !important; }
.mv-pd-people img { width: 38px !important; height: 38px !important; }
/* compatibility header: two equal faces + score */
html body .mv-cp-head { display: grid !important; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 18px; padding: 8px 0 18px !important; }
html body .mv-cp-face { display: flex !important; flex-direction: column; align-items: center; gap: 8px; position: relative; }
html body .mv-cp-face > img, html body .mv-cp-face > .mv-initials { position: static !important; inset: auto !important; transform: none !important; display: grid !important; place-items: center; width: 76px !important; height: 76px !important; margin: 0 !important; border-radius: 50% !important; object-fit: cover; object-position: 50% 25%; font-size: 24px !important; box-shadow: 0 0 0 3px var(--mv-surface), 0 0 0 5px var(--mv-wine-100) !important; }
html body .mv-cp-face > img.is-blur { filter: blur(5px); }
html body .mv-cp-face small { font-size: 12.5px !important; font-weight: 600; color: var(--mv-text-2) !important; }
html body .mv-cp-face:first-child { justify-self: end; } html body .mv-cp-face:last-child { justify-self: start; }
html body .mv-cp-mid { min-width: 150px; }
html body .mv-cp-mid > small { white-space: nowrap; }
/* chat window fixes: body fills, footer fully visible, clean ticks */
html body .chat_box.card:not(#mv-x) > .position-relative:has(#counterloader) { flex: 1 1 auto !important; display: flex !important; flex-direction: column; min-height: 0; overflow: hidden; }
html body .chat_box.card:not(#mv-x) #chatBoxBody { flex: 1 1 auto !important; background: var(--mv-ivory-50) !important; }
html body .chat_box.card:not(#mv-x) #chatBoxBody1, html body .chat_box .msglist { background: transparent !important; min-height: 100%; }
html body .chat_box.card:not(#mv-x) #counterloader { position: absolute; inset: 0; z-index: 2; }
html body .chat_box.card:not(#mv-x) #chatBoxFooter { position: relative; z-index: 3; }
html body #chatBoxFooter > .d-flex { padding: 10px 12px 12px !important; align-items: center !important; }
html body #chatBoxFooter .send_button { box-shadow: none !important; }
html body .chat_box .my_text_box img.d-block { display: none !important; }
html body .chat_box .my_text_box span.ml-2::after { content: "\2713\2713"; font-size: 11px; letter-spacing: -3px; color: rgba(255,255,255,.75); }
html body .chat_box .my_text_box span.ml-2:has(img[src*="read_bg"])::after { color: #9be3b8; }
html body .chatlistuser img[src*="_bg_light"] { width: 16px !important; height: auto !important; mix-blend-mode: multiply; }
html body .chat_box.card:not(#mv-x) > * { flex: none !important; }
html body .chat_box.card:not(#mv-x) > #chatBoxBody, html body .chat_box.card:not(#mv-x) > :has(#chatBoxBody) { flex: 1 1 auto !important; display: flex !important; flex-direction: column; min-height: 0; overflow: hidden; }
html body .chat_box.card:not(#mv-x) > :has(#chatBoxBody) > #chatBoxBody { flex: 1 1 auto !important; min-height: 0; }
html body .chat_box.card:not(#mv-x) > .position-relative:not(:has(#chatBoxBody)) { height: 0; overflow: visible; }
html body .chat_box.card[style*="block"], html body .chat_list_box.card[style*="block"], html body .active_list_box.card[style*="block"] { display: flex !important; flex-direction: column !important; }
html body .chat_box.card:not(#mv-x) #chatBoxFooter { height: auto !important; min-height: 0 !important; }
html body .chat_box.card:not(#mv-x) > .position-relative:has(#chatBoxBody) { height: auto !important; }
html body .mv-gal.modal { z-index: 20000 !important; }
html body .mv-gal-top { position: relative; z-index: 5; }
html body .mv-gal-x { position: relative; z-index: 6; }
body.modal-open:has(.mv-gal.show) .modal-backdrop { z-index: 19990 !important; }
/* SEO browse pages (religion / caste / state / country matrimony) */
html body .mv-lst > .container.px-lg-5 { max-width: 1240px !important; padding: 0 16px !important; }
html body .mv-lst h1 { margin: 6px 0 4px !important; text-align: left !important; font-family: var(--mv-font-head) !important; font-size: clamp(22px, 2.8vw, 30px) !important; font-weight: 600 !important; line-height: 1.25; color: var(--mv-text) !important; }
html body .mv-lst .pt-2:has(.reado-btns-design) { display: flex; flex-direction: row-reverse; justify-content: flex-end; align-items: center; gap: 6px; margin: 10px 0 18px; padding: 0 !important; }
html body .mv-lst .pt-2 > label.radio_button { float: none !important; margin: 0 6px 0 0 !important; padding: 0 !important; font-size: 13.5px; font-weight: 600; color: var(--mv-text-2); }
html body .mv-lst .reado-btns-design { float: none !important; position: relative; padding: 0 !important; }
html body .mv-lst .reado-btns-design input { position: absolute; opacity: 0; pointer-events: none; }
html body .mv-lst .reado-btns-design .check-box { display: none !important; }
html body .mv-lst .reado-btns-design label:not(.check-box) { display: inline-flex !important; align-items: center; height: 36px; margin: 0 !important; padding: 0 16px !important; border-radius: 18px; border: 1px solid var(--mv-border-strong); background: var(--mv-surface); color: var(--mv-text) !important; font-size: 13.5px !important; font-weight: 600; cursor: pointer; }
html body .mv-lst .reado-btns-design input:checked ~ label:not(.check-box) { background: var(--mv-primary); border-color: var(--mv-primary); color: #fff !important; }
html body .mv-lst h2 { margin: 26px 0 8px !important; font-family: var(--mv-font-head) !important; font-size: 20px !important; font-weight: 600 !important; color: var(--mv-text) !important; }
html body .mv-lst h2 + p, html body .mv-lst h2 ~ p { max-width: 80ch; font-size: 14px !important; line-height: 1.75 !important; color: var(--mv-text-2) !important; }
html body .mv-lst .thumbnail img[src*="nodata"] { display: none; }

/* =====================================================================
   ALL REMAINING BOOTSTRAP POP-UPS: one shared new look
   (photo missing / not screened / chat upgrade / contact / interest / report ...)
   ===================================================================== */
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) { background: none !important; }
html body .modal-backdrop.show { background: rgba(28,18,20,.55) !important; opacity: 1 !important; -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px); }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .modal-dialog { max-width: 480px !important; width: calc(100% - 24px); margin: 8vh auto !important; display: flex; align-items: center; min-height: 0 !important; }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .modal-dialog:has(.gt-panel-body .row .col-md-6) { max-width: 620px !important; }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .modal-content { width: 100%; border: 0 !important; border-radius: 18px !important; overflow: hidden; background: var(--mv-surface) !important; box-shadow: 0 24px 60px rgba(42,36,33,.25) !important; font-family: var(--mv-font-body); animation: mvChatIn .2s ease both; }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .modal-header { position: relative; display: flex !important; align-items: center; gap: 12px; padding: 16px 56px 14px 20px !important; background: var(--mv-surface) !important; border-bottom: 1px solid var(--mv-border) !important; }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .modal-header::before { content: ""; flex: none; width: 36px; height: 36px; border-radius: 10px; background: var(--mv-wine-50) center / 18px no-repeat url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23A3343A%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%2210%22/%3E%3Cpath d=%22M12 16v-4M12 8h.01%22/%3E%3C/svg%3E"); }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .modal-title, html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .modal-header h4, html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .modal-header h5 { flex: 1; margin: 0 !important; padding: 0 !important; text-align: left !important; font-family: var(--mv-font-head) !important; font-size: 18px !important; font-weight: 600 !important; color: var(--mv-text) !important; text-transform: none !important; }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .modal-header .close { position: absolute !important; right: 14px; top: 50%; width: 34px; height: 34px; margin: -17px 0 0 !important; padding: 0 !important; display: grid !important; place-items: center; border-radius: 50%; background: var(--mv-sand-100) !important; color: var(--mv-text-2) !important; font-size: 22px !important; font-weight: 400 !important; line-height: 1 !important; text-shadow: none !important; opacity: 1 !important; box-shadow: none !important; }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .modal-header .close:hover { background: var(--mv-wine-50) !important; color: var(--mv-wine-500) !important; }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .modal-header .curve-desgin-baner-container { display: none !important; }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .modal-body, html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .modal-content > .gt-panel-body { padding: 18px 20px 20px !important; background: var(--mv-surface) !important; font-size: 14.5px; line-height: 1.6; color: var(--mv-text-2) !important; }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .modal-body h4, html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .modal-body h5 { font-family: var(--mv-font-body) !important; font-size: 14.5px !important; font-weight: 500 !important; line-height: 1.6 !important; color: var(--mv-text-2) !important; margin: 0 0 6px !important; }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .modal-body b, html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .gt-panel-body b { color: var(--mv-text); }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .modal-body .row { margin-left: 0 !important; margin-right: 0 !important; }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .modal-body [class*="col-"] { padding-left: 0 !important; padding-right: 0 !important; }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .modal-body .form-group:last-child, html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .modal-body .form-group:has(.btn) { display: flex !important; flex-wrap: wrap; justify-content: flex-end; gap: 8px; margin: 14px 0 0 !important; }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .modal-body .form-group > [class*="col-"] { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; margin: 0 !important; max-width: 100% !important; flex: 0 0 100% !important; }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .btn { display: inline-flex !important; align-items: center; justify-content: center; gap: 6px; height: 40px !important; min-height: 0 !important; margin: 0 !important; padding: 0 18px !important; border-radius: 20px !important; border: 1px solid var(--mv-primary) !important; background: var(--mv-primary) !important; color: #fff !important; font: 600 13.5px var(--mv-font-body) !important; text-transform: none !important; box-shadow: none !important; cursor: pointer; }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .btn:hover { background: #8e2a31 !important; }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .btn[data-dismiss="modal"], html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .btn.btn-default, html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .btn.btn-secondary { background: var(--mv-surface) !important; border-color: var(--mv-border-strong) !important; color: var(--mv-text) !important; }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .btn[data-dismiss="modal"]:hover { border-color: var(--mv-wine-200) !important; background: var(--mv-wine-50) !important; }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .form-control { height: 42px; border-radius: 10px !important; border: 1px solid var(--mv-border-strong) !important; background: var(--mv-ivory-50) !important; box-shadow: none !important; font-size: 14px; }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) textarea.form-control { height: auto; min-height: 110px; padding: 10px 12px !important; }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .form-control:focus { border-color: var(--mv-wine-400) !important; background: var(--mv-surface) !important; box-shadow: 0 0 0 3px rgba(163,52,58,.08) !important; }
/* contact details: label / value rows */
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .gt-panel-body .row { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .gt-panel-body .row > [class*="col-"] { max-width: none !important; flex: none !important; margin: 0 !important; padding: 8px 12px !important; border-radius: 10px; background: var(--mv-ivory-50); display: flex !important; flex-direction: column; gap: 2px; }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .gt-panel-body .row > [class*="col-"] > div { width: auto !important; font-size: 13px; }
html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .gt-panel-body .row > [class*="col-"] > div:first-child { font-size: 10.5px; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; color: var(--mv-wine-400); }
@media (max-width: 575.98px) { html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .gt-panel-body .row { grid-template-columns: minmax(0, 1fr); } html body .modal:not(.mv-modal):not(.mv-phm):not(.mv-gal):not(#mv-x) .modal-dialog { margin: 12vh auto !important; } }

/* chat window: minimise works (header only), clean line icons */
html body .chat_box.card:has(#chatBoxBody[style*="none"]) { height: auto !important; min-height: 0 !important; }
html body .chat_box.card:has(#chatBoxBody[style*="none"]) > :has(#chatBoxBody) { display: none !important; }
html body .chat_box.card:has(#chatBoxBody[style*="none"]) #chatBoxHeader { border-bottom: 0 !important; border-radius: 18px !important; }
html body #chatBoxHeader .text-white { display: flex; align-items: center; gap: 2px; }
html body #chatBoxHeader #dropdownMenu[style*="none"] { display: none !important; }
html body #chatBoxHeader i.fa { font-size: 0 !important; background: center / 17px no-repeat; }
html body #chatBoxHeader i.fa::before { content: none !important; }
html body #chatBoxHeader i.fa-chevron-down { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%235b524d%22 stroke-width=%222.2%22 stroke-linecap=%22round%22%3E%3Cpath d=%22M5 12h14%22/%3E%3C/svg%3E"); }
html body #chatBoxHeader i.fa-chevron-up { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%235b524d%22 stroke-width=%222.2%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M15 3h6v6M9 21H3v-6M21 3l-7 7M3 21l7-7%22/%3E%3C/svg%3E"); }
html body #chatBoxHeader i.fa-times { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%235b524d%22 stroke-width=%222.2%22 stroke-linecap=%22round%22%3E%3Cpath d=%22M18 6 6 18M6 6l12 12%22/%3E%3C/svg%3E"); }
html body #chatBoxHeader i.fa-ellipsis-v { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22%235b524d%22%3E%3Ccircle cx=%2212%22 cy=%225%22 r=%221.8%22/%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%221.8%22/%3E%3Ccircle cx=%2212%22 cy=%2219%22 r=%221.8%22/%3E%3C/svg%3E"); }
html body #chatBoxFooter .upload_btn_wrapper label i.fa { font-size: 0 !important; width: 18px; height: 18px; background: center / 18px no-repeat url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%237a716c%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%223%22 y=%223%22 width=%2218%22 height=%2218%22 rx=%223%22/%3E%3Ccircle cx=%229%22 cy=%229%22 r=%222%22/%3E%3Cpath d=%22m21 15-5-5L5 21%22/%3E%3C/svg%3E"); }
html body #chatBoxFooter .upload_btn_wrapper label i.fa::before { content: none !important; }
html body #chatBoxFooter .send_button i.fa { font-size: 0 !important; width: 18px; height: 18px; margin: 0 0 0 -2px !important; background: center / 18px no-repeat url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22white%22 stroke-width=%222.2%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M22 2 11 13M22 2l-7 20-4-9-9-4z%22/%3E%3C/svg%3E"); }
html body #chatBoxFooter .send_button i.fa::before { content: none !important; }
/* list avatars: no coloured ring, simple grey placeholder */
html body .chatlistuser .img_box, html body .activeuserlist .img_box, html body #chatBoxHeader .img_box { background-color: #F4F4F4 !important; }
html body .chat_box .my_text_box p { min-width: 70px; }
html body .chat_box .msglist { padding-bottom: 6px; }
html body .chat_box.card:not(#mv-x) #chatBoxBody { scrollbar-width: thin; scrollbar-color: var(--mv-border-strong) transparent; }
.mv-hr-sum { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; list-style: none; margin: 0 0 12px !important; padding: 0 !important; }
.mv-hr-sum li { padding: 10px 12px; border-radius: 12px; background: var(--mv-wine-50); border: 1px solid var(--mv-wine-100); }
.mv-hr-sum small { display: block; font-size: 10.5px; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; color: var(--mv-wine-400); }
.mv-hr-sum b { font-size: 14.5px; color: var(--mv-text); }
.mv-hr-sum em { font-style: normal; font-weight: 500; font-size: 12px; color: var(--mv-text-3); }
.mv-hr-auto { display: flex; gap: 8px; margin: 0 0 14px !important; padding: 10px 12px; border-radius: 12px; background: var(--mv-ivory-50); font-size: 12.5px; line-height: 1.5; color: var(--mv-text-2); }
.mv-hr-auto .mv-i { flex: none; margin-top: 2px; color: var(--mv-wine-500); }
@media (max-width: 575.98px) { .mv-hr-sum { grid-template-columns: minmax(0, 1fr); } }
.mv-hr-one { margin-top: 14px; max-width: 420px; }
.mv-hr-one > b { display: block; margin-bottom: 8px; font-size: 13.5px; color: var(--mv-text); }
.mv-hr-one > b em { font-style: normal; font-size: 11px; font-weight: 600; margin-left: 6px; padding: 2px 8px; border-radius: 10px; background: var(--mv-wine-50); color: var(--mv-wine-500); }

/* compatibility v2: summary bar + you / them table */
html body .mv-cp-head { padding: 4px 0 14px !important; gap: 22px !important; }
html body .mv-cp-face > img, html body .mv-cp-face > .mv-initials { width: 64px !important; height: 64px !important; font-size: 20px !important; }
html body .mv-cp-mid .mv-pd-ring.is-lg { width: 96px; height: 96px; }
html body .mv-cp-mid .mv-pd-ring.is-lg b { font-size: 24px; }
.mv-cp-bar { display: flex; height: 8px; margin: 0 0 8px; border-radius: 4px; overflow: hidden; background: var(--mv-sand-100); gap: 2px; }
.mv-cp-bar i { display: block; min-width: 0; }
.mv-cp-bar i.is-yes { background: var(--mv-success); } .mv-cp-bar i.is-open { background: #9fd1b4; } .mv-cp-bar i.is-no { background: var(--mv-wine-300); }
.mv-cp-legend { display: flex; flex-wrap: wrap; gap: 6px 16px; list-style: none; margin: 0 0 14px !important; padding: 0 !important; font-size: 12.5px; color: var(--mv-text-2); }
.mv-cp-legend li { display: inline-flex; align-items: center; gap: 6px; }
.mv-cp-legend i { width: 9px; height: 9px; border-radius: 50%; }
.mv-cp-legend .is-yes i { background: var(--mv-success); } .mv-cp-legend .is-open i { background: #9fd1b4; } .mv-cp-legend .is-no i { background: var(--mv-wine-300); }
.mv-cp-legend b { color: var(--mv-text); }
.mv-cp-table { border: 1px solid var(--mv-border); border-radius: 14px; overflow: hidden; }
.mv-cp-row { display: grid; grid-template-columns: 1fr 1.4fr 1.4fr 112px; gap: 12px; align-items: center; padding: 10px 14px; border-top: 1px solid var(--mv-border); font-size: 13.5px; }
.mv-cp-row:first-child { border-top: 0; }
.mv-cp-row.is-head { background: var(--mv-ivory-50); font-size: 10.5px; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; color: var(--mv-text-3); }
.mv-cp-k { font-weight: 600; color: var(--mv-text); }
.mv-cp-v { color: var(--mv-text-2); overflow-wrap: anywhere; }
.mv-cp-v.is-them { color: var(--mv-text); font-weight: 500; }
.mv-cp-v i { color: var(--mv-text-3); font-weight: 400; }
.mv-cp-st { justify-self: end; display: inline-flex; align-items: center; gap: 5px; height: 26px; padding: 0 10px; border-radius: 13px; font-size: 12px; font-weight: 600; white-space: nowrap; }
.mv-cp-st .mv-i { width: 13px; height: 13px; }
.mv-cp-row.is-yes .mv-cp-st { background: var(--mv-success-bg); color: var(--mv-success); }
.mv-cp-row.is-open .mv-cp-st { background: #eef7f1; color: #4f8a66; }
.mv-cp-row.is-no .mv-cp-st { background: var(--mv-wine-50); color: var(--mv-wine-500); }
.mv-cp-row.is-no { background: #fffafa; }
@media (max-width: 767.98px) {
  .mv-cp-row.is-head { display: none; }
  .mv-cp-row { grid-template-columns: 1fr auto; gap: 4px 10px; }
  .mv-cp-k { grid-column: 1; } .mv-cp-st { grid-column: 2; grid-row: 1; }
  .mv-cp-v { grid-column: 1 / -1; font-size: 12.5px; }
  .mv-cp-v::before { content: attr(data-l) ": "; color: var(--mv-text-3); font-weight: 400; }
}

/* ===== pricing: payment step as a checkout ===== */
html body .mv-pr #chkplan { max-width: 760px; margin: 0 auto; border-radius: 20px !important; }
html body .mv-pr #chkplan > .card-header { padding: 18px 22px !important; }
html body .mv-pr #chkplan > .card-header h5 { display: flex; align-items: center; gap: 10px; font-size: 20px !important; }
html body .mv-pr #chkplan > .card-header h5::before { content: ""; width: 34px; height: 34px; border-radius: 10px; background: var(--mv-wine-50) center / 17px no-repeat url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23A3343A%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%222%22 y=%225%22 width=%2220%22 height=%2214%22 rx=%222%22/%3E%3Cpath d=%22M2 10h20%22/%3E%3C/svg%3E"); }
html body .mv-pr #chkplan h5::after { display: none !important; }
html body .mv-pr #chkplan > .card-body { padding: 18px 22px 22px !important; }
html body .mv-pr #chkplan .card-body > .border-bottom { order: 9; margin: 16px 0 0 !important; padding: 10px 14px !important; border: 0 !important; border-radius: 12px; background: var(--mv-ivory-50); }
html body .mv-pr #chkplan .card-body > .border-bottom h5 { margin: 0 !important; font-size: 12.5px !important; color: var(--mv-text-2) !important; }
html body .mv-pr #chkplan > .card-body { display: flex; flex-direction: column; }
/* summary tiles */
html body .mv-pr #chkplan > .card-body > .row { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 0 !important; }
html body .mv-pr #chkplan > .card-body > .row > .col-md-6 { max-width: none !important; flex: none !important; padding: 12px 14px !important; margin: 0 !important; border-radius: 14px; border: 1px solid var(--mv-border); background: var(--mv-surface); }
html body .mv-pr #chkplan > .card-body > .row > .col-md-6:nth-child(3) { background: var(--mv-wine-50); border-color: var(--mv-wine-100); }
html body .mv-pr #chkplan > .card-body > .row > .col-md-6 > .row { display: flex; flex-direction: column; gap: 2px; margin: 0 !important; }
html body .mv-pr #chkplan > .card-body > .row > .col-md-6 > .row > div { max-width: none !important; flex: none !important; padding: 0 !important; }
html body .mv-pr #chkplan > .card-body > .row > .col-md-6 h6 { margin: 0 !important; }
html body .mv-pr #chkplan > .card-body > .row > .col-md-6 .col-5 h6 { font-size: 10.5px !important; font-weight: 600 !important; letter-spacing: .06em; text-transform: uppercase; color: var(--mv-text-3) !important; }
html body .mv-pr #chkplan > .card-body > .row > .col-md-6 .col-7 h6 { font-family: var(--mv-font-head) !important; font-size: 20px !important; font-weight: 600 !important; color: var(--mv-text) !important; }
html body .mv-pr #chkplan > .card-body > .row > .col-md-6:nth-child(3) .col-7 h6 { color: var(--mv-wine-500) !important; }
html body .mv-pr #chkplan > .card-body > .row > .col-md-12 { grid-column: 1 / -1; max-width: none !important; padding: 0 !important; margin: 8px 0 0 !important; }
html body .mv-pr #chkplan > .card-body > .row > .col-md-12::before { content: "Choose how to pay"; display: block; margin: 4px 0 8px; font-size: 13px; font-weight: 600; color: var(--mv-text-2); }
/* payment methods */
html body .mv-pr #chkplan .card-body .card { margin: 0 0 8px !important; border: 1px solid var(--mv-border) !important; border-radius: 14px !important; transition: border-color var(--mv-fast) ease, box-shadow var(--mv-fast) ease; }
html body .mv-pr #chkplan .card-body .card:hover { border-color: var(--mv-wine-200) !important; box-shadow: 0 6px 16px rgba(42,36,33,.06) !important; }
html body .mv-pr #chkplan .card-body .card .card-header { padding: 12px 14px !important; background: var(--mv-surface) !important; border: 0 !important; }
html body .mv-pr #chkplan .card-body .card .card-header > label > .row { display: flex !important; flex-wrap: nowrap; align-items: center; margin: 0 !important; gap: 12px; }
html body .mv-pr #chkplan .card-body .card .card-header > label > .row > [class*="col"] { max-width: none !important; flex: 1 1 auto !important; width: auto !important; padding: 0 !important; margin: 0 !important; text-align: left !important; }
html body .mv-pr #chkplan .card-body .card .card-header > label > .row > [class*="col"]:last-child { flex: none !important; display: flex; justify-content: flex-end; }
html body .mv-pr #chkplan .card-body .card h5 { display: flex; align-items: center; gap: 12px; margin: 0 !important; font-family: var(--mv-font-body) !important; font-size: 15px !important; font-weight: 600 !important; color: var(--mv-text) !important; }
html body .mv-pr #chkplan .card-body .card h5::before { content: ""; display: block !important; flex: none; width: 40px; height: 40px; border-radius: 12px; background: var(--mv-ivory-50) center / 20px no-repeat url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%235b524d%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%222%22 y=%225%22 width=%2220%22 height=%2214%22 rx=%222%22/%3E%3Cpath d=%22M2 10h20M6 15h4%22/%3E%3C/svg%3E"); border: 1px solid var(--mv-border); }
html body .mv-pr #chkplan .card-body .card .btn, html body .mv-pr #chkplan .card-body .card input[type="submit"], html body .mv-pr #chkplan .card-body .card button { height: 40px !important; min-height: 0 !important; padding: 0 20px !important; border-radius: 20px !important; border: 0 !important; background: var(--mv-primary) !important; color: #fff !important; font: 600 13.5px var(--mv-font-body) !important; box-shadow: none !important; text-transform: none !important; }
@media (max-width: 575.98px) { html body .mv-pr #chkplan > .card-body > .row { grid-template-columns: minmax(0, 1fr); } html body .mv-pr #chkplan .card-body .card .card-header > label > .row { flex-wrap: wrap; } }

/* ===== my membership: cleaner plan banner ===== */
.mv-mp-plan, .mv-mp-plan.is-paid { background: var(--mv-surface) !important; color: var(--mv-text) !important; border: 1px solid var(--mv-wine-100); position: relative; overflow: hidden; }
.mv-mp-plan::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 5px; background: var(--mv-primary); }
.mv-mp-plan { background: linear-gradient(120deg, var(--mv-wine-50), var(--mv-surface) 60%) !important; padding-left: 24px !important; }
.mv-mp-badge { background: var(--mv-success-bg) !important; color: var(--mv-success) !important; }
.mv-mp-plan.is-expired .mv-mp-badge { background: var(--mv-wine-100) !important; color: var(--mv-wine-500) !important; }
.mv-mp-plan-t b { color: var(--mv-text); }
.mv-mp-plan-t small { color: var(--mv-text-2); opacity: 1 !important; }
.mv-mp-exp small { color: var(--mv-text-3); opacity: 1 !important; }
.mv-mp-exp b { color: var(--mv-text); }
.mv-mp-plan.is-expired .mv-mp-exp b { color: var(--mv-wine-500); }
.mv-mp-exp em { background: var(--mv-success-bg) !important; color: var(--mv-success) !important; }
.mv-mp-stats li { background: var(--mv-surface) !important; }
.mv-mp-stats li .mv-i { width: 30px; height: 30px; padding: 7px; border-radius: 9px; background: var(--mv-wine-50); }
html body .mv-pr #chkplan .card-body .col-md-12 > .card { width: 100% !important; max-width: none !important; }
html body .mv-pr #chkplan .card-body .card .card-header > label, html body .mv-pr #chkplan .card-body .card .card-header > label > .row { width: 100% !important; }
html body .mv-pr #chkplan .card-body .card h5 { border-left: 0 !important; padding-left: 0 !important; }
html body .mv-pr #chkplan .card-body .card h5::before { display: block !important; }
html body .mv-pr #chkplan .card-body .card .card-header::before, html body .mv-pr #chkplan .card-body .card .card-header::after { display: none !important; }
html body .mv-pr #chkplan .card-body .card .card-header h5::before { width: 40px !important; height: 40px !important; border-radius: 12px !important; }
/* payment rows: full width, button never clipped */
html body .mv-pr #chkplan .card-body .col-md-12, html body .mv-pr #chkplan .card-body .col-md-12 > .card, html body .mv-pr #chkplan .card-body .card > .card-header, html body .mv-pr #chkplan .card-body .card > .card-header > label { width: 100% !important; max-width: none !important; overflow: visible !important; display: block; }
html body .mv-pr #chkplan .card-body .card > .card-header > label > .row { display: grid !important; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 12px; }
html body .mv-pr #chkplan .card-body .card > .card-header > label > .row > [class*="col"] { width: auto !important; max-width: none !important; flex: none !important; overflow: visible !important; }
html body .mv-pr #chkplan .card-body .card form { margin: 0 !important; }
/* edit horoscope */
.mv-eh-auto { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin: 0 0 16px; padding: 12px 14px; border-radius: 12px; background: var(--mv-wine-50); border: 1px solid var(--mv-wine-100); font-size: 13.5px; color: var(--mv-text-2); }
.mv-eh-auto > .mv-i { color: var(--mv-wine-500); flex: none; }
.mv-eh-auto span { flex: 1; min-width: 200px; }
.mv-eh-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
@media (max-width: 991.98px) { .mv-eh-grid { grid-template-columns: minmax(0, 1fr); } }
.mv-eh-chart { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-template-rows: repeat(4, minmax(70px, auto)); border: 1.5px solid var(--mv-wine-300); border-radius: 14px; background: var(--mv-surface); }
.mv-eh-chart > :first-child { border-top-left-radius: 12px; }
.mv-eh-cell { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; padding: 6px; border: .5px solid var(--mv-wine-100); cursor: pointer; text-align: center; transition: background var(--mv-fast) ease; }
.mv-eh-cell:hover { background: var(--mv-wine-50); }
.mv-eh-cell.is-open { background: var(--mv-wine-50); box-shadow: inset 0 0 0 2px var(--mv-wine-400); z-index: 5; }
.mv-eh-sign { font-size: 10px; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; color: var(--mv-text-3); }
.mv-eh-vals { font-size: 12.5px; font-weight: 600; color: var(--mv-text); line-height: 1.3; }
.mv-eh-cell:not(.has-val) .mv-eh-vals::before { content: "+"; font-size: 18px; font-weight: 400; color: var(--mv-wine-300); }
.mv-eh-chart .mv-hr-mid { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; }
.mv-eh-chart .mv-hr-mid small { font-size: 11.5px; color: var(--mv-text-3); }
.mv-eh-pop { display: none; position: absolute; left: 50%; top: calc(100% + 6px); transform: translateX(-50%); z-index: 30; width: 190px; padding: 6px; border-radius: 12px; background: var(--mv-surface); border: 1px solid var(--mv-border); box-shadow: 0 14px 34px rgba(42,36,33,.18); text-align: left; cursor: default; }
.mv-eh-cell.is-open .mv-eh-pop { display: grid; grid-template-columns: 1fr 1fr; gap: 2px; }
.mv-eh-pop label { display: flex; align-items: center; gap: 6px; margin: 0; padding: 6px 7px; border-radius: 8px; font-size: 12.5px; color: var(--mv-text); cursor: pointer; }
.mv-eh-pop label:hover { background: var(--mv-ivory-50); }
.mv-eh-pop input { accent-color: var(--mv-primary); width: 15px; height: 15px; margin: 0; }
.mv-eh-chart .mv-eh-cell:nth-child(n+12) .mv-eh-pop { top: auto; bottom: calc(100% + 6px); }
html body .mv-eh-pop input[type="checkbox"] { position: static !important; opacity: 1 !important; display: inline-block !important; visibility: visible !important; -webkit-appearance: checkbox !important; appearance: auto !important; width: 15px !important; height: 15px !important; pointer-events: auto !important; }
html body .mv-eh-pop label:has(input:checked) { background: var(--mv-wine-50); color: var(--mv-wine-500); font-weight: 600; }

/* profile horoscope v2: you / them side by side */
.mv-hr2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.mv-hr2-side { min-width: 0; padding: 14px; border-radius: 14px; border: 1px solid var(--mv-border); background: var(--mv-surface); }
.mv-hr2-side:last-child { background: linear-gradient(160deg, var(--mv-wine-50), var(--mv-surface) 55%); border-color: var(--mv-wine-100); }
.mv-hr2-who { display: inline-flex; align-items: center; height: 24px; padding: 0 10px; margin-bottom: 10px; border-radius: 12px; background: var(--mv-sand-100); font-size: 11.5px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--mv-text-2); }
.mv-hr2-side:last-child .mv-hr2-who { background: var(--mv-primary); color: #fff; }
.mv-hr2-facts { display: grid; gap: 6px; margin: 0 0 12px !important; }
.mv-hr2-facts > div { display: flex; justify-content: space-between; gap: 10px; padding: 7px 10px; border-radius: 9px; background: var(--mv-ivory-50); }
.mv-hr2-facts dt { margin: 0; font-size: 12.5px; font-weight: 500; color: var(--mv-text-2); }
.mv-hr2-facts dd { margin: 0; text-align: right; font-size: 13px; font-weight: 600; color: var(--mv-text); }
.mv-hr2-facts dd i { font-weight: 400; color: var(--mv-text-3); }
.mv-hr2-est { font-style: normal; display: inline-block; margin-left: 4px; padding: 1px 6px; border-radius: 8px; background: var(--mv-wine-100); color: var(--mv-wine-500); font-size: 10px; font-weight: 700; vertical-align: 1px; }
.mv-hr2-ch > span { display: block; margin-bottom: 6px; font-size: 12.5px; font-weight: 600; color: var(--mv-text); }
.mv-hr2-chart { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-template-rows: repeat(4, minmax(48px, auto)); border: 1px solid var(--mv-wine-200); border-radius: 12px; overflow: hidden; background: var(--mv-surface); }
.mv-hr2-cell { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1px; padding: 4px; border: .5px solid var(--mv-wine-100); text-align: center; }
.mv-hr2-cell small { font-size: 9px; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; color: var(--mv-text-3); }
.mv-hr2-cell b { font-size: 11px; font-weight: 600; line-height: 1.25; color: var(--mv-text); }
.mv-hr2-cell.has-val { background: var(--mv-wine-50); }
.mv-hr2-mid { grid-column: 2 / 4; grid-row: 2 / 4; display: grid; place-items: center; font-family: var(--mv-font-head); font-size: 16px; font-weight: 600; color: var(--mv-wine-500); border: .5px solid var(--mv-wine-100); }
html body .mv-pd-horo .mv-hr-notes { margin-top: 12px; }
@media (max-width: 767.98px) { .mv-hr2 { grid-template-columns: minmax(0, 1fr); } }

/* profile header photo: auto slider */
.mv-pd-slides { position: absolute; inset: 0; }
.mv-pd-slides img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 20%; opacity: 0; transition: opacity .7s ease; }
.mv-pd-slides img.is-on { opacity: 1; }
.mv-pd-dots { position: absolute; left: 0; right: 0; bottom: 12px; z-index: 3; display: flex; justify-content: center; gap: 6px; }
.mv-pd-dots button { width: 7px; height: 7px; padding: 0; border: 0; border-radius: 4px; background: rgba(255,255,255,.55); cursor: pointer; transition: width .25s ease, background .25s ease; }
.mv-pd-dots button.is-on { width: 20px; background: #fff; }
.mv-pd-photo:has(.mv-pd-dots) .mv-pd-count { bottom: 30px; }
html body .mv-pd-tabs a { padding: 0 10px !important; font-size: 13px !important; }

/* ===== horoscope tab: traditional kundli look + guna milan ===== */
.mv-gm { margin: 0 0 16px; padding: 18px; border-radius: 16px; background: radial-gradient(120% 140% at 0% 0%, #FFF6E6, #FFFDF8 60%); border: 1px solid #EED9B3; }
.mv-gm-score { display: flex; align-items: center; gap: 18px; margin-bottom: 14px; }
.mv-gm-ring { --p: 0; flex: none; position: relative; width: 104px; height: 104px; border-radius: 50%; display: flex; flex-direction: column; align-items: center; justify-content: center; background: conic-gradient(#C8862A calc(var(--p) * 1%), #F3E3C4 0); }
.mv-gm-ring::before { content: ""; position: absolute; inset: 9px; border-radius: 50%; background: #FFFDF8; }
.mv-gm-ring b, .mv-gm-ring small { position: relative; }
.mv-gm-ring b { font-family: var(--mv-font-head); font-size: 30px; line-height: 1; color: #7A2A1F; }
.mv-gm-ring small { font-size: 11.5px; font-weight: 600; color: #9A7A55; }
.mv-gm-tag { display: inline-flex; height: 22px; align-items: center; padding: 0 9px; border-radius: 11px; background: #F6E3BF; color: #8A5A12; font-size: 11px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.mv-gm-score h4 { margin: 6px 0 2px !important; font-family: var(--mv-font-head); font-size: 20px; font-weight: 600; color: var(--mv-text); }
.mv-gm-score h4.is-great, .mv-gm-score h4.is-good { color: #2E7D50; } .mv-gm-score h4.is-low { color: var(--mv-wine-500); }
.mv-gm-score p { margin: 0 !important; font-size: 13px; color: var(--mv-text-2); }
.mv-gm-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px 18px; }
.mv-gm-row { display: grid; grid-template-columns: 130px minmax(0, 1fr) 46px; align-items: center; gap: 10px; padding: 6px 0; border-top: 1px dashed #EED9B3; }
.mv-gm-k b { display: block; font-size: 13px; color: var(--mv-text); } .mv-gm-k small { font-size: 11.5px; color: var(--mv-text-3); }
.mv-gm-bar { height: 7px; border-radius: 4px; background: #F3E6CF; overflow: hidden; }
.mv-gm-bar i { display: block; height: 100%; border-radius: 4px; }
.mv-gm-bar i.is-hi { background: #3E9A63; } .mv-gm-bar i.is-mid { background: #D8A040; } .mv-gm-bar i.is-0 { background: transparent; }
.mv-gm-v { text-align: right; font-weight: 700; font-size: 14px; color: var(--mv-text); } .mv-gm-v small { font-weight: 500; font-size: 11px; color: var(--mv-text-3); }
@media (max-width: 767.98px) { .mv-gm-list { grid-template-columns: minmax(0, 1fr); } .mv-gm-score { flex-direction: column; text-align: center; } }

/* person cards in the same warm tone */
.mv-hr2-side, .mv-hr2-side:last-child { background: #FFFDF8 !important; border-color: #EED9B3 !important; }
.mv-hr2-who { background: #F6E3BF !important; color: #8A5A12 !important; }
.mv-hr2-side:last-child .mv-hr2-who { background: #8E2A31 !important; color: #fff !important; }
.mv-hr2-facts > div { background: #FBF3E4 !important; }
.mv-hr2-est { background: #F6E3BF !important; color: #8A5A12 !important; }
/* kundli chart */
.mv-hr2-chart { position: relative; border: 2px solid #C8862A !important; border-radius: 6px !important; background: #FFF9EE !important; box-shadow: 0 0 0 4px #FFF9EE, 0 0 0 5px #E8C98F; }
.mv-hr2-cell { border: 1px solid #E3C48C !important; background: transparent !important; }
.mv-hr2-cell.has-val { background: #FFF1D6 !important; }
.mv-hr2-cell small { color: #A27B45 !important; font-size: 8.5px !important; }
.mv-hr2-cell b { color: #7A2A1F !important; font-size: 11px !important; }
.mv-hr2-mid { display: flex !important; flex-direction: column; gap: 2px; border: 1px solid #E3C48C !important; background: radial-gradient(circle, #FFF1D6, #FFF9EE 70%) !important; }
.mv-hr2-mid span { font-size: 30px; line-height: 1; color: #C8862A; }
.mv-hr2-mid b { font-family: var(--mv-font-head); font-size: 14px; letter-spacing: .12em; text-transform: uppercase; color: #7A2A1F; }
/* payment step v2: summary left, methods right */
html body .mv-pr #chkplan { max-width: 960px !important; }
html body .mv-pr #chkplan > .card-body > .row { grid-template-columns: 280px minmax(0, 1fr) !important; grid-template-rows: auto auto auto 1fr; gap: 10px 22px !important; align-items: start; }
html body .mv-pr #chkplan > .card-body > .row > .col-md-6 { grid-column: 1; }
html body .mv-pr #chkplan > .card-body > .row > .col-md-6:nth-child(1) { grid-row: 1; } html body .mv-pr #chkplan > .card-body > .row > .col-md-6:nth-child(2) { grid-row: 2; } html body .mv-pr #chkplan > .card-body > .row > .col-md-6:nth-child(3) { grid-row: 3; }
html body .mv-pr #chkplan > .card-body > .row > .col-md-6 > .row { flex-direction: row !important; justify-content: space-between; align-items: baseline; }
html body .mv-pr #chkplan > .card-body > .row > .col-md-6 .col-7 h6 { font-size: 17px !important; text-align: right; }
html body .mv-pr #chkplan > .card-body > .row > .col-md-12 { grid-column: 2 !important; grid-row: 1 / span 4; margin: 0 !important; }
html body .mv-pr #chkplan > .card-body > .row > .col-md-12::before { margin-top: 0 !important; }
/* the empty first column in each payment form pushed Pay Now out of the box */
html body .mv-pr #chkplan .card-body .card form > .row { display: flex !important; justify-content: flex-end; margin: 0 !important; }
html body .mv-pr #chkplan .card-body .card form > .row > .col-md-6:first-child { display: none !important; }
html body .mv-pr #chkplan .card-body .card form > .row > .col-md-6:last-child { flex: none !important; max-width: none !important; width: auto !important; padding: 0 !important; margin: 0 !important; }
html body .mv-pr #chkplan .card-body .card > .card-header > label > .row > [class*="col"]:last-child { justify-self: end; }
@media (max-width: 767.98px) {
  html body .mv-pr #chkplan > .card-body > .row { grid-template-columns: minmax(0, 1fr) !important; }
  html body .mv-pr #chkplan > .card-body > .row > .col-md-12 { grid-column: 1 !important; grid-row: auto; }
  html body .mv-pr #chkplan > .card-body > .row > .col-md-6 { grid-row: auto !important; }
}

/* ===== payment step v3: checkout ===== */
html body .mv-pr #chkplan > .card-body > .row { grid-template-columns: 300px minmax(0, 1fr) !important; grid-template-rows: auto !important; gap: 22px !important; }
html body .mv-pr #chkplan > .card-body > .row > .col-md-12 { grid-column: 2 !important; grid-row: 1 !important; }
.mv-co-sum { grid-column: 1; grid-row: 1; align-self: start; padding: 18px; border-radius: 16px; background: linear-gradient(170deg, #FBF2F1, #FFFFFF 70%); border: 1px solid var(--mv-wine-100); }
.mv-co-h { margin: 0 0 12px !important; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--mv-wine-400); }
.mv-co-plan { display: flex; align-items: center; gap: 12px; padding-bottom: 14px; border-bottom: 1px dashed var(--mv-wine-100); }
.mv-co-crown { flex: none; width: 44px; height: 44px; border-radius: 12px; display: grid; place-items: center; background: linear-gradient(135deg, #D4A94A, #A0741E); color: #fff; box-shadow: 0 6px 14px rgba(160,116,30,.25); }
.mv-co-crown svg { width: 22px; height: 22px; }
.mv-co-plan small { display: block; font-size: 12px; color: var(--mv-text-3); }
.mv-co-plan b, .mv-co-plan b h6 { display: block; margin: 0 !important; font-family: var(--mv-font-head) !important; font-size: 22px !important; font-weight: 600 !important; color: var(--mv-text) !important; text-transform: capitalize; }
.mv-co-rows { margin: 12px 0 !important; display: grid; gap: 8px; }
.mv-co-rows > div { display: flex; justify-content: space-between; gap: 10px; font-size: 13.5px; }
.mv-co-rows dt { margin: 0; font-weight: 500; color: var(--mv-text-2); }
.mv-co-rows dd, .mv-co-rows dd h6 { margin: 0 !important; font: 600 13.5px var(--mv-font-body) !important; color: var(--mv-text) !important; }
.mv-co-total { display: flex; align-items: baseline; justify-content: space-between; padding: 12px 14px; margin: 4px -4px 12px; border-radius: 12px; background: var(--mv-surface); border: 1px solid var(--mv-wine-100); }
.mv-co-total span { font-size: 13.5px; font-weight: 600; color: var(--mv-text); }
.mv-co-total b, .mv-co-total b h6 { margin: 0 !important; font-family: var(--mv-font-head) !important; font-size: 26px !important; font-weight: 700 !important; color: var(--mv-wine-500) !important; }
.mv-co-trust { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; gap: 6px; }
.mv-co-trust li { position: relative; padding-left: 22px; font-size: 12.5px; color: var(--mv-text-2); }
.mv-co-trust li::before { content: ""; position: absolute; left: 0; top: 2px; width: 15px; height: 15px; border-radius: 50%; background: var(--mv-success-bg) center / 9px no-repeat url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%232E7D50%22 stroke-width=%224%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M20 6 9 17l-5-5%22/%3E%3C/svg%3E"); }
/* methods */
html body .mv-pr #chkplan .mv-co-m { margin: 0 0 10px !important; border-radius: 14px !important; }
html body .mv-pr #chkplan .mv-co-m .card-header { padding: 14px 16px !important; }
html body .mv-pr #chkplan .mv-co-m h5::before { display: none !important; }
html body .mv-pr #chkplan .mv-co-m h5 { gap: 14px !important; }
.mv-co-ic { flex: none; width: 46px; height: 46px; border-radius: 12px; display: grid; place-items: center; background: var(--mv-surface); border: 1px solid var(--mv-border); }
.mv-co-ic svg { width: 24px; height: 24px; }
.mv-co-tx { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.mv-co-tx b { font-size: 15px; font-weight: 600; color: var(--mv-text); }
.mv-co-tx small { font-size: 12.5px; font-weight: 400; color: var(--mv-text-3); }
.mv-co-brands { display: flex; gap: 4px; margin-top: 3px; }
.mv-co-brands i { font-style: normal; height: 18px; padding: 0 6px; display: inline-flex; align-items: center; border-radius: 4px; border: 1px solid var(--mv-border); font-size: 9.5px; font-weight: 800; letter-spacing: .04em; color: #1A1F71; background: #fff; }
.mv-co-brands i:nth-child(2) { color: #EB001B; } .mv-co-brands i:nth-child(3) { color: #2E77BC; }
html body .mv-pr #chkplan .mv-co-m input[type="submit"] { min-width: 120px; }
@media (max-width: 767.98px) { html body .mv-pr #chkplan > .card-body > .row { grid-template-columns: minmax(0, 1fr) !important; } html body .mv-pr #chkplan > .card-body > .row > .col-md-12 { grid-column: 1 !important; grid-row: 2 !important; } .mv-co-sum { grid-column: 1; } }
.mv-pay-err { max-width: 960px; margin: 14px auto 0; padding: 12px 16px; border-radius: 12px; background: #FDF1F1; border: 1px solid var(--mv-wine-200); color: var(--mv-wine-500); font-size: 14px; }
/* chat: icons stay visible on hover, slim scrollbars, tidy online list */
html body #chatBoxHeader i.fa:hover { background-color: var(--mv-sand-100) !important; background-image: inherit; }
html body #chatBoxHeader i.fa-chevron-down:hover { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23A3343A%22 stroke-width=%222.2%22 stroke-linecap=%22round%22%3E%3Cpath d=%22M5 12h14%22/%3E%3C/svg%3E") !important; }
html body #chatBoxHeader i.fa-chevron-up:hover { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23A3343A%22 stroke-width=%222.2%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M15 3h6v6M9 21H3v-6M21 3l-7 7M3 21l7-7%22/%3E%3C/svg%3E") !important; }
html body #chatBoxHeader i.fa-times:hover { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23A3343A%22 stroke-width=%222.2%22 stroke-linecap=%22round%22%3E%3Cpath d=%22M18 6 6 18M6 6l12 12%22/%3E%3C/svg%3E") !important; }
html body #chatBoxHeader i.fa-ellipsis-v:hover { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22%23A3343A%22%3E%3Ccircle cx=%2212%22 cy=%225%22 r=%221.8%22/%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%221.8%22/%3E%3Ccircle cx=%2212%22 cy=%2219%22 r=%221.8%22/%3E%3C/svg%3E") !important; }
html body #chatBoxHeader i.fa { background-size: 17px !important; background-repeat: no-repeat !important; background-position: center !important; }
html body .chat_list_box .card-body::-webkit-scrollbar, html body .active_list_box .card-body::-webkit-scrollbar, html body #chatBoxBody::-webkit-scrollbar { width: 5px !important; }
html body .chat_list_box .card-body::-webkit-scrollbar-button, html body .active_list_box .card-body::-webkit-scrollbar-button, html body #chatBoxBody::-webkit-scrollbar-button { display: none !important; height: 0 !important; }
html body .chat_list_box .card-body::-webkit-scrollbar-thumb, html body .active_list_box .card-body::-webkit-scrollbar-thumb, html body #chatBoxBody::-webkit-scrollbar-thumb { background: var(--mv-border-strong) !important; border-radius: 3px; }
html body .chat_list_box .card-body::-webkit-scrollbar-track, html body .active_list_box .card-body::-webkit-scrollbar-track, html body #chatBoxBody::-webkit-scrollbar-track { background: transparent !important; }
html body .chat_list_box.card:not(#mv-x) > .card-body, html body .active_list_box.card:not(#mv-x) > .card-body { scrollbar-width: thin; scrollbar-color: var(--mv-border-strong) transparent; overflow-y: auto !important; }
html body .active_list_box .card-header h6, html body .chat_list_box .card-header h6 { display: flex !important; align-items: center; margin: 0 !important; }
html body .active_list_box .card-header h6::after { margin-left: 8px !important; vertical-align: 0 !important; }
html body .chatlistuser > li, html body .activeuserlist > li { border-bottom: 1px solid var(--mv-border) !important; border-radius: 0 !important; margin: 0 !important; }
html body .chatlistuser > li:last-child, html body .activeuserlist > li:last-child { border-bottom: 0 !important; }
html body .chatlistuser > li:hover, html body .activeuserlist > li:hover { background: var(--mv-wine-50) !important; }
html body .chatlistuser .user_name, html body .activeuserlist .user_name { float: none !important; font-size: 14px !important; }
html body .activeuserlist small { font-size: 12px !important; color: var(--mv-text-3) !important; margin-top: 1px; }
html body .activeuserlist .img_box::after { right: -1px; bottom: 0; width: 12px; height: 12px; }
/* checkout text polish */
html body .mv-pr #chkplan .mv-co-m .card-header h5::before, html body .mv-pr #chkplan .mv-co-m h5::before, html body .mv-pr #chkplan .card-body .card .card-header h5::before { content: none !important; display: none !important; }
html body .mv-pr #chkplan .mv-co-m .card-header > label > .row > [class*="col"]:first-child { min-width: 0; }
.mv-co-tx { gap: 3px !important; }
.mv-co-tx b { font-size: 15.5px !important; font-weight: 700 !important; letter-spacing: -.01em; }
.mv-co-tx small { font-size: 13px !important; line-height: 1.35; color: var(--mv-text-2) !important; white-space: normal; }
.mv-co-brands { margin-top: 5px !important; }
html body .mv-pr #chkplan .mv-co-m { transition: border-color .15s ease, box-shadow .15s ease; }
html body .mv-pr #chkplan .mv-co-m:hover { border-color: var(--mv-wine-200) !important; box-shadow: 0 8px 20px rgba(42,36,33,.07) !important; }
html body .mv-pr #chkplan .mv-co-help { order: 0; margin: 14px 0 0 !important; padding: 14px 16px 14px 58px !important; position: relative; border: 1px solid #CDEBD8 !important; border-radius: 14px; background: #F2FAF5 !important; }
html body .mv-pr #chkplan .mv-co-help::before { content: ""; position: absolute; left: 14px; top: 50%; width: 32px; height: 32px; margin-top: -16px; border-radius: 50%; background: #25D366 center / 18px no-repeat url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22white%22%3E%3Cpath d=%22M12 2a10 10 0 0 0-8.6 15.1L2 22l5-1.3A10 10 0 1 0 12 2zm5.3 14.1c-.2.6-1.3 1.2-1.8 1.2-.5.1-1 .2-3.3-.7-2.8-1.1-4.5-4-4.7-4.2-.1-.2-1.1-1.5-1.1-2.8s.7-2 1-2.3c.2-.3.5-.3.7-.3h.5c.2 0 .4 0 .6.5l.8 2c.1.2.1.4 0 .5l-.4.6-.4.4c-.1.1-.3.3-.1.6.2.3.8 1.3 1.6 2.1 1.1 1 2 1.3 2.3 1.4.3.2.5.1.6 0l.9-1c.2-.3.4-.2.6-.1l1.9.9c.3.1.5.2.5.3.1.1.1.6-.1 1.2z%22/%3E%3C/svg%3E"); }
html body .mv-pr #chkplan .mv-co-help h5 { margin: 0 !important; font-size: 13.5px !important; font-weight: 500 !important; line-height: 1.5 !important; color: var(--mv-text) !important; }
/* transactions v2 */
.mv-mo-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-bottom: 14px; }
.mv-mo-stats > div { padding: 12px 14px; border-radius: 12px; background: var(--mv-ivory-50); border: 1px solid var(--mv-border); }
.mv-mo-stats small { display: block; font-size: 11px; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; color: var(--mv-text-3); }
.mv-mo-stats b { font-family: var(--mv-font-head); font-size: 20px; color: var(--mv-text); }
.mv-mo-stats em, .mv-mo-amt em { font-style: normal; font-size: 11px; font-weight: 600; color: var(--mv-text-3); }
.mv-mo-table { border: 1px solid var(--mv-border); border-radius: 14px; overflow: hidden; }
.mv-mo-tr { display: grid; grid-template-columns: 1.5fr 1fr .8fr .8fr .8fr 44px; align-items: center; gap: 10px; padding: 9px 14px; border-top: 1px solid var(--mv-border); font-size: 13.5px; color: var(--mv-text); }
.mv-mo-tr:first-child { border-top: 0; }
.mv-mo-tr:not(.is-head):hover { background: var(--mv-ivory-50); }
.mv-mo-tr.is-head { background: var(--mv-ivory-50); font-size: 10.5px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--mv-text-3); }
.mv-mo-tr .is-r { text-align: right; justify-self: end; }
.mv-mo-tr.is-more { display: none; } .mv-mo-table.is-all .mv-mo-tr.is-more { display: grid; }
.mv-mo-tr form { margin: 0; }
.mv-mo-tr .mv-mo-del { width: 30px; height: 30px; }
.mv-mo-amt { font-weight: 700; }
.mv-mo-tag { font-style: normal; display: inline-flex; align-items: center; gap: 5px; height: 26px; padding: 0 10px; border-radius: 13px; font-size: 12.5px; font-weight: 600; }
.mv-mo-tag .mv-i { width: 13px; height: 13px; }
.mv-mo-tag.is-gold { background: #FBF3E2; color: #8A6510; } .mv-mo-tag.is-silver { background: #EEF1F5; color: #4F5D70; } .mv-mo-tag.is-bronze { background: #F8ECE4; color: #8A4B2A; }
.mv-mo-tag.is-promo { background: var(--mv-wine-50); color: var(--mv-wine-500); } .mv-mo-tag.is-free { background: var(--mv-sand-100); color: var(--mv-text-2); }
.mv-mo-moreb { display: flex; justify-content: center; margin-top: 12px; }
@media (max-width: 767.98px) {
  .mv-mo-stats { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } .mv-mo-stats > div:last-child { grid-column: 1 / -1; }
  .mv-mo-tr.is-head { display: none; }
  .mv-mo-tr { grid-template-columns: 1fr auto 36px; gap: 4px 10px; }
  .mv-mo-tr > span:nth-child(2), .mv-mo-tr > span:nth-child(3), .mv-mo-tr > span:nth-child(4) { grid-column: 1 / -1; font-size: 12px; color: var(--mv-text-2); display: inline; }
  .mv-mo-tr > span:nth-child(5) { grid-row: 1; grid-column: 2; } .mv-mo-tr > span:nth-child(6) { grid-row: 1; grid-column: 3; }
  .mv-mo-tr > span[data-l]::before { content: attr(data-l) ": "; color: var(--mv-text-3); }
}

/* ID search: room for the icon */
html body .mv-ifield .form-control { padding-left: 44px !important; }
/* chat buttons: highlight follows the open panel, not the radio state */
html body .chat_buttons .custom-control:not(#mv-x) .custom-control-input:checked ~ .custom-control-label::after { background-color: var(--mv-surface) !important; border-color: var(--mv-border) !important; color: var(--mv-text) !important; }
html body[data-mv-chat="chats"] .chat_buttons .custom-radio-chat:not(#mv-x) .custom-control-label::after, html body[data-mv-chat="online"] .chat_buttons .custom-radio-active:not(#mv-x) .custom-control-label::after { background-color: var(--mv-primary) !important; border-color: var(--mv-primary) !important; color: #fff !important; }
html body[data-mv-chat="chats"] .chat_buttons .custom-radio-chat:not(#mv-x) .custom-control-label::after { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22white%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M7.9 20A9 9 0 1 0 4 16.1L2 22Z%22/%3E%3C/svg%3E") !important; }
html body[data-mv-chat="online"] .chat_buttons .custom-radio-active:not(#mv-x) .custom-control-label::after { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%225%22 fill=%22%237CE3A4%22/%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%229%22 fill=%22none%22 stroke=%22white%22 stroke-opacity=%22.5%22 stroke-width=%222%22/%3E%3C/svg%3E") !important; }
/* delivered / seen ticks (lists) */
.mv-tick { display: inline-block; width: 18px; height: 12px; background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 16%22 fill=%22none%22 stroke=%22%23A79E98%22 stroke-width=%222.2%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M1 8.5 5.5 13 15 3M9 13l1 0 9.5-10%22/%3E%3C/svg%3E"); }
.mv-tick.is-read { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 16%22 fill=%22none%22 stroke=%22%232E7D50%22 stroke-width=%222.2%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M1 8.5 5.5 13 15 3M9 13l1 0 9.5-10%22/%3E%3C/svg%3E"); }
.mv-tick-new { display: inline-flex; height: 18px; padding: 0 7px; align-items: center; border-radius: 9px; background: var(--mv-primary); color: #fff; font-size: 10.5px; font-weight: 700; }
html body .chatlistuser .date { font-size: 11px !important; white-space: nowrap; }
html body .chatlistuser .media-body > div { gap: 8px; }
/* bubble ticks: same SVG style */
html body .chat_box .my_text_box span.ml-2::after { content: "" !important; display: inline-block; width: 16px; height: 11px; background: center / contain no-repeat url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 16%22 fill=%22none%22 stroke=%22white%22 stroke-opacity=%22.75%22 stroke-width=%222.2%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M1 8.5 5.5 13 15 3M9 13l1 0 9.5-10%22/%3E%3C/svg%3E"); }
html body .chat_box .my_text_box span.ml-2:has(img[src*="read_bg"])::after { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 16%22 fill=%22none%22 stroke=%22%239BE3B8%22 stroke-width=%222.4%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M1 8.5 5.5 13 15 3M9 13l1 0 9.5-10%22/%3E%3C/svg%3E"); }
html body .chat_box .my_text_box .time_box { margin-right: 2px; }

/* kundli centre: clean label + moon sign instead of the Om symbol */
.mv-hr2-mid { gap: 4px !important; background: #FFF9EE !important; background-image: linear-gradient(45deg, transparent calc(50% - .5px), #EBD3A8 50%, transparent calc(50% + .5px)), linear-gradient(-45deg, transparent calc(50% - .5px), #EBD3A8 50%, transparent calc(50% + .5px)) !important; }
.mv-hr2-mid b { padding: 2px 8px; border-radius: 6px; background: #FFF9EE; font-family: var(--mv-font-head) !important; font-size: 14px !important; letter-spacing: 0 !important; text-transform: none !important; color: #7A2A1F !important; }
.mv-hr2-mid small { padding: 0 6px; background: #FFF9EE; font-size: 9.5px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: #A27B45; }
.mv-hr2-moon { padding: 2px 9px; border-radius: 10px; background: #F6E3BF; font-size: 10.5px; font-weight: 700; color: #8A5A12; }
html body .mv-hr2-mid span.mv-hr2-moon { font-size: 10.5px !important; line-height: 1.3 !important; color: #8A5A12 !important; font-weight: 700 !important; font-family: var(--mv-font-body) !important; }
html body .mv-ifield input#txtID, html body .mv-ifield input#txtID:focus { padding-left: 46px !important; text-indent: 0 !important; }
html body .mv-ifield:has(#txtID) .mv-ifield-ic { left: 16px !important; width: 18px !important; height: 18px !important; z-index: 2; }
/* kundli centre: clean label instead of the Om symbol */
.mv-hr2-mid { gap: 3px !important; background: #FFF9EE !important; background-image: linear-gradient(45deg, transparent calc(50% - .5px), #EBD3A8 50%, transparent calc(50% + .5px)), linear-gradient(-45deg, transparent calc(50% - .5px), #EBD3A8 50%, transparent calc(50% + .5px)) !important; }
.mv-hr2-mid b { padding: 2px 8px; background: #FFF9EE; font-family: var(--mv-font-head) !important; font-size: 14px !important; letter-spacing: 0 !important; text-transform: none !important; color: #7A2A1F !important; }
.mv-hr2-mid small { padding: 0 6px; background: #FFF9EE; font-size: 10px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: #A27B45; }
.mv-hr2-moon { margin-top: 2px; padding: 2px 8px; border-radius: 10px; background: #F6E3BF; font-size: 10.5px; font-weight: 700; color: #8A5A12; }

/* ===== "Complete your profile" pop-ups (chat/allmodel.php) ===== */
html body .modal.mv-sg .modal-dialog { max-width: 620px !important; }
html body .modal.mv-sg .modal-content { border-radius: 20px !important; overflow: visible !important; }
html body .modal.mv-sg .modal-header.mv-sg-head { display: flex !important; align-items: flex-start !important; gap: 14px !important; padding: 20px 22px 16px !important; background: linear-gradient(135deg, var(--mv-wine-50), var(--mv-surface) 70%) !important; border-bottom: 1px solid var(--mv-border) !important; border-radius: 20px 20px 0 0; justify-content: flex-start !important; }
html body .modal.mv-sg .modal-header.mv-sg-head::before { display: none !important; }
.mv-sg-ic { flex: none; width: 44px; height: 44px; border-radius: 12px; display: grid; place-items: center; background: var(--mv-primary); color: #fff; box-shadow: 0 6px 14px rgba(163,52,58,.22); }
.mv-sg-ic .mv-i { width: 20px; height: 20px; }
.mv-sg-step { display: inline-flex; height: 20px; align-items: center; padding: 0 8px; border-radius: 10px; background: var(--mv-wine-100); color: var(--mv-wine-500); font-size: 10.5px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
html body .modal.mv-sg .mv-sg-head .modal-title { margin: 6px 0 2px !important; font-size: 20px !important; text-align: left !important; }
.mv-sg-head p { margin: 0 !important; font-size: 13px; color: var(--mv-text-2); }
html body .modal.mv-sg .modal-body { padding: 18px 22px 6px !important; }
html body .modal.mv-sg .modal-body > .row { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 16px; margin: 0 !important; align-items: start; }
html body .modal.mv-sg .modal-body > .row > .form-group, html body .modal.mv-sg .modal-body > .row > [class*="col"] { max-width: none !important; flex: none !important; width: auto !important; padding: 0 !important; margin: 0 !important; }
html body .modal.mv-sg .modal-body > .row > .col-12, html body .modal.mv-sg .modal-body > .row > .col-md-12, html body .modal.mv-sg .modal-body > .row > :has(textarea), html body .modal.mv-sg .modal-body > .row > :has(select[multiple]) { grid-column: 1 / -1; }
html body .modal.mv-sg .modal-body label { display: block; margin: 0 0 6px !important; font-size: 12.5px !important; font-weight: 600 !important; color: var(--mv-text-2) !important; text-align: left !important; }
html body .modal.mv-sg .modal-body select.form-control:not([multiple]) { height: 44px !important; padding: 0 38px 0 12px !important; border-radius: 12px !important; -webkit-appearance: none; appearance: none; background: var(--mv-ivory-50) right 12px center / 16px no-repeat url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23A3343A%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22m6 9 6 6 6-6%22/%3E%3C/svg%3E") !important; font-size: 14px !important; color: var(--mv-text) !important; cursor: pointer; }
html body .modal.mv-sg .modal-body input.form-control { height: 44px !important; border-radius: 12px !important; }
html body .modal.mv-sg .modal-body textarea.form-control { border-radius: 12px !important; min-height: 120px; }
html body .modal.mv-sg .chosen-container { width: 100% !important; }
html body .modal.mv-sg .chosen-container-multi .chosen-choices { min-height: 44px !important; padding: 5px 8px !important; border-radius: 12px !important; border: 1px solid var(--mv-border-strong) !important; background: var(--mv-ivory-50) !important; box-shadow: none !important; display: flex; flex-wrap: wrap; gap: 4px; align-items: center; }
html body .modal.mv-sg .chosen-container-multi .chosen-choices li { float: none !important; }
html body .modal.mv-sg .chosen-container-multi .chosen-choices li.search-choice { margin: 0 !important; padding: 5px 24px 5px 10px !important; border-radius: 13px !important; border: 1px solid var(--mv-wine-100) !important; background: var(--mv-wine-50) !important; box-shadow: none !important; font-size: 12.5px !important; }
html body .modal.mv-sg .chosen-container .chosen-drop { border-radius: 12px !important; border: 1px solid var(--mv-border) !important; box-shadow: 0 12px 30px rgba(42,36,33,.14) !important; margin-top: 6px; }
html body .modal.mv-sg .chosen-container .chosen-results li.highlighted { background: var(--mv-wine-50) !important; background-image: none !important; color: var(--mv-wine-500) !important; }
html body .modal.mv-sg .modal-footer { display: flex !important; justify-content: flex-end !important; gap: 8px; padding: 14px 22px 18px !important; border-top: 1px solid var(--mv-border) !important; margin-top: 14px; background: var(--mv-ivory-50); border-radius: 0 0 20px 20px; }
html body .modal.mv-sg .modal-footer .btn.mv-sg-skip { background: transparent !important; border: 0 !important; color: var(--mv-text-2) !important; }
html body .modal.mv-sg .modal-footer .btn.mv-sg-skip:hover { color: var(--mv-text) !important; background: var(--mv-sand-100) !important; }
html body .modal.mv-sg .modal-footer .btn.mv-sg-save { min-width: 120px; }
@media (max-width: 575.98px) { html body .modal.mv-sg .modal-body > .row { grid-template-columns: minmax(0, 1fr); } }

html body .modal.mv-sg .modal-body select.form-control:not([multiple]):not(#mv-x) { background: var(--mv-ivory-50) right 12px center / 16px no-repeat url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23A3343A%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22m6 9 6 6 6-6%22/%3E%3C/svg%3E") !important; padding-right: 38px !important; -webkit-appearance: none !important; appearance: none !important; }
html body .modal.mv-sg .modal-body select.form-control:not([multiple]):not(#mv-x):focus { border-color: var(--mv-wine-400) !important; box-shadow: 0 0 0 3px rgba(163,52,58,.08) !important; }
html body .modal.mv-sg .modal-body > .row > .form-group { display: flex !important; flex-direction: column; text-align: left !important; }
html body .modal.mv-sg .modal-body > .row > .form-group > label { float: none !important; text-align: left !important; margin-top: 0 !important; padding: 0 !important; order: 0; }
html body .modal.mv-sg .chosen-container-multi .chosen-choices li.search-field, html body .modal.mv-sg .chosen-container-multi .chosen-choices li.search-field input[type="text"] { width: 100% !important; }
html body .modal.mv-sg .chosen-container-multi .chosen-choices li.search-field input[type="text"] { height: 32px !important; margin: 0 !important; padding: 0 4px !important; font: 14px var(--mv-font-body) !important; color: var(--mv-text-3) !important; }
html body .modal.mv-sg .chosen-container-multi .chosen-choices:has(.search-choice) li.search-field, html body .modal.mv-sg .chosen-container-multi .chosen-choices:has(.search-choice) li.search-field input[type="text"] { width: auto !important; min-width: 60px; }
html body .modal.mv-sg:not(#mv-x) .modal-body > .row > .form-group:last-child { margin: 0 !important; justify-content: flex-start !important; flex-wrap: nowrap !important; gap: 0 !important; }
html body .modal.mv-sg.mv-sg.mv-sg:not(#mv-x) .modal-body > .row > .form-group.form-group:last-child { margin: 0 !important; justify-content: flex-start !important; flex-wrap: nowrap !important; gap: 0 !important; }
/* profile pop-ups: custom dropdown */
html body .modal.mv-sg .mv-sg-sel { display: block; width: 100%; position: relative; }
html body .modal.mv-sg .mv-sg-sel .mv-sel-btn { width: 100%; height: 44px !important; padding: 0 40px 0 14px !important; border-radius: 12px !important; border: 1px solid var(--mv-border-strong) !important; background: var(--mv-ivory-50) !important; font-size: 14px !important; color: var(--mv-text) !important; text-align: left; }
html body .modal.mv-sg .mv-sg-sel.is-open .mv-sel-btn { background: var(--mv-surface) !important; border-color: var(--mv-wine-400) !important; box-shadow: 0 0 0 3px rgba(163,52,58,.08) !important; }
html body .modal.mv-sg .mv-sg-sel .mv-sel-pop { z-index: 60; border-radius: 12px !important; box-shadow: 0 14px 34px rgba(42,36,33,.16) !important; }
html body .modal.mv-sg .modal-body, html body .modal.mv-sg form { overflow: visible !important; }

/* photo pop-up: upload area */
html body .modal.mv-sg .mv-sgp { padding: 0 0 4px; }
.mv-sgp-drop { position: relative; display: grid; place-items: center; height: 220px; margin: 0 0 12px; border-radius: 16px; border: 1.5px dashed var(--mv-wine-200); background: var(--mv-ivory-50); cursor: pointer; overflow: hidden; transition: border-color .15s ease, background .15s ease; }
.mv-sgp-drop:hover { border-color: var(--mv-wine-400); background: var(--mv-wine-50); }
.mv-sgp-drop > img { display: none; }
.mv-sgp-drop.has-img { border-style: solid; border-color: var(--mv-border); background: var(--mv-sand-100); }
.mv-sgp-drop.has-img > img { display: block; position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; }
.mv-sgp-drop.has-img .mv-sgp-empty { display: none; }
.mv-sgp-drop.has-img .mv-phm-change { display: inline-flex; }
.mv-sgp-empty { display: flex; flex-direction: column; align-items: center; gap: 4px; text-align: center; padding: 16px; }
.mv-sgp-empty b { font-size: 15px; color: var(--mv-text); }
.mv-sgp-empty small { font-size: 12.5px; color: var(--mv-text-3); }
html body .modal.mv-sg .mv-sgp .mv-phm-tips { justify-content: center; }
html body .modal.mv-sg label.mv-sgp-drop { display: flex !important; align-items: center; justify-content: center; height: 200px; margin: 0 0 12px !important; }
/* manage photos: badges never overlap */
html body .mv-ph-card .mv-ph-tag { top: 8px !important; left: 8px !important; right: auto !important; height: 22px !important; padding: 0 8px !important; gap: 4px !important; font-size: 11px !important; font-weight: 700 !important; line-height: 1 !important; white-space: nowrap; max-width: calc(50% - 10px); overflow: hidden; text-overflow: ellipsis; box-shadow: 0 2px 6px rgba(0,0,0,.18) !important; }
html body .mv-ph-card .mv-ph-tag .mv-i { width: 12px !important; height: 12px !important; flex: none; }
html body .mv-ph-card .mv-ph-tag.is-review { top: 8px !important; left: auto !important; right: 8px !important; }
html body .mv-ph-card .mv-ph-tag:not(.is-main):not(.is-review) { width: 22px; padding: 0 !important; justify-content: center; border-radius: 50% !important; }
html body .mv-ph-card .mv-ph-tag { max-width: calc(100% - 16px) !important; }
html body .mv-ph-card .mv-ph-tag.is-review { top: auto !important; bottom: 8px !important; left: 8px !important; right: auto !important; }
html body .mv-ph-card:hover .mv-ph-tag.is-review, html body .mv-ph-card:focus-within .mv-ph-tag.is-review { opacity: 0; }
@media (hover: none) { html body .mv-ph-card .mv-ph-tag.is-review { bottom: 52px !important; } }
/* interest / photo-request tabs: count badge */
html body .mv-lst ul.mv-lst-tabs li a .mv-tab-n { display: inline-grid; place-items: center; min-width: 22px; height: 20px; margin-left: 4px; padding: 0 6px; border-radius: 10px; background: var(--mv-sand-100); color: var(--mv-text-2); font-size: 11.5px !important; font-weight: 700; }
html body .mv-lst ul.mv-lst-tabs li a.is-on .mv-tab-n { background: rgba(255,255,255,.22); color: #fff; }
@media (max-width: 767.98px) {
  html body .mv-lst ul.mv-lst-tabs { width: 100%; -webkit-mask-image: linear-gradient(90deg, #000 85%, transparent); mask-image: linear-gradient(90deg, #000 85%, transparent); padding-right: 28px !important; }
  html body .mv-lst .mv-lst-empty { margin-left: 0 !important; margin-right: 0 !important; }
  html body .mv-lst .col-12:has(> .mv-lst-empty), html body .mv-lst .clearfix:has(.mv-lst-empty) { padding-left: 0 !important; padding-right: 0 !important; }
}
/* phones: chat buttons as small round icons stacked above WhatsApp, not over the content */
@media (max-width: 767.98px) {
  html body .chat_buttons:not(#mv-x) { left: auto !important; right: 16px !important; bottom: 136px !important; width: auto !important; }
  html body .chat_buttons:not(#mv-x) .chat_buttons_box { flex-direction: column !important; align-items: flex-end; gap: 8px !important; }
  html body .chat_buttons .custom-control:not(#mv-x) .custom-control-label::after { width: 44px !important; height: 44px !important; padding: 0 !important; border-radius: 50% !important; font-size: 0 !important; background-position: center !important; background-size: 18px 18px !important; }
}
@media (max-width: 359.98px) { html body .mv-container, html body .container { padding-left: 12px !important; padding-right: 12px !important; } }

/* no-photo placeholder: initials (name itself is never shown) */
.mv-pc-ini { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; padding-bottom: 28%; }
.mv-pc-ini.is-female { background: linear-gradient(160deg, #F7E8EB, #EBCFD5); }
.mv-pc-ini.is-male { background: linear-gradient(160deg, #E9EEF5, #CCD8E6); }
.mv-pc-ini b { width: 84px; height: 84px; border-radius: 50%; display: grid; place-items: center; background: rgba(255,255,255,.75); box-shadow: 0 0 0 6px rgba(255,255,255,.35); font-family: var(--mv-font-head); font-size: 30px; font-weight: 600; letter-spacing: 1px; }
.mv-pc-ini.is-female b { color: #A3485C; } .mv-pc-ini.is-male b { color: #3F5A7A; }
.mv-pc-ini small { font-size: 11.5px; font-weight: 600; color: var(--mv-text-3); }
.mv-pc-photo:has(.mv-pc-ini)::after { inset: 60% 0 0 !important; }
/* profile detail page + small lists */
.mv-ini-box { display: grid; place-items: center; width: 100%; height: 100%; font-family: var(--mv-font-head); font-weight: 600; letter-spacing: 1px; }
.mv-ini-box.is-female { background: linear-gradient(160deg, #F7E8EB, #EBCFD5); color: #A3485C; }
.mv-ini-box.is-male { background: linear-gradient(160deg, #E9EEF5, #CCD8E6); color: #3F5A7A; }
.mv-pd-photo-a .mv-ini-box { position: absolute; inset: 0; font-size: 64px; }
.mv-pd-people .mv-ini-box, .mv-pd-pn .mv-ini-box { width: 38px; height: 38px; border-radius: 50%; font-size: 14px; flex: none; }
.mv-pd-pn .mv-ini-box { width: 26px; height: 26px; font-size: 10px; }
.mv-cp-face .mv-ini-box { width: 64px; height: 64px; border-radius: 50%; font-size: 22px; box-shadow: 0 0 0 3px var(--mv-surface), 0 0 0 5px var(--mv-wine-100); }
/* protected photo: faded initials behind the lock */
.mv-pc-ini.is-lock em { position: absolute; left: 50%; top: 40%; transform: translate(-50%, -50%); font-style: normal; font-family: var(--mv-font-head); font-size: 120px; font-weight: 700; letter-spacing: 4px; line-height: 1; opacity: .16; filter: blur(1.5px); pointer-events: none; }
.mv-pc-ini.is-lock.is-female em { color: #A3485C; } .mv-pc-ini.is-lock.is-male em { color: #3F5A7A; }
.mv-pc-ini.is-lock .mv-pc-lock { position: relative; z-index: 1; width: 56px; height: 56px; border-radius: 50%; display: grid; place-items: center; background: rgba(255,255,255,.85); box-shadow: 0 0 0 6px rgba(255,255,255,.35); color: var(--mv-wine-500); }
.mv-pc-ini.is-lock .mv-pc-lock .mv-i { width: 22px; height: 22px; }
.mv-pc-ini.is-lock small { position: relative; z-index: 1; }
html body .mv-pc-ini.is-lock { gap: 8px; }
html body .mv-pc-ini.is-lock em { position: static !important; transform: none !important; display: block; font-size: 92px !important; line-height: 1 !important; opacity: .2 !important; filter: blur(1px); }
html body .mv-pc-ini.is-lock .mv-pc-lock { position: relative !important; inset: auto !important; left: auto !important; top: auto !important; margin: -84px 0 18px !important; width: 56px !important; height: 56px !important; border-radius: 50% !important; display: grid !important; place-items: center; background: rgba(255,255,255,.88) !important; box-shadow: 0 0 0 6px rgba(255,255,255,.4) !important; color: var(--mv-wine-500) !important; }
html body .mv-pc-ini.is-lock .mv-pc-lock .mv-i { width: 22px !important; height: 22px !important; }
html body .mv-pc-ini.is-lock small { position: static !important; padding: 0 !important; background: none !important; font-size: 11.5px !important; }
/* protected photo: same initials circle + small lock badge on its edge */
html body .mv-pc-ini.is-locked b { position: relative; }
html body .mv-pc-ini .mv-pc-ini-lock { position: absolute; right: -2px; bottom: -2px; width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; background: var(--mv-primary); color: #fff; border: 3px solid #fff; box-shadow: 0 3px 8px rgba(0,0,0,.15); }
html body .mv-pc-ini .mv-pc-ini-lock .mv-i { width: 13px !important; height: 13px !important; }
html body .mv-lst .mv-lst-empty { flex: 0 0 100%; width: 100%; max-width: none; box-sizing: border-box; }
html body .mv-lst *:has(> .mv-lst-empty) { flex-wrap: wrap !important; }
html body .mv-lst .row > :has(> .mv-lst-empty) { flex: 0 0 100% !important; max-width: 100% !important; width: 100% !important; }
html body .mv-lst .row:has(> .mv-lst-empty, > :has(> .mv-lst-empty)) > h2, html body .mv-lst .row:has(> .mv-lst-empty, > :has(> .mv-lst-empty)) > p, html body .mv-lst .row > h2, html body .mv-lst .row > h2 + p { flex: 0 0 100% !important; max-width: 100% !important; padding-left: 15px; padding-right: 15px; }
html body .mv-lst .row:has(> h2) { flex-wrap: wrap !important; }
html body .mv-lst .row > h2, html body .mv-lst .row > h2 ~ p { flex: 0 0 100% !important; max-width: 100% !important; }
/* ===== logo v3: heart badge + wordmark ===== */
html body a.mv-logo3:not(#mv-x) { display: inline-flex !important; align-items: center; gap: 10px; text-decoration: none !important; line-height: 1; }
html body .mv-logo3 .mv-logo3-badge { flex: none; width: 38px; height: 38px; border-radius: 11px; display: grid; place-items: center; background: linear-gradient(135deg, #C2625F, #8E2A31); box-shadow: 0 6px 14px rgba(163,52,58,.28); transition: transform .25s ease; }
html body .mv-logo3 .mv-logo3-badge svg { width: 20px; height: 20px; fill: #fff; animation: mvLogoBeat 2.8s ease-in-out infinite; transform-origin: 50% 55%; }
@keyframes mvLogoBeat { 0%, 70%, 100% { transform: scale(1); } 76% { transform: scale(1.18); } 82% { transform: scale(1); } 88% { transform: scale(1.12); } }
html body .mv-logo3:hover .mv-logo3-badge { transform: rotate(-6deg); }
html body a.mv-logo3:not(#mv-x) .mv-logo3-t { font-family: var(--mv-font-body) !important; font-size: 28px !important; font-weight: 700 !important; letter-spacing: -.6px; color: var(--mv-text) !important; }
html body a.mv-logo3:not(#mv-x) .mv-logo3-t b { font-weight: 700 !important; color: var(--mv-wine-500) !important; }
html body a.mv-logo3.is-light:not(#mv-x) .mv-logo3-t { color: #fff !important; }
html body a.mv-logo3.is-light:not(#mv-x) .mv-logo3-t b { color: #F0A7A4 !important; }
html body .mv-logo3.is-light .mv-logo3-badge { box-shadow: none; }
@media (max-width: 575.98px) { html body .mv-logo3 .mv-logo3-badge { width: 32px; height: 32px; border-radius: 9px; } html body .mv-logo3 .mv-logo3-badge svg { width: 17px; height: 17px; } html body a.mv-logo3:not(#mv-x) .mv-logo3-t { font-size: 23px !important; } }
@media (prefers-reduced-motion: reduce) { html body .mv-logo3 .mv-logo3-badge svg { animation: none; } }
html body a.mv-logo.mv-logo3:not(#mv-x):not(#mv-y) { gap: 11px !important; }
html body a.mv-logo.mv-logo3:not(#mv-x):not(#mv-y) .mv-logo3-t, html body a.mv-logo.mv-logo3:not(#mv-x):not(#mv-y) span.mv-logo3-t { color: #2A2421 !important; -webkit-text-fill-color: #2A2421; background: none !important; font-size: 28px !important; font-weight: 700 !important; letter-spacing: -.6px !important; font-style: normal !important; }
html body a.mv-logo.mv-logo3:not(#mv-x):not(#mv-y) .mv-logo3-t b { color: #A3343A !important; -webkit-text-fill-color: #A3343A; font-style: normal !important; }
html body a.mv-logo.mv-logo3.is-light:not(#mv-x):not(#mv-y) .mv-logo3-t { color: #fff !important; -webkit-text-fill-color: #fff; }
html body a.mv-logo.mv-logo3.is-light:not(#mv-x):not(#mv-y) .mv-logo3-t b { color: #F0A7A4 !important; -webkit-text-fill-color: #F0A7A4; }
html body .mv-logo3 .mv-logo3-badge { box-shadow: 0 4px 10px rgba(163,52,58,.22) !important; }
html body a.mv-logo.mv-logo3::before, html body a.mv-logo.mv-logo3::after { display: none !important; }
/* ===== logo v4: wedding rings + serif name (traditional, not app-like) ===== */
html body a.mv-logo.mv-logo3:not(#mv-x):not(#mv-y) { gap: 9px !important; }
html body .mv-logo3 .mv-logo3-badge { display: none !important; }
html body .mv-logo3 .mv-logo3-rings { flex: none; display: block; width: 44px; height: 29px; }
html body .mv-logo3 .mv-logo3-rings svg { width: 100%; height: 100%; display: block; overflow: visible; }
html body .mv-logo3 .mv-logo3-rings .r1 { stroke: #A3343A; }
html body .mv-logo3 .mv-logo3-rings .r2 { stroke: #C99A3E; }
html body .mv-logo3.is-light .mv-logo3-rings .r1 { stroke: #F0A7A4; }
html body .mv-logo3.is-light .mv-logo3-rings .r2 { stroke: #E9C97E; }
html body a.mv-logo.mv-logo3:not(#mv-x):not(#mv-y) .mv-logo3-t, html body a.mv-logo.mv-logo3:not(#mv-x):not(#mv-y) span.mv-logo3-t { font-family: 'Cormorant Garamond', 'Playfair Display', Georgia, serif !important; font-size: 31px !important; font-weight: 600 !important; letter-spacing: .2px !important; }
html body a.mv-logo.mv-logo3:not(#mv-x):not(#mv-y) .mv-logo3-t b { font-style: italic !important; font-weight: 700 !important; }
@media (max-width: 575.98px) { html body .mv-logo3 .mv-logo3-rings { width: 36px; height: 24px; } html body a.mv-logo.mv-logo3:not(#mv-x):not(#mv-y) .mv-logo3-t { font-size: 26px !important; } }
html body a.mv-logo.mv-logo3:not(#mv-x):not(#mv-y) .mv-logo3-t b, html body a.mv-logo.mv-logo3:not(#mv-x):not(#mv-y) .mv-logo3-t { font-family: 'Cormorant Garamond', Georgia, serif !important; } html body a.mv-logo.mv-logo3:not(#mv-x):not(#mv-y) .mv-logo3-t b { font-size: 1em !important; letter-spacing: 0 !important; }
/* ===== official wordmark ===== */
html body a.mv-logo.mv-logo5:not(#mv-x):not(#mv-y) { display: inline-flex !important; align-items: center; gap: 0 !important; line-height: 0; }
html body a.mv-logo.mv-logo5 .mv-logo5-img { display: block; height: 34px; width: auto; max-width: none; }
html body a.mv-logo.mv-logo5.is-light .mv-logo5-img { filter: brightness(0) invert(1); }
@media (max-width: 575.98px) { html body a.mv-logo.mv-logo5 .mv-logo5-img { height: 27px; } }
/* guest browse pages: blurred real photo + lock */
.mv-pc-blurlock { position: absolute; left: 50%; top: 40%; transform: translate(-50%, -50%); z-index: 2; display: flex; flex-direction: column; align-items: center; gap: 8px; pointer-events: none; }
.mv-pc-blurlock .mv-i { width: 52px; height: 52px; padding: 15px; border-radius: 50%; background: rgba(255,255,255,.9); color: var(--mv-wine-500); box-shadow: 0 0 0 6px rgba(255,255,255,.35); }
.mv-pc-blurlock small { padding: 3px 10px; border-radius: 10px; background: rgba(255,255,255,.88); font-size: 11.5px; font-weight: 600; color: var(--mv-text); white-space: nowrap; }
.mv-pc-photo:has(.mv-pc-blurlock) img { user-select: none; -webkit-user-drag: none; }
/* photo "Requested" button on the profile photo: white text on wine */
html body .mv-pd-preq .btn[disabled]:not(#mv-x), html body .mv-pd-preq .btn[disabled]:not(#mv-x) font, html body .mv-pd-preq .btn[disabled]:not(#mv-x) .fa { background: var(--mv-wine-500) !important; color: #fff !important; opacity: 1 !important; }
html body .mv-pd-preq .btn[disabled]:not(#mv-x) font, html body .mv-pd-preq .btn[disabled]:not(#mv-x) .fa { background: transparent !important; }
/* guest blurred photos are small server copies: the browser enlarges them, a light CSS blur keeps them smooth */
html body .mv-pc-photo.is-blur:not(#mv-x) { overflow: hidden; }
html body .mv-pc-photo.is-blur:not(#mv-x) img, html body .mv-res-ph.is-real:not(#mv-x) img { filter: blur(6px) !important; transform: scale(1.12) !important; }

/* ===================== Kundli matching page (/kundli-matching) ===================== */
.mv-kd { background: var(--mv-ivory-50, #FAF6F2); padding-bottom: 56px; }
.mv-kd-hero { background: linear-gradient(120deg, var(--mv-sand-100) 0%, var(--mv-wine-50) 100%); border-bottom: 1px solid var(--mv-border); }
.mv-kd-hero-in { padding-top: 28px !important; padding-bottom: 30px !important; }
.mv-kd-hero h1 { font-size: clamp(26px, 4vw, 36px); margin: 10px 0 8px !important; color: var(--mv-text); }
.mv-kd-hero p { max-width: 62ch; margin: 0 0 16px !important; color: var(--mv-text-2); font-size: 15.5px; line-height: 1.6; }
.mv-kd-ticks { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px 10px; }
.mv-kd-ticks li { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: 999px; background: var(--mv-surface); border: 1px solid var(--mv-border); font-size: 13px; font-weight: 500; color: var(--mv-text); }
.mv-kd-ticks .mv-i { color: var(--mv-wine-500); }
.mv-kd-body { padding-top: 26px !important; }
.mv-kd-form { background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: 18px; padding: 20px; box-shadow: var(--mv-shadow-sm); }
.mv-kd-err { display: flex; gap: 10px; padding: 12px 14px; margin-bottom: 16px; border-radius: 12px; background: #FDF0EF; color: #9A2A2A; border: 1px solid #F1C9C6; font-size: 14px; }
.mv-kd-err p { margin: 0 !important; }
.mv-kd-err .mv-i { flex: none; margin-top: 2px; }
.mv-kd-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.mv-kd-card { margin: 0; min-width: 0; border: 1px solid var(--mv-border); border-radius: 14px; padding: 16px 16px 6px; background: linear-gradient(180deg, var(--mv-kd-tint) 0, var(--mv-surface) 70px); }
.mv-kd-card.is-male, .mv-kd-person.is-male { --mv-kd-tint: #EEF3FA; --mv-kd-acc: #3E5F8A; }
.mv-kd-card.is-female, .mv-kd-person.is-female { --mv-kd-tint: #FBEFF1; --mv-kd-acc: #A3343A; }
.mv-kd-card legend { float: left; width: 100%; display: flex; align-items: center; gap: 10px; margin: 0 0 14px; padding: 0; border: 0; font-size: 16px; font-weight: 700; color: var(--mv-text); }
.mv-kd-card legend + * { clear: both; }
.mv-kd-dot { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 50%; background: var(--mv-surface); color: var(--mv-kd-acc); box-shadow: 0 0 0 1px var(--mv-border); }
.mv-kd-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.mv-kd-f { display: block; margin: 0 0 12px; min-width: 0; }
.mv-kd-f > span { display: block; margin-bottom: 6px; font-size: 13px; font-weight: 600; color: var(--mv-text); }
.mv-kd-f em { font-style: normal; font-weight: 400; color: var(--mv-text-2); }
html body .mv-kd-f input:not(#mv-x), html body .mv-kd-f select:not(#mv-x) { width: 100%; height: 44px; padding: 0 12px; border: 1px solid var(--mv-border); border-radius: 10px; background: var(--mv-surface); color: var(--mv-text); font: inherit; font-size: 14.5px; box-shadow: none; outline: 0; transition: border-color .15s, box-shadow .15s; }
html body .mv-kd-f input:not(#mv-x):focus, html body .mv-kd-f select:not(#mv-x):focus { border-color: var(--mv-wine-500); box-shadow: 0 0 0 3px rgba(163, 52, 58, .14); }
html body .mv-kd-f input:not(#mv-x):disabled { background: var(--mv-ivory-50, #FAF6F2); color: var(--mv-text-2); }
.mv-kd-check { display: flex; align-items: center; gap: 8px; margin: -4px 0 14px; font-size: 13.5px; color: var(--mv-text-2); cursor: pointer; font-weight: 400; }
.mv-kd-check input { width: 16px; height: 16px; margin: 0; accent-color: var(--mv-wine-500); }
.mv-kd-submit { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 16px; margin-top: 16px; }
.mv-kd-submit .mv-btn { min-height: 48px; padding: 0 26px; gap: 8px; font-size: 15.5px; }
.mv-kd-submit small { color: var(--mv-text-2); font-size: 12.5px; }

.mv-kd-result { margin-top: 26px; scroll-margin-top: 90px; }
.mv-kd-score { display: flex; align-items: center; gap: 26px; padding: 22px 24px; border-radius: 18px; background: var(--mv-surface); border: 1px solid var(--mv-border); box-shadow: var(--mv-shadow-sm); --mv-kd-c: var(--mv-wine-500); }
.mv-kd-score.is-great, .mv-kd-score.is-good { --mv-kd-c: #2F7A4F; }
.mv-kd-score.is-ok { --mv-kd-c: #B5651D; }
.mv-kd-score.is-low { --mv-kd-c: #A3343A; }
.mv-kd-ring { position: relative; width: 132px; height: 132px; flex: none; --mv-kd-c2: var(--mv-kd-c, #2F7A4F); }
.mv-kd-ring svg { width: 100%; height: 100%; transform: rotate(-90deg); }
.mv-kd-ring circle { fill: none; stroke-width: 10; }
.mv-kd-ring .bg { stroke: var(--mv-sand-100, #F3ECE6); }
.mv-kd-ring .fg { stroke: var(--mv-kd-c2); stroke-linecap: round; }
.mv-kd-ring b { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; font-size: 34px; font-weight: 800; color: var(--mv-text); line-height: 1; }
.mv-kd-ring b small { font-size: 15px; font-weight: 600; color: var(--mv-text-2); margin: 10px 0 0 2px; }
.mv-kd-names { display: inline-flex; align-items: center; gap: 6px; font-size: 13.5px; font-weight: 600; color: var(--mv-text-2); }
.mv-kd-names .mv-i { color: var(--mv-wine-500); }
.mv-kd-score h2 { margin: 4px 0 6px !important; font-size: clamp(22px, 3vw, 28px); color: var(--mv-kd-c); }
.mv-kd-score p { margin: 0 0 12px !important; color: var(--mv-text-2); line-height: 1.55; max-width: 60ch; }
.mv-kd-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.mv-kd-chips .is-okc, .mv-kd-doshas .is-okc { --c: #2F7A4F; --bg: #E9F4EE; }
.mv-kd-chips .is-bad, .mv-kd-doshas .is-bad { --c: #A8561C; --bg: #FBF0E4; }
.mv-kd-chips span { display: inline-flex; align-items: center; gap: 6px; padding: 5px 11px; border-radius: 999px; font-size: 12.5px; font-weight: 600; color: var(--c); background: var(--bg); }

.mv-kd-grid { display: grid; grid-template-columns: 1.15fr 1fr; gap: 18px; margin-top: 18px; }
.mv-kd-panel { background: var(--mv-surface); border: 1px solid var(--mv-border); border-radius: 16px; padding: 18px; min-width: 0; }
.mv-kd-panel h3 { display: flex; align-items: center; gap: 8px; margin: 0 0 14px !important; font-size: 16.5px; color: var(--mv-text); }
.mv-kd-panel h3 > .mv-i { color: var(--mv-wine-500); }
.mv-kd-kootas { display: grid; gap: 12px; }
.mv-kd-koota-h { display: flex; align-items: baseline; gap: 8px; margin-bottom: 6px; font-size: 14px; }
.mv-kd-koota-h b { color: var(--mv-text); }
.mv-kd-koota-h span { color: var(--mv-text-2); font-size: 12.5px; flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mv-kd-koota-h em { font-style: normal; font-weight: 700; color: var(--mv-text); white-space: nowrap; }
.mv-kd-bar { height: 8px; border-radius: 8px; background: var(--mv-sand-100, #F3ECE6); overflow: hidden; }
.mv-kd-bar i { display: block; height: 100%; border-radius: 8px; background: var(--kc); min-width: 4px; }
.mv-kd-koota.is-good { --kc: #2F7A4F; }
.mv-kd-koota.is-ok { --kc: #C98A2B; }
.mv-kd-koota.is-low { --kc: #C0504D; }
.mv-kd-doshas { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.mv-kd-doshas li { padding: 12px 14px; border-radius: 12px; background: var(--bg); border-left: 3px solid var(--c); }
.mv-kd-doshas b { display: block; margin-bottom: 3px; color: var(--c); font-size: 14px; }
.mv-kd-doshas p { margin: 0 !important; font-size: 13.5px; line-height: 1.55; color: var(--mv-text); }

.mv-kd-people { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-top: 18px; }
.mv-kd-ini { width: 34px; height: 34px; display: inline-grid; place-items: center; border-radius: 50%; background: var(--mv-kd-tint); color: var(--mv-kd-acc); font-size: 13px; font-weight: 700; }
.mv-kd-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 0 0 14px; }
.mv-kd-facts div { padding: 9px 12px; border-radius: 10px; background: var(--mv-ivory-50, #FAF6F2); border: 1px solid var(--mv-border); min-width: 0; }
.mv-kd-facts dt { font-size: 11.5px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--mv-text-2); }
.mv-kd-facts dd { margin: 2px 0 0; font-size: 14px; font-weight: 600; color: var(--mv-text); }
.mv-kd-note { display: flex; gap: 8px; margin: 0 0 12px !important; padding: 9px 12px; border-radius: 10px; background: #FBF0E4; color: #8A4A14; font-size: 12.5px; line-height: 1.5; }
.mv-kd-note .mv-i { flex: none; margin-top: 1px; }
.mv-kd-charts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.mv-kd-charts .mv-hr-chart { grid-template-rows: repeat(4, minmax(48px, auto)); }
.mv-kd-charts .mv-hr-cell { font-size: 11.5px; }
.mv-kd-disclaim { margin: 16px 0 0 !important; font-size: 12.5px; line-height: 1.6; color: var(--mv-text-2); }
.mv-kd-cta { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 18px; padding: 20px 22px; border-radius: 16px; background: linear-gradient(120deg, var(--mv-wine-500), #7A1E2C); color: #fff; }
.mv-kd-cta h3 { margin: 0 0 4px !important; color: #fff; font-size: 18px; }
.mv-kd-cta p { margin: 0 !important; color: rgba(255, 255, 255, .85); font-size: 14px; }
html body .mv-kd-cta .mv-btn:not(#mv-x) { background: #fff !important; color: var(--mv-wine-500) !important; flex: none; gap: 8px; }

.mv-kd-info { margin-top: 30px; padding: 22px; border-radius: 16px; background: var(--mv-surface); border: 1px solid var(--mv-border); }
.mv-kd-info h2 { margin: 0 0 8px !important; font-size: 22px; color: var(--mv-text); }
.mv-kd-info h3 { margin: 18px 0 6px !important; font-size: 16.5px; color: var(--mv-text); }
.mv-kd-info p { margin: 0 !important; color: var(--mv-text-2); line-height: 1.65; font-size: 14.5px; }
.mv-kd-info-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin-top: 14px; }
.mv-kd-info-grid div { display: grid; gap: 2px; padding: 11px 13px; border-radius: 12px; background: var(--mv-ivory-50, #FAF6F2); border: 1px solid var(--mv-border); }
.mv-kd-info-grid b { color: var(--mv-text); font-size: 14px; }
.mv-kd-info-grid span { color: var(--mv-text-2); font-size: 12.5px; }
.mv-kd-info-grid em { font-style: normal; color: var(--mv-wine-500); font-weight: 700; font-size: 12.5px; }

@media (max-width: 991px) { .mv-kd-grid, .mv-kd-people { grid-template-columns: 1fr; } .mv-kd-info-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 767px) {
  .mv-kd-pair { grid-template-columns: 1fr; }
  .mv-kd-form { padding: 14px; }
  .mv-kd-score { flex-direction: column; text-align: center; padding: 20px 16px; gap: 14px; }
  .mv-kd-chips { justify-content: center; }
  .mv-kd-score p { margin-left: auto !important; margin-right: auto !important; }
  .mv-kd-cta { flex-direction: column; align-items: flex-start; }
  .mv-kd-submit .mv-btn { width: 100%; justify-content: center; }
}
@media (max-width: 420px) { .mv-kd-row, .mv-kd-facts, .mv-kd-charts { grid-template-columns: 1fr; } }

/* home page: kundli matching banner */
.mv-kd-home { display: grid; grid-template-columns: 1.2fr 1fr; align-items: center; gap: 28px; padding: 28px; border-radius: 20px; background: linear-gradient(120deg, var(--mv-sand-100) 0%, var(--mv-wine-50) 100%); border: 1px solid var(--mv-border); }
.mv-kd-home h2 { margin: 8px 0 10px !important; font-size: clamp(24px, 3.4vw, 32px); }
.mv-kd-home p { margin: 0 0 18px !important; color: var(--mv-text-2); line-height: 1.6; max-width: 52ch; }
.mv-kd-home .mv-btn { min-height: 46px; gap: 8px; }
.mv-kd-home-demo { display: flex; align-items: center; gap: 18px; padding: 18px; border-radius: 16px; background: var(--mv-surface); box-shadow: var(--mv-shadow-sm); }
.mv-kd-home-demo .mv-kd-ring { width: 104px; height: 104px; --mv-kd-c2: #2F7A4F; }
.mv-kd-home-demo .mv-kd-ring b { font-size: 28px; }
.mv-kd-home-demo ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 7px; font-size: 13.5px; color: var(--mv-text); }
.mv-kd-home-demo li { display: flex; align-items: center; gap: 7px; }
.mv-kd-home-demo li .mv-i { color: #2F7A4F; }
@media (max-width: 860px) { .mv-kd-home { grid-template-columns: 1fr; padding: 20px; } }
@media (max-width: 420px) { .mv-kd-home-demo { flex-direction: column; align-items: flex-start; } }
html body .mv-kd-check input[type=checkbox]:not(#mv-x) { position: static !important; opacity: 1 !important; visibility: visible !important; display: inline-block !important; -webkit-appearance: auto !important; appearance: auto !important; width: 17px !important; height: 17px !important; margin: 0 !important; flex: none; }

/* ===================== chat: safety warnings and conversation starters ===================== */
html body .mv-safe-warn:not(#mv-x) { display: grid; gap: 2px; margin: 2px 12px 8px 46px; padding: 8px 11px; border-radius: 10px; background: #FBF0E4; border: 1px solid #F0D3B4; color: #7A3F10; font-size: 12px; line-height: 1.45; }
html body .mv-safe-warn:not(#mv-x) b { font-size: 12px; color: #A8561C; }
html body .mv-safe-tip:not(#mv-x) { margin: 6px 8px 0; padding: 6px 10px; border-radius: 8px; background: #FBF0E4; color: #7A3F10; font-size: 11.5px; line-height: 1.4; }
html body .mv-safe-tip[hidden]:not(#mv-x) { display: none; }
html body .mv-starters:not(#mv-x) { display: flex; flex-direction: column; gap: 6px; padding: 8px 10px; border-top: 1px solid var(--mv-border); background: var(--mv-surface); }
html body .mv-starters:not(#mv-x) small { font-size: 11px; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; color: var(--mv-text-2); }
html body .mv-starters:not(#mv-x) button { text-align: left; padding: 7px 10px; border: 1px solid var(--mv-wine-100, #F1D6D8); border-radius: 10px; background: var(--mv-wine-50, #FBEFF0); color: var(--mv-text); font-size: 12.5px; line-height: 1.4; cursor: pointer; }
html body .mv-starters:not(#mv-x) button:hover { border-color: var(--mv-wine-500); }

/* ===================== Kundli page v2: pickers, reading, PDF ===================== */
.mv-kd-card { position: relative; }
.mv-kd-f[hidden] { display: none !important; }
.mv-kd-pick { position: relative; display: flex; align-items: stretch; }
html body .mv-kd-pick input:not(#mv-x) { padding-right: 46px; cursor: text; }
html body .mv-kd-pick input:not(#mv-x):disabled { cursor: not-allowed; }
.mv-kd-pick-btn { position: absolute; right: 5px; top: 5px; bottom: 5px; width: 36px; display: grid; place-items: center; border: 0; border-radius: 8px; background: var(--mv-wine-50, #FBEFF0); color: var(--mv-wine-500); cursor: pointer; padding: 0; transition: background .15s; }
.mv-kd-pick-btn:hover { background: var(--mv-wine-100, #F4D9DC); }
.mv-kd-pick-btn.is-static { pointer-events: none; background: transparent; color: var(--mv-text-2); }
.mv-kd-f.is-bad .mv-kd-pick input, html body .mv-kd-f.is-bad .mv-kd-pick input:not(#mv-x) { border-color: #C0504D; box-shadow: 0 0 0 3px rgba(192, 80, 77, .12); }
.mv-kd-f.is-off .mv-kd-pick-btn { opacity: .4; pointer-events: none; }
.mv-kd-hint { display: block; min-height: 0; margin-top: 5px; font-size: 12px; color: #8A4A14; line-height: 1.4; }
.mv-kd-hint:empty { display: none; }
.mv-kd-hint.is-ok { color: #2F7A4F; }

/* popups */
.mv-kd-pop { position: absolute; z-index: 60; top: calc(100% + 6px); left: 0; min-width: 100%; background: var(--mv-surface, #fff); border: 1px solid var(--mv-border); border-radius: 14px; box-shadow: 0 18px 40px rgba(42, 36, 33, .16), 0 2px 6px rgba(42, 36, 33, .06); animation: mvKdIn .14s ease-out; }
@keyframes mvKdIn { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }
.mv-kd-back { position: fixed; inset: 0; z-index: 59; display: none; }
.mv-kd-back.is-on { display: block; background: rgba(42, 36, 33, .35); }

/* calendar */
.mv-kd-cal { width: 300px; padding: 12px; }
.mv-kd-cal-h { display: flex; align-items: center; gap: 4px; margin-bottom: 8px; }
.mv-kd-cal-t { flex: 1; height: 34px; border: 0; border-radius: 8px; background: transparent; font: inherit; font-weight: 700; font-size: 14.5px; color: var(--mv-text); cursor: pointer; }
.mv-kd-cal-t:hover { background: var(--mv-wine-50, #FBEFF0); color: var(--mv-wine-500); }
.mv-kd-cal-t.is-label { display: grid; place-items: center; cursor: default; background: none !important; color: var(--mv-text) !important; }
.mv-kd-nav { width: 34px; height: 34px; flex: none; border: 1px solid var(--mv-border); border-radius: 50%; background: var(--mv-surface, #fff); color: var(--mv-text); font-size: 20px; line-height: 1; cursor: pointer; }
.mv-kd-nav:hover { border-color: var(--mv-wine-500); color: var(--mv-wine-500); }
.mv-kd-cal-b { display: grid; gap: 3px; }
.mv-kd-cal-b.is-days { grid-template-columns: repeat(7, 1fr); }
.mv-kd-cal-b.is-months { grid-template-columns: repeat(3, 1fr); gap: 6px; }
.mv-kd-cal-b.is-years { grid-template-columns: repeat(4, 1fr); gap: 6px; }
.mv-kd-dow { display: grid; place-items: center; height: 26px; font-size: 11px; font-weight: 700; color: var(--mv-text-2); text-transform: uppercase; }
.mv-kd-cal-b button { height: 36px; border: 0; border-radius: 9px; background: transparent; font: inherit; font-size: 13.5px; color: var(--mv-text); cursor: pointer; transition: background .12s; }
.mv-kd-cal-b.is-months button, .mv-kd-cal-b.is-years button { height: 42px; background: var(--mv-ivory-50, #FAF6F2); font-weight: 600; }
.mv-kd-cal-b button:hover:not(:disabled) { background: var(--mv-wine-50, #FBEFF0); color: var(--mv-wine-500); }
.mv-kd-cal-b button.is-on { background: var(--mv-wine-500) !important; color: #fff !important; font-weight: 700; }
.mv-kd-cal-b button:disabled { opacity: .3; cursor: default; }

/* time */
.mv-kd-time { width: 280px; padding: 12px; }
.mv-kd-time-cols { display: grid; grid-template-columns: 1fr 1fr .9fr; gap: 8px; }
.mv-kd-col small { display: block; margin-bottom: 6px; font-size: 11px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--mv-text-2); text-align: center; }
.mv-kd-scroll { height: 196px; overflow-y: auto; display: grid; gap: 3px; align-content: start; padding: 2px; border-radius: 10px; background: var(--mv-ivory-50, #FAF6F2); scrollbar-width: thin; }
.mv-kd-scroll button, .mv-kd-ampm button { height: 34px; border: 0; border-radius: 8px; background: transparent; font: inherit; font-size: 14px; font-weight: 600; color: var(--mv-text); cursor: pointer; }
.mv-kd-scroll button:hover, .mv-kd-ampm button:hover { background: var(--mv-wine-50, #FBEFF0); color: var(--mv-wine-500); }
.mv-kd-scroll button.is-on, .mv-kd-ampm button.is-on { background: var(--mv-wine-500); color: #fff; }
.mv-kd-ampm { display: grid; gap: 6px; padding: 2px; border-radius: 10px; background: var(--mv-ivory-50, #FAF6F2); }
.mv-kd-ampm button { height: 44px; }
.mv-kd-time-f { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--mv-border); }
.mv-kd-time-f span { font-size: 18px; font-weight: 800; color: var(--mv-text); letter-spacing: .02em; }
.mv-kd-time-f .mv-btn { min-height: 38px; padding: 0 18px; }

/* custom select + place list */
.mv-kd-select { position: relative; }
.mv-kd-select-btn { width: 100%; height: 44px; display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 0 12px; border: 1px solid var(--mv-border); border-radius: 10px; background: var(--mv-surface, #fff); color: var(--mv-text); font: inherit; font-size: 14.5px; text-align: left; cursor: pointer; transition: border-color .15s, box-shadow .15s; }
.mv-kd-select-btn span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mv-kd-select-btn .mv-i { color: var(--mv-text-2); flex: none; transition: transform .15s; }
.mv-kd-select-btn[aria-expanded="true"] { border-color: var(--mv-wine-500); box-shadow: 0 0 0 3px rgba(163, 52, 58, .14); }
.mv-kd-select-btn[aria-expanded="true"] .mv-i { transform: rotate(180deg); }
.mv-kd-menu { list-style: none; margin: 0; padding: 6px; max-height: 280px; overflow-y: auto; }
.mv-kd-select > .mv-kd-menu[hidden] { display: none; }
.mv-kd-menu li { display: flex; align-items: baseline; gap: 6px; padding: 9px 11px; border-radius: 9px; font-size: 14px; color: var(--mv-text); cursor: pointer; outline: 0; }
.mv-kd-menu li span { color: var(--mv-text-2); font-size: 12.5px; }
.mv-kd-menu li:hover, .mv-kd-menu li:focus, .mv-kd-menu li.is-act { background: var(--mv-wine-50, #FBEFF0); }
.mv-kd-menu li[aria-selected="true"] { background: var(--mv-wine-50, #FBEFF0); color: var(--mv-wine-500); font-weight: 700; }
.mv-kd-menu li.is-empty { cursor: default; color: var(--mv-text-2); font-size: 13px; background: none; }

@media (max-width: 600px) {
  .mv-kd-pop.is-sheet { position: fixed; top: auto; left: 0; right: 0; bottom: 0; width: auto; min-width: 0; max-height: 82vh; overflow-y: auto; border-radius: 18px 18px 0 0; padding-bottom: calc(14px + env(safe-area-inset-bottom)); animation: mvKdUp .18s ease-out; }
  @keyframes mvKdUp { from { transform: translateY(30px); opacity: 0; } to { transform: none; opacity: 1; } }
  .mv-kd-cal.is-sheet, .mv-kd-time.is-sheet { width: auto; padding: 16px; }
  .mv-kd-cal.is-sheet .mv-kd-cal-b button { height: 42px; }
  .mv-kd-time.is-sheet .mv-kd-scroll { height: 230px; }
  .mv-kd-menu.is-sheet { max-height: 60vh; }
}

/* reading */
.mv-kd-score { position: relative; }
.mv-kd-score-txt { flex: 1; min-width: 0; }
.mv-kd-actions { align-self: flex-start; }
.mv-kd-actions .mv-btn { gap: 8px; min-height: 42px; white-space: nowrap; }
.mv-kd-chips .mv-i { flex: none; }
.mv-kd-sum { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-top: 18px; }
.mv-kd-sum-col { padding: 16px 18px; border-radius: 16px; border: 1px solid var(--mv-border); background: var(--mv-surface); }
.mv-kd-sum-col h3 { display: flex; align-items: center; gap: 8px; margin: 0 0 10px !important; font-size: 16px; }
.mv-kd-sum-col.is-good h3 { color: #2F7A4F; }
.mv-kd-sum-col.is-watch h3 { color: #A8561C; }
.mv-kd-sum-col ul { margin: 0; padding: 0 0 0 18px; display: grid; gap: 7px; }
.mv-kd-sum-col li, .mv-kd-sum-col p { font-size: 13.5px; line-height: 1.55; color: var(--mv-text); margin: 0 !important; }
.mv-kd-sum-col.is-good { background: linear-gradient(180deg, #F1F8F3, var(--mv-surface) 60%); }
.mv-kd-sum-col.is-watch { background: linear-gradient(180deg, #FCF4EA, var(--mv-surface) 60%); }
.mv-kd-result > .mv-kd-panel { margin-top: 18px; }
.mv-kd-koota p { margin: 6px 0 0 !important; font-size: 13px; line-height: 1.5; color: var(--mv-text-2); }
.mv-kd-kootas { gap: 16px; }
.mv-kd-koota { padding-bottom: 14px; border-bottom: 1px solid var(--mv-border); }
.mv-kd-koota:last-child { border-bottom: 0; padding-bottom: 0; }
.mv-kd-koota.is-good { --kc: #2F7A4F; }
.mv-kd-koota.is-ok { --kc: #C98A2B; }
.mv-kd-koota.is-low { --kc: #C0504D; }
.mv-kd-doshas li.is-none, .mv-kd-doshas li.is-cancelled { --c: #2F7A4F; --bg: #E9F4EE; }
.mv-kd-doshas li.is-active { --c: #A8561C; --bg: #FBF0E4; }
.mv-kd-doshas li > div { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 4px; }
.mv-kd-doshas li > div b { margin: 0; }
.mv-kd-st { display: inline-flex; align-items: center; gap: 5px; padding: 3px 9px; border-radius: 999px; background: var(--mv-surface, #fff); color: var(--c); font-size: 12px; font-weight: 700; white-space: nowrap; }
.mv-kd-trait { margin: -4px 0 12px !important; font-size: 14px; line-height: 1.55; color: var(--mv-text-2); }
.mv-kd-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.mv-kd-facts .is-wide { grid-column: 1 / -1; }
.mv-kd-facts .is-wide dd { font-weight: 500; font-size: 13.5px; line-height: 1.5; }
.mv-kd-note.is-info { background: #EEF3FA; color: #2E4A6E; }
.mv-kd-charts .mv-hr-cell { font-size: 11px; line-height: 1.3; }

/* while the PDF is being made: fixed desktop width, no shadows or animations */
.mv-kd-result.is-pdf [data-pdf-block] { width: 860px !important; max-width: none !important; box-shadow: none !important; }
.mv-kd-result.is-pdf .mv-kd-people { display: block; }
.mv-kd-result.is-pdf .mv-kd-people > * { margin-top: 18px; }
.mv-kd-result.is-pdf .mv-kd-sum { grid-template-columns: 1fr 1fr; }

@media (max-width: 767px) {
  .mv-kd-sum { grid-template-columns: 1fr; }
  .mv-kd-actions { align-self: center; }
}
@media print {
  .mv-header, .mv-footer, footer, .mv-kd-form, .mv-kd-hero, .mv-kd-info, .mv-kd-cta, .mv-kd-actions, .whatsapp, [class*="whatsapp"] { display: none !important; }
  .mv-kd-result { margin: 0; }
}
.mv-kd-amp { display: none; }
.mv-kd-result.is-pdf .mv-i { display: none !important; }
.mv-kd-result.is-pdf .mv-kd-amp { display: inline; }
@media (max-width: 600px) { .mv-kd-pop.is-sheet { z-index: 100001; } .mv-kd-back.is-on { z-index: 100000; } }
/* plan pop-up "Continue": keep white text in every state (an old global a:hover/a:focus colour turned it wine on wine) */
html body .mv-phm-submit:not(#mv-x), html body .mv-phm-submit:not(#mv-x):hover, html body .mv-phm-submit:not(#mv-x):focus, html body .mv-phm-submit:not(#mv-x):active, html body .mv-phm-submit:not(#mv-x):visited { color: #fff !important; text-decoration: none !important; }
html body .mv-phm-submit:not(#mv-x):hover, html body .mv-phm-submit:not(#mv-x):active { background: #8e2a31 !important; }
html body .mv-phm-submit:not(#mv-x):focus-visible { outline: 2px solid var(--mv-wine-300, #E3A9AF); outline-offset: 2px; }
html body .mv-phm-submit:not(#mv-x) .mv-i { color: #fff !important; }
/* notification list: initials instead of placeholder pictures */
html body .noti-list-icon .mv-noti-ini:not(#mv-x) { position: relative; width: 100%; height: 100%; display: grid; place-items: center; border-radius: 50%; font: 700 15px/1 var(--mv-font-body); letter-spacing: .02em; }
html body .noti-list-icon .mv-noti-ini.is-female:not(#mv-x) { background: #FBEFF1; color: #A3343A; }
html body .noti-list-icon .mv-noti-ini.is-male:not(#mv-x) { background: #EAF0F8; color: #3E5F8A; }
html body .noti-list-icon .mv-noti-lock:not(#mv-x) { position: absolute; right: 2px; bottom: 2px; width: 16px; height: 16px; display: grid; place-items: center; border-radius: 50%; background: #fff; color: var(--mv-wine-500); box-shadow: 0 1px 3px rgba(0,0,0,.15); }
html body .noti-list-icon .mv-noti-lock .mv-i:not(#mv-x) { width: 10px; height: 10px; }
html body .noti-list-icon:has(.mv-noti-ini):not(#mv-x) { background-image: none !important; }
html body .noti-list-icon:has(.mv-noti-ini):not(#mv-x) { overflow: visible !important; }
html body .noti-list-icon .mv-noti-lock:not(#mv-x) { right: -3px; bottom: -3px; }
/* photos page: delete pop-up and message banner */
.mv-modal-ic.is-danger { color: #B42318; background: #FEF1F0; }
.mv-del-preview { display: block; width: 120px; height: 150px; margin: 0 auto 18px; object-fit: cover; border-radius: 14px; box-shadow: 0 6px 18px rgba(42, 36, 33, .14); }
.mv-del-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.mv-del-actions .mv-btn { justify-content: center; min-height: 46px; gap: 8px; }
html body .mv-btn-danger:not(#mv-x) { background: #B42318; border: 0; color: #fff !important; text-decoration: none !important; }
html body .mv-btn-danger:not(#mv-x):hover, html body .mv-btn-danger:not(#mv-x):focus { background: #912018; color: #fff !important; }
.mv-btn-danger.is-busy { pointer-events: none; opacity: .85; }
.mv-flash { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 14px; border: 1px solid; font-size: 14px; line-height: 1.5; animation: mvFlashIn .25s ease-out; }
@keyframes mvFlashIn { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }
.mv-flash.is-ok { background: #ECF7F0; border-color: #C6E7D2; color: #1E5B38; }
.mv-flash.is-bad { background: #FEF1F0; border-color: #F6CFCB; color: #8E1F16; }
.mv-flash p { flex: 1; margin: 0 !important; }
.mv-flash-ic { width: 30px; height: 30px; flex: none; display: grid; place-items: center; border-radius: 50%; color: #fff; }
.mv-flash.is-ok .mv-flash-ic { background: #2F7A4F; }
.mv-flash.is-bad .mv-flash-ic { background: #B42318; }
.mv-flash-x { width: 30px; height: 30px; flex: none; display: grid; place-items: center; border: 0; border-radius: 50%; background: transparent; color: inherit; opacity: .7; cursor: pointer; }
.mv-flash-x:hover { opacity: 1; background: rgba(0, 0, 0, .05); }
html body .mv-ph-main > .mv-flash { grid-column: 1 / -1; }
/* ===== photo delete pop-up v2 ===== */
.mv-del2 .modal-dialog { max-width: 400px; margin-left: auto; margin-right: auto; padding: 0 16px; }
.mv-del2 .modal-content { position: relative; overflow: hidden; border: 0; border-radius: 26px; background: var(--mv-surface, #fff); box-shadow: 0 30px 70px rgba(42, 20, 22, .28), 0 4px 14px rgba(42, 20, 22, .1); }
.mv-del2.fade .modal-dialog { transform: translateY(14px) scale(.97); transition: transform .22s cubic-bezier(.2, .8, .3, 1); }
.mv-del2.show .modal-dialog { transform: none; }
.mv-del2-x { position: absolute; top: 14px; right: 14px; z-index: 3; width: 36px; height: 36px; display: grid; place-items: center; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .85); color: var(--mv-text); cursor: pointer; box-shadow: 0 2px 8px rgba(0, 0, 0, .08); backdrop-filter: blur(6px); transition: background .15s, transform .15s; }
.mv-del2-x:hover { background: #fff; transform: rotate(90deg); }
.mv-del2-stage { position: relative; display: grid; place-items: center; padding: 34px 20px 30px; background: radial-gradient(120% 90% at 50% 0%, #FBE3E5 0%, #F8EEEA 55%, #FBF7F4 100%); }
.mv-del2-stage::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 26px; background: var(--mv-surface, #fff); border-radius: 26px 26px 0 0; }
.mv-del2-back { position: absolute; width: 132px; height: 166px; border-radius: 18px; background: #fff; opacity: .7; transform: translate(-16px, 6px) rotate(-8deg); box-shadow: 0 8px 24px rgba(122, 14, 35, .1); }
.mv-del2-photo { position: relative; z-index: 1; width: 132px; height: 166px; margin: 0; padding: 5px; border-radius: 18px; background: #fff; transform: rotate(3deg); box-shadow: 0 16px 34px rgba(122, 14, 35, .2); }
.mv-del2-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 20%; border-radius: 14px; display: block; }
.mv-del2-noimg { width: 100%; height: 100%; display: grid; place-items: center; border-radius: 14px; background: var(--mv-wine-50, #FBEFF0); color: var(--mv-wine-500); }
.mv-del2-noimg[hidden] { display: none; }
.mv-del2-badge { position: absolute; right: -14px; bottom: -12px; width: 44px; height: 44px; display: grid; place-items: center; border-radius: 50%; background: linear-gradient(145deg, #D9382C, #A51E15); color: #fff; border: 4px solid #fff; box-shadow: 0 8px 18px rgba(180, 35, 24, .35); animation: mvDelPop .45s .12s both cubic-bezier(.3, 1.6, .5, 1); }
.mv-del2-badge .mv-i { width: 18px; height: 18px; }
@keyframes mvDelPop { from { transform: scale(.3) rotate(-25deg); opacity: 0; } to { transform: none; opacity: 1; } }
.mv-del2-tag { position: relative; z-index: 2; margin-top: 16px; padding: 4px 12px; border-radius: 999px; background: rgba(255, 255, 255, .9); color: var(--mv-wine-500); font-size: 12px; font-weight: 700; letter-spacing: .03em; box-shadow: 0 2px 8px rgba(122, 14, 35, .08); }
.mv-del2-body { position: relative; z-index: 2; padding: 4px 26px 24px; text-align: center; }
.mv-del2-body h3 { margin: 0 0 6px !important; font-size: 22px; font-weight: 700; color: var(--mv-text); letter-spacing: -.01em; }
.mv-del2-lead { margin: 0 0 16px !important; font-size: 14px; line-height: 1.55; color: var(--mv-text-2); }
.mv-del2-notes { list-style: none; margin: 0 0 20px; padding: 12px 14px; display: grid; gap: 9px; text-align: left; border-radius: 16px; background: var(--mv-ivory-50, #FAF6F2); border: 1px solid var(--mv-border); }
.mv-del2-notes li { display: flex; align-items: center; gap: 10px; font-size: 13.5px; color: var(--mv-text); }
.mv-del2-notes li[hidden] { display: none; }
.mv-del2-notes li > span { width: 28px; height: 28px; flex: none; display: grid; place-items: center; border-radius: 9px; background: #fff; color: var(--mv-wine-500); box-shadow: 0 1px 3px rgba(0, 0, 0, .06); }
html body .mv-del2-go:not(#mv-x) { width: 100%; height: 50px; display: flex; align-items: center; justify-content: center; gap: 8px; border-radius: 14px; background: linear-gradient(180deg, #D23A2E, #B42318); color: #fff !important; font-size: 15.5px; font-weight: 700; text-decoration: none !important; box-shadow: 0 10px 22px rgba(180, 35, 24, .28), inset 0 1px 0 rgba(255, 255, 255, .18); transition: transform .12s, box-shadow .15s, filter .15s; }
html body .mv-del2-go:not(#mv-x):hover { filter: brightness(1.05); box-shadow: 0 14px 28px rgba(180, 35, 24, .34); transform: translateY(-1px); }
html body .mv-del2-go:not(#mv-x):active { transform: translateY(1px); }
html body .mv-del2-go.is-busy:not(#mv-x) { pointer-events: none; opacity: .85; }
.mv-del2-keep { width: 100%; height: 46px; margin-top: 8px; border: 0; border-radius: 14px; background: transparent; color: var(--mv-text); font: 600 15px var(--mv-font-body); cursor: pointer; transition: background .15s; }
.mv-del2-keep:hover { background: var(--mv-ivory-50, #FAF6F2); }
@media (max-width: 480px) { .mv-del2 .modal-dialog { padding: 0 12px; } .mv-del2-body { padding: 4px 18px 18px; } }
/* ===== footer "Browse matrimonial profiles": tabs + aligned columns ===== */
.mv-browse2 { padding: 36px 0 26px; border-bottom: 1px solid var(--mv-footer-line); }
.mv-browse2-head { display: flex; align-items: center; justify-content: space-between; gap: 14px 24px; flex-wrap: wrap; margin-bottom: 18px; }
.mv-browse2-head .mv-browse-title { margin: 0 !important; }
.mv-browse2-tabs { display: flex; flex-wrap: wrap; gap: 6px; }
.mv-browse2-tabs button { display: inline-flex; align-items: center; gap: 7px; height: 34px; padding: 0 13px; border: 1px solid rgba(255, 255, 255, .16); border-radius: 999px; background: transparent; color: rgba(255, 255, 255, .78); font: 500 13.5px var(--mv-font-body); cursor: pointer; transition: background .15s, color .15s, border-color .15s; }
.mv-browse2-tabs button small { min-width: 20px; height: 18px; padding: 0 5px; display: inline-grid; place-items: center; border-radius: 9px; background: rgba(255, 255, 255, .1); font-size: 11px; font-weight: 600; }
.mv-browse2-tabs button:hover { color: #fff; border-color: rgba(255, 255, 255, .35); }
.mv-browse2-tabs button[aria-selected="true"] { background: #fff; color: var(--mv-wine-600, #7a0e23); border-color: #fff; }
.mv-browse2-tabs button[aria-selected="true"] small { background: var(--mv-wine-50, #FBEFF0); color: var(--mv-wine-600, #7a0e23); }
.mv-browse2-tabs button:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
.mv-browse2-panel { animation: mvBrIn .2s ease-out; }
.mv-browse2-panel[hidden] { display: none; }
@keyframes mvBrIn { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: none; } }
.mv-browse2-panel ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 2px 24px; }
.mv-browse2-panel li { min-width: 0; }
.mv-browse2-panel a { display: block; padding: 5px 0; font-size: 14px; line-height: 1.45; color: rgba(255, 255, 255, .78) !important; text-decoration: none !important; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: color .15s, transform .15s; }
.mv-browse2-panel a:hover { color: #fff !important; transform: translateX(2px); }
@media (max-width: 1199px) { .mv-browse2-panel ul { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 991px) { .mv-browse2-panel ul { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 640px) {
  .mv-browse2-tabs { flex-wrap: nowrap; overflow-x: auto; margin: 0 -16px; padding: 0 16px 4px; scrollbar-width: none; }
  .mv-browse2-tabs::-webkit-scrollbar { display: none; }
  .mv-browse2-tabs button { flex: none; }
  .mv-browse2-panel ul { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 16px; }
}
/* header menu: never wrap an item onto two lines */
html body .mv-nav:not(#mv-x) > a, html body .mv-nav:not(#mv-x) .mv-dd-btn { white-space: nowrap; }
/* ===== home: popular searches as three aligned cards ===== */
.mv-ps { display: grid; grid-template-columns: 1.15fr 1.15fr 1fr; gap: 18px; }
.mv-ps-card { padding: 20px 20px 14px; border-radius: 20px; background: var(--mv-surface); border: 1px solid var(--mv-border); box-shadow: 0 1px 2px rgba(42, 36, 33, .04); transition: box-shadow .2s, transform .2s; }
.mv-ps-card:hover { box-shadow: 0 14px 30px rgba(122, 14, 35, .08); transform: translateY(-2px); }
.mv-ps-h { display: flex; align-items: center; gap: 12px; padding-bottom: 14px; margin-bottom: 6px; border-bottom: 1px solid var(--mv-border); }
.mv-ps-ic { width: 42px; height: 42px; flex: none; display: grid; place-items: center; border-radius: 13px; background: var(--mv-wine-50, #FBEFF0); color: var(--mv-wine-500); }
.mv-ps-h h3 { margin: 0 !important; font-size: 17px; font-weight: 700; color: var(--mv-text); }
.mv-ps-h small { display: block; margin-top: 2px; font-size: 13px; color: var(--mv-text-2); }
.mv-ps-card ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 14px; }
.mv-ps-card:last-child ul { grid-template-columns: 1fr; }
.mv-ps-card li { min-width: 0; border-bottom: 1px dashed var(--mv-border); }
.mv-ps-card li:nth-last-child(-n+2) { border-bottom: 0; }
.mv-ps-card:last-child li:nth-last-child(2) { border-bottom: 1px dashed var(--mv-border); }
html body .mv-ps-card a:not(#mv-x) { display: flex; align-items: center; justify-content: space-between; gap: 6px; padding: 10px 2px; font-size: 14px; color: var(--mv-text) !important; text-decoration: none !important; transition: color .15s; }
.mv-ps-card a span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mv-ps-card a .mv-i { flex: none; color: var(--mv-text-3, #B8ADA6); transition: transform .15s, color .15s; }
html body .mv-ps-card a:not(#mv-x):hover { color: var(--mv-wine-500) !important; }
.mv-ps-card a:hover .mv-i { color: var(--mv-wine-500); transform: translateX(3px); }
@media (max-width: 991px) { .mv-ps { grid-template-columns: 1fr 1fr; } .mv-ps-card:last-child { grid-column: 1 / -1; } .mv-ps-card:last-child ul { grid-template-columns: repeat(2, minmax(0, 1fr)); } .mv-ps-card:last-child li:nth-last-child(2) { border-bottom: 0; } }
@media (max-width: 640px) { .mv-ps { grid-template-columns: 1fr; } .mv-ps-card ul, .mv-ps-card:last-child ul { grid-template-columns: 1fr; } .mv-ps-card li:nth-last-child(2) { border-bottom: 1px dashed var(--mv-border); } }
/* ===== SEO landing pages: header band ===== */
html body .mv-lp-top:not(#mv-x) { position: relative; margin: 0 0 18px; padding: 26px 0 24px; }
html body .mv-lp-top:not(#mv-x)::before { content: ""; position: absolute; z-index: -1; top: 0; bottom: 0; left: 50%; width: 100vw; transform: translateX(-50%); background: linear-gradient(120deg, var(--mv-sand-100) 0%, var(--mv-wine-50) 100%); border-bottom: 1px solid var(--mv-border); }
.bg-light-green:has(.mv-lp-top) { overflow-x: clip; position: relative; z-index: 0; }
html body .mv-lp-h1:not(#mv-x) { margin: 0 auto 10px !important; max-width: 860px; text-align: center; font-family: var(--mv-font-head); font-size: clamp(26px, 3.6vw, 36px) !important; line-height: 1.2; font-weight: 600; color: var(--mv-text); letter-spacing: -.01em; }
html body .mv-lp-lead:not(#mv-x) { margin: 0 auto 16px !important; max-width: 720px; text-align: center; font-size: 16px; line-height: 1.6; color: var(--mv-text-2); }
html body .mv-lp-lead:empty:not(#mv-x) { display: none; }
.mv-lp-why { display: flex; flex-direction: column; align-items: center; gap: 14px; }
.mv-lp-why ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.mv-lp-why li { display: inline-flex; align-items: center; gap: 7px; padding: 7px 13px; border-radius: 999px; background: rgba(255, 255, 255, .85); border: 1px solid var(--mv-border); font-size: 13.5px; font-weight: 500; color: var(--mv-text); }
.mv-lp-why li .mv-i { color: var(--mv-wine-500); }
.mv-lp-why .mv-btn { min-height: 46px; padding: 0 24px; gap: 8px; }

/* landing pages: the guide text as a readable card */
html body .mv-seo:not(#mv-x) { max-width: 920px; margin: 34px auto 10px; padding: 8px 32px 28px; border-radius: 22px; background: var(--mv-surface); border: 1px solid var(--mv-border); box-shadow: 0 1px 2px rgba(42, 36, 33, .04); }
html body .mv-seo:not(#mv-x) h2 { position: relative; margin: 30px 0 12px; padding-left: 14px; font-size: 22px; font-weight: 600; }
html body .mv-seo:not(#mv-x) h2::before { content: ""; position: absolute; left: 0; top: .2em; bottom: .2em; width: 4px; border-radius: 4px; background: var(--mv-wine-500); }
html body .mv-seo:not(#mv-x) p { font-size: 15.5px; line-height: 1.75; }
@media (max-width: 640px) { html body .mv-seo:not(#mv-x) { padding: 4px 18px 20px; border-radius: 18px; } html body .mv-seo:not(#mv-x) h2 { font-size: 19px; } }

/* ===== Blog list + articles ===== */
html body main.mv-blog:not(#mv-x) { padding-top: 0; }
html:has(main.mv-blog), body:has(main.mv-blog) { overflow-x: clip; }
html body .mv-blog-hero:not(#mv-x) { position: relative; max-width: none; margin: 0 0 30px; padding: 30px 0 30px; }
html body .mv-blog-hero:not(#mv-x)::before { content: ""; position: absolute; z-index: -1; top: 0; bottom: 0; left: 50%; width: 100vw; transform: translateX(-50%); background: linear-gradient(120deg, var(--mv-sand-100) 0%, var(--mv-wine-50) 100%); border-bottom: 1px solid var(--mv-border); }
main.mv-blog { position: relative; z-index: 0; }
html body .mv-blog-hero:not(#mv-x) > * { max-width: 780px; }
html body .mv-blog-hero:not(#mv-x) h1 { font-weight: 600; letter-spacing: -.01em; }
html body .mv-blog-cats:not(#mv-x) li { padding: 0; background: none; }
html body .mv-blog-cats:not(#mv-x) a { display: inline-block; padding: 7px 14px; border-radius: 999px; background: rgba(255, 255, 255, .9); border: 1px solid var(--mv-border); color: var(--mv-text) !important; font-size: 13.5px; font-weight: 600; transition: border-color .15s, color .15s; }
html body .mv-blog-cats:not(#mv-x) a:hover { border-color: var(--mv-wine-500); color: var(--mv-wine-500) !important; }
html body .mv-blog-section-title:not(#mv-x) { position: relative; padding-left: 14px; font-size: 22px; font-weight: 600; }
html body .mv-blog-section-title:not(#mv-x)::before { content: ""; position: absolute; left: 0; top: .25em; height: 1em; width: 4px; border-radius: 4px; background: var(--mv-wine-500); }
html body .mv-blog-card:not(#mv-x) { gap: 10px; padding: 20px 20px 18px; border-radius: 18px; transition: box-shadow .2s, transform .2s, border-color .2s; }
html body .mv-blog-card:not(#mv-x):hover { transform: translateY(-3px); border-color: var(--mv-wine-100, #F1D6D8); box-shadow: 0 16px 34px rgba(122, 14, 35, .09); }
html body .mv-blog-card:not(#mv-x) .mv-blog-tag { align-self: flex-start; padding: 4px 11px; font-size: 11.5px; letter-spacing: .02em; }
html body .mv-blog-card:not(#mv-x) h2, html body .mv-blog-card:not(#mv-x) h3 { font-size: 17.5px; font-weight: 600; }
html body .mv-blog-card:not(#mv-x) p { font-size: 14px; }
html body .mv-blog-card:not(#mv-x) .mv-blog-meta { margin-top: auto; padding-top: 8px; font-size: 12.5px; }
html body .mv-blog-card:not(#mv-x) .mv-blog-more { margin-top: 0; display: inline-flex; align-items: center; gap: 6px; padding-top: 12px; border-top: 1px dashed var(--mv-border); font-size: 14px; text-decoration: none !important; }
html body .mv-blog-cta:not(#mv-x) { padding: 24px 26px; border-radius: 20px; background: linear-gradient(120deg, var(--mv-wine-500), #7A1E2C); color: #fff; }
html body .mv-blog-cta:not(#mv-x) h2, html body .mv-blog-cta:not(#mv-x) p { color: #fff !important; }
html body .mv-blog-cta:not(#mv-x) p { opacity: .88; }
html body .mv-blog-cta:not(#mv-x) .mv-btn { background: #fff !important; color: var(--mv-wine-500) !important; }
/* article */
html body .mv-post:not(#mv-x) > .mv-blog-crumb, html body .mv-post:not(#mv-x) > .mv-blog-tag { position: relative; }
html body .mv-post-body:not(#mv-x) h2 { position: relative; padding-left: 14px; font-size: 24px; font-weight: 600; }
html body .mv-post-body:not(#mv-x) h2::before { content: ""; position: absolute; left: 0; top: .2em; bottom: .2em; width: 4px; border-radius: 4px; background: var(--mv-wine-500); }
html body .mv-post-body:not(#mv-x) ul { list-style: none; padding-left: 0; margin: 4px 0 20px; display: grid; gap: 8px; }
html body .mv-post-body:not(#mv-x) ul li { position: relative; margin: 0; padding: 10px 14px 10px 40px; border-radius: 12px; background: var(--mv-ivory-50, #FAF6F2); border: 1px solid var(--mv-border); line-height: 1.55; }
html body .mv-post-body:not(#mv-x) ul li::before { content: ""; position: absolute; left: 14px; top: 15px; width: 14px; height: 14px; border-radius: 50%; background: var(--mv-wine-500) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / 9px no-repeat; }
html body .mv-post-body:not(#mv-x) ol { padding-left: 22px; }
html body .mv-post-body:not(#mv-x) ol li { margin: 0 0 8px; padding-left: 4px; }
html body .mv-post-faq:not(#mv-x) details { border-radius: 14px; }
html body .mv-post-faq:not(#mv-x) summary { list-style: none; display: flex; justify-content: space-between; gap: 12px; }
html body .mv-post-faq:not(#mv-x) summary::-webkit-details-marker { display: none; }
html body .mv-post-faq:not(#mv-x) summary::after { content: "+"; color: var(--mv-wine-500); font-weight: 400; font-size: 20px; line-height: 1; }
html body .mv-post-faq:not(#mv-x) details[open] summary::after { content: "\2013"; }
html body .mv-post-hero:not(#mv-x) { margin-bottom: 8px; padding: 26px 0 26px; }
html body .mv-post-hero:not(#mv-x) .mv-blog-tag { display: inline-block; margin-bottom: 4px; background: #fff; }
html body .mv-post-hero:not(#mv-x) h1 { margin: 8px 0 8px; }
html body .mv-post-hero:not(#mv-x) .mv-blog-meta { margin: 0; }
/* ===== payment result pages ===== */
.mv-pay { padding: 40px 0 56px; background: radial-gradient(90% 60% at 50% 0%, var(--mv-pay-glow, #F3E7E2) 0%, transparent 70%); }
.mv-pay-card { max-width: 560px; margin: 0 auto; padding: 34px 32px 28px; border-radius: 26px; background: var(--mv-surface); border: 1px solid var(--mv-border); box-shadow: 0 24px 60px rgba(42, 20, 22, .08); text-align: center; }
.mv-pay-card.is-ok { --c: #2F7A4F; --c2: #3E9A66; --bg: #E9F4EE; }
.mv-pay-card.is-bad { --c: #B5651D; --c2: #D07A2C; --bg: #FBF0E4; }
.mv-pay:has(.is-ok) { --mv-pay-glow: #E3F1E8; }
.mv-pay:has(.is-bad) { --mv-pay-glow: #F9EADB; }
.mv-pay-ring { width: 96px; height: 96px; margin: 0 auto 18px; display: grid; place-items: center; border-radius: 50%; background: var(--bg); box-shadow: 0 0 0 10px color-mix(in srgb, var(--bg) 55%, transparent); animation: mvPayIn .5s cubic-bezier(.3, 1.5, .5, 1) both; }
.mv-pay-ic { width: 60px; height: 60px; display: grid; place-items: center; border-radius: 50%; background: linear-gradient(145deg, var(--c2), var(--c)); color: #fff; box-shadow: 0 10px 22px color-mix(in srgb, var(--c) 35%, transparent); }
.mv-pay-ic .mv-i { width: 30px; height: 30px; stroke-width: 2.6; }
@keyframes mvPayIn { from { transform: scale(.5); opacity: 0; } to { transform: none; opacity: 1; } }
.mv-pay-top h1 { margin: 0 0 8px !important; font-size: clamp(24px, 3.4vw, 30px); font-weight: 700; color: var(--mv-text); letter-spacing: -.01em; }
.mv-pay-lead { margin: 0 auto 22px !important; max-width: 420px; font-size: 15.5px; line-height: 1.6; color: var(--mv-text-2); }
.mv-pay-steps { list-style: none; margin: 0 0 24px; padding: 6px; display: grid; gap: 2px; text-align: left; border-radius: 18px; background: var(--mv-ivory-50, #FAF6F2); border: 1px solid var(--mv-border); }
.mv-pay-steps li { display: flex; gap: 12px; align-items: flex-start; padding: 12px; border-radius: 12px; }
.mv-pay-steps li + li { border-top: 1px dashed var(--mv-border); border-radius: 0; }
.mv-pay-steps li > span { width: 34px; height: 34px; flex: none; display: grid; place-items: center; border-radius: 10px; background: #fff; color: var(--c); box-shadow: 0 1px 3px rgba(0, 0, 0, .06); }
.mv-pay-steps b { display: block; font-size: 14.5px; color: var(--mv-text); }
.mv-pay-steps small { display: block; margin-top: 2px; font-size: 13px; line-height: 1.5; color: var(--mv-text-2); }
.mv-pay-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.mv-pay-actions .mv-btn { min-height: 48px; justify-content: center; gap: 8px; }
html body .mv-pay-link:not(#mv-x) { grid-column: 1 / -1; display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 8px; font-size: 14px; font-weight: 600; color: var(--mv-wine-500) !important; text-decoration: none !important; }
.mv-pay-link .mv-i { transition: transform .15s; }
.mv-pay-link:hover .mv-i { transform: translateX(3px); }
.mv-pay-secure { display: flex; align-items: center; justify-content: center; gap: 6px; margin: 16px auto 0 !important; font-size: 12.5px; color: var(--mv-text-2); text-align: center; }
@media (max-width: 520px) { .mv-pay { padding: 24px 0 40px; } .mv-pay-card { padding: 26px 18px 20px; border-radius: 22px; } .mv-pay-actions { grid-template-columns: 1fr; } }
/* ===== notifications: delete buttons, bulk actions ===== */
html body .mv-noti-del:not(#mv-x) { width: 34px; height: 34px; display: inline-grid; place-items: center; border-radius: 10px; color: var(--mv-text-3, #9A8F89) !important; background: transparent; transition: background .15s, color .15s, transform .15s; cursor: pointer; text-decoration: none !important; }
html body a:hover > .mv-noti-del:not(#mv-x), html body .mv-noti-del:not(#mv-x):hover { background: #FEF1F0; color: #B42318 !important; transform: scale(1.06); }
html body .mv-noti-del:not(#mv-x) .mv-i { width: 17px; height: 17px; }
html body a:has(> .mv-noti-del):not(#mv-x) { text-decoration: none !important; display: inline-block; }
html body .mv-noti-clear:not(#mv-x) { display: inline-flex; align-items: center; gap: 7px; height: 36px; padding: 0 14px; border: 1px solid #F3D0CC; border-radius: 999px; background: #fff; color: #B42318 !important; font: 600 13px var(--mv-font-body); text-decoration: none !important; cursor: pointer; transition: background .15s, border-color .15s; }
html body .mv-noti-clear:not(#mv-x):hover { background: #FEF1F0; border-color: #B42318; }
/* history + all-notifications rows: initials avatar size */
html body .all_nitifi_page .noti-list-icon:not(#mv-x), html body #allnotifictionlist1 .noti-list-icon:not(#mv-x) { width: 48px; height: 48px; border-radius: 50%; overflow: visible; }
html body .all_nitifi_page .noti-list-icon img:not(#mv-x) { border-radius: 50%; }
html body .noti-list-icon .mv-noti-img:not(#mv-x) { width: 100%; height: 100%; object-fit: cover; object-position: 50% 20%; border-radius: 50%; }
/* confirm dialog */
.mv-cf { position: fixed; inset: 0; z-index: 100050; display: none; place-items: center; padding: 16px; background: rgba(42, 20, 22, .45); backdrop-filter: blur(3px); }
.mv-cf.is-on { display: grid; animation: mvCfIn .15s ease-out; }
@keyframes mvCfIn { from { opacity: 0; } to { opacity: 1; } }
.mv-cf-card { width: 100%; max-width: 360px; padding: 26px 22px 20px; border-radius: 22px; background: #fff; text-align: center; box-shadow: 0 30px 70px rgba(42, 20, 22, .3); animation: mvCfUp .2s cubic-bezier(.2, .8, .3, 1); }
@keyframes mvCfUp { from { transform: translateY(12px) scale(.97); } to { transform: none; } }
.mv-cf-ic { width: 56px; height: 56px; margin: 0 auto 14px; display: grid; place-items: center; border-radius: 50%; background: #FEF1F0; color: #B42318; }
.mv-cf-ic svg { width: 24px; height: 24px; }
.mv-cf-card h3 { margin: 0 0 6px; font-size: 19px; font-weight: 700; color: var(--mv-text, #2A2421); }
.mv-cf-card p { margin: 0 0 20px; font-size: 14px; color: var(--mv-text-2, #6E625C); }
.mv-cf-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.mv-cf-actions button { height: 46px; border-radius: 12px; font: 600 14.5px var(--mv-font-body, inherit); cursor: pointer; }
.mv-cf-no { border: 1px solid var(--mv-border, #EADFD8); background: #fff; color: var(--mv-text, #2A2421); }
.mv-cf-yes { border: 0; background: linear-gradient(180deg, #D23A2E, #B42318); color: #fff; box-shadow: 0 8px 18px rgba(180, 35, 24, .25); }
/* member pages: wider sidebar (user request), more room for the page */
@media (min-width: 992px) {
  html body .gt-view-profile:has(.mv-mnav):not(#mv-x), html body .container:has(> .row > [class*="col"] .mv-mnav):not(#mv-x) { max-width: 1280px !important; }
  html body .row:has(> [class*="col"] .mv-mnav):not(#mv-x) { grid-template-columns: 290px minmax(0, 1fr); gap: 26px; }
  html body .mv-mnav:not(#mv-x) { max-height: calc(100vh - 104px); }
  html body .mv-mnav:not(#mv-x) nav a { padding: 9px 12px; font-size: 14.5px; }
  html body .mv-mnav-me b:not(#mv-x) { max-width: 200px; }
}
html body .mv-hist-empty:not(#mv-x) { margin: 18px; padding: 34px 20px; border-style: dashed; box-shadow: none; }
html body .mv-hist-empty:not(#mv-x) p { margin: 0 0 16px !important; color: var(--mv-text-2); }
html body .mv-hist-empty:not(#mv-x) .mv-btn { gap: 8px; }
html body #allnotifictionlist1:has(.mv-hist-empty) { background: transparent !important; }
/* ===== pagination (all CodeIgniter pagers): one clean style, no empty wrapper boxes ===== */
html body ul.pagination:not(#mv-x) { display: flex !important; flex-wrap: wrap; justify-content: center; align-items: center; gap: 6px; margin: 18px 0 6px !important; padding: 0 !important; list-style: none; border: 0 !important; background: none !important; }
html body ul.pagination:not(#mv-x) > li { display: contents !important; }
html body ul.pagination:not(#mv-x) span.numlink, html body ul.pagination:not(#mv-x) span.nextlink, html body ul.pagination:not(#mv-x) span.prevlink, html body ul.pagination:not(#mv-x) span.firstlink, html body ul.pagination:not(#mv-x) span.lastlink { display: contents !important; border: 0 !important; background: none !important; padding: 0 !important; margin: 0 !important; box-shadow: none !important; }
html body ul.pagination:not(#mv-x) a, html body ul.pagination:not(#mv-x) strong { display: inline-flex !important; align-items: center; justify-content: center; gap: 6px; min-width: 40px; height: 40px; padding: 0 14px !important; margin: 0 !important; border-radius: 12px !important; border: 1px solid var(--mv-border) !important; background: var(--mv-surface) !important; color: var(--mv-text) !important; font: 600 14px var(--mv-font-body) !important; line-height: 1 !important; text-decoration: none !important; box-shadow: 0 1px 2px rgba(42, 36, 33, .04); transition: border-color .15s, background .15s, color .15s, transform .15s; }
html body ul.pagination:not(#mv-x) a:hover { border-color: var(--mv-wine-200, #E3A9AF) !important; background: var(--mv-wine-50, #FBEFF0) !important; color: var(--mv-wine-500) !important; transform: translateY(-1px); }
html body ul.pagination:not(#mv-x) a.page-numbers1, html body ul.pagination:not(#mv-x) strong { background: var(--mv-wine-500) !important; border-color: var(--mv-wine-500) !important; color: #fff !important; box-shadow: 0 6px 14px rgba(163, 52, 58, .25); pointer-events: none; }
html body ul.pagination:not(#mv-x) span.nextlink a::after { content: ""; width: 7px; height: 7px; border-right: 2px solid currentColor; border-top: 2px solid currentColor; transform: rotate(45deg); margin-left: 2px; }
html body ul.pagination:not(#mv-x) span.prevlink a::before { content: ""; width: 7px; height: 7px; border-left: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); margin-right: 2px; }
html body ul.pagination:not(#mv-x) span.nextlink a, html body ul.pagination:not(#mv-x) span.prevlink a, html body ul.pagination:not(#mv-x) span.firstlink a, html body ul.pagination:not(#mv-x) span.lastlink a { padding: 0 16px !important; }
@media (max-width: 480px) { html body ul.pagination:not(#mv-x) a, html body ul.pagination:not(#mv-x) strong { min-width: 36px; height: 36px; padding: 0 11px !important; font-size: 13px !important; } }
/* member sidebar: no visible scrollbar, larger text */
html body .mv-mnav:not(#mv-x) { scrollbar-width: none; -ms-overflow-style: none; }
html body .mv-mnav:not(#mv-x)::-webkit-scrollbar { display: none; width: 0; height: 0; }
@media (min-width: 992px) {
  html body .mv-mnav:not(#mv-x) nav a, html body .mv-mnav:not(#mv-x) > a { font-size: 15.5px; padding: 10px 12px; gap: 12px; }
  html body .mv-mnav:not(#mv-x) nav a .mv-i { width: 18px; height: 18px; }
  html body .mv-mnav-h:not(#mv-x) { font-size: 12px; }
  html body .mv-mnav-me b:not(#mv-x) { font-size: 16px; }
  html body .mv-mnav-me small:not(#mv-x) { font-size: 13px; }
}
@media (min-width: 992px) {
  html body .mv-mnav:not(#mv-x) nav a { font-size: 15px !important; height: 40px; padding: 0 12px !important; gap: 11px !important; }
  html body .mv-mnav:not(#mv-x) nav a .mv-i { width: 18px; height: 18px; }
  html body .mv-mnav:not(#mv-x) nav a b { min-width: 24px !important; height: 20px !important; font-size: 11.5px !important; }
  html body .mv-mnav-h:not(#mv-x) { font-size: 11.5px !important; margin: 12px 10px 4px !important; }
  html body .mv-mnav-me b:not(#mv-x) { font-size: 16px !important; max-width: 200px !important; }
  html body .mv-mnav-me small:not(#mv-x) { font-size: 12.5px !important; }
  html body .mv-mnav:not(#mv-x) .mv-mnav-pic > img, html body .mv-mnav:not(#mv-x) .mv-mnav-pic > .mv-initials { width: 46px !important; height: 46px !important; font-size: 16px !important; }
}
