:root { --dirt: #8b6644; --dirt-dark: #5c4229; --stone: #7f7f7f; --stone-light: #9a9a9a; --stone-dark: #565656; --deepslate: #3b3b42; --deepslate-2: #2c2c33; --bedrock: #17171c; --planks: #b0834f; --obsidian: #17141f; --gui: #c6c6c6; --gui-light: #ffffff; --gui-shade: #565656; --slot: #8b8b8b; --slot-shade: #373737; --outline: #000000; --mc-white: #ffffff; --mc-gray: #aaaaaa; --mc-dgray: #555555; --mc-green: #79c10f; --mc-dgreen: #4f9810; --mc-aqua: #55ffff; --mc-daqua: #00aaaa; --mc-yellow: #ffff55; --mc-gold: #ffaa00; --mc-red: #ff5555; --mc-dred: #aa0000; --mc-pink: #ff55ff; --mc-purple: #aa00aa; --mc-blue: #5555ff; --mc-emerald: #4f9810; --mc-emerald-lo: #315e0a; --bg: var(--bedrock); --bg-2: #1e1e25; --panel: var(--deepslate); --panel-2: var(--deepslate-2); --panel-3: #4a4a53; --line: #14141a; --line-soft: #26262e; --ink: var(--mc-white); --ink-2: #cdcdd4; --ink-3: var(--mc-gray); --grass: var(--mc-green); --grass-deep: var(--mc-dgreen); --diamond: var(--mc-aqua); --gold: var(--mc-gold); --redstone: var(--mc-red); --amethyst: var(--mc-pink); --radius: 0px; --radius-sm: 0px; --radius-lg: 0px; --maxw: 1180px; --nav-h: 74px; --font-pixel: "Monocraft", "Minecraft", "Minecraftia", "Press Start 2P",
                "VT323", ui-monospace, "Cascadia Mono", Consolas,
                "DejaVu Sans Mono", monospace; --font-ui: var(--font-pixel); --font-mono: var(--font-pixel); --ease-out: cubic-bezier(.22, .8, .3, 1); --ease-snap: cubic-bezier(.2, .7, .35, 1); --sh: #3f3f3f; --shadow-lg: 0 0 0 3px #000, 8px 8px 0 rgba(0,0,0,.45); --shadow-md: 6px 6px 0 rgba(0,0,0,.35); --glow-grass: 0 0 0 3px #000; --glow-diamond: 0 0 0 3px #000; --tex-dirt: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' shape-rendering='crispEdges'%3E%3Crect width='16' height='16' fill='%238b6644'/%3E%3Cg fill='%237a5738'%3E%3Crect x='1' y='1' width='3' height='2'/%3E%3Crect x='7' y='2' width='2' height='3'/%3E%3Crect x='12' y='0' width='2' height='2'/%3E%3Crect x='4' y='6' width='2' height='2'/%3E%3Crect x='9' y='8' width='3' height='2'/%3E%3Crect x='2' y='11' width='2' height='3'/%3E%3Crect x='13' y='12' width='2' height='2'/%3E%3Crect x='6' y='13' width='3' height='2'/%3E%3C/g%3E%3Cg fill='%2399734f'%3E%3Crect x='5' y='3' width='2' height='2'/%3E%3Crect x='11' y='5' width='2' height='2'/%3E%3Crect x='0' y='7' width='2' height='2'/%3E%3Crect x='7' y='10' width='2' height='2'/%3E%3Crect x='14' y='8' width='2' height='2'/%3E%3Crect x='3' y='15' width='2' height='1'/%3E%3C/g%3E%3C/svg%3E"); --tex-stone: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' shape-rendering='crispEdges'%3E%3Crect width='16' height='16' fill='%237f7f7f'/%3E%3Cg fill='%23747474'%3E%3Crect x='2' y='1' width='3' height='2'/%3E%3Crect x='8' y='0' width='2' height='2'/%3E%3Crect x='12' y='3' width='3' height='2'/%3E%3Crect x='0' y='5' width='2' height='3'/%3E%3Crect x='5' y='7' width='3' height='2'/%3E%3Crect x='10' y='9' width='2' height='3'/%3E%3Crect x='3' y='12' width='3' height='2'/%3E%3Crect x='13' y='13' width='2' height='2'/%3E%3C/g%3E%3Cg fill='%238c8c8c'%3E%3Crect x='6' y='2' width='2' height='2'/%3E%3Crect x='1' y='9' width='2' height='2'/%3E%3Crect x='9' y='5' width='2' height='2'/%3E%3Crect x='14' y='7' width='2' height='2'/%3E%3Crect x='7' y='14' width='2' height='2'/%3E%3C/g%3E%3C/svg%3E"); --tex-deepslate: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' shape-rendering='crispEdges'%3E%3Crect width='16' height='16' fill='%233b3b42'/%3E%3Cg fill='%23343439'%3E%3Crect x='1' y='2' width='3' height='2'/%3E%3Crect x='9' y='1' width='2' height='2'/%3E%3Crect x='13' y='4' width='2' height='3'/%3E%3Crect x='0' y='8' width='3' height='2'/%3E%3Crect x='6' y='6' width='2' height='2'/%3E%3Crect x='10' y='10' width='3' height='2'/%3E%3Crect x='4' y='13' width='2' height='2'/%3E%3C/g%3E%3Cg fill='%2345454e'%3E%3Crect x='5' y='3' width='2' height='2'/%3E%3Crect x='11' y='7' width='2' height='2'/%3E%3Crect x='2' y='11' width='2' height='2'/%3E%3Crect x='8' y='13' width='3' height='2'/%3E%3Crect x='14' y='11' width='2' height='2'/%3E%3C/g%3E%3C/svg%3E"); --tex-planks: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' shape-rendering='crispEdges'%3E%3Crect width='16' height='16' fill='%23b0834f'/%3E%3Cg fill='%239c7343'%3E%3Crect x='0' y='3' width='16' height='1'/%3E%3Crect x='0' y='7' width='16' height='1'/%3E%3Crect x='0' y='11' width='16' height='1'/%3E%3Crect x='0' y='15' width='16' height='1'/%3E%3Crect x='5' y='0' width='1' height='3'/%3E%3Crect x='11' y='4' width='1' height='3'/%3E%3Crect x='3' y='8' width='1' height='3'/%3E%3Crect x='9' y='12' width='1' height='3'/%3E%3C/g%3E%3Cg fill='%23bd9059'%3E%3Crect x='1' y='1' width='3' height='1'/%3E%3Crect x='8' y='5' width='4' height='1'/%3E%3Crect x='5' y='9' width='3' height='1'/%3E%3Crect x='12' y='13' width='3' height='1'/%3E%3C/g%3E%3C/svg%3E"); --tex-obsidian: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' shape-rendering='crispEdges'%3E%3Crect width='16' height='16' fill='%2317141f'/%3E%3Cg fill='%23241e33'%3E%3Crect x='2' y='1' width='3' height='2'/%3E%3Crect x='9' y='3' width='2' height='3'/%3E%3Crect x='13' y='8' width='2' height='2'/%3E%3Crect x='1' y='10' width='3' height='2'/%3E%3Crect x='6' y='12' width='3' height='2'/%3E%3C/g%3E%3Cg fill='%23342a4a'%3E%3Crect x='6' y='2' width='2' height='1'/%3E%3Crect x='3' y='6' width='2' height='1'/%3E%3Crect x='11' y='11' width='2' height='1'/%3E%3C/g%3E%3C/svg%3E"); }
*, ::before, ::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: calc(var(--nav-h) + 24px); }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, ::before, ::after { animation-duration: 0.001ms !important; animation-iteration-count: 1 !important; transition-duration: 0.001ms !important; }
}
body { margin: 0px; color: var(--ink); font-family: var(--font-ui); font-size: 17px; line-height: 1.7; letter-spacing: 0px; overflow-x: hidden; background: transparent; image-rendering: pixelated; }
html { background-color: var(--dirt-dark); }
body::before { content: ""; position: fixed; inset: 0px; z-index: -1; pointer-events: none; background-color: var(--dirt-dark); background-image: radial-gradient(ellipse 130% 100% at 50% 0%, rgba(0,0,0,.72), rgba(0,0,0,.9)),
    var(--tex-dirt); background-size: auto, 48px 48px; }
img { max-width: 100%; display: block; }
svg { display: block; shape-rendering: crispedges; }
a { color: var(--mc-aqua); text-decoration: none; }
a:hover { color: var(--mc-yellow); text-decoration: underline; }
::selection { background: var(--mc-dgreen); color: rgb(255, 255, 255); }
:focus-visible { outline: 3px solid var(--mc-white); outline-offset: 2px; }
h1, h2, h3, h4 { margin: 0px 0px 0.55em; line-height: 1.22; font-weight: 700; letter-spacing: 0px; color: var(--mc-white); text-shadow: 2px 2px 0 var(--sh); }
h1 { font-size: clamp(1.7rem, 3.4vw, 2.6rem); }
h2 { font-size: clamp(1.3rem, 2.3vw, 1.8rem); }
h3 { font-size: clamp(1rem, 1.4vw, 1.1rem); }
p { margin: 0px 0px 1rem; color: var(--ink-2); }
strong { color: var(--mc-white); font-weight: 700; }
em { font-style: normal; color: var(--mc-yellow); }
code { font-family: var(--font-mono); font-size: 0.9em; background: var(--slot); box-shadow: inset 2px 2px 0 var(--slot-shade), inset -2px -2px 0 rgba(255,255,255,.35); padding: 0.1em 0.45em; color: rgb(255, 255, 255); text-shadow: rgba(0, 0, 0, 0.5) 1px 1px 0px; }
.wrap { width: 100%; max-width: var(--maxw); margin-inline: auto; padding-inline: 22px; }
.section { padding: 76px 0px; position: relative; }
.section--tight { padding: 48px 0px; }
.section--alt { background-color: var(--deepslate-2); background-image: linear-gradient(rgba(23,23,28,.82), rgba(23,23,28,.82)),
    var(--tex-stone); background-size: auto, 40px 40px; border-top: 4px solid var(--outline); border-bottom: 4px solid var(--outline); box-shadow: rgba(255, 255, 255, 0.07) 0px 4px 0px inset, rgba(0, 0, 0, 0.4) 0px -4px 0px inset; }
.section--alt::before { content: ""; position: absolute; top: 0px; left: 0px; right: 0px; height: 5px; background: repeating-linear-gradient(90deg, rgb(92, 156, 63) 0px, rgb(92, 156, 63) 8px, rgb(108, 176, 74) 8px, rgb(108, 176, 74) 16px, rgb(79, 138, 54) 16px, rgb(79, 138, 54) 24px, rgb(99, 165, 68) 24px, rgb(99, 165, 68) 32px); opacity: 0.9; }
.section { content-visibility: auto; contain-intrinsic-size: auto 640px; }
.center { text-align: center; }
.mx-auto { margin-inline: auto; }
.stack > * + * { margin-top: 14px; }
.measure { max-width: 62ch; }
.measure-narrow { max-width: 48ch; }
.grid { display: grid; gap: 20px; }
.grid-2 { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
.grid-3 { grid-template-columns: repeat(3, minmax(0px, 1fr)); }
.grid-4 { grid-template-columns: repeat(4, minmax(0px, 1fr)); }
@media (max-width: 1000px) {
  .grid-3, .grid-4 { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
}
@media (max-width: 660px) {
  .grid-2, .grid-3, .grid-4 { grid-template-columns: minmax(0px, 1fr); }
  .section { padding: 52px 0px; }
  body { font-size: 14px; }
}
.eyebrow { display: inline-flex; align-items: center; gap: 9px; font-size: 0.72rem; letter-spacing: 0.16em; text-transform: uppercase; color: var(--mc-green); text-shadow: #315e0a 2px 2px 0px; margin-bottom: 14px; }
.eyebrow::before { content: ""; width: 10px; height: 10px; flex: 0 0 auto; background: currentcolor; box-shadow: rgba(0, 0, 0, 0.55) 2px 2px 0px; }
.eyebrow--diamond { color: var(--mc-aqua); text-shadow: rgb(21, 63, 63) 2px 2px 0px; }
.eyebrow--gold { color: var(--mc-gold); text-shadow: rgb(64, 42, 0) 2px 2px 0px; }
.eyebrow--amethyst { color: var(--mc-pink); text-shadow: rgb(63, 21, 63) 2px 2px 0px; }
.section-head { max-width: 720px; margin-bottom: 42px; }
.section-head.center { margin-inline: auto; }
.section-head p { font-size: 1rem; }
.strip { position: relative; background-color: var(--deepslate); background-image: linear-gradient(rgba(0,0,0,.45), rgba(0,0,0,.45)), var(--tex-deepslate); background-size: auto, 32px 32px; border-bottom: 3px solid var(--outline); font-size: 0.8rem; }
.strip__inner { max-width: var(--maxw); margin-inline: auto; padding: 9px 22px; display: flex; align-items: center; gap: 12px; flex-wrap: wrap; color: var(--ink-2); text-shadow: rgba(0, 0, 0, 0.6) 2px 2px 0px; }
.strip__tag { font-size: 0.68rem; letter-spacing: 0.14em; text-transform: uppercase; color: rgb(42, 28, 0); background: var(--mc-gold); border: 2px solid var(--outline); box-shadow: rgb(255, 210, 127) 2px 2px 0px inset, rgb(184, 122, 0) -2px -2px 0px inset; padding: 3px 9px; white-space: nowrap; text-shadow: none; font-weight: 700; }
.strip a { margin-left: auto; color: var(--mc-green); white-space: nowrap; }
.strip a:hover { color: var(--mc-yellow); }
.nav { position: sticky; top: 0px; z-index: 100; height: var(--nav-h); display: flex; align-items: center; background-color: var(--stone-dark); background-image: linear-gradient(rgba(0,0,0,.62), rgba(0,0,0,.62)), var(--tex-stone); background-size: auto, 36px 36px; border-bottom: 4px solid var(--outline); box-shadow: rgba(255, 255, 255, 0.14) 0px 3px 0px inset, rgba(0, 0, 0, 0.5) 0px -3px 0px inset; }
.nav.is-scrolled { box-shadow: rgba(255, 255, 255, 0.14) 0px 3px 0px inset, rgba(0, 0, 0, 0.5) 0px -3px 0px inset, rgba(0, 0, 0, 0.35) 0px 6px 0px; }
.nav__inner { width: 100%; max-width: var(--maxw); margin-inline: auto; padding-inline: 22px; display: flex; align-items: center; gap: 14px; }
.brand { display: flex; align-items: center; gap: 11px; margin-right: auto; text-decoration: none; }
.brand:hover { text-decoration: none; }
.brand__mark { width: 34px; height: 34px; flex: 0 0 auto; filter: drop-shadow(rgba(0, 0, 0, 0.55) 3px 3px 0px); transition: transform .18s var(--ease-out); }
.brand:hover .brand__mark { transform: translateY(-3px); }
.brand__text { font-weight: 700; font-size: 1.2rem; letter-spacing: 0.02em; color: var(--mc-white); text-shadow: 3px 3px 0 var(--sh); }
.brand__text span { color: var(--mc-green); text-shadow: #315e0a 3px 3px 0px; }
.brand__tag { font-size: 0.56rem; letter-spacing: 0.16em; text-transform: uppercase; color: rgb(42, 28, 0); background: var(--mc-gold); border: 2px solid var(--outline); box-shadow: rgb(255, 210, 127) 2px 2px 0px inset, rgb(184, 122, 0) -2px -2px 0px inset; padding: 2px 6px; white-space: nowrap; font-weight: 700; }
.nav__links { display: flex; align-items: center; gap: 3px; }
.nav__links a:not(.btn) { color: var(--ink-2); font-size: 0.82rem; padding: 9px 12px; text-decoration: none; text-shadow: rgba(0, 0, 0, 0.6) 2px 2px 0px; border: 2px solid transparent; transition: color 0.12s, background 0.12s; white-space: nowrap; }
.nav__links a:not(.btn):hover { color: var(--mc-yellow); text-decoration: none; background: rgba(0, 0, 0, 0.35); border-color: rgba(255, 255, 255, 0.5); }
.nav__links a:not(.btn)[aria-current="page"] { color: var(--mc-green); background: rgba(0, 0, 0, 0.45); border-color: rgba(121, 193, 15, 0.55); }
.nav__cta { margin-left: 10px; }
.nav__toggle { display: none; width: 46px; height: 40px; background: var(--slot); border: 3px solid var(--outline); box-shadow: inset 2px 2px 0 #c6c6c6, inset -2px -2px 0 var(--gui-shade); cursor: pointer; padding: 0px; place-items: center; }
.nav__toggle span, .nav__toggle span::before, .nav__toggle span::after { content: ""; display: block; width: 18px; height: 3px; background: rgb(255, 255, 255); box-shadow: rgba(0, 0, 0, 0.5) 2px 2px 0px; transition: transform .22s var(--ease-out), opacity .18s linear; }
.nav__toggle span::before { transform: translateY(-7px); }
.nav__toggle span::after { transform: translateY(4px); }
.nav__toggle[aria-expanded="true"] span { background: transparent; box-shadow: none; }
.nav__toggle[aria-expanded="true"] span::before { transform: rotate(45deg); }
.nav__toggle[aria-expanded="true"] span::after { transform: rotate(-45deg) translateY(0px); }
@media (max-width: 1080px) {
  .nav__toggle { display: grid; }
  .nav__links { position: fixed; top: var(--nav-h); left: 0px; right: 0px; flex-direction: column; align-items: stretch; gap: 3px; background-color: var(--deepslate); background-image: linear-gradient(rgba(0,0,0,.55), rgba(0,0,0,.55)), var(--tex-deepslate); background-size: auto, 32px 32px; border-bottom: 4px solid var(--outline); padding: 14px 22px 22px; box-shadow: rgba(0, 0, 0, 0.35) 0px 8px 0px; transform: translateY(-8px); opacity: 0; visibility: hidden; transition: opacity .22s var(--ease-out), transform .22s var(--ease-out), visibility .22s; max-height: calc(100vh - var(--nav-h)); overflow-y: auto; }
  .nav__links.is-open { opacity: 1; visibility: visible; transform: none; }
  .nav__links a:not(.btn) { padding: 13px 14px; font-size: 0.95rem; border-color: rgba(0, 0, 0, 0.4); background: rgba(0, 0, 0, 0.25); }
  .nav__cta { margin-left: 0px; margin-top: 12px; }
}
.btn { position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 9px; font-family: inherit; font-size: 0.82rem; font-weight: 700; letter-spacing: 0px; padding: 12px 19px; cursor: pointer; text-decoration: none; color: var(--mc-white); text-shadow: 2px 2px 0 var(--sh); background: var(--slot); border: 3px solid var(--outline); box-shadow: inset 3px 3px 0 #c6c6c6, inset -3px -3px 0 var(--gui-shade); transition: background .12s linear, color .12s linear, transform .12s var(--ease-snap); white-space: nowrap; line-height: 1.35; image-rendering: pixelated; }
.btn:hover { text-decoration: none; color: var(--mc-yellow); background: rgb(156, 167, 156); box-shadow: rgb(214, 219, 214) 3px 3px 0px inset, rgb(95, 102, 95) -3px -3px 0px inset, rgb(255, 255, 255) 0px 0px 0px 2px; }
.btn:active { transform: translateY(2px); }
.btn--primary { background: var(--mc-emerald); box-shadow: inset 3px 3px 0 #93ce13, inset -3px -3px 0 var(--mc-emerald-lo); text-shadow: #315e0a 2px 2px 0px; }
.btn--primary:hover { background: #67b00d; color: var(--mc-yellow); box-shadow: #acda15 3px 3px 0px inset, #315e0a -3px -3px 0px inset, rgb(255, 255, 255) 0px 0px 0px 2px; }
.btn--ghost { background: var(--stone-dark); box-shadow: rgb(138, 138, 138) 3px 3px 0px inset, rgb(51, 51, 56) -3px -3px 0px inset; }
.btn--ghost:hover { background: rgb(106, 106, 112); box-shadow: rgb(158, 158, 166) 3px 3px 0px inset, rgb(60, 60, 66) -3px -3px 0px inset, rgb(255, 255, 255) 0px 0px 0px 2px; }
.btn--ms { background: var(--gui); color: rgb(28, 28, 28); text-shadow: none; box-shadow: inset 3px 3px 0 var(--gui-light), inset -3px -3px 0 var(--gui-shade); }
.btn--ms:hover { background: rgb(216, 216, 216); color: rgb(0, 0, 0); box-shadow: rgb(255, 255, 255) 3px 3px 0px inset, rgb(109, 109, 109) -3px -3px 0px inset, rgb(255, 255, 255) 0px 0px 0px 2px; }
.btn--sm { padding: 8px 13px; font-size: 0.72rem; border-width: 2px; box-shadow: inset 2px 2px 0 #c6c6c6, inset -2px -2px 0 var(--gui-shade); }
.btn--primary.btn--sm { box-shadow: inset 2px 2px 0 #93ce13, inset -2px -2px 0 var(--mc-emerald-lo); }
.btn--lg { padding: 14px 22px; font-size: 0.88rem; }
.btn--block { width: 100%; }
.btn[disabled], .btn.is-disabled { background: rgb(107, 107, 107); color: rgb(157, 157, 157); box-shadow: rgb(128, 128, 128) 3px 3px 0px inset, rgb(74, 74, 74) -3px -3px 0px inset; cursor: not-allowed; transform: none !important; }
.btn[disabled]:hover, .btn.is-disabled:hover { color: rgb(157, 157, 157); background: rgb(107, 107, 107); }
.btn__icon { width: 16px; height: 16px; flex: 0 0 auto; }
.btn-row { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.btn-row.center { justify-content: center; }
.badge { display: inline-flex; align-items: center; gap: 7px; font-size: 0.66rem; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 700; padding: 4px 10px; background: var(--deepslate-2); border: 2px solid var(--outline); box-shadow: rgba(255, 255, 255, 0.16) 2px 2px 0px inset, rgba(0, 0, 0, 0.5) -2px -2px 0px inset; color: var(--ink-3); text-shadow: rgba(0, 0, 0, 0.6) 2px 2px 0px; }
.badge--live { color: var(--mc-green); box-shadow: rgba(121, 193, 15, 0.28) 2px 2px 0px inset, rgba(0, 0, 0, 0.5) -2px -2px 0px inset; }
.badge--soon { color: var(--mc-gold); box-shadow: rgba(255, 170, 0, 0.28) 2px 2px 0px inset, rgba(0, 0, 0, 0.5) -2px -2px 0px inset; }
.badge--alpha { color: var(--mc-pink); box-shadow: rgba(255, 85, 255, 0.26) 2px 2px 0px inset, rgba(0, 0, 0, 0.5) -2px -2px 0px inset; }
.badge--plan { color: var(--mc-gray); }
.badge--hot { color: var(--mc-red); box-shadow: rgba(255, 85, 85, 0.28) 2px 2px 0px inset, rgba(0, 0, 0, 0.5) -2px -2px 0px inset; }
.badge--diamond { color: var(--mc-aqua); box-shadow: rgba(85, 255, 255, 0.26) 2px 2px 0px inset, rgba(0, 0, 0, 0.5) -2px -2px 0px inset; }
.dot { width: 7px; height: 7px; background: currentcolor; flex: 0 0 auto; box-shadow: rgba(0, 0, 0, 0.6) 1px 1px 0px; }
.dot--pulse { animation: 1.8s ease-in-out 0s infinite normal none running blink; }
@keyframes blink { 
  0%, 100% { opacity: 1; }
  50% { opacity: 0.35; }
}
.card { position: relative; padding: 24px; background-color: var(--deepslate); border: 3px solid var(--outline); box-shadow: rgba(255, 255, 255, 0.14) 3px 3px 0px inset, rgba(0, 0, 0, 0.5) -3px -3px 0px inset; transition: transform .2s var(--ease-out), box-shadow .2s var(--ease-out); }
.card--hover:hover { transform: translateY(-4px); box-shadow: rgba(255, 255, 255, 0.22) 3px 3px 0px inset, rgba(0, 0, 0, 0.5) -3px -3px 0px inset, rgba(0, 0, 0, 0.4) 0px 6px 0px; }
.card h3 { margin-bottom: 9px; }
.card p:last-child { margin-bottom: 0px; }
.card__icon { width: 46px; height: 46px; display: grid; place-items: center; background: var(--slot); border: 3px solid var(--outline); box-shadow: inset 3px 3px 0 var(--slot-shade), inset -3px -3px 0 rgba(255,255,255,.45); margin-bottom: 16px; }
.card__icon svg { width: 22px; height: 22px; }
.card--accent { box-shadow: rgba(121, 193, 15, 0.2) 3px 3px 0px inset, rgba(0, 0, 0, 0.5) -3px -3px 0px inset; }
.card--diamond { box-shadow: rgba(85, 255, 255, 0.2) 3px 3px 0px inset, rgba(0, 0, 0, 0.5) -3px -3px 0px inset; }
.card__num { font-size: 0.68rem; letter-spacing: 0.16em; text-transform: uppercase; color: var(--mc-gold); text-shadow: rgb(58, 38, 0) 2px 2px 0px; margin-bottom: 9px; }
.ticks { list-style: none; padding: 0px; margin: 0px; }
.ticks li { position: relative; padding-left: 26px; margin-bottom: 11px; color: var(--ink-2); font-size: 0.88rem; }
.ticks li::before { content: ""; position: absolute; left: 0px; top: 0.52em; width: 12px; height: 12px; background: var(--mc-green); box-shadow: rgba(0, 0, 0, 0.45) 0px 0px 0px 3px inset, rgba(0, 0, 0, 0.5) 2px 2px 0px; }
.ticks--diamond li::before { background: var(--mc-aqua); }
.ticks--muted li::before { background: var(--mc-gray); }
.ticks li strong { color: var(--mc-white); }
.split { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; }
.split--wide-left { grid-template-columns: 1.12fr 0.88fr; }
.split--wide-right { grid-template-columns: 0.88fr 1.12fr; }
@media (max-width: 940px) {
  .split, .split--wide-left, .split--wide-right { grid-template-columns: minmax(0px, 1fr); gap: 32px; }
  .split__media { order: 2; }
}
.window { background: var(--bedrock); border: 3px solid var(--outline); box-shadow: rgba(255, 255, 255, 0.14) 3px 3px 0px inset, rgba(0, 0, 0, 0.5) -3px -3px 0px inset, rgba(0, 0, 0, 0.4) 8px 8px 0px; overflow: hidden; }
.window__bar { display: flex; align-items: center; gap: 9px; padding: 9px 13px; background: var(--stone-dark); border-bottom: 3px solid var(--outline); }
.window__dots { display: flex; gap: 5px; }
.window__dots i { width: 10px; height: 10px; display: block; box-shadow: rgba(0, 0, 0, 0.6) 1px 1px 0px; }
.window__dots i:nth-child(1) { background: var(--mc-red); }
.window__dots i:nth-child(2) { background: var(--mc-gold); }
.window__dots i:nth-child(3) { background: var(--mc-green); }
.window__url { flex: 1 1 0%; font-size: 0.68rem; color: var(--ink-3); background: rgb(0, 0, 0); box-shadow: rgba(0, 0, 0, 0.8) 2px 2px 0px inset, rgba(255, 255, 255, 0.12) -2px -2px 0px inset; padding: 4px 11px; text-align: center; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; text-shadow: rgb(0, 0, 0) 1px 1px 0px; }
.stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0px; border: 3px solid var(--outline); background: var(--deepslate-2); }
.stats > div { padding: 22px 18px; text-align: center; background-color: var(--deepslate); box-shadow: rgba(255, 255, 255, 0.12) 3px 3px 0px inset, rgba(0, 0, 0, 0.5) -3px -3px 0px inset; outline: 1px solid var(--outline); }
.stats__num { font-size: clamp(1.25rem, 2.4vw, 1.7rem); font-weight: 700; color: var(--mc-green); text-shadow: #315e0a 3px 3px 0px; line-height: 1.15; }
.stats__num small { font-size: 0.5em; color: var(--ink-3); text-shadow: rgba(0, 0, 0, 0.6) 2px 2px 0px; }
.stats__label { font-size: 0.72rem; color: var(--ink-3); margin-top: 8px; text-shadow: rgba(0, 0, 0, 0.6) 2px 2px 0px; }
@media (max-width: 800px) {
  .stats { grid-template-columns: repeat(2, 1fr); }
}
.table-scroll { overflow-x: auto; border: 3px solid var(--outline); background: var(--deepslate-2); box-shadow: rgba(255, 255, 255, 0.12) 3px 3px 0px inset, rgba(0, 0, 0, 0.5) -3px -3px 0px inset; }
table { width: 100%; border-collapse: collapse; min-width: 620px; font-size: 0.82rem; }
thead th { text-align: left; padding: 12px 16px; background: var(--stone-dark); border-bottom: 3px solid var(--outline); font-size: 0.68rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--mc-yellow); text-shadow: rgba(0, 0, 0, 0.7) 2px 2px 0px; font-weight: 700; white-space: nowrap; }
tbody td { padding: 12px 16px; border-bottom: 2px solid rgba(0, 0, 0, 0.45); color: var(--ink-2); vertical-align: middle; text-shadow: rgba(0, 0, 0, 0.5) 1px 1px 0px; }
tbody tr:last-child td { border-bottom: 0px; }
tbody tr:hover td { background: rgba(255, 255, 255, 0.055); }
tbody td:first-child { color: var(--mc-white); font-weight: 700; }
caption { color: var(--ink-3); }
.cell-yes { color: var(--mc-green); font-weight: 700; }
.cell-no { color: var(--mc-dgray); }
.cell-part { color: var(--mc-gold); font-weight: 700; }
.acc { border: 3px solid var(--outline); background-color: var(--deepslate); box-shadow: rgba(255, 255, 255, 0.12) 3px 3px 0px inset, rgba(0, 0, 0, 0.5) -3px -3px 0px inset; }
.acc__item + .acc__item { border-top: 2px solid rgba(0, 0, 0, 0.5); }
.acc__btn { width: 100%; display: flex; align-items: center; gap: 16px; padding: 17px 20px; background: none; border: 0px; color: var(--mc-white); font-family: inherit; font-size: 0.92rem; font-weight: 700; text-align: left; cursor: pointer; text-shadow: 2px 2px 0 var(--sh); transition: background 0.12s, color 0.12s; line-height: 1.45; }
.acc__btn:hover { background: rgba(255, 255, 255, 0.055); color: var(--mc-yellow); }
.acc__btn::after { content: ""; margin-left: auto; flex: 0 0 auto; width: 0px; height: 0px; border-left: 7px solid transparent; border-right: 7px solid transparent; border-top: 9px solid var(--mc-gray); transition: transform .24s var(--ease-out); }
.acc__btn[aria-expanded="true"] { color: var(--mc-green); }
.acc__btn[aria-expanded="true"]::after { transform: rotate(180deg); border-top-color: var(--mc-green); }
.acc__panel { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .32s var(--ease-out); }
.acc__panel.is-open { grid-template-rows: 1fr; }
.acc__panel > div { overflow: hidden; }
.acc__panel-inner { padding: 0px 20px 20px; border-left: 4px solid rgba(121, 193, 15, 0.25); margin-left: 16px; }
.acc__panel-inner p:last-child, .acc__panel-inner ul:last-child { margin-bottom: 0px; }
.acc__panel-inner ul { margin: 0px 0px 1rem; padding-left: 20px; color: var(--ink-2); }
.acc__panel-inner li { margin-bottom: 6px; }
.acc__panel-inner li::marker { color: var(--mc-green); }
.tabs { display: flex; flex-wrap: wrap; gap: 4px; margin-bottom: 24px; padding: 5px; background: var(--stone-dark); border: 3px solid var(--outline); box-shadow: rgba(255, 255, 255, 0.12) 3px 3px 0px inset, rgba(0, 0, 0, 0.5) -3px -3px 0px inset; }
.tabs button { flex: 1 1 auto; padding: 10px 15px; background: var(--slot); border: 2px solid var(--outline); box-shadow: rgba(255, 255, 255, 0.3) 2px 2px 0px inset, rgba(0, 0, 0, 0.4) -2px -2px 0px inset; color: rgb(228, 228, 228); font-family: inherit; font-size: 0.8rem; font-weight: 700; text-shadow: rgba(0, 0, 0, 0.55) 2px 2px 0px; cursor: pointer; transition: background 0.1s, color 0.1s; white-space: nowrap; }
.tabs button:hover { color: var(--mc-yellow); background: rgb(156, 167, 156); }
.tabs button[aria-selected="true"] { background: var(--mc-emerald); color: rgb(255, 255, 255); box-shadow: inset 2px 2px 0 #93ce13, inset -2px -2px 0 var(--mc-emerald-lo); }
.tabpanel[hidden] { display: none; }
.timeline { position: relative; padding-left: 36px; }
.timeline::before { content: ""; position: absolute; left: 9px; top: 6px; bottom: 6px; width: 6px; background: repeating-linear-gradient(180deg, var(--mc-dgreen) 0 6px, #0b5e0b 6px 12px); box-shadow: rgba(0, 0, 0, 0.5) 2px 0px 0px; }
.tl-item { position: relative; padding-bottom: 32px; }
.tl-item:last-child { padding-bottom: 0px; }
.tl-item::before { content: ""; position: absolute; left: -36px; top: 3px; width: 22px; height: 22px; background: var(--stone-dark); border: 3px solid var(--outline); box-shadow: rgba(255, 255, 255, 0.25) 2px 2px 0px inset, rgba(0, 0, 0, 0.5) -2px -2px 0px inset; }
.tl-item::after { content: ""; position: absolute; left: -30px; top: 9px; width: 10px; height: 10px; background: var(--mc-dgray); }
.tl-item--done::after { background: var(--mc-green); box-shadow: rgba(121, 193, 15, 0.35) 0px 0px 0px 2px; }
.tl-item--now::after { background: var(--mc-gold); box-shadow: rgba(255, 170, 0, 0.35) 0px 0px 0px 2px; animation: 1.8s ease-in-out 0s infinite normal none running blink; }
.tl-item__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-bottom: 8px; }
.tl-item__date { font-size: 0.72rem; color: var(--mc-gold); letter-spacing: 0.08em; text-shadow: rgb(58, 38, 0) 2px 2px 0px; }
.tl-item h3 { margin-bottom: 6px; }
.countdown { display: flex; flex-wrap: wrap; gap: 10px; }
.countdown__unit { flex: 1 1 88px; min-width: 82px; padding: 14px 8px; text-align: center; background: var(--slot); border: 3px solid var(--outline); box-shadow: inset 3px 3px 0 var(--slot-shade), inset -3px -3px 0 rgba(255,255,255,.4); }
.countdown__val { font-weight: 700; font-size: clamp(1.3rem, 3.4vw, 1.85rem); color: rgb(255, 255, 255); text-shadow: rgba(0, 0, 0, 0.6) 3px 3px 0px; line-height: 1; font-variant-numeric: tabular-nums; }
.countdown__lbl { font-size: 0.6rem; letter-spacing: 0.16em; text-transform: uppercase; color: rgb(42, 42, 42); margin-top: 8px; font-weight: 700; }
.field { display: grid; gap: 7px; margin-bottom: 16px; text-align: left; }
.field label { font-size: 0.78rem; font-weight: 700; color: var(--mc-white); text-shadow: 2px 2px 0 var(--sh); }
.field .hint { font-size: 0.72rem; color: var(--ink-3); text-shadow: rgba(0, 0, 0, 0.5) 1px 1px 0px; }
.input, .select, .textarea { width: 100%; padding: 11px 13px; background: rgb(0, 0, 0); border: 3px solid var(--outline); box-shadow: rgb(160, 160, 160) 0px 0px 0px 2px inset; color: rgb(255, 255, 255); font-family: inherit; font-size: 0.86rem; text-shadow: 2px 2px 0 var(--sh); transition: box-shadow 0.12s; }
.input::placeholder, .textarea::placeholder { color: rgb(109, 109, 109); }
.input:focus, .select:focus, .textarea:focus { outline: none; box-shadow: inset 0 0 0 2px #fff, 0 0 0 2px var(--mc-green); }
.textarea { resize: vertical; min-height: 92px; }
.select { appearance: none; background-image: linear-gradient(45deg, transparent 50%, rgb(160, 160, 160) 50%), linear-gradient(135deg, rgb(160, 160, 160) 50%, transparent 50%); background-position: calc(100% - 20px) calc(1em + 3px), calc(100% - 14px) calc(1em + 3px); background-size: 6px 6px, 6px 6px; background-repeat: no-repeat; padding-right: 38px; }
.select option { background: rgb(28, 28, 28); color: rgb(255, 255, 255); }
.checks { display: grid; gap: 10px; }
.check { display: flex; gap: 11px; align-items: flex-start; cursor: pointer; font-size: 0.82rem; color: var(--ink-2); }
.check input { margin-top: 0.3em; width: 16px; height: 16px; flex: 0 0 auto; cursor: pointer; accent-color: var(--mc-emerald); }
.form-note { font-size: 0.72rem; color: var(--ink-3); margin-top: 14px; text-shadow: rgba(0, 0, 0, 0.5) 1px 1px 0px; }
.form-msg { display: none; margin-top: 16px; padding: 14px 16px; font-size: 0.8rem; color: var(--ink-2); background: rgb(35, 35, 35); border: 3px solid var(--outline); box-shadow: inset 3px 3px 0 #4a4a4a, inset -3px -3px 0 #101010, 0 0 0 2px var(--mc-gold); text-shadow: rgba(0, 0, 0, 0.6) 2px 2px 0px; }
.form-msg.is-visible { display: block; animation: toast-in .34s var(--ease-out); }
.form-msg strong { display: block; color: var(--mc-yellow); margin-bottom: 4px; }
@keyframes toast-in { 
  0% { transform: translateY(-14px); opacity: 0; }
  100% { transform: none; opacity: 1; }
}
.notice { display: flex; gap: 14px; align-items: flex-start; padding: 16px 18px; font-size: 0.85rem; color: var(--ink-2); background-color: var(--deepslate-2); border-top-color: ; border-top-style: ; border-top-width: ; border-right-color: ; border-right-style: ; border-right-width: ; border-bottom-color: ; border-bottom-style: ; border-bottom-width: ; border-left-color: ; border-left-style: ; border-image-source: ; border-image-slice: ; border-image-width: ; border-image-outset: ; border-image-repeat: ; border-left-width: 8px; box-shadow: rgba(255, 255, 255, 0.1) 3px 3px 0px inset, rgba(0, 0, 0, 0.5) -3px -3px 0px inset; text-shadow: rgba(0, 0, 0, 0.5) 1px 1px 0px; }
.notice svg { width: 20px; height: 20px; flex: 0 0 auto; margin-top: 2px; }
.notice p:last-child { margin-bottom: 0px; }
.notice strong { display: block; color: var(--mc-white); margin-bottom: 3px; }
.notice--warn { border-left-color: var(--mc-gold); }
.notice--warn svg { color: var(--mc-gold); }
.notice--info { border-left-color: var(--mc-aqua); }
.notice--info svg { color: var(--mc-aqua); }
.notice--alert { border-left-color: var(--mc-red); }
.notice--alert svg { color: var(--mc-red); }
.notice--warn strong { color: var(--mc-gold); }
.notice--alert strong { color: var(--mc-red); }
.page-hero { padding: 56px 0px 44px; position: relative; border-bottom: 4px solid var(--outline); }
.page-hero::after { content: ""; position: absolute; bottom: -4px; left: 0px; right: 0px; height: 4px; background: repeating-linear-gradient(90deg, rgb(92, 156, 63) 0px, rgb(92, 156, 63) 8px, rgb(108, 176, 74) 8px, rgb(108, 176, 74) 16px, rgb(79, 138, 54) 16px, rgb(79, 138, 54) 24px); }
.page-hero h1 { margin-bottom: 14px; }
.page-hero p { font-size: 0.98rem; max-width: 62ch; }
.hero__lead { font-size: 0.98rem; max-width: 56ch; margin-bottom: 24px; }
.title-screen { --panorama: none; position: relative; min-height: calc(100vh - var(--nav-h) - 44px); display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 54px 22px 84px; overflow: hidden; text-align: center; }
.title-screen__bg { position: absolute; inset: -3% -5%; background-color: rgb(107, 140, 202); background-image: var(--panorama),
    linear-gradient(180deg, #5d82c4 0%, #8fb8ef 42%, #c3dcf4 54%, #4a7a3a 54%, #2b4522 100%); background-size: cover, cover; background-position: center center; animation: 75s ease-in-out 0s infinite alternate none running panorama-pan; will-change: transform; }
.title-screen__bg::after { content: ""; position: absolute; inset: 0px; background: rgba(0, 0, 0, 0.58); }
@keyframes panorama-pan { 
  0% { transform: translate3d(-1.8%, 0px, 0px) scale(1.05); }
  100% { transform: translate3d(1.8%, 0px, 0px) scale(1.05); }
}
.title-screen__inner { position: relative; z-index: 1; width: 100%; max-width: 620px; display: flex; flex-direction: column; align-items: center; }
.title-screen__logo { position: relative; width: min(560px, 88vw); margin-bottom: 6px; }
.title-screen__logo img { width: 100%; height: auto; image-rendering: pixelated; filter: drop-shadow(rgba(0, 0, 0, 0.45) 4px 4px 0px); }
.title-formerly { display: block; width: fit-content; margin: 18px auto 0; padding: 4px 8px; color: var(--mc-gray); background: rgba(20, 20, 22, .88); border: 2px solid var(--outline); font-size: .57rem; font-weight: 750; letter-spacing: .1em; text-transform: uppercase; }
.title-screen .splash { position: absolute; right: -1%; bottom: -2%; margin: 0px; font-size: clamp(0.62rem, 1.5vw, 0.82rem); max-width: 44%; transform-origin: center center; }
.title-screen__tagline { margin: 46px 0px 32px; font-size: 0.86rem; color: var(--mc-gray); text-shadow: rgba(0, 0, 0, 0.7) 2px 2px 0px; }
.mc-menu { width: 100%; max-width: 400px; display: flex; flex-direction: column; gap: 8px; }
.mc-menu .btn { width: 100%; }
.mc-menu__row { display: flex; gap: 8px; }
.mc-menu__row .btn { flex: 1 1 0px; min-width: 0px; }
.title-screen__version, .title-screen__legal { position: absolute; bottom: 10px; z-index: 1; font-size: 0.68rem; color: var(--mc-white); text-shadow: rgba(0, 0, 0, 0.8) 2px 2px 0px; }
.title-screen__version { left: 14px; }
.title-screen__legal { right: 14px; color: var(--mc-gray); }
@media (max-width: 760px) {
  .title-screen { padding-bottom: 108px; }
  .title-screen__version, .title-screen__legal { position: static; display: block; text-align: center; margin-top: 6px; }
  .title-screen__version { margin-top: 32px; }
}
.splash { display: inline-block; color: var(--mc-yellow); font-size: 0.8rem; font-weight: 700; line-height: 1; text-shadow: rgb(63, 63, 21) 3px 3px 0px; transform: rotate(-14deg); transform-origin: center center; animation: 1s ease-in-out 0s infinite normal none running splash-pulse; margin: 6px 0px 22px 10px; }
@media (max-width: 660px) {
  .splash { font-size: 0.72rem; margin-bottom: 18px; }
}
@keyframes splash-pulse { 
  0%, 100% { transform: rotate(-14deg) scale(1); }
  50% { transform: rotate(-14deg) scale(1.09); }
}
.marquee { overflow: hidden; padding: 13px 0px; background: rgba(0, 0, 0, 0.5); border-block: 3px solid var(--outline); box-shadow: rgba(255, 255, 255, 0.08) 0px 3px 0px inset, rgba(0, 0, 0, 0.5) 0px -3px 0px inset; }
.marquee__track { display: flex; gap: 40px; width: max-content; animation: 38s linear 0s infinite normal none running slide; }
.marquee:hover .marquee__track { animation-play-state: paused; }
.marquee__item { display: flex; align-items: center; gap: 9px; font-size: 0.72rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--ink-3); white-space: nowrap; text-shadow: rgba(0, 0, 0, 0.6) 2px 2px 0px; }
.marquee__item svg { width: 13px; height: 13px; color: var(--mc-green); }
@keyframes slide { 
  100% { transform: translateX(-50%); }
}
.codeblock { background: rgb(0, 0, 0); border: 3px solid var(--outline); box-shadow: rgb(44, 44, 51) 0px 0px 0px 2px inset, rgba(0, 0, 0, 0.35) 6px 6px 0px; overflow: hidden; }
.codeblock__head { display: flex; align-items: center; gap: 10px; padding: 8px 14px; background: var(--stone-dark); border-bottom: 3px solid var(--outline); font-size: 0.68rem; color: var(--mc-yellow); letter-spacing: 0.08em; text-shadow: rgba(0, 0, 0, 0.7) 2px 2px 0px; }
.codeblock pre { margin: 0px; padding: 16px; overflow-x: auto; font-family: var(--font-mono); font-size: 0.76rem; line-height: 1.8; color: rgb(208, 208, 208); text-shadow: rgb(0, 0, 0) 1px 1px 0px; }
.codeblock code { background: none; box-shadow: none; padding: 0px; color: inherit; font-size: inherit; text-shadow: inherit; }
.tok-key { color: var(--mc-pink); }
.tok-str { color: var(--mc-green); }
.tok-num { color: var(--mc-gold); }
.tok-com { color: var(--mc-dgray); }
.tok-fn { color: var(--mc-aqua); }
.bar-row { margin-bottom: 18px; }
.bar-row:last-child { margin-bottom: 0px; }
.bar-row__top { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 6px; font-size: 0.8rem; }
.bar-row__label { color: var(--mc-white); font-weight: 700; text-shadow: 2px 2px 0 var(--sh); }
.bar-row__val { color: var(--mc-yellow); font-size: 0.76rem; text-shadow: rgb(63, 63, 21) 2px 2px 0px; }
.bar { height: 14px; background: rgb(0, 0, 0); border: 2px solid var(--outline); box-shadow: rgba(255, 255, 255, 0.1) 0px 0px 0px 1px inset; overflow: hidden; }
.bar > i { display: block; height: 100%; width: 0px; background: var(--mc-emerald); box-shadow: rgba(255, 255, 255, 0.28) 0px 3px 0px inset, rgba(0, 0, 0, 0.3) 0px -3px 0px inset; transition: width 1.1s var(--ease-out); }
.bar--alt > i { background: rgb(44, 143, 168); }
.bar--muted > i { background: rgb(90, 90, 98); }
.tier { display: flex; flex-direction: column; padding: 26px; background-color: var(--deepslate); border: 3px solid var(--outline); box-shadow: rgba(255, 255, 255, 0.13) 3px 3px 0px inset, rgba(0, 0, 0, 0.5) -3px -3px 0px inset; position: relative; }
.tier--featured { box-shadow: inset 3px 3px 0 rgba(121,193,15,.22), inset -3px -3px 0 rgba(0,0,0,.5), 0 0 0 3px var(--mc-emerald); }
.tier__flag { position: absolute; top: -13px; left: 50%; transform: translateX(-50%); font-size: 0.6rem; letter-spacing: 0.14em; text-transform: uppercase; font-weight: 700; background: var(--mc-gold); color: rgb(42, 28, 0); border: 2px solid var(--outline); box-shadow: rgb(255, 210, 127) 2px 2px 0px inset, rgb(184, 122, 0) -2px -2px 0px inset; padding: 4px 11px; white-space: nowrap; }
.tier__name { font-size: 1.05rem; font-weight: 700; color: var(--mc-white); text-shadow: 2px 2px 0 var(--sh); margin-bottom: 4px; }
.tier__price { font-size: 1.7rem; font-weight: 700; color: var(--mc-yellow); text-shadow: rgb(63, 63, 21) 3px 3px 0px; line-height: 1.15; margin: 12px 0px 2px; }
.tier__price small { font-size: 0.42em; color: var(--ink-3); text-shadow: rgba(0, 0, 0, 0.6) 2px 2px 0px; }
.tier__desc { font-size: 0.8rem; color: var(--ink-3); min-height: 2.8em; text-shadow: rgba(0, 0, 0, 0.5) 1px 1px 0px; }
.tier .ticks { margin: 18px 0px 22px; flex: 1 1 0%; }
.tier .ticks li { font-size: 0.82rem; }
.footer { margin-top: 20px; padding: 50px 0px 28px; background-color: var(--obsidian); background-image: linear-gradient(rgba(0,0,0,.5), rgba(0,0,0,.5)), var(--tex-obsidian); background-size: auto, 40px 40px; border-top: 4px solid var(--outline); box-shadow: rgba(255, 255, 255, 0.06) 0px 4px 0px inset; position: relative; }
.footer::before { content: ""; position: absolute; top: -4px; left: 0px; right: 0px; height: 4px; background: repeating-linear-gradient(90deg, rgb(92, 156, 63) 0px, rgb(92, 156, 63) 8px, rgb(108, 176, 74) 8px, rgb(108, 176, 74) 16px, rgb(79, 138, 54) 16px, rgb(79, 138, 54) 24px); }
.footer__grid { display: grid; grid-template-columns: 1.6fr repeat(3, 1fr); gap: 36px; margin-bottom: 36px; }
@media (max-width: 880px) {
  .footer__grid { grid-template-columns: 1fr 1fr; gap: 28px; }
}
@media (max-width: 540px) {
  .footer__grid { grid-template-columns: 1fr; }
}
.footer h4 { font-size: 0.7rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--mc-gold); margin-bottom: 14px; font-weight: 700; text-shadow: rgb(58, 38, 0) 2px 2px 0px; }
.footer ul { list-style: none; padding: 0px; margin: 0px; }
.footer li { margin-bottom: 9px; }
.footer li a { color: var(--ink-2); font-size: 0.82rem; text-decoration: none; text-shadow: rgba(0, 0, 0, 0.6) 2px 2px 0px; }
.footer li a:hover { color: var(--mc-yellow); }
.footer li span { font-size: 0.82rem; text-shadow: rgba(0, 0, 0, 0.6) 2px 2px 0px; }
.footer__about p { font-size: 0.82rem; max-width: 40ch; }
.footer__bottom { border-top: 3px solid rgba(255, 255, 255, 0.09); padding-top: 20px; display: flex; flex-wrap: wrap; gap: 14px; align-items: center; justify-content: space-between; font-size: 0.72rem; color: var(--ink-3); text-shadow: rgba(0, 0, 0, 0.6) 1px 1px 0px; }
.footer__legal { max-width: 78ch; line-height: 1.7; }
.reveal { opacity: 0; transform: translateY(14px); transition: opacity .5s var(--ease-out), transform .5s var(--ease-out); }
.reveal.is-in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
  .reveal { opacity: 1; transform: none; }
}
.mt-0 { margin-top: 0px; }
.mb-0 { margin-bottom: 0px; }
.mt-lg { margin-top: 36px; }
.mt-md { margin-top: 24px; }
.mt-sm { margin-top: 13px; }
.muted { color: var(--ink-3); }
.small { font-size: 0.78rem; }
.mono { font-family: var(--font-mono); }
.nowrap { white-space: nowrap; }
.hr { height: 6px; border: 0px; margin: 40px 0px; background: repeating-linear-gradient(90deg, rgb(59, 59, 66) 0px, rgb(59, 59, 66) 6px, rgb(44, 44, 51) 6px, rgb(44, 44, 51) 12px); box-shadow: rgba(0, 0, 0, 0.5) 0px 2px 0px; }
.skip-link { position: absolute; left: -9999px; top: 0px; background: var(--mc-emerald); color: rgb(255, 255, 255); border: 3px solid var(--outline); padding: 10px 16px; font-weight: 700; z-index: 200; text-shadow: rgb(28, 63, 24) 2px 2px 0px; }
.skip-link:focus { left: 0px; }
* { scrollbar-color: var(--slot) #000; scrollbar-width: thin; }
::-webkit-scrollbar { width: 14px; height: 14px; }
::-webkit-scrollbar-track { background: rgb(0, 0, 0); }
::-webkit-scrollbar-thumb { background: var(--slot); border: 2px solid rgb(0, 0, 0); box-shadow: inset 2px 2px 0 #c6c6c6, inset -2px -2px 0 var(--gui-shade); }
::-webkit-scrollbar-thumb:hover { background: rgb(164, 164, 164); }

.visually-hidden { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; white-space: nowrap !important; border: 0 !important; }

/* ZephyrCraft content mapped onto the original Minecraft UI system. */
.section.alt {
  background-color: var(--deepslate-2);
  background-image: linear-gradient(rgba(23,23,28,.82), rgba(23,23,28,.82)), var(--tex-stone);
  background-size: auto, 40px 40px;
  border-top: 4px solid var(--outline);
  border-bottom: 4px solid var(--outline);
  box-shadow: inset 0 4px 0 rgba(255,255,255,.07), inset 0 -4px 0 rgba(0,0,0,.4);
}
.section.alt::before {
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 5px;
  background: repeating-linear-gradient(90deg, #5c9c3f 0 8px, #6cb04a 8px 16px, #4f8a36 16px 24px, #63a544 24px 32px);
}
.grid.two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.grid.three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.grid.four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 1000px) { .grid.three, .grid.four { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 660px) { .grid.two, .grid.three, .grid.four { grid-template-columns: minmax(0, 1fr); } }

.card.accent { box-shadow: inset 3px 3px 0 rgba(121,193,15,.2), inset -3px -3px 0 rgba(0,0,0,.5); }
.card.lime { box-shadow: inset 3px 3px 0 rgba(85,255,255,.2), inset -3px -3px 0 rgba(0,0,0,.5); }
.card[data-index]::after { content: attr(data-index); position: absolute; top: 17px; right: 18px; color: var(--mc-dgray); font-size: .68rem; }
.list { list-style: none; padding: 0; margin: 0; }
.list li { position: relative; padding-left: 22px; margin-bottom: 10px; color: var(--ink-2); }
.list li::before { content: ""; position: absolute; left: 0; top: .58em; width: 10px; height: 10px; background: var(--mc-green); box-shadow: 2px 2px 0 rgba(0,0,0,.55); }
.lede { max-width: 62ch; font-size: 1rem; }
.crumb { margin-bottom: 12px; color: var(--mc-gold); font-size: .72rem; letter-spacing: .12em; text-transform: uppercase; }
.narrow { width: 100%; max-width: 880px; margin-inline: auto; padding-inline: 22px; }

.actions { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; margin-top: 24px; }
.button {
  position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 9px;
  font-family: inherit; font-size: .82rem; font-weight: 700; padding: 12px 19px;
  color: var(--mc-white); text-shadow: 2px 2px 0 var(--sh); text-decoration: none;
  background: var(--stone-dark); border: 3px solid var(--outline);
  box-shadow: inset 3px 3px 0 #8a8a8a, inset -3px -3px 0 #333338;
  transition: background .12s linear, color .12s linear, transform .12s var(--ease-snap);
}
.button:hover { color: var(--mc-yellow); text-decoration: none; background: #6a6a70; box-shadow: inset 3px 3px 0 #9e9ea6, inset -3px -3px 0 #3c3c42, 0 0 0 2px #fff; }
.button.primary { background: var(--mc-emerald); box-shadow: inset 3px 3px 0 #93ce13, inset -3px -3px 0 var(--mc-emerald-lo); }
.button.primary:hover { background: #57b449; }

.status-strip { background-color: var(--deepslate); background-image: linear-gradient(rgba(0,0,0,.45), rgba(0,0,0,.45)), var(--tex-deepslate); background-size: auto, 32px 32px; border-block: 3px solid var(--outline); }
.status-strip .wrap { min-height: 58px; display: flex; align-items: center; flex-wrap: wrap; gap: 12px; padding-block: 9px; }
.status-strip p { margin: 0; }
.status-strip a { margin-left: auto; color: var(--mc-green); }
.status-strip .dot { color: var(--mc-gold); }

.terminal { background: #000; border: 3px solid var(--outline); box-shadow: inset 0 0 0 2px #2c2c33, 6px 6px 0 rgba(0,0,0,.35); overflow: hidden; }
.terminal-head { display: flex; justify-content: space-between; gap: 10px; padding: 8px 14px; background: var(--stone-dark); border-bottom: 3px solid var(--outline); color: var(--mc-yellow); font-size: .68rem; }
.terminal pre { margin: 0; padding: 16px; overflow-x: auto; color: #d0d0d0; font-family: var(--font-mono); font-size: .76rem; line-height: 1.8; }
.tok-rust { color: var(--mc-gold); } .tok-lime { color: var(--mc-green); } .tok-dim { color: var(--mc-dgray); }

.version-table .status, .status {
  display: inline-flex; padding: 4px 10px; background: var(--deepslate-2); border: 2px solid var(--outline);
  box-shadow: inset 2px 2px 0 rgba(255,255,255,.16), inset -2px -2px 0 rgba(0,0,0,.5);
  color: var(--mc-gray); font-size: .66rem; letter-spacing: .1em; text-transform: uppercase;
}
.status.current { color: var(--mc-gold); box-shadow: inset 2px 2px 0 rgba(255,170,0,.28), inset -2px -2px 0 rgba(0,0,0,.5); }
.roadmap { position: relative; padding-left: 36px; }
.roadmap::before { content: ""; position: absolute; left: 9px; top: 6px; bottom: 6px; width: 6px; background: repeating-linear-gradient(180deg, var(--mc-dgreen) 0 6px, #0b5e0b 6px 12px); }
.roadmap-item { position: relative; display: grid; grid-template-columns: 110px 1fr auto; gap: 18px; align-items: start; padding: 0 0 30px; }
.roadmap-item::before { content: ""; position: absolute; left: -36px; top: 3px; width: 22px; height: 22px; background: var(--stone-dark); border: 3px solid var(--outline); box-shadow: inset 2px 2px 0 rgba(255,255,255,.25), inset -2px -2px 0 rgba(0,0,0,.5); }
.roadmap-item::after { content: ""; position: absolute; left: -30px; top: 9px; width: 10px; height: 10px; background: var(--mc-dgray); }
.roadmap-item.current::after { background: var(--mc-gold); animation: blink 1.8s ease-in-out infinite; }
.roadmap-item .number { color: var(--mc-gold); font-size: .72rem; }
.roadmap-item h3 { margin-bottom: 6px; }
.roadmap-item p { margin-bottom: 0; }
@media (max-width: 680px) { .roadmap-item { grid-template-columns: 1fr; } .roadmap-item .status { justify-self: start; } }

.callout { display: flex; gap: 14px; align-items: flex-start; padding: 16px 18px; background: var(--deepslate-2); border: 3px solid var(--outline); border-left: 8px solid var(--mc-gold); box-shadow: inset 3px 3px 0 rgba(255,255,255,.1), inset -3px -3px 0 rgba(0,0,0,.5); }
.callout-mark { color: var(--mc-gold); font-size: 1.2rem; font-weight: 700; }
.callout strong { display: block; color: var(--mc-gold); margin-bottom: 3px; }
.callout p { margin-bottom: 0; }

.accordion { border: 3px solid var(--outline); background: var(--deepslate); box-shadow: inset 3px 3px 0 rgba(255,255,255,.12), inset -3px -3px 0 rgba(0,0,0,.5); }
.accordion-item + .accordion-item { border-top: 2px solid rgba(0,0,0,.5); }
.accordion-button { width: 100%; display: flex; align-items: center; gap: 16px; padding: 17px 20px; border: 0; color: var(--mc-white); background: none; font-family: inherit; font-size: .92rem; font-weight: 700; text-align: left; text-shadow: 2px 2px 0 var(--sh); cursor: pointer; }
.accordion-button:hover { color: var(--mc-yellow); background: rgba(255,255,255,.055); }
.accordion-button::after { content: "+"; margin-left: auto; color: var(--mc-gray); }
.accordion-button[aria-expanded="true"] { color: var(--mc-green); }
.accordion-button[aria-expanded="true"]::after { content: "−"; color: var(--mc-green); }
.accordion-panel { padding: 0 20px 20px; border-left: 4px solid rgba(121,193,15,.25); margin-left: 16px; }
.accordion-panel[hidden] { display: none; }

/* Compact one-screen project layout */
@media (min-width: 761px) {
  .title-screen { min-height: clamp(520px, 72svh, 680px); padding-block: 44px 68px; }
  .title-screen__tagline { margin: 34px 0 24px; }
}

.project-section {
  position: relative;
  padding: 64px 0 72px;
  background-color: var(--dirt-dark);
  background-image: linear-gradient(rgba(30,20,13,.52), rgba(30,20,13,.52)), var(--tex-dirt);
  background-size: auto, 48px 48px;
  border-top: 5px solid var(--outline);
  border-bottom: 5px solid var(--outline);
}
.project-section::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 7px;
  background: repeating-linear-gradient(90deg, #5c9c3f 0 8px, #6cb04a 8px 16px, #4f8a36 16px 24px, #63a544 24px 32px);
}
.project-board {
  max-width: 1120px;
  margin-inline: auto;
  background: var(--deepslate);
  border: 4px solid var(--outline);
  box-shadow: inset 4px 4px 0 rgba(255,255,255,.13), inset -4px -4px 0 rgba(0,0,0,.55), 10px 10px 0 rgba(0,0,0,.38);
}
.project-board__bar {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  padding: 10px 15px;
  color: var(--mc-gray);
  font-size: .66rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  background-color: var(--stone-dark);
  background-image: linear-gradient(rgba(0,0,0,.25), rgba(0,0,0,.25)), var(--tex-stone);
  background-size: auto, 32px 32px;
  border-bottom: 4px solid var(--outline);
  text-shadow: 2px 2px 0 rgba(0,0,0,.7);
}
.project-layout {
  display: grid;
  grid-template-columns: minmax(0, .86fr) minmax(460px, 1.14fr);
}
.project-summary, .roadmap-panel { padding: 34px; }
.project-summary { border-right: 4px solid var(--outline); }
.project-summary h2 { max-width: 15ch; margin-bottom: 15px; }
.project-summary__lead { max-width: 48ch; margin-bottom: 27px; font-size: .92rem; }
.project-points {
  display: grid;
  gap: 7px;
  margin-bottom: 25px;
}
.project-point {
  display: grid;
  grid-template-columns: 43px 1fr;
  gap: 14px;
  align-items: center;
  padding: 12px 14px;
  background: var(--deepslate-2);
  border: 2px solid var(--outline);
  box-shadow: inset 2px 2px 0 rgba(255,255,255,.1), inset -2px -2px 0 rgba(0,0,0,.45);
}
.project-point > span {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  color: var(--mc-green);
  font-size: .68rem;
  background: #151519;
  border: 2px solid #000;
  box-shadow: inset 2px 2px 0 rgba(255,255,255,.1);
}
.project-point h3 { margin: 0 0 2px; font-size: .86rem; }
.project-point p { margin: 0; color: var(--ink-3); font-size: .75rem; }
.project-note {
  display: flex;
  gap: 13px;
  align-items: flex-start;
  padding: 13px 15px;
  background: rgba(0,0,0,.28);
  border-left: 6px solid var(--mc-gold);
}
.project-note > span { color: var(--mc-gold); font-weight: 700; }
.project-note p { margin: 0; font-size: .76rem; }

.roadmap-panel { background: rgba(0,0,0,.18); }
.roadmap-panel__head {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-start;
  margin-bottom: 20px;
}
.roadmap-panel__head .eyebrow { margin-bottom: 8px; }
.roadmap-panel__head h2 { margin: 0; }
.roadmap-count {
  flex: 0 0 auto;
  padding: 5px 9px;
  color: var(--mc-gold);
  font-size: .62rem;
  background: #17171b;
  border: 2px solid var(--outline);
  box-shadow: inset 2px 2px 0 rgba(255,255,255,.1);
  text-shadow: 2px 2px 0 #000;
}
.version-list { list-style: none; padding: 0; margin: 0; border: 3px solid var(--outline); }
.version-list li {
  min-height: 56px;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 8px 10px;
  background: var(--deepslate-2);
  border-bottom: 2px solid var(--outline);
  box-shadow: inset 2px 2px 0 rgba(255,255,255,.075);
}
.version-list li:last-child { border-bottom: 0; }
.version-list li.current {
  background: #3d482f;
  box-shadow: inset 4px 0 0 var(--mc-green), inset 2px 2px 0 rgba(255,255,255,.12);
}
.version-list li.special { background: #353140; }
.version-list__number {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  color: var(--mc-gold);
  font-size: .65rem;
  background: #151519;
  border: 2px solid var(--outline);
  box-shadow: inset 2px 2px 0 rgba(255,255,255,.12), inset -2px -2px 0 rgba(0,0,0,.6);
}
.version-list strong { display: block; font-size: .8rem; line-height: 1.3; }
.version-list small { display: block; margin-top: 2px; color: var(--ink-3); font-size: .62rem; }
.version-list .status { white-space: nowrap; font-size: .56rem; }
.roadmap-panel__note { margin: 13px 0 0; color: var(--ink-3); font-size: .68rem; text-align: right; }

@media (max-width: 940px) {
  .project-layout { grid-template-columns: 1fr; }
  .project-summary { border-right: 0; border-bottom: 4px solid var(--outline); }
  .project-summary h2 { max-width: none; }
}
@media (max-width: 600px) {
  .project-section { padding: 38px 0 48px; }
  .project-board { box-shadow: inset 3px 3px 0 rgba(255,255,255,.13), inset -3px -3px 0 rgba(0,0,0,.55), 5px 5px 0 rgba(0,0,0,.38); }
  .project-board__bar { font-size: .56rem; }
  .project-summary, .roadmap-panel { padding: 24px 17px; }
  .roadmap-panel__head { align-items: flex-end; }
  .version-list li { grid-template-columns: 38px minmax(0, 1fr); }
  .version-list .status { grid-column: 2; justify-self: start; margin-top: -5px; }
  .roadmap-panel__note { text-align: left; }
}

/* CC0 block textures from ARoachIFoundOnMyPillow's 16x16 Block Texture Set. */
:root {
  --tex-dirt: url("../img/blocks/dirt.png");
  --tex-grass: url("../img/blocks/grass_block_top.png");
  --tex-obsidian: url("../img/blocks/obsidian.png");
}
.project-section::before {
  height: 12px;
  background-color: #6b9d47;
  background-image: var(--tex-grass);
  background-size: 48px 48px;
  background-blend-mode: multiply;
  image-rendering: pixelated;
}
.footer {
  background-color: #17141f;
  background-image: linear-gradient(rgba(0,0,0,.3), rgba(0,0,0,.3)), var(--tex-obsidian);
  background-size: auto, 48px 48px;
  image-rendering: pixelated;
}
.footer::before { display: none; }
.footer__bottom { justify-content: flex-start; }

/* Readable, block-shaped type without pixelated letterforms. */
@font-face {
  font-family: "Rubik";
  src: url("../fonts/Rubik-Variable.ttf") format("truetype");
  font-style: normal;
  font-weight: 300 900;
  font-display: swap;
}
:root {
  --font-ui: "Rubik", "Trebuchet MS", Arial, sans-serif;
  --font-pixel: "Rubik", "Trebuchet MS", Arial, sans-serif;
}
body { font-size: 16px; line-height: 1.62; }
h1, h2, h3, h4, .brand__text, .btn, .button { letter-spacing: .01em; }
.eyebrow, .strip__tag, .brand__tag, .status, .project-board__bar { letter-spacing: .1em; }

/* Final interface polish */
:root { --nav-h: 68px; --maxw: 1200px; }
body { color: #f7f7f8; }
body::before {
  background-image: radial-gradient(ellipse 125% 90% at 50% 0%, rgba(0,0,0,.56), rgba(0,0,0,.82)), var(--tex-dirt);
}
h1, h2, h3, h4 { text-wrap: balance; }
p { text-wrap: pretty; }

.nav { height: var(--nav-h); border-bottom-width: 3px; }
.nav__inner { padding-inline: clamp(16px, 3vw, 28px); }
.brand__mark { width: 31px; height: 31px; }
.brand__text { font-size: 1.08rem; }
.brand__tag { padding: 3px 7px; font-size: .52rem; }
.nav__links { gap: 5px; }
.nav__links a:not(.btn) { padding: 8px 12px; font-size: .76rem; font-weight: 600; }

@media (max-width: 1080px) {
  .nav__toggle { display: none; }
  .nav__links {
    position: static;
    flex-direction: row;
    align-items: center;
    gap: 4px;
    padding: 0;
    max-height: none;
    overflow: visible;
    visibility: visible;
    opacity: 1;
    transform: none;
    background: none;
    border: 0;
    box-shadow: none;
  }
  .nav__links a:not(.btn) { padding: 8px 10px; font-size: .74rem; background: transparent; border-color: transparent; }
}
@media (max-width: 510px) {
  .nav__inner { padding-inline: 12px; gap: 6px; }
  .brand { gap: 7px; }
  .brand__tag { display: none; }
  .brand__mark { width: 28px; height: 28px; }
  .brand__text { font-size: .96rem; }
  .nav__links a:not(.btn) { padding: 7px 6px; font-size: .68rem; }
}

.title-screen { min-height: clamp(520px, 74svh, 680px); }
.title-screen__bg::after { background: linear-gradient(180deg, rgba(0,0,0,.44), rgba(0,0,0,.63)); }
.title-screen__inner { max-width: 650px; }
.title-screen__logo { width: min(585px, 89vw); }
.title-screen__logo img { filter: drop-shadow(5px 6px 0 rgba(0,0,0,.52)); }
.title-screen .splash { right: 1%; color: #fff45d; }
.title-screen__tagline {
  max-width: 520px;
  margin-top: 38px;
  margin-bottom: 27px;
  color: #e1e1e4;
  font-size: .9rem;
}
.mc-menu { max-width: 420px; gap: 9px; }
.mc-menu .btn { min-height: 48px; }
.btn {
  border-width: 3px;
  transition: color .12s linear, background .12s linear, box-shadow .12s linear, transform .08s ease-out;
}
.btn:hover { transform: translateY(-1px); }
.btn:active { transform: translateY(2px); }

.strip { border-bottom-width: 3px; }
.strip__inner { min-height: 48px; padding-block: 8px; }
.strip__tag { padding: 4px 9px; }

.project-section { padding: 58px 0 66px; }
.project-board {
  border-width: 3px;
  box-shadow: inset 3px 3px 0 rgba(255,255,255,.14), inset -3px -3px 0 rgba(0,0,0,.58), 8px 8px 0 rgba(0,0,0,.34);
}
.project-board__bar { min-height: 39px; align-items: center; padding: 9px 14px; border-bottom-width: 3px; }
.project-layout { grid-template-columns: minmax(0, .9fr) minmax(460px, 1.1fr); }
.project-summary, .roadmap-panel { padding: clamp(26px, 3vw, 38px); }
.project-summary { border-right-width: 3px; }
.project-summary h2 { font-size: clamp(1.42rem, 2.3vw, 1.9rem); line-height: 1.18; }
.project-summary__lead { color: #d8d8dd; line-height: 1.68; }
.project-point { padding: 11px 13px; border-color: #111; }
.project-point h3 { font-weight: 650; }
.project-point p { line-height: 1.45; }
.project-point > span { color: #72f372; }
.project-note { background: rgba(0,0,0,.34); }

.roadmap-panel__head h2 { font-size: clamp(1.3rem, 2vw, 1.65rem); }
.roadmap-count { padding: 6px 10px; }
.version-list { border-width: 2px; }
.version-list li {
  min-height: 58px;
  border-bottom-width: 2px;
  transition: background-color .12s linear;
}
.version-list li:hover { background-color: #393940; }
.version-list li.current:hover { background-color: #465339; }
.version-list li.special:hover { background-color: #3e394b; }
.version-list strong { font-size: .82rem; font-weight: 650; }
.version-list .status { padding: 5px 9px; }
.roadmap-panel__note { line-height: 1.5; }

.footer {
  margin-top: 0;
  padding: 25px 0;
  background-image: linear-gradient(rgba(0,0,0,.22), rgba(0,0,0,.22)), var(--tex-obsidian);
  border-top-width: 3px;
}
.footer__bottom { padding-top: 0; border-top: 0; line-height: 1.55; }
.footer__legal { color: #b9b6c0; }

@media (max-width: 940px) {
  .project-layout { grid-template-columns: 1fr; }
  .project-summary { border-right: 0; border-bottom-width: 3px; }
}
@media (max-width: 600px) {
  .title-screen { min-height: calc(100svh - var(--nav-h)); padding-inline: 16px; }
  .title-screen__tagline { margin-top: 32px; font-size: .82rem; }
  .mc-menu .btn { min-height: 46px; font-size: .76rem; }
  .strip__inner { justify-content: center; text-align: center; }
  .strip a { width: 100%; margin-left: 0; }
  .project-section { padding: 40px 0 49px; }
  .project-board__bar { padding-inline: 11px; }
  .project-summary, .roadmap-panel { padding: 25px 17px; }
  .project-summary__lead { font-size: .86rem; }
  .footer { padding-block: 22px; }
}

/* Sleek finishing layer */
body::before {
  background-image: linear-gradient(rgba(22,15,10,.7), rgba(22,15,10,.78)), var(--tex-dirt);
}
.nav {
  background-color: #303035;
  background-image: linear-gradient(rgba(12,12,14,.7), rgba(12,12,14,.7)), var(--tex-stone);
  box-shadow: inset 0 2px 0 rgba(255,255,255,.11), inset 0 -2px 0 rgba(0,0,0,.65), 0 4px 0 rgba(0,0,0,.22);
}
.nav.is-scrolled {
  box-shadow: inset 0 2px 0 rgba(255,255,255,.11), inset 0 -2px 0 rgba(0,0,0,.65), 0 5px 0 rgba(0,0,0,.34);
}
.brand__mark { filter: drop-shadow(2px 3px 0 rgba(0,0,0,.5)); }
.brand__text { text-shadow: 2px 2px 0 #202024; }
.brand__text span { text-shadow: 2px 2px 0 #315e0a; }
.nav__links a:not(.btn) { position: relative; color: #d6d6da; }
.nav__links a:not(.btn)::after {
  content: "";
  position: absolute;
  left: 11px;
  right: 11px;
  bottom: 3px;
  height: 2px;
  background: var(--mc-green);
  transform: scaleX(0);
  transition: transform .14s ease-out;
}
.nav__links a:not(.btn):hover { color: #fff; background: rgba(255,255,255,.045); border-color: rgba(255,255,255,.16); }
.nav__links a:not(.btn):hover::after { transform: scaleX(1); }

.title-screen__bg { background-position: center 45%; }
.title-screen__bg::after {
  background: radial-gradient(ellipse 65% 56% at 50% 42%, rgba(0,0,0,.12), rgba(0,0,0,.64)), linear-gradient(180deg, rgba(4,8,13,.2), rgba(4,8,13,.42));
}
.title-screen__logo { transform: translateZ(0); }
.title-screen__tagline {
  padding: 6px 13px;
  background: rgba(0,0,0,.24);
  border-left: 2px solid rgba(255,255,255,.16);
  border-right: 2px solid rgba(255,255,255,.16);
  text-shadow: 1px 2px 0 rgba(0,0,0,.72);
}
.mc-menu .btn {
  background-color: #676b70;
  box-shadow: inset 2px 2px 0 #aeb3b8, inset -2px -2px 0 #35383b, 0 3px 0 rgba(0,0,0,.34);
}
.mc-menu .btn:hover {
  background-color: #747a80;
  box-shadow: inset 2px 2px 0 #c5cacf, inset -2px -2px 0 #3b3f42, 0 0 0 2px #fff, 0 4px 0 rgba(0,0,0,.34);
}
.mc-menu .btn--primary {
  background-color: #438b39;
  box-shadow: inset 2px 2px 0 #76bd69, inset -2px -2px 0 #255b21, 0 3px 0 rgba(0,0,0,.34);
}
.mc-menu .btn--primary:hover {
  background-color: #4d9c41;
  box-shadow: inset 2px 2px 0 #88cf7a, inset -2px -2px 0 #2a6425, 0 0 0 2px #fff, 0 4px 0 rgba(0,0,0,.34);
}
.title-screen__version, .title-screen__legal { opacity: .84; }

.strip {
  background-color: #242429;
  background-image: linear-gradient(rgba(0,0,0,.55), rgba(0,0,0,.55)), var(--tex-deepslate);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), inset 0 -1px 0 rgba(0,0,0,.5);
}
.strip__inner { color: #d7d7db; }
.strip__tag { border-width: 1px; box-shadow: inset 1px 1px 0 #ffd27f, inset -1px -1px 0 #b87a00; }

.project-section {
  background-image: linear-gradient(rgba(28,19,13,.58), rgba(28,19,13,.68)), var(--tex-dirt);
}
.project-board {
  background: #29292f;
  border-color: #08080a;
  box-shadow: inset 2px 2px 0 rgba(255,255,255,.1), inset -2px -2px 0 rgba(0,0,0,.62), 6px 7px 0 rgba(0,0,0,.3);
}
.project-board__bar {
  color: #c3c3c9;
  background-color: #414147;
  background-image: linear-gradient(rgba(20,20,23,.48), rgba(20,20,23,.48)), var(--tex-stone);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.11);
}
.project-summary { background: linear-gradient(145deg, rgba(255,255,255,.025), transparent 48%); }
.project-summary__lead { color: #cfcfd5; }
.project-points { gap: 8px; }
.project-point {
  background: #232328;
  border-color: #111114;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.075), inset -1px -1px 0 rgba(0,0,0,.46);
  transition: background-color .12s linear, transform .12s ease-out;
}
.project-point:hover { background: #29292f; transform: translateX(2px); }
.project-point > span {
  border-width: 1px;
  background: #17171b;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.08);
}
.project-note { border-left-width: 4px; box-shadow: inset 0 1px 0 rgba(255,255,255,.05); }

.roadmap-panel { background: #202025; }
.roadmap-count { color: #ffc43f; border-width: 1px; box-shadow: inset 1px 1px 0 rgba(255,255,255,.08); }
.version-list {
  border-color: #09090b;
  box-shadow: 0 0 0 1px rgba(255,255,255,.045);
}
.version-list li {
  background: #29292f;
  border-bottom-color: #111114;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.055);
}
.version-list li.current {
  background: #37432f;
  box-shadow: inset 4px 0 0 #64d45a, inset 0 1px 0 rgba(255,255,255,.08);
}
.version-list li.special { background: #302d39; }
.version-list__number { border-width: 1px; color: #ffc13b; }
.version-list .status {
  border-width: 1px;
  background: #1b1b20;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.1), inset -1px -1px 0 rgba(0,0,0,.45);
}
.version-list .status.current { color: #ffd257; }

.footer {
  box-shadow: inset 0 2px 0 rgba(255,255,255,.04);
  background-image: linear-gradient(rgba(0,0,0,.34), rgba(0,0,0,.34)), var(--tex-obsidian);
}
.footer__legal { max-width: 82ch; }

@media (max-width: 600px) {
  .title-screen__tagline { padding-inline: 8px; }
  .project-point:hover { transform: none; }
  .project-board { box-shadow: inset 2px 2px 0 rgba(255,255,255,.1), inset -2px -2px 0 rgba(0,0,0,.62), 4px 4px 0 rgba(0,0,0,.3); }
}

/* Cleaner block palette: deepslate page, polished deepslate chrome. */
:root {
  --tex-deepslate: url("../img/blocks/deepslate_tiles.png");
  --tex-stone: url("../img/blocks/polished_deepslate.png");
}
body::before {
  background-color: #17171b;
  background-image: linear-gradient(rgba(10,10,12,.68), rgba(10,10,12,.78)), var(--tex-deepslate);
  background-size: auto, 32px 32px;
}
.nav {
  background-color: #242429;
  background-image: linear-gradient(rgba(10,10,12,.62), rgba(10,10,12,.62)), var(--tex-stone);
  background-size: auto, 32px 32px;
}
.project-section {
  background-color: #1d1d22;
  background-image: linear-gradient(rgba(13,13,16,.56), rgba(13,13,16,.7)), var(--tex-deepslate);
  background-size: auto, 32px 32px;
}
.project-section::before {
  height: 4px;
  background: #58a848;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.22), inset 0 -1px 0 rgba(0,0,0,.48);
}
.project-board__bar {
  min-height: 44px;
  justify-content: center;
  color: #e5e5e8;
  font-size: .78rem;
  font-weight: 650;
  letter-spacing: .02em;
  text-transform: none;
  background-color: #35353a;
  background-image: linear-gradient(rgba(18,18,21,.44), rgba(18,18,21,.44)), var(--tex-stone);
  background-size: auto, 32px 32px;
  text-shadow: 1px 2px 0 rgba(0,0,0,.7);
}
.footer {
  background-size: auto, 32px 32px;
}

/* Remove large texture bands; keep block styling inside the interface. */
body::before {
  background-color: #111217;
  background-image: radial-gradient(ellipse 100% 70% at 50% 0%, #25272d 0%, #17181d 48%, #101116 100%);
  background-size: cover;
}
.nav {
  background-color: #24262b;
  background-image: linear-gradient(180deg, #303239 0%, #202126 100%);
  background-size: cover;
}
.project-section {
  padding: 52px 0 46px;
  background-color: #15161b;
  background-image: linear-gradient(180deg, #1c1e23 0%, #14151a 58%, #101116 100%);
  background-size: cover;
  border-top-width: 3px;
  border-bottom: 0;
}
.project-section::before { display: none; }
.project-board {
  border-top-color: #4a9340;
  box-shadow: inset 2px 2px 0 rgba(255,255,255,.09), inset -2px -2px 0 rgba(0,0,0,.62), 0 10px 26px rgba(0,0,0,.28);
}
.project-layout { min-height: 0; }
.footer {
  border-top: 3px solid #050507;
  box-shadow: inset 0 2px 0 rgba(255,255,255,.035);
}
@media (max-width: 600px) {
  .project-section { padding: 34px 0 35px; }
}

/* Keep the deepslate field, without the redundant texture bars. */
body::before {
  background-color: #15161a;
  background-image: linear-gradient(rgba(10,10,12,.68), rgba(10,10,12,.76)), var(--tex-deepslate);
  background-size: auto, 32px 32px;
}
.project-section {
  background-color: #18191d;
  background-image: linear-gradient(rgba(12,12,14,.58), rgba(12,12,14,.68)), var(--tex-deepslate);
  background-size: auto, 32px 32px;
}

/* Seamless transitions between the large page surfaces. */
.title-screen { border-bottom: 0; }
.project-section { border: 0; }
.footer { border-top: 0; }

/* Static informational panels: no pointer hover animation. */
.project-point { transition: none; }
.project-point:hover { background: #232328; transform: none; }
.version-list li { transition: none; }
.version-list li:hover { background: #29292f; }
.version-list li.current:hover { background: #37432f; }
.version-list li.special:hover { background: #302d39; }
.status.planned { color: var(--mc-aqua); }

/* High-resolution recreation of the classic title-seed panorama. */
.title-screen__bg {
  animation: none;
  will-change: auto;
  background: linear-gradient(180deg, #5d82c4 0%, #8fb8ef 50%, #2b4522 100%);
}
.title-screen__bg::after { z-index: 1; }
.title-panorama {
  position: absolute;
  inset: -5px;
  z-index: 0;
  display: block;
  width: calc(100% + 10px);
  height: calc(100% + 10px);
  opacity: 0;
  image-rendering: auto;
  filter: blur(1.8px) saturate(.9) brightness(.82);
  transition: opacity .25s linear;
}
.title-panorama.is-ready { opacity: 1; }
.title-screen__tagline {
  border-left: 0;
  border-right: 0;
}

/* Roadmap accents follow their status labels. */
.version-list li.current,
.version-list li.current:hover {
  background: #463d25;
  box-shadow: inset 4px 0 0 #ffd257, inset 0 1px 0 rgba(255,255,255,.08);
}
.version-list li.planned,
.version-list li.planned:hover {
  background: #263d46;
  box-shadow: inset 4px 0 0 var(--mc-aqua), inset 0 1px 0 rgba(255,255,255,.08);
}
.version-list li.current .version-list__number {
  color: #ffd257;
  border-color: #8f742e;
}
.version-list li.planned .version-list__number {
  color: var(--mc-aqua);
  border-color: #337d8c;
}

/* Account requirement for every listed release. */
.project-auth {
  display: flex;
  gap: 12px;
  align-items: center;
  margin: 0 0 16px;
  padding: 13px 14px;
  background: #263940;
  border: 1px solid #11171a;
  box-shadow: inset 3px 0 0 var(--mc-aqua), inset 0 1px 0 rgba(255,255,255,.065);
}
.project-auth > span {
  width: 34px;
  height: 34px;
  flex: 0 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  gap: 2px;
  padding: 5px;
  background: #171b1e;
  border: 2px solid #101719;
  box-shadow: inset 1px 1px 0 rgba(255,255,255,.12), inset -1px -1px 0 rgba(0,0,0,.5);
}
.microsoft-logo > span:nth-child(1) { background: #f25022; }
.microsoft-logo > span:nth-child(2) { background: #7fba00; }
.microsoft-logo > span:nth-child(3) { background: #00a4ef; }
.microsoft-logo > span:nth-child(4) { background: #ffb900; }
.project-auth strong {
  display: block;
  margin-bottom: 3px;
  color: #dffaff;
  font-size: .72rem;
}
.project-auth p {
  margin: 0;
  color: #bdcdd1;
  font-size: .67rem;
  line-height: 1.5;
}
.roadmap-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: -7px 0 16px;
}
.roadmap-legend span {
  padding: 4px 8px;
  font-size: .54rem;
  font-weight: 700;
  background: #19191d;
  border: 1px solid #08080a;
}
.roadmap-legend__current { color: #ffd257; box-shadow: inset 3px 0 0 #ffd257; }
.roadmap-legend__planned { color: var(--mc-aqua); box-shadow: inset 3px 0 0 var(--mc-aqua); }
.roadmap-disclaimer {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  margin: -4px 0 16px;
  padding: 13px 14px;
  color: #fff1c5;
  background: #3b2d19;
  border: 2px solid #d79b24;
  box-shadow: inset 0 1px 0 rgba(255,235,164,.2), 0 0 0 1px #120d05;
}
.roadmap-disclaimer__mark {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  color: #211300;
  font-size: 1rem;
  font-weight: 800;
  background: #ffc13b;
  border: 2px solid #140d02;
  box-shadow: inset 2px 2px 0 #ffe19a, inset -2px -2px 0 #a56c00;
}
.roadmap-disclaimer strong {
  display: block;
  margin-bottom: 5px;
  color: #ffd86f;
  font-size: .72rem;
  line-height: 1.4;
  text-transform: uppercase;
  letter-spacing: .025em;
}
.roadmap-disclaimer p {
  margin: 0;
  color: #e4d8bc;
  font-size: .65rem;
  line-height: 1.55;
}
.version-era + .version-era { margin-top: 18px; }
.version-era__head {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  margin-bottom: 7px;
  padding-bottom: 6px;
  border-bottom: 1px solid rgba(255,255,255,.09);
}
.version-era__head h3 {
  margin: 0;
  color: #f1f1f3;
  font-size: .8rem;
}
.version-era__head span {
  color: var(--ink-3);
  font-size: .56rem;
  text-transform: uppercase;
  letter-spacing: .07em;
}
.version-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 5px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.version-grid li {
  min-width: 0;
  min-height: 44px;
  display: grid;
  grid-template-columns: 27px minmax(0, 1fr);
  gap: 7px;
  align-items: center;
  padding: 6px 7px 6px 5px;
  background: #263940;
  border: 1px solid #11171a;
  box-shadow: inset 3px 0 0 #55d9ee, inset 0 1px 0 rgba(255,255,255,.055);
}
.version-grid li > span {
  width: 25px;
  height: 25px;
  display: grid;
  place-items: center;
  color: var(--mc-aqua);
  font-size: .52rem;
  background: #171b1e;
  border: 1px solid #337d8c;
}
.version-grid strong {
  min-width: 0;
  display: block;
  overflow-wrap: anywhere;
  color: #e7e7eb;
  font-size: .62rem;
  line-height: 1.28;
}
.version-grid small {
  display: block;
  margin-top: 2px;
  color: #efd079;
  font-size: .51rem;
  line-height: 1.25;
}
.version-grid li.current {
  background: #463d25;
  border-color: #241e0e;
  box-shadow: inset 3px 0 0 #ffd257, inset 0 1px 0 rgba(255,255,255,.08);
}
.version-grid li.current > span {
  color: #ffd257;
  background: #201c12;
  border-color: #8f742e;
}
.roadmap-panel__note {
  margin-top: 16px;
  padding: 11px 12px;
  color: #bdbdc4;
  text-align: left;
  line-height: 1.55;
  background: rgba(0,0,0,.22);
  border-left: 3px solid var(--mc-aqua);
}
.roadmap-panel__note strong { color: #b9f5ff; }

@media (max-width: 1120px) and (min-width: 941px) {
  .version-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  .version-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 370px) {
  .version-grid { grid-template-columns: 1fr; }
}

/* Updates and newsletter pages. */
.content-page {
  min-height: calc(100vh - var(--nav-h));
  padding: 70px 0 88px;
}
.page-intro {
  max-width: 780px;
  margin-bottom: 34px;
}
.page-intro h1 { margin-bottom: 14px; }
.page-intro p { max-width: 62ch; font-size: .94rem; }
.page-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 23px; }
.updates-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 285px;
  gap: 24px;
  align-items: start;
}
.updates-feed { display: grid; gap: 14px; }
.update-card {
  display: grid;
  grid-template-columns: 118px minmax(0, 1fr);
  gap: 22px;
  padding: 25px;
  color: inherit;
  background: #2c2c33;
  border: 3px solid #08080a;
  box-shadow: inset 3px 3px 0 rgba(255,255,255,.11), inset -3px -3px 0 rgba(0,0,0,.48);
}
.update-card:hover { color: inherit; text-decoration: none; border-color: #55d9ee; }
.update-card__date { color: var(--mc-gold); font-size: .63rem; line-height: 1.45; text-transform: uppercase; }
.update-card__date span { display: block; margin-top: 5px; color: var(--ink-3); }
.update-card h2 { margin-bottom: 8px; font-size: 1.12rem; }
.update-card p { margin: 0; font-size: .8rem; line-height: 1.65; }
.update-card__link { display: inline-block; margin-top: 13px; color: var(--mc-aqua); font-size: .68rem; font-weight: 700; }
.updates-side,
.signup-panel,
.post-body {
  padding: 26px;
  background: #2c2c33;
  border: 3px solid #08080a;
  box-shadow: inset 3px 3px 0 rgba(255,255,255,.11), inset -3px -3px 0 rgba(0,0,0,.48), 7px 7px 0 rgba(0,0,0,.28);
}
.updates-side { position: sticky; top: calc(var(--nav-h) + 22px); }
.updates-side h2 { font-size: .95rem; }
.updates-side p { font-size: .72rem; line-height: 1.65; }
.updates-side .btn { width: 100%; }
.updates-side .btn + .btn { margin-top: 8px; }
.post-shell { max-width: 850px; margin-inline: auto; }
.post-back { display: inline-block; margin-bottom: 22px; font-size: .7rem; }
.post-head { margin-bottom: 22px; }
.post-head__meta { display: flex; flex-wrap: wrap; gap: 9px; align-items: center; margin-bottom: 15px; }
.post-head time { color: var(--mc-gold); font-size: .65rem; }
.post-body { padding: clamp(25px, 5vw, 48px); }
.post-body h2 { margin-top: 32px; font-size: 1.08rem; }
.post-body h2:first-child { margin-top: 0; }
.post-body p, .post-body li { font-size: .85rem; line-height: 1.8; }
.post-body ul { margin: 0 0 1.2rem; padding-left: 22px; color: var(--ink-2); }
.post-body li + li { margin-top: 7px; }
.post-body li::marker { color: var(--mc-green); }
.signup-layout {
  display: grid;
  grid-template-columns: minmax(0, .88fr) minmax(360px, 1.12fr);
  gap: 26px;
  align-items: start;
}
.signup-copy { padding: 18px 0; }
.signup-copy h2 { margin-bottom: 13px; }
.signup-list { margin: 24px 0 0; padding: 0; list-style: none; }
.signup-list li { position: relative; margin-bottom: 12px; padding-left: 24px; color: var(--ink-2); font-size: .78rem; }
.signup-list li::before { content: ""; position: absolute; left: 0; top: .52em; width: 11px; height: 11px; background: var(--mc-green); box-shadow: inset 0 0 0 3px rgba(0,0,0,.35), 2px 2px 0 #000; }
.newsletter-form .field { margin-bottom: 14px; }
.newsletter-form .btn { width: 100%; }
.newsletter-status { margin: 14px 0 0; padding: 11px 12px; color: #e6d5ae; font-size: .67rem; line-height: 1.55; background: #3b2d19; border-left: 4px solid var(--mc-gold); }
.newsletter-privacy { margin: 13px 0 0; color: var(--ink-3); font-size: .62rem; line-height: 1.6; }
.newsletter-response-frame { position: absolute; width: 1px; height: 1px; border: 0; opacity: 0; pointer-events: none; }
.newsletter-form.is-submitted .field,
.newsletter-form.is-submitted .btn,
.newsletter-form.is-submitted .newsletter-privacy { display: none; }
.newsletter-form.is-submitted .newsletter-status { margin-top: 0; color: #d8ffd8; background: #203820; border-left-color: var(--mc-green); }
.confirmation-card {
  max-width: 680px;
  margin-inline: auto;
  padding: clamp(28px, 6vw, 54px);
  text-align: center;
  background: #2c2c33;
  border: 3px solid #08080a;
  box-shadow: inset 3px 3px 0 rgba(255,255,255,.12), inset -3px -3px 0 rgba(0,0,0,.5), 8px 8px 0 rgba(0,0,0,.3);
}
.confirmation-card__mark {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  margin: 0 auto 22px;
  color: #163416;
  font-size: 1.3rem;
  font-weight: 800;
  background: var(--mc-green);
  border: 3px solid #050905;
  box-shadow: inset 3px 3px 0 #a7ffa7, inset -3px -3px 0 #249124;
}
.confirmation-card h1 { margin-bottom: 14px; }
.confirmation-card p { max-width: 52ch; margin-inline: auto; }
.confirmation-card .page-actions { justify-content: center; }
.footer__links { display: flex; flex-wrap: wrap; gap: 15px; }
.footer__links a { color: var(--ink-2); font-size: .7rem; }
.footer__links a:hover { color: var(--mc-yellow); }
@media (max-width: 820px) {
  .updates-layout, .signup-layout { grid-template-columns: 1fr; }
  .updates-side { position: static; }
}
@media (max-width: 560px) {
  .content-page { padding-block: 48px 64px; }
  .update-card { grid-template-columns: 1fr; gap: 10px; padding: 20px; }
  .signup-panel, .post-body { padding: 22px; }
}

/* Project, privacy, and contact pages. */
.info-shell { max-width: 930px; margin-inline: auto; }
.info-card {
  padding: clamp(25px, 5vw, 46px);
  background: #2c2c33;
  border: 3px solid #08080a;
  box-shadow: inset 3px 3px 0 rgba(255,255,255,.11), inset -3px -3px 0 rgba(0,0,0,.48), 8px 8px 0 rgba(0,0,0,.28);
}
.info-card + .info-card { margin-top: 18px; }
.info-card h2 { margin-top: 32px; font-size: 1.08rem; }
.info-card h2:first-child { margin-top: 0; }
.info-card h3 { margin-top: 24px; font-size: .9rem; }
.info-card p, .info-card li { font-size: .82rem; line-height: 1.8; }
.info-card ul { margin: 0 0 1.2rem; padding-left: 22px; color: var(--ink-2); }
.info-card li + li { margin-top: 7px; }
.info-card li::marker { color: var(--mc-green); }
.info-meta { margin: -4px 0 24px; color: var(--ink-3); font-size: .65rem; }
.info-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 24px 0; }
.info-tile { padding: 19px; background: #232328; border: 2px solid #08080a; box-shadow: inset 2px 2px 0 rgba(255,255,255,.08); }
.info-tile__number { display: block; margin-bottom: 9px; color: var(--mc-aqua); font-size: .62rem; }
.info-tile h3 { margin: 0 0 7px; font-size: .82rem; }
.info-tile p { margin: 0; color: var(--ink-3); font-size: .69rem; line-height: 1.65; }
.contact-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.contact-card { padding: 24px; background: #2c2c33; border: 3px solid #08080a; box-shadow: inset 3px 3px 0 rgba(255,255,255,.1), inset -3px -3px 0 rgba(0,0,0,.48); }
.contact-card h2 { font-size: .98rem; }
.contact-card p { font-size: .75rem; line-height: 1.7; }
.contact-card .btn { margin-top: 7px; }
.legal-note { padding: 13px 15px; color: #e6d5ae; font-size: .69rem; line-height: 1.65; background: #3b2d19; border-left: 4px solid var(--mc-gold); }
@media (max-width: 760px) {
  .info-grid, .contact-grid { grid-template-columns: 1fr; }
}

/* Footer alignment: legal copy stays left while navigation forms a clean right rail. */
.footer__bottom {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  justify-content: initial;
  gap: 18px 40px;
}
.footer__legal { max-width: 62ch; }
.footer__links {
  justify-content: flex-end;
  gap: 0;
}
.footer__links a {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 11px;
  text-decoration: none;
  border-left: 1px solid rgba(255,255,255,.12);
}
.footer__links a:first-child { border-left: 0; }
.footer__links a:last-child { padding-right: 0; }

@media (max-width: 760px) {
  .footer__bottom {
    grid-template-columns: 1fr;
    justify-items: center;
    gap: 12px;
    text-align: center;
  }
  .footer__legal { max-width: 68ch; }
  .footer__links { justify-content: center; }
  .footer__links a:last-child { padding-right: 11px; }
}

@media (max-width: 520px) {
  .footer__links {
    width: min(100%, 330px);
    row-gap: 4px;
  }
  .footer__links a {
    flex: 0 1 31%;
    justify-content: center;
    padding-inline: 5px;
    border-left: 0;
  }
  .footer__links a:last-child { padding-right: 5px; }
}

/* Alpha testing phase */
.testing-strip {
  position: relative;
  z-index: 2;
  color: #f4f7f4;
  background: linear-gradient(90deg, #17221a, #1c2a20 52%, #17221a);
  border-block: 3px solid #080a08;
  box-shadow: inset 0 1px 0 rgba(118, 232, 103, .22), inset 0 -1px 0 rgba(0, 0, 0, .72);
}
.testing-strip__inner {
  min-height: 66px;
  display: flex;
  align-items: center;
  gap: 14px;
  padding-block: 11px;
}
.testing-strip__pulse {
  width: 13px;
  height: 13px;
  flex: 0 0 auto;
  background: var(--mc-green);
  border: 2px solid #0b160b;
  box-shadow: 0 0 0 3px rgba(121, 193, 15, .12), 0 0 18px rgba(121, 193, 15, .36);
}
.testing-strip__inner div { display: flex; flex-wrap: wrap; gap: 5px 11px; align-items: baseline; }
.testing-strip__inner strong { font-size: .82rem; }
.testing-strip__inner span:not(.testing-strip__pulse) { color: #aeb8b0; font-size: .72rem; }
.testing-strip__inner a { margin-left: auto; color: var(--mc-green); font-size: .74rem; font-weight: 750; white-space: nowrap; }
.testing-strip__inner a:hover { color: var(--mc-yellow); }
.project-note--testing { border-left-color: var(--mc-green); background: #1a2b1d; }
.project-note--testing > span { color: var(--mc-green); }

.testing-page {
  min-height: calc(100vh - var(--nav-h));
  background-color: #17171b;
  background-image: linear-gradient(rgba(10,10,12,.76), rgba(10,10,12,.86)), var(--tex-deepslate);
  background-size: auto, 32px 32px;
}
.testing-hero {
  position: relative;
  overflow: hidden;
  padding: clamp(68px, 9vw, 118px) 0 clamp(62px, 8vw, 98px);
  background:
    linear-gradient(90deg, rgba(12,12,15,.91) 0%, rgba(20,21,24,.85) 58%, rgba(15,18,16,.9) 100%),
    var(--tex-deepslate);
  background-size: auto, 32px 32px;
  border-bottom: 4px solid #070807;
  box-shadow: inset 0 -3px 0 rgba(255,255,255,.035);
}
.testing-hero::after {
  content: "ALPHA";
  position: absolute;
  right: -20px;
  bottom: -58px;
  color: rgba(255, 255, 255, .026);
  font-size: clamp(8rem, 21vw, 20rem);
  font-weight: 900;
  line-height: 1;
  letter-spacing: -.07em;
  pointer-events: none;
}
.testing-hero__inner { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr); gap: clamp(42px, 7vw, 88px); align-items: center; }
.testing-hero__copy { max-width: 680px; }
.testing-hero h1 { max-width: 13ch; margin: 17px 0 21px; font-size: clamp(2.35rem, 5.8vw, 5rem); line-height: .98; letter-spacing: -.045em; }
.testing-hero__copy > p { max-width: 62ch; color: #c1c9c2; font-size: clamp(.88rem, 1.45vw, 1.05rem); line-height: 1.75; }
.testing-hero .page-actions .btn { white-space: normal; text-align: center; }
.test-console {
  background: #292a30;
  border: 3px solid #08080a;
  box-shadow: inset 3px 3px 0 rgba(255,255,255,.1), inset -3px -3px 0 rgba(0,0,0,.48), 8px 8px 0 rgba(0,0,0,.32);
}
.test-console__head { min-height: 49px; display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 0 18px; color: #b5b7bc; font-size: .62rem; letter-spacing: .1em; background: #35363c; border-bottom: 3px solid #08080a; box-shadow: inset 0 2px 0 rgba(255,255,255,.1); }
.test-live { display: inline-flex; align-items: center; gap: 8px; color: #9cff91; }
.test-live i { width: 9px; height: 9px; background: var(--mc-green); box-shadow: 0 0 12px rgba(121,193,15,.48); }
.test-console__grid { display: grid; grid-template-columns: 1fr 1fr; margin: 0; }
.test-console__grid div { min-width: 0; padding: 20px; border-right: 2px solid #111114; border-bottom: 2px solid #111114; }
.test-console__grid div:nth-child(2n) { border-right: 0; }
.test-console__grid dt { margin-bottom: 7px; color: #96999f; font-size: .59rem; letter-spacing: .08em; text-transform: uppercase; }
.test-console__grid dd { margin: 0; color: #f2f5f2; font-size: .86rem; font-weight: 750; }
.test-console__meter { display: grid; grid-template-columns: repeat(8, 1fr); gap: 4px; padding: 18px 20px 10px; }
.test-console__meter span { height: 8px; background: #4cae40; border-top: 1px solid #75d469; border-bottom: 2px solid #1e521b; }
.test-console__meter span:nth-last-child(-n+2) { background: #3b3c42; border-top-color: #4c4e55; border-bottom-color: #202126; }
.test-console > p { margin: 5px 20px 20px; color: #a9abb1; font-size: .66rem; line-height: 1.6; }

.test-access { position: relative; z-index: 2; padding: 30px 0; background-color: #24252a; background-image: linear-gradient(rgba(12,12,14,.58), rgba(12,12,14,.7)), var(--tex-deepslate); background-size: auto, 32px 32px; border-bottom: 4px solid #08080a; }
.test-access__bar { min-height: 118px; display: grid; grid-template-columns: minmax(230px, .7fr) minmax(320px, 1.3fr) auto; gap: 30px; align-items: center; padding: 24px 28px; background: #2c2c33; border: 3px solid #08080a; border-top-color: #4faf45; box-shadow: inset 3px 3px 0 rgba(255,255,255,.1), inset -3px -3px 0 rgba(0,0,0,.48), 7px 7px 0 rgba(0,0,0,.28); }
.test-access__bar h2 { margin: 4px 0 0; font-size: 1.15rem; }
.test-access__bar > p { margin: 0; color: #aab2ad; font-size: .75rem; line-height: 1.65; }

.testing-content { padding: clamp(65px, 8vw, 105px) 0; background: rgba(11,11,13,.74); }
.test-section-head { max-width: 760px; margin-bottom: 38px; }
.test-section-head h2 { margin: 12px 0 14px; font-size: clamp(1.8rem, 4vw, 3.2rem); }
.test-section-head p { max-width: 68ch; color: #aeb6b0; font-size: .86rem; line-height: 1.75; }
.tester-requirements { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-bottom: clamp(58px, 8vw, 92px); }
.tester-requirements article { min-width: 0; padding: 26px 23px 28px; background: #232328; border: 2px solid #08080a; box-shadow: inset 2px 2px 0 rgba(255,255,255,.08), inset -2px -2px 0 rgba(0,0,0,.35), 5px 5px 0 rgba(0,0,0,.22); }
.tester-requirements article > span { display: block; margin-bottom: 27px; color: var(--mc-green); font-size: .65rem; font-weight: 800; }
.tester-requirements h3 { margin: 0 0 10px; font-size: .9rem; }
.tester-requirements p { margin: 0; color: #959f98; font-size: .7rem; line-height: 1.72; }
.testing-columns { display: grid; grid-template-columns: 1.12fr .88fr; gap: 20px; margin-bottom: 20px; }
.test-panel { padding: clamp(27px, 4vw, 42px); background: #2c2c33; border: 3px solid #08080a; border-top-color: #3daab5; box-shadow: inset 3px 3px 0 rgba(255,255,255,.09), inset -3px -3px 0 rgba(0,0,0,.45), 7px 7px 0 rgba(0,0,0,.25); }
.test-panel--warning { border-top-color: #bd8b17; background: #302b22; }
.test-panel h2 { margin: 12px 0 21px; font-size: clamp(1.25rem, 2.5vw, 1.8rem); }
.test-panel p, .test-panel li { color: #aab1ae; font-size: .76rem; line-height: 1.7; }
.test-panel ul { margin: 18px 0 0; padding-left: 21px; }
.test-panel li + li { margin-top: 9px; }
.test-checklist { padding: 0 !important; list-style: none; }
.test-checklist li { display: grid; grid-template-columns: 13px 1fr; gap: 12px; align-items: start; }
.test-checklist li span { width: 11px; height: 11px; margin-top: .38em; background: #1d3520; border: 2px solid #4ac83f; }
.bug-report { display: grid; grid-template-columns: minmax(0, .9fr) minmax(360px, 1.1fr); gap: clamp(35px, 7vw, 78px); align-items: center; margin-top: 20px; padding: clamp(34px, 6vw, 62px); background: #2c2c33; border: 3px solid #08080a; box-shadow: inset 3px 3px 0 rgba(255,255,255,.09), inset -3px -3px 0 rgba(0,0,0,.45), 7px 7px 0 rgba(0,0,0,.25); }
.bug-report__intro h2 { margin: 12px 0 16px; font-size: clamp(1.4rem, 3vw, 2.25rem); }
.bug-report__intro p { color: #aab1ae; font-size: .78rem; line-height: 1.75; }
.report-template { min-width: 0; background: #17181b; border: 3px solid #08080a; box-shadow: inset 2px 2px 0 rgba(255,255,255,.055), 7px 7px 0 rgba(0,0,0,.28); }
.report-template__head { padding: 11px 15px; color: #a6ed9d; font-size: .61rem; letter-spacing: .1em; background: #35363c; border-bottom: 3px solid #08080a; box-shadow: inset 0 2px 0 rgba(255,255,255,.09); }
.report-template pre { overflow-x: auto; margin: 0; padding: 19px; color: #bac3bc; font: 600 .67rem/1.65 ui-monospace, SFMono-Regular, Consolas, monospace; white-space: pre-wrap; }
.test-security-note { margin: 20px 0 0; padding: 18px 21px; color: #d0c9b5; font-size: .72rem; line-height: 1.65; background: #302b22; border: 2px solid #08080a; border-left: 5px solid var(--mc-gold); box-shadow: inset 2px 2px 0 rgba(255,255,255,.055); }
.test-cta { padding: 47px 0; background-color: #24252a; background-image: linear-gradient(rgba(13,13,16,.62), rgba(13,13,16,.72)), var(--tex-deepslate); background-size: auto, 32px 32px; border-block: 4px solid #08080a; }
.test-cta__inner { display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.test-cta h2 { max-width: 23ch; margin: 8px 0 0; font-size: clamp(1.2rem, 2.5vw, 1.8rem); }
.test-cta .page-actions { margin-top: 0; justify-content: flex-end; }

@media (max-width: 980px) {
  .testing-hero__inner, .testing-columns, .bug-report { grid-template-columns: 1fr; }
  .testing-hero__copy { max-width: 760px; }
  .test-console { max-width: 660px; }
  .test-access__bar { grid-template-columns: 1fr auto; }
  .test-access__bar > p { grid-row: 2; grid-column: 1 / -1; }
  .tester-requirements { grid-template-columns: 1fr 1fr; }
}

/* Restore a real compact menu now that Testing is a primary destination. */
@media (max-width: 900px) {
  .nav__toggle { display: grid; }
  .nav__links {
    position: fixed;
    top: var(--nav-h);
    left: 0;
    right: 0;
    flex-direction: column;
    align-items: stretch;
    gap: 4px;
    padding: 14px 18px 20px;
    max-height: calc(100vh - var(--nav-h));
    overflow-y: auto;
    visibility: hidden;
    opacity: 0;
    transform: translateY(-8px);
    background: #1b1d21;
    border-bottom: 3px solid #070709;
    box-shadow: 0 8px 0 rgba(0,0,0,.28);
  }
  .nav__links.is-open { visibility: visible; opacity: 1; transform: none; }
  .nav__links a:not(.btn) { padding: 12px 14px; font-size: .8rem; background: #24272b; border-color: #0b0b0d; }
}

@media (max-width: 700px) {
  .testing-strip__inner { align-items: flex-start; }
  .testing-strip__inner a { width: 100%; margin: 3px 0 0 27px; }
  .test-access__bar { grid-template-columns: 1fr; padding: 23px 20px; }
  .test-access__bar > p { grid-row: auto; grid-column: auto; }
  .test-access__bar .btn { width: 100%; }
  .tester-requirements { grid-template-columns: 1fr; }
  .bug-report { padding: 27px 20px; }
  .test-cta__inner { align-items: flex-start; flex-direction: column; }
  .test-cta .page-actions { width: 100%; justify-content: flex-start; }
}

@media (max-width: 460px) {
  .testing-hero { padding-top: 54px; }
  .testing-hero__inner { gap: 34px; }
  .testing-hero h1 { font-size: 2.4rem; }
  .testing-hero .page-actions, .testing-hero .page-actions .btn { width: 100%; }
  .test-console__grid { grid-template-columns: 1fr; }
  .test-console__grid div, .test-console__grid div:nth-child(2n) { border-right: 0; }
  .test-console__grid div:last-child { border-bottom: 0; }
  .testing-strip__inner div { display: grid; }
  .test-cta .page-actions .btn { width: 100%; }
}

/* Keep Testing in the same page system as Project, Updates, and Contact. */
.testing-page {
  min-height: calc(100vh - var(--nav-h));
  background: transparent;
}
.testing-shell { max-width: 930px; margin-inline: auto; }
.testing-page .page-intro { max-width: 780px; }
.testing-page .page-intro h1 { max-width: none; margin: 0 0 14px; font-size: clamp(2rem, 4vw, 3.5rem); line-height: 1.08; letter-spacing: -.025em; }
.testing-page .page-intro > p { max-width: 62ch; color: var(--ink-2); font-size: .94rem; line-height: 1.7; }
.testing-page .info-card + .info-card { margin-top: 18px; }

.test-status-card { border-top-color: #3f9d39; }
.test-card-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; margin-bottom: 14px; }
.test-card-heading h2 { margin: 8px 0 0; }
.test-status-badge { display: inline-flex; align-items: center; gap: 8px; flex: 0 0 auto; padding: 8px 10px; color: #b8f5b2; font-size: .6rem; font-weight: 750; text-transform: uppercase; background: #202c21; border: 2px solid #08080a; box-shadow: inset 1px 1px 0 rgba(255,255,255,.08); }
.test-status-badge i { width: 9px; height: 9px; background: var(--mc-green); border: 1px solid #315e0a; }
.test-status-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 10px; margin: 23px 0 16px; }
.test-status-grid div { min-width: 0; padding: 17px; background: #232328; border: 2px solid #08080a; box-shadow: inset 2px 2px 0 rgba(255,255,255,.07); }
.test-status-grid dt { margin-bottom: 7px; color: var(--ink-3); font-size: .59rem; text-transform: uppercase; }
.test-status-grid dd { margin: 0; color: var(--ink); font-size: .78rem; font-weight: 750; }
.test-build-note { margin: 0 !important; padding: 12px 14px; color: #d8d0b9; background: #3b2d19; border-left: 4px solid var(--mc-gold); }

.test-requirements-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 24px 0 32px; }
.test-requirements-grid .info-tile { min-height: 100%; }
.testing-columns { display: grid; grid-template-columns: 1.08fr .92fr; gap: 0; margin: 0; border-top: 2px solid #111114; border-bottom: 2px solid #111114; }
.test-section { min-width: 0; padding: 30px 28px 28px 0; }
.test-section + .test-section { padding-right: 0; padding-left: 28px; border-left: 2px solid #111114; }
.test-section h2 { margin: 9px 0 16px; }
.test-section p, .test-section li { color: var(--ink-2); font-size: .76rem; line-height: 1.7; }
.test-section ul { margin: 16px 0 0; padding-left: 20px; }
.test-section li + li { margin-top: 8px; }
.test-section--warning { background: linear-gradient(90deg, rgba(59,45,25,.28), transparent 72%); }
.test-checklist { padding: 0 !important; list-style: none; }
.test-checklist li { display: grid; grid-template-columns: 13px 1fr; gap: 12px; align-items: start; }
.test-checklist li span { width: 11px; height: 11px; margin-top: .38em; background: #1d3520; border: 2px solid #4ac83f; }

.bug-report.info-card { display: grid; grid-template-columns: minmax(0, .9fr) minmax(330px, 1.1fr); gap: clamp(30px, 6vw, 60px); align-items: center; margin-top: 18px; padding: clamp(25px, 5vw, 46px); background: #2c2c33; border: 3px solid #08080a; box-shadow: inset 3px 3px 0 rgba(255,255,255,.11), inset -3px -3px 0 rgba(0,0,0,.48), 8px 8px 0 rgba(0,0,0,.28); }
.bug-report__intro h2 { margin: 9px 0 14px; }
.bug-report__intro p { color: var(--ink-2); font-size: .78rem; line-height: 1.75; }
.report-template { min-width: 0; background: #18181c; border: 2px solid #08080a; box-shadow: inset 2px 2px 0 rgba(255,255,255,.055); }
.report-template__head { padding: 10px 13px; color: var(--mc-aqua); font-size: .61rem; letter-spacing: .1em; background: #232328; border-bottom: 2px solid #08080a; box-shadow: inset 0 1px 0 rgba(255,255,255,.07); }
.report-template pre { overflow-x: auto; margin: 0; padding: 18px; color: #bdc0c6; font: 600 .67rem/1.65 ui-monospace, SFMono-Regular, Consolas, monospace; white-space: pre-wrap; }

.testing-follow { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-top: 34px; padding-top: 28px; border-top: 2px solid rgba(255,255,255,.13); }
.testing-follow h2 { max-width: 24ch; margin: 8px 0 0; font-size: 1.1rem; }
.testing-follow .page-actions { margin-top: 0; justify-content: flex-end; }

@media (max-width: 760px) {
  .test-card-heading, .testing-follow { align-items: flex-start; flex-direction: column; }
  .test-status-grid, .test-requirements-grid { grid-template-columns: 1fr 1fr; }
  .testing-columns, .bug-report.info-card { grid-template-columns: 1fr; }
  .test-section { padding: 27px 0; }
  .test-section + .test-section { padding: 27px 0; border-top: 2px solid #111114; border-left: 0; }
  .testing-follow .page-actions { width: 100%; justify-content: flex-start; }
}

@media (max-width: 460px) {
  .test-status-grid, .test-requirements-grid { grid-template-columns: 1fr; }
  .bug-report.info-card { padding: 22px; }
  .testing-page .page-intro .page-actions, .testing-page .page-intro .btn, .testing-follow .page-actions, .testing-follow .btn { width: 100%; }
}

/* Alpha testing application. */
.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.application-shell { max-width: 930px; margin-inline: auto; }
.application-intro { max-width: 880px; }
.application-intro h1 { display: flex; align-items: center; flex-wrap: wrap; gap: 9px; font-size: clamp(2rem, 4.5vw, 3.5rem); }
.application-intro h1 span { font-size: .72em; }
.application-intro p { max-width: 82ch; font-size: .82rem; line-height: 1.72; }
.application-intro p + p { margin-top: 12px; color: var(--ink-3); }
.application-notice {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 18px;
  padding: 15px 18px;
  color: var(--ink-2);
  background: #24272b;
  border: 2px solid #08080a;
  border-left: 5px solid var(--mc-green);
  box-shadow: inset 2px 2px 0 rgba(255,255,255,.07);
}
.application-notice div { display: grid; gap: 2px; }
.application-notice strong { color: var(--ink); font-size: .76rem; }
.application-notice span { font-size: .67rem; }
.application-draft-actions { display: flex !important; grid-auto-flow: column; align-items: center; gap: 12px !important; flex: 0 0 auto; }
.application-save-state { flex: 0 0 auto; color: #a8efa0; }
.application-draft-actions button { padding: 0; color: var(--ink-3); font: inherit; font-size: .62rem; background: none; border: 0; text-decoration: underline; cursor: pointer; }
.application-draft-actions button:focus-visible { outline: 2px solid var(--mc-green); outline-offset: 3px; }
.application-form { position: relative; }
.application-question { min-width: 0; margin: 0; padding: 0 0 30px; border: 0; }
.application-question + .application-question { margin-top: 30px; padding-top: 30px; border-top: 2px solid #17171a; }
.application-question legend { width: 100%; margin: 0 0 17px; padding: 0; color: var(--ink); font-size: .88rem; font-weight: 750; line-height: 1.6; }
.application-question legend > span { display: inline-grid; place-items: center; width: 31px; height: 31px; margin-right: 9px; color: var(--mc-green); font-size: .61rem; background: #17191b; border: 2px solid #08080a; box-shadow: inset 1px 1px 0 rgba(255,255,255,.06); vertical-align: middle; }
.application-question legend em, .application-option em { color: var(--ink-3); font-style: italic; font-weight: 500; }
.required-mark { margin-left: 7px; color: #ffbd24; font-size: .9rem; }
.application-question .input,
.application-question .textarea,
.application-other-input {
  color: #f7f7f8;
  background: #18181c;
  border: 2px solid #08080a;
  box-shadow: inset 2px 2px 0 rgba(255,255,255,.06), inset -2px -2px 0 rgba(0,0,0,.38);
  text-shadow: none;
}
.application-question .input:focus,
.application-question .textarea:focus,
.application-other-input:focus { outline: 2px solid var(--mc-green); outline-offset: 1px; box-shadow: inset 2px 2px 0 rgba(255,255,255,.06); }
.application-question .textarea { min-height: 125px; }
.application-question__hint { margin: -10px 0 15px; color: var(--ink-3); font-size: .65rem !important; }
.application-options { display: grid; gap: 8px; }
.application-option {
  display: grid;
  grid-template-columns: 22px minmax(0,1fr);
  gap: 12px;
  align-items: start;
  min-width: 0;
  padding: 13px 14px;
  color: var(--ink-2);
  font-size: .74rem;
  line-height: 1.6;
  background: #232328;
  border: 2px solid #08080a;
  box-shadow: inset 2px 2px 0 rgba(255,255,255,.065), inset -2px -2px 0 rgba(0,0,0,.34);
  cursor: pointer;
}
.application-option strong { color: var(--ink); }
.application-option:has(input:checked) { color: #eef8ed; background: #263226; border-color: #4ca742; box-shadow: inset 2px 2px 0 rgba(151,255,140,.1), inset -2px -2px 0 rgba(0,0,0,.38); }
@media (hover: hover) {
  .application-option:hover {
    color: var(--ink-2);
    background: #232328;
    border-color: var(--mc-green);
    box-shadow: inset 2px 2px 0 rgba(255,255,255,.065), inset -2px -2px 0 rgba(0,0,0,.34);
    transform: none;
  }
  .application-option:has(input:checked):hover { color: #eef8ed; background: #263226; border-color: var(--mc-green); }
}

/* Private browser client. This route is intentionally not linked from the public site. */
.client-page { background: #080b0c; }
.client-main { padding: clamp(34px, 5vw, 68px) 0 72px; }
.client-shell { max-width: 1240px; }
.client-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 28px; margin-bottom: 22px; }
.client-heading h1 { margin: 10px 0 5px; font-size: clamp(2rem, 4vw, 3.65rem); line-height: 1; letter-spacing: -.035em; }
.client-heading p { margin: 0; color: var(--ink-3); font-size: .78rem; }
.client-heading p strong { color: var(--ink-2); }
.client-build-status { display: inline-flex; align-items: center; gap: 9px; padding: 9px 12px; border: 1px solid #345e32; color: #a8efa1; background: #142015; font-size: .68rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; white-space: nowrap; }
.client-build-status i { width: 8px; height: 8px; background: var(--mc-green); box-shadow: 0 0 0 3px rgba(121,193,15,.12); }
.client-notice { display: flex; flex-wrap: wrap; gap: 7px 13px; padding: 13px 16px; border: 1px solid #735707; border-left: 5px solid var(--mc-gold); color: #d5cdaa; background: #241d0c; font-size: .76rem; }
.client-notice strong { color: #ffc52f; }
.client-bug-callout {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 20px;
  margin: 0 0 18px;
  padding: clamp(22px, 3vw, 34px);
  color: #fff;
  background: #281006;
  border: 2px solid #ffb000;
  border-left: 9px solid #ffb000;
  box-shadow: inset 0 0 0 2px rgba(255,75,30,.18), 0 0 28px rgba(255,112,0,.12);
}
.client-bug-callout__mark { display: grid; place-items: center; width: 58px; height: 58px; color: #171006; background: #ffb000; font-size: 2rem; font-weight: 950; }
.client-bug-callout h2 { max-width: 23ch; margin: 5px 0 8px; color: #fff; font-size: clamp(1.55rem, 3vw, 2.65rem); line-height: 1.05; }
.client-bug-callout p { max-width: 70ch; margin: 0; color: #f2d9c5; font-size: .82rem; line-height: 1.65; }
.client-bug-callout .btn { min-width: 164px; }
.client-access-gate { margin-top: 16px; padding: clamp(34px, 5vw, 62px); border: 1px solid #3b4244; border-top: 4px solid var(--mc-green); background: #111516; text-align: center; }
.client-access-gate[hidden], [data-client-approved][hidden] { display: none; }
.client-access-gate h2 { margin: 12px auto 10px; max-width: 22ch; font-size: clamp(1.7rem, 3.6vw, 2.8rem); line-height: 1.08; }
.client-access-gate > p { max-width: 56ch; margin: 0 auto; color: var(--ink-3); line-height: 1.65; }
.client-access-gate .page-actions { justify-content: center; }

.test-warning-dialog {
  width: min(720px, calc(100vw - 28px));
  max-width: calc(100vw - 28px);
  max-height: calc(100vh - 28px);
  box-sizing: border-box;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 0;
  color: var(--ink);
  background: #111315;
  border: 3px solid #090a0b;
  box-shadow: 0 0 0 2px #ffb000, 14px 14px 0 rgba(0,0,0,.55);
}
.test-warning-dialog::backdrop { background: rgba(0,0,0,.88); backdrop-filter: blur(4px); }
.test-warning-dialog__panel { display: block; padding: clamp(25px, 5vw, 48px); border-top: 9px solid #ffb000; }
.test-warning-dialog__flag { display: inline-block; padding: 6px 9px; color: #181006; background: #ffb000; font-size: .62rem; font-weight: 950; letter-spacing: .08em; text-transform: uppercase; }
.test-warning-dialog h2 { max-width: 14ch; margin: 18px 0 12px; color: #fff; font-size: clamp(2rem, 6vw, 3.8rem); line-height: .98; letter-spacing: -.04em; }
.test-warning-dialog__lead { margin: 0 0 20px; color: #ffcf70; font-size: 1rem; font-weight: 850; }
.test-warning-dialog ul { display: grid; gap: 9px; margin: 0 0 24px; padding-left: 20px; color: #d9dcdf; font-size: .78rem; line-height: 1.55; }
.test-warning-dialog li::marker { color: #ffb000; }
.test-warning-dialog__check { display: grid; grid-template-columns: 21px 1fr; gap: 11px; align-items: start; padding: 15px; color: #fff; background: #241d0c; border: 1px solid #755800; font-size: .76rem; font-weight: 800; line-height: 1.5; }
.test-warning-dialog__check input { width: 19px; height: 19px; margin-top: 1px; accent-color: var(--mc-green); }
.test-warning-dialog__actions { display: grid; grid-template-columns: .7fr 1.3fr; gap: 10px; margin-top: 18px; }
.client-launch { display: grid; grid-template-columns: minmax(0, .9fr) minmax(420px, 1.1fr); gap: clamp(34px, 6vw, 82px); margin-top: 16px; padding: clamp(28px, 4vw, 48px); border: 1px solid #3b4244; border-top: 4px solid var(--mc-green); background: #111516; }
.client-launch[hidden] { display: none; }
.client-launch__copy h2 { margin: 10px 0 14px; font-size: clamp(1.8rem, 3.4vw, 3rem); line-height: 1.03; letter-spacing: -.03em; }
.client-launch__copy > p { max-width: 52ch; margin: 0; color: var(--ink-2); line-height: 1.7; }
.client-local-note { display: flex; gap: 11px; margin-top: 24px; padding-top: 18px; border-top: 1px solid #353b3e; color: var(--mc-green); }
.client-local-note p { margin: 0; color: var(--ink-3); font-size: .73rem; line-height: 1.55; }
.client-local-note strong { color: var(--ink-2); }
.client-launch__control { align-self: center; padding: clamp(22px, 3vw, 32px); border: 1px solid #42494c; background: #1a1f21; box-shadow: inset 2px 2px 0 rgba(255,255,255,.035), inset -2px -2px 0 rgba(0,0,0,.28); }
.client-launch__step { display: grid; grid-template-columns: 48px minmax(0,1fr); align-items: center; gap: 15px; margin-bottom: 18px; }
.client-launch__step > span { display: grid; place-items: center; width: 46px; height: 46px; border: 1px solid #4f9810; color: var(--mc-green); font-size: .7rem; font-weight: 850; }
.client-launch__step strong, .client-launch__step small { display: block; }
.client-launch__step strong { color: var(--ink-1); font-size: .86rem; }
.client-launch__step small { margin-top: 4px; color: var(--ink-3); font-size: .66rem; }
.client-launch__button { width: 100%; justify-content: center; }
.client-launch__button:disabled { cursor: wait; opacity: .64; }
.client-launch__status { min-height: 1.25rem; margin: 11px 2px 0; color: var(--ink-3); font-size: .68rem; line-height: 1.45; }
.client-launch__status[data-state="ready"] { color: var(--mc-green); }
.client-launch__status[data-state="error"] { color: #ff8f87; }
.client-launch__audio { display: grid; gap: 4px; margin-top: 20px; padding-top: 17px; border-top: 1px solid #3b4244; }
.client-launch__audio strong { color: var(--ink-2); font-size: .73rem; }
.client-launch__audio span { color: var(--ink-3); font-size: .66rem; line-height: 1.5; }
.client-stage { margin-top: 16px; border: 1px solid #444a4d; background: #101315; box-shadow: 0 18px 54px rgba(0,0,0,.42); }
.client-stage[hidden] { display: none; }
.client-stage.is-starting .client-frame-wrap { position: relative; }
.client-stage.is-starting .client-frame-wrap::after { content: "Starting ZephyrCraft…"; position: absolute; inset: 0; z-index: 2; display: grid; place-items: center; color: var(--ink-2); background: #181818; font-size: .78rem; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.client-stage__bar { min-height: 50px; display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 8px 10px 8px 15px; border-bottom: 1px solid #3a3e41; background: #1a1e20; }
.client-stage__identity { display: flex; align-items: center; gap: 10px; min-width: 0; color: var(--ink-3); font-size: .65rem; letter-spacing: .075em; text-transform: uppercase; }
.client-stage__identity strong { color: var(--ink-1); }
.client-stage__light { width: 8px; height: 8px; flex: 0 0 auto; background: var(--mc-green); }
.client-stage__actions { display: flex; gap: 7px; }
.client-stage__actions button { min-height: 32px; padding: 5px 12px; border: 1px solid #50575a; color: var(--ink-2); background: #252a2d; font: inherit; font-size: .66rem; font-weight: 750; cursor: pointer; }
.client-stage__actions button:hover { border-color: var(--mc-green); color: #fff; }
.client-stage__actions button:focus-visible { outline: 2px solid var(--mc-green); outline-offset: 2px; }
.client-frame-wrap { width: 100%; aspect-ratio: 16 / 9; min-height: 420px; background: #181818; }
.client-frame { display: block; width: 100%; height: 100%; border: 0; background: #181818; }
.client-setup { display: grid; grid-template-columns: minmax(260px, .8fr) minmax(0, 1.4fr); gap: clamp(34px, 6vw, 78px); padding: clamp(44px, 6vw, 72px) 0 38px; border-bottom: 1px solid #303638; }
.client-setup__intro h2 { margin: 10px 0 13px; max-width: 15ch; font-size: clamp(1.55rem, 3vw, 2.3rem); line-height: 1.12; }
.client-setup__intro p { margin: 0; max-width: 50ch; color: var(--ink-3); line-height: 1.7; }
.client-steps { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; border-top: 1px solid #394043; }
.client-steps li { display: grid; grid-template-columns: 48px 1fr; gap: 17px; padding: 18px 0; border-bottom: 1px solid #394043; }
.client-steps li > span { display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid #4f9810; color: var(--mc-green); font-size: .7rem; font-weight: 800; }
.client-steps strong { display: block; margin: 1px 0 5px; color: var(--ink-1); font-size: .9rem; }
.client-steps p { margin: 0; color: var(--ink-3); font-size: .78rem; line-height: 1.55; }
.client-safety { display: grid; grid-template-columns: 1fr 1fr; gap: 0; margin-top: 28px; border: 1px solid #363c3f; }
.client-safety > div { padding: 20px 22px; background: #111516; }
.client-safety > div + div { border-left: 1px solid #363c3f; }
.client-safety strong { color: var(--ink-1); font-size: .82rem; }
.client-safety p { margin: 6px 0 0; color: var(--ink-3); font-size: .74rem; line-height: 1.55; }

@media (max-width: 780px) {
  .client-main { padding-top: 28px; }
  .client-heading { align-items: flex-start; flex-direction: column; }
  .client-launch { grid-template-columns: 1fr; }
  .client-stage__bar { align-items: flex-start; flex-direction: column; padding: 12px; }
  .client-stage__actions { width: 100%; }
  .client-stage__actions button { flex: 1; }
  .client-frame-wrap { min-height: 0; }
  .client-setup { grid-template-columns: 1fr; }
  .client-safety { grid-template-columns: 1fr; }
  .client-safety > div + div { border-top: 1px solid #363c3f; border-left: 0; }
}

@media (max-width: 480px) {
  .client-stage__identity span:last-child { display: none; }
  .client-stage__actions { display: grid; grid-template-columns: 1fr 1fr; }
  .client-launch { padding: 23px 18px; }
  .client-steps li { grid-template-columns: 42px 1fr; gap: 13px; }
  .client-steps li > span { width: 40px; height: 40px; }
}

/* ZephyrCraft accounts. */
.account-page { min-height: calc(100vh - 160px); }
.account-shell { max-width: 780px; }
.account-shell--callback { max-width: 700px; }
.account-page .page-intro { max-width: 680px; }
.account-page .page-intro h1 { margin-bottom: 13px; font-size: clamp(2.2rem, 5vw, 4rem); }
.account-config, .account-auth, .account-dashboard, .account-callback {
  border: 3px solid #08080a;
  background-color: #2c2c33;
  background-image: linear-gradient(rgba(44,44,51,.94), rgba(44,44,51,.94)), var(--tex-deepslate);
  background-size: auto, 32px 32px;
  box-shadow: inset 3px 3px 0 rgba(255,255,255,.11), inset -3px -3px 0 rgba(0,0,0,.48), 7px 7px 0 rgba(0,0,0,.28);
}
.account-config[hidden], .account-auth[hidden], .account-dashboard[hidden], .account-callback [hidden] { display: none; }
.account-auth, .account-dashboard, .account-callback { margin-top: 34px; }
.account-config { display: flex; align-items: center; gap: 13px; margin-top: 22px; padding: 12px 15px; border-left: 3px solid var(--mc-gold); background: #1d1a12; }
.account-config__light { width: 8px; height: 8px; flex: 0 0 auto; background: var(--mc-gold); }
.account-config strong { display: block; color: #ffd269; font-size: .7rem; }
.account-config p { margin: 2px 0 0; color: #bdb6a5; font-size: .66rem; line-height: 1.45; }
.account-form { display: grid; gap: 9px; max-width: 560px; margin: 0 auto; padding: clamp(28px, 5vw, 48px); }
.account-form[hidden] { display: none; }
.account-form__heading { margin-bottom: 14px; padding-bottom: 19px; border-bottom: 1px solid #343a3d; }
.account-form__heading h2 { margin: 0 0 7px; font-size: 1.5rem; }
.account-form__heading p { margin: 0; color: var(--ink-3); font-size: .78rem; line-height: 1.55; }
.account-form label:not(.account-check) { margin-top: 5px; color: var(--ink-2); font-size: .7rem; font-weight: 800; }
.account-form .input { width: 100%; }
.account-form .btn { justify-content: center; width: 100%; margin-top: 13px; }
.account-field-help { margin: -2px 0 4px; color: var(--ink-3); font-size: .64rem; }
.account-check { display: grid; grid-template-columns: 18px 1fr; align-items: start; gap: 10px; margin-top: 8px; color: var(--ink-3); font-size: .69rem; line-height: 1.5; }
.account-check input { width: 17px; height: 17px; accent-color: var(--mc-green); }
.account-text-button { justify-self: center; padding: 5px; border: 0; color: var(--ink-3); background: transparent; font: inherit; font-size: .67rem; text-decoration: underline; cursor: pointer; }
.account-text-button:hover { color: var(--mc-green); }
.account-switch { margin: 5px 0 0; color: var(--ink-3); font-size: .68rem; line-height: 1.5; text-align: center; }
.account-switch a { color: var(--mc-aqua); font-weight: 750; }
.account-switch a:hover { color: var(--mc-yellow); }
.account-message { min-height: 1.2em; margin: 5px 0 0; color: var(--ink-3); font-size: .7rem; line-height: 1.5; text-align: center; }
.account-message[data-type="error"] { color: #ff9189; }
.account-message[data-type="success"] { color: #9feb98; }
.account-dashboard { padding: clamp(28px, 5vw, 48px); }
.account-dashboard__head { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-bottom: 27px; border-bottom: 1px solid #3c4346; }
.account-dashboard__head h2 { margin: 9px 0 3px; font-size: 1.7rem; }
.account-dashboard__head p { margin: 0; color: var(--ink-3); font-size: .74rem; }
.account-status { display: grid; grid-template-columns: 15px 1fr; gap: 19px; margin-top: 28px; padding: 24px; border: 1px solid #454c4f; background: #181d1f; }
.account-status__icon { width: 11px; height: 11px; margin-top: 5px; background: var(--mc-gold); }
.account-status[data-status="approved"] { border-color: #376b34; background: #142015; }
.account-status[data-status="approved"] .account-status__icon { background: var(--mc-green); }
.account-status[data-status="rejected"], .account-status[data-status="error"] { border-color: #703b38; }
.account-status[data-status="rejected"] .account-status__icon, .account-status[data-status="error"] .account-status__icon { background: #e35d55; }
.account-status h3 { margin: 8px 0 6px; font-size: 1.2rem; }
.account-status p { margin: 0; color: var(--ink-3); font-size: .76rem; line-height: 1.55; }
.account-community { margin-top: 24px; padding-top: 24px; border-top: 1px solid #42484b; }
.account-community__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 12px; }
.account-community__head .eyebrow { margin-bottom: 4px; }
.account-community__head h3 { margin: 0; font-size: 1rem; }
.account-community__head > div:last-child { display: flex; flex-wrap: wrap; gap: 12px; }
.account-community__head a { font-size: .64rem; }
.account-issues { border: 1px solid #43494c; background: #181c1e; }
.account-issues > p { margin: 0; padding: 15px; color: var(--ink-3); font-size: .67rem; }
.account-issue-row { display: grid; grid-template-columns: 82px minmax(0,1fr) auto; gap: 12px; align-items: center; padding: 12px 14px; border-bottom: 1px solid #343a3c; }
.account-issue-row:last-child { border-bottom: 0; }
.account-issue-row > span { color: var(--mc-gold); font-size: .59rem; }
.account-issue-row > strong { overflow: hidden; font-size: .69rem; text-overflow: ellipsis; white-space: nowrap; }
.account-issue-row > small { color: var(--ink-3); font-size: .57rem; }
.account-issue-row > small[data-status="resolved"] { color: var(--mc-green); }
.account-issue-row > small[data-status="in_progress"] { color: var(--mc-aqua); }
.account-callback { padding: clamp(34px, 6vw, 58px); text-align: center; }
.account-callback h1 { margin: 14px auto 11px; font-size: clamp(1.8rem, 4.5vw, 3rem); }
.account-callback > p { max-width: 53ch; margin: 0 auto; color: var(--ink-3); line-height: 1.65; }
.account-form--callback { padding-bottom: 0; text-align: left; }
.account-callback .page-actions { justify-content: center; }

@media (max-width: 600px) {
  .account-dashboard__head { align-items: flex-start; flex-direction: column; }
  .account-dashboard__head .btn { width: 100%; }
  .account-form { padding-inline: 20px; }
  .account-community__head { align-items: flex-start; flex-direction: column; }
  .account-issue-row { grid-template-columns: 72px minmax(0,1fr); }
  .account-issue-row > small { grid-column: 2; }
}
.application-option input[type="radio"],
.application-option input[type="checkbox"] {
  appearance: none;
  width: 19px;
  height: 19px;
  margin: 2px 0 0;
  background: #111216;
  border: 3px solid #08080a;
  box-shadow: inset 1px 1px 0 #55565c;
  cursor: pointer;
}
.application-option input[type="radio"] { border-radius: 50%; }
.application-option input[type="radio"]:checked { background: var(--mc-green); box-shadow: inset 0 0 0 4px #315e0a; }
.application-option input[type="checkbox"]:checked { background: var(--mc-green); box-shadow: inset 0 0 0 3px #315e0a; }
.application-option input:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
.application-option--other { grid-template-columns: 22px auto minmax(150px,1fr); align-items: center; }
.application-other-input { width: 100%; padding: 8px 10px; font: inherit; }
.application-other-input:disabled { opacity: .38; }
.application-options--checks .application-option { padding-block: 15px; }

/* Community forums. */
.forum-shell { max-width: 1080px; margin-inline: auto; }
.forum-compose-shell { max-width: 820px; margin-inline: auto; }
.forum-intro { max-width: 800px; }
.forum-intro h1 { font-size: clamp(2.4rem, 6vw, 4.5rem); }
.forum-service-note { display: flex; align-items: center; gap: 13px; margin: -4px 0 22px; padding: 13px 16px; color: #d8d0b9; background: #302b22; border: 2px solid #08080a; border-left: 5px solid var(--mc-gold); box-shadow: inset 2px 2px 0 rgba(255,255,255,.05); }
.forum-service-note[hidden] { display: none; }
.forum-service-note > span { width: 10px; height: 10px; flex: 0 0 auto; background: var(--mc-gold); }
.forum-service-note strong { display: block; font-size: .72rem; }
.forum-service-note p { margin: 2px 0 0; color: #bcb5a3; font-size: .66rem; line-height: 1.5; }
.forum-layout { display: grid; grid-template-columns: minmax(0, 1fr) 270px; gap: 20px; align-items: start; }
.forum-main { display: grid; gap: 20px; }
.forum-panel, .forum-side-card, .forum-topic, .forum-reply-box {
  background-color: #2c2c33;
  background-image: linear-gradient(rgba(44,44,51,.95), rgba(44,44,51,.95)), var(--tex-deepslate);
  background-size: auto, 32px 32px;
  border: 3px solid #08080a;
  box-shadow: inset 3px 3px 0 rgba(255,255,255,.1), inset -3px -3px 0 rgba(0,0,0,.45), 7px 7px 0 rgba(0,0,0,.24);
}
.forum-panel__head { min-height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 18px 22px; border-bottom: 3px solid #08080a; }
.forum-panel__head .eyebrow { margin-bottom: 5px; font-size: .58rem; }
.forum-panel__head h2 { margin: 0; font-size: 1.05rem; }
.forum-count { color: var(--ink-3); font-size: .62rem; white-space: nowrap; }
.forum-category-list, .forum-thread-list { display: grid; }
.forum-category-row { display: grid; grid-template-columns: 48px minmax(0,1fr) 82px 20px; gap: 16px; align-items: center; min-height: 94px; padding: 17px 20px; color: inherit; background: #24252b; border-bottom: 2px solid #0c0c0f; }
.forum-category-row:last-child { border-bottom: 0; }
.forum-category-row:hover { color: inherit; text-decoration: none; background: #2a2c31; box-shadow: inset 4px 0 0 var(--mc-green); }
.forum-category-row[data-accent="gold"]:hover { box-shadow: inset 4px 0 0 var(--mc-gold); }
.forum-category-row[data-accent="aqua"]:hover { box-shadow: inset 4px 0 0 var(--mc-aqua); }
.forum-category-row[data-accent="amethyst"]:hover { box-shadow: inset 4px 0 0 var(--mc-pink); }
.forum-category-row__icon { display: grid; place-items: center; width: 44px; height: 44px; color: var(--mc-green); font-size: .67rem; font-weight: 800; background: #15191a; border: 2px solid #08080a; box-shadow: inset 2px 2px 0 rgba(255,255,255,.06); }
.forum-category-row[data-accent="gold"] .forum-category-row__icon { color: var(--mc-gold); }
.forum-category-row[data-accent="aqua"] .forum-category-row__icon { color: var(--mc-aqua); }
.forum-category-row[data-accent="amethyst"] .forum-category-row__icon { color: var(--mc-pink); }
.forum-category-row h3 { margin: 0 0 4px; font-size: .84rem; }
.forum-category-row p { margin: 0; color: var(--ink-3); font-size: .67rem; line-height: 1.5; }
.forum-category-row__stats, .forum-thread-row__stats { text-align: right; }
.forum-category-row__stats strong, .forum-thread-row__stats strong { display: block; color: var(--ink-2); font-size: .75rem; }
.forum-category-row__stats span, .forum-thread-row__stats span { display: block; color: #85878d; font-size: .57rem; }
.forum-category-row__arrow { color: var(--ink-3); font-size: 1.3rem; }
.forum-thread-row { display: grid; grid-template-columns: 40px minmax(0,1fr) 70px; gap: 15px; align-items: center; min-height: 78px; padding: 14px 19px; color: inherit; background: #24252b; border-bottom: 2px solid #0c0c0f; }
.forum-thread-row:last-child { border-bottom: 0; }
.forum-thread-row:hover { color: inherit; text-decoration: none; background: #2a2c31; box-shadow: inset 4px 0 0 var(--mc-green); }
.forum-thread-row__marker { display: grid; place-items: center; width: 36px; height: 36px; color: var(--mc-aqua); font-size: .59rem; font-weight: 800; background: #161a1b; border: 2px solid #08080a; }
.forum-thread-row__marker[data-pinned="true"] { color: #251900; background: var(--mc-gold); box-shadow: inset 2px 2px 0 #ffd478, inset -2px -2px 0 #b77600; }
.forum-thread-row h3 { margin: 0 0 5px; font-size: .79rem; line-height: 1.4; }
.forum-thread-row__meta { margin: 0; color: #8f9298; font-size: .59rem; line-height: 1.4; }
.forum-thread-row__meta span { color: var(--mc-aqua); }
.forum-sidebar { display: grid; gap: 15px; }
.forum-side-card { padding: 22px; }
.forum-side-card h2 { margin: 5px 0 10px; font-size: 1.05rem; }
.forum-side-card p, .forum-side-card li { color: var(--ink-3); font-size: .67rem; line-height: 1.65; }
.forum-side-card .btn { margin-top: 9px; }
.forum-side-link { display: block; margin-top: 12px; color: var(--mc-aqua); font-size: .61rem; line-height: 1.5; text-align: center; }
.forum-side-card--rules { background-color: #302b22; }
.forum-side-card--rules ul { margin: 4px 0 0; padding-left: 18px; }
.forum-side-card--rules li + li { margin-top: 8px; }
.forum-side-card--rules li::marker { color: var(--mc-gold); }
.forum-breadcrumb { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; margin: -12px 0 28px; color: var(--ink-3); font-size: .65rem; }
.forum-breadcrumb a { color: var(--mc-aqua); }
.forum-category-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 28px; margin-bottom: 27px; padding-bottom: 27px; border-bottom: 2px solid rgba(255,255,255,.14); }
.forum-category-head h1 { margin: 3px 0 8px; font-size: clamp(2rem, 5vw, 3.5rem); }
.forum-category-head p { max-width: 65ch; margin: 0; font-size: .82rem; }
.forum-toolbar { display: grid; grid-template-columns: 1fr 210px; gap: 10px; margin-bottom: 12px; }
.forum-search .input, .forum-sort { min-height: 46px; }
.forum-empty { margin: 0; padding: 30px; color: var(--ink-3); font-size: .75rem; text-align: center; }
.forum-thread-shell { max-width: 960px; }
.forum-topic { overflow: hidden; }
.forum-topic__head { padding: 27px 30px 25px; border-bottom: 3px solid #08080a; }
.forum-topic__head h1 { max-width: 25ch; margin: 10px 0 0; font-size: clamp(1.6rem, 4vw, 2.5rem); }
.forum-topic__flags { display: flex; flex-wrap: wrap; gap: 7px; }
.forum-tag { display: inline-flex; padding: 4px 8px; color: var(--ink-3); font-size: .56rem; font-weight: 800; text-transform: uppercase; background: #1c1d21; border: 2px solid #08080a; }
.forum-tag--pinned { color: #ffd373; }
.forum-post { display: grid; grid-template-columns: 155px minmax(0,1fr); background: #24252a; border: 3px solid #08080a; border-top: 0; }
.forum-topic .forum-post { border: 0; }
.forum-post__author { padding: 23px 18px; text-align: center; background: #202126; border-right: 2px solid #0d0d10; }
.forum-avatar { display: grid; place-items: center; width: 52px; height: 52px; margin: 0 auto 11px; color: var(--mc-green); font-size: .76rem; font-weight: 800; background: #111516; border: 2px solid #08080a; box-shadow: inset 2px 2px 0 rgba(255,255,255,.06); }
.forum-post__author strong { display: block; overflow-wrap: anywhere; font-size: .7rem; }
.forum-post__author small { display: block; margin-top: 4px; color: #84868c; font-size: .55rem; }
.forum-post__content { min-width: 0; padding: 20px 24px 26px; }
.forum-post__meta { display: flex; justify-content: space-between; gap: 16px; margin-bottom: 17px; padding-bottom: 11px; color: #85878d; font-size: .56rem; border-bottom: 1px solid #3a3b41; }
.forum-post__body p { margin: 0; color: #c9cbd0; font-size: .78rem; line-height: 1.75; white-space: pre-wrap; }
.forum-post__body p + p { margin-top: 15px; }
.forum-replies { margin-top: 22px; }
.forum-replies__head { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 11px; }
.forum-replies__head h2 { margin: 0; font-size: 1rem; }
.forum-replies__head a { font-size: .65rem; }
.forum-replies .forum-post + .forum-post { margin-top: 10px; border-top: 3px solid #08080a; }
.forum-reply-box { margin-top: 22px; padding: 25px; }
.forum-reply-box h2 { margin: 3px 0 17px; font-size: 1.1rem; }
.forum-reply-box .textarea { min-height: 150px; }
.forum-compose-foot { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-top: 13px; }
.forum-compose-foot > span { color: var(--ink-3); font-size: .64rem; line-height: 1.5; }
.forum-compose-form { padding: clamp(25px, 5vw, 42px); }
.forum-compose-form .field + .field { margin-top: 21px; }
.forum-compose-form label:not(.account-check) { display: block; margin-bottom: 7px; color: var(--ink-2); font-size: .7rem; font-weight: 800; }
.forum-compose-body { min-height: 280px; }
.field-help { display: block; margin-top: 7px; color: #85878d; font-size: .6rem; line-height: 1.5; }

/* Issue reporting. */
.report-shell { max-width: 960px; margin-inline: auto; }
.report-intro { max-width: 800px; }
.report-intro h1 { font-size: clamp(2.2rem, 5vw, 4rem); }
.report-guidance { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-bottom: 18px; }
.report-guidance > div { display: grid; grid-template-columns: 36px 1fr; gap: 12px; align-items: start; padding: 15px; background: #232328; border: 2px solid #08080a; box-shadow: inset 2px 2px 0 rgba(255,255,255,.07); }
.report-guidance span { display: grid; place-items: center; width: 34px; height: 34px; color: var(--mc-gold); font-size: .6rem; border: 1px solid #785b1b; }
.report-guidance p { margin: 0; color: var(--ink-3); font-size: .64rem; line-height: 1.55; }
.report-form { padding: clamp(25px, 5vw, 46px); }
.report-form-section + .report-form-section { margin-top: 35px; padding-top: 35px; border-top: 2px solid #111114; }
.report-form-section__head { display: grid; grid-template-columns: 44px 1fr; gap: 16px; margin-bottom: 23px; }
.report-form-section__head > span { display: grid; place-items: center; width: 42px; height: 42px; color: var(--mc-gold); font-size: .66rem; font-weight: 800; background: #241c0d; border: 2px solid #08080a; }
.report-form-section__head h2 { margin: 0 0 4px; font-size: 1.05rem; }
.report-form-section__head p { margin: 0; color: var(--ink-3); font-size: .67rem; }
.report-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.report-fields--three { grid-template-columns: repeat(3,minmax(0,1fr)); }
.report-form .field { min-width: 0; margin-bottom: 16px; }
.report-form .field > label { display: block; margin-bottom: 7px; color: var(--ink-2); font-size: .68rem; font-weight: 800; }
.report-form .textarea { min-height: 125px; }
.report-detect { display: flex; align-items: center; gap: 14px; }
.report-detect span { color: var(--ink-3); font-size: .61rem; }
.report-success { margin-top: 18px; }
.report-success[hidden] { display: none; }
.report-success > strong { display: block; margin: 13px 0; color: var(--mc-gold); font-size: 1rem; }

@media (max-width: 900px) {
  .forum-layout { grid-template-columns: 1fr; }
  .forum-sidebar { grid-template-columns: 1fr 1fr; }
  .report-fields--three { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 680px) {
  .forum-category-row { grid-template-columns: 44px minmax(0,1fr) 18px; gap: 12px; padding: 15px; }
  .forum-category-row__stats { display: none; }
  .forum-thread-row { grid-template-columns: 36px minmax(0,1fr); }
  .forum-thread-row__stats { display: none; }
  .forum-sidebar, .forum-toolbar, .report-guidance, .report-fields, .report-fields--three { grid-template-columns: 1fr; }
  .forum-category-head { align-items: flex-start; flex-direction: column; }
  .forum-category-head .btn { width: 100%; }
  .forum-post { grid-template-columns: 1fr; }
  .forum-post__author { display: grid; grid-template-columns: 42px 1fr; column-gap: 11px; align-items: center; text-align: left; border-right: 0; border-bottom: 2px solid #0d0d10; }
  .forum-avatar { grid-row: 1 / 3; width: 40px; height: 40px; margin: 0; }
  .forum-post__author strong, .forum-post__author small { grid-column: 2; }
  .forum-post__author small { margin-top: -7px; }
  .forum-compose-foot { align-items: stretch; flex-direction: column; }
  .forum-compose-foot .btn { width: 100%; }
}
@media (max-width: 430px) {
  .forum-category-row__icon { width: 40px; height: 40px; }
  .forum-category-row p { display: none; }
  .forum-panel__head { padding-inline: 17px; }
  .forum-topic__head, .forum-reply-box { padding: 21px; }
  .forum-post__content { padding: 18px; }
  .report-form { padding: 21px; }
}
.application-privacy { margin-top: 2px; padding: 15px 17px; color: #e6d5ae; background: #3b2d19; border-left: 4px solid var(--mc-gold); }
.application-privacy p { margin: 0; font-size: .69rem; line-height: 1.65; }
.application-form-status { display: none; margin: 16px 0 0; padding: 13px 15px; font-size: .72rem; line-height: 1.55; }
.application-form-status.is-pending { display: block; color: #f5dc9c; background: #3b2d19; border-left: 4px solid var(--mc-gold); }
.application-form-status.is-error { display: block; color: #ffd4d4; background: #431f22; border-left: 4px solid #e45252; }
.application-submit { width: 100%; margin-top: 18px; }
.application-submit:disabled { opacity: .65; cursor: wait; }
.application-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.application-success { margin-top: 18px; }
.application-success[hidden] { display: none !important; }
.application-success h2 { margin: 12px 0 10px; }

@media (max-width: 560px) {
  .application-intro h1 { display: block; font-size: 2rem; }
  .application-intro h1 span { display: none; }
  .application-notice { align-items: flex-start; flex-direction: column; gap: 8px; }
  .application-form { padding: 22px; }
  .application-question { padding-bottom: 24px; }
  .application-question + .application-question { margin-top: 24px; padding-top: 24px; }
  .application-question legend > span { display: block; margin: 0 0 10px; }
  .application-option--other { grid-template-columns: 22px 1fr; }
  .application-option--other .application-other-input { grid-column: 2; }
}

@media (max-width: 700px) {
  .client-bug-callout { grid-template-columns: auto 1fr; align-items: start; }
  .client-bug-callout .btn { grid-column: 1 / -1; width: 100%; }
  .test-warning-dialog__actions { grid-template-columns: 1fr; }
}

@media (max-width: 430px) {
  .test-warning-dialog {
    width: calc(100vw - 20px);
    max-width: calc(100vw - 20px);
    max-height: calc(100vh - 20px);
  }
  .test-warning-dialog__panel { padding: 24px 20px; }
}
