*{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;overflow:hidden}:root{--card-w:clamp(132px, 15.2vw, 188px);--card-h:calc(var(--card-w) * 1.44444);--card-radius:15px;--flip-duration:.35s;--layout-transition:.26s cubic-bezier(.42, 0, .58, 1)}@media (width<=1100px){:root{--card-w:clamp(88px, 10.8vw, 188px);--card-radius:13px}}@media (width<=640px){:root{--card-w:clamp(72px, 11.4vw, 188px);--card-radius:11px}}.table-pill{appearance:none;font:inherit;letter-spacing:.02em;color:#fff8f5e6;cursor:pointer;-webkit-backdrop-filter:blur(12px);background:#2a0a107a;border:1px solid #ffebdc38;border-radius:999px;margin:0;font-size:14px;font-weight:600;transition:background .25s,color .25s,border-color .25s,box-shadow .25s,filter .25s,transform .22s;box-shadow:inset 0 1px #ffffff12}.table-pill:hover{filter:brightness(1.12);background:#340e1694;border-color:#ffe1c861}.table-pill:active:not(:disabled){filter:brightness(1.08);transform:scale(.97);box-shadow:inset 0 1px #ffffff14,0 0 20px #dcaa6433}.table-pill:disabled{opacity:.55;cursor:not-allowed;transform:none}.table-mode-tabs{top:max(16px, env(safe-area-inset-top,0px));z-index:1000;pointer-events:auto;align-items:center;gap:12px;margin:0;padding:0;list-style:none;display:flex;position:fixed;left:50%;transform:translate(-50%)}.table-mode-tab{padding:10px 22px}.table-mode-tab.is-active{color:#fffef8;filter:brightness(1.05);background:#3e121cb8;border-color:#e6c8787a;box-shadow:inset 0 1px #ffffff1a,0 0 0 1px #c8a05a2e,0 0 24px #c8965033}.table-mode-tab.is-active:active{transform:scale(.97)}.table-deck-controls{bottom:max(20px, env(safe-area-inset-bottom,0px));z-index:1000;pointer-events:auto;align-items:center;gap:14px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.table-deck-btn{text-align:center;min-width:7.5rem;padding:11px 26px;font-weight:600}.deck-container{z-index:3;pointer-events:none;justify-content:center;width:100%;max-width:100%;display:flex;position:absolute;top:58%;left:50%;transform:translate(-50%,-50%)}.deck-position-wrap{pointer-events:auto;justify-content:center;width:100%;display:flex}.deck-container.is-dragging .deck-stack{-webkit-user-select:none;user-select:none}.deck-stack{width:min(100vw,1920px);min-width:min(100vw,100%);min-height:calc(520px * var(--deck-layout-scale,1));height:min(58vh, calc(620px * var(--deck-layout-scale,1)));cursor:pointer;transition:min-height var(--layout-transition);position:relative}.deck-card-layer{width:var(--card-w);height:var(--card-h);margin-left:calc(var(--card-w) / -2);position:absolute;bottom:0;left:50%}.card-position{width:var(--card-w);height:var(--card-h);transform-origin:bottom;transition:transform .28s cubic-bezier(.22,1,.36,1);position:relative}.deck-container.is-dragging .card-position{will-change:transform}.deck-container.is-insert-arc .card-position{will-change:transform;transition:transform .28s cubic-bezier(.22,1,.36,1)}.deck-stack.is-bulk-flip .card-inner{will-change:transform}.card{width:var(--card-w);height:var(--card-h);perspective:1200px;transform-style:preserve-3d;cursor:grab;border-radius:var(--card-radius);border:1px solid #ffffff1a;outline:none;transition:transform .28s cubic-bezier(.22,1,.36,1);position:absolute;inset:0}.card.floating{width:var(--card-w);height:var(--card-h);cursor:default;transform:translate3d(calc(var(--float-x,0px)), calc(var(--float-y,0px)), 0) translate(-50%, -50%) rotate(-3deg) scale(1.1);z-index:2147483646;pointer-events:none;border:1px solid #ffffff1f;margin:0;transition:none;position:fixed;top:0;left:0}.card.floating .card-inner{transition:none;box-shadow:0 20px 40px #0006,0 8px 16px #00000040,inset 0 1px #ffffff38}.card:active:not(.floating){cursor:grabbing}.card:focus-visible{border-radius:var(--card-radius);box-shadow:0 0 0 2px #f5e6c873}.card-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform var(--flip-duration) cubic-bezier(.45, 0, .55, 1);border-radius:var(--card-radius);backface-visibility:hidden;position:relative;box-shadow:0 8px 20px #00000029,0 2px 8px #0000001a,inset 0 1px #ffffff6b,inset 0 -1px #0000000f}.card.flipped .card-inner{transform:rotateY(180deg)}.card-front,.card-back{border-radius:var(--card-radius);backface-visibility:hidden;width:100%;height:100%;transform-style:preserve-3d;background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.card-back{background-color:#8a1426;background-image:url(/assets/card-back-real.png);transform:rotateY(180deg)}.card-front{background-color:#faf8f3;transform:rotateY(0)}.card-front-photo{object-fit:cover;border-radius:var(--card-radius);z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.card-front-fallback{z-index:0;pointer-events:none;border-radius:var(--card-radius);background:linear-gradient(168deg,#fdfcfa,#f2eee6 48%,#ebe6dc);border:1px solid #2d231c59;position:absolute;inset:0}.card-front-fallback.red{color:#b32030}.card-front-fallback.black{color:#141414}.card-front-corner{flex-direction:column;align-items:center;font-size:27px;font-weight:700;line-height:1.05;display:flex;position:absolute}.card-front-corner.tl{top:12px;left:15px}.card-front-corner.br{bottom:12px;right:15px;transform:rotate(180deg)}.card-suit{margin-top:3px;font-size:30px}.card-front-center{opacity:.88;font-size:63px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.table-mode-placeholder{letter-spacing:.04em;color:#fff0e673;pointer-events:none;z-index:4;font-size:15px;font-weight:600;position:fixed;top:46%;left:50%;transform:translate(-50%,-50%)}.shuffle-view{z-index:4;pointer-events:auto;flex-direction:column;min-height:calc(100dvh - 100px);padding:0 18px 140px;display:flex;position:relative}.shuffle-deck{pointer-events:none;position:relative}.shuffle-deck-mover{z-index:12;pointer-events:none;transition:top .3s cubic-bezier(.45,0,.55,1),right .3s cubic-bezier(.45,0,.55,1),left .3s cubic-bezier(.45,0,.55,1),transform .3s cubic-bezier(.45,0,.55,1);position:fixed}.shuffle-deck-mover--corner{top:max(40px, env(safe-area-inset-top,0px));right:max(40px, env(safe-area-inset-right,0px));left:auto;transform:none}.shuffle-deck-mover--center{top:33%;left:50%;right:auto;transform:translate(-50%,-50%)}.shuffle-view .shuffle-deck .deck-stack{width:var(--card-w);min-width:var(--card-w);max-width:var(--card-w);min-height:calc(var(--card-h) + 200px);cursor:default;height:auto}.shuffle-deck-mover--merge .shuffle-deck .deck-stack{animation:.3s cubic-bezier(.45,0,.55,1) shuffle-merge-compress}@keyframes shuffle-merge-compress{0%{transform:scale(1)}40%{transform:scale(.965)}72%{transform:scale(1.012)}to{transform:scale(1)}}.shuffle-riffle-root{--shuffle-band-top:clamp(72px, 22vh, 220px);z-index:9;pointer-events:none;position:fixed;inset:0}.shuffle-riffle-root .deck-stack{width:var(--card-w);min-width:var(--card-w);max-width:var(--card-w);min-height:var(--card-h);height:var(--card-h);cursor:default}.shuffle-riffle-band{padding-top:var(--shuffle-band-top);padding-left:max(12px, env(safe-area-inset-left,0px));padding-right:max(12px, env(safe-area-inset-right,0px));justify-content:center;align-items:flex-start;display:flex}.shuffle-riffle-pair{flex-direction:row;justify-content:center;align-items:flex-start;gap:clamp(100px,12vw,170px);display:flex}.shuffle-riffle-pair--spread{gap:clamp(132px,16vw,220px)}.shuffle-split-pile{z-index:10;width:var(--card-w);min-height:var(--card-h);border-radius:10px;position:relative;box-shadow:0 12px 28px #0006}.shuffle-riffle-center-wrap{left:50%;top:var(--shuffle-band-top);z-index:11;width:var(--card-w);min-height:var(--card-h);border-radius:10px;position:fixed;transform:translate(-50%);box-shadow:0 14px 32px #0000006b}.shuffle-overhand-band{padding-top:var(--shuffle-band-top);padding-left:max(12px, env(safe-area-inset-left,0px));padding-right:max(12px, env(safe-area-inset-right,0px));justify-content:center;align-items:flex-start;display:flex}.shuffle-overhand-row{justify-content:center;align-items:flex-start;gap:clamp(36px,6vw,92px);display:flex}.shuffle-overhand-pile{z-index:10;width:var(--card-w);will-change:transform, opacity;border-radius:10px;min-height:0;position:relative}.shuffle-overhand-center-wrap{left:50%;top:calc(var(--shuffle-band-top) + 14px);z-index:11;width:var(--card-w);min-height:var(--card-h);border-radius:10px;position:fixed;transform:translate(-50%);box-shadow:0 14px 32px #0000006b}.shuffle-overhand-pile .card-position,.shuffle-overhand-center-wrap .card-position,.shuffle-riffle-center-wrap .card-position,.shuffle-split-pile .card-position{will-change:transform;transition:transform .42s cubic-bezier(.22,1,.36,1)}.shuffle-wash-layer{z-index:13;pointer-events:none;position:fixed;inset:0}.shuffle-wash-card{width:var(--card-w);height:var(--card-h);pointer-events:none;will-change:left, top, transform;transition:left .62s ease-in-out,top .62s ease-in-out,transform .62s ease-in-out;position:fixed}.shuffle-riffle-center-stack .deck-card-layer:last-child .card-position{animation:.42s cubic-bezier(.45,0,.55,1) shuffle-card-drop}@keyframes shuffle-card-drop{0%{opacity:.65}to{opacity:1}}.shuffle-options{width:100%;max-width:720px;margin-top:auto;margin-left:auto;margin-right:auto;padding:24px 0 0}.shuffle-options-title{letter-spacing:.12em;text-transform:uppercase;color:#ffebdc80;text-align:center;margin:0 0 14px;padding-top:8px;font-size:13px;font-weight:700}.shuffle-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}@media (width<=520px){.shuffle-grid{grid-template-columns:repeat(2,1fr)}}.shuffle-method{appearance:none;min-height:4.5rem;font:inherit;text-align:center;color:#fff8f5bf;cursor:pointer;-webkit-backdrop-filter:blur(10px);background:#2a0a106b;border:1px solid #ffebdc2e;border-radius:12px;margin:0;padding:16px 14px;font-size:14px;font-weight:600;transition:background .2s,border-color .2s,transform .15s;position:relative}.shuffle-method:hover:not(:disabled){background:#340e168c;border-color:#e6c87859}.shuffle-method:disabled{opacity:.55;cursor:default}.shuffle-method--active:not(:disabled){color:#fffef8;background:#3e121c9e;border-color:#e6c8786b}.shuffle-method-badge{letter-spacing:.06em;text-transform:uppercase;color:#ffdcc866;margin-top:6px;font-size:11px;font-weight:600;display:block}.app-container{isolation:isolate;background-color:#3a060e;background-image:radial-gradient(115% 95% at 50% 44%,#9e2434 0%,#7a1020 26%,#6b0f1a 52%,#4a0810 80%,#2c0408 100%);width:100%;min-height:100dvh;position:relative;overflow:hidden}.app-container:before{content:"";opacity:.48;filter:blur(1.2px);mix-blend-mode:overlay;pointer-events:none;z-index:0;background-image:repeating-linear-gradient(12deg,#ffffff05 0,#0000 1px 6px,#0000000a 7px,#0000 8px),repeating-linear-gradient(-9deg,#0000 0,#fff0f004 1px,#0000 5px),radial-gradient(70% 55% at 48% 48%,#ffffff0b 0%,#0000 62%);position:absolute;inset:-4%}.app-container:after{content:"";pointer-events:none;z-index:1;background:radial-gradient(95% 90% at 50% 48%,#0000 0%,#00000024 55%,#0000006b 100%);position:absolute;inset:0}.table-content{z-index:2;width:100%;height:100%;min-height:100dvh;position:relative}.table-content:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(75% 58% at 50% 52%,#ffdcd20a 0%,#0000 58%);position:absolute;inset:0}
