.tower-gallery-modal.ui-modal { background: #101b1a; border-color: #586c6170; }
.tower-gallery-modal .ui-modal__title { color: #e0d2ad; font-family: Georgia, serif; }
.tower-gallery-modal .ui-modal__content { min-width: 0; }
.tower-gallery-intro { max-width: 760px; margin: 0 auto 10px; color: #a6b2aa; font-size: 12px; line-height: 1.5; text-align: center; }
.tower-gallery { width: 100%; min-width: 0; }
.tower-gallery__scene { position: relative; width: 100%; max-width: 1000px; margin: auto; aspect-ratio: 1000 / 480; }
.tower-gallery canvas { display: block; width: 100%; height: 100%; border-radius: 6px; }
.tower-gallery__target { position: absolute; width: 10%; height: 36%; transform: translateX(-50%); padding: 0; border: 0; background: transparent; cursor: pointer; color: #d0d9c8; }
.tower-gallery__target span { position: absolute; top: 90%; left: 50%; transform: translateX(-50%); white-space: nowrap; font: 12px Georgia, serif; padding: 4px 6px; background: #101b1abd; border-radius: 3px; }
.tower-gallery__target[aria-pressed="true"] span { color: #ffedb9; background: #413d27; }
.tower-gallery__target:focus-visible { outline: 1px solid #ffe4a0; outline-offset: 2px; border-radius: 40%; }
.tower-gallery__details { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px; background: #1b2924; border: 1px solid #6a77564d; border-radius: 5px; }
.tower-gallery__name { font: bold 20px Georgia, serif; }
.tower-gallery__record, .tower-gallery__bet { font-size: 12px; color: #aab6a9; margin-top: 6px; overflow-wrap: anywhere; }
.tower-gallery__status { color: #ddc694; font-size: 13px; }
.tower-gallery__details button { flex-shrink: 0; }
.tower-gallery__difficulty { max-width: 330px; min-width: 0; }
.tower-gallery__difficulty-label { font-size: 11px; color: #aab6a9; margin-bottom: 6px; }
.tower-gallery__stats { font-size: 12px; color: #dfd4b3; line-height: 1.7; overflow-wrap: anywhere; }
.tower-bet { display: grid; gap: 14px; font-size: 13px; }
.tower-bet__row { display: flex; justify-content: space-between; gap: 16px; align-items: center; overflow-wrap: anywhere; }
.tower-bet__row strong { color: var(--ui-gold); text-align: right; }
.tower-bet__muted { color: var(--ui-text-dim); font-size: 12px; line-height: 1.5; }
.tower-bet__reward { padding: 18px; display: grid; gap: 8px; text-align: center; border: 1px solid #8b966650; background: #8b966610; border-radius: 6px; }
.tower-bet__reward strong { font-size: 23px; color: var(--ui-gold); overflow-wrap: anywhere; }
.tower-bet__reward small { color: var(--ui-text-dim); line-height: 1.5; }
.tower-bet__warning { color: var(--ui-danger); }
@media (max-width: 700px) {
 .tower-gallery-modal.ui-modal { padding: 14px 8px !important; }
 .tower-gallery-intro { font-size: 10px; }
 .tower-gallery__target span { font-size: 8px; padding: 3px 2px; }
 .tower-gallery__details { flex-wrap: wrap; gap: 12px; padding: 12px; }
 .tower-gallery__details button { width: 100%; }
 .tower-gallery__name { font-size: 17px; }
 .tower-gallery__terms { min-width: 0; }
}
