/* A viewport overlay never changes the Three.js mount, aspect or camera. */
.hand-result-overlay{position:fixed;inset:0;z-index:25;display:grid;place-items:center;padding:16px;pointer-events:none;background:#102a2638}
.hand-result-overlay.is-paused{visibility:hidden}
.hand-result-panel{width:min(760px,100%);max-height:88dvh;display:flex;flex-direction:column;pointer-events:auto;background:#fcf6e7;color:#233f32;border:2px solid #c9a458;border-radius:18px;box-shadow:0 16px 65px #08221888;overflow:hidden}
.hand-result-panel header{padding:15px 24px;background:linear-gradient(115deg,#204f3c,#347157);color:#fff2c7}
.hand-result-panel header span{font-size:12px}.hand-result-panel h2{margin:0;font-size:25px;letter-spacing:.12em}
.hand-result-body{overflow:auto;overscroll-behavior:contain;padding:18px 24px;position:relative;min-height:0;scrollbar-gutter:stable}
.result-step{visibility:hidden;opacity:0;transform:translateX(12px);transition:opacity .18s,transform .22s;margin:0 0 10px}
.result-step.is-visible{visibility:visible;opacity:1;transform:none}
.result-text{position:relative;margin:0;line-height:1.65;overflow-wrap:anywhere}
.result-measure{visibility:hidden}.result-writing{position:absolute;inset:0}
.result-headline{font-size:22px;font-weight:800;color:#8e4c22}.result-hand{padding:10px 0;border-bottom:1px solid #d5d9c5}
.result-hand .result-text{font-weight:700;margin-bottom:8px}.result-balance{padding:6px 10px;background:#e8efdf;border-radius:7px}
.result-formula{font-weight:700;color:#925428;border-bottom:1px solid #dfd9c4;padding-bottom:12px}
.winning-tiles{display:flex;align-items:start;flex-wrap:wrap;gap:3px;margin:5px 0}.winning-tiles .tile.small{width:29px;height:42px;flex:none}.winning-meld{display:flex;gap:1px;margin-right:6px}.winning-incoming{margin-left:7px;display:grid;justify-items:center}.winning-incoming small{font-size:9px}.winning-incoming .tile{outline:2px solid #b98b30}
.hand-result-panel footer{padding:12px 20px;border-top:1px solid #d2d6bf;background:#f5eedb;display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.hand-result-panel footer p{margin:0;flex:1 1 100%;font-weight:700;color:#386344}.hand-result-panel footer .button{min-height:38px;padding:6px 15px}
@media(max-width:700px){.hand-result-overlay{padding:8px}.hand-result-panel{max-height:92dvh;border-radius:13px}.hand-result-panel header{padding:12px 16px}.hand-result-panel h2{font-size:21px}.hand-result-body{padding:12px;font-size:12px}.result-headline{font-size:18px}.winning-tiles .tile.small{width:24px;height:35px}.hand-result-panel footer{padding:10px 12px;font-size:12px}}
@media(prefers-reduced-motion:reduce){.result-step{transition:none;transform:none}}
