@charset "UTF-8";
:root{color-scheme:dark;--cream:#f2edda;--muted:#95afa3;--teal:#1b5148;--dark:#123b35;--border:rgba(197,218,190,.15);--coral:#e77960;--blue:#85b9d2;--gold:#e8be70;--green:#5e9d80;--mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;--sans:"Avenir Next","PingFang SC","Microsoft YaHei",system-ui,sans-serif}
*{box-sizing:border-box}body{margin:0;background:#123a34;color:var(--cream);font-family:var(--sans);font-size:13px;min-width:320px}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:20;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.6' filter='url(%23n)'/%3E%3C/svg%3E")}
button,input{font:inherit}button{cursor:pointer}button,a,input{-webkit-tap-highlight-color:transparent}button{color:inherit}button:disabled{cursor:not-allowed}button svg{width:18px;height:18px;flex-shrink:0}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--gold);outline-offset:4px}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}button{border:0}svg{display:block}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.app-shell{max-width:1660px;min-height:100svh;margin:auto;padding:0 35px;background:radial-gradient(ellipse at 66% 40%,#24584c50,transparent 70%)}.topbar{height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);gap:20px}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:43px;height:52px;transform:rotate(-8deg);border-radius:5px;box-shadow:3px 4px 0 #072920;overflow:hidden}.brand-mark .card-art{width:100%;height:100%;object-fit:cover}.brand-word{display:block;font-family:var(--mono);font-size:33px;font-weight:900;letter-spacing:-2px;line-height:1.05;transform:rotate(-2deg);text-shadow:2px 3px #092e29}.brand-dot{color:var(--coral);font-size:21px;display:inline-block;vertical-align:top;margin:1px 0 0 5px}.brand-sub{display:block;font-size:10px;font-weight:600;margin-top:8px;letter-spacing:3px;color:#c4ccaf}.brand-sub span{font-family:var(--mono);font-weight:400;letter-spacing:1.8px;font-size:8px;margin-left:6px;color:var(--muted)}.topbar-middle{display:flex;gap:22px;margin-left:auto;margin-right:20px;align-items:center}.deck-tag{border:1px solid var(--border);background:#1a4a40;display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:5px;font-size:11px;color:#d2d9c2}.deck-tag i{width:12px;height:16px;border-radius:2px;background:#c86956;box-shadow:2px 0 #e8ac86;border:1px solid #e8aa83;transform:rotate(-9deg)}.autosave{font-size:10px;color:#8ea993;display:flex;align-items:center;gap:6px}.autosave i{width:5px;height:5px;background:#8eb48d;border-radius:50%;box-shadow:0 0 5px #91b86b60}.topbar-actions{display:flex;align-items:center;gap:10px}.icon-button{width:35px;height:35px;display:flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:5px;color:#a8bdac;background:transparent}.icon-button:hover{background:#ffffff0b;border-color:var(--border);color:var(--cream)}.new-run-button{display:flex;align-items:center;gap:8px;border:1px solid #97b19d33;background:#19483e;border-radius:5px;padding:9px 13px;font-size:11px}.new-run-button svg{width:15px;height:15px}.new-run-button:hover{background:#2b594b}
.game-grid{display:grid;grid-template-columns:249px minmax(0,1fr);gap:27px;padding-top:25px;padding-bottom:22px}.sidebar{background:linear-gradient(140deg,#294f4150,#0b302b60);border:1px solid #b8cfb52b;border-radius:9px;padding:20px 17px 11px;box-shadow:0 5px 0 #092e2780;align-self:start;position:relative}.blind-heading{display:flex;gap:11px;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--border)}.eyebrow{font-size:9px;font-family:var(--mono);letter-spacing:1.6px;color:#a5b99d}.blind-heading h1{font-size:21px;letter-spacing:1px;font-weight:750;margin-top:4px}.blind-badge{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;flex-shrink:0;border-radius:50%;background:repeating-conic-gradient(#d5ccaa 0deg 12deg,transparent 12deg 24deg),#a9b1a1;box-shadow:0 3px 0 #071f2390,inset 0 0 0 2px #b4bea4}.blind-badge>span{display:flex;align-items:center;justify-content:center;background:#718c87;width:37px;height:37px;border-radius:50%;border:3px solid #dcddbf;color:#e9e6c9;font-family:Georgia,serif;font-size:28px;text-shadow:1px 2px #445f59}.blind-1{background:repeating-conic-gradient(#deb966 0deg 12deg,transparent 12deg 24deg),#aa854f;box-shadow:0 3px 0 #23200880,inset 0 0 0 2px #ccab6a}.blind-1>span{background:#b48e43;border-color:#f2d28c;color:#fff0bd;text-shadow:1px 2px #937234}.blind-2{background:repeating-conic-gradient(#dc9c82 0deg 12deg,transparent 12deg 24deg),#b65e4c;box-shadow:0 3px 0 #30191180,inset 0 0 0 2px #d58e70}.blind-2>span{background:#a04b42;border-color:#e9b290;color:#f1d6b6;text-shadow:1px 2px #793f34}.blind-badge.large{width:80px;height:80px;margin:18px auto 15px}.blind-badge.large>span{width:64px;height:64px;font-size:43px;border-width:4px}.target-block{text-align:center;padding:17px 0 16px;display:flex;flex-direction:column;gap:5px}.target-block>span:first-child{color:#becbb5;font-size:11px;letter-spacing:2px}.target-block>strong{font-size:40px;line-height:1.15;font-family:var(--mono);letter-spacing:-1.8px;color:#efc475;text-shadow:0 3px #0c3029}.reward-label{font-size:10px;color:#8ca88f}.reward-label b{font-family:var(--mono);font-size:13px;letter-spacing:1px;color:#c4d6a9;margin-left:5px}.boss-rule{padding:8px 9px;background:#ba77621a;border:1px solid #df9b7240;border-radius:4px;color:#dfb79b;font-size:10px;line-height:1.8;margin-bottom:10px}.score-block{padding:13px;background:#0d302cc9;border:1px solid #123d33;border-radius:5px;box-shadow:inset 0 2px 2px #092a2540}.section-caption{font-size:11px;letter-spacing:.5px;font-weight:600}.section-caption>span{float:right;font-size:8px;font-family:var(--mono);color:#628679;letter-spacing:1px;margin-top:3px}.round-score{text-align:center;font:700 34px/1.6 var(--mono);letter-spacing:-1px}.progress-track{height:4px;border-radius:2px;background:#294e40;overflow:hidden}.progress-track>div{height:100%;background:var(--gold);border-radius:2px;transition:width .5s}.hand-score-block{margin-top:15px}.hand-type{display:flex;align-items:baseline;justify-content:space-between;margin:0 3px 10px}.hand-type>span{font-size:19px;font-weight:700}.hand-type small{color:#a4b7a0;font-size:10px;font-family:var(--mono)}.calculation{display:grid;grid-template-columns:1fr 20px 1fr;align-items:center}.chips-box,.mult-box{border-radius:5px;padding:7px 10px 6px;min-width:0;display:flex;flex-direction:column;gap:3px;box-shadow:0 3px 0 #0b3128}.chips-box{background:#518dac;border:1px solid #a4c7d264}.mult-box{background:#c15f52;border:1px solid #e6a88c64}.chips-box>span,.mult-box>span{font-size:9px;color:#eff3e6d0}.chips-box b,.mult-box b{font:700 25px/1.1 var(--mono);text-align:right;color:#faf1da;letter-spacing:-1px;overflow-wrap:anywhere}.times{text-align:center;color:#a7b9a6;font-size:19px}.estimated{display:flex;align-items:center;justify-content:space-between;color:#86a58e;font-size:9px;height:29px;padding:0 2px}.estimated b{color:#d4d8b9;font:600 14px var(--mono)}.stat-grid{border-top:1px solid var(--border);display:grid;grid-template-columns:1fr 1fr;margin-top:6px}.stat{padding:13px 6px 11px;display:flex;flex-direction:column;gap:4px;border-bottom:1px solid var(--border)}.stat:nth-child(2),.stat:nth-child(5){border-left:1px solid var(--border);padding-left:18px}.stat>span{font-size:10px;color:#9cb096}.stat>strong{font:700 26px var(--mono);line-height:1.1;letter-spacing:-1px}.stat small{font:400 11px var(--sans);color:#9fb39c;letter-spacing:0}.stat>strong>small:first-of-type{margin-left:4px}.money-stat{grid-column:1/-1;flex-direction:row;justify-content:space-between;align-items:center;padding-top:14px;padding-bottom:14px}.money-stat strong{font-size:28px}.blue-text{color:var(--blue)!important}.red-text{color:var(--coral)!important}.gold-text{color:var(--gold)!important}.sidebar-buttons{display:flex;gap:7px;margin-top:16px}.subtle-button{background:#2a57475e;border:1px solid #8ca88c38;border-radius:4px;display:flex;align-items:center;justify-content:center;gap:5px;font-size:10px;flex:1;padding:9px 2px;color:#c5d1b7}.subtle-button svg{width:13px;height:13px}.subtle-button b{font-family:var(--mono);font-size:9px;color:#91ac94}.subtle-button:hover{background:#416a5250}.seed-button{display:flex;justify-content:center;align-items:center;gap:9px;width:100%;background:transparent;color:#678f78;font-size:8px;padding:13px 0 0}.seed-button span:first-child{font-family:var(--mono);letter-spacing:1px;color:#93ac90}.seed-button span:last-child{font-size:13px}.table{min-width:0;display:flex;flex-direction:column}.inventory{display:flex;gap:28px;padding:2px 4px 22px}.joker-inventory{flex:1;min-width:0}.inventory-heading{display:flex;justify-content:space-between;align-items:center;height:23px;margin-bottom:12px;color:#c6d0b7;font-size:11px}.inventory-heading b{font:600 11px var(--mono);color:#d7ddbd;margin-left:8px}.inventory-heading i{font-weight:400;color:#70947e;font-style:normal;margin-left:3px}.inventory-heading small{font-size:9px;color:#6e9780;letter-spacing:1px}.joker-rack{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;max-width:640px}.empty-joker{height:133px;border:1px dashed #86aa8a40;box-shadow:inset 0 0 20px #092f270c;border-radius:7px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:17px;background:#193f330f}.empty-joker>span{color:#86a68735;font-size:31px}.empty-joker>small{font:8px var(--mono);color:#6c8c733c;letter-spacing:1.2px}.empty-joker:first-child>small{font:9px var(--sans);letter-spacing:0;color:#71947c82}.consumable-inventory{width:151px;flex-shrink:0;border-left:1px solid var(--border);padding-left:23px}.consumable-rack{display:grid;grid-template-columns:1fr 1fr;gap:9px}.empty-consumable{border:1px dashed #87a48b35;border-radius:5px;height:94px;margin-top:20px;display:flex;justify-content:center;align-items:center;background:#193f330f}.empty-consumable>span{font:28px Georgia;color:#94aa7e40}.joker-card{min-width:0;position:relative;height:133px;border-radius:6px;border:2px solid #e4dbc1;background:var(--jcolor);padding:5px 5px 0;box-shadow:0 4px 0 #092e2760,1px 1px 0 #e4dbc1;transition:transform .18s ease;overflow:hidden;color:#294139}.joker-card:hover{transform:translateY(-7px) rotate(-2deg);box-shadow:0 10px 10px #092e2740;z-index:2}.joker-card-label{display:flex;align-items:center;justify-content:space-between;font:700 8px var(--mono);letter-spacing:1px;padding:0 2px;margin-bottom:2px}.joker-card-label>span{font-size:10px}.joker-card .card-art{width:100%;height:92px}.joker-card-name{display:block;background:#eee4c7;border-top:1px solid #34494440;border-radius:0 0 3px 3px;margin:2px -5px 0;padding:4px 1px;font-size:9px;font-weight:700;line-height:13px;white-space:nowrap}.consumable-card{padding:3px;background:#ebe0be;height:99px;margin-top:15px;border-radius:4px;box-shadow:0 4px #092e2740;color:#344944;transition:transform .2s;position:relative}.consumable-card:hover{transform:translateY(-5px)}.consumable-card .card-art{width:100%;height:75px}.consumable-card>span{font-size:9px;line-height:16px}
.arena{flex:1;min-height:298px;border:1px solid #a1bd9227;border-radius:10px;background:radial-gradient(ellipse at center,#35684e45 0%,#1b4b3b10 65%,#143c3020 100%);box-shadow:inset 0 0 90px #0b34271a;position:relative;overflow:hidden}.arena-topline{display:flex;justify-content:space-between;align-items:center;gap:14px;position:absolute;top:0;left:0;width:100%;padding:14px 18px;font-size:9px;color:#729d81;letter-spacing:.6px}.arena-topline>span:first-child{font-family:var(--mono);letter-spacing:1.9px;font-size:8px}.arena-topline i{font-style:normal;margin:0 7px;color:#507c62}.arena-topline .boss-hint{max-width:70%;text-align:right;color:#c7a889;font-size:9px;letter-spacing:0}.arena-content{min-height:297px;height:100%;display:flex;align-items:center;justify-content:center;padding:48px 25px 26px}.table-watermark{text-align:center;user-select:none;opacity:.73}.watermark-suits{font-family:Georgia;font-size:33px;letter-spacing:13px;color:#b0be9773;margin-left:10px}.watermark-suits span{color:#b09b7973}.table-watermark h2{font-size:27px;letter-spacing:4px;margin:13px 0;color:#c3caa5;font-weight:500}.table-watermark p{font-size:10px;letter-spacing:1px;color:#94aa8d}.watermark-line{display:flex;gap:13px;align-items:center;justify-content:center;font:8px var(--mono);letter-spacing:2px;color:#7e9e7e;margin-top:24px}.watermark-line span{height:1px;width:29px;background:#6f947046}.hand-panel{padding:18px 4px 0}.hand-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.hand-toolbar>div:first-child{display:flex;align-items:center;gap:13px}.hand-toolbar .section-caption{color:#c4d0b5;font-size:11px;letter-spacing:1px}.hand-toolbar>div>b{font:700 13px var(--mono);color:#dee0be}.hand-toolbar>div>b>span{font:400 10px var(--mono);color:#769d7f}.sort-control{display:flex;gap:3px;align-items:center}.sort-control>span{font-size:9px;color:#82a186;margin-right:9px}.sort-control button{background:transparent;color:#9fb89a;border:1px solid #82a18635;border-radius:3px;font-size:9px;padding:5px 9px}.sort-control button.active{color:#e3dfb8;background:#617c4666;border-color:#b3b1846b}.sort-control button:hover{background:#7d927438}.hand-and-deck{display:flex;gap:25px;justify-content:space-between;align-items:center;min-height:154px}.hand-cards{display:flex;min-width:0;flex:1;justify-content:center;gap:7px;padding:0 0 5px;align-items:center}.playing-card{position:relative;color:#2b4141;background:linear-gradient(110deg,#fff8e8,#f3ecd9);border:1px solid #e0dac6;border-radius:7px;flex-shrink:0;width:clamp(60px,7vw,110px);height:clamp(100px,10.5vw,158px);box-shadow:0 4px 0 #d5d0ba,0 7px 7px #09291e50;padding:0;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;transform:translateY(0)}button.playing-card:hover{transform:translateY(-9px) rotate(-1deg);z-index:2;box-shadow:0 4px 0 #d5d0ba,0 15px 11px #09291e50}button.playing-card.selected{transform:translateY(-21px);outline:2px solid #edbf6e;outline-offset:3px;box-shadow:0 4px 0 #d3bc83,0 20px 20px #09291e50;background:linear-gradient(110deg,#fffbea,#f3e4bc)}button.playing-card.selected:hover{transform:translateY(-25px)}.playing-card.red{color:#bb5148}.card-corner{display:flex;flex-direction:column;align-items:center;line-height:.9;position:absolute;z-index:1}.card-corner b{font-family:Georgia,serif;font-weight:700;font-size:21px;letter-spacing:-1px}.card-corner>span{font-size:18px;margin-top:4px}.card-corner.top{left:7px;top:8px}.card-corner.bottom{right:7px;bottom:8px;transform:rotate(180deg)}.pips{position:absolute;inset:21% 24%;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(5,1fr);align-items:center;justify-items:center;font-family:Georgia,serif;font-size:clamp(16px,1.65vw,25px);line-height:.75;column-gap:2px}.pips .flipped{transform:rotate(180deg)}.ace-pip{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:Georgia,serif;font-size:clamp(40px,4.3vw,60px)}.royal-art{position:absolute;inset:20% 19%;border:1px solid currentColor;overflow:hidden;border-radius:1px}.royal-art svg{width:100%;height:100%}.enhancement{position:absolute;top:5px;left:50%;transform:translateX(-50%);font:700 8px var(--mono);color:#f7edce;background:#bd6e58;border-radius:2px;padding:3px 2px;white-space:nowrap}.playing-card.bonus{background:linear-gradient(120deg,#e9f0e4,#d0e0df);border-color:#a9c4cb}.playing-card.mult{background:linear-gradient(120deg,#fff2e1,#f1d8cc);border-color:#dab6a8}.playing-card.bonus .enhancement{background:#54869a}.playing-card.dim{opacity:.3;filter:grayscale(.4)}.playing-card.debuffed{filter:grayscale(1);background:repeating-linear-gradient(45deg,#d0d0bc 0 4px,#e1dfce 4px 8px)}.debuff-mark{font-size:60px;position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:.5;color:#5e5e54;pointer-events:none}.draw-deck{padding:0;background:none;display:flex;flex-direction:column;align-items:center;gap:12px;width:63px;flex-shrink:0;margin-left:2px;transform:rotate(5deg)}.deck-back{display:flex;align-items:center;justify-content:center;width:60px;height:85px;border:3px solid #ddcdb0;background:repeating-linear-gradient(45deg,#bd6856 0 2px,#aa584a 2px 4px);box-shadow:2px 2px 0 #b6b99a,4px 4px 0 #ddcdb0,6px 6px 0 #b6b99a,8px 8px 0 #ddcdb0;border-radius:4px}.deck-back i{font-style:normal;font-size:31px;color:#ddbd96;display:flex;align-items:center;justify-content:center;width:41px;height:65px;border:1px solid #dfb38b}.draw-deck>span:last-child{font:9px var(--mono);color:#82a082;margin-left:10px}.draw-deck>span:last-child>b{font-size:14px;color:#d5d7b6}.draw-deck:hover{transform:rotate(0) translateY(-3px)}.hand-actions{display:flex;justify-content:space-between;align-items:center;margin-top:22px;min-height:46px;gap:15px}.action-buttons{display:flex;gap:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:39px;border-radius:5px;padding:10px 19px;font-size:12px;font-weight:650;letter-spacing:.5px;box-shadow:0 4px 0 #092c2570;transition:transform .15s,filter .15s;border:1px solid #ffffff15}.button:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-2px)}.button:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px #092c2580}.button:disabled{opacity:.35;box-shadow:none}.blue-button{background:#619ab4;color:#f9f0d8;border-bottom-color:#32627d}.coral-button{background:#d2755d;color:#fff0d8;border-bottom-color:#924b40}.green-button{background:#608e6e;color:#fff3d8;border-bottom-color:#41694b}.gold-button{background:#d2ad67;color:#2f4133;border-bottom-color:#8f7846}.muted-button{background:#365f4b;color:#d9ddbc;border:1px solid #9ab48648}.button kbd{font:9px var(--mono);border:1px solid #f4e6c040;border-radius:3px;min-width:18px;padding:2px;color:#f2ecc8aa}.action-buttons>.button{min-width:113px}.selection-hint{display:flex;align-items:center;gap:10px;color:#7c9f81;font-size:10px;text-align:right}.selection-hint b{font-weight:600;color:#e0d6ad;font-size:12px}.selection-hint span{color:#7e9e80}.clear-selection{border-radius:50%;width:20px;height:20px;background:#96b18c1c;color:#a9bc93;padding:0;font-size:15px}.inactive-hand{opacity:.45}.played-hand{text-align:center;display:flex;flex-direction:column;align-items:center}.played-label{font-size:13px;letter-spacing:1px;color:#d0d1ac;margin-bottom:15px}.played-label>span{font:9px var(--mono);color:#85a285;margin-left:9px}.played-cards{display:flex;gap:12px}.played-cards .playing-card{width:73px;height:104px;transform:rotate(calc((var(--card-index) - 2)*2deg))}.played-cards .pips{font-size:17px}.played-cards .card-corner b{font-size:16px}.played-cards .card-corner>span{font-size:13px;margin-top:3px}.played-cards .card-corner.top{top:5px;left:5px}.played-cards .card-corner.bottom{bottom:5px;right:5px}.played-cards .ace-pip{font-size:39px}.last-result{background:none;display:flex;align-items:center;gap:16px;margin-top:16px}.last-result>span{font:700 24px var(--mono);color:#e7c578;letter-spacing:-1px}.last-result small{font:10px var(--mono);display:flex;align-items:center;gap:6px;color:#8eab8b}.last-result svg{width:12px;height:12px}.last-result:hover small{color:#c9d0b0}.score-pop{animation:pop .5s ease}.played-card{animation:deal .3s both;animation-delay:calc(var(--card-index)*.05s)}@keyframes pop{0%{transform:scale(.9)}45%{transform:scale(1.12);color:#f6dc94}100%{transform:scale(1)}}@keyframes deal{from{opacity:0;translate:0 30px}to{opacity:1;translate:0 0}}
.blind-selection{padding:51px 24px 25px}.section-intro{text-align:center}.section-intro>.eyebrow{letter-spacing:3px;font-size:10px;color:#9bae8d}.section-intro h2{font-size:24px;letter-spacing:1px;font-weight:600;margin-top:10px;color:#ede7cc}.section-intro p{margin-top:9px;font-size:10px;color:#8eab8e;line-height:1.8;letter-spacing:.4px}.blind-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px}.blind-choice{background:#123e3238;border:1px solid #8dae893d;border-radius:8px;display:flex;flex-direction:column;text-align:center;padding:12px 15px 8px;align-items:center;min-width:0}.blind-choice-top{display:flex;width:100%;justify-content:space-between;align-items:center;color:#789a7c;font-size:9px;letter-spacing:1px}.blind-choice-top>span{font-family:var(--mono);font-size:8px;letter-spacing:1.5px}.blind-choice.current{background:linear-gradient(140deg,#416c4c60,#345b3e25);border-color:#b5b28290;box-shadow:0 0 0 3px #bcc28b09,0 4px 15px #0e32252b}.blind-choice.current .blind-choice-top{color:#d8caa3}.blind-choice h3{font-weight:650;font-size:18px;letter-spacing:1px}.blind-target{font:700 29px var(--mono);margin-top:9px;color:#ddd4ae;letter-spacing:-1px}.blind-target small{font:9px var(--sans);color:#819b7d;letter-spacing:1px;margin-left:6px}.blind-choice p{height:39px;display:flex;align-items:center;justify-content:center;line-height:1.7;color:#839e81;font-size:9px;margin:7px 0 11px}.blind-choice .button{width:100%;font-size:11px;gap:6px;padding:9px 5px;min-height:36px}.blind-choice .button svg{width:14px;height:14px}.skip-button,.no-skip{font-size:9px;color:#9baa86;background:none;min-height:32px;padding:9px 0}.skip-button:hover{color:#efce83}.no-skip{color:#7b9477}.blind-locked{min-height:68px;display:flex;align-items:center;gap:6px;color:#577e63;font-size:10px}.blind-locked svg{width:13px;height:13px}.blind-choice.completed{opacity:.45}.starter-tip{margin-top:21px;display:flex;align-items:center;gap:8px;justify-content:center;color:#d2b67a;font-size:14px}.starter-tip>span{color:#789778;font-size:9px;line-height:1.8}.starter-tip b{color:#bdc39b;font-weight:500}.table-bottom-note{flex:1;min-height:110px;display:flex;align-items:center;justify-content:center;gap:15px;color:#668c70}.table-bottom-note>span{font:20px Georgia;letter-spacing:6px;color:#6b8c6d}.table-bottom-note i{font-style:normal;color:#9a95705c}.table-bottom-note p{font-size:10px;letter-spacing:1px;color:#759475}.footer{border-top:1px solid var(--border);min-height:55px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:9px;color:#729176}.footer>span:first-child{letter-spacing:1px}.footer>span:first-child>b{color:#abac79;margin-right:6px;font-size:13px}.footer>span:last-child{font:8px var(--mono);letter-spacing:.7px;color:#597f64}.footer i{font-style:normal;color:#a49568;margin:0 7px}.keyboard-hints{display:flex;align-items:center;gap:6px;font-size:8px;color:#648b6d}.keyboard-hints kbd{border:1px solid #7fa28140;border-radius:2px;font:8px var(--mono);padding:2px 4px;margin-left:5px;color:#a2b18b}
.shop-arena{min-height:475px}.shop-content{padding:48px 24px 20px}.shop-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.shop-heading h2{font-size:21px;letter-spacing:.5px;margin-top:7px;font-weight:600}.shop-heading .eyebrow{font-family:var(--sans);font-size:9px;letter-spacing:2px}.next-round{font-size:11px;white-space:nowrap;padding:10px 13px}.next-round svg{width:15px;height:15px}.shop-layout{display:grid;grid-template-columns:minmax(0,1fr) 160px;gap:20px}.shop-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.shop-item{position:relative;display:flex;flex-direction:column;align-items:center;min-width:0;text-align:center;border:1px solid #a5b38b20;border-radius:6px;padding:13px 9px 11px;background:#143b2e30}.shop-art{height:127px;width:94px;padding:3px;background:#e7dbb9;border-radius:5px;box-shadow:1px 4px #092c2540;position:relative;transform:rotate(-3deg);margin-bottom:13px;transition:transform .2s}.shop-item:nth-child(2) .shop-art{transform:rotate(3deg)}.shop-item:hover .shop-art{transform:rotate(0) translateY(-4px)}.shop-art .card-art{width:100%;height:100%}.rarity{font-size:8px;color:#b0bd99;border:1px solid #a5b38b27;background:#7e98771a;padding:3px 6px;border-radius:3px;letter-spacing:.5px}.shop-item h3{font-size:13px;margin-top:7px;font-weight:650;letter-spacing:.5px}.shop-item p{font-size:9px;color:#92ab8c;margin:7px 0 12px;line-height:1.7;min-height:32px;flex:1}.shop-item .buy-button{font-size:10px;min-height:33px;padding:7px 10px;width:100%;justify-content:space-between;letter-spacing:0}.shop-item .buy-button b{font:700 14px var(--mono)}.sold .shop-art{filter:grayscale(.6);opacity:.5}.sold-stamp{background:#efe4bf;border:2px solid #365c46;color:#365c46;position:absolute;font-weight:700;font-size:13px;top:42%;left:5%;width:90%;padding:8px 3px;transform:rotate(-12deg)}.sold h3,.sold p,.sold .rarity{opacity:.45}.shop-extras{display:flex;flex-direction:column;gap:12px}.voucher-offer{border:1px dashed #c5b37352;border-radius:6px;background:#8b7d3f0b;display:flex;flex-direction:column;text-align:center;align-items:center;padding:12px 10px}.voucher-offer .eyebrow{font-size:7px;color:#ab9f72;letter-spacing:2px}.voucher-graphic{width:61px;height:53px;border:1px solid #a9905666;background:#b9985322;color:#cfb579;border-radius:5px;outline:1px dashed #a9905655;outline-offset:-5px;font:33px Georgia;display:flex;align-items:center;justify-content:center;margin:13px 0 11px;transform:rotate(-7deg)}.voucher-offer h3{font-size:11px;font-weight:600}.voucher-offer p{font-size:9px;line-height:1.7;color:#90a184;margin:7px 0 12px;min-height:30px}.voucher-offer .button{width:100%;font-size:9px;min-height:31px;padding:7px}.booster-offer{display:flex;align-items:center;gap:9px;padding:12px 8px;background:#ae947318;border:1px solid #c7ad7837;border-radius:5px;min-height:80px}.booster-offer:disabled{opacity:.4}.mini-pack{display:flex;width:28px;height:43px;align-items:center;justify-content:center;background:repeating-linear-gradient(45deg,#ba9662 0 2px,#9d8054 2px 4px);color:#e7d0a5;border:1px solid #d0b17b;border-radius:2px;transform:rotate(-8deg);font-size:20px;flex-shrink:0}.booster-offer>span:nth-child(2){display:flex;flex-direction:column;align-items:start;gap:6px}.booster-offer b{font-size:10px;font-weight:600}.booster-offer small{font-size:8px;color:#a9b08c}.booster-offer svg{width:11px;height:11px;color:#b7ab81;margin-left:auto}.shop-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:20px;border-top:1px solid var(--border);padding-top:17px}.shop-footer .button{font-size:10px;min-height:34px;padding:8px 12px;gap:7px;white-space:nowrap}.shop-footer .button svg{width:13px;height:13px}.shop-footer .button b{font-family:var(--mono);margin-left:4px}.shop-footer>span{font-size:8px;color:#7e9a78;text-align:right;line-height:1.8}.pack-selection{padding:55px 25px 22px;text-align:center}.pack-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:660px;margin:25px auto 15px}.pack-cards .shop-item{padding:20px 15px 15px}.pack-cards .shop-art{width:110px;height:145px}.pack-cards .button{font-size:10px;min-height:34px;padding:8px 10px;gap:6px}.pack-cards .button svg{width:13px;height:13px}.text-button{background:none;color:#a6b499;font-size:10px;padding:12px 5px}.text-button:hover{color:var(--gold)}
.result-panel{width:min(390px,100%);padding:12px 10px 5px;text-align:center}.result-eyebrow{font:9px var(--mono);letter-spacing:2.6px;color:#baa576}.result-panel h2{font-size:25px;font-weight:600;margin:13px 0 11px;letter-spacing:1px}.result-panel h2>span{font-size:22px;color:var(--gold);margin-left:8px}.result-panel>p{font-size:10px;color:#9baf8d;line-height:1.8}.result-panel .result-score{font:700 37px var(--mono);color:#e4c67e;letter-spacing:-1px;margin:19px 0}.result-score small{font-size:13px;color:#819d80;font-weight:400}.payout-lines{padding:13px 0 15px;border-top:1px solid var(--border);margin-bottom:16px}.payout-lines>span{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#b4c0a0;padding:6px 2px}.payout-lines b{font-family:var(--mono);color:#ebcc8a}.payout-lines small{font-size:8px;color:#77957a;margin-right:auto;padding-left:8px}.wide-button{width:100%}.run-summary{margin:21px 0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.run-summary>span{font-size:9px;color:#9bb190;display:flex;flex-direction:column;gap:10px}.run-summary b{font:600 18px var(--mono);color:#e6c781;letter-spacing:-.7px}.win-panel{padding-bottom:15px}
.modal-overlay{position:fixed;inset:0;background:#031f1bd9;backdrop-filter:blur(7px);z-index:100;display:flex;align-items:center;justify-content:center;padding:25px;overflow:auto}.modal{border:1px solid #8ca88a66;border-radius:12px;background:radial-gradient(ellipse at 30% 10%,#345e46,#1a4234 90%);box-shadow:0 15px 80px #001a1399,0 6px 0 #07281e;max-width:480px;width:100%;padding:20px 27px 26px;max-height:90svh;overflow:auto;animation:modal-in .2s ease}.modal.wide-modal{max-width:850px}.modal-header{display:flex;justify-content:space-between;align-items:center}.modal-header .eyebrow{font-size:8px;letter-spacing:2px;color:#a0ad84}.modal-header .eyebrow i{color:#d4b57b;font-style:normal;font-size:14px;margin-left:6px}.modal-header .icon-button{height:29px;width:29px}.modal>h2{font-size:23px;letter-spacing:1px;font-weight:600;margin:14px 0 18px}.modal-subtitle{font-size:11px;color:#a7b69a;line-height:1.9;margin-bottom:20px}.help-lead{font-size:12px;color:#bac6a9;line-height:1.9;margin-bottom:22px}.help-step{display:flex;gap:15px;margin-bottom:20px}.help-step>b{font:11px var(--mono);color:#d0ad71;border:1px solid #b4b17b3b;border-radius:4px;width:29px;height:28px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#b4b17b0c}.help-step h3{font-size:12px;margin:3px 0 7px;font-weight:600}.help-step p{font-size:10px;line-height:1.95;color:#98b090}.help-note{padding:12px 13px;border:1px solid #a1b08a25;border-radius:4px;font-size:10px;line-height:1.9;color:#9fb191;background:#a1b08a07;margin:15px 0}.hands-table-head,.hand-table-row{display:grid;grid-template-columns:1.1fr .55fr .55fr .55fr 1.7fr;align-items:center;gap:12px;padding:13px 12px;border-bottom:1px solid #92ac8720}.hands-table-head{font-size:9px;color:#7f9c7c;padding-bottom:10px}.hand-table-row:nth-child(odd){background:#9eae8309}.hand-table-row>span{font:600 15px var(--mono);color:#e7dcbb}.hand-table-row>span:first-child{display:flex;flex-direction:column;gap:4px;font-family:var(--sans)}.hand-table-row b{font-size:12px;font-weight:500}.hand-table-row small{font-size:8px;color:#7d9d7c;font-weight:400}.hand-table-row>span.level-badge{font-size:10px;color:#c8be91;font-weight:400}.hand-table-row>span.hand-example{font-size:11px;font-family:Georgia,serif;letter-spacing:1px;color:#b1bd9c;font-weight:400}.seed-label{display:flex;flex-direction:column;gap:7px;font-size:11px;color:#d0d7b6;margin-bottom:11px}.seed-label small{font-size:9px;color:#87a582}.seed-input{background:#0f332abf;color:#efe5bb;border:1px solid #97ac7e4a;border-radius:5px;padding:12px 13px;width:100%;font:13px var(--mono);letter-spacing:1px;outline:none}.seed-input::placeholder{font:10px var(--sans);color:#759671;letter-spacing:0}.restart-deck{display:flex;align-items:center;gap:16px;margin:23px 0 28px;border-top:1px solid var(--border);padding-top:23px}.red-deck-mini{display:flex;align-items:center;justify-content:center;width:35px;height:48px;background:repeating-linear-gradient(45deg,#b56d56 0 2px,#a45f4d 2px 4px);border:2px solid #dbbe95;border-radius:3px;color:#e1c39c;transform:rotate(-7deg);font-size:24px}.restart-deck b{font-weight:600;font-size:12px}.restart-deck p{font-size:9px;color:#92ab88;margin-top:8px}.detail-card{width:125px;height:165px;margin:5px auto 15px;background:#e7dbb9;border-radius:6px;padding:4px;box-shadow:3px 5px #0c2c2070;transform:rotate(-4deg)}.detail-card .card-art{width:100%;height:100%}.detail-rarity{display:table;margin:0 auto 13px}.detail-description{text-align:center;font-size:14px;line-height:1.9;margin:8px 0 17px;color:#e4dcb9}.joker-order{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:22px}.joker-order>span{font:10px var(--mono);color:#9eb28e}.joker-order>.button{font-size:10px;min-height:34px;padding:8px 13px}.modal-body>.text-button{display:block;margin:5px auto 0}.breakdown-heading{display:flex;align-items:center;justify-content:space-between;padding:10px 0 17px;border-bottom:1px solid var(--border);margin-bottom:7px}.breakdown-heading b{font-size:17px}.breakdown-heading strong{font:700 27px var(--mono);color:#e6bf72}.breakdown-events{max-height:48svh;overflow:auto}.breakdown-events>div{display:flex;justify-content:space-between;gap:20px;padding:10px 3px;border-bottom:1px solid #a0b08a14;font-size:11px;color:#a9bd9b}.breakdown-events>div>b{font:11px var(--mono);color:#ded2ad}.breakdown-total{margin-top:17px;font-size:11px;line-height:2;color:#abc29e;display:flex;justify-content:space-between;gap:10px}.breakdown-total b{font-family:var(--mono);font-size:16px;color:#e2c580}.deck-suit-row{display:flex;gap:10px;align-items:center;margin:19px 0}.deck-suit-row>span{width:20px;font-size:23px;flex-shrink:0;color:#bed0af}.deck-suit-row>div{display:flex;gap:6px;flex:1;min-width:0}.playing-card.mini{width:calc((100% - 72px)/13);min-width:0;height:75px;border-radius:3px;box-shadow:0 2px #c5c5a4}.mini .pips,.mini .royal-art,.mini .ace-pip,.mini .card-corner.bottom{display:none}.mini .card-corner.top{left:0;top:0;inset:0;justify-content:center;gap:7px}.mini .card-corner b{font-size:20px}.mini .card-corner>span{font-size:18px;margin:0}.mini .enhancement{top:auto;bottom:3px;font-size:6px;padding:1px}.mini .debuff-mark{font-size:29px}
#toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%,12px);opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:200;background:#ece4c7;color:#34503d;padding:13px 22px;border-radius:6px;box-shadow:0 5px 20px #061e1580;font-size:12px;max-width:calc(100vw - 40px);text-align:center;line-height:1.7;border:1px solid #c6bf9a}#toast.visible{opacity:1;transform:translate(-50%,0)}@keyframes modal-in{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(min-width:1450px){.app-shell{padding:0 45px}.topbar{height:108px}.game-grid{grid-template-columns:270px minmax(0,1fr);gap:32px;padding-top:30px}.sidebar{padding:24px 21px 14px}.inventory{padding-bottom:27px}.joker-rack{gap:17px}.empty-joker,.joker-card{height:146px}.joker-card .card-art{height:104px}.arena{min-height:330px}.arena-content{min-height:329px}.hand-toolbar{margin-bottom:30px}.hand-panel{padding-top:23px}.hand-actions{margin-top:25px}.stat{padding-top:14px;padding-bottom:14px}.money-stat{padding-top:17px;padding-bottom:17px}.blind-selection{padding:60px 35px 35px}.blind-choices{gap:25px;margin-top:32px}.blind-choice{padding:16px 20px 9px}.blind-badge.large{margin-top:24px;margin-bottom:20px}.section-intro h2{font-size:27px}.blind-choice p{margin-top:11px;margin-bottom:15px}.shop-content{padding:55px 30px 25px}.shop-layout{grid-template-columns:minmax(0,1fr) 175px;gap:25px}.shop-art{width:107px;height:141px}.shop-item p{min-height:38px}.shop-item h3{font-size:14px}.shop-item .buy-button{min-height:36px}.shop-arena{min-height:510px}.footer{min-height:60px}}
@media(max-width:1150px){.app-shell{padding:0 22px}.game-grid{grid-template-columns:215px minmax(0,1fr);gap:20px}.sidebar{padding:17px 13px 10px}.inventory{gap:17px}.joker-rack{gap:8px}.consumable-inventory{width:112px;padding-left:14px}.empty-joker,.joker-card{height:117px}.joker-card{padding:3px 3px 0}.joker-card .card-art{height:80px}.joker-card-name{font-size:8px;margin:2px -3px 0;padding:3px 0}.joker-card-label{font-size:7px;padding:0}.empty-joker>small{font-size:7px;letter-spacing:.3px}.empty-joker:first-child>small{font-size:7px}.inventory-heading small{display:none}.empty-consumable{height:79px;margin-top:18px}.consumable-card{height:83px;margin-top:15px}.consumable-card .card-art{height:61px}.consumable-card>span{font-size:8px}.hand-and-deck{gap:14px}.hand-cards{gap:5px}.playing-card{width:clamp(48px,6.9vw,78px);height:clamp(80px,10.5vw,123px)}.card-corner b{font-size:17px}.card-corner>span{font-size:14px}.card-corner.top{left:5px;top:6px}.card-corner.bottom{right:5px;bottom:6px}.pips{font-size:18px}.draw-deck{width:44px;gap:12px}.deck-back{width:38px;height:58px;border-width:2px}.deck-back i{width:27px;height:42px;font-size:23px}.draw-deck>span:last-child{font-size:8px;white-space:nowrap}.draw-deck>span:last-child>b{font-size:11px}.hand-actions{gap:8px}.selection-hint{font-size:8px;gap:6px}.selection-hint b{font-size:10px}.action-buttons{gap:8px}.action-buttons>.button{min-width:91px;padding:10px 13px;font-size:11px;gap:9px}.blind-selection{padding:48px 16px 23px}.blind-choices{gap:10px}.blind-choice{padding:11px 9px 7px}.blind-choice h3{font-size:16px}.blind-target{font-size:26px}.blind-choice .button{font-size:10px;gap:4px}.blind-badge.large{width:67px;height:67px}.blind-badge.large>span{width:54px;height:54px;font-size:36px}.section-intro h2{font-size:22px}.starter-tip>span{font-size:8px}.shop-content{padding:45px 16px 18px}.shop-layout{grid-template-columns:minmax(0,1fr) 130px;gap:12px}.shop-products{gap:8px}.shop-item{padding:12px 7px 10px}.shop-art{height:110px;width:80px}.shop-item h3{font-size:12px}.shop-item p{font-size:8px}.shop-item .buy-button{font-size:9px;gap:4px;padding:7px}.shop-heading h2{font-size:18px}.shop-heading .next-round{font-size:9px;padding:9px 10px;gap:6px;min-height:34px}.voucher-offer{padding:12px 8px}.booster-offer{gap:6px}.mini-pack{width:23px;height:36px;font-size:17px}.booster-offer b{font-size:8px}.booster-offer small{font-size:7px}.shop-footer>span{max-width:50%;font-size:7px}.footer{font-size:8px}.footer>span:last-child{font-size:7px}.keyboard-hints{gap:3px;font-size:7px}}
@media(max-width:900px){.app-shell{padding:0 16px}.topbar{height:82px}.brand-mark{width:34px;height:43px}.brand-word{font-size:27px}.brand-sub{font-size:8px;letter-spacing:2px;margin-top:6px}.brand-sub span{font-size:7px;letter-spacing:1px}.topbar-middle{gap:12px;margin-right:0}.autosave{display:none}.topbar-actions{gap:5px}.new-run-button{padding:8px;font-size:10px}.game-grid{grid-template-columns:185px minmax(0,1fr);gap:14px;padding-top:18px}.sidebar{padding:15px 11px 9px}.blind-heading{gap:8px;padding-bottom:13px}.blind-heading h1{font-size:18px}.blind-heading .eyebrow{font-size:7px;letter-spacing:1px}.blind-badge{width:40px;height:40px}.blind-badge>span{width:31px;height:31px;font-size:23px;border-width:2px}.target-block{padding:14px 0 12px}.target-block>strong{font-size:35px}.score-block{padding:10px}.round-score{font-size:30px}.section-caption>span{font-size:6px;letter-spacing:.5px}.hand-type>span{font-size:17px}.hand-type small{font-size:8px}.chips-box,.mult-box{padding:7px}.chips-box b,.mult-box b{font-size:22px}.stat{padding:12px 4px 10px}.stat>strong{font-size:23px}.stat:nth-child(2),.stat:nth-child(5){padding-left:12px}.sidebar-buttons{gap:5px}.subtle-button{font-size:8px;gap:3px}.subtle-button svg{width:11px;height:11px}.seed-button{font-size:7px;gap:5px}.inventory{gap:10px;padding-bottom:18px}.consumable-inventory{width:86px;padding-left:9px}.joker-rack{gap:6px}.empty-joker,.joker-card{height:99px;border-radius:4px}.empty-joker>span{font-size:25px}.empty-joker>small{font-size:6px}.empty-joker:first-child>small{font-size:6px}.joker-card{padding:2px 2px 0;border-width:1px}.joker-card .card-art{height:68px}.joker-card-name{font-size:7px;margin:0 -2px;line-height:10px}.joker-card-label{font-size:6px;letter-spacing:.5px}.joker-card-label>span{font-size:7px}.inventory-heading{font-size:9px;margin-bottom:9px}.inventory-heading b{margin-left:4px;font-size:9px}.consumable-rack{gap:5px}.empty-consumable{height:67px;margin-top:16px}.consumable-card{height:70px;padding:2px;margin-top:13px}.consumable-card .card-art{height:51px}.consumable-card>span{font-size:7px;line-height:12px}.playing-card{width:clamp(42px,6.7vw,62px);height:clamp(66px,10.5vw,98px);border-radius:4px}.hand-cards{gap:3px}.pips{font-size:15px;inset:22% 25%}.card-corner b{font-size:14px}.card-corner>span{font-size:12px;margin-top:3px}.card-corner.top{top:5px;left:4px}.card-corner.bottom{bottom:5px;right:4px}.ace-pip{font-size:31px}.hand-and-deck{min-height:110px;gap:12px}.hand-toolbar{margin-bottom:27px}.draw-deck{width:30px}.deck-back{width:28px;height:42px;box-shadow:2px 2px #b6b99a,4px 4px #ddcdb0,6px 6px #b6b99a}.deck-back i{width:20px;height:31px;font-size:16px}.hand-actions{flex-wrap:wrap;margin-top:17px;gap:16px}.selection-hint{margin-left:auto}.action-buttons>.button{min-width:82px;min-height:35px;padding:9px 11px;font-size:10px;gap:9px}.action-buttons kbd{font-size:8px}.arena{min-height:290px}.arena-content{min-height:289px;padding:42px 15px 25px}.arena-topline{padding:12px;font-size:8px}.arena-topline>span:first-child{font-size:7px;letter-spacing:1px}.table-watermark h2{font-size:23px;letter-spacing:3px}.table-watermark p{font-size:9px}.watermark-suits{font-size:27px}.blind-selection{padding:46px 12px 20px}.blind-choices{gap:7px;margin-top:24px}.blind-choice{padding:10px 7px 5px}.blind-choice h3{font-size:13px}.blind-choice-top{font-size:7px;letter-spacing:.5px}.blind-choice-top>span{font-size:7px}.blind-badge.large{width:54px;height:54px;margin:18px auto 12px}.blind-badge.large>span{width:43px;height:43px;border-width:3px;font-size:30px}.blind-target{font-size:23px}.blind-target small{display:none}.blind-choice p{font-size:8px;height:45px}.blind-choice .button{font-size:9px;min-height:33px;padding:8px 3px;gap:3px;letter-spacing:0}.blind-choice .button svg{width:11px;height:11px}.skip-button,.no-skip{font-size:8px}.section-intro h2{font-size:20px}.section-intro p{font-size:9px}.section-intro>.eyebrow{font-size:8px;letter-spacing:2px}.starter-tip{align-items:start;font-size:12px;gap:5px}.starter-tip>span{font-size:7px}.table-bottom-note{gap:7px;min-height:90px}.table-bottom-note p{font-size:8px;letter-spacing:.5px}.table-bottom-note>span{font-size:15px;letter-spacing:3px}.shop-content{padding:44px 13px 17px}.shop-heading{gap:10px;margin-bottom:19px}.shop-heading h2{font-size:16px}.shop-layout{grid-template-columns:1fr;gap:13px}.shop-products{gap:9px}.shop-art{width:78px;height:105px}.shop-extras{flex-direction:row}.voucher-offer{flex:1;display:grid;grid-template-columns:37px 1fr 65px;grid-template-rows:auto auto;text-align:left;gap:4px 10px;align-items:center;padding:11px}.voucher-offer .eyebrow{display:none}.voucher-graphic{width:35px;height:43px;font-size:23px;margin:0;grid-row:1/3}.voucher-offer h3{font-size:10px}.voucher-offer p{margin:0;font-size:8px;min-height:0;grid-column:2;grid-row:2}.voucher-offer>.button{grid-column:3;grid-row:1/3;font-size:8px;padding:5px;min-height:29px}.booster-offer{width:125px;min-height:64px}.shop-footer{margin-top:14px;padding-top:13px}.shop-footer>.button{font-size:9px;min-height:31px;padding:8px;gap:5px}.shop-footer>span{font-size:7px}.result-panel h2{font-size:23px}.result-panel .result-score{font-size:33px}.payout-lines small{font-size:7px}.keyboard-hints{display:none}.footer>span:last-child{letter-spacing:0}.played-cards{gap:7px}.played-cards .playing-card{width:61px;height:89px}.played-cards .pips{font-size:14px}.played-cards .ace-pip{font-size:33px}.last-result>span{font-size:22px}.pack-selection{padding:48px 15px 18px}.pack-cards{gap:10px}.pack-cards .shop-item{padding:12px 8px}.pack-cards .shop-art{width:80px;height:106px}.pack-cards .button{font-size:9px;padding:7px;gap:4px}.pack-cards .button svg{width:11px}.pack-cards .shop-item p{font-size:8px}}
@media(max-width:680px){.app-shell{padding:0 12px}.topbar{height:73px;gap:7px}.brand{gap:8px}.brand-mark{width:28px;height:36px}.brand-word{font-size:24px}.brand-dot{font-size:16px;margin-left:3px}.brand-sub{font-size:7px;letter-spacing:1px}.brand-sub span{font-size:6px;margin-left:3px;letter-spacing:.7px}.topbar-middle{display:none}.topbar-actions{gap:2px}.topbar-actions .icon-button{width:29px;height:29px}.topbar-actions .icon-button svg{width:16px;height:16px}.new-run-button{padding:8px 7px;font-size:9px;gap:5px;margin-left:3px}.new-run-button svg{width:12px;height:12px}.game-grid{display:flex;flex-direction:column;padding-top:12px;gap:15px;padding-bottom:17px}.sidebar{width:100%;padding:11px 12px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:0 12px;border-radius:7px;align-self:stretch}.blind-heading{border:0;padding:0;gap:8px;grid-column:1;grid-row:1;align-self:start}.blind-heading .eyebrow{font-size:6px;letter-spacing:.4px}.blind-heading h1{font-size:15px;letter-spacing:0}.blind-heading .blind-badge{width:30px;height:30px}.blind-heading .blind-badge>span{width:24px;height:24px;border-width:2px;font-size:18px}.target-block{grid-column:1;grid-row:2;padding:8px 0 0;align-items:start;text-align:left;gap:2px}.target-block>span:first-child{font-size:8px;letter-spacing:0}.target-block>strong{font-size:27px;letter-spacing:-1px}.reward-label{display:none}.score-block{grid-column:2;grid-row:1/3;padding:8px 9px;align-self:start;background:#0d302c99;min-height:92px;margin-top:1px}.section-caption{font-size:9px}.section-caption>span{display:none}.round-score{font-size:27px;line-height:1.9}.hand-score-block{grid-column:3;grid-row:1/3;margin:0;align-self:start}.hand-type{margin:2px 0 9px}.hand-type>span{font-size:14px}.hand-type small{font-size:7px}.calculation{grid-template-columns:1fr 13px 1fr}.chips-box,.mult-box{padding:5px 4px 4px;border-radius:3px}.chips-box b,.mult-box b{font-size:18px;letter-spacing:-1px}.chips-box>span,.mult-box>span{font-size:7px}.times{font-size:13px}.estimated{font-size:7px;height:24px}.estimated b{font-size:10px}.stat-grid{grid-column:1/-1;display:flex;align-items:center;margin-top:12px;padding-top:8px;gap:0}.stat{flex:1;gap:3px;padding:0 8px!important;border:0!important;border-right:1px solid var(--border)!important;align-items:center;white-space:nowrap}.stat:first-child{padding-left:0!important}.stat:last-child{padding-right:0!important;border:0!important}.stat>span{font-size:8px}.stat>strong{font-size:19px;letter-spacing:-.6px}.stat small{font-size:8px}.money-stat{order:3;flex-direction:column}.stat:nth-child(4){order:4}.stat:nth-child(5){order:5}.sidebar-buttons{grid-column:1/3;margin-top:10px;gap:7px}.subtle-button{font-size:8px;padding:5px 7px;min-height:25px;background:#365c4640;flex:0 1 auto;gap:5px}.subtle-button b{font-size:8px}.seed-button{grid-column:3;grid-row:4;align-self:end;padding:0;gap:4px;height:25px;justify-content:end;font-size:6px}.seed-button span:first-child{font-size:7px;letter-spacing:.3px}.seed-button span:last-child{font-size:10px}.boss-rule{grid-column:1/-1;grid-row:3;font-size:8px;padding:6px 8px;margin:9px 0 0}.boss-rule~.stat-grid{grid-row:4}.sidebar:has(.boss-rule) .sidebar-buttons{grid-row:5}.sidebar:has(.boss-rule) .seed-button{grid-row:5}.inventory{padding:0 2px 15px;gap:13px}.inventory-heading{font-size:9px;margin-bottom:7px;height:19px}.inventory-heading b{font-size:9px;margin-left:6px}.inventory-heading i{font-size:8px}.joker-rack{gap:6px}.empty-joker,.joker-card{height:90px}.joker-card .card-art{height:60px}.joker-card-label{font-size:5px}.joker-card-name{font-size:6px;line-height:9px;padding:3px 0}.empty-joker{gap:13px}.empty-joker>span{font-size:22px}.empty-joker>small{font-size:5px;letter-spacing:.7px}.empty-joker:first-child>small{font-size:5px;letter-spacing:0}.consumable-inventory{width:79px;padding-left:10px}.empty-consumable{height:59px;margin-top:16px}.consumable-card{height:61px;margin-top:14px}.consumable-card .card-art{height:44px}.consumable-card>span{font-size:6px;line-height:11px}.arena{min-height:215px;border-radius:7px}.arena-content{min-height:214px;padding:39px 14px 21px}.arena-topline{padding:11px 12px;font-size:7px;gap:5px}.arena-topline>span:first-child{font-size:6px;letter-spacing:1px}.arena-topline .boss-hint{font-size:7px}.table-watermark h2{font-size:22px;letter-spacing:2px;margin:10px 0}.table-watermark p{font-size:8px}.watermark-suits{font-size:23px;letter-spacing:10px}.watermark-line{font-size:6px;letter-spacing:1.5px;margin-top:18px;gap:10px}.watermark-line span{width:20px}.hand-panel{padding:16px 2px 0}.hand-toolbar{margin-bottom:29px}.hand-toolbar .section-caption{font-size:10px}.hand-toolbar>div>b{font-size:11px}.hand-toolbar>div>b>span{font-size:9px}.sort-control>span{font-size:8px;margin-right:5px}.sort-control button{font-size:8px;padding:4px 7px}.hand-and-deck{min-height:93px;gap:13px}.hand-cards{justify-content:center;gap:0;padding:0 0 5px}.hand-cards>.playing-card{width:calc(100% / (var(--hand-count) + .1));max-width:73px;height:auto;aspect-ratio:.65;margin-right:-1px;flex-shrink:1;min-width:0;box-shadow:0 3px #c4c0a8,0 6px 5px #09291e50;border-radius:4px}.hand-cards>.playing-card:last-child{margin-right:0}.card-corner b{font-size:15px}.card-corner>span{font-size:12px;margin-top:3px}.card-corner.top{left:4px;top:5px}.card-corner.bottom{right:4px;bottom:5px}.pips{font-size:14px;inset:24% 24%;column-gap:0;line-height:.65}.ace-pip{font-size:32px}.royal-art{inset:24% 22%}.enhancement{font-size:6px;top:3px;padding:1px}.draw-deck{width:25px;gap:12px;margin-right:4px}.deck-back{width:25px;height:38px;border-radius:3px;box-shadow:2px 2px #b6b99a,4px 4px #ddcdb0}.deck-back i{width:17px;height:27px;font-size:15px}.draw-deck>span:last-child{font-size:6px;margin-left:4px}.draw-deck>span:last-child>b{font-size:10px}.hand-actions{margin-top:18px;gap:10px;flex-wrap:nowrap;align-items:center}.action-buttons{gap:8px}.action-buttons>.button{font-size:11px;min-width:80px;min-height:36px;padding:8px 12px;gap:9px}.action-buttons kbd{font-size:8px;min-width:16px}.selection-hint{font-size:7px;gap:5px;flex-wrap:wrap;justify-content:end;max-width:155px}.selection-hint b{font-size:10px}.clear-selection{width:17px;height:17px;font-size:13px}.blind-selection{padding:40px 11px 19px}.section-intro>.eyebrow{font-size:7px;letter-spacing:2px}.section-intro h2{font-size:21px;letter-spacing:0;margin-top:9px}.section-intro p{font-size:8px;letter-spacing:0;margin-top:8px}.blind-choices{gap:8px;margin-top:22px}.blind-choice{padding:9px 7px 5px;border-radius:5px}.blind-choice-top{font-size:7px;letter-spacing:0}.blind-choice-top>span{font-size:6px;letter-spacing:.5px}.blind-badge.large{width:53px;height:53px;margin:17px auto 11px}.blind-badge.large>span{width:42px;height:42px;font-size:28px}.blind-choice h3{font-size:13px;letter-spacing:.2px}.blind-target{font-size:24px;margin-top:8px;letter-spacing:-1px}.blind-choice p{font-size:7px;height:42px;margin:5px 0 9px}.blind-choice .button{font-size:8px;min-height:30px;padding:7px 3px;gap:4px}.blind-choice .button svg{width:11px;height:11px}.skip-button,.no-skip{font-size:7px;min-height:29px;padding:8px 0}.blind-locked{min-height:59px;font-size:8px}.starter-tip{margin-top:16px;font-size:10px}.starter-tip>span{font-size:7px;max-width:290px}.table-bottom-note{min-height:65px}.table-bottom-note p{font-size:8px;letter-spacing:0}.table-bottom-note>span{font-size:14px;letter-spacing:2px}.footer{min-height:47px;font-size:7px;gap:5px}.footer>span:first-child{letter-spacing:0}.footer>span:first-child>b{font-size:10px}.footer>span:last-child{font-size:6px}.footer i{margin:0 3px}.played-cards{gap:8px}.played-cards .playing-card{width:49px;height:71px}.played-cards .card-corner b{font-size:11px}.played-cards .card-corner>span{font-size:10px;margin-top:2px}.played-cards .card-corner.top{top:3px;left:3px}.played-cards .card-corner.bottom{bottom:3px;right:3px}.played-cards .pips{font-size:11px}.played-cards .ace-pip{font-size:25px}.played-label{font-size:11px;margin-bottom:13px}.played-label>span{font-size:8px}.last-result{margin-top:14px;gap:13px}.last-result>span{font-size:21px}.last-result small{font-size:8px}.last-result small svg{width:10px;height:10px}.shop-arena{min-height:450px}.shop-content{padding:40px 12px 16px}.shop-heading h2{font-size:17px;letter-spacing:0}.shop-heading .eyebrow{font-size:8px}.shop-heading .next-round{font-size:9px;padding:8px 10px;gap:5px;min-height:33px}.shop-heading .next-round svg{width:13px;height:13px}.shop-products{gap:8px}.shop-item{padding:11px 7px 9px}.shop-art{width:76px;height:103px;margin-bottom:11px}.rarity{font-size:6px;padding:3px 4px;letter-spacing:0}.shop-item h3{font-size:11px;letter-spacing:0}.shop-item p{font-size:8px;min-height:39px;margin:7px 0 9px;line-height:1.6}.shop-item .buy-button{font-size:9px;min-height:30px;padding:6px 7px}.shop-item .buy-button b{font-size:12px}.shop-extras{gap:9px}.voucher-offer{padding:10px;gap:3px 8px;grid-template-columns:27px 1fr 55px}.voucher-graphic{width:26px;height:37px;font-size:19px;outline-offset:-4px}.voucher-offer h3{font-size:9px}.voucher-offer p{font-size:7px;line-height:1.5}.voucher-offer>.button{font-size:7px;min-height:27px;padding:4px}.booster-offer{width:116px;min-height:60px;gap:7px;padding:9px 7px}.booster-offer b{font-size:8px}.booster-offer small{font-size:7px}.mini-pack{width:22px;height:34px;font-size:16px}.shop-footer{gap:8px;margin-top:15px}.shop-footer>.button{font-size:8px;padding:8px;gap:6px}.shop-footer>.button svg{width:12px}.shop-footer>span{font-size:6px;max-width:46%}.pack-selection{padding:44px 12px 18px}.pack-cards{gap:8px;margin-top:23px}.pack-cards .shop-item{padding:12px 7px 9px}.pack-cards .shop-art{width:76px;height:103px}.pack-cards .button{font-size:8px;padding:7px 4px;min-height:30px;gap:3px}.pack-cards .button svg{width:10px}.pack-cards .shop-item p{font-size:7px}.result-panel{max-width:320px;padding:12px 10px 6px}.result-panel h2{font-size:21px;letter-spacing:.5px}.result-eyebrow{font-size:8px}.result-panel>p{font-size:9px}.result-panel .result-score{font-size:32px;margin:17px 0}.payout-lines{padding:10px 0 13px;margin-bottom:15px}.payout-lines>span{font-size:10px}.payout-lines small{font-size:6px}.result-panel>.button{font-size:11px;min-height:36px}.run-summary{gap:9px}.run-summary>span{font-size:8px}.run-summary b{font-size:17px}.modal-overlay{padding:17px}.modal{padding:16px 20px 22px;border-radius:9px;max-height:91svh}.modal>h2{font-size:20px;margin-top:13px;letter-spacing:.5px}.modal-subtitle{font-size:10px}.help-lead{font-size:11px}.help-step{gap:12px;margin-bottom:18px}.help-step h3{font-size:11px}.help-step p{font-size:10px}.help-note{font-size:9px;padding:11px}.hands-table-head,.hand-table-row{grid-template-columns:1.05fr .65fr .65fr .55fr;gap:9px;padding:12px 7px}.hands-table-head{font-size:8px}.hands-table-head>span:last-child,.hand-example{display:none}.hand-table-row>span{font-size:14px}.hand-table-row b{font-size:11px}.deck-suit-row{gap:7px;margin:13px 0}.deck-suit-row>span{font-size:17px;width:14px}.deck-suit-row>div{gap:2px}.playing-card.mini{width:calc((100% - 24px)/13);height:44px;border-radius:2px}.mini .card-corner b{font-size:12px}.mini .card-corner>span{font-size:11px}.mini .card-corner.top{gap:3px}.mini .enhancement{font-size:4px;bottom:2px}.breakdown-total{font-size:9px}.breakdown-total b{font-size:13px}.joker-order>.button{font-size:9px;padding:8px 11px}.joker-order>span{font-size:9px}.detail-description{font-size:13px}.seed-label{font-size:10px}.seed-label small{font-size:8px}#toast{font-size:10px;bottom:23px;padding:11px 17px}}
@media(max-width:390px){.app-shell{padding:0 9px}.sidebar{padding:10px;gap:0 9px}.target-block>strong{font-size:24px}.round-score{font-size:25px}.hand-type>span{font-size:12px}.hand-type small{font-size:6px}.chips-box b,.mult-box b{font-size:17px}.estimated{font-size:6px}.inventory{gap:9px}.consumable-inventory{width:69px;padding-left:7px}.joker-rack{gap:5px}.empty-joker,.joker-card{height:81px}.joker-card .card-art{height:53px}.joker-card-name{font-size:6px;line-height:8px}.empty-joker:first-child>small{font-size:4px}.empty-consumable{height:53px;margin-top:14px}.consumable-card{height:55px;margin-top:12px}.consumable-card .card-art{height:39px}.blind-selection{padding-left:9px;padding-right:9px}.blind-choices{gap:6px}.blind-choice{padding-left:6px;padding-right:6px}.section-intro h2{font-size:19px}.blind-choice h3{font-size:12px}.blind-choice .button{font-size:7px}.blind-choice .button svg{width:10px}.skip-button{font-size:6px}.card-corner b{font-size:13px}.card-corner>span{font-size:10px}.pips{font-size:12px}.ace-pip{font-size:27px}.hand-and-deck{gap:10px}.draw-deck{margin-right:2px;width:23px}.hand-actions{gap:6px}.action-buttons>.button{min-width:73px;padding:8px 10px;font-size:10px;gap:6px}.selection-hint{max-width:130px;font-size:6px}.selection-hint b{font-size:9px}.shop-content{padding-left:10px;padding-right:10px}.shop-heading h2{font-size:15px}.shop-heading .next-round{font-size:8px;padding:8px;gap:3px}.shop-products{gap:6px}.shop-item{padding-left:5px;padding-right:5px}.shop-art,.pack-cards .shop-art{width:68px;height:93px}.shop-item p{font-size:7px}.voucher-offer{grid-template-columns:22px 1fr 50px;gap:3px 6px;padding:9px 7px}.voucher-graphic{width:22px;height:33px}.booster-offer{width:102px;padding:7px 5px;gap:5px}.booster-offer b{font-size:7px}.booster-offer small{font-size:6px}.booster-offer svg{width:9px}.shop-extras{gap:7px}.shop-item h3{font-size:10px}.shop-footer>.button{font-size:7px;gap:5px}.shop-footer>span{font-size:6px;max-width:45%}.footer>span:last-child{font-size:5px}}
.arena{flex:1 0 auto}.hand-cards>.playing-card{flex-shrink:1;min-width:0;height:auto;aspect-ratio:2/3}
@media(max-width:680px){.hand-cards>.playing-card{aspect-ratio:.65}}
.language-button{height:32px;min-width:33px;padding:5px 7px;border:1px solid #9bb79044;border-radius:4px;background:#7b96721a;font:10px var(--mono);color:#d9d6ae}.language-button:hover{background:#819e7233}.profile-button{background:none;display:flex;align-items:center;gap:7px;padding:3px 5px;color:#d1d4b3;font-size:10px}.profile-button>span:last-child{max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-button{font-size:24px;color:#d8c48d}.mode-pill{font-size:9px;color:#85a785;white-space:nowrap}.mode-pill.ranked{color:#d3c085}.topbar-middle{gap:13px;margin-right:10px}.sidebar-buttons{flex-wrap:wrap}.submit-button{flex:1 1 100%;font-size:9px;border-color:#c0ad7555}.profile-editor{display:flex;align-items:center;gap:19px;margin:20px 0 24px}.profile-editor>div{flex:1;min-width:0}.privacy-note{font-size:9px;line-height:1.9;color:#88a181;margin:12px 0 20px}.board-controls{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:16px}.board-controls .button{font-size:10px;min-height:32px;padding:8px 12px}.board-controls .chosen{border-color:#d5bb72;background:#66805a}.board-controls label{font-size:9px;color:#96ad89;margin-left:auto;display:flex;align-items:center;gap:8px}.board-controls select{max-width:235px;background:#143a2d;border:1px solid #93aa7d55;color:#d0d4af;font-size:10px;padding:8px;border-radius:3px}.empty-board{padding:40px 10px;text-align:center;font-size:12px;color:#9eb28e;line-height:2}.leaderboard-table{max-height:55svh;overflow:auto}.leaderboard-row{display:grid;grid-template-columns:30px 1.2fr 1fr 45px 1fr;gap:12px;align-items:center;border-bottom:1px solid #9eb18b20;padding:12px 7px;font-size:11px}.board-head{font-size:9px;color:#819b7b}.board-player{display:flex;align-items:center;gap:9px;min-width:0}.board-player>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rank-number{font:13px var(--mono);color:#c1bc8d}.leaderboard-row strong{font:600 14px var(--mono)}.leaderboard-row time{font-size:9px;color:#96ac86}.admin-shell{max-width:1100px;margin:auto;padding:0 30px 45px}.admin-header{height:95px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.admin-brand{font:700 23px var(--mono);letter-spacing:-1px}.admin-brand span{font:11px var(--sans);color:#9db08c;letter-spacing:1px;margin-left:10px}.admin-header>div{display:flex;align-items:center;gap:17px}.admin-header .button{font-size:10px;min-height:32px;padding:8px 13px}.admin-login{max-width:420px;margin:65px auto 0;border:1px solid #9cb18b44;border-radius:9px;background:#32513b30;padding:27px}.admin-login h1{font-size:27px;letter-spacing:1px;font-weight:600;margin:15px 0}.admin-login>p{color:#9eb18c;font-size:11px;line-height:1.9;margin-bottom:25px}.admin-login label{font-size:11px;display:block;margin-bottom:10px}.admin-login input{width:100%;background:#0e3127;border:1px solid #99ac7e55;color:#dfddbd;padding:12px;border-radius:4px;font-family:var(--mono);font-size:12px}.admin-login .help-note{margin-bottom:0;font-size:10px}.admin-message{margin:20px 0;padding:12px 17px;border:1px solid #c2b37855;background:#bca6571a;color:#e4d8ab;font-size:11px;line-height:1.9;border-radius:5px}.admin-panel{margin-top:27px;padding:25px;border:1px solid #9db18b33;background:#32513b20;border-radius:8px}.admin-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:14px}.admin-panel h1{font-size:24px;font-weight:600;letter-spacing:1px;margin-top:9px}.admin-panel h2{font-size:18px;font-weight:600;margin-bottom:12px}.admin-panel code{font:9px var(--mono);color:#8fa783;overflow-wrap:anywhere;max-width:50%;text-align:right}.rules-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.rules-grid label{display:flex;flex-direction:column;gap:8px;min-width:0}.rules-grid label>span{font-size:11px;color:#c5ceb0}.rules-grid input{background:#0f3428;color:#eee3ba;border:1px solid #99ac7e44;border-radius:4px;padding:10px;font:14px var(--mono);width:100%}.rules-grid label>small{color:#6e926e;font:9px var(--mono)}.admin-form-actions{display:flex;gap:12px;align-items:center;margin-top:27px;border-top:1px solid var(--border);padding-top:23px}.admin-form-actions .button{font-size:11px}.admin-scores-scroll{overflow:auto}.admin-scores{border-collapse:collapse;width:100%;font-size:10px;min-width:700px}.admin-scores th{text-align:left;color:#8aa57c;font-weight:500;font-size:9px;padding:11px 8px}.admin-scores td{padding:10px 8px;border-top:1px solid #9eb18b20;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-scores .browser-cell{max-width:220px;color:#89a17d}.admin-scores .text-button{font-size:9px;padding:7px 0}.seed-input:disabled{opacity:.4}html[lang=en] .sidebar .hand-type>span{font-size:15px}html[lang=en] .joker-card-name{font-size:8px;letter-spacing:-.3px}html[lang=en] .blind-choice h3{font-size:15px}html[lang=en] .section-intro h2{letter-spacing:0;font-size:24px}html[lang=en] .brand-sub{letter-spacing:1px}html[lang=en] .action-buttons>.button{min-width:100px;padding:10px 13px}html[lang=en] .table-watermark h2{letter-spacing:0;font-size:26px}html[lang=en] .blind-choice .button{font-size:10px;letter-spacing:0}
@media(max-width:1150px){.profile-button>span:last-child{display:none}.topbar-middle .mode-pill{display:none}.topbar-middle{margin-right:0}.rules-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:680px){.topbar-actions{gap:0}.topbar-actions .new-run-button{width:28px;height:28px;justify-content:center;padding:6px;margin-left:0}.topbar-actions .new-run-button>span{display:none}.topbar-actions .icon-button{width:26px;height:28px}.topbar-actions .language-button{height:27px;min-width:27px;font-size:8px;padding:5px}.profile-button{padding:3px 5px}.board-button{font-size:21px}.topbar .brand-word{font-size:22px}.topbar .brand-sub{font-size:6px}.topbar .brand-sub span{font-size:5px}.topbar .brand-mark{width:25px;height:33px}.topbar .brand{gap:6px}.profile-editor{gap:14px}.board-controls{gap:6px}.board-controls .button{font-size:8px;padding:7px 9px;min-height:29px}.board-controls label{width:100%;margin:7px 0 0;font-size:8px}.board-controls select{flex:1;max-width:none;font-size:9px}.leaderboard-row{grid-template-columns:18px 1.2fr .9fr 27px;gap:8px;padding:11px 3px;font-size:9px}.leaderboard-row>time,.board-head>span:last-child{display:none}.board-player{gap:6px}.leaderboard-row strong{font-size:11px}.rank-number{font-size:10px}.privacy-note{font-size:8px}.admin-shell{padding:0 15px 30px}.admin-header{height:75px}.admin-brand{font-size:20px}.admin-brand>span{font-size:9px;margin-left:7px}.admin-header>div{gap:10px}.admin-header .button{font-size:8px;padding:8px}.admin-login{margin-top:35px;padding:23px}.admin-panel{padding:18px;margin-top:20px}.admin-panel h1{font-size:21px}.admin-panel h2{font-size:16px}.admin-panel code{font-size:7px}.rules-grid{grid-template-columns:repeat(2,1fr);gap:18px 15px}.rules-grid label>span{font-size:10px}.rules-grid input{font-size:13px;padding:9px}.admin-form-actions{gap:9px;flex-wrap:wrap}.admin-form-actions .button{font-size:10px;padding:10px 12px}html[lang=en] .brand-sub{font-size:5px;letter-spacing:0}html[lang=en] .sidebar .hand-type>span{font-size:11px;letter-spacing:-.5px}html[lang=en] .blind-choice h3{font-size:11px}html[lang=en] .section-intro h2{font-size:19px}html[lang=en] .table-watermark h2{font-size:20px}html[lang=en] .blind-choice .button{font-size:8px}html[lang=en] .action-buttons>.button{min-width:80px;font-size:9px;padding:9px}html[lang=en] .joker-card-name{font-size:5px}html[lang=en] .stat>span{font-size:7px}html[lang=en] .sidebar .subtle-button{font-size:7px}html[lang=en] .selection-hint{font-size:7px;max-width:130px}.sidebar-buttons .submit-button{flex-basis:auto}.sidebar:has(.submit-button) .sidebar-buttons{grid-column:1/-1}.sidebar:has(.submit-button) .seed-button{display:none}}


/* Compact table, with a readable type scale at every breakpoint. */
body{font-size:14px}
#app .app-shell{max-width:1440px;padding:0 24px}
#app .topbar{height:72px;gap:14px}
#app .brand-word{font-size:29px}
#app .brand-mark{width:34px;height:43px}
#app .brand-sub{font-size:11px;letter-spacing:1.5px;margin-top:5px}
#app .brand-sub span{font-size:10px}
#app .game-grid{grid-template-columns:236px minmax(0,1fr);gap:18px;padding:16px 0}
#app .sidebar{padding:15px 14px 10px}
#app .blind-heading{padding-bottom:10px}
#app .blind-heading h1{font-size:22px;letter-spacing:0}
#app .eyebrow{font-size:11px;letter-spacing:1px}
#app .target-block{padding:12px 0;gap:3px}
#app .target-block>span:first-child{font-size:13px;letter-spacing:.5px}
#app .target-block>strong{font-size:38px}
#app .reward-label{font-size:12px}
#app .score-block{padding:10px 12px}
#app .section-caption{font-size:13px}
#app .section-caption>span{display:none}
#app .round-score{font-size:34px;line-height:1.5;font-variant-numeric:tabular-nums}
#app .hand-score-block{margin-top:12px}
#app .hand-type{margin-bottom:8px;gap:6px;flex-wrap:wrap}
#app .hand-type>span{font-size:19px}
#app .hand-type small{font-size:12px}
#app .chips-box>span,#app .mult-box>span{font-size:12px}
#app .chips-box b,#app .mult-box b{font-size:26px}
#app .estimated{font-size:12px;min-height:32px;height:auto;gap:5px}
#app .estimated b{font-size:16px}
#app .stat{padding:10px 5px;gap:5px}
#app .stat>span{font-size:13px}
#app .stat>strong{font-size:25px}
#app .stat small{font-size:12px}
#app .money-stat{padding:10px 5px}
#app .sidebar-buttons{margin-top:11px;gap:6px}
#app .subtle-button{font-size:12px;min-height:32px;padding:7px 8px}
#app .subtle-button b{font-size:12px}
#app .seed-button{font-size:11px;padding-top:10px}
#app .seed-button span{font-size:11px}
#app .inventory{padding:0 0 12px;gap:16px}
#app .inventory-heading{font-size:13px;margin-bottom:6px;height:22px}
#app .inventory-heading b,#app .inventory-heading i{font-size:12px}
#app .inventory-heading small{font-size:11px;letter-spacing:0}
#app .joker-rack{max-width:600px;gap:9px}
#app .empty-joker,#app .joker-card{height:108px}
#app .empty-joker{gap:8px}
#app .empty-joker>small{font-size:11px;letter-spacing:0}
#app .empty-joker:first-child>small{font-size:11px}
#app .joker-card{padding:3px 3px 0;overflow:visible}
#app .joker-card-label{display:none}
#app .joker-card .card-art{height:70px}
#app .joker-card-name{font-size:12px;line-height:15px;white-space:normal;min-height:31px;padding:2px 1px;margin:1px -3px 0;border-radius:0 0 3px 3px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;letter-spacing:0}
#app .consumable-inventory{width:133px;padding-left:14px}
#app .empty-consumable{height:74px;margin-top:13px}
#app .consumable-card{height:85px;margin-top:9px}
#app .consumable-card .card-art{height:59px}
#app .consumable-card>span{font-size:11px;line-height:17px}
#app .arena{min-height:245px;flex:0 0 auto}
#app .arena-content{min-height:244px;padding:36px 18px 18px}
#app .arena-topline{padding:10px 14px;font-size:12px}
#app .arena-topline>span:first-child{font-size:10px;letter-spacing:1px}
#app .arena-topline .boss-hint{font-size:12px}
#app .table-watermark h2{font-size:25px;letter-spacing:1px}
#app .table-watermark p{font-size:14px;letter-spacing:0}
#app .watermark-line{margin-top:14px;font-size:10px}
#app .hand-panel{padding:13px 0 0}
#app .hand-toolbar{margin-bottom:22px}
#app .hand-toolbar .section-caption{font-size:14px;letter-spacing:0}
#app .hand-toolbar>div>b{font-size:14px}
#app .hand-toolbar>div>b>span{font-size:12px}
#app .sort-control>span,#app .sort-control button{font-size:12px}
#app .sort-control button{padding:5px 9px;min-height:29px}
#app .hand-and-deck{min-height:124px;gap:18px}
#app .hand-cards>.playing-card{width:clamp(52px,6vw,83px);max-width:83px;aspect-ratio:2/3}
#app .card-corner b{font-size:20px}
#app .card-corner>span{font-size:16px}
#app .draw-deck{width:42px;gap:10px}
#app .deck-back{width:38px;height:57px;border-width:2px}
#app .deck-back i{width:27px;height:42px;font-size:23px}
#app .draw-deck>span:last-child{font-size:11px;white-space:nowrap}
#app .draw-deck>span:last-child>b{font-size:15px}
#app .hand-actions{margin-top:13px;gap:12px;min-height:40px;flex-wrap:wrap}
#app .action-buttons>.button{font-size:15px;min-width:116px;min-height:42px;padding:9px 16px}
#app .action-buttons kbd{font-size:11px}
#app .selection-hint{font-size:13px;gap:9px;max-width:none}
#app .selection-hint b{font-size:15px}
#app .selection-hint span{color:#b3c6ad}
#app .clear-selection{width:28px;height:28px;font-size:19px}
#app .played-label{font-size:15px;margin-bottom:10px}
#app .played-label>span{font-size:12px}
#app .played-cards{gap:10px}
#app .played-cards .playing-card{width:64px;height:92px}
#app .played-cards .card-corner b{font-size:17px}
#app .played-cards .card-corner>span{font-size:13px}
#app .last-result{margin-top:12px}
#app .last-result>span{font-size:28px}
#app .last-result small{font-size:13px}
#app .blind-selection{padding:36px 18px 17px}
#app .section-intro>.eyebrow{display:none}
#app .section-intro h2{font-size:24px;margin-top:4px;letter-spacing:0}
#app .section-intro p{font-size:13px;margin-top:6px;letter-spacing:0}
#app .blind-choices{gap:12px;margin-top:16px}
#app .blind-choice{padding:10px 11px 5px}
#app .blind-choice-top,#app .blind-choice-top>span{font-size:11px;letter-spacing:0}
#app .blind-badge.large{width:55px;height:55px;margin:11px auto 9px}
#app .blind-badge.large>span{width:44px;height:44px;font-size:29px}
#app .blind-choice h3{font-size:18px;letter-spacing:0}
#app .blind-target{font-size:28px;margin-top:5px}
#app .blind-target small{font-size:12px}
#app .blind-choice p{font-size:12px;line-height:1.6;height:auto;min-height:42px;margin:5px 0 8px}
#app .blind-choice .button{font-size:13px;min-height:37px}
#app .skip-button,#app .no-skip,#app .blind-locked{font-size:12px}
#app .blind-locked{min-height:63px}
#app .starter-tip{margin-top:12px;align-items:baseline}
#app .starter-tip>span{font-size:12px;max-width:none}
#app .table-bottom-note{flex:0 0 auto;min-height:44px}
#app .table-bottom-note p{font-size:12px;letter-spacing:0}
#app .footer{min-height:40px;font-size:11px}
#app .footer>span:last-child,#app .keyboard-hints{font-size:10px}
#app .topbar :is(.deck-tag,.autosave,.new-run-button,.profile-button,.mode-pill){font-size:12px}
#app .topbar .language-button{font-size:12px;min-width:35px;height:34px}
#app .topbar .icon-button{width:34px;height:34px}
#app .shop-content{padding:36px 17px 16px}
#app .shop-arena{min-height:0}
#app .shop-heading{margin-bottom:15px}
#app .shop-heading h2{font-size:22px}
#app .shop-heading .eyebrow{font-size:11px}
#app .shop-heading .next-round{font-size:13px;min-height:37px}
#app .shop-art{width:78px;height:105px;margin-bottom:9px}
#app .rarity{font-size:11px;letter-spacing:0}
#app .shop-item h3{font-size:15px;letter-spacing:0}
#app .shop-item p{font-size:13px;line-height:1.6;min-height:42px;margin:6px 0 9px}
#app .shop-item .buy-button{font-size:13px;min-height:36px}
#app .shop-item .buy-button b{font-size:16px}
#app .voucher-offer h3,#app .booster-offer b{font-size:13px}
#app .voucher-offer p,#app .booster-offer small{font-size:12px}
#app .voucher-offer .button,#app .shop-footer .button{font-size:12px;min-height:34px}
#app .shop-footer>span{font-size:12px}
#app .result-eyebrow{font-size:11px}
#app .result-panel>p,#app .payout-lines>span{font-size:14px}
#app .payout-lines small{font-size:11px}
#app .run-summary>span{font-size:12px}
#app .result-panel .text-button{font-size:13px}
#modal-root :is(.modal-subtitle,.help-step p,.help-note,.seed-label,.privacy-note,.text-button,.breakdown-events>div,.board-controls label,.leaderboard-row){font-size:14px;line-height:1.65}
#modal-root :is(.help-step h3,.seed-label small,.board-controls select,.leaderboard-row time,.hand-table-row small,.hand-table-row>span.level-badge){font-size:12px}
#modal-root :is(.button,.help-lead,.breakdown-events>div>b,.breakdown-total){font-size:14px}
#modal-root .modal>h2{font-size:24px;line-height:1.4}
#modal-root .seed-input{font-size:15px}
#toast{font-size:14px}

/* The rule stays visible while choosing cards; invalid plays explain how to fix them. */
.round-notice{display:flex;align-items:center;gap:12px;padding:12px 14px;margin-bottom:12px;border:1px solid #d5ad63a6;border-left:4px solid var(--gold);border-radius:7px;background:linear-gradient(110deg,#a17c302b,#153c30);box-shadow:0 3px 0 #092e2740}
.rule-symbol{display:flex;align-items:center;justify-content:center;flex:0 0 29px;height:29px;border:1px solid #e4bd76;border-radius:50%;font:700 19px var(--mono);color:#ffe0a3}
.rule-copy{flex:1;min-width:0}
.rule-heading{display:flex;gap:10px;align-items:center;margin-bottom:3px;color:#ebc888;font-size:12px}
.rule-heading b{font-weight:500;color:#bdc5a7}
.rule-copy>strong{display:block;font-size:17px;line-height:1.45;color:#fff0c9}
.rule-copy p{font-size:13px;line-height:1.6;color:#c1cbb4;margin-top:4px}
.rule-tags{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap;max-width:42%}
.rule-tags>span{font-size:12px;color:#c7bc99;flex-basis:100%;text-align:right}
.rule-tags b{font-size:13px;font-weight:600;padding:4px 8px;border:1px solid #c7b77760;border-radius:4px;background:#e6c88a15;color:#ffe4a2}
.rule-tags .used-hand{color:#ffc3a7;border-color:#ce8c6866;background:#9b4b302b}
.round-notice.has-error{border-color:#ec9a77;background:linear-gradient(110deg,#ac563b44,#153c30)}
.play-warning{display:flex;gap:9px;align-items:center;margin:12px 0 0;padding:10px 12px;border:1px solid #e3a07b80;background:#a958382b;border-radius:5px;color:#ffcfb4;font-size:14px;line-height:1.5}
.play-warning svg{width:20px;height:20px;flex-shrink:0}
.play-warning b{font-weight:600}
.play-warning small{display:block;font-size:12px;color:#d4bcaa;margin-top:3px}

/* Each score event highlights its source and updates the real chips/mult snapshots. */
#app .arena.is-scoring .arena-content{padding-top:36px;padding-bottom:12px}
#app .is-scoring .played-hand{width:100%}
.scoring-panel{width:min(440px,100%);margin-top:14px}
.scoring-phases{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}
.scoring-phases>span{padding:6px 3px;border-top:2px solid #83a4803b;font-size:12px;color:#99b096;text-align:center}
.scoring-phases>.current{border-color:#efd093;color:#f8db9d;background:#debd7610}
.scoring-event{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:42px;padding:9px 10px;margin-top:7px;background:#092e2877;border-radius:5px;font-size:15px;color:#e6dfbe;animation:score-event-in .22s ease}
.scoring-event>strong{font:600 17px var(--mono);color:#f4d492;white-space:nowrap}
.scoring-formula{display:flex;align-items:center;justify-content:center;gap:13px;padding:12px 0 6px;font:22px var(--mono);color:#a7b8a1}
.scoring-formula>b{font-size:27px;animation:pop .28s ease;font-variant-numeric:tabular-nums}
.scoring-controls{display:flex;justify-content:space-between;align-items:center;padding:2px 3px;font:11px var(--mono);color:#99ad94}
.scoring-controls button{display:flex;align-items:center;gap:3px;background:none;color:#dcc48b;padding:7px 3px;font:12px var(--sans)}
.scoring-controls svg{width:13px;height:13px}
#app .is-triggering{outline:3px solid #ffe6a5;outline-offset:3px;z-index:3;animation:score-source .32s ease;filter:drop-shadow(0 0 10px #f6cf6b55)}
#app:has(.is-scoring) .calculation b{animation:pop .28s ease}
@keyframes score-source{0%,100%{translate:0 -3px}50%{translate:0 -11px}}
@keyframes score-event-in{from{opacity:.3;translate:0 5px}to{opacity:1;translate:0 0}}

@media(min-width:681px) and (max-width:1050px){
  #app .app-shell{padding:0 16px}
  #app .game-grid{grid-template-columns:210px minmax(0,1fr);gap:14px}
  #app .topbar-middle{display:none}
  #app .sidebar{padding:13px 11px 9px}
  #app .inventory{gap:10px}
  #app .consumable-inventory{width:102px;padding-left:10px}
  #app .joker-rack{gap:6px}
  #app .joker-card-name{font-size:11px}
  #app .empty-joker>small{font-size:10px}
  #app .blind-choices{gap:7px}
  #app .blind-choice{padding:9px 7px 4px}
  #app .blind-choice h3{font-size:15px}
  #app .blind-choice p{font-size:12px}
  #app .blind-choice .button{font-size:12px}
  .round-notice{flex-wrap:wrap;gap:9px}
  .rule-tags{max-width:none;flex-basis:100%;justify-content:flex-start;padding-left:38px}
  .rule-tags>span{flex-basis:auto;text-align:left}
  #app .hand-actions{gap:8px}
  #app .selection-hint{font-size:12px}
}
@media(max-width:680px){
  #app .app-shell{padding:0 10px}
  #app .topbar{height:60px;gap:5px}
  #app .topbar .brand{gap:6px}
  #app .topbar .brand-word{font-size:23px}
  #app .topbar .brand-mark{width:25px;height:33px}
  #app .topbar .brand-sub{display:none}
  #app .topbar-actions{gap:0}
  #app .topbar .language-button{font-size:12px;min-width:31px;height:32px;padding:4px}
  #app .topbar .icon-button{width:31px;height:32px}
  #app .topbar .profile-button{padding:3px 4px}
  #app .topbar .new-run-button{width:31px;height:32px;margin:0;padding:7px}
  #app .game-grid{display:flex;gap:11px;padding:10px 0 12px}
  #app .sidebar{padding:10px;grid-template-columns:1fr 1fr 1.25fr;gap:0 10px}
  #app .blind-heading{padding:0;gap:6px}
  #app .blind-heading .eyebrow{display:none}
  #app .blind-heading h1{font-size:17px;margin:0}
  #app .blind-heading .blind-badge{width:27px;height:27px}
  #app .blind-heading .blind-badge>span{width:22px;height:22px;font-size:16px}
  #app .target-block{padding:7px 0 0;gap:2px}
  #app .target-block>span:first-child{font-size:12px}
  #app .target-block>strong{font-size:29px}
  #app .score-block{padding:7px;min-height:86px}
  #app .section-caption{font-size:12px;letter-spacing:0}
  #app .round-score{font-size:28px;line-height:1.9}
  #app .hand-score-block{margin:0}
  #app .hand-type{gap:3px;margin:0 0 5px}
  #app .hand-type>span{font-size:15px;letter-spacing:0}
  #app .hand-type small{font-size:11px}
  #app .calculation{grid-template-columns:1fr 12px 1fr}
  #app .chips-box,#app .mult-box{padding:5px 4px}
  #app .chips-box>span,#app .mult-box>span{font-size:11px}
  #app .chips-box b,#app .mult-box b{font-size:21px;letter-spacing:-.5px}
  #app .estimated{font-size:11px;min-height:24px;line-height:1.4;flex-wrap:wrap;gap:3px}
  #app .estimated b{font-size:13px}
  #app .stat-grid{margin-top:8px;padding-top:7px}
  #app .stat{gap:3px;padding:0 5px!important}
  #app .stat>span{font-size:12px}
  #app .stat>strong{font-size:22px}
  #app .stat small{font-size:10px}
  #app .sidebar-buttons{grid-column:1/-1;margin-top:9px;gap:7px}
  #app .subtle-button{font-size:12px;padding:5px 8px;min-height:31px;flex:1 1 auto}
  #app .subtle-button svg{width:13px;height:13px}
  #app .subtle-button b{font-size:11px}
  #app .sidebar .submit-button{font-size:11px;flex-basis:auto}
  #app .seed-button{display:none}
  #app .inventory{padding:0 0 10px;gap:9px}
  #app .inventory-heading{font-size:12px;margin-bottom:5px;height:20px}
  #app .inventory-heading b,#app .inventory-heading i{font-size:11px;margin-left:2px}
  #app .consumable-inventory{width:82px;padding-left:8px}
  #app .joker-rack{gap:5px}
  #app .empty-joker,#app .joker-card{height:80px;border-radius:4px}
  #app .empty-joker{gap:0}
  #app .empty-joker>small{display:none}
  #app .empty-joker>span{font-size:24px}
  #app .joker-card{padding:2px 2px 0}
  #app .joker-card .card-art{height:45px}
  #app .joker-card-name{font-size:11px;line-height:14px;min-height:29px;padding:1px 0;margin:0 -2px}
  #app .empty-consumable{height:55px;margin-top:12px}
  #app .consumable-card{height:66px;margin-top:7px;padding:2px}
  #app .consumable-card .card-art{height:40px}
  #app .consumable-card>span{font-size:11px;line-height:15px}
  #app .arena{min-height:180px}
  #app .arena-content{min-height:179px;padding:33px 12px 15px}
  #app .arena-topline{padding:9px 11px;font-size:11px}
  #app .arena-topline>span:first-child{font-size:9px}
  #app .arena-topline .boss-hint{font-size:11px}
  #app .table-watermark h2{font-size:21px;letter-spacing:0;margin:8px 0}
  #app .table-watermark p{font-size:13px}
  #app .watermark-suits{font-size:24px}
  #app .watermark-line{display:none}
  #app .hand-panel{padding-top:10px}
  #app .hand-toolbar{margin-bottom:12px}
  #app .hand-toolbar .section-caption,#app .hand-toolbar>div>b{font-size:13px}
  #app .sort-control>span{display:none}
  #app .sort-control button{font-size:12px;min-height:30px;padding:5px 8px}
  #app .hand-and-deck{min-height:92px;gap:12px;align-items:center}
  #app .hand-cards{--card-width:clamp(56px,16vw,76px);display:flex;isolation:isolate;gap:0;padding:22px 4px 7px;align-items:center;justify-content:center}
  /* A card's layer follows its hand position, including sticky touch hover. */
  #app .hand-cards>.playing-card{width:var(--card-width);height:auto;max-width:none;min-width:0;flex:0 0 var(--card-width);aspect-ratio:2/3;margin:0 min(6px,calc((100% - var(--hand-count) * var(--card-width)) / max(1,var(--hand-count) - 1))) 0 0;z-index:calc(var(--card-index) + 1);touch-action:manipulation}
  #app .hand-cards>.playing-card:last-child{margin-right:0}
  #app .hand-cards>button.playing-card:hover{transform:none;z-index:calc(var(--card-index) + 1)}
  #app .hand-cards>button.playing-card.selected,#app .hand-cards>button.playing-card.selected:hover{transform:translateY(-18px);outline-offset:2px;box-shadow:0 3px 0 #d3bc83,0 5px 8px #09291e40;z-index:calc(var(--card-index) + 1)}
  #app .card-corner b{font-size:18px;letter-spacing:-.5px}
  #app .card-corner>span{font-size:14px;margin-top:3px}
  #app .card-corner.top{top:5px;left:4px}
  #app .card-corner.bottom{bottom:5px;right:4px}
  #app .pips{font-size:14px}
  #app .draw-deck{width:27px;margin-right:4px;gap:9px}
  #app .deck-back{width:25px;height:38px}
  #app .deck-back i{width:17px;height:27px;font-size:16px}
  #app .draw-deck>span:last-child{font-size:10px;margin-left:0}
  #app .draw-deck>span:last-child>b{font-size:13px}
  #app .hand-actions{gap:8px;margin-top:11px}
  #app .action-buttons{gap:8px}
  #app .action-buttons>.button{font-size:15px;min-width:97px;min-height:42px;padding:9px 14px;gap:9px}
  #app .selection-hint{font-size:12px;justify-content:flex-start;text-align:left;gap:8px;width:100%;margin-top:3px}
  #app .selection-hint b{font-size:14px}
  #app .played-label{font-size:14px;margin-bottom:10px}
  #app .played-cards{gap:8px}
  #app .played-cards .playing-card{width:49px;height:73px}
  #app .played-cards .card-corner b{font-size:14px}
  #app .played-cards .card-corner>span{font-size:11px}
  #app .last-result>span{font-size:25px}
  #app .last-result small{font-size:12px}
  #app .blind-selection{padding:33px 10px 12px}
  #app .section-intro h2{font-size:21px;margin-top:3px}
  #app .section-intro p{font-size:12px;line-height:1.6}
  #app .blind-choices{grid-template-columns:1fr;gap:7px;margin-top:12px}
  #app .blind-choice{display:grid;grid-template-columns:38px minmax(0,1fr) 93px;gap:3px 9px;text-align:left;padding:9px 10px}
  #app .blind-choice-top{grid-column:2;grid-row:1;font-size:11px;justify-content:flex-start;gap:10px}
  #app .blind-choice-top>span{font-size:11px}
  #app .blind-choice .blind-badge.large{grid-column:1;grid-row:1/3;width:35px;height:35px;margin:0}
  #app .blind-choice .blind-badge.large>span{width:28px;height:28px;border-width:2px;font-size:20px}
  #app .blind-choice h3{grid-column:2;grid-row:2;font-size:17px}
  #app .blind-target{grid-column:3;grid-row:1/3;font-size:25px;margin:0;text-align:right}
  #app .blind-target small{display:none}
  #app .blind-choice p{grid-column:2/4;grid-row:3;font-size:12px;min-height:0;margin:3px 0 5px;justify-content:flex-start}
  #app .blind-choice .button{grid-column:2;grid-row:4;font-size:13px;min-height:37px;width:100%;padding:8px}
  #app .skip-button,#app .no-skip{grid-column:3;grid-row:4;font-size:12px;padding:6px 0;text-align:right;line-height:1.4}
  #app .blind-choice:not(.current) p,#app .blind-locked{display:none}
  #app .starter-tip>span{font-size:12px}
  #app .table-bottom-note{display:none}
  #app .footer{font-size:11px;min-height:34px}
  #app .footer>span:last-child{display:none}
  #app .shop-heading h2{font-size:18px}
  #app .shop-heading .eyebrow{font-size:11px}
  #app .shop-heading .next-round{font-size:12px;padding:8px}
  #app .shop-products{grid-template-columns:1fr;gap:8px}
  #app .shop-products .shop-item{display:grid;grid-template-columns:57px minmax(0,1fr) 70px;gap:4px 10px;text-align:left;padding:10px}
  #app .shop-products .shop-art{grid-column:1;grid-row:1/4;width:53px;height:76px;margin:0;transform:none}
  #app .shop-products .rarity{grid-column:2;grid-row:1;justify-self:center;font-size:11px}
  #app .shop-products h3{grid-column:2;grid-row:2;font-size:15px;margin:0}
  #app .shop-products p{grid-column:2;grid-row:3;font-size:13px;min-height:0;margin:0}
  #app .shop-products .buy-button{grid-column:3;grid-row:1/4;font-size:12px;min-height:37px;padding:8px}
  #app .shop-extras{gap:8px}
  #app .voucher-offer{grid-template-columns:28px 1fr;gap:4px 8px}
  #app .voucher-offer>.button{grid-column:2;grid-row:3;font-size:12px}
  #app .voucher-offer h3,#app .booster-offer b{font-size:12px}
  #app .voucher-offer p,#app .booster-offer small{font-size:12px}
  #app .booster-offer{width:126px}
  #app .shop-footer{flex-wrap:wrap;gap:10px}
  #app .shop-footer>span{font-size:12px;max-width:none;text-align:left}
  #app .payout-lines small{font-size:11px;max-width:140px;text-align:left}
  #app .run-summary>span{font-size:12px}
  #modal-root .modal{padding:16px 18px 20px}
  #modal-root .modal>h2{font-size:22px}
  .round-notice{padding:10px;gap:8px;flex-wrap:wrap;margin-bottom:10px;align-items:flex-start}
  .rule-symbol{flex-basis:24px;height:24px;font-size:16px}
  .rule-copy>strong{font-size:16px}
  .rule-copy p{font-size:13px}
  .rule-heading{font-size:12px}
  .rule-tags{max-width:none;justify-content:flex-start;flex-basis:100%;padding-left:32px}
  .rule-tags>span{flex-basis:auto;text-align:left;font-size:12px}
  .rule-tags b{font-size:13px;padding:4px 7px}
  .play-warning{font-size:14px;padding:9px 10px}
  .scoring-panel{margin-top:12px}
  .scoring-phases>span{font-size:11px;padding:5px 2px}
  .scoring-event{font-size:14px;min-height:42px}
  .scoring-event>strong{font-size:16px}
  .scoring-formula{font-size:17px;gap:10px;padding-top:10px}
  .scoring-formula>b{font-size:24px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(min-width:681px){
  #app .blind-heading{min-height:47px;padding-bottom:8px}
  #app .blind-heading .eyebrow{display:none}
  #app .blind-heading .blind-badge{width:38px;height:38px}
  #app .blind-heading .blind-badge>span{width:30px;height:30px;font-size:22px;border-width:2px}
  #app .blind-heading h1{margin:0;font-size:21px}
  #app .target-block{display:grid;grid-template-columns:1fr auto;gap:3px 7px;padding:11px 0;text-align:left;align-items:center}
  #app .target-block>span:first-child{grid-column:1;grid-row:1;letter-spacing:0}
  #app .target-block>strong{grid-column:2;grid-row:1/3;font-size:34px;line-height:1}
  #app .reward-label{grid-column:1;grid-row:2;font-size:11px}
  #app .reward-label b{font-size:12px;margin-left:3px}
  #app .stat-grid{grid-template-columns:repeat(6,minmax(0,1fr));margin-top:3px}
  #app .stat{grid-column:span 2;align-items:center;padding:8px 3px;gap:4px;border-left:0;line-height:1.25}
  #app .stat>span{font-size:12px}
  #app .stat>strong{font-size:23px}
  #app .stat.money-stat{grid-column:span 2;flex-direction:column;justify-content:start}
  #app .stat:nth-child(4),#app .stat:nth-child(5){grid-column:span 3;flex-direction:row;justify-content:space-between;padding:8px 9px}
  #app .sidebar-buttons{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:9px}
  #app .sidebar-buttons .submit-button{grid-column:1/-1}
  #app .subtle-button{line-height:1.3}
  #app .seed-button{padding-top:8px;height:23px}
  #app .inventory{padding-bottom:10px}
  #app .inventory-heading{height:20px;margin-bottom:5px}
  #app .empty-joker,#app .joker-card{height:92px}
  #app .joker-card .card-art{height:54px}
  #app .empty-consumable{height:65px;margin-top:8px}
  #app .consumable-card{height:77px;margin-top:6px}
  #app .consumable-card .card-art{height:51px}
  #app .consumable-inventory{width:149px}
  #app .arena{min-height:205px}
  #app .arena-content{min-height:204px}
  #app .hand-and-deck{min-height:113px}
  #app .hand-cards>.playing-card{width:clamp(52px,5.8vw,75px);max-width:75px}
  #app .hand-panel{padding-top:10px}
  #app .hand-toolbar{margin-bottom:20px}
  #app .hand-actions{margin-top:10px}
}
@media(min-width:681px) and (max-height:800px){
  #app .footer{display:none}
  #app .game-grid{padding:12px 0}
}
#app .arena:has(.table-watermark){min-height:153px}
#app .arena:has(.table-watermark) .arena-content{min-height:152px;padding-top:32px;padding-bottom:12px}
#app .arena:has(.table-watermark) .watermark-suits{display:none}
#app .arena:has(.table-watermark) .watermark-line{display:none}
#app .table:has(.round-notice) .arena:has(.table-watermark){min-height:133px}
#app .table:has(.round-notice) .arena:has(.table-watermark) .arena-content{min-height:132px}
@media(max-width:680px){
  #app .blind-heading .blind-badge{display:none}
  #app .blind-heading h1{font-size:16px;line-height:1.3}
  #app .empty-joker,#app .joker-card{height:72px}
  #app .joker-card .card-art{height:37px}
  #app .empty-consumable{height:50px;margin-top:9px}
  #app .consumable-card{height:61px;margin-top:5px}
  #app .consumable-card .card-art{height:35px}
}
#app .consumable-inventory .inventory-heading{height:auto;min-height:20px;line-height:1.3}
#app .consumable-inventory .inventory-heading>span{display:flex;flex-wrap:wrap;gap:2px 4px}
#app .consumable-inventory .inventory-heading b{margin-left:0;white-space:nowrap}
#app .empty-joker>small{display:none}
@media(max-width:680px){
  html[lang=en] #app .consumable-inventory{width:99px}
}
#app .app-shell:is([data-phase=blind],[data-phase=shop]) .hand-score-block{display:none}
#app .joker-rack:not(:has(.joker-card)) .empty-joker{height:59px}
#app .consumable-rack:not(:has(.consumable-card)) .empty-consumable{height:43px;margin-top:0}
#modal-root .leaderboard-row strong{font-size:17px}
#modal-root .board-head,#modal-root .rank-number{font-size:13px}
@media(max-width:680px){
  #app .app-shell:is([data-phase=blind],[data-phase=shop]) .sidebar{grid-template-columns:1fr 1fr}
  #app .joker-rack:not(:has(.joker-card)) .empty-joker{height:43px}
  #modal-root .leaderboard-row strong{font-size:14px}
}
@media(max-width:680px){
  #modal-root .leaderboard-row{grid-template-columns:20px minmax(0,1.2fr) minmax(0,1fr) 40px}
  #modal-root .board-head{font-size:13px;white-space:nowrap}
}

/* Card artwork shares one proportional canvas, with clear corner and center zones. */
.playing-card-art{position:absolute;inset:0;width:100%;height:100%;display:block;overflow:visible;pointer-events:none}

/* Keep the restriction readable in one compact strip when space permits. */
.round-notice{padding:8px 11px;gap:9px;margin-bottom:8px;align-items:center;flex-wrap:nowrap}
.rule-symbol{flex-basis:23px;height:23px;font-size:15px}
.rule-copy{display:flex;align-items:baseline;flex-wrap:wrap;gap:3px 10px}
.rule-heading{display:inline-flex;gap:7px;margin:0;font-size:11px;line-height:1.4}
.rule-copy>strong{font-size:15px;line-height:1.4}
.rule-copy p{font-size:12px;line-height:1.5;margin:0}
.rule-tags{gap:5px;max-width:38%;flex-basis:auto;padding-left:0;justify-content:flex-end}
.rule-tags>span{flex-basis:auto;font-size:11px;white-space:nowrap}
.rule-tags b{font-size:12px;padding:3px 6px;white-space:nowrap}
@media(max-width:680px){
  .round-notice{padding:7px 9px;gap:7px;flex-wrap:wrap;align-items:center}
  .rule-copy{gap:2px 8px}
  .rule-heading{font-size:12px}
  .rule-heading>span{display:none}
  .rule-copy>strong{font-size:15px}
  .rule-copy p{font-size:12px;line-height:1.45}
  .rule-tags{max-width:none;flex-basis:100%;justify-content:flex-start;padding-left:30px;gap:5px}
  .rule-tags>span{font-size:11px}
}

/* Hover and keyboard focus share a single anchored joker menu. Touch keeps the dialog. */
.joker-slot{position:relative;min-width:0}
#app .joker-slot>.joker-card{width:100%;display:block}
.joker-slot.popover-open{z-index:80}
.joker-popover{position:absolute;left:0;top:calc(100% + 9px);width:296px;max-width:calc(100vw - 28px);padding:14px;border:1px solid #b5c39b99;border-radius:8px;background:linear-gradient(145deg,#315440,#163c30);box-shadow:0 8px 28px #031e18b3,0 3px 0 #0b2c22;color:var(--cream);text-align:left;z-index:80}
.joker-popover[hidden]{display:none!important}
.joker-popover:before{content:"";position:absolute;left:0;right:0;top:-18px;height:18px}
.joker-slot:nth-child(n+4) .joker-popover{left:auto;right:0}
.joker-popover-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px}
.joker-popover-heading>strong{font-size:17px;line-height:1.35}
.joker-popover-heading>span{font-size:11px;color:#c5c49d;white-space:nowrap}
.joker-popover>p{font-size:14px;line-height:1.65;color:#e2dec1;margin:0}
.joker-popover>.joker-growth{font-size:12px;color:#c5c49d;margin-top:7px}
.joker-popover-order{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;margin-top:14px}
.joker-popover-order>span{font:11px var(--mono);color:#afbf9e;white-space:nowrap}
#app .joker-popover .button{font-size:12px;letter-spacing:0;min-height:32px;padding:7px 9px;gap:5px;box-shadow:0 2px 0 #092c2570;white-space:nowrap}
#app .joker-popover .button b{font-size:14px;font-family:var(--mono)}
.joker-popover-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding-top:11px;border-top:1px solid var(--border)}
.joker-popover-footer>small{font-size:11px;line-height:1.4;color:#a9bd9b}
@media(hover:none),(pointer:coarse){.joker-popover{display:none!important}}

/* Rarity always has a readable label as well as a distinct color. */
.rarity{display:inline-flex;align-items:center;align-self:start;gap:4px;padding:3px 7px;border:1px solid;border-radius:4px;font-size:12px;line-height:1.35;letter-spacing:0;width:fit-content}
#app .shop-item>.rarity{align-self:center;margin-inline:auto;justify-content:center;text-align:center}
.rarity.rarity-common{color:#c1e0ff;background:#4582ba24;border-color:#78a8db80}
.rarity.rarity-uncommon{color:#b4efb7;background:#4aa35c24;border-color:#83c88c80}
.rarity.rarity-rare{color:#ffc2b5;background:#d76a5a24;border-color:#ed948380}
.rarity.rarity-planet{color:#f5dc9b;background:#bc9b4924;border-color:#cfb26b80}
.rarity.rarity-tarot{color:#e6c9ff;background:#a37ac624;border-color:#c69ce080}
#app .rarity-card-uncommon{border-color:#83c88c}
#app .rarity-card-rare{border-color:#ed9483}
.consumable-slot{position:relative;min-width:0}
.consumable-slot.popover-open{z-index:80}
#app .consumable-slot>.consumable-card{width:100%;display:block}
.consumable-popover{left:auto;right:0}
.joker-popover>.consumable-hint{font-size:12px;color:#c9c9a4;margin-top:10px}
.consumable-actions{display:flex;gap:9px;margin-top:13px}
.consumable-actions>.button{flex:1;justify-content:center}
.audio-toggle{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:20px 0 12px;font-size:15px;font-weight:600}
.audio-toggle label{cursor:pointer}
.audio-toggle input{width:20px;height:20px;accent-color:#e2be70;cursor:pointer}
.music-tracks{display:grid;gap:8px}
.music-track{display:flex;align-items:center;gap:13px;width:100%;padding:10px 12px;border:1px solid #9fb68a50;border-radius:6px;background:#143c3033;color:var(--cream);text-align:left}
.music-track:hover{background:#50734b55}
.music-track.chosen{border-color:#e0bd76;background:#6d794c45;box-shadow:inset 3px 0 #e0bd76}
.music-track>span:nth-child(2){flex:1;min-width:0}
.music-track b{display:block;font-size:15px;margin-bottom:5px}
.music-track small{display:block;font-size:12px;color:#b2c1a1}
.music-track .track-number{font:14px var(--mono);color:#a2b58d}
.music-track svg{width:19px;height:19px;color:#e0bd76}
.volume-row{display:grid;grid-template-columns:75px 1fr 42px;gap:12px;align-items:center;margin:16px 0;font-size:14px}
.volume-row input{width:100%;accent-color:#e0bd76;cursor:pointer}
.volume-row output{text-align:right;font:13px var(--mono);color:#d8c991}
.sound-previews{display:flex;align-items:center;gap:8px;margin-top:18px;font-size:13px}
.sound-previews>span{margin-right:4px;color:#b2c1a1}
#modal-root .sound-previews .button{min-height:34px;padding:7px 12px;font-size:13px}
.audio-status{display:flex;align-items:center;gap:8px;margin:22px 0 0;font-size:13px;color:#c1d4a3}
.audio-status i{width:6px;height:6px;background:#b4d69b;border-radius:50%}
#modal-root .audio-modal>h2{margin:16px 0}
#modal-root .audio-modal .modal-subtitle{font-size:13px;margin-bottom:14px}
#modal-root .audio-modal .audio-toggle{margin:13px 0 10px}
#modal-root .audio-modal .volume-row{margin:12px 0}
#modal-root .audio-modal .sound-previews{margin-top:13px}
#modal-root .audio-modal .audio-status{margin-top:15px}
#modal-root .audio-modal .privacy-note{font-size:12px;margin:10px 0 0}
/* Keep active bonuses brief; previous consumptions are available on demand. */
#modal-root .bonuses-modal{width:560px;max-width:100%}
#modal-root .bonuses-modal>h2{margin:16px 0 18px}
.bonus-section{margin-top:16px}
.bonus-section:first-child{margin-top:0}
.bonus-section h3{margin:0;padding-bottom:8px;border-bottom:1px solid var(--border);font-size:12px;font-weight:500;color:#b7c6a4}
.bonus-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;font-size:14px;line-height:1.45}
.bonus-row>span{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.bonus-row>span:last-child{justify-content:flex-end;text-align:right}
.bonus-row b{font-weight:600}
.bonus-row small{font:12px var(--mono);color:#adc19b}
.bonus-enhancement+.bonus-enhancement{margin-top:3px}
.bonus-card-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:-2px;margin-bottom:8px}
.bonus-card-tags>span{padding:3px 7px;background:#bbcca00c;border:1px solid #b1c49e30;border-radius:4px;font:13px var(--mono)}
.bonus-note{font-size:12px;color:#a8bc97;line-height:1.6;margin:14px 0 0}
.bonus-empty{font-size:14px;color:#b7c6a4;padding:10px 0}
.bonus-history{border-top:1px solid var(--border);margin-top:16px;padding-top:12px;font-size:13px}
.bonus-history summary{cursor:pointer;color:#c7ceb0;line-height:1.5}
.bonus-history summary>span{font:11px var(--mono);margin-left:5px;color:#9cb68b}
.bonus-history>div{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}
.bonus-history>div>span{display:flex;gap:9px;align-items:center;border:1px solid #b1c49e25;border-radius:4px;padding:6px 8px;font-size:12px}
.bonus-history small{font:12px var(--mono);color:#b2c49c}
#modal-root .leaderboard-row{grid-template-columns:24px minmax(0,1.2fr) minmax(0,.85fr) 36px 66px minmax(0,1fr);gap:10px}
.board-duration{font:13px var(--mono);white-space:nowrap;color:#d5d7b2}
:fullscreen{background:#123e32;overflow-y:auto}
@media(max-width:680px){
  #modal-root .leaderboard-row{grid-template-columns:20px minmax(0,1fr) minmax(0,.8fr) 30px 62px;gap:7px;font-size:13px}
  #modal-root .leaderboard-row strong{font-size:13px}
  #modal-root .leaderboard-row .board-player{gap:5px}
  #modal-root .board-head{font-size:12px}
  .bonus-row{gap:10px}
  .volume-row{grid-template-columns:68px 1fr 36px;gap:8px}
  #app .topbar-actions{gap:1px}
}
@media(max-width:380px){
  #app .topbar .brand-mark{display:none}
  #app .topbar .brand-word{font-size:20px}
  #app .topbar-actions .icon-button{width:27px}
  #app .topbar-actions .new-run-button{width:27px;padding:5px}
  #app .topbar-actions .language-button{min-width:29px;padding:4px}
}
@media(max-width:680px){
  html[lang=en] #app .consumable-slot>.consumable-card{height:72px}
  html[lang=en] #app .consumable-card>span{display:block;font-size:10px;line-height:12px;white-space:normal}
}

/* A centered joker group, a small bonus summary, and a matching item rack. */
#app .inventory{--inventory-card-height:100px;--joker-art-height:64px;--item-card-height:86px;--item-art-height:56px;display:grid;grid-template-columns:minmax(0,1fr) 100px 144px;align-items:stretch;gap:18px;padding:0 0 14px}
#app .joker-inventory{min-width:0;padding:0}
#app .inventory-heading{height:22px;min-height:22px;margin:0 0 8px;justify-content:center;font-size:13px;line-height:1.3}
#app .inventory-heading>span{display:flex;align-items:center;justify-content:center;gap:5px;white-space:nowrap;flex-wrap:nowrap}
#app .inventory-heading b{margin-left:0;font-size:12px}
#app .inventory-heading i{font-size:12px}
#app .joker-rack{width:100%;max-width:520px;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-inline:auto}
#app .inventory .joker-card,#app .inventory .empty-joker{height:var(--inventory-card-height);border-radius:6px}
#app .inventory .empty-joker{background:#92b48408;border-color:#9eb68b30}
#app .inventory .empty-joker>span{font-size:28px;opacity:.65}
#app .inventory .joker-card{padding:3px 3px 0}
#app .inventory .joker-card .card-art{height:var(--joker-art-height)}
#app .inventory .joker-card-name{overflow-wrap:anywhere;font-size:12px;line-height:15px;min-height:29px;margin:0 -3px;padding:2px 1px}
#app .inventory .consumable-inventory{width:auto;min-width:0;padding:0 0 0 14px;border-left:1px solid #9eb68b30}
#app .inventory .consumable-rack{gap:9px;min-height:var(--inventory-card-height);align-items:center}
#app .inventory .consumable-slot>.consumable-card,#app .inventory .empty-consumable{height:var(--item-card-height);margin:0;padding:3px;border-radius:6px}
#app .inventory .consumable-card .card-art{height:var(--item-art-height)}
#app .inventory .consumable-card>span{display:block;overflow-wrap:anywhere;font-size:11px;line-height:14px;white-space:normal}
#app .inventory .empty-consumable{background:#92b48408;border-color:#9eb68b30}
#app .inventory-label-short{display:none}
.inventory-bonuses{display:grid;place-items:center;padding-top:30px;min-width:0}
.bonus-overview{width:100%;padding:8px 9px;border:1px solid #a5ba8f30;border-radius:7px;background:#92b48408;color:#b8c8a5;text-align:left;transition:background .15s,border-color .15s}
.bonus-overview:hover{background:#92b48418;border-color:#b6c89688}
.bonus-overview.has-bonuses{border-color:#c8ba794d;background:#c2b9790c}
.bonus-overview-title{display:flex;align-items:center;justify-content:center;gap:5px;line-height:1.3;position:relative}
.bonus-overview-title>svg{width:14px;height:14px;color:#d6c784;flex-shrink:0}
.bonus-overview-title>b{font-size:13px;font-weight:500}
.bonus-overview-title>em{font:11px var(--mono);color:#e5d69b}
.bonus-overview-stats{display:grid;gap:3px;margin-top:6px}
.bonus-overview-stats>span{display:flex;align-items:center;justify-content:space-between;gap:5px;font-size:12px;line-height:1.25;white-space:nowrap}
.bonus-overview-stats b{font:12px var(--mono);color:#d3d9b9}
.bonus-overview-stats>small{font-size:11px;text-align:center;font-weight:400;color:#94ad85}
@media(min-width:681px) and (max-height:800px){
  #app .inventory{--inventory-card-height:92px;--joker-art-height:56px;--item-card-height:80px;--item-art-height:50px}
}
@media(min-width:681px) and (max-width:1050px){
  #app .inventory{grid-template-columns:minmax(0,1fr) 64px 112px;gap:12px}
  #app .inventory .consumable-inventory{padding-left:10px}
  #app .joker-rack{gap:7px}
  #app .inventory .joker-card-name{font-size:11px}
  #app .inventory-label-full{display:none}
  #app .inventory-label-short{display:inline}
  .bonus-overview{padding:10px 5px}
  .bonus-overview-title{flex-direction:column;gap:5px}
  .bonus-overview-title>b{font-size:11px}
  .bonus-overview-title>em{position:absolute;top:-4px;right:0;font-size:10px}
  .bonus-overview-stats{display:none}
}
@media(max-width:680px){
  #app .inventory{--inventory-card-height:72px;--joker-art-height:37px;--item-card-height:66px;--item-art-height:35px;grid-template-columns:minmax(0,1fr) 40px 84px;gap:8px;padding-bottom:10px}
  #app .inventory-heading{height:22px;min-height:22px;margin-bottom:6px;font-size:12px}
  #app .inventory-heading b,#app .inventory-heading i{font-size:11px}
  #app .inventory-heading>span{gap:3px}
  #app .joker-rack{gap:5px}
  #app .inventory .joker-card{padding:2px 2px 0;border-radius:4px}
  #app .inventory .joker-card-name{font-size:10px;line-height:13px;min-height:27px;padding:1px 0;margin:0 -2px}
  #app .inventory .consumable-inventory{padding-left:7px}
  #app .inventory .consumable-rack{gap:5px}
  #app .inventory .consumable-card>span{font-size:10px;line-height:12px}
  #app .inventory-label-full{display:none}
  #app .inventory-label-short{display:inline}
  .inventory-bonuses{padding-top:28px}
  .bonus-overview{padding:9px 0;border-radius:5px}
  .bonus-overview-title{flex-direction:column;gap:5px}
  .bonus-overview-title>svg{width:15px;height:15px}
  .bonus-overview-title>b{font-size:10px}
  .bonus-overview-title>em{position:absolute;top:-7px;right:2px;font-size:9px;min-width:11px;text-align:center;background:#244a38;border-radius:3px}
  .bonus-overview-stats{display:none}
  html[lang=en] #app .inventory .joker-card-name{font-size:9px;line-height:12px;min-height:27px}
  html[lang=en] .bonus-overview-title>b{font-size:9px;letter-spacing:-.3px}
  #modal-root .bonuses-modal{padding:16px 18px 20px}
  .bonus-row{font-size:13px;gap:8px}
  .bonus-row>span{gap:7px}
  .bonus-row small{font-size:11px}
}

#app .inventory .joker-rack .empty-joker{height:var(--inventory-card-height)}
#app .inventory .consumable-rack .empty-consumable{height:var(--item-card-height);margin:0}
html[lang=en] #app .inventory .consumable-card>span{font-size:10px;letter-spacing:-.2px}
@media(max-width:680px){
  #app .inventory .consumable-slot>.consumable-card{padding:2px}
  html[lang=en] #app .inventory .consumable-card>span{font-size:9px;letter-spacing:-.3px}
}

/* Hover bonuses share the same accessible anchored menu as the card racks. */
.inventory-bonuses{position:relative}
.inventory-bonuses.popover-open{z-index:90}
.bonus-popover{width:380px;overflow-y:auto;scrollbar-width:thin;overscroll-behavior:contain}
.bonus-popover .bonus-section h3{font-size:12px}
.bonus-popover .bonus-row{font-size:13px;padding:9px 0}
.bonus-popover>.bonus-note{font-size:12px;line-height:1.5;margin-top:12px}
.bonus-popover .bonus-history{margin-top:12px}
#app .bonus-expand{display:flex;align-items:center;justify-content:flex-end;gap:7px;width:100%;padding:11px 0 0;margin-top:12px;border-top:1px solid var(--border);font-size:12px}
.bonus-expand svg{width:14px;height:14px}

/* Put the blind's restriction at the decision point, immediately over the hand. */
#app .hand-panel:has(.round-notice) .hand-toolbar{margin-bottom:9px}
#app .hand-panel .round-notice{position:relative;margin:0 0 28px;padding:9px 12px;border:1px solid #e6bf70a0;border-left:4px solid #f2ca77;background:linear-gradient(105deg,#82633335,#153d31);box-shadow:0 2px 12px #0b2b2125;gap:10px}
#app .hand-panel .round-notice:after{content:"";position:absolute;left:30px;bottom:-5px;width:8px;height:8px;transform:rotate(45deg);background:#665d34;border-right:1px solid #e6bf70a0;border-bottom:1px solid #e6bf70a0}
#app .hand-panel .rule-symbol{height:27px;flex-basis:27px;font-size:17px;color:#ffe2a2;border-color:#f2ca77;background:#f2ca7714}
#app .hand-panel .rule-copy>strong{font-size:16px;color:#fff0bf}
#app .hand-panel .rule-copy p{font-size:13px;color:#e1dbb8}
#app .hand-panel .round-notice.has-error{border-color:#f4a07d;background:linear-gradient(105deg,#a9503a55,#3b4030);box-shadow:0 0 0 1px #f4a07d30}
#app .hand-panel .round-notice.has-error .rule-copy>strong,#app .hand-panel .round-notice.has-error .rule-copy p{color:#ffe0ca}
.rule-attention{animation:rule-attention 1.1s ease-out 2}
@keyframes rule-attention{0%,100%{box-shadow:0 0 0 0 #f2ca7700}35%{box-shadow:0 0 0 3px #f2ca773b,0 0 18px #f2ca7720}}

.settings-tabs{display:flex;gap:6px;border-bottom:1px solid var(--border);margin:0 0 18px;padding-bottom:11px}
.settings-tabs>button{flex:1;padding:9px 8px;border:1px solid transparent;border-radius:5px;background:transparent;color:#aabe98;font-size:14px}
.settings-tabs>button[aria-pressed=true]{background:#b3bd7a16;border-color:#c5bd7f77;color:#f0e4b7}
.animation-setting-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:24px;font-size:15px}
.animation-setting-heading small{font-size:12px;color:#b0bf9b}
.animation-duration-row{display:flex;align-items:center;gap:16px;margin:22px 0 8px}
.animation-duration-row input{flex:1;min-width:0;accent-color:#e0bd76}
.animation-duration-row output{min-width:66px;text-align:right;color:#f0d691;font:15px var(--mono)}
.animation-scale{display:flex;justify-content:space-between;padding-right:82px;font:11px var(--mono);color:#a1b58d}
.animation-presets{display:flex;gap:9px;margin:24px 0}
#modal-root .animation-presets .button{flex:1;display:flex;flex-direction:column;gap:5px;padding:11px 7px;font-size:14px;letter-spacing:0}
.animation-presets .button small{font:12px var(--mono);color:#c2ccaa}
.animation-presets .button[aria-pressed=true]{border-color:#e5c780;background:#928a4940}
.sound-previews{flex-wrap:wrap}

/* Celebration sits outside the re-rendered game and never intercepts input. */
#celebration-root{position:fixed;inset:0;pointer-events:none;z-index:170;overflow:hidden}
.target-celebration{position:absolute;inset:0;overflow:hidden}
.confetti-piece{position:absolute;left:var(--x);top:-20px;width:var(--piece-width);height:calc(var(--piece-width) * 1.6);border-radius:var(--piece-shape);background:var(--color);opacity:0;will-change:transform,opacity;animation:confetti-fall var(--fall) cubic-bezier(.12,.55,.53,.99) var(--delay) forwards}
@keyframes confetti-fall{0%{opacity:0;transform:translate3d(0,-15px,0) rotate(0)}8%{opacity:1}80%{opacity:1}100%{opacity:0;transform:translate3d(var(--drift),105vh,0) rotate(var(--spin))}}
.celebration-banner{position:absolute;left:50%;top:18%;transform:translateX(-50%);display:flex;align-items:center;gap:18px;padding:15px 25px;border:1px solid #e9ca82;border-radius:10px;background:linear-gradient(130deg,#5b6742f5,#204c38f5);box-shadow:0 9px 40px #08291c80,0 0 28px #e9ca8230;color:#ffe3a0;animation:celebration-in .35s ease-out}
.celebration-banner>span{font-size:24px}
.celebration-banner strong{display:block;font-size:24px;white-space:nowrap;letter-spacing:1px}
.celebration-banner small{display:block;margin-top:5px;font-size:13px;text-align:center;color:#e4d9b0}
@keyframes celebration-in{from{opacity:0;scale:.88;translate:0 10px}to{opacity:1;scale:1;translate:0 0}}
#app .score-block.goal-reached{outline:1px solid #f3d382;box-shadow:0 0 24px #efcc6a44}
@media(max-width:680px){
  #app .hand-panel .round-notice{padding:8px 9px;margin-bottom:26px;gap:8px}
  #app .hand-panel .rule-copy>strong{font-size:15px}
  #app .hand-panel .rule-copy p{font-size:12px}
  #app .hand-panel .rule-tags{padding-left:35px}
  .celebration-banner{padding:13px 18px;gap:12px;top:15%;max-width:calc(100vw - 24px)}
  .celebration-banner strong{font-size:21px}
  .celebration-banner small{font-size:12px}
}
@media(prefers-reduced-motion:reduce){
  .confetti-piece{display:none}
  .rule-attention,.celebration-banner{animation:none}
}
@media(max-width:360px){
  #app .topbar .brand-word{font-size:19px}
  #app .topbar .brand-mark{width:20px;height:28px}
  #app .topbar .brand{gap:4px}
}
.board-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 18px}
.board-metrics button{min-height:44px;padding:10px 6px;border:1px solid #9cb48960;border-radius:7px;background:#153d32;color:#b4c5ab;font:inherit;font-size:16px;font-weight:700}
.board-metrics button[aria-pressed=true]{background:#d4b46e;color:#173e32;border-color:#e9cc8a}
#modal-root .leaderboard-modal{height:min(760px,calc(100dvh - 24px))}
#modal-root .leaderboard-modal .modal-body{display:flex;flex-direction:column;overflow:hidden;flex:1}
.leaderboard-modal .board-metrics,.leaderboard-modal .board-controls,.leaderboard-modal .modal-subtitle,.leaderboard-modal .help-note,.board-status-bar{flex-shrink:0}
#modal-root .leaderboard-modal .modal-subtitle{margin-bottom:4px}
.board-status-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:34px;color:#b6c9a8;font-size:13px}
#modal-root .board-status-bar .text-button{margin:0;padding:4px 0;font-size:13px;white-space:nowrap}
.leaderboard-modal [data-action=board-refresh][aria-disabled=true]{opacity:.5;cursor:wait}
.board-results{flex:1;min-height:60px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;border-block:1px solid #9eb18b20}
.board-loading .board-results{opacity:.5}
.leaderboard-modal .leaderboard-table{max-height:none;overflow:visible}
.leaderboard-modal .board-head{position:sticky;top:0;z-index:1;background:#204737}
#modal-root .leaderboard-modal .help-note{margin:8px 0 0;padding:0;border:0;background:none;font-size:12px;line-height:1.6}
#modal-root .leaderboard-modal .board-timing-note{margin-top:4px}
@media(max-height:620px){#modal-root .leaderboard-modal .modal-body{overflow:auto}.leaderboard-modal .board-results{flex:none;min-height:150px;max-height:45dvh}}
@media(max-width:600px){.board-metrics{gap:6px}.board-metrics button{font-size:14px}}
/* PAIXU uses an upright wordmark and a separate overlapping-card emblem. */
#app .brand-mark{width:38px;height:38px;transform:none;box-shadow:none;border-radius:10px;object-fit:contain;flex-shrink:0}
#app .brand-word{font-family:var(--sans);font-size:27px;font-weight:800;letter-spacing:1.4px;line-height:1;transform:none;text-shadow:none}
#app .brand-sub{font-size:11px;letter-spacing:1px;line-height:1.2;margin-top:5px}
.admin-brand{font-family:var(--sans);letter-spacing:1px}
@media(max-width:680px){#app .brand-mark{width:28px;height:28px;border-radius:8px}#app .brand-word{font-size:21px;letter-spacing:1px}#app .brand-sub{font-size:8px;letter-spacing:.3px;margin-top:4px}}

.player-symbol{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;flex-shrink:0;color:#e1c279;font:24px Georgia}
.profile-editor{display:grid;gap:10px;align-items:stretch}.profile-button>span:last-child{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:1150px){.profile-button>.player-symbol{display:inline-flex}}
