/* PROJECTS BRANCH — desktop additions, folder browsing and project reading.
   Scoped to .room-projects; merge this block after the original rooms.css. */
.room-projects .desktop-later{left:62%;bottom:13px;width:112px;height:126px}
.room-projects .desktop-later span{opacity:1;bottom:-1px;font-size:10px}
.room-projects :is(.desktop-folders button,.desktop-landmark,.project-file,.featured-project,.folder-switcher button):focus-visible{outline:2px solid #476646;outline-offset:4px}
.room-projects :is(.desktop-folders button,.desktop-landmark):focus-visible{outline-color:#fff3cd}
.room-projects .folder-switcher{gap:8px 21px;margin-bottom:0}
.room-projects .folder-switcher button{display:inline-flex;align-items:center;gap:9px;padding:10px 0 14px;font-size:12px;min-height:44px;color:#647458}
.room-projects .folder-switcher button small{display:grid;place-items:center;min-width:19px;height:19px;padding:0 4px;border-radius:3px;background:#e0e4d1;font:10px Georgia,serif;color:#667753}
.room-projects .folder-switcher button[aria-pressed=true]{color:#304e36;border-color:#526e42}
.room-projects .folder-switcher button[aria-pressed=true] small{background:#526e42;color:#fff5d8}
.room-projects .project-folder-note{display:flex;align-items:center;gap:11px;padding:19px 0 15px;color:#536a46}
.room-projects .project-folder-symbol{width:31px;flex-shrink:0;transform:rotate(-5deg)}
.room-projects .project-folder-symbol svg{display:block;width:100%;height:28px}
.room-projects .project-folder-note p{margin:0;font-size:11px;line-height:1.7}
.room-projects .project-folder-note p>span{display:block;font-size:10px;color:#72805f}
.room-projects .project-files{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.room-projects .project-file{display:flex;flex-direction:column;min-width:0;padding:15px 17px 12px;background:#f7f3e4;border:1px solid #c4ccb07d;border-radius:5px;box-shadow:0 3px 0 #a5b28c0d;transition:background .2s,border-color .2s,transform .2s}
.room-projects .project-file:hover{background:#edeedb;border-color:#9caa81;transform:translateY(-3px)}
.room-projects .project-object{height:145px;width:100%;margin-bottom:14px;background:radial-gradient(ellipse at 50% 65%,#d7dfbf52,transparent 65%)}
.room-projects .project-object img{max-width:95%;max-height:100%}
.room-projects .project-file-kind{display:block;color:#7a825f;font-size:9px;line-height:1.6}
.room-projects .project-file h3{font-size:15px;line-height:1.5;margin:5px 0 9px;font-weight:500;overflow-wrap:anywhere}
.room-projects .project-file p{font-size:12px;line-height:1.8;color:#627451;margin:0 0 17px;min-height:0}
.room-projects .project-file>small{width:100%;margin-top:auto;padding-top:11px;border-top:1px solid #c5cdb270;gap:10px;font-size:10px;line-height:1.6;color:#677652}
.room-projects .project-file small .project-file-status{font-size:10px;line-height:1.6;color:#677652;text-align:left}
.room-projects .project-file small .project-file-arrow{font-size:19px;color:#607a4e;flex-shrink:0}
.room-projects.view-project .room-heading{margin-bottom:25px;padding-bottom:22px;border-bottom:1px solid #bdc8a780}
.room-projects.view-project .room-heading>div{max-width:830px}
.room-projects.view-project .room-heading h2{overflow-wrap:anywhere}
.room-projects.view-project .room-intro{font-size:14px;color:#617254}
.room-projects .project-detail{min-width:0}
.room-projects .project-detail-lead{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:40px;max-width:none;margin:0 0 30px;align-items:start}
.room-projects .project-story{padding-top:7px;max-width:610px}
.room-projects .project-story>p:not(.room-eyebrow){font-size:15px;line-height:2;color:#455e42;margin:11px 0 0;white-space:pre-line;overflow-wrap:anywhere}
.room-projects .project-story blockquote{font-size:13px;line-height:1.95;margin:21px 0 0;padding:4px 0 4px 17px;color:#68764e;border-color:#abb781}
.room-projects .project-facts{padding:19px 20px;background:#e6e9d5;border:1px solid #c3ccac80;border-radius:4px;min-width:0}
.room-projects .project-status{display:inline-block;font-size:10px;line-height:1.7;padding:4px 8px;margin:0 0 20px;background:#f8f4df;color:#5f7148;border-radius:2px;overflow-wrap:anywhere}
.room-projects .project-facts .room-eyebrow{margin-bottom:7px;font-size:9px;letter-spacing:1.4px;color:#72815a}
.room-projects .project-role{font-size:12px;line-height:1.85;margin:0;color:#4b6243;overflow-wrap:anywhere}
.room-projects .project-facts .project-award{margin:13px 0 0;line-height:1.8}
.room-projects .project-outlinks{padding-top:18px;gap:15px}
.room-projects .project-outlinks:empty{display:none}
.room-projects .project-outlinks .solid-link{width:100%;font-size:12px;padding:12px 14px;gap:14px}
.room-projects .project-outlinks>a:not(.solid-link){font-size:11px;line-height:1.7;min-height:24px}
.room-projects .project-image-strip{display:grid;grid-template-columns:minmax(0,1fr);gap:23px;margin-bottom:34px}
.room-projects .project-image-strip figure{min-width:0;background:#f8f5e9;padding:10px 10px 0;border:1px solid #bfc9ac99;border-radius:5px}
.room-projects .project-image-strip img{width:100%;height:auto;max-height:560px;object-fit:contain;border:0;border-radius:2px;background:#e6e9da}
.room-projects .project-image-strip figcaption{display:flex;align-items:baseline;justify-content:space-between;gap:20px;color:#6c795b;font-size:11px;line-height:1.8;margin:0;padding:10px 3px 11px;overflow-wrap:anywhere}
.room-projects .project-image-count{font:11px/1.8 Georgia,serif;color:#8a9476;white-space:nowrap;flex-shrink:0}
.room-projects .project-detail-foot{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:40px;align-items:start}
.room-projects .project-detail-foot h3.room-eyebrow{font-size:10px;letter-spacing:1.5px;margin:0 0 11px;color:#5d7351}
.room-projects .project-work ol{margin:0;padding:0;list-style:none}
.room-projects .project-work li{display:flex;align-items:baseline;gap:15px;border-top:1px solid #c4cdb580;padding:13px 0}
.room-projects .project-work li>span{font:13px Georgia,serif;color:#8a986b;flex-shrink:0}
.room-projects .project-work li>p{font-size:13px;line-height:1.95;color:#506a47;margin:0;overflow-wrap:anywhere}
.room-projects .project-outcome{padding:18px 20px;background:#e9e9d3;border-top:3px solid #a6af7b;border-radius:2px}
.room-projects .project-result{font-size:12px;line-height:1.95;margin:0;color:#5e6e49;overflow-wrap:anywhere}
@media(max-width:1000px){
  .room-projects .desktop-later{left:60%;width:95px;height:108px}
  .room-projects .project-files{gap:13px}
  .room-projects .project-file{padding:13px}
  .room-projects .project-detail-lead,.room-projects .project-detail-foot{grid-template-columns:minmax(0,1fr) 220px;gap:25px}
}
@media(max-width:700px){
  .room-projects .desktop-later{left:auto;right:7%;top:100px;bottom:auto;width:74px;height:83px}
  .room-projects .desktop-later span{font-size:10px;padding:3px 5px;bottom:-3px}
  .room-projects .folder-switcher{display:grid;grid-template-columns:1fr 1fr;gap:0 17px}
  .room-projects .folder-switcher button{justify-content:space-between;padding:11px 0;font-size:11px}
  .room-projects .project-files{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .room-projects .project-file{padding:12px}
  .room-projects .project-object{height:120px;margin-bottom:10px}
  .room-projects .project-file h3{font-size:14px}
  .room-projects .project-file p{font-size:11px;line-height:1.8}
  .room-projects .project-detail-lead,.room-projects .project-detail-foot{grid-template-columns:minmax(0,1fr);gap:23px}
  .room-projects .project-story{padding-top:0}
  .room-projects .project-story>p:not(.room-eyebrow){font-size:14px}
  .room-projects .project-facts{padding:17px 19px}
  .room-projects .project-status{margin-bottom:14px}
  .room-projects .project-outlinks{flex-direction:row;flex-wrap:wrap;align-items:center;gap:16px 22px}
  .room-projects .project-outlinks .solid-link{width:auto;min-height:44px}
  .room-projects .project-image-strip{gap:19px;margin-bottom:27px}
  .room-projects .project-image-strip figure{padding:6px 6px 0}
  .room-projects .project-image-strip figcaption{font-size:10px;padding:9px 4px;gap:12px}
  .room-projects .project-work li{gap:12px}
  .room-projects .project-work li>p{font-size:13px}
  .room-projects .project-outcome{padding:18px}
}
@media(max-width:430px){
  .room-projects .project-files{grid-template-columns:minmax(0,1fr)}
  .room-projects .project-file{display:grid;grid-template-columns:90px minmax(0,1fr);column-gap:15px;padding:14px}
  .room-projects .project-object{grid-column:1;grid-row:1 / 3;width:90px;height:116px;align-self:center;margin:0}
  .room-projects .project-file-copy{grid-column:2;min-width:0}
  .room-projects .project-file h3{font-size:14px;margin-bottom:6px}
  .room-projects .project-file p{margin-bottom:11px}
  .room-projects .project-file>small{grid-column:2;padding-top:8px}
}
@media(max-width:350px){
  .room-projects .project-file{grid-template-columns:70px minmax(0,1fr);column-gap:11px;padding:11px}
  .room-projects .project-object{width:70px;height:98px}
  .room-projects .desktop-later{width:62px;height:73px}
}
@media(prefers-reduced-motion:reduce){.room-projects .project-file,.room-projects .project-object img{transition:none}.room-projects .project-file:hover{transform:none}}

/* PROJECTS DESKTOP CORRECTION — the desktop is the entire space, no modal chrome. */
#explore-dialog:has(.room-projects){inset:0;width:100%;height:100dvh;margin:0;border:0;border-radius:0;box-shadow:none;background:#203e60 url('assets/content/desktop/wallpaper.webp') center/cover no-repeat}
#explore-dialog:has(.room-projects)::backdrop{background:#203e60;backdrop-filter:none}
#explore-dialog:has(.room-projects) .room-shell{display:block;position:relative;height:100%}
#explore-dialog:has(.room-projects) #room-scroll{height:100%;scrollbar-color:#b6c39c transparent}
#explore-dialog:has(.room-projects) .room-topbar{position:absolute;inset:18px 22px auto auto;padding:0;border:0;background:none;z-index:10}
#explore-dialog:has(.room-projects) .room-crumbs{display:none}
#explore-dialog:has(.room-projects) .room-top-actions{gap:10px}
#explore-dialog:has(.room-projects) .room-top-actions button{display:grid;place-items:center;min-width:38px;height:38px;padding:0;background:#f5efdce8;border:0;border-radius:3px;color:#294b3b;box-shadow:0 2px 6px #142a3120}
#explore-dialog:has(.room-projects) #room-close>span{display:none}
#explore-dialog:has(.room-projects) #room-close b{font-size:27px}
#explore-dialog:has(.room-projects) .room-footer{position:absolute;inset:auto auto 17px 22px;display:block;padding:0;border:0;background:none;z-index:10}
#explore-dialog:has(.room-projects) #room-position{display:none}
#explore-dialog:has(.room-projects) #room-back{padding:11px 14px;background:#f5efdce8;border-radius:3px;box-shadow:0 2px 6px #142a3120;font-size:12px}
.room-projects.view-home{height:100%;padding:0}
.room-projects .project-desktop-title{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.room-projects.view-home .desktop-room{height:100%;border:0;border-radius:0;box-shadow:none}
.room-projects.view-home .desktop-scene{height:100%;min-height:500px;background-image:var(--wallpaper);background-position:center}
.room-projects.view-home .desktop-folders{top:16%;left:5%;right:auto;width:290px;grid-template-columns:125px 125px;gap:36px 40px}
.room-projects.view-home .desktop-folders button{font-size:12px;gap:6px;padding:8px 4px;line-height:1.6}
.room-projects.view-home .desktop-folders button svg{width:58px;height:49px}
.room-projects.view-home .desktop-folders small{font-size:10px}
@font-face{font-family:ProjectsGrotesk;src:url('assets/fonts/space-grotesk-variable.ttf') format('truetype');font-weight:300 700;font-display:swap}
.room-projects.view-home .desktop-folders button:nth-child(2){transform:translateY(17px)}
.room-projects.view-home .desktop-folders button:nth-child(3){transform:translateX(-9px)}
.room-projects.view-home .desktop-folders button:nth-child(4){transform:translate(10px,15px)}
.room-projects.view-home .desktop-slogan{left:55%;top:8%;width:340px;text-align:center;font:700 clamp(30px,3.4vw,48px)/1.2 ProjectsGrotesk,Arial,sans-serif;letter-spacing:-1.5px;transform:rotate(-5deg);text-shadow:none;pointer-events:none}
.room-projects.view-home .desktop-slogan span{display:block;filter:drop-shadow(0 3px 0 #0003);text-shadow:1px 1px 1px #ffffff80,-1px -1px 1px #ffffff40}
.room-projects.view-home .desktop-slogan span:nth-child(1){color:#ef866e;transform:rotate(3deg)}
.room-projects.view-home .desktop-slogan span:nth-child(2){color:#e6cf78;transform:rotate(-2deg)}
.room-projects.view-home .desktop-slogan span:nth-child(3){color:#c1a6d9;transform:rotate(2deg)}
.room-projects.view-home .desktop-ghost{left:32%;top:auto;bottom:6%;width:20%;height:38%}
.room-projects.view-home .desktop-car{left:61%;bottom:15%;width:14%;height:17%;transform:rotate(-8deg)}
.room-projects.view-home .desktop-island{right:9%;top:34%;bottom:auto;width:17%;height:25%;transform:rotate(9deg)}
.room-projects.view-home .desktop-later{left:12%;right:auto;top:auto;bottom:14%;width:13%;height:22%}
.room-projects.view-home .desktop-recorder{right:6%;bottom:3%;width:15%;height:24%;transform:rotate(-9deg)}
.room-projects.view-home .desktop-landmark span{font-size:11px;bottom:-7px;opacity:0;padding:3px 8px;background:#1f355cad;color:#fff;text-shadow:0 1px 2px #14263a;transition:opacity .2s}
.room-projects.view-home .desktop-landmark:hover span,.room-projects.view-home .desktop-landmark:focus-visible span{opacity:1}
.room-projects:is(.view-folder,.view-project){width:min(1080px,calc(100% - 56px));min-height:calc(100% - 130px);margin:76px auto 54px;padding:30px 36px 40px;background:#f2f0e3;border-radius:3px}
@media(min-width:701px) and (max-width:1000px){
  .room-projects.view-home .desktop-folders{left:3%;width:210px;grid-template-columns:100px 100px;gap:32px 10px}
  .room-projects.view-home .desktop-slogan{left:47%;width:300px;font-size:34px}
  .room-projects.view-home .desktop-ghost{left:30%;width:22%}
}
@media(max-width:700px){
  #explore-dialog:has(.room-projects) .room-topbar{top:14px;right:15px}
  #explore-dialog:has(.room-projects) .room-footer{bottom:13px;left:15px}
  .room-projects.view-home .desktop-folders{top:10%;left:12px;right:12px;width:auto;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}
  .room-projects.view-home .desktop-folders button{font-size:10px;padding:8px 1px;gap:4px}
  .room-projects.view-home .desktop-folders button:nth-child(n){transform:none}
  .room-projects.view-home .desktop-folders button svg{width:47px;height:42px}
  .room-projects.view-home .desktop-folders small{font-size:9px}
  .room-projects.view-home .desktop-slogan{left:4%;top:27%;width:57%;font-size:clamp(28px,8.6vw,44px);letter-spacing:-1px}
  .room-projects.view-home .desktop-ghost{left:9%;top:auto;bottom:7%;width:36%;height:26%}
  .room-projects.view-home .desktop-car{left:auto;right:7%;bottom:26%;width:28%;height:13%}
  .room-projects.view-home .desktop-island{right:3%;top:34%;bottom:auto;width:29%;height:17%}
  .room-projects.view-home .desktop-later{left:10%;right:auto;top:48%;bottom:auto;width:24%;height:15%}
  .room-projects.view-home .desktop-recorder{right:6%;bottom:5%;width:28%;height:17%}
  .room-projects.view-home .desktop-landmark span{font-size:10px;padding:3px 6px;opacity:1}
  .room-projects:is(.view-folder,.view-project){width:calc(100% - 24px);min-height:calc(100% - 134px);margin:66px auto 68px;padding:25px 20px 30px}
}
