/* EverestBuzz shared card fan (see card-fan.js): the Marriage hand for every card game. */
.online-hand.eb-fan{display:block;position:relative;overflow:hidden;max-width:none;margin:14px 0 0;padding:0;gap:0;perspective:none;touch-action:pan-y;-webkit-user-select:none;user-select:none}
.eb-fan>*{position:absolute;top:0;left:0;margin:0!important;transform-origin:50% 100%}
.eb-fan .table-card{padding:6px;font-size:17px;line-height:1.05;box-shadow:0 6px 14px #0008;cursor:pointer}
.eb-fan .table-card small{font-size:14px}
.eb-fan .table-card b{font-size:28px;right:7px;bottom:8px}
.eb-fan .table-card.selected{box-shadow:0 0 0 3px #f2c864,0 16px 26px #000a}
.eb-fan .table-card:focus-visible{outline:3px solid #f2c864;outline-offset:3px}
.eb-fan .table-card:disabled{opacity:1;filter:saturate(.75) brightness(.9)}
/* Gullaam Chor shows its own cards in a wrapper; the card fills it. */
.eb-fan>.tgg-own-card>.table-card{width:100%;height:100%;min-width:0}
.eb-fan.eb-fan-ready>*{transition:left .2s cubic-bezier(.2,.75,.2,1),top .2s cubic-bezier(.2,.75,.2,1),transform .2s cubic-bezier(.2,.75,.2,1)}
.eb-fan-browse{display:flex;align-items:center;justify-content:space-between;gap:6px 12px;flex-wrap:wrap;font-size:13px;line-height:1.3;margin:2px 0 6px;opacity:.85}
.eb-fan-browse label{display:flex;align-items:center;gap:8px;font-weight:700}
.eb-fan-browse label[hidden]{display:none}
.eb-fan-browse input{width:150px;min-height:44px;accent-color:#2fbf8f}
.eb-fan-help:empty{display:none}
/* Phones: one short help line; the long keyboard tips are hidden (screen readers still get the card hint). */
@media (max-width:600px),(pointer:coarse){.eb-card-tip{display:none}.eb-fan-browse input{width:120px}}
/* Kitti's group editor: each group of three is a small fan too. */
.kitti-group>div{flex-wrap:nowrap!important;padding-top:6px}
.kitti-group>div>.table-card{transform-origin:50% 100%}
.kitti-group>div>.table-card+.table-card{margin-left:-14px!important}
.kitti-group>div>.table-card:first-child{rotate:-7deg;translate:0 4px}
.kitti-group>div>.table-card:last-child{rotate:7deg;translate:0 4px}
.kitti-group>div>.table-card.selected{translate:0 -10px}
/* Action buttons: one tidy row that fits a phone; buttons share the width and wrap only when they must. */
@media (max-width:600px){
 #online-table .table-actions,.party-practice .actions,.kitti-editor .actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:stretch}
 #online-table .table-actions>button,.party-practice .actions>button,.kitti-editor .actions>button{flex:1 1 0;min-width:96px;min-height:46px;padding:8px 10px;font-size:15px;line-height:1.15}
 #online-table .table-actions>p,.party-practice .actions>p{flex-basis:100%;margin:0}
 .card-sorting{justify-content:flex-end}
}
@media (prefers-reduced-motion:reduce){.eb-fan.eb-fan-ready>*{transition:none}}
