/* Belot presentation only. Shared tokens/preferences are owned by RAFAS UI. */
.belot-redesign{--text:var(--rf-text);--muted:var(--rf-muted);--line:var(--rf-line);--gold:#c9e8df;--gold-2:#ddf8f0;--card-h:calc(var(--card-w)*1.45);background:var(--rf-bg);font-family:var(--rf-font)}
.belot-redesign button:focus-visible,.belot-redesign [role=button]:focus-visible,.belot-redesign a:focus-visible,.belot-redesign input:focus-visible{outline:3px solid var(--rf-focus);outline-offset:3px}
.belot-redesign .btn,.belot-redesign select,.belot-redesign input,.belot-redesign .sit{min-height:46px;border-radius:10px}
.belot-redesign .btn.gold,.belot-redesign .btn.green{background:var(--rf-accent);color:#082c2c;border:1px solid #c5fff1;box-shadow:none}
.belot-redesign .modal,.belot-redesign .sheet,.belot-redesign .menu-pop,.belot-redesign .settings-pop{background:var(--rf-panel);color:var(--rf-text);border:1px solid var(--rf-line);box-shadow:var(--rf-shadow);border-radius:18px}
.belot-redesign .modal{max-height:calc(var(--play-vh,100dvh) - 32px);overflow:auto;width:min(560px,calc(100vw - 24px));padding:24px}
.belot-redesign .overlay{background:#020b14b8;backdrop-filter:blur(9px);z-index:1000}
.belot-redesign select,.belot-redesign input{background:#071925;color:var(--rf-text);border:1px solid var(--rf-line)}
.belot-redesign .modal h2{color:var(--rf-text);font-family:var(--rf-font)}
.belot-redesign .modal .actions .btn{animation:none}
.belot-redesign .youare img,.belot-redesign .youare svg,.belot-redesign .ot-faces img,.belot-redesign .ot-faces svg{border-radius:var(--rf-avatar-radius)}

/* V05: social lobby, then practice. */
#lobby{display:flex;justify-content:flex-start;align-items:stretch;padding:24px max(20px,calc((100vw - 920px)/2));gap:18px;background:radial-gradient(ellipse at 85% 15%,#16497866,transparent 55%),#06121c;overflow:auto}
#lobby .lounge,#lobby .divider,#lobby .lobby-foot,#lobby .hero .brand{display:none}
#lobby .lobby-top{position:relative;inset:auto;display:flex;justify-content:space-between;width:100%;max-width:none;gap:12px;padding:0;flex:none}
#lobby .allgames{font-size:14px;color:var(--rf-muted);background:none;border:0;padding:12px 0;white-space:nowrap}
#lobby .top-tools{gap:8px}#lobby .tt{min-width:46px;min-height:46px;background:var(--rf-panel);border:1px solid var(--rf-line);border-radius:12px;padding:8px}
#lobby .tt small{display:none}#lobby .tt-ic{width:22px;height:22px;border:0;background:none;box-shadow:none}
#lobby .hero{position:relative;text-align:left;min-height:130px;margin:12px 0 0;padding:0;width:100%;display:block}
#lobby .hero::after{content:'♣';position:absolute;right:16px;top:-16px;font:150px/1 Georgia,serif;color:#89cfc5;opacity:.23;transform:rotate(-14deg);pointer-events:none}
#lobby .logo{font:750 clamp(42px,7vw,64px)/1.12 var(--rf-font);letter-spacing:-.045em;color:var(--rf-text);text-shadow:none;margin:9px 0}
#lobby .tagline{font:15px/1.5 var(--rf-font);letter-spacing:0;color:var(--rf-muted);max-width:300px}
#lobby .panel{width:100%;max-width:none;margin:0;padding:16px;background:var(--rf-panel);border:1px solid var(--rf-line);box-shadow:none;border-radius:14px}
#lobby .who{order:0}#lobby .who-hd{margin-bottom:8px}#lobby .who-hd h2{font-size:11px;letter-spacing:.12em;color:var(--rf-muted)}#lobby .who-hd>span{font-size:10px}
#lobby #dice{min-width:32px}#lobby .field{margin:0}#lobby .youare{gap:12px}#lobby .youare>img,#lobby .youare>svg{width:48px!important;height:48px!important;border-radius:10px}#lobby .youare b{font-size:16px}#lobby .youare small{font-size:12px}#lobby .guest-avatars{margin-top:8px}#lobby #profile{font-size:11px;margin-top:8px;color:var(--rf-muted)}
#lobby .menu{display:block;width:100%;max-width:none;margin:0}#lobby .mcard{width:100%;min-height:82px;border-radius:14px;padding:16px;display:flex;align-items:center;gap:16px;text-align:left;box-shadow:none;background:var(--rf-panel-raised);border:1px solid var(--rf-line)}
#lobby .mcard.gold{background:linear-gradient(115deg,#9ae9d8,#69cbbf);color:#082b2d;border-color:#b4ffe9}#lobby .m-ic{width:42px;height:42px;flex:none;background:none;box-shadow:none;border:0}#lobby .m-tx b{font:750 17px/1.2 var(--rf-font);letter-spacing:0}#lobby .m-tx small{font:12px/1.5 var(--rf-font);letter-spacing:.035em;opacity:.8}#lobby .m-arr{margin-left:auto}
#lobby .extra{display:flex;flex-direction:column;gap:16px}#lobby .join-row{order:-1;padding:0;margin:0}#lobby .code-input{min-width:0;width:100%;font-size:15px!important;letter-spacing:.12em;text-align:left;padding:12px}#lobby #btnJoin{flex:0 0 80px}#lobby .ourtable{margin:0;border:0;border-top:1px solid var(--rf-line);padding:14px 0 0}#lobby .ot-hd{align-items:flex-start;gap:6px}#lobby .ot-hd b{font-size:14px}#lobby .ot-hd>span{font-size:12px}#lobby .ot-row{margin-top:10px}#lobby .ot-empty{font-size:12px;color:var(--rf-muted)}
#lobby .belot-solo{display:grid;gap:9px}#lobby .belot-solo .mcard{min-height:70px}#lobby .belot-solo .m-tx b{font-size:15px}#lobby .tiles{display:flex;width:100%;max-width:none;margin:0;gap:8px;padding-bottom:24px}#lobby .tile{flex:1;min-width:0;min-height:56px;background:transparent;border:1px solid var(--rf-line);border-radius:10px;padding:10px;box-shadow:none}#lobby .tile .t-ic{display:none}#lobby .tile b{font:600 11px var(--rf-font)}#lobby .tile small{display:none}

/* V06: the viewport is the table, with one hand. */
#table{position:fixed;inset:var(--play-top,0px) 0 auto;height:var(--play-vh,100dvh);max-width:none;width:100%;padding:0;overflow:hidden;background:radial-gradient(ellipse at 50% 30%,var(--rf-table),var(--rf-table-deep));--av:62px}
#table .topbar,#table.compact .topbar{position:absolute;inset:0 0 auto;height:56px;min-height:56px;padding:6px 14px;border:0;border-bottom:1px solid #bed8ee22;background:#06121c88;z-index:30}
#table .topbar .rb,#table.compact .topbar .rb{width:44px;height:44px;min-height:44px;border-radius:12px;background:#ffffff09;border:1px solid #ffffff20;box-shadow:none}
#table .brand-sm,#table.compact .brand-sm{display:flex;align-items:center;gap:8px;margin:0 auto}#table .brand-sm img{display:block;width:36px;height:34px;object-fit:contain}#table .brand-sm b{font:400 16px "Russo One",Impact,"Arial Black",sans-serif;letter-spacing:.22em;background:var(--steel);background-clip:text;-webkit-background-clip:text;color:transparent}#table .brand-sm small{font-size:9px;letter-spacing:.3em;color:#bac5d0}
#table .felt{position:absolute;inset:56px 0 0;min-height:0;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;overflow:visible}
#table .surface{position:absolute;inset:0;background:repeating-linear-gradient(30deg,#ffffff02 0 1px,transparent 1px 5px);border:0;border-radius:0;box-shadow:none}
#table .surface::before{background:radial-gradient(ellipse at center,transparent 30%,#0004);border:0;box-shadow:none}
#table .surface::after{top:41%;width:190px;height:190px;opacity:.12;background:url(/brand/rafas-mark.webp) center/contain no-repeat}
#table>.scorepanel,#table.compact>.scorepanel{position:absolute;top:70px;left:14px;right:auto;width:118px;max-width:118px;min-width:0;padding:9px 8px;border-radius:12px;background:#05131d8c;border:1px solid #aecbe72b;box-shadow:none;z-index:3;display:block}
#table .sp-row{gap:4px;display:flex;flex-wrap:wrap;justify-content:space-between}#table .sp-team{padding:0;display:flex;flex-direction:column;gap:1px}#table .sp-team .lbl{font-size:9px;letter-spacing:.12em}#table .sp-team b{font-size:23px;color:var(--rf-text)}#table .sp-mid{order:3;width:100%;font-size:9px;text-align:center}#table .sp-row2{border-top:1px solid #ffffff20;margin-top:6px;padding-top:6px;max-width:none;font-size:10px;white-space:normal;display:flex;flex-wrap:wrap;gap:2px}#table .ct-sep,#table #contract>span:last-child:not(.pop):not(.ct-dim){display:none}#table .ct-suit{font-size:16px}
#table .seat{position:absolute;width:82px;min-width:0;align-items:center;text-align:center;z-index:6;gap:4px}
#table .seat .avatar{width:var(--av);height:var(--av);border-radius:10px;border:1px solid #b2d4eb66;box-shadow:0 8px 22px #0004;background:#102b3e;overflow:visible;font-size:28px}
#table .seat .avatar>img,#table .seat .avatar>svg{border-radius:9px;width:100%;height:100%;object-fit:cover}
#table .seat.turn .avatar{border:2px solid var(--rf-accent);box-shadow:0 0 0 4px #85e2d119,0 8px 22px #0004;animation:none}#table .seat.turn .name{color:var(--rf-accent)}#table .seat .name{font:650 12px/1.25 var(--rf-font);max-width:100%;text-shadow:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#table .seat .name small{font-size:9px}#table .seat .team{font-size:10px;color:var(--rf-muted)}#table .seat .bot,#table .seat .dealer{border-radius:4px;font-size:10px;width:18px;height:18px}#table .seat .ttimer{right:-12px;bottom:-6px;border-radius:7px;min-width:28px;height:24px;background:#d9f8ef;color:#082d2c;font-size:13px;display:grid;place-items:center;box-shadow:none}
#table .seat.pos2,#table.bidding:not(.compact) .seat.pos2{top:18px;left:50%;right:auto;bottom:auto;transform:translateX(-50%)}
#table .seat.pos1,#table .seat.pos3,#table.bidding:not(.compact) .seat.pos1,#table.bidding:not(.compact) .seat.pos3{top:31%;bottom:auto;transform:none}
#table .seat.pos1{right:10px;left:auto}#table .seat.pos3{left:10px;right:auto}
#table .seat.pos0,#table:not(.compact) .seat.pos0,#table.bidding:not(.compact) .seat.pos0{top:18px;right:10px;left:auto;bottom:auto;transform:none;--av:40px;width:64px}#table .seat.pos0 .name{font-size:10px}
#table .seat .backs{display:flex;height:22px;margin-top:2px;justify-content:center}#table .seat .backs img{width:15px;height:22px;border-radius:3px;margin-left:-6px;transform:none}#table .seat .backs b{font:10px var(--rf-font);position:static;background:none;color:var(--rf-muted);margin:3px 0 0 7px}
#table .trick{position:absolute;left:50%;top:43%;width:calc(var(--card-w)*2.5);height:calc(var(--card-h)*1.8);inset-inline-end:auto;bottom:auto;transform:translate(-50%,-50%);perspective:none;z-index:4}
#table .tcard{position:absolute;inset:auto;transform:none;opacity:0}#table .tcard.show{opacity:1}#table .tcard.pos2{left:50%;top:0;transform:translateX(-50%) rotate(-5deg)}#table .tcard.pos3{left:0;top:25%;transform:rotate(-12deg)}#table .tcard.pos1{right:0;top:25%;transform:rotate(10deg)}#table .tcard.pos0{left:50%;bottom:0;transform:translateX(-50%) rotate(3deg)}#table .slot{display:none}
.belot-redesign .card.rf-card{width:var(--card-w);height:var(--card-h);padding:7px;border:1px solid #dfdfd4;border-radius:9px;background:#fffbee;color:#132335;font:800 calc(var(--card-w)*.36)/1 var(--rf-font);display:flex;align-items:flex-start;justify-content:flex-start;flex-direction:column;overflow:hidden;box-shadow:0 6px 13px #0005}
.belot-redesign .card.rf-card>strong{font:inherit}.belot-redesign .card.rf-card>span{font-size:calc(var(--card-w)*.38);line-height:1;margin-top:5px}.belot-redesign .card.rf-card[data-suit=H],.belot-redesign .card.rf-card[data-suit=D]{color:#ba193f}
:root[data-rf-suit-colors=four] .belot-redesign .card.rf-card[data-suit=D]{color:#155db1}:root[data-rf-suit-colors=four] .belot-redesign .card.rf-card[data-suit=C]{color:#08735e}
.belot-redesign .belot-court{display:none}:root[data-rf-card-face=illustrated] .belot-redesign .belot-court{display:block;position:absolute;width:55%;height:65%;right:2px;bottom:2px;opacity:.9}:root[data-rf-card-face=contrast] .belot-redesign .card.rf-card{background:white;border:2px solid currentColor;font-weight:900}
#table .hand{position:absolute;display:flex;justify-content:center;align-items:flex-end;left:0;right:0;top:auto;bottom:116px;height:var(--card-h);padding:0 16px;margin:0;width:auto;max-width:none;flex-wrap:nowrap;overflow:visible;transform:none;animation:none;z-index:20}
#table .hand .card{position:relative;flex:none;margin:0 0 0 calc(var(--card-w)*-.52);transform:translateY(calc(var(--lift)*1px)) rotate(calc(var(--rot)*1deg));transform-origin:50% 100%;transition:transform 160ms,box-shadow 160ms;animation:none;cursor:default;z-index:calc(var(--i) + 1)}#table .hand .card:first-child{margin-left:0}#table .hand .card.legal{cursor:pointer;box-shadow:0 -2px 0 var(--rf-accent),0 6px 13px #0005}#table .hand .card.dim{filter:brightness(.72) saturate(.8)}#table .hand .card.selected{transform:translateY(calc(var(--lift)*1px - 22px)) rotate(calc(var(--rot)*1deg));box-shadow:0 0 0 3px var(--rf-accent),0 12px 24px #0006;z-index:30}#table .hand .card.trump::after{border:0;box-shadow:inset 0 -3px #c99436;inset:auto 0 0;height:3px}#table .hand.fresh .card{animation:belot-arrive 260ms both;animation-delay:calc(var(--i)*25ms)}
@keyframes belot-arrive{from{opacity:0;translate:0 14px}to{opacity:1;translate:0 0}}
#table .turnlabel{position:absolute;bottom:calc(var(--card-h) + 145px);left:50%;right:auto;transform:translateX(-50%);width:70%;text-align:center;background:none;box-shadow:none;padding:0;z-index:5}#table .turnlabel b{font-size:12px;letter-spacing:.12em;color:var(--rf-accent)}#table .turnlabel small{font-size:13px;margin-top:4px;color:var(--rf-text)}
#table .belot-play{position:absolute;bottom:60px;left:50%;transform:translateX(-50%);width:min(330px,calc(100% - 30px));height:46px;min-height:46px;z-index:24;font-size:14px}
#table .bottombar{position:absolute;inset:auto 0 0;height:52px;display:flex;justify-content:center;gap:24px;padding:3px 12px calc(3px + env(safe-area-inset-bottom));background:#04132155;border:0;box-shadow:none;z-index:25}#table .bb-round{width:46px;height:46px;border-radius:12px;box-shadow:none;border:0;background:none}#table .bb-round svg{width:22px;height:22px}
#table .pile{display:none}#table .center-msg{top:40%;left:50%;transform:translate(-50%,-50%);width:55%;font:13px/1.5 var(--rf-font);text-shadow:none;color:var(--rf-muted)}#table .watching{bottom:55px;left:50%;transform:translateX(-50%);max-width:85%;font-size:11px;z-index:25}

/* V07 actions and waiting. */
#table .bidpanel{position:absolute;top:auto;bottom:calc(var(--card-h) + 142px);left:50%;transform:translateX(-50%);width:min(380px,calc(100% - 28px));padding:12px;background:#081d2bee;border:1px solid #90b8c944;border-radius:16px;box-shadow:0 12px 35px #0003;z-index:12}
#table .bp-hd{font-size:12px;margin:0 0 8px;text-align:left}#table .bp-suits{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}#table .bp-suit{min-height:55px;padding:4px;gap:2px;background:#16374a;border:1px solid #62829566;border-radius:8px;color:#f0f6fa;box-shadow:none}#table .bp-suit.red{color:#ffadb8}#table .bp-suit .g{font-size:24px}#table .bp-suit span:last-child{font-size:11px}#table .bp-row,#table .bp-foot{display:flex;gap:6px;margin-top:6px}#table .bp-row>* ,#table .bp-foot>*{flex:1}#table .bp-suit.nt,#table .bp-suit.at{min-height:38px;flex-direction:row;gap:8px}#table .bp-pass,#table .bp-x{min-height:38px;padding:5px 12px;border-radius:8px;background:#24475a;font-size:13px}#table .bp-x{background:#a8e7d6;color:#082c2c}
#table .declstrip{position:absolute;bottom:calc(var(--card-h) + 194px);left:50%;transform:translateX(-50%);width:min(430px,calc(100% - 30px));padding:8px;z-index:15;display:flex;flex-wrap:wrap;justify-content:center;background:#071c2bef;border:1px solid var(--rf-line);border-radius:12px;font-size:12px}#table .declstrip>span{width:100%;text-align:center}#table .declstrip button{min-height:38px;padding:8px 14px;border-radius:8px}#table .claim{right:12px;bottom:calc(var(--card-h) + 120px);min-height:46px;font-size:12px;z-index:21;background:var(--rf-panel);color:var(--rf-text)}
#table .pregame{position:absolute;left:50%;transform:translateX(-50%);bottom:70px;width:min(560px,calc(100% - 28px));max-height:40%;overflow:auto;padding:16px;background:#081d2bf5;border:1px solid var(--rf-line);border-radius:16px;z-index:15;display:flex;flex-wrap:wrap;gap:8px}#table .pregame select{flex:1 1 42%;min-width:0;font-size:13px;padding:8px}#table .pregame .chk{font-size:12px;display:flex;align-items:center;gap:8px}#table .pregame .hint{width:100%;font-size:11px;color:var(--rf-muted)}#table .pregame #btnStart{flex:1 1 100%}#table .pregame .invite{flex-wrap:wrap;font-size:11px;gap:6px}#table .pregame .inv{min-height:36px;display:inline-flex;align-items:center;background:#153448;padding:8px;border-radius:8px}
.belot-options{border:0;border-top:1px solid var(--rf-line);padding:13px 0;margin:0}.belot-options legend{padding:0 8px 0 0;color:var(--rf-muted);font-size:12px}.belot-options>div{display:flex;gap:7px;flex-wrap:wrap}.belot-options .rf-choice{font-size:12px;min-height:40px;padding:8px 12px}.belot-preview{display:flex;justify-content:space-between;align-items:center;padding:16px;margin:14px 0;background:radial-gradient(ellipse at top,var(--rf-table),var(--rf-table-deep));border-radius:12px;--card-w:65px;--card-h:94px}.belot-preview>div{display:flex;gap:8px}.belot-preview>img{width:65px;height:94px}
@media(min-width:700px) and (min-height:500px){#lobby{display:grid;grid-template-columns:1fr 1fr;align-content:start;gap:20px 30px}#lobby .lobby-top,#lobby .hero,#lobby .tiles{grid-column:1/-1}#lobby .hero{min-height:150px}#lobby .who{grid-column:2;grid-row:3/5}#lobby .menu{grid-column:1}#lobby .extra{grid-column:1}#lobby .belot-solo{grid-column:2;grid-row:5}#table{--av:74px}#table .seat{width:110px}#table .seat.pos1{right:12%}#table .seat.pos3{left:12%}#table .seat .name{font-size:14px}#table .seat.pos0{right:24px;width:100px;--av:50px}#table .hand{bottom:116px}#table .surface::after{width:250px;height:250px}#table .trick{top:43%}#table>.scorepanel{left:24px;width:155px;max-width:155px}#table .sp-team b{font-size:30px}#table .bidpanel{bottom:calc(var(--card-h) + 148px);width:390px}#table .seat.pos1,#table .seat.pos3{top:30%}}
@media(max-height:740px) and (min-height:500px){#table{--av:48px}#table .seat.pos1,#table .seat.pos3,#table.bidding:not(.compact) .seat.pos1,#table.bidding:not(.compact) .seat.pos3{top:130px}#table .bidpanel{bottom:calc(var(--card-h) + 135px);padding:8px}#table .bp-hd{font-size:11px;margin-bottom:5px}#table .bp-suit{min-height:48px}#table .bp-suit.nt,#table .bp-suit.at,#table .bp-pass,#table .bp-x{min-height:34px}#table .hand{bottom:110px}#table .seat .backs{display:none}#table .trick{top:42%}#table .declstrip{bottom:calc(var(--card-h) + 190px)}}
@media(max-height:499px){#table{--av:34px}#table .felt{top:56px}#table.compact .seat.pos2{top:10px}#table.compact .seat.pos0{top:10px;bottom:auto;right:12px;left:auto;--av:30px}#table.compact .seat.pos1,#table.compact .seat.pos3{top:104px}#table .seat .name{font-size:10px}#table .seat .team,#table .seat .backs{display:none}#table.compact>.scorepanel{top:66px;left:12px;width:104px;max-width:104px;padding:6px}#table .sp-team b{font-size:18px}#table .sp-row2{font-size:9px}#table .sp-mid{font-size:8px}#table .hand{bottom:62px;left:120px;right:120px}#table .belot-play{bottom:8px;height:42px;min-height:42px;width:220px}#table .bottombar{justify-content:space-between;gap:0;pointer-events:none;background:none;height:52px}#table .bottombar button{pointer-events:auto}#table .bottombar #btnHint{display:none}#table .bottombar #btnLast{margin-right:auto}#table .bottombar #btnChat{margin-right:6px}#table .turnlabel{bottom:calc(var(--card-h) + 82px)}#table.compact .turnlabel small{display:none}#table .trick{top:36%;scale:.72}#table.compact .bidpanel{top:88px;bottom:auto;width:calc(100% - 230px);max-width:480px;padding:6px}#table.compact .bp-hd{font-size:10px;margin-bottom:4px}#table.compact .bp-suits{gap:4px}#table.compact .bp-suit{min-height:34px;padding:2px;flex-direction:row;gap:6px}#table.compact .bp-suit .g{font-size:17px}#table.compact .bp-suit span:last-child{font-size:9px}#table.compact .bp-row,#table.compact .bp-foot{display:inline-flex;width:59%;margin-top:4px}#table.compact .bp-foot{width:39%;margin-left:2%;vertical-align:top}#table.compact .bp-suit.nt,#table.compact .bp-suit.at,#table.compact .bp-pass,#table.compact .bp-x{min-height:30px;font-size:10px;padding:2px}#table .declstrip{bottom:calc(var(--card-h) + 113px);padding:4px;font-size:10px;width:50%}#table .declstrip button{min-height:28px;padding:3px 9px}#table .claim{right:8px;bottom:70px;font-size:10px}#table .pregame{bottom:58px;max-height:57%;width:60%;padding:8px}#table .pregame select{min-height:34px;padding:4px}#table .center-msg{top:32%}#table .surface::after{width:125px;height:125px}#table .watching{bottom:8px}}
@media(max-width:480px) and (max-height:499px){#table .hand{left:50px;right:50px}#table.compact .bidpanel{width:calc(100% - 168px);top:100px}#table.compact .bp-suit span:last-child{display:none}#table .seat{width:64px}#table.compact>.scorepanel{width:84px;max-width:84px}#table.compact .seat.pos2{left:52%}#table .pregame{width:68%}}

/* Retire the previous table's neon frames and circular portrait treatment. */
.belot-redesign #table::before,.belot-redesign #table::after,.belot-redesign .seat::before,.belot-redesign .seat::after,.belot-redesign .turnlabel::before{display:none}
.belot-redesign #table .sp-team,.belot-redesign #table .seat .name{background:none;border:0;border-radius:0;box-shadow:none;text-shadow:none}
.belot-redesign .pimg{border-radius:9px!important;border:0!important;box-shadow:none!important}
.belot-redesign #table .seat .backs{position:relative;inset:auto;transform:none;display:flex;gap:0;width:auto;min-width:0}
.belot-redesign #table .seat .backs b{position:static;inset:auto;transform:none;width:auto;height:auto;border:0;box-shadow:none;padding:0;line-height:16px}
.belot-redesign #table .seat .backs img{position:static;inset:auto;transform:none;margin-left:-5px}
.belot-redesign #table:not(.bidding):not(.compact) .seat.pos2{top:18px}
.belot-redesign #lobby .who{height:auto;min-height:0;align-self:start}.belot-redesign #lobby .who .avatars{min-height:0}.belot-redesign #lobby .who-hd{font-family:var(--rf-font)}
.belot-redesign #lobby .logo{filter:none}.belot-redesign #lobby .tagline{font-family:var(--rf-font)}
.belot-redesign #lobby .ourtable{background:none;border-radius:0;box-shadow:none}.belot-redesign #lobby .mcard{filter:none;box-shadow:none}
.belot-redesign #table .trick{width:calc(var(--card-w)*3.05);height:calc(var(--card-h)*1.8)}
.belot-redesign #table .tcard.pos2{z-index:1}.belot-redesign #table .tcard.pos1,.belot-redesign #table .tcard.pos3{z-index:2}.belot-redesign #table .tcard.pos0{z-index:3}
.belot-redesign #lobby #avatars{min-height:0}.belot-redesign #lobby .who{width:100%}.belot-redesign #lobby .who-hd h2{font-family:var(--rf-font)}
.belot-redesign #lobby>*{flex-shrink:0}.belot-redesign #table .felt::before,.belot-redesign #table .felt::after{display:none}
.belot-redesign #lobby .who{padding:12px}.belot-redesign #lobby .who-hd{display:none}.belot-redesign #lobby #avatars{padding:0;gap:0}.belot-redesign #lobby .youare{padding:0;min-height:48px}.belot-redesign #lobby .youare small{font-size:11px;line-height:1.4}.belot-redesign #lobby .guest-avatars{margin:2px 0 0}.belot-redesign #lobby .guest-avatars summary{padding:8px 0;min-height:38px;font-size:12px}
.belot-redesign #table .tcard.win .card{box-shadow:0 0 0 3px var(--rf-accent),0 0 20px #83e2d177}
.belot-redesign #table .trick .card{width:calc(var(--card-w)*.72);height:calc(var(--card-h)*.72);font-size:calc(var(--card-w)*.29)}
.belot-redesign #table .trick .card>span{font-size:calc(var(--card-w)*.3)}
.belot-redesign #table .trick{width:calc(var(--card-w)*2.7);height:calc(var(--card-h)*1.65)}
.belot-redesign #table .pile:not(.empty){display:block;position:absolute;top:auto;bottom:180px;width:24px;height:34px;z-index:3}
.belot-redesign #table .pile.us{left:18px;right:auto}.belot-redesign #table .pile.them{right:18px;left:auto}
.belot-redesign #table .pile img{position:absolute;inset:0;width:24px;height:34px;border-radius:3px}
.belot-redesign #table .pile b{position:absolute;bottom:-16px;left:0;width:24px;text-align:center;font:10px var(--rf-font);color:var(--rf-muted)}
.belot-redesign #table.bidding:not(.compact) .seat.pos1,.belot-redesign #table.bidding:not(.compact) .seat.pos3{top:24%}
@media(min-width:700px) and (min-height:500px){.belot-redesign #table .seat.pos1{right:8%}.belot-redesign #table .seat.pos3{left:8%}}
@media(max-height:740px) and (min-height:500px){.belot-redesign #table.bidding:not(.compact) .seat.pos1,.belot-redesign #table.bidding:not(.compact) .seat.pos3{top:115px}.belot-redesign #table .seat .backs{display:none}.belot-redesign #table .bidpanel{bottom:calc(var(--card-h) + 123px)}}
@media(max-height:499px){.belot-redesign #table.compact .seat.pos2{left:50%;top:10px}.belot-redesign #table.compact .bidpanel{top:134px}.belot-redesign #table .seat .backs{display:none}.belot-redesign #table.compact .bp-row,.belot-redesign #table.compact .bp-foot{display:flex;width:auto;margin:4px 0 0}.belot-redesign #table.compact .bp-row{float:left;width:64%}.belot-redesign #table.compact .bp-foot{margin-left:66%}.belot-redesign #table .trick{top:34%}}
@media(max-width:480px) and (max-height:499px){.belot-redesign #table.compact .seat.pos2{left:50%;top:10px}.belot-redesign #table.compact .bidpanel{top:130px;width:calc(100% - 208px)}.belot-redesign #table .hand{bottom:60px}}
/* User review: a lounge menu, legible bids, larger trick cards and a turn cue. */
.belot-redesign #lobby{gap:12px;padding-top:14px;background:radial-gradient(ellipse at 80% 10%,#16466b90,transparent 55%),#06121c}
.belot-redesign #lobby .hero{min-height:195px;margin:0;padding:24px 0 15px;isolation:isolate;overflow:hidden}
.belot-redesign #lobby .hero::after{content:'';inset:0;background:radial-gradient(ellipse at 80% 80%,#45adcd30,transparent 65%);opacity:1;transform:none;z-index:-1}
.belot-redesign #lobby .hero .rf-kicker{font-size:10px;letter-spacing:.16em;color:#b2d8df}
.belot-redesign #lobby .logo{font:600 48px/1.1 Georgia,serif;letter-spacing:.015em;margin:12px 0}
.belot-redesign #lobby .tagline{font-size:13px;line-height:1.6;max-width:190px;color:#d1e0e8}
.belot-hero-cards{position:absolute;right:9px;top:35px;width:137px;height:158px;z-index:-1}
.belot-hero-cards i{position:absolute;left:0;top:8px;display:flex;flex-direction:column;width:85px;height:126px;padding:8px;background:#fff9e9;color:#172c40;border:1px solid #ded9c9;border-radius:8px;box-shadow:0 12px 24px #0008;transform:rotate(-17deg);font-style:normal}
.belot-hero-cards i+i{left:47px;top:19px;transform:rotate(14deg);color:#b52042}
.belot-hero-cards b,.belot-hero-cards span{font:800 23px/1 var(--rf-font)}.belot-hero-cards span{margin-top:4px}
.belot-hero-cards svg{position:absolute;bottom:4px;right:3px;width:63%;height:80%}
.belot-redesign #lobby .who{background:#0e2637a6;border-color:#87b9d12b;padding:10px 12px;border-radius:12px}
.belot-redesign #lobby .youare>img,.belot-redesign #lobby .youare>svg{width:40px!important;height:40px!important}
.belot-redesign #lobby .youare{min-height:40px}.belot-redesign #lobby .youare b{font-size:15px}.belot-redesign #lobby .youare small{font-size:12px;margin-top:3px}
.belot-redesign #lobby .guest-avatars summary{min-height:28px;padding:6px 0 0;font-size:11px;color:#9cbbc9}
.belot-redesign #lobby .mcard{min-height:76px;padding:14px 16px;border-radius:12px}
.belot-redesign #lobby .mcard.gold{background:linear-gradient(115deg,#a3ebde,#79d5cc);border-color:#c1fff0;box-shadow:0 8px 25px #59cabb18}
.belot-redesign #lobby .m-tx b{font-size:19px;font-weight:750;text-transform:none;letter-spacing:0}
.belot-redesign #lobby .m-tx small{font-size:11px;letter-spacing:0;text-transform:none;margin-top:5px}
.belot-redesign #lobby .m-ic{width:34px;height:34px}.belot-redesign #lobby .m-arr{font-size:28px;opacity:.65}
.belot-redesign #lobby .extra{padding:14px;gap:14px;background:#0b2233;border-color:#86b0c333}
.belot-redesign #lobby .join-row{gap:8px}.belot-redesign #lobby .code-input{font:500 14px var(--rf-font)!important;letter-spacing:0;text-transform:uppercase;min-height:44px}
.belot-redesign #lobby .code-input::placeholder{text-transform:none;color:#92aebb;opacity:1}
.belot-redesign #lobby #btnJoin{min-height:44px;flex-basis:74px;font:650 13px var(--rf-font);background:#26475c}
.belot-redesign #lobby .ot-hd{display:flex;flex-direction:column;gap:4px}.belot-redesign #lobby .ot-hd b{font-size:14px}.belot-redesign #lobby .ot-hd>span{font-size:11px;color:#98b5c5}
.belot-redesign #lobby .ourtable{position:relative;padding-top:13px;padding-right:76px;min-height:62px}.belot-redesign #lobby .ot-row{margin:0}.belot-redesign #lobby .ot-empty{display:none}.belot-redesign #lobby #btnOurTable{position:absolute;right:0;top:14px;min-height:38px;padding:8px 12px;background:#16384a;color:#b4e9de;border-color:#638d95;font:650 12px var(--rf-font)}
.belot-redesign #lobby .belot-solo .mcard{min-height:66px;background:#0a2131;border:1px solid #668a9e80;color:#e5f0f6;box-shadow:none}
.belot-redesign #lobby .belot-solo .m-tx b{font-size:15px}.belot-redesign #lobby .belot-solo .m-tx small{color:#abc3d1;opacity:1}
.belot-redesign #lobby .tiles{padding:2px 0 18px}.belot-redesign #lobby .tile{min-height:42px;border:0;color:#aec5d3;padding:8px 4px}.belot-redesign #lobby .tile b{font-size:10px;letter-spacing:.03em}
.belot-redesign #table .turnlabel b{display:inline-flex;align-items:center;gap:8px;padding:8px 15px;border:1px solid #9de7d84d;border-radius:30px;background:#092c3ee6;font:750 12px var(--rf-font);letter-spacing:.1em;box-shadow:0 0 22px #71e0ce20}
.belot-redesign #table .turnlabel b i{width:7px;height:7px;border-radius:50%;background:#a1f4d9;box-shadow:0 0 9px #a1f4d9}
.belot-redesign #table .turnlabel small{font-size:12px;color:#b6cddc;margin-top:6px}
.belot-redesign #table.your-turn .hand::before{content:'';position:absolute;left:14%;right:14%;bottom:-24px;height:45px;background:radial-gradient(ellipse,#73dec839,transparent 70%);pointer-events:none;z-index:-1}
.belot-redesign #table .trick{--trick-w:clamp(65px,calc(var(--card-w)*1.08),112px);width:calc(var(--trick-w)*2.9);height:calc(var(--trick-w)*2.5);top:43%}
.belot-redesign #table .trick .card{width:var(--trick-w);height:calc(var(--trick-w)*1.45);font-size:calc(var(--trick-w)*.35);padding:7px;border-radius:8px}
.belot-redesign #table .trick .card>span{font-size:calc(var(--trick-w)*.38);margin-top:4px}
:root[data-rf-card-face=illustrated] .belot-redesign .belot-court{width:62%;height:79%;right:1px;bottom:2px;opacity:1}
.belot-redesign #table .bidpanel{background:linear-gradient(135deg,#102d42,#081b2a);border-color:#8daec64d;padding:12px;border-radius:17px;box-shadow:0 16px 35px #0005}
.belot-redesign #table .bp-hd{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 10px;font:600 11px var(--rf-font)}
.belot-redesign #table .bp-hd>b{font-size:14px;color:#d9fff1}.belot-redesign #table .bp-hd>span{font-weight:400;color:#b7cbd8;text-align:right}.belot-redesign #table .bp-hd .red{color:#ffb2c0}
.belot-redesign #table .bp-suit{background:linear-gradient(#fffdf3,#eee9da);color:#192d3d;border:1px solid #fff8e0;border-radius:9px;box-shadow:0 3px 0 #0003;min-height:67px}
.belot-redesign #table .bp-suit.red{color:#b31e43}.belot-redesign #table .bp-suit .g{font:32px/1 Georgia,serif}.belot-redesign #table .bp-suit span:last-child{font:700 11px/1.2 var(--rf-font);letter-spacing:0;text-transform:none}
.belot-redesign #table .bp-suit.nt,.belot-redesign #table .bp-suit.at{min-height:40px;background:#23485e;color:#eef7fc;border-color:#91b9ce40;box-shadow:none}.belot-redesign #table .bp-suit.nt .g,.belot-redesign #table .bp-suit.at .g{font-size:23px}
.belot-redesign #table .bp-pass,.belot-redesign #table .bp-x{min-height:38px;font:650 13px var(--rf-font);background:#102b3f;border:1px solid #7397ac6b;color:#cee0ec;box-shadow:none}.belot-redesign #table .bp-x{background:#a3e5d8;color:#082c2c}
.belot-redesign #table .bp-suit:disabled{opacity:.32;filter:grayscale(.4);box-shadow:none}.belot-redesign #table .bp-suit:not(:disabled):hover{filter:brightness(1.09);border-color:#b4ffdf}.belot-redesign #table .bp-suit:active{translate:0 1px}
@media(min-width:700px) and (min-height:500px){.belot-redesign #lobby{gap:18px 26px}.belot-redesign #lobby .hero{min-height:260px;padding-top:36px}.belot-redesign #lobby .logo{font-size:66px}.belot-redesign #lobby .tagline{font-size:17px;max-width:320px}.belot-redesign #lobby .hero .rf-kicker{font-size:12px}.belot-hero-cards{right:90px;top:25px;scale:1.65;transform-origin:top right}.belot-redesign #lobby .who{grid-column:2;grid-row:3}.belot-redesign #lobby .belot-solo{grid-row:4}.belot-redesign #table .trick{top:40%}}
@media(max-height:740px) and (min-height:500px){.belot-redesign #table .bidpanel{padding:9px}.belot-redesign #table .bp-hd{margin-bottom:7px}.belot-redesign #table .bp-suit{min-height:57px}.belot-redesign #table .bp-suit.nt,.belot-redesign #table .bp-suit.at,.belot-redesign #table .bp-pass,.belot-redesign #table .bp-x{min-height:34px}.belot-redesign #table .trick{--trick-w:61px;top:42%}}
@media(max-height:499px){.belot-redesign #table .trick{--trick-w:58px;top:34%;scale:.72}.belot-redesign #table.compact .bidpanel{padding:6px}.belot-redesign #table .bp-hd{margin-bottom:4px}.belot-redesign #table .bp-hd>b{font-size:11px}.belot-redesign #table .bp-hd>span{font-size:9px}.belot-redesign #table.compact .bp-suit{min-height:34px}.belot-redesign #table.compact .bp-suit .g{font-size:18px}.belot-redesign #table.compact .bp-suit span:last-child{font-size:9px}.belot-redesign #table.compact .bp-suit.nt,.belot-redesign #table.compact .bp-suit.at,.belot-redesign #table.compact .bp-pass,.belot-redesign #table.compact .bp-x{min-height:32px}.belot-redesign #table .turnlabel b{padding:5px 10px;font-size:10px}.belot-redesign #table .turnlabel{bottom:calc(var(--card-h) + 71px)}}
@media(max-width:480px) and (max-height:499px){.belot-redesign #table .trick{--trick-w:46px;top:31%}.belot-redesign #table .bp-hd{display:block}.belot-redesign #table .bp-hd>span{display:none}}
@media(min-height:741px) and (max-width:699px){.belot-redesign #table .seat.pos1,.belot-redesign #table .seat.pos3{top:24%}}
.belot-redesign #lobby .panel.extra{margin-top:0}
.belot-redesign #lobby .ourtable{box-sizing:border-box}
.belot-redesign #lobby .recent[hidden]{display:none}
@media(max-width:480px) and (max-height:499px){.belot-redesign #table.bidding .hand{bottom:50px}}
@media(min-height:741px) and (max-width:699px){.belot-redesign #table:not(.bidding) .seat.pos1,.belot-redesign #table:not(.bidding) .seat.pos3{top:22%}}
/* One portrait crop for lobby, seats, last trick and result miniatures. */
.belot-redesign .belot-portrait{display:inline-block;flex:0 0 auto;width:var(--portrait-size);height:var(--portrait-size);border-radius:9px;overflow:hidden;vertical-align:middle;line-height:0}
.belot-redesign .belot-portrait>.pimg{display:block;width:100%;height:100%;max-width:none;transform:scale(1.48);border-radius:0!important}
.belot-redesign #table .seat .avatar>.belot-portrait{width:100%;height:100%}
.belot-redesign #lobby .youare>.belot-portrait{width:48px;height:48px}
.belot-redesign .who-bid .belot-portrait{width:20px;height:20px}
/* Original RAFAS card artwork, requested instead of the replacement faces. */
:root .belot-redesign .card.rf-card.belot-classic,.belot-redesign #table .trick .card.belot-classic{padding:0;border:0;background:transparent;border-radius:8px;overflow:hidden}
.belot-redesign .belot-card-art{display:block;width:100%;height:100%;object-fit:fill;border-radius:inherit;pointer-events:none;user-select:none;-webkit-user-drag:none}
.belot-redesign #lobby .belot-hero-cards i{padding:0;background:transparent;border:0;overflow:hidden}
.belot-redesign #lobby .belot-hero-cards img{display:block;width:100%;height:100%;object-fit:fill;border-radius:8px}
