/* ---------- Admin ---------- */

.adm-stack { display: flex; flex-direction: column; gap: 22px; }
.adm-stack:empty { display: none; }
.group-note { overflow-wrap: anywhere; } /* can carry names and reasons typed by people */
.adm-empty { padding: 24px 20px; text-align: center; font-size: 0.9375rem; line-height: 1.5; color: var(--text-3); }
.adm-state { display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 56px 20px; text-align: center; color: var(--text-2); line-height: 1.5; }
.adm-state h2 { font-size: 1.25rem; color: var(--text); }
.load-more { align-self: center; }

.row-static { cursor: default; }
.row-static:hover { background: none; }
.row-static::after, .row-action::after { display: none; }
.row.warn > svg { color: #c46a00; }
.row-static > span:not(.row-avatar):not(.row-text):not(.row-end) { line-height: 1.35; padding: 10px 0; }
.row.warn span { font-size: 1rem; }
.row-meta { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; }
.row-meta small { font-size: 0.8125rem; color: var(--text-2); white-space: nowrap; }
.row-meta strong { font-weight: 600; }
.person-row { gap: 12px; min-height: 68px; padding: 0 16px; }
.person-row::after { margin-left: 2px; }
.person-row .kebab { margin-right: -8px; }
.you { color: var(--text-3); font-weight: 400; flex: none; }
.name-line { display: flex; gap: 4px; }
.name-line > span:first-child { min-width: 0; overflow: hidden; text-overflow: ellipsis; }

.stat-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.stat {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
  padding: 16px 18px;
  border-radius: 22px;
  background: #fff;
  color: var(--text);
  text-decoration: none;
  justify-content: space-between;
}
a.stat:hover { background: #fafafa; }
.stat-label { font-size: 0.875rem; color: var(--text-2); }
.stat-value { font-size: 1.75rem; font-weight: 700; letter-spacing: -0.02em; line-height: 1.1; overflow-wrap: anywhere; }

/* Filter pills: scroll sideways to the sheet's edge on narrow screens */
.pills {
  display: flex;
  gap: 8px;
  margin: 0 -16px;
  padding: 0 16px;
  overflow-x: auto;
  scrollbar-width: none;
  flex: none;
}
.pills::-webkit-scrollbar { display: none; }
.pills.wrap, .group .pills { margin: 0; padding: 0; flex-wrap: wrap; overflow: visible; }
.pill {
  flex: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 38px;
  padding: 0 16px;
  border: 0;
  border-radius: 999px;
  background: #fff;
  font-size: 0.9375rem;
  font-weight: 600;
  color: var(--text-2);
  cursor: pointer;
  transition: background 0.15s, color 0.15s;
}
.pill:hover { color: var(--text); }
.pill[aria-pressed="true"] { background: var(--accent); color: #fff; }
.pill-count { font-weight: 500; opacity: 0.65; }
.pill.small { height: 32px; padding: 0 13px; font-size: 0.875rem; background: var(--muted); }
.pill.small[aria-pressed="true"] { background: var(--accent); }

.sheet-page .segmented { flex: none; margin-bottom: 0; background: #e9e9ed; border: 0; }

/* Person header */
.adm-head { display: flex; align-items: center; gap: 16px; padding: 4px 6px 0; }
.adm-avatar {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: var(--accent);
  color: #fff;
  display: grid;
  place-items: center;
  font-size: 1.5rem;
  font-weight: 600;
  flex: none;
}
.adm-head-text { min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.adm-head-text h2 { font-size: 1.375rem; font-weight: 700; letter-spacing: -0.02em; overflow-wrap: anywhere; }
.adm-head-text .muted { font-size: 0.9375rem; overflow-wrap: anywhere; }
.chips { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }

.fields .frow .val { min-width: 0; max-width: 62%; text-align: right; overflow-wrap: anywhere; }
.fields .frow .lbl { min-width: 0; overflow-wrap: anywhere; }
.frow-text { display: flex; flex-direction: column; gap: 2px; min-width: 0; overflow-wrap: anywhere; }
.frow-text small { font-size: 0.8125rem; color: var(--text-2); }
.err-text { color: var(--error) !important; }
.mono { font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace; font-weight: 600; letter-spacing: 0.03em; }
.frow-text small.mono { font-weight: 400; color: var(--text-3); }

.note-form { display: flex; flex-direction: column; }
.note-actions { display: flex; justify-content: flex-end; padding: 0 14px 14px; }

/* Reports */
.rep { position: relative; }
.rep-head {
  display: flex;
  flex-direction: column;
  gap: 4px;
  width: 100%;
  padding: 14px 20px;
  border: 0;
  background: none;
  font: inherit;
  text-align: left;
  color: var(--text);
  cursor: pointer;
}
.rep-head:hover { background: #fafafa; }
.rep-by { font-size: 0.875rem; color: var(--text-2); overflow-wrap: anywhere; }
.rep-snippet { font-size: 0.9375rem; line-height: 1.45; color: #2a2b2e; }
.rep-body { display: flex; flex-direction: column; gap: 12px; padding: 0 20px 18px; }
.rep-link { align-self: flex-start; color: var(--accent); font-size: 0.9375rem; font-weight: 500; text-decoration: none; overflow-wrap: anywhere; }
.rep-link:hover { text-decoration: underline; }
.rep-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; }
.rep-actions small { font-size: 0.8125rem; }

/* Invite codes */
.code-card { display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 22px 20px; text-align: center; }
.code-big { font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace; font-size: 1.875rem; font-weight: 700; letter-spacing: 0.06em; overflow-wrap: anywhere; }
.code-actions { display: flex; gap: 10px; }

/* Team */
.role-notes { display: flex; flex-direction: column; gap: 6px; padding: 0 22px; margin-top: -12px; font-size: 0.875rem; line-height: 1.45; color: var(--text-2); }
.role-notes strong { color: var(--text); font-weight: 600; }
.lookup-note { padding: 0 20px 18px; font-size: 0.9375rem; color: var(--text-2); }
.lookup-add { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; padding: 0 20px 18px; }

/* Feed posts */
.thumb { width: 52px; height: 52px; flex: none; display: block; border-radius: 12px; object-fit: cover; background: var(--muted); }
.post-row-title { font-weight: 500; line-height: 1.35; }
.post-row-title a { color: inherit; text-decoration: none; }
.post-row-title a:hover { text-decoration: underline; }
.gitem.inline .btn { flex: none; }

/* Usage chart: one bar per day, tallest = most expensive day */
.chart { display: flex; flex-direction: column; gap: 10px; padding: 18px 20px 14px; }
.chart-head, .chart-axis { display: flex; justify-content: space-between; gap: 12px; font-size: 0.8125rem; color: var(--text-2); }
.bars { display: flex; align-items: flex-end; gap: 2px; height: 140px; border-bottom: 1px solid var(--border); }
.bars i { flex: 1; min-width: 0; height: 0; border-radius: 3px 3px 0 0; background: var(--accent); }
.bars i.on { min-height: 2px; }
.bars i:hover { opacity: 0.75; }

/* Groups: clay cover on its soft color, and a reported group post quoted inside its report */
.thumb.adm-cover { object-fit: contain; padding: 8px; border-radius: 16px; background: linear-gradient(145deg, #e8f0ff, #cfe0ff); }
.adm-cover[data-cover="dove"] { background: linear-gradient(145deg, #e6f6fd, #c8eafa); }
.adm-cover[data-cover="cross"] { background: linear-gradient(145deg, #f0ebff, #ddd2fb); }
.adm-cover[data-cover="praying"] { background: linear-gradient(145deg, #fff5dd, #fde5ad); }
.adm-cover[data-cover="flame"] { background: linear-gradient(145deg, #ffeedf, #ffd6b3); }
.adm-cover[data-cover="coffee"] { background: linear-gradient(145deg, #fbefe6, #f1d9c6); }
.adm-cover[data-cover="family"] { background: linear-gradient(145deg, #e6f6ea, #c9ebd3); }
.adm-cover[data-cover="youth"] { background: linear-gradient(145deg, #ffeaf2, #fdd0e1); }
.adm-quote { display: flex; flex-direction: column; gap: 8px; padding: 12px 14px; border-radius: 16px; background: var(--muted); }
.adm-quote small { font-size: 0.8125rem; color: var(--text-2); overflow-wrap: anywhere; }
.adm-quote p { font-size: 0.9375rem; line-height: 1.45; overflow-wrap: anywhere; }
.adm-quote .rep-actions { margin-top: 2px; }

/* Admin workspace: wide on desktop, stacked on phones. */
.adm-dashboard-head,.adm-range { display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap; }
.adm-dashboard-head h1 {font:600 28px/1.2 Inter,sans-serif;letter-spacing:-.8px;margin:0 0 6px;}
.adm-dashboard-head p,.adm-meta {color:var(--text-2);font-size:13px;line-height:1.55;}
.adm-meta {margin:10px 0;}
.adm-workspace-nav {display:flex;gap:8px;overflow:auto;padding:12px 0;}
.adm-workspace-nav a {white-space:nowrap;background:white;border:1px solid var(--border);border-radius:20px;padding:9px 14px;color:var(--text);text-decoration:none;font-size:13px;}
.adm-attention h2,.adm-chart-card h2 {font-size:18px;font-weight:600;margin:0 0 16px;}
.adm-queue-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:22px;}
.adm-queue {display:flex;flex-direction:column;gap:7px;background:#fff;padding:18px;border-radius:20px;color:var(--text);text-decoration:none;}
.adm-queue strong {font-size:25px;}.adm-queue span{font-size:13px;}.adm-queue small{color:var(--text-2);font-size:12px;}
.adm-chart-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.adm-chart-card {background:#fff;padding:22px;border-radius:22px;margin:12px 0;min-width:0;}
.adm-chart-card .pills {margin:0 0 16px;}
.adm-chart-bars {height:160px;display:flex;align-items:stretch;gap:4px;overflow-x:auto;padding:4px 2px;}
.adm-chart-point {position:relative;flex:1;min-width:12px;border:0;background:#f5f5f7;border-radius:4px;cursor:pointer;display:flex;align-items:flex-end;padding:0;}
.adm-chart-point span {display:block;width:100%;background:#0071e3;border-radius:4px;min-height:0;pointer-events:none;}
.adm-chart-point[aria-pressed=true] {outline:2px solid #1d1d1f;outline-offset:1px;}
.adm-chart-axis {display:flex;justify-content:space-between;font-size:12px;color:var(--text-2);margin:10px 0;}
.adm-chart-detail {font-size:14px;margin:16px 0;min-height:22px;}
.adm-chart-card summary {font-size:13px;color:var(--accent);cursor:pointer;}
.adm-table-scroll{overflow:auto;max-height:300px;}.adm-data-table{width:100%;font-size:12px;border-collapse:collapse;margin-top:16px;}
.adm-data-table th,.adm-data-table td{text-align:right;padding:9px;border-bottom:1px solid var(--border);}.adm-data-table th:first-child{text-align:left;}
.adm-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}.adm-service-grid>div{display:flex;flex-direction:column;gap:5px;font-size:13px;}.adm-service-grid strong{font-weight:500;}
.adm-outcomes{display:flex;flex-wrap:wrap;gap:22px;}.adm-outcomes>div{display:flex;flex-direction:column;gap:5px;font-size:13px;}.adm-outcomes strong{font-size:22px;}
@media(min-width:900px){.admin-workspace .sheet{width:min(1120px,96vw);max-width:1120px;}.admin-workspace .sheet-scroll{padding:28px 34px;}}
@media(max-width:600px){.adm-chart-grid{grid-template-columns:1fr;}.adm-queue-grid{gap:8px;}.adm-queue{padding:12px;}.adm-range{width:100%;}}

.adm-operation{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--border);font-size:13px;}.adm-operation span:last-child{color:var(--text-2);text-align:right;}
