/* =====================================================================
   MINEFIELD — Minecraft x tactical-shooter HUD theme for MineXON
   Palette: night navy HUD, red team / blue team transition, gold divider
   ===================================================================== */

/* Minecraft digits for HUD numbers; letters fall through to Pixelify Sans (keeps Turkish glyphs) */
@font-face {
  font-family: "MF Digits";
  src: url(../fonts/minecraft/minecraftia.woff) format("woff");
  font-display: swap;
  unicode-range: U+0030-0039, U+003A, U+002F, U+002E, U+002C, U+0025, U+002B, U+002D;
}

:root {
  --mf-bg: #0d1016;
  --mf-bg-2: #11151c;
  --mf-panel: #161b24;
  --mf-panel-2: #1c222d;
  --mf-panel-3: #232a37;
  --mf-line: #283040;
  --mf-line-2: #364052;
  --mf-text: #e9edf3;
  --mf-text-2: #b8c1ce;
  --mf-muted: #7d889a;

  --mf-red: #d33a42;
  --mf-red-2: #a52b31;
  --mf-red-3: #5c2127;
  --mf-blue: #3d7fdb;
  --mf-blue-2: #2c5fae;
  --mf-blue-3: #1e355e;
  --mf-gold: #f2bf3c;
  --mf-gold-2: #d19a1e;
  --mf-orange: #e8891c;
  --mf-green: #62b04e;
  --mf-green-2: #3f8a33;

  --mf-team: linear-gradient(90deg, var(--mf-red) 0%, #7b2a36 32%, #262c3d 50%, #274a86 68%, var(--mf-blue) 100%);
  --mf-team-soft: linear-gradient(90deg, rgba(211, 58, 66, .55), rgba(211, 58, 66, 0) 38%, rgba(61, 127, 219, 0) 62%, rgba(61, 127, 219, .55));

  --mf-font-body: "Barlow", "Nunito", system-ui, sans-serif;
  --mf-font-hud: "Chakra Petch", "Barlow", system-ui, sans-serif;
  --mf-font-pixel: "MF Digits", "Pixelify Sans", "Chakra Petch", monospace;

  --mf-step: 4px;
  --mf-clip: polygon(0 calc(var(--mf-step) * 3), var(--mf-step) calc(var(--mf-step) * 3), var(--mf-step) calc(var(--mf-step) * 2), calc(var(--mf-step) * 2) calc(var(--mf-step) * 2), calc(var(--mf-step) * 2) var(--mf-step), calc(var(--mf-step) * 3) var(--mf-step), calc(var(--mf-step) * 3) 0, 100% 0, 100% calc(100% - var(--mf-step) * 3), calc(100% - var(--mf-step)) calc(100% - var(--mf-step) * 3), calc(100% - var(--mf-step)) calc(100% - var(--mf-step) * 2), calc(100% - var(--mf-step) * 2) calc(100% - var(--mf-step) * 2), calc(100% - var(--mf-step) * 2) calc(100% - var(--mf-step)), calc(100% - var(--mf-step) * 3) calc(100% - var(--mf-step)), calc(100% - var(--mf-step) * 3) 100%, 0 100%);
  --mf-shadow: 0 18px 40px -18px rgba(0, 0, 0, .8);
}

/* ---------------------------------------------------------------------
   Base
   --------------------------------------------------------------------- */
html { font-family: var(--mf-font-body); }
html, body { background-color: var(--mf-bg); }
body.mf-body { color: var(--mf-text); -webkit-font-smoothing: antialiased; }
::selection { background: var(--mf-gold); color: #16110a; }

#dark-mode #app {
  background-color: var(--mf-bg) !important;
  background-image:
    radial-gradient(1200px 500px at 50% -120px, rgba(61, 127, 219, .10), transparent 70%),
    linear-gradient(rgba(255, 255, 255, .018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, .018) 1px, transparent 1px);
  background-size: auto, 40px 40px, 40px 40px;
  color: var(--mf-text) !important;
  overflow-x: clip;
}

#dark-mode .body-image { opacity: .04; filter: grayscale(1); pointer-events: none; }
.mf-main { position: relative; }

.mf-wrap { width: 100%; max-width: 1280px; margin: 0 auto; padding: 0 20px; }
@media (min-width: 1536px) { .mf-wrap { max-width: 1360px; } }

.mf-kicker {
  display: inline-flex; align-items: center; gap: .5rem;
  font-family: var(--mf-font-hud); font-weight: 600; font-size: .75rem;
  letter-spacing: .18em; text-transform: uppercase; color: var(--mf-gold);
}
.mf-kicker i { font-size: .8em; }

#dark-mode .h1, #dark-mode .h2, #dark-mode .h3, #dark-mode .h4,
#dark-mode h1, #dark-mode h2, #dark-mode h3, #dark-mode h4, #dark-mode h5 { font-family: var(--mf-font-hud); letter-spacing: .01em; }

::-webkit-scrollbar { width: 10px; height: 10px; }
#dark-mode ::-webkit-scrollbar-track, ::-webkit-scrollbar-track { background: var(--mf-bg-2) !important; }
::-webkit-scrollbar-thumb { background: linear-gradient(180deg, var(--mf-red-2), var(--mf-blue-2)) !important; border: 2px solid var(--mf-bg-2); }

@media (max-width: 639px) { .mf-hide-xs { display: none !important; } }
@media (max-width: 767px) { .mf-hide-sm { display: none !important; } }

/* square, pixel-friendly corners everywhere inside the app */
#app .rounded, #app .rounded-md, #app .rounded-lg, #app .rounded-xl, #app .rounded-2xl, #app .rounded-3xl,
#app .rounded-sm, #app .rounded-t-3xl, #app .rounded-b-2xl, #app .rounded-r-2xl, #app .rounded-l-3xl,
#app [class*="rounded-["], #app .xl\:rounded-2xl { border-radius: 2px !important; }
#app img.rounded-xl, #app img.rounded-lg { image-rendering: pixelated; }

/* ---------------------------------------------------------------------
   Buttons — Minecraft bevel + stepped tactical corners
   --------------------------------------------------------------------- */
.btn,
.swal2-styled.swal2-confirm,
.swal2-styled.swal2-cancel {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: inline-flex; align-items: center; justify-content: center; gap: .55rem;
  font-family: var(--mf-font-hud) !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: .08em;
  line-height: 1.1 !important;
  border: 0 !important;
  border-radius: 0 !important;
  clip-path: var(--mf-clip);
  box-shadow: inset 0 3px 0 rgba(255, 255, 255, .20), inset 0 -4px 0 rgba(0, 0, 0, .35) !important;
  text-shadow: 0 2px 0 rgba(0, 0, 0, .28);
  cursor: pointer;
  user-select: none;
  transition: filter .15s ease, transform .08s ease, background-color .15s ease, color .15s ease !important;
}
.btn:not(.btn-sm):not(.btn-lg) { padding: .85rem 1.5rem !important; font-size: .82rem !important; }
.btn.btn-sm { --mf-step: 3px; padding: .55rem 1rem !important; font-size: .72rem !important; }
.btn.btn-lg { --mf-step: 5px; padding: 1.05rem 2rem !important; font-size: .95rem !important; }
.btn.w-full, .btn.w-100 { width: 100%; }
.btn.\!flex { display: flex !important; }
.btn > i { font-size: 1.05em; }

.btn::before {
  content: "";
  position: absolute; inset: 0; z-index: -1;
  background: linear-gradient(115deg, transparent 0 38%, rgba(255, 255, 255, .26) 38% 46%, transparent 46% 54%, rgba(255, 255, 255, .14) 54% 58%, transparent 58%);
  transform: translateX(-110%);
  transition: transform .45s steps(9);
}
.btn:hover::before { transform: translateX(110%); }
.btn:hover { filter: brightness(1.12) saturate(1.05); }
.btn:active { transform: translateY(2px); box-shadow: inset 0 3px 0 rgba(0, 0, 0, .25), inset 0 -1px 0 rgba(255, 255, 255, .08) !important; }
.btn:focus-visible { outline: none; box-shadow: inset 0 0 0 2px var(--mf-gold), inset 0 -4px 0 rgba(0, 0, 0, .35) !important; }
.btn.disable, .btn:disabled { filter: grayscale(.6) brightness(.8); cursor: not-allowed; }

#dark-mode .btn.btn-primary, .btn.btn-primary, .swal2-styled.swal2-confirm {
  background: linear-gradient(180deg, #5a98ee 0%, #3d7fdb 48%, #2c62b6 100%) !important;
  color: #fff !important;
}
#dark-mode .btn.btn-danger, .btn.btn-danger {
  background: linear-gradient(180deg, #ea5a61 0%, #d33a42 48%, #a52b31 100%) !important;
  color: #fff !important;
}
#dark-mode .btn.btn-success, .btn.btn-success {
  background: linear-gradient(180deg, #7fca62 0%, #62b04e 48%, #3f8a33 100%) !important;
  color: #fff !important;
}
#dark-mode .btn.btn-warning, .btn.btn-warning {
  background: linear-gradient(180deg, #ffd766 0%, #f2bf3c 48%, #d19a1e 100%) !important;
  color: #1d1504 !important;
  text-shadow: 0 1px 0 rgba(255, 255, 255, .35);
}
#dark-mode .btn.btn-white, .btn.btn-white, .swal2-styled.swal2-cancel {
  background: linear-gradient(180deg, #2f3746 0%, #262d3a 50%, #1d232e 100%) !important;
  color: var(--mf-text) !important;
}
#dark-mode .btn.btn-light, .btn.btn-light {
  background: linear-gradient(180deg, rgba(61, 127, 219, .26), rgba(61, 127, 219, .14)) !important;
  color: #a9c8f5 !important;
}
.btn.bg-blue-500 { background: linear-gradient(180deg, #7b86f5, #5865f2 50%, #4450d4) !important; color: #fff !important; }
.btn.bg-slate-500 { background: var(--mf-panel-3) !important; color: var(--mf-text-2) !important; }

/* team underline shown on hover for primary actions */
.btn.btn-primary::after, .btn.btn-danger::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; z-index: -1;
  background: var(--mf-gold); transform: scaleX(0); transform-origin: left; transition: transform .25s steps(6);
}
.btn.btn-primary:hover::after, .btn.btn-danger:hover::after { transform: scaleX(1); }

/* ---------------------------------------------------------------------
   Navigation
   --------------------------------------------------------------------- */
#navbar.mf-nav, .mf-nav {
  position: sticky; top: 0; z-index: 90;
  background: rgba(13, 16, 22, .82);
  -webkit-backdrop-filter: blur(12px) saturate(1.2); backdrop-filter: blur(12px) saturate(1.2);
  border-bottom: 1px solid rgba(255, 255, 255, .06);
  transition: background-color .2s, box-shadow .2s;
}
.mf-nav.is-stuck { background: rgba(10, 13, 18, .94); box-shadow: 0 12px 30px -12px rgba(0, 0, 0, .8); }
.mf-nav::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 2px;
  background: var(--mf-team); opacity: 0; transition: opacity .2s;
}
.mf-nav.is-stuck::after { opacity: 1; }
.mf-nav__inner { display: flex; flex-wrap: wrap; align-items: center; column-gap: 1.25rem; min-height: 68px; }
.mf-brand { display: flex; align-items: center; flex: none; min-height: 64px; padding: 6px 0; }
.mf-brand img { height: 38px; width: auto; max-width: 210px; object-fit: contain; filter: drop-shadow(0 3px 0 rgba(0, 0, 0, .45)); transition: transform .2s steps(3); }
.mf-brand:hover img { transform: translateY(-2px); }

/* page links: centered, and horizontally scrollable when an admin adds many items */
.mf-nav__menu {
  display: flex; align-items: stretch; align-self: stretch; gap: .15rem; min-width: 0;
  overflow-x: auto; overflow-y: hidden; overscroll-behavior-x: contain; scrollbar-width: none;
}
.mf-nav__menu::-webkit-scrollbar { display: none; }
.mf-nav__menu::before, .mf-nav__menu::after { content: ""; flex: none; margin-inline: auto; }
.mf-nav__menu.has-more-right { -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 40px), transparent); mask-image: linear-gradient(90deg, #000 calc(100% - 40px), transparent); }
.mf-nav__menu.has-more-left { -webkit-mask-image: linear-gradient(90deg, transparent, #000 40px); mask-image: linear-gradient(90deg, transparent, #000 40px); }
.mf-nav__menu.has-more-left.has-more-right { -webkit-mask-image: linear-gradient(90deg, transparent, #000 40px, #000 calc(100% - 40px), transparent); mask-image: linear-gradient(90deg, transparent, #000 40px, #000 calc(100% - 40px), transparent); }
@media (min-width: 1200px) { .mf-nav__menu { flex: 1 1 auto; } }
@media (max-width: 1199px) {
  .mf-nav__inner { min-height: 0; }
  .mf-nav__menu {
    order: 3; flex: 0 0 calc(100% + 40px); height: 46px; margin: 0 -20px; padding: 0 12px;
    background: rgba(0, 0, 0, .22); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06);
  }
}
@media (max-width: 767px) { .mf-nav__menu { display: none; } }
.mf-nav__item {
  position: relative; flex: none; display: flex; align-items: center; gap: .5rem; padding: 0 .85rem;
  font-family: var(--mf-font-hud); font-weight: 600; font-size: .8rem; letter-spacing: .09em; text-transform: uppercase;
  color: var(--mf-text-2); white-space: nowrap; transition: color .15s;
}
.mf-nav__item i { font-size: .85em; color: var(--mf-muted); transition: color .15s; }
.mf-nav__item::before {
  content: ""; position: absolute; left: .55rem; right: .55rem; bottom: 0; height: 3px;
  background: var(--mf-gold); transform: scaleX(0); transition: transform .2s steps(5);
}
.mf-nav__item::after {
  content: ""; position: absolute; inset: 14px 2px; pointer-events: none; opacity: 0; transition: opacity .15s;
  background:
    linear-gradient(var(--mf-gold), var(--mf-gold)) left top / 6px 2px no-repeat,
    linear-gradient(var(--mf-gold), var(--mf-gold)) left top / 2px 6px no-repeat,
    linear-gradient(var(--mf-gold), var(--mf-gold)) right bottom / 6px 2px no-repeat,
    linear-gradient(var(--mf-gold), var(--mf-gold)) right bottom / 2px 6px no-repeat;
}
.mf-nav__item:hover { color: #fff; }
.mf-nav__item:hover i { color: var(--mf-gold); }
.mf-nav__item:hover::after { opacity: 1; }
.mf-nav__item.is-active { color: #fff; background: linear-gradient(180deg, transparent, rgba(242, 191, 60, .10)); }
.mf-nav__item.is-active i { color: var(--mf-gold); }
.mf-nav__item.is-active::before { transform: scaleX(1); }
@media (min-width: 1200px) and (max-width: 1360px) {
  .mf-nav__item { padding: 0 .55rem; font-size: .72rem; letter-spacing: .06em; }
  .mf-nav__item i { display: none; }
}
@media (max-width: 1199px) {
  .mf-nav__item { padding: 0 .8rem; font-size: .74rem; letter-spacing: .07em; }
  .mf-nav__item::after { inset: 11px 2px; }
}

.mf-nav__actions { display: flex; align-items: center; gap: .6rem; margin-left: auto; }
@media (min-width: 1200px) { .mf-nav__actions { margin-left: 0; } }

.mf-iconbtn {
  position: relative; display: inline-flex; align-items: center; justify-content: center;
  width: 42px; height: 42px; color: var(--mf-text); background: var(--mf-panel-2);
  clip-path: var(--mf-clip); --mf-step: 3px;
  box-shadow: inset 0 2px 0 rgba(255, 255, 255, .08), inset 0 -3px 0 rgba(0, 0, 0, .35);
  transition: background-color .15s, color .15s;
}
.mf-iconbtn:hover { background: var(--mf-blue-2); color: #fff; }
.mf-iconbtn__badge {
  position: absolute; top: 3px; right: 3px; min-width: 17px; height: 17px; padding: 0 4px;
  display: flex; align-items: center; justify-content: center;
  font-family: var(--mf-font-pixel); font-size: .7rem; color: #1d1504; background: var(--mf-gold);
}

.mf-user {
  display: flex; align-items: center; gap: .6rem; height: 44px; padding: 0 .75rem 0 .35rem;
  background: linear-gradient(90deg, rgba(61, 127, 219, .20), rgba(61, 127, 219, .06));
  box-shadow: inset 0 0 0 1px rgba(61, 127, 219, .35);
  color: var(--mf-text); cursor: pointer; border: 0; font: inherit; text-align: left;
  transition: background-color .15s, box-shadow .15s;
}
.mf-user:hover { box-shadow: inset 0 0 0 1px var(--mf-gold); }
.mf-user img { width: 34px; height: 34px; image-rendering: pixelated; box-shadow: 0 0 0 2px rgba(0, 0, 0, .5); }
.mf-user__meta { display: flex; flex-direction: column; gap: 3px; line-height: 1.1; }
.mf-user__meta b { font-family: var(--mf-font-hud); font-size: .85rem; font-weight: 700; max-width: 130px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mf-user__meta small { font-family: var(--mf-font-pixel); font-size: .78rem; color: var(--mf-gold); }
.mf-user__caret { color: var(--mf-muted); font-size: .8rem; }
@media (max-width: 520px) { .mf-user__meta, .mf-user__caret { display: none; } .mf-user { padding: 0 .35rem; } }

.mf-burger {
  display: inline-flex; flex-direction: column; justify-content: center; gap: 5px;
  width: 44px; height: 44px; padding: 0 11px; background: var(--mf-panel-2); border: 0; cursor: pointer;
  clip-path: var(--mf-clip); --mf-step: 3px;
}
.mf-burger span { display: block; height: 3px; background: var(--mf-text); transition: background-color .15s; }
.mf-burger span:nth-child(2) { width: 70%; margin-left: auto; background: var(--mf-gold); }
.mf-burger:hover span { background: #fff; }
@media (min-width: 768px) { .mf-burger { display: none; } }

/* ---------------------------------------------------------------------
   Hero battlefield scene
   --------------------------------------------------------------------- */
.mf-hero { position: relative; overflow: hidden; isolation: isolate; background: #0a0d13; }
.mf-hero--home { min-height: clamp(600px, 84vh, 820px); display: flex; }
.mf-hero--page { min-height: 240px; display: flex; }
.mf-hero__art { position: absolute; inset: 0; z-index: -1; pointer-events: none; }
.mf-hero__art > * { position: absolute; }

.mf-hero__photo { inset: -20px; background-size: cover; background-position: center; filter: grayscale(.75) brightness(.36) contrast(1.1); transform: scale(1.04); }
.mf-hero__sky {
  inset: 0;
  background:
    radial-gradient(90% 60% at 15% 100%, rgba(211, 58, 66, .30), transparent 60%),
    radial-gradient(90% 60% at 85% 100%, rgba(61, 127, 219, .28), transparent 60%),
    linear-gradient(180deg, rgba(8, 10, 15, .9) 0%, rgba(13, 17, 26, .55) 45%, rgba(13, 16, 22, .35) 70%, rgba(13, 16, 22, .9) 100%);
}

.mf-hero__zeppelin { top: 56%; left: -30%; width: 210px; height: auto; image-rendering: pixelated; opacity: .55; animation: mf-drift 100s linear infinite; }
.mf-hero__plane { top: 5%; right: -20%; width: 192px; height: auto; image-rendering: pixelated; opacity: .85; animation: mf-fly 30s linear infinite; animation-delay: 6s; }
.mf-hero--page .mf-hero__zeppelin { top: 30%; width: 150px; }
.mf-hero--page .mf-hero__plane { display: none; }

.mf-hero__ruins { left: 0; right: 0; bottom: 0; background-repeat: repeat-x; background-position: 0 100%; image-rendering: pixelated; }
.mf-hero__ruins--far { height: 42%; bottom: 10%; background-image: url(../images/minefield/ruins-far.svg); background-size: auto 100%; opacity: .85; animation: mf-pan 180s linear infinite; }
.mf-hero__ruins--near { height: 36%; bottom: 7%; background-image: url(../images/minefield/ruins-near.svg); background-size: auto 100%; animation: mf-pan 130s linear infinite reverse; }
.mf-hero--page .mf-hero__ruins--far { height: 55%; bottom: 14%; }
.mf-hero--page .mf-hero__ruins--near { height: 48%; bottom: 10%; }

.mf-hero__particles { inset: 0; }
.mf-hero__trench {
  left: 0; right: 0; bottom: 0; height: 96px;
  background: url(../images/minefield/trench.svg) repeat-x 0 100% / auto 100%;
  image-rendering: pixelated; filter: brightness(.9);
}
.mf-hero--page .mf-hero__trench { height: 64px; }
.mf-hero__vignette { inset: 0; background: radial-gradient(120% 90% at 50% 40%, transparent 55%, rgba(0, 0, 0, .55) 100%); }

.mf-hero__content { position: relative; z-index: 2; display: flex; flex-direction: column; align-items: center; text-align: center; padding-top: 30px; padding-bottom: 124px; }

/* ---------------------------------------------------------------------
   Scoreboard HUD (red team / timer / blue team + ticket bar)
   --------------------------------------------------------------------- */
.mf-hud { width: min(540px, 100%); filter: drop-shadow(0 12px 22px rgba(0, 0, 0, .5)); }
.mf-hud__bar {
  position: relative; display: grid; grid-template-columns: 1fr auto 1fr; align-items: stretch;
  min-height: 54px; background: #141922;
  box-shadow: inset 0 0 0 2px #06080b, inset 0 3px 0 rgba(255, 255, 255, .05);
}
.mf-hud__bar::before, .mf-hud__bar::after { content: ""; position: absolute; top: 0; bottom: 0; width: 4px; }
.mf-hud__bar::before { left: 0; background: var(--mf-red); }
.mf-hud__bar::after { right: 0; background: var(--mf-blue); }
.mf-hud__side { display: flex; align-items: center; justify-content: center; padding: 6px 14px; }
.mf-hud__side--red { background: linear-gradient(90deg, rgba(211, 58, 66, .6) 0%, rgba(211, 58, 66, .2) 60%, rgba(211, 58, 66, 0) 100%); }
.mf-hud__side--blue { background: linear-gradient(270deg, rgba(61, 127, 219, .6) 0%, rgba(61, 127, 219, .2) 60%, rgba(61, 127, 219, 0) 100%); }
.mf-hud__score { display: flex; flex-direction: column; align-items: center; justify-content: center; line-height: 1; text-align: center; }
.mf-hud__score b { font-family: var(--mf-font-pixel); font-weight: 700; font-size: 1.5rem; color: #fff; text-shadow: 0 2px 0 rgba(0, 0, 0, .6); }
.mf-hud__score small { margin-top: 4px; font-family: var(--mf-font-hud); font-size: .56rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: rgba(255, 255, 255, .65); }
.mf-hud__timer {
  position: relative; display: flex; align-items: center; justify-content: center; min-width: 108px; padding: 0 16px;
  background: #0c0f15; box-shadow: inset 2px 0 0 #06080b, inset -2px 0 0 #06080b;
}
.mf-hud__timer::after { content: ""; position: absolute; bottom: 8px; left: 20px; right: 20px; height: 2px; background: var(--mf-gold); }
.mf-hud__timer span { font-family: var(--mf-font-pixel); font-weight: 700; font-size: 1.45rem; color: #fff; letter-spacing: .04em; padding-bottom: 6px; }
.mf-hud__timer .mf-colon { animation: mf-blink 1s steps(2) infinite; }

.mf-tickets {
  position: relative; display: flex; height: 12px; margin: 10px auto 0; width: calc(100% - 24px);
  background: #06080b; box-shadow: 0 0 0 2px #06080b;
}
/* red half under the red (in-game) score, blue half under the blue (Discord) score */
.mf-tickets__red, .mf-tickets__blue { position: relative; height: 100%; }
.mf-tickets__red {
  width: 50%; transition: width 1.2s steps(24);
  background:
    repeating-linear-gradient(135deg, rgba(255, 255, 255, .14) 0 4px, transparent 4px 8px),
    linear-gradient(180deg, #e0555c, #c8323a 55%, #9e2a2e);
  background-size: 11.3px 11.3px, auto;
  animation: mf-march 1.4s linear infinite;
}
.mf-tickets__blue {
  flex: 1;
  background:
    repeating-linear-gradient(45deg, rgba(255, 255, 255, .14) 0 4px, transparent 4px 8px),
    linear-gradient(180deg, #6aa5f3, #3d7fdb 55%, #2c62b6);
  background-size: 11.3px 11.3px, auto;
  animation: mf-march-back 1.4s linear infinite;
}
.mf-tickets__red::after { content: ""; position: absolute; top: -3px; bottom: -3px; right: -3px; width: 6px; background: var(--mf-gold); z-index: 1; }

.mf-hud--compact { width: min(400px, 100%); }
.mf-hud--compact .mf-hud__bar { min-height: 46px; }
.mf-hud--compact .mf-hud__score b, .mf-hud--compact .mf-hud__timer span { font-size: 1.2rem; }
.mf-hud--compact .mf-hud__timer { min-width: 88px; }
.mf-hud--compact .mf-tickets { height: 10px; margin-top: 8px; }
@media (max-width: 480px) {
  .mf-hud__timer { min-width: 90px; padding: 0 10px; }
  .mf-hud__score b, .mf-hud__timer span { font-size: 1.3rem; }
}

/* logo + tagline */
.mf-hero__logo { margin: clamp(28px, 5vh, 52px) 0 0; line-height: 0; }
.mf-hero__logo img {
  width: min(465px, 86vw); height: auto;
  filter: drop-shadow(0 6px 0 rgba(0, 0, 0, .5)) drop-shadow(0 20px 28px rgba(0, 0, 0, .55));
  animation: mf-logo-in .9s steps(9) both;
}
.mf-hero__tagline {
  margin-top: 14px; font-family: var(--mf-font-hud); font-weight: 600; font-size: clamp(.78rem, 1.5vw, .98rem);
  letter-spacing: .2em; text-transform: uppercase; color: var(--mf-text-2); text-shadow: 0 2px 0 rgba(0, 0, 0, .7);
}

/* ---------------------------------------------------------------------
   Server address field (Minecraft "Direct Connect" text box)
   --------------------------------------------------------------------- */
.mf-address { display: flex; flex-direction: column; align-items: center; gap: 10px; width: min(470px, 100%); margin: 34px auto 0; }
.mf-address__label { font-family: var(--mf-font-hud); font-size: .7rem; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; color: #a0a8b5; text-shadow: 0 2px 0 rgba(0, 0, 0, .6); }
.mf-address__field {
  position: relative; display: block; width: 100%; padding: 15px 60px; margin: 0;
  font: inherit; color: #fff; text-align: center; cursor: pointer;
  background: rgba(0, 0, 0, .78);
  border: 2px solid #8b8b8b;
  box-shadow: 0 0 0 2px #000, 0 20px 40px -20px rgba(0, 0, 0, .9);
  transition: border-color .12s ease, background-color .12s ease;
}
.mf-address__field:hover, .mf-address__field:focus-visible { outline: none; border-color: #fff; background: rgba(0, 0, 0, .88); }
.mf-address__field:active .mf-address__ip { transform: translateY(1px); }
.mf-address__ip {
  display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
  font-family: var(--mf-font-pixel); font-weight: 500; font-size: clamp(1.05rem, 2.5vw, 1.4rem); letter-spacing: .02em;
  text-shadow: 2px 2px 0 #3f3f3f;
}
.mf-address__copy {
  position: absolute; top: 50%; right: 8px; transform: translateY(-50%);
  display: flex; align-items: center; justify-content: center; width: 38px; height: 38px;
  font-size: .95rem; color: #a0a8b5; background: rgba(255, 255, 255, .07);
  transition: color .12s ease, background-color .12s ease;
}
.mf-address__field:hover .mf-address__copy { color: #1d1504; background: var(--mf-gold); }
.mf-address__field--sm { padding: 11px 52px 11px 14px; text-align: left; }
.mf-address__field--sm .mf-address__ip { font-size: 1.02rem; }
.mf-address__field--sm .mf-address__copy { width: 32px; height: 32px; right: 6px; font-size: .85rem; }
@media (max-width: 480px) { .mf-address__field:not(.mf-address__field--sm) { padding: 14px 50px; } }

.mf-hero__links { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 18px; }

/* inner page header */
.mf-hero--page .mf-hero__content { flex-direction: row; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 24px; text-align: left; padding-top: 34px; padding-bottom: 82px; }
.mf-pagehead { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.mf-pagehead__title {
  font-family: var(--mf-font-hud) !important; font-weight: 700; font-size: clamp(1.9rem, 4.2vw, 2.8rem); line-height: 1; text-transform: uppercase; letter-spacing: .03em;
  color: #fff; text-shadow: 0 4px 0 rgba(0, 0, 0, .55);
}
.mf-pagehead__title::after { content: ""; display: block; width: 80px; height: 4px; margin-top: 14px; background: var(--mf-team); }
@media (max-width: 767px) { .mf-hero--page .mf-hero__content { flex-direction: column; align-items: flex-start; } }

/* ---------------------------------------------------------------------
   Sections & home page
   --------------------------------------------------------------------- */
.mf-section { position: relative; padding: 64px 0 80px; }
.mf-home { display: grid; gap: 40px; }
@media (min-width: 1024px) { .mf-home { grid-template-columns: minmax(0, 1fr) 380px; gap: 48px; } }
.mf-home__side { display: flex; flex-direction: column; gap: 22px; min-width: 0; }

.mf-heading { position: relative; display: flex; flex-wrap: wrap; align-items: flex-end; gap: 6px 18px; margin-bottom: 26px; }
.mf-heading .mf-kicker { flex-basis: 100%; }
.mf-heading__title { font-family: var(--mf-font-hud) !important; font-size: clamp(1.7rem, 3vw, 2.3rem); font-weight: 700; line-height: 1; text-transform: uppercase; letter-spacing: .03em; color: #fff; }
.mf-heading__line { flex: 1; min-width: 40px; height: 4px; margin-bottom: 6px; background: linear-gradient(90deg, var(--mf-line-2), transparent); position: relative; }
.mf-heading__line::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 44px; background: var(--mf-team); }

/* broadcast slider */
.mf-broadcast .sliders { height: 22rem; overflow: hidden; background: var(--mf-bg-2); }
.mf-broadcast .owl-item { min-height: 22rem !important; }
.mf-broadcast .owl-stage { min-height: 22rem !important; }
.mf-broadcast .owl-item:not(.not-before):before { background: linear-gradient(90deg, rgba(9, 12, 17, .92) 0%, rgba(9, 12, 17, .55) 55%, rgba(9, 12, 17, .15) 100%) !important; }
.mf-broadcast .sliders-content { position: relative; z-index: 2; width: 100%; max-width: 1280px; margin: 0 auto; padding: 0 28px; text-align: left !important; display: flex; flex-direction: column; gap: 10px; }
.mf-broadcast__title { font-family: var(--mf-font-hud); font-weight: 700; font-size: clamp(1.8rem, 4vw, 2.8rem); line-height: 1.05; text-transform: uppercase; color: #fff; max-width: 720px; text-shadow: 0 4px 0 rgba(0, 0, 0, .5); }
.mf-broadcast__text { color: var(--mf-text-2); max-width: 620px; font-size: 1.05rem; }

/* news cards */
.mf-news-grid { display: grid; gap: 22px; }
@media (min-width: 700px) { .mf-news-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.mf-news-grid--empty { grid-template-columns: 1fr !important; }
.mf-news {
  position: relative; display: flex; flex-direction: column; min-width: 0;
  background: linear-gradient(180deg, var(--mf-panel-2), var(--mf-panel));
  box-shadow: inset 0 0 0 1px var(--mf-line), var(--mf-shadow);
  transition: transform .2s steps(4), box-shadow .2s;
}
.mf-news:hover { transform: translateY(-4px); box-shadow: inset 0 0 0 1px var(--mf-line-2), 0 26px 40px -20px rgba(0, 0, 0, .9); }
.mf-news::after {
  content: ""; position: absolute; inset: 0; pointer-events: none; opacity: 0; transition: opacity .2s;
  background:
    linear-gradient(var(--mf-gold), var(--mf-gold)) left top / 18px 3px no-repeat,
    linear-gradient(var(--mf-gold), var(--mf-gold)) left top / 3px 18px no-repeat,
    linear-gradient(var(--mf-gold), var(--mf-gold)) right top / 18px 3px no-repeat,
    linear-gradient(var(--mf-gold), var(--mf-gold)) right top / 3px 18px no-repeat,
    linear-gradient(var(--mf-gold), var(--mf-gold)) left bottom / 18px 3px no-repeat,
    linear-gradient(var(--mf-gold), var(--mf-gold)) left bottom / 3px 18px no-repeat,
    linear-gradient(var(--mf-gold), var(--mf-gold)) right bottom / 18px 3px no-repeat,
    linear-gradient(var(--mf-gold), var(--mf-gold)) right bottom / 3px 18px no-repeat;
}
.mf-news:hover::after { opacity: 1; }
.mf-news__media { position: relative; height: 200px; overflow: hidden; background: #0a0d12; }
.mf-news__img { position: absolute; inset: 0; background-size: cover; background-position: center; transition: transform .5s ease, filter .3s; filter: saturate(.9) brightness(.85); }
.mf-news:hover .mf-news__img { transform: scale(1.06); filter: saturate(1.05) brightness(1); }
.mf-news__media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 45%, rgba(22, 27, 36, .95) 100%); }
.mf-tag {
  position: absolute; z-index: 2; top: 14px; left: 14px; padding: 5px 10px 4px;
  font-family: var(--mf-font-hud); font-size: .66rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
  color: #1d1504; background: var(--mf-gold); box-shadow: inset 0 -3px 0 rgba(0, 0, 0, .2);
}
.mf-news__body { display: flex; flex-direction: column; flex: 1; gap: 10px; padding: 18px 20px 18px; }
.mf-news__title { font-family: var(--mf-font-hud) !important; font-size: 1.2rem; font-weight: 700; line-height: 1.25; color: #fff; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.mf-news__text { color: var(--mf-muted); font-size: .95rem; line-height: 1.5; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.mf-news__meta { display: flex; align-items: center; gap: 14px; margin-top: auto; padding-top: 14px; border-top: 1px dashed var(--mf-line-2); font-family: var(--mf-font-pixel); font-size: .88rem; color: var(--mf-text-2); }
.mf-news__meta i { color: var(--mf-muted); font-size: .8em; margin-right: 3px; }
.mf-news__cta { margin-left: auto; font-family: var(--mf-font-hud); font-size: .72rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--mf-gold); }
.mf-news__cta i { color: var(--mf-gold) !important; transition: transform .2s steps(3); }
.mf-news:hover .mf-news__cta i { transform: translateX(4px); }

/* pagination */
#dark-mode .pagination, .pagination {
  gap: 6px; padding: 8px !important; border-radius: 0 !important; margin-top: 36px;
  background: var(--mf-panel) !important; box-shadow: inset 0 0 0 1px var(--mf-line);
}
.pagination .item {
  width: 40px !important; height: 40px !important; border-radius: 0 !important;
  font-family: var(--mf-font-pixel); font-size: 1rem;
  clip-path: var(--mf-clip); --mf-step: 3px;
}
.pagination .item:not(.disable,.active) { background: var(--mf-panel-3) !important; color: var(--mf-text-2) !important; }
.pagination .item:not(.disable,.active):hover { background: var(--mf-blue-2) !important; color: #fff !important; }
.pagination .item.active { background: linear-gradient(180deg, #5a98ee, #2c62b6) !important; color: #fff !important; box-shadow: inset 0 -3px 0 rgba(0, 0, 0, .3); }
.pagination .item.disable { background: rgba(255, 255, 255, .03) !important; color: var(--mf-line-2) !important; }

/* MVP (top donor) */
.mf-mvp {
  position: relative; display: grid; grid-template-columns: 92px minmax(0, 1fr) auto; align-items: end; gap: 14px;
  padding: 18px 18px 0 16px; overflow: hidden;
  background:
    radial-gradient(120% 90% at 0% 100%, rgba(242, 191, 60, .22), transparent 60%),
    linear-gradient(135deg, #2a2412 0%, #1b1a17 45%, var(--mf-panel) 100%);
  box-shadow: inset 0 0 0 1px rgba(242, 191, 60, .35), var(--mf-shadow);
}
.mf-mvp__ribbon {
  position: absolute; top: 12px; right: -34px; transform: rotate(45deg); padding: 3px 40px;
  font-family: var(--mf-font-pixel); font-weight: 700; font-size: .85rem; letter-spacing: .1em; color: #1d1504;
  background: var(--mf-gold); box-shadow: 0 3px 0 rgba(0, 0, 0, .3);
}
.mf-mvp__skin { position: relative; width: 92px; height: 138px; background-size: contain; background-repeat: no-repeat; background-position: bottom center; image-rendering: pixelated; filter: drop-shadow(0 0 16px rgba(242, 191, 60, .35)); transform: scaleX(-1); }
.mf-mvp__info { position: relative; display: flex; flex-direction: column; gap: 3px; padding-bottom: 20px; min-width: 0; }
.mf-mvp__label { font-family: var(--mf-font-hud); font-size: .66rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--mf-gold); }
.mf-mvp__name { font-family: var(--mf-font-hud); font-size: 1.35rem; font-weight: 700; color: #fff; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mf-mvp__sub { font-size: .85rem; color: var(--mf-text-2); }
.mf-mvp__score { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; align-self: center; min-width: 74px; padding: 10px 8px; margin-top: 14px; background: rgba(0, 0, 0, .35); box-shadow: inset 0 0 0 2px rgba(242, 191, 60, .45); }
.mf-mvp__score b { font-family: var(--mf-font-pixel); font-size: 1.6rem; line-height: 1; color: var(--mf-gold); }
.mf-mvp__score small { font-family: var(--mf-font-hud); font-size: .72rem; font-weight: 700; color: var(--mf-text-2); }

/* sidebar panels + kill feed */
.mf-panel { position: relative; background: linear-gradient(180deg, var(--mf-panel-2), var(--mf-panel)); box-shadow: inset 0 0 0 1px var(--mf-line), var(--mf-shadow); }
.mf-panel__head { display: flex; align-items: center; gap: 12px; padding: 14px 16px; border-bottom: 1px solid var(--mf-line); background: linear-gradient(90deg, rgba(255, 255, 255, .03), transparent); }
.mf-panel__icon { display: flex; align-items: center; justify-content: center; width: 34px; height: 34px; flex: none; color: #fff; background: var(--mf-blue-2); box-shadow: inset 0 -3px 0 rgba(0, 0, 0, .3); clip-path: var(--mf-clip); --mf-step: 3px; }
.mf-panel__icon--gold { background: var(--mf-gold-2); color: #1d1504; }
.mf-panel__title { flex: 1; min-width: 0; font-family: var(--mf-font-hud) !important; font-size: .9rem !important; font-weight: 700; line-height: 1.2 !important; letter-spacing: .06em; text-transform: uppercase; color: #fff; }
.mf-panel > [role="alert"], .mf-panel > div:not([class*="mf-"]):not([class*="tabs-"]) { margin: 14px 16px; }

.mf-feed { display: flex; flex-direction: column; padding: 10px; gap: 6px; }
.mf-feed__lead { position: relative; display: flex; align-items: center; gap: 12px; padding: 10px 12px; margin-bottom: 4px; background: linear-gradient(90deg, rgba(61, 127, 219, .22), rgba(61, 127, 219, .04)); box-shadow: inset 3px 0 0 var(--mf-blue); }
.mf-feed__lead--gold { background: linear-gradient(90deg, rgba(242, 191, 60, .2), rgba(242, 191, 60, .03)); box-shadow: inset 3px 0 0 var(--mf-gold); }
.mf-feed__lead img { width: 44px; height: 44px; image-rendering: pixelated; box-shadow: 0 0 0 2px rgba(0, 0, 0, .5); }
.mf-feed__lead-info { display: flex; flex-direction: column; min-width: 0; }
.mf-feed__lead-info small { font-family: var(--mf-font-hud); font-size: .6rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--mf-muted); }
.mf-feed__lead-info b { font-family: var(--mf-font-hud); font-size: 1rem; color: #fff; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mf-feed__lead-item { margin-left: auto; padding: 4px 8px; font-family: var(--mf-font-pixel); font-size: .88rem; color: #fff; background: rgba(0, 0, 0, .35); max-width: 45%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mf-feed__row {
  display: grid; grid-template-columns: 22px auto 10px minmax(0, 1fr) auto; grid-template-rows: auto auto; column-gap: 8px; align-items: center;
  padding: 7px 10px; background: rgba(8, 10, 15, .55); box-shadow: inset 2px 0 0 var(--mf-red-2);
  font-size: .86rem; transition: background-color .15s;
}
.mf-feed__row:nth-child(odd) { box-shadow: inset 2px 0 0 var(--mf-blue-2); }
.mf-feed__row:hover { background: rgba(255, 255, 255, .05); }
.mf-feed__row img { grid-row: 1 / span 2; width: 22px; height: 22px; image-rendering: pixelated; }
.mf-feed__name { font-family: var(--mf-font-hud); font-weight: 700; color: #fff; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 120px; }
.mf-feed__arrow { color: var(--mf-gold); font-size: .8rem; }
.mf-feed__item { color: var(--mf-text-2); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mf-feed__item--gold { font-family: var(--mf-font-pixel); color: var(--mf-gold); }
.mf-feed__meta.mf-feed__meta--end { grid-column: 5; grid-row: 1 / span 2; font-size: .95rem; color: var(--mf-text-2); }
.mf-feed__row--single img { grid-row: 1; }
.mf-feed__meta { grid-column: 2 / span 4; font-size: .72rem; color: var(--mf-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* recon search */
/* "Araştır" bar under the hero: players, news and store items (minefield.js -> finder) */
/* above .mf-section (z-index 20) so the results drop over the news */
.mf-finder-wrap { position: relative; z-index: 30; margin-top: -38px; }
.mf-finder { position: relative; display: flex; align-items: center; gap: 18px; padding: 14px 16px; background: rgba(16, 20, 27, .97); box-shadow: inset 0 0 0 1px var(--mf-line-2), 0 20px 40px -18px rgba(0, 0, 0, .9); }
.mf-finder::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: var(--mf-team); }
.mf-finder__label { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; font-family: var(--mf-font-hud); font-size: .95rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--mf-gold); }
.mf-finder__field { flex: 1; display: flex; gap: 8px; min-width: 0; }
.mf-finder__input { flex: 1; min-width: 0; height: 46px; padding: 0 14px; font-size: 1rem; color: var(--mf-text); background: #0b0e13; border: 2px solid var(--mf-line-2); border-radius: 0; outline: none; transition: border-color .15s; }
.mf-finder__input::placeholder { color: var(--mf-muted); }
.mf-finder__input:focus { border-color: var(--mf-gold); }
.mf-finder__input::-webkit-search-cancel-button { filter: invert(.7); }
.mf-finder__btn.btn:not(.btn-sm):not(.btn-lg) { height: 46px; padding: 0 1.2rem !important; }
.mf-finder__results { position: absolute; left: 0; right: 0; top: calc(100% + 6px); z-index: 20; max-height: 430px; padding: 6px; overflow-y: auto; background: var(--mf-panel); box-shadow: inset 0 0 0 1px var(--mf-line-2), 0 24px 48px -16px rgba(0, 0, 0, .9); scrollbar-width: thin; }
.mf-finder__results[hidden] { display: none; }
.mf-finder__group { display: flex; align-items: center; gap: 8px; padding: 10px 10px 4px; font-family: var(--mf-font-hud); font-size: .68rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--mf-muted); }
.mf-finder__group i { color: var(--mf-gold); }
.mf-finder__item { display: flex; align-items: center; gap: 12px; padding: 8px 10px; color: var(--mf-text); transition: background-color .12s; }
.mf-finder__item:hover, .mf-finder__item.is-active { color: #fff; background: var(--mf-panel-2); box-shadow: inset 3px 0 0 var(--mf-gold); }
.mf-finder__thumb { flex: 0 0 auto; width: 40px; height: 40px; overflow: hidden; background: var(--mf-panel-3); }
.mf-finder__thumb img { width: 100%; height: 100%; object-fit: cover; }
.mf-finder__thumb--avatar img { image-rendering: pixelated; }
.mf-finder__text { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.mf-finder__text b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 600; }
.mf-finder__text small { font-size: .78rem; color: var(--mf-muted); }
.mf-finder__empty { margin: 0; padding: 14px 12px; font-size: .9rem; color: var(--mf-muted); }
.mf-finder__alert { margin-top: 10px; }
@media (max-width: 767px) {
  .mf-finder-wrap { margin-top: -26px; }
  .mf-finder { padding: 12px; }
  .mf-finder__label, .mf-finder__btn span { display: none; }
}

/* discord comms */
.mf-comms { position: relative; overflow: hidden; background: linear-gradient(135deg, #3b44b8 0%, #2b3183 45%, #1b1f4e 100%); box-shadow: inset 0 0 0 1px rgba(139, 149, 255, .35), var(--mf-shadow); }
.mf-comms__head { position: relative; display: flex; align-items: center; gap: 12px; padding: 16px 16px 6px; color: #fff; }
.mf-comms__head > i { font-size: 1.9rem; }
.mf-comms__head small { display: block; font-family: var(--mf-font-hud); font-size: .6rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: rgba(255, 255, 255, .6); }
.mf-comms__head b { font-family: var(--mf-font-hud); font-size: 1.05rem; }
.mf-comms__body { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 16px 16px; }
.mf-comms__count { display: flex; align-items: baseline; gap: 8px; color: #fff; }
.mf-comms__count b { font-family: var(--mf-font-pixel); font-size: 2rem; line-height: 1; }
.mf-comms__count small { font-family: var(--mf-font-hud); font-size: .7rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: rgba(255, 255, 255, .7); }

/* staff strip ("Yetkili Kadromuz"): heading left, blurb right, self-scrolling card rail */
.mf-staff { padding-top: 8px; }
.mf-staff__head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 8px 48px; margin-bottom: 30px; }
.mf-staff__head .mf-heading { flex: 1 1 420px; margin-bottom: 0; }
.mf-staff__text { flex: 0 1 440px; margin: 0; font-size: 1rem; line-height: 1.6; color: var(--mf-text-2); }
.mf-staff__viewport { position: relative; overflow: hidden; padding: 6px 0 10px; }
.mf-staff__viewport.is-marquee, .mf-staff__viewport.is-scroll {
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 64px, #000 calc(100% - 64px), transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0, #000 64px, #000 calc(100% - 64px), transparent 100%);
}
.mf-staff__viewport.is-scroll { overflow-x: auto; scrollbar-width: thin; }
.mf-staff__track { display: flex; justify-content: center; gap: 18px; }
.mf-staff__viewport.is-marquee .mf-staff__track, .mf-staff__viewport.is-scroll .mf-staff__track { justify-content: flex-start; width: max-content; padding: 0 18px; }
.mf-staff__viewport.is-marquee .mf-staff__track { padding: 0; animation: mf-staff-scroll var(--mf-staff-time, 40s) linear infinite; }
.mf-staff__viewport.is-marquee:hover .mf-staff__track, .mf-staff__viewport.is-marquee:focus-within .mf-staff__track { animation-play-state: paused; }
.mf-staff__card {
  --role: var(--mf-blue); --role-text: #fff;
  position: relative; flex: 0 0 200px; display: flex; flex-direction: column; color: var(--mf-text);
  background: var(--mf-panel); box-shadow: inset 0 0 0 1px var(--mf-line), var(--mf-shadow);
  clip-path: var(--mf-clip); --mf-step: 3px;
  transition: transform .15s ease, box-shadow .15s ease;
}
.mf-staff__card:hover, .mf-staff__card:focus-visible { transform: translateY(-4px); box-shadow: inset 0 0 0 2px var(--role), var(--mf-shadow); outline: none; }
.mf-staff__plate { display: flex; flex-direction: column; align-items: flex-start; gap: 7px; padding: 14px 14px 12px; background: var(--mf-panel-2); box-shadow: inset 0 -3px 0 var(--role); }
.mf-staff__name { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-family: var(--mf-font-hud); font-size: 1.05rem; font-weight: 700; color: #fff; }
.mf-staff__plate .mf-role { font-size: .62rem; padding: 3px 8px; }
.mf-staff__skin {
  position: relative; display: flex; align-items: flex-end; justify-content: center; height: 290px; padding-bottom: 18px; overflow: hidden;
  background: linear-gradient(180deg, var(--mf-panel) 0%, #10141b 100%);
  background: radial-gradient(70% 45% at 50% 100%, color-mix(in srgb, var(--role) 38%, transparent), transparent 70%), linear-gradient(180deg, var(--mf-panel) 0%, #10141b 100%);
}
.mf-staff__skin::after { content: ""; position: absolute; left: 22%; right: 22%; bottom: 12px; height: 8px; background: rgba(0, 0, 0, .45); border-radius: 50%; filter: blur(3px); }
.mf-staff__skin img { position: relative; z-index: 1; width: 104px; height: 250px; object-fit: contain; image-rendering: pixelated; transition: transform .2s steps(4); }
.mf-staff__card:hover .mf-staff__skin img { transform: translateY(-4px) scale(1.03); }
.mf-staff__card--photo .mf-staff__skin { padding-bottom: 0; align-items: stretch; }
.mf-staff__card--photo .mf-staff__skin::after { display: none; }
.mf-staff__skin img.mf-staff__photo { width: 100%; height: 100%; object-fit: cover; object-position: center top; image-rendering: auto; transition: transform .3s ease; }
.mf-staff__card--photo:hover .mf-staff__skin img.mf-staff__photo { transform: scale(1.04); }
@keyframes mf-staff-scroll { from { transform: translateX(0); } to { transform: translateX(calc(var(--mf-staff-shift, 0px) * -1)); } }
@media (max-width: 767px) {
  .mf-staff__card { flex-basis: 168px; }
  .mf-staff__skin { height: 250px; }
  .mf-staff__skin img { width: 88px; height: 212px; }
}
@media (prefers-reduced-motion: reduce) { .mf-staff__viewport.is-marquee .mf-staff__track { animation: none; } }

/* ---------------------------------------------------------------------
   CTA
   --------------------------------------------------------------------- */
.mf-cta { position: relative; overflow: hidden; isolation: isolate; padding: 80px 0; border-top: 1px solid var(--mf-line); }
.mf-cta__photo { position: absolute; inset: 0; z-index: -2; background-size: cover; background-position: center; filter: grayscale(.7) brightness(.4); }
.mf-cta__shade { position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(211, 58, 66, .35), rgba(13, 16, 22, .88) 30%, rgba(13, 16, 22, .88) 70%, rgba(61, 127, 219, .35)); }
.mf-cta__inner { position: relative; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 26px; }
.mf-cta__text { display: flex; flex-direction: column; align-items: center; gap: 12px; }
.mf-cta__title { font-family: var(--mf-font-hud) !important; font-size: clamp(1.8rem, 4vw, 3rem); font-weight: 700; line-height: 1.05; text-transform: uppercase; color: #fff; text-shadow: 0 4px 0 rgba(0, 0, 0, .55); max-width: 820px; }
.mf-cta__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }
.btn .mf-ip-text { text-transform: none; letter-spacing: .03em; }

/* ---------------------------------------------------------------------
   Footer
   --------------------------------------------------------------------- */
.mf-footer { position: relative; background: #0a0d12; color: var(--mf-text-2); border-top: 1px solid #06080b; }
.mf-footer::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: var(--mf-team); }
.mf-footer__grid { display: grid; gap: 36px; padding-top: 56px; padding-bottom: 44px; }
@media (min-width: 900px) { .mf-footer__grid { grid-template-columns: 1.3fr 1fr 1fr; gap: 56px; } }
.mf-footer__brand img { height: 52px; width: auto; max-width: 260px; object-fit: contain; }
.mf-footer__brand p { margin-top: 16px; max-width: 360px; color: var(--mf-muted); line-height: 1.6; }
.mf-footer__social { display: flex; gap: 8px; margin-top: 18px; }
.mf-social { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; color: #fff; background: var(--mf-panel-2); clip-path: var(--mf-clip); --mf-step: 3px; box-shadow: inset 0 -3px 0 rgba(0, 0, 0, .35); transition: background-color .15s, transform .1s; }
.mf-social:hover { transform: translateY(-2px); }
.mf-social--instagram:hover { background: #c13584; }
.mf-social--youtube:hover { background: #d42a2a; }
.mf-social--discord:hover { background: #5865f2; }
.mf-footer__title { margin-bottom: 16px; font-family: var(--mf-font-hud) !important; font-size: .78rem; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: #fff; }
.mf-footer__title::after { content: ""; display: block; width: 32px; height: 3px; margin-top: 8px; background: var(--mf-gold); }
.mf-footer__links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 16px; }
.mf-footer__links a { display: flex; align-items: center; gap: 8px; padding: 3px 0; color: var(--mf-text-2); font-weight: 500; transition: color .15s, transform .15s steps(2); }
.mf-footer__links a i { width: 16px; font-size: .8rem; color: var(--mf-muted); }
.mf-footer__links a:hover { color: #fff; transform: translateX(3px); }
.mf-footer__links a:hover i { color: var(--mf-gold); }
.mf-footer__stats { display: flex; flex-direction: column; gap: 6px; margin: 14px 0 16px; font-size: .88rem; }
.mf-footer__stats span { display: flex; align-items: center; gap: 8px; }
.mf-live__dot { display: inline-block; flex: none; width: 8px; height: 8px; background: var(--mf-green); box-shadow: 0 0 8px rgba(98, 176, 78, .7); }
.mf-footer__stats b { font-family: var(--mf-font-pixel); color: #fff; }
.mf-footer__stats .fa-discord { color: #8b95ff; }
.mf-footer__play.btn { width: 100%; }
.mf-footer__bottom { background: #07090d; border-top: 1px solid rgba(255, 255, 255, .04); }
.mf-footer__bottom-inner { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 24px; min-height: 58px; padding-top: 12px; padding-bottom: 12px; font-size: .82rem; color: var(--mf-muted); }
.mf-footer__lang { display: inline-flex; align-items: center; gap: 8px; padding: 6px 10px; font: inherit; color: var(--mf-text-2); background: transparent; border: 0; cursor: pointer; box-shadow: inset 0 -2px 0 var(--mf-line-2); transition: color .15s, box-shadow .15s; }
.mf-footer__lang:hover { color: #fff; box-shadow: inset 0 -2px 0 var(--mf-gold); }
.mf-footer__credit { font-family: var(--mf-font-hud); font-weight: 700; letter-spacing: .1em; color: var(--mf-muted); }
.mf-footer__credit:hover { color: #fff; }

/* ---------------------------------------------------------------------
   Modals: drawers, sheets, deploy screen, language picker
   --------------------------------------------------------------------- */
.mf-modal { position: fixed; inset: 0; z-index: 105; }
.mf-modal:not(.hidden) { display: flex; }
.mf-modal--sheet:not(.hidden), .mf-modal--center:not(.hidden) { flex-direction: column; justify-content: flex-end; }
.mf-modal--center:not(.hidden) { justify-content: center; align-items: center; padding: 20px; }
.mf-modal__backdrop { position: absolute; inset: 0; background: rgba(4, 6, 10, .72); -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px); cursor: pointer; }

.mf-drawer {
  position: relative; margin-left: auto; width: min(420px, 88vw); height: 100%; overflow-y: auto;
  display: flex; flex-direction: column;
  background: linear-gradient(180deg, var(--mf-panel-2), var(--mf-bg));
  box-shadow: -2px 0 0 #06080b, -24px 0 60px rgba(0, 0, 0, .6);
}
.mf-drawer.transition-all { transition-duration: .25s; }
.mf-drawer::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: linear-gradient(180deg, var(--mf-red), var(--mf-blue)); }
.mf-drawer__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 18px 20px 18px 24px; border-bottom: 1px solid var(--mf-line); background: rgba(0, 0, 0, .25); }
.mf-drawer__user { display: flex; align-items: center; gap: 12px; min-width: 0; }
.mf-drawer__user img { width: 44px; height: 44px; image-rendering: pixelated; box-shadow: 0 0 0 2px rgba(0, 0, 0, .5); }
.mf-drawer__user small { display: block; font-family: var(--mf-font-hud); font-size: .62rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--mf-muted); }
.mf-drawer__user b { font-family: var(--mf-font-hud); font-size: 1.15rem; color: #fff; }
.mf-drawer__logo img { height: 40px; width: auto; max-width: 220px; object-fit: contain; }
.mf-close { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; flex: none; color: var(--mf-text); background: var(--mf-panel-3); border: 0; cursor: pointer; clip-path: var(--mf-clip); --mf-step: 3px; transition: background-color .15s; }
.mf-close:hover { background: var(--mf-red-2); color: #fff; }

.mf-tiles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; padding: 16px 16px 90px 19px; }
.mf-tile {
  --c: var(--mf-text-2);
  position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; padding: 22px 10px;
  background: rgba(255, 255, 255, .03); box-shadow: inset 0 0 0 1px var(--mf-line); color: var(--mf-text); text-align: center;
  transition: background-color .15s, box-shadow .15s, transform .1s;
}
.mf-tile:hover { background: color-mix(in srgb, var(--c) 22%, transparent); box-shadow: inset 0 0 0 1px var(--c); }
.mf-tile:active { transform: translateY(2px); }
.mf-tile__icon { display: flex; align-items: center; justify-content: center; min-width: 46px; height: 46px; padding: 0 8px; font-size: 1.1rem; color: #fff; background: color-mix(in srgb, var(--c) 70%, #000); box-shadow: inset 0 -4px 0 rgba(0, 0, 0, .3), inset 0 2px 0 rgba(255, 255, 255, .15); clip-path: var(--mf-clip); --mf-step: 3px; }
.mf-tile__icon--text { font-family: var(--mf-font-pixel); font-size: .95rem; }
.mf-tile__label { font-family: var(--mf-font-hud); font-size: .78rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.mf-tile--blue { --c: var(--mf-blue); }
.mf-tile--red { --c: var(--mf-red); }
.mf-tile--gold { --c: var(--mf-gold-2); }
.mf-tile--green { --c: var(--mf-green); }

.mf-drawer__menu { display: flex; flex-direction: column; padding: 12px 12px 12px 15px; gap: 4px; }
.mf-drawer__item { display: flex; align-items: center; gap: 12px; padding: 13px 14px; font-family: var(--mf-font-hud); font-weight: 600; font-size: .9rem; letter-spacing: .08em; text-transform: uppercase; color: var(--mf-text-2); box-shadow: inset 0 -1px 0 rgba(255, 255, 255, .04); transition: background-color .15s, color .15s; }
.mf-drawer__item i { width: 18px; color: var(--mf-muted); }
.mf-drawer__item:hover { background: rgba(255, 255, 255, .04); color: #fff; }
.mf-drawer__item.is-active { color: #fff; background: linear-gradient(90deg, rgba(242, 191, 60, .16), transparent); box-shadow: inset 3px 0 0 var(--mf-gold); }
.mf-drawer__item.is-active i { color: var(--mf-gold); }
.mf-drawer__foot { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: auto; padding: 16px 16px 24px 19px; border-top: 1px solid var(--mf-line); }

.mf-sheet {
  position: relative; width: 100%; max-height: 88vh; overflow-y: auto;
  background: linear-gradient(180deg, var(--mf-panel-2), var(--mf-bg));
  box-shadow: 0 -2px 0 #06080b, 0 -30px 60px rgba(0, 0, 0, .6);
}
.mf-sheet::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: var(--mf-team); }
.mf-sheet.transition-all { transition-duration: .25s; }
.mf-sheet--center { width: min(720px, 100%); max-height: 80vh; }

.mf-deployscreen { background: radial-gradient(80% 120% at 50% 110%, rgba(242, 150, 40, .18), transparent 60%), linear-gradient(180deg, #141922, #0b0e13); }
.mf-deployscreen::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 36px; background: url(../images/minefield/trench.svg) repeat-x 0 100% / auto 100%; image-rendering: pixelated; opacity: .7; pointer-events: none; }
.mf-deployscreen__inner { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; gap: 16px; max-width: 560px; margin: 0 auto; padding: 38px 20px 64px; text-align: center; }
.mf-deployscreen__title { font-family: var(--mf-font-hud) !important; font-size: 1.8rem; font-weight: 700; text-transform: uppercase; color: #fff; }
.mf-deployscreen__actions { display: grid; grid-template-columns: 1.4fr 1fr; gap: 10px; width: 100%; margin-top: 6px; }
@media (max-width: 480px) { .mf-deployscreen__actions { grid-template-columns: 1fr; } }

.mf-langs { max-width: 760px; margin: 0 auto; padding: 32px 20px 40px; }
.mf-langs__title { margin: 8px 0 14px; font-family: var(--mf-font-hud) !important; font-size: .85rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--mf-text-2); }
.mf-langs__title i { color: var(--mf-gold); margin-right: 6px; }
.mf-langs__list { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 22px; }
.mf-langs__item { display: inline-flex; align-items: center; gap: 8px; padding: 10px 14px; font-family: var(--mf-font-hud); font-weight: 600; color: var(--mf-text-2); background: var(--mf-panel-2); box-shadow: inset 0 0 0 1px var(--mf-line); transition: background-color .15s, color .15s, box-shadow .15s; }
.mf-langs__item:hover { color: #fff; box-shadow: inset 0 0 0 1px var(--mf-line-2); background: var(--mf-panel-3); }
.mf-langs__item.is-active { color: #fff; background: linear-gradient(180deg, rgba(61, 127, 219, .35), rgba(61, 127, 219, .15)); box-shadow: inset 0 0 0 1px var(--mf-blue); }
.mf-langs__item.is-active i { color: var(--mf-gold); }

/* ---------------------------------------------------------------------
   Page loader
   --------------------------------------------------------------------- */
#dark-mode .page-loader.mf-loader, .page-loader.mf-loader { background: radial-gradient(70% 60% at 50% 60%, #151a24, #07090d) !important; z-index: 999999; }
.mf-loader__box { display: flex; flex-direction: column; align-items: center; gap: 16px; width: min(460px, 86vw); text-align: center; }
.mf-loader__logo { width: min(320px, 70vw); height: auto; animation: mf-bob 2.4s ease-in-out infinite; }
.mf-loader__label { font-family: var(--mf-font-hud); font-weight: 700; font-size: .85rem; letter-spacing: .24em; text-transform: uppercase; color: var(--mf-text); }
.mf-loader__dots i { display: inline-block; width: 4px; height: 4px; margin-left: 4px; background: var(--mf-gold); animation: mf-blink 1s steps(2) infinite; }
.mf-loader__dots i:nth-child(2) { animation-delay: .2s; }
.mf-loader__dots i:nth-child(3) { animation-delay: .4s; }
.mf-loader__bar { position: relative; width: 100%; height: 14px; background: #06080b; box-shadow: 0 0 0 2px #06080b, inset 0 0 0 1px rgba(255, 255, 255, .06); overflow: hidden; }
/* width is driven by minefield.js (loaderGate) */
.mf-loader__bar span { position: absolute; inset: 0 auto 0 0; width: 0; background: linear-gradient(90deg, var(--mf-red), var(--mf-gold) 50%, var(--mf-blue)); }
.mf-loader__tip { max-width: 420px; font-size: .9rem; line-height: 1.5; color: var(--mf-muted); }
.mf-loader__tip b { font-family: var(--mf-font-hud); letter-spacing: .1em; text-transform: uppercase; color: var(--mf-gold); }

/* ---------------------------------------------------------------------
   Hero plane game (theme/assets/js/mf-game.js)
   --------------------------------------------------------------------- */
/* the flying header plane is the game's start button: it glows, spins its propeller and carries a "click to play" tag */
.mf-hero__plane--play { top: 12%; position: absolute; z-index: 3; padding: 0; border: 0; background: none; cursor: pointer; pointer-events: auto; opacity: 1; transition: opacity .3s; }
.mf-hero__plane--play img { display: block; width: 100%; height: auto; image-rendering: pixelated; animation: mf-plane-glow 1.4s ease-in-out infinite; }
.mf-hero__plane--play:hover img, .mf-hero__plane--play:focus-visible img { animation: none; filter: drop-shadow(0 0 3px #fff2b0) drop-shadow(0 0 16px rgba(242, 191, 60, .95)); }
.mf-hero__plane--play:focus-visible { outline: 2px solid var(--mf-gold); outline-offset: 4px; }
/* propeller centre sits at (4.5, 15.5) of the 64x28 sprite */
.mf-hero__prop { position: absolute; left: calc(100% * 4 / 64); top: calc(100% * 4.5 / 28); width: calc(100% / 64); height: calc(100% * 22 / 28); background: #7a5634; animation: mf-prop .12s steps(4) infinite; pointer-events: none; }
.mf-hero__plane--play::before { content: ""; position: absolute; z-index: 1; left: calc(100% * 3 / 64); top: calc(100% * 3 / 28); width: calc(100% * 2 / 64); height: calc(100% * 25 / 28); background: rgba(235, 228, 205, .22); pointer-events: none; }
.mf-hero__plane-hint {
  position: absolute; left: 50%; bottom: calc(100% + 8px); translate: -50% 0; display: inline-flex; align-items: center; gap: 6px; padding: 5px 10px; white-space: nowrap;
  font-family: var(--mf-font-hud); font-size: .72rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #16110a; background: var(--mf-gold);
  box-shadow: 0 0 0 2px #16110a, 0 0 18px rgba(242, 191, 60, .6); animation: mf-hint-bob 1.4s ease-in-out infinite; pointer-events: none;
}
.mf-hero__plane-hint::after { content: ""; position: absolute; left: 50%; top: 100%; margin-left: -5px; border: 5px solid transparent; border-top-color: var(--mf-gold); }
@keyframes mf-plane-glow { 0%, 100% { filter: drop-shadow(0 0 2px rgba(255, 242, 176, .6)) drop-shadow(0 0 6px rgba(242, 191, 60, .45)); } 50% { filter: drop-shadow(0 0 3px #fff2b0) drop-shadow(0 0 18px rgba(242, 191, 60, .95)); } }
@keyframes mf-prop { 0% { transform: scaleY(1); } 25% { transform: scaleY(.45); } 50% { transform: scaleY(.08); } 75% { transform: scaleY(.55); } }
@keyframes mf-hint-bob { 0%, 100% { translate: -50% 0; } 50% { translate: -50% -5px; } }

.mf-hero--home .mf-hud, .mf-hero--home .mf-hero__tagline, .mf-hero--home .mf-address, .mf-hero--home .mf-hero__links { transition: opacity .35s .2s, transform .35s .2s, visibility 0s 0s; }
.mf-hero.is-game .mf-hud, .mf-hero.is-game .mf-hero__tagline, .mf-hero.is-game .mf-address, .mf-hero.is-game .mf-hero__links { opacity: 0; transform: translateY(18px); visibility: hidden; pointer-events: none; transition: opacity .3s, transform .3s, visibility 0s .3s; }
.mf-hero--home .mf-hero__logo { position: relative; z-index: 5; transform-origin: 50% 0; transition: transform .6s cubic-bezier(.2, .8, .2, 1); pointer-events: none; }
.mf-hero.is-game .mf-hero__logo { transform: translateY(calc(var(--mf-logo-lift, 0px) * -1)) scale(.42); }
.mf-hero.is-game .mf-hero__plane--play { opacity: 0; pointer-events: none; }
/* keep the shrunken logo above the opaque game sky; clicks fall through to the canvas */
.mf-hero.is-game .mf-hero__content { z-index: 5; pointer-events: none; }

.mf-game { position: absolute; inset: 0; z-index: 4; background: #a3acb2; }
.mf-game[hidden], .mf-game [hidden] { display: none !important; }
.mf-game__canvas { position: absolute; inset: 0; width: 100%; height: 100%; cursor: pointer; touch-action: none; }
.mf-game__hud { position: absolute; top: 14px; left: 16px; right: 16px; display: flex; align-items: flex-start; gap: 8px; pointer-events: none; }
.mf-game__stat { display: flex; flex-direction: column; align-items: center; min-width: 64px; padding: 6px 12px; background: rgba(10, 13, 18, .8); box-shadow: inset 0 0 0 1px var(--mf-line-2); }
.mf-game__stat small { font-family: var(--mf-font-hud); font-size: .6rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--mf-muted); }
.mf-game__stat b { font-family: var(--mf-font-pixel); font-size: 1.25rem; line-height: 1.2; color: var(--mf-gold); }
.mf-game__stat--lives b { display: flex; gap: 4px; font-size: .95rem; line-height: 1.6; color: var(--mf-red); }
.mf-game__stat--lives .is-lost { color: var(--mf-line-2); }
.mf-game__exit.btn, .mf-game__mute.btn { pointer-events: auto; }
.mf-game__mute.btn { margin-left: auto; min-width: 40px; }

/* campaign + rocket gauges: same steel plate as the scoreboard HUD, notched fill, counter on the right */
.mf-game__gauges { position: absolute; left: 50%; top: 80px; translate: -50% 0; display: flex; flex-direction: column; align-items: center; gap: 6px; width: min(420px, calc(100% - 60px)); pointer-events: none; }
.mf-game__boss { position: relative; width: 100%; padding: 6px 10px 8px; background: #141922; box-shadow: inset 0 0 0 1px #0b0d11, inset 0 2px 0 rgba(255, 255, 255, .05), 0 10px 22px -12px rgba(0, 0, 0, .9); }
.mf-game__boss::before, .mf-game__boss::after { content: ""; position: absolute; top: -1px; width: 10px; height: 10px; border-top: 2px solid var(--mf-gold); }
.mf-game__boss::before { left: -1px; border-left: 2px solid var(--mf-gold); }
.mf-game__boss::after { right: -1px; border-right: 2px solid var(--mf-gold); }
.mf-game__plate { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; margin-bottom: 5px; }
.mf-game__boss-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-family: var(--mf-font-hud); font-size: .7rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--mf-text-2); }
.mf-game__boss-count { flex: 0 0 auto; font-family: var(--mf-font-pixel); font-size: .8rem; color: var(--mf-gold); }
.mf-game__boss-bar { position: relative; display: block; height: 10px; background: #0a0d12; box-shadow: inset 0 0 0 1px #05070a; overflow: hidden; }
.mf-game__boss-fill {
  position: absolute; inset: 0 auto 0 0; width: 0;
  background: repeating-linear-gradient(90deg, var(--mf-gold) 0 7px, var(--mf-gold-2) 7px 9px);
  box-shadow: inset 0 -3px 0 rgba(0, 0, 0, .28); transition: width .2s steps(5);
}
.mf-game__boss-bar i { position: absolute; top: 0; bottom: 0; width: 2px; margin-left: -1px; background: #05070a; }
.mf-game__boss.is-boss { box-shadow: inset 0 0 0 1px #3a1114, inset 0 2px 0 rgba(255, 255, 255, .05), 0 10px 22px -12px rgba(0, 0, 0, .9); }
.mf-game__boss.is-boss::before, .mf-game__boss.is-boss::after { border-color: var(--mf-red); }
.mf-game__boss.is-boss .mf-game__boss-name { color: #ffb3b6; }
.mf-game__boss.is-boss .mf-game__boss-count { color: var(--mf-red); }
.mf-game__boss.is-boss .mf-game__boss-fill { background: repeating-linear-gradient(90deg, var(--mf-red) 0 7px, var(--mf-red-2) 7px 9px); }
.mf-game__boss.is-boss .mf-game__boss-bar i { display: none; }

.mf-game__charge { display: flex; align-items: center; gap: 8px; width: min(260px, 100%); padding: 4px 8px; background: rgba(20, 25, 34, .92); box-shadow: inset 0 0 0 1px #0b0d11; }
.mf-game__charge-label { display: inline-flex; align-items: center; gap: 5px; font-family: var(--mf-font-hud); font-size: .6rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--mf-muted); }
.mf-game__charge-bar { position: relative; flex: 1; height: 7px; background: #0a0d12; box-shadow: inset 0 0 0 1px #05070a; overflow: hidden; }
.mf-game__charge-fill { position: absolute; inset: 0 auto 0 0; width: 0; background: repeating-linear-gradient(90deg, #4f9fe0 0 5px, #2c5fae 5px 7px); }
.mf-game__charge-bar i { position: absolute; top: 0; bottom: 0; width: 2px; margin-left: -1px; background: #05070a; }
.mf-game__charge-count { min-width: 22px; font-family: var(--mf-font-pixel); font-size: .8rem; text-align: right; color: var(--mf-muted); }
.mf-game__charge.is-ready { box-shadow: inset 0 0 0 1px var(--mf-gold); }
.mf-game__charge.is-ready .mf-game__charge-label, .mf-game__charge.is-ready .mf-game__charge-count { color: var(--mf-gold); }
.mf-game__charge.is-ready .mf-game__charge-fill { background: repeating-linear-gradient(90deg, var(--mf-gold) 0 5px, var(--mf-gold-2) 5px 7px); animation: mf-blink 1.2s steps(2) infinite; }
.mf-game__rocket.btn { min-width: 40px; }
.mf-game__rocket.btn[disabled] { opacity: .45; cursor: default; }

.mf-game__help { position: absolute; left: 50%; bottom: 18px; translate: -50% 0; width: max-content; max-width: calc(100% - 32px); margin: 0; padding: 6px 12px; text-align: center; font-size: .85rem; color: var(--mf-text-2); background: rgba(10, 13, 18, .72); pointer-events: none; animation: mf-game-help 7s ease forwards; }
.mf-game__over { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; padding: 20px; background: rgba(8, 10, 15, .6); }
.mf-game__card { display: flex; flex-direction: column; align-items: center; gap: 10px; width: min(420px, 100%); padding: 26px 24px; text-align: center; background: var(--mf-panel); box-shadow: inset 0 0 0 1px var(--mf-line-2), var(--mf-shadow); clip-path: var(--mf-clip); --mf-step: 4px; }
.mf-game__title { margin: 0; font-family: var(--mf-font-hud); font-size: 1.7rem; font-weight: 700; text-transform: uppercase; color: #fff; }
.mf-game__result { margin: 0; color: var(--mf-text-2); }
.mf-game__result b { font-family: var(--mf-font-pixel); font-size: 1.6rem; color: var(--mf-gold); }
.mf-game__status { min-height: 1.4em; margin: 0; font-size: .9rem; color: var(--mf-muted); }
.mf-game__status a { color: var(--mf-gold); font-weight: 700; }
.mf-game__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 6px; }
@keyframes mf-game-help { 0%, 75% { opacity: 1; } 100% { opacity: 0; } }
@media (max-width: 700px) {
  .mf-game__hud { top: auto; bottom: 12px; }
  .mf-game__stat { min-width: 52px; padding: 4px 8px; }
  .mf-game__help { bottom: 72px; font-size: .78rem; }
  .mf-game__gauges { top: 62px; width: calc(100% - 44px); }
}

/* pilot leaderboard (home sidebar) */
.mf-board [hidden] { display: none !important; }
.mf-board__list { display: flex; flex-direction: column; gap: 6px; margin: 0; padding: 12px 14px 4px; list-style: none; }
.mf-board__row { display: grid; grid-template-columns: 24px 28px minmax(0, 1fr) auto; align-items: center; gap: 10px; padding: 6px 10px; background: var(--mf-panel-2); box-shadow: inset 3px 0 0 var(--mf-line-2); }
.mf-board__row img { width: 28px; height: 28px; image-rendering: pixelated; }
.mf-board__rank { font-family: var(--mf-font-pixel); font-size: .95rem; text-align: center; color: var(--mf-muted); }
.mf-board__name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-family: var(--mf-font-hud); font-size: .9rem; font-weight: 700; color: var(--mf-text); }
.mf-board__score { font-family: var(--mf-font-pixel); font-size: 1rem; color: var(--mf-gold); }
.mf-board__row--1 { box-shadow: inset 3px 0 0 #f2bf3c; background: linear-gradient(90deg, rgba(242, 191, 60, .14), var(--mf-panel-2) 70%); }
.mf-board__row--1 .mf-board__rank { color: #f2bf3c; }
.mf-board__row--2 { box-shadow: inset 3px 0 0 #c9d1dc; }
.mf-board__row--2 .mf-board__rank { color: #c9d1dc; }
.mf-board__row--3 { box-shadow: inset 3px 0 0 #c98a4b; }
.mf-board__row--3 .mf-board__rank { color: #c98a4b; }
.mf-board__empty { margin: 0; padding: 14px 16px 4px; font-size: .9rem; line-height: 1.5; color: var(--mf-muted); }
.mf-board__foot { padding: 10px 14px 14px; }

/* scroll reveal (minefield.js adds and removes these classes) */
.mf-reveal { opacity: 0; transform: translate3d(0, 60px, 0) scale(.96); }
.mf-reveal[data-mf-reveal="right"] { transform: translate3d(-48px, 0, 0); }
.mf-reveal[data-mf-reveal="left"] { transform: translate3d(48px, 0, 0); }
.mf-reveal[data-mf-reveal="zoom"] { transform: scale(.9); }
.mf-reveal.is-revealed { opacity: 1; transform: none; transition: opacity .7s ease var(--mf-reveal-delay, 0ms), transform .9s cubic-bezier(.22, 1, .36, 1) var(--mf-reveal-delay, 0ms); }

/* ---------------------------------------------------------------------
   Site radio (theme/assets/js/mf-radio.js, songs from admin > Modules > Radio)
   --------------------------------------------------------------------- */
.mf-radio { position: fixed; left: 16px; bottom: 16px; z-index: 90; font-family: var(--mf-font-body, inherit); }
.mf-radio__toggle {
  position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 8px; height: 48px; min-width: 48px; padding: 0 14px;
  border: 0; cursor: pointer; color: var(--mf-gold); background: rgba(16, 20, 27, .94); box-shadow: inset 0 0 0 1px var(--mf-line-2), var(--mf-shadow);
  clip-path: var(--mf-clip); --mf-step: 3px; transition: box-shadow .15s, color .15s;
}
.mf-radio__toggle:hover, .mf-radio__toggle:focus-visible { color: #fff; box-shadow: inset 0 0 0 2px var(--mf-gold), var(--mf-shadow); outline: none; }
.mf-radio__toggle > i { font-size: 1.15rem; }
.mf-radio__eq { display: none; align-items: flex-end; gap: 2px; height: 14px; }
.mf-radio__eq i { display: block; width: 3px; height: 30%; background: var(--mf-gold); }
.mf-radio.is-playing .mf-radio__eq { display: inline-flex; }
.mf-radio.is-playing .mf-radio__eq i { animation: mf-eq .9s steps(4) infinite; }
.mf-radio.is-playing .mf-radio__eq i:nth-child(2) { animation-delay: -.3s; }
.mf-radio.is-playing .mf-radio__eq i:nth-child(3) { animation-delay: -.6s; }
.mf-radio.is-open .mf-radio__toggle { color: #fff; }
@keyframes mf-eq { 0%, 100% { height: 30%; } 25% { height: 100%; } 50% { height: 55%; } 75% { height: 80%; } }

.mf-radio__panel {
  position: absolute; left: 0; bottom: 58px; width: min(320px, calc(100vw - 32px)); display: flex; flex-direction: column; gap: 10px; padding: 14px;
  background: rgba(16, 20, 27, .97); box-shadow: inset 0 0 0 1px var(--mf-line-2), 0 18px 40px -12px rgba(0, 0, 0, .85);
}
.mf-radio__panel[hidden] { display: none; }
.mf-radio__panel::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: var(--mf-team); }
.mf-radio__head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.mf-radio__yt { position: relative; width: 100%; aspect-ratio: 16 / 9; background: #000; box-shadow: inset 0 0 0 1px var(--mf-line); }
.mf-radio__yt[hidden] { display: none; }
.mf-radio__yt iframe, .mf-radio__yt > div { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.mf-radio__now { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.mf-radio__title { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-family: var(--mf-font-hud); font-size: .95rem; font-weight: 700; color: #fff; }
.mf-radio__state { font-size: .78rem; color: var(--mf-muted); }
.mf-radio.is-playing .mf-radio__state { color: var(--mf-green); }
.mf-radio__progress { position: relative; height: 4px; background: #0b0d11; }
.mf-radio__progress span { position: absolute; inset: 0 auto 0 0; width: 0; background: linear-gradient(90deg, var(--mf-red), var(--mf-gold) 50%, var(--mf-blue)); }
.mf-radio__controls { display: flex; align-items: center; gap: 6px; }
.mf-radio__icon, .mf-radio__play {
  display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; padding: 0; border: 0; cursor: pointer;
  color: var(--mf-text-2); background: var(--mf-panel-2); box-shadow: inset 0 0 0 1px var(--mf-line); transition: color .15s, background-color .15s;
}
.mf-radio__icon:hover, .mf-radio__icon:focus-visible { color: #fff; background: var(--mf-panel-3); outline: none; }
.mf-radio__play { width: 42px; height: 42px; color: #16110a; background: var(--mf-gold); box-shadow: inset 0 -3px 0 rgba(0, 0, 0, .25); }
.mf-radio__play:hover, .mf-radio__play:focus-visible { background: #ffd766; outline: none; }
.mf-radio__volume { flex: 1; min-width: 60px; height: 18px; margin: 0 0 0 4px; background: transparent; accent-color: var(--mf-gold); cursor: pointer; }
.mf-radio__list { max-height: 180px; margin: 0; padding: 0; overflow-y: auto; list-style: none; scrollbar-width: thin; }
.mf-radio__song { display: flex; align-items: center; gap: 10px; width: 100%; padding: 7px 8px; border: 0; cursor: pointer; text-align: left; color: var(--mf-text-2); background: transparent; }
.mf-radio__song:hover, .mf-radio__song:focus-visible { color: #fff; background: var(--mf-panel-2); outline: none; }
.mf-radio__song.is-active { color: var(--mf-gold); background: rgba(242, 191, 60, .08); box-shadow: inset 3px 0 0 var(--mf-gold); }
.mf-radio__num { min-width: 18px; font-family: var(--mf-font-pixel); font-size: .8rem; color: var(--mf-muted); }
.mf-radio__yt-mark { flex: 0 0 auto; margin-left: auto; font-size: .8rem; color: #ff0033; }
.mf-radio__name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .88rem; }
@media (max-width: 767px) { .mf-radio { left: 12px; bottom: 12px; } .mf-radio__toggle { height: 44px; min-width: 44px; } }
@media (prefers-reduced-motion: reduce) { .mf-radio.is-playing .mf-radio__eq i { animation: none; height: 70%; } }

/* ---------------------------------------------------------------------
   Keyframes
   --------------------------------------------------------------------- */
@keyframes mf-blink { 50% { opacity: .25; } }
@keyframes mf-drift { from { transform: translateX(0); } to { transform: translateX(170vw); } }
@keyframes mf-fly { 0% { transform: translateX(0) translateY(0); } 50% { transform: translateX(-70vw) translateY(-18px); } 100% { transform: translateX(-140vw) translateY(6px); } }
@keyframes mf-pan { from { background-position-x: 0; } to { background-position-x: -1600px; } }
@keyframes mf-bob { 0%, 100% { translate: 0 0; } 50% { translate: 0 -6px; } }
@keyframes mf-march { from { background-position: 0 0, 0 0; } to { background-position: 11.3px 0, 0 0; } }
@keyframes mf-march-back { from { background-position: 0 0, 0 0; } to { background-position: -11.3px 0, 0 0; } }
@keyframes mf-logo-in { from { opacity: 0; transform: translateY(18px) scale(.96); } to { opacity: 1; transform: none; } }
@keyframes mf-load { from { transform: translateX(-100%); } to { transform: translateX(250%); } }

@media (prefers-reduced-motion: reduce) {
  .mf-hero__zeppelin, .mf-hero__plane, .mf-hero__ruins, .mf-tickets__red, .mf-tickets__blue, .mf-loader__logo, .mf-hero__logo img { animation: none !important; }
  .mf-hero__plane { display: none; }
  .mf-hero__prop { animation: none; }
  .mf-reveal { opacity: 1; transform: none; }
}

/* ---------------------------------------------------------------------
   Re-skin of the shared MineXON components used by every page
   --------------------------------------------------------------------- */

/* panels */
#dark-mode .card,
#dark-mode .tabs,
#dark-mode .bg-white,
#dark-mode .forum-post,
#dark-mode .bg-white.relative.overflow-hidden.rounded-xl.border.border-gray-200\/50.flex.flex-col {
  background: linear-gradient(180deg, var(--mf-panel-2), var(--mf-panel)) !important;
  border-color: var(--mf-line) !important;
  color: var(--mf-text) !important;
}
#dark-mode .card, #dark-mode .tabs { border-radius: 0 !important; box-shadow: var(--mf-shadow); }
#dark-mode .card:not(nav):not(.mf-noframe) {
  background:
    linear-gradient(var(--mf-line-2), var(--mf-line-2)) left top / 14px 2px no-repeat,
    linear-gradient(var(--mf-line-2), var(--mf-line-2)) left top / 2px 14px no-repeat,
    linear-gradient(var(--mf-line-2), var(--mf-line-2)) right bottom / 14px 2px no-repeat,
    linear-gradient(var(--mf-line-2), var(--mf-line-2)) right bottom / 2px 14px no-repeat,
    linear-gradient(180deg, var(--mf-panel-2), var(--mf-panel)) !important;
}
#dark-mode a.card:hover {
  background:
    linear-gradient(var(--mf-gold), var(--mf-gold)) left top / 14px 2px no-repeat,
    linear-gradient(var(--mf-gold), var(--mf-gold)) left top / 2px 14px no-repeat,
    linear-gradient(var(--mf-gold), var(--mf-gold)) right bottom / 14px 2px no-repeat,
    linear-gradient(var(--mf-gold), var(--mf-gold)) right bottom / 2px 14px no-repeat,
    linear-gradient(180deg, var(--mf-panel-3), var(--mf-panel)) !important;
}
#dark-mode .shadow { box-shadow: var(--mf-shadow) !important; }

/* breadcrumb bar */
#dark-mode nav.card[aria-label="Breadcrumb"] { background: rgba(12, 15, 21, .8) !important; box-shadow: inset 3px 0 0 var(--mf-gold), inset 0 0 0 1px var(--mf-line) !important; }
#dark-mode nav[aria-label="Breadcrumb"] a { font-family: var(--mf-font-hud); font-weight: 600 !important; letter-spacing: .08em; text-transform: uppercase; font-size: .75rem !important; color: var(--mf-text-2) !important; }
#dark-mode nav[aria-label="Breadcrumb"] a:hover { color: #fff !important; }
#dark-mode nav[aria-label="Breadcrumb"] .fa-home { color: var(--mf-gold); }
#dark-mode nav[aria-label="Breadcrumb"] svg { color: var(--mf-line-2) !important; }

/* text colors */
#dark-mode .text-dark, #dark-mode .text-gray-900, #dark-mode .text-gray-800, #dark-mode .text-gray-700, #dark-mode .card .text-gray-800, #dark-mode .h4.text-gray-900 { color: var(--mf-text) !important; }
#dark-mode .text-gray-600 { color: var(--mf-text-2) !important; }
#dark-mode .text-gray-500, #dark-mode .text-gray-400, #dark-mode .text-secondary { color: var(--mf-muted) !important; }
#dark-mode .text-gray-300, #dark-mode .text-gray-200 { color: var(--mf-text-2); }
#dark-mode .hover\:text-gray-700:hover, #dark-mode .hover\:text-gray-500:hover, #dark-mode .group:hover .group-hover\:text-gray-700 { color: #fff !important; }
#dark-mode .text-primary, #dark-mode .text-indigo-500, #dark-mode .text-indigo-600, #dark-mode .\!text-indigo-700 { color: #7fb0f5 !important; }
#dark-mode .text-indigo-200, #dark-mode .text-indigo-100 { color: #c9dcfa !important; }
#dark-mode .group:hover .group-hover\:text-indigo-400, #dark-mode .hover\:text-indigo-400:hover { color: var(--mf-gold) !important; }
#dark-mode label.text-gray-700, #dark-mode label.text-gray-500 { color: var(--mf-text-2) !important; font-family: var(--mf-font-hud); font-size: .78rem; letter-spacing: .08em; text-transform: uppercase; }

/* light backgrounds -> HUD tints */
#dark-mode .bg-gray-50, #dark-mode .bg-gray-50\/50, #dark-mode .bg-gray-50\/75, #dark-mode .bg-gray-100, #dark-mode .bg-gray-100\/75, #dark-mode .bg-gray-100\/50, #dark-mode .bg-gray-100\/25, #dark-mode .card .bg-gray-100\/50 { background-color: rgba(255, 255, 255, .035) !important; }
#dark-mode .bg-gray-200, #dark-mode .bg-gray-900\/10 { background-color: rgba(255, 255, 255, .06) !important; }
#dark-mode .hover\:bg-gray-100:hover, #dark-mode .hover\:bg-gray-100\/25:hover, #dark-mode tr.hover\:bg-gray-100:hover { background-color: rgba(255, 255, 255, .06) !important; }
#dark-mode .bg-indigo-50, #dark-mode .relative.z-10.bg-indigo-50.grid.w-full.gap-8 { background-color: var(--mf-bg-2) !important; }
#dark-mode .bg-indigo-100, #dark-mode .bg-indigo-100\/75, #dark-mode .bg-indigo-100\/50 { background-color: rgba(61, 127, 219, .14) !important; }
#dark-mode .hover\:bg-indigo-200:hover { background-color: rgba(61, 127, 219, .26) !important; }
#dark-mode .bg-indigo-400\/25, #dark-mode .bg-indigo-500\/25 { background-color: rgba(61, 127, 219, .18) !important; }

/* borders */
#dark-mode .border-gray-100, #dark-mode .border-gray-200, #dark-mode .border-gray-200\/50, #dark-mode .border-gray-100\/50, #dark-mode .border-gray-100\/25, #dark-mode .border-gray-200\/25, #dark-mode .border-gray-300, #dark-mode .border-indigo-100\/25, #dark-mode .divide-gray-200\/25 > * + * { border-color: var(--mf-line) !important; }

/* forms */
#dark-mode .form-control,
#dark-mode input[type="text"].form-control, #dark-mode input[type="password"].form-control, #dark-mode input[type="email"].form-control,
#dark-mode input[type="search"].form-control, #dark-mode input[type="number"].form-control, #dark-mode textarea.form-control, #dark-mode select.form-control {
  border-radius: 0 !important;
  background-color: #0b0e13 !important;
  border: 1px solid var(--mf-line-2) !important;
  color: var(--mf-text) !important;
  box-shadow: inset 0 3px 0 rgba(0, 0, 0, .35);
  font-family: var(--mf-font-body);
  transition: border-color .15s, box-shadow .15s;
}
#dark-mode .form-control::placeholder { color: #5d6778 !important; }
#dark-mode .form-control:focus { border-color: var(--mf-gold) !important; box-shadow: inset 0 3px 0 rgba(0, 0, 0, .35), 0 0 0 3px rgba(242, 191, 60, .18) !important; outline: none; }
#dark-mode input[type="checkbox"] { border-radius: 0 !important; border-color: var(--mf-line-2) !important; background-color: #0b0e13 !important; }
#dark-mode input[type="checkbox"]:checked { background-color: var(--mf-blue) !important; border-color: var(--mf-blue) !important; }

/* tabs */
#dark-mode .tabs .tabs-head { border-bottom: 1px solid var(--mf-line); }
#dark-mode .tabs .tabs-head .tabs-link, #dark-mode .tabs-links { font-family: var(--mf-font-hud); font-weight: 600; letter-spacing: .08em; text-transform: uppercase; font-size: .8rem; color: var(--mf-text-2) !important; }
#dark-mode .tabs .tabs-head .tabs-link:hover, #dark-mode .tabs .tabs-head .tabs-link.active, #dark-mode .tabs-links:hover, #dark-mode .tabs-links.active { background-color: rgba(242, 191, 60, .07) !important; color: #fff !important; }
#dark-mode .tabs .tabs-head .tabs-link:hover > div span, #dark-mode .tabs .tabs-head .tabs-link.active > div span { background-color: var(--mf-gold) !important; height: 3px; }

/* tables */
#dark-mode .table th { font-family: var(--mf-font-hud); font-size: .72rem; letter-spacing: .12em; text-transform: uppercase; color: var(--mf-text-2) !important; }
#dark-mode thead tr, #dark-mode tr.bg-indigo-400\/25 { background: linear-gradient(90deg, rgba(211, 58, 66, .18), rgba(61, 127, 219, .18)) !important; }
#dark-mode .table td { border-top: 1px solid rgba(255, 255, 255, .04); }
#dark-mode .table.table-hover tbody tr:hover { background-color: rgba(255, 255, 255, .04) !important; color: var(--mf-text) !important; }
#dark-mode .table .table-row { background-color: var(--mf-panel) !important; }
#dark-mode .table .table-body .table-row:nth-child(2n+2) { background-color: var(--mf-panel-2) !important; }

/* status pills / icon boxes (store limited, discount badges etc.) */
#dark-mode .bg-yellow-400 { background-color: var(--mf-gold) !important; color: #1d1504 !important; }
#dark-mode .bg-emerald-400, #dark-mode .bg-emerald-500 { background-color: var(--mf-green-2) !important; }
#dark-mode .bg-emerald-400\/10, #dark-mode .bg-emerald-400\/25 { background-color: rgba(98, 176, 78, .14) !important; }
#dark-mode .text-emerald-400, #dark-mode .text-emerald-500, #dark-mode .text-success { color: #86d06f !important; }
#dark-mode .text-warning, #dark-mode .text-yellow-500 { color: var(--mf-gold) !important; }
#dark-mode .text-danger, #dark-mode .text-red-500, #dark-mode .text-red-400 { color: #f0676d !important; }

/* category bars (card game page) */
#dark-mode section.bg-indigo-100\/75 { background: #0b0e13 !important; border-bottom: 1px solid var(--mf-line); }
#dark-mode section.bg-indigo-100\/75 > .container > a { font-family: var(--mf-font-hud); text-transform: uppercase; letter-spacing: .08em; }
#dark-mode section.bg-indigo-100\/75 .bg-indigo-500, #dark-mode .hover\:bg-indigo-500:hover { background: linear-gradient(180deg, rgba(61, 127, 219, .55), rgba(61, 127, 219, .25)) !important; box-shadow: inset 0 -3px 0 var(--mf-gold); }

/* login / register / recovery */
.mf-page-login main > .relative.min-h-screen, .mf-page-register main > .relative.min-h-screen, .mf-page-recovery main > .relative.min-h-screen { background: #07090d; }
#dark-mode .relative.z-10.bg-indigo-50.grid.w-full.gap-8 { background: linear-gradient(135deg, rgba(211, 58, 66, .12), var(--mf-bg-2) 40%, var(--mf-bg-2) 60%, rgba(61, 127, 219, .12)) !important; box-shadow: 0 0 0 1px var(--mf-line), 0 40px 80px -30px #000; }
#dark-mode .rounded-r-2xl.rounded-l-3xl.bg-white.flex.flex-col { background: linear-gradient(180deg, var(--mf-panel-2), var(--mf-panel)) !important; box-shadow: inset 4px 0 0 var(--mf-gold); }
#dark-mode .rounded-r-2xl.rounded-l-3xl.bg-white.flex.flex-col h1 { font-family: var(--mf-font-hud); text-transform: uppercase; letter-spacing: .04em; }
#dark-mode .cursor-pointer.group.rounded-xl.bg-white.py-4.px-6.flex.justify-between.items-center { background: rgba(255, 255, 255, .03) !important; box-shadow: inset 0 0 0 1px var(--mf-line); }
#dark-mode .cursor-pointer.group.rounded-xl.bg-white.py-4.px-6.flex.justify-between.items-center:hover { box-shadow: inset 0 0 0 1px var(--mf-gold), inset 3px 0 0 var(--mf-gold); }
#dark-mode .backdrop-blur-sm.bg-indigo-500\/40 { background: linear-gradient(90deg, rgba(211, 58, 66, .3), rgba(9, 12, 17, .75), rgba(61, 127, 219, .3)) !important; }

#dark-mode img.mf-auth-logo { width: 220px; max-width: 100%; height: auto; }

/* 404 / maintenance */
#dark-mode .text-5xl.font-extrabold.text-indigo-600 { font-family: var(--mf-font-pixel); color: var(--mf-gold) !important; }

/* alerts produced by the core alert() helper (Tailwind tints) */
#dark-mode .bg-red-500\/25 { background-color: rgba(211, 58, 66, .14) !important; box-shadow: inset 3px 0 0 var(--mf-red); color: #f28b90 !important; }
#dark-mode .bg-yellow-500\/25, #dark-mode .bg-yellow-400\/25 { background-color: rgba(242, 191, 60, .12) !important; box-shadow: inset 3px 0 0 var(--mf-gold); }
#dark-mode .bg-emerald-500\/25, #dark-mode .bg-green-500\/25 { background-color: rgba(98, 176, 78, .12) !important; box-shadow: inset 3px 0 0 var(--mf-green); }
#dark-mode .bg-blue-500\/25, #dark-mode .bg-indigo-500\/10 { background-color: rgba(61, 127, 219, .12) !important; box-shadow: inset 3px 0 0 var(--mf-blue); }

/* sweetalert2 */
#dark-mode .swal2-popup { background: linear-gradient(180deg, var(--mf-panel-2), var(--mf-panel)) !important; border: 1px solid var(--mf-line) !important; border-radius: 0 !important; box-shadow: 0 30px 80px rgba(0, 0, 0, .7) !important; }
#dark-mode .swal2-popup::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: var(--mf-team); }
#dark-mode .swal2-title { font-family: var(--mf-font-hud) !important; text-transform: uppercase; letter-spacing: .04em; }
#dark-mode .swal2-content, #dark-mode .swal2-html-container { color: var(--mf-text-2) !important; }
#dark-mode .swal2-input, #dark-mode .swal2-textarea, #dark-mode .swal2-select { border-radius: 0 !important; background: #0b0e13 !important; border-color: var(--mf-line-2) !important; color: var(--mf-text) !important; }

/* select2 / custom select */
#dark-mode .select2-container--default .select2-selection--single, #dark-mode .select2-container--default .select2-selection--multiple { border-radius: 0 !important; background-color: #0b0e13 !important; border: 1px solid var(--mf-line-2) !important; }
#dark-mode .select2-container .select2-dropdown, #dark-mode .select2-container .select2-results__option { background-color: var(--mf-panel-2) !important; }
#dark-mode .select2-container--default .select2-results__option--highlighted[aria-selected] { background-color: var(--mf-blue-2) !important; }

/* ---------------------------------------------------------------------
   Store
   --------------------------------------------------------------------- */
.mf-hero--store { min-height: 270px; }
.mf-hero--store .mf-hero__content { padding-bottom: 74px; }
.mf-storehead__lead { max-width: 520px; margin-top: 8px; font-size: 1.02rem; line-height: 1.5; color: var(--mf-text-2); text-shadow: 0 2px 0 rgba(0, 0, 0, .6); }

.mf-wallet {
  display: flex; flex-direction: column; gap: 10px; min-width: 320px; padding: 16px 18px;
  background: rgba(9, 12, 17, .8); box-shadow: inset 0 0 0 1px var(--mf-line), inset 4px 0 0 var(--mf-gold);
  -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
}
.mf-wallet__label { font-family: var(--mf-font-hud); font-size: .66rem; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: var(--mf-muted); }
.mf-wallet__amount { display: flex; align-items: baseline; gap: 10px; line-height: 1; font-family: var(--mf-font-pixel); font-size: 2rem; color: var(--mf-gold); }
.mf-wallet__amount i { font-size: 1.1rem; }
.mf-wallet__amount small { font-family: var(--mf-font-hud); font-size: .8rem; font-weight: 700; color: var(--mf-text-2); }
.mf-wallet__actions { display: flex; flex-wrap: wrap; gap: 8px; }
.mf-wallet__actions .btn { flex: 1 1 auto; white-space: nowrap; }
@media (max-width: 767px) { .mf-wallet { width: 100%; min-width: 0; } }

.mf-store { position: relative; padding: 34px 0 80px; }
.mf-store-block { margin-top: 40px; }

/* server tabs */
.mf-servertabs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 14px; }
.mf-servertab {
  display: inline-flex; align-items: center; gap: 9px; padding: 10px 16px;
  font-family: var(--mf-font-hud); font-size: .78rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
  color: var(--mf-text-2); background: var(--mf-panel-2); box-shadow: inset 0 0 0 1px var(--mf-line);
  transition: color .15s, box-shadow .15s, background-color .15s;
}
.mf-servertab i { color: var(--mf-muted); }
.mf-servertab:hover { color: #fff; box-shadow: inset 0 0 0 1px var(--mf-line-2); }
.mf-servertab.is-active { color: #fff; background: rgba(61, 127, 219, .16); box-shadow: inset 0 0 0 1px var(--mf-blue), inset 0 -3px 0 var(--mf-gold); }
.mf-servertab.is-active i { color: var(--mf-gold); }

/* category cards */
.mf-catbar { position: relative; padding: 14px 10px; background: rgba(9, 12, 17, .72); box-shadow: inset 0 0 0 1px var(--mf-line); }
.mf-catbar::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 2px; background: var(--mf-team); }
.mf-catbar__track { display: flex; gap: 12px; padding: 6px 4px 4px; overflow-x: auto; overflow-y: hidden; overscroll-behavior-x: contain; scrollbar-width: none; }
.mf-catbar__track::-webkit-scrollbar { display: none; }
.mf-catbar__track.has-more-right { -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 40px), transparent); mask-image: linear-gradient(90deg, #000 calc(100% - 40px), transparent); }
.mf-catbar__track.has-more-left { -webkit-mask-image: linear-gradient(90deg, transparent, #000 40px); mask-image: linear-gradient(90deg, transparent, #000 40px); }
.mf-catbar__track.has-more-left.has-more-right { -webkit-mask-image: linear-gradient(90deg, transparent, #000 40px, #000 calc(100% - 40px), transparent); mask-image: linear-gradient(90deg, transparent, #000 40px, #000 calc(100% - 40px), transparent); }
.mf-cat {
  --cat: var(--mf-blue);
  flex: 0 0 auto; width: 148px; display: flex; flex-direction: column; align-items: center; gap: 9px; padding: 16px 10px 14px; text-align: center;
  color: var(--mf-text-2); background: linear-gradient(180deg, var(--mf-panel-2), var(--mf-panel));
  box-shadow: inset 0 0 0 1px var(--mf-line), inset 0 -3px 0 var(--cat);
  transition: transform .15s steps(3), box-shadow .15s, background-color .15s, color .15s;
}
.mf-cat:hover { transform: translateY(-3px); color: #fff; box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--cat) 60%, transparent), inset 0 -3px 0 var(--cat); }
.mf-cat.is-active {
  color: #fff;
  background: linear-gradient(180deg, color-mix(in srgb, var(--cat) 32%, var(--mf-panel-2)), color-mix(in srgb, var(--cat) 12%, var(--mf-panel)));
  box-shadow: inset 0 0 0 2px var(--cat), 0 0 26px -8px var(--cat);
}
.mf-cat__icon {
  display: flex; align-items: center; justify-content: center; width: 52px; height: 52px; font-size: 1.3rem;
  color: var(--cat); background: color-mix(in srgb, var(--cat) 20%, #0b0e13); box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--cat) 55%, transparent);
  clip-path: var(--mf-clip); --mf-step: 3px;
}
.mf-cat.is-active .mf-cat__icon { color: #fff; background: var(--cat); }
.mf-cat__icon img { width: 36px; height: 36px; object-fit: contain; image-rendering: pixelated; }
.mf-cat__name { font-family: var(--mf-font-hud); font-size: .8rem; font-weight: 700; line-height: 1.2; letter-spacing: .06em; text-transform: uppercase; }
.mf-cat__count { font-family: var(--mf-font-pixel); font-size: .74rem; color: var(--mf-muted); }
.mf-cat.is-active .mf-cat__count { color: rgba(255, 255, 255, .75); }

/* rank cards */
.mf-ranks { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 14px; margin-bottom: 26px; }
.mf-rank {
  --rank: var(--mf-blue);
  position: relative; display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 30px 14px 14px; text-align: center;
  background: linear-gradient(180deg, color-mix(in srgb, var(--rank) 22%, var(--mf-panel-2)) 0%, var(--mf-panel) 72%);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--rank) 45%, var(--mf-line)), inset 0 3px 0 var(--rank), var(--mf-shadow);
  transition: transform .2s steps(4), box-shadow .2s;
}
.mf-rank:hover { transform: translateY(-4px); box-shadow: inset 0 0 0 1px var(--rank), inset 0 3px 0 var(--rank), 0 26px 40px -20px color-mix(in srgb, var(--rank) 55%, #000); }
.mf-rank.is-soldout { filter: grayscale(.65); }
.mf-rank__ribbon {
  position: absolute; z-index: 2; top: -9px; right: 12px; padding: 4px 10px;
  font-family: var(--mf-font-hud); font-size: .64rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
  color: #fff; background: var(--mf-red); box-shadow: inset 0 -3px 0 rgba(0, 0, 0, .25), 0 4px 10px rgba(0, 0, 0, .35);
}
.mf-rank__off { position: absolute; top: 10px; left: 10px; padding: 3px 7px; font-family: var(--mf-font-pixel); font-size: .78rem; color: #fff; background: var(--mf-green-2); }
.mf-rank__media { display: flex; align-items: center; justify-content: center; height: 104px; }
.mf-rank__media img { width: 100px; height: 100px; object-fit: contain; image-rendering: pixelated; filter: drop-shadow(0 10px 14px color-mix(in srgb, var(--rank) 50%, transparent)); transition: transform .3s steps(5); }
.mf-rank:hover .mf-rank__media img { transform: translateY(-5px) scale(1.05); }
.mf-rank__name { font-family: var(--mf-font-hud); font-size: 1.2rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: color-mix(in srgb, var(--rank) 45%, #fff); text-shadow: 0 2px 0 rgba(0, 0, 0, .55); }
.mf-rank__time { font-family: var(--mf-font-hud); font-size: .68rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--mf-muted); }
.mf-rank__price { display: flex; flex-wrap: wrap; justify-content: center; align-items: baseline; gap: 2px 7px; margin-top: 2px; }
.mf-rank__price b { font-family: var(--mf-font-pixel); font-size: 1.65rem; line-height: 1; color: #fff; }
.mf-rank__price small { font-family: var(--mf-font-hud); font-weight: 700; color: var(--mf-text-2); }
.mf-rank__price del, .mf-product__price del, .mf-buybox__price del, .mf-compare__price del { font-family: var(--mf-font-pixel); color: var(--mf-muted); text-decoration-color: var(--mf-red); text-decoration-thickness: 2px; }
.mf-rank__stock { font-family: var(--mf-font-hud); font-size: .66rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--mf-gold); }
.mf-rank__actions, .mf-product__actions { display: flex; gap: 6px; width: 100%; margin-top: auto; padding-top: 6px; }
.mf-rank__actions .btn, .mf-product__actions .btn { flex: 1; min-width: 0; white-space: nowrap; }
.mf-rank__actions .btn.btn-sm, .mf-product__actions .btn.btn-sm { padding-left: .5rem !important; padding-right: .5rem !important; }

.btn.mf-btn-rank, #dark-mode .btn.mf-btn-rank {
  background: linear-gradient(180deg, color-mix(in srgb, var(--rank, var(--mf-blue)) 72%, #fff) 0%, var(--rank, var(--mf-blue)) 50%, color-mix(in srgb, var(--rank, var(--mf-blue)) 70%, #000) 100%) !important;
  color: #fff !important;
}
.mf-sqbtn {
  display: inline-flex; flex: none; align-items: center; justify-content: center; width: 40px; min-height: 34px;
  color: var(--mf-text); background: var(--mf-panel-3); border: 0; cursor: pointer;
  box-shadow: inset 0 2px 0 rgba(255, 255, 255, .08), inset 0 -3px 0 rgba(0, 0, 0, .35); clip-path: var(--mf-clip); --mf-step: 3px;
  transition: background-color .15s, color .15s;
}
.mf-sqbtn:hover { color: #fff; background: var(--rank, var(--mf-blue)); }

/* comparison table */
.mf-compare { position: relative; background: var(--mf-panel); box-shadow: inset 0 0 0 1px var(--mf-line), var(--mf-shadow); }
.mf-compare::before { content: ""; position: absolute; z-index: 3; left: 0; right: 0; top: 0; height: 2px; background: var(--mf-team); }
.mf-compare__scroll { overflow-x: auto; }
.mf-compare__table { width: 100%; border-collapse: separate; border-spacing: 0; }
.mf-compare__table th, .mf-compare__table td { padding: 13px 16px; text-align: center; vertical-align: middle; border-bottom: 1px solid rgba(255, 255, 255, .05); }
.mf-compare__table td {
  min-width: 140px; font-family: var(--mf-font-hud); font-size: .85rem; font-weight: 600; line-height: 1.45;
  color: color-mix(in srgb, var(--rank) 55%, #fff); background: color-mix(in srgb, var(--rank) 5%, transparent);
  transition: background-color .12s;
}
.mf-compare__table thead th { padding: 18px 14px 16px; background: var(--mf-panel-2); }
.mf-compare__table tbody th, .mf-compare__corner {
  position: sticky; left: 0; z-index: 2; min-width: 190px; text-align: left !important;
  font-family: var(--mf-font-hud); font-size: .82rem; font-weight: 600; color: var(--mf-text);
  background: #12161e !important; box-shadow: 1px 0 0 var(--mf-line);
}
.mf-compare__corner { font-size: .66rem !important; font-weight: 700 !important; letter-spacing: .18em; text-transform: uppercase; color: var(--mf-muted) !important; }
.mf-compare__table tbody tr:hover td { background: color-mix(in srgb, var(--rank) 13%, transparent); }
.mf-compare__table tbody tr:hover th { color: #fff; box-shadow: inset 3px 0 0 var(--mf-gold), 1px 0 0 var(--mf-line); }
.mf-compare__table .is-col { background: color-mix(in srgb, var(--rank) 11%, transparent); }
.mf-compare__table thead th.is-col { background: color-mix(in srgb, var(--rank) 20%, var(--mf-panel-2)); }
.mf-compare__chip {
  display: inline-block; min-width: 116px; padding: 8px 14px;
  font-family: var(--mf-font-hud); font-size: .8rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
  color: #fff; background: color-mix(in srgb, var(--rank) 26%, #0b0e13); box-shadow: inset 0 0 0 2px var(--rank); text-shadow: 0 2px 0 rgba(0, 0, 0, .5);
}
.mf-compare__price b { font-family: var(--mf-font-pixel); font-size: 1.15rem; color: #fff; }
.mf-compare__price td { white-space: nowrap; }
.mf-compare__buy td { padding: 14px 12px 18px; }
.mf-compare__buy td .btn { width: 100%; }
.mf-yes, .mf-no { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; font-size: .74rem; box-shadow: inset 0 -3px 0 rgba(0, 0, 0, .25); }
.mf-yes { color: #fff; background: var(--mf-green-2); }
.mf-no { color: #6e7888; background: rgba(255, 255, 255, .07); }

/* product grid */
.mf-store-toolbar { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 22px; }
.mf-store-toolbar .mf-heading { flex: 1 1 280px; margin-bottom: 0; }
.mf-filter { display: flex; flex: 0 1 460px; gap: 8px; }
.mf-filter__search { position: relative; flex: 1; min-width: 0; }
.mf-filter__search i { position: absolute; z-index: 1; left: 14px; top: 50%; transform: translateY(-50%); font-size: .85rem; color: var(--mf-muted); pointer-events: none; }
#dark-mode .mf-filter__search .form-control { width: 100%; padding-left: 40px; }
.mf-filter__sort { flex: 0 0 150px; cursor: pointer; }
@media (max-width: 560px) { .mf-filter { flex-basis: 100%; flex-wrap: wrap; } .mf-filter__sort { flex-basis: 100%; } }

.mf-products { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 18px; }
.mf-products .no-product-wrapper { grid-column: 1 / -1; }
.mf-product {
  --rank: #56657d;
  position: relative; display: flex; flex-direction: column; min-width: 0;
  background: linear-gradient(180deg, color-mix(in srgb, var(--rank) 28%, var(--mf-panel-2)) 0%, var(--mf-panel) 64%);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--rank) 35%, var(--mf-line)), var(--mf-shadow);
  transition: transform .2s steps(4), box-shadow .2s, opacity .2s;
}
#dark-mode .mf-product.filter-item { background-color: transparent !important; }
.mf-product.hidden { display: none !important; }
.mf-product.filtering { opacity: .55; }
.mf-product:hover { transform: translateY(-4px); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--rank) 70%, #fff), 0 26px 40px -20px rgba(0, 0, 0, .9); }
.mf-product.is-soldout { filter: grayscale(.7); }
.mf-product__media { position: relative; display: flex; align-items: center; justify-content: center; height: 184px; background: radial-gradient(55% 55% at 50% 58%, color-mix(in srgb, var(--rank) 40%, transparent), transparent 72%); }
.mf-product__img { width: 70%; height: 132px; object-fit: contain; image-rendering: pixelated; filter: drop-shadow(0 12px 12px rgba(0, 0, 0, .5)); transition: transform .3s steps(5); }
.mf-product:hover .mf-product__img { transform: translateY(-6px) rotate(-3deg); }
.mf-product__badges { position: absolute; top: 10px; left: 10px; right: 10px; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px; pointer-events: none; }
.mf-badge {
  display: inline-block; padding: 4px 8px; font-family: var(--mf-font-hud); font-size: .64rem; font-weight: 700; line-height: 1.1; letter-spacing: .08em; text-transform: uppercase;
  color: #fff; background: var(--mf-panel-3); box-shadow: inset 0 -2px 0 rgba(0, 0, 0, .25);
}
.mf-badge--green { background: var(--mf-green-2); }
.mf-badge--red { background: var(--mf-red-2); }
.mf-badge--gold { color: #1d1504; background: var(--mf-gold); }
.mf-badge .product-count-sticker-text-count { font-family: var(--mf-font-pixel); }
.mf-product__body { display: flex; flex: 1; flex-direction: column; align-items: center; gap: 6px; padding: 2px 14px 14px; text-align: center; }
.mf-product__name { font-family: var(--mf-font-hud); font-size: 1.02rem; font-weight: 700; line-height: 1.25; letter-spacing: .04em; text-transform: uppercase; color: #fff; }
.mf-product__name:hover { color: var(--mf-gold); }
.mf-product__price { display: flex; flex-wrap: wrap; justify-content: center; align-items: baseline; gap: 2px 7px; }
.mf-product__price b { font-family: var(--mf-font-pixel); font-size: 1.45rem; line-height: 1; color: var(--mf-gold); }
.mf-product__price small { font-family: var(--mf-font-hud); font-weight: 700; color: var(--mf-text-2); }
.mf-product__time { font-family: var(--mf-font-hud); font-size: .66rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--mf-muted); }

/* server list */
.mf-servers { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 18px; }
.mf-server { position: relative; display: flex; flex-direction: column; justify-content: flex-end; min-height: 220px; padding: 18px; overflow: hidden; isolation: isolate; box-shadow: inset 0 0 0 1px var(--mf-line), var(--mf-shadow); }
.mf-server__img { position: absolute; inset: 0; z-index: -2; background-size: cover; background-position: center; filter: saturate(.85) brightness(.65); transition: transform .5s ease, filter .3s; }
.mf-server::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, transparent 20%, rgba(9, 12, 17, .95) 100%); }
.mf-server:hover .mf-server__img { transform: scale(1.06); filter: saturate(1) brightness(.8); }
.mf-server__body { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; }
.mf-server__text { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.mf-server__name { font-family: var(--mf-font-hud); font-size: 1.5rem; font-weight: 700; line-height: 1.1; text-transform: uppercase; color: #fff; }
.mf-server__text small { color: var(--mf-text-2); }

/* product detail */
.mf-backlink { display: inline-flex; align-items: center; gap: 10px; margin: 30px 0 18px; font-family: var(--mf-font-hud); font-size: .8rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--mf-text-2); }
.mf-backlink i { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; color: var(--mf-gold); background: var(--mf-panel-2); box-shadow: inset 0 0 0 1px var(--mf-line); transition: transform .15s steps(2); }
.mf-backlink:hover { color: #fff; }
.mf-backlink:hover i { transform: translateX(-3px); }
.mf-pdp { --rank: var(--mf-blue); display: grid; gap: 22px; }
@media (min-width: 1024px) { .mf-pdp { grid-template-columns: minmax(0, 1fr) 370px; align-items: start; } }
.mf-pdp__main { display: flex; flex-direction: column; gap: 18px; min-width: 0; }
.mf-pdp__media {
  position: relative; display: flex; align-items: center; justify-content: center; min-height: 320px; overflow: hidden;
  background: radial-gradient(55% 65% at 50% 55%, color-mix(in srgb, var(--rank) 34%, transparent), transparent 70%), linear-gradient(180deg, var(--mf-panel-2), var(--mf-panel));
  box-shadow: inset 0 0 0 1px var(--mf-line), var(--mf-shadow);
}
.mf-pdp__img { width: min(240px, 60%); height: auto; image-rendering: pixelated; filter: drop-shadow(0 18px 18px rgba(0, 0, 0, .55)); animation: mf-bob 4s ease-in-out infinite; }
.mf-pdp__posters { width: 100%; }
.mf-pdp__posters .owl-stage, .mf-pdp__posters .owl-item { min-height: 0 !important; }
.mf-pdp__posters .owl-item img { width: 100% !important; height: auto; }
.mf-pdp__card { padding: 20px 22px; background: linear-gradient(180deg, var(--mf-panel-2), var(--mf-panel)); box-shadow: inset 0 0 0 1px var(--mf-line), var(--mf-shadow); }
.mf-pdp__h { display: flex; align-items: center; gap: 9px; margin-bottom: 14px; font-family: var(--mf-font-hud) !important; font-size: .78rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--mf-gold); }
.mf-featurelist { display: grid; gap: 6px; }
@media (min-width: 700px) { .mf-featurelist { grid-template-columns: 1fr 1fr; } }
.mf-featurelist li { display: flex; align-items: center; gap: 10px; padding: 9px 12px; background: rgba(255, 255, 255, .03); box-shadow: inset 2px 0 0 var(--rank); }
.mf-featurelist li.is-no { box-shadow: inset 2px 0 0 var(--mf-line-2); color: var(--mf-muted); }
.mf-featurelist__label { flex: 1; font-size: .92rem; }
.mf-featurelist__value { font-family: var(--mf-font-hud); font-size: .85rem; text-align: right; color: color-mix(in srgb, var(--rank) 50%, #fff); }
.mf-prose { color: var(--mf-text-2); line-height: 1.7; overflow-wrap: anywhere; }
.mf-prose > * + * { margin-top: .8em; }
.mf-prose h1, .mf-prose h2, .mf-prose h3, .mf-prose h4, .mf-prose strong, .mf-prose b { color: #fff; }
.mf-prose a { color: #8fbaf5; text-decoration: underline; }
.mf-prose img { max-width: 100%; height: auto; }
.mf-prose ul, .mf-prose ol { display: grid; gap: 6px; }
.mf-prose li { position: relative; padding: 7px 12px 7px 36px; background: rgba(255, 255, 255, .03); box-shadow: inset 2px 0 0 var(--rank); }
.mf-prose li::before { content: "\f00c"; position: absolute; left: 12px; top: 50%; transform: translateY(-50%); font-family: "Font Awesome 6 Free"; font-weight: 900; font-size: .72rem; color: var(--mf-green); }

.mf-pdp__side { display: flex; flex-direction: column; gap: 14px; }
@media (min-width: 1024px) { .mf-pdp__side { position: sticky; top: 126px; } }
@media (min-width: 1200px) { .mf-pdp__side { top: 88px; } }
.mf-buybox {
  position: relative; padding: 20px;
  background: linear-gradient(180deg, color-mix(in srgb, var(--rank) 20%, var(--mf-panel-2)) 0%, var(--mf-panel) 62%);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--rank) 42%, var(--mf-line)), inset 0 3px 0 var(--rank), var(--mf-shadow);
}
.mf-buybox__head { display: flex; align-items: center; gap: 14px; }
.mf-buybox__head img { flex: none; width: 64px; height: 64px; object-fit: contain; image-rendering: pixelated; filter: drop-shadow(0 8px 10px rgba(0, 0, 0, .45)); }
.mf-buybox__title { margin-top: 4px; font-family: var(--mf-font-hud) !important; font-size: 1.45rem; font-weight: 700; line-height: 1.1; text-transform: uppercase; color: #fff; }
.mf-buybox__price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 10px; margin-top: 16px; padding: 14px 0; border-top: 1px dashed var(--mf-line-2); border-bottom: 1px dashed var(--mf-line-2); }
.mf-buybox__price b { font-family: var(--mf-font-pixel); font-size: 2.2rem; line-height: 1; color: #fff; }
.mf-buybox__price small { font-family: var(--mf-font-hud); font-weight: 700; color: var(--mf-text-2); }
.mf-buybox__facts { display: grid; gap: 9px; margin: 14px 0 16px; }
.mf-buybox__facts li { display: flex; align-items: center; justify-content: space-between; gap: 12px; font-size: .9rem; color: var(--mf-text-2); }
.mf-buybox__facts li i { width: 18px; color: var(--mf-muted); }
.mf-buybox__facts li b { font-family: var(--mf-font-hud); color: #fff; text-align: right; }
.mf-buybox__actions { display: grid; gap: 8px; }
.mf-pdp__stats { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding: 16px; text-align: center; background: var(--mf-panel); box-shadow: inset 0 0 0 1px var(--mf-line); }
.mf-pdp__stats .btn { grid-column: 1 / -1; }
.mf-stat b { display: block; font-family: var(--mf-font-pixel); font-size: 1.8rem; line-height: 1.1; color: #fff; }
.mf-stat small { font-family: var(--mf-font-hud); font-size: .66rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--mf-muted); }
.mf-stat__stars { color: var(--mf-gold) !important; letter-spacing: .05em !important; }
.mf-pdp__info { display: grid; grid-template-columns: auto 1fr; gap: 10px 16px; padding: 16px 18px; background: var(--mf-panel); box-shadow: inset 0 0 0 1px var(--mf-line); }
.mf-pdp__info dt { font-family: var(--mf-font-hud); font-size: .7rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--mf-muted); }
.mf-pdp__info dd { margin: 0; text-align: right; font-size: .9rem; color: #fff; }
.mf-pdp__info dd a:hover { color: var(--mf-gold); }

/* ---------------------------------------------------------------------
   08 · Inner pages: layout, forms, cart, credit, news, vote, soldier profile
   --------------------------------------------------------------------- */
.mf-page { position: relative; padding: 40px 0 80px; }
.mf-layout { display: grid; gap: 24px; align-items: start; }
@media (min-width: 1024px) {
  .mf-layout { grid-template-columns: minmax(0, 1fr) 360px; gap: 28px; }
  .mf-layout--flip { grid-template-columns: 340px minmax(0, 1fr); }
  .mf-layout--flip > .mf-layout__side { order: -1; }
}
.mf-layout__main, .mf-layout__side { display: flex; flex-direction: column; gap: 22px; min-width: 0; }
.mf-layout__main > .mf-backlink { margin: 0; align-self: flex-start; }

/* panels */
.mf-panel__body { padding: 18px 20px 20px; }
.mf-panel__body > * + * { margin-top: 14px; }
.mf-panel__meta { flex: none; font-family: var(--mf-font-hud); font-size: .68rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--mf-muted); white-space: nowrap; }
.mf-panel__icon--red { background: var(--mf-red-2); }
.mf-panel__icon--green { background: var(--mf-green-2); }

/* forms */
.mf-form { display: grid; gap: 16px; }
.mf-panel__body > .mf-form { margin-top: 18px; }
.mf-form__row { display: grid; gap: 16px; }
@media (min-width: 560px) { .mf-form__row { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.mf-layout__side .mf-form__row { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.mf-field { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.mf-field__label { font-family: var(--mf-font-hud); font-size: .68rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--mf-text-2); }
.mf-field__hint { margin: 0; font-size: .86rem; line-height: 1.5; color: var(--mf-muted); }
#dark-mode .mf-form .form-control, #dark-mode .mf-field .form-control { width: 100%; padding: 11px 14px; font-size: .95rem; }
#dark-mode .mf-form textarea.form-control { min-height: 110px; resize: vertical; }
#dark-mode .form-control[readonly] { color: var(--mf-muted) !important; cursor: default; }
.mf-form__section { display: flex; align-items: center; gap: 12px; margin-top: 4px; font-family: var(--mf-font-hud); font-size: .7rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--mf-gold); }
.mf-form__section::after { content: ""; flex: 1; height: 1px; background: var(--mf-line); }
.mf-form__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.mf-payframe:empty { display: none; }
.mf-payframe iframe { width: 100%; min-height: 620px; border: 0; background: #fff; }

.mf-check { position: relative; display: flex; align-items: flex-start; gap: 11px; cursor: pointer; font-size: .9rem; line-height: 1.45; color: var(--mf-text-2); }
.mf-check input { position: absolute; top: 0; left: 0; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.mf-check__box {
  flex: none; display: flex; align-items: center; justify-content: center; width: 22px; height: 22px; margin-top: -1px;
  font-size: .72rem; color: transparent; background: #0b0e13; box-shadow: inset 0 0 0 2px var(--mf-line-2), inset 0 3px 0 rgba(0, 0, 0, .35);
  transition: background-color .12s, box-shadow .12s, color .12s;
}
.mf-check:hover .mf-check__box { box-shadow: inset 0 0 0 2px var(--mf-text-2), inset 0 3px 0 rgba(0, 0, 0, .35); }
.mf-check input:checked + .mf-check__box { color: #fff; background: var(--mf-green-2); box-shadow: inset 0 0 0 2px var(--mf-green), inset 0 -3px 0 rgba(0, 0, 0, .25); }
.mf-check input:focus-visible + .mf-check__box { outline: 2px solid var(--mf-gold); outline-offset: 2px; }
.mf-check a { color: #8fbaf5; text-decoration: underline; }

/* radio cards (payment methods, credit packages) */
.mf-choice { display: grid; gap: 10px; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); }
.mf-choice--list { grid-template-columns: minmax(0, 1fr); gap: 8px; }
.mf-choice__item { position: relative; display: block; min-width: 0; cursor: pointer; }
.mf-choice__item input { position: absolute; top: 0; left: 0; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.mf-choice__box {
  position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; min-height: 92px; padding: 16px 12px; text-align: center;
  background: linear-gradient(180deg, var(--mf-panel-3), var(--mf-panel-2)); box-shadow: inset 0 0 0 1px var(--mf-line-2), inset 0 -3px 0 rgba(0, 0, 0, .3);
  transition: box-shadow .12s, background-color .12s;
}
.mf-choice__item:hover .mf-choice__box { box-shadow: inset 0 0 0 1px var(--mf-text-2), inset 0 -3px 0 rgba(0, 0, 0, .3); }
.mf-choice__item input:checked + .mf-choice__box { background: linear-gradient(180deg, rgba(242, 191, 60, .17), rgba(242, 191, 60, .05)); box-shadow: inset 0 0 0 2px var(--mf-gold), inset 0 -3px 0 rgba(0, 0, 0, .3); }
.mf-choice__item input:checked + .mf-choice__box::after {
  content: "\f00c"; position: absolute; top: 6px; right: 6px; display: flex; align-items: center; justify-content: center; width: 18px; height: 18px;
  font-family: "Font Awesome 6 Free"; font-weight: 900; font-size: .58rem; color: #1d1504; background: var(--mf-gold);
}
.mf-choice__item input:focus-visible + .mf-choice__box { outline: 2px solid var(--mf-gold); outline-offset: 2px; }
.mf-choice__icon { font-size: 1.15rem; color: var(--mf-muted); }
.mf-choice__item input:checked + .mf-choice__box .mf-choice__icon { color: var(--mf-gold); }
.mf-choice__title { font-family: var(--mf-font-hud); font-size: .95rem; font-weight: 700; line-height: 1.2; color: #fff; overflow-wrap: anywhere; }
.mf-choice__sub { font-family: var(--mf-font-pixel); font-size: .95rem; color: var(--mf-gold); }
.mf-choice__tag { padding: 2px 7px; font-family: var(--mf-font-hud); font-size: .6rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #fff; background: var(--mf-green-2); }
.mf-choice--list .mf-choice__box { flex-direction: row; justify-content: flex-start; gap: 12px; min-height: 0; padding: 12px 40px 12px 14px; text-align: left; }
.mf-choice--list .mf-choice__icon { width: 20px; text-align: center; }
.mf-choice--list .mf-choice__title { font-size: .86rem; }
.mf-choice--list .mf-choice__tag { margin-left: auto; }
.mf-choice--list .mf-choice__item input:checked + .mf-choice__box::after { top: 50%; right: 12px; transform: translateY(-50%); }

/* empty states, status chips, results */
.mf-empty { display: flex; flex-direction: column; align-items: center; gap: 12px; padding: 56px 20px; text-align: center; }
.mf-empty__icon { display: flex; align-items: center; justify-content: center; width: 76px; height: 76px; margin-bottom: 4px; font-size: 1.8rem; color: var(--mf-muted); background: rgba(255, 255, 255, .04); box-shadow: inset 0 0 0 1px var(--mf-line-2); clip-path: var(--mf-clip); }
.mf-empty__title { font-family: var(--mf-font-hud) !important; font-size: 1.5rem; font-weight: 700; text-transform: uppercase; color: #fff; }
.mf-empty__text { max-width: 440px; margin-bottom: 6px; color: var(--mf-text-2); }
.mf-empty--sm { padding: 30px 18px; }
.mf-empty--sm .mf-empty__icon { width: 56px; height: 56px; font-size: 1.3rem; }

.mf-status { display: inline-flex; align-items: center; gap: 6px; padding: 4px 9px; font-family: var(--mf-font-hud); font-size: .66rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; color: var(--mf-text-2); background: rgba(255, 255, 255, .06); box-shadow: inset 2px 0 0 var(--mf-line-2); }
.mf-status--ok { color: #9ad983; background: rgba(98, 176, 78, .12); box-shadow: inset 2px 0 0 var(--mf-green); }
.mf-status--bad { color: #f28b90; background: rgba(211, 58, 66, .14); box-shadow: inset 2px 0 0 var(--mf-red); }
.mf-status--warn { color: var(--mf-gold); background: rgba(242, 191, 60, .12); box-shadow: inset 2px 0 0 var(--mf-gold); }
.mf-status--info { color: #9cc2f7; background: rgba(61, 127, 219, .14); box-shadow: inset 2px 0 0 var(--mf-blue); }

.mf-result { display: flex; flex-direction: column; align-items: center; gap: 14px; padding: 48px 22px 40px; text-align: center; }
.mf-result__icon { display: flex; align-items: center; justify-content: center; width: 88px; height: 88px; margin-bottom: 4px; font-size: 2.3rem; color: #fff; clip-path: var(--mf-clip); --mf-step: 5px; box-shadow: inset 0 -5px 0 rgba(0, 0, 0, .28), inset 0 3px 0 rgba(255, 255, 255, .2); }
.mf-result--ok .mf-result__icon { background: var(--mf-green-2); }
.mf-result--fail .mf-result__icon { background: var(--mf-red-2); }
.mf-result__title { font-family: var(--mf-font-hud) !important; font-size: clamp(1.4rem, 3vw, 1.9rem); font-weight: 700; line-height: 1.15; text-transform: uppercase; color: #fff; }
.mf-result__alert { width: min(560px, 100%); text-align: left; }
.mf-result__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 6px; }

/* generic rows + tables */
.mf-list { display: flex; flex-direction: column; }
.mf-list__row { display: flex; align-items: center; gap: 14px; padding: 12px 18px; color: var(--mf-text-2); border-bottom: 1px solid rgba(255, 255, 255, .05); transition: background-color .15s; }
.mf-list__row:last-child { border-bottom: 0; }
a.mf-list__row:hover { background: rgba(255, 255, 255, .035); }
.mf-list__thumb { flex: none; width: 92px; height: 58px; background: #0b0e13 center / cover no-repeat; box-shadow: inset 0 0 0 1px var(--mf-line); }
.mf-list__thumb--item { display: flex; align-items: center; justify-content: center; width: 58px; background: radial-gradient(60% 60% at 50% 55%, rgba(61, 127, 219, .25), transparent 75%), #0b0e13; }
.mf-list__thumb--item img { width: 42px; height: 42px; object-fit: contain; image-rendering: pixelated; }
.mf-list__main { display: flex; flex: 1; flex-direction: column; gap: 3px; min-width: 0; }
.mf-list__title { font-family: var(--mf-font-hud); font-weight: 700; line-height: 1.3; color: #fff; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.mf-list__sub { display: flex; flex-wrap: wrap; gap: 2px 10px; font-size: .8rem; color: var(--mf-muted); }
.mf-list__arrow { flex: none; color: var(--mf-muted); transition: transform .15s steps(2), color .15s; }
a.mf-list__row:hover .mf-list__arrow { color: var(--mf-gold); transform: translateX(3px); }

.mf-table-wrap { overflow-x: auto; }
.mf-table { width: 100%; border-collapse: collapse; font-size: .88rem; }
.mf-table th { padding: 11px 16px; text-align: left; white-space: nowrap; font-family: var(--mf-font-hud); font-size: .64rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--mf-text-2); border-bottom: 1px solid var(--mf-line); }
.mf-table td { padding: 11px 16px; color: var(--mf-text-2); vertical-align: middle; border-bottom: 1px solid rgba(255, 255, 255, .05); }
.mf-table tbody tr:last-child td { border-bottom: 0; }
.mf-table tbody tr:hover td { background: rgba(255, 255, 255, .03); }
.mf-table .is-num { font-family: var(--mf-font-pixel); color: var(--mf-text); white-space: nowrap; }
.mf-table .is-date { color: var(--mf-muted); white-space: nowrap; }
.mf-table .is-strong { font-family: var(--mf-font-hud); font-weight: 700; color: #fff; }
.mf-table .bold, .mf-table a.bold { font-weight: 700; color: #fff; }
.mf-table a:hover { color: var(--mf-gold); }
.mf-table i[data-toggle] { color: var(--mf-text-2); }

/* sub navigation (profile / player) */
.mf-subnav { position: relative; display: flex; overflow-x: auto; scrollbar-width: none; background: rgba(9, 12, 17, .72); box-shadow: inset 0 0 0 1px var(--mf-line); }
.mf-subnav::-webkit-scrollbar { display: none; }
.mf-subnav::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 2px; background: var(--mf-team); }
.mf-subnav__item { position: relative; flex: none; display: flex; align-items: center; gap: 9px; padding: 15px 18px; font-family: var(--mf-font-hud); font-size: .76rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; white-space: nowrap; color: var(--mf-text-2); transition: color .15s, background-color .15s; }
.mf-subnav__item i { color: var(--mf-muted); }
.mf-subnav__item:hover { color: #fff; background: rgba(255, 255, 255, .03); }
.mf-subnav__item.is-active { color: #fff; background: linear-gradient(180deg, transparent, rgba(242, 191, 60, .10)); }
.mf-subnav__item.is-active::after { content: ""; position: absolute; left: 12px; right: 12px; bottom: 0; height: 3px; background: var(--mf-gold); }
.mf-subnav__item.is-active i { color: var(--mf-gold); }
.mf-page > .mf-wrap > .mf-subnav { margin-bottom: 24px; }

/* tabs (core tab script: .tabs .tabs-link / .tabs-pane) */
#dark-mode .mf-tabs.tabs { border: 0; background: linear-gradient(180deg, var(--mf-panel-2), var(--mf-panel)) !important; box-shadow: inset 0 0 0 1px var(--mf-line), var(--mf-shadow); }
#dark-mode .mf-tabs .tabs-head { overflow-x: auto; scrollbar-width: none; border-radius: 0; background: rgba(0, 0, 0, .22); }
.mf-tabs .tabs-head::-webkit-scrollbar { display: none; }
.mf-tabs .tabs-head .tabs-link { flex: none; white-space: nowrap; padding: 15px 18px !important; }
.mf-tabs__count { margin-left: 6px; font-family: var(--mf-font-pixel); letter-spacing: 0; color: var(--mf-muted); }
.mf-tabs .tabs-link.active .mf-tabs__count { color: var(--mf-gold); }

/* ---- cart ---- */
.mf-cart__head, .mf-cartitem { display: grid; grid-template-columns: 64px minmax(0, 1fr) 118px 112px 112px 40px; align-items: center; gap: 14px; padding: 12px 18px; }
.mf-cart__head { padding-top: 10px; padding-bottom: 10px; font-family: var(--mf-font-hud); font-size: .62rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--mf-muted); border-bottom: 1px solid var(--mf-line); }
.mf-cart__head span:first-child { grid-column: 1 / span 2; }
.mf-cart__num { text-align: right; }
.mf-cartitem { border-bottom: 1px solid rgba(255, 255, 255, .05); transition: background-color .15s; }
.mf-cartitem:last-child { border-bottom: 0; }
.mf-cartitem:hover { background: rgba(255, 255, 255, .025); }
.mf-cartitem__media { display: flex; align-items: center; justify-content: center; width: 64px; height: 64px; background: radial-gradient(60% 60% at 50% 55%, rgba(61, 127, 219, .25), transparent 75%), #0b0e13; box-shadow: inset 0 0 0 1px var(--mf-line); }
.mf-cartitem__media img { width: 46px; height: 46px; object-fit: contain; image-rendering: pixelated; }
.mf-cartitem__info { display: flex; flex-direction: column; gap: 5px; min-width: 0; }
.mf-cartitem__name { font-family: var(--mf-font-hud); font-size: 1rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: #fff; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mf-cartitem__name:hover { color: var(--mf-gold); }
.mf-cartitem__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; font-size: .8rem; color: var(--mf-muted); }
.mf-cartitem__meta i { margin-right: 5px; font-size: .75em; }
.mf-cartitem__off { padding: 1px 6px; font-family: var(--mf-font-hud); font-size: .68rem; font-weight: 700; color: #fff; background: var(--mf-green-2); }
.mf-cartitem__price, .mf-cartitem__total { display: flex; flex-direction: column; align-items: flex-end; gap: 2px; line-height: 1.1; text-align: right; }
.mf-cartitem__price del { font-family: var(--mf-font-pixel); font-size: .76rem; color: var(--mf-muted); text-decoration-color: var(--mf-red); text-decoration-thickness: 2px; }
.mf-cartitem__price b, .mf-cartitem__total b { font-family: var(--mf-font-pixel); font-size: 1rem; font-weight: 400; white-space: nowrap; color: var(--mf-text); }
.mf-cartitem__total b { font-size: 1.15rem; color: var(--mf-gold); }
.mf-cartitem b small { font-family: var(--mf-font-hud); font-size: .7rem; font-weight: 700; color: var(--mf-muted); }
.mf-qty { display: flex; gap: 6px; }
#dark-mode .mf-qty .form-control { width: 66px; height: 38px; padding: 0 4px; text-align: center; font-family: var(--mf-font-pixel); font-size: 1rem; }
.mf-qty .mf-sqbtn { min-height: 38px; }
.mf-sqbtn--danger:hover { background: var(--mf-red-2); }
@media (max-width: 767px) {
  .mf-cart__head { display: none; }
  .mf-cartitem { grid-template-columns: 56px minmax(0, 1fr) auto; grid-template-areas: "media info remove" "qty qty total"; row-gap: 12px; padding: 14px 16px; }
  .mf-cartitem__media { grid-area: media; width: 56px; height: 56px; }
  .mf-cartitem__info { grid-area: info; }
  .mf-cartitem__remove { grid-area: remove; align-self: start; justify-self: end; }
  .mf-qty { grid-area: qty; }
  .mf-cartitem__price { display: none; }
  .mf-cartitem__total { grid-area: total; justify-content: center; }
}

.mf-summary { display: grid; gap: 10px; margin: 0; }
.mf-summary__row { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; font-size: .9rem; color: var(--mf-text-2); }
.mf-summary__row dd { margin: 0; font-family: var(--mf-font-pixel); white-space: nowrap; color: #fff; }
.mf-summary__row.is-discount dd { color: #86d06f; }
.mf-summary__total { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; padding: 14px 0; border-top: 1px dashed var(--mf-line-2); border-bottom: 1px dashed var(--mf-line-2); }
.mf-summary__total span { margin-right: auto; font-family: var(--mf-font-hud); font-size: .7rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--mf-muted); }
.mf-summary__total b { font-family: var(--mf-font-pixel); font-size: 2rem; font-weight: 400; line-height: 1; color: var(--mf-gold); }
.mf-summary__total small { font-family: var(--mf-font-hud); font-weight: 700; color: var(--mf-text-2); }

.mf-couponform { display: flex; gap: 8px; }
.mf-couponform__code { position: relative; flex: 1; min-width: 0; margin: 0; }
.mf-couponform__code i { position: absolute; z-index: 1; left: 13px; top: 50%; transform: translateY(-50%); font-size: .85rem; color: var(--mf-muted); pointer-events: none; }
#dark-mode .mf-couponform .form-control { width: 100%; height: 100%; padding: 10px 12px 10px 38px; font-family: var(--mf-font-pixel); letter-spacing: .06em; text-transform: uppercase; }
.mf-couponform .btn:not(.btn-sm):not(.btn-lg) { padding: .8rem 1.1rem !important; }

/* ---- credit ---- */
.mf-balance {
  position: relative; padding: 20px;
  background: radial-gradient(120% 90% at 0% 100%, rgba(242, 191, 60, .16), transparent 60%), linear-gradient(135deg, #2a2412 0%, #1b1a17 45%, var(--mf-panel) 100%);
  box-shadow: inset 0 0 0 1px rgba(242, 191, 60, .3), var(--mf-shadow);
}
.mf-balance__label { font-family: var(--mf-font-hud); font-size: .66rem; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: var(--mf-gold); }
.mf-balance__amount { display: flex; align-items: baseline; gap: 10px; margin: 10px 0 18px; font-family: var(--mf-font-pixel); font-size: 2.4rem; line-height: 1; color: #fff; overflow-wrap: anywhere; }
.mf-balance__amount i { font-size: 1.2rem; color: var(--mf-gold); }
.mf-balance__amount small { font-family: var(--mf-font-hud); font-size: .85rem; font-weight: 700; color: var(--mf-text-2); }
.mf-balance__actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.mf-balance__actions .btn { min-width: 0; white-space: nowrap; }
.mf-balance__actions .btn:last-child:nth-child(odd) { grid-column: 1 / -1; }
.mf-choice--packets { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); }
.mf-choice--packets .mf-choice__box { min-height: 112px; }
.mf-choice--packets .mf-choice__title { font-size: 1.05rem; }
.mf-amount { position: relative; display: block; }
.mf-amount__unit { position: absolute; top: 50%; right: 14px; transform: translateY(-50%); font-family: var(--mf-font-hud); font-weight: 700; color: var(--mf-muted); pointer-events: none; }
#dark-mode .mf-amount .form-control { padding-right: 42px; font-family: var(--mf-font-pixel); font-size: 1.25rem; }
.mf-field__hint b { font-family: var(--mf-font-pixel); font-weight: 400; color: var(--mf-gold); }
.mf-form__actions .btn-lg { min-width: 220px; }
@media (max-width: 559px) { .mf-form__actions .btn { flex: 1 1 100%; } }
a.mf-feed__row { color: inherit; }

/* ---- news ---- */
@media (min-width: 1100px) { .mf-news-grid--wide { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.mf-article { --rank: var(--mf-blue); position: relative; background: linear-gradient(180deg, var(--mf-panel-2), var(--mf-panel)); box-shadow: inset 0 0 0 1px var(--mf-line), var(--mf-shadow); }
.mf-article__cover { position: relative; aspect-ratio: 16 / 7; background: #0a0d12 center / cover no-repeat; }
.mf-article__cover::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(22, 27, 36, 0) 40%, rgba(24, 29, 38, .96) 100%); }
.mf-article__body { position: relative; z-index: 1; margin-top: -64px; padding: 0 clamp(18px, 4vw, 40px) 36px; }
.mf-article__title { font-family: var(--mf-font-hud) !important; font-size: clamp(1.55rem, 3.4vw, 2.35rem); font-weight: 700; line-height: 1.12; color: #fff; text-shadow: 0 3px 0 rgba(0, 0, 0, .5); overflow-wrap: anywhere; }
.mf-article__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 20px; margin: 18px 0 26px; padding-bottom: 18px; border-bottom: 1px dashed var(--mf-line-2); font-size: .85rem; color: var(--mf-muted); }
.mf-article__meta i { margin-right: 6px; }
.mf-article__meta b { font-family: var(--mf-font-pixel); font-weight: 400; color: var(--mf-text); }
.mf-author { display: flex; align-items: center; gap: 10px; margin-right: auto; }
.mf-author img { width: 36px; height: 36px; image-rendering: pixelated; box-shadow: 0 0 0 2px rgba(0, 0, 0, .5); }
.mf-author small { display: block; font-family: var(--mf-font-hud); font-size: .58rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--mf-muted); }
.mf-author b { font-family: var(--mf-font-hud) !important; font-size: .95rem; color: #fff; }
.mf-author:hover b { color: var(--mf-gold); }
@media (max-width: 640px) {
  .mf-article__cover { aspect-ratio: 16 / 10; }
  .mf-article__body { margin-top: -34px; }
  .mf-author { width: 100%; margin-right: 0; }
}
.mf-article .mf-prose { font-size: 1.02rem; }
.mf-prose h2, .mf-prose h3, .mf-prose h4 { margin-top: 1.5em; font-family: var(--mf-font-hud) !important; font-weight: 700; line-height: 1.2; }
.mf-prose h2 { font-size: 1.45rem; }
.mf-prose h3 { font-size: 1.2rem; }
.mf-prose iframe, .mf-prose video { max-width: 100%; }
.mf-prose blockquote { padding: 12px 16px; color: var(--mf-text); background: rgba(255, 255, 255, .03); box-shadow: inset 3px 0 0 var(--mf-gold); }

.mf-comments { display: flex; flex-direction: column; }
.mf-comment { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 12px; padding: 16px 20px; border-bottom: 1px solid rgba(255, 255, 255, .05); }
.mf-comment img, .mf-composer img { width: 40px; height: 40px; image-rendering: pixelated; box-shadow: 0 0 0 2px rgba(0, 0, 0, .5); }
.mf-comment__head { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 10px; }
.mf-comment__name { font-family: var(--mf-font-hud); font-weight: 700; color: #fff; }
.mf-comment__name:hover { color: var(--mf-gold); }
.mf-comment__date { font-size: .75rem; color: var(--mf-muted); }
.mf-comment__text { margin-top: 5px; line-height: 1.55; color: var(--mf-text-2); overflow-wrap: anywhere; }
.mf-composer { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 12px; padding: 18px 20px 20px; background: rgba(0, 0, 0, .14); }
.mf-composer__main { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
#dark-mode .mf-composer textarea.form-control { width: 100%; min-height: 96px; padding: 11px 14px; resize: vertical; }
.mf-composer__actions { display: flex; justify-content: flex-end; }
.mf-composer-guest { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
.mf-composer-guest > * + * { margin-top: 0; }

/* ---- vote ---- */
.mf-vote { display: grid; gap: 22px; margin-bottom: 22px; }
@media (min-width: 900px) { .mf-vote { grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); align-items: start; } }
.mf-votecta {
  position: relative; overflow: hidden; display: flex; flex-direction: column; align-items: flex-start; gap: 14px; padding: clamp(22px, 4vw, 38px);
  background: radial-gradient(80% 120% at 0% 100%, rgba(211, 58, 66, .22), transparent 55%), radial-gradient(80% 120% at 100% 0%, rgba(61, 127, 219, .20), transparent 55%), linear-gradient(180deg, var(--mf-panel-2), var(--mf-panel));
  box-shadow: inset 0 0 0 1px var(--mf-line), var(--mf-shadow);
}
.mf-votecta::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: var(--mf-team); }
.mf-votecta__title { font-family: var(--mf-font-hud) !important; font-size: clamp(1.6rem, 3.4vw, 2.4rem); font-weight: 700; line-height: 1.05; text-transform: uppercase; color: #fff; text-shadow: 0 3px 0 rgba(0, 0, 0, .5); }
.mf-votecta__text { max-width: 540px; line-height: 1.6; color: var(--mf-text-2); }
.mf-votecta__stats { display: flex; flex-wrap: wrap; gap: 10px; }
.mf-votecta__stats .mf-stat { min-width: 104px; padding: 10px 16px; text-align: center; background: rgba(0, 0, 0, .3); box-shadow: inset 0 0 0 1px var(--mf-line-2); }
.mf-votecta .btn { margin-top: auto; }
.mf-grid2 { display: grid; gap: 22px; align-items: start; }
@media (min-width: 900px) { .mf-grid2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.mf-leader { display: flex; flex-direction: column; }
.mf-leader__row { display: grid; grid-template-columns: 32px minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 11px 18px; border-bottom: 1px solid rgba(255, 255, 255, .05); }
.mf-leader__row:last-child { border-bottom: 0; }
.mf-leader--ranked .mf-leader__row { grid-template-columns: 30px 32px minmax(0, 1fr) auto; }
.mf-leader__row img { width: 32px; height: 32px; image-rendering: pixelated; box-shadow: 0 0 0 2px rgba(0, 0, 0, .5); }
.mf-leader__pos { font-family: var(--mf-font-pixel); font-size: 1rem; color: var(--mf-muted); }
.mf-leader__row:nth-child(1) .mf-leader__pos { color: var(--mf-gold); }
.mf-leader__row:nth-child(2) .mf-leader__pos { color: #c3cad6; }
.mf-leader__row:nth-child(3) .mf-leader__pos { color: #d08a4c; }
.mf-leader__name { font-family: var(--mf-font-hud); font-weight: 700; color: #fff; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mf-leader__time { font-size: .78rem; color: var(--mf-muted); white-space: nowrap; }
.mf-leader__score { font-family: var(--mf-font-pixel); font-size: 1.05rem; color: var(--mf-gold); white-space: nowrap; }
.mf-leader__score small { font-family: var(--mf-font-hud); font-size: .7rem; font-weight: 700; color: var(--mf-muted); }
.mf-lead { max-width: 640px; margin: -8px 0 24px; line-height: 1.6; color: var(--mf-text-2); }
.mf-votesites { display: grid; gap: 14px; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.mf-votesite { display: flex; flex-direction: column; gap: 14px; padding: 18px; background: linear-gradient(180deg, var(--mf-panel-2), var(--mf-panel)); box-shadow: inset 0 0 0 1px var(--mf-line), var(--mf-shadow); transition: transform .2s steps(4), box-shadow .2s; }
.mf-votesite__head { display: flex; align-items: center; gap: 14px; min-width: 0; }
.mf-votesite .btn.btn-sm { width: 100%; }
.mf-votesite:hover { transform: translateY(-3px); box-shadow: inset 0 0 0 1px var(--mf-line-2), 0 26px 40px -20px rgba(0, 0, 0, .9); }
.mf-votesite__icon { flex: none; display: flex; align-items: center; justify-content: center; width: 46px; height: 46px; font-size: 1.15rem; color: #fff; background: var(--mf-red-2); box-shadow: inset 0 -3px 0 rgba(0, 0, 0, .3); clip-path: var(--mf-clip); --mf-step: 3px; }
.mf-votesite__text { display: flex; flex: 1; flex-direction: column; gap: 2px; min-width: 0; }
.mf-votesite__text b { font-family: var(--mf-font-hud); font-size: 1rem; color: #fff; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mf-votesite__text small { font-size: .8rem; color: var(--mf-muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* ---- soldier profile (profile + player) ---- */
.mf-hero--soldier { min-height: 260px; }
.mf-hero--soldier .mf-hero__photo { filter: grayscale(.45) brightness(.4) contrast(1.05); }
@media (min-width: 768px) { .mf-hero--page .mf-soldierhead { align-items: flex-end; } }
.mf-soldierhead__id { display: flex; align-items: flex-end; gap: 22px; min-width: 0; }
/* Minecraft names are case-sensitive: never upper-case them (Turkish locale would also turn i into İ) */
.mf-soldierhead .mf-pagehead__title { text-transform: none; }
.mf-soldierhead__avatar {
  position: relative; flex: none; display: block; width: 112px; height: 112px; padding: 6px;
  background: radial-gradient(70% 70% at 50% 60%, color-mix(in srgb, var(--role, var(--mf-gold)) 35%, transparent), transparent 75%), #0b0e13;
  box-shadow: 0 0 0 2px #06080b, inset 0 0 0 3px var(--role, var(--mf-gold)), 0 18px 30px -12px rgba(0, 0, 0, .8);
}
.mf-soldierhead__avatar img { display: block; width: 100%; height: 100%; object-fit: contain; image-rendering: pixelated; }
.mf-soldierhead__meta { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.mf-soldierhead .mf-pagehead__title { overflow-wrap: anywhere; }
.mf-soldierhead__tags { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; margin-top: 4px; font-size: .86rem; color: var(--mf-text-2); text-shadow: 0 2px 0 rgba(0, 0, 0, .6); }
.mf-soldierhead__sub i { margin-right: 4px; color: var(--mf-muted); }
.mf-soldierhead__actions { display: flex; flex-wrap: wrap; gap: 8px; }
.mf-role { display: inline-flex; align-items: center; padding: 4px 10px; font-family: var(--mf-font-hud); font-size: .7rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; text-shadow: none; color: var(--role-text, #fff); background: var(--role, var(--mf-panel-3)); box-shadow: inset 0 -3px 0 rgba(0, 0, 0, .25); }
@media (max-width: 767px) {
  .mf-soldierhead__id { gap: 14px; }
  .mf-soldierhead__avatar { width: 84px; height: 84px; padding: 5px; }
}

.mf-dossier__skin { position: relative; display: flex; justify-content: center; min-height: 290px; padding: 14px 0 8px; background: radial-gradient(60% 55% at 50% 62%, rgba(61, 127, 219, .22), transparent 70%), linear-gradient(180deg, rgba(0, 0, 0, .25), transparent); border-bottom: 1px solid var(--mf-line); }
.mf-dossier__skin canvas { display: block; max-width: 100%; }
.mf-dossier__controls { position: absolute; top: 12px; left: 12px; z-index: 2; display: flex; flex-direction: column; gap: 6px; }
.mf-dossier__controls .mf-sqbtn { width: 34px; min-height: 34px; }
.mf-dossier__stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: var(--mf-line); border-bottom: 1px solid var(--mf-line); }
.mf-dstat { display: flex; flex-direction: column; align-items: center; gap: 5px; padding: 14px 8px; text-align: center; background: var(--mf-panel); }
.mf-dstat b { font-family: var(--mf-font-pixel); font-size: 1.4rem; font-weight: 400; line-height: 1; color: #fff; overflow-wrap: anywhere; }
.mf-dstat b small { font-size: .78rem; color: var(--mf-muted); }
.mf-dstat > small { font-family: var(--mf-font-hud); font-size: .6rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--mf-muted); }
.mf-dstat--gold b { color: var(--mf-gold); }
.mf-dossier__facts { display: grid; gap: 11px; margin: 0; padding: 16px 18px; }
.mf-dossier__facts > div { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; font-size: .88rem; }
.mf-dossier__facts dt { flex: none; font-family: var(--mf-font-hud); font-size: .64rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--mf-muted); }
.mf-dossier__facts dd { margin: 0; min-width: 0; text-align: right; color: #fff; overflow-wrap: anywhere; }
.mf-dossier__social { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 14px 18px 18px; border-top: 1px solid var(--mf-line); }
.mf-dossier__handle { display: inline-flex; align-items: center; gap: 7px; max-width: 100%; padding: 7px 10px; font-size: .82rem; color: var(--mf-text-2); background: rgba(255, 255, 255, .04); box-shadow: inset 0 0 0 1px var(--mf-line); overflow-wrap: anywhere; }
.mf-social--twitter:hover { background: #1d9bf0; }

.mf-bans { display: flex; flex-direction: column; }
.mf-bans__row { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 14px; padding: 13px 20px; border-bottom: 1px solid rgba(255, 255, 255, .05); }
.mf-bans__row:last-child { border-bottom: 0; }
.mf-bans__label { display: inline-flex; align-items: center; gap: 10px; font-size: .92rem; color: var(--mf-text); }
.mf-bans__label i { width: 16px; text-align: center; color: var(--mf-muted); }
.mf-bans .mf-status { white-space: normal; }

/* tab buttons (core tab script works on any element with href) */
.mf-tabs button.tabs-link { display: inline-flex; align-items: center; gap: 8px; margin: 0; border: 0; background: transparent; font: inherit; cursor: pointer; }
.mf-tabs button.tabs-link i { color: var(--mf-muted); }
.mf-tabs button.tabs-link.active i { color: var(--mf-gold); }
.mf-tabs button.tabs-link::after { content: ""; position: absolute; left: 12px; right: 12px; bottom: 0; height: 3px; background: var(--mf-gold); transform: scaleX(0); transition: transform .2s steps(5); }
.mf-tabs button.tabs-link.active::after, .mf-tabs button.tabs-link:hover::after { transform: scaleX(1); }
.mf-tabs button.tabs-link:focus-visible { outline: 2px solid var(--mf-gold); outline-offset: -2px; }
.mf-tabs .tabs-pane { min-height: 60px; }
