/* Bowling: what only its lane has. The rest comes from /rooms/room.css. */

/* the scoresheet, as on the screen over the lane */
.bw-sheet { position: absolute; z-index: 3; left: calc(78px + env(safe-area-inset-left, 0px)); top: calc(12px + env(safe-area-inset-top, 0px)); pointer-events: none;
  display: grid; gap: 2px; padding: 8px 10px 9px; border-radius: 12px; background: linear-gradient(#0b1622ee, #060c14ee); border: 1px solid #8fb8e033;
  box-shadow: 0 10px 28px #000a, inset 0 1px 0 #ffffff14; font: 600 12px/1 var(--font); color: #dce9f6; font-variant-numeric: tabular-nums; }
.bw-sheet[hidden] { display: none; }
.bw-row { display: grid; grid-template-columns: 74px repeat(9, 34px) 46px 44px; gap: 2px; align-items: stretch; }
.bw-row.head { color: #8fb8e0; font-size: 10px; text-align: center; }
.bw-row.head > span { padding: 0 0 2px; }
.bw-name { display: flex; align-items: center; padding: 0 6px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; color: #fff; border-radius: 4px; }
.bw-row.head .bw-name { color: #8fb8e0; padding: 0 6px 2px; }
.bw-f { display: grid; grid-template-rows: 13px 15px; background: #ffffff0d; border-radius: 4px; overflow: hidden; }
.bw-row.head .bw-f { display: block; background: none; }
.bw-f em { display: grid; grid-template-columns: 1fr 1fr; font-style: normal; }
.bw-f.tenth em { grid-template-columns: 1fr 1fr 1fr; }
.bw-f em i { display: grid; place-items: center; font-style: normal; font-size: 10px; border-left: 1px solid #ffffff12; border-bottom: 1px solid #ffffff12; }
.bw-f em i:first-child { border-left: 0; }
.bw-f em i.x { color: #ffd76a; font-weight: 800; }
.bw-f em i.s { color: #8be3b0; font-weight: 800; }
.bw-f b { display: grid; place-items: center; font-size: 12px; color: #fff; }
.bw-total { display: grid; place-items: center; font: 800 15px/1 var(--font); color: #ffe7a0; background: #ffffff10; border-radius: 4px; }
.bw-row.head .bw-total { font-size: 10px; color: #8fb8e0; background: none; }
.bw-row.now .bw-name { background: #e8c06333; color: #ffe7a0; }
.bw-row.now .bw-f { background: #ffffff16; }
.bw-row.gone { opacity: .45; }
@media (max-width: 760px) {
  .bw-sheet { left: 8px; top: calc(64px + env(safe-area-inset-top, 0px)); padding: 6px 6px 7px; max-width: calc(100vw - 16px); }
  .bw-row { grid-template-columns: 44px repeat(9, minmax(0, 1fr)) 1.3fr 30px; gap: 1px; width: calc(100vw - 28px); }
  .bw-name { padding: 0 3px; font-size: 10px; }
  .bw-f { grid-template-rows: 11px 13px; }
  .bw-f em i { font-size: 8px; }
  .bw-f b { font-size: 10px; }
  .bw-total { font-size: 12px; }
}
/* in the result card: the whole sheet, in the card's flow */
.bw-sheet.in-card { position: static; transform: none; margin: 10px auto 0; max-width: 100%; overflow-x: auto; box-shadow: none; }
@media (max-width: 760px) { .bw-sheet.in-card .bw-row { width: auto; min-width: 100%; } }

/* the power, while Space is held */
.bw-meter { position: absolute; z-index: 3; right: calc(18px + env(safe-area-inset-right, 0px)); bottom: 30%; width: 14px; height: 160px; border-radius: 8px;
  background: #0009; border: 1px solid #fff3; overflow: hidden; display: flex; align-items: flex-end; pointer-events: none; }
.bw-meter[hidden] { display: none; }
.bw-meter i { display: block; width: 100%; background: linear-gradient(#ff6a4a, #ffd76a 50%, #8be38a); }

/* the shop's swatches: a ball, a few pins, a lane */
.bw-sw-ball { min-height: 90px; height: 100%; display: grid; place-items: center; background: radial-gradient(circle, #2b1d12, #0e0905); position: relative; }
.bw-sw-ball i { width: 64px; height: 64px; border-radius: 50%; background: radial-gradient(circle at 34% 28%, #fff8 0 6%, transparent 18%), radial-gradient(circle at 64% 70%, var(--swirl), transparent 45%),
  radial-gradient(circle at 30% 60%, var(--swirl), transparent 40%), var(--base); box-shadow: inset -8px -10px 18px #0008, 0 6px 14px #000a; }
.bw-sw-ball b { position: absolute; left: 50%; top: 50%; width: 5px; height: 5px; margin: -22px 0 0 -6px; border-radius: 50%; background: #000a; box-shadow: 8px 0 0 #000a, 4px 9px 0 1px #000a; }
.bw-sw-ball.glow i { box-shadow: inset -8px -10px 18px #0008, 0 0 22px var(--swirl); }
.bw-sw-pins { min-height: 90px; height: 100%; display: flex; justify-content: center; align-items: flex-end; gap: 8px; padding-bottom: 14px; background: radial-gradient(circle at 50% 30%, #3a2a1a, #120b06); }
.bw-sw-pins i { width: 18px; height: 54px; border-radius: 45% 45% 40% 40% / 28% 28% 72% 72%; background: linear-gradient(180deg, var(--body) 0 30%, var(--stripe) 30% 36%, var(--body) 36% 40%, var(--stripe) 40% 46%, var(--body) 46%);
  box-shadow: inset -4px 0 6px #0003, 0 4px 6px #0008; }
.bw-sw-pins i:nth-child(2) { height: 60px; }
.bw-sw-pins.glow i { box-shadow: 0 0 14px var(--stripe), inset -4px 0 6px #0003; }
.bw-sw-pins.metal i { box-shadow: inset -5px 0 8px #0005, inset 4px 0 6px #fff6, 0 4px 6px #0008; }
.bw-sw-lane { min-height: 90px; height: 100%; position: relative; background: var(--walls); overflow: hidden; }
.bw-sw-lane i { position: absolute; left: 50%; top: 0; bottom: 0; width: 70px; margin-left: -35px; background: repeating-linear-gradient(90deg, var(--wood) 0 6px, color-mix(in srgb, var(--wood) 85%, #000) 6px 7px);
  clip-path: polygon(30% 0, 70% 0, 100% 100%, 0 100%); }
.bw-sw-lane b { position: absolute; left: 50%; bottom: 26px; width: 0; height: 0; margin-left: -6px; border: 6px solid transparent; border-bottom: 12px solid var(--marks); }
.bw-sw-lane.s-cosmic i { filter: saturate(1.4); box-shadow: 0 0 30px var(--marks); }
.bw-sw-lane.s-cosmic b { filter: drop-shadow(0 0 6px var(--marks)); }
