/* Game controls behave as controls on touch screens, including their icon/text children. */
:where(.app, #launch-screen, #dialog, #toast, .cat-audio-subtitle),
:where(.app, #launch-screen, #dialog, #toast, .cat-audio-subtitle) :where(*) {
 -webkit-user-select:none;
 user-select:none;
 -webkit-touch-callout:none;
}

/* Preserve normal selection, copy/paste and native editing menus. */
:where(.app, #launch-screen, #dialog) :is(input, textarea, select, option, [contenteditable]:not([contenteditable="false"]), [data-selectable]),
:where(.app, #launch-screen, #dialog) :is([contenteditable]:not([contenteditable="false"]), [data-selectable]) * {
 -webkit-user-select:text;
 user-select:text;
 -webkit-touch-callout:default;
}

.motion-settings {margin:20px 0;}
.motion-settings h3 {font-size:16px;margin:0 0 8px;}
.motion-settings .settings-row {gap:12px;}
.motion-settings .settings-row > span {display:block;flex:1;min-width:0;}
.motion-settings .settings-row small {display:block;margin-top:4px;font-size:11px;line-height:1.5;color:#947b68;}
.motion-settings button {flex:none;min-height:40px;min-width:72px;}
.motion-settings [data-motion-system-note] {font-size:11px;line-height:1.5;color:#947b68;}

#save-conflict-dialog {
 position:fixed;z-index:12000;left:50%;bottom:max(16px,env(safe-area-inset-bottom));transform:translateX(-50%);box-sizing:border-box;
 width:min(420px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:18px;
 border:2px solid #a1846a;border-radius:20px;background:#fff8e8;color:#654b40;
 text-align:center;box-shadow:0 6px #9d806633;user-select:none;-webkit-user-select:none;
}
#save-conflict-dialog[hidden] {display:none;}
#save-conflict-dialog h2 {margin:0 0 8px;font-size:20px;line-height:1.2;}
#save-conflict-dialog p {margin:0 0 18px;font-size:14px;line-height:1.6;}
#save-conflict-dialog button {display:block;width:100%;min-height:48px;margin:0 0 10px;padding:10px;border:2px solid #b19262;border-radius:12px;background:#ffdf91;color:#654b40;font:700 15px/1.4 system-ui;touch-action:manipulation;}
#save-conflict-dialog a {display:flex;align-items:center;justify-content:center;min-height:44px;font-size:12px;color:#5b765d;}
