body.gallery-is-open{overflow:hidden}#gallery-dialog{position:fixed;inset:0;margin:0;width:100%;height:100dvh;max-width:none;max-height:none;padding:40px;border:0;background:transparent;color:#e9f3fa;overflow:hidden;outline:none}#gallery-dialog[open]{display:flex;align-items:center;justify-content:center}#gallery-dialog::backdrop{background:#04101dd9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}#gallery-dialog .gallery-panel{display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;width:min(1160px,100%);max-height:100%;border:1px solid #a2c2d12e;border-radius:18px;background:#0e2231;box-shadow:0 40px 110px #0008;overflow:hidden}#gallery-dialog .gallery-header{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:20px 25px;border-bottom:1px solid #c0d5e119}#gallery-dialog .gallery-heading{min-width:0}#gallery-dialog .gallery-eyebrow{display:block;font:9px Consolas,monospace;letter-spacing:.17em;text-transform:uppercase;color:var(--accent-light);margin-bottom:7px}#gallery-dialog .gallery-caption{font-size:19px;font-weight:500;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#gallery-dialog .gallery-tools{display:flex;align-items:center;gap:10px;flex-shrink:0}#gallery-dialog button{display:grid;place-items:center;min-width:44px;min-height:44px;padding:0;border:1px solid #9dbccc38;border-radius:9px;background:#ffffff08;color:#dfedf5;transition:background .18s,border-color .18s}#gallery-dialog button:hover{border-color:var(--accent-light);background:#ffffff16}#gallery-dialog button:focus-visible,#gallery-dialog a:focus-visible{outline:2px solid var(--accent-light);outline-offset:3px}#gallery-dialog button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}#gallery-dialog .gallery-close{display:grid;margin:0}#gallery-dialog .gallery-counter{font:11px Consolas,monospace;letter-spacing:.09em;color:#a8c7d7;margin-right:10px}#gallery-dialog .gallery-stage{position:relative;display:flex;align-items:center;justify-content:center;height:min(60dvh,660px);min-height:150px;overflow:hidden;background:radial-gradient(ellipse at center,#233a4c,#0a1724);touch-action:pan-y}#gallery-dialog .gallery-image{max-height:100%;max-width:100%;width:auto;height:auto;object-fit:contain;user-select:none;-webkit-user-drag:none;transform-origin:center;will-change:transform;transition:opacity .15s}#gallery-dialog[data-kind=reference] .gallery-stage{background:linear-gradient(135deg,#fff,#f3f7f9);height:min(45dvh,420px)}#gallery-dialog[data-kind=reference] .gallery-image{max-width:min(70%,560px);max-height:70%;mix-blend-mode:multiply}#gallery-dialog .gallery-stage.is-zoomed{cursor:grab;touch-action:none}#gallery-dialog .gallery-stage.is-zoomed:active{cursor:grabbing}#gallery-dialog .gallery-previous,#gallery-dialog .gallery-next{position:absolute;top:50%;translate:0 -50%;z-index:2;background:#0c2639d9;backdrop-filter:blur(8px);border-color:#d5e9f04d;border-radius:50%;width:46px;height:46px}#gallery-dialog .gallery-previous{left:18px}#gallery-dialog .gallery-next{right:18px}#gallery-dialog .gallery-loading{position:absolute;font:12px Consolas,monospace;padding:13px 20px;border:1px solid #aac9dc33;border-radius:8px;background:#0c2639;color:#d4ecf8;pointer-events:none}#gallery-dialog .gallery-thumbnails{display:flex;gap:9px;overflow-x:auto;padding:14px 23px;border-top:1px solid #bed8e51c;scrollbar-width:thin;scrollbar-color:#36596c #0e2231}#gallery-dialog .gallery-thumbnail{flex-shrink:0;width:63px;height:48px;min-height:48px;padding:5px;background:#f5f8fa;border:2px solid transparent;border-radius:6px;opacity:.55}#gallery-dialog .gallery-thumbnail[aria-current=true]{border-color:var(--accent-light);opacity:1;box-shadow:0 0 0 2px var(--accent-glow)}#gallery-dialog .gallery-thumbnail img{width:100%;height:100%;object-fit:contain}#gallery-dialog .gallery-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:13px 25px;border-top:1px solid #bed8e51c;color:#8faebf;font-size:10px}#gallery-dialog .gallery-original{color:var(--accent-light);text-decoration:underline;text-underline-offset:4px}#gallery-dialog :focus-visible{outline-offset:-3px}
@media(max-width:760px){#gallery-dialog{padding:65px 12px}#gallery-dialog .gallery-panel{border-radius:12px}#gallery-dialog .gallery-header{padding:16px;gap:12px;align-items:flex-start}#gallery-dialog .gallery-caption{font-size:15px;white-space:normal;max-height:57px;overflow:hidden;line-height:1.3}#gallery-dialog .gallery-eyebrow{font-size:8px;margin-bottom:7px}#gallery-dialog .gallery-counter{display:none}#gallery-dialog .gallery-tools{gap:7px}#gallery-dialog .gallery-tools button{min-width:44px;min-height:44px}#gallery-dialog .gallery-stage{height:48dvh;min-height:140px}#gallery-dialog[data-kind=reference] .gallery-stage{height:34dvh}#gallery-dialog[data-kind=reference] .gallery-image{max-width:78%;max-height:65%}#gallery-dialog .gallery-previous,#gallery-dialog .gallery-next{width:36px;height:44px;min-width:36px;background:#0c2639b8;border-radius:8px}#gallery-dialog .gallery-previous{left:6px}#gallery-dialog .gallery-next{right:6px}#gallery-dialog .gallery-thumbnails{padding:12px 16px;gap:8px}#gallery-dialog .gallery-thumbnail{width:54px;height:44px;min-height:44px}#gallery-dialog .gallery-footer{padding:12px 16px;gap:10px;font-size:9px;align-items:flex-start}#gallery-dialog .gallery-hint{max-width:55%;line-height:1.6}#gallery-dialog .gallery-original{line-height:1.6}}
@media(prefers-reduced-motion:reduce){#gallery-dialog *,#gallery-dialog *::before{transition:none!important}}html[data-motion=off] #gallery-dialog *{transition:none!important}
#gallery-dialog .gallery-stage{height:min(60dvh,calc(100dvh - 300px),660px)}
@media(max-width:760px){#gallery-dialog .gallery-stage{height:min(48dvh,calc(100dvh - 340px))}#gallery-dialog .gallery-previous,#gallery-dialog .gallery-next{width:44px;min-width:44px}}
@media(max-height:600px){#gallery-dialog{padding:16px}#gallery-dialog .gallery-header{padding:12px 18px}#gallery-dialog .gallery-stage,#gallery-dialog[data-kind=reference] .gallery-stage{height:min(45dvh,calc(100dvh - 230px));min-height:90px}#gallery-dialog .gallery-thumbnails{padding:8px 16px}#gallery-dialog .gallery-footer{padding:10px 18px}}
