/* The Vatsalyam Account UI exact merge 23.4. No CDN, no database changes. */
/* Fix the stretched elliptical avatar on both account.php and account-center.php. */
.ad-page .ad-hero{align-items:center;min-width:0}
.ad-page .ad-hero > div:first-child{flex:1 1 auto;min-width:0}
.ad-page .ad-hero > .ad-avatar.ac-avatar-link{
  box-sizing:border-box!important;
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 132px!important;
  width:132px!important;
  height:132px!important;
  min-width:132px!important;
  max-width:132px!important;
  min-height:132px!important;
  max-height:132px!important;
  aspect-ratio:1/1!important;
  overflow:hidden!important;
  padding:0!important;
  margin:0!important;
  border:6px solid #fff!important;
  border-radius:50%!important;
  background:#f7dce5!important;
  box-shadow:0 12px 32px rgba(108,67,80,.15);
  color:#873f62!important;
  font-size:3rem!important;
  line-height:1!important;
  text-decoration:none!important;
}
.ad-page .ad-hero > .ad-avatar.ac-avatar-link img,
.ad-page .ad-hero > .ad-avatar.ac-avatar-link .ac-avatar-image{
  display:block!important;
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  min-height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  aspect-ratio:1/1!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:50%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
}
.ad-page .ac-identity-avatar,.ac-page .ac-photo{
  flex-shrink:0!important;
  aspect-ratio:1/1!important;
  overflow:hidden!important;
}
.ad-page .ac-identity-avatar img,.ac-page .ac-photo img{
  width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;
}
@media(max-width:700px){
 .ad-page .ad-hero{flex-direction:column-reverse!important;align-items:flex-start!important;gap:1.1rem!important}
 .ad-page .ad-hero > .ad-avatar.ac-avatar-link{display:grid!important;flex-basis:112px!important;width:112px!important;height:112px!important;min-width:112px!important;max-width:112px!important;min-height:112px!important;max-height:112px!important}
}
/* Bootstrap 5 Account dropdown: consistent with rose & sage navbar. */
.site-header .tv-account-nav .tv-account-toggle{display:inline-flex;align-items:center;gap:.45rem;white-space:nowrap;min-height:42px}
.site-header .tv-account-menu{
  min-width:220px;padding:.55rem;
  background:#fff;border:1px solid #eed9df;border-radius:15px;
  box-shadow:0 18px 45px rgba(88,53,70,.14);z-index:1100;
}
.site-header .tv-account-menu .dropdown-item{display:flex;align-items:center;gap:.55rem;min-height:42px;padding:.65rem .85rem;border-radius:9px;font-weight:600;color:#604a55;white-space:normal}
.site-header .tv-account-menu .dropdown-item:hover,.site-header .tv-account-menu .dropdown-item:focus{color:#8f3458;background:#fff0f5}
.site-header .tv-account-menu .tv-signout{width:100%;border:0;text-align:left;background:transparent;color:#a13b58;cursor:pointer}
.site-header .tv-account-menu .tv-signout:hover{background:#fff0f5}
.site-header .tv-account-menu .dropdown-divider{border-color:#eedde2;margin:.35rem .15rem}
@media(max-width:991.98px){
 .site-header .tv-account-nav{width:100%;padding:.5rem 0}
 .site-header .tv-account-nav .tv-account-toggle{width:100%;justify-content:space-between}
 .site-header .tv-account-menu{width:100%;position:static!important;transform:none!important;box-shadow:none}
}
/* Official Vatsalyam footer logo and Instavibes attribution. */
.site-footer .tv-footer-brand{display:flex;align-items:center;gap:.85rem;min-height:55px;margin-bottom:1rem}
.site-footer .tv-footer-logo{display:block;width:auto;height:58px;max-width:min(245px,100%);object-fit:contain;object-position:left center}
.site-footer .tv-footer-brand-fallback{display:inline-flex;align-items:center;gap:.5rem}
.site-footer .tv-footer-credit{margin-top:1.15rem;padding-top:1rem;border-top:1px solid rgba(120,93,104,.16);font-size:.85rem;color:inherit}
.site-footer .tv-footer-credit a{color:#a14d69;font-weight:750;text-decoration:none;border-bottom:1px solid transparent}
.site-footer .tv-footer-credit a:hover,.site-footer .tv-footer-credit a:focus{border-bottom-color:currentColor;text-decoration:underline}
.site-footer .tv-footer-credit .tv-it-mark{display:inline-grid;place-items:center;width:28px;height:28px;margin-right:.35rem;border:1px solid #e8ccd6;border-radius:9px;background:#fff2f6;color:#a04f6c;font-size:.7rem;font-weight:800;vertical-align:middle}
/* Footer uses a deep plum background in the original theme: keep the credit readable. */
.site-footer .tv-footer-credit a{color:#ffd4e1!important}
.site-footer .tv-footer-credit .tv-it-mark{color:#8b405c}

/* Exact-merge polish for the existing Bootstrap header and dark site footer. */
.site-header .tv-account-nav .tv-account-toggle:focus-visible{outline:3px solid #8a3f63!important;outline-offset:3px}
.site-footer .tv-footer-brand{margin-bottom:1rem}
.site-footer .tv-footer-logo{height:auto;max-height:66px;max-width:min(260px,100%);width:auto;object-fit:contain}
.site-footer .tv-footer-credit{margin:0;padding:0;border:0;color:#f2e5e9;font-size:.9rem}
.site-footer .tv-footer-credit a{color:#fbd6e0!important;font-weight:750;text-underline-offset:3px;text-decoration:underline;text-decoration-color:rgba(251,214,224,.4)}
.site-footer .tv-footer-credit a:hover{color:#fff!important;text-decoration-color:#fff}
@media(max-width:575.98px){.site-footer .tv-footer-brand .tv-footer-logo{max-height:56px;max-width:230px}}
