/* Shared client proofing interactions: real selection and safe demo. */
.photo-note-trigger{position:absolute;left:9px;bottom:9px;z-index:8;display:grid;place-items:center;width:37px;height:37px;border:1px solid rgba(255,255,255,.65);border-radius:50%;background:rgba(18,35,30,.74);color:#fff;box-shadow:0 2px 12px rgba(0,0,0,.24);cursor:pointer}
.photo-note-trigger.has-note{background:var(--theme-accent,#edbc68);border-color:var(--theme-accent,#edbc68);color:var(--theme-text,#162e27)}
.photo-note-trigger svg,.photo-viewer-note-button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.photo-note-trigger:focus-visible,.photo-viewer-note-button:focus-visible{outline:3px solid var(--theme-accent,#edbc68);outline-offset:3px}
.photo-note-trigger:disabled{opacity:.5;cursor:not-allowed}
.photo-note-dialog,.photo-review-dialog{padding:0;border:1px solid var(--theme-border,#dce5df);background:var(--theme-surface,#fff);color:var(--theme-text,#1b322b);border-radius:21px;box-shadow:0 25px 75px rgba(0,0,0,.28)}
.photo-note-dialog::backdrop,.photo-review-dialog::backdrop{background:rgba(7,24,21,.7);backdrop-filter:blur(3px)}
.photo-note-dialog{width:min(450px,calc(100vw - 28px));max-height:90dvh;overflow-y:auto}
.photo-note-shell{display:grid;gap:15px;padding:22px}
.photo-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.photo-panel-header h2{margin:0;font-size:1.24rem;line-height:1.22}
.photo-panel-header p{margin:6px 0 0;font-size:.86rem;color:var(--theme-muted,#66766e)}
.photo-panel-close{display:grid;place-items:center;flex:0 0 auto;width:36px;height:36px;border:1px solid var(--theme-border,#dde2dd);border-radius:50%;color:inherit;background:transparent;cursor:pointer}
.photo-panel-close svg,.photo-panel-close .gallery-ui-icon{display:block;width:18px;height:18px;stroke:currentColor;stroke-width:1.9;fill:none;stroke-linecap:round;stroke-linejoin:round}
.photo-note-preview{display:flex;align-items:center;gap:13px;min-width:0}
.photo-note-preview img{width:82px;height:76px;object-fit:cover;border-radius:12px}
.photo-note-shell label{display:grid;gap:7px;font-weight:700;font-size:.88rem}
.photo-note-shell textarea{width:100%;min-height:120px;box-sizing:border-box;padding:12px;border:1px solid var(--theme-border,#d8e1dc);border-radius:12px;background:var(--theme-surface,#fff);color:inherit;font:inherit;font-weight:400;resize:vertical}
.photo-note-shell textarea:focus-visible{outline:2px solid var(--theme-primary,#236553);outline-offset:1px}
.photo-note-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.photo-note-footer .photo-note-remove{margin-right:auto}
.photo-note-error{margin:0;color:#b42318;font-size:.82rem}
.photo-review-dialog{width:min(820px,calc(100vw - 24px));max-height:min(90dvh,920px);height:min(88dvh,780px);overflow:hidden}
.photo-review-shell{display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:100%;min-height:0}
.photo-review-header{padding:21px 24px 16px;border-bottom:1px solid var(--theme-border,#dde5de)}
.photo-review-count{display:inline-flex;margin-top:12px;padding:6px 12px;border-radius:999px;background:color-mix(in srgb,var(--theme-primary,#236553) 13%,white);color:var(--theme-primary,#236553);font-size:.82rem;font-weight:800}
.photo-review-list{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:15px 24px}
.photo-review-item{display:grid;grid-template-columns:110px minmax(0,1fr);align-items:start;gap:13px;padding:12px 0;border-bottom:1px solid var(--theme-border,#e3e9e4)}
.photo-review-item:last-child{border-bottom:0}
.photo-review-item>img,.photo-review-item>video{width:110px;height:100px;border-radius:10px;object-fit:cover;background:#111}
.photo-review-editor{display:grid;gap:4px;min-width:0}
.photo-review-editor textarea{box-sizing:border-box;width:100%;min-height:85px;padding:11px;border:1px solid var(--theme-border,#d7e0da);border-radius:11px;background:var(--theme-control-background,var(--theme-surface,#fff));color:var(--theme-control-text,var(--theme-text,#173229));font:inherit;font-size:.86rem;line-height:1.4;resize:vertical}
.photo-review-editor textarea:focus-visible{outline:2px solid var(--theme-primary,#236553);outline-offset:1px}
.photo-review-save-state{min-height:1.15em;color:var(--theme-muted,#66766e);font-size:.7rem}
.photo-review-save-state.is-error,.photo-review-error{color:#ad2c2c}
.photo-review-error{margin:9px 0 0;font-size:.8rem}
.photo-review-readonly{padding:12px 0;font-size:.85rem;color:var(--theme-muted,#66766e);white-space:pre-wrap;overflow-wrap:anywhere}
.image-viewer-actions .photo-viewer-note-button{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:9px;border:1px solid #ffffff25;border-radius:50%;color:#fff;background:#ffffff12;cursor:pointer;touch-action:manipulation}
.image-viewer-actions .photo-viewer-note-button[hidden]{display:none!important}
.image-viewer-actions .photo-viewer-note-button.has-note{background:var(--theme-accent,#edbc68);border-color:var(--theme-accent,#edbc68);color:var(--theme-text,#162e27)}
.image-viewer-actions .photo-viewer-note-button:hover{border-color:var(--theme-accent,#edbc68)}
.image-viewer-actions .photo-viewer-note-button:focus-visible{outline:2px solid #fff;outline-offset:3px}
.photo-review-footer{display:grid;gap:12px;padding:17px 24px max(18px,env(safe-area-inset-bottom));border-top:1px solid var(--theme-border,#dde5de);background:var(--theme-surface,#fff);box-shadow:0 -8px 20px rgba(0,0,0,.05)}
.photo-review-footer .checkbox-card{margin:0}
.photo-review-footer>.button{width:100%;justify-content:center}
.photo-review-footer .photo-review-message{margin:0;color:#a63b1e;font-size:.83rem}
@media(max-width:600px){.photo-review-dialog{height:calc(100dvh - 16px);max-height:calc(100dvh - 16px);width:calc(100vw - 12px);border-radius:18px}.photo-review-header{padding:16px}.photo-review-list{padding:7px 16px}.photo-review-footer{padding:13px 16px max(14px,env(safe-area-inset-bottom))}.photo-review-item{grid-template-columns:75px minmax(0,1fr);gap:10px}.photo-review-item>img{width:75px;height:85px}.photo-review-editor textarea{min-height:82px;padding:9px;font-size:.81rem}.photo-note-shell{padding:17px}}


/* Confirmed client photo notes are readable but never editable. */
.photo-note-readonly-dialog .confirmed-photo-note-text{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.55;padding:14px;border:1px solid var(--theme-border,#dce5df);border-radius:12px;background:color-mix(in srgb,var(--theme-primary,#236553) 5%,var(--theme-surface,#fff))}
.photo-note-trigger.is-readonly{cursor:pointer}

/* Photographer selection work queue: photo-led cards, responsive without changing gallery filters. */
.owner-proof-notes{min-width:0}
.owner-proof-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}
.owner-proof-summary span{display:grid;gap:5px;padding:14px;border:1px solid var(--line,#dce5df);border-radius:13px;font-size:.77rem;color:var(--muted,#65776d);background:#f6faf8}
.owner-proof-summary strong{font-size:1.6rem;color:var(--brand-dark,#194c3f);line-height:1}
.owner-proof-controls{display:flex;gap:12px;align-items:center;justify-content:space-between;margin:16px 0;flex-wrap:wrap}
.owner-proof-filters{display:flex;gap:6px;flex-wrap:wrap}
.owner-proof-filters button{padding:8px 11px;border:1px solid var(--line,#dae3dc);border-radius:9px;color:var(--brand-dark,#194c3f);background:#fff;font:inherit;font-size:.82rem;font-weight:700;cursor:pointer}
.owner-proof-filters button[aria-pressed="true"]{background:var(--brand,#216e56);color:#fff;border-color:var(--brand,#216e56)}
.owner-proof-search{flex:1 1 220px;max-width:340px}
.owner-proof-search input{width:100%;padding:10px 12px;border:1px solid var(--line,#dae3dc);border-radius:10px;font:inherit}
.owner-proof-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,235px),1fr));align-items:stretch;gap:14px;min-width:0}
.owner-proof-item{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid var(--line,#dce5df);border-radius:15px;background:#fff;transition:background .15s,border-color .15s}
.owner-proof-item[hidden]{display:none!important}
.owner-proof-media{position:relative;overflow:hidden;aspect-ratio:4/3;background:#edf1ee}
.owner-proof-media>img{display:block;width:100%;height:100%;object-fit:cover;transition:opacity .2s,filter .2s}
.owner-proof-state{position:absolute;top:10px;left:10px;max-width:calc(100% - 20px);padding:5px 9px;border-radius:999px;color:#fff;background:#15745a;font-size:.71rem;font-weight:800;box-shadow:0 2px 7px #0003}
.owner-proof-item[data-selected="0"] .owner-proof-state{background:#996016}
.owner-proof-complete-mark{position:absolute;right:10px;top:10px;padding:5px 8px;border-radius:999px;background:#203a31dd;color:#fff;font-size:.72rem;font-weight:800}
.owner-proof-item[data-done="1"]{background:#f3f6f3;border-color:#d9e3dc}
.owner-proof-item[data-done="1"] .owner-proof-media>img{opacity:.5;filter:saturate(.55)}
.owner-proof-item[data-done="1"] .owner-proof-details{opacity:.74}
.owner-proof-details{display:grid;align-content:start;gap:7px;flex:1;padding:13px 13px 10px;min-width:0}
.owner-proof-details strong{font-size:.83rem;line-height:1.4;overflow-wrap:anywhere}
.owner-proof-details p{margin:0;font-size:.83rem;line-height:1.48;overflow-wrap:anywhere}
.owner-proof-caption{color:var(--muted,#65776d)}
.owner-proof-note{white-space:pre-wrap}
.owner-proof-empty-note{color:var(--muted,#65776d);font-style:italic}
.owner-proof-done{display:flex;align-items:center;justify-content:center;gap:7px;min-height:43px;margin:0 13px 13px;padding:10px 13px;border:1px solid var(--brand,#216e56);border-radius:10px;background:#fff;color:var(--brand,#216e56);font:inherit;font-size:.82rem;font-weight:800;cursor:pointer}
.owner-proof-done:hover,.owner-proof-done:focus-visible{background:#e9f4ee}
.owner-proof-done[aria-pressed="true"]{background:var(--brand,#216e56);color:#fff;border-color:var(--brand,#216e56)}
.owner-proof-done:disabled{opacity:.65;cursor:wait}
.owner-proof-filter-empty{margin:18px 0 0;color:var(--muted,#65776d)}
@media(max-width:650px){.gallery-workflow-nav:has([data-workflow-tab="selections"]){overflow-x:auto!important;overscroll-behavior-x:contain;justify-content:flex-start}.gallery-workflow-nav:has([data-workflow-tab="selections"]) button{flex:0 0 auto!important;padding-inline:10px!important}}
@media(max-width:560px){.owner-proof-summary{gap:6px}.owner-proof-summary span{padding:10px;font-size:.68rem}.owner-proof-summary strong{font-size:1.3rem}.owner-proof-search{max-width:none}.owner-proof-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,165px),1fr));gap:9px}.owner-proof-details{padding:10px 10px 8px}.owner-proof-done{margin:0 10px 10px;min-height:40px;padding:7px}.owner-proof-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}}
@media(max-width:370px){.owner-proof-list{grid-template-columns:1fr}}
.photo-note-footer .photo-note-remove[hidden]{display:none}
