#community-dialog.content-viewer,#photo-dialog.content-viewer{width:min(940px,calc(100% - 40px));height:min(88svh,860px);max-width:940px;max-height:88svh;padding:0;margin:auto;overflow:hidden;border:0;border-radius:12px;background:var(--cream);color:var(--green);box-shadow:0 18px 80px #071c1755}
.content-viewer::backdrop{background:#0d241bbb;backdrop-filter:blur(3px)}
.viewer-shell{display:flex;flex-direction:column;height:100%;min-height:0}.viewer-toolbar{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:9px 20px 9px 28px;border-bottom:1px solid var(--line);background:var(--cream)}.viewer-category{font-size:10px;letter-spacing:1.7px;text-transform:uppercase;color:var(--burgundy)}
#community-dialog .viewer-close,#photo-dialog .viewer-close{position:static;float:none;display:grid;place-items:center;width:44px;height:44px;padding:0;flex:0 0 44px;border:0;border-radius:50%;background:transparent;color:var(--green);font:400 25px/1 Arial,sans-serif;cursor:pointer}.content-viewer .viewer-close:hover{background:#e9e5d8!important}
.viewer-body{overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;min-height:0;flex:1;touch-action:pan-y pinch-zoom;scrollbar-gutter:stable}.viewer-panel{min-height:100%}.viewer-media{margin:0;background:#e5e5d9;overflow:hidden}.viewer-media img{display:block;width:100%;user-select:none;-webkit-user-drag:none}.community-media img{height:clamp(220px,30svh,300px);object-fit:cover;object-position:center 65%}.photo-media{background:#193e32}.photo-media img{max-height:52svh;min-height:180px;object-fit:contain}.viewer-copy{padding:28px 36px 34px}.content-viewer .viewer-copy h2{font-size:48px;letter-spacing:-.7px;line-height:1.06;margin:0 0 22px}.content-viewer .viewer-lead{font-size:16px;line-height:1.8;color:var(--green);margin-bottom:22px}.content-viewer .viewer-copy p{font-size:14px;line-height:1.85}.content-viewer #dialog-stories h3{font-size:29px;line-height:1.15;margin:25px 0 12px}.content-viewer .guide-sources{font-size:12px;margin:27px 0 24px;padding:18px 0;border-top:1px solid var(--line)}.content-viewer .guide-sources summary,.content-viewer .photo-info summary{font-size:12px;cursor:pointer;color:var(--burgundy)}.content-viewer .guide-sources p,.content-viewer .photo-info p,.content-viewer .photo-info a{font-size:12px}.content-viewer .photo-info{color:var(--green);margin-top:10px}.content-viewer .photo-info a{color:var(--green)}.content-viewer .photo-info p{margin:13px 0 8px}.content-viewer #photo-title{font-size:36px;margin-bottom:16px}
.viewer-controls{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 22px;border-top:1px solid var(--line);background:var(--cream)}.viewer-controls button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-width:100px;min-height:44px;border:1px solid #b5c0ae;border-radius:4px;padding:9px 14px;background:transparent;color:var(--green);font:500 12px/1.5 'DM Sans',Arial,sans-serif}.viewer-controls button:hover{background:var(--green);border-color:var(--green);color:var(--cream)}.viewer-controls button:disabled{opacity:.55;cursor:default}.viewer-controls button>span:first-child:not(:last-child){line-height:1}.viewer-progress{display:flex;flex-direction:column;align-items:center;gap:2px}.viewer-position{font-size:12px;letter-spacing:1px;font-variant-numeric:tabular-nums}.viewer-hint{font-size:10px;color:var(--muted);display:none}html.viewer-open{overflow:hidden;scrollbar-gutter:stable}
@media(pointer:coarse){.viewer-hint{display:block}}@media(max-width:620px){#community-dialog.content-viewer,#photo-dialog.content-viewer{width:calc(100% - 16px);height:94svh;max-height:94svh;border-radius:10px}.viewer-toolbar{padding:5px 10px 5px 20px}.viewer-category{font-size:9px;letter-spacing:1.4px}.community-media img{height:215px}.photo-media img{max-height:50svh;min-height:160px}.viewer-copy{padding:24px 22px 28px}.content-viewer .viewer-copy h2{font-size:38px;margin-bottom:18px}.content-viewer .viewer-lead{font-size:15px}.content-viewer #dialog-stories h3{font-size:26px}.content-viewer .viewer-copy p{font-size:14px}.content-viewer #photo-title{font-size:32px}.viewer-controls{padding:10px 14px;gap:10px}.viewer-controls button{min-width:88px;padding:9px 10px;gap:8px}.viewer-position{font-size:11px}.viewer-hint{display:block;font-size:9px}.content-viewer .button{font-size:12px}}
@media(prefers-reduced-motion:reduce){.content-viewer::backdrop{backdrop-filter:none}}

@media(prefers-reduced-motion:no-preference){.content-viewer[open] .viewer-shell{animation:viewer-arrive .18s ease-out}}@keyframes viewer-arrive{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
