.nav-identity { display: flex; align-items: center; gap: 18px; }
.nav-discord { display: inline-flex; align-items: center; justify-content: center; width: 44px; min-height: 44px; }
.nav-discord img { display: block; width: 22px; height: auto; }
.nav-discord:focus-visible { outline: 2px solid #e5c58d; outline-offset: 2px; }
.community-votes { background: #11100f; border-bottom: 1px solid #302820; }
.community-votes-inner { display: flex; flex-direction: column; align-items: center; gap: 10px; padding-top: 20px; padding-bottom: 20px; text-align: center; }
.community-votes-copy { display: grid; gap: 5px; }
.community-votes-copy strong { color: #e5c58d; font-size: 16px; }
.community-votes-copy span { color: #aaa197; font-size: 13px; }
.community-votes-links { display: flex; align-items: center; flex-wrap: wrap; justify-content: center; gap: 8px 16px; min-width: 0; width: 100%; max-width: 100%; padding: 6px; }
.community-votes-links a { flex: 0 0 auto; display: flex; align-items: center; justify-content: center; min-height: 64px; border-radius: 8px; }
.community-votes-links a:hover { filter: brightness(1.15); }
.community-votes-links a:focus-visible { outline: 2px solid #e5c58d; outline-offset: 5px; }
.community-votes-links img { display: block; max-width: 100%; height: auto; border: 0; }
:root {
  --black: #050505;
  --panel: #11100f;
  --panel-2: #181512;
  --line: #302820;
  --gold: #c69a58;
  --gold-soft: #e5c58d;
  --text: #f2ede5;
  --muted: #aaa197;
  --rust: #923d25;
}
* { box-sizing: border-box; }
html { min-width: 1080px; background: var(--black); }
body { margin: 0; color: var(--text); background: #050505; font-family: Inter, "Segoe UI", "Helvetica Neue", Arial, sans-serif; }
a { color: inherit; }
.shell { width: 1180px; margin: 0 auto; }
.hero { min-height: 510px; background: #050505 url("/assets/v3/turravane-hero-v3.png") center top / cover no-repeat; border-bottom: 1px solid #38291f; position: relative; }
.hero::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(2,2,2,.18), rgba(2,2,2,.05) 48%, rgba(2,2,2,.18)), linear-gradient(0deg, #050505 0, transparent 42%); }
.nav-wrap { position: relative; z-index: 2; border-bottom: 1px solid rgba(229,197,141,.2); background: rgba(5,5,5,.76); backdrop-filter: blur(8px); }
.nav { height: 74px; display: flex; align-items: center; gap: 24px; }
.brand { margin-right: auto; text-decoration: none; font-family: Inter, "Segoe UI", "Helvetica Neue", Arial, sans-serif; letter-spacing: .22em; font-size: 19px; font-weight: 700; }
.brand small { display: block; color: var(--muted); font-family: Inter, Arial, sans-serif; font-size: 9px; letter-spacing: .26em; margin-top: 4px; font-weight: 500; }
.nav-link { color: #d4cec5; text-decoration: none; text-transform: uppercase; font-size: 11px; letter-spacing: .13em; padding: 28px 0 25px; border-bottom: 2px solid transparent; }
.nav-link:hover, .nav-link.active { color: #fff; border-color: var(--gold); }
.nav-link.utility { color: var(--gold-soft); }
.hero-copy { position: relative; z-index: 1; width: 630px; padding-top: 120px; }
.eyebrow { color: #721f1f; text-transform: uppercase; letter-spacing: .28em; font-size: 11px; font-weight: 700; text-shadow: 0 1px 0 rgba(255,225,200,.16), 0 2px 7px rgba(0,0,0,.34); }
h1 { margin: 18px 0 14px; max-width: 720px; font-family: Inter, "Segoe UI", "Helvetica Neue", Arial, sans-serif; font-size: 52px; line-height: 1.03; font-weight: 750; letter-spacing: -.03em; text-wrap: balance; }
.hero h1 { color: #f2ede5; text-shadow: 0 2px 8px rgba(0,0,0,.48); }
.hero-copy p { color: #d1c8bc; font-family: Inter, "Segoe UI", "Helvetica Neue", Arial, sans-serif; font-size: 18px; line-height: 1.65; max-width: 560px; }
.hero-actions { display: flex; gap: 12px; margin-top: 28px; }
.button { display: inline-flex; min-width: 150px; min-height: 44px; align-items: center; justify-content: center; border: 1px solid var(--gold); color: #17110b; background: linear-gradient(#ddb779, #b78343); text-decoration: none; text-transform: uppercase; letter-spacing: .13em; font-size: 10px; font-weight: 800; }
.button.secondary { color: #eee7dd; background: rgba(5,5,5,.72); border-color: #74624d; }
.status-bar { border-top: 1px solid #251e18; border-bottom: 1px solid #251e18; background: #0b0a09; }
.statuses { height: 88px; display: grid; grid-template-columns: repeat(4, 1fr); }
.status { display: flex; flex-direction: column; justify-content: center; padding: 0 28px; border-right: 1px solid #251e18; }
.status:first-child { border-left: 1px solid #251e18; }
.status-label { color: #766f68; text-transform: uppercase; letter-spacing: .16em; font-size: 9px; }
.status-value { margin-top: 7px; font-family: Inter, "Segoe UI", "Helvetica Neue", Arial, sans-serif; font-size: 16px; color: #ddd5cc; }
.status-value.unconfigured { color: #b27863; }
.status-value.development { color: var(--gold-soft); }
main { min-height: 520px; padding: 62px 0 86px; background: radial-gradient(circle at 50% 0, #17110d 0, #080706 44%, #050505 78%); }
.section-head { display: flex; align-items: end; justify-content: space-between; margin-bottom: 28px; }
.section-kicker { color: var(--gold); text-transform: uppercase; letter-spacing: .22em; font-size: 10px; }
h2 { margin: 8px 0 0; font-family: Inter, "Segoe UI", "Helvetica Neue", Arial, sans-serif; font-size: 34px; font-weight: 750; letter-spacing: -.02em; text-wrap: balance; }
.section-note { color: var(--muted); max-width: 450px; text-align: right; line-height: 1.6; font-size: 13px; }
.grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.grid-2 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
.card { min-height: 210px; padding: 28px; border: 1px solid var(--line); background: linear-gradient(145deg, rgba(28,24,20,.92), rgba(12,11,10,.98)); box-shadow: 0 14px 34px rgba(0,0,0,.22); }
.card-number { color: #9a6f43; font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.card h3 { margin: 34px 0 12px; font-family: Inter, "Segoe UI", "Helvetica Neue", Arial, sans-serif; font-size: 22px; font-weight: 700; }
.card p { color: var(--muted); line-height: 1.65; font-size: 13px; margin: 0; }
.home-sections { display: grid; gap: 58px; }
.home-sections .vote-section { margin-top: 0; }
.home-world { min-width: 0; }
.vote-section { position: relative; display: grid; grid-template-columns: minmax(0,1fr) 310px; gap: 48px; align-items: center; margin-top: 58px; padding: 42px; overflow: hidden; border: 1px solid #59452f; background: radial-gradient(circle at 88% 30%,rgba(146,61,37,.14),transparent 34%),linear-gradient(135deg,rgba(38,29,22,.97),rgba(10,9,8,.99) 64%); box-shadow: 0 22px 58px rgba(0,0,0,.3); }
.vote-section::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 3px; background: linear-gradient(180deg,#7a211d,var(--rust),#4b1714); }
.vote-copy { position: relative; z-index: 1; }
.vote-copy h2 { margin-top: 10px; font-size: 36px; }
.vote-copy p { max-width: 690px; margin: 15px 0 0; color: var(--muted); font-size: 14px; line-height: 1.75; }
.vote-button { min-width: 220px; margin-top: 26px; }
.vote-rank { position: relative; z-index: 1; display: flex; min-height: 170px; flex-direction: column; align-items: center; justify-content: center; padding: 24px; border: 1px solid #3f3329; background: rgba(5,5,5,.48); text-align: center; }
.vote-rank > span { margin-bottom: 16px; color: var(--gold); text-transform: uppercase; letter-spacing: .18em; font-size: 9px; font-weight: 700; }
.vote-badge-link { display: block; max-width: 100%; }
.vote-badge { display: block; width: 240px; max-width: 100%; height: auto; }
.vote-rank small { margin-top: 13px; color: #81776d; font-size: 9px; letter-spacing: .06em; }
.empty { padding: 54px; border: 1px solid var(--line); background: rgba(16,14,12,.82); text-align: center; }
.empty-mark { display: inline-flex; width: 50px; height: 50px; align-items: center; justify-content: center; border: 1px solid #5b4632; color: var(--gold); font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: 22px; font-weight: 700; transform: rotate(45deg); }
.empty-mark span { transform: rotate(-45deg); }
.empty h3 { margin: 24px 0 8px; font-family: Inter, "Segoe UI", "Helvetica Neue", Arial, sans-serif; font-size: 24px; font-weight: 700; }
.empty p { color: var(--muted); margin: 0; line-height: 1.65; }
.facts { width: 100%; border-collapse: collapse; border: 1px solid var(--line); background: #0f0e0d; }
.facts th, .facts td { padding: 18px 20px; border-bottom: 1px solid #29231e; text-align: left; }
.facts th { width: 34%; color: #8e857b; text-transform: uppercase; letter-spacing: .12em; font-size: 9px; font-weight: 600; }
.facts td { font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: 16px; font-weight: 600; }
.server-summary { margin-bottom: 54px; padding: 30px; border: 1px solid #59452f; background: linear-gradient(135deg, rgba(49,37,25,.94), rgba(13,11,9,.98) 62%); box-shadow: 0 20px 55px rgba(0,0,0,.28); }
.server-summary-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: #3a3027; border: 1px solid #3a3027; }
.server-metric { min-height: 108px; padding: 22px; background: #100e0c; }
.server-metric span { display: block; color: #81776d; text-transform: uppercase; letter-spacing: .15em; font-size: 9px; }
.server-metric strong { display: block; margin-top: 10px; color: var(--gold-soft); font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: 24px; font-weight: 700; }
.server-summary-copy { display: flex; align-items: center; justify-content: space-between; gap: 40px; margin-top: 26px; }
.server-summary-copy p { max-width: 760px; margin: 0; color: #c5bbb0; font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: 16px; line-height: 1.7; }
.server-state { flex: 0 0 auto; padding: 10px 14px; border: 1px solid #76583b; color: var(--gold-soft); text-transform: uppercase; letter-spacing: .16em; font-size: 9px; }
.server-section { margin-top: 58px; }
.server-panels { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
.server-panel { padding: 28px; border: 1px solid var(--line); background: linear-gradient(145deg, rgba(27,23,19,.94), rgba(11,10,9,.99)); }
.server-panel h3 { margin: 0 0 20px; color: #eee7dc; font-family: Inter, "Segoe UI", "Helvetica Neue", Arial, sans-serif; font-size: 24px; font-weight: 700; }
.server-panel > p { color: var(--muted); line-height: 1.7; font-size: 13px; }
.server-facts { margin: 0; }
.server-fact { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 18px; padding: 13px 0; border-bottom: 1px solid #2b241e; }
.server-fact:last-child { border-bottom: 0; }
.server-fact dt { color: #8d8379; font-size: 11px; }
.server-fact dd { margin: 0; color: #e2d9ce; font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: 15px; font-weight: 600; text-align: right; }
.server-fact dd.target { color: var(--gold-soft); }
.target-label { display: inline-flex; margin-left: 8px; padding: 4px 7px; border: 1px solid #76583b; color: var(--gold-soft); text-transform: uppercase; letter-spacing: .12em; font-family: Inter, Arial, sans-serif; font-size: 7px; vertical-align: 2px; }
.server-feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.server-feature { min-height: 142px; padding: 22px; border: 1px solid var(--line); background: #100e0c; }
.server-feature strong { display: block; color: #e8dfd4; font-family: Inter, "Segoe UI", "Helvetica Neue", Arial, sans-serif; font-size: 18px; font-weight: 700; }
.server-feature span { display: block; margin-top: 10px; color: var(--muted); font-size: 12px; line-height: 1.6; }
.jewel-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; margin-top: 22px; }
.jewel { padding: 18px 14px; border: 1px solid #352c24; background: #0d0c0b; text-align: center; }
.jewel strong { display: block; color: var(--gold-soft); font-family: Inter, "Segoe UI", "Helvetica Neue", Arial, sans-serif; font-size: 17px; font-weight: 700; }
.jewel span { display: block; margin-top: 8px; color: #8d8379; font-size: 10px; line-height: 1.5; }
.philosophy-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.philosophy { min-height: 170px; padding: 20px; border-top: 2px solid #76583b; background: linear-gradient(180deg, #17130f, #0c0b0a); }
.philosophy strong { display: block; color: #e9dfd3; font-family: Inter, "Segoe UI", "Helvetica Neue", Arial, sans-serif; font-size: 17px; font-weight: 700; }
.philosophy span { display: block; margin-top: 10px; color: #938980; font-size: 11px; line-height: 1.6; }
.server-disclaimer { margin-top: 24px; padding: 18px 20px; border-left: 3px solid #76583b; background: #120f0d; color: #a99f94; font-size: 12px; line-height: 1.7; }
.launch-label { display: inline-flex; margin-bottom: 18px; padding: 7px 10px; border: 1px solid #76583b; color: var(--gold-soft); text-transform: uppercase; letter-spacing: .15em; font-size: 8px; }
.rate-family-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
.rate-family { padding: 26px; border: 1px solid var(--line); background: linear-gradient(145deg, rgba(27,23,19,.94), rgba(11,10,9,.99)); }
.rate-family h3 { margin: 0 0 20px; color: #eee7dc; font-family: Inter, "Segoe UI", "Helvetica Neue", Arial, sans-serif; font-size: 23px; font-weight: 700; }
.rate-pair { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.rate-column { min-width: 0; }
.rate-column h4 { min-height: 30px; margin: 0 0 10px; color: #a99f94; text-transform: uppercase; letter-spacing: .12em; font-size: 9px; font-weight: 600; line-height: 1.5; }
.rates-table { width: 100%; border-collapse: collapse; border: 1px solid #302820; background: #0c0b0a; }
.rates-table th, .rates-table td { padding: 11px 12px; border-bottom: 1px solid #29231e; text-align: left; font-size: 11px; }
.rates-table th { color: #81776d; text-transform: uppercase; letter-spacing: .1em; font-size: 8px; }
.rates-table td:last-child, .rates-table th:last-child { color: #e4d8c9; text-align: right; }
.rates-table td:last-child { font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: 14px; font-weight: 600; }
.mix-table { margin-top: 18px; }
.events { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.event { padding: 22px; border: 1px solid var(--line); background: #100f0e; }
.event strong { display: block; font-family: Inter, "Segoe UI", "Helvetica Neue", Arial, sans-serif; font-size: 18px; font-weight: 700; }
.event span { display: block; color: #8f867d; margin-top: 10px; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.notice { margin-top: 20px; padding: 16px 18px; border-left: 3px solid var(--gold); background: #15120f; color: #bdb3a8; line-height: 1.6; font-size: 13px; }
.auth-panel { width: 650px; margin: 0 auto; padding: 48px; border: 1px solid var(--line); background: #100f0e; text-align: center; }
.auth-panel .button { margin-top: 22px; }
.support-address { margin: 0 0 26px; padding: 28px; border: 1px solid #5b4632; background: linear-gradient(145deg, rgba(37,29,22,.94), rgba(13,12,11,.98)); text-align: center; }
.support-address span { display: block; color: var(--muted); text-transform: uppercase; letter-spacing: .18em; font-size: 9px; }
.support-address a { display: inline-block; margin-top: 12px; color: var(--gold-soft); font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: 24px; font-weight: 700; text-decoration: none; }
.support-address a:hover { color: #fff; }
.support-list { margin: 16px 0 0; padding-left: 18px; color: var(--muted); font-size: 13px; line-height: 1.8; }
.support-list li::marker { color: var(--gold); }
.card .button { margin-top: 24px; }
footer { padding: 32px 0; border-top: 1px solid #201b17; background: #050505; color: #77716b; font-size: 11px; }
.footer-row { display: flex; justify-content: space-between; align-items: center; }
.footer-brand { color: #c9c0b6; font-family: Inter, "Segoe UI", "Helvetica Neue", Arial, sans-serif; font-weight: 700; letter-spacing: .14em; }
.footer-contact { color: var(--gold-soft); text-decoration: none; }
.footer-contact:hover { color: #fff; }
.account-panel { text-align: left; }
.account-panel h2, .account-panel .section-kicker, .account-panel > p { text-align: center; }
.account-panel form { margin-top: 24px; }
.account-panel label { display: block; margin: 18px 0 8px; color: #bdb3a8; font-size: 11px; text-transform: uppercase; letter-spacing: .1em; }
.account-panel input { display: block; width: 100%; margin-top: 8px; padding: 13px 14px; border: 1px solid #514333; background: #090807; color: #f0e7dc; font: 15px Inter, "Segoe UI", "Helvetica Neue", Arial, sans-serif; }
.account-panel small { display: block; color: #8f867d; font-size: 10px; line-height: 1.6; }
.account-panel button { margin-top: 24px; }
.account-action, .account-logout { margin-top: 28px; }
@media (max-width: 900px) {
  html { min-width: 0; }
  .shell { width: auto; margin: 0 20px; }
  .nav { height: auto; min-height: 74px; flex-wrap: wrap; gap: 0 18px; padding: 16px 0; }
  .brand { width: 100%; margin: 0 0 10px; }
  .nav-link { padding: 9px 0 8px; font-size: 9px; }
  .hero { min-height: 620px; background-position: 62% top; }
  .hero-copy { width: auto; padding-top: 88px; }
  h1 { max-width: 640px; font-size: 42px; }
  .hero-copy p { max-width: 560px; font-size: 16px; }
  .statuses { height: auto; grid-template-columns: repeat(2, 1fr); }
  .status { min-height: 82px; padding: 16px; border-bottom: 1px solid #251e18; }
  main { padding: 48px 0 70px; }
  .section-head { display: block; }
  .section-note { max-width: none; margin-top: 12px; text-align: left; }
  .server-summary { padding: 18px; }
  .server-summary-grid { grid-template-columns: repeat(2, 1fr); }
  .server-summary-copy { display: block; }
  .server-state { display: inline-flex; margin-top: 18px; }
  .server-panels, .rate-family-grid { grid-template-columns: 1fr; }
  .server-feature-grid { grid-template-columns: repeat(2, 1fr); }
  .philosophy-grid { grid-template-columns: repeat(2, 1fr); }
  .jewel-grid { grid-template-columns: repeat(2, 1fr); }
  .grid-3, .grid-2, .events { grid-template-columns: 1fr; }
  .vote-section { grid-template-columns: 1fr; gap: 28px; }
  .vote-rank { min-height: 150px; }
  .footer-row { flex-direction: column; gap: 14px; text-align: center; }
}
@media (max-width: 560px) {
  .shell { margin: 0 14px; }
  .hero { min-height: 660px; background-position: 68% top; }
  .hero-copy { padding-top: 74px; }
  h1 { font-size: 36px; }
  .hero-actions { flex-direction: column; align-items: flex-start; }
  .statuses, .server-summary-grid, .server-feature-grid, .philosophy-grid, .jewel-grid, .rate-pair { grid-template-columns: 1fr; }
  .status { border-left: 1px solid #251e18; }
  .server-panel, .rate-family { padding: 20px; }
  .home-sections { gap: 42px; }
  .vote-section { margin-top: 42px; padding: 28px 22px; }
  .vote-copy h2 { font-size: 30px; }
  .vote-button { width: 100%; min-width: 0; }
  .vote-rank { padding: 22px 16px; }
  .server-fact { grid-template-columns: 1fr; gap: 6px; }
  .server-fact dd { text-align: left; }
  .support-address a { font-size: 18px; overflow-wrap: anywhere; }
}

/* W11-R7 forward-port: current secure routes and rich player-portal presentation. */
.status-value.available, .success-text { color: #87c69b; }
.status-value.pending { color: #c58b72; }
.footer-links { display: flex; gap: 18px; justify-content: center; padding-top: 22px; }
.footer-links a { color: #a99d91; text-decoration: none; text-transform: uppercase; letter-spacing: .12em; font-size: 9px; }
.footer-links a:hover { color: var(--gold-soft); }
.public-email { display: inline-flex; white-space: nowrap; }
.content-panel, .account-future { padding: 30px; border: 1px solid var(--line); background: rgba(16,14,12,.9); }
.content-panel p, .content-panel li, .account-future p { color: var(--muted); line-height: 1.75; }
.content-panel a { color: var(--gold-soft); }
.content-panel ol { padding-left: 22px; }
.compact-card { min-height: 250px; }
.compact-card h3 { margin-top: 24px; }
.compact-card .button { min-width: 0; }
.auth-panel p { color: var(--muted); line-height: 1.7; }
.auth-panel .notice { text-align: left; }
form { margin-top: 28px; text-align: left; }
label { display: block; margin: 18px 0 8px; color: #d9d0c5; text-transform: uppercase; letter-spacing: .1em; font-size: 10px; font-weight: 700; }
input { display: block; width: 100%; margin-top: 8px; padding: 13px 14px; border: 1px solid #514538; background: #090807; color: #f2ede5; font: 15px/1.3 Inter, "Segoe UI", Arial, sans-serif; }
input:focus { outline: 2px solid var(--gold); outline-offset: 1px; }
button { min-height: 44px; margin-top: 22px; padding: 0 22px; border: 1px solid var(--gold); background: linear-gradient(#ddb779,#b78343); color: #17110b; text-transform: uppercase; letter-spacing: .13em; font: 800 10px/1 Inter, "Segoe UI", Arial, sans-serif; cursor: pointer; }
button.secondary { color: #eee7dd; background: rgba(5,5,5,.72); border-color: #74624d; }
.logout-form { margin-top: 20px; }
code { overflow-wrap: anywhere; color: var(--gold-soft); }
.release-card { margin-top: 20px; }
.download-heading { margin-bottom: 26px; }
.client-release { position: relative; display: grid; grid-template-columns: minmax(0,1fr) minmax(260px,.36fr); gap: 38px; align-items: center; overflow: hidden; padding: 42px; border: 1px solid #60492f; background: radial-gradient(circle at 82% 20%,rgba(198,154,88,.13),transparent 32%),linear-gradient(135deg,rgba(40,31,23,.97),rgba(11,10,9,.99) 62%); box-shadow: 0 22px 58px rgba(0,0,0,.34); }
.client-release::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 3px; background: linear-gradient(180deg,#f0cf95,var(--gold),#76502f); }
.release-badge { display: inline-flex; min-height: 28px; align-items: center; padding: 0 11px; border: 1px solid #55735d; color: #a7d7b2; background: rgba(22,55,32,.26); text-transform: uppercase; letter-spacing: .15em; font-size: 9px; font-weight: 800; }
.client-release h2 { margin-top: 18px; font-size: 36px; }
.client-release-copy > p { max-width: 690px; margin: 14px 0 0; color: var(--muted); font-size: 14px; line-height: 1.75; }
.release-meta { display: flex; flex-wrap: wrap; gap: 12px; margin: 28px 0 0; }
.release-meta div { min-width: 138px; padding: 13px 15px; border: 1px solid #3e342b; background: rgba(5,5,5,.36); }
.release-meta dt { color: #82776c; text-transform: uppercase; letter-spacing: .14em; font-size: 8px; }
.release-meta dd { margin: 6px 0 0; color: #eee6dc; font-size: 13px; font-weight: 700; }
.release-integrity { margin-top: 22px; }
.release-integrity span { display: block; margin-bottom: 7px; color: #82776c; text-transform: uppercase; letter-spacing: .14em; font-size: 8px; }
.release-integrity code { display: block; max-width: 700px; color: #c9bba9; font-size: 11px; line-height: 1.6; overflow-wrap: anywhere; }
.client-release-action { display: flex; flex-direction: column; align-items: stretch; justify-content: center; text-align: center; }
.download-button { min-height: 58px; padding: 0 24px; background: linear-gradient(180deg,#e6c17f,#bb8644); box-shadow: 0 14px 30px rgba(0,0,0,.3),inset 0 1px rgba(255,255,255,.3); font-size: 11px; transition: transform .16s ease,filter .16s ease,box-shadow .16s ease; }
.download-button::before { content: "↓"; margin-right: 11px; font-size: 17px; line-height: 1; }
.download-button:hover { filter: brightness(1.08); transform: translateY(-2px); box-shadow: 0 18px 34px rgba(0,0,0,.4),inset 0 1px rgba(255,255,255,.34); }
.download-button:focus-visible { outline: 2px solid #fff1d0; outline-offset: 4px; }
.client-release-action small { margin-top: 13px; color: #7f756b; font-size: 9px; line-height: 1.5; overflow-wrap: anywhere; }
.download-notice { margin-top: 22px; }
.profile-summary { margin-top: 22px; }
.profile-section { margin-top: 64px; }
.profile-section .section-head { margin-bottom: 24px; }
.profile-facts thead th, .profile-facts tfoot th, .profile-facts tfoot td { color: var(--gold-soft); }
.profile-facts td { line-height: 1.5; }
.profile-disclosure { margin-top: 0; }
.public-overview { margin-bottom: 0; }
.public-overview-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
.public-overview .server-metric strong { font-size: 20px; line-height: 1.25; overflow-wrap: anywhere; }
.public-rate-grid, .reset-layout { align-items: start; }
.responsive-table { max-width: 100%; overflow-x: auto; }
.jewel-rates th:first-child, .jewel-rates td:first-child { min-width: 150px; }
.jewel-rates th:nth-child(2), .jewel-rates td:nth-child(2) { text-align: right; }
.player-note { margin: 18px 0 0; padding-top: 16px; border-top: 1px solid #2b241e; color: var(--muted); font-size: 12px; line-height: 1.65; }
.reset-point-groups { display: grid; gap: 18px; }
.reset-point-card { padding: 24px; border: 1px solid var(--line); background: linear-gradient(145deg,rgba(27,23,19,.94),rgba(11,10,9,.99)); }
.reset-point-card span { color: var(--gold-soft); font-size: 20px; font-weight: 750; }
.reset-point-card ul { margin: 18px 0 0; padding-left: 19px; color: var(--muted); font-size: 13px; line-height: 1.8; }
.reset-point-card li::marker { color: var(--gold); }
.chaos-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.chaos-mixes { margin-top: 18px; align-items: start; }
.chaos-grid .rate-family { min-width: 0; }
.farm-map-list { display: grid; gap: 12px; }
.farm-map { border: 1px solid var(--line); background: rgba(13,12,11,.96); }
.farm-map summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px 24px; color: #eee7dd; cursor: pointer; list-style: none; }
.farm-map summary::-webkit-details-marker { display: none; }
.farm-map summary::after { content: "+"; color: var(--gold); font-size: 24px; line-height: 1; }
.farm-map[open] summary::after { content: "−"; }
.farm-map summary span { font-size: 20px; font-weight: 750; }
.farm-map summary small { margin-left: auto; color: #8d8379; text-transform: uppercase; letter-spacing: .12em; font-size: 8px; }
.farm-map .responsive-table { border-top: 1px solid var(--line); }
.farm-table { width: 100%; border-collapse: collapse; }
.farm-table th, .farm-table td { padding: 13px 24px; border-bottom: 1px solid #29231e; text-align: left; }
.farm-table tr:last-child td { border-bottom: 0; }
.farm-table th { color: #81776d; text-transform: uppercase; letter-spacing: .12em; font-size: 8px; }
.farm-table td { color: #ddd5cc; font-size: 13px; }
.farm-table td:first-child { width: 34%; color: var(--gold-soft); font-weight: 700; white-space: nowrap; }

.rankings-wrap { border: 1px solid #3a3027; background: rgba(11,10,9,.98); box-shadow: 0 18px 45px rgba(0,0,0,.25); }
.rankings-table { width: 100%; min-width: 680px; border-collapse: collapse; }
.rankings-table th, .rankings-table td { padding: 15px 22px; border-bottom: 1px solid #29231e; text-align: right; }
.rankings-table tr:last-child td { border-bottom: 0; }
.rankings-table th { color: #81776d; text-transform: uppercase; letter-spacing: .12em; font-size: 8px; }
.rankings-table th:first-child, .rankings-table td:first-child { width: 82px; text-align: center; }
.rankings-table th:nth-child(2), .rankings-table td:nth-child(2) { text-align: left; }
.rankings-table td { color: #ddd5cc; font-size: 13px; }
.rankings-table td strong { color: #f0e8de; font-size: 15px; }
.rank-number { display: inline-grid; width: 30px; height: 30px; place-items: center; border: 1px solid #5f4934; color: var(--gold-soft); font-weight: 750; }
.rankings-table tbody tr:hover { background: rgba(106,77,48,.12); }

.registration-panel { display: grid; grid-template-columns: minmax(0,1.3fr) minmax(280px,.7fr); gap: 18px; }
.registration-copy, .registration-steps { padding: 38px; border: 1px solid var(--line); background: linear-gradient(145deg,rgba(30,25,20,.96),rgba(10,9,8,.99)); }
.registration-copy h2 { max-width: 700px; }
.registration-copy > p { max-width: 680px; color: var(--muted); line-height: 1.75; }
.registration-copy .button { margin-top: 20px; }
.registration-steps { counter-reset: registration-step; }
.registration-step { position: relative; padding: 0 0 24px 42px; color: var(--muted); line-height: 1.55; }
.registration-step:last-child { padding-bottom: 0; }
.registration-step::before { counter-increment: registration-step; content: counter(registration-step); position: absolute; left: 0; top: -2px; display: grid; place-items: center; width: 26px; height: 26px; border: 1px solid #76583b; color: var(--gold-soft); font-weight: 700; }
.registration-step strong { display: block; color: #eee7dd; }

.account-shell { display: grid; gap: 58px; }
.account-summary { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(300px,.65fr); border: 1px solid #59452f; background: linear-gradient(135deg,rgba(46,35,25,.96),rgba(12,10,9,.99) 62%); box-shadow: 0 20px 55px rgba(0,0,0,.28); }
.account-summary-main { padding: 38px; }
.account-summary-main h2 { margin-top: 10px; font-size: 38px; }
.account-summary-main p { max-width: 700px; color: var(--muted); line-height: 1.7; }
.account-badges { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 24px; }
.state-badge { display: inline-flex; align-items: center; min-height: 30px; padding: 0 11px; border: 1px solid #594a3c; color: #d8cfc5; background: rgba(5,5,5,.45); text-transform: uppercase; letter-spacing: .12em; font-size: 9px; font-weight: 700; }
.state-badge.good { border-color: #456550; color: #9bd1aa; }
.state-badge.warn { border-color: #76583b; color: var(--gold-soft); }
.account-summary-side { display: grid; grid-template-columns: 1fr; background: #0c0b0a; }
.account-stat { display: flex; justify-content: space-between; align-items: center; gap: 18px; padding: 20px 24px; border-bottom: 1px solid #2b241e; }
.account-stat:last-child { border-bottom: 0; }
.account-stat span { color: #80776e; text-transform: uppercase; letter-spacing: .13em; font-size: 9px; }
.account-stat strong { color: #eee6dc; text-align: right; font-size: 14px; overflow-wrap: anywhere; }

.portal-section .section-head { margin-bottom: 22px; }
.character-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.character-card { position: relative; min-height: 360px; overflow: hidden; border: 1px solid #3a3027; background: #0b0a09; box-shadow: 0 18px 40px rgba(0,0,0,.25); }
.character-art { position: absolute; inset: 0 0 auto; width: 100%; height: 210px; object-fit: cover; object-position: center 18%; filter: saturate(.82) contrast(1.06); }
.character-card::after { content: ""; position: absolute; inset: 90px 0 auto; height: 150px; background: linear-gradient(transparent,#0b0a09 84%); pointer-events: none; }
.character-copy { position: relative; z-index: 1; padding: 184px 24px 24px; }
.character-heading { display: flex; justify-content: space-between; align-items: start; gap: 16px; }
.character-heading h3 { margin: 0; color: #f2ede5; font-size: 23px; }
.character-class { display: block; margin-top: 7px; color: var(--gold-soft); text-transform: uppercase; letter-spacing: .11em; font-size: 9px; }
.presence-dot { flex: 0 0 auto; display: inline-flex; align-items: center; gap: 7px; color: #9a9188; text-transform: uppercase; letter-spacing: .1em; font-size: 8px; }
.presence-dot::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #786f66; box-shadow: 0 0 0 3px rgba(120,111,102,.12); }
.presence-dot.online { color: #9bd1aa; }
.presence-dot.online::before { background: #78bf8c; box-shadow: 0 0 0 3px rgba(120,191,140,.14); }
.character-facts { display: grid; grid-template-columns: repeat(2,1fr); gap: 12px; margin-top: 24px; }
.character-fact { padding-top: 11px; border-top: 1px solid #2e2822; }
.character-fact span { display: block; color: #756e67; text-transform: uppercase; letter-spacing: .12em; font-size: 8px; }
.character-fact strong { display: block; margin-top: 5px; color: #e1d8ce; font-size: 13px; }
.portal-empty { padding: 34px; border: 1px dashed #4a3c30; background: rgba(14,12,10,.74); }
.portal-empty h3 { margin: 0; font-size: 21px; }
.portal-empty p { max-width: 760px; margin: 10px 0 0; color: var(--muted); line-height: 1.7; }

.quick-actions { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; }
.quick-action { display: flex; min-height: 108px; flex-direction: column; justify-content: space-between; padding: 20px; border: 1px solid var(--line); background: linear-gradient(145deg,#17130f,#0b0a09); text-decoration: none; }
.quick-action span { color: #81776d; text-transform: uppercase; letter-spacing: .14em; font-size: 8px; }
.quick-action strong { color: #eee6db; font-size: 16px; }
.quick-action:hover { border-color: #76583b; transform: translateY(-1px); }
.activity-list { border: 1px solid var(--line); background: #0d0c0b; }
.activity-item { display: grid; grid-template-columns: minmax(150px,.45fr) minmax(0,1fr) auto; gap: 18px; align-items: center; padding: 17px 20px; border-bottom: 1px solid #29231e; }
.activity-item:last-child { border-bottom: 0; }
.activity-item time { color: #847b72; font-size: 11px; }
.activity-item strong { color: #e6ded4; font-size: 13px; }
.activity-item span { color: #9bd1aa; text-transform: uppercase; letter-spacing: .1em; font-size: 8px; }

@media (max-width: 1199px) {
  html { min-width: 0; }
  .shell { width: calc(100% - 40px); max-width: 1180px; }
  .nav { height: auto; min-height: 74px; flex-wrap: wrap; gap: 0 18px; padding: 14px 0; }
  .brand { flex: 0 0 100%; width: auto; margin-bottom: 8px; }
  .nav-link { padding: 9px 0 8px; font-size: 9px; }
  .hero-copy { width: calc(100% - 40px); max-width: 630px; margin: 0 auto; padding-top: 88px; }
}

@media (max-width: 900px) {
  .registration-panel, .account-summary { grid-template-columns: 1fr; }
  .character-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .quick-actions { grid-template-columns: repeat(2,1fr); }
  .client-release { grid-template-columns: 1fr; }
  .client-release-action { max-width: 360px; align-items: stretch; }
  .public-overview-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .chaos-grid { grid-template-columns: 1fr; }
}

@media (max-width: 560px) {
  .shell { width: auto; margin: 0 14px; }
  .hero { min-height: 620px; background-position: 60% top; }
  .hero::before { background: linear-gradient(90deg,rgba(2,2,2,.72),rgba(2,2,2,.34)),linear-gradient(0deg,#050505 0,transparent 46%); }
  .hero-copy { width: auto; margin: 0 18px; padding-top: 74px; }
  h1 { font-size: 38px; }
  .character-grid, .quick-actions { grid-template-columns: 1fr; }
  .account-summary-main, .registration-copy, .registration-steps { padding: 26px 20px; }
  .account-summary-main h2 { font-size: 31px; }
  .activity-item { grid-template-columns: 1fr; gap: 7px; }
  .profile-facts th, .profile-facts td { display: block; width: 100%; padding: 13px 16px; }
  .profile-facts th { border-bottom: 0; padding-bottom: 4px; }
  .profile-facts td { padding-top: 4px; }
  .client-release { padding: 28px 24px; }
  .client-release h2 { font-size: 30px; }
  .release-meta { display: grid; grid-template-columns: 1fr; }
  .release-meta div { min-width: 0; }
  .public-overview-grid { grid-template-columns: 1fr; }
  .farm-map summary { padding: 18px; }
  .farm-map summary small { display: none; }
  .farm-table th, .farm-table td { padding: 12px 16px; }
}
