/*
 * Furia Crystal Run 3.13.89
 * MENU REFERENCE RESET
 * Clean rebuild based on the supplied standalone HTML reference.
 * This file keeps one stable shell and avoids forced cascade overrides.
 * topbar -> content stage -> footer. Gameplay styles stay in flappy-furia-game.css.
 */

.ff-page.ff-menu-clean{
  --ff-font-body:"Exo 2",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --ff-font-head:"Rajdhani","Exo 2",system-ui,sans-serif;
  --ff-gold:#f5c518;
  --ff-gold-dark:#c9a300;
  --ff-blue:#4fc3f7;
  --ff-blue-dark:#1565c0;
  --ff-purple:#a855f7;
  --ff-bg:#07091a;
  --ff-bg2:#0b0e22;
  --ff-card:rgba(255,255,255,.04);
  --ff-panel:rgba(8,14,36,.92);
  --ff-border:rgba(255,255,255,.08);
  --ff-border-blue:rgba(79,195,247,.22);
  --ff-text:#dde8ff;
  --ff-dim:#6b7fa8;
  --ff-top-h:60px;
  --ff-footer-h:34px;
  --ff-shell-x:clamp(18px,2.6vw,56px);
  --ff-card-radius:10px;
  min-height:100vh;
  background:var(--ff-bg);
  color:var(--ff-text);
  font-family:var(--ff-font-body);
}

.ff-page.ff-menu-clean *,
.ff-page.ff-menu-clean *::before,
.ff-page.ff-menu-clean *::after{
  box-sizing:border-box;
}

.ff-page.ff-menu-clean [hidden]{display:none}

.ff-page.ff-menu-clean .ff-shell,
.ff-page.ff-menu-clean.ff-ready .ff-shell,
.ff-page.ff-menu-clean .ff-arcade.is-visible{
  display:block;
  min-height:100vh;
}

.ff-page.ff-menu-clean .ff-hero,
.ff-page.ff-menu-clean .ff-landing-troops,
.ff-page.ff-menu-clean .ff-landing-cards,
.ff-page.ff-menu-clean .ff-topbar,
.ff-page.ff-menu-clean .ff-menu-copy{
  display:none;
}

.ff-page.ff-menu-clean .ff-arcade{display:none}
.ff-page.ff-menu-clean .ff-arcade.is-visible,
.ff-page.ff-menu-clean.ff-ready .ff-arcade[data-ff-direct-stage="1"]{display:block}
.ff-page.ff-menu-clean .ff-arcade.is-collapsed{display:none}

.ff-page.ff-menu-clean .ff-arcade.is-visible.is-menu-mode,
.ff-page.ff-menu-clean.ff-ready .ff-arcade[data-ff-direct-stage="1"]:not(.is-gameplay-mode){
  position:fixed;
  inset:0;
  z-index:99998;
  width:100vw;
  height:100dvh;
  overflow:auto;
  background:var(--ff-bg);
}

.ff-page.ff-menu-clean .ff-arcade.is-menu-mode .ff-game-wrap,
.ff-page.ff-menu-clean .ff-arcade.is-menu-mode .ff-board,
.ff-page.ff-menu-clean .ff-arcade.is-menu-mode .ff-side-panel,
.ff-page.ff-menu-clean .ff-arcade.is-menu-mode .ff-hud,
.ff-page.ff-menu-clean .ff-arcade.is-menu-mode .ff-stage-topline,
.ff-page.ff-menu-clean .ff-arcade.is-menu-mode .ff-bottom-hp,
.ff-page.ff-menu-clean .ff-arcade.is-menu-mode .ff-bottom-hp-wrap,
.ff-page.ff-menu-clean .ff-arcade.is-menu-mode .ff-overlay,
.ff-page.ff-menu-clean .ff-arcade.is-menu-mode .ff-game-menu-btn,
.ff-page.ff-menu-clean .ff-arcade.is-menu-mode .ff-version-badge,
.ff-page.ff-menu-clean .ff-arcade:not(.is-gameplay-mode) .ff-game-wrap,
.ff-page.ff-menu-clean .ff-arcade:not(.is-gameplay-mode) .ff-board{
  display:none;
}

/* Menu mode does not need the floating close/fullscreen/audio dock from gameplay. */
.ff-page.ff-menu-clean .ff-arcade.is-menu-mode>.ff-arcade-close,
.ff-page.ff-menu-clean .ff-arcade.is-menu-mode>.ff-arcade-fullscreen-toggle,
.ff-page.ff-menu-clean .ff-arcade.is-menu-mode>.ff-volume-control{
  display:none;
}

/* -------------------------- App shell -------------------------- */
.ff-page.ff-menu-clean .ff-arcade.is-menu-mode .ff-player-panel,
.ff-page.ff-menu-clean.ff-ready .ff-arcade[data-ff-direct-stage="1"]:not(.is-gameplay-mode) .ff-player-panel{
  position:relative;
  inset:auto;
  width:100%;
  min-height:100dvh;
  display:grid;
  grid-template-columns:200px minmax(0,1fr) 300px;
  grid-template-rows:var(--ff-top-h) auto var(--ff-footer-h);
  grid-template-areas:
    "logo nav account"
    "content content content"
    "footer footer footer";
  gap:0;
  padding:0 20px;
  border:0;
  border-radius:0;
  background:var(--ff-bg);
  box-shadow:none;
  overflow:visible;
}

.ff-page.ff-menu-clean .ff-hidden-nick-sync{
  position:absolute;
  left:-9999px;
  width:1px;
  height:1px;
  opacity:0;
  pointer-events:none;
}

/* -------------------------- Top bar -------------------------- */
.ff-page.ff-menu-clean .ff-menu-head{
  grid-area:logo;
  height:var(--ff-top-h);
  display:flex;
  align-items:center;
  min-width:0;
  background:#07091af0;
  border-bottom:1px solid var(--ff-border);
  z-index:10;
}

.ff-page.ff-menu-clean .ff-menu-logo{
  display:block;
  width:clamp(108px,8.4vw,150px);
  height:52px;
  object-fit:contain;
  object-position:left center;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.35));
}

.ff-page.ff-menu-clean .ff-ingame-tabs-primary{
  grid-area:nav;
  height:var(--ff-top-h);
  display:flex;
  align-items:stretch;
  justify-content:flex-start;
  min-width:0;
  padding:0;
  gap:0;
  background:#07091af0;
  border:0;
  border-bottom:1px solid var(--ff-border);
  border-radius:0;
  box-shadow:none;
  overflow:hidden;
  z-index:10;
}

.ff-page.ff-menu-clean .ff-ingame-tabs-primary>button{
  appearance:none;
  border:0;
  border-bottom:3px solid transparent;
  background:transparent;
  color:var(--ff-dim);
  min-width:0;
  height:var(--ff-top-h);
  padding:0 clamp(11px,1.15vw,18px);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  font-family:var(--ff-font-body);
  font-size:clamp(.66rem,.70vw,.78rem);
  font-weight:800;
  letter-spacing:.045em;
  text-transform:uppercase;
  white-space:nowrap;
  cursor:pointer;
  transition:color .18s ease,border-color .18s ease,background .18s ease;
}

.ff-page.ff-menu-clean .ff-ingame-tabs-primary>button:hover{color:#fff}
.ff-page.ff-menu-clean .ff-ingame-tabs-primary>button.is-active{
  color:#fff;
  border-bottom-color:var(--ff-gold);
  background:linear-gradient(180deg,rgba(245,197,24,.18),rgba(245,197,24,.04));
}
.ff-page.ff-menu-clean .ff-ingame-tabs-primary .ff-tab-utility{display:none}
.ff-page.ff-menu-clean .ff-ingame-tabs-primary .ff-ui-ico{width:15px;height:15px;color:currentColor;flex:0 0 auto}

.ff-page.ff-menu-clean .ff-top-account-chip{
  grid-area:account;
  height:var(--ff-top-h);
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:0;
  min-width:0;
  background:#07091af0;
  border:0;
  border-bottom:1px solid var(--ff-border);
  border-radius:0;
  box-shadow:none;
  overflow:visible;
  z-index:10;
}

.ff-page.ff-menu-clean .ff-top-account-id{
  display:grid;
  grid-template-columns:40px minmax(0,1fr);
  align-items:center;
  gap:10px;
  min-width:0;
  padding:0 12px;
}
.ff-page.ff-menu-clean .ff-top-account-id img{
  width:40px;
  height:40px;
  border-radius:8px;
  object-fit:cover;
  background:linear-gradient(135deg,#1565c0,#6a1b9a);
  border:1px solid rgba(79,195,247,.30);
}
.ff-page.ff-menu-clean .ff-top-account-id strong{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#fff;
  font-size:.82rem;
  font-weight:800;
}
.ff-page.ff-menu-clean .ff-top-account-id span{
  display:block;
  color:var(--ff-dim);
  font-size:.64rem;
  margin-top:2px;
}
.ff-page.ff-menu-clean .ff-account-progress,
.ff-page.ff-menu-clean .ff-account-rank{display:none}
.ff-page.ff-menu-clean .ff-top-account-currency{
  height:40px;
  min-width:98px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:0 16px;
  background:rgba(168,85,247,.15);
  border-left:1px solid var(--ff-border);
  border-radius:0 10px 10px 0;
  color:#fff;
  font-size:.92rem;
  font-weight:900;
}
.ff-page.ff-menu-clean .ff-top-account-currency .ff-ui-ico{width:18px;height:18px;color:var(--ff-purple)}

/* Footer */
.ff-page.ff-menu-clean .ff-arcade.is-menu-mode .ff-player-panel::after{
  content:"Furia Crystal Run • FuriaPolska.pl • menu v3.14.77";
  grid-area:footer;
  display:flex;
  align-items:center;
  justify-content:center;
  color:rgba(221,232,255,.45);
  font-size:.66rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  border-top:1px solid var(--ff-border);
}

/* Shared controls */
.ff-page.ff-menu-clean .ff-ui-ico{display:inline-flex;align-items:center;justify-content:center;line-height:1}
.ff-page.ff-menu-clean .ff-btn{
  appearance:none;
  border:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  cursor:pointer;
  font-family:var(--ff-font-body);
  text-decoration:none;
  text-transform:uppercase;
  transition:background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease,color .18s ease;
}
.ff-page.ff-menu-clean .ff-btn:hover{transform:translateY(-1px)}
.ff-page.ff-menu-clean .ff-btn-primary{
  background:var(--ff-gold);
  color:#120f00;
  font-size:.94rem;
  font-weight:900;
  letter-spacing:.09em;
  border-radius:8px;
  box-shadow:0 4px 28px rgba(245,197,24,.45);
}
.ff-page.ff-menu-clean .ff-btn-primary:hover{box-shadow:0 8px 36px rgba(245,197,24,.55)}
.ff-page.ff-menu-clean .ff-btn-ghost,
.ff-page.ff-menu-clean .ff-btn-secondary{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.14);
  color:#fff;
  border-radius:8px;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.045em;
}
.ff-page.ff-menu-clean .ff-btn-ghost:hover,
.ff-page.ff-menu-clean .ff-btn-secondary:hover{background:rgba(255,255,255,.11)}

/* -------------------------- Sections -------------------------- */
.ff-page.ff-menu-clean .ff-player-panel>.ff-menu-section{
  grid-area:content;
  display:none;
  min-width:0;
}
.ff-page.ff-menu-clean .ff-player-panel>.ff-menu-section.is-active{display:block}

/* -------------------------- Home: reference layout -------------------------- */
.ff-page.ff-menu-clean .ff-menu-home-cinematic.is-active{
  position:relative;
  display:grid;
  grid-template-columns:340px minmax(0,1fr);
  grid-template-rows:560px auto auto;
  grid-template-areas:
    "hero hero"
    "news preview"
    "news bottom";
  min-height:880px;
  background:var(--ff-bg2);
  overflow:hidden;
}
.ff-page.ff-menu-clean .ff-menu-home-cinematic.is-active::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:560px;
  background:
    linear-gradient(90deg,rgba(7,9,26,.94) 0%,rgba(7,9,26,.70) 31%,rgba(7,9,26,.16) 62%,rgba(7,9,26,.06) 100%),
    radial-gradient(ellipse 70% 80% at 75% 50%,rgba(21,101,192,.34) 0%,transparent 70%),
    radial-gradient(ellipse 40% 60% at 90% 30%,rgba(168,85,247,.18) 0%,transparent 60%),
    url("../img/ff-menu-cinematic-crystal-canyon.webp") center center / cover no-repeat,
    linear-gradient(170deg,#0c1630 0%,#07091a 60%,#050816 100%);
  z-index:0;
}
.ff-page.ff-menu-clean .ff-menu-home-cinematic.is-active::after{
  content:"";
  position:absolute;
  left:0;right:0;top:559px;
  height:1px;
  background:var(--ff-border);
  z-index:3;
}

.ff-page.ff-menu-clean .ff-cine-hero{
  grid-area:hero;
  position:relative;
  z-index:2;
  width:520px;
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  padding:0 0 0 48px;
}
.ff-page.ff-menu-clean .ff-cine-kicker{
  display:flex;
  align-items:center;
  gap:7px;
  margin-bottom:18px;
  color:var(--ff-gold);
  font-size:.70rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-cine-kicker .ff-ui-ico{width:13px;height:13px;color:var(--ff-blue)}
.ff-page.ff-menu-clean .ff-cine-kicker mark{background:transparent;color:var(--ff-gold)}
.ff-page.ff-menu-clean .ff-cine-title{
  margin:0 0 16px;
  font-family:var(--ff-font-head);
  font-weight:700;
  line-height:.90;
  letter-spacing:-.01em;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-cine-title span,
.ff-page.ff-menu-clean .ff-cine-title em{display:block;font-style:normal}
.ff-page.ff-menu-clean .ff-cine-title span{
  font-size:clamp(4.6rem,5.9vw,5.65rem);
  color:#fff;
  text-shadow:0 0 60px rgba(79,195,247,.25);
}
.ff-page.ff-menu-clean .ff-cine-title em{
  font-size:clamp(4.6rem,5.9vw,5.65rem);
  background:linear-gradient(90deg,#f5c518 0%,#ffe44d 40%,#c9a300 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  font-style:italic;
}
.ff-page.ff-menu-clean .ff-cine-slogan{
  margin:0 0 18px;
  color:var(--ff-blue);
  font-size:.82rem;
  font-weight:800;
  letter-spacing:.31em;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-cine-lead{
  max-width:300px;
  margin:0 0 32px;
  padding-left:14px;
  border-left:2px solid var(--ff-gold);
  color:var(--ff-dim);
  font-size:.82rem;
  line-height:1.75;
}
.ff-page.ff-menu-clean .ff-cine-main-action{margin:0 0 18px}
.ff-page.ff-menu-clean .ff-cine-start{
  min-width:324px;
  min-height:48px;
  padding:0 38px;
}
.ff-page.ff-menu-clean .ff-cine-start .ff-ui-ico{width:16px;height:16px}
.ff-page.ff-menu-clean .ff-cine-shortcuts{display:flex;gap:10px;max-width:520px}
.ff-page.ff-menu-clean .ff-cine-shortcuts .ff-btn{
  min-height:36px;
  padding:0 18px;
  min-width:0;
}
.ff-page.ff-menu-clean .ff-cine-shortcuts .ff-ui-ico{width:15px;height:15px}

.ff-page.ff-menu-clean .ff-cine-mission{
  grid-area:hero;
  position:relative;
  z-index:4;
  align-self:end;
  justify-self:end;
  width:320px;
  min-height:124px;
  margin:0 20px 42px 0;
  padding:18px 20px;
  background:linear-gradient(180deg,rgba(7,18,54,.92),rgba(6,16,48,.88));
  border:1px solid rgba(79,195,247,.16);
  border-radius:16px;
  box-shadow:0 16px 40px rgba(0,0,0,.28);
  backdrop-filter:blur(12px);
}
.ff-page.ff-menu-clean .ff-cine-card-head{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0 0 14px;
  color:var(--ff-gold);
  font-size:.58rem;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-cine-card-head strong{color:inherit;font-size:inherit}
.ff-page.ff-menu-clean .ff-cine-card-head .ff-ui-ico{width:12px;height:12px;color:currentColor}
.ff-page.ff-menu-clean .ff-cine-mission-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:12px;
}
.ff-page.ff-menu-clean .ff-cine-mission-title span{
  color:#fff;
  font-size:.94rem;
  font-weight:900;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-cine-mission-title strong{
  color:#fff;
  font-size:.72rem;
  white-space:nowrap;
}
.ff-page.ff-menu-clean .ff-cine-progress-row{display:flex;align-items:center;gap:10px}
.ff-page.ff-menu-clean .ff-cine-progress-row .ff-challenge-percent{display:none}
.ff-page.ff-menu-clean .ff-cine-progress{
  flex:1;
  height:6px;
  background:rgba(255,255,255,.10);
  border-radius:3px;
  overflow:hidden;
}
.ff-page.ff-menu-clean .ff-cine-progress span{
  display:block;
  height:100%;
  background:linear-gradient(90deg,var(--ff-blue-dark),var(--ff-blue));
  border-radius:3px;
}
.ff-page.ff-menu-clean .ff-cine-reward-pill{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  min-height:30px;
  padding:0 10px;
  border-radius:999px;
  background:rgba(255,255,255,.07);
  color:#fff;
  font-size:.88rem;
  font-weight:900;
}
.ff-page.ff-menu-clean .ff-cine-reward-pill .ff-ui-ico{width:14px;height:14px;color:var(--ff-purple)}

/* Below hero: left news + right content */
.ff-page.ff-menu-clean .ff-cine-preview,
.ff-page.ff-menu-clean .ff-cine-news,
.ff-page.ff-menu-clean .ff-cine-bottom{
  position:relative;
  z-index:2;
  background:var(--ff-bg2);
  border:0;
  border-radius:0;
  box-shadow:none;
  backdrop-filter:none;
}

.ff-page.ff-menu-clean .ff-cine-news{
  grid-area:news;
  padding:20px 22px;
  border-right:1px solid var(--ff-border);
  display:flex;
  flex-direction:column;
}
.ff-page.ff-menu-clean .ff-cine-news-list{display:block;margin:0}
.ff-page.ff-menu-clean .ff-cine-news-list article{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:flex-start;
  gap:12px;
  padding:12px 0;
  border-bottom:1px solid var(--ff-border);
}
.ff-page.ff-menu-clean .ff-cine-news-list article:last-child{border-bottom:0}
.ff-page.ff-menu-clean .ff-cine-news-list strong{display:none}
.ff-page.ff-menu-clean .ff-cine-news-list span{
  min-width:0;
  color:var(--ff-text);
  font-size:.76rem;
  line-height:1.45;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.ff-page.ff-menu-clean .ff-cine-news-list time{color:var(--ff-dim);font-size:.63rem;white-space:nowrap}
.ff-page.ff-menu-clean .ff-news-more{
  width:100%;
  min-height:36px;
  margin-top:14px;
  padding:0 16px;
  display:flex;
  justify-content:space-between;
  background:var(--ff-card);
  border:1px solid var(--ff-border);
  color:var(--ff-dim);
  font-size:.64rem;
  letter-spacing:.10em;
}

.ff-page.ff-menu-clean .ff-cine-preview{
  grid-area:preview;
  padding:20px 24px;
  border-bottom:1px solid var(--ff-border);
}
.ff-page.ff-menu-clean .ff-cine-preview-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-top:12px;
  align-items:stretch;
}
.ff-page.ff-menu-clean .ff-cine-preview-grid article{
  position:relative;
  min-height:76px;
  padding:16px 14px;
  background:var(--ff-card);
  border:1px solid var(--ff-border);
  border-radius:10px;
  overflow:hidden;
}
.ff-page.ff-menu-clean .ff-cine-preview-grid article span{
  display:block;
  margin-bottom:6px;
  color:var(--ff-dim);
  font-size:.56rem;
  font-weight:800;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-cine-preview-grid article strong{
  display:block;
  color:#fff;
  font-size:.82rem;
  font-weight:900;
  text-transform:uppercase;
  line-height:1.04;
}
.ff-page.ff-menu-clean .ff-cine-preview-grid article small{
  display:block;
  max-width:calc(100% - 74px);
  margin-top:8px;
  color:var(--ff-dim);
  font-size:.60rem;
  line-height:1.25;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.ff-page.ff-menu-clean .ff-cine-start-map-card img{
  position:absolute;
  right:10px;
  bottom:10px;
  width:66px;
  height:42px;
  object-fit:cover;
  border-radius:7px;
  border:1px solid rgba(79,195,247,.24);
}
.ff-page.ff-menu-clean .ff-cine-preview-grid article i,
.ff-page.ff-menu-clean .ff-cine-preview-grid article .ff-ui-ico{
  position:absolute;
  right:16px;
  bottom:14px;
  width:24px;
  height:24px;
  color:var(--ff-blue);
}
.ff-page.ff-menu-clean .ff-cine-start-action-card{display:none}

.ff-page.ff-menu-clean .ff-cine-bottom{
  grid-area:bottom;
  display:grid;
  grid-template-columns:minmax(220px,.30fr) minmax(0,1fr) minmax(220px,.28fr);
  gap:0;
  min-height:132px;
  padding:18px 24px;
  align-items:start;
}
.ff-page.ff-menu-clean .ff-cine-tip{
  padding-right:24px;
  border-right:1px solid var(--ff-border);
  min-height:100%;
}
.ff-page.ff-menu-clean .ff-cine-tip{
  display:flex;
  align-items:center;
  gap:12px;
}
.ff-page.ff-menu-clean .ff-cine-tip>.ff-ui-ico{
  width:42px;
  height:42px;
  flex:0 0 auto;
  border-radius:8px;
  background:linear-gradient(135deg,rgba(245,197,24,.20),rgba(245,197,24,.05));
  color:var(--ff-blue);
}
.ff-page.ff-menu-clean .ff-cine-tip strong{display:block;color:#fff;font-size:.78rem;margin-bottom:2px}
.ff-page.ff-menu-clean .ff-cine-tip em{display:block;color:var(--ff-dim);font-size:.74rem;line-height:1.55;font-style:normal}
.ff-page.ff-menu-clean .ff-cine-tip b{color:#fff}

.ff-page.ff-menu-clean .ff-cine-stats{
  padding-left:24px;
  padding-right:24px;
  border-right:1px solid var(--ff-border);
}
.ff-page.ff-menu-clean .ff-cine-stats-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin-top:4px;
}
.ff-page.ff-menu-clean .ff-cine-stats-grid>div{
  min-width:0;
  padding-right:12px;
  border-right:1px solid var(--ff-border);
}
.ff-page.ff-menu-clean .ff-cine-stats-grid>div:last-child{border-right:0}
.ff-page.ff-menu-clean .ff-cine-stats-grid span{
  display:block;
  color:var(--ff-dim);
  font-size:.56rem;
  font-weight:800;
  letter-spacing:.10em;
  text-transform:uppercase;
  line-height:1.2;
}
.ff-page.ff-menu-clean .ff-cine-stats-grid strong{
  display:block;
  margin-top:4px;
  color:#fff;
  font-family:var(--ff-font-head);
  font-size:1.58rem;
  font-weight:900;
  letter-spacing:-.03em;
}
.ff-page.ff-menu-clean .ff-cine-social{
  align-self:stretch;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding-left:24px;
}
.ff-page.ff-menu-clean .ff-cine-social>span{
  display:block;
  margin-bottom:10px;
  color:var(--ff-dim);
  font-size:.56rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-cine-social>div{display:grid;grid-template-columns:repeat(5,36px);gap:8px;justify-content:flex-start}
.ff-page.ff-menu-clean .ff-cine-social a,
.ff-page.ff-menu-clean .ff-cine-social button{
  width:36px;
  height:36px;
  border-radius:8px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--ff-card);
  border:1px solid var(--ff-border);
  color:#fff;
  cursor:pointer;
}
.ff-page.ff-menu-clean .ff-cine-social a:hover,
.ff-page.ff-menu-clean .ff-cine-social button:hover{background:rgba(255,255,255,.10)}
.ff-page.ff-menu-clean .ff-cine-social .ff-ui-ico{width:16px;height:16px}

/* -------------------------- Subpage shell -------------------------- */
.ff-page.ff-menu-clean .ff-player-panel>.ff-menu-section:not(.ff-menu-home-cinematic).is-active{
  display:block;
  width:min(1180px,calc(100vw - 40px));
  min-height:calc(100dvh - var(--ff-top-h) - var(--ff-footer-h));
  margin:0 auto;
  padding:28px 0 34px;
  overflow:visible;
}
.ff-page.ff-menu-clean .ff-player-panel>.ff-menu-section:not(.ff-menu-home-cinematic).is-active::before{
  content:"";
  position:fixed;
  inset:var(--ff-top-h) 0 0;
  z-index:-1;
  background:
    linear-gradient(90deg,rgba(7,9,26,.94),rgba(7,9,26,.68) 45%,rgba(7,9,26,.42)),
    url("../img/ff-menu-cinematic-crystal-canyon.webp") center center / cover no-repeat,
    var(--ff-bg2);
}
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) .ff-control-card,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) article,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) .ff-route-card,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) .ff-shop-card{
  background:rgba(8,14,36,.84);
  border:1px solid rgba(255,255,255,.10);
  border-radius:12px;
  color:var(--ff-text);
  box-shadow:0 16px 36px rgba(0,0,0,.22);
}
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) h2,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) h3,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) strong{
  color:#fff;
}
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) p,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) small,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) span{
  border-color:rgba(255,255,255,.10);
}

/* Route selection modal */
.ff-page.ff-menu-clean .ff-start-route-panel{
  position:fixed;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  z-index:100000;
  width:min(940px,calc(100vw - 36px));
  max-height:min(760px,calc(100dvh - 36px));
  overflow:auto;
  padding:18px;
  background:rgba(7,12,30,.96);
  border:1px solid rgba(79,195,247,.22);
  border-radius:16px;
  box-shadow:0 32px 90px rgba(0,0,0,.55);
}
.ff-page.ff-menu-clean .ff-start-route-panel-head,
.ff-page.ff-menu-clean .ff-start-route-panel-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.ff-page.ff-menu-clean .ff-start-route-panel-head{padding-bottom:14px;border-bottom:1px solid var(--ff-border)}
.ff-page.ff-menu-clean .ff-start-route-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}
.ff-page.ff-menu-clean .ff-start-route-card{
  display:grid;
  grid-template-columns:128px minmax(0,1fr) 24px;
  gap:14px;
  align-items:center;
  padding:12px;
  background:rgba(255,255,255,.045);
  border:1px solid var(--ff-border);
  border-radius:14px;
  color:var(--ff-text);
  cursor:pointer;
}
.ff-page.ff-menu-clean .ff-start-route-card:hover{border-color:rgba(79,195,247,.30);background:rgba(255,255,255,.07)}
.ff-page.ff-menu-clean .ff-start-route-thumb{width:128px;min-height:88px;border-radius:10px;overflow:hidden}
.ff-page.ff-menu-clean .ff-start-route-thumb img{width:100%;height:100%;object-fit:cover}
.ff-page.ff-menu-clean .ff-start-route-copy{display:flex;flex-direction:column;gap:5px;min-width:0}
.ff-page.ff-menu-clean .ff-start-route-copy strong{font-family:var(--ff-font-head);font-size:1.05rem;text-transform:uppercase;color:#fff}
.ff-page.ff-menu-clean .ff-start-route-copy small{color:var(--ff-dim);line-height:1.35}
.ff-page.ff-menu-clean .ff-start-route-close{width:34px;height:34px;border-radius:9px;border:1px solid var(--ff-border);background:rgba(255,255,255,.06);color:#fff;cursor:pointer}

/* -------------------------- Responsive -------------------------- */
@media (max-width:1100px){
  .ff-page.ff-menu-clean .ff-arcade.is-menu-mode .ff-player-panel,
  .ff-page.ff-menu-clean.ff-ready .ff-arcade[data-ff-direct-stage="1"]:not(.is-gameplay-mode) .ff-player-panel{
    grid-template-columns:150px minmax(0,1fr) 250px;
    padding:0 14px;
  }
  .ff-page.ff-menu-clean .ff-menu-logo{width:120px}
  .ff-page.ff-menu-clean .ff-ingame-tabs-primary>button{padding:0 9px;font-size:.62rem}
  .ff-page.ff-menu-clean .ff-menu-home-cinematic.is-active{
    grid-template-columns:1fr;
    grid-template-rows:auto auto auto auto;
    grid-template-areas:"hero" "preview" "news" "bottom";
  }
  .ff-page.ff-menu-clean .ff-cine-hero{width:100%;min-height:520px}
  .ff-page.ff-menu-clean .ff-cine-mission{grid-area:hero;width:300px}
  .ff-page.ff-menu-clean .ff-cine-news{border-right:0;border-top:1px solid var(--ff-border)}
}

@media (max-width:760px){
  .ff-page.ff-menu-clean .ff-arcade.is-menu-mode .ff-player-panel,
  .ff-page.ff-menu-clean.ff-ready .ff-arcade[data-ff-direct-stage="1"]:not(.is-gameplay-mode) .ff-player-panel{
    grid-template-columns:1fr;
    grid-template-rows:auto auto auto auto var(--ff-footer-h);
    grid-template-areas:"logo" "nav" "account" "content" "footer";
    padding:0 12px;
  }
  .ff-page.ff-menu-clean .ff-menu-head,
  .ff-page.ff-menu-clean .ff-ingame-tabs-primary,
  .ff-page.ff-menu-clean .ff-top-account-chip{height:auto;min-height:54px}
  .ff-page.ff-menu-clean .ff-ingame-tabs-primary{overflow:auto;justify-content:flex-start}
  .ff-page.ff-menu-clean .ff-top-account-chip{grid-template-columns:1fr auto}
  .ff-page.ff-menu-clean .ff-cine-title span,
  .ff-page.ff-menu-clean .ff-cine-title em{font-size:3.6rem}
  .ff-page.ff-menu-clean .ff-cine-hero{padding-left:22px;min-height:500px}
  .ff-page.ff-menu-clean .ff-cine-mission{position:static;grid-area:preview;justify-self:stretch;width:auto;margin:14px 18px}
  .ff-page.ff-menu-clean .ff-cine-preview-grid,
  .ff-page.ff-menu-clean .ff-cine-stats-grid,
  .ff-page.ff-menu-clean .ff-start-route-options{grid-template-columns:1fr}
  .ff-page.ff-menu-clean .ff-cine-bottom{grid-template-columns:1fr;gap:18px}
  .ff-page.ff-menu-clean .ff-cine-tip,
  .ff-page.ff-menu-clean .ff-cine-stats{border:0;padding:0}
}


/* v3.13.89 — full-bleed reference shell alignment
   Force the WordPress shortcode to behave like the standalone HTML mockup:
   no top/side page margins, full-width topbar, hero immediately under the nav,
   and a predictable content area for every subpage. */
.ff-page.ff-menu-clean{
  position:fixed;
  inset:0;
  width:100vw;
  height:100dvh;
  min-height:0;
  z-index:99998;
  overflow:auto;
  background:var(--ff-bg);
}

.ff-page.ff-menu-clean .ff-shell,
.ff-page.ff-menu-clean.ff-ready .ff-shell,
.ff-page.ff-menu-clean .ff-arcade,
.ff-page.ff-menu-clean .ff-arcade.is-visible,
.ff-page.ff-menu-clean.ff-ready .ff-arcade[data-ff-direct-stage="1"]{
  width:100%;
  min-height:100dvh;
  margin:0;
  padding:0;
  background:var(--ff-bg);
}

.ff-page.ff-menu-clean .ff-arcade.is-visible.is-menu-mode,
.ff-page.ff-menu-clean.ff-ready .ff-arcade[data-ff-direct-stage="1"]:not(.is-gameplay-mode){
  position:relative;
  inset:auto;
  width:100%;
  height:auto;
  min-height:100dvh;
  overflow:visible;
}

.ff-page.ff-menu-clean .ff-arcade.is-menu-mode .ff-player-panel,
.ff-page.ff-menu-clean.ff-ready .ff-arcade[data-ff-direct-stage="1"]:not(.is-gameplay-mode) .ff-player-panel{
  width:100%;
  max-width:none;
  min-height:100dvh;
  margin:0;
  padding:0 20px;
  grid-template-columns:200px minmax(0,1fr) 300px;
  grid-template-rows:var(--ff-top-h) auto var(--ff-footer-h);
}

.ff-page.ff-menu-clean .ff-menu-head,
.ff-page.ff-menu-clean .ff-ingame-tabs-primary,
.ff-page.ff-menu-clean .ff-top-account-chip{
  margin:0;
  transform:none;
}

.ff-page.ff-menu-clean .ff-player-panel>.ff-menu-section.is-active{
  width:100%;
  max-width:none;
  margin:0;
}

.ff-page.ff-menu-clean .ff-menu-home-cinematic.is-active{
  width:100%;
  max-width:none;
  min-height:calc(100dvh - var(--ff-top-h) - var(--ff-footer-h));
  grid-template-columns:340px minmax(0,1fr);
  grid-template-rows:560px auto auto;
  grid-template-areas:
    "hero hero"
    "news preview"
    "news bottom";
  margin:0;
}

.ff-page.ff-menu-clean .ff-menu-home-cinematic.is-active::before{
  height:560px;
  background:
    linear-gradient(90deg,rgba(7,9,26,.94) 0%,rgba(7,9,26,.70) 30%,rgba(7,9,26,.16) 61%,rgba(7,9,26,.04) 100%),
    radial-gradient(ellipse 70% 80% at 75% 50%,rgba(21,101,192,.34) 0%,transparent 70%),
    radial-gradient(ellipse 40% 60% at 90% 30%,rgba(168,85,247,.18) 0%,transparent 60%),
    url("../img/ff-menu-cinematic-crystal-canyon.webp") center center / cover no-repeat,
    linear-gradient(170deg,#0c1630 0%,#07091a 60%,#050816 100%);
}

.ff-page.ff-menu-clean .ff-cine-hero{
  width:520px;
  min-height:560px;
  padding-left:48px;
}

.ff-page.ff-menu-clean .ff-cine-mission{
  margin:0 20px 36px 0;
  width:310px;
}

.ff-page.ff-menu-clean .ff-cine-news,
.ff-page.ff-menu-clean .ff-cine-preview,
.ff-page.ff-menu-clean .ff-cine-bottom{
  background:var(--ff-bg2);
}

.ff-page.ff-menu-clean .ff-player-panel>.ff-menu-section:not(.ff-menu-home-cinematic).is-active{
  width:100%;
  max-width:none;
  min-height:calc(100dvh - var(--ff-top-h) - var(--ff-footer-h));
  padding:24px var(--ff-shell-x);
  background:var(--ff-bg2);
}

.ff-page.ff-menu-clean .ff-player-panel>.ff-menu-section:not(.ff-menu-home-cinematic).is-active::before{
  inset:var(--ff-top-h) 20px var(--ff-footer-h) 20px;
}

@media (min-width:1500px){
  .ff-page.ff-menu-clean .ff-arcade.is-menu-mode .ff-player-panel,
  .ff-page.ff-menu-clean.ff-ready .ff-arcade[data-ff-direct-stage="1"]:not(.is-gameplay-mode) .ff-player-panel{
    grid-template-columns:220px minmax(0,1fr) 320px;
    padding-left:24px;
    padding-right:24px;
  }
  .ff-page.ff-menu-clean .ff-cine-hero{
    padding-left:56px;
  }
}

@media (max-width:760px){
  .ff-page.ff-menu-clean{
    position:relative;
    height:auto;
  }
}



/* v3.13.89 — reference below-hero layout tune
   Desktop keeps the standalone mockup structure: hero, then a two-column lower
   section with News on the left and Preview + Stats/Social on the right. */
@media (min-width: 900px){
  .ff-page.ff-menu-clean .ff-menu-home-cinematic.is-active{
    display:grid;
    grid-template-columns:340px minmax(0,1fr);
    grid-template-rows:560px auto minmax(170px,auto);
    grid-template-areas:
      "hero hero"
      "news preview"
      "news bottom";
    align-items:stretch;
    background:var(--ff-bg2);
  }

  .ff-page.ff-menu-clean .ff-menu-home-cinematic.is-active::before{
    height:560px;
  }

  .ff-page.ff-menu-clean .ff-menu-home-cinematic.is-active::after{
    top:559px;
  }

  .ff-page.ff-menu-clean .ff-cine-hero{
    grid-area:hero;
    min-height:560px;
  }

  .ff-page.ff-menu-clean .ff-cine-mission{
    grid-area:hero;
    align-self:end;
    justify-self:end;
    width:310px;
    min-height:124px;
    margin:0 20px 92px 0;
  }

  .ff-page.ff-menu-clean .ff-cine-news{
    grid-area:news;
    align-self:stretch;
    padding:20px 22px;
    border-top:0;
    border-right:1px solid var(--ff-border);
    border-bottom:0;
  }

  .ff-page.ff-menu-clean .ff-cine-preview{
    grid-area:preview;
    align-self:stretch;
    padding:20px 24px;
    border-top:0;
    border-bottom:1px solid var(--ff-border);
  }

  .ff-page.ff-menu-clean .ff-cine-bottom{
    grid-area:bottom;
    display:grid;
    grid-template-columns:minmax(250px,.40fr) minmax(0,1fr) minmax(210px,.30fr);
    align-items:stretch;
    gap:0;
    min-height:170px;
    padding:20px 24px;
    border-top:0;
  }

  .ff-page.ff-menu-clean .ff-cine-tip{
    padding:0 24px 0 0;
    border-right:1px solid var(--ff-border);
  }

  .ff-page.ff-menu-clean .ff-cine-stats{
    padding:0 24px;
    border-right:1px solid var(--ff-border);
  }

  .ff-page.ff-menu-clean .ff-cine-social{
    align-self:stretch;
    padding:0 0 0 24px;
  }

  .ff-page.ff-menu-clean .ff-cine-preview-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}

@media (min-width: 900px) and (max-width: 1180px){
  .ff-page.ff-menu-clean .ff-menu-home-cinematic.is-active{
    grid-template-columns:300px minmax(0,1fr);
  }
  .ff-page.ff-menu-clean .ff-cine-bottom{
    grid-template-columns:minmax(210px,.35fr) minmax(0,1fr) minmax(180px,.28fr);
  }
}


/* v3.13.89 — real grid activation fix.
   The generic active-section rule has a stronger selector than .ff-menu-home-cinematic.is-active,
   so the home section was still rendered as block and the cards flowed one under another.
   This selector is intentionally more specific and restores the reference grid without forced overrides. */
.ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section.ff-menu-home-cinematic.is-active{
  display:grid;
  grid-template-columns:340px minmax(0,1fr);
  grid-template-rows:560px auto minmax(170px,auto);
  grid-template-areas:
    "hero hero"
    "news preview"
    "news bottom";
  align-items:stretch;
}

@media (min-width: 900px){
  .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section.ff-menu-home-cinematic.is-active{
    display:grid;
  }
}

@media (max-width: 899px){
  .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section.ff-menu-home-cinematic.is-active{
    display:grid;
    grid-template-columns:1fr;
    grid-template-rows:auto;
    grid-template-areas:
      "hero"
      "mission"
      "preview"
      "news"
      "bottom";
  }
}


/* v3.13.89 — responsive polish pass.
   Keeps the now-correct reference grid, but normalizes lower-section proportions
   and adds safer viewport behavior for different desktop sizes, tablets and phones. */
.ff-page.ff-menu-clean{
  height:100vh;
  min-height:100vh;
  height:100dvh;
  min-height:100dvh;
  overflow:auto;
  overscroll-behavior:contain;
}

.ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section.ff-menu-home-cinematic.is-active{
  --ff-home-news-w:clamp(320px,27vw,372px);
  --ff-home-hero-h:clamp(520px,55vh,560px);
  --ff-home-preview-pad:clamp(16px,1.6vw,24px);
  --ff-home-bottom-pad:clamp(16px,1.45vw,22px);
  grid-template-columns:var(--ff-home-news-w) minmax(0,1fr);
  grid-template-rows:var(--ff-home-hero-h) minmax(112px,auto) minmax(132px,auto);
  min-height:calc(var(--ff-home-hero-h) + 244px);
  overflow:visible;
}

.ff-page.ff-menu-clean .ff-menu-home-cinematic.is-active::before{
  height:var(--ff-home-hero-h);
  background-position:center center;
}

.ff-page.ff-menu-clean .ff-menu-home-cinematic.is-active::after{
  top:calc(var(--ff-home-hero-h) - 1px);
}

.ff-page.ff-menu-clean .ff-cine-hero{
  min-height:var(--ff-home-hero-h);
  padding-left:clamp(34px,3.7vw,56px);
}

.ff-page.ff-menu-clean .ff-cine-mission{
  align-self:end;
  justify-self:end;
  width:clamp(300px,24vw,344px);
  min-height:118px;
  margin:0 clamp(18px,2vw,30px) clamp(36px,5.4vh,58px) 0;
}

.ff-page.ff-menu-clean .ff-cine-news{
  padding:var(--ff-home-preview-pad);
  min-height:0;
}

.ff-page.ff-menu-clean .ff-cine-news-list article{
  min-height:34px;
  padding:8px 0;
}

.ff-page.ff-menu-clean .ff-cine-news-list span{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  white-space:normal;
  line-height:1.35;
}

.ff-page.ff-menu-clean .ff-news-more{
  min-height:32px;
  margin-top:10px;
}

.ff-page.ff-menu-clean .ff-cine-preview{
  padding:var(--ff-home-preview-pad);
}

.ff-page.ff-menu-clean .ff-cine-preview-grid{
  gap:clamp(8px,1vw,12px);
  margin-top:10px;
}

.ff-page.ff-menu-clean .ff-cine-preview-grid article{
  min-height:70px;
  padding:13px 14px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.ff-page.ff-menu-clean .ff-cine-preview-grid article small{
  max-width:calc(100% - 76px);
}

.ff-page.ff-menu-clean .ff-cine-start-map-card img{
  width:clamp(54px,5vw,72px);
  height:clamp(34px,3.4vw,46px);
}

.ff-page.ff-menu-clean .ff-cine-bottom{
  min-height:132px;
  padding:var(--ff-home-bottom-pad) clamp(18px,1.9vw,26px);
  grid-template-columns:minmax(208px,.30fr) minmax(0,1fr) minmax(220px,.28fr);
}

.ff-page.ff-menu-clean .ff-cine-tip{
  align-self:stretch;
  min-width:0;
  padding-right:clamp(16px,1.6vw,24px);
}

.ff-page.ff-menu-clean .ff-cine-stats{
  min-width:0;
  padding-inline:clamp(16px,1.6vw,24px);
}

.ff-page.ff-menu-clean .ff-cine-stats-grid{
  align-items:end;
  gap:clamp(6px,.8vw,10px);
}

.ff-page.ff-menu-clean .ff-cine-stats-grid > div{
  padding-right:clamp(8px,1vw,14px);
}

.ff-page.ff-menu-clean .ff-cine-social{
  min-width:0;
  align-self:center;
  padding-left:clamp(16px,1.6vw,24px);
}

.ff-page.ff-menu-clean .ff-cine-social > div{
  flex-wrap:wrap;
}

/* Medium desktop/tablet: preserve the same hierarchy but avoid squeezed cards. */
@media (min-width:900px) and (max-width:1180px){
  .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section.ff-menu-home-cinematic.is-active{
    --ff-home-news-w:clamp(292px,31vw,332px);
    --ff-home-hero-h:520px;
    grid-template-rows:var(--ff-home-hero-h) auto auto;
  }

  .ff-page.ff-menu-clean .ff-cine-preview-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .ff-page.ff-menu-clean .ff-cine-bottom{
    grid-template-columns:minmax(190px,.34fr) minmax(0,1fr);
    grid-template-areas:
      "tip stats"
      "social social";
    gap:16px 0;
  }

  .ff-page.ff-menu-clean .ff-cine-tip{grid-area:tip}
  .ff-page.ff-menu-clean .ff-cine-stats{grid-area:stats;border-right:0}
  .ff-page.ff-menu-clean .ff-cine-social{
    grid-area:social;
    padding-left:0;
    border-top:1px solid var(--ff-border);
    padding-top:14px;
  }
}

/* Wide screens: keep content cinematic, not oversized. */
@media (min-width:1600px){
  .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section.ff-menu-home-cinematic.is-active{
    --ff-home-hero-h:clamp(540px,56vh,610px);
    --ff-home-news-w:clamp(340px,24vw,392px);
  }

  .ff-page.ff-menu-clean .ff-cine-title span,
  .ff-page.ff-menu-clean .ff-cine-title em{
    font-size:clamp(5rem,5.25vw,6.25rem);
  }
}

/* Short laptop displays: reduce vertical weight without changing the design. */
@media (min-width:900px) and (max-height:820px){
  .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section.ff-menu-home-cinematic.is-active{
    --ff-home-hero-h:500px;
    grid-template-rows:var(--ff-home-hero-h) auto minmax(126px,auto);
    min-height:calc(var(--ff-home-hero-h) + 232px);
  }

  .ff-page.ff-menu-clean .ff-cine-hero{
    padding-top:10px;
    padding-bottom:10px;
  }

  .ff-page.ff-menu-clean .ff-cine-title span,
  .ff-page.ff-menu-clean .ff-cine-title em{
    font-size:clamp(4.15rem,5.4vw,5.2rem);
  }

  .ff-page.ff-menu-clean .ff-cine-mission{
    margin-bottom:48px;
  }

  .ff-page.ff-menu-clean .ff-cine-preview-grid article{
    min-height:66px;
  }

  .ff-page.ff-menu-clean .ff-cine-bottom{
    min-height:136px;
  }
}

/* Mobile/vertical screens: one clean column, with no fixed-height traps. */
@media (max-width:899px){
  .ff-page.ff-menu-clean{
    position:relative;
    height:auto;
    min-height:100vh;
    min-height:100dvh;
  }

  .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section.ff-menu-home-cinematic.is-active{
    --ff-home-hero-h:auto;
    grid-template-columns:1fr;
    grid-template-rows:auto;
    grid-template-areas:
      "hero"
      "mission"
      "preview"
      "news"
      "bottom";
    min-height:0;
  }

  .ff-page.ff-menu-clean .ff-menu-home-cinematic.is-active::before{
    height:clamp(480px,68vh,620px);
  }

  .ff-page.ff-menu-clean .ff-menu-home-cinematic.is-active::after{
    top:clamp(480px,68vh,620px);
  }

  .ff-page.ff-menu-clean .ff-cine-hero{
    width:100%;
    min-height:clamp(480px,68vh,620px);
    padding:clamp(28px,7vw,54px) clamp(20px,6vw,42px);
  }

  .ff-page.ff-menu-clean .ff-cine-mission{
    grid-area:mission;
    width:auto;
    min-height:0;
    margin:16px clamp(16px,5vw,24px);
    justify-self:stretch;
  }

  .ff-page.ff-menu-clean .ff-cine-news,
  .ff-page.ff-menu-clean .ff-cine-preview,
  .ff-page.ff-menu-clean .ff-cine-bottom{
    border-right:0;
    padding:clamp(16px,5vw,24px);
  }

  .ff-page.ff-menu-clean .ff-cine-news{
    border-top:1px solid var(--ff-border);
  }

  .ff-page.ff-menu-clean .ff-cine-preview-grid{
    grid-template-columns:1fr;
  }

  .ff-page.ff-menu-clean .ff-cine-bottom{
    grid-template-columns:1fr;
    gap:18px;
  }

  .ff-page.ff-menu-clean .ff-cine-tip,
  .ff-page.ff-menu-clean .ff-cine-stats,
  .ff-page.ff-menu-clean .ff-cine-social{
    border-right:0;
    padding:0;
  }

  .ff-page.ff-menu-clean .ff-cine-stats-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .ff-page.ff-menu-clean .ff-cine-stats-grid > div:nth-child(2n){
    border-right:0;
  }
}


/* v3.13.89 — professional subpage foundation.
   All non-home tabs now share one predictable content shell: page header,
   card grid, responsive columns, consistent spacing, no cascade forcing. */
.ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section:not(.ff-menu-home-cinematic).is-active{
  --ff-subpage-max:1360px;
  --ff-subpage-gap:clamp(14px,1.35vw,22px);
  --ff-subpage-pad:clamp(18px,2.2vw,34px);
  --ff-sub-card-bg:linear-gradient(180deg,rgba(12,18,42,.92),rgba(7,11,29,.92));
  --ff-sub-card-soft:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.025));
  --ff-sub-card-border:rgba(126,193,255,.13);
  width:100%;
  max-width:none;
  min-height:calc(100vh - var(--ff-top-h) - var(--ff-footer-h));
  min-height:calc(100dvh - var(--ff-top-h) - var(--ff-footer-h));
  padding:var(--ff-subpage-pad);
  background:
    radial-gradient(900px 500px at 76% 18%,rgba(47,134,255,.18),transparent 64%),
    radial-gradient(680px 420px at 14% 18%,rgba(245,197,24,.07),transparent 60%),
    linear-gradient(180deg,rgba(7,9,26,.96),rgba(8,11,28,.99));
  overflow:visible;
}

.ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section:not(.ff-menu-home-cinematic).is-active::before{
  inset:var(--ff-top-h) 0 var(--ff-footer-h) 0;
  opacity:.34;
  filter:saturate(1.05) contrast(1.04);
}

.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) h2,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) h3,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) h4{
  margin:0;
  font-family:var(--ff-font-head);
  line-height:.95;
  letter-spacing:-.02em;
  text-transform:uppercase;
}

.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) h2,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) h3{
  font-size:clamp(2rem,2.8vw,3.35rem);
}

.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) p{
  max-width:70ch;
  color:#9fb0d4;
  font-size:.86rem;
  line-height:1.55;
}

.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) .ff-btn,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) button,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) select,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) input{
  font-family:var(--ff-font-body);
}

.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) button:focus-visible,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) a:focus-visible,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) select:focus-visible,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) input:focus-visible{
  outline:2px solid var(--ff-blue);
  outline-offset:3px;
}

/* Maps */
.ff-page.ff-menu-clean .ff-maps-clean-stage{
  display:grid;
  gap:var(--ff-subpage-gap);
  padding:var(--ff-subpage-gap);
}
.ff-page.ff-menu-clean .ff-maps-clean-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,360px);
  gap:var(--ff-subpage-gap);
  align-items:stretch;
  padding:22px;
  border-radius:14px;
  background:
    linear-gradient(90deg,rgba(79,195,247,.08),rgba(168,85,247,.08) 68%,rgba(245,197,24,.05)),
    rgba(255,255,255,.035);
  border:1px solid var(--ff-sub-card-border);
}
.ff-page.ff-menu-clean .ff-maps-clean-copy h3,
.ff-page.ff-menu-clean .ff-shop-clean-title strong,
.ff-page.ff-menu-clean .ff-settings-topline h3,
.ff-page.ff-menu-clean .ff-leaderboard-topline h3{display:block;margin-top:8px}
.ff-page.ff-menu-clean .ff-maps-clean-copy p,
.ff-page.ff-menu-clean .ff-shop-clean-title p,
.ff-page.ff-menu-clean .ff-settings-topline p,
.ff-page.ff-menu-clean .ff-leaderboard-topline p{margin:.55rem 0 0}
.ff-page.ff-menu-clean .ff-maps-clean-status{padding:18px;display:flex;flex-direction:column;justify-content:center}
.ff-page.ff-menu-clean .ff-maps-clean-status span,
.ff-page.ff-menu-clean .ff-maps-clean-panel-head span,
.ff-page.ff-menu-clean .ff-maps-clean-stat-row span{color:#8fa1cc;font-size:.66rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.ff-page.ff-menu-clean .ff-maps-clean-status strong{font-size:1.2rem;text-transform:uppercase}
.ff-page.ff-menu-clean .ff-maps-clean-status small{color:#9fb0d4;line-height:1.35;margin-top:6px}
.ff-page.ff-menu-clean .ff-maps-clean-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,370px);gap:var(--ff-subpage-gap);align-items:start}
.ff-page.ff-menu-clean .ff-maps-clean-board{min-width:0}
.ff-page.ff-menu-clean .ff-maps-clean-frame{position:relative;overflow:hidden;border-radius:16px;border:1px solid rgba(126,193,255,.14);background:rgba(4,9,24,.68)}
.ff-page.ff-menu-clean .ff-maps-clean-image{display:block;width:100%;height:auto;min-height:360px;object-fit:cover}
.ff-page.ff-menu-clean .ff-maps-clean-hotspot,
.ff-page.ff-menu-clean .ff-maps-clean-poi,
.ff-page.ff-menu-clean .ff-maps-clean-region-hitbox{position:absolute;border:0;background:transparent;cursor:pointer}
.ff-page.ff-menu-clean .ff-maps-clean-region-hitbox{width:24%;height:26%;border-radius:24px}
.ff-page.ff-menu-clean .ff-map-region-hitbox-crystal{left:7%;top:54%}
.ff-page.ff-menu-clean .ff-map-region-hitbox-minecraft{left:26%;top:20%}
.ff-page.ff-menu-clean .ff-map-region-hitbox-ark{right:13%;top:52%}
.ff-page.ff-menu-clean .ff-map-region-hitbox-conan{right:25%;top:22%}
.ff-page.ff-menu-clean .ff-maps-clean-hotspot{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  align-items:center;
  gap:9px;
  width:clamp(150px,17vw,230px);
  padding:9px 10px;
  border:1px solid rgba(126,193,255,.18);
  border-radius:14px;
  background:rgba(5,12,30,.78);
  color:var(--ff-text);
  text-align:left;
  box-shadow:0 18px 38px rgba(0,0,0,.22);
  backdrop-filter:blur(8px);
}
.ff-page.ff-menu-clean .ff-maps-clean-hotspot.is-active{border-color:rgba(245,197,24,.48);background:rgba(32,28,10,.84)}
.ff-page.ff-menu-clean .ff-maps-clean-hotspot-icon{width:34px;height:34px;border-radius:10px;background:rgba(79,195,247,.11);display:flex;align-items:center;justify-content:center;color:var(--ff-blue)}
.ff-page.ff-menu-clean .ff-maps-clean-hotspot-copy{min-width:0}
.ff-page.ff-menu-clean .ff-maps-clean-hotspot-copy strong{display:block;font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ff-page.ff-menu-clean .ff-maps-clean-hotspot-copy small,
.ff-page.ff-menu-clean .ff-maps-clean-hotspot-status{display:block;color:#90a4d0;font-size:.58rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ff-page.ff-menu-clean .ff-maps-clean-hotspot-crystal{left:8%;bottom:14%}
.ff-page.ff-menu-clean .ff-maps-clean-hotspot-minecraft{left:28%;top:13%}
.ff-page.ff-menu-clean .ff-maps-clean-hotspot-ark{right:7%;bottom:16%}
.ff-page.ff-menu-clean .ff-maps-clean-hotspot-conan{right:28%;top:14%}
.ff-page.ff-menu-clean .ff-maps-clean-poi{width:32px;height:32px;border-radius:999px;background:rgba(79,195,247,.17);border:1px solid rgba(79,195,247,.34);color:var(--ff-blue)}
.ff-page.ff-menu-clean .ff-map-poi-crystal{left:18%;top:66%}.ff-page.ff-menu-clean .ff-map-poi-minecraft{left:39%;top:36%}.ff-page.ff-menu-clean .ff-map-poi-ark{right:18%;top:66%}.ff-page.ff-menu-clean .ff-map-poi-conan{right:38%;top:36%}
.ff-page.ff-menu-clean .ff-maps-clean-route-tracker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:12px;background:rgba(4,9,24,.62);border-top:1px solid rgba(126,193,255,.12)}
.ff-page.ff-menu-clean .ff-maps-clean-route-step{border:1px solid rgba(255,255,255,.09);border-radius:12px;background:rgba(255,255,255,.035);color:#fff;padding:10px;text-align:left;cursor:pointer}
.ff-page.ff-menu-clean .ff-maps-clean-route-step span{color:var(--ff-gold);font-size:.62rem;font-weight:900}.ff-page.ff-menu-clean .ff-maps-clean-route-step strong{display:block;font-size:.72rem}.ff-page.ff-menu-clean .ff-maps-clean-route-step small{color:#8fa1cc;font-size:.62rem}
.ff-page.ff-menu-clean .ff-maps-clean-sidebar{padding:18px;position:sticky;top:calc(var(--ff-top-h) + 18px)}
.ff-page.ff-menu-clean .ff-world-map-panel-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:14px}
.ff-page.ff-menu-clean .ff-world-map-panel-body h4{font-size:1.55rem;margin-bottom:8px}
.ff-page.ff-menu-clean .ff-world-map-panel-body p{font-size:.80rem}
.ff-page.ff-menu-clean .ff-world-map-pill-row{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0}
.ff-page.ff-menu-clean .ff-world-map-note{padding:12px;border-radius:12px;background:rgba(79,195,247,.08);border:1px solid rgba(79,195,247,.14);color:#b8c8e8;font-size:.76rem;line-height:1.45}
.ff-page.ff-menu-clean .ff-maps-clean-stat-list{display:grid;gap:8px;margin-top:12px}
.ff-page.ff-menu-clean .ff-maps-clean-stat-row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.ff-page.ff-menu-clean .ff-maps-clean-stat-row strong{text-align:right;font-size:.74rem}
.ff-page.ff-menu-clean .ff-maps-clean-side-action{width:100%;min-height:46px;margin-top:16px;font-weight:800;letter-spacing:.01em}
.ff-page.ff-menu-clean .ff-maps-clean-side-action.is-start-ready{box-shadow:0 14px 28px rgba(245,197,24,.18), inset 0 1px 0 rgba(255,255,255,.16)}


/* v3.14.12 — richer right sidebar on Maps */
.ff-page.ff-menu-clean .ff-maps-clean-sidebar{
  padding:20px;
  border-radius:18px;
  border:1px solid rgba(126,193,255,.16);
  background:
    radial-gradient(circle at 14% 16%,rgba(79,195,247,.11),transparent 34%),
    linear-gradient(180deg,rgba(8,18,44,.94),rgba(4,10,28,.98));
  box-shadow:0 20px 44px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.04);
}
.ff-page.ff-menu-clean .ff-maps-clean-sidebar[data-ff-hover-map="minecraft"]{
  background:
    radial-gradient(circle at 16% 14%,rgba(164,116,255,.20),transparent 32%),
    radial-gradient(circle at 88% 8%,rgba(79,195,247,.16),transparent 28%),
    linear-gradient(180deg,rgba(8,16,46,.96),rgba(4,10,28,.99));
}
.ff-page.ff-menu-clean .ff-maps-clean-sidebar[data-ff-hover-map="ark"]{
  background:
    radial-gradient(circle at 16% 14%,rgba(87,212,160,.14),transparent 30%),
    radial-gradient(circle at 88% 8%,rgba(79,195,247,.12),transparent 28%),
    linear-gradient(180deg,rgba(8,18,44,.96),rgba(4,10,28,.99));
}
.ff-page.ff-menu-clean .ff-maps-clean-sidebar[data-ff-hover-map="conan"]{
  background:
    radial-gradient(circle at 16% 14%,rgba(245,197,24,.14),transparent 30%),
    radial-gradient(circle at 88% 8%,rgba(255,130,92,.10),transparent 28%),
    linear-gradient(180deg,rgba(10,18,42,.96),rgba(5,10,26,.99));
}
.ff-page.ff-menu-clean .ff-world-map-panel-head{
  align-items:flex-start;
  margin-bottom:16px;
}
.ff-page.ff-menu-clean .ff-world-map-panel-head strong{
  flex:0 0 auto;
  padding:8px 12px;
  border-radius:12px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.09);
  color:#f2f7ff;
  font-size:.9rem;
  line-height:1.25;
  text-align:right;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.ff-page.ff-menu-clean .ff-maps-clean-sidebar[data-ff-hover-mode="selected"] .ff-world-map-panel-head strong{
  background:linear-gradient(180deg,rgba(56,126,255,.24),rgba(36,85,178,.16));
  border-color:rgba(110,170,255,.28);
  color:#eaf3ff;
}
.ff-page.ff-menu-clean .ff-maps-clean-sidebar[data-ff-hover-mode="locked"] .ff-world-map-panel-head strong{
  background:linear-gradient(180deg,rgba(255,193,86,.18),rgba(120,86,18,.12));
  border-color:rgba(255,212,106,.24);
  color:#ffe7ab;
}
.ff-page.ff-menu-clean .ff-world-map-panel-body h4{
  font-size:1.72rem;
  line-height:.98;
  letter-spacing:.01em;
  margin-bottom:10px;
}
.ff-page.ff-menu-clean .ff-world-map-panel-body p{
  color:#aebddf;
  font-size:.82rem;
  line-height:1.48;
}
.ff-page.ff-menu-clean .ff-world-map-pill-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:16px 0 14px;
}
.ff-page.ff-menu-clean .ff-world-map-pill-row span{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.045);
  color:#dfe9ff;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.03em;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.ff-page.ff-menu-clean .ff-world-map-pill-row span[data-chip-tone="progress"]{
  background:rgba(79,195,247,.12);
  border-color:rgba(79,195,247,.24);
  color:#97e7ff;
}
.ff-page.ff-menu-clean .ff-world-map-pill-row span[data-chip-tone="event"]{
  background:rgba(173,115,255,.14);
  border-color:rgba(173,115,255,.26);
  color:#d8bbff;
}
.ff-page.ff-menu-clean .ff-world-map-pill-row span[data-chip-tone="danger"]{
  background:rgba(255,150,104,.12);
  border-color:rgba(255,150,104,.24);
  color:#ffc19c;
}
.ff-page.ff-menu-clean .ff-world-map-pill-row span[data-chip-tone="reward"]{
  background:rgba(245,197,24,.12);
  border-color:rgba(245,197,24,.24);
  color:#ffdf72;
}
.ff-page.ff-menu-clean .ff-world-map-pill-row span[data-chip-tone="survival"]{
  background:rgba(86,209,153,.12);
  border-color:rgba(86,209,153,.24);
  color:#a5f0ca;
}
.ff-page.ff-menu-clean .ff-world-map-note{
  position:relative;
  padding:12px 14px 12px 16px;
  border-radius:14px;
  background:linear-gradient(180deg,rgba(68,122,190,.16),rgba(17,42,84,.20));
  border:1px solid rgba(100,170,255,.18);
  color:#d6e6ff;
  font-size:.77rem;
  line-height:1.5;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.ff-page.ff-menu-clean .ff-world-map-note::before{
  content:"";
  position:absolute;
  inset:10px auto 10px 0;
  width:3px;
  border-radius:999px;
  background:linear-gradient(180deg,#7fe4ff,#4e8fff);
}
.ff-page.ff-menu-clean .ff-maps-clean-sidebar[data-ff-hover-map="minecraft"] .ff-world-map-note{
  background:linear-gradient(180deg,rgba(112,76,181,.22),rgba(27,32,76,.22));
  border-color:rgba(167,124,255,.24);
}
.ff-page.ff-menu-clean .ff-maps-clean-sidebar[data-ff-hover-map="minecraft"] .ff-world-map-note::before{
  background:linear-gradient(180deg,#d0a8ff,#67d9ff);
}
.ff-page.ff-menu-clean .ff-maps-clean-sidebar[data-ff-hover-map="ark"] .ff-world-map-note{
  background:linear-gradient(180deg,rgba(49,110,86,.24),rgba(13,38,34,.24));
  border-color:rgba(90,208,155,.22);
}
.ff-page.ff-menu-clean .ff-maps-clean-sidebar[data-ff-hover-map="ark"] .ff-world-map-note::before{
  background:linear-gradient(180deg,#7ef1bf,#47b5ff);
}
.ff-page.ff-menu-clean .ff-maps-clean-sidebar[data-ff-hover-map="conan"] .ff-world-map-note{
  background:linear-gradient(180deg,rgba(138,94,34,.22),rgba(47,26,9,.24));
  border-color:rgba(255,189,95,.18);
}
.ff-page.ff-menu-clean .ff-world-map-note-clean::after{
  content:"i";
  position:absolute;
  top:10px;
  right:12px;
  width:18px;
  height:18px;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:.7rem;
  font-weight:900;
  color:#dbf4ff;
  background:rgba(255,255,255,.08);
}
.ff-page.ff-menu-clean .ff-maps-clean-stat-list{
  gap:0;
  margin-top:16px;
  border-top:1px solid rgba(255,255,255,.06);
}
.ff-page.ff-menu-clean .ff-maps-clean-stat-row{
  align-items:center;
  gap:14px;
  padding:12px 0;
  border-bottom:1px solid rgba(255,255,255,.07);
}
.ff-page.ff-menu-clean .ff-maps-clean-stat-row span{
  display:flex;
  align-items:center;
  gap:8px;
  color:#8ea4d2;
  font-size:.68rem;
}
.ff-page.ff-menu-clean .ff-maps-clean-stat-row span .ff-ui-ico{
  width:18px;
  text-align:center;
}
.ff-page.ff-menu-clean .ff-maps-clean-stat-row strong{
  text-align:right;
  font-size:.79rem;
  line-height:1.35;
  max-width:54%;
}
.ff-page.ff-menu-clean .ff-maps-clean-stat-difficulty span .ff-ui-ico,
.ff-page.ff-menu-clean .ff-maps-clean-stat-difficulty strong{color:#ffd76a}
.ff-page.ff-menu-clean .ff-maps-clean-stat-rewards span .ff-ui-ico,
.ff-page.ff-menu-clean .ff-maps-clean-stat-rewards strong{color:#84e8ff}
.ff-page.ff-menu-clean .ff-maps-clean-stat-status span .ff-ui-ico,
.ff-page.ff-menu-clean .ff-maps-clean-stat-status strong{color:#97f0c2}
.ff-page.ff-menu-clean .ff-maps-clean-stat-kind span .ff-ui-ico,
.ff-page.ff-menu-clean .ff-maps-clean-stat-kind strong{color:#d8bbff}
.ff-page.ff-menu-clean .ff-maps-clean-stat-record span .ff-ui-ico,
.ff-page.ff-menu-clean .ff-maps-clean-stat-record strong{color:#ffd27f}
.ff-page.ff-menu-clean .ff-maps-clean-side-action{
  width:100%;
  min-height:42px;
  margin-top:16px;
  border-color:rgba(255,255,255,.12);
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.035));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.ff-page.ff-menu-clean .ff-maps-clean-sidebar[data-ff-hover-mode="selected"] .ff-maps-clean-side-action{
  border-color:rgba(108,170,255,.28);
  background:linear-gradient(180deg,rgba(57,126,255,.20),rgba(21,59,130,.18));
  color:#edf6ff;
}
.ff-page.ff-menu-clean .ff-maps-clean-sidebar[data-ff-hover-mode="locked"] .ff-maps-clean-side-action{
  border-color:rgba(255,194,83,.18);
  color:#ffe3a2;
}
.ff-page.ff-menu-clean .ff-map-brief-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--ff-subpage-gap)}
.ff-page.ff-menu-clean .ff-map-brief-grid > div{padding:16px}.ff-page.ff-menu-clean .ff-map-brief-grid strong{display:block;margin:8px 0 4px}.ff-page.ff-menu-clean .ff-map-brief-grid small{color:#9fb0d4;line-height:1.45}
.ff-page.ff-menu-clean .ff-maps-clean-actions{display:flex;flex-wrap:wrap;gap:10px}.ff-page.ff-menu-clean .ff-maps-clean-actions .ff-btn{min-height:42px;padding:0 18px}
.ff-page.ff-menu-clean .ff-pickups-clean{width:min(var(--ff-subpage-max),100%);margin:var(--ff-subpage-gap) auto 0;padding:var(--ff-subpage-gap)}
.ff-page.ff-menu-clean .ff-pickup-map-note{color:#9fb0d4;font-size:.78rem;margin:8px 0 14px}.ff-page.ff-menu-clean .ff-pickup-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}.ff-page.ff-menu-clean .ff-pickup-item{padding:12px;display:grid;grid-template-columns:44px minmax(0,1fr);gap:10px;align-items:center}.ff-page.ff-menu-clean .ff-pickup-item img{width:44px;height:44px;object-fit:contain}.ff-page.ff-menu-clean .ff-pickup-item strong{font-size:.76rem}.ff-page.ff-menu-clean .ff-pickup-item span{grid-column:2;color:#91a2c9;font-size:.68rem;line-height:1.3}


/* v3.14.13 — richer readability for remaining Maps sections */
.ff-page.ff-menu-clean .ff-map-brief-grid{
  gap:16px;
}
.ff-page.ff-menu-clean .ff-map-brief-grid > div{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:18px 18px 16px;
  min-height:156px;
  border-radius:16px;
  border:1px solid rgba(126,193,255,.12);
  background:linear-gradient(180deg,rgba(9,17,42,.92),rgba(5,11,30,.96));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.ff-page.ff-menu-clean .ff-map-brief-grid > div::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  border-radius:16px 0 0 16px;
  background:linear-gradient(180deg,#56d8ff,#5a8fff);
  opacity:.95;
}
.ff-page.ff-menu-clean .ff-map-brief-grid > div:nth-child(2)::before{
  background:linear-gradient(180deg,#7cead0,#5fa6ff);
}
.ff-page.ff-menu-clean .ff-map-brief-grid > div:nth-child(3)::before{
  background:linear-gradient(180deg,#d2a8ff,#62d0ff);
}
.ff-page.ff-menu-clean .ff-map-brief-grid > div:nth-child(4)::before{
  background:linear-gradient(180deg,#ffc86f,#ff8f6b);
}
.ff-page.ff-menu-clean .ff-map-brief-grid > div > .ff-ui-ico{
  width:36px;
  height:36px;
  border-radius:12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(79,195,247,.12);
  border:1px solid rgba(79,195,247,.24);
  color:#7de7ff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.ff-page.ff-menu-clean .ff-map-brief-grid > div:nth-child(2) > .ff-ui-ico{
  background:rgba(86,209,153,.12);
  border-color:rgba(86,209,153,.24);
  color:#a4f3ca;
}
.ff-page.ff-menu-clean .ff-map-brief-grid > div:nth-child(3) > .ff-ui-ico{
  background:rgba(170,116,255,.13);
  border-color:rgba(170,116,255,.24);
  color:#dbc2ff;
}
.ff-page.ff-menu-clean .ff-map-brief-grid > div:nth-child(4) > .ff-ui-ico{
  background:rgba(255,170,102,.12);
  border-color:rgba(255,170,102,.22);
  color:#ffd4a3;
}
.ff-page.ff-menu-clean .ff-map-brief-grid strong{
  margin:0;
  color:#f5f9ff;
  font-size:clamp(.96rem,.82vw,1.1rem);
  line-height:1.2;
}
.ff-page.ff-menu-clean .ff-map-brief-grid small{
  color:#bfcee9;
  font-size:clamp(.80rem,.68vw,.92rem);
  line-height:1.68;
}
.ff-page.ff-menu-clean .ff-maps-clean-actions{
  margin-top:2px;
}
.ff-page.ff-menu-clean .ff-maps-clean-actions .ff-btn{
  min-height:44px;
  border-color:rgba(255,255,255,.12);
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.035));
  color:#eef5ff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.ff-page.ff-menu-clean .ff-maps-clean-actions .ff-btn .ff-ui-ico{
  color:#9fdcff;
}
.ff-page.ff-menu-clean .ff-pickups-clean{
  width:min(var(--ff-subpage-max),100%);
  margin:var(--ff-subpage-gap) auto 0;
  padding:18px;
  border-radius:18px;
  border:1px solid rgba(126,193,255,.14);
  background:
    radial-gradient(circle at 88% 10%,rgba(79,195,247,.07),transparent 22%),
    linear-gradient(180deg,rgba(6,14,38,.96),rgba(4,10,28,.98));
  box-shadow:0 18px 38px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.04);
}
.ff-page.ff-menu-clean .ff-pickups-clean .ff-subpage-panel-heading{
  display:flex;
  align-items:center;
  gap:10px;
  color:#f4f8ff;
}
.ff-page.ff-menu-clean .ff-pickups-clean .ff-subpage-panel-heading .ff-ui-ico{
  color:#ffd85f;
}
.ff-page.ff-menu-clean .ff-pickup-map-note{
  position:relative;
  margin:10px 0 16px;
  padding-left:14px;
  color:#b8caea;
  font-size:clamp(.82rem,.7vw,.94rem);
  line-height:1.55;
}
.ff-page.ff-menu-clean .ff-pickup-map-note::before{
  content:"";
  position:absolute;
  left:0;
  top:2px;
  bottom:2px;
  width:3px;
  border-radius:999px;
  background:linear-gradient(180deg,#66d9ff,#5c89ff);
}
.ff-page.ff-menu-clean .ff-pickup-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:12px;
}
.ff-page.ff-menu-clean .ff-pickup-item{
  padding:14px 14px 13px;
  display:grid;
  grid-template-columns:52px minmax(0,1fr);
  gap:12px;
  align-items:start;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.02));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.ff-page.ff-menu-clean .ff-pickup-item img{
  width:48px;
  height:48px;
  object-fit:contain;
  align-self:start;
  filter:drop-shadow(0 8px 14px rgba(0,0,0,.18));
}
.ff-page.ff-menu-clean .ff-pickup-item strong{
  margin-top:2px;
  color:#f4f8ff;
  font-size:clamp(.94rem,.80vw,1.08rem);
  line-height:1.22;
}
.ff-page.ff-menu-clean .ff-pickup-item span{
  grid-column:2;
  color:#bed0eb;
  font-size:clamp(.80rem,.68vw,.92rem);
  line-height:1.6;
}
.ff-page.ff-menu-clean .ff-pickup-item[data-ff-pickup-map*="minecraft"]{
  background:linear-gradient(180deg,rgba(126,88,198,.14),rgba(28,34,76,.16));
  border-color:rgba(170,118,255,.16);
}
.ff-page.ff-menu-clean .ff-pickup-item[data-ff-pickup-map*="minecraft"] strong{
  color:#f1e8ff;
}
.ff-page.ff-menu-clean .ff-pickup-item[data-ff-pickup-map*="ark"]{
  background:linear-gradient(180deg,rgba(36,104,92,.16),rgba(11,34,34,.18));
  border-color:rgba(86,209,153,.16);
}
.ff-page.ff-menu-clean .ff-pickup-item[data-ff-pickup-map*="ark"] strong{
  color:#e7fff5;
}
.ff-page.ff-menu-clean .ff-pickup-item[data-ff-pickup-map*="conan"]{
  background:linear-gradient(180deg,rgba(118,76,24,.16),rgba(41,24,9,.18));
  border-color:rgba(255,191,104,.15);
}
.ff-page.ff-menu-clean .ff-pickup-item[data-ff-pickup-map*="conan"] strong{
  color:#fff1dc;
}
.ff-page.ff-menu-clean .ff-pickup-item[data-ff-pickup-map="all"],
.ff-page.ff-menu-clean .ff-pickup-item[data-ff-pickup-map="crystal,minecraft"]{
  background:linear-gradient(180deg,rgba(42,86,150,.14),rgba(10,25,56,.16));
  border-color:rgba(103,166,255,.14);
}
@media (max-width:960px){
  .ff-page.ff-menu-clean .ff-map-brief-grid > div{
    min-height:0;
  }
  .ff-page.ff-menu-clean .ff-pickup-grid{
    grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  }
}

/* v3.14.14 — unified premium style for the whole Maps tab */
.ff-page.ff-menu-clean .ff-maps-clean-main{
  position:relative;
  overflow:visible;
  border-radius:22px;
  border:1px solid rgba(126,193,255,.12);
  background:
    radial-gradient(circle at 12% 8%,rgba(79,195,247,.06),transparent 22%),
    radial-gradient(circle at 88% 0%,rgba(168,85,247,.05),transparent 24%),
    linear-gradient(180deg,rgba(6,14,38,.98),rgba(3,9,24,1));
  box-shadow:0 24px 60px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.04);
}
.ff-page.ff-menu-clean .ff-maps-clean-stage{
  position:relative;
  gap:18px;
}
.ff-page.ff-menu-clean .ff-maps-clean-hero,
.ff-page.ff-menu-clean .ff-maps-clean-frame,
.ff-page.ff-menu-clean .ff-pickups-clean,
.ff-page.ff-menu-clean .ff-map-brief-grid > div,
.ff-page.ff-menu-clean .ff-maps-clean-sidebar{
  box-shadow:0 18px 40px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.04);
}
.ff-page.ff-menu-clean .ff-maps-clean-hero{
  position:relative;
  overflow:hidden;
  border-radius:20px;
  border:1px solid rgba(126,193,255,.14);
  background:
    radial-gradient(circle at 9% 20%,rgba(79,195,247,.14),transparent 26%),
    radial-gradient(circle at 92% 16%,rgba(168,85,247,.12),transparent 24%),
    linear-gradient(90deg,rgba(10,25,56,.94),rgba(10,17,40,.95) 55%,rgba(18,20,48,.95));
}
.ff-page.ff-menu-clean .ff-maps-clean-hero::after{
  content:"";
  position:absolute;
  inset:auto -14% -52% 52%;
  height:180px;
  background:radial-gradient(circle,rgba(245,197,24,.12),transparent 64%);
  pointer-events:none;
}
.ff-page.ff-menu-clean .ff-maps-clean-copy p{
  max-width:62ch;
  color:#b9c7e5;
}
.ff-page.ff-menu-clean .ff-maps-clean-status{
  border-radius:18px;
  border:1px solid rgba(255,255,255,.09);
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.025));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.ff-page.ff-menu-clean .ff-maps-clean-status strong{
  color:#f5f9ff;
  letter-spacing:.02em;
}
.ff-page.ff-menu-clean .ff-maps-clean-status small{
  color:#bfd0ea;
  line-height:1.48;
}
.ff-page.ff-menu-clean .ff-maps-clean-shell{
  align-items:stretch;
}
.ff-page.ff-menu-clean .ff-maps-clean-board{
  display:flex;
  flex-direction:column;
  gap:0;
}
.ff-page.ff-menu-clean .ff-maps-clean-frame{
  position:relative;
  overflow:hidden;
  border-radius:20px 20px 0 0;
  border:1px solid rgba(126,193,255,.16);
  background:
    radial-gradient(circle at 30% 12%,rgba(79,195,247,.10),transparent 28%),
    linear-gradient(180deg,rgba(6,14,38,.96),rgba(4,10,28,.98));
}
.ff-page.ff-menu-clean .ff-maps-clean-frame::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  border:1px solid rgba(255,255,255,.03);
  box-shadow:inset 0 -80px 120px rgba(3,8,20,.24);
  pointer-events:none;
}
.ff-page.ff-menu-clean .ff-maps-clean-route-tracker{
  border:1px solid rgba(126,193,255,.16);
  border-top:0;
  border-radius:0 0 20px 20px;
  background:linear-gradient(180deg,rgba(8,18,43,.92),rgba(4,10,26,.98));
}
.ff-page.ff-menu-clean .ff-maps-clean-route-step{
  position:relative;
  padding:11px 12px;
  border-color:rgba(255,255,255,.10);
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.022));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.ff-page.ff-menu-clean .ff-maps-clean-route-step::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  border-radius:12px 0 0 12px;
  background:linear-gradient(180deg,#68dbff,#5a8fff);
}
.ff-page.ff-menu-clean .ff-maps-clean-route-step:nth-child(2)::before{background:linear-gradient(180deg,#cc9cff,#63ddff)}
.ff-page.ff-menu-clean .ff-maps-clean-route-step:nth-child(3)::before{background:linear-gradient(180deg,#ffca70,#ff8f6e)}
.ff-page.ff-menu-clean .ff-maps-clean-route-step:nth-child(4)::before{background:linear-gradient(180deg,#7fe7c0,#58abff)}
.ff-page.ff-menu-clean .ff-maps-clean-route-step strong{color:#f2f7ff}
.ff-page.ff-menu-clean .ff-maps-clean-route-step small{color:#a8bbdf;line-height:1.35}
.ff-page.ff-menu-clean .ff-maps-clean-hotspot{
  border-color:rgba(255,255,255,.13);
  background:linear-gradient(180deg,rgba(8,18,44,.88),rgba(4,10,28,.9));
  box-shadow:0 18px 34px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.05);
}
.ff-page.ff-menu-clean .ff-maps-clean-hotspot-copy strong{color:#f4f8ff}
.ff-page.ff-menu-clean .ff-maps-clean-hotspot-status{font-weight:900;letter-spacing:.06em}
.ff-page.ff-menu-clean .ff-maps-clean-hotspot-crystal .ff-maps-clean-hotspot-icon{
  background:rgba(79,195,247,.12);
  border:1px solid rgba(79,195,247,.20);
  color:#7de8ff;
}
.ff-page.ff-menu-clean .ff-maps-clean-hotspot-minecraft .ff-maps-clean-hotspot-icon{
  background:rgba(173,115,255,.12);
  border:1px solid rgba(173,115,255,.20);
  color:#d9c1ff;
}
.ff-page.ff-menu-clean .ff-maps-clean-hotspot-conan .ff-maps-clean-hotspot-icon{
  background:rgba(255,170,102,.12);
  border:1px solid rgba(255,170,102,.20);
  color:#ffd4a3;
}
.ff-page.ff-menu-clean .ff-maps-clean-hotspot-ark .ff-maps-clean-hotspot-icon{
  background:rgba(86,209,153,.12);
  border:1px solid rgba(86,209,153,.20);
  color:#a7f1ca;
}
.ff-page.ff-menu-clean .ff-maps-clean-hotspot.is-active{
  border-color:rgba(245,197,24,.42);
  background:linear-gradient(180deg,rgba(28,35,65,.96),rgba(18,22,44,.98));
}
.ff-page.ff-menu-clean .ff-maps-clean-hotspot.is-active::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  box-shadow:0 0 0 1px rgba(245,197,24,.14), 0 0 30px rgba(245,197,24,.12);
  pointer-events:none;
}
.ff-page.ff-menu-clean .ff-map-brief-grid,
.ff-page.ff-menu-clean .ff-pickup-grid{
  align-items:stretch;
}
.ff-page.ff-menu-clean .ff-maps-clean-actions{
  display:flex;
  justify-content:flex-start;
}
.ff-page.ff-menu-clean .ff-maps-clean-actions .ff-btn{
  min-width:230px;
}
.ff-maps-clean-floating-cta-global{
  border-radius:22px;
  border:1px solid rgba(126,193,255,.18);
  background:
    radial-gradient(circle at 14% 18%,rgba(79,195,247,.12),transparent 28%),
    linear-gradient(180deg, rgba(9,18,45,.98), rgba(5,10,28,.99));
  box-shadow:0 28px 70px rgba(0,0,0,.48), inset 0 1px 0 rgba(255,255,255,.07);
}
.ff-maps-clean-floating-cta-global::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  border-radius:22px 0 0 22px;
  background:linear-gradient(180deg,#ffd85f,#5dbdff);
}
.ff-maps-clean-floating-cta-global .ff-maps-clean-floating-copy span{
  color:#ffd85f;
}
.ff-maps-clean-floating-cta-global .ff-maps-clean-floating-copy strong{
  color:#f4f8ff;
  text-shadow:0 0 18px rgba(255,255,255,.04);
}
.ff-maps-clean-floating-cta-global .ff-maps-clean-floating-start{
  min-height:58px;
  padding:0 28px;
  border-radius:16px;
  box-shadow:0 16px 34px rgba(245,197,24,.18), inset 0 1px 0 rgba(255,255,255,.18);
}
@media (max-width:960px){
  .ff-page.ff-menu-clean .ff-maps-clean-hero{
    border-radius:18px;
  }
  .ff-page.ff-menu-clean .ff-maps-clean-frame{
    border-radius:18px 18px 0 0;
  }
  .ff-page.ff-menu-clean .ff-maps-clean-route-tracker{
    border-radius:0 0 18px 18px;
  }
  .ff-page.ff-menu-clean .ff-maps-clean-actions .ff-btn{
    width:100%;
    min-width:0;
  }
}
@media (max-width:720px){
  .ff-maps-clean-floating-cta-global{
    border-radius:18px;
  }
  .ff-maps-clean-floating-cta-global::before{
    width:100%;
    height:3px;
    inset:0 0 auto 0;
    border-radius:18px 18px 0 0;
  }
}


/* v3.14.15 — single in-section Maps CTA, no duplicated fixed bar */
.ff-page.ff-menu-clean .ff-maps-clean-floating-cta{
  position:sticky;
  left:auto;
  right:auto;
  bottom:max(16px, env(safe-area-inset-bottom, 0px) + 12px);
  z-index:60;
  display:none;
  align-items:center;
  gap:14px;
  width:min(720px,100%);
  margin:16px 0 0 auto;
  padding:14px 16px;
  border-radius:22px;
  border:1px solid rgba(126,193,255,.18);
  background:
    radial-gradient(circle at 14% 18%,rgba(79,195,247,.12),transparent 28%),
    linear-gradient(180deg, rgba(9,18,45,.98), rgba(5,10,28,.99));
  box-shadow:0 24px 54px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.07);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  transform:none;
}
.ff-page.ff-menu-clean .ff-maps-clean-floating-cta.is-visible{
  display:flex;
}
.ff-page.ff-menu-clean .ff-maps-clean-floating-cta::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  border-radius:22px 0 0 22px;
  background:linear-gradient(180deg,#ffd85f,#5dbdff);
}
.ff-page.ff-menu-clean .ff-maps-clean-floating-cta .ff-maps-clean-floating-copy{
  min-width:0;
  flex:1 1 auto;
}
.ff-page.ff-menu-clean .ff-maps-clean-floating-cta .ff-maps-clean-floating-copy span{
  display:block;
  color:#ffd85f;
  font-size:.68rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.12em;
  margin-bottom:6px;
}
.ff-page.ff-menu-clean .ff-maps-clean-floating-cta .ff-maps-clean-floating-copy strong{
  display:block;
  color:#f4f8ff;
  font-family:var(--ff-font-head, var(--ff-head, inherit));
  font-size:1rem;
  line-height:1.15;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-maps-clean-floating-cta .ff-maps-clean-floating-start{
  flex:0 0 auto;
  min-height:58px;
  padding:0 28px;
  white-space:nowrap;
  border-radius:16px;
  box-shadow:0 16px 34px rgba(245,197,24,.18), inset 0 1px 0 rgba(255,255,255,.18);
}
/* Safety override for pages loaded with old class from previous builds. */
.ff-page.ff-menu-clean .ff-maps-clean-floating-cta.ff-maps-clean-floating-cta-global{
  position:sticky;
  right:auto;
  left:auto;
  top:auto;
  display:none;
  width:min(720px,100%);
  transform:none;
}
.ff-page.ff-menu-clean .ff-maps-clean-floating-cta.ff-maps-clean-floating-cta-global.is-visible{
  display:flex;
}
body.ff-map-cta-active .ff-toast{
  bottom:calc(max(20px,env(safe-area-inset-bottom,0px) + 16px) + 96px);
}
@media (max-width:980px){
  .ff-page.ff-menu-clean .ff-maps-clean-floating-cta{
    width:100%;
    padding:12px;
    gap:12px;
  }
  .ff-page.ff-menu-clean .ff-maps-clean-floating-cta .ff-maps-clean-floating-start{
    min-height:50px;
    padding:0 18px;
  }
}
@media (max-width:720px){
  .ff-page.ff-menu-clean .ff-maps-clean-floating-cta{
    flex-direction:column;
    align-items:stretch;
    gap:10px;
    border-radius:18px;
  }
  .ff-page.ff-menu-clean .ff-maps-clean-floating-cta::before{
    width:100%;
    height:3px;
    inset:0 0 auto 0;
    border-radius:18px 18px 0 0;
  }
  .ff-page.ff-menu-clean .ff-maps-clean-floating-cta .ff-maps-clean-floating-copy strong{
    font-size:.92rem;
  }
  .ff-page.ff-menu-clean .ff-maps-clean-floating-cta .ff-maps-clean-floating-start{
    width:100%;
    justify-content:center;
  }
}

/* Shop + skins */
.ff-page.ff-menu-clean .ff-shop-stage-card,
.ff-page.ff-menu-clean .ff-skins-clean-panel{padding:var(--ff-subpage-gap)}
.ff-page.ff-menu-clean .ff-shop-clean{display:grid;gap:var(--ff-subpage-gap)}
.ff-page.ff-menu-clean .ff-shop-clean-command{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(4,minmax(120px,.55fr));gap:12px}
.ff-page.ff-menu-clean .ff-shop-clean-title{padding:20px;border-radius:14px;background:linear-gradient(90deg,rgba(168,85,247,.12),rgba(79,195,247,.07));border:1px solid var(--ff-sub-card-border)}
.ff-page.ff-menu-clean .ff-shop-clean-title > span{color:var(--ff-gold);font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.14em}
.ff-page.ff-menu-clean .ff-shop-clean-command-card{padding:16px;display:flex;flex-direction:column;justify-content:center}
.ff-page.ff-menu-clean .ff-shop-clean-command-card > span{color:#8fa1cc;font-size:.62rem;font-weight:900;letter-spacing:.10em;text-transform:uppercase}.ff-page.ff-menu-clean .ff-shop-clean-command-card strong{margin-top:8px;font-family:var(--ff-font-head);font-size:2rem}.ff-page.ff-menu-clean .ff-shop-clean-command-card small{color:#8fa1cc}
.ff-page.ff-menu-clean .ff-shop-clean-filter-deck{display:grid;gap:12px;padding:14px;border-radius:14px;background:rgba(255,255,255,.035);border:1px solid var(--ff-sub-card-border)}
.ff-page.ff-menu-clean .ff-shop-clean-filter-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:center}.ff-page.ff-menu-clean .ff-shop-clean-filter-title{color:var(--ff-gold);font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.ff-page.ff-menu-clean .ff-shop-clean-selects{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.ff-page.ff-menu-clean .ff-shop-clean-selects select,
.ff-page.ff-menu-clean .ff-settings-select-card select{height:38px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#0d132e;color:#fff;padding:0 10px}
.ff-page.ff-menu-clean .ff-shop-clean-chip-row{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.ff-page.ff-menu-clean .ff-shop-tabs{display:flex;flex-wrap:wrap;gap:8px}.ff-page.ff-menu-clean .ff-shop-tabs button,
.ff-page.ff-menu-clean .ff-leaderboard-tabs button,
.ff-page.ff-menu-clean .ff-settings-preset-grid button{min-height:34px;padding:0 12px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.045);color:#c9d8ff;font-size:.66rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em;cursor:pointer}.ff-page.ff-menu-clean .ff-shop-tabs button.is-active,
.ff-page.ff-menu-clean .ff-leaderboard-tabs button.is-active{background:rgba(245,197,24,.14);border-color:rgba(245,197,24,.36);color:#fff}
.ff-page.ff-menu-clean .ff-shop-clean-preview{display:grid;grid-template-columns:220px minmax(0,1fr);gap:18px;align-items:center;padding:18px;border-radius:14px;background:linear-gradient(90deg,rgba(79,195,247,.07),rgba(168,85,247,.10));border:1px solid var(--ff-sub-card-border)}.ff-page.ff-menu-clean .ff-shop-preview-ribbon{grid-column:1 / -1;color:var(--ff-gold);font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.ff-page.ff-menu-clean .ff-shop-preview-visual{min-height:170px;display:flex;align-items:center;justify-content:center;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}.ff-page.ff-menu-clean .ff-shop-preview-visual img{max-width:170px;max-height:170px;object-fit:contain}.ff-page.ff-menu-clean .ff-shop-preview-copy strong{display:block;font-size:1.6rem}.ff-page.ff-menu-clean .ff-shop-preview-copy small,.ff-page.ff-menu-clean .ff-shop-preview-copy p{color:#9fb0d4}.ff-page.ff-menu-clean .ff-shop-preview-meta{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.ff-page.ff-menu-clean .ff-shop-preview-meta span{padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.06);font-size:.66rem;font-weight:900;color:#dfe8ff}
.ff-page.ff-menu-clean .ff-shop-clean-collection-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.ff-page.ff-menu-clean .ff-shop-clean-collection-head strong{display:block}.ff-page.ff-menu-clean .ff-shop-clean-collection-head small,.ff-page.ff-menu-clean .ff-shop-clean-collection-head em{color:#8fa1cc;font-size:.72rem}
.ff-page.ff-menu-clean .ff-shop-clean-grid,
.ff-page.ff-menu-clean .ff-skins-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--ff-subpage-gap)}
.ff-page.ff-menu-clean .ff-shop-card,
.ff-page.ff-menu-clean .ff-skins-grid button{position:relative;display:grid;grid-template-columns:82px minmax(0,1fr);gap:14px;min-width:0;padding:14px;border-radius:14px;background:var(--ff-sub-card-soft);border:1px solid var(--ff-sub-card-border);color:var(--ff-text);text-align:left;overflow:hidden}.ff-page.ff-menu-clean .ff-shop-card img,
.ff-page.ff-menu-clean .ff-skins-grid button img{width:82px;height:94px;object-fit:contain;border-radius:12px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08)}.ff-page.ff-menu-clean .ff-shop-card-copy,
.ff-page.ff-menu-clean .ff-skins-grid button{min-width:0}.ff-page.ff-menu-clean .ff-shop-card-badges,
.ff-page.ff-menu-clean .ff-skin-topline{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.ff-page.ff-menu-clean .ff-shop-card-copy strong,
.ff-page.ff-menu-clean .ff-skin-name{display:block;font-size:.92rem;color:#fff;text-transform:uppercase}.ff-page.ff-menu-clean .ff-shop-role,
.ff-page.ff-menu-clean .ff-skin-role,
.ff-page.ff-menu-clean .ff-skin-meta,
.ff-page.ff-menu-clean .ff-shop-card-copy span,
.ff-page.ff-menu-clean .ff-shop-lore,
.ff-page.ff-menu-clean .ff-skin-lore{color:#8fa1cc;font-size:.68rem;line-height:1.35}.ff-page.ff-menu-clean .ff-shop-lore,
.ff-page.ff-menu-clean .ff-skin-lore{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:8px 0}.ff-page.ff-menu-clean .ff-skin-stat-chips,
.ff-page.ff-menu-clean .ff-effect-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.ff-page.ff-menu-clean .ff-shop-card > button{grid-column:1 / -1;min-height:34px;border-radius:10px;border:1px solid rgba(245,197,24,.28);background:rgba(245,197,24,.14);color:#fff;font-weight:900;text-transform:uppercase;cursor:pointer}.ff-page.ff-menu-clean .ff-shop-card.is-owned > button{border-color:rgba(79,195,247,.25);background:rgba(79,195,247,.10)}.ff-page.ff-menu-clean .ff-shop-clean-coming-card{display:flex;flex-direction:column;justify-content:center;gap:10px;min-height:180px;padding:18px;border-radius:14px;background:linear-gradient(145deg,rgba(245,197,24,.10),rgba(79,195,247,.06));border:1px dashed rgba(245,197,24,.30)}
.ff-page.ff-menu-clean .ff-wallet{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0;padding:14px}.ff-page.ff-menu-clean .ff-wallet strong{font-size:1.6rem;font-family:var(--ff-font-head)}
.ff-page.ff-menu-clean .ff-lock-badge{position:absolute;right:12px;top:12px;padding:4px 8px;border-radius:999px;background:rgba(0,0,0,.45);color:#ffd66b;font-size:.58rem;font-style:normal;font-weight:900;text-transform:uppercase}

/* Leaderboard */
.ff-page.ff-menu-clean .ff-ranking-clean-panel{display:grid;gap:var(--ff-subpage-gap);padding:var(--ff-subpage-gap)}
.ff-page.ff-menu-clean .ff-leaderboard-topline,
.ff-page.ff-menu-clean .ff-settings-topline{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px;border-radius:14px;background:linear-gradient(90deg,rgba(79,195,247,.08),rgba(245,197,24,.04));border:1px solid var(--ff-sub-card-border)}
.ff-page.ff-menu-clean .ff-leaderboard-refresh,
.ff-page.ff-menu-clean .ff-settings-reset{min-height:38px;border-radius:10px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.06);color:#fff;padding:0 14px;font-weight:900;text-transform:uppercase;cursor:pointer}
.ff-page.ff-menu-clean .ff-leaderboard-scope-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.ff-page.ff-menu-clean .ff-leaderboard-tabs{display:flex;flex-wrap:wrap;gap:8px}.ff-page.ff-menu-clean .ff-leaderboard-note{color:#8fa1cc;font-size:.72rem}
.ff-page.ff-menu-clean .ff-leaderboard-layout{display:grid;grid-template-columns:minmax(260px,.34fr) minmax(0,1fr);grid-template-areas:"podium list" "stats stats";gap:var(--ff-subpage-gap)}.ff-page.ff-menu-clean .ff-leaderboard-podium-panel{grid-area:podium;padding:18px}.ff-page.ff-menu-clean .ff-leaderboard-list-panel{grid-area:list;padding:18px}.ff-page.ff-menu-clean .ff-leaderboard-stats-panel{grid-area:stats;padding:18px}.ff-page.ff-menu-clean .ff-leaderboard-podium-title,
.ff-page.ff-menu-clean .ff-leaderboard-list-head{display:flex;gap:10px;align-items:center;margin-bottom:14px}.ff-page.ff-menu-clean .ff-leaderboard-podium{display:grid;gap:10px}.ff-page.ff-menu-clean .ff-podium-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:10px;align-items:center;padding:12px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}.ff-page.ff-menu-clean .ff-podium-place{color:var(--ff-gold);font-weight:900}.ff-page.ff-menu-clean .ff-podium-card b{font-size:1.2rem}.ff-page.ff-menu-clean .ff-podium-card em{grid-column:2 / -1;color:#8fa1cc;font-size:.68rem;font-style:normal}.ff-page.ff-menu-clean .ff-leader-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.ff-page.ff-menu-clean .ff-leader-list li{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:42px;padding:0 12px;border-radius:12px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08)}.ff-page.ff-menu-clean .ff-leader-list em{color:var(--ff-gold);font-style:normal;font-weight:900}.ff-page.ff-menu-clean .ff-leader-list span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff}.ff-page.ff-menu-clean .ff-leaderboard-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.ff-page.ff-menu-clean .ff-leaderboard-stat-grid div{padding:14px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}.ff-page.ff-menu-clean .ff-leaderboard-stat-grid span{color:#8fa1cc;font-size:.62rem;font-weight:900;text-transform:uppercase}.ff-page.ff-menu-clean .ff-leaderboard-stat-grid strong{display:block;margin-top:6px;font-family:var(--ff-font-head);font-size:1.45rem}

/* Rules, changelog, settings */
.ff-page.ff-menu-clean .ff-rules-clean-panel,
.ff-page.ff-menu-clean .ff-changelog-clean-panel,
.ff-page.ff-menu-clean .ff-settings-clean-panel{padding:var(--ff-subpage-gap);display:grid;gap:var(--ff-subpage-gap)}
.ff-page.ff-menu-clean .ff-mode-box{padding:14px;color:#9fb0d4}
.ff-page.ff-menu-clean .ff-rules-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--ff-subpage-gap)}.ff-page.ff-menu-clean .ff-rule-item{padding:16px}.ff-page.ff-menu-clean .ff-rule-item strong{display:block;margin-bottom:8px}.ff-page.ff-menu-clean .ff-rule-item span{color:#9fb0d4;line-height:1.48;font-size:.78rem}.ff-page.ff-menu-clean .ff-rule-item-alert{border-color:rgba(245,197,24,.23);background:linear-gradient(180deg,rgba(245,197,24,.07),rgba(255,255,255,.025))}
.ff-page.ff-menu-clean .ff-changelog-list{display:grid;gap:10px}.ff-page.ff-menu-clean .ff-changelog-list > div{padding:16px}.ff-page.ff-menu-clean .ff-changelog-list strong{display:block;margin-bottom:5px}.ff-page.ff-menu-clean .ff-changelog-list span{color:#9fb0d4;font-size:.78rem;line-height:1.45}
.ff-page.ff-menu-clean .ff-settings-clean-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--ff-subpage-gap)}.ff-page.ff-menu-clean .ff-settings-card-block{padding:18px;display:grid;gap:14px}.ff-page.ff-menu-clean .ff-settings-block-head{display:flex;gap:10px;align-items:center}.ff-page.ff-menu-clean .ff-settings-block-head small{display:block;color:#8fa1cc}.ff-page.ff-menu-clean .ff-settings-toggle-card{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:56px;padding:10px;border-radius:12px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.04);color:var(--ff-text);text-align:left;cursor:pointer}.ff-page.ff-menu-clean .ff-settings-toggle-card small{display:block;color:#8fa1cc}.ff-page.ff-menu-clean .ff-settings-toggle-card em{font-style:normal;color:var(--ff-gold);font-weight:900;font-size:.70rem}.ff-page.ff-menu-clean .ff-settings-range label{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px;color:#8fa1cc;font-size:.72rem;font-weight:900}.ff-page.ff-menu-clean .ff-settings-range input{width:100%;accent-color:var(--ff-blue)}.ff-page.ff-menu-clean .ff-settings-preset-grid,
.ff-page.ff-menu-clean .ff-settings-keymap,
.ff-page.ff-menu-clean .ff-settings-recommended{display:grid;gap:8px}.ff-page.ff-menu-clean .ff-settings-keymap div,
.ff-page.ff-menu-clean .ff-settings-recommended div,
.ff-page.ff-menu-clean .ff-settings-help-note{padding:11px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}.ff-page.ff-menu-clean .ff-settings-keymap span,
.ff-page.ff-menu-clean .ff-settings-recommended span{display:block;color:#8fa1cc;font-size:.62rem;font-weight:900;text-transform:uppercase}.ff-page.ff-menu-clean .ff-settings-keymap strong,
.ff-page.ff-menu-clean .ff-settings-recommended strong{display:block;margin-top:4px}.ff-page.ff-menu-clean .ff-settings-select-card{display:grid;gap:8px}.ff-page.ff-menu-clean .ff-settings-select-card label{color:#fff;font-weight:900}.ff-page.ff-menu-clean .ff-settings-select-card small,
.ff-page.ff-menu-clean .ff-settings-help-note span{color:#9fb0d4;line-height:1.45}.ff-page.ff-menu-clean .ff-settings-wide-action{min-height:40px;border-radius:10px;border:1px solid rgba(79,195,247,.22);background:rgba(79,195,247,.08);color:#fff;font-weight:900;text-transform:uppercase;cursor:pointer}

/* Subpage responsiveness */
@media (max-width:1180px){
  .ff-page.ff-menu-clean .ff-maps-clean-shell,
  .ff-page.ff-menu-clean .ff-shop-clean-command,
  .ff-page.ff-menu-clean .ff-settings-clean-grid{grid-template-columns:1fr 1fr}
  .ff-page.ff-menu-clean .ff-shop-clean-title{grid-column:1 / -1}
  .ff-page.ff-menu-clean .ff-map-brief-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ff-page.ff-menu-clean .ff-shop-clean-selects{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ff-page.ff-menu-clean .ff-leaderboard-layout{grid-template-columns:1fr;grid-template-areas:"podium" "list" "stats"}
}

@media (max-width:860px){
  .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section:not(.ff-menu-home-cinematic).is-active{padding:16px 12px}
  .ff-page.ff-menu-clean .ff-maps-clean-sidebar{position:static}
  .ff-page.ff-menu-clean .ff-maps-clean-hotspot{position:relative;left:auto;right:auto;top:auto;bottom:auto;width:100%;margin:6px 0}
  .ff-page.ff-menu-clean .ff-maps-clean-route-tracker{grid-template-columns:1fr 1fr}
  .ff-page.ff-menu-clean .ff-shop-clean-filter-row{grid-template-columns:1fr}
}

@media (max-width:560px){
  .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section:not(.ff-menu-home-cinematic).is-active{padding:12px 10px}
  .ff-page.ff-menu-clean .ff-shop-preview-visual{min-height:130px}.ff-page.ff-menu-clean .ff-shop-preview-visual img{max-height:130px}
  .ff-page.ff-menu-clean .ff-leader-list li{grid-template-columns:40px minmax(0,1fr) auto}
}


/* v3.13.89 — map overlay realignment.
   Re-anchor map hotspot cards, POI icons and region hitboxes to the atlas,
   stabilize the map frame aspect ratio and prevent title/text drift across browsers. */
@media (min-width:861px){
  .ff-page.ff-menu-clean .ff-maps-clean-frame{
    aspect-ratio:4 / 3;
  }
  .ff-page.ff-menu-clean .ff-maps-clean-image{
    height:100%;
    min-height:0;
  }
  .ff-page.ff-menu-clean .ff-maps-clean-hotspot{
    width:clamp(182px,21%,236px);
    min-height:72px;
    padding:10px 12px;
    transform:translate(-50%,-50%);
    grid-template-columns:36px minmax(0,1fr);
    gap:10px;
  }
  .ff-page.ff-menu-clean .ff-maps-clean-hotspot-icon{
    width:36px;
    height:36px;
  }
  .ff-page.ff-menu-clean .ff-maps-clean-hotspot-copy strong{
    font-size:.8rem;
    line-height:1.08;
    white-space:normal;
    overflow:visible;
    text-overflow:clip;
    max-width:14ch;
  }
  .ff-page.ff-menu-clean .ff-maps-clean-hotspot-copy small,
  .ff-page.ff-menu-clean .ff-maps-clean-hotspot-status{
    line-height:1.16;
    white-space:normal;
    overflow:hidden;
    text-overflow:clip;
  }
  .ff-page.ff-menu-clean .ff-maps-clean-hotspot-crystal{left:16.5%;top:80.5%;right:auto;bottom:auto;}
  .ff-page.ff-menu-clean .ff-maps-clean-hotspot-minecraft{left:38.5%;top:16.5%;right:auto;bottom:auto;}
  .ff-page.ff-menu-clean .ff-maps-clean-hotspot-conan{left:60.5%;top:16.5%;right:auto;bottom:auto;}
  .ff-page.ff-menu-clean .ff-maps-clean-hotspot-ark{left:73%;top:79%;right:auto;bottom:auto;}

  .ff-page.ff-menu-clean .ff-maps-clean-poi{
    width:34px;
    height:34px;
    transform:translate(-50%,-50%);
    box-shadow:0 10px 22px rgba(4,12,28,.28);
  }
  .ff-page.ff-menu-clean .ff-map-poi-crystal{left:34.5%;top:72%;right:auto;bottom:auto;}
  .ff-page.ff-menu-clean .ff-map-poi-minecraft{left:40%;top:41%;right:auto;bottom:auto;}
  .ff-page.ff-menu-clean .ff-map-poi-conan{left:62.5%;top:35%;right:auto;bottom:auto;}
  .ff-page.ff-menu-clean .ff-map-poi-ark{left:74.5%;top:72%;right:auto;bottom:auto;}

  .ff-page.ff-menu-clean .ff-maps-clean-region-hitbox{
    border-radius:28px;
  }
  .ff-page.ff-menu-clean .ff-map-region-hitbox-crystal{left:4%;top:55%;width:30%;height:25%;}
  .ff-page.ff-menu-clean .ff-map-region-hitbox-minecraft{left:22%;top:7%;width:28%;height:27%;}
  .ff-page.ff-menu-clean .ff-map-region-hitbox-conan{left:53%;top:7%;width:30%;height:27%;right:auto;}
  .ff-page.ff-menu-clean .ff-map-region-hitbox-ark{left:56%;top:54%;width:33%;height:24%;right:auto;}
}


/* v3.13.89 — map region order correction.
   Correct quadrant mapping: top-left Crystal, top-right Minecraft,
   bottom-left Conan, bottom-right ARK. */
@media (min-width:861px){
  .ff-page.ff-menu-clean .ff-maps-clean-hotspot-crystal{left:16.5%;top:16.5%;}
  .ff-page.ff-menu-clean .ff-maps-clean-hotspot-minecraft{left:73%;top:16.5%;}
  .ff-page.ff-menu-clean .ff-maps-clean-hotspot-conan{left:16.5%;top:80.5%;}
  .ff-page.ff-menu-clean .ff-maps-clean-hotspot-ark{left:73%;top:79%;}

  .ff-page.ff-menu-clean .ff-map-poi-crystal{left:34.5%;top:41%;}
  .ff-page.ff-menu-clean .ff-map-poi-minecraft{left:62.5%;top:35%;}
  .ff-page.ff-menu-clean .ff-map-poi-conan{left:34.5%;top:72%;}
  .ff-page.ff-menu-clean .ff-map-poi-ark{left:74.5%;top:72%;}

  .ff-page.ff-menu-clean .ff-map-region-hitbox-crystal{left:4%;top:7%;width:30%;height:27%;}
  .ff-page.ff-menu-clean .ff-map-region-hitbox-minecraft{left:53%;top:7%;width:30%;height:27%;}
  .ff-page.ff-menu-clean .ff-map-region-hitbox-conan{left:4%;top:55%;width:30%;height:25%;}
  .ff-page.ff-menu-clean .ff-map-region-hitbox-ark{left:56%;top:54%;width:33%;height:24%;}
}


/* v3.13.89 — subpages polish pass.
   Compact, consistent, responsive refinement for Maps, Shop, Ranking,
   Profile and Settings while keeping the stable shell and no forced cascade flags. */
.ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section:not(.ff-menu-home-cinematic).is-active{
  --ff-subpage-max:1320px;
  --ff-subpage-gap:clamp(12px,1.05vw,18px);
  --ff-subpage-pad:clamp(16px,1.75vw,28px);
}
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) h2,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) h3{
  font-size:clamp(1.75rem,2.15vw,2.7rem);
}
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) p{
  font-size:.82rem;
  line-height:1.5;
}
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) .ff-btn,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) button{
  min-height:38px;
}

/* Maps: tighter atlas, cleaner sidebar and more stable cards. */
.ff-page.ff-menu-clean .ff-maps-clean-stage{
  gap:16px;
  padding:16px;
}
.ff-page.ff-menu-clean .ff-maps-clean-hero{
  grid-template-columns:minmax(0,1fr) minmax(250px,330px);
  padding:18px 20px;
  min-height:126px;
}
.ff-page.ff-menu-clean .ff-maps-clean-copy h3{
  margin-top:6px;
}
.ff-page.ff-menu-clean .ff-maps-clean-status{
  padding:15px 16px;
}
.ff-page.ff-menu-clean .ff-maps-clean-status strong{
  font-size:1.05rem;
}
.ff-page.ff-menu-clean .ff-maps-clean-shell{
  grid-template-columns:minmax(0,1fr) minmax(285px,345px);
  gap:16px;
}
.ff-page.ff-menu-clean .ff-maps-clean-sidebar{
  padding:16px;
}
.ff-page.ff-menu-clean .ff-world-map-panel-body h4{
  font-size:1.34rem;
}
.ff-page.ff-menu-clean .ff-world-map-note{
  font-size:.72rem;
  padding:10px;
}
.ff-page.ff-menu-clean .ff-maps-clean-stat-row{
  padding:8px 0;
}
.ff-page.ff-menu-clean .ff-maps-clean-route-tracker{
  gap:7px;
  padding:10px;
}
.ff-page.ff-menu-clean .ff-maps-clean-route-step{
  padding:9px;
}
.ff-page.ff-menu-clean .ff-map-brief-grid{
  gap:14px;
}
.ff-page.ff-menu-clean .ff-map-brief-grid > div{
  padding:15px;
  min-height:148px;
}
.ff-page.ff-menu-clean .ff-pickups-clean{
  padding:16px;
  margin-top:16px;
}
@media (min-width:861px){
  .ff-page.ff-menu-clean .ff-maps-clean-hotspot{
    width:clamp(164px,18.5%,216px);
    min-height:64px;
    grid-template-columns:32px minmax(0,1fr);
    gap:9px;
    padding:8px 10px;
  }
  .ff-page.ff-menu-clean .ff-maps-clean-hotspot-icon{
    width:32px;
    height:32px;
    border-radius:9px;
  }
  .ff-page.ff-menu-clean .ff-maps-clean-hotspot-copy strong{
    font-size:.74rem;
    max-width:15ch;
  }
  .ff-page.ff-menu-clean .ff-maps-clean-hotspot-copy small,
  .ff-page.ff-menu-clean .ff-maps-clean-hotspot-status{
    font-size:.54rem;
  }
  .ff-page.ff-menu-clean .ff-maps-clean-poi{
    width:28px;
    height:28px;
  }
}

/* Shop: more even header, lighter recommended card and aligned purchase buttons. */
.ff-page.ff-menu-clean .ff-shop-stage-card,
.ff-page.ff-menu-clean .ff-skins-clean-panel{
  padding:16px;
}
.ff-page.ff-menu-clean .ff-shop-clean{
  gap:16px;
}
.ff-page.ff-menu-clean .ff-shop-clean-command{
  grid-template-columns:minmax(0,1.25fr) repeat(4,minmax(112px,.46fr));
  gap:10px;
}
.ff-page.ff-menu-clean .ff-shop-clean-title{
  padding:18px;
}
.ff-page.ff-menu-clean .ff-shop-clean-command-card{
  min-height:92px;
  padding:14px;
}
.ff-page.ff-menu-clean .ff-shop-clean-command-card strong{
  font-size:1.75rem;
}
.ff-page.ff-menu-clean .ff-shop-clean-filter-deck{
  padding:12px;
  gap:10px;
}
.ff-page.ff-menu-clean .ff-shop-clean-selects select,
.ff-page.ff-menu-clean .ff-shop-clean-selects input{
  min-height:38px;
  border-radius:10px;
}
.ff-page.ff-menu-clean .ff-shop-clean-preview{
  grid-template-columns:190px minmax(0,1fr);
  gap:16px;
  padding:16px;
}
.ff-page.ff-menu-clean .ff-shop-preview-visual{
  min-height:150px;
}
.ff-page.ff-menu-clean .ff-shop-preview-visual img{
  max-width:150px;
  max-height:150px;
}
.ff-page.ff-menu-clean .ff-shop-preview-copy strong{
  font-size:1.42rem;
}
.ff-page.ff-menu-clean .ff-shop-clean-grid,
.ff-page.ff-menu-clean .ff-skins-grid{
  grid-template-columns:repeat(auto-fit,minmax(235px,1fr));
  gap:14px;
}
.ff-page.ff-menu-clean .ff-shop-card,
.ff-page.ff-menu-clean .ff-skins-grid button{
  grid-template-columns:76px minmax(0,1fr);
  gap:12px;
  padding:13px;
  min-height:220px;
}
.ff-page.ff-menu-clean .ff-shop-card img,
.ff-page.ff-menu-clean .ff-skins-grid button img{
  width:76px;
  height:88px;
}
.ff-page.ff-menu-clean .ff-shop-card-copy strong,
.ff-page.ff-menu-clean .ff-skin-name{
  font-size:.84rem;
  line-height:1.15;
}
.ff-page.ff-menu-clean .ff-shop-lore,
.ff-page.ff-menu-clean .ff-skin-lore{
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.ff-page.ff-menu-clean .ff-shop-card > button{
  align-self:end;
  min-height:38px;
  margin-top:auto;
}
.ff-page.ff-menu-clean .ff-shop-clean-coming-card{
  min-height:220px;
}

/* Ranking: less empty space and stronger hierarchy. */
.ff-page.ff-menu-clean .ff-ranking-clean-panel{
  padding:16px;
  gap:16px;
}
.ff-page.ff-menu-clean .ff-leaderboard-topline,
.ff-page.ff-menu-clean .ff-settings-topline{
  padding:20px;
  min-height:126px;
}
.ff-page.ff-menu-clean .ff-leaderboard-layout{
  grid-template-columns:minmax(245px,.30fr) minmax(0,1fr);
  gap:16px;
}
.ff-page.ff-menu-clean .ff-leaderboard-podium-panel,
.ff-page.ff-menu-clean .ff-leaderboard-list-panel,
.ff-page.ff-menu-clean .ff-leaderboard-stats-panel{
  padding:16px;
}
.ff-page.ff-menu-clean .ff-podium-card{
  min-height:66px;
  padding:11px;
}
.ff-page.ff-menu-clean .ff-podium-card b{
  font-size:1.08rem;
}
.ff-page.ff-menu-clean .ff-leader-list li{
  min-height:42px;
  border-radius:11px;
}
.ff-page.ff-menu-clean .ff-leaderboard-stat-grid div{
  padding:12px;
  min-height:74px;
}
.ff-page.ff-menu-clean .ff-leaderboard-stat-grid strong{
  font-size:1.28rem;
}

/* Settings: consistent cards, controls and reading rhythm. */
.ff-page.ff-menu-clean .ff-settings-clean-panel{
  padding:16px;
  gap:16px;
}
.ff-page.ff-menu-clean .ff-settings-clean-grid{
  gap:16px;
  align-items:start;
}
.ff-page.ff-menu-clean .ff-settings-card-block{
  padding:17px;
  gap:12px;
}
.ff-page.ff-menu-clean .ff-settings-block-head{
  min-height:40px;
}
.ff-page.ff-menu-clean .ff-settings-toggle-card{
  min-height:60px;
  padding:12px;
  border-radius:12px;
}
.ff-page.ff-menu-clean .ff-settings-range{
  padding:2px 0 4px;
}
.ff-page.ff-menu-clean .ff-settings-range input{
  min-height:30px;
}
.ff-page.ff-menu-clean .ff-settings-preset-grid button,
.ff-page.ff-menu-clean .ff-settings-wide-action{
  min-height:38px;
}
.ff-page.ff-menu-clean .ff-settings-keymap div,
.ff-page.ff-menu-clean .ff-settings-recommended div,
.ff-page.ff-menu-clean .ff-settings-help-note{
  padding:12px;
}

@media (min-width:1600px){
  .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section:not(.ff-menu-home-cinematic).is-active{
    --ff-subpage-max:1380px;
  }
  .ff-page.ff-menu-clean .ff-shop-clean-grid,
  .ff-page.ff-menu-clean .ff-skins-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}
@media (max-width:1180px){
  .ff-page.ff-menu-clean .ff-shop-clean-command{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .ff-page.ff-menu-clean .ff-shop-clean-title{
    grid-column:1 / -1;
  }
}
@media (max-width:560px){
  .ff-page.ff-menu-clean .ff-shop-clean-preview{
    grid-template-columns:1fr;
  }
  .ff-page.ff-menu-clean .ff-shop-card,
  .ff-page.ff-menu-clean .ff-skins-grid button{
    min-height:0;
  }
}
@media (prefers-reduced-motion:reduce){
  .ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) *,
  .ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) *::before,
  .ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) *::after{
    transition-duration:.01ms;
    animation-duration:.01ms;
    animation-iteration-count:1;
    scroll-behavior:auto;
  }
}


/* v3.13.89 — floating map start CTA */
.ff-page.ff-menu-clean .ff-maps-clean-actions{justify-content:flex-start;align-items:center}
.ff-page.ff-menu-clean .ff-maps-clean-floating-cta{
  position:fixed;
  right:max(22px, env(safe-area-inset-right, 0px) + 14px);
  bottom:max(22px, env(safe-area-inset-bottom, 0px) + 14px);
  z-index:120;
  display:flex;
  align-items:center;
  gap:14px;
  width:min(680px, calc(100vw - 36px));
  padding:14px 16px;
  border-radius:18px;
  border:1px solid rgba(126,193,255,.18);
  background:linear-gradient(180deg, rgba(8,18,43,.95), rgba(4,10,24,.96));
  box-shadow:0 24px 60px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.06);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}
.ff-page.ff-menu-clean .ff-maps-clean-floating-copy{
  min-width:0;
  flex:1 1 auto;
}
.ff-page.ff-menu-clean .ff-maps-clean-floating-copy span{
  display:block;
  color:var(--ff-gold);
  font-size:.68rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.12em;
  margin-bottom:6px;
}
.ff-page.ff-menu-clean .ff-maps-clean-floating-copy strong{
  display:block;
  color:#fff;
  font-size:1rem;
  line-height:1.15;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-maps-clean-floating-start{
  flex:0 0 auto;
  min-height:54px;
  padding:0 24px;
  white-space:nowrap;
  box-shadow:0 14px 32px rgba(245,197,24,.18);
}
.ff-page.ff-menu-clean .ff-player-panel>.ff-menu-section[data-ff-menu-section="maps"]:not(.is-active) .ff-maps-clean-floating-cta{display:none}
.ff-page.ff-menu-clean .ff-arcade.is-gameplay-mode .ff-maps-clean-floating-cta,
.ff-page.ff-menu-clean .ff-page-shell.is-gameplay-mode .ff-maps-clean-floating-cta,
.ff-page.ff-menu-clean [data-ff-active-menu]:not([data-ff-active-menu="maps"]) .ff-maps-clean-floating-cta{display:none}
@media (max-width: 980px){
  .ff-page.ff-menu-clean .ff-maps-clean-floating-cta{
    left:12px;
    right:12px;
    bottom:max(12px, env(safe-area-inset-bottom, 0px) + 8px);
    width:auto;
    padding:12px;
    gap:12px;
  }
  .ff-page.ff-menu-clean .ff-maps-clean-floating-start{
    min-height:50px;
    padding:0 18px;
  }
}
@media (max-width: 720px){
  .ff-page.ff-menu-clean .ff-maps-clean-floating-cta{
    flex-direction:column;
    align-items:stretch;
    gap:10px;
    border-radius:16px;
  }
  .ff-page.ff-menu-clean .ff-maps-clean-floating-copy strong{
    font-size:.92rem;
  }
  .ff-page.ff-menu-clean .ff-maps-clean-floating-start{
    width:100%;
    justify-content:center;
  }
}


.ff-maps-clean-floating-cta-global{
  position:fixed;
  right:max(22px, env(safe-area-inset-right, 0px) + 14px);
  bottom:max(22px, env(safe-area-inset-bottom, 0px) + 14px);
  left:auto;
  top:auto;
  z-index:250000;
  display:none;
  align-items:center;
  gap:14px;
  width:min(680px, calc(100vw - 36px));
  padding:14px 16px;
  border-radius:18px;
  border:1px solid rgba(126,193,255,.20);
  background:linear-gradient(180deg, rgba(8,18,43,.97), rgba(4,10,24,.98));
  box-shadow:0 24px 60px rgba(0,0,0,.46), inset 0 1px 0 rgba(255,255,255,.07);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  transform:translateZ(0);
}
.ff-maps-clean-floating-cta-global.is-visible{
  display:flex;
}
.ff-maps-clean-floating-cta-global .ff-maps-clean-floating-copy{
  min-width:0;
  flex:1 1 auto;
}
.ff-maps-clean-floating-cta-global .ff-maps-clean-floating-copy span{
  display:block;
  color:#ffd21f;
  font-size:.68rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.12em;
  margin-bottom:6px;
}
.ff-maps-clean-floating-cta-global .ff-maps-clean-floating-copy strong{
  display:block;
  color:#fff;
  font-family:var(--ff-font-head, var(--ff-head, inherit));
  font-size:1rem;
  line-height:1.15;
  text-transform:uppercase;
}
.ff-maps-clean-floating-cta-global .ff-maps-clean-floating-start{
  flex:0 0 auto;
  min-height:54px;
  padding:0 24px;
  white-space:nowrap;
  box-shadow:0 14px 32px rgba(245,197,24,.20);
}
@media (max-width:980px){
  .ff-maps-clean-floating-cta-global{
    left:12px;
    right:12px;
    bottom:max(12px, env(safe-area-inset-bottom, 0px) + 8px);
    width:auto;
    padding:12px;
    gap:12px;
  }
  .ff-maps-clean-floating-cta-global .ff-maps-clean-floating-start{
    min-height:50px;
    padding:0 18px;
  }
}
@media (max-width:720px){
  .ff-maps-clean-floating-cta-global{
    flex-direction:column;
    align-items:stretch;
    gap:10px;
    border-radius:16px;
  }
  .ff-maps-clean-floating-cta-global .ff-maps-clean-floating-copy strong{
    font-size:.92rem;
  }
  .ff-maps-clean-floating-cta-global .ff-maps-clean-floating-start{
    width:100%;
    justify-content:center;
  }
}

/* v3.13.89 — clean profile module.
   Standalone profile module with a single class family.
   It is a standalone module with one class family: ff-profile-clean-* . */
html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"].is-active{
  --ff-profile-clean-max:1240px;
  display:block;
  min-height:0;
  padding:clamp(18px,2.2vw,34px) var(--ff-shell-x,24px) clamp(30px,3vw,46px);
  background:linear-gradient(180deg,rgba(5,8,23,.98),rgba(6,9,24,.985));
}
html body .ff-page.ff-menu-clean .ff-profile-clean-shell,
html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"].is-active > .ff-profile-clean-shell{
  width:min(var(--ff-profile-clean-max),100%);
  margin:0 auto;
  display:grid;
  gap:18px;
  align-content:start;
  padding:0;
  background:transparent;
  border:0;
  box-shadow:none;
  overflow:visible;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-shell > section,
html body .ff-page.ff-menu-clean .ff-profile-clean-shell article{
  padding:0;
  margin:0;
  box-sizing:border-box;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-hero,
html body .ff-page.ff-menu-clean .ff-profile-clean-main,
html body .ff-page.ff-menu-clean .ff-profile-clean-bottom{
  display:grid;
  grid-template-columns:1fr;
  gap:18px;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-hero-main,
html body .ff-page.ff-menu-clean .ff-profile-clean-stat,
html body .ff-page.ff-menu-clean .ff-profile-clean-main article,
html body .ff-page.ff-menu-clean .ff-profile-clean-bottom article{
  border-radius:22px;
  border:1px solid rgba(126,193,255,.14);
  background:linear-gradient(180deg,rgba(13,19,45,.96),rgba(7,11,29,.96));
  box-shadow:0 18px 46px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.04);
}
html body .ff-page.ff-menu-clean .ff-profile-clean-hero-main{
  position:relative;
  overflow:hidden;
  padding:26px;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-hero-main::before,
html body .ff-page.ff-menu-clean .ff-profile-clean-hero-main::after{
  content:"";
  position:absolute;
  pointer-events:none;
  border-radius:999px;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-hero-main::before{
  width:360px;
  height:360px;
  right:-120px;
  top:-120px;
  background:radial-gradient(circle,rgba(66,153,255,.24),rgba(66,153,255,0) 70%);
}
html body .ff-page.ff-menu-clean .ff-profile-clean-hero-main::after{
  width:300px;
  height:300px;
  left:-100px;
  bottom:-170px;
  background:radial-gradient(circle,rgba(245,197,24,.14),rgba(245,197,24,0) 72%);
}
html body .ff-page.ff-menu-clean .ff-profile-clean-hero-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(320px,.95fr);
  gap:18px;
  align-items:stretch;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-identity{
  display:grid;
  grid-template-columns:96px minmax(0,1fr);
  gap:18px;
  align-items:center;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-avatar,
html body .ff-page.ff-menu-clean .ff-profile-clean-avatar img{
  width:96px;
  height:96px;
  border-radius:22px;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-avatar{
  position:relative;
  border:1px solid rgba(86,197,255,.28);
  background:rgba(86,197,255,.08);
  box-shadow:0 14px 34px rgba(0,0,0,.22);
}
html body .ff-page.ff-menu-clean .ff-profile-clean-avatar img{
  display:block;
  object-fit:contain;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-avatar span{
  position:absolute;
  left:10px;
  bottom:-10px;
  padding:4px 9px;
  border-radius:999px;
  background:#0a9e87;
  color:#fff;
  font-size:.56rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--ff-gold);
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-copy h2{
  margin:8px 0 0;
  font-size:clamp(2.25rem,4vw,3.55rem);
  line-height:.92;
  text-transform:uppercase;
  color:#fff;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-copy p{
  margin:.7rem 0 0;
  max-width:58ch;
  font-size:.96rem;
  line-height:1.55;
  color:#bdd0ee;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-tags{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:16px;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-tags span{
  padding:6px 11px;
  border-radius:999px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.09);
  color:#eaf2ff;
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-hero-metrics{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:22px;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-mini-card,
html body .ff-page.ff-menu-clean .ff-profile-clean-mission,
html body .ff-page.ff-menu-clean .ff-profile-clean-achievement-card,
html body .ff-page.ff-menu-clean .ff-profile-clean-style-grid span{
  padding:14px;
  border-radius:16px;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.08);
}
html body .ff-page.ff-menu-clean .ff-profile-clean-mini-card{min-height:112px}
html body .ff-page.ff-menu-clean .ff-profile-clean-mini-card > span,
html body .ff-page.ff-menu-clean .ff-profile-clean-stat span,
html body .ff-page.ff-menu-clean .ff-profile-clean-progress-overline,
html body .ff-page.ff-menu-clean .ff-profile-clean-mission-head span,
html body .ff-page.ff-menu-clean .ff-profile-clean-style-grid small{
  display:block;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:.62rem;
  color:#8fa7d0;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-mini-card strong{
  display:block;
  margin-top:8px;
  font-size:clamp(2rem,2.8vw,2.9rem);
  line-height:1;
  color:#fff;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-mini-card small{
  display:block;
  margin-top:8px;
  font-size:.76rem;
  color:#d2ddf4;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-levelbar,
html body .ff-page.ff-menu-clean .ff-profile-clean-progressbar,
html body .ff-page.ff-menu-clean .ff-profile-clean-mission-progress i,
html body .ff-page.ff-menu-clean .ff-profile-clean-achievement-bar{
  height:9px;
  background:rgba(255,255,255,.08);
  border-radius:999px;
  overflow:hidden;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-levelbar{margin-top:12px}
html body .ff-page.ff-menu-clean .ff-profile-clean-levelbar i,
html body .ff-page.ff-menu-clean .ff-profile-clean-progressbar i,
html body .ff-page.ff-menu-clean .ff-profile-clean-mission-progress i b,
html body .ff-page.ff-menu-clean .ff-profile-clean-achievement-bar i{
  display:block;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#56c5ff,#f5c518);
}
html body .ff-page.ff-menu-clean .ff-profile-clean-goal-card{
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:22px;
  border-radius:22px;
  overflow:hidden;
  background:linear-gradient(165deg,rgba(10,22,52,.96),rgba(8,12,32,.98));
  border:1px solid rgba(126,193,255,.18);
  box-shadow:0 20px 44px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.04);
}
html body .ff-page.ff-menu-clean .ff-profile-clean-goal-card::before,
html body .ff-page.ff-menu-clean .ff-profile-clean-goal-card::after{
  content:"";
  position:absolute;
  pointer-events:none;
  border-radius:999px;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-goal-card::before{
  width:240px;
  height:240px;
  right:-84px;
  top:-96px;
  background:radial-gradient(circle,rgba(86,197,255,.18),rgba(86,197,255,0) 72%);
}
html body .ff-page.ff-menu-clean .ff-profile-clean-goal-card::after{
  width:180px;
  height:180px;
  left:-64px;
  bottom:-92px;
  background:radial-gradient(circle,rgba(245,197,24,.14),rgba(245,197,24,0) 72%);
}
html body .ff-page.ff-menu-clean .ff-profile-clean-goal-card > *,
html body .ff-page.ff-menu-clean .ff-profile-clean-progress-summary > *{
  position:relative;
  z-index:1;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-goal-card > strong,
html body .ff-page.ff-menu-clean .ff-profile-clean-progress-summary strong{
  display:block;
  margin:10px 0 0;
  font-size:clamp(1.35rem,2.15vw,2rem);
  line-height:1.12;
  color:#fff;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-progress-title,
html body .ff-page.ff-menu-clean .ff-profile-clean-progress-summary{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-goal-card .ff-profile-clean-progress-title{
  margin-top:14px;
  align-items:center;
}
html body .ff-page.ff-menu-clean [data-ff-profile-progress-note]{
  margin:10px 0 0;
  color:#c8d6f1;
  font-size:.88rem;
  line-height:1.58;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-progress-pill,
html body .ff-page.ff-menu-clean [data-ff-profile-progress-label]{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:66px;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(245,197,24,.14);
  border:1px solid rgba(245,197,24,.28);
  color:#ffe788;
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-goal-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:20px;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-goal-actions .ff-btn{
  min-width:0;
  flex:1 1 180px;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-stats{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-stat{
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  padding:18px;
  min-height:130px;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-stat.is-featured{
  grid-column:auto;
  background:linear-gradient(135deg,rgba(25,42,88,.98),rgba(10,16,38,.98));
  border-color:rgba(245,197,24,.22);
  box-shadow:0 16px 36px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.05);
}
html body .ff-page.ff-menu-clean .ff-profile-clean-stat strong{
  display:block;
  margin-top:10px;
  font-size:clamp(1.68rem,2.3vw,2.65rem);
  line-height:1;
  color:#fff;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-stat em{
  display:block;
  margin-top:12px;
  color:#c1d0ec;
  font-style:normal;
  font-size:.83rem;
  line-height:1.5;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-main{
  grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);
}
html body .ff-page.ff-menu-clean .ff-profile-clean-bottom{
  grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr);
}
html body .ff-page.ff-menu-clean .ff-profile-clean-main article,
html body .ff-page.ff-menu-clean .ff-profile-clean-bottom article{
  padding:18px;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-head{
  display:flex;
  align-items:center;
  gap:9px;
  margin-bottom:14px;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-head strong{font-size:1.05rem;color:#fff}
html body .ff-page.ff-menu-clean .ff-profile-clean-progressbar{margin-top:14px}
html body .ff-page.ff-menu-clean .ff-profile-clean-achievement-grid,
html body .ff-page.ff-menu-clean .ff-profile-clean-mission-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-achievement-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:12px;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-achievement-top .ff-ui-ico{
  width:18px;
  height:18px;
  color:var(--ff-gold);
}
html body .ff-page.ff-menu-clean .ff-profile-clean-achievement-top em{
  padding:5px 8px;
  border-radius:999px;
  font-style:normal;
  font-size:.62rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  background:rgba(255,255,255,.06);
  color:#d4ddf2;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-achievement-card.is-progress{
  border-color:rgba(86,197,255,.24);
  background:linear-gradient(180deg,rgba(86,197,255,.08),rgba(255,255,255,.02));
}
html body .ff-page.ff-menu-clean .ff-profile-clean-achievement-card.is-done{
  border-color:rgba(111,224,169,.26);
  background:linear-gradient(180deg,rgba(111,224,169,.08),rgba(255,255,255,.02));
}
html body .ff-page.ff-menu-clean .ff-profile-clean-achievement-card.is-progress .ff-profile-clean-achievement-top em{
  background:rgba(86,197,255,.12);
  color:#9fdcff;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-achievement-card.is-done .ff-profile-clean-achievement-top em{
  background:rgba(111,224,169,.12);
  color:#8bf2b4;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-achievement-card.is-progress .ff-profile-clean-achievement-bar i{
  background:linear-gradient(90deg,#56c5ff,#a8ebff);
}
html body .ff-page.ff-menu-clean .ff-profile-clean-achievement-card.is-done .ff-profile-clean-achievement-bar i{
  background:linear-gradient(90deg,#6fe0a9,#9af2bc);
}
html body .ff-page.ff-menu-clean .ff-profile-clean-achievement-card strong{
  display:block;
  font-size:1rem;
  line-height:1.2;
  color:#fff;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-achievement-card small{
  display:block;
  margin-top:6px;
  font-size:.78rem;
  line-height:1.48;
  color:#c0d0eb;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-achievement-bar{margin-top:12px}
html body .ff-page.ff-menu-clean [data-ff-profile-achievement-meta]{
  display:block;
  margin-top:10px;
  color:#e6eefb;
  font-size:.75rem;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-head-actions{
  justify-content:space-between;
  gap:12px;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-head-title,
html body .ff-page.ff-menu-clean .ff-profile-clean-head-tools{
  display:inline-flex;
  align-items:center;
  gap:9px;
  min-width:0;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-head-tools{
  margin-left:auto;
  flex-wrap:wrap;
  justify-content:flex-end;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-achievement-summary{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  border:1px solid rgba(255,211,107,.22);
  background:rgba(255,211,107,.09);
  color:#ffe89f;
  font-size:.68rem;
  font-weight:1000;
  letter-spacing:.06em;
  text-transform:uppercase;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-achievements-open{
  min-height:30px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid rgba(126,193,255,.22);
  background:rgba(126,193,255,.08);
  color:#dfe8ff;
  font-size:.68rem;
  font-weight:1000;
  letter-spacing:.06em;
  text-transform:uppercase;
  cursor:pointer;
  transition:transform .16s ease, border-color .16s ease, background .16s ease;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-achievements-open:hover{
  transform:translateY(-1px);
  border-color:rgba(255,211,107,.36);
  background:rgba(255,211,107,.13);
}

.ff-page.ff-menu-clean .ff-achievements-modal[hidden]{display:none}
.ff-page.ff-menu-clean .ff-achievements-modal{
  position:fixed;
  inset:0;
  z-index:10010;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
}
.ff-page.ff-menu-clean .ff-achievements-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(2,6,18,.78);
  backdrop-filter:blur(12px);
}
.ff-page.ff-menu-clean .ff-achievements-modal-dialog{
  position:relative;
  z-index:1;
  width:min(1120px,96vw);
  max-height:min(820px,92vh);
  overflow:auto;
  padding:24px;
  border-radius:24px;
  background:
    radial-gradient(circle at 22% 12%, rgba(255,211,107,.13), transparent 36%),
    radial-gradient(circle at 88% 12%, rgba(86,197,255,.11), transparent 34%),
    linear-gradient(135deg, rgba(15,27,58,.98), rgba(6,10,26,.98));
  border:1px solid rgba(126,193,255,.20);
  box-shadow:0 34px 90px rgba(0,0,0,.52), inset 0 1px 0 rgba(255,255,255,.06);
}
.ff-page.ff-menu-clean .ff-achievements-modal-close{
  position:absolute;
  top:14px;
  right:14px;
  z-index:3;
  width:38px;
  height:38px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.08);
  color:#fff;
  font-size:1.4rem;
  line-height:1;
  cursor:pointer;
}
.ff-page.ff-menu-clean .ff-achievements-modal-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(220px,.34fr);
  gap:18px;
  align-items:end;
  padding-right:46px;
  margin-bottom:18px;
}
.ff-page.ff-menu-clean .ff-achievements-modal-kicker{
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin-bottom:10px;
  color:#ffe89f;
  font-size:.72rem;
  font-weight:1000;
  letter-spacing:.10em;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-achievements-modal-head strong{
  display:block;
  color:#fff;
  font-family:var(--ff-font-head);
  font-size:clamp(1.9rem,3vw,3.2rem);
  line-height:.95;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-achievements-modal-head p{
  max-width:720px;
  margin:10px 0 0;
  color:#cdd9f4;
  line-height:1.55;
}
.ff-page.ff-menu-clean .ff-achievements-modal-progress{
  min-width:0;
  padding:14px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.055);
}
.ff-page.ff-menu-clean .ff-achievements-modal-progress span{
  display:block;
  margin-bottom:10px;
  color:#ffe89f;
  font-size:1.4rem;
  font-weight:1000;
}
.ff-page.ff-menu-clean .ff-achievements-modal-progress i,
.ff-page.ff-menu-clean .ff-achievements-modal-card-progress{
  display:block;
  height:8px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(255,255,255,.10);
}
.ff-page.ff-menu-clean .ff-achievements-modal-progress b,
.ff-page.ff-menu-clean .ff-achievements-modal-card-progress i{
  display:block;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#56c5ff,#ffcf32,#6fe0a9);
}
.ff-page.ff-menu-clean .ff-achievements-modal-filters{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 18px;
}
.ff-page.ff-menu-clean .ff-achievements-modal-filters button{
  min-height:34px;
  padding:0 14px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.06);
  color:#dce7ff;
  font-size:.72rem;
  font-weight:1000;
  letter-spacing:.06em;
  text-transform:uppercase;
  cursor:pointer;
}
.ff-page.ff-menu-clean .ff-achievements-modal-filters button.is-active{
  border-color:rgba(255,211,107,.34);
  background:linear-gradient(180deg,rgba(255,211,107,.20),rgba(255,211,107,.09));
  color:#fff4bf;
}
.ff-page.ff-menu-clean .ff-achievements-modal-list{
  display:grid;
  gap:18px;
}
.ff-page.ff-menu-clean .ff-achievements-modal-group{
  padding:16px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.035);
}
.ff-page.ff-menu-clean .ff-achievements-modal-group-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}
.ff-page.ff-menu-clean .ff-achievements-modal-group-head strong{
  color:#fff;
  font-size:1rem;
}
.ff-page.ff-menu-clean .ff-achievements-modal-group-head span{
  color:#aab9db;
  font-size:.72rem;
  font-weight:1000;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-achievements-modal-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.ff-page.ff-menu-clean .ff-achievements-modal-card{
  min-height:184px;
  padding:16px;
  display:flex;
  flex-direction:column;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.025));
}
.ff-page.ff-menu-clean .ff-achievements-modal-card.is-done{
  border-color:rgba(111,224,169,.28);
  background:linear-gradient(180deg,rgba(111,224,169,.10),rgba(255,255,255,.025));
}
.ff-page.ff-menu-clean .ff-achievements-modal-card.is-progress{
  border-color:rgba(86,197,255,.25);
  background:linear-gradient(180deg,rgba(86,197,255,.09),rgba(255,255,255,.025));
}
.ff-page.ff-menu-clean .ff-achievements-modal-card.is-locked{
  opacity:.78;
}
.ff-page.ff-menu-clean .ff-achievements-modal-card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:12px;
}
.ff-page.ff-menu-clean .ff-achievements-modal-card-top em,
.ff-page.ff-menu-clean .ff-achievements-modal-reward{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 8px;
  border-radius:999px;
  font-style:normal;
  font-size:.62rem;
  font-weight:1000;
  letter-spacing:.07em;
  text-transform:uppercase;
  background:rgba(255,255,255,.075);
  color:#dce7ff;
}
.ff-page.ff-menu-clean .ff-achievements-modal-card.is-done .ff-achievements-modal-card-top em{
  background:rgba(111,224,169,.13);
  color:#8bf2b4;
}
.ff-page.ff-menu-clean .ff-achievements-modal-card.is-progress .ff-achievements-modal-card-top em{
  background:rgba(86,197,255,.13);
  color:#9fdcff;
}
.ff-page.ff-menu-clean .ff-achievements-modal-reward{
  background:rgba(255,211,107,.12);
  color:#ffe89f;
}
.ff-page.ff-menu-clean .ff-achievements-modal-card strong{
  display:block;
  color:#fff;
  font-size:1rem;
  line-height:1.22;
}
.ff-page.ff-menu-clean .ff-achievements-modal-card p{
  margin:7px 0 14px;
  color:#c0d0eb;
  font-size:.80rem;
  line-height:1.46;
}
.ff-page.ff-menu-clean .ff-achievements-modal-card-progress{
  margin-top:auto;
}
.ff-page.ff-menu-clean .ff-achievements-modal-card small{
  display:block;
  margin-top:10px;
  color:#e6eefb;
  font-size:.75rem;
}
.ff-page.ff-menu-clean .ff-achievements-modal-empty{
  padding:26px;
  border-radius:20px;
  border:1px dashed rgba(255,255,255,.16);
  background:rgba(255,255,255,.04);
  text-align:center;
}
.ff-page.ff-menu-clean .ff-achievements-modal-empty strong,
.ff-page.ff-menu-clean .ff-achievements-modal-empty span{
  display:block;
}
.ff-page.ff-menu-clean .ff-achievements-modal-empty strong{color:#fff;margin-bottom:6px}
.ff-page.ff-menu-clean .ff-achievements-modal-empty span{color:#c0d0eb}
@media (max-width:960px){
  .ff-page.ff-menu-clean .ff-achievements-modal-head{grid-template-columns:1fr;padding-right:46px;}
  .ff-page.ff-menu-clean .ff-achievements-modal-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:640px){
  html body .ff-page.ff-menu-clean .ff-profile-clean-head-actions{align-items:flex-start;}
  html body .ff-page.ff-menu-clean .ff-profile-clean-head-tools{width:100%;justify-content:flex-start;margin-left:0;}
  .ff-page.ff-menu-clean .ff-achievements-modal{align-items:flex-end;padding:10px;}
  .ff-page.ff-menu-clean .ff-achievements-modal-dialog{width:100%;max-height:90vh;padding:18px;border-radius:22px 22px 16px 16px;}
  .ff-page.ff-menu-clean .ff-achievements-modal-grid{grid-template-columns:1fr;}
  .ff-page.ff-menu-clean .ff-achievements-modal-group{padding:12px;}
}
html body .ff-page.ff-menu-clean .ff-profile-clean-mission.is-done{
  border-color:rgba(111,224,169,.24);
  background:linear-gradient(180deg,rgba(111,224,169,.07),rgba(255,255,255,.02));
}
html body .ff-page.ff-menu-clean .ff-profile-clean-mission{
  min-height:188px;
  display:flex;
  flex-direction:column;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-mission-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  margin-bottom:12px;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-mission-head b{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:4px 8px;
  border-radius:999px;
  background:rgba(245,197,24,.08);
  border:1px solid rgba(245,197,24,.16);
  font-size:.66rem;
  color:#ffe788;
  font-weight:800;
  white-space:nowrap;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-mission strong{
  display:block;
  min-height:0;
  margin-bottom:18px;
  font-size:1rem;
  line-height:1.4;
  color:#fff;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-mission-progress{
  display:grid;
  gap:10px;
  margin-top:auto;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-mission-progress em{
  font-style:normal;
  color:#dce6f7;
  font-size:.82rem;
  font-weight:800;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-style-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
html body .ff-page.ff-menu-clean .ff-profile-clean-style-grid span{display:block}
html body .ff-page.ff-menu-clean .ff-profile-clean-style-grid b{
  display:block;
  margin-top:8px;
  font-size:1rem;
  line-height:1.25;
  color:#fff;
}
@media (max-width:1180px){
  html body .ff-page.ff-menu-clean .ff-profile-clean-hero-grid,
  html body .ff-page.ff-menu-clean .ff-profile-clean-main,
  html body .ff-page.ff-menu-clean .ff-profile-clean-bottom{
    grid-template-columns:1fr;
  }
  html body .ff-page.ff-menu-clean .ff-profile-clean-stats{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:860px){
  html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"].is-active{
    padding:14px 12px 28px;
  }
  html body .ff-page.ff-menu-clean .ff-profile-clean-hero-main{padding:18px}
  html body .ff-page.ff-menu-clean .ff-profile-clean-identity{
    grid-template-columns:78px minmax(0,1fr);
    gap:14px;
  }
  html body .ff-page.ff-menu-clean .ff-profile-clean-avatar,
  html body .ff-page.ff-menu-clean .ff-profile-clean-avatar img{
    width:78px;
    height:78px;
  }
  html body .ff-page.ff-menu-clean .ff-profile-clean-hero-metrics,
  html body .ff-page.ff-menu-clean .ff-profile-clean-achievement-grid,
  html body .ff-page.ff-menu-clean .ff-profile-clean-mission-grid,
  html body .ff-page.ff-menu-clean .ff-profile-clean-style-grid{
    grid-template-columns:1fr;
  }
  html body .ff-page.ff-menu-clean .ff-profile-clean-stats{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  html body .ff-page.ff-menu-clean .ff-profile-clean-goal-actions .ff-btn{
    flex:1 1 100%;
  }
}
@media (max-width:560px){
  html body .ff-page.ff-menu-clean .ff-profile-clean-stats{grid-template-columns:1fr}
  html body .ff-page.ff-menu-clean .ff-profile-clean-progress-title,
  html body .ff-page.ff-menu-clean .ff-profile-clean-progress-summary{flex-direction:column}
}


/* Shop refresh v3.13.89 */
.ff-page.ff-menu-clean .ff-shop-stage-card{padding:18px}
.ff-page.ff-menu-clean .ff-shop-clean{gap:18px}
.ff-page.ff-menu-clean .ff-shop-clean-command{
  grid-template-columns:minmax(0,1.6fr) repeat(4,minmax(130px,.55fr));
  gap:14px;
  align-items:stretch;
}
.ff-page.ff-menu-clean .ff-shop-clean-title,
.ff-page.ff-menu-clean .ff-shop-clean-command-card,
.ff-page.ff-menu-clean .ff-shop-clean-filter-deck,
.ff-page.ff-menu-clean .ff-shop-clean-preview,
.ff-page.ff-menu-clean .ff-shop-card,
.ff-page.ff-menu-clean .ff-shop-clean-coming-card{
  backdrop-filter:blur(10px);
}
.ff-page.ff-menu-clean .ff-shop-clean-title{
  padding:22px;
  border-radius:18px;
  background:
    radial-gradient(circle at top right, rgba(245,197,24,.16), transparent 36%),
    linear-gradient(120deg, rgba(79,195,247,.10), rgba(168,85,247,.13));
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 18px 44px rgba(4,9,25,.28);
}
.ff-page.ff-menu-clean .ff-shop-clean-title strong{
  margin-top:8px;
  display:block;
  font-size:2rem;
  line-height:1.04;
}
.ff-page.ff-menu-clean .ff-shop-clean-title p{
  margin:10px 0 0;
  max-width:58ch;
  color:#9fb0d4;
  line-height:1.55;
}
.ff-page.ff-menu-clean .ff-shop-clean-command-card{
  min-height:104px;
  padding:16px;
  border-radius:16px;
  background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.028));
  border:1px solid rgba(255,255,255,.08);
}
.ff-page.ff-menu-clean .ff-shop-clean-command-card strong{
  margin-top:10px;
  font-size:1.85rem;
  line-height:1;
}
.ff-page.ff-menu-clean .ff-shop-clean-filter-deck{
  padding:16px;
  border-radius:16px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
}
.ff-page.ff-menu-clean .ff-shop-clean-filter-row{gap:16px}
.ff-page.ff-menu-clean .ff-shop-clean-selects{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.ff-page.ff-menu-clean .ff-shop-clean-selects select{
  min-height:42px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.10);
  background:#0b1230;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.ff-page.ff-menu-clean .ff-shop-clean-chip-row{align-items:center}
.ff-page.ff-menu-clean .ff-shop-tabs button{
  min-height:36px;
  padding:0 14px;
}
.ff-page.ff-menu-clean .ff-shop-clean-preview{
  position:relative;
  overflow:hidden;
  grid-template-columns:minmax(240px,.72fr) minmax(0,1.28fr);
  gap:20px;
  padding:20px;
  border-radius:18px;
  background:
    radial-gradient(circle at top right, rgba(245,197,24,.11), transparent 33%),
    linear-gradient(120deg, rgba(79,195,247,.08), rgba(168,85,247,.12));
  border:1px solid rgba(255,255,255,.09);
  box-shadow:0 18px 50px rgba(4,9,25,.26);
}
.ff-page.ff-menu-clean .ff-shop-clean-preview::after{
  content:"";
  position:absolute;
  inset:auto -40px -70px auto;
  width:220px;
  height:220px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(79,195,247,.18), transparent 68%);
  pointer-events:none;
}
.ff-page.ff-menu-clean .ff-shop-preview-ribbon{
  display:flex;
  align-items:center;
  gap:8px;
}
.ff-page.ff-menu-clean .ff-shop-preview-visual{
  min-height:220px;
  border-radius:16px;
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.025));
  border:1px solid rgba(255,255,255,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
.ff-page.ff-menu-clean .ff-shop-preview-visual img{
  max-width:210px;
  max-height:210px;
  filter:drop-shadow(0 18px 28px rgba(0,0,0,.35));
}
.ff-page.ff-menu-clean .ff-shop-preview-copy{
  display:grid;
  gap:10px;
  align-content:center;
}
.ff-page.ff-menu-clean .ff-shop-preview-copy strong{font-size:1.85rem;line-height:1.05}
.ff-page.ff-menu-clean .ff-shop-preview-copy small{font-size:.82rem}
.ff-page.ff-menu-clean .ff-shop-preview-copy p{margin:0;line-height:1.55}
.ff-page.ff-menu-clean .ff-shop-preview-meta{margin:2px 0 0}
.ff-page.ff-menu-clean .ff-shop-preview-meta span{
  padding:7px 12px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.07);
}
.ff-page.ff-menu-clean .ff-shop-preview-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px;
  margin-top:4px;
}
.ff-page.ff-menu-clean .ff-shop-preview-actions .ff-btn{
  min-width:220px;
  min-height:44px;
}
.ff-page.ff-menu-clean .ff-shop-preview-note{
  flex:1 1 240px;
  color:#8fa1cc;
  font-size:.74rem;
  line-height:1.45;
}
.ff-page.ff-menu-clean .ff-shop-clean-collection-head{
  align-items:end;
  padding:0 4px;
}
.ff-page.ff-menu-clean .ff-shop-clean-collection-head strong{
  font-size:1.15rem;
}
.ff-page.ff-menu-clean .ff-shop-clean-grid{
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
  gap:16px;
  align-items:start;
}
.ff-page.ff-menu-clean .ff-shop-card{
  position:relative;
  grid-template-columns:1fr;
  gap:14px;
  min-height:0;
  padding:16px;
  border-radius:16px;
  background:linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.025));
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 14px 30px rgba(3,8,26,.18);
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.ff-page.ff-menu-clean .ff-shop-card:hover,
.ff-page.ff-menu-clean .ff-shop-card:focus-visible{
  transform:translateY(-2px);
  border-color:rgba(79,195,247,.28);
  box-shadow:0 18px 34px rgba(3,8,26,.22);
}
.ff-page.ff-menu-clean .ff-shop-card.is-preview-selected{
  border-color:rgba(245,197,24,.40);
  box-shadow:0 0 0 1px rgba(245,197,24,.18), 0 20px 36px rgba(3,8,26,.26);
}
.ff-page.ff-menu-clean .ff-shop-card[data-shop-state="maplocked"]{
  border-color:rgba(245,197,24,.20);
}
.ff-page.ff-menu-clean .ff-shop-card[data-shop-state="owned"],
.ff-page.ff-menu-clean .ff-shop-card.is-owned{
  border-color:rgba(79,195,247,.22);
  background:linear-gradient(180deg, rgba(79,195,247,.08), rgba(255,255,255,.028));
}
.ff-page.ff-menu-clean .ff-shop-card img{
  width:110px;
  height:110px;
  margin:0 auto;
  border-radius:14px;
  background:radial-gradient(circle at top, rgba(79,195,247,.12), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 10px 24px rgba(0,0,0,.22);
}
.ff-page.ff-menu-clean .ff-shop-card-copy{
  display:grid;
  gap:8px;
}
.ff-page.ff-menu-clean .ff-shop-card-badges{margin-bottom:0}
.ff-page.ff-menu-clean .ff-shop-card-copy strong{
  font-size:1rem;
  line-height:1.12;
}
.ff-page.ff-menu-clean .ff-shop-role{
  min-height:2.5em;
  font-size:.76rem;
}
.ff-page.ff-menu-clean .ff-shop-card-economy{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}
.ff-page.ff-menu-clean .ff-shop-price-tag,
.ff-page.ff-menu-clean .ff-shop-map-lock{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-shop-price-tag{
  color:#fff6cb;
  background:rgba(245,197,24,.14);
  border:1px solid rgba(245,197,24,.30);
}
.ff-page.ff-menu-clean .ff-shop-map-lock{
  color:#dfe8ff;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
}
.ff-page.ff-menu-clean .ff-shop-lore{
  margin:0;
  min-height:2.7em;
  -webkit-line-clamp:3;
  font-size:.72rem;
}
.ff-page.ff-menu-clean .ff-effect-tags-shop{
  margin-top:2px;
}
.ff-page.ff-menu-clean .ff-effect-tags-shop span{
  padding:5px 8px;
  border-radius:999px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.06);
  font-size:.62rem;
}
.ff-page.ff-menu-clean .ff-effect-tags-shop span:nth-child(n+4){display:none}
.ff-page.ff-menu-clean .ff-skin-stat-chips-shop{display:none}
.ff-page.ff-menu-clean .ff-shop-card > button{
  grid-column:1;
  min-height:40px;
  margin-top:auto;
  border-radius:12px;
  border:1px solid rgba(245,197,24,.30);
  background:linear-gradient(180deg, rgba(245,197,24,.22), rgba(245,197,24,.14));
  letter-spacing:.04em;
}
.ff-page.ff-menu-clean .ff-shop-card > button[data-state="owned"],
.ff-page.ff-menu-clean .ff-shop-card > button[data-state="selected"],
.ff-page.ff-menu-clean .ff-shop-card.is-owned > button{
  border-color:rgba(79,195,247,.28);
  background:linear-gradient(180deg, rgba(79,195,247,.16), rgba(79,195,247,.08));
}
.ff-page.ff-menu-clean .ff-shop-card > button[data-state="missing"],
.ff-page.ff-menu-clean .ff-shop-card > button[data-state="maplocked"]{
  border-color:rgba(255,255,255,.12);
  background:rgba(255,255,255,.06);
  color:#d5def7;
}
.ff-page.ff-menu-clean .ff-shop-clean-coming-card{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:16px;
  min-height:0;
  padding:18px 20px;
  border-radius:16px;
  background:linear-gradient(120deg, rgba(245,197,24,.10), rgba(79,195,247,.08));
  border:1px dashed rgba(245,197,24,.28);
}
.ff-page.ff-menu-clean .ff-shop-clean-coming-orb{
  width:44px;
  height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(255,255,255,.08);
  color:var(--ff-gold);
}
.ff-page.ff-menu-clean .ff-shop-clean-coming-copy{display:grid;gap:6px}
.ff-page.ff-menu-clean .ff-shop-clean-coming-copy p{margin:0;color:#9fb0d4;line-height:1.48}
.ff-page.ff-menu-clean .ff-shop-clean-coming-tags{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
}
.ff-page.ff-menu-clean .ff-shop-clean-coming-tags span{
  padding:6px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.08);
  font-size:.66rem;
  font-weight:900;
}
@media (min-width:1500px){
  .ff-page.ff-menu-clean .ff-shop-clean-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
}
@media (max-width:1180px){
  .ff-page.ff-menu-clean .ff-shop-clean-command{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ff-page.ff-menu-clean .ff-shop-clean-preview{grid-template-columns:220px minmax(0,1fr)}
}
@media (max-width:860px){
  .ff-page.ff-menu-clean .ff-shop-clean-selects{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ff-page.ff-menu-clean .ff-shop-clean-preview{grid-template-columns:1fr}
  .ff-page.ff-menu-clean .ff-shop-clean-coming-card{grid-template-columns:1fr}
  .ff-page.ff-menu-clean .ff-shop-clean-coming-tags{justify-content:flex-start}
}
@media (max-width:560px){
  .ff-page.ff-menu-clean .ff-shop-stage-card{padding:14px}
  .ff-page.ff-menu-clean .ff-shop-clean-command,
  .ff-page.ff-menu-clean .ff-shop-clean-selects{grid-template-columns:1fr}
  .ff-page.ff-menu-clean .ff-shop-preview-visual{min-height:170px}
  .ff-page.ff-menu-clean .ff-shop-preview-visual img{max-width:150px;max-height:150px}
  .ff-page.ff-menu-clean .ff-shop-preview-actions .ff-btn{min-width:0;width:100%}
}


/* v3.13.89 — shop version sync and lock button polish */
.ff-page.ff-menu-clean .ff-shop-card > button[data-state="maplocked"],
.ff-page.ff-menu-clean .ff-shop-card > button[data-state="missing"],
.ff-page.ff-menu-clean .ff-shop-preview-actions .ff-btn[data-state="maplocked"],
.ff-page.ff-menu-clean .ff-shop-preview-actions .ff-btn[data-state="missing"]{
  color:#eef4ff;
  border-color:rgba(255,255,255,.14);
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.045));
  box-shadow:none;
}
.ff-page.ff-menu-clean .ff-shop-card[data-shop-state="maplocked"]::before{
  content:"MAPA";
  position:absolute;
  top:12px;
  right:12px;
  z-index:2;
  padding:4px 8px;
  border-radius:999px;
  color:#ffe28a;
  background:rgba(245,197,24,.13);
  border:1px solid rgba(245,197,24,.28);
  font-size:.58rem;
  font-weight:900;
  letter-spacing:.08em;
}
.ff-page.ff-menu-clean .ff-shop-card[data-shop-state="owned"]::before,
.ff-page.ff-menu-clean .ff-shop-card[data-shop-state="selected"]::before{
  content:"POSIADANE";
  position:absolute;
  top:12px;
  right:12px;
  z-index:2;
  padding:4px 8px;
  border-radius:999px;
  color:#93e6ff;
  background:rgba(79,195,247,.12);
  border:1px solid rgba(79,195,247,.26);
  font-size:.58rem;
  font-weight:900;
  letter-spacing:.08em;
}
.ff-page.ff-menu-clean .ff-shop-card[data-shop-state="selected"]::before{content:"WYBRANY"}
.ff-page.ff-menu-clean .ff-shop-card[data-shop-state="maplocked"] img,
.ff-page.ff-menu-clean .ff-shop-card[data-shop-state="missing"] img{opacity:.72;filter:saturate(.85) brightness(.9)}
.ff-page.ff-menu-clean .ff-shop-map-lock{
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.ff-page.ff-menu-clean .ff-shop-preview-meta span[data-ff-shop-preview-state]{
  max-width:260px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
@media (max-width:860px){
  .ff-page.ff-menu-clean .ff-shop-preview-meta span[data-ff-shop-preview-state]{max-width:100%}
}

/* v3.13.89 — ranking premium refresh */
.ff-page.ff-menu-clean .ff-ranking-clean-panel{gap:18px;padding:20px}
.ff-page.ff-menu-clean .ff-leaderboard-topline{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:22px;min-height:138px;padding:24px;border-radius:20px;background:radial-gradient(circle at 82% 18%, rgba(245,197,24,.12), transparent 28%),radial-gradient(circle at 18% 0%, rgba(79,195,247,.14), transparent 34%),linear-gradient(120deg, rgba(15,30,63,.98), rgba(7,12,31,.98));border:1px solid rgba(126,193,255,.14);box-shadow:0 18px 46px rgba(3,8,26,.28), inset 0 1px 0 rgba(255,255,255,.04)}
.ff-page.ff-menu-clean .ff-leaderboard-topline::after{content:"";position:absolute;right:-90px;bottom:-120px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle, rgba(79,195,247,.16), transparent 68%);pointer-events:none}
.ff-page.ff-menu-clean .ff-leaderboard-eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--ff-gold);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.13em}
.ff-page.ff-menu-clean .ff-leaderboard-topline h3{margin:10px 0 0;font-size:clamp(2rem,3.2vw,3.25rem);line-height:.95;letter-spacing:.01em}
.ff-page.ff-menu-clean .ff-leaderboard-topline p{max-width:62ch;color:#afc1e2;line-height:1.55}
.ff-page.ff-menu-clean .ff-leaderboard-hero-actions{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(150px,1fr));gap:12px;min-width:410px;align-items:stretch}
.ff-page.ff-menu-clean .ff-leaderboard-hero-stat{padding:14px;min-height:76px;border-radius:16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}
.ff-page.ff-menu-clean .ff-leaderboard-hero-stat span{display:block;color:#8fa1cc;font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em}
.ff-page.ff-menu-clean .ff-leaderboard-hero-stat strong{display:block;margin-top:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1.25rem;color:#fff}
.ff-page.ff-menu-clean .ff-leaderboard-refresh{grid-column:1 / -1;min-height:44px;border-radius:14px;background:rgba(255,255,255,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
.ff-page.ff-menu-clean .ff-leaderboard-scope-row{padding:0 2px}
.ff-page.ff-menu-clean .ff-leaderboard-tabs button{min-height:40px;padding:0 16px;border-radius:999px}
.ff-page.ff-menu-clean .ff-leaderboard-layout{display:grid;grid-template-columns:minmax(270px,.31fr) minmax(0,1fr);grid-template-areas:"podium list" "stats stats";gap:18px;align-items:start}
.ff-page.ff-menu-clean .ff-leaderboard-podium-panel,.ff-page.ff-menu-clean .ff-leaderboard-list-panel,.ff-page.ff-menu-clean .ff-leaderboard-stats-panel{padding:18px;border-radius:20px;background:linear-gradient(180deg, rgba(255,255,255,.043), rgba(255,255,255,.022));border:1px solid rgba(126,193,255,.12);box-shadow:0 14px 34px rgba(3,8,26,.18)}
.ff-page.ff-menu-clean .ff-leaderboard-podium-panel{grid-area:podium}.ff-page.ff-menu-clean .ff-leaderboard-list-panel{grid-area:list}.ff-page.ff-menu-clean .ff-leaderboard-stats-panel{grid-area:stats}
.ff-page.ff-menu-clean .ff-leaderboard-podium-title,.ff-page.ff-menu-clean .ff-leaderboard-list-head{display:flex;align-items:center;gap:11px;margin-bottom:14px}
.ff-page.ff-menu-clean .ff-leaderboard-podium-title strong,.ff-page.ff-menu-clean .ff-leaderboard-list-head strong{font-size:1.15rem}.ff-page.ff-menu-clean .ff-leaderboard-podium-title small,.ff-page.ff-menu-clean .ff-leaderboard-list-head small{display:block;margin-top:2px;color:#8fa1cc;font-size:.74rem}
.ff-page.ff-menu-clean .ff-leaderboard-podium{display:grid;gap:12px}
.ff-page.ff-menu-clean .ff-podium-card{position:relative;overflow:hidden;min-height:78px;padding:14px;border-radius:16px;grid-template-columns:54px minmax(0,1fr) auto;background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.08)}
.ff-page.ff-menu-clean .ff-podium-card::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:rgba(255,255,255,.10)}
.ff-page.ff-menu-clean .ff-podium-1{background:linear-gradient(120deg, rgba(245,197,24,.16), rgba(255,255,255,.035));border-color:rgba(245,197,24,.26)}
.ff-page.ff-menu-clean .ff-podium-1::before{background:var(--ff-gold)}.ff-page.ff-menu-clean .ff-podium-2::before{background:#c9d8ff}.ff-page.ff-menu-clean .ff-podium-3::before{background:#b98cff}
.ff-page.ff-menu-clean .ff-podium-place{font-size:1.16rem;color:var(--ff-gold)}.ff-page.ff-menu-clean .ff-podium-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff}.ff-page.ff-menu-clean .ff-podium-card b{font-size:1.3rem;color:#fff}.ff-page.ff-menu-clean .ff-podium-card em{font-size:.72rem}
.ff-page.ff-menu-clean .ff-leader-list{gap:9px}.ff-page.ff-menu-clean .ff-leader-list li{position:relative;min-height:48px;padding:0 14px;border-radius:14px;grid-template-columns:62px minmax(0,1fr) minmax(76px,auto);background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.075)}
.ff-page.ff-menu-clean .ff-leader-list li.is-rank-1,.ff-page.ff-menu-clean .ff-leader-list li.is-rank-2,.ff-page.ff-menu-clean .ff-leader-list li.is-rank-3{background:linear-gradient(90deg, rgba(245,197,24,.10), rgba(255,255,255,.035))}
.ff-page.ff-menu-clean .ff-leader-list em{font-size:1rem}.ff-page.ff-menu-clean .ff-leader-list span{font-size:.98rem}.ff-page.ff-menu-clean .ff-leader-list strong{text-align:right;font-size:1.06rem}
.ff-page.ff-menu-clean .ff-leaderboard-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.ff-page.ff-menu-clean .ff-leaderboard-stat-grid div{min-height:92px;padding:16px;border-radius:16px;background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.08)}.ff-page.ff-menu-clean .ff-leaderboard-stat-grid strong{margin-top:10px;font-size:1.55rem}
@media (max-width:1180px){.ff-page.ff-menu-clean .ff-leaderboard-topline{grid-template-columns:1fr}.ff-page.ff-menu-clean .ff-leaderboard-hero-actions{min-width:0;width:100%}.ff-page.ff-menu-clean .ff-leaderboard-layout{grid-template-columns:1fr;grid-template-areas:"podium" "list" "stats"}}
@media (max-width:760px){.ff-page.ff-menu-clean .ff-leaderboard-hero-actions,.ff-page.ff-menu-clean .ff-leaderboard-stat-grid{grid-template-columns:1fr}.ff-page.ff-menu-clean .ff-leaderboard-scope-row{flex-direction:column;align-items:flex-start}.ff-page.ff-menu-clean .ff-leader-list li{grid-template-columns:46px minmax(0,1fr) auto}}


/* v3.13.89 — profile dashboard polish pass */
/* preserved previous module comments below */
/* v3.13.89 — settings premium refresh */
.ff-page.ff-menu-clean .ff-settings-premium-panel{
  padding:18px;
  gap:18px;
}
.ff-page.ff-menu-clean .ff-settings-premium-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,.72fr);
  align-items:stretch;
  gap:18px;
  min-height:0;
  padding:22px;
  border-radius:18px;
  background:
    radial-gradient(circle at top right, rgba(79,195,247,.14), transparent 36%),
    linear-gradient(120deg, rgba(79,195,247,.08), rgba(168,85,247,.08));
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 18px 48px rgba(4,9,25,.26), inset 0 1px 0 rgba(255,255,255,.035);
}
.ff-page.ff-menu-clean .ff-settings-hero-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
}
.ff-page.ff-menu-clean .ff-settings-hero-copy h3{
  margin:8px 0 0;
  font-size:clamp(2rem,3.1vw,3.2rem);
  line-height:1;
}
.ff-page.ff-menu-clean .ff-settings-hero-copy p{
  max-width:68ch;
  margin:12px 0 0;
  color:#9fb0d4;
  line-height:1.55;
}
.ff-page.ff-menu-clean .ff-settings-hero-side{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  align-content:center;
}
.ff-page.ff-menu-clean .ff-settings-hero-side .ff-settings-reset{
  grid-column:1 / -1;
  min-height:44px;
}
.ff-page.ff-menu-clean .ff-settings-live-card,
.ff-page.ff-menu-clean .ff-settings-quick-strip > div{
  border-radius:16px;
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.026));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
.ff-page.ff-menu-clean .ff-settings-live-card{
  padding:14px;
}
.ff-page.ff-menu-clean .ff-settings-live-card span,
.ff-page.ff-menu-clean .ff-settings-quick-strip small{
  display:block;
  color:#8fa1cc;
  font-size:.64rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-settings-live-card strong{
  display:block;
  margin-top:7px;
  font-size:1.45rem;
  line-height:1;
}
.ff-page.ff-menu-clean .ff-settings-live-card small{
  display:block;
  margin-top:8px;
  color:#9fb0d4;
  font-size:.72rem;
}
.ff-page.ff-menu-clean .ff-settings-quick-strip{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.ff-page.ff-menu-clean .ff-settings-quick-strip > div{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  grid-template-areas:"icon label" "icon value";
  gap:4px 10px;
  align-items:center;
  min-height:82px;
  padding:14px;
}
.ff-page.ff-menu-clean .ff-settings-quick-strip .ff-ui-ico{
  grid-area:icon;
  width:22px;
  height:22px;
  color:#6fe4ff;
}
.ff-page.ff-menu-clean .ff-settings-quick-strip small{grid-area:label}
.ff-page.ff-menu-clean .ff-settings-quick-strip strong{
  grid-area:value;
  font-size:1.15rem;
  line-height:1.1;
}
.ff-page.ff-menu-clean .ff-settings-premium-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  align-items:stretch;
}
.ff-page.ff-menu-clean .ff-settings-premium-grid .ff-settings-card-block{
  position:relative;
  overflow:hidden;
  padding:18px;
  border-radius:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.024));
  border:1px solid rgba(255,255,255,.085);
  box-shadow:0 14px 34px rgba(4,9,25,.18), inset 0 1px 0 rgba(255,255,255,.03);
}
.ff-page.ff-menu-clean .ff-settings-premium-grid .ff-settings-card-primary{
  background:
    radial-gradient(circle at top right, rgba(79,195,247,.11), transparent 38%),
    linear-gradient(180deg, rgba(255,255,255,.052), rgba(255,255,255,.025));
}
.ff-page.ff-menu-clean .ff-settings-block-head{
  margin-bottom:14px;
}
.ff-page.ff-menu-clean .ff-settings-block-head > .ff-ui-ico{
  width:22px;
  height:22px;
  color:#dfe8ff;
}
.ff-page.ff-menu-clean .ff-settings-block-head strong{
  font-size:1.1rem;
}
.ff-page.ff-menu-clean .ff-settings-block-head small{
  margin-top:3px;
  color:#8fa1cc;
}
.ff-page.ff-menu-clean .ff-settings-toggle-card{
  min-height:64px;
  padding:13px;
  border-radius:14px;
  background:rgba(255,255,255,.045);
  transition:transform .18s ease,border-color .18s ease,background .18s ease;
}
.ff-page.ff-menu-clean .ff-settings-toggle-card:hover,
.ff-page.ff-menu-clean .ff-settings-toggle-card:focus-visible{
  transform:translateY(-1px);
  border-color:rgba(79,195,247,.28);
  background:rgba(79,195,247,.06);
}
.ff-page.ff-menu-clean .ff-settings-toggle-card em{
  min-width:44px;
  text-align:right;
}
.ff-page.ff-menu-clean .ff-settings-range{
  display:grid;
  gap:8px;
  margin-top:14px;
}
.ff-page.ff-menu-clean .ff-settings-range label{
  margin:0;
}
.ff-page.ff-menu-clean .ff-settings-range input{
  height:26px;
  accent-color:#56c5ff;
}
.ff-page.ff-menu-clean .ff-settings-preset-grid{
  grid-template-columns:1fr;
  gap:9px;
}
.ff-page.ff-menu-clean .ff-settings-preset-grid button{
  min-height:38px;
  border-radius:999px;
}
.ff-page.ff-menu-clean .ff-settings-select-card{
  padding:14px;
  border-radius:14px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
}
.ff-page.ff-menu-clean .ff-settings-select-card select{
  min-height:44px;
  border-radius:12px;
  background:#0b1230;
}
.ff-page.ff-menu-clean .ff-settings-keymap{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.ff-page.ff-menu-clean .ff-settings-keymap div,
.ff-page.ff-menu-clean .ff-settings-recommended div,
.ff-page.ff-menu-clean .ff-settings-help-note{
  border-radius:14px;
  background:rgba(255,255,255,.042);
}
.ff-page.ff-menu-clean .ff-settings-keymap div{
  min-height:74px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.ff-page.ff-menu-clean .ff-settings-help-note{
  display:grid;
  gap:8px;
  min-height:140px;
}
.ff-page.ff-menu-clean .ff-settings-wide-action{
  min-height:44px;
  border-radius:12px;
}
.ff-page.ff-menu-clean .ff-settings-recommended{
  gap:10px;
}
.ff-page.ff-menu-clean .ff-settings-recommended div{
  min-height:68px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
@media (min-width:1500px){
  .ff-page.ff-menu-clean .ff-settings-premium-panel{
    --ff-subpage-max:1320px;
  }
}
@media (max-width:1180px){
  .ff-page.ff-menu-clean .ff-settings-premium-hero{
    grid-template-columns:1fr;
  }
  .ff-page.ff-menu-clean .ff-settings-premium-grid,
  .ff-page.ff-menu-clean .ff-settings-quick-strip{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:720px){
  .ff-page.ff-menu-clean .ff-settings-premium-panel{
    padding:14px;
  }
  .ff-page.ff-menu-clean .ff-settings-premium-hero{
    padding:18px;
  }
  .ff-page.ff-menu-clean .ff-settings-hero-side,
  .ff-page.ff-menu-clean .ff-settings-premium-grid,
  .ff-page.ff-menu-clean .ff-settings-quick-strip,
  .ff-page.ff-menu-clean .ff-settings-keymap{
    grid-template-columns:1fr;
  }
}


/* v3.13.89 — profile stat cards alignment fix */
html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-stats{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  align-items:stretch;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-stats .ff-profile-clean-stat{
  position:relative;
  display:grid;
  grid-template-rows:auto auto minmax(0,1fr);
  align-content:start;
  gap:10px;
  min-height:128px;
  padding:22px 24px 20px;
  overflow:hidden;
  border-radius:18px;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-stats .ff-profile-clean-stat::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:3px;
  height:100%;
  opacity:.72;
  background:linear-gradient(180deg,rgba(86,197,255,.0),rgba(86,197,255,.42),rgba(245,197,24,.22));
  pointer-events:none;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-stats .ff-profile-clean-stat.is-featured::before{
  background:linear-gradient(180deg,rgba(245,197,24,.0),rgba(245,197,24,.58),rgba(86,197,255,.24));
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-stats .ff-profile-clean-stat span,
html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-stats .ff-profile-clean-stat strong,
html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-stats .ff-profile-clean-stat em{
  position:relative;
  z-index:1;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-stats .ff-profile-clean-stat span{
  display:block;
  margin:0;
  color:#93a9d5;
  font-size:.66rem;
  line-height:1;
  letter-spacing:.16em;
  white-space:nowrap;
  text-transform:uppercase;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-stats .ff-profile-clean-stat strong{
  display:block;
  margin:0;
  color:#fff;
  font-size:clamp(1.9rem,2.25vw,2.6rem);
  line-height:.95;
  letter-spacing:-.02em;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-stats .ff-profile-clean-stat em{
  display:block;
  margin:0;
  align-self:end;
  max-width:36ch;
  color:#c6d4f0;
  font-size:.84rem;
  line-height:1.45;
  font-style:normal;
}

@media (max-width:1180px){
  html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-stats{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:640px){
  html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-stats{
    grid-template-columns:1fr;
  }
  html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-stats .ff-profile-clean-stat{
    min-height:118px;
    padding:20px;
  }
}


/* v3.13.89 — profile hero balance pass */
html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-hero-main{
  padding:22px;
  border-radius:20px;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-hero-grid{
  grid-template-columns:minmax(0,1.58fr) minmax(360px,.82fr);
  gap:16px;
  align-items:stretch;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-identity{
  grid-template-columns:88px minmax(0,1fr);
  gap:16px;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-avatar,
html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-avatar img{
  width:88px;
  height:88px;
  border-radius:20px;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-copy h2{
  font-size:clamp(1.75rem,2.5vw,2.55rem);
  line-height:1;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-copy p{
  margin-top:8px;
  font-size:.9rem;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-tags{
  margin-top:14px;
  gap:8px;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-tags span{
  padding:6px 10px;
  font-size:.64rem;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-hero-metrics{
  margin-top:20px;
  gap:12px;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-mini-card{
  min-height:98px;
  padding:14px 16px;
  border-radius:15px;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-mini-card strong{
  margin-top:7px;
  font-size:clamp(1.7rem,2.25vw,2.35rem);
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-mini-card small{
  margin-top:7px;
  font-size:.72rem;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-levelbar{
  height:8px;
  margin-top:10px;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-goal-card{
  padding:20px;
  border-radius:20px;
  min-height:0;
  justify-content:center;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-goal-card > strong{
  max-width:14ch;
  margin-top:12px;
  font-size:clamp(1.65rem,2.05vw,2.25rem);
  line-height:1.1;
  letter-spacing:-.02em;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-goal-card .ff-profile-clean-progress-title{
  margin-top:18px;
  align-items:flex-start;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-goal-card [data-ff-profile-progress-note]{
  max-width:36ch;
  margin-top:0;
  font-size:.88rem;
  line-height:1.55;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-goal-card [data-ff-profile-progress-label]{
  min-width:58px;
  padding:7px 10px;
  font-size:.72rem;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-goal-card .ff-profile-clean-progressbar{
  height:9px;
  margin-top:18px;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-goal-actions{
  margin-top:18px;
  gap:10px;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-goal-actions .ff-btn{
  min-height:42px;
  padding-inline:16px;
  font-size:.78rem;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-goal-actions .ff-btn:first-child{
  flex:1.1 1 190px;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-goal-actions .ff-btn:last-child{
  flex:.8 1 150px;
}

@media (min-width:1500px){
  html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-shell{
    --ff-profile-max:1180px;
  }
}

@media (max-width:1180px){
  html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-hero-grid{
    grid-template-columns:1fr;
  }
  html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-goal-card > strong{
    max-width:none;
  }
}

@media (max-width:760px){
  html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-hero-main{
    padding:18px;
  }
  html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-hero-metrics{
    grid-template-columns:1fr;
  }
}


/* v3.13.89 — profile lower panels compact polish */
html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-main{
  grid-template-columns:minmax(0,1.05fr) minmax(460px,.95fr);
  gap:18px;
  align-items:stretch;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-bottom{
  grid-template-columns:minmax(0,1.12fr) minmax(420px,.88fr);
  gap:18px;
  align-items:stretch;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-main article,
html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-bottom article{
  padding:20px;
  border-radius:20px;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-progress{
  min-height:220px;
  display:flex;
  flex-direction:column;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-progress-summary{
  margin-top:4px;
  align-items:flex-start;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-progress-summary strong{
  max-width:17ch;
  font-size:clamp(1.65rem,2.2vw,2.35rem);
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-progress-summary p{
  max-width:50ch;
  margin-top:10px;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-progress .ff-profile-clean-progressbar{
  margin-top:18px;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-achievement-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-achievement-card{
  min-height:184px;
  padding:16px;
  display:flex;
  flex-direction:column;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-achievement-card strong{
  font-size:.98rem;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-achievement-card small{
  min-height:42px;
  font-size:.76rem;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-achievement-bar{
  margin-top:auto;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-bottom .ff-profile-clean-head{
  margin-bottom:16px;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-mission-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-mission{
  min-height:154px;
  padding:16px;
  border-radius:16px;
  justify-content:flex-start;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-mission-head{
  margin-bottom:12px;
  gap:8px;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-mission-head span{
  font-size:.58rem;
  line-height:1.18;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-mission-head b{
  padding:4px 7px;
  font-size:.61rem;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-mission strong{
  margin-bottom:14px;
  font-size:.92rem;
  line-height:1.32;
  min-height:42px;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-mission-progress{
  gap:8px;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-mission-progress em{
  font-size:.78rem;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-mission-progress i{
  height:8px;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-style-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-style-grid span{
  min-height:74px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:15px 16px;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-style-grid small{
  font-size:.58rem;
  line-height:1;
}

html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-style-grid b{
  margin-top:9px;
  font-size:.98rem;
}

@media (max-width:1240px){
  html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-main,
  html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-bottom{
    grid-template-columns:1fr;
  }
}

@media (max-width:860px){
  html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-achievement-grid,
  html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-mission-grid{
    grid-template-columns:1fr;
  }

  html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-progress{
    min-height:0;
  }

  html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-achievement-card,
  html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-mission{
    min-height:0;
  }
}

@media (max-width:560px){
  html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-style-grid{
    grid-template-columns:1fr;
  }
}


/* v3.13.89 — gamer game-hub home refresh */
.ff-page.ff-menu-clean .ff-home-hub-preview{padding:18px 24px 16px}
.ff-page.ff-menu-clean .ff-home-hub-grid{grid-template-columns:1.08fr .86fr .98fr .9fr}
.ff-page.ff-menu-clean .ff-home-hub-grid article{
  min-height:86px;
  border-radius:13px;
  background:linear-gradient(180deg,rgba(255,255,255,.052),rgba(255,255,255,.026));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.ff-page.ff-menu-clean .ff-home-hub-grid article:hover{border-color:rgba(79,195,247,.22)}
.ff-page.ff-menu-clean .ff-home-hub-grid article strong{font-size:.86rem;line-height:1.12}
.ff-page.ff-menu-clean .ff-home-hub-grid article small b,
.ff-page.ff-menu-clean .ff-home-hub-grid article small em{font-style:normal;color:inherit}
.ff-page.ff-menu-clean .ff-home-last-run-card strong,
.ff-page.ff-menu-clean .ff-home-unlock-card strong,
.ff-page.ff-menu-clean .ff-home-top-card strong{font-size:.92rem}
.ff-page.ff-menu-clean .ff-cine-mini-progress{
  position:absolute;
  left:14px;
  right:48px;
  bottom:13px;
  height:6px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(255,255,255,.08);
}
.ff-page.ff-menu-clean .ff-cine-mini-progress b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--ff-blue),var(--ff-gold))}
.ff-page.ff-menu-clean .ff-home-briefing{padding:18px 22px}
.ff-page.ff-menu-clean .ff-home-briefing-stack{display:grid;gap:10px;margin:0 0 12px}
.ff-page.ff-menu-clean .ff-home-brief-card{
  position:relative;
  display:grid;
  gap:5px;
  min-height:82px;
  padding:14px;
  overflow:hidden;
  border:1px solid var(--ff-border);
  border-radius:12px;
  background:linear-gradient(135deg,rgba(79,195,247,.07),rgba(245,197,24,.04));
}
.ff-page.ff-menu-clean .ff-home-brief-card::after{content:"";position:absolute;right:-28px;top:-34px;width:92px;height:92px;border-radius:50%;background:radial-gradient(circle,rgba(79,195,247,.14),transparent 70%)}
.ff-page.ff-menu-clean .ff-home-brief-card span{color:var(--ff-gold);font-size:.56rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.ff-page.ff-menu-clean .ff-home-brief-card strong{color:#fff;font-size:.82rem;line-height:1.14}
.ff-page.ff-menu-clean .ff-home-brief-card small{color:var(--ff-dim);font-size:.66rem;line-height:1.38}
.ff-page.ff-menu-clean .ff-home-brief-card i{height:6px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}
.ff-page.ff-menu-clean .ff-home-brief-card i b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--ff-blue),var(--ff-gold))}
.ff-page.ff-menu-clean .ff-home-patch-list article{padding:9px 0}
.ff-page.ff-menu-clean .ff-home-player-loop{min-height:128px}
.ff-page.ff-menu-clean .ff-home-replay-tip strong{font-size:.82rem}
.ff-page.ff-menu-clean .ff-home-replay-tip em{font-size:.72rem;line-height:1.42}
.ff-page.ff-menu-clean .ff-home-loop-stats .ff-cine-stats-grid strong{font-size:1.36rem}
.ff-page.ff-menu-clean .ff-home-loop-stats .ff-cine-stats-grid span{font-size:.54rem}
.ff-page.ff-menu-clean .ff-home-top-card.is-loaded strong{color:#fff}
.ff-page.ff-menu-clean .ff-home-unlock-card.is-done .ff-cine-mini-progress b{background:linear-gradient(90deg,#6fe0a9,#b3ffc9)}
@media (max-width:1260px){
  .ff-page.ff-menu-clean .ff-home-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:720px){
  .ff-page.ff-menu-clean .ff-home-hub-grid{grid-template-columns:1fr}
  .ff-page.ff-menu-clean .ff-cine-mini-progress{right:14px}
}


/* v3.13.89 — gamer lobby home polish */
.ff-page.ff-menu-clean .ff-home-hero-hud{
  position:absolute;
  right:clamp(30px,5vw,110px);
  top:clamp(110px,17vh,160px);
  z-index:3;
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  width:clamp(230px,18vw,310px);
  pointer-events:none;
}
.ff-page.ff-menu-clean .ff-home-hero-hud div{
  min-height:54px;
  padding:10px 14px;
  border:1px solid rgba(79,195,247,.14);
  border-radius:14px;
  background:linear-gradient(90deg,rgba(7,18,52,.38),rgba(7,18,52,.15));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
  backdrop-filter:blur(5px);
}
.ff-page.ff-menu-clean .ff-home-hero-hud span{
  display:block;
  color:#8fa1cc;
  font-size:.54rem;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-home-hero-hud strong{
  display:block;
  margin-top:5px;
  color:#fff;
  font-size:.78rem;
  line-height:1.22;
}
.ff-page.ff-menu-clean .ff-cine-mission{
  border-color:rgba(245,197,24,.20);
  background:linear-gradient(180deg,rgba(7,18,54,.94),rgba(8,13,37,.92));
}
.ff-page.ff-menu-clean .ff-cine-mission-reset{
  display:block;
  margin-top:11px;
  color:#8fa1cc;
  font-size:.62rem;
  line-height:1.35;
}
.ff-page.ff-menu-clean .ff-cine-card-head em{
  margin-left:auto;
  color:#8fa1cc;
  font-size:.56rem;
  font-style:normal;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-home-hub-grid article{
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.ff-page.ff-menu-clean .ff-home-hub-grid article:hover{
  transform:translateY(-2px);
  border-color:rgba(79,195,247,.24);
  box-shadow:0 14px 30px rgba(0,0,0,.18);
}
.ff-page.ff-menu-clean .ff-home-hub-grid .ff-cine-start-map-card{
  border-color:rgba(79,195,247,.22);
  background:radial-gradient(circle at right bottom,rgba(79,195,247,.12),transparent 46%),var(--ff-card);
}
.ff-page.ff-menu-clean .ff-home-last-run-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-areas:"label action" "title action" "meta action";
  gap:4px 10px;
  align-items:center;
  border-color:rgba(245,197,24,.15);
}
.ff-page.ff-menu-clean .ff-home-last-run-card span{grid-area:label}
.ff-page.ff-menu-clean .ff-home-last-run-card strong{grid-area:title}
.ff-page.ff-menu-clean .ff-home-last-run-card small{grid-area:meta}
.ff-page.ff-menu-clean .ff-home-last-run-card button{
  grid-area:action;
  display:inline-flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
  width:52px;
  height:52px;
  border:1px solid rgba(79,195,247,.24);
  border-radius:15px;
  background:rgba(79,195,247,.08);
  color:#dff6ff;
  font-size:.54rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  cursor:pointer;
}
.ff-page.ff-menu-clean .ff-home-last-run-card button .ff-ui-ico{
  position:static;
  width:20px;
  height:20px;
  color:#56c5ff;
}
.ff-page.ff-menu-clean .ff-home-last-run-card.is-empty{
  background:radial-gradient(circle at right,rgba(245,197,24,.10),transparent 42%),var(--ff-card);
}
.ff-page.ff-menu-clean .ff-home-briefing-stack{
  gap:10px;
}
.ff-page.ff-menu-clean .ff-home-brief-card.is-reward{
  border-color:rgba(245,197,24,.16);
  background:linear-gradient(135deg,rgba(245,197,24,.08),rgba(79,195,247,.05));
}
.ff-page.ff-menu-clean .ff-home-brief-card.is-reward strong{
  color:#fff6bf;
}
.ff-page.ff-menu-clean .ff-home-streak-reward{
  margin-top:12px;
  padding:8px 10px;
  border-radius:10px;
  background:rgba(245,197,24,.08);
  border:1px solid rgba(245,197,24,.14);
  color:#ffe789;
  font-size:.64rem;
  font-weight:800;
  letter-spacing:.03em;
}
.ff-page.ff-menu-clean .ff-home-player-loop{
  background:linear-gradient(180deg,rgba(8,13,34,1),rgba(9,14,38,.98));
}
.ff-page.ff-menu-clean .ff-home-loop-stats .ff-cine-card-head strong{
  color:#ffe789;
}
@media (max-width:1280px){
  .ff-page.ff-menu-clean .ff-home-hero-hud{
    display:none;
  }
}
@media (max-width:860px){
  .ff-page.ff-menu-clean .ff-home-last-run-card{
    grid-template-columns:1fr;
    grid-template-areas:"label" "title" "meta" "action";
  }
  .ff-page.ff-menu-clean .ff-home-last-run-card button{
    width:100%;
    height:40px;
    flex-direction:row;
  }
}


/* v3.13.89 — clean hero after gamer lobby pass */
.ff-page.ff-menu-clean .ff-home-hero-hud{display:none}
.ff-page.ff-menu-clean .ff-cine-main-copy{
  position:relative;
  z-index:4;
  max-width:clamp(430px,38vw,620px);
}
.ff-page.ff-menu-clean .ff-cine-main-copy h1{
  text-shadow:0 10px 36px rgba(0,0,0,.36);
}
.ff-page.ff-menu-clean .ff-cine-main-copy p,
.ff-page.ff-menu-clean .ff-cine-main-copy .ff-cine-lead{
  max-width:34rem;
}
.ff-page.ff-menu-clean .ff-home-hub-preview{
  border-top:1px solid rgba(79,195,247,.12);
}
.ff-page.ff-menu-clean .ff-home-hub-grid article{
  min-height:94px;
}
.ff-page.ff-menu-clean .ff-home-last-run-card{
  border-color:rgba(86,197,255,.20);
}
.ff-page.ff-menu-clean .ff-home-brief-card.is-daily span::after{
  content:" / szybki cel";
  color:#77dfff;
}
.ff-page.ff-menu-clean .ff-cine-mission .ff-cine-card-head strong::after{
  content:"";
}
.ff-page.ff-menu-clean .ff-cine-mission-reset{
  color:#9eb0d4;
}
@media (min-width:1500px){
  .ff-page.ff-menu-clean .ff-cine-mission{
    margin-right:clamp(40px,4vw,76px);
  }
}


/* v3.13.89 — restore hero HUD, positioned above seasonal challenge */
.ff-page.ff-menu-clean .ff-home-hero-side-hud{
  grid-area:hero;
  position:relative;
  inset:auto;
  justify-self:end;
  align-self:end;
  width:320px;
  margin:0 20px 184px 0;
  z-index:4;
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  pointer-events:none;
}

.ff-page.ff-menu-clean .ff-home-hero-side-hud div{
  min-height:46px;
  padding:10px 14px;
  border:1px solid rgba(79,195,247,.14);
  border-radius:14px;
  background:linear-gradient(90deg,rgba(7,18,52,.74),rgba(7,18,52,.42));
  box-shadow:0 12px 28px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.035);
  backdrop-filter:blur(9px);
}

.ff-page.ff-menu-clean .ff-home-hero-side-hud span{
  display:block;
  color:#90a4cf;
  font-size:.54rem;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.ff-page.ff-menu-clean .ff-home-hero-side-hud strong{
  display:block;
  margin-top:5px;
  color:#fff;
  font-size:.78rem;
  line-height:1.22;
}

.ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(2){
  border-color:rgba(245,197,24,.16);
  background:linear-gradient(90deg,rgba(7,18,52,.74),rgba(245,197,24,.06));
}

@media (max-width:1280px){
  .ff-page.ff-menu-clean .ff-home-hero-side-hud{
    width:300px;
    margin-right:18px;
    margin-bottom:182px;
  }
}

@media (max-width:960px){
  .ff-page.ff-menu-clean .ff-home-hero-side-hud{
    display:none;
  }
}


/* v3.13.89 — compact hero HUD above seasonal challenge */
.ff-page.ff-menu-clean .ff-home-hero-side-hud{
  width:320px;
  margin:0 clamp(18px,2vw,30px) 204px 0;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  align-items:stretch;
}
.ff-page.ff-menu-clean .ff-home-hero-side-hud div{
  min-height:44px;
  padding:9px 12px;
  border-radius:13px;
  background:linear-gradient(120deg,rgba(7,18,52,.78),rgba(12,27,66,.46));
}
.ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(2){
  grid-column:1 / -1;
  min-height:50px;
  order:3;
  border-color:rgba(79,195,247,.16);
  background:linear-gradient(120deg,rgba(7,18,52,.78),rgba(79,195,247,.08));
}
.ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(3){
  order:2;
  border-color:rgba(245,197,24,.16);
  background:linear-gradient(120deg,rgba(7,18,52,.78),rgba(245,197,24,.06));
}
.ff-page.ff-menu-clean .ff-home-hero-side-hud span{
  font-size:.50rem;
  letter-spacing:.13em;
}
.ff-page.ff-menu-clean .ff-home-hero-side-hud strong{
  margin-top:4px;
  font-size:.72rem;
  line-height:1.18;
}
.ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(2) strong{
  max-width:32ch;
}
@media (max-width:1280px){
  .ff-page.ff-menu-clean .ff-home-hero-side-hud{
    width:300px;
    margin-right:18px;
    margin-bottom:202px;
  }
}
@media (max-height:760px) and (min-width:961px){
  .ff-page.ff-menu-clean .ff-home-hero-side-hud{
    grid-template-columns:1fr;
    width:292px;
    margin-bottom:180px;
  }
  .ff-page.ff-menu-clean .ff-home-hero-side-hud div,
  .ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(2){
    grid-column:auto;
    min-height:38px;
    padding:8px 11px;
  }
  .ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(2) strong{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
}


/* v3.13.89 — hero HUD raised and aligned to seasonal challenge */
.ff-page.ff-menu-clean .ff-home-hero-side-hud{
  width:clamp(300px,24vw,344px);
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin:0 clamp(18px,2vw,30px) calc(clamp(36px,5.4vh,58px) + 196px) 0;
  z-index:5;
}
.ff-page.ff-menu-clean .ff-home-hero-side-hud div{
  min-height:42px;
  padding:8px 12px;
}
.ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(1),
.ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(3){
  grid-column:auto;
  order:1;
}
.ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(2){
  grid-column:1 / -1;
  order:2;
  min-height:46px;
}
.ff-page.ff-menu-clean .ff-home-hero-side-hud strong{
  font-size:.70rem;
  line-height:1.16;
}
.ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(2) strong{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  white-space:normal;
  overflow:hidden;
}
@media (max-width:1280px){
  .ff-page.ff-menu-clean .ff-home-hero-side-hud{
    width:clamp(300px,24vw,332px);
    margin-right:18px;
    margin-bottom:calc(clamp(36px,5.4vh,58px) + 188px);
  }
}
@media (max-height:760px) and (min-width:961px){
  .ff-page.ff-menu-clean .ff-home-hero-side-hud{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    width:clamp(296px,24vw,332px);
    margin:0 18px calc(clamp(30px,4.8vh,48px) + 180px) 0;
  }
  .ff-page.ff-menu-clean .ff-home-hero-side-hud div,
  .ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(2){
    min-height:38px;
    padding:7px 10px;
  }
  .ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(1),
  .ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(3){
    grid-column:auto;
    order:1;
  }
  .ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(2){
    grid-column:1 / -1;
    order:2;
  }
  .ff-page.ff-menu-clean .ff-home-hero-side-hud span{
    font-size:.46rem;
  }
  .ff-page.ff-menu-clean .ff-home-hero-side-hud strong{
    font-size:.66rem;
  }
}
@media (max-height:690px) and (min-width:961px){
  .ff-page.ff-menu-clean .ff-home-hero-side-hud{
    display:none;
  }
}


/* v3.13.89 — align hero HUD exactly with seasonal challenge card */
.ff-page.ff-menu-clean .ff-home-hero-side-hud{
  width:clamp(300px,24vw,344px);
  margin-right:clamp(18px,2vw,30px);
  margin-bottom:calc(clamp(36px,5.4vh,58px) + 206px);
}

@media (min-width:1500px){
  .ff-page.ff-menu-clean .ff-home-hero-side-hud{
    margin-right:clamp(40px,4vw,76px);
  }
}

@media (max-width:1280px){
  .ff-page.ff-menu-clean .ff-home-hero-side-hud{
    width:clamp(300px,24vw,332px);
    margin-right:18px;
    margin-bottom:calc(clamp(36px,5.4vh,58px) + 196px);
  }
}

@media (max-height:760px) and (min-width:961px){
  .ff-page.ff-menu-clean .ff-home-hero-side-hud{
    width:clamp(296px,24vw,332px);
    margin-right:18px;
    margin-bottom:calc(clamp(30px,4.8vh,48px) + 190px);
  }
}

@media (min-width:1500px) and (max-height:760px){
  .ff-page.ff-menu-clean .ff-home-hero-side-hud{
    margin-right:clamp(40px,4vw,76px);
  }
}

/* v3.13.89 — hero HUD changed from 2+1 tiles to 3 stacked bars */
.ff-page.ff-menu-clean .ff-home-hero-side-hud{
  width:clamp(300px,24vw,344px);
  grid-template-columns:1fr;
  gap:8px;
  margin-right:clamp(18px,2vw,30px);
  margin-bottom:calc(clamp(36px,5.4vh,58px) + 206px);
}

.ff-page.ff-menu-clean .ff-home-hero-side-hud div,
.ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(1),
.ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(2),
.ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(3){
  grid-column:1 / -1;
  min-height:42px;
  padding:8px 12px;
}

/* Desired reading order: Active route -> Next unlock -> Map bonus */
.ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(1){
  order:1;
}
.ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(3){
  order:2;
  border-color:rgba(245,197,24,.16);
  background:linear-gradient(120deg,rgba(7,18,52,.78),rgba(245,197,24,.06));
}
.ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(2){
  order:3;
  min-height:46px;
  border-color:rgba(79,195,247,.16);
  background:linear-gradient(120deg,rgba(7,18,52,.78),rgba(79,195,247,.08));
}

.ff-page.ff-menu-clean .ff-home-hero-side-hud strong{
  font-size:.70rem;
  line-height:1.16;
}

.ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(2) strong{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  white-space:normal;
  overflow:hidden;
}

@media (min-width:1500px){
  .ff-page.ff-menu-clean .ff-home-hero-side-hud{
    margin-right:clamp(40px,4vw,76px);
  }
}

@media (max-width:1280px){
  .ff-page.ff-menu-clean .ff-home-hero-side-hud{
    width:clamp(300px,24vw,332px);
    margin-right:18px;
    margin-bottom:calc(clamp(36px,5.4vh,58px) + 196px);
  }
}

@media (max-height:760px) and (min-width:961px){
  .ff-page.ff-menu-clean .ff-home-hero-side-hud{
    width:clamp(296px,24vw,332px);
    grid-template-columns:1fr;
    margin-right:18px;
    margin-bottom:calc(clamp(30px,4.8vh,48px) + 190px);
  }
  .ff-page.ff-menu-clean .ff-home-hero-side-hud div,
  .ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(1),
  .ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(2),
  .ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(3){
    min-height:38px;
    padding:7px 10px;
    grid-column:1 / -1;
  }
  .ff-page.ff-menu-clean .ff-home-hero-side-hud span{
    font-size:.46rem;
  }
  .ff-page.ff-menu-clean .ff-home-hero-side-hud strong{
    font-size:.66rem;
  }
}


/* v3.13.89 — home lower dashboard compact alignment */
.ff-page.ff-menu-clean .ff-menu-home-cinematic.is-active{
  grid-template-rows:560px 224px minmax(150px,auto);
  min-height:0;
}

.ff-page.ff-menu-clean .ff-home-hub-preview{
  align-self:start;
  min-height:224px;
  padding:18px 24px 16px;
  border-bottom:1px solid var(--ff-border);
}

.ff-page.ff-menu-clean .ff-home-hub-grid{
  height:100%;
  grid-template-columns:1.05fr .82fr .94fr .86fr;
  align-items:stretch;
}

.ff-page.ff-menu-clean .ff-home-hub-grid article{
  min-height:116px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.ff-page.ff-menu-clean .ff-home-hub-grid .ff-cine-start-map-card{
  justify-content:center;
}

.ff-page.ff-menu-clean .ff-home-last-run-card{
  justify-content:center;
}

.ff-page.ff-menu-clean .ff-cine-bottom.ff-home-player-loop{
  min-height:150px;
  padding:16px 24px;
  align-items:center;
}

.ff-page.ff-menu-clean .ff-home-replay-tip{
  min-height:104px;
}

.ff-page.ff-menu-clean .ff-home-loop-stats{
  align-self:center;
}

.ff-page.ff-menu-clean .ff-home-loop-stats .ff-cine-card-head{
  margin-bottom:10px;
}

.ff-page.ff-menu-clean .ff-home-loop-stats .ff-cine-stats-grid{
  margin-top:0;
}

.ff-page.ff-menu-clean .ff-home-streak-reward{
  margin-top:12px;
  min-height:30px;
  display:flex;
  align-items:center;
}

.ff-page.ff-menu-clean .ff-cine-social{
  align-self:stretch;
  justify-content:center;
}

.ff-page.ff-menu-clean .ff-home-briefing{
  padding:18px 22px 16px;
}

.ff-page.ff-menu-clean .ff-home-brief-card{
  min-height:76px;
  padding:13px 14px;
}

.ff-page.ff-menu-clean .ff-home-patch-list article{
  padding:8px 0;
}

.ff-page.ff-menu-clean .ff-news-more{
  margin-top:auto;
}

@media (max-width:1260px){
  .ff-page.ff-menu-clean .ff-menu-home-cinematic.is-active{
    grid-template-rows:var(--ff-home-hero-h) auto auto;
  }
  .ff-page.ff-menu-clean .ff-home-hub-preview{
    min-height:0;
  }
}

@media (max-width:960px){
  .ff-page.ff-menu-clean .ff-menu-home-cinematic.is-active{
    min-height:auto;
  }
}


/* v3.13.89 — skin selection cards rebuild */
.ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="skins"].is-active{
  padding:18px 20px 28px;
}

.ff-page.ff-menu-clean .ff-skins-clean-panel{
  padding:22px;
  border-radius:18px;
}

.ff-page.ff-menu-clean .ff-skins-clean-panel > .ff-card-head{
  margin-bottom:18px;
}

.ff-page.ff-menu-clean .ff-skins-clean-panel .ff-wallet{
  margin:0 0 22px;
  padding:12px 14px;
  border:0;
  background:transparent;
}

.ff-page.ff-menu-clean .ff-skins-clean-panel .ff-wallet span{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:#dce7ff;
  font-size:.82rem;
  font-weight:700;
}

.ff-page.ff-menu-clean .ff-skins-clean-panel .ff-wallet strong{
  color:#fff;
  font-size:1.35rem;
}

.ff-page.ff-menu-clean .ff-skins-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  align-items:stretch;
}

.ff-page.ff-menu-clean .ff-skins-grid button{
  position:relative;
  display:grid;
  grid-template-columns:96px minmax(0,1fr);
  grid-template-areas:
    "badges badges"
    "image title"
    "image role"
    "image meta"
    "lore lore"
    "stats stats"
    "effects effects";
  grid-auto-rows:auto;
  align-content:start;
  gap:8px 14px;
  min-width:0;
  min-height:312px;
  padding:16px;
  overflow:hidden;
  text-align:left;
  border-radius:16px;
  border:1px solid rgba(139,158,210,.18);
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));
  color:var(--ff-text);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}

.ff-page.ff-menu-clean .ff-skins-grid button:hover,
.ff-page.ff-menu-clean .ff-skins-grid button:focus-visible{
  transform:translateY(-1px);
  border-color:rgba(79,195,247,.26);
  box-shadow:0 14px 30px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.045);
}

.ff-page.ff-menu-clean .ff-skins-grid button.is-active{
  border-color:rgba(245,197,24,.46);
  background:linear-gradient(180deg,rgba(245,197,24,.075),rgba(255,255,255,.022));
}

.ff-page.ff-menu-clean .ff-skins-grid button.is-locked{
  border-color:rgba(139,158,210,.13);
  background:linear-gradient(180deg,rgba(255,255,255,.034),rgba(255,255,255,.014));
}

.ff-page.ff-menu-clean .ff-skins-grid button img{
  grid-area:image;
  width:96px;
  height:104px;
  object-fit:contain;
  align-self:start;
  justify-self:start;
  border-radius:14px;
  background:linear-gradient(180deg,rgba(79,195,247,.08),rgba(255,255,255,.035));
  border:1px solid rgba(79,195,247,.12);
}

.ff-page.ff-menu-clean .ff-skin-topline{
  grid-area:badges;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px;
  min-height:28px;
  margin:0;
  padding-right:72px;
}

.ff-page.ff-menu-clean .ff-skin-badge,
.ff-page.ff-menu-clean .ff-skin-game,
.ff-page.ff-menu-clean .ff-effect-tags span{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  max-width:100%;
  padding:0 9px;
  border-radius:999px;
  font-size:.56rem;
  line-height:1;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
  white-space:nowrap;
}

.ff-page.ff-menu-clean .ff-skin-game{
  color:#bfeeff;
  background:rgba(79,195,247,.10);
  border:1px solid rgba(79,195,247,.14);
}

.ff-page.ff-menu-clean .ff-skin-name{
  grid-area:title;
  align-self:end;
  display:block;
  margin:0;
  color:#fff;
  font-size:.9rem;
  line-height:1.1;
  font-weight:900;
  text-transform:uppercase;
  overflow-wrap:anywhere;
}

.ff-page.ff-menu-clean .ff-skin-role{
  grid-area:role;
  display:block;
  color:#aab8d8;
  font-size:.64rem;
  line-height:1.3;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.ff-page.ff-menu-clean .ff-skin-meta{
  grid-area:meta;
  display:inline-flex;
  align-items:center;
  justify-self:start;
  min-height:22px;
  padding:0 8px;
  border-radius:999px;
  color:#dfe8ff;
  background:rgba(255,255,255,.06);
  font-size:.58rem;
  font-weight:800;
  line-height:1;
}

.ff-page.ff-menu-clean .ff-skin-lore{
  grid-area:lore;
  margin:8px 0 0;
  min-height:48px;
  color:#aebdde;
  font-size:.68rem;
  line-height:1.45;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.ff-page.ff-menu-clean .ff-skin-stat-chips{
  grid-area:stats;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:6px;
  margin:4px 0 0;
}

.ff-page.ff-menu-clean .ff-skin-stat-chips span{
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:6px;
  min-height:28px;
  padding:0 8px;
  border-radius:9px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.07);
}

.ff-page.ff-menu-clean .ff-skin-stat-chips b,
.ff-page.ff-menu-clean .ff-skin-stat-chips em{
  display:block;
  min-width:0;
  font-size:.58rem;
  line-height:1;
  font-style:normal;
  font-weight:900;
  white-space:nowrap;
}

.ff-page.ff-menu-clean .ff-skin-stat-chips b{
  color:#b6c3df;
  overflow:hidden;
  text-overflow:ellipsis;
}

.ff-page.ff-menu-clean .ff-skin-stat-chips em{
  color:#fff;
}

.ff-page.ff-menu-clean .ff-effect-tags{
  grid-area:effects;
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:0;
  min-height:50px;
  align-content:flex-start;
}

.ff-page.ff-menu-clean .ff-effect-tags span{
  color:#aebdde;
  background:rgba(151,164,205,.10);
  border:1px solid rgba(151,164,205,.10);
  font-size:.52rem;
  padding:0 8px;
}

.ff-page.ff-menu-clean .ff-lock-badge{
  position:absolute;
  top:16px;
  right:16px;
  z-index:2;
  display:inline-flex;
  align-items:center;
  min-height:22px;
  padding:0 8px;
  border-radius:999px;
  background:rgba(245,197,24,.10);
  border:1px solid rgba(245,197,24,.22);
  color:#ffe077;
  font-size:.52rem;
  line-height:1;
  font-style:normal;
  font-weight:900;
  text-transform:uppercase;
}

@media (min-width:1600px){
  .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="skins"].is-active{
    --ff-subpage-max:1440px;
  }
  .ff-page.ff-menu-clean .ff-skins-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}

@media (max-width:1280px){
  .ff-page.ff-menu-clean .ff-skins-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media (max-width:980px){
  .ff-page.ff-menu-clean .ff-skins-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:640px){
  .ff-page.ff-menu-clean .ff-skins-clean-panel{
    padding:14px;
  }
  .ff-page.ff-menu-clean .ff-skins-grid{
    grid-template-columns:1fr;
  }
  .ff-page.ff-menu-clean .ff-skins-grid button{
    min-height:0;
  }
}

/* v3.13.89 — hero HUD exact alignment: three equal stacked bars aligned to seasonal challenge */
.ff-page.ff-menu-clean .ff-home-hero-side-hud{
  width:clamp(300px,24vw,344px);
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  justify-self:end;
  align-self:end;
  margin-right:clamp(18px,2vw,30px);
  margin-bottom:calc(clamp(36px,5.4vh,58px) + 206px);
  z-index:5;
}

.ff-page.ff-menu-clean .ff-home-hero-side-hud div,
.ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(1),
.ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(2),
.ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(3){
  grid-column:1 / -1;
  order:initial;
  min-height:42px;
  padding:8px 12px;
}

.ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(1){
  order:1;
}
.ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(3){
  order:2;
  border-color:rgba(245,197,24,.16);
  background:linear-gradient(120deg,rgba(7,18,52,.78),rgba(245,197,24,.06));
}
.ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(2){
  order:3;
  min-height:46px;
  border-color:rgba(79,195,247,.16);
  background:linear-gradient(120deg,rgba(7,18,52,.78),rgba(79,195,247,.08));
}

.ff-page.ff-menu-clean .ff-home-hero-side-hud span{
  font-size:.50rem;
  letter-spacing:.13em;
}
.ff-page.ff-menu-clean .ff-home-hero-side-hud strong{
  font-size:.70rem;
  line-height:1.16;
}
.ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(2) strong{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  white-space:normal;
  overflow:hidden;
}

@media (min-width:1500px){
  .ff-page.ff-menu-clean .ff-home-hero-side-hud{
    margin-right:clamp(40px,4vw,76px);
  }
}

@media (max-width:1280px){
  .ff-page.ff-menu-clean .ff-home-hero-side-hud{
    width:clamp(300px,24vw,332px);
    margin-right:18px;
    margin-bottom:calc(clamp(36px,5.4vh,58px) + 196px);
  }
}

@media (max-height:760px) and (min-width:961px){
  .ff-page.ff-menu-clean .ff-home-hero-side-hud{
    width:clamp(296px,24vw,332px);
    grid-template-columns:1fr;
    margin-right:18px;
    margin-bottom:calc(clamp(30px,4.8vh,48px) + 190px);
  }
  .ff-page.ff-menu-clean .ff-home-hero-side-hud div,
  .ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(1),
  .ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(2),
  .ff-page.ff-menu-clean .ff-home-hero-side-hud div:nth-child(3){
    min-height:38px;
    padding:7px 10px;
    grid-column:1 / -1;
  }
  .ff-page.ff-menu-clean .ff-home-hero-side-hud span{
    font-size:.46rem;
  }
  .ff-page.ff-menu-clean .ff-home-hero-side-hud strong{
    font-size:.66rem;
  }
}


/* v3.13.89 — true align of top three HUD bars to seasonal challenge */
.ff-page.ff-menu-clean .ff-cine-hero{
  position:relative;
}

.ff-page.ff-menu-clean .ff-home-hero-side-hud{
  position:absolute;
  top:auto;
  right:clamp(18px,2vw,30px);
  bottom:calc(clamp(36px,5.4vh,58px) + 118px + 14px);
  width:clamp(300px,24vw,344px);
  margin:0;
  gap:8px;
  z-index:5;
}

.ff-page.ff-menu-clean .ff-cine-mission{
  position:absolute;
  right:clamp(18px,2vw,30px);
  bottom:clamp(36px,5.4vh,58px);
  margin:0;
  width:clamp(300px,24vw,344px);
}

.ff-page.ff-menu-clean .ff-home-hero-side-hud > div{
  width:100%;
  margin:0;
}

@media (min-width:1500px){
  .ff-page.ff-menu-clean .ff-home-hero-side-hud,
  .ff-page.ff-menu-clean .ff-cine-mission{
    right:clamp(18px,2vw,30px);
  }
}

@media (max-width:1280px){
  .ff-page.ff-menu-clean .ff-home-hero-side-hud{
    right:18px;
    bottom:calc(clamp(36px,5.4vh,58px) + 112px + 12px);
    width:clamp(300px,24vw,332px);
  }
  .ff-page.ff-menu-clean .ff-cine-mission{
    right:18px;
    width:clamp(300px,24vw,332px);
  }
}

@media (max-height:760px) and (min-width:961px){
  .ff-page.ff-menu-clean .ff-home-hero-side-hud{
    right:18px;
    bottom:calc(clamp(30px,4.8vh,48px) + 108px + 10px);
    width:clamp(296px,24vw,332px);
  }
  .ff-page.ff-menu-clean .ff-cine-mission{
    right:18px;
    bottom:clamp(30px,4.8vh,48px);
    width:clamp(296px,24vw,332px);
  }
}


/* v3.13.89 — hero right stack wrapper alignment */
.ff-page.ff-menu-clean .ff-cine-hero{
  position:relative;
}

.ff-page.ff-menu-clean .ff-home-hero-right-stack{
  grid-area:hero;
  align-self:end;
  justify-self:end;
  width:clamp(300px,24vw,344px);
  margin:0 clamp(18px,2vw,30px) clamp(36px,5.4vh,58px) 0;
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  z-index:6;
}

.ff-page.ff-menu-clean .ff-home-hero-right-stack .ff-home-hero-side-hud{
  position:static;
  inset:auto;
  width:100%;
  margin:0;
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  justify-self:stretch;
  align-self:auto;
  pointer-events:none;
}

.ff-page.ff-menu-clean .ff-home-hero-right-stack .ff-home-hero-side-hud > div{
  width:100%;
  box-sizing:border-box;
  grid-column:1 / -1;
  min-height:42px;
  padding:8px 12px;
  margin:0;
}

.ff-page.ff-menu-clean .ff-home-hero-right-stack .ff-home-hero-side-hud > div:nth-child(1){
  order:1;
}

.ff-page.ff-menu-clean .ff-home-hero-right-stack .ff-home-hero-side-hud > div:nth-child(3){
  order:2;
}

.ff-page.ff-menu-clean .ff-home-hero-right-stack .ff-home-hero-side-hud > div:nth-child(2){
  order:3;
}

.ff-page.ff-menu-clean .ff-home-hero-right-stack .ff-cine-mission{
  position:static;
  width:100%;
  min-height:132px;
  margin:0;
  box-sizing:border-box;
  padding:18px 20px 16px;
  justify-self:stretch;
  align-self:auto;
}

.ff-page.ff-menu-clean .ff-home-hero-right-stack .ff-cine-mission .ff-cine-card-head{
  display:flex;
  align-items:center;
  margin:0 0 14px;
  opacity:1;
  visibility:visible;
  color:var(--ff-gold);
}

.ff-page.ff-menu-clean .ff-home-hero-right-stack .ff-cine-mission .ff-cine-card-head strong{
  display:inline;
  color:inherit;
  font-size:.58rem;
  letter-spacing:.18em;
  text-transform:uppercase;
}

@media (min-width:1500px){
  .ff-page.ff-menu-clean .ff-home-hero-right-stack{
    margin-right:clamp(40px,4vw,76px);
  }
}

@media (max-width:1280px){
  .ff-page.ff-menu-clean .ff-home-hero-right-stack{
    width:clamp(296px,24vw,332px);
    margin-right:18px;
  }
}

@media (max-height:760px) and (min-width:961px){
  .ff-page.ff-menu-clean .ff-home-hero-right-stack{
    width:clamp(294px,24vw,328px);
    gap:8px;
    margin-right:18px;
    margin-bottom:clamp(30px,4.8vh,48px);
  }

  .ff-page.ff-menu-clean .ff-home-hero-right-stack .ff-home-hero-side-hud > div{
    min-height:38px;
    padding:7px 10px;
  }

  .ff-page.ff-menu-clean .ff-home-hero-right-stack .ff-cine-mission{
    min-height:124px;
    padding:16px 18px 14px;
  }
}


/* v3.13.89 — final hero right stack no-overlap reset */
.ff-page.ff-menu-clean .ff-home-hero-right-stack{
  grid-area:hero;
  display:flex;
  flex-direction:column;
  align-self:end;
  justify-self:end;
  width:clamp(300px,24vw,344px);
  margin:0 clamp(18px,2vw,30px) clamp(36px,5.4vh,58px) 0;
  gap:10px;
  z-index:8;
}

.ff-page.ff-menu-clean .ff-home-hero-right-stack > .ff-home-hero-side-hud,
.ff-page.ff-menu-clean .ff-home-hero-right-stack > .ff-cine-mission{
  grid-area:auto;
  position:relative;
  inset:auto;
  top:auto;
  right:auto;
  bottom:auto;
  left:auto;
  width:100%;
  max-width:none;
  min-width:0;
  margin:0;
  transform:none;
  align-self:stretch;
  justify-self:stretch;
}

.ff-page.ff-menu-clean .ff-home-hero-right-stack > .ff-home-hero-side-hud{
  display:flex;
  flex-direction:column;
  gap:8px;
  z-index:1;
  pointer-events:none;
}

.ff-page.ff-menu-clean .ff-home-hero-right-stack > .ff-home-hero-side-hud > div,
.ff-page.ff-menu-clean .ff-home-hero-right-stack > .ff-home-hero-side-hud > div:nth-child(1),
.ff-page.ff-menu-clean .ff-home-hero-right-stack > .ff-home-hero-side-hud > div:nth-child(2),
.ff-page.ff-menu-clean .ff-home-hero-right-stack > .ff-home-hero-side-hud > div:nth-child(3){
  grid-area:auto;
  order:initial;
  width:100%;
  box-sizing:border-box;
  margin:0;
  min-height:42px;
  padding:8px 12px;
  display:block;
}

.ff-page.ff-menu-clean .ff-home-hero-right-stack > .ff-home-hero-side-hud > div:nth-child(1){order:1}
.ff-page.ff-menu-clean .ff-home-hero-right-stack > .ff-home-hero-side-hud > div:nth-child(3){order:2}
.ff-page.ff-menu-clean .ff-home-hero-right-stack > .ff-home-hero-side-hud > div:nth-child(2){order:3}

.ff-page.ff-menu-clean .ff-home-hero-right-stack > .ff-cine-mission{
  z-index:2;
  min-height:132px;
  padding:18px 20px 16px;
}

.ff-page.ff-menu-clean .ff-home-hero-right-stack > .ff-cine-mission .ff-cine-card-head{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0 0 14px;
}

.ff-page.ff-menu-clean .ff-home-hero-right-stack > .ff-cine-mission .ff-cine-mission-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:0 0 12px;
}

@media (min-width:1500px){
  .ff-page.ff-menu-clean .ff-home-hero-right-stack{
    margin-right:clamp(40px,4vw,76px);
  }
}

@media (max-width:1280px){
  .ff-page.ff-menu-clean .ff-home-hero-right-stack{
    width:clamp(296px,24vw,332px);
    margin-right:18px;
  }
}

@media (max-height:760px) and (min-width:961px){
  .ff-page.ff-menu-clean .ff-home-hero-right-stack{
    width:clamp(294px,24vw,328px);
    gap:8px;
    margin-right:18px;
    margin-bottom:clamp(30px,4.8vh,48px);
  }
  .ff-page.ff-menu-clean .ff-home-hero-right-stack > .ff-home-hero-side-hud > div,
  .ff-page.ff-menu-clean .ff-home-hero-right-stack > .ff-home-hero-side-hud > div:nth-child(1),
  .ff-page.ff-menu-clean .ff-home-hero-right-stack > .ff-home-hero-side-hud > div:nth-child(2),
  .ff-page.ff-menu-clean .ff-home-hero-right-stack > .ff-home-hero-side-hud > div:nth-child(3){
    min-height:38px;
    padding:7px 10px;
  }
  .ff-page.ff-menu-clean .ff-home-hero-right-stack > .ff-cine-mission{
    min-height:124px;
    padding:16px 18px 14px;
  }
}


/* v3.13.89 — wide and ultra-wide screen layout guardrails */
.ff-page.ff-menu-clean{
  --ff-stage-max:1760px;
}

/* Keep the app centered on very large monitors instead of stretching every panel to 100vw. */
.ff-page.ff-menu-clean .ff-arcade.is-visible.is-menu-mode,
.ff-page.ff-menu-clean.ff-ready .ff-arcade[data-ff-direct-stage="1"]:not(.is-gameplay-mode){
  background:
    radial-gradient(circle at 50% 10%,rgba(21,101,192,.16),transparent 38%),
    radial-gradient(circle at 92% 35%,rgba(168,85,247,.10),transparent 30%),
    var(--ff-bg);
}

.ff-page.ff-menu-clean .ff-arcade.is-menu-mode .ff-player-panel,
.ff-page.ff-menu-clean.ff-ready .ff-arcade[data-ff-direct-stage="1"]:not(.is-gameplay-mode) .ff-player-panel{
  max-width:var(--ff-stage-max);
  margin-inline:auto;
  padding-inline:clamp(20px,1.7vw,28px);
  box-shadow:
    -1px 0 0 rgba(255,255,255,.045),
    1px 0 0 rgba(255,255,255,.045),
    0 0 90px rgba(0,0,0,.30);
}

/* Home should keep cinematic proportions on large screens, not become a stretched dashboard. */
@media (min-width:1761px){
  .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section.ff-menu-home-cinematic.is-active{
    --ff-home-news-w:372px;
    --ff-home-hero-h:560px;
  }

  .ff-page.ff-menu-clean .ff-menu-home-cinematic.is-active::before{
    background-size:cover;
    background-position:center center;
  }

  .ff-page.ff-menu-clean .ff-cine-hero{
    padding-left:56px;
  }

  .ff-page.ff-menu-clean .ff-home-hero-right-stack{
    width:344px;
    margin-right:30px;
  }

  .ff-page.ff-menu-clean .ff-home-hub-grid{
    grid-template-columns:1.02fr .78fr .92fr .84fr;
  }

  .ff-page.ff-menu-clean .ff-cine-bottom.ff-home-player-loop{
    min-height:148px;
  }
}

/* Very wide monitors: add breathing room around the centered game page. */
@media (min-width:2100px){
  .ff-page.ff-menu-clean{
    --ff-stage-max:1800px;
  }

  .ff-page.ff-menu-clean .ff-arcade.is-menu-mode .ff-player-panel,
  .ff-page.ff-menu-clean.ff-ready .ff-arcade[data-ff-direct-stage="1"]:not(.is-gameplay-mode) .ff-player-panel{
    border-left:1px solid rgba(79,195,247,.08);
    border-right:1px solid rgba(79,195,247,.08);
  }
}

/* Huge 4K/ultra-wide screens: cap the page harder and keep it readable. */
@media (min-width:2560px){
  .ff-page.ff-menu-clean{
    --ff-stage-max:1840px;
  }

  .ff-page.ff-menu-clean .ff-cine-title span,
  .ff-page.ff-menu-clean .ff-cine-title em{
    font-size:5.65rem;
  }

  .ff-page.ff-menu-clean .ff-ingame-tabs-primary>button{
    padding-inline:18px;
  }
}

/* Large but not very tall laptops/monitors: avoid a tall hero consuming the whole screen. */
@media (min-width:1440px) and (max-height:820px){
  .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section.ff-menu-home-cinematic.is-active{
    --ff-home-hero-h:clamp(500px,54vh,535px);
    grid-template-rows:var(--ff-home-hero-h) minmax(108px,auto) minmax(128px,auto);
  }

  .ff-page.ff-menu-clean .ff-home-hero-right-stack{
    gap:8px;
  }

  .ff-page.ff-menu-clean .ff-home-hero-right-stack > .ff-home-hero-side-hud{
    gap:7px;
  }

  .ff-page.ff-menu-clean .ff-home-hero-right-stack > .ff-cine-mission{
    min-height:124px;
    padding:16px 18px 14px;
  }
}


/* v3.13.89 — readable typography pass for lobby cards and player-facing text */
.ff-page.ff-menu-clean{
  --ff-readable-micro:.68rem;
  --ff-readable-label:.72rem;
  --ff-readable-meta:.80rem;
  --ff-readable-body:.86rem;
  --ff-readable-title:1.02rem;
  --ff-readable-button:.84rem;
}

/* Decorative labels can stay compact, but should not become tiny on large monitors. */
.ff-page.ff-menu-clean .ff-cine-card-head,
.ff-page.ff-menu-clean .ff-home-brief-card b,
.ff-page.ff-menu-clean .ff-home-hero-side-hud span,
.ff-page.ff-menu-clean .ff-cine-kicker,
.ff-page.ff-menu-clean .ff-cine-preview-grid article b,
.ff-page.ff-menu-clean .ff-home-loop-stats .ff-cine-card-head,
.ff-page.ff-menu-clean .ff-cine-stat b,
.ff-page.ff-menu-clean .ff-news-more,
.ff-page.ff-menu-clean .ff-home-streak-reward{
  font-size:clamp(.66rem,.58vw,var(--ff-readable-label));
  line-height:1.25;
}

/* Main readable text inside cards. */
.ff-page.ff-menu-clean .ff-home-brief-card p,
.ff-page.ff-menu-clean .ff-home-brief-card small,
.ff-page.ff-menu-clean .ff-cine-news-list span,
.ff-page.ff-menu-clean .ff-cine-preview-grid article small,
.ff-page.ff-menu-clean .ff-home-hub-grid article p,
.ff-page.ff-menu-clean .ff-home-hub-grid article small,
.ff-page.ff-menu-clean .ff-home-replay-tip p,
.ff-page.ff-menu-clean .ff-cine-tip p,
.ff-page.ff-menu-clean .ff-cine-social small,
.ff-page.ff-menu-clean .ff-cine-mission-reset,
.ff-page.ff-menu-clean .ff-home-hero-side-hud strong,
.ff-page.ff-menu-clean .ff-home-loop-stats small{
  font-size:clamp(.78rem,.68vw,var(--ff-readable-body));
  line-height:1.5;
}

/* Key card titles and values. */
.ff-page.ff-menu-clean .ff-home-brief-card strong,
.ff-page.ff-menu-clean .ff-home-hub-grid article strong,
.ff-page.ff-menu-clean .ff-cine-preview-grid article strong,
.ff-page.ff-menu-clean .ff-home-replay-tip strong,
.ff-page.ff-menu-clean .ff-cine-tip strong{
  font-size:clamp(.92rem,.82vw,var(--ff-readable-title));
  line-height:1.25;
}

/* Mission/challenge readability. */
.ff-page.ff-menu-clean .ff-cine-mission-title span{
  font-size:clamp(1rem,.94vw,1.12rem);
  line-height:1.22;
}

.ff-page.ff-menu-clean .ff-cine-mission-title strong{
  font-size:clamp(.84rem,.75vw,.92rem);
  line-height:1.2;
}

.ff-page.ff-menu-clean .ff-cine-reward-pill{
  font-size:clamp(.88rem,.78vw,1rem);
}

/* Buttons and navigation actions. */
.ff-page.ff-menu-clean .ff-btn,
.ff-page.ff-menu-clean .ff-cine-shortcuts .ff-btn,
.ff-page.ff-menu-clean .ff-cine-start,
.ff-page.ff-menu-clean .ff-news-more{
  font-size:clamp(.78rem,.68vw,var(--ff-readable-button));
  line-height:1.2;
}

/* News and briefing spacing after increasing font size. */
.ff-page.ff-menu-clean .ff-home-brief-card{
  min-height:88px;
  padding:14px 16px;
}

.ff-page.ff-menu-clean .ff-cine-news-list article{
  min-height:42px;
  padding:9px 0;
}

.ff-page.ff-menu-clean .ff-cine-news-list time{
  font-size:clamp(.68rem,.56vw,.76rem);
  line-height:1.35;
}

/* Game Hub cards: preserve compact layout while improving readability. */
.ff-page.ff-menu-clean .ff-home-hub-grid article{
  min-height:126px;
  padding:16px 18px;
}

.ff-page.ff-menu-clean .ff-home-last-run-card .ff-home-last-run-play{
  min-width:54px;
  min-height:54px;
}

.ff-page.ff-menu-clean .ff-home-last-run-card .ff-home-last-run-play span{
  font-size:.68rem;
}

/* Right hero HUD: slightly larger text without increasing the whole module too much. */
.ff-page.ff-menu-clean .ff-home-hero-right-stack > .ff-home-hero-side-hud > div,
.ff-page.ff-menu-clean .ff-home-hero-side-hud > div{
  min-height:46px;
  padding:9px 13px;
}

.ff-page.ff-menu-clean .ff-home-hero-right-stack > .ff-cine-mission{
  min-height:140px;
}

/* Footer version can stay small, but not microscopic. */
.ff-page.ff-menu-clean .ff-menu-footer{
  font-size:clamp(.62rem,.52vw,.72rem);
  letter-spacing:.08em;
}

/* Wide monitors: keep text readable even when the layout is capped and viewed from farther away. */
@media (min-width:1440px){
  .ff-page.ff-menu-clean{
    --ff-readable-meta:.82rem;
    --ff-readable-body:.88rem;
    --ff-readable-title:1.05rem;
  }
}

/* Lower-height screens: avoid overflow by keeping the same hierarchy but slightly tighter spacing. */
@media (max-height:760px) and (min-width:961px){
  .ff-page.ff-menu-clean{
    --ff-readable-body:.82rem;
    --ff-readable-title:.98rem;
  }

  .ff-page.ff-menu-clean .ff-home-brief-card{
    min-height:80px;
    padding:12px 14px;
  }

  .ff-page.ff-menu-clean .ff-home-hub-grid article{
    min-height:116px;
    padding:14px 16px;
  }

  .ff-page.ff-menu-clean .ff-home-hero-right-stack > .ff-home-hero-side-hud > div,
  .ff-page.ff-menu-clean .ff-home-hero-side-hud > div{
    min-height:40px;
    padding:7px 10px;
  }
}


/* v3.13.89 — readable typography pass for all subpages */
.ff-page.ff-menu-clean{
  --ff-sub-readable-label:.74rem;
  --ff-sub-readable-meta:.82rem;
  --ff-sub-readable-body:.88rem;
  --ff-sub-readable-title:1.06rem;
  --ff-sub-readable-head:1.38rem;
}

/* General subpage text floor. */
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) p,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) small,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) .ff-muted,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) .ff-subcopy{
  font-size:clamp(.78rem,.68vw,var(--ff-sub-readable-body));
  line-height:1.5;
}

.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) h3,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) .ff-section-title,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) .ff-card-title{
  line-height:1.18;
}

.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) button,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) select,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) input,
.ff-page.ff-menu-clean .ff-menu-section:not(.ff-menu-home-cinematic) .ff-btn{
  font-size:clamp(.78rem,.66vw,.88rem);
  line-height:1.2;
}

/* Maps page */
.ff-page.ff-menu-clean .ff-maps-clean-copy p,
.ff-page.ff-menu-clean .ff-maps-clean-status small,
.ff-page.ff-menu-clean .ff-map-brief-grid small,
.ff-page.ff-menu-clean .ff-pickup-map-note,
.ff-page.ff-menu-clean .ff-pickup-item span,
.ff-page.ff-menu-clean .ff-maps-clean-panel p,
.ff-page.ff-menu-clean .ff-maps-clean-panel small{
  font-size:clamp(.78rem,.68vw,.90rem);
  line-height:1.5;
}

.ff-page.ff-menu-clean .ff-maps-clean-status span,
.ff-page.ff-menu-clean .ff-maps-clean-panel-head span,
.ff-page.ff-menu-clean .ff-maps-clean-stat-row span{
  font-size:clamp(.68rem,.56vw,.76rem);
  line-height:1.25;
}

.ff-page.ff-menu-clean .ff-maps-clean-status strong,
.ff-page.ff-menu-clean .ff-map-brief-grid strong,
.ff-page.ff-menu-clean .ff-pickup-item strong{
  font-size:clamp(.92rem,.80vw,1.08rem);
  line-height:1.25;
}

.ff-page.ff-menu-clean .ff-maps-clean-tooltip,
.ff-page.ff-menu-clean .ff-maps-clean-tooltip strong,
.ff-page.ff-menu-clean .ff-maps-clean-tooltip small{
  line-height:1.28;
}

.ff-page.ff-menu-clean .ff-maps-clean-tooltip strong{
  font-size:clamp(.72rem,.62vw,.82rem);
}

.ff-page.ff-menu-clean .ff-maps-clean-tooltip small{
  font-size:clamp(.62rem,.54vw,.72rem);
}

.ff-page.ff-menu-clean .ff-map-brief-grid > div{
  min-height:142px;
}

/* Shop / skins page. Keep cards compact, but prevent text/tag collisions. */
.ff-page.ff-menu-clean .ff-shop-clean-title p,
.ff-page.ff-menu-clean .ff-shop-clean-command-card small,
.ff-page.ff-menu-clean .ff-shop-preview-copy small,
.ff-page.ff-menu-clean .ff-shop-preview-copy p,
.ff-page.ff-menu-clean .ff-shop-clean-collection-head small,
.ff-page.ff-menu-clean .ff-shop-clean-collection-head em,
.ff-page.ff-menu-clean .ff-shop-role,
.ff-page.ff-menu-clean .ff-shop-lore,
.ff-page.ff-menu-clean .ff-skin-role,
.ff-page.ff-menu-clean .ff-skin-meta,
.ff-page.ff-menu-clean .ff-skin-lore{
  font-size:clamp(.76rem,.66vw,.86rem);
  line-height:1.45;
}

.ff-page.ff-menu-clean .ff-shop-clean-title > span,
.ff-page.ff-menu-clean .ff-shop-clean-command-card > span,
.ff-page.ff-menu-clean .ff-shop-clean-filter-title,
.ff-page.ff-menu-clean .ff-shop-preview-ribbon,
.ff-page.ff-menu-clean .ff-shop-preview-meta span,
.ff-page.ff-menu-clean .ff-shop-card-badges span,
.ff-page.ff-menu-clean .ff-skin-topline span,
.ff-page.ff-menu-clean .ff-effect-tags-shop span,
.ff-page.ff-menu-clean .ff-shop-clean-coming-tags span{
  font-size:clamp(.64rem,.55vw,.74rem);
  line-height:1.2;
}

.ff-page.ff-menu-clean .ff-shop-card-copy strong,
.ff-page.ff-menu-clean .ff-skin-name{
  font-size:clamp(.92rem,.80vw,1.06rem);
  line-height:1.18;
}

.ff-page.ff-menu-clean .ff-shop-clean-grid,
.ff-page.ff-menu-clean .ff-skins-grid{
  grid-template-columns:repeat(auto-fit,minmax(286px,1fr));
  gap:16px;
}

.ff-page.ff-menu-clean .ff-shop-card{
  min-height:360px;
  align-content:start;
}

.ff-page.ff-menu-clean .ff-shop-card-copy{
  gap:9px;
}

.ff-page.ff-menu-clean .ff-shop-lore{
  min-height:4.25em;
  -webkit-line-clamp:3;
}

.ff-page.ff-menu-clean .ff-effect-tags-shop{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  min-height:32px;
}

.ff-page.ff-menu-clean .ff-effect-tags-shop span{
  max-width:100%;
  white-space:normal;
}

.ff-page.ff-menu-clean .ff-shop-card > button{
  min-height:44px;
  font-size:clamp(.78rem,.68vw,.88rem);
}

/* Ranking page */
.ff-page.ff-menu-clean .ff-leaderboard-topline p,
.ff-page.ff-menu-clean .ff-leaderboard-note,
.ff-page.ff-menu-clean .ff-podium-card em,
.ff-page.ff-menu-clean .ff-leaderboard-list-head small{
  font-size:clamp(.78rem,.66vw,.88rem);
  line-height:1.45;
}

.ff-page.ff-menu-clean .ff-leaderboard-tabs button,
.ff-page.ff-menu-clean .ff-leaderboard-refresh{
  font-size:clamp(.76rem,.64vw,.86rem);
}

.ff-page.ff-menu-clean .ff-podium-card b,
.ff-page.ff-menu-clean .ff-leader-list span{
  font-size:clamp(.98rem,.86vw,1.14rem);
  line-height:1.22;
}

.ff-page.ff-menu-clean .ff-leader-list li{
  min-height:48px;
}

.ff-page.ff-menu-clean .ff-leaderboard-stat-grid span{
  font-size:clamp(.68rem,.56vw,.76rem);
}

.ff-page.ff-menu-clean .ff-leaderboard-stat-grid strong{
  font-size:clamp(1.35rem,1.20vw,1.62rem);
}

/* Settings page */
.ff-page.ff-menu-clean .ff-settings-topline p,
.ff-page.ff-menu-clean .ff-settings-block-head small,
.ff-page.ff-menu-clean .ff-settings-toggle-card small,
.ff-page.ff-menu-clean .ff-settings-select-card p,
.ff-page.ff-menu-clean .ff-settings-help-note,
.ff-page.ff-menu-clean .ff-settings-recommended small,
.ff-page.ff-menu-clean .ff-settings-keymap span,
.ff-page.ff-menu-clean .ff-rule-item span,
.ff-page.ff-menu-clean .ff-changelog-list span{
  font-size:clamp(.78rem,.68vw,.90rem);
  line-height:1.5;
}

.ff-page.ff-menu-clean .ff-settings-toggle-card strong,
.ff-page.ff-menu-clean .ff-settings-card-block strong,
.ff-page.ff-menu-clean .ff-settings-keymap strong,
.ff-page.ff-menu-clean .ff-settings-recommended strong,
.ff-page.ff-menu-clean .ff-rule-item strong,
.ff-page.ff-menu-clean .ff-changelog-list strong{
  font-size:clamp(.94rem,.82vw,1.08rem);
  line-height:1.25;
}

.ff-page.ff-menu-clean .ff-settings-toggle-card{
  min-height:64px;
  padding:12px;
}

.ff-page.ff-menu-clean .ff-settings-range label{
  font-size:clamp(.72rem,.60vw,.82rem);
}

.ff-page.ff-menu-clean .ff-settings-preset-grid button{
  min-height:38px;
  font-size:clamp(.70rem,.58vw,.78rem);
}

/* Profile page */
html body .ff-page.ff-menu-clean .ff-profile-clean-copy p,
html body .ff-page.ff-menu-clean .ff-profile-clean-stat small,
html body .ff-page.ff-menu-clean .ff-profile-clean-goal p,
html body .ff-page.ff-menu-clean .ff-profile-clean-progress p,
html body .ff-page.ff-menu-clean .ff-profile-clean-achievement-card small,
html body .ff-page.ff-menu-clean .ff-profile-clean-mission-progress em,
html body .ff-page.ff-menu-clean .ff-profile-clean-style-grid span{
  font-size:clamp(.80rem,.70vw,.92rem);
  line-height:1.5;
}

html body .ff-page.ff-menu-clean .ff-profile-clean-kicker,
html body .ff-page.ff-menu-clean .ff-profile-clean-stat span,
html body .ff-page.ff-menu-clean .ff-profile-clean-achievement-top em,
html body .ff-page.ff-menu-clean .ff-profile-clean-mission-head b{
  font-size:clamp(.68rem,.56vw,.78rem);
  line-height:1.22;
}

html body .ff-page.ff-menu-clean .ff-profile-clean-stat strong,
html body .ff-page.ff-menu-clean .ff-profile-clean-achievement-card strong,
html body .ff-page.ff-menu-clean .ff-profile-clean-mission strong,
html body .ff-page.ff-menu-clean .ff-profile-clean-style-grid b{
  font-size:clamp(1rem,.88vw,1.16rem);
  line-height:1.25;
}

html body .ff-page.ff-menu-clean .ff-profile-clean-hero-metrics{
  gap:14px;
}

html body .ff-page.ff-menu-clean .ff-profile-clean-stat{
  min-height:118px;
}

/* Wide screens: users often sit farther from the display, so maintain a slightly larger text floor. */
@media (min-width:1440px){
  .ff-page.ff-menu-clean{
    --ff-sub-readable-body:.90rem;
    --ff-sub-readable-title:1.08rem;
  }
  .ff-page.ff-menu-clean .ff-shop-clean-grid,
  .ff-page.ff-menu-clean .ff-skins-grid{
    grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
  }
}

/* Lower screens: keep improved readability but prevent vertical overflow. */
@media (max-height:760px) and (min-width:961px){
  .ff-page.ff-menu-clean{
    --ff-sub-readable-body:.84rem;
    --ff-sub-readable-title:1rem;
  }
  .ff-page.ff-menu-clean .ff-shop-card{
    min-height:330px;
  }
  .ff-page.ff-menu-clean .ff-map-brief-grid > div{
    min-height:126px;
  }
  html body .ff-page.ff-menu-clean .ff-profile-clean-stat{
    min-height:106px;
  }
}


/* v3.13.89 — settings tutorial / controls modal */
.ff-settings-help-open-v31387{
  overflow:hidden;
}

.ff-settings-help-modal-v31387{
  position:fixed;
  inset:0;
  z-index:2147483000;
  display:grid;
  place-items:center;
  padding:clamp(16px,3vw,36px);
  color:#eef5ff;
  font-family:var(--ff-font-body,system-ui,sans-serif);
}

.ff-settings-help-backdrop-v31387{
  position:absolute;
  inset:0;
  background:rgba(2,6,18,.74);
  backdrop-filter:blur(14px);
}

.ff-settings-help-panel-v31387{
  position:relative;
  width:min(720px,100%);
  max-height:min(760px,calc(100dvh - 32px));
  overflow:auto;
  border-radius:26px;
  border:1px solid rgba(94,198,255,.25);
  background:
    radial-gradient(circle at 85% 12%,rgba(79,195,247,.18),transparent 32%),
    radial-gradient(circle at 15% 100%,rgba(245,197,24,.12),transparent 34%),
    linear-gradient(180deg,rgba(10,18,43,.98),rgba(5,9,24,.98));
  box-shadow:0 34px 90px rgba(0,0,0,.58), inset 0 1px 0 rgba(255,255,255,.06);
  padding:clamp(22px,3vw,34px);
}

.ff-settings-help-close-v31387{
  position:absolute;
  right:18px;
  top:18px;
  width:44px;
  height:44px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.13);
  background:rgba(255,255,255,.06);
  color:#dce8ff;
  font-size:1.7rem;
  line-height:1;
  cursor:pointer;
}

.ff-settings-help-head-v31387{
  padding-right:54px;
}

.ff-settings-help-head-v31387 span{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--ff-gold,#f5c518);
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.ff-settings-help-head-v31387 h2{
  margin:.55rem 0 .45rem;
  font-family:var(--ff-font-head,inherit);
  font-size:clamp(2rem,4vw,3.25rem);
  line-height:.96;
  text-transform:uppercase;
  color:#fff;
}

.ff-settings-help-head-v31387 p{
  margin:0;
  max-width:54ch;
  color:#b9c9e8;
  font-size:1rem;
  line-height:1.55;
}

.ff-settings-help-steps-v31387{
  display:grid;
  gap:10px;
  margin:24px 0;
  padding:0;
  list-style:none;
}

.ff-settings-help-step-v31387{
  display:grid;
  grid-template-columns:76px minmax(0,1fr);
  gap:14px;
  align-items:center;
  padding:14px;
  border-radius:18px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.09);
}

.ff-settings-help-step-key-v31387{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  border-radius:14px;
  background:linear-gradient(180deg,rgba(245,197,24,.18),rgba(245,197,24,.08));
  border:1px solid rgba(245,197,24,.24);
  color:#ffe66f;
  font-weight:950;
  letter-spacing:.04em;
}

.ff-settings-help-step-copy-v31387 strong{
  display:block;
  color:#fff;
  font-size:1.05rem;
  line-height:1.25;
}

.ff-settings-help-step-copy-v31387 small{
  display:block;
  margin-top:4px;
  color:#b8c8e8;
  font-size:.92rem;
  line-height:1.45;
}

.ff-settings-help-ok-v31387{
  width:100%;
  min-height:52px;
  justify-content:center;
}

@media (max-width:640px){
  .ff-settings-help-panel-v31387{
    border-radius:20px;
    padding:20px;
  }
  .ff-settings-help-step-v31387{
    grid-template-columns:1fr;
    gap:10px;
  }
  .ff-settings-help-step-key-v31387{
    justify-content:flex-start;
    padding-inline:14px;
  }
}


/* v3.13.89 — popup placement: desktop modal, mobile bottom sheet, in-game hints */
.ff-settings-help-modal-v31387{
  align-items:center;
  justify-items:center;
}

.ff-first-run-open-v31388,
.ff-settings-help-open-v31387{
  overflow:hidden;
}

.ff-first-run-tutorial-v31388{
  position:fixed;
  inset:0;
  z-index:2147483100;
  display:grid;
  place-items:center;
  padding:clamp(16px,3vw,36px);
  color:#eef5ff;
  font-family:var(--ff-font-body,system-ui,sans-serif);
}

.ff-first-run-backdrop-v31388{
  position:absolute;
  inset:0;
  background:rgba(2,6,18,.76);
  backdrop-filter:blur(14px);
}

.ff-first-run-panel-v31388{
  position:relative;
  width:min(760px,100%);
  max-height:min(780px,calc(100dvh - 32px));
  overflow:auto;
  border-radius:28px;
  border:1px solid rgba(94,198,255,.25);
  background:
    radial-gradient(circle at 82% 10%,rgba(79,195,247,.18),transparent 34%),
    radial-gradient(circle at 12% 92%,rgba(245,197,24,.13),transparent 32%),
    linear-gradient(180deg,rgba(10,18,43,.98),rgba(5,9,24,.98));
  box-shadow:0 34px 90px rgba(0,0,0,.58), inset 0 1px 0 rgba(255,255,255,.06);
  padding:clamp(22px,3vw,36px);
}

.ff-first-run-close-v31388{
  position:absolute;
  right:18px;
  top:18px;
  width:44px;
  height:44px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.13);
  background:rgba(255,255,255,.06);
  color:#dce8ff;
  font-size:1.7rem;
  line-height:1;
  cursor:pointer;
}

.ff-first-run-eyebrow-v31388{
  display:inline-flex;
  align-items:center;
  color:var(--ff-gold,#f5c518);
  font-size:.76rem;
  font-weight:950;
  letter-spacing:.17em;
  text-transform:uppercase;
}

.ff-first-run-panel-v31388 h2{
  margin:.55rem 52px .45rem 0;
  font-family:var(--ff-font-head,inherit);
  font-size:clamp(2rem,4vw,3.35rem);
  line-height:.96;
  text-transform:uppercase;
  color:#fff;
}

.ff-first-run-panel-v31388 p{
  max-width:58ch;
  margin:0;
  color:#b9c9e8;
  font-size:1rem;
  line-height:1.55;
}

.ff-first-run-grid-v31388{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:24px 0;
}

.ff-first-run-grid-v31388 article{
  padding:16px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.09);
  background:rgba(255,255,255,.045);
  min-height:150px;
}

.ff-first-run-grid-v31388 b{
  display:inline-flex;
  margin-bottom:14px;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(245,197,24,.12);
  border:1px solid rgba(245,197,24,.22);
  color:#ffe66f;
  font-size:.72rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.ff-first-run-grid-v31388 strong{
  display:block;
  color:#fff;
  font-size:1.08rem;
  line-height:1.25;
}

.ff-first-run-grid-v31388 small{
  display:block;
  margin-top:6px;
  color:#b8c8e8;
  font-size:.92rem;
  line-height:1.45;
}

.ff-first-run-actions-v31388{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:12px;
}

.ff-first-run-actions-v31388 .ff-btn{
  min-height:54px;
  justify-content:center;
}

.ff-ingame-hint-v31388{
  position:fixed;
  left:50%;
  top:calc(92px + env(safe-area-inset-top,0px));
  right:auto;
  z-index:2147482500;
  display:grid;
  gap:6px;
  min-width:min(340px,calc(100vw - 32px));
  max-width:min(460px,calc(100vw - 32px));
  padding:14px 18px;
  border-radius:18px;
  border:1px solid rgba(94,198,255,.26);
  background:linear-gradient(135deg,rgba(6,13,33,.94),rgba(11,31,67,.92));
  box-shadow:0 18px 46px rgba(0,0,0,.40);
  color:#eaf4ff;
  transform:translate(-50%,-12px);
  opacity:0;
  pointer-events:none;
  transition:opacity .28s ease, transform .28s ease;
}

.ff-ingame-hint-v31388.is-visible{
  opacity:1;
  transform:translate(-50%,0);
}

.ff-ingame-hint-v31388 strong{
  color:var(--ff-gold,#f5c518);
  font-size:.72rem;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.ff-ingame-hint-v31388 span{
  display:flex;
  justify-content:space-between;
  gap:14px;
  color:#bcd0f0;
  font-size:.88rem;
  line-height:1.35;
}

.ff-ingame-hint-v31388 b{
  color:#fff;
}

/* Mobile: settings/tutorial popups become bottom sheets instead of centered desktop dialogs. */
@media (max-width:720px){
  .ff-settings-help-modal-v31387,
  .ff-first-run-tutorial-v31388{
    place-items:end stretch;
    padding:0;
  }

  .ff-settings-help-panel-v31387,
  .ff-first-run-panel-v31388{
    width:100%;
    max-height:86dvh;
    border-radius:24px 24px 0 0;
    border-left:0;
    border-right:0;
    border-bottom:0;
    padding:22px 18px calc(20px + env(safe-area-inset-bottom,0px));
    animation:ffBottomSheetInV31388 .22s ease-out both;
  }

  .ff-settings-help-head-v31387 h2,
  .ff-first-run-panel-v31388 h2{
    font-size:clamp(1.75rem,9vw,2.45rem);
  }

  .ff-settings-help-steps-v31387,
  .ff-first-run-grid-v31388{
    grid-template-columns:1fr;
  }

  .ff-first-run-actions-v31388{
    grid-template-columns:1fr;
  }

  .ff-ingame-hint-v31388{
    left:50%;
    right:auto;
    top:auto;
    bottom:calc(104px + env(safe-area-inset-bottom,0px));
    min-width:min(300px,calc(100vw - 24px));
    max-width:calc(100vw - 24px);
    transform:translate(-50%,12px);
  }

  .ff-ingame-hint-v31388.is-visible{
    transform:translate(-50%,0);
  }
}

@keyframes ffBottomSheetInV31388{
  from{transform:translateY(24px); opacity:.7}
  to{transform:translateY(0); opacity:1}
}

@media (prefers-reduced-motion:reduce){
  .ff-settings-help-panel-v31387,
  .ff-first-run-panel-v31388,
  .ff-ingame-hint-v31388{
    animation:none;
    transition:none;
  }
}


/* v3.13.89 — UI size setting actually affects menu, settings and subpages */
.ff-page.ff-menu-clean[data-ff-ui-size="small"]{
  --ff-readable-micro:.64rem;
  --ff-readable-label:.68rem;
  --ff-readable-meta:.76rem;
  --ff-readable-body:.80rem;
  --ff-readable-title:.96rem;
  --ff-readable-button:.78rem;
  --ff-sub-readable-label:.68rem;
  --ff-sub-readable-meta:.78rem;
  --ff-sub-readable-body:.82rem;
  --ff-sub-readable-title:.98rem;
  --ff-sub-readable-head:1.26rem;
}

.ff-page.ff-menu-clean[data-ff-ui-size="normal"]{
  --ff-readable-micro:.68rem;
  --ff-readable-label:.72rem;
  --ff-readable-meta:.80rem;
  --ff-readable-body:.86rem;
  --ff-readable-title:1.02rem;
  --ff-readable-button:.84rem;
  --ff-sub-readable-label:.74rem;
  --ff-sub-readable-meta:.82rem;
  --ff-sub-readable-body:.88rem;
  --ff-sub-readable-title:1.06rem;
  --ff-sub-readable-head:1.38rem;
}

.ff-page.ff-menu-clean[data-ff-ui-size="large"]{
  --ff-readable-micro:.74rem;
  --ff-readable-label:.80rem;
  --ff-readable-meta:.90rem;
  --ff-readable-body:.98rem;
  --ff-readable-title:1.16rem;
  --ff-readable-button:.94rem;
  --ff-sub-readable-label:.82rem;
  --ff-sub-readable-meta:.94rem;
  --ff-sub-readable-body:1rem;
  --ff-sub-readable-title:1.18rem;
  --ff-sub-readable-head:1.56rem;
}

.ff-page.ff-menu-clean[data-ff-ui-size="small"] .ff-ingame-tabs-primary>button,
.ff-page.ff-menu-clean[data-ff-ui-size="small"] .ff-top-account-chip,
.ff-page.ff-menu-clean[data-ff-ui-size="small"] .ff-menu-footer{
  font-size:.70rem;
}

.ff-page.ff-menu-clean[data-ff-ui-size="large"] .ff-ingame-tabs-primary>button,
.ff-page.ff-menu-clean[data-ff-ui-size="large"] .ff-top-account-chip{
  font-size:.86rem;
}

.ff-page.ff-menu-clean[data-ff-ui-size="large"] .ff-menu-footer{
  font-size:.78rem;
}

.ff-page.ff-menu-clean[data-ff-ui-size="small"] .ff-btn,
.ff-page.ff-menu-clean[data-ff-ui-size="small"] button,
.ff-page.ff-menu-clean[data-ff-ui-size="small"] select,
.ff-page.ff-menu-clean[data-ff-ui-size="small"] input{
  font-size:.78rem;
}

.ff-page.ff-menu-clean[data-ff-ui-size="large"] .ff-btn,
.ff-page.ff-menu-clean[data-ff-ui-size="large"] button,
.ff-page.ff-menu-clean[data-ff-ui-size="large"] select,
.ff-page.ff-menu-clean[data-ff-ui-size="large"] input{
  font-size:.94rem;
}

.ff-page.ff-menu-clean[data-ff-ui-size="small"] .ff-menu-section:not(.ff-menu-home-cinematic) h2,
.ff-page.ff-menu-clean[data-ff-ui-size="small"] .ff-menu-section:not(.ff-menu-home-cinematic) h3{
  font-size:clamp(1.55rem,1.95vw,2.35rem);
}

.ff-page.ff-menu-clean[data-ff-ui-size="large"] .ff-menu-section:not(.ff-menu-home-cinematic) h2,
.ff-page.ff-menu-clean[data-ff-ui-size="large"] .ff-menu-section:not(.ff-menu-home-cinematic) h3{
  font-size:clamp(1.95rem,2.35vw,3rem);
}

.ff-page.ff-menu-clean[data-ff-ui-size="small"] .ff-home-hub-grid article,
.ff-page.ff-menu-clean[data-ff-ui-size="small"] .ff-home-brief-card,
.ff-page.ff-menu-clean[data-ff-ui-size="small"] .ff-settings-card-block,
.ff-page.ff-menu-clean[data-ff-ui-size="small"] .ff-shop-card,
.ff-page.ff-menu-clean[data-ff-ui-size="small"] .ff-skins-grid button{
  padding:12px;
}

.ff-page.ff-menu-clean[data-ff-ui-size="large"] .ff-home-hub-grid article,
.ff-page.ff-menu-clean[data-ff-ui-size="large"] .ff-home-brief-card,
.ff-page.ff-menu-clean[data-ff-ui-size="large"] .ff-settings-card-block,
.ff-page.ff-menu-clean[data-ff-ui-size="large"] .ff-shop-card,
.ff-page.ff-menu-clean[data-ff-ui-size="large"] .ff-skins-grid button{
  padding:18px;
}

.ff-page.ff-menu-clean[data-ff-ui-size="small"] .ff-shop-clean-grid,
.ff-page.ff-menu-clean[data-ff-ui-size="small"] .ff-skins-grid{
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
}

.ff-page.ff-menu-clean[data-ff-ui-size="large"] .ff-shop-clean-grid,
.ff-page.ff-menu-clean[data-ff-ui-size="large"] .ff-skins-grid{
  grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
}

.ff-page.ff-menu-clean[data-ff-ui-size="small"] .ff-settings-toggle-card{
  min-height:56px;
}

.ff-page.ff-menu-clean[data-ff-ui-size="large"] .ff-settings-toggle-card{
  min-height:72px;
}

.ff-page.ff-menu-clean[data-ff-ui-size="small"] .ff-home-hero-right-stack > .ff-home-hero-side-hud > div{
  min-height:38px;
  padding:7px 10px;
}

.ff-page.ff-menu-clean[data-ff-ui-size="large"] .ff-home-hero-right-stack > .ff-home-hero-side-hud > div{
  min-height:52px;
  padding:10px 15px;
}

.ff-page.ff-menu-clean[data-ff-ui-size="large"] .ff-home-hero-right-stack > .ff-cine-mission{
  min-height:152px;
}

/* v3.13.90 — game store skin shop rebuild */
.ff-page.ff-menu-clean .ff-shop-game-store{
  padding:18px;
}
.ff-page.ff-menu-clean .ff-shop-storefront{
  gap:18px;
}
.ff-page.ff-menu-clean .ff-shop-store-hero{
  grid-template-columns:minmax(280px,1.45fr) repeat(4,minmax(118px,.55fr));
  gap:12px;
}
.ff-page.ff-menu-clean .ff-shop-store-title{
  position:relative;
  overflow:hidden;
  min-height:132px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  border-radius:18px;
  background:
    radial-gradient(circle at 8% 0%, rgba(135,255,169,.18), transparent 28%),
    radial-gradient(circle at 90% 28%, rgba(79,195,247,.13), transparent 34%),
    linear-gradient(135deg, rgba(8,14,32,.98), rgba(17,28,58,.96));
  border:1px solid rgba(135,255,169,.24);
  box-shadow:0 22px 48px rgba(3,8,26,.32), inset 0 1px 0 rgba(255,255,255,.06);
}
.ff-page.ff-menu-clean .ff-shop-store-title::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(110deg, transparent 0 42%, rgba(255,255,255,.07) 43% 45%, transparent 46%);
  opacity:.7;
  pointer-events:none;
}
.ff-page.ff-menu-clean .ff-shop-store-title > span{
  position:relative;
  z-index:1;
  color:#b8ffc8;
}
.ff-page.ff-menu-clean .ff-shop-store-title strong{
  position:relative;
  z-index:1;
  margin-top:8px;
  font-size:clamp(2.25rem,4.2vw,4.6rem);
  line-height:.9;
  letter-spacing:.02em;
  text-transform:uppercase;
  text-shadow:0 5px 0 rgba(0,0,0,.34), 0 0 24px rgba(135,255,169,.16);
}
.ff-page.ff-menu-clean .ff-shop-store-title p{
  position:relative;
  z-index:1;
  max-width:60ch;
  margin:12px 0 0;
  color:#cfddff;
  font-size:.88rem;
}
.ff-page.ff-menu-clean .ff-shop-store-hero .ff-shop-clean-command-card{
  min-height:132px;
  border-radius:16px;
  background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 14px 30px rgba(3,8,26,.20);
}
.ff-page.ff-menu-clean .ff-shop-rotation-card strong{
  color:#b8ffc8;
}
.ff-page.ff-menu-clean .ff-shop-store-filter{
  padding:14px;
  border-radius:16px;
  background:rgba(7,12,31,.78);
  border:1px solid rgba(126,193,255,.12);
}
.ff-page.ff-menu-clean .ff-shop-featured-card{
  grid-template-columns:minmax(250px,.66fr) minmax(0,1.34fr);
  min-height:250px;
  border-radius:20px;
  background:
    radial-gradient(circle at 22% 24%, rgba(135,255,169,.14), transparent 34%),
    linear-gradient(125deg, rgba(13,24,52,.96), rgba(6,10,26,.98));
  border:1px solid rgba(135,255,169,.18);
}
.ff-page.ff-menu-clean .ff-shop-featured-card .ff-shop-preview-ribbon{
  color:#b8ffc8;
}
.ff-page.ff-menu-clean .ff-shop-featured-card .ff-shop-preview-visual{
  min-height:220px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.025)),
    radial-gradient(circle at 50% 18%, rgba(135,255,169,.15), transparent 58%);
}
.ff-page.ff-menu-clean .ff-shop-featured-card .ff-shop-preview-visual img{
  max-width:230px;
  max-height:230px;
}
.ff-page.ff-menu-clean .ff-shop-store-collection-head{
  padding:0 6px;
}
.ff-page.ff-menu-clean .ff-shop-store-grid,
.ff-page.ff-menu-clean[data-ff-ui-size="small"] .ff-shop-store-grid,
.ff-page.ff-menu-clean[data-ff-ui-size="large"] .ff-shop-store-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  align-items:stretch;
}
@media (min-width:1500px){
  .ff-page.ff-menu-clean .ff-shop-store-grid,
  .ff-page.ff-menu-clean[data-ff-ui-size="small"] .ff-shop-store-grid,
  .ff-page.ff-menu-clean[data-ff-ui-size="large"] .ff-shop-store-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}
.ff-page.ff-menu-clean .ff-shop-store-card{
  isolation:isolate;
  display:flex;
  flex-direction:column;
  gap:0;
  min-height:438px;
  padding:0;
  overflow:hidden;
  border-radius:18px;
  background:linear-gradient(180deg, rgba(15,27,58,.98), rgba(7,12,31,.98));
  border:1px solid rgba(126,193,255,.14);
  box-shadow:0 18px 42px rgba(3,8,26,.30), inset 0 1px 0 rgba(255,255,255,.05);
  cursor:pointer;
}
.ff-page.ff-menu-clean .ff-shop-store-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(180deg, transparent 0 56%, rgba(0,0,0,.30) 100%);
  pointer-events:none;
}
.ff-page.ff-menu-clean .ff-shop-store-card:hover,
.ff-page.ff-menu-clean .ff-shop-store-card:focus-visible{
  transform:translateY(-4px);
  border-color:rgba(135,255,169,.40);
  box-shadow:0 24px 52px rgba(3,8,26,.38), 0 0 0 1px rgba(135,255,169,.15);
}
.ff-page.ff-menu-clean .ff-shop-store-card.is-preview-selected{
  border-color:rgba(135,255,169,.74);
  box-shadow:0 0 0 3px rgba(135,255,169,.18), 0 26px 58px rgba(3,8,26,.44);
}
.ff-page.ff-menu-clean .ff-shop-store-card[data-shop-state="selected"]{
  border-color:rgba(135,255,169,.88);
  box-shadow:0 0 0 3px rgba(135,255,169,.18), 0 0 34px rgba(135,255,169,.16), 0 26px 58px rgba(3,8,26,.44);
}
.ff-page.ff-menu-clean .ff-shop-card-visual{
  position:relative;
  min-height:248px;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  padding:46px 16px 12px;
  background:
    radial-gradient(circle at 50% 22%, rgba(79,195,247,.18), transparent 55%),
    linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.02));
  border-bottom:1px solid rgba(255,255,255,.08);
}
.ff-page.ff-menu-clean .ff-shop-store-card[data-rarity="legendary"] .ff-shop-card-visual,
.ff-page.ff-menu-clean .ff-shop-store-card[data-rarity="mythic"] .ff-shop-card-visual{
  background:
    radial-gradient(circle at 50% 20%, rgba(245,197,24,.22), transparent 56%),
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.02));
}
.ff-page.ff-menu-clean .ff-shop-store-card[data-rarity="epic"] .ff-shop-card-visual{
  background:
    radial-gradient(circle at 50% 20%, rgba(168,85,247,.24), transparent 56%),
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.02));
}
.ff-page.ff-menu-clean .ff-shop-store-card .ff-shop-card-visual img{
  width:auto;
  height:auto;
  max-width:96%;
  max-height:230px;
  margin:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  object-fit:contain;
  filter:drop-shadow(0 22px 26px rgba(0,0,0,.42));
  transform-origin:bottom center;
  transition:transform .2s ease, filter .2s ease, opacity .2s ease;
}
.ff-page.ff-menu-clean .ff-shop-store-card:hover .ff-shop-card-visual img{
  transform:scale(1.045);
  filter:drop-shadow(0 26px 30px rgba(0,0,0,.48));
}
.ff-page.ff-menu-clean .ff-shop-store-card .ff-shop-card-badges{
  position:absolute;
  top:12px;
  left:12px;
  right:12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin:0;
}
.ff-page.ff-menu-clean .ff-shop-store-card .ff-shop-card-badges span{
  min-height:24px;
  display:inline-flex;
  align-items:center;
  padding:0 9px;
  border-radius:6px;
  font-size:.58rem;
  font-weight:1000;
  letter-spacing:.08em;
  text-transform:uppercase;
  box-shadow:0 6px 14px rgba(0,0,0,.22);
}
.ff-page.ff-menu-clean .ff-shop-store-card .ff-skin-game{
  color:#dfe8ff;
  background:rgba(5,8,18,.70);
  border:1px solid rgba(255,255,255,.14);
}
.ff-page.ff-menu-clean .ff-shop-store-card .ff-shop-card-copy{
  display:flex;
  flex-direction:column;
  gap:9px;
  flex:1 1 auto;
  padding:14px 15px 12px;
}
.ff-page.ff-menu-clean .ff-shop-store-card .ff-shop-card-copy strong{
  display:block;
  min-height:2.2em;
  color:#fff;
  font-family:var(--ff-font-head);
  font-size:1.08rem;
  line-height:1.05;
  text-transform:uppercase;
  letter-spacing:.02em;
  text-shadow:0 2px 0 rgba(0,0,0,.32);
}
.ff-page.ff-menu-clean .ff-shop-store-card .ff-shop-role{
  min-height:0;
  color:#9fb0d4;
  font-size:.72rem;
  line-height:1.35;
  display:-webkit-box;
  -webkit-line-clamp:1;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.ff-page.ff-menu-clean .ff-shop-store-card .ff-effect-tags-shop{
  min-height:26px;
  display:flex;
  flex-wrap:nowrap;
  gap:6px;
  margin:0;
  overflow:hidden;
}
.ff-page.ff-menu-clean .ff-shop-store-card .ff-effect-tags-shop span{
  max-width:50%;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  padding:5px 8px;
  border-radius:999px;
  color:#dfe8ff;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.08);
  font-size:.59rem;
  font-weight:900;
}
.ff-page.ff-menu-clean .ff-shop-store-card .ff-shop-card-economy{
  margin-top:auto;
  display:flex;
  align-items:center;
  gap:7px;
}
.ff-page.ff-menu-clean .ff-shop-store-card .ff-shop-price-tag{
  min-height:28px;
  border-radius:6px;
  color:#0d1020;
  background:linear-gradient(180deg, #ffe36c, #f5c518);
  border:1px solid rgba(255,242,161,.62);
  box-shadow:0 8px 16px rgba(245,197,24,.16);
}
.ff-page.ff-menu-clean .ff-shop-store-card .ff-shop-map-lock{
  max-width:48%;
  min-height:28px;
  border-radius:6px;
  color:#dfe8ff;
  background:rgba(255,255,255,.06);
}
.ff-page.ff-menu-clean .ff-shop-store-card .ff-shop-lore,
.ff-page.ff-menu-clean .ff-shop-store-card .ff-skin-stat-chips-shop{
  display:none;
}
.ff-page.ff-menu-clean .ff-shop-store-card > button{
  width:calc(100% - 24px);
  min-height:42px;
  margin:0 12px 12px;
  border-radius:10px;
  color:#071021;
  background:linear-gradient(180deg, #9cffae, #61e98a);
  border:1px solid rgba(184,255,200,.66);
  box-shadow:0 10px 20px rgba(97,233,138,.16);
  font-size:.72rem;
  font-weight:1000;
}
.ff-page.ff-menu-clean .ff-shop-store-card > button[data-state="owned"]{
  color:#dff8ff;
  background:linear-gradient(180deg, rgba(79,195,247,.28), rgba(79,195,247,.16));
  border-color:rgba(79,195,247,.36);
}
.ff-page.ff-menu-clean .ff-shop-store-card > button[data-state="selected"]{
  color:#071021;
  background:linear-gradient(180deg, #b8ffc8, #7ef0a0);
  border-color:rgba(184,255,200,.80);
}
.ff-page.ff-menu-clean .ff-shop-store-card > button[data-state="missing"],
.ff-page.ff-menu-clean .ff-shop-store-card > button[data-state="maplocked"]{
  color:#dbe5ff;
  background:rgba(255,255,255,.07);
  border-color:rgba(255,255,255,.12);
  box-shadow:none;
}
.ff-page.ff-menu-clean .ff-shop-store-card[data-shop-state="owned"]::before,
.ff-page.ff-menu-clean .ff-shop-store-card[data-shop-state="selected"]::before,
.ff-page.ff-menu-clean .ff-shop-store-card[data-shop-state="maplocked"]::before{
  top:auto;
  right:12px;
  bottom:62px;
  z-index:3;
  border-radius:6px;
}
.ff-page.ff-menu-clean .ff-shop-store-coming{
  min-height:120px;
  border-radius:18px;
}
.ff-page.ff-menu-clean .ff-shop-modal[hidden]{display:none}
.ff-page.ff-menu-clean .ff-shop-modal{
  position:fixed;
  inset:0;
  z-index:9999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
}
.ff-page.ff-menu-clean .ff-shop-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(2,6,18,.74);
  backdrop-filter:blur(12px);
}
.ff-page.ff-menu-clean .ff-shop-modal-dialog{
  position:relative;
  z-index:1;
  width:min(920px,96vw);
  max-height:min(760px,92vh);
  display:grid;
  grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);
  gap:22px;
  overflow:auto;
  padding:22px;
  border-radius:24px;
  background:
    radial-gradient(circle at 26% 16%, rgba(135,255,169,.13), transparent 34%),
    linear-gradient(135deg, rgba(15,27,58,.98), rgba(6,10,26,.98));
  border:1px solid rgba(126,193,255,.20);
  box-shadow:0 34px 90px rgba(0,0,0,.50), inset 0 1px 0 rgba(255,255,255,.06);
}
.ff-page.ff-menu-clean .ff-shop-modal-close{
  position:absolute;
  top:14px;
  right:14px;
  z-index:3;
  width:38px;
  height:38px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.08);
  color:#fff;
  font-size:1.4rem;
  line-height:1;
  cursor:pointer;
}
.ff-page.ff-menu-clean .ff-shop-modal-visual{
  position:relative;
  min-height:420px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border-radius:20px;
  background:
    radial-gradient(circle at 50% 28%, rgba(79,195,247,.18), transparent 52%),
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.025));
  border:1px solid rgba(255,255,255,.10);
}
.ff-page.ff-menu-clean .ff-shop-modal-glow{
  position:absolute;
  width:260px;
  height:260px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(135,255,169,.18), transparent 68%);
}
.ff-page.ff-menu-clean .ff-shop-modal-visual img{
  position:relative;
  z-index:1;
  max-width:94%;
  max-height:390px;
  object-fit:contain;
  filter:drop-shadow(0 28px 34px rgba(0,0,0,.50));
}
.ff-page.ff-menu-clean .ff-shop-modal-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:14px;
  padding:14px 4px 10px;
}
.ff-page.ff-menu-clean .ff-shop-modal-copy > strong{
  font-family:var(--ff-font-head);
  font-size:clamp(1.8rem,3vw,3rem);
  line-height:.95;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-shop-modal-copy > small{
  color:#b8ffc8;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-shop-modal-copy > p{
  margin:0;
  color:#cfddff;
  line-height:1.6;
}
.ff-page.ff-menu-clean .ff-shop-modal-detail-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.ff-page.ff-menu-clean .ff-shop-modal-detail-card{
  min-width:0;
  padding:12px;
  border-radius:14px;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.08);
}
.ff-page.ff-menu-clean .ff-shop-modal-detail-card > span{
  display:block;
  margin-bottom:9px;
  color:#8fa1cc;
  font-size:.66rem;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.10em;
}
.ff-page.ff-menu-clean .ff-shop-modal-effects,
.ff-page.ff-menu-clean .ff-shop-modal-stats{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.ff-page.ff-menu-clean .ff-shop-modal-effects span,
.ff-page.ff-menu-clean .ff-shop-modal-stats span{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:30px;
  padding:0 10px;
  border-radius:999px;
  color:#dfe8ff;
  background:rgba(255,255,255,.075);
  border:1px solid rgba(255,255,255,.09);
  font-size:.68rem;
  font-weight:900;
}
.ff-page.ff-menu-clean .ff-shop-modal-stats span{
  justify-content:space-between;
  min-width:108px;
}
.ff-page.ff-menu-clean .ff-shop-modal-stats em{
  color:#b8ffc8;
  font-style:normal;
}
.ff-page.ff-menu-clean .ff-shop-modal-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:4px;
}
.ff-page.ff-menu-clean .ff-shop-modal-actions .ff-btn{
  min-height:44px;
  min-width:160px;
}
@media (max-width:1180px){
  .ff-page.ff-menu-clean .ff-shop-store-hero{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .ff-page.ff-menu-clean .ff-shop-store-title{
    grid-column:1 / -1;
  }
  .ff-page.ff-menu-clean .ff-shop-store-grid,
  .ff-page.ff-menu-clean[data-ff-ui-size="small"] .ff-shop-store-grid,
  .ff-page.ff-menu-clean[data-ff-ui-size="large"] .ff-shop-store-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:860px){
  .ff-page.ff-menu-clean .ff-shop-featured-card,
  .ff-page.ff-menu-clean .ff-shop-modal-dialog{
    grid-template-columns:1fr;
  }
  .ff-page.ff-menu-clean .ff-shop-modal-visual{
    min-height:300px;
  }
  .ff-page.ff-menu-clean .ff-shop-modal-visual img{
    max-height:280px;
  }
  .ff-page.ff-menu-clean .ff-shop-modal-detail-grid{
    grid-template-columns:1fr;
  }
}
@media (max-width:640px){
  .ff-page.ff-menu-clean .ff-shop-store-grid,
  .ff-page.ff-menu-clean[data-ff-ui-size="small"] .ff-shop-store-grid,
  .ff-page.ff-menu-clean[data-ff-ui-size="large"] .ff-shop-store-grid,
  .ff-page.ff-menu-clean .ff-shop-store-hero,
  .ff-page.ff-menu-clean .ff-shop-clean-selects{
    grid-template-columns:1fr;
  }
  .ff-page.ff-menu-clean .ff-shop-game-store{
    padding:12px;
  }
  .ff-page.ff-menu-clean .ff-shop-store-card{
    min-height:410px;
  }
  .ff-page.ff-menu-clean .ff-shop-card-visual{
    min-height:236px;
  }
  .ff-page.ff-menu-clean .ff-shop-store-title strong{
    font-size:2.6rem;
  }
  .ff-page.ff-menu-clean .ff-shop-modal{
    align-items:flex-end;
    padding:10px;
  }
  .ff-page.ff-menu-clean .ff-shop-modal-dialog{
    width:100%;
    max-height:90vh;
    padding:18px;
    border-radius:22px 22px 16px 16px;
  }
}

/* v3.13.91 — premium game-store skin shop inspired by modern rotating item shops */
.ff-page.ff-menu-clean .ff-shop-game-store .ff-shop-topline{display:none}
.ff-page.ff-menu-clean .ff-shop-storefront-v2{gap:18px}
.ff-page.ff-menu-clean .ff-shop-storefront-v2 .ff-shop-clean-command,
.ff-page.ff-menu-clean .ff-shop-storefront-v2 .ff-shop-clean-filter-deck{display:none}
.ff-page.ff-menu-clean .ff-shop-premium-header{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,.48fr);
  gap:18px;
  align-items:stretch;
  padding:22px 24px;
  border-radius:22px;
  background:
    radial-gradient(circle at 10% 10%, rgba(79,195,247,.17), transparent 31%),
    radial-gradient(circle at 90% 0%, rgba(168,85,247,.14), transparent 30%),
    linear-gradient(130deg, rgba(13,25,57,.98), rgba(6,10,28,.98));
  border:1px solid rgba(126,193,255,.14);
  box-shadow:0 20px 52px rgba(1,6,24,.30), inset 0 1px 0 rgba(255,255,255,.05);
}
.ff-page.ff-menu-clean .ff-shop-premium-header::after{
  content:"";
  position:absolute;
  right:-76px;
  top:-88px;
  width:260px;
  height:260px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(79,195,247,.16), transparent 68%);
  pointer-events:none;
}
.ff-page.ff-menu-clean .ff-shop-premium-title{position:relative;z-index:1;display:flex;align-items:center;gap:18px;min-width:0}
.ff-page.ff-menu-clean .ff-shop-premium-emblem{
  flex:0 0 auto;
  width:76px;
  height:76px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:22px;
  color:#7df2ff;
  background:linear-gradient(145deg, rgba(79,195,247,.18), rgba(168,85,247,.08));
  border:1px solid rgba(126,193,255,.18);
  box-shadow:0 0 0 1px rgba(79,195,247,.05), 0 18px 34px rgba(0,0,0,.28);
}
.ff-page.ff-menu-clean .ff-shop-premium-emblem .ff-ui-ico{width:38px;height:38px}
.ff-page.ff-menu-clean .ff-shop-premium-title h3{
  margin:0;
  color:#fff;
  font-size:clamp(2.05rem,3.6vw,3.8rem);
  line-height:.92;
  text-transform:uppercase;
  letter-spacing:.045em;
  text-shadow:0 0 28px rgba(79,195,247,.22);
}
.ff-page.ff-menu-clean .ff-shop-premium-title p{
  display:flex;
  align-items:center;
  gap:9px;
  margin:12px 0 0;
  color:#aebeff;
  font-size:1.02rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-shop-premium-metrics{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:stretch}
.ff-page.ff-menu-clean .ff-shop-premium-metric{
  min-height:92px;
  padding:16px;
  border-radius:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.062), rgba(255,255,255,.026));
  border:1px solid rgba(255,255,255,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045);
}
.ff-page.ff-menu-clean .ff-shop-premium-metric span{display:block;color:#91a5d0;font-size:.66rem;font-weight:950;text-transform:uppercase;letter-spacing:.13em}
.ff-page.ff-menu-clean .ff-shop-premium-metric strong{display:flex;align-items:center;gap:9px;margin-top:9px;color:#fff;font-size:1.8rem;line-height:1}
.ff-page.ff-menu-clean .ff-shop-premium-metric small{display:block;margin-top:5px;color:#8ea2c8;font-size:.75rem}
.ff-page.ff-menu-clean .ff-shop-premium-filters{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,.88fr) minmax(174px,.28fr);
  gap:18px;
  align-items:end;
}
.ff-page.ff-menu-clean .ff-shop-filter-group,
.ff-page.ff-menu-clean .ff-shop-sort-control{display:grid;gap:8px;min-width:0}
.ff-page.ff-menu-clean .ff-shop-filter-group > span,
.ff-page.ff-menu-clean .ff-shop-sort-control > span{color:#879aca;font-size:.72rem;font-weight:950;text-transform:uppercase;letter-spacing:.13em}
.ff-page.ff-menu-clean .ff-shop-premium-chips{display:flex;flex-wrap:wrap;gap:8px}
.ff-page.ff-menu-clean .ff-shop-premium-chips button{
  min-height:40px;
  padding:0 18px;
  border-radius:14px;
  color:#cad8f8;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
.ff-page.ff-menu-clean .ff-shop-premium-chips button.is-active{
  color:#fff;
  background:linear-gradient(180deg, rgba(61,134,255,.92), rgba(20,76,191,.72));
  border-color:rgba(103,188,255,.62);
  box-shadow:0 0 0 1px rgba(79,195,247,.20), 0 0 22px rgba(51,124,255,.34);
}
.ff-page.ff-menu-clean .ff-shop-sort-control select{
  width:100%;
  min-height:42px;
  padding:0 40px 0 14px;
  border-radius:14px;
  color:#e5edff;
  background:#0a1230;
  border:1px solid rgba(255,255,255,.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.ff-page.ff-menu-clean .ff-shop-featured-banner{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:minmax(260px,.44fr) minmax(0,.56fr);
  min-height:292px;
  padding:0;
  gap:0;
  border-radius:22px;
  background:
    radial-gradient(circle at 8% 68%, rgba(255,115,30,.22), transparent 22%),
    radial-gradient(circle at 88% 56%, rgba(43,188,255,.34), transparent 28%),
    linear-gradient(100deg, rgba(26,13,66,.96), rgba(7,13,37,.98) 48%, rgba(4,13,36,.98)),
    url('../img/ff-menu-cinematic-crystal-canyon.webp') center/cover no-repeat;
  border:1px solid rgba(94,182,255,.30);
  box-shadow:0 0 0 1px rgba(168,85,247,.18), 0 22px 56px rgba(2,6,24,.36);
}
.ff-page.ff-menu-clean .ff-shop-featured-banner::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(8,12,34,.08), rgba(4,8,25,.34) 48%, rgba(4,9,28,.56));
  pointer-events:none;
}
.ff-page.ff-menu-clean .ff-shop-featured-banner::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:22px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05), inset 0 0 42px rgba(79,195,247,.10);
  pointer-events:none;
}
.ff-page.ff-menu-clean .ff-shop-featured-banner .ff-shop-preview-ribbon{
  position:absolute;
  left:24px;
  top:22px;
  z-index:3;
  display:inline-flex;
  width:auto;
  padding:9px 14px;
  border-radius:10px;
  color:#fff;
  background:linear-gradient(180deg, rgba(173,77,255,.98), rgba(105,35,192,.92));
  border:1px solid rgba(237,202,255,.22);
  box-shadow:0 0 28px rgba(168,85,247,.38);
  font-size:.74rem;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.ff-page.ff-menu-clean .ff-shop-featured-banner .ff-shop-preview-visual{
  position:relative;
  z-index:2;
  min-height:292px;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  padding:52px 16px 18px;
  border:0;
  background:transparent;
  box-shadow:none;
}
.ff-page.ff-menu-clean .ff-shop-featured-glow{
  position:absolute;
  left:50%;
  bottom:22px;
  width:260px;
  height:80px;
  transform:translateX(-50%);
  border-radius:50%;
  background:radial-gradient(ellipse, rgba(79,195,247,.26), transparent 70%);
  filter:blur(3px);
}
.ff-page.ff-menu-clean .ff-shop-featured-banner .ff-shop-preview-visual img{
  position:relative;
  z-index:1;
  max-width:min(310px,88%);
  max-height:250px;
  object-fit:contain;
  filter:drop-shadow(0 20px 28px rgba(0,0,0,.45)) drop-shadow(0 0 20px rgba(79,195,247,.12));
}
.ff-page.ff-menu-clean .ff-shop-featured-banner .ff-shop-preview-copy{
  position:relative;
  z-index:2;
  display:grid;
  align-content:center;
  gap:12px;
  padding:34px 42px 34px 18px;
}
.ff-page.ff-menu-clean .ff-shop-featured-banner .ff-shop-preview-copy strong{
  max-width:13ch;
  font-size:clamp(2rem,3.2vw,3.35rem);
  line-height:.94;
  text-transform:uppercase;
  letter-spacing:.025em;
  color:#fff;
}
.ff-page.ff-menu-clean .ff-shop-featured-banner .ff-shop-preview-copy small{color:#c4d4ff;font-size:.96rem}
.ff-page.ff-menu-clean .ff-shop-featured-banner .ff-shop-preview-copy p{max-width:58ch;color:#b3c3e4;line-height:1.55}
.ff-page.ff-menu-clean .ff-shop-featured-banner .ff-shop-preview-badges{display:flex;gap:8px;flex-wrap:wrap}
.ff-page.ff-menu-clean .ff-shop-featured-banner .ff-shop-preview-actions{display:flex;align-items:center;gap:12px;margin-top:8px}
.ff-page.ff-menu-clean .ff-shop-featured-banner .ff-shop-preview-actions .ff-btn{
  min-width:260px;
  min-height:54px;
  border-radius:14px;
  color:#fff;
  background:linear-gradient(180deg, rgba(34,134,255,.96), rgba(17,76,191,.88));
  border:1px solid rgba(123,209,255,.55);
  box-shadow:0 0 0 1px rgba(79,195,247,.18), 0 15px 34px rgba(10,80,210,.24);
}
.ff-page.ff-menu-clean .ff-shop-preview-state-pill,
.ff-page.ff-menu-clean .ff-shop-preview-cost{
  display:inline-flex;
  align-items:center;
  width:max-content;
  min-height:32px;
  padding:0 12px;
  border-radius:999px;
  color:#cfe2ff;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.10);
  font-size:.72rem;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.ff-page.ff-menu-clean .ff-shop-preview-cost{display:none}
.ff-page.ff-menu-clean .ff-shop-premium-collection-head{margin-top:2px;padding:0}
.ff-page.ff-menu-clean .ff-shop-premium-collection-head strong{font-size:1.35rem;text-transform:uppercase;letter-spacing:.035em}
.ff-page.ff-menu-clean .ff-shop-premium-collection-head small{margin-top:4px;color:#9aaeda}
.ff-page.ff-menu-clean .ff-shop-premium-collection-head em{color:#a9b9dd;font-style:normal}
.ff-page.ff-menu-clean .ff-shop-premium-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(176px,1fr));
  gap:18px;
  align-items:stretch;
}
.ff-page.ff-menu-clean .ff-shop-premium-card{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:1fr;
  grid-template-rows:minmax(190px,1fr) auto auto;
  gap:12px;
  min-height:326px;
  padding:14px;
  border-radius:18px;
  background:
    radial-gradient(circle at 55% 8%, rgba(168,85,247,.14), transparent 33%),
    linear-gradient(180deg, rgba(19,28,60,.96), rgba(6,11,30,.98));
  border:1px solid rgba(126,193,255,.16);
  box-shadow:0 16px 32px rgba(2,7,24,.23), inset 0 1px 0 rgba(255,255,255,.04);
}
.ff-page.ff-menu-clean .ff-shop-premium-card[data-rarity="legendary"],
.ff-page.ff-menu-clean .ff-shop-premium-card[data-rarity="mythic"]{border-color:rgba(245,197,24,.34);background:radial-gradient(circle at 55% 8%, rgba(245,197,24,.18), transparent 34%),linear-gradient(180deg, rgba(28,28,48,.98), rgba(6,11,30,.98))}
.ff-page.ff-menu-clean .ff-shop-premium-card[data-rarity="epic"]{border-color:rgba(168,85,247,.28)}
.ff-page.ff-menu-clean .ff-shop-premium-card[data-rarity="rare"]{border-color:rgba(43,156,255,.28)}
.ff-page.ff-menu-clean .ff-shop-premium-card:hover,
.ff-page.ff-menu-clean .ff-shop-premium-card:focus-visible{transform:translateY(-3px);border-color:rgba(79,195,247,.42);box-shadow:0 22px 40px rgba(2,7,24,.31), 0 0 26px rgba(79,195,247,.10)}
.ff-page.ff-menu-clean .ff-shop-premium-card.is-preview-selected{border-color:rgba(168,85,247,.68);box-shadow:0 0 0 1px rgba(168,85,247,.25), 0 22px 42px rgba(2,7,24,.32)}
.ff-page.ff-menu-clean .ff-shop-premium-card .ff-shop-card-visual{
  position:relative;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  min-height:190px;
  padding:40px 4px 8px;
}
.ff-page.ff-menu-clean .ff-shop-premium-card .ff-shop-card-badges{position:absolute;inset:0 0 auto 0;z-index:3;display:flex;justify-content:space-between;gap:6px;margin:0}
.ff-page.ff-menu-clean .ff-shop-premium-card .ff-skin-badge,
.ff-page.ff-menu-clean .ff-shop-premium-card .ff-skin-game,
.ff-page.ff-menu-clean .ff-shop-featured-banner .ff-skin-badge,
.ff-page.ff-menu-clean .ff-shop-featured-banner .ff-skin-game{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:0 9px;
  border-radius:8px;
  font-size:.61rem;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.ff-page.ff-menu-clean .ff-shop-premium-card .ff-skin-game,
.ff-page.ff-menu-clean .ff-shop-featured-banner .ff-skin-game{color:#e8efff;background:rgba(5,9,22,.70);border:1px solid rgba(255,255,255,.12)}
.ff-page.ff-menu-clean .ff-shop-card-orbit{position:absolute;inset:auto 8px 12px;aspect-ratio:1;border-radius:50%;border:1px solid rgba(245,197,24,.18);transform:rotate(-15deg);opacity:.65}
.ff-page.ff-menu-clean .ff-shop-card-lock{
  position:absolute;
  right:2px;
  top:30px;
  z-index:4;
  width:28px;
  height:28px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:9px;
  color:#e7f0ff;
  background:rgba(5,9,20,.72);
  border:1px solid rgba(255,255,255,.12);
  font-size:1.05rem;
  font-weight:950;
}
.ff-page.ff-menu-clean .ff-shop-premium-card img{
  position:relative;
  z-index:2;
  width:min(92%,176px);
  height:174px;
  margin:0 auto;
  object-fit:contain;
  border:0;
  background:transparent;
  box-shadow:none;
  filter:drop-shadow(0 16px 20px rgba(0,0,0,.42));
}
.ff-page.ff-menu-clean .ff-shop-premium-card[data-shop-state="maplocked"] img,
.ff-page.ff-menu-clean .ff-shop-premium-card[data-shop-state="missing"] img{opacity:.78;filter:saturate(.78) brightness(.82) drop-shadow(0 16px 20px rgba(0,0,0,.38))}
.ff-page.ff-menu-clean .ff-shop-premium-card[data-shop-state="maplocked"]::before,
.ff-page.ff-menu-clean .ff-shop-premium-card[data-shop-state="missing"]::before{content:""}
.ff-page.ff-menu-clean .ff-shop-premium-card[data-shop-state="owned"]::before,
.ff-page.ff-menu-clean .ff-shop-premium-card[data-shop-state="selected"]::before{display:none}
.ff-page.ff-menu-clean .ff-shop-premium-card .ff-shop-card-copy{display:block;min-height:35px}
.ff-page.ff-menu-clean .ff-shop-premium-card .ff-shop-card-copy strong{display:block;color:#fff;font-size:.91rem;line-height:1.08;text-transform:uppercase;letter-spacing:.02em}
.ff-page.ff-menu-clean .ff-shop-premium-card > button{
  min-height:42px;
  margin:0;
  border-radius:12px;
  color:#07142b;
  font-size:.74rem;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.035em;
  background:linear-gradient(180deg, #77ff9d, #45d977);
  border:1px solid rgba(174,255,193,.62);
  box-shadow:0 12px 24px rgba(39,214,105,.16), inset 0 1px 0 rgba(255,255,255,.38);
}
.ff-page.ff-menu-clean .ff-shop-premium-card[data-rarity="legendary"] > button,
.ff-page.ff-menu-clean .ff-shop-premium-card[data-rarity="mythic"] > button{background:linear-gradient(180deg, #ffe064, #e5ad1d);border-color:rgba(255,226,99,.70);box-shadow:0 12px 24px rgba(245,197,24,.15), inset 0 1px 0 rgba(255,255,255,.36)}
.ff-page.ff-menu-clean .ff-shop-premium-card > button[data-state="owned"],
.ff-page.ff-menu-clean .ff-shop-premium-card > button[data-state="selected"]{color:#062817;background:linear-gradient(180deg, #8cffad, #55df83);border-color:rgba(156,255,185,.64)}
.ff-page.ff-menu-clean .ff-shop-premium-card > button[data-state="selected"]::after,
.ff-page.ff-menu-clean .ff-shop-premium-card > button[data-state="owned"]::after{content:"  ✓"}
.ff-page.ff-menu-clean .ff-shop-premium-card > button[data-state="maplocked"],
.ff-page.ff-menu-clean .ff-shop-premium-card > button[data-state="missing"]{color:#dbe7ff;background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.12);box-shadow:none}
.ff-page.ff-menu-clean .ff-shop-coming-card{
  min-height:326px;
  padding:22px;
  border-radius:18px;
  display:grid;
  align-content:center;
  justify-items:center;
  gap:18px;
  text-align:center;
  background:radial-gradient(circle at 50% 18%, rgba(168,85,247,.38), transparent 36%),linear-gradient(180deg, rgba(25,19,72,.98), rgba(8,11,34,.98));
  border:1px solid rgba(204,96,255,.45);
  box-shadow:0 0 0 1px rgba(168,85,247,.18), 0 18px 38px rgba(2,7,24,.28);
}
.ff-page.ff-menu-clean .ff-shop-coming-crystal{width:86px;height:86px;display:flex;align-items:center;justify-content:center;border-radius:26px;color:#8af6ff;background:linear-gradient(145deg, rgba(79,195,247,.25), rgba(168,85,247,.18));border:1px solid rgba(157,230,255,.28);box-shadow:0 0 38px rgba(168,85,247,.25)}
.ff-page.ff-menu-clean .ff-shop-coming-crystal .ff-ui-ico{width:44px;height:44px}
.ff-page.ff-menu-clean .ff-shop-coming-card strong{color:#fff;font-size:1.45rem;line-height:1.06;text-transform:uppercase;letter-spacing:.04em}
.ff-page.ff-menu-clean .ff-shop-coming-card button{min-height:42px;padding:0 18px;border-radius:12px;color:#fff;background:linear-gradient(180deg, rgba(176,74,255,.94), rgba(97,35,197,.92));border:1px solid rgba(238,198,255,.24);font-weight:950;text-transform:uppercase;letter-spacing:.04em}
.ff-page.ff-menu-clean .ff-shop-coming-banner{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:18px;
  min-height:112px;
  padding:18px 24px;
  border-radius:18px;
  background:radial-gradient(circle at 0% 50%, rgba(79,195,247,.22), transparent 24%),linear-gradient(110deg, rgba(13,30,66,.94), rgba(6,10,30,.96));
  border:1px solid rgba(126,193,255,.18);
}
.ff-page.ff-menu-clean .ff-shop-coming-banner .ff-shop-clean-coming-orb{width:68px;height:68px;color:#80eaff;background:linear-gradient(145deg, rgba(79,195,247,.20), rgba(168,85,247,.12));border:1px solid rgba(126,193,255,.22)}
.ff-page.ff-menu-clean .ff-shop-coming-banner .ff-shop-clean-coming-copy strong{font-size:1.35rem;text-transform:uppercase;letter-spacing:.03em}
.ff-page.ff-menu-clean .ff-shop-coming-banner .ff-shop-clean-coming-copy p{max-width:78ch;color:#a8b9de}
.ff-page.ff-menu-clean .ff-shop-coming-banner .ff-shop-clean-coming-tags span{min-height:40px;display:inline-flex;align-items:center;padding:0 16px;border-radius:12px;color:#fff;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12)}
@media (min-width:1500px){
  .ff-page.ff-menu-clean .ff-menu-section[data-ff-menu-section="shop"].is-active{--ff-subpage-max:1580px}
  .ff-page.ff-menu-clean .ff-shop-premium-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
}
@media (max-width:1180px){
  .ff-page.ff-menu-clean .ff-shop-premium-header{grid-template-columns:1fr}
  .ff-page.ff-menu-clean .ff-shop-premium-filters{grid-template-columns:1fr 1fr}
  .ff-page.ff-menu-clean .ff-shop-sort-control{grid-column:1 / -1}
  .ff-page.ff-menu-clean .ff-shop-featured-banner{grid-template-columns:minmax(210px,.44fr) minmax(0,.56fr)}
}
@media (max-width:820px){
  .ff-page.ff-menu-clean .ff-shop-premium-header{padding:18px}
  .ff-page.ff-menu-clean .ff-shop-premium-title{align-items:flex-start}
  .ff-page.ff-menu-clean .ff-shop-premium-emblem{width:58px;height:58px;border-radius:18px}
  .ff-page.ff-menu-clean .ff-shop-premium-metrics,
  .ff-page.ff-menu-clean .ff-shop-premium-filters{grid-template-columns:1fr}
  .ff-page.ff-menu-clean .ff-shop-featured-banner{grid-template-columns:1fr;min-height:0}
  .ff-page.ff-menu-clean .ff-shop-featured-banner .ff-shop-preview-visual{min-height:220px;padding-top:58px}
  .ff-page.ff-menu-clean .ff-shop-featured-banner .ff-shop-preview-copy{padding:0 20px 22px}
  .ff-page.ff-menu-clean .ff-shop-featured-banner .ff-shop-preview-copy strong{max-width:none}
  .ff-page.ff-menu-clean .ff-shop-featured-banner .ff-shop-preview-actions{align-items:stretch;flex-direction:column}
  .ff-page.ff-menu-clean .ff-shop-featured-banner .ff-shop-preview-actions .ff-btn{min-width:0;width:100%}
  .ff-page.ff-menu-clean .ff-shop-coming-banner{grid-template-columns:1fr;justify-items:start}
}
@media (max-width:560px){
  .ff-page.ff-menu-clean .ff-shop-stage-card{padding:12px}
  .ff-page.ff-menu-clean .ff-shop-premium-title h3{font-size:2rem}
  .ff-page.ff-menu-clean .ff-shop-premium-title p{font-size:.84rem}
  .ff-page.ff-menu-clean .ff-shop-premium-grid{grid-template-columns:1fr}
  .ff-page.ff-menu-clean .ff-shop-premium-card{min-height:310px}
}


/* v3.13.92 — shop visual fix: real featured artwork, buyable cards, balanced teaser row */
.ff-page.ff-menu-clean .ff-shop-featured-banner .ff-shop-preview-visual img{
  display:block;
  width:auto;
  height:auto;
  min-width:210px;
}
.ff-page.ff-menu-clean .ff-shop-premium-card .ff-shop-card-lock{
  display:none;
}
.ff-page.ff-menu-clean .ff-shop-premium-card[data-shop-state="maplocked"] .ff-shop-card-lock,
.ff-page.ff-menu-clean .ff-shop-locked-teaser-card .ff-shop-card-lock{
  display:flex;
}
.ff-page.ff-menu-clean .ff-shop-premium-card[data-shop-state="buy"] img,
.ff-page.ff-menu-clean .ff-shop-premium-card[data-shop-state="owned"] img,
.ff-page.ff-menu-clean .ff-shop-premium-card[data-shop-state="selected"] img{
  opacity:1;
  filter:drop-shadow(0 16px 20px rgba(0,0,0,.42));
}
.ff-page.ff-menu-clean .ff-shop-locked-teaser-card{
  cursor:default;
  border-color:rgba(126,193,255,.16);
  background:radial-gradient(circle at 55% 8%, rgba(79,195,247,.10), transparent 34%),linear-gradient(180deg, rgba(17,26,55,.96), rgba(6,11,30,.98));
}
.ff-page.ff-menu-clean .ff-shop-locked-teaser-card:hover,
.ff-page.ff-menu-clean .ff-shop-locked-teaser-card:focus-visible{
  transform:none;
  border-color:rgba(126,193,255,.20);
  box-shadow:0 16px 32px rgba(2,7,24,.23), inset 0 1px 0 rgba(255,255,255,.04);
}
.ff-page.ff-menu-clean .ff-shop-locked-teaser-card img{
  opacity:.70;
  filter:saturate(.62) brightness(.78) drop-shadow(0 16px 20px rgba(0,0,0,.38));
}
.ff-page.ff-menu-clean .ff-shop-locked-teaser-card > button,
.ff-page.ff-menu-clean .ff-shop-locked-teaser-card > button:disabled{
  color:#dbe7ff;
  background:rgba(255,255,255,.055);
  border-color:rgba(255,255,255,.12);
  box-shadow:none;
  cursor:not-allowed;
}
.ff-page.ff-menu-clean .ff-shop-clean-coming-card.ff-shop-coming-card{
  grid-column:auto;
  min-height:326px;
  display:grid;
  grid-template-columns:1fr;
  align-content:center;
  justify-items:center;
  gap:18px;
  padding:22px;
  text-align:center;
  border-radius:18px;
  background:radial-gradient(circle at 50% 18%, rgba(168,85,247,.38), transparent 36%),linear-gradient(180deg, rgba(25,19,72,.98), rgba(8,11,34,.98));
  border:1px solid rgba(204,96,255,.45);
  box-shadow:0 0 0 1px rgba(168,85,247,.18), 0 18px 38px rgba(2,7,24,.28);
}
.ff-page.ff-menu-clean .ff-shop-clean-coming-card.ff-shop-coming-banner{
  grid-column:1 / -1;
}
.ff-page.ff-menu-clean .ff-shop-featured-banner .ff-shop-preview-actions .ff-btn[data-state="buy"]::before,
.ff-page.ff-menu-clean .ff-shop-premium-card > button[data-state="buy"]::before{
  content:"◆ ";
}
.ff-page.ff-menu-clean .ff-shop-preview-state-pill:empty{
  display:none;
}


/* v3.14.03 — hard fix: featured banner and buyable shop cards must never inherit map-lock visuals */
.ff-page.ff-menu-clean .ff-shop-featured-banner .ff-shop-preview-visual .ff-shop-card-lock,
.ff-page.ff-menu-clean .ff-shop-featured-banner .ff-shop-card-lock{
  display:none;
}
.ff-page.ff-menu-clean .ff-shop-featured-banner .ff-shop-preview-visual img{
  display:block;
  visibility:visible;
  opacity:1;
  min-width:220px;
  max-width:min(340px,92%);
  max-height:276px;
  filter:drop-shadow(0 20px 28px rgba(0,0,0,.45)) drop-shadow(0 0 20px rgba(79,195,247,.16));
}
.ff-page.ff-menu-clean .ff-shop-premium-card:not(.ff-shop-locked-teaser-card) .ff-shop-card-lock,
.ff-page.ff-menu-clean .ff-shop-store-card:not(.ff-shop-locked-teaser-card) .ff-shop-card-lock{
  display:none;
}
.ff-page.ff-menu-clean .ff-shop-premium-card:not(.ff-shop-locked-teaser-card)[data-shop-state="maplocked"]::before,
.ff-page.ff-menu-clean .ff-shop-store-card:not(.ff-shop-locked-teaser-card)[data-shop-state="maplocked"]::before,
.ff-page.ff-menu-clean .ff-shop-premium-card:not(.ff-shop-locked-teaser-card).is-map-locked::after,
.ff-page.ff-menu-clean .ff-shop-store-card:not(.ff-shop-locked-teaser-card).is-map-locked::after{
  content:none;
  display:none;
}
.ff-page.ff-menu-clean .ff-shop-premium-card:not(.ff-shop-locked-teaser-card)[data-shop-state="buy"] img,
.ff-page.ff-menu-clean .ff-shop-premium-card:not(.ff-shop-locked-teaser-card)[data-shop-state="owned"] img,
.ff-page.ff-menu-clean .ff-shop-premium-card:not(.ff-shop-locked-teaser-card)[data-shop-state="selected"] img,
.ff-page.ff-menu-clean .ff-shop-store-card:not(.ff-shop-locked-teaser-card)[data-shop-state="buy"] img,
.ff-page.ff-menu-clean .ff-shop-store-card:not(.ff-shop-locked-teaser-card)[data-shop-state="owned"] img,
.ff-page.ff-menu-clean .ff-shop-store-card:not(.ff-shop-locked-teaser-card)[data-shop-state="selected"] img{
  opacity:1;
  filter:drop-shadow(0 16px 20px rgba(0,0,0,.42));
}
.ff-page.ff-menu-clean .ff-shop-locked-teaser-card .ff-shop-card-lock{
  display:flex;
  font-size:0;
}
.ff-page.ff-menu-clean .ff-shop-locked-teaser-card .ff-shop-card-lock::before{
  content:"";
  width:12px;
  height:9px;
  border-radius:2px;
  background:#ffd56a;
  box-shadow:0 0 10px rgba(245,197,24,.28);
}
.ff-page.ff-menu-clean .ff-shop-locked-teaser-card .ff-shop-card-lock::after{
  content:"";
  position:absolute;
  top:5px;
  left:8px;
  width:10px;
  height:10px;
  border:2px solid #dfe8ff;
  border-bottom:0;
  border-radius:8px 8px 0 0;
}

/* v3.14.03 — daily shop rotation */
.ff-page.ff-menu-clean .ff-shop-rotation-card strong{letter-spacing:.06em}
.ff-page.ff-menu-clean .ff-shop-rotation-badge{
  position:absolute;
  left:12px;
  bottom:12px;
  z-index:3;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:24px;
  padding:5px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(9,16,37,.74);
  color:#ecf4ff;
  font-size:.63rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  backdrop-filter:blur(8px);
  box-shadow:0 10px 20px rgba(0,0,0,.18);
}
.ff-page.ff-menu-clean .ff-shop-premium-card.is-rotation-active .ff-shop-rotation-badge{
  background:linear-gradient(180deg, rgba(67,197,255,.96), rgba(56,119,255,.88));
  border-color:rgba(121,214,255,.72);
  color:#041628;
}
.ff-page.ff-menu-clean .ff-shop-premium-card.is-rotation-waiting .ff-shop-rotation-badge{
  background:rgba(14,22,47,.82);
  border-color:rgba(255,255,255,.14);
  color:#cdd8ef;
}
.ff-page.ff-menu-clean .ff-shop-premium-card[data-shop-state="rotationlocked"] img{
  opacity:.66;
  filter:saturate(.62) brightness(.8) drop-shadow(0 14px 20px rgba(0,0,0,.34));
}
.ff-page.ff-menu-clean .ff-shop-premium-card.is-rotation-waiting:not(.is-owned):not(.is-selected-skin){
  border-color:rgba(255,255,255,.10);
  background:radial-gradient(circle at 58% 8%, rgba(120,132,170,.08), transparent 36%), linear-gradient(180deg, rgba(18,25,50,.96), rgba(8,13,33,.98));
}
.ff-page.ff-menu-clean .ff-shop-premium-card > button[data-state="rotationlocked"]{
  color:#dce7ff;
  background:rgba(255,255,255,.055);
  border-color:rgba(255,255,255,.12);
  box-shadow:none;
}
.ff-page.ff-menu-clean .ff-shop-featured-banner .ff-shop-preview-state-pill{min-width:110px;text-align:center}

/* v3.14.03 — featured shop banner polish */
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner{
  grid-template-columns:minmax(360px,.40fr) minmax(0,.60fr);
  min-height:272px;
  background:
    radial-gradient(circle at 18% 72%, rgba(168,85,247,.22), transparent 30%),
    radial-gradient(circle at 72% 52%, rgba(43,188,255,.26), transparent 28%),
    linear-gradient(100deg, rgba(24,14,55,.96), rgba(8,13,38,.98) 46%, rgba(5,18,43,.98));
}
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner::before{
  background:linear-gradient(90deg, rgba(6,10,28,.10), rgba(4,8,25,.24) 44%, rgba(4,9,28,.52));
}
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual{
  min-height:272px;
  padding:46px 22px 22px 38px;
  align-items:center;
  justify-content:center;
  background:transparent;
  border:0;
  box-shadow:none;
  overflow:visible;
}
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual::before{
  content:"";
  position:absolute;
  left:52%;
  top:50%;
  width:min(320px,80%);
  aspect-ratio:1;
  transform:translate(-50%,-45%);
  border-radius:50%;
  background:radial-gradient(circle, rgba(83,200,255,.16), transparent 64%);
  border:1px solid rgba(126,193,255,.10);
  opacity:.9;
}
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual img{
  position:relative;
  z-index:2;
  min-width:0;
  width:auto;
  max-width:min(370px,94%);
  max-height:246px;
  transform:translateX(8px) scale(1.04);
  filter:drop-shadow(0 22px 30px rgba(0,0,0,.50)) drop-shadow(0 0 22px rgba(79,195,247,.18));
}
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-glow{
  z-index:1;
  bottom:28px;
  width:310px;
  height:90px;
  background:radial-gradient(ellipse, rgba(87,205,255,.28), transparent 70%);
}
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-ribbon{
  left:26px;
  top:24px;
}
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-copy{
  padding:32px 46px 32px 22px;
}
@media (max-width:1180px){
  .ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner{grid-template-columns:minmax(300px,.42fr) minmax(0,.58fr)}
  .ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual img{max-width:min(320px,94%)}
}
@media (max-width:820px){
  .ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner{grid-template-columns:1fr}
  .ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual{min-height:230px;padding:58px 18px 12px}
  .ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual img{max-height:190px;transform:none}
  .ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-copy{padding:0 20px 22px}
}


/* v3.14.03 — shop metric cards polish */
.ff-page.ff-menu-clean .ff-shop-premium-metrics{align-items:stretch}
.ff-page.ff-menu-clean .ff-shop-premium-metric{
  min-height:86px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:15px 18px;
}
.ff-page.ff-menu-clean .ff-shop-premium-metric > span{
  display:block;
  color:#9badde;
  font-size:.69rem;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.14em;
}
.ff-page.ff-menu-clean .ff-shop-premium-metric > strong{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:8px;
  color:#fff;
  font-size:2.05rem;
  line-height:.95;
  letter-spacing:.035em;
}
.ff-page.ff-menu-clean .ff-shop-clean-wallet > strong{font-size:2.05rem}
.ff-page.ff-menu-clean .ff-shop-clean-wallet > strong .ff-ui-ico{
  width:22px;
  height:22px;
  flex:0 0 22px;
  color:#a7c9ff;
  opacity:.95;
}
.ff-page.ff-menu-clean .ff-shop-clean-wallet > strong [data-ff-balance]{
  display:inline-flex;
  align-items:center;
  color:#fff;
  font-size:2.05rem;
  line-height:.95;
  font-weight:950;
  letter-spacing:.035em;
}
.ff-page.ff-menu-clean .ff-shop-premium-metric > small{
  display:block;
  margin-top:6px;
  color:#8ea2c8;
  font-size:.76rem;
}
.ff-page.ff-menu-clean .ff-shop-rotation-card > strong{font-variant-numeric:tabular-nums}
@media(max-width:900px){
  .ff-page.ff-menu-clean .ff-shop-premium-metric{min-height:78px;padding:13px 15px}
  .ff-page.ff-menu-clean .ff-shop-premium-metric > strong,
  .ff-page.ff-menu-clean .ff-shop-clean-wallet > strong [data-ff-balance]{font-size:1.72rem}
}


/* v3.14.03 — shop card art fit polish */
.ff-page.ff-menu-clean .ff-shop-premium-card .ff-shop-card-visual{
  min-height:204px;
  padding-top:38px;
  padding-bottom:10px;
}
.ff-page.ff-menu-clean .ff-shop-premium-card img{
  width:min(96%,190px);
  height:188px;
  object-fit:contain;
}
.ff-page.ff-menu-clean .ff-shop-premium-card[data-ff-shop-card="portal-sentinel"] img{
  width:min(104%,206px);
  height:198px;
  transform:translateY(2px) scale(1.06);
}
.ff-page.ff-menu-clean .ff-shop-premium-card[data-ff-shop-card="portal-sentinel"] .ff-shop-card-orbit{
  opacity:.84;
}
@media(max-width:900px){
  .ff-page.ff-menu-clean .ff-shop-premium-card img{height:176px;width:min(94%,178px)}
  .ff-page.ff-menu-clean .ff-shop-premium-card[data-ff-shop-card="portal-sentinel"] img{height:186px;width:min(102%,194px)}
}


/* v3.14.03 — featured banner: remove empty left card look */
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner{
  grid-template-columns:minmax(360px,.38fr) minmax(0,.62fr);
  min-height:286px;
  background:
    radial-gradient(circle at 24% 70%, rgba(80,196,255,.20), transparent 27%),
    radial-gradient(circle at 8% 22%, rgba(166,82,255,.24), transparent 24%),
    radial-gradient(circle at 80% 52%, rgba(36,152,255,.26), transparent 30%),
    linear-gradient(100deg, rgba(17,12,47,.98), rgba(6,12,34,.98) 45%, rgba(4,18,43,.98));
}
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner::before{
  background:
    linear-gradient(90deg, rgba(8,10,30,.02), rgba(4,8,25,.12) 38%, rgba(4,9,28,.50)),
    radial-gradient(circle at 22% 78%, rgba(83,200,255,.16), transparent 24%);
}
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual{
  min-height:286px;
  padding:56px 24px 22px 28px;
  align-items:center;
  justify-content:center;
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
  overflow:visible;
}
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual::before{
  content:none;
}
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:28px;
  width:min(340px,78%);
  height:92px;
  transform:translateX(-50%);
  border-radius:999px;
  background:radial-gradient(ellipse, rgba(75,197,255,.26), rgba(130,72,255,.12) 48%, transparent 74%);
  filter:blur(1px);
  opacity:.95;
  pointer-events:none;
}
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-featured-glow{
  display:none;
}
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual img{
  position:relative;
  z-index:2;
  max-width:min(390px,96%);
  max-height:258px;
  transform:translateX(10px) scale(1.08);
  filter:drop-shadow(0 24px 34px rgba(0,0,0,.54)) drop-shadow(0 0 26px rgba(85,205,255,.22));
}
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-ribbon{
  left:26px;
  top:26px;
}
@media (max-width:1180px){
  .ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner{grid-template-columns:minmax(300px,.42fr) minmax(0,.58fr)}
  .ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual img{max-width:min(330px,96%)}
}
@media (max-width:820px){
  .ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner{grid-template-columns:1fr}
  .ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual{min-height:230px;padding:58px 18px 12px}
  .ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual img{max-height:194px;transform:none}
}


/* v3.14.03 — featured banner legacy layout cleanup
   The featured banner no longer uses the old ff-shop-clean-preview / ff-shop-featured-card panel classes.
   These final rules neutralize any remaining inherited visual-card background/pseudo elements. */
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner{
  display:grid;
  grid-template-columns:minmax(360px,.38fr) minmax(0,.62fr);
  gap:0;
  align-items:stretch;
  min-height:292px;
  padding:0;
  overflow:hidden;
  border-radius:22px;
  background:
    radial-gradient(circle at 22% 72%, rgba(83,200,255,.20), transparent 28%),
    radial-gradient(circle at 8% 24%, rgba(168,85,247,.24), transparent 26%),
    radial-gradient(circle at 82% 52%, rgba(43,188,255,.27), transparent 30%),
    linear-gradient(100deg, rgba(24,14,58,.97), rgba(7,13,38,.98) 46%, rgba(4,17,43,.98));
}
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:292px;
  height:100%;
  padding:54px 22px 24px 32px;
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
  overflow:visible;
}
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual::before,
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual::after{
  content:none;
  display:none;
}
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-featured-glow{
  display:block;
  position:absolute;
  left:50%;
  bottom:32px;
  width:min(330px,86%);
  height:96px;
  transform:translateX(-50%);
  border-radius:999px;
  background:radial-gradient(ellipse, rgba(78,202,255,.25), rgba(137,73,255,.12) 48%, transparent 72%);
  filter:blur(2px);
  opacity:.95;
  pointer-events:none;
}
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual img{
  position:relative;
  z-index:3;
  display:block;
  width:auto;
  min-width:0;
  max-width:min(390px,94%);
  max-height:260px;
  object-fit:contain;
  transform:translateX(8px) scale(1.08);
  opacity:1;
  visibility:visible;
  filter:drop-shadow(0 24px 34px rgba(0,0,0,.52)) drop-shadow(0 0 26px rgba(85,205,255,.20));
}
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-ribbon{
  position:absolute;
  left:28px;
  top:28px;
  z-index:5;
}
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-copy{
  position:relative;
  z-index:3;
  padding:34px 50px 34px 18px;
  align-self:center;
}
@media (max-width:1180px){
  .ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner{grid-template-columns:minmax(300px,.42fr) minmax(0,.58fr)}
  .ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual img{max-width:min(330px,94%)}
}
@media (max-width:820px){
  .ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner{grid-template-columns:1fr;min-height:0}
  .ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual{min-height:230px;padding:62px 18px 12px}
  .ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual img{max-height:194px;transform:none}
  .ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-copy{padding:0 20px 22px}
}


/* v3.14.03 — missing-crystals card fix
   Reverts the forced card layout from v3.14.03. The real bug was the empty ::before
   pseudo-element on data-shop-state="missing", which became a grid item only when the
   player lacked crystals and stretched card artwork vertically. */
.ff-page.ff-menu-clean .ff-shop-premium-card:not(.ff-shop-locked-teaser-card)[data-shop-state="missing"]::before,
.ff-page.ff-menu-clean .ff-shop-store-card:not(.ff-shop-locked-teaser-card)[data-shop-state="missing"]::before{
  content:none;
  display:none;
}
.ff-page.ff-menu-clean .ff-shop-premium-card:not(.ff-shop-locked-teaser-card)[data-shop-state="missing"] .ff-shop-card-visual,
.ff-page.ff-menu-clean .ff-shop-store-card:not(.ff-shop-locked-teaser-card)[data-shop-state="missing"] .ff-shop-card-visual{
  align-self:initial;
}

/* v3.14.04 — home hero title right-edge fix */
.ff-page.ff-menu-clean .ff-cine-hero{
  width:min(100%,600px);
}
.ff-page.ff-menu-clean .ff-cine-title{
  max-width:min(100%,580px);
  padding-right:clamp(18px,2.4vw,42px);
  overflow:visible;
}
.ff-page.ff-menu-clean .ff-cine-title em{
  display:inline-block;
  padding-right:.18em;
}
@media (max-width:1400px){
  .ff-page.ff-menu-clean .ff-cine-title{
    max-width:min(100%,540px);
    padding-right:clamp(14px,2vw,28px);
  }
  .ff-page.ff-menu-clean .ff-cine-title span,
  .ff-page.ff-menu-clean .ff-cine-title em{
    font-size:clamp(4.15rem,5.35vw,5.25rem);
  }
}

/* v3.14.05 — home lower dashboard polish */
.ff-page.ff-menu-clean .ff-menu-home-cinematic.is-active{
  grid-template-rows:var(--ff-home-hero-h) auto auto;
}
.ff-page.ff-menu-clean .ff-home-hub-preview{
  min-height:0;
  padding:18px 24px 14px;
  background:linear-gradient(180deg,rgba(9,14,35,.96),rgba(8,12,30,.98));
}
.ff-page.ff-menu-clean .ff-home-hub-grid{
  gap:12px;
  align-items:stretch;
}
.ff-page.ff-menu-clean .ff-home-hub-grid article{
  min-height:108px;
  padding:16px 18px;
  border-radius:14px;
  background:linear-gradient(180deg,rgba(22,31,62,.82),rgba(10,15,34,.92));
  border-color:rgba(119,157,255,.14);
}
.ff-page.ff-menu-clean .ff-home-hub-grid article::after{
  content:"";
  position:absolute;
  inset:auto -28px -34px auto;
  width:96px;
  height:96px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(79,195,247,.10),transparent 70%);
  pointer-events:none;
}
.ff-page.ff-menu-clean .ff-home-hub-grid .ff-home-last-run-card button{
  align-self:flex-start;
  margin-top:8px;
}
.ff-page.ff-menu-clean .ff-cine-bottom.ff-home-player-loop{
  min-height:0;
  padding:18px 24px 22px;
  gap:14px;
  align-items:stretch;
  background:linear-gradient(180deg,rgba(7,11,28,.96),rgba(7,10,25,.98));
  grid-template-columns:minmax(210px,.72fr) minmax(0,1.55fr) minmax(218px,.66fr);
}
.ff-page.ff-menu-clean .ff-cine-bottom.ff-home-player-loop > .ff-cine-tip,
.ff-page.ff-menu-clean .ff-cine-bottom.ff-home-player-loop > .ff-cine-stats,
.ff-page.ff-menu-clean .ff-cine-bottom.ff-home-player-loop > .ff-cine-social{
  min-height:118px;
  padding:16px 18px;
  border:1px solid rgba(119,157,255,.13);
  border-radius:16px;
  background:linear-gradient(180deg,rgba(18,26,55,.74),rgba(9,13,32,.9));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
.ff-page.ff-menu-clean .ff-cine-bottom.ff-home-player-loop > .ff-cine-tip,
.ff-page.ff-menu-clean .ff-cine-bottom.ff-home-player-loop > .ff-cine-stats{
  border-right:1px solid rgba(119,157,255,.13);
}
.ff-page.ff-menu-clean .ff-home-replay-tip{
  align-items:center;
}
.ff-page.ff-menu-clean .ff-home-replay-tip > .ff-ui-ico{
  width:46px;
  height:46px;
  opacity:.9;
}
.ff-page.ff-menu-clean .ff-home-loop-stats{
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.ff-page.ff-menu-clean .ff-home-loop-stats .ff-cine-card-head{
  margin:0 0 12px;
}
.ff-page.ff-menu-clean .ff-home-loop-stats .ff-cine-stats-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.ff-page.ff-menu-clean .ff-home-loop-stats .ff-cine-stats-grid > div{
  padding:0 10px 0 0;
}
.ff-page.ff-menu-clean .ff-home-loop-stats .ff-cine-stats-grid strong{
  margin-top:5px;
  font-size:clamp(1.35rem,1.25vw,1.7rem);
}
.ff-page.ff-menu-clean .ff-home-streak-reward{
  min-height:28px;
  margin-top:12px;
  padding:5px 12px;
  border-radius:10px;
  background:linear-gradient(90deg,rgba(245,197,24,.14),rgba(255,255,255,.035));
  border:1px solid rgba(245,197,24,.22);
}
.ff-page.ff-menu-clean .ff-cine-social{
  gap:10px;
  align-items:flex-start;
}
.ff-page.ff-menu-clean .ff-cine-social > span{
  margin-bottom:0;
}
.ff-page.ff-menu-clean .ff-cine-social > div{
  grid-template-columns:repeat(5,36px);
}
.ff-page.ff-menu-clean .ff-home-briefing{
  background:linear-gradient(180deg,rgba(8,12,31,.98),rgba(7,10,25,.98));
}
.ff-page.ff-menu-clean .ff-home-brief-card{
  border-color:rgba(119,157,255,.12);
  background:linear-gradient(180deg,rgba(20,30,60,.78),rgba(9,15,34,.9));
}
@media (max-width:1280px){
  .ff-page.ff-menu-clean .ff-home-hub-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .ff-page.ff-menu-clean .ff-cine-bottom.ff-home-player-loop{
    grid-template-columns:1fr;
  }
  .ff-page.ff-menu-clean .ff-cine-bottom.ff-home-player-loop > .ff-cine-tip,
  .ff-page.ff-menu-clean .ff-cine-bottom.ff-home-player-loop > .ff-cine-stats,
  .ff-page.ff-menu-clean .ff-cine-bottom.ff-home-player-loop > .ff-cine-social{
    min-height:0;
  }
}
@media (max-width:760px){
  .ff-page.ff-menu-clean .ff-home-hub-grid,
  .ff-page.ff-menu-clean .ff-home-loop-stats .ff-cine-stats-grid{
    grid-template-columns:1fr;
  }
}

/* v3.14.06 — start route modal visibility fix
   The route picker is moved to document.body by JS, so it must not depend only on .ff-page-scoped selectors. */
.ff-route-modal-v31181.ff-start-route-panel{
  position:fixed;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  z-index:100000;
  width:min(940px,calc(100vw - 36px));
  max-height:min(760px,calc(100dvh - 36px));
  overflow:auto;
  display:block;
  padding:18px;
  color:#dde8ff;
  font-family:"Exo 2",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:linear-gradient(180deg,rgba(8,14,36,.98),rgba(6,10,26,.98));
  border:1px solid rgba(79,195,247,.26);
  border-radius:16px;
  box-shadow:0 32px 90px rgba(0,0,0,.58), inset 0 1px 0 rgba(255,255,255,.05);
}
.ff-route-modal-v31181.ff-start-route-panel[hidden]{display:none}
.ff-route-modal-v31181 .ff-start-route-panel-head,
.ff-route-modal-v31181 .ff-start-route-panel-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.ff-route-modal-v31181 .ff-start-route-panel-head{
  padding-bottom:14px;
  border-bottom:1px solid rgba(255,255,255,.1);
}
.ff-route-modal-v31181 .ff-section-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin-bottom:6px;
  color:#f5c518;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.ff-route-modal-v31181 .ff-start-route-panel-head strong{
  display:block;
  color:#fff;
  font-family:"Rajdhani","Exo 2",system-ui,sans-serif;
  font-size:1.35rem;
  line-height:1.1;
  text-transform:uppercase;
}
.ff-route-modal-v31181 .ff-start-route-options{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:14px 0;
}
.ff-route-modal-v31181 .ff-start-route-card{
  display:grid;
  grid-template-columns:128px minmax(0,1fr) 24px;
  gap:14px;
  align-items:center;
  min-height:118px;
  padding:12px;
  color:#dde8ff;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.1);
  border-radius:14px;
  cursor:pointer;
}
.ff-route-modal-v31181 .ff-start-route-card:hover,
.ff-route-modal-v31181 .ff-start-route-card.is-active{
  border-color:rgba(79,195,247,.34);
  background:linear-gradient(180deg,rgba(79,195,247,.12),rgba(255,255,255,.045));
}
.ff-route-modal-v31181 .ff-start-route-card.is-locked{
  opacity:.62;
  cursor:not-allowed;
}
.ff-route-modal-v31181 .ff-start-route-thumb{
  width:128px;
  min-height:88px;
  border-radius:10px;
  overflow:hidden;
  background-size:cover;
  background-position:center;
}
.ff-route-modal-v31181 .ff-start-route-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.ff-route-modal-v31181 .ff-start-route-copy{display:flex;flex-direction:column;gap:5px;min-width:0}
.ff-route-modal-v31181 .ff-start-route-status{color:#f5c518;font-size:.62rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.ff-route-modal-v31181 .ff-start-route-copy strong{font-family:"Rajdhani","Exo 2",system-ui,sans-serif;font-size:1.05rem;text-transform:uppercase;color:#fff}
.ff-route-modal-v31181 .ff-start-route-copy small{color:#8ea2ce;line-height:1.35}
.ff-route-modal-v31181 .ff-btn,
.ff-route-modal-v31181 .ff-start-route-close{
  appearance:none;
  border:1px solid rgba(255,255,255,.12);
  border-radius:12px;
  min-height:42px;
  padding:0 16px;
  font-family:"Rajdhani","Exo 2",system-ui,sans-serif;
  font-weight:900;
  letter-spacing:.03em;
  text-transform:uppercase;
  color:#fff;
  background:rgba(255,255,255,.06);
  cursor:pointer;
}
.ff-route-modal-v31181 .ff-btn-primary{
  color:#061028;
  background:linear-gradient(180deg,#ffdf3c,#f5c518);
  border-color:rgba(255,228,77,.55);
}
.ff-route-modal-v31181 .ff-btn-ghost:hover,
.ff-route-modal-v31181 .ff-start-route-close:hover{background:rgba(255,255,255,.1)}
.ff-route-modal-open .ff-route-modal-v31181::before{
  content:"";
  position:fixed;
  inset:-100vmax;
  z-index:-1;
  background:rgba(2,6,18,.58);
  backdrop-filter:blur(6px);
}
@media (max-width:760px){
  .ff-route-modal-v31181.ff-start-route-panel{
    width:calc(100vw - 18px);
    max-height:calc(100dvh - 18px);
    padding:14px;
  }
  .ff-route-modal-v31181 .ff-start-route-options{grid-template-columns:1fr}
  .ff-route-modal-v31181 .ff-start-route-card{grid-template-columns:104px minmax(0,1fr) 20px}
  .ff-route-modal-v31181 .ff-start-route-thumb{width:104px;min-height:76px}
  .ff-route-modal-v31181 .ff-start-route-panel-actions{flex-direction:column;align-items:stretch}
}


/* v3.14.07 — map picker modal layout fix */
html.ff-route-modal-open,
body.ff-route-modal-open{
  overflow:hidden;
}
.ff-route-modal-v31181.ff-start-route-panel,
.ff-route-modal-v31181.ff-start-route-panel *{
  box-sizing:border-box;
}
.ff-route-modal-v31181.ff-start-route-panel{
  width:min(1080px,calc(100vw - 32px));
  max-height:min(820px,calc(100dvh - 32px));
  display:flex;
  flex-direction:column;
  overflow:hidden;
  padding:20px;
}
.ff-route-modal-v31181 .ff-start-route-panel-head{
  flex:0 0 auto;
}
.ff-route-modal-v31181 .ff-start-route-panel-head > div:first-child{
  min-width:0;
}
.ff-route-modal-v31181 .ff-start-route-panel-head strong{
  line-height:1;
}
.ff-route-modal-v31181 .ff-start-route-options{
  flex:1 1 auto;
  min-height:0;
  margin:16px -6px 0 0;
  padding-right:6px;
  overflow:auto;
  overflow-x:hidden;
  align-content:start;
}
.ff-route-modal-v31181 .ff-start-route-card{
  min-width:0;
  min-height:132px;
  grid-template-columns:minmax(138px,156px) minmax(0,1fr) 18px;
  gap:12px;
}
.ff-route-modal-v31181 .ff-start-route-thumb{
  width:100% !important;
  min-height:0 !important;
  aspect-ratio:16 / 10;
  border-radius:12px;
}
.ff-route-modal-v31181 .ff-start-route-thumb img{
  height:100%;
}
.ff-route-modal-v31181 .ff-start-route-copy{
  justify-content:center;
}
.ff-route-modal-v31181 .ff-start-route-status{
  display:block;
  line-height:1.35;
  white-space:normal;
  overflow-wrap:anywhere;
}
.ff-route-modal-v31181 .ff-start-route-copy strong{
  line-height:1;
  font-size:1.08rem;
}
.ff-route-modal-v31181 .ff-start-route-copy small{
  display:block;
  max-width:52ch;
  line-height:1.42;
  overflow-wrap:anywhere;
}
.ff-route-modal-v31181 .ff-start-route-panel-actions{
  flex:0 0 auto;
  margin-top:16px;
  padding-top:16px;
  border-top:1px solid rgba(255,255,255,.1);
  flex-wrap:wrap;
}
.ff-route-modal-v31181 .ff-start-route-panel-actions .ff-btn:first-child{
  min-width:min(100%,280px);
}
.ff-route-modal-v31181 .ff-start-route-close{
  flex:0 0 auto;
}
@media (max-width:980px){
  .ff-route-modal-v31181.ff-start-route-panel{
    width:calc(100vw - 20px);
    max-height:calc(100dvh - 20px);
    padding:16px;
  }
  .ff-route-modal-v31181 .ff-start-route-options{
    grid-template-columns:1fr;
    margin-top:14px;
  }
  .ff-route-modal-v31181 .ff-start-route-card{
    grid-template-columns:120px minmax(0,1fr) 18px;
    min-height:116px;
  }
}
@media (max-width:620px){
  .ff-route-modal-v31181 .ff-start-route-panel-head,
  .ff-route-modal-v31181 .ff-start-route-panel-actions{
    gap:12px;
  }
  .ff-route-modal-v31181 .ff-start-route-panel-head{
    align-items:flex-start;
  }
  .ff-route-modal-v31181 .ff-start-route-card{
    grid-template-columns:96px minmax(0,1fr) 16px;
    padding:10px;
  }
  .ff-route-modal-v31181 .ff-start-route-copy strong{
    font-size:1rem;
  }
  .ff-route-modal-v31181 .ff-start-route-copy small{
    font-size:.92rem;
  }
  .ff-route-modal-v31181 .ff-start-route-panel-actions .ff-btn{
    width:100%;
  }
}

/* v3.14.16 — Maps hero header balance */
.ff-page.ff-menu-clean .ff-maps-clean-hero{
  grid-template-columns:minmax(0,1fr) minmax(280px,410px);
  align-items:center;
  min-height:112px;
  padding:18px 22px;
  gap:18px;
}
.ff-page.ff-menu-clean .ff-maps-clean-copy{
  min-width:0;
}
.ff-page.ff-menu-clean .ff-maps-clean-copy .ff-section-eyebrow{
  margin-bottom:4px;
}
.ff-page.ff-menu-clean .ff-maps-clean-copy h3{
  margin:4px 0 0;
  line-height:.98;
}
.ff-page.ff-menu-clean .ff-maps-clean-copy p{
  margin-top:12px;
  max-width:64ch;
  color:#c2d0ea;
}
.ff-page.ff-menu-clean .ff-maps-clean-status{
  position:relative;
  align-self:center;
  justify-self:end;
  width:min(100%,390px);
  min-height:82px;
  padding:13px 16px 13px 18px;
  border-radius:18px;
  background:
    radial-gradient(circle at 90% 0%,rgba(168,85,247,.16),transparent 42%),
    linear-gradient(180deg,rgba(255,255,255,.052),rgba(255,255,255,.026));
  border-color:rgba(255,255,255,.11);
}
.ff-page.ff-menu-clean .ff-maps-clean-status::before{
  content:"";
  position:absolute;
  left:0;
  top:14px;
  bottom:14px;
  width:3px;
  border-radius:999px;
  background:linear-gradient(180deg,#ffd75d,#62d8ff);
}
.ff-page.ff-menu-clean .ff-maps-clean-status span{
  color:#b7c5e5;
  font-size:.66rem;
  letter-spacing:.11em;
}
.ff-page.ff-menu-clean .ff-maps-clean-status strong{
  margin-top:3px;
  font-size:clamp(1rem,.92vw,1.14rem);
  line-height:1.05;
}
.ff-page.ff-menu-clean .ff-maps-clean-status small{
  margin-top:7px;
  color:#c4d2ec;
  font-size:.76rem;
  line-height:1.42;
}
@media (max-width:980px){
  .ff-page.ff-menu-clean .ff-maps-clean-hero{
    grid-template-columns:1fr;
    min-height:0;
    padding:16px;
  }
  .ff-page.ff-menu-clean .ff-maps-clean-status{
    justify-self:stretch;
    width:100%;
  }
}


/* v3.14.17 — final Maps CTA in-flow override: never overlap content */
body > .ff-maps-clean-floating-cta-global{
  display:none;
}
.ff-page.ff-menu-clean .ff-maps-clean-floating-cta,
.ff-page.ff-menu-clean .ff-maps-clean-floating-cta.ff-maps-clean-floating-cta-global{
  position:relative;
  left:auto;
  right:auto;
  top:auto;
  bottom:auto;
  z-index:5;
  display:none;
  width:min(760px,100%);
  margin:18px 0 0 auto;
  transform:none;
}
.ff-page.ff-menu-clean .ff-maps-clean-floating-cta.is-visible,
.ff-page.ff-menu-clean .ff-maps-clean-floating-cta.ff-maps-clean-floating-cta-global.is-visible{
  display:flex;
}
.ff-page.ff-menu-clean .ff-pickups-clean{
  margin-top:22px;
}
.ff-page.ff-menu-clean .ff-maps-clean-actions{
  margin-bottom:0;
}
@media (max-width:980px){
  .ff-page.ff-menu-clean .ff-maps-clean-floating-cta,
  .ff-page.ff-menu-clean .ff-maps-clean-floating-cta.ff-maps-clean-floating-cta-global{
    width:100%;
    margin-top:16px;
  }
}

/* v3.14.18 — Maps hero selected-map card compact polish */
.ff-page.ff-menu-clean .ff-maps-clean-hero{
  grid-template-columns:minmax(0,1fr) minmax(240px,340px);
  min-height:104px;
  padding:16px 20px;
  gap:16px;
}
.ff-page.ff-menu-clean .ff-maps-clean-status{
  width:min(100%,330px);
  min-height:68px;
  padding:11px 14px 12px 18px;
  border-radius:15px;
  background:
    linear-gradient(90deg,rgba(80,210,255,.08),rgba(168,85,247,.10)),
    rgba(8,16,38,.66);
  border:1px solid rgba(126,193,255,.13);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05), 0 12px 26px rgba(0,0,0,.16);
}
.ff-page.ff-menu-clean .ff-maps-clean-status::before{
  left:0;
  top:10px;
  bottom:10px;
  width:3px;
  background:linear-gradient(180deg,#ffd75d 0%,#62d8ff 100%);
}
.ff-page.ff-menu-clean .ff-maps-clean-status span{
  color:#aebee0;
  font-size:.62rem;
  letter-spacing:.10em;
}
.ff-page.ff-menu-clean .ff-maps-clean-status strong{
  margin-top:2px;
  font-size:clamp(.92rem,.84vw,1.05rem);
  line-height:1.05;
}
.ff-page.ff-menu-clean .ff-maps-clean-status small{
  margin-top:5px;
  color:#c0cce3;
  font-size:.72rem;
  line-height:1.38;
}
@media (max-width:980px){
  .ff-page.ff-menu-clean .ff-maps-clean-hero{
    grid-template-columns:1fr;
    padding:16px;
  }
  .ff-page.ff-menu-clean .ff-maps-clean-status{
    width:100%;
  }
}

/* v3.14.19 — start button moved into the right map panel */
.ff-page.ff-menu-clean .ff-maps-clean-floating-cta{display:none !important;}
.ff-page.ff-menu-clean .ff-maps-clean-sidebar[data-ff-hover-mode="selected"] .ff-maps-clean-side-action{background:linear-gradient(180deg,#ffd54d,#f0bf22);border-color:rgba(255,215,92,.55);color:#07152f;}
.ff-page.ff-menu-clean .ff-maps-clean-sidebar[data-ff-hover-mode="selected"] .ff-maps-clean-side-action .ff-ui-ico{color:#07152f;}
.ff-page.ff-menu-clean .ff-maps-clean-sidebar .ff-maps-clean-side-action[disabled]{opacity:1;}

/* v3.14.20 — right panel action is a real start button for selected route */
.ff-page.ff-menu-clean .ff-maps-clean-sidebar[data-ff-hover-mode="selected"] .ff-maps-clean-side-action{cursor:pointer;pointer-events:auto;}
.ff-page.ff-menu-clean .ff-maps-clean-side-action.is-start-ready{cursor:pointer;}
.ff-page.ff-menu-clean .ff-maps-clean-side-action[disabled]:not(.is-start-ready){cursor:not-allowed;}

/* v3.14.22 — hard guard: only the active menu section is visible */
.ff-page.ff-menu-clean .ff-player-panel .ff-menu-section{display:none;}
.ff-page.ff-menu-clean .ff-player-panel .ff-menu-section.is-active{display:block;}
.ff-page.ff-menu-clean .ff-player-panel .ff-menu-section.ff-menu-home-cinematic.is-active{display:grid;}


/* v3.14.27 — featured shop skin bigger in hero banner */
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner{
  grid-template-columns:minmax(420px,.42fr) minmax(0,.58fr);
  min-height:320px;
}
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual{
  min-height:320px;
  padding:46px 20px 18px 28px;
}
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-featured-glow{
  width:min(380px,90%);
  height:116px;
  bottom:26px;
}
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual img{
  max-width:min(460px,98%);
  max-height:312px;
  transform:translateX(10px) scale(1.17);
}
@media (max-width:1180px){
  .ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner{grid-template-columns:minmax(340px,.44fr) minmax(0,.56fr);min-height:304px}
  .ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual{min-height:304px}
  .ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual img{max-width:min(390px,98%);max-height:286px;transform:translateX(8px) scale(1.14)}
}
@media (max-width:820px){
  .ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner{min-height:0}
  .ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual{min-height:250px;padding:58px 18px 14px}
  .ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-visual img{max-width:min(320px,96%);max-height:220px;transform:none}
}


/* v3.14.29 — shop crystals metric stronger emphasis */
.ff-page.ff-menu-clean .ff-shop-premium-metric.ff-shop-clean-wallet{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 82% 22%, rgba(119,201,255,.22), transparent 46%),
    radial-gradient(circle at 16% 84%, rgba(168,119,255,.14), transparent 40%),
    linear-gradient(180deg, rgba(158,196,255,.11), rgba(255,255,255,.035));
  border-color:rgba(128,185,255,.26);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    inset 0 -18px 34px rgba(62,108,255,.07),
    0 18px 34px rgba(6,18,58,.20);
}
.ff-page.ff-menu-clean .ff-shop-premium-metric.ff-shop-clean-wallet::after{
  content:"";
  position:absolute;
  inset:auto -18% -38% auto;
  width:180px;
  height:180px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(156,228,255,.18), rgba(156,228,255,0) 68%);
  pointer-events:none;
}
.ff-page.ff-menu-clean .ff-shop-premium-metric.ff-shop-clean-wallet strong{
  margin-top:7px;
  gap:12px;
  font-size:2.42rem;
  font-weight:1000;
  letter-spacing:.015em;
  color:#ffffff;
  text-shadow:0 0 18px rgba(122,212,255,.16), 0 4px 18px rgba(0,0,0,.28);
}
.ff-page.ff-menu-clean .ff-shop-premium-metric.ff-shop-clean-wallet strong .ff-ui-ico{
  width:1.16em;
  height:1.16em;
  color:#8de8ff;
  filter:drop-shadow(0 0 12px rgba(109,222,255,.36));
}
.ff-page.ff-menu-clean .ff-shop-premium-metric.ff-shop-clean-wallet strong [data-ff-balance]{
  display:inline-block;
  padding:2px 0;
  color:#ffffff;
}
.ff-page.ff-menu-clean .ff-shop-premium-metric.ff-shop-clean-wallet small{
  color:#aecdff;
  font-weight:800;
}
@media (max-width:860px){
  .ff-page.ff-menu-clean .ff-shop-premium-metric.ff-shop-clean-wallet strong{font-size:2.04rem;gap:10px}
}


/* v3.14.30 — shop rotation and purchase guide */
.ff-page.ff-menu-clean .ff-shop-guide{
  display:grid;
  grid-template-columns:minmax(255px,.92fr) minmax(0,2.08fr);
  align-items:stretch;
  gap:14px;
  padding:14px;
  margin:18px 0 20px;
  border-radius:20px;
  border:1px solid rgba(96,166,255,.18);
  background:
    radial-gradient(circle at 0% 36%,rgba(73,188,255,.12),transparent 29%),
    linear-gradient(180deg,rgba(8,18,43,.88),rgba(4,11,30,.94));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 18px 40px rgba(2,7,22,.16);
}
.ff-page.ff-menu-clean .ff-shop-guide-intro{
  display:flex;
  align-items:center;
  gap:13px;
  min-width:0;
  padding:12px 14px;
  border-radius:16px;
  background:linear-gradient(135deg,rgba(36,100,177,.22),rgba(8,26,65,.14));
  border:1px solid rgba(84,184,255,.15);
}
.ff-page.ff-menu-clean .ff-shop-guide-symbol{
  flex:0 0 45px;
  width:45px;
  height:45px;
  display:grid;
  place-items:center;
  border-radius:14px;
  color:#79ddff;
  background:rgba(52,148,255,.15);
  border:1px solid rgba(92,195,255,.24);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07);
}
.ff-page.ff-menu-clean .ff-shop-guide-symbol .ff-ui-ico{width:21px;height:21px}
.ff-page.ff-menu-clean .ff-shop-guide-intro strong{
  display:block;
  color:#f5f8ff;
  font-size:.92rem;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.045em;
}
.ff-page.ff-menu-clean .ff-shop-guide-intro p{
  margin:6px 0 0;
  color:#b8cbe9;
  font-size:.73rem;
  line-height:1.52;
}
.ff-page.ff-menu-clean .ff-shop-guide-intro p b{color:#8ae6ff}
.ff-page.ff-menu-clean .ff-shop-guide-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.ff-page.ff-menu-clean .ff-shop-guide-card{
  display:flex;
  gap:10px;
  min-width:0;
  padding:13px 12px;
  border-radius:15px;
  border:1px solid rgba(255,255,255,.075);
  background:rgba(255,255,255,.028);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
.ff-page.ff-menu-clean .ff-shop-guide-card > .ff-ui-ico{
  flex:0 0 18px;
  width:18px;
  height:18px;
  margin-top:2px;
}
.ff-page.ff-menu-clean .ff-shop-guide-card strong{
  display:block;
  margin-bottom:5px;
  color:#eef5ff;
  font-size:.73rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.ff-page.ff-menu-clean .ff-shop-guide-card p{
  margin:0;
  color:#a9bddf;
  font-size:.68rem;
  line-height:1.47;
}
.ff-page.ff-menu-clean .ff-shop-guide-card p b{color:#eef5ff}
.ff-page.ff-menu-clean .ff-shop-guide-card.is-rotation > .ff-ui-ico{color:#ffd559}
.ff-page.ff-menu-clean .ff-shop-guide-card.is-featured > .ff-ui-ico{color:#8ae8ff}
.ff-page.ff-menu-clean .ff-shop-guide-card.is-owned > .ff-ui-ico{color:#7ff0bc}
.ff-page.ff-menu-clean .ff-shop-guide-card.is-rotation{background:linear-gradient(180deg,rgba(255,207,74,.055),rgba(255,255,255,.022))}
.ff-page.ff-menu-clean .ff-shop-guide-card.is-featured{background:linear-gradient(180deg,rgba(70,193,255,.065),rgba(255,255,255,.022))}
.ff-page.ff-menu-clean .ff-shop-guide-card.is-owned{background:linear-gradient(180deg,rgba(85,223,131,.055),rgba(255,255,255,.022))}
@media (max-width:1200px){
  .ff-page.ff-menu-clean .ff-shop-guide{grid-template-columns:1fr}
}
@media (max-width:820px){
  .ff-page.ff-menu-clean .ff-shop-guide{padding:11px;margin:14px 0 16px;border-radius:17px}
  .ff-page.ff-menu-clean .ff-shop-guide-grid{grid-template-columns:1fr}
}


/* v3.14.52 — ranking: podium plus player-focused progress, without duplicated statistics */
.ff-page.ff-menu-clean .ff-ranking-player-focus{
  gap:18px;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-topline{
  display:grid;
  grid-template-columns:minmax(290px,1fr) minmax(420px,490px);
  gap:24px;
  align-items:center;
  padding:24px 26px;
  background:
    radial-gradient(circle at 86% 15%,rgba(255,210,38,.09),transparent 32%),
    linear-gradient(105deg,rgba(34,97,163,.22),rgba(9,17,40,.92));
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-heading h3{
  margin-top:9px;
  font-size:clamp(1.7rem,2vw,2.1rem);
}
.ff-page.ff-menu-clean .ff-ranking-player-goal{
  display:grid;
  gap:11px;
  padding:14px;
  border-radius:17px;
  border:1px solid rgba(88,221,255,.17);
  background:linear-gradient(180deg,rgba(9,22,48,.94),rgba(5,13,31,.88));
}
.ff-page.ff-menu-clean .ff-ranking-player-goal-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  color:#8fa6d2;
  font-size:.62rem;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-ranking-player-goal-head strong{
  padding:5px 9px;
  border-radius:999px;
  color:#70ddff;
  border:1px solid rgba(88,221,255,.22);
  background:rgba(88,221,255,.08);
}
.ff-page.ff-menu-clean .ff-ranking-player-metrics{
  display:grid;
  grid-template-columns:.74fr .9fr 1.35fr;
  gap:8px;
}
.ff-page.ff-menu-clean .ff-ranking-player-metrics div{
  min-height:55px;
  padding:8px 10px;
  border-radius:11px;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.07);
}
.ff-page.ff-menu-clean .ff-ranking-player-metrics span{
  display:block;
  color:#7f97c0;
  font-size:.54rem;
  font-weight:900;
  letter-spacing:.10em;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-ranking-player-metrics strong{
  display:block;
  overflow:hidden;
  margin-top:5px;
  color:#fff;
  font-family:var(--ff-font-head);
  font-size:1.05rem;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.ff-page.ff-menu-clean .ff-ranking-player-metrics div:nth-child(1) strong{color:#70ddff}
.ff-page.ff-menu-clean .ff-ranking-player-metrics div:nth-child(3) strong{color:#ffd650}
.ff-page.ff-menu-clean .ff-ranking-play-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:42px;
  border:0;
  border-radius:11px;
  color:#071327;
  background:linear-gradient(180deg,#ffdc4c,#f7b71c);
  box-shadow:0 8px 22px rgba(255,194,28,.16);
  font-family:var(--ff-font-head);
  font-size:.7rem;
  font-weight:900;
  letter-spacing:.05em;
  text-transform:uppercase;
  cursor:pointer;
}
.ff-page.ff-menu-clean .ff-ranking-play-btn:hover{
  transform:translateY(-1px);
  filter:brightness(1.05);
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-scope-row{
  gap:16px;
}
.ff-page.ff-menu-clean .ff-leaderboard-tools{
  display:flex;
  align-items:center;
  gap:12px;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-refresh{
  min-height:40px;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-layout{
  display:grid;
  grid-template-columns:1fr;
  grid-template-areas:"podium" "list";
  gap:16px;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-podium-panel,
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-list-panel{
  border-radius:17px;
  border:1px solid rgba(112,145,202,.16);
  background:rgba(8,15,37,.58);
  padding:19px;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-podium{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-podium-card{
  position:relative;
  display:grid;
  grid-template-columns:auto 1fr auto;
  grid-template-rows:auto auto;
  gap:7px 10px;
  min-height:84px;
  padding:14px 14px 12px;
  border-radius:14px;
  background:linear-gradient(180deg,rgba(20,29,53,.96),rgba(10,17,38,.94));
  border:1px solid rgba(121,151,203,.16);
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-podium-card.ff-podium-1{
  border-color:rgba(255,210,38,.38);
  background:
    radial-gradient(circle at 12% 8%,rgba(255,210,38,.13),transparent 38%),
    linear-gradient(180deg,rgba(31,29,24,.92),rgba(10,17,38,.96));
  box-shadow:0 0 24px rgba(255,210,38,.06);
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-podium-card.ff-podium-2{
  border-color:rgba(214,226,255,.18);
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-podium-card.ff-podium-3{
  border-color:rgba(200,125,255,.24);
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-podium-place{
  align-self:center;
  font-size:1.05rem;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-podium-card strong{
  align-self:center;
  overflow:hidden;
  color:#fff;
  font-size:1rem;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-podium-card b{
  align-self:center;
  color:#fff;
  font-family:var(--ff-font-head);
  font-size:1.2rem;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-podium-card em{
  grid-column:2 / 4;
  color:#91a9d1;
  font-size:.64rem;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-podium-card.is-me,
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leader-list li.is-me{
  border-color:rgba(88,221,255,.46) !important;
  background:
    radial-gradient(circle at 6% 20%,rgba(88,221,255,.15),transparent 30%),
    linear-gradient(180deg,rgba(10,37,66,.90),rgba(7,17,39,.95)) !important;
  box-shadow:inset 0 0 0 1px rgba(88,221,255,.06),0 0 20px rgba(88,221,255,.06);
}
.ff-page.ff-menu-clean .ff-rank-me{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:4px 7px;
  border-radius:999px;
  background:rgba(88,221,255,.13);
  border:1px solid rgba(88,221,255,.31);
  color:#70ddff;
  font-size:.52rem;
  font-weight:900;
  letter-spacing:.10em;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-podium-card .ff-rank-me{
  position:absolute;
  right:11px;
  bottom:9px;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leader-list{
  display:grid;
  gap:8px;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leader-list li{
  grid-template-columns:56px minmax(0,1fr) auto auto;
  min-height:50px;
  padding:0 15px;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-empty{
  grid-template-columns:minmax(0,1fr) auto !important;
  color:#91a9d1;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-empty span{
  color:#91a9d1;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-podium-empty{
  grid-column:1 / -1;
  padding:26px;
  border-radius:14px;
  color:#9aadd1;
  text-align:center;
  border:1px dashed rgba(112,145,202,.18);
}
@media (max-width:1040px){
  .ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-topline{
    grid-template-columns:1fr;
  }
}
@media (max-width:760px){
  .ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-scope-row,
  .ff-page.ff-menu-clean .ff-leaderboard-tools{
    align-items:stretch;
    flex-direction:column;
  }
  .ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-podium{
    grid-template-columns:1fr;
  }
  .ff-page.ff-menu-clean .ff-ranking-player-metrics{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .ff-page.ff-menu-clean .ff-ranking-player-metrics div:last-child{
    grid-column:1 / -1;
  }
}


/* v3.14.53 — compact ranking header and adaptive remaining-player panel */
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-topline{
  grid-template-columns:minmax(300px,1fr) minmax(430px,510px);
  gap:20px;
  padding:17px 22px;
  min-height:0;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-heading h3{
  margin-top:6px;
  margin-bottom:0;
  font-size:clamp(1.52rem,1.82vw,1.88rem);
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-heading p{
  margin-top:.38rem;
  font-size:.77rem;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-eyebrow{
  font-size:.63rem;
}
.ff-page.ff-menu-clean .ff-ranking-player-goal{
  grid-template-columns:auto minmax(285px,1fr) auto;
  grid-template-areas:
    "title metrics action";
  align-items:center;
  column-gap:13px;
  padding:11px 12px;
}
.ff-page.ff-menu-clean .ff-ranking-player-goal-head{
  grid-area:title;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  gap:6px;
  min-width:64px;
}
.ff-page.ff-menu-clean .ff-ranking-player-metrics{
  grid-area:metrics;
  gap:7px;
}
.ff-page.ff-menu-clean .ff-ranking-player-metrics div{
  min-height:46px;
  padding:7px 9px;
}
.ff-page.ff-menu-clean .ff-ranking-player-metrics strong{
  margin-top:4px;
  font-size:.98rem;
}
.ff-page.ff-menu-clean .ff-ranking-play-btn{
  grid-area:action;
  max-width:118px;
  min-height:50px;
  padding:0 12px;
  line-height:1.25;
  text-align:center;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-layout{
  gap:13px;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-podium-panel,
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-list-panel{
  padding:16px 18px;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-list-panel.is-short-list{
  padding-top:13px;
  padding-bottom:13px;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-list-panel.is-short-list .ff-leaderboard-list-head{
  margin-bottom:9px;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-list-panel.is-short-list .ff-leaderboard-list-head small{
  display:none;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-list-panel.is-short-list .ff-leader-list li{
  min-height:44px;
}
@media (max-width:1160px){
  .ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-topline{
    grid-template-columns:1fr;
  }
  .ff-page.ff-menu-clean .ff-ranking-player-goal{
    grid-template-columns:auto 1fr auto;
  }
}
@media (max-width:780px){
  .ff-page.ff-menu-clean .ff-ranking-player-goal{
    display:grid;
    grid-template-columns:1fr;
    grid-template-areas:"title" "metrics" "action";
  }
  .ff-page.ff-menu-clean .ff-ranking-player-goal-head{
    flex-direction:row;
    align-items:center;
    justify-content:space-between;
  }
  .ff-page.ff-menu-clean .ff-ranking-play-btn{
    max-width:none;
  }
}


/* v3.14.54 — wider player goal panel and single-line CTA */
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-topline{
  grid-template-columns:minmax(360px,.84fr) minmax(660px,1.16fr);
  gap:18px;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-ranking-player-goal{
  grid-template-columns:76px minmax(310px,1fr) 232px;
  column-gap:12px;
  padding:11px 13px;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-ranking-player-metrics{
  grid-template-columns:.74fr .92fr 1.18fr;
}
.ff-page.ff-menu-clean .ff-ranking-player-focus .ff-ranking-play-btn{
  max-width:none;
  min-width:232px;
  min-height:50px;
  padding:0 16px;
  white-space:nowrap;
  line-height:1;
  font-size:.67rem;
}
@media (max-width:1240px){
  .ff-page.ff-menu-clean .ff-ranking-player-focus .ff-leaderboard-topline{
    grid-template-columns:1fr;
  }
  .ff-page.ff-menu-clean .ff-ranking-player-focus .ff-ranking-player-goal{
    grid-template-columns:76px minmax(300px,1fr) 232px;
  }
}
@media (max-width:820px){
  .ff-page.ff-menu-clean .ff-ranking-player-focus .ff-ranking-player-goal{
    grid-template-columns:1fr;
    grid-template-areas:"title" "metrics" "action";
  }
  .ff-page.ff-menu-clean .ff-ranking-player-focus .ff-ranking-player-goal-head{
    flex-direction:row;
    align-items:center;
    justify-content:space-between;
  }
  .ff-page.ff-menu-clean .ff-ranking-player-focus .ff-ranking-play-btn{
    width:100%;
    min-width:0;
  }
}


/* v3.14.55 — settings usability, comfort toggles and one-click profiles */
.ff-page.ff-menu-clean .ff-settings-premium-panel{
  gap:14px;
}
.ff-page.ff-menu-clean .ff-settings-premium-hero{
  padding:18px 20px;
}
.ff-page.ff-menu-clean .ff-settings-hero-side{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.ff-page.ff-menu-clean .ff-settings-comfort-live strong{
  font-size:1.06rem;
  color:#72ddff;
}
.ff-page.ff-menu-clean .ff-settings-quick-strip{
  gap:10px;
}
.ff-page.ff-menu-clean .ff-settings-quick-strip > div{
  min-height:64px;
  padding:9px 12px;
  grid-template-columns:28px minmax(0,1fr);
}
.ff-page.ff-menu-clean .ff-settings-quick-strip .ff-ui-ico{
  width:18px;
  height:18px;
}
.ff-page.ff-menu-clean .ff-settings-quick-strip strong{
  font-size:1rem;
}
.ff-page.ff-menu-clean .ff-settings-help-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-bottom:12px;
}
.ff-page.ff-menu-clean .ff-settings-help-actions .ff-settings-wide-action{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:40px;
  padding:0 9px;
}
.ff-page.ff-menu-clean .ff-settings-comfort-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.ff-page.ff-menu-clean .ff-settings-comfort-toggle{
  display:grid;
  grid-template-columns:18px minmax(0,1fr);
  grid-template-areas:"icon title" "icon state";
  gap:2px 8px;
  align-items:center;
  min-height:58px;
  padding:9px 10px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:12px;
  background:rgba(255,255,255,.038);
  color:#f3f7ff;
  text-align:left;
  cursor:pointer;
}
.ff-page.ff-menu-clean .ff-settings-comfort-toggle .ff-ui-ico{
  grid-area:icon;
  width:17px;
  height:17px;
  color:#8ea7d2;
}
.ff-page.ff-menu-clean .ff-settings-comfort-toggle strong{
  grid-area:title;
  font-size:.74rem;
  line-height:1.12;
}
.ff-page.ff-menu-clean .ff-settings-comfort-toggle em{
  grid-area:state;
  color:#7189b3;
  font-style:normal;
  font-size:.58rem;
  font-weight:900;
}
.ff-page.ff-menu-clean .ff-settings-comfort-toggle.is-active{
  border-color:rgba(88,221,255,.30);
  background:rgba(88,221,255,.07);
}
.ff-page.ff-menu-clean .ff-settings-comfort-toggle.is-active .ff-ui-ico,
.ff-page.ff-menu-clean .ff-settings-comfort-toggle.is-active em{
  color:#62e2ff;
}
.ff-page.ff-menu-clean .ff-settings-profiles{
  display:grid;
  gap:9px;
}
.ff-page.ff-menu-clean .ff-settings-profiles button{
  position:relative;
  display:grid;
  gap:3px;
  min-height:69px;
  padding:10px 76px 10px 12px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:13px;
  color:#fff;
  background:rgba(255,255,255,.042);
  text-align:left;
  cursor:pointer;
}
.ff-page.ff-menu-clean .ff-settings-profiles button:hover{
  border-color:rgba(88,221,255,.25);
  background:rgba(88,221,255,.055);
}
.ff-page.ff-menu-clean .ff-settings-profiles button > span{
  color:#8fa7d1;
  font-size:.6rem;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-settings-profiles button > strong{
  font-size:.77rem;
}
.ff-page.ff-menu-clean .ff-settings-profiles button > small{
  color:#8fa1cc;
  font-size:.64rem;
}
.ff-page.ff-menu-clean .ff-settings-profiles button > em{
  position:absolute;
  top:50%;
  right:10px;
  transform:translateY(-50%);
  color:#ffd34b;
  font-size:.57rem;
  font-style:normal;
  font-weight:900;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-settings-profiles button.is-active{
  border-color:rgba(255,210,38,.30);
  background:rgba(255,210,38,.055);
}
.ff-page.ff-menu-clean .ff-settings-profiles button.is-active > em{
  color:#66e8a7;
}
@media (max-width:720px){
  .ff-page.ff-menu-clean .ff-settings-hero-side{
    grid-template-columns:1fr;
  }
  .ff-page.ff-menu-clean .ff-settings-help-actions,
  .ff-page.ff-menu-clean .ff-settings-comfort-grid{
    grid-template-columns:1fr;
  }
}


/* v3.14.57 — multiple seasonal challenges with collectible rewards */
.ff-page.ff-menu-clean .ff-seasonal-hub .ff-cine-card-head{
  display:flex;
  align-items:center;
  gap:8px;
}
.ff-page.ff-menu-clean .ff-seasonal-counter{
  margin-left:auto;
  padding:3px 7px;
  border-radius:999px;
  border:1px solid rgba(255,210,38,.20);
  background:rgba(255,210,38,.08);
  color:#dce7ff;
  font-size:.58rem;
  font-weight:900;
}
.ff-page.ff-menu-clean .ff-seasonal-counter b{
  color:#ffda55;
}
.ff-page.ff-menu-clean .ff-seasonal-hub .ff-cine-mission-title strong em{
  font-style:normal;
}
.ff-page.ff-menu-clean .ff-seasonal-hub .ff-cine-progress{
  flex:1;
}
.ff-page.ff-menu-clean .ff-seasonal-hub.is-complete .ff-cine-progress span{
  background:linear-gradient(90deg,#67efa8,#ffd226);
}
.ff-page.ff-menu-clean .ff-seasonal-hub.is-claimed .ff-cine-reward-pill{
  border-color:rgba(103,239,168,.28);
  color:#67efa8;
}
.ff-page.ff-menu-clean .ff-seasonal-actions{
  display:grid;
  grid-template-columns:36px minmax(0,1fr) 36px;
  gap:7px;
  margin-top:9px;
}
.ff-page.ff-menu-clean .ff-seasonal-actions button{
  min-height:34px;
  border:1px solid rgba(124,160,221,.18);
  border-radius:9px;
  background:rgba(255,255,255,.045);
  color:#e8f1ff;
  font-family:var(--ff-font-head);
  font-weight:900;
  cursor:pointer;
}
.ff-page.ff-menu-clean .ff-seasonal-actions button:not(.ff-seasonal-claim){
  font-size:1.15rem;
}
.ff-page.ff-menu-clean .ff-seasonal-actions .ff-seasonal-claim{
  color:#8ca5d1;
  font-size:.61rem;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-seasonal-hub.is-complete:not(.is-claimed) .ff-seasonal-claim{
  border-color:rgba(255,210,38,.38);
  background:linear-gradient(180deg,#ffda4e,#f2b615);
  color:#071326;
  box-shadow:0 7px 18px rgba(255,194,24,.18);
}
.ff-page.ff-menu-clean .ff-seasonal-actions .ff-seasonal-claim:disabled{
  cursor:default;
  opacity:.82;
}
.ff-page.ff-menu-clean .ff-seasonal-hub.is-claimed .ff-seasonal-claim{
  border-color:rgba(103,239,168,.24);
  background:rgba(103,239,168,.08);
  color:#67efa8;
}
.ff-seasonal-admin-box{
  margin:12px 0;
  padding:10px 12px;
  border:1px solid #dcdcde;
  border-radius:6px;
}
.ff-seasonal-admin-box legend{
  padding:0 6px;
  font-weight:600;
}


/* v3.14.61 — seasonal shop guide: readable two-row layout without empty space */
.ff-page.ff-menu-clean .ff-shop-guide{
  grid-template-columns:minmax(320px,.93fr) minmax(360px,1.07fr);
  gap:11px;
  align-items:stretch;
}
.ff-page.ff-menu-clean .ff-shop-guide-intro{
  min-height:88px;
}
.ff-page.ff-menu-clean .ff-shop-economy-note{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
  min-height:88px;
  padding:12px 15px;
  border-radius:16px;
  border:1px solid rgba(255,210,38,.22);
  background:
    radial-gradient(circle at 0% 30%,rgba(255,210,38,.12),transparent 44%),
    rgba(255,210,38,.035);
}
.ff-page.ff-menu-clean .ff-shop-economy-note > .ff-ui-ico{
  flex:0 0 22px;
  width:22px;
  height:22px;
  color:#ffda55;
}
.ff-page.ff-menu-clean .ff-shop-economy-note strong{
  display:block;
  margin-bottom:4px;
  color:#ffda55;
  font-size:.7rem;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.ff-page.ff-menu-clean .ff-shop-economy-note p{
  margin:0;
  color:#afc1df;
  font-size:.69rem;
  line-height:1.42;
}
.ff-page.ff-menu-clean .ff-shop-economy-note b{
  color:#eef5ff;
}
.ff-page.ff-menu-clean .ff-shop-guide-grid{
  grid-column:1 / -1;
  grid-template-columns:repeat(3,minmax(235px,1fr));
  gap:10px;
}
.ff-page.ff-menu-clean .ff-shop-guide-card{
  min-height:76px;
  align-items:flex-start;
  padding:12px 14px;
}
.ff-page.ff-menu-clean .ff-shop-guide-card p{
  max-width:none;
}
@media(max-width:1120px){
  .ff-page.ff-menu-clean .ff-shop-guide{
    grid-template-columns:1fr;
  }
  .ff-page.ff-menu-clean .ff-shop-guide-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media(max-width:760px){
  .ff-page.ff-menu-clean .ff-shop-guide-grid{
    grid-template-columns:1fr;
  }
}


/* v3.14.59 — fully automatic monthly seasons */
.ff-page.ff-menu-clean .ff-seasonal-calendar{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
  margin:6px 0 8px;
  color:#91a8d0;
  font-size:.59rem;
  font-weight:900;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.ff-page.ff-menu-clean .ff-seasonal-calendar strong{
  color:#70ddff;
}
.ff-page.ff-menu-clean .ff-seasonal-calendar span{
  padding:3px 7px;
  border-radius:999px;
  border:1px solid rgba(255,210,38,.20);
  color:#ffda55;
  background:rgba(255,210,38,.06);
}
.ff-page.ff-menu-clean .ff-seasonal-calendar em{
  margin-left:auto;
  color:#8da4cb;
  font-style:normal;
}
.ff-page.ff-menu-clean .ff-seasonal-rollover{
  margin:0 0 8px;
  padding:7px 9px;
  border:1px solid rgba(103,239,168,.22);
  border-radius:10px;
  background:rgba(103,239,168,.07);
  color:#b8f8da;
  font-size:.62rem;
  line-height:1.38;
}
.ff-page.ff-menu-clean .ff-seasonal-rollover[hidden]{
  display:none !important;
}
.ff-page.ff-menu-clean .ff-seasonal-rollover b{
  color:#67efa8;
}
.ff-season-auto-admin{
  max-width:820px;
  margin:12px 0;
  padding:12px 14px;
  border:1px solid #a7d9c2;
  border-radius:7px;
  background:#f1fbf5;
}
.ff-season-auto-admin > strong{
  display:block;
  color:#167542;
  margin-bottom:5px;
}
.ff-season-auto-admin p{
  margin:0 0 8px;
  color:#355549;
}
.ff-season-auto-admin span{
  display:block;
  color:#40564f;
}
@media(max-width:760px){
  .ff-page.ff-menu-clean .ff-seasonal-calendar em{
    flex-basis:100%;
    margin-left:0;
  }
}


/* v3.14.62 — daily featured skin rotation and -20% offer */
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-ribbon{
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.ff-page.ff-menu-clean .ff-shop.ff-shop-storefront .ff-shop-featured-banner .ff-shop-preview-ribbon b{
  padding:4px 8px;
  border-radius:999px;
  background:rgba(103,239,168,.18);
  color:#72f3ad;
  font-size:.7rem;
  letter-spacing:.06em;
}
.ff-page.ff-menu-clean .ff-shop-sale-cost{
  display:inline-flex !important;
  align-items:center;
  gap:9px;
  margin-top:12px;
  color:#dce8ff;
}
.ff-page.ff-menu-clean .ff-shop-sale-cost small{
  padding:5px 8px;
  border-radius:999px;
  background:rgba(103,239,168,.12);
  border:1px solid rgba(103,239,168,.25);
  color:#72f3ad;
  font-weight:950;
}
.ff-page.ff-menu-clean .ff-shop-sale-cost del{
  color:#7e96be;
  font-size:.88rem;
}
.ff-page.ff-menu-clean .ff-shop-sale-cost strong{
  color:#72f3ad;
  font-size:1.1rem;
}
.ff-page.ff-menu-clean .ff-shop-sale-cost.is-owned-cost{
  display:block !important;
  color:#78e9b0;
}
.ff-page.ff-menu-clean .ff-shop-card-visual .ff-shop-sale-badge{
  position:absolute;
  z-index:4;
  right:10px;
  bottom:10px;
  padding:5px 8px;
  border-radius:999px;
  border:1px solid rgba(103,239,168,.30);
  background:rgba(7,35,29,.90);
  color:#72f3ad;
  font-size:.6rem;
  font-weight:950;
  letter-spacing:.06em;
}
.ff-page.ff-menu-clean .ff-shop-card-visual .ff-shop-sale-badge[hidden]{
  display:none !important;
}
.ff-page.ff-menu-clean .ff-shop-premium-card.is-featured-sale{
  border-color:rgba(103,239,168,.25);
  box-shadow:inset 0 0 0 1px rgba(103,239,168,.05);
}


/* v3.14.63 — no duplicated teaser skins or retired duplicate cards */
.ff-page.ff-menu-clean .ff-shop-locked-teaser-card{
  display:none !important;
}
.ff-page.ff-menu-clean [data-ff-shop-card="wasteland-cultist"]{
  display:none !important;
}


/* v3.14.64 — Discord reward integration in player profile */
html body .ff-page.ff-menu-clean .ff-profile-discord-reward{
  grid-column:1 / -1;
  padding:18px;
  border-radius:18px;
  border:1px solid rgba(88,221,255,.18);
  background:linear-gradient(105deg,rgba(8,24,51,.96),rgba(17,20,48,.93));
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-profile-clean-head em{
  margin-left:auto;padding:5px 9px;border-radius:999px;font-style:normal;font-size:.58rem;font-weight:900;letter-spacing:.08em;color:#8fa8d3;background:rgba(255,255,255,.05);
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward.is-ready .ff-profile-clean-head em{color:#ffd752;border:1px solid rgba(255,215,82,.26);background:rgba(255,215,82,.08)}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward.is-earned .ff-profile-clean-head em{color:#66eca7;border:1px solid rgba(102,236,167,.28);background:rgba(102,236,167,.08)}
html body .ff-page.ff-menu-clean .ff-discord-reward-intro{margin:14px 0 13px}
html body .ff-page.ff-menu-clean .ff-discord-reward-intro span{display:block;color:#70ddff;font-size:.6rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
html body .ff-page.ff-menu-clean .ff-discord-reward-intro strong{display:block;margin:6px 0;color:#fff;font-family:var(--ff-font-head);font-size:1.22rem;text-transform:uppercase}
html body .ff-page.ff-menu-clean .ff-discord-reward-intro p{margin:0;color:#a6b9da;font-size:.75rem;line-height:1.52}
html body .ff-page.ff-menu-clean .ff-discord-reward-requirements{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:13px 0}
html body .ff-page.ff-menu-clean .ff-discord-reward-requirements div{display:grid;grid-template-columns:20px minmax(0,1fr);grid-template-areas:'icon title' 'icon status';gap:2px 8px;align-items:center;padding:10px;border-radius:12px;border:1px solid rgba(120,151,205,.14);background:rgba(255,255,255,.035)}
html body .ff-page.ff-menu-clean .ff-discord-reward-requirements .ff-ui-ico{grid-area:icon;width:18px;height:18px;color:#7f99c4}
html body .ff-page.ff-menu-clean .ff-discord-reward-requirements strong{grid-area:title;color:#ecf3ff;font-size:.72rem}
html body .ff-page.ff-menu-clean .ff-discord-reward-requirements em{grid-area:status;color:#7e97c2;font-style:normal;font-size:.61rem;font-weight:900;text-transform:uppercase}
html body .ff-page.ff-menu-clean .ff-discord-reward-requirements div.is-done{border-color:rgba(102,236,167,.2);background:rgba(102,236,167,.06)}
html body .ff-page.ff-menu-clean .ff-discord-reward-requirements div.is-done .ff-ui-ico,html body .ff-page.ff-menu-clean .ff-discord-reward-requirements div.is-done em{color:#66eca7}
html body .ff-page.ff-menu-clean .ff-discord-link-code{padding:11px 13px;margin:13px 0;border-radius:12px;border:1px dashed rgba(88,221,255,.30);background:rgba(88,221,255,.05)}
html body .ff-page.ff-menu-clean .ff-discord-link-code span,html body .ff-page.ff-menu-clean .ff-discord-link-code small{display:block;color:#91a9d2;font-size:.64rem}
html body .ff-page.ff-menu-clean .ff-discord-link-code strong{display:block;margin:6px 0;color:#70ddff;font-family:var(--ff-font-head);font-size:.94rem;letter-spacing:.04em}
html body .ff-page.ff-menu-clean .ff-discord-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
html body .ff-page.ff-menu-clean .ff-discord-actions .ff-btn{min-width:190px}
html body .ff-page.ff-menu-clean .ff-discord-actions small{color:#8ca5cf;font-size:.66rem}
.ff-discord-role-admin-box{border-color:#72c9e5;background:#f5fcff}
@media(max-width:760px){html body .ff-page.ff-menu-clean .ff-discord-reward-requirements{grid-template-columns:1fr}}


/* v3.14.65 — Discord OAuth2 account connection */
html body .ff-page.ff-menu-clean .ff-discord-linked-account{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:11px 13px;
  margin:13px 0;
  border-radius:12px;
  border:1px solid rgba(102,236,167,.24);
  background:rgba(102,236,167,.06);
}
html body .ff-page.ff-menu-clean .ff-discord-linked-account[hidden]{display:none !important}
html body .ff-page.ff-menu-clean .ff-discord-linked-account span{
  color:#8ea7cf;
  font-size:.63rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
html body .ff-page.ff-menu-clean .ff-discord-linked-account strong{
  color:#66eca7;
  font-size:.78rem;
  text-align:right;
}
html body .ff-page.ff-menu-clean .ff-discord-actions a.ff-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
}
html body .ff-page.ff-menu-clean .ff-discord-actions .ff-btn.is-disabled{
  opacity:.5;
  pointer-events:none;
  filter:saturate(.5);
}
.ff-discord-oauth-callback{
  margin:10px 0;
  padding:10px 12px;
  border:1px solid #b7d9ef;
  border-radius:6px;
  background:#f6fbff;
}
.ff-discord-oauth-callback strong,.ff-discord-oauth-callback small{display:block;margin-bottom:6px}
.ff-discord-oauth-callback code{display:block;padding:8px;background:#fff;border:1px solid #d5e3f0;word-break:break-all}


/* v3.14.66 — technical configuration is never exposed to players */
.ff-page.ff-menu-clean .ff-profile-discord-reward[hidden]{
  display:none !important;
}


/* v3.14.67 — Discord-branded reward panel in player profile */
html body .ff-page.ff-menu-clean .ff-profile-discord-reward{
  --ff-discord-blurple:#5865f2;
  --ff-discord-blurple-soft:#7983f5;
  --ff-discord-lavender:#b7bcff;
  --ff-discord-white:#f3f5ff;
  position:relative;
  overflow:hidden;
  border:1px solid rgba(88,101,242,.54) !important;
  background:
    radial-gradient(circle at 8% 0%,rgba(88,101,242,.34),transparent 34%),
    radial-gradient(circle at 96% 28%,rgba(88,101,242,.20),transparent 34%),
    linear-gradient(115deg,rgba(19,22,62,.98),rgba(10,14,39,.96)) !important;
  box-shadow:
    inset 0 1px 0 rgba(190,195,255,.12),
    0 20px 44px rgba(6,9,35,.30),
    0 0 35px rgba(88,101,242,.09);
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward::before{
  content:'';
  position:absolute;
  inset:0 0 auto 0;
  height:3px;
  background:linear-gradient(90deg,transparent,var(--ff-discord-blurple),var(--ff-discord-blurple-soft),transparent);
  opacity:.95;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-profile-clean-head{
  gap:10px;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-profile-clean-head > .ff-ui-ico{
  display:grid;
  place-items:center;
  width:29px;
  height:29px;
  padding:6px;
  border-radius:10px;
  color:#fff !important;
  background:var(--ff-discord-blurple);
  box-shadow:0 7px 18px rgba(88,101,242,.36);
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-profile-clean-head strong{
  color:var(--ff-discord-white) !important;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-profile-clean-head em{
  border:1px solid rgba(121,131,245,.40) !important;
  background:rgba(88,101,242,.14) !important;
  color:var(--ff-discord-lavender) !important;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward.is-ready .ff-profile-clean-head em,
html body .ff-page.ff-menu-clean .ff-profile-discord-reward.is-earned .ff-profile-clean-head em{
  border-color:rgba(121,131,245,.54) !important;
  background:rgba(88,101,242,.24) !important;
  color:#fff !important;
  box-shadow:0 0 16px rgba(88,101,242,.15);
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-intro span{
  color:var(--ff-discord-lavender) !important;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-intro strong{
  color:#fff !important;
  text-shadow:0 0 18px rgba(88,101,242,.26);
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-intro p{
  color:#b5bce8 !important;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements div{
  border-color:rgba(121,131,245,.19) !important;
  background:rgba(88,101,242,.065) !important;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements .ff-ui-ico{
  color:#98a0ff !important;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements strong{
  color:#f2f4ff !important;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements em{
  color:#a7aff7 !important;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements div.is-done{
  border-color:rgba(121,131,245,.47) !important;
  background:
    linear-gradient(110deg,rgba(88,101,242,.19),rgba(88,101,242,.08)) !important;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements div.is-done .ff-ui-ico,
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements div.is-done em{
  color:#dce0ff !important;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-linked-account{
  border-color:rgba(121,131,245,.38) !important;
  background:rgba(88,101,242,.13) !important;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-linked-account span{
  color:#aab2fa !important;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-linked-account strong{
  color:#f3f5ff !important;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-actions a.ff-btn-primary{
  border:1px solid rgba(165,172,255,.18) !important;
  background:linear-gradient(180deg,#6875f5,#5865f2) !important;
  color:#fff !important;
  box-shadow:0 10px 23px rgba(88,101,242,.32) !important;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-actions a.ff-btn-primary:hover{
  background:linear-gradient(180deg,#7580f8,#6470f5) !important;
  transform:translateY(-1px);
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-actions .ff-btn-ghost{
  border-color:rgba(121,131,245,.32) !important;
  background:rgba(88,101,242,.08) !important;
  color:#cfd4ff !important;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-actions small{
  color:#9fa9ee !important;
}


/* v3.14.68 — Discord connection button states */
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-actions [hidden]{
  display:none !important;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-actions a.ff-btn-primary:not(.is-disabled){
  opacity:1;
  pointer-events:auto;
}




/* v3.14.72 — right hero stack stays within hero while sitting slightly lower */
@media (min-width:961px){
  .ff-page.ff-menu-clean .ff-home-hero-right-stack{
    /* The stack is bottom-aligned: a smaller clearance lowers it without overflow. */
    margin-bottom:clamp(16px,2.2vh,22px);
    transform:none;
  }
}
@media (min-width:961px) and (max-height:680px){
  .ff-page.ff-menu-clean .ff-home-hero-right-stack{
    /* Retain safe clearance on very short windows. */
    margin-bottom:14px;
    transform:none;
  }
}


/* v3.14.75 — player-selectable FPS limit */
.ff-page.ff-menu-clean .ff-settings-fps-card{
  display:grid;
  gap:8px;
  margin:10px 0;
}
.ff-page.ff-menu-clean .ff-settings-fps-card label{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:0;
  color:#dbe7ff;
  font-size:.75rem;
  font-weight:850;
}
.ff-page.ff-menu-clean .ff-settings-fps-card label strong{
  padding:4px 8px;
  border-radius:999px;
  background:rgba(82,210,255,.10);
  color:#5edaff;
  font-size:.64rem;
  letter-spacing:.05em;
  text-transform:uppercase;
  white-space:nowrap;
}
.ff-page.ff-menu-clean .ff-settings-fps-card small{
  color:#8fa5cd;
  font-size:.64rem;
  line-height:1.42;
}

/* v3.15.14 — Discord reward progress clarity */
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-progress{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-areas:'copy pct' 'bar bar';
  gap:8px 14px;
  align-items:center;
  margin:14px 0 12px;
  padding:13px 14px;
  border-radius:15px;
  border:1px solid rgba(121,131,245,.24);
  background:linear-gradient(135deg,rgba(88,101,242,.14),rgba(88,101,242,.055));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055);
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-progress > div{
  grid-area:copy;
  min-width:0;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-progress span{
  display:block;
  color:#aeb6ff;
  font-size:.62rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-progress strong{
  display:block;
  margin-top:3px;
  color:#fff;
  font-family:var(--ff-font-head);
  font-size:1.05rem;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-progress small{
  display:block;
  margin-top:3px;
  color:#aeb9ee;
  font-size:.72rem;
  line-height:1.4;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-progress em{
  grid-area:pct;
  justify-self:end;
  align-self:start;
  min-width:52px;
  padding:6px 9px;
  border-radius:999px;
  border:1px solid rgba(121,131,245,.28);
  background:rgba(88,101,242,.17);
  color:#fff;
  font-style:normal;
  font-weight:1000;
  text-align:center;
  font-size:.73rem;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-progress > i,
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements div > i{
  grid-area:bar;
  display:block;
  width:100%;
  height:7px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(7,11,31,.55);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045);
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-progress > i b,
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements div > i b{
  display:block;
  height:100%;
  width:0%;
  border-radius:inherit;
  background:linear-gradient(90deg,#5865f2,#8d96ff,#d9ddff);
  transition:width .25s ease;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements div{
  grid-template-columns:24px minmax(0,1fr) auto !important;
  grid-template-areas:'icon title status' 'icon detail detail' 'bar bar bar' !important;
  gap:5px 10px !important;
  align-items:start !important;
  min-height:96px;
  padding:12px !important;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements strong{
  align-self:center;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements em{
  justify-self:end;
  align-self:center;
  max-width:150px;
  text-align:right;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements small{
  grid-area:detail;
  display:block;
  color:#aeb9ee;
  font-size:.67rem;
  line-height:1.35;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements div.is-waiting{
  border-color:rgba(121,131,245,.20) !important;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements div.is-waiting em{
  color:#c3c9ff !important;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements div.is-done small{
  color:#d7dcff;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements div.is-done > i b{
  background:linear-gradient(90deg,#5865f2,#aab1ff,#ffffff);
}
@media(max-width:760px){
  html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-progress{
    grid-template-columns:1fr;
    grid-template-areas:'copy' 'pct' 'bar';
  }
  html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-progress em{
    justify-self:start;
  }
  html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements div{
    min-height:0;
  }
}


/* v3.15.15 — full Discord rank requirements list */
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements{
  grid-template-columns:repeat(5,minmax(0,1fr));
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-details[hidden]{display:none !important}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-details{
  margin:12px 0 14px;
  padding:13px;
  border-radius:15px;
  border:1px solid rgba(121,131,245,.24);
  background:linear-gradient(135deg,rgba(88,101,242,.12),rgba(11,16,45,.46));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-details-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:10px;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-details-head strong{
  color:#fff;
  font-family:var(--ff-font-head);
  font-size:.92rem;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-details-head span{
  padding:5px 9px;
  border-radius:999px;
  color:#dfe3ff;
  background:rgba(88,101,242,.18);
  font-size:.64rem;
  font-weight:1000;
  text-transform:uppercase;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-details ol{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:8px;
  margin:0;
  padding:0;
  list-style:none;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-details li{
  min-height:96px;
  padding:11px 12px;
  border-radius:12px;
  border:1px solid rgba(121,131,245,.18);
  background:rgba(255,255,255,.035);
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-details li strong{
  display:block;
  margin-bottom:6px;
  color:#f4f6ff;
  font-size:.72rem;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-details li span{
  display:block;
  color:#aeb9ee;
  font-size:.66rem;
  line-height:1.38;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-details li.is-done{
  border-color:rgba(121,131,245,.44);
  background:linear-gradient(110deg,rgba(88,101,242,.18),rgba(88,101,242,.08));
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-details li.is-done span{color:#d9ddff}
@media(max-width:1180px){
  html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements,
  html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-details ol{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:760px){
  html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements,
  html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-details ol{grid-template-columns:1fr;}
  html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-details-head{align-items:flex-start;flex-direction:column;}
}


/* v3.15.16 — Discord rank default requirements: profile level 10 and 8 achievements. */


/* v3.15.17 — Discord rank layout with clearer 3+2 requirement grid and readable full list. */
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements{
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:stretch;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements div{
  min-height:112px;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements div[data-ff-discord-requirement="link"] strong{
  white-space:nowrap;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-actions .ff-discord-details-button{
  min-width:220px;
  border-color:rgba(181,187,255,.42) !important;
  background:linear-gradient(180deg,rgba(88,101,242,.18),rgba(88,101,242,.09)) !important;
  color:#eef0ff !important;
  letter-spacing:.045em;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-actions .ff-discord-details-button:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 22px rgba(88,101,242,.18);
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-details ol{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-details li{
  min-height:116px;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-details .ff-discord-detail-sublist{
  margin-top:8px;
  padding-top:8px;
  border-top:1px solid rgba(121,131,245,.16);
  white-space:pre-line;
  color:#d4d9ff;
  font-size:.64rem;
}
@media(max-width:1180px){
  html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements,
  html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-details ol{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:760px){
  html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements,
  html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-details ol{
    grid-template-columns:1fr;
  }
  html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements div{
    min-height:0;
  }
}


/* v3.15.18 — Discord rank panel typography enlarged to match the rest of the profile page. */
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-profile-clean-head{
  gap:12px;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-profile-clean-head strong{
  font-size:1.2rem;
  line-height:1.1;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-profile-clean-head em{
  font-size:.76rem;
  letter-spacing:.06em;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-intro span{
  display:block;
  margin-bottom:8px;
  font-size:.84rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-intro strong{
  display:block;
  font-size:1.7rem;
  line-height:1.08;
  letter-spacing:.01em;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-intro p{
  margin-top:12px;
  max-width:940px;
  font-size:.99rem;
  line-height:1.72;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-progress{
  padding:16px 18px;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-progress span{
  font-size:.72rem;
  letter-spacing:.085em;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-progress strong{
  margin-top:5px;
  font-size:1.28rem;
  line-height:1.12;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-progress small{
  margin-top:6px;
  font-size:.84rem;
  line-height:1.55;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-progress em{
  min-width:58px;
  padding:7px 11px;
  font-size:.82rem;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements .ff-ui-ico{
  width:20px;
  height:20px;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements strong{
  font-size:.96rem;
  line-height:1.2;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements em{
  font-size:.78rem;
  line-height:1.2;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-requirements small{
  font-size:.82rem;
  line-height:1.55;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-details{
  padding:15px;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-details-head strong{
  font-size:1.06rem;
  line-height:1.18;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-details-head span{
  font-size:.72rem;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-details li strong{
  margin-bottom:8px;
  font-size:.9rem;
  line-height:1.3;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-details li span{
  font-size:.8rem;
  line-height:1.55;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-details .ff-discord-detail-sublist{
  font-size:.77rem;
  line-height:1.55;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-actions .ff-btn,
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-actions a.ff-btn-primary{
  font-size:.9rem;
}
html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-actions small{
  font-size:.84rem;
  line-height:1.55;
}
@media(max-width:760px){
  html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-intro strong{
    font-size:1.42rem;
  }
  html body .ff-page.ff-menu-clean .ff-profile-discord-reward .ff-discord-reward-intro p{
    font-size:.92rem;
    line-height:1.62;
  }
}


/* v3.15.19 — profile map records with map-colored accents. */
html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-stats .ff-profile-clean-stat.ff-profile-map-record{
  background:linear-gradient(135deg,rgba(13,20,48,.98),rgba(8,13,34,.98));
  box-shadow:0 15px 32px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.045);
}
html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-stats .ff-profile-clean-stat.ff-profile-map-record span{
  color:var(--ff-map-record-label,#a9b9df);
}
html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-stats .ff-profile-clean-stat.ff-profile-map-record strong{
  text-shadow:0 0 22px var(--ff-map-record-glow,rgba(86,197,255,.18));
}
html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-stats .ff-profile-clean-stat.ff-profile-map-record em{
  color:var(--ff-map-record-text,#c6d4f0);
}
html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-stats .ff-profile-clean-stat.ff-profile-map-record::before{
  width:4px;
  opacity:.95;
  background:linear-gradient(180deg,transparent,var(--ff-map-record-a),var(--ff-map-record-b));
}
html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-stats .ff-profile-clean-stat.is-map-crystal{
  --ff-map-record-a:#56c5ff;
  --ff-map-record-b:#ffd84f;
  --ff-map-record-label:#9fdcff;
  --ff-map-record-text:#d6efff;
  --ff-map-record-glow:rgba(86,197,255,.34);
  border-color:rgba(86,197,255,.26);
  background:linear-gradient(135deg,rgba(22,48,86,.78),rgba(9,15,38,.98));
}
html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-stats .ff-profile-clean-stat.is-map-minecraft{
  --ff-map-record-a:#66eca7;
  --ff-map-record-b:#9dff6f;
  --ff-map-record-label:#aaf0bd;
  --ff-map-record-text:#d8ffe5;
  --ff-map-record-glow:rgba(102,236,167,.28);
  border-color:rgba(102,236,167,.25);
  background:linear-gradient(135deg,rgba(17,62,45,.62),rgba(8,15,35,.98));
}
html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-stats .ff-profile-clean-stat.is-map-ark{
  --ff-map-record-a:#ffb24f;
  --ff-map-record-b:#55e6d2;
  --ff-map-record-label:#ffc77f;
  --ff-map-record-text:#ffe8c8;
  --ff-map-record-glow:rgba(255,178,79,.30);
  border-color:rgba(255,178,79,.25);
  background:linear-gradient(135deg,rgba(74,49,20,.62),rgba(8,15,35,.98));
}
html body .ff-page.ff-menu-clean .ff-player-panel > .ff-menu-section[data-ff-menu-section="profile"] .ff-profile-clean-stats .ff-profile-clean-stat.is-map-conan{
  --ff-map-record-a:#ff7a59;
  --ff-map-record-b:#ffc857;
  --ff-map-record-label:#ffb39f;
  --ff-map-record-text:#ffe1d8;
  --ff-map-record-glow:rgba(255,122,89,.32);
  border-color:rgba(255,122,89,.25);
  background:linear-gradient(135deg,rgba(82,34,29,.64),rgba(8,15,35,.98));
}
