.page-header { display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:24px; flex-wrap:wrap; gap:16px; }
.page-subtitle { color:var(--text-secondary); font-size:0.9rem; margin-top:4px; }
.usuarios-stats-grid { grid-template-columns:repeat(3,1fr); }
.usuario-stat-card { position:relative; display:flex; align-items:center; justify-content:space-between; gap:18px; min-height:112px; overflow:hidden; transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.usuario-stat-card::after { content:""; position:absolute; top:-46px; right:-43px; width:104px; height:104px; border-radius:50%; background:currentColor; opacity:.05; pointer-events:none; }
.usuario-stat-card:hover { transform:translateY(-2px); box-shadow:0 8px 22px rgba(0,0,0,.06); }
.usuario-stat-content { position:relative; z-index:1; }.usuario-stat-content .stat-value { margin-top:9px; }
.usuario-stat-icon { position:relative; z-index:1; width:46px; height:46px; flex:0 0 46px; display:flex; align-items:center; justify-content:center; border-radius:14px; }
.usuario-stat-icon svg { width:23px; height:23px; }
.usuario-stat-total { color:#2563eb; }.usuario-stat-total .usuario-stat-icon { color:#2563eb; background:#e8f0ff; }
.usuario-stat-donos { color:#a16207; }.usuario-stat-donos .usuario-stat-icon { color:#b7790b; background:#fff4d6; }
.usuario-stat-ativos { color:#059669; }.usuario-stat-ativos .usuario-stat-icon { color:#059669; background:#dcfce7; }
.usuario-stat-card .stat-label, .usuario-stat-card .stat-value { color:var(--text-primary); }
[data-theme="escuro"] .usuario-stat-total .usuario-stat-icon { color:#7eabff; background:#172b4f; border:1px solid #234170; }
[data-theme="escuro"] .usuario-stat-donos .usuario-stat-icon { color:#f5c451; background:#3b2d12; border:1px solid #56421d; }
[data-theme="escuro"] .usuario-stat-ativos .usuario-stat-icon { color:#55d6a0; background:#12382a; border:1px solid #1c523d; }

.user-avatar-small { width:32px; height:32px; border-radius:50%; background:var(--bg-primary); display:flex; align-items:center; justify-content:center; overflow:hidden; }
.user-avatar-small img { width:100%; height:100%; object-fit:cover; }
.user-avatar-small:has(.user-initials) { background:var(--accent); color:var(--accent-text); }
.user-initials { font-size:.7rem; font-weight:800; letter-spacing:.02em; }
.reset-senha-aviso { margin-bottom:18px; padding:12px 14px; border:1px solid #f59e0b; border-radius:var(--radius-sm); background:#fffbeb; color:#92400e; font-size:.84rem; }
[data-theme="escuro"] .reset-senha-aviso { background:#3a2810; color:#fcd34d; border-color:#92400e; }
.usuario-modal { max-width:720px; padding:0; overflow:hidden; }
.usuario-modal-header { padding:24px 26px 20px; margin:0; border-bottom:1px solid var(--border-color); background:var(--bg-primary); }
.usuario-modal-heading { display:flex; align-items:center; gap:13px; }.usuario-modal-heading p { margin-top:2px; color:var(--text-secondary); font-size:.76rem; }
.usuario-modal-icon { width:44px; height:44px; flex:0 0 44px; display:flex; align-items:center; justify-content:center; border-radius:12px; background:var(--accent); color:var(--accent-text); }
.usuario-form { padding:24px 26px 26px; }.usuario-dados-row { grid-template-columns:1fr 1fr; }
.senha-input-wrapper { position:relative; }.senha-input-wrapper .form-control { padding-right:48px; }.senha-toggle { position:absolute; top:50%; right:8px; transform:translateY(-50%); width:34px; height:34px; display:flex; align-items:center; justify-content:center; border:0; border-radius:7px; background:transparent; color:var(--text-secondary); cursor:pointer; }.senha-toggle:hover { background:var(--bg-primary); color:var(--text-primary); }
.form-hint { display:block; margin-top:6px; color:var(--text-secondary); font-size:.7rem; }
.usuario-modal-actions { display:flex; justify-content:flex-end; gap:10px; padding-top:20px; margin-top:4px; border-top:1px solid var(--border-color); }.usuario-modal-actions .btn { min-width:120px; justify-content:center; }
@media (max-width:700px) { .usuarios-stats-grid { grid-template-columns:1fr; }.usuario-stat-card { min-height:96px; }.usuario-modal-header { padding:20px 18px 16px; }.usuario-modal-heading p { display:none; }.usuario-form { padding:20px 18px; }.usuario-dados-row { grid-template-columns:1fr; }.usuario-modal-actions { flex-direction:column-reverse; }.usuario-modal-actions .btn { width:100%; } }

.cargo-badge { padding:4px 12px; border-radius:20px; font-size:0.75rem; font-weight:700; }
.cargo-dono { background:var(--accent); color:var(--accent-text); }
.cargo-funcionario { background:var(--bg-primary); color:var(--text-primary); border:1px solid var(--border-color); }
.cargo-gerente { background:#ede9fe; color:#6d28d9; }
.cargo-caixa { background:#dbeafe; color:#1d4ed8; }
.cargo-garcom { background:#dcfce7; color:#15803d; }
[data-theme="escuro"] .cargo-gerente { background:rgba(124,58,237,.2); color:#c4b5fd; }
[data-theme="escuro"] .cargo-caixa { background:rgba(37,99,235,.2); color:#93c5fd; }
[data-theme="escuro"] .cargo-garcom { background:rgba(22,163,74,.2); color:#86efac; }
