.game-wrapper{justify-content:center;align-items:flex-start;gap:20px;width:100%;display:flex}.game-container{flex-direction:column;align-items:center;gap:10px;display:flex}.game-title{color:#ffb347;text-shadow:0 0 10px #f60;letter-spacing:2px;font-size:1.4rem}.game-canvas{background:#0d0500;border:3px solid #f60;display:block;box-shadow:0 0 20px #f60,0 0 40px #f304}.side-panel{flex-direction:column;gap:12px;min-width:130px;display:flex}.panel-box{background:#2a1000;border:2px solid #f60;border-radius:8px;padding:10px 12px}.panel-box__label{color:#f94;letter-spacing:2px;text-transform:uppercase;margin-bottom:6px;font-size:.65rem}.panel-box__value{color:#fc6;font-size:1.3rem;font-weight:700}.panel-box__unit{color:#c84;margin-left:2px;font-size:.7rem}.next-canvas{margin:0 auto;display:block}.controls-list{color:#c73;font-size:.65rem;line-height:1.9}.controls-list__key{color:#fa4;font-weight:700}.mobile-controls{flex-direction:column;align-items:center;gap:5px;display:none}.ctrl-upper{flex-direction:row;align-items:center;gap:8px;display:flex}.ctrl-dpad{flex-direction:column;align-items:center;gap:5px;display:flex}.mobile-next-slot .panel-box{text-align:center;padding:4px 8px}.mobile-next-slot .next-canvas{width:84px;height:56px;margin:0 auto;display:block}.ctrl-row{justify-content:center;gap:5px;display:flex}.ctrl-btn{color:#fc6;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;background:#2a1000;border:2px solid #f60;border-radius:10px;justify-content:center;align-items:center;width:62px;height:48px;font-size:1.3rem;line-height:1;transition:background 80ms;display:flex}.ctrl-btn:active,.ctrl-btn--pressed{background:#f50}.ctrl-btn--wide{width:201px;margin-top:10px}.overlay{z-index:10;background:#000000e0;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:20px;display:flex;position:fixed;inset:0;overflow-y:auto}.overlay__title{color:#ffb347;text-shadow:0 0 15px #f60;font-size:2rem}.overlay__message{color:#fc8;font-size:1rem}.overlay__btn{color:#fff;cursor:pointer;letter-spacing:1px;background:#f60;border:none;border-radius:8px;padding:10px 28px;font-size:1rem;font-weight:700;transition:background .15s}.overlay__btn:hover{background:#f83}.overlay__btn:disabled{cursor:default;background:#642}.score-save{flex-direction:column;align-items:center;gap:8px;width:100%;max-width:300px;display:flex}.score-save__input{color:#fff;text-align:center;background:#1a0a00;border:2px solid #f60;border-radius:6px;width:100%;padding:8px 12px;font-size:1rem}.score-save__input::placeholder{color:#642}.tweet-btn{background:#111;border:2px solid #888;border-radius:40px;align-items:center;gap:10px;padding:6px 18px 6px 8px;text-decoration:none;transition:border-color .15s;display:flex}.tweet-btn:hover{border-color:#fc6}.tweet-btn__icon{object-fit:cover;border-radius:50%;width:36px;height:36px}.tweet-btn__label{color:#fc6;font-size:.9rem;font-weight:700}.ranking-box{background:#1a0a00;border:2px solid #f60;border-radius:8px;width:100%;max-width:300px;padding:12px 16px}.ranking-box__title{color:#f94;letter-spacing:2px;text-transform:uppercase;text-align:center;margin-bottom:8px;font-size:.75rem}.ranking-list{padding:0;list-style:none}.ranking-list__item{color:#c96;border-bottom:1px solid #331500;justify-content:space-between;padding:3px 0;font-size:.85rem;display:flex}.ranking-list__item:last-child{border-bottom:none}.ranking-list__item--gold{color:gold}.ranking-list__item--silver{color:silver}.ranking-list__item--bronze{color:#cd7f32}.ranking-list__name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.ranking-list__score{white-space:nowrap;margin-left:8px;font-weight:700}.ranking-empty{color:#642;text-align:center;font-size:.8rem}@media (width<=767px){.mobile-controls{display:flex}.controls-panel{display:none}.game-wrapper{flex-direction:column;align-items:center;gap:8px;width:100%}.side-panel{width:100%;min-width:unset;flex-flow:wrap;order:-1;justify-content:center;gap:6px}.panel-box{text-align:center;flex:none;min-width:76px;padding:6px 10px}.panel-box__value{font-size:1rem}.side-panel .panel-box:has(.next-canvas){display:none}.game-canvas{max-width:100%}}
