html,body,#root{height:100%;margin:0}body{background:var(--tg-theme-bg-color, #ffffff);color:var(--tg-theme-text-color, #111111);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.screen{height:100%;display:flex;align-items:center;justify-content:center}:root{--bg: var(--tg-theme-bg-color, #ffffff);--text: var(--tg-theme-text-color, #111111);--hint: var(--tg-theme-hint-color, #777777);--btn: var(--tg-theme-button-color, #2481cc);--btn-text: var(--tg-theme-button-text-color, #ffffff);--felt: var(--tg-theme-secondary-bg-color, #e8f0e8)}*{box-sizing:border-box}body{overflow:hidden}button{font:inherit}.start{text-align:center;padding:16px}.start>button,.dialog button{background:var(--btn);color:var(--btn-text);border:0;border-radius:10px;padding:10px 18px;margin:4px;font-weight:600}.dialog button.secondary{background:transparent;color:var(--btn);border:1px solid var(--btn)}.game{--gold: #e0c070;--cream: #faf7ef;--ink: #1a1a1a;--suit-red: #b03030;--burg: #7a2230;height:100dvh;display:flex;flex-direction:column;color:#f3ecd6;font-family:Nunito,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:radial-gradient(120% 70% at 50% 40%,#2a6a4f,#1c4a37 55%,#12301f);padding:10px 12px calc(10px + env(safe-area-inset-bottom));overflow:hidden}.scorebar{display:flex;align-items:center;gap:8px}.round-btn{width:40px;height:40px;border-radius:50%;border:1px solid rgba(224,192,112,.45);background:#0003;color:#f3ecd6;display:grid;place-items:center;flex:none}.score-pill{flex:1;min-width:0;text-align:center;background:#00000038;border:1px solid rgba(224,192,112,.35);border-radius:14px;padding:7px 8px}.score-main{font-weight:800;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.score-main b{font-family:Playfair Display,Georgia,serif;color:var(--gold);font-size:22px;margin:0 2px}.score-main .dash{color:#f3ecd699}.score-sub{font-size:9.5px;letter-spacing:.12em;color:#f3ecd6b3;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.head-right{display:flex;flex-direction:column;align-items:center;gap:4px;flex:none}.trump-badge{width:46px;height:40px;border-radius:10px;background:var(--cream);border:2px solid var(--gold);color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1}.trump-badge.red{color:var(--suit-red)}.trump-sym{font-size:20px}.trump-lbl{font-size:7.5px;font-weight:800;letter-spacing:.08em;color:#5a5a5a;margin-top:2px}.lang-switch{display:inline-flex;border:1px solid rgba(224,192,112,.55);border-radius:999px;overflow:hidden}.lang-switch button{background:transparent;color:var(--gold, #e0c070);border:0;padding:2px 8px;font-size:10px;font-weight:800;letter-spacing:.06em}.lang-switch button.on{background:var(--gold, #e0c070);color:#1c3a2a}.start-lang{display:flex;justify-content:center;margin-bottom:12px}.start-lang .lang-switch button{color:var(--btn)}.start-lang .lang-switch{border-color:var(--btn)}.start-lang .lang-switch button.on{background:var(--btn);color:var(--btn-text)}.opp{text-align:center;margin-top:10px}.opp-pill{display:inline-flex;align-items:center;gap:8px;background:#00000040;border-radius:999px;padding:5px 14px 5px 6px;font-size:14px}.avatar{width:26px;height:26px;border-radius:8px;background:var(--burg);border:1px solid var(--gold);display:grid;place-items:center}.muted{color:#f3ecd6a6;font-size:12px}.hand{display:flex;justify-content:center}.opp-hand{margin-top:8px;height:100px}.opp-hand .card{--w: 58px}.table{flex:1;min-height:0;position:relative;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:6px 2px}.talon{position:relative;width:104px;flex:none}.talon-cards{position:relative;width:100px;height:112px}.talon .trump-card{position:absolute;left:28px;top:40px;transform:rotate(-4deg);width:66px;height:92px}.talon-stack{position:absolute;left:0;top:0;width:66px;height:92px}.talon-stack .card{position:absolute;width:66px;height:92px}.talon-stack .card:nth-child(1){left:5px;top:5px}.talon-stack .card:nth-child(2){left:2px;top:2px}.badge{position:absolute;right:-14px;top:-8px;min-width:28px;height:28px;border-radius:50%;background:var(--gold);color:#3a2a08;font-weight:800;font-size:14px;display:grid;place-items:center;box-shadow:0 2px 6px #00000059;z-index:5}.caption{margin-top:6px;font-size:11px;font-weight:800;letter-spacing:.12em;color:#f3ecd6b3}.trick{position:relative;flex:1;align-self:stretch;max-height:190px;margin:auto 0;border:1.5px dashed rgba(243,236,214,.28);border-radius:22px;background:#00000014}.ghost{position:absolute;left:14%;top:12%;width:72px;height:100px;border:1.5px dashed rgba(243,236,214,.35);border-radius:10px;transform:rotate(-6deg);display:grid;place-items:center;font-size:11px;font-weight:800;letter-spacing:.12em;color:#f3ecd68c}.slot{position:absolute;width:72px;height:100px}.slot-cpu{left:14%;top:12%;transform:rotate(-6deg)}.slot-me{right:10%;bottom:8%;transform:rotate(7deg)}.toast{position:absolute;bottom:-6px;left:0;right:0;text-align:center;font-weight:800;color:var(--gold);animation:fade 2s forwards;pointer-events:none}.me{text-align:center}.points-row{display:flex;align-items:flex-end;gap:12px;text-align:left}.points-meter{flex:1;min-width:0}.points-head{display:flex;justify-content:space-between;align-items:baseline;font-weight:800;font-size:14px;margin-bottom:6px;gap:6px}.points-num{color:#f3ecd6b3;font-size:12px;white-space:nowrap}.points-num b{font-family:Playfair Display,Georgia,serif;color:var(--gold);font-size:18px}.bar{height:8px;border-radius:999px;background:#00000059;overflow:hidden}.bar-fill{height:100%;background:linear-gradient(90deg,#c9a24a,var(--gold));border-radius:999px;transition:width .4s ease}.actions{display:flex;flex-direction:column;gap:6px;align-items:stretch;flex:none}.pill-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#0000002e;color:var(--gold);border:1.5px solid var(--gold);border-radius:999px;padding:10px 16px;font-weight:800;font-size:14px;max-width:190px}.pill-btn:disabled{opacity:.4}.my-hand{height:118px;align-items:flex-end;margin-top:8px}.card{--w: 72px;width:var(--w);height:calc(var(--w) * 1.42);border-radius:9px;border:1px solid rgba(0,0,0,.18);background:var(--cream);color:var(--ink);flex:none;padding:0;position:relative;box-shadow:0 3px 8px #00000059;font-family:Playfair Display,Georgia,serif}.card.red{color:var(--suit-red)}.card.face:after{content:"";position:absolute;top:5px;right:5px;bottom:5px;left:5px;border:1px solid rgba(190,160,90,.45);border-radius:6px;pointer-events:none}.card .idx{position:absolute;display:flex;flex-direction:column;align-items:center;line-height:1;font-weight:800}.card .idx .rank{font-size:17px}.card .idx .suit{font-size:12px;margin-top:1px}.card .tl{top:6px;left:7px}.card .br{bottom:6px;right:7px;transform:rotate(180deg)}.card .center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.card .big-rank{font-size:34px;font-weight:800;line-height:1}.card .big-suit{font-size:18px;line-height:1;margin-top:2px}.card .center.num .big-rank{display:none}.card .center.num .big-suit{font-size:38px;margin:0}.card.back{border:3px solid var(--cream);background:repeating-linear-gradient(45deg,transparent 0 7px,rgba(224,192,112,.55) 7px 8px),repeating-linear-gradient(-45deg,transparent 0 7px,rgba(224,192,112,.55) 7px 8px),var(--burg)}.card.dim{opacity:.55}.card.hl{box-shadow:0 0 0 3px var(--gold),0 3px 8px #00000059}.fan{margin-left:-26px;transform:translateY(var(--drop, 0)) rotate(var(--rot, 0));transform-origin:50% 120%;transition:transform .15s}.fan:first-child{margin-left:0}.my-hand .fan:not(:disabled):not(.back):hover,.my-hand .fan:not(:disabled):not(.back):active{transform:translateY(calc(var(--drop, 0px) - 14px)) rotate(var(--rot, 0))}.opp-hand .fan{--w: 58px;margin-left:-22px;transform-origin:50% -20%}.opp-hand .fan:first-child{margin-left:0}.status{margin-top:10px;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);min-height:16px;display:flex;align-items:center;justify-content:center;gap:8px}.status .dot{width:12px;height:12px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 3px #e0c0704d}.deal-in{animation:dealIn .35s ease-out}.played.from-top{animation:fromTop .35s ease-out}.played.from-bottom{animation:fromBottom .35s ease-out}@keyframes dealIn{0%{opacity:0;margin-top:40px}}@keyframes fromTop{0%{transform:translateY(-80px);opacity:0}}@keyframes fromBottom{0%{transform:translateY(80px);opacity:0}}@keyframes fade{0%,70%{opacity:1}to{opacity:0}}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:10}.dialog{background:var(--bg);color:var(--text);border-radius:14px;padding:20px;margin:16px;max-width:320px;text-align:center}.game~.modal .dialog,.modal .dialog{background:#173d2c;color:#f3ecd6;border:1.5px solid #e0c070}.modal .dialog button{background:#e0c070;color:#1c3a2a}.modal .dialog button.secondary{background:transparent;color:#e0c070;border:1px solid #e0c070}@media (max-width: 360px){.card{--w: 62px}.my-hand{height:104px}}
