/* Демо-доступ и форма даты на MV-сервисах (как tr-access-banner / tr-birth-opt в Таро) */
.mv-soft-stack{
  display:grid;
  gap:14px;
  margin:0 0 20px;
  width:100%;
  min-width:0;
  overflow:visible;
}

.mv-access-banner{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px 16px;
  margin:0;
  padding:14px 16px;
  border-radius:18px;
  border:1px solid #ddd6fe;
  background:linear-gradient(135deg,#f5f3ff,#fff);
  box-shadow:0 8px 22px rgba(124,58,237,.06);
  color:#2a2440;
}

.mv-access-banner-ic{
  flex:0 0 36px;
  width:36px;
  height:36px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#ede9fe;
  font-size:18px;
  line-height:1;
}

.mv-access-banner-copy{
  flex:1 1 220px;
  min-width:0;
}

.mv-access-banner-copy b{
  display:block;
  color:#17122a;
  font-size:15px;
  line-height:1.35;
}

.mv-access-banner-copy p{
  margin:4px 0 0;
  color:#6b657a;
  font-size:13px;
  line-height:1.45;
}

.mv-access-banner-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}

.mv-access-banner__cta,
.mv-access-banner-actions .mv-access-banner__cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin:0;
  padding:11px 16px;
  border:0;
  border-radius:999px;
  background:linear-gradient(135deg,#6847f5,#7c3aed);
  color:#fff!important;
  font:inherit;
  font-size:.88rem;
  font-weight:800;
  text-decoration:none;
  cursor:pointer;
  box-shadow:0 8px 20px rgba(104,71,245,.24);
  white-space:nowrap;
}

.mv-access-banner__cta:hover{
  filter:brightness(1.04);
}

/* Сворачиваемая форма даты */
.mv-birth-opt{
  margin:0;
  border-radius:18px;
  border:1px solid #e9e0ff;
  background:#fff;
  box-shadow:0 8px 22px rgba(124,58,237,.06);
  overflow:visible;
}

.mv-birth-opt:not([open]) .mv-birth-opt-trigger{
  border-radius:18px;
}

.mv-birth-opt[open] .mv-birth-opt-trigger{
  border-radius:18px 18px 0 0;
}

.mv-birth-opt-body{
  padding:0 16px 16px;
  display:grid;
  gap:14px;
  border-top:1px solid #f0ebff;
  overflow:visible;
  border-radius:0 0 18px 18px;
}

.mv-birth-opt[open] .mv-birth-opt-trigger{border-bottom:1px solid #f0ebff}

.mv-birth-opt-trigger{
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:14px 16px;
  cursor:pointer;
  list-style:none;
  background:linear-gradient(135deg,#faf8ff,#fff);
}

.mv-birth-opt-trigger::-webkit-details-marker{display:none}

.mv-birth-opt-trigger::after{
  content:'↓';
  margin-left:auto;
  font-weight:800;
  color:#9ca3af;
  transition:transform .15s ease;
}

.mv-birth-opt[open] .mv-birth-opt-trigger::after{transform:rotate(180deg)}

.mv-birth-opt-orb{
  flex:0 0 36px;
  width:36px;
  height:36px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#ede9fe;
  color:#6d28d9;
  font-size:16px;
  animation:mv-birth-orb-pulse 2.4s ease-in-out infinite;
}

@keyframes mv-birth-orb-pulse{
  0%,100%{box-shadow:0 0 0 0 rgba(124,58,237,.25)}
  50%{box-shadow:0 0 0 8px rgba(124,58,237,0)}
}

@media (prefers-reduced-motion:reduce){
  .mv-birth-opt-orb{animation:none}
}

.mv-birth-opt-copy{
  display:grid;
  gap:3px;
  text-align:left;
  min-width:0;
}

.mv-birth-opt-copy strong{
  font-size:14px;
  color:#17122a;
}

.mv-birth-opt-copy span{
  font-size:12px;
  line-height:1.45;
  color:#6b657a;
}

.mv-birth-opt-intro{
  margin:0;
  font-size:13px;
  line-height:1.55;
  color:#5c5570;
}

.mv-birth-opt-intro b{
  color:#17122a;
  font-weight:800;
}

.mv-birth-opt-note{
  margin:0;
  padding:10px 12px;
  border-radius:12px;
  background:rgba(124,58,237,.06);
  font-size:12px;
  line-height:1.45;
  color:#6b657a;
}

.mv-birth-opt-err{
  margin:0;
  padding:10px 12px;
  border-radius:12px;
  background:#fff7ed;
  border:1px solid #fed7aa;
  color:#b45309;
  font-size:13px;
}

/* Dating compat — сохраняем розовую тему только там */
.dc-page--soft .mv-access-banner{
  border-color:rgba(255,61,122,.22);
  background:linear-gradient(135deg,#fff5f8,#ffe8ef);
  color:#5c1233;
}

.dc-page--soft .mv-access-banner-copy p{color:#7a3050}

.dc-page--soft .mv-access-banner__cta{
  background:linear-gradient(135deg,#ff3d7a,#ff6b4a);
  box-shadow:0 10px 24px rgba(255,61,122,.28);
}

.mv-birth-gate-active .mvp-workspace,
.mv-birth-gate-active .mv-simple,
.mv-birth-gate-active .mv-newbie-guide,
.mv-birth-gate-active .mv-skip-to-tool,
.mv-birth-gate-active .mv-accuracy-disclaimer{display:none!important}

.mv-birth-gate-note{
  max-width:820px;
  margin:0 auto 14px;
  padding:0 20px;
  font-size:.88rem;
  color:#5c5570;
  line-height:1.45;
}

.mv-birth-opt--required{
  border:1px solid #ddd6fe;
  border-radius:18px;
  background:#fff;
  padding:16px 18px;
  box-shadow:0 8px 22px rgba(124,58,237,.06);
}
