.photo-comment-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:60px;min-height:40px;padding:9px 12px;border:1px solid #bbd2de;border-radius:24px;background:#edf5fa;color:#285e79;font:inherit;font-size:12px;line-height:1;cursor:pointer;transition:background .18s,border-color .18s}
.photo-comment-button svg{display:block;width:19px;height:19px;flex:0 0 19px}.photo-comment-count{min-width:1ch;font-variant-numeric:tabular-nums}
.photo-comment-button:hover:not(:disabled){background:#d9edf7;border-color:#78a9c1}.photo-comment-button:focus-visible{outline:2px solid #4183a2;outline-offset:3px}.photo-comment-button[aria-expanded=true]{background:#285f79;border-color:#285f79;color:#fff}.photo-comment-button.is-loading{opacity:.75}.photo-comment-button.has-error{border-style:dashed}
.photo-comment-lightbox{background:#243a46;border-color:#577888;color:#dcecf4}.photo-comment-lightbox:hover:not(:disabled){background:#2d4a59}.photo-comment-hero{flex-shrink:0}.photo-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:10px}.photo-actions .photo-like-card{margin-top:0}
.about-image>.photo-comment-about{position:absolute;top:14px;left:14px;margin:0;z-index:2}
.photo-comments-panel[hidden]{display:none!important}.photo-comments-panel{min-width:0;min-height:0;max-height:100%;overflow-y:auto;overscroll-behavior:contain;padding:0 0 24px 24px;border-left:1px solid #3c4a50;color:#e6edf0;font-family:var(--sans);font-size:12px;line-height:1.65;scrollbar-width:thin;scrollbar-color:#5c7888 #202c31}
.lightbox-shell.comments-open{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,370px);grid-template-rows:74px minmax(0,1fr) auto;column-gap:25px;overflow:hidden}.comments-open>.lightbox-header{grid-column:1/-1;grid-row:1}.comments-open>.lightbox-stage{grid-column:1;grid-row:2;min-width:0}.comments-open>.lightbox-footer{grid-column:1;grid-row:3;min-width:0;flex-wrap:wrap;padding:16px 0;gap:13px}.comments-open>.photo-comments-panel{grid-column:2;grid-row:2/4}.comments-open .lightbox-bottom-right{min-width:0;max-width:100%;flex-wrap:wrap;justify-content:flex-end;gap:12px;white-space:normal}.comments-open .lightbox-footer>div:first-child{max-width:100%;min-width:0}
.photo-comments-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.photo-comments-heading h2{font-family:var(--serif);font-weight:400;font-size:29px;letter-spacing:-.5px;line-height:1.2}.photo-comments-heading h2:focus{outline:none}.photo-comments-close{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;padding:0;border:1px solid #4d6572;border-radius:50%;background:transparent;color:#dcecf4;font-size:24px;line-height:1}
.photo-comments-photo{margin:7px 0 0;color:#a9c3d1;font-size:11px;overflow-wrap:anywhere}.photo-comments-hint{margin:17px 0;color:#b9c6ce;font-size:11px;line-height:1.7}.photo-comments-form{display:flex;flex-direction:column;gap:7px;margin:0 0 12px}.photo-comments-form label{font-size:11px;color:#d6e7ef}.photo-comments-form input,.photo-comments-form textarea{display:block;width:100%;min-width:0;max-width:100%;padding:10px 11px;border:1px solid #4a6473;border-radius:5px;background:#202d34;color:#f2f6f8;font:inherit;font-size:13px;line-height:1.5;outline-offset:3px}.photo-comments-form textarea{resize:vertical;min-height:86px;max-height:240px}.photo-comments-form input:disabled,.photo-comments-form textarea:disabled{opacity:.65}.photo-comments-form [aria-invalid=true]{border-color:#e8ad8e}.photo-comments-form input:focus-visible,.photo-comments-form textarea:focus-visible{outline:2px solid #80b8d3}.photo-comments-form label:not(:first-child){margin-top:6px}.photo-comments-form-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:3px}.photo-comments-character-count{font-size:10px;color:#9fb6c3;font-variant-numeric:tabular-nums}
.photo-comments-submit,.photo-comments-more{padding:10px 14px;border:1px solid #8eb6cb;border-radius:5px;background:#cce5f1;color:#1b4358;font:inherit;font-size:11px;line-height:1.4}.photo-comments-submit:disabled,.photo-comments-more:disabled{opacity:.55}.photo-comments-submit:hover:not(:disabled),.photo-comments-more:hover:not(:disabled){background:#e0f1f9}.photo-comments-live{min-height:18px;margin:0 0 9px;color:#bce0c8;font-size:11px;overflow-wrap:anywhere}.photo-comments-live.is-error{color:#f0bfa7}.photo-comments-load-status,.photo-comments-empty{margin:14px 0;color:#b9cbd5;font-size:12px}.photo-comments-list{display:flex;flex-direction:column;min-width:0}.photo-comment-item{padding:17px 0;border-top:1px solid #384a53;min-width:0}.photo-comment-meta{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:3px 12px}.photo-comment-name{margin:0;color:#e2edf3;font-size:12px;font-weight:600;line-height:1.5;overflow-wrap:anywhere;max-width:100%}.photo-comment-date{font-size:9px;color:#9db0ba}.photo-comment-message{margin:8px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal;color:#d3e0e7;font-size:12px;line-height:1.75}.photo-comment-delete,.photo-comment-cancel,.photo-comments-retry{padding:7px 0;border:0;background:none;color:#b6d7e9;font:inherit;font-size:10px;line-height:1.5;text-decoration:underline;text-underline-offset:3px}.photo-comment-confirm{display:flex;flex-wrap:wrap;align-items:center;gap:8px 15px;margin-top:12px;padding:12px;border:1px solid #725a4b;border-radius:5px;background:#322c28}.photo-comment-confirm p{flex-basis:100%;margin:0;color:#edcbb7;font-size:11px}.photo-comment-confirm-delete{padding:8px 11px;border:1px solid #b58b71;border-radius:4px;background:#5a4032;color:#fff2e9;font:inherit;font-size:10px}.photo-comment-confirm button:disabled{opacity:.55}.photo-comments-more{display:block;margin:15px 0 0;width:100%}.photo-comments-panel button:focus-visible{outline:2px solid #8dc5e2;outline-offset:3px}
@media(max-width:850px){.lightbox-shell.comments-open{display:flex;flex-direction:column;overflow-x:hidden;overflow-y:auto;gap:0;padding-inline:4%;height:100%;overscroll-behavior:contain}.comments-open>.lightbox-header{position:sticky;top:0;z-index:5;height:65px;min-height:65px;background:#151713}.comments-open>.lightbox-stage{flex:0 0 auto;height:clamp(260px,55dvh,480px);min-height:260px;width:100%;gap:12px}.comments-open>.lightbox-stage>img{width:calc(100% - 100px);height:100%;object-fit:contain}.comments-open>.lightbox-footer{flex:0 0 auto;min-height:100px;width:100%;padding:17px 0;gap:13px}.comments-open>.photo-comments-panel{flex:0 0 auto;max-height:none;overflow:visible;width:100%;padding:24px 0 32px;border-left:0;border-top:1px solid #3c4a50}.comments-open .lightbox-bottom-right{flex-direction:row;align-items:center;justify-content:flex-start;gap:12px}.photo-comments-form textarea{max-height:200px}}
@media(max-width:680px){.photo-comment-button{min-height:38px;min-width:55px;padding:8px 10px;font-size:11px}.photo-comment-button svg{width:18px;height:18px;flex-basis:18px}.photo-actions{gap:7px;margin-top:8px}.comments-open>.lightbox-stage{height:clamp(260px,52dvh,430px);min-height:260px;gap:0}.comments-open>.lightbox-stage>img{width:100%}.comments-open .lightbox-stage .icon-button{position:absolute;bottom:10px}.comments-open .lightbox-footer>div:first-child{max-width:100%;flex-basis:100%}.comments-open .lightbox-footer h2{font-size:21px}.photo-comments-heading h2{font-size:28px}.photo-comments-form input,.photo-comments-form textarea{font-size:16px}.photo-comments-submit{font-size:12px;min-height:40px}}
@media(prefers-reduced-motion:reduce){.photo-comment-button{transition:none}}

/* Keep each gallery comment control at the right edge of its photograph. */
.gallery .photo-actions{justify-content:space-between;direction:ltr}
