/* Baccarat table: a 1920x1080 stage (780x1400 on an upright phone) over a photographed imperial red felt, scaled to fit.
   Lucky colours: red for joy and luck, gold for wealth, jade for the tie; no fours anywhere we choose the number. */
.tablewrap{position:relative;margin:0 auto;overflow:hidden;border-radius:18px;background:#1a0607;box-shadow:0 24px 60px rgba(0,0,0,.55),0 0 0 2px #6b4a14,0 0 0 5px #2a0a0c}
.stage{position:absolute;left:0;top:0;width:1920px;height:1080px;transform-origin:0 0;background:#6a0c12 url(assets/felt-red.jpg) 0 0/1920px 1280px no-repeat;user-select:none;-webkit-user-select:none;overflow:hidden;font-variant-numeric:lining-nums}
.print{position:absolute;inset:0;width:1920px;height:1080px;pointer-events:none}
.print-tall{display:none}
.ink{opacity:.95}

/* ---- betting spots: lacquered panels framed in gold ---- */
.spot{position:absolute;padding:0;border:0;cursor:pointer;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;color:#fff3d0;font:800 22px Inter,Arial;letter-spacing:2px;
  box-shadow:inset 0 0 0 3px #e5b94e,inset 0 0 0 8px rgba(0,0,0,.25),inset 0 0 0 9.5px rgba(229,185,78,.6),0 8px 18px rgba(0,0,0,.35);transition:box-shadow .2s ease,transform .15s ease}
.spot b{display:block;line-height:1.05}
.spot .cn{font:700 34px "Noto Serif TC",serif;letter-spacing:0;color:#ffe08a;margin-bottom:2px}
.spot small{font:900 19px Inter;letter-spacing:1px;margin-top:6px;padding:3px 10px;border-radius:999px;color:#2a1500;background:linear-gradient(180deg,#fbe7a1,#e0ad2a);box-shadow:0 2px 6px rgba(0,0,0,.45)}
.spot.p{background:radial-gradient(ellipse at 50% 30%,#2552b8,#0f2a6e 70%)}
.spot.b{background:radial-gradient(ellipse at 50% 30%,#c4202c,#6e0a12 70%)}
.spot.t{background:radial-gradient(ellipse at 50% 30%,#1f9a62,#0b4f32 70%);border-radius:50%}
.spot.pp,.spot.bp{background:radial-gradient(circle at 50% 30%,#7a1219,#3c060a 70%);border-radius:50%}
.spot.pp .cn,.spot.bp .cn{font-size:24px}.spot.pp b:not(.cn),.spot.bp b:not(.cn){font-size:17px}.spot.pp small,.spot.bp small{font-size:14px;padding:2px 8px;margin-top:4px}
.spot.p,.spot.b{border-radius:26px;align-items:flex-start;padding-left:30px}
.spot.p .cn,.spot.b .cn{font-size:44px}
.spot.sel{box-shadow:inset 0 0 0 4px #fff2c0,inset 0 0 0 9px rgba(0,0,0,.25),inset 0 0 0 10.5px rgba(255,236,170,.9),0 0 26px rgba(255,214,110,.75),0 8px 18px rgba(0,0,0,.35)}
.spot:disabled{cursor:default}
.spot.won{box-shadow:inset 0 0 0 4px #fff2c0,0 0 0 4px #ffd65a,0 0 40px rgba(255,214,90,.9);transform:scale(1.02)}
/* wide positions: P PAIR · PLAYER · TIE · BANKER · B PAIR along the felt */
.spot.pp{left:64px;top:634px;width:132px;height:132px}
.spot.p{left:215px;top:634px;width:340px;height:132px}
.spot.t{left:585px;top:634px;width:210px;height:132px}
.spot.b{left:825px;top:634px;width:340px;height:132px}
.spot.bp{left:1184px;top:634px;width:132px;height:132px}

/* chips */
.chips{position:absolute;width:84px;height:84px;z-index:12;pointer-events:none}
#chips-pp{left:88px;top:672px}#chips-p{left:438px;top:658px}#chips-t{left:648px;top:672px}#chips-b{left:1048px;top:658px}#chips-bp{left:1208px;top:672px}
.chip{position:absolute;left:0;width:84px;height:84px;filter:drop-shadow(0 3px 2px rgba(0,0,0,.5))}
.chip svg{width:84px;height:84px;display:block}
.chips .amt{position:absolute;left:42px;bottom:-30px;transform:translateX(-50%);padding:3px 11px;border-radius:999px;background:rgba(26,6,8,.92);color:#ffe9a8;font:800 19px Inter;white-space:nowrap;box-shadow:0 4px 10px rgba(0,0,0,.4);border:1px solid rgba(229,185,78,.5)}
.stage.settled .chips .amt{opacity:0}
.flycoin{position:absolute;left:0;top:0;width:58px;height:58px;z-index:65;pointer-events:none;transition:transform .75s cubic-bezier(.2,.8,.25,1),opacity .4s ease;filter:drop-shadow(0 5px 5px rgba(0,0,0,.5))}
.flycoin svg{width:58px;height:58px;display:block}

/* cards (same drawing as the other free tables) with a red-and-gold back */
.card{position:absolute;left:0;top:0;width:180px;height:252px;transition:transform .45s cubic-bezier(.2,.7,.2,1),opacity .35s ease,filter .35s ease;z-index:20;filter:drop-shadow(0 9px 10px rgba(0,0,0,.5))}
.face,.back{position:absolute;inset:0;border-radius:14px}
.face,.back{transition:opacity .2s ease}
.card.down .face{opacity:0}.card:not(.down) .back{opacity:0}
.card.flip .face,.card.flip .back{transition:none}
.card.deal{z-index:45;transition:transform .5s cubic-bezier(.22,.75,.25,1),opacity .35s ease}
.card.flip{transition:transform .2s ease-in}
.card.slow{transition:transform .5s ease-in}
.face{background:linear-gradient(170deg,#fffefb,#f0ede4);box-shadow:inset 0 0 0 1px rgba(0,0,0,.12)}
.back{background:#fff;padding:9px}
.back::after{content:"";display:block;width:100%;height:100%;border-radius:9px;box-sizing:border-box;border:2px solid #6b4a14;
  background:radial-gradient(circle at 50% 50%,#f6d77e 0 12px,#9a0f1c 13px 16px,transparent 17px),repeating-linear-gradient(45deg,#b3121f 0 6px,#8c0b17 6px 12px)}
.red{color:#b5121b}.black{color:#121212}
.idx{position:absolute;left:10px;top:8px;width:34px;text-align:center;line-height:.95;font-family:Georgia,"Times New Roman",serif;font-weight:700}
.idx.flip{left:auto;top:auto;right:10px;bottom:8px;transform:rotate(180deg)}
.idx .r{font-size:40px}.idx .r.ten{letter-spacing:-4px}.idx .s{font-size:32px}
.pip{position:absolute;width:40px;height:44px;text-align:center;font-size:40px;line-height:44px}
.pip.down{transform:rotate(180deg)}
.pip.ace{font-size:92px;width:100px;height:100px;line-height:100px}
.court{position:absolute;left:44px;top:46px;right:44px;bottom:46px;border:3px solid currentColor;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:Georgia,serif;font-weight:700;line-height:1}
.court .r{font-size:70px}.court .s{font-size:44px}
.card.lit .face{box-shadow:inset 0 0 0 1px rgba(0,0,0,.12),0 0 0 5px #ffd65a,0 0 28px rgba(255,214,90,.7)}

/* hand totals: a gold medallion beside each name */
.total{position:absolute;width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:50%;display:grid;place-items:center;font:900 38px "Playfair Display",Georgia,serif;color:#3a0a00;
  background:radial-gradient(circle at 40% 30%,#fff3c0,#e5b94e 55%,#a87420);box-shadow:0 0 0 3px #5a0a10,0 0 0 5px #e5b94e,0 6px 14px rgba(0,0,0,.5);z-index:30;transition:transform .25s cubic-bezier(.2,1.6,.4,1)}
.total[hidden]{display:none}
.total.pop{transform:scale(1.25)}
.total.win{box-shadow:0 0 0 3px #5a0a10,0 0 0 5px #fff2c0,0 0 30px rgba(255,214,90,.95)}
.total.p{left:460px;top:354px}.total.b{left:920px;top:354px}
/* a red seal stamped on the winner: 發 for a lucky eight, or NATURAL */
.seal{position:absolute;z-index:72;padding:8px 14px;border:4px double #fff1c2;border-radius:10px;background:rgba(170,14,24,.94);color:#fff1c2;font:900 26px Inter;letter-spacing:2px;text-align:center;line-height:1.05;
  transform:translate(-50%,-50%) rotate(-8deg) scale(1.6);opacity:0;transition:transform .3s cubic-bezier(.2,1.4,.4,1),opacity .2s ease;box-shadow:0 8px 20px rgba(0,0,0,.45);pointer-events:none}
.seal .cn{display:block;font:700 52px "Noto Serif TC",serif;letter-spacing:0}
.seal.show{opacity:1;transform:translate(-50%,-50%) rotate(-8deg) scale(1)}
.seal[hidden]{display:none}

/* payouts that pop on a spot */
.pay{position:absolute;transform:translate(-50%,-50%) scale(.6);padding:5px 14px;border-radius:999px;font:900 23px Inter;white-space:nowrap;z-index:31;opacity:0;transition:opacity .3s ease,transform .35s cubic-bezier(.2,1.5,.4,1)}
.pay.show{opacity:1;transform:translate(-50%,-50%) scale(1)}
.pay.win{background:#16a34a;color:#fff}.pay.lose{background:#3a0508;color:#ffb4b4;border:1px solid rgba(255,180,180,.4)}.pay.push{background:#475057;color:#fff}
.pay.big{background:linear-gradient(180deg,#fff0b0,#e0ad2a);color:#3a1a00;box-shadow:0 0 22px rgba(255,214,90,.85)}

.banner{position:absolute;left:690px;top:470px;text-align:center;line-height:1.05;transform:translate(-50%,-50%) scale(.8);opacity:0;transition:transform .35s cubic-bezier(.2,1.4,.4,1),opacity .25s ease;z-index:70;font:900 44px Inter;padding:10px 28px 12px;border-radius:18px;
  background:rgba(26,6,8,.92);box-shadow:0 0 0 2px #e5b94e,0 10px 30px rgba(0,0,0,.5);white-space:nowrap;pointer-events:none}
.banner small{display:block;font:800 19px Inter;letter-spacing:2px;opacity:.9;color:#ffe9a8}
.banner.show{opacity:1;transform:translate(-50%,-50%) scale(1)}
.banner.win{color:#4ade80}.banner.lose{color:#ff8f8f}.banner.push{color:#e2e8f0}
.banner.big{color:#3a1a00;background:linear-gradient(180deg,#fff0b0,#e0ad2a);box-shadow:0 0 0 4px #fff3c4,0 0 50px rgba(255,214,90,.85)}
.banner.big small{color:#6a3a00}
.tip{position:absolute;left:960px;top:296px;transform:translate(-50%,-50%);font:700 24px Inter;color:#ffe9a8;opacity:.92;z-index:6;white-space:nowrap;text-shadow:0 2px 6px rgba(0,0,0,.6)}
.tip[hidden]{display:none}
.note{position:absolute;left:690px;top:1000px;transform:translateX(-50%);padding:8px 18px;border-radius:12px;background:rgba(26,6,8,.92);font:700 21px Inter;color:#f1e4d0;z-index:60;width:max-content;max-width:1100px;text-align:center;border:1px solid rgba(229,185,78,.35)}
.note.ok{color:#86efac}.note.miss{color:#fcd34d}
.note[hidden]{display:none}
/* a first find: the shape's name pops over the table */
.toastin{position:absolute;left:1636px;top:420px;transform:translate(-50%,-50%) scale(.85);z-index:90;padding:12px 26px;border-radius:16px;background:linear-gradient(180deg,#141a3a,#070a1c);border:2px solid #e5b94e;
  box-shadow:0 0 40px rgba(229,185,78,.55);color:#fff3c4;font:800 20px Inter;text-align:center;letter-spacing:1px;opacity:0;transition:opacity .3s ease,transform .35s cubic-bezier(.2,1.4,.4,1);pointer-events:none}
.toastin b{display:block;font:900 34px "Playfair Display",Georgia,serif;color:#f6d77e;letter-spacing:0}
.toastin.show{opacity:1;transform:translate(-50%,-50%) scale(1)}
.toastin[hidden]{display:none}

/* ---- the panel and the scoreboard: black lacquer with gold, like a VIP room board ---- */
.panel,.sboard{position:absolute;z-index:40;border-radius:20px;background:linear-gradient(180deg,rgba(28,6,9,.93),rgba(16,3,5,.95));border:1.5px solid rgba(229,185,78,.55);box-shadow:0 14px 40px rgba(0,0,0,.5),inset 0 0 0 5px rgba(0,0,0,.25),inset 0 0 0 6px rgba(229,185,78,.18)}
.panel{left:1376px;top:16px;width:520px;padding:16px 22px;box-sizing:border-box}
.sboard{left:1376px;top:288px;width:520px;height:776px;padding:14px 18px;box-sizing:border-box;display:flex;flex-direction:column;gap:10px}
.lbl{font:800 14px Inter;letter-spacing:4px;color:#d9b98a}
.bankrow{display:flex;justify-content:space-between;align-items:flex-end}
.bank{font:900 50px Inter;color:#ffe9a8;font-variant-numeric:tabular-nums;line-height:1.05}
.last{text-align:right}.last b{font:800 26px Inter;color:#fff;font-variant-numeric:tabular-nums}
#last.win{color:#4ade80}#last.lose{color:#ff8f8f}
.hand{font:600 17px Inter;color:#d9c3a8;margin:4px 0 10px}
.handrow{display:flex;align-items:center;justify-content:space-between;gap:10px}
.handrow .hand{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fastbtn{flex:none;margin:0 0 6px;padding:6px 12px;border-radius:999px;border:1.5px solid rgba(229,185,78,.55);background:rgba(0,0,0,.35);color:#d9c3a8;font:800 13px Inter;letter-spacing:1.5px;cursor:pointer}
.fastbtn.on{background:linear-gradient(180deg,#f6d77e,#c9971f);color:#2a1500;border-color:#c9971f}
/* fast deal: the same moves, quicker */
.stage.fast .card.deal{transition-duration:.24s}.stage.fast .card.flip{transition-duration:.09s}.stage.fast .card{transition-duration:.25s}
.stage.tall .fastbtn{font-size:14px;padding:6px 12px}
.mode{display:flex;gap:4px;padding:4px;border-radius:12px;background:rgba(0,0,0,.4);margin-bottom:12px}
.mode button{flex:1;padding:9px 0;border:0;border-radius:9px;background:none;color:#d9c3a8;font:800 15px Inter;letter-spacing:2px;cursor:pointer}
.mode button.on{background:linear-gradient(180deg,#f6d77e,#c9971f);color:#2a1500}
.mode button:disabled{cursor:default}
.pbtns{display:flex;gap:7px}
.pbtn{flex:1;padding:10px 0;border-radius:10px;border:1.5px solid rgba(229,185,78,.55);background:rgba(0,0,0,.3);color:#f6d77e;font:800 14px Inter;letter-spacing:1.5px;cursor:pointer}
.pbtn:hover{background:rgba(229,185,78,.12)}
.tabs{display:flex;align-items:center;gap:6px}
.tab{padding:8px 16px;border-radius:10px;border:1.5px solid rgba(229,185,78,.45);background:rgba(0,0,0,.3);color:#d9c3a8;font:800 15px Inter;letter-spacing:2px;cursor:pointer}
.tab b{font:700 18px "Noto Serif TC",serif;color:#f6d77e;margin-right:2px}
.tab.on{background:linear-gradient(180deg,#f6d77e,#c9971f);color:#2a1500;border-color:#c9971f}.tab.on b{color:#7a0a10}
.counts{margin-left:auto;font:800 15px Inter;color:#f1e4d0;display:flex;gap:10px}
.counts i{font-style:normal;padding:2px 8px;border-radius:999px}
.counts .cb{background:#b3121f}.counts .cp{background:#1d4ed8}.counts .ct{background:#15803d}
.pane{display:flex;flex-direction:column;gap:6px;min-height:0;flex:1}
.pane[hidden]{display:none}
.rl{font:800 12px Inter;letter-spacing:2px;color:#d9b98a;text-transform:uppercase;margin-top:2px}
.road{overflow:hidden;border-radius:10px}
.road svg{display:block}
.road.paper{background:#fbf6ea;box-shadow:inset 0 0 0 2px #e5b94e}
.road.paper line{stroke:#e6cfc2;stroke-width:1}
.road.night{background:linear-gradient(180deg,#151c46,#080b1e);box-shadow:inset 0 0 0 2px #e5b94e}
.road.night line{stroke:rgba(140,160,255,.12);stroke-width:1}
.derived{display:flex;flex-direction:column;gap:4px}
.pred{display:flex;gap:10px;margin-top:4px}
.pred div{flex:1;display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:10px;background:rgba(0,0,0,.35);font:800 14px Inter;color:#f1e4d0;letter-spacing:1px}
.pred svg{display:block}
.find{border-radius:14px;padding:12px 14px;background:rgba(0,0,0,.35);border:1px solid rgba(229,185,78,.35);color:#f1e4d0;font:500 16px Inter;min-height:0;overflow:hidden}
.find .hint{margin:0;color:#d9c3a8}
.find h3{margin:0 0 2px;font:900 26px "Playfair Display",Georgia,serif;color:#f6d77e}
.find .k{font:800 13px Inter;letter-spacing:2px;color:#d9b98a;text-transform:uppercase}
.find p{margin:6px 0 0;color:#e8dccb}
.find .row{display:flex;gap:14px;align-items:center}
.find .seen{margin-top:10px;display:flex;flex-wrap:wrap;gap:6px}
.shoe{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.shoe div{border-radius:12px;padding:9px 10px;background:rgba(0,0,0,.35);border:1px solid rgba(229,185,78,.25);text-align:center}
.shoe small{display:block;font:800 11px Inter;letter-spacing:2px;color:#d9b98a;text-transform:uppercase}
.shoe b{display:block;font:900 26px Inter;color:#ffe9a8;font-variant-numeric:tabular-nums}
.shoe b i{font-style:normal;font-size:15px;color:#d9c3a8;margin-left:4px}
.bookline{display:flex;align-items:center;justify-content:space-between;gap:10px;border-radius:12px;padding:10px 14px;background:linear-gradient(180deg,rgba(26,35,80,.75),rgba(7,10,28,.85));border:1px solid rgba(229,185,78,.5);color:#f6d77e;font:800 16px Inter;cursor:pointer}
.bookline span{color:#e8dccb;font-weight:600;font-size:14px}
.stage.tall .shoe,.stage.tall .bookline{display:none}
.find .seen span{padding:3px 9px;border-radius:999px;background:rgba(229,185,78,.14);border:1px solid rgba(229,185,78,.4);font:700 13px Inter;color:#f6d77e}

/* controls on the felt */
.controls{position:absolute;left:160px;width:1060px;top:852px;height:100px;display:flex;justify-content:center;align-items:center;gap:14px;z-index:80}
.controls [hidden]{display:none!important}
.btn{font:900 25px Inter;letter-spacing:1px;padding:16px 30px;border-radius:16px;border:2px solid rgba(229,185,78,.7);background:rgba(26,6,8,.94);color:#fff3d6;cursor:pointer;box-shadow:0 8px 18px rgba(0,0,0,.45);white-space:nowrap}
.btn:hover{background:rgba(60,12,16,.96)}
.btn:active{transform:translateY(2px)}
.btn.primary{background:linear-gradient(180deg,#f6d77e,#c9971f);border-color:#8a6510;color:#2a1500}
.btn:disabled{opacity:.4;cursor:default}
.chipbtn{width:92px;height:92px;padding:0;border:0;background:none;cursor:pointer;filter:drop-shadow(0 6px 8px rgba(0,0,0,.55));transition:transform .1s ease}
.chipbtn:hover{transform:translateY(-4px)}
.chipbtn:disabled{opacity:.35;cursor:default;transform:none}
.chipbtn svg{width:92px;height:92px;display:block}
.print text{font-variant-numeric:lining-nums;font-feature-settings:"lnum" 1}

/* sheets inside the table: game over, Top 25, stats, book, pays */
.sheet{position:absolute;inset:0;z-index:300;display:grid;place-items:center;background:rgba(0,0,0,.6)}
.sheet[hidden]{display:none}
.sheet .box{position:relative;width:820px;max-height:92%;overflow:auto;padding:34px 40px;border-radius:24px;background:linear-gradient(180deg,#22070a,#140304);border:2px solid rgba(229,185,78,.7);box-shadow:0 30px 80px rgba(0,0,0,.6),inset 0 0 0 6px rgba(229,185,78,.12);font:500 24px Inter;color:#f6ebdc}
.sheet .x{position:absolute;right:16px;top:12px;width:52px;height:52px;border:0;background:none;color:#d9c3a8;font:400 44px/1 Inter;cursor:pointer}
.sheet h2{margin:0 0 4px;font:900 40px "Playfair Display",Georgia,serif;color:#f6d77e}
.sheet h2 .cn{font:700 40px "Noto Serif TC",serif;margin-right:10px}
.sheet .sub{margin:4px 0 14px;color:#d9c3a8;font-size:22px}
.sheet .final{font:900 72px Inter;color:#ffe9a8;margin:4px 0}
.sheet .form{display:flex;gap:12px;margin:16px 0}
.sheet .form input,.sheet .form select{font:800 28px Inter;padding:12px 16px;border-radius:12px;border:2px solid #c9971f;background:#0e0304;color:#fff;min-width:0}
.sheet .form input{width:150px;text-transform:uppercase;letter-spacing:6px}
.sheet .row2{display:flex;gap:12px;margin-top:20px;flex-wrap:wrap}
.sheet .btn{font-size:22px;padding:14px 24px}
.lb{width:100%;border-collapse:collapse;font-size:24px}
.lb td,.lb th{padding:9px 6px;border-top:1px solid rgba(229,185,78,.2)}
.lb th{text-align:left;color:#f6d77e;font-weight:800;padding-top:18px}
.lb td:first-child{color:#d9c3a8;width:52px}
.lb td:last-child{text-align:right;font-weight:800;color:#ffe9a8;font-variant-numeric:tabular-nums}
.lb.pays td:first-child{width:auto;color:#f6ebdc}
.lb tr.me td{background:rgba(246,215,126,.16)}
.lb .cc{font:700 14px Inter;padding:2px 4px;border-radius:4px;background:rgba(255,255,255,.12)}
.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:8px 0 16px}
.tiles div{padding:12px;border-radius:14px;background:rgba(0,0,0,.35)}
.tiles small{display:block;font-size:16px;color:#d9c3a8}
.tiles b{font-size:30px;color:#ffe9a8}.tiles b.acc{color:#86efac}
/* the Book of Patterns */
.book{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:10px}
.book .pg{border-radius:14px;padding:10px;background:rgba(0,0,0,.35);border:1px solid rgba(229,185,78,.25);text-align:center}
.book .pg.got{border-color:#e5b94e;background:linear-gradient(180deg,rgba(26,35,80,.9),rgba(7,10,28,.95));box-shadow:0 0 16px rgba(229,185,78,.25)}
.book .pg svg{display:block;margin:0 auto 6px;height:60px;width:auto}
.book .pg b{display:block;font:800 17px Inter;color:#f6d77e}
.book .pg small{display:block;font:600 13px Inter;color:#d9c3a8;margin-top:2px}
.book .pg:not(.got) svg{opacity:.35}.book .pg:not(.got) b{color:#a89a8a}
.book h3{grid-column:1/-1;margin:14px 0 0;font:800 16px Inter;letter-spacing:3px;color:#d9b98a}

/* ---- an upright phone: the 780x1400 table ---- */
.stage.tall{background-size:auto 1400px;background-position:62% top}
.stage.tall .print{display:none}
.stage.tall .print-tall{display:block;position:absolute;inset:0;width:780px;height:1400px;pointer-events:none}
.stage.tall .panel{left:14px;top:14px;width:752px;padding:10px 14px}
.stage.tall .panel .mode{margin-bottom:8px}.stage.tall .panel .mode button{font-size:18px;padding:9px 0}
.stage.tall .bank{font-size:42px}.stage.tall .last b{font-size:24px}.stage.tall .lbl{font-size:13px}
.stage.tall .hand{font-size:17px;margin:2px 0 8px}
.stage.tall .pbtn{font-size:16px;padding:10px 0}
.stage.tall .sboard{left:14px;top:222px;width:752px;height:296px;padding:10px 12px;gap:6px}
.stage.tall .find{display:none}
.stage.tall .derived{flex-direction:row;gap:8px}.stage.tall .derived>div{flex:1;min-width:0}
.stage.tall .pred{display:none}
.stage.tall .rl{font-size:11px;margin:0}
.stage.tall .spot.pp{left:52px;top:880px;width:116px;height:116px}
.stage.tall .spot.t{left:285px;top:880px;width:210px;height:116px}
.stage.tall .spot.bp{left:612px;top:880px;width:116px;height:116px}
.stage.tall .spot.p{left:16px;top:1012px;width:362px;height:120px;padding-left:22px}
.stage.tall .spot.b{left:402px;top:1012px;width:362px;height:120px;padding-left:22px}
.stage.tall .spot small{font-size:18px}
.stage.tall .spot .cn{font-size:30px}.stage.tall .spot.p .cn,.stage.tall .spot.b .cn{font-size:38px}
.stage.tall #chips-pp{left:68px;top:910px}.stage.tall #chips-t{left:348px;top:910px}.stage.tall #chips-bp{left:628px;top:910px}
.stage.tall #chips-p{left:276px;top:1030px}.stage.tall #chips-b{left:662px;top:1030px}
.stage.tall .chips .amt{font-size:18px;bottom:-26px}
.stage.tall .total{width:58px;height:58px;margin:-29px 0 0 -29px;font-size:34px}
.stage.tall .total.p{left:344px;top:566px}.stage.tall .total.b{left:436px;top:566px}
.stage.tall .banner{left:390px;top:420px;font-size:38px}
.stage.tall .banner small{font-size:18px}
.stage.tall .tip{left:390px;top:700px;font-size:25px;white-space:normal;width:640px;text-align:center}
.stage.tall .toastin{left:390px;top:380px}
.stage.tall .note{left:390px;top:1150px;font-size:20px;max-width:740px}
.stage.tall .controls{left:0;width:780px;top:1186px;height:200px;flex-wrap:wrap;align-content:center;gap:12px 12px;padding:0 10px;box-sizing:border-box}
.stage.tall .btn{font-size:28px;padding:18px 28px}
.stage.tall .chipbtn,.stage.tall .chipbtn svg{width:100px;height:100px}
.stage.tall .sheet .box{width:740px;max-height:94%;padding:30px 30px}
.stage.tall .tiles{grid-template-columns:repeat(2,1fr)}
.stage.tall .book{grid-template-columns:repeat(3,1fr)}
