/* ===== Panel administrativo ===== */
.admin-wrap { max-width: 1200px; margin: 0 auto; padding: 16px; }
.admin-wrap h2 { font-size: 20px; margin: 0 0 4px; }
.admin-wrap .sub { color: var(--muted); font-size: 13px; margin-bottom: 14px; }

.stat-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 12px; margin-bottom: 16px; }
.stat { padding: 14px; }
.stat .label { font-size: 12px; color: var(--muted); text-transform: uppercase; letter-spacing: .04em; }
.stat .value { font-size: 26px; font-weight: 600; margin-top: 4px; }

.toolbar { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 12px; align-items: center; }
.toolbar input, .toolbar select {
  border: 1px solid var(--line); border-radius: 8px; padding: 7px 10px; font-size: 13px; background: #fff;
}

table { width: 100%; border-collapse: collapse; background: #fff; font-size: 13.5px; }
thead th {
  text-align: left; padding: 9px 12px; background: #f7fafb;
  border-bottom: 1px solid var(--line); font-size: 12px; color: var(--muted);
  text-transform: uppercase; letter-spacing: .03em; white-space: nowrap;
}
tbody td { padding: 9px 12px; border-bottom: 1px solid var(--line); vertical-align: top; }
tbody tr:hover { background: #f9fbfc; }
.table-wrap { overflow-x: auto; border-radius: var(--radius); border: 1px solid var(--line); box-shadow: var(--shadow); }

.detail-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 14px; }
.detail-grid .card { padding: 14px; }
.detail-grid h3 { margin: 0 0 10px; font-size: 13px; text-transform: uppercase; color: var(--muted); letter-spacing: .04em; }

.timeline { list-style: none; margin: 0; padding: 0; font-size: 13px; }
.timeline li { padding: 6px 0; border-bottom: 1px dashed var(--line); }
.timeline li:last-child { border-bottom: none; }

.msg-list { display: flex; flex-direction: column; gap: 6px; max-height: 460px; overflow-y: auto; }
.msg { padding: 7px 10px; border-radius: 8px; font-size: 13.5px; white-space: pre-wrap; }
.msg.INBOUND { background: #eef1f4; align-self: flex-start; max-width: 85%; }
.msg.OUTBOUND { background: var(--bubble-out); align-self: flex-end; max-width: 85%; }
.msg.SYSTEM { background: #fff8ec; font-size: 12px; }
.msg .meta { display: block; font-size: 10.5px; color: var(--muted); margin-top: 3px; }

.warnbox { background: #fff8ec; border: 1px solid #f0d5a8; color: #92400e; padding: 10px 12px; border-radius: 8px; margin-bottom: 14px; font-size: 13px; }
.warnbox ul { margin: 6px 0 0; padding-left: 18px; }

.email-body { background: #f7fafb; border: 1px solid var(--line); border-radius: 8px; padding: 10px; font-size: 12.5px; white-space: pre-wrap; max-height: 320px; overflow: auto; }
.settings-row { display: grid; grid-template-columns: 1fr 200px; gap: 8px; align-items: center; padding: 8px 0; border-bottom: 1px solid var(--line); }
.settings-row input { border: 1px solid var(--line); border-radius: 8px; padding: 6px 9px; width: 100%; font-size: 13px; }
.settings-row .desc { font-size: 12px; color: var(--muted); }
@media (max-width: 700px) { .settings-row { grid-template-columns: 1fr; } }
.empty { padding: 24px; text-align: center; color: var(--muted); font-size: 13px; }
