/* Publigo — área administrativa. Tudo escopado em .admin-ui (não afeta Flow, chat ou login). */
.admin-ui{
 --a-bg:#f6f4fa;--a-panel:#fff;--a-panel2:#f2eef9;--a-sunk:#faf8fd;--a-line:#e9e4f1;--a-line2:#d9d0e8;
 --a-fg:#1f1830;--a-muted:#6b6280;--a-dim:#968daa;--a-accent:#7547cc;--a-accent2:#5b34b8;--a-soft:#ece4fa;
 --a-ok:#1d8a55;--a-ok-bg:#e5f5ec;--a-bad:#c8323d;--a-bad-bg:#fdecee;--a-wait:#94600d;--a-wait-bg:#fdf3df;
 --a-received:#7547cc;--a-expenses:#e39aa6;
 font-family:'Plus Jakarta Sans',Arial,Helvetica,sans-serif;color:var(--a-fg);font-size:14px;line-height:1.55;
 display:flex;flex-direction:column;gap:22px;min-width:0;
}
.admin-ui *{box-sizing:border-box}
.admin-ui strong{font-size:inherit;letter-spacing:normal;font-weight:650}
.admin-ui .adm-table td>strong{font-weight:600}
.admin-ui h1,.admin-ui h2,.admin-ui h3{margin:0;color:var(--a-fg)}
.admin-ui p{margin:0}
.admin-ui .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.admin-ui .neg{color:var(--a-bad)}

/* Cabeçalho */
.admin-ui .adm-header{display:flex;align-items:center;gap:18px}
.admin-ui .adm-logo{width:72px;height:auto;object-fit:contain;flex-shrink:0}
.admin-ui .adm-eyebrow{display:block;font-size:10px;font-weight:700;letter-spacing:.18em;color:var(--a-dim)}
.admin-ui .adm-titles h1{font-size:28px;line-height:1.2;font-weight:650;letter-spacing:-.02em;margin:4px 0 2px}
.admin-ui .adm-sub{color:var(--a-muted);font-size:13px}
.admin-ui .adm-body{display:flex;flex-direction:column;gap:20px;min-width:0}
.admin-ui .adm-body>div{display:flex;flex-direction:column;gap:20px;min-width:0}
.admin-ui .adm-loading{color:var(--a-muted);font-size:13px;padding:12px 2px}

/* Barra de período */
.admin-ui .adm-toolbar{flex-direction:row!important;justify-content:flex-end;align-items:center}
.admin-ui .adm-period{display:inline-flex;align-items:center;gap:6px;background:var(--a-panel);border:1px solid var(--a-line);border-radius:12px;padding:4px}
.admin-ui .adm-period input{border:0;background:transparent;font:inherit;font-weight:600;color:var(--a-fg);padding:6px 8px;border-radius:8px}
.admin-ui .adm-period input:focus-visible{outline:2px solid var(--a-accent);outline-offset:1px}

/* Botões */
.admin-ui .adm-btn,.admin-ui .adm-icon,.admin-ui .adm-seg-btn{font:inherit;cursor:pointer;border-radius:10px;transition:background .15s,border-color .15s,color .15s,filter .15s}
.admin-ui .adm-btn{border:1px solid var(--a-accent);background:var(--a-accent);color:#fff;font-weight:650;font-size:13px;padding:9px 16px}
.admin-ui .adm-btn:hover{filter:brightness(1.07)}
.admin-ui .adm-btn:disabled{opacity:.55;cursor:progress;filter:none}
.admin-ui .adm-btn.small{padding:6px 12px;font-size:12px;border-radius:9px}
.admin-ui .adm-btn.secondary{background:var(--a-panel);color:var(--a-accent2);border-color:var(--a-line2)}
.admin-ui .adm-btn.secondary:hover{background:var(--a-soft);filter:none}
.admin-ui .adm-btn.ghost{background:transparent;color:var(--a-muted);border-color:transparent}
.admin-ui .adm-btn.ghost:hover{background:var(--a-panel2);color:var(--a-fg);filter:none}
.admin-ui .adm-icon{width:32px;height:32px;border:0;background:transparent;color:var(--a-muted);font-size:18px;line-height:1;padding:0}
.admin-ui .adm-icon:hover{background:var(--a-panel2);color:var(--a-accent2)}
.admin-ui button:focus-visible{outline:2px solid var(--a-accent);outline-offset:2px}

/* KPIs */
.admin-ui .adm-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}
.admin-ui .adm-kpi{background:var(--a-panel);border:1px solid var(--a-line);border-radius:16px;padding:16px 18px;display:flex;flex-direction:column;gap:6px;min-width:0;box-shadow:0 2px 6px #3b1f7006}
.admin-ui .adm-kpi-label{font-size:11px;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--a-dim)}
.admin-ui .adm-kpi-value{font-size:24px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.admin-ui .adm-kpi-note{font-size:12px;color:var(--a-muted)}
.admin-ui .adm-kpi.accent{background:linear-gradient(135deg,#f3ecff,#fbf9ff);border-color:#ddcff7}
.admin-ui .adm-kpi.accent .adm-kpi-value{color:var(--a-accent2)}
.admin-ui .adm-kpi.pos .adm-kpi-value{color:var(--a-ok)}
.admin-ui .adm-kpi.neg .adm-kpi-value{color:var(--a-bad)}

/* Painéis */
.admin-ui .adm-panel{background:var(--a-panel);border:1px solid var(--a-line);border-radius:18px;padding:18px 20px;display:flex;flex-direction:column;gap:14px;min-width:0}
.admin-ui .adm-panel.narrow{max-width:620px}
.admin-ui .adm-panel-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.admin-ui .adm-panel-head h2{font-size:16px;font-weight:650;margin-right:auto}
.admin-ui .adm-muted{color:var(--a-muted);font-size:12px}
.admin-ui .adm-note{font-size:12px;color:var(--a-muted);background:var(--a-panel2);border-radius:10px;padding:8px 12px;align-self:flex-start}
.admin-ui .adm-warn{font-size:13px;color:var(--a-wait);background:var(--a-wait-bg);border:1px solid #f1d9a7;border-radius:12px;padding:10px 14px}
.admin-ui .adm-foot{font-size:12px;color:var(--a-muted);text-align:right}

/* Tabelas */
.admin-ui .adm-table-wrap{overflow-x:auto;margin:0 -4px}
.admin-ui .adm-table{width:100%;border-collapse:collapse;font-size:13px;min-width:640px}
.admin-ui .adm-table.compact{min-width:0;font-size:12px}
.admin-ui .adm-table th{text-align:left;font-size:11px;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--a-dim);padding:8px 10px;border-bottom:1px solid var(--a-line)}
.admin-ui .adm-table td{padding:11px 10px;border-bottom:1px solid var(--a-line);vertical-align:middle;overflow-wrap:anywhere}
.admin-ui .adm-table tbody tr:hover>td{background:var(--a-sunk)}
.admin-ui .adm-table tr.adm-inline>td{background:var(--a-panel2);padding:14px}
.admin-ui .adm-sub-cell{display:block;color:var(--a-muted);font-size:11px}
.admin-ui .adm-row-actions{text-align:right;white-space:nowrap}
.admin-ui .adm-row-actions .adm-btn+.adm-btn{margin-left:6px}
.admin-ui .adm-row-error{display:block;margin-top:6px;color:var(--a-bad);font-size:11px;white-space:normal}

/* Etiquetas */
.admin-ui .adm-badge{display:inline-block;font-size:11px;font-weight:650;padding:3px 9px;border-radius:999px;white-space:nowrap}
.admin-ui .adm-badge.ok{color:var(--a-ok);background:var(--a-ok-bg)}
.admin-ui .adm-badge.bad{color:var(--a-bad);background:var(--a-bad-bg)}
.admin-ui .adm-badge.wait{color:var(--a-wait);background:var(--a-wait-bg)}
.admin-ui .adm-badge.muted{color:var(--a-muted);background:var(--a-panel2)}

/* Gráfico */
.admin-ui .adm-legend{display:flex;gap:14px;font-size:12px;color:var(--a-muted)}
.admin-ui .adm-legend .lg::before{content:'';display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px}
.admin-ui .adm-legend .received::before{background:var(--a-received)}
.admin-ui .adm-legend .expenses::before{background:var(--a-expenses)}
.admin-ui .adm-chart{width:100%;height:auto;max-height:280px;display:block}
.admin-ui .adm-chart .grid{stroke:var(--a-line);stroke-width:1}
.admin-ui .adm-chart .axis{fill:var(--a-dim);font-size:11px;font-family:inherit}
.admin-ui .adm-chart .bar.received{fill:var(--a-received)}
.admin-ui .adm-chart .bar.expenses{fill:var(--a-expenses)}
.admin-ui .adm-chart .bar:hover{opacity:.8}
.admin-ui .adm-details summary{cursor:pointer;font-size:12px;color:var(--a-accent2);font-weight:600}
.admin-ui .adm-details[open] summary{margin-bottom:8px}

/* Estados vazios e erros */
.admin-ui .adm-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:26px 12px;border:1px dashed var(--a-line2);border-radius:14px;background:var(--a-sunk)}
.admin-ui .adm-empty-symbol{font-size:22px;color:var(--a-line2)}
.admin-ui .adm-empty strong{font-size:14px}
.admin-ui .adm-empty p{font-size:13px;color:var(--a-muted);max-width:420px}
.admin-ui .adm-error{display:flex;flex-direction:column;gap:8px;align-items:flex-start;padding:16px 18px;border-radius:14px;background:var(--a-bad-bg);border:1px solid #f4c5ca;color:var(--a-bad)}
.admin-ui .adm-error p{color:#7d2a31;font-size:13px}

/* Formulários */
.admin-ui .adm-form{display:flex;flex-direction:column;gap:14px;background:var(--a-panel);border:1px solid #ddcff7;border-radius:18px;padding:18px 20px;box-shadow:0 10px 30px #4b2a8a12}
.admin-ui tr.adm-inline .adm-form{box-shadow:none}
.admin-ui .adm-form h3{font-size:15px;font-weight:650}
.admin-ui .adm-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px 14px}
.admin-ui .adm-field{display:flex;flex-direction:column;gap:5px;min-width:0}
.admin-ui .adm-field.wide{grid-column:1/-1}
.admin-ui .adm-field-label{font-size:12px;font-weight:600;color:var(--a-fg)}
.admin-ui .adm-hint{font-size:11px;color:var(--a-dim)}
.admin-ui .adm-form input:not([type=checkbox]),.admin-ui .adm-form select,.admin-ui .adm-form textarea{width:100%;font:inherit;font-size:14px;color:var(--a-fg);background:var(--a-sunk);border:1px solid var(--a-line2);border-radius:10px;padding:9px 11px}
.admin-ui .adm-form textarea{resize:vertical}
.admin-ui .adm-form input:focus,.admin-ui .adm-form select:focus,.admin-ui .adm-form textarea:focus{outline:none;border-color:var(--a-accent);background:#fff;box-shadow:0 0 0 3px #7547cc26}
.admin-ui .adm-form input:disabled{opacity:.55}
.admin-ui .adm-check{display:flex;align-items:center;gap:8px;font-size:13px;align-self:end;padding-bottom:8px;cursor:pointer}
.admin-ui .adm-check input{width:16px;height:16px;accent-color:var(--a-accent)}
.admin-ui .adm-status{font-size:13px;min-height:0}
.admin-ui .adm-status:empty{display:none}
.admin-ui .adm-status.error{color:var(--a-bad);background:var(--a-bad-bg);border-radius:10px;padding:9px 12px}
.admin-ui .adm-status.ok{color:var(--a-ok)}
.admin-ui .adm-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}

/* Segmentos (filtro) */
.admin-ui .adm-seg{display:inline-flex;background:var(--a-panel2);border-radius:10px;padding:3px}
.admin-ui .adm-seg-btn{border:0;background:transparent;color:var(--a-muted);font-size:12px;font-weight:600;padding:6px 12px;border-radius:8px}
.admin-ui .adm-seg-btn.on{background:#fff;color:var(--a-accent2);box-shadow:0 1px 3px #3b1f7014}

/* Clientes */
.admin-ui .adm-client-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.admin-ui .adm-client{border:1px solid var(--a-line);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:12px;background:var(--a-panel);min-width:0}
.admin-ui .adm-client.off{background:var(--a-sunk);opacity:.85}
.admin-ui .adm-client-top{display:flex;gap:12px;align-items:center;min-width:0}
.admin-ui .adm-client-top strong{display:block;font-size:15px;overflow-wrap:anywhere}
.admin-ui .adm-client-top small{display:block;color:var(--a-muted);font-size:12px;overflow-wrap:anywhere}
.admin-ui .adm-avatar{flex-shrink:0;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--a-soft);color:var(--a-accent2);font-weight:700;font-size:13px}
.admin-ui .adm-meta{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:0;font-size:12px}
.admin-ui .adm-meta dt{color:var(--a-dim)}
.admin-ui .adm-meta dd{margin:0;text-align:right;overflow-wrap:anywhere}
.admin-ui .adm-notes{font-size:12px;color:var(--a-muted);white-space:pre-wrap;overflow-wrap:anywhere;border-top:1px solid var(--a-line);padding-top:10px}
.admin-ui .adm-client-foot{display:flex;justify-content:space-between;align-items:center;margin-top:auto}

@media (max-width:720px){
 .admin-ui{gap:16px}
 .admin-ui .adm-header{gap:12px}
 .admin-ui .adm-logo{width:54px}
 .admin-ui .adm-titles h1{font-size:23px}
 .admin-ui .adm-toolbar{justify-content:stretch}
 .admin-ui .adm-period{width:100%;justify-content:space-between}
 .admin-ui .adm-kpis{grid-template-columns:1fr 1fr}
 .admin-ui .adm-kpi-value{font-size:19px}
 .admin-ui .adm-panel{padding:14px}
 .admin-ui .adm-chart .axis{font-size:22px}
}
@media (max-width:420px){.admin-ui .adm-kpis{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.admin-ui *{transition:none!important}}
