/* Desktop project archive. The HEAD composition keeps its existing layout. */
#rawxProjectsPage > main[hidden] { display:none!important; }
.project-view-switch { position:fixed; z-index:50; bottom:18px; left:var(--project-switch-left,clamp(14px,2vw,32px)); display:flex; align-items:center; gap:12px; padding:5px 0; background:#ccc; font-family:var(--font-body); font-size:clamp(13px,1.1vw,17px); font-weight:650; line-height:1; }
.project-view-switch a { display:inline-flex; align-items:center; min-height:36px; color:#f00; }
.project-view-switch a[aria-current],.project-view-switch a:hover { color:rgba(0,0,0,.88); }
.project-view-switch > span { color:#0008; }
#rawxProjectsPage[data-project-view="body"] { display:flex; flex-direction:column; height:100dvh; min-height:0; max-height:none; padding:0; overflow:hidden; }
#rawxProjectsPage[data-project-view="body"] > .topbar { flex:none; }
.project-body { flex:1; min-height:0; display:grid; grid-template-columns:minmax(0,35fr) minmax(0,65fr); column-gap:clamp(32px,4vw,80px); padding:12px clamp(18px,2vw,32px) 76px; }
.archive-preview { min-width:0; min-height:0; margin:0; display:flex; align-items:center; position:relative; }
.archive-preview-link { position:relative; display:block; width:100%; color:#000d; }
.archive-preview-image { display:block; width:100%; height:auto; max-height:calc(100dvh - 250px); object-fit:contain; transition:opacity 160ms ease; }
.archive-preview.is-loading .archive-preview-image { opacity:.45; }
.archive-preview-status { padding:48px 0; font-size:13px; }
.archive-index { display:flex; flex-direction:column; min-height:0; min-width:0; }
.archive-list { flex:1; min-height:0; overflow:auto; overflow-x:hidden; overscroll-behavior:contain; scrollbar-gutter:stable; scrollbar-width:thin; scrollbar-color:#00000055 transparent; padding:0 14px 0 0; }
.archive-list:hover,.archive-list:focus-visible { scrollbar-color:#00000080 transparent; }
.archive-list::-webkit-scrollbar { width:7px; }
.archive-list::-webkit-scrollbar-track { background:transparent; margin:10px 0; }
.archive-list::-webkit-scrollbar-thumb { background:#00000055; border:2px solid transparent; border-radius:8px; background-clip:padding-box; }
.archive-list::-webkit-scrollbar-thumb:hover { background-color:#00000080; }
.archive-list::-webkit-scrollbar-button { display:none; }
.archive-list > ol { list-style:none; padding:0; margin:0; }
.archive-entry { display:grid; grid-template-columns:clamp(65px,7vw,105px) minmax(0,1fr); gap:clamp(16px,2vw,36px); padding:0 3px 38px; color:rgba(0,0,0,.60); font-family:var(--font-body); transition:color 160ms ease; }
.archive-entry.is-active,.archive-entry:hover,.archive-entry:focus-visible { color:rgba(0,0,0,.9); }
.archive-entry:focus-visible { outline-offset:-2px; }
.archive-entry__number { font-size:clamp(34px,4.5vw,68px); line-height:.85; font-weight:650; letter-spacing:-.04em; }
.archive-entry dl { min-width:0; margin:0; }
.archive-entry__line { display:grid; grid-template-columns:minmax(56px,22%) minmax(0,1fr); gap:12px; border-top:1px solid currentColor; padding:.2em 0; font-size:clamp(12px,1.04vw,17px); font-weight:650; line-height:1.2; }
.archive-entry dt,.archive-entry dd { min-width:0; margin:0; overflow-wrap:anywhere; }
.archive-entry dt { opacity:.8; }
.archive-empty { padding:24px 0; font-size:14px; }
@media(max-height:600px) {
  .project-body { padding-top:0; padding-bottom:58px; }
  .project-view-switch { bottom:5px; }
  .archive-preview-image { max-height:calc(100dvh - 210px); }
}
@media(max-width:900px) {
  .project-view-switch,.project-body { display:none!important; }
}
@media(prefers-reduced-motion:reduce) {
  .archive-preview-image,.archive-entry { transition:none; }
}
