.header-tools{display:flex;align-items:center;gap:14px}.settings-entry{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px;border:1px solid #e6d3a157;border-radius:9px;color:#fff2d0;background:#203d3b;font:700 14px/1.2 'Trebuchet MS',sans-serif;cursor:pointer}.settings-entry svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.settings-entry:hover{background:#305650}.settings-entry:focus-visible,.settings-dialog button:focus-visible{outline:3px solid #dca52c;outline-offset:3px}
.settings-dialog{box-sizing:border-box;width:min(440px,calc(100% - 24px));max-height:calc(100dvh - 32px);margin:auto;overflow:auto;padding:24px;border:0;border-radius:18px;background:#fff3d8;color:#243b36;box-shadow:0 28px 90px #061a1abd;font:16px/1.45 'Trebuchet MS',sans-serif;text-align:left}.settings-dialog::backdrop{background:#071c21c9;backdrop-filter:blur(5px)}.settings-dialog *{box-sizing:border-box}.settings-dialog header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 6px}.settings-dialog h2{margin:0;font:bold 30px/1.1 Georgia,serif;letter-spacing:-.6px}.settings-close{display:grid;place-items:center;width:44px;min-height:44px;padding:0;border:0;border-radius:9px;background:#e9dfc8;color:#243b36;font:26px/1 'Trebuchet MS',sans-serif;cursor:pointer}.settings-intro{margin:8px 0 22px;font-size:16px;color:#52635a}.settings-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:14px;width:100%;min-height:76px;padding:14px 0;border:0;border-bottom:1px solid #243b3626;border-radius:0;background:transparent;color:inherit;text-align:left;cursor:pointer;font:inherit}.settings-row:disabled{cursor:default}.settings-row strong{display:block;font-size:16px}.settings-row small{display:block;max-width:260px;margin-top:4px;font-size:14px;line-height:1.4;color:#52635a}.settings-state{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:700}.settings-switch{position:relative;width:42px;height:26px;border-radius:20px;background:#7e8980;flex-shrink:0}.settings-switch::after{content:'';position:absolute;top:4px;left:4px;width:18px;height:18px;border-radius:50%;background:#fff9ed;box-shadow:0 1px 3px #16302b40;transition:transform .14s ease}.settings-row[aria-checked=true] .settings-switch{background:#245d4b}.settings-row[aria-checked=true] .settings-switch::after{transform:translateX(16px)}.settings-row:disabled .settings-switch{background:#aaa995}.settings-sample{min-height:44px;margin:12px 0 4px;padding:10px 14px;border:0;border-radius:9px;background:#e8c678;color:#243b36;font:700 14px/1.3 'Trebuchet MS',sans-serif;cursor:pointer}.settings-sample:disabled{opacity:.55;cursor:default}.settings-status{min-height:20px;margin:3px 0 8px;color:#52635a;font-size:14px}.settings-save{margin:22px 0 16px;color:#52635a;font-size:14px;line-height:1.5}.settings-done{width:100%;min-height:48px;border:0;border-radius:10px;background:#254b43;color:#fff5dc;font:700 16px/1.3 'Trebuchet MS',sans-serif;cursor:pointer}
@media(max-width:650px){.header-tools{gap:8px}.settings-entry{padding:10px 11px}.settings-dialog{padding:20px}.settings-dialog h2{font-size:27px}}
@media(max-height:440px) and (orientation:landscape){.settings-dialog{max-height:calc(100dvh - 16px);padding:16px 24px}.settings-dialog header{position:sticky;top:-16px;z-index:1;margin-top:-3px;padding-top:3px;padding-bottom:8px;background:#fff3d8}.settings-intro{margin-bottom:8px}.settings-row{min-height:66px}.settings-save{margin-top:14px}}
@media(prefers-reduced-motion:reduce){.settings-switch::after{transition:none}}

.utility [data-open-settings]{display:none}
@media(max-width:650px) and (orientation:portrait){
  .utility [data-open-settings]{display:grid}
  .utility #sound{display:none}
}
@media(max-height:520px) and (orientation:landscape){.utility [data-open-settings]{display:grid}}
@media(max-width:380px){.masthead h1{font-size:20px;letter-spacing:-.5px}.header-tools{gap:6px}}

.settings-status:empty{display:none}

.selection-settings{display:none;flex:0 0 44px;width:44px;padding:10px}
@media(max-height:520px) and (orientation:landscape){.selection-settings{display:inline-flex}.friend-entry>span{display:none}.friend-entry{justify-content:flex-end;gap:8px}}
