/* Desktop icons live in a bounded area above the footer and dock. */
.desktop-folders{position:absolute;inset:0;width:100%;height:100%;padding:0;display:block;pointer-events:none;z-index:2}
.desktop-icon{position:absolute;width:104px;height:102px;padding:8px 2px;gap:6px;pointer-events:auto;touch-action:none;user-select:none}
.desktop-icon .folder-name{max-width:100%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:9px}
.desktop-icon pre{color:var(--folder-color,var(--green));text-shadow:none}
.folder[data-folder=porto]{--folder-color:#ae633c}.folder[data-folder=photos]{--folder-color:#496eaa}.folder[data-folder=videos]{--folder-color:#8660a8}.folder[data-folder=collections]{--folder-color:#258573}
.night .folder[data-folder=porto]{--folder-color:#e4a16b}.night .folder[data-folder=photos]{--folder-color:#82b4ed}.night .folder[data-folder=videos]{--folder-color:#bb9ce2}.night .folder[data-folder=collections]{--folder-color:#72c8b5}
.file-shortcut img{height:57px;width:75px;object-fit:contain;pointer-events:none}
.dragging{z-index:45!important;opacity:.8;cursor:grabbing!important;position:relative;box-shadow:3px 3px 0 var(--shadow)}
.desktop-icon.dragging{position:absolute}
.media-file{touch-action:none;user-select:none}.media-file img{pointer-events:none}
.desktop-footer{position:absolute;left:20px;right:20px;bottom:110px;pointer-events:none;z-index:0}
.settings-app{position:fixed;top:72px;left:max(12px,calc(50% - 235px));width:min(470px,calc(100vw - 24px));height:min(650px,calc(100dvh - 175px));min-height:120px;z-index:40;background:var(--paper);border:1px solid var(--ink);box-shadow:7px 7px 0 var(--shadow);display:flex;flex-direction:column;color:var(--ink)}
.settings-app .window-titlebar{flex-shrink:0}.settings-body{overflow:auto;min-height:0;padding:22px}.settings-body h3{font-size:20px;font-weight:400;margin:0 0 24px}.settings-body section+section{border-top:1px solid var(--line);margin-top:22px;padding-top:17px}.settings-body h4{margin:0 0 9px;font-size:11px}.settings-body p{font-size:10px;line-height:1.8;color:var(--muted);margin:0 0 12px}.settings-maximized{left:6px!important;top:49px!important;width:calc(100% - 12px);height:calc(100dvh - 145px)}
.background-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.wallpaper-option{min-width:0;padding:10px 6px;border:1px solid var(--line);background:var(--desk);font-size:10px}.wallpaper-option pre{height:80px;overflow:hidden;font-size:6px;line-height:1.2;margin:0 0 8px;color:var(--muted)}.wallpaper-option[aria-pressed=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}
[data-wallpaper=space] .cloud,[data-wallpaper=city] .cloud{display:none}
.photo-stage.zoomed{cursor:grab;touch-action:none}.photo-stage.zoomed:active{cursor:grabbing}.photo-stage img{user-select:none;will-change:transform}
.photo-zoom{display:flex;align-items:center;gap:6px;font-size:9px;white-space:nowrap}.photo-zoom button{border:1px solid var(--line);padding:2px 6px}.photo-zoom span{min-width:34px;text-align:center}
.dock{max-width:calc(100vw - 16px)}
@media(max-width:700px){.dock .disk-status{display:none}.dock-divider:last-of-type{display:none}}
@media(max-width:600px){.desktop-folders{padding:0}.desktop-icon pre{font-size:11px}.desktop-icon .folder-name{font-size:9px}.dock{gap:2px;padding:8px 5px}.dock button{min-width:42px}.dock-divider{margin:0 2px}.settings-app{top:57px;height:calc(100dvh - 155px)}.settings-body{padding:18px}.desktop-footer{bottom:110px;font-size:7px}}
@media(max-width:420px){.photo-status{height:64px;flex-basis:64px;flex-wrap:wrap;justify-content:space-between;gap:2px}.photo-zoom{order:1;flex-basis:100%;justify-content:center;padding-bottom:4px}}

.folder[data-folder=nyc]{--folder-color:#9a4e6d}.folder[data-folder=toronto]{--folder-color:#977628}.folder[data-folder=new-hampshire]{--folder-color:#526b3d}
.night .folder[data-folder=nyc]{--folder-color:#e49ebd}.night .folder[data-folder=toronto]{--folder-color:#e1c678}.night .folder[data-folder=new-hampshire]{--folder-color:#a3c48c}
.video-badge{position:absolute;right:6px;bottom:6px;padding:3px 6px;background:#181818;color:#fff;font-size:15px;border:1px solid #aaa}
@media(min-width:601px){.desktop-caption{left:calc(50px + var(--icon-columns,1)*118px);max-width:290px}}
