*{box-sizing:border-box}body{margin:0;background:#0a0b10;color:#f7f7fb;font-family:Inter,Arial,sans-serif}.section{padding:12px 0 60px}.container{width:min(980px,calc(100% - 24px));margin:0 auto}.moderation-shell{background:#141620;border:1px solid #2b2e3a;border-radius:24px;padding:34px}.moderation-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:46px}.moderation-head h1{font-size:4.4rem;margin:6px 0 10px;line-height:1}.moderation-head h2{font-size:2.2rem;margin:6px 0}.eyebrow{color:#9b7cff;font-weight:800;letter-spacing:.15em;font-size:.8rem}.moderation-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.card{padding:28px;border:1px solid #2b2e3a;border-radius:22px;background:#151720}.card h3{font-size:1.35rem;margin:20px 0 16px}.card p{color:#d2d4df;line-height:1.55}.tag{display:inline-block;padding:7px 11px;border-radius:999px;background:#302658;color:#b99eff;font-size:.8rem;font-weight:700}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border-radius:12px;border:1px solid transparent;font-weight:700;cursor:pointer}.btn.primary{background:linear-gradient(135deg,#7b5cff,#9f79ff);color:#fff}.btn.secondary{background:#181a22;border-color:#444754;color:#fff}.manager{padding:10px 0}.moderation-form{display:grid;gap:10px;max-width:760px}.moderation-form label{margin-top:12px;font-weight:700}.moderation-form input,.moderation-form textarea{width:100%;padding:13px 14px;border-radius:10px;border:1px solid #30313d;background:#101118;color:#fff;font:inherit}.actions{display:flex;gap:10px;margin-top:14px}.moderation-message{margin-top:12px;color:#c6b8ff}@media(max-width:760px){.moderation-grid{grid-template-columns:1fr}.moderation-head{flex-direction:column}.moderation-head h1{font-size:3rem}.moderation-shell{padding:20px}}
.moderation-form select{width:100%;padding:13px 14px;border-radius:10px;border:1px solid #30313d;background:#101118;color:#fff;font:inherit}
.admin-list{display:grid;gap:12px;margin-top:24px}
.admin-item{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:16px;border:1px solid #2b2e3a;border-radius:14px;background:#101118}
.admin-item small{display:block;color:#aaa;margin-top:4px}


.login-view {
  max-width: 620px;
  margin: 0 auto;
  padding: 26px 0;
}

.login-view h1 {
  margin: 8px 0 12px;
  font-size: clamp(2.8rem, 7vw, 4.5rem);
  line-height: 1;
}

.login-copy {
  color: #d2d4df;
  margin-bottom: 24px;
}

#loginButton:disabled {
  cursor: wait;
  opacity: 0.75;
}


.login-separator {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 8px 0;
  color: #9fa1ac;
}

.login-separator::before,
.login-separator::after {
  content: "";
  flex: 1;
  height: 1px;
  background: #30313d;
}

.google-login {
  width: 100%;
  background: #ffffff;
  color: #17181e;
  border: 1px solid #d7d9e0;
}

.google-login:hover {
  background: #f2f3f7;
}

.google-login:disabled {
  cursor: wait;
  opacity: 0.75;
}


.event-checkbox-row {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 8px 0 6px;
  padding: 14px;
  border: 1px solid #30313d;
  border-radius: 10px;
  background: #101118;
}

.moderation-form .event-checkbox-row input {
  width: 20px;
  height: 20px;
  margin: 0;
}

[hidden] { display: none !important; }


#eventAdminList {
  margin-top: 30px;
}

#eventAdminList .admin-item {
  width: 100%;
}

#eventAdminList .actions {
  margin: 0;
}


#eventCount {
  margin: 8px 0 0;
  color: #b8bac5;
}

#eventAdminList {
  margin-top: 28px;
}

#eventAdminList .admin-item {
  width: 100%;
}


.admin-users-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 16px;
  margin-top: 34px;
  margin-bottom: 12px;
}

.admin-users-head h3,
.admin-users-head p {
  margin-bottom: 0;
}

.admin-users-head p {
  color: #aeb0bb;
}

#adminUserList .admin-item small {
  overflow-wrap: anywhere;
}

@media (max-width: 700px) {
  .admin-users-head {
    flex-direction: column;
    align-items: flex-start;
  }

  #adminUserList .admin-item {
    align-items: flex-start;
    flex-direction: column;
  }
}


/* PLUSIEURS RÔLES PAR UTILISATEUR */
.role-checkbox-list {
  margin: 16px 0 4px;
  padding: 18px;
  border: 1px solid #30313d;
  border-radius: 12px;
  background: #101118;
}
.role-checkbox-list legend {
  padding: 0 8px;
  color: #f7f7fb;
  font-weight: 800;
}
.role-checkbox-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.moderation-form .role-checkbox-row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  padding: 12px;
  border: 1px solid #2d2f39;
  border-radius: 10px;
  background: #151720;
  cursor: pointer;
}
.moderation-form .role-checkbox-row:hover { border-color: #7358d8; }
.moderation-form .role-checkbox-row input {
  width: 19px;
  height: 19px;
  margin: 0;
  accent-color: #8b68ff;
  flex: 0 0 auto;
}
@media (max-width: 650px) {
  .role-checkbox-grid { grid-template-columns: 1fr; }
}


/* CALENDRIER DES LIVES */
#liveCalendarAdminList {
  margin-top: 28px;
}

#liveCalendarCount {
  margin: 8px 0 0;
  color: #b8bac5;
}

#liveCalendarAdminList .admin-item {
  width: 100%;
}




.time-field {
  position: relative;
}

.time-field input {
  width: 100%;
  padding-right: 50px;
}

.time-icon {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 20px;
  pointer-events: none;
}


.moderation-account-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}