/* All hand sizes share one measured layout; empty tracks are never reserved. */
body[data-page=game] .your-hand{height:100%;gap:0;isolation:isolate;--hand-lift:7px}
body[data-page=game] .your-hand .hand-heading{height:var(--hand-heading-h);min-height:var(--hand-heading-h);position:relative;z-index:20;padding:0 2px;gap:5px}
body[data-page=game] .your-hand .hand-heading strong{display:flex;align-items:center;gap:4px;min-width:0;font-size:15px}
body[data-page=game] .your-hand .hand-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
body[data-page=game] .your-hand .hand-total{flex:none;font-variant-numeric:tabular-nums;white-space:nowrap}
body[data-page=game] .your-hand .hand-scroll{flex:none;height:var(--hand-area-h);min-height:0;padding:12px 14px 6px;overflow:visible}
body[data-page=game] .your-hand .hand-cards{display:flex;width:max-content;max-width:100%;min-width:0;height:var(--hand-button-h);align-items:flex-end;justify-content:center;gap:0;padding:0;margin:0 auto}
body[data-page=game] .your-hand .hand-card{height:var(--hand-button-h);min-height:44px;flex:0 0 var(--hand-step);width:var(--hand-step);min-width:44px;padding:0;position:relative;transform:none}
body[data-page=game] .your-hand .hand-card:last-child,body[data-page=game] .your-hand .hand-card.selected{flex-basis:var(--hand-card-w);width:var(--hand-card-w)}
body[data-page=game] .your-hand .hand-card>.card{--card-w:var(--hand-card-w)!important;height:var(--hand-face-h);aspect-ratio:2/3;position:absolute;left:0;bottom:0;transform:rotate(var(--card-angle));transform-origin:50% 100%}
body[data-page=game] .your-hand .hand-card.selected>.card{transform:translateY(calc(-1*var(--hand-lift)));outline:3px solid var(--gold)}
body[data-page=game] .your-hand .selected-check{width:18px;height:18px;font-size:12px;right:3px;top:calc(var(--hand-button-h) - var(--hand-face-h) + 2px)}
body[data-page=game] .your-hand .selected-card-note{height:var(--hand-footer-h);min-height:var(--hand-footer-h);line-height:var(--hand-footer-h);font-size:13px;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}
body[data-page=game] .your-hand .hand-card .transfer-mark{top:22px;left:29px;width:13px;height:13px;font-size:10px}
body[data-page=game] .your-hand.flat-hand{--hand-lift:0px}
body[data-page=game] .your-hand.flat-hand .hand-scroll{padding:8px 14px 0}
body[data-page=game] .your-hand.flat-hand .hand-cards{gap:6px}
body[data-page=game] .your-hand.flat-hand .hand-card{flex:0 0 var(--hand-card-w);width:var(--hand-card-w)}
body[data-page=game] .your-hand.flat-hand .hand-card>.card{transform:none;aspect-ratio:auto}
body[data-page=game] .your-hand.flat-hand .hand-card.selected>.card{transform:none;outline-width:2px}
body[data-page=game] .your-hand.flat-hand .selected-check{top:2px;right:2px;width:13px;height:13px;font-size:10px}
body[data-page=game] .your-hand.flat-hand .hand-card .trump-mark,.flying-card.mini-flight .card.art .trump-mark{top:auto;left:auto;right:2px;bottom:2px;width:12px;height:12px}
body[data-page=game] .your-hand.flat-hand .transfer-mark{left:auto;right:2px;top:2px;width:12px;height:12px;font-size:10px}
body[data-page=game] .your-hand.flat-hand .hand-card.selected .transfer-mark{visibility:hidden}
body[data-page=game] .your-hand.empty-hand .hand-scroll{height:56px;padding:6px 14px}
body[data-page=game] .your-hand.empty-hand .hand-cards{width:100%;height:44px}
body[data-page=game] .your-hand .no-hand{height:44px;min-height:44px;max-width:100%;display:flex;align-items:center;justify-content:center;padding:0 14px;border:1px solid #fff2;border-radius:14px;color:#fff9dcb0;font-size:14px;text-align:center;line-height:18px}
body[data-page=game] .your-hand.flat-hand .card.art .card-image{inset:auto;height:calc(100%*900/280);width:auto;top:calc(100%*-30/280);left:50%;transform:translateX(calc(-100%*110/600));object-fit:fill}
/* The complete hand lives in one clipped, horizontal rail. */
body[data-page=game] .your-hand .hand-scroll{overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;touch-action:none;scrollbar-width:none;position:relative}
body[data-page=game] .your-hand .hand-scroll::-webkit-scrollbar{display:none}
body[data-page=game] .your-hand.rail-hand .hand-scroll{width:calc(100% + 12px);margin-right:-12px;padding-right:16px}
body[data-page=game] .your-hand.rail-hand .hand-cards{max-width:none;justify-content:flex-start;margin-left:0;margin-right:0}
body[data-page=game] .your-hand.rail-hand.flat-hand .hand-cards{display:flex;width:max-content;gap:6px}
body[data-page=game] .your-hand.rail-hand.flat-hand .hand-card{flex:0 0 var(--hand-card-w)}
body[data-page=game] .your-hand.rail-hand .hand-card{touch-action:none}
.rail-cue{margin-left:auto;color:#e6c979;font-size:19px;line-height:20px;padding:0 5px;pointer-events:none}
.hand-edge{display:none;position:absolute;top:var(--hand-heading-h);height:var(--hand-area-h);width:16px;pointer-events:none;z-index:15}
.hand-edge.edge-before{left:0;background:linear-gradient(90deg,#003e2e,transparent)}
.hand-edge.edge-after{right:-12px;background:linear-gradient(270deg,#003e2e66,transparent)}
.has-before .edge-before,.has-after .edge-after{display:block}
body.hand-browsing .hand-scroll{cursor:grabbing}
body[data-page=game] .rail-hand .hand-scroll{cursor:grab}
body[data-page=game] .your-hand .hand-scroll:focus-visible{outline:1px solid #e6c97988;outline-offset:-1px;border-radius:10px}

@media(max-width:303px){body[data-page=game] .your-hand .hand-heading strong{font-size:13px}}
