/* Consistent geometry across inline editing and the administrative dialogs. */
.p27-gallery-admin-actions .p27-room-edit-open{margin:0}
:is(.p27-choice-editor,.p27-room-editor,.p27-photo-editor,.p27-editor-dialog){box-sizing:border-box;max-height:calc(100dvh - 32px);overflow:hidden}
:is(.p27-choice-editor,.p27-room-editor,.p27-photo-editor,.p27-editor-dialog)[open]{display:flex;flex-direction:column}
:is(.p27-choice-head,.p27-room-edit-head,.p27-photo-editor-head,.p27-editor-head){flex-shrink:0;gap:12px;align-items:center}
:is(.p27-choice-head,.p27-room-edit-head,.p27-photo-editor-head,.p27-editor-head) :is(h2,h3){min-width:0;overflow-wrap:anywhere;line-height:1.3}
:is(.p27-choice-body,.p27-room-edit-body,.p27-photo-editor-body,.p27-edit-box){min-height:0;max-height:none;overflow:auto;overscroll-behavior:contain;box-sizing:border-box}
:is(.p27-choice-editor,.p27-room-editor,.p27-photo-editor,.p27-editor-dialog,.p27-gallery-caption-form) input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]),
:is(.p27-choice-editor,.p27-room-editor,.p27-photo-editor,.p27-editor-dialog) select{box-sizing:border-box;width:100%;min-width:0;height:44px;min-height:44px;margin:0;padding:9px 12px;line-height:24px;font-size:16px;border-radius:8px}
:is(.p27-choice-editor,.p27-room-editor,.p27-photo-editor,.p27-editor-dialog,.p27-gallery-caption-form) textarea{box-sizing:border-box;width:100%;min-width:0;min-height:88px;font-size:16px;line-height:1.4;resize:vertical}
:is(.p27-choice-editor,.p27-room-editor,.p27-photo-editor,.p27-editor-dialog) button{box-sizing:border-box;min-height:44px;line-height:1.3}
:is(.p27-choice-head,.p27-room-edit-head,.p27-photo-editor-head,.p27-editor-head)>button{flex-shrink:0;min-width:44px;height:44px}
.p27-photo-editor-head>button,.p27-editor-close{width:44px}
.p27-room-edit-row label{grid-template-rows:20px 44px auto}
.p27-room-editor .p27-room-edit-row :is(input:not([type=checkbox]),select){height:44px;min-height:44px;font-size:16px;line-height:24px}
.p27-room-editor .p27-room-edit-row .p27-room-tour-picker .p27-room-tour-search{height:44px;min-height:44px}
.p27-room-editor .p27-room-tour-picker .p27-room-tour-clear{height:42px;min-height:42px}
.p27-room-editor .p27-room-edit-row>button:last-child{height:44px;min-height:44px}
.p27-choice-option{grid-template-columns:32px minmax(0,1fr) 44px}
.p27-choice-option>button{padding:0;min-width:44px}
.p27-photo-edit-row>div,.p27-choice-item>label{min-width:0}
.p27-photo-edit-row .p27-photo-caption-actions button{margin:0}
@media(max-width:640px){
 :is(.p27-choice-editor,.p27-room-editor,.p27-photo-editor,.p27-editor-dialog){width:calc(100% - 16px);max-height:calc(100dvh - 16px);margin:auto}
 :is(.p27-choice-body,.p27-room-edit-body,.p27-photo-editor-body,.p27-edit-box){padding:12px}
 .p27-choice-rows{overflow-x:visible}
 .p27-choice-row{min-width:0;grid-template-columns:36px minmax(0,1fr);gap:10px;align-items:start}
 .p27-choice-row>label{grid-column:2 / -1;min-width:0}
 .p27-choice-row>button:last-child{grid-column:2 / -1;justify-self:start}
 .p27-room-editor .p27-room-tour-results button,.p27-choice-editor .p27-room-tour-results button{height:auto;min-height:44px}
}
