/* admin.css — style central */
:root {
  --accent: #c60000;
  --bg: #f7f8fa;
  --card: #fff;
  --muted: #666;
}
*{box-sizing:border-box}
body{font-family:Segoe UI,Roboto,Arial,sans-serif;margin:0;background:var(--bg);color:#222;display:flex}
.sidebar{width:230px;height:100vh;background:#202225;color:#fff;position:fixed;left:0;top:0;padding:20px;display:flex;flex-direction:column}
.sidebar .logo{font-weight:700;margin-bottom:20px}
.sidebar nav{display:flex;flex-direction:column;gap:8px}
.sidebar nav a{color:#cfcfcf;text-decoration:none;padding:10px;border-radius:6px}
.sidebar nav a.active{background:var(--accent);color:#fff}
main{margin-left:250px;padding:22px;width:calc(100% - 250px)}
.page-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}
.header-actions{display:flex;gap:8px}
.card{background:var(--card);padding:16px;border-radius:10px;box-shadow:0 2px 10px rgba(0,0,0,0.06);margin-bottom:18px}
.card.small{max-width:420px}
.data-table{width:100%;border-collapse:collapse}
.data-table thead th{background:#f3f3f3;padding:10px;border-bottom:1px solid #eee}
.data-table tbody td{padding:10px;border-bottom:1px solid #eee}
.btn{border:none;padding:6px 8px;border-radius:6px;cursor:pointer}
.small-btn{padding:6px 10px;border-radius:6px}
.primary-btn{background:var(--accent);color:#fff;border:none;padding:8px 12px;border-radius:8px;cursor:pointer}
.secondary-btn{background:#efefef;border:1px solid #ddd;padding:8px 12px;border-radius:8px;cursor:pointer}
.small{padding:6px 8px}
.btn.danger{background:#6c757d;color:#fff}
.btn.resend{background:#007bff;color:#fff}
.btn.suspend{background:#dc3545;color:#fff}
.btn.reactivate{background:#28a745;color:#fff}
.status.active{color:#28a745;font-weight:700}
.status.suspended{color:#dc3545;font-weight:700}
.status.expired{color:#b56500;font-weight:700}

/* modal */
.modal{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,0.45)}
.modal.hidden{display:none}
.modal-content{background:#fff;padding:18px;border-radius:10px;width:420px;position:relative}
.modal-close{position:absolute;right:8px;top:8px;border:none;background:transparent;font-size:16px;cursor:pointer}
.modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}

/* responsive */
@media(max-width:900px){
  .sidebar{display:none}
  main{margin-left:0;padding:12px}
}

/* Comptes — interface améliorée */
.page-subtitle{margin:6px 0 0;color:var(--muted);font-size:.95rem}.account-security-note{border-left:5px solid var(--accent);background:linear-gradient(90deg,#fff5f5,#fff)}.account-security-note h3{margin-top:0}.table-scroll{overflow:auto}.accounts-table th,.accounts-table td{vertical-align:top;text-align:left}.accounts-table .actions{display:flex;gap:6px;flex-wrap:wrap;min-width:230px}.btn.edit{background:#0d6efd;color:#fff}.btn.reset-machine{background:#f59f00;color:#111}.btn:disabled{opacity:.45;cursor:not-allowed}.account-badge{display:inline-block;border-radius:999px;padding:3px 8px;font-size:.78rem;font-weight:700;background:#e9ecef;color:#222}.account-badge.success{background:#d1e7dd;color:#0f5132}.account-badge.danger{background:#f8d7da;color:#842029}.account-badge.warning{background:#fff3cd;color:#664d03}.account-badge.enterprise{background:#ede9fe;color:#5b21b6}.account-badge.particular{background:#ffe3e3;color:#9b111e}.sub-stack{display:flex;flex-direction:column;gap:4px}.sub-stack small{color:#666;font-size:.76rem}.account-modal-content{width:min(980px,94vw);max-height:92vh;overflow:auto}.account-modal-content h2{margin-top:0}.account-modal-content h3{margin:12px 0 8px}.account-modal-content input,.account-modal-content select,.account-modal-content textarea{width:100%;padding:9px;border:1px solid #d6d6d6;border-radius:8px;margin-top:5px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.check-line{display:flex;align-items:center;gap:8px;margin:10px 0}.check-line input{width:auto;margin:0}.machine-box{background:#f8f9fa;border:1px solid #e5e5e5;border-radius:8px;padding:10px;color:#333;margin-bottom:8px}@media(max-width:800px){.form-grid{grid-template-columns:1fr}.accounts-table{min-width:1100px}}
