/* Navigation behaves like navigation, while actions remain buttons. */
a.btn,a.quick-action,a.text-action,.nav a,.mobile a,.persistent-brand[href],.sidebar-brand[href]{text-decoration:none}
.nav a{display:block;border:0;background:transparent;color:var(--st-text-soft,var(--ct-muted));text-align:left;padding:11px 12px;border-radius:11px;font-weight:750;transition:background .18s ease,color .18s ease,transform .18s ease}
.nav a:hover{transform:translateX(2px)}
.nav a.active,.nav a:hover{background:linear-gradient(90deg,color-mix(in srgb,var(--st-cyan) 15%,transparent),color-mix(in srgb,var(--st-purple) 12%,transparent));color:var(--st-text,var(--ct-text))}
.side .nav a{flex:0 0 auto}
.mobile a{flex:0 0 auto;min-width:max(82px,22vw);padding:9px 4px;border-radius:9px;color:var(--st-text-soft,var(--ct-muted));text-align:center;scroll-snap-align:start}
.mobile a.active{background:color-mix(in srgb,var(--st-cyan) 12%,var(--st-surface-2));color:var(--st-text,var(--ct-text))}

/* Console owns row one; Account remains directly after the notification bell. */
.top .actions.console-launcher-actions{display:grid!important;grid-template-columns:repeat(4,max-content)!important;gap:10px!important;align-items:center;justify-content:end}
.console-launch-button{grid-column:1/-1!important}
.console-launcher-actions #account{grid-column:auto!important;width:auto!important}

/* Native select popups keep enough contrast in every palette. */
select,.select{background-color:var(--st-surface-2)!important;color:var(--st-text)!important;border-color:color-mix(in srgb,var(--st-text) 30%,var(--st-border))!important}
select option,select optgroup{background:var(--st-surface)!important;color:var(--st-text)!important;font-weight:650}
select optgroup{font-weight:900}
select:focus-visible{outline:3px solid color-mix(in srgb,var(--st-cyan) 72%,white);outline-offset:2px}
html[data-theme="dark"] select{color-scheme:dark}
html[data-theme="light"] select{color-scheme:light}

/* Elegant, theme-aware page headings without changing Sprite rarity colours. */
.page>.hero h2,.page .hero>h2,.console-page-intro h2,.page-title,.admin-app-hero h1{
  width:max-content;max-width:100%;
  color:var(--st-text);
  background:linear-gradient(105deg,var(--st-text) 4%,color-mix(in srgb,var(--st-cyan) 78%,var(--st-text)) 54%,color-mix(in srgb,var(--st-gold) 74%,var(--st-text)) 96%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  font-family:Georgia,"Palatino Linotype",Palatino,serif!important;
  font-weight:700!important;letter-spacing:-.045em!important;
  text-wrap:balance;text-shadow:none!important;
}

/* A darker in-game console with high-contrast Matrix-green commands. */
.fortnite-command-console{background:radial-gradient(circle at 82% 12%,rgba(77,255,135,.09),transparent 30%),linear-gradient(145deg,#09140f,#0b2118 55%,#07110d)!important;border-color:#62f69a!important;box-shadow:0 0 0 2px rgba(71,255,139,.18),inset 0 0 48px rgba(26,107,60,.22),0 18px 55px rgba(0,0,0,.38)!important}
.fortnite-command-console:before{background:repeating-linear-gradient(0deg,rgba(103,255,157,.035) 0 1px,transparent 1px 5px)!important}
.fortnite-command-console header span,.fortnite-command-console header strong,.fortnite-command-console header small,.console-code label strong,.console-copy{color:#72ff9f!important;text-shadow:0 0 9px rgba(69,255,132,.38)}
.fortnite-command-console header strong,.fortnite-command-console header small{letter-spacing:.075em}
.console-prompt{border-color:rgba(114,255,159,.5)!important;background:#10271c!important;color:#72ff9f!important;box-shadow:inset 5px 0 0 #48d77a!important}
.console-prompt span{background:#72ff9f!important}
.console-code{border-color:rgba(114,255,159,.28)!important;background:rgba(2,18,10,.58)!important}
.console-code label strong{font:800 clamp(.78rem,1vw,.94rem)/1.25 ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace!important;letter-spacing:.035em!important}
.console-code label small{color:#cafbd7!important;font-size:.62rem!important}
.console-copy{border-left-color:rgba(114,255,159,.32)!important;background:rgba(34,112,59,.22)!important;font-size:.72rem!important}
.console-copy:hover,.console-copy:focus-visible{background:rgba(71,211,112,.28)!important;outline-color:#72ff9f!important}
.fortnite-command-console footer{color:#c7f5d3!important}.fortnite-command-console footer b{color:#72ff9f!important}

/* Distinct ambient patterns for every finish theme. */
html[data-visual-theme="grove"] body::before{background-image:radial-gradient(ellipse at 25% 30%,transparent 0 12px,color-mix(in srgb,var(--st-cyan) 26%,transparent) 13px 14px,transparent 15px),linear-gradient(35deg,transparent 47%,color-mix(in srgb,var(--st-gold) 12%,transparent) 48% 49%,transparent 50%)!important;background-size:86px 72px,118px 118px!important}
html[data-visual-theme="gold"] body::before{background-image:radial-gradient(circle,color-mix(in srgb,var(--st-gold) 72%,transparent) 0 2px,transparent 3px),radial-gradient(circle,transparent 0 13px,color-mix(in srgb,var(--st-gold) 22%,transparent) 14px 15px,transparent 16px)!important;background-size:48px 48px,112px 112px!important}
html[data-visual-theme="gummy"] body::before{background-image:radial-gradient(circle,transparent 0 14px,color-mix(in srgb,var(--st-cyan) 28%,transparent) 15px 18px,transparent 19px),radial-gradient(circle,color-mix(in srgb,var(--st-purple) 20%,transparent) 0 9px,transparent 10px)!important;background-size:94px 94px,61px 61px!important}
html[data-visual-theme="galaxy"] body::before{background-image:radial-gradient(circle,rgba(255,255,255,.85) 0 1px,transparent 1.6px),linear-gradient(45deg,transparent 49%,color-mix(in srgb,var(--st-cyan) 24%,transparent) 50%,transparent 51%)!important;background-size:51px 51px,103px 103px!important}
html[data-visual-theme="holofoil"] body::before{background-image:repeating-linear-gradient(115deg,transparent 0 46px,color-mix(in srgb,var(--st-cyan) 18%,transparent) 48px 50px,transparent 52px 96px),repeating-linear-gradient(25deg,transparent 0 92px,color-mix(in srgb,var(--st-purple) 13%,transparent) 94px 96px)!important;background-size:auto!important}
html[data-visual-theme="cube"] body::before{background-image:linear-gradient(30deg,color-mix(in srgb,var(--st-cyan) 17%,transparent) 1px,transparent 1px),linear-gradient(150deg,color-mix(in srgb,var(--st-gold) 14%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--st-purple) 13%,transparent) 1px,transparent 1px)!important;background-size:52px 90px!important}
html[data-visual-theme="gem"] body::before{background-image:linear-gradient(30deg,transparent 46%,color-mix(in srgb,var(--st-cyan) 20%,transparent) 47% 49%,transparent 50%),linear-gradient(150deg,transparent 46%,color-mix(in srgb,var(--st-purple) 22%,transparent) 47% 49%,transparent 50%)!important;background-size:88px 76px!important}
html[data-visual-theme="quack"] body::before{background-image:radial-gradient(circle,transparent 0 18px,color-mix(in srgb,var(--st-cyan) 28%,transparent) 19px 21px,transparent 22px),radial-gradient(circle,color-mix(in srgb,var(--st-gold) 18%,transparent) 0 8px,transparent 9px)!important;background-size:104px 104px,71px 71px!important}
html[data-visual-theme="classic"] body::before{background-image:linear-gradient(color-mix(in srgb,var(--st-cyan) 11%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--st-purple) 9%,transparent) 1px,transparent 1px)!important;background-size:42px 42px!important}
html[data-visual-theme="starfall"] body::before{background-image:linear-gradient(135deg,transparent 47%,color-mix(in srgb,var(--st-cyan) 25%,transparent) 48%,transparent 50%),radial-gradient(circle,color-mix(in srgb,var(--st-gold) 36%,transparent) 0 1px,transparent 2px)!important;background-size:128px 128px,47px 47px!important}
html[data-visual-theme] body::before{opacity:.32!important}

/* First client-only Party roadmap slice: capacity warnings and earned milestones. */
.party-momentum{display:grid;gap:10px;margin:14px 0;padding:14px;border:1px solid color-mix(in srgb,var(--st-cyan) 28%,var(--st-border));border-radius:14px;background:color-mix(in srgb,var(--st-surface-2) 76%,transparent)}
.party-momentum-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.party-momentum-head h3{margin:3px 0 0}
.party-capacity{padding:5px 9px;border:1px solid currentColor;border-radius:999px;color:var(--st-cyan);font-size:.65rem;font-weight:900}.party-capacity.near{color:var(--st-gold)}.party-capacity.full{color:var(--st-success,#72e6ad)}
.party-capacity-track{height:7px;overflow:hidden;border-radius:99px;background:color-mix(in srgb,var(--st-text) 12%,transparent)}.party-capacity-track i{display:block;width:var(--party-fill);height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--st-cyan),var(--st-purple),var(--st-gold));transition:width .25s ease}
.party-momentum-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.party-momentum-achievement{display:flex;gap:7px;align-items:center;padding:8px;border:1px dashed var(--st-border);border-radius:10px;color:var(--st-muted)}.party-momentum-achievement.earned{border-style:solid;border-color:color-mix(in srgb,var(--st-gold) 42%,var(--st-border));color:var(--st-text)}.party-momentum-achievement>span{color:var(--st-gold);font-weight:900}.party-momentum-achievement div{display:grid;min-width:0}.party-momentum-achievement strong{font-size:.66rem}.party-momentum-achievement small{color:var(--st-muted);font-size:.56rem}

@media(max-width:700px){.top .actions.console-launcher-actions{width:min(100%,360px);grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:7px!important}.console-launcher-actions>.btn,.console-launcher-actions>.pill{min-width:0;padding-inline:8px}.party-momentum-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:430px){.console-launch-button{grid-column:1/-1!important}.console-launcher-actions #account{grid-column:auto!important;width:auto!important}.theme-label{font-size:.74rem}.console-launcher-actions>.btn,.console-launcher-actions>.pill{font-size:.75rem;padding-inline:5px}}
@media(prefers-reduced-motion:reduce){html[data-visual-theme] body::before{animation:none!important}.party-capacity-track i{transition:none}}
