/* Painel de leitura. Escuro para combinar com o deck, e legivel no celular —
   e de onde alguem normalmente vai conferir se a licenca esta valendo. */
:root {
  --fundo: #14161a;
  --cartao: #1c1f26;
  --linha: #2a2f39;
  --texto: #e6e8ec;
  --fraco: #8b93a3;
  --boa: #4ade80;
  --ruim: #f87171;
  --destaque: #7dd3fc;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  background: var(--fundo);
  color: var(--texto);
  font: 15px/1.55 system-ui, "Segoe UI", Roboto, sans-serif;
}

.barra {
  display: flex;
  align-items: center;
  gap: 22px;
  flex-wrap: wrap;
  padding: 14px 24px;
  background: var(--cartao);
  border-bottom: 1px solid var(--linha);
}
.marca { font-size: 15px; letter-spacing: .2px; }
.barra nav { display: flex; gap: 16px; }
.barra a { color: var(--fraco); text-decoration: none; padding: 4px 0; }
.barra a:hover { color: var(--texto); }
.barra a.ativo { color: var(--destaque); border-bottom: 2px solid var(--destaque); }
.barra .sair { margin-left: auto; }

button {
  font: inherit;
  cursor: pointer;
  padding: 7px 16px;
  border-radius: 7px;
  border: 1px solid var(--linha);
  background: #262b34;
  color: var(--texto);
}
button:hover { border-color: var(--fraco); }

main { max-width: 1060px; margin: 0 auto; padding: 24px; }

h1 { font-size: 22px; margin: 0 0 14px; }
h2 { font-size: 16px; margin: 32px 0 12px; color: var(--fraco); font-weight: 600; }

a { color: var(--destaque); }

.cartao {
  background: var(--cartao);
  border: 1px solid var(--linha);
  border-radius: 10px;
  padding: 18px 20px;
}
.cartao.vazio { color: var(--fraco); }

.resumo {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 14px;
  margin-bottom: 8px;
}
.numero { display: flex; flex-direction: column; gap: 4px; }
.numero .rotulo { font-size: 12.5px; color: var(--fraco); text-transform: uppercase; letter-spacing: .5px; }
.numero strong { font-size: 26px; font-weight: 600; }
.numero.atencao strong { color: var(--ruim); }

table {
  width: 100%;
  border-collapse: collapse;
  background: var(--cartao);
  border: 1px solid var(--linha);
  border-radius: 10px;
  overflow: hidden;
  font-size: 14px;
}
th, td { text-align: left; padding: 10px 14px; border-bottom: 1px solid var(--linha); vertical-align: top; }
th { font-size: 12.5px; color: var(--fraco); text-transform: uppercase; letter-spacing: .4px; font-weight: 600; }
tbody tr:last-child td { border-bottom: none; }
tbody tr:hover { background: #20242c; }
td.notas { max-width: 320px; color: var(--fraco); }

code { font-family: "Cascadia Mono", Consolas, monospace; font-size: 12.5px; }
.fraco { color: var(--fraco); }

.etiqueta {
  display: inline-block;
  padding: 2px 9px;
  border-radius: 999px;
  font-size: 12px;
  border: 1px solid currentColor;
}
.etiqueta.boa { color: var(--boa); }
.etiqueta.ruim { color: var(--ruim); }

.ficha { display: grid; grid-template-columns: max-content 1fr; gap: 8px 22px; margin: 0; }
.ficha dt { color: var(--fraco); font-size: 13.5px; }
.ficha dd { margin: 0; }

.ajuda { color: var(--fraco); font-size: 13.5px; }
.voltar { margin-top: 0; }
.alerta { color: var(--ruim); }

.paginas { display: flex; gap: 18px; align-items: center; margin: 18px 0; color: var(--fraco); }

.entrada { max-width: 340px; margin: 60px auto; display: flex; flex-direction: column; gap: 14px; }
.entrada label { display: flex; flex-direction: column; gap: 6px; font-size: 13.5px; color: var(--fraco); }
.entrada input {
  font: inherit;
  padding: 9px 12px;
  border-radius: 7px;
  border: 1px solid var(--linha);
  background: var(--fundo);
  color: var(--texto);
}
.entrada input:focus { outline: none; border-color: var(--destaque); }

footer {
  max-width: 1060px;
  margin: 0 auto;
  padding: 28px 24px 40px;
  color: var(--fraco);
  font-size: 13px;
}

@media (max-width: 640px) {
  main { padding: 16px; }
  table { display: block; overflow-x: auto; }
}
