/* Preserve the source field's layout and form semantics; the visible control is its grid overlay. */
.ui-control{position:relative;display:inline-grid;grid-template-columns:minmax(0,1fr);width:100%;min-width:0;max-width:100%;vertical-align:middle}
.ui-control>.ui-control-source{grid-area:1/1!important;visibility:hidden!important;pointer-events:none!important;width:100%!important;max-width:none!important;min-width:0!important;margin:0!important}
.ui-control>.ui-select-trigger,.ui-control>.ui-time-text,.ui-control>.ui-month-trigger{grid-area:1/1;min-width:0;width:100%;margin:0;align-self:stretch;box-sizing:border-box;border:1px solid var(--ui-control-border,#7e8c74);border-radius:6px;background:#fff;color:#334c3c;text-align:left;font:inherit;line-height:1.5}
.ui-select-trigger{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;background-image:var(--ui-chevron)!important;background-position:right 8px center!important;background-repeat:no-repeat!important;background-size:14px!important;cursor:pointer}
.ui-control :is(.ui-select-trigger,.ui-time-text,.ui-month-trigger):focus-visible{outline:1px solid var(--ui-focus,#75816b);outline-offset:1px;border-color:var(--ui-focus,#75816b);box-shadow:none}
.ui-control :is(.ui-select-trigger,.ui-time-text,.ui-month-trigger):disabled{opacity:.45;cursor:default}
.ui-control :is(.ui-select-trigger,.ui-time-text,.ui-month-trigger)[aria-invalid=true]{border-color:#bd8179}
.ui-control-error{grid-column:1/-1;font-size:12px;line-height:1.6;color:#9b514a;white-space:normal}
.ui-control-error:not(:empty){padding-top:6px}
.ui-clock-button{grid-area:1/1;position:relative;justify-self:end;align-self:center;z-index:1;margin-right:5px;display:grid;place-items:center;width:30px;height:30px;padding:0;border:0;border-radius:5px;background:transparent;color:var(--muted,#5d6a57)}
.ui-clock-button::before{content:'';display:block;width:16px;height:16px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8.5'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E") center/contain no-repeat}
.ui-clock-button:active{transform:none}
.ui-custom-popup{position:fixed;inset:auto;margin:0;padding:5px;box-sizing:border-box;z-index:500;border:1px solid #dce3d5;border-radius:8px;background:#fff;color:#334c3c;box-shadow:0 10px 32px #26351c20;font-family:"Segoe UI",Arial,sans-serif;font-size:14px;line-height:1.5;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#bccbb0 transparent;animation:ui-notice-in 150ms ease-out}
.ui-custom-popup::backdrop{background:transparent}
.ui-custom-option{position:relative;min-height:36px;padding:9px 30px 9px 10px;border-radius:5px;overflow-wrap:anywhere;cursor:pointer}
.ui-custom-option[aria-selected=true]{background:#edf3e5;color:#334c3c;font-weight:550}
.ui-custom-option[aria-selected=true]::after{content:'';position:absolute;right:12px;top:calc(50% - 5px);width:5px;height:9px;border:solid #607c4b;border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}
.ui-custom-option.is-focused{outline:1px solid var(--ui-focus,#75816b);outline-offset:-1px;background:#f1f5eb}
.ui-custom-option[aria-disabled=true]{opacity:.4;cursor:default}
.ui-custom-time{padding:14px}
.ui-picker-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.ui-picker-head strong{font-size:14px;font-weight:550}
.ui-picker-dismiss{width:28px;height:28px;min-width:28px;padding:0;border:0;background:transparent;color:var(--muted,#5d6a57)}
.ui-time-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ui-time-column-label{display:block;font-size:11px;color:var(--muted,#5d6a57);margin:0 0 5px}
.ui-time-values{max-height:168px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#bccbb0 transparent;border:1px solid #dce3d5;border-radius:6px;padding:3px}
.ui-time-value{display:block;width:100%;min-height:34px;border:0;border-radius:4px;padding:6px 12px;background:#fff;color:#526b42;font:inherit;font-size:14px;text-align:center}
.ui-time-value[aria-selected=true]{background:#edf3e5;color:#334c3c;font-weight:650}
.ui-time-value:focus-visible{outline:1px solid var(--ui-focus,#75816b);outline-offset:-1px}
.ui-picker-actions{display:flex;justify-content:space-between;gap:10px;padding-top:12px;margin-top:12px;border-top:1px solid #dce3d5}
.ui-picker-actions button{min-height:36px;padding:8px 12px;border:1px solid #dce3d5;border-radius:6px;font:inherit;font-size:12px}
.ui-picker-clear{background:#f5f7f1;color:#526b42}.ui-picker-apply{background:#334c3c;color:#fff;border-color:#334c3c!important}
@media(hover:hover){.ui-control :is(.ui-select-trigger,.ui-time-text,.ui-month-trigger):hover:not(:disabled){box-shadow:inset 0 2px 6px #26351c18}.ui-custom-option:hover:not([aria-disabled=true]),.ui-time-value:hover{background:#f1f5eb}.ui-clock-button:hover{background:#edf3e5;color:#334c3c}.ui-picker-apply:hover{background:#43654e}}
@media(max-width:760px){.ui-custom-option{min-height:44px;padding-block:11px;font-size:16px}.ui-control>.ui-time-text{font-size:16px!important}.ui-time-value{min-height:44px;font-size:16px}.ui-picker-actions button{min-height:44px;font-size:13px}.ui-custom-time .ui-time-values{max-height:176px}.ui-clock-button{width:36px;height:36px;margin-right:4px}.ui-picker-dismiss{width:32px;height:32px}}
.time-label>.ui-control{margin-top:5px}

.ui-select-searchable{display:flex;flex-direction:column;overflow:hidden;padding:0}.ui-select-search-head{flex:none;padding:10px;background:#f4f7ef;border-bottom:1px solid #dce3d5}.ui-select-search-head .ui-select-search{display:block;box-sizing:border-box;width:100%;min-width:0;min-height:38px;margin:0;padding:8px 10px;border:1px solid var(--ui-control-border,#7e8c74);border-radius:5px;background:#fff;color:#334c3c;font:inherit;font-size:14px;line-height:1.5}.ui-select-search:focus-visible{outline:1px solid var(--ui-focus,#75816b);outline-offset:1px;border-color:var(--ui-focus,#75816b)}.ui-select-options{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:5px}.ui-select-empty{flex:none;margin:0;padding:14px;color:var(--muted,#5d6a57);font-size:12px}@media(max-width:760px){.ui-select-search-head .ui-select-search{font-size:16px;min-height:44px}}


/* Month filters share the calendar vocabulary without the browser-native popup. */
.ui-month-trigger{position:relative;display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;cursor:pointer}
.ui-month-trigger::after{content:'';position:absolute;right:11px;top:calc(50% - 7px);width:14px;height:13px;box-sizing:border-box;border:1.4px solid currentColor;border-radius:2px;background:linear-gradient(currentColor,currentColor) center 3px/100% 1px no-repeat;opacity:.75;pointer-events:none}
.ui-month-trigger::before{content:'';position:absolute;right:14px;top:calc(50% - 9px);width:1.4px;height:4px;background:currentColor;box-shadow:-7px 0 currentColor;opacity:.75;pointer-events:none}
.ui-custom-month{padding:12px;max-width:calc(100vw - 24px)}
.ui-month-header{margin-bottom:8px;min-height:32px}.ui-month-navigation{display:grid;grid-template-columns:32px minmax(0,1fr) 32px;align-items:center;gap:8px;margin-bottom:8px}
.ui-month-heading{font-size:14px;font-weight:600;text-align:center;color:#3e5637}
.ui-month-year{display:grid;place-items:center;box-sizing:border-box;width:32px;height:32px;min-width:32px;min-height:32px;padding:0;border:1px solid #dce3d5;border-radius:5px;background:#f6f8f2;color:var(--muted,#5d6a57);cursor:pointer}
.ui-month-year::before{content:'';display:block;width:5px;height:5px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:rotate(-45deg)}
.ui-month-prev::before{transform:rotate(135deg)}
.ui-month-year:disabled,.ui-month-value:disabled,.ui-month-actions button:disabled{opacity:.35;cursor:default}
.ui-month-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}
.ui-month-row{display:contents}
.ui-month-value{position:relative;box-sizing:border-box;min-width:0;min-height:40px;padding:9px 4px;border:1px solid transparent;border-radius:6px;background:#fff;color:#526b42;font:inherit;font-size:13px;line-height:20px;text-align:center;cursor:pointer}
.ui-month-value[aria-selected=true]{background:#e7efdc;border-color:#b9cba7;color:#334c3c;font-weight:600}
.ui-month-value[aria-current=date]::after{content:'';position:absolute;bottom:4px;left:calc(50% - 7px);width:14px;height:2px;border-radius:2px;background:#91a77e}
.ui-custom-month :is(.ui-month-value,.ui-month-year,.ui-picker-dismiss,.ui-picker-clear,.ui-picker-apply):focus-visible{outline:1px solid var(--ui-focus,#75816b);outline-offset:1px;box-shadow:none}
.ui-custom-month .ui-picker-dismiss{height:32px;min-height:32px}
.ui-month-actions{margin-top:8px;padding-top:8px;align-items:center;justify-content:space-between}
.ui-month-actions .ui-picker-apply{margin-left:auto}
@media(hover:hover){.ui-month-value:hover:not(:disabled),.ui-month-year:hover:not(:disabled){background:#f1f5eb;color:#334c3c}}
@media(max-width:760px){.ui-month-navigation{grid-template-columns:36px minmax(0,1fr) 36px}.ui-month-value{min-height:44px;padding-block:11px;font-size:14px}.ui-month-year{width:36px;height:36px;min-width:36px;min-height:36px}.ui-custom-month .ui-picker-dismiss{width:32px;height:36px;min-height:36px}}

/* Touch targets grow independently of the compact icon artwork. */
@media(max-width:760px){.ui-clock-button{width:44px;height:44px;min-width:44px;min-height:44px;margin-right:0}.ui-picker-dismiss,.ui-custom-month .ui-picker-dismiss{width:44px;height:44px;min-width:44px;min-height:44px}.ui-month-navigation{grid-template-columns:44px minmax(0,1fr) 44px}.ui-month-year{width:44px;height:44px;min-width:44px;min-height:44px}.ui-control-time>.ui-time-text{padding-right:48px!important;min-height:44px}}
