html,body,#root{margin:0;min-height:100%}body{background:var(--ds-page)}*{box-sizing:border-box}.demo-notice{font-size:13px;color:var(--ds-ink-2);border-right:3px solid var(--ds-teal);padding:8px 12px;margin:18px 0 22px}.scenario-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.scenario-tabs button{min-height:44px;max-width:100%}.game{border:1px solid var(--ds-hairline);border-radius:12px;padding:18px;background:var(--ds-page);max-width:740px;margin:0 auto}.opponent{display:flex;gap:10px;align-items:center;padding-bottom:18px;border-bottom:1px solid var(--ds-hairline)}.opponent strong{font-size:14px}.opponent small{display:block;font-size:12px;color:var(--ds-ink-2)}.avatar{border-radius:50%;background:var(--ds-raised);width:36px;height:36px;display:grid;place-items:center}.card-backs{display:flex;margin-right:auto;direction:ltr}.card-backs i{display:block;width:20px;height:30px;border:1px solid var(--ds-ink-4);background:repeating-linear-gradient(45deg,var(--ds-raised),var(--ds-raised) 3px,var(--ds-page) 3px,var(--ds-page) 6px);border-radius:3px;margin-left:-8px}.table-top,.hand-header{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:var(--ds-ink-2);margin:16px 0 12px}.table-top span:last-child{font-weight:600;color:var(--ds-teal)}.table-cards{display:flex;gap:12px;justify-content:center;align-items:center;min-height:150px;padding:12px 2px}.playing-card{position:relative;width:64px;height:94px;border:1px solid var(--ds-ink-4);border-radius:8px;background:var(--ds-page);color:var(--ds-ink);box-shadow:0 3px 8px #251f2109;flex-shrink:0;direction:ltr;font-family:inherit;padding:0;transition:transform .15s,border-color .15s}.playing-card.red-suit{color:var(--ds-red)}button.playing-card{cursor:pointer}button.playing-card:hover{transform:translateY(-4px)}.playing-card.chosen{outline:2px solid var(--ds-teal);outline-offset:3px}.corner{position:absolute;left:7px;top:5px;font-size:18px;font-weight:600;line-height:19px}.corner small{display:block;font-size:14px;line-height:14px}.pip{position:absolute;top:39px;left:0;right:0;font-size:27px;text-align:center;line-height:30px}.card-bottom{position:absolute;bottom:5px;right:7px;font-size:16px;transform:rotate(180deg)}.move-note{min-height:72px;font-size:14px;line-height:23px;padding:12px;background:var(--ds-raised);border-radius:8px}.hand-header{margin-top:20px}.hand-cards{display:flex;gap:12px;justify-content:center;min-height:108px;padding:6px 0 10px}.actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:12px}.actions button{min-height:46px}.bonus{font-size:13px;color:var(--ds-ink-2)}.bonus b{font-size:20px;font-weight:600;color:var(--ds-teal);padding-right:4px}.hint{font-size:13px;line-height:22px}.empty-table{display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--ds-teal);font-weight:600}.empty-table strong{font-size:32px}.empty-table span{font-size:14px}.rule-list p{display:grid;grid-template-columns:130px 1fr;gap:16px;border-bottom:1px solid var(--ds-hairline);padding-bottom:12px;margin:0 0 12px;line-height:24px;font-size:14px}.rule-list strong{font-weight:600}button:focus-visible{outline:3px solid var(--ds-ink);outline-offset:5px}@media(max-width:480px){.game{padding:14px 10px}.hand-cards{gap:8px}.hand-cards .playing-card{width:50px;height:80px}.hand-cards .pip{font-size:24px;top:32px}.opponent{gap:8px}.card-backs i{width:16px;height:25px}.rule-list p{grid-template-columns:1fr;gap:2px}.table-cards{gap:11px}.actions{gap:8px}.scenario-tabs{display:grid;grid-template-columns:1fr}.scenario-tabs button{width:100%}}.demo-notice{display:flex;align-items:center;gap:14px}.demo-notice img{width:64px;height:80px;object-fit:cover;border-radius:8px;flex-shrink:0}.game,.game .hand-cards{width:100%}@media(max-width:480px){.card-count-4{gap:8px}.card-count-4 .playing-card{width:50px;height:80px}.card-count-4 .pip{top:32px;font-size:24px}}.round-controls{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.round-controls p{width:100%;margin:0}.round-cards{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;padding:12px 4px}.table-round{min-height:160px;align-content:center}.round-stats{display:flex;gap:16px;flex-wrap:wrap;margin:24px 0;font-size:13px}.round-stats strong{font-weight:600}.round-instruction{font-size:13px;line-height:22px;color:var(--ds-ink-2)}.round-suggestions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.round-error{color:var(--ds-red);line-height:23px}.basra-count{border-top:1px solid var(--ds-hairline);display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:20px;padding-top:12px;font-size:13px}.basra-count b{color:var(--ds-teal);font-weight:600}.score-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.score-card{border:1px solid var(--ds-hairline);border-radius:8px;padding:16px}.score-card h3{font-size:16px;margin-top:0}.score-card p{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--ds-hairline);font-size:14px;line-height:24px}.move-log{padding-right:22px;font-size:13px;line-height:24px}.move-log li{padding:6px 0;border-bottom:1px solid var(--ds-hairline)}.empty-message{color:var(--ds-ink-2);font-size:13px}.round-result{font-weight:600;font-size:20px;color:var(--ds-teal)}@media(max-width:480px){.round-cards{gap:10px}.round-cards .playing-card{width:50px;height:80px}.round-cards .pip{font-size:24px;top:32px}.score-grid{grid-template-columns:1fr}}.round-entry{padding:24px 24px 0;max-width:1040px;margin:auto}.round-entry a{min-height:44px}@media(min-width:768px){.round-entry{padding:28px 36px 0}}.match-controls{border:0;padding:0;margin:0;min-width:0}.save-status{font-size:12px;line-height:20px;color:var(--ds-ink-2)}.match-score{display:flex;gap:18px;align-items:center;flex-wrap:wrap;padding:16px 0;margin:14px 0;border-top:1px solid var(--ds-hairline);border-bottom:1px solid var(--ds-hairline)}.match-score span{font-size:14px;display:flex;gap:8px;align-items:center}.match-score b{color:var(--ds-teal);font-size:24px;font-weight:600}.match-score small{display:block;font-size:12px;color:var(--ds-ink-2)}.match-outcome{padding:14px;border:1px solid var(--ds-hairline);border-radius:8px;line-height:24px;margin-top:16px}.save-status small{display:block;font-size:11px;margin-top:2px}.match-controls>.file-button{margin-bottom:24px}.match-controls>section,.match-controls>.game,.match-controls>.round-controls{margin-top:24px}.match-controls>section:first-of-type{margin-top:24px}.match-controls .round-game+section{margin-top:28px}.played-move{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px;border:1px dashed var(--ds-primary,#76a99e);border-radius:12px}.played-move>small{font-size:12px}.move-in-progress .playing-card{transition:none}.table-top{flex-wrap:wrap;gap:8px}.table-top>span:last-child{max-width:100%}.playing-card{background:#fff;color:#121b2b;border-color:#8392a6;box-shadow:0 3px 9px #10243b1a}.playing-card.red-suit{color:#d01136;border-color:#d88a9c}.playing-card.chosen{outline-color:#168269}.corner,.card-bottom{font-weight:700}.card-backs i{border-color:#214b8e;background:repeating-linear-gradient(45deg,#2159a3,#2159a3 3px,#6599df 3px 6px)}.card-art{display:block;width:100%;height:100%;object-fit:fill;border-radius:7px}.dealer-announcement{padding:12px 16px;border:1px solid var(--ds-hairline);border-radius:10px;font-size:14px;line-height:24px;margin:16px 0;font-weight:600}.dealer-announcement.announcing{border:2px solid #168269;background:#e9f5ef;color:#163e32;font-size:18px}.table-round{position:relative}.dealer-table-notice{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;background:var(--ds-page);border:2px solid var(--ds-teal);border-radius:12px;text-align:center;padding:24px;pointer-events:none}.dealer-table-notice strong{font-size:16px}.dealer-table-notice span{font-size:24px;font-weight:600;color:var(--ds-teal)}.dealer-table-notice small{font-size:16px}.sound-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:16px 0}.sound-controls small{color:var(--ds-muted);font-size:13px}.dealer-beside-table{margin:8px 0 12px;text-align:right;font-size:13px;line-height:1.6;color:var(--ds-ink-2)}.opening-countdown{width:100%;text-align:center;display:flex;flex-direction:column;gap:6px;color:var(--ds-teal);font-weight:600;padding:12px}.opening-countdown strong{font-size:36px;line-height:1.2}.opening-countdown span{font-size:14px}.opening-specials{font-size:13px;line-height:1.7;color:var(--ds-ink-2);margin:8px 0 12px}.opening-specials strong{font-weight:600}.opening-redeal-notice{font-size:14px;line-height:1.7;margin:16px 0;color:var(--ds-ink-2)}.report-text{margin:16px 0}.report-text summary{padding:12px 0;cursor:pointer}.report-text textarea{width:100%;min-height:260px;font:12px/1.6 monospace;box-sizing:border-box;white-space:pre-wrap}.club-identity{width:64px;height:64px;object-fit:contain;margin:12px 24px}.language-label{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:12px 24px}.language-label select{min-height:44px;max-width:100%;font:inherit}details>summary{padding:12px 0;cursor:pointer}textarea{width:100%;box-sizing:border-box;min-height:200px}[data-language-note]{padding:12px 24px;background:var(--ds-raised)}[dir=ltr] .dealer-beside-table{text-align:left}.basra-praise{position:absolute;top:10px;left:50%;transform:translate(-50%);z-index:3;pointer-events:none;background:var(--ds-page);border:2px solid var(--ds-teal);border-radius:999px;padding:10px 20px;text-align:center;box-shadow:0 4px 14px #251f2126;max-width:92%}.basra-praise strong{font-size:20px;font-weight:700;color:#173c32;white-space:nowrap}@media(max-width:480px){.basra-praise strong{font-size:17px}}.club-identity{width:46px;height:46px;margin:10px 24px 0}.language-label{padding-top:8px;padding-bottom:8px;font-size:12px}.language-label select{border:1px solid #cbd6ca;border-radius:7px;background:#fffdf5;padding:0 9px}.basra-full .file-card{max-width:840px}.match-score{background:#edf1e9;border:0;border-radius:12px;padding:14px 18px;justify-content:space-between}.match-score span{flex-direction:column;gap:3px;align-items:flex-start;color:#526557;font-size:12px}.match-score b{font-size:32px;line-height:1.15;color:#173c32}.match-score small{width:100%;margin-top:4px}.character-settings{margin:14px 0;border:1px solid #d6dfd1;border-radius:10px;padding:0 14px;background:#fffdf5}.character-settings summary{font-weight:600;min-height:44px}.character-choice{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;font-size:13px}.character-choice>div{display:flex;gap:8px}.character-choice button{min-height:44px}.character-storage{font-size:11px;color:#627262;line-height:18px;margin:8px 0 12px}.sound-controls{margin:12px 0}.sound-controls small{color:#627262}.sound-controls button{min-height:44px}.game{padding:16px 14px;background:radial-gradient(ellipse at 50% 45%,#21634b,#103b30);color:#fffdf3;border-radius:18px;border:1px solid #b7a374;box-shadow:0 6px 18px #12382b19;overflow:hidden}.opponent{border-color:#ffffff25}.opponent .avatar{background:#d6c696;color:#173c32}.opponent small,.game .hand-header,.game .table-top,.game .round-instruction,.game .dealer-beside-table,.game .opening-specials,.game .bonus,.game .empty-message{color:#d3e3d6}.game .table-top>span:last-child{color:#ede1bf;font-weight:600}.card-backs i{width:24px;height:36px;border:2px solid #ede7d5;border-radius:4px}.hand-header{border-top:1px solid #ffffff25;padding-top:15px}.basra-count{border-color:#ffffff25;color:#c7dccb}.basra-count b,.game .bonus b{color:#ead79d}.game .move-note{background:#103b30;color:#e0ecdf;border:1px solid #ffffff22}.round-stats{justify-content:space-between;gap:8px;font-size:12px;margin:17px 0}.table-stage{position:relative;margin:0 -14px 8px;isolation:isolate;min-height:220px;background:#13442f}.character-scene{width:100%;height:auto;position:absolute;top:0;left:0;display:block;pointer-events:none;z-index:-1}.table-stage .table-round,.table-stage .table-cards{position:relative;min-height:240px;width:66%;margin:auto;display:flex;flex-wrap:wrap;align-content:center;align-items:center;justify-content:center;gap:7px;padding:28% 0 24%}.table-stage .playing-card{width:48px;height:73px;border-radius:6px;box-shadow:0 3px 7px #001a1566;border-color:#e2d7be;background:#fffcf5}.table-stage .corner{left:4px;top:4px;font-size:16px;line-height:15px}.table-stage .corner small{font-size:12px;line-height:12px}.table-stage .pip{font-size:25px;top:29px;line-height:26px}.table-stage .card-bottom{right:4px;bottom:4px;font-size:14px}.playing-card{background:#fffcf5;border-color:#c2b894;border-radius:8px;box-shadow:0 3px 8px #001a1538}.playing-card.chosen{outline-color:#ead79d}.game .round-cards:not(.table-round),.game .hand-cards{gap:9px}.game .hand-cards .playing-card,.game .round-cards:not(.table-round) .playing-card{width:62px;height:94px}.game .round-cards:not(.table-round) .pip{top:36px}.game .round-cards:not(.table-round){padding:12px 0}.played-move{padding:5px;gap:4px;background:#124331;border:1px dashed #cdb97b}.played-move>small{font-size:10px;color:#f3e5bc}.dealer-table-notice{background:#123f31;border-color:#ddc58c;color:#fffdf3}.dealer-table-notice span,.opening-countdown,.empty-table{color:#ead79d}.game button:focus-visible{outline:3px solid #ead79d;outline-offset:3px}.game .basra-praise{background:#f9f4e5;border-color:#b79d5a}.round-controls button,.actions button{min-height:44px}.round-instruction{font-size:12px;line-height:21px}.basra-full .save-status{font-size:11px}.score-card{background:#fffdf5}.demo-notice{font-size:12px}.table-stage .empty-table,.table-stage .empty-message{background:#123f31e8;padding:8px;border-radius:8px}.table-stage .table-cards{width:66%}[dir=ltr] .character-scene{transform:none}@media(max-width:480px){.game{padding:14px 10px}.table-stage{margin-left:-10px;margin-right:-10px}.table-stage .table-round,.table-stage .table-cards{gap:5px;min-height:220px;width:70%;padding-top:30%;padding-bottom:22%}.table-stage .playing-card{width:44px;height:68px;min-width:44px}.table-stage .pip{top:26px;font-size:23px}.game .hand-cards .playing-card,.game .round-cards:not(.table-round) .playing-card{width:clamp(44px,15vw,62px);height:88px}.game .hand-cards,.game .round-cards:not(.table-round){gap:7px}.game .round-cards:not(.table-round) .pip{top:33px}.character-choice{flex-wrap:wrap}.character-choice>strong{min-width:80px}.match-score{padding:12px}.table-top{margin-top:12px}.club-identity{margin-left:24px;margin-right:24px}}@media(min-width:768px){.table-stage .table-round,.table-stage .table-cards{width:64%;min-height:380px;padding-top:30%;padding-bottom:24%;gap:12px}.table-stage .playing-card{width:68px;height:100px}.table-stage .corner{font-size:20px;line-height:20px;top:7px;left:7px}.table-stage .pip{font-size:34px;top:39px}.table-stage .card-bottom{font-size:18px;bottom:7px;right:7px}.game .round-cards:not(.table-round) .playing-card,.game .hand-cards .playing-card{width:70px;height:104px}.character-settings{max-width:520px}}.file-card{gap:18px}.file-header{margin-bottom:8px}.file-header .file-title{font-family:Arial,sans-serif;font-weight:700;letter-spacing:0;font-size:28px;line-height:1.3}.file-header .file-fact{margin:6px 0}.file-header .file-intro{margin-top:8px;line-height:1.7;font-size:13px}.basra-full .file-card{padding-top:16px}.basra-full .save-status{margin:4px 0}.round-entry{padding-top:8px}.basra-full .match-controls>section,.basra-full .match-controls>.game,.basra-full .match-controls>.round-controls{margin-top:16px}.file-header{gap:8px}.file-fact,.file-intro{margin:0}.basra-full .file-card{gap:12px}.match-score{gap:8px}.match-score span{flex:1}.match-score small{margin-top:2px}.basra-full .sound-controls small{font-size:11px}.basra-full .sound-controls{gap:8px}.table-stage .table-round{padding-top:25%;padding-bottom:23%}body{background:#103b30}.compact-basra .file-card{padding:0!important;max-width:none!important;gap:0!important;background:#103b30;min-height:calc(100dvh - 64px)}.compact-basra .game{max-width:none;border-radius:0;border:0;box-shadow:none;margin:0!important;padding:10px 12px;min-height:calc(100dvh - 64px);display:flex;flex-direction:column}.compact-basra .match-controls>.game{margin:0!important}.compact-basra .table-score{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:5px 50px;color:#ead79d}.table-score span{display:flex;gap:8px;align-items:center;font-size:14px}.table-score b{font-size:26px}.table-score small{font-size:11px;text-align:center}.compact-basra .opponent{padding:8px 0;min-height:45px}.compact-basra .opponent .avatar{display:none}.compact-basra .opponent small{font-size:11px}.compact-basra .table-top{margin:8px 0;font-size:12px}.compact-basra .table-stage{margin:0 -12px;min-height:0;flex:1;display:flex;align-items:center;background:#124331}.compact-basra .character-scene{top:50%;transform:translateY(-50%)}.compact-basra .table-stage .table-round{padding:22% 0;min-height:300px;width:70%;gap:6px}.compact-basra .hand-header{margin:0;padding:10px 0 4px}.compact-basra .game .round-cards:not(.table-round){padding:8px 0}.compact-basra .round-instruction{margin:0;min-height:24px;font-size:11px}.compact-basra .basra-count{margin-top:4px;padding-top:6px;font-size:11px}.compact-basra .round-error{background:#fff3e6;color:#b01b30;padding:8px;margin:4px 0}.game-settings,.language-settings{position:absolute;top:0;z-index:8}.game-settings{right:8px;color:#f5e7bf}.game-settings>summary{width:44px;min-height:44px;padding:10px 0;font-size:11px;text-align:center}.game-settings[open]{background:#fffdf5;color:#173c32;border-radius:8px;padding:8px;width:min(350px,calc(100vw - 16px));box-shadow:0 4px 20px #0005}.game-settings .character-settings{margin:0}.language-settings{left:8px;color:#ead79d}.language-settings>summary{width:44px;height:44px;text-align:center;list-style:none;padding:10px}.language-settings[open]{background:#fffdf5;border-radius:8px;color:#173c32}.language-settings .language-label{padding:8px}.compact-basra .game-settings .save-status{font-size:10px}.compact-basra .game-settings .round-controls{margin:8px 0}.compact-basra .game-settings .move-log{color:#173c32}.start-screen{position:relative;isolation:isolate;min-height:calc(100dvh - 64px);background:#124331;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fffdf5;gap:20px;padding:50px 12px}.start-screen .character-scene{top:50%;transform:translateY(-50%);z-index:-1}.start-screen>.file-button{min-height:52px;min-width:170px;background:#f5e7bf;color:#173c32;border-color:#bfa363;font-weight:600}.start-score{position:absolute;top:12px;color:#ead79d;font-size:16px}.compact-basra .match-controls>section:not(.game){background:#fffdf5;color:#173c32;padding:16px;margin:0!important}.compact-basra .match-controls>section:not(.game) .score-card{color:#173c32}@media(min-width:768px){.compact-basra .game{max-width:1100px;margin:auto!important}.compact-basra .table-stage .table-round{padding:15% 0;min-height:360px}.compact-basra .character-scene,.start-screen .character-scene{max-height:100%;object-fit:contain}.compact-basra .hand-header,.compact-basra .basra-count{padding-left:20px;padding-right:20px}}@media(max-width:360px){.compact-basra .table-score{padding-left:40px;padding-right:40px;gap:5px}.table-score span{font-size:12px;gap:4px}.table-score b{font-size:24px}.table-score small{max-width:70px}.compact-basra .table-stage .table-round{min-height:280px}}.start-screen>.file-button{align-self:center!important}.compact-basra .table-stage .table-round{padding:8% 0;align-self:stretch;min-height:330px}.compact-basra .table-stage{align-items:stretch}.compact-basra .game .round-instruction{max-width:100%}.compact-basra .table-stage .playing-card{color:#121b2b}.compact-basra .table-stage .playing-card.red-suit{color:#d01136}.compact-basra{position:relative}.compact-basra .game-settings>summary{height:44px;padding:12px 0;list-style:none}.compact-basra .game-settings>summary::marker{content:""}.compact-basra .table-score{min-height:44px}.compact-basra .game-settings[open]{max-height:calc(100dvh - 80px);overflow-y:auto}.compact-basra .start-screen .character-scene{pointer-events:none}.compact-basra{scroll-margin-top:64px}.compact-basra,.compact-basra .file-card{min-height:0!important;height:auto!important}.compact-basra .game,.compact-basra .start-screen{position:relative;min-height:0!important;height:540px;max-width:880px!important;margin:0 auto!important;padding:10px 12px!important;display:block;overflow:hidden}.compact-basra .game .table-score{position:absolute;top:278px;left:20%;right:20%;z-index:5;min-height:30px;padding:3px 10px!important;background:#0e392cdd;border:1px solid #cbb374;border-radius:12px;gap:5px}.compact-basra .table-score span{font-size:11px;gap:4px}.compact-basra .table-score b{font-size:20px}.compact-basra .table-score small{font-size:9px}.compact-basra .game .opponent{height:52px;padding:8px 42px;border:0}.compact-basra .opponent small{display:none}.compact-basra .opponent .card-backs{margin-left:0}.compact-basra .game .table-top{height:25px;margin:4px 0;font-size:10px}.compact-basra .game .table-stage{height:270px;min-height:0!important;flex:none;display:block;margin:0 -12px;background:#124331;overflow:hidden}.compact-basra .game .character-scene{display:block;width:100%;height:100%;object-fit:contain;top:0;transform:none;max-height:none}.compact-basra .game .table-stage .table-round{height:240px;min-height:0!important;width:70%;padding:50px 0 12px!important;align-self:auto;margin:0 auto;align-content:center;gap:6px}.compact-basra .game .hand-header{margin:0;padding:8px 0 4px}.compact-basra .game .round-cards:not(.table-round){padding:8px 0!important;min-height:104px}.compact-basra .game .round-instruction{margin:0;min-height:20px;font-size:10px}.compact-basra .game .basra-count{margin-top:2px;padding-top:4px;font-size:10px}.compact-basra .start-screen{display:flex;height:420px;justify-content:center;align-items:center}.compact-basra .start-screen .character-scene{width:100%;height:100%;object-fit:contain;top:0;transform:none}.start-screen .start-score{top:20px}.start-screen>.file-button{margin-top:120px}.table-outcome{position:absolute;left:20%;right:20%;top:160px;z-index:6;display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 12px;text-align:center;background:#103b30e8;border-radius:10px;padding:10px;color:#f3e5b8;overflow-y:auto;max-height:calc(100% - 180px)}.table-outcome .outcome-table{width:100%}.table-outcome .outcome-table{line-height:1.35}.compact-basra .table-outcome .outcome-table{line-height:1.3}.table-outcome strong{font-size:16px}.table-outcome .file-button{min-height:44px;background:#f4e6bf;color:#173c32}.compact-basra .game:has(.table-outcome){height:380px}.compact-basra .game:has(.table-outcome) .empty-message{visibility:hidden}.compact-basra .game:has(.table-outcome) .basra-count{display:none}.end-details{background:#124331;color:#ead79d;font-size:12px;padding:0 14px}.end-details>summary{min-height:44px}.end-details[open]{background:#fffdf5;color:#173c32}.end-details .score-card{color:#173c32}@media(max-width:360px){.compact-basra .game{height:525px}.compact-basra .game .table-stage{height:255px}.compact-basra .game .table-score{top:265px;left:18%;right:18%}.compact-basra .table-score span{font-size:10px}.compact-basra .table-score b{font-size:17px}.compact-basra .table-score small{font-size:8px}.compact-basra .game .table-stage .table-round{height:225px;padding-top:40px!important}.compact-basra .game .table-stage .playing-card{width:44px;height:68px}}@media(min-width:768px){.compact-basra .game{height:700px}.compact-basra .game .table-stage{height:430px}.compact-basra .game .table-stage .table-round{height:385px;padding-top:80px!important}.compact-basra .game .table-score{top:420px;left:30%;right:30%}.compact-basra .game:has(.table-outcome){height:540px}.table-outcome{top:260px}.compact-basra .start-screen{height:600px}}.compact-basra .game .table-score{top:181px;font-size:10px}.compact-basra .game .table-stage .table-round{padding-top:95px!important}.compact-basra .game .table-stage .playing-card{height:68px;width:44px}.compact-basra .game .table-stage .pip{top:26px;font-size:23px}.compact-basra .game .table-stage .corner{font-size:16px;line-height:15px;top:4px;left:4px}.compact-basra .game .table-stage .card-bottom{font-size:14px;right:4px;bottom:4px}@media(max-width:360px){.compact-basra .game .table-score{top:178px}.compact-basra .game .table-stage .table-round{padding-top:90px!important}}@media(min-width:768px){.compact-basra .game .table-score{top:270px}.compact-basra .game .table-stage .table-round{padding-top:150px!important}.compact-basra .game .table-stage .playing-card{height:100px;width:68px}.compact-basra .game .table-stage .pip{top:39px;font-size:34px}}.compact-basra .game,.compact-basra .start-screen{height:540px!important;padding:0!important;background:#103f30;isolation:isolate;border-radius:0}.compact-basra .game:before,.compact-basra .start-screen:before{content:"";position:absolute;inset:18px 12%;background:radial-gradient(ellipse,#246347,#165338);border:7px solid #80532d;border-top-color:#b68a52;border-bottom-color:#53341e;border-radius:45%/12%;box-shadow:inset 0 0 0 2px #c3a76b,0 6px 15px #041d15;z-index:-1}.compact-basra .game .table-stage{position:static;height:auto!important;margin:0;background:transparent;overflow:visible}.compact-basra .game .character-scene,.compact-basra .start-screen .character-scene{position:absolute!important;width:100%!important;height:270px!important;left:0!important;top:135px!important;object-fit:contain!important;z-index:-2!important;clip-path:polygon(0 0,23% 0,23% 100%,0 100%,0 0,77% 0,100% 0,100% 100%,77% 100%,77% 0)}.compact-basra .game .opponent{position:absolute;top:45px;left:23%;right:23%;height:34px!important;padding:0!important;background:transparent}.compact-basra .game .opponent .card-backs{transform:scale(.55);transform-origin:left center}.compact-basra .game .opponent strong{font-size:13px}.compact-basra .game .table-top{position:absolute;top:82px;left:22%;right:22%;font-size:9px!important}.compact-basra .game .table-score{top:120px!important;left:20%!important;right:20%!important;padding:4px!important}.compact-basra .game .table-score small{font-size:8px}.compact-basra .game .table-score span{font-size:10px}.compact-basra .game .table-score b{font-size:19px}.compact-basra .game .table-stage .table-round{position:absolute;top:173px;left:20%;width:60%!important;right:20%;height:146px!important;min-height:0!important;padding:6px!important;display:flex;align-content:center;align-items:center;justify-content:center;gap:5px;overflow:auto}.compact-basra .game .table-stage .playing-card{width:38px!important;height:58px!important}.compact-basra .game .table-stage .pip{font-size:20px!important;top:22px!important}.compact-basra .game .table-stage .corner{font-size:13px!important;line-height:13px}.compact-basra .game .table-stage .card-bottom{font-size:13px!important}.compact-basra .game .hand-header{position:absolute;top:328px;left:22%;right:22%;padding:0!important;margin:0!important;border:0;font-size:11px}.compact-basra .game .hand-header strong{font-size:12px}.compact-basra .game .round-cards:not(.table-round){position:absolute;top:355px;left:20%;right:20%;padding:0!important;min-height:72px!important;gap:5px}.compact-basra .game .round-cards:not(.table-round) .playing-card{width:43px;height:69px}.compact-basra .game .round-cards:not(.table-round) .corner{font-size:16px;line-height:16px}.compact-basra .game .round-cards:not(.table-round) .pip{font-size:24px;top:25px}.compact-basra .game .round-cards:not(.table-round) .card-bottom{font-size:15px}.compact-basra .game .round-instruction{position:absolute;top:440px;left:22%;right:22%;font-size:9px!important}.compact-basra .game .basra-count{position:absolute;top:478px;left:22%;right:22%;font-size:9px;border:0}.compact-basra .compact-menu{z-index:20}.compact-basra .game:has(.table-outcome):before{bottom:18px}.table-outcome{left:21%;right:21%;top:200px!important;padding:10px 0;background:transparent!important}.compact-basra .table-outcome{max-height:calc(100% - 212px)}.compact-basra .table-outcome .outcome-table{font-size:11px}.compact-basra .table-outcome .outcome-table th,.compact-basra .table-outcome .outcome-table td{padding:0 8px}.table-outcome strong{font-size:17px}.table-outcome .file-button{font-size:17px!important;min-height:46px!important;background:#f2dfad!important;color:#183b2c!important}.compact-basra .start-screen{height:460px!important}.compact-basra .start-screen .start-score{position:absolute;top:110px;font-size:18px!important}.compact-basra .start-screen>.file-button{position:absolute;top:230px;left:23%;right:23%;margin:0!important;font-size:19px!important;background:#f2dfad!important;color:#183b2c!important;min-height:52px}.compact-basra .game:has(.table-outcome) .hand-header,.compact-basra .game:has(.table-outcome) .round-instruction{display:none}.end-details>summary{padding-top:5px}@media(min-width:768px){.compact-basra .game,.compact-basra .start-screen{max-width:650px!important}.compact-basra .game .character-scene{height:380px!important;top:90px!important}.compact-basra .game .table-stage .playing-card{width:50px!important;height:76px!important}.compact-basra .game .round-cards:not(.table-round) .playing-card{width:50px;height:76px}}.compact-basra .game:before,.compact-basra .start-screen:before{inset:15px 13%;border-radius:42%/10%}.compact-basra .game .character-scene,.compact-basra .start-screen .character-scene{z-index:0!important;clip-path:none!important;pointer-events:none}.compact-basra .game .round-instruction:not(.essential){display:none}.compact-basra .game .round-instruction.essential{top:438px;font-size:10px!important}.compact-basra .start-screen .start-score,.compact-basra .start-screen>.file-button{z-index:2}.compact-basra .start-screen .character-scene{top:95px!important}.compact-basra .game .table-stage .table-round{z-index:2}.compact-basra .game .table-score{z-index:3}.compact-basra .game .table-stage .table-round:has(.played-move){top:165px;height:160px!important;overflow:visible;flex-wrap:wrap}.compact-basra .game .table-stage .played-move{max-width:100%;position:relative;inset:auto;display:flex;align-items:center;gap:4px;transform:none;margin:0;flex-basis:100%;justify-content:center}.compact-basra .game .table-stage .played-move small{font-size:10px}.compact-basra .game .table-stage .played-move .playing-card{width:36px!important;height:56px!important}.compact-basra .game .opening-countdown{z-index:10}.compact-basra .game .round-instruction.essential{background:#124331;color:#fff0cb;border-radius:6px;padding:4px;line-height:1.3}.compact-basra .game .table-stage .table-round{flex-wrap:wrap}.compact-basra .game .table-stage .table-round .playing-card{flex-shrink:0}.compact-basra .file-card{width:100%!important;max-width:none!important;flex:1}.compact-basra .game,.compact-basra .start-screen{margin-left:auto!important;margin-right:auto!important}.compact-basra .game .table-stage .table-round:has(.played-move){overflow:auto}.compact-basra .game .table-stage .playing-card{min-width:38px!important}.compact-basra .game .round-cards:not(.table-round) .playing-card{min-width:43px}.compact-basra .start-screen:has(.round-cards) .round-cards{position:absolute;top:160px;left:20%;right:20%;z-index:3;gap:5px}.compact-basra .start-screen:has(.round-cards)>p{position:absolute;top:140px;left:20%;right:20%;z-index:3;font-size:12px}.compact-basra .start-screen:has(.round-cards)>.file-button{top:300px}.compact-basra .start-screen .round-cards .playing-card{width:44px;min-width:44px;height:68px}.previous-reports{background:#124331;color:#ead79d;font-size:12px;padding:0 14px}.previous-reports>summary{min-height:44px}.previous-reports[open]{background:#fffdf5;color:#173c32}.compact-basra .match-controls{display:flex!important;flex-direction:column;align-items:center;width:100%;min-width:0}.compact-basra .match-controls>.game,.compact-basra .match-controls>.start-screen{width:100%!important;align-self:center;margin-inline:auto!important}.compact-basra .match-controls>.end-details,.compact-basra .match-controls>.previous-reports{width:100%;max-width:650px}.compact-basra .round-error{position:absolute;top:437px;left:20%;right:20%;font-size:11px;background:#fff1dd;color:#942d32;padding:4px;z-index:8}.compact-basra .game .table-stage .table-round{left:8%;right:8%;width:84%!important;gap:6px}.compact-basra .game .round-cards:not(.table-round){left:8%;right:8%;gap:6px}.compact-basra .game .table-stage .playing-card,.compact-basra .game .table-stage .played-move .playing-card,.compact-basra .game .round-cards:not(.table-round) .playing-card,.compact-basra .start-screen .round-cards .playing-card{width:60px!important;min-width:60px!important;height:92px!important;border-radius:7px}.compact-basra .game .playing-card .corner,.compact-basra .start-screen .playing-card .corner{font-size:24px!important;line-height:24px!important;top:4px;left:5px}.compact-basra .game .playing-card .corner small,.compact-basra .start-screen .playing-card .corner small{font-size:17px!important;line-height:17px!important}.compact-basra .game .playing-card .pip,.compact-basra .start-screen .playing-card .pip{font-size:31px!important;line-height:32px!important;top:39px!important}.compact-basra .game .playing-card .card-bottom,.compact-basra .start-screen .playing-card .card-bottom{font-size:22px!important;bottom:3px;right:5px}@media(min-width:768px){.compact-basra .game .table-stage .playing-card,.compact-basra .game .table-stage .played-move .playing-card,.compact-basra .game .round-cards:not(.table-round) .playing-card{width:82px!important;min-width:82px!important;height:122px!important}.compact-basra .game .playing-card .corner{font-size:30px!important;line-height:30px!important}.compact-basra .game .playing-card .corner small{font-size:21px!important;line-height:21px!important}.compact-basra .game .playing-card .pip{font-size:40px!important;line-height:40px!important;top:52px!important}.compact-basra .game .playing-card .card-bottom{font-size:27px!important}}.compact-basra .game:before,.compact-basra .start-screen:before{left:5%;right:5%}.compact-basra .game .table-stage .table-round{gap:4px}.compact-basra .game .table-stage .played-move{padding:2px;gap:2px}.compact-basra .game{height:650px!important}.compact-basra .game .table-stage .table-round,.compact-basra .game .table-stage .table-round:has(.played-move){top:185px;height:238px!important;align-content:center}.compact-basra .game .hand-header{top:430px}.compact-basra .game .round-cards:not(.table-round){top:460px}.compact-basra .game .round-instruction.essential,.compact-basra .round-error{top:563px}.compact-basra .game .basra-count{top:610px}.compact-basra .game .character-scene{top:190px!important}.compact-basra .game:has(.table-outcome){height:460px!important}.compact-basra .game .table-stage .table-round{align-content:safe center}.compact-basra .game .basra-praise{top:10px;transform:translate(-50%)}@media(min-width:768px){.compact-basra .game{height:800px!important}.compact-basra .game .table-stage .table-round,.compact-basra .game .table-stage .table-round:has(.played-move){top:180px;height:300px!important}.compact-basra .game .hand-header{top:495px}.compact-basra .game .round-cards:not(.table-round){top:525px}.compact-basra .game .round-instruction.essential,.compact-basra .round-error{top:665px}.compact-basra .game .basra-count{top:745px}}.compact-basra .game .last-deal-notice{position:absolute;top:170px;left:50%;transform:translate(-50%);z-index:8;border:1px solid #ead79d;border-radius:999px;background:#f2dfad;color:#173c32;font:700 17px/1.2 Arial,sans-serif;padding:7px 18px;white-space:nowrap;pointer-events:none}.table-score span{flex-wrap:wrap;justify-content:center}.table-score .mini-count{flex-basis:100%;font-size:9px;color:#d8c98f;line-height:1.2;text-align:center}.table-outcome .outcome-table{border-collapse:collapse;width:100%;font-size:12px;color:#e6efe5;background:#0e392c;border:1px solid #cbb37466;border-radius:8px}.table-outcome .outcome-table th,.table-outcome .outcome-table td{padding:1px 12px;text-align:center;border-bottom:1px solid #cbb37433}.table-outcome .outcome-table th{color:#ead79d;font-size:12px}.table-outcome .outcome-table td:first-child{text-align:right}.table-outcome .outcome-table tr:last-child td{border-bottom:0;font-weight:700;color:#ead79d}@media(max-width:700px){.table-outcome .outcome-table{font-size:11px}.table-outcome .outcome-table th,.table-outcome .outcome-table td{padding:1px 10px}}

.compact-basra .game:has(.last-deal-notice) .basra-praise{top:24px}
