:root{font-family:'DM Sans',Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;color:#f7f4ed;background:#101714;font-synthesis:none;text-rendering:optimizeLegibility;--bg:#101714;--panel:#17211d;--panel-2:#1b2822;--line:#ffffff18;--line-strong:#ffffff30;--ink:#f7f4ed;--muted:#a5ada3;--dim:#727e75;--lime:#c6ee89;--lime-dark:#a7d86a;--warm:#f1c68e;--felt:#125439;--felt-deep:#0c3c29;--red:#bd4e4b;--cream:#fbf7ed;--black:#18221d;--mono:'DM Mono',ui-monospace,monospace;--serif:'Playfair Display',Georgia,serif;--shadow:0 30px 90px #0008}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden;background:radial-gradient(ellipse at 64% 17%,#1c2923 0,transparent 42%),var(--bg);color:var(--ink)}button,a,select{font:inherit}button{color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid var(--lime);outline-offset:3px}button:disabled{opacity:.42;cursor:not-allowed}.app-shell{position:relative;z-index:1;max-width:1320px;margin:auto;padding:0 58px}.ambient{position:fixed;pointer-events:none;border-radius:50%;filter:blur(130px);opacity:.14}.ambient-one{width:350px;height:350px;left:-200px;top:40%;background:#2f9a68}.ambient-two{width:300px;height:300px;right:-200px;top:-120px;background:#d9bb82}.topbar{height:88px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff10}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--ink)}.brand-mark{width:40px;height:40px;display:grid;place-items:center}.brand-mark svg{width:37px;height:37px;overflow:visible}.brand-mark rect{fill:var(--lime)}.brand-mark path{fill:#234a36}.brand strong{font-size:17px;letter-spacing:-.04em;display:block}.brand small{display:block;font:9px var(--mono);letter-spacing:.15em;color:#839087;margin-top:2px}.topbar-actions{display:flex;align-items:center;gap:11px}.offline-pill{display:flex;align-items:center;gap:7px;color:#aab8aa;font:10px var(--mono);letter-spacing:.03em;margin-right:9px}.offline-pill i,.live-dot{width:7px;height:7px;border-radius:50%;display:inline-block;background:#b5e588;box-shadow:0 0 10px #b5e5887a}.top-icon{width:34px;height:34px;border:1px solid var(--line);background:#ffffff06;border-radius:50%;font-size:14px;color:#c8d0c6;transition:.2s}.top-icon:hover{background:#ffffff12;border-color:#ffffff35}.home-screen{min-height:calc(100vh - 89px);display:grid;grid-template-columns:1.03fr .97fr;grid-template-rows:minmax(460px,1fr) auto 48px;align-items:center;column-gap:30px}.welcome-copy{padding:45px 0 38px;position:relative;z-index:2}.kicker,.section-overline{display:flex;align-items:center;gap:11px;font:10px var(--mono);letter-spacing:.18em;color:var(--lime)}.kicker-line{height:1px;width:26px;background:var(--lime)}.welcome-copy h1{font-size:clamp(67px,8vw,106px);line-height:.9;letter-spacing:-.085em;margin:29px 0 24px;font-weight:700}.welcome-copy h1 em{font-family:var(--serif);font-weight:600;letter-spacing:-.08em;color:var(--lime)}.welcome-desc{max-width:370px;color:#aeb7ad;font-size:16px;line-height:1.6;margin:0 0 26px}.home-cta-row{display:flex;align-items:center;gap:23px;flex-wrap:wrap}.button{border:0;border-radius:9px;padding:12px 16px;font-size:12px;font-weight:700;transition:transform .18s,background .18s,border .18s;display:inline-flex;align-items:center;justify-content:center;gap:20px}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--lime);color:#18271b;box-shadow:0 7px 25px #b5e88420}.button-primary:hover{background:#d4f59f}.button-large{padding:15px 19px 15px 22px;font-size:13px;min-width:173px}.button-arrow{font-size:17px;font-weight:500;line-height:1}.button-quiet{background:none;color:#c4c9bf;padding:12px 2px}.button-quiet span{color:var(--lime)}.button-quiet:hover{color:white}.trust-row{margin-top:28px;color:#7f8b81;font-size:10px;display:flex;align-items:center;gap:8px}.trust-check{width:15px;height:15px;border:1px solid #93b9757a;border-radius:50%;display:grid;place-items:center;color:var(--lime);font-size:9px}.trust-sep{color:#46544a;margin:0 1px}.hero-art{height:min(510px,68vh);min-height:390px;position:relative;display:grid;place-items:center;perspective:1000px;overflow:visible}.hero-orbit{border:1px solid #f5f2e919;border-radius:50%;position:absolute;transform:rotate(-22deg)}.orbit-one{width:min(480px,95%);height:306px}.orbit-two{width:min(380px,75%);height:243px;transform:rotate(40deg);border-color:#c6ee891a}.hero-glint{position:absolute;width:60%;height:68%;border-radius:50%;background:radial-gradient(ellipse,#76b77a1d 0,transparent 67%);filter:blur(13px)}.float-card{position:absolute;width:184px;height:263px;border-radius:16px;box-shadow:0 36px 90px #0008,0 5px 20px #0006;transform-style:preserve-3d}.card-back-art{left:17%;top:22%;transform:rotate(-17deg);background:repeating-linear-gradient(45deg,#1a5038 0 7px,#16452f 7px 14px);border:2px solid var(--lime);box-shadow:0 0 0 8px #143a2b,0 0 0 9px #b8e98282,0 36px 80px #0009;display:flex;align-items:center;justify-content:center;color:#c9ed9a}.card-back-stars{position:absolute;font-size:66px;opacity:.9}.card-back-caption{position:absolute;bottom:21px;right:17px;font:9px var(--mono);letter-spacing:.17em;line-height:1.6;color:#dbf4c1}.art-card{background:linear-gradient(160deg,#fffdf7,#e9e3d6);color:#16241b}.art-one{left:41%;top:17%;transform:rotate(13deg);z-index:2}.art-two{left:56%;top:34%;transform:rotate(21deg) scale(.92);z-index:1}.art-corner{position:absolute;top:14px;left:15px;font:700 27px Georgia,serif;line-height:.86}.art-corner small{font:20px Georgia,serif}.art-corner.upside{left:auto;top:auto;right:14px;bottom:13px;transform:rotate(180deg)}.art-center{position:absolute;inset:0;display:grid;place-items:center;font:90px Georgia,serif}.heart{color:#bd4745}.spade{color:#17241c}.art-label{position:absolute;right:-19px;top:42px;background:var(--lime);color:#25351f;padding:7px 11px;border-radius:3px;font:8px var(--mono);letter-spacing:.1em;transform:rotate(90deg)}.spark{position:absolute;color:var(--lime);font-size:19px;z-index:5}.spark-a{top:16%;left:35%}.spark-b{right:14%;bottom:25%;font-size:16px;color:#e5c598}.art-note{position:absolute;right:2%;bottom:12%;z-index:4;background:#1b2420e8;border:1px solid #ffffff18;border-radius:10px;padding:12px 15px;box-shadow:0 15px 40px #0007;transform:rotate(-3deg)}.art-note b,.art-note span{display:block}.art-note b{font-size:11px}.art-note span{font-size:10px;color:var(--lime);margin-top:4px}.home-bottom{grid-column:1/-1;display:flex;align-items:stretch;border:1px solid #ffffff15;border-radius:12px;background:linear-gradient(100deg,#ffffff06,#ffffff02);min-height:88px}.stat-card{display:flex;align-items:center;gap:12px;padding:17px 27px;border-right:1px solid #ffffff13;min-width:175px}.stat-icon{width:33px;height:33px;border:1px solid #bfdf9a40;border-radius:9px;display:grid;place-items:center;color:#c4ec8a;font-size:16px}.streak-icon{font-family:var(--mono);font-size:19px}.stat-value{font:19px var(--mono);display:block;letter-spacing:-.06em}.stat-label{font:8px var(--mono);letter-spacing:.13em;color:#849086;display:block;margin-top:4px}.stats-link{margin-left:auto;border:0;background:none;padding:0 25px;color:#a9b3a9;font-size:11px}.stats-link span{margin-left:7px;color:var(--lime)}.home-footer{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;color:#69766d;font:8px var(--mono);letter-spacing:.14em}.home-footer b{color:#b2db7c;font-size:8px;margin-left:5px}
/* Game table */
.game-screen{padding:20px 0 20px;min-height:calc(100vh - 88px);animation:arrive .35s ease-out}@keyframes arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.game-toolbar{display:flex;align-items:center;justify-content:space-between}.back-button{border:0;background:none;color:#a4aea4;font-size:11px;padding:8px 0;display:flex;align-items:center;gap:8px}.back-button span:first-child{font-size:16px;color:var(--lime)}.back-button:hover{color:white}.match-center{font:9px var(--mono);letter-spacing:.14em;color:#bfccbF;display:flex;align-items:center;gap:8px}.small-outline{border:1px solid var(--line);background:#ffffff06;border-radius:7px;padding:8px 11px;font-size:10px;color:#b6c0b5}.small-outline span{margin-left:8px;color:var(--lime)}.scoreboard{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;max-width:940px;margin:22px auto 14px;padding:0 22px}.seat{display:flex;align-items:center;gap:11px}.seat-player{justify-content:flex-end}.seat-avatar{position:relative;width:35px;height:35px;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:800}.ai-avatar{background:#293d30;color:#c0e993;border:1px solid #b4d58e33}.ai-avatar span{position:absolute;right:-4px;top:-4px;color:#d9c28d;font-size:10px}.player-avatar{background:#433829;color:#eed0a1;border:1px solid #e7bd844d}.seat-name-wrap b{display:block;font-size:11px}.seat-name-wrap small{display:block;color:#808d83;font-size:9px;margin-top:3px}.align-right{text-align:right}.hand-count{border:1px solid #ffffff1b;border-radius:6px;padding:6px 8px;color:#b3beb3;font:9px var(--mono);white-space:nowrap;margin-left:4px}.seat-player .hand-count{margin-left:0;margin-right:4px}.round-label{border:1px solid #ffffff16;border-radius:8px;padding:6px 11px;text-align:center;background:#ffffff04}.round-label small{display:block;color:#819087;font:7px var(--mono);letter-spacing:.13em}.round-label b{display:block;font:12px var(--mono);margin-top:2px;color:#d0e2ba}.felt-wrap{height:clamp(255px,37vh,360px);min-height:240px;border-radius:22px;position:relative;overflow:hidden;border:1px solid #c7ecae22;background:radial-gradient(ellipse at 50% 42%,#197347 0,#12613e 31%,#0d4b31 63%,#0a3b28 100%);box-shadow:inset 0 0 110px #061a1170,0 21px 60px #0003}.felt-wrap:before{content:"";position:absolute;inset:9px;border:1px solid #d3eec921;border-radius:15px;pointer-events:none}.felt-wrap:after{content:"";position:absolute;inset:0;opacity:.085;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.25'/%3E%3C/svg%3E")}.felt-noise{position:absolute;width:52%;height:120%;left:24%;top:-13%;border-radius:50%;background:#afe37815;filter:blur(60px)}.felt-inner{position:relative;z-index:1;height:100%;display:grid;grid-template-columns:1fr 1.3fr 1fr;align-items:center;justify-items:center;max-width:830px;margin:auto;padding:10px 15px 30px}.pile{display:flex;flex-direction:column;align-items:center;gap:7px}.pile>b{font:8px var(--mono);letter-spacing:.12em;color:#cce6cf}.pile>small{font-size:9px;color:#94c0a1}.deck{width:75px;height:108px;border:0;border-radius:9px;background:repeating-linear-gradient(45deg,#235b3f 0 5px,#1b5037 5px 10px);box-shadow:inset 0 0 0 2px #c8ef8c,inset 0 0 0 6px #17442f,0 11px 20px #0424149e;display:flex;align-items:center;justify-content:center;position:relative;color:var(--lime);transition:transform .2s}.deck:hover:not(:disabled){transform:translateY(-4px)}.deck>span{font-size:32px;text-shadow:0 0 17px #cdf09e88}.deck>small{position:absolute;bottom:10px;font:7px var(--mono);letter-spacing:.14em;color:#d1ecbb}.discard-zone{display:flex;flex-direction:column;align-items:center;gap:9px}.table-caption{font:8px var(--mono);letter-spacing:.17em;color:#b1d2b8}.discard-card{width:83px;height:118px}.playing-card{position:relative;width:83px;height:118px;border-radius:10px;background:linear-gradient(150deg,#fffdf7,#eae5d9);color:#19241d;box-shadow:0 11px 24px #03150bc2;animation:deal .28s ease-out;display:flex;justify-content:center;align-items:center;font-family:Georgia,serif}@keyframes deal{from{transform:translateY(-10px) rotate(6deg);opacity:.3}to{transform:translateY(0) rotate(0);opacity:1}}.playing-card.red{color:#bd4947}.playing-card.black{color:#19241d}.playing-card .pc-corner{position:absolute;top:8px;left:8px;font-size:15px;font-weight:bold;line-height:.9}.playing-card .pc-corner small{font-size:12px}.playing-card .pc-bottom{top:auto;left:auto;right:8px;bottom:7px;transform:rotate(180deg)}.playing-card .pc-suit{font-size:42px}.playing-card .card-effect{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);white-space:nowrap;color:#506552;background:#e6ecd9;border-radius:99px;padding:3px 5px;font:6px var(--mono);letter-spacing:.03em}.active-suit{display:flex;align-items:center;gap:5px;color:#f0f2dd}.active-suit>span{font:17px Georgia,serif;color:var(--lime)}.active-suit>span.red{color:#ffc4b4}.active-suit small{font:7px var(--mono);letter-spacing:.07em;color:#a8c8ad}.active-suit b{font:7px var(--mono);letter-spacing:.08em;color:#d5efcd}.opponent-stack{width:75px;height:108px;position:relative}.stack-card{position:absolute;inset:0;border-radius:9px;background:repeating-linear-gradient(45deg,#235b3f 0 5px,#1b5037 5px 10px);box-shadow:inset 0 0 0 2px #bce884,inset 0 0 0 5px #17442f,0 8px 15px #0424148a}.stack-3{transform:translate(7px,-3px) rotate(8deg);opacity:.5}.stack-2{transform:translate(3px,-1px) rotate(-4deg);opacity:.75}.stack-1{transform:rotate(1deg)}.turn-callout{position:absolute;z-index:2;bottom:12px;left:50%;transform:translateX(-50%);color:#c6deca;font-size:10px;background:#092e20ba;border:1px solid #c7ecae20;border-radius:99px;padding:7px 13px;white-space:nowrap}.turn-callout b{color:#def9b0}.game-toast{position:absolute;z-index:4;top:15px;left:50%;transform:translateX(-50%);border-radius:8px;background:#12251bd9;border:1px solid #d8efa433;padding:9px 14px;color:#efffdd;font-size:10px;box-shadow:0 8px 30px #0004;white-space:nowrap;animation:arrive .18s ease-out}.your-hand-section{max-width:930px;margin:23px auto 0}.hand-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:12px}.section-overline{font-size:8px;color:#84968a;letter-spacing:.15em}.hand-heading h2{font-size:17px;letter-spacing:-.04em;margin:4px 0 0}.hand-heading h2 span{color:#8d9a8e;font:10px var(--mono);margin-left:5px}.hand-hint{font-size:9px;color:#8e9a8f;margin-bottom:3px}.player-hand{display:flex;justify-content:center;gap:clamp(3px,.7vw,9px);overflow-x:auto;padding:10px 3px 15px;min-height:117px;scrollbar-width:thin;scrollbar-color:#4c6653 transparent}.hand-card{position:relative;flex:0 0 auto;width:clamp(57px,6vw,72px);height:102px;border:1px solid #ddd8c9;border-radius:8px;background:linear-gradient(150deg,#fffdf7,#eae5d9);color:#19241d;box-shadow:0 5px 12px #0003;transition:transform .16s,box-shadow .16s;display:flex;justify-content:center;align-items:center;font-family:Georgia,serif;padding:0}.hand-card.red{color:#bd4947}.hand-card.black{color:#19241d}.hand-card:not(:disabled):hover{transform:translateY(-9px);box-shadow:0 11px 20px #0005}.hand-card.is-playable{box-shadow:0 0 0 1px #b5e783,0 5px 16px #0003}.hand-card .pc-corner{position:absolute;top:6px;left:6px;font-size:14px;font-weight:bold;line-height:.9}.hand-card .pc-corner small{font-size:10px}.hand-card .pc-bottom{top:auto;left:auto;right:6px;bottom:5px;transform:rotate(180deg)}.hand-card .pc-suit{font-size:29px}.hand-card .card-effect{position:absolute;top:6px;right:4px;max-width:39px;overflow:hidden;background:#e5ebda;color:#50624f;border-radius:99px;padding:2px 4px;font:5px var(--mono);text-transform:uppercase}.hand-actions{display:flex;justify-content:center;align-items:center;gap:9px;min-height:43px}.hand-actions .button{min-width:126px}.button-outline{border:1px solid #ffffff29;background:#ffffff05;color:#d3d9d0}.button-outline:hover{background:#ffffff0d}.button-matatu{background:#f1c68e;color:#302319;box-shadow:0 5px 25px #e8c28b24}.button-matatu span{font-size:15px}.game-footer{max-width:940px;margin:24px auto 0;padding-top:12px;border-top:1px solid #ffffff11;display:flex;align-items:center;gap:17px;color:#65736a;font:8px var(--mono);letter-spacing:.12em}.game-footer span:first-child{color:#8eaa80;letter-spacing:.2em;font-size:10px}.game-footer button{margin-left:auto;border:0;background:none;color:#97a397;font:9px var(--mono);padding:5px}.game-footer button span{color:var(--lime);margin-left:6px}
/* Dialogs */
.overlay{position:fixed;inset:0;z-index:20;background:#070d0bd9;backdrop-filter:blur(10px);display:grid;place-items:center;padding:18px;animation:fade .18s ease-out}@keyframes fade{from{opacity:0}to{opacity:1}}.dialog{position:relative;width:min(100%,480px);max-height:min(88vh,760px);overflow:auto;border-radius:17px;border:1px solid #ffffff25;background:linear-gradient(155deg,#1c2922,#141c18);box-shadow:var(--shadow);padding:29px}.dialog-close{position:absolute;top:14px;right:14px;width:29px;height:29px;border:1px solid #ffffff1c;border-radius:50%;background:#ffffff08;color:#aab4aa;font-size:16px}.dialog-kicker{font:8px var(--mono);letter-spacing:.17em;color:var(--lime);margin-bottom:12px}.dialog h2{margin:0 32px 8px 0;font-size:26px;letter-spacing:-.06em;line-height:1.08}.dialog-intro{font-size:12px;line-height:1.6;color:#a4afa5;margin:0 0 18px}.rule-list{display:grid;gap:0;margin:18px 0}.rule-row{display:grid;grid-template-columns:38px 1fr;gap:12px;padding:10px 0;border-top:1px solid #ffffff10;align-items:center}.rule-glyph{width:34px;height:42px;background:var(--cream);color:#19241d;border-radius:5px;display:grid;place-items:center;font:bold 15px Georgia,serif}.rule-glyph.red{color:#bd4947}.rule-copy b{display:block;font-size:11px;color:#e4ece1}.rule-copy span{display:block;margin-top:3px;font-size:10px;line-height:1.45;color:#9ca99e}.rule-note{border-left:2px solid #b5df83;padding:8px 11px;background:#c4e78a0b;font-size:9px;line-height:1.5;color:#9ead9d;margin:16px 0}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.dialog-actions .button{min-width:95px}.suit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:18px}.suit-pick{height:75px;border:1px solid #ffffff1b;border-radius:10px;background:#ffffff06;font:36px Georgia,serif;transition:.16s}.suit-pick:hover{transform:translateY(-3px);border-color:#bde68680;background:#bee98513}.suit-pick.red{color:#ff9c91}.suit-pick.black{color:#edf2e8}.difficulty-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:13px 0 18px}.difficulty-choice{border:1px solid #ffffff1a;border-radius:8px;background:#ffffff06;padding:12px 8px;text-align:left;transition:.16s}.difficulty-choice:hover,.difficulty-choice.selected{border-color:#c3e58b88;background:#c4e78a0d}.difficulty-choice b{display:block;font-size:10px}.difficulty-choice small{display:block;color:#88968c;font-size:8px;margin-top:4px;line-height:1.35}.result-score{font:10px var(--mono);letter-spacing:.1em;color:#9ca99e;margin-top:12px}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:17px 0}.stat-tile{border:1px solid #ffffff14;border-radius:9px;padding:13px;background:#ffffff04}.stat-tile b{display:block;font:22px var(--mono);color:#d4edac}.stat-tile small{display:block;font:8px var(--mono);letter-spacing:.1em;color:#849187;margin-top:5px}.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}[hidden]{display:none!important}
@media(max-width:900px){.app-shell{padding:0 34px}.home-screen{column-gap:0}.welcome-copy h1{font-size:clamp(63px,9vw,90px)}.float-card{width:154px;height:226px}.art-center{font-size:80px}.card-back-art{left:11%}.art-one{left:37%}.art-two{left:53%}.stat-card{min-width:155px;padding:15px 18px}.felt-inner{max-width:740px}}
@media(max-width:640px){.app-shell{padding:0 18px}.topbar{height:70px}.brand-mark,.brand-mark svg{width:33px;height:33px}.brand strong{font-size:15px}.offline-pill{font-size:8px;margin-right:2px}.topbar-actions{gap:7px}.top-icon{height:31px;width:31px}.home-screen{min-height:calc(100vh - 70px);grid-template-columns:1fr;grid-template-rows:auto 290px auto 38px;align-items:start}.welcome-copy{padding:40px 0 0}.welcome-copy h1{font-size:clamp(65px,15vw,88px);margin:23px 0 15px}.welcome-desc{font-size:13px;max-width:290px;margin-bottom:20px}.home-cta-row{gap:14px}.button-large{min-width:150px;padding:13px 15px}.trust-row{margin-top:20px;font-size:9px}.hero-art{height:290px;min-height:0;grid-row:2;margin-top:-5px}.hero-orbit.orbit-one{height:213px;width:min(355px,98%)}.hero-orbit.orbit-two{height:174px;width:min(280px,80%)}.float-card{width:124px;height:181px;border-radius:12px}.card-back-art{left:17%;top:16%;box-shadow:0 0 0 5px #143a2b,0 0 0 6px #b8e98282,0 24px 54px #0009}.card-back-stars{font-size:46px}.card-back-caption{font-size:7px;bottom:14px;right:12px}.art-one{left:40%;top:9%}.art-two{left:59%;top:30%}.art-center{font-size:58px}.art-corner{font-size:20px;top:10px;left:10px}.art-corner small{font-size:15px}.art-corner.upside{right:10px;bottom:9px}.art-label{right:-17px;top:30px;font-size:6px;padding:5px 8px}.spark-a{top:12%;left:34%}.spark-b{right:11%;bottom:18%}.art-note{right:1%;bottom:3%;padding:9px 11px}.art-note b{font-size:9px}.art-note span{font-size:8px}.home-bottom{grid-row:3;min-height:73px;border-radius:9px}.stat-card{min-width:0;flex:1;padding:10px 9px;gap:7px}.stat-icon{width:25px;height:25px;border-radius:7px;font-size:12px}.stat-value{font-size:15px}.stat-label{font-size:6px;letter-spacing:.08em}.stats-link{font-size:0;padding:0 11px}.stats-link span{font-size:15px;margin:0}.home-footer{grid-row:4;font-size:6px;letter-spacing:.09em}.home-footer b{font-size:6px}.game-screen{padding-top:12px;min-height:calc(100vh - 70px)}.scoreboard{margin:18px auto 12px;padding:0 1px}.seat{gap:6px}.seat-avatar{width:30px;height:30px;font-size:11px}.seat-name-wrap b{font-size:9px}.seat-name-wrap small{font-size:7px}.hand-count{font-size:7px;padding:5px 6px;margin-left:0}.seat-player .hand-count{margin-right:0}.round-label{padding:5px 8px}.round-label small{font-size:6px}.round-label b{font-size:10px}.felt-wrap{height:clamp(225px,31vh,285px);min-height:220px;border-radius:16px}.felt-wrap:before{inset:6px;border-radius:11px}.felt-inner{padding:5px 3px 27px;grid-template-columns:.78fr 1.1fr .78fr}.deck,.opponent-stack{width:60px;height:88px}.stack-card{border-radius:7px}.deck{border-radius:7px;box-shadow:inset 0 0 0 2px #c8ef8c,inset 0 0 0 5px #17442f,0 8px 15px #0424149e}.deck>span{font-size:25px}.deck>small{font-size:6px;bottom:8px}.pile{gap:5px}.pile>b{font-size:6px}.pile>small{font-size:7px}.discard-card,.playing-card{width:71px;height:102px}.playing-card{border-radius:8px}.playing-card .pc-suit{font-size:34px}.playing-card .pc-corner{font-size:13px;top:6px;left:6px}.playing-card .pc-corner small{font-size:10px}.playing-card .pc-bottom{right:6px;bottom:6px}.playing-card .card-effect{font-size:5px;bottom:15px}.discard-zone{gap:7px}.table-caption{font-size:6px}.active-suit{gap:3px}.active-suit>span{font-size:14px}.active-suit small,.active-suit b{font-size:6px}.turn-callout{font-size:8px;padding:6px 10px;bottom:9px}.game-toast{font-size:8px;top:10px;padding:7px 10px}.your-hand-section{margin-top:17px}.hand-heading{margin-bottom:4px}.hand-heading h2{font-size:15px}.section-overline{font-size:7px}.hand-hint{font-size:7px}.player-hand{justify-content:flex-start;min-height:109px;margin:0 -5px;padding:9px 5px 14px;gap:5px}.hand-card{width:61px;height:89px;border-radius:7px}.hand-card .pc-corner{font-size:12px;top:5px;left:5px}.hand-card .pc-corner small{font-size:9px}.hand-card .pc-bottom{right:5px;bottom:4px}.hand-card .pc-suit{font-size:25px}.hand-card .card-effect{font-size:4px;max-width:33px;padding:2px 3px}.hand-actions{gap:7px}.hand-actions .button{min-width:105px;padding:10px 12px;font-size:10px;gap:10px}.game-footer{margin-top:18px;padding-top:10px;font-size:6px}.game-footer span:first-child{font-size:8px}.game-footer button{font-size:7px}.dialog{padding:25px 20px}.dialog h2{font-size:23px}.dialog-intro{font-size:11px}.difficulty-picker{gap:5px}.difficulty-choice{padding:10px 7px}.difficulty-choice b{font-size:9px}.difficulty-choice small{font-size:7px}}
@media(max-width:370px){.app-shell{padding:0 13px}.trust-row{gap:5px;font-size:8px}.seat-name-wrap{max-width:47px}.seat-name-wrap small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hand-count{font-size:6px}.felt-wrap{min-height:205px}.deck,.opponent-stack{width:53px;height:80px}.discard-card,.playing-card{width:65px;height:94px}.active-suit small,.active-suit b{font-size:5px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
