/* Profile identity and a full-width, countable playing hand. */
.profile-universe-link{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:18px 0 28px}.profile-universe-link p{color:var(--muted);font-size:12px;line-height:1.7}.profile-universe-link .btn{flex-shrink:0}
.profile-avatar.avatar-picture{position:relative;display:inline-block}.profile-avatar.avatar-picture>.avatar-sprite,.profile-avatar.avatar-picture>img{position:absolute;inset:0;width:100%;height:100%}
.avatar-gallery .profile-avatar,.avatar-gallery .profile-avatar *{pointer-events:none}
.avatar-picker{min-inline-size:0;min-width:0;width:100%;max-width:100%}.avatar-gallery{min-width:0;width:100%}.profile-details form{min-width:0}
.ludo-player-strip>.text-link{flex-shrink:0;white-space:nowrap;font-size:11px}.ludo-player-strip>div{min-width:0}.game-route .table-arena.room3d-ready .opponent,.game-route .table-arena.room3d-ready[data-crowded=true] .opponent{flex-direction:row!important}
body .game-route .table-arena.room3d-ready:not([data-crowded=true]) .opponent strong,body[data-large-text=true] .game-route .table-arena.room3d-ready:not([data-crowded=true]) .opponent strong{font-size:16px!important}
body .game-route .table-arena.room3d-ready[data-crowded=true] .opponent{max-width:106px!important}body .game-route .table-arena.room3d-ready[data-crowded=true] .opponent strong{font-size:14px!important;max-width:84px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
body[data-native=true],body[data-native=true] *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}body[data-native=true] input,body[data-native=true] textarea,body[data-native=true] [contenteditable=true]{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}body[data-native=true] img{-webkit-user-drag:none}
@media(pointer:coarse){body,body *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}body input,body textarea,body [contenteditable=true]{-webkit-user-select:text;user-select:text}}
.ludo-lobby{grid-template-columns:minmax(0,1fr);max-width:940px;margin-inline:auto}.ludo-title-scene{justify-content:center;gap:48px}.ludo-lower{max-width:940px;margin-inline:auto}.profile-button{padding:0!important;overflow:hidden}.profile-button>.profile-avatar{width:100%;height:100%;border:0}.profile-avatar{display:inline-grid;place-items:center;vertical-align:middle;overflow:hidden;flex-shrink:0}.profile-avatar.avatar-picture{background:#203766;border:1px solid #7d94bf}.profile-avatar img{width:100%;height:100%;object-fit:cover}.avatar-sprite{display:block;width:100%;height:100%;background-size:400% 300%;background-repeat:no-repeat}.profile-top>.profile-avatar{width:64px;height:64px;font-size:20px}
.avatar-picker{margin-block:24px;padding-top:16px;border-top:1px solid var(--line)}.avatar-picker>legend{font-size:18px;font-weight:600}.avatar-picker>p{font-size:13px;line-height:1.7;color:var(--muted);margin:8px 0 18px;max-width:64ch}.profile-photo-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.photo-picker{position:relative;cursor:pointer}.photo-picker input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}.photo-picker:focus-within{outline:2px solid var(--gold);outline-offset:4px}.avatar-photo-status{font-size:12px;color:var(--muted)}.avatar-photo-choice{display:flex;align-items:center;gap:12px;margin-top:14px}.avatar-photo-choice[hidden]{display:none}.avatar-gallery-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-block:24px 16px}.avatar-gallery-tabs button{min-height:40px;padding:8px 14px;background:#203766;border:1px solid #647faa;border-radius:8px;font-size:12px;color:var(--text)}.avatar-gallery-tabs button[aria-pressed=true]{background:var(--gold);color:var(--gold-ink);border-color:var(--gold)}.avatar-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:12px;max-width:850px}.avatar-gallery label{position:relative;display:grid;gap:8px;justify-items:center;align-content:start;padding:10px 6px;border:1px solid transparent;border-radius:12px;cursor:pointer;min-width:0}.avatar-gallery label[hidden]{display:none}.avatar-gallery label:has(input:checked){background:#284474;border-color:var(--gold)}.avatar-gallery input{position:absolute;opacity:0;top:10px;left:10px}.avatar-gallery label:focus-within{outline:2px solid var(--gold);outline-offset:2px}.avatar-gallery .profile-avatar{width:76px;height:76px;border-radius:50%}.avatar-gallery label>span:last-child{font-size:11px;text-align:center;line-height:1.4;color:var(--muted)}
.game-route .my-hand{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto!important;gap:4px 8px!important;width:100%;max-height:38dvh!important;padding:7px 10px 9px!important}.game-route .my-hand .hand-title{grid-column:1!important;grid-row:1!important;min-width:0;width:auto;padding:0!important;display:flex;align-items:center;flex-wrap:wrap;gap:4px}.game-route .my-hand .hand-title h2{font-size:13px}.game-route .my-hand .hand-title small{font-size:10px;line-height:1.5}.game-route .my-hand .history-trigger{position:static;width:32px;min-width:32px;height:36px;min-height:36px;padding:7px}.game-route .my-hand .hand-actions{grid-column:2!important;grid-row:1!important;display:flex;align-items:center;gap:5px;margin:0!important;padding:0!important;width:auto!important}.game-route .my-hand .hand-actions .btn{min-width:52px!important;width:auto;min-height:36px!important;height:36px!important;max-height:36px;padding:5px 7px!important;display:inline-flex;flex-direction:row!important;gap:4px;font-size:11px!important}.game-route .my-hand .hand-actions .btn svg{width:15px;height:15px}.game-route .my-hand .reaction-button{width:36px!important;min-width:36px!important;height:36px!important;min-height:36px!important;padding:7px}.game-route .my-hand .reaction-button svg{width:18px;height:18px}.game-route .my-hand .hand-scroller{grid-column:1/-1!important;grid-row:2!important;display:flex;width:100%;max-width:100%;min-height:92px!important;height:auto;justify-content:flex-start;margin:0;padding:8px 4px 4px!important;gap:8px;overflow-x:auto;overflow-y:hidden;scroll-padding:6px}.game-route .my-hand .hand-card{width:60px!important;min-width:60px!important;flex:0 0 60px!important;max-width:none}.game-route .my-hand .hand-card img{width:100%;max-width:none}.game-route .my-hand .selection-preview,.game-route .my-hand .hand-family,.game-route .my-hand .hand-situation{grid-column:1/-1!important;grid-row:3!important}.game-route .my-hand .hand-family~.hand-scroller{grid-row:4!important}.game-route .my-hand .hand-observer{max-width:200px}.game-route .my-hand:not(:has(.hand-actions)) .hand-title{grid-column:1/-1!important}
.game-route .table-arena.room3d-ready .opponent,.game-route .table-arena.room3d-ready[data-crowded=true] .opponent:not(.current),.game-route .table-arena.room3d-ready[data-crowded=true] .opponent.current{display:inline-flex!important;align-items:center;justify-content:center;gap:5px!important;padding:5px 8px!important;width:auto;max-width:136px!important;min-height:36px!important;background:#10234bed!important;border:1px solid #829bc5!important;border-radius:9px!important;text-shadow:none!important;box-shadow:0 2px 7px #0710204d;z-index:5}.game-route .table-arena.room3d-ready .opponent strong,.game-route .table-arena.room3d-ready[data-crowded=true] .opponent strong,body[data-large-text=true] .game-route .table-arena.room3d-ready .opponent strong{font-size:14px!important;font-weight:600;line-height:1.3;max-width:96px;white-space:normal;overflow-wrap:anywhere;text-shadow:none;color:var(--text)}.game-route .table-arena.room3d-ready .opponent.current{border-color:var(--gold)!important}.game-route .table-arena.room3d-ready .opponent.current strong{color:var(--gold)}.game-route .opponent .profile-avatar,.game-route .opponent .robot-emblem{display:inline-block!important;width:27px!important;height:27px!important;min-width:27px;border-radius:50%;flex:0 0 27px}.game-route .opponent .thinking-dots{display:none!important}.game-route .table-arena.room3d-ready[data-crowded=true] .opponent{max-width:118px!important;padding:4px 5px!important}.game-route .table-arena.room3d-ready[data-crowded=true] .opponent strong{font-size:12px!important;max-width:80px}.game-route .table-arena.room3d-ready[data-crowded=true] .opponent .robot-emblem{display:none!important}.motion-counter{position:fixed;z-index:87;max-width:190px;padding:7px 11px;background:#142d58;color:#fff8e8;border:1px solid #a3b6d5;border-radius:8px;font-size:12px;font-weight:600;line-height:1.4;pointer-events:none}
@media(min-width:900px){.game-route .my-hand .hand-card{width:72px!important;min-width:72px!important;flex-basis:72px!important}.game-route .my-hand .hand-scroller{min-height:112px!important}.game-route .my-hand .hand-title h2{font-size:15px}.game-route .my-hand .hand-title small{font-size:12px}}
@media(max-width:370px){.game-route .my-hand{padding-inline:6px!important;gap:4px!important}.game-route .my-hand .hand-actions .btn{min-width:46px!important;padding:5px!important;font-size:10px!important}.game-route .my-hand .hand-title small{display:none}.game-route .my-hand .hand-card{width:56px!important;min-width:56px!important;flex-basis:56px!important}.avatar-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}
