/* REALM//BREACH arena (shared by battleground.html and the Discord Activity). Colours: --surface, --line, --muted,
   --text, --text-strong come from the page. */
.rb-board-wrap{display:grid;grid-template-columns:1fr 280px;gap:14px}
@media(max-width:980px){.rb-board-wrap{grid-template-columns:1fr}}
.rb-board{position:relative;border-radius:18px;overflow:hidden;border:1px solid var(--line);background:#0b0d12 center/cover no-repeat;
       padding:12px;display:flex;flex-direction:column;gap:10px;min-height:640px}
.rb-board::before{content:"";position:absolute;inset:0;background:rgba(6,8,12,.42);pointer-events:none}
.rb-board > *{position:relative}
.rb-side{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:rgba(10,12,18,.78);border:1px solid rgba(255,255,255,.08);
      border-radius:12px;padding:8px 12px;color:#e8e6e1;font-size:13px}
.rb-side .rb-who{font-family:Cinzel,serif;font-weight:700;font-size:15px;min-width:120px}
.rb-core{flex:1;min-width:160px}
.rb-core .rb-bar{height:9px;border-radius:5px;background:rgba(255,255,255,.12);overflow:hidden;margin-top:3px}
.rb-core .rb-bar i{display:block;height:100%;background:linear-gradient(90deg,#c0392b,#e67e22)}
.rb-core.rb-me .rb-bar i{background:linear-gradient(90deg,#1f8f74,#2dd4bf)}
.rb-pill{background:rgba(255,255,255,.08);border-radius:999px;padding:2px 9px;white-space:nowrap}
.rb-backs{display:inline-flex;vertical-align:middle;margin-left:6px}
.rb-backs img{width:16px;height:24px;border-radius:2px;margin-left:-7px;box-shadow:0 0 0 1px rgba(0,0,0,.6)}
.rb-backs img:first-child{margin-left:0}
.rb-pips{display:inline-flex;gap:3px;vertical-align:middle}.rb-pips i{width:9px;height:9px;border-radius:2px;transform:rotate(45deg);background:rgba(255,255,255,.18)}
.rb-pips i.rb-on{background:#f5c542}
.rb-pw i.rb-on{background:#5eead4}
.rb-lanes{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.rb-lane{min-height:190px;border-radius:12px;border:1px dashed rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;
      position:relative;background:rgba(0,0,0,.18);transition:border-color .15s,background .15s}
.rb-lane .rb-lname{position:absolute;top:6px;left:8px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.rb-lane.rb-target{border-color:#5eead4;background:rgba(45,212,191,.12);cursor:pointer}
.rb-fighter{position:relative;width:118px;text-align:center}
.rb-fighter img{width:118px;height:auto;display:block;border-radius:8px}
.rb-stat{position:absolute;bottom:-8px;left:50%;transform:translateX(-50%);background:rgba(8,10,14,.92);color:#fff;border:1px solid rgba(255,255,255,.18);
      border-radius:999px;padding:1px 9px;font-weight:700;font-size:13px;white-space:nowrap}
.rb-stat .rb-a{color:#ff8a80}.rb-stat .rb-d{color:#82b1ff}
.rb-fighter .rb-tag{position:absolute;top:4px;right:4px;font-size:10.5px;background:rgba(8,10,14,.85);color:#ddd;border-radius:6px;padding:1px 6px}
.rb-fighter .rb-tag-l{top:auto;bottom:16px;right:auto;left:4px;background:rgba(245,197,66,.92);color:#1a1405;font-weight:700}
.rb-info{justify-content:space-between;font-size:13px}
.rb-zone{background:rgba(34,197,94,.18);border:1px solid rgba(34,197,94,.5)}
.rb-relics{display:flex;flex-wrap:wrap;gap:3px;justify-content:center;margin-top:12px}
.rb-relics span{font-size:10.5px;background:rgba(180,83,9,.85);color:#fff7ed;border-radius:5px;padding:1px 5px}
.rb-resp{background:rgba(12,14,20,.92);border:1px solid #f5c542;border-radius:12px;padding:10px 12px;color:#eee;display:flex;flex-direction:column;gap:8px}
.rb-resp.rb-wait{border-color:rgba(255,255,255,.18)}
.rb-resp h3{margin:0;font-size:14px;letter-spacing:.12em;text-transform:uppercase;color:#f5c542}
.rb-resp.rb-wait h3{color:#bbb}
.rb-stack{display:flex;gap:6px;flex-wrap:wrap;font-size:12.5px}
.rb-stack span{background:rgba(255,255,255,.08);border-radius:8px;padding:3px 8px}
.rb-stack span.rb-x{text-decoration:line-through;opacity:.6}
.rb-stack span.rb-mine{border:1px solid rgba(94,234,212,.5)}
.rb-ropts{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.rb-ropt{display:flex;gap:6px;align-items:center;background:rgba(245,197,66,.12);border:1px solid rgba(245,197,66,.5);color:#fff;border-radius:10px;padding:4px 10px 4px 4px;cursor:pointer;font:inherit;font-size:13px}
.rb-ropt img{width:34px;border-radius:4px}
.rb-hcard .rb-rbadge{position:absolute;top:4px;left:4px;font-size:10px;background:#f5c542;color:#1a1405;border-radius:5px;padding:1px 5px;font-weight:700}
.rb-atk-btn{margin-top:14px}
.rb-center{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;background:rgba(10,12,18,.82);
        border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:8px 12px;color:#e8e6e1}
.rb-phases{display:flex;gap:4px;flex-wrap:wrap}.rb-phases span{font-size:12px;padding:3px 9px;border-radius:999px;background:rgba(255,255,255,.07);color:rgba(255,255,255,.6)}
.rb-phases span.rb-on{background:#2dd4bf;color:#062a24;font-weight:700}
.rb-actions{display:flex;gap:6px;flex-wrap:wrap}
.rb-hand{display:flex;gap:8px;overflow-x:auto;padding:6px 2px 10px}
.rb-hcard{flex:0 0 auto;width:104px;position:relative;cursor:default;border-radius:8px;transition:transform .12s}
.rb-hcard img{width:104px;display:block;border-radius:8px}
.rb-hcard.rb-ok{cursor:pointer}.rb-hcard.rb-ok:hover{transform:translateY(-4px)}
.rb-hcard.rb-sel{outline:3px solid #5eead4;outline-offset:2px}
.rb-hcard.rb-no img{filter:grayscale(.75) brightness(.6)}
.rb-hcard .rb-cost{position:absolute;top:-6px;left:-6px;width:24px;height:24px;border-radius:50%;background:#0f766e;color:#fff;font-weight:800;
             display:flex;align-items:center;justify-content:center;font-size:13px;border:2px solid #99f6e4}
.rb-hcard .rb-soon{position:absolute;bottom:6px;left:4px;right:4px;font-size:10px;text-align:center;background:rgba(0,0,0,.75);color:#ddd;border-radius:5px;padding:2px}
.rb-log{max-height:640px;overflow:auto;font-size:12.5px;line-height:1.45}
.rb-log div{padding:4px 0;border-bottom:1px solid var(--line);color:var(--muted)}
.rb-log div.rb-me{color:var(--text)}.rb-log div.rb-big{color:var(--text-strong);font-weight:600}
.rb-over{position:absolute;inset:0;background:rgba(5,6,10,.82);display:flex;align-items:center;justify-content:center;z-index:5;border-radius:18px}
.rb-over .card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:26px 30px;text-align:center;max-width:420px}
.rb-over h2{font-family:Cinzel,serif;font-size:32px;margin:0 0 6px}
.muted{color:var(--muted)}
.rb-timer{font-variant-numeric:tabular-nums}
@media(max-width:620px){.rb-fighter,.rb-fighter img{width:84px}.rb-lane{min-height:150px}.rb-hcard,.rb-hcard img{width:84px}}
.rb-timer.rb-low{color:#fca5a5;font-weight:700}
.rb-overbtns{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
.rb-acts{display:flex;flex-direction:column;align-items:center}
/* attack / defense positions, sacrifices and the picked attacker (new match rules) */
.rb-fighter.rb-defpos img{transform:rotate(-90deg) scale(.7);filter:saturate(.8) brightness(.92)}
.rb-fighter.rb-atksel img{box-shadow:0 0 0 3px #fbbf24,0 0 18px rgba(251,191,36,.55)}
.rb-lane.rb-tribsel{border-color:#f87171!important;background:rgba(248,113,113,.14)!important}
.rb-lane.rb-tribsel .rb-fighter img{opacity:.55}
.rb-posbtns{display:inline-flex;gap:6px;flex-wrap:wrap;margin:6px 0}
@media (prefers-reduced-motion:no-preference){.rb-fighter img{transition:transform .25s ease}}
