/* Applied only while the rules engine has a human choice pending. */
.game-page [data-selection-id]{transition:opacity 180ms ease,box-shadow 180ms ease,outline-color 180ms ease;outline:2px solid transparent;outline-offset:3px}
.selection-mode-active .ineligible-target{opacity:.4;cursor:default}
.game-page .stadium,.game-page .prize-zone{transition:opacity 180ms ease}
.selection-mode-active .stadium,.selection-mode-active .prize-zone:not(:has(.valid-target)){opacity:.4}
.selection-mode-active .valid-target{opacity:1;cursor:pointer;outline-color:#76c9ff;animation:selection-pulse 1.65s ease-in-out infinite}
.selection-mode-active .valid-target.selected-target{outline-color:#ffda80;animation-name:selection-pulse-gold}
.selection-mode-active .valid-target:focus-visible{outline:3px solid #fff;outline-offset:5px}
@keyframes selection-pulse{0%,100%{box-shadow:0 0 6px 2px #5dafff70}50%{box-shadow:0 0 16px 5px #65bcffb0}}
@keyframes selection-pulse-gold{0%,100%{box-shadow:0 0 7px 2px #ffc85780}50%{box-shadow:0 0 18px 5px #ffd579c0}}
.selection-resolving [data-selection-id]{opacity:1;animation:none;pointer-events:none}
.inline-selection{margin:12px 0;padding:14px 16px;border:1px solid #739ac3;border-radius:8px;background:#152334;scroll-margin-top:12px}
.inline-selection:empty,.inline-inspector:empty{display:none}
.selection-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.selection-heading h2{font-size:16px;line-height:1.4;letter-spacing:0}
.selection-heading p{font-size:13px;line-height:1.5;color:#c3d4e5;margin-top:4px}
.selection-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:10px 0 0}
.selection-controls .btn{min-height:44px}
.selection-count{font-size:14px;color:#e0e9f4;font-variant-numeric:tabular-nums}
.selection-tray{display:flex;gap:12px;overflow-x:auto;overscroll-behavior-x:contain;touch-action:pan-x pan-y;padding:10px 6px 15px;scrollbar-width:thin}
.selection-option{flex:0 0 94px;display:flex;flex-direction:column;gap:6px;min-width:0}
.selection-option .choice-card{width:100%;min-height:44px;position:relative;background:#0e1927;border-radius:6px;padding:6px;border:1px solid #536d87}
.selection-option img{display:block;width:100%;height:auto;aspect-ratio:.716;object-fit:contain}
.selection-option .choice-card strong,.selection-option .choice-card small{display:block;font-size:12px;line-height:1.3}
.selection-option .choice-card small{color:#becddd;margin-top:5px}
.selection-option .selection-read{min-height:36px;padding:4px;font-size:12px}
.inline-selection .choice-tabs{gap:6px;margin:12px 0 4px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px}
.inline-selection .choice-tabs .btn{white-space:nowrap;min-height:40px;font-size:12px;padding:9px}
.inline-selection .compact-gallery{max-height:300px;overflow-y:auto}
.inline-selection .detail-grid{grid-template-columns:100px 1fr;gap:16px;margin-top:12px}
.inline-selection .detail-grid>img{width:100%}
.inline-inspector{padding:16px;border:1px solid #516d88;background:#142030;border-radius:8px;margin:12px 0;scroll-margin-top:12px}
.inline-inspector header{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}
.inline-inspector h2{font-size:18px}.inline-inspector header p{color:#c5d5e3;font-size:13px;margin-top:5px}
.inline-inspector .detail-grid{grid-template-columns:100px 1fr;gap:18px}
.inline-inspector .detail-actions{display:flex;gap:8px;flex-wrap:wrap}
.inline-inspector .detail-actions .btn{min-height:44px}
.inline-inspector .detail-image{width:100%}
.prize-zone .prize-select-card{padding:0;display:block;cursor:pointer}
.prize-zone:has(.prize-select-card){position:relative;z-index:2}
@media(max-width:600px){
 .inline-selection{padding:12px}.selection-heading{display:block}.selection-heading h2{font-size:15px}
 .selection-tray{gap:10px}.selection-option{flex-basis:88px}
 .selection-controls .btn{padding:10px 12px}.inline-inspector{padding:12px}
 .inline-inspector .detail-grid{grid-template-columns:80px 1fr;gap:12px}
 .prizes:has(.prize-select-card){grid-template-columns:repeat(3,36px);gap:5px}
 .prize-zone .prize-select-card{width:36px;min-height:50px}
}
@media(prefers-reduced-motion:reduce){
 .game-page [data-selection-id],.game-page .stadium,.game-page .prize-zone{transition:none}
 .selection-mode-active .valid-target{animation:none;box-shadow:0 0 0 3px #76c9ff88}
 .selection-mode-active .valid-target.selected-target{box-shadow:0 0 0 3px #ffda8088}
}
.selection-mode-active .hand-card.playable:after{display:none}
.selected-target:before{content:'✓';position:absolute;top:3px;left:3px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#ffda80;color:#172333;font-size:17px;font-weight:800;z-index:5}
