/* Admin page, account forms and the no-computer screen. */
input[type=email] {display:block; width:100%; border:1px solid var(--line); border-radius:6px; background:var(--surface); color:var(--ink); padding:10px 11px; font-size:12px;}
.admin-section {margin:0 0 28px;}
.admin-section > h2 {font-size:14px; font-weight:650; margin:0 0 10px;}
.admin-section > p.muted {margin:-4px 0 10px; font-size:12px;}
.badge.person-active {background:#e9f4ee; color:#3f7558;}
.badge.person-invited {background:var(--blue-soft); color:var(--blue);}
.badge.person-disabled {background:var(--page); color:var(--muted);}

.access-scroll {overflow-x:auto; border:1px solid var(--line); border-radius:7px; background:var(--surface);}
.access-scroll > p {margin:0; padding:14px 16px;}
.access-matrix {table-layout:auto; width:auto; min-width:100%; font-size:12px;}
.access-matrix th, .access-matrix td {height:auto; padding:9px 14px; border-top:0; border-bottom:1px solid var(--line); text-align:center; white-space:nowrap; line-height:1.4;}
.access-matrix tbody tr:last-child > * {border-bottom:0;}
.access-matrix thead th {position:static; font-size:11px; font-weight:600; color:var(--muted); background:var(--page); max-width:170px; overflow:hidden; text-overflow:ellipsis;}
.access-matrix thead th:first-child, .access-matrix tbody th {text-align:left; position:sticky; left:0; z-index:1;}
.access-matrix tbody th {font-weight:600; font-size:12px; color:var(--ink); background:var(--surface); min-width:170px;}
.access-matrix tbody tr:hover th {background:var(--page);}
.access-matrix tbody th small {display:block; font-weight:400; font-size:11px;}
.access-matrix input {width:16px; height:16px; accent-color:var(--accent); cursor:pointer;}
.access-matrix input:disabled {cursor:default; opacity:.55;}

.inline-name {display:block; width:100%; border:1px solid transparent; border-radius:5px; background:transparent; color:var(--ink); padding:5px 7px; font-weight:600;}
.inline-name:hover {border-color:var(--line); background:var(--surface);}
.inline-name:focus {border-color:var(--accent); background:var(--surface); outline:none;}

.admin-activity {padding:12px 16px; background:var(--surface);}
.admin-activity summary {cursor:pointer; font-weight:600;}
.activity-list {list-style:none; margin:10px 0 0; padding:0; font-size:12px;}
.activity-list li {display:grid; grid-template-columns:165px minmax(90px,150px) minmax(0,1fr); gap:12px; padding:8px 0; border-top:1px solid var(--line);}

.admin-form {min-width:min(420px,calc(100vw - 80px));}
.admin-form > p {margin:0 0 14px;}
.admin-form > p.muted {font-size:12px; margin:0 0 4px;}
.admin-form select {font-size:12px;}
.choice-group {border:0; padding:0; margin:0 0 15px; min-width:0;}
.choice-group legend {font-size:11px; font-weight:650; margin-bottom:2px; padding:0;}
.choice-list {max-height:220px; overflow:auto;}
.choice-list .check-label {margin:8px 0; font-size:12px;}
.link-field {font-size:12px; background:var(--page);}
.admin-account-actions {margin-top:22px; padding-top:16px; border-top:1px solid var(--line);}
.admin-account-actions h3 {font-size:13px; margin:0 0 4px;}
.admin-account-actions .muted {font-size:12px; margin:0 0 12px;}
.account-form {min-width:min(380px,calc(100vw - 80px));}
.account-name {display:block; padding:8px 10px 6px; font-size:12px; font-weight:600; color:var(--ink);}
.account-name small {display:block; font-weight:400; color:var(--muted);}

.no-computer-actions {display:flex; flex-wrap:wrap; justify-content:center; gap:10px; margin:22px 0;}

@media(max-width:700px) {
  /* Six navigation entries for super admins: let the row scroll instead of widening the page. */
  .topbar nav {overflow-x:auto; scrollbar-width:none;}
  .topbar nav::-webkit-scrollbar {display:none;}
  .topbar nav a {flex:0 0 auto;}
  .topbar nav:has(a[data-nav="/admin"]) a {padding:0 8px;}
}
@media(max-width:600px) {
  .activity-list li {grid-template-columns:1fr; gap:2px;}
  .access-matrix th, .access-matrix td {padding:8px 10px;}
  .access-matrix tbody th {min-width:120px;}
}
