.photo-dialog{width:min(calc(100% - 24px),850px);max-height:calc(100dvh - 24px)}
.photo-form{gap:16px}.photo-person{display:block;margin-top:9px;color:var(--navy);font-size:1.05rem;overflow-wrap:anywhere}
.photo-form p{line-height:1.5}.photo-profile{padding:9px 12px;border-radius:10px;background:#edf3f8;font-size:.8rem;font-weight:800;color:#38536f!important}
.photo-saved-row{display:flex;gap:16px;align-items:center}.photo-saved-row p{margin:0;font-size:.88rem}.photo-saved-row figure{margin:0;flex:0 0 72px;text-align:center}.photo-saved-row img{display:block;width:72px;height:auto;max-height:120px;object-fit:contain;border-radius:4px;border:1px solid var(--line)}.photo-saved-row figcaption{font-size:.65rem;margin-top:4px;color:var(--muted)}
.photo-source-actions{display:flex;flex-wrap:wrap;gap:8px}.photo-source-actions button{flex:1 1 auto}.photo-form button{min-height:44px}.photo-form .dialog-close{flex:0 0 44px}
.photo-camera-area{padding:12px;background:#edf3f8;border-radius:16px}.photo-camera-viewport{position:relative;overflow:hidden;isolation:isolate;width:min(100%,480px);height:430px;margin:auto;background:#122132;border-radius:9px}
.photo-camera-viewport video{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.photo-camera-guide{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:70%;height:88%;outline:2px solid white;box-shadow:0 0 0 100vmax rgba(0,0,0,.52);pointer-events:none;box-sizing:border-box}
.photo-head-line{position:absolute;left:6%;right:6%;display:block;border-top:1px dashed rgba(255,255,255,.9);color:white;text-shadow:0 1px 3px black;font-size:.65rem;text-align:right;line-height:1.8}
.photo-head-top{top:9%}.photo-head-chin{top:84%}.photo-neck-guide{position:absolute;bottom:2%;width:100%;color:white;text-align:center;font-size:.6rem;text-shadow:0 1px 3px black}.photo-camera-help{font-size:.79rem;color:#38536f;margin:10px 0}
.photo-edit-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.photo-form h3{margin:0;color:var(--navy);font-size:1.05rem}.photo-edit-heading button{font-size:.8rem;padding:8px 12px}
.photo-edit-grid{display:grid;grid-template-columns:minmax(160px,280px) minmax(200px,1fr);gap:24px;margin-top:12px;align-items:start}.photo-crop-viewport{position:relative;width:100%;overflow:hidden;background:#f3f4f5;touch-action:none;cursor:grab;border:1px solid #8ba2b9;box-shadow:0 4px 14px #17375e1a}.photo-crop-viewport:active{cursor:grabbing}.photo-crop-viewport canvas{display:block;width:100%;height:100%;object-fit:fill}.photo-crop-guide{position:absolute;inset:0;pointer-events:none}.photo-crop-guide .photo-head-line{border-top-color:#f2c75d;filter:drop-shadow(0 1px 1px #222)}.photo-edit-grid small{display:block;margin-top:8px;color:var(--muted);font-size:.72rem}
.photo-adjustments{display:grid;gap:13px}.photo-adjustments label>span{display:flex;justify-content:space-between;gap:10px}.photo-adjustments input[type=range]{padding:0;min-height:32px;accent-color:var(--navy);box-shadow:none}.photo-adjustments p{margin:0;color:var(--muted);font-size:.79rem}.photo-adjustments button{font-size:.8rem;padding:9px 11px}
.photo-ready{display:flex;align-items:center;gap:20px;padding:16px;border:1px solid #a2cdb5;border-radius:14px;background:#f0faf4}.photo-ready img{display:block;flex:0 0 auto;width:120px;height:auto;max-height:200px;object-fit:contain;border:1px solid #bfd5c8}.photo-ready p{font-size:.83rem;margin:7px 0 0;color:#325c45}.photo-conflict{border:1px solid #dbb050;background:#fff8e5;border-radius:12px;padding:14px}.photo-conflict p{margin:0 0 10px}.photo-message{margin:0!important;color:#304e6b!important;font-size:.86rem;font-weight:700}.photo-message:empty{display:none}.photo-message.error{color:var(--red)!important}
.photo-final-actions{position:sticky;bottom:-23px;z-index:2;margin:0 -23px -23px;padding:14px 23px max(16px,env(safe-area-inset-bottom));background:white;border-top:1px solid var(--line);box-shadow:0 -5px 18px #17375e0a}
.row-actions .photo-action,.search-card-actions .photo-action{border-color:#91adca;color:#194c7d;background:#eef5fc}.photo-availability{display:block;margin-top:5px;font-size:.71rem;font-weight:800;color:#637286}.photo-availability.available{color:#107a55}.new-photo-hint{display:block;margin-top:7px;max-width:230px;color:#4c6259;font-size:.7rem;line-height:1.35}
@media(max-width:600px){.photo-edit-grid{grid-template-columns:1fr;gap:16px}.photo-edit-grid>div:first-child{width:min(100%,255px);margin:auto}.photo-camera-viewport{height:380px}.photo-edit-heading{align-items:flex-start}.photo-ready{gap:12px;padding:12px}.photo-ready img{width:92px}.photo-final-actions{bottom:-19px;margin:0 -16px -19px;padding:12px 16px max(16px,env(safe-area-inset-bottom));grid-template-columns:1fr 1fr}.photo-source-actions button{font-size:.84rem}.photo-form>p{font-size:.85rem}.photo-form h2{font-size:1.4rem}}
@media(max-width:380px){.photo-camera-viewport{height:320px}.photo-ready{align-items:flex-start}.photo-ready img{width:76px}}

/* MORLINO PHOTO USABILITY R140 */
.photo-adjustments-toggle{width:100%;min-height:46px;font-weight:800;border:1px solid #91adca}
.photo-adjustments-help{padding:9px 11px;background:#edf3f8;border-radius:9px}
.photo-adjustments input[type=range]{touch-action:pan-y;min-height:40px}
.photo-adjustments input[type=range]:disabled{opacity:.52;cursor:default}
.photo-crop-viewport{touch-action:pan-y;cursor:auto}
.photo-form{scroll-padding-block:16px 100px}
.photo-final-actions{isolation:isolate}
