#project-dialog{width:min(820px,calc(100% - 48px));max-height:min(80dvh,680px);padding:0;border:1px solid var(--line);border-radius:18px;background:var(--paper);color:var(--ink);box-shadow:0 30px 100px #0005;overflow:auto}
#project-dialog::backdrop{background:#111722c9;backdrop-filter:blur(9px)}body:has(#project-dialog[open]){overflow:hidden}.gallery-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 16px;border-bottom:1px solid var(--line)}.gallery-label{display:flex;align-items:center;gap:9px;color:var(--blue);font-size:11px;text-transform:uppercase;letter-spacing:1.5px}.gallery-close,.gallery-step{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:transparent;border:1px solid var(--line);color:var(--ink);border-radius:25px;padding:8px 12px;font-size:12px}.gallery-close{padding:7px}.gallery-close:hover,.gallery-step:hover{background:#2459cc0b;border-color:var(--blue);color:var(--blue)}.gallery-body{display:grid;grid-template-columns:minmax(0,1fr) 250px;min-height:240px}.gallery-stage{background:#e9eae4;overflow:auto;max-height:min(48dvh,380px);min-height:240px;padding:14px;text-align:center;overscroll-behavior:contain;touch-action:pan-y pinch-zoom}.gallery-image{display:block;max-width:100%;width:auto;height:auto;margin:auto}.gallery-image[hidden]{display:none}.gallery-details{padding:20px 18px;border-inline-start:1px solid var(--line)}#gallery-title{font-size:24px;letter-spacing:-.7px;overflow-wrap:anywhere;margin:8px 0;line-height:1.3}#gallery-description{font-size:13px;line-height:1.65;margin-bottom:16px}.gallery-count{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.gallery-original{display:inline-flex;align-items:center;gap:8px;color:var(--blue);font-size:12px;border-bottom:1px solid currentColor;padding-bottom:3px}.gallery-status{font-size:13px;max-width:360px;margin:35px auto;color:var(--muted)}.gallery-status[hidden]{display:none}.gallery-nav{padding:9px 16px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:12px}.gallery-hint{font-size:11px;color:var(--muted);text-align:center}.gallery-thumbnails{display:flex;gap:7px;overflow-x:auto;padding:8px 16px;border-top:1px solid var(--line);overscroll-behavior-x:contain;scrollbar-width:thin}.gallery-thumb{padding:3px;border:2px solid transparent;background:none;border-radius:7px;flex:0 0 38px;height:49px;overflow:hidden;color:var(--ink)}.gallery-thumb img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;border-radius:3px;background:#e0e1da}.gallery-thumb[aria-current=true]{border-color:var(--blue);background:#2459cc0c}.gallery-thumb:hover{border-color:#9cbbff}.project-art[aria-haspopup]{cursor:zoom-in}[dir=rtl] .gallery-step .icon{transform:rotate(180deg)}[dir=rtl] #gallery-title{letter-spacing:0}[dir=rtl] .gallery-label{letter-spacing:0}
@media(max-width:700px){#project-dialog{width:min(380px,calc(100% - 32px));max-height:82dvh;border-radius:14px}.gallery-top{padding:9px 12px}.gallery-body{grid-template-columns:1fr;min-height:0}.gallery-stage{max-height:min(30dvh,240px);min-height:140px;padding:10px}.gallery-details{padding:12px 14px;border-inline-start:0;border-top:1px solid var(--line)}#gallery-title{font-size:21px;margin:4px 0}#gallery-description{font-size:12px;line-height:1.6;margin:6px 0 10px}.gallery-nav{padding:8px 12px}.gallery-hint{display:none}.gallery-step{font-size:11px;padding:8px 10px}.gallery-thumbnails{padding:7px 12px}.gallery-thumb{flex-basis:33px;height:43px}.gallery-status{margin:25px auto}}

/* Custom rails are rendered by gallery.js; native scrolling remains the fallback. */
#project-dialog.custom-scrollbars{overflow:hidden;position:fixed}
.gallery-dialog-scroll{max-height:min(calc(80dvh - 2px),678px);overflow:auto;border-radius:inherit}
.custom-scroll-viewport{scrollbar-width:none!important;scrollbar-color:auto!important}
.custom-scroll-viewport::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
.gallery-stage-wrap,.gallery-thumbnails-wrap{position:relative;min-width:0;min-height:0}
.gallery-stage-wrap{background:#e9eae4}.gallery-stage-wrap .gallery-stage{height:100%;padding-inline-end:28px}
.gallery-thumbnails-wrap .gallery-thumbnails{padding-bottom:18px}
.gallery-scrollbar{position:absolute;z-index:3;background:#cdd7ed;border:1px solid #bac9e7;border-radius:999px;touch-action:none;user-select:none;cursor:pointer;direction:ltr}
.gallery-scrollbar[hidden]{display:none}.gallery-scrollbar[aria-orientation=vertical]{top:10px;bottom:10px;right:5px;width:12px}
#project-dialog>.gallery-scrollbar{top:8px;bottom:8px;right:2px;width:10px;z-index:5}
.gallery-scrollbar[aria-orientation=horizontal]{left:20px;right:20px;bottom:5px;height:10px}
.gallery-scrollbar-thumb{position:absolute;top:0;left:0;border:2px solid #cdd7ed;border-radius:999px;background:var(--blue);box-shadow:0 1px 3px #15377333;pointer-events:none}
.gallery-scrollbar[aria-orientation=vertical] .gallery-scrollbar-thumb{width:100%;min-height:30px}
.gallery-scrollbar[aria-orientation=horizontal] .gallery-scrollbar-thumb{height:100%;min-width:30px}
.gallery-scrollbar:hover .gallery-scrollbar-thumb,.gallery-scrollbar.is-dragging .gallery-scrollbar-thumb{background:#12347f}
.gallery-scrollbar:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
@media(max-width:700px){.gallery-dialog-scroll{max-height:calc(82dvh - 2px)}.gallery-stage-wrap .gallery-stage{padding-inline-end:25px}}
@media(forced-colors:active){.gallery-scrollbar{background:Canvas;border-color:ButtonText}.gallery-scrollbar-thumb{background:ButtonText;border-color:Canvas;forced-color-adjust:none}}
/* Reserve an independent lane for the popup rail beside nested image scrolling. */
.gallery-dialog-scroll{padding-right:16px}
