/* VisualDesk - tema moderno */
:root{
  --gv-primary:#0f3d5e;
  --gv-primary-2:#155e8f;
  --gv-accent:#f47b20;
  --gv-accent-2:#ff9a3d;
  --gv-bg:#eef4f8;
  --gv-surface:#ffffff;
  --gv-surface-2:#f8fafc;
  --gv-text:#0f172a;
  --gv-muted:#64748b;
  --gv-border:#dbe4ec;
  --gv-danger:#dc2626;
  --gv-success:#16a34a;
  --gv-warning:#f59e0b;
  --gv-info:#2563eb;
  --gv-radius:18px;
  --gv-shadow:0 18px 45px rgba(15,23,42,.10);
  --gv-shadow-soft:0 10px 25px rgba(15,23,42,.08);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;
  min-height:100vh;
  font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;
  background:
    radial-gradient(circle at top left,rgba(244,123,32,.16),transparent 34rem),
    radial-gradient(circle at top right,rgba(15,61,94,.16),transparent 32rem),
    linear-gradient(180deg,#f8fbfd 0%,var(--gv-bg) 100%);
  color:var(--gv-text);
}
a{color:var(--gv-primary-2);text-decoration:none;font-weight:700}
a:hover{color:var(--gv-accent)}
.container{width:min(100% - 32px,1250px);margin:0 auto;padding:28px 0 42px}
.brand-bar{width:min(100% - 32px,1250px);margin:18px auto 0;display:flex;justify-content:center;align-items:center}
.brand-link{display:inline-flex;align-items:center;justify-content:center;padding:10px 18px;border-radius:20px;background:rgba(255,255,255,.74);box-shadow:var(--gv-shadow-soft);backdrop-filter:blur(10px)}
.brand-logo,.logo{display:block;max-width:230px;width:min(230px,68vw);height:auto;object-fit:contain}
.topbar,.top-card{
  width:min(100% - 32px,1250px);
  margin:18px auto 0;
  background:linear-gradient(135deg,var(--gv-primary),#0b2538);
  color:#fff;
  border-radius:24px;
  padding:16px 20px;
  box-shadow:var(--gv-shadow);
}
.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px}
.top-card>div{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.top-card .logo{margin:0;max-width:180px;width:180px;filter:drop-shadow(0 8px 14px rgba(0,0,0,.18))}
.top-card p{margin:0;color:#dbeafe;line-height:1.45}
.menu,.topbar nav{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.menu a,.topbar a{
  color:#fff!important;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  padding:10px 14px!important;
  text-decoration:none!important;
  transition:.18s ease;
}
.menu a:hover,.topbar a:hover,.menu a.ativo{background:var(--gv-accent);color:#fff!important;transform:translateY(-1px)}
h1,h2,h3{letter-spacing:-.03em;margin:0 0 16px;color:#0f172a}
h1{font-size:clamp(30px,4vw,46px)}h2{font-size:clamp(22px,2.6vw,30px)}h3{font-size:20px}
.card,.box,.chamado,.login-card,.stat,.tabela-box{
  background:rgba(255,255,255,.92)!important;
  border:1px solid rgba(219,228,236,.88);
  border-radius:var(--gv-radius)!important;
  box-shadow:var(--gv-shadow-soft)!important;
}
.card,.box,.chamado,.login-card,.stat{padding:24px!important;margin-bottom:18px}
.cards,.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin-bottom:28px}
.cards .card,.stat{position:relative;overflow:hidden}
.cards .card:before,.stat:before{content:"";position:absolute;inset:0 0 auto 0;height:5px;background:linear-gradient(90deg,var(--gv-accent),var(--gv-primary-2))}
.numero,.stat strong{font-size:38px!important;font-weight:900;color:var(--gv-primary);line-height:1.1}
button,.btn,input[type=submit]{
  border:0;
  border-radius:12px!important;
  padding:11px 16px!important;
  background:linear-gradient(135deg,var(--gv-primary-2),var(--gv-primary));
  color:#fff!important;
  font-weight:800;
  cursor:pointer;
  box-shadow:0 10px 20px rgba(15,61,94,.18);
  transition:.18s ease;
  display:inline-block;
}
button:hover,.btn:hover,input[type=submit]:hover{transform:translateY(-1px);filter:brightness(1.05);color:#fff!important}
.btn-secondary,.btn.secondary{background:#475569!important}.btn-danger,.btn.danger,.btn-excluir,.btn-vermelho{background:var(--gv-danger)!important}.btn-chat{background:#7c3aed!important}.btn-atender,.btn-azul{background:var(--gv-primary-2)!important}
input,select,textarea{
  width:100%;
  border:1px solid var(--gv-border)!important;
  border-radius:12px!important;
  padding:12px 13px!important;
  background:#fff;
  color:var(--gv-text);
  outline:none;
  margin:6px 0 14px;
}
input:focus,select:focus,textarea:focus{border-color:var(--gv-accent)!important;box-shadow:0 0 0 4px rgba(244,123,32,.16)}
label{font-weight:800;color:#334155;display:block;margin-bottom:3px}
.tabela-box{overflow:auto!important;margin-top:12px}
table,.table{width:100%;border-collapse:separate!important;border-spacing:0}
th,td,.table th,.table td{padding:14px!important;border-bottom:1px solid var(--gv-border)!important;text-align:left;vertical-align:middle}
th,.table th{background:#f8fafc!important;color:#334155;font-size:13px;text-transform:uppercase;letter-spacing:.04em}
tr:hover td{background:#fbfdff}.problema{max-width:380px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.status,.badge{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:6px 12px!important;border-radius:999px!important;font-size:12px!important;font-weight:900;color:#fff}
.status-aberto,.aberto{background:#2563eb!important;color:#fff!important}.status-atendimento,.andamento{background:#f59e0b!important;color:#111827!important}.status-aguardando{background:#0ea5e9!important;color:#fff!important}.status-finalizado,.finalizado{background:#16a34a!important;color:#fff!important}.urgente{background:#fee2e2!important;color:#991b1b!important}.normal{background:#e0f2fe!important;color:#075985!important}.baixa{background:#f1f5f9!important;color:#475569!important}
.acoes,.actions{display:flex;gap:9px;flex-wrap:wrap;align-items:center}.alert,.erro{background:#fff1f2!important;color:#991b1b!important;border:1px solid #fecdd3;border-radius:12px!important;padding:12px!important}.success{background:#ecfdf5!important;color:#065f46!important;border:1px solid #bbf7d0;border-radius:12px!important;padding:12px!important}.small{color:var(--gv-muted);font-size:13px}
hr{border:0;border-top:1px solid var(--gv-border);margin:22px 0}
.login-wrapper{max-width:460px;margin:42px auto;padding:0 14px}.login-card{position:relative;overflow:hidden}.login-card:before{content:"";position:absolute;inset:0 0 auto 0;height:6px;background:linear-gradient(90deg,var(--gv-accent),var(--gv-primary-2))}.login-title{text-align:center}.login-subtitle{text-align:center;color:var(--gv-muted)}
@media(max-width:768px){.container{width:100%;padding:18px 14px}.topbar,.top-card{width:calc(100% - 24px);border-radius:18px}.topbar,.top-card>div{align-items:flex-start;flex-direction:column}.menu a,.topbar a{padding:9px 12px!important}.cards,.grid{grid-template-columns:1fr}.brand-logo,.logo{max-width:180px}table{min-width:760px}.card,.box,.chamado,.login-card,.stat{padding:18px!important}}


/* VisualDesk - correção definitiva para exibir o botão Sair */
.menu a[href*="logout"], .menu a.btn-sair, .topbar a[href*="logout"], .topbar a.btn-sair {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  visibility: visible !important;
  opacity: 1 !important;
  background: #dc2626 !important;
  color: #ffffff !important;
  border: 1px solid #b91c1c !important;
  border-radius: 999px !important;
  padding: 10px 16px !important;
  font-weight: 900 !important;
  text-decoration: none !important;
  box-shadow: 0 8px 18px rgba(220,38,38,.22) !important;
}
.menu a[href*="logout"]:hover, .menu a.btn-sair:hover, .topbar a[href*="logout"]:hover, .topbar a.btn-sair:hover {
  background: #b91c1c !important;
  color: #ffffff !important;
}


/* CORRECAO MENU - fonte preta */
.menu a,
.topbar a,
.container > .menu a {
    color: #000000 !important;
}

.menu a:visited,
.menu a:active,
.menu a:focus,
.topbar a:visited,
.topbar a:active,
.topbar a:focus,
.container > .menu a:visited,
.container > .menu a:active,
.container > .menu a:focus {
    color: #000000 !important;
}

.menu a:hover,
.topbar a:hover,
.container > .menu a:hover {
    color: #000000 !important;
}

/* Mantem o botao sair destacado, mas tambem com fonte preta conforme solicitado */
.menu a[href*="logout"],
.menu a.btn-sair,
.topbar a[href*="logout"],
.topbar a.btn-sair {
    color: #000000 !important;
}
