input[hidden][type="date"],input[hidden][type="datetime-local"]{display:none!important}
brun-datetime-picker{display:block;min-width:0;max-width:100%}
.brun-picker-field{display:flex;min-width:0;max-width:100%;align-items:stretch;gap:0}
.input-group>.brun-picker-field{flex:1 1 auto;width:1%;min-width:0}
.brun-picker-field>input{flex:1 1 0;width:0;min-width:0}
.brun-picker-button{flex:0 0 44px;min-height:44px;border:1px solid var(--theme-border,#b8c2d1);background:var(--theme-surface-2,#f1f4f8);color:var(--theme-text,#172033);border-radius:8px;font-size:24px}
.brun-picker-dialog{box-sizing:border-box;width:min(400px,calc(100vw - 16px));max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);margin:0;padding:0;border:1px solid var(--theme-border,#b8c2d1);border-radius:16px;background:var(--theme-surface,#fff);color:var(--theme-text,#172033);box-shadow:0 18px 60px #0005;font-family:inherit;overflow:hidden;overscroll-behavior:contain}
.brun-picker-dialog:popover-open{display:flex;flex-direction:column}
.brun-picker-dialog [hidden]{display:none!important}
.brun-picker-dialog::backdrop{background:transparent;pointer-events:none}
.brun-picker-heading,.brun-picker-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px;background:var(--theme-surface,#fff);position:sticky;z-index:2}
.brun-picker-heading{top:0;border-bottom:1px solid var(--theme-border,#dce2ec)}
.brun-picker-footer{bottom:0;border-top:1px solid var(--theme-border,#dce2ec);flex-wrap:wrap}
.brun-picker-body{padding:12px;overflow-y:auto;min-height:0;overscroll-behavior:contain}
.brun-picker-heading,.brun-picker-footer{flex:none}
.brun-picker-summary{display:block;text-align:center;font-size:18px;font-weight:700;margin-bottom:8px;unicode-bidi:isolate}
.brun-calendar-title{text-align:center;font-weight:700;margin-bottom:8px}
.brun-year-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}
.brun-year-paging{display:flex;justify-content:space-between;gap:8px;margin-top:8px}
.brun-picker-field>input{cursor:pointer}
.brun-picker-dialog button,.brun-picker-dialog select,.brun-picker-dialog input{font:inherit;min-height:44px;border:1px solid var(--theme-border,#b8c2d1);border-radius:8px;background:var(--theme-surface-2,#f1f4f8);color:var(--theme-text,#172033);padding:4px 8px;box-sizing:border-box}
.brun-picker-dialog button{cursor:pointer}
.brun-picker-dialog .brun-picker-apply,.brun-picker-dialog button[aria-pressed=true]{background:var(--theme-link,#173b9b);color:var(--theme-text-inverse,#fff);border-color:var(--theme-link,#173b9b)}
.brun-picker-dialog button:focus-visible,.brun-clock-dial:focus-visible{outline:3px solid var(--theme-focus,#3d6ee8);outline-offset:1px}
.brun-picker-close{min-width:44px}
.brun-calendar-nav{display:flex;gap:4px;align-items:center}
.brun-calendar-nav select{flex:1;min-width:0;width:0}
.brun-calendar-nav input{width:80px;min-width:0}
.brun-calendar-nav button{min-width:44px;padding:0}
.brun-calendar-nav .brun-calendar-year{min-width:64px}
.brun-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;margin-block:8px}
.brun-calendar-row{display:contents}
.brun-calendar-cell{min-width:0}
.brun-calendar-cell button{width:100%}
.brun-calendar-grid button{padding:0;min-width:0}
.brun-weekday{text-align:center;font-size:13px;padding:4px}
.brun-calendar-grid button[aria-current=date]{border:2px solid var(--theme-focus,#3d6ee8)}
.brun-picker-dialog button:disabled{opacity:.45;cursor:default}
.brun-picker-error{color:var(--theme-danger,#b4232f);font-size:14px;margin:4px}
@media(max-width:359px){.brun-picker-body{padding:6px}.brun-calendar-grid{gap:1px}}
@media(prefers-reduced-motion:reduce){.brun-picker-dialog *{scroll-behavior:auto}}

.brun-clock-inputs{display:flex;direction:ltr;align-items:end;justify-content:center;gap:12px;margin:12px 0}
.brun-clock-label{display:grid;gap:6px;text-align:center;flex:0 1 110px;min-width:0}
.brun-picker-dialog .brun-clock-label input{width:100%;min-width:0;text-align:center;font-size:28px;font-variant-numeric:tabular-nums;min-height:56px;background:var(--theme-surface,#fff)}
.brun-clock-colon{font-size:28px;padding-bottom:8px}
.brun-clock-help{font-size:13px;text-align:center;margin:0;color:var(--theme-text,#172033)}
.brun-picker-dialog input:focus-visible{outline:3px solid var(--theme-focus,#3d6ee8);outline-offset:1px}
.brun-picker-dialog input[aria-invalid=true],.brun-picker-field input[aria-invalid=true]{border-color:var(--theme-danger,#b4232f)}
.brun-time-error{display:block;color:var(--theme-danger,#b4232f);font-size:13px;margin-block:4px}
.brun-time-error[hidden]{display:none}
.brun-picker-field--editable>input{cursor:text}
.brun-clock-label{flex-basis:140px}
.brun-clock-combobox{display:flex;align-items:stretch;border:1px solid var(--theme-border,#b8c2d1);border-radius:10px;background:var(--theme-surface,#fff);overflow:hidden}
.brun-picker-dialog .brun-clock-combobox input{border:0;border-radius:0;flex:1;width:0;font-size:24px;min-height:52px}
.brun-picker-dialog .brun-clock-toggle{border:0;border-radius:0;min-width:44px;background:transparent;font-size:24px;padding:0}
.brun-clock-combobox:focus-within{outline:3px solid var(--theme-focus,#3d6ee8);outline-offset:1px}
.brun-clock-menu{position:fixed;inset:auto;margin:0;padding:4px;box-sizing:border-box;overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--theme-border,#b8c2d1);border-radius:10px;background:var(--theme-surface,#fff);color:var(--theme-text,#172033);box-shadow:0 8px 24px #0003;font:inherit;}
.brun-clock-menu::backdrop{background:transparent;pointer-events:none}
.brun-clock-option{display:flex;align-items:center;justify-content:center;min-height:44px;border-radius:6px;cursor:pointer;font-variant-numeric:tabular-nums}
.brun-clock-option[hidden]{display:none}
.brun-clock-option:hover,.brun-clock-option.is-active{background:var(--theme-surface-2,#eef2f8)}
.brun-clock-option[aria-selected=true]{background:var(--theme-link,#173b9b);color:var(--theme-text-inverse,#fff)}

.brun-picker-dialog{position:fixed;inset:auto;width:360px;box-shadow:0 8px 28px #0003}

/* Compact anchored pickers: one calendar and one time row, no repeated headings. */
.brun-picker-dialog{width:300px;border-radius:10px;font-size:13px}
.brun-picker-summary,.brun-calendar-title,.brun-clock-help{display:none}
.brun-picker-body{padding:8px;display:grid;grid-template-columns:minmax(0,1fr);gap:6px}
.brun-picker-error:empty{display:none}
.brun-picker-footer{padding:0 8px 4px;gap:4px;border:0;position:static;justify-content:flex-end}
.brun-picker-dialog .brun-picker-footer button{min-height:28px;min-width:28px;font-size:12px;border:0;background:transparent;padding:2px 6px}
.brun-picker-dialog button,.brun-picker-dialog select,.brun-picker-dialog input{min-height:32px}
.brun-calendar-nav{gap:3px}
.brun-calendar-nav button{min-width:30px}
.brun-calendar-nav .brun-calendar-year{min-width:48px}
.brun-calendar-nav .task-searchable-select{min-width:0;flex:1}
.brun-calendar-nav .task-searchable-control{min-height:32px!important;padding:0 4px!important;gap:2px!important}
.brun-calendar-nav .task-searchable-control input{font-size:13px!important;min-height:30px!important;width:0;flex:1;padding:0!important}
.brun-calendar-nav .task-searchable-control button{min-width:24px!important;min-height:30px!important}
.brun-calendar-nav .task-searchable-control i.fa-magnifying-glass{display:none}
.brun-calendar-grid{gap:1px;margin:4px 0}
.brun-calendar-grid button{min-height:32px;height:32px;border-color:transparent;background:transparent;border-radius:6px;font-size:13px}
.brun-weekday{font-size:11px;padding:2px}
.brun-calendar-grid button:hover{background:var(--theme-surface-2,#eef2f8)}
.brun-picker-calendar>button{min-height:24px;padding:0 6px;font-size:12px;border:0;background:transparent}
.brun-clock-inputs{gap:6px;margin:0}
.brun-clock-label{gap:2px;font-size:11px;flex:1}
.brun-clock-colon{font-size:18px;padding-bottom:4px}
.brun-picker-dialog .brun-clock-combobox input{min-height:34px;font-size:17px;padding:2px 4px}
.brun-picker-dialog .brun-clock-toggle{min-width:28px;min-height:34px;font-size:18px}
.brun-clock-combobox{border-radius:6px}
.brun-picker-dialog[data-mode=time]{width:224px}
.brun-picker-dialog[data-mode=datetime] .brun-picker-clock{position:sticky;bottom:-8px;background:var(--theme-surface,#fff);padding:6px 0 0;border-top:1px solid var(--theme-border,#dce2ec)}
@media(min-width:768px){
 .brun-picker-dialog[data-mode=datetime]{width:474px}
 .brun-picker-dialog[data-mode=datetime] .brun-picker-body{grid-template-columns:minmax(0,284px) minmax(0,156px);align-items:start;gap:12px}
 .brun-picker-dialog[data-mode=datetime] .brun-picker-clock{position:sticky;top:0;border-top:0;border-inline-start:1px solid var(--theme-border,#dce2ec);padding:4px 0 4px 8px}
 .brun-picker-dialog[data-mode=datetime] .brun-picker-error{grid-column:1/-1}
}
@media(pointer:coarse){.brun-calendar-grid button{min-height:36px;height:36px}.brun-picker-dialog .brun-clock-combobox input,.brun-picker-dialog .brun-clock-toggle{min-height:40px}}

/* Page-specific fixed input heights must not separate the field from its icon. */
.brun-picker-field.brun-jalali-datetime>input,.brun-picker-field.brun-jalali-datetime>.brun-picker-button{box-sizing:border-box;height:auto!important;min-height:44px;align-self:stretch!important;margin-block:0!important}
.brun-picker-field>.brun-picker-button{display:flex;align-items:center;justify-content:center;line-height:1;padding-block:0}

/* Isolate compact picker controls from late-loading dashboard/meeting button rules. */
.brun-picker-dialog[data-mode] .brun-calendar-grid button{box-sizing:border-box;min-width:0;min-height:32px;height:32px;padding:0;font-size:13px;line-height:1.3;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--theme-text,#172033)}
.brun-picker-dialog[data-mode] .brun-calendar-grid button[aria-pressed=true]{background:var(--theme-link,#173b9b);border-color:var(--theme-link,#173b9b);color:var(--theme-text-inverse,#fff)}
.brun-picker-dialog[data-mode] .brun-calendar-grid button[aria-current=date]{border:2px solid var(--theme-focus,#3d6ee8)}
.brun-picker-dialog[data-mode] .brun-calendar-nav button{min-height:32px;min-width:30px;padding:0;font-size:13px;border-radius:6px}
.brun-picker-dialog[data-mode] .brun-calendar-nav .brun-calendar-year{min-width:48px}
.brun-picker-dialog[data-mode] .brun-picker-calendar>button{min-height:24px;min-width:0;padding:0 6px;font-size:12px;background:transparent;border:0}
.brun-picker-dialog[data-mode] .brun-picker-footer button{min-height:28px;min-width:28px;padding:2px 6px;font-size:12px;background:transparent;border:0}
.brun-picker-dialog[data-mode=datetime]{width:300px}
.brun-picker-dialog[data-mode=datetime] .brun-picker-body{grid-template-columns:minmax(0,1fr);gap:6px}
.brun-picker-dialog[data-mode=datetime] .brun-picker-clock{position:sticky;top:auto;bottom:-8px;padding:6px 0 0;border-inline-start:0;border-top:1px solid var(--theme-border,#dce2ec)}
@media(pointer:coarse){.brun-picker-dialog[data-mode] .brun-calendar-grid button{min-height:36px;height:36px}}
