/* Scoped to the photo manager; other workspace dialogs retain their styles. */
.pv2 dialog.pv2-photo-dialog,dialog.pv2-photo-dialog{--photo-accent:#d41565;box-sizing:border-box;width:min(720px,calc(100vw - 32px));max-width:720px;max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid #e2e5eb;border-radius:14px;background:#fff;color:#283140;box-shadow:0 20px 70px #34233338;overflow:auto;font-family:Tahoma,'Leelawadee UI',sans-serif}
dialog.pv2-photo-dialog::backdrop{background:#22263266;backdrop-filter:blur(2px)}
.pv2-photo-dialog *{box-sizing:border-box}
.pv2 .pv2-photo-dialog .photo-head,.pv2-photo-dialog .photo-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 22px 10px;margin:0;border:0;background:#fff}
.pv2 .pv2-photo-dialog h2,.pv2-photo-dialog h2{margin:0;color:#253043;font-size:21px;font-weight:700;line-height:1.4}
.pv2-photo-dialog .photo-head p{margin:5px 0 0;color:#667085;font-size:13px;line-height:1.6}
.pv2 .pv2-photo-dialog button,.pv2-photo-dialog button{min-height:36px;border:1px solid #f1a0bf;border-radius:7px;background:#fff;color:var(--photo-accent);padding:7px 13px;font:inherit;font-size:13px;line-height:1.35;cursor:pointer;box-shadow:none}
.pv2 .pv2-photo-dialog button:hover,.pv2-photo-dialog button:hover{background:#fff1f6}
.pv2 .pv2-photo-dialog button:disabled,.pv2-photo-dialog button:disabled{opacity:.5;cursor:default}
.pv2-photo-dialog button:focus-visible,.pv2-photo-dialog input:focus-visible{outline:3px solid #f7a3c6;outline-offset:3px}
.pv2 .pv2-photo-dialog .photo-close,.pv2-photo-dialog .photo-close{flex:none;width:28px;min-height:28px;padding:0;border:0;background:transparent;color:#667085;font-size:25px}
.pv2-photo-dialog .photo-body{padding:0 22px 12px}
.pv2-photo-dialog .photo-tools{display:flex;justify-content:flex-end;gap:8px;margin:0 0 12px}
.pv2 .pv2-photo-dialog .photo-drop,.pv2-photo-dialog .photo-drop{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:76px;margin-bottom:12px;padding:14px;border:1px dashed #cdd5df;border-radius:8px;background:#f8fafc;color:#344054;text-align:left}
.pv2-photo-dialog .photo-drop>span:first-child{font-size:27px;color:#7a8798}
.pv2-photo-dialog .photo-drop b{display:block;font-size:14px;font-weight:600}
.pv2-photo-dialog .photo-drop small{display:block;margin-top:4px;color:#8590a1;font-size:11px;font-weight:400}
.pv2 .pv2-photo-dialog .photo-drop.dragging,.pv2-photo-dialog .photo-drop.dragging{border-color:var(--photo-accent);background:#fff1f6}
.pv2-photo-dialog .photo-permission:empty{display:none}
.pv2-photo-dialog .photo-permission{display:block;margin:8px 0;font-size:12px;color:#667085}
.pv2-photo-dialog .photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.pv2 .pv2-photo-dialog .photo-card,.pv2-photo-dialog .photo-card{margin:0;padding:5px;border:1px solid #e4e7ec;border-radius:9px;background:#fff;min-width:0;overflow:hidden}
.pv2-photo-dialog .photo-card.primary{border-color:#ec9cbc}
.pv2-photo-dialog .photo-image{position:relative;display:block;height:120px;overflow:hidden;border-radius:5px;background:#f2f4f7}
.pv2-photo-dialog .photo-image img{display:block;width:100%;height:100%;object-fit:contain;border:0;border-radius:0}
.pv2-photo-dialog .photo-primary-badge{position:absolute;top:6px;left:6px;padding:4px 8px;border-radius:5px;background:var(--photo-accent);color:#fff;font-size:10px;font-weight:600}
.pv2 .pv2-photo-dialog .photo-remove,.pv2-photo-dialog .photo-remove{position:absolute;top:5px;right:5px;width:26px;height:26px;min-height:26px;padding:0;background:#fffffff2;border:1px solid #dde2e8;border-radius:6px;color:#667085;font-size:21px;line-height:1}
.pv2-photo-dialog .photo-card figcaption{display:block;padding:6px 3px 2px;font-size:11px;color:#475467}
.pv2-photo-dialog .photo-filename{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:#8590a1;margin-bottom:4px}
.pv2 .pv2-photo-dialog .photo-primary-choice,.pv2-photo-dialog .photo-primary-choice{display:flex;align-items:center;justify-content:center;gap:6px;margin:0;padding:3px 0;font-size:12px;line-height:1.5;color:#475467;cursor:pointer}
.pv2 .pv2-photo-dialog input[type=radio],.pv2-photo-dialog input[type=radio]{appearance:auto;width:15px;height:15px;min-height:0;margin:0;padding:0;accent-color:var(--photo-accent);flex:none}
.pv2 .pv2-photo-dialog .photo-clear,.pv2-photo-dialog .photo-clear{margin-top:8px;border:0;padding:4px 0;min-height:28px;font-size:11px;color:#8590a1}
.pv2-photo-dialog .photo-saved{margin-top:16px}
.pv2 .pv2-photo-dialog .photo-saved h3,.pv2-photo-dialog .photo-saved h3{margin:0 0 9px;color:#667085;font-size:12px;font-weight:500}
.pv2 .pv2-photo-dialog .photo-set-primary,.pv2-photo-dialog .photo-set-primary{display:block;width:100%;border:0;padding:3px 0;font-size:12px;min-height:26px;color:#667085}
.pv2-photo-dialog .photo-primary-current{display:block;text-align:center;line-height:26px;color:var(--photo-accent);font-size:12px}
.pv2-photo-dialog .photo-message{margin:8px 0 0;line-height:1.5;font-size:12px;color:#667085;overflow-wrap:anywhere}
.pv2-photo-dialog .photo-message:empty{display:none}.pv2-photo-dialog .photo-message.error{color:#b42318}
.pv2 .pv2-photo-dialog .photo-footer,.pv2-photo-dialog .photo-footer{position:sticky;bottom:0;display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0;padding:13px 22px;border-top:1px solid #eef0f4;background:#fff}
.pv2-photo-dialog .photo-footer>span{font-size:12px;color:#667085}.pv2-photo-dialog .photo-footer>div{display:flex;gap:8px}
.pv2 .pv2-photo-dialog .photo-save,.pv2-photo-dialog .photo-save{min-width:114px;background:var(--photo-accent);border-color:var(--photo-accent);color:#fff}
.pv2 .pv2-photo-dialog .photo-cancel,.pv2-photo-dialog .photo-cancel{min-width:90px}
.pv2-photo-dialog [hidden]{display:none!important}
@media(max-width:540px){.pv2 dialog.pv2-photo-dialog,dialog.pv2-photo-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.pv2 .pv2-photo-dialog .photo-head,.pv2-photo-dialog .photo-head{padding:16px 14px 10px}.pv2-photo-dialog .photo-body{padding:0 14px 10px}.pv2 .pv2-photo-dialog h2,.pv2-photo-dialog h2{font-size:18px}.pv2-photo-dialog .photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pv2-photo-dialog .photo-image{height:112px}.pv2 .pv2-photo-dialog .photo-footer,.pv2-photo-dialog .photo-footer{padding:12px 14px;flex-wrap:wrap}.pv2-photo-dialog .photo-footer>div{margin-left:auto}.pv2-photo-dialog .photo-tools{justify-content:flex-start}}
.pv2-photo-dialog .photo-tools button{display:inline-flex;align-items:center;gap:6px}.pv2-photo-dialog svg{width:16px;height:16px;flex:none;pointer-events:none}.pv2-photo-dialog .photo-drop>svg{width:25px;height:25px;color:#8793a4}.pv2-photo-dialog .photo-saved summary{margin-bottom:10px;cursor:pointer;font-size:12px;color:#667085}
