/* WB Roof Area OSM - styles (Satellite default + Accurate Area + Consent Link) */
.wb-roofmap { position: relative; background: #f4f4f4; border-radius: 12px; overflow: hidden; }
.wb-roofmap-topbar { display: flex; gap: 12px; align-items: center; justify-content: space-between; margin-bottom: 6px; flex-wrap: wrap; }
.wb-roofmap-layer-toggle label { margin-right: 10px; font-size: 14px; }
.wb-roofmap-search { display: flex; gap: 6px; }
.wb-roofmap-search-input { padding: 6px 10px; border: 1px solid #ddd; border-radius: 8px; min-width: 240px; }
.wb-roofmap-search-btn { padding: 6px 10px; border-radius: 8px; border: 1px solid #ddd; background: #fff; cursor: pointer; }
.wb-roofmap-angle label { display: flex; align-items: center; gap: 8px; }
.wb-roofmap-angle-input { width: 80px; padding: 6px 8px; border: 1px solid #ddd; border-radius: 8px; }
.wb-roofmap-blocker { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; text-align: center; padding: 16px; background: repeating-linear-gradient(45deg, #fafafa, #fafafa 10px, #f0f0f0 10px, #f0f0f0 20px); z-index: 999; }
.wb-roofmap-blocker p { margin: 0; font-weight: 500; }
.wb-roofmap-actions { display: flex; gap: 10px; flex-wrap: wrap; justify-content: center; }
.wb-roofmap-actions button, .wb-roofmap-actions a { padding: 8px 12px; border-radius: 8px; border: 1px solid #ddd; cursor: pointer; background: #fff; text-decoration: none; }
.wb-roofmap-toolbar { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: space-between; margin: 8px 2px 0; font-size: 14px; }
.wb-roofmap-buttons button { margin-right: 6px; padding: 6px 10px; border-radius: 8px; border: 1px solid #ddd; background: #fff; cursor: pointer; }
.wb-roofmap-readout { font-weight: 600; }
.wb-roofmap-plan { margin-left: 8px; opacity: .7; }
