
:root{
    --rr-bg:#04101a;
    --rr-panel:#071722;
    --rr-panel-2:#0a1c27;
    --rr-line:rgba(89,185,229,.30);
    --rr-cyan:#47ddff;
    --rr-orange:#ff7728;
    --rr-red:#ff202a;
    --rr-gold:#ffc65d;
    --rr-text:#f4f8fb;
    --rr-muted:#8da4b3;
}

.rr-wrap{
    position:relative;
    overflow:hidden;
    margin:0;
    padding:18px;
    border:1px solid rgba(93,193,236,.28);
    border-radius:18px;
    background:
        linear-gradient(rgba(38,152,201,.025) 1px,transparent 1px),
        linear-gradient(90deg,rgba(38,152,201,.025) 1px,transparent 1px),
        radial-gradient(circle at 8% 0,rgba(43,184,240,.09),transparent 34%),
        radial-gradient(circle at 92% 0,rgba(255,105,32,.075),transparent 34%),
        #04101a;
    background-size:34px 34px,34px 34px,auto,auto,auto;
    color:var(--rr-text);
    box-shadow:0 28px 90px rgba(0,0,0,.36);
}
.rr-wrap *{box-sizing:border-box}

.rr-top{
    display:grid;
    grid-template-columns:minmax(0,1.08fr) minmax(400px,.92fr) minmax(220px,.38fr);
    gap:18px;
    align-items:stretch;
}
.rr-title-block{padding:5px 8px 0}
.rr-eyebrow{
    display:block;
    color:#7fa7bb;
    font:800 .70rem/1 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
    letter-spacing:.30em;
    text-transform:uppercase;
}
.rr-brand-row{
    display:flex;
    align-items:flex-start;
    gap:10px;
}
.rr-title{
    margin:.35rem 0 0!important;
    white-space:nowrap;
    font:1000 clamp(3.1rem,5.7vw,6.25rem)/.80 system-ui,sans-serif!important;
    letter-spacing:-.07em!important;
    text-transform:uppercase;
}
.rr-title .robot{
    color:#e7edf1;
    text-shadow:
        0 3px 0 #667680,
        0 6px 0 rgba(0,0,0,.28);
}
.rr-title .rumble{
    margin-left:.10em;
    color:#ff2b35;
    font-style:italic;
    text-shadow:0 0 28px rgba(255,30,42,.23);
}
.rr-v2-badge{
    margin-top:8px;
    padding:4px 7px;
    border:1px solid rgba(255,113,39,.42);
    border-radius:4px;
    background:rgba(255,113,39,.08);
    color:#ff9a55;
    font:900 .58rem/1 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
    letter-spacing:.12em;
}
.rr-tagline{
    margin:12px 0 10px!important;
    color:#9bb1bf!important;
    font:800 .82rem/1.2 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace!important;
    letter-spacing:.29em;
    text-transform:uppercase;
}
.rr-intro{
    max-width:650px;
    margin:0!important;
    color:#c0d0d9!important;
    font-size:.96rem!important;
    line-height:1.55!important;
}
.rr-action-row{
    display:flex;
    align-items:stretch;
    gap:14px;
    margin-top:22px;
}
.rr-play-main{
    min-height:70px;
    padding:0 30px;
    border:1px solid rgba(255,82,82,.82);
    border-radius:10px;
    background:linear-gradient(180deg,#ff292e 0%,#e10817 100%);
    color:#fff;
    font:900 1.05rem/1 system-ui,sans-serif;
    letter-spacing:.035em;
    box-shadow:
        0 0 34px rgba(255,27,38,.30),
        0 14px 35px rgba(0,0,0,.28);
    cursor:pointer;
}
.rr-play-main:hover,.rr-play-main:focus-visible{filter:brightness(1.08);transform:translateY(-1px)}
.rr-personal-score{
    min-width:220px;
    padding:10px 15px;
    border:1px solid rgba(112,188,222,.29);
    border-radius:9px;
    background:linear-gradient(180deg,rgba(7,23,34,.95),rgba(3,13,20,.92));
    box-shadow:inset 0 0 24px rgba(48,187,239,.025);
}
.rr-personal-score:before{
    content:"🏆";
    float:left;
    margin:7px 12px 0 0;
    font-size:1.65rem;
}
.rr-personal-score small,.rr-personal-score span{display:block;color:#85a3b4}
.rr-personal-score small{
    font:800 .64rem/1.2 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
    letter-spacing:.13em;
}
.rr-personal-score strong{
    display:block;
    margin:2px 0;
    color:#fff;
    font:900 1.85rem/1 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
}
#rr-callsign{
    width:calc(100% - 45px);
    margin-top:4px;
    padding:5px 7px;
    border:1px solid rgba(67,217,255,.20);
    border-radius:4px;
    background:#06131c;
    color:#fff;
}

.rr-leaderboard{
    overflow:hidden;
    border:1px solid rgba(95,180,217,.27);
    border-radius:10px;
    background:
        linear-gradient(180deg,rgba(5,18,28,.96),rgba(3,12,19,.92));
    box-shadow:inset 0 0 28px rgba(28,151,203,.025);
}
.rr-leaderboard-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:14px 16px 11px;
    border-bottom:1px solid rgba(255,255,255,.08);
}
.rr-leaderboard-head h3{
    margin:0!important;
    color:#eef7fb!important;
    font:900 1rem/1.2 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace!important;
    letter-spacing:.13em;
}
.rr-leaderboard-head small{color:#b4c7d1}
.rr-leader-head-row,.rr-leader-row{
    display:grid;
    grid-template-columns:42px minmax(125px,1fr) 105px 100px;
    gap:8px;
    align-items:center;
}
.rr-leader-head-row{
    padding:8px 14px;
    color:#7695a7;
    font:800 .63rem/1 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
    text-transform:uppercase;
}
.rr-leader-row{
    min-height:35px;
    padding:7px 14px;
    border-top:1px solid rgba(255,255,255,.06);
    color:#c7d7e0;
    font:700 .75rem/1.15 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
}
.rr-leader-row>span:first-child{color:#ffcc64}
.rr-leader-row strong{color:#fff}
.rr-leader-row.is-empty{opacity:.42}

.rr-blueprint{
    position:relative;
    overflow:hidden;
    min-height:275px;
    border:1px solid rgba(76,174,219,.34);
    border-radius:9px;
    background:#071827;
}
.rr-blueprint:before{
    content:"B-X1";
    position:absolute;
    z-index:2;
    left:12px;
    top:9px;
    color:#abcfe2;
    font:1000 2.1rem/.9 system-ui,sans-serif;
    letter-spacing:-.04em;
}
.rr-blueprint img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    filter:saturate(.48) contrast(1.18) brightness(.58) hue-rotate(160deg);
    opacity:.76;
}
.rr-blueprint:after{
    content:"BUILT\A TO\A RUMBLE";
    white-space:pre;
    position:absolute;
    right:14px;
    bottom:14px;
    color:#9dd9ff;
    font:900 1.5rem/.85 system-ui,sans-serif;
    font-style:italic;
    text-align:right;
    transform:rotate(-5deg);
    text-shadow:0 0 18px rgba(70,190,255,.38);
}

.rr-arena-shell{
    position:relative;
    margin-top:18px;
    overflow:hidden;
    border:1px solid rgba(88,188,230,.34);
    border-radius:12px;
    background:#03080c;
    box-shadow:
        0 0 0 1px rgba(255,255,255,.018),
        0 24px 60px rgba(0,0,0,.34);
}
.rr-arena-header{
    display:flex;
    align-items:center;
    gap:10px;
    min-height:36px;
    padding:5px 9px 5px 15px;
    border-bottom:1px solid rgba(255,255,255,.075);
    background:
        linear-gradient(90deg,rgba(11,42,58,.96),rgba(5,14,21,.98));
}
.rr-arena-label{
    margin-right:auto;
    color:#84a4b6;
    font:800 .61rem/1 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
    letter-spacing:.15em;
    text-transform:uppercase;
}
.rr-arena-label strong{color:#fff}
.rr-arena-tabs{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}
.rr-arena-tab{
    min-height:27px;
    padding:0 13px;
    border:1px solid rgba(91,157,186,.25);
    border-radius:3px;
    background:#08151f;
    color:#7d96a6;
    font:800 .57rem/1 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
    letter-spacing:.05em;
    cursor:pointer;
}
.rr-arena-tab.is-active{
    border-color:#ff8b3b;
    background:linear-gradient(180deg,#bb4c16,#642308);
    color:#fff;
    box-shadow:0 0 18px rgba(255,118,38,.21);
}
.rr-arena-tab.is-locked{opacity:.42;cursor:not-allowed}

.rr-stage{position:relative;overflow:hidden}
#rr-canvas{
    display:block;
    width:100%;
    height:auto;
    aspect-ratio:16/9;
    background:#061018;
}

/* Arcade HUD */
.rr-hud{
    position:absolute;
    z-index:5;
    left:10px;
    right:10px;
    top:10px;
    display:grid;
    grid-template-columns:minmax(0,1fr) 118px minmax(0,1fr);
    gap:8px;
    pointer-events:none;
}
.rr-fighter{
    display:flex;
    align-items:stretch;
    min-width:0;
    min-height:87px;
    border:1px solid rgba(96,181,219,.18);
    background:linear-gradient(180deg,rgba(3,10,15,.94),rgba(3,10,15,.72));
    box-shadow:0 12px 30px rgba(0,0,0,.26);
}
.rr-fighter.p1{
    clip-path:polygon(0 0,94% 0,100% 24%,94% 100%,0 100%);
}
.rr-fighter.p2{
    justify-content:flex-end;
    text-align:right;
    clip-path:polygon(6% 0,100% 0,100% 100%,6% 100%,0 24%);
}
.rr-portrait{
    position:relative;
    flex:0 0 82px;
    overflow:hidden;
    border-right:2px solid rgba(67,217,255,.72);
    background:
        radial-gradient(circle at 50% 45%,rgba(67,217,255,.20),transparent 42%),
        #08151d;
}
.rr-portrait-p2{
    order:2;
    border-right:0;
    border-left:2px solid rgba(255,98,29,.78);
    background:
        radial-gradient(circle at 50% 45%,rgba(255,98,29,.23),transparent 42%),
        #120d0a;
}
.rr-portrait:before{
    content:"";
    position:absolute;
    left:20px;
    top:13px;
    width:44px;
    height:55px;
    clip-path:polygon(14% 10%,38% 0,76% 7%,100% 29%,86% 79%,63% 100%,22% 91%,0 62%,5% 27%);
    background:linear-gradient(145deg,#edf7fb 0 34%,#607784 35% 55%,#172630 56% 100%);
    box-shadow:inset 0 0 0 3px #09141a;
}
.rr-portrait:after{
    content:"";
    position:absolute;
    left:30px;
    top:35px;
    width:31px;
    height:7px;
    border-radius:7px 3px 3px 7px;
    background:#46ddff;
    box-shadow:0 0 16px #46ddff;
}
.rr-portrait-p2:before{
    background:linear-gradient(145deg,#292b2f 0 32%,#14181c 33% 58%,#5b2014 59% 100%);
}
.rr-portrait-p2:after{
    left:24px;
    background:#ff5a22;
    box-shadow:0 0 17px #ff5a22;
}
.rr-fighter-main{
    flex:1 1 auto;
    min-width:0;
    padding:9px 12px 7px;
}
.rr-name{
    display:block;
    color:#fff;
    font:900 1.03rem/1 system-ui,sans-serif;
}
.rr-name small{
    display:inline-block;
    margin-left:5px;
    color:#54dfff;
    font:800 .62rem/1 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
}
.rr-fighter.p2 .rr-name small{color:#ff7c38}
.rr-hp-bar{
    height:14px;
    margin-top:7px;
    overflow:hidden;
    background:rgba(255,255,255,.08);
}
.rr-hp-fill{
    height:100%;
    width:100%;
    background:linear-gradient(90deg,#19d75d,#40f273);
    box-shadow:0 0 12px rgba(55,239,105,.32);
    transition:width .16s linear;
}
.rr-fighter.p2 .rr-hp-fill{margin-left:auto}
.rr-energy-bar{
    height:6px;
    margin-top:6px;
    overflow:hidden;
    background:rgba(255,255,255,.08);
}
.rr-energy-fill{
    height:100%;
    width:0;
    background:linear-gradient(90deg,#24cffa,#57e7ff);
    transition:width .13s linear;
}
.rr-fighter.p2 .rr-energy-fill{
    margin-left:auto;
    background:linear-gradient(90deg,#ff942f,#ff5d20);
}
.rr-fighter-foot{
    display:flex;
    justify-content:space-between;
    gap:8px;
    margin-top:5px;
    color:#7e98a7;
    font:800 .50rem/1 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
    letter-spacing:.04em;
}
.rr-fighter.p2 .rr-fighter-foot{flex-direction:row}
.rr-trait{color:#7794a5}
.rr-center{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    min-height:84px;
    border:1px solid rgba(125,189,214,.20);
    clip-path:polygon(18% 0,82% 0,100% 27%,87% 100%,13% 100%,0 27%);
    background:rgba(3,9,14,.96);
}
.rr-round{
    color:#c4d5dd;
    font:900 .64rem/1 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
}
.rr-timer{
    margin-top:3px;
    color:#fff;
    font:900 2.25rem/.9 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
    text-shadow:0 0 12px rgba(255,255,255,.10);
}

.rr-controls-overlay{
    position:absolute;
    z-index:5;
    left:14px;
    bottom:28px;
    width:190px;
    padding:11px 12px;
    border:1px solid rgba(85,170,205,.28);
    border-radius:7px;
    background:rgba(2,11,18,.86);
    color:#b8cbd5;
    font:700 .61rem/1.64 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
    box-shadow:0 14px 28px rgba(0,0,0,.28);
}
.rr-controls-overlay strong{
    display:block;
    margin-bottom:4px;
    color:#91c5dc;
    letter-spacing:.08em;
}
.rr-controls-overlay kbd{
    display:inline-flex;
    min-width:22px;
    justify-content:center;
    padding:1px 4px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:3px;
    background:#0a1923;
    color:#fff;
    font:inherit;
}
.rr-stage-note{
    position:absolute;
    z-index:5;
    right:14px;
    bottom:28px;
    padding:10px 12px;
    border:1px solid rgba(85,170,205,.21);
    border-radius:7px;
    background:rgba(3,12,19,.80);
    color:#7d98a9;
    font:800 .55rem/1.3 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
    text-align:right;
}
.rr-arena-motto{
    position:absolute;
    z-index:5;
    left:50%;
    bottom:7px;
    transform:translateX(-50%);
    padding:0 20px;
    color:#79a0b5;
    font:800 .58rem/1 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
    letter-spacing:.24em;
    white-space:nowrap;
}
.rr-status{
    position:absolute;
    z-index:6;
    left:50%;
    top:128px;
    transform:translateX(-50%);
    min-width:220px;
    padding:7px 13px;
    border:1px solid rgba(255,139,59,.25);
    border-radius:999px;
    background:rgba(3,10,15,.68);
    color:#d9e8ef;
    text-align:center;
    font:800 .59rem/1.15 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
    letter-spacing:.06em;
}

.rr-options{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    flex-wrap:wrap;
    margin-top:11px;
    padding:11px 12px;
    border:1px solid rgba(91,167,198,.16);
    border-radius:8px;
    background:rgba(4,13,20,.70);
}
.rr-option-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.rr-option-group label{
    color:#7f9eae;
    font:800 .60rem/1 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.rr-options select{
    min-height:35px;
    padding:0 9px;
    border:1px solid rgba(91,167,198,.24);
    border-radius:5px;
    background:#07141d;
    color:#eaf6fb;
}
.rr-start{
    min-height:37px;
    padding:0 17px;
    border:1px solid rgba(255,118,39,.68);
    border-radius:5px;
    background:linear-gradient(180deg,#bc4f17,#6f280a);
    color:#fff;
    font-weight:900;
    cursor:pointer;
}
.rr-sfx{display:flex!important;align-items:center;gap:6px;color:#a8bcc7!important}
.rr-sfx input{accent-color:#ff7627}

@media(max-width:1120px){
    .rr-top{grid-template-columns:1fr 1fr}
    .rr-blueprint{display:none}
}
@media(max-width:860px){
    .rr-top{grid-template-columns:1fr}
    .rr-action-row{flex-direction:column}
    .rr-personal-score{width:100%}
    .rr-hud{grid-template-columns:1fr 84px 1fr;left:4px;right:4px;top:4px;gap:4px}
    .rr-portrait{display:none}
    .rr-fighter-main{padding:7px}
    .rr-trait{display:none}
    .rr-name{font-size:.78rem}
    .rr-center{min-height:68px}
    .rr-timer{font-size:1.6rem}
    .rr-controls-overlay,.rr-stage-note{display:none}
}
@media(max-width:560px){
    .rr-wrap{padding:9px;border-radius:11px}
    .rr-title{font-size:3rem!important}
    .rr-v2-badge{display:none}
    .rr-tagline{letter-spacing:.12em}
    .rr-leader-head-row,.rr-leader-row{grid-template-columns:28px 1fr 70px}
    .rr-leader-head-row>*:last-child,.rr-leader-row>*:last-child{display:none}
    .rr-arena-header{align-items:flex-start;flex-direction:column}
    .rr-arena-tabs{justify-content:flex-start}
    .rr-arena-tab{padding:0 8px}
    .rr-hud{position:relative;grid-template-columns:1fr 68px 1fr;background:#06121a;padding:5px;margin:0}
    .rr-status{top:auto;bottom:28px}
    .rr-arena-motto{font-size:.48rem;letter-spacing:.11em}
}


/* Nexus v0.10.28 — Robot Rumble split-page architecture */

/* Future Ideas teaser: Bunker-Breach-style home for Robot Rumble. */
.rr-teaser{
    display:grid;
    grid-template-columns:minmax(320px,.78fr) minmax(520px,1.22fr);
    gap:26px;
    margin-top:12px;
    padding:26px;
    border:1px solid rgba(88,187,228,.24);
    border-radius:24px;
    background:
        radial-gradient(circle at 0 0,rgba(50,205,255,.07),transparent 31%),
        radial-gradient(circle at 100% 0,rgba(255,109,35,.07),transparent 31%),
        rgba(5,15,23,.92);
    box-shadow:0 25px 70px rgba(0,0,0,.28);
}
.rr-teaser-copy{
    display:flex;
    flex-direction:column;
    justify-content:center;
}
.rr-teaser-copy h2{
    margin:.65rem 0 .25rem;
    font-size:clamp(3rem,6vw,6.2rem);
    line-height:.80;
    letter-spacing:-.065em;
    text-transform:uppercase;
}
.rr-teaser-copy h2 span{color:#edf4f7}
.rr-teaser-copy h2 em{color:#ff2933;font-style:italic}
.rr-teaser-tag{
    margin:.8rem 0!important;
    color:#91aabc!important;
    font:800 .72rem/1.2 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace!important;
    letter-spacing:.24em;
    text-transform:uppercase;
}
.rr-teaser-copy>p:last-of-type{
    max-width:540px;
    color:#a8bdc8;
}
.rr-teaser-actions{
    display:flex;
    align-items:stretch;
    gap:14px;
    margin-top:22px;
}
.rr-teaser-play{
    min-width:245px;
    justify-content:center;
    border-color:rgba(255,65,72,.70)!important;
    background:linear-gradient(180deg,#ff2b31,#dd0a17)!important;
    color:#fff!important;
    box-shadow:0 0 30px rgba(255,31,42,.20);
}
.rr-teaser-best{
    min-width:205px;
    padding:12px 15px;
    border:1px solid rgba(93,185,224,.20);
    border-radius:12px;
    background:rgba(2,11,17,.58);
}
.rr-teaser-best small,.rr-teaser-best span{display:block;color:#8aa4b3}
.rr-teaser-best small{
    font:800 .60rem/1.2 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
    letter-spacing:.11em;
    text-transform:uppercase;
}
.rr-teaser-best strong{
    display:block;
    margin:4px 0;
    color:#fff;
    font:900 1.8rem/1 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
}
.rr-teaser-right{
    display:grid;
    grid-template-columns:minmax(230px,.78fr) minmax(320px,1.22fr);
    gap:14px;
}
.rr-obx1-card{
    overflow:hidden;
    margin:0;
    border:1px solid rgba(85,180,220,.25);
    border-radius:16px;
    background:#06131d;
}
.rr-obx1-image{
    aspect-ratio:4/3;
    overflow:hidden;
    background:#071723;
}
.rr-obx1-image img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center 34%;
    filter:saturate(.72) contrast(1.06) brightness(.88);
}
.rr-obx1-card figcaption{
    padding:13px 14px 14px;
    border-top:1px solid rgba(255,255,255,.07);
}
.rr-obx1-card figcaption span,
.rr-obx1-card figcaption strong{display:block}
.rr-obx1-card figcaption span{
    color:#65d9ff;
    font:800 .58rem/1.2 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
    letter-spacing:.10em;
    text-transform:uppercase;
}
.rr-obx1-card figcaption strong{
    margin-top:5px;
    color:#e9f2f6;
    font-size:.84rem;
}
.rr-teaser-board{
    overflow:hidden;
    border:1px solid rgba(85,180,220,.22);
    border-radius:16px;
    background:rgba(3,12,19,.70);
}
.rr-teaser-board-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:12px 14px;
    border-bottom:1px solid rgba(255,255,255,.07);
}
.rr-teaser-board-head strong{
    font:900 .68rem/1.2 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
    letter-spacing:.10em;
}
.rr-teaser-board-head span{
    color:#879eac;
    font-size:.67rem;
}
.rr-teaser-board-row{
    display:grid;
    grid-template-columns:34px minmax(0,1fr) auto;
    gap:9px;
    align-items:center;
    min-height:49px;
    padding:7px 14px;
    border-top:1px solid rgba(255,255,255,.055);
}
.rr-teaser-board-row:first-of-type{border-top:0}
.rr-teaser-board-row .rr-rank{
    color:#ff8a38;
    font:900 .67rem/1 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
}
.rr-teaser-board-row>span:nth-child(2){overflow:hidden}
.rr-teaser-board-row strong,.rr-teaser-board-row small{display:block}
.rr-teaser-board-row strong{
    overflow:hidden;
    color:#e8f1f5;
    font-size:.79rem;
    white-space:nowrap;
    text-overflow:ellipsis;
}
.rr-teaser-board-row small{
    margin-top:2px;
    color:#6f8795;
    font-size:.59rem;
}
.rr-teaser-board-row>b{
    color:#ff8a38;
    font:900 .76rem/1 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
}
.rr-teaser-board-row.is-empty{opacity:.42}

/* Dedicated game page. */
.rr-game-page{padding-top:32px}
.rr-game-page-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
    margin-bottom:18px;
}
.rr-game-page-head h1{
    margin:.6rem 0 .4rem;
    font-size:clamp(2.7rem,5vw,5.5rem);
    line-height:.88;
}
.rr-game-page-head p{
    max-width:850px;
    margin:0;
    color:var(--muted);
}
.rr-back-button{flex:0 0 auto}

/* Rebalance the full-game top row: nothing can sit behind the leaderboard. */
.rr-game-page .rr-top{
    grid-template-columns:minmax(0,1fr) minmax(370px,.95fr) minmax(215px,.42fr);
}
.rr-game-page .rr-title-block{
    min-width:0;
    overflow:hidden;
}
.rr-game-page .rr-brand-row{min-width:0}
.rr-game-page .rr-title{
    max-width:100%;
    font-size:clamp(2.7rem,4.4vw,4.85rem)!important;
    letter-spacing:-.05em!important;
}
.rr-game-page .rr-intro{max-width:550px}
.rr-game-page .rr-play-main{
    min-width:215px;
    padding:0 20px;
    font-size:.92rem;
}

/* Clean OB-X1 card. No pseudo-text sitting on top of the art. */
.rr-blueprint{
    display:flex;
    flex-direction:column;
    min-height:0;
}
.rr-blueprint:before,
.rr-blueprint:after{
    content:none!important;
    display:none!important;
}
.rr-blueprint-image{
    flex:1 1 auto;
    min-height:205px;
    overflow:hidden;
    background:#071722;
}
.rr-blueprint-image img{
    display:block;
    width:100%;
    height:100%;
    min-height:205px;
    object-fit:cover;
    object-position:center 34%;
    filter:saturate(.68) contrast(1.08) brightness(.84);
}
.rr-blueprint figcaption{
    padding:11px 12px 12px;
    border-top:1px solid rgba(255,255,255,.07);
    background:#06131c;
}
.rr-blueprint figcaption span,
.rr-blueprint figcaption strong{display:block}
.rr-blueprint figcaption span{
    color:#5fd8ff;
    font:800 .55rem/1.2 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
    letter-spacing:.09em;
}
.rr-blueprint figcaption strong{
    margin-top:4px;
    color:#dae7ed;
    font-size:.72rem;
    letter-spacing:.05em;
}

@media(max-width:1200px){
    .rr-teaser{grid-template-columns:1fr}
    .rr-teaser-right{grid-template-columns:minmax(240px,.65fr) minmax(360px,1.35fr)}
    .rr-game-page .rr-top{grid-template-columns:1fr 1fr}
    .rr-game-page .rr-blueprint{display:none}
}
@media(max-width:820px){
    .rr-teaser-right{grid-template-columns:1fr}
    .rr-teaser-actions{flex-direction:column}
    .rr-teaser-play,.rr-teaser-best{width:100%}
    .rr-game-page-head{align-items:flex-start;flex-direction:column}
}


/* v0.10.29 hotfix — stop Robot Rumble title hiding behind the leaderboard */
.rr-wrap .rr-top{
    grid-template-columns:minmax(0,.84fr) minmax(430px,.98fr) minmax(245px,.34fr)!important;
    align-items:start!important;
}
.rr-wrap .rr-title-block,
.rr-wrap .rr-brand-row{
    min-width:0!important;
    overflow:hidden!important;
}
.rr-wrap .rr-title{
    white-space:normal!important;
    max-width:8.8ch!important;
    font:1000 clamp(2.35rem,3.35vw,4.1rem)/.88 system-ui,sans-serif!important;
    letter-spacing:-.052em!important;
    text-wrap:balance;
}
.rr-wrap .rr-intro{
    max-width:560px!important;
}

/* Keep the OB-X1 panel clean and stop any caption/overlay weirdness. */
.rr-wrap .rr-blueprint{
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    isolation:isolate;
}
.rr-wrap .rr-blueprint:before,
.rr-wrap .rr-blueprint:after{
    content:none!important;
    display:none!important;
}
.rr-wrap .rr-blueprint-image{
    position:relative!important;
    z-index:1!important;
    min-height:240px!important;
}
.rr-wrap .rr-blueprint-image img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-height:240px!important;
    object-fit:cover!important;
    object-position:center 30%!important;
}
.rr-wrap .rr-blueprint figcaption{
    position:relative!important;
    z-index:2!important;
    inset:auto!important;
    margin:0!important;
    padding:12px 14px!important;
    border-top:1px solid rgba(255,255,255,.07)!important;
    background:#06131c!important;
    transform:none!important;
}
.rr-wrap .rr-blueprint figcaption span,
.rr-wrap .rr-blueprint figcaption strong{
    display:block!important;
    position:static!important;
    transform:none!important;
    text-shadow:none!important;
}
.rr-wrap .rr-blueprint figcaption span{
    color:#5fd8ff!important;
    font:800 .58rem/1.2 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace!important;
    letter-spacing:.09em!important;
    text-transform:uppercase!important;
}
.rr-wrap .rr-blueprint figcaption strong{
    margin-top:4px!important;
    color:#dae7ed!important;
    font-size:.75rem!important;
    letter-spacing:.05em!important;
}

/* Dedicated page version gets the same sizing fix. */
.rr-game-page .rr-top{
    grid-template-columns:minmax(0,.84fr) minmax(430px,.98fr) minmax(245px,.34fr)!important;
}
.rr-game-page .rr-title{
    white-space:normal!important;
    max-width:8.8ch!important;
    font:1000 clamp(2.35rem,3.35vw,4.1rem)/.88 system-ui,sans-serif!important;
    letter-spacing:-.052em!important;
}

@media (max-width: 1280px){
    .rr-wrap .rr-top,
    .rr-game-page .rr-top{
        grid-template-columns:minmax(0,1fr) minmax(360px,.95fr) minmax(220px,.32fr)!important;
    }
    .rr-wrap .rr-title,
    .rr-game-page .rr-title{
        max-width:9.2ch!important;
        font-size:clamp(2.1rem,3.15vw,3.65rem)!important;
    }
}
@media (max-width: 1040px){
    .rr-wrap .rr-top,
    .rr-game-page .rr-top{
        grid-template-columns:1fr!important;
    }
    .rr-wrap .rr-title,
    .rr-game-page .rr-title{
        max-width:none!important;
    }
    .rr-wrap .rr-blueprint,
    .rr-game-page .rr-blueprint{
        max-width:360px!important;
    }
}


/* v0.10.30 — dedicated play page contains the game only */
.rr-play-window-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-bottom:10px;
    padding:13px 16px;
    border:1px solid rgba(255,139,59,.22);
    border-radius:14px 14px 0 0;
    background:rgba(5,14,21,.88);
}
.rr-play-window-head>div{
    display:flex;
    flex-direction:column;
    gap:4px;
}
.rr-play-window-head span{
    color:#a98d78;
    font:800 .58rem/1.2 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
    letter-spacing:.14em;
}
.rr-play-window-head strong{
    color:#f4f7f9;
    font-size:1.45rem;
    line-height:1;
}
.rr-play-window-back{
    flex:0 0 auto;
    min-height:38px;
    display:inline-flex;
    align-items:center;
    padding:0 13px;
    border:1px solid rgba(255,139,59,.22);
    border-radius:8px;
    background:#0a151d;
    color:#d7e0e5;
    font-size:.78rem;
    text-decoration:none;
}
.rr-play-window-back:hover,
.rr-play-window-back:focus-visible{
    border-color:rgba(255,139,59,.58);
    color:#fff;
}
.rr-game-page{
    padding-top:24px!important;
}
.rr-game-page .rr-wrap-game-only{
    padding-top:0;
}
.rr-wrap-game-only .rr-arena-shell{
    margin-top:0;
}

/* The promo/top row is intentionally absent from the play window. */
.rr-wrap-game-only > .rr-top{
    display:none!important;
}

@media(max-width:700px){
    .rr-play-window-head{
        align-items:flex-start;
        flex-direction:column;
    }
}


/* v0.10.31 — Future Ideas OB-X1 card correction */
.rr-teaser-right{
    align-items:start!important;
}

.rr-obx1-card{
    align-self:start!important;
    height:auto!important;
    min-height:0!important;
    overflow:hidden!important;
    background:#06131d!important;
}

.rr-obx1-image{
    position:relative!important;
    width:100%!important;
    aspect-ratio:3 / 4!important;
    min-height:0!important;
    overflow:hidden!important;
    background:
        radial-gradient(circle at 50% 32%,rgba(69,211,255,.08),transparent 42%),
        #071723!important;
}

.rr-obx1-image img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center 42%!important;
    filter:saturate(.78) contrast(1.08) brightness(.90)!important;
}

.rr-obx1-card figcaption{
    position:static!important;
    min-height:0!important;
    margin:0!important;
    padding:14px 15px 16px!important;
    background:linear-gradient(180deg,#071722,#06131d)!important;
    border-top:1px solid rgba(255,255,255,.07)!important;
}

.rr-obx1-card figcaption span{
    color:#61dfff!important;
    font:800 .60rem/1.2 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace!important;
    letter-spacing:.11em!important;
    text-transform:uppercase!important;
}

.rr-obx1-card figcaption strong{
    margin-top:6px!important;
    color:#eef5f8!important;
    font-size:.88rem!important;
    line-height:1.35!important;
}

/* Keep the poster column visually balanced with the leaderboard. */
@media(min-width:1201px){
    .rr-teaser-right{
        grid-template-columns:minmax(245px,.72fr) minmax(390px,1.28fr)!important;
    }
}

@media(max-width:1200px){
    .rr-obx1-card{
        max-width:420px!important;
    }
}


/* Nexus v0.10.36 — Robot Rumble guest trial / member progression gate */
.rr-arena-tab.is-member-locked{
    opacity:.78;
    border-color:rgba(255,139,59,.28);
    background:linear-gradient(180deg,rgba(255,139,59,.07),rgba(7,20,29,.94));
    color:#a9b9c2;
    cursor:pointer;
}
.rr-arena-tab.is-member-locked:hover,
.rr-arena-tab.is-member-locked:focus-visible{
    opacity:1;
    border-color:rgba(255,139,59,.62);
    color:#fff;
}

.rr-member-gate[hidden]{display:none!important}
.rr-member-gate{
    position:fixed;
    z-index:100000;
    inset:0;
    display:grid;
    place-items:center;
    padding:24px;
    background:rgba(2,7,11,.84);
    backdrop-filter:blur(9px);
}
.rr-member-gate-card{
    position:relative;
    width:min(100%,620px);
    padding:30px;
    border:1px solid rgba(255,139,59,.38);
    border-radius:20px;
    background:
        radial-gradient(circle at 100% 0,rgba(255,80,36,.10),transparent 34%),
        radial-gradient(circle at 0 0,rgba(70,211,255,.08),transparent 40%),
        #07121a;
    box-shadow:0 35px 100px rgba(0,0,0,.60);
}
.rr-member-gate-close{
    position:absolute;
    right:12px;
    top:10px;
    width:38px;
    height:38px;
    border:1px solid rgba(255,255,255,.10);
    border-radius:50%;
    background:rgba(255,255,255,.03);
    color:#dce8ed;
    font-size:1.55rem;
    cursor:pointer;
}
.rr-member-gate-kicker{
    display:block;
    padding-right:40px;
    color:#ff9b59;
    font:900 .65rem/1.2 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.rr-member-gate-card h3{
    margin:.55rem 0 .65rem;
    color:#fff;
    font-size:clamp(1.55rem,3vw,2.45rem);
    line-height:1.02;
}
.rr-member-gate-card p{
    margin:0;
    color:#acc0ca;
    line-height:1.6;
}
.rr-member-gate-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin:22px 0 14px;
}
.rr-member-gate-primary,
.rr-member-gate-secondary{
    min-height:46px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 16px;
    border-radius:8px;
    text-decoration:none;
    font-weight:900;
}
.rr-member-gate-primary{
    border:1px solid rgba(255,139,59,.70);
    background:linear-gradient(180deg,#c45117,#76290a);
    color:#fff!important;
}
.rr-member-gate-secondary{
    border:1px solid rgba(78,202,247,.30);
    background:rgba(55,180,225,.07);
    color:#dff6ff!important;
}
.rr-member-gate-card small{
    display:block;
    padding-top:13px;
    border-top:1px solid rgba(255,255,255,.07);
    color:#7e98a5;
    line-height:1.45;
}
body.rr-member-gate-open{overflow:hidden}

@media(max-width:620px){
    .rr-member-gate-card{padding:24px 20px}
    .rr-member-gate-actions{display:grid}
    .rr-member-gate-primary,
    .rr-member-gate-secondary{width:100%}
}


/* =========================================================
   Nexus v0.10.37 — Robot Rumble mobile game experience
   ========================================================= */
.rr-mobile-rotate-prompt,
.rr-touch-controls{
    display:none;
}

/* Portrait phones get an explicit orientation screen. */
@media(max-width:900px) and (orientation:portrait){
    .rr-mobile-rotate-prompt{
        position:fixed;
        z-index:100005;
        inset:0;
        display:grid;
        place-items:center;
        padding:24px;
        background:
            radial-gradient(circle at 50% 38%,rgba(65,215,255,.10),transparent 34%),
            rgba(2,8,13,.98);
    }

    .rr-mobile-rotate-card{
        width:min(100%,430px);
        padding:28px 24px;
        text-align:center;
        border:1px solid rgba(65,215,255,.28);
        border-radius:22px;
        background:#07131d;
        box-shadow:0 28px 80px rgba(0,0,0,.48);
    }

    .rr-mobile-rotate-icon{
        display:block;
        margin-bottom:8px;
        color:#55ddff;
        font-size:3.1rem;
        line-height:1;
    }

    .rr-mobile-rotate-card strong{
        display:block;
        color:#fff;
        font-size:1.55rem;
    }

    .rr-mobile-rotate-card p{
        margin:.65rem auto 1.15rem;
        max-width:330px;
        color:#91aab7;
        line-height:1.55;
    }

    .rr-mobile-rotate-card a{
        min-height:44px;
        display:inline-flex;
        align-items:center;
        justify-content:center;
        padding:0 16px;
        border:1px solid rgba(255,139,59,.42);
        border-radius:9px;
        background:#0a151d;
        color:#fff;
        text-decoration:none;
        font-weight:800;
    }
}

/* Desktop remains the desktop game. This block only takes over a mobile
   landscape viewport. */
@media(max-width:1000px) and (orientation:landscape){
    .rr-game-page{
        position:fixed!important;
        z-index:99980!important;
        inset:0!important;
        width:100vw!important;
        height:100dvh!important;
        padding:0!important;
        margin:0!important;
        overflow:hidden!important;
        background:#02070b!important;
    }

    .rr-game-page>.oonx-container{
        width:100%!important;
        max-width:none!important;
        height:100%!important;
        padding:0!important;
        margin:0!important;
    }

    .rr-play-window-head{
        position:fixed!important;
        z-index:100030!important;
        top:6px!important;
        right:6px!important;
        width:auto!important;
        min-height:0!important;
        margin:0!important;
        padding:0!important;
        border:0!important;
        background:transparent!important;
    }

    .rr-play-window-head>div{
        display:none!important;
    }

    .rr-play-window-back{
        min-height:34px!important;
        height:34px!important;
        padding:0 12px!important;
        border-color:rgba(255,139,59,.55)!important;
        background:rgba(4,12,18,.94)!important;
        color:#fff!important;
        font:900 .66rem/1 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace!important;
        letter-spacing:.07em!important;
        text-transform:uppercase!important;
    }

    .rr-wrap-game-only{
        position:relative!important;
        width:100vw!important;
        height:100dvh!important;
        display:flex!important;
        flex-direction:column!important;
        gap:4px!important;
        padding:4px!important;
        margin:0!important;
        border:0!important;
        border-radius:0!important;
        overflow:hidden!important;
        background:#02070b!important;
    }

    /* Settings become a compact command bar. */
    .rr-wrap-game-only>.rr-options{
        order:-1!important;
        flex:0 0 40px!important;
        min-height:40px!important;
        width:100%!important;
        margin:0!important;
        padding:3px 96px 3px 6px!important;
        gap:5px!important;
        border-radius:8px!important;
        background:rgba(5,15,22,.98)!important;
    }

    .rr-option-group{
        gap:4px!important;
        flex-wrap:nowrap!important;
    }

    .rr-option-group label:not(.rr-sfx){
        display:none!important;
    }

    .rr-options select{
        min-height:32px!important;
        height:32px!important;
        max-width:170px!important;
        padding:0 6px!important;
        font-size:.66rem!important;
    }

    .rr-start{
        min-height:32px!important;
        height:32px!important;
        padding:0 10px!important;
        font-size:.7rem!important;
        white-space:nowrap!important;
    }

    .rr-sfx{
        font-size:.55rem!important;
    }

    .rr-arena-shell{
        flex:1 1 auto!important;
        min-height:0!important;
        display:grid!important;
        grid-template-rows:auto minmax(0,1fr)!important;
        margin:0!important;
        border-radius:8px!important;
        overflow:hidden!important;
    }

    .rr-arena-header{
        min-height:32px!important;
        padding:3px 5px!important;
        gap:4px!important;
        flex-direction:row!important;
        align-items:center!important;
    }

    .rr-arena-label{
        padding-left:4px!important;
        font-size:.48rem!important;
        letter-spacing:.09em!important;
        white-space:nowrap!important;
    }

    .rr-arena-tabs{
        gap:3px!important;
        flex-wrap:nowrap!important;
        overflow-x:auto!important;
        scrollbar-width:none!important;
    }

    .rr-arena-tabs::-webkit-scrollbar{
        display:none!important;
    }

    .rr-arena-tab{
        flex:0 0 auto!important;
        min-height:24px!important;
        height:24px!important;
        padding:0 7px!important;
        font-size:.48rem!important;
    }

    .rr-stage{
        min-height:0!important;
        height:100%!important;
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        background:#02070b!important;
    }

    #rr-canvas{
        width:auto!important;
        height:100%!important;
        max-width:100%!important;
        max-height:100%!important;
        aspect-ratio:16 / 9!important;
        margin:auto!important;
    }

    .rr-hud{
        left:50%!important;
        right:auto!important;
        top:4px!important;
        width:min(100%,calc((100dvh - 80px) * 16 / 9))!important;
        max-width:100%!important;
        transform:translateX(-50%)!important;
        grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr)!important;
        gap:3px!important;
    }

    .rr-fighter{
        min-height:54px!important;
    }

    .rr-fighter-main{
        padding:5px!important;
    }

    .rr-name{
        font-size:.58rem!important;
    }

    .rr-fighter-foot{
        font-size:.45rem!important;
    }

    .rr-center{
        min-height:54px!important;
        padding:4px!important;
    }

    .rr-round{
        font-size:.48rem!important;
    }

    .rr-timer{
        font-size:1.25rem!important;
    }

    .rr-controls-overlay,
    .rr-stage-note,
    .rr-arena-motto{
        display:none!important;
    }

    /* Actual touch controls, kept off the centre fighting area where possible. */
    .rr-touch-controls{
        position:absolute!important;
        z-index:25!important;
        inset:0!important;
        display:block!important;
        pointer-events:none!important;
    }

    .rr-touch-cluster{
        position:absolute!important;
        bottom:8px!important;
        display:grid!important;
        grid-template-columns:repeat(2,52px)!important;
        gap:6px!important;
        pointer-events:auto!important;
    }

    .rr-touch-movement{
        left:8px!important;
    }

    .rr-touch-attacks{
        right:8px!important;
    }

    .rr-touch-controls button{
        min-width:52px!important;
        width:52px!important;
        min-height:42px!important;
        height:42px!important;
        padding:0!important;
        border:1px solid rgba(99,218,255,.42)!important;
        border-radius:12px!important;
        background:rgba(4,15,22,.78)!important;
        color:#f2fbff!important;
        box-shadow:0 8px 24px rgba(0,0,0,.28)!important;
        backdrop-filter:blur(6px)!important;
        font:900 .62rem/1 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace!important;
        touch-action:none!important;
        user-select:none!important;
        -webkit-user-select:none!important;
    }

    .rr-touch-attacks button{
        border-color:rgba(255,126,46,.50)!important;
    }

    .rr-touch-controls button.is-pressed{
        transform:scale(.94)!important;
        border-color:#fff!important;
        background:rgba(255,139,59,.58)!important;
    }

    .rr-status{
        top:auto!important;
        bottom:6px!important;
        min-width:190px!important;
        max-width:42vw!important;
        padding:5px 9px!important;
        font-size:.48rem!important;
        pointer-events:none!important;
    }

    .rr-member-gate{
        padding:10px!important;
    }

    .rr-member-gate-card{
        width:min(560px,86vw)!important;
        max-height:92dvh!important;
        overflow:auto!important;
        padding:18px!important;
    }

    .rr-member-gate-card h3{
        font-size:1.45rem!important;
    }

    .rr-member-gate-actions{
        margin:12px 0 9px!important;
    }
}

/* Very short landscape phones need slightly smaller thumb pads. */
@media(max-height:430px) and (orientation:landscape){
    .rr-touch-cluster{
        grid-template-columns:repeat(2,46px)!important;
        gap:5px!important;
    }

    .rr-touch-controls button{
        min-width:46px!important;
        width:46px!important;
        min-height:38px!important;
        height:38px!important;
        font-size:.56rem!important;
    }
}


/* =========================================================
   Nexus v0.10.48: Robot Rumble game-first mobile fullscreen
   ========================================================= */

/* Fullscreen and CSS fallback share the same dark game surface. */
.rr-game-page:fullscreen,
.rr-game-page:-webkit-full-screen{
    width:100vw!important;
    height:100dvh!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    background:#02070b!important;
}

@media(max-width:1000px) and (orientation:landscape){
    html,
    body.rr-mobile-landscape{
        overscroll-behavior:none!important;
    }

    body.rr-mobile-landscape{
        overflow:hidden!important;
        background:#02070b!important;
    }

    body.rr-mobile-landscape .rr-game-page,
    body.rr-mobile-fullscreen-fallback .rr-game-page{
        position:fixed!important;
        z-index:99990!important;
        inset:0!important;
        width:100vw!important;
        height:var(--rr-mobile-vh,100dvh)!important;
        min-height:0!important;
        max-height:none!important;
        padding:0!important;
        margin:0!important;
        overflow:hidden!important;
        background:#02070b!important;
    }

    body.rr-mobile-landscape .rr-game-page>.oonx-container,
    body.rr-mobile-fullscreen-fallback .rr-game-page>.oonx-container{
        width:100%!important;
        height:100%!important;
        max-width:none!important;
        padding:0!important;
        margin:0!important;
    }

    body.rr-mobile-landscape .rr-wrap-game-only,
    body.rr-mobile-fullscreen-fallback .rr-wrap-game-only{
        width:100%!important;
        height:100%!important;
        min-height:0!important;
        padding:0!important;
        gap:0!important;
        border:0!important;
        border-radius:0!important;
        background:#02070b!important;
    }

    /* During a fight the arena owns the screen. Setup controls come back after the match. */
    body.rr-match-running .rr-wrap-game-only>.rr-options,
    body.rr-match-running .rr-arena-header{
        display:none!important;
    }

    body.rr-match-running .rr-arena-shell{
        flex:1 1 100%!important;
        width:100%!important;
        height:100%!important;
        min-height:0!important;
        display:block!important;
        margin:0!important;
        border:0!important;
        border-radius:0!important;
        overflow:hidden!important;
        background:#02070b!important;
    }

    body.rr-match-running .rr-stage{
        position:relative!important;
        width:100%!important;
        height:100%!important;
        min-height:0!important;
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        overflow:hidden!important;
        background:#02070b!important;
    }

    body.rr-match-running #rr-canvas{
        display:block!important;
        width:auto!important;
        height:100%!important;
        max-width:100%!important;
        max-height:100%!important;
        aspect-ratio:16 / 9!important;
        margin:auto!important;
    }

    /* HUD is deliberately reduced to fight information only. */
    body.rr-match-running .rr-hud{
        top:max(4px,env(safe-area-inset-top))!important;
        left:50%!important;
        right:auto!important;
        width:min(100%,calc(var(--rr-mobile-vh,100dvh) * 16 / 9))!important;
        padding:0 max(62px,env(safe-area-inset-right)) 0 max(62px,env(safe-area-inset-left))!important;
        transform:translateX(-50%)!important;
        grid-template-columns:minmax(0,1fr) 54px minmax(0,1fr)!important;
        gap:3px!important;
        pointer-events:none!important;
    }

    body.rr-match-running .rr-portrait,
    body.rr-match-running .rr-fighter-foot,
    body.rr-match-running .rr-trait{
        display:none!important;
    }

    body.rr-match-running .rr-fighter{
        min-height:39px!important;
        height:39px!important;
        border-radius:5px!important;
        clip-path:none!important;
    }

    body.rr-match-running .rr-fighter-main{
        width:100%!important;
        padding:3px 5px!important;
    }

    body.rr-match-running .rr-name{
        margin-bottom:2px!important;
        font-size:.50rem!important;
        line-height:1!important;
    }

    body.rr-match-running .rr-name small{
        font-size:.40rem!important;
    }

    body.rr-match-running .rr-hp-bar{
        height:7px!important;
        margin-bottom:2px!important;
    }

    body.rr-match-running .rr-energy-bar{
        height:3px!important;
    }

    body.rr-match-running .rr-center{
        min-height:39px!important;
        height:39px!important;
        padding:3px!important;
    }

    body.rr-match-running .rr-round{
        font-size:.40rem!important;
    }

    body.rr-match-running .rr-timer{
        font-size:1.02rem!important;
        line-height:1!important;
    }

    /* Controls get the screen edges. The fight stays visible between the thumbs. */
    body.rr-match-running .rr-touch-controls{
        display:block!important;
        position:absolute!important;
        z-index:40!important;
        inset:0!important;
        pointer-events:none!important;
    }

    body.rr-match-running .rr-touch-cluster{
        bottom:max(7px,env(safe-area-inset-bottom))!important;
        grid-template-columns:repeat(2,54px)!important;
        gap:5px!important;
    }

    body.rr-match-running .rr-touch-movement{
        left:max(7px,env(safe-area-inset-left))!important;
    }

    body.rr-match-running .rr-touch-attacks{
        right:max(7px,env(safe-area-inset-right))!important;
    }

    body.rr-match-running .rr-touch-controls button{
        width:54px!important;
        min-width:54px!important;
        height:42px!important;
        min-height:42px!important;
        border-radius:10px!important;
        font-size:.58rem!important;
        background:rgba(3,12,18,.70)!important;
        backdrop-filter:blur(5px)!important;
    }

    /* Keep only the essential exit control visible over the game. */
    body.rr-match-running .rr-play-window-head{
        top:max(5px,env(safe-area-inset-top))!important;
        right:max(5px,env(safe-area-inset-right))!important;
        z-index:100050!important;
    }

    body.rr-match-running .rr-play-window-back{
        min-height:30px!important;
        height:30px!important;
        padding:0 9px!important;
        font-size:.54rem!important;
        background:rgba(3,10,15,.76)!important;
    }

    body.rr-match-running .rr-controls-overlay,
    body.rr-match-running .rr-stage-note,
    body.rr-match-running .rr-arena-motto{
        display:none!important;
    }

    body.rr-match-running .rr-status{
        bottom:max(4px,env(safe-area-inset-bottom))!important;
        min-width:150px!important;
        max-width:34vw!important;
        padding:4px 7px!important;
        font-size:.44rem!important;
        opacity:.86!important;
    }
}

@media(max-width:1000px) and (orientation:landscape) and (max-height:430px){
    body.rr-match-running .rr-touch-cluster{
        grid-template-columns:repeat(2,48px)!important;
    }
    body.rr-match-running .rr-touch-controls button{
        width:48px!important;
        min-width:48px!important;
        height:36px!important;
        min-height:36px!important;
        font-size:.52rem!important;
    }
    body.rr-match-running .rr-hud{
        padding-left:max(54px,env(safe-area-inset-left))!important;
        padding-right:max(54px,env(safe-area-inset-right))!important;
    }
}
