/* 황혼의 대지 shared stylesheet v7.1 */
:root{
  --bg:#0b0d10;
  --bg-soft:#11151a;
  --panel:#171c22;
  --panel-2:#1c232b;
  --line:#2d343d;
  --gold:#c9a24b;
  --gold2:#e8cb84;
  --ember:#a6432e;
  --text:#efe9dc;
  --muted:#a9a398;
  --faint:#706b63;
  --display:'Cinzel', serif;
  --body:'Noto Sans KR', sans-serif;
  --max:1180px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:72px}
body{
  margin:0;
  color:var(--text);
  background:
    radial-gradient(circle at 50% 0%,rgba(201,162,75,.05),transparent 32%),
    var(--bg);
  font-family:var(--body);
  line-height:1.7;
  overflow-x:hidden;
}
body::before{
  content:"";
  position:fixed;inset:0;
  pointer-events:none;
  opacity:.18;
  background-image:
    linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.014) 1px, transparent 1px);
  background-size:54px 54px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.7),transparent 85%);
}
a{color:inherit}
img{max-width:100%;display:block}
button,
input{font:inherit}
.wrap{max-width:var(--max);margin:0 auto;padding:0 28px}
.section{padding:110px 0;border-top:1px solid rgba(255,255,255,.045)}
.kicker{
  display:inline-flex;align-items:center;gap:10px;
  color:var(--gold);font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;
}
.kicker::before{content:"";width:32px;height:1px;background:var(--gold)}
h1,
h2,
h3{font-family:var(--display);line-height:1.15;margin:0}
p{margin:0}

/* NAV */
.nav{
  position:fixed;top:0;left:0;right:0;z-index:1000;
  background:rgba(9,11,14,.78);
  border-bottom:1px solid rgba(255,255,255,.06);
  backdrop-filter:blur(14px);
}
.nav .wrap{height:72px;display:flex;align-items:center;justify-content:space-between}
.brand{
  font-family:var(--display);font-weight:700;text-decoration:none;color:var(--gold2);
  letter-spacing:.08em;font-size:1.02rem
}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:28px;align-items:center}
.navlink{text-decoration:none;color:var(--muted);font-size:.88rem;position:relative}
.navlink::after{
  content:"";position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:var(--gold);
  transition:right .2s ease
}
.navlink:hover,
.navlink.active{color:var(--text)}
.navlink:hover::after,
.navlink.active::after{right:0}
.account-btn{
  border:1px solid rgba(201,162,75,.48);background:rgba(201,162,75,.05);
  color:var(--gold2);padding:9px 15px;cursor:pointer;border-radius:2px;
}
.nav-toggle{display:none;width:42px;height:38px;border:1px solid var(--line);background:none;position:relative}
.nav-toggle span,
.nav-toggle::before,
.nav-toggle::after{
  content:"";position:absolute;left:10px;right:10px;height:2px;background:var(--text)
}
.nav-toggle::before{top:11px}.nav-toggle span{top:18px}.nav-toggle::after{top:25px}

/* HERO */
.hero{
  min-height:100svh;
  position:relative;
  display:flex;
  align-items:center;
  overflow:hidden;
  isolation:isolate;
  background:#080a0d;
}

.hero-media{
  position:absolute;
  inset:0;
  z-index:-4;
  overflow:hidden;
  background:#080a0d;
}

.hero-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:46% center;
  transform:scale(1.005);
}

.hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-3;
  pointer-events:none;
  background:
    linear-gradient(
      90deg,
      rgba(4,6,8,.96) 0%,
      rgba(4,6,8,.90) 17%,
      rgba(4,6,8,.72) 32%,
      rgba(4,6,8,.38) 48%,
      rgba(4,6,8,.10) 68%,
      rgba(4,6,8,.08) 100%
    ),
    linear-gradient(
      180deg,
      rgba(4,6,8,.38) 0%,
      rgba(4,6,8,.08) 32%,
      rgba(4,6,8,.05) 62%,
      rgba(11,13,16,.92) 100%
    );
}

.hero::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:24%;
  z-index:-2;
  pointer-events:none;
  background:linear-gradient(to bottom,transparent,#0b0d10 94%);
}

.hero-atmosphere{
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.85;
  background:
    radial-gradient(circle at 80% 43%,rgba(231,154,72,.11),transparent 22%),
    radial-gradient(circle at 24% 72%,rgba(166,67,46,.08),transparent 18%);
}

.hero-inner{
  position:relative;
  z-index:2;
  width:min(760px,calc(100% - 96px));
  margin:0;
  margin-left:clamp(30px,5vw,96px);
  padding:156px 0 118px;
  text-align:left;
}

.hero-inner > *{
  max-width:650px;
}

.hero-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:12px;
  color:var(--gold2);
  letter-spacing:.22em;
  text-transform:uppercase;
  font-size:.72rem;
  text-shadow:0 2px 18px rgba(0,0,0,.8);
}

.hero-eyebrow::before{
  content:"";
  width:42px;
  height:1px;
  background:linear-gradient(90deg,var(--gold),rgba(201,162,75,.18));
}

.hero h1{
  margin-top:18px;
  font-size:clamp(3.8rem,7.4vw,7rem);
  letter-spacing:.045em;
  text-wrap:balance;
  text-shadow:
    0 3px 18px rgba(0,0,0,.78),
    0 16px 46px rgba(0,0,0,.54);
}

.tagline{
  color:#ddd4c3;
  margin:24px 0 0;
  font-size:clamp(1.02rem,1.55vw,1.22rem);
  line-height:1.75;
  text-shadow:0 2px 16px rgba(0,0,0,.88);
}

.hero-sub{
  margin:12px 0 0;
  color:#a9a397;
  font-size:.88rem;
  line-height:1.9;
  text-shadow:0 2px 14px rgba(0,0,0,.88);
}

.hero-ctas{
  display:flex;
  justify-content:flex-start;
  gap:12px;
  margin-top:34px;
  flex-wrap:wrap;
}

.hero .btn-ghost{
  border-color:rgba(232,203,132,.34);
  background:rgba(8,10,13,.48);
  backdrop-filter:blur(8px);
}

.scroll-cue{
  position:absolute;
  bottom:25px;
  left:50%;
  transform:translateX(-50%);
  z-index:3;
  font-size:.66rem;
  letter-spacing:.18em;
  color:#8f8a80;
  text-transform:uppercase;
  text-shadow:0 2px 8px rgba(0,0,0,.8);
}

/* INTRO */
.intro-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:72px;align-items:center}
.intro-title{font-size:clamp(2rem,4vw,3.5rem);margin:14px 0 20px}
.intro-copy{color:var(--muted);font-size:1rem}
.intro-copy p+p{margin-top:14px}
.feature-stack{display:grid;gap:14px}
.feature-card{
  padding:24px;border:1px solid var(--line);background:linear-gradient(145deg,var(--panel),#11151a);
  position:relative;overflow:hidden
}
.feature-card::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:linear-gradient(var(--gold),transparent)
}
.feature-card h3{font-size:1.05rem;color:var(--gold2);margin-bottom:6px}
.feature-card p{color:var(--muted);font-size:.9rem}


.placeholder-note{
  position:absolute;right:14px;top:12px;z-index:2;color:#8e877b;font-size:.7rem;
  border:1px solid rgba(255,255,255,.08);padding:5px 8px;background:rgba(0,0,0,.2)
}

/* HUB */
.hub-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:34px}
.hub-card{
  text-decoration:none;padding:24px 20px;border:1px solid var(--line);background:var(--panel);
  min-height:170px;display:flex;flex-direction:column;justify-content:space-between;transition:.2s
}
.hub-card:hover{transform:translateY(-4px);border-color:#695d42}
.hub-card h3{color:var(--gold2);font-size:1rem}
.hub-card p{color:var(--muted);font-size:.84rem;margin-top:10px}
.go{color:var(--gold);font-size:.8rem;margin-top:16px}

/* PAGE SECTIONS */
.page-block{border-top:1px solid rgba(255,255,255,.05)}
.page-header{padding:92px 0 30px;background:linear-gradient(180deg,rgba(255,255,255,.018),transparent)}
.page-header .crumb{font-size:.78rem;color:var(--faint);margin-bottom:10px}
.page-header h2{font-size:clamp(1.9rem,4vw,3rem);margin-bottom:8px}
.page-header p{color:var(--muted)}
.content-pad{padding:24px 0 90px}

.specs{width:100%;border-collapse:collapse;margin-bottom:18px}
.specs caption{text-align:left;color:var(--gold);font-weight:700;margin-bottom:8px}
.specs th,
.specs td{padding:11px 12px;border-bottom:1px solid var(--line);font-size:.88rem}
.specs th{text-align:left;color:var(--text);width:32%}.specs td{color:var(--muted)}

.filesize{color:var(--faint);font-size:.84rem}

.btn-disabled{border-color:var(--line);color:var(--faint);pointer-events:none}

.ledger{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.ledger li{display:grid;grid-template-columns:110px 72px 1fr;gap:18px;padding:18px 8px;border-bottom:1px solid var(--line)}
.ledger .date,
.ledger .tag{font-size:.78rem}.ledger .date{color:var(--faint)}
.ledger .tag{color:var(--gold);border:1px solid #5c4a27;width:max-content;padding:3px 8px}
.ledger .title{color:var(--text)}
.tag-maint{color:#aaa!important;border-color:#555!important}.tag-event{color:#c88779!important;border-color:#71433b!important}

.timeline{border-left:1px solid var(--line);padding-left:26px;margin-left:6px}
.tl-item{position:relative;padding:0 0 30px}
.tl-item::before{content:"";position:absolute;left:-32px;top:6px;width:11px;height:11px;border:2px solid var(--gold);border-radius:50%;background:var(--bg)}
.tl-version{font-family:var(--display);color:var(--gold2);margin-bottom:6px}.tl-desc{color:var(--muted)}

.rank-table{width:100%;border-collapse:collapse}
.rank-table th,
.rank-table td{padding:14px;border-bottom:1px solid var(--line);text-align:left}
.rank-table th{color:var(--faint);font-size:.78rem}.rank-table td{color:var(--muted)}
.rank-table .player{color:var(--text)}
.rank-num{display:inline-grid;place-items:center;width:28px;height:28px;border:1px solid var(--line);border-radius:50%}
.rank-num.gold{background:var(--gold2);color:#1c160d}.rank-num.silver{background:#c5c5c5;color:#222}.rank-num.bronze{background:#ad744d;color:#21130b}

.world-copy{max-width:700px;color:var(--muted)}
.world-copy p+p{margin-top:14px}
.gallery{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:30px}
.gcard{min-height:180px;border:1px solid var(--line);display:flex;align-items:flex-end;padding:16px;position:relative;overflow:hidden}
.gcard::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.75))}
.gcard span{position:relative;z-index:2}
.g1{background:linear-gradient(135deg,#4a4130,#171411)}
.g2{background:linear-gradient(135deg,#364643,#121817)}
.g3{background:linear-gradient(135deg,#4c3827,#17110e)}
.g4{background:linear-gradient(135deg,#353130,#11100f)}

/* LOGIN / ACCOUNT PLACEHOLDER */
.account-panel{
  position:fixed;inset:0;z-index:2000;display:none;place-items:center;
  background:rgba(0,0,0,.66);backdrop-filter:blur(8px);padding:20px
}
.account-panel.open{display:grid}
.account-card{
  width:min(430px,100%);border:1px solid #49433a;background:#101419;padding:28px;
  box-shadow:0 30px 80px rgba(0,0,0,.5)
}
.account-card h3{font-size:1.5rem;margin-bottom:8px}.account-card p{color:var(--muted);font-size:.88rem}
.account-actions{display:grid;gap:10px;margin-top:22px}
.account-actions input{width:100%;background:#0b0e12;border:1px solid var(--line);color:var(--text);padding:12px}
.account-note{margin-top:14px;color:var(--faint)!important;font-size:.75rem!important}
.close-login{float:right;background:none;border:0;color:var(--muted);cursor:pointer;font-size:1.3rem}

/* FOOTER */
footer{padding:54px 0;border-top:1px solid rgba(255,255,255,.06);background:#090b0e}


.reveal{opacity:0;transform:translateY(20px);transition:.7s ease}
.reveal.visible{opacity:1;transform:none}

@media(max-width:960px){
  .hub-grid{grid-template-columns:repeat(2,1fr)}
  .intro-grid{grid-template-columns:1fr}
  .gallery{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:760px){
  .nav ul{
    position:absolute;left:0;right:0;top:72px;display:flex;flex-direction:column;gap:0;
    background:#0b0e12;border-top:1px solid var(--line);max-height:0;overflow:hidden;transition:.25s
  }
  .nav ul.open{max-height:420px}
  .nav ul li{width:100%;border-bottom:1px solid rgba(255,255,255,.05)}
  .navlink{display:block;padding:15px 28px}
  .nav-toggle{display:block}
  .account-btn{display:none}
  .hero{min-height:92vh}
  .section{padding:82px 0}
  .ledger li{grid-template-columns:1fr;gap:6px}
  .gallery{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){
  .wrap{padding:0 18px}
  .hub-grid,
.gallery{grid-template-columns:1fr}
  .hero h1{font-size:3rem}

}
@media(prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important;animation:none!important;transition:none!important}
}

/* ---------- PLAYFAB ACCOUNT v3 ---------- */
.account-card{max-height:min(760px,92vh);overflow:auto}
.auth-tabs{display:grid;grid-template-columns:1fr 1fr;margin:22px 0 16px;border:1px solid var(--line)}
.auth-tab{
  border:0;background:#0c1014;color:var(--muted);padding:11px;cursor:pointer;
  border-right:1px solid var(--line)
}
.auth-tab:last-child{border-right:0}
.auth-tab.active{background:rgba(201,162,75,.12);color:var(--gold2)}
.auth-form{display:none}
.auth-form.active{display:grid;gap:10px}
.auth-form label{font-size:.76rem;color:var(--muted);margin-top:2px}
.auth-form input{
  width:100%;background:#0b0e12;border:1px solid var(--line);
  color:var(--text);padding:12px 13px;outline:none
}
.auth-form input:focus{border-color:#71603b;box-shadow:0 0 0 2px rgba(201,162,75,.08)}
.auth-status{
  min-height:22px;margin-top:12px!important;padding:9px 10px;border:1px solid transparent;
  font-size:.8rem!important
}
.auth-status.info{color:#b9b2a7;background:rgba(255,255,255,.025);border-color:var(--line)}
.auth-status.ok{color:#d9c894;background:rgba(201,162,75,.07);border-color:rgba(201,162,75,.28)}
.auth-status.error{color:#d89a8d;background:rgba(166,67,46,.08);border-color:rgba(166,67,46,.32)}
.auth-divider{height:1px;background:var(--line);margin:18px 0}
.account-profile{display:none}
.account-profile.active{display:block}
.profile-grid{display:grid;grid-template-columns:120px 1fr;gap:8px 14px;margin:18px 0}
.profile-grid dt{color:var(--faint);font-size:.78rem}
.profile-grid dd{margin:0;color:var(--text);font-size:.83rem;word-break:break-all}
.config-warning{
  margin:0 0 16px;padding:10px 12px;border:1px solid rgba(201,162,75,.27);
  background:rgba(201,162,75,.055);color:#c6b891;font-size:.76rem
}
.btn-danger-soft{
  border-color:#653c35;background:rgba(166,67,46,.08);color:#d39a8e
}
.btn-danger-soft:hover{border-color:#995547}
.account-btn.logged-in{border-color:#60704c;color:#c7d2ac;background:rgba(111,132,79,.07)}
.auth-small{color:var(--faint)!important;font-size:.72rem!important;margin-top:9px!important}


/* ---------- CHARACTER DASHBOARD v4 ---------- */
.character-dashboard{margin-top:22px}
.character-hero{
  border:1px solid var(--line);
  background:
    radial-gradient(circle at 80% 20%,rgba(201,162,75,.10),transparent 30%),
    linear-gradient(145deg,#171c22,#0e1216);
  padding:22px;
}
.character-top{display:flex;align-items:center;gap:18px}
.character-avatar{
  width:72px;height:72px;flex:0 0 72px;border:1px solid #5a503e;
  background:
    radial-gradient(circle at 50% 35%,rgba(232,203,132,.22),transparent 16%),
    linear-gradient(145deg,#343027,#121518);
  display:grid;place-items:center;font-family:var(--display);font-size:1.65rem;color:var(--gold2)
}
.character-name{font-family:var(--display);font-size:1.35rem;color:var(--gold2)}
.character-id{color:var(--faint);font-size:.72rem;margin-top:5px}
.character-stats{
  display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px
}
.stat-card{border:1px solid var(--line);background:rgba(0,0,0,.12);padding:14px}
.stat-label{display:block;color:var(--faint);font-size:.72rem;margin-bottom:5px}
.stat-value{font-family:var(--display);font-size:1.15rem;color:var(--text)}
.character-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.mini-btn{
  border:1px solid var(--line);background:#0d1115;color:var(--muted);
  padding:8px 11px;cursor:pointer;font-size:.76rem
}
.mini-btn:hover{border-color:#655a43;color:var(--gold2)}
.character-message{margin-top:12px;color:var(--muted);font-size:.77rem}
.data-debug{
  display:none;margin-top:14px;border:1px solid var(--line);background:#0a0d10;padding:12px;
  max-height:220px;overflow:auto;white-space:pre-wrap;word-break:break-word;
  color:#a9b0b5;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.68rem
}
.data-debug.open{display:block}
@media(max-width:520px){
  .character-stats{grid-template-columns:1fr}
  .character-top{align-items:flex-start}
}


/* ---------- PLAYFAB CHARACTER SYSTEM v6 ---------- */
.character-list{
  display:grid;
  gap:10px;
  margin-top:16px;
}
.character-row{
  display:grid;
  grid-template-columns:1fr auto;
  gap:14px;
  align-items:center;
  border:1px solid var(--line);
  background:#0d1115;
  padding:14px;
  cursor:pointer;
  transition:.18s ease;
}
.character-row:hover{border-color:#665b43;transform:translateY(-1px)}
.character-row.selected{
  border-color:rgba(201,162,75,.62);
  background:rgba(201,162,75,.065);
}
.character-row-name{
  font-family:var(--display);
  color:var(--gold2);
  font-size:1rem;
}
.character-row-id{
  color:var(--faint);
  font-size:.68rem;
  margin-top:4px;
  word-break:break-all;
}
.character-row-type{
  color:var(--muted);
  font-size:.72rem;
}
.character-empty{
  border:1px dashed var(--line);
  padding:16px;
  color:var(--muted);
  font-size:.8rem;
  text-align:center;
}
.character-detail{
  margin-top:16px;
  border:1px solid var(--line);
  background:
    radial-gradient(circle at 82% 18%,rgba(201,162,75,.09),transparent 28%),
    linear-gradient(145deg,#171c22,#0e1216);
  padding:20px;
}
.character-detail h4{
  margin:0 0 6px;
  font-family:var(--display);
  color:var(--gold2);
  font-size:1.12rem;
}
.character-detail-id{
  color:var(--faint);
  font-size:.7rem;
  margin-bottom:14px;
  word-break:break-all;
}
.character-detail-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
}
.character-detail-card{
  border:1px solid var(--line);
  background:rgba(0,0,0,.13);
  padding:12px;
}
.character-detail-card span{
  display:block;
}
.character-detail-card .label{
  color:var(--faint);
  font-size:.67rem;
  margin-bottom:4px;
}
.character-detail-card .value{
  color:var(--text);
  font-family:var(--display);
  font-size:1.05rem;
}
.character-controls{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:14px;
}
@media(max-width:640px){
  .character-detail-grid{grid-template-columns:1fr 1fr}
}


.email-verification-note{
  margin-top:10px;
  padding:10px 12px;
  border:1px solid rgba(201,162,75,.24);
  background:rgba(201,162,75,.045);
  color:#c5b991;
  font-size:.75rem;
}

.verify-recovery{display:none;margin-top:18px;padding:16px;border:1px solid rgba(201,162,75,.28);background:rgba(201,162,75,.045)}
.verify-recovery.active{display:block}
.verify-recovery h4{margin:0 0 8px;font-family:var(--display);color:var(--gold2);font-size:1rem}
.verify-recovery p{color:var(--muted);font-size:.8rem}
.verify-recovery .verify-actions{display:grid;gap:10px;margin-top:12px}
.verify-recovery input{width:100%;background:#0b0e12;border:1px solid var(--line);color:var(--text);padding:12px 13px}
.verify-recovery .verify-buttons{display:flex;gap:10px;flex-wrap:wrap}
.verify-recovery .verify-buttons .mini-btn{flex:1 1 180px}

.contact-debug{
  margin-top:12px;
  border:1px solid var(--line);
  background:#090c0f;
}
.contact-debug summary{
  cursor:pointer;
  padding:10px 12px;
  color:var(--muted);
  font-size:.76rem;
}
.contact-debug pre{
  margin:0;
  padding:12px;
  max-height:280px;
  overflow:auto;
  white-space:pre-wrap;
  word-break:break-word;
  color:#aeb6bd;
  font-family:ui-monospace,SFMono-Regular,Consolas,monospace;
  font-size:.68rem;
  border-top:1px solid var(--line);
}

.developer-debug{
  margin-top:14px;
  border:1px solid var(--line);
  background:#0a0d10;
}
.developer-debug summary{
  cursor:pointer;
  padding:10px 12px;
  color:var(--faint);
  font-size:.72rem;
}
.developer-debug-inner{
  padding:12px;
  border-top:1px solid var(--line);
}
.developer-debug-grid{
  display:grid;
  grid-template-columns:120px 1fr;
  gap:7px 12px;
  margin-bottom:12px;
}
.developer-debug-grid dt{
  color:var(--faint);
  font-size:.7rem;
}
.developer-debug-grid dd{
  margin:0;
  color:var(--muted);
  font-size:.72rem;
  word-break:break-all;
}
.developer-debug .mini-btn{
  margin-bottom:10px;
}


.password-recovery-link{
  margin-top:2px;
  background:none;
  border:0;
  padding:3px 0;
  color:var(--gold2);
  cursor:pointer;
  font-size:.76rem;
  text-align:left;
  width:max-content;
}
.password-recovery-link:hover{text-decoration:underline}
.password-recovery{
  display:none;
  margin-top:12px;
  padding:14px;
  border:1px solid var(--line);
  background:#0b0f13;
}
.password-recovery.active{display:block}
.password-recovery p{
  color:var(--muted);
  font-size:.76rem;
  margin-bottom:10px;
}
.password-recovery input{
  width:100%;
  background:#0b0e12;
  border:1px solid var(--line);
  color:var(--text);
  padding:12px 13px;
  outline:none;
}
.password-recovery input:focus{
  border-color:#71603b;
  box-shadow:0 0 0 2px rgba(201,162,75,.08);
}
.password-recovery-actions{
  display:flex;
  gap:10px;
  margin-top:10px;
  flex-wrap:wrap;
}
.password-recovery-actions .mini-btn{
  flex:1 1 150px;
}


/* ---------- CUSTOM PASSWORD RESET v6.10 ---------- */
.password-reset-page{
  position:fixed;
  inset:0;
  z-index:5000;
  display:none;
  place-items:center;
  padding:24px;
  overflow:auto;
  background:
    radial-gradient(circle at 50% 15%,rgba(201,162,75,.08),transparent 30%),
    linear-gradient(180deg,#0a0d10,#07090b);
}
.password-reset-page.active{display:grid}
.password-reset-card{
  width:min(480px,100%);
  border:1px solid #49433a;
  background:#101419;
  padding:30px;
  box-shadow:0 30px 90px rgba(0,0,0,.58);
}
.password-reset-brand{
  font-family:var(--display);
  color:var(--gold2);
  letter-spacing:.08em;
  font-size:.85rem;
  margin-bottom:20px;
}
.password-reset-card h2{
  font-size:1.7rem;
  margin-bottom:10px;
}
.password-reset-copy{
  color:var(--muted);
  font-size:.84rem;
  margin-bottom:20px;
}
.password-reset-form{
  display:grid;
  gap:10px;
}
.password-reset-form label{
  color:var(--muted);
  font-size:.76rem;
}
.password-reset-form input{
  width:100%;
  padding:12px 13px;
  border:1px solid var(--line);
  background:#0b0e12;
  color:var(--text);
  outline:none;
}
.password-reset-form input:focus{
  border-color:#71603b;
  box-shadow:0 0 0 2px rgba(201,162,75,.08);
}
.password-reset-status{
  min-height:22px;
  margin-top:14px;
  padding:9px 10px;
  border:1px solid transparent;
  font-size:.8rem;
}
.password-reset-status.info{
  color:#b9b2a7;
  background:rgba(255,255,255,.025);
  border-color:var(--line);
}
.password-reset-status.ok{
  color:#d9c894;
  background:rgba(201,162,75,.07);
  border-color:rgba(201,162,75,.28);
}
.password-reset-status.error{
  color:#d89a8d;
  background:rgba(166,67,46,.08);
  border-color:rgba(166,67,46,.32);
}
.password-reset-actions{
  display:flex;
  gap:10px;
  margin-top:18px;
  flex-wrap:wrap;
}
.password-reset-actions .btn,
.password-reset-actions .mini-btn{
  flex:1 1 180px;
}
.password-reset-success{
  display:none;
}
.password-reset-success.active{
  display:block;
}


/* ---------- INPUT UX v6.12 ---------- */
.field-hint{
  color:var(--faint);
  font-size:.7rem;
  margin-top:-4px;
}
.password-field{
  position:relative;
}
.password-field input{
  padding-right:76px!important;
}
.password-toggle{
  position:absolute;
  top:50%;
  right:8px;
  transform:translateY(-50%);
  border:0;
  background:transparent;
  color:var(--muted);
  cursor:pointer;
  font-size:.72rem;
  padding:5px 7px;
}
.password-toggle:hover{
  color:var(--gold2);
}


/* ---------- DEVELOPER MODE v6.13 ---------- */
.dev-only{
  display:none!important;
}
body.developer-mode .dev-only{
  display:block!important;
}
.developer-mode-badge{
  margin:0 0 12px;
  width:max-content;
  padding:5px 8px;
  border:1px solid rgba(201,162,75,.32);
  background:rgba(201,162,75,.06);
  color:var(--gold2);
  font-size:.68rem;
  letter-spacing:.08em;
}


/* ---------- RANKING PLACEHOLDER v6.14 ---------- */
.ranking-placeholder{
  border:1px solid var(--line);
  background:
    radial-gradient(circle at 78% 18%,rgba(201,162,75,.08),transparent 30%),
    linear-gradient(145deg,#151a20,#0d1115);
  padding:34px 28px;
  text-align:center;
}
.ranking-placeholder-icon{
  width:56px;
  height:56px;
  margin:0 auto 16px;
  display:grid;
  place-items:center;
  border:1px solid rgba(201,162,75,.42);
  color:var(--gold2);
  font-family:var(--display);
  font-size:1.15rem;
}
.ranking-placeholder h3{
  font-size:1.35rem;
  color:var(--gold2);
  margin-bottom:10px;
}
.ranking-placeholder p{
  max-width:620px;
  margin:0 auto;
  color:var(--muted);
  font-size:.88rem;
}
.ranking-placeholder .dev-only{
  margin-top:14px;
  color:var(--faint);
  font-size:.72rem;
}


/* ---------- ACCESSIBILITY + MOBILE UX v6.16 ---------- */
:focus-visible{
  outline:2px solid var(--gold2);
  outline-offset:3px;
}

.account-panel[aria-hidden="true"],
.password-reset-page[aria-hidden="true"]{
  visibility:hidden;
}

@media(max-width:760px){
  .account-panel{
    padding:12px;
  }

  .account-card{
    width:min(100%,430px);
    padding:22px 18px;
    max-height:94vh;
  }

  .profile-grid{
    grid-template-columns:1fr;
    gap:3px 0;
  }

  .profile-grid dd{
    margin-bottom:9px;
  }

  .character-controls,
.verify-buttons,
.password-recovery-actions,
.password-reset-actions{
    flex-direction:column;
  }

  .character-controls .mini-btn,
.verify-buttons .mini-btn,
.password-recovery-actions .mini-btn,
.password-reset-actions .mini-btn,
.password-reset-actions .btn{
    width:100%;
    flex:auto;
  }

  .password-reset-card{
    padding:24px 18px;
  }
}

@media(max-width:520px){
  .character-detail-grid{
    grid-template-columns:1fr;
  }

  .character-row{
    grid-template-columns:1fr;
  }

  .character-row-type{
    justify-self:start;
  }
}


/* ---------- LOADING / REQUEST UX v6.17 ---------- */
button:disabled,
.btn:disabled,
.mini-btn:disabled{
  opacity:.55;
  cursor:not-allowed;
  transform:none!important;
}
[aria-busy="true"]{cursor:progress}
.character-row[aria-busy="true"]{opacity:.72}

/* ---------- EXTERNAL LINK STATES v6.18 ---------- */
.link-pending{
  opacity:.58;
  cursor:not-allowed!important;
  pointer-events:none;
}


.link-status-note{
  margin-top:10px;
  color:var(--faint);
  font-size:.76rem;
}


/* ---------- CATEGORY NAVIGATION v6.21 ---------- */
.nav .wrap{
  position:relative;
}

.nav-root{
  align-self:stretch;
}

.nav-root > li{
  position:relative;
  height:72px;
  display:flex;
  align-items:center;
}

.nav-menu-button,
.nav-main-link{
  height:72px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:0 5px;
  border:0;
  background:transparent;
  color:var(--muted);
  text-decoration:none;
  cursor:pointer;
  font-size:.9rem;
  position:relative;
}

.nav-menu-button::after,
.nav-main-link::after{
  content:"";
  position:absolute;
  left:5px;
  right:calc(100% - 5px);
  bottom:0;
  height:2px;
  background:var(--gold);
  transition:right .2s ease;
}

.nav-group:hover > .nav-menu-button,
.nav-group:focus-within > .nav-menu-button,
.nav-group.active > .nav-menu-button,
.nav-group.open > .nav-menu-button,
.nav-main-link:hover,
.nav-main-link.active{
  color:var(--text);
}

.nav-group:hover > .nav-menu-button::after,
.nav-group:focus-within > .nav-menu-button::after,
.nav-group.active > .nav-menu-button::after,
.nav-group.open > .nav-menu-button::after,
.nav-main-link:hover::after,
.nav-main-link.active::after{
  right:5px;
}

.nav-arrow{
  width:7px;
  height:7px;
  border-right:1px solid currentColor;
  border-bottom:1px solid currentColor;
  transform:rotate(45deg) translateY(-2px);
  transition:transform .18s ease;
}

.nav-group.open .nav-arrow,
.nav-group:hover .nav-arrow,
.nav-group:focus-within .nav-arrow{
  transform:rotate(225deg) translate(-1px,-1px);
}

.nav .nav-submenu{
  position:absolute;
  top:72px;
  left:50%;
  transform:translate(-50%,8px);
  min-width:178px;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:0;
  padding:8px 0;
  margin:0;
  background:rgba(10,13,17,.98);
  border:1px solid rgba(255,255,255,.08);
  border-top:1px solid rgba(201,162,75,.38);
  box-shadow:0 18px 34px rgba(0,0,0,.34);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .16s ease, transform .16s ease, visibility .16s ease;
}

.nav .nav-submenu li{
  width:100%;
}

.nav .nav-submenu .navlink{
  display:block;
  width:100%;
  padding:11px 18px;
  color:var(--muted);
  white-space:nowrap;
  font-size:.82rem;
}

.nav .nav-submenu .navlink::after{
  display:none;
}

.nav .nav-submenu .navlink:hover,
.nav .nav-submenu .navlink.active{
  color:var(--gold2);
  background:rgba(201,162,75,.07);
}

.nav-group:hover > .nav-submenu,
.nav-group:focus-within > .nav-submenu,
.nav-group.open > .nav-submenu{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translate(-50%,0);
}

@media(max-width:760px){
  .nav .wrap{
    height:72px;
  }

  .nav .nav-root{
    position:absolute;
    left:0;
    right:0;
    top:72px;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    background:#0b0e12;
    border-top:1px solid var(--line);
    max-height:0;
    overflow:hidden;
    transition:max-height .25s ease;
  }

  .nav .nav-root.open{
    max-height:min(76vh,620px);
    overflow:auto;
  }

  .nav-root > li{
    display:block;
    height:auto;
    width:100%;
    border-bottom:1px solid rgba(255,255,255,.05);
  }

  .nav-menu-button,
.nav-main-link{
    width:100%;
    height:auto;
    min-height:52px;
    justify-content:space-between;
    padding:15px 28px;
    text-align:left;
  }

  .nav-menu-button::after,
.nav-main-link::after{
    display:none;
  }

  .nav .nav-submenu{
    position:static;
    transform:none;
    min-width:0;
    width:100%;
    max-height:0;
    overflow:hidden;
    padding:0;
    border:0;
    border-top:0;
    box-shadow:none;
    background:#080b0e;
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transition:max-height .2s ease;
  }

  .nav-group:hover > .nav-submenu,
.nav-group:focus-within > .nav-submenu{
    transform:none;
  }

  .nav-group.open > .nav-submenu{
    max-height:220px;
    transform:none;
    border-top:1px solid rgba(255,255,255,.04);
  }

  .nav .nav-submenu .navlink{
    padding:13px 42px;
    font-size:.8rem;
  }

  .nav-group:hover:not(.open) > .nav-submenu{
    max-height:0;
  }

  .nav-group:hover:not(.open) .nav-arrow{
    transform:rotate(45deg) translateY(-2px);
  }
}


/* ---------- HOME CATEGORY HUB v6.22 ---------- */
.home-category-section{
  padding-top:90px;
  padding-bottom:100px;
}

.home-category-heading{
  max-width:720px;
  margin-bottom:30px;
}

.home-category-heading h2{
  margin-top:12px;
  font-size:clamp(2rem,4vw,3.2rem);
}

.home-category-heading p{
  margin-top:12px;
  color:var(--muted);
  font-size:.92rem;
}

.home-category-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}

.home-category-card{
  min-height:300px;
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:26px 22px 20px;
  border:1px solid var(--line);
  background:
    linear-gradient(150deg,rgba(255,255,255,.018),transparent 46%),
    var(--panel);
  overflow:hidden;
}

.home-category-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 86% 12%,rgba(201,162,75,.08),transparent 26%);
  pointer-events:none;
}

.home-category-card-accent{
  border-color:rgba(201,162,75,.34);
  background:
    linear-gradient(155deg,rgba(201,162,75,.085),transparent 48%),
    var(--panel);
}

.home-category-no{
  position:absolute;
  top:14px;
  right:16px;
  color:rgba(255,255,255,.13);
  font-family:var(--display);
  font-size:2.6rem;
  line-height:1;
}

.home-category-label{
  display:block;
  color:var(--gold);
  font-size:.68rem;
  letter-spacing:.16em;
  margin-bottom:8px;
}

.home-category-card h3{
  font-size:1.5rem;
  color:var(--text);
}

.home-category-card p{
  margin-top:12px;
  max-width:260px;
  color:var(--muted);
  font-size:.84rem;
}

.home-category-links{
  position:relative;
  display:grid;
  gap:1px;
  margin:24px -22px -20px;
  border-top:1px solid var(--line);
  background:var(--line);
}

.home-category-links a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:45px;
  padding:0 18px;
  background:#0d1115;
  color:var(--muted);
  text-decoration:none;
  font-size:.8rem;
  transition:.16s ease;
}

.home-category-links a:hover,
.home-category-links a:focus-visible{
  color:var(--gold2);
  background:rgba(201,162,75,.055);
}

.home-category-links a span{
  color:var(--gold);
}

@media(max-width:980px){
  .home-category-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:520px){
  .home-category-section{
    padding-top:72px;
    padding-bottom:76px;
  }

  .home-category-grid{
    grid-template-columns:1fr;
  }

  .home-category-card{
    min-height:255px;
  }
}


/* ---------- HOME NEWS SUMMARY v6.23 ---------- */
.home-news-section{
  position:relative;
  z-index:5;
  margin-top:-54px;
  padding:0 0 54px;
}
.home-news-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:18px;
}
.home-news-head h2{
  margin-top:8px;
  font-size:clamp(1.85rem,3vw,2.7rem);
}
.home-news-more{
  color:var(--muted);
  text-decoration:none;
  font-size:.8rem;
  white-space:nowrap;
}
.home-news-more span{color:var(--gold);margin-left:5px}
.home-news-more:hover,
.home-news-more:focus-visible{color:var(--gold2)}
.home-news-grid{
  display:grid;
  grid-template-columns:1.2fr 1fr 1fr 1fr;
  gap:14px;
}
.home-news-card{
  min-height:238px;
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:22px;
  border:1px solid var(--line);
  background:linear-gradient(150deg,rgba(255,255,255,.025),transparent 52%),rgba(15,19,24,.96);
  text-decoration:none;
  overflow:hidden;
  transition:transform .18s ease,border-color .18s ease,background .18s ease;
}
a.home-news-card:hover,
a.home-news-card:focus-visible{
  transform:translateY(-3px);
  border-color:rgba(201,162,75,.38);
  background:linear-gradient(150deg,rgba(201,162,75,.055),transparent 52%),rgba(15,19,24,.98);
}
.home-news-card-featured{
  background:
    radial-gradient(circle at 92% 12%,rgba(201,162,75,.13),transparent 27%),
    linear-gradient(150deg,rgba(255,255,255,.03),transparent 52%),
    rgba(15,19,24,.98);
  border-color:rgba(201,162,75,.24);
}
.home-news-card-status{
  background:radial-gradient(circle at 90% 8%,rgba(121,138,109,.09),transparent 28%),rgba(13,17,21,.96);
}
.home-news-card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.home-news-type{
  color:var(--gold2);
  font-size:.74rem;
  font-weight:700;
  letter-spacing:.04em;
}
.home-news-state{
  padding:4px 7px;
  border:1px solid rgba(255,255,255,.08);
  color:var(--faint);
  font-size:.65rem;
  letter-spacing:.03em;
}
.home-news-card-body{margin:28px 0 22px}
.home-news-card-body h3{font-size:1.15rem;line-height:1.38}
.home-news-card-body p{
  margin-top:10px;
  color:var(--muted);
  font-size:.8rem;
  line-height:1.7;
}
.home-news-card-link{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding-top:13px;
  border-top:1px solid rgba(255,255,255,.06);
  color:var(--muted);
  font-size:.74rem;
}
.home-news-card-link span{color:var(--gold)}
.home-news-dev{
  padding-top:13px;
  border-top:1px solid rgba(255,255,255,.06);
  color:var(--faint);
  font-size:.68rem;
}
@media(max-width:980px){
  .home-news-section{margin-top:-34px}
  .home-news-grid{grid-template-columns:1fr 1fr}
  .home-news-card-featured{grid-column:1 / -1}
}
@media(max-width:620px){
  .home-news-section{margin-top:0;padding-top:28px}
  .home-news-head{align-items:flex-start;flex-direction:column;gap:10px}
  .home-news-grid{grid-template-columns:1fr}
  .home-news-card-featured{grid-column:auto}
  .home-news-card{min-height:220px}
}


/* ---------- GAME INTRO SHOWCASE v6.24 ---------- */
.game-intro-section{
  position:relative;
  overflow:hidden;
  padding-top:120px;
  padding-bottom:120px;
}

.game-intro-section::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 82% 18%,rgba(201,162,75,.09),transparent 27%),
    linear-gradient(180deg,rgba(255,255,255,.012),transparent 50%);
  pointer-events:none;
}

.game-intro-header{
  position:relative;
  z-index:1;
  max-width:790px;
  margin-bottom:42px;
}

.game-intro-overline{
  margin-top:14px;
  color:var(--faint);
  font-size:.72rem;
  letter-spacing:.17em;
}

.game-intro-header h2{
  margin-top:11px;
  font-size:clamp(2.8rem,6vw,5rem);
}

.game-intro-lead{
  max-width:690px;
  margin-top:18px;
  color:var(--muted);
  font-size:1rem;
  line-height:1.9;
}

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

.game-intro-layout{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:1.3fr .7fr;
  gap:18px;
}

.game-intro-visual{
  position:relative;
  min-height:520px;
  border:1px solid var(--line);
  overflow:hidden;
  background:#101419;
}

.game-intro-visual-art{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(7,9,11,.08),rgba(7,9,11,.16) 42%,rgba(7,9,11,.9)),
    radial-gradient(circle at 66% 26%,rgba(201,162,75,.2),transparent 22%),
    linear-gradient(145deg,#343c42 0%,#20262b 38%,#11161b 65%,#080b0e 100%);
}

.game-intro-visual-art::before{
  content:"";
  position:absolute;
  left:4%;
  right:4%;
  bottom:0;
  height:57%;
  opacity:.6;
  background:
    linear-gradient(166deg,transparent 0 42%,#12181d 42% 47%,transparent 47%),
    linear-gradient(194deg,transparent 0 46%,#0d1216 46% 52%,transparent 52%),
    linear-gradient(to top,#06080a 0 27%,transparent 27%);
  clip-path:polygon(0 76%,12% 64%,23% 70%,35% 49%,45% 62%,57% 36%,67% 57%,76% 46%,87% 59%,100% 44%,100% 100%,0 100%);
}

.game-intro-visual-copy{
  position:absolute;
  left:28px;
  right:28px;
  bottom:25px;
  z-index:2;
}

.game-intro-visual-copy span{
  color:var(--gold);
  font-size:.68rem;
  letter-spacing:.16em;
}

.game-intro-visual-copy strong{
  display:block;
  margin-top:5px;
  font-family:var(--display);
  font-size:1.55rem;
}

.game-intro-visual-copy p{
  max-width:480px;
  margin-top:8px;
  color:var(--muted);
  font-size:.76rem;
}

.game-intro-features{
  display:grid;
  gap:12px;
}

.game-intro-feature{
  position:relative;
  min-height:164px;
  display:grid;
  grid-template-columns:58px 1fr;
  gap:14px;
  align-items:start;
  padding:24px 22px;
  border:1px solid var(--line);
  background:linear-gradient(145deg,var(--panel),#101419);
}

.game-intro-feature::after{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:2px;
  background:linear-gradient(var(--gold),transparent);
}

.game-intro-feature-no{
  color:rgba(201,162,75,.42);
  font-family:var(--display);
  font-size:1.6rem;
  line-height:1;
}

.game-intro-feature h3{
  color:var(--gold2);
  font-size:1.05rem;
}

.game-intro-feature p{
  margin-top:9px;
  color:var(--muted);
  font-size:.82rem;
  line-height:1.75;
}

@media(max-width:980px){
  .game-intro-layout{
    grid-template-columns:1fr;
  }

  .game-intro-visual{
    min-height:430px;
  }

  .game-intro-features{
    grid-template-columns:repeat(3,1fr);
  }

  .game-intro-feature{
    grid-template-columns:1fr;
    min-height:220px;
  }
}

@media(max-width:700px){
  .game-intro-section{
    padding-top:86px;
    padding-bottom:86px;
  }

  .game-intro-features{
    grid-template-columns:1fr;
  }

  .game-intro-feature{
    min-height:0;
    grid-template-columns:50px 1fr;
  }

  .game-intro-visual{
    min-height:340px;
  }

  .game-intro-actions .btn{
    width:100%;
  }
}


/* ---------- WORLD SHOWCASE v6.25 ---------- */
.world-showcase{border-top:1px solid rgba(255,255,255,.045)}
.world-hero{
  min-height:720px;position:relative;display:flex;align-items:flex-end;
  overflow:hidden;background:#0b0e12;
}
.world-hero-art{
  position:absolute;inset:0;
  background:
    linear-gradient(180deg,rgba(5,7,9,.08),rgba(5,7,9,.18) 42%,rgba(5,7,9,.88)),
    radial-gradient(circle at 68% 24%,rgba(201,162,75,.16),transparent 24%),
    linear-gradient(150deg,#394149 0%,#22292f 33%,#151b20 58%,#080b0e 100%);
}
.world-hero-art::before{
  content:"";position:absolute;left:0;right:0;bottom:0;height:62%;opacity:.78;
  background:
    linear-gradient(166deg,transparent 0 42%,#151b20 42% 47%,transparent 47%),
    linear-gradient(194deg,transparent 0 45%,#10161b 45% 51%,transparent 51%),
    linear-gradient(to top,#07090b 0 29%,transparent 29%);
  clip-path:polygon(0 75%,8% 67%,17% 70%,28% 52%,36% 61%,47% 38%,57% 55%,66% 44%,76% 58%,88% 40%,100% 54%,100% 100%,0 100%);
}
.world-hero-overlay{
  position:absolute;inset:0;
  background:
    linear-gradient(90deg,rgba(5,7,9,.82) 0%,rgba(5,7,9,.42) 42%,rgba(5,7,9,.08) 72%),
    linear-gradient(180deg,rgba(5,7,9,.2),transparent 34%,rgba(5,7,9,.8) 94%);
}
.world-hero-inner{
  width:100%;position:relative;z-index:2;display:flex;align-items:end;
  justify-content:space-between;gap:40px;padding-top:140px;padding-bottom:60px;
}
.world-hero-copy{max-width:740px}
.world-overline{margin-top:14px;color:var(--faint);font-size:.7rem;letter-spacing:.17em}
.world-hero-copy h2{margin-top:10px;font-size:clamp(3rem,6vw,5.6rem)}
.world-lead{max-width:680px;margin-top:22px;color:#c2bbb0;font-size:1rem;line-height:1.95}
.world-hero-caption{
  width:250px;flex:0 0 250px;padding:16px 18px;border:1px solid rgba(255,255,255,.09);
  background:rgba(7,9,11,.48);backdrop-filter:blur(8px);
}
.world-hero-caption span{display:block;color:var(--gold);font-size:.63rem;letter-spacing:.15em}
.world-hero-caption strong{display:block;margin-top:5px;font-family:var(--display);font-size:1.05rem}
.world-hero-caption p{margin-top:7px;color:var(--muted);font-size:.69rem;line-height:1.6}
.world-content{
  padding:90px 0 110px;
  background:radial-gradient(circle at 18% 12%,rgba(201,162,75,.055),transparent 25%),#0b0e12;
}
.world-story-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:40px;align-items:start}
.world-story-label,
.world-region-type{color:var(--gold);font-size:.66rem;letter-spacing:.15em}
.world-story-main h3{margin-top:10px;font-size:clamp(1.9rem,3vw,2.8rem)}
.world-story-main p{max-width:760px;margin-top:18px;color:var(--muted);line-height:1.9;font-size:.92rem}
.world-story-quote{padding:26px;border-left:1px solid rgba(201,162,75,.38);background:rgba(255,255,255,.018)}
.world-story-quote span{color:var(--faint);font-size:.65rem;letter-spacing:.15em}
.world-story-quote blockquote{margin:14px 0 0;color:#cfc7bb;font-family:var(--display);font-size:1.13rem;line-height:1.8}
.world-region-heading{margin-top:90px;max-width:700px}
.world-region-heading h3{margin-top:10px;font-size:clamp(2rem,4vw,3rem)}
.world-region-heading p{margin-top:12px;color:var(--muted);font-size:.84rem}
.world-region-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}
.world-region-card{border:1px solid var(--line);background:var(--panel);overflow:hidden}
.world-region-art{min-height:230px;position:relative;background:#141a1f}
.world-region-art::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(7,9,11,.82))}
.world-region-art-cave{
  background:radial-gradient(circle at 52% 40%,rgba(201,162,75,.13),transparent 17%),linear-gradient(145deg,#252a2e,#11161a 56%,#07090b);
}
.world-region-art-valley{
  background:radial-gradient(circle at 66% 24%,rgba(201,162,75,.19),transparent 20%),linear-gradient(145deg,#41484b,#273036 42%,#10161a 72%,#07090b);
}
.world-region-art-ruin{
  background:radial-gradient(circle at 28% 30%,rgba(166,67,46,.11),transparent 18%),linear-gradient(145deg,#313435,#202427 45%,#0f1316 72%,#07090b);
}
.world-region-body{display:grid;grid-template-columns:48px 1fr;gap:14px;padding:21px 20px 23px}
.world-region-index{color:rgba(201,162,75,.42);font-family:var(--display);font-size:1.45rem;line-height:1}
.world-region-body h4{margin:5px 0 0;font-family:var(--display);font-size:1.15rem}
.world-region-body p{margin-top:9px;color:var(--muted);font-size:.78rem;line-height:1.7}
.world-dev-note{margin-top:18px;color:var(--faint);font-size:.68rem}
@media(max-width:980px){
  .world-hero{min-height:640px}
  .world-hero-inner{display:block}
  .world-hero-caption{margin-top:28px}
  .world-story-grid{grid-template-columns:1fr}
  .world-region-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .world-hero{min-height:590px}
  .world-hero-inner{padding-top:120px;padding-bottom:42px}
  .world-hero-caption{width:100%}
  .world-content{padding:70px 0 80px}
  .world-region-heading{margin-top:68px}
  .world-region-grid{grid-template-columns:1fr}
  .world-region-art{min-height:210px}
}


/* ---------- DOWNLOAD SHOWCASE v6.26 ---------- */
.download-showcase{border-top:1px solid rgba(255,255,255,.045)}


.download-info-label{
  color:var(--gold);
  font-size:.64rem;
  letter-spacing:.16em;
}



.download-content{
  padding:86px 0 105px;
  background:
    radial-gradient(circle at 82% 8%,rgba(201,162,75,.05),transparent 24%),
    #0b0e12;
}
.download-info-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}
.download-info-card{
  min-height:285px;
  position:relative;
  padding:26px 22px;
  border:1px solid var(--line);
  background:linear-gradient(145deg,var(--panel),#101419);
}
.download-info-index{
  position:absolute;
  top:18px;
  right:18px;
  color:rgba(255,255,255,.12);
  font-family:var(--display);
  font-size:2.2rem;
}
.download-info-card h3{
  margin-top:10px;
  font-size:1.35rem;
}
.download-info-card > p{
  margin-top:18px;
  color:var(--muted);
  font-size:.82rem;
  line-height:1.75;
}
.download-info-list{
  margin:20px 0 0;
}
.download-info-list div{
  padding:12px 0;
  border-top:1px solid rgba(255,255,255,.06);
}
.download-info-list dt{
  color:var(--text);
  font-size:.8rem;
}
.download-info-list dd{
  margin:4px 0 0;
  color:var(--muted);
  font-size:.73rem;
}
.download-info-state{
  display:inline-block;
  margin-top:20px;
  padding:5px 8px;
  border:1px solid rgba(255,255,255,.08);
  color:var(--faint);
  font-size:.66rem;
}
.download-guide{
  margin-top:74px;
}
.download-guide-heading{
  max-width:680px;
}
.download-guide-heading h3{
  margin-top:10px;
  font-size:clamp(2rem,4vw,3rem);
}
.download-guide-heading p{
  margin-top:10px;
  color:var(--muted);
  font-size:.82rem;
}
.download-steps{
  list-style:none;
  margin:28px 0 0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border:1px solid var(--line);
  background:var(--line);
  gap:1px;
}
.download-steps li{
  min-height:190px;
  padding:22px 20px;
  background:#0d1115;
}
.download-step-no{
  color:rgba(201,162,75,.43);
  font-family:var(--display);
  font-size:1.35rem;
}
.download-steps strong{
  display:block;
  margin-top:22px;
  color:var(--gold2);
  font-family:var(--display);
  font-size:1rem;
}
.download-steps p{
  margin-top:9px;
  color:var(--muted);
  font-size:.74rem;
  line-height:1.65;
}
.download-notice{
  display:flex;
  gap:20px;
  align-items:flex-start;
  margin-top:22px;
  padding:17px 18px;
  border-left:2px solid rgba(201,162,75,.42);
  background:rgba(255,255,255,.018);
}
.download-notice strong{
  color:var(--gold2);
  font-size:.78rem;
  white-space:nowrap;
}
.download-notice p{
  color:var(--muted);
  font-size:.74rem;
  line-height:1.65;
}
@media(max-width:980px){


  .download-info-grid{grid-template-columns:1fr 1fr}
  .download-steps{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){


  .download-content{padding:68px 0 80px}
  .download-info-grid{grid-template-columns:1fr}
  .download-steps{grid-template-columns:1fr}
  .download-steps li{min-height:0}
  .download-notice{display:block}
  .download-notice p{margin-top:8px}
}


@media(max-width:1180px){
  .home-news-grid{
    grid-template-columns:1fr 1fr;
  }

  .home-news-card-featured{
    grid-column:auto;
  }
}


/* ---------- ADVENTURER / RANKING SHOWCASE v6.29 ---------- */
.adventurer-showcase{
  border-top:1px solid rgba(255,255,255,.045);
}


.adventurer-summary-label{
  color:var(--gold);
  font-size:.64rem;
  letter-spacing:.16em;
}



.adventurer-content{
  padding:86px 0 110px;
  background:
    radial-gradient(circle at 18% 10%,rgba(201,162,75,.05),transparent 24%),
    #0b0e12;
}

.adventurer-summary-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}

.adventurer-summary-card{
  min-height:245px;
  position:relative;
  padding:26px 22px;
  border:1px solid var(--line);
  background:linear-gradient(145deg,var(--panel),#101419);
}

.adventurer-summary-index{
  position:absolute;
  top:18px;
  right:18px;
  color:rgba(255,255,255,.12);
  font-family:var(--display);
  font-size:2.2rem;
}

.adventurer-summary-card h3{
  margin-top:10px;
  font-size:1.32rem;
}

.adventurer-summary-card p{
  margin-top:17px;
  color:var(--muted);
  font-size:.81rem;
  line-height:1.75;
}

.adventurer-ranking-panel{
  margin-top:72px;
}

.adventurer-ranking-head{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:24px;
  margin-bottom:20px;
}

.adventurer-ranking-head h3{
  margin-top:10px;
  font-size:clamp(2rem,4vw,3rem);
}

.adventurer-ranking-head p{
  margin-top:9px;
  color:var(--muted);
  font-size:.8rem;
}

.adventurer-ranking-state{
  padding:6px 9px;
  border:1px solid rgba(255,255,255,.08);
  color:var(--faint);
  font-size:.64rem;
  letter-spacing:.1em;
  white-space:nowrap;
}

.adventurer-ranking-table{
  border:1px solid var(--line);
  background:#0d1115;
}

.adventurer-ranking-row{
  display:grid;
  grid-template-columns:90px 1fr 180px 140px;
}

.adventurer-ranking-header{
  border-bottom:1px solid var(--line);
  background:rgba(255,255,255,.018);
}

.adventurer-ranking-header span{
  padding:13px 16px;
  color:var(--faint);
  font-size:.68rem;
  letter-spacing:.05em;
}

.adventurer-ranking-empty{
  min-height:300px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:38px 24px;
}

.adventurer-ranking-empty-mark{
  width:60px;
  height:60px;
  display:grid;
  place-items:center;
  border:1px solid rgba(201,162,75,.34);
  color:var(--gold2);
  font-family:var(--display);
  font-size:1.6rem;
}

.adventurer-ranking-empty strong{
  margin-top:18px;
  font-family:var(--display);
  font-size:1.18rem;
}

.adventurer-ranking-empty p{
  max-width:560px;
  margin-top:10px;
  color:var(--muted);
  font-size:.78rem;
  line-height:1.7;
}

.adventurer-dev-note{
  margin-top:14px;
  color:var(--faint);
  font-size:.68rem;
  line-height:1.65;
}

@media(max-width:980px){


  .adventurer-summary-grid{grid-template-columns:1fr 1fr}
  .adventurer-ranking-row{grid-template-columns:70px 1fr 130px 100px}
}

@media(max-width:700px){
  .adventurer-summary-grid{grid-template-columns:1fr}
  .adventurer-ranking-header{display:none}
  .adventurer-ranking-empty{min-height:260px}
}

@media(max-width:620px){


  .adventurer-content{padding:68px 0 80px}
  .adventurer-ranking-head{align-items:flex-start;flex-direction:column}
}


/* ---------- NEWS BOARDS v6.33 ---------- */
#notices,
#updates,
#developer-notes{
  scroll-margin-top:72px;
}

.news-board-section{
  background:#0b0e12;
}

.news-board-section + .news-board-section{
  border-top:1px solid rgba(255,255,255,.045);
}

.news-board-header{
  min-height:310px;
  display:flex;
  align-items:flex-end;
  background:
    radial-gradient(circle at 78% 26%,rgba(201,162,75,.075),transparent 24%),
    linear-gradient(145deg,#171d22,#0d1115 65%,#090b0e);
}

.news-board-header .wrap{
  width:100%;
  padding-top:120px;
  padding-bottom:46px;
}

.news-board-header .kicker{
  margin-top:20px;
}

.news-board-header h2{
  margin-top:10px;
  font-size:clamp(2.35rem,4.5vw,4rem);
}

.news-board-header p{
  max-width:700px;
  margin-top:12px;
  color:var(--muted);
  font-size:.86rem;
  line-height:1.75;
}

.news-board-content{
  padding:58px 0 92px;
}

.news-board-toolbar{
  min-height:52px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-bottom:14px;
}

.news-board-toolbar > div{
  display:flex;
  align-items:baseline;
  gap:12px;
  flex-wrap:wrap;
}

.news-board-toolbar strong{
  font-family:var(--display);
  font-size:1.12rem;
}

.news-board-toolbar > div span{
  color:var(--faint);
  font-size:.7rem;
}

.news-board-data-state{
  padding:5px 8px;
  border:1px solid rgba(255,255,255,.08);
  color:var(--faint);
  font-size:.62rem;
  letter-spacing:.1em;
  white-space:nowrap;
}

.news-board-data-state-live{
  border-color:rgba(201,162,75,.24);
  color:var(--gold2);
}

.news-board{
  border:1px solid var(--line);
  background:#0d1115;
}

.news-board-row{
  display:grid;
  grid-template-columns:120px 1fr 150px;
}

.news-board-row-head{
  border-bottom:1px solid var(--line);
  background:rgba(255,255,255,.018);
}

.news-board-row-head span{
  padding:13px 16px;
  color:var(--faint);
  font-size:.68rem;
}

.news-board-empty{
  min-height:260px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:34px 24px;
  text-align:center;
}

.news-board-empty-mark{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border:1px solid rgba(201,162,75,.28);
  color:var(--gold2);
  font-family:var(--display);
  font-size:1.35rem;
}

.news-board-empty strong{
  margin-top:16px;
  font-family:var(--display);
  font-size:1.08rem;
}

.news-board-empty p{
  margin-top:8px;
  color:var(--muted);
  font-size:.76rem;
  line-height:1.7;
}

.news-board-dev{
  margin-top:12px;
  color:var(--faint);
  font-size:.67rem;
  line-height:1.65;
}

.developer-notes-section{
  background:
    radial-gradient(circle at 82% 12%,rgba(201,162,75,.045),transparent 24%),
    #0b0e12;
}

.developer-note-list{
  border:1px solid var(--line);
  background:#0d1115;
}

.developer-note-entry{
  border-bottom:1px solid rgba(255,255,255,.05);
}

.developer-note-entry:last-child{
  border-bottom:0;
}

.developer-note-entry summary{
  display:grid;
  grid-template-columns:110px 1fr 90px;
  gap:16px;
  align-items:center;
  min-height:70px;
  padding:0 18px;
  cursor:pointer;
  list-style:none;
}

.developer-note-entry summary::-webkit-details-marker{
  display:none;
}

.developer-note-entry summary:hover,
.developer-note-entry summary:focus-visible{
  background:rgba(201,162,75,.04);
}

.developer-note-entry-type{
  color:var(--gold);
  font-size:.7rem;
}

.developer-note-entry summary strong{
  font-size:.86rem;
}

.developer-note-entry-state{
  justify-self:end;
  color:var(--faint);
  font-size:.66rem;
}

.developer-note-entry-body{
  padding:0 18px 24px 144px;
  border-top:1px solid rgba(255,255,255,.045);
}

.developer-note-entry-body p{
  max-width:820px;
  padding-top:18px;
  color:var(--muted);
  font-size:.82rem;
  line-height:1.85;
}

@media(max-width:700px){
  .news-board-row-head{
    display:none;
  }

  .developer-note-entry summary{
    grid-template-columns:1fr auto;
    gap:8px 14px;
    padding:16px 18px;
  }

  .developer-note-entry-type{
    grid-column:1;
  }

  .developer-note-entry summary strong{
    grid-column:1 / -1;
    grid-row:2;
  }

  .developer-note-entry-state{
    grid-column:2;
    grid-row:1;
  }

  .developer-note-entry-body{
    padding:0 18px 22px;
  }
}

@media(max-width:520px){
  .news-board-header{
    min-height:280px;
  }

  .news-board-header .wrap{
    padding-top:106px;
    padding-bottom:38px;
  }

  .news-board-content{
    padding:46px 0 70px;
  }

  .news-board-toolbar{
    align-items:flex-start;
    flex-direction:column;
    gap:10px;
  }
}


/* ---------- PAGE FLOW POLISH v6.34 ---------- */
#game-features,
#notices,
#updates,
#developer-notes,
#world,
#ranking,
#download{
  scroll-margin-top:72px;
}

.page-block{
  position:relative;
}

.page-block + .page-block{
  border-top:1px solid rgba(255,255,255,.045);
}

.home-category-section{
  border-bottom:1px solid rgba(255,255,255,.045);
}


/* ---------- COMBAT CONTRAST v6.35 ---------- */
.game-intro-feature-contrast{
  background:
    linear-gradient(145deg,rgba(166,67,46,.055),transparent 56%),
    linear-gradient(145deg,var(--panel),#101419);
}

.game-intro-feature-contrast::after{
  background:linear-gradient(#a6432e,transparent);
}

.game-intro-feature-tag{
  display:inline-block;
  margin-bottom:7px;
  color:#b97868;
  font-size:.61rem;
  letter-spacing:.14em;
}


/* ---------- MEDIA SHOWCASE v6.36 ---------- */
#media{
  scroll-margin-top:72px;
}

.media-showcase-section{
  position:relative;
  overflow:hidden;
  padding-top:100px;
  padding-bottom:105px;
  background:
    radial-gradient(circle at 82% 10%,rgba(201,162,75,.055),transparent 24%),
    #0b0e12;
}

.media-showcase-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:30px;
  margin-bottom:28px;
}

.media-showcase-head > div{
  max-width:720px;
}

.media-showcase-overline{
  margin-top:13px;
  color:var(--faint);
  font-size:.67rem;
  letter-spacing:.16em;
}

.media-showcase-head h2{
  margin-top:9px;
  font-size:clamp(2.2rem,4.5vw,3.8rem);
}

.media-showcase-head p:last-child{
  margin-top:13px;
  color:var(--muted);
  font-size:.84rem;
  line-height:1.75;
}

.media-showcase-state{
  padding:6px 9px;
  border:1px solid rgba(255,255,255,.08);
  color:var(--faint);
  font-size:.62rem;
  letter-spacing:.11em;
  white-space:nowrap;
}

.media-showcase-layout{
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:14px;
}

.media-feature{
  min-height:590px;
  position:relative;
  border:1px solid var(--line);
  overflow:hidden;
  background:#11161a;
}

.media-feature-art{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(5,7,9,.08),rgba(5,7,9,.14) 48%,rgba(5,7,9,.9)),
    radial-gradient(circle at 68% 24%,rgba(201,162,75,.18),transparent 24%),
    linear-gradient(145deg,#364049,#222a30 42%,#12181d 70%,#080b0e);
}

.media-feature-art::before{
  content:"";
  position:absolute;
  left:3%;
  right:3%;
  bottom:0;
  height:57%;
  opacity:.6;
  background:
    linear-gradient(164deg,transparent 0 43%,#151b20 43% 48%,transparent 48%),
    linear-gradient(196deg,transparent 0 48%,#10161b 48% 53%,transparent 53%),
    linear-gradient(to top,#07090b 0 28%,transparent 28%);
  clip-path:polygon(0 76%,11% 64%,24% 72%,36% 50%,47% 63%,59% 38%,70% 57%,80% 46%,90% 61%,100% 49%,100% 100%,0 100%);
}

.media-feature-status{
  position:absolute;
  top:18px;
  left:18px;
  z-index:2;
  padding:10px 12px;
  border:1px solid rgba(255,255,255,.09);
  background:rgba(7,9,11,.48);
  backdrop-filter:blur(7px);
}

.media-feature-status span{
  display:block;
  color:var(--gold);
  font-size:.57rem;
  letter-spacing:.13em;
}

.media-feature-status strong{
  display:block;
  margin-top:4px;
  font-size:.72rem;
}

.media-feature-copy{
  position:absolute;
  left:26px;
  right:26px;
  bottom:24px;
  z-index:2;
}

.media-type,
.media-gallery-copy > span{
  color:var(--gold);
  font-size:.62rem;
  letter-spacing:.14em;
}

.media-feature-copy h3{
  margin-top:7px;
  font-size:1.65rem;
}

.media-feature-copy p{
  max-width:520px;
  margin-top:9px;
  color:var(--muted);
  font-size:.76rem;
  line-height:1.7;
}

.media-gallery{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.media-gallery-card{
  min-height:286px;
  position:relative;
  border:1px solid var(--line);
  overflow:hidden;
  background:#101419;
}

.media-gallery-art{
  position:absolute;
  inset:0;
}

.media-gallery-art::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 32%,rgba(7,9,11,.9));
}

.media-gallery-art-valley{
  background:
    radial-gradient(circle at 66% 24%,rgba(201,162,75,.17),transparent 20%),
    linear-gradient(145deg,#41484b,#273036 42%,#10161a 72%,#07090b);
}

.media-gallery-art-ruins{
  background:
    radial-gradient(circle at 28% 30%,rgba(166,67,46,.12),transparent 18%),
    linear-gradient(145deg,#313435,#202427 45%,#0f1316 72%,#07090b);
}

.media-gallery-art-combat{
  background:
    radial-gradient(circle at 50% 45%,rgba(166,67,46,.17),transparent 20%),
    linear-gradient(145deg,#3a2b28,#221b1b 48%,#100e0f 74%,#07090b);
}

.media-gallery-copy{
  position:absolute;
  left:18px;
  right:18px;
  bottom:17px;
  z-index:2;
}

.media-gallery-copy h3{
  margin-top:5px;
  font-size:1rem;
}

.media-gallery-copy p{
  margin-top:6px;
  color:var(--muted);
  font-size:.68rem;
  line-height:1.55;
}

.media-gallery-card-empty{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:20px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.018),transparent 58%),
    #0d1115;
}

.media-gallery-card-empty .media-gallery-copy{
  position:static;
  margin-top:16px;
}

.media-gallery-empty-mark{
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border:1px solid rgba(201,162,75,.28);
  color:var(--gold2);
  font-size:1.2rem;
}

.media-dev-note{
  margin-top:14px;
  color:var(--faint);
  font-size:.67rem;
}

@media(max-width:980px){
  .media-showcase-layout{
    grid-template-columns:1fr;
  }

  .media-feature{
    min-height:480px;
  }

  .media-gallery-card{
    min-height:250px;
  }
}

@media(max-width:620px){
  .media-showcase-section{
    padding-top:78px;
    padding-bottom:82px;
  }

  .media-showcase-head{
    align-items:flex-start;
    flex-direction:column;
    gap:12px;
  }

  .media-feature{
    min-height:390px;
  }

  .media-gallery{
    grid-template-columns:1fr;
  }

  .media-gallery-card{
    min-height:230px;
  }
}


/* ---------- COMMUNITY / FREE BOARD v6.37 ---------- */
#free-board{scroll-margin-top:72px}
.community-board-section{
  border-top:1px solid rgba(255,255,255,.045);
  background:#0b0e12;
}


.community-board-content{padding:58px 0 94px}
.community-board-toolbar{
  min-height:54px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-bottom:14px;
}
.community-board-toolbar > div{
  display:flex;
  align-items:baseline;
  gap:12px;
  flex-wrap:wrap;
}
.community-board-toolbar strong{
  font-family:var(--display);
  font-size:1.12rem;
}
.community-board-toolbar span{
  color:var(--faint);
  font-size:.7rem;
}
.community-write-button{
  padding:9px 14px;
  border:1px solid rgba(255,255,255,.1);
  background:#101419;
  color:var(--faint);
  font-size:.72rem;
  cursor:not-allowed;
}
.community-board-table{
  border:1px solid var(--line);
  background:#0d1115;
}
.community-board-row{
  display:grid;
  grid-template-columns:90px 1fr 150px 150px;
}
.community-board-head{
  border-bottom:1px solid var(--line);
  background:rgba(255,255,255,.018);
}
.community-board-head span{
  padding:13px 16px;
  color:var(--faint);
  font-size:.68rem;
}
.community-board-empty{
  min-height:280px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:36px 24px;
  text-align:center;
}
.community-board-empty-mark{
  width:56px;
  height:56px;
  display:grid;
  place-items:center;
  border:1px solid rgba(201,162,75,.3);
  color:var(--gold2);
  font-family:var(--display);
  font-size:1.35rem;
}
.community-board-empty strong{
  margin-top:17px;
  font-family:var(--display);
  font-size:1.08rem;
}
.community-board-empty p{
  max-width:560px;
  margin-top:9px;
  color:var(--muted);
  font-size:.76rem;
  line-height:1.7;
}



.community-board-dev{
  margin-top:12px;
  color:var(--faint);
  font-size:.67rem;
  line-height:1.65;
}
@media(max-width:920px){
  .nav ul{gap:20px}
}
@media(max-width:700px){
  .community-board-head{display:none}
  .community-board-toolbar{
    align-items:flex-start;
    flex-direction:column;
    gap:10px;
  }
}
@media(max-width:520px){


  .community-board-content{padding:46px 0 70px}


}


/* ---------- HOME GAME PREVIEW v7.3 ---------- */
#game-preview{scroll-margin-top:72px}

.home-game-preview{
  padding-top:96px;
  padding-bottom:98px;
  background:
    radial-gradient(circle at 82% 12%,rgba(201,162,75,.045),transparent 24%),
    #0b0e12;
}

.home-game-preview-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:32px;
  margin-bottom:28px;
}

.home-game-preview-head > div{max-width:760px}

.home-game-preview-overline{
  margin-top:12px;
  color:var(--faint);
  font-size:.65rem;
  letter-spacing:.15em;
}

.home-game-preview-head h2{
  margin-top:10px;
  font-size:clamp(2.15rem,4.4vw,3.7rem);
  line-height:1.1;
}

.home-game-preview-head p:last-child{
  margin-top:14px;
  color:var(--muted);
  font-size:.83rem;
  line-height:1.78;
}

.home-game-preview-head .btn{flex:0 0 auto}

.home-game-preview-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
}

.home-game-preview-card{
  min-height:205px;
  display:flex;
  gap:18px;
  padding:24px 22px;
  border:1px solid var(--line);
  background:
    linear-gradient(145deg,rgba(255,255,255,.018),transparent 58%),
    #0f1317;
}

.home-game-preview-no{
  color:rgba(201,162,75,.46);
  font-family:var(--display);
  font-size:1rem;
}

.home-game-preview-label{
  color:var(--gold);
  font-size:.59rem;
  letter-spacing:.14em;
}

.home-game-preview-card h3{
  margin-top:8px;
  font-size:1rem;
}

.home-game-preview-card p{
  margin-top:9px;
  color:var(--muted);
  font-size:.72rem;
  line-height:1.7;
}

.home-game-preview-media{
  display:grid;
  grid-template-columns:1fr 245px;
  min-height:260px;
  margin-top:14px;
  border:1px solid var(--line);
  background:#0e1216;
}

.home-game-preview-visual{
  position:relative;
  overflow:hidden;
}

.home-game-preview-art{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(7,9,11,.18),rgba(7,9,11,.05) 56%,rgba(7,9,11,.6)),
    radial-gradient(circle at 72% 28%,rgba(201,162,75,.15),transparent 22%),
    linear-gradient(145deg,#364048,#222a30 46%,#11171b 72%,#090b0e);
}

.home-game-preview-art::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:54%;
  opacity:.55;
  background:linear-gradient(to top,#07090b 0 30%,transparent 30%);
  clip-path:polygon(0 78%,12% 62%,25% 70%,36% 48%,49% 64%,61% 40%,73% 58%,85% 45%,100% 60%,100% 100%,0 100%);
}

.home-game-preview-visual-copy{
  position:absolute;
  left:24px;
  bottom:22px;
  z-index:2;
}

.home-game-preview-visual-copy span{
  color:var(--gold);
  font-size:.6rem;
  letter-spacing:.14em;
}

.home-game-preview-visual-copy strong{
  display:block;
  margin-top:7px;
  font-size:1.05rem;
}

.home-game-preview-visual-copy p{
  max-width:560px;
  margin-top:8px;
  color:var(--muted);
  font-size:.7rem;
  line-height:1.6;
}

.home-game-preview-media-link{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:7px;
  padding:24px;
  border-left:1px solid var(--line);
  background:
    linear-gradient(145deg,rgba(201,162,75,.045),transparent 62%),
    #0d1115;
}

.home-game-preview-media-link > span:first-child{
  color:var(--gold);
  font-size:.6rem;
  letter-spacing:.14em;
}

.home-game-preview-media-link strong{font-size:.92rem}

.home-game-preview-media-link > span:last-child{
  margin-top:4px;
  color:var(--gold2);
}

@media(max-width:980px){
  .home-game-preview-head{
    align-items:flex-start;
    flex-direction:column;
  }

  .home-game-preview-grid{grid-template-columns:1fr}
  .home-game-preview-card{min-height:0}
  .home-game-preview-media{grid-template-columns:1fr}
  .home-game-preview-visual{min-height:270px}

  .home-game-preview-media-link{
    border-left:0;
    border-top:1px solid var(--line);
  }
}

@media(max-width:620px){
  .home-game-preview{
    padding-top:76px;
    padding-bottom:80px;
  }

  .home-game-preview-head .btn{
    width:100%;
    text-align:center;
  }

  .home-game-preview-card{padding:20px 18px}
  .home-game-preview-visual{min-height:240px}
}


/* ---------- HOME CATEGORY SYNC v7.4 ---------- */
.home-category-grid-five{
  grid-template-columns:repeat(6,1fr);
}

.home-category-grid-five .home-category-card{
  grid-column:span 2;
}

.home-category-grid-five .home-category-card:nth-child(4){
  grid-column:2 / span 2;
}

.home-category-grid-five .home-category-card:nth-child(5){
  grid-column:4 / span 2;
}

.home-category-card-community{
  background:
    linear-gradient(145deg,rgba(201,162,75,.028),transparent 58%),
    #0f1317;
}

@media(max-width:1180px){
  .home-category-grid-five{
    grid-template-columns:1fr 1fr;
  }

  .home-category-grid-five .home-category-card,
.home-category-grid-five .home-category-card:nth-child(4),
.home-category-grid-five .home-category-card:nth-child(5){
    grid-column:auto;
  }

  .home-category-grid-five .home-category-card:last-child{
    grid-column:1 / -1;
  }
}

@media(max-width:700px){
  .home-category-grid-five{
    grid-template-columns:1fr;
  }

  .home-category-grid-five .home-category-card:last-child{
    grid-column:auto;
  }
}


/* ---------- GLOBAL SHELL v7.5 ---------- */
.nav-direct .nav-main-link.active{
  color:var(--gold2);
}

.site-footer{
  border-top:1px solid rgba(255,255,255,.055);
  background:#080a0d;
}

.site-footer-top{
  display:grid;
  grid-template-columns:minmax(220px,.85fr) 2fr;
  gap:70px;
  padding:58px 0 46px;
}

.site-footer-brand{
  display:inline-block;
  color:var(--text);
  font-family:var(--display);
  font-size:1.35rem;
  letter-spacing:.04em;
}

.site-footer-brand-block p{
  max-width:360px;
  margin-top:12px;
  color:var(--faint);
  font-size:.72rem;
  line-height:1.7;
}

.site-footer-nav{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:28px;
}

.site-footer-nav-group{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:9px;
}

.site-footer-nav-group strong{
  margin-bottom:3px;
  color:var(--text);
  font-size:.73rem;
}

.site-footer-nav-group a{
  color:var(--faint);
  font-size:.69rem;
  transition:color .18s ease;
}

.site-footer-nav-group a:hover,
.site-footer-nav-group a:focus-visible{
  color:var(--gold2);
}

.site-footer-nav-group a[aria-disabled="true"]{
  cursor:default;
  opacity:.62;
}

.site-footer-nav-group a[aria-disabled="true"]:hover{
  color:var(--faint);
}

.site-footer-bottom{
  min-height:58px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  border-top:1px solid rgba(255,255,255,.045);
  color:var(--faint);
  font-size:.64rem;
}

.site-footer-bottom a{
  color:var(--faint);
}

.site-footer-bottom a:not([aria-disabled="true"]):hover{
  color:var(--gold2);
}

@media(max-width:980px){
  .site-footer-top{
    grid-template-columns:1fr;
    gap:38px;
  }

  .site-footer-nav{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:560px){
  .site-footer-top{
    padding:46px 0 36px;
  }

  .site-footer-nav{
    grid-template-columns:1fr 1fr;
    gap:28px 18px;
  }

  .site-footer-bottom{
    align-items:flex-start;
    flex-direction:column;
    justify-content:center;
    gap:7px;
    padding:16px 0;
  }
}


/* ---------- TOP DISCORD LINK v7.6 ---------- */
.nav-discord-link{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 12px;
  border:1px solid rgba(88,101,242,.38);
  background:rgba(88,101,242,.08);
  color:#aeb5ff;
  font-size:.68rem;
  letter-spacing:.02em;
  transition:
    border-color .18s ease,
    background .18s ease,
    color .18s ease;
}

.nav-discord-link:not([aria-disabled="true"]):hover,
.nav-discord-link:not([aria-disabled="true"]):focus-visible{
  border-color:rgba(88,101,242,.72);
  background:rgba(88,101,242,.16);
  color:#d3d7ff;
}

.nav-discord-link[aria-disabled="true"]{
  border-color:rgba(255,255,255,.08);
  background:rgba(255,255,255,.025);
  color:var(--faint);
  cursor:default;
  opacity:.72;
}

@media(max-width:1180px){
  .nav-discord-link{
    min-height:32px;
    padding:0 10px;
    font-size:.64rem;
  }
}

@media(max-width:820px){
  .nav-discord-link{
    margin-left:auto;
  }
}


/* ---------- NEWS PAGE POLISH v7.7 ---------- */
#news-top{
  scroll-margin-top:72px;
}

.subpage-hero{
  position:relative;
  min-height:420px;
  display:flex;
  align-items:flex-end;
  overflow:hidden;
  border-bottom:1px solid rgba(255,255,255,.05);
  background:#0b0e12;
}

.subpage-hero-art{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(5,7,9,.9),rgba(5,7,9,.58) 48%,rgba(5,7,9,.2)),
    linear-gradient(180deg,rgba(5,7,9,.05),rgba(5,7,9,.82)),
    radial-gradient(circle at 76% 24%,rgba(201,162,75,.12),transparent 24%),
    linear-gradient(145deg,#273036,#161d22 48%,#0b0f13 76%,#07090b);
}

.news-page-hero .subpage-hero-art::after{
  content:"";
  position:absolute;
  right:8%;
  bottom:-10%;
  width:min(38vw,500px);
  height:82%;
  opacity:.22;
  background:
    linear-gradient(90deg,transparent 47%,rgba(255,255,255,.15) 47% 53%,transparent 53%),
    linear-gradient(180deg,transparent 18%,rgba(255,255,255,.08) 18% 23%,transparent 23%);
  clip-path:polygon(25% 0,75% 0,100% 100%,0 100%);
}

.subpage-hero-inner{
  width:100%;
  position:relative;
  z-index:2;
  padding-top:138px;
  padding-bottom:40px;
}

.subpage-hero-copy{
  max-width:760px;
}

.subpage-hero-overline{
  margin-top:12px;
  color:var(--faint);
  font-size:.65rem;
  letter-spacing:.16em;
}

.subpage-hero h1{
  margin-top:10px;
  font-size:clamp(3rem,6vw,5.7rem);
  line-height:.98;
}

.subpage-hero-copy > p:last-child{
  max-width:640px;
  margin-top:16px;
  color:var(--muted);
  font-size:.88rem;
  line-height:1.78;
}

.subpage-tabs{
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:34px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.07);
}

.subpage-tabs a{
  min-width:118px;
  padding:10px 15px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.018);
  color:var(--muted);
  font-size:.72rem;
  text-align:center;
  transition:
    border-color .18s ease,
    background .18s ease,
    color .18s ease;
}

.subpage-tabs a:hover,
.subpage-tabs a:focus-visible{
  border-color:rgba(201,162,75,.4);
  background:rgba(201,162,75,.05);
  color:var(--gold2);
}

.news-page-hero + .news-board-section .news-board-header{
  min-height:270px;
}

.news-section-return{
  border-top:1px solid rgba(255,255,255,.04);
}

.news-section-return .wrap{
  display:flex;
  justify-content:flex-end;
  padding-top:15px;
  padding-bottom:15px;
}

.news-section-return a{
  color:var(--faint);
  font-size:.66rem;
}

.news-section-return a:hover,
.news-section-return a:focus-visible{
  color:var(--gold2);
}

@media(max-width:700px){
  .subpage-hero{
    min-height:390px;
  }

  .subpage-hero-inner{
    padding-top:120px;
    padding-bottom:32px;
  }

  .subpage-tabs{
    display:grid;
    grid-template-columns:1fr;
  }

  .subpage-tabs a{
    width:100%;
  }
}

.subpage-tabs a.active{
  border-color:rgba(201,162,75,.48);
  background:rgba(201,162,75,.07);
  color:var(--gold2);
}


/* ---------- GAME PAGE POLISH v7.8 ---------- */
#game-top{
  scroll-margin-top:72px;
}

.game-page-hero .subpage-hero-art{
  background:
    linear-gradient(90deg,rgba(5,7,9,.92),rgba(5,7,9,.56) 50%,rgba(5,7,9,.15)),
    linear-gradient(180deg,rgba(5,7,9,.04),rgba(5,7,9,.84)),
    radial-gradient(circle at 73% 23%,rgba(201,162,75,.14),transparent 23%),
    radial-gradient(circle at 83% 62%,rgba(166,67,46,.10),transparent 18%),
    linear-gradient(145deg,#343e45,#20282e 43%,#11171b 71%,#07090b);
}

.game-page-hero .subpage-hero-art::after{
  content:"";
  position:absolute;
  right:9%;
  bottom:-8%;
  width:min(38vw,520px);
  height:84%;
  opacity:.28;
  background:
    radial-gradient(circle at 50% 16%,#4a4f51 0 9%,transparent 9%),
    linear-gradient(90deg,transparent 34%,#262c30 34% 66%,transparent 66%);
  clip-path:polygon(42% 0,58% 0,64% 13%,72% 27%,77% 100%,23% 100%,28% 27%,36% 13%);
}

.game-page-tabs a.active{
  border-color:rgba(201,162,75,.48);
  background:rgba(201,162,75,.07);
  color:var(--gold2);
}

.detail-section-label-wrap{
  position:relative;
  z-index:3;
  padding-top:22px;
}

.detail-section-label-overlay{
  position:absolute;
  top:0;
  left:0;
  right:0;
}

.detail-section-label{
  color:var(--gold);
  font-size:.61rem;
  letter-spacing:.16em;
}

.game-section-return{
  border-top:1px solid rgba(255,255,255,.04);
}

.game-section-return .wrap{
  display:flex;
  justify-content:flex-end;
  padding-top:15px;
  padding-bottom:15px;
}

.game-section-return a{
  color:var(--faint);
  font-size:.66rem;
}

.game-section-return a:hover,
.game-section-return a:focus-visible{
  color:var(--gold2);
}

.game-page-hero + #game-features{
  border-top:0;
}

@media(max-width:700px){
  .detail-section-label-wrap{
    padding-top:18px;
  }
}


/* ---------- ADVENTURER PAGE POLISH v7.9 ---------- */
#adventurer-top,
#ranking,
#ranking-policy{
  scroll-margin-top:72px;
}

.adventurer-page-hero .subpage-hero-art{
  background:
    linear-gradient(90deg,rgba(5,7,9,.92),rgba(5,7,9,.58) 50%,rgba(5,7,9,.16)),
    linear-gradient(180deg,rgba(5,7,9,.05),rgba(5,7,9,.84)),
    radial-gradient(circle at 75% 26%,rgba(201,162,75,.13),transparent 24%),
    linear-gradient(145deg,#30383d,#1b2227 47%,#0e1317 74%,#07090b);
}

.adventurer-page-hero .subpage-hero-art::after{
  content:"";
  position:absolute;
  right:8%;
  bottom:-7%;
  width:min(39vw,520px);
  height:82%;
  opacity:.25;
  background:
    radial-gradient(circle at 50% 17%,#464b4e 0 9%,transparent 9%),
    linear-gradient(90deg,transparent 35%,#252b2f 35% 65%,transparent 65%);
  clip-path:polygon(42% 0,58% 0,65% 14%,73% 29%,78% 100%,22% 100%,27% 29%,35% 14%);
}

.adventurer-ranking-intro{
  border-bottom:1px solid rgba(255,255,255,.045);
  background:
    radial-gradient(circle at 82% 18%,rgba(201,162,75,.045),transparent 22%),
    #0b0e12;
}

.adventurer-ranking-intro-inner{
  min-height:290px;
  display:grid;
  grid-template-columns:1fr minmax(280px,360px);
  gap:50px;
  align-items:center;
  padding-top:54px;
  padding-bottom:54px;
}

.adventurer-ranking-intro h2{
  margin-top:10px;
  font-size:clamp(2.2rem,4.2vw,3.6rem);
}

.adventurer-ranking-intro .reveal > p{
  max-width:650px;
  margin-top:12px;
  color:var(--muted);
  font-size:.82rem;
  line-height:1.75;
}

.adventurer-ranking-intro-status{
  padding:22px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.018);
}

.adventurer-ranking-intro-status span{
  color:var(--gold);
  font-size:.61rem;
  letter-spacing:.14em;
}

.adventurer-ranking-intro-status strong{
  display:block;
  margin-top:8px;
  font-size:1rem;
}

.adventurer-ranking-intro-status p{
  margin-top:8px;
  color:var(--muted);
  font-size:.7rem;
  line-height:1.6;
}

.adventurer-policy-heading{
  max-width:720px;
  margin-bottom:22px;
}

.adventurer-policy-heading h3{
  margin-top:8px;
  font-size:1.5rem;
}

.adventurer-policy-heading p{
  margin-top:9px;
  color:var(--muted);
  font-size:.76rem;
  line-height:1.72;
}

.adventurer-section-return{
  border-top:1px solid rgba(255,255,255,.04);
}

.adventurer-section-return .wrap{
  display:flex;
  justify-content:flex-end;
  padding-top:15px;
  padding-bottom:15px;
}

.adventurer-section-return a{
  color:var(--faint);
  font-size:.66rem;
}

.adventurer-section-return a:hover,
.adventurer-section-return a:focus-visible{
  color:var(--gold2);
}

@media(max-width:860px){
  .adventurer-ranking-intro-inner{
    grid-template-columns:1fr;
    gap:24px;
  }
}

@media(max-width:620px){
  .adventurer-ranking-intro-inner{
    padding-top:42px;
    padding-bottom:42px;
  }
}


/* ---------- COMMUNITY PAGE POLISH v7.10 ---------- */
#community-top,
#free-board,
#community-guide{
  scroll-margin-top:72px;
}

.community-page-hero .subpage-hero-art{
  background:
    linear-gradient(90deg,rgba(5,7,9,.92),rgba(5,7,9,.58) 50%,rgba(5,7,9,.16)),
    linear-gradient(180deg,rgba(5,7,9,.04),rgba(5,7,9,.84)),
    radial-gradient(circle at 76% 25%,rgba(201,162,75,.12),transparent 24%),
    radial-gradient(circle at 86% 60%,rgba(92,108,128,.10),transparent 18%),
    linear-gradient(145deg,#303940,#1b2329 48%,#0f1418 74%,#07090b);
}

.community-page-hero .subpage-hero-art::after{
  content:"";
  position:absolute;
  right:9%;
  bottom:-4%;
  width:min(40vw,540px);
  height:72%;
  opacity:.18;
  background:
    radial-gradient(circle at 24% 40%,#5a6064 0 8%,transparent 8%),
    radial-gradient(circle at 50% 26%,#5a6064 0 8%,transparent 8%),
    radial-gradient(circle at 76% 42%,#5a6064 0 8%,transparent 8%),
    linear-gradient(90deg,transparent 10%,#2b3135 10% 90%,transparent 90%);
  clip-path:polygon(10% 30%,90% 30%,100% 100%,0 100%);
}

.community-board-intro{
  border-bottom:1px solid rgba(255,255,255,.045);
  background:
    radial-gradient(circle at 82% 18%,rgba(201,162,75,.04),transparent 22%),
    #0b0e12;
}

.community-board-intro-inner{
  min-height:270px;
  display:grid;
  grid-template-columns:1fr minmax(280px,360px);
  gap:50px;
  align-items:center;
  padding-top:50px;
  padding-bottom:50px;
}

.community-board-intro h2{
  margin-top:10px;
  font-size:clamp(2.2rem,4.2vw,3.6rem);
}

.community-board-intro .reveal > p{
  max-width:650px;
  margin-top:12px;
  color:var(--muted);
  font-size:.82rem;
  line-height:1.75;
}

.community-board-intro-status{
  padding:22px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.018);
}

.community-board-intro-status span{
  color:var(--gold);
  font-size:.61rem;
  letter-spacing:.14em;
}

.community-board-intro-status strong{
  display:block;
  margin-top:8px;
  font-size:1rem;
}

.community-board-intro-status p{
  margin-top:8px;
  color:var(--muted);
  font-size:.7rem;
  line-height:1.6;
}

.community-guide-panel{
  margin-top:26px;
  padding:28px;
  border:1px solid var(--line);
  background:
    linear-gradient(145deg,rgba(201,162,75,.025),transparent 58%),
    #0d1115;
}

.community-guide-heading{
  max-width:720px;
}

.community-guide-heading h3{
  margin-top:8px;
  font-size:1.45rem;
}

.community-guide-heading p{
  margin-top:9px;
  color:var(--muted);
  font-size:.75rem;
  line-height:1.72;
}

.community-guide-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin-top:24px;
}

.community-guide-grid article{
  min-height:165px;
  padding:20px;
  border:1px solid rgba(255,255,255,.06);
  background:rgba(255,255,255,.014);
}

.community-guide-grid article > span{
  color:rgba(201,162,75,.55);
  font-family:var(--display);
  font-size:.78rem;
}

.community-guide-grid strong{
  display:block;
  margin-top:12px;
  font-size:.88rem;
}

.community-guide-grid p{
  margin-top:8px;
  color:var(--muted);
  font-size:.69rem;
  line-height:1.65;
}

.community-section-return{
  border-top:1px solid rgba(255,255,255,.04);
}

.community-section-return .wrap{
  display:flex;
  justify-content:flex-end;
  padding-top:15px;
  padding-bottom:15px;
}

.community-section-return a{
  color:var(--faint);
  font-size:.66rem;
}

.community-section-return a:hover,
.community-section-return a:focus-visible{
  color:var(--gold2);
}

@media(max-width:860px){
  .community-board-intro-inner{
    grid-template-columns:1fr;
    gap:24px;
  }

  .community-guide-grid{
    grid-template-columns:1fr;
  }

  .community-guide-grid article{
    min-height:0;
  }
}

@media(max-width:620px){
  .community-board-intro-inner{
    padding-top:42px;
    padding-bottom:42px;
  }

  .community-guide-panel{
    padding:22px 18px;
  }
}


/* ---------- DOWNLOAD PAGE POLISH v7.11 ---------- */
#download-top,
#download,
#download-system,
#download-guide{
  scroll-margin-top:72px;
}

.download-page-hero .subpage-hero-art{
  background:
    linear-gradient(90deg,rgba(5,7,9,.92),rgba(5,7,9,.57) 50%,rgba(5,7,9,.15)),
    linear-gradient(180deg,rgba(5,7,9,.04),rgba(5,7,9,.84)),
    radial-gradient(circle at 75% 24%,rgba(201,162,75,.13),transparent 24%),
    radial-gradient(circle at 88% 65%,rgba(80,98,118,.10),transparent 18%),
    linear-gradient(145deg,#313a41,#1c242a 47%,#0f1519 74%,#07090b);
}

.download-page-hero .subpage-hero-art::after{
  content:"";
  position:absolute;
  right:7%;
  bottom:7%;
  width:min(39vw,530px);
  height:60%;
  opacity:.2;
  border:1px solid rgba(255,255,255,.13);
  background:
    linear-gradient(90deg,transparent 8%,rgba(255,255,255,.08) 8% 10%,transparent 10% 90%,rgba(255,255,255,.08) 90% 92%,transparent 92%),
    linear-gradient(180deg,transparent 18%,rgba(255,255,255,.07) 18% 21%,transparent 21%);
}

.download-page-intro{
  border-bottom:1px solid rgba(255,255,255,.045);
  background:
    radial-gradient(circle at 82% 18%,rgba(201,162,75,.045),transparent 22%),
    #0b0e12;
}

.download-page-intro-inner{
  min-height:300px;
  display:grid;
  grid-template-columns:1fr minmax(300px,390px);
  gap:52px;
  align-items:center;
  padding-top:54px;
  padding-bottom:54px;
}

.download-page-intro h2{
  margin-top:10px;
  font-size:clamp(2.2rem,4.2vw,3.6rem);
}

.download-page-intro .reveal > p{
  max-width:670px;
  margin-top:12px;
  color:var(--muted);
  font-size:.82rem;
  line-height:1.75;
}

.download-page-status{
  padding:24px;
  border:1px solid var(--line);
  background:
    linear-gradient(145deg,rgba(201,162,75,.028),transparent 62%),
    rgba(255,255,255,.018);
}

.download-page-status > span{
  color:var(--gold);
  font-size:.61rem;
  letter-spacing:.14em;
}

.download-page-status > strong{
  display:block;
  margin-top:8px;
  font-size:1rem;
}

.download-page-status > p{
  margin-top:8px;
  color:var(--muted);
  font-size:.7rem;
  line-height:1.6;
}

.download-page-status .btn{
  width:100%;
  margin-top:18px;
  text-align:center;
}

.download-detail-heading{
  max-width:720px;
  margin-bottom:22px;
}

.download-detail-heading h3{
  margin-top:8px;
  font-size:1.5rem;
}

.download-detail-heading p{
  margin-top:9px;
  color:var(--muted);
  font-size:.76rem;
  line-height:1.72;
}

.download-integrity-note{
  border-left:2px solid rgba(201,162,75,.45);
}

.download-section-return{
  border-top:1px solid rgba(255,255,255,.04);
}

.download-section-return .wrap{
  display:flex;
  justify-content:flex-end;
  padding-top:15px;
  padding-bottom:15px;
}

.download-section-return a{
  color:var(--faint);
  font-size:.66rem;
}

.download-section-return a:hover,
.download-section-return a:focus-visible{
  color:var(--gold2);
}

@media(max-width:880px){
  .download-page-intro-inner{
    grid-template-columns:1fr;
    gap:24px;
  }
}

@media(max-width:620px){
  .download-page-intro-inner{
    padding-top:42px;
    padding-bottom:42px;
  }
}


/* ---------- LIVE COMMUNITY BOARD v7.13 ---------- */
.community-write-button{
  cursor:pointer;
  color:var(--text);
  transition:
    border-color .18s ease,
    background .18s ease,
    color .18s ease;
}

.community-write-button:hover,
.community-write-button:focus-visible{
  border-color:rgba(201,162,75,.42);
  background:rgba(201,162,75,.055);
  color:var(--gold2);
}

.community-write-panel{
  margin-bottom:18px;
  padding:26px;
  border:1px solid var(--line);
  background:
    linear-gradient(145deg,rgba(201,162,75,.025),transparent 58%),
    #0d1115;
}

.community-write-panel[hidden],
.community-post-detail[hidden]{
  display:none;
}

.community-write-panel-head,
.community-post-detail-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
}

.community-write-panel-head h3,
.community-post-detail-head h3{
  margin-top:7px;
  font-size:1.35rem;
}

.community-write-close,
.community-post-detail-close{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border:1px solid rgba(255,255,255,.08);
  background:#101419;
  color:var(--muted);
  font-size:1.1rem;
  cursor:pointer;
}

.community-write-form{
  margin-top:22px;
}

.community-write-form label{
  display:block;
  margin-top:17px;
  margin-bottom:7px;
  color:var(--text);
  font-size:.72rem;
}

.community-write-form input,
.community-write-form textarea{
  width:100%;
  border:1px solid rgba(255,255,255,.09);
  background:#090c0f;
  color:var(--text);
  font:inherit;
  outline:none;
  transition:border-color .18s ease;
}

.community-write-form input{
  min-height:44px;
  padding:0 13px;
}

.community-write-form textarea{
  min-height:220px;
  padding:13px;
  line-height:1.7;
  resize:vertical;
}

.community-write-form input:focus,
.community-write-form textarea:focus{
  border-color:rgba(201,162,75,.44);
}

.community-field-meta{
  display:flex;
  justify-content:space-between;
  gap:16px;
  margin-top:6px;
  color:var(--faint);
  font-size:.63rem;
}

.community-write-actions{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:20px;
}

.community-write-status{
  margin-top:12px;
  color:var(--muted);
  font-size:.68rem;
  line-height:1.6;
}

.community-write-status.ok{color:#9fc5a7}
.community-write-status.error{color:#d5968f}

.community-board-data-row{
  min-height:52px;
  align-items:center;
  border-bottom:1px solid rgba(255,255,255,.045);
}

.community-board-data-row:last-child{
  border-bottom:0;
}

.community-board-data-row > span{
  min-width:0;
  padding:12px 16px;
  color:var(--muted);
  font-size:.71rem;
}

.community-board-number,
.community-board-date{
  color:var(--faint) !important;
}

.community-post-title-button{
  width:100%;
  overflow:hidden;
  border:0;
  background:transparent;
  color:var(--text);
  font:inherit;
  text-align:left;
  text-overflow:ellipsis;
  white-space:nowrap;
  cursor:pointer;
  transition:color .18s ease;
}

.community-post-title-button:hover,
.community-post-title-button:focus-visible{
  color:var(--gold2);
}

.community-post-detail{
  margin-top:18px;
  padding:28px;
  border:1px solid var(--line);
  background:
    radial-gradient(circle at 92% 0,rgba(201,162,75,.035),transparent 22%),
    #0d1115;
}

.community-post-detail-meta{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  margin-top:8px;
  color:var(--faint);
  font-size:.67rem;
}

.community-post-detail-body{
  margin-top:24px;
  padding-top:22px;
  border-top:1px solid rgba(255,255,255,.06);
  color:var(--muted);
  font-size:.78rem;
  line-height:1.82;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}

@media(max-width:700px){
  .community-board-data-row{
    grid-template-columns:54px 1fr;
    gap:0;
    padding:8px 0;
  }

  .community-board-data-row > span{
    padding:7px 12px;
  }

  .community-board-title-cell{
    grid-column:2;
    grid-row:1;
  }

  .community-board-number{
    grid-column:1;
    grid-row:1 / span 2;
    align-self:center;
  }

  .community-board-author{
    grid-column:2;
    grid-row:2;
    padding-right:90px !important;
  }

  .community-board-date{
    grid-column:2;
    grid-row:2;
    justify-self:end;
  }

  .community-write-panel,
  .community-post-detail{
    padding:22px 18px;
  }

  .community-write-actions{
    align-items:stretch;
    flex-direction:column;
  }

  .community-write-actions .btn,
  .community-write-actions .mini-btn{
    width:100%;
  }
}


/* ---------- COMMUNITY CRUD v7.14 ---------- */
.community-post-owner-actions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid rgba(255,255,255,.055);
}

.community-post-owner-actions[hidden]{
  display:none;
}

.community-delete-button{
  border-color:rgba(177,78,67,.38) !important;
  color:#d5968f !important;
}

.community-delete-button:hover,
.community-delete-button:focus-visible{
  border-color:rgba(177,78,67,.68) !important;
  background:rgba(177,78,67,.08) !important;
}

.community-edit-panel{
  margin-top:24px;
  padding-top:24px;
  border-top:1px solid rgba(255,255,255,.06);
}

.community-edit-panel[hidden],
.community-delete-confirm[hidden]{
  display:none;
}

.community-edit-panel-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
}

.community-edit-panel-head h4{
  margin-top:7px;
  font-size:1.05rem;
}

.community-delete-confirm{
  margin-top:24px;
  padding:20px;
  border:1px solid rgba(177,78,67,.25);
  background:rgba(177,78,67,.035);
}

.community-delete-confirm > strong{
  display:block;
  font-size:.88rem;
}

.community-delete-confirm > p{
  margin-top:7px;
  color:var(--muted);
  font-size:.69rem;
  line-height:1.6;
}

@media(max-width:620px){
  .community-post-owner-actions{
    justify-content:stretch;
  }

  .community-post-owner-actions .mini-btn{
    flex:1;
  }
}


/* ---------- COMMUNITY PAGINATION v7.15 ---------- */
.community-pagination{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin-top:20px;
}

.community-pagination[hidden]{
  display:none;
}

.community-page-numbers{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
}

.community-page-control,
.community-page-number{
  min-width:38px;
  height:36px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 10px;
  border:1px solid rgba(255,255,255,.08);
  background:#0d1115;
  color:var(--muted);
  font-size:.68rem;
  cursor:pointer;
  transition:
    border-color .18s ease,
    background .18s ease,
    color .18s ease;
}

.community-page-control{
  min-width:58px;
}

.community-page-control:hover:not(:disabled),
.community-page-control:focus-visible:not(:disabled),
.community-page-number:hover:not(:disabled),
.community-page-number:focus-visible:not(:disabled){
  border-color:rgba(201,162,75,.4);
  background:rgba(201,162,75,.05);
  color:var(--gold2);
}

.community-page-number.active{
  border-color:rgba(201,162,75,.5);
  background:rgba(201,162,75,.08);
  color:var(--gold2);
}

.community-page-control:disabled,
.community-page-number:disabled{
  cursor:default;
  opacity:.42;
}

.community-page-number.active:disabled{
  opacity:1;
}

.community-page-ellipsis{
  min-width:20px;
  color:var(--faint);
  text-align:center;
  font-size:.68rem;
}

@media(max-width:620px){
  .community-pagination{
    gap:5px;
  }

  .community-page-numbers{
    gap:4px;
  }

  .community-page-control,
  .community-page-number{
    min-width:34px;
    height:34px;
    padding:0 7px;
  }

  .community-page-control{
    min-width:48px;
  }
}


/* ---------- COMMUNITY RATE LIMIT UI v7.16 ---------- */
#communityWriteSubmit:disabled{
  cursor:default;
}

#communityWriteSubmit[aria-busy="false"]:disabled{
  opacity:.62;
}


/* ---------- COMMUNITY COMMENTS v7.17 ---------- */
.community-comments-panel{
  margin-top:30px;
  padding-top:26px;
  border-top:1px solid rgba(255,255,255,.065);
}

.community-comments-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  margin-bottom:16px;
}

.community-comments-head h4{
  margin-top:7px;
  font-size:1.05rem;
}

.community-comments-state{
  color:var(--muted);
  font-size:.66rem;
  line-height:1.5;
  text-align:right;
}

.community-comments-state[data-state="ok"]{
  color:var(--gold2);
}

.community-comments-state[data-state="error"]{
  color:#d5968f;
}

.community-comment-list{
  display:grid;
  gap:10px;
}

.community-comment-empty{
  padding:22px 18px;
  border:1px solid rgba(255,255,255,.055);
  background:rgba(255,255,255,.012);
  color:var(--muted);
  font-size:.72rem;
  line-height:1.65;
  text-align:center;
}

.community-comment-item{
  padding:16px 17px;
  border:1px solid rgba(255,255,255,.06);
  background:rgba(255,255,255,.012);
}

.community-comment-item-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}

.community-comment-identity{
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:9px;
}

.community-comment-identity strong{
  font-size:.75rem;
  font-weight:650;
  color:var(--text);
}

.community-comment-identity span{
  color:var(--faint);
  font-size:.62rem;
}

.community-comment-actions{
  display:flex;
  align-items:center;
  gap:6px;
}

.community-comment-action{
  min-height:28px;
  padding:0 9px;
  border:1px solid rgba(255,255,255,.075);
  background:transparent;
  color:var(--muted);
  font-size:.62rem;
  cursor:pointer;
}

.community-comment-action:hover:not(:disabled),
.community-comment-action:focus-visible:not(:disabled){
  border-color:rgba(201,162,75,.35);
  color:var(--gold2);
}

.community-comment-action.primary{
  border-color:rgba(201,162,75,.3);
  color:var(--gold2);
}

.community-comment-action.danger{
  border-color:rgba(177,78,67,.32);
  color:#d5968f;
}

.community-comment-action:disabled{
  cursor:default;
  opacity:.55;
}

.community-comment-body{
  margin-top:11px;
  color:var(--text);
  font-size:.73rem;
  line-height:1.75;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}

.community-comment-inline-panel{
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.055);
}

.community-comment-inline-panel textarea,
.community-comment-form textarea{
  width:100%;
  resize:vertical;
}

.community-comment-inline-panel.delete{
  border-top-color:rgba(177,78,67,.2);
}

.community-comment-inline-panel.delete > strong{
  display:block;
  color:#d9b0ab;
  font-size:.72rem;
}

.community-comment-inline-actions,
.community-comment-form-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:7px;
  margin-top:10px;
}

.community-comment-pagination{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  margin-top:14px;
}

.community-comment-pagination[hidden]{
  display:none;
}

.community-comment-pagination > span{
  min-width:54px;
  color:var(--muted);
  font-size:.65rem;
  text-align:center;
}

.community-comment-login-message{
  margin-top:18px;
  padding:14px 16px;
  border:1px solid rgba(255,255,255,.055);
  background:rgba(255,255,255,.012);
  color:var(--muted);
  font-size:.69rem;
  line-height:1.6;
}

.community-comment-login-message[hidden]{
  display:none;
}

.community-comment-form{
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.055);
}

.community-comment-form[hidden]{
  display:none;
}

.community-comment-form > label{
  display:block;
  margin-bottom:9px;
  color:var(--text);
  font-size:.72rem;
  font-weight:650;
}

@media(max-width:620px){
  .community-comments-head{
    display:block;
  }

  .community-comments-state{
    display:block;
    margin-top:8px;
    text-align:left;
  }

  .community-comment-item-head{
    gap:10px;
  }

  .community-comment-actions{
    flex-shrink:0;
  }

  .community-comment-action{
    padding:0 7px;
  }

  .community-comment-form-actions .btn{
    width:100%;
  }
}


/* ---------- COMMUNITY COMMENT COUNTS v7.18 ---------- */
.community-post-title-button{
  display:inline-flex;
  align-items:baseline;
  gap:6px;
  max-width:100%;
}

.community-post-title-text{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.community-post-comment-count{
  flex:0 0 auto;
  color:var(--gold2);
  font-size:.66rem;
  font-weight:650;
  letter-spacing:.01em;
}


/* ---------- COMMUNITY COMMENT RATE LIMIT UI v7.19 ---------- */
#communityCommentSubmit:disabled{
  cursor:default;
}

#communityCommentSubmit[aria-busy="false"]:disabled{
  opacity:.62;
}


/* ---------- COMMUNITY REPORTS UI v7.20 ---------- */
.community-post-report-actions{
  display:flex;
  justify-content:flex-end;
  margin-top:14px;
}

.community-post-report-actions[hidden],
.community-report-panel[hidden]{
  display:none;
}

.community-report-button,
.community-comment-action.report{
  border-color:rgba(198,149,82,.22) !important;
  color:#c8a675 !important;
}

.community-report-button:hover,
.community-report-button:focus-visible,
.community-comment-action.report:hover,
.community-comment-action.report:focus-visible{
  border-color:rgba(198,149,82,.5) !important;
  background:rgba(198,149,82,.05) !important;
  color:var(--gold2) !important;
}

.community-report-panel{
  margin-top:24px;
  padding:22px;
  border:1px solid rgba(198,149,82,.16);
  background:rgba(198,149,82,.025);
}

.community-report-panel-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  margin-bottom:18px;
}

.community-report-panel-head h4{
  margin-top:7px;
  font-size:1.05rem;
}

.community-report-target{
  margin:0 0 18px;
  padding:12px 14px;
  border:1px solid rgba(255,255,255,.055);
  background:rgba(255,255,255,.012);
  color:var(--muted);
  font-size:.69rem;
  line-height:1.6;
}

.community-report-panel select{
  width:100%;
  min-height:42px;
  padding:0 12px;
  border:1px solid rgba(255,255,255,.08);
  background:#0d1115;
  color:var(--text);
}

.community-report-panel .optional{
  color:var(--faint);
  font-weight:400;
}

@media(max-width:620px){
  .community-post-report-actions{
    justify-content:stretch;
  }

  .community-post-report-actions .mini-btn{
    width:100%;
  }

  .community-report-panel{
    padding:18px 15px;
  }
}


/* ---------- COMMUNITY MODERATION UI v7.21 ---------- */
.community-board-toolbar-actions{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end;
  gap:8px !important;
}

.community-moderation-button{
  padding:9px 14px;
  border:1px solid rgba(201,162,75,.28);
  background:rgba(201,162,75,.055);
  color:var(--gold2);
  font-size:.72rem;
  cursor:pointer;
}

.community-moderation-button:hover,
.community-moderation-button:focus-visible{
  border-color:rgba(201,162,75,.52);
  background:rgba(201,162,75,.09);
}

.community-moderation-button[hidden],
.community-moderation-panel[hidden]{
  display:none;
}

.community-moderation-panel{
  margin-bottom:20px;
  padding:24px;
  border:1px solid rgba(201,162,75,.18);
  background:
    linear-gradient(
      180deg,
      rgba(201,162,75,.035),
      rgba(255,255,255,.006)
    );
}

.community-moderation-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
}

.community-moderation-head h3{
  margin-top:7px;
}

.community-moderation-head p{
  margin-top:7px;
  color:var(--muted);
  font-size:.7rem;
}

.community-moderation-filters{
  display:flex;
  align-items:center;
  gap:7px;
  flex-wrap:wrap;
  margin-top:22px;
}

.community-moderation-filters button{
  min-height:34px;
  padding:0 12px;
  border:1px solid rgba(255,255,255,.075);
  background:transparent;
  color:var(--muted);
  font-size:.66rem;
  cursor:pointer;
}

.community-moderation-filters button.active,
.community-moderation-filters button:hover,
.community-moderation-filters button:focus-visible{
  border-color:rgba(201,162,75,.36);
  color:var(--gold2);
  background:rgba(201,162,75,.045);
}

.community-moderation-status{
  margin-top:14px;
  padding:10px 12px;
  border:1px solid rgba(255,255,255,.055);
  color:var(--muted);
  font-size:.68rem;
  line-height:1.6;
}

.community-moderation-status.ok{
  border-color:rgba(94,148,107,.22);
  color:#9fc3a8;
}

.community-moderation-status.error{
  border-color:rgba(177,78,67,.27);
  color:#d8a09a;
}

.community-moderation-list{
  display:grid;
  gap:12px;
  margin-top:16px;
}

.community-moderation-empty{
  min-height:140px;
  display:grid;
  place-items:center;
  padding:28px;
  border:1px dashed rgba(255,255,255,.07);
  color:var(--faint);
  font-size:.72rem;
  text-align:center;
}

.community-moderation-card{
  padding:20px;
  border:1px solid rgba(255,255,255,.065);
  background:#0d1115;
}

.community-moderation-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}

.community-moderation-card-head h4{
  margin-top:6px;
  font-size:1rem;
}

.community-moderation-status-badge{
  flex:0 0 auto;
  padding:5px 8px;
  border:1px solid rgba(255,255,255,.08);
  color:var(--muted);
  font-size:.6rem;
}

.community-moderation-status-badge.pending{
  border-color:rgba(201,162,75,.25);
  color:var(--gold2);
}

.community-moderation-status-badge.dismissed{
  color:var(--faint);
}

.community-moderation-status-badge.actioned{
  border-color:rgba(177,78,67,.3);
  color:#d79a93;
}

.community-moderation-meta{
  display:grid;
  grid-template-columns:
    repeat(3,minmax(0,1fr));
  gap:8px;
  margin-top:16px;
}

.community-moderation-meta-row{
  padding:10px 11px;
  border:1px solid rgba(255,255,255,.05);
  background:rgba(255,255,255,.009);
}

.community-moderation-meta-row > span{
  display:block;
  color:var(--faint);
  font-size:.59rem;
}

.community-moderation-meta-row > strong{
  display:block;
  margin-top:5px;
  color:var(--text);
  font-size:.67rem;
  font-weight:500;
  overflow-wrap:anywhere;
}

.community-moderation-copy,
.community-moderation-target,
.community-moderation-review,
.community-moderation-controls{
  margin-top:14px;
  padding:14px;
  border:1px solid rgba(255,255,255,.055);
}

.community-moderation-copy > strong,
.community-moderation-target > strong{
  display:block;
  color:var(--gold2);
  font-size:.66rem;
}

.community-moderation-copy p,
.community-moderation-target p{
  margin-top:9px;
  color:var(--muted);
  font-size:.7rem;
  line-height:1.7;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}

.community-moderation-target h5{
  margin-top:10px;
  font-size:.8rem;
}

.community-moderation-target-author{
  display:block;
  margin-top:9px;
  color:var(--faint);
  font-size:.63rem;
}

.community-moderation-deleted{
  display:inline-block;
  margin-top:11px;
  padding:4px 7px;
  border:1px solid rgba(177,78,67,.25);
  color:#d79a93;
  font-size:.59rem;
}

.community-moderation-review{
  display:grid;
  grid-template-columns:
    minmax(150px,.35fr)
    minmax(0,1fr);
  gap:8px;
}

.community-moderation-controls label{
  display:block;
  color:var(--muted);
  font-size:.66rem;
}

.community-moderation-controls textarea{
  width:100%;
  margin-top:8px;
  resize:vertical;
}

.community-moderation-actions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  margin-top:12px;
}

.community-moderation-action-button{
  border-color:rgba(177,78,67,.34) !important;
  color:#d79a93 !important;
}

.community-moderation-readonly{
  margin-top:14px;
  color:var(--faint);
  font-size:.67rem;
}

@media(max-width:700px){
  .community-board-toolbar-actions{
    width:100%;
    justify-content:stretch;
  }

  .community-board-toolbar-actions button{
    flex:1 1 0;
  }

  .community-moderation-meta{
    grid-template-columns:1fr;
  }

  .community-moderation-review{
    grid-template-columns:1fr;
  }
}

@media(max-width:520px){
  .community-moderation-panel{
    padding:18px 14px;
  }

  .community-moderation-card{
    padding:15px;
  }

  .community-moderation-actions{
    align-items:stretch;
    flex-direction:column;
  }
}


/* ---------- CUSTOMER SUPPORT PAGE v7.22 ---------- */
.support-page-hero .subpage-hero-art{
  opacity:.22;
}

.support-section{
  padding-top:88px;
  padding-bottom:88px;
}

.support-section-alt{
  background:rgba(255,255,255,.008);
  border-top:1px solid rgba(255,255,255,.04);
  border-bottom:1px solid rgba(255,255,255,.04);
}

.support-section-heading{
  max-width:760px;
  margin-bottom:28px;
}

.support-section-heading h2{
  margin-top:12px;
  font-size:clamp(2rem,4vw,3rem);
}

.support-section-heading p{
  margin-top:14px;
  color:var(--muted);
  font-size:.78rem;
  line-height:1.8;
}

.support-placeholder-card,
.support-inquiry-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding:26px;
  border:1px solid rgba(255,255,255,.065);
  background:#0d1115;
}

.support-placeholder-card > div,
.support-inquiry-card > div{
  min-width:0;
}

.support-card-index{
  display:inline-block;
  color:var(--gold);
  font-size:.62rem;
  letter-spacing:.15em;
}

.support-placeholder-card strong,
.support-inquiry-card h3{
  display:block;
  margin-top:8px;
  color:var(--text);
}

.support-placeholder-card p,
.support-inquiry-card p{
  margin-top:9px;
  max-width:760px;
  color:var(--muted);
  font-size:.72rem;
  line-height:1.75;
}

.support-info-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.support-info-card{
  min-height:210px;
  padding:22px;
  border:1px solid rgba(255,255,255,.06);
  background:#0d1115;
}

.support-info-card > span{
  color:var(--gold);
  font-size:.6rem;
  letter-spacing:.14em;
}

.support-info-card h3{
  margin-top:12px;
  font-size:1rem;
}

.support-info-card p{
  margin-top:12px;
  color:var(--muted);
  font-size:.7rem;
  line-height:1.75;
}

.support-inquiry-card button[disabled]{
  flex:0 0 auto;
  opacity:.55;
  cursor:not-allowed;
}

@media(max-width:1060px){
  .site-footer-nav{
    grid-template-columns:repeat(3,1fr);
  }
}

@media(max-width:820px){
  .support-info-grid{
    grid-template-columns:1fr;
  }

  .support-info-card{
    min-height:0;
  }
}

@media(max-width:620px){
  .support-placeholder-card,
  .support-inquiry-card{
    align-items:stretch;
    flex-direction:column;
  }

  .support-inquiry-card button{
    width:100%;
  }
}


/* ---------- LIVE NEWS NOTICES v7.23 ---------- */
.news-live-toolbar-actions{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end;
  gap:8px !important;
}

.news-notice-manage-button[hidden],
.news-notice-detail[hidden],
.news-notice-manage-panel[hidden],
.news-notice-create-wrap[hidden],
.news-live-pagination[hidden]{
  display:none;
}

.news-live-list{
  display:block;
}

.news-live-row{
  width:100%;
  min-height:58px;
  padding:0;
  border:0;
  border-bottom:1px solid rgba(255,255,255,.05);
  background:transparent;
  color:inherit;
  text-align:left;
  cursor:pointer;
}

.news-live-row:last-child{
  border-bottom:0;
}

.news-live-row:hover,
.news-live-row:focus-visible{
  background:rgba(201,162,75,.035);
}

.news-live-row > span{
  min-width:0;
  padding:15px 16px;
}

.news-live-category,
.news-live-date{
  color:var(--muted);
  font-size:.7rem;
}

.news-live-title{
  display:flex;
  align-items:center;
  gap:8px;
}

.news-live-title strong{
  min-width:0;
  color:var(--text);
  font-size:.78rem;
  font-weight:500;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.news-live-pin{
  flex:0 0 auto;
  padding:3px 6px;
  border:1px solid rgba(201,162,75,.26);
  color:var(--gold2);
  font-size:.56rem;
}

.news-live-pagination{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin-top:14px;
}

.news-live-pagination > span{
  min-width:72px;
  color:var(--muted);
  font-size:.67rem;
  text-align:center;
}

.news-notice-detail{
  margin-top:18px;
  padding:24px;
  border:1px solid rgba(201,162,75,.16);
  background:#0d1115;
}

.news-notice-detail-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:22px;
  padding-bottom:18px;
  border-bottom:1px solid rgba(255,255,255,.06);
}

.news-notice-detail-meta{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  color:var(--faint);
  font-size:.62rem;
}

#newsNoticeDetailCategory{
  color:var(--gold2);
}

#newsNoticeDetailPinned{
  padding:3px 6px;
  border:1px solid rgba(201,162,75,.25);
  color:var(--gold2);
}

.news-notice-detail h3{
  margin-top:10px;
  font-size:1.35rem;
}

.news-notice-detail-body{
  padding-top:22px;
  color:var(--muted);
  font-size:.8rem;
  line-height:1.9;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}

.news-notice-manage-panel{
  margin-top:20px;
  padding:24px;
  border:1px solid rgba(201,162,75,.18);
  background:
    linear-gradient(
      180deg,
      rgba(201,162,75,.035),
      rgba(255,255,255,.006)
    );
}

.news-notice-manage-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:22px;
}

.news-notice-manage-head h3{
  margin-top:7px;
}

.news-notice-manage-head p{
  margin-top:7px;
  color:var(--muted);
  font-size:.68rem;
}

.news-notice-create-wrap{
  margin-top:20px;
  padding:18px;
  border:1px solid rgba(255,255,255,.055);
  background:#0d1115;
}

.news-notice-create-wrap h4{
  margin-bottom:14px;
  font-size:.88rem;
}

.news-notice-create-wrap select,
.news-notice-manage-editor select{
  width:100%;
  min-height:42px;
  padding:0 12px;
  border:1px solid rgba(255,255,255,.08);
  background:#0d1115;
  color:var(--text);
}

.news-notice-pin-check{
  display:flex !important;
  align-items:center;
  gap:9px;
  margin-top:14px;
  color:var(--muted);
  font-size:.68rem;
}

.news-notice-pin-check input{
  width:auto !important;
  margin:0;
}

.news-notice-manage-filters{
  display:flex;
  align-items:center;
  gap:7px;
  flex-wrap:wrap;
  margin-top:20px;
}

.news-notice-manage-filters button{
  min-height:34px;
  padding:0 12px;
  border:1px solid rgba(255,255,255,.075);
  background:transparent;
  color:var(--muted);
  font-size:.66rem;
  cursor:pointer;
}

.news-notice-manage-filters button.active,
.news-notice-manage-filters button:hover,
.news-notice-manage-filters button:focus-visible{
  border-color:rgba(201,162,75,.36);
  background:rgba(201,162,75,.045);
  color:var(--gold2);
}

.news-notice-manage-list{
  display:grid;
  gap:12px;
  margin-top:16px;
}

.news-notice-manage-card{
  padding:20px;
  border:1px solid rgba(255,255,255,.065);
  background:#0d1115;
}

.news-notice-manage-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}

.news-notice-manage-card-head h4{
  margin-top:6px;
  font-size:1rem;
  overflow-wrap:anywhere;
}

.community-moderation-status-badge.draft{
  border-color:rgba(255,255,255,.08);
  color:var(--muted);
}

.community-moderation-status-badge.published{
  border-color:rgba(86,145,102,.3);
  color:#9fc3a8;
}

.community-moderation-status-badge.archived{
  border-color:rgba(255,255,255,.08);
  color:var(--faint);
}

.news-notice-manage-readonly{
  margin-top:14px;
  padding:14px;
  border:1px solid rgba(255,255,255,.055);
}

.news-notice-manage-readonly > span{
  color:var(--gold2);
  font-size:.62rem;
}

.news-notice-manage-readonly p{
  margin-top:9px;
  color:var(--muted);
  font-size:.72rem;
  line-height:1.75;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}

.news-notice-manage-editor{
  display:grid;
  gap:8px;
  margin-top:16px;
  padding:14px;
  border:1px solid rgba(255,255,255,.055);
}

.news-notice-manage-editor > label:not(.news-notice-pin-check){
  margin-top:5px;
  color:var(--muted);
  font-size:.65rem;
}

.news-notice-manage-editor input[type="text"],
.news-notice-manage-editor textarea{
  width:100%;
}

.news-notice-manage-actions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
  margin-top:8px;
}

.news-notice-publish-button{
  border-color:rgba(86,145,102,.3) !important;
  color:#9fc3a8 !important;
}

@media(max-width:700px){
  .news-live-row{
    grid-template-columns:1fr auto;
    padding:13px 14px;
    gap:5px 12px;
  }

  .news-live-row > span{
    padding:0;
  }

  .news-live-category{
    grid-column:1;
  }

  .news-live-title{
    grid-column:1 / -1;
    grid-row:2;
  }

  .news-live-date{
    grid-column:2;
    grid-row:1;
    justify-self:end;
  }

  .news-live-title strong{
    white-space:normal;
  }
}

@media(max-width:620px){
  .news-live-toolbar-actions{
    width:100%;
    justify-content:space-between;
  }

  .news-notice-detail,
  .news-notice-manage-panel{
    padding:18px 14px;
  }

  .news-notice-manage-card{
    padding:15px;
  }

  .news-notice-manage-actions{
    align-items:stretch;
    flex-direction:column;
  }

  .news-notice-manage-actions button{
    width:100%;
  }
}


/* ---------- LIVE NEWS SECTIONS v7.24 ---------- */
[data-news-section-root] .community-write-form > label:not(.news-notice-pin-check){
  display:grid;
  gap:7px;
  color:var(--muted);
  font-size:.68rem;
}
[data-news-section-root] .community-write-form select,
[data-news-section-root] .community-write-form input[type="text"],
[data-news-section-root] .community-write-form textarea{
  width:100%;
}
[data-news-section-root] .news-notice-manage-panel{
  scroll-margin-top:92px;
}
[data-news-section-root] .news-board-empty{
  border-bottom:0;
}


/* ---------- LIVE SUPPORT INQUIRIES v7.25 ---------- */
.support-inquiry-live-shell{
  padding:26px;
  border:1px solid rgba(255,255,255,.065);
  background:#0d1115;
}

.support-inquiry-live-head,
.support-inquiry-panel-title,
.support-inquiry-detail-head,
.support-inquiry-staff-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
}

.support-inquiry-live-head h3,
.support-inquiry-panel-title h4,
.support-inquiry-staff-head h4,
.support-inquiry-detail-head h4{
  margin-top:8px;
}

.support-inquiry-live-head p,
.support-inquiry-staff-head p{
  margin-top:8px;
  color:var(--muted);
  font-size:.7rem;
  line-height:1.7;
}

.support-inquiry-login-required{
  margin-top:20px;
  padding:22px;
  border:1px dashed rgba(255,255,255,.08);
  text-align:center;
}

.support-inquiry-login-required[hidden],
.support-inquiry-user-area[hidden],
.support-inquiry-staff-panel[hidden],
.support-inquiry-detail[hidden],
.support-inquiry-pagination[hidden],
#supportInquiryStaffButton[hidden]{
  display:none;
}

.support-inquiry-login-required strong{
  display:block;
  color:var(--text);
}

.support-inquiry-login-required p{
  margin:8px auto 0;
  max-width:660px;
  color:var(--muted);
  font-size:.72rem;
  line-height:1.75;
}

.support-inquiry-user-area{
  display:grid;
  gap:18px;
  margin-top:20px;
}

.support-inquiry-create,
.support-inquiry-my-list-panel,
.support-inquiry-detail,
.support-inquiry-staff-panel{
  padding:20px;
  border:1px solid rgba(255,255,255,.06);
  background:rgba(255,255,255,.008);
}

.support-inquiry-panel-title > span{
  align-self:flex-end;
  color:var(--faint);
  font-size:.65rem;
}

.support-inquiry-form,
.support-inquiry-reply-form{
  display:grid;
  gap:8px;
  margin-top:16px;
}

.support-inquiry-form label,
.support-inquiry-reply-form label,
.support-inquiry-staff-status-controls label{
  color:var(--muted);
  font-size:.66rem;
}

.support-inquiry-form input,
.support-inquiry-form textarea,
.support-inquiry-reply-form textarea,
.support-inquiry-staff-status-controls select{
  width:100%;
  border:1px solid rgba(255,255,255,.08);
  background:#0b0e12;
  color:var(--text);
}

.support-inquiry-form input,
.support-inquiry-staff-status-controls select{
  min-height:42px;
  padding:0 12px;
}

.support-inquiry-form textarea,
.support-inquiry-reply-form textarea{
  min-height:130px;
  padding:12px;
  resize:vertical;
}

.support-inquiry-field-meta{
  display:flex;
  justify-content:space-between;
  gap:14px;
  color:var(--faint);
  font-size:.62rem;
}

.support-inquiry-form-actions,
.support-inquiry-detail-actions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
  margin-top:8px;
}

.support-inquiry-status{
  margin-top:12px;
  padding:10px 12px;
  border:1px solid rgba(255,255,255,.055);
  color:var(--muted);
  font-size:.67rem;
  line-height:1.6;
}

.support-inquiry-status.ok{
  border-color:rgba(94,148,107,.22);
  color:#9fc3a8;
}

.support-inquiry-status.error{
  border-color:rgba(177,78,67,.27);
  color:#d8a09a;
}

.support-inquiry-list{
  display:grid;
  gap:8px;
  margin-top:14px;
}

.support-inquiry-empty{
  min-height:120px;
  display:grid;
  place-items:center;
  padding:24px;
  border:1px dashed rgba(255,255,255,.07);
  color:var(--faint);
  font-size:.7rem;
  text-align:center;
}

.support-inquiry-list-item{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:15px 16px;
  border:1px solid rgba(255,255,255,.055);
  background:#0b0e12;
  color:inherit;
  text-align:left;
  cursor:pointer;
}

.support-inquiry-list-item:hover,
.support-inquiry-list-item:focus-visible{
  border-color:rgba(201,162,75,.28);
  background:rgba(201,162,75,.025);
}

.support-inquiry-list-main{
  min-width:0;
  display:grid;
  gap:6px;
}

.support-inquiry-list-top{
  display:flex;
  align-items:center;
  gap:8px;
}

.support-inquiry-list-item strong{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:.8rem;
}

.support-inquiry-list-date,
.support-inquiry-list-requester{
  color:var(--faint);
  font-size:.62rem;
}

.support-inquiry-list-arrow{
  flex:0 0 auto;
  color:var(--gold2);
  font-size:1.2rem;
}

.support-inquiry-badge{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 7px;
  border:1px solid rgba(255,255,255,.08);
  color:var(--muted);
  font-size:.59rem;
  white-space:nowrap;
}

.support-inquiry-badge.open{
  border-color:rgba(201,162,75,.28);
  color:var(--gold2);
}

.support-inquiry-badge.in_progress{
  border-color:rgba(105,137,183,.3);
  color:#a9bfdf;
}

.support-inquiry-badge.answered{
  border-color:rgba(94,148,107,.28);
  color:#9fc3a8;
}

.support-inquiry-badge.closed{
  color:var(--faint);
}

.support-inquiry-pagination{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin-top:14px;
}

.support-inquiry-pagination > span{
  min-width:70px;
  color:var(--muted);
  font-size:.66rem;
  text-align:center;
}

.support-inquiry-detail{
  border-color:rgba(201,162,75,.14);
  background:#0b0e12;
}

.support-inquiry-detail-meta{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  color:var(--faint);
  font-size:.62rem;
}

.support-inquiry-message-list{
  display:grid;
  gap:10px;
  margin-top:18px;
}

.support-inquiry-message{
  max-width:88%;
  padding:14px;
  border:1px solid rgba(255,255,255,.06);
  background:#0d1115;
}

.support-inquiry-message.user{
  justify-self:start;
}

.support-inquiry-message.staff{
  justify-self:end;
  border-color:rgba(201,162,75,.18);
  background:rgba(201,162,75,.025);
}

.support-inquiry-message-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}

.support-inquiry-message-head strong{
  font-size:.68rem;
}

.support-inquiry-message-head span{
  color:var(--faint);
  font-size:.6rem;
}

.support-inquiry-message p{
  margin-top:8px;
  color:var(--muted);
  font-size:.72rem;
  line-height:1.75;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}

.support-inquiry-close-button{
  border-color:rgba(177,78,67,.22);
  color:#d8a09a;
}

.support-inquiry-staff-panel{
  margin-top:20px;
  border-color:rgba(201,162,75,.18);
}

.support-inquiry-staff-filters{
  display:flex;
  align-items:center;
  gap:7px;
  flex-wrap:wrap;
  margin-top:18px;
}

.support-inquiry-staff-filters button{
  min-height:34px;
  padding:0 12px;
  border:1px solid rgba(255,255,255,.075);
  background:transparent;
  color:var(--muted);
  font-size:.65rem;
  cursor:pointer;
}

.support-inquiry-staff-filters button.active,
.support-inquiry-staff-filters button:hover,
.support-inquiry-staff-filters button:focus-visible{
  border-color:rgba(201,162,75,.36);
  background:rgba(201,162,75,.045);
  color:var(--gold2);
}

.support-inquiry-staff-detail{
  margin-top:18px;
}

.support-inquiry-staff-status-controls{
  display:grid;
  grid-template-columns:auto minmax(160px,240px) auto;
  align-items:center;
  gap:10px;
  margin-top:18px;
  padding:14px;
  border:1px solid rgba(255,255,255,.055);
}

.support-inquiry-security-note{
  margin-top:12px;
  color:var(--faint);
  font-size:.64rem;
  line-height:1.6;
}

@media(max-width:700px){
  .support-inquiry-live-shell{
    padding:18px 14px;
  }

  .support-inquiry-live-head,
  .support-inquiry-panel-title,
  .support-inquiry-detail-head,
  .support-inquiry-staff-head{
    gap:12px;
  }

  .support-inquiry-message{
    max-width:100%;
  }

  .support-inquiry-staff-status-controls{
    grid-template-columns:1fr;
  }
}

@media(max-width:560px){
  .support-inquiry-live-head{
    align-items:stretch;
    flex-direction:column;
  }

  #supportInquiryStaffButton{
    width:100%;
  }

  .support-inquiry-form-actions,
  .support-inquiry-detail-actions{
    align-items:stretch;
    flex-direction:column;
  }

  .support-inquiry-form-actions button,
  .support-inquiry-detail-actions button{
    width:100%;
  }

  .support-inquiry-list-item{
    align-items:flex-start;
  }
}


/* ---------- SUPPORT CENTER HUB v7.26 ---------- */
.support-hub{
  border:1px solid rgba(255,255,255,.065);
  background:#0d1115;
}

.support-hub-tabs{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-bottom:1px solid rgba(255,255,255,.065);
}

.support-hub-tabs button{
  min-height:92px;
  display:grid;
  grid-template-columns:auto 1fr;
  grid-template-rows:auto auto;
  align-items:center;
  gap:2px 12px;
  padding:18px 20px;
  border:0;
  border-right:1px solid rgba(255,255,255,.055);
  background:transparent;
  color:var(--muted);
  text-align:left;
  cursor:pointer;
}

.support-hub-tabs button:last-child{
  border-right:0;
}

.support-hub-tabs button > span{
  grid-row:1 / 3;
  color:var(--gold);
  font-family:var(--display);
  font-size:1.1rem;
}

.support-hub-tabs button strong{
  color:var(--text);
  font-size:.82rem;
}

.support-hub-tabs button small{
  color:var(--faint);
  font-size:.62rem;
}

.support-hub-tabs button.active,
.support-hub-tabs button:hover,
.support-hub-tabs button:focus-visible{
  background:rgba(201,162,75,.045);
}

.support-hub-tabs button.active{
  box-shadow:inset 0 -2px 0 rgba(201,162,75,.65);
}

.support-hub-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  padding:24px 24px 0;
}

.support-hub-head h3{
  margin-top:8px;
}

.support-hub-head p{
  margin-top:8px;
  color:var(--muted);
  font-size:.7rem;
  line-height:1.7;
}

.support-hub .support-inquiry-login-required{
  margin:20px 24px 24px;
}

.support-hub .support-inquiry-user-area{
  margin:20px 24px 24px;
}

.support-hub-view{
  padding:20px;
  border:1px solid rgba(255,255,255,.06);
  background:rgba(255,255,255,.008);
}

.support-hub-view[hidden],
#supportInquiryCreatePanel[hidden]{
  display:none;
}

.support-hub-view-copy{
  margin-top:10px;
  color:var(--muted);
  font-size:.68rem;
  line-height:1.7;
}

.support-inquiry-category-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:18px;
}

.support-inquiry-category-card{
  min-width:0;
  padding:18px;
  border:1px solid rgba(255,255,255,.06);
  background:#0b0e12;
}

.support-inquiry-category-head{
  padding-bottom:13px;
  border-bottom:1px solid rgba(255,255,255,.05);
}

.support-inquiry-category-head > span{
  color:var(--gold);
  font-size:.58rem;
  letter-spacing:.14em;
}

.support-inquiry-category-head h5{
  margin-top:6px;
  font-size:.92rem;
}

.support-inquiry-category-options{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
  margin-top:13px;
}

.support-inquiry-category-options button{
  min-height:39px;
  padding:8px 10px;
  border:1px solid rgba(255,255,255,.065);
  background:transparent;
  color:var(--muted);
  font-size:.66rem;
  text-align:left;
  cursor:pointer;
}

.support-inquiry-category-options button:hover,
.support-inquiry-category-options button:focus-visible,
.support-inquiry-category-options button.active{
  border-color:rgba(201,162,75,.34);
  background:rgba(201,162,75,.045);
  color:var(--gold2);
}

.support-inquiry-create{
  margin-top:16px;
}

.support-inquiry-selection{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:14px;
  border:1px solid rgba(201,162,75,.14);
  background:rgba(201,162,75,.025);
}

.support-inquiry-selection strong{
  display:block;
  margin-top:6px;
  font-size:.77rem;
}

.support-inquiry-list-category{
  color:var(--gold2);
  font-size:.6rem;
}

.support-inquiry-list-top{
  flex-wrap:wrap;
}

#supportInquiryMyDetailCategory,
#supportInquiryStaffDetailCategory{
  color:var(--gold2);
}

.support-hub .support-inquiry-staff-panel{
  margin:0 24px 24px;
}

@media(max-width:820px){
  .support-inquiry-category-grid{
    grid-template-columns:1fr;
  }

  .support-hub-tabs button{
    min-height:82px;
    padding:14px;
  }
}

@media(max-width:620px){
  .support-hub-tabs{
    grid-template-columns:1fr;
  }

  .support-hub-tabs button{
    min-height:64px;
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.055);
  }

  .support-hub-tabs button:last-child{
    border-bottom:0;
  }

  .support-hub-tabs button.active{
    box-shadow:inset 3px 0 0 rgba(201,162,75,.65);
  }

  .support-hub-head{
    flex-direction:column;
    align-items:stretch;
    padding:18px 14px 0;
  }

  .support-hub .support-inquiry-login-required,
  .support-hub .support-inquiry-user-area,
  .support-hub .support-inquiry-staff-panel{
    margin-left:14px;
    margin-right:14px;
  }

  .support-hub-view{
    padding:15px;
  }

  .support-inquiry-category-card{
    padding:14px;
  }

  .support-inquiry-category-options{
    grid-template-columns:1fr;
  }

  .support-inquiry-selection{
    align-items:stretch;
    flex-direction:column;
  }

  .support-inquiry-selection button{
    width:100%;
  }
}


/* ---------- SUPPORT FAQ v7.28 ---------- */
.support-faq-shell{
  border:1px solid rgba(255,255,255,.065);
  background:#0d1115;
}

.support-faq-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  padding:22px 24px;
  border-bottom:1px solid rgba(255,255,255,.06);
}

.support-faq-head h3{
  margin-top:8px;
}

.support-faq-head p{
  margin-top:8px;
  color:var(--muted);
  font-size:.7rem;
  line-height:1.7;
}

.support-faq-category-filter{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:16px 24px 0;
}

.support-faq-category-filter[hidden]{
  display:none;
}

.support-faq-category-filter button{
  min-height:34px;
  padding:7px 12px;
  border:1px solid rgba(255,255,255,.07);
  background:transparent;
  color:var(--muted);
  font-size:.64rem;
  cursor:pointer;
}

.support-faq-category-filter button:hover,
.support-faq-category-filter button:focus-visible,
.support-faq-category-filter button.active{
  border-color:rgba(201,162,75,.36);
  background:rgba(201,162,75,.05);
  color:var(--gold2);
}

.support-faq-list{
  padding:18px 24px 24px;
}

.support-faq-item{
  border-top:1px solid rgba(255,255,255,.065);
}

.support-faq-item:last-child{
  border-bottom:1px solid rgba(255,255,255,.065);
}

.support-faq-question{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:18px 4px;
  border:0;
  background:transparent;
  color:var(--text);
  text-align:left;
  cursor:pointer;
}

.support-faq-question-main{
  min-width:0;
  display:grid;
  gap:7px;
}

.support-faq-question-main strong{
  font-size:.78rem;
  font-weight:600;
  line-height:1.65;
}

.support-faq-item-meta{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  color:var(--faint);
  font-size:.58rem;
}

.support-faq-pin{
  color:var(--gold2);
}

.support-faq-toggle{
  flex:0 0 auto;
  color:var(--gold2);
  font-size:1.25rem;
  line-height:1;
}

.support-faq-answer{
  padding:0 4px 20px;
}

.support-faq-answer[hidden]{
  display:none;
}

.support-faq-answer p{
  padding:16px 18px;
  border-left:2px solid rgba(201,162,75,.28);
  background:rgba(255,255,255,.015);
  color:var(--muted);
  font-size:.7rem;
  line-height:1.9;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}

.support-faq-staff-panel{
  margin:0 24px 24px;
  padding:20px;
  border:1px solid rgba(255,255,255,.065);
  background:#0b0e12;
}

.support-faq-staff-toolbar{
  display:flex;
  justify-content:flex-end;
  margin:14px 0;
}

.support-faq-editor{
  margin-top:16px;
  padding:18px;
  border:1px solid rgba(201,162,75,.14);
  background:rgba(201,162,75,.025);
}

.support-faq-editor[hidden]{
  display:none;
}

.support-faq-editor-row{
  display:grid;
  grid-template-columns:auto auto minmax(120px,180px);
  align-items:center;
  gap:12px;
  margin-top:12px;
}

.support-faq-check{
  display:flex !important;
  align-items:center;
  gap:8px;
  margin:0 !important;
}

.support-faq-check input{
  width:auto !important;
}

.support-faq-admin-list{
  display:grid;
  gap:8px;
  margin-top:12px;
}

.support-faq-admin-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:14px;
  border:1px solid rgba(255,255,255,.06);
  background:rgba(255,255,255,.01);
}

.support-faq-admin-main{
  min-width:0;
  display:grid;
  gap:7px;
}

.support-faq-admin-main strong{
  font-size:.72rem;
  line-height:1.6;
}

.support-faq-admin-meta{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  color:var(--faint);
  font-size:.57rem;
}

.support-faq-status{
  color:var(--muted);
}

.support-faq-status.published{
  color:var(--gold2);
}

.support-faq-status.archived{
  opacity:.7;
}

.support-faq-admin-actions{
  flex:0 0 auto;
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  justify-content:flex-end;
}

@media(max-width:720px){
  .support-faq-head{
    flex-direction:column;
    align-items:stretch;
    padding:18px 14px;
  }

  .support-faq-category-filter,
  .support-faq-list{
    padding-left:14px;
    padding-right:14px;
  }

  .support-faq-staff-panel{
    margin-left:14px;
    margin-right:14px;
    padding:14px;
  }

  .support-faq-admin-item{
    flex-direction:column;
    align-items:stretch;
  }

  .support-faq-admin-actions{
    justify-content:flex-start;
  }

  .support-faq-editor-row{
    grid-template-columns:1fr;
  }
}


/* ---------- HOME HERO ARTWORK v7.30 ---------- */
@media(max-width:960px){
  .hero-media img{
    object-position:58% center;
  }

  .hero::before{
    background:
      linear-gradient(
        90deg,
        rgba(4,6,8,.92) 0%,
        rgba(4,6,8,.78) 38%,
        rgba(4,6,8,.28) 68%,
        rgba(4,6,8,.12) 100%
      ),
      linear-gradient(
        180deg,
        rgba(4,6,8,.34) 0%,
        rgba(4,6,8,.08) 38%,
        rgba(11,13,16,.90) 100%
      );
  }

  .hero-inner{
    width:min(700px,calc(100% - 72px));
    margin-left:clamp(28px,4vw,72px);
    padding-top:140px;
  }
}

@media(max-width:760px){
  .hero{
    min-height:92svh;
    align-items:flex-end;
  }

  .hero-media img{
    object-position:center 42%;
  }

  .hero::before{
    background:
      linear-gradient(
        180deg,
        rgba(4,6,8,.18) 0%,
        rgba(4,6,8,.10) 30%,
        rgba(4,6,8,.48) 56%,
        rgba(4,6,8,.92) 81%,
        rgba(11,13,16,.98) 100%
      ),
      linear-gradient(
        90deg,
        rgba(4,6,8,.38),
        rgba(4,6,8,.10) 55%,
        rgba(4,6,8,.18)
      );
  }

  .hero-inner{
    width:calc(100% - 36px);
    margin:0 18px;
    padding:360px 0 92px;
    text-align:left;
  }

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

  .hero h1{
    font-size:clamp(3rem,14vw,4.8rem);
  }

  .hero-eyebrow{
    font-size:.62rem;
    letter-spacing:.17em;
  }

  .hero-eyebrow::before{
    width:24px;
  }

  .tagline{
    margin-top:18px;
    font-size:1rem;
  }

  .hero-sub{
    font-size:.8rem;
  }

  .hero-ctas{
    margin-top:24px;
    gap:9px;
  }

  .hero-ctas .btn{
    min-width:0;
    flex:1 1 150px;
    padding:12px 16px;
  }

  .scroll-cue{
    display:none;
  }
}

@media(max-width:520px){
  .hero-inner{
    width:calc(100% - 36px);
    padding-top:330px;
    padding-bottom:74px;
  }

  .hero h1{
    font-size:3.15rem;
  }

  .hero-ctas{
    display:grid;
    grid-template-columns:1fr 1fr;
  }

  .hero-ctas .btn{
    width:100%;
  }
}

@media(prefers-reduced-motion:no-preference){
  .hero-media img{
    animation:heroArtworkDrift 18s ease-in-out infinite alternate;
  }
}

@keyframes heroArtworkDrift{
  from{transform:scale(1.005) translate3d(0,0,0)}
  to{transform:scale(1.035) translate3d(-.35%,.15%,0)}
}


/* ---------- HOME HERO LAYOUT v7.31 ---------- */
@media(min-width:1200px){
  .hero-inner{
    width:min(720px,calc(100% - 120px));
    margin-left:clamp(34px,4.4vw,92px);
  }

  .hero h1{
    font-size:clamp(4.6rem,6.7vw,7.2rem);
  }

  .hero-inner > *{
    max-width:620px;
  }
}

@media(min-width:1600px){
  .hero-inner{
    margin-left:clamp(44px,4.8vw,110px);
  }
}

/* ---------- NAV DISCORD BUTTON SIZE v7.33 ---------- */
/* Discord keeps its blue palette, but uses the same box size as Login. */
.account-btn,
.nav-discord-link{
  width:76px;
  height:36px;
  min-height:36px;
  padding:0;
  box-sizing:border-box;
  border-radius:2px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

.nav-discord-link{
  /* Keep the existing Discord color treatment. */
  border-color:rgba(88,101,242,.38);
  background:rgba(88,101,242,.08);
  color:#aeb5ff;
}

@media(max-width:1180px){
  .nav-discord-link{
    width:76px;
    height:36px;
    min-height:36px;
    padding:0;
  }
}


/* ---------- HOME NEWS LIVE PREVIEW v7.34 ---------- */
.home-news-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
}
.home-news-card,
.home-news-card-featured{
  min-height:0;
  grid-column:auto;
  padding:20px 22px;
}
.home-news-card-body{
  margin:16px 0 14px;
}
.home-news-card-body h3{
  font-size:1.08rem;
}
.home-news-card-body p{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin-top:7px;
}
.home-news-card-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding-top:12px;
  border-top:1px solid rgba(255,255,255,.06);
}
.home-news-card-footer .home-news-card-link{
  flex:0 0 auto;
  padding-top:0;
  border-top:0;
  gap:14px;
}
.home-news-date{
  color:var(--faint);
  font-size:.68rem;
  letter-spacing:.02em;
}
.home-news-state.is-live{
  border-color:rgba(201,162,75,.28);
  color:var(--gold2);
}
.home-news-state.is-empty{
  color:var(--faint);
}
.home-news-state.is-error{
  color:#c99898;
}
@media(max-width:620px){
  .home-news-card{
    min-height:0;
    padding:18px;
  }
  .home-news-card-footer{
    align-items:flex-start;
    flex-direction:column;
    gap:8px;
  }
}


/* ---------- HOME NEWS 2x2 + 5 POST PREVIEW v7.35 ---------- */
.home-news-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.home-news-card,
.home-news-card-featured{
  min-height:320px;
  grid-column:auto;
  display:flex;
  flex-direction:column;
  padding:22px 24px;
}
.home-news-items{
  display:grid;
  gap:0;
  margin:16px 0 18px;
  flex:1;
}
.home-news-preview-item{
  display:block;
  padding:14px 0;
  border-top:1px solid rgba(255,255,255,.06);
  color:inherit;
}
.home-news-preview-item:first-child{
  border-top:0;
  padding-top:4px;
}
.home-news-preview-item:hover strong,
.home-news-preview-item:focus-visible strong{
  color:var(--gold2);
}
.home-news-preview-item-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}
.home-news-preview-item strong{
  min-width:0;
  color:var(--text);
  font-size:1rem;
  line-height:1.45;
  transition:color .18s ease;
}
.home-news-preview-item .home-news-date{
  flex:0 0 auto;
  padding-top:2px;
}
.home-news-preview-item p{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin-top:7px;
  color:var(--muted);
  font-size:.72rem;
  line-height:1.7;
}
.home-news-preview-placeholder{
  padding:18px 0;
  color:var(--faint);
  font-size:.72rem;
  line-height:1.7;
}
.home-news-category-link{
  margin-top:auto;
  padding-top:13px;
  border-top:1px solid rgba(255,255,255,.06);
}
.character-row-id{
  display:none !important;
}
@media(max-width:760px){
  .home-news-grid{
    grid-template-columns:1fr;
  }
  .home-news-card,
  .home-news-card-featured{
    min-height:0;
  }
}
@media(max-width:520px){
  .home-news-preview-item-top{
    display:grid;
    gap:5px;
  }
}


/* ---------- HOME NEWS PREVIEW v7.36 ---------- */
.home-news-section > .wrap{
  max-width:1360px;
}
.home-news-grid{
  gap:16px;
}
.home-news-card,
.home-news-card-featured{
  min-height:350px;
  padding-left:26px;
  padding-right:26px;
}
.home-news-items{
  align-content:start;
}
.home-news-preview-item{
  display:flex;
  align-items:center;
  min-height:48px;
  padding:12px 0;
  text-decoration:none;
}
.home-news-preview-item:first-child{
  padding-top:8px;
}
.home-news-preview-item strong{
  display:block;
  width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--text);
  font-size:.98rem;
  line-height:1.5;
}
.home-news-preview-item-top,
.home-news-preview-item p,
.home-news-preview-item .home-news-date{
  display:none !important;
}
@media(max-width:980px){
  .home-news-section > .wrap{
    max-width:var(--max);
  }
}


/* ---------- HOME NEWS STACKED v7.37 ---------- */
.home-news-grid{
  grid-template-columns:1fr !important;
  gap:16px;
}

.home-news-card,
.home-news-card-featured{
  grid-column:auto !important;
  min-height:0;
  width:100%;
  padding:22px 28px;
}

.home-news-items{
  margin:14px 0 16px;
}

.home-news-preview-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:24px;
  min-height:46px;
  padding:11px 0;
}

.home-news-preview-item strong{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.home-news-preview-item .home-news-date{
  display:block !important;
  flex:0 0 auto;
  padding:0;
  color:var(--faint);
  font-size:.7rem;
  white-space:nowrap;
}

.home-news-preview-item-top,
.home-news-preview-item p{
  display:none !important;
}

@media(max-width:640px){
  .home-news-card,
  .home-news-card-featured{
    padding:20px 18px;
  }

  .home-news-preview-item{
    grid-template-columns:1fr;
    gap:4px;
    align-items:start;
  }

  .home-news-preview-item .home-news-date{
    font-size:.65rem;
  }
}


/* ---------- HOME NEWS COMPACT v7.39 ---------- */
/* 홈페이지 #home의 새소식 카드만 조금 더 조밀하게 */
.home-news-card,
.home-news-card-featured{
  padding:18px 24px;
}

.home-news-card-top{
  margin-bottom:4px;
}

.home-news-type{
  font-size:.72rem;
}

.home-news-state{
  font-size:.62rem;
}

.home-news-items{
  margin:9px 0 11px;
}

.home-news-preview-item{
  min-height:38px;
  padding:7px 0;
  gap:20px;
}

.home-news-preview-item strong{
  font-size:.84rem;
  line-height:1.4;
}

.home-news-preview-item .home-news-date{
  font-size:.64rem;
}

.home-news-category-link{
  min-height:34px;
  padding-top:10px;
  font-size:.68rem;
}

@media(max-width:640px){
  .home-news-card,
  .home-news-card-featured{
    padding:16px 16px;
  }

  .home-news-preview-item{
    min-height:0;
    padding:7px 0;
    gap:3px;
  }

  .home-news-preview-item strong{
    font-size:.82rem;
  }

  .home-news-preview-item .home-news-date{
    font-size:.62rem;
  }
}
