/* Snowboard Rush : page-specific styles (shared: sim3d.css, ski3d.css) */
.sbr-list { margin-top: 14px; display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 6px; }
.sbr-list h3 { grid-column: 1 / -1; margin: 0 0 4px; }
.sbr-list button { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; text-align: left; padding: 8px 10px; border-radius: 12px; border: 1px solid rgba(255, 255, 255, .14); background: rgba(255, 255, 255, .04); color: inherit; cursor: pointer; font: inherit; }
.sbr-list button.is-on { border-color: #f9a8d4; background: rgba(236, 72, 153, .14); } .sbr-list button:disabled { opacity: .45; cursor: not-allowed; }
.sbr-list small { font-size: 11.5px; opacity: .8; } .sbr-list button:focus-visible { outline: 3px solid #ffd54a; outline-offset: 1px; }
.sbr-st { font-size: 26px; margin: 4px 0; }
.sbr-trick { position: absolute; left: 50%; top: 22%; transform: translateX(-50%); font: 900 20px system-ui, sans-serif; color: #fff; text-shadow: 0 2px 6px rgba(0, 0, 0, .7); opacity: 0; transition: opacity .15s; pointer-events: none; white-space: nowrap; }
.sbr-trick.is-on { opacity: 1; }
/* touch: one extra button (grab) */
.sk-touch.sbr-touch .sim-tbtns { grid-template-columns: 60px 60px 1fr 54px 54px 54px 60px; grid-auto-flow: dense; }
.sk-touch.sbr-touch .sim-tbtn[data-id="grab"] { grid-column: 6; background: rgba(219, 39, 119, .8); } .sk-touch.sbr-touch .sim-tbtn[data-id="jump"] { grid-column: 7; }
@container (max-width: 560px) { .sk-touch.sbr-touch .sim-tbtns { grid-template-columns: 48px 48px 1fr 44px 44px 46px 48px; gap: 5px; } .sbr-trick { top: 42%; font-size: 16px; } }
