/* Local Fonts */
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("/assets/fonts/inter-latin.woff2") format("woff2");
}

@font-face {
  font-family: "Oxanium";
  font-style: normal;
  font-weight: 500 800;
  font-display: swap;
  src: url("/assets/fonts/oxanium-latin.woff2") format("woff2");
}

:root{
  --bg:#080808;
  --surface:#111111;
  --surface-2:#181818;
  --border:rgba(255,255,255,.12);
  --text:#f5f5f5;
  --muted:#969696;
  --green:#f2f2f2;
  --green-dark:#c8c8c8;
  --afk:#a8a8a8;
  --red:#858585;
  --container:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,sans-serif;line-height:1.5}
button,a{font:inherit}a{color:inherit;text-decoration:none}button{border:0;cursor:pointer}
.container{width:min(var(--container),calc(100% - 48px));margin:0 auto}
.site-header{position:sticky;top:0;z-index:50;min-height:76px;background:rgba(8,12,12,.82);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--border)}
.header-inner{height:76px;display:flex;align-items:center;gap:28px}
.brand{font:800 25px/1 Oxanium,sans-serif;letter-spacing:-.03em}.brand span{color:var(--green)}
.desktop-nav{display:flex;gap:24px;margin-left:auto;text-transform:uppercase;font-size:12px;font-weight:800;letter-spacing:.08em}.desktop-nav a{color:#9aa4a1}.desktop-nav a:hover,.desktop-nav a.active{color:#fff}.desktop-nav a:focus-visible,.mobile-nav a:focus-visible,.brand:focus-visible,.menu-toggle:focus-visible{outline:2px solid var(--green);outline-offset:4px;border-radius:3px}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border-radius:8px;text-transform:uppercase;font-size:12px;font-weight:800;letter-spacing:.06em;transition:.18s ease}.button-primary{background:var(--green);color:#10160b;box-shadow:0 10px 30px rgba(165,223,70,.15)}.button-primary:hover{transform:translateY(-1px);background:#b2eb55}.button:focus-visible{outline:2px solid #fff;outline-offset:3px}.button-large{min-height:54px;padding:0 24px}.full{width:100%}.header-join{margin-left:4px;min-width:140px}
.menu-toggle{display:none;margin-left:auto;background:none;color:#fff;font-size:25px}.mobile-nav{display:none}
.hero{position:relative;min-height:700px;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.hero-bg,.hero-shade{display:none}
.hero-layout{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) 390px;align-items:center;gap:70px;padding-top:46px}.hero-copy{max-width:720px}.kicker,.eyebrow{margin:0;color:var(--green);font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.hero h1{margin:12px 0 18px;font:800 clamp(56px,7vw,96px)/.94 Oxanium,sans-serif;letter-spacing:-.05em;text-transform:uppercase}.hero h1 span{color:var(--green)}.hero-lead{max-width:620px;margin:0;color:#c5ccca;font-size:18px}
.status-dot{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 12px rgba(165,223,70,.55)}.status-dot.afk{background:var(--afk);box-shadow:0 0 12px rgba(244,201,111,.45)}.status-dot.offline{background:var(--red);box-shadow:0 0 12px rgba(234,98,98,.35)}
.section{padding:100px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:36px}.section-head.compact{align-items:center}.section-head h2{margin:7px 0 0;font-size:clamp(30px,4vw,48px);line-height:1.02;letter-spacing:-.04em}.section-intro{max-width:420px;margin:0;color:var(--muted);font-size:14px}
.section-players{background:#080c0c}.live-state{display:flex;align-items:center;gap:8px;color:#85908d;font-size:11px;font-weight:700}
.site-footer{border-top:1px solid var(--border)}.footer-inner{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#697370;font-size:11px}.footer-brand{font:800 20px Oxanium,sans-serif;color:#fff}.footer-brand span{color:var(--green)}.footer-meta strong{color:#aab2af}
.toast{position:fixed;left:50%;bottom:24px;z-index:100;transform:translate(-50%,20px);opacity:0;pointer-events:none;padding:11px 14px;border-radius:8px;background:#edf7e4;color:#18220f;font-size:12px;font-weight:800;box-shadow:0 15px 35px rgba(0,0,0,.35);transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:980px){.site-header{min-height:68px}.header-inner{height:68px}.desktop-nav,.header-join{display:none}.menu-toggle{display:block}.mobile-nav{position:absolute;top:68px;left:14px;right:14px;padding:10px;display:none;flex-direction:column;background:rgba(9,13,13,.98);border:1px solid var(--border);border-radius:10px;box-shadow:0 20px 50px rgba(0,0,0,.4)}.mobile-nav.open{display:flex}.mobile-nav a{padding:13px 12px;color:#a9b2af;text-transform:uppercase;font-size:11px;font-weight:800;letter-spacing:.08em}.mobile-nav a:hover,.mobile-nav a.active{color:var(--green)}.mobile-nav .button{margin-top:8px}}
@media(max-width:760px){.container{width:min(100% - 28px,var(--container))}.section{padding:76px 0}.section-head{display:block;margin-bottom:28px}.section-intro{margin-top:15px}.footer-inner{min-height:120px;flex-direction:column;justify-content:center;text-align:center}}

/* V10 unified player table */
.section-players{padding-bottom:78px}
.players-table-shell{
  border:1px solid var(--border);
  border-radius:12px;
  background:#0d1313;
  overflow:hidden;
}
.players-table{width:100%}
.players-table-head,
.player-stat-row{
  display:grid;
  grid-template-columns:
    minmax(220px,1.65fr)
    100px
    minmax(100px,.9fr)
    minmax(75px,.6fr)
    minmax(135px,1fr)
    90px
    minmax(130px,1fr)
    minmax(145px,1fr);
  align-items:center;
}
.players-table-head{
  min-height:48px;
  border-bottom:1px solid var(--border);
  background:#101717;
}
.player-sort{
  appearance:none;
  -webkit-appearance:none;
  width:100%;
  height:48px;
  padding:0 16px;
  margin:0;
  border:0;
  border-radius:0;
  background:transparent !important;
  color:#68736f;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:7px;
  font:800 8px/1 Inter,system-ui,sans-serif;
  letter-spacing:.11em;
  text-align:left;
  min-width:0;
}
.player-sort:hover,.player-sort.active{color:#eef2ef}
.player-sort:focus-visible,.inactive-toggle:focus-visible{
  outline:2px solid var(--green);
  outline-offset:-2px;
}
.sort-indicator{color:var(--green);font-size:10px;min-width:10px}
.player-sort > span:first-child{white-space:normal;line-height:1.25}

.player-stat-row{
  min-height:72px;
  border-bottom:1px solid rgba(255,255,255,.06);
  transition:background .15s ease;
}
.player-stat-row:last-child{border-bottom:0}
.player-stat-row:hover{background:#111918}
.player-stat-player,.player-stat-cell{
  min-width:0;
  padding:0 16px;
}
.player-stat-player{
  display:flex;
  align-items:center;
  gap:11px;
  color:#e2e7e4;
  font-size:12px;
  font-weight:700;
}
.player-stat-avatar{
  width:34px;
  height:34px;
  flex:0 0 34px;
  border-radius:6px;
  background:#171d1d;
  object-fit:cover;
  image-rendering:pixelated;
}
.player-stat-cell{
  color:#abb5b1;
  font-size:11px;
  white-space:nowrap;
}
.player-stat-status{
  display:flex;
  align-items:center;
  gap:7px;
  color:#a5df46;
  font-size:9px;
  font-weight:800;
  letter-spacing:.08em;
}
.player-stat-status.offline{color:#68736f}
.player-stat-status.afk{color:var(--afk)}
.player-stat-status .status-dot{width:6px;height:6px}
.player-stat-status.offline .status-dot{background:#68736f}
.player-table-empty{
  padding:42px 20px;
  text-align:center;
  color:var(--muted);
  font-size:12px;
}
.inactive-toggle{
  appearance:none;
  -webkit-appearance:none;
  width:100%;
  min-height:52px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  padding:0 16px;
  border:0;
  border-top:1px solid var(--border);
  background:#0f1616 !important;
  color:#697570;
  font:800 9px/1 Inter,system-ui,sans-serif;
  letter-spacing:.11em;
  text-align:left;
  cursor:pointer;
}
.inactive-toggle:hover{color:#eef2ef;background:#111918 !important}
.inactive-toggle-label{display:flex;align-items:center;gap:9px}
.inactive-chevron{
  display:grid;
  place-items:center;
  width:20px;
  height:20px;
  border:1px solid rgba(165,223,70,.22);
  border-radius:5px;
  color:var(--green);
  font-size:15px;
  font-weight:400;
  transition:transform .18s ease;
}
.inactive-toggle[aria-expanded="true"] .inactive-chevron{transform:rotate(45deg)}
.inactive-count{
  min-width:22px;
  height:22px;
  display:grid;
  place-items:center;
  padding:0 7px;
  border-radius:11px;
  background:rgba(165,223,70,.08);
  color:#9eaf9c;
  font-size:9px;
}
.inactive-group{background:#0d1313}

@media(max-width:1180px){
  .players-table-head,
  .player-stat-row{
    grid-template-columns:
      minmax(190px,1.5fr)
      90px
      95px
      65px
      115px
      70px
      120px
      130px;
  }
  .player-stat-player,.player-stat-cell{padding:0 12px}
  .player-sort{padding:0 12px}
}

@media(max-width:760px){
  .section-players{padding-bottom:64px}
  .players-table-shell{border-radius:10px}
  .players-table-head{display:none}
  .player-stat-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    min-height:0;
    padding:7px 0;
    border-bottom:1px solid var(--border);
  }
  .player-stat-player{
    grid-column:1 / -1;
    padding:12px 15px 13px;
  }
  .player-stat-avatar{width:32px;height:32px;flex-basis:32px}
  .player-stat-cell{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:9px 15px;
    border-top:1px solid rgba(255,255,255,.045);
    font-size:10px;
    white-space:normal;
    text-align:right;
  }
  .player-stat-cell::before{
    content:attr(data-label);
    color:#68736f;
    flex:0 0 auto;
    font-size:7px;
    font-weight:800;
    letter-spacing:.1em;
    text-align:left;
  }
  .player-stat-status{font-size:9px}
  .player-stat-status::before{display:none}
  .inactive-toggle{min-height:50px;padding:0 14px}
  .player-table-empty{padding:38px 15px}
}


/* Player table links and profile system */
.players-section-actions{display:flex;align-items:center;gap:22px}.section-action{display:inline-flex;align-items:center;gap:8px;color:var(--green);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.section-action span{font-size:15px}.player-stat-row-link{display:grid;text-decoration:none;color:inherit;cursor:pointer}.player-stat-row-link:hover{background:#121b18}.player-stat-row-link:focus-visible{outline:2px solid var(--green);outline-offset:-2px}.player-table-empty{width:100%;box-sizing:border-box;text-align:center}

/* Player Profiles */
.profiles-hero {
  position:relative;
  overflow:hidden;
  background:radial-gradient(circle at 78% 45%,rgba(165,223,70,.12),transparent 23%),linear-gradient(120deg,#0a0f0f,#101817 58%,#0a0f0f);
  border-bottom:1px solid var(--border)
}
.profile-hero-inner {
  min-height:420px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;
  padding:90px 0 80px
}
.profiles-hero h1 {
  margin:12px 0 16px;
  font:800 clamp(58px,8vw,102px)/.9 Oxanium,sans-serif;
  letter-spacing:-.05em;
  text-transform:uppercase
}
.profiles-hero h1 span {
  color:var(--green)
}
.profiles-hero p:not(.eyebrow) {
  max-width:480px;
  margin:0;
  color:#9da7a3;
  font-size:15px
}
.profile-hero-mark {
  font:800 clamp(28px,4vw,52px)/.88 Oxanium,sans-serif;
  color:rgba(255,255,255,.06);
  letter-spacing:-.03em;
  text-align:right
}
.profiles-section {
  background:#080c0c
}
.profile-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px
}
.profile-card {
  position:relative;
  min-height:255px;
  padding:20px;
  border:1px solid var(--border);
  border-radius:12px;
  background:linear-gradient(145deg,#111919,#0d1313);
  text-decoration:none;
  color:inherit;
  overflow:hidden;
  transition:transform .18s ease,border-color .18s ease,background .18s ease
}
.profile-card:hover {
  transform:translateY(-3px);
  border-color:rgba(165,223,70,.3);
  background:#121a18
}
.profile-card::after {
  content:"";
  position:absolute;
  width:180px;
  height:180px;
  right:-70px;
  bottom:-70px;
  background:radial-gradient(circle,rgba(165,223,70,.09),transparent 68%);
  pointer-events:none
}
.profile-card-top {
  display:flex;
  align-items:center;
  justify-content:space-between;
  color:#68736f;
  font-size:9px;
  font-weight:800;
  letter-spacing:.1em
}
.profile-status {
  display:inline-flex;
  align-items:center;
  gap:7px
}
.profile-status.online {
  color:var(--green)
}
.profile-status.afk {
  color:var(--afk)
}
.profile-status.offline {
  color:#68736f
}
.profile-status .status-dot {
  width:6px;
  height:6px
}
.profile-status.offline .status-dot {
  background:#68736f
}
.profile-card-arrow {
  font-size:16px;
  color:#68736f;
  transition:transform .18s ease,color .18s ease
}
.profile-card:hover .profile-card-arrow {
  transform:translate(2px,-2px);
  color:var(--green)
}
.profile-card-main {
  display:flex;
  align-items:center;
  gap:16px;
  margin-top:34px
}
.profile-card-avatar {
  width:76px;
  height:76px;
  object-fit:cover;
  border-radius:9px;
  background:#171d1d;
  image-rendering:pixelated
}
.profile-card h3 {
  margin:0;
  font:800 26px/1 Oxanium,sans-serif;
  letter-spacing:-.03em
}
.profile-card-main > div > span {
  display:block;
  margin-top:8px;
  color:#74807c;
  font-size:10px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase
}
.profile-card-stats {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
  margin-top:28px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.07)
}
.profile-card-stats span {
  display:block;
  color:#68736f;
  font-size:7px;
  font-weight:800;
  letter-spacing:.1em
}
.profile-card-stats strong {
  display:block;
  margin-top:4px;
  color:#dce3df;
  font-size:11px
}
.profile-loading,.profile-error {
  padding:70px 20px;
  text-align:center;
  color:#7f8a86;
  font-size:13px;
  border:1px dashed rgba(255,255,255,.08);
  border-radius:12px;
  grid-column:1/-1
}
.profile-detail-hero {
  position:relative;
  overflow:hidden;
  background:linear-gradient(120deg,#0a0f0f,#101716 56%,#0b110f);
  border-bottom:1px solid var(--border)
}
.profile-detail-hero>.container {
  position:relative
}
.back-link {
  display:inline-flex;
  margin-top:30px;
  color:#7f8a86;
  font-size:10px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase
}
.back-link:hover {
  color:#fff
}
.profile-header {
  min-height:520px;
  display:grid;
  grid-template-columns:1.1fr .9fr;
  align-items:center;
  gap:30px;
  padding:50px 0 60px
}
.profile-identity {
  display:flex;
  align-items:center;
  gap:20px
}
.profile-avatar-large {
  width:84px;
  height:84px;
  border-radius:10px;
  object-fit:cover;
  image-rendering:pixelated;
  background:#171d1d
}
.profile-identity h1 {
  margin:8px 0 12px;
  font:800 clamp(48px,7vw,86px)/.92 Oxanium,sans-serif;
  letter-spacing:-.05em;
  text-transform:uppercase
}
.profile-presence {
  display:flex;
  align-items:center;
  gap:8px;
  color:#9ba5a1;
  font-size:10px;
  font-weight:800;
  letter-spacing:.1em
}
.profile-presence.afk {
  color:var(--afk)
}
.profile-presence .status-dot {
  width:7px;
  height:7px
}
.profile-ping {
  padding-left:8px;
  margin-left:3px;
  border-left:1px solid var(--border);
  color:#67726f
}
.profile-model-wrap {
  position:relative;
  min-height:430px;
  display:flex;
  align-items:center;
  justify-content:center
}
.model-glow {
  position:absolute;
  width:330px;
  height:330px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(165,223,70,.14),rgba(165,223,70,0) 68%);
  filter:blur(4px)
}
.profile-model {
  position:relative;
  z-index:1;
  max-width:min(100%,430px);
  max-height:470px;
  width:auto;
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 30px 40px rgba(0,0,0,.42))
}
.profile-detail-section {
  background:#080c0c
}
.profile-stats-head {
  margin-bottom:28px
}
.profile-stat-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px
}
.profile-stat-card {
  position:relative;
  min-height:118px;
  padding:20px;
  border:1px solid var(--border);
  border-radius:10px;
  background:#0e1414;
  overflow:hidden
}
.profile-stat-card span {
  display:block;
  max-width:calc(100% - 48px);
  color:#68736f;
  font-size:8px;
  font-weight:800;
  letter-spacing:.12em;
  line-height:1.35
}
.profile-stat-card strong {
  display:block;
  margin-top:18px;
  color:#eef2ef;
  font:800 28px/1 Oxanium,sans-serif;
  letter-spacing:-.03em
}
.profile-stat-icon {
  position:absolute;
  top:14px;
  right:15px;
  width:44px;
  height:44px;
  object-fit:contain;
  image-rendering:pixelated;
  filter:drop-shadow(0 7px 7px rgba(0,0,0,.42));
  opacity:.92
}
.profile-meta-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin-top:12px
}
.profile-meta-grid>div {
  padding:18px 20px;
  border:1px solid var(--border);
  border-radius:10px;
  background:#0b1111
}
.profile-meta-grid span {
  display:block;
  color:#68736f;
  font-size:8px;
  font-weight:800;
  letter-spacing:.1em
}
.profile-meta-grid strong {
  display:block;
  margin-top:8px;
  color:#b7c0bd;
  font-size:11px
}
.uuid-text {
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
  font-size:9px!important;
  word-break:break-all
}
@media(max-width:980px) {
  .profile-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .profile-header {
    grid-template-columns:1fr .8fr
  }
  .profile-stat-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .profile-meta-grid {
    grid-template-columns:1fr
  }
}
@media(max-width:760px) {
  .players-section-actions {
    display:block
  }
  .players-section-actions .section-action {
    margin-top:13px
  }
  .profile-grid {
    grid-template-columns:1fr
  }
  .profile-hero-inner {
    min-height:360px;
    padding:74px 0 65px
  }
  .profile-hero-mark {
    display:none
  }
  .profiles-hero h1 {
    font-size:clamp(54px,15vw,76px)
  }
  .profile-header {
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:12px;
    padding-top:38px
  }
  .profile-identity {
    align-items:flex-start
  }
  .profile-avatar-large {
    width:64px;
    height:64px
  }
  .profile-model-wrap {
    min-height:370px
  }
  .profile-model {
    max-height:390px;
    max-width:90%
  }
  .profile-stat-grid {
    grid-template-columns:1fr 1fr
  }
  .profile-stat-card strong {
    font-size:23px
  }
  .profile-stat-icon {
    top:15px;
    right:14px;
    width:38px;
    height:38px
  }
  .profile-meta-grid {
    grid-template-columns:1fr
  }
  .back-link {
    margin-top:20px
  }
}

/* Homepage hero and live map */

#home.hero {
  min-height:560px;
}

#home .hero-layout {
  grid-template-columns:minmax(0,.9fr) minmax(480px,1.1fr);
  gap:48px;
  padding-top:18px;
}

#home .hero-copy {
  max-width:620px;
}

#home.hero h1 {
  margin:10px 0 13px;
  font-size:clamp(46px,5.4vw,76px);
  line-height:.95;
}

#home .hero-lead {
  font-size:16px;
}

#home .hero-map {
  width:100%;
  height:410px;

  overflow:hidden;

  border:1px solid rgba(255,255,255,.11);
  border-radius:14px;

  background:#0b100d;

  box-shadow:
    0 30px 80px rgba(0,0,0,.32);
}

#home .hero-map .map-frame {
  display:block;

  width:100%;
  height:100%;

  min-height:0;

  border:0;

  background:#0b100d;
}


/* Tablet */

@media(max-width:980px) {

  #home .hero-layout {
    grid-template-columns:minmax(0,1fr) minmax(390px,.9fr);
    gap:32px;
  }

  #home .hero-map {
    height:370px;
  }

}


/* Mobile */

@media(max-width:760px) {

  #home.hero {
    min-height:auto;
    padding:48px 0;
  }

  #home .hero-layout {
    display:flex;
    flex-direction:column;
    gap:28px;
  }

  #home.hero h1 {
    margin:9px 0 12px;
    font-size:clamp(43px,13vw,62px);
  }

  #home .hero-map {
    height:340px;
  }

}


/* =========================================================
   Compact public player stats table
   Player / Status / Playtime / Deaths / Totems Used /
   Travelled Distance / Diamonds / Joins / Last Seen
   ========================================================= */

/* Remove horizontal table scrolling */
.players-table-shell {
  overflow:hidden !important;
}

.players-table {
  width:100% !important;
  min-width:0 !important;
}


/* Nine desktop columns: player plus the eight selected overview statistics. */
.players-table-head,
.player-stat-row {
  grid-template-columns:
    minmax(170px,1.55fr)
    minmax(70px,.65fr)
    minmax(85px,.8fr)
    minmax(65px,.55fr)
    minmax(110px,1fr)
    minmax(105px,.95fr)
    minmax(115px,1fr)
    minmax(80px,.7fr)
    minmax(90px,.75fr)
    !important;
}


/* Slightly tighten the table below large desktop sizes */
@media(max-width:1180px) {

  .players-table {
    min-width:0 !important;
  }

  .players-table-head,
  .player-stat-row {
    grid-template-columns:
      minmax(150px,1.45fr)
      minmax(65px,.6fr)
      minmax(80px,.75fr)
      minmax(60px,.5fr)
      minmax(100px,.9fr)
      minmax(95px,.85fr)
      minmax(105px,.95fr)
      minmax(75px,.65fr)
      minmax(80px,.7fr)
      !important;
  }
}


/* Keep the existing stacked mobile presentation */
@media(max-width:760px) {

  .players-table {
    min-width:0 !important;
  }

  .player-stat-row {
    grid-template-columns:1fr 1fr !important;
  }

}


/* =========================================================
   Compact Profiles page hero
   ========================================================= */

.profiles-hero .profile-hero-inner {
  min-height:270px;
  padding:46px 0 38px;
}

.profiles-hero h1 {
  margin:8px 0 14px;
  font-size:clamp(44px,5vw,64px);
  line-height:.94;
}

.profiles-hero p:last-child {
  margin-top:0;
  max-width:520px;
}

/* Reduce distance between hero and profile grid section */
.profiles-hero + section {
  padding-top:54px;
}


/* Mobile */
@media(max-width:760px) {

  .profiles-hero .profile-hero-inner {
    min-height:230px;
    padding:38px 0 32px;
  }

  .profiles-hero h1 {
    font-size:clamp(42px,12vw,58px);
  }

  .profiles-hero + section {
    padding-top:42px;
  }

}


/* Larger back button on player profiles */
.profile-detail-hero .back-link {
  display:inline-flex;
  align-items:center;
  justify-content:center;

  min-height:46px;
  padding:0 18px;

  border:1px solid rgba(255,255,255,.12);
  border-radius:8px;

  background:rgba(255,255,255,.035);

  font-size:12px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;

  transition:
    background .18s ease,
    border-color .18s ease;
}

.profile-detail-hero .back-link:hover {
  background:rgba(255,255,255,.07);
  border-color:rgba(255,255,255,.2);
}


/* Homepage map stays clickable while its iframe remains display-only. */

#home .hero-map {
  position: relative;
  pointer-events: auto !important;
  touch-action: pan-y !important;
}

/* The actual map never receives touch/mouse input */
#home .hero-map .map-frame,
#home .hero-map iframe {
  pointer-events: none !important;
}

/* Transparent normal HTML layer above the iframe.
   Vertical swipes here belong to the website, not the map. */
#home .hero-map::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 10;
  background: transparent;
  pointer-events: auto;
  touch-action: pan-y;
}

/* Website rank badges */
.rank-badge {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  height:20px;
  padding:0 7px;
  border:1px solid currentColor;
  border-radius:5px;
  font:800 8px/1 Oxanium,Inter,system-ui,sans-serif;
  letter-spacing:.11em;
  text-transform:uppercase;
  white-space:nowrap;
}

.rank-badges {
  display:inline-flex;
  align-items:center;
  flex-wrap:wrap;
  gap:5px;
  min-width:0;
  max-width:100%;
  margin:0;
  color:inherit;
}

.rank-badge-iron {
  color:#b8b8b8;
  background:rgba(184,184,184,.08);
  box-shadow:0 0 14px rgba(184,184,184,.06);
}

.rank-badge-gold {
  color:#FFFF55;
  background:rgba(255,255,85,.08);
  box-shadow:0 0 14px rgba(255,255,85,.08);
}

.rank-badge-diamond {
  color:#55FFFF;
  background:rgba(85,255,255,.08);
  box-shadow:0 0 16px rgba(85,255,255,.10);
}

.rank-badge-custom {
  color:#ff8df4;
  background:rgba(255,141,244,.08);
  box-shadow:0 0 16px rgba(255,141,244,.10);
}

.rank-badge-playtime_top {
  color:#e8bdff;
  border-color:#d77bff;
  background:linear-gradient(110deg,rgba(255,199,72,.13),rgba(160,91,255,.13),rgba(67,229,255,.11));
  box-shadow:0 0 18px rgba(193,113,255,.15);
}

/* Homepage player table */
.player-stat-identity {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:5px;
  min-width:0;
}

.player-stat-identity .player-name {
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

/* Profiles overview cards */
.profile-card-name-row {
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}

.profile-card-name-row h3 {
  margin-right:0;
}

.profile-card-name-row .rank-badges {
  margin-top:0;
}

/* Individual profile */
.profile-name-row {
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}

.profile-name-row .rank-badge {
  height:24px;
  padding:0 9px;
  font-size:9px;
  border-radius:6px;
}

@media(max-width:760px) {
  .profile-name-row {
    gap:9px;
  }
}

/* Compact badges on profile tiles */
.profile-card-main .profile-card-name-row .rank-badge {
  height:19px;
  margin:0;
  padding:0 7px;
  font-size:8px;
  line-height:19px;
  letter-spacing:.07em;
}

.profile-card-main .profile-card-name-row .rank-badges,
.profile-card-main .profile-card-name-row .rank-badges > span {
  margin-top:0;
}

/* Mobile player profile */
@media (max-width: 600px) {
    .profile-identity {
        align-items: flex-start;
        gap: 14px;
        width: 100%;
    }

    .profile-avatar-large {
        width: 64px;
        height: 64px;
        flex: 0 0 64px;
    }

    .profile-identity > div {
        flex: 1 1 auto;
        min-width: 0;
        max-width: 100%;
    }

    .profile-name-row {
        display: flex !important;
        flex-direction: column;
        align-items: flex-start;
        gap: 6px !important;
        width: 100%;
        min-width: 0;
    }

    .profile-name-row > h1 {
        display: block;
        width: 100%;
        max-width: 100%;
        min-width: 0;
        margin: 6px 0 4px !important;
        font: 800 clamp(18px, 5.5vw, 24px)/1 Oxanium, sans-serif !important;
        letter-spacing: -.05em;
        white-space: nowrap;
        text-transform: uppercase;
    }

    .profile-name-row .rank-badge {
        flex-shrink: 0;
    }
}

@media (max-width: 600px) {
    .profile-header {
        min-height: 0 !important;
        padding: 28px 0 30px !important;
        gap: 12px !important;
    }

    .profile-model-wrap {
        min-height: 220px !important;
        height: 220px !important;
    }

    .profile-model {
        max-width: min(64%, 250px) !important;
        max-height: 240px !important;
    }

    .model-glow {
        width: 180px !important;
        height: 180px !important;
    }
}

/* Match individual player profiles to the shared compact subpage hero. */
.profile-detail-hero > .container {
    min-height: 270px;
}

.profile-detail-hero .back-link {
    position: absolute;
    top: 22px;
    left: 0;
    margin-top: 0;
}

.profile-detail-hero .profile-header {
    min-height: 270px;
    padding: 62px 0 22px;
}

.profile-detail-hero .profile-model-wrap {
    min-height: 0;
    height: 186px;
}

.profile-detail-hero .profile-model {
    max-width: min(100%, 260px);
    max-height: 210px;
}

.profile-detail-hero .model-glow {
    width: 220px;
    height: 220px;
}

@media (max-width: 760px) {
    .profile-detail-hero > .container {
        min-height: 230px;
    }

    .profile-detail-hero .back-link {
        top: 16px;
        min-height: 40px;
        padding: 0 14px;
    }

    .profile-detail-hero .profile-header {
        min-height: 230px !important;
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(86px, .42fr);
        align-items: center;
        gap: 8px !important;
        padding: 70px 0 15px !important;
    }

    .profile-detail-hero .profile-identity {
        gap: 10px;
    }

    .profile-detail-hero .profile-avatar-large {
        width: 56px;
        height: 56px;
        flex-basis: 56px;
    }

    .profile-detail-hero .profile-identity h1 {
        font-size: clamp(22px, 6vw, 36px);
    }

    .profile-detail-hero .profile-model-wrap {
        min-height: 145px !important;
        height: 145px !important;
    }

    .profile-detail-hero .profile-model {
        max-width: 100% !important;
        max-height: 160px !important;
    }

    .profile-detail-hero .model-glow {
        width: 140px !important;
        height: 140px !important;
    }
}

/* Custom achievements */
.achievement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.achievement-card{min-height:255px;padding:20px;border:1px solid var(--border);border-radius:12px;background:linear-gradient(145deg,#111919,#0d1313);overflow:hidden}
.achievement-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#68736f;font-size:9px;font-weight:800;letter-spacing:.1em}
.achievement-target{color:var(--green)}
.achievement-card-main{display:flex;align-items:center;gap:16px;margin-top:30px}
.achievement-mark{display:grid;place-items:center;width:70px;height:70px;flex:0 0 70px;border:1px solid rgba(165,223,70,.3);border-radius:9px;background:radial-gradient(circle at 40% 30%,rgba(165,223,70,.24),rgba(165,223,70,.04));color:var(--green);font:800 34px/1 Oxanium,sans-serif;box-shadow:0 14px 30px rgba(0,0,0,.2)}
.achievement-card h3{margin:0;font:800 26px/1 Oxanium,sans-serif;letter-spacing:-.03em}
.achievement-card p{margin:8px 0 0;color:#88938f;font-size:11px}
.achievement-card-progress{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-top:27px;padding-top:17px;border-top:1px solid rgba(255,255,255,.07)}
.achievement-card-progress>div>span:first-child{display:block;color:#68736f;font-size:7px;font-weight:800;letter-spacing:.1em}
.achievement-card-progress strong{display:block;margin-top:4px;color:#dce3df;font-size:12px}
.achievement-players{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}
.achievement-player{display:flex;align-items:center;gap:5px;padding:3px 6px 3px 3px;border-radius:6px;background:#151d1c;color:#aeb8b4;font-size:8px}
.achievement-player:hover{color:var(--green)}
.achievement-player img{width:22px;height:22px;border-radius:4px;image-rendering:pixelated}
.achievement-nobody{color:#68736f;font-size:9px}
.profile-achievement-trigger{text-align:left;color:inherit;cursor:pointer;transition:border-color .18s ease,background .18s ease}
.profile-achievement-trigger:hover,.profile-achievement-trigger:focus-visible{border-color:rgba(165,223,70,.35);background:#121a18;outline:none}
.profile-achievement-trigger small{display:block;margin-top:9px;color:var(--green);font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.profile-achievement-details{margin-top:12px;padding:24px;border:1px solid rgba(165,223,70,.2);border-radius:12px;background:#0d1412}
.profile-achievement-details-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px}
.profile-achievement-details-head h3{margin:5px 0 0;font:800 27px/1 Oxanium,sans-serif}
.profile-achievement-details-head a{color:var(--green);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.profile-achievement-item{display:flex;align-items:center;gap:14px;padding:14px;border:1px solid var(--border);border-radius:9px;background:#101716}
.profile-achievement-item .achievement-mark{width:46px;height:46px;flex-basis:46px;font-size:21px}
.profile-achievement-item div strong{display:block;font:800 17px/1 Oxanium,sans-serif}
.profile-achievement-item div span{display:block;margin-top:5px;color:#85908c;font-size:10px}
.achievement-complete{margin-left:auto;color:var(--green);font-size:8px;font-weight:800;letter-spacing:.09em}
.profile-achievement-empty{margin:0;color:#7f8a86;font-size:12px}
@media(max-width:980px){.achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.achievement-grid{grid-template-columns:1fr}.profile-achievement-details{padding:18px}.profile-achievement-details-head{align-items:flex-start;flex-direction:column}.achievement-complete{display:none}.achievement-card-progress{align-items:flex-start;flex-direction:column}.achievement-players{justify-content:flex-start}}

/* Authorized website Edit Mode. These rules are inert for normal visitors. */
.website-edit-mode body{padding-bottom:82px}
.website-edit-mode [data-edit-key]{cursor:text;outline:1px dashed transparent;outline-offset:4px;transition:outline-color .15s ease,background .15s ease}
.website-edit-mode [data-edit-key]:hover{outline-color:rgba(165,223,70,.7);background:rgba(165,223,70,.06)}
.website-edit-mode [data-edit-key][contenteditable]:focus,.website-edit-mode .website-edit-selected{outline:2px solid var(--green)!important;outline-offset:4px;background:rgba(165,223,70,.09)}
.website-edit-mode [data-edit-visible]{position:relative}
.website-edit-mode .website-edit-hidden-preview{display:block!important;opacity:.32;filter:grayscale(.65)}
.website-edit-mode .website-edit-hidden-preview::after{content:"HIDDEN FOR VISITORS";position:absolute;z-index:100;top:8px;right:8px;padding:5px 7px;border-radius:5px;background:#ffb45e;color:#17100a;font:800 8px/1 Inter,sans-serif;letter-spacing:.08em}
.website-edit-mode [data-edit-sortable-active]{position:relative;cursor:grab;transition:transform .15s ease,opacity .15s ease}
.website-edit-mode [data-edit-sortable-active]:active{cursor:grabbing}
.website-edit-mode .website-edit-dragging{opacity:.45;transform:scale(.98)}
.website-edit-drag-handle{position:absolute;z-index:20;top:8px;right:8px;display:grid;place-items:center;width:28px;height:28px;border:1px solid rgba(165,223,70,.55);border-radius:6px;background:#101716;color:var(--green);font:800 13px/1 Inter,sans-serif;cursor:grab;box-shadow:0 5px 16px rgba(0,0,0,.35)}
.website-edit-toolbar{position:fixed;z-index:100000;left:16px;right:16px;bottom:14px;display:flex;align-items:center;gap:14px;min-height:58px;padding:10px 12px;border:1px solid rgba(165,223,70,.35);border-radius:12px;background:rgba(9,14,13,.97);color:#edf2ef;box-shadow:0 18px 55px rgba(0,0,0,.55);backdrop-filter:blur(14px);font-family:Inter,Arial,sans-serif}
.website-edit-toolbar-title{display:flex;align-items:center;gap:8px;white-space:nowrap}
.website-edit-toolbar-title span{width:9px;height:9px;border-radius:50%;background:var(--green);box-shadow:0 0 14px rgba(165,223,70,.8)}
.website-edit-toolbar-title strong{font-size:12px;letter-spacing:.04em}
.website-edit-message{min-width:120px;margin-right:auto;color:#91a09b;font-size:10px}
.website-edit-message.error{color:#ff9292}
.website-edit-toolbar-actions{display:flex;align-items:center;gap:7px}
.website-edit-toolbar button{min-height:36px;padding:0 12px;border:0;border-radius:7px;background:var(--green);color:#0b100e;font:800 10px/1 Inter,sans-serif;cursor:pointer;white-space:nowrap}
.website-edit-toolbar button.secondary{border:1px solid #35413e;background:transparent;color:#d8dfdc}
.website-edit-toolbar button.danger{border:1px solid #673838;background:transparent;color:#ff9d9d}
.website-edit-toolbar button:disabled{opacity:.38;cursor:default}
@media(max-width:900px){.website-edit-mode body{padding-bottom:145px}.website-edit-toolbar{align-items:flex-start;flex-wrap:wrap}.website-edit-message{order:3;width:100%}.website-edit-toolbar-actions{flex-wrap:wrap}}

/* Monochrome public design system (2026-10-17). */
body{background:#080808;color:#f5f5f5}
.site-header{background:rgba(8,8,8,.88)}
.mobile-nav{background:rgba(10,10,10,.98)}
.brand span,.footer-brand span,.kicker,.eyebrow,.section-action,
.sort-indicator,.achievement-target,.achievement-complete,
.profile-achievement-trigger small,.profile-achievement-details-head a,
.profile-card:hover .profile-card-arrow{color:#f2f2f2}
.button-primary{background:#f2f2f2;color:#090909;box-shadow:0 10px 30px rgba(255,255,255,.08)}
.button-primary:hover{background:#fff}
.status-dot{background:#f2f2f2;box-shadow:0 0 12px rgba(255,255,255,.25)}
.status-dot.afk{background:#a8a8a8;box-shadow:0 0 12px rgba(255,255,255,.12)}
.status-dot.offline{background:#666;box-shadow:none}
.player-stat-status,.profile-status.online{color:#eee}
.player-stat-status.afk,.profile-status.afk,.profile-presence.afk{color:#aaa}
.section-players,.profiles-section,.profile-detail-section{background:#080808}
.players-table-shell,.inactive-group{background:#0e0e0e}
.players-table-head,.inactive-toggle{background:#141414!important}
.player-stat-row:hover,.player-stat-row-link:hover,.inactive-toggle:hover{background:#181818!important}
.inactive-chevron{border-color:rgba(255,255,255,.22);color:#eee}
.inactive-count{background:rgba(255,255,255,.08);color:#aaa}
.profiles-hero,.profile-detail-hero{
  background:radial-gradient(circle at 78% 45%,rgba(255,255,255,.055),transparent 25%),linear-gradient(120deg,#090909,#151515 58%,#090909)
}
.profile-card,.achievement-card{background:linear-gradient(145deg,#171717,#0e0e0e)}
.profile-card:hover,.profile-achievement-trigger:hover,.profile-achievement-trigger:focus-visible{border-color:rgba(255,255,255,.3);background:#191919}
.profile-card::after,.model-glow{background:radial-gradient(circle,rgba(255,255,255,.08),transparent 68%)}
.profile-stat-card,.profile-achievement-item{background:#121212}
.profile-meta-grid>div{background:#0d0d0d}
.achievement-mark{border-color:rgba(255,255,255,.3);background:radial-gradient(circle at 40% 30%,rgba(255,255,255,.18),rgba(255,255,255,.03));color:#f2f2f2}
.profile-achievement-details{border-color:rgba(255,255,255,.18);background:#101010}
.achievement-player{background:#181818}
.toast{background:#f2f2f2;color:#111}
.rank-badge-iron,.rank-badge-gold,.rank-badge-diamond,.rank-badge-custom,.rank-badge-playtime_top{
  color:#d8d8d8;
  border-color:#777;
  background:rgba(255,255,255,.055);
  box-shadow:none
}
.website-edit-mode [data-edit-key]:hover{outline-color:rgba(255,255,255,.7);background:rgba(255,255,255,.06)}
.website-edit-mode [data-edit-key][contenteditable]:focus,.website-edit-mode .website-edit-selected{background:rgba(255,255,255,.08)}
.website-edit-drag-handle,.website-edit-toolbar{border-color:rgba(255,255,255,.35);background:#111}
.website-edit-toolbar-title span{box-shadow:0 0 14px rgba(255,255,255,.5)}

/* Homepage: statistics first, followed by a large, current map preview. */
#home .section-players{padding-top:72px}
.section-map-preview{padding-top:24px;background:#0b0b0b;border-top:1px solid var(--border)}
.map-preview-head{margin-bottom:28px}
.home-map-preview{
  position:relative;
  display:block;
  width:100%;
  height:clamp(580px,68vh,780px);
  overflow:hidden;
  border:1px solid rgba(255,255,255,.16);
  border-radius:16px;
  background:#0b0b0b;
  box-shadow:0 30px 80px rgba(0,0,0,.4);
  cursor:pointer;
  touch-action:pan-y
}
.home-map-preview .map-frame{
  display:block;
  width:100%;
  height:100%;
  border:0;
  background:#0b0b0b;
  pointer-events:none
}
.map-preview-cta{
  position:absolute;
  right:18px;
  bottom:18px;
  z-index:2;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:11px 14px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:8px;
  background:rgba(8,8,8,.82);
  color:#fff;
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  backdrop-filter:blur(12px);
  pointer-events:none
}
.home-map-preview:focus-visible{outline:2px solid #fff;outline-offset:4px}
@media(max-width:760px){
  #home .section-players{padding-top:52px}
  .section-map-preview{padding-top:18px}
  .map-preview-head{display:flex;align-items:end;gap:18px}
  .home-map-preview{height:520px;border-radius:12px}
  .map-preview-cta{right:12px;bottom:12px}
}
