/* ==========================================================================
   Cherry Pickers — admin.css
   Administration screen (#adminView): user directory + system errors.
   ========================================================================== */

/* ---------- admin tables (Events / Venues / Song & dance) ---------- */
/* ---------- notification delivery (admin settings) ---------- */
.delivery-panel{ margin-top:34px; }
.delivery-chips{ display:flex; gap:8px; flex-wrap:wrap; margin:14px 0 12px; }
.delivery-chip{ padding:5px 11px; border-radius:999px; font-size:11px; font-weight:800; border:1px solid var(--line); }
.delivery-chip.on{ background:rgba(126,145,102,0.16); color:#a7c290; border-color:rgba(126,145,102,0.45); }
.delivery-chip.off{ background:rgba(163,64,42,0.14); color:#e08469; border-color:rgba(163,64,42,0.4); }
.delivery-grid{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin:0 0 10px; }
.delivery-grid article{ background:var(--ink-2); border:1px solid var(--line); border-radius:var(--radius-s); padding:12px; text-align:center; }
.delivery-grid article.bad{ border-color:rgba(163,64,42,0.6); }
.delivery-grid strong{ display:block; font-family:'Big Shoulders Display',sans-serif; font-size:24px; color:var(--brass); }
.delivery-grid article.bad strong{ color:#e08469; }
.delivery-grid span{ font-size:10.5px; color:var(--ivory-dim); }
.delivery-tests{ display:flex; gap:10px; flex-wrap:wrap; align-items:flex-end; margin:14px 0 6px; }
.delivery-to{ display:grid; gap:5px; flex:1 1 240px; min-width:0; }
.delivery-to span{ font-size:11px; color:var(--ivory-dim); }
.delivery-to input{ background:var(--ink-3); color:var(--ivory); border:1px solid var(--line); border-radius:var(--radius-s); padding:9px 11px; font:inherit; font-size:13px; min-width:0; }
.delivery-to input:disabled{ opacity:.5; }
@media(max-width:560px){ .delivery-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
.table-wrap{ overflow-x:auto; border:1px solid var(--line); border-radius:var(--radius-m); }
table{ width:100%; border-collapse:collapse; font-size:13px; min-width:560px; }
th{ text-align:left; font-size:11px; font-weight:700; color:var(--denim); padding:10px 12px; border-bottom:1px solid var(--line); white-space:nowrap; }
td{ padding:12px; border-bottom:1px solid var(--line); color:var(--ivory-dim); vertical-align:middle; }
tr:last-child td{ border-bottom:0; }
.ev-name-td{ color:var(--ivory); font-weight:600; }
.row-actions{ white-space:nowrap; }
.row-actions button{ margin-right:4px; }
.row-actions button:last-child{ margin-right:0; }
#adminDanceLinksBody select{ background:var(--ink-3); color:var(--ivory); border:1px solid var(--line); border-radius:var(--radius-s); padding:6px 8px; font:inherit; font-size:12px; }

.admin-users-list{ display:grid; gap:7px; }
.admin-user-row{
  display:grid; grid-template-columns:34px minmax(0,1fr) auto auto; align-items:center; gap:10px;
  background:var(--ink-3); border:1px solid var(--line); border-radius:var(--radius-s); padding:10px;
}
.admin-user-row > div:nth-child(2){ display:grid; gap:3px; min-width:0; }
.admin-user-row strong, .admin-user-row small{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.admin-user-row strong{ font-size:13px; color:var(--ivory); }
.admin-user-row small{ font-size:10px; color:var(--ivory-dim); }
.admin-user-roles{ display:flex; flex-wrap:wrap; justify-content:flex-end; gap:4px; }
.admin-user-role-editor{ grid-column:1 / -1; display:flex; align-items:center; flex-wrap:wrap; gap:8px; border-top:1px solid var(--line); padding-top:9px; margin-top:2px; font-size:10px; }
.admin-user-role-editor > span{ font-weight:800; color:var(--brass); margin-right:2px; }
.admin-user-role-editor label{ display:inline-flex; align-items:center; gap:4px; color:var(--ivory); font-size:10px; }
.admin-user-role-editor input{ accent-color:var(--sage); }
.admin-user-role-editor button{ margin-left:auto; padding:7px 10px; font-size:10px; }

@media(max-width:600px){
  .admin-user-row{ grid-template-columns:30px minmax(0,1fr) auto; }
  .admin-user-roles{ grid-column:2 / -1; justify-content:flex-start; }
  .admin-user-status{ grid-column:3; grid-row:1; }
}

.admin-errors-panel{ position:relative; margin-top:16px; }
.admin-errors-list{ display:grid; gap:7px; }
.admin-error-row{ display:grid; grid-template-columns:42px minmax(0,1fr); align-items:start; gap:10px; padding:11px; background:var(--ink-3); border:1px solid var(--line); border-radius:var(--radius-s); }
.admin-error-status{ display:grid; place-items:center; min-height:28px; border-radius:var(--radius-s); font-size:11px; font-weight:800; }
.admin-error-status.status-server{ background:rgba(163,64,42,0.18); color:#e08469; }
.admin-error-status.status-request{ background:rgba(201,162,78,0.15); color:var(--brass); }
.admin-error-copy{ display:grid; gap:3px; min-width:0; }
.admin-error-copy strong{ font-size:12px; color:var(--ivory); overflow-wrap:anywhere; }
.admin-error-copy span, .admin-error-copy small{ color:var(--ivory-dim); font-size:10px; overflow-wrap:anywhere; }
