.google-venue-dialog{box-sizing:border-box;width:min(100% - 24px,480px);max-width:480px;max-height:calc(100dvh - 24px);padding:0;border:1px solid var(--line,#d9e5e0);border-radius:24px;background:var(--paper,#fff);color:var(--ink,#173d32);overflow:auto;box-shadow:0 24px 80px #173d3230}
.google-venue-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}
.google-venue-dialog::backdrop{background:#12382d85;backdrop-filter:blur(4px)}
.google-venue-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;border-bottom:1px solid var(--line,#d9e5e0)}
.google-venue-heading h2{margin:0;font-size:20px;line-height:1.3;overflow-wrap:anywhere}
.google-venue-heading button{flex-shrink:0;min-width:44px;min-height:44px;font-size:16px}
.google-venue-body{padding:18px 20px 0;min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain}
.google-venue-body h3{margin:0 0 6px;font-size:18px;line-height:1.4;overflow-wrap:anywhere}
.google-venue-address{margin:0 0 14px;color:var(--muted,#64796e);line-height:1.5;overflow-wrap:anywhere}
.google-venue-status{display:flex;align-items:center;gap:12px;line-height:1.5;padding-bottom:14px;font-size:15px;overflow-wrap:anywhere}
.google-venue-status img{flex-shrink:0}
.google-venue-frame-host:empty{display:none}
.google-venue-frame-host iframe{display:block;box-sizing:border-box;width:100%;min-width:250px;height:min(560px,62dvh);min-height:300px;border:0;border-radius:12px;background:#fff}
.google-venue-footer{display:grid;gap:10px;padding:18px 20px;border-top:1px solid var(--line,#d9e5e0)}
.google-venue-footer .secondary-button{min-height:44px;box-sizing:border-box;font-size:16px;line-height:1.35;text-align:center;white-space:normal;overflow-wrap:anywhere}
.google-venue-note{margin:0;color:var(--muted,#64796e);font-size:13px;line-height:1.5}
@media(max-width:360px){.google-venue-heading,.google-venue-footer{padding-left:14px;padding-right:14px}.google-venue-body{padding-left:14px;padding-right:14px}.google-venue-heading h2{font-size:18px}}
/* The provider frame uses the complete Google component with its attribution.
   Its internal content is never cropped or covered by application controls. */
html.google-venue-provider-frame,html.google-venue-provider-frame body{margin:0;min-width:250px;background:#fff;color:#202124;font-family:Arial,sans-serif}
.google-venue-provider-frame .google-venue-provider-shell{box-sizing:border-box;min-width:250px;padding:0}
.google-venue-provider-frame .google-venue-provider-status{font-size:14px;line-height:1.5;margin:0 0 12px}
.google-venue-provider-frame .google-venue-provider-fallback{display:inline-flex;align-items:center;min-height:44px;font-size:16px;line-height:1.4;color:#1555a8}
.google-venue-provider-frame gmp-place-details{display:block;width:100%;min-width:250px;max-width:400px;min-height:300px;margin:0 auto}

.google-venue-source{margin:0 0 12px;font-size:14px;font-weight:700;line-height:1.5;color:var(--ink,#173d32);overflow-wrap:anywhere}
.google-venue-source[hidden]{display:none}
.google-venue-open{white-space:normal;line-height:1.4;min-height:44px}
