.info-icon{width:23px;height:23px;flex:none;vertical-align:middle}
.tour-toolbar .viewer-icon-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:100%;order:2}
.tour-toolbar .viewer-icon-row button{display:flex;align-items:center;justify-content:center;padding:10px;min-width:0;text-align:center}
.tour-toolbar #back-tour{order:1;display:flex;align-items:center;gap:10px}
.tour-toolbar #tour-information{order:3;display:flex;align-items:center;gap:10px}
.tour-toolbar #tour-review-button{display:none}
.tour-toolbar #tour-save[aria-pressed=true] .info-icon{fill:var(--red);stroke:var(--red)}
#place-information{width:min(860px,calc(100vw - 48px));height:min(840px,90dvh);max-width:none;max-height:90dvh;padding:0;overflow:hidden;border:1px solid #743c42;border-radius:20px;background:var(--surface);color:var(--ink)}
#place-information[open]{display:flex;flex-direction:column}
#place-information::backdrop{background:rgba(3,8,18,.78);backdrop-filter:blur(7px)}
#place-information header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 28px;border-bottom:1px solid var(--border);flex:none}
#place-information header h2{margin:0;font-size:24px;line-height:1.3}
#place-information header button{flex:none;min-width:44px;min-height:44px}
.place-info-scroll{padding:4px 28px 28px;overflow-y:auto;overscroll-behavior:contain;min-height:0;overflow-wrap:anywhere}
.place-info-scroll h3{font-size:22px}.place-info-scroll section{margin-top:24px;padding-top:8px;border-top:1px solid var(--border)}
.info-prose{white-space:pre-wrap;line-height:1.75}.info-contacts{display:grid;gap:16px;margin:24px 0}.info-contact{display:flex;align-items:flex-start;gap:12px}.info-contact a{color:var(--ink);text-underline-offset:3px}.info-contact .info-icon{color:#ee807a;margin-top:3px}
.info-hours{display:grid;gap:8px}.info-hours>div{display:flex;justify-content:space-between;gap:24px;padding:8px 0;border-bottom:1px solid var(--border)}.info-hours dt{text-transform:capitalize}.info-hours dd{margin:0;text-align:end}
.info-services{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:12px 22px}.info-documents{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:24px}.info-documents a{display:flex;align-items:center;gap:12px;text-decoration:none;min-height:60px}.info-documents small{display:block;color:var(--muted)}
.information-editor{border-top:1px solid var(--border);padding-top:20px;margin-top:24px}.information-editor label{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.information-editor details{margin:18px 0}.information-editor details label{margin-top:16px}.pdf-editor{display:grid;gap:16px}.pdf-editor fieldset{min-width:0;border:1px solid var(--border);border-radius:10px;padding:14px}.pdf-editor input{min-width:0;max-width:100%}.pdf-editor legend{padding:0 6px}.information-editor textarea{width:100%;resize:vertical}
@media(max-width:760px){
 .tour-toolbar .viewer-icon-row{display:contents}.tour-toolbar #tour-save,.tour-toolbar #viewer-share,.tour-toolbar #viewer-report{display:none!important}
 .tour-toolbar #back-tour{order:1;justify-content:center}.tour-toolbar #tour-information{order:2;justify-content:center}.tour-toolbar #tour-categories{order:3}.tour-toolbar #tour-review-button{order:4;display:block}.tour-toolbar #tour-more{order:5;display:block}
 .tour-toolbar .info-action-label{display:none}.tour-toolbar .info-icon{width:24px;height:24px}.tour-toolbar button{flex:1!important;min-width:44px!important;padding:8px!important}
}
@media(max-width:600px){
 #place-information{inset:0;margin:0;width:100%;height:100dvh;max-height:100dvh;border:0;border-radius:0}
 #place-information header{padding:calc(14px + env(safe-area-inset-top)) 16px 14px}#place-information header h2{font-size:21px}.place-info-scroll{padding:0 20px calc(24px + env(safe-area-inset-bottom))}.info-documents{grid-template-columns:1fr}.info-hours>div{gap:14px}
}

/* Keep complete descriptions in storage; limit only card previews. */
.tour-card .description{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden;overflow-wrap:anywhere;max-height:5.4em}
.translation-count{display:block;margin-top:6px;font-size:13px;color:var(--muted)}
.translation-count.over-limit{color:#ff8b83;font-weight:700}
#tour-form textarea[aria-invalid="true"]{border:2px solid #ff6b63;outline:1px solid #ff6b63}


.copy-hours{margin:8px 0 0 8px;white-space:normal}
.place-source-notice{font-size:11px;line-height:1.5;color:#aab7c9;margin:24px 0 0;padding-top:14px;border-top:1px solid var(--border)}
