/* Stable local background; panels retain the selected theme's original paint. */
/* Image opacity blends against a neutral base, including in Appearance's
   iframe. Theme surfaces must never tint the photo or its uncovered edges. */
:root { --wallpaper-base:#000000; --wallpaper-overlay-black:#000000; --wallpaper-overlay-grey:#303239; }
#nexo-wallpaper { position:fixed; inset:0; z-index:-1; overflow:hidden; pointer-events:none; background:var(--wallpaper-base); }
#nexo-wallpaper[hidden] { display:none; }
.has-wallpaper body { isolation:isolate; background:transparent; }
.has-wallpaper :is(.call-shell,.reference-home) { background:transparent; }
#nexo-wallpaper > :is(img,video),.wallpaper-sample > :is(img,video) { display:block; width:100%; height:100%; object-fit:var(--wallpaper-fit,cover); object-position:center; transform:scale(var(--wallpaper-zoom,1)); filter:blur(var(--wallpaper-blur,8px)); opacity:var(--wallpaper-opacity,.4); }
.wallpaper-overlay { position:absolute; inset:0; background:var(--wallpaper-color,transparent); opacity:.42; pointer-events:none; }
.wallpaper-settings,.wallpaper-preview { display:grid; gap:12px; min-width:0; padding:14px!important; border:1px solid var(--theme-border-subtle,#343740); border-radius:14px; background:var(--theme-surface-card,#101114); }
.wallpaper-settings .wallpaper-heading,.wallpaper-preview .wallpaper-heading { display:flex; align-items:flex-start; gap:10px; min-width:0; }
.wallpaper-heading > div { min-width:0; flex:1; }
.wallpaper-settings h2,.wallpaper-settings h3,.wallpaper-preview h3 { margin:0; font-size:13px; line-height:1.5; color:var(--theme-text-primary,#f2f2f3); }
.wallpaper-settings p,.wallpaper-preview p { margin:3px 0 0; font-size:11px; line-height:1.6; color:var(--theme-text-secondary,#aeb1bb); }
.wallpaper-heading-icon { display:grid; place-items:center; flex:0 0 30px; height:30px; border:1px solid var(--theme-border-subtle,#343740); border-radius:9px; background:var(--theme-surface-interactive,#18191c); }
.wallpaper-heading-icon svg { width:20px; height:20px; }
.wallpaper-settings button,.wallpaper-preview button { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-width:0; padding:8px 10px; border:1px solid var(--theme-border-subtle,#343740); border-radius:9px; background:var(--theme-surface-interactive,#18191c); color:var(--theme-text-primary,#f2f2f3); font:inherit; font-size:11px; cursor:pointer; }
.wallpaper-settings button:hover,.wallpaper-preview button:hover { background:var(--theme-surface-hover,#25272c); }
.wallpaper-settings button svg,.wallpaper-preview button svg { flex:none; width:16px; height:16px; }
.wallpaper-settings .wallpaper-switch { position:relative; flex:0 0 32px; width:32px; height:19px; padding:0; margin-top:1px; border:0; border-radius:99px; background:var(--theme-text-muted,#6b6e77); }
.wallpaper-switch span { position:absolute; top:2px; left:2px; width:15px; height:15px; border-radius:50%; background:var(--theme-on-accent,#fff); transition:transform .15s; }
.wallpaper-settings .wallpaper-switch[aria-checked="true"] { background:var(--theme-focus,#269dff); }
.wallpaper-switch[aria-checked="true"] span { transform:translateX(13px); }
.wallpaper-selected { position:relative; min-width:0; }
.wallpaper-sample { position:relative; aspect-ratio:2.65; overflow:hidden; border:1px solid var(--theme-border-subtle,#343740); border-radius:10px; background:var(--wallpaper-base); }
.wallpaper-photo > img { object-fit:cover; filter:none; opacity:1; transform:none; }
.wallpaper-photo .wallpaper-overlay { background:transparent; }
.wallpaper-settings .wallpaper-remove { position:absolute; top:8px; right:8px; background:var(--theme-surface-elevated,#111214); }
.wallpaper-empty { position:absolute; inset:0; display:grid; place-items:center; padding:12px; text-align:center; font-size:11px; color:var(--theme-text-secondary,#aeb1bb); }
.wallpaper-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.wallpaper-adjustments,.wallpaper-overlay-settings { display:grid; gap:10px; padding-top:12px; border-top:1px solid var(--theme-border-subtle,#343740); }
.wallpaper-settings .wallpaper-adjustment { display:grid; grid-template-columns:70px minmax(0,1fr) 62px; align-items:center; gap:10px; margin:0; font-size:11px; color:var(--theme-text-secondary,#aeb1bb); }
.wallpaper-adjustment input[type="range"] { appearance:none; width:100%; min-width:0; min-height:20px; height:20px; padding:0; border:0; background:linear-gradient(to right,var(--theme-focus,#269dff) var(--wallpaper-range,40%),var(--theme-border-subtle,#343740) var(--wallpaper-range,40%)) center / calc(100% - 12px) 4px no-repeat; cursor:pointer; }
.wallpaper-adjustment input[type="range"]::-webkit-slider-thumb { appearance:none; width:12px; height:12px; border-radius:50%; background:var(--theme-knob,#f2f2f3); }
.wallpaper-adjustment output { padding:6px; text-align:center; border-radius:8px; background:var(--theme-surface-interactive,#18191c); }
.wallpaper-scale { display:grid; grid-template-columns:minmax(0,1fr) 82px; gap:10px; align-items:center; }
.wallpaper-scale .wallpaper-adjustment { grid-template-columns:70px minmax(0,1fr); }
.wallpaper-scale output { display:none; }
.wallpaper-scale select { width:100%; min-width:0; padding:7px; border:1px solid var(--theme-border-subtle,#343740); border-radius:9px; background:var(--theme-surface-interactive,#18191c); color:var(--theme-text-primary,#f2f2f3); font-size:11px; }
.wallpaper-overlay-options { display:flex; flex-wrap:wrap; gap:4px; align-items:center; }
.wallpaper-overlay-options button { padding:7px; gap:5px; font-size:10px; }
.wallpaper-overlay-options button[aria-pressed="true"] { border-color:var(--theme-focus,#269dff); }
.wallpaper-overlay-options i { flex:none; width:15px; height:15px; border:1px solid var(--theme-text-muted,#6b6e77); border-radius:50%; background:var(--theme-app,#080d16); }
.wallpaper-overlay-options button[aria-pressed="true"] i { border-color:var(--theme-focus,#269dff); background:var(--theme-focus,#269dff); }
.wallpaper-overlay-options input[type="color"] { width:25px; height:25px; min-height:0; padding:1px; border:1px solid var(--theme-border-subtle,#343740); border-radius:7px; background:transparent; cursor:pointer; }
.wallpaper-preview { position:relative; margin-top:12px; }
.wallpaper-preview .wallpaper-heading > svg { flex:none; width:22px; height:22px; margin-top:3px; }
.wallpaper-preview .wallpaper-heading button { font-size:10px; padding:7px; }
.wallpaper-interface { aspect-ratio:3; }
.wallpaper-mini-ui { position:absolute; inset:8px; display:grid; grid-template-columns:30px 1fr 1.55fr; gap:7px; pointer-events:none; overflow:hidden; }
.wallpaper-mini-ui aside,.wallpaper-mini-ui section { padding:8px; border:1px solid var(--theme-border-subtle,#343740); border-radius:8px; background:rgba(var(--theme-surface-card-rgb,16,17,20),.85); }
.wallpaper-mini-ui aside { display:grid; justify-items:center; gap:5px; }
.wallpaper-mini-ui i { display:block; width:70%; height:9px; border-radius:6px; margin:6px 0; background:var(--theme-text-muted,#6b6e77); opacity:.55; }
.wallpaper-mini-ui aside i { width:16px; height:16px; border-radius:50%; margin:0; }
.wallpaper-mini-ui b { display:block; width:55%; height:8px; margin:4px 0 8px; border-radius:6px; background:var(--theme-text-muted,#6b6e77); opacity:.65; }
.wallpaper-mini-ui section { height:calc(100% - 20px); min-height:0; }
.screen-video,.screen-video video { cursor:default; }
.screen-video.can-pan,.screen-video.can-pan video { cursor:grab; touch-action:none; }
.screen-video.is-panning,.screen-video.is-panning video,.chat-image-lightbox-stage.is-dragging { cursor:grabbing; }
@media(max-width:480px) { .wallpaper-actions button { padding:8px 5px; font-size:10px; } .wallpaper-preview .wallpaper-heading { flex-wrap:wrap; } .wallpaper-mini-ui { max-height:85px; } }
