/* Sidebar/rail parity, hero-bar hover label and share dialog. */

/* Even icon boxes so every rail item sits on one line. */
.sidebar nav button i.nav-body-icon{
  flex:0 0 auto;
  width:22px !important; height:22px !important;
  display:grid !important; place-items:center !important;
  overflow:hidden;
}
.sidebar nav button i.upper-body-icon{ background:transparent !important; }
.sidebar nav button i.upper-body-icon img{
  width:100% !important; height:100% !important; object-fit:contain; display:block;
}
.sidebar nav button b{ flex:0 0 auto; }

/* Share item in the rail. Keep the colorful emoji visually consistent with the other rail icons. */
.sidebar nav button[data-bactif-share] i{
  background:#1c8178;
  font-size:20px !important;
  line-height:1 !important;
}

/* Sidebar labels stay in the rail; never project large text over the hero image. */
.bactif-hero-label{ display:none !important; }

/* Share dialog */
.bactif-share-backdrop{
  position:fixed; inset:0; z-index:60; display:grid; place-items:center;
  padding:18px; background:rgba(3,20,27,.62); backdrop-filter:blur(6px);
}
.bactif-share-card{
  position:relative; width:min(360px, 100%); text-align:center; color:#eafffa;
  padding:22px 20px 20px; border-radius:20px;
  border:1px solid rgba(155,224,211,.32);
  background:linear-gradient(160deg, rgba(6,28,40,.98), rgba(7,93,85,.96));
  box-shadow:0 30px 70px rgba(3,25,33,.55), inset 0 1px rgba(255,255,255,.16);
}
.bactif-share-card h2{ margin:8px 0 2px; font:700 19px Georgia; }
.bactif-share-card p{ margin:0 0 14px; font-size:10px; letter-spacing:.06em; color:#a9d9d0; }
.bactif-share-logo{ width:44px; height:44px; margin:0 auto; object-fit:contain; }
.bactif-share-qr{ width:200px; height:200px; margin:0 auto; border-radius:14px; background:#fff; padding:8px; box-shadow:0 12px 26px rgba(3,25,33,.4); }
.bactif-share-actions{ display:flex; flex-wrap:wrap; justify-content:center; gap:7px; margin:16px 0 12px; }
.bactif-share-actions a{
  font-size:10px; font-weight:800; letter-spacing:.04em; color:#eafffa; text-decoration:none;
  padding:7px 11px; border-radius:999px; border:1px solid rgba(155,224,211,.35);
  background:rgba(255,255,255,.08);
}
.bactif-share-actions a:hover{ background:rgba(255,255,255,.18); }
.bactif-share-row{ display:flex; gap:8px; justify-content:center; }
.bactif-share-row button{
  cursor:pointer; font-size:10px; font-weight:800; color:#06302f; padding:9px 14px; border-radius:999px;
  border:0; background:linear-gradient(145deg,#eaff82,#73efd1); box-shadow:0 8px 18px rgba(65,240,190,.25);
}
.bactif-share-close{
  position:absolute; top:8px; right:10px; cursor:pointer; background:transparent; border:0;
  color:#cfeee7; font-size:20px; line-height:1;
}

/* Hero actions share one size and button treatment; color keeps the destinations distinct. */
.visual-hero .hero-copy > div > .hero-action{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-left:8px;
  padding:8px 12px;
  border:1px solid rgba(234,246,255,.72);
  border-radius:9px;
  font-family:inherit;
  font-size:12px !important;
  font-weight:800;
  line-height:1.2;
  text-decoration:none;
  text-shadow:0 1px 2px rgba(3,26,33,.9), 0 0 12px rgba(255,255,255,.18) !important;
  box-shadow:0 5px 14px rgba(3,26,33,.2), inset 0 1px rgba(255,255,255,.28);
}
.visual-hero .hero-copy > div > .hero-assessment-link{
  margin-left:0;
  background:linear-gradient(145deg,#0f6f68 0%,#0a3f52 100%);
  border-color:rgba(142,236,207,.78);
  color:#effff9 !important;
  -webkit-text-fill-color:#effff9 !important;
  text-shadow:0 1px 2px rgba(3,26,33,.9), 0 0 10px rgba(142,236,207,.22) !important;
}
.visual-hero .hero-copy > div > .hero-conditions-link{
  background:rgba(87,38,5,.3);
  border-color:rgba(255,190,112,.72);
  color:#ff9a3d !important;
  -webkit-text-fill-color:#ff9a3d !important;
  text-shadow:0 1px 2px rgba(3,26,33,.9), 0 0 12px rgba(255,154,61,.24) !important;
}
.visual-hero .hero-copy > div > .hero-assessment-link:hover,
.visual-hero .hero-copy > div > .hero-assessment-link:focus-visible{
  background:linear-gradient(145deg,#168c7d 0%,#0d5368 100%);
  border-color:#a5f7df;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
.visual-hero .hero-copy > div > .hero-conditions-link:hover,
.visual-hero .hero-copy > div > .hero-conditions-link:focus-visible{
  background:rgba(125,57,7,.55);
  color:#ffbd70 !important;
  -webkit-text-fill-color:#ffbd70 !important;
  text-shadow:0 1px 2px rgba(3,26,33,.95), 0 0 16px rgba(255,154,61,.42) !important;
}
@media (max-width:900px){
  .visual-hero .hero-copy > div > .hero-action{
    font-size:9px !important;
    padding:9px 12px;
  }
}
@media (max-width:590px){
  .visual-hero .hero-copy > div > .hero-action{ margin-left:0; }
}
