:root{--rl2-bg:#07131e;--rl2-card:#102332;--rl2-card2:#172f40;--rl2-text:#f6fbff;--rl2-muted:#9fc1d5;--rl2-line:rgba(255,255,255,.13);--rl2-accent:#19d68f;--rl2-red:#ef3340;--rl2-green:#10a84f;--rl2-yellow:#ffd21f;--rl2-blue:#1f58ad}
.rl2-app,.rl2-app *{box-sizing:border-box}.rl2-app{position:relative;width:100%;min-height:720px;background:radial-gradient(circle at 50% 0,#133044 0,#07131e 52%,#03090e 100%);color:var(--rl2-text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;border-radius:22px;overflow:hidden}.rl2-app button,.rl2-app a{font:inherit}.rl2-app button{cursor:pointer}.rl2-app [hidden]{display:none!important}.rl2-loading{min-height:720px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.rl2-loading span{width:46px;height:46px;border:4px solid rgba(255,255,255,.18);border-top-color:var(--rl2-accent);border-radius:50%;animation:rl2spin .8s linear infinite}.rl2-loading strong{font-size:18px}.rl2-login,.rl2-rules{max-width:820px;margin:20px auto;padding:28px;border-radius:20px;background:#102332;color:#fff}.rl2-login a,.rl2-rules a{display:inline-flex;margin-top:12px;padding:12px 18px;border-radius:12px;background:#19d68f;color:#04120c;text-decoration:none;font-weight:800}.rl2-rules h1{font-size:34px}.rl2-rules h2{margin-top:24px;font-size:21px}.rl2-rules p{color:#c9dfeb;line-height:1.65}@keyframes rl2spin{to{transform:rotate(360deg)}}
.rl2-lobby{min-height:720px;padding:16px}.rl2-lobby-head,.rl2-game-head{display:grid;grid-template-columns:80px 1fr 140px;align-items:center;min-height:64px;padding:8px 10px;border-bottom:1px solid var(--rl2-line)}.rl2-lobby-head>a,.rl2-game-head>button{width:46px;height:46px;border:1px solid var(--rl2-line);border-radius:14px;background:rgba(255,255,255,.06);color:#fff;text-decoration:none;display:grid;place-items:center;font-size:25px}.rl2-lobby-head h1{text-align:center;margin:0;font-size:30px;letter-spacing:5px}.rl2-wallet{text-align:right}.rl2-wallet strong{display:block;font-size:15px}.rl2-wallet a{color:#58f2bd;font-size:12px;text-decoration:none}.rl2-home{max-width:640px;margin:66px auto 0;display:grid;gap:14px}.rl2-mode{width:100%;display:grid;grid-template-columns:68px 1fr;align-items:center;text-align:left;gap:16px;padding:18px;border:1px solid var(--rl2-line);border-radius:18px;background:linear-gradient(135deg,rgba(26,66,89,.96),rgba(13,37,52,.96));color:#fff;box-shadow:0 12px 30px rgba(0,0,0,.22);transition:.18s ease}.rl2-mode:hover{transform:translateY(-2px);border-color:rgba(25,214,143,.65)}.rl2-mode>b{height:54px;border-radius:16px;background:rgba(255,255,255,.09);display:grid;place-items:center;color:#5ef0bd;font-size:20px}.rl2-mode span{display:flex;flex-direction:column;gap:5px}.rl2-mode strong{font-size:20px}.rl2-mode small{font-size:13px;color:var(--rl2-muted)}.rl2-links{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.rl2-links button,.rl2-links a{border:1px solid var(--rl2-line);background:rgba(255,255,255,.05);color:#d9edf7;border-radius:13px;padding:12px;text-align:center;text-decoration:none}.rl2-reconnect{border:0;border-radius:14px;padding:15px;background:#ffbf3c;color:#251700;font-weight:900}.rl2-panel{max-width:680px;margin:34px auto;padding:20px;border:1px solid var(--rl2-line);border-radius:20px;background:rgba(12,32,45,.94)}.rl2-panel header{display:grid;grid-template-columns:48px 1fr;align-items:center;gap:14px;margin-bottom:24px}.rl2-panel header button{width:44px;height:44px;border:1px solid var(--rl2-line);border-radius:13px;background:rgba(255,255,255,.06);color:#fff;font-size:22px}.rl2-panel header small{color:#5ef0bd;font-weight:800;letter-spacing:1px}.rl2-panel header h2{margin:2px 0 0;font-size:25px}.rl2-panel>label{display:block;margin:17px 0 8px;color:#bdd5e2;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.7px}.rl2-choice{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.rl2-choice button,.rl2-stakes button{border:1px solid var(--rl2-line);border-radius:12px;background:rgba(255,255,255,.05);color:#d9edf7;padding:12px;font-weight:700}.rl2-choice button.is-active,.rl2-stakes button.is-active{background:var(--rl2-accent);border-color:var(--rl2-accent);color:#03120c}.rl2-stakes{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.rl2-primary{width:100%;margin-top:20px;border:0;border-radius:14px;padding:15px;background:linear-gradient(135deg,#19d68f,#65f2bf);color:#03140d;font-weight:900;font-size:16px}.rl2-primary:disabled{opacity:.55}.rl2-list-head{display:flex;align-items:center;justify-content:space-between;margin-top:26px}.rl2-list-head h3{margin:0}.rl2-list-head button{border:0;background:transparent;color:#5ef0bd}.rl2-table-list{display:grid;gap:10px;margin-top:12px}.rl2-table-card{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:14px;padding:14px;border:1px solid var(--rl2-line);border-radius:15px;background:rgba(255,255,255,.045)}.rl2-table-card>div{display:flex;flex-direction:column;gap:3px}.rl2-table-card small{color:#5ef0bd}.rl2-table-card span{font-size:12px;color:var(--rl2-muted)}.rl2-table-card>strong{font-size:13px}.rl2-table-card button{border:0;border-radius:10px;background:#19d68f;color:#03130c;padding:10px 15px;font-weight:900}.rl2-empty{padding:24px;text-align:center;color:var(--rl2-muted);border:1px dashed var(--rl2-line);border-radius:14px}
.rl2-game{min-height:720px;padding:12px}.rl2-game-head{grid-template-columns:70px 1fr 100px;padding:4px 6px}.rl2-game-head>div:nth-child(2){text-align:center}.rl2-game-head small{display:block;color:#86adbf;font-size:10px;letter-spacing:1px}.rl2-game-head strong{font-size:16px;letter-spacing:2px}.rl2-game-head>div:last-child{display:flex;justify-content:flex-end;gap:7px}.rl2-game-head>div:last-child button{width:42px;height:42px;border:1px solid var(--rl2-line);border-radius:12px;background:rgba(255,255,255,.05);color:#fff}.rl2-game-head button.is-off{opacity:.45}.rl2-player-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:10px 0}.rl2-player{min-width:0;display:grid;grid-template-columns:14px 1fr auto;align-items:center;gap:7px;padding:9px;border:1px solid var(--rl2-line);border-radius:12px;background:rgba(255,255,255,.045);opacity:.72}.rl2-player i,.rl2-result-row i{width:11px;height:11px;border-radius:50%;background:#888}.rl2-player.seat-red i,.rl2-result-row.seat-red i{background:var(--rl2-red)}.rl2-player.seat-green i,.rl2-result-row.seat-green i{background:var(--rl2-green)}.rl2-player.seat-yellow i,.rl2-result-row.seat-yellow i{background:var(--rl2-yellow)}.rl2-player.seat-blue i,.rl2-result-row.seat-blue i{background:var(--rl2-blue)}.rl2-player span{min-width:0;display:flex;flex-direction:column}.rl2-player strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}.rl2-player small{font-size:9px;color:var(--rl2-muted)}.rl2-player em{font-style:normal;font-weight:900;color:#ffcf54}.rl2-player.is-turn{opacity:1;border-color:#5ef0bd;box-shadow:0 0 0 2px rgba(25,214,143,.15)}.rl2-player.is-you{background:rgba(25,214,143,.1)}.rl2-player.is-finished{opacity:.58}.rl2-status-row{display:grid;grid-template-columns:1fr 90px 1fr;gap:8px;margin:9px 0}.rl2-status-row>div{text-align:center;padding:8px;border-radius:11px;background:rgba(255,255,255,.05);border:1px solid var(--rl2-line)}.rl2-status-row small{display:block;font-size:9px;color:var(--rl2-muted);letter-spacing:1px}.rl2-status-row strong{font-size:14px}.rl2-status-row #rl2-time{font-size:23px}.rl2-status-row #rl2-time.is-danger{color:#ff5c69}.rl2-stage{display:grid;grid-template-columns:minmax(300px,680px) minmax(170px,220px);align-items:center;justify-content:center;gap:20px;margin:10px auto 0;max-width:940px}.rl2-board-shell{position:relative;width:100%;aspect-ratio:1/1;overflow:hidden;border-radius:18px;box-shadow:0 22px 48px rgba(0,0,0,.4);background:#fff}.rl2-board-rotator{position:absolute;inset:0;transform-origin:center;transition:transform .35s ease}.rl2-board-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;user-select:none;pointer-events:none}.rl2-token-layer,.rl2-animation-layer{position:absolute;inset:0}.rl2-token{position:absolute;width:4.7%;aspect-ratio:1/1;transform:translate(-50%,-50%);border:2px solid rgba(255,255,255,.92);border-radius:50% 50% 47% 47%;box-shadow:0 4px 7px rgba(0,0,0,.42),inset 0 2px 3px rgba(255,255,255,.55);transition:left .18s linear,top .18s linear,transform .18s ease,filter .18s ease;z-index:5}.rl2-token:before{content:"";position:absolute;left:18%;right:18%;top:13%;height:26%;border-radius:50%;background:rgba(255,255,255,.45)}.rl2-token.seat-red{background:radial-gradient(circle at 35% 25%,#ff8f98,#df0e25 70%)}.rl2-token.seat-green{background:radial-gradient(circle at 35% 25%,#82f1a9,#078c3c 70%)}.rl2-token.seat-yellow{background:radial-gradient(circle at 35% 25%,#fff4a0,#f1b900 70%)}.rl2-token.seat-blue{background:radial-gradient(circle at 35% 25%,#9fc4ff,#164a9f 70%)}.rl2-token.is-legal{z-index:12;animation:rl2pulse .85s ease-in-out infinite;cursor:pointer}.rl2-token.is-moving{z-index:20;transform:translate(-50%,-50%) scale(1.3);filter:drop-shadow(0 0 8px #fff)}.rl2-token.is-captured{z-index:18;filter:drop-shadow(0 0 8px #ff3348)}.rl2-token.is-releasing{animation:rl2release .65s ease}.rl2-token:disabled{cursor:default}@keyframes rl2pulse{0%,100%{transform:translate(-50%,-50%) scale(1);box-shadow:0 0 0 0 rgba(255,255,255,.9),0 4px 7px rgba(0,0,0,.4)}50%{transform:translate(-50%,-50%) scale(1.35);box-shadow:0 0 0 8px rgba(255,255,255,0),0 4px 10px rgba(0,0,0,.5)}}@keyframes rl2release{0%{transform:translate(-50%,-50%) scale(.5)}50%{transform:translate(-50%,-50%) scale(1.55)}100%{transform:translate(-50%,-50%) scale(1.25)}}.rl2-control{display:flex;flex-direction:column;align-items:center;gap:12px;padding:18px;border:1px solid var(--rl2-line);border-radius:20px;background:rgba(9,29,42,.9)}.rl2-dice{position:relative;width:130px;height:130px;display:grid;place-items:center;border-radius:24px;background:linear-gradient(145deg,#fff,#d4d8dc);box-shadow:0 15px 32px rgba(0,0,0,.35),inset 0 2px 4px rgba(255,255,255,.9)}.rl2-dice img{width:95px;height:95px;object-fit:contain}.rl2-dice b{position:absolute;right:8px;bottom:5px;min-width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#06131d;color:#fff;font-size:22px}.rl2-dice.is-rolling{animation:rl2dice .15s linear infinite}@keyframes rl2dice{0%{transform:rotate(-8deg) translateY(0)}50%{transform:rotate(8deg) translateY(-8px)}100%{transform:rotate(-8deg) translateY(0)}}.rl2-roll{width:100%;border:0;border-radius:14px;padding:15px;background:linear-gradient(135deg,#19d68f,#71f6c7);color:#03140d;font-weight:950;font-size:18px}.rl2-roll:disabled{opacity:.35;cursor:not-allowed}.rl2-control p{min-height:42px;text-align:center;margin:0;color:#c4dce8;font-size:13px;line-height:1.45}.rl2-game-meta{width:100%;display:flex;justify-content:space-between;gap:10px;font-size:11px;color:var(--rl2-muted)}.rl2-game-meta strong{color:#fff}.rl2-big-result{position:absolute;inset:0;z-index:100;background:rgba(2,8,13,.78);display:grid;place-items:center;opacity:0;transition:opacity .18s ease}.rl2-big-result.is-visible{opacity:1}.rl2-big-result>div{position:relative;width:min(360px,74vw);aspect-ratio:1/1;border-radius:32px;background:linear-gradient(145deg,#fff,#dce0e3);box-shadow:0 30px 90px rgba(0,0,0,.6);display:flex;flex-direction:column;align-items:center;justify-content:center;transform:scale(.85);transition:transform .2s ease}.rl2-big-result.is-visible>div{transform:scale(1)}.rl2-big-result img{width:54%;height:54%;object-fit:contain}.rl2-big-result strong{position:absolute;right:22px;top:16px;color:#06131d;font-size:104px;line-height:1;font-weight:1000;text-shadow:0 3px 0 #fff}.rl2-big-result small{color:#0a1822;letter-spacing:3px;font-weight:900;margin-top:4px}
.rl2-modal{position:absolute;inset:0;z-index:120;background:rgba(2,8,13,.78);display:grid;place-items:center;padding:18px;opacity:0;transition:.16s ease}.rl2-modal.is-visible{opacity:1}.rl2-modal-card{position:relative;width:min(520px,100%);max-height:85%;overflow:auto;border:1px solid var(--rl2-line);border-radius:20px;background:#102332;padding:22px;box-shadow:0 25px 75px rgba(0,0,0,.55)}.rl2-modal-card h2{margin:0 40px 18px 0}.rl2-modal-close{position:absolute;right:14px;top:12px;width:38px;height:38px;border:0;border-radius:11px;background:rgba(255,255,255,.08);color:#fff;font-size:25px}.rl2-modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.rl2-modal-actions button{border:1px solid var(--rl2-line);border-radius:11px;background:rgba(255,255,255,.06);color:#fff;padding:11px 16px}.rl2-modal-actions button.is-primary{border-color:#19d68f;background:#19d68f;color:#03140d;font-weight:900}.rl2-history,.rl2-leaderboard,.rl2-results{display:grid;gap:9px}.rl2-history>div,.rl2-leaderboard>div,.rl2-result-row{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;padding:11px;border-radius:12px;background:rgba(255,255,255,.05)}.rl2-history b,.rl2-leaderboard b,.rl2-result-row>b{width:34px;height:34px;border-radius:10px;background:rgba(255,255,255,.08);display:grid;place-items:center}.rl2-history span{display:flex;flex-direction:column}.rl2-history small{color:var(--rl2-muted)}.rl2-history em{font-style:normal;font-size:11px;color:#7df4c6}.rl2-leaderboard strong{color:#7df4c6}.rl2-result-row{grid-template-columns:42px 12px 1fr}.rl2-toast{position:absolute;z-index:150;left:50%;bottom:22px;transform:translateX(-50%);max-width:min(520px,90%);padding:12px 17px;border-radius:12px;background:#fff;color:#07131e;font-weight:800;box-shadow:0 12px 35px rgba(0,0,0,.45)}
@media(max-width:760px){.rl2-app,.rl2-loading,.rl2-lobby,.rl2-game{min-height:650px}.rl2-lobby-head{grid-template-columns:58px 1fr 100px}.rl2-lobby-head h1{font-size:25px}.rl2-home{margin-top:34px}.rl2-stage{grid-template-columns:1fr;gap:12px}.rl2-board-shell{max-width:620px;margin:auto}.rl2-control{display:grid;grid-template-columns:92px 1fr;grid-template-areas:"dice roll" "dice text" "meta meta";width:100%;padding:12px}.rl2-dice{grid-area:dice;width:86px;height:86px;border-radius:18px}.rl2-dice img{width:64px;height:64px}.rl2-dice b{min-width:27px;height:27px;font-size:17px}.rl2-roll{grid-area:roll}.rl2-control p{grid-area:text;min-height:30px}.rl2-game-meta{grid-area:meta}.rl2-player-grid{grid-template-columns:repeat(2,1fr)}.rl2-token{width:5.7%}.rl2-big-result strong{font-size:82px}.rl2-stakes{grid-template-columns:repeat(4,1fr)}}
@media(max-width:480px){.rl2-app{border-radius:0}.rl2-lobby,.rl2-game{padding:8px}.rl2-lobby-head,.rl2-game-head{grid-template-columns:52px 1fr 88px}.rl2-lobby-head h1{font-size:21px;letter-spacing:3px}.rl2-wallet strong{font-size:12px}.rl2-home{margin-top:22px}.rl2-mode{grid-template-columns:55px 1fr;padding:14px}.rl2-mode>b{height:48px}.rl2-mode strong{font-size:17px}.rl2-links{grid-template-columns:1fr}.rl2-panel{margin:12px 0;padding:14px}.rl2-stakes{grid-template-columns:repeat(2,1fr)}.rl2-table-card{grid-template-columns:1fr auto}.rl2-table-card>strong{display:none}.rl2-player-grid{gap:5px}.rl2-player{padding:7px}.rl2-status-row{grid-template-columns:1fr 70px 1fr}.rl2-stage{margin-top:5px}.rl2-control{grid-template-columns:80px 1fr}.rl2-dice{width:75px;height:75px}.rl2-dice img{width:55px;height:55px}.rl2-token{width:6.4%;border-width:1.5px}.rl2-big-result strong{font-size:66px;right:13px;top:12px}.rl2-big-result>div{border-radius:23px}.rl2-modal-card{padding:17px}.rl2-history>div{grid-template-columns:38px 1fr}.rl2-history em{grid-column:2}.rl2-lobby-head>a,.rl2-game-head>button{width:40px;height:40px}}


/* Ludo 2.0.1 visual fixes */
.rl2-token{
  transform: translate(-50%, -50%) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
}

.rl2-token,
.rl2-token > *{
  box-sizing:border-box;
}

.rl2-big-result{
  transition:opacity .18s ease, transform .18s ease;
}

.rl2-big-result strong{
  font-size: clamp(30px, 6vw, 56px) !important;
  line-height:1 !important;
}

.rl2-status-play,
.rl2-pill-play,
.rl2-badge-play{
  background:#1fa34a !important;
  color:#fff !important;
}

.rl2-status-wait,
.rl2-pill-wait,
.rl2-badge-wait{
  background:#cf3030 !important;
  color:#fff !important;
}

.rl2-board,
.rl2-board-image,
.rl2-board-overlay{
  overflow:visible;
}


/* PLC Game font compatibility */
#plc-304,#plc-blackjack,#plc-chess,#plc-sos,#lm-app,#lc-app,#rl2-app,#plc-304 button,#plc-blackjack button,#plc-chess button,#plc-sos button,#lm-app button,#lc-app button,#rl2-app button,#plc-304 input,#plc-blackjack input,#plc-chess input,#plc-sos input,#lm-app input,#lc-app input,#rl2-app input,#plc-304 select,#plc-blackjack select,#plc-chess select,#plc-sos select,#lm-app select,#lc-app select,#rl2-app select{font-family:var(--plc-game-font,"Poppins",ui-sans-serif,system-ui,sans-serif)!important;}
