:root{
  --black:#06080D;
  --black2:#0A0F1B;

  /* Panels */
  --panel:#0E1930;
  --panel2:#122449;

  /* Accents (BRSTORE Azul + Verde) */
  --blue:#1E90FF;
  --blue2:#0B5ED7;
  --cyan:#6CC6FF;

  --green:#19D37A;
  --green2:#39E28F;

  /* Text */
  --text:#F5F8FF;
  --muted:#C9D6F0;
  --muted2:#9FB0CE;

  --border:rgba(255,255,255,.14);
  --glowB:rgba(30,144,255,.38);
  --glowG:rgba(25,211,122,.28);
}

html,body{height:100%;}
body{
  background:
    radial-gradient(1000px 650px at 18% 10%, rgba(30,144,255,.42), transparent 60%),
    radial-gradient(900px 520px at 82% 22%, rgba(25,211,122,.22), transparent 60%),
    radial-gradient(820px 520px at 55% 95%, rgba(11,94,215,.22), transparent 60%),
    linear-gradient(155deg, var(--black) 0%, var(--black2) 55%, #070A12 100%);
  color:var(--text);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ===== CONTRASTE GLOBAL ===== */
body, .card-br, .sidebar, .table, .form-label, .nav, nav, p, span, div { color: var(--text); }
.footer-note, .text-muted, small { color: rgba(201,214,240,.92) !important; }
.text-dark, .text-secondary { color: var(--text) !important; }

a{color:var(--cyan); text-decoration:none;}
a:hover{color:#A7E3FF;}

/* Header */
.brstore-header{
  position:sticky; top:0; z-index:1000;
  background: rgba(6,8,13,.82);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(30,144,255,.26);
  box-shadow: 0 12px 36px rgba(0,0,0,.35);
}
.brand-logo{
  height:34px;
  filter: drop-shadow(0 10px 22px rgba(30,144,255,.26));
}

/* Cards */
.card-br{
  background: linear-gradient(180deg, rgba(18,36,73,.92), rgba(10,15,27,.90));
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 22px;
  box-shadow:
    0 0 0 1px rgba(30,144,255,.14),
    0 0 38px rgba(30,144,255,.12),
    0 28px 70px rgba(0,0,0,.55);
  position:relative;
  overflow:hidden;
}
.card-br::before{
  content:"";
  position:absolute; inset:-2px;
  background: linear-gradient(135deg, rgba(30,144,255,.22), rgba(25,211,122,.14), transparent 65%);
  pointer-events:none;
}

/* ===== SIDEBAR (legível no mobile) ===== */
.sidebar{
  background: linear-gradient(180deg, #0F1E36, #0A1424);
  border-right: 1px solid rgba(30,144,255,.35);
  box-shadow:
    inset -1px 0 0 rgba(255,255,255,.06),
    0 0 30px rgba(0,0,0,.45);
  min-height: calc(100vh - 64px);
}
.sidebar nav a{
  display:flex;
  align-items:center;
  gap:.75rem;
  padding:1rem 1.1rem;
  color:#F5F8FF !important;
  font-weight:700;
  border-radius:16px;
  border:1px solid transparent;
  background:transparent;
  transition: all .18s ease;
}
.sidebar nav a i{
  color: var(--cyan) !important;
  opacity: 1 !important;
}
.sidebar nav a:hover{
  background: linear-gradient(135deg, rgba(30,144,255,.20), rgba(25,211,122,.12));
  border-color: rgba(30,144,255,.45);
  box-shadow: 0 0 18px rgba(30,144,255,.25);
}
.sidebar nav .active{
  background: linear-gradient(135deg, var(--blue), var(--green));
  color:#FFFFFF !important;
  font-weight:900;
  box-shadow:
    0 0 0 1px rgba(255,255,255,.25),
    0 0 28px rgba(30,144,255,.45);
}
.sidebar nav .active i{color:#FFFFFF !important;}

/* Badges */
.badge-br{
  background: rgba(30,144,255,.18);
  border: 1px solid rgba(30,144,255,.38);
  box-shadow: 0 0 18px rgba(30,144,255,.14);
  color: var(--text);
}
/* mantemos o nome da classe antiga, mas a cor vira VERDE */
.badge-orange, .badge-green{
  background: rgba(25,211,122,.16);
  border: 1px solid rgba(25,211,122,.46);
  box-shadow: 0 0 18px rgba(25,211,122,.14);
  color: var(--text);
}

/* Tables */
.table-darkish{
  --bs-table-bg: transparent;
  --bs-table-color: var(--text);
  --bs-table-border-color: rgba(255,255,255,.12);
}
.table > :not(caption) > * > *{ padding: .9rem .9rem; }
.table thead th{
  color: rgba(245,248,255,.98) !important;
  background: linear-gradient(135deg, rgba(30,144,255,.16), rgba(25,211,122,.10));
  border-bottom-color: rgba(255,255,255,.12);
}
.table td{ color: var(--text) !important; }
.table-hover tbody tr:hover{ background: rgba(30,144,255,.10); }

/* Inputs */
.form-control, .form-select, textarea.form-control{
  background: rgba(6,8,13,.70) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  color: var(--text) !important;
  border-radius: 16px;
}
.form-control::placeholder{color: rgba(201,214,240,.72);}
.form-control:focus, .form-select:focus, textarea.form-control:focus{
  border-color: var(--blue) !important;
  box-shadow: 0 0 0 3px rgba(30,144,255,.28), 0 0 22px rgba(30,144,255,.18);
}

/* Buttons: Azul (principal) + Verde (secundário/destrutivo) */
.btn-br{
  background: linear-gradient(135deg, var(--blue2), var(--blue));
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 16px;
  font-weight: 900;
  letter-spacing: .35px;
  color:white;
  box-shadow:
    0 0 0 1px rgba(30,144,255,.30),
    0 16px 44px rgba(30,144,255,.32),
    0 0 38px rgba(30,144,255,.24);
  transition: all .18s ease;
}
.btn-br:hover{
  filter:brightness(1.08);
  transform: translateY(-1px);
  box-shadow:
    0 0 0 1px rgba(30,144,255,.38),
    0 20px 54px rgba(30,144,255,.36),
    0 0 46px rgba(30,144,255,.30);
}

/* Mantemos a classe .btn-orange para não mudar HTML, mas agora é VERDE */
.btn-orange, .btn-green{
  background: linear-gradient(135deg, var(--green), var(--green2));
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 16px;
  font-weight: 900;
  letter-spacing: .35px;
  color:white;
  box-shadow:
    0 0 0 1px rgba(25,211,122,.34),
    0 16px 44px rgba(25,211,122,.30),
    0 0 38px rgba(25,211,122,.22);
  transition: all .18s ease;
}
.btn-orange:hover, .btn-green:hover{
  filter:brightness(1.06);
  transform: translateY(-1px);
  box-shadow:
    0 0 0 1px rgba(25,211,122,.40),
    0 20px 54px rgba(25,211,122,.34),
    0 0 46px rgba(25,211,122,.28);
}

.btn-outline-br{
  border: 1px solid rgba(25,211,122,.56);
  color: var(--text) !important;
  border-radius: 16px;
  background: rgba(25,211,122,.12);
  box-shadow: 0 0 0 1px rgba(25,211,122,.18), 0 0 22px rgba(25,211,122,.14);
  transition: all .18s ease;
}
.btn-outline-br:hover{
  background: rgba(25,211,122,.18);
  border-color: rgba(25,211,122,.72);
  box-shadow: 0 0 0 1px rgba(25,211,122,.24), 0 0 30px rgba(25,211,122,.18);
}

.alert{ border-radius: 16px; border-color: rgba(255,255,255,.12); }
.footer-note{color: rgba(230,238,249,.88); font-size:.95rem;}

/* Login */
.login-bg{
  min-height:100vh;
  display:flex; align-items:center; justify-content:center;
  background:
    radial-gradient(1000px 650px at 22% 10%, rgba(30,144,255,.44), transparent 60%),
    radial-gradient(900px 520px at 78% 22%, rgba(25,211,122,.22), transparent 60%),
    linear-gradient(155deg, var(--black) 0%, var(--black2) 55%, #070A12 100%);
}

/* Mobile */
@media (max-width: 576px){
  .card-br{ border-radius: 20px; }
  .table > :not(caption) > * > *{ padding: .78rem .78rem; }
  .brand-logo{ height:30px; }
  .sidebar{ min-height: auto; }
  .sidebar nav a{ padding: .95rem 1rem; }
}
