/* Display casing only. Original text and control values remain unchanged. */
@media screen,print {
  ambientale-case-group, ambientale-case-token {display:inline}
  html[data-text-capitalization] body,
  html[data-text-capitalization] body * {text-transform:none!important}
  html[data-text-capitalization] input:not([type=button]):not([type=submit]):not([type=reset]),
  html[data-text-capitalization] textarea,
  /* Native pickers may inherit the select's casing instead of option styles. */
  html[data-text-capitalization] select,
  html[data-text-capitalization] [contenteditable]:not([contenteditable="false"]),
  html[data-text-capitalization] [contenteditable]:not([contenteditable="false"]) *,
  html[data-text-capitalization] option,
  html[data-text-capitalization] code,
  html[data-text-capitalization] pre,
  html[data-text-capitalization] [data-case-preserve],
  html[data-text-capitalization] [data-case-preserve] * {text-transform:none!important}
  html[data-text-capitalization] [data-case-lower],
  html[data-text-capitalization] [data-case-lower] * {text-transform:lowercase!important}
  html[data-text-capitalization] input::placeholder,
  html[data-text-capitalization] textarea::placeholder {text-transform:none!important}
}

/* Sentence presentation applies to existing and dynamically inserted prose. */
@media screen,print {
 html[data-text-capitalization] [data-case-upper]{text-transform:uppercase!important}
 html[data-text-capitalization] [data-case-initial]{display:inline-block;text-transform:lowercase!important}
 html[data-text-capitalization] [data-case-initial]::first-letter{text-transform:uppercase!important}
 html[data-text-capitalization] :is(p,li,dd,textarea,.drawer-prose,.condition-description,.report-condition-full,.report-full-content,.note-excerpt,.note-description,[data-report-narrative]):not(:where(.action-primary-kpis *,.action-monitor-card *,.report-origin-card *)){
  text-align:justify!important;text-align-last:start!important;text-justify:inter-word;word-break:normal;overflow-wrap:break-word;
 }
 /* Preserve the approved Panel cards, including their typography and alignment. */
 html[data-text-capitalization] :is(.action-primary-kpis,.action-monitor-card,.report-origin-card),
 html[data-text-capitalization] :is(.action-primary-kpis,.action-monitor-card,.report-origin-card) *{text-transform:capitalize!important}
 html[data-text-capitalization] :is(.action-primary-kpis,.action-monitor-card,.report-origin-card) [data-case-preserve],
 html[data-text-capitalization] :is(.action-primary-kpis,.action-monitor-card,.report-origin-card) [data-case-preserve] *{text-transform:none!important}
 html[data-text-capitalization] :is(.action-primary-kpis,.action-monitor-card,.report-origin-card) [data-case-lower]{text-transform:lowercase!important}
}

/* Screen readability: dates are indivisible; normal prose wraps between words. */
@media screen {
 html[data-text-capitalization] [data-case-date]{display:inline-block!important;white-space:nowrap!important;word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important;max-width:none!important}
 html[data-text-capitalization] #content table :is(th,td,strong,small,em,span){word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important}
 html[data-text-capitalization] #content td:has([data-case-date]){min-width:11ch}
 html[data-text-capitalization] #content .condition-previous-protocol>strong{white-space:nowrap!important;word-break:normal!important;overflow-wrap:normal!important}
}
