/* BAVS v0.21.28 — unified public chrome
   Fluent / Windows 11 inspired, mobile-first, Estedad + local Font Awesome 6.5.1. */
:root{
  --chrome28-blue:#2563eb;
  --chrome28-blue2:#4f46e5;
  --chrome28-cyan:#06b6d4;
  --chrome28-violet:#7c3aed;
  --chrome28-rose:#ec4899;
  --chrome28-ink:#12213d;
  --chrome28-muted:#667793;
  --chrome28-line:rgba(91,121,169,.16);
  --chrome28-surface:rgba(255,255,255,.82);
  --chrome28-surface-solid:#fff;
  --chrome28-shadow:0 14px 42px rgba(36,67,119,.11);
}
html[data-theme="dark"]{
  --chrome28-ink:#f4f8ff;
  --chrome28-muted:#a9b8cf;
  --chrome28-line:rgba(135,164,207,.18);
  --chrome28-surface:rgba(10,23,42,.86);
  --chrome28-surface-solid:#0d1b30;
  --chrome28-shadow:0 18px 48px rgba(0,0,0,.30);
}

/* ---------- header ---------- */
.bavs-header.site-header{
  background:color-mix(in srgb,var(--chrome28-surface) 92%,transparent)!important;
  border-bottom:1px solid var(--chrome28-line)!important;
  box-shadow:0 6px 24px rgba(36,67,119,.055)!important;
  backdrop-filter:blur(18px) saturate(135%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(135%)!important;
}
.bavs-header.is-scrolled{
  background:color-mix(in srgb,var(--chrome28-surface) 97%,transparent)!important;
  box-shadow:0 14px 38px rgba(30,64,115,.13)!important;
}
.bavs-header-accent{height:2px!important;opacity:.9}
.bavs-header-inner{min-height:68px!important;gap:10px!important}
.bavs-brand{gap:9px!important;margin-left:4px!important}
.bavs-brand-mark{
  width:50px!important;height:50px!important;border-radius:16px!important;
  background:linear-gradient(145deg,#fff,#eef6ff)!important;
  border-color:rgba(72,111,176,.18)!important;
  box-shadow:0 9px 24px rgba(37,82,151,.12)!important;
}
.bavs-brand-mark img{width:44px!important;height:42px!important}
.bavs-brand-orbit{inset:5px!important;border-radius:13px!important;opacity:.65}
.bavs-brand-copy strong{font-size:12.5px!important;color:var(--chrome28-ink)!important;line-height:1.35!important}
.bavs-brand-copy small{font-size:8px!important;color:var(--chrome28-muted)!important;margin-top:2px!important}

.bavs-desktop-nav-v2128{
  gap:2px!important;padding:4px!important;border-radius:17px!important;
  background:color-mix(in srgb,var(--chrome28-surface-solid) 68%,transparent)!important;
  border:1px solid var(--chrome28-line)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.32)!important;
}
.bavs-desktop-nav-v2128 .bavs-nav-link{
  min-height:38px!important;padding:7px 9px!important;border-radius:12px!important;
  gap:6px!important;font-size:9.8px!important;font-weight:850!important;
  color:var(--chrome28-muted)!important;
}
.bavs-desktop-nav-v2128 .bavs-nav-link>i{font-size:12px;line-height:1;color:currentColor;min-width:13px;text-align:center}
.bavs-desktop-nav-v2128 .bavs-nav-link::before{display:none!important}
.bavs-desktop-nav-v2128 .bavs-nav-link:hover,
.bavs-desktop-nav-v2128 .bavs-nav-link.is-active,
.bavs-nav-details[open]>.bavs-nav-link{
  color:var(--chrome28-blue)!important;
  background:color-mix(in srgb,var(--chrome28-blue) 9%,var(--chrome28-surface-solid))!important;
  transform:none!important;
}
html[data-theme="dark"] .bavs-desktop-nav-v2128 .bavs-nav-link:hover,
html[data-theme="dark"] .bavs-desktop-nav-v2128 .bavs-nav-link.is-active,
html[data-theme="dark"] .bavs-nav-details[open]>.bavs-nav-link{color:#a9c8ff!important;background:rgba(58,97,170,.18)!important}
.bavs-nav-details{position:relative}
.bavs-nav-details .bavs-chevron{font-size:8px!important;margin-right:1px;transition:transform .18s ease!important}
.bavs-nav-details[open] .bavs-chevron{transform:rotate(180deg)!important}

.bavs-lessons-popover,
.bavs-more-popover{
  position:absolute;top:calc(100% + 12px);right:-16px;z-index:120;
  width:330px;padding:10px;border-radius:20px;
  background:color-mix(in srgb,var(--chrome28-surface-solid) 96%,transparent);
  border:1px solid var(--chrome28-line);box-shadow:0 24px 65px rgba(20,48,89,.19);
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  animation:bavs28Popover .16s ease both;
}
.bavs-lessons-popover{grid-template-columns:1fr 1fr!important;gap:7px!important}
.bavs-more-menu:not([open]) .bavs-more-popover{display:none}
.bavs-more-popover{display:grid;grid-template-columns:1fr;gap:6px;width:275px;right:auto;left:0}
.bavs-lessons-popover a,
.bavs-more-popover a{
  display:flex;align-items:center;gap:9px;padding:10px;border-radius:14px;
  color:var(--chrome28-ink);background:color-mix(in srgb,var(--chrome28-surface-solid) 75%,transparent);
  border:1px solid transparent;transition:background .16s ease,border-color .16s ease,transform .16s ease;
}
.bavs-lessons-popover a>i,
.bavs-more-popover a>i{width:32px;height:32px;flex:0 0 32px;border-radius:10px;display:grid;place-items:center;color:var(--chrome28-blue);background:color-mix(in srgb,var(--chrome28-blue) 8%,var(--chrome28-surface-solid));font-size:13px}
.bavs-lessons-popover a span,
.bavs-more-popover a span{display:grid;line-height:1.45;min-width:0}
.bavs-lessons-popover a strong,
.bavs-more-popover a strong{font-size:9.5px;color:var(--chrome28-ink);font-weight:900}
.bavs-lessons-popover a small,
.bavs-more-popover a small{font-size:7.6px;color:var(--chrome28-muted);font-weight:650;margin-top:2px}
.bavs-lessons-popover a:hover,
.bavs-more-popover a:hover,
.bavs-more-popover a.is-active{transform:translateY(-1px);border-color:color-mix(in srgb,var(--chrome28-blue) 22%,var(--chrome28-line));background:color-mix(in srgb,var(--chrome28-blue) 6%,var(--chrome28-surface-solid))}
.bavs-popover-title{font-size:9px!important;padding:5px 7px!important;color:var(--chrome28-muted)!important}

.bavs-header-actions{gap:6px!important;margin-right:auto}
.bavs-round-btn,
.bavs-header-icon-action,
.bavs-menu-btn,
.bavs-login-btn,
.bavs-user-pill{
  border:1px solid var(--chrome28-line)!important;
  background:color-mix(in srgb,var(--chrome28-surface-solid) 84%,transparent)!important;
  color:var(--chrome28-ink)!important;
  box-shadow:0 7px 20px rgba(30,64,115,.06)!important;
}
.bavs-round-btn,.bavs-header-icon-action{width:40px!important;height:40px!important;border-radius:13px!important;display:grid;place-items:center;transition:.16s ease}
.bavs-round-btn i,.bavs-header-icon-action i{font-size:14px}
.bavs-round-btn:hover,.bavs-header-icon-action:hover{transform:translateY(-1px)!important;border-color:color-mix(in srgb,var(--chrome28-blue) 30%,var(--chrome28-line))!important;color:var(--chrome28-blue)!important}
.bavs-user-pill{
  min-height:44px!important;padding:4px 6px 4px 10px!important;border-radius:15px!important;gap:8px!important;
}
.bavs-user-avatar-initial{width:34px!important;height:34px!important;border-radius:11px!important;font-size:13px!important;font-weight:950!important}
.bavs-user-pill small{font-size:7px!important;color:var(--chrome28-muted)!important}
.bavs-user-pill strong{font-size:9px!important;max-width:92px!important;color:var(--chrome28-ink)!important}
.bavs-user-pill-arrow{font-size:8px;color:var(--chrome28-muted);margin-right:1px}
.bavs-login-btn,.bavs-register-btn{min-height:40px!important;border-radius:13px!important;padding:7px 11px!important;font-size:9.5px!important}
.bavs-register-btn{background:linear-gradient(135deg,#2563eb,#6366f1)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 10px 24px rgba(37,99,235,.20)!important}
.bavs-pwa-install-btn{min-height:40px!important;border-radius:13px!important;padding-inline:11px!important;font-size:9.5px!important;box-shadow:none!important}
.bavs-menu-btn{height:40px!important;border-radius:13px!important}

/* ---------- mobile drawer refinement ---------- */
.bavs-mobile-drawer{width:min(400px,92vw)!important;padding:14px 13px 22px!important}
.bavs-mobile-hero{border-radius:18px!important}
.bavs-mobile-tile{border-radius:17px!important;box-shadow:0 8px 22px rgba(38,71,125,.055)!important}

/* ---------- footer ---------- */
.bavs-footer.site-footer{
  margin-top:64px!important;
  border-radius:34px 34px 0 0;
  background:
    radial-gradient(circle at 85% 5%,rgba(6,182,212,.12),transparent 25%),
    radial-gradient(circle at 8% 100%,rgba(124,58,237,.12),transparent 28%),
    linear-gradient(155deg,#07182e 0%,#0a2340 58%,#0a2c48 100%)!important;
}
.bavs-footer::after{height:3px!important;opacity:.9}
.bavs-footer-shell{padding-top:25px!important}
.bavs-footer-cta{
  margin-top:-48px!important;padding:14px 16px!important;border-radius:21px!important;gap:12px!important;
  box-shadow:0 18px 45px rgba(0,24,61,.20)!important;
}
.bavs-footer-cta-icon{width:44px!important;height:44px!important;border-radius:14px!important}
.bavs-footer-cta-icon i{font-size:16px}
.bavs-footer-cta-copy small{font-size:8.5px!important}
.bavs-footer-cta-copy strong{font-size:11.5px!important}
.bavs-footer-action{min-height:40px!important;border-radius:12px!important;font-size:8.8px!important;padding:8px 11px!important}
.bavs-footer-action i{font-size:11px}

.bavs-footer-grid{gap:12px!important;padding:24px 0 20px!important}
.bavs-footer-identity,.bavs-footer-panel{
  border-radius:20px!important;padding:15px!important;
  background:rgba(255,255,255,.045)!important;border-color:rgba(177,205,237,.12)!important;
  backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important;
}
.bavs-footer-logo-wrap{width:72px!important;height:72px!important;flex-basis:72px!important;border-radius:18px!important}
.bavs-footer-logo-wrap img{width:63px!important;height:60px!important}
.bavs-footer-kicker{font-size:7.5px!important;padding:4px 8px!important}
.bavs-footer-identity h2{font-size:11.5px!important;margin:6px 0 4px!important}
.bavs-footer-identity p{font-size:8.4px!important;line-height:1.9!important}
.bavs-footer-panel-head{margin-bottom:9px!important}
.bavs-footer-panel-head>span{width:30px!important;height:30px!important;border-radius:10px!important}
.bavs-footer-panel h3{font-size:9.5px!important}
.bavs-footer-links-v2{gap:6px!important}
.bavs-footer-links-v2 a{padding:8px 9px!important;border-radius:11px!important;font-size:8px!important;min-height:36px}
.bavs-contact-row{padding:8px!important;border-radius:11px!important}
.bavs-contact-row small{font-size:7px!important}
.bavs-contact-row strong{font-size:8px!important;line-height:1.75!important}
.bavs-footer-bottom{padding:12px 0 16px!important}
.bavs-footer-bottom p{font-size:7.4px!important}

/* Dashboard does not need the public floating CTA. Keep footer quiet and compact. */
.bavs-footer-account{margin-top:38px!important;border-radius:28px 28px 0 0!important}
.bavs-footer-account .bavs-footer-shell{padding-top:10px!important}
.bavs-footer-account .bavs-footer-grid{padding-top:18px!important}
.bavs-footer-account .bavs-footer-identity,.bavs-footer-account .bavs-footer-panel{padding:13px!important}

@keyframes bavs28Popover{from{opacity:0;transform:translateY(-5px) scale(.985)}to{opacity:1;transform:none}}

@media(min-width:760px){
  .bavs-header-inner{min-height:70px!important}
  .bavs-footer-grid{grid-template-columns:1.1fr .9fr!important}
  .bavs-footer-identity{grid-column:1/-1!important}
  .bavs-footer-cta{flex-direction:row!important;align-items:center!important}
  .bavs-footer-cta-actions{display:flex!important;grid-template-columns:none!important}
}
@media(min-width:1080px){
  .bavs-desktop-nav-v2128{display:flex!important}
  .bavs-header-inner{min-height:70px!important;gap:9px!important}
  .bavs-brand{margin-left:4px!important}
  .bavs-menu-btn{display:none!important}
  .bavs-desktop-action{display:flex!important}
  .bavs-footer-grid{grid-template-columns:1.25fr .9fr 1fr!important}
  .bavs-footer-identity{grid-column:auto!important}
}
@media(min-width:1280px){
  .bavs-desktop-nav-v2128 .bavs-nav-link{padding-inline:10px!important;font-size:10px!important}
  .bavs-brand-copy strong{font-size:13px!important}
}
@media(max-width:1079px){
  .bavs-header-inner{min-height:64px!important}
  .bavs-brand-mark{width:46px!important;height:46px!important;border-radius:14px!important}
  .bavs-brand-mark img{width:40px!important;height:38px!important}
  .bavs-brand-copy strong{font-size:11.5px!important}.bavs-brand-copy small{font-size:7.4px!important}
}
@media(max-width:520px){
  .bavs-header-inner{gap:6px!important}
  .bavs-brand-copy small{display:none}
  .bavs-brand-copy strong{font-size:10.5px!important}
  .bavs-brand-mark{width:43px!important;height:43px!important}
  .bavs-brand-mark img{width:37px!important;height:36px!important}
  .bavs-round-btn,.bavs-menu-btn{width:38px!important;height:38px!important;padding:0!important}
  .bavs-menu-label{display:none!important}
  .bavs-footer.site-footer{margin-top:44px!important;border-radius:24px 24px 0 0!important}
  .bavs-footer-shell{padding-top:16px!important}
  .bavs-footer-cta{margin-top:-34px!important;border-radius:18px!important}
  .bavs-footer-identity{align-items:flex-start!important}
  .bavs-footer-grid{gap:9px!important;padding-top:18px!important}
  .bavs-footer-links-v2{grid-template-columns:1fr 1fr!important}
  .bavs-footer-account{margin-top:26px!important}
}
@media(max-width:360px){
  .bavs-brand-copy{display:none!important}
  .bavs-footer-links-v2{grid-template-columns:1fr!important}
}
@media(prefers-reduced-motion:reduce){
  .bavs-nav-link,.bavs-lessons-popover a,.bavs-more-popover a,.bavs-round-btn,.bavs-header-icon-action,.bavs-user-pill,.bavs-footer-action{transition:none!important}
  .bavs-lessons-popover,.bavs-more-popover{animation:none!important}
}
/* v0.21.29 header avatar integration */
.bavs-user-avatar.has-photo{padding:0!important;overflow:hidden;background:#fff!important}
.bavs-user-avatar.has-photo img{width:100%;height:100%;display:block;object-fit:cover;border-radius:inherit}
