:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--felt:#145a32;--felt-dark:#0d3d22;--card-bg:#fdfdfd;--card-red:#b3273f;--card-black:#1c1c1c;--accent:#d4af37;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{color:#eee;-webkit-user-select:none;user-select:none;background:#1b1b1b;min-height:100vh;margin:0}input,textarea{-webkit-user-select:text;user-select:text}#app{flex-direction:column;min-height:100vh;display:flex}.screen{flex-direction:column;flex:1;align-items:center;padding:2rem 1rem;display:flex}.card-panel{background:#222;border-radius:12px;width:100%;max-width:420px;padding:2rem;box-shadow:0 4px 24px #0006}h1{margin-bottom:.25rem;font-size:2rem}.subtitle{color:#aaa;margin-bottom:1.5rem}button{cursor:pointer;background:var(--accent);color:#1b1b1b;border:none;border-radius:8px;padding:.6rem 1.2rem;font-size:1rem;font-weight:600}button.secondary{color:#eee;background:#444}button.link{color:var(--accent);background:0 0;padding:0;font-weight:400;text-decoration:underline}button:disabled{opacity:.5;cursor:not-allowed}input{color:#eee;background:#111;border:1px solid #555;border-radius:6px;width:100%;margin:.4rem 0 1rem;padding:.5rem;font-size:1rem;display:block}.stack{flex-direction:column;gap:.6rem;display:flex}.row{align-items:center;gap:.6rem;display:flex}.settings-btn{padding:.4rem .7rem;font-size:1.1rem;line-height:1}.language-list{margin:.4rem 0 1rem}.language-option{text-align:left;justify-content:flex-start;align-items:center;gap:.7rem;display:flex}.language-option.active{background:var(--accent);color:#1b1b1b}.language-flag{font-size:1.4rem;line-height:1}.error-box{background:#4a1620;border:1px solid #b3273f;border-radius:6px;margin-bottom:1rem;padding:.6rem;font-size:.9rem}.google-signin-btn{color:#1f1f1f;letter-spacing:.25px;cursor:pointer;background:#fff;border:1px solid #747775;border-radius:4px;justify-content:center;align-items:center;gap:.6rem;width:100%;height:40px;padding:0 12px;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.875rem;font-weight:500;display:flex}.google-signin-btn:hover{box-shadow:0 1px 2px #0000004d,0 1px 3px 1px #00000026}.google-signin-btn:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.google-signin-btn svg{flex-shrink:0}.game-list{width:100%;max-width:480px;margin:1rem 0;padding:0;list-style:none}.game-list li{cursor:pointer;background:#222;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding:.8rem 1rem;display:flex}.game-list li:hover{background:#2c2c2c}.badge{background:#444;border-radius:999px;padding:.15rem .5rem;font-size:.75rem}.badge.myturn{background:var(--accent);color:#1b1b1b}:root{--card-w:clamp(42px, 12vw, 74px);--card-h:clamp(60px, 17vw, 106px);--mini-card-w:clamp(26px, 7vw, 46px);--mini-card-h:clamp(37px, 10vw, 66px)}.table-screen{align-items:stretch;padding:0}.felt{background:radial-gradient(ellipse at center, var(--felt) 0%, var(--felt-dark) 100%);padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);flex-direction:column;flex:1;justify-content:space-between;width:100%;min-height:100dvh;max-height:100dvh;display:flex;position:relative;overflow:hidden}.topbar{color:#fff;grid-template-columns:1fr auto 1fr;align-items:center;gap:.4rem;padding:.35rem .8rem;display:grid}.topbar-middle{justify-content:center;min-width:0;display:flex}.topbar-actions{justify-self:end;align-items:center;gap:.4rem;display:flex}.topbar .score{color:var(--accent);text-shadow:0 1px 3px #0009;font-size:clamp(.95rem,3vw,1.15rem);font-weight:800}.topbar button.secondary{color:#fff;background:#ffffff24;padding:.4rem .9rem;font-size:.85rem}.game-menu{position:relative}.menu-btn{padding:.3rem .65rem;font-size:1.2rem;line-height:1}.game-menu-dropdown{z-index:10;background:#2a2a2a;border:1px solid #ffffff26;border-radius:8px;flex-direction:column;gap:.3rem;min-width:160px;padding:.5rem;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 4px 16px #00000080}.game-menu-dropdown button{text-align:left;width:100%}.game-menu-dropdown[hidden]{display:none}.my-area,.discard-row{scrollbar-width:none;flex-wrap:nowrap;align-items:center;padding:.3rem .2rem;display:flex;overflow:auto visible}.my-area::-webkit-scrollbar{display:none}.discard-row::-webkit-scrollbar{display:none}.melds-area::-webkit-scrollbar{display:none}.my-area{min-height:var(--card-h);min-width:0;margin-bottom:calc(var(--card-h) / -2);flex:1;justify-content:flex-start;padding:20px 1rem .3rem}.discard-row{min-height:var(--card-h);cursor:pointer;flex:1;justify-content:flex-start;min-width:0;padding:0}.discard-row .card:not(:first-child){margin-left:calc(-1 * var(--card-w) + 22px)}.discard-pile-row{align-items:center;gap:.6rem;padding:.3rem 1rem .5rem;display:flex}.stock-pile{flex-shrink:0}.table-body{flex:1;gap:clamp(.3rem,1.2vw,.8rem);min-height:0;padding:0 .4rem;display:flex}.sidebar{flex-direction:column;flex-shrink:0;align-items:center;gap:clamp(.4rem,1.2vw,.8rem);width:clamp(44px,7vw,76px);padding-top:.3rem;display:flex;overflow:visible}.pile-wrap{position:relative}.pile-badge{background:var(--accent);color:#1b1b1b;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 4px;font-size:.7rem;font-weight:800;display:flex;position:absolute;bottom:-6px;right:-6px;box-shadow:0 1px 3px #00000080}.stock-count{color:#fff;text-shadow:0 1px 3px #000000b3;pointer-events:none;justify-content:center;align-items:center;font-size:clamp(1.1rem,4vw,1.6rem);font-weight:800;display:flex;position:absolute;inset:0}.avatar{color:#fff;background:#445;border-radius:50%;justify-content:center;align-items:center;width:clamp(40px,8vw,60px);height:clamp(40px,8vw,60px);font-size:clamp(1rem,3vw,1.4rem);font-weight:800;display:flex;box-shadow:0 2px 4px #00000080}.avatar-name{color:#fff;writing-mode:vertical-rl;text-orientation:mixed;text-overflow:ellipsis;letter-spacing:.02em;max-height:clamp(60px,15vh,140px);font-size:.75rem;font-weight:600;overflow:hidden}.team-seat{flex-direction:column;align-items:center;gap:.2rem;display:flex}.team-seat .avatar{width:clamp(28px,6vw,40px);height:clamp(28px,6vw,40px);font-size:clamp(.7rem,2vw,.95rem)}.team-seat .avatar-name{font-size:.65rem}.team-seat.large .avatar{width:clamp(40px,8vw,60px);height:clamp(40px,8vw,60px);font-size:clamp(1rem,3vw,1.4rem)}.team-seat.horizontal{flex-direction:row;gap:.4rem}.team-seat.horizontal .avatar-name{writing-mode:horizontal-tb;text-orientation:unset;max-height:none;font-size:.85rem}.team-seat.active-turn .avatar{animation:1.1s ease-in-out infinite active-turn-pulse}@keyframes active-turn-pulse{0%,to{box-shadow:0 0 0 2px var(--accent), 0 0 6px 1px var(--accent), 0 2px 4px #00000080}50%{box-shadow:0 0 0 3px var(--accent), 0 0 12px 4px var(--accent), 0 2px 4px #00000080}}.hand-pile .card{width:var(--mini-card-w);height:var(--mini-card-h)}.table-panels{flex:1;gap:clamp(.4rem,1.5vw,1rem);min-width:0;min-height:0;display:flex}@media (orientation:portrait){.table-panels{flex-direction:column-reverse}}@media (orientation:landscape){.table-panels{flex-direction:row-reverse}}.table-panel{background:#00000014;border:1px solid #ffffff38;border-radius:12px;flex-direction:column;flex:1;min-width:0;min-height:0;padding:.5rem;display:flex}.table-panel-label{color:#ffffffa6;text-transform:uppercase;letter-spacing:.05em;padding:.1rem .4rem .3rem;font-size:.7rem;font-weight:600}.hand-strip{position:relative}.hand-strip:before{content:"";pointer-events:none;background:linear-gradient(#ffffff1a,#ffffff05);position:absolute;inset:0}.hand-row{align-items:center;margin-top:-40px;display:flex}.hand-sort-bar{flex-direction:column;flex-shrink:0;gap:.4rem;margin-left:auto;padding:.3rem .8rem;font-size:.85rem;display:flex;position:relative}.hand-sort-bar button{padding:.3rem .7rem;font-size:.8rem}.melds-area{min-height:calc(var(--card-h) + 30px);scrollbar-width:none;flex-wrap:nowrap;flex:1;align-items:flex-start;gap:.5rem;padding:.4rem;display:flex;overflow:auto}.meld-group{cursor:pointer;background:#00000026;border-radius:8px;flex-direction:column;flex-shrink:0;align-items:center;padding:4px;display:flex}.meld-group .card:not(:first-child){margin-top:calc(-1 * var(--card-h) + 20px)}.meld-group .sideways-wrap{width:var(--card-w);height:var(--card-w);margin-top:calc(-1 * var(--card-h) + 20px);position:relative}.meld-group .sideways-wrap .card{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(90deg);margin:0!important}.meld-group .sideways-wrap+.card{margin-top:calc(-1 * var(--card-w) + 20px)}.drop-hover{outline:2px solid var(--accent);outline-offset:2px}.card{width:var(--card-w);height:var(--card-h);background:var(--card-bg);cursor:pointer;-webkit-user-select:none;user-select:none;border:2px solid #0000;border-radius:8%;flex-shrink:0;font-family:Courier Prime,Georgia,Times New Roman,Times,monospace;font-weight:700;transition:transform .12s;position:relative;box-shadow:0 2px 4px #00000080}.my-area .card:not(:first-child){margin-left:calc(-1 * var(--card-w) + 22px)}.card.selected{border-color:var(--accent);transform:translateY(-16px)}.card.back{overflow:hidden}.card.back svg{width:100%;height:100%;display:block}.card.card-art{overflow:hidden}.card-art-img{width:100%;height:100%;display:block}.card.dragging{opacity:.35}.card.red{color:var(--card-red)}.card.black{color:var(--card-black)}.card-corner{text-align:center;font-size:clamp(.65rem,3vw,1rem);font-weight:800;line-height:1.05;position:absolute;top:3px;left:4px}.card-corner-suit{font-size:.85em}.card-corner-suit-inline{margin-left:.1em;font-size:.75em}.toast{color:#fff;text-align:center;background:#4a1620;border:1px solid #b3273f;border-radius:8px;max-width:90vw;padding:.6rem 1rem;animation:4s forwards fadeout;position:fixed;bottom:1rem;left:50%;transform:translate(-50%)}@keyframes fadeout{0%,70%{opacity:1}to{opacity:0}}.overlay{z-index:100;background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.invite-overlay{text-align:center}.invite-code-display{letter-spacing:.15em;color:var(--accent);margin:.5rem 0 0;font-size:2rem;font-weight:800}.score-summary{max-width:460px}.score-breakdown{border-collapse:collapse;width:100%;margin:.8rem 0 1.2rem;font-size:.9rem}.score-breakdown th,.score-breakdown td{text-align:right;padding:.3rem .4rem}.score-breakdown th:first-child,.score-breakdown td:first-child{text-align:left}.score-breakdown th{color:var(--accent);font-weight:700}.score-breakdown tr:not(:last-child):not(:first-child){border-bottom:1px solid #333}.score-breakdown-total td{color:var(--accent);padding-top:.5rem;font-weight:800}
