.settings-tile{position:relative!important;width:150px;min-height:85px!important;padding:0!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;cursor:pointer;flex-shrink:0}.settings-tile img{display:block;width:100%;height:auto}.settings-tile span{position:absolute;left:9%;bottom:17%;font:12px/1 ASR,Arial,sans-serif;color:#fff;text-shadow:1px 2px #400000;white-space:nowrap}.settings-tile:is(:hover,:focus-visible){filter:drop-shadow(0 0 4px #ffe775);outline:2px solid #ffe775!important;outline-offset:2px}.settings-dock{display:flex;justify-content:center;gap:24px;margin:25px auto}.game-settings-dialog{box-sizing:border-box;width:min(640px,calc(100% - 28px));max-height:85vh;overflow:auto;border:4px solid white;border-radius:18px;color:white;padding:25px 28px 48px;background:#0751d4 url('assets/home-menu/sonic-says-panel.png') center/100% 100%;box-shadow:0 8px 28px #0009}.game-settings-dialog:after{content:'';position:absolute;bottom:0;left:0;right:0;height:25px;background:linear-gradient(90deg,#960000,#e01219);border-top:3px solid white;pointer-events:none}.game-settings-dialog::backdrop{background:#00112b9c}.game-settings-dialog h2{font:25px/1.2 ASR,Arial,sans-serif;color:#ffe775;text-shadow:2px 2px #072344;margin:0 0 22px}.audio-settings .menu-music-controls{position:static;display:flex;flex-direction:column;max-width:none;padding:0;border:0;border-radius:0;background:none;box-shadow:none;align-items:stretch;gap:12px;font:16px Arial}.audio-volume{position:relative!important;display:flex!important;align-items:center!important;min-height:52px;margin:12px 0;gap:12px!important;border:2px solid #bddcff;background:#001573;overflow:hidden;padding:12px 15px;font:clamp(13px,2.6vw,21px)/1.1 ASR,Arial,sans-serif;text-shadow:2px 2px #000}.audio-volume span,.audio-volume output{position:relative;z-index:2;pointer-events:none}.audio-volume output{margin-left:auto;color:#ffe775;min-width:58px;text-align:right}.audio-volume input{position:absolute;inset:0;width:100%!important;height:100%;margin:0;appearance:none;-webkit-appearance:none;border:0;border-radius:0;background:linear-gradient(to right,#ba0014 0 var(--volume),transparent var(--volume) 100%);cursor:ew-resize;opacity:1}.audio-volume input::-webkit-slider-thumb{appearance:none;width:2px;height:52px;background:transparent}.audio-volume input::-moz-range-thumb{width:2px;height:52px;background:transparent;border:0}.audio-volume:focus-within{outline:3px solid #ffe775;outline-offset:3px}.audio-switch{display:block;width:100%;min-height:44px!important;margin:0 0 12px;border:2px solid #bddcff!important;border-radius:0!important;background:#001573!important;text-align:right;color:#ffe775!important;font:16px/1.2 ASR,Arial,sans-serif!important;padding:10px 15px!important;cursor:pointer}.audio-settings-content>.audio-volume{margin-top:18px}.audio-help,.game-settings-dialog p{font:13px/1.5 Arial,sans-serif;color:#e1efff}.settings-close{padding:10px 22px;border:2px solid white;background:#0049b7;color:white;font:14px ASR,Arial,sans-serif;cursor:pointer}.site-option{display:flex;gap:15px;align-items:center}.site-option select{padding:10px;background:#001573;color:white;border:2px solid #bddcff}body{padding-bottom:0!important}html[data-text-size=large] .sonic-says p{font-size:21px}@media(max-width:500px){.game-settings-dialog{padding:22px 16px 43px}.settings-tile{width:125px;min-height:70px!important}.settings-tile span{font-size:10px}.audio-volume{padding:12px 9px}.audio-volume output{min-width:45px}.game-settings-dialog h2{font-size:22px}}
.game-settings-dialog{background:#0751d4 url('assets/menu-card.png') center/cover}.audio-settings-content{display:flex;flex-direction:column}.audio-settings .menu-music-controls{display:contents}.audio-settings .audio-volume{order:1}.audio-settings-content>.audio-volume{order:2;margin-top:0}.audio-settings .audio-switch{order:3;text-align:left}.audio-settings #menu-sfx-toggle{order:4}.audio-settings .music-status{order:5}.audio-switch span{float:right;color:#ffe775}.audio-settings .audio-volume input{z-index:1}.settings-close:focus-visible,.audio-switch:focus-visible,.site-option select:focus-visible{outline:3px solid #ffe775;outline-offset:3px}
.audio-settings-content>.audio-volume:first-child{order:1}.audio-settings-content>.audio-volume:nth-child(2){order:2}.audio-settings-content>.music-status{order:5}
.game-settings-dialog{background:#0751d4 url('assets/home-menu/settings-panel.png') center/cover}
.options-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 25px;justify-items:center;margin-bottom:20px}.options-grid .settings-tile{width:min(220px,100%);min-height:0!important}.options-grid .settings-tile span{font-size:clamp(11px,2.5vw,17px)}.controls-guide{font:14px/1.45 Arial,sans-serif;margin:0 0 22px}.controls-guide dt{color:#ffe775;font-weight:bold;margin:14px 0 3px}.controls-guide dd{margin:0}.game-settings-dialog .site-option{justify-content:space-between;margin:18px 0;gap:18px;font:15px/1.4 Arial,sans-serif}.game-settings-dialog .site-option select{min-width:95px}.options-grid .settings-tile img{aspect-ratio:440/260}.game-settings-dialog .site-option:focus-within{outline:2px solid #ffe775;outline-offset:5px}
.guide-tile span{bottom:6%;left:6%;right:6%;text-align:left}.quick-links a.guide-tile{display:block;width:230px;min-height:0!important}.quick-links a.guide-tile span{font-size:14px}.guide-tile{align-self:center}.guide-tile img{width:100%;height:auto}

.audio-settings #announcer-toggle{order:4}

.quick-audio-dock{position:fixed;left:max(12px,env(safe-area-inset-left));top:max(12px,env(safe-area-inset-top));bottom:auto;z-index:96;display:flex;align-items:center;gap:6px;padding:6px;border:1px solid #b8eaff;border-radius:8px;background:#06254ff5;box-shadow:0 3px 12px #0007;max-width:calc(100vw - 24px);box-sizing:border-box}
.quick-audio-dock button{min-height:38px;padding:7px 10px;border:1px solid #bddcff;border-radius:4px;background:#001573;color:white;cursor:pointer;font:bold 12px/1.2 Arial,sans-serif;white-space:nowrap}
.quick-audio-dock button[aria-pressed=true]{color:#ffe775;border-color:#ffe775}
.quick-audio-dock button:focus-visible{outline:3px solid #ffe775;outline-offset:2px}
.quick-audio-settings{display:flex;gap:5px;align-items:center}.quick-audio-settings img{width:38px;height:auto}
body{padding-top:72px!important}
@media(max-width:400px){.quick-audio-dock{left:8px;gap:4px;padding:5px;max-width:calc(100vw - 16px)}.quick-audio-dock button{font-size:11px;padding:7px}.quick-audio-settings img{width:27px}}

.quick-audio-dock{flex-wrap:wrap}.quick-audio-dock .quick-audio-settings{justify-content:center}@media(max-width:450px){.quick-audio-dock{display:grid;grid-template-columns:1fr 1fr}.quick-audio-dock button{min-width:0}}

/* Decorative footers follow the content instead of crossing scrolled text. */
:is(#controls-settings-dialog,#general-settings-dialog,#site-options-dialog,#audio-settings-dialog,dialog[aria-label="Display options"]):after{position:static;display:block;height:25px;margin:20px -28px -48px}.game-settings-dialog .settings-close{min-height:44px}.game-settings-dialog{overscroll-behavior:contain}
@media(max-width:500px){:is(#controls-settings-dialog,#general-settings-dialog,#site-options-dialog,#audio-settings-dialog,dialog[aria-label="Display options"]):after{margin:20px -16px -43px}}
@media(max-width:450px){body:has(.quick-audio-dock){padding-top:108px!important}}

.header-settings-hidden{display:none!important}

/* Temporary use for the supplied palette icon: theme and display controls. */
#open-display-options.settings-tile img{height:100%;object-fit:contain;mix-blend-mode:screen}
.quick-audio-settings[aria-label="Open display settings"] img{mix-blend-mode:screen}

/* On the home page, keep the audio bar in document flow so it never covers tiles while scrolling. */
body:has(.home-style-switcher):has(.quick-audio-dock){padding-top:0!important}
body:has(.home-style-switcher) .quick-audio-dock{position:relative;inset:auto;width:max-content;max-width:calc(100% - 24px);margin:8px auto;justify-content:center;z-index:2}
