/* One desktop shell, one taskbar, independent application windows. */
#desktop{height:calc(100dvh - 45px);min-height:calc(100svh - 45px)}
#app-layer,#photo-layer{display:contents;position:static}
.photo-window{position:fixed}
.app-window{position:fixed;top:72px;left:max(12px,calc(50% - 380px));width:min(760px,calc(100vw - 24px));height:min(650px,calc(100dvh - 155px));min-height:120px;display:flex;flex-direction:column;overflow:hidden;color:var(--ink);background:var(--paper);border:1px solid var(--ink);box-shadow:7px 7px 0 var(--shadow);outline:none}
.app-window.is-active{border-color:var(--accent)}
.app-window .window-titlebar{height:40px;flex:0 0 40px;justify-content:flex-start;gap:16px}.app-window .window-controls{flex-shrink:0}.app-window .window-controls button{width:23px;height:23px;font-size:15px}
.app-window .window-titlebar h2{max-width:70%;margin:0}
.app-body{flex:1;min-height:0;overflow:auto;padding:24px}.app-body>h3{font-size:22px;font-weight:400;margin:0 0 22px}.app-body p{font-size:11px;line-height:1.9;color:var(--muted)}
.app-window.app-maximized{left:8px!important;top:53px!important;width:calc(100vw - 16px)!important;height:calc(100dvh - 125px)!important;box-shadow:none}
.preferences-app{width:min(500px,calc(100vw - 24px));left:max(12px,calc(50% - 250px))}.preference-section+.preference-section{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.preference-section h4{font-size:11px;margin:0 0 10px}.preference-section p{font-size:10px}
.help-app{width:min(540px,calc(100vw - 24px));left:max(12px,calc(50% - 270px));height:min(470px,calc(100dvh - 150px))}
.library-app .app-body{display:flex;flex-direction:column;padding:0;overflow:hidden}.library-toolbar{display:flex;align-items:center;gap:8px;padding:12px;border-bottom:1px solid var(--line);flex-shrink:0}.library-toolbar .outline{font-size:9px;padding:7px}.library-toolbar input{margin-left:auto;background:var(--desk);border:1px solid var(--line);padding:8px;min-width:0;width:180px;font-size:10px}.library-path{font-size:9px;padding:9px 16px;color:var(--muted);flex-shrink:0}.library-content{flex:1;min-height:0;overflow:auto;padding:12px 20px 24px}.library-status{padding:10px 14px;border-top:1px solid var(--line);font-size:9px;color:var(--muted);flex-shrink:0}
.album-card{border:1px solid var(--line);padding:22px 10px;background:var(--desk);display:flex;flex-direction:column;gap:10px;align-items:center;min-width:0}.album-card pre{font-size:16px;line-height:1.1;color:var(--accent);margin:0}.album-card strong{font-size:11px;font-weight:500}.album-card small{font-size:8px;color:var(--muted)}.album-card:hover{border-color:var(--accent);background:var(--paper)}
.album-card[data-album=porto] pre{color:#bd8056}.album-card[data-album=nyc] pre{color:#bf7fa1}.album-card[data-album=toronto] pre{color:#b09b4c}.album-card[data-album=new-hampshire] pre{color:#779966}
.library-empty{grid-column:1/-1;padding:50px 15px;text-align:center;color:var(--muted)}
.app-icon pre{height:43px;display:grid;align-content:center;line-height:1.05;font-size:23px;color:var(--accent)}.app-icon[data-app=photos] pre{color:#799ed4}.app-icon[data-app=videos] pre{color:#b394cf}.app-icon[data-app=settings] pre{color:var(--muted)}.app-icon small{font-size:7px}.desktop-footer{bottom:80px}
#taskbar{position:fixed;left:0;right:0;bottom:0;height:58px;z-index:50000;display:flex;align-items:center;gap:12px;padding:7px 14px;background:var(--paper);border-top:1px solid var(--ink);box-shadow:0 -5px 16px var(--shadow)}
.taskbar-pinned{display:flex;align-items:center;gap:4px;flex-shrink:0}.taskbar-pinned>button{height:40px;min-width:38px;padding:5px;font-size:19px;border:1px solid transparent}.taskbar-pinned>button:hover{background:var(--desk);border-color:var(--line)}.taskbar-divider{height:25px;width:1px;background:var(--line);margin:0 6px}
#running-tasks{display:flex;gap:5px;align-items:center;overflow-x:auto;overflow-y:visible;flex:1;min-width:0;height:48px;scrollbar-width:thin}
.task-entry{display:flex;flex:0 0 170px;min-width:0;border:1px solid var(--line);height:37px;align-items:center;border-bottom:2px solid var(--accent);background:var(--desk)}.task-entry.active{background:var(--paper);border-color:var(--accent)}.task-entry.minimized{border-bottom-color:var(--line);opacity:.75}.task-main{display:flex;align-items:center;gap:7px;min-width:0;flex:1;height:100%;padding:7px;font-size:9px}.task-glyph{font-size:12px}.task-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-options{height:100%;padding:3px 6px;border-left:1px solid var(--line);font-size:14px}
.task-popup{display:none;position:fixed;bottom:63px;left:8px;width:240px;padding:14px;background:var(--paper);border:1px solid var(--ink);box-shadow:4px 4px 0 var(--shadow);z-index:50001}.task-popup::after{content:'';position:absolute;bottom:-12px;left:0;right:0;height:14px}.task-entry:hover .task-popup,.task-entry:focus-within .task-popup,.task-entry.options-open .task-popup{display:block}.task-popup strong{display:block;font-size:10px;font-weight:500;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;margin-bottom:12px}.task-actions{display:flex;gap:7px}.task-actions button{flex:1;font-size:17px;padding:6px;border:1px solid var(--line)}.task-actions button:last-child:hover{background:#a83b3b;color:white;border-color:#a83b3b}
.taskbar-tray{display:flex;align-items:center;gap:7px;font-size:8px;color:var(--muted);flex-shrink:0}.tray-dot{width:5px;height:5px;background:var(--accent)}
.photo-window.photo-maximized{left:8px!important;top:53px!important;width:calc(100vw - 16px)!important;height:calc(100dvh - 125px)!important}.menubar{z-index:40000}#notice{z-index:50002;bottom:76px}
@media(max-width:750px){.taskbar-tray{display:none}#taskbar{gap:7px;padding:7px}.task-entry{flex-basis:145px}}
@media(max-width:600px){#desktop{height:calc(100dvh - 45px);min-height:calc(100svh - 45px)}.desktop-caption{left:22px;top:20px}.desktop-caption h1{font-size:24px;margin:8px 0;line-height:1.15}.desktop-caption p{font-size:9px;line-height:1.5;margin:8px 0}.desktop-clock{margin-top:12px}.desktop-icon{height:90px;gap:5px}.desktop-icon .folder-name{font-size:9px}.desktop-icon.app-icon pre{height:35px;font-size:20px}.desktop-icon.app-icon small{font-size:6px}.taskbar-pinned{gap:0}.taskbar-pinned>button{min-width:32px;font-size:17px;padding:4px}.taskbar-divider{margin:0 3px}.task-entry{flex-basis:128px}.task-main{font-size:8px;padding:6px;gap:4px}.task-glyph{font-size:10px}.task-popup{width:240px}.app-window{top:55px;height:calc(100dvh - 128px)}.app-body{padding:18px}.library-toolbar{padding:8px;gap:5px}.library-toolbar .outline{font-size:8px;padding:7px 5px}.library-toolbar input{width:110px;font-size:9px;padding:7px 5px}.library-content{padding:10px 14px 20px}.library-content .media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.album-card pre{font-size:13px}.album-card strong{font-size:10px}.app-window .window-titlebar{gap:6px}.desktop-footer{bottom:74px;font-size:6px}}
@media(max-height:500px){.desktop-caption .desktop-clock{display:none}.desktop-caption h1{font-size:24px}.app-window{top:50px;height:calc(100dvh - 117px)}.photo-window.photo-maximized{height:calc(100dvh - 117px)!important}}
