:root{font-family:system-ui,-apple-system,"Segoe UI","Microsoft YaHei",sans-serif;color:#eee;background:#0d0d0f;--gold:#d7b46a;--line:#2b2b30;--panel:#17171b;--muted:#9b9ba4}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top,#201c15 0,#0d0d0f 44%);min-height:100vh} body.home-page{background:#090b10;}a{color:inherit;text-decoration:none}.wrap{max-width:1060px;margin:auto;padding:22px}.nav{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-bottom:20px}.brand{font-size:20px;font-weight:800;letter-spacing:.1em}.navlinks,.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.btn,button{border:1px solid #51462f;background:#231f18;color:#f6e6bc;border-radius:10px;padding:10px 14px;cursor:pointer;font:inherit}.btn.alt,button.alt{border-color:var(--line);background:#17171b;color:#ddd}.btn:disabled,button:disabled{opacity:.45;cursor:not-allowed}.danger{border-color:#7a3535!important;background:#301718!important;color:#ffb8b8!important}.card{background:rgba(23,23,27,.95);border:1px solid var(--line);border-radius:16px;padding:18px;margin:14px 0;box-shadow:0 8px 30px #0005}.hero{padding:34px 4px 16px}.hero h1{font-size:clamp(34px,7vw,64px);margin:4px 0 8px}.hero p{max-width:720px;color:#b8b8bf;font-size:16px;line-height:1.8}.eyebrow{display:block;margin-bottom:7px;color:var(--gold);font-size:12px;font-weight:800;letter-spacing:.16em}h1,h2,h3{margin:0 0 10px}.muted,small{color:var(--muted);font-size:14px}.event-card,.event-head,.section-title,.team-title,.identity-bar{display:flex;gap:18px;align-items:flex-start;justify-content:space-between}.event-side{display:flex;min-width:120px;flex-direction:column;align-items:flex-end;gap:4px}.event-side strong,.counter strong{font-size:32px;color:#f0d99f}.event-side span,.counter span{color:var(--muted);font-size:12px}.counter{text-align:right}.tag{display:inline-flex;align-items:center;border:1px solid #4a4130;border-radius:999px;padding:5px 9px;color:#e5c98f;font-size:12px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.field{display:flex;flex-direction:column;gap:6px}.wide{grid-column:1/-1}.field input,.field select,.field textarea,input,select,textarea{width:100%;padding:11px 12px;border-radius:10px;border:1px solid #34343b;background:#0f0f12;color:#eee;font:inherit}.field textarea,textarea{min-height:90px;resize:vertical}.inline-form,.create-team{display:flex;gap:8px;margin-top:14px}.inline-form input,.create-team input{flex:1}.notice{padding:12px 14px;border:1px solid #31553a;border-radius:10px;background:#142017}.ok{color:#9bddaa}.warn{color:#ffb06c}.hidden{display:none!important}.list{display:flex;flex-direction:column;gap:8px}.member{display:flex;align-items:center;gap:10px;padding:9px;border:1px solid #29292f;border-radius:10px;background:#111115}.member.compact{padding:8px}.member-name{flex:1;min-width:0}.avatar{width:34px;height:34px;border-radius:50%;object-fit:cover;background:#2a2a2f}.avatar.fallback{display:grid;place-items:center;font-weight:700}.teams{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:12px;margin-top:14px}.team{border:1px solid #34343a;border-radius:14px;padding:13px;background:#111115}.team h3{color:var(--gold)}.team button{width:100%;margin-top:10px}.empty{padding:28px;border:1px dashed #34343a;border-radius:12px;color:var(--muted);text-align:center}.simple-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-top:12px}.name-cloud{display:flex;gap:7px;flex-wrap:wrap}.name-cloud span{padding:6px 9px;border-radius:999px;background:#101014;border:1px solid #29292f;color:#c9c9cf;font-size:13px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}.stats>div{background:#17171b;border:1px solid var(--line);border-radius:14px;padding:14px;text-align:center}.stats strong{display:block;font-size:26px;color:#ead29a}.stats span{font-size:12px;color:var(--muted)}.admin-event{display:flex;gap:8px}.admin-event .evt{flex:1;display:flex;justify-content:space-between;gap:12px;text-align:left}.admin-event .evt span{color:var(--muted)}.admin-member select{width:auto;min-width:160px}.tiny{padding:6px 9px!important;width:auto!important;margin:0!important;font-size:12px}.auth-card{max-width:460px;margin:9vh auto 0;padding:28px}.auth-mark{width:52px;height:52px;display:grid;place-items:center;margin-bottom:18px;border:1px solid #665634;border-radius:15px;background:linear-gradient(145deg,#2d271d,#151419);color:#f2d89b;font:800 24px/1 serif}.auth-form{display:flex;flex-direction:column;gap:14px;margin-top:22px}.auth-form button,.full{width:100%}.remember{display:flex;align-items:center;gap:8px;color:#c7c7ce;font-size:14px}.remember input{width:auto;accent-color:#b79552}.auth-divider{display:flex;align-items:center;gap:12px;margin:22px 0 14px;color:var(--muted);font-size:12px}.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:var(--line)}.auth-input{flex:1}.auth-error{margin:14px 0 0;color:#ff9f9f;font-size:14px}
@media(max-width:720px){.wrap{padding:14px}.event-card,.event-head,.section-title,.identity-bar{flex-direction:column}.event-side,.counter{align-items:flex-start;text-align:left}.grid{grid-template-columns:1fr}.wide{grid-column:auto}.stats{grid-template-columns:repeat(2,1fr)}.inline-form,.create-team{flex-direction:column}.admin-member{align-items:stretch;flex-wrap:wrap}.admin-member select{width:100%}.admin-event{align-items:stretch}.admin-event .evt{flex-direction:column}.simple-list{grid-template-columns:1fr}}

/* Homepage hero - launcher test */
body.launcher-home{background:#07090d;overflow-x:hidden}
.home-shell{min-height:100vh;background:#07090d}
.launcher-nav{position:relative;z-index:20;max-width:1180px;margin:0 auto;padding:22px 22px 0}
.glass-btn{backdrop-filter:blur(12px);background:rgba(13,15,20,.46)!important;border-color:rgba(255,255,255,.13)!important}
.launcher-stage{position:relative;min-height:calc(100vh - 76px);overflow:hidden;isolation:isolate;border-top:1px solid rgba(255,255,255,.035)}
.launcher-stage>*{position:absolute;inset:0}
.launcher-stage .hero-bg{z-index:1;background-image:linear-gradient(90deg,rgba(5,7,11,.82) 0%,rgba(8,9,14,.56) 34%,rgba(7,8,13,.16) 62%,rgba(7,8,13,.34) 100%),url('/assets/hero-homepage.png');background-size:cover;background-position:center center;transform:scale(1.075);animation:launcherDrift 18s ease-in-out infinite alternate}
.launcher-stage .hero-vignette{z-index:6;background:linear-gradient(180deg,rgba(4,5,8,.08) 0%,rgba(4,5,8,.02) 44%,rgba(5,6,10,.28) 74%,rgba(5,6,10,.88) 100%),radial-gradient(circle at 74% 30%,rgba(255,206,120,.07),transparent 24%),radial-gradient(circle at 20% 16%,rgba(140,181,255,.12),transparent 24%)}
.launcher-stage .hero-fog{z-index:3;filter:blur(16px);mix-blend-mode:screen;pointer-events:none}
.launcher-stage .fog-a{opacity:.62;background:radial-gradient(circle at 18% 80%,rgba(215,226,255,.30),transparent 24%),radial-gradient(circle at 52% 72%,rgba(239,244,255,.22),transparent 20%),radial-gradient(circle at 86% 78%,rgba(255,255,255,.15),transparent 18%);animation:fogWideA 20s linear infinite alternate}
.launcher-stage .fog-b{opacity:.45;background:radial-gradient(circle at 28% 90%,rgba(255,255,255,.17),transparent 18%),radial-gradient(circle at 74% 62%,rgba(166,194,255,.16),transparent 20%),radial-gradient(circle at 84% 22%,rgba(255,221,157,.18),transparent 14%);animation:fogWideB 24s linear infinite alternate}
.launcher-stage .hero-dragonglow{z-index:2;background:radial-gradient(circle at 73% 34%,rgba(255,201,116,.30),transparent 13%),radial-gradient(circle at 82% 39%,rgba(255,160,66,.17),transparent 19%);mix-blend-mode:screen;animation:dragonPulseWide 6.4s ease-in-out infinite}
.launcher-stage .hero-swordglow{z-index:4;left:-5%;right:auto;top:10%;bottom:8%;width:42%;background:linear-gradient(180deg,transparent 2%,rgba(255,203,93,.06) 28%,rgba(255,216,124,.58) 50%,rgba(255,237,193,.12) 68%,transparent 100%);clip-path:polygon(47% 0,53% 0,56% 100%,44% 100%);filter:blur(10px);opacity:.72;mix-blend-mode:screen;animation:swordFlowWide 4.2s ease-in-out infinite}
.launcher-stage .hero-lightning{z-index:5;opacity:0;pointer-events:none;background:radial-gradient(circle at 23% 13%,rgba(241,248,255,.96),rgba(221,238,255,.26) 18%,transparent 34%),linear-gradient(180deg,rgba(185,220,255,.30),rgba(185,220,255,.03) 28%,transparent 52%);mix-blend-mode:screen}
.launcher-stage.flash .hero-lightning{animation:lightningFlash .42s ease-out 1}
.launcher-stage .hero-particles{z-index:7;overflow:hidden;pointer-events:none}
.launcher-stage .hero-particles span{position:absolute;display:block;width:13px;height:7px;border-radius:60% 20% 60% 20%;background:linear-gradient(135deg,#821014,#dc4047 55%,#ff9a70 100%);opacity:.76;animation:leafFall linear infinite}
.launcher-content{z-index:10;position:relative!important;inset:auto!important;max-width:1180px;margin:0 auto;padding:72px 22px 42px;display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,430px);gap:42px;align-items:end;min-height:calc(100vh - 76px)}
.launcher-content .hero-copy{position:relative!important;inset:auto!important;max-width:610px;padding:0 0 44px}
.launcher-content .hero-copy h1{font-size:clamp(56px,7.2vw,100px);line-height:.96;margin:8px 0 18px;letter-spacing:.01em;text-shadow:0 8px 32px rgba(0,0,0,.45)}
.launcher-content .hero-copy p{max-width:590px;color:#d9dbe2;font-size:17px;line-height:1.9;text-shadow:0 2px 12px rgba(0,0,0,.5)}
.launcher-content .eyebrow{font-size:13px;color:#e7c67d;letter-spacing:.22em}
.launcher-events{position:relative!important;inset:auto!important;align-self:end;padding-bottom:24px}
.launcher-events .card{margin:0;background:linear-gradient(180deg,rgba(18,20,27,.72),rgba(12,13,18,.88));border-color:rgba(236,206,140,.18);backdrop-filter:blur(18px);box-shadow:0 18px 50px rgba(0,0,0,.35);border-radius:22px;padding:22px}
.launcher-events .event-card{display:grid;grid-template-columns:1fr;gap:18px}
.launcher-events .event-side{align-items:flex-start;min-width:0;display:grid;grid-template-columns:auto 1fr;gap:6px 14px}
.launcher-events .event-side strong{grid-row:1/3;font-size:54px;line-height:.9;color:#f2d27f}
.launcher-events .event-side span{align-self:end}
.launcher-events .event-side .btn{grid-column:1/-1;width:100%;text-align:center;margin-top:8px;background:linear-gradient(180deg,#2d261a,#211c14);border-color:#6b5734;padding:13px 16px}
.launcher-events h2{font-size:28px;line-height:1.2}
@keyframes launcherDrift{0%{transform:scale(1.075) translate3d(-10px,0,0)}100%{transform:scale(1.105) translate3d(14px,-10px,0)}}
@keyframes fogWideA{0%{transform:translate3d(-3%,1%,0)}100%{transform:translate3d(4%,-2%,0)}}
@keyframes fogWideB{0%{transform:translate3d(3%,0,0)}100%{transform:translate3d(-4%,2%,0)}}
@keyframes dragonPulseWide{0%,100%{opacity:.78;transform:scale(1)}50%{opacity:1;transform:scale(1.025)}}
@keyframes swordFlowWide{0%,100%{opacity:.34;filter:blur(12px)}45%{opacity:.92;filter:blur(5px)}60%{opacity:.65;filter:blur(8px)}}
@keyframes lightningFlash{0%{opacity:0}18%{opacity:.98}33%{opacity:.15}49%{opacity:.88}100%{opacity:0}}
@keyframes leafFall{0%{transform:translate3d(var(--sx),-12%,0) rotate(0deg);opacity:0}10%{opacity:var(--op,.8)}100%{transform:translate3d(calc(var(--sx) + var(--drift,50px)),108%,0) rotate(540deg);opacity:0}}
@media(max-width:860px){
  .launcher-nav{padding:18px 18px 0}.launcher-content{grid-template-columns:1fr;gap:18px;padding:46px 18px 26px;align-content:end}.launcher-content .hero-copy{padding:0 0 8px}.launcher-content .hero-copy h1{font-size:clamp(46px,14vw,74px)}.launcher-content .hero-copy p{font-size:16px;line-height:1.8}.launcher-events{padding-bottom:0}.launcher-events .card{border-radius:18px}.launcher-stage .hero-bg{background-image:linear-gradient(180deg,rgba(5,7,11,.28) 0%,rgba(7,8,12,.24) 28%,rgba(7,8,12,.52) 66%,rgba(6,7,11,.92) 100%),url('/assets/hero-homepage.png');background-position:62% center;animation:mobileKenBurns 14s ease-in-out infinite alternate}.launcher-stage .hero-swordglow{left:-18%;width:68%;opacity:.5}}
@keyframes mobileKenBurns{0%{transform:scale(1.10) translate3d(-2%,0,0)}100%{transform:scale(1.17) translate3d(2%,-1.5%,0)}}


/* Event / signup page - launcher test */
body.event-page{background:#07090d;overflow-x:hidden;min-height:100vh}
.event-bg{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;background:#07090d}
.event-bg>*{position:absolute;inset:0}
.event-bg-image{background-image:linear-gradient(180deg,rgba(5,7,11,.28) 0%,rgba(6,8,12,.58) 48%,rgba(6,7,10,.93) 100%),linear-gradient(90deg,rgba(5,7,11,.70),rgba(6,8,12,.20) 48%,rgba(6,8,12,.60)),url('/assets/hero-homepage.png');background-size:cover;background-position:center 36%;transform:scale(1.08);animation:eventBgDrift 22s ease-in-out infinite alternate}
.event-bg-vignette{background:radial-gradient(circle at 70% 18%,rgba(255,205,118,.08),transparent 24%),radial-gradient(circle at 18% 13%,rgba(150,188,255,.10),transparent 24%),linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.32) 62%,rgba(0,0,0,.72));z-index:5}
.event-bg-glow{z-index:2;background:radial-gradient(circle at 73% 25%,rgba(255,198,108,.20),transparent 15%),radial-gradient(circle at 25% 38%,rgba(255,216,126,.10),transparent 15%);mix-blend-mode:screen;animation:eventGlow 7s ease-in-out infinite}
.event-bg-fog{z-index:3;filter:blur(18px);mix-blend-mode:screen}
.event-bg .fog-one{opacity:.42;background:radial-gradient(circle at 20% 70%,rgba(219,229,255,.22),transparent 24%),radial-gradient(circle at 58% 78%,rgba(244,247,255,.15),transparent 22%);animation:eventFogA 20s linear infinite alternate}
.event-bg .fog-two{opacity:.32;background:radial-gradient(circle at 75% 64%,rgba(169,197,255,.15),transparent 20%),radial-gradient(circle at 88% 24%,rgba(255,221,160,.14),transparent 15%);animation:eventFogB 25s linear infinite alternate}
.event-bg-lightning{z-index:4;opacity:0;background:radial-gradient(circle at 21% 11%,rgba(243,249,255,.88),rgba(218,238,255,.20) 18%,transparent 34%),linear-gradient(180deg,rgba(188,220,255,.22),transparent 46%);mix-blend-mode:screen}
.event-bg.flash .event-bg-lightning{animation:eventLightning .42s ease-out 1}
.event-wrap{position:relative;z-index:10;max-width:1040px;padding-top:22px;padding-bottom:60px}
.event-nav{margin-bottom:28px;padding:0 2px}
.event-app{display:flex;flex-direction:column;gap:14px}
.event-page .card{margin:0;background:linear-gradient(180deg,rgba(17,19,25,.72),rgba(11,12,17,.87));border-color:rgba(233,204,142,.15);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 18px 46px rgba(0,0,0,.28);border-radius:20px}
.event-page .event-head{min-height:220px;align-items:flex-end;padding:28px;background:linear-gradient(90deg,rgba(12,14,19,.88),rgba(12,14,19,.52) 58%,rgba(12,14,19,.28)),linear-gradient(180deg,rgba(17,19,25,.50),rgba(9,10,14,.82));overflow:hidden;position:relative}
.event-page .event-head:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 83% 30%,rgba(255,200,106,.12),transparent 22%);pointer-events:none}
.event-page .event-head>div{position:relative;z-index:1}
.event-page .event-head h1{font-size:clamp(36px,6vw,68px);line-height:1.02;margin:5px 0 10px;text-shadow:0 8px 28px rgba(0,0,0,.45)}
.event-page .event-head .muted{max-width:650px;color:#d1d3da;line-height:1.8}
.event-page .counter{position:relative;z-index:1;min-width:110px;padding:14px 16px;border:1px solid rgba(235,207,146,.15);border-radius:16px;background:rgba(9,10,14,.42);backdrop-filter:blur(12px)}
.event-page .counter strong{font-size:44px;line-height:1;color:#f1d17d}
.event-page .card h2{font-size:22px}
.event-page .inline-form input,.event-page .create-team input,.event-page input,.event-page select,.event-page textarea{background:rgba(9,10,14,.70);border-color:rgba(255,255,255,.13);box-shadow:inset 0 1px 0 rgba(255,255,255,.02)}
.event-page .inline-form input:focus,.event-page .create-team input:focus,.event-page input:focus,.event-page select:focus,.event-page textarea:focus{outline:none;border-color:#8f7647;box-shadow:0 0 0 3px rgba(215,180,106,.10)}
.event-page button,.event-page .btn{background:linear-gradient(180deg,#2d261a,#211c14);border-color:#6c5735;color:#f7e6b9;transition:transform .18s ease,filter .18s ease,box-shadow .18s ease}
@media(hover:hover){.event-page button:hover,.event-page .btn:hover{transform:translateY(-1px);filter:brightness(1.08);box-shadow:0 6px 18px rgba(0,0,0,.22)}}
.event-page .btn.alt,.event-page button.alt{background:rgba(17,19,25,.58);border-color:rgba(255,255,255,.12);color:#ddd}
.event-page .notice{background:rgba(20,32,23,.58);border-color:rgba(83,150,101,.42)}
.event-page .team{background:linear-gradient(180deg,rgba(13,15,20,.74),rgba(10,11,15,.82));border-color:rgba(255,255,255,.10);backdrop-filter:blur(10px);transition:transform .18s ease,border-color .18s ease}
@media(hover:hover){.event-page .team:hover{transform:translateY(-2px);border-color:rgba(215,180,106,.28)}}
.event-page .member{background:rgba(8,9,13,.52);border-color:rgba(255,255,255,.08)}
.event-page .name-cloud span{background:rgba(8,9,13,.48);border-color:rgba(255,255,255,.08)}
.event-page .tag{background:rgba(215,180,106,.06);border-color:rgba(215,180,106,.28)}
.event-page .empty{border-color:rgba(255,255,255,.12);background:rgba(9,10,14,.28)}
@keyframes eventBgDrift{0%{transform:scale(1.08) translate3d(-.8%,0,0)}100%{transform:scale(1.12) translate3d(1.2%,-1.2%,0)}}
@keyframes eventGlow{0%,100%{opacity:.62}50%{opacity:1}}
@keyframes eventFogA{0%{transform:translate3d(-3%,1%,0)}100%{transform:translate3d(4%,-2%,0)}}
@keyframes eventFogB{0%{transform:translate3d(3%,0,0)}100%{transform:translate3d(-4%,2%,0)}}
@keyframes eventLightning{0%{opacity:0}18%{opacity:.84}35%{opacity:.10}50%{opacity:.64}100%{opacity:0}}
@media(max-width:720px){
  .event-wrap{padding:16px 14px 42px}.event-nav{margin-bottom:18px}.event-page .event-head{min-height:250px;padding:22px;flex-direction:column;align-items:flex-start;justify-content:flex-end}.event-page .event-head h1{font-size:clamp(38px,12vw,54px)}.event-page .counter{width:100%;text-align:left;display:flex;align-items:baseline;gap:10px}.event-page .counter strong{font-size:38px}.event-bg-image{background-image:linear-gradient(180deg,rgba(5,7,11,.30) 0%,rgba(6,8,12,.56) 38%,rgba(6,7,10,.94) 100%),url('/assets/hero-homepage.png');background-position:62% 18%;animation:eventMobileDrift 16s ease-in-out infinite alternate}.event-page .card{border-radius:17px}.event-page .inline-form{gap:10px}.event-page .inline-form button{min-height:46px}}
@keyframes eventMobileDrift{0%{transform:scale(1.12) translate3d(-2%,0,0)}100%{transform:scale(1.18) translate3d(2%,-1%,0)}}
@media(prefers-reduced-motion:reduce){.event-bg-image,.event-bg-glow,.event-bg-fog{animation:none!important}}


/* Sword-trial full-page event theme */
body.sword-event-page{background:#06080c;}
.sword-event-bg .event-bg-image{background-image:linear-gradient(180deg,rgba(5,6,10,.18) 0%,rgba(7,8,13,.36) 28%,rgba(7,8,13,.62) 58%,rgba(6,7,10,.92) 100%),url('/assets/event-swordbattle.png');background-position:center center;animation:eventBattleDrift 18s ease-in-out infinite alternate}
.sword-event-bg .event-bg-core{position:absolute;inset:0;z-index:-4;pointer-events:none;background:radial-gradient(circle at 50% 34%,rgba(255,224,160,.18),rgba(255,224,160,0) 9%),linear-gradient(180deg,rgba(255,196,91,0) 0%,rgba(255,196,91,.05) 18%,rgba(255,214,129,.64) 48%,rgba(255,238,201,.10) 66%,rgba(255,196,91,0) 100%);clip-path:polygon(48.5% 0,51.5% 0,55.5% 100%,44.5% 100%);filter:blur(8px);opacity:.82;mix-blend-mode:screen;animation:swordCoreFlow 3.6s ease-in-out infinite}
.sword-event-bg .event-bg-lava{position:absolute;inset:auto 0 0 0;height:46%;z-index:-5;pointer-events:none;opacity:.62;mix-blend-mode:screen;background:linear-gradient(180deg,rgba(255,95,40,0) 0%,rgba(255,118,43,.06) 14%,rgba(255,115,34,.16) 28%,rgba(255,151,43,.26) 44%,rgba(255,83,17,.06) 62%,rgba(255,162,79,.18) 78%,rgba(255,117,25,0) 100%),repeating-linear-gradient(100deg,rgba(255,214,128,0) 0 12%,rgba(255,214,128,.22) 16% 17%,rgba(255,117,25,.05) 20% 32%,rgba(255,214,128,0) 35% 48%);background-size:100% 100%,240% 100%;filter:blur(18px);animation:lavaStream 9s linear infinite}
.sword-event-bg .event-bg-glow{background:radial-gradient(circle at 49% 54%,rgba(255,135,39,.22),rgba(255,135,39,0) 16%),radial-gradient(circle at 50% 29%,rgba(255,221,149,.16),rgba(255,221,149,0) 10%),radial-gradient(circle at 27% 18%,rgba(157,190,255,.12),rgba(157,190,255,0) 22%),radial-gradient(circle at 84% 18%,rgba(157,190,255,.08),rgba(157,190,255,0) 18%);animation:eventGlow 6.8s ease-in-out infinite}
.sword-event-bg .fog-one{background:radial-gradient(circle at 16% 76%,rgba(239,244,255,.18),transparent 22%),radial-gradient(circle at 44% 62%,rgba(236,241,255,.15),transparent 18%),radial-gradient(circle at 82% 76%,rgba(255,255,255,.11),transparent 18%);opacity:.42}
.sword-event-bg .fog-two{background:radial-gradient(circle at 24% 88%,rgba(255,255,255,.11),transparent 16%),radial-gradient(circle at 68% 52%,rgba(187,207,255,.12),transparent 18%),radial-gradient(circle at 84% 26%,rgba(255,221,157,.09),transparent 14%);opacity:.28}
.sword-event-bg .event-bg-vignette{background:linear-gradient(180deg,rgba(4,5,8,.22) 0%,rgba(4,5,8,.18) 26%,rgba(5,6,10,.36) 48%,rgba(5,6,10,.78) 100%),radial-gradient(circle at 50% 36%,rgba(255,215,146,.06),transparent 12%)}
.sword-event-bg .event-bg-embers{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.sword-event-bg .event-bg-embers span{position:absolute;width:4px;height:4px;border-radius:50%;background:#ffcb75;box-shadow:0 0 10px rgba(255,170,74,.55);opacity:.6;animation:emberRise linear infinite}
.sword-event-page .event-wrap{max-width:1200px;padding-top:18px}
.sword-event-page .event-nav{position:sticky;top:0;z-index:15;padding:10px 0 14px;backdrop-filter:blur(10px);background:linear-gradient(180deg,rgba(6,7,10,.72),rgba(6,7,10,.14));margin-bottom:14px}
.sword-event-page .event-app{position:relative;z-index:2}
.sword-event-page .event-head{min-height:320px;align-items:flex-end;background:linear-gradient(180deg,rgba(9,10,14,.28),rgba(8,9,12,.54));border-color:rgba(255,214,138,.16);box-shadow:0 20px 60px rgba(0,0,0,.38);backdrop-filter:blur(10px)}
.sword-event-page .card{background:linear-gradient(180deg,rgba(9,10,14,.56),rgba(7,8,12,.76));border-color:rgba(255,255,255,.10);box-shadow:0 16px 40px rgba(0,0,0,.24);backdrop-filter:blur(12px)}
.sword-event-page .event-head h1{max-width:640px}
.sword-event-page .event-head .muted{font-size:16px;color:#d7d7dd}
@keyframes eventBattleDrift{0%{transform:scale(1.08) translate3d(-1%,0,0)}100%{transform:scale(1.12) translate3d(1.2%,-1.5%,0)}}
@keyframes swordCoreFlow{0%,100%{opacity:.52;filter:blur(10px)}50%{opacity:.92;filter:blur(5px)}}
@keyframes lavaStream{0%{background-position:0 0,0 0}100%{background-position:0 0,220% 0}}
@keyframes emberRise{0%{transform:translate3d(0,0,0) scale(.7);opacity:0}10%{opacity:var(--eo,.75)}100%{transform:translate3d(var(--dx,0px),-180px,0) scale(1.15);opacity:0}}
@media(max-width:720px){.sword-event-bg .event-bg-image{background-image:linear-gradient(180deg,rgba(5,6,10,.26) 0%,rgba(7,8,13,.48) 34%,rgba(7,8,13,.76) 62%,rgba(6,7,10,.95) 100%),url('/assets/event-swordbattle.png');background-position:56% center;animation:eventBattleMobile 15s ease-in-out infinite alternate}.sword-event-page .event-head{min-height:260px}.sword-event-bg .event-bg-core{clip-path:polygon(47.2% 0,52.8% 0,57.2% 100%,42.8% 100%);opacity:.72}.sword-event-bg .event-bg-lava{height:52%;opacity:.7}.sword-event-page .event-nav{padding-top:6px}}
@keyframes eventBattleMobile{0%{transform:scale(1.13) translate3d(-2%,0,0)}100%{transform:scale(1.18) translate3d(1.5%,-1%,0)}}

/* Team identity picker */
.event-page .identity-pick{border-color:rgba(226,194,126,.25);background:linear-gradient(180deg,rgba(18,16,12,.68),rgba(8,9,13,.78));}
.identity-select-row{display:flex;gap:10px;align-items:center;margin-top:14px}.identity-select-row select{flex:1;min-width:0}.identity-select-row button{white-space:nowrap}
@media(max-width:720px){.identity-select-row{flex-direction:column;align-items:stretch}.identity-select-row button{width:100%}}
