/* ===============================================
   Controle de Assuntos – V4.3 (CSS completo)
   Sticky do thead DESATIVADO por padrão
   e classe .table-sticky para ativar quando quiser
   =============================================== */
:root{
  /* Altura real da barra superior (ajuste se precisar) */
  --nav-h: 64px;

  --bg:#f5f7fb;--card:#fff;--text:#1d232f;--muted:#6b7280;--border:#e5e7eb;
  --brand:#0d6efd;--brand-600:#0b5ed7;--brand-700:#094db3;--brand-100:#e7f0ff;
  --success:#0a7d00;--error:#b00020;--warning:#b45309;
  --shadow:0 8px 28px rgba(16,24,40,.08);--radius:12px;
}
@media (prefers-color-scheme: dark){
  :root{
    --bg:#0f172a;--card:#0b1220;--text:#e5e7eb;--muted:#9ca3af;--border:#1f2937;
    --brand:#3b82f6;--brand-600:#2563eb;--brand-700:#1d4ed8;--brand-100:#0b1a33;
    --shadow:0 8px 28px rgba(0,0,0,.35);
  }
}

*{box-sizing:border-box}html,body{height:100%}
body{
  margin:0;
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";
  background:var(--bg);color:var(--text);line-height:1.5;padding:20px;
}
a{color:var(--brand);text-decoration:none}
a:hover{filter:brightness(.9)}

/* ---------- Layout ---------- */
.container{
  max-width:1200px;margin:0 auto;background:var(--card);
  border:1px solid var(--border);border-radius:var(--radius);
  box-shadow:var(--shadow);padding:20px 22px;
}
.navbar{
  min-height:var(--nav-h);
  position:sticky;top:0;z-index:5;display:flex;gap:12px;align-items:center;
  padding:10px;margin:-10px -10px 18px -10px;border-radius:calc(var(--radius) - 6px);
  background:linear-gradient(135deg,var(--brand),#6a88ff);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);
}
.navbar a{
  padding:8px 12px;background:rgba(255,255,255,.16);color:#fff;border-radius:10px;
  border:1px solid rgba(255,255,255,.15);backdrop-filter:blur(4px);
  transition:transform .05s ease, background .2s ease;
}
.navbar a:hover{background:rgba(255,255,255,.24);transform:translateY(-1px)}
.navbar span{color:#eef2ff;font-size:.95rem}
.navbar span a{background:rgba(0,0,0,.25);color:#fff;padding:4px 8px;border-radius:8px}

h1,h2,h3{margin:8px 0 12px 0}

/* ---------- Alerts ---------- */
.success,.error{
  padding:10px 12px;border-radius:10px;display:inline-block;font-weight:600;
  box-shadow:0 1px 0 rgba(0,0,0,.02) inset
}
.success{background:#e8f8ec;color:var(--success);border:1px solid #c9efcf}
.error{background:#fdecef;color:var(--error);border:1px solid #f8c6cf}

/* ---------- Forms ---------- */
input,select,textarea{
  width:100%;padding:12px;margin:10px 0;border:1px solid var(--border);
  border-radius:10px;background:var(--card);color:var(--text);
  outline:none;transition:border .15s ease,box-shadow .15s ease;
}
input:focus,select:focus,textarea:focus{
  border-color:var(--brand);
  box-shadow:0 0 0 3px color-mix(in srgb, var(--brand) 20%, transparent)
}
textarea{min-height:110px;resize:vertical}
button{
  background:var(--brand);color:#fff;border:none;border-radius:10px;
  padding:12px 16px;cursor:pointer;font-weight:600;letter-spacing:.2px;
  box-shadow:0 1px 0 rgba(255,255,255,.12) inset,0 1px 2px rgba(0,0,0,.05);
  transition:transform .06s ease,filter .2s ease
}
button:hover{filter:brightness(.95)}
button:active{transform:translateY(1px)}
.btn{
  display:inline-block;padding:10px 14px;border-radius:10px;border:1px solid var(--border);
  background:linear-gradient(180deg,#fff,#fafafa);color:var(--text)
}

/* ---------- Tabela ---------- */
table{
  width:100%;border-collapse:collapse;margin-top:10px;border:1px solid var(--border);
  border-radius:10px;overflow:hidden
}
thead th{
  text-align:left;padding:12px 10px;font-weight:700;letter-spacing:.3px;
  background:var(--brand);color:#fff;
}
tbody td{padding:12px 10px;border-bottom:1px solid var(--border);vertical-align:top}
tbody tr:hover{background:color-mix(in srgb, var(--brand) 4%, #fff)}
tbody tr:last-child td{border-bottom:none}

/* ---------- Sticky DESATIVADO globalmente (evita sumir linha) ---------- */
table thead th{
  position: static !important;
  top: auto !important;
  z-index: auto !important;
  background: var(--brand);
}

/* ---------- Sticky seguro OPCIONAL (use quando quiser) ----------
   Para ativar em uma tabela específica, adicione class="table-sticky" */
.table-sticky thead th{
  position: sticky;
  top: var(--nav-h);
  z-index: 2;
  background: var(--brand);
}

/* ---------- Badges de status ---------- */
.badge{display:inline-block;padding:4px 10px;border-radius:999px;font-size:.85rem;border:1px solid transparent;background:#eef2ff;color:#243b8a}
.badge-open{background:#e8f6ff;color:#0b5ed7;border-color:#cde7ff}
.badge-progress{background:#fff6e6;color:#b45309;border-color:#fee3b3}
.badge-done{background:#e8f8ec;color:#0a7d00;border-color:#c9efcf}

/* ---------- Prioridade badges ---------- */
.prio-badge{display:inline-block;padding:4px 10px;border-radius:999px;font-size:.85rem;border:1px solid transparent}
.prio-high{background:#fee2e2;border-color:#fecaca;color:#991b1b}
.prio-med{background:#fef3c7;border-color:#fde68a;color:#92400e}
.prio-low{background:#dcfce7;border-color:#bbf7d0;color:#166534}

/* ---------- Timeline (ver_assunto) ---------- */
.timeline{margin-top:12px}
.timeline-item{display:flex;gap:12px;margin-bottom:14px}
.timeline-meta{min-width:230px;font-size:.92rem;color:var(--muted);padding-top:6px}
.timeline-bubble{
  position:relative;background:linear-gradient(180deg,#fff,#fafafa);
  border:1px solid var(--border);border-radius:14px;padding:12px 14px;box-shadow:var(--shadow)
}
.timeline-bubble::before{
  content:"";position:absolute;left:-8px;top:14px;width:0;height:0;
  border-top:8px solid transparent;border-bottom:8px solid transparent;border-right:8px solid var(--border)
}
.timeline-bubble::after{
  content:"";position:absolute;left:-7px;top:14px;width:0;height:0;
  border-top:8px solid transparent;border-bottom:8px solid transparent;border-right:8px solid #fff
}
.timeline-files{margin-top:8px;font-size:.95rem}
.timeline-files a{
  display:inline-block;padding:4px 8px;margin:2px 8px 0 0;
  background:var(--brand-100);border:1px solid #cfe0ff;border-radius:8px;color:var(--brand-700)
}

/* ---------- Lista de anexos ---------- */
.attachments{margin-top:22px}.attachments h2{margin:14px 0 8px 0}
.file-list th{background:#edf3ff;color:#233b77}.file-list td,.file-list th{padding:10px 12px}

/* ---------- Filtros / pager ---------- */
.filters{
  display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:12px;
  padding:10px;background:linear-gradient(180deg,#fff,#fafafa);
  border:1px solid var(--border);border-radius:12px
}
.pager{margin-top:14px;display:flex;gap:10px;align-items:center}
.pager a{background:#eef2ff;border:1px solid #dbe4ff;border-radius:8px;padding:8px 12px;color:#233b77}

/* ---------- Chips/KPI ---------- */
.kpis{display:flex;gap:10px;flex-wrap:wrap;margin:6px 0 10px}
.kpi{
  display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--border);
  border-radius:999px;background:#fff;text-decoration:none;color:var(--text)
}
.kpi span{background:var(--brand-100);border:1px solid #cfe0ff;border-radius:999px;padding:2px 8px}
.kpi.active{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand) 18%, transparent)}

/* ---------- Utils ---------- */
.small{font-size:.9rem}.m-0{margin:0}.mt-1{margin-top:6px}.mt-2{margin-top:10px}.mt-3{margin-top:14px}
.text-muted{color:var(--muted)}.center{text-align:center}

/* ---------- Responsivo ---------- */
@media (max-width:640px){
  body{padding:12px}.container{padding:16px}.navbar{flex-wrap:wrap;gap:8px}
  thead{display:none} /* Mobile: card rows */
  table,tbody,tr,td{display:block;width:100%}
  tbody tr{border:1px solid var(--border);border-radius:10px;padding:8px;margin-bottom:10px}
  tbody td{border-bottom:none;padding:8px 6px}
  tbody td::before{content:attr(data-label);display:block;font-size:.82rem;color:var(--muted);margin-bottom:4px}
}
