/* Height constraints matter independently of phone orientation. */
#wardrobe-dialog .wardrobe-layout{grid-template-rows:minmax(0,1fr);align-items:stretch}
#wardrobe-dialog .avatar-preview{align-self:stretch;max-height:100%;height:100%;box-sizing:border-box;overscroll-behavior:contain}
.wardrobe-actions{display:flex;flex:none;flex-wrap:wrap;gap:8px;padding:10px 16px;background:#fff;border-top:1px solid #e5deef;z-index:4}
#wardrobe-dialog .wardrobe-actions button{margin:0;min-height:44px;flex:1;width:auto}
#wardrobe-dialog .wardrobe-actions #look-purchase.hidden{display:none!important}
@media(max-width:600px){#wardrobe-dialog .wardrobe-layout{grid-template-rows:auto minmax(0,1fr)}#wardrobe-dialog .avatar-preview{height:auto;max-height:170px}.wardrobe-actions{padding:8px 10px}.wardrobe-actions button{font-size:11px}}
@media(max-height:500px) and (min-width:601px){#wardrobe-dialog .avatar-preview canvas{height:150px;width:118px}#wardrobe-dialog .avatar-preview>small{display:none}#wardrobe-dialog .wardrobe-head{padding:8px 18px}#wardrobe-dialog .wardrobe-layout{padding:8px 12px}#wardrobe-dialog .preview-buttons button{min-height:32px}}

.advanced-settings{margin:14px 0;border:1px solid #ddd3ef;border-radius:12px;padding:10px}.advanced-settings summary{font-weight:800;cursor:pointer;padding:6px}.advanced-settings label{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:10px 0;font-size:12px}.advanced-settings select{max-width:60%;min-height:44px;border:1px solid #c7b8e0;border-radius:8px;padding:5px;background:white;color:#332849}.advanced-settings details button{display:block;width:100%;margin:5px 0}.high-contrast{--danger-color:#db1b43}.high-contrast .panel,.high-contrast dialog,.high-contrast button{color:#171126!important;border-color:#69518b!important}.high-contrast .race-top,.high-contrast .round-progress{background:#fff!important;color:#141024!important}.high-contrast .race-top strong{color:#141024!important}body.playing #race-hud{font-size:calc(1rem * var(--hud-scale,1))}

#pending-update{position:fixed;top:70px;right:10px;max-width:240px;border-radius:12px;padding:10px;background:#fff8d8;color:#57411a;font-size:11px;z-index:80;pointer-events:none}.startup-failure{position:fixed;inset:20% 12%;background:#fff;border:3px solid #e66592;border-radius:20px;padding:24px;z-index:200}

#accessory-options{display:none!important}.equipment-label{margin:10px 0 6px;font-size:12px;color:#6c5687}.equipment-slot{margin-bottom:12px}.progress-hub-header h2{font-size:24px;margin:8px 0}.progress-hub-header .progress-stats{display:flex;gap:8px;margin:8px 0}.progress-hub-header .progress-stats>div{flex:1;padding:8px}.progress-hub-header .progress-stats strong{font-size:20px}.progress-hub-header #profile-status{margin:6px 0;font-size:11px}.progress-hub-header .xp-progress{margin:6px 0}.progress-tabs{display:flex;gap:6px;position:sticky;top:-1px;background:#fff;padding:10px 0;z-index:2}.progress-tabs button{flex:1;min-height:44px;padding:8px;border-radius:10px;background:#eee7f7;color:#564477;font-weight:800}.progress-tabs button[aria-pressed=true]{background:#7255c7;color:white}#progress-dialog section[hidden]{display:none!important}#progress-dialog .shop-filters{margin:4px 0 12px}.pinned-goal{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px;border-radius:12px;background:#fff4cf;font-size:11px;margin:4px 0 12px}.pinned-goal[hidden]{display:none}.pinned-goal button{min-height:44px;min-width:65px}.pin-item{background:#f2edfa!important;color:#62477f!important;border:1px solid #dbcfec}.progress-hub-header #fragment-balance{display:block;font-size:11px;color:#614c80}#progress-wheel-pane p{font-size:13px;line-height:1.6}#weekly-wheel-spin{min-height:52px}#weekly-wheel-result{padding:12px;background:#edf8ee;border-radius:10px;min-height:22px}

@media(max-height:500px){.progress-hub-header .xp-progress,.progress-hub-header #profile-status{display:none}.progress-hub-header h2{font-size:19px;margin:0}.progress-hub-header .progress-stats>div{padding:3px 8px}.progress-hub-header .progress-stats{margin:4px 0}.progress-tabs{padding:4px 0}#progress-dialog{padding:14px 20px}.progress-hub-header #fragment-balance{position:absolute;top:24px;right:75px}}

.account-settings p{font-size:12px;line-height:1.5}.account-settings input{display:block;box-sizing:border-box;width:100%;min-height:44px;margin:8px 0;padding:10px;border:1px solid #c7b9de;border-radius:8px}.account-actions{display:flex;flex-wrap:wrap;gap:6px}.account-actions button{flex:1}
body.simple-actions:not(.action-extra) #mobile .touch-actions{grid-template-areas:"hold push" "sprint item" "dive jump";grid-template-columns:58px 76px;grid-template-rows:52px 60px 76px;gap:6px}
body.simple-actions:not(.action-extra) #mobile #grab-touch{grid-area:hold!important;width:52px;height:52px}
body.simple-actions:not(.action-extra) #mobile #push-touch{grid-area:push!important;width:52px;height:52px}
body.simple-actions:not(.action-extra) #mobile #sprint-touch{grid-area:sprint!important;width:52px;height:52px}
body.simple-actions:not(.action-extra) #mobile #item-touch{grid-area:item!important;width:60px;height:60px;margin:0;justify-self:end}
body.simple-actions:not(.action-extra) #mobile #dive-touch{grid-area:dive!important;width:58px;height:58px}
body.simple-actions:not(.action-extra) #mobile #jump-touch{grid-area:jump!important;width:76px;height:76px}
@media(orientation:landscape) and (max-height:600px){body.simple-actions:not(.action-extra) #mobile .touch-actions{grid-template-areas:"hold push item" "sprint dive jump";grid-template-columns:48px 52px 68px;grid-template-rows:46px 68px;gap:5px}body.simple-actions:not(.action-extra) #mobile #grab-touch,body.simple-actions:not(.action-extra) #mobile #push-touch,body.simple-actions:not(.action-extra) #mobile #sprint-touch{width:46px;height:46px}body.simple-actions:not(.action-extra) #mobile #item-touch{width:48px;height:48px}body.simple-actions:not(.action-extra) #mobile #dive-touch{width:52px;height:52px}body.simple-actions:not(.action-extra) #mobile #jump-touch{width:68px;height:68px}}

body.lobby-mode #room-course-controls{margin-top:8px}body.lobby-mode #lobby-mode-timeattack{margin:10px 0;min-height:76px;padding:10px}body.lobby-mode #cup-event-preview{width:76px!important;height:54px!important}body.lobby-mode #lobby-mode-timeattack .cup-event-info{gap:3px}body.lobby-mode #lobby-options{margin-top:12px;border:1px solid #ded1ee;border-radius:12px;padding:10px}body.lobby-mode #lobby-options>summary{font-size:13px;font-weight:800;cursor:pointer;min-height:32px}body.lobby-mode #lobby-options #community-settings{margin-top:8px}body.lobby-mode #lobby-options .course-style-label{display:block;font-size:12px;margin-top:12px}body.lobby-mode #hub-route-record{background:#eff8f3;padding:7px;border-radius:8px}body.lobby-mode #world-description{line-height:1.5}
@media(max-width:768px){body.lobby-mode #lobby-avatar-panel{min-height:62px;max-height:68px;display:flex!important;align-items:center;justify-content:space-between;gap:6px;padding:6px 10px}body.lobby-mode #lobby-avatar-panel>p,body.lobby-mode #lobby-avatar-panel>.hub-eyebrow,body.lobby-mode #lobby-progress{display:none!important}body.lobby-mode #lobby-avatar-canvas{width:46px!important;height:58px!important;flex:none}body.lobby-mode #lobby-avatar-level{font-size:11px}body.lobby-mode #lobby-avatar-edit{font-size:11px;min-height:44px;padding:7px}body.lobby-mode #room-course-controls h2{margin:5px 0}body.lobby-mode #world-description{font-size:11px!important}body.lobby-mode #lobby-mode-timeattack{min-height:70px}body.lobby-mode .cup-event-preview{width:72px;height:52px}body.lobby-mode #hub-main{overflow:visible!important}body.lobby-mode #hub-party{overflow:visible!important}}

body.playing .hud-card>strong{font-size:calc(1.35rem * var(--hud-scale,1))}body.playing #checkpoint{font-size:calc(.7rem * var(--hud-scale,1))}body.playing #minigame-title{font-size:calc(1.05rem * var(--hud-scale,1))}

.weekly-wheel-art{position:relative;width:210px;height:210px;margin:20px auto;pointer-events:none}.weekly-wheel-dial{position:absolute;inset:0;border-radius:50%;border:7px solid #fff;box-shadow:0 4px 0 #c2b4df,0 8px 22px #84708a33;background:conic-gradient(#a4e2dc 0 50%,#f8d987 50% 80%,#bfa9ed 80% 95%,#f29bb9 95% 100%);transition:transform 1.2s cubic-bezier(.16,.85,.15,1)}.weekly-wheel-dial>span{position:absolute;left:calc(50% - 12px);top:calc(50% - 12px);width:24px;height:24px;text-align:center;font-size:22px}.weekly-wheel-center{position:absolute;left:82px;top:82px;width:46px;height:46px;display:grid;place-items:center;background:#fff;border-radius:50%;box-shadow:0 2px 6px #67557944;font-size:25px}.weekly-wheel-pointer{position:absolute;top:-5px;left:94px;border-left:11px solid transparent;border-right:11px solid transparent;border-top:24px solid #675579}.weekly-wheel-dial.wheel-spinning{animation:rumlab-wheel-turn .7s linear infinite}.weekly-wheel-dial.wheel-no-motion{transition:none}@keyframes rumlab-wheel-turn{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.weekly-wheel-dial{transition:none}.weekly-wheel-dial.wheel-spinning{animation:none}}

.menu-primary-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0 14px}#mobile-menu .menu-primary-actions button{min-height:48px;background:#ece3f8;color:#5a4086;font-size:13px}

#progress-dialog .progress-tabs{align-items:center;gap:5px}#progress-dialog .progress-tabs button:not(#close-progress){font-size:clamp(10px,2.8vw,13px);padding:8px 4px}#progress-dialog .progress-tabs #close-progress{position:static;float:none;flex:0 0 38px;width:38px;min-width:38px;height:44px;min-height:44px;padding:0;margin:0;background:#f2ebf8;color:#57416f;font-size:23px}
