/* New-version preference utilities; kept independent from classic styles. */
/* Shared preference behavior across classic, new and download pages. */
html.no-anim, html.no-anim * { scroll-behavior:auto !important; }
html.no-anim *, html.no-anim *::before, html.no-anim *::after {
  animation:none !important; transition:none !important;
}
[hidden] { display:none !important; }
[data-zh] [lang="en"], html[data-lang="en"] [data-zh] [lang="zh-CN"] { display:none; }
html[data-lang="en"] [data-zh] [lang="en"] { display:inline; }
.xcl-settings { position:relative; }
.xcl-settings summary { list-style:none; }
.xcl-settings summary::-webkit-details-marker { display:none; }
.xcl-settings-panel { position:absolute; right:0; top:calc(100% + 12px); width:270px; padding:20px; border:1px solid var(--line); border-radius:18px; background:var(--surface); color:var(--text); box-shadow:0 18px 70px #0003; }
.xcl-settings-panel h3 { font-size:15px; margin-bottom:16px; }
.xcl-settings-panel label { display:flex; align-items:center; justify-content:space-between; gap:14px; font-size:13px; }
.xcl-settings-panel select { background:var(--bg); color:var(--text); border:1px solid var(--line); border-radius:8px; padding:7px; }
.xcl-settings-panel p { font-size:12px; line-height:1.7; color:var(--muted); margin:12px 0; }
.xcl-settings-panel button { width:100%; border:1px solid var(--line); padding:9px 10px; color:var(--text); background:var(--bg); border-radius:9px; cursor:pointer; }
.xcl-toast { position:fixed; z-index:1200; bottom:28px; left:50%; transform:translateX(-50%); width:max-content; max-width:calc(100vw - 32px); padding:16px 22px; border:1px solid var(--line); border-radius:16px; color:var(--text); background:var(--surface); box-shadow:0 12px 50px #0004; font-size:14px; line-height:1.7; }
@media(max-width:480px) { .xcl-toast { bottom:16px; } .xcl-settings-panel { width:min(270px,calc(100vw - 28px)); } }
