.chat-photo-dialog{width:min(94vw,430px);max-height:90dvh;overflow:auto;border:0;border-radius:16px;padding:0;background:#fff;color:#152625;box-shadow:0 24px 70px #0006}
.chat-photo-dialog::backdrop{background:#061d1bc9}
.chat-photo-editor{padding:20px;display:grid;gap:12px;font:16px/1.4 Inter,system-ui,sans-serif}
.chat-photo-editor h2{font-size:1.2rem;margin:0}.chat-photo-editor p{margin:0;color:#526665;font-size:.88rem}
.chat-crop-frame{width:min(100%,320px);aspect-ratio:1;margin:auto;position:relative;border-radius:12px;overflow:hidden;background:#dce9e8}
.chat-crop-frame canvas{width:100%;height:100%;display:block;touch-action:none;cursor:grab}.chat-crop-frame canvas:active{cursor:grabbing}
.chat-crop-frame span{position:absolute;inset:0;border:2px solid #fff8;border-radius:50%;box-shadow:0 0 0 60px #0003 inset;pointer-events:none}
.chat-zoom-label{display:grid;gap:4px;font-weight:800;color:#315955}.chat-zoom-label input{width:100%;accent-color:#257f79;min-height:32px}
.chat-edit-row,.chat-edit-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.chat-edit-row button,.chat-edit-actions button{min-height:44px;padding:8px 12px;border-radius:9px;border:1px solid #79aca6;background:white;color:#165f59;font-weight:800;cursor:pointer}
.chat-edit-row label{display:flex;align-items:center;gap:7px;font-weight:800}.chat-edit-row select{min-height:44px;max-width:160px;border:1px solid #79aca6;border-radius:9px;background:white;color:#153f3a;padding:7px}
.chat-edit-actions{justify-content:flex-end}.chat-edit-actions [data-action=save]{background:#50beb4;border-color:#50beb4;color:#061819}.chat-edit-actions button:disabled{opacity:.5}
.chat-photo-editor .chat-edit-error{color:#a23333;min-height:1.2em}
@media(max-width:400px){.chat-photo-editor{padding:14px}.chat-edit-row label{width:100%;justify-content:space-between}.chat-edit-row select{flex:1;max-width:none}}
