:root {
  --carbon: #0b0c0a;
  --carbon-2: #11120f;
  --paper: #f0ede3;
  --paper-2: #dedace;
  --orange: #ff4e2a;
  --amber: #f4b942;
  --green: #9be564;
  --sky: #7fdcff;
  --muted: #7f8078;
  --line: rgba(240, 237, 227, .16);
  --display: "Barlow Condensed", sans-serif;
  --body: "Manrope", sans-serif;
  --mono: "IBM Plex Mono", monospace;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { min-width: 320px; margin: 0; color: var(--paper); background: var(--carbon); font-family: var(--body); }
button, input { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { cursor: pointer; }
a { color: inherit; text-decoration: none; }
[hidden] { display: none !important; }

.page-grain { position: fixed; z-index: 20; inset: 0; opacity: .055; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E"); }

.topbar { position: fixed; z-index: 50; top: 0; right: 0; left: 0; height: 76px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 30px; padding: 0 clamp(20px, 4vw, 64px); border-bottom: 1px solid var(--line); background: rgba(11,12,10,.92); box-shadow: 0 14px 50px rgba(0,0,0,.28); backdrop-filter: blur(16px); }
.brand-cluster { min-width: 0; display: flex; align-items: center; gap: 14px; justify-self: start; }
.logo { width: max-content; display: grid; grid-template-columns: 40px auto; grid-template-rows: 23px 12px; align-items: center; }
.logo-icon { grid-row: 1 / span 2; width: 32px; height: 32px; display: block; object-fit: cover; color: var(--carbon); background: var(--orange); }
.logo-icon.generated { width: 34px; height: 34px; clip-path: none; background: var(--carbon); }
.logo-word { font: 800 24px/1 var(--display); letter-spacing: .09em; }
.logo-word span { color: var(--orange); }
.logo small { color: #797970; font: 400 8px/1 var(--mono); letter-spacing: .12em; }
.topbar nav { display: flex; gap: 35px; }
.topbar nav a { position: relative; padding: 10px 0; color: #aba99f; font: 500 10px/1 var(--mono); letter-spacing: .12em; text-transform: uppercase; }
.topbar nav a::after { content: ""; position: absolute; right: 100%; bottom: 3px; left: 0; height: 2px; background: var(--orange); transition: right .2s; }
.topbar nav a:hover, .topbar nav a.active { color: var(--paper); }
.topbar nav a:hover::after, .topbar nav a.active::after { right: 0; }
.wallet-cluster { justify-self: end; display: flex; align-items: center; gap: 9px; }
.wallet-balance-chip { min-height: 42px; display: grid; align-content: center; gap: 4px; padding: 7px 12px; border: 1px solid rgba(155,229,100,.28); background: rgba(155,229,100,.055); white-space: nowrap; cursor: pointer; transition: .2s; }
.wallet-balance-chip small { color: #74776d; font: 500 7px/1 var(--mono); letter-spacing: .12em; }
.wallet-balance-chip b { color: var(--green); font: 600 11px/1 var(--mono); }
.wallet-balance-chip:hover { border-color: rgba(155,229,100,.62); background: rgba(155,229,100,.09); }
.airdrop-ledger-chip { border-color: rgba(244,185,66,.46); background: rgba(244,185,66,.07); }
.airdrop-ledger-chip b { color: var(--amber); }
.airdrop-ledger-chip:hover { border-color: var(--amber); background: rgba(244,185,66,.12); }
.wallet-cashier-actions { min-height: 42px; display: grid; grid-template-columns: 1fr 1fr; border: 1px solid rgba(240,237,227,.17); background: rgba(10,11,9,.45); }
.wallet-cashier-actions button { min-width: 78px; display: flex; align-items: center; justify-content: center; gap: 7px; padding: 0 10px; border: 0; color: #bab8af; background: transparent; font: 600 8px/1 var(--mono); letter-spacing: .07em; text-transform: uppercase; transition: .18s; }
.wallet-cashier-actions button + button { border-left: 1px solid rgba(240,237,227,.17); }
.wallet-cashier-actions button b { color: var(--green); font: 600 14px/1 var(--mono); }
.wallet-cashier-actions #headerWithdrawal b { color: var(--amber); }
.wallet-cashier-actions button:hover:not(:disabled) { color: var(--paper); background: rgba(240,237,227,.06); }
.wallet-cashier-actions button:disabled { color: #5e5e58; cursor: not-allowed; }
.wallet-cashier-actions button:disabled b { color: #5e5e58; }
.wallet-trigger { justify-self: end; min-height: 42px; display: flex; align-items: center; gap: 9px; padding: 0 16px; border: 1px solid var(--line); color: var(--paper); background: transparent; font: 500 10px/1 var(--mono); letter-spacing: .08em; text-transform: uppercase; }
.wallet-trigger:hover { border-color: var(--orange); }
.wallet-trigger i { width: 7px; height: 7px; border-radius: 50%; background: var(--orange); box-shadow: 0 0 0 4px rgba(255,78,42,.12); }
.wallet-trigger.connected i { background: var(--green); box-shadow: 0 0 0 4px rgba(155,229,100,.12); }
.site-logo { width: max-content; display: flex; align-items: center; gap: 11px; }
.site-logo img { width: 42px; height: 42px; object-fit: cover; }
.site-logo > span, .site-logo b, .site-logo small { display: block; }
.site-logo b { font: 800 28px/.8 var(--display); letter-spacing: .02em; }
.site-logo b span { color: var(--orange); }
.site-logo small { margin-top: 7px; color: #6f7068; font: 500 7px/1 var(--mono); letter-spacing: .14em; }

main { padding-top: 76px; overflow: hidden; }
.airdrop-hero { min-height: calc(100svh - 76px); display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(350px, .55fr); background: var(--paper); color: var(--carbon); }
.hero-copy { position: relative; min-width: 0; display: flex; flex-direction: column; justify-content: center; padding: clamp(70px, 9vw, 132px) clamp(26px, 7vw, 108px); overflow: hidden; }
.hero-copy::after { content: "PRE"; position: absolute; right: -1vw; bottom: -7vw; color: rgba(11,12,10,.035); font: 800 clamp(250px, 37vw, 560px)/.7 var(--display); letter-spacing: -.08em; pointer-events: none; }
.hero-status { position: relative; z-index: 1; width: max-content; display: flex; align-items: center; gap: 10px; padding: 9px 11px; border: 1px solid rgba(34,96,18,.35); color: #397420; font: 700 8px/1 var(--mono); letter-spacing: .12em; }
.hero-status i { width: 7px; height: 7px; border-radius: 50%; background: #58a52d; box-shadow: 0 0 0 5px rgba(88,165,45,.12); }
.route-label { position: relative; z-index: 1; margin: 44px 0 0; color: #7a776f; font: 600 8px/1 var(--mono); letter-spacing: .16em; }
.hero-copy h1 { position: relative; z-index: 1; max-width: 1050px; margin: 23px 0 0; font: 800 clamp(76px, 9.2vw, 160px)/.74 var(--display); letter-spacing: -.055em; text-transform: uppercase; }
.hero-copy h1 em { color: var(--orange); font-style: normal; }
.hero-copy > p:not(.route-label) { position: relative; z-index: 1; max-width: 650px; margin: 38px 0 0; color: #625f58; font-size: 16px; line-height: 1.72; }
.hero-actions { position: relative; z-index: 1; display: flex; flex-wrap: wrap; gap: 9px; margin-top: 31px; }
.hero-actions a { min-height: 48px; display: flex; align-items: center; justify-content: space-between; gap: 36px; padding: 0 16px; border: 1px solid var(--carbon); font: 700 8px/1 var(--mono); letter-spacing: .08em; }
.hero-actions a:first-child { color: var(--paper); background: var(--carbon); }
.hero-actions a:hover { color: var(--paper); background: var(--orange); border-color: var(--orange); }
.hero-rules { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3, minmax(0, 150px)); gap: 1px; max-width: 452px; margin-top: 50px; background: rgba(11,12,10,.22); }
.hero-rules span { min-width: 0; display: grid; grid-template-columns: auto 1fr; gap: 9px; align-items: center; padding: 12px; background: var(--paper); }
.hero-rules b { color: var(--orange); font: 700 18px/1 var(--display); }
.hero-rules small { color: #6d6962; font: 600 6px/1.3 var(--mono); letter-spacing: .08em; }

.balance-manifest { min-width: 0; display: flex; flex-direction: column; padding: clamp(28px, 3vw, 48px); color: var(--paper); background: radial-gradient(circle at 100% 0, rgba(244,185,66,.13), transparent 34%), var(--carbon-2); }
.balance-manifest > header { display: flex; align-items: center; justify-content: space-between; padding-bottom: 22px; border-bottom: 1px solid var(--line); color: #8d8e86; font: 600 8px/1 var(--mono); letter-spacing: .12em; }
.balance-manifest > header i { width: 8px; height: 8px; border-radius: 50%; background: var(--green); box-shadow: 0 0 0 6px rgba(155,229,100,.1); }
.balance-value { padding: clamp(48px, 7vh, 80px) 0 38px; }
.balance-value small { color: #76776f; font: 600 8px/1 var(--mono); letter-spacing: .12em; }
.balance-value strong { display: block; margin-top: 20px; overflow: hidden; color: var(--amber); font: 800 clamp(78px, 8vw, 130px)/.72 var(--display); letter-spacing: -.06em; text-overflow: ellipsis; }
.balance-value b { display: block; margin-top: 20px; color: var(--paper); font: 700 14px/1 var(--mono); letter-spacing: .09em; }
.balance-stats { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.balance-stats span { padding: 20px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.balance-stats small, .balance-stats b { display: block; }
.balance-stats small { color: #74756d; font: 600 7px/1 var(--mono); letter-spacing: .11em; }
.balance-stats b { margin-top: 10px; color: var(--paper); font: 700 34px/1 var(--display); }
.manifest-note { margin-top: 24px; padding: 19px; border-left: 2px solid var(--amber); background: rgba(244,185,66,.045); }
.manifest-note b { color: var(--amber); font: 700 8px/1 var(--mono); letter-spacing: .1em; }
.manifest-note p { margin: 12px 0 0; color: #85867e; font-size: 12px; line-height: 1.7; }
.player-key { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 9px 16px; align-items: center; margin-top: auto; padding-top: 30px; }
.player-key span { grid-column: 1 / -1; color: #6e6f67; font: 600 7px/1 var(--mono); letter-spacing: .12em; }
.player-key code { overflow: hidden; color: #a6a79f; font: 500 9px/1 var(--mono); text-overflow: ellipsis; white-space: nowrap; }
.player-key button { padding: 8px 0; border: 0; border-bottom: 1px solid #777870; color: #9b9c94; background: transparent; font: 700 7px/1 var(--mono); }

.flight-route { height: 72px; display: grid; grid-template-columns: 1fr auto 1fr auto 1fr auto; align-items: center; gap: 13px; padding: 0 clamp(24px, 7vw, 108px); background: var(--orange); color: var(--carbon); }
.flight-route i { height: 1px; background: rgba(11,12,10,.32); }
.flight-route span { width: 25px; height: 25px; display: grid; place-items: center; border: 1px solid rgba(11,12,10,.5); font: 700 7px/1 var(--mono); }

.account-section { padding: clamp(74px, 8vw, 120px) clamp(22px, 6vw, 92px); color: var(--carbon); background: var(--paper); scroll-margin-top: 77px; }
.account-heading { display: flex; align-items: end; justify-content: space-between; gap: 30px; padding-bottom: 29px; border-bottom: 1px solid rgba(11,12,10,.28); }
.account-heading p { margin: 0; color: #a62d16; font: 700 8px/1 var(--mono); letter-spacing: .15em; }
.account-heading h2 { max-width: 920px; margin: 17px 0 0; font: 800 clamp(52px, 5.8vw, 94px)/.78 var(--display); letter-spacing: -.045em; }
.eligibility-chip { min-width: 190px; display: flex; align-items: center; gap: 12px; padding: 15px; border: 1px solid rgba(166,45,22,.42); color: #a62d16; font: 700 8px/1 var(--mono); letter-spacing: .08em; }
.eligibility-chip i { width: 8px; height: 8px; border-radius: 50%; background: var(--orange); box-shadow: 0 0 0 6px rgba(255,78,42,.12); }
.eligibility-chip.ready { color: #356c20; border-color: rgba(53,108,32,.4); }
.eligibility-chip.ready i { background: #58a52d; box-shadow: 0 0 0 6px rgba(88,165,45,.12); }
.account-deck { display: grid; grid-template-columns: 1fr 1fr 1.08fr; margin-top: 28px; border: 1px solid var(--carbon); box-shadow: 12px 12px 0 var(--orange); }
.account-deck > article { min-width: 0; min-height: 470px; padding: clamp(25px, 3vw, 42px); border-right: 1px solid rgba(11,12,10,.45); }
.account-deck > article:last-child { border-right: 0; }
.deck-label { display: block; padding-bottom: 17px; border-bottom: 1px solid rgba(11,12,10,.25); color: rgba(11,12,10,.58); font: 700 7px/1 var(--mono); letter-spacing: .12em; }
.identity-bay { background: #faf7ed; }
.identity-bay h3, .wallet-bay h3, .swap-bay h3 { margin: 39px 0 0; font: 800 clamp(35px, 3vw, 50px)/.86 var(--display); letter-spacing: -.025em; }
.identity-bay p, .wallet-empty p, .swap-bay > p { margin: 17px 0 0; color: rgba(11,12,10,.65); font-size: 12px; line-height: 1.7; }
.identity-divider { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 12px; margin: 20px 0; color: rgba(11,12,10,.45); font: 600 7px/1 var(--mono); }
.identity-divider i { height: 1px; background: rgba(11,12,10,.2); }
.wallet-signin { min-height: 45px; display: grid; grid-template-columns: 1fr 1fr; border: 1px solid var(--carbon); background: var(--carbon); }
.wallet-signin button { min-width: 0; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 0 13px; border: 0; color: var(--paper); background: transparent; font: 700 7px/1.25 var(--mono); letter-spacing: .04em; }
.wallet-signin button + button { border-left: 1px solid rgba(240,237,227,.2); }
.wallet-signin button:hover:not(:disabled) { color: var(--carbon); background: var(--green); }
.wallet-signin button:disabled { color: #777870; cursor: wait; }
.identity-bay #identityHint { display: block; margin-top: 15px; color: rgba(11,12,10,.52); font: 500 7px/1.55 var(--mono); }
.open-account-access { width: 100%; min-height: 52px; display: flex; align-items: center; justify-content: space-between; margin-top: 27px; padding: 0 16px; border: 1px solid var(--carbon); color: var(--paper); background: var(--carbon); font: 800 8px/1 var(--mono); letter-spacing: .08em; }
.open-account-access:hover { border-color: var(--orange); background: var(--orange); }
.identity-profile { min-height: 330px; display: grid; grid-template-columns: 72px minmax(0, 1fr) auto; align-content: center; align-items: center; gap: 20px; }
.profile-mark { width: 72px; height: 72px; display: grid; place-items: center; color: var(--paper); background: var(--orange); font: 800 42px/1 var(--display); }
.identity-profile small { color: #4f7840; font: 700 7px/1 var(--mono); letter-spacing: .1em; }
.identity-profile h3 { margin: 10px 0 0; overflow: hidden; font-size: 36px; text-overflow: ellipsis; white-space: nowrap; }
.identity-profile p { margin: 8px 0 0; overflow: hidden; font: 500 8px/1.4 var(--mono); text-overflow: ellipsis; white-space: nowrap; }
.identity-profile button { align-self: start; padding: 8px 0; border: 0; border-bottom: 1px solid rgba(11,12,10,.45); color: rgba(11,12,10,.6); background: transparent; font: 700 7px/1 var(--mono); }
.identity-profile-actions { display: grid; gap: 8px; align-self: start; }
.wallet-bay { background: var(--amber); }
.wallet-empty { min-height: 350px; display: grid; align-content: center; }
.wallet-kind { display: flex; align-items: center; gap: 10px; margin-top: 29px; color: rgba(11,12,10,.65); font: 700 7px/1 var(--mono); letter-spacing: .08em; }
.wallet-kind i { width: 7px; height: 7px; border-radius: 50%; background: #2f641c; }
.wallet-owner-passport { display: grid; grid-template-columns: 48px minmax(0,1fr); gap: 12px; align-items: center; margin-top: 18px; padding: 11px; border: 1px solid rgba(11,12,10,.48); background: rgba(240,237,227,.2); }
.wallet-owner-passport > i { width: 48px; height: 48px; display: grid; place-items: center; color: var(--amber); background: var(--carbon); font: 800 16px/1 var(--display); font-style: normal; }
.wallet-owner-passport span { min-width: 0; display: grid; gap: 4px; }
.wallet-owner-passport small { color: rgba(11,12,10,.58); font: 700 6px/1 var(--mono); letter-spacing: .08em; }
.wallet-owner-passport b,.wallet-owner-passport em { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.wallet-owner-passport b { font: 700 9px/1 var(--mono); }
.wallet-owner-passport em { color: rgba(11,12,10,.6); font: 600 6px/1 var(--mono); font-style: normal; }
.wallet-bay code { display: block; margin-top: 21px; overflow: hidden; font: 700 clamp(18px, 1.7vw, 27px)/1 var(--mono); letter-spacing: -.045em; text-overflow: ellipsis; white-space: nowrap; }
.wallet-actions { display: flex; gap: 8px; margin-top: 20px; }
.wallet-actions button, .wallet-actions a { min-height: 38px; display: grid; place-items: center; padding: 0 12px; border: 1px solid rgba(11,12,10,.55); color: var(--carbon); background: transparent; font: 700 7px/1 var(--mono); }
.wallet-actions button { color: var(--amber); background: var(--carbon); }
.wallet-balances { display: grid; grid-template-columns: 1fr 1fr; margin-top: 34px; border-top: 1px solid rgba(11,12,10,.25); border-left: 1px solid rgba(11,12,10,.25); }
.wallet-balances span { padding: 18px; border-right: 1px solid rgba(11,12,10,.25); border-bottom: 1px solid rgba(11,12,10,.25); }
.wallet-balances small, .wallet-balances b { display: block; }
.wallet-balances small { color: rgba(11,12,10,.55); font: 600 6px/1 var(--mono); letter-spacing: .08em; }
.wallet-balances b { margin-top: 10px; overflow: hidden; font: 800 31px/1 var(--display); text-overflow: ellipsis; }
.refresh-wallet { width: 100%; min-height: 40px; margin-top: 13px; border: 1px solid rgba(11,12,10,.4); color: rgba(11,12,10,.7); background: transparent; font: 700 7px/1 var(--mono); }
.export-wallet-key { width: 100%; min-height: 42px; display: flex; align-items: center; justify-content: space-between; margin-top: 13px; padding: 0 13px; border: 1px solid var(--carbon); color: var(--paper); background: var(--carbon); font: 800 7px/1 var(--mono); }
.export-wallet-key b { color: var(--amber); }
.swap-bay { color: var(--paper); background: var(--carbon); }
.swap-bay .deck-label { color: #74756d; border-color: var(--line); }
.swap-bay h3 { display: flex; align-items: center; gap: 12px; color: var(--paper); }
.swap-bay h3 i { color: var(--orange); font-style: normal; }
.swap-bay h3 span { color: var(--green); }
.swap-bay > p { color: #888980; }
.swap-bay form { margin-top: 27px; }
.swap-bay label { color: #777870; font: 700 7px/1 var(--mono); letter-spacing: .09em; }
.swap-input { display: grid; grid-template-columns: minmax(0, 1fr) auto; margin-top: 10px; border: 1px solid #4b4c45; }
.swap-input input { min-width: 0; height: 54px; padding: 0 14px; border: 0; outline: 0; color: var(--paper); background: transparent; font: 700 23px/1 var(--mono); }
.swap-input b { display: grid; place-items: center; padding: 0 15px; border-left: 1px solid #4b4c45; color: var(--amber); font: 700 9px/1 var(--mono); }
.swap-bay form > button, .swap-quote > button { width: 100%; min-height: 47px; margin-top: 10px; border: 1px solid var(--green); color: var(--carbon); background: var(--green); font: 700 8px/1 var(--mono); letter-spacing: .05em; }
.swap-bay button:disabled, .swap-bay input:disabled { opacity: .4; cursor: not-allowed; }
.swap-quote { display: grid; grid-template-columns: 1.25fr .75fr; gap: 1px; margin-top: 18px; background: #3b3c35; }
.swap-quote > span { padding: 14px; background: #181914; }
.swap-quote small, .swap-quote b { display: block; }
.swap-quote small { color: #72736b; font: 600 6px/1 var(--mono); }
.swap-quote b { margin-top: 8px; color: var(--paper); font: 700 20px/1 var(--display); }
.swap-quote p, .swap-quote > button { grid-column: 1 / -1; }
.swap-quote p { margin: 0; padding: 11px 14px; color: #85867e; background: #181914; font: 600 6px/1.4 var(--mono); }
.swap-quote > button { margin: 0; background: var(--orange); border-color: var(--orange); }
.swap-warning { display: block; margin-top: 15px; color: #6d6e66; font: 500 6px/1.55 var(--mono); }

.missions-section, .crew-section { padding: clamp(76px, 9vw, 138px) clamp(22px, 6vw, 92px); scroll-margin-top: 77px; }
.missions-section { background: linear-gradient(rgba(255,255,255,.012) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.012) 1px, transparent 1px), var(--carbon); background-size: 72px 72px; }
.section-header { display: grid; grid-template-columns: minmax(280px, 1.1fr) minmax(300px, .65fr) auto; gap: clamp(28px, 6vw, 85px); align-items: end; padding-bottom: 34px; border-bottom: 1px solid var(--line); }
.section-header p { margin: 0; color: var(--orange); font: 600 8px/1 var(--mono); letter-spacing: .15em; }
.section-header h2 { margin: 17px 0 0; font: 800 clamp(55px, 6vw, 98px)/.76 var(--display); letter-spacing: -.045em; }
.section-intro span { color: var(--amber); font: 700 8px/1 var(--mono); letter-spacing: .12em; }
.section-intro p { margin: 13px 0 0; color: #8b8c84; font-size: 13px; line-height: 1.7; }
.section-header > button { min-height: 43px; padding: 0 14px; border: 1px solid #5d5e56; color: #adaea5; background: transparent; font: 700 7px/1 var(--mono); letter-spacing: .07em; }
.section-header > button:hover { color: var(--carbon); border-color: var(--paper); background: var(--paper); }

.mission-board { display: grid; margin-top: 20px; border-top: 1px solid var(--line); }
.board-loading, .board-empty { min-height: 220px; display: grid; place-items: center; align-content: center; gap: 18px; color: #777870; font: 600 8px/1.5 var(--mono); letter-spacing: .1em; text-align: center; }
.board-loading i { width: 24px; height: 24px; border: 2px solid #34352f; border-top-color: var(--orange); border-radius: 50%; animation: spin .8s linear infinite; }
.board-empty b { color: var(--paper); font: 700 32px/1 var(--display); }
.board-empty a { color: var(--green); border-bottom: 1px solid var(--green); }
.mission-card { min-width: 0; display: grid; grid-template-columns: 58px minmax(220px, 1fr) minmax(180px, .72fr) minmax(145px, auto) minmax(165px, auto); gap: 24px; align-items: center; padding: 26px 0; border-bottom: 1px solid var(--line); }
.mission-number { width: 58px; height: 58px; display: grid; place-items: center; border: 1px solid rgba(244,185,66,.35); color: var(--amber); background: rgba(244,185,66,.04); font: 700 18px/1 var(--mono); }
.mission-card[data-tone="social"] .mission-number { color: var(--sky); border-color: rgba(127,220,255,.35); background: rgba(127,220,255,.04); }
.mission-card[data-tone="danger"] .mission-number { color: var(--orange); border-color: rgba(255,78,42,.35); background: rgba(255,78,42,.04); }
.mission-card[data-tone="success"] .mission-number { color: var(--green); border-color: rgba(155,229,100,.35); background: rgba(155,229,100,.04); }
.mission-copy { min-width: 0; }
.mission-copy small { color: #75766e; font: 600 7px/1 var(--mono); letter-spacing: .13em; }
.mission-copy h3 { margin: 9px 0 7px; font: 700 clamp(25px, 2.3vw, 36px)/.92 var(--display); text-transform: uppercase; }
.mission-copy p { max-width: 650px; margin: 0; color: #96978e; font-size: 13px; line-height: 1.62; }
.mission-progress { min-width: 0; }
.mission-progress > span { display: flex; justify-content: space-between; gap: 15px; color: #777870; font: 600 7px/1.3 var(--mono); }
.mission-progress > span b:last-child { color: #a6a79f; }
.mission-progress i { height: 5px; display: block; margin-top: 12px; overflow: hidden; background: #23241f; }
.mission-progress i b { height: 100%; display: block; background: var(--orange); transform-origin: left; }
.mission-wait { color: #888980; font: 600 8px/1.5 var(--mono); }
.mission-reward { text-align: right; }
.mission-reward small, .mission-reward b { display: block; }
.mission-reward small { color: #71726a; font: 600 7px/1 var(--mono); letter-spacing: .12em; }
.mission-reward b { margin-top: 9px; color: var(--amber); font: 700 23px/1 var(--display); white-space: nowrap; }
.mission-action { min-height: 48px; padding: 0 15px; border: 1px solid rgba(244,185,66,.45); color: var(--amber); background: rgba(244,185,66,.03); font: 700 8px/1.25 var(--mono); letter-spacing: .05em; text-transform: uppercase; }
.mission-action:hover:not(:disabled) { color: var(--carbon); background: var(--amber); }
.mission-action.claim { color: var(--carbon); border-color: var(--green); background: var(--green); }
.mission-action:disabled { color: #62635b; border-color: #30312b; background: #161713; cursor: not-allowed; }
.mission-card.claimed { opacity: .7; }
.mission-card.claimed .mission-number { color: var(--carbon); border-color: var(--green); background: var(--green); }
.mission-card.claimed .mission-reward b { color: var(--green); }
.mission-card.locked { opacity: .62; }
.mission-card.locked .mission-number { color: #777870; border-color: #3b3c35; background: #171813; }
.board-footer { display: flex; justify-content: space-between; gap: 24px; padding-top: 23px; color: #777870; font: 600 7px/1.5 var(--mono); letter-spacing: .08em; }
.board-footer b { color: var(--green); }

.crew-section { color: var(--carbon); background: var(--sky); }
.crew-header { border-color: rgba(11,12,10,.27); }
.crew-header p { color: #1d647d; }
.crew-rank { justify-self: end; min-width: 170px; padding: 14px; border: 1px solid rgba(11,12,10,.38); }
.crew-rank small, .crew-rank b { display: block; }
.crew-rank small { color: rgba(11,12,10,.58); font: 600 7px/1 var(--mono); letter-spacing: .1em; }
.crew-rank b { margin-top: 8px; font: 700 22px/1 var(--display); }
.crew-grid { display: grid; grid-template-columns: 1.15fr .9fr .62fr 1fr; margin-top: 24px; border: 1px solid rgba(11,12,10,.35); }
.crew-grid > article, .crew-grid > form { min-width: 0; padding: clamp(22px, 3vw, 38px); border-right: 1px solid rgba(11,12,10,.3); }
.crew-grid > :last-child { border-right: 0; }
.crew-code-card > span, .join-crew > span { color: rgba(11,12,10,.6); font: 700 7px/1 var(--mono); letter-spacing: .12em; }
.crew-code-card code { display: block; margin-top: 17px; overflow: hidden; font: 700 clamp(18px, 2vw, 29px)/1 var(--mono); letter-spacing: -.05em; text-overflow: ellipsis; }
.crew-code-card p { margin: 17px 0 0; color: rgba(11,12,10,.68); font-size: 12px; line-height: 1.7; }
.crew-code-card > div { display: flex; gap: 8px; margin-top: 20px; }
.crew-code-card button { min-height: 42px; padding: 0 13px; border: 1px solid rgba(11,12,10,.55); color: var(--carbon); background: transparent; font: 700 7px/1 var(--mono); }
.crew-code-card button:first-child { color: var(--sky); background: var(--carbon); }
.reward-route { display: grid; grid-template-columns: 1fr 48px 1fr; align-content: center; align-items: center; }
.reward-route > div { padding: 17px 8px; border: 1px solid rgba(11,12,10,.36); text-align: center; }
.reward-route small, .reward-route b { display: block; }
.reward-route small { color: rgba(11,12,10,.58); font: 600 6px/1 var(--mono); letter-spacing: .08em; }
.reward-route b { margin-top: 9px; font: 700 22px/1 var(--display); }
.reward-route > i { position: relative; height: 1px; background: repeating-linear-gradient(90deg, var(--carbon) 0 5px, transparent 5px 9px); }
.reward-route > i span { position: absolute; left: 50%; bottom: 8px; font: 600 5px/1 var(--mono); transform: translateX(-50%); }
.reward-route > p { grid-column: 1 / -1; margin: 14px 0 0; font: 600 6px/1 var(--mono); letter-spacing: .08em; text-align: center; }
.crew-numbers { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; align-content: center; background: rgba(11,12,10,.28); }
.crew-numbers span { padding: 17px; background: var(--sky); }
.crew-numbers span:last-child { grid-column: 1 / -1; }
.crew-numbers small, .crew-numbers b { display: block; }
.crew-numbers small { color: rgba(11,12,10,.57); font: 600 6px/1 var(--mono); letter-spacing: .08em; }
.crew-numbers b { margin-top: 9px; overflow: hidden; font: 700 27px/1 var(--display); text-overflow: ellipsis; }
.join-crew { display: grid; align-content: center; }
.join-crew label { margin-top: 13px; color: rgba(11,12,10,.66); font-size: 11px; line-height: 1.5; }
.join-crew > div { display: grid; grid-template-columns: minmax(0, 1fr) auto; margin-top: 14px; }
.join-crew input { min-width: 0; height: 46px; padding: 0 12px; border: 1px solid rgba(11,12,10,.45); outline: 0; color: var(--carbon); background: rgba(240,237,227,.28); font: 600 9px/1 var(--mono); text-transform: uppercase; }
.join-crew input:focus { background: rgba(240,237,227,.55); }
.join-crew button { padding: 0 13px; border: 1px solid var(--carbon); color: var(--sky); background: var(--carbon); font: 700 7px/1 var(--mono); }
.join-crew button:disabled, .join-crew input:disabled { opacity: .45; cursor: not-allowed; }
.join-crew > p { margin: 12px 0 0; color: rgba(11,12,10,.62); font: 500 7px/1.55 var(--mono); }
.join-crew > p.success { color: #235d13; }
.join-crew > p.error { color: #a5280e; }

.closing-route { display: grid; place-items: center; padding: clamp(85px, 12vw, 180px) 24px; background: radial-gradient(circle at 50% 100%, rgba(255,78,42,.15), transparent 38%), var(--carbon); text-align: center; }
.closing-route p { margin: 0; color: var(--orange); font: 600 8px/1 var(--mono); letter-spacing: .15em; }
.closing-route h2 { margin: 24px 0 0; font: 800 clamp(58px, 7vw, 110px)/.78 var(--display); letter-spacing: -.045em; }
.closing-route a { min-height: 49px; display: flex; align-items: center; gap: 35px; margin-top: 38px; padding: 0 16px; color: var(--carbon); background: var(--green); font: 700 8px/1 var(--mono); }
.site-footer { min-height: 110px; display: grid; grid-template-columns: 1fr minmax(280px, .7fr) 1fr; align-items: center; gap: 30px; padding: 20px clamp(20px, 4vw, 64px); border-top: 1px solid var(--line); }
.site-footer p { margin: 0; color: #6f7068; font-size: 10px; line-height: 1.55; text-align: center; }
.site-footer > a:last-child { justify-self: end; color: #84857d; font: 600 8px/1 var(--mono); }
.account-access-modal { position: fixed; inset: 0; z-index: 600; display: grid; place-items: center; overflow: auto; padding: 22px; background: rgba(5,6,4,.92); backdrop-filter: blur(18px); }
.account-access-dialog { position: relative; width: min(760px,100%); padding: clamp(26px,5vw,52px); color: var(--paper); border: 1px solid rgba(240,237,227,.35); background: radial-gradient(circle at 100% 0,rgba(127,220,255,.07),transparent 30%),var(--carbon-2); box-shadow: 12px 12px 0 var(--orange); }
.account-access-close { position: absolute; top: 18px; right: 18px; width: 36px; height: 36px; border: 1px solid var(--line); color: var(--paper); background: transparent; font-size: 22px; }
.account-access-dialog > header { display: flex; justify-content: space-between; gap: 15px; padding: 0 52px 13px 0; border-bottom: 1px solid var(--line); color: var(--sky); font: 700 7px/1 var(--mono); letter-spacing: .1em; }
.account-access-dialog .route-label { margin-top: 26px; color: var(--orange); }
.account-access-dialog h2 { margin: 18px 0 0; font: 800 clamp(51px,8vw,88px)/.78 var(--display); letter-spacing: -.04em; }
.account-access-intro { max-width: 610px; margin: 20px 0 0; color: #96978e; font-size: 11px; line-height: 1.65; }
.account-access-dialog .identity-divider { color: #74756d; }
.account-access-dialog .identity-divider i { background: var(--line); }
.account-access-dialog > small { display: block; margin-top: 14px; color: #73746c; font: 600 7px/1.55 var(--mono); }
.account-access-dialog .wallet-signin { border-color: rgba(240,237,227,.25); }

.toast { position: fixed; z-index: 800; right: 25px; bottom: 25px; max-width: min(420px, calc(100% - 32px)); padding: 15px 18px; border: 1px solid var(--line); color: var(--paper); background: #1b1c17; box-shadow: 0 18px 50px rgba(0,0,0,.4); font: 600 9px/1.5 var(--mono); opacity: 0; transform: translateY(15px); transition: .2s; pointer-events: none; }
.toast.show { opacity: 1; transform: translateY(0); }
.toast.error { border-color: rgba(255,78,42,.55); color: #ff927a; }
:focus-visible { outline: 2px solid var(--amber); outline-offset: 3px; }
@keyframes spin { to { transform: rotate(360deg); } }

@media (max-width: 1180px) {
  .topbar { gap: 18px; padding-inline: 20px; }
  .topbar nav { gap: 20px; }
  .wallet-cashier-actions { display: none !important; }
  .wallet-balance-chip { max-width: 180px; }
  .wallet-balance-chip b { overflow: hidden; text-overflow: ellipsis; }
  .airdrop-hero { min-height: 0; grid-template-columns: 1fr; }
  .hero-copy { min-height: 720px; }
  .balance-manifest { display: grid; grid-template-columns: 1fr 1fr; gap: 0 35px; }
  .balance-manifest > header, .player-key { grid-column: 1 / -1; }
  .balance-value { padding-top: 55px; }
  .manifest-note { margin-top: 0; align-self: end; }
  .account-deck { grid-template-columns: 1fr 1fr; }
  .account-deck > article:nth-child(2) { border-right: 0; }
  .account-deck > article:last-child { grid-column: 1 / -1; min-height: 0; border-top: 1px solid rgba(11,12,10,.45); }
  .mission-card { grid-template-columns: 52px minmax(0, 1fr) minmax(170px, .7fr) minmax(140px, auto); }
  .mission-action { grid-column: 2 / -1; width: 100%; }
  .crew-grid { grid-template-columns: 1fr 1fr; }
  .crew-grid > :nth-child(2n) { border-right: 0; }
  .crew-grid > :nth-child(-n+2) { border-bottom: 1px solid rgba(11,12,10,.3); }
}

@media (max-width: 760px) {
  .topbar { height: 66px; grid-template-columns: 1fr auto; gap: 7px; padding: 0 15px; }
  .topbar nav { display: none; }
  .logo { transform: scale(.9); transform-origin: left; }
  .wallet-cluster { gap: 5px; }
  .wallet-balance-chip { min-height: 38px; max-width: 118px; padding: 6px 8px; }
  .wallet-balance-chip small { display: none; }
  .wallet-balance-chip b { font-size: 8px; }
  .wallet-cashier-actions { min-height: 38px; }
  .wallet-cashier-actions button { min-width: 34px; width: 34px; padding: 0; }
  .wallet-cashier-actions button span { display: none; }
  .wallet-trigger { max-width: 112px; min-height: 38px; padding: 0 10px; overflow: hidden; white-space: nowrap; }
  main { padding-top: 66px; }
  .airdrop-hero { min-height: 0; }
  .site-logo img { width: 36px; height: 36px; }
  .site-logo b { font-size: 24px; }
  .hero-copy { min-height: auto; padding: 72px 18px 62px; }
  .hero-copy h1 { font-size: clamp(62px, 19vw, 92px); }
  .hero-copy > p:not(.route-label) { margin-top: 28px; font-size: 14px; }
  .hero-actions { display: grid; }
  .hero-rules { grid-template-columns: 1fr; max-width: none; }
  .balance-manifest { display: flex; padding: 28px 19px; }
  .balance-value strong { font-size: 88px; }
  .flight-route { height: 58px; padding: 0 18px; }
  .account-section { padding: 70px 16px 80px; scroll-margin-top: 0; }
  .account-heading { align-items: flex-start; flex-direction: column; }
  .account-heading h2 { font-size: 55px; }
  .eligibility-chip { width: 100%; }
  .account-deck { grid-template-columns: 1fr; box-shadow: 7px 7px 0 var(--orange); }
  .account-deck > article { min-height: 0; padding: 28px 20px; border-right: 0; border-bottom: 1px solid rgba(11,12,10,.45); }
  .account-deck > article:nth-child(2) { border-right: 0; }
  .account-deck > article:last-child { grid-column: auto; border-top: 0; border-bottom: 0; }
  .identity-profile { min-height: 280px; grid-template-columns: 58px minmax(0, 1fr); }
  .identity-profile-actions { grid-column: 2; justify-self: start; }
  .profile-mark { width: 58px; height: 58px; }
  .account-access-modal { padding: 12px; }
  .account-access-dialog { padding: 27px 19px; box-shadow: 7px 7px 0 var(--orange); }
  .account-access-dialog > header b { display: none; }
  .missions-section, .crew-section { padding: 74px 16px; scroll-margin-top: 0; }
  .section-header { grid-template-columns: 1fr; gap: 25px; align-items: start; }
  .section-header h2 { font-size: 58px; }
  .section-header > button { width: 100%; }
  .mission-card { grid-template-columns: 46px minmax(0, 1fr); gap: 15px; padding: 23px 0; }
  .mission-number { width: 46px; height: 46px; }
  .mission-progress, .mission-wait, .mission-reward { grid-column: 2; text-align: left; }
  .mission-action { grid-column: 1 / -1; }
  .board-footer { align-items: flex-start; flex-direction: column; }
  .crew-header { grid-template-columns: 1fr; }
  .crew-rank { justify-self: start; }
  .crew-grid { grid-template-columns: 1fr; }
  .crew-grid > article, .crew-grid > form { padding: 23px 19px; border-right: 0; border-bottom: 1px solid rgba(11,12,10,.3); }
  .crew-grid > :last-child { border-bottom: 0; }
  .site-footer { grid-template-columns: 1fr; justify-items: start; }
  .site-footer p { text-align: left; }
  .site-footer > a:last-child { justify-self: start; }
  .toast { right: 16px; bottom: 16px; }
}

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