:root {
color-scheme: dark;
--amethyst: #8C4DB1;
--fern: #4E9B65;
--orange: #E9783F;
--raspberry: #DC668C;
--espresso: #1D171C;
--cream: #F8EBD5;
--caramel: #C99669;
--cocoa: #704735;
--ink: var(--cream);
--ink-soft: rgba(248, 235, 213, .84);
--ink-faint: rgba(248, 235, 213, .64);
--panel: rgba(24, 17, 23, .88);
--panel-solid: #281d26;
--panel-raised: rgba(46, 33, 42, .92);
--line: rgba(206, 160, 106, .36);
--line-strong: rgba(214, 170, 106, .68);
--field: rgba(18, 13, 17, .78);
--danger: #ef8d7c;
--font-display: "Grenze Gotisch", "Cinzel", "Palatino Linotype", Georgia, serif;
--font-body: "Alegreya Sans", "Segoe UI", "Helvetica Neue", Arial, sans-serif;
--step--1: .9rem;
--step-0: 1.0625rem;
--step-1: 1.3rem;
--step-2: 1.7rem;
--step-3: 2.3rem;
--step-4: clamp(2.4rem, 5vw, 3.4rem);
--radius: 6px;
--gutter: clamp(16px, 4vw, 32px);
--notch: 14px;
}
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 88px; }
body {
margin: 0;
min-height: 100vh;
background: #1a1220 linear-gradient(180deg, #17101c 0%, #2b1a35 40%, #4a2857 75%, #6a3350 100%) fixed;
color: var(--ink);
font-family: var(--font-body);
font-size: var(--step-0);
line-height: 1.55;
-webkit-font-smoothing: antialiased;
overflow-x: hidden;
}
img { max-width: 100%; height: auto; display: block; }
a { color: var(--caramel); text-underline-offset: .18em; }
a:hover { color: var(--cream); }
h1, h2, h3 { font-family: var(--font-display); font-weight: 700; line-height: 1.08; margin: 0; text-wrap: balance; letter-spacing: .01em; }
h1 { font-size: var(--step-4); }
h2 { font-size: var(--step-3); }
h3 { font-size: var(--step-1); }
p { margin: 0; }
button, input, select, textarea { font: inherit; color: inherit; }
:focus-visible { outline: 2px solid var(--cream); outline-offset: 3px; border-radius: 3px; }
[hidden] { display: none !important; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.scene { position: fixed; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; contain: strict; background: #1a1220; --px: 0; --py: 0; }
.scene * { pointer-events: none; }
.scene__img, .scene canvas, .scene__veil { position: absolute; }
.scene__img { left: -2.5%; top: -2.5%; width: 105%; height: 105%; max-width: none; object-fit: cover; object-position: 50% 100%; opacity: 0; transition: opacity .9s ease; will-change: transform; user-select: none; }
.scene__img.is-ready { opacity: 1; }
.scene canvas { inset: 0; width: 100%; height: 100%; }
.scene__back { transform: translate3d(calc(var(--px) * -4px), calc(var(--py) * -2px), 0); }
.scene__stars { transform: translate3d(calc(var(--px) * -4px), calc(var(--py) * -2px), 0); }
.scene__mid, .scene__lighta, .scene__lightb { transform: translate3d(calc(var(--px) * -10px), calc(var(--py) * -4px), 0); }
.scene__fx { transform: translate3d(calc(var(--px) * -14px), calc(var(--py) * -5px), 0); }
.scene__fore { transform: translate3d(calc(var(--px) * -24px), calc(var(--py) * -8px), 0); }
.scene__lighta, .scene__lightb { mix-blend-mode: screen; }
.scene__lighta.is-ready { animation: light-a 7.3s ease-in-out infinite; }
.scene__lightb.is-ready { animation: light-b 9.1s ease-in-out infinite; }
@keyframes light-a { 0%, 100% { opacity: 1; } 22% { opacity: .82; } 31% { opacity: .96; } 58% { opacity: .78; } 66% { opacity: .92; } }
@keyframes light-b { 0%, 100% { opacity: .9; } 14% { opacity: 1; } 43% { opacity: .76; } 51% { opacity: .94; } 80% { opacity: .84; } }
.scene__veil { inset: 0; background: radial-gradient(110% 80% at 50% 38%, rgba(20, 13, 22, .16), rgba(20, 13, 22, .5) 100%), linear-gradient(180deg, rgba(20, 13, 22, .34) 0%, rgba(20, 13, 22, 0) 22%, rgba(20, 13, 22, .28) 100%); }
.scene[data-atmosphere="arena"] .scene__veil, .scene[data-atmosphere="library"] .scene__veil { background: radial-gradient(110% 80% at 50% 38%, rgba(16, 10, 18, .3), rgba(16, 10, 18, .62) 100%); }
.page { position: relative; z-index: 1; display: flex; flex-direction: column; min-height: 100vh; }
.wrap { width: 100%; max-width: 1120px; margin-inline: auto; padding-inline: var(--gutter); }
.wrap--narrow { max-width: 820px; }
main { flex: 1; display: flex; flex-direction: column; gap: clamp(40px, 7vw, 84px); padding-block: clamp(20px, 4vw, 44px) clamp(48px, 8vw, 96px); }
.site-header { position: sticky; top: env(safe-area-inset-top, 0px); z-index: 20; background: linear-gradient(180deg, rgba(29, 23, 28, .92), rgba(29, 23, 28, .58)); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-bottom: 1px solid var(--line); }
.site-header .wrap { display: flex; align-items: center; gap: 20px; min-height: 64px; }
.brand { display: flex; align-items: center; gap: 10px; color: var(--cream); text-decoration: none; font-family: var(--font-display); font-weight: 700; font-size: 1.35rem; white-space: nowrap; }
.brand img { width: 62px; height: auto; filter: drop-shadow(0 2px 6px rgba(0, 0, 0, .5)); }
.nav { display: flex; align-items: center; gap: 4px; margin-left: auto; }
.nav a { color: var(--ink-soft); text-decoration: none; padding: 8px 12px; border-radius: var(--radius); font-weight: 500; transition: color .15s, background-color .15s; }
.nav a:hover { color: var(--cream); background: rgba(248, 235, 213, .07); }
.nav a[aria-current="page"] { color: var(--cream); box-shadow: inset 0 -2px 0 var(--orange); border-radius: 0; }
.nav .nav__cta { color: var(--espresso); background: var(--orange); font-weight: 700; margin-left: 8px; }
.nav .nav__cta:hover { color: var(--espresso); background: #f08a52; }
.nav-toggle { display: none; margin-left: auto; background: none; border: 1px solid var(--line-strong); border-radius: var(--radius); padding: 8px 12px; cursor: pointer; }
@media (max-width: 920px) {
.nav-toggle { display: block; }
.nav { display: none; position: absolute; left: 0; right: 0; top: 100%; flex-direction: column; align-items: stretch; gap: 0; margin: 0; padding: 8px var(--gutter) 16px; background: rgba(29, 23, 28, .97); border-bottom: 1px solid var(--line); }
.nav.is-open { display: flex; }
.nav a { padding: 12px 8px; }
.nav .nav__cta { margin: 8px 0 0; text-align: center; }
}
.site-footer { border-top: 1px solid var(--line); background: rgba(29, 23, 28, .78); color: var(--ink-faint); font-size: var(--step--1); }
.site-footer .wrap { display: flex; flex-wrap: wrap; gap: 8px 24px; justify-content: space-between; padding-block: 20px; }
.site-footer a { color: var(--ink-soft); }
.panel { background: linear-gradient(180deg, rgba(38, 26, 36, .9), var(--panel) 34%); border: 1px solid var(--line-strong); border-radius: var(--radius); backdrop-filter: blur(12px) saturate(1.1); -webkit-backdrop-filter: blur(12px) saturate(1.1); padding: clamp(18px, 3.2vw, 32px); box-shadow: 0 22px 60px rgba(8, 4, 10, .58), 0 2px 0 rgba(8, 4, 10, .5), inset 0 1px 0 rgba(248, 235, 213, .09); min-width: 0; }
.panel--crest { border-color: var(--line-strong); position: relative; }
.panel--crest::before, .panel--crest::after { content: ""; position: absolute; width: 9px; height: 9px; background: var(--caramel); transform: rotate(45deg); top: -5px; opacity: .9; }
.panel--crest::before { left: 22px; } .panel--crest::after { right: 22px; }
.section-head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px 20px; margin-bottom: 20px; }
.section-head p { color: var(--ink-soft); }
.lede { color: var(--ink-soft); font-size: var(--step-1); max-width: 62ch; }
.muted { color: var(--ink-soft); }
.stack { display: flex; flex-direction: column; gap: 16px; }
.row { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.page-title { display: flex; flex-direction: column; gap: 10px; align-items: center; text-align: center; text-shadow: 0 2px 22px rgba(12, 6, 14, .9), 0 0 3px rgba(12, 6, 14, .7); }
.page-title .lede { color: var(--cream); }
.section-head h2, .section-head a { text-shadow: 0 2px 18px rgba(12, 6, 14, .9); }
.notice { border: 1px solid var(--line-strong); border-left: 4px solid var(--orange); background: var(--panel-raised); border-radius: var(--radius); padding: 12px 16px; }
.notice--bad { border-left-color: var(--danger); }
.notice--good { border-left-color: var(--fern); }
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 9px 20px; border-radius: var(--radius); border: 1px solid var(--line-strong); background: rgba(248, 235, 213, .06); color: var(--cream); font-weight: 700; text-decoration: none; cursor: pointer; transition: background-color .15s, border-color .15s, transform .12s; }
.btn:hover { background: rgba(248, 235, 213, .13); color: var(--cream); border-color: var(--caramel); }
.btn:active { transform: translateY(1px); }
.btn[disabled] { opacity: .5; cursor: not-allowed; }
.btn--primary { background: var(--orange); border-color: #f5a373; color: var(--espresso); }
.btn--primary:hover { background: #f08a52; color: var(--espresso); border-color: var(--cream); }
.btn--danger { border-color: rgba(239, 141, 124, .6); color: var(--danger); }
.btn--small { min-height: 34px; padding: 4px 12px; font-size: var(--step--1); }
.btn-hero {
position: relative; display: inline-flex; align-items: center; gap: 12px; overflow: hidden;
padding: 16px 34px; min-height: 60px;
font-family: var(--font-display); font-weight: 800; font-size: 1.6rem; letter-spacing: .02em;
color: var(--espresso); text-decoration: none;
background: linear-gradient(180deg, #f39256 0%, var(--orange) 48%, #cf5d2c 100%);
clip-path: polygon(var(--notch) 0, calc(100% - var(--notch)) 0, 100% 50%, calc(100% - var(--notch)) 100%, var(--notch) 100%, 0 50%);
transition: transform .2s cubic-bezier(.2, .8, .2, 1), filter .2s;
animation: hero-pulse 3.2s ease-in-out infinite;
}
.btn-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(105deg, transparent 38%, rgba(248, 235, 213, .55) 50%, transparent 62%); transform: translateX(-120%); animation: sheen 4.5s ease-in-out infinite; }
.btn-hero:hover { color: var(--espresso); transform: translateY(-2px) scale(1.03); filter: brightness(1.08); }
.btn-hero:active { transform: translateY(1px) scale(.99); }
.btn-hero svg { width: 26px; height: 26px; flex: none; }
.btn-hero-wrap { filter: drop-shadow(0 10px 26px rgba(233, 120, 63, .45)); display: inline-block; }
@keyframes sheen { 0%, 55% { transform: translateX(-120%); } 85%, 100% { transform: translateX(120%); } }
@keyframes hero-pulse { 0%, 100% { filter: brightness(1); } 50% { filter: brightness(1.1); } }
.hero { display: flex; flex-direction: column; align-items: center; text-align: center; gap: clamp(14px, 2.4vw, 24px); padding-top: clamp(4px, 2vw, 20px); }
.hero__logo { width: min(660px, 94%); filter: drop-shadow(0 18px 40px rgba(20, 8, 20, .6)); animation: logo-float 7s ease-in-out infinite; }
@keyframes logo-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-7px); } }
.tagline { font-family: var(--font-display); font-weight: 600; font-size: clamp(1.55rem, 3.8vw, 2.5rem); line-height: 1.1; display: flex; flex-wrap: wrap; justify-content: center; gap: 0 .5em; text-shadow: 0 2px 18px rgba(29, 23, 28, .8); }
.tagline span:nth-child(1) { --i: 2; } .tagline span:nth-child(2) { --i: 3; } .tagline span:nth-child(3) { --i: 4; }
.facts { display: flex; flex-wrap: wrap; justify-content: center; padding: 0; margin: 0; list-style: none; box-shadow: 0 16px 40px rgba(8, 4, 10, .5), inset 0 1px 0 rgba(248, 235, 213, .09); background: var(--panel); border: 1px solid var(--line-strong); border-radius: var(--radius); backdrop-filter: blur(9px); -webkit-backdrop-filter: blur(9px); }
.facts li { padding: 14px clamp(16px, 3vw, 34px); display: flex; flex-direction: column; gap: 2px; align-items: center; position: relative; }
.facts li + li::before { content: ""; position: absolute; left: -4px; top: 50%; width: 7px; height: 7px; background: var(--caramel); transform: translateY(-50%) rotate(45deg); }
.facts strong { font-family: var(--font-display); font-weight: 700; font-size: var(--step-2); line-height: 1; color: var(--cream); }
.facts span { color: var(--ink-soft); font-size: var(--step--1); }
@media (max-width: 560px) { .facts { flex-direction: column; width: 100%; } .facts li + li::before { left: 50%; top: -4px; transform: translateX(-50%) rotate(45deg); } }
.enter { animation: enter .8s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(var(--i, 0) * 110ms); }
@keyframes enter { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }
.enter--logo { animation-name: enter-logo, logo-float; animation-duration: 1.1s, 7s; animation-timing-function: cubic-bezier(.2, .8, .2, 1), ease-in-out; animation-iteration-count: 1, infinite; animation-fill-mode: both, none; animation-delay: 0s, 1.1s; }
@keyframes enter-logo { from { opacity: 0; transform: scale(.92); filter: drop-shadow(0 0 0 transparent) brightness(1.6); } to { opacity: 1; transform: none; } }
.home-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
@media (max-width: 760px) { .home-grid { grid-template-columns: 1fr; } }
.countdown { display: flex; gap: clamp(8px, 2vw, 18px); flex-wrap: wrap; }
.countdown div { display: flex; flex-direction: column; align-items: center; min-width: 62px; padding: 10px 8px; background: var(--field); border: 1px solid var(--line); border-radius: var(--radius); }
.countdown b { font-family: var(--font-display); font-weight: 700; font-size: 2.3rem; line-height: 1; font-variant-numeric: tabular-nums; }
.countdown span { font-size: var(--step--1); color: var(--ink-soft); }
.status-line { display: flex; align-items: center; gap: 10px; font-weight: 700; font-size: var(--step-1); }
.pulse { width: 12px; height: 12px; border-radius: 50%; background: var(--fern); flex: none; box-shadow: 0 0 0 0 rgba(78, 155, 101, .7); animation: pulse 2s infinite; }
.pulse--closed { background: var(--caramel); animation: none; }
@keyframes pulse { 70% { box-shadow: 0 0 0 11px rgba(78, 155, 101, 0); } 100% { box-shadow: 0 0 0 0 rgba(78, 155, 101, 0); } }
.meter { height: 10px; background: var(--field); border: 1px solid var(--line); border-radius: 99px; overflow: hidden; }
.meter i { display: block; height: 100%; width: 0; background: linear-gradient(90deg, var(--fern), var(--caramel)); transition: width .8s cubic-bezier(.2, .8, .2, 1); }
.team-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 16px; }
.team-card { display: flex; flex-direction: column; gap: 12px; padding: 18px; background: linear-gradient(180deg, rgba(38, 26, 36, .92), var(--panel) 40%); box-shadow: 0 16px 40px rgba(8, 4, 10, .5), inset 0 1px 0 rgba(248, 235, 213, .08); border: 1px solid var(--line-strong); border-radius: var(--radius); backdrop-filter: blur(9px); -webkit-backdrop-filter: blur(9px); transition: transform .2s cubic-bezier(.2, .8, .2, 1), border-color .2s; min-width: 0; }
.team-card:hover { transform: translateY(-3px); border-color: var(--line-strong); }
.team-card__top { display: flex; align-items: center; gap: 12px; min-width: 0; }
.team-card__top h3 { overflow-wrap: anywhere; }
.crest { width: 56px; height: 56px; flex: none; border-radius: 8px; object-fit: cover; background: var(--field); }
.crest--lg { width: 104px; height: 104px; }
.crest--sm { width: 28px; height: 28px; border-radius: 5px; }
.tag { font-size: var(--step--1); color: var(--caramel); font-weight: 700; }
.roster { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; font-size: .98rem; }
.roster li { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 0 10px; min-width: 0; }
.roster li > span:first-child { overflow-wrap: anywhere; }
.roster small { color: var(--ink-faint); white-space: nowrap; font-size: var(--step--1); }
.role-dot { display: inline-block; width: 8px; height: 8px; border-radius: 2px; margin-right: 7px; transform: rotate(45deg); background: var(--caramel); }
.role-tank { background: var(--orange); } .role-damage { background: var(--raspberry); } .role-support { background: var(--fern); } .role-flex { background: var(--amethyst); }
.chip { display: inline-flex; align-items: center; gap: 6px; padding: 2px 10px; border-radius: 99px; border: 1px solid var(--line-strong); font-size: var(--step--1); font-weight: 700; white-space: nowrap; }
.chip--live { border-color: var(--raspberry); color: #f4a5bf; }
.chip--done, .chip--approved { border-color: var(--fern); color: #9fd3ae; }
.chip--pending, .chip--ready { border-color: var(--caramel); color: var(--caramel); }
.chip--rejected, .chip--withdrawn { border-color: rgba(239, 141, 124, .6); color: var(--danger); }
.empty { text-align: center; color: var(--ink-soft); padding: clamp(20px, 5vw, 44px) 12px; display: flex; flex-direction: column; align-items: center; gap: 12px; }
.empty svg { width: 54px; height: 54px; opacity: .7; }
.field { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.field label, .legend { font-weight: 700; }
.field .hint { color: var(--ink-faint); font-size: var(--step--1); }
.field .err { color: var(--danger); font-size: var(--step--1); min-height: 1.2em; }
.input, select.input, textarea.input { width: 100%; min-height: 46px; padding: 10px 12px; background: var(--field); border: 1px solid var(--line-strong); border-radius: var(--radius); transition: border-color .15s, box-shadow .15s; }
.input:focus { outline: none; border-color: var(--orange); box-shadow: 0 0 0 3px rgba(233, 120, 63, .28); }
.input[aria-invalid="true"] { border-color: var(--danger); }
.input.is-valid { border-color: rgba(78, 155, 101, .85); }
textarea.input { min-height: 220px; resize: vertical; line-height: 1.45; }
.grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
@media (max-width: 620px) { .grid-2 { grid-template-columns: 1fr; } }
.check { display: flex; gap: 12px; align-items: flex-start; cursor: pointer; }
.check input { width: 22px; height: 22px; margin-top: 2px; accent-color: var(--orange); flex: none; }
.steps { list-style: none; display: flex; padding: 0; margin: 0 0 6px; gap: 6px; counter-reset: step; }
.steps li { flex: 1; counter-increment: step; display: flex; flex-direction: column; gap: 8px; color: var(--ink-faint); font-size: var(--step--1); font-weight: 700; min-width: 0; }
.steps li::before { content: ""; height: 6px; border-radius: 99px; background: rgba(248, 235, 213, .14); transition: background-color .4s; }
.steps li span::before { content: counter(step) ". "; }
.steps li.is-done::before { background: var(--fern); }
.steps li.is-current { color: var(--cream); }
.steps li.is-current::before { background: linear-gradient(90deg, var(--orange), var(--raspberry)); }
@media (max-width: 560px) { .steps li span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } }
.step-pane { display: flex; flex-direction: column; gap: 20px; }
.step-pane.go-next { animation: pane-next .42s cubic-bezier(.2, .8, .2, 1) both; }
.step-pane.go-back { animation: pane-back .42s cubic-bezier(.2, .8, .2, 1) both; }
@keyframes pane-next { from { opacity: 0; transform: translateX(34px); } to { opacity: 1; transform: none; } }
@keyframes pane-back { from { opacity: 0; transform: translateX(-34px); } to { opacity: 1; transform: none; } }
.step-actions { display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; padding-top: 8px; border-top: 1px solid var(--line); }
.preview-card { display: flex; align-items: center; gap: 16px; padding: 16px; background: var(--field); border: 1px dashed var(--line-strong); border-radius: var(--radius); min-width: 0; }
.preview-card h3 { overflow-wrap: anywhere; }
.slot { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1.3fr) minmax(0, 1fr) minmax(0, 1fr); gap: 10px; align-items: start; padding: 12px; background: rgba(18, 13, 17, .42); border: 1px solid var(--line); border-radius: var(--radius); }
.slot__n { grid-column: 1 / -1; display: flex; justify-content: space-between; align-items: center; gap: 12px; font-weight: 700; color: var(--caramel); }
.slot__peaks { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; border: 0; padding: 0; margin: 0; min-width: 0; }
.slot__peaks legend { padding: 0 0 4px; font-size: var(--step--1); font-weight: 700; color: var(--ink-soft); }
.slot__peaks .err { grid-column: 1 / -1; }
@media (max-width: 620px) { .slot__peaks { grid-template-columns: 1fr; } }
.slot .field label { font-weight: 500; font-size: var(--step--1); color: var(--ink-soft); }
@media (max-width: 620px) { .slot { grid-template-columns: 1fr 1fr; } .slot .field--tag { grid-column: 1 / -1; } }
.cap-pick { display: inline-flex; gap: 8px; align-items: center; font-weight: 500; color: var(--ink-soft); cursor: pointer; font-size: var(--step--1); }
.cap-pick input { accent-color: var(--orange); width: 18px; height: 18px; }
.review dl { display: grid; grid-template-columns: auto 1fr; gap: 6px 18px; margin: 0; }
.review dt { color: var(--ink-faint); } .review dd { margin: 0; overflow-wrap: anywhere; }
.rules-box { max-height: 260px; overflow: auto; padding: 14px 16px; background: var(--field); border: 1px solid var(--line); border-radius: var(--radius); }
.rules h3 { margin: 18px 0 8px; color: var(--caramel); } .rules h3:first-child { margin-top: 0; }
.rules h4 { font-family: var(--font-display); font-weight: 700; font-size: 1.15rem; margin: 14px 0 6px; color: var(--cream); }
.rules ul { margin: 0; padding-left: 1.2em; display: flex; flex-direction: column; gap: 6px; }
.rules p { margin-bottom: 8px; max-width: 70ch; }
.sealed { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 18px; }
.seal { position: relative; width: 150px; height: 150px; display: grid; place-items: center; }
.seal svg { width: 118px; height: 118px; animation: seal-stamp .7s cubic-bezier(.2, 1.5, .4, 1) both; filter: drop-shadow(0 8px 22px rgba(233, 120, 63, .55)); }
.seal::before, .seal::after { content: ""; position: absolute; inset: 10px; border-radius: 50%; border: 2px solid var(--orange); animation: seal-ring 1.5s .45s ease-out both; }
.seal::after { border-color: var(--raspberry); animation-delay: .7s; }
.seal .check-path { stroke-dasharray: 60; stroke-dashoffset: 60; animation: draw .5s .6s ease-out forwards; }
@keyframes seal-stamp { from { opacity: 0; transform: scale(2.2) rotate(-14deg); } to { opacity: 1; transform: none; } }
@keyframes seal-ring { from { opacity: .9; transform: scale(.6); } to { opacity: 0; transform: scale(1.7); } }
@keyframes draw { to { stroke-dashoffset: 0; } }
.code-box { font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace; font-size: 1.5rem; letter-spacing: .08em; padding: 12px 20px; background: var(--field); border: 1px solid var(--line-strong); border-radius: var(--radius); user-select: all; }
.bracket-shell { position: relative; background: linear-gradient(180deg, rgba(30, 21, 29, .95), rgba(19, 13, 18, .95)); border: 1px solid var(--line-strong); border-radius: var(--radius); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); box-shadow: 0 26px 70px rgba(6, 3, 8, .65), inset 0 1px 0 rgba(248, 235, 213, .09); overflow: hidden; }
.bracket-viewport { position: relative; height: min(70vh, 720px); min-height: 380px; overflow: hidden; cursor: grab; touch-action: none; user-select: none; }
.bracket-viewport.is-dragging { cursor: grabbing; }
.bracket-viewport--static { height: auto; min-height: 0; cursor: default; touch-action: auto; }
.bracket-stage { position: absolute; left: 0; top: 0; transform-origin: 0 0; will-change: transform; }
.bracket-stage.is-animated { transition: transform .45s cubic-bezier(.2, .8, .2, 1); }
.bracket-stage > svg { position: absolute; left: 0; top: 0; overflow: visible; }
.bk-line { fill: none; stroke: rgba(201, 150, 105, .32); stroke-width: 2; }
.bk-line--won { stroke: var(--orange); stroke-width: 3; stroke-dasharray: var(--len, 400); stroke-dashoffset: var(--len, 400); animation: draw .9s cubic-bezier(.4, 0, .2, 1) forwards; animation-delay: calc(var(--r, 0) * 260ms + 200ms); }
.bk-round { position: absolute; top: 0; font-family: var(--font-display); font-weight: 700; font-size: 1.25rem; color: var(--caramel); white-space: nowrap; }
.match { position: absolute; width: 236px; padding: 0; text-align: left; color: var(--ink); background: linear-gradient(180deg, #33242f, #261b24); border: 1px solid var(--line); border-radius: var(--radius); cursor: pointer; overflow: hidden; transition: border-color .2s, transform .2s, box-shadow .2s; display: block; }
.match:hover, .match:focus-visible { border-color: var(--caramel); transform: translateY(-2px); box-shadow: 0 10px 24px rgba(0, 0, 0, .4); }
.match__row { display: flex; align-items: center; gap: 8px; height: 36px; padding: 0 10px 0 8px; color: var(--ink-soft); }
.match__row + .match__row { border-top: 1px solid rgba(201, 150, 105, .16); }
.match__name { flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 500; }
.match__score { font-family: var(--font-display); font-weight: 700; font-size: 1.25rem; font-variant-numeric: tabular-nums; min-width: 1ch; text-align: right; }
.match__row.is-winner { color: var(--cream); background: linear-gradient(90deg, rgba(233, 120, 63, .26), transparent 85%); }
.match__row.is-winner .match__name { font-weight: 700; }
.match__row.is-loser { color: var(--ink-faint); }
.match__row.is-tbd .match__name { font-style: italic; color: var(--ink-faint); }
.match__foot { display: flex; justify-content: space-between; gap: 8px; padding: 3px 10px; font-size: .8rem; color: var(--ink-faint); background: rgba(18, 13, 17, .5); border-top: 1px solid rgba(201, 150, 105, .16); height: 24px; white-space: nowrap; overflow: hidden; }
.match--live { border-color: var(--raspberry); box-shadow: 0 0 0 1px var(--raspberry), 0 0 26px rgba(220, 102, 140, .35); }
.match--live .match__foot b { color: #f4a5bf; }
.match--bye { opacity: .62; }
.match.is-fresh { animation: fresh 1.6s ease-out; }
@keyframes fresh { 0% { box-shadow: 0 0 0 0 rgba(233, 120, 63, .9); } 100% { box-shadow: 0 0 0 26px rgba(233, 120, 63, 0); } }
.champion { position: absolute; width: 236px; display: flex; flex-direction: column; align-items: center; gap: 8px; text-align: center; padding: 14px; border: 1px solid var(--orange); border-radius: var(--radius); background: linear-gradient(180deg, rgba(233, 120, 63, .22), var(--panel-solid)); }
.champion b { font-family: var(--font-display); font-size: 1.5rem; line-height: 1.1; overflow-wrap: anywhere; }
.bracket-tools { position: absolute; right: 12px; bottom: 12px; display: flex; gap: 6px; z-index: 2; }
.bracket-tools .btn { min-width: 44px; padding: 6px 10px; background: rgba(29, 23, 28, .9); }
.round-tabs { display: flex; gap: 8px; overflow-x: auto; padding: 12px; border-bottom: 1px solid var(--line); scrollbar-width: thin; }
.round-tabs .btn { flex: none; }
.bracket-hint { color: var(--ink-faint); font-size: var(--step--1); }
dialog.modal { width: min(560px, calc(100vw - 32px)); max-height: calc(100vh - 48px); padding: 0; border: 1px solid var(--line-strong); border-radius: var(--radius); background: var(--panel-solid); color: var(--ink); box-shadow: 0 30px 80px rgba(0, 0, 0, .6); }
dialog.modal::backdrop { background: rgba(14, 9, 14, .72); backdrop-filter: blur(3px); }
dialog.modal[open] { animation: enter .3s cubic-bezier(.2, .8, .2, 1) both; }
.modal__body { padding: clamp(18px, 4vw, 28px); display: flex; flex-direction: column; gap: 18px; }
.versus { display: grid; grid-template-columns: 1fr auto 1fr; gap: 12px; align-items: start; }
.versus > div { display: flex; flex-direction: column; align-items: center; gap: 8px; text-align: center; min-width: 0; }
.versus h3 { overflow-wrap: anywhere; }
.versus .big { font-family: var(--font-display); font-weight: 800; font-size: 3rem; line-height: 1; font-variant-numeric: tabular-nums; }
.versus .mid { align-self: center; color: var(--ink-faint); font-family: var(--font-display); font-size: 1.4rem; }
.versus .is-winner .big { color: var(--orange); }
.modal .roster { width: 100%; text-align: left; }
.tabs { display: flex; gap: 6px; flex-wrap: wrap; border-bottom: 1px solid var(--line); }
.tabs button { background: none; border: 0; padding: 10px 16px; font-weight: 700; color: var(--ink-soft); cursor: pointer; border-bottom: 3px solid transparent; }
.tabs button[aria-selected="true"] { color: var(--cream); border-bottom-color: var(--orange); }
.table-wrap { overflow-x: auto; }
table.data { width: 100%; border-collapse: collapse; min-width: 640px; }
table.data th, table.data td { text-align: left; padding: 10px 12px; border-bottom: 1px solid rgba(201, 150, 105, .18); vertical-align: top; }
table.data th { color: var(--ink-faint); font-weight: 700; font-size: var(--step--1); }
.admin-match { display: grid; grid-template-columns: minmax(0, 1fr) 64px 64px minmax(110px, auto) auto; gap: 8px; align-items: center; padding: 10px 0; border-bottom: 1px solid rgba(201, 150, 105, .18); }
.admin-match .input { min-height: 38px; padding: 6px 8px; }
@media (max-width: 680px) { .admin-match { grid-template-columns: 1fr 1fr; } .admin-match > :first-child { grid-column: 1 / -1; } }
details.fold { border: 1px solid var(--line); border-radius: var(--radius); padding: 10px 14px; background: rgba(18, 13, 17, .4); }
details.fold summary { cursor: pointer; font-weight: 700; }
.toast { position: fixed; left: 50%; bottom: calc(24px + env(safe-area-inset-bottom, 0px)); transform: translateX(-50%); z-index: 50; background: var(--cream); color: var(--espresso); font-weight: 700; padding: 10px 18px; border-radius: var(--radius); box-shadow: 0 12px 30px rgba(0, 0, 0, .5); animation: enter .3s both; max-width: calc(100vw - 32px); }
.toast--bad { background: var(--danger); }
@media (prefers-reduced-motion: reduce) {
html { scroll-behavior: auto; }
*, *::before, *::after { animation-duration: .001ms !important; animation-delay: 0s !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
.scene__img, .scene canvas { transform: none !important; }
.bk-line--won { stroke-dashoffset: 0; }
.seal .check-path { stroke-dashoffset: 0; }
}
.scene--static .scene__lighta, .scene--static .scene__lightb, .scene--static .trophy__banner { animation: none; }
.bk-section { position: absolute; font-family: var(--font-display); font-weight: 800; font-size: 1.7rem; color: var(--cream); white-space: nowrap; }
.pips { display: inline-flex; gap: 3px; margin-right: 6px; vertical-align: middle; }
.pip { width: 7px; height: 7px; border-radius: 50%; border: 1px solid var(--caramel); display: block; }
.pip--a, .pip--b { background: var(--orange); border-color: var(--orange); }
.match.is-dim { opacity: .3; }
.match.is-followed { border-color: var(--cream); box-shadow: 0 0 0 2px var(--orange), 0 0 30px rgba(233, 120, 63, .4); }
.champion--crowned { border-color: var(--orange); background: linear-gradient(180deg, rgba(233, 120, 63, .3), var(--panel-solid)); animation: crowned 2.6s ease-in-out infinite; }
@keyframes crowned { 0%, 100% { box-shadow: 0 0 0 0 rgba(233, 120, 63, 0); } 50% { box-shadow: 0 0 34px 2px rgba(233, 120, 63, .45); } }
.champion:not(.champion--crowned) { border-color: var(--line); background: var(--panel-solid); }
.follow-bar { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; }
.follow-bar .input { max-width: 300px; min-height: 40px; padding: 6px 10px; }
.maplist, .pathlist, .tally { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.maplist li { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 8px 12px; background: var(--field); border: 1px solid var(--line); border-radius: var(--radius); counter-increment: map; }
.maplist { counter-reset: map; }
.maplist li > span:first-child::before { content: counter(map) ". "; color: var(--ink-faint); }
.maplist small { color: var(--ink-faint); }
.maplist li.is-open { border-color: var(--raspberry); }
@media (max-width: 560px) { .maplist li { grid-template-columns: 1fr auto; } .maplist small { display: none; } }
.pathlist__row { width: 100%; display: grid; grid-template-columns: 4.5ch minmax(0, 1fr) auto; gap: 12px; align-items: center; text-align: left; padding: 9px 12px; background: var(--field); border: 1px solid var(--line); border-radius: var(--radius); color: var(--ink); cursor: pointer; }
button.pathlist__row:hover { border-color: var(--caramel); }
.pathlist__row b { color: var(--caramel); }
@media (max-width: 560px) { .pathlist__row { grid-template-columns: 4.5ch 1fr; } .pathlist__row > :last-child { grid-column: 2; justify-self: start; } }
.tracker { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.tracker button { width: 100%; height: 100%; display: flex; align-items: center; gap: 12px; text-align: left; padding: 12px 14px; background: var(--panel); border: 1px solid var(--line); border-radius: var(--radius); color: var(--ink-soft); cursor: pointer; backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); transition: border-color .2s, transform .2s; }
.tracker button:hover { border-color: var(--caramel); transform: translateY(-2px); }
.tracker button[aria-current="step"] { border-color: var(--orange); color: var(--cream); box-shadow: inset 0 -3px 0 var(--orange); }
.tracker b { display: block; font-family: var(--font-display); font-size: 1.2rem; line-height: 1.1; }
.tracker small { color: var(--ink-faint); }
.tracker__n { flex: none; width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; border: 2px solid var(--line-strong); font-family: var(--font-display); font-weight: 800; font-size: 1.2rem; }
.tracker .is-done .tracker__n { background: var(--fern); border-color: var(--fern); color: var(--espresso); }
.tracker .is-current .tracker__n { background: var(--orange); border-color: var(--orange); color: var(--espresso); animation: hero-pulse 2.4s ease-in-out infinite; }
.tracker .is-current small { color: var(--caramel); }
.tracker .is-locked button { opacity: .62; }
@media (max-width: 700px) { .tracker { grid-template-columns: 1fr; } }
.vote-panel > .stack { gap: 18px; }
.vote-clock { font-family: var(--font-display); font-size: 1.5rem; font-variant-numeric: tabular-nums; color: var(--orange); margin-left: 4px; }
.vote-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 12px; }
.vote-grid--maps { grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); }
.vote-card { position: relative; display: flex; flex-direction: column; gap: 4px; padding: 0 0 12px; text-align: left; background: var(--field); border: 1px solid var(--line-strong); border-radius: var(--radius); color: var(--ink); overflow: hidden; cursor: pointer; transition: transform .18s cubic-bezier(.2, .8, .2, 1), border-color .18s, box-shadow .18s; }
.vote-card b, .vote-card small { padding: 0 12px; }
.vote-card b { font-family: var(--font-display); font-size: 1.25rem; line-height: 1.15; margin-top: 8px; overflow-wrap: anywhere; }
.vote-card small { color: var(--ink-faint); }
button.vote-card:not([disabled]):hover { transform: translateY(-3px); border-color: var(--caramel); }
.vote-card[disabled] { cursor: default; }
.vote-card__mark { position: absolute; top: 10px; right: 10px; padding: 2px 10px; border-radius: 99px; background: var(--fern); color: var(--espresso); font-weight: 700; font-size: var(--step--1); transform: scale(0) rotate(-12deg); transition: transform .28s cubic-bezier(.2, 1.6, .4, 1); }
.vote-card[aria-pressed="true"] { border-color: var(--fern); box-shadow: 0 0 0 2px var(--fern), 0 10px 26px rgba(78, 155, 101, .28); }
.vote-card[aria-pressed="true"] .vote-card__mark { transform: none; }
.vote-card--ban .vote-card__mark { background: var(--raspberry); }
.vote-card--ban[aria-pressed="true"] { border-color: var(--raspberry); box-shadow: 0 0 0 2px var(--raspberry), 0 10px 26px rgba(220, 102, 140, .28); }
.vote-card--ban[aria-pressed="true"] .map-art { filter: grayscale(.8) brightness(.55); }
.vote-card--pool { cursor: default; border-color: var(--line-strong); }
.map-art { position: relative; display: inline-grid; place-items: center; width: 30px; height: 30px; border-radius: 5px; vertical-align: middle; color: var(--cream); overflow: hidden; flex: none; background: linear-gradient(140deg, var(--amethyst), #3a2148); transition: filter .25s; }
.map-art svg { width: 62%; height: 62%; opacity: .92; }
.map-art img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.map-art--big { display: grid; width: 100%; height: auto; aspect-ratio: 16 / 9; border-radius: 0; }
.map-art--big svg { width: 34%; height: auto; opacity: .5; }
.map-art--big::after { content: ""; position: absolute; inset: 0; background: radial-gradient(120% 90% at 20% 0%, rgba(248, 235, 213, .18), transparent 55%), linear-gradient(180deg, transparent 50%, rgba(18, 13, 17, .55)); }
.map-art--escort { background: linear-gradient(140deg, var(--orange), #5a2a18); }
.map-art--hybrid { background: linear-gradient(140deg, var(--raspberry), #4a1f33); }
.map-art--push { background: linear-gradient(140deg, var(--fern), #173524); }
.map-art--flashpoint { background: linear-gradient(140deg, var(--caramel), #4a3120); }
.map-art--assault { background: linear-gradient(140deg, var(--cocoa), #24161a); }
.tally li { display: grid; grid-template-columns: minmax(0, 190px) minmax(40px, 1fr) auto auto; gap: 12px; align-items: center; }
.tally li > span:first-child { display: flex; align-items: center; gap: 8px; min-width: 0; overflow-wrap: anywhere; }
.tally__bar { height: 12px; background: var(--field); border: 1px solid var(--line); border-radius: 99px; overflow: hidden; }
.tally__bar i { display: block; height: 100%; width: var(--w, 0%); background: linear-gradient(90deg, var(--cocoa), var(--caramel)); border-radius: 99px; }
.tally li.is-in .tally__bar i { background: linear-gradient(90deg, var(--orange), var(--raspberry)); }
.tally li.is-out { color: var(--ink-faint); }
.tally--reveal .tally__bar i { animation: bar-grow 1s cubic-bezier(.2, .8, .2, 1) both; animation-delay: calc(var(--i, 0) * 140ms + 200ms); }
.tally--reveal li { animation: enter .6s both; animation-delay: calc(var(--i, 0) * 140ms); }
@keyframes bar-grow { from { width: 0; } }
@media (max-width: 560px) { .tally li { grid-template-columns: minmax(0, 1fr) auto auto; } .tally__bar { grid-column: 1 / -1; grid-row: 2; } }
.cast-note { display: flex; align-items: center; gap: 12px; padding: 10px 14px; border: 1px solid var(--fern); border-radius: var(--radius); background: rgba(78, 155, 101, .16); animation: enter .4s both; }
.cast-note svg { width: 38px; height: 38px; flex: none; animation: seal-stamp .6s cubic-bezier(.2, 1.5, .4, 1) both; }
.cast-note .check-path { stroke-dasharray: 60; stroke-dashoffset: 60; animation: draw .45s .45s ease-out forwards; }
.pool-mode { animation: enter .7s both; animation-delay: calc(var(--i, 0) * 160ms); }
.pool-mode h3 { display: flex; align-items: center; gap: 10px; }
.laurel { display: flex; flex-wrap: wrap; align-items: center; gap: 18px; }
.laurel__name { font-size: var(--step-3); overflow-wrap: anywhere; }
.trophy { display: grid; grid-template-columns: 220px minmax(0, 1fr); background: linear-gradient(180deg, rgba(36, 24, 38, .93), rgba(22, 16, 21, .95)); border: 1px solid rgba(214, 170, 96, .6); border-radius: var(--radius); box-shadow: 0 24px 60px rgba(8, 4, 10, .55), inset 0 1px 0 rgba(248, 235, 213, .1); overflow: hidden; }
.trophy__banner { position: relative; display: flex; flex-direction: column; align-items: center; gap: 14px; padding: 26px 16px 56px; background: linear-gradient(180deg, #6d3a8e, #3d2152 70%); clip-path: polygon(0 0, 100% 0, 100% 100%, 50% calc(100% - 34px), 0 100%); border-right: 1px solid rgba(214, 170, 96, .5); transform-origin: 50% 0; animation: banner-sway 9s ease-in-out infinite; }
.trophy__banner::before { content: ""; position: absolute; inset: 8px 8px 0; border: 1px solid rgba(214, 170, 96, .7); border-bottom: 0; pointer-events: none; }
.trophy__edition { font-family: var(--font-display); font-weight: 800; font-size: 3rem; line-height: 1; color: #e7c27a; text-shadow: 0 2px 14px rgba(0, 0, 0, .5); }
.trophy__body { padding: clamp(18px, 3vw, 30px); }
.trophy__name { font-size: var(--step-4); color: #f3d594; overflow-wrap: anywhere; }
.trophy + .trophy { margin-top: 24px; }
@media (max-width: 680px) { .trophy { grid-template-columns: 1fr; } .trophy__banner { flex-direction: row; justify-content: center; padding: 18px 16px 48px; border-right: 0; } }
.archive-card { text-decoration: none; color: var(--ink); gap: 8px; }
.archive-card:hover { color: var(--ink); }
.archive-card .trophy__edition { font-size: 2.2rem; }
.chat { display: grid; grid-template-columns: 260px minmax(0, 1fr); background: linear-gradient(180deg, rgba(34, 24, 33, .95), rgba(21, 15, 20, .96)); border: 1px solid var(--line-strong); border-radius: var(--radius); box-shadow: 0 26px 70px rgba(6, 3, 8, .65), inset 0 1px 0 rgba(248, 235, 213, .09); overflow: hidden; height: min(72vh, 720px); min-height: 440px; }
.chat__rooms { display: flex; flex-direction: column; gap: 4px; padding: 12px; border-right: 1px solid var(--line); overflow-y: auto; min-width: 0; }
.chat__room { display: flex; align-items: center; justify-content: space-between; gap: 8px; width: 100%; padding: 10px 12px; text-align: left; background: none; border: 1px solid transparent; border-radius: var(--radius); color: var(--ink-soft); font-weight: 500; cursor: pointer; }
.chat__room span:first-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.chat__room:hover { background: rgba(248, 235, 213, .07); color: var(--cream); }
.chat__room.is-active { background: rgba(233, 120, 63, .16); border-color: var(--orange); color: var(--cream); font-weight: 700; }
.chat__dot { width: 10px; height: 10px; border-radius: 50%; background: var(--raspberry); flex: none; box-shadow: 0 0 0 3px rgba(220, 102, 140, .25); }
.chat__label { margin: 10px 4px 2px; font-size: var(--step--1); font-weight: 700; color: var(--caramel); }
.chat__me { margin-top: auto; padding: 10px 4px 0; font-size: var(--step--1); }
.chat__main { display: flex; flex-direction: column; min-width: 0; min-height: 0; }
.chat__head { padding: 14px 18px; border-bottom: 1px solid var(--line); }
.chat__head h2 { font-size: var(--step-2); }
.chat__log { flex: 1; min-height: 0; overflow-y: auto; display: flex; flex-direction: column; gap: 10px; padding: 16px 18px; }
.chat__form { display: flex; gap: 10px; padding: 12px 18px; border-top: 1px solid var(--line); align-items: flex-end; }
.chat__form textarea.input { min-height: 48px; max-height: 140px; resize: none; }
.chat__main > .err { padding: 0 18px 8px; }
.msg { max-width: min(78%, 640px); align-self: flex-start; padding: 8px 12px 10px; background: var(--field); border: 1px solid var(--line); border-radius: 4px 12px 12px 12px; }
.msg header { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; font-size: var(--step--1); margin-bottom: 2px; }
.msg header b { color: var(--caramel); }
.msg header time { color: var(--ink-faint); }
.msg header .chip { padding: 0 8px; font-size: .78rem; border-color: var(--amethyst); color: #cfa6ea; }
.msg p { white-space: pre-wrap; overflow-wrap: anywhere; }
.msg--admin { border-color: rgba(140, 77, 177, .7); }
.msg--mine { align-self: flex-end; background: rgba(233, 120, 63, .16); border-color: rgba(233, 120, 63, .6); border-radius: 12px 4px 12px 12px; }
.msg--removed p { font-style: italic; color: var(--ink-faint); }
.msg__remove { margin-left: auto; background: none; border: 0; padding: 0 2px; color: var(--ink-faint); font-size: .8rem; text-decoration: underline; cursor: pointer; }
.msg__remove:hover { color: var(--danger); }
@media (max-width: 720px) {
.chat { grid-template-columns: 1fr; height: auto; min-height: 0; }
.chat__rooms { flex-direction: row; flex-wrap: nowrap; overflow-x: auto; border-right: 0; border-bottom: 1px solid var(--line); }
.chat__room { width: auto; flex: none; }
.chat__label, .chat__me { display: none; }
.chat__log { height: 52vh; flex: none; }
.msg { max-width: 92%; }
}
h3 { font-family: var(--font-body); font-weight: 700; line-height: 1.2; letter-spacing: 0; }
.rules h3, .pool-mode h3, .laurel__name, .trophy__name { font-family: var(--font-display); letter-spacing: .01em; }
.rules h3 { font-size: 1.5rem; }
.rules h4 { font-family: var(--font-body); font-size: 1.12rem; }
.rules li, .rules p { line-height: 1.6; }
.rules ul { gap: 8px; }
.tracker b, .vote-card b { font-family: var(--font-body); font-weight: 700; font-size: 1.1rem; }
.bk-round { font-family: var(--font-body); font-size: 1rem; letter-spacing: .01em; }
.match__score { font-family: var(--font-body); font-size: 1.1rem; }
.match__name { font-size: 1rem; }
.match__foot { font-size: .82rem; color: var(--ink-soft); }
.versus .big, .countdown b, .facts strong, .bk-section, .trophy__edition { font-family: var(--font-display); }
.hint, .field .hint { color: var(--ink-soft); }
.btn { font-size: 1rem; line-height: 1.2; }
.field label, .legend { font-size: 1rem; }
.site-header .wrap { gap: 16px; }
.nav { gap: 2px; }
.nav a { white-space: nowrap; font-size: 1rem; padding: 8px 11px; border-radius: var(--radius); }
.nav a:focus-visible { outline-offset: 1px; }
.nav a[aria-current="page"] { color: var(--cream); background: rgba(248, 235, 213, .06); box-shadow: inset 0 -2px 0 var(--orange); border-radius: var(--radius) var(--radius) 0 0; }
.nav .nav__cta { padding: 8px 16px; box-shadow: 0 6px 18px rgba(233, 120, 63, .3); transition: background-color .15s, transform .12s, box-shadow .15s; }
.nav .nav__cta:hover { transform: translateY(-1px); box-shadow: 0 8px 22px rgba(233, 120, 63, .42); }
.nav .nav__cta[aria-current="page"] { background: var(--orange); color: var(--espresso); box-shadow: inset 0 0 0 2px var(--cream); border-radius: var(--radius); }
.nav-toggle { font-weight: 700; min-height: 40px; }
.nav-toggle:hover { border-color: var(--cream); }
@media (max-width: 920px) {
.nav a[aria-current="page"] { box-shadow: inset 3px 0 0 var(--orange); border-radius: var(--radius); }
.nav { max-height: calc(100vh - 64px); overflow-y: auto; }
}
@media (max-width: 420px) { .brand span { font-size: 1.15rem; } .brand img { width: 50px; } }
.hero { gap: clamp(8px, 2.2vh, 24px); padding-top: clamp(0px, 1.5vh, 20px); }
.hero__logo { width: clamp(250px, calc((100vh - 262px) * 1.5), 720px); max-width: 94%; height: auto; }
@supports (height: 100svh) { .hero__logo { width: clamp(250px, calc((100svh - 262px) * 1.5), 720px); } }
.tagline { font-size: clamp(1.3rem, min(3.8vw, 5.4vh), 2.5rem); }
.btn-hero { font-size: clamp(1.2rem, 3.4vh, 1.6rem); min-height: clamp(46px, 7.4vh, 60px); padding: clamp(9px, 1.8vh, 16px) clamp(22px, 4vw, 34px); }
main { padding-block: clamp(12px, 3vh, 44px) clamp(48px, 8vw, 96px); }
@media (max-height: 620px) { .site-header .wrap { min-height: 54px; } .brand img { width: 52px; } html { scroll-padding-top: 70px; } }
@media (max-width: 560px) { .btn-hero { width: 100%; justify-content: center; } .btn-hero-wrap { width: 100%; } }
.scene__veil { background:
linear-gradient(180deg, rgba(20, 13, 22, .42) 0%, rgba(20, 13, 22, 0) 20%, rgba(20, 13, 22, 0) 58%, rgba(20, 13, 22, .62) 88%, rgba(20, 13, 22, .9) 100%),
radial-gradient(120% 85% at 50% 40%, rgba(20, 13, 22, .12), rgba(20, 13, 22, .5) 100%); }
.scene[data-atmosphere="gate"] .scene__veil { background:
linear-gradient(180deg, rgba(20, 13, 22, .42) 0%, rgba(20, 13, 22, 0) 20%, rgba(20, 13, 22, 0) 58%, rgba(20, 13, 22, .62) 88%, rgba(20, 13, 22, .9) 100%),
radial-gradient(46% 42% at 50% 40%, rgba(20, 13, 22, .46), rgba(20, 13, 22, 0) 100%),
radial-gradient(120% 85% at 50% 40%, rgba(20, 13, 22, .1), rgba(20, 13, 22, .46) 100%); }
.scene[data-atmosphere="arena"] .scene__veil, .scene[data-atmosphere="library"] .scene__veil { background:
linear-gradient(180deg, rgba(16, 10, 18, .5) 0%, rgba(16, 10, 18, .1) 22%, rgba(16, 10, 18, .1) 58%, rgba(16, 10, 18, .7) 88%, rgba(16, 10, 18, .92) 100%),
radial-gradient(110% 80% at 50% 38%, rgba(16, 10, 18, .3), rgba(16, 10, 18, .62) 100%); }
.site-footer { background: rgba(20, 13, 22, .92); }
.notice { background: rgba(46, 33, 42, .94); }
.tracker button, .team-card, .facts { border-color: var(--line-strong); }
.tracker button { background: linear-gradient(180deg, rgba(38, 26, 36, .92), var(--panel) 60%); box-shadow: 0 12px 30px rgba(8, 4, 10, .45), inset 0 1px 0 rgba(248, 235, 213, .08); }
.input::placeholder { color: var(--ink-faint); }
.input:disabled { opacity: .6; cursor: not-allowed; }
.btn:focus-visible, .input:focus-visible, .vote-card:focus-visible, .match:focus-visible, .chat__room:focus-visible { outline: 2px solid var(--cream); outline-offset: 2px; }
table.data th { color: var(--ink-soft); }
.bk-section--upper { color: #f6b98d; }
.bk-section--lower { color: #f0a3bd; }
.bk-divide { position: absolute; left: 0; height: 1px; background: linear-gradient(90deg, rgba(220, 102, 140, .7), rgba(220, 102, 140, 0)); }
.bk-zone { position: absolute; left: -16px; border-left: 3px solid rgba(233, 120, 63, .55); border-radius: 2px; }
.bk-zone--lower { border-left-color: rgba(220, 102, 140, .6); }
.match__foot b { color: var(--caramel); }
.round-tabs { background: rgba(18, 13, 17, .5); }
@media (max-width: 560px) { .bracket-viewport { height: 66vh; } .bracket-tools { right: 8px; bottom: 8px; } }
.vote-card[disabled]:not([aria-pressed="true"]) { opacity: .72; filter: saturate(.75); }
.vote-card[disabled] { cursor: not-allowed; }
.tracker .is-locked button { border-style: dashed; opacity: .7; }
.tracker .is-locked .tracker__n { border-style: dashed; }
.tracker .is-current button { border-color: var(--orange); }
.vote-clock { font-family: var(--font-display); }
@media (max-width: 420px) { .vote-grid, .vote-grid--maps { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; } .vote-card b { font-size: 1rem; } }
.home-line { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; }
.home-line b { color: var(--caramel); }
.stream-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.stream-grid--one { grid-template-columns: minmax(0, 1fr); max-width: 980px; margin-inline: auto; width: 100%; }
@media (max-width: 900px) { .stream-grid { grid-template-columns: minmax(0, 1fr); } }
.stream { display: flex; flex-direction: column; background: linear-gradient(180deg, rgba(34, 24, 33, .95), rgba(21, 15, 20, .96)); border: 1px solid var(--line-strong); border-radius: var(--radius); box-shadow: 0 22px 60px rgba(6, 3, 8, .6), inset 0 1px 0 rgba(248, 235, 213, .09); overflow: hidden; min-width: 0; }
.stream__head { padding: 12px 16px; }
.stream__head h2 { font-size: var(--step-2); }
.stream__frame { position: relative; aspect-ratio: 16 / 9; background: #0d090c; max-width: 100%; }
.stream__frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.stream__povs { padding: 10px 16px 14px; justify-content: space-between; }
.watch-strip { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; }
.stream-invite { display: flex; flex-direction: column; gap: 4px; border-left-color: var(--amethyst); }
.sched { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.sched__row { display: grid; grid-template-columns: 132px 150px minmax(0, 1fr) auto; gap: 6px 14px; align-items: center; padding: 10px 14px; background: var(--field); border: 1px solid var(--line); border-radius: var(--radius); }
.sched__time { font-weight: 700; display: flex; flex-direction: column; }
.sched__time small { color: var(--raspberry); font-weight: 700; }
.sched__what { display: flex; flex-direction: column; min-width: 0; }
.sched__what b { color: var(--caramel); }
.sched__what small, .sched__note { color: var(--ink-soft); font-size: var(--step--1); }
.sched__teams { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; min-width: 0; }
.sched__team { display: inline-flex; align-items: center; gap: 8px; min-width: 0; overflow-wrap: anywhere; }
.sched__team.is-tbd { font-style: italic; color: var(--ink-faint); }
.sched__score { font-variant-numeric: tabular-nums; color: var(--ink-soft); }
.sched__note { grid-column: 1 / -1; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
@media (max-width: 760px) { .sched__row { grid-template-columns: minmax(0, 1fr) auto; } .sched__teams { grid-column: 1 / -1; } .sched__what { grid-row: 1; grid-column: 1; flex-direction: row; gap: 8px; align-items: baseline; } .sched__time { grid-row: 2; grid-column: 1; } }
.daylist { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.daylist li { display: flex; flex-direction: column; gap: 2px; padding: 10px 14px; background: var(--field); border: 1px solid var(--line); border-radius: var(--radius); }
.daylist li.is-next { border-color: var(--orange); box-shadow: inset 3px 0 0 var(--orange); }
.daylist b { font-family: var(--font-display); font-size: 1.25rem; line-height: 1.15; }
.daylist span { color: var(--ink-soft); }
.dayrow { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) minmax(0, 1fr); gap: 12px; border: 1px solid var(--line); border-radius: var(--radius); padding: 10px 14px 14px; margin: 0; min-width: 0; }
.dayrow legend { padding: 0 6px; font-weight: 700; color: var(--caramel); }
@media (max-width: 620px) { .dayrow { grid-template-columns: 1fr; } }
.nav__more { position: relative; }
.nav__more-btn { display: inline-flex; align-items: center; gap: 6px; background: none; border: 0; padding: 8px 11px; border-radius: var(--radius); color: var(--ink-soft); font-weight: 500; font-size: 1rem; cursor: pointer; white-space: nowrap; transition: color .15s, background-color .15s; }
.nav__more-btn::after { content: ""; width: 7px; height: 7px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: translateY(-2px) rotate(45deg); transition: transform .15s; }
.nav__more-btn:hover, .nav__more-btn[aria-expanded="true"] { color: var(--cream); background: rgba(248, 235, 213, .07); }
.nav__more-btn[aria-expanded="true"]::after { transform: translateY(2px) rotate(225deg); }
.nav__more-btn.is-current { color: var(--cream); box-shadow: inset 0 -2px 0 var(--orange); border-radius: var(--radius) var(--radius) 0 0; }
.nav__menu { position: absolute; right: 0; top: calc(100% + 10px); min-width: 210px; display: none; flex-direction: column; gap: 2px; padding: 8px; background: linear-gradient(180deg, rgba(40, 28, 38, .98), rgba(24, 17, 23, .98)); border: 1px solid var(--line-strong); border-radius: var(--radius); box-shadow: 0 22px 50px rgba(6, 3, 8, .7); z-index: 30; }
.nav__menu.is-open { display: flex; animation: enter .18s both; }
.nav .nav__menu a { padding: 10px 12px; border-radius: var(--radius); }
.nav .nav__menu a[aria-current="page"] { box-shadow: inset 3px 0 0 var(--orange); border-radius: var(--radius); }
@media (max-width: 920px) {
.nav__more { display: contents; }
.nav__more-btn { display: none; }
.nav__menu { position: static; display: flex; padding: 0; background: none; border: 0; box-shadow: none; min-width: 0; animation: none; }
.nav .nav__menu a { padding: 12px 8px; }
}
.setup-hero { padding: clamp(20px, 4vw, 36px); background: linear-gradient(130deg, #39283b, #201822); border: 1px solid var(--line-strong); border-radius: 12px; gap: 16px; }
.setup-hero h2 { font-family: var(--font-body); font-size: clamp(1.8rem, 3vw, 2.6rem); line-height: 1.13; }
.setup-hero .tag { text-transform: uppercase; letter-spacing: .12em; color: #edc991; }
.setup-progress { display: grid; gap: 10px; max-width: 460px; }
.setup-progress b { font-size: 1.5rem; color: #f7d7a5; }
.setup-progress progress { appearance: none; width: 100%; height: 9px; border: 0; border-radius: 8px; overflow: hidden; background: #18121b; }
.setup-progress progress::-webkit-progress-bar { background: #18121b; }
.setup-progress progress::-webkit-progress-value { background: linear-gradient(90deg, #d8874b, #e6c087); border-radius: 8px; }
.setup-progress progress::-moz-progress-bar { background: #e6c087; }
.setup-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.setup-card { padding: 22px; border: 1px solid var(--line); background: #241b28; border-radius: 10px; gap: 12px; }
.setup-card h3 { font-family: var(--font-body); font-size: 1.35rem; }
.setup-card > .btn { margin-top: auto; align-self: flex-start; }
.setup-number { color: #dab687; font-variant-numeric: tabular-nums; font-size: .88rem; letter-spacing: .08em; }
.preview-banner { padding: 16px 20px; background: #30233a; border: 1px solid #be9cda; border-left: 4px solid #d7b0ee; border-radius: 8px; gap: 6px; }
.preview-banner b { color: #f0d4ff; }
.preview-banner .row { justify-content: space-between; flex-wrap: wrap; }
.preview-complete { padding-block: 20px; }
.preview-complete > .btn { align-self: flex-start; }
#register .steps { margin-block: 8px 16px; }
#admin .tabs { flex-wrap: wrap; }
@media (max-width: 620px) { .setup-grid { grid-template-columns: 1fr; } .setup-card { padding: 18px; } .setup-hero .btn { white-space: normal; } }
@media (max-width: 620px) {
#admin .tabs { flex-wrap: nowrap; overflow-x: auto; max-width: 100%; width: 100%; padding-bottom: 6px; }
#admin .tabs button { flex-shrink: 0; white-space: nowrap; }
}
.account-welcome { border-top: 3px solid #d6ac63; }
.account-welcome h2 { font-family: var(--font-body); font-size: clamp(1.8rem, 4vw, 2.5rem); }
.account-welcome > .btn { align-self: flex-start; }
.event-card { flex-wrap: wrap; gap: 18px; }
#account .fold summary { min-height: 44px; }
#account .fold form { padding-top: 18px; }
#account .chip { white-space: normal; }
.mobile-nav { display: none; }
@media (min-width: 921px) {
.site-header .wrap { gap: 12px; }
.nav a { padding-inline: 8px; }
.brand { font-size: 1.2rem; }
.brand img { width: 48px; }
}
@media (max-width: 920px) {
body { padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px)); }
.mobile-nav { position: fixed; bottom: 0; left: 0; right: 0; z-index: 30; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 4px; padding: 8px 8px calc(8px + env(safe-area-inset-bottom, 0px)); border-top: 1px solid var(--line-strong); background: #211925; box-shadow: 0 -8px 24px #10091466; }
.mobile-nav a { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; min-height: 52px; color: var(--ink-soft); font-size: .8rem; font-weight: 700; text-decoration: none; border-radius: 8px; }
.mobile-nav a[aria-current="page"] { background: #473225; color: #ffdab0; box-shadow: inset 0 2px 0 var(--orange); }
.mobile-nav a:hover { background: #35273c; color: var(--cream); }
.mobile-nav svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.nav.is-open { max-height: calc(100dvh - 160px - env(safe-area-inset-bottom, 0px)); overflow-y: auto; }
.toast { bottom: calc(88px + env(safe-area-inset-bottom, 0px)); }
}
.home-page main { gap: clamp(28px, 4vw, 48px); }
.home-intro { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(300px, 1fr); align-items: center; gap: clamp(24px, 4vw, 48px); }
.home-intro .hero { gap: 16px; padding-top: 0; min-width: 0; }
.home-intro .hero__logo { width: min(100%, 510px); max-width: 100%; animation: none; }
.home-intro .tagline { font-size: clamp(1.35rem, 2.1vw, 1.8rem); }
.home-intro .facts { width: 100%; background: rgba(24, 17, 23, .94); }
.home-intro .facts li { flex: 1; padding: 12px 8px; }
.home-intro .facts strong { font-size: 1.55rem; }
.home-intro .facts span { font-size: .85rem; }
.home-intro__action .next-step { background: linear-gradient(145deg, #302132, #1c1520 75%); border-radius: 14px; padding: clamp(22px, 3vw, 34px); box-shadow: 0 20px 60px #10091480; gap: 18px; }
.home-intro__action h2 { font-family: var(--font-body); font-size: clamp(1.8rem, 3vw, 2.4rem); line-height: 1.14; letter-spacing: -.02em; text-wrap: balance; }
.home-intro__action .tag { color: #edc991; letter-spacing: .12em; text-transform: uppercase; font-size: .78rem; }
.home-intro__action .next-step__actions { display: grid; grid-template-columns: 1fr; }
.home-intro__action .btn { width: 100%; text-align: center; justify-content: center; }
.home-page #edition-note { width: calc(100% - 2 * var(--gutter)); max-width: 1056px; font-size: .95rem; }
.readiness h3 { font-family: var(--font-body); font-size: 1.5rem; line-height: 1.2; }
.readiness__list li b { font-weight: 500; }
.readiness__list .progress-badge { font-size: .9rem; font-weight: 700; border-radius: 6px; padding: 3px 9px; background: #332a3b; color: #eadcf5; }
.readiness__list .progress-badge--done { background: #19362b; color: #b8e8c8; }
.readiness__list .progress-badge--attention { background: #492a24; color: #ffd1ba; }
.readiness__list .progress-badge--waiting { background: #3d3020; color: #f1d29c; }
@media (max-width: 760px) {
.home-intro { grid-template-columns: 1fr; gap: 24px; }
.home-intro .hero__logo { width: min(84%, 360px); }
.home-intro .facts { flex-direction: row; }
.home-intro .facts li + li::before { left: -3px; top: 50%; transform: translateY(-50%) rotate(45deg); width: 5px; height: 5px; }
.home-intro .facts span { font-size: .78rem; }
.readiness__list .progress-badge { align-self: flex-start; white-space: normal; }
}
.next-step { border-top: 3px solid #d6ac63; }
.next-step__actions { flex-wrap: wrap; gap: 10px; }
.readiness { padding: clamp(14px, 3vw, 24px); border: 1px solid #a7804e; border-radius: 12px; background: rgba(20, 15, 24, .8); }
.readiness__list { margin: 0; padding: 0; list-style: none; display: grid; gap: 0; }
.readiness__list li { display: flex; justify-content: space-between; gap: 12px; padding: 12px 0; border-bottom: 1px solid rgba(214, 172, 99, .22); }
.readiness__list li span { text-align: right; }
.next-step__actions .btn { min-height: 44px; }
@media (max-width: 540px) {
.readiness__list li { flex-direction: column; gap: 4px; }
.readiness__list li span { text-align: left; }
.next-step__actions { align-items: stretch; flex-direction: column; }
.next-step__actions .btn { width: 100%; text-align: center; white-space: normal; }
}
html { scroll-padding-top: 90px; }
.skip-link { position: fixed; top: 8px; left: 16px; z-index: 100; padding: 12px 20px; background: var(--cream); color: var(--espresso); border-radius: 6px; transform: translateY(-150%); }
.skip-link:focus { transform: translateY(0); }
.site-header { box-shadow: 0 8px 32px rgba(10,5,17,.22); }
.site-header .wrap { min-height: 76px; }
.nav > a, .nav__more-btn { min-height: 40px; display: inline-flex; align-items: center; justify-content: center; border-radius: 5px; transition: background .18s, color .18s, box-shadow .18s; }
.nav > a[aria-current="page"] { background: rgba(214,170,106,.09); color: var(--cream); box-shadow: inset 0 -2px var(--orange); }
.nav .nav__cta { padding-inline: 18px; box-shadow: 0 4px 18px rgba(233,120,63,.18); }
.nav__menu { min-width: 250px; padding: 10px; border-radius: 8px; }
.nav__menu a { padding: 10px 12px; border-radius: 4px; }
.nav__group-label { padding: 9px 12px 6px; color: #d6aa6a; font-size: .75rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.nav__group-label--divider { margin-top: 7px; border-top: 1px solid rgba(214,170,106,.2); padding-top: 15px; }
.nav-toggle { min-width: 76px; min-height: 42px; border-color: rgba(214,170,106,.5); }
.nav a:focus-visible, .nav button:focus-visible, .nav-toggle:focus-visible, .mobile-nav a:focus-visible { outline: 2px solid #f0c58b; outline-offset: 3px; }
@media (min-width: 921px) {
.nav > a, .nav__more-btn { padding-inline: clamp(7px, .7vw, 12px); }
.nav__menu::before { content: ''; position: absolute; top: -6px; right: 25px; width: 10px; height: 10px; background: #281d26; border-left: 1px solid rgba(214,170,106,.5); border-top: 1px solid rgba(214,170,106,.5); transform: rotate(45deg); }
}
@media (max-width: 920px) {
.site-header .wrap { min-height: 66px; }
.nav.is-open { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 6px; padding: 14px var(--gutter) 20px; border-bottom: 1px solid var(--line-strong); box-shadow: 0 20px 35px rgba(0,0,0,.4); }
.nav > a { justify-content: flex-start; padding: 12px 14px; background: rgba(248,235,213,.035); }
.nav__menu { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 3px 6px; padding: 6px 0; }
.nav__group-label { grid-column: 1 / -1; padding-left: 14px; }
.nav__menu a { padding: 11px 14px; }
.nav .nav__cta { grid-column: 1 / -1; justify-content: center; margin: 4px 0 0; }
.combat-ui .nav.is-open { background: linear-gradient(150deg,#281d2d,#1d171c); }
}
@media (prefers-reduced-motion: reduce) { .nav > a, .nav__more-btn { transition: none; } }
@media (max-width: 920px) { .nav.is-open, .combat-ui .nav.is-open { background: linear-gradient(150deg,#281d2d,#1d171c); } .nav .nav__more-btn { display: none; } }
.combat-ui {
--font-body: "Alegreya Sans", "Segoe UI", sans-serif;
--arena-title: "Barlow Condensed", "Arial Narrow", sans-serif;
--arena-gold: #d6aa6a;
--arena-pink: #dc668c;
--arena-paper: #f8ebd5;
--arena-muted: #d4c2c9;
--arena-surface: #281d26;
color: var(--arena-paper);
background: #1a1220 linear-gradient(180deg, #17101c 0%, #2b1a35 40%, #4a2857 75%, #6a3350 100%) fixed;
font-size: 1.0625rem;
}
.combat-ui .scene { opacity: 1; filter: none; }
.combat-ui .scene__veil { background: radial-gradient(110% 80% at 50% 38%, rgba(20, 13, 22, .16), rgba(20, 13, 22, .5) 100%), linear-gradient(180deg, rgba(20, 13, 22, .34), transparent 22%, rgba(20, 13, 22, .28)); }
.combat-ui .site-header { background: linear-gradient(180deg, rgba(29, 23, 28, .92), rgba(29, 23, 28, .58)); border-bottom-color: var(--line); }
.combat-ui .site-header .brand { font-family: var(--font-display); }
.combat-ui main { gap: 32px; padding-top: 38px; }
.combat-ui h1, .combat-ui h2, .combat-ui h3 { font-family: var(--arena-title); text-transform: uppercase; letter-spacing: .015em; font-weight: 700; line-height: 1.02; }
.combat-ui h1 { font-size: clamp(2.7rem, 6vw, 4.5rem); font-style: italic; }
.combat-ui h2 { font-size: clamp(2rem, 4vw, 3.3rem); }
.combat-ui h3 { font-size: 1.7rem; }
.combat-ui .page-title { text-align: left; border-left: 4px solid var(--arena-gold); padding-left: 20px; }
.combat-ui .page-title .lede { margin-top: 8px; max-width: 65ch; color: var(--arena-muted); font-size: 1.05rem; }
.combat-ui .wrap--narrow { max-width: 1120px; }
.combat-ui .muted, .combat-ui .hint { color: var(--arena-muted); }
.combat-ui .tag { font-family: var(--font-body); text-transform: uppercase; font-size: .73rem; font-weight: 700; letter-spacing: .14em; color: var(--arena-gold); }
.combat-ui .panel { background: linear-gradient(180deg, rgba(38, 26, 36, .94), var(--panel) 34%); border: 1px solid var(--line-strong); border-radius: var(--radius); box-shadow: 0 22px 60px rgba(8, 4, 10, .58), inset 0 1px 0 rgba(248, 235, 213, .09); backdrop-filter: blur(12px); }
.combat-ui .panel--crest::before, .combat-ui .panel--crest::after { display: none; }
.combat-ui .btn { position: relative; min-height: 46px; padding: 11px 22px; border-radius: 2px; background: #343543; color: var(--arena-paper); border: 1px solid #ffffff33; font-family: var(--arena-title); font-weight: 700; font-size: 1.1rem; letter-spacing: .04em; text-transform: uppercase; transition: transform 140ms ease, background 140ms ease, box-shadow 140ms ease; }
.combat-ui .btn:hover { background: #454456; transform: translateY(-2px); box-shadow: 0 7px 18px #0005; }
.combat-ui .btn:active { transform: translateY(0) scale(.985); }
.combat-ui .btn--primary { background: var(--arena-gold); border-color: var(--arena-gold); color: #201920; box-shadow: inset 0 2px 0 #ffe5c766; }
.combat-ui .btn--primary:hover { background: #ffd49a; border-color: #ffe2b8; box-shadow: 0 5px 22px #e8a65333; }
.combat-ui .btn:focus-visible { outline: 3px solid #fff; outline-offset: 4px; }
.combat-ui .btn:disabled { transform: none; box-shadow: none; opacity: .6; }
.combat-ui .btn--danger { background: #713446; border-color: #ee819c; }
.combat-ui .chip { border-radius: 2px; text-transform: uppercase; font-size: .72rem; letter-spacing: .06em; padding: 4px 9px; }
.combat-ui .chip--approved, .combat-ui .chip--done { background: #29483d; color: #bcf0d4; border-color: #74c99b66; }
.combat-ui .chip--pending, .combat-ui .chip--ready { background: #513e27; color: #ffdcab; border-color: #dfb67c66; }
.combat-ui .chip--live { background: #672b4b; color: #ffc1df; border-color: var(--arena-pink); }
.combat-ui .notice { border-radius: 2px; background: #1a1b27; border-color: #ffffff22; border-left: 3px solid var(--arena-gold); }
.combat-ui .input { border-radius: 2px; background: #12131e; border-color: #646477; }
.combat-ui .input:focus { border-color: var(--arena-gold); }
.combat-ui .fold { border-radius: 2px; }
.combat-ui .account-welcome { border-top: 0; border-left: 3px solid var(--arena-gold); }
.combat-ui .account-welcome h2 { font-family: var(--arena-title); font-size: clamp(2rem, 4vw, 3rem); }
.lobby-access { display: grid; grid-template-columns: 1.15fr 1fr; padding: 0 !important; overflow: hidden; border-top: 3px solid var(--arena-gold) !important; }
.lobby-access__main { padding: clamp(24px, 4vw, 44px); gap: 22px; position: relative; z-index: 1; }
.combat-ui .lobby-access h2 { font-size: clamp(3rem, 6vw, 5.2rem); font-style: italic; }
.lobby-access__main .lede { color: #dedee9; font-size: 1.1rem; max-width: 40ch; }
.lobby-access__main .btn { align-self: flex-start; min-width: 230px; }
.lobby-access__visual { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 24px; background: radial-gradient(ellipse at center, #93565d55, transparent 70%), repeating-linear-gradient(135deg, transparent 0 22px, #ffffff05 22px 23px), #1a1b28; border-left: 1px solid #ffffff14; }
.lobby-access__visual::before { content: ""; position: absolute; width: 72%; aspect-ratio: 1; border: 1px solid #e1ae6b33; border-radius: 50%; box-shadow: 0 0 0 24px #e1ae6b08, 0 0 0 25px #e1ae6b16; }
.lobby-access__visual img { position: relative; width: 100%; z-index: 1; filter: drop-shadow(0 12px 22px #0008); }
.lobby-access__index { position: absolute; top: 20px; right: 22px; color: #fff5; font-weight: 700; letter-spacing: .18em; font-size: .7rem; }
.lobby-access__caption { position: relative; margin-top: 20px; color: #e8bb8f; font-size: .65rem; letter-spacing: .16em; text-align: center; }
.lobby-features { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.lobby-features article { padding: 22px; background: #20212de6; border-top: 2px solid #ffffff33; }
.lobby-features h3 { margin-block: 12px 8px; }
.lobby-features p { color: var(--arena-muted); font-size: .95rem; }
.lobby-section-head { display: flex; align-items: baseline; justify-content: space-between; gap: 14px; }
.squad-panel { border-top: 3px solid #bf87ce !important; gap: 20px; }
.squad-heading { display: flex; align-items: center; gap: 16px; }
.combat-ui .squad-heading h3 { font-size: clamp(2.2rem, 4vw, 3.4rem); }
.squad-mark { background: #e6ba78; color: #1c1c28; display: grid; place-items: center; min-width: 64px; min-height: 64px; padding: 10px; font-family: var(--arena-title); font-size: 1.5rem; font-weight: 800; clip-path: polygon(0 0, 100% 0, 100% 78%, 78% 100%, 0 100%); }
.squad-lineup { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; }
.player-tile { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 10px; min-width: 0; padding: 15px 8px; background: linear-gradient(#333344, #252632); border-top: 3px solid #dcaa65; transition: background 140ms, transform 140ms; }
.player-tile:hover { transform: translateY(-3px); background: #38394a; }
.player-tile--verified { border-color: #8bc4ad; }
.player-tile__role { font-size: .62rem; font-weight: 700; letter-spacing: .07em; color: #cecedf; text-transform: uppercase; }
.player-tile__initial { display: grid; place-items: center; width: 52px; height: 60px; background: #131520; color: #e2bddb; font-family: var(--arena-title); font-size: 1.6rem; font-weight: 700; clip-path: polygon(0 0, 100% 0, 100% 82%, 50% 100%, 0 82%); }
.player-tile b { max-width: 100%; overflow-wrap: anywhere; line-height: 1.15; }
.player-tile__status { font-size: .66rem; color: #f2ce98; }
.player-tile--verified .player-tile__status { color: #b7e4cf; }
.player-tile__bnet { color: #9dd8f5; font-size: .65rem; font-weight: 600; }
.player-tile__career { font-size: .72rem; color: #b7dffa; margin-top: auto; }
.combat-ui .btn--bnet { background: #21475d; border-color: #83cce5; color: #daf4ff; align-self: flex-start; }
.combat-ui .btn--bnet:hover { background: #2b607b; }
.linked-account { border-left: 3px solid #83cce5 !important; }
.combat-ui .player-tile__stats { margin-top: auto; width: 100%; min-height: 36px; padding: 6px; font-size: .9rem; }
.career-panel { padding: 22px; border: 1px solid #c4a0d466; background: #141721; gap: 18px; }
.career-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.career-metric { display: flex; flex-direction: column; padding: 16px; background: #242634; border-bottom: 2px solid #e6ba78; }
.career-metric span { color: #bdc0d0; font-size: .72rem; text-transform: uppercase; letter-spacing: .04em; }
.career-metric b { font-family: var(--arena-title); font-size: 2.1rem; line-height: 1.25; }
.career-hero b { text-transform: capitalize; }
.career-hero .row { font-size: .85rem; gap: 8px; flex-wrap: wrap; }
.career-hero__track { height: 5px; background: #ffffff16; margin-top: 6px; }
.career-hero__track i { display: block; height: 100%; background: linear-gradient(90deg, #bd80b8, #edb76e); }
@media (max-width: 600px) { .career-panel { padding: 16px; } .career-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.lobby-empty { padding: 30px; border: 1px dashed #ffffff3b; background: #1b1c27cc; }
.lobby-empty .btn { align-self: flex-start; }
.lobby-match { padding: 20px; background: #141620; border: 1px solid #ffffff22; border-left: 3px solid #b58ed1; display: grid; gap: 15px; }
.lobby-match--live { border-left-color: var(--arena-pink); box-shadow: inset 0 0 32px #e678ad0c; }
.lobby-match__meta { display: flex; justify-content: space-between; gap: 10px; color: #d9badf; font-size: .72rem; font-weight: 700; letter-spacing: .08em; }
.lobby-match__versus { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 18px; font-family: var(--arena-title); text-transform: uppercase; font-size: clamp(1.3rem, 3vw, 2rem); line-height: 1.05; }
.lobby-match__versus b:last-child { text-align: right; }
.lobby-match__versus > span { color: var(--arena-gold); font-weight: 700; font-size: 1.35rem; }
.combat-ui .sched { gap: 14px; }
.combat-ui .match-card { padding: 20px; border-radius: 2px; border: 1px solid #ffffff24; border-left: 3px solid #b88dcb; background: #1c1f2b; grid-template-columns: 115px 130px minmax(0, 1fr) auto; transition: border-color 150ms, background 150ms; }
.combat-ui .match-card:hover { border-color: #d6bbdf88; background: #262735; }
.combat-ui .match-card--live { border-left-color: var(--arena-pink); background: linear-gradient(90deg, #4b263a77, #1c1f2b 50%); }
.combat-ui .sched__time { font-family: var(--arena-title); font-size: 1.25rem; line-height: 1.15; }
.combat-ui .sched__what b { color: var(--arena-gold); font-size: .8rem; letter-spacing: .08em; }
.combat-ui .sched__teams { display: grid; grid-template-columns: 1fr auto 1fr; gap: 12px; }
.combat-ui .sched__team { font-family: var(--arena-title); font-weight: 600; font-size: 1.3rem; line-height: 1.08; }
.combat-ui .sched__team:last-child { justify-content: flex-end; text-align: right; }
.combat-ui .sched__score { font-family: var(--arena-title); font-size: 1.65rem; color: #f2ce97; white-space: nowrap; }
.combat-ui .sched__what small { font-size: .75rem; }
.combat-ui .readiness { background: #1e202d; border-radius: 2px; border-color: #ffffff33; }
.combat-ui .readiness h3 { font-family: var(--arena-title); font-size: 1.8rem; }
.combat-ui .site-footer { background: #13141ddd; border-color: #ffffff1c; }
.combat-ui .mobile-nav { background: #171925; border-top-color: #ffffff33; }
.combat-ui .mobile-nav a[aria-current] { background: #3c3033; color: #ffd39e; }
@media (max-width: 900px) {
.lobby-access { grid-template-columns: 1.25fr .85fr; }
.combat-ui .match-card { grid-template-columns: minmax(0, 1fr) auto; }
.combat-ui .sched__what { grid-row: 1; grid-column: 1; }
.combat-ui .sched__time { grid-row: 2; grid-column: 1; }
.combat-ui .sched__teams { grid-column: 1 / -1; padding-block: 10px; }
.squad-lineup { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
.combat-ui main { padding-top: 24px; }
.lobby-access { grid-template-columns: 1fr; }
.lobby-access__visual { grid-row: 1; max-height: 180px; overflow: hidden; }
.lobby-access__visual img { width: 200px; }
.lobby-access__caption, .lobby-access__index { display: none; }
.lobby-access__main { gap: 18px; }
.lobby-access__main .btn { width: 100%; min-width: 0; }
.lobby-features { grid-template-columns: 1fr; gap: 8px; }
.lobby-features article { padding: 18px; }
.squad-lineup { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.combat-ui .match-card { padding: 16px; }
.combat-ui .sched__team { font-size: 1.1rem; }
.combat-ui .sched__teams { gap: 8px; }
.combat-ui .sched__team .crest { display: none; }
.lobby-match__versus { gap: 10px; }
}
@media (prefers-reduced-motion: reduce) {
.combat-ui *, .combat-ui *::before, .combat-ui *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
.combat-ui h1 { font-family: var(--font-display); font-size: var(--step-4); font-style: normal; text-transform: none; }
.combat-ui h2, .combat-ui h3 { font-family: var(--font-body); text-transform: none; letter-spacing: -.01em; line-height: 1.14; }
.combat-ui h2 { font-size: clamp(1.8rem, 3vw, 2.4rem); }
.combat-ui h3 { font-size: 1.4rem; }
.combat-ui .page-title { border: 0; padding-left: 0; text-align: center; }
.combat-ui .page-title .lede { color: var(--cream); }
.combat-ui .btn { font-family: var(--font-body); text-transform: none; letter-spacing: 0; font-size: 1rem; border-radius: var(--radius); background: #302430; border-color: var(--line-strong); color: var(--cream); }
.combat-ui .btn:hover { background: #483044; }
.combat-ui .btn--primary { background: var(--orange); border-color: #f5a373; color: var(--espresso); }
.combat-ui .btn--primary:hover { background: #f08a52; border-color: var(--cream); }
.combat-ui .btn--danger { background: #713446; border-color: #ee819c; }
.combat-ui .btn--bnet { background: #21475d; border-color: #83cce5; color: #daf4ff; }
.combat-ui .lobby-access { grid-template-columns: 1.15fr 1fr; }
.lobby-access__visual { grid-column: 1; grid-row: 1; background: radial-gradient(ellipse at center, #9b446b33, transparent 72%); border-left: 0; border-right: 1px solid var(--line); }
.lobby-access__main { grid-column: 2; grid-row: 1; }
.lobby-access__visual::before { border-color: #d6aa6a22; box-shadow: 0 0 0 24px #d6aa6a05, 0 0 0 25px #d6aa6a10; }
.combat-ui .lobby-access h2 { font-family: var(--font-body); font-size: clamp(2rem, 3vw, 2.7rem); font-style: normal; text-transform: none; }
.lobby-access__main .lede { color: var(--cream); }
.lobby-access__main .btn { min-width: 0; }
.lobby-access__caption { color: var(--caramel); }
.lobby-access__index { color: #d6aa6a88; }
.lobby-features article { background: #281d26db; border: 1px solid var(--line); border-top: 2px solid var(--caramel); border-radius: var(--radius); }
.combat-ui .account-welcome h2 { font-family: var(--font-body); font-size: clamp(1.8rem, 3vw, 2.4rem); }
.combat-ui .account-welcome { border-left: 1px solid var(--line-strong); border-top: 3px solid var(--caramel); }
.combat-ui .squad-heading h3 { font-family: var(--font-display); font-size: clamp(2rem, 4vw, 3rem); }
.squad-lineup { gap: 12px; }
.player-tile { background: linear-gradient(#3a2a3b, #291e2a); border-radius: var(--radius); }
.player-tile:hover { background: #483044; }
.player-tile__initial { background: #211621; color: #e9b6ce; }
.player-tile__role { color: #ddc7d0; }
.lobby-match, .career-panel { background: #201721e8; border-radius: var(--radius); border-color: var(--line); }
.career-metric { background: #382936; border-radius: 4px; }
.career-metric span { color: #d4c2c9; }
.career-hero__track { background: #f8ebd51a; }
.lobby-empty { background: #281d26cf; border-color: var(--line-strong); border-radius: var(--radius); }
.combat-ui .event-card { border-left: 3px solid var(--caramel); }
.combat-ui .readiness { background: #281d26e6; border-color: var(--line-strong); border-radius: var(--radius); }
.combat-ui .readiness h3 { font-family: var(--font-body); font-size: 1.5rem; }
.combat-ui .match-card { background: #281d26e6; border-color: var(--line); border-radius: var(--radius); }
.combat-ui .match-card:hover { background: #3a2838; }
.combat-ui .notice { background: var(--panel-raised); border-color: var(--line-strong); border-radius: var(--radius); border-left-color: var(--orange); }
.combat-ui .input { background: var(--field); border-color: var(--line-strong); border-radius: var(--radius); }
.combat-ui .fold { border-radius: var(--radius); }
.combat-ui .site-footer { background: rgba(29, 23, 28, .78); border-color: var(--line); }
.combat-ui .mobile-nav { background: #211925; border-top-color: var(--line-strong); }
@media (max-width: 600px) {
.combat-ui .lobby-access { grid-template-columns: 1fr; }
.lobby-access__visual { grid-column: 1; grid-row: 1; border-right: 0; border-bottom: 1px solid var(--line); max-height: 180px; }
.lobby-access__main { grid-column: 1; grid-row: 2; }
}
:root { --font-body: "Segoe UI", Arial, sans-serif; --line: rgba(221,193,159,.19); --line-strong: rgba(221,193,159,.4); --radius: 10px; }
body, .combat-ui { font-family: "Segoe UI", Arial, sans-serif; font-size: .95rem; line-height: 1.65; }
.combat-ui { --font-body: "Segoe UI", Arial, sans-serif; }
h2, h3 { font-family: var(--font-body); letter-spacing: -.025em; line-height: 1.2; }
h2 { font-size: clamp(1.5rem,2.5vw,2rem); }
h3 { font-size: 1.2rem; }
.scene__veil { background: linear-gradient(180deg,rgba(16,11,23,.12),rgba(16,11,23,.7) 70%,#100b17), radial-gradient(ellipse at 50% 10%,transparent,#100b1770); }
.site-header, .combat-ui .site-header { background: rgba(23,17,29,.93); border-color: rgba(221,193,159,.15); backdrop-filter: blur(20px); }
.site-header .wrap { max-width: 1280px; min-height: 74px; }
.brand { gap: 12px; }
.brand img { width: 56px; }
.nav { gap: 6px; }
.nav > a, .nav__more-btn { font-family: var(--font-body); font-size: .82rem; font-weight: 600; }
.nav > a[aria-current="page"] { box-shadow: inset 0 -2px #d6aa6a; background: transparent; }
.nav .nav__cta { background: #e99559; color: #211622; border: 1px solid #f6b37d; box-shadow: none; }
.nav .nav__cta:hover { background: #ffb87f; }
.panel, .combat-ui .panel { border-color: var(--line); border-radius: 10px; box-shadow: 0 16px 48px #09051033; background: linear-gradient(135deg,rgba(43,31,47,.96),rgba(26,20,31,.97)); }
.panel--crest::before, .panel--crest::after { display: none; }
.section-head { padding-bottom: 16px; border-bottom: 1px solid var(--line); margin-bottom: 20px; align-items: baseline; gap: 16px; }
.section-head h2 { font-size: 1.4rem; }
.section-head a { font-size: .8rem; text-decoration: none; color: #dcc09b; }
.section-head a:hover { color: white; text-decoration: underline; }
.page-title { padding-block: 14px 8px; }
.page-title h1, .combat-ui h1 { font-size: clamp(2.5rem,5vw,3.6rem); }
.page-title .lede { max-width: 640px; margin-inline: auto; color: #c7bacd; font-size: 1rem; }
.btn, .combat-ui .btn { font-size: .85rem; font-weight: 600; min-height: 46px; border-radius: 6px; transition: background .18s, border-color .18s, transform .18s; }
.btn:hover { transform: translateY(-1px); }
.btn--primary, .combat-ui .btn--primary { background: #e99559; border-color: #f6b37d; color: #211622; box-shadow: 0 6px 22px #e9955912; }
.btn--primary:hover, .combat-ui .btn--primary:hover { background: #ffb87f; }
.input, .combat-ui .input { border-color: #d6aa6a40; border-radius: 6px; padding: 12px 14px; }
.site-footer { font-size: .75rem; color: #b5a7bd; background: #100c17db; }
.home-page main { padding-top: 26px; gap: 48px; }
.home-intro { max-width: 1240px; grid-template-columns: 1.05fr 1fr; gap: 52px; padding-top: 20px; padding-bottom: 16px; }
.home-intro .hero__logo { width: min(100%,460px); filter: drop-shadow(0 15px 40px #d2618d18); }
.home-intro .tagline { font-family: var(--font-body); font-size: .72rem; font-weight: 600; letter-spacing: .15em; text-transform: uppercase; opacity: .85; }
.home-intro .facts { border: 0; border-top: 1px solid var(--line-strong); border-bottom: 1px solid var(--line); border-radius: 0; background: #1c14236b; box-shadow: none; margin-top: 12px; }
.home-intro .facts strong { font-family: var(--font-body); font-size: 1.4rem; letter-spacing: -.04em; }
.home-intro .facts span { font-size: .7rem; color: #c7bacd; }
.home-intro .facts li + li::before { display: none; }
.eyebrow { font-size: .65rem; font-weight: 700; text-transform: uppercase; letter-spacing: .17em; color: #ddb98c; }
.arrival-title { font-family: var(--font-body); font-size: clamp(2.5rem,4.6vw,4rem); font-weight: 750; line-height: 1.04; letter-spacing: -.055em; margin: 16px 0 20px; }
.arrival-title em { color: #efb581; font-style: normal; }
.arrival-lede { color: #cbbfd1; max-width: 420px; font-size: .95rem; line-height: 1.7; }
.home-intro__action .next-step { margin-top: 28px; padding: 22px; border: 1px solid #d6aa6a35; border-left: 3px solid #d6aa6a; border-radius: 4px 10px 10px 4px; gap: 12px; background: #211927e8; box-shadow: none; }
.home-intro__action .next-step .tag { font-size: .6rem; }
.home-intro__action .next-step h2 { font-size: 1.2rem; line-height: 1.25; text-wrap: initial; }
.home-intro__action .next-step p { font-size: .8rem; color: #c7bacd; }
.home-intro__action .next-step__actions { grid-template-columns: 1fr 1fr; gap: 8px; }
.home-intro__action .next-step__actions .btn:last-child { grid-column: 1 / -1; }
.home-intro__action .next-step .btn { font-size: .75rem; min-height: 42px; padding: 9px 10px; }
.destination-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.destination { display: flex; flex-direction: column; min-width: 0; gap: 16px; padding: 26px; text-decoration: none; color: var(--cream); background: linear-gradient(145deg,#35223be8,#201727f5); border: 1px solid var(--line); border-radius: 10px; transition: transform .2s,border-color .2s,background .2s; }
.destination:hover { transform: translateY(-5px); border-color: #d6aa6a99; background: linear-gradient(145deg,#49304e,#271b30); }
.destination__index { font-size: .6rem; font-weight: 600; letter-spacing: .14em; color: #d5b797; }
.destination__title { display: flex; justify-content: space-between; gap: 10px; font-size: 1.1rem; font-weight: 650; letter-spacing: -.035em; }
.destination__title > span { color: #ad85bc; }
.destination__copy { color: #c4b4cc; font-size: .8rem; line-height: 1.7; }
.destination__action { display: flex; justify-content: space-between; font-size: .72rem; color: #edc298; margin-top: auto; padding-top: 8px; }
.home-grid { gap: 20px; }
.home-grid .panel { padding: 28px; }
.home-grid h2 { font-size: 1.3rem; }
.home-grid .status-line { font-size: 1rem; }
.home-page .empty { min-height: 150px; padding: 24px; gap: 12px; }
.home-page .empty svg { width: 34px; height: 34px; opacity: .65; }
.home-page .empty p { color: #c4b4cc; font-size: .85rem; }
@media (max-width: 920px) { .site-header .wrap { min-height: 66px; } .nav > a { font-size: .85rem; } .nav__menu a { font-size: .85rem; } .nav .nav__cta { background: #e99559; } }
@media (max-width: 760px) {
.home-page main { gap: 32px; }
.home-intro { grid-template-columns: 1fr; padding-top: 0; gap: 28px; }
.home-intro .hero__logo { width: min(80%,320px); }
.home-intro .hero { gap: 10px; }
.home-intro .tagline { font-size: .59rem; letter-spacing: .09em; }
.home-intro .facts { margin-top: 6px; }
.home-intro__action { padding: 4px 2px; }
.arrival-title { font-size: clamp(2.5rem,9vw,3.7rem); }
.arrival-lede { max-width: 100%; }
.destination-grid { grid-template-columns: 1fr; gap: 12px; }
.destination { padding: 22px; gap: 12px; }
.destination__title { font-size: 1.2rem; }
.home-grid .panel { padding: 22px; }
}
@media (prefers-reduced-motion: reduce) { .destination,.btn { transition: none; } .destination:hover,.btn:hover { transform: none; } }
.home-intro__action .arrival-title { font-size: clamp(2.5rem,4.6vw,4rem); line-height: 1.04; letter-spacing: -.055em; text-wrap: initial; }
@media (max-width:760px) { .home-intro__action .arrival-title { font-size: clamp(2.5rem,9vw,3.7rem); } }
.player-profile { overflow: hidden; border: 1px solid #bc8fc34d; border-radius: 14px; background: #1d1828; box-shadow: 0 24px 65px #08051066; }
.player-profile__banner { height: 150px; position: relative; background: linear-gradient(100deg,#3a2048dd,#6e365d66), url('../img/logo.webp') right 24px center / 260px auto no-repeat, #2a1c38; border-bottom: 1px solid #d6aa6a44; }
.player-profile__banner::after { content: ''; position: absolute; inset: 0; background: repeating-linear-gradient(120deg,transparent 0 70px,#e3add108 70px 71px); }
.player-profile__banner > span { position: absolute; left: 32px; top: 24px; color: #f0d3df77; font-size: .7rem; font-weight: 700; letter-spacing: .23em; }
.player-profile__identity { display: flex; align-items: center; gap: 24px; padding: 0 32px 24px; position: relative; margin-top: -34px; }
.player-profile__avatar { display: grid; place-items: center; flex-shrink: 0; width: 104px; height: 104px; border-radius: 18px; border: 4px solid #1d1828; outline: 1px solid #dbb98777; background: linear-gradient(145deg,#bb799a,#644574 70%); color: #fff1db; font-size: 2rem; font-weight: 750; box-shadow: 0 10px 30px #10091b80; }
.player-profile__name { padding-top: 42px; flex: 1; min-width: 0; }
.combat-ui .player-profile__name h2 { font-family: var(--font-body); font-size: clamp(1.7rem,4vw,2.5rem); letter-spacing: -.04em; margin-block: 5px; overflow-wrap: anywhere; }
.profile-discriminator { color: #bbaec9; font-size: .8rem; }
.profile-connections { display: flex; flex-direction: column; gap: 8px; padding-top: 40px; font-size: .7rem; }
.profile-verified { color: #b7dbc8; }
.profile-career-head { display: flex; align-items: center; justify-content: space-between; margin: 4px 32px 0; padding-top: 22px; border-top: 1px solid #bba0c326; }
.profile-platform { background: #31263e; border: 1px solid #bc8fc34d; padding: 7px 14px; border-radius: 6px; font-size: .75rem; }
.profile-career { padding: 20px 32px 28px; }
.profile-stats { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
.profile-stat { display: flex; flex-direction: column; gap: 6px; border: 1px solid #bc8fc326; background: linear-gradient(140deg,#36273f,#282032); padding: 20px; border-radius: 8px; }
.profile-stat b { font-size: clamp(1.6rem,3vw,2.4rem); line-height: 1.15; letter-spacing: -.06em; color: #f8d3a6; }
.profile-stat span { color: #bdb0c9; font-size: .7rem; }
.profile-ranks { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 20px; }
.profile-rank { display: flex; align-items: center; gap: 12px; background: #d6aa6a0b; padding: 9px 14px; border: 1px solid #d6aa6a33; border-radius: 6px; font-size: .8rem; }
.profile-rank span { color: #bfb0c9; }
.profile-rank b { color: #e7c7a0; text-transform: capitalize; }
.profile-heroes { margin-top: 28px; display: grid; gap: 8px; }
.profile-heroes > .eyebrow { margin-bottom: 6px; }
.profile-hero { display: flex; align-items: center; gap: 14px; background: #36273f66; border-radius: 6px; padding: 10px 14px; font-size: .8rem; }
.profile-hero b { flex: 1; text-transform: capitalize; }
.profile-hero > span:not(.profile-hero__mark) { color: #c4b4cc; min-width: 65px; text-align: right; }
.profile-hero__mark { display: grid; place-items: center; width: 32px; height: 32px; background: #745078; border-radius: 5px; color: #f9ddbb; font-weight: 700; }
.profile-footer { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 10px; padding: 16px 32px; background: #130f1b66; color: #ac9dba; font-size: .7rem; }
.profile-message { color: #c7bacd; padding: 20px 0; max-width: 620px; }
.combat-ui .profile-settings { border: 0; border-top: 1px solid #bba0c326; border-radius: 0; margin: 0; background: #191320; box-shadow: none; padding: 18px 32px; }
.profile-settings summary { cursor: pointer; font-size: .8rem; color: #c7bacd; }
.profile-settings[open] summary { margin-bottom: 24px; }
.profile-settings > .stack { margin-top: 20px; }
@media (max-width: 620px) {
.player-profile__banner { height: 120px; background-size: auto,190px auto; }
.player-profile__banner > span { left: 20px; font-size: .6rem; }
.player-profile__identity { padding: 0 20px 20px; gap: 16px; flex-wrap: wrap; }
.player-profile__avatar { width: 80px; height: 80px; border-radius: 12px; font-size: 1.6rem; }
.player-profile__name { padding-top: 44px; }
.profile-connections { flex-direction: row; flex-wrap: wrap; padding-top: 0; gap: 14px; width: 100%; }
.profile-career-head { margin-inline: 20px; }
.profile-career { padding: 18px 20px 24px; }
.profile-stats { grid-template-columns: 1fr 1fr; gap: 8px; }
.profile-stat { padding: 16px; }
.profile-footer,.combat-ui .profile-settings { padding: 16px 20px; }
.profile-hero { gap: 8px; font-size: .7rem; padding: 10px; }
.profile-hero > span:not(.profile-hero__mark) { min-width: 45px; }
}
:root { --font-display: "Segoe UI", Arial, sans-serif; --line: #bd90c326; --line-strong: #d99ab64d; --cream: #fff0e2; --caramel: #e8b38f; --panel-solid: #2b1b35; --field: #1e1329cc; }
body, body.combat-ui { background: #1c1128; color: #fff0e2; }
.scene, .combat-ui .scene { display: block; opacity: 1; filter: none; position: fixed; inset: 0; background: radial-gradient(ellipse at 75% 0%,#44234766,transparent 65%),linear-gradient(165deg,#150e24,#21132e 50%,#120e20); }
.scene::before,.scene::after { content: ''; position: absolute; pointer-events: none; border-radius: 0; width: 160%; height: 130%; left: -30%; top: -20%; }
.scene::before {
background:
radial-gradient(ellipse at 50% -18%,transparent 44%,#e7a55e00 46%,#e7a55e55 48%,#f6c49a66 49%,#e38c9b55 51%,#d458a33b 56%,transparent 65%),
radial-gradient(ellipse at 60% 8%,transparent 36%,#a44bc900 39%,#b571e077 42%,#a45cdb88 44%,#d97aca55 47%,#953bc433 52%,transparent 62%),
radial-gradient(ellipse at 22% 25%,transparent 30%,#df729400 35%,#df729477 39%,#e493ae55 42%,#a861b333 47%,transparent 56%);
filter: blur(28px); opacity: .9; transform: rotate(-18deg) scale(1.05); transform-origin: center; animation: aurora-flow 28s ease-in-out infinite alternate;
}
.scene::after {
width: 150%; height: 150%; left: -25%; top: -25%;
background: radial-gradient(ellipse at 95% 38%,transparent 31%,#d77d9700 34%,#d77d9755 37%,#d58fbb44 39%,#aa6adc22 43%,transparent 51%),radial-gradient(ellipse at 32% 105%,transparent 34%,#9856c300 38%,#b67ad14d 41%,#d384a144 43%,#eeaf7126 46%,transparent 54%);
filter: blur(24px); opacity: .8; transform: rotate(12deg); animation: aurora-sway 35s ease-in-out infinite alternate;
}
.scene > * { display: none; }
@keyframes aurora-flow { 0% { transform: rotate(-18deg) translate(-2%,-2%) scale(1.05); } 100% { transform: rotate(-10deg) translate(3%,4%) scale(1.12); } }
@keyframes aurora-sway { 0% { transform: rotate(12deg) translate(2%,0); opacity: .65; } 100% { transform: rotate(4deg) translate(-3%,-4%); opacity: .9; } }
h1,h2,h3,.combat-ui h1,.combat-ui h2,.combat-ui h3 { font-family: "Segoe UI",Arial,sans-serif; font-style: normal; text-transform: none; letter-spacing: -.04em; }
h1,.combat-ui h1 { font-weight: 750; }
.site-header,.combat-ui .site-header { background: #21152be8; border-bottom: 1px solid #e8b38f1f; backdrop-filter: blur(20px); }
.site-header .brand,.combat-ui .site-header .brand { font-family: "Segoe UI",Arial,sans-serif; font-size: .95rem; font-weight: 750; letter-spacing: -.04em; }
.brand img { width: 58px; }
.nav > a,.nav__more-btn { min-height: 38px; border-radius: 9px; }
.nav > a[aria-current="page"] { background: #c88fa51a; box-shadow: none; color: #ffd4b1; }
.nav > a[aria-current="page"]::before { content: ''; width: 5px; height: 5px; border-radius: 50%; background: #ef9d6c; margin-right: 7px; box-shadow: 0 0 12px #ef9d6c80; }
.nav .nav__cta { border-radius: 8px; background: linear-gradient(120deg,#f3ae78,#e78b79); border-color: #ffc99c66; }
.nav__menu { background: #2d1e37f5; border-color: #d99ab650; box-shadow: 0 18px 55px #0c061a80; }
.panel,.combat-ui .panel { background: linear-gradient(135deg,#34213dcc,#281b33ed); border-color: #d99ab62b; border-radius: 14px; box-shadow: 0 12px 45px #10091c26,inset 0 1px #ffd8bc08; }
.btn,.combat-ui .btn { border-radius: 8px; background: #b782ae14; border-color: #dcb0cf38; }
.btn--primary,.combat-ui .btn--primary { background: linear-gradient(115deg,#f4ad73,#e99483); border-color: #ffc6a099; color: #291a2b; box-shadow: 0 5px 24px #ec9a721c; }
.btn--primary:hover,.combat-ui .btn--primary:hover { background: linear-gradient(115deg,#ffc28d,#f6b29e); box-shadow: 0 5px 30px #f7a98736; }
.btn:active,.combat-ui .btn:active { transform: translateY(1px); }
.home-intro { grid-template-columns: 1.05fr 1fr; padding-block: 24px 6px; gap: 20px; }
.home-intro .hero { order: 2; position: relative; padding: 38px 15px; isolation: isolate; }
.home-intro .hero::before { content: ''; position: absolute; width: 88%; aspect-ratio: 1; border-radius: 50%; z-index: -1; background: radial-gradient(circle,#df906125, #c85e9c22 45%,transparent 70%); border: 1px solid #d996ae1a; box-shadow: 0 0 0 28px #d996ae05,0 0 0 29px #d996ae0b; }
.home-intro .hero__logo { width: min(100%,510px); filter: drop-shadow(0 22px 35px #150a2480); transform: rotate(-2deg); transition: transform .4s ease,filter .4s ease; }
.home-intro .hero:hover .hero__logo { transform: rotate(0) translateY(-5px); filter: drop-shadow(0 24px 45px #db6d802b); }
.home-intro .tagline { font-size: .65rem; letter-spacing: .11em; color: #e9b7c9; margin-top: 18px; text-align: center; }
.home-intro__action { order: 1; }
.home-intro__action .eyebrow { color: #e7aabd; font-size: .65rem; letter-spacing: .16em; }
.home-intro__action .arrival-title { font-size: clamp(2.4rem,4.3vw,3.8rem); line-height: 1.08; letter-spacing: -.055em; font-weight: 750; margin: 20px 0; }
.arrival-title em { color: #f5b687; }
.arrival-lede { color: #d2bdd6; font-size: .92rem; max-width: 440px; }
.home-intro__action .next-step { border: 0; border-radius: 12px; background: #100a1d40; padding: 20px; margin-top: 26px; box-shadow: inset 0 1px #e9b5d01f; }
.home-intro__action .next-step h2 { font-size: 1.1rem; }
.home-intro__action .next-step .tag { display: none; }
.home-intro__action .next-step p { color: #c9b3d0; }
.edition-spotlight { position: relative; display: flex; align-items: center; gap: 30px; padding: 26px 30px; border-radius: 14px; background: linear-gradient(110deg,#67364c77,#3e285e77); border: 1px solid #e8b38f33; box-shadow: inset 0 1px #fff0e20a; }
.edition-spotlight::before { content: ''; position: absolute; top: 25px; bottom: 25px; left: 0; width: 3px; background: linear-gradient(#efae79,#e790bb); border-radius: 3px; }
.edition-spotlight__identity { min-width: 0; flex: 1; }
.edition-spotlight__identity h2 { font-size: 1.3rem; margin-block: 6px; }
.edition-spotlight__identity p { font-size: .75rem; color: #d4bcd3; }
.edition-spotlight__identity p > span[aria-hidden] { margin-inline: 8px; }
.edition-spotlight .facts { display: flex; margin: 0; background: transparent; border: 0; box-shadow: none; flex: 1.15; }
.edition-spotlight .facts li { min-width: 0; padding: 5px 14px; flex: 1; }
.edition-spotlight .facts strong { font-family: var(--font-body); font-size: 1.35rem; }
.edition-spotlight .facts span { font-size: .62rem; color: #d4bcd3; }
.edition-spotlight .facts li + li::before { display: none; }
.edition-spotlight__link { font-size: .75rem; text-decoration: none; color: #f3cba2; }
.edition-spotlight__link span { margin-left: 8px; }
.destination { position: relative; overflow: hidden; background: linear-gradient(145deg,#402742,#302039); border-color: #d99ab62b; border-radius: 14px; }
.destination:nth-child(2) { background: linear-gradient(145deg,#423050,#302039); }
.destination:nth-child(3) { background: linear-gradient(145deg,#503043,#302039); }
.destination::before { content: ''; position: absolute; width: 120px; height: 120px; border: 1px solid #f3c6b513; border-radius: 28px; right: -50px; top: -50px; transform: rotate(25deg); transition: transform .4s; }
.destination:hover { background: linear-gradient(145deg,#5c3654,#3b2744); border-color: #efaab26b; transform: translateY(-4px); box-shadow: 0 15px 35px #0c071b38; }
.destination:hover::before { transform: rotate(45deg) scale(1.2); }
.destination__index { color: #d89ebd; }
.destination__title { font-weight: 700; }
.destination__action { color: #ffc49c; }
.section-head { border-color: #d99ab626; }
.section-head h2 { letter-spacing: -.03em; }
.page-title,.combat-ui .page-title { text-align: left; padding-left: var(--gutter); border: 0; }
.page-title .lede,.combat-ui .page-title .lede { margin-left: 0; color: #cbb7d3; }
.page-title h1,.combat-ui .page-title h1 { font-size: clamp(2rem,4.5vw,3rem); }
.player-profile { background: #291b35; border-color: #da9cba42; border-radius: 16px; }
.player-profile__banner { background: linear-gradient(105deg,#8e496488,#7b458255),url('../img/logo.webp') right 24px center / 260px auto no-repeat,#43284f; }
.player-profile__avatar { border-color: #291b35; background: linear-gradient(135deg,#e29ca2,#875192); }
.player-tile { border-radius: 12px; background: linear-gradient(145deg,#4b3050,#30213d); transition: transform .18s,border-color .18s; }
.player-tile:hover { transform: translateY(-3px); border-color: #edb29a88; }
.player-tile__initial { background: linear-gradient(135deg,#b96e8a55,#794f8d55); color: #f4ccba; border-radius: 12px; }
.combat-ui .squad-heading h3 { font-family: var(--font-body); font-size: clamp(1.7rem,4vw,2.6rem); }
.combat-ui .lobby-access__visual { background: radial-gradient(ellipse,#d483a829,transparent 70%); }
.combat-ui .lobby-access__visual::before { border-color: #e9b2d21f; }
.combat-ui .lobby-features article { background: #39254299; border: 1px solid #d99ab62b; border-radius: 12px; }
.site-footer,.combat-ui .site-footer { background: #1c112899; border-color: #d99ab61f; }
@media (max-width: 920px) { .nav.is-open,.combat-ui .nav.is-open { background: #2b1b36fa; } .edition-spotlight { flex-wrap: wrap; gap: 22px; } .edition-spotlight__link { flex-basis: 100%; } }
@media (max-width: 760px) {
.home-intro { grid-template-columns: 1fr; gap: 12px; padding-top: 0; }
.home-intro .hero { order: 0; padding: 24px 15px; }
.home-intro .hero__logo { width: min(80%,320px); }
.home-intro .hero::before { width: 260px; }
.home-intro .tagline { margin-top: 8px; font-size: .56rem; }
.home-intro__action .arrival-title { font-size: clamp(2.35rem,8.7vw,3.5rem); }
.home-intro__action { padding: 12px 4px 0; }
.edition-spotlight { padding: 22px; gap: 18px; }
.edition-spotlight__identity { flex-basis: 100%; }
.edition-spotlight .facts { flex-basis: 100%; justify-content: space-between; }
.edition-spotlight .facts li { padding: 5px 8px; }
.edition-spotlight .facts strong { font-size: 1.2rem; }
.edition-spotlight .facts span { font-size: .6rem; }
.edition-spotlight__link { padding-top: 14px; border-top: 1px solid #d99ab626; }
.mobile-nav,.combat-ui .mobile-nav { background: #281932f5; border-color: #d99ab633; }
.mobile-nav a[aria-current="page"] { background: #c4829c24; color: #ffcba9; box-shadow: none; }
}
@media (prefers-reduced-motion: reduce) { .scene::before,.scene::after { animation: none; } .home-intro .hero__logo,.destination,.destination::before,.player-tile { transition: none; } .home-intro .hero:hover .hero__logo,.destination:hover,.player-tile:hover { transform: none; } }
@media (max-width: 760px) {
.scene::before { width: 240%; left: -70%; height: 120%; top: -10%; filter: blur(22px); opacity: .75; }
.scene::after { width: 220%; left: -60%; filter: blur(20px); opacity: .65; }
}
@media (prefers-reduced-motion: reduce) { .scene::before,.scene::after { animation: none; } }
.site-header,.combat-ui .site-header {
background: linear-gradient(110deg,#4c294b80,#3623458c 50%,#63384b66);
border-bottom: 1px solid #edb9d02b;
box-shadow: 0 8px 32px #10091d26,inset 0 1px #ffd4bb0a;
backdrop-filter: blur(24px) saturate(135%);
-webkit-backdrop-filter: blur(24px) saturate(135%);
}
.site-header .brand,.combat-ui .site-header .brand { color: #ffeadc; }
.nav > a,.nav__more-btn { color: #ead2e5; border: 1px solid transparent; }
.nav > a:hover,.nav__more-btn:hover,.nav__more-btn[aria-expanded="true"] { background: #f3b9cf12; color: #fff2e6; border-color: #e8b6d01a; }
.nav > a[aria-current="page"] { background: linear-gradient(120deg,#df9aa926,#b98cdb1f); color: #ffe1bf; border-color: #e9b3ce40; box-shadow: inset 0 1px #ffe0ce12,0 0 18px #d789b00c; }
.nav > a[aria-current="page"]::before { background: #f6c49a; box-shadow: 0 0 10px #f6bca5aa; }
.nav .nav__cta { background: linear-gradient(115deg,#f0b588,#e4a0b1); border-color: #ffd5bd77; box-shadow: 0 3px 18px #ec9ca01f; color: #342039; }
.nav .nav__cta:hover { background: linear-gradient(115deg,#ffd1a6,#f3b5c7); color: #342039; }
.nav__menu { background: linear-gradient(140deg,#4b2d4cf5,#2f203ef5); border-color: #edb9d047; box-shadow: 0 16px 50px #10091b66,inset 0 1px #ffe1cd12; backdrop-filter: blur(24px); }
.nav__menu::before { background: #4b2d4c; border-color: #edb9d047; }
.nav__group-label { color: #e4adc6; }
.nav-toggle { background: #edb4d00c; border-color: #e7b6cd40; border-radius: 10px; color: #f6dfeb; box-shadow: inset 0 1px #ffe1cd0a; }
@media(max-width:920px) {
.nav.is-open,.combat-ui .nav.is-open { background: linear-gradient(140deg,#432945fa,#2d1e3afa); border-bottom-color: #edb9d040; }
.nav > a { background: #e3b8d409; }
.mobile-nav,.combat-ui .mobile-nav { background: linear-gradient(110deg,#4b2b48e8,#332240eb); border-top-color: #edb9d033; backdrop-filter: blur(24px) saturate(135%); -webkit-backdrop-filter: blur(24px) saturate(135%); box-shadow: 0 -8px 30px #160c2226; }
.mobile-nav a[aria-current="page"] { background: linear-gradient(135deg,#e8abc52b,#c9a2ed1c); color: #ffe0c3; box-shadow: inset 0 1px #ffd4bf30; }
.mobile-nav a { color: #e6cfe4; }
}
.profile-view-tabs { display: flex; gap: 6px; align-self: flex-start; padding: 6px; border: 1px solid #e9b3ce30; background: #28192fbb; border-radius: 14px; }
.profile-view-tabs button { border: 0; border-radius: 9px; padding: 12px 24px; background: transparent; color: #cdb4d5; cursor: pointer; font-size: .85rem; font-weight: 650; transition: background .18s,color .18s; }
.profile-view-tabs button[aria-selected="true"] { background: linear-gradient(115deg,#edb090,#d997b5); color: #342039; box-shadow: 0 4px 18px #dc92a326; }
.dashboard-view { animation: view-arrival .2s ease-out; }
@keyframes view-arrival { from { opacity: .4; transform: translateY(5px); } to { opacity: 1; transform: none; } }
.player-profile__avatar { padding: 0; overflow: hidden; background: transparent; }
.player-profile__avatar img { width: 100%; height: 100%; object-fit: cover; }
.profile-editor { border-top: 1px solid #e9b3ce26; background: #4b2b4e26; }
.profile-editor summary { padding: 18px 32px; color: #f1c1c0; font-size: .85rem; cursor: pointer; font-weight: 650; }
.profile-edit-grid { padding: 4px 32px 28px; display: grid; grid-template-columns: 1fr 1fr; gap: 32px; }
.profile-edit-grid label { font-size: .8rem; font-weight: 600; }
.avatar-gallery { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; max-width: 340px; }
.avatar-choice { border: 2px solid transparent; padding: 4px; border-radius: 15px; background: #d6a0cf0d; cursor: pointer; transition: transform .15s,border-color .15s,box-shadow .15s; }
.avatar-choice img { width: 100%; height: auto; border-radius: 10px; }
.avatar-choice:hover { transform: translateY(-3px); border-color: #f3c5bb66; }
.avatar-choice[aria-pressed="true"] { border-color: #f4bb99; box-shadow: 0 0 20px #e49db538; background: #e4a9b533; }
.profile-watch-choice { display: flex; align-items: flex-start; gap: 10px; line-height: 1.6; color: #e1c8dd; }
.profile-watch-choice input { margin-top: 5px; accent-color: #e7a2b8; }
.combat-ui .player-profile .profile-settings { border: 0; border-top: 1px solid #e9b3ce26; border-radius: 0; padding: 16px 32px; background: #1b122666; }
.combat-ui .player-profile .profile-settings > .stack { gap: 14px; }
.profile-settings .muted { font-size: .8rem; }
.profile-settings .hint { font-size: .72rem; }
.channel-directory { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.channel-card { display: flex; align-items: center; gap: 14px; padding: 18px; border: 1px solid #e9b3ce30; border-radius: 14px; background: linear-gradient(125deg,#50304d99,#30213de6); }
.channel-card > img { border-radius: 12px; flex-shrink: 0; }
.channel-card > .stack { flex: 1; min-width: 0; gap: 3px; }
.channel-card h3 { font-size: 1rem; overflow-wrap: anywhere; }
.channel-card .hint { font-size: .7rem; overflow-wrap: anywhere; }
.channel-card > a { text-decoration: none; }
@media(max-width:620px) {
.profile-view-tabs { align-self: stretch; }
.profile-view-tabs button { padding: 11px 10px; flex: 1; font-size: .8rem; }
.profile-edit-grid { grid-template-columns: 1fr; gap: 24px; padding: 0 20px 24px; }
.profile-editor summary { padding: 18px 20px; }
.combat-ui .player-profile .profile-settings { padding: 16px 20px; }
.channel-directory { grid-template-columns: 1fr; }
.channel-card { gap: 10px; padding: 14px; }
}
@media(prefers-reduced-motion:reduce) { .dashboard-view { animation: none; } .avatar-choice { transition: none; } .avatar-choice:hover { transform: none; } }
.channel-card > img { width: 54px; height: 54px; object-fit: cover; }
.home-intro__action #next-step { padding: 0; margin-top: 30px; border: 0; background: none; box-shadow: none; border-radius: 0; gap: 14px; }
.hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 22px; }
.hero-player-link { display: inline-flex; align-items: center; justify-content: space-between; gap: 36px; min-height: 54px; padding: 14px 22px; color: #2d1930; font-size: .9rem; font-weight: 750; text-decoration: none; border: 1px solid #ffceb77a; border-radius: 12px; background: linear-gradient(110deg,#f5bc89,#e6a0b1); box-shadow: 0 8px 30px #e4a0a626,inset 0 1px #fff1dc55; transition: transform .18s,box-shadow .18s; }
.hero-player-link:hover { color: #2d1930; transform: translateY(-2px); box-shadow: 0 10px 36px #e4a0a647; }
.hero-player-link > span { font-size: 1.2rem; }
.hero-rules-link { display: inline-flex; align-items: center; gap: 14px; min-height: 44px; color: #f3d3dc; font-weight: 600; font-size: .8rem; text-decoration: none; }
.hero-rules-link:hover { color: #fff0e2; }
.home-intro__action #next-step .hero-access-note { color: #c8b3d0; font-size: .72rem; }
@media(max-width: 620px) { .hero-actions { gap: 10px 18px; } .hero-player-link { min-height: 52px; font-size: .82rem; padding: 13px 18px; gap: 22px; } .hero-rules-link { font-size: .75rem; gap: 8px; } }
@media(prefers-reduced-motion: reduce) { .hero-player-link { transition: none; } .hero-player-link:hover { transform: none; } }
body[data-page] .wrap { max-width: 1240px; }
body[data-page] main { padding-top: 32px; gap: 32px; }
body[data-page] main > .wrap.stack { gap: 26px; }
body[data-page] .page-title,body[data-page].combat-ui .page-title { display: flex; flex-direction: column; align-items: flex-start; text-align: left; padding: 14px 0 24px; margin: 0; border: 0; border-bottom: 1px solid #edb5cf29; gap: 12px; }
body[data-page] .page-title h1,body[data-page].combat-ui .page-title h1 { margin: 0; text-align: left; font-size: clamp(2rem,4vw,3.2rem); line-height: 1.08; letter-spacing: -.05em; font-weight: 750; }
body[data-page] .page-title .lede,body[data-page].combat-ui .page-title .lede { text-align: left; margin: 0; max-width: 650px; font-size: .9rem; color: #d0bbd8; }
.page-eyebrow { display: block; font-size: .63rem; letter-spacing: .17em; color: #e7adc7; font-weight: 700; text-transform: uppercase; }
body[data-page] .panel { border-color: #e4b1ce29; border-radius: 16px; background: linear-gradient(140deg,#30203ade,#21172eea); box-shadow: 0 12px 45px #10091b1f; }
body[data-page] .empty { min-height: 210px; padding: clamp(24px,4vw,44px); gap: 16px; background: radial-gradient(ellipse at 95% 5%,#d07a9b16,transparent 65%),#271b33de; align-items: flex-start; text-align: left; border-style: dashed; }
body[data-page] .empty > svg { width: 36px; height: 36px; opacity: .7; }
body[data-page] .empty h2 { font-size: 1.45rem; }
body[data-page] .empty p { font-size: .9rem; max-width: 580px; color: #c8b4d1; }
body[data-page] .panel h2 { font-size: 1.45rem; }
.view-switch { display: flex; gap: 6px; padding: 6px; border: 1px solid #e3adcb2b; border-radius: 12px; background: #25182f99; width: fit-content; max-width: 100%; }
.view-switch__button { border: 0; border-radius: 8px; padding: 10px 22px; background: none; color: #d0b9d8; cursor: pointer; font-size: .8rem; font-weight: 650; }
.view-switch__button[aria-pressed="true"] { background: linear-gradient(115deg,#efb18b,#d99ab8); color: #301e32; box-shadow: 0 3px 16px #d894ad29; }
#watch-view-community,#watch-view-broadcast { display: flex; flex-direction: column; gap: 20px; }
#watch-view-community[hidden],#watch-view-broadcast[hidden] { display: none; }
.stream { border-radius: 15px; border: 1px solid #e4b1ce30; background: #281b35; overflow: hidden; }
.stream__head { padding: 20px; background: linear-gradient(120deg,#58344866,transparent); }
.stream__head h2 { font-size: 1.2rem; }
.stream__povs { padding: 14px 20px; }
.team-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.team-card { padding: 24px; border: 1px solid #e4b1ce30; border-radius: 15px; background: linear-gradient(140deg,#473049aa,#281c36f0); transition: border-color .18s,transform .18s; }
.team-card:hover { border-color: #f0b8c66b; transform: translateY(-2px); }
.team-card__top { padding-bottom: 16px; border-bottom: 1px solid #e4b1ce22; margin-bottom: 8px; }
.team-card h3 { font-size: 1.35rem; letter-spacing: -.03em; }
.team-roster-fold { margin-top: 16px; }
.team-roster-fold summary { cursor: pointer; font-size: .8rem; color: #efc0c2; font-weight: 600; }
.team-roster-fold .roster { margin-top: 16px; }
.team-search { width: min(100%,420px); background: #1e142ad9; }
.list-paging { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
#rules { display: grid; grid-template-columns: 230px minmax(0,1fr); padding: 0; overflow: hidden; }
.rule-navigation { padding: 26px; background: #170f234a; border-right: 1px solid #e4b1ce22; }
.rule-navigation label { font-size: .7rem; font-weight: 700; color: #e4adc7; display: block; margin-bottom: 12px; }
.rule-navigation select { font-size: .8rem; width: 100%; }
.rule-content { padding: clamp(24px,4vw,40px); min-height: 300px; }
.rule-topic { gap: 18px; }
.rule-topic h3 { margin: 0; font-size: 1.55rem; }
.rule-topic h4 { font-size: .95rem; margin: 12px 0 0; color: #efd0be; }
.rule-topic ul { margin: 0; padding-left: 20px; }
.rule-topic li { padding-left: 6px; margin: 10px 0; font-size: .9rem; }
#schedule > section { padding: 28px; }
#schedule .section-head { align-items: flex-start; }
#schedule .section-head p { color: #d0bbd8; font-size: .8rem; }
.sched { gap: 12px; }
#register { padding: clamp(22px,4vw,40px); }
#register .steps { padding: 12px 0 20px; border-bottom: 1px solid #e4b1ce26; }
#register .steps li { font-size: .8rem; }
#register .field { gap: 8px; }
#verify { max-width: 760px; padding: clamp(24px,4vw,40px); }
#verify .lede { font-size: 1rem; line-height: 1.75; }
#verify .muted { font-size: .8rem; line-height: 1.75; }
body[data-page="chat"] #chat { min-height: 420px; }
body[data-page="voting"] .fold { background: #281b35d9; border-color: #e4b1ce2b; border-radius: 12px; }
.trophy { border-radius: 16px; border: 1px solid #e5b0c632; overflow: hidden; background: #271b35ed; }
.trophy__banner { background: radial-gradient(ellipse,#dc9caa33,transparent 70%),#493049; }
.trophy__name { font-family: var(--font-body); }
.archive-card { display: flex; flex-direction: column; gap: 16px; text-decoration: none; }
.host-card { display: grid; grid-template-columns: 1fr 1.3fr; gap: 40px; padding: 36px 0; border-top: 1px solid #e4b1ce30; }
.host-card__identity h2 { font-size: 2rem; margin-top: 16px; letter-spacing: -.04em; }
.host-card p { white-space: pre-line; color: #d4bedb; line-height: 1.8; font-size: .92rem; }
.host-link { color: #f1c2b5; font-size: .8rem; text-decoration: none; border-bottom: 1px solid #efb3bd40; padding-bottom: 4px; }
body[data-page="admin"] .wrap { max-width: 1440px; }
#admin { padding: 0; background: transparent; border: 0; box-shadow: none; }
#admin > form { margin: 24px auto; padding: 30px; border: 1px solid #e4b1ce30; border-radius: 16px; background: #271b35ed; width: 100%; }
.admin-workspace { display: grid; grid-template-columns: 200px minmax(0,1fr); gap: 28px; align-items: start; }
.admin-sidebar { position: sticky; top: 96px; padding: 18px 12px; border: 1px solid #e4b1ce26; border-radius: 14px; background: #21162cd9; }
.admin-sidebar > .page-eyebrow { padding: 0 12px 16px; }
.admin-navigation { display: flex; flex-direction: column; gap: 5px; }
.admin-navigation button { text-align: left; background: transparent; border: 1px solid transparent; color: #cdb9d6; padding: 11px 13px; border-radius: 8px; cursor: pointer; font-size: .8rem; font-weight: 600; }
.admin-navigation button[aria-selected="true"] { background: linear-gradient(110deg,#c687a32a,#9870b626); border-color: #e3adcb40; color: #ffe0c7; }
.admin-navigation button:hover { background: #e5b0c612; }
.admin-user { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; margin-top: 20px; padding: 20px 12px 0; border-top: 1px solid #e4b1ce22; }
.admin-main { min-width: 0; gap: 20px; }
.admin-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.admin-toolbar h2 { font-size: 1.6rem; }
.admin-main > [role="tabpanel"] { padding: clamp(20px,3vw,30px); border: 1px solid #e4b1ce26; border-radius: 14px; background: #25192feb; min-height: 350px; }
.admin-main .notice { border-radius: 10px; padding: 18px 22px; background: #38243a; border-color: #dca6b52b; border-left: 3px solid #dba1bc; font-size: .8rem; }
.admin-main .notice p { font-size: .75rem; color: #cbb6d2; }
.admin-main .setup-card { padding: 20px; background: #33213cd4; border-color: #e4b1ce26; border-radius: 12px; }
.admin-main .setup-card h3 { font-size: 1.1rem; }
.admin-setting-group { padding: 20px; border: 1px solid #e4b1ce26; border-radius: 12px; background: #31213b80; }
.admin-setting-group summary { cursor: pointer; font-weight: 650; font-size: .95rem; color: #f3d0cf; }
.admin-setting-group[open] { display: flex; flex-direction: column; gap: 18px; }
.admin-setting-group[open] summary { margin-bottom: 18px; }
.admin-setting-group > .field,.admin-setting-group > .grid-2,.admin-setting-group > p { margin-top: 16px; }
.admin-main .table-wrap { border-radius: 10px; border: 1px solid #e4b1ce26; }
@media(max-width:920px) {
.admin-workspace { grid-template-columns: 1fr; gap: 20px; }
.admin-sidebar { position: static; padding: 10px; }
.admin-sidebar > .page-eyebrow,.admin-user { display: none; }
.admin-navigation { flex-direction: row; overflow-x: auto; }
.admin-navigation button { flex-shrink: 0; }
.admin-toolbar { flex-wrap: wrap; }
.rule-navigation { padding: 20px; }
#rules { grid-template-columns: 190px minmax(0,1fr); }
}
@media(max-width:620px) {
body[data-page] main { padding-top: 16px; }
body[data-page] .page-title { gap: 10px; padding-bottom: 20px; }
.team-grid { grid-template-columns: 1fr; }
.team-card { padding: 20px; }
#rules { grid-template-columns: 1fr; }
.rule-navigation { border-right: 0; border-bottom: 1px solid #e4b1ce26; }
.rule-content { padding: 22px; min-height: 220px; }
#schedule > section { padding: 20px; }
#schedule .section-head { flex-direction: column; gap: 10px; }
.view-switch { width: 100%; }
.view-switch__button { flex: 1; padding-inline: 12px; }
.admin-main > [role="tabpanel"] { padding: 18px; }
.admin-toolbar h2 { font-size: 1.4rem; }
.admin-toolbar .btn { min-height: 38px; padding: 8px 12px; }
.host-card { grid-template-columns: 1fr; gap: 24px; }
.list-paging { flex-wrap: wrap; }
}
@media(prefers-reduced-motion:reduce) { .team-card { transition: none; } .team-card:hover { transform: none; } }
.chat { border: 1px solid #e4b1ce30; border-radius: 16px; overflow: hidden; background: #21172edb; height: min(650px,74dvh); min-height: 430px; }
.chat__rooms { background: #21152dcc; padding: 16px; border-right: 1px solid #e4b1ce26; overflow-y: auto; }
.chat__room { border-radius: 9px; }
.chat__room.is-active { background: #d693b526; color: #ffe1c8; }
.chat__main { min-height: 0; min-width: 0; }
.chat__head { background: #39223d66; border-color: #e4b1ce26; }
.chat__head h2 { font-size: 1.2rem; }
.chat__head p { font-size: .72rem; }
.chat__log { overscroll-behavior: contain; }
.msg { background: #49304c7a; border-radius: 12px; border-color: #e4b1ce20; }
.msg--mine { background: #a7678d33; border-color: #e9a9b940; }
.chat__form { background: #24172ecc; border-color: #e4b1ce26; }
.private-dialog { max-width: 540px; width: calc(100% - 32px); color: #fff0e2; background: #30203c; border: 1px solid #e4b1ce66; border-radius: 18px; padding: 30px; box-shadow: 0 24px 100px #0007; }
.private-dialog::backdrop { background: #10091b99; backdrop-filter: blur(8px); }
.private-dialog h2 { font-size: 1.6rem; }
.private-dialog p { font-size: .85rem; }
@media(max-width:620px) { .chat { height: 70dvh; min-height: 440px; } .chat__rooms { padding: 10px; } .private-dialog { padding: 22px; } }
@media(max-width:920px) { .admin-user { display:flex;flex-direction:row;align-items:center;justify-content:space-between;margin:10px 0 0;padding:10px 8px 0;border-top:1px solid #e4b1ce22; } }
:root { --arena-title: "Arial Narrow","Segoe UI",Arial,sans-serif; }
.combat-ui { --arena-title: "Arial Narrow","Segoe UI",Arial,sans-serif; }
body { font-kerning: normal; }
.scene { isolation: isolate; }
.is-away .scene::before,.is-away .scene::after { animation-play-state: paused; }
.site-header .brand img { object-fit: contain; }
.nav__menu { background: linear-gradient(140deg,#432b48,#2c1e39); }
.nav__menu a { min-height: 43px; display: flex; align-items: center; }
.nav__menu a:hover { background: #e4b1ce14; }
.home-page main { gap: 36px; }
.home-intro { align-items: center; padding-top: 4px; padding-bottom: 0; }
.home-intro .hero { padding-block: 30px; }
.home-intro .hero::before { box-shadow: 0 0 0 22px #d996ae04; border-color: #d996ae13; }
.home-intro__action .arrival-title { max-width: 560px; }
.home-intro__action .arrival-lede { font-size: .95rem; color: #e1cee5; }
.home-intro__action #next-step .hero-access-note { color: #dfcbe2; line-height: 1.6; }
.edition-spotlight { padding-block: 22px; background: linear-gradient(110deg,#513047e0,#332540e0); }
.edition-spotlight .facts span { font-size: .68rem; color: #dfcadf; line-height: 1.45; }
.destination-grid { gap: 14px; }
.destination { padding: 22px 24px; gap: 12px; background: linear-gradient(145deg,#3b273ee8,#2b1e37f0); }
.destination__copy { font-size: .8rem; color: #d9c6df; }
.destination__index { letter-spacing: .12em; }
.destination__action { padding-top: 4px; }
.home-match-centre { display: flex; flex-direction: column; gap: 22px; }
.home-centre-head { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.home-centre-head h2 { margin-top: 8px; font-size: 1.6rem; }
.home-centre-head .view-switch button { min-height: 42px; padding: 9px 18px; border: 0; border-radius: 8px; background: none; color: #dbc6e2; font-size: .78rem; font-weight: 650; cursor: pointer; }
.home-centre-head .view-switch button[aria-selected="true"] { color: #321f33; background: linear-gradient(115deg,#eeb48c,#dca0bc); box-shadow: 0 3px 14px #d894ad1a; }
.home-match-centre > [role="tabpanel"] { min-height: 225px; }
.home-match-centre .home-grid { gap: 18px; }
.home-match-centre .home-grid .panel { border-color: #e4b1ce26; background: linear-gradient(135deg,#30213ce8,#23182fea); }
.home-match-centre .section-head { margin-bottom: 18px; }
.home-match-centre .empty { min-height: 180px; align-items: flex-start; text-align: left; border: 1px dashed #e4b1ce35; border-radius: 14px; background: #271b33de; padding: 26px; }
.home-match-centre #featured > .panel { border-style: dashed; }
.home-match-centre #bracket-preview > .empty { border: 0; background: none; }
.home-match-centre .empty > svg { width: 34px; height: 34px; }
.home-match-centre .empty p { font-size: .85rem; color: #d8c4df; }
.home-grid .daylist { margin-block: 10px; }
.home-grid .daylist li { padding-block: 8px; }
.home-grid .home-line { font-size: .8rem; }
body[data-page] .hint { color: #cdbbd4; }
body[data-page] .field > label { font-size: .83rem; color: #f1deed; }
.input::placeholder { color: #b8a5c2; opacity: 1; }
.input:focus { border-color: #e8afc3; box-shadow: 0 0 0 3px #e8afc313; }
.btn:disabled { cursor: not-allowed; opacity: .5; }
summary { min-height: 28px; }
summary:focus-visible { outline-offset: 5px; }
.profile-editor summary:hover,.team-roster-fold summary:hover,.admin-setting-group summary:hover { color: #ffdbbe; }
.player-profile__banner { height: 125px; }
.profile-stat { padding: 18px; }
.profile-stat span { font-size: .75rem; color: #d2bddc; }
.profile-heroes summary { cursor: pointer; padding-block: 6px; }
.profile-heroes[open] .profile-hero { margin-top: 8px; }
.rule-topic li { line-height: 1.7; margin-block: 6px; }
.rule-topic h3 { color: #f8d2b3; }
body[data-page] .rule-content { min-height: 270px; }
.site-footer { margin-top: 12px; padding-block: 24px; }
.site-footer .wrap { gap: 20px; align-items: center; }
.site-footer a { min-height: 36px; display: inline-flex; align-items: center; font-size: .72rem; }
@media(min-width:921px) and (max-width:1100px) { .site-header .brand span { display: none; } .site-header .wrap { gap: 8px; } }
@media(max-width:760px) {
.home-page main { padding-top: 12px; gap: 28px; }
.home-intro { gap: 10px; }
.home-intro .hero { padding-block: 12px 22px; }
.home-intro .hero__logo { width: min(75%,280px); }
.home-intro .tagline { margin-top: 8px; }
.home-intro__action { padding-top: 4px; }
.home-intro__action .arrival-title { margin-block: 16px; }
.home-intro__action #next-step { margin-top: 22px; }
.home-centre-head { flex-direction: column; align-items: flex-start; gap: 18px; }
.home-centre-head .view-switch { width: 100%; }
.home-centre-head .view-switch button { flex: 1; padding-inline: 12px; }
.home-match-centre .home-grid .panel { padding: 22px; }
.destination { padding: 20px; gap: 10px; }
.destination__copy { max-width: 46ch; }
.site-footer .wrap { align-items: flex-start; }
.site-footer .row { flex-wrap: wrap; gap: 4px 16px; }
}
@media(pointer:coarse) { .scene::before,.scene::after { animation: none; } .panel,.combat-ui .panel { backdrop-filter: none; -webkit-backdrop-filter: none; } }
.home-match-centre .enter { animation: none; opacity: 1; transform: none; }
.edition-spotlight .facts { flex-direction: row; }
@media(max-width:760px) {
.destination-grid { gap: 10px; }
.destination { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 8px 16px; padding: 18px 20px; }
.destination__index,.destination__title { grid-column: 1; }
.destination__index { font-size: .58rem; }
.destination__title { font-size: 1.1rem; }
.destination__title > span,.destination__copy { display: none; }
.destination__action { grid-column: 2; grid-row: 1 / 3; align-self: center; padding: 0; font-size: 0; }
.destination__action > span { font-size: 1.2rem; }
.edition-spotlight .facts { flex-direction: row; align-items: flex-start; }
.edition-spotlight .facts li { padding-inline: 4px; }
.edition-spotlight .facts span { font-size: .62rem; }
}
.profile-hub-toolbar { display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap; }
.squad-intro{display:flex;align-items:center;justify-content:space-between;padding:32px 36px;gap:24px;border:1px solid #b87a9c55;background:linear-gradient(110deg,#27142fe8,#100b20e8);border-left:3px solid #efb889}.squad-intro h2{font-size:clamp(26px,3vw,42px);margin:12px 0}.squad-intro p{color:#c9b8ce;max-width:640px}.squad-intro__badge{text-align:center;min-width:100px;color:#f5be8b}.squad-intro__badge span{font-size:11px;letter-spacing:2px}.squad-intro__badge strong{display:block;font-size:64px;line-height:1.2}.squad-empty{background:linear-gradient(120deg,#24172de8,#140f24e8);border-style:solid;min-height:230px;justify-content:center;padding:32px;border-left:3px solid #d68cac}.squad-empty .btn{align-self:flex-start}.event-calendar{padding:28px;background:#130d22ed;border:1px solid #ac779c55}.calendar-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.calendar-heading h2{margin:6px 0}.calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:20px}.calendar-grid,.calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays{padding:10px 0;color:#d9b5d0;text-align:center;font-size:12px}.calendar-day{min-height:88px;padding:9px;background:#25182f;border:1px solid #b78aab22;color:#f8e6d5;text-align:left;cursor:pointer;min-width:0}.calendar-day:hover,.calendar-day.is-selected{background:#51304d;border-color:#e4a77e}.calendar-day.is-today>span:first-child{display:inline-grid;place-items:center;border-radius:50%;background:#f3b489;color:#211123;width:25px;height:25px}.calendar-day--blank{background:#160f22;cursor:default}.calendar-day__event{display:block;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f4ba89;margin-top:5px}.calendar-detail{padding:20px;background:linear-gradient(160deg,#38213a,#1b122b);border-top:2px solid #d79ab2}.calendar-detail p{color:#cbb9cf;font-size:13px}.calendar-event{padding:16px 0;border-bottom:1px solid #c498b633}.calendar-tba{padding-top:20px;border-top:1px solid #b78aab44}.calendar-tba__event{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px;background:#2c1c33}.calendar-tba__event p{font-size:13px;margin:6px 0;color:#c9b8ce}@media(max-width:760px){.calendar-layout{grid-template-columns:1fr}.calendar-day{min-height:62px;padding:5px}.event-calendar{padding:14px}.calendar-heading{align-items:flex-start;flex-direction:column}.squad-intro{padding:22px}.squad-intro__badge{min-width:60px}.squad-intro__badge strong{font-size:44px}.calendar-day__event{font-size:8px}}
.weekly-workspace{padding:28px;background:#130d22ed;border:1px solid #ac779c55}.weekly-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.weekly-day{padding:18px 8px;min-height:138px;background:linear-gradient(160deg,#342039,#1a1229);color:#fce7d6;border:1px solid #bd87ac44;cursor:pointer;text-align:center}.weekly-day:hover,.weekly-day.is-selected{border-color:#edb48d;background:linear-gradient(160deg,#61364e,#2b1a35)}.weekly-day.is-today{box-shadow:inset 0 3px #e8ac83}.weekly-day b{display:block;font-size:36px;line-height:1.4}.weekly-day__weekday{display:block;font-size:12px;text-transform:uppercase;letter-spacing:1px;color:#e0b0ca}.weekly-day__count{font-size:11px;color:#d9c2d8}.weekly-details{padding:24px;background:#24182fb8;border-top:2px solid #dc9caf}.weekly-details h3{margin:0}.schedule-tba-callout,.schedule-tba-day{padding:24px;background:linear-gradient(120deg,#38243b,#1b1229);border:1px solid #b780a344}.schedule-tba-callout{display:flex;align-items:center;justify-content:space-between;gap:20px}.schedule-tba-callout p{margin:6px 0;color:#cab5cb}.schedule-tba-day h3{margin:8px 0}.schedule-tba-day p{color:#cbb6cf}.host-card+.host-card{margin-top:20px}@media(max-width:700px){.weekly-workspace{padding:14px}.weekly-grid{gap:3px}.weekly-day{min-height:104px;padding:12px 2px}.weekly-day b{font-size:24px}.weekly-day__weekday{font-size:10px;letter-spacing:0}.weekly-day__count{font-size:9px}.weekly-details{padding:14px}.schedule-tba-callout{align-items:flex-start;flex-direction:column}}
.roster-landing,.broadcast-lobby{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);border:1px solid #c595a955;background:#160e23ef;overflow:hidden}.roster-landing__main{padding:48px;position:relative;background:radial-gradient(ellipse at 0 100%,#75426144,transparent 70%)}.roster-landing h2,.broadcast-lobby h2{font-size:clamp(32px,4vw,52px);line-height:1.14;margin:22px 0}.roster-landing h2 em,.broadcast-lobby h2 em{font-style:normal;color:#edb7b6}.roster-landing__main>p,.broadcast-lobby__centre>p{max-width:480px;color:#cdbbce;font-size:14px;line-height:1.9;margin-bottom:28px}.roster-text-link{color:#e9c6a3;font-size:12px;text-decoration:none;border-bottom:1px solid #b9869a66;padding:7px 0;align-self:flex-start}.roster-text-link:hover{color:#fff1d8;border-color:#ffcb9d}.roster-landing__aside{padding:32px;background:linear-gradient(145deg,#472a443d,#25172d);border-left:1px solid #bd819e44;position:relative}.roster-crest{position:absolute;right:22px;top:22px;opacity:.18}.roster-crest svg{width:100px;height:100px}.roster-path{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:24px}.roster-path li{display:flex;gap:16px;position:relative}.roster-path li>span{flex-shrink:0;display:grid;place-items:center;width:30px;height:30px;border:1px solid #d19bb16b;color:#f4c398;font-size:11px}.roster-path b{font-size:14px}.roster-path p{font-size:12px;line-height:1.7;color:#bfa9c6;margin:6px 0 0}.broadcast-lobby__screen{padding:28px 36px;background:radial-gradient(ellipse at 75% 75%,#75476055,transparent 65%),linear-gradient(150deg,#23132c,#100c1c);display:flex;flex-direction:column;position:relative}.broadcast-lobby__screen:after{content:'';position:absolute;inset:10px;border:1px solid #c18a9d22;pointer-events:none}.broadcast-signal{display:flex;align-items:center;gap:8px;font-size:10px;font-weight:700;letter-spacing:1.5px;color:#d3abc3}.broadcast-signal i{width:6px;height:6px;background:#d5a9b6;border-radius:50%;box-shadow:0 0 12px #df98b977}.broadcast-lobby__centre{padding:14px 0}.broadcast-lobby__footer{display:flex;justify-content:space-between;gap:12px;font-size:8px;letter-spacing:1.3px;color:#9c809f;border-top:1px solid #aa779f33;padding-top:18px}.broadcast-lobby__aside{padding:36px;display:flex;flex-direction:column;justify-content:center;gap:16px;background:linear-gradient(145deg,#3a253d,#1b1328);border-left:1px solid #b684a044}.broadcast-lobby__aside h3{font-size:26px;margin:0}.broadcast-lobby__aside p{font-size:13px;color:#cdb8ce;line-height:1.8;margin:0 0 8px}.broadcast-lobby__aside .btn{font-size:12px;justify-content:center}.match-centre-strip{display:flex;align-items:center;gap:24px;flex-wrap:wrap;padding:15px 20px;background:#1b1125e8;border:1px solid #b783a144;font-size:11px;color:#c5aac9}.match-centre-strip>span:first-child{display:flex;align-items:center;gap:9px;color:#e6b69b;font-size:10px;letter-spacing:1.5px}.match-centre-strip__dot{width:6px;height:6px;background:#eab599;transform:rotate(45deg)}.match-centre-strip>a{margin-left:auto;color:#eac5b0;text-decoration:none}.weekly-day,.calendar-day{transition:background .18s,border-color .18s}.weekly-day:focus-visible,.calendar-day:focus-visible{outline:2px solid #ffd2a4;outline-offset:3px}.profile-hub-toolbar{border-bottom:1px solid #d49ab575}.schedule-tba-day{position:relative;border-left:3px solid #d89ab4}.schedule-tba-day .squad-step{font-size:10px;letter-spacing:1.5px;color:#e2b190}.weekly-workspace>.hint{max-width:65ch}@media(max-width:760px){.roster-landing,.broadcast-lobby{grid-template-columns:1fr}.roster-landing__main{padding:28px}.roster-landing__aside,.broadcast-lobby__aside{padding:26px;border-left:0;border-top:1px solid #b684a044}.broadcast-lobby__screen{padding:25px}.broadcast-lobby h2,.roster-landing h2{font-size:34px}.match-centre-strip{gap:14px;padding:14px}.match-centre-strip>a{margin-left:0}.broadcast-lobby__footer{font-size:7px}.roster-landing__main .row{align-items:flex-start;flex-direction:column}}
.rule-reading-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:22px;margin-bottom:26px;border-bottom:1px solid #b986a14d}.rule-progress{font-size:10px;letter-spacing:1.5px;color:#d8b4cb}.rule-reading-footer{display:flex;justify-content:space-between;gap:12px;margin-top:30px;padding-top:20px;border-top:1px solid #b986a14d}.rule-content{background:linear-gradient(135deg,#25162bdc,#130d21ef)}.rule-topic-button{transition:background .18s,border-color .18s}.rule-topic-button[aria-pressed=true]{border-color:#e0a987;background:linear-gradient(100deg,#6b3b5144,#33203c);box-shadow:inset 2px 0 #f0bd93}.playbook-next{display:flex;justify-content:space-between;align-items:center;gap:24px;background:linear-gradient(110deg,#3c233cdd,#1a1126ee);border:1px solid #ba879d55;padding:26px 32px}.playbook-next h2{font-size:25px;margin:8px 0 0}.vote-briefing{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:28px 32px;border:1px solid #bc819e55;border-left:3px solid #e7b18a;background:linear-gradient(115deg,#3b2439ed,#160e24ed)}.vote-briefing h2{font-size:clamp(26px,3vw,38px);margin:10px 0}.vote-briefing p{font-size:13px;line-height:1.8;color:#cbb5ce;max-width:650px;margin:0}.vote-briefing>a{white-space:nowrap}.archive-lobby{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,1fr);border:1px solid #bd8ba555;background:radial-gradient(ellipse at 5% 90%,#75416744,transparent 65%),#160e24ee;overflow:hidden}.archive-lobby__copy{padding:42px}.archive-lobby h2{font-size:clamp(32px,4vw,50px);line-height:1.12;margin:22px 0}.archive-lobby h2 em{font-style:normal;color:#edbab6}.archive-lobby__copy>p{font-size:14px;line-height:1.9;color:#cbb6ce;max-width:490px;margin-bottom:26px}.archive-keepsakes{padding:34px;background:linear-gradient(145deg,#43273d66,#20152c);border-left:1px solid #bc839b55;display:flex;flex-direction:column;justify-content:center;gap:24px}.archive-keepsake{display:flex;gap:18px;align-items:flex-start}.archive-keepsake>span{font-size:11px;letter-spacing:1px;color:#e9b78e;padding-top:5px}.archive-keepsake h3{font-size:22px;margin:0 0 6px}.archive-keepsake p{font-size:12px;color:#baa4c4;line-height:1.7;margin:0}.archive-card{border-top:2px solid #d69cac}.archive-card:hover{border-color:#edc494;transform:translateY(-2px)}.rule-reading-footer .btn:focus-visible{outline:2px solid #ffd2a4;outline-offset:3px}@media(max-width:760px){.archive-lobby{grid-template-columns:1fr}.archive-lobby__copy,.archive-keepsakes{padding:26px}.archive-keepsakes{border-left:0;border-top:1px solid #bc839b55}.vote-briefing,.playbook-next{padding:24px;align-items:flex-start;flex-direction:column}.rule-reading-head{padding-bottom:16px;margin-bottom:20px}.rule-reading-footer .btn{font-size:11px;padding:12px}.archive-lobby__copy .row{align-items:flex-start;flex-direction:column}.rule-navigation{padding:20px}}
.rule-reading-head{scroll-margin-top:95px}.rule-topic h3:focus{outline:none}
.bracket-overview{display:flex;align-items:center;gap:28px;justify-content:space-between;padding:22px 28px;border:1px solid #bd8da455;background:linear-gradient(110deg,#38223beb,#170f24eb)}.bracket-overview>div:first-child{display:flex;flex-direction:column;gap:9px}.bracket-overview>div:first-child>b{font-size:19px}.bracket-overview__stats{display:flex;gap:28px}.bracket-overview__stats>div{text-align:center;display:grid;gap:5px}.bracket-overview__stats strong{font-family:var(--font-display);font-size:30px;color:#f1bf95}.bracket-overview__stats span{font-size:9px;letter-spacing:1.4px;color:#bea6c6}.bracket-launch{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,1fr);border:1px solid #bd8da455;background:#170f24ed}.bracket-launch__copy{padding:40px;background:radial-gradient(ellipse at 5% 90%,#8c4a6444,transparent 70%)}.bracket-launch h2{font-size:clamp(32px,4vw,50px);line-height:1.1;margin:20px 0}.bracket-launch h2 em{font-style:normal;color:#eab8b8}.bracket-launch__copy>p{color:#cbb5ce;font-size:14px;line-height:1.9;max-width:490px;margin-bottom:26px}.bracket-launch__path{padding:32px;background:linear-gradient(140deg,#42264066,#21152d);border-left:1px solid #bc87a155;display:grid;gap:24px}.bracket-path-stop{display:flex;gap:18px}.bracket-path-stop>span{font-size:11px;color:#efbd97;padding-top:5px}.bracket-path-stop h3{font-size:23px;margin:0 0 7px}.bracket-path-stop p{font-size:12px;line-height:1.7;color:#bfa8c9;margin:0}.bracket-zoom-label{display:grid;place-items:center;min-width:48px;font-size:11px;color:#f3c39c;background:#1c1228ee;border:1px solid #bf8ea455}.champion-browser{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px;background:#21142cea;border:1px solid #bd8da455}.champion-browser>div:first-child{display:grid;gap:12px;min-width:0;flex:1}.champion-browser .input{max-width:480px}.champion-browser .hint{font-size:10px;letter-spacing:1.2px}.champion-legacy-notes{display:flex;flex-wrap:wrap;gap:10px 18px;border-top:1px solid #c68b9f44;padding-top:20px;font-size:8px;letter-spacing:1.4px;color:#bd9dc3}.champion-roster summary{font-size:14px;color:#f2c699;cursor:pointer}.champion-roster .roster{margin-top:18px}.champion-roster{padding:18px;border:1px solid #b2809c44;background:#24162f99}
.profile-career-head>.row{gap:10px}.player-profile .profile-career{padding:20px 30px 24px}.career-view-switch{margin-bottom:22px}.career-overview{gap:22px}.player-profile .profile-stats{gap:0;border:1px solid #bd8ba14d;background:linear-gradient(115deg,#39223bd9,#21162eee);margin:0}.player-profile .profile-stat{border:0;border-right:1px solid #bd8ba13d;background:none;padding:22px 24px;min-width:0}.player-profile .profile-stat:last-child{border-right:0}.player-profile .profile-stat b{font-size:36px}.career-section-label{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:14px;color:#bca2c4}.career-section-label>span:last-child{font-size:10px;letter-spacing:1px}.career-rank-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.career-rank-card{padding:16px 18px;background:#291b33;border:1px solid #bb88a044;border-top:2px solid #c892b0;display:grid;gap:9px}.career-rank-role{font-size:11px;color:#c2aacb}.career-rank-card b{font-size:18px;color:#f1c59e}.career-hero-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.career-hero-card{display:flex;align-items:center;gap:14px;padding:14px;border:1px solid #ba85a044;background:linear-gradient(110deg,#35203c,#20152d)}.career-hero-card img{width:58px;height:58px;object-fit:cover;border:1px solid #dcaa8d66;background:#39203d}.career-hero-card>div{display:grid;gap:6px;flex:1;min-width:0}.career-hero-card b{text-transform:capitalize;font-size:15px}.career-hero-card>div span{font-size:11px;color:#bea6c7}.career-hero-card>strong{font-size:12px;color:#e8bc95;white-space:nowrap}.account-connections-dialog{width:min(660px,calc(100% - 28px));max-height:86dvh;overflow:auto;border:1px solid #daaa9199;background:linear-gradient(140deg,#2d1935,#140d22);color:#f7e6d5;padding:28px;box-shadow:0 24px 100px #0009}.account-connections-dialog::backdrop{background:#0b0614cf;backdrop-filter:blur(7px)}.connection-modal-close{float:right;margin-bottom:18px}.connection-settings-content{clear:both;gap:20px}.connection-modal-heading{border-bottom:1px solid #bb85a144;padding-bottom:18px}.connection-modal-heading h2{font-size:30px;margin:10px 0 0}.connection-settings-content>p,.connection-settings-content .hint{font-size:12px;line-height:1.8;color:#c9b0ce}.player-profile .profile-footer{padding-top:16px;padding-bottom:16px;gap:12px;min-height:0}.player-profile .profile-footer>span{margin-left:auto}
body[data-page="admin"].admin-signed-in .page-title{min-height:120px;padding:22px 30px}body[data-page="admin"].admin-signed-in .page-title h1{font-size:36px}body[data-page="admin"].admin-signed-in .admin-main>[role="tabpanel"]{border:0;padding:0;background:transparent;min-height:300px}body[data-page="admin"].admin-signed-in .admin-edition-context{border-left:0;border:1px solid #b47f9c55;border-radius:0;padding:14px 18px;background:#24172eed;gap:10px}body[data-page="admin"].admin-signed-in .admin-toolbar{padding-bottom:14px;border-bottom:1px solid #bc88a14d}body[data-page="admin"].admin-signed-in .admin-toolbar h2{font-size:29px;margin:0}body[data-page="admin"].admin-signed-in .admin-sidebar{padding:16px 12px;background:linear-gradient(160deg,#2d1b34f5,#160e24f5)}body[data-page="admin"].admin-signed-in .admin-nav-group{padding-block:10px}body[data-page="admin"].admin-signed-in .admin-navigation [role=tab]{min-height:42px;padding:10px 12px}body[data-page="admin"].admin-signed-in .admin-user{display:grid;gap:12px;border-top:1px solid #b9809e44;padding-top:16px;margin-top:12px}.discord-connection{padding:28px;background:linear-gradient(130deg,#302039f2,#170f25f2);border:1px solid #bd8a9f55;border-top:2px solid #e8b28c;display:grid;gap:22px}.discord-connection__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.discord-connection h3{font-size:28px;margin:12px 0}.discord-connection p{font-size:12px;color:#cbb1d0;line-height:1.8;margin:0}.discord-next-action{padding:15px 18px;background:#4a2e414f;border-left:2px solid #d2a0b4}.discord-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.discord-service{padding:18px;border:1px solid #bd8ca044;background:#21162d;display:grid;gap:12px}.discord-service>span{font-size:11px;color:#c5adcd}.discord-service b{font-size:16px}.service-ready{color:#a9d7be}.service-missing{color:#e9b092}.discord-technical{border-top:1px solid #b9819f44;padding-top:18px}.discord-technical summary{font-size:12px;color:#e1b6c3}.discord-technical .roster{font-size:12px;margin-top:18px}.discord-technical .roster li{display:flex;justify-content:space-between;gap:16px}.discord-technical .hint{margin-top:14px}.discord-view-switch{flex-wrap:wrap}
body[data-page] input.input,body[data-page] select.input,body[data-page] textarea.input{border-color:#bb88a14d;background-color:#21152de8;color:#f4e2d5;border-radius:4px}body[data-page] .input:focus{border-color:#e8b58f;box-shadow:0 0 0 3px #e8b58f14;outline:none}body[data-page] .field>label{font-size:12px;color:#ddc4d7}body[data-page] .fold>summary{padding-block:10px}body[data-page] .table-wrap{border:1px solid #b5839c44}body[data-page] .data th{background:#302039;color:#dcb2cb;font-size:10px;letter-spacing:.8px;text-transform:uppercase}body[data-page] .data td{font-size:12px}body[data-page] .btn:focus-visible{outline:2px solid #ffd1a1;outline-offset:3px}body[data-page] .modal{background:linear-gradient(140deg,#2c1b35,#150e23);border-color:#dba78b99}body[data-page] .modal::backdrop{background:#0b0614cf;backdrop-filter:blur(6px)}
@media(max-width:760px){.bracket-overview{padding:20px;flex-wrap:wrap;gap:20px}.bracket-overview__stats{width:100%;justify-content:space-between}.bracket-launch{grid-template-columns:1fr}.bracket-launch__copy,.bracket-launch__path{padding:26px}.bracket-launch__path{border-left:0;border-top:1px solid #bc87a155}.champion-browser{align-items:stretch;flex-direction:column;padding:18px}.career-rank-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.career-hero-grid{grid-template-columns:1fr}.player-profile .profile-career{padding:18px}.player-profile .profile-stat{padding:18px 14px}.player-profile .profile-stat b{font-size:28px}.account-connections-dialog{padding:22px}.profile-career-head{flex-wrap:wrap;gap:12px}.profile-career-head>.row{width:100%;justify-content:space-between}body[data-page="admin"].admin-signed-in .admin-user{display:flex;justify-content:space-between;align-items:center}body[data-page="admin"].admin-signed-in .admin-toolbar h2{font-size:26px}.discord-service-grid{grid-template-columns:1fr}.discord-service{display:flex;justify-content:space-between;align-items:center;padding:14px}.discord-connection{padding:22px}.discord-connection h3{font-size:25px}.discord-connection__heading{flex-wrap:wrap}.bracket-launch__copy .row{align-items:flex-start;flex-direction:column}}
.admin-login-card{max-width:560px;padding:32px;background:radial-gradient(ellipse at 100% 0,#7a3d5d44,transparent 65%),#1a1027f2;border:1px solid #c58a9d66;border-top:2px solid #edba94;gap:18px}.admin-login-card h2{font-size:35px;margin:0}.admin-login-card>.hint{font-size:13px;line-height:1.8;margin:0 0 8px}.admin-login-card>.muted{font-size:11px;line-height:1.8;border-top:1px solid #b5809a44;padding-top:18px}.admin-login-card button[type=submit]{min-width:160px}
.career-rank-card{display:flex;align-items:center;gap:12px;min-width:0}.career-rank-copy{display:grid;gap:8px;min-width:0}.career-rank-emblem{width:72px;height:72px;object-fit:contain;flex:0 0 72px;filter:drop-shadow(0 4px 10px #0005)}.career-rank-card b{text-transform:capitalize}.career-rank-emblem[hidden]{display:none}@media(max-width:480px){.career-rank-card{padding:12px;gap:8px}.career-rank-emblem{width:48px;height:48px;flex-basis:48px}.career-rank-card b{font-size:15px}}
body[data-page="admin"].admin-signed-in .admin-main{background:linear-gradient(135deg,#1c1227f2,#21132aeb);border:1px solid #b985a13d;padding:24px;gap:20px}
body[data-page="admin"].admin-signed-in .admin-sidebar{border-radius:0}
body[data-page="admin"].admin-signed-in .admin-navigation [role=tab]{border-radius:3px}
.admin-save-bar{position:sticky;bottom:16px;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border:1px solid #c28ca365;background:#28182ff5;box-shadow:0 8px 26px #09050d66;backdrop-filter:blur(12px)}
.admin-main .admin-setting-group{border-radius:3px;background:#291b33;border-color:#bc87a13d;padding:20px}
.admin-main .admin-setting-group[open]{gap:14px}.admin-main .admin-setting-group[open] summary{margin-bottom:0}.admin-main .admin-setting-group>.field,.admin-main .admin-setting-group>.grid-2,.admin-main .admin-setting-group>p{margin-top:8px}
.admin-main .input{background:#160e22b8;border-color:#bc87a150}.admin-main textarea.input{min-height:140px;resize:vertical}
.host-editor-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(240px,1fr);gap:24px;align-items:start}.host-editor-fields{padding:22px;border:1px solid #b985a144;background:#27182f}.host-editor-fields h3{font-size:24px;margin:0 0 8px}.host-editor-preview{position:sticky;top:100px;padding:26px;border:1px solid #c596ab66;border-top:2px solid #efc18f;background:radial-gradient(ellipse at 100% 0,#9d3d672b,transparent 65%),#21152b;gap:18px}.host-editor-preview h3{font-size:30px;overflow-wrap:anywhere;margin:0}.host-preview-bio{white-space:pre-line;overflow-wrap:anywhere;color:#d2bdd9;font-size:14px;line-height:1.8}.host-editor-preview>.hint{border-top:1px solid #ba87a136;padding-top:16px}.host-editor-links{padding-top:18px}.host-editor-preview .chip{align-self:start;justify-self:start}.host-editor-form{gap:22px}
@media(max-width:1000px){.host-editor-layout{grid-template-columns:1fr}.host-editor-preview{position:static}.host-editor-preview h3{font-size:26px}}
@media(max-width:760px){body[data-page="admin"].admin-signed-in .admin-main{padding:16px}.admin-save-bar{bottom:76px;flex-wrap:wrap}.admin-save-bar .btn{margin-left:auto}.host-editor-fields,.host-editor-preview{padding:18px}}
.organizer-overview{display:grid;grid-template-columns:200px minmax(0,1fr);border:1px solid #b784a34d;background:linear-gradient(120deg,#352039b0,#21142beb);min-width:0}.organizer-readiness{display:grid;align-content:center;gap:12px;padding:24px;border-right:1px solid #c491a33d}.organizer-score{display:flex;align-items:baseline;gap:8px}.organizer-score strong{font-family:var(--font-display);font-size:58px;line-height:1;color:#f5ca9a}.organizer-score>span{color:#b69cbd;font-size:20px}.organizer-readiness progress{width:100%;height:5px;accent-color:#eabd8e;border:0}.organizer-readiness progress::-webkit-progress-bar{background:#100b19}.organizer-readiness progress::-webkit-progress-value{background:linear-gradient(90deg,#cc7d9f,#f0c591)}.organizer-next{display:grid;justify-items:start;align-content:center;gap:12px;padding:24px}.organizer-next h3{font-size:25px;margin:0}.organizer-next p{font-size:13px;line-height:1.6;color:#d1b9d8;margin:0;max-width:65ch}.organizer-next .btn{min-height:40px;padding:10px 18px}.organizer-check-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:4px}.organizer-check-heading h3{font-size:20px;margin:0}.organizer-check-heading a{font-size:12px;color:#e8bd98;text-decoration:none}.organizer-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.organizer-check{display:flex;flex-direction:column;gap:10px;padding:18px;background:#281a31;border:1px solid #b987a13d;min-width:0}.organizer-check-top{display:flex;align-items:center;gap:8px}.organizer-check-mark{display:grid;place-items:center;width:24px;height:24px;background:#b78d5a1a;border:1px solid #d4ac7e55;color:#f1c48f;font-size:14px}.organizer-check.is-ready .organizer-check-mark{color:#b3dcc8;background:#659b7a15;border-color:#82b19455}.organizer-check.needs-attention{border-top:2px solid #ee9fa9}.organizer-check h4{font-size:15px;margin:0;color:#f5dfcf}.organizer-check p{font-size:12px;line-height:1.65;color:#c2a9ca;margin:0 0 4px}.organizer-text-action{align-self:flex-start;margin-top:auto;border:0;border-bottom:1px solid #e9ba963d;background:transparent;color:#f0c7a0;padding:4px 0;font-size:12px;cursor:pointer}.organizer-text-action:hover{color:#fff0d8;border-bottom-color:currentColor}.organizer-check-note{margin:0}.organizer-check .hint{font-size:11px}
body[data-page="admin"].admin-signed-in .admin-edition-context{padding:10px 14px}body[data-page="admin"].admin-signed-in .admin-nav-group{padding-block:8px}body[data-page="admin"].admin-signed-in .admin-navigation [role=tab]{min-height:36px;padding:8px 12px}
@media(max-width:1100px){.organizer-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.organizer-overview{grid-template-columns:170px minmax(0,1fr)}}@media(max-width:600px){.organizer-overview{grid-template-columns:1fr}.organizer-readiness{grid-template-columns:1fr auto;align-items:center;border-right:0;border-bottom:1px solid #c491a33d;padding:18px}.organizer-score{grid-column:2;grid-row:1/4}.organizer-score strong{font-size:46px}.organizer-readiness progress{max-width:180px}.organizer-next{padding:18px}.organizer-check-grid{grid-template-columns:1fr}.organizer-check-heading{align-items:flex-start;flex-direction:column}.organizer-check{padding:16px}}
body[data-page="admin"].admin-signed-in .site-header,body[data-page="admin"].admin-signed-in .mobile-nav,body[data-page="admin"].admin-signed-in .site-footer,body[data-page="admin"].admin-signed-in main>.wrap>.page-title{display:none}
body[data-page="admin"].admin-signed-in main{padding:0;gap:0}body[data-page="admin"].admin-signed-in main>.wrap{max-width:none;width:100%;padding:0;margin:0}body[data-page="admin"].admin-signed-in .page{background:#100b18ed}body[data-page="admin"].admin-signed-in .scene{opacity:.14}
body[data-page="admin"].admin-signed-in .admin-workspace{grid-template-columns:238px minmax(0,1fr);gap:0;min-height:100dvh}
body[data-page="admin"].admin-signed-in .admin-sidebar{position:sticky;top:0;min-height:100dvh;max-height:100dvh;overflow-y:auto;padding:0 16px 18px;border:0;border-right:1px solid #b981a333;border-radius:0;background:radial-gradient(ellipse at 0 100%,#58304c22,transparent 60%),#1b1222;display:flex;flex-direction:column;gap:16px}
.admin-app-brand{display:flex;align-items:center;gap:10px;min-height:94px;border-bottom:1px solid #bc8c9b2b;text-decoration:none}.admin-app-brand>div{display:grid;gap:6px}.admin-app-brand b{font-size:17px;color:#f2dac5}.admin-app-brand span{font-size:10px;letter-spacing:.6px;color:#d3a77f}.admin-app-brand img{object-fit:contain}
body[data-page="admin"].admin-signed-in .admin-navigation [role=tab]{display:flex;align-items:center;gap:12px;min-height:40px;border-radius:6px;font-size:12px;padding:10px 12px}
.admin-navigation svg{width:18px;height:18px;flex-shrink:0;color:#c7a4bc}.admin-navigation [aria-selected=true] svg{color:#f7c997}
body[data-page="admin"].admin-signed-in .admin-nav-group{padding:4px 0 12px}.admin-nav-group__label{font-size:9px!important;letter-spacing:1.2px}
body[data-page="admin"].admin-signed-in .admin-user{margin-top:auto;padding:18px 0 0;display:grid;gap:14px}.admin-user-identity{display:flex;gap:10px;align-items:center}.admin-user-avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#6d304b;color:#ffd4b1;font-weight:700}.admin-user-identity>div{display:grid;gap:5px}.admin-user-identity b{font-size:12px}.admin-user-identity>div>span{font-size:10px;color:#c7a580}
body[data-page="admin"].admin-signed-in .admin-main{border:0;background:transparent;padding:22px 32px 36px;gap:20px;min-width:0}
body[data-page="admin"].admin-signed-in .admin-toolbar{padding:0 0 18px;margin-bottom:0;min-height:52px}body[data-page="admin"].admin-signed-in .admin-toolbar h2{font-size:22px;text-transform:none;letter-spacing:.3px}
body[data-page="admin"].admin-signed-in .admin-edition-context{background:#251a2d88;border-radius:7px;border-color:#b88a9c30;padding:10px 14px}.admin-edition-context .input{min-height:34px;font-size:12px}.admin-edition-context .row{gap:12px}.admin-edition-context .chip{font-size:11px}
.dashboard-content{gap:22px}.dashboard-welcome{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:30px 32px;min-height:175px;border:1px solid #b8869e55;border-radius:14px;background:linear-gradient(90deg,#231328f5 5%,#3b1d38c9 55%,#21132c66),url('../img/cinematic/reinhardt-edition.webp') center 42%/cover;overflow:hidden}.dashboard-welcome .eyebrow{font-size:9px;color:#e3b7b7}.dashboard-welcome h1{font-family:var(--font-display);font-size:clamp(30px,3vw,43px);line-height:1.15;margin:14px 0 12px;text-transform:none;letter-spacing:0}.dashboard-welcome h1>span{color:#f2c492}.dashboard-welcome p{font-size:12px;color:#d5bdd2;margin:0}.dashboard-welcome>.row{flex-shrink:0}.dashboard-welcome .btn{border-radius:6px}
.dashboard-priority-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:18px}.dashboard-priority,.dashboard-attention,.dashboard-panel{padding:22px;border:1px solid #b5889d40;border-radius:12px;background:#261b2a}.dashboard-priority{background:linear-gradient(115deg,#502239ad,#30202d);border-color:#b67b8a60}.dashboard-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.dashboard-panel-heading h2{font-family:var(--font-body);font-size:17px;font-weight:700;letter-spacing:0;margin:0;text-transform:none}.dashboard-panel-heading .btn{min-height:30px;padding:6px 10px;font-size:11px}.dashboard-panel-heading .chip{font-size:10px}.dashboard-event-progress{display:flex;align-items:center;gap:20px}.dashboard-event-progress>strong{font-family:var(--font-display);font-size:44px;color:#f0c592;font-weight:700}.dashboard-event-progress>div{flex:1;display:grid;gap:10px}.dashboard-event-progress span{color:#cdb1c6;font-size:12px}.dashboard-event-progress progress{width:100%;height:6px;accent-color:#e7ae9c}.dashboard-priority>.hint{margin:12px 0 0;font-size:11px}.dashboard-attention .hint{font-size:9px}.dashboard-task{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:1px solid #ba889a33;border-radius:7px;background:#1b1222;padding:11px 12px;color:#f0d9c8;margin-top:8px;font-size:12px;cursor:pointer}.dashboard-task svg{width:16px;height:16px;color:#ddb387}.dashboard-task>span:last-child{margin-left:auto}.dashboard-task:hover{border-color:#edba9366}.dashboard-calm{font-size:12px;color:#b6cfba;margin:0 0 12px}
.dashboard-section-label{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:2px}.dashboard-section-label .eyebrow{font-size:10px}.dashboard-section-label .hint{font-size:10px}
.dashboard-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.dashboard-metric{text-align:left;display:grid;align-content:start;gap:12px;min-height:145px;padding:18px 16px;border:1px solid #ac86a044;border-radius:12px;background:#261c2b;color:#e8d0bd;cursor:pointer;transition:transform .16s,border-color .16s}.dashboard-metric:hover{transform:translateY(-3px);border-color:#ecc39c}.dashboard-metric-icon{display:grid;place-items:center;width:31px;height:31px;border-radius:8px;background:#b484ac22;color:#d9aed3}.dashboard-metric-icon svg{width:18px;height:18px}.dashboard-metric strong{font-size:32px;font-family:var(--font-display);line-height:1}.dashboard-metric>span:last-child{font-size:11px;color:#bda4bd}.dashboard-metric.tone-mint{border-color:#518c774f}.tone-mint .dashboard-metric-icon{color:#95c9ac;background:#4a8d6c24}.dashboard-metric.tone-rose{border-color:#a85f764f}.tone-rose .dashboard-metric-icon{color:#ed9cb5;background:#9d3e6229}.dashboard-metric.tone-gold{border-color:#ad87504f}.tone-gold .dashboard-metric-icon{color:#ebbd7a;background:#ae793229}.dashboard-metric.tone-pink{border-color:#aa668f4f}.tone-pink .dashboard-metric-icon{color:#e3a2cb;background:#a23c8129}.dashboard-metric.tone-blue{border-color:#668aab4f}.tone-blue .dashboard-metric-icon{color:#abc7e1;background:#5379a229}
.dashboard-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.dashboard-list-row{display:flex;align-items:center;gap:12px;width:100%;text-align:left;border:0;border-top:1px solid #c797ad26;background:transparent;color:#f0ddcd;padding:14px 0}.dashboard-list-row>div{display:grid;gap:6px;flex:1;min-width:0}.dashboard-list-row b{font-size:13px;overflow-wrap:anywhere}.dashboard-list-row div>span{font-size:11px;color:#bea5c3}.dashboard-empty{display:grid;justify-items:center;text-align:center;padding:24px 10px;gap:10px}.dashboard-empty>svg{width:27px;height:27px;color:#bca1bc}.dashboard-empty h3{font-size:16px;font-family:var(--font-body);margin:0}.dashboard-empty p{font-size:12px;color:#bca5c4;margin:0}.dashboard-setup{padding:18px 20px!important;background:#24182d!important;border-radius:10px!important;border:1px solid #b2849e44!important;scroll-margin-top:20px}.dashboard-setup>summary{font-size:13px}.dashboard-setup[open]>div{margin-top:22px}
@media(min-width:1700px){body[data-page="admin"].admin-signed-in .admin-main{padding-inline:40px}.dashboard-welcome{min-height:190px}}
@media(max-width:1250px){.dashboard-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-welcome{align-items:flex-start;flex-direction:column;gap:20px}.dashboard-priority-grid{grid-template-columns:1fr 1fr}body[data-page="admin"].admin-signed-in .admin-main{padding:20px}}
@media(max-width:850px){body[data-page="admin"].admin-signed-in .admin-workspace{grid-template-columns:180px minmax(0,1fr)}.admin-app-brand{flex-direction:column;align-items:flex-start;padding:15px 8px}.admin-app-brand b{font-size:14px}.admin-app-brand span{font-size:9px}.dashboard-priority-grid,.dashboard-bottom-grid{grid-template-columns:1fr}.dashboard-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-welcome{padding:24px}}
@media(max-width:600px){body[data-page="admin"].admin-signed-in .admin-workspace{grid-template-columns:1fr}body[data-page="admin"].admin-signed-in .admin-sidebar{position:static;min-height:0;max-height:none;padding:12px;gap:10px;border-right:0;border-bottom:1px solid #ba879c44}.admin-app-brand{flex-direction:row;align-items:center;min-height:0;padding:0 0 10px}.admin-app-brand img{width:44px}.admin-app-brand>div{gap:3px}body[data-page="admin"].admin-signed-in .admin-navigation{flex-direction:row;overflow-x:auto;gap:4px}body[data-page="admin"].admin-signed-in .admin-nav-group{display:contents}.admin-nav-group__label{display:none}body[data-page="admin"].admin-signed-in .admin-navigation [role=tab]{white-space:nowrap;min-height:36px;font-size:11px;padding:8px}.admin-navigation svg{width:15px}body[data-page="admin"].admin-signed-in .admin-user{display:flex;flex-direction:row;justify-content:space-between;margin:0;padding:8px 0 0}.admin-user-avatar{width:28px;height:28px}.admin-user-identity>div>span{display:none}.admin-main .admin-toolbar>.row{gap:6px}.admin-toolbar .btn{font-size:10px;padding:7px!important}.dashboard-welcome h1{font-size:30px}.dashboard-section-label{align-items:flex-start;flex-direction:column;gap:6px}.dashboard-metric{min-height:130px}.dashboard-content{gap:16px}.admin-save-bar{bottom:10px}.host-editor-preview{top:15px}}
@media(prefers-reduced-motion:reduce){.dashboard-metric{transition:none}.dashboard-metric:hover{transform:none}}
body[data-page="admin"].admin-signed-in .dashboard-panel-heading h2{font-family:var(--font-body);font-size:17px;line-height:1.35;letter-spacing:0}
@media(min-width:601px){body[data-page="admin"].admin-signed-in .admin-app-brand{min-height:80px}body[data-page="admin"].admin-signed-in .admin-sidebar{gap:10px}body[data-page="admin"].admin-signed-in .admin-navigation{gap:0}body[data-page="admin"].admin-signed-in .admin-nav-group{margin-top:0;padding:6px 0;gap:2px}body[data-page="admin"].admin-signed-in .admin-nav-group+.admin-nav-group{margin-top:6px;padding-top:10px}body[data-page="admin"].admin-signed-in .admin-navigation [role=tab]{min-height:34px;padding-block:7px}body[data-page="admin"].admin-signed-in .admin-user{padding-top:12px;gap:8px}body[data-page="admin"].admin-signed-in .admin-user>.btn{min-height:32px;padding:7px 12px}}
@font-face { font-family: 'HG Display';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/barlow-condensed-700.ttf') format('truetype'); }
@font-face { font-family: 'HG Display';font-style:normal;font-weight:800;font-display:swap;src:url('../fonts/barlow-condensed-800.ttf') format('truetype'); }
:root { --font-display:'HG Display','Arial Narrow',Arial,sans-serif;--arena-title:var(--font-display);--cream:#fff2e7;--caramel:#f3c187;--line:#d58eae33;--line-strong:#dba28266;--panel-solid:#160f22;--panel:rgba(18,12,28,.93);--gutter:clamp(20px,3.5vw,50px); }
body,body.combat-ui { background:#090612;color:#fff2e7;font-family:'Segoe UI',Arial,sans-serif; }
.combat-ui { --arena-title:'HG Display','Arial Narrow',Arial,sans-serif; }
.scene,.combat-ui .scene { background:linear-gradient(180deg,#0805100a,#08051038 65%,#0805109c),url('../img/cinematic/aurora.webp') center top/cover no-repeat,#090612; }
.scene::before,.scene::after { display:none;animation:none; }
.page { background:linear-gradient(180deg,transparent 450px,#09061377 850px,#090613cc); }
body[data-page] .page { background:linear-gradient(180deg,#09061344,#090613bb 600px); }
h1,h2,h3,.combat-ui h1,.combat-ui h2,.combat-ui h3 { font-family:var(--font-display);font-weight:700;letter-spacing:.01em; }
.wrap,body[data-page] .wrap { max-width:1440px; }
.site-header,.combat-ui .site-header { background:linear-gradient(100deg,#100a1bea,#1b0f28b8 65%,#2b142aab);border-bottom:1px solid #df9ba12e;box-shadow:none;backdrop-filter:blur(16px); }
.site-header .wrap { max-width:1440px;min-height:66px;gap:20px; }
.site-header .brand,.combat-ui .site-header .brand { font-family:var(--font-display);text-transform:uppercase;font-size:1.05rem;letter-spacing:.17em;font-weight:700;gap:12px; }
.site-header .brand img { width:64px; }
.nav { gap:0; }
.nav > a,.nav__more-btn { min-height:64px;padding:10px 15px;border-radius:0;border:0;font-size:.85rem;font-weight:500;position:relative;color:#eadce9; }
.nav > a[aria-current="page"] { color:#ffd9a4;background:linear-gradient(180deg,#ec78b60f,#d66d9230);box-shadow:inset 0 -2px #efbb7e;border:0; }
.nav > a[aria-current="page"]::before { position:absolute;width:9px;height:9px;bottom:-5px;left:calc(50% - 4px);margin:0;background:#ff83d2;border:1px solid #ffe5f5;border-radius:0;transform:rotate(45deg);box-shadow:0 0 10px #ff5cbd,0 0 22px #ed6fb477;z-index:2; }
.nav > a:hover,.nav__more-btn:hover { background:#d994ad12;border:0;color:#fff1dd; }
.nav .nav__cta { min-height:40px;margin-left:15px;padding:8px 23px;color:#221426;background:linear-gradient(120deg,#ffd28f,#f6a778);font-size:.85rem;font-weight:700;border:1px solid #ffe5b7;border-radius:0;clip-path:polygon(8px 0,calc(100% - 8px) 0,100% 8px,100% calc(100% - 8px),calc(100% - 8px) 100%,8px 100%,0 calc(100% - 8px),0 8px); }
.nav .nav__cta::before { display:none; }
.nav .nav__cta:hover { background:#ffe0aa;color:#221426; }
.nav__menu { background:linear-gradient(150deg,#28132af7,#130d20fc);border:1px solid #c68f7770;border-radius:2px;box-shadow:0 20px 60px #0008; }
.nav__menu a { font-size:.85rem; }
.nav__group-label { color:#f09dca; }
.nav__more-btn.is-current { color:#ffd9a4;box-shadow:inset 0 -2px #efbb7e; }
.home-page main { padding-top:0;gap:28px; }
.home-intro { grid-template-columns:1.08fr 1fr;min-height:420px;gap:12px;padding-top:18px;padding-bottom:4px; }
.home-intro .hero { padding:0;gap:0;overflow:visible; }
.home-intro .hero::before { display:none; }
.home-intro .hero__logo { width:100%;max-width:610px;filter:drop-shadow(0 20px 34px #07030eb3);transform:none; }
.home-intro .hero:hover .hero__logo { transform:translateY(-3px);filter:drop-shadow(0 20px 40px #ff8f8e2b); }
.home-intro .tagline,.home-intro #hero-cta { display:none; }
.home-intro__action { position:relative;z-index:1;padding-block:18px; }
.eyebrow,.page-eyebrow,.home-intro__action .eyebrow { color:#ff8acd;font-size:.66rem;letter-spacing:.17em;font-weight:650; }
.home-intro__action > .eyebrow::before { content:'◆';margin-right:12px;color:#ff7ace;text-shadow:0 0 10px #ff72cc; }
.home-intro__action .arrival-title { font-family:var(--font-display);font-size:clamp(3.1rem,5.15vw,5.2rem);font-weight:800;text-transform:uppercase;line-height:.98;letter-spacing:.006em;max-width:680px;margin:18px 0;white-space:nowrap; }
.arrival-title em,.community-section-head em { background:linear-gradient(180deg,#ffdda2,#ffbe8c 50%,#eb8aaa);background-clip:text;-webkit-background-clip:text;color:transparent;font-style:normal; }
.home-intro__action .arrival-lede { font-size:clamp(.85rem,1.15vw,1.05rem);max-width:600px;color:#f0dfed; }
.home-intro__action #next-step { margin-top:26px;gap:0; }
.hero-actions { gap:28px; }
.hero-player-link { min-height:52px;min-width:220px;padding:12px 26px;border-radius:0;border:1px solid #ffe5bc;background:linear-gradient(115deg,#ffd28f,#f5aa71);color:#241325;clip-path:polygon(12px 0,calc(100% - 12px) 0,100% 12px,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);box-shadow:inset 0 0 0 3px #fbb7a280;font-size:.95rem;font-weight:750;gap:30px; }
.hero-player-link:hover { background:linear-gradient(115deg,#ffe3ad,#ffc193);color:#241325;box-shadow:inset 0 0 0 3px #ffe5bc66; }
.hero-rules-link { min-height:40px;border-bottom:1px solid #ce8aa166;border-radius:0;color:#f4e2ef;font-size:.85rem;padding-block:5px; }
.home-intro__action #next-step .hero-access-note { display:none; }
.edition-spotlight { position:relative;display:grid;grid-template-columns:1fr auto;align-items:center;min-height:170px;gap:20px;padding:24px 32px;border-radius:0;border:1px solid #e8b075a1;border-left:2px solid #f5c28c;background:linear-gradient(90deg,#10091de6 0%,#10091d80 32%,#10091d05 68%,#10091d77),url('../img/cinematic/reinhardt-edition.webp') 65% 48%/cover no-repeat;clip-path:polygon(20px 0,calc(100% - 20px) 0,100% 20px,100% calc(100% - 20px),calc(100% - 20px) 100%,0 100%,0 20px);box-shadow:inset 0 1px #ffe0a333; }
.edition-spotlight::before { width:28px;height:2px;left:-3px;top:9px;bottom:auto;transform:rotate(-45deg);background:#ffd7a0; }
.edition-spotlight::after { content:'';position:absolute;right:-3px;bottom:9px;width:28px;height:2px;background:#ffd7a0;transform:rotate(-45deg); }
.edition-spotlight__identity { position:relative;z-index:1; }
.edition-spotlight__identity h2 { font-family:var(--font-display);font-size:2.45rem;line-height:1.1;margin:6px 0 14px;letter-spacing:.01em; }
.edition-spotlight__identity .eyebrow::before { content:'◆';margin-right:10px;text-shadow:0 0 12px #fa72c8; }
.edition-badges { display:flex;flex-wrap:wrap;gap:8px; }
.edition-badges > span { display:inline-flex;align-items:center;min-height:27px;padding:3px 13px;font-size:.68rem;color:#f6e8ee;background:#100a1cb8;border:1px solid #d8b28770;border-radius:20px; }
.edition-spotlight .facts { position:absolute;right:32px;top:20px;display:block;border:0;background:none;box-shadow:none;margin:0;width:auto;text-align:right; }
.edition-spotlight .facts li { padding:0; }
.edition-spotlight .facts li:not(:first-child) { display:none; }
.edition-spotlight .facts strong { font-family:var(--font-display);font-size:1.4rem;line-height:1; }
.edition-spotlight .facts span { font-size:.6rem;color:#e5d0d8; }
.edition-spotlight__link { position:relative;align-self:end;grid-column:2;padding:10px 22px;border:1px solid #efc08d;background:#180d23d9;color:#ffd5a5;font-weight:650;font-size:.85rem;clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);white-space:nowrap; }
.community-gateways { display:flex;flex-direction:column;gap:20px; }
.community-section-head { display:flex;align-items:end;justify-content:space-between;gap:20px; }
.community-section-head h2 { font-family:var(--font-display);font-size:clamp(1.9rem,3vw,3rem);line-height:1.05;letter-spacing:.01em;text-transform:uppercase;margin-top:8px; }
.community-section-head > p { font-size:.8rem;color:#d6c2d4;line-height:1.6; }
.community-gateways .destination-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0;max-width:none; }
.community-gateways .destination { display:flex;flex-direction:column;align-items:flex-start;position:relative;isolation:isolate;min-height:180px;gap:8px;padding:22px 18px 18px 49%;border:1px solid #c982a077;border-radius:0;background:#120c1f;clip-path:polygon(14px 0,calc(100% - 14px) 0,100% 14px,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px);transition:transform .18s,border-color .18s; }
.community-gateways .destination::before { content:'';position:absolute;inset:0;z-index:-2;width:auto;height:auto;right:0;top:0;border:0;border-radius:0;transform:none;opacity:.92;background-size:cover;background-position:40% center;transition:transform .4s; }
.community-gateways .destination::after { content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,transparent 30%,#0e081988 49%,#0e0819bf 70%);pointer-events:none; }
.community-gateways .destination--orisa::before { background-image:url('../img/cinematic/orisa.webp'); }
.community-gateways .destination--symmetra::before { background-image:url('../img/cinematic/symmetra.webp'); }
.community-gateways .destination--doctrine::before { background-image:url('../img/cinematic/doctrine.webp'); }
.community-gateways .destination:hover { transform:translateY(-3px);border-color:#ffc8a1;background:#120c1f; }
.community-gateways .destination:hover::before { transform:scale(1.04); }
.community-gateways .destination__index { font-size:.52rem;letter-spacing:.12em;color:#f3afce;white-space:nowrap; }
.community-gateways .destination__title { font-family:var(--font-display);font-size:1.6rem;line-height:1;font-weight:700;text-transform:uppercase;letter-spacing:.02em; }
.community-gateways .destination__copy { display:block;font-size:.68rem;line-height:1.5;color:#e0cada; }
.community-gateways .destination__action { display:flex;align-items:center;gap:12px;width:100%;font-size:.64rem;color:#f4c8a4;padding-top:5px;margin-top:auto; }
.community-gateways .destination__action > span { font-size:1rem; }
.legacy-link { display:flex;align-items:center;justify-content:center;gap:20px;text-decoration:none;color:#f5c98f;font-size:.9rem; }
.legacy-link::before,.legacy-link::after { content:'';flex:1;height:1px;background:linear-gradient(90deg,transparent,#bd805777); }
.legacy-link::after { background:linear-gradient(90deg,#bd805777,transparent); }
.legacy-link > span:first-child { color:#ff8cca;text-shadow:0 0 10px #ff5faf; }
.home-match-centre { padding-top:12px; }
.home-centre-head h2 { font-family:var(--font-display);font-size:2rem;text-transform:uppercase;letter-spacing:.02em; }
.view-switch,.profile-view-tabs { border-radius:2px;background:#160e22eb;border-color:#c38d7955; }
.view-switch button,.profile-view-tabs button,.view-switch__button { border-radius:1px; }
.view-switch button[aria-selected="true"],.profile-view-tabs button[aria-selected="true"],.view-switch__button[aria-pressed="true"] { background:linear-gradient(120deg,#54263d,#442442);color:#ffddb2;box-shadow:inset 0 -2px #dca76d; }
body[data-page] .page-title h1,body[data-page].combat-ui .page-title h1 { font-family:var(--font-display);font-size:clamp(2.8rem,5vw,4.2rem);font-weight:800;text-transform:uppercase;letter-spacing:.02em; }
body[data-page] .page-title { border-color:#bf809a33; }
body[data-page] .panel,.panel,.combat-ui .panel { border-radius:3px;border-color:#b87b9959;background:linear-gradient(130deg,#1e122be8,#100b1deb);box-shadow:inset 0 1px #fbc89b0a; }
body[data-page] .panel h2 { font-family:var(--font-display);font-size:1.8rem;letter-spacing:.01em; }
.btn,.combat-ui .btn { border-radius:2px;background:#25152ee6;border-color:#b78a755e; }
.btn--primary,.combat-ui .btn--primary { background:linear-gradient(115deg,#ffd091,#f3ab7c);color:#2c182a;border-color:#ffdcab;font-weight:700; }
.btn--primary:hover,.combat-ui .btn--primary:hover { background:#ffdeab;color:#2c182a; }
.player-profile { border-radius:3px;border-color:#c18c8c88;background:#140d21; }
.player-profile__banner { height:135px;background:linear-gradient(90deg,#1a0c2580,#10071933),url('../img/cinematic/reinhardt-edition.webp') center 45%/cover; }
.player-profile__banner > span { font-family:var(--font-display);font-size:1.2rem;color:#ffe4bb99;letter-spacing:.15em; }
.player-profile__avatar { border-radius:6px;border-color:#170e23;outline-color:#ebba88aa; }
.combat-ui .player-profile__name h2 { font-family:var(--font-display);font-size:3rem;text-transform:uppercase;letter-spacing:.015em; }
.profile-stats { gap:10px; }
.profile-stat { border-radius:2px;background:linear-gradient(140deg,#38203d99,#1d142b);border-color:#a8739555; }
.profile-stat b { font-family:var(--font-display);font-size:2.8rem;font-weight:700;letter-spacing:.01em;line-height:1; }
.profile-editor,.combat-ui .player-profile .profile-settings { background:#150d20cc; }
.player-tile { border-radius:3px;background:linear-gradient(150deg,#43203c,#1b1128);border-color:#b97b9755; }
.player-tile__portrait { width:72px;height:72px;object-fit:cover;border:1px solid #d9a29b88;border-radius:4px; }
.player-tile > b { font-family:var(--font-display);font-size:1.65rem;text-transform:uppercase;letter-spacing:.02em; }
.player-tile__battletag { font-size:.7rem;color:#ceb8cd; }
.team-card { border-radius:3px;background:linear-gradient(135deg,#342039e8,#130d20f2);border-color:#b7858066; }
.team-card h3 { font-family:var(--font-display);font-size:1.9rem;text-transform:uppercase;letter-spacing:.02em; }
.admin-sidebar,.admin-main > [role="tabpanel"],.admin-setting-group { border-radius:3px;background:#160f23eb;border-color:#a5728e55; }
.admin-toolbar h2 { font-family:var(--font-display);font-size:2rem;letter-spacing:.02em; }
.admin-navigation button { border-radius:2px; }
.admin-navigation button[aria-selected="true"] { background:#c4719d1f;border-color:#d6a88a66;color:#ffdbb2; }
.channel-card { border-radius:3px;background:linear-gradient(110deg,#311b36,#170f25);border-color:#b9829855; }
.channel-card h3 { font-family:var(--font-display);font-size:1.7rem;text-transform:uppercase;letter-spacing:.02em; }
.site-footer,.combat-ui .site-footer { background:#090612bf;border-color:#b5826f33; }
@media(min-width:921px) and (max-width:1100px) { .nav > a,.nav__more-btn { padding-inline:12px; } .site-header .brand span { display:none; } .home-intro__action .arrival-title { font-size:4.9vw; } }
@media(max-width:920px) {
.site-header .wrap { min-height:62px; }
.site-header .brand { font-size:.95rem;letter-spacing:.1em; }
.site-header .brand img { width:52px; }
.nav.is-open,.combat-ui .nav.is-open { background:linear-gradient(135deg,#211027fa,#100a1bfc);border-bottom-color:#d0a17f66; }
.nav > a { min-height:44px;border:1px solid #c5859b20;border-radius:2px;padding:11px 14px; }
.nav > a[aria-current="page"]::before { position:static;transform:rotate(45deg);margin-right:10px;width:6px;height:6px; }
.nav .nav__cta { margin:0;min-height:44px; }
.nav__menu { background:none;box-shadow:none;border:0; }
.nav-toggle { border-radius:2px;border-color:#d5a18866;background:#170d22b3;min-height:40px;min-width:70px; }
.mobile-nav,.combat-ui .mobile-nav { background:#130b21f2;border-color:#c9879e55; }
.mobile-nav a { border-radius:2px; }
.mobile-nav a[aria-current="page"] { background:linear-gradient(135deg,#4b213c,#301c36);color:#ffdba6;box-shadow:inset 0 2px #dcaa7b; }
.home-intro { min-height:360px; }
.community-gateways .destination { padding-left:44%;padding-right:12px; }
.community-gateways .destination__title { font-size:1.4rem; }
.community-gateways .destination__index { font-size:.45rem; }
.community-section-head > p { font-size:.72rem; }
}
@media(max-width:760px) {
.scene,.combat-ui .scene { background-position:62% top;background-size:auto 100dvh; }
.home-page main { gap:24px;padding-top:4px; }
.home-intro { grid-template-columns:1fr;gap:0;padding-top:0;min-height:0; }
.home-intro .hero { order:0;padding:18px 14px 8px; }
.home-intro .hero__logo { width:min(86%,330px); }
.home-intro__action { padding:14px 0 4px; }
.home-intro__action .eyebrow { font-size:.55rem;letter-spacing:.13em; }
.home-intro__action .arrival-title { font-size:clamp(2.55rem,8.9vw,4.5rem);margin:14px 0;line-height:1;white-space:normal; }
.home-intro__action .arrival-lede { font-size:.8rem;line-height:1.6; }
.home-intro__action #next-step { margin-top:20px; }
.hero-actions { gap:16px; }
.hero-player-link { min-width:0;min-height:48px;padding:11px 18px;font-size:.82rem;gap:20px; }
.hero-rules-link { font-size:.75rem;gap:8px; }
.edition-spotlight { min-height:205px;grid-template-columns:1fr;padding:22px;gap:16px;background-position:58% center; }
.edition-spotlight__identity h2 { font-size:2rem;max-width:230px; }
.edition-spotlight .facts { top:22px;right:22px; }
.edition-spotlight .facts strong { font-size:1.3rem; }
.edition-spotlight .facts span { max-width:70px;font-size:.52rem; }
.edition-spotlight__identity > .eyebrow { font-size:.53rem; }
.edition-badges { gap:5px; }
.edition-badges > span { font-size:.58rem;padding:3px 9px;min-height:24px; }
.edition-spotlight__link { grid-column:1;justify-self:start;padding:8px 18px;font-size:.75rem;border-top:1px solid #efc08d; }
.community-section-head { align-items:start; }
.community-section-head h2 { font-size:1.9rem; }
.community-section-head > p { display:none; }
.community-section-head .eyebrow { font-size:.54rem; }
.community-gateways .destination-grid { grid-template-columns:1fr;gap:12px; }
.community-gateways .destination { min-height:150px;padding:20px 22px 18px 49%;gap:8px; }
.community-gateways .destination__index { font-size:.52rem; }
.community-gateways .destination__title { font-size:1.8rem; }
.community-gateways .destination__copy { font-size:.72rem; }
.community-gateways .destination__action { font-size:.68rem; }
.legacy-link { gap:12px;font-size:.8rem; }
body[data-page] .page-title h1,body[data-page].combat-ui .page-title h1 { font-size:2.8rem; }
.player-profile__banner { height:110px; }
.combat-ui .player-profile__name h2 { font-size:2.4rem; }
}
@media(prefers-reduced-motion:reduce) { .community-gateways .destination,.community-gateways .destination::before { transition:none; } .community-gateways .destination:hover,.community-gateways .destination:hover::before { transform:none; } }
.ai-art-credit { width:min(1180px,90%);margin:14px auto 0;font-size:11px;line-height:1.5;opacity:.65;text-align:center;font-weight:400; }
.home-intro__action #next-step { backdrop-filter:none;-webkit-backdrop-filter:none; }
.avatar-choice img { object-fit:cover;object-position:30% center;aspect-ratio:1; }
@media(max-width:760px) {
.scene,.combat-ui .scene { background-image:linear-gradient(180deg,#07041115,#07041185 28%,#070411d9 70%),url('../img/cinematic/aurora.webp'); }
.community-gateways .destination-grid { display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px; }
.community-gateways .destination { flex:0 0 88%;scroll-snap-align:start; }
.community-gateways::after { content:'Swipe to explore →';display:block;font-size:11px;opacity:.65;margin-top:5px; }
}
.portrait-picker { max-width:480px;display:grid;gap:12px; }
.portrait-picker__filters { display:grid;grid-template-columns:1fr 1fr;gap:8px; }
.portrait-picker .avatar-gallery { max-width:none;grid-template-columns:repeat(4,minmax(0,1fr)); }
.portrait-picker .avatar-choice { min-width:0;color:var(--text,#fff2e2);border-radius:5px;padding:4px; }
.portrait-picker .avatar-choice img { border-radius:3px;background:radial-gradient(ellipse at top,#8e3b67,#25152e);object-position:center; }
.portrait-picker .avatar-choice span { display:block;font-size:10px;line-height:1.4;padding:5px 0 1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.portrait-picker__pagination { display:flex;align-items:center;justify-content:space-between;gap:8px; }
.portrait-picker__pagination .hint { font-size:10px;text-align:center; }
@media(max-width:420px) { .portrait-picker__filters { grid-template-columns:1fr; } }
.profile-studio > summary { display:flex;align-items:center;justify-content:space-between;gap:14px;padding:20px 28px;border-bottom:1px solid transparent;list-style:none; }
.profile-studio > summary::-webkit-details-marker { display:none; }
.profile-studio > summary::after { content:'+';color:#f6c692;font-size:22px;font-weight:400; }
.profile-studio[open] > summary::after { content:'−'; }
.profile-studio[open] > summary { border-bottom-color:#ce91ac30; }
.studio-summary-hint { margin-left:auto;color:#bca7c5;font-size:11px;font-weight:400; }
.studio-form { padding:24px 28px 0; }
.studio-layout { display:grid;grid-template-columns:230px minmax(0,1fr);gap:28px;align-items:start; }
.studio-preview { display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px 18px;background:radial-gradient(ellipse at top,#963c7830,transparent 65%),#100b1c;border:1px solid #d6a48644;position:relative; }
.studio-preview::before { content:'';width:36px;height:2px;background:#f2bf91;position:absolute;top:-1px;left:18px; }
.studio-preview__portrait { width:132px;height:132px;overflow:hidden;border:1px solid #ecc28b;border-radius:9px;padding:4px;background:#f5c89b12;box-shadow:0 0 30px #f270b520; }
.studio-preview__portrait img { width:100%;height:100%;object-fit:cover;border-radius:5px; }
.studio-preview h3 { font-size:1.7rem;line-height:1.1;text-align:center;overflow-wrap:anywhere;margin:2px 0 0; }
.studio-preview__tag { color:#bfacc9;font-size:11px; }
.studio-preview__verified { color:#a8dac7;font-size:10px; }
.studio-preview .field { width:100%;padding-top:14px;border-top:1px solid #ce91ac26;margin-top:5px; }
.studio-preview .input { padding:10px 12px;min-height:42px;font-size:13px; }
.studio-preview .hint { font-size:10px;text-align:center;line-height:1.7;margin:0; }
.studio-workspace { min-width:0; }
.studio-tabs { display:flex;gap:26px;border-bottom:1px solid #ce91ac30;margin-bottom:20px; }
.studio-tabs button { font-family:var(--font-display);font-size:19px;text-transform:uppercase;letter-spacing:.05em;border:0;border-bottom:2px solid transparent;background:none;color:#bba7c8;cursor:pointer;padding:0 0 12px; }
.studio-tabs button[aria-selected="true"] { color:#ffd49b;border-bottom-color:#ecad83; }
.studio-pane { display:grid;gap:16px; }
.studio-pane[hidden],.studio-source[hidden] { display:none; }
.studio-section-head { display:flex;align-items:center;justify-content:space-between;gap:14px; }
.studio-section-head h3,.studio-pane > h3 { font-size:1.65rem;margin:4px 0 0; }
.studio-count { border:1px solid #ca8cab44;color:#e6b3ce;font-size:9px;padding:5px 8px;letter-spacing:.12em; }
.studio-sources { display:flex;gap:5px;padding:4px;background:#0d0817;border:1px solid #c78ba330;width:fit-content; }
.studio-source-button { font-size:11px;padding:8px 14px;border:0;background:none;color:#c3aecb;cursor:pointer; }
.studio-source-button[aria-pressed="true"] { color:#f8d4b6;background:#59304477;box-shadow:inset 0 -1px #dcaa7e; }
.studio-source { display:grid;gap:14px; }
.profile-studio .portrait-picker { max-width:none; }
.profile-studio .avatar-gallery { grid-template-columns:repeat(6,minmax(0,1fr));gap:8px; }
.profile-studio .avatar-choice { padding:3px;border-width:1px;background:#25162d; }
.profile-studio .avatar-choice img { max-height:76px; }
.profile-studio .avatar-choice span { font-size:9px; }
.profile-studio .portrait-picker__filters .input { min-height:40px;padding:8px 11px;font-size:12px; }
.studio-savebar { display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:24px;border-top:1px solid #d8a18b30;padding:16px 0; }
.studio-savebar .hint { margin:0;font-size:11px;color:#d3b9ce; }
.studio-savebar .btn { min-width:160px; }
.studio-channel { display:flex;align-items:center;gap:15px;padding:20px;border:1px solid #b687d140;background:#674c9915; }
.studio-channel .field { flex:1; }
.studio-channel__icon { font-size:34px;color:#c49aff; }
.studio-optin { display:flex;gap:14px;align-items:flex-start;padding:18px;border:1px solid #ce91ac33;cursor:pointer; }
.studio-optin input { margin-top:4px; }
.studio-optin b { display:block;font-size:13px;margin-bottom:7px; }
.studio-optin small { color:#c5b0cd;line-height:1.6;font-size:11px;display:block; }
body[data-page] main { padding-top:24px; }
body[data-page] .page-title,body[data-page].combat-ui .page-title { position:relative;isolation:isolate;overflow:hidden;min-height:215px;justify-content:center;padding:30px 38px;border:1px solid #dba78766;border-left:2px solid #f4c091;border-radius:0;background:linear-gradient(100deg,#11091ef5 10%,#160c21c9 48%,#160c2110 78%);gap:12px; }
body[data-page] .page-title::before { content:'';position:absolute;z-index:-2;right:0;top:0;width:55%;height:100%;background-image:var(--page-art,url('../img/cinematic/orisa.webp'));background-size:cover;background-position:left 42%;transform:scaleX(-1);opacity:.83; }
body[data-page] .page-title::after { content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#11091ef5 5%,#11091ed9 45%,#11091e00 80%);pointer-events:none; }
body[data-page] .page-title h1,body[data-page].combat-ui .page-title h1 { font-size:clamp(2.5rem,4.8vw,4.4rem);max-width:68%;line-height:.98; }
body[data-page] .page-title .lede,body[data-page].combat-ui .page-title .lede { max-width:52%;font-size:13px;line-height:1.7;color:#ddc9dc; }
body[data-page] .page-eyebrow::before { content:'◆';font-size:8px;margin-right:10px;color:#fa8bce;text-shadow:0 0 10px #f577c2; }
body[data-page="admin"] .page-title { min-height:150px; }
body[data-page="admin"] .page-title h1 { font-size:3rem; }
.page-quicklinks { display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:3px; }
.page-quicklinks a { font-size:11px;color:#f6c696;text-decoration:none;border-bottom:1px solid #f6c69655;padding:3px 0; }
.page-quicklinks a:hover { color:#ffe1bc;border-color:#ffe1bc; }
body[data-page] .empty { border:1px solid #ca8daa44;border-left:2px solid #d9a276;min-height:205px;background:radial-gradient(ellipse at 100% 0,#a3458b20,transparent 65%),linear-gradient(130deg,#21132fe8,#100b1deb);gap:12px; }
body[data-page] .empty::before { content:'NEXT UP';font-size:9px;letter-spacing:.18em;color:#efa3cd; }
body[data-page] .empty > svg { color:#e5b78c;opacity:.8; }
body[data-page] .empty p { color:#dec9df;line-height:1.8; }
body[data-page] .team-card { position:relative;background:linear-gradient(125deg,#2d1835f2,#110b1feb);border-radius:2px;border-color:#c2889c55;overflow:hidden; }
.team-card::before { content:'';position:absolute;left:0;top:0;width:46px;height:2px;background:#eeb784; }
body[data-page] .team-card h3 { font-family:var(--font-display);font-size:1.8rem;text-transform:uppercase;letter-spacing:.02em; }
body[data-page] .team-roster-fold summary { color:#eebd96; }
body[data-page] .stream,body[data-page] .trophy,body[data-page] .fold { border-radius:3px;border-color:#c2889c55;background:#140c21ed; }
.stream__head { background:linear-gradient(120deg,#55213d70,#170d24);border-bottom:1px solid #c2889c33; }
.stream__head h2 { font-family:var(--font-display);font-size:1.8rem; }
.rule-navigation { border-radius:2px;background:#130c20ed;border:1px solid #c2889c44; }
.rule-content { border-left:2px solid #dca77777; }
.rule-topic h3 { font-family:var(--font-display);font-size:2rem;color:#ffe0af; }
body[data-page="admin"] .admin-sidebar { border-radius:2px;background:linear-gradient(170deg,#2d1531f5,#100b1ef5);border-color:#c2889c55; }
.admin-navigation button { border-radius:1px; }
.admin-navigation button[aria-selected="true"] { background:linear-gradient(90deg,#66334780,#34203980);border-color:#d8a28b55;box-shadow:inset 2px 0 #edba82;color:#ffdbb2; }
body[data-page="admin"] .admin-main > [role="tabpanel"] { border-radius:2px;background:#150d22f2;border-color:#c2889c44; }
body[data-page="admin"] .admin-toolbar h2 { font-family:var(--font-display);text-transform:uppercase;font-size:2rem; }
.admin-main .setup-card,.admin-setting-group,.admin-main .table-wrap { border-radius:3px; }
body[data-page="admin"] #admin > form { background:linear-gradient(135deg,#2b1639ed,#110b1ff5);border-color:#d8a28b66;border-radius:2px; }
body[data-page="hall"] .trophy__banner { background:radial-gradient(ellipse,#b4507f55,transparent 70%),#23122e; }
@media(max-width:900px) {
.studio-layout { grid-template-columns:190px minmax(0,1fr);gap:20px; }
.profile-studio .avatar-gallery { grid-template-columns:repeat(4,minmax(0,1fr)); }
.studio-summary-hint { display:none; }
body[data-page] .page-title,body[data-page].combat-ui .page-title { min-height:190px;padding:26px; }
}
@media(max-width:620px) {
.studio-form { padding:16px 16px 0; }
.studio-layout { grid-template-columns:1fr;gap:20px; }
.studio-preview { display:grid;grid-template-columns:70px 1fr;gap:8px 15px;padding:16px;align-items:center; }
.studio-preview > .eyebrow,.studio-preview > .hint,.studio-preview__verified { display:none; }
.studio-preview__portrait { grid-column:1;grid-row:1/4;width:70px;height:70px; }
.studio-preview h3 { grid-column:2;text-align:left;font-size:1.4rem;margin:0; }
.studio-preview__tag { grid-column:2; }
.studio-preview .field { grid-column:1/-1;padding-top:12px;margin-top:7px; }
.studio-preview .field label { font-size:11px; }
.profile-studio > summary { padding:16px; }
.studio-tabs { margin-bottom:16px; }
.studio-savebar { position:sticky;bottom:63px;background:#170e23f5;padding:13px 0;z-index:3; }
.studio-savebar .btn { min-width:125px;padding-inline:14px; }
.studio-savebar .hint { max-width:150px;font-size:10px; }
.studio-count { font-size:8px; }
body[data-page] .page-title,body[data-page].combat-ui .page-title { min-height:180px;padding:22px 20px; }
body[data-page] .page-title::before { width:65%;opacity:.6; }
body[data-page] .page-title::after { background:linear-gradient(90deg,#11091ef0,#11091eb3 55%,#11091e44); }
body[data-page] .page-title h1,body[data-page].combat-ui .page-title h1 { max-width:95%;font-size:2.7rem; }
body[data-page] .page-title .lede,body[data-page].combat-ui .page-title .lede { max-width:88%;font-size:12px; }
body[data-page="admin"] .page-title h1 { font-size:2.5rem; }
.page-quicklinks { gap:16px; }
.page-quicklinks a { font-size:10px; }
body[data-page] main { padding-top:16px; }
}
.schedule-day__heading { display:flex;gap:24px;align-items:center;padding-bottom:24px;border-bottom:1px solid #d59aae33; }
.schedule-day__number { display:flex;flex-direction:column;justify-content:center;align-items:center;width:72px;height:80px;flex-shrink:0;background:linear-gradient(145deg,#74324e55,#29182f);border:1px solid #d3a18a66;clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px); }
.schedule-day__number small { font-size:9px;letter-spacing:.2em;color:#e9a8c9; }
.schedule-day__number b { font-family:var(--font-display);font-size:40px;line-height:1.15;color:#ffd4a0; }
.schedule-day__heading .section-head { flex:1;align-items:start;flex-direction:column;gap:8px; }
.schedule-day__heading h2 { text-transform:uppercase;font-size:2rem; }
.schedule-day__heading p { font-size:12px;color:#cbb3ce; }
.schedule-waiting { display:flex;align-items:center;gap:20px;padding:24px 0 4px; }
.schedule-waiting__icon { font-size:36px;color:#c18baf; }
.schedule-waiting > div { flex:1; }
.schedule-waiting h3 { font-size:1.5rem;margin-bottom:8px; }
.schedule-waiting p { font-size:12px;line-height:1.8;max-width:560px; }
.schedule-timezone { font-size:11px;color:#bda6c6;padding:12px 16px;border-left:2px solid #a56b9944;line-height:1.8; }
.legacy-stage { display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;min-height:320px;border:1px solid #d5a18755;background:radial-gradient(ellipse at 20% 50%,#984c7433,transparent 60%),linear-gradient(120deg,#1a1028f0,#110a1ff0);padding:36px 48px; }
.legacy-stage__emblem { position:relative;display:grid;place-items:center; }
.legacy-stage__emblem img { width:100%;max-width:350px;height:auto;filter:drop-shadow(0 12px 25px #ec6abb22); }
.legacy-stage__emblem > span { color:#f194c9;text-shadow:0 0 15px #f480c6;font-size:14px; }
.legacy-stage__copy { display:flex;flex-direction:column;align-items:start;gap:18px; }
.legacy-stage__copy h2 { font-size:clamp(2rem,3.2vw,3.3rem);text-transform:uppercase;line-height:1.05;max-width:400px; }
.legacy-stage__copy p { font-size:13px;line-height:1.8;max-width:420px;color:#d6bfd9; }
.competition-stages { display:flex;gap:28px;padding:22px 0 0;margin-top:14px;width:100%;list-style:none;border-top:1px solid #c18a9d33; }
.competition-stages li { display:flex;align-items:center;gap:12px;font-size:11px;color:#c4abc9; }
.competition-stages li > span { color:#edb789;font-family:var(--font-display);font-size:22px; }
.channel-directory { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px; }
.channel-card--profile { position:relative;isolation:isolate;display:flex;flex-wrap:wrap;align-items:center;gap:14px;padding:26px 20px 20px;background:#150d23;border:1px solid #d19aa24d;overflow:hidden; }
.channel-card__aurora { position:absolute;inset:0 0 auto;height:100px;z-index:-1;background:linear-gradient(180deg,#170c2055,#150d23),url('../img/cinematic/aurora.webp') 70% 40%/cover;opacity:.8; }
.channel-card--profile > img { width:64px;height:64px;object-fit:cover;border:1px solid #e7bd9299;border-radius:5px;background:#28152f; }
.channel-card--profile > .stack { flex:1;min-width:0;gap:5px; }
.channel-card--profile h3 { font-family:var(--font-display);font-size:1.6rem;overflow-wrap:anywhere; }
.channel-card--profile .eyebrow { font-size:8px;letter-spacing:.1em; }
.channel-card--profile .hint { font-size:10px;overflow-wrap:anywhere; }
.channel-card--profile > .btn { flex:1 1 70%;font-size:11px;margin-top:9px; }
.channel-card--profile > a { margin-top:9px;color:#f6c699; }
.creator-invite { padding:30px;border:1px solid #cb91aa55;border-left:2px solid #d9a681;display:flex;flex-direction:column;align-items:start;gap:15px;background:linear-gradient(110deg,#3c1c3a99,#140b21); }
.creator-invite h3 { font-size:2rem;text-transform:uppercase; }
.creator-invite p { font-size:13px;line-height:1.8;max-width:600px;color:#d4bdd7; }
.setup-hero { position:relative;background:radial-gradient(ellipse at top right,#96395b40,transparent 65%),linear-gradient(120deg,#26142f,#130d20);border:1px solid #d5a18755;border-left:2px solid #efbe87;border-radius:1px;padding:28px; }
.setup-hero h2 { font-family:var(--font-display);text-transform:uppercase;line-height:1.05;max-width:680px;font-size:2.5rem; }
.setup-progress progress { accent-color:#eca87f; }
.setup-grid .setup-card { position:relative;display:flex;flex-direction:column;background:linear-gradient(130deg,#2c1737,#160e23);border-color:#b982a344; }
.setup-card .setup-number { font-family:var(--font-display);font-size:28px;color:#e8b38c; }
.setup-card h3 { font-family:var(--font-display);font-size:1.6rem; }
.setup-card .btn { margin-top:auto;align-self:start; }
.admin-main .setup-card p { line-height:1.8; }
@media(max-width:900px) { .channel-directory { grid-template-columns:repeat(2,minmax(0,1fr)); } .legacy-stage { gap:24px;padding:28px; } }
@media(max-width:620px) {
.schedule-day__heading { gap:16px; }
.schedule-day__number { width:56px;height:68px; }
.schedule-day__heading h2 { font-size:1.7rem; }
.schedule-waiting { flex-wrap:wrap;gap:14px; }
.schedule-waiting > div { flex-basis:70%; }
.schedule-waiting > .btn { margin-left:50px; }
.legacy-stage { grid-template-columns:1fr;gap:20px;padding:26px; }
.legacy-stage__emblem img { max-width:200px; }
.legacy-stage__copy h2 { font-size:2.4rem; }
.competition-stages { flex-direction:column;gap:10px; }
.channel-directory { grid-template-columns:1fr; }
.channel-card--profile { padding:20px; }
.creator-invite { padding:24px; }
}
.rule-mobile-picker { display:none; }
.rule-topic-list { display:flex;flex-direction:column;gap:6px; }
.rule-topic-button { display:flex;gap:11px;align-items:center;text-align:left;padding:12px 10px;border:1px solid transparent;border-left:2px solid transparent;background:transparent;color:#d7bfdc;font-size:11px;cursor:pointer;line-height:1.5; }
.rule-topic-button > span { color:#c39bb9;font-family:var(--font-display);font-size:17px; }
.rule-topic-button:hover { background:#e8a6cc0d; }
.rule-topic-button[aria-pressed="true"] { background:linear-gradient(90deg,#9c4f7355,#3c20354d);border-color:#c792a744;border-left-color:#eabb86;color:#ffe0b2; }
.bracket-standby::before { display:none; }
@media(max-width:620px) { .rule-mobile-picker { display:block; } .rule-topic-list { display:none; } }
.manager-tabs { display:flex;gap:6px;padding:6px;background:#110b1e;border:1px solid #d29a9f44;width:fit-content;max-width:100%; }
.manager-tabs button { background:transparent;border:0;border-bottom:2px solid transparent;color:#c6b0d0;padding:11px 19px;font-size:12px;cursor:pointer;white-space:nowrap; }
.manager-tabs button[aria-selected="true"] { background:linear-gradient(125deg,#6d314960,#36213c);color:#ffe0ac;border-bottom-color:#ebba87; }
.manager-view[hidden] { display:none; }
.manager-team-heading { padding:4px 0 20px;border-bottom:1px solid #d5a18d33; }
.manager-team-heading h2 { text-transform:uppercase;font-size:2.3rem; }
.manager-view { padding-top:5px; }
.captain-player-editor { border:1px solid #bf8caa44;background:#130c20; }
.captain-player-editor > summary { display:flex;align-items:center;gap:16px;list-style:none;cursor:pointer;padding:16px 20px;background:linear-gradient(110deg,#40203970,#1b1026); }
.captain-player-editor > summary::-webkit-details-marker { display:none; }
.captain-player-editor > summary::after { content:'+';color:#dba98c;font-size:21px;margin-left:10px; }
.captain-player-editor[open] > summary::after { content:'−'; }
.captain-player-editor__index { font-family:var(--font-display);font-size:25px;color:#dea780; }
.captain-player-editor__identity { display:flex;flex-direction:column;gap:4px;flex:1;min-width:0; }
.captain-player-editor__identity b { font-size:13px;overflow-wrap:anywhere; }
.captain-player-editor__identity .hint { font-size:10px; }
.captain-player-editor__action { font-size:10px;color:#d8b2ce; }
.captain-player-editor > .slot { border:0;border-top:1px solid #bf8caa33;border-radius:0;margin:0;padding:22px; }
.captain-player-editor[open] { border-color:#d9ae7f88; }
#manager-roster .step-actions { position:sticky;bottom:16px;z-index:3;padding:16px;background:#160d23f5;border:1px solid #c18e9b66;box-shadow:0 8px 40px #0005; }
.team-browser-toolbar { display:flex;align-items:center;justify-content:space-between;gap:24px;padding:6px 0 12px; }
.team-browser-toolbar h2 { font-size:1.7rem;margin-top:5px; }
.team-browser-controls { display:flex;gap:10px;align-items:center; }
.team-browser-controls .team-search { width:min(280px,100%); }
.team-browser-controls .team-sort { width:200px;font-size:12px; }
.team-card__meta { display:flex;gap:14px;flex-wrap:wrap;padding:10px 0;font-size:9px;letter-spacing:.12em;color:#d5b4ca; }
.team-card__meta > span+span { padding-left:14px;border-left:1px solid #bd829c55; }
.admin-nav-group { display:flex;flex-direction:column;gap:4px; }
.admin-nav-group + .admin-nav-group { margin-top:15px;padding-top:15px;border-top:1px solid #b987a433; }
.admin-nav-group__label { font-size:8px;letter-spacing:.14em;color:#bf87ac;padding:0 12px 7px; }
.admin-sidebar > .page-eyebrow { display:none; }
.profile-hub-toolbar { padding:12px;border:1px solid #c389a344;background:linear-gradient(110deg,#331a35d9,#160d24e6); }
.profile-hub-toolbar .profile-view-tabs { border:0;background:transparent; }
.profile-view-tabs button { font-size:12px;padding:11px 22px; }
.profile-hub-toolbar > .btn { background:transparent;border-color:#c493a044;font-size:11px; }
.event-card { position:relative;overflow:hidden;border-left:2px solid #e0ae82 !important;padding:26px !important; }
.event-card::before { content:'';position:absolute;right:0;top:0;bottom:0;width:38%;background:linear-gradient(90deg,#170e24,transparent),url('../img/cinematic/aurora.webp') center/cover;opacity:.25;pointer-events:none; }
.event-card > * { position:relative;z-index:1; }
.event-card h3 { font-family:var(--font-display);font-size:1.8rem; }
.squad-panel .squad-heading { padding-bottom:16px;border-bottom:1px solid #cb91a537; }
.squad-panel .squad-heading h3 { font-family:var(--font-display);font-size:2rem; }
.squad-panel .player-tile { border-radius:2px;background:linear-gradient(140deg,#351b3a,#150d24);border-color:#c58d9b44; }
.squad-panel .player-tile__portrait { border:1px solid #cfa97d77;border-radius:4px; }
@media(max-width:920px) {
.admin-navigation { gap:5px; }
.admin-nav-group { display:contents; }
.admin-nav-group__label { display:none; }
.team-browser-toolbar { align-items:start;flex-direction:column;gap:15px; }
.team-browser-controls { width:100%; }
.team-browser-controls .team-search { flex:1;width:auto; }
}
@media(max-width:620px) {
.manager-tabs { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:2px;padding:4px; }
.manager-tabs button { padding:10px 4px;font-size:10px; }
.captain-player-editor > summary { padding:14px;gap:12px; }
.captain-player-editor__action { display:none; }
.captain-player-editor > .slot { padding:16px; }
#manager-roster .step-actions { bottom:62px;flex-wrap:wrap;gap:12px;padding:12px; }
#manager-roster .step-actions .btn { font-size:11px;min-height:38px;padding:9px 12px; }
.team-browser-controls { flex-direction:column;align-items:stretch; }
.team-browser-controls .team-sort { width:100%; }
.profile-hub-toolbar { flex-wrap:wrap;gap:12px;padding:8px; }
.profile-hub-toolbar .profile-view-tabs { width:100%;justify-content:space-between; }
.profile-view-tabs button { padding:10px 13px;font-size:11px; }
.profile-hub-toolbar > .btn { width:100%;justify-content:center; }
.event-card { padding:20px !important;gap:18px; }
}
.manager-team-details > .stack,.manager-resources > .stack { padding-top:18px;gap:18px; }
.manager-match-waiting { display:flex;flex-direction:column;align-items:start;gap:15px;padding:28px; }
.manager-match-waiting h3 { font-size:1.8rem; }
.manager-match-waiting p { font-size:13px;line-height:1.8;max-width:650px; }
.player-signed-out .page-title { display:none !important; }
.player-signed-out main > .wrap { gap:16px !important; }
.login-breadcrumb { display:flex;gap:12px;align-items:center;color:#ba9fc3;font-size:11px;margin:0 0 2px; }
.login-breadcrumb a { color:#e5c4d9;text-decoration:none; }
.login-stage { position:relative;isolation:isolate;overflow:hidden;min-height:435px;display:flex;align-items:center;background:#100a1c;border:1px solid #d4a18588;border-left:2px solid #e8b787;clip-path:polygon(18px 0,calc(100% - 18px) 0,100% 18px,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%,0 18px); }
.login-stage__art { position:absolute;inset:0 0 0 36%;z-index:-2;background:url('../img/cinematic/orisa.webp') left 40%/cover no-repeat;transform:scaleX(-1); }
.login-stage::after { content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#10091efc 5%,#10091ef0 38%,#10091e70 58%,#10091e00 82%); }
.login-stage__content { width:61%;max-width:750px;padding:42px 46px;display:flex;flex-direction:column;align-items:start;gap:19px; }
.login-stage h1 { font-family:var(--font-display);font-size:clamp(3rem,4.6vw,4.5rem);font-weight:800;letter-spacing:.01em;line-height:.97;text-transform:uppercase;margin:0; }
.login-stage h1 em { font-style:normal;background:linear-gradient(120deg,#ffe2a3,#ed9cb4);background-clip:text;-webkit-background-clip:text;color:transparent; }
.login-stage__intro { font-size:14px;line-height:1.8;color:#dfc9df;max-width:380px;margin:0 0 3px; }
.login-discord,.combat-ui .login-discord { background:linear-gradient(115deg,#ffd195,#f1a77e);color:#29162d;border-color:#ffdfad;min-height:54px;gap:23px;padding:13px 24px;font-size:14px;font-weight:700;border-radius:0;clip-path:polygon(9px 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%,0 9px); }
.login-discord:hover,.combat-ui .login-discord:hover { background:#ffdfaf;color:#29162d; }
.login-discord > span:first-child { font-size:22px;line-height:1; }
.login-stage__hint { font-size:10px;color:#c9accd;margin-top:-8px;max-width:350px;line-height:1.7; }
.login-stage__links { display:flex;gap:24px;margin-top:1px; }
.login-stage__links a { font-size:11px;color:#efc295;text-decoration:none;border-bottom:1px solid #dda78866;padding-bottom:4px; }
.login-stage__caption { position:absolute;right:30px;bottom:25px;display:flex;flex-direction:column;align-items:end;gap:5px;color:#ffdfb1;text-shadow:0 2px 9px #150b1f; }
.login-stage__caption span { font-size:8px;letter-spacing:.23em; }
.login-stage__caption b { font-family:var(--font-display);font-size:21px;letter-spacing:.09em; }
.login-benefits { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid #b47b9855;background:linear-gradient(120deg,#29152ce6,#110b1ee6); }
.login-benefits article { display:flex;align-items:start;gap:18px;padding:22px 24px; }
.login-benefits article+article { border-left:1px solid #b47b9844; }
.login-benefits__number { font-family:var(--font-display);font-size:30px;color:#d9a17f;line-height:1; }
.login-benefits h2 { font-family:var(--font-display);font-size:21px;margin:0 0 8px; }
.login-benefits p { font-size:11px;line-height:1.8;color:#c9adce;max-width:260px;margin:0; }
.login-footer { display:flex;justify-content:space-between;gap:25px;align-items:start;padding:4px 0 10px;color:#bda1c3;font-size:10px;line-height:1.8; }
.login-privacy { font-size:11px;color:#cdb5d3;max-width:400px; }
.login-privacy summary { cursor:pointer;color:#e9c1db; }
.login-privacy p { padding-top:10px;font-size:11px;line-height:1.8; }
.login-invite { padding:12px 14px;border:1px solid #e0b48a55;background:#3d2448b3;font-size:12px;line-height:1.7;max-width:400px; }
body[data-page="verify"] .wrap--narrow { max-width:1100px; }
#verify { max-width:none;padding:32px; }
.connect-flow { display:grid;grid-template-columns:1fr 1fr;gap:25px 38px; }
.connect-flow__intro { grid-column:1; }
.connect-flow__intro h2 { font-family:var(--font-display);font-size:2.7rem !important;line-height:1.04;max-width:400px;margin:13px 0 16px;text-transform:uppercase; }
.connect-flow__intro .lede { font-size:13px !important;line-height:1.9;max-width:420px; }
.connect-steps { margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:22px; }
.connect-steps li { display:flex;align-items:start;gap:16px; }
.connect-steps__number { font-family:var(--font-display);font-size:27px;color:#e9b58b;line-height:1.1;min-width:30px; }
.connect-steps h3 { font-size:20px;margin:0 0 6px; }
.connect-steps p { font-size:11px;line-height:1.8;color:#cbb4d2;max-width:340px; }
.connect-flow__actions { grid-column:1/-1;border-top:1px solid #d5a18d33;padding-top:22px;display:flex;gap:14px;align-items:center;flex-wrap:wrap; }
.connect-flow > .login-privacy { grid-column:1/-1; }
@media(max-width:900px) {
.login-stage__content { padding:35px 30px;width:68%; }
.login-stage h1 { font-size:3.6rem; }
.login-benefits article { padding:20px 16px;gap:12px; }
.login-benefits__number { font-size:25px; }
}
@media(max-width:620px) {
.login-stage { min-height:0; }
.login-stage__art { inset:0 0 0 15%;opacity:.42;background-position:20% top;background-size:auto 100%; }
.login-stage::after { background:linear-gradient(90deg,#10091ef0,#10091ed1 65%,#10091e55); }
.login-stage__content { width:100%;padding:30px 24px;gap:17px; }
.login-stage h1 { font-size:clamp(2.8rem,10vw,3.7rem); }
.login-stage__intro { font-size:12px;max-width:280px; }
.login-discord,.combat-ui .login-discord { width:100%;gap:16px;padding:12px 15px;font-size:13px; }
.login-stage__content .eyebrow { font-size:8px; }
.login-stage__caption { display:none; }
.login-stage__links { gap:20px; }
.login-stage__links a { font-size:10px; }
.login-benefits { grid-template-columns:1fr; }
.login-benefits article { padding:16px 20px;align-items:center;gap:18px; }
.login-benefits article+article { border-left:0;border-top:1px solid #b47b9844; }
.login-benefits h2 { font-size:20px;margin-bottom:4px; }
.login-benefits p { font-size:10px;max-width:none; }
.login-benefits__number { font-size:28px; }
.login-footer { flex-direction:column;gap:12px; }
.login-breadcrumb { font-size:10px; }
#verify { padding:24px; }
.connect-flow { grid-template-columns:1fr;gap:24px; }
.connect-flow__intro h2 { font-size:2.4rem !important; }
.connect-flow__actions { align-items:stretch;flex-direction:column; }
}
.hub-account-actions { display:flex;gap:8px;align-items:center; }
.hub-signout { color:#e9c3d4; }
.avatar-credit { display:block;font-size:9px;line-height:1.5;color:#bda0bf;max-width:240px;overflow-wrap:anywhere; }
.studio-sources { flex-wrap:wrap;max-width:100%; }
.studio-search-button { border-left:1px solid #bc8c9f55;color:#f2c997; }
.media-picker { width:min(850px,calc(100% - 32px));max-height:88dvh;padding:0;color:#fff0e2;background:linear-gradient(135deg,#261330,#100a1e);border:1px solid #d6a48699;border-radius:4px;box-shadow:0 24px 100px #000b;overflow-y:auto; }
.media-picker::backdrop { background:#080510d6;backdrop-filter:blur(8px); }
.media-picker-head { display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 26px 18px; }
.media-picker-head h2 { font-family:var(--font-display);font-size:2rem;line-height:1.1;margin:6px 0 0;text-transform:uppercase; }
.media-picker-head .eyebrow { font-size:9px; }
.media-picker-tabs { display:flex;gap:5px;border-bottom:1px solid #c28aa344;padding:0 26px; }
.media-picker-tabs button { cursor:pointer;color:#c9afd2;border:0;border-bottom:2px solid transparent;background:none;padding:12px 18px;font-size:12px; }
.media-picker-tabs button[aria-selected="true"] { color:#ffd69e;border-bottom-color:#e8b183;background:#5c2b3c44; }
.media-picker-search,.media-picker-link { padding:22px 26px;display:grid;gap:15px; }
.media-picker-search[hidden],.media-picker-link[hidden] { display:none; }
.media-picker-searchbar { display:flex;gap:10px; }
.media-picker-searchbar .input { flex:1;min-width:0;font-size:13px; }
.media-picker-search .hint { font-size:11px;line-height:1.6;margin:0; }
.media-picker-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;min-height:120px; }
.media-picker-choice { min-width:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid #bf8ca44d;background:#120b1e;color:#e6d0e5;padding:0;cursor:pointer; }
.media-picker-choice[aria-pressed="true"] { border-color:#f6ca95;box-shadow:0 0 0 1px #f6ca95; }
.media-picker-choice:hover { border-color:#dfa4c2; }
.media-picker-choice img { width:100%;height:125px;object-fit:cover;background:#30203b; }
.media-picker-choice > span { padding:9px;font-size:9px;line-height:1.6;max-height:44px;overflow:hidden;text-align:left; }
.media-picker-empty { grid-column:1/-1;align-self:center;padding:22px 0; }
.media-picker-empty h3 { font-size:1.5rem;margin-bottom:10px; }
.media-picker-empty p { font-size:12px;color:#c7accf;line-height:1.8; }
.media-picker-paging { display:flex;justify-content:space-between;gap:12px; }
.media-picker-footer { display:flex;align-items:center;justify-content:space-between;gap:20px;position:sticky;bottom:0;background:#1a0e26fa;border-top:1px solid #c28aa355;padding:16px 26px;z-index:1; }
.media-picker-selection { display:flex;align-items:center;gap:14px;min-width:0; }
.media-picker-selection img { flex-shrink:0;width:64px;height:64px;object-fit:cover;border:1px solid #cca08099;border-radius:4px; }
.media-picker-selection b { display:block;font-size:11px;line-height:1.6;max-width:350px;overflow-wrap:anywhere; }
.media-picker-selection .hint { font-size:9px;line-height:1.6;display:block;color:#bda1c6; }
.media-picker-footer > .btn { flex-shrink:0;font-size:12px; }
@media(max-width:620px) {
.hub-account-actions { width:100%; }
.hub-account-actions .btn { flex:1;justify-content:center;font-size:11px; }
.media-picker { width:calc(100% - 20px);max-height:91dvh; }
.media-picker-head { padding:18px; }
.media-picker-head h2 { font-size:1.7rem; }
.media-picker-tabs { padding:0 14px; }
.media-picker-tabs button { flex:1;padding:12px 8px;font-size:11px; }
.media-picker-search,.media-picker-link { padding:18px; }
.media-picker-grid { grid-template-columns:repeat(3,minmax(0,1fr));gap:7px; }
.media-picker-choice img { height:94px; }
.media-picker-searchbar .btn { padding-inline:12px;font-size:12px; }
.media-picker-footer { padding:14px 18px;gap:12px;align-items:stretch;flex-direction:column; }
.media-picker-selection img { width:48px;height:48px; }
.media-picker-selection b { font-size:10px; }
}
.profile-studio .portrait-picker .avatar-gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.profile-studio .portrait-picker .avatar-choice{padding:5px;overflow:hidden;border-radius:5px;position:relative;min-width:0;background:#24172e}.profile-studio .portrait-picker .avatar-choice img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:1;object-fit:cover;object-position:center;border-radius:2px}.profile-studio .portrait-picker .avatar-choice span{font-size:12px;line-height:1.5;padding:9px 4px 5px;font-weight:600}.profile-studio .portrait-picker .avatar-choice[aria-pressed=true]{border-color:#f7c89e;box-shadow:0 0 0 1px #f7c89e;background:#51304b}.profile-studio .portrait-picker .avatar-choice[aria-pressed=true]:after{content:'✓';position:absolute;right:11px;top:11px;background:#f3c499;color:#26152e;width:22px;height:22px;display:grid;place-items:center;border-radius:50%;font-size:12px;font-weight:700}.studio-custom-selection{padding:22px;border:1px solid #b987a14d;background:linear-gradient(120deg,#352039,#21152c);margin-top:18px}.studio-custom-selection p{font-size:13px;line-height:1.8;color:#cbb1cd;max-width:55ch;margin:12px 0 0}.profile-studio .studio-sources{margin-bottom:18px}.profile-studio .portrait-picker__pagination{border-top:1px solid #b7869e33;padding-top:16px;margin-top:6px}@media(max-width:700px){.profile-studio .portrait-picker .avatar-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.profile-studio .portrait-picker .avatar-choice span{font-size:11px}}@media(max-width:400px){.profile-studio .portrait-picker .avatar-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
.profile-studio .portrait-picker .avatar-choice .portrait-image-frame{display:block;aspect-ratio:1;overflow:hidden;position:relative;padding:0;border-radius:3px;line-height:0}.profile-studio .portrait-picker .avatar-choice .portrait-image-frame img{width:100%;height:100%;aspect-ratio:1}.studio-preview__portrait,.player-profile__avatar{overflow:hidden}.portrait-image-frame img,.studio-preview__portrait img,.player-profile__avatar img{object-position:var(--portrait-position,center);transform:scale(var(--portrait-zoom,1));transform-origin:var(--portrait-origin,0% 35%)}
img[src*="/cinematic/ana.webp"]{--portrait-position:0% center;--portrait-zoom:1.42;--portrait-origin:0% 35%}
img[src*="/cinematic/ashe.webp"]{--portrait-position:0% center;--portrait-zoom:1.22;--portrait-origin:0% 35%}
img[src*="/cinematic/echo.webp"]{--portrait-position:0% center;--portrait-zoom:1.4;--portrait-origin:0% 45%}
img[src*="/cinematic/mei.webp"]{--portrait-position:0% center;--portrait-zoom:1.35;--portrait-origin:0% 30%}
img[src*="/cinematic/sierra.webp"]{--portrait-position:0% center;--portrait-zoom:1.35;--portrait-origin:0% 40%}
img[src*="/cinematic/mizuki.webp"]{--portrait-position:0% center;--portrait-zoom:1.38;--portrait-origin:0% 40%}
img[src*="/cinematic/sojourn.webp"]{--portrait-position:0% center;--portrait-zoom:1.25;--portrait-origin:0% 35%}
img[src*="/cinematic/zarya.webp"]{--portrait-position:0% center;--portrait-zoom:1.38;--portrait-origin:0% 35%}
img[src*="/cinematic/orisa.webp"]{--portrait-position:0% center;--portrait-zoom:1.3;--portrait-origin:0% 40%}
img[src*="/cinematic/symmetra.webp"]{--portrait-position:0% center;--portrait-zoom:1.3;--portrait-origin:0% 40%}
img[src*="/cinematic/doctrine.webp"]{--portrait-position:0% center;--portrait-zoom:1.15;--portrait-origin:0% 45%}
img[src*="/cinematic/dva.webp"]{--portrait-position:0% center;--portrait-zoom:1.05;--portrait-origin:0% 30%}
img[src*="/cinematic/tracer.webp"]{--portrait-position:0% center;--portrait-zoom:1.05;--portrait-origin:0% 30%}
img[src*="/cinematic/mercy.webp"]{--portrait-position:0% center;--portrait-zoom:1.12;--portrait-origin:0% 30%}
img[src*="/cinematic/reinhardt-edition.webp"]{--portrait-position:70% center;--portrait-zoom:1.15;--portrait-origin:50% 40%}
.intro-active:before{content:'';position:fixed;inset:0;background:#100919;z-index:9998}.site-intro{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 47%,#7e3b603d,transparent 50%),#100919;color:#ffe8d1;overflow:hidden;transition:opacity .4s,filter .4s}.site-intro[hidden]{display:none}.site-intro.is-leaving{opacity:0;filter:blur(8px);pointer-events:none}.site-intro__centre{position:relative;text-align:center;display:grid;justify-items:center;gap:22px;padding:32px}.site-intro__logo{position:relative;width:clamp(180px,28vw,300px);height:210px;display:grid;place-items:center;animation:intro-arrive 1.1s both}.site-intro__logo img{width:100%;height:auto;filter:drop-shadow(0 0 25px #df86b166)}.site-intro__orbit{position:absolute;inset:20px -50px;border:1px solid #e8be8d44;border-radius:50%;transform:rotate(-18deg) scaleY(.6);animation:intro-orbit 2.3s ease-out both;pointer-events:none}.site-intro__orbit:nth-child(2){transform:rotate(65deg) scaleY(.65);border-color:#e08ab54d;animation-direction:reverse}.site-intro h2{font-family:var(--font-display);font-size:clamp(30px,6vw,65px);text-transform:uppercase;letter-spacing:.1em;line-height:1.1;margin:0;animation:intro-title 1s .25s both}.site-intro__line{width:100px;height:2px;background:linear-gradient(90deg,transparent,#f0c38d,#e48eb7,transparent);box-shadow:0 0 20px #e194b6;animation:intro-title 1s .5s both}.site-intro p{font-size:10px;letter-spacing:.3em;color:#c9a6be;margin:0;animation:intro-title 1s .5s both}.site-intro__skip{position:absolute;bottom:34px;right:40px;background:none;border:1px solid #c58d9f55;color:#d9bccb;padding:12px 18px;font:inherit;font-size:11px;cursor:pointer}.site-intro__skip:focus-visible{outline:2px solid #f6c99a;outline-offset:4px}@keyframes intro-arrive{from{opacity:0;filter:blur(15px);transform:scale(.88)}to{opacity:1;filter:blur(0);transform:scale(1)}}@keyframes intro-title{from{opacity:0;filter:blur(12px);transform:translateY(12px)}to{opacity:1;filter:blur(0);transform:translateY(0)}}@keyframes intro-orbit{from{opacity:0;rotate:-45deg;scale:.7}to{opacity:1;rotate:0deg;scale:1}}@media(prefers-reduced-motion:reduce){.site-intro,.intro-active:before{display:none}.site-intro *{animation:none!important}}@media(max-width:600px){.site-intro__logo{height:170px}.site-intro__orbit{inset:10px -20px}.site-intro__skip{right:20px;bottom:26px}.site-intro h2{letter-spacing:.06em}}
.profile-studio .portrait-picker .avatar-choice .portrait-image-frame img{object-position:var(--portrait-position,center);transform:scale(var(--portrait-zoom,1));transform-origin:var(--portrait-origin,0% 35%)}
html.intro-active{overflow:hidden}.intro-active .page{visibility:hidden}
.squad-intro{flex-wrap:wrap}.squad-entry-actions{flex-basis:100%;border-top:1px solid #bb84a044;padding-top:18px}.member-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.member-card{display:flex;align-items:center;gap:22px;padding:24px;border:1px solid #bf8a9f55;background:linear-gradient(125deg,#37213c,#170f25);overflow:hidden}.member-card>img{width:90px;height:90px;object-fit:cover;border:1px solid #e5b18b77;border-radius:6px}.member-card h2{font-size:27px;margin:12px 0 0;overflow-wrap:anywhere}.member-card>div{min-width:0}.member-directory-head{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:22px;background:#25172eeb;border:1px solid #bf8a9f55;margin-bottom:20px}.member-directory-head p{font-size:12px;color:#c4accb;margin:10px 0 0}.member-directory-head .input{max-width:320px}.member-grid .creator-invite{grid-column:1/-1}.member-visibility,.dm-preference{border-top:1px solid #bc83a044;padding-top:20px;margin-top:16px}.roster-remove-action{padding-top:18px;border-top:1px solid #bc83a044;margin-top:18px}@media(max-width:700px){.member-grid{grid-template-columns:1fr}.member-directory-head{flex-direction:column;align-items:stretch}.member-directory-head .input{max-width:none}.member-card{padding:18px;gap:18px}}
.member-card__portrait{display:block;width:90px;height:90px;flex-shrink:0;overflow:hidden;border:1px solid #e5b18b77;border-radius:6px}.member-card__portrait img{width:100%;height:100%;object-fit:cover;object-position:var(--portrait-position,center);transform:scale(var(--portrait-zoom,1));transform-origin:var(--portrait-origin,0% 35%)}
body[data-page="account"] { --page-art:url("../img/cinematic/orisa.webp"); }
body[data-page="admin"] { --page-art:url("../img/cinematic/reinhardt-edition.webp"); }
body[data-page="archive"] { --page-art:url("../img/cinematic/ashe.webp"); }
body[data-page="archives"] { --page-art:url("../img/cinematic/dva.webp"); }
body[data-page="bracket"] { --page-art:url("../img/cinematic/sierra.webp"); }
body[data-page="captain"] { --page-art:url("../img/cinematic/ana.webp"); }
body[data-page="chat"] { --page-art:url("../img/cinematic/tracer.webp"); }
body[data-page="hall"] { --page-art:url("../img/cinematic/mercy.webp"); }
body[data-page="register"] { --page-art:url("../img/cinematic/mei.webp"); }
body[data-page="rules"] { --page-art:url("../img/cinematic/mizuki.webp"); }
body[data-page="schedule"] { --page-art:url("../img/cinematic/sojourn.webp"); }
body[data-page="teams"] { --page-art:url("../img/cinematic/symmetra.webp"); }
body[data-page="verify"] { --page-art:url("../img/cinematic/echo.webp"); }
body[data-page="voting"] { --page-art:url("../img/cinematic/zarya.webp"); }
body[data-page="watch"] { --page-art:url("../img/cinematic/doctrine.webp"); }
body[data-page="members"] .page-title::before { background-image:url("../img/logo.webp");background-size:contain;background-position:center;background-repeat:no-repeat;transform:none;opacity:.55;width:35%; }