/* Homepage geometry follows Reborn_MU_Template.html.
   Real server/module values replace only the reference's demonstration content. */
.rb_home .home-page { min-width:0; }
.rb_home .brand>span { max-width:none; white-space:nowrap; font-size:28px; }
.rb_home .nav-shell { gap:36px; }
.rb_home .topbar nav { gap:28px; }
.rb_home .header-meta { gap:20px; }
.rb_home .home-online { display:flex; gap:7px; align-items:center; }
.rb_home .home-online i { width:10px; height:10px; flex:0 0 10px; border-radius:50%; background:#20cf4e; box-shadow:0 0 8px #20cf4e55; }
.rb_home .banner { height:clamp(325px,30vw,390px); min-height:0; }
.rb_home .account-card { padding:20px 25px 18px; }
.rb_home .home-login-form { margin:0; }
.rb_home .field-shell { font-weight:400; }
.rb_home .field-shell input { color:#c5d0da; -webkit-text-fill-color:#c5d0da; }
.rb_home .home-login-form .forgot-link { text-align:center; color:#c1cad2; font-weight:400; }
.rb_home .home-login-form .btn { font-weight:600; }
.rb_home .home-login-form .create-button { font-weight:400; color:#e4ca89; }
.rb_home .home-login-form .rb_custom_select { min-width:0; }
.rb_home .server-info-bar { margin-bottom:14px; }
.rb_home .server-info-title a { color:inherit; font-weight:inherit; }
.rb_home .server-info-title a:hover { color:var(--gold); }
.rb_home .server-stat { min-width:0; }
.rb_home .server-stat strong { overflow-wrap:anywhere; }
.rb_home .status-value.is-offline { color:#c0a39a; }
.rb_home .status-value.is-offline i { background:#a76e62; }
.rb_home .leaderboard-card { overflow:hidden; }
.rb_home .leaderboard-head a { font-weight:400; }
.rb_home .reference-table .portrait-name { cursor:default; white-space:nowrap; }
.rb_home .reference-table a { color:inherit; font-weight:400; }
.rb_home .reference-table a:hover { color:var(--gold); }
.rb_home .reference-table .mu_top_name { display:inline-flex; gap:6px; font:inherit; }
.rb_home .reference-table .mu_vip_badge { font-family:Arial,sans-serif; }
.rb_home .reference-table th:last-child { text-align:left; }
.rb_home .reference-table .home-rank-empty { height:285px; color:var(--muted); font:14px Georgia,serif; }
.rb_home .home-guild-mark,.rb_home .home-character-symbol { display:inline-flex; align-items:center; justify-content:center; flex:0 0 40px; width:40px; height:40px; border:1px solid #a18a6559; border-radius:1px; background:#1c2b3c; box-shadow:0 1px 3px #0008; color:var(--gold); }
.rb_home .home-guild-mark svg,.rb_home .home-guild-mark img { width:100%; height:100%; max-width:100%; image-rendering:pixelated; }
.rb_home .home-guild-mark .mu_castle_empty_logo { width:100%; height:100%; background:transparent; font:26px Georgia,serif; border:0; }
.rb_home .siege-facts { grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.1fr); }
.rb_home .siege-fact { min-width:0; }
.rb_home .siege-owner strong { min-width:0; overflow-wrap:anywhere; }
.rb_home .siege-owner .home-guild-mark { flex-shrink:0; }
.rb_home .siege-countdown { font-size:clamp(17px,1.75vw,25px)!important; white-space:normal; }
.rb_home .siege-actions a { font-weight:400; }
.rb_home .home-siege-empty { color:#9babb9; font-size:14px; }
.rb_home .update-strip { margin-bottom:14px; }
.rb_home .update-read { margin-left:auto; white-space:nowrap; font:14px Georgia,serif; color:#dfc481; }
.rb_home .footer { padding-top:28px; padding-bottom:22px; }
.rb_home .footer .brand>span { font-size:21px; }
.rb_home .footer .footer-motto { pointer-events:none; }
@media(min-width:1300px) {
  .rb_home .account-card { padding-top:26px; }
}
@media(max-width:1250px) {
  .rb_home .brand>span { font-size:24px; }
  .rb_home .nav-shell { gap:24px; }
  .rb_home .header-meta { gap:13px; }
  .rb_home .topbar nav { gap:24px; }
  .rb_home .header-meta>span:not(.home-online):first-child { display:none; }
}
@media(max-width:1150px) {
  .rb_home .account-card { padding:19px 23px; }
}
@media(max-width:950px) {
  .rb_home .header-meta { display:none; }
  .rb_home .brand>span { max-width:none; font-size:26px; }
  .rb_home .account-card { padding-inline:20px; }
  .rb_home .banner-copy { max-width:90%; }
  .rb_home .home-guild-mark,.rb_home .home-character-symbol { flex-basis:34px; width:34px; height:36px; }
}
@media(max-width:760px) {
  .rb_home .nav-shell { gap:12px; }
  .rb_home .brand>span { max-width:none; font-size:24px; }
  .rb_home .banner { height:360px; min-height:0; }
  .rb_home .banner-copy { max-width:76%; padding-left:32px; }
  .rb_home .banner h1 { font-size:38px; }
  .rb_home .account-card { padding:19px 22px; }
  .rb_home .home-login-form .rb_custom_select { grid-column:1/-1; }
  .rb_home .home-login-form:has(.rb_custom_select) .btn-gold { grid-row:auto; }
  .rb_home .home-login-form:has(.rb_custom_select) .forgot-link { grid-row:auto; }
  .rb_home .home-login-form:has(.rb_custom_select) .create-button { grid-row:auto; }
  .rb_home .home-guild-mark,.rb_home .home-character-symbol { flex-basis:40px; width:40px; height:40px; }
  .rb_home .reference-table .home-rank-empty { height:265px; }
  .rb_home .siege-countdown { font-size:23px!important; }
  .rb_home .update-read { font-size:14px; }
  .rb_home .footer { padding-top:24px; padding-bottom:80px; }
}
@media(max-width:390px) {
  .rb_home .brand>span { font-size:21px; max-width:none; }
  .rb_home .banner { height:335px; }
  .rb_home .banner-copy { max-width:88%; padding-left:28px; }
  .rb_home .banner h1 { font-size:32px; }
  .rb_home .account-card { padding-inline:18px; }
  .rb_home .home-guild-mark,.rb_home .home-character-symbol { flex-basis:33px; width:33px; height:36px; }
  .rb_home .siege-facts { grid-template-columns:1fr 1fr; }
  .rb_home .siege-countdown { font-size:27px!important; }
}

.rb_home .account-note a { color:inherit; font-weight:400; }
.rb_home .account-note a:hover { color:var(--gold); }
@media(max-width:390px) {
  .rb_home .brand>span { font-size:clamp(17px,5.4vw,21px); }
}

/* Profile images occupy the original design's portrait slot beside the name. */
.rb_home .home-class-portrait { display:block; flex:0 0 40px; width:40px; height:40px; object-fit:cover; object-position:center 22%; border:1px solid #a18a6559; box-shadow:0 1px 3px #0008; border-radius:1px; }
.rb_home .home-players .reference-table th:nth-child(n+3) { white-space:normal; }
.rb_home .home-players .reference-table td:nth-child(n+3) { font-variant-numeric:tabular-nums; }
@media(max-width:390px) {
 .rb_home .home-class-portrait { flex-basis:33px; width:33px; height:36px; }
}

/* Identical navigation and online counter on every page. */
.rb_new .topbar .brand>span { max-width:none; white-space:nowrap; font-size:28px; }
.rb_new .topbar .nav-shell { gap:36px; }
.rb_new .topbar nav { gap:28px; }
.rb_new .topbar .header-meta { display:flex; gap:20px; }
.rb_new .topbar .home-online { display:flex; gap:7px; align-items:center; }
.rb_new .topbar .home-online i { width:10px; height:10px; flex:0 0 10px; border-radius:50%; background:#20cf4e; box-shadow:0 0 8px #20cf4e55; }
@media(max-width:1250px) {
 .rb_new .topbar .brand>span { font-size:24px; }
 .rb_new .topbar .nav-shell { gap:24px; }
 .rb_new .topbar .header-meta { gap:13px; }
 .rb_new .topbar nav { gap:24px; }
 .rb_new .topbar .header-meta>span:not(.home-online):first-child { display:none; }
}
@media(max-width:950px) {
 .rb_new .topbar .brand>span { font-size:26px; }
 .rb_new .topbar .nav-shell { gap:12px; }
}
@media(max-width:760px) {
 .rb_new .topbar { height:auto; min-height:76px; }
 .rb_new .topbar .nav-shell { flex-wrap:wrap; padding-block:8px; row-gap:4px; }
 .rb_new .topbar .brand>span { font-size:clamp(17px,5.4vw,24px); }
 .rb_new .topbar .mobile-toggle { margin-left:auto; }
 .rb_new .topbar .header-meta { order:3; flex-basis:100%; justify-content:flex-end; font-size:12px; }
 .rb_new .topbar .rb_language_switch button { min-height:24px; }
}
@media(max-width:950px) {
 .rb_new .topbar { height:auto; min-height:76px; }
 .rb_new .topbar .nav-shell { flex-wrap:wrap; padding-block:8px; row-gap:4px; }
 .rb_new .topbar .header-meta { order:4; flex-basis:100%; justify-content:flex-end; }
}
@media(max-width:760px) {
 .rb_new .topbar .mobile-toggle { order:2; }
 .rb_new .topbar nav { top:100%; }
}
/* Plain ranking names have no link hover treatment. */
.rb_home .reference-table .portrait-name,
.rb_home .reference-table .portrait-name:hover { color:#e9e7e4; cursor:default; }

/* Four separate statistics following the player's name. */
.rb_home .home-players .reference-table { min-width:390px; }
.rb_home .home-players .reference-table th,
.rb_home .home-players .reference-table td { padding-inline:7px; }
.rb_home .home-players .reference-table th:nth-child(n+3),
.rb_home .home-players .reference-table td:nth-child(n+3) { text-align:center; white-space:nowrap; }
.rb_home .home-players .portrait-name { gap:10px; }
.rb_home .home-players .reference-table-wrap { scrollbar-width:thin; scrollbar-color:#998457 #142330; }
@media(max-width:390px) {
 .rb_home .home-players .reference-table { min-width:370px; }
 .rb_home .home-players .reference-table th,
 .rb_home .home-players .reference-table td { padding-inline:5px; }
 .rb_home .home-players .portrait-name { gap:8px; }
}

/* Online server status matches the header indicator. */
.rb_home .server-info-bar .status-value:not(.is-offline) { color:#fff; }
.rb_home .server-info-bar .status-value:not(.is-offline) i { background:#20cf4e; box-shadow:0 0 8px #20cf4e55; }

/* Launch (open beta) background and text on the slider — $LaunchBanner in core/config.php */
.rb_new .banner.has-launch-bg { border-color:#f5bb6566; box-shadow:inset 0 0 0 1px #f47a3222; }
.rb_new .rb_launch_fx { position:absolute; inset:0; z-index:0; overflow:hidden; pointer-events:none; background:radial-gradient(ellipse 60% 90% at 12% 55%,#f47a3238,transparent 70%),radial-gradient(ellipse 45% 70% at 88% 30%,#f5bb651f,transparent 70%),linear-gradient(90deg,#1b0e0a80,transparent 65%); }
.rb_new .rb_launch_fx::after { content:""; position:absolute; left:0; right:0; bottom:0; height:3px; background:linear-gradient(90deg,transparent,#f5bb65,#f47a32,#f5bb65,transparent); opacity:.85; }
.rb_new .rb_launch_shine { position:absolute; top:-20%; bottom:-20%; left:-40%; width:30%; background:linear-gradient(100deg,transparent,#ffe2a61f 45%,#fff3d02e 50%,#ffe2a61f 55%,transparent); transform:skewX(-18deg); animation:rbLaunchShine 7s ease-in-out infinite; }
.rb_new .rb_launch_mark { position:absolute; right:3%; bottom:22px; font:bold clamp(100px,13vw,180px)/.8 Georgia,serif; letter-spacing:-2px; color:#f5bb651f; -webkit-text-stroke:2px #f5bb65b3; text-shadow:0 0 30px #f47a3266; filter:drop-shadow(0 4px 14px #07111bcc); user-select:none; white-space:nowrap; }
.rb_new .rb_launch_badge { display:inline-flex; align-items:center; gap:9px; margin:0 0 14px; padding:6px 15px 6px 12px; color:#ffe7b8; background:linear-gradient(90deg,#2a1710e6,#1a1119cc); border:1px solid #f5bb6599; border-radius:30px; font:bold 13px/1.2 var(--sans); letter-spacing:1.6px; text-transform:uppercase; box-shadow:0 4px 18px #f47a3233; }
.rb_new .rb_launch_badge i { width:9px; height:9px; border-radius:50%; background:#2fd466; box-shadow:0 0 0 0 #2fd466aa; animation:rbLaunchDot 1.8s ease-out infinite; }
.rb_new .banner.has-launch-text h1 { background:linear-gradient(180deg,#fff4dc,#f5bb65 70%,#f0923f); -webkit-background-clip:text; background-clip:text; color:transparent; text-shadow:none; filter:drop-shadow(0 2px 10px #07111b99); }
.rb_new .banner.has-launch-text .banner-copy p { max-width:560px; line-height:1.5; }
@keyframes rbLaunchShine { 0%,55% { left:-40%; } 100% { left:130%; } }
@keyframes rbLaunchDot { 0% { box-shadow:0 0 0 0 #2fd466aa; } 100% { box-shadow:0 0 0 9px #2fd46600; } }
@media (max-width:760px) { .rb_new .rb_launch_mark { font-size:96px; right:-2%; opacity:.8; } .rb_new .rb_launch_badge { font-size:11.5px; letter-spacing:1.1px; } }
@media (prefers-reduced-motion:reduce) { .rb_new .rb_launch_shine,.rb_new .rb_launch_badge i { animation:none; } }
.rb_new .banner.has-opening-timer .rb_launch_mark { opacity:.35; }
/* Home Castle Siege picture: show the whole character, not a cropped corner */
.rb_new .siege-art { background-size:cover; background-position:48% 12%; }
@media (max-width:760px) { .rb_new .siege-art { background-size:cover; background-position:48% 18%; } }

/* Home "О сервере" strip: version, experience and a live online cell */
.rb_new .server-info-bar.rb_live_bar_wrap { grid-template-columns:1.6fr 1fr 1fr 1.9fr; padding:0; min-height:86px; overflow:hidden; }
.rb_new .rb_live_bar_wrap .server-info-title { padding:20px 18px; }
.rb_new .rb_live { align-self:stretch; display:flex; flex-direction:column; justify-content:center; text-align:left; padding:14px 22px; background:linear-gradient(90deg,#ffffff03,#f5bb650a); }
.rb_new .rb_live_top { display:flex; justify-content:space-between; align-items:center; gap:10px; }
.rb_new .rb_live .rb_live_top span { margin:0; }
.rb_new .rb_live .status-value { display:inline-flex; align-items:center; gap:7px; font:600 12px/1 var(--sans); font-style:normal; color:#cfd6dc !important; }
.rb_new .rb_live .status-value i { width:8px; height:8px; border-radius:50%; flex:0 0 8px; }
.rb_new .rb_live .status-value.is-offline { color:#f3a3a5 !important; }
.rb_new .rb_live_num { display:flex; align-items:baseline; gap:7px; margin-top:4px; }
.rb_new .rb_live .rb_live_num strong { display:inline; font-size:22px; line-height:1.1; color:#e5e5e5; }
.rb_new .rb_live_num small { font-size:12px; color:#9ba9b7; }
.rb_new .rb_live.is-offline .rb_live_num strong { color:#c9b3b0; }
.rb_new .rb_live_line { height:4px; margin-top:8px; border-radius:3px; background:#0a131c; box-shadow:inset 0 0 0 1px #9aa9b41a; overflow:hidden; }
.rb_new .rb_live_line b { display:block; height:100%; border-radius:3px; background:linear-gradient(90deg,#b8914f,#f0d38c); transition:width .6s; }
@media (max-width:760px) {
  .rb_new .server-info-bar.rb_live_bar_wrap { grid-template-columns:1fr 1fr; }
  .rb_new .rb_live_bar_wrap .server-info-title { grid-column:1/-1; padding:17px 19px; }
  .rb_new .rb_live_bar_wrap .server-stat:nth-child(2) { border-left:0; }
  .rb_new .rb_live_bar_wrap .server-stat:nth-child(2),.rb_new .rb_live_bar_wrap .server-stat:nth-child(3) { border-bottom:1px solid var(--line); }
  .rb_new .rb_live_bar_wrap .rb_live { grid-column:1/-1; border-left:0; border-bottom:0; padding:14px 19px; }
}

/* Header on tablets/phones: language switch sits on the same row as the logo and menu button */
@media (max-width:950px) {
  .rb_new .topbar { height:auto; min-height:70px; }
  .rb_new .topbar .nav-shell { flex-wrap:nowrap; min-height:70px; padding-block:0; row-gap:0; }
  .rb_new .topbar .header-meta { display:flex; order:2; flex:0 0 auto; flex-basis:auto; margin-left:auto; justify-content:flex-end; }
}
@media (max-width:760px) {
  .rb_new .topbar .nav-shell { gap:10px; }
  .rb_new .topbar .brand { order:1; min-width:0; flex:0 1 auto; }
  .rb_new .topbar .brand span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .rb_new .topbar .mobile-toggle { order:3; margin-left:0; }
}
@media (max-width:370px) {
  .rb_new .topbar .brand .phoenix-mark { width:38px; height:auto; }
  .rb_new .topbar .brand span { font-size:17px; }
}


/* ===== Livelier home page: login card, hover highlights, scroll reveal, logo glow ===== */
/* Login card: glass panel with gold corner brackets and the phoenix crest */
.rb_new .account-card.is-guest { position:relative; overflow:hidden; text-align:center; background:radial-gradient(ellipse 80% 45% at 50% 0,#f5bb651c,transparent 70%),linear-gradient(180deg,#152332f2,#0e1822f7); border-color:#caa25740; box-shadow:inset 0 1px 0 #ffffff0a, 0 18px 40px #0007; }
.rb_new .account-corner { position:absolute; width:22px; height:22px; border:0 solid #d9b36a; pointer-events:none; opacity:.85; }
.rb_new .account-corner.is-tl { top:8px; left:8px; border-top-width:2px; border-left-width:2px; }
.rb_new .account-corner.is-br { right:8px; bottom:8px; border-right-width:2px; border-bottom-width:2px; }
.rb_new .account-crest { position:relative; display:block; width:38px; height:auto; margin:0 auto 6px; filter:drop-shadow(0 0 10px #f5bb6555); }
.rb_new .account-card.is-guest h2 { position:relative; text-align:center; margin-bottom:18px; background:linear-gradient(180deg,#fff1d2,#e8c170); -webkit-background-clip:text; background-clip:text; color:transparent; }
.rb_new .account-card.is-guest .field-shell input { background:#0f1b27; border-color:#8194a833; transition:border-color .2s, box-shadow .2s; }
.rb_new .account-card.is-guest .field-shell input:focus { outline:none; border-color:#d9b36a99; box-shadow:0 0 0 3px #d9b36a1f; }
.rb_new .account-card.is-guest .btn-gold { transition:filter .2s, transform .2s, box-shadow .2s; }
.rb_new .account-card.is-guest .btn-gold:hover { filter:brightness(1.07); box-shadow:0 6px 18px #f5bb6533; transform:translateY(-1px); }
.rb_new .account-card.is-guest .create-button { transition:background .2s, border-color .2s; }
.rb_new .account-card.is-guest .create-button:hover { background:#d9b36a14; border-color:#e8c170; }

/* Panels light up under the cursor */
.rb_home .home-page .panel { transition:border-color .3s, box-shadow .3s, opacity .7s ease, transform .7s ease; }
.rb_home .home-page .panel:hover { border-color:#caa25780; box-shadow:0 0 0 1px #caa25722, 0 14px 34px #0006; }
.rb_home .home-page .banner.panel:hover, .rb_home .home-page .banner:hover { box-shadow:none; }

/* Ranking rows: gold wash + left accent on hover, first place softly highlighted */
.rb_home .reference-table tbody tr td { transition:background-color .2s, box-shadow .2s; }
.rb_home .reference-table tbody tr:hover td { background-color:#caa2571c; }
.rb_home .reference-table tbody tr:hover td:first-child { box-shadow:inset 3px 0 0 #e8c170; }
.rb_home .reference-table tbody tr:hover .home-class-portrait, .rb_home .reference-table tbody tr:hover .home-guild-mark img { filter:brightness(1.15) drop-shadow(0 0 6px #f5bb6555); }
.rb_home .home-class-portrait, .rb_home .home-guild-mark img { transition:filter .2s; }

/* Scroll reveal (only when the script is running) */
.rb-reveal .rb_home .home-page .panel:not(.is-shown), .rb-reveal .rb_home .home-page .server-info-bar:not(.is-shown) { opacity:0; transform:translateY(22px); }
.rb-reveal .rb_home .home-page .panel.is-shown { transition-delay:0ms, 0ms, var(--rb-delay,0ms), var(--rb-delay,0ms); }

/* Logo: golden glow and a light sweep on hover, like the slider effect */
.rb_new .topbar .brand { position:relative; }
.rb_new .topbar .brand .phoenix-mark { transition:filter .3s, transform .3s; }
.rb_new .topbar .brand>span { transition:text-shadow .3s, color .3s; }
.rb_new .topbar .brand::before { content:""; position:absolute; left:-6px; top:50%; width:62px; height:62px; transform:translateY(-50%) scale(.8); border-radius:10px; background:radial-gradient(circle,#f5bb6538,transparent 70%); opacity:0; transition:opacity .3s, transform .3s; pointer-events:none; }
.rb_new .topbar .brand::after { content:""; position:absolute; left:-6px; top:50%; width:62px; height:62px; transform:translateY(-50%); border-radius:10px; background:linear-gradient(115deg,transparent 35%,#fff5d855 50%,transparent 65%) no-repeat; background-size:250% 100%; background-position:160% 0; opacity:0; pointer-events:none; }
.rb_new .topbar .brand:hover::before { opacity:1; transform:translateY(-50%) scale(1); }
.rb_new .topbar .brand:hover::after { opacity:1; animation:rbLogoSweep 1.1s ease forwards; }
.rb_new .topbar .brand:hover .phoenix-mark { filter:brightness(1.18) drop-shadow(0 0 12px #f5bb65aa); transform:scale(1.05); }
.rb_new .topbar .brand:hover>span { color:#f3d68f; text-shadow:0 0 14px #f5bb6566; }
@keyframes rbLogoSweep { from { background-position:160% 0; } to { background-position:-60% 0; } }
@media (prefers-reduced-motion: reduce) { .rb_new .topbar .brand:hover::after { animation:none; } .rb_home .home-page .panel { transition:none; } }

/* Hero: the login card sits inside the slider on the right (wide screens); tablets/phones keep the card below */
@media (min-width:951px) {
  .rb_home .top-grid { display:block; position:relative; }
  .rb_home .top-grid > .banner { height:auto; min-height:470px; background-position:50% 22%; }
  .rb_home .top-grid > .banner .rb_launch_mark { right:350px; bottom:26px; font-size:clamp(90px,10vw,150px); }
  .rb_home .top-grid > .banner .banner-copy { max-width:calc(100% - 420px); padding-top:56px; }
  .rb_home .top-grid > .banner .slider-arrow.next { right:334px; }
  .rb_home .top-grid > .banner .slider-dots { padding-right:340px; }
  /* Opening timer: one compact row at the top left of the slider, the slider keeps its height */
  .rb_home .top-grid > .banner .rb_opening_timer { top:22px; left:44px; right:auto; bottom:auto; width:auto; flex-direction:row; align-items:center; gap:14px; padding:8px 12px 8px 16px; }
  .rb_home .top-grid > .banner .rb_opening_timer_title { font-size:13px; white-space:nowrap; }
  .rb_home .top-grid > .banner .rb_opening_timer_units { gap:6px; }
  .rb_home .top-grid > .banner .rb_opening_timer_unit { width:44px; height:44px; }
  .rb_home .top-grid > .banner .rb_opening_timer_unit b { font-size:20px; }
  .rb_home .top-grid > .banner .rb_opening_timer_unit small { font-size:7px; margin-top:4px; }
  .rb_home .top-grid > .account-card { position:absolute; z-index:4; top:50%; right:26px; transform:translateY(-50%); width:300px; max-height:calc(100% - 36px); overflow:auto; margin:0; background:radial-gradient(ellipse 80% 45% at 50% 0,#f5bb651c,transparent 70%),linear-gradient(180deg,#132130e0,#0b141deb); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); border-color:#caa25759; box-shadow:0 20px 50px #000a; }
  .rb_home .top-grid > .account-card:hover { border-color:#caa25799; box-shadow:0 20px 50px #000a, 0 0 0 1px #caa25722; }
}
@media (min-width:951px) and (max-width:1150px) {
  .rb_home .top-grid > .account-card { width:270px; right:18px; }
  .rb_home .top-grid > .banner .banner-copy { max-width:calc(100% - 370px); }
  .rb_home .top-grid > .banner .slider-arrow.next { right:296px; }
  .rb_home .top-grid > .banner .rb_launch_mark { right:306px; }
}
/* The card inside the slider does not take part in the scroll animation */
.rb-reveal .rb_home .home-page .top-grid > .account-card:not(.is-shown) { opacity:1; transform:none; }
@media (min-width:951px) { .rb-reveal .rb_home .home-page .top-grid > .account-card:not(.is-shown) { transform:translateY(-50%); } }

/* Top menu hover: warm light rising from the bottom edge, a thin gold line growing from the centre, soft text glow */
.rb_new .topbar nav>a { transition:color .25s, text-shadow .25s; }
.rb_new .topbar nav>a:hover { color:#f3d68f; text-shadow:0 0 12px #f5bb6559; }
@media (min-width:851px) {
  .rb_new .topbar nav>a::before { content:""; position:absolute; left:-14px; right:-14px; top:0; bottom:0; pointer-events:none; opacity:0; transition:opacity .3s, background-size .35s ease;
    background:linear-gradient(90deg,transparent,#f0c46a,transparent) 50% calc(100% - 14px)/0% 1px no-repeat,
               radial-gradient(60% 45% at 50% 100%,#f5bb652e,transparent 72%) 0 0/100% 100% no-repeat; }
  .rb_new .topbar nav>a:hover::before { opacity:1; background-size:70% 1px, 100% 100%; }
  /* The current page looks the same as a hovered item: warm light + gold line (instead of the old flat underline) */
  .rb_new .topbar nav>a.active { color:#f3d68f; text-shadow:0 0 12px #f5bb6559; }
  .rb_new .topbar nav>a.active::before { opacity:1; background-size:70% 1px, 100% 100%; }
  .rb_new .topbar nav>a.active::after { display:none; }
}
@media (max-width:850px) { .rb_new .topbar nav>a:hover { background:#f5bb650f; } }

/* Rankings: first place — gold gradient row, glowing left bar and a light sweep every few seconds */
.rb_home .reference-table tbody tr:nth-child(1) { background:linear-gradient(100deg,transparent 35%,#fff1cc24 48%,transparent 60%) 160% 0/260% 100% no-repeat, linear-gradient(90deg,#caa25742,#caa25716 45%,transparent 88%); animation:rbTopSweep 4.5s ease-in-out infinite; }
.rb_home .reference-table tbody tr:nth-child(1) td:first-child { box-shadow:inset 3px 0 0 #e8c170; animation:rbTopBar 2.2s ease-in-out infinite; }
.rb_home .reference-table tbody tr:nth-child(1) td:first-child { color:#f3d27a; text-shadow:0 0 10px #f5bb6566; }
@keyframes rbTopSweep { 0%,55% { background-position:160% 0, 0 0; } 100% { background-position:-60% 0, 0 0; } }
@keyframes rbTopBar { 0%,100% { box-shadow:inset 3px 0 0 #e8c170; } 50% { box-shadow:inset 3px 0 0 #ffe29a, inset 14px 0 18px -10px #f5bb6588; } }
@media (prefers-reduced-motion: reduce) { .rb_home .reference-table tbody tr:nth-child(1), .rb_home .reference-table tbody tr:nth-child(1) td:first-child { animation:none; } }

/* ===== Home: "Living world" scene after Castle Siege (art-2) ===== */
/* Wide screens: the block has the picture's proportions, so both characters are fully visible. The picture itself stays still — only light effects move. */
.rb_new .rb-fx-world { position:relative; isolation:isolate; aspect-ratio:1672/900; min-height:380px; margin-top:16px; overflow:hidden; display:grid; place-items:center; text-align:center; background:#07111c; border-color:#8da3b63d; }
.rb_new .rb-fx-world-layer, .rb_new .rb-fx-world-shade, .rb_new .rb-fx-world-fog, .rb_new .rb-fx-world-embers, .rb_new .rb-fx-world-glow { position:absolute; pointer-events:none; }
.rb_new .rb-fx-world-bg { z-index:-5; inset:0; background:var(--asset-2) 50% 42%/cover no-repeat; }
.rb_new .rb-fx-world-shade { z-index:-2; inset:0; background:radial-gradient(ellipse 46% 55% at 50% 50%,#050c14a8,transparent 75%),linear-gradient(0deg,#07111cd9 0%,transparent 38%,transparent 85%,#07111c66 100%); }
/* Red beacon on the central castle tower (moves together with the picture) */
.rb_new .rb-fx-fire { position:absolute; z-index:1; left:var(--rb-beacon-x,50%); top:var(--rb-beacon-y,32%); width:64px; height:54px; transform:translate(-50%,-50%); background:radial-gradient(ellipse,#fff0dca1 0%,#ff9d878c 12%,#f44b5b60 32%,#d5254120 58%,transparent 73%); mix-blend-mode:screen; animation:rbWorldBeacon 2.4s ease-in-out infinite; }
.rb_new .rb-fx-fire::after { content:""; position:absolute; left:calc(50% - 2px); bottom:47%; width:4px; height:var(--rb-beacon-height,100px); background:linear-gradient(to top,#ffbdadb8,#f6577975 38%,#e852702b 78%,transparent); filter:blur(1px); box-shadow:0 0 12px #f84b6966; animation:rbWorldBeam 3s ease-in-out infinite; }
/* Rising embers on the fire side */
.rb_new .rb-fx-world-embers { z-index:0; left:0; top:0; width:45%; height:100%; }
.rb_new .rb-fx-world-embers i { position:absolute; bottom:-10px; width:3px; height:3px; border-radius:50%; background:#ffb36a; box-shadow:0 0 8px 2px #ff6a2a99; opacity:0; animation:rbWorldEmber 7s linear infinite; }
.rb_new .rb-fx-world-embers i:nth-child(1) { left:8%; animation-delay:0s; } .rb_new .rb-fx-world-embers i:nth-child(2) { left:18%; animation-delay:1.3s; animation-duration:8s; }
.rb_new .rb-fx-world-embers i:nth-child(3) { left:27%; animation-delay:2.6s; } .rb_new .rb-fx-world-embers i:nth-child(4) { left:36%; animation-delay:.7s; animation-duration:9s; }
.rb_new .rb-fx-world-embers i:nth-child(5) { left:12%; animation-delay:3.9s; animation-duration:6.5s; } .rb_new .rb-fx-world-embers i:nth-child(6) { left:22%; animation-delay:5.1s; }
.rb_new .rb-fx-world-embers i:nth-child(7) { left:31%; animation-delay:4.4s; animation-duration:8.5s; } .rb_new .rb-fx-world-embers i:nth-child(8) { left:4%; animation-delay:6s; animation-duration:7.5s; }
/* Low clouds drifting across */
.rb_new .rb-fx-world-fog { z-index:1; left:-35%; bottom:-12%; width:150%; height:42%; opacity:.8; filter:blur(12px); background:radial-gradient(ellipse at 18% 64%,#e0eef15c 0%,#c0d6df38 15%,transparent 32%),radial-gradient(ellipse at 48% 43%,#d4e4ed63 0%,#b1c9d834 18%,transparent 37%),radial-gradient(ellipse at 80% 72%,#dbeaf268 0%,#b6cbd940 16%,transparent 34%); animation:rbWorldCloud 9s ease-in-out infinite alternate; }
.rb_new .rb-fx-world-fog.rb-fx-world-fog-two { bottom:-2%; left:-15%; height:28%; opacity:.55; filter:blur(18px); animation:rbWorldCloudBack 12s ease-in-out infinite alternate; }
.rb_new .rb-fx-world-copy { position:relative; z-index:3; width:min(700px,84%); padding:40px 20px; }
.rb_new .rb-fx-world-kicker { display:flex; justify-content:center; align-items:center; gap:12px; color:#ddbd7f; letter-spacing:4px; font-size:11px; text-transform:uppercase; }
.rb_new .rb-fx-world-kicker::before, .rb_new .rb-fx-world-kicker::after { content:""; width:34px; height:1px; background:#ddb9688c; }
.rb_new .rb-fx-world h2 { margin:17px 0 14px; color:#fff0cf; font:400 clamp(35px,5vw,58px)/1.05 Georgia,serif; text-shadow:0 4px 22px #000; }
.rb_new .rb-fx-world p { margin:auto; max-width:590px; color:#d3dde5; font-size:clamp(14px,1.7vw,18px); text-shadow:0 2px 9px #000; }
@keyframes rbWorldBeacon { 0%,100% { opacity:.28; filter:brightness(.8); } 42% { opacity:1; filter:brightness(1.6); } 55% { opacity:.6; filter:brightness(1); } 70% { opacity:.9; filter:brightness(1.35); } }
@keyframes rbWorldBeam { 0%,100% { opacity:.4; } 50% { opacity:1; } }
@keyframes rbWorldEmber { 0% { opacity:0; transform:translate(0,0); } 12% { opacity:.9; } 80% { opacity:.5; } 100% { opacity:0; transform:translate(40px,-420px); } }
@keyframes rbWorldCloud { from { transform:translate3d(-6%,7%,0) scale(1); } to { transform:translate3d(24%,-10%,0) scale(1.08); } }
@keyframes rbWorldCloudBack { from { transform:translate3d(15%,0,0); } to { transform:translate3d(-19%,12%,0); } }
/* Phones: the block is taller than the picture, so the camera slowly pans from the fire side to the light side and back */
@media (max-width:760px) {
  .rb_new .rb-fx-world { aspect-ratio:auto; min-height:460px; }
  .rb_new .rb-fx-world-bg { background-position:50% 42%; }
  .rb_new .rb-fx-fire { display:none; }
  .rb_new .rb-fx-world-copy { width:94%; padding:42px 14px; }
  .rb_new .rb-fx-world-kicker { letter-spacing:2px; }
  .rb_new .rb-fx-world-embers i:nth-child(n+5) { display:none; }
}
@media (prefers-reduced-motion: reduce) { .rb_new .rb-fx-world-glow, .rb_new .rb-fx-fire, .rb_new .rb-fx-fire::after, .rb_new .rb-fx-world-embers i, .rb_new .rb-fx-world-fog { animation:none !important; } }

/* Living world: fire flicker on the left character, pulsing magic light on the right, frost sparks rising */
.rb_new .rb-fx-world-glow { z-index:-1; inset:0; mix-blend-mode:screen; }
.rb_new .rb-fx-world-glow.is-fire { background:radial-gradient(ellipse 22% 38% at 17% 42%,#ff6a2a3a,transparent 70%),radial-gradient(ellipse 30% 20% at 20% 78%,#ff3d1426,transparent 70%); animation:rbWorldFire 2.6s ease-in-out infinite; }
.rb_new .rb-fx-world-glow.is-frost { background:radial-gradient(ellipse 16% 28% at 80% 30%,#6fb4ff40,transparent 70%),radial-gradient(ellipse 24% 34% at 84% 50%,#8ec9ff22,transparent 72%); animation:rbWorldFrost 4.2s ease-in-out infinite; }
.rb_new .rb-fx-world-embers.is-frost { left:auto; right:0; }
.rb_new .rb-fx-world-embers.is-frost i { background:#cfe8ff; box-shadow:0 0 8px 2px #5aa9ff99; animation-name:rbWorldFrostSpark; animation-duration:8s; }
@keyframes rbWorldFire { 0%,100% { opacity:.55; } 30% { opacity:1; } 45% { opacity:.7; } 62% { opacity:.95; } 80% { opacity:.6; } }
@keyframes rbWorldFrost { 0%,100% { opacity:.45; filter:brightness(.9); } 50% { opacity:1; filter:brightness(1.3); } }
@keyframes rbWorldFrostSpark { 0% { opacity:0; transform:translate(0,0); } 15% { opacity:.9; } 80% { opacity:.4; } 100% { opacity:0; transform:translate(-30px,-380px); } }
@media (max-width:760px) { .rb_new .rb-fx-world-embers.is-frost i:nth-child(n+5) { display:none; } }
/* Frost sparks rise over the right character (not the middle) */
.rb_new .rb-fx-world-embers.is-frost i:nth-child(1) { left:40%; } .rb_new .rb-fx-world-embers.is-frost i:nth-child(2) { left:52%; }
.rb_new .rb-fx-world-embers.is-frost i:nth-child(3) { left:63%; } .rb_new .rb-fx-world-embers.is-frost i:nth-child(4) { left:74%; }
.rb_new .rb-fx-world-embers.is-frost i:nth-child(5) { left:85%; } .rb_new .rb-fx-world-embers.is-frost i:nth-child(6) { left:47%; }
.rb_new .rb-fx-world-embers.is-frost i:nth-child(7) { left:69%; } .rb_new .rb-fx-world-embers.is-frost i:nth-child(8) { left:91%; }
@keyframes rbWorldFrostSpark { 0% { opacity:0; transform:translate(0,0); } 15% { opacity:.9; } 80% { opacity:.4; } 100% { opacity:0; transform:translate(18px,-400px); } }
