/* BONUSSA UI UPGRADE - public site */
:root{
  --bns-bg:#030406;
  --bns-card:#080b10;
  --bns-card-2:#10151d;
  --bns-line:rgba(255,215,120,.22);
  --bns-gold:#f6c760;
  --bns-gold-2:#ffe7a0;
  --bns-text:#f7f7f7;
  --bns-muted:rgba(255,255,255,.68);
  --bns-danger:#ff4d4d;
  --bns-radius:22px;
}

html{
  scroll-behavior:smooth;
}

body{
  background:
    radial-gradient(circle at 20% 0%, rgba(246,199,96,.14), transparent 34%),
    radial-gradient(circle at 90% 10%, rgba(255,255,255,.08), transparent 28%),
    linear-gradient(180deg, #050506 0%, #090b10 48%, #030406 100%) !important;
}

.bns-public-dock{
  position:fixed;
  left:50%;
  top:14px;
  transform:translateX(-50%);
  z-index:9997;
  width:min(1120px, calc(100% - 24px));
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:10px 12px;
  border:1px solid rgba(246,199,96,.26);
  border-radius:999px;
  background:rgba(6,8,12,.78);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  box-shadow:0 18px 55px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.06);
}

.bns-public-brand{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:max-content;
  color:#fff;
  text-decoration:none;
  font-weight:900;
  letter-spacing:.7px;
  font-size:15px;
}

.bns-public-brand-mark{
  width:34px;
  height:34px;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg, #ffe7a0, #b98220);
  color:#090909;
  font-weight:950;
  box-shadow:0 10px 26px rgba(246,199,96,.26);
}

.bns-public-links{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:7px;
  flex-wrap:wrap;
}

.bns-public-links a{
  color:rgba(255,255,255,.82);
  text-decoration:none;
  font-size:13px;
  font-weight:800;
  padding:10px 13px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.045);
  transition:transform .18s ease, background .18s ease, color .18s ease, border-color .18s ease;
}

.bns-public-links a:hover{
  transform:translateY(-1px);
  color:#111;
  background:linear-gradient(135deg, var(--bns-gold-2), var(--bns-gold));
  border-color:rgba(246,199,96,.65);
}

.bns-public-links a.bns-primary{
  color:#101010;
  background:linear-gradient(135deg, var(--bns-gold-2), var(--bns-gold));
  border-color:rgba(246,199,96,.75);
  box-shadow:0 10px 28px rgba(246,199,96,.22);
}

.bns-mobile-tabbar{
  display:none;
  position:fixed;
  left:12px;
  right:12px;
  bottom:12px;
  z-index:9998;
  grid-template-columns:repeat(4, 1fr);
  gap:7px;
  padding:8px;
  border-radius:24px;
  border:1px solid rgba(246,199,96,.24);
  background:rgba(6,8,12,.86);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  box-shadow:0 16px 50px rgba(0,0,0,.55);
}

.bns-mobile-tabbar a{
  display:flex;
  min-height:46px;
  align-items:center;
  justify-content:center;
  text-align:center;
  text-decoration:none;
  color:rgba(255,255,255,.82);
  border-radius:17px;
  font-size:12px;
  font-weight:900;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.08);
}

.bns-mobile-tabbar a.bns-primary{
  color:#101010;
  background:linear-gradient(135deg, var(--bns-gold-2), var(--bns-gold));
}

.bns-scrolltop{
  position:fixed;
  right:18px;
  bottom:92px;
  z-index:9996;
  width:46px;
  height:46px;
  border-radius:16px;
  border:1px solid rgba(246,199,96,.28);
  background:rgba(8,10,14,.82);
  color:var(--bns-gold-2);
  font-size:18px;
  font-weight:950;
  cursor:pointer;
  box-shadow:0 14px 38px rgba(0,0,0,.38);
  opacity:0;
  pointer-events:none;
  transform:translateY(10px);
  transition:.18s ease;
}

.bns-scrolltop.show{
  opacity:1;
  pointer-events:auto;
  transform:translateY(0);
}

.bf-card,
[class*="card"],
[class*="Card"]{
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}

.bf-card:hover{
  transform:translateY(-4px) scale(1.01) !important;
  box-shadow:0 24px 70px rgba(0,0,0,.46), 0 0 0 1px rgba(246,199,96,.18) !important;
}

.bf-button-zone,
.bf-modal-btn,
a[href],
button{
  -webkit-tap-highlight-color:transparent;
}

.bf-button-zone,
.bf-modal-btn,
button,
a[class*="btn"],
[class*="button"],
[class*="Button"]{
  border-radius:16px !important;
}

.bf-button-zone,
.bf-modal-btn.gold{
  box-shadow:0 12px 32px rgba(246,199,96,.20) !important;
}

.bns-focus-ring :focus-visible,
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible{
  outline:2px solid rgba(246,199,96,.95) !important;
  outline-offset:3px !important;
}

@media (max-width: 820px){
  body{
    padding-bottom:86px;
  }

  .bns-public-dock{
    top:10px;
    border-radius:22px;
    align-items:flex-start;
  }

  .bns-public-brand{
    font-size:13px;
  }

  .bns-public-links{
    display:none;
  }

  .bns-mobile-tabbar{
    display:grid;
  }

  .bns-scrolltop{
    right:16px;
    bottom:82px;
  }
}

@media (max-width: 480px){
  .bns-public-dock{
    width:calc(100% - 18px);
    padding:9px 10px;
  }

  .bns-public-brand-mark{
    width:32px;
    height:32px;
    border-radius:11px;
  }

  .bns-mobile-tabbar{
    left:8px;
    right:8px;
    bottom:8px;
  }

  .bns-mobile-tabbar a{
    min-height:44px;
    font-size:11px;
  }
}

/* BONUSSA UI UPGRADE - spacing fix */
body{
  padding-top:76px !important;
}

@media (max-width: 820px){
  body{
    padding-top:68px !important;
    padding-bottom:92px !important;
  }
}

@media (max-width: 480px){
  body{
    padding-top:64px !important;
    padding-bottom:88px !important;
  }
}
