/* ==========================================================
   Ativa Movea - Visual Clean V13
   Objetivo: manter o padrão original do sistema e apenas refinar a estética.
   Não altera regras de venda, estoque, banco, login ou permissões.
   ========================================================== */
:root{
  --am-bg:#f8f5f3;
  --am-surface:#ffffff;
  --am-surface-soft:#fbf8f7;
  --am-border:#eadfe0;
  --am-text:#111827;
  --am-muted:#6b7280;
  --am-primary:#111827;
  --am-accent:#d9a8b4;
  --am-accent-strong:#b66f83;
  --am-success:#16a34a;
  --am-danger:#b91c1c;
  --am-warning:#b45309;
  --am-radius:18px;
  --am-radius-sm:12px;
  --am-shadow:0 14px 40px rgba(17,24,39,.07);
  --am-shadow-soft:0 8px 24px rgba(17,24,39,.05);
}

html{scroll-behavior:smooth;}
body{
  background:var(--am-bg) !important;
  color:var(--am-text);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

/* Área geral */
.app-shell,.shell,.layout,.page,.page-wrap,.main,.content,main{
  background:var(--am-bg);
}
main,.content,.main-content,.page-content{
  min-height:100vh;
}

/* Sidebar original, apenas mais polida */
.sidebar{
  background:linear-gradient(180deg,#17202b 0%,#111827 100%) !important;
  border-right:1px solid rgba(255,255,255,.06);
  box-shadow:8px 0 28px rgba(17,24,39,.08);
}
.sidebar .brand,
.sidebar .sidebar-brand,
.brand{
  border-bottom:1px solid rgba(255,255,255,.08);
  padding-bottom:18px;
}
.sidebar img{
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.18));
}
.sidebar small,
.sidebar .muted,
.sidebar .role{
  color:rgba(255,255,255,.68) !important;
}

/* Menu */
.sidebar nav,
nav.sidebar-nav{
  padding:14px 10px;
}
.sidebar a,
.sidebar .nav-item,
.nav-item{
  transition:background .18s ease, transform .18s ease, color .18s ease, border-color .18s ease;
}
.sidebar .nav-item,
.sidebar a.nav-item,
.sidebar nav a{
  border-radius:14px !important;
  margin:4px 8px;
  color:rgba(255,255,255,.80) !important;
  border:1px solid transparent;
}
.sidebar .nav-item:hover,
.sidebar a.nav-item:hover,
.sidebar nav a:hover{
  background:rgba(255,255,255,.08) !important;
  color:#fff !important;
  transform:translateX(2px);
  border-color:rgba(255,255,255,.08);
}
.sidebar .nav-item.active,
.sidebar .nav-item[aria-current="page"],
.sidebar nav a.active{
  background:rgba(217,168,180,.18) !important;
  color:#fff !important;
  border-color:rgba(217,168,180,.28);
}
.nav-icon{
  opacity:.95;
}
.sidebar-user{
  border-top:1px solid rgba(255,255,255,.08) !important;
  background:rgba(255,255,255,.03);
}
.avatar{
  box-shadow:0 8px 20px rgba(0,0,0,.18);
}

/* Cabeçalho das páginas */
header,.topbar,.page-header,.content-header{
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(12px);
  border-bottom:1px solid var(--am-border) !important;
}
h1,h2,h3{
  letter-spacing:-.025em;
  color:var(--am-text);
}
p,.text-muted,.muted,small{
  color:var(--am-muted);
}

/* Cards e painéis */
.card,.box,.panel,.widget,.summary-card,.stat-card,.table-card,
section:not(.sidebar section),.content-box{
  background:var(--am-surface) !important;
  border:1px solid var(--am-border) !important;
  border-radius:var(--am-radius) !important;
  box-shadow:var(--am-shadow-soft);
}
.card:hover,.box:hover,.panel:hover,.summary-card:hover,.stat-card:hover{
  box-shadow:var(--am-shadow);
}

/* Tabelas */
table{
  border-collapse:separate !important;
  border-spacing:0;
  width:100%;
}
thead th,table th{
  background:var(--am-surface-soft) !important;
  color:#516070 !important;
  font-size:12px;
  letter-spacing:.06em;
  text-transform:uppercase;
  border-bottom:1px solid var(--am-border) !important;
}
tbody td,table td{
  border-bottom:1px solid #f0e7e8 !important;
}
tbody tr:hover td{
  background:#fffafa;
}
table tr:last-child td{
  border-bottom:0 !important;
}
.table-responsive,.table-wrap{
  border-radius:var(--am-radius);
  overflow:hidden;
  border:1px solid var(--am-border);
  background:#fff;
}

/* Formulários */
input,select,textarea,
.form-control,.input,.select{
  border:1px solid #d9dfe8 !important;
  border-radius:12px !important;
  background:#fff !important;
  color:var(--am-text) !important;
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
input:focus,select:focus,textarea:focus,
.form-control:focus,.input:focus,.select:focus{
  outline:none !important;
  border-color:var(--am-accent-strong) !important;
  box-shadow:0 0 0 4px rgba(217,168,180,.22) !important;
}
label{
  color:#374151;
  font-weight:650;
}

/* Botões */
button,.btn,a.btn,.button,input[type="submit"]{
  border-radius:13px !important;
  font-weight:750 !important;
  transition:transform .16s ease, box-shadow .16s ease, background .16s ease, border-color .16s ease;
}
button:hover,.btn:hover,a.btn:hover,.button:hover,input[type="submit"]:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 22px rgba(17,24,39,.10);
}
.btn-primary,.primary,button.primary,input[type="submit"],.btn-dark{
  background:var(--am-primary) !important;
  border-color:var(--am-primary) !important;
  color:#fff !important;
}
.btn-secondary,.secondary{
  background:#fff !important;
  border:1px solid var(--am-border) !important;
  color:var(--am-text) !important;
}
.btn-danger,.danger,.delete,.btn-delete{
  background:#fee2e2 !important;
  border-color:#fecaca !important;
  color:#991b1b !important;
}
.btn-success,.success{
  background:#dcfce7 !important;
  border-color:#bbf7d0 !important;
  color:#166534 !important;
}

/* Alertas */
.alert,.notice,.msg,.message{
  border-radius:15px !important;
  border:1px solid var(--am-border) !important;
  box-shadow:var(--am-shadow-soft);
}
.alert-success,.success-message{
  background:#f0fdf4 !important;
  border-color:#bbf7d0 !important;
  color:#166534 !important;
}
.alert-danger,.alert-error,.error-message{
  background:#fef2f2 !important;
  border-color:#fecaca !important;
  color:#991b1b !important;
}
.alert-warning,.warning-message{
  background:#fffbeb !important;
  border-color:#fde68a !important;
  color:#92400e !important;
}

/* Badges */
.badge,.tag,.pill{
  border-radius:999px !important;
  padding:.32rem .62rem;
  font-weight:750;
}

/* Dashboard original */
.dashboard .card,
.dashboard-card,
.metric-card{
  min-height:88px;
}
.metric-card strong,.stat-card strong,.summary-card strong{
  font-size:28px;
  letter-spacing:-.04em;
}

/* Ajustes mobile */
@media (max-width: 900px){
  .sidebar{
    box-shadow:18px 0 48px rgba(0,0,0,.22);
  }
  main,.content,.main-content,.page-content{
    padding-left:14px !important;
    padding-right:14px !important;
  }
  .card,.box,.panel,.widget,section:not(.sidebar section){
    border-radius:16px !important;
  }
  table{font-size:13px;}
  .hide-mobile{display:none !important;}
}
