:root {
  --ink: #040605;
  --panel: #0f1512;
  --paper: #ffffff;
  --paper-soft: #f5f8f5;
  --green: #00c805;
  --acid: #a3f7bf;
  --red: #ff5000;
  --blue: #00a8ff;
  --line: rgba(255, 255, 255, 0.16);
  --shadow: 0 20px 70px rgba(0, 0, 0, 0.34);
}

* {
  box-sizing: border-box;
}

[hidden] { display: none !important; }

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  background: var(--ink);
  color: var(--paper);
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-weight: 700;
  letter-spacing: 0;
}

body::before {
  position: fixed;
  inset: 0;
  z-index: -2;
  content: "";
  background:
    linear-gradient(rgba(0, 200, 5, 0.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0, 200, 5, 0.05) 1px, transparent 1px),
    #040605;
  background-size: 44px 44px;
}

a {
  color: inherit;
  text-decoration: none;
}

img {
  display: block;
  max-width: 100%;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 14px clamp(18px, 4vw, 54px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(4, 6, 5, 0.86);
  backdrop-filter: blur(16px);
}

.brand-lockup {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  font-family: "Archivo Black", Inter, sans-serif;
  text-transform: uppercase;
}

.brand-mark {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  overflow: hidden;
  border: 2px solid var(--green);
  background: var(--green);
  color: var(--ink);
  box-shadow: 4px 4px 0 rgba(0, 200, 5, 0.32);
}

.brand-mark img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  image-rendering: pixelated;
}

nav {
  display: flex;
  align-items: center;
  gap: clamp(10px, 2vw, 22px);
  color: rgba(255, 255, 255, 0.78);
  font-size: 0.82rem;
  text-transform: uppercase;
}

nav a {
  transition: color 160ms ease, transform 160ms ease;
}

nav a:hover {
  color: var(--green);
  transform: translateY(-1px);
}

.nav-cta {
  padding: 10px 12px;
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.06);
}

.is-disabled {
  cursor: not-allowed;
  opacity: 0.58;
}

.hero {
  position: relative;
  display: grid;
  min-height: clamp(520px, 72svh, 680px);
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  gap: clamp(28px, 5vw, 72px);
  overflow: hidden;
  padding: clamp(54px, 8vw, 86px) clamp(18px, 5vw, 72px) clamp(46px, 7vw, 74px);
}

.hero::after {
  position: absolute;
  inset: auto 0 0;
  height: 30%;
  pointer-events: none;
  content: "";
  background: linear-gradient(transparent, rgba(4, 6, 5, 0.82));
}

.hero-bg {
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    radial-gradient(circle at 78% 20%, rgba(0, 200, 5, 0.18), transparent 28%),
    repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.06) 0 2px, transparent 2px 7px),
    var(--ink);
}

.hero-bg::after {
  position: absolute;
  inset: 0;
  content: "";
  background: linear-gradient(90deg, rgba(4, 6, 5, 0.96), rgba(4, 6, 5, 0.78));
}

.hero-bg img {
  display: none;
}

.hero-inner {
  max-width: 860px;
}

.hero-inner,
.hero-showcase,
.market-strip,
.ticker-terminal {
  position: relative;
  z-index: 1;
}

.eyebrow {
  margin: 0 0 14px;
  color: var(--green);
  font-size: clamp(0.76rem, 1.7vw, 0.9rem);
  font-weight: 900;
  text-transform: uppercase;
}

h1,
h2,
h3,
p {
  margin-top: 0;
}

h1,
h2 {
  max-width: 980px;
  font-family: "Archivo Black", Inter, sans-serif;
  line-height: 0.92;
  text-transform: uppercase;
}

h1 {
  margin-bottom: 20px;
  color: var(--paper);
  font-size: clamp(3.4rem, 9.5vw, 7.6rem);
  text-shadow: 0 4px 0 #000, 0 0 22px rgba(0, 200, 5, 0.45);
}

h2 {
  margin-bottom: 18px;
  font-size: clamp(2.2rem, 7vw, 5.9rem);
}

h3 {
  margin-bottom: 10px;
  font-family: "Archivo Black", Inter, sans-serif;
  font-size: 1.28rem;
  text-transform: uppercase;
}

.hero-copy {
  max-width: 700px;
  color: rgba(255, 255, 255, 0.88);
  font-size: clamp(1.05rem, 2vw, 1.45rem);
  line-height: 1.45;
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.button {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  padding: 13px 18px;
  border: 2px solid var(--paper);
  cursor: pointer;
  font: inherit;
  font-weight: 900;
  text-transform: uppercase;
  box-shadow: 5px 5px 0 var(--paper);
  transition: transform 160ms ease, box-shadow 160ms ease;
}

.button:disabled {
  cursor: not-allowed;
  filter: grayscale(0.35);
  opacity: 0.68;
}

.button:hover {
  transform: translate(3px, 3px);
  box-shadow: 2px 2px 0 var(--paper);
}

.button-primary {
  background: var(--green);
  color: var(--ink);
}

.button-secondary {
  background: rgba(255, 255, 255, 0.08);
  color: var(--paper);
}

.button-dark {
  border-color: var(--ink);
  background: var(--ink);
  color: var(--paper);
  box-shadow: 5px 5px 0 var(--green);
}

.market-strip {
  padding: 28px clamp(18px, 5vw, 72px) 34px;
  background: var(--ink);
}

.market-strip-inner {
  display: grid;
  width: min(1160px, 100%);
  margin: 0 auto;
  grid-template-columns: 1fr;
  gap: 18px;
  align-items: stretch;
}

.hero-showcase {
  display: grid;
  align-self: center;
  gap: 18px;
}

.ticker-terminal {
  align-self: center;
  border: 2px solid var(--green);
  background: rgba(4, 6, 5, 0.88);
  box-shadow: var(--shadow), 8px 8px 0 var(--green);
}

.terminal-top,
.terminal-price {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  border-bottom: 1px solid var(--line);
  padding: 16px;
  text-transform: uppercase;
}

.terminal-top {
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.78rem;
}

.terminal-top strong {
  color: var(--green);
}

.terminal-price strong {
  color: var(--green);
  font-size: clamp(2rem, 6vw, 3.4rem);
}

.candle-row {
  display: flex;
  align-items: end;
  gap: 9px;
  height: 170px;
  padding: 16px;
  border-bottom: 1px solid var(--line);
}

.candle-row span {
  flex: 1;
  min-width: 13px;
  background: var(--green);
}

.candle-row span:nth-child(2n) {
  background: var(--red);
}

.candle-row span:nth-child(1) { height: 24%; }
.candle-row span:nth-child(2) { height: 38%; }
.candle-row span:nth-child(3) { height: 32%; }
.candle-row span:nth-child(4) { height: 51%; }
.candle-row span:nth-child(5) { height: 44%; }
.candle-row span:nth-child(6) { height: 67%; }
.candle-row span:nth-child(7) { height: 58%; }
.candle-row span:nth-child(8) { height: 76%; }
.candle-row span:nth-child(9) { height: 100%; background: var(--acid); }

.ticker-terminal p {
  margin: 0;
  padding: 16px;
  color: rgba(255, 255, 255, 0.78);
  line-height: 1.45;
}

.section-band {
  background: var(--paper);
  color: var(--ink);
}

.section-grid,
.content-shell,
.manifesto {
  width: min(1160px, calc(100% - 36px));
  margin: 0 auto;
}

.intro {
  padding: clamp(42px, 7vw, 78px) 0;
}

.section-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(280px, 1fr);
  gap: clamp(28px, 6vw, 80px);
  align-items: center;
}

.section-grid p:last-child {
  margin: 0;
  font-size: clamp(1.04rem, 2vw, 1.35rem);
  line-height: 1.5;
}

.lore-section,
.gallery-section {
  padding: clamp(58px, 9vw, 112px) 0;
}

.section-heading {
  max-width: 900px;
  margin-bottom: clamp(28px, 5vw, 54px);
}

.lore-flow {
  display: grid;
  max-width: 900px;
  gap: 20px;
  color: rgba(255, 255, 255, 0.86);
  font-size: clamp(1.05rem, 2vw, 1.32rem);
  line-height: 1.58;
}

.lore-flow p {
  margin: 0;
}

.lore-flow strong {
  color: var(--green);
}

blockquote {
  margin: 12px 0;
  border-left: 8px solid var(--green);
  padding: 18px 0 18px 22px;
  color: var(--paper);
  font-family: "Archivo Black", Inter, sans-serif;
  font-size: clamp(1.6rem, 4vw, 3.6rem);
  line-height: 1;
  text-transform: uppercase;
}

.strategy-section,
.manifesto-section {
  padding: clamp(58px, 9vw, 104px) 0;
}

.tickerhead-quiz { padding: clamp(64px, 10vw, 118px) 0; background: radial-gradient(circle at 82% 14%, rgba(0, 200, 5, 0.2), transparent 28%), var(--ink); }
.quiz-heading { max-width: 820px; }
.quiz-heading > p:last-child { max-width: 680px; color: rgba(255, 255, 255, 0.7); font-size: clamp(1rem, 2vw, 1.24rem); line-height: 1.55; }
.quiz-layout { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.72fr); gap: clamp(24px, 5vw, 64px); align-items: start; }
.tickerhead-quiz-form { display: grid; gap: 18px; }
.quiz-handle { display: grid; gap: 8px; padding: 18px; border: 1px solid var(--line); background: rgba(255, 255, 255, 0.04); text-transform: uppercase; }
.quiz-handle span { font-size: 0.78rem; font-weight: 900; }
.quiz-handle small { margin-left: 8px; color: rgba(255, 255, 255, 0.45); }
.quiz-handle input { width: 100%; min-height: 48px; border: 1px solid rgba(255, 255, 255, 0.26); border-radius: 0; padding: 10px 12px; background: var(--ink); color: var(--paper); font: inherit; outline: none; }
.quiz-handle input:focus { border-color: var(--green); box-shadow: 0 0 0 3px rgba(0, 200, 5, 0.18); }
.quiz-progress { display: grid; gap: 8px; color: rgba(255, 255, 255, 0.68); font-size: 0.76rem; text-transform: uppercase; }
.quiz-progress span { display: flex; justify-content: flex-end; gap: 3px; }
.quiz-progress strong { color: var(--green); }
.quiz-progress > div { height: 8px; overflow: hidden; background: rgba(255, 255, 255, 0.12); }
.quiz-progress i { display: block; width: 0; height: 100%; background: var(--green); transition: width 220ms ease; }
.tickerhead-quiz-form fieldset { display: grid; gap: 9px; margin: 0; border: 1px solid var(--line); padding: 18px; background: rgba(15, 21, 18, 0.92); }
.tickerhead-quiz-form legend { padding: 0 8px 0 0; font-family: "Archivo Black", Inter, sans-serif; font-size: clamp(1rem, 2.2vw, 1.3rem); text-transform: uppercase; }
.tickerhead-quiz-form legend span { margin-right: 10px; color: var(--green); }
.tickerhead-quiz-form fieldset label { display: grid; grid-template-columns: 18px 1fr; align-items: center; gap: 10px; min-height: 44px; border: 1px solid rgba(255, 255, 255, 0.12); padding: 9px 11px; color: rgba(255, 255, 255, 0.78); cursor: pointer; transition: border-color 160ms ease, background 160ms ease, color 160ms ease; }
.tickerhead-quiz-form fieldset label:hover, .tickerhead-quiz-form fieldset label:has(input:checked) { border-color: var(--green); background: rgba(0, 200, 5, 0.11); color: var(--paper); }
.tickerhead-quiz-form input[type="radio"] { width: 16px; height: 16px; margin: 0; accent-color: var(--green); }
.quiz-submit { width: 100%; }
.quiz-result { position: sticky; top: 96px; min-height: 480px; border: 2px solid var(--green); padding: 18px; background: rgba(4, 6, 5, 0.94); box-shadow: 10px 10px 0 rgba(0, 200, 5, 0.6); }
.quiz-result-empty { display: grid; min-height: 440px; place-content: center; gap: 10px; text-align: center; }
.quiz-result-empty span { color: var(--green); font-family: "Archivo Black", Inter, sans-serif; font-size: 7rem; line-height: 0.8; text-shadow: 5px 5px 0 rgba(0, 200, 5, 0.2); }
.quiz-result-empty strong { font-family: "Archivo Black", Inter, sans-serif; font-size: 1.35rem; text-transform: uppercase; }
.quiz-result-empty p { max-width: 280px; margin: 0; color: rgba(255, 255, 255, 0.58); line-height: 1.45; }
.quiz-result-ready { display: grid; gap: 18px; }
.quiz-result-ready > img { width: 100%; border: 1px solid rgba(255, 255, 255, 0.2); background: var(--green); }
.quiz-result-copy h3 { margin: 0 0 8px; color: var(--green); font-size: clamp(1.65rem, 4vw, 2.5rem); }
.quiz-result-copy p:last-child { margin: 0; color: rgba(255, 255, 255, 0.68); line-height: 1.5; }
.quiz-result-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.quiz-result-actions .button { width: 100%; }
.quiz-post-x { grid-column: 1 / -1; }
.quiz-result-actions .button:disabled, .quiz-submit:disabled { cursor: not-allowed; opacity: 0.5; }
.quiz-restart { grid-column: 1 / -1; min-height: 40px; border: 0; background: transparent; color: rgba(255, 255, 255, 0.58); font: inherit; font-size: 0.76rem; font-weight: 900; text-decoration: underline; text-transform: uppercase; cursor: pointer; }
.quiz-signal-cta { display: grid; gap: 4px; border: 1px solid rgba(0, 200, 5, 0.45); padding: 14px; background: rgba(0, 200, 5, 0.08); transition: border-color 160ms ease, background 160ms ease; }
.quiz-signal-cta:hover { border-color: var(--green); background: rgba(0, 200, 5, 0.16); }
.quiz-signal-cta span { color: rgba(255, 255, 255, 0.55); font-size: 0.7rem; text-transform: uppercase; }
.quiz-signal-cta strong { color: var(--green); font-size: 0.9rem; text-transform: uppercase; }
.quiz-share-note { color: rgba(255, 255, 255, 0.5); line-height: 1.45; text-align: center; }

.list-hero {
  padding: clamp(72px, 11vw, 132px) 0 clamp(54px, 8vw, 96px);
  background: radial-gradient(circle at 84% 10%, rgba(0, 200, 5, 0.23), transparent 28%);
}

.list-intro { max-width: 730px; font-size: clamp(1.1rem, 2.1vw, 1.42rem); line-height: 1.5; color: rgba(255, 255, 255, 0.86); }
.list-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.identity-lock-note { max-width: 720px; margin: 18px 0 0; border-left: 3px solid var(--green); padding: 10px 13px; background: rgba(0, 200, 5, 0.08); color: rgba(255, 255, 255, 0.68); font-size: 0.82rem; line-height: 1.5; }
.identity-lock-note strong { color: var(--paper); }
.launch-note { margin: 18px 0 0; color: rgba(255, 255, 255, 0.65); font-size: 0.9rem; line-height: 1.45; }

.list-dashboard { padding: 0 0 clamp(62px, 9vw, 112px); }
.list-layout { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(300px, 0.68fr); gap: 24px; align-items: start; }
.mission-panel, .signal-panel { border: 2px solid var(--line); background: rgba(15, 21, 18, 0.88); box-shadow: var(--shadow); }
.mission-panel { overflow: hidden; }
.panel-heading { padding: 28px 24px 20px; border-bottom: 1px solid var(--line); }
.panel-heading h2 { margin-bottom: 0; font-size: clamp(2rem, 5vw, 3.4rem); }
.mission-list { display: grid; }
.mission { display: grid; grid-template-columns: 24px minmax(0, 1fr) auto; align-items: center; gap: 14px; min-height: 80px; padding: 14px 20px; border-bottom: 1px solid var(--line); cursor: pointer; transition: background 180ms ease; }
.mission:last-child { border-bottom: 0; }
.mission:hover { background: rgba(0, 200, 5, 0.08); }
.mission > input[data-mission] {
  display: grid;
  width: 20px;
  height: 20px;
  appearance: none;
  place-content: center;
  border: 2px solid rgba(255, 255, 255, 0.38);
  background: rgba(4, 6, 5, 0.7);
  opacity: 1;
}
.mission > input[data-mission]:checked { border-color: var(--green); background: rgba(0, 200, 5, 0.14); box-shadow: 0 0 12px rgba(0, 200, 5, 0.5); }
.mission > input[data-mission]:checked::after { content: "✓"; color: var(--green); font-size: 15px; font-weight: 1000; line-height: 1; }
.mission strong, .mission small { display: block; }
.mission-result { margin-top: 9px; color: var(--acid) !important; line-height: 1.45; }
.mission-result.is-error { color: #ff9770 !important; }
.partner-collections { margin-top: 8px; color: rgba(255, 255, 255, 0.7); font-size: 0.75rem; line-height: 1.45; }
.partner-collections summary { min-height: 30px; cursor: pointer; color: var(--acid); font-weight: 900; text-transform: uppercase; }
.partner-collections span { display: block; padding-top: 6px; }
.mission strong { font-size: 0.96rem; text-transform: uppercase; }
.mission small { margin-top: 4px; color: rgba(255, 255, 255, 0.57); font-size: 0.78rem; font-weight: 700; }
.mission b { color: var(--green); font-family: "Archivo Black", Inter, sans-serif; }
.mission:has(input:checked) { background: rgba(0, 200, 5, 0.13); }
.mission.is-pending { opacity: 0.62; }
.mission-action { display: inline-flex; min-height: 32px; align-items: center; margin-top: 9px; border: 1px solid var(--green); padding: 5px 9px; background: transparent; color: var(--green); font: inherit; font-size: 0.68rem; font-weight: 900; text-transform: uppercase; cursor: pointer; transition: background 180ms ease, color 180ms ease; }
.mission-action:hover, .mission-action:focus-visible { background: var(--green); color: var(--ink); }
.mission-action:disabled { cursor: not-allowed; opacity: 0.75; }
.card-share-actions { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 8px; align-items: stretch; margin-top: 9px; }
.card-share-actions .mission-action { min-height: 36px; justify-content: center; margin-top: 0; text-decoration: none; }
.content-post-actions { grid-template-columns: minmax(0, 1fr) auto; }
.card-share-url, .content-post-url { width: 100%; min-width: 0; border: 1px solid rgba(255, 255, 255, 0.28); padding: 7px 9px; background: var(--ink); color: var(--paper); font: inherit; font-size: 0.72rem; outline: none; }
.card-share-url::placeholder, .content-post-url::placeholder { color: rgba(255, 255, 255, 0.4); }
.card-share-url:focus, .content-post-url:focus { border-color: var(--green); box-shadow: 0 0 0 3px rgba(0, 200, 5, 0.14); }
.card-share-url:disabled, .content-post-url:disabled { cursor: not-allowed; opacity: 0.6; }
.signal-panel { position: sticky; top: 100px; padding: 26px; }
.signal-score { display: block; margin: 4px 0 8px; color: var(--green); font-family: "Archivo Black", Inter, sans-serif; font-size: clamp(4.5rem, 11vw, 7rem); line-height: 0.9; }
.signal-tier { display: inline-flex; align-items: center; gap: 8px; padding: 8px 10px; background: rgba(0, 200, 5, 0.13); color: var(--acid); font-size: 0.78rem; text-transform: uppercase; }
.status-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--green); box-shadow: 0 0 10px var(--green); }
.tier-description, .wl-status p { color: rgba(255, 255, 255, 0.72); font-size: 0.92rem; line-height: 1.5; }
.progress-note { margin: 9px 0 24px; color: rgba(255, 255, 255, 0.62); font-size: 0.8rem; }
.referral-box, .wl-status { padding: 18px; border: 1px solid var(--line); }
.referral-box span, .wl-status span { display: block; color: rgba(255, 255, 255, 0.6); font-size: 0.73rem; text-transform: uppercase; }
.referral-box strong, .wl-status strong { display: block; margin: 5px 0 13px; font-family: "Archivo Black", Inter, sans-serif; font-size: 1.2rem; }
.copy-referral { width: 100%; min-height: 44px; border: 1px solid var(--green); background: transparent; color: var(--green); font: inherit; font-size: 0.78rem; font-weight: 900; text-transform: uppercase; cursor: pointer; transition: background 180ms ease, color 180ms ease; }
.copy-referral:hover, .copy-referral:focus-visible { background: var(--green); color: var(--ink); }
.copy-referral:disabled { cursor: not-allowed; opacity: 0.55; }
.referral-box small { display: block; margin-top: 12px; color: rgba(255,255,255,0.55); font-size: 0.74rem; line-height: 1.45; }
.wl-status { margin-top: 14px; }
.wl-status strong { color: var(--acid); }
.wl-status p { margin: 0; }
.tier-section { padding: clamp(58px, 9vw, 104px) 0; }
.tier-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.tier-grid article { min-height: 220px; padding: 20px; border: 2px solid var(--ink); background: #f7fbf7; box-shadow: 5px 5px 0 var(--ink); }
.tier-grid span { color: var(--green); font-family: "Archivo Black", Inter, sans-serif; font-size: 1.2rem; }
.tier-grid p { margin: 0; line-height: 1.45; }
.tier-note { max-width: 820px; margin: 24px auto 0; color: rgba(4, 6, 5, 0.68); font-size: 0.82rem; line-height: 1.5; text-align: center; text-transform: uppercase; }

.recovery-page { min-height: 100vh; background: radial-gradient(circle at 90% 5%, rgba(0, 200, 5, 0.18), transparent 28%), var(--ink); }
.recovery-shell { width: min(1120px, calc(100% - 32px)); margin: 0 auto; padding: 26px 0 80px; }
.recovery-user-shell { width: min(900px, calc(100% - 32px)); }
.recovery-header, .recovery-title-row { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.recovery-header { margin-bottom: clamp(44px, 8vw, 82px); }
.admin-badge, .recovery-status { border: 1px solid var(--green); padding: 7px 10px; color: var(--green); font-size: 0.7rem; font-weight: 900; text-transform: uppercase; }
.recovery-card { border: 2px solid var(--line); padding: clamp(22px, 4vw, 38px); background: rgba(15, 21, 18, 0.94); box-shadow: var(--shadow); }
.recovery-card + .recovery-card, .recovery-queue { margin-top: 30px; }
.recovery-card h1, .recovery-title-row h1 { max-width: 820px; margin-bottom: 16px; font-size: clamp(2.5rem, 7vw, 5.5rem); }
.recovery-card h2, .recovery-title-row h2 { margin-bottom: 14px; font-size: clamp(1.7rem, 4vw, 2.8rem); }
.recovery-card > p, .recovery-title-row p { color: rgba(255, 255, 255, 0.68); line-height: 1.55; }
.recovery-login { max-width: 720px; margin: 0 auto; }
.recovery-form { display: grid; gap: 16px; margin-top: 24px; }
.recovery-form label { display: grid; gap: 8px; color: var(--paper); font-size: 0.78rem; font-weight: 900; text-transform: uppercase; }
.recovery-form input, .recovery-form textarea, .generated-recovery-link input { width: 100%; border: 1px solid rgba(255, 255, 255, 0.28); border-radius: 0; padding: 13px; background: var(--ink); color: var(--paper); font: inherit; outline: none; }
.recovery-form input:focus, .recovery-form textarea:focus, .generated-recovery-link input:focus { border-color: var(--green); box-shadow: 0 0 0 3px rgba(0, 200, 5, 0.16); }
.recovery-create-form { grid-template-columns: minmax(220px, 0.6fr) minmax(280px, 1.4fr); align-items: end; }
.recovery-create-form .button { grid-column: 1 / -1; }
.generated-recovery-link { display: grid; grid-template-columns: 1fr auto; gap: 10px; margin-top: 22px; border: 1px solid var(--green); padding: 16px; background: rgba(0, 200, 5, 0.08); }
.generated-recovery-link strong { grid-column: 1 / -1; color: var(--green); text-transform: uppercase; }
.recovery-message { margin: 18px 0 0; color: var(--acid) !important; font-weight: 800; }
.recovery-message.is-error { color: #ff9770 !important; }
.recovery-title-row.compact { margin-bottom: 18px; }
.recovery-title-row.compact h2 { margin: 0; }
.recovery-list { display: grid; gap: 18px; }
.recovery-request-card { border: 1px solid var(--line); padding: 22px; background: rgba(15, 21, 18, 0.9); }
.recovery-request-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.recovery-request-heading h3 { margin: 12px 0 0; color: var(--paper); font-size: clamp(1.4rem, 4vw, 2.2rem); }
.recovery-request-heading > strong { color: var(--green); font-family: "Archivo Black", Inter, sans-serif; }
.recovery-request-card dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 22px 0; }
.recovery-request-card dl div, .recovery-account-grid article { border: 1px solid rgba(255, 255, 255, 0.14); padding: 12px; }
.recovery-request-card dt, .recovery-account-grid span { color: rgba(255, 255, 255, 0.5); font-size: 0.68rem; text-transform: uppercase; }
.recovery-request-card dd { margin: 5px 0 0; overflow-wrap: anywhere; color: var(--paper); font-weight: 800; }
.recovery-request-card > p { color: rgba(255, 255, 255, 0.68); line-height: 1.5; }
.recovery-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 18px; }
.content-review-section { border-top: 1px solid var(--line); padding-top: 30px; }
.card-review-section { border-top: 1px solid var(--line); padding-top: 30px; }
.content-submission-link { display: inline-flex; margin-top: 8px; color: var(--green); font-weight: 900; overflow-wrap: anywhere; }
.content-bonus-form { display: grid; grid-template-columns: 130px minmax(0, 1fr) auto; gap: 10px; align-items: end; margin-top: 18px; }
.content-bonus-form label { display: grid; gap: 7px; color: rgba(255, 255, 255, 0.65); font-size: 0.7rem; font-weight: 900; text-transform: uppercase; }
.content-bonus-form input { width: 100%; min-height: 44px; border: 1px solid rgba(255, 255, 255, 0.28); padding: 9px; background: var(--ink); color: var(--paper); font: inherit; outline: none; }
.content-bonus-form input:focus { border-color: var(--green); box-shadow: 0 0 0 3px rgba(0, 200, 5, 0.14); }
.card-review-form { margin-top: 18px; }
.card-review-form label { display: grid; gap: 7px; color: rgba(255, 255, 255, 0.65); font-size: 0.7rem; font-weight: 900; text-transform: uppercase; }
.card-review-form input { width: 100%; min-height: 44px; border: 1px solid rgba(255, 255, 255, 0.28); padding: 9px; background: var(--ink); color: var(--paper); font: inherit; outline: none; }
.card-review-form input:focus { border-color: var(--green); box-shadow: 0 0 0 3px rgba(0, 200, 5, 0.14); }
.content-bonus-awarded { margin-top: 18px; border-left: 3px solid var(--green); padding: 12px; background: rgba(0, 200, 5, 0.08); color: var(--paper); line-height: 1.5; }
.admin-queue-toolbar { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 0.65fr) auto; gap: 12px; align-items: center; margin-bottom: 18px; border: 1px solid var(--line); padding: 12px; background: rgba(15, 21, 18, 0.72); }
.admin-filter-tabs { display: flex; flex-wrap: wrap; gap: 7px; }
.admin-filter-tabs button { min-height: 38px; border: 1px solid rgba(255, 255, 255, 0.2); padding: 7px 10px; background: transparent; color: rgba(255, 255, 255, 0.68); font: inherit; font-size: 0.7rem; font-weight: 900; text-transform: uppercase; cursor: pointer; }
.admin-filter-tabs button:hover, .admin-filter-tabs button:focus-visible, .admin-filter-tabs button.is-active { border-color: var(--green); background: rgba(0, 200, 5, 0.14); color: var(--green); }
.admin-filter-tabs span { margin-left: 4px; color: var(--paper); }
.admin-queue-search { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }
.admin-queue-search input, .admin-page-size select { width: 100%; min-height: 42px; border: 1px solid rgba(255, 255, 255, 0.28); padding: 9px; background: var(--ink); color: var(--paper); font: inherit; outline: none; }
.admin-queue-search input:focus, .admin-page-size select:focus { border-color: var(--green); box-shadow: 0 0 0 3px rgba(0, 200, 5, 0.14); }
.admin-queue-search .button { min-height: 42px; padding: 8px 12px; }
.admin-page-size { display: grid; grid-template-columns: auto 72px; align-items: center; gap: 8px; color: rgba(255, 255, 255, 0.62); font-size: 0.7rem; font-weight: 900; text-transform: uppercase; }
.admin-pagination { display: flex; align-items: center; justify-content: center; gap: 14px; margin-top: 20px; }
.admin-pagination span { min-width: 180px; color: rgba(255, 255, 255, 0.68); font-size: 0.76rem; font-weight: 900; text-align: center; text-transform: uppercase; }
.admin-pagination .button { min-height: 40px; padding: 8px 13px; }
.admin-pagination .button:disabled { cursor: not-allowed; opacity: 0.45; }
.recovery-lead { max-width: 720px; }
.recovery-account-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 26px 0; }
.recovery-account-grid strong { display: block; margin-top: 5px; overflow-wrap: anywhere; color: var(--green); }
.recovery-steps { display: grid; gap: 12px; }
.recovery-steps article { display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: 16px; border: 1px solid var(--line); padding: 18px; }
.recovery-step-number { color: var(--green); font-family: "Archivo Black", Inter, sans-serif; font-size: 1.3rem; }
.recovery-steps h2 { margin: 0 0 6px; font-size: 1.12rem; }
.recovery-steps p { margin: 0; color: rgba(255, 255, 255, 0.62); line-height: 1.5; }
.recovery-steps .recovery-actions, .recovery-steps > article > .button { grid-column: 2; margin-top: 4px; }

.strategy-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.strategy-grid article,
.pfp-card {
  border: 2px solid var(--ink);
  background: #f7fbf7;
  box-shadow: 5px 5px 0 var(--ink);
}

.strategy-grid article {
  min-height: 230px;
  padding: 18px;
}

.strategy-grid p {
  margin: 0;
  line-height: 1.45;
}

.strategy-icon {
  display: inline-flex;
  margin-bottom: 26px;
  background: var(--ink);
  color: var(--green);
  padding: 8px 10px;
  font-family: "Archivo Black", Inter, sans-serif;
}

.gallery-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.pfp-card {
  margin: 0;
  overflow: hidden;
  color: var(--ink);
}

.pfp-card img {
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  image-rendering: pixelated;
  background:
    linear-gradient(135deg, rgba(0, 200, 5, 0.85), rgba(255, 80, 0, 0.72)),
    repeating-linear-gradient(45deg, #101611 0 10px, #1b241d 10px 20px);
}

.pfp-card img {
  min-height: 220px;
}

.pfp-card figcaption {
  display: flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  padding: 12px;
  background: var(--paper);
  font-family: "Archivo Black", Inter, sans-serif;
  text-transform: uppercase;
}

.manifesto {
  text-align: center;
}

.manifesto p {
  max-width: 760px;
  margin: 0 auto 28px;
  font-size: clamp(1.08rem, 2vw, 1.35rem);
  line-height: 1.5;
}

.stats {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
}

.stats span {
  display: inline-flex;
  min-height: 58px;
  align-items: center;
  gap: 10px;
  border: 2px solid var(--ink);
  padding: 12px 16px;
  background: var(--green);
  box-shadow: 4px 4px 0 var(--ink);
  text-transform: uppercase;
}

.stats strong {
  font-family: "Archivo Black", Inter, sans-serif;
  font-size: 1.4rem;
}

.site-footer {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  padding: 24px clamp(18px, 5vw, 72px);
  border-top: 1px solid var(--line);
  color: rgba(255, 255, 255, 0.66);
  font-size: 0.9rem;
  text-transform: uppercase;
}

@media (max-width: 980px) {
  .hero,
  .section-grid,
  .market-strip-inner {
    grid-template-columns: 1fr;
  }

  .hero {
    min-height: auto;
  }

  .ticker-terminal {
    width: min(100%, 520px);
  }

  .strategy-grid,
  .gallery-grid,
  .tier-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  .site-header {
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
  }

  nav {
    width: 100%;
    justify-content: center;
    overflow-x: auto;
    padding-bottom: 2px;
  }

  h1 {
    font-size: clamp(2.8rem, 15vw, 4.9rem);
    text-shadow: 0 4px 0 #000, 0 0 22px rgba(0, 200, 5, 0.5);
  }

  .hero {
    padding-top: 44px;
  }

  .hero-actions,
  .button,
  .stats span {
    width: 100%;
  }

  .button,
  .stats span {
    justify-content: center;
  }

  .strategy-grid,
  .gallery-grid,
  .tier-grid {
    grid-template-columns: 1fr;
  }

  .site-footer {
    flex-direction: column;
  }

  .quiz-layout,
  .list-layout {
    grid-template-columns: 1fr;
  }

  .quiz-result { position: static; }

  .signal-panel { position: static; }

  .list-hero-actions .button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
}

body::after {
  position: fixed;
  left: var(--cursor-x, 50vw);
  top: var(--cursor-y, 40vh);
  z-index: -1;
  width: 360px;
  height: 360px;
  pointer-events: none;
  content: "";
  background: radial-gradient(circle, rgba(0, 200, 5, 0.16), transparent 68%);
  filter: blur(4px);
  transform: translate(-50%, -50%);
  transition: left 120ms ease, top 120ms ease;
}

.hero-bg {
  animation: grid-drift 18s linear infinite;
}

.hero-inner {
  animation: hero-rise 700ms ease both;
}

h1 {
  animation: title-glow 3.8s ease-in-out infinite;
}

.brand-mark,
.button,
.ticker-terminal,
.strategy-grid article,
.pfp-card,
.stats span {
  transition:
    transform 180ms ease,
    box-shadow 180ms ease,
    border-color 180ms ease,
    filter 180ms ease;
}

.brand-lockup:hover .brand-mark {
  transform: rotate(-3deg) scale(1.05);
  box-shadow: 0 0 24px rgba(0, 200, 5, 0.58);
}

.button:hover {
  filter: saturate(1.15);
}

.button-primary:hover {
  box-shadow: 2px 2px 0 var(--paper), 0 0 26px rgba(0, 200, 5, 0.54);
}

.button-secondary:hover {
  border-color: var(--green);
  box-shadow: 2px 2px 0 var(--green), 0 0 20px rgba(0, 200, 5, 0.28);
}

.ticker-terminal:hover {
  transform: translateY(-4px);
  border-color: var(--acid);
  box-shadow: var(--shadow), 0 0 34px rgba(0, 200, 5, 0.34);
}

.candle-row span {
  animation: candle-pulse 2.6s ease-in-out infinite;
  transform-origin: bottom;
}

.candle-row span:nth-child(2) { animation-delay: 120ms; }
.candle-row span:nth-child(3) { animation-delay: 240ms; }
.candle-row span:nth-child(4) { animation-delay: 360ms; }
.candle-row span:nth-child(5) { animation-delay: 480ms; }
.candle-row span:nth-child(6) { animation-delay: 600ms; }
.candle-row span:nth-child(7) { animation-delay: 720ms; }
.candle-row span:nth-child(8) { animation-delay: 840ms; }
.candle-row span:nth-child(9) { animation-delay: 960ms; }

.strategy-grid article:hover,
.pfp-card:hover,
.stats span:hover {
  transform: translate(-2px, -6px);
  box-shadow: 8px 11px 0 var(--ink), 0 0 28px rgba(0, 200, 5, 0.22);
}

.strategy-grid article:hover .strategy-icon {
  background: var(--green);
  color: var(--ink);
}

.pfp-card img {
  transition: transform 220ms ease, filter 220ms ease;
}

.pfp-card:hover img {
  transform: scale(1.045);
  filter: saturate(1.16) contrast(1.04);
}

.pfp-card figcaption {
  transition: background 180ms ease, color 180ms ease;
}

.pfp-card:hover figcaption {
  background: var(--green);
  color: var(--ink);
}

.reveal {
  opacity: 0;
  transform: translateY(22px);
  transition:
    opacity 620ms ease var(--reveal-delay, 0ms),
    transform 620ms ease var(--reveal-delay, 0ms);
}

.reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

@keyframes grid-drift {
  0% { background-position: 0 0, 0 0, 0 0; }
  100% { background-position: 0 0, 0 44px, 0 0; }
}

@keyframes hero-rise {
  from {
    opacity: 0;
    transform: translateY(18px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes title-glow {
  0%, 100% {
    text-shadow: 0 4px 0 #000, 0 0 18px rgba(0, 200, 5, 0.38);
  }
  50% {
    text-shadow: 0 4px 0 #000, 0 0 34px rgba(0, 200, 5, 0.7);
  }
}

@keyframes candle-pulse {
  0%, 100% { transform: scaleY(1); filter: brightness(1); }
  50% { transform: scaleY(1.08); filter: brightness(1.25); }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.001ms !important;
  }

  .reveal {
    opacity: 1;
    transform: none;
  }
}

@media (max-width: 760px) {
  .recovery-header, .recovery-title-row { align-items: flex-start; flex-direction: column; }
  .recovery-create-form, .recovery-account-grid, .recovery-request-card dl { grid-template-columns: 1fr; }
  .generated-recovery-link { grid-template-columns: 1fr; }
  .generated-recovery-link strong { grid-column: auto; }
  .recovery-steps article { grid-template-columns: 38px minmax(0, 1fr); padding: 15px; }
  .recovery-actions .button, .recovery-steps > article > .button { width: 100%; }
  .content-bonus-form { grid-template-columns: 1fr; }
  .admin-queue-toolbar { grid-template-columns: 1fr; }
  .admin-page-size { grid-template-columns: 1fr; }
  .admin-pagination { display: grid; grid-template-columns: 1fr 1fr; }
  .admin-pagination span { grid-column: 1 / -1; grid-row: 1; }

  body::after {
    display: none;
  }

  .site-header {
    position: relative;
    align-items: stretch;
    padding: 12px 16px;
  }

  .brand-lockup {
    justify-content: center;
    font-size: 0.98rem;
  }

  .brand-mark {
    width: 36px;
    height: 36px;
  }

  nav {
    display: grid;
    width: 100%;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    overflow: visible;
    font-size: 0.72rem;
  }

  nav a {
    display: inline-flex;
    min-height: 36px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.045);
    text-align: center;
  }

  .nav-cta {
    padding: 0 8px;
  }

  .hero {
    min-height: auto;
    padding: 52px 16px 44px;
  }

  .hero-inner {
    max-width: 100%;
  }

  .eyebrow {
    margin-bottom: 10px;
    font-size: 0.72rem;
    line-height: 1.25;
  }

  h1 {
    margin-bottom: 16px;
    font-size: clamp(2.55rem, 16vw, 4.25rem);
    line-height: 0.96;
    overflow-wrap: anywhere;
  }

  h2 {
    font-size: clamp(2rem, 11vw, 3.45rem);
    line-height: 0.98;
  }

  h3 {
    font-size: 1.08rem;
  }

  .hero-copy {
    font-size: 1rem;
    line-height: 1.5;
  }

  .hero-actions {
    gap: 10px;
    margin-top: 22px;
  }

  .button {
    min-height: 46px;
    padding: 12px 14px;
    box-shadow: 3px 3px 0 var(--paper);
    font-size: 0.82rem;
  }

  .market-strip {
    padding: 18px 16px 24px;
  }

  .market-strip-inner {
    gap: 14px;
  }

  .ticker-terminal,
  .strategy-grid article,
  .pfp-card {
    box-shadow: 4px 4px 0 rgba(0, 200, 5, 0.55);
  }

  .terminal-top,
  .terminal-price {
    padding: 13px;
  }

  .terminal-price strong {
    font-size: clamp(1.65rem, 12vw, 2.8rem);
  }

  .candle-row {
    height: 112px;
    gap: 6px;
    padding: 12px;
  }

  .candle-row span {
    min-width: 8px;
  }

  .intro,
  .lore-section,
  .strategy-section,
  .gallery-section,
  .tickerhead-quiz,
  .tier-section,
  .manifesto-section {
    padding-top: 44px;
    padding-bottom: 48px;
  }

  .section-grid,
  .content-shell,
  .manifesto {
    width: min(100% - 32px, 1160px);
  }

  .section-heading {
    margin-bottom: 26px;
  }

  .lore-flow {
    gap: 16px;
    font-size: 1rem;
    line-height: 1.55;
  }

  blockquote {
    border-left-width: 5px;
    padding: 14px 0 14px 14px;
    font-size: clamp(1.45rem, 9vw, 2.45rem);
  }

  .strategy-grid,
  .gallery-grid,
  .tier-grid {
    gap: 14px;
  }

  .quiz-layout,
  .list-layout {
    grid-template-columns: 1fr;
  }

  .list-hero {
    padding: 54px 0 44px;
  }

  .list-hero-actions .button {
    width: 100%;
  }

  .mission {
    grid-template-columns: 22px minmax(0, 1fr) auto;
    gap: 10px;
    padding: 13px 14px;
  }

  .card-share-actions {
    grid-template-columns: 1fr;
  }

  .signal-panel {
    position: static;
    padding: 20px;
  }

  .tier-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .strategy-grid article {
    min-height: 0;
    padding: 16px;
  }

  .strategy-icon {
    margin-bottom: 18px;
  }

  .pfp-card img {
    min-height: 0;
  }

  .stats {
    gap: 10px;
  }

  .stats span {
    min-height: 52px;
    padding: 10px 12px;
    font-size: 0.86rem;
  }

  .site-footer {
    padding: 22px 16px;
    font-size: 0.78rem;
    text-align: center;
  }

  .ticker-terminal:hover,
  .strategy-grid article:hover,
  .pfp-card:hover,
  .stats span:hover {
    transform: none;
  }
}

@media (max-width: 420px) {
  nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  h1 {
    font-size: clamp(2.35rem, 15vw, 3.7rem);
  }

  .button {
    font-size: 0.78rem;
  }

  .terminal-top,
  .terminal-price {
    align-items: flex-start;
    flex-direction: column;
    gap: 6px;
  }

  .tier-grid {
    grid-template-columns: 1fr;
  }
}
