/* Mizora Perps. Local brand layer; the saved reference owns the composition. */
@font-face {
  font-family: "Geist Variable";
  src: url("/assets/geist-variable.woff2") format("woff2");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

:root,
html.dark {
  --font-sans: "Geist Variable", system-ui, sans-serif;
  --font-lexend: "Geist Variable", system-ui, sans-serif;
  --mz-red: #e73536;
  --mz-red-light: #f26963;
  --mz-ink: #0b0b0d;
  --mz-paper: #f5f1eb;
  --mz-muted: #aaa5a3;
  --background: #0c0c0e;
  --foreground: var(--mz-paper);
  --surface: #171719;
  --card: #171719;
  --card-foreground: var(--mz-paper);
  --card-nested: #202023;
  --inset: #111113;
  --popover: #171719;
  --popover-foreground: var(--mz-paper);
  --primary: var(--mz-red);
  --primary-foreground: #17090a;
  --secondary: #222225;
  --secondary-foreground: var(--mz-paper);
  --muted: #222225;
  --muted-foreground: var(--mz-muted);
  --accent: #252225;
  --accent-foreground: var(--mz-paper);
  --border: #302c2d;
  --input: #141214;
  --ring: var(--mz-red-light);
  --sidebar: #0c0c0e;
  --sidebar-foreground: var(--mz-paper);
  --sidebar-primary: var(--mz-red);
  --sidebar-primary-foreground: #17090a;
  --sidebar-border: #302c2d;
  --sidebar-ring: var(--mz-red-light);
  --color-white: var(--mz-paper);
  --fp-primary: var(--mz-red);
  --fp-primary-hover: #f34c49;
  --fp-on-primary: #17090a;
  --fp-background: #0c0c0e;
  --fp-surface: #171719;
  --fp-surface-nested: #202023;
  --fp-inset: #111113;
  --fp-on-surface: var(--mz-paper);
  --fp-muted: var(--mz-muted);
  --fp-border: #302c2d;
  --fp-focus: #f69b94;
  --fp-brand-primary: var(--mz-red);
  --fp-brand-on-primary: #190707;
  --fp-gradient-pill-focus: #f5a9a0;
  --fp-gradient-pill-glow: #e7353633;
  --fp-gradient-pill-ring: linear-gradient(180deg, #ffc8ba 0%, #80252b 21%, #bb6261 60%, #ffd8cd 100%);
  --fp-gradient-pill-fill: radial-gradient(140% 400% at 50% 0%, #ff6d60 0%, #e73536 40%, #ef4b47 55%, #f46a61 70%, #ffafa0 100%);
}

body { background: var(--mz-ink); color: var(--mz-paper); font-family: "Geist Variable", system-ui, sans-serif; }
.font-display { font-family: "Geist Variable", system-ui, sans-serif; }
::selection { background: #e7353666; color: #fff7f0; }
[data-site-header] { background: #101012de; }
[data-site-header] a:hover { color: var(--mz-paper); }

/* A compact product switcher retains the reference header's two-level rhythm. */
.mz-product-bar {
  position: sticky;
  top: env(safe-area-inset-top, 0px);
  z-index: 51;
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  min-height: 56px;
  padding-inline: max(24px, calc((100vw - 1440px) / 2));
  background: linear-gradient(105deg, #0b0b0d 0%, #161012 48%, #09090b 100%);
  border-bottom: 1px solid #ffffff0c;
}
.mz-products { display: flex; align-items: stretch; flex-shrink: 0; }
.mz-product {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 154px;
  padding: 10px 20px;
  color: #aaa5a3;
  border-bottom: 2px solid transparent;
  transition: background .2s ease, color .2s ease;
}
.mz-product:hover { color: var(--mz-paper); background: #ffffff04; }
.mz-product.active {
  color: var(--mz-paper);
  border-bottom-color: var(--mz-red);
  background: linear-gradient(180deg, #ffffff0a, #e735360a);
  box-shadow: inset 1px 0 #ffffff0a, inset -1px 0 #ffffff0a;
}
.mz-product-icon { display: block; width: 23px; height: 27px; object-fit: contain; flex-shrink: 0; }
.mz-product:not(.active) .mz-product-icon { opacity: .58; filter: grayscale(1); }
.mz-product-copy { display: flex; flex-direction: column; gap: 3px; line-height: 1.1; }
.mz-product-copy strong { font-size: 14px; font-weight: 650; letter-spacing: -.02em; }
.mz-product-copy small { font-size: 11px; font-weight: 500; letter-spacing: .01em; }
.mz-product.active .mz-product-copy small { color: #f1756f; }
.mz-announcement { display: flex; align-items: center; justify-content: center; gap: 18px; padding-left: 28px; font-size: 12px; color: #c0b9b7; }
.mz-preview-tag { display: inline-flex; align-items: center; min-height: 28px; padding: 5px 10px; border: 1px solid #e735364d; border-radius: 7px; color: #ef8b82; font-size: 10px; line-height: 1.2; letter-spacing: .045em; white-space: nowrap; }
.mz-preview-tag:hover { background: #e7353612; color: #f6b0a5; }

.mz-wordmark { display: inline-flex; align-items: center; gap: 9px; color: var(--mz-paper); line-height: 1; white-space: nowrap; }
.mz-mark { display: block; width: 28px; height: 34px; object-fit: contain; }
.mz-wordmark > span { font-size: 19px; font-weight: 650; letter-spacing: .07em; }
.mz-wordmark small { display: inline-block; margin-left: 8px; padding-left: 9px; border-left: 1px solid #5a4646; color: #b3abaa; font-size: 10px; font-weight: 500; letter-spacing: .12em; vertical-align: middle; }
.mz-primary:not(.fp-gradient-pill) { color: #160708 !important; background: var(--mz-red) !important; border-color: #ef60564d !important; }
.mz-primary:not(.fp-gradient-pill):hover { background: #f2534e !important; }
.mz-eyebrow { display: inline-flex; align-items: center; gap: 10px; color: #bcb4b1; font-size: 14px; font-weight: 450; letter-spacing: -.01em; }
.mz-eyebrow::before { content: ""; width: 6px; height: 6px; flex: 0 0 6px; border-radius: 50%; background: var(--mz-red); box-shadow: 0 0 12px #e7353650; }
.landing-hero-title { color: var(--mz-paper); }
.mz-brand-logo { display: inline-flex; align-items: center; gap: 12px; }
.mz-brand-logo img { width: 30px; height: 36px; object-fit: contain; }
.mz-brand-logo span { font-size: 23px; font-weight: 600; letter-spacing: .08em; }
.mz-brand-logo small { color: #aea6a3; font-size: 11px; letter-spacing: .1em; }

/* Keep the tactile card layers, expressed in one Mizora palette. */
.landing-challenge-models[data-challenge-palette="select"] { --challenge-accent: #ef5651 !important; }
.landing-challenge-models[data-challenge-palette="prime"] { --challenge-accent: #e5d3c1 !important; }
.landing-challenge-models[data-challenge-palette="signature"] { --challenge-accent: #cb6267 !important; }
.landing-challenge-card-stage { --card-glow: var(--challenge-accent) !important; }
[data-challenge-palette-layer="select"] {
  background-image: radial-gradient(150% 220% at 15% -18%, #ffc6b8 0%, #ff9a87 20%, #ed8374 48%, #dd746c 49%, #e8897b 51%, #f38e7d 75%, #ffb29a 100%) !important;
  color: #2d0b10 !important;
  box-shadow: inset 0 -1px #16000070, inset 0 1px #ffddd3 !important;
}
[data-challenge-palette-layer="prime"] {
  background-image: radial-gradient(150% 220% at 15% -18%, #faf3e9 0%, #eadbc7 22%, #dac2b6 48%, #c49a8c 49%, #d3b3a2 51%, #e5c7b3 75%, #f4d9c8 100%) !important;
  color: #361b1e !important;
  box-shadow: inset 0 -1px #16000050, inset 0 1px #fff9ec !important;
}
[data-challenge-palette-layer="signature"] {
  background-image: radial-gradient(120% 200% at 6% 0%, #3e252c 0%, #261419 38%, #160c10 56%, #261218 78%, #482630 100%) !important;
  color: #f3c6c5 !important;
  box-shadow: inset 0 1.5px #db7678, inset 0 6px 14px -6px #ed7d6b66, inset 0 0 0 1px #ffffff0f, inset 0 -1px #000e, inset 0 -70px 90px -70px #e7353633 !important;
}
.challenge-card-face-back [data-challenge-palette-layer="select"] { background-image: radial-gradient(150% 200% at 15% 0%, #ffa495, #ef897b 52%, #e6786b) !important; }
.challenge-card-face-back [data-challenge-palette-layer="prime"] { background-image: radial-gradient(150% 200% at 15% 0%, #f9eddf, #e1cabc 54%, #c6988c) !important; }
/* Original dark card skins contain an additional black wash; remove it on light palettes. */
.challenge-card-face-front [data-challenge-palette-layer="select"] > div,
.challenge-card-face-front [data-challenge-palette-layer="prime"] > div {
  background-image: radial-gradient(120% 155% at 16% 84%, #fff0e62e 0%, #fff0e614 44%, transparent 78%) !important;
}
.landing-challenge-brand-mask { mask-image: url('/assets/mizora-mark.png') !important; -webkit-mask-image: url('/assets/mizora-mark.png') !important; }
[data-challenge-palette="select"] .landing-challenge-print,
[data-challenge-palette="select"] .landing-challenge-print > *,
[data-challenge-palette="select"] .challenge-card-face-back { color: #321016 !important; }
[data-challenge-palette="prime"] .landing-challenge-print,
[data-challenge-palette="prime"] .landing-challenge-print > *,
[data-challenge-palette="prime"] .challenge-card-face-back { color: #321c20 !important; }
[data-challenge-palette="signature"] .landing-challenge-print,
[data-challenge-palette="signature"] .landing-challenge-print > *,
[data-challenge-palette="signature"] .challenge-card-face-back { color: #f4d4cd !important; }
[data-challenge-palette="signature"] .landing-challenge-model { text-shadow: 0 1px #000a !important; }
.challenge-card-face-back > p, .challenge-card-rules, .challenge-card-rules > div { color: inherit !important; }
[data-challenge-palette="signature"] .challenge-card-face-back > p { text-shadow: 0 1px #000a !important; }
[data-challenge-palette="signature"] .landing-challenge-size { filter: drop-shadow(0 -1px 0 #0009) drop-shadow(0 1px 0 #fa88882e) !important; }
[data-challenge-palette="select"] .landing-challenge-size,
[data-challenge-palette="prime"] .landing-challenge-size { filter: none !important; }
[data-challenge-palette="select"] .landing-challenge-model,
[data-challenge-palette="prime"] .landing-challenge-model,
[data-challenge-palette="select"] .challenge-card-face-back > p,
[data-challenge-palette="prime"] .challenge-card-face-back > p { text-shadow: 0 1px #fff3 !important; }
.mz-card-kicker { margin: 0 0 8px; font-size: 10px; line-height: 1.2; font-weight: 650; letter-spacing: .08em; text-transform: uppercase; }
.mz-plan-label { font-size: clamp(23px, 2.9vw, 36px); line-height: 1.1; font-weight: 650; letter-spacing: -.045em; }
.mz-model-note { max-width: 66ch; margin: 12px 0 0; color: #b9aaa5; font-size: 12px; line-height: 1.65; }
.mz-model-note a, .mz-reference-note a { color: #f48b80; text-decoration: underline; text-underline-offset: 3px; }
.mz-reference-note { max-width: 68ch; color: #a99e9b; font-size: 12px; line-height: 1.7; }

/* This section is brand red. Market gains keep their semantic green. */
.landing-agents { background: radial-gradient(82% 52% at 50% -6%, #e7353633 0%, #e7353610 44%, transparent 74%), radial-gradient(152% 82% at 50% -8%, #44171e4d 0%, transparent 62%), linear-gradient(#10090b 0%, #0c090c 34%, #070609 64%, #000 100%); }
.landing-agent-rail-fill, .landing-agent-track-fill { background: #e75a54; }
.landing-agent-ring circle { stroke: #e76b63; }
.landing-agent-steps > li[data-state="pass"], .landing-agent-run-foot svg { color: #ed8b7f; }
.landing-agent-run .text-gain { color: #f0998b; }
li[data-state="done"] > .landing-agent-mark { border-color: #74433f; }
li[data-state="pass"] > .landing-agent-mark { background: #402221; border-color: #ac6057; }
.landing-agent-flag[data-state="now"] { color: #f19183; border-color: #8b4f49; }
.mz-rulebook-code { min-height: 330px; padding: 28px; color: #d8cfca; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 13px; line-height: 1.85; white-space: pre-wrap; overflow-wrap: anywhere; }
.mz-rulebook-code strong { color: #ed8679; font-weight: 500; }

.local-dialog { background: #151315; border-color: #403235; color: var(--mz-paper); }
.local-input { background: #0d0b0d; border-color: #443538; }
.local-input:focus, .local-dialog button:focus-visible, .local-link:focus-visible { outline-color: #ed746b; }
.local-action-primary { color: #170708; background: var(--mz-red); border-color: var(--mz-red); }
.local-action-primary:hover { background: #f4554e; }
.local-link:hover, .local-link:focus-visible { color: #f28b80; }
.local-cookie-option input { accent-color: var(--mz-red); }
.local-support-launcher { color: #180708; background: var(--mz-red); box-shadow: 0 6px 24px #e7353618; }
.local-support-launcher:hover { background: #f4554e; }
.local-toast { background: #211719; border-color: #594043; color: #f5e7e0; }
.local-form-feedback { color: #f3aa9b; }

@media (min-width: 1280px) {
  [data-site-header] .mz-wordmark { margin-right: 8px; }
}
@media (max-width: 1023px) {
  .mz-product-bar { padding-inline: 16px; }
  .mz-announcement { gap: 12px; font-size: 11px; }
  .mz-product { min-width: 138px; padding-inline: 16px; }
}
@media (max-width: 767px) {
  .mz-product-bar { padding-inline: 8px; }
  .mz-announcement { gap: 0; padding-left: 8px; }
  .mz-announcement > :not(.mz-preview-tag) { display: none; }
  .mz-product { min-width: 122px; gap: 8px; padding: 10px 12px; }
  .mz-product-copy strong { font-size: 13px; }
  .mz-product-copy small { font-size: 10px; }
  .mz-preview-tag { padding: 5px 7px; font-size: 9px; }
  .mz-wordmark { gap: 7px; }
  .mz-wordmark > span { font-size: 17px; letter-spacing: .045em; }
  .mz-wordmark small { font-size: 9px; margin-left: 6px; padding-left: 7px; }
  .mz-mark { width: 24px; height: 29px; }
  .mz-eyebrow { font-size: 13px; }
}
@media (max-width: 479px) {
  .mz-product-bar { min-height: 52px; }
  .mz-product { min-width: 112px; padding-inline: 10px; }
  .mz-product-icon { width: 18px; height: 23px; }
  .mz-wordmark > span { font-size: 16px; }
  .mz-wordmark small { display: none; }
  .mz-announcement { padding-left: 5px; }
  .mz-preview-tag { max-width: 96px; text-align: center; white-space: normal; }
  .mz-rulebook-code { padding: 22px; font-size: 12px; }
  .mz-model-note { font-size: 11px; }
}

/* Brand copy additions within the preserved section structure. */
:root { --product-switcher-height: 56px; }
.mz-product-bar { height: 56px; }
.landing-hero-title { text-wrap: initial; }
.mz-account-mark { display:flex; justify-content:center; align-items:center; height:94px; }
.mz-account-mark img { width:52px; height:56px; object-fit:contain; opacity:.84; }
.landing-agent-lang { flex-wrap:wrap; }
.landing-agent-code-bar { flex-wrap:wrap; row-gap:12px; }
.landing-agent-code-bar > span { color:#aaa09e; font-size:11px; }
.mz-rulebook-code { min-height:350px; }
.mz-faq-link { display:inline-block; margin-top:12px; color:#f18b80; text-decoration:underline; text-underline-offset:4px; }
.mz-secondary-link { display:inline-flex; align-items:center; justify-content:center; gap:16px; padding:14px 20px; color:#c9c2be; font-size:14px; }
.mz-footer { background:#0d0c0e; border-top:1px solid #272326; }
.mz-footer-inner { max-width:1440px; margin:auto; padding:56px 120px 28px; }
.mz-footer-top { display:flex; justify-content:space-between; align-items:flex-start; gap:48px; }
.mz-footer nav { display:grid; grid-template-columns:repeat(3,1fr); gap:48px; }
.mz-footer h2 { margin:0 0 14px; font-size:13px; font-weight:550; color:#f0e6e0; }
.mz-footer li { margin:0 0 12px; font-size:13px; color:#a79f9e; }
.mz-footer a:hover { color:#f18880; }
.mz-footer-note { display:grid; grid-template-columns:1fr 1fr; gap:48px; margin-top:48px; padding-top:24px; border-top:1px solid #2a2426; color:#948a8b; font-size:11px; line-height:1.8; }
.mz-footer-bottom { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-top:32px; font-size:11px; color:#8b8283; }
.mz-footer-bottom div { display:flex; gap:24px; }
.mz-footer-bottom button { min-height:36px; cursor:pointer; }
@media(max-width:1023px){.mz-footer-inner{padding:48px;}.mz-footer nav{gap:32px;}.mz-footer-top{gap:32px;}}
@media(max-width:767px){.mz-footer-inner{padding:40px 24px 24px;}.mz-footer-top{flex-direction:column;}.mz-footer nav{width:100%;gap:20px;}.mz-footer-note{grid-template-columns:1fr;gap:16px;margin-top:28px;}.mz-footer-bottom{align-items:flex-start;flex-direction:column;gap:8px;}.mz-footer-bottom div{gap:24px;}.mz-rulebook-code{min-height:310px;}.mz-product{min-width:116px;}}
@media(max-width:479px){:root{--product-switcher-height:52px;}.mz-product-bar{height:52px;}.mz-product{min-width:104px;}.mz-product-copy small{font-size:9px;}.mz-product-bar .mz-preview-tag{max-width:82px;font-size:8px;}.mz-wordmark{gap:6px;}}

/* Compact mobile controls keep the brand and primary action visible at 320px. */
.mz-footer :is(a, button):focus-visible,
.mz-product:focus-visible,
.mz-preview-tag:focus-visible {
  outline: 2px solid #f49a8d;
  outline-offset: 4px;
  border-radius: 4px;
}
.mz-footer-bottom button { min-height: 44px; }
@media (max-width: 639px) {
  [data-site-header] button[aria-label="Command Palette"],
  [data-site-header] button[aria-label="Change language"] { display: none; }
  [data-site-header] > nav > div:first-child { gap: 8px; }
  [data-site-header] button[aria-label="Open Menu"] { width: 40px; height: 44px; }
  [data-site-header] > nav > div:last-child { gap: 2px; }
  [data-site-header] > nav > div:last-child > a { min-height: 40px; padding-inline: 10px; font-size: 12px; }
  .mz-footer nav a { display: inline-flex; align-items: center; min-height: 44px; }
  .mz-footer li { margin-bottom: 4px; }
}
@media (max-width: 379px) {
  [data-site-header] > nav > div:last-child > a:not(.mz-primary) { display: none; }
  .mz-products .mz-product { min-width: 100px; padding-inline: 12px; }
  .mz-product-copy small { display: none; }
  .mz-footer nav { gap: 12px; }
  .mz-footer nav a { font-size: 12px; }
}
/* Generated tab marks use their full silhouette at small sizes. */
.mz-product-icon { width:30px; height:30px; object-fit:contain; }
.mz-product:not(.active) .mz-product-icon { filter:none; opacity:.9; }
.mz-wordmark .mz-mark { width:34px; height:34px; }
.mz-brand-logo img { width:40px; height:40px; }
@media(max-width:479px){.mz-product-icon{width:25px;height:25px;}.mz-wordmark .mz-mark{width:28px;height:28px;}}
