.place-picker [hidden] {display:none!important}
.place-picker-controls {display:grid;grid-template-columns:minmax(0,1fr) auto auto;border:1px solid #91a8a1;border-radius:10px;background:#f7f9f6;align-items:center}
.place-picker-controls:focus-within {outline:3px solid #a64025;outline-offset:3px}
.place-picker input {width:100%;min-width:0;min-height:54px;border:0;background:transparent;color:#123a4a;padding:.55rem .6rem;font:400 1rem/1.6 'Noto Sans Thai',sans-serif;border-radius:10px;outline:none}
.place-picker input::placeholder {color:#48616a;opacity:1}
.place-picker input:focus-visible {outline:none}
.place-picker-controls button {min-width:48px;min-height:52px;padding:8px;border:0;border-left:1px solid #d4dfda;background:transparent;color:#123a4a;font:600 1.2rem/1.5 sans-serif;border-radius:8px;cursor:pointer}
.place-picker-controls button:disabled {opacity:.5;cursor:default}
.place-picker-list {margin-top:10px;border:1px solid #91a8a1;border-radius:10px;background:#fff;max-height:min(360px,45dvh);overflow:auto;overscroll-behavior:contain;scroll-padding-top:60px}
.place-picker-date {position:sticky;top:0;margin:0;padding:.6rem .7rem;background:#e5ede8;color:#123a4a;font:600 .9rem/1.7 'Noto Sans Thai',sans-serif;z-index:1;overflow-wrap:anywhere}
.place-picker-option {min-height:56px;padding:.65rem .7rem;border-top:1px solid #e3e8e1;color:#123a4a;cursor:pointer;overflow-wrap:anywhere}
.place-picker-option:hover,.place-picker-option.is-active {background:#e8f0ed;box-shadow:inset 4px 0 #123a4a}
.place-picker-option[aria-selected=true] .place-picker-name {font-weight:600}
.place-picker-name,.place-picker-kind {display:block;line-height:1.8}
.place-picker-name {font-size:1rem}
.place-picker-kind {font-size:.85rem;color:#31535d}
.place-picker-empty {padding:1rem;font-size:1rem;color:#123a4a}
.place-picker-help {margin:.5rem 0;font-size:.85rem;color:#31535d;line-height:1.8}
@media(max-width:760px) {.place-picker-list {max-height:45dvh}}
