/* Dashboard styles — Men Too Movement */

/* Theme tokens */
:root {
  --bg: #0f1115;
  --surface: #141820;
  --surface-2: #1a1f29;
  --text: #e6e9ef;
  --muted: #9aa3b2;
  --brand: #5aa7ff;
  --ok: #47d18c;
  --warn: #ffaf38;
  --danger: #ff4d4f;
  --border: #2a3240;
  --radius-lg: 16px;
  --radius-md: 12px;
  --shadow-1: 0 6px 20px rgba(0,0,0,.25);
}

/* Page shell */
body.dashboard {
  background: var(--bg);
  color: var(--text);
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin: 0;
}

/* Top bar */
.topbar {
  background: linear-gradient(180deg, #10141c, #0f1218);
  border-bottom: 1px solid var(--border);
}
.topbar .wrap {
  max-width: 1100px;
  margin: 0 auto;
  padding: 14px 20px;
  display: flex;
  align-items: center;
  gap: 12px;
}
.site-title {
  margin: 0;
  font-size: clamp(18px, 2.2vw, 24px);
  font-weight: 800;
  letter-spacing: 0.2px;
}
.spacer { flex: 1; }
.welcome { color: var(--muted); }

/* Main area */
.dash-main {
  max-width: 1100px;
  margin: 20px auto 40px;
  padding: 0 20px;
}

/* Quick actions grid */
.quick-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 14px;
  margin-bottom: 24px;
}

.card {
  display: block;
  text-decoration: none;
  color: var(--text);
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: 16px;
  font-weight: 700;
  box-shadow: var(--shadow-1);
  transition: transform .04s ease, border-color .2s ease, background .2s ease;
}
.card:hover { transform: translateY(-1px); border-color: #384154; }
.card:active { transform: translateY(0); }

.card--blue   { background: linear-gradient(180deg, rgba(90,167,255,.12), rgba(20,24,32,1)); }
.card--green  { background: linear-gradient(180deg, rgba(71,209,140,.12), rgba(20,24,32,1)); }
.card--yellow { background: linear-gradient(180deg, rgba(255,175,56,.12), rgba(20,24,32,1)); }
.card--gray   { background: linear-gradient(180deg, rgba(154,163,178,.12), rgba(20,24,32,1)); }

.dash-actions { grid-column: 1 / -1; display:flex; justify-content:flex-end; }

/* Buttons */
.btn {
  -webkit-tap-highlight-color: transparent;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 40px;
  padding: 0 14px;
  font-weight: 700;
  font-size: 14px;
  color: var(--text);
  background: var(--surface-2);
  border: 1px solid var(--border);
  border-radius: var(--radius-md);
  cursor: pointer;
  transition: transform .04s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease;
}
.btn:hover { border-color: #3b4558; }
.btn:active { transform: translateY(1px); }

.btn-primary { background: rgba(90,167,255,.16); border-color: rgba(90,167,255,.35); }
.btn-danger  { background: rgba(255,77,79,.12);  border-color: rgba(255,77,79,.35); color: #ffb8b8; }

/* Admin tools section */
.admin-tools {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: 16px;
  box-shadow: var(--shadow-1);
  margin-bottom: 26px;
}
.admin-tools h2 { margin: 0 0 10px; font-size: 18px; }

.admin-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.admin-select {
  height: 40px;
  padding: 0 10px;
  background: var(--surface-2);
  color: var(--text);
  border: 1px solid var(--border);
  border-radius: var(--radius-md);
}

/* Member tools section */
.member-tools h2 { margin: 0 0 10px; font-size: 18px; }

/* Status text */
.status { margin-top: 8px; font-size: 13px; color: var(--muted); }
.status.success { color: #a8f0c8; }
.status.error { color: #ffb8b8; }

/* Responsive */
@media (max-width: 760px) {
  .quick-actions { grid-template-columns: 1fr; }
}
