.guest-picker{position:relative;min-width:0;color:var(--ink)}
.guest-picker>summary{list-style:none;cursor:pointer;position:relative;padding-right:23px;min-height:54px;display:flex;flex-direction:column;justify-content:center;gap:10px}
.guest-picker>summary::-webkit-details-marker{display:none}
.guest-picker-label{font-size:11px;font-weight:600;line-height:1.4}
.guest-picker-summary{font-size:14px;font-weight:600;line-height:1.5}
.guest-picker-chevron{position:absolute;right:0;bottom:9px;color:var(--gold)}
.guest-picker[open]{z-index:12}
.guest-picker-panel{position:absolute;top:calc(100% + 17px);right:0;width:min(350px,calc(100vw - 60px));padding:20px;background:var(--paper);border:1px solid var(--line);border-top:2px solid var(--gold);box-shadow:0 16px 35px #0003}
body[data-theme=roman] .guest-picker-panel{background:#292116}
.guest-counts,.guest-ages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.guest-ages:not(:empty){margin-top:16px}
body[data-theme] .guest-picker-panel label{display:grid;gap:7px;border:0;padding:0;font-size:11px;font-weight:600;min-width:0}
.guest-picker-panel label small{font-size:10px;font-weight:400;color:var(--muted)}
body[data-theme] .guest-picker-panel select{width:100%;min-width:0;margin:0;padding:10px 8px;min-height:44px;font-size:12px;color:var(--ink);background:var(--paper);border:1px solid var(--line)}
body[data-theme=roman] .guest-picker-panel select{background:#19140e}
.guest-policy-note{font-size:11px;line-height:1.7;margin:16px 0 0;color:var(--muted)}
.guest-picker-done{margin-top:14px;min-height:44px;padding:9px 18px;border:1px solid var(--line);background:var(--gold);color:#20180f;font:600 12px var(--sans);cursor:pointer}
.guest-picker [hidden]{display:none!important}
.guest-picker-expanded{border:1px solid var(--line);padding:16px;grid-column:1/-1}
.guest-picker-expanded>summary{min-height:38px;gap:4px}
.guest-picker-expanded .guest-picker-panel{position:static;width:100%;padding:16px 0 0;background:none!important;border:0;box-shadow:none}
.guest-picker-expanded .guest-policy-note{max-width:70ch}
.family-search-note{grid-column:1/-1;font-size:12px;line-height:1.8;color:var(--muted);border-left:2px solid var(--gold);padding:10px 16px;margin:0 0 24px}
.room-child-note{font-size:11px;line-height:1.8;color:var(--muted)}
@media(max-width:760px){.guest-picker-panel{left:0;right:auto}.guest-picker-summary{font-size:12px}.guest-picker-expanded .guest-ages{grid-template-columns:repeat(2,minmax(0,1fr))}.guest-picker-expanded .guest-picker-panel{width:100%}}
