/* A desktop with independently movable project windows. */
#desktop-windows{position:fixed;inset:0;z-index:400;pointer-events:none}
.project-window{position:fixed;display:flex;flex-direction:column;padding:3px;background:#c0c0c0;box-shadow:inset 1px 1px #fff,inset -1px -1px #444,5px 7px 0 #0003;pointer-events:auto;min-width:260px;max-width:100vw;max-height:calc(100dvh - 40px)}
.project-window-bar{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(90deg,#5b6280,#919cb0);height:30px;flex:none;color:white;padding:3px 4px 3px 8px;font:12px Tahoma,Arial,sans-serif;cursor:move;touch-action:none;user-select:none}
.window-active>.project-window-bar{background:linear-gradient(90deg,#000080,#168aca)}
.project-window-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;padding-right:10px}
.project-window-controls{display:flex;gap:3px;flex:none}
.project-window-controls button{height:24px;width:26px;padding:0;font:bold 17px Arial,sans-serif;min-height:0;line-height:20px;color:#111}
.project-window iframe{flex:1;width:100%;min-height:0;border:0;background:white;display:block}
.project-window.dragging iframe{pointer-events:none}
.project-window.maximized{inset:0!important;width:100%!important;height:calc(100dvh - 36px)!important;max-height:none;padding:3px}
.project-window.maximized>.project-window-bar{cursor:default}
.window-dock{position:fixed;bottom:0;left:0;right:0;z-index:3000;display:flex;gap:4px;flex-wrap:wrap;padding:3px;background:#c0c0c0;border-top:2px outset #eee;pointer-events:none;min-height:36px}
.window-dock:empty{display:none}
.project-window.minimized{position:relative!important;inset:auto!important;width:250px!important;height:30px!important;max-width:calc(100vw - 6px);min-width:0;padding:0;box-shadow:none}
.project-window.minimized iframe{display:none}.project-window.minimized .project-window-bar{cursor:pointer}
.inside-desktop-window{background:white}
.inside-desktop-window body{margin:0;width:100%;max-width:none;border:0;box-shadow:none;padding-bottom:25px}
.inside-desktop-window body>.desktop-titlebar,.inside-desktop-window .desktop-address{display:none}
.inside-desktop-window .nav{position:sticky;top:0}
.id-portrait-frame{position:relative;width:100%;aspect-ratio:200/258;background:white;border:2px solid #1000ff;overflow:hidden}
.id-portrait-frame .id-photo{position:absolute;width:303%;max-width:none;height:auto;max-height:none;left:-133%;top:-66%;border:0;object-fit:fill;filter:none}
.home .project-grid .campaign-video-cover video{object-fit:contain!important;background:#080808}
.home .project-grid .single-shooting-cover{background:#fff}
.home .project-grid .single-shooting-cover .shooting-cover-panel{width:100%;height:100%}
.home .project-grid .single-shooting-cover img{width:100%;height:100%;object-fit:cover!important}
.creative-error{position:fixed;z-index:1500;width:340px;max-width:calc(100vw - 24px);left:calc(50% - 250px + var(--error-step)*34px);top:calc(50% - 130px + var(--error-step)*34px);background:#c0c0c0;padding:4px;box-shadow:inset 1px 1px white,inset -2px -2px #555,5px 6px #0004;color:#111}
.creative-error .desktop-titlebar{height:30px;font-size:12px}.creative-error .desktop-titlebar button{width:24px;height:24px;padding:0;min-height:0;font:bold 22px Arial;color:black}
.creative-error-content{display:flex;gap:16px;padding:22px 16px 14px;font:12px/1.4 Tahoma,sans-serif}.creative-error-content p{margin:0 0 10px}.error-icon{display:grid;place-items:center;flex:none;background:#e00000;border:3px outset #ff6c6c;border-radius:50%;color:#fff;width:36px;height:36px;font:bold 32px/1 Arial}.error-ok{display:block;min-width:80px;margin:18px auto 0;padding:8px 18px}
@media(max-width:650px){.project-window{min-width:0}.project-window-title{font-size:11px}.project-window-controls button{height:27px;width:30px}.project-window-bar{height:33px}.creative-error{left:calc(12px + var(--error-step)*4px);top:calc(25% + var(--error-step)*34px);width:calc(100vw - 40px)}.id-portrait-frame{max-width:140px}.window-dock{flex-wrap:nowrap;overflow-x:auto}.project-window.minimized{flex:none;width:220px!important}}
.home .project-card[href="/projects/shooting/"] .single-shooting-cover .shooting-cover-panel img{padding:0!important;position:absolute;inset:0;object-fit:cover!important;transform:none!important}

/* Drag any corner to resize a restored project window. */
.window-resize-grip{position:absolute;z-index:5;width:16px;height:16px;touch-action:none;user-select:none}
.resize-nw{left:-5px;top:-5px;cursor:nwse-resize}.resize-ne{right:-5px;top:-5px;cursor:nesw-resize}
.resize-sw{left:-5px;bottom:-5px;cursor:nesw-resize}.resize-se{right:-5px;bottom:-5px;cursor:nwse-resize}
.resize-se:after{content:"";position:absolute;right:5px;bottom:5px;width:9px;height:9px;background:repeating-linear-gradient(135deg,transparent 0 2px,#777 2px 3px,#fff 3px 4px);clip-path:polygon(100% 0,100% 100%,0 100%)}
.project-window:is(.maximized,.minimized)>.window-resize-grip{display:none}
.project-window.resizing iframe{pointer-events:none}
@media(pointer:coarse){.window-resize-grip{width:24px;height:24px}.resize-nw,.resize-sw{left:-8px}.resize-ne,.resize-se{right:-8px}.resize-nw,.resize-ne{top:-8px}.resize-sw,.resize-se{bottom:-8px}}
