/* =========================================================
   DUPLANOS — Painel administrativo (CRM de leads)
   ========================================================= */
body.admin-body{background:var(--slate-100);min-height:100vh;}

.admin-shell{min-height:100vh;display:flex;flex-direction:column;}

.admin-topbar{
  background:var(--navy-900);color:var(--white);
  padding:var(--space-4) 0;
}
.admin-topbar .row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;}
.admin-brand{display:flex;align-items:center;gap:var(--space-3);}
.admin-brand img{height:28px;filter:brightness(0) invert(1);}
.admin-brand span{font-family:var(--font-display);font-weight:700;}
.admin-brand small{display:block;font-weight:400;font-size:var(--fs-2xs);color:rgba(255,255,255,0.6);}
.admin-topbar .actions{display:flex;gap:var(--space-3);align-items:center;}

.admin-main{flex:1;padding:var(--space-6) 0 var(--space-9);}

.admin-summary{
  display:grid;gap:var(--space-4);
  grid-template-columns:repeat(2,1fr);
  margin-bottom:var(--space-6);
}
@media (min-width:760px){.admin-summary{grid-template-columns:repeat(4,1fr);}}
.summary-card{
  background:var(--white);border:1px solid var(--slate-200);border-radius:var(--radius-md);
  padding:var(--space-5);
}
.summary-card span{display:block;font-size:var(--fs-xs);color:var(--slate-500);margin-bottom:var(--space-2);}
.summary-card strong{font-family:var(--font-display);font-size:var(--fs-2xl);color:var(--navy-900);}

.admin-toolbar{
  display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;
  background:var(--white);border:1px solid var(--slate-200);border-radius:var(--radius-md);
  padding:var(--space-4);margin-bottom:var(--space-5);
}
.admin-toolbar input[type=search]{flex:1 1 200px;min-width:180px;width:auto;padding:0.65rem 0.9rem;border:1.5px solid var(--slate-200);border-radius:var(--radius-sm);}
.admin-toolbar select{flex:0 0 auto;width:auto;padding:0.65rem 0.9rem;border:1.5px solid var(--slate-200);border-radius:var(--radius-sm);background:var(--white);}

.table-wrap{
  background:var(--white);border:1px solid var(--slate-200);border-radius:var(--radius-md);
  overflow-x:auto;
}
table{width:100%;border-collapse:collapse;font-size:var(--fs-sm);min-width:900px;}
thead th{
  text-align:left;padding:var(--space-4);background:var(--slate-100);
  color:var(--slate-600);font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:0.03em;
  border-bottom:1px solid var(--slate-200);white-space:nowrap;
}
tbody td{padding:var(--space-4);border-bottom:1px solid var(--slate-200);vertical-align:top;}
tbody tr:last-child td{border-bottom:none;}
tbody tr:hover{background:var(--sky-50);}
.plan-pill{
  display:inline-block;padding:3px 10px;border-radius:100px;font-size:var(--fs-2xs);font-weight:600;
}
.plan-pill.individual{background:var(--sky-100);color:var(--navy-900);}
.plan-pill.familiar{background:var(--blue-500);color:var(--white);}
.plan-pill.empresarial{background:var(--navy-900);color:var(--white);}

select.status-select{
  width:auto;
  padding:5px 8px;border-radius:var(--radius-sm);border:1.5px solid var(--slate-200);font-size:var(--fs-2xs);font-weight:600;
}
.assign-select{
  width:auto;
  padding:5px 8px;border-radius:var(--radius-sm);border:1.5px solid var(--slate-200);font-size:var(--fs-2xs);
  max-width:140px;
}
.notes-btn{
  display:inline-flex;align-items:center;gap:4px;
  padding:5px 10px;border-radius:var(--radius-sm);border:1px solid var(--slate-200);
  background:var(--white);font-size:var(--fs-2xs);font-weight:600;color:var(--ink-700);
}
.notes-btn:hover{border-color:var(--navy-900);color:var(--navy-900);}
.notes-btn .count{
  background:var(--navy-900);color:var(--white);border-radius:100px;
  padding:0 6px;font-size:10px;min-width:16px;text-align:center;
}
.row-actions{display:flex;gap:var(--space-2);}
.icon-btn{
  width:32px;height:32px;border-radius:var(--radius-sm);border:1px solid var(--slate-200);
  display:flex;align-items:center;justify-content:center;background:var(--white);
}
.icon-btn:hover{border-color:var(--danger);color:var(--danger);}
.icon-btn svg{width:15px;height:15px;}

.empty-state{
  text-align:center;padding:var(--space-9) var(--space-5);color:var(--slate-500);
}
.empty-state svg{width:44px;height:44px;color:var(--slate-400);margin-bottom:var(--space-4);}

/* --- Tabs --- */
.admin-tabs{
  display:flex;gap:var(--space-2);margin-top:var(--space-4);
}
.admin-tab-btn{
  padding:0.55rem 1rem;border-radius:var(--radius-sm);
  background:transparent;border:1px solid rgba(255,255,255,0.2);
  color:rgba(255,255,255,0.75);font-size:var(--fs-sm);font-weight:600;
}
.admin-tab-btn.active{background:var(--white);color:var(--navy-900);border-color:var(--white);}
.tab-panel{display:none;}
.tab-panel.active{display:block;}

/* --- Section header row --- */
.section-header-row{
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3);
  margin-bottom:var(--space-5);
}
.section-header-row h2{font-size:var(--fs-lg);}

/* --- Broker table --- */
.broker-status-pill{
  display:inline-block;padding:3px 10px;border-radius:100px;font-size:var(--fs-2xs);font-weight:600;
}
.broker-status-pill.active{background:var(--sky-100);color:var(--navy-900);}
.broker-status-pill.inactive{background:var(--slate-100);color:var(--slate-500);}

/* --- Modal --- */
.modal-overlay{
  display:none;position:fixed;inset:0;background:rgba(14,27,46,0.5);
  align-items:center;justify-content:center;z-index:200;padding:var(--space-5);
}
.modal-overlay.show{display:flex;}
.modal-box{
  background:var(--white);border-radius:var(--radius-lg);max-width:480px;width:100%;
  max-height:85vh;overflow-y:auto;padding:var(--space-6);
}
.modal-box h3{font-size:var(--fs-lg);margin-bottom:var(--space-2);}
.modal-box .modal-sub{font-size:var(--fs-sm);color:var(--slate-500);margin-bottom:var(--space-5);}
.modal-close-row{display:flex;justify-content:flex-end;margin-bottom:var(--space-2);}
.modal-close-row button{
  width:30px;height:30px;border-radius:50%;border:1px solid var(--slate-200);background:var(--white);
  display:flex;align-items:center;justify-content:center;
}

/* --- Notes list --- */
.notes-list{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-5);max-height:220px;overflow-y:auto;}
.note-item{
  background:var(--slate-100);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);
}
.note-item .note-meta{font-size:var(--fs-2xs);color:var(--slate-500);margin-bottom:4px;display:flex;justify-content:space-between;gap:var(--space-3);}
.note-item .note-text{font-size:var(--fs-sm);color:var(--ink-700);white-space:pre-wrap;}
.no-notes{font-size:var(--fs-sm);color:var(--slate-500);text-align:center;padding:var(--space-4) 0;}

/* --- Forms inside panels --- */
.inline-form{
  background:var(--white);border:1px solid var(--slate-200);border-radius:var(--radius-md);
  padding:var(--space-5);margin-bottom:var(--space-5);display:none;
}
.inline-form.show{display:block;}
.inline-form .form-row{display:grid;gap:var(--space-4);grid-template-columns:1fr;margin-bottom:var(--space-4);}
@media (min-width:640px){.inline-form .form-row-3{grid-template-columns:1fr 1fr 1fr;}}
.inline-form label{font-size:var(--fs-xs);font-weight:600;margin-bottom:var(--space-2);display:block;}
.field-error{color:var(--danger);font-size:var(--fs-2xs);margin-top:4px;display:none;}
.field-error.show{display:block;}

.settings-card{
  background:var(--white);border:1px solid var(--slate-200);border-radius:var(--radius-md);
  padding:var(--space-6);max-width:480px;
}
.settings-card h3{font-size:var(--fs-md);margin-bottom:var(--space-5);}
.settings-note{
  background:var(--sky-50);border:1px solid var(--sky-100);border-radius:var(--radius-sm);
  padding:var(--space-4);font-size:var(--fs-xs);color:var(--slate-600);margin-top:var(--space-5);
}
.success-inline{
  color:var(--success);font-size:var(--fs-xs);font-weight:600;margin-top:var(--space-3);display:none;
}
.success-inline.show{display:block;}

/* --- Login gate --- */
.gate{
  min-height:100vh;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(160deg,var(--navy-950) 0%, var(--navy-900) 60%, var(--royal-700) 100%);
  padding:var(--space-5);
}
.gate-card{
  background:var(--white);border-radius:var(--radius-lg);padding:var(--space-7);
  max-width:380px;width:100%;box-shadow:var(--shadow-lift);text-align:center;
}
.gate-card img{height:36px;margin:0 auto var(--space-5);}
.gate-card h1{font-size:var(--fs-lg);margin-bottom:var(--space-2);}
.gate-card p{color:var(--slate-600);font-size:var(--fs-sm);margin-bottom:var(--space-6);}
.gate-card input{margin-bottom:var(--space-4);text-align:center;}
.gate-note{font-size:var(--fs-2xs);color:var(--slate-500);margin-top:var(--space-5);}
.gate-error{color:var(--danger);font-size:var(--fs-xs);margin-top:-var(--space-2);margin-bottom:var(--space-4);display:none;}
.gate-error.show{display:block;}
