:root {
  --mc-bg: #0b171b;
  --mc-card: rgba(17, 34, 38, .96);
  --mc-text: #f8f1e5;
  --mc-muted: #c1c9c4;
  --mc-primary: #49b992;
  --mc-primary-dark: #287c65;
  --mc-pink: #dc8495;
  --mc-border: rgba(240, 225, 195, .16);
  --mc-green: #62c4a0;
  --mc-gold: #e2bd75;
  --mc-shadow: 0 22px 60px rgba(0, 0, 0, .3);
  color-scheme: dark;
}

html {
  min-height: 100%;
  background: #091519;
}

body {
  min-height: 100vh;
  color: var(--mc-text);
  background-color: #091519;
  background-image:
    radial-gradient(ellipse at 12% 8%, rgba(25, 102, 78, .26), transparent 36rem),
    radial-gradient(ellipse at 94% 25%, rgba(111, 40, 64, .2), transparent 33rem),
    linear-gradient(180deg, rgba(7, 17, 21, .84), rgba(9, 21, 25, .97)),
    url("../assets/images/campus-fallback.jpg");
  background-position: center top;
  background-size: auto, auto, auto, cover;
  background-attachment: fixed;
  background-repeat: no-repeat;
}

body.members-page {
  color: var(--mc-text);
  background-color: #091519;
  background-image:
    radial-gradient(ellipse at 12% 8%, rgba(25, 102, 78, .24), transparent 36rem),
    radial-gradient(ellipse at 94% 25%, rgba(111, 40, 64, .2), transparent 33rem),
    linear-gradient(180deg, rgba(7, 17, 21, .86), rgba(9, 21, 25, .98)),
    url("../assets/images/campus-fallback.jpg");
  background-position: center top;
  background-size: auto, auto, auto, cover;
  background-attachment: fixed;
  background-repeat: no-repeat;
}

body.members-page p,
body.members-page .mc-subtitle {
  color: var(--mc-muted);
}

.mc-topbar {
  color: #fbf5e9;
  background: rgba(8, 22, 25, .9);
  border-bottom-color: rgba(240, 225, 195, .16);
  box-shadow: 0 8px 28px rgba(0, 0, 0, .14);
}

.mc-brand-name span { color: #e4c681; }
.mc-nav a { color: #d2d5ce; }
.mc-nav a:hover,
.mc-nav a.active {
  color: #f9e6b5;
  background: rgba(226, 189, 117, .13);
}

.mc-button-white,
.mc-button-light {
  color: #f6eddd;
  background: rgba(255, 255, 255, .08);
  border: 1px solid rgba(240, 225, 195, .21);
}

.mc-button-primary {
  color: #071a16;
  background: linear-gradient(120deg, #65c9a4, #d8b86f);
  box-shadow: 0 12px 28px rgba(38, 137, 104, .22);
}

.mc-button-primary:hover { background: linear-gradient(120deg, #80d7b6, #ebcc86); }

.mc-card {
  color: var(--mc-text);
  background:
    linear-gradient(145deg, rgba(24, 46, 48, .97), rgba(18, 31, 38, .98));
  border-color: rgba(240, 225, 195, .15);
  box-shadow: var(--mc-shadow);
}

.mc-eyebrow { color: #e2bd75; }
.mc-main { margin-top: 44px; }
.mc-heading h1,
.mc-profile-info h1 { color: #fff9ed; }
.mc-heading .mc-subtitle { max-width: 700px; }
.mc-footer { color: #c5c9c1; border-top: 1px solid rgba(240, 225, 195, .12); }

.mc-input,
.members-page input,
.members-page select,
.members-page textarea {
  color: #faf3e7;
  background: #102327;
  border-color: rgba(240, 225, 195, .22);
}

.mc-input::placeholder,
.members-page input::placeholder,
.members-page textarea::placeholder { color: #aeb9b3; }

.mc-input:focus,
.members-page input:focus,
.members-page textarea:focus,
.members-page select:focus {
  border-color: #d9b66e;
  box-shadow: 0 0 0 3px rgba(217, 182, 110, .16);
}

.mc-filter,
.mc-detail,
.mc-chat-sidebar,
.mc-chat-panel,
.mc-chat-sidebar-head,
.mc-conversation,
.mc-messages {
  color: #f6f0e6;
  background: rgba(13, 29, 33, .82);
  border-color: rgba(240, 225, 195, .14);
}

.mc-filter { color: #d5d8d1; }
.mc-filter.active,
.mc-filter:hover {
  color: #f7e5b8;
  background: rgba(226, 189, 117, .14);
  border-color: rgba(226, 189, 117, .34);
}

.mc-match-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.mc-match-card {
  background: #102125;
  border-color: rgba(240, 225, 195, .15);
}
.mc-match-card:hover { box-shadow: 0 25px 60px rgba(0, 0, 0, .42); }
.mc-match-photo-wrap {
  height: clamp(290px, 34vw, 420px);
  background: #21363a;
}
.mc-match-photo { object-position: center 35%; }
.mc-photo-label {
  color: #fff8ec;
  background: rgba(12, 26, 29, .82);
  border: 1px solid rgba(255,255,255,.18);
}
.mc-match-info h2,
.mc-match-title h2 { color: #fff7e9; }
.mc-match-title p,
.mc-bio,
.mc-profile-section p { color: #c4cbc5; }
.mc-compatibility { color: #f6dfaa; background: rgba(222, 182, 105, .15); }
.mc-online-dot { background: #5bd2a4; }
.mc-tag {
  color: #e6d8bc;
  background: rgba(226, 189, 117, .1);
  border-color: rgba(226, 189, 117, .2);
}

.mc-profile-layout { grid-template-columns: minmax(0, 1.06fr) minmax(0, .94fr); }
.mc-profile-photo-card { min-height: 560px; background: #1a2e31; }
.mc-profile-photo {
  height: min(72vh, 780px);
  min-height: 560px;
  object-position: center 35%;
}
.mc-profile-photo-placeholder,
.mc-profile-photo-empty {
  color: #fbf2df;
  background:
    radial-gradient(ellipse at 20% 15%, rgba(88, 187, 146, .45), transparent 50%),
    linear-gradient(140deg, #173b36, #342234 70%, #8b5544);
}
.mc-profile-photo-placeholder strong,
.mc-profile-photo-placeholder small { color: #fff3da; }
.mc-profile-section { border-bottom-color: rgba(240, 225, 195, .16); }
.mc-detail { background: rgba(255, 255, 255, .045); }
.mc-detail span { color: #c2c9c3; }
.mc-detail strong { color: #fbf3e5; }
.mc-profile-photo-caption {
  background: linear-gradient(transparent, rgba(8, 18, 21, .9));
}

.mc-chat-layout {
  background: rgba(12, 27, 31, .96);
  border-color: rgba(240, 225, 195, .17);
}
.mc-chat-sidebar { background: rgba(16, 35, 38, .94); }
.mc-chat-header { background: rgba(17, 35, 38, .96); border-bottom-color: var(--mc-border); }
.mc-conversation.active,
.mc-conversation:hover { background: rgba(226, 189, 117, .12); }
.mc-message-bubble {
  color: #f4ecde;
  background: #26363a;
  border-color: rgba(240,225,195,.15);
}
.mc-message.mine .mc-message-bubble {
  color: #10241e;
  background: linear-gradient(130deg, #8bd4b5, #e2c37d);
}
.mc-message-time,
.mc-date-divider { color: #bac4bc; }
.mc-chat-composer {
  background: rgba(17, 35, 38, .96);
  border-top-color: var(--mc-border);
}

.dashboard-main { width: min(1220px, 92%); margin-top: 32px; }
.dashboard-welcome {
  position: relative;
  isolation: isolate;
  min-height: 290px;
  overflow: hidden;
  padding: clamp(28px, 5vw, 60px);
  background:
    linear-gradient(90deg, rgba(7, 22, 23, .93), rgba(14, 47, 42, .76) 55%, rgba(43, 29, 39, .36)),
    url("../assets/images/campus-fallback.jpg") center 42% / cover no-repeat,
    linear-gradient(125deg, #153c34, #201927);
  border: 1px solid rgba(235, 204, 137, .25);
  box-shadow: 0 28px 70px rgba(0, 0, 0, .3);
}
.dashboard-welcome::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 400px;
  height: 400px;
  right: 8%;
  top: -210px;
  border: 1px solid rgba(239, 210, 157, .3);
  border-radius: 50%;
  box-shadow: 0 0 0 38px rgba(239, 210, 157, .035), 0 0 0 78px rgba(239, 210, 157, .025);
}
.dashboard-welcome h1 { color: #fff8eb; font-size: clamp(2.1rem, 5vw, 3.7rem); }
.dashboard-welcome .mc-eyebrow { color: #efce8a; }
.dashboard-welcome .mc-subtitle { color: #e4e0d7; }
.dashboard-welcome .mc-button {
  color: #10241e;
  background: linear-gradient(120deg, #e3c17a, #f1d8a2);
}
.dashboard-welcome-avatar {
  width: 112px;
  height: 112px;
  flex-basis: 112px;
  border: 3px solid rgba(255, 239, 202, .85);
  box-shadow: 0 0 0 8px rgba(255,255,255,.08), 0 18px 38px rgba(0,0,0,.28);
}
.dashboard-analytics {
  display: grid;
  grid-template-columns: minmax(250px, .85fr) minmax(0, 1.65fr);
  gap: 18px;
  margin: 0 0 25px;
}
.dashboard-chart-card { padding: 24px; min-width: 0; }
.dashboard-chart-heading { display: flex; justify-content: space-between; align-items: start; gap: 14px; }
.dashboard-chart-heading h2 { color: #fff4e2; font-size: 1.2rem; }
.dashboard-chart-heading > span {
  color: #f1d392;
  font-size: 1.8rem;
  font-variant-numeric: tabular-nums;
  font-weight: 800;
}
.dashboard-doughnut-wrap {
  position: relative;
  width: 190px;
  height: 190px;
  margin: 12px auto 6px;
}
.dashboard-doughnut-wrap canvas { width: 100% !important; height: 100% !important; }
.dashboard-doughnut-wrap > span {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: #fff5e5;
  font-size: 1.55rem;
  font-weight: 800;
  pointer-events: none;
}
.dashboard-line-wrap { height: 255px; margin-top: 16px; }
.dashboard-line-wrap canvas { width: 100% !important; height: 100% !important; }
.dashboard-chart-card p:not(.mc-eyebrow) { color: #c2cbc3; font-size: 13px; line-height: 1.65; }
.chart-empty { color: #e4d5b5; font-size: 13px; line-height: 1.6; }
.dashboard-stat-grid {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.dashboard-stat-card {
  min-height: 100px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  padding: 18px 21px;
  border: 1px solid rgba(240, 225, 195, .16);
  border-radius: 18px;
  color: #f7f0e4;
  box-shadow: 0 16px 35px rgba(0,0,0,.16);
}
.dashboard-stat-card span { color: rgba(255,255,255,.87); font-size: 13px; font-weight: 700; }
.dashboard-stat-card strong { color: white; font-size: 2rem; font-variant-numeric: tabular-nums; }
.stat-match { background: linear-gradient(120deg, #14634f, #1d876a); }
.stat-chat { background: linear-gradient(120deg, #733b4b, #a65367); }
.stat-message { background: linear-gradient(120deg, #292c50, #434c7c); }
.dashboard-grid { gap: 18px; }
.dashboard-card,
.dashboard-account {
  background: linear-gradient(145deg, rgba(23, 44, 46, .97), rgba(17, 31, 38, .97));
}
.dashboard-card h2,
.dashboard-card h3,
.dashboard-safety h2 { color: #fff4e2; }
.dashboard-card p:not(.mc-eyebrow) { color: #c2cbc3; }
.dashboard-icon,
.dashboard-safety-icon { background: rgba(225, 186, 108, .16); }
.dashboard-shortcuts a,
.dashboard-account-link,
.dashboard-section-heading > a,
.dashboard-safety a { color: #e6c47f; }
.dashboard-status { color: #c9f0de; background: rgba(71, 184, 138, .17); }
.dashboard-safety {
  color: #f6eedf;
  background: linear-gradient(120deg, rgba(64, 53, 40, .85), rgba(39, 35, 45, .9));
  border-color: rgba(226, 189, 117, .25);
}
.dashboard-safety p { color: #d6d0c5; }

.create-profile-main { width: min(1240px, 94%); }
.create-profile-heading h1 { color: #fff6e7; font-size: clamp(2rem, 4.5vw, 3.1rem); }
.create-profile-heading .mc-subtitle { color: #d1d2ca; }
.profile-editor {
  padding: clamp(22px, 3.5vw, 38px);
  background:
    linear-gradient(150deg, rgba(20, 42, 44, .97), rgba(15, 27, 34, .98));
}
.profile-form-section { border-bottom-color: rgba(240, 225, 195, .17); }
.profile-form-section h2,
.profile-preview-heading h2 { color: #fff4e1; }
.profile-field label { color: #f3ead9; }
.profile-help,
.profile-field-meta { color: #c1c9c3; }
.photo-upload {
  color: #f3d89e;
  background: rgba(226, 189, 117, .09);
  border-color: rgba(226, 189, 117, .32);
}
.profile-preview-column { position: sticky; top: 100px; }
.profile-preview-photo { min-height: 380px; background: #1d3335; }
.profile-preview-photo img { height: 100%; min-height: 380px; object-fit: cover; }
.profile-photo-placeholder {
  color: #fff1d8;
  background:
    radial-gradient(ellipse at 22% 18%, rgba(90, 184, 142, .4), transparent 52%),
    linear-gradient(145deg, #173d36, #432a3a 70%, #915e49);
}
.profile-preview-card {
  overflow: hidden;
  background: linear-gradient(145deg, rgba(25, 45, 47, .96), rgba(20, 30, 38, .97));
}
.profile-preview-content h3 { color: #fff5e5; }
.profile-preview-intention { color: #e4bf79; }
.profile-preview-bio { color: #d0d1c9; }
.profile-preview-preferences { color: #c7cdc7; }
.profile-preview-card .mc-tag { color: #efdfbd; background: rgba(226, 189, 117, .12); }
.profile-save-status { color: #e5d8bb; }

.payment-main { max-width: 1020px; }
.payment-card,
.pending-payment,
.admin-chart-card {
  background: linear-gradient(145deg, rgba(23, 44, 46, .98), rgba(16, 29, 36, .98));
}
.payment-card h2,
.pending-payment h2,
.admin-chart-card h3 { color: #fff4e2; }
.payment-message,
.payment-card > p,
.pending-payment dt { color: #c8cdc5; }
.payment-details > div {
  background: rgba(255,255,255,.045);
  border-color: rgba(240,225,195,.14);
}
.payment-details dt,
.pending-payment dd { color: #f3ead8; }
.payment-warning {
  color: #f1dcaa !important;
  background: rgba(178, 129, 56, .15);
  border: 1px solid rgba(226, 189, 117, .27);
}
.payment-back-link { color: #e6c47f; }
.payment-filter-label { color: #f2ead9; }
.payment-record-status {
  color: #f1dbab;
  background: rgba(226,189,117,.12);
}
.payment-admin-note { color: #eee5d4; }
.reject-button { color: #ffdfdf; background: #7c3944; }

.discover-page {
  min-height: 100vh;
  color: #f8f1e5;
  background-color: #0a171b !important;
  background-image:
    radial-gradient(ellipse at 8% 10%, rgba(26, 103, 79, .25), transparent 34rem),
    radial-gradient(ellipse at 96% 38%, rgba(117, 43, 66, .2), transparent 32rem),
    linear-gradient(180deg, rgba(8, 18, 21, .84), rgba(8, 18, 21, .98)),
    url("../assets/images/campus-fallback.jpg") !important;
  background-position: center top !important;
  background-size: auto, auto, auto, cover !important;
  background-attachment: fixed !important;
  font-family: var(--font);
}
.discover-nav {
  position: sticky;
  top: 0;
  z-index: 10;
  background: rgba(8, 22, 25, .91);
  border-bottom-color: rgba(240,225,195,.16);
  backdrop-filter: blur(14px);
}
.discover-brand { color: #fff5e5; }
.discover-brand span { color: #e2bd75; }
.discover-links a { color: #d0d5ce; }
.discover-links a.active,
.discover-links a:hover { color: #edce8c; }
.discover-heading { max-width: 780px; margin-bottom: 30px; }
.discover-heading h1 { color: #fff6e8; font-size: clamp(2.2rem, 5vw, 3.8rem); }
.discover-heading p { color: #d1d5ce; }
.discover-layout { grid-template-columns: minmax(0, 1.55fr) minmax(240px, .72fr); gap: 22px; }
.discover-page .member-card,
.discover-page .discover-empty,
.discover-page .discover-panel {
  color: #f8f1e5;
  background: linear-gradient(145deg, rgba(23, 44, 46, .98), rgba(16, 28, 35, .98));
  border: 1px solid rgba(240, 225, 195, .16);
  border-radius: 22px;
  box-shadow: 0 24px 60px rgba(0,0,0,.27);
}
.discover-page .member-photo {
  height: clamp(390px, 46vw, 580px);
  background:
    linear-gradient(145deg, #193d37, #32253b 60%, #80503f);
}
.discover-page .member-photo img { object-position: center 35%; }
.discover-page .image-fallback {
  background:
    radial-gradient(ellipse at 20% 15%, rgba(94,194,152,.45), transparent 50%),
    linear-gradient(135deg, #153c36, #3c293f 65%, #84503e);
}
.discover-page .member-info { padding: clamp(20px, 3vw, 34px); }
.discover-page .member-info h2 { color: #fff4e2; font-size: clamp(1.8rem, 3vw, 2.5rem); }
.discover-page .member-info p { color: #d1d2ca; }
.discover-page .member-intention { color: #e6c47f !important; }
.discover-page .interest-list span {
  color: #f0dfbe;
  background: rgba(226, 189, 117, .09);
  border-color: rgba(226, 189, 117, .23);
}
.discover-page .pass-button {
  color: #f1e6d8;
  background: #3b4140;
}
.discover-page .like-button { color: #10261f; background: linear-gradient(120deg, #66c9a4, #e1bd74); }
.discover-page .discover-panel { padding: 23px; }
.discover-page .discover-panel h3 { color: #fff2df; }
.discover-page .discover-panel p { color: #c6cdc6; }
.discover-page .discover-panel a { color: #e3c17e; }
.discover-page .discover-status { color: #f2d9a2; }

.safety-page {
  color: #f5eddf;
  background-color: #091519;
  background-image:
    radial-gradient(ellipse at 12% 8%, rgba(25, 102, 78, .24), transparent 36rem),
    radial-gradient(ellipse at 94% 25%, rgba(111, 40, 64, .2), transparent 33rem),
    linear-gradient(180deg, rgba(7, 17, 21, .86), rgba(9, 21, 25, .98)),
    url("../assets/images/campus-fallback.jpg");
  background-position: center top;
  background-size: auto, auto, auto, cover;
  background-attachment: fixed;
  background-repeat: no-repeat;
}
.safety-page header,
.safety-page footer { background: rgba(7, 19, 23, .94); }
.safety-page .hero {
  background:
    linear-gradient(90deg, rgba(7, 22, 23, .88), rgba(26, 39, 38, .48)),
    url("../assets/images/campus-fallback.jpg") center 42% / cover no-repeat,
    linear-gradient(135deg, #143d34, #392337);
}
.safety-page .hero .eyebrow { color: #e4c47f; }
.safety-page main { max-width: 1040px; margin-top: 42px; }
.safety-card {
  color: #f7f0e4;
  background: linear-gradient(145deg, rgba(24,45,47,.97), rgba(17,30,37,.98));
  border-color: rgba(240,225,195,.16);
  box-shadow: 0 18px 44px rgba(0,0,0,.24);
}
.safety-card h2 { color: #fff3df; }
.safety-card p,
.safety-card ul { color: #cbd0c8; }
.safety-page .notice {
  color: #f0dcac;
  background: rgba(166, 120, 53, .15);
  border-color: rgba(226,189,117,.24);
}
.safety-page .notice strong { color: #ffe8ae; }
.safety-page footer { background: #081519; }
.safety-page .number { color: #f5d38d; background: rgba(226,189,117,.15); }

.auth { min-height: calc(100vh - 68px); }
.auth-side {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background:
    linear-gradient(90deg, rgba(8, 25, 25, .93), rgba(28, 32, 37, .55)),
    url("../assets/images/campus-fallback.jpg") center / cover no-repeat,
    linear-gradient(135deg, #143d34, #392337);
}
.auth-side h1,
.auth-side h2 { color: #fff3df; }
.auth-side p { color: #e1dfd5; }
.auth-side ul { color: #f0e6d2; }
.auth-main { background: radial-gradient(ellipse at center, rgba(34,88,73,.15), transparent 65%); }
.auth-card {
  padding: clamp(24px, 4vw, 42px);
  border: 1px solid rgba(231, 202, 144, .19);
  background: linear-gradient(145deg, rgba(20, 39, 42, .97), rgba(14, 25, 33, .98));
}
.auth-card h1,
.auth-card h2,
.auth-card h3 { color: #fff4e2; }
.auth-card .field label,
.auth-card label { color: #f0e7d8; }
.auth-card p { color: #c8cec7; }
.auth-card .fee-notice { color: #f2dca8; }
.nav { background: rgba(7, 19, 23, .92); }

.admin-analytics { margin: 8px 0 34px; }
.analytics-heading {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 20px;
  margin: 0 0 18px;
}
.analytics-heading h2 { color: #fff4e2; font-size: clamp(1.5rem, 3vw, 2rem); }
.analytics-updated { color: #e7c985; font-size: 13px; }
.admin-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 13px;
  margin-bottom: 16px;
}
.admin-stat {
  display: grid;
  gap: 8px;
  min-height: 100px;
  padding: 18px 20px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 17px;
  box-shadow: 0 16px 34px rgba(0,0,0,.19);
}
.admin-stat span { color: rgba(255,255,255,.88); font-size: 12px; font-weight: 750; }
.admin-stat strong { color: white; font-size: 1.9rem; line-height: 1; }
.stat-members { background: linear-gradient(120deg, #14634f, #1f8869); }
.stat-profiles { background: linear-gradient(120deg, #7b4d37, #b08048); }
.stat-matches { background: linear-gradient(120deg, #703b4c, #a94e66); }
.stat-conversations { background: linear-gradient(120deg, #2c355e, #515b8e); }
.admin-chart-grid { display: grid; grid-template-columns: minmax(250px, .85fr) minmax(0, 1.5fr); gap: 15px; }
.admin-chart-card { padding: 22px; min-width: 0; }
.admin-chart-card h3 { margin: 0 0 12px; font-size: 1.15rem; }
.admin-doughnut-wrap { width: min(100%, 270px); height: 220px; margin: 0 auto; }
.admin-doughnut-wrap canvas,
.admin-line-wrap canvas { width: 100% !important; height: 100% !important; }
.admin-line-wrap { height: 260px; }
.admin-wide-chart { grid-column: 2; grid-row: 1; }
.admin-full-chart { grid-column: 1 / -1; }
.chart-legend { display: grid; gap: 8px; margin-top: 12px; }
.chart-legend-item { display: flex; align-items: center; gap: 8px; color: #d8d8cf; font-size: 12px; }
.chart-legend-item i {
  width: 9px;
  height: 9px;
  flex: 0 0 9px;
  border-radius: 50%;
  background: var(--legend-color);
}
.chart-legend-item strong { margin-left: auto; color: #fff2df; font-variant-numeric: tabular-nums; }
.admin-analytics .chart-empty { margin: 10px 0; }
.payment-filter,
.mc-input.payment-filter { color: #f3ecdf; background: #12262a; }

@media (max-width: 900px) {
  .dashboard-analytics { grid-template-columns: minmax(0, .9fr) minmax(0, 1.4fr); }
  .admin-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-chart-grid { grid-template-columns: minmax(220px, .8fr) minmax(0, 1.2fr); }
  .mc-match-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mc-profile-layout { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 18px; }
}

@media (max-width: 680px) {
  body,
  body.members-page,
  body.safety-page,
  .discover-page { background-attachment: scroll; }
  .mc-topbar { height: auto; min-height: 68px; padding: 11px 4%; gap: 10px; }
  .mc-brand { font-size: 18px; }
  .mc-nav { max-width: 55vw; overflow-x: auto; scrollbar-width: thin; }
  .mc-nav a { flex: 0 0 auto; padding: 9px 10px; font-size: 12px; }
  .mc-main { width: 92%; margin-top: 28px; }
  .dashboard-main { width: 92%; margin-top: 22px; }
  .dashboard-welcome { gap: 17px; }
  .dashboard-welcome-avatar { width: 88px; height: 88px; flex-basis: 88px; }
  .dashboard-analytics { grid-template-columns: 1fr; }
  .dashboard-stat-grid { grid-template-columns: 1fr; }
  .dashboard-stat-card { min-height: 75px; }
  .dashboard-line-wrap { height: 225px; }
  .dashboard-grid { grid-template-columns: 1fr; }
  .dashboard-featured,
  .dashboard-membership,
  .dashboard-safety { grid-column: 1; }
  .profile-editor-layout { grid-template-columns: 1fr; }
  .profile-preview-column { position: static; }
  .profile-form-grid { grid-template-columns: 1fr; }
  .mc-match-grid { grid-template-columns: 1fr; }
  .mc-match-photo-wrap { height: min(118vw, 500px); }
  .mc-profile-layout { grid-template-columns: 1fr; }
  .mc-profile-photo-card { min-height: 400px; }
  .mc-profile-photo { height: min(125vw, 640px); min-height: 400px; }
  .admin-chart-grid { grid-template-columns: 1fr; }
  .admin-wide-chart,
  .admin-full-chart { grid-column: 1; grid-row: auto; }
  .analytics-heading { align-items: flex-start; flex-direction: column; gap: 7px; }
  .admin-line-wrap { height: 230px; }
  .discover-layout { grid-template-columns: 1fr; }
  .discover-page .member-photo { height: min(125vw, 560px); }
  .discover-side { grid-template-columns: 1fr; }
}

@media (max-width: 430px) {
  .mc-topbar { flex-wrap: wrap; }
  .mc-nav { order: 3; max-width: 100%; width: 100%; }
  .dashboard-welcome { padding: 24px 20px; }
  .dashboard-chart-card,
  .admin-chart-card { padding: 18px; }
  .admin-stat-grid { gap: 9px; }
  .admin-stat { min-height: 86px; padding: 14px; }
  .payment-details > div { flex-direction: column; gap: 4px; }
}

@media (prefers-reduced-motion: reduce) {
  .mc-match-card,
  .mc-match-photo { transition: none; }
}
