/* Sakura 2026 redesign — palette supplied by site owner
   #D78CCD · #A34B9C · #4A1F46 · #FAFAFA · #272727 */
:root{
  --rose-300:#D78CCD;
  --rose-500:#A34B9C;
  --plum-900:#4A1F46;
  --paper:#FAFAFA;
  --ink:#272727;
  --muted:#76717a;
  --line:rgba(74,31,70,.12);
  --surface:#fff;
  --surface-soft:#f7f3f7;
  --shadow-sm:0 10px 30px rgba(40,20,38,.08);
  --shadow-md:0 18px 60px rgba(40,20,38,.13);
  --radius-sm:12px;
  --radius-md:20px;
  --radius-lg:28px;
  --container:1240px;
}

html{scroll-behavior:smooth;background:var(--paper)}
body{
  min-width:0;
  max-width:none;
  margin:0;
  overflow-x:hidden;
  background:var(--paper);
  color:var(--ink);
  font-family:"Open Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:15px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
body::selection{background:var(--rose-300);color:var(--plum-900)}
.container{max-width:var(--container)}
a{color:var(--rose-500);transition:color .2s ease,opacity .2s ease,transform .2s ease}
a:hover{color:var(--plum-900)}
img{max-width:100%;height:auto}

/* announcement */
.event{
  min-width:0!important;height:auto!important;padding:10px 18px!important;
  background:linear-gradient(90deg,var(--plum-900),var(--rose-500))!important;
  font-size:13px!important;letter-spacing:.02em;border:0!important;
}

/* utility bar */
.topbar{
  padding:9px 0;
  background:var(--ink);
  color:rgba(255,255,255,.72);
  border-bottom:1px solid rgba(255,255,255,.06);
  font-size:12px;
  letter-spacing:.01em;
}
.topbar a{color:var(--rose-300);font-weight:700}
.topbar a:hover{color:#fff}

/* navigation */
#navbar{
  position:sticky;top:0;z-index:1030;
  padding:0;
  background:rgba(250,250,250,.91);
  border-bottom:1px solid rgba(74,31,70,.08);
  box-shadow:0 8px 28px rgba(39,39,39,.07)!important;
  backdrop-filter:blur(16px) saturate(150%);
  -webkit-backdrop-filter:blur(16px) saturate(150%);
  font-size:14px;
}
#navbar .container{min-height:78px}
#navbar .navbar-brand{display:flex;align-items:center;padding:8px 0;margin-right:28px}
#navbar .navbar-brand img{display:block;max-width:180px;max-height:58px;object-fit:contain}
#navbar .navbar-nav{align-items:center;gap:2px}
#navbar .navbar-nav .nav-link{
  position:relative;
  padding:27px 13px 25px;
  color:#50464f;
  border-radius:0;
  font-size:13px;
  font-weight:700;
  letter-spacing:.055em;
  text-transform:uppercase;
}
#navbar .navbar-nav .nav-link:not(.nav-link-button){background-image:none!important}
#navbar .navbar-nav .nav-link:not(.nav-link-button)::after{
  content:"";position:absolute;left:13px;right:13px;bottom:18px;height:2px;
  border-radius:2px;background:linear-gradient(90deg,var(--rose-300),var(--rose-500));
  transform:scaleX(0);transform-origin:center;transition:transform .2s ease;
}
#navbar .navbar-nav .nav-link:not(.nav-link-button):hover::after,
#navbar .navbar-nav .nav-link.active:not(.nav-link-button)::after{transform:scaleX(1)}
#navbar .nav-link:hover,#navbar .nav-link:focus,#navbar .nav-link.active{color:var(--plum-900)}
#navbar .dropdown-menu{
  border:1px solid var(--line);border-radius:14px;padding:8px;
  box-shadow:var(--shadow-md);background:rgba(255,255,255,.97)
}
#navbar .dropdown-item{border-radius:9px;padding:9px 12px;font-size:13px;color:#51484f}
#navbar .dropdown-item:hover{background:#f5edf4;color:var(--plum-900)}
.nav-link-button{
  display:inline-flex!important;align-items:center;justify-content:center;
  margin:0 0 0 12px!important;
  padding:11px 20px!important;
  border-radius:999px!important;
  border:1px solid rgba(74,31,70,.18)!important;
  color:#fff!important;
  background-color:var(--plum-900)!important;
  background-image:linear-gradient(135deg,var(--rose-500),var(--plum-900))!important;
  box-shadow:0 8px 18px rgba(163,75,156,.25);
}
#navbar .navbar-nav .nav-link.nav-link-button{color:#fff!important;background-color:var(--plum-900)!important;background-image:linear-gradient(135deg,var(--rose-500),var(--plum-900))!important}
.nav-link-button:hover{color:#fff!important;transform:translateY(-1px);box-shadow:0 12px 24px rgba(163,75,156,.32)}
.navbar-toggler{border:1px solid var(--line);border-radius:12px;padding:9px 12px;color:var(--plum-900);box-shadow:none!important}

/* Hero — keeps original image */
.header{
  position:relative;
  min-height:690px;height:auto;
  padding:180px 0 150px;
  overflow:hidden;
  isolation:isolate;
  background-image:url(../images/background_header.png);
  background-repeat:no-repeat;
  background-position:center top;
  background-size:cover;
  color:#fff;
  text-align:left;
  text-shadow:none;
}
.header::before{
  content:"";position:absolute;inset:0;z-index:-2;
  background:linear-gradient(90deg,rgba(25,16,25,.83) 0%,rgba(40,21,38,.62) 39%,rgba(39,39,39,.12) 72%,rgba(39,39,39,.04) 100%);
}
.header::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:160px;z-index:-1;
  background:linear-gradient(180deg,transparent,var(--paper));pointer-events:none;
}
.header .row{align-items:center}
.header h2{
  max-width:720px;margin:0 0 18px;
  font-family:"Philosopher",serif;
  font-size:clamp(42px,5vw,72px);
  line-height:1.02;
  font-weight:700;
  letter-spacing:-.025em;
  text-wrap:balance;
}
.header p{max-width:650px;margin:0;color:rgba(255,255,255,.83);font-size:17px;line-height:1.75}
.header small{display:block;width:max-content;margin-top:14px;color:rgba(255,255,255,.58);font-size:12px;letter-spacing:.04em}
.header-button-download{
  display:inline-flex;align-items:center;justify-content:center;gap:11px;
  width:auto;height:auto;min-width:230px;margin:30px 0 0;padding:15px 26px;
  background:linear-gradient(135deg,var(--rose-300),var(--rose-500));
  border:1px solid rgba(255,255,255,.24);border-radius:999px;
  box-shadow:0 15px 34px rgba(74,31,70,.32);
  color:#fff!important;font-size:14px;font-weight:800;letter-spacing:.055em;line-height:1;text-transform:uppercase;
}
.header-button-download::before{
  width:22px;height:22px;margin:0;background-size:contain;filter:brightness(0) invert(1)
}
.header-button-download:hover{filter:none;transform:translateY(-2px);box-shadow:0 19px 40px rgba(74,31,70,.4)}

/* global sections */
.section{padding:82px 0;background:var(--paper)}
.clearfix{margin-bottom:22px}
.panel{
  padding:34px;background:rgba(255,255,255,.92);color:#5c565c;
  border:1px solid var(--line);border-radius:var(--radius-lg);
  box-shadow:var(--shadow-sm);font-size:15px;line-height:1.65;
}

/* stats */
.section-stats{
  position:relative;z-index:3;
  max-width:var(--container);margin:-75px auto 0;padding:0 20px;
  background:transparent;color:var(--ink);text-shadow:none;
}
.section-stats .container{padding:0;max-width:none}
.section-stats .row{
  margin:0;background:rgba(255,255,255,.94);border:1px solid rgba(74,31,70,.08);
  border-radius:24px;box-shadow:var(--shadow-md);overflow:hidden;
  backdrop-filter:blur(15px);
}
.section-stats [class*="col-"]{position:relative;padding:24px 22px 22px}
.section-stats [class*="col-"]:not(:last-child)::after{content:"";position:absolute;right:0;top:23%;height:54%;width:1px;background:var(--line)}
.section-stats h4{margin:0 0 10px;color:var(--plum-900);font-size:15px;font-weight:800;letter-spacing:.02em}
.section-stats h4 small{margin-top:3px;color:var(--muted);font-size:11px;font-weight:500}
.section-stats h5{margin:10px 0 0;color:var(--rose-500);font-size:26px;font-weight:800}
.section-stats-bar{width:100%;height:7px;margin:11px auto 7px;padding:0;background:#eee7ed;border-radius:999px;overflow:hidden}
.section-stats-bar>div{height:100%;background:linear-gradient(90deg,var(--rose-300),var(--rose-500));border-radius:999px}

/* news cards */
.news-slider{position:relative;padding-bottom:26px}
.news-slider-container{gap:22px;margin:0 -12px;padding:14px 12px 28px;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:var(--rose-300) #eee8ed}
.news-slider-container::-webkit-scrollbar{height:5px}
.news-slider-container::-webkit-scrollbar-track{background:#eee8ed;border-radius:9px}
.news-slider-container::-webkit-scrollbar-thumb{background:var(--rose-300);border-radius:9px}
.news-slider-panel{
  min-width:350px;width:350px;min-height:470px;margin:0;padding:225px 24px 86px;
  scroll-snap-align:start;background-color:#fff;background-size:100% auto;
  border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow-sm);
  color:var(--ink);font-size:14px;font-weight:400;line-height:1.6;overflow:hidden;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.news-slider-panel:hover{transform:translateY(-5px);box-shadow:var(--shadow-md);border-color:rgba(163,75,156,.25)}
.news-title{font-family:"Philosopher",serif;font-size:23px;line-height:1.2;font-weight:700;text-transform:none}
.news-author{color:var(--rose-500);font-size:12px;font-weight:700;letter-spacing:.02em}
.news-button,.news-button-archive{
  left:24px;right:24px;bottom:22px;padding:12px 16px;border:1px solid var(--line);border-radius:999px;
  background:#faf7fa;box-shadow:none;color:var(--plum-900)!important;font-size:12px;letter-spacing:.04em;
}
.news-button:hover,.news-button-archive:hover{background:var(--plum-900);color:#fff!important;border-color:var(--plum-900)}
.news-button-archive{bottom:235px}
.news-slider-text{bottom:0;color:#948b93;font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:700}

/* register CTA */
.section-register{
  position:relative;padding:72px 0;
  background-image:linear-gradient(90deg,rgba(31,18,30,.94),rgba(74,31,70,.84)),url(../images/background_section_register.png);
  background-size:cover;background-position:center;color:#fff;overflow:hidden;
}
.section-register h2{
  margin:0;color:#fff;font-family:"Philosopher",serif;font-size:clamp(30px,4vw,46px);line-height:1.15;white-space:normal;
}
.section-register h2::before,.section-register p::before{display:none}
.section-register .row{align-items:center}
.section-register p{margin:0 0 18px;color:rgba(255,255,255,.72)}
.section-register a{color:var(--rose-300)}
.section-register-button{
  display:inline-flex;width:auto;margin:0;padding:12px 24px;border:1px solid rgba(255,255,255,.25);border-radius:999px;
  background:#fff;color:var(--plum-900)!important;font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;
}
.section-register-button:hover{background:var(--rose-300);color:var(--plum-900)!important;transform:translateY(-2px)}

/* ranking homepage */
.section-ranking{
  position:relative;padding:90px 0 100px;
  background-image:linear-gradient(rgba(250,250,250,.86),rgba(250,250,250,.96)),url(../images/background_section_ranking.png);
  background-position:center;background-size:cover;
}
.section-ranking-title{font-family:"Philosopher",serif;font-size:42px;color:var(--ink);letter-spacing:-.02em}
.section-ranking-subtitle{color:var(--rose-500);font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.14em}
.section-ranking-nav{gap:8px;margin:38px 0 28px;flex-wrap:wrap}
.section-ranking-nav .nav-item,.section-ranking-nav .nav-item:last-child{width:auto}
.section-ranking-nav .nav-item::after{display:none}
.section-ranking-nav .nav-link{
  width:116px;padding:12px 8px;border:1px solid transparent;border-radius:16px;color:#8d858d;font-size:12px;font-weight:800;letter-spacing:.05em;
}
.section-ranking-nav .nav-link::before{height:44px}
.section-ranking-nav .nav-link.active,.section-ranking-nav .nav-link:hover{background:#fff!important;border-color:var(--line);box-shadow:var(--shadow-sm);color:var(--plum-900)}
.section-ranking-character-info{margin-top:70px}
.section-ranking-character-info h4{font-family:"Philosopher",serif;color:var(--ink);font-size:28px}
.section-ranking-character-info h5{color:var(--rose-500);font-size:15px}
.section-ranking-character{filter:drop-shadow(0 24px 28px rgba(39,39,39,.16))}
.section-ranking-panel{padding:18px;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-sm)}
.section-ranking-panel-title{font-family:"Philosopher",serif;color:var(--ink)}
.section-ranking-panel-table th{color:var(--plum-900)}
.section-ranking-button,.section-ranking-character-button{
  border-radius:999px;border:1px solid var(--line);background:var(--ink);box-shadow:none
}
.section-ranking-character-button{background:#fff;color:var(--plum-900)!important}
.section-ranking-character-button:hover{background:var(--plum-900);color:#fff!important}

/* Generic inner pages */
.page{
  min-height:650px;padding:80px 0 110px;
  background-image:linear-gradient(180deg,#fbf9fb 0%,rgba(250,250,250,.94) 35%,rgba(250,250,250,.82) 100%),url(../images/background_page.png);
  background-repeat:no-repeat;background-position:center,bottom center;background-size:auto,cover;
}
.page-title{
  margin:0;color:var(--ink);font-family:"Philosopher",serif;font-size:clamp(38px,5vw,58px);line-height:1.05;
  font-weight:700;text-transform:none;letter-spacing:-.025em;
}
.page-title::after{content:"";display:block;width:54px;height:3px;margin:18px auto 0;border-radius:2px;background:linear-gradient(90deg,var(--rose-300),var(--rose-500))}
.page-subtitle{margin:10px 0 48px;color:#8a8289;font-size:13px}

/* forms + login/register */
.panel-login{
  position:relative;height:auto;min-height:545px;padding:34px;
  background-color:#fff;background-image:linear-gradient(90deg,rgba(255,255,255,.02),rgba(255,255,255,.9) 62%),url(../images/panel_login.png);
  background-repeat:no-repeat;background-position:left center;background-size:auto 100%;
  border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);color:#6c646b;
}
.panel-login .row{min-height:475px;align-items:center}
.panel-login-title{color:var(--plum-900);font-family:"Philosopher",serif;font-size:27px}
.panel-login-form{height:auto;min-height:420px}
.form-control,
.form-select{
  min-height:46px;margin-bottom:12px;padding:10px 14px;
  border:1px solid #e5dfe4;border-radius:12px;background:#fcfbfc;color:var(--ink);
  box-shadow:none;font-size:14px;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;
}
.form-control:focus,.form-select:focus{border-color:var(--rose-300);background:#fff;box-shadow:0 0 0 4px rgba(215,140,205,.16)}
.panel-login-submit,
.btn-primary,.btn-info,.btn-success{
  min-height:44px;padding:10px 20px;border:0!important;border-radius:999px!important;
  background:linear-gradient(135deg,var(--rose-500),var(--plum-900))!important;color:#fff!important;
  box-shadow:0 10px 20px rgba(74,31,70,.18);font-size:13px;font-weight:800;letter-spacing:.035em;
}
.panel-login-submit:hover,.btn-primary:hover,.btn-info:hover,.btn-success:hover{transform:translateY(-1px);filter:brightness(1.06);box-shadow:0 13px 25px rgba(74,31,70,.25)}
.alert{border:0;border-radius:14px;padding:13px 16px;font-size:13px}
.alert-danger{background:#fff0f3;color:#8f2847}.alert-info{background:#f6eef8;color:var(--plum-900)}.alert-success{background:#edf9f1;color:#2f6b44}.alert-warning{background:#fff8e7;color:#74591c}

/* download */
.download-title{font-family:"Philosopher",serif;color:var(--ink);text-transform:none}
.download-button{
  margin:18px auto;padding:16px 22px;border:1px solid rgba(255,255,255,.2);border-radius:18px;
  background:linear-gradient(135deg,var(--rose-500),var(--plum-900));box-shadow:0 15px 30px rgba(74,31,70,.18);
  font-size:18px;letter-spacing:.02em;
}
.download-button:hover{background:linear-gradient(135deg,var(--rose-300),var(--rose-500));transform:translateY(-2px)}
.download-button small{margin-top:3px;color:rgba(255,255,255,.68);font-size:12px}
.download-requirements{padding:28px;background:#faf7fa;border:1px solid var(--line);border-radius:18px;color:#544d53}
.download-requirements td{padding:8px 10px;border-bottom:1px solid rgba(74,31,70,.07)}
.download-requirements td:first-child{width:34%;color:var(--plum-900);font-weight:700}

/* account/admin/rank panels */
.panel-button{
  width:auto;min-width:150px;margin:4px;padding:10px 17px;border:1px solid var(--line);border-radius:999px;
  background:#f6f2f5;color:#6a6268!important;font-size:12px;letter-spacing:.03em;
}
.panel-button:hover{background:#eee5ec;color:var(--plum-900)!important}
.panel-button-active{background:var(--plum-900);color:#fff!important;border-color:var(--plum-900)}
.panel-button-green{background:#4d7f66;color:#fff!important}
.panel-bar{margin:24px -34px;padding:17px 34px;background:#faf8fa;border-color:var(--line);color:#706970}
.panel-box{background:#faf8fa;border:1px solid var(--line);border-radius:14px;color:#6f676e}
.panel-settings-table td{color:var(--plum-900)}
.table{--bs-table-bg:transparent;--bs-table-striped-bg:rgba(74,31,70,.035);--bs-table-hover-bg:rgba(215,140,205,.09);color:#5c555b}
.table>:not(caption)>*>*{padding:.9rem .75rem;border-bottom-color:rgba(74,31,70,.08)}
.table thead th{color:var(--plum-900);font-size:12px;text-transform:uppercase;letter-spacing:.06em;border-bottom-width:1px}
.panel-ranking{overflow:hidden}
.panel-ranking .input-group{max-width:100%}
.panel-ranking-pagination .page-link{border-color:var(--line)!important;color:var(--plum-900)!important;background:#fff!important}
.panel-ranking-pagination .page-item.active .page-link{background:var(--plum-900)!important;color:#fff!important}

/* article */
.news-article-content{font-size:16px;line-height:1.8;color:#4e484d}
.news-article-content h1,.news-article-content h2,.news-article-content h3{font-family:"Philosopher",serif;color:var(--ink)}
.news-article-content img{border-radius:14px}

/* wiki / misc cards */
.wiki-panel{border:1px solid var(--line)!important;border-radius:20px!important;box-shadow:var(--shadow-sm)!important}
.wiki-panel table,.wiki-panel th,.wiki-panel td{border-color:var(--line)}
.wiki-panel th{background:#f6f1f5}

/* footer */
.footer{
  position:relative;padding-top:16px;
  background-color:#211e20;
  background-image:linear-gradient(rgba(33,30,32,.94),rgba(33,30,32,.98)),url(../images/background_footer.png);
  background-position:center bottom;background-size:cover;color:rgba(255,255,255,.58);font-size:12px;
}
.footer-nav{border-bottom:1px solid rgba(255,255,255,.07)}
.footer-nav a{padding:17px 18px;color:rgba(255,255,255,.7);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.footer-nav a.active,.footer-nav a:hover{color:var(--rose-300)}
.footer-logo{height:auto;padding:28px 0 18px}
.footer-logo img{max-width:170px;max-height:70px;filter:grayscale(.15)}
.footer-links{height:auto;min-height:92px;padding:22px 0;border-top:1px solid rgba(255,255,255,.06)}
.footer-copyright{margin:10px 0}
.footer-social{padding:5px 0}
.footer-social a{
  width:34px;height:34px;margin-left:6px;border:1px solid rgba(255,255,255,.1);border-radius:50%;
  background:rgba(255,255,255,.07);color:#fff!important;line-height:32px;
}
.footer-social a:hover{background:var(--rose-500);border-color:var(--rose-500);transform:translateY(-2px)}

/* invite popup */
#invite-panel{border:1px solid rgba(255,255,255,.13);border-radius:22px;box-shadow:0 22px 70px rgba(0,0,0,.32)}

/* responsive */
@media (max-width:1199.98px){
  #navbar .navbar-nav .nav-link{padding-left:9px;padding-right:9px;font-size:12px}
  .nav-link-button{padding:10px 15px!important;margin-left:6px!important}
  .header{min-height:620px;padding-top:150px}
}
@media (max-width:991.98px){
  .topbar{display:none}
  #navbar .container{min-height:68px}
  #navbar .navbar-brand img{max-width:150px;max-height:50px}
  #navbar .navbar-collapse{padding:8px 0 18px}
  #navbar .navbar-nav{align-items:stretch;gap:2px}
  #navbar .navbar-nav .nav-link{padding:11px 14px!important;text-align:left;border-radius:10px}
  #navbar .navbar-nav .nav-link:not(.nav-link-button)::after{display:none}
  #navbar .navbar-nav .nav-link.active:not(.nav-link-button),#navbar .navbar-nav .nav-link:hover:not(.nav-link-button){background:#f3ebf2}
  .nav-link-button{margin:7px 0 0!important;text-align:center!important}
  .header{min-height:600px;padding:130px 0 135px;background-position:center top;text-align:left}
  .header::before{background:linear-gradient(90deg,rgba(28,18,27,.86),rgba(48,25,45,.65) 62%,rgba(39,39,39,.18))}
  .header .col-md-6{width:min(640px,100%)}
  .section-stats{margin-top:-58px}
  .section-stats [class*="col-"]::after{display:none!important}
  .section-stats [class*="col-"]{border-bottom:1px solid var(--line)}
  .section-stats [class*="col-"]:last-child{border-bottom:0}
  .section-register{text-align:center}
  .section-register p{margin-top:22px}
  .panel-login{background-image:none;min-height:0}
  .panel-login .row{min-height:0}
  .panel-login [class*="offset-"]{margin-left:auto;margin-right:auto}
  .panel-login-form{min-height:0;padding:20px 0}
}
@media (max-width:767.98px){
  .section{padding:60px 0}
  .header{min-height:570px;padding:115px 0 125px;background-position:center top}
  .header h2{font-size:44px}
  .header p{font-size:15px}
  .section-stats{padding:0 14px}
  .news-slider-container{margin-left:-12px;margin-right:-12px}
  .news-slider-panel{min-width:82vw;width:82vw}
  .page{padding:62px 0 85px}
  .page-subtitle{margin-bottom:36px}
  .panel,.panel-login{padding:22px;border-radius:20px}
  .panel-bar{margin:20px -22px;padding:15px 22px}
  .table-responsive,.panel-ranking{overflow-x:auto}
  .section-ranking{padding:72px 0}
  .section-ranking-nav .nav-link{width:100px}
  .footer-links{text-align:center}
  .footer-links .text-end{text-align:center!important}
}
@media (max-width:575.98px){
  .container{padding-left:18px;padding-right:18px}
  .header{min-height:530px;padding:95px 0 112px;background-position:58% top}
  .header::before{background:linear-gradient(90deg,rgba(28,18,27,.92),rgba(48,25,45,.73) 72%,rgba(39,39,39,.27))}
  .header h2{font-size:38px}
  .header-button-download{width:100%;max-width:300px}
  .section-stats{margin-top:-42px}
  .section-stats .row{border-radius:18px}
  .section-stats [class*="col-"]{padding:18px}
  .news-slider-panel{min-width:88vw;width:88vw;padding-left:20px;padding-right:20px}
  .section-register{padding:55px 0}
  .section-ranking-title{font-size:34px}
  .section-ranking-nav{gap:4px}
  .section-ranking-nav .nav-link{width:88px;padding:9px 5px;font-size:10px}
  .page-title{font-size:38px}
  .panel,.panel-login{padding:18px}
  .panel-bar{margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px}
  .download-requirements{padding:18px;overflow-x:auto}
  .download-requirements table{min-width:480px}
  .footer-nav{display:flex;overflow-x:auto;justify-content:flex-start;white-space:nowrap}
  .footer-nav a{flex:0 0 auto}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}


/* Donate page */
.donate-page .page-title{margin-bottom:12px}
.donate-hero{position:relative;overflow:hidden;padding:38px!important;background:
  radial-gradient(circle at top right, rgba(163,75,156,.12), transparent 32%),
  linear-gradient(180deg, rgba(250,250,250,.96), rgba(250,250,250,.92));
}
.donate-hero::before{
  content:"";position:absolute;inset:auto -50px -80px auto;width:260px;height:260px;border-radius:50%;
  background:radial-gradient(circle, rgba(215,140,205,.26), rgba(215,140,205,0));pointer-events:none;
}
.donate-kicker{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border-radius:999px;background:rgba(163,75,156,.1);color:var(--plum-900);font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:16px}
.donate-hero h2{font-family:"Philosopher",serif;color:var(--plum-900);font-size:40px;line-height:1.12;margin-bottom:14px}
.donate-hero p{max-width:720px;font-size:16px;line-height:1.75;color:#665f66;margin-bottom:0}
.donate-highlights{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.donate-highlight{display:inline-flex;align-items:center;gap:10px;padding:12px 16px;border-radius:14px;background:#fff;border:1px solid rgba(74,31,70,.08);box-shadow:0 10px 25px rgba(74,31,70,.06);font-weight:700;color:#5c515a}
.donate-highlight i{color:var(--rose-500)}
.donate-summary-card{display:flex;gap:18px;align-items:flex-start;padding:22px;border-radius:22px;background:linear-gradient(135deg, rgba(74,31,70,.98), rgba(163,75,156,.93));box-shadow:0 20px 55px rgba(74,31,70,.28);color:#fff}
.donate-summary-icon{width:58px;height:58px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.12);font-size:26px;flex-shrink:0}
.donate-summary-content strong{display:block;font-size:22px;line-height:1.2;margin-top:4px;margin-bottom:8px}
.donate-summary-label{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.72)}
.donate-summary-content p{color:rgba(255,255,255,.84);margin:0;line-height:1.6;font-size:14px}
.donate-steps{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:12px}
.donate-steps li{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:16px;background:#fff;border:1px solid rgba(74,31,70,.08);box-shadow:0 10px 24px rgba(74,31,70,.05);color:#5d545c}
.donate-steps li span{width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--rose-500),var(--plum-900));color:#fff;font-weight:700;flex-shrink:0}
.donate-alert{display:flex;align-items:flex-start;gap:14px;border:0;border-radius:18px;padding:18px 20px;box-shadow:0 15px 35px rgba(74,31,70,.06);margin-bottom:22px}
.donate-alert i{font-size:18px;margin-top:2px}
.donate-method-section{padding:32px!important;margin-top:24px}
.donate-method-header{display:flex;align-items:center;gap:18px;margin-bottom:24px}
.donate-method-icon{width:60px;height:60px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg, rgba(215,140,205,.22), rgba(163,75,156,.18));color:var(--plum-900);font-size:28px;flex-shrink:0}
.donate-method-icon.is-paypal{background:linear-gradient(135deg, rgba(0,48,135,.09), rgba(0,156,222,.14));color:#003087}
.donate-method-copy h3{font-family:"Philosopher",serif;font-size:28px;color:var(--plum-900);margin:0 0 6px}
.donate-method-copy p{margin:0;color:#6b636a;line-height:1.7}
.donate-offer-card,.donate-manual-card{position:relative;height:100%;display:flex;flex-direction:column;padding:24px;border-radius:24px;background:linear-gradient(180deg,#ffffff,#fcf9fc);border:1px solid rgba(74,31,70,.08);box-shadow:0 20px 40px rgba(74,31,70,.07);transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease}
.donate-offer-card:hover,.donate-manual-card:hover{transform:translateY(-4px);box-shadow:0 24px 48px rgba(74,31,70,.12);border-color:rgba(163,75,156,.24)}
.donate-offer-card.is-featured{border-color:rgba(163,75,156,.42);box-shadow:0 24px 55px rgba(163,75,156,.16)}
.donate-offer-badge{position:absolute;top:18px;right:18px;padding:6px 11px;border-radius:999px;background:linear-gradient(135deg,var(--rose-500),var(--plum-900));color:#fff;font-size:11px;letter-spacing:.06em;font-weight:700;text-transform:uppercase}
.donate-offer-top{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-top:8px}
.donate-offer-currency{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#8b7b8a}
.donate-offer-price{font-family:"Philosopher",serif;color:var(--plum-900);font-size:44px;line-height:1}
.donate-offer-md{margin-top:10px;font-size:26px;font-weight:800;color:#3d2a3a}
.donate-offer-note{margin:10px 0 0;color:#706870;line-height:1.7;min-height:78px}
.donate-offer-features{list-style:none;padding:0;margin:18px 0 22px;display:grid;gap:10px;color:#5f5660}
.donate-offer-features li{display:flex;align-items:flex-start;gap:10px}
.donate-offer-features i{color:var(--rose-500);margin-top:4px}
.donate-cta-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;margin-top:auto;padding:14px 18px;border:0;border-radius:16px;background:linear-gradient(135deg,var(--rose-500),var(--plum-900));color:#fff;font-weight:800;letter-spacing:.02em;box-shadow:0 14px 30px rgba(163,75,156,.28);transition:transform .18s ease, box-shadow .18s ease}
.donate-cta-button:hover{color:#fff;transform:translateY(-1px);box-shadow:0 18px 35px rgba(163,75,156,.32)}
.donate-cta-button.alt-button{background:linear-gradient(135deg,#5f6f91,#3f4d69)}
.donate-bottom-note{display:flex;align-items:center;gap:12px;margin-top:18px;padding:16px 18px;border-radius:16px;background:#faf7fb;border:1px solid rgba(74,31,70,.08);color:#665d65}
.donate-bottom-note i{color:var(--rose-500)}
.donate-manual-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.donate-manual-head{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-bottom:18px}
.donate-manual-head strong{font-size:26px;font-family:"Philosopher",serif;color:var(--plum-900)}
.donate-manual-head span{font-size:13px;color:#7d747d;text-align:right}
.donate-code-input{margin-bottom:16px;border-radius:14px!important;min-height:48px;border:1px solid rgba(74,31,70,.12)!important;background:#fff!important;box-shadow:none!important}
.donate-code-input:focus{border-color:rgba(163,75,156,.38)!important;box-shadow:0 0 0 .2rem rgba(163,75,156,.12)!important}
@media (max-width: 991.98px){
  .donate-hero h2{font-size:33px}
  .donate-summary-card{margin-top:4px}
}
@media (max-width: 767.98px){
  .donate-hero{padding:24px!important}
  .donate-hero h2{font-size:28px}
  .donate-highlight{width:100%;justify-content:flex-start}
  .donate-method-section{padding:22px!important}
  .donate-method-header{align-items:flex-start}
  .donate-method-copy h3{font-size:24px}
  .donate-offer-price{font-size:38px}
  .donate-offer-note{min-height:0}
}


/* Recharge CTA in navbar */
#navbar .navbar-nav .nav-recharge-link{
  display:inline-flex;align-items:center;gap:8px;margin-left:7px!important;padding:11px 15px!important;
  border-radius:999px!important;color:var(--plum-900)!important;background:rgba(215,140,205,.13)!important;
  border:1px solid rgba(163,75,156,.18);font-size:12px!important;box-shadow:none;transition:.2s ease;
}
#navbar .navbar-nav .nav-recharge-link::after{display:none!important}
#navbar .navbar-nav .nav-recharge-link:hover{background:rgba(215,140,205,.24)!important;transform:translateY(-1px);color:var(--plum-900)!important}
.panel-button-admin{background:linear-gradient(135deg,var(--rose-500),var(--plum-900))!important;color:#fff!important;border-color:transparent!important}

/* Admin recharge package editor */
.donate-admin-method{padding:22px;border:1px solid rgba(74,31,70,.09);border-radius:18px;background:#fff;box-shadow:0 12px 30px rgba(74,31,70,.05)}
.donate-admin-method h5{color:var(--plum-900);font-weight:700}
.donate-admin-intro h5{color:var(--plum-900);margin-bottom:6px}
.donate-admin-intro p{color:#6b636a;margin:0}
.donate-package-table .form-control{min-width:105px}
.donate-add-package{padding-top:16px;border-top:1px solid rgba(74,31,70,.08)}
@media (max-width: 1199.98px){
  #navbar .navbar-nav .nav-recharge-link{margin-left:3px!important;padding:10px 12px!important;font-size:11px!important}
}
@media (max-width: 991.98px){
  #navbar .navbar-nav .nav-recharge-link{margin:7px 0 0!important;justify-content:center;width:100%}
}


/* Compact authenticated navbar actions */
#navbar .navbar-nav .nav-link.nav-link-button{
  margin-left:6px!important;
  padding:9px 14px!important;
  min-height:38px;
  white-space:nowrap;
  font-size:10.5px!important;
  line-height:1.15;
  letter-spacing:.045em;
  box-shadow:0 7px 16px rgba(163,75,156,.22);
}
#navbar .navbar-nav .nav-recharge-link{
  margin-left:5px!important;
  padding:9px 13px!important;
  min-height:38px;
  white-space:nowrap;
  gap:7px;
  font-size:10.5px!important;
  line-height:1.15;
  letter-spacing:.04em;
}
@media (max-width: 1199.98px) and (min-width: 992px){
  #navbar .navbar-nav .nav-link.nav-link-button{padding:8px 11px!important;font-size:10px!important;margin-left:4px!important}
  #navbar .navbar-nav .nav-recharge-link{padding:8px 10px!important;font-size:10px!important;margin-left:3px!important}
}
@media (max-width: 991.98px){
  #navbar .navbar-nav .nav-link.nav-link-button,
  #navbar .navbar-nav .nav-recharge-link{font-size:11px!important;min-height:40px;white-space:normal}
}


/* Account dashboard improvements */
.account-dashboard-panel{padding:34px 34px 30px}
.account-dashboard-header{display:flex;align-items:stretch;justify-content:space-between;gap:22px;margin-bottom:22px}
.account-dashboard-copy{flex:1;min-width:0}
.account-dashboard-kicker{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border-radius:999px;background:rgba(163,75,156,.10);color:var(--plum-900);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:14px}
.account-dashboard-copy h2{font-family:"Philosopher",serif;color:var(--plum-900);font-size:36px;line-height:1.1;margin:0 0 10px}
.account-dashboard-copy p{max-width:700px;margin:0;color:#6a6268;line-height:1.75}
.account-dashboard-balance{width:330px;max-width:100%;padding:24px 24px 20px;border-radius:22px;background:linear-gradient(135deg,var(--plum-900),var(--rose-500));box-shadow:0 22px 55px rgba(74,31,70,.22);color:#fff}
.account-dashboard-balance-label{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.76)}
.account-dashboard-balance-value{font-family:"Philosopher",serif;font-size:38px;line-height:1;margin:10px 0 12px}
.account-dashboard-balance-sub{color:rgba(255,255,255,.84);margin-bottom:16px}
.account-dashboard-balance-link{display:inline-flex;align-items:center;justify-content:center;padding:11px 16px;border-radius:999px;background:#fff;color:var(--plum-900)!important;font-weight:700;box-shadow:0 12px 30px rgba(0,0,0,.14)}
.account-toolbar{display:flex;flex-wrap:wrap;gap:10px;padding:0 0 22px;border-bottom:1px solid rgba(74,31,70,.08);margin-bottom:22px}
.account-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}
.account-stat-card{display:flex;align-items:center;gap:16px;padding:18px;border-radius:18px;border:1px solid rgba(74,31,70,.08);background:linear-gradient(180deg,#fff,#fcf9fc);box-shadow:0 12px 30px rgba(74,31,70,.05)}
.account-stat-icon{width:52px;height:52px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:rgba(163,75,156,.10);color:var(--plum-900);font-size:22px;flex-shrink:0}
.account-stat-content{min-width:0}
.account-stat-label{color:#7f757f;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px}
.account-stat-value{color:var(--plum-900);font-family:"Philosopher",serif;font-size:28px;line-height:1.1}
.account-stat-note{margin-top:6px;color:#6e656e;font-size:13px;line-height:1.45}
.account-box{padding:24px!important;height:100%;box-shadow:0 14px 35px rgba(74,31,70,.05)}
.account-box-head{margin-bottom:18px}
.account-box-head h3{font-family:"Philosopher",serif;color:var(--plum-900);font-size:26px;margin:0 0 8px}
.account-box-head p{margin:0;color:#726873;line-height:1.65}
.account-info-list{display:grid;gap:10px}
.account-info-item{display:grid;grid-template-columns:minmax(150px,1.1fr) minmax(0,1.5fr) auto;gap:16px;align-items:center;padding:16px 18px;border-radius:16px;background:rgba(255,255,255,.74);border:1px solid rgba(74,31,70,.07)}
.account-info-label{font-weight:700;color:#5d505d}
.account-info-value{color:var(--plum-900);word-break:break-word}
.account-info-action{text-align:right}
.account-inline-action{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:rgba(163,75,156,.10);color:var(--plum-900)!important;font-weight:700;font-size:13px;line-height:1;text-decoration:none;border:none}
.account-inline-action-button{cursor:pointer}
.account-inline-action:hover{background:rgba(163,75,156,.16)}
.account-actions-box{display:flex;flex-direction:column}
.account-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.account-action-button{display:flex;flex-direction:column;gap:8px;min-height:112px;padding:18px 18px;border-radius:18px;background:#fff;border:1px solid rgba(74,31,70,.08);color:var(--plum-900)!important;box-shadow:0 12px 28px rgba(74,31,70,.05)}
.account-action-button i{font-size:20px;color:var(--rose-500)}
.account-action-button span{font-weight:700;font-size:15px;color:var(--plum-900)}
.account-action-button small{font-size:12px;color:#706770;line-height:1.5}
.account-action-button.primary{background:linear-gradient(135deg,var(--plum-900),var(--rose-500));color:#fff!important;box-shadow:0 18px 35px rgba(74,31,70,.18)}
.account-action-button.primary i,.account-action-button.primary span,.account-action-button.primary small{color:#fff!important}
.account-recharge-summary{margin-top:16px;padding:18px;border-radius:18px;background:#fbf8fb;border:1px solid rgba(74,31,70,.08)}
.account-recharge-summary-label{font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:#877d86;margin-bottom:8px}
.account-recharge-summary-value{font-family:"Philosopher",serif;font-size:28px;color:var(--plum-900)}
.account-recharge-summary-note{margin-top:6px;color:#6f6670}
.account-box-head-inline{display:flex;align-items:center;justify-content:space-between;gap:15px}
.account-box-badge{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:999px;background:rgba(163,75,156,.1);color:var(--plum-900);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.account-character-table-wrap{background:#fff;border:1px solid rgba(74,31,70,.06);border-radius:18px;padding:10px 12px 4px}
.account-character-table{margin-bottom:0}
.account-character-table thead th{white-space:nowrap}
.account-character-table tbody td,.account-character-table tbody th{vertical-align:middle}
.account-character-name{font-weight:700;color:var(--plum-900)}
.account-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:34px 18px;color:#736976}
.account-empty-state i{font-size:34px;color:var(--rose-500)}
.panel-button-sm{min-width:88px!important;padding:8px 12px!important;font-size:11px!important}
@media (max-width: 1199.98px){
  .account-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 991.98px){
  .account-dashboard-panel{padding:24px}
  .account-dashboard-header{flex-direction:column}
  .account-dashboard-copy h2{font-size:31px}
  .account-info-item{grid-template-columns:1fr;gap:10px}
  .account-info-action{text-align:left}
}
@media (max-width: 767.98px){
  .account-dashboard-panel{padding:18px}
  .account-stat-grid,.account-action-grid{grid-template-columns:1fr}
  .account-box{padding:18px!important}
  .account-box-head-inline{flex-direction:column;align-items:flex-start}
  .account-dashboard-copy h2{font-size:27px}
}


/* Brand text and navigation cleanup */
.navbar-brand.brand-text,.footer-brand-text{font-family:"Philosopher",serif;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--rose-500)!important;font-size:34px;line-height:1;text-decoration:none}
.footer-brand-text{display:inline-block;font-size:42px;padding:8px 0}
.navbar-brand.brand-text:hover,.footer-brand-text:hover{color:var(--plum-900)!important}
@media (max-width: 767.98px){.navbar-brand.brand-text{font-size:28px}.footer-brand-text{font-size:34px}}

/* Ranking redesign */
.ranking-page .page-title{margin-bottom:0}
.ranking-hero{display:flex;align-items:stretch;justify-content:space-between;gap:22px;padding:30px 32px!important;margin-bottom:22px;background:radial-gradient(circle at top right, rgba(163,75,156,.12), transparent 30%),linear-gradient(180deg, rgba(250,250,250,.98), rgba(250,250,250,.94))}
.ranking-kicker{display:inline-flex;align-items:center;gap:9px;padding:8px 13px;border-radius:999px;background:rgba(163,75,156,.10);color:var(--plum-900);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:14px}
.ranking-hero-copy{flex:1;min-width:0}
.ranking-hero-text{max-width:720px;margin:12px 0 0;color:#6d666d;line-height:1.8}
.ranking-hero-stats{display:flex;gap:14px;align-items:stretch}
.ranking-hero-stat{min-width:180px;padding:18px 20px;border-radius:18px;background:#fff;border:1px solid rgba(74,31,70,.08);box-shadow:0 12px 30px rgba(74,31,70,.05);display:flex;flex-direction:column;justify-content:center}
.ranking-hero-stat span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:#877e87;margin-bottom:6px}
.ranking-hero-stat strong{font-family:"Philosopher",serif;font-size:28px;color:var(--plum-900);line-height:1.15}
.ranking-hero-stat small{margin-top:6px;color:#6e6670}
.ranking-panel-modern{padding:28px 28px 24px!important}
.ranking-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:22px}
.ranking-tabs{display:flex;flex-wrap:wrap;gap:10px}
.ranking-search-form{margin:0;min-width:280px;flex:1;display:flex;justify-content:flex-end}
.ranking-search-group{width:min(100%,420px);display:flex;align-items:center;gap:10px}
.ranking-search-group .form-control{height:48px;border-radius:14px;border:1px solid rgba(74,31,70,.10);background:#fff;padding:0 16px;box-shadow:none}
.ranking-search-group .form-control:focus{border-color:rgba(163,75,156,.35);box-shadow:0 0 0 .18rem rgba(163,75,156,.12)}
.ranking-search-group .panel-login-submit{height:48px!important;margin-top:0!important;white-space:nowrap;padding:0 18px;border-radius:14px}
.ranking-table-wrap{border:1px solid rgba(74,31,70,.08);border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 14px 35px rgba(74,31,70,.04)}
.ranking-table-modern{margin-bottom:0}
.ranking-table-modern thead th{background:linear-gradient(180deg,#fbf8fb,#f5eff5);border-bottom:1px solid rgba(74,31,70,.10);color:var(--plum-900);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:16px 18px}
.ranking-table-modern tbody td,.ranking-table-modern tbody th{padding:16px 18px;vertical-align:middle;border-color:rgba(74,31,70,.06)}
.ranking-table-modern tbody tr:nth-child(1) th:first-child,.ranking-table-modern tbody tr:nth-child(2) th:first-child,.ranking-table-modern tbody tr:nth-child(3) th:first-child{color:var(--rose-500);font-weight:800}
.ranking-table-modern tbody tr:hover{background:#fcf8fc}
.ranking-table-modern img{width:40px;height:40px;object-fit:cover;border-radius:12px;border:1px solid rgba(74,31,70,.08);padding:2px;background:#fff}
.ranking-pagination-modern{gap:8px;flex-wrap:wrap;margin-top:18px}
.ranking-pagination-modern .page-link{border:none;border-radius:12px!important;min-width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;background:#fff;color:var(--plum-900);box-shadow:0 8px 22px rgba(74,31,70,.06);padding:0 14px}
.ranking-pagination-modern .panel-button-active{background:linear-gradient(135deg,var(--rose-500),var(--plum-900))!important;color:#fff!important}
@media (max-width: 991.98px){
  .ranking-hero{flex-direction:column;padding:24px!important}
  .ranking-hero-stats{width:100%;flex-wrap:wrap}
  .ranking-hero-stat{flex:1;min-width:220px}
}
@media (max-width: 767.98px){
  .ranking-panel-modern{padding:18px!important}
  .ranking-search-form{justify-content:stretch;width:100%;min-width:0}
  .ranking-search-group{width:100%;flex-direction:column;align-items:stretch}
  .ranking-search-group .panel-login-submit{width:100%}
  .ranking-hero-stat{min-width:100%}
}

/* =========================================================
   SAKURA DARK THEME
   Palette: #D78CCD · #A34B9C · #4A1F46 · #181318 · #272027
   ========================================================= */
:root{
  --paper:#171317;
  --ink:#F5EEF4;
  --muted:#B8ACB6;
  --line:rgba(215,140,205,.16);
  --surface:#211A21;
  --surface-soft:#2A2129;
  --shadow-sm:0 12px 34px rgba(0,0,0,.28);
  --shadow-md:0 22px 70px rgba(0,0,0,.38);
}
html,body{background:#171317;color:#F5EEF4;color-scheme:dark}
body{background:radial-gradient(circle at 50% -10%,rgba(163,75,156,.12),transparent 28%),#171317}
a:hover{color:var(--rose-300)}

.topbar{background:#0F0D0F;color:rgba(255,255,255,.68);border-bottom-color:rgba(255,255,255,.05)}
#navbar{background:rgba(24,19,24,.92);border-bottom-color:rgba(215,140,205,.10);box-shadow:0 10px 34px rgba(0,0,0,.32)!important}
#navbar .navbar-nav .nav-link{color:#D9CED7}
#navbar .nav-link:hover,#navbar .nav-link:focus,#navbar .nav-link.active{color:#fff}
#navbar .dropdown-menu{background:rgba(34,27,34,.98);border-color:rgba(215,140,205,.14)}
#navbar .dropdown-item{color:#DED3DC}
#navbar .dropdown-item:hover{background:#362A35;color:#fff}
.navbar-toggler{color:var(--rose-300);border-color:rgba(215,140,205,.18)}
.navbar-brand.brand-text,.footer-brand-text{color:var(--rose-300)!important}
.navbar-brand.brand-text:hover,.footer-brand-text:hover{color:#fff!important}

.header::after{background:linear-gradient(180deg,transparent,#171317)}
.section{background:#171317}
.panel{background:rgba(34,27,34,.94);color:#D6CAD4;border-color:rgba(215,140,205,.13);box-shadow:var(--shadow-sm)}

.section-stats{color:#F5EEF4}
.section-stats .row{background:rgba(34,27,34,.94);border-color:rgba(215,140,205,.12);box-shadow:var(--shadow-md)}
.section-stats h4{color:#F3DCEC}
.section-stats h5{color:var(--rose-300)}
.section-stats-bar{background:#3A3039}

.news-slider-container{scrollbar-color:var(--rose-500) #2D252C}
.news-slider-container::-webkit-scrollbar-track{background:#2D252C}
.news-slider-panel{background-color:#231C23;border-color:rgba(215,140,205,.12);color:#EEE4EC}
.news-button,.news-button-archive{background:#2D252C;border-color:rgba(215,140,205,.15);color:#F4DAEE!important}
.news-button:hover,.news-button-archive:hover{background:linear-gradient(135deg,var(--rose-500),var(--plum-900));border-color:transparent;color:#fff!important}
.news-slider-text{color:#9F929C}

.section-register{background-image:linear-gradient(90deg,rgba(18,13,18,.96),rgba(74,31,70,.84)),url(../images/background_section_register.png)}

/* Common cards / inputs */
.form-control,.form-select,select.form-control,textarea.form-control,input.form-control{
  background:#211A21!important;color:#F2E8F0!important;border-color:rgba(215,140,205,.14)!important;
}
.form-control::placeholder{color:#8F818C!important}
.form-control:focus{background:#261E26!important;color:#fff!important;border-color:rgba(215,140,205,.42)!important;box-shadow:0 0 0 .2rem rgba(163,75,156,.12)!important}
.input-group-text{background:#2B222A!important;color:#EADDE7!important;border-color:rgba(215,140,205,.14)!important}
.table{color:#DCCFDA;--bs-table-bg:transparent;--bs-table-striped-bg:rgba(255,255,255,.025);--bs-table-hover-bg:rgba(215,140,205,.07)}
.table>:not(caption)>*>*{border-bottom-color:rgba(215,140,205,.09);color:inherit}
.table thead th{color:#E8CFE2}
.alert-info{background:#27202B;border-color:#43364A;color:#DCCFE4}
.alert-success{background:#17271F;border-color:#28533B;color:#CFEBD9}
.alert-warning{background:#302718;border-color:#66532B;color:#F1E2B9}
.alert-danger{background:#301B20;border-color:#66323E;color:#F3C9D3}

/* Login/register */
.panel-login{background-color:#211A21;background-image:linear-gradient(90deg,rgba(33,26,33,.08),rgba(33,26,33,.94) 62%),url(../images/panel_login.png);border-color:rgba(215,140,205,.13)}
.panel-login-title{color:#F4E6F0}

/* User/admin-like frontend panels */
.panel-button{background:#2A222A;color:#CFC2CC!important;border-color:rgba(215,140,205,.14)}
.panel-button:hover{background:#362A35;color:#fff!important}
.panel-button-active{background:linear-gradient(135deg,var(--rose-500),var(--plum-900));color:#fff!important;border-color:transparent}
.panel-bar{background:#211A21;border-color:rgba(215,140,205,.10);color:#BDAFBA}
.panel-box{background:#211A21;border-color:rgba(215,140,205,.12);color:#CFC2CC}
.panel-settings-table td{color:#E3D7E0}
.panel-ranking-pagination .page-link{background:#241D24!important;color:#E7DCE5!important;border-color:rgba(215,140,205,.12)!important}
.panel-ranking-pagination .page-item.active .page-link{background:linear-gradient(135deg,var(--rose-500),var(--plum-900))!important;color:#fff!important}

/* Download */
.download-requirements{background:#211A21;border-color:rgba(215,140,205,.12);color:#CFC2CC}
.download-requirements td{border-bottom-color:rgba(215,140,205,.08)}
.download-requirements td:first-child{color:#E7D7E3}

/* Wiki */
.wiki-panel{background:#211A21!important;border-color:rgba(215,140,205,.12)!important}
.wiki-panel table,.wiki-panel th,.wiki-panel td{border-color:rgba(215,140,205,.10)}
.wiki-panel th{background:#2A222A;color:#ECDCE9}

/* Donate */
.donate-hero{background:radial-gradient(circle at top right,rgba(163,75,156,.17),transparent 32%),linear-gradient(180deg,#211A21,#1D171D)}
.donate-hero h2,.donate-method-copy h3,.donate-offer-price,.donate-offer-md,.donate-manual-head strong{color:#F4E5F0}
.donate-hero p,.donate-method-copy p,.donate-offer-note,.donate-bottom-note{color:#B9ACB7}
.donate-highlight,.donate-steps li{background:#282028;border-color:rgba(215,140,205,.11);color:#E2D5DF;box-shadow:0 10px 25px rgba(0,0,0,.16)}
.donate-offer-card,.donate-manual-card{background:linear-gradient(180deg,#261F26,#211A21);border-color:rgba(215,140,205,.12);box-shadow:0 20px 42px rgba(0,0,0,.2)}
.donate-offer-card.is-featured{border-color:rgba(215,140,205,.35);box-shadow:0 22px 52px rgba(163,75,156,.14)}
.donate-offer-currency,.donate-manual-head span{color:#A99BA6}
.donate-offer-features{color:#C5B8C2}
.donate-bottom-note,.donate-recharge-summary{background:#282028;border-color:rgba(215,140,205,.10)}
.donate-code-input{background:#1E181E!important}

/* Account dashboard */
.account-dashboard-balance{box-shadow:0 22px 55px rgba(0,0,0,.28)}
.account-stat-card,.account-info-item,.account-action-button{background:linear-gradient(180deg,#292129,#221B22);border-color:rgba(215,140,205,.11);box-shadow:0 12px 30px rgba(0,0,0,.16)}
.account-dashboard-copy h2,.account-stat-value,.account-box-head h3,.account-info-value,.account-action-button span,.account-recharge-summary-value{color:#F1E3ED}
.account-dashboard-copy p,.account-box-head p,.account-stat-note,.account-action-button small,.account-recharge-summary-note{color:#ADA0AA}
.account-stat-label,.account-recharge-summary-label{color:#9F929C}
.account-info-label{color:#CFC2CC}
.account-inline-action{background:rgba(215,140,205,.10);color:#EDCFE7!important}
.account-recharge-summary{background:#241D24;border-color:rgba(215,140,205,.10)}
.account-character-table-wrap{background:#211A21;border-color:rgba(215,140,205,.10)}
.account-character-name{color:#EBDCE7}

/* Ranking */
.ranking-hero{background:radial-gradient(circle at top right,rgba(163,75,156,.18),transparent 30%),linear-gradient(180deg,#251E25,#201920)}
.ranking-hero-text{color:#B8ABB5}
.ranking-hero-stat{background:#2A222A;border-color:rgba(215,140,205,.10);box-shadow:0 12px 30px rgba(0,0,0,.16)}
.ranking-hero-stat span{color:#A99BA6}
.ranking-hero-stat strong{color:#F2E3EE}
.ranking-hero-stat small{color:#B9ADB6}
.ranking-search-group .form-control{background:#211A21!important;border-color:rgba(215,140,205,.12)!important}
.ranking-table-wrap{background:#211A21;border-color:rgba(215,140,205,.10);box-shadow:0 14px 35px rgba(0,0,0,.18)}
.ranking-table-modern thead th{background:linear-gradient(180deg,#2D252D,#282028);border-bottom-color:rgba(215,140,205,.12);color:#EECDE7}
.ranking-table-modern tbody td,.ranking-table-modern tbody th{border-color:rgba(215,140,205,.07)}
.ranking-table-modern tbody tr:hover{background:#2A222A}
.ranking-table-modern img{background:#2A222A;border-color:rgba(215,140,205,.12)}
.ranking-pagination-modern .page-link{background:#282028;color:#E8DCE5;box-shadow:0 8px 22px rgba(0,0,0,.16)}

/* Footer */
.footer{background:#100D10!important;color:#AFA2AD}
.footer-nav,.footer-links{border-color:rgba(255,255,255,.06)!important}
.footer-nav a{color:#B9ADB6!important}
.footer-nav a:hover,.footer-nav a.active{color:var(--rose-300)!important}
.footer-copyright{color:#8F838D}

/* Generic Bootstrap white surfaces */
.card,.modal-content,.dropdown-menu{background:#211A21;color:#E4D8E1;border-color:rgba(215,140,205,.12)}
.card-header,.modal-header,.modal-footer{background:#281F27;border-color:rgba(215,140,205,.10)}
.bg-white{background:#211A21!important}
.text-dark,.text-gray-800,.text-gray-900{color:#EEE3EB!important}
.border{border-color:rgba(215,140,205,.12)!important}

@media (max-width:991.98px){
  #navbar .navbar-collapse{background:#1B161B}
  #navbar .navbar-nav .nav-link.active:not(.nav-link-button),#navbar .navbar-nav .nav-link:hover:not(.nav-link-button){background:#2A222A}
}


/* Dark theme refinements */
#navbar .nav-recharge-link{
  display:inline-flex!important;align-items:center;justify-content:center;gap:7px;
  margin-left:6px!important;padding:9px 14px!important;border-radius:999px!important;
  border:1px solid rgba(215,140,205,.34)!important;
  background:linear-gradient(135deg,rgba(163,75,156,.22),rgba(74,31,70,.48))!important;
  color:#F4D7ED!important;font-size:10px!important;font-weight:800!important;letter-spacing:.045em!important;
  box-shadow:0 8px 20px rgba(0,0,0,.18);white-space:nowrap;
}
#navbar .nav-recharge-link i{color:#D78CCD!important;font-size:11px}
#navbar .nav-recharge-link:hover{background:linear-gradient(135deg,#A34B9C,#4A1F46)!important;color:#fff!important;border-color:transparent!important;transform:translateY(-1px)}

body,.page{background-color:#171317!important}
.page{
  background-image:
    radial-gradient(circle at 18% 8%,rgba(163,75,156,.13),transparent 25%),
    radial-gradient(circle at 82% 28%,rgba(74,31,70,.20),transparent 30%),
    linear-gradient(180deg,#181318 0%,#120F12 100%)!important;
}
.page-title{color:#F1DDEC!important;text-shadow:0 5px 28px rgba(163,75,156,.20)}
.page-subtitle{border-color:#A34B9C!important}

/* Registration/login: remove the old pale page image and turn the card into a dark glass composition */
.page:has(.panel-login){background-image:radial-gradient(circle at 20% 20%,rgba(215,140,205,.12),transparent 26%),radial-gradient(circle at 82% 32%,rgba(74,31,70,.30),transparent 34%),linear-gradient(180deg,#181318,#100D10)!important}
.panel-login{
  position:relative;overflow:hidden;background-color:#211A21!important;
  background-image:linear-gradient(90deg,rgba(23,19,23,.02) 0%,rgba(23,19,23,.10) 45%,rgba(23,19,23,.86) 66%,rgba(23,19,23,.97) 100%),url(../images/panel_login.png)!important;
  background-size:cover!important;background-position:center!important;
  border:1px solid rgba(215,140,205,.18)!important;box-shadow:0 30px 80px rgba(0,0,0,.38)!important;
}
.panel-login::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.02),transparent 30%,rgba(0,0,0,.10))}
.panel-login .row{position:relative;z-index:1}
.panel-login .form-control{background:rgba(25,19,25,.90)!important;border-color:rgba(215,140,205,.17)!important;color:#F5EAF2!important}
.panel-login .form-control::placeholder{color:#9F919C!important}
.panel-login-submit{background:linear-gradient(135deg,#A34B9C,#4A1F46)!important;color:#fff!important;border:1px solid rgba(255,255,255,.05)!important;box-shadow:0 12px 28px rgba(74,31,70,.34)!important}

/* Home - best players */
.section-ranking{
  position:relative;overflow:hidden;padding:90px 0!important;
  background:radial-gradient(circle at 15% 10%,rgba(163,75,156,.14),transparent 25%),radial-gradient(circle at 85% 35%,rgba(74,31,70,.24),transparent 28%),linear-gradient(180deg,#171317,#120F12)!important;
}
.section-ranking::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(215,140,205,.025),transparent);pointer-events:none}
.section-ranking .container{position:relative;z-index:1}
.section-ranking-title{color:#F3E3EF!important;font-size:46px!important;text-shadow:0 12px 38px rgba(163,75,156,.18)}
.section-ranking-subtitle{color:#D78CCD!important;margin-top:8px}
.section-ranking-nav{justify-content:center;gap:12px!important;margin:34px 0 34px!important}
.section-ranking-nav .nav-link{
  width:118px!important;min-height:100px;padding:17px 10px 12px!important;border-radius:20px!important;
  background:#211A21!important;border:1px solid rgba(215,140,205,.10)!important;color:#AFA2AD!important;
  box-shadow:0 12px 28px rgba(0,0,0,.16)!important;transition:.2s ease!important;
}
.section-ranking-nav .nav-link::before{filter:grayscale(1) brightness(1.55);opacity:.65}
.section-ranking-nav .nav-link.active,.section-ranking-nav .nav-link:hover{
  transform:translateY(-4px);background:linear-gradient(180deg,#302430,#241C24)!important;
  color:#F4E3F0!important;border-color:rgba(215,140,205,.32)!important;box-shadow:0 18px 38px rgba(0,0,0,.28),0 0 0 1px rgba(163,75,156,.08)!important;
}
.section-ranking-nav .nav-link.active::before,.section-ranking-nav .nav-link:hover::before{filter:none;opacity:1}
.section-ranking .tab-content{min-height:390px;padding:28px;border-radius:24px;background:linear-gradient(145deg,rgba(39,31,39,.94),rgba(27,21,27,.95));border:1px solid rgba(215,140,205,.10);box-shadow:0 25px 65px rgba(0,0,0,.30)}
.section-ranking-character-info{margin-top:42px!important;padding:22px;border-radius:18px;background:rgba(20,16,20,.48);border:1px solid rgba(215,140,205,.08)}
.section-ranking-character-info h4{color:#F0DFEB!important;font-size:30px!important;margin-top:14px}
.section-ranking-character-info h5{color:#D78CCD!important}
.section-ranking-character-info h5 span{display:block;color:#AFA1AC!important;margin-top:7px}
.section-ranking-character{filter:drop-shadow(0 30px 38px rgba(0,0,0,.42))!important}
.section-ranking-panel{background:#211A21!important;border-color:rgba(215,140,205,.11)!important;box-shadow:0 18px 42px rgba(0,0,0,.25)!important}
.section-ranking-panel-title{color:#EBDCE7!important}
.section-ranking-character-button{background:#2B222B!important;color:#E8D6E4!important;border:1px solid rgba(215,140,205,.12)!important}
.section-ranking-character-button:hover,.section-ranking-button:hover{background:linear-gradient(135deg,#A34B9C,#4A1F46)!important;color:#fff!important}
.section-ranking-button{background:linear-gradient(135deg,#A34B9C,#4A1F46)!important;color:#fff!important;box-shadow:0 15px 35px rgba(74,31,70,.30)!important}
.section-ranking-panel-table{color:#D9CCD6!important}
.section-ranking-panel-table tr{border-color:rgba(215,140,205,.08)!important}
@media(max-width:991.98px){.section-ranking .tab-content{min-height:0;margin-bottom:20px}.section-ranking-character-info{margin-top:0!important}.section-ranking-nav .nav-link{width:105px!important}}
@media(max-width:575.98px){.section-ranking-title{font-size:35px!important}.section-ranking-nav{display:grid!important;grid-template-columns:repeat(2,1fr)}.section-ranking-nav .nav-item{width:100%!important}.section-ranking-nav .nav-link{width:100%!important}}

/* News editor dark */
.news-admin-card{background:#211A21!important;color:#E8DCE5!important;border:1px solid rgba(215,140,205,.12)!important;border-radius:20px!important;box-shadow:0 18px 50px rgba(0,0,0,.28)!important}
.news-admin-card h1,.news-admin-card h2,.news-admin-card label{color:#F1E2ED!important}
.news-table th,.news-table td{border-color:rgba(215,140,205,.10)!important;color:#D8CBD5!important}
.news-table th{color:#E9CFE3!important}
.status-pill{background:#302630!important;color:#E9DCE6!important}


/* Ranking visibility + lighter dark theme refinements */
.ranking-page{color:#f6edf4}
.ranking-hero{background:radial-gradient(circle at 85% 15%,rgba(215,140,205,.18),transparent 34%),linear-gradient(145deg,#30252f 0%,#291f29 52%,#332432 100%)!important;border-color:rgba(215,140,205,.18)!important;box-shadow:0 18px 46px rgba(0,0,0,.20)!important}
.ranking-kicker{background:rgba(215,140,205,.12)!important;color:#e7a7dc!important;border:1px solid rgba(215,140,205,.12)}
.ranking-hero .page-title{color:#fff0fb!important;text-shadow:0 2px 18px rgba(215,140,205,.08)}
.ranking-hero-text{color:#d0c1cc!important}
.ranking-hero-stats{gap:10px!important;align-items:center!important}
.ranking-hero-stat{min-width:132px!important;max-width:160px;padding:13px 15px!important;border-radius:15px!important;background:#382c37!important;border-color:rgba(215,140,205,.14)!important;box-shadow:0 9px 22px rgba(0,0,0,.14)!important}
.ranking-hero-stat span{font-size:10px!important;margin-bottom:4px!important;color:#c7b4c2!important}
.ranking-hero-stat strong{font-size:22px!important;color:#fff0fb!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ranking-hero-stat small{font-size:11px!important;margin-top:4px!important;color:#cdbdca!important}
.ranking-panel-modern{background:linear-gradient(180deg,#2b222b,#261e26)!important;border-color:rgba(215,140,205,.14)!important;box-shadow:0 18px 44px rgba(0,0,0,.18)!important}
.ranking-table-wrap{background:#302630!important;border-color:rgba(215,140,205,.13)!important}
.ranking-table-modern thead th{background:linear-gradient(180deg,#3a2e39,#332832)!important;color:#f0dce9!important}
.ranking-table-modern tbody td,.ranking-table-modern tbody th{color:#e4d7e1!important;border-color:rgba(215,140,205,.08)!important}
.ranking-table-modern tbody tr:hover{background:#382c37!important}
.ranking-search-group .form-control{background:#342a33!important;border-color:rgba(215,140,205,.15)!important;color:#f4eaf1!important}
.ranking-hidden-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:280px;padding:38px 24px;border:1px dashed rgba(215,140,205,.22);border-radius:20px;background:linear-gradient(180deg,rgba(215,140,205,.055),rgba(215,140,205,.02));margin-top:8px}
.ranking-hidden-icon{width:62px;height:62px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:rgba(215,140,205,.11);color:#d78ccd;font-size:24px;margin-bottom:16px}
.ranking-hidden-state h3{font-family:"Philosopher",serif;color:#fff0fb;font-size:28px;margin:0 0 9px}
.ranking-hidden-state p{max-width:560px;margin:0;color:#bfaebb;line-height:1.7}
@media (max-width:991.98px){.ranking-hero-stat{max-width:none!important;min-width:150px!important}}
@media (max-width:767.98px){.ranking-hero-stat{min-width:calc(50% - 6px)!important;flex:1}.ranking-hero-stats{flex-wrap:wrap!important}}


/* Final home-ranking visibility + brighter recharge CTA */
#navbar .navbar-nav .nav-recharge-link,
#navbar .nav-recharge-link{
  background:linear-gradient(135deg,#B85CAE,#7A2F73)!important;
  color:#FFF7FD!important;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:0 8px 22px rgba(163,75,156,.30), inset 0 1px 0 rgba(255,255,255,.12)!important;
}
#navbar .nav-recharge-link i{color:#FFF0FB!important}
#navbar .nav-recharge-link:hover{
  background:linear-gradient(135deg,#D78CCD,#A34B9C)!important;
  color:#211A21!important;
  box-shadow:0 12px 28px rgba(215,140,205,.32)!important;
}

.section-ranking .is-hidden-ranking-character{
  filter:brightness(.14) saturate(.15) contrast(1.12) drop-shadow(0 30px 38px rgba(0,0,0,.52))!important;
  opacity:.72;
  position:relative;
}
.section-ranking .is-hidden-ranking-info{
  background:linear-gradient(145deg,rgba(25,20,25,.82),rgba(36,27,35,.84))!important;
  border-color:rgba(215,140,205,.12)!important;
}
.section-ranking .is-hidden-ranking-info .section-ranking-flag{
  filter:grayscale(1) brightness(.35)!important;
  opacity:.35!important;
}
.section-ranking .is-hidden-ranking-info h4{
  display:flex;align-items:center;gap:9px;color:#E7D3E2!important;font-size:22px!important;
}
.section-ranking .is-hidden-ranking-info h4 i{color:#B866AE;font-size:16px}
.section-ranking .ranking-hidden-identity{
  display:inline-flex!important;align-items:center;padding:7px 10px;border-radius:999px;
  background:rgba(215,140,205,.08);border:1px solid rgba(215,140,205,.12);
  color:#9F929D!important;font-size:11px!important;line-height:1.35;
}
.section-ranking-panel.is-ranking-hidden-panel{
  min-height:318px;display:flex;flex-direction:column;justify-content:space-between;
  background:linear-gradient(145deg,#2B222B,#241C24)!important;
  border-color:rgba(215,140,205,.16)!important;
}
.ranking-hidden-message{
  flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
  padding:30px 18px;color:#B9ABB6;
}
.ranking-hidden-icon{
  width:54px;height:54px;border-radius:18px;display:flex;align-items:center;justify-content:center;
  margin-bottom:15px;background:rgba(215,140,205,.10);border:1px solid rgba(215,140,205,.14);
  color:#D78CCD;font-size:20px;
}
.ranking-hidden-message strong{display:block;color:#F0DDEB;font-family:"Philosopher",serif;font-size:20px;margin-bottom:8px}
.ranking-hidden-message span{display:block;max-width:220px;font-size:12px;line-height:1.65;color:#998C97}
.section-ranking-panel.is-ranking-hidden-panel .section-ranking-character-button{
  background:linear-gradient(135deg,rgba(163,75,156,.24),rgba(74,31,70,.46))!important;
  border-color:rgba(215,140,205,.18)!important;color:#F0DEEB!important;
}
@media(max-width:991.98px){
  .section-ranking-panel.is-ranking-hidden-panel{min-height:240px}
}


/* Persistent settings migration + precise hidden-player card */
.section-ranking .is-hidden-ranking-info{
  min-height:130px!important;
  padding:20px!important;
}
.section-ranking .is-hidden-ranking-info .section-ranking-flag{
  width:107px!important;height:51px!important;float:left!important;margin-right:15px!important;
  filter:grayscale(1) brightness(.22) contrast(.85)!important;opacity:.48!important;
}
.section-ranking .is-hidden-ranking-info h4{
  display:block!important;color:#E7D3E2!important;font-size:21px!important;line-height:1.1!important;
  margin-top:8px!important;margin-bottom:4px!important;white-space:nowrap;
}
.section-ranking .is-hidden-ranking-info h5{
  display:block!important;color:#8D7C89!important;font-size:14px!important;line-height:1.4!important;white-space:nowrap;
}
.section-ranking .is-hidden-ranking-info h5 .ranking-hidden-kingdom{
  display:inline!important;margin:0!important;color:#8D7C89!important;letter-spacing:.08em!important;
}
.section-ranking .is-hidden-ranking-info h5 .ranking-hidden-level{
  display:inline!important;margin-left:10px!important;color:#8D7C89!important;
}
.section-ranking .ranking-hidden-identity{display:none!important}
@media(max-width:767.98px){
  .section-ranking .is-hidden-ranking-info h4{font-size:19px!important;white-space:normal}
}


/* Community banner palette refinement */
.section-community{
  position:relative;
  overflow:hidden;
  margin:26px 0 10px;
  background-image:
    radial-gradient(circle at 20% 0%, rgba(215,140,205,.22), transparent 34%),
    radial-gradient(circle at 80% 100%, rgba(163,75,156,.18), transparent 32%),
    linear-gradient(135deg, rgba(23,19,23,.96), rgba(39,32,39,.96) 45%, rgba(74,31,70,.92));
  border:1px solid rgba(163,75,156,.18);
  box-shadow:0 20px 45px rgba(0,0,0,.28);
}
.section-community::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(215,140,205,.08), transparent 28%, transparent 72%, rgba(163,75,156,.09));
  pointer-events:none;
}
.section-community .container,
.section-community .row,
.section-community [class*="col-"]{position:relative;z-index:1}
.section-community h2{
  color:#f4d6ef;
  font-family:"Philosopher",serif;
  font-size:30px;
  font-weight:700;
  line-height:100px;
  text-shadow:0 2px 10px rgba(0,0,0,.18);
}
.section-community h2:before{
  filter:hue-rotate(255deg) saturate(.75) brightness(.95);
  opacity:.95;
}
.section-community-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:16px;
  min-width:220px;
  background:linear-gradient(135deg, rgba(27,20,28,.95), rgba(44,31,46,.95));
  border:1px solid rgba(215,140,205,.22);
  color:#f2d5ea!important;
  font-size:18px;
  font-weight:700;
  border-radius:16px;
  box-shadow:0 12px 28px rgba(0,0,0,.22);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}
.section-community-button:hover{
  background:linear-gradient(135deg, rgba(74,31,70,.98), rgba(163,75,156,.94));
  border-color:rgba(215,140,205,.42);
  box-shadow:0 16px 34px rgba(74,31,70,.24);
  transform:translateY(-1px);
}
.section-community-button .fa-brands{
  float:none;
  margin-left:0;
  font-size:30px;
  color:#f7d991;
}
@media (max-width: 991.98px){
  .section-community{padding:16px 0 22px}
  .section-community h2{line-height:1.25;margin-top:0;padding-left:88px;padding-top:22px;padding-bottom:10px}
  .section-community h2:before{width:150px;height:150px;left:-32px;top:-16px;background-size:contain}
  .section-community .text-end{text-align:left!important}
}
@media (max-width: 767.98px){
  .section-community h2{font-size:24px;padding-left:72px}
  .section-community-button{min-width:100%;margin-left:0;margin-top:14px}
}


/* Discord sticker + runtime branding */
.runtime-brand-logo{display:block;max-height:52px;width:auto;object-fit:contain}.runtime-footer-logo{display:block;max-height:72px;width:auto;margin:auto}.community-actions{display:flex;align-items:center;justify-content:flex-end;gap:16px;flex-wrap:wrap}.section-community h2:before{background-image:var(--community-icon,url(../images/community_icon.png))}.discord-sticker{display:grid;grid-template-columns:56px minmax(120px,1fr) auto;align-items:center;min-width:360px;max-width:430px;min-height:76px;padding:0;overflow:hidden;border-radius:14px;background:linear-gradient(110deg,#5865F2 0 56%,#7289DA 56% 100%);color:#fff!important;text-decoration:none!important;box-shadow:0 15px 34px rgba(0,0,0,.24);transition:transform .2s ease,box-shadow .2s ease}.discord-sticker:hover{transform:translateY(-2px);box-shadow:0 20px 42px rgba(0,0,0,.32);color:#fff!important}.discord-sticker-avatar{width:44px;height:44px;margin-left:12px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#1E1F22;font-size:22px;color:#fff}.discord-sticker-info{display:flex;flex-direction:column;padding:12px 8px}.discord-sticker-info strong{font-size:15px;line-height:1.25;color:#fff}.discord-sticker-info span{font-size:11px;color:rgba(255,255,255,.84);margin-top:2px;text-transform:uppercase;letter-spacing:.04em}.discord-sticker-info b{color:#23A559}.discord-sticker-brand{height:100%;min-width:145px;padding:0 16px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:14px;font-weight:800;letter-spacing:.03em;background:rgba(255,255,255,.08)}.discord-sticker-brand .fa-chevron-right{font-size:11px;margin-left:2px}.discord-sticker-brand .fa-discord{font-size:19px}@media(max-width:991.98px){.community-actions{justify-content:flex-start!important}.discord-sticker{min-width:min(100%,360px)}}@media(max-width:575.98px){.discord-sticker{grid-template-columns:50px 1fr;min-width:100%}.discord-sticker-brand{grid-column:1/-1;min-height:38px}.discord-sticker-avatar{width:38px;height:38px;margin-left:8px}.runtime-brand-logo{max-height:42px}}


/* Fixed Discord edge sticker */
.discord-floating-sticker{
  position:fixed;
  right:-205px;
  bottom:28px;
  z-index:9998;
  width:276px;
  min-height:74px;
  display:grid;
  grid-template-columns:64px 1fr 28px;
  align-items:center;
  overflow:hidden;
  border-radius:18px 0 0 18px;
  border:1px solid rgba(215,140,205,.34);
  border-right:0;
  background:linear-gradient(120deg,rgba(74,31,70,.98),rgba(163,75,156,.97));
  color:#fff!important;
  text-decoration:none!important;
  box-shadow:-12px 16px 38px rgba(0,0,0,.35),0 0 28px rgba(163,75,156,.13);
  transform:translateZ(0);
  transition:right .28s cubic-bezier(.2,.75,.25,1),box-shadow .25s ease,transform .25s ease;
  backdrop-filter:blur(10px);
}
.discord-floating-sticker:hover,.discord-floating-sticker:focus-visible{
  right:0;
  color:#fff!important;
  box-shadow:-18px 20px 48px rgba(0,0,0,.42),0 0 34px rgba(215,140,205,.18);
}
.discord-floating-icon{
  width:52px;height:52px;margin-left:9px;border-radius:16px;display:flex;align-items:center;justify-content:center;
  background:rgba(17,13,18,.54);border:1px solid rgba(255,255,255,.12);font-size:27px;color:#fff;
  box-shadow:inset 0 0 18px rgba(255,255,255,.03);
}
.discord-floating-copy{display:flex;flex-direction:column;min-width:0;padding:11px 8px 11px 12px}
.discord-floating-copy strong{font-size:14px;line-height:1.2;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.discord-floating-copy span{display:flex;align-items:center;gap:6px;margin-top:5px;font-size:10px;color:rgba(255,255,255,.79);text-transform:uppercase;letter-spacing:.055em;white-space:nowrap}
.discord-floating-copy b{width:7px;height:7px;border-radius:50%;background:#23A559;box-shadow:0 0 9px rgba(35,165,89,.65);flex:0 0 auto}
.discord-floating-arrow{height:100%;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.10);font-size:11px;color:rgba(255,255,255,.78)}
.discord-floating-sticker:hover .discord-floating-arrow i{transform:rotate(180deg)}
.discord-floating-arrow i{transition:transform .28s ease}
@media(max-width:767.98px){
  .discord-floating-sticker{right:-212px;bottom:18px;width:268px;min-height:64px;border-radius:16px 0 0 16px;grid-template-columns:56px 1fr 24px}
  .discord-floating-icon{width:44px;height:44px;margin-left:7px;border-radius:14px;font-size:23px}
  .discord-floating-copy strong{font-size:13px}
}
@media(max-width:480px){
  .discord-floating-sticker{right:-214px;width:264px;bottom:14px}
}


/* Precision pass for hidden best-player card */
.section-ranking .is-hidden-ranking-info{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
  min-height:116px!important;
  margin:38px 0 20px!important;
  padding:18px 18px!important;
  overflow:hidden!important;
  display:grid!important;
  grid-template-columns:86px minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  column-gap:14px!important;
  row-gap:4px!important;
  align-items:center!important;
}
.section-ranking .is-hidden-ranking-info .section-ranking-flag{
  grid-column:1!important;
  grid-row:1 / span 2!important;
  float:none!important;
  width:86px!important;
  height:44px!important;
  margin:0!important;
  align-self:center!important;
  background-size:contain!important;
  background-position:center!important;
  filter:grayscale(1) brightness(.18) contrast(.88)!important;
  opacity:.42!important;
}
.section-ranking .is-hidden-ranking-info h4{
  grid-column:2!important;
  grid-row:1!important;
  min-width:0!important;
  margin:0!important;
  display:block!important;
  color:#E8D7E4!important;
  font-size:19px!important;
  line-height:1.08!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
.section-ranking .is-hidden-ranking-info h5{
  grid-column:2!important;
  grid-row:2!important;
  min-width:0!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  color:#8D7C89!important;
  font-size:13px!important;
  line-height:1.25!important;
  white-space:normal!important;
}
.section-ranking .is-hidden-ranking-info h5 .ranking-hidden-kingdom,
.section-ranking .is-hidden-ranking-info h5 .ranking-hidden-level{
  display:inline-block!important;
  margin:0!important;
  color:#8D7C89!important;
}
.section-ranking .is-hidden-ranking-character{
  background-position:68% bottom!important;
  background-size:auto 93%!important;
  filter:brightness(.11) saturate(.08) contrast(1.16) drop-shadow(0 26px 34px rgba(0,0,0,.55))!important;
  opacity:.62!important;
}
@media(max-width:1199.98px){
  .section-ranking .is-hidden-ranking-info{
    grid-template-columns:70px minmax(0,1fr)!important;
    column-gap:11px!important;
    padding:16px!important;
  }
  .section-ranking .is-hidden-ranking-info .section-ranking-flag{width:70px!important;height:38px!important}
  .section-ranking .is-hidden-ranking-info h4{font-size:17px!important}
  .section-ranking .is-hidden-ranking-info h5{font-size:12px!important;gap:6px!important}
}
@media(max-width:767.98px){
  .section-ranking .is-hidden-ranking-info{
    grid-template-columns:68px minmax(0,1fr)!important;
    min-height:104px!important;
    margin-top:22px!important;
  }
}


/* Social links */
.hero-social-links{display:flex;align-items:center;gap:10px;margin-top:22px;flex-wrap:wrap}
.hero-social-links a{width:42px;height:42px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:rgba(26,19,27,.78);border:1px solid rgba(215,140,205,.24);color:#f7e9f4!important;font-size:18px;backdrop-filter:blur(8px);box-shadow:0 10px 24px rgba(0,0,0,.18);transition:.18s ease}
.hero-social-links a:hover{transform:translateY(-2px);background:linear-gradient(135deg,var(--rose-500),var(--plum-900));border-color:rgba(215,140,205,.58);box-shadow:0 14px 30px rgba(74,31,70,.30)}
.social-floating-rail{position:fixed;right:8px;bottom:112px;z-index:1049;display:flex;flex-direction:column;gap:8px}
.social-floating-rail a{width:44px;height:42px;border-radius:14px 0 0 14px;display:flex;align-items:center;justify-content:flex-start;gap:10px;padding:0 13px;background:rgba(30,22,31,.96);border:1px solid rgba(215,140,205,.22);border-right:0;color:#f5e9f3!important;font-size:17px;box-shadow:0 10px 24px rgba(0,0,0,.24);transition:.2s ease;overflow:hidden;white-space:nowrap}
.social-floating-rail a span{font-size:12px;font-weight:800;letter-spacing:.04em;opacity:0;transform:translateX(8px);transition:.18s ease}.social-floating-rail a:hover{width:126px;transform:translateX(-4px);background:linear-gradient(135deg,var(--rose-500),var(--plum-900));color:#fff!important}.social-floating-rail a:hover span{opacity:1;transform:none}
.footer-social{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
@media(max-width:767.98px){.social-floating-rail{right:4px;bottom:94px}.social-floating-rail a{width:38px;height:38px;font-size:15px;padding:0 11px}.social-floating-rail a:hover{width:108px}.hero-social-links a{width:40px;height:40px}}


/* Premium login redesign */
.login-page{padding-top:70px;padding-bottom:90px}
.login-page-header{margin-bottom:34px}
.login-page .page-subtitle{display:block;max-width:760px;margin:14px auto 0;color:#b9a8b7;font-size:15px;line-height:1.75;border:0}
.login-shell{padding:0!important;overflow:hidden;min-height:0!important;background:linear-gradient(135deg,rgba(30,22,31,.96),rgba(19,15,19,.98))!important}
.login-shell .row{min-height:640px!important;align-items:stretch!important}
.login-visual-side{position:relative;height:100%;min-height:640px;background-image:url(../images/panel_login.png);background-size:cover;background-position:center}
.login-visual-side::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.06),rgba(255,255,255,.02) 34%,rgba(23,19,23,.45) 72%,rgba(23,19,23,.80) 100%)}
.login-visual-overlay{position:absolute;inset:0;background:radial-gradient(circle at 12% 18%,rgba(255,255,255,.22),transparent 26%),radial-gradient(circle at 70% 78%,rgba(163,75,156,.16),transparent 34%)}
.login-visual-content{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:flex-end;gap:18px;height:100%;padding:42px 42px 46px;color:#fff}
.login-kicker{display:inline-flex;align-items:center;width:max-content;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(10px);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#f2dceb}
.login-visual-content h2{margin:0;font-family:"Philosopher",serif;font-size:48px;line-height:1.02;color:#fff;text-shadow:0 10px 38px rgba(0,0,0,.28)}
.login-visual-content p{max-width:520px;margin:0;color:rgba(245,234,242,.88);font-size:15px;line-height:1.8}
.login-quick-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:560px;margin-top:6px}
.login-quick-card{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:18px;background:rgba(14,11,14,.44);border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(10px);color:#f5eaf2!important;box-shadow:0 12px 26px rgba(0,0,0,.18);transition:transform .18s ease,border-color .18s ease,background .18s ease}
.login-quick-card:hover{transform:translateY(-2px);border-color:rgba(215,140,205,.32);background:rgba(36,27,37,.64)}
.login-quick-icon{width:44px;height:44px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(163,75,156,.28),rgba(74,31,70,.34));color:#f5d1ec;flex-shrink:0;font-size:18px}
.login-quick-copy{display:flex;flex-direction:column;min-width:0}
.login-quick-copy strong{font-size:15px;color:#fff}
.login-quick-copy small{margin-top:2px;color:rgba(241,222,237,.74);font-size:12px;line-height:1.45}
.login-form-side{display:flex;align-items:center;justify-content:center;height:100%;padding:34px}
.login-form-card{width:100%;max-width:430px;padding:30px 28px;border-radius:24px;background:linear-gradient(180deg,rgba(28,21,29,.90),rgba(21,17,22,.96));border:1px solid rgba(215,140,205,.14);box-shadow:0 22px 55px rgba(0,0,0,.28)}
.login-form-head{margin-bottom:18px;text-align:left}
.login-form-kicker{display:inline-flex;align-items:center;padding:7px 12px;border-radius:999px;background:rgba(163,75,156,.12);color:#d9a6d2;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.login-form-head h3{margin:14px 0 8px;font-family:"Philosopher",serif;font-size:34px;color:#f3ddec;line-height:1.05}
.login-form-head p{margin:0;color:#a99ca8;line-height:1.7;font-size:14px}
.login-form-main{margin-top:20px}
.login-field-label{display:block;margin:0 0 8px;color:#d9c8d7;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.login-form-main .form-control{min-height:52px!important;border-radius:14px!important;padding:13px 16px!important;margin-bottom:14px!important;background:rgba(17,13,17,.88)!important;border:1px solid rgba(215,140,205,.16)!important;color:#f7edf4!important}
.login-form-main .form-control:focus{border-color:rgba(215,140,205,.34)!important;box-shadow:0 0 0 .2rem rgba(163,75,156,.12)!important;background:rgba(21,16,22,.96)!important}
.login-captcha-wrap{display:flex;justify-content:center;margin:18px 0 18px}
.login-captcha-wrap .g-recaptcha{transform-origin:center top}
.login-submit-button{width:100%;min-height:50px!important;font-size:14px!important;letter-spacing:.06em!important;text-transform:uppercase}
.login-links-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;padding-top:18px;border-top:1px solid rgba(215,140,205,.10)}
.login-links-row a{color:#d59ad0!important;font-weight:700;font-size:13px}
.login-links-row a:hover{color:#fff!important}
@media (max-width: 1199.98px){
  .login-visual-content h2{font-size:42px}
}
@media (max-width: 991.98px){
  .login-shell .row{min-height:0!important}
  .login-visual-side{min-height:360px}
  .login-form-side{padding:22px}
  .login-quick-links{grid-template-columns:1fr}
}
@media (max-width: 767.98px){
  .login-page{padding-top:46px;padding-bottom:70px}
  .login-page-header{margin-bottom:24px}
  .login-visual-side{min-height:320px}
  .login-visual-content{padding:24px}
  .login-visual-content h2{font-size:34px}
  .login-form-side{padding:16px}
  .login-form-card{padding:22px 18px;border-radius:20px}
  .login-form-head h3{font-size:28px}
  .login-links-row{flex-direction:column;align-items:flex-start}
  .login-captcha-wrap{justify-content:flex-start;overflow-x:auto}
}


/* Premium download page + animated home CTA */
.download-page{padding-top:64px}
.download-page-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:34px 38px!important;margin-bottom:22px;overflow:hidden;background:radial-gradient(circle at 84% 10%,rgba(163,75,156,.23),transparent 28%),linear-gradient(135deg,#241b24,#1a151b 62%,#211722)!important}
.download-page-hero-copy{position:relative;z-index:2;max-width:760px}
.download-page-kicker,.download-section-eyebrow{display:inline-flex;align-items:center;gap:8px;color:#d9a2d2;font-size:11px;font-weight:800;letter-spacing:.10em;text-transform:uppercase}
.download-page-hero .page-title{text-align:left;margin-top:12px;font-size:clamp(38px,5vw,58px)}
.download-page-hero .page-title::after{margin-left:0}
.download-page-hero-copy p{max-width:650px;margin:16px 0 0;color:#b9abb6;font-size:15px;line-height:1.8}
.download-page-trust{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.download-page-trust span{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid rgba(215,140,205,.10);color:#d5c5d2;font-size:12px;font-weight:700}
.download-page-trust i{color:#d78ccd}
.download-page-hero-icon{position:relative;display:flex;align-items:center;justify-content:center;width:150px;height:150px;flex:0 0 150px;border-radius:42px;background:linear-gradient(135deg,rgba(163,75,156,.30),rgba(74,31,70,.32));border:1px solid rgba(215,140,205,.18);box-shadow:0 22px 55px rgba(0,0,0,.22);font-size:54px;color:#edd5e8}
.download-page-hero-icon::before{content:"";position:absolute;inset:-12px;border-radius:52px;border:1px solid rgba(215,140,205,.06)}
.download-content-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.85fr);gap:22px}
.download-client-panel,.download-requirements-panel{padding:28px!important}
.download-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}
.download-section-head h2{margin:7px 0 0;font-family:"Philosopher",serif;color:#f1deed;font-size:28px}
.download-section-status{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:rgba(88,180,116,.08);border:1px solid rgba(88,180,116,.14);color:#9bd8ad;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.download-section-status span{width:8px;height:8px;border-radius:50%;background:#67d689;box-shadow:0 0 0 4px rgba(103,214,137,.10)}
.download-client-list{display:grid;gap:14px}
.download-client-card{position:relative;display:flex;align-items:center;gap:16px;padding:18px;border-radius:18px;background:linear-gradient(135deg,rgba(42,31,43,.96),rgba(30,23,31,.98));border:1px solid rgba(215,140,205,.12);color:#fff!important;box-shadow:0 14px 32px rgba(0,0,0,.16);overflow:hidden;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.download-client-card::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 0%,rgba(215,140,205,.06) 44%,transparent 58%);transform:translateX(-120%);transition:transform .65s ease}
.download-client-card:hover{transform:translateY(-3px);border-color:rgba(215,140,205,.28);box-shadow:0 20px 42px rgba(0,0,0,.24)}
.download-client-card:hover::before{transform:translateX(120%)}
.download-client-icon{position:relative;z-index:1;width:54px;height:54px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:16px;background:linear-gradient(135deg,#a34b9c,#4a1f46);font-size:23px;color:#fff;box-shadow:0 12px 24px rgba(74,31,70,.24)}
.download-client-copy{position:relative;z-index:1;display:flex;flex-direction:column;min-width:0;flex:1}
.download-client-copy strong{color:#f5e7f2;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.download-client-copy span{margin-top:4px;color:#a99ba7;font-size:12px}
.download-client-action{position:relative;z-index:1;width:42px;height:42px;display:flex;align-items:center;justify-content:center;border-radius:14px;background:rgba(215,140,205,.08);color:#e5b9de;transition:.2s ease}
.download-client-card:hover .download-client-action{background:#a34b9c;color:#fff;animation:downloadArrowBounce .75s ease infinite alternate}
.download-install-note{display:flex;align-items:flex-start;gap:14px;margin-top:18px;padding:16px;border-radius:16px;background:rgba(215,140,205,.04);border:1px solid rgba(215,140,205,.08)}
.download-install-note>i{margin-top:3px;color:#d78ccd}
.download-install-note div{display:flex;flex-direction:column}
.download-install-note strong{color:#e7d6e3;font-size:13px}
.download-install-note span{margin-top:4px;color:#9f929d;font-size:12px;line-height:1.6}
.download-pc-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:15px;background:rgba(163,75,156,.10);border:1px solid rgba(215,140,205,.10);color:#d78ccd;font-size:20px}
.download-requirements-modern{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.download-requirement-item{display:flex;align-items:flex-start;gap:12px;padding:14px;border-radius:16px;background:rgba(17,13,17,.42);border:1px solid rgba(215,140,205,.07)}
.req-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:12px;background:rgba(163,75,156,.10);color:#d78ccd}
.download-requirement-item div{display:flex;flex-direction:column;min-width:0}
.download-requirement-item small{color:#8f838d;font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;margin-bottom:4px}
.download-requirement-item strong{color:#e5d9e2;font-size:12px;line-height:1.45;font-weight:700}
.download-empty-state{display:flex;align-items:center;gap:10px;padding:18px;border-radius:16px;background:rgba(255,255,255,.025);color:#a99da7}

/* Home animated client download button */
.home-download-cta-wrap{position:relative;z-index:8;margin-top:-162px;margin-bottom:108px;pointer-events:none}
.home-download-cta{position:relative;display:flex;align-items:center;gap:14px;width:min(470px,100%);margin-left:auto;padding:14px 16px;border-radius:19px;background:linear-gradient(135deg,#a34b9c,#4a1f46 72%);border:1px solid rgba(255,255,255,.12);color:#fff!important;box-shadow:0 18px 42px rgba(74,31,70,.36),0 0 0 0 rgba(215,140,205,.15);overflow:hidden;pointer-events:auto;animation:homeDownloadFloat 3.2s ease-in-out infinite,homeDownloadGlow 2.6s ease-in-out infinite alternate}
.home-download-cta::before{content:"";position:absolute;top:0;bottom:0;width:90px;left:-120px;transform:skewX(-18deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.20),transparent);animation:homeDownloadShine 3.4s ease-in-out infinite}
.home-download-pulse{position:absolute;width:120px;height:120px;right:-35px;top:50%;transform:translateY(-50%);border-radius:50%;background:radial-gradient(circle,rgba(215,140,205,.20),transparent 65%);animation:homeDownloadPulse 2.2s ease-in-out infinite}
.home-download-icon{position:relative;z-index:2;width:48px;height:48px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:15px;background:rgba(255,255,255,.13);font-size:19px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.home-download-icon i{animation:homeDownloadIconBounce 1.25s ease-in-out infinite}
.home-download-copy{position:relative;z-index:2;display:flex;flex-direction:column;flex:1;min-width:0}
.home-download-copy small{color:rgba(255,255,255,.68);font-size:10px;font-weight:800;letter-spacing:.10em;text-transform:uppercase}
.home-download-copy strong{margin-top:3px;color:#fff;font-size:15px;letter-spacing:.01em}
.home-download-arrow{position:relative;z-index:2;width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:rgba(13,8,14,.18);transition:transform .2s ease,background .2s ease}
.home-download-cta:hover{transform:translateY(-3px);filter:brightness(1.08)}
.home-download-cta:hover .home-download-arrow{transform:translateX(4px);background:rgba(255,255,255,.14)}
.header-button-download{position:relative;overflow:hidden;animation:heroDownloadGlow 2.6s ease-in-out infinite alternate}
.header-button-download::after{content:"";position:absolute;top:0;bottom:0;width:70px;left:-90px;transform:skewX(-20deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.20),transparent);animation:homeDownloadShine 3.1s ease-in-out infinite}
@keyframes homeDownloadFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes homeDownloadGlow{0%{box-shadow:0 18px 42px rgba(74,31,70,.34),0 0 0 0 rgba(215,140,205,.05)}100%{box-shadow:0 22px 52px rgba(74,31,70,.42),0 0 0 6px rgba(215,140,205,.04)}}
@keyframes heroDownloadGlow{0%{box-shadow:0 10px 22px rgba(74,31,70,.18)}100%{box-shadow:0 14px 32px rgba(163,75,156,.34)}}
@keyframes homeDownloadShine{0%,58%{left:-120px}82%,100%{left:120%}}
@keyframes homeDownloadPulse{0%,100%{transform:translateY(-50%) scale(.90);opacity:.48}50%{transform:translateY(-50%) scale(1.08);opacity:.82}}
@keyframes homeDownloadIconBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(4px)}}
@keyframes downloadArrowBounce{from{transform:translateY(-2px)}to{transform:translateY(3px)}}
@media (max-width:991.98px){.download-content-grid{grid-template-columns:1fr}.download-page-hero-icon{width:120px;height:120px;flex-basis:120px;font-size:42px}.home-download-cta-wrap{margin-top:-26px;margin-bottom:32px}.home-download-cta{margin-left:0}}
@media (max-width:767.98px){.download-page-hero{padding:24px!important;flex-direction:column;align-items:flex-start}.download-page-hero-icon{display:none}.download-client-panel,.download-requirements-panel{padding:20px!important}.download-requirements-modern{grid-template-columns:1fr}.download-section-head{align-items:flex-start}.download-section-status{display:none}.home-download-cta{padding:12px 13px;border-radius:17px}.home-download-icon{width:44px;height:44px}.home-download-copy strong{font-size:14px}}
@media (prefers-reduced-motion:reduce){.home-download-cta,.home-download-cta::before,.home-download-pulse,.home-download-icon i,.header-button-download,.header-button-download::after,.download-client-card:hover .download-client-action{animation:none!important}}


.hero-client-space{display:block;margin-top:10px;color:#cdb9c9;font-size:12px;letter-spacing:.02em;opacity:.92}


/* Pixel-perfect centering for hero social icons */
.hero-social-links a{position:relative!important;display:inline-block!important;flex:0 0 42px!important;padding:0!important;line-height:42px!important;text-align:center!important;vertical-align:middle!important}
.hero-social-links a > i{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  float:none!important;
  line-height:1!important;
  transform:translate(-50%,-50%)!important;
  text-align:center!important;
}
@media(max-width:767.98px){
  .hero-social-links a{flex-basis:40px!important;line-height:40px!important}
}


/* Recovery + registration refinement */
.auth-page-heading{margin-bottom:32px}.auth-page-heading p{max-width:720px;margin:15px auto 0;color:#ad9fab;line-height:1.75}
.register-shell{padding:0!important;overflow:hidden!important;min-height:0!important;background:#181318!important}.register-shell .row{min-height:620px!important;align-items:stretch!important}
.register-visual-side{height:100%;min-height:620px;position:relative;background-image:linear-gradient(90deg,rgba(20,15,20,.03),rgba(20,15,20,.18) 55%,rgba(20,15,20,.72)),url(../images/panel_login.png);background-size:cover;background-position:center}
.register-visual-copy{position:absolute;left:38px;right:38px;bottom:40px;padding:24px;border-radius:20px;background:rgba(17,13,17,.48);border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(10px)}
.register-visual-copy h2{font-family:"Philosopher",serif;color:#fff;font-size:42px;margin:14px 0 8px}.register-visual-copy p{color:#ded0db;line-height:1.75;margin:0}.register-form-side{display:flex;align-items:center;justify-content:center;height:100%;padding:30px}.register-form-card{max-width:440px}
.recovery-page{padding:72px 0 100px}.recovery-shell{display:grid;grid-template-columns:minmax(0,.85fr) minmax(420px,1.15fr);gap:0;max-width:1180px;margin:0 auto;border:1px solid rgba(215,140,205,.14);border-radius:28px;overflow:hidden;background:linear-gradient(135deg,#201820,#151115);box-shadow:0 30px 80px rgba(0,0,0,.32)}
.recovery-intro{position:relative;padding:54px 44px;background:radial-gradient(circle at 10% 10%,rgba(215,140,205,.16),transparent 30%),linear-gradient(145deg,#2b202b,#1c161c)}
.recovery-intro::after{content:"";position:absolute;right:-70px;bottom:-95px;width:250px;height:250px;border-radius:50%;background:radial-gradient(circle,rgba(163,75,156,.18),transparent 65%)}
.recovery-intro h1{font-family:"Philosopher",serif;color:#f4e3ef;font-size:44px;line-height:1.05;margin:20px 0 14px}.recovery-intro>p{color:#b8a9b5;font-size:15px;line-height:1.8;max-width:430px}.recovery-security-points{display:grid;gap:13px;margin-top:32px}.recovery-security-points>div{display:flex;align-items:center;gap:13px;color:#d8c9d5}.recovery-security-points i{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:rgba(163,75,156,.12);color:#d78ccd}
.recovery-card{display:flex;flex-direction:column;justify-content:center;padding:48px 48px;background:linear-gradient(180deg,rgba(27,21,27,.97),rgba(20,16,20,.99))}.recovery-card .login-form-head h3{font-size:32px}.recovery-success-state{text-align:center;padding:28px 10px}.recovery-success-icon{width:72px;height:72px;margin:0 auto 18px;border-radius:22px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(163,75,156,.24),rgba(74,31,70,.40));color:#e8b6df;font-size:28px;box-shadow:0 18px 40px rgba(74,31,70,.22)}.recovery-success-state h3{font-family:"Philosopher",serif;color:#f3e2ef;font-size:31px;margin:0 0 10px}.recovery-success-state p{color:#b3a5b0;line-height:1.7;max-width:470px;margin:0 auto 22px}.recovery-login-link{display:inline-flex!important;align-items:center;justify-content:center;text-decoration:none}
@media(max-width:991.98px){.recovery-shell{grid-template-columns:1fr}.recovery-intro{padding:36px 28px}.recovery-card{padding:36px 28px}.register-shell .row{min-height:0!important}.register-visual-side{min-height:350px}.register-form-side{padding:22px}}
@media(max-width:767.98px){.recovery-page{padding:45px 0 70px}.recovery-shell{border-radius:20px}.recovery-intro h1{font-size:34px}.recovery-card{padding:26px 18px}.register-visual-side{min-height:300px}.register-visual-copy{left:20px;right:20px;bottom:20px;padding:18px}.register-visual-copy h2{font-size:32px}.register-form-side{padding:16px}}

/* Optical centering for Font Awesome brand glyphs in hero social circles */
.hero-social-links a > i{
  top:calc(50% + 3px)!important;
  left:50%!important;
  transform:translate(-50%,-50%)!important;
}
.hero-social-links a > .fa-tiktok{left:calc(50% + 1px)!important;}
.hero-social-links a > .fa-instagram{left:50%!important;}
.hero-social-links a > .fa-discord{left:50%!important;}

/* Referral Code */
.referral-user-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:38px 0 22px;padding:28px 30px;border:1px solid rgba(215,140,205,.18);border-radius:24px;background:linear-gradient(135deg,rgba(74,31,70,.88),rgba(33,26,33,.96));box-shadow:0 22px 55px rgba(0,0,0,.24)}
.referral-user-hero h1{margin:7px 0 8px;color:#fff}.referral-user-hero p{margin:0;max-width:690px;color:var(--muted)}
.referral-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--rose-300);font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.09em}
.referral-mall-meter{min-width:165px;padding:15px 18px;border-radius:18px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.09);text-align:center}
.referral-mall-meter span,.referral-mall-meter small{display:block;color:var(--muted);font-size:11px}.referral-mall-meter strong{display:block;margin:3px 0;color:#fff;font-size:25px}.referral-mall-meter.is-warning strong{color:#ffc107}
.referral-redeem-panel{max-width:900px;margin:0 auto 52px!important;padding:30px!important}.referral-redeem-form label{display:block;margin-bottom:8px;color:#fff;font-weight:700}.referral-code-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:stretch}.referral-code-input-row .form-control{min-height:52px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.referral-submit{display:flex!important;align-items:center;justify-content:center;gap:8px;min-width:175px;border:0}.referral-redeem-form>small{display:block;margin-top:10px;color:var(--muted)}
.referral-alert{border-radius:16px!important}.referral-reward-chips{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.referral-reward-chips span{padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.10);font-size:12px;font-weight:700}
@media(max-width:767.98px){.referral-user-hero{align-items:flex-start;flex-direction:column;padding:22px}.referral-mall-meter{width:100%}.referral-code-input-row{grid-template-columns:1fr}.referral-submit{min-height:50px;width:100%}}

/* Registration-only promo referral + direct network */
.registration-referral-field{margin-top:4px;padding:14px;border:1px solid rgba(215,140,205,.20);border-radius:16px;background:rgba(163,75,156,.07)}
.registration-referral-field .login-field-label{display:flex;align-items:center;gap:7px}.registration-referral-field .login-field-label small{margin-left:auto;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.registration-referral-help{display:block;margin-top:7px;color:var(--muted);line-height:1.45}.registration-network-invite{display:flex;align-items:center;gap:8px;margin-top:10px;padding:10px 12px;border-radius:12px;background:rgba(91,190,120,.08);border:1px solid rgba(91,190,120,.22);font-size:12px}.registration-network-invite strong{margin-left:auto;color:#dcebdd}.register-referral-success{margin-top:5px;font-size:12px;opacity:.88}
.network-page{padding-bottom:45px}.network-hero{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:30px;margin-bottom:18px;border:1px solid rgba(215,140,205,.16);border-radius:24px;background:linear-gradient(135deg,rgba(74,31,70,.68),rgba(33,26,33,.96));box-shadow:0 18px 45px rgba(0,0,0,.20)}.network-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--rose-300);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.network-hero h1{margin:8px 0 8px;color:var(--ink)}.network-hero p{max-width:720px;margin:0;color:var(--muted)}.network-percent{width:116px;height:116px;flex:0 0 116px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(215,140,205,.08);border:1px solid rgba(215,140,205,.28);box-shadow:inset 0 0 30px rgba(163,75,156,.12)}.network-percent strong{font-size:32px;line-height:1;color:var(--rose-300)}.network-percent span{margin-top:6px;font-size:10px;text-transform:uppercase;color:var(--muted);text-align:center}.network-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.network-stat{display:flex;align-items:center;gap:13px;padding:18px;border-radius:18px;border:1px solid rgba(255,255,255,.07);background:var(--surface)}.network-stat>i{width:42px;height:42px;border-radius:13px;display:flex;align-items:center;justify-content:center;background:rgba(163,75,156,.14);color:var(--rose-300)}.network-stat small{display:block;color:var(--muted);font-size:11px}.network-stat strong{display:block;margin-top:3px;color:var(--ink);font-size:22px}.network-link-panel,.network-members-panel{padding:22px!important;margin-bottom:18px}.network-section-head h3{margin:0 0 5px}.network-section-head p{margin:0 0 16px;color:var(--muted)}.network-link-row{display:flex;gap:10px}.network-link-row .form-control{min-width:0}.network-regenerate-form{margin-top:10px}.network-table td,.network-table th{vertical-align:middle}.network-earned{color:#9fe3b0!important;font-weight:700}.network-admin-stats,.referral-registration-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:18px}.referral-registration-stats{grid-template-columns:repeat(3,1fr);margin-bottom:18px}.network-admin-stats>div,.referral-registration-stats>div{padding:15px;border-radius:14px;background:rgba(163,75,156,.08);border:1px solid rgba(215,140,205,.13)}.network-admin-stats small,.referral-registration-stats small{display:block;color:#9e8d9c}.network-admin-stats strong,.referral-registration-stats strong{display:block;margin-top:4px;font-size:23px;color:#f6edf4}
@media(max-width:991.98px){.network-stat-grid{grid-template-columns:repeat(2,1fr)}.network-admin-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:575.98px){.network-hero{align-items:flex-start;padding:21px}.network-percent{width:84px;height:84px;flex-basis:84px}.network-percent strong{font-size:24px}.network-stat-grid,.network-admin-stats,.referral-registration-stats{grid-template-columns:1fr}.network-link-row{flex-direction:column}}

/* Game events + MD purchase event */
.home-active-events{position:relative;padding:4px 0 24px;z-index:4}
.home-events-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}
.home-events-head h3{margin:2px 0 0;font:700 25px/1.1 "Philosopher",serif;color:#f3e7f0}
.home-events-head>div>span{font-size:10px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#d78ccd}
.home-events-live{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:700;color:#c8bbc5;text-transform:uppercase;letter-spacing:.08em}
.home-events-live i{width:8px;height:8px;border-radius:50%;background:#63df8a;box-shadow:0 0 12px rgba(99,223,138,.8)}
.home-events-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.home-event-card{position:relative;display:flex;align-items:center;gap:13px;min-height:82px;padding:14px 16px;border:1px solid rgba(215,140,205,.11);border-radius:17px;background:linear-gradient(180deg,#231c23,#1c171c);box-shadow:0 13px 28px rgba(0,0,0,.18);overflow:hidden}
.home-event-icon{width:45px;height:45px;display:flex;align-items:center;justify-content:center;border-radius:13px;background:rgba(215,140,205,.09);color:#d78ccd;flex:0 0 auto}
.home-event-copy{display:flex;min-width:0;flex-direction:column;gap:2px}.home-event-copy small{font-size:9px;letter-spacing:.09em;color:#867783}.home-event-copy strong{font-size:14px;color:#eadde7}.home-event-copy span{font-size:10px;color:#91838e}
.home-event-card.is-md-event{border-color:rgba(255,210,64,.42);background:radial-gradient(circle at 90% 10%,rgba(255,207,51,.13),transparent 38%),linear-gradient(180deg,#282218,#1f1a15);box-shadow:0 13px 35px rgba(255,193,7,.08)}
.home-event-card.is-md-event .home-event-icon{background:rgba(255,204,41,.12);color:#ffd752;box-shadow:inset 0 0 0 1px rgba(255,215,82,.12)}
.home-event-bonus{margin-left:auto;padding:8px 10px;border-radius:11px;background:linear-gradient(135deg,#ffe071,#e7ac15);color:#281d00;font-weight:900;font-size:15px;box-shadow:0 0 20px rgba(255,196,22,.22)}
.md-event-purchase-banner{display:flex;align-items:center;gap:14px;margin:0 0 20px;padding:14px 18px;border:1px solid rgba(255,210,64,.42);border-radius:17px;background:radial-gradient(circle at right,rgba(255,205,47,.15),transparent 37%),linear-gradient(180deg,#2b2419,#201b16);box-shadow:0 15px 36px rgba(255,190,0,.08)}
.md-event-purchase-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:14px;background:rgba(255,211,63,.13);color:#ffda52;font-size:19px}.md-event-purchase-banner>div:last-child{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.md-event-purchase-banner span{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#d8c89a}.md-event-purchase-banner strong{font-size:21px;color:#ffe073}.md-event-purchase-banner small{width:100%;color:#93866e;font-size:10px}
.donate-offer-md.has-md-event{display:flex!important;align-items:baseline;gap:8px;flex-wrap:wrap}.donate-offer-md.has-md-event .donate-md-base{text-decoration:line-through;opacity:.52;font-size:15px;font-weight:600}.donate-offer-md.has-md-event strong{color:#ffe073;font-size:25px}.donate-offer-md.has-md-event em{width:100%;font-style:normal;font-size:11px;color:#e8c858;font-weight:800}
.donate-cta-button.md-event-buy-button{position:relative;background:linear-gradient(135deg,#ffe16e,#e2a612)!important;color:#2b2000!important;border-color:#ffe27a!important;box-shadow:0 0 18px rgba(255,198,31,.42),0 10px 25px rgba(192,132,0,.22)!important;animation:mdEventBuyGlow 1.8s ease-in-out infinite alternate}
.donate-cta-button.md-event-buy-button:hover{filter:brightness(1.08);box-shadow:0 0 27px rgba(255,210,49,.65),0 12px 30px rgba(192,132,0,.28)!important}.md-event-button-bonus{margin-left:auto;padding:3px 7px;border-radius:8px;background:rgba(53,37,0,.14);font-weight:900;font-size:11px}
@keyframes mdEventBuyGlow{from{box-shadow:0 0 13px rgba(255,198,31,.28),0 10px 25px rgba(192,132,0,.18)}to{box-shadow:0 0 28px rgba(255,210,49,.62),0 10px 28px rgba(192,132,0,.28)}}
@media(max-width:767.98px){.home-events-head{align-items:flex-start}.home-events-grid{grid-template-columns:1fr}.md-event-purchase-banner{align-items:flex-start}.md-event-purchase-banner>div:last-child{gap:4px 8px}}
@media(prefers-reduced-motion:reduce){.donate-cta-button.md-event-buy-button{animation:none!important}}


/* Home events layout fix: keep event cards in normal flow above stats */
.home-active-events{
  position:relative!important;
  z-index:4!important;
  width:100%!important;
  margin:0!important;
  padding:0 20px 28px!important;
  box-sizing:border-box!important;
  clear:both!important;
}
.home-active-events>.container{
  width:100%!important;
  max-width:var(--container)!important;
  margin:0 auto!important;
  padding:20px 22px!important;
  border:1px solid rgba(215,140,205,.12)!important;
  border-radius:22px!important;
  background:rgba(27,22,27,.94)!important;
  box-shadow:0 15px 38px rgba(0,0,0,.22)!important;
  overflow:hidden!important;
}
.home-active-events .home-events-head{margin-bottom:14px!important}
.home-active-events .home-events-grid{width:100%!important;min-width:0!important}
.section-stats.has-active-events{
  margin-top:0!important;
  padding-top:0!important;
}
@media(max-width:991.98px){
  .home-active-events{padding:0 14px 22px!important}
  .home-active-events>.container{padding:18px!important;border-radius:18px!important}
  .section-stats.has-active-events{margin-top:0!important}
}
@media(max-width:575.98px){
  .home-active-events{padding-left:12px!important;padding-right:12px!important}
  .home-active-events>.container{padding:15px!important}
  .home-events-head{flex-direction:column!important;align-items:flex-start!important;gap:8px!important}
}


/* Known game-event catalog cards */
.home-active-events .home-events-grid{grid-template-columns:repeat(auto-fit,minmax(270px,1fr))!important}
.home-active-events .home-event-card{min-height:105px!important;padding:16px 17px!important;align-items:flex-start!important}
.home-active-events .home-event-icon{width:48px!important;height:48px!important;flex-basis:48px!important;margin-top:2px!important;font-size:17px!important}
.home-active-events .home-event-copy{gap:3px!important;padding-right:4px!important}
.home-active-events .home-event-copy small{font-size:8px!important;letter-spacing:.11em!important;text-transform:uppercase!important;color:#786b75!important}
.home-active-events .home-event-copy strong{font-size:15px!important;line-height:1.18!important;color:#f0e4ed!important}
.home-active-events .home-event-copy em{display:block!important;margin:1px 0 3px!important;font-style:normal!important;font-size:10px!important;line-height:1.35!important;color:#a596a2!important}
.home-active-events .home-event-copy span{display:flex!important;align-items:center!important;gap:5px!important;font-size:9px!important;color:#82757f!important}
.home-active-events .home-event-copy span i{font-size:9px!important;color:#a34b9c!important}
.home-active-events .home-event-bonus{align-self:center!important;flex:0 0 auto!important}
@media(max-width:767.98px){.home-active-events .home-events-grid{grid-template-columns:1fr!important}.home-active-events .home-event-card{min-height:98px!important}}

/* Definitive home live-area layout: events and stats are stacked, never overlaid */
.home-live-stack{
  position:relative!important;
  z-index:4!important;
  display:flex!important;
  flex-direction:column!important;
  gap:18px!important;
  width:100%!important;
  max-width:1240px!important;
  margin:0 auto!important;
  padding:0 20px 30px!important;
  box-sizing:border-box!important;
  clear:both!important;
}
.home-live-stack .home-active-events{
  position:relative!important;
  display:block!important;
  flex:0 0 auto!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  left:auto!important;
  right:auto!important;
}
.home-live-stack .home-active-events>.container{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:20px 22px!important;
  box-sizing:border-box!important;
}
.home-live-stack .home-events-head{
  width:100%!important;
  min-width:0!important;
}
.home-live-stack .home-events-grid{
  position:relative!important;
  display:grid!important;
  width:100%!important;
  min-width:0!important;
  height:auto!important;
  overflow:visible!important;
}
.home-live-stack .section-stats,
.home-live-stack .section-stats.has-active-events{
  position:relative!important;
  flex:0 0 auto!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  top:auto!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
}
.home-live-stack .section-stats .container{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
@media(max-width:991.98px){
  .home-live-stack{padding:0 14px 24px!important;gap:14px!important}
}
@media(max-width:575.98px){
  .home-live-stack{padding-left:12px!important;padding-right:12px!important}
  .home-live-stack .home-active-events>.container{padding:15px!important}
}


/* Events section redraw under stats */
.home-live-stack{display:flex;flex-direction:column;gap:18px;position:relative;z-index:1}
.home-live-stack .section-stats.has-active-events{margin-top:0!important;margin-bottom:0!important}
.home-active-events-below{position:relative;padding:0 0 8px!important;z-index:1}
.home-active-events-below>.container{
  width:100%!important;
  max-width:1120px;
  padding:22px 24px!important;
  border-radius:28px;
  border:1px solid rgba(215,140,205,.16);
  background:linear-gradient(135deg,rgba(27,21,29,.96),rgba(19,15,20,.96));
  box-shadow:0 18px 48px rgba(0,0,0,.22);
}
.home-active-events-below .home-events-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px}
.home-active-events-below .home-events-head h3{margin:4px 0 0;font:700 34px/1.05 "Philosopher",serif;color:#f2e4ef}
.home-active-events-below .home-events-head>div>span{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#d78ccd}
.home-events-grid-below{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;width:100%}
.home-events-grid-below .home-event-card{
  display:flex;align-items:flex-start;gap:14px;min-height:118px;
  padding:18px 18px;border-radius:20px;
  background:linear-gradient(180deg,rgba(41,32,43,.84),rgba(24,19,26,.92));
  border:1px solid rgba(215,140,205,.14);
}
.home-events-grid-below .home-event-icon{width:50px;height:50px;flex:0 0 50px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(163,75,156,.24),rgba(74,31,70,.35));color:#f1caec;font-size:18px}
.home-events-grid-below .home-event-copy{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}
.home-events-grid-below .home-event-copy small{font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#887989}
.home-events-grid-below .home-event-copy strong{font-size:17px;line-height:1.2;color:#f3e7f1}
.home-events-grid-below .home-event-copy em{font-style:normal;font-size:12px;line-height:1.45;color:#b8aab6}
.home-events-grid-below .home-event-copy span{display:flex;align-items:center;gap:6px;font-size:11px;color:#a1909e}
.home-events-grid-below .home-event-bonus{margin-left:auto;align-self:center;padding:10px 12px;border-radius:999px;background:linear-gradient(135deg,#ffd559,#ffb300);color:#352400;font-weight:900;font-size:15px;box-shadow:0 0 18px rgba(255,210,74,.26)}
@media (max-width: 991.98px){
  .home-active-events-below>.container{padding:20px 18px!important;border-radius:24px}
  .home-active-events-below .home-events-head h3{font-size:30px}
}
@media (max-width: 767.98px){
  .home-live-stack{gap:14px}
  .home-active-events-below>.container{padding:18px 15px!important;border-radius:20px}
  .home-active-events-below .home-events-head{flex-direction:column;align-items:flex-start}
  .home-active-events-below .home-events-head h3{font-size:27px}
  .home-events-grid-below{grid-template-columns:1fr}
  .home-events-grid-below .home-event-card{min-height:0;padding:16px}
}


/* Premium redesign for home active events */
.home-active-events-deluxe>.container{
  max-width:1160px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.home-events-shell{
  position:relative;
  overflow:hidden;
  padding:24px;
  border-radius:28px;
  border:1px solid rgba(215,140,205,.14);
  background:
    radial-gradient(circle at top right, rgba(163,75,156,.20), transparent 34%),
    radial-gradient(circle at bottom left, rgba(78,39,86,.18), transparent 28%),
    linear-gradient(135deg, rgba(24,18,26,.98), rgba(18,14,20,.98));
  box-shadow:0 20px 50px rgba(0,0,0,.22);
}
.home-events-shell::before{
  content:"";
  position:absolute;inset:0 auto 0 0;width:4px;
  background:linear-gradient(180deg,#d88acf,#8f3d8c);
  opacity:.9;
}
.home-events-head.deluxe{
  display:flex;align-items:flex-end;justify-content:space-between;gap:18px;
  margin-bottom:18px;
}
.home-events-heading-block{max-width:760px}
.home-events-kicker{
  display:inline-flex;align-items:center;gap:8px;
  padding:7px 11px;border-radius:999px;
  background:rgba(216,138,207,.10);
  border:1px solid rgba(216,138,207,.18);
  color:#d88acf;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
}
.home-active-events-deluxe .home-events-head h3{
  margin:12px 0 6px!important;
  font:700 38px/1.02 "Philosopher",serif;
  color:#f6edf5;
}
.home-events-subtitle{
  margin:0;color:#b6a7b5;font-size:14px;line-height:1.55;
}
.home-events-side-meta{display:flex;flex-direction:column;align-items:flex-end;gap:10px;flex:0 0 auto}
.home-events-count{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:88px;padding:8px 14px;border-radius:999px;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
  color:#f0dfed;font-size:13px;font-weight:800;
}
.home-events-grid-deluxe{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px!important}
.home-events-grid-deluxe .home-event-card.deluxe{
  position:relative;display:flex;flex-direction:column;gap:14px;align-items:stretch;
  min-height:0!important;padding:18px 18px 16px!important;border-radius:22px;
  border:1px solid rgba(215,140,205,.11);overflow:hidden;
  background:linear-gradient(180deg, rgba(37,29,40,.92), rgba(25,19,28,.96));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02), 0 14px 28px rgba(0,0,0,.16);
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.home-events-grid-deluxe .home-event-card.deluxe:hover{
  transform:translateY(-2px);
  border-color:rgba(215,140,205,.26);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03), 0 18px 36px rgba(0,0,0,.23);
}
.home-event-card-glow{
  content:"";position:absolute;right:-40px;top:-40px;width:120px;height:120px;border-radius:50%;
  background:radial-gradient(circle, rgba(216,138,207,.16), transparent 68%);pointer-events:none;
}
.home-event-card.deluxe.is-md-event{
  border-color:rgba(255,211,90,.33)!important;
  background:linear-gradient(180deg, rgba(54,44,23,.95), rgba(28,22,16,.98))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03), 0 16px 34px rgba(120,84,0,.18)!important;
}
.home-event-card.deluxe .home-event-card-top{display:flex;align-items:flex-start;gap:13px}
.home-event-card.deluxe .home-event-icon{
  width:54px!important;height:54px!important;flex:0 0 54px!important;margin:0!important;
  border-radius:17px!important;
  background:linear-gradient(135deg, rgba(172,87,165,.28), rgba(73,34,70,.38))!important;
  border:1px solid rgba(215,140,205,.12);
  color:#f1d6ed!important;font-size:20px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
}
.home-event-card.deluxe.is-md-event .home-event-icon{
  background:linear-gradient(135deg, rgba(255,221,109,.24), rgba(155,106,0,.28))!important;
  color:#ffe07a!important;border-color:rgba(255,221,109,.16);
}
.home-event-titleblock{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1;padding-top:2px}
.home-event-titleblock .home-event-code{
  margin:0!important;font-size:10px!important;font-weight:900!important;letter-spacing:.12em!important;
  text-transform:uppercase!important;color:#8e7d8e!important;
}
.home-event-titleblock strong{
  display:block;font-size:20px!important;line-height:1.12!important;color:#f8eef6!important;font-weight:700;
}
.home-event-desc{
  margin:0!important;color:#b7acb7;font-size:13px;line-height:1.58;
  min-height:40px;
}
.home-event-meta-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.home-event-status-pill,
.home-event-end-pill{
  display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:999px;
  font-size:11px;font-weight:800;letter-spacing:.03em;
}
.home-event-status-pill{
  background:rgba(99,223,138,.10);border:1px solid rgba(99,223,138,.22);color:#a8ecbc;
}
.home-event-end-pill{
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);color:#d1c2cf;
}
.home-events-grid-deluxe .home-event-bonus{
  margin-left:auto!important;align-self:flex-start!important;padding:10px 12px!important;
  border-radius:14px!important;background:linear-gradient(135deg,#ffe27e,#ffbb1f)!important;
  color:#2f2200!important;font-weight:900!important;font-size:16px!important;
  box-shadow:0 10px 22px rgba(255,185,20,.20)!important;
}
@media (max-width: 991.98px){
  .home-events-shell{padding:20px;border-radius:24px}
  .home-active-events-deluxe .home-events-head h3{font-size:34px!important}
  .home-events-grid-deluxe{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
}
@media (max-width: 767.98px){
  .home-events-shell{padding:18px;border-radius:22px}
  .home-events-head.deluxe{flex-direction:column;align-items:flex-start}
  .home-events-side-meta{align-items:flex-start}
  .home-active-events-deluxe .home-events-head h3{font-size:30px!important}
  .home-events-subtitle{font-size:13px}
  .home-events-grid-deluxe{grid-template-columns:1fr!important;gap:14px!important}
  .home-event-card.deluxe .home-event-icon{width:48px!important;height:48px!important;flex-basis:48px!important;font-size:18px!important}
  .home-event-titleblock strong{font-size:18px!important}
}


/* MD event gold offer cards */
.donate-offer-card.md-event-offer-card{
  position:relative;
  overflow:hidden;
  border-color:rgba(255,214,93,.34)!important;
  background:
    radial-gradient(circle at top right, rgba(255,219,105,.20), transparent 30%),
    radial-gradient(circle at bottom left, rgba(166,116,0,.14), transparent 28%),
    linear-gradient(180deg,#332814,#241b12)!important;
  box-shadow:0 0 0 1px rgba(255,219,105,.08) inset, 0 22px 48px rgba(141,94,0,.18), 0 0 24px rgba(255,203,57,.08)!important;
  animation:mdOfferCardGlow 2.2s ease-in-out infinite alternate;
}
.donate-offer-card.md-event-offer-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(115deg,transparent 0%, transparent 34%, rgba(255,241,190,.09) 48%, transparent 60%, transparent 100%);
  transform:translateX(-100%);
  animation:mdOfferCardShine 3.6s ease-in-out infinite;
  pointer-events:none;
}
.donate-offer-card.md-event-offer-card:hover{
  border-color:rgba(255,223,120,.56)!important;
  box-shadow:0 0 0 1px rgba(255,219,105,.14) inset, 0 28px 54px rgba(160,107,0,.24), 0 0 30px rgba(255,205,65,.16)!important;
}
.donate-offer-card.md-event-offer-card .donate-offer-currency{color:#dcc697!important}
.donate-offer-card.md-event-offer-card .donate-offer-price,
.donate-offer-card.md-event-offer-card .donate-offer-md,
.donate-offer-card.md-event-offer-card .donate-offer-md strong{color:#ffe8a0!important}
.donate-offer-card.md-event-offer-card .donate-offer-note,
.donate-offer-card.md-event-offer-card .donate-offer-features li{color:#d4c0a6!important}
.donate-offer-card.md-event-offer-card .donate-offer-features li i{color:#ffd256!important}
.donate-offer-card.md-event-offer-card .donate-offer-md.has-md-event .donate-md-base{color:#b79a72!important;opacity:.78}
.donate-offer-card.md-event-offer-card .donate-offer-md.has-md-event em{color:#ffd762!important;font-size:12px!important;letter-spacing:.01em}
.donate-offer-event-badge{
  position:absolute;top:14px;right:14px;z-index:2;
  display:inline-flex;align-items:center;gap:6px;
  padding:7px 11px;border-radius:999px;
  background:linear-gradient(135deg,#ffe27c,#ffbe22);
  color:#3b2900!important;font-size:11px;font-weight:900;letter-spacing:.04em;
  box-shadow:0 10px 24px rgba(255,189,25,.25);
}
.donate-event-inline-note{
  margin-top:10px;
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 11px;border-radius:12px;
  background:rgba(255,225,115,.09);
  border:1px solid rgba(255,219,106,.18);
  color:#f6dd8e;font-size:11px;font-weight:800;
}
.donate-offer-card.md-event-offer-card .donate-cta-button.md-event-buy-button{
  background:linear-gradient(135deg,#ffea92,#ffc529)!important;
  color:#372700!important;
  border-color:#ffde72!important;
  box-shadow:0 0 22px rgba(255,213,79,.45),0 12px 28px rgba(187,127,0,.28)!important;
}
.donate-offer-card.md-event-offer-card .md-event-button-bonus{
  background:rgba(76,53,0,.12)!important;
  color:#4a3200!important;
}
@keyframes mdOfferCardGlow{
  0%{transform:translateY(0);box-shadow:0 0 0 1px rgba(255,219,105,.08) inset, 0 22px 48px rgba(141,94,0,.16), 0 0 18px rgba(255,203,57,.06)}
  100%{transform:translateY(-2px);box-shadow:0 0 0 1px rgba(255,224,133,.12) inset, 0 28px 58px rgba(160,107,0,.22), 0 0 28px rgba(255,213,79,.16)}
}
@keyframes mdOfferCardShine{
  0%, 20%{transform:translateX(-120%)}
  45%, 100%{transform:translateX(140%)}
}
@media (prefers-reduced-motion:reduce){
  .donate-offer-card.md-event-offer-card,
  .donate-offer-card.md-event-offer-card::before{animation:none!important}
}


/* MD event gold navbar recharge button */
#navbar .nav-recharge-link.md-event-nav-link{
  position:relative;
  overflow:hidden;
  background:linear-gradient(135deg,#ffeb96 0%,#ffd55f 42%,#b97819 100%)!important;
  color:#3a2600!important;
  border-color:rgba(255,225,136,.70)!important;
  box-shadow:0 0 0 1px rgba(255,239,182,.18) inset, 0 10px 28px rgba(224,163,37,.28), 0 0 18px rgba(255,212,90,.22)!important;
  animation:mdNavbarGoldPulse 2.2s ease-in-out infinite alternate;
}
#navbar .nav-recharge-link.md-event-nav-link::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(115deg,transparent 0%, transparent 35%, rgba(255,255,255,.26) 50%, transparent 62%, transparent 100%);
  transform:translateX(-120%);
  animation:mdNavbarGoldShine 3.2s ease-in-out infinite;
  pointer-events:none;
}
#navbar .nav-recharge-link.md-event-nav-link:hover{
  color:#2f1f00!important;
  background:linear-gradient(135deg,#fff0ab 0%,#ffd14c 42%,#c07e12 100%)!important;
  border-color:rgba(255,235,170,.9)!important;
  transform:translateY(-1px);
  box-shadow:0 0 0 1px rgba(255,247,207,.20) inset, 0 14px 34px rgba(224,163,37,.34), 0 0 24px rgba(255,218,116,.32)!important;
}
#navbar .nav-recharge-link.md-event-nav-link i{color:#6b4700!important}
#navbar .nav-recharge-link .nav-recharge-bonus{
  display:inline-flex;align-items:center;justify-content:center;
  margin-left:8px;padding:2px 7px;min-width:44px;
  border-radius:999px;background:rgba(78,51,0,.14);color:inherit;
  font-size:10px;font-weight:900;letter-spacing:.03em;line-height:1.25;
  border:1px solid rgba(97,63,0,.10);
}
@keyframes mdNavbarGoldPulse{
  0%{box-shadow:0 0 0 1px rgba(255,239,182,.18) inset, 0 10px 28px rgba(224,163,37,.24), 0 0 12px rgba(255,212,90,.16)}
  100%{box-shadow:0 0 0 1px rgba(255,243,197,.24) inset, 0 14px 34px rgba(224,163,37,.34), 0 0 22px rgba(255,223,125,.28)}
}
@keyframes mdNavbarGoldShine{
  0%,20%{transform:translateX(-125%)}
  45%,100%{transform:translateX(135%)}
}
@media (max-width: 991.98px){
  #navbar .nav-recharge-link .nav-recharge-bonus{margin-left:10px}
}
@media (prefers-reduced-motion:reduce){
  #navbar .nav-recharge-link.md-event-nav-link,
  #navbar .nav-recharge-link.md-event-nav-link::before{animation:none!important}
}


/* FINAL override: MD_EVENT navbar recharge button */
html body #navbar .navbar-nav .nav-link.nav-recharge-link.md-event-nav-link,
html body #navbar .navbar-nav .nav-recharge-link.md-event-nav-link{
  position:relative!important;
  overflow:hidden!important;
  background:linear-gradient(135deg,#fff0a8 0%,#ffd24a 45%,#b97819 100%)!important;
  color:#382400!important;
  border:1px solid rgba(255,225,136,.78)!important;
  box-shadow:0 0 0 1px rgba(255,245,204,.16) inset,0 12px 28px rgba(224,163,37,.30),0 0 18px rgba(255,212,90,.24)!important;
  animation:sakuraMdNavPulse 2s ease-in-out infinite alternate!important;
}
html body #navbar .navbar-nav .nav-link.nav-recharge-link.md-event-nav-link::before,
html body #navbar .navbar-nav .nav-recharge-link.md-event-nav-link::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:linear-gradient(115deg,transparent 0%,transparent 35%,rgba(255,255,255,.30) 50%,transparent 62%,transparent 100%)!important;
  transform:translateX(-125%)!important;
  animation:sakuraMdNavShine 3s ease-in-out infinite!important;
  pointer-events:none!important;
}
html body #navbar .navbar-nav .nav-link.nav-recharge-link.md-event-nav-link:hover,
html body #navbar .navbar-nav .nav-recharge-link.md-event-nav-link:hover,
html body #navbar .navbar-nav .nav-link.nav-recharge-link.md-event-nav-link:focus,
html body #navbar .navbar-nav .nav-recharge-link.md-event-nav-link:focus{
  background:linear-gradient(135deg,#fff3b8 0%,#ffd048 45%,#c78310 100%)!important;
  color:#2f1d00!important;
  border-color:rgba(255,236,182,.96)!important;
  box-shadow:0 0 0 1px rgba(255,247,207,.20) inset,0 16px 36px rgba(224,163,37,.36),0 0 26px rgba(255,218,116,.34)!important;
  transform:translateY(-1px)!important;
}
html body #navbar .navbar-nav .nav-link.nav-recharge-link.md-event-nav-link i,
html body #navbar .navbar-nav .nav-recharge-link.md-event-nav-link i{color:#6b4700!important}
html body #navbar .navbar-nav .nav-recharge-link.md-event-nav-link .nav-recharge-bonus,
html body #navbar .nav-recharge-link.md-event-nav-link .nav-recharge-bonus{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  margin-left:8px!important;padding:2px 7px!important;min-width:44px!important;
  border-radius:999px!important;background:rgba(78,51,0,.14)!important;color:#4a3000!important;
  font-size:10px!important;font-weight:900!important;letter-spacing:.03em!important;line-height:1.25!important;
  border:1px solid rgba(97,63,0,.10)!important;
}
@keyframes sakuraMdNavPulse{
  0%{box-shadow:0 0 0 1px rgba(255,239,182,.18) inset,0 10px 24px rgba(224,163,37,.24),0 0 12px rgba(255,212,90,.16)}
  100%{box-shadow:0 0 0 1px rgba(255,243,197,.24) inset,0 16px 34px rgba(224,163,37,.36),0 0 24px rgba(255,223,125,.30)}
}
@keyframes sakuraMdNavShine{
  0%,20%{transform:translateX(-125%)}
  45%,100%{transform:translateX(135%)}
}
@media (prefers-reduced-motion:reduce){
  html body #navbar .navbar-nav .nav-link.nav-recharge-link.md-event-nav-link,
  html body #navbar .navbar-nav .nav-recharge-link.md-event-nav-link,
  html body #navbar .navbar-nav .nav-link.nav-recharge-link.md-event-nav-link::before,
  html body #navbar .navbar-nav .nav-recharge-link.md-event-nav-link::before{animation:none!important}
}
