/* White surfaces with the existing ZYROMC blue and cyan identity. */
:root {
  color-scheme: light;
  --bg: #f3f8ff;
  --surface: #ffffff;
  --surface-2: #eaf3ff;
  --text: #102845;
  --muted: #4e6681;
  --soft: #6c829d;
  --line: #d4e2f2;
  --accent: #087fd4;
  --accent-strong: #075fc1;
  --gold: #9b6500;
  --danger: #bf3549;
}

body { background: var(--bg); color: var(--text); }
.announcement { background: #e7f2ff; color: #234566; }
.announcement-dot, .status-dot { border-color: var(--accent); }
.site-header { background: #ffffffed; border-bottom-color: #cbdcf0; box-shadow: 0 6px 24px #1a4f7b08; }
.brand-word { color: #102845; }
.main-nav a, .header-staff { color: #405a76; }
.main-nav a:hover, .header-staff:hover, .footer-links a:hover { color: var(--accent-strong); }
.header-staff { border-color: #cadbed; background: #ffffffaa; }
.hero {
  color: var(--text);
  background: radial-gradient(ellipse at 79% 34%, #76caff3b, transparent 39%), radial-gradient(ellipse at 13% 88%, #36d7ff20, transparent 34%), linear-gradient(120deg, #f5faff 35%, #e8f3ff 100%);
}
.hero::before { border-color: #168cff15; box-shadow: 0 0 0 55px #168cff08, 0 0 0 110px #168cff05; }
.hero-visual { position: relative; z-index: 1; display: flex; width: min(100%, 500px); flex-direction: column; align-items: center; justify-self: end; gap: 8px; }
.hero-logo-art { position: relative; top: auto; right: auto; z-index: auto; display: block; width: min(100%, 460px); height: auto; opacity: 1; filter: saturate(1.08) drop-shadow(0 12px 24px #168cff20); transform: none; animation: zyroLogoDrift 7s ease-in-out infinite; will-change: transform; }
.hero h1, .hero-card h2 { color: #102845; }
.hero-lede, .hero-trust { color: #526b86; }
.hero-card { align-self: center; border-color: #c5d9ef; background: linear-gradient(145deg, #fff, #edf6ff 82%); box-shadow: 0 24px 65px #1a4f7b16; }
.card-kicker, .server-label, .server-version { color: #617b98; }
.hero-card-rule { background: #d7e5f3; }
.card-link { border-top-color: #d7e5f3; color: #3d5874; }
.hero-bottomline { color: #7288a2; }
.button-primary { color: #fff; background: #087fd4; box-shadow: 0 7px 22px #087fd425; }
.button-primary:hover { color: #fff; background: #066cc2; }
.button-quiet { border-color: #c6d8ea; background: #ffffffc9; color: #234360; }
.button-quiet:hover { border-color: var(--accent); background: #eff8ff; }
.trust-icon, .currency-control button.active, .assurance-shield { background: #168cff16; }
.currency-control { border-color: #cbdcf0; background: #fff; }
.currency-control button { color: #48617c; }
.currency-control button.active { color: #075fc1; }

.product { border-color: #d1e0ef; background: linear-gradient(145deg, #fff, #f6faff); box-shadow: 0 12px 32px #16446a0b; }
.product:hover { border-color: #58afe5; box-shadow: 0 16px 38px #16446a16; }
.product small { color: #1769a7; }
.product h3, .price { color: #132e4d; }
.product p { color: #58718b; }
.bottom { border-top-color: #dce7f3; }
.buy { border-color: #add6f2; background: #eaf6ff; color: #086dbb; }
.buy:hover { background: #d8efff; }
.loading-card, .empty-store { border-color: #d2e1f0; background: #fff; color: #566e88; }
.store-assurance { border-color: #c9deef; background: linear-gradient(100deg, #eff8ff, #f7fbff); }
.store-assurance p { color: #536d87; }
.store-assurance p strong { color: #173655; }
.process-section { background: #eaf3fd; border-color: #d8e5f2; }
.steps article { border-color: #cfdeee; background: #fff; box-shadow: 0 8px 20px #173e6008; }
.steps h3 { color: #183653; }
.steps p, .payment-note { color: #536c85; }
.payment-note > span:first-child { border-color: #9dc6e6; }

.events-section { background: radial-gradient(ellipse at 15% 15%, #6dbdff16, transparent 42%); }
.events-heading p, .leaderboard-heading p, .rules-heading p { color: #526b86; }
.events-live, .leaderboard-live { border-color: #c6daed; background: #ffffffb8; color: #46617d; }
.event-card, .leaderboard-card, .rule-card {
  border-color: #d1dfed;
  background: radial-gradient(ellipse at 100% 0, #168cff0a, transparent 45%), linear-gradient(145deg, #fff, #f5f9ff);
  box-shadow: 0 12px 32px #16446a0c;
}
.event-card:hover, .leaderboard-card:hover, .rule-card:hover { border-color: #57a9df; box-shadow: 0 18px 38px #16446a16; }
.event-meta, .event-footer, .event-copy, .events-note { color: #607790; }
.event-card h3, .leaderboard-title h3, .rule-card h3 { color: #163552; }
.event-footer { border-top-color: #dce7f2; }
.events-empty, .leaderboard-empty { border-color: #bfd4e8; background: #ffffffbd; color: #566e88; }
.leaderboard-title p, .leaderboard-top-label, .leaderboard-empty-row, .leaderboard-note { color: #617890; }
.leaderboard-row:hover { background: #eaf4ff; }
.leaderboard-player { color: #28435f; }
.leaderboard-rank { color: #627a94; }
.leaderboard-icon, .rule-icon { border-color: #b9dcf5; background: #eaf7ff; }
.leaderboard-refresh { background: #e8f3ff; }
.leaderboard-refresh:hover { background: #d7edff; }
.leaderboard-card::before { background: #35bfff13; }
.rule-card p, .rules-footer p { color: #536c85; }
.rules-section { background: radial-gradient(ellipse at 0 45%, #5caeff12, transparent 42%); }
.rules-seal { border-color: #c0d8ef; background: linear-gradient(145deg, #fff, #eaf4ff); box-shadow: 0 8px 24px #16446a10; }
.rule-card-featured { border-color: #8dc5e8; background: radial-gradient(ellipse at 100% 0, #35d5ff13, transparent 45%), linear-gradient(145deg, #f2faff, #fff); }
.rule-card::after { border-color: #168cff10; box-shadow: 0 0 0 16px #168cff06, 0 0 0 32px #168cff04; }
.rules-footer { border-color: #d0dfef; background: #f7fbff; }
.community-section { border-color: #bdd9ef; background: radial-gradient(ellipse at 45% 50%, #e1f2ff, #f7fbff 75%); box-shadow: 0 14px 36px #16446a0d; }
.community-section h2 { color: #143452; }
.community-section p { color: #56718c; }
.community-address > span, .community-address small { color: #607a95; }
.community-address strong { color: #173655; }
.site-footer { background: #eaf2fc; border-top-color: #d3e0ef; }
.site-footer > p { color: #38536f; }
.site-footer > p span, .footer-links a, .copyright { color: #627993; }

.auth-page, .account-page { background: radial-gradient(ellipse at 50% 30%, #8dd4ff26, transparent 45%), #f3f8ff; }
.auth-card, .auth-aside { border-color: #cbddef; box-shadow: 0 24px 70px #16446a12; }
.auth-card { background: #fff; }
.auth-aside { background: radial-gradient(ellipse at 65% 24%, #58baff2e, transparent 42%), linear-gradient(145deg, #f0f8ff, #e4f1ff); }
.auth-aside h2, .auth-card h1 { color: #112b49; }
.auth-lede, .auth-aside > p { color: #526b85; }
.auth-aside-mark { color: #168cff; text-shadow: 0 0 30px #168cff42; }
.auth-server { border-top-color: #d1e1f0; }
.auth-server small, .auth-server span { color: #607b96; }
.auth-server strong { color: #173654; }
.auth-perks > div { border-color: #d5e3f1; background: #f7fbff; }
.auth-perks > div > span { color: #0877c9; }
.auth-perks p { color: #5a728c; }
.auth-perks strong { color: #1a3857; }
.minecraft-login-panel, .member-overview article, .member-card, .minecraft-login-challenge, .minecraft-link-challenge { border-color: #c8dced; background: linear-gradient(145deg, #f7fbff, #edf6ff); }
.minecraft-login-panel h2 { color: #173653; }
.minecraft-login-panel > p:not(.auth-status):not(.auth-fineprint) { color: #526b84; }
.minecraft-login-form label, .minecraft-link-card label { color: #35516e; }
.minecraft-login-form input, .minecraft-link-card input, .order-search input, .dialog input, .admin input, .admin select, .login input { border-color: #c6d8ea; background: #fff; color: #142f4d; }
.minecraft-login-form input::placeholder, .minecraft-link-card input::placeholder, .dialog input::placeholder, .admin input::placeholder { color: #8194a8; }
.minecraft-login-challenge p { color: #4e6781; }
.minecraft-login-challenge code, .minecraft-link-challenge code { color: #086fbd; }
.auth-choice-divider { color: #7489a1; }
.discord-login { color: #fff; background: #5865f2; }
.discord-login:hover { color: #fff; background: #4655e5; }
.auth-fineprint, .checkout-footnote { color: #6b8299; }
.auth-back { color: #45617d; }
.member-avatar { background: #dff3ff; color: #0875c2; }
.member-card h2 { color: #173654; }
.member-card small { color: #58718b; }
.member-card p { color: #617993; }
.account-intro, .account-note, .account-order-help { color: #576f88; }
.member-overview span { color: #5d7690; }
.member-overview strong { color: #153552; }
.account-orders td { color: #334f6c; }
.account-orders th { color: #607991; }
.account-status-pill { border-color: #c5d5e6; background: #edf3fa; color: #405871; }
.account-status-pill.success { border-color: #99d7ed; background: #e6f8ff; color: #075e92; }
.account-status-pill.waiting { border-color: #e8d294; background: #fff8e5; color: #805b04; }
.account-status-pill.danger { border-color: #e7b8c0; background: #fff0f2; color: #a62f43; }
.account-empty td { color: #586f88; }
.account-empty strong { color: #173654; }

.order-wrap h1, .order-result-heading h2 { color: #142f4c; }
.order-intro, .order-help { color: #566e87; }
.order-search, .order-result, .minecraft-link-card { border-color: #cadced; background: #fff; box-shadow: 0 12px 32px #16446a0c; }
.order-search label { color: #35516e; }
.order-result-heading { border-bottom-color: #dbe7f3; }
.order-result-heading small { color: #667f98; }
.order-result p { color: #526b84; }
.dialog { border-color: #cbddef; background: #fff; box-shadow: 0 24px 70px #16446a24; }
.mini { border-color: #b6d6ed; background: #eaf6ff; color: #086dbb; }
.danger, .danger-button { border-color: #e5b6be; background: #fff0f2; color: #a72e42; }
.notice { border-color: #e6d49b; background: #fff8e5; color: #76560b; }

.admin { color: #183653; }
.admin > header { background: #fff; border-bottom-color: #d3e0ee; }
.admin > header > a:last-child { color: #42607e; }
.admin h1, .panel h2 { color: #173653; }
.integration-card, .panel, .stat, .login { border-color: #d0dfef; background: #fff; box-shadow: 0 10px 28px #16446a0b; }
.integration-card small, .integration-card .integration-detail, .stat small, .panel > p { color: #5c748d; }
.integration-card strong, .stat strong { color: #173653; }
.plugin-chip { border-color: #c7d9eb; background: #f1f7ff; color: #36526e; }
.login > label:first-child { color: #0877c9; }
.login label:not(:first-child), .formgrid label, .toolbar label { color: #405a75; }
.table th { color: #617991; }
.table td { border-bottom-color: #e0e9f3; }
.toolbar input, .toolbar select { color: #173653; }

@media (max-width: 900px) {
  .hero { grid-template-columns: minmax(0, 1.05fr) minmax(280px, .8fr); gap: 4%; }
  .hero-visual { width: 100%; }
  .hero-logo-art { width: min(100%, 400px); }
}
@media (max-width: 700px) {
  .hero { grid-template-columns: 1fr; }
  .hero-visual { max-width: 460px; justify-self: start; gap: 2px; }
  .hero-logo-art { width: min(100%, 420px); }
  .hero-card { width: min(100%, 390px); }
}
.copy-ip { border-color: #a9cbe9; background: #e8f4ff; color: #075fc1; }
.copy-ip:hover { border-color: #70b4ed; background: #d6ebff; }
.copy-ip.copied { border-color: #087fd4; background: #087fd4; color: #fff; }

/* Use the full server wordmark instead of the temporary Z monogram. */
.site-header .brand, .admin > header .brand {
  width: 132px;
  height: 66px;
  flex: 0 0 132px;
  background: url('/zyromc-logo.webp') center / contain no-repeat;
}
.home-page .site-header .brand,
.auth-page .site-header .brand { display: none !important; }
.site-header .brand-mark, .site-header .brand-word,
.site-footer .brand-mark, .site-footer .brand-word,
.admin > header .brand-mark, .admin > header .brand-word { display: none !important; }
.site-footer .footer-brand {
  width: 120px;
  height: 58px;
  flex: 0 0 120px;
  background: url('/zyromc-logo.webp') center / contain no-repeat;
}
.admin > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  height: auto;
  min-height: 72px;
  padding-top: 8px;
  padding-bottom: 8px;
}
.admin > header .brand { width: 112px; height: 52px; flex-basis: 112px; }
.admin > header > a:last-child {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  justify-content: center;
  margin-left: auto;
  padding: 0 14px;
  border: 1px solid #cadbed;
  border-radius: 7px;
  background: #fff;
  color: #42607e;
}
.auth-emblem {
  display: block;
  width: min(220px, 72%);
  height: 112px;
  margin: 0 0 22px;
  background: url('/zyromc-logo.webp') left center / contain no-repeat;
  clip-path: none;
  color: transparent;
  font-size: 0;
  animation: zyroLogoDrift 7s ease-in-out infinite;
}
@media (max-width: 700px) {
  .site-header .brand { width: 112px; height: 58px; flex-basis: 112px; }
  .site-footer .footer-brand { width: 104px; height: 52px; flex-basis: 104px; }
  .admin > header { min-height: 62px; }
  .admin > header .brand { width: 96px; height: 46px; flex-basis: 96px; }
  .auth-emblem { width: min(190px, 72%); height: 96px; }
}
@media (prefers-reduced-motion: reduce) { .auth-emblem { animation: none; } }
@keyframes zyroLogoDrift {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-6px) scale(1.008); }
}
@media (prefers-reduced-motion: reduce) {
  .hero-logo-art { animation: none; will-change: auto; }
}
