/* Shared admin readability floor.
   Feature styles may still control layout and height, but editable copy must
   never fall back to the 6-9px display sizes used by decorative metadata. */
body.cx-admin-open{
  --cx-admin-readable-control:clamp(12px,.68vw,14px);
  --cx-admin-readable-label:clamp(9px,.52vw,11px);
  --cx-admin-readable-copy:clamp(10px,.58vw,12px);
}

body.cx-admin-open :is(
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not([type="file"]),
  select,
  textarea
){
  box-sizing:border-box;
  min-width:0;
  max-width:100%;
  font-size:var(--cx-admin-readable-control)!important;
  line-height:1.45!important;
}

body.cx-admin-open :is(
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not([type="file"]),
  select
){
  min-height:40px;
}

body.cx-admin-open textarea{
  min-height:96px;
  padding:11px 12px!important;
  overflow:auto;
  resize:vertical;
  white-space:pre-wrap;
}

body.cx-admin-open :is(input,textarea)::placeholder{
  color:#7893a0;
  opacity:.82;
}

body.cx-admin-open label{
  min-width:0;
}

body.cx-admin-open :is(
  label>span,
  label>small,
  legend,
  .cx-admin-field-label,
  .cx-admin-form-label,
  .cx-admin-section-label
){
  font-size:var(--cx-admin-readable-label)!important;
  line-height:1.35!important;
}

body.cx-admin-open :is(
  .cx-admin-editor p,
  .cx-admin-editor .hint,
  .cx-admin-editor .help,
  .cx-admin-editor [class*="-hint"],
  .cx-admin-editor [class*="-help"]
){
  font-size:var(--cx-admin-readable-copy)!important;
  line-height:1.5!important;
  overflow-wrap:anywhere;
}

body.cx-admin-open :is(
  .cx-admin-fields,
  .cx-admin-outfit-fields,
  .cx-admin-editor,
  .cx-admin-editor section,
  .cx-admin-editor article
) > *{
  min-width:0;
}

body.cx-admin-open button{
  line-height:1.25;
}

@media (max-width:1100px){
  body.cx-admin-open{
    --cx-admin-readable-control:12px;
    --cx-admin-readable-label:9px;
    --cx-admin-readable-copy:10px;
  }
}
