.sdn-date-field { display: inline-block; position: relative; width: 100%; min-width: 0; vertical-align: middle; }
.sdn-date-field[hidden], .sdn-date-error[hidden] { display: none !important; }
.sdn-date-control { display: block; position: relative; min-width: 0; }
.sdn-date-control > .sdn-date-display { box-sizing: border-box; width: 100% !important; min-width: 0 !important; max-width: 100%; padding-right: 44px !important; direction: ltr !important; text-align: left !important; letter-spacing: 0; }
.sdn-date-control > .sdn-date-calendar { position: absolute; right: 1px; top: 1px; bottom: 1px; display: flex; justify-content: center; align-items: center; width: 40px; min-width: 40px; height: auto; margin: 0; padding: 0; color: #42556b; background: transparent; border: 0; border-left: 1px solid #d4dde5; border-radius: 0 5px 5px 0; cursor: pointer; }
.sdn-date-calendar svg { width: 18px; height: 18px; flex: none; }
.sdn-date-calendar:focus-visible { outline: 2px solid #007da4; outline-offset: -3px; }
.sdn-date-calendar:disabled { opacity: .45; cursor: default; }
.sdn-date-control > .sdn-date-native { position: absolute !important; top: 0 !important; right: 0 !important; left: auto !important; bottom: 0 !important; width: 40px !important; min-width: 0 !important; max-width: 40px !important; height: 100% !important; margin: 0 !important; padding: 0 !important; opacity: 0 !important; cursor: pointer; box-sizing: border-box; z-index: 1; }
.sdn-date-native::-webkit-calendar-picker-indicator { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; padding: 0; cursor: pointer; }
.sdn-date-native:disabled, .sdn-date-native[readonly] { pointer-events: none; }
.sdn-date-error { display: block; color: #b42318; font-size: 12px; line-height: 1.4; margin-top: 4px; white-space: normal; }
.sdn-date-display[aria-invalid="true"] { border-color: #b42318 !important; }
@media print { .sdn-date-calendar, .sdn-date-native { display: none !important; } .sdn-date-control > .sdn-date-display { padding-right: 6px !important; } }
