/* Shared dropdown, calendar and search surfaces across all routes. */
body .ts-select,body .ts-date{position:relative;display:inline-flex;align-items:center;min-width:0;width:100%;vertical-align:middle;box-sizing:border-box}
body .ts-select>select.ts-select-source{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;border:0!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important}
body .ts-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-width:0;min-height:44px;padding:10px 12px;border:1px solid #ccdce6;border-radius:8px;background:#fff;color:#10375a;font:400 16px/1.4 Arial,Helvetica,sans-serif;text-align:left;white-space:normal;box-sizing:border-box;cursor:pointer}
body .ts-select-trigger::after{content:'';width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);flex-shrink:0;margin:0 3px 4px}
body .ts-select-trigger:disabled,body .ts-calendar-trigger:disabled{opacity:.55;cursor:not-allowed}
body .ts-select-trigger[aria-invalid=true]{border-color:#b23c51}
body .ts-date>input{width:100%;min-width:0;box-sizing:border-box;padding-right:44px!important;min-height:44px;font-size:16px;border:1px solid #ccdce6;border-radius:8px;color:#10375a;background:#fff}
body .ts-date input::-webkit-calendar-picker-indicator{display:none}
body .ts-calendar-trigger{position:absolute;right:2px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:40px;min-height:40px;padding:0;background:transparent;border:0;border-radius:6px;color:#007f94;font:26px/1 Arial;cursor:pointer}
body .ts-picker{position:fixed;inset:auto;margin:0;padding:8px;box-sizing:border-box;max-width:calc(100vw - 24px);overflow:auto;background:#fff;color:#10375a;border:1px solid #d3e1ea;border-radius:10px;box-shadow:0 10px 30px #123c5326;font:16px/1.4 Arial,Helvetica,sans-serif;z-index:10000;text-align:left}
body .ts-picker::backdrop{background:transparent}
body .ts-picker .ts-option{display:block;width:100%;box-sizing:border-box;padding:11px 12px;border:0;border-radius:6px;background:transparent;color:#10375a;font:15px/1.4 Arial,Helvetica,sans-serif;text-align:left;cursor:pointer;white-space:normal}
body .ts-picker .ts-option:hover,body .ts-picker .ts-option:focus-visible,body .ts-picker [aria-selected=true]{background:#e4f5f8;color:#006b80}
body .ts-picker .ts-option:disabled{opacity:.45;cursor:not-allowed}
body .ts-picker small{display:block;font-size:13px;color:#526c83;margin-top:3px}
body .ts-picker .ts-empty{font-size:14px;padding:12px;margin:0;color:#526c83}
body .ts-picker .ts-option-search{box-sizing:border-box;width:100%;padding:10px 12px;margin:0 0 6px;min-height:44px;border:1px solid #ccdce6;border-radius:7px;font:16px Arial;background:#fff;color:#10375a}
body .ts-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:10px}
body .ts-calendar-head strong{font-size:16px}
body .ts-calendar-head button,body .ts-calendar-grid button{display:grid;place-items:center;border:0;border-radius:6px;background:transparent;color:#10375a;min-width:0;min-height:38px;padding:0;font:15px Arial;cursor:pointer}
body .ts-calendar-head button{width:36px;font-size:26px}
body .ts-picker .ts-calendar-year{width:76px;min-height:38px;padding:4px;border:1px solid #ccdce6;border-radius:6px;font:15px Arial;color:#10375a;background:#fff}
body .ts-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}
body .ts-calendar-grid>span{text-align:center;font:12px Arial;color:#526c83;padding:8px 0}
body .ts-calendar-grid button:hover:not(:disabled){background:#e4f5f8}
body .ts-calendar-grid button:disabled{opacity:.35;cursor:not-allowed}
body .ts-calendar-grid [aria-pressed=true]{background:#00859c;color:#fff}
body .ts-calendar-grid [aria-current=date]{box-shadow:inset 0 0 0 1px #00859c}
body .ts-picker .ts-clear{width:100%;border:0;border-top:1px solid #dce7ee;background:none;color:#007f94;margin-top:8px;padding:12px;font:14px Arial;cursor:pointer}
body :is(.ts-select-trigger,.ts-calendar-trigger,.ts-picker button,.ts-picker input,.ts-search):focus-visible{outline:2px solid #00859c;outline-offset:2px}
/* Compound search fields have one focus boundary. */
body :is(.search-form,.search-line) label:focus-within{outline:2px solid #00859c;outline-offset:2px;border-radius:8px;box-shadow:none}
body :is(.search-form,.search-line) input:focus-visible,body .search-form .ts-select-trigger:focus-visible,body .search-form .ts-calendar-trigger:focus-visible{outline:none;box-shadow:none}
body .search-form :is(.ts-select-trigger,.ts-date>input){border:0;background:transparent;font-size:14px}
body .filter-box .ts-select-trigger{min-height:32px;padding:0;border:0;background:transparent;font-size:14px}
body .filters .filter-box{min-width:0}
body .filter-box>span{min-width:0;flex:1}
body input[type=search]{font-family:Arial,Helvetica,sans-serif;font-size:16px;min-width:0;border-radius:8px}
@media(prefers-reduced-motion:no-preference){.home-page .ts-picker:popover-open{animation:home-picker-open 120ms ease-out}}

body .filter-box>.icon:last-child{display:none}
