/* Credilar — identidade unificada (marinho + amarelo). Carregar depois de credit.css. */
:root{
  --navy:#17213e;--navy-2:#222e52;--amber:#f1ad00;--amber-2:#ffbf15;--amber-ink:#8f6200;
  --amber-soft:#fff7e0;--muted:#687086;--line:#e0e3ed;--bg:#f6f7fb;--blue:#8f6200;
  --ok:#23794a;--ok-soft:#eaf6ef;--warn:#8a5a00;--warn-soft:#fff3d6;--info:#3d4766;--info-soft:#eef0f6;
  --radius:14px;--focus:0 0 0 3px #f1ad0055;
}
body{color:var(--navy);-webkit-font-smoothing:antialiased}
a{color:var(--amber-ink)}
:focus-visible{outline:3px solid var(--amber);outline-offset:3px}

/* Botões */
.primary{background:var(--amber);color:var(--navy);border:1px solid #e5a300;border-radius:10px;font-weight:700;transition:background .15s,transform .15s}
.primary:hover:not(:disabled){background:var(--amber-2)}
.primary:active:not(:disabled){transform:translateY(1px)}
.secondary{border:1px solid var(--line);border-radius:10px;color:var(--navy);background:#fff;font-weight:500;transition:background .15s,border-color .15s}
.secondary:hover:not(:disabled){background:var(--bg);border-color:#cfd3e0}
.link{color:var(--amber-ink)}

/* Campos */
.access-form input,.access-form select,.access-form textarea,.admin-filters input,.admin-filters select,.tablehead input,.cpf-key-label input{border:1px solid #d9dce6;border-radius:10px;background:#fff;color:var(--navy);transition:border-color .15s,box-shadow .15s}
.access-form input:focus,.access-form select:focus,.access-form textarea:focus,.admin-filters input:focus,.admin-filters select:focus{outline:none;border-color:var(--amber);box-shadow:var(--focus)}
.access-form label{color:var(--navy)}
input[type=checkbox],input[type=radio]{accent-color:var(--amber)}

/* ---------- Telas de acesso (login, cadastro, recuperação) ---------- */
.access-brand{background:radial-gradient(120% 80% at 100% 0%,#2a3763 0%,transparent 60%),radial-gradient(90% 60% at 0% 100%,#f1ad0022 0%,transparent 60%),var(--navy)}
.access-logo{display:flex!important;align-items:center;gap:14px;font-size:inherit!important;letter-spacing:0!important;color:#fff;text-decoration:none}
.access-brand .access-logo span{color:#fff}
.access-logo .portal-brand-mark{width:44px;height:48px;flex-shrink:0}
.access-logo strong{display:block;font-size:28px;letter-spacing:-.8px;line-height:1}
.access-logo small{display:block;font-size:10px;letter-spacing:2.5px;color:#aab1c6;margin-top:6px}
.access-brand h1{color:#fff}
.access-brand p{color:#c4c9d8}
.access-points{color:#e4e7f0}
.access-points span{display:flex;gap:10px;align-items:center}
.access-points b{color:var(--amber)}
.access-brand small{color:#9aa1b8}
.access-body{background:#fff}
.access-box .eyebrow{color:var(--amber-ink)}
.access-box h1{color:var(--navy);letter-spacing:-.8px}
.access-box .primary{padding:15px;font-size:15px}
.access-divider{border-color:var(--line);color:var(--muted)}
.access-notice{background:var(--amber-soft);color:#6b4b00}
.state-icon{background:var(--amber-soft);color:var(--amber-ink)}
.access-error{color:#b03a2e}

/* ---------- Área logada ---------- */
.portal-shell .section{border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 1px 2px #17213e08,0 8px 24px #17213e06}
.portal-shell .intro h1{letter-spacing:-.8px}
.portal-shell .portal-nav-item.active{background:#fff;color:var(--navy);font-weight:600;box-shadow:inset 3px 0 0 var(--amber),0 1px 3px #17213e10}
.portal-shell .portal-nav-item:focus-visible,.admin-metric:focus-visible{outline:3px solid var(--amber);outline-offset:2px}

/* Tabelas */
.portal-shell table{font-variant-numeric:tabular-nums}
.portal-shell th{background:var(--bg);color:var(--muted);font-weight:600;letter-spacing:.8px;border-bottom:1px solid var(--line)}
.portal-shell th:first-child{border-top-left-radius:10px}.portal-shell th:last-child{border-top-right-radius:10px}
.portal-shell tbody tr{transition:background .12s}
.portal-shell tbody tr:hover{background:#fafbfd}
.portal-shell td{border-color:#eceef4}
.portal-shell td .secondary{padding:8px 14px;font-size:12px}

/* Etiquetas de situação */
.status{border-radius:999px;padding:5px 11px;font-weight:600;background:var(--info-soft);color:var(--info)}
.status.green{background:var(--ok-soft);color:var(--ok)}
.status.orange{background:var(--warn-soft);color:var(--warn)}
.admin-permission-tags span{border-radius:999px;padding:5px 11px;font-weight:500}

/* Avisos */
.note{background:var(--amber-soft);border:1px solid #f5e1a6;color:#5e4500;border-radius:10px}

/* Painel de controle */
.admin-metric{border-radius:var(--radius);transition:border-color .15s,box-shadow .15s}
.admin-metric:hover{border-color:#cfd3e0}
.admin-metric.selected{border-color:var(--amber);background:#fffcf3;box-shadow:inset 0 3px 0 var(--amber)}
.admin-metric small{color:var(--amber-ink);font-weight:500}
.admin-filters{background:#fff;border:1px solid var(--line);border-radius:var(--radius)}
.admin-role{background:var(--info-soft);color:var(--info);border-radius:999px;padding:4px 10px}

/* Formulários de crédito e financiamento */
.credit-person{border-color:var(--line);border-radius:12px}
.credit-person legend{color:var(--navy)}
.credit-upload{background:#fffcf3;border:1.5px dashed #e8c66a;border-radius:12px;color:var(--navy);font-weight:600}
.credit-upload input[type=file]{font-weight:400}
.credit-detail-status.has-pending{border-left:4px solid var(--amber);background:#fffcf3}
.credit-message{border-radius:12px}
.credit-message.from-broker{background:#fffcf3;border-color:#f3e3b5}
.cpf-result{background:var(--bg);border-color:var(--line);border-radius:12px}
.finance-action{border-radius:var(--radius)}
.finance-action:not(:disabled):hover{border-color:var(--amber);background:#fffcf3}
