/* Shared finishing touches, with the existing stone materials and native controls. */
html body.grid-site.street-site .home-about p + p { margin-top: .75rem; }
html body.grid-site.street-site footer.home-footer { flex-wrap: wrap; max-width: calc(100% - 2rem); gap: .5rem 1rem; }
html body.grid-site.street-site :is(.text-button, .save-button, .help-panel summary) { min-height: 44px; }
html body.grid-site.street-site .help-page { max-width: 48rem; }
html body.grid-site.street-site .help-panel { display: block; margin-block: 1rem; padding: 1.25rem; overflow-wrap: anywhere; }
html body.grid-site.street-site .help-panel h2 { margin-top: 0; }
html body.grid-site.street-site .help-panel h3 { margin-bottom: .5rem; }
html body.grid-site.street-site .help-panel details { margin-block: .5rem; }
html body.grid-site.street-site .help-panel summary { cursor: pointer; padding-block: .6rem; line-height: 1.5; }
html body.grid-site.street-site .help-panel details p { padding-inline: .5rem; }
html body.grid-site.street-site .connection-note { width: min(68rem, calc(100% - 2rem)); margin: .75rem auto; padding: .75rem 1rem; background: var(--panel); border: 2px solid var(--ink); }
html body.grid-site.street-site .back-to-top { position: fixed; right: max(1rem, env(safe-area-inset-right)); bottom: max(1rem, env(safe-area-inset-bottom)); z-index: 15; min-height: 44px; padding: .5rem .75rem; background: var(--panel); color: var(--ink); box-shadow: 0 3px 0 #7e7e7e; }
html body.grid-site.street-site .save-status { position: fixed; left: 50%; transform: translateX(-50%); z-index: 20; width: max-content; max-width: calc(100% - 2rem); padding: .75rem 1rem; background: var(--panel); color: var(--ink); pointer-events: auto; bottom: max(1rem, env(safe-area-inset-bottom)); }
html body.grid-site.street-site .save-status:has([data-save-undo]) { display: flex; align-items: center; flex-wrap: wrap; gap: .5rem 1rem; max-height: 40dvh; overflow-y: auto; }
html body.grid-site.street-site [data-save-undo] { min-height: 44px; padding: .5rem .75rem; flex-shrink: 0; }
html body.grid-site.street-site:has(.save-status:not(:empty)) .back-to-top { visibility: hidden; }
@media (max-width: 600px) { html body.grid-site.street-site .help-panel { padding: 1rem .75rem; } }
@media print { .back-to-top, .connection-note, .save-status { display: none !important; } }
