/* Native dialog keeps keyboard focus and the profile underneath intact. */
.project-overlay{width:min(1240px,calc(100vw - 64px));max-width:none;max-height:calc(100dvh - 64px);padding:0;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--text);box-shadow:0 32px 120px #0006;font-family:'Source Sans 3',sans-serif}.project-overlay::backdrop{background:#101813b8;backdrop-filter:blur(5px)}.quick-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 24px;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:3;background:var(--surface)}.quick-top>span{font-size:14px;color:var(--muted)}.quick-top .btn{font-size:14px}.quick-content{padding:26px}.quick-heading{margin-bottom:24px}.quick-heading h2{font-size:32px;letter-spacing:-.025em;margin:8px 0}.quick-heading p{font-size:14px;margin:0}.quick-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:28px;align-items:start}.quick-gallery{min-width:0}.quick-media-tools{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font-size:13px;color:var(--muted)}.quick-image-stage{position:relative;height:390px;background:#18221d;border-radius:10px;overflow:auto;display:flex;align-items:center;justify-content:center}.quick-image-stage>img{width:100%;height:100%;object-fit:contain;display:block}.quick-image-stage.is-zoomed{display:block}.quick-image-stage.is-zoomed>img{width:170%;height:auto;max-width:none}.gallery-step{position:absolute;top:45%;width:44px;height:44px;background:#fff;color:#17231d;border:0;border-radius:50%;font-size:28px}.gallery-step.previous{left:12px}.gallery-step.next{right:12px}.quick-gallery-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:14px 0;font-size:13px}.quick-thumbnails{display:flex;gap:10px;overflow-x:auto;padding:4px}.quick-thumbnails button{width:86px;min-width:86px;height:62px;border:2px solid transparent;border-radius:6px;padding:3px;background:var(--surface-2)}.quick-thumbnails button[aria-pressed=true]{border-color:var(--accent)}.quick-thumbnails img{width:100%;height:100%;object-fit:cover;border-radius:2px}.quick-media-note,#quick-model-status{font-size:13px;line-height:1.5}.quick-info>section{padding-bottom:22px;margin-bottom:20px;border-bottom:1px solid var(--line)}.quick-info h3{font-size:19px;letter-spacing:-.02em;margin:0 0 14px}.quick-info p{font-size:13px}.quick-info dl{margin:0 0 20px}.quick-info dl>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:14px;padding:8px 0;font-size:14px}.quick-info dt{color:var(--muted)}.quick-info dd{margin:0;overflow-wrap:anywhere}.quick-info .source-button{width:100%;font-size:14px}.quick-firms-heading{display:flex;justify-content:space-between}.quick-firms-heading>span{color:var(--muted)}.quick-info .participant{padding:12px 0}.quick-info .participant strong{font-size:14px}.quick-info .participant small{font-size:12px}.quick-info .text-link{font-size:13px;display:block;margin-top:15px}.quick-evidence summary{cursor:pointer;min-height:44px;font-size:14px}.quick-evidence blockquote{font-size:14px;margin:12px 0;line-height:1.65;color:var(--muted)}.quick-no-media{padding:70px 25px;border:1px dashed var(--line);border-radius:10px;text-align:center}.quick-no-media>span{font-size:34px;color:var(--accent)}#quick-model{height:390px;position:relative;background:#18221d;border-radius:10px;overflow:hidden}
@media(max-width:750px){.project-overlay{width:100%;max-height:100dvh;height:100dvh;margin:0;border-radius:0;border:0}.quick-top{padding:12px 16px}.quick-content{padding:20px 16px}.quick-heading h2{font-size:27px}.quick-heading p{font-size:13px}.quick-grid{grid-template-columns:1fr;gap:24px}.quick-image-stage,#quick-model{height:290px}.quick-gallery-bottom{font-size:12px}.quick-gallery-bottom .btn{font-size:12px;padding:8px 12px}.quick-info dl>div{font-size:15px}.quick-thumbnails button{width:74px;min-width:74px;height:56px}}
.gallery-categories{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}.gallery-categories:empty{display:none}.gallery-categories .btn{font-size:13px;min-height:38px;padding:6px 12px}.gallery-categories .btn[aria-pressed=true]{background:var(--text);color:var(--surface);border-color:var(--text)}.quick-thumbnails{margin-top:12px}.quick-thumbnails button{height:100px;min-width:118px;width:118px;text-align:left}.quick-thumbnails img{height:62px;object-fit:contain;background:#fff}.quick-thumbnails span{display:block;font-size:10px;line-height:1.25;color:var(--text);padding:4px 2px;white-space:normal}.quick-image-stage.is-zoomed>img{width:max(170%,1500px)}#quick-page-source{font-size:13px}.quick-image-stage{background:#e7e7e3}.quick-image-stage>img{background:#fff}.quick-image-stage .gallery-step{box-shadow:0 2px 12px #0003;z-index:1}
@media(max-width:750px){.gallery-categories{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.gallery-categories .btn{flex-shrink:0;min-height:44px}.quick-thumbnails button{min-width:105px;width:105px}}
.quick-thumbnails{overflow-y:hidden;align-items:flex-start;padding-bottom:10px}.quick-thumbnails button{height:112px;flex-shrink:0}.quick-thumbnails span{font-size:11px}
.media-summary{color:var(--accent);font-weight:700}.identity-contact{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:14px;font-size:14px}.identity-contact a{border-bottom:1px solid var(--line)}.source-explanation{display:block;font-size:12px;line-height:1.5;margin:8px 0}.quick-project-nav{display:flex;gap:10px;align-items:center;margin-left:auto}.quick-project-nav span{font-size:13px;white-space:nowrap}.quick-project-nav .btn{font-size:13px}.quick-top>span{margin-right:10px}.drawing-tools{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.drawing-tools .btn{font-size:14px;min-width:44px}.drawing-tools output{font-size:13px;min-width:42px;text-align:center}.quick-gallery-bottom{flex-wrap:wrap}.quick-image-stage{overflow:hidden;touch-action:none;isolation:isolate}.quick-image-stage>img{transform-origin:center;user-select:none;pointer-events:none;will-change:transform}.quick-image-stage.drawing-enlarged{cursor:grab}.quick-image-stage.drawing-enlarged:active{cursor:grabbing}.quick-image-stage .gallery-step{position:absolute}.quick-image-stage:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media(max-width:750px){.quick-top{flex-wrap:wrap;gap:8px}.quick-top>span{display:none}.quick-project-nav{margin:0;flex:1;gap:5px}.quick-project-nav .btn{font-size:12px;padding:8px}.quick-top>[data-close]{font-size:12px;padding:8px}.drawing-tools{width:100%}.drawing-tools #quick-zoom{margin-left:auto}}
.group-doc-count{display:block;margin:12px 0;font-size:13px;font-weight:700;color:var(--accent);line-height:1.5}.object-documents{padding:16px 18px;margin-bottom:24px;background:var(--surface-2);border-radius:8px}.object-documents label{display:flex;justify-content:space-between;gap:12px;font-size:14px;font-weight:700;margin-bottom:8px}.object-documents label span{font-weight:400;white-space:nowrap}.object-documents select{width:100%;font-size:14px}.object-documents p{font-size:12px;margin:8px 0 0}.project-overlay.is-expanded{width:100vw;height:100dvh;max-height:100dvh;max-width:100vw;margin:0;border:0;border-radius:0}.project-overlay.is-expanded .quick-image-stage,.project-overlay.is-expanded #quick-model{height:calc(100dvh - 210px);min-height:390px}.project-overlay.is-expanded .quick-grid{grid-template-columns:minmax(0,1fr) 300px}.project-overlay.is-expanded .quick-heading,.project-overlay.is-expanded .object-documents{max-width:1200px}.quick-top [data-expand]{font-size:13px;white-space:nowrap}
@media(max-width:750px){.quick-top [data-expand]{order:3;width:100%}.object-documents{padding:12px}.object-documents label{font-size:13px;flex-wrap:wrap}.object-documents select{font-size:13px}.project-overlay.is-expanded .quick-grid{grid-template-columns:1fr}.project-overlay.is-expanded .quick-image-stage,.project-overlay.is-expanded #quick-model{height:65dvh;min-height:290px}}
/* Expanded mode dedicates the viewport to the drawing and its controls. */
.project-overlay.is-expanded .quick-heading,.project-overlay.is-expanded .object-documents,.project-overlay.is-expanded .quick-info,.project-overlay.is-expanded .quick-thumbnails,.project-overlay.is-expanded .quick-media-note{display:none}.project-overlay.is-expanded .quick-grid{display:block}.project-overlay.is-expanded .quick-content{padding:16px 24px}.project-overlay.is-expanded .quick-image-stage,.project-overlay.is-expanded #quick-model{height:calc(100dvh - 290px);min-height:280px}.project-overlay.is-expanded .quick-gallery-bottom{margin:10px 0}
@media(max-width:750px){.project-overlay.is-expanded .quick-content{padding:12px}.project-overlay.is-expanded .quick-image-stage,.project-overlay.is-expanded #quick-model{height:calc(100dvh - 320px);min-height:240px}}
.share-view{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0}.share-view .btn{font-size:14px}.share-view [role=status]{font-size:13px;color:var(--muted)}#share-view-fallback{width:100%;font-size:13px}#share-view-url{display:block;width:100%;margin-top:6px}.project-overlay.is-expanded .quick-image-stage{height:calc(100dvh - 340px)}
@media(max-width:750px){.project-overlay.is-expanded .quick-image-stage{height:calc(100dvh - 380px)}}
.comparison-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 16px}.comparison-toolbar .btn{font-size:14px}.comparison-toolbar [aria-pressed=true]{background:var(--text);color:var(--surface)}#comparison-status{font-size:13px;color:var(--muted)}.comparison-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}.comparison-pane{min-width:0}.comparison-pane>label{font-size:14px;font-weight:700;display:block;margin-bottom:8px}.comparison-pane>select{width:100%;font-size:14px;margin-bottom:14px}.comparison-pane .quick-image-stage{height:480px}.comparison-pane .drawing-tools{margin:14px 0}.comparison-pane .text-link{font-size:13px}.comparison-error{font-size:13px}.quick-gallery.is-comparing>:not(.comparison-toolbar):not(.comparison-grid){display:none!important}.project-overlay.is-comparing .quick-grid{display:block}.project-overlay.is-comparing .quick-info{display:none}.project-overlay.is-expanded.is-comparing .comparison-pane .quick-image-stage{height:calc(100dvh - 285px);min-height:260px}
@media(max-width:750px){.comparison-grid{grid-template-columns:1fr;gap:28px}.comparison-pane .quick-image-stage,.project-overlay.is-expanded.is-comparing .comparison-pane .quick-image-stage{height:340px}.comparison-pane>select{font-size:13px}.comparison-toolbar .btn{font-size:13px}.comparison-pane{padding-bottom:16px;border-bottom:1px solid var(--line)}}

.source-warning{margin:8px 0 0;padding:8px 10px;border-radius:8px;background:rgba(198,40,40,.08);color:var(--text);font-size:12px}

.project-phase{margin:6px 0 0;font-size:14px}.project-phase span{color:var(--muted);font-size:12px}
