.blu-date-picker-block .blu-component-preview,.blu-time-picker-block .blu-component-preview,.blu-date-time-picker-block .blu-component-preview,.blu-date-range-picker-block .blu-component-preview {display:none;}
/* Shared by the four pickers. Each native Block includes its own complete copy. */
.blu-advanced-sr {position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
.blu-picker,.blu-picker *,.blu-picker__dialog,.blu-picker__dialog * {box-sizing:border-box;}
.blu-picker {max-width:100%;min-width:0;color:var(--bluui-text,#182230);font:14px/1.5 var(--blu-font-family,var(--bluui-font,system-ui,sans-serif));}
.blu-picker [hidden],.blu-picker__dialog [hidden] {display:none!important;}
.blu-picker__fields {display:flex;flex-wrap:wrap;gap:12px;}
.blu-picker__field {flex:1 1 180px;min-width:0;}
.blu-picker__field label,.blu-picker__select-caption {display:block;margin-bottom:5px;color:var(--bluui-text,#182230);font-weight:600;}
.blu-picker__input {display:block;width:100%;min-width:0;min-height:42px;padding:9px 11px;border:1px solid var(--bluui-control-border,#69788d);border-radius:9px;background:var(--bluui-surface,#fff);color:var(--bluui-text,#182230);font:inherit;line-height:1.4;}
.blu-picker__field-control {position:relative;}
.blu-picker__field-control>.blu-picker__input {padding-right:38px;}
.blu-picker__field-icon {position:absolute;right:11px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:var(--bluui-text-muted,#526174);pointer-events:none;}
.blu-picker__field-icon svg {display:block;width:100%;height:100%;}
.blu-picker__input::placeholder {color:var(--bluui-text-muted,#526174);opacity:1;}
.blu-picker__input:disabled {opacity:.65;cursor:not-allowed;}
.blu-picker__input[readonly] {background:var(--bluui-surface-muted,#f1f3f7);}
.blu-picker__input[aria-invalid=true] {border-color:var(--bluui-color-error-solid,#b42318);}
.blu-picker__hint,.blu-picker__help {color:var(--bluui-text-muted,#526174);font-size:12px;margin:8px 0;overflow-wrap:anywhere;}
.blu-picker__actions,.blu-picker__presets {display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;}
.blu-picker__button {appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:40px;min-width:40px;max-width:100%;padding:8px 13px;border:1px solid var(--bluui-control-border,#69788d);border-radius:9px;background:var(--bluui-surface,#fff);color:var(--bluui-text,#182230);font:inherit;line-height:1.4;white-space:normal;cursor:pointer;}
.blu-picker__button:hover:not(:disabled),.blu-picker__day:hover:not([aria-disabled=true]) {background:var(--bluui-surface-muted,#edf0f7);}
.blu-picker__button--primary {background:var(--bluui-color-primary-solid,#4f46e5);border-color:var(--bluui-color-primary-solid,#4f46e5);color:var(--bluui-color-primary-contrast,#fff);}
.blu-picker__button--primary:hover:not(:disabled) {background:var(--bluui-color-primary-solid,#4f46e5);filter:brightness(.94);}
.blu-picker__button:disabled {opacity:.55;cursor:not-allowed;}
.blu-picker__input:focus-visible,.blu-picker__button:focus-visible,.blu-picker__day:focus-visible {outline:3px solid var(--bluui-focus,#6156df);outline-offset:3px;}
.blu-picker__error {color:var(--bluui-color-error-text,#a32218);font-size:13px;line-height:1.5;overflow-wrap:anywhere;margin-top:8px;}
.blu-picker__dialog {position:fixed;inset:auto;width:344px;max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);overflow:auto;overscroll-behavior:contain;margin:0;padding:10px;border:1px solid var(--bluui-border,#dce2eb);border-radius:12px;background:var(--bluui-surface,#fff);color:var(--bluui-text,#182230);font:13px/1.35 var(--blu-font-family,var(--bluui-font,system-ui,sans-serif));box-shadow:0 12px 32px #10162726,0 2px 6px #10162714;scroll-padding:12px;z-index:1000;}
.blu-picker__dialog::backdrop {background:transparent;pointer-events:none;}
.blu-picker__dialog-head {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;}
.blu-picker__dialog-head h2 {font-size:16px;line-height:1.4;font-family:var(--blu-font-heading-family,inherit);margin:0;overflow-wrap:anywhere;}
.blu-picker__calendar-nav {display:grid;grid-template-columns:32px minmax(0,1fr) 88px 32px;align-items:end;gap:6px;margin-top:0;}
.blu-picker__calendar-nav>.blu-picker__button {height:36px;padding:2px;font-size:22px;}
.blu-picker__select-field {min-width:0;}
.blu-picker__caption {font-size:15px;text-align:center;margin:16px 0 8px;}
.blu-picker__calendar {width:100%;table-layout:fixed;border-collapse:separate;border-spacing:2px;}
.blu-picker__calendar th {height:20px;text-align:center;font-size:11px;font-weight:500;color:var(--bluui-text-muted,#526174);padding:0;}
.blu-picker__calendar td {padding:0;text-align:center;height:32px;border:0;}
.blu-picker__day {appearance:none;display:block;width:100%;min-width:24px;min-height:32px;padding:4px 0;border:1px solid transparent;border-radius:7px;background:transparent;color:inherit;font:inherit;cursor:pointer;}
.blu-picker__day[aria-current=date] {border-color:var(--bluui-control-border,#69788d);font-weight:700;}
.blu-picker__day[data-between=true] {background:var(--bluui-color-primary-soft,#eef2ff);color:var(--bluui-color-primary-text,#3730a3);border-radius:0;}
.blu-picker__day[data-selected=true] {background:var(--bluui-color-primary-solid,#4f46e5)!important;color:var(--bluui-color-primary-contrast,#fff);font-weight:700;}
.blu-picker__day[aria-disabled=true] {color:var(--bluui-text-muted,#526174);text-decoration:line-through;cursor:not-allowed;}
.blu-picker__time-area {display:flex;flex-wrap:wrap;gap:8px;margin:6px 0;}
.blu-picker__time-area>.blu-picker__select-field {flex:1 1 70px;}
.blu-picker__selection {font-size:12px;min-height:1.35em;margin:4px 0;overflow-wrap:anywhere;}
@media(forced-colors:active){.blu-picker__day[data-selected=true]{background:Highlight!important;color:HighlightText;border:2px solid Highlight}.blu-picker__day[data-between=true]{border-bottom:2px solid Highlight}.blu-picker__input,.blu-picker__button{border:1px solid ButtonText}.blu-picker__dialog{border:2px solid CanvasText}}

.blu-picker__popup-actions {display:flex;justify-content:flex-end;flex-wrap:wrap;gap:6px;margin-top:6px;}
.blu-picker__selection:empty,.blu-picker__error:empty {display:none;}
.blu-picker__presets:empty {display:none;}
.blu-picker__presets {margin:0 0 6px;}

/* Compact popup controls; editable text stays at 16px to avoid iOS focus zoom. */
.blu-picker__dialog .blu-picker__input {min-height:36px;padding:5px 7px;font-size:16px;line-height:1.2;}
.blu-picker__dialog .blu-picker__button {min-height:34px;min-width:32px;padding:5px 9px;font-size:13px;line-height:1.25;}
.blu-picker__dialog .blu-picker__select-caption {font-size:11px;margin-bottom:2px;}
.blu-picker__calendar-nav .blu-picker__select-caption {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0;}
.blu-picker__dialog .blu-picker__error {margin-top:4px;font-size:12px;line-height:1.3;}
@media(pointer:coarse){
 .blu-picker__field-control>.blu-picker__input {font-size:16px;min-height:44px;}
 .blu-picker__day {min-height:36px;}
 .blu-picker__dialog .blu-picker__button {min-height:36px;}
}
/* Keep six calendar weeks and the footer visible in short phone viewports. */
.blu-picker__dialog[data-compact=true] {padding:6px;font-size:12px;line-height:1.2;}
.blu-picker__dialog[data-compact=true] .blu-picker__input {min-height:32px;padding:4px 5px;}
.blu-picker__dialog[data-compact=true] .blu-picker__button {min-height:30px;padding:4px 7px;font-size:12px;}
.blu-picker__dialog[data-compact=true] .blu-picker__calendar-nav>.blu-picker__button {height:32px;}
.blu-picker__dialog[data-compact=true] .blu-picker__calendar {border-spacing:0;}
.blu-picker__dialog[data-compact=true] .blu-picker__calendar th {height:18px;font-size:10px;}
.blu-picker__dialog[data-compact=true] .blu-picker__calendar td {height:24px;}
.blu-picker__dialog[data-compact=true] .blu-picker__day {min-height:24px;padding:3px 0;}
.blu-picker__dialog[data-compact=true] .blu-picker__time-area {margin:4px 0;gap:6px;}
.blu-picker__dialog[data-compact=true] .blu-picker__time-area .blu-picker__select-caption {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
.blu-picker__dialog[data-compact=true] .blu-picker__selection {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0;}
.blu-picker__dialog[data-compact=true] .blu-picker__popup-actions {margin-top:4px;gap:4px;}
.blu-picker__dialog[data-compact=true] .blu-picker__presets {margin-bottom:4px;gap:4px;}
