.tfpt-location-widget{position:relative;min-width:0;width:100%;color:#0b2132}
.tfpt-location-widget *,.tfpt-sources *{box-sizing:border-box}
.tfpt-location-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:start}
.tfpt-location-field{position:relative;display:flex;flex-direction:column;gap:7px;min-width:0}
.tfpt-location-widget label{display:block;font-size:12px;line-height:1.5;font-weight:650;color:#41546b}
.tfpt-location-widget :is(input:not([type=hidden]),select){display:block;width:100%;min-width:0;max-width:100%;min-height:46px;padding:11px 12px;border:1px solid #d6dbe4;border-radius:10px;background:#fff;color:#142a40;font-family:inherit;font-size:15px;line-height:1.5;box-shadow:none}
.tfpt-location-widget input::placeholder{color:#7b8695;opacity:1}
.tfpt-location-widget input[readonly]{background:#f7f5fb}
.tfpt-location-widget :is(input,select):focus-visible,.tfpt-sources summary:focus-visible{outline:3px solid #aa87e2;outline-offset:3px}
.tfpt-location-widget .tfpt-location-status{margin:8px 0 0;font-size:12px;line-height:1.55;color:#65748a;overflow-wrap:anywhere}
.tfpt-location-widget .tfpt-location-status[data-error]{color:#9c3048}
.tfpt-location-widget .tfpt-location-results{position:absolute;z-index:20;left:0;right:0;top:100%;margin-top:6px;max-height:300px;overflow-y:auto;overscroll-behavior:contain;border:1px solid #cbb7e9;border-radius:12px;background:#fff;box-shadow:0 10px 28px #25104320;padding:5px}
.tfpt-location-widget [hidden]{display:none!important}
.tfpt-location-widget .tfpt-location-option{display:block;min-width:0;min-height:52px;padding:9px 10px;border-radius:8px;cursor:pointer;line-height:1.4;color:#172d43}
.tfpt-location-option strong{display:block;font-size:14px;font-weight:650;overflow-wrap:anywhere}
.tfpt-location-option small{display:block;margin-top:3px;font-size:11px;color:#627184;overflow-wrap:anywhere}
.tfpt-location-widget .tfpt-location-option:is([aria-selected=true],:hover){background:#eee6fb;color:#562a99}
.tfpt-location-widget .tfpt-location-option[aria-selected=true] small{color:#5d487b}
.tfpt-location-empty{padding:12px 10px;color:#65748a;font-size:13px;line-height:1.5}
.tfpt-sources{display:block;width:100%;max-width:1408px;margin:26px auto 0;padding:0;color:#65748a}
.tfpt-sources details{border-top:1px solid #e1dce9;padding-top:10px}
.tfpt-sources details>summary{display:flex;align-items:center;gap:7px;width:fit-content;min-height:44px;max-width:100%;padding:5px 0;list-style:none;cursor:pointer;color:#6d5b83;font-size:12px;font-weight:500;line-height:1.5}
.tfpt-sources details>summary::-webkit-details-marker{display:none}
.tfpt-sources details>summary::after{content:'⌄';font-size:15px;line-height:1;transition:transform .15s ease}
.tfpt-sources details[open]>summary::after{transform:rotate(180deg)}
.tfpt-sources details>div{display:grid;gap:8px;max-width:900px;padding:6px 0 8px}
.tfpt-sources details p{margin:0;font-size:12px;line-height:1.65;color:#65748a;overflow-wrap:anywhere}
.tfpt-sources a{color:#66409b;text-decoration:underline;text-underline-offset:2px}
#tfpTourApp .tfpt-sources details>summary{font-size:12px;font-weight:500;color:#6d5b83;min-height:44px}
#tfpTourApp .tfpt-sources details p{font-size:12px;color:#65748a}
#tfpCompetitionCreator .tfpt-location-widget{margin:0 0 15px}
#tfpCompetitionCreator .tfpt-sources{margin:22px auto 0;padding:0 20px 16px}
@media(max-width:600px){.tfpt-location-fields{grid-template-columns:minmax(0,1fr);gap:13px}.tfpt-location-widget :is(input:not([type=hidden]),select){font-size:16px}.tfpt-location-widget .tfpt-location-results{max-height:260px}.tfpt-sources details>div{padding-right:8px}}
@media(prefers-reduced-motion:reduce){.tfpt-sources details>summary::after{transition:none}}
