:root{
  --navy-950:#070d1e;
  --navy-900:#0a1830;
  --navy-800:#0d2358;
  --navy-700:#0f2f7d;
  --navy-600:#1c4bc4;
  --navy-500:#3d6ae0;
  --navy-100:#e7edfb;
  --navy-050:#f2f5fc;
  --orange-600:#d95a06;
  --orange-500:#ef7010;
  --orange-400:#ff9142;

  --bg:#f5f7fb;
  --surface:#ffffff;
  --surface-2:#eef1f8;
  --line:#dde3ef;
  --ink:#101728;
  --ink-muted:#5b6478;
  --ink-faint:#8592ac;

  --radius:14px;
  --radius-lg:20px;
  font-family:-apple-system, "Segoe UI", Manrope, Roboto, sans-serif;
}

*{box-sizing:border-box;}
html,body{margin:0;padding:0;}

/* ---------- Barra de rolagem ---------- */
html{
  scrollbar-width:thin;
  scrollbar-color:var(--navy-500) var(--bg);
}
::-webkit-scrollbar{
  width:11px;
  height:11px;
}
::-webkit-scrollbar-track{
  background:var(--bg);
}
::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg, var(--navy-500), var(--navy-700));
  border-radius:999px;
  border:3px solid var(--bg);
  background-clip:padding-box;
}
::-webkit-scrollbar-thumb:hover{
  background:linear-gradient(180deg, var(--orange-500), var(--navy-700));
  background-clip:padding-box;
}
::-webkit-scrollbar-corner{ background:var(--bg); }

/* A mesma barra dentro de superfícies claras (modal, cards com overflow) */
.modal-panel, .main{
  scrollbar-width:thin;
  scrollbar-color:var(--navy-500) var(--surface-2);
}
.modal-panel::-webkit-scrollbar-track,
.main::-webkit-scrollbar-track{ background:var(--surface-2); }
.modal-panel::-webkit-scrollbar-thumb,
.main::-webkit-scrollbar-thumb{ border-color:var(--surface-2); }

body{
  background:var(--bg);
  color:var(--ink);
  min-height:100vh;
}
a{color:inherit;}

/* ---------- Login ---------- */
.login-wrap{
  min-height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
  background:
    radial-gradient(900px 480px at 85% -10%, rgba(61,106,224,.25), transparent 60%),
    linear-gradient(180deg, var(--navy-950), var(--navy-900));
  padding:20px;
}
.login-card{
  width:100%;
  max-width:380px;
  background:var(--surface);
  border-radius:var(--radius-lg);
  padding:36px 32px;
  box-shadow:0 30px 60px -20px rgba(0,0,0,.45);
}
.login-card h1{
  font-size:1.3rem;
  margin:0 0 4px;
}
.login-card p.sub{
  margin:0 0 24px;
  color:var(--ink-muted);
  font-size:.9rem;
}
.remember-field{
  display:flex;
  align-items:center;
  gap:8px;
  margin:2px 0 18px;
  font-size:.85rem;
  font-weight:600;
  color:var(--ink-muted);
  cursor:pointer;
  user-select:none;
}
.remember-field input{ width:16px; height:16px; accent-color:var(--navy-600); cursor:pointer; }

.field{ margin-bottom:16px; }
.field label{
  display:block;
  font-size:.82rem;
  font-weight:700;
  margin-bottom:6px;
  color:var(--ink-muted);
}
.field input{
  width:100%;
  padding:11px 12px;
  border-radius:10px;
  border:1px solid var(--line);
  font-size:.95rem;
  background:var(--surface-2);
}
.field input:focus{
  outline:2px solid var(--navy-500);
  outline-offset:1px;
  background:var(--surface);
}
.field textarea{
  width:100%;
  padding:11px 12px;
  border-radius:10px;
  border:1px solid var(--line);
  font-size:.95rem;
  background:var(--surface-2);
  font-family:inherit;
  resize:vertical;
  min-height:64px;
}
.field textarea:focus{
  outline:2px solid var(--navy-500);
  outline-offset:1px;
  background:var(--surface);
}

/* ---------- Identidade visual (logotipo e favicon) ---------- */
.brand-upload-row{
  display:flex;
  gap:28px;
  flex-wrap:wrap;
}
.brand-upload-item{
  display:flex;
  flex-direction:column;
  gap:8px;
  width:200px;
}
.dropzone.ratio-brand-logo{
  aspect-ratio:480/160;
  width:100%;
  background:var(--surface-2);
  border-radius:12px;
}
.dropzone.ratio-brand-logo img{ object-fit:contain; padding:12px; background:#fff; }
.dropzone.ratio-favicon{
  aspect-ratio:1/1;
  width:96px;
  background:var(--surface-2);
  border-radius:12px;
}
.dropzone.ratio-favicon img{ object-fit:contain; padding:10px; background:#fff; }
.brand-upload-label{ font-size:.82rem; font-weight:700; color:var(--ink-muted); }
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border:none;
  border-radius:10px;
  padding:11px 18px;
  font-weight:700;
  font-size:.92rem;
  cursor:pointer;
  transition:transform .1s ease, box-shadow .15s ease, opacity .15s ease;
}
.btn:active{ transform:translateY(1px); }
.btn-primary{
  background:linear-gradient(180deg, var(--navy-600), var(--navy-700));
  color:#fff;
  width:100%;
}
.btn-ghost{
  background:var(--surface-2);
  color:var(--ink);
  border:1px solid var(--line);
}
.btn-accent{
  background:linear-gradient(180deg, var(--orange-400), var(--orange-500) 60%, var(--orange-600));
  color:#2a1200;
}
.btn-danger{
  background:linear-gradient(180deg, #e2564a, #c0362a);
  color:#fff;
}
.btn[disabled]{ opacity:.6; cursor:not-allowed; }
.error-msg{
  background:#fdeceb;
  color:#a3271a;
  border:1px solid #f4c6c1;
  padding:10px 12px;
  border-radius:10px;
  font-size:.86rem;
  margin-bottom:16px;
  display:none;
}
.error-msg.show{ display:block; }
.error-msg.success{
  background:#eaf7ee;
  color:#1a7a3d;
  border-color:#bfe6cc;
}

/* ---------- Shell do painel ----------
   A sidebar, a barra superior e o layout geral agora usam classes utilitárias
   do Tailwind direto no dashboard.html (ver <script src="...tailwindcss.com">
   no <head>). Aqui só ficam as poucas regras que o Tailwind (via CDN, sem
   build) não cobre sozinho. */
.panel{ display:none; }
.panel.is-active{ display:block; }

.toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:12px;
  margin-bottom:22px;
}
.range-select{
  display:flex;
  gap:6px;
  background:var(--surface);
  border:1px solid var(--line);
  padding:4px;
  border-radius:10px;
}
.range-select button{
  border:none;
  background:transparent;
  padding:7px 14px;
  border-radius:7px;
  font-weight:700;
  font-size:.84rem;
  color:var(--ink-muted);
  cursor:pointer;
}
.range-select button.is-active{
  background:var(--navy-700);
  color:#fff;
}

.stat-row{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:16px;
  margin-bottom:22px;
}
.stat-tile{
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:18px 20px;
  display:flex;
  align-items:center;
  gap:14px;
  box-shadow:0 1px 2px rgba(16,23,40,.03), 0 16px 28px -22px rgba(16,23,40,.18);
  transition:box-shadow .2s ease, transform .2s ease;
}
.stat-tile:hover{
  box-shadow:0 1px 2px rgba(16,23,40,.04), 0 20px 34px -18px rgba(16,23,40,.22);
  transform:translateY(-1px);
}
.stat-icon{
  flex:none;
  width:44px;
  height:44px;
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.stat-icon-navy{ background:var(--navy-050); color:var(--navy-600); }
.stat-icon-orange{ background:#fff3e8; color:var(--orange-500); }
.stat-tile .label{
  font-size:.8rem;
  color:var(--ink-muted);
  font-weight:700;
  margin-bottom:4px;
}
.stat-tile .value{
  font-size:1.9rem;
  font-weight:800;
  color:var(--ink);
  line-height:1.1;
}
.stat-tile .value small{ font-size:.9rem; color:var(--ink-faint); font-weight:600; }

.card-grid{
  display:grid;
  grid-template-columns:1.4fr 1fr;
  gap:16px;
  margin-bottom:16px;
}
.card{
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:20px;
  box-shadow:0 1px 2px rgba(16,23,40,.03), 0 16px 28px -22px rgba(16,23,40,.16);
}
.card h3{
  margin:0 0 4px;
  font-size:1rem;
}
.card p.hint{
  margin:0 0 16px;
  font-size:.82rem;
  color:var(--ink-muted);
}

/* Gráfico de barras por hora (SVG) */
.hour-chart{ width:100%; height:220px; }
.hour-gridline{ stroke:var(--line); stroke-width:1; shape-rendering:crispEdges; }
.hour-bar{ fill:url(#hourBarGradient); transition:opacity .12s ease; }
.hour-bar:hover{ fill:url(#hourBarGradientHot); }
.hour-bar-peak{ fill:url(#hourBarGradientHot); }
.hour-axis-label{ font-size:9.5px; fill:var(--ink-faint); font-weight:600; }
.chart-tooltip{
  position:absolute;
  background:var(--navy-900);
  color:#fff;
  font-size:.78rem;
  padding:6px 10px;
  border-radius:8px;
  pointer-events:none;
  transform:translate(-50%, -110%);
  white-space:nowrap;
  opacity:0;
  transition:opacity .1s ease;
  z-index:10;
}
.chart-tooltip.show{ opacity:1; }
.chart-wrap{ position:relative; }

/* Lista de cidades (barras horizontais) */
.city-list{ display:flex; flex-direction:column; gap:12px; }
.city-row{ display:grid; grid-template-columns:22px 1fr 1.4fr 42px; align-items:center; gap:10px; }
.city-row .rank{
  width:22px; height:22px; border-radius:999px;
  background:var(--navy-050); color:var(--navy-600);
  font-size:.72rem; font-weight:800;
  display:flex; align-items:center; justify-content:center;
}
.city-row .name{ font-size:.86rem; font-weight:700; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.city-row .bar-track{ background:var(--surface-2); border-radius:999px; height:9px; overflow:hidden; }
.city-row .bar-fill{ background:linear-gradient(90deg, var(--navy-500), var(--orange-500)); height:100%; border-radius:999px; transition:width .3s ease; }
.city-row .count{ font-size:.82rem; color:var(--ink-muted); text-align:right; font-weight:700; }
.empty-state{ color:var(--ink-faint); font-size:.88rem; padding:20px 0; text-align:center; }

/* Linha de tendência */
.trend-chart{ width:100%; height:200px; overflow:visible; }
.trend-gridline{ stroke:var(--line); stroke-width:1; shape-rendering:crispEdges; }
.trend-line{ fill:none; stroke:url(#trendStroke); stroke-width:2.75; stroke-linecap:round; stroke-linejoin:round; filter:drop-shadow(0 6px 10px rgba(28,75,196,.22)); }
.trend-area{ fill:url(#trendGradient); }
.trend-dot{ fill:var(--surface); stroke:var(--navy-600); stroke-width:2; }
.trend-dot-last{ fill:var(--orange-500); stroke:#fff; stroke-width:2.5; }

/* ---------- Imagens ---------- */
.image-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(280px, 1fr));
  gap:18px;
}
.image-card{
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:var(--radius-lg);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  transition:box-shadow .2s ease, transform .2s ease;
}
.image-card:hover{
  box-shadow:0 14px 32px -18px rgba(15,47,125,.35);
  transform:translateY(-2px);
}

/* Card com as duas variantes (mobile + desktop) lado a lado */
.image-card .preview-split{
  display:flex;
  background:var(--surface-2);
  overflow:hidden;
}
.image-card .preview-split .slot{
  position:relative;
  flex:1;
  overflow:hidden;
  background:#dfe4ef;
  display:flex;
  align-items:center;
  justify-content:center;
}
.image-card .preview-split .slot.mobile{ flex:0 0 34%; aspect-ratio:1080/1350; }
.image-card .preview-split .slot.desktop{ flex:1; aspect-ratio:1920/850; }
.image-card .preview-split .slot img{ width:100%; height:100%; object-fit:cover; display:block; }
.image-card .preview-split .slot .tag{
  position:absolute;
  left:6px;
  bottom:6px;
  font-size:.66rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
  color:#fff;
  background:rgba(10,20,45,.62);
  padding:2px 7px;
  border-radius:999px;
}
.image-card .position-badge{
  position:absolute;
  top:8px;
  left:8px;
  z-index:2;
  width:24px;
  height:24px;
  border-radius:999px;
  background:rgba(10,20,45,.72);
  color:#fff;
  font-size:.74rem;
  font-weight:800;
  display:flex;
  align-items:center;
  justify-content:center;
}
.image-card .remove-btn{
  position:absolute;
  top:8px;
  right:8px;
  z-index:2;
  width:26px;
  height:26px;
  border-radius:999px;
  border:none;
  background:rgba(10,20,45,.6);
  color:#fff;
  font-size:.85rem;
  line-height:1;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:background .15s ease, transform .15s ease;
}
.image-card .remove-btn:hover{ background:#c0362a; transform:scale(1.06); }
.image-card .remove-btn[disabled]{ opacity:.35; cursor:not-allowed; }
.image-card .preview-split{ position:relative; }

.image-card .body{ padding:16px 18px; display:flex; flex-direction:column; gap:10px; }
.image-card .body .title{ font-weight:800; font-size:.94rem; }
.image-card .body .meta{ font-size:.76rem; color:var(--ink-faint); }
.image-card .body .btn{ align-self:flex-start; }

.add-slide-card{
  font-family:inherit;
  padding:0;
  border:2px dashed var(--line);
  border-radius:var(--radius-lg);
  background:transparent;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:220px;
  color:var(--ink-muted);
  font-weight:700;
  font-size:.88rem;
  cursor:pointer;
  transition:border-color .15s ease, background .15s ease, color .15s ease;
}
.add-slide-card:hover{
  border-color:var(--navy-500);
  background:var(--navy-050);
  color:var(--navy-700);
}
.add-slide-card .plus{
  width:40px;
  height:40px;
  border-radius:999px;
  background:var(--surface-2);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.3rem;
  font-weight:800;
}

.publish-box{
  margin-top:20px;
  background:var(--navy-050);
  border:1px dashed var(--navy-500);
  border-radius:var(--radius);
  padding:16px 18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
}
.publish-box p{ margin:0; font-size:.86rem; color:var(--ink-muted); max-width:60ch; }

/* ---------- Modal de edição de imagem ---------- */
.modal-overlay{
  position:fixed;
  inset:0;
  background:rgba(7,13,30,.58);
  backdrop-filter:blur(3px);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  opacity:0;
  visibility:hidden;
  transition:opacity .18s ease;
  z-index:100;
}
.modal-overlay.is-open{ opacity:1; visibility:visible; }
.modal-panel{
  background:var(--surface);
  border-radius:22px;
  width:100%;
  max-width:760px;
  max-height:88vh;
  overflow:auto;
  box-shadow:0 40px 80px -20px rgba(0,0,0,.5);
  transform:translateY(14px) scale(.98);
  transition:transform .2s ease;
}
.modal-overlay.is-open .modal-panel{ transform:translateY(0) scale(1); }

.confirm-panel{ max-width:380px; }
.confirm-panel .modal-body{ align-items:center; text-align:center; padding:32px 28px; }
.confirm-icon{
  width:52px;
  height:52px;
  border-radius:999px;
  background:#fdeceb;
  color:#c0362a;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.4rem;
  margin-bottom:4px;
}
.confirm-panel h3{ margin:0; font-size:1.05rem; }
.confirm-panel .modal-sub{ max-width:none; }
.confirm-panel .modal-actions{ border-top:none; padding-top:8px; width:100%; justify-content:center; }

.modal-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:22px 26px 16px;
  border-bottom:1px solid var(--line);
  position:sticky;
  top:0;
  background:var(--surface);
  z-index:2;
}
.modal-head h3{ margin:0 0 4px; font-size:1.1rem; }
.modal-sub{ margin:0; font-size:.84rem; color:var(--ink-muted); max-width:52ch; }
.modal-close{
  border:none;
  background:var(--surface-2);
  width:32px;
  height:32px;
  border-radius:999px;
  font-size:.9rem;
  color:var(--ink-muted);
  cursor:pointer;
  flex:none;
}
.modal-close:hover{ background:var(--line); color:var(--ink); }
.modal-body{ padding:22px 26px 26px; display:flex; flex-direction:column; gap:22px; }

.variant-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
@media (max-width:620px){ .variant-grid{ grid-template-columns:1fr; } }

.variant-block{ display:flex; flex-direction:column; gap:10px; }
.variant-block .variant-label{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  font-size:.86rem;
}
.variant-block .variant-label strong{ font-weight:800; }
.variant-block .variant-label span{ color:var(--ink-faint); font-size:.76rem; }

.dropzone{
  position:relative;
  border:2px dashed var(--line);
  border-radius:16px;
  background:var(--surface-2);
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  cursor:pointer;
  transition:border-color .15s ease, background .15s ease;
}
.dropzone.ratio-mobile{ aspect-ratio:1080/1350; max-height:280px; margin:0 auto; width:100%; max-width:210px; }
.dropzone.ratio-desktop{ aspect-ratio:1920/850; width:100%; }
.dropzone:hover, .dropzone.is-dragover{
  border-color:var(--navy-500);
  background:var(--navy-050);
}
.dropzone img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.dropzone .placeholder{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:6px;
  color:var(--ink-faint);
  font-size:.78rem;
  padding:12px;
  text-align:center;
  pointer-events:none;
}
.dropzone .placeholder svg{ color:var(--navy-500); }
.dropzone input[type=file]{
  position:absolute;
  inset:0;
  opacity:0;
  cursor:pointer;
}

.variant-hint{ font-size:.76rem; color:var(--ink-faint); }
.variant-warning{
  font-size:.78rem;
  color:var(--orange-600);
  background:#fff3e8;
  border:1px solid #ffdcb0;
  border-radius:8px;
  padding:6px 10px;
  display:none;
}
.variant-warning.show{ display:block; }
.variant-status{ font-size:.78rem; min-height:16px; }
.variant-status.ok{ color:#1a7a3d; }
.variant-status.err{ color:#a3271a; }

.modal-actions{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  padding-top:6px;
  border-top:1px solid var(--line);
}

.publish-box{
  margin-top:20px;
  background:var(--navy-050);
  border:1px dashed var(--navy-500);
  border-radius:var(--radius);
  padding:16px 18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
}
.publish-box p{ margin:0; font-size:.86rem; color:var(--ink-muted); max-width:60ch; }

/* ---------- Logos de empresas ---------- */
.logo-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(220px, 1fr));
  gap:18px;
}
.logo-card{
  position:relative;
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:var(--radius-lg);
  padding:16px;
  display:flex;
  flex-direction:column;
  gap:10px;
  transition:box-shadow .2s ease, transform .2s ease;
}
.logo-card:hover{
  box-shadow:0 14px 32px -18px rgba(15,47,125,.35);
  transform:translateY(-2px);
}
.logo-card .remove-btn{
  position:absolute;
  top:10px;
  right:10px;
  z-index:2;
  width:26px;
  height:26px;
  border-radius:999px;
  border:none;
  background:rgba(10,20,45,.6);
  color:#fff;
  font-size:.85rem;
  line-height:1;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:background .15s ease, transform .15s ease;
}
.logo-card .remove-btn:hover{ background:#c0362a; transform:scale(1.06); }
.dropzone.ratio-logo{
  aspect-ratio:480/200;
  width:100%;
  background:var(--surface-2);
  border-radius:12px;
}
.dropzone.ratio-logo img{ object-fit:contain; padding:14px; background:#fff; }
.logo-name-input{
  font-family:inherit;
  font-size:.86rem;
  font-weight:700;
  padding:8px 10px;
  border:1px solid var(--line);
  border-radius:8px;
  background:var(--surface);
  color:var(--ink);
}
.logo-name-input:focus{
  outline:none;
  border-color:var(--navy-500);
  box-shadow:0 0 0 3px rgba(15,47,125,.12);
}

/* ---------- Avaliações (seção "O que dizem sobre nós") ---------- */
.review-admin-list{
  display:flex;
  flex-direction:column;
  gap:14px;
}
.review-admin-card{
  position:relative;
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:var(--radius-lg);
  padding:16px 44px 16px 16px;
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:10px 14px;
  transition:box-shadow .2s ease;
}
.review-admin-card:hover{ box-shadow:0 14px 32px -18px rgba(15,47,125,.35); }
.review-admin-card .remove-btn{
  position:absolute;
  top:10px;
  right:10px;
  z-index:2;
  width:26px;
  height:26px;
  border-radius:999px;
  border:none;
  background:rgba(10,20,45,.6);
  color:#fff;
  font-size:.85rem;
  line-height:1;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:background .15s ease, transform .15s ease;
}
.review-admin-card .remove-btn:hover{ background:#c0362a; transform:scale(1.06); }
.review-admin-card .field-full{ grid-column:1/-1; }
.review-admin-card input[type="text"],
.review-admin-card textarea,
.review-admin-card select{
  width:100%;
  font-family:inherit;
  font-size:.86rem;
  padding:8px 10px;
  border:1px solid var(--line);
  border-radius:8px;
  background:var(--surface-2);
  color:var(--ink);
}
.review-admin-card textarea{ min-height:64px; resize:vertical; }
.review-admin-card input:focus,
.review-admin-card textarea:focus,
.review-admin-card select:focus{
  outline:none;
  border-color:var(--navy-500);
  box-shadow:0 0 0 3px rgba(15,47,125,.12);
}
.review-admin-card label{
  display:block;
  font-size:.72rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.03em;
  color:var(--ink-muted);
  margin-bottom:4px;
}
.review-admin-card .row-inline{
  display:flex;
  align-items:center;
  gap:16px;
  flex-wrap:wrap;
}
.review-admin-card .is-new-toggle{
  display:flex;
  align-items:center;
  gap:6px;
  font-size:.8rem;
  font-weight:700;
  color:var(--ink-muted);
  cursor:pointer;
  user-select:none;
}
.review-admin-card .is-new-toggle input{ width:15px; height:15px; accent-color:var(--navy-600); cursor:pointer; }
.review-admin-card .avatar-color-field{ display:flex; align-items:center; gap:8px; }
.review-admin-card .avatar-color-field input[type="color"]{
  width:34px; height:34px; padding:0; border-radius:8px; border:1px solid var(--line); cursor:pointer;
}

/* ---------- Paleta de cores ---------- */
.color-field-row{
  display:flex;
  gap:24px;
  flex-wrap:wrap;
  margin-bottom:16px;
}
.color-field{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.color-field label{
  font-size:.82rem;
  font-weight:700;
  color:var(--ink-muted);
}
.color-input-wrap{
  display:flex;
  align-items:center;
  gap:10px;
  border:1px solid var(--line);
  border-radius:10px;
  padding:6px 10px;
  background:var(--surface);
}
.color-input-wrap input[type=color]{
  width:34px;
  height:34px;
  padding:0;
  border:none;
  border-radius:8px;
  background:none;
  cursor:pointer;
}
.color-input-wrap input[type=color]::-webkit-color-swatch-wrapper{ padding:0; }
.color-input-wrap input[type=color]::-webkit-color-swatch{ border:1px solid var(--line); border-radius:8px; }
.color-input-wrap input[type=text]{
  font-family:inherit;
  font-size:.86rem;
  font-weight:700;
  border:none;
  background:none;
  color:var(--ink);
  width:96px;
  letter-spacing:.02em;
  text-transform:uppercase;
}
.color-input-wrap input[type=text]:focus{ outline:none; }

@media (max-width:860px){
  .stat-row{ grid-template-columns:1fr; }
  .card-grid{ grid-template-columns:1fr; }
}
