/* One settings surface in both the title dialog and pause shell. */
#faunaraSettings { --settings-ink:#203e36; --settings-muted:#53685d; --settings-line:#cdbf9e; font:15px/1.45 system-ui,sans-serif; -webkit-font-smoothing:antialiased; font-variant-numeric:tabular-nums; }
#faunaraSettings .settings-card { width:min(940px,96vw); height:min(850px,92dvh); max-height:92dvh; outline:none; border:2px solid #b6a174; border-radius:18px; background:#f5ecd8; box-shadow:0 24px 80px #001d2580; color:var(--settings-ink); }
#faunaraSettings .settings-head { flex:none; padding:22px 28px; background:#204b43; border-bottom:3px solid #bd9b59; color:#fff4d9; }
#faunaraSettings .settings-mark { color:#cbdab5; font-size:10px; font-weight:800; letter-spacing:.16em; }
#faunaraSettings .settings-head h2 { margin:4px 0; color:#fff4d9; font:800 32px/1.15 system-ui,sans-serif; letter-spacing:-.04em; }
#faunaraSettings .settings-head p { color:#d4e1d3; font-size:13px; }
#faunaraSettings .settings-content { flex:1; min-height:0; width:100%; max-width:none; margin:0; padding:24px 28px; display:flex; flex-direction:column; gap:24px; overflow:auto; overscroll-behavior:contain; scroll-padding:20px; scrollbar-gutter:stable; }
#faunaraSettings .settings-content > * { flex-shrink:0; min-width:0; }
#faunaraSettings .settings-categories { display:flex; flex-wrap:wrap; gap:8px; }
#faunaraSettings .settings-categories button { min-height:42px; padding:8px 14px; background:#e5ddc8; border:1px solid #c4b58f; border-radius:8px; color:#25493e; font:750 13px/1.2 system-ui,sans-serif; box-shadow:none; }
#faunaraSettings .settings-section-head { padding:0 0 12px; }
#faunaraSettings .settings-section-head h3 { color:#234e40; font:800 19px/1.3 system-ui,sans-serif; letter-spacing:-.02em; }
#faunaraSettings .settings-section-head p { margin-top:3px; font-size:13px; color:var(--settings-muted); }
#faunaraSettings .settings-section-body { display:grid; gap:2px; border:1px solid var(--settings-line); border-radius:12px; overflow:hidden; background:var(--settings-line); }
#faunaraSettings .settings-row { display:flex; align-items:center; gap:16px; width:100%; min-height:78px; padding:16px 18px; margin:0; border:0; border-radius:0; background:#fffaf0; color:var(--settings-ink); font:inherit; box-shadow:none; text-align:left; }
#faunaraSettings .settings-copy { flex:1; min-width:0; display:grid; gap:4px; }
#faunaraSettings .settings-copy strong { color:var(--settings-ink); font:750 15px/1.3 system-ui,sans-serif; }
#faunaraSettings .settings-copy small { color:var(--settings-muted); font:12px/1.45 system-ui,sans-serif; display:block; }
#faunaraSettings .settings-icon { display:none; }
#faunaraSettings .settings-chevron { color:#37634b; font-size:26px; }
#faunaraSettings :is(select,button,input) { font-family:system-ui,sans-serif; }
#faunaraSettings select { width:230px; max-width:46%; min-width:0; min-height:44px; padding:9px 30px 9px 12px; background:#eef2e5; border:1px solid #aab79a; border-radius:7px; color:#234839; font-size:13px; font-weight:650; }
#faunaraSettings input[type=checkbox] { appearance:none; flex:none; width:48px; height:28px; min-height:28px; padding:3px; border:2px solid #939e8b; border-radius:18px; background:#bfc5b6; cursor:pointer; }
#faunaraSettings input[type=checkbox]::before { content:''; display:block; width:18px; height:18px; border-radius:50%; background:#fffdf4; box-shadow:0 1px 3px #1235; transition:transform .12s; }
#faunaraSettings input[type=checkbox]:checked { background:#376d4d; border-color:#376d4d; }
#faunaraSettings input[type=checkbox]:checked::before { transform:translateX(20px); }
#faunaraSettings .settings-range { display:flex; align-items:center; gap:12px; width:230px; max-width:46%; }
#faunaraSettings input[type=range] { width:100%; min-width:0; height:44px; min-height:44px; padding:0; border:0; accent-color:#326545; background:transparent; }
#faunaraSettings output { flex:none; width:42px; color:#234e40; text-align:right; font-size:13px; font-weight:800; }
#faunaraSettings .settings-foot { flex:none; padding:14px 28px; background:#e8ddc4; border-top:1px solid var(--settings-line); }
#faunaraSettings .settings-foot button { min-height:44px; border:0; background:#254f40; color:#fff4d9; padding:10px 20px; border-radius:8px; font:750 14px system-ui,sans-serif; }
#faunaraSettings button:not(:disabled):active { scale:.96; transform:none; }
#faunaraSettings :is(button,select,input):focus-visible { outline:3px solid #ac7320; outline-offset:-3px; }
#faunaraSettings :is(.settings-row,.settings-categories button):hover { background:#eef2e2; }
#faunaraSettings #settingsExit { min-height:78px; margin:0; border:0; background:#f2e4d5; box-shadow:none; }
#faunaraSettings #settingsExit .settings-copy strong { font-size:15px; color:#8b3831; }
#faunaraSettings #settingsExit .settings-copy small { color:#73594c; }
#faunaraSettings [data-faunara-capture] { display:flex!important; flex-wrap:wrap; gap:10px; }
#faunaraSettings [data-faunara-capture] button { min-height:44px; padding:10px 12px; background:#e8eddf; color:#234839; border:1px solid #aab79a; border-radius:7px; font-size:13px; font-weight:650; }
#faunaraSettings [data-faunara-capture] textarea { background:#f0ecdF; color:#425b4d; border:1px solid #c6bea6; }
/* Control remapping uses the same clear rows and contrasting section headers. */
#faunaraSettings #settingsControlView { scroll-padding-top:96px; }
#faunaraSettings .faunara-control-section-head { margin:0 0 4px; padding:12px 16px; background:#254f43; color:#fff4db; border-radius:9px; }
#faunaraSettings .faunara-control-section-head h3 { font:800 16px/1.3 system-ui,sans-serif; }
#faunaraSettings .faunara-control-section-back { min-height:40px; padding:8px 10px; background:#ffffff14; color:#fff4db; border:1px solid #ffffff50; box-shadow:none; font-size:12px; }
#faunaraSettings .faunara-input-options { gap:0; }
#faunaraSettings .faunara-input-options > label { min-height:68px; padding:12px 16px; gap:16px; background:#fffaf0; border-bottom:1px solid #dcd3be; font-size:14px; font-weight:650; }
#faunaraSettings .faunara-input-options > p { padding:12px 16px; font-size:13px; color:var(--settings-muted); }
#faunaraSettings .faunara-input-options input[type=range] { max-width:46%; }
#faunaraSettings .faunara-binding-row { grid-template-columns:minmax(0,1fr) minmax(130px,40%); min-height:66px; gap:12px; padding:10px 16px; background:#fffaf0; border-bottom:1px solid #dcd3be; }
#faunaraSettings .faunara-binding-row > span { grid-column:auto; font-size:14px; font-weight:700; color:#294838; }
#faunaraSettings .faunara-binding-row button { min-height:44px; width:100%; padding:9px 12px; border:1px solid #aab79a; border-bottom-width:3px; border-radius:7px; background:#eaf0de; color:#284a37; font:750 13px/1.3 system-ui,sans-serif; text-align:center; }
#faunaraSettings .faunara-binding-row button[hidden] { display:none; }
#faunaraSettings .faunara-input-status { color:#3d604a; background:#e3ebd6; padding:12px 16px; border-radius:8px; font-size:13px; }
#faunaraSettings .faunara-controls-guide { color:var(--settings-ink); }
#faunaraSettings #faunara-controls-defaults button { min-height:44px; margin:0 16px 16px; padding:10px 16px; background:#eadbc4; color:#713d2e; border:1px solid #bdaa88; border-radius:7px; font-weight:750; }
#faunaraInputDialog .faunara-input-card { padding:24px; gap:12px; border:2px solid #b6a174; border-radius:18px; background:#f5ecd8; color:#203e36; box-shadow:0 24px 80px #001d2580; font:14px/1.5 system-ui,sans-serif; }
#faunaraInputDialog h2 { font:800 25px/1.2 system-ui,sans-serif; }
#faunaraInputDialog p { color:#53685d; }
#faunaraInputDialog :is(button,select,input) { min-height:44px; background:#eef2e5; color:#234839; border:1px solid #aab79a; border-radius:8px; font-weight:650; max-width:100%; }
#faunaraInputDialog #faunaraBindApply { background:#254f40; color:#fff4d9; }
#faunaraInputDialog :is(button,select,input):focus-visible { outline:3px solid #ac7320; outline-offset:2px; }
/* Only the content scrolls; the pause shell no longer adds another padded frame. */
#faunaraPause #pause-view-settings { padding:0; overflow:hidden; }
#faunaraPause #faunaraSettings .settings-card { outline:none; }
#faunaraPause #faunaraSettings .settings-head p { color:#d4e1d3; }
#faunaraPause #faunaraSettings .settings-head .settings-mark { color:#cbdab5; }
#faunaraPause #faunaraSettings .settings-content { max-width:none; margin:0; }
#faunaraPause #faunaraSettings .settings-foot:has(#settingsBack.hidden) { display:none; }
@media(max-width:600px) {
  #faunaraSettings { padding:8px; }
  #faunaraSettings .settings-card { width:100%; height:96dvh; max-height:96dvh; border-radius:12px; }
  #faunaraSettings .settings-head { padding:16px 18px; }
  #faunaraSettings .settings-head h2 { font-size:26px; }
  #faunaraSettings .settings-content { padding:18px 12px; gap:22px; }
  #faunaraSettings .settings-row { flex-wrap:wrap; gap:10px; padding:14px; }
  #faunaraSettings .settings-row:has(select) .settings-copy,#faunaraSettings .settings-row:has(.settings-range) .settings-copy { flex-basis:100%; }
  #faunaraSettings .settings-row select,#faunaraSettings .settings-range { width:100%; max-width:100%; }
  #faunaraSettings .settings-foot { padding:12px; }
  #faunaraSettings .faunara-input-options > label { flex-wrap:wrap; padding:12px; }
  #faunaraSettings .faunara-input-options select { width:100%; max-width:100%; }
  #faunaraSettings .faunara-binding-row { grid-template-columns:minmax(0,1fr) minmax(110px,42%); padding:10px 12px; }
  #faunaraSettings .faunara-binding-row > span { font-size:13px; }
}
@media(max-height:550px) and (min-width:601px) {
  #faunaraSettings .settings-head { padding:10px 24px; }
  #faunaraSettings .settings-head h2 { font-size:24px; }
  #faunaraSettings .settings-mark { display:none; }
}
@media(prefers-reduced-motion:reduce) {
  #faunaraSettings input[type=checkbox]::before { transition:none; }
  #faunaraSettings button:not(:disabled):active { scale:1; }
}
