:root{--ig-green:#1c8553;--ig-green-d:#0f5f3e;--ig-green-l:#36b56e;--ig-earth:#7b5932;--ig-ink:#1a2b22;--ig-bg:#f7faf6;--ig-card:rgba(255,255,255,0.86);--ig-line:#dce4de;--ig-radius:16px;--ig-shadow:0 8px 28px rgba(20,50,30,.12);--ig-shadow-lg:0 20px 60px rgba(15,40,25,.22);--ig-topbar-h:64px;--ig-font:"Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;--ig-gradient-start:#0e503a;--ig-gradient-end:#1e8a5c;--ig-backdrop-blur:12px}html[data-theme="dark"],body.theme-dark{--ig-bg:#0f1713;--ig-card:rgba(22,33,27,0.84);--ig-ink:#e8f1ea;--ig-line:#26352b;--ig-gradient-start:#093a2a;--ig-gradient-end:#13744d;--ig-backdrop-blur:8px}body.has-map-shell .topbar.compact-topbar{background:linear-gradient(125deg,var(--ig-gradient-start) 0%,var(--ig-gradient-end) 100%) !important;box-shadow:var(--ig-shadow-lg) !important;backdrop-filter:blur(var(--ig-backdrop-blur)) !important;-webkit-backdrop-filter:blur(var(--ig-backdrop-blur)) !important;min-height:var(--ig-topbar-h) !important}body.has-map-shell .app-menu{background:var(--ig-card) !important;backdrop-filter:blur(var(--ig-backdrop-blur)) !important;-webkit-backdrop-filter:blur(var(--ig-backdrop-blur)) !important}.extra-info-cards{display:flex;flex-wrap:wrap;gap:16px;margin:8px 0}.extra-info-cards .extra-card{flex:1 1 calc(50% - 16px);background:var(--ig-card);border:1px solid var(--ig-line);border-radius:var(--ig-radius);padding:16px 20px;box-shadow:var(--ig-shadow);display:flex;flex-direction:column;gap:6px;min-width:260px}@media (max-width:700px){.extra-info-cards .extra-card{flex-basis:100%}}.extra-info-cards .extra-card h4{margin:0 0 6px 0;font-size:1.1rem;display:flex;align-items:center;gap:8px;font-weight:700;color:var(--ig-ink)}.extra-info-cards .extra-card h4 span{font-size:1.4rem;line-height:1}.extra-info-cards .extra-card p{margin:0;font-size:0.95rem;line-height:1.4;color:var(--ig-ink)}button,.layer-toggle-btn,.cadastre-tog,.zoom-controls button{transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease}button:hover,.layer-toggle-btn:hover,.cadastre-tog:hover,.zoom-controls button:hover{transform:scale(1.04)}body.has-map-shell .topbar.compact-topbar{position:fixed !important;top:calc(env(safe-area-inset-top,0px)+20px) !important;left:20px !important;right:auto !important;width:min(920px,calc(100vw - 240px)) !important;max-width:920px !important;min-width:0 !important;min-height:64px !important;height:auto !important;display:flex !important;align-items:center !important;flex-wrap:nowrap !important;gap:10px !important;padding:10px 12px !important;border-radius:18px !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important;transform:none !important;box-sizing:border-box !important}body.has-map-shell .topbar.compact-topbar .brand{flex:0 0 auto !important}body.has-map-shell .top-search.compact-search{flex:1 1 auto !important;width:auto !important;max-width:none !important;min-width:260px !important;margin:0 !important}body.has-map-shell .topbar.compact-topbar .topbar-right{position:fixed !important;top:calc(env(safe-area-inset-top,0px)+20px) !important;right:20px !important;left:auto !important;inset:auto 20px auto auto !important;display:flex !important;align-items:center !important;justify-content:flex-end !important;gap:10px !important;margin:0 !important;z-index:2300 !important}body.has-map-shell .topbar.compact-topbar .topbar-right button{width:52px !important;height:52px !important;min-width:52px !important;border-radius:15px !important;border:1px solid rgba(17,54,35,.18) !important;background:rgba(255,255,255,.94) !important;color:#103221 !important;box-shadow:0 10px 26px rgba(8,28,18,.18) !important}body.has-map-shell .topbar.compact-topbar .topbar-right .lang-toggle{width:auto !important;min-width:58px !important;padding:0 12px !important;font-weight:800 !important;letter-spacing:0 !important}body.has-map-shell .topbar.compact-topbar .topbar-right .lang-code{font-size:14px !important;line-height:1 !important}body.has-map-shell .lang-picker{width:168px !important;min-width:168px !important;z-index:2400 !important;background:var(--ig-card) !important;color:var(--ig-ink) !important;border:1px solid var(--ig-line) !important;border-radius:14px !important;box-shadow:var(--ig-shadow-lg) !important;padding:6px !important}body.has-map-shell .lang-picker[aria-hidden="true"]{display:none !important}body.has-map-shell .lang-picker[aria-hidden="false"]{display:block !important;opacity:1 !important;transform:translateY(0) !important;pointer-events:auto !important}body.has-map-shell .lang-option{display:flex !important;align-items:center !important;gap:10px !important;width:100% !important;padding:10px 12px !important;border-radius:10px !important;color:var(--ig-ink) !important;font-weight:700 !important}body.has-map-shell .lang-option.active{background:rgba(28,133,83,.14) !important;color:var(--ig-green-d) !important}@media (max-width:980px){body.has-map-shell .topbar.compact-topbar{width:calc(100vw - 220px) !important}body.has-map-shell .top-search.compact-search{min-width:0 !important}}@media (max-width:760px){body.has-map-shell .topbar.compact-topbar{top:calc(env(safe-area-inset-top,0px)+8px) !important;left:8px !important;width:calc(100vw - 16px) !important;padding:8px 142px 8px 8px !important;flex-wrap:wrap !important;gap:8px !important}body.has-map-shell .topbar.compact-topbar .brand{flex:1 1 auto !important;min-width:0 !important}body.has-map-shell .top-search.compact-search{flex:1 1 100% !important}body.has-map-shell .topbar.compact-topbar .topbar-right{top:calc(env(safe-area-inset-top,0px)+8px) !important;right:8px !important;inset:auto 8px auto auto !important;gap:6px !important}body.has-map-shell .topbar.compact-topbar .topbar-right button{width:42px !important;height:42px !important;min-width:42px !important;border-radius:12px !important}body.has-map-shell .topbar.compact-topbar .topbar-right .lang-toggle{min-width:46px !important;padding:0 8px !important}}html,body{color-scheme:light !important}html[data-theme="dark"],body.theme-dark{--ig-bg:#f7faf6 !important;--ig-card:rgba(255,255,255,0.92) !important;--ig-ink:#1a2b22 !important;--ig-line:#dce4de !important;--ig-gradient-start:#0e503a !important;--ig-gradient-end:#1e8a5c !important}#btnThemeToggle,.theme-toggle{display:none !important}body.has-map-shell .topbar.compact-topbar .topbar-right{width:auto !important}body.has-map-shell .topbar.compact-topbar .topbar-right button{width:52px !important;height:52px !important;min-width:52px !important}@media (max-width:760px){body.has-map-shell .topbar.compact-topbar{padding-right:104px !important}body.has-map-shell .topbar.compact-topbar .topbar-right{gap:6px !important}}@media (max-width:760px){:root{--ig-mobile-topbar-h:116px}body.has-map-shell{min-height:100dvh !important;overflow:hidden !important;background:#e8f4df !important}body.has-map-shell .topbar.compact-topbar{top:calc(env(safe-area-inset-top,0px)+8px) !important;left:8px !important;right:8px !important;width:auto !important;max-width:none !important;min-width:0 !important;min-height:0 !important;height:auto !important;display:grid !important;grid-template-columns:minmax(0,1fr) auto !important;grid-template-areas:"brand actions" "search search" !important;align-items:center !important;gap:8px !important;padding:8px !important;border-radius:20px !important;background:linear-gradient(135deg,#0d5a3d 0%,#158856 100%) !important;box-shadow:0 14px 36px rgba(7,31,18,.28) !important;box-sizing:border-box !important;overflow:visible !important;transform:none !important}body.has-map-shell .topbar.compact-topbar .brand{grid-area:brand !important;display:inline-flex !important;align-items:center !important;gap:8px !important;min-width:0 !important;height:40px !important;color:#f4fff3 !important;text-decoration:none !important}body.has-map-shell .topbar.compact-topbar .brand .logo{display:inline-flex !important;width:40px !important;height:40px !important;min-width:40px !important;border-radius:14px !important;background:rgba(255,255,255,.16) !important;color:#f4fff3 !important;align-items:center !important;justify-content:center !important}body.has-map-shell .topbar.compact-topbar .brand strong{display:block !important;font-size:17px !important;line-height:1 !important;font-weight:900 !important;color:#f4fff3 !important;white-space:nowrap !important;overflow:hidden !important;text-overflow:ellipsis !important}body.has-map-shell .topbar.compact-topbar .brand .brand-text>span{display:none !important}body.has-map-shell .topbar.compact-topbar .topbar-right{grid-area:actions !important;position:static !important;inset:auto !important;top:auto !important;right:auto !important;left:auto !important;width:auto !important;display:inline-flex !important;align-items:center !important;justify-content:flex-end !important;gap:6px !important;margin:0 !important;z-index:auto !important}body.has-map-shell .topbar.compact-topbar .topbar-right button,body.has-map-shell .topbar.compact-topbar .topbar-right .lang-toggle,body.has-map-shell .topbar.compact-topbar .topbar-right .menu-toggle{width:42px !important;height:42px !important;min-width:42px !important;padding:0 !important;border-radius:14px !important;background:rgba(255,255,255,.95) !important;border:1px solid rgba(13,49,30,.12) !important;box-shadow:0 6px 18px rgba(8,28,18,.18) !important;color:#0c3622 !important}body.has-map-shell .topbar.compact-topbar .topbar-right .lang-code{font-size:13px !important;font-weight:900 !important}body.has-map-shell .top-search.compact-search{grid-area:search !important;width:100% !important;max-width:none !important;min-width:0 !important;height:48px !important;margin:0 !important;display:grid !important;grid-template-columns:auto minmax(0,1fr) 46px !important;align-items:center !important;gap:8px !important;padding:5px !important;border-radius:17px !important;background:rgba(255,255,255,.14) !important;box-shadow:none !important;box-sizing:border-box !important}body.has-map-shell .top-search.compact-search .tabs{display:flex !important;align-items:center !important;gap:4px !important;min-width:0 !important;height:38px !important;padding:0 !important;background:transparent !important}body.has-map-shell .top-search.compact-search .tab{width:42px !important;min-width:42px !important;height:38px !important;padding:0 !important;border-radius:13px !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;font-size:0 !important;line-height:1 !important;white-space:nowrap !important;overflow:hidden !important}body.has-map-shell .top-search.compact-search .tab::before{font-size:18px !important;font-weight:900 !important;line-height:1 !important}body.has-map-shell .top-search.compact-search .tab[data-mode="address"]::before{content:"📍"}body.has-map-shell .top-search.compact-search .tab[data-mode="parcel"]::before{content:"#"}body.has-map-shell .top-search.compact-search .tab.active{width:74px !important;min-width:74px !important;padding:0 10px !important}body.has-map-shell .top-search.compact-search .tab.active[data-mode="address"]::before{content:"📍 adres";font-size:13px !important}body.has-map-shell .top-search.compact-search .tab.active[data-mode="parcel"]::before{content:"# działka";font-size:13px !important}body.has-map-shell .top-search.compact-search .search-wrap{min-width:0 !important;width:100% !important;height:38px !important}body.has-map-shell .top-search.compact-search #searchInput{width:100% !important;min-width:0 !important;height:38px !important;padding:0 11px !important;border-radius:13px !important;font-size:15px !important;box-sizing:border-box !important}body.has-map-shell .top-search.compact-search #searchInput::placeholder{color:transparent !important}body.has-map-shell .top-search.compact-search button.primary{width:42px !important;min-width:42px !important;height:38px !important;border-radius:13px !important;padding:0 !important;display:inline-flex !important;align-items:center !important;justify-content:center !important}body.has-map-shell .map-status,body.has-map-shell .map-help{display:none !important}body.has-map-shell .zoom-controls button{width:52px !important;height:52px !important;min-width:52px !important;border-radius:17px !important;font-size:28px !important;box-shadow:0 12px 26px rgba(8,28,18,.20) !important}body.has-map-shell .map-toggle-wrap .layer-toggle-btn,body.has-map-shell .map-toggle-wrap .cadastre-tog{width:52px !important;height:52px !important;min-width:52px !important;min-height:52px !important;padding:0 !important;border-radius:17px !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;box-shadow:0 12px 26px rgba(8,28,18,.20) !important}body.has-map-shell .map-toggle-wrap .layer-label{display:none !important}body.has-map-shell .map-toggle-wrap .layer-icon{font-size:22px !important;line-height:1 !important}body.has-map-shell .lang-picker{position:fixed !important;top:calc(env(safe-area-inset-top,0px)+58px) !important;right:58px !important;left:auto !important;width:176px !important;z-index:3000 !important}body.has-map-shell .app-menu{position:fixed !important;top:calc(env(safe-area-inset-top,0px)+58px) !important;right:8px !important;left:auto !important;width:min(270px,calc(100vw - 16px)) !important;z-index:3000 !important}}@media (max-width:380px){body.has-map-shell .topbar.compact-topbar .brand strong{font-size:15px !important}body.has-map-shell .top-search.compact-search{grid-template-columns:auto minmax(0,1fr) 42px !important;gap:6px !important}body.has-map-shell .top-search.compact-search .tab,body.has-map-shell .top-search.compact-search button.primary{width:38px !important;min-width:38px !important}body.has-map-shell .top-search.compact-search .tab.active{width:64px !important;min-width:64px !important}body.has-map-shell .top-search.compact-search .tab.active[data-mode="address"]::before,body.has-map-shell .top-search.compact-search .tab.active[data-mode="parcel"]::before{font-size:12px !important}}@media (max-width:760px){body.has-map-shell .top-search.compact-search .tabs,body.has-map-shell .top-search.compact-search .search-wrap,body.has-map-shell .top-search.compact-search #searchInput,body.has-map-shell .top-search.compact-search button.primary{grid-column:auto !important;grid-row:auto !important}body.has-map-shell .top-search.compact-search .tabs{width:auto !important;max-width:none !important}}@media (max-width:760px){body.has-map-shell .topbar.compact-topbar{gap:6px !important;padding:7px !important;border-radius:18px !important}body.has-map-shell .topbar.compact-topbar .brand,body.has-map-shell .topbar.compact-topbar .brand .logo{height:36px !important}body.has-map-shell .topbar.compact-topbar .brand .logo{width:36px !important;min-width:36px !important;border-radius:13px !important}body.has-map-shell .topbar.compact-topbar .brand strong{font-size:16px !important}body.has-map-shell .topbar.compact-topbar .topbar-right button,body.has-map-shell .topbar.compact-topbar .topbar-right .lang-toggle,body.has-map-shell .topbar.compact-topbar .topbar-right .menu-toggle{width:38px !important;height:38px !important;min-width:38px !important;border-radius:13px !important}body.has-map-shell .top-search.compact-search{height:44px !important;padding:5px !important;border-radius:16px !important}body.has-map-shell .top-search.compact-search .tabs,body.has-map-shell .top-search.compact-search .search-wrap,body.has-map-shell .top-search.compact-search .tab,body.has-map-shell .top-search.compact-search #searchInput,body.has-map-shell .top-search.compact-search button.primary{height:34px !important}body.has-map-shell .top-search.compact-search .tab{width:38px !important;min-width:38px !important;border-radius:12px !important}body.has-map-shell .top-search.compact-search .tab.active{width:68px !important;min-width:68px !important}body.has-map-shell .top-search.compact-search .tab.active[data-mode="address"]::before,body.has-map-shell .top-search.compact-search .tab.active[data-mode="parcel"]::before{font-size:12.5px !important}body.has-map-shell .top-search.compact-search #searchInput{font-size:14px !important;border-radius:12px !important}body.has-map-shell .top-search.compact-search button.primary{width:38px !important;min-width:38px !important;border-radius:12px !important}}body.has-map-shell .right-panel.parcel-drawer{width:min(1180px,calc(100vw - 48px)) !important;max-height:calc(100dvh - 104px) !important;border-radius:24px !important;box-shadow:0 30px 90px rgba(5,25,13,.30) !important}body.has-map-shell .right-panel.parcel-drawer .report-head{min-height:76px !important}body.has-map-shell .right-panel.parcel-drawer .report-content{padding:16px 18px 18px !important;background:linear-gradient(180deg,#f7faf5 0%,#eef5ee 100%) !important}body.has-map-shell .report-share{display:grid !important;grid-template-columns:1fr 1fr 1fr !important;gap:10px !important;padding:12px 16px !important;background:rgba(255,255,255,.96) !important;border-bottom:1px solid rgba(15,80,45,.12) !important;box-shadow:0 10px 22px rgba(10,40,20,.06) !important}body.has-map-shell .share-btn{min-height:48px !important;border-radius:14px !important;font-size:15px !important;font-weight:900 !important}body.has-map-shell .share-btn--pdf{background:linear-gradient(135deg,#9cff32,#19b66a) !important;color:#082015 !important;border:2px solid rgba(8,32,21,.15) !important;box-shadow:0 12px 24px rgba(33,155,81,.22) !important}body.has-map-shell .report-content .report-tabs{position:sticky !important;top:0 !important;z-index:6 !important;padding:8px 0 10px !important;margin:-4px 0 8px !important;background:linear-gradient(180deg,#f7faf5 70%,rgba(247,250,245,0)) !important}body.has-map-shell .report-content .tab-content{display:grid !important;gap:14px !important}body.has-map-shell .parcel-decision-hero{grid-template-columns:minmax(280px,38%) minmax(0,1fr) !important;gap:16px !important;padding:16px !important;border-radius:20px !important}body.has-map-shell .parcel-visual{min-height:260px !important;height:clamp(260px,34vh,390px) !important}body.has-map-shell .parcel-facts-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}body.has-map-shell .parcel-score-summary{border-radius:18px !important;box-shadow:inset 0 0 0 1px rgba(20,185,96,.10) !important}.pv-insight-card{display:grid;gap:14px;padding:16px;border-radius:20px;border:1px solid rgba(204,160,31,.26);background:linear-gradient(135deg,#fffbe8 0%,#f3fff0 58%,#edf9ff 100%);box-shadow:0 18px 38px rgba(70,56,10,.09);overflow:hidden}.pv-insight-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center}.pv-eyebrow{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:rgba(255,199,45,.20);color:#745212;font-size:12px;font-weight:1000;text-transform:uppercase;letter-spacing:.04em}.pv-insight-head h3{margin:8px 0 4px;color:#10251a;font-size:clamp(1.2rem,2.2vw,1.65rem);letter-spacing:-.03em}.pv-insight-head p,.pv-map-box small,.pv-upsell-note{margin:0;color:#5f6648;font-weight:750}.pv-score{width:104px;height:104px;border-radius:28px;display:grid;place-items:center;align-content:center;background:#fff;border:4px solid #ffc83d;color:#10251a;box-shadow:0 14px 30px rgba(134,93,0,.13)}.pv-score strong{font-size:2.3rem;line-height:.9}.pv-score span{font-weight:1000;color:#0d7a44}.pv-score small{display:block;margin-top:3px;color:#667052;font-size:10px;font-weight:1000;text-transform:uppercase}.pv-insight-grid{display:grid;grid-template-columns:minmax(250px,.9fr) minmax(0,1.1fr);gap:14px;align-items:stretch}.pv-map-box,.pv-metrics>div,.pv-lists>div,.pv-upsell-note{border:1px solid rgba(28,83,49,.12);background:rgba(255,255,255,.78);border-radius:16px}.pv-map-box{padding:14px;display:grid;gap:10px}.pv-map-box strong{color:#18301f;font-size:1rem}.solar-heatmap{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;padding:14px;min-height:136px;border-radius:18px;background:radial-gradient(circle at 78% 18%,rgba(255,235,110,.36),rgba(10,45,25,.96) 48%,rgba(5,25,15,.98));overflow:hidden}.solar-heatmap span{min-height:22px;border-radius:8px;background:linear-gradient(135deg,rgba(255,238,88,var(--sun)),rgba(58,215,113,calc(var(--sun) * .62)));box-shadow:0 0 18px rgba(255,222,60,calc(var(--sun) * .22))}.solar-heatmap b{position:absolute;right:12px;top:10px;font-size:28px;filter:drop-shadow(0 5px 10px rgba(0,0,0,.2))}.pv-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pv-metrics>div{padding:13px}.pv-metrics span{display:block;color:#68725a;font-size:12px;font-weight:1000;text-transform:uppercase}.pv-metrics strong{display:block;margin-top:4px;color:#10251a;font-size:1.05rem;overflow-wrap:anywhere}.pv-lists{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pv-lists>div{padding:14px 16px}.pv-lists h4{margin:0 0 8px;color:#10251a}.pv-lists ul{margin:0;padding-left:18px;color:#38513f;font-weight:760}.pv-lists li+li{margin-top:5px}.pv-upsell-note{padding:12px 14px;background:rgba(255,255,255,.72)}@media (max-width:860px){body.has-map-shell .right-panel.parcel-drawer{inset:auto 0 0 0 !important;width:100vw !important;max-width:100vw !important;max-height:calc(100dvh - 180px) !important;border-radius:22px 22px 0 0 !important}body.has-map-shell .right-panel.parcel-drawer .report-head{min-height:66px !important}body.has-map-shell .right-panel.parcel-drawer .report-content{padding:10px !important}body.has-map-shell .report-share{grid-template-columns:1fr 1fr !important;padding:10px !important;gap:8px !important}body.has-map-shell .share-btn--pdf{grid-column:1 / -1 !important}body.has-map-shell .share-btn{min-height:44px !important;font-size:14px !important}body.has-map-shell .report-content .tab-content,body.has-map-shell .parcel-decision-hero,body.has-map-shell .risk-grid{width:100% !important;max-width:none !important}body.has-map-shell .parcel-decision-hero,.pv-insight-grid,.pv-lists{grid-template-columns:1fr !important}body.has-map-shell .parcel-facts-grid,.pv-metrics{grid-template-columns:1fr !important}.pv-insight-card{padding:12px;border-radius:18px}.pv-insight-head{grid-template-columns:1fr}.pv-score{width:92px;height:92px;justify-self:start}}body.has-map-shell .right-panel.parcel-drawer{width:min(1040px,calc(100vw - 44px)) !important;max-height:calc(100dvh - 96px) !important;border-radius:26px !important;background:#f4f8f1 !important}body.has-map-shell .right-panel.parcel-drawer .report-head{min-height:66px !important;padding:14px 56px 13px 18px !important;background:linear-gradient(135deg,#0b5f37 0%,#11824a 55%,#17a862 100%) !important}body.has-map-shell .right-panel.parcel-drawer .report-head h2{font-size:clamp(1rem,1.35vw,1.32rem) !important;letter-spacing:-.02em !important}body.has-map-shell .right-panel.parcel-drawer .report-content{padding:12px 14px 16px !important;background:linear-gradient(180deg,#f8fbf4 0%,#edf5ed 100%) !important}body.has-map-shell .drawer-close{top:12px !important;right:12px !important;width:40px !important;height:40px !important;background:rgba(255,255,255,.96) !important;color:#10291a !important}.report-accordion{display:grid;gap:10px}.report-acc-section{border:1px solid rgba(22,92,52,.13);border-radius:18px;background:rgba(255,255,255,.86);overflow:clip;box-shadow:0 12px 28px rgba(12,43,24,.065)}.report-acc-section[open]{background:#fff;border-color:rgba(22,136,75,.24);box-shadow:0 18px 42px rgba(12,43,24,.105)}.report-acc-summary{list-style:none;cursor:pointer;min-height:54px;padding:0 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;user-select:none;background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(245,250,243,.88))}.report-acc-summary::-webkit-details-marker{display:none}.report-acc-title{display:inline-flex;align-items:center;min-width:0;gap:10px;color:#10251a;font-weight:1000;letter-spacing:-.01em}.report-acc-title b{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:#e9f5ec;box-shadow:inset 0 0 0 1px rgba(22,136,75,.12)}.report-acc-hint{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;padding:6px 10px;border-radius:999px;color:#0f6c3f;background:#e6f5eb;font-size:12px;font-weight:1000;text-transform:uppercase;letter-spacing:.035em}.report-acc-hint::after{content:'⌄';font-size:14px;line-height:1;transition:transform .18s ease}.report-acc-section[open] .report-acc-hint::after{transform:rotate(180deg)}.report-acc-section[open] .report-acc-title b{background:linear-gradient(135deg,#9cff32,#19b66a)}.report-acc-body{padding:12px;border-top:1px solid rgba(22,92,52,.10);background:linear-gradient(180deg,#ffffff 0%,#fbfdf8 100%)}.summary-stack{display:grid;gap:12px}body.has-map-shell .report-accordion .parcel-decision-hero{grid-template-columns:minmax(260px,34%) minmax(0,1fr) !important;padding:14px !important;border-radius:18px !important;box-shadow:none !important;margin:0 !important}body.has-map-shell .report-accordion .parcel-visual{min-height:220px !important;height:clamp(220px,28vh,320px) !important;border-radius:16px !important}body.has-map-shell .report-accordion .parcel-id-block h3{font-size:clamp(2rem,3.3vw,3.25rem) !important}body.has-map-shell .report-accordion .parcel-score-summary{padding:12px !important;border-radius:16px !important}body.has-map-shell .report-accordion .parcel-score-ring{width:78px !important;height:78px !important;border-width:4px !important}body.has-map-shell .report-accordion .parcel-score-ring strong{font-size:2rem !important}body.has-map-shell .report-accordion .parcel-facts-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important}body.has-map-shell .report-accordion .parcel-signal-grid{grid-template-columns:1fr 1fr !important}.comfort-dashboard{border:1px solid rgba(22,136,75,.16);border-radius:18px;background:linear-gradient(135deg,#f5fff4 0%,#ffffff 54%,#f4fbff 100%);padding:14px}.comfort-dashboard-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.comfort-dashboard-head span{display:inline-flex;padding:6px 10px;border-radius:999px;background:#e5f7ea;color:#0d6b3e;font-size:12px;font-weight:1000;text-transform:uppercase;letter-spacing:.04em}.comfort-dashboard-head strong{color:#10251a;font-size:1.02rem}.comfort-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.comfort-mini-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;padding:11px;border-radius:15px;border:1px solid #dce6dc;background:#fff;min-width:0}.comfort-mini-card.ok{background:#f1fbf3;border-color:#bae8c3}.comfort-mini-card.warn{background:#fff9e7;border-color:#efd997}.comfort-mini-card.bad{background:#fff1ef;border-color:#efb8b0}.comfort-mini-icon{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:rgba(255,255,255,.78);box-shadow:inset 0 0 0 1px rgba(0,0,0,.04)}.comfort-mini-card b,.comfort-mini-card strong,.comfort-mini-card small{display:block;min-width:0;overflow-wrap:anywhere}.comfort-mini-card b{color:#617061;font-size:11px;font-weight:1000;text-transform:uppercase;letter-spacing:.035em}.comfort-mini-card strong{margin-top:2px;color:#10251a;font-size:1rem;font-weight:1000;line-height:1.1}.comfort-mini-card small{margin-top:4px;color:#526457;font-weight:760;line-height:1.25}.comfort-next-steps{margin-top:12px;padding:12px 14px;border-radius:15px;background:rgba(15,108,63,.06);border:1px solid rgba(15,108,63,.10)}.comfort-next-steps h4{margin:0 0 8px;color:#0b3a23}.comfort-next-steps ol{margin:0;padding-left:20px;color:#33483a;font-weight:780}.comfort-next-steps li+li{margin-top:4px}body.has-map-shell .report-accordion .risk-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}@media (max-width:860px){body.has-map-shell .right-panel.parcel-drawer{inset:auto 0 0 0 !important;width:100vw !important;max-width:100vw !important;max-height:calc(100dvh - 180px) !important;border-radius:24px 24px 0 0 !important}body.has-map-shell .right-panel.parcel-drawer .report-head{min-height:58px !important;padding:12px 52px 10px 14px !important}body.has-map-shell .right-panel.parcel-drawer .report-content{padding:9px !important}.report-accordion{gap:8px}.report-acc-summary{min-height:50px;padding:0 11px}.report-acc-title{gap:8px;font-size:.94rem}.report-acc-title b{width:30px;height:30px;border-radius:10px}.report-acc-hint{font-size:10px;padding:5px 8px}.report-acc-body{padding:9px}body.has-map-shell .report-accordion .parcel-decision-hero{grid-template-columns:1fr !important;padding:10px !important;border-radius:16px !important}body.has-map-shell .report-accordion .parcel-visual{min-height:190px !important;height:210px !important}body.has-map-shell .report-accordion .parcel-facts-grid,body.has-map-shell .report-accordion .parcel-signal-grid,.comfort-mini-grid,body.has-map-shell .report-accordion .risk-grid{grid-template-columns:1fr !important}.comfort-dashboard{padding:10px;border-radius:16px}.comfort-dashboard-head{align-items:flex-start;flex-direction:column;gap:6px}.comfort-next-steps{padding:10px}}body.has-map-shell .summary-stack--v637{gap:14px !important}body.has-map-shell .parcel-readable-card{display:grid;grid-template-columns:minmax(220px,34%) 1fr;gap:16px;padding:14px;border-radius:24px;background:linear-gradient(135deg,rgba(248,255,250,.98),rgba(231,248,235,.94));border:1px solid rgba(22,163,74,.22);box-shadow:0 14px 34px rgba(15,23,42,.10);color:#10251a}body.has-map-shell .parcel-readable-visual{position:relative;min-height:240px;border-radius:20px;overflow:hidden;background:#10251a;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}body.has-map-shell .parcel-readable-visual .parcel-hero-canvas{width:100%;height:100%;min-height:240px;display:block}body.has-map-shell .parcel-readable-score{position:absolute;right:10px;top:10px;display:inline-flex;align-items:baseline;gap:2px;padding:9px 12px;border-radius:999px;background:rgba(255,255,255,.92);box-shadow:0 10px 24px rgba(0,0,0,.18);font-weight:900}body.has-map-shell .parcel-readable-score b{font-size:23px}body.has-map-shell .parcel-readable-score span{font-size:12px;opacity:.7}body.has-map-shell .parcel-readable-score.ok{color:#047857}body.has-map-shell .parcel-readable-score.warn{color:#b45309}body.has-map-shell .parcel-readable-score.bad{color:#b91c1c}body.has-map-shell .parcel-readable-main{display:flex;flex-direction:column;gap:12px;min-width:0}body.has-map-shell .parcel-readable-title span,body.has-map-shell .pv-eyebrow{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;color:#15803d}body.has-map-shell .parcel-readable-title h3{margin:4px 0 2px;font-size:clamp(22px,3vw,30px);line-height:1.05;color:#0f2419}body.has-map-shell .parcel-readable-title p{margin:0;color:#476052;font-size:13px;line-height:1.35;max-width:58ch}body.has-map-shell .parcel-readable-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}body.has-map-shell .parcel-readable-tile{min-width:0;padding:11px 10px;border-radius:17px;background:rgba(255,255,255,.74);border:1px solid rgba(15,23,42,.08);box-shadow:0 10px 20px rgba(15,23,42,.06)}body.has-map-shell .parcel-readable-tile span{display:block;font-size:21px;line-height:1;margin-bottom:6px}body.has-map-shell .parcel-readable-tile b{display:block;color:#557063;font-size:11px;text-transform:uppercase;letter-spacing:.03em}body.has-map-shell .parcel-readable-tile strong{display:block;color:#0f2419;font-size:15px;line-height:1.18;margin-top:2px;word-break:break-word}body.has-map-shell .parcel-readable-tile small{display:block;color:#64748b;font-size:11px;line-height:1.25;margin-top:4px}body.has-map-shell .parcel-readable-tile.ok{border-color:rgba(22,163,74,.28);background:rgba(236,253,245,.82)}body.has-map-shell .parcel-readable-tile.warn{border-color:rgba(245,158,11,.32);background:rgba(255,251,235,.90)}body.has-map-shell .parcel-readable-tile.bad{border-color:rgba(239,68,68,.32);background:rgba(254,242,242,.92)}body.has-map-shell .parcel-readable-action{padding:12px 14px;border-radius:18px;background:#ffffff;border:1px solid rgba(15,23,42,.08)}body.has-map-shell .parcel-readable-action b{display:block;margin-bottom:8px;color:#0f2419}body.has-map-shell .parcel-readable-action ul{margin:0;padding-left:18px;color:#334155}body.has-map-shell .parcel-readable-action li{margin:4px 0;line-height:1.35}body.has-map-shell .parcel-tech-details{border-radius:16px;padding:9px 12px;background:rgba(255,255,255,.55);color:#475569;font-size:12px}body.has-map-shell .parcel-tech-details summary{cursor:pointer;font-weight:800;color:#166534}body.has-map-shell .parcel-tech-details code{white-space:normal;word-break:break-word}body.has-map-shell .comfort-dashboard--compact{padding:14px !important;border-radius:22px !important}body.has-map-shell .comfort-mini-grid--compact{grid-template-columns:repeat(4,minmax(0,1fr)) !important}body.has-map-shell .pv-insight-card--v637{border-radius:24px;padding:18px;border:1px solid rgba(250,204,21,.34);background:radial-gradient(circle at top left,rgba(254,240,138,.42),transparent 34%),linear-gradient(135deg,#fffef3,#f4fff7 72%);color:#172113;box-shadow:0 18px 44px rgba(120,75,0,.12)}body.has-map-shell .pv-insight-card--v637 .pv-insight-head{align-items:flex-start;gap:14px}body.has-map-shell .pv-insight-card--v637 .pv-insight-head h3{color:#1f3d14;font-size:clamp(21px,2.7vw,30px)}body.has-map-shell .pv-insight-card--v637 .pv-insight-head p{color:#5a6b45;max-width:70ch}body.has-map-shell .pv-insight-card--v637 .pv-score{background:#fff;color:#854d0e;border:1px solid rgba(245,158,11,.26);box-shadow:0 12px 30px rgba(245,158,11,.18)}body.has-map-shell .pv-decision{display:flex;gap:10px;align-items:flex-start;margin:12px 0 14px;padding:12px 14px;border-radius:18px;background:#fff;border:1px solid rgba(15,23,42,.08)}body.has-map-shell .pv-decision b{white-space:nowrap}body.has-map-shell .pv-decision span{color:#334155;line-height:1.35}body.has-map-shell .pv-decision.ok{border-color:rgba(22,163,74,.28);background:rgba(236,253,245,.92)}body.has-map-shell .pv-decision.warn{border-color:rgba(245,158,11,.32);background:rgba(255,251,235,.94)}body.has-map-shell .pv-decision.bad{border-color:rgba(239,68,68,.32);background:rgba(254,242,242,.94)}body.has-map-shell .pv-insight-card--v637 .pv-insight-grid{grid-template-columns:minmax(240px,.9fr) minmax(280px,1.5fr);gap:14px}body.has-map-shell .pv-insight-card--v637 .pv-map-box,body.has-map-shell .pv-insight-card--v637 .pv-metrics>div,body.has-map-shell .pv-checklist-box{background:rgba(255,255,255,.82);border:1px solid rgba(15,23,42,.08);box-shadow:0 10px 24px rgba(15,23,42,.06)}body.has-map-shell .solar-heatmap--v637{min-height:190px;grid-template-columns:repeat(6,1fr);border-radius:20px;overflow:hidden;position:relative;background:linear-gradient(180deg,rgba(186,230,253,.55),rgba(254,240,138,.35))}body.has-map-shell .solar-heatmap--v637 span{min-height:44px;background:rgba(250,204,21,var(--sun));border:1px solid rgba(255,255,255,.26)}body.has-map-shell .solar-heatmap--v637 b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:42px;filter:drop-shadow(0 6px 16px rgba(202,138,4,.35))}body.has-map-shell .solar-heatmap--v637 em{position:absolute;right:12px;bottom:8px;font-style:normal;font-size:12px;font-weight:900;color:#854d0e;background:rgba(255,255,255,.82);padding:4px 8px;border-radius:999px}body.has-map-shell .pv-sun-caption{margin-top:8px;font-size:11px;line-height:1.35;color:#6b7280}body.has-map-shell .pv-metrics--v637{grid-template-columns:repeat(2,minmax(0,1fr))}body.has-map-shell .pv-metrics--v637 div span{color:#64748b}body.has-map-shell .pv-metrics--v637 div strong{color:#0f2419;font-size:15px}body.has-map-shell .pv-lists--v637{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}body.has-map-shell .pv-lists--v637>div,body.has-map-shell .pv-checklist-box{padding:14px;border-radius:18px;background:rgba(255,255,255,.82);border:1px solid rgba(15,23,42,.08)}body.has-map-shell .pv-lists--v637 h4,body.has-map-shell .pv-checklist-box h4{margin:0 0 8px;color:#1f3d14}body.has-map-shell .pv-lists--v637 ul,body.has-map-shell .pv-checklist-box ol{margin:0;padding-left:20px;color:#334155}body.has-map-shell .pv-lists--v637 li,body.has-map-shell .pv-checklist-box li{margin:6px 0;line-height:1.38}body.has-map-shell .pv-checklist-box{margin-top:12px}body.has-map-shell .pv-confidence{margin-top:10px;font-size:12px;color:#64748b;line-height:1.35}@media (max-width:820px){body.has-map-shell .parcel-readable-card{grid-template-columns:1fr;padding:12px}body.has-map-shell .parcel-readable-visual,body.has-map-shell .parcel-readable-visual .parcel-hero-canvas{min-height:185px}body.has-map-shell .parcel-readable-grid,body.has-map-shell .comfort-mini-grid--compact,body.has-map-shell .pv-metrics--v637,body.has-map-shell .pv-lists--v637{grid-template-columns:1fr 1fr !important}body.has-map-shell .pv-insight-card--v637 .pv-insight-grid{grid-template-columns:1fr}body.has-map-shell .pv-decision{flex-direction:column;gap:4px}}@media (max-width:520px){body.has-map-shell .parcel-readable-grid,body.has-map-shell .comfort-mini-grid--compact,body.has-map-shell .pv-metrics--v637,body.has-map-shell .pv-lists--v637{grid-template-columns:1fr !important}body.has-map-shell .parcel-readable-tile strong{font-size:16px}body.has-map-shell .pv-insight-card--v637{padding:14px}body.has-map-shell .solar-heatmap--v637{min-height:150px}body.has-map-shell .solar-heatmap--v637 span{min-height:34px}}body.has-map-shell .summary-stack--v638{display:grid;gap:14px}body.has-map-shell .pv-orientation-panel{display:grid;gap:10px;border:1px solid rgba(15,118,110,.16);background:linear-gradient(135deg,rgba(255,251,235,.94),rgba(236,253,245,.90));border-radius:18px;padding:14px;min-height:150px}body.has-map-shell .pv-orientation-main{display:flex;align-items:center;gap:12px}body.has-map-shell .pv-orientation-main>span{width:48px;height:48px;display:grid;place-items:center;border-radius:16px;background:rgba(255,255,255,.78);box-shadow:0 10px 26px rgba(15,35,25,.08);font-size:26px}body.has-map-shell .pv-orientation-main b{display:block;color:#123524;font-size:16px;line-height:1.15}body.has-map-shell .pv-orientation-main small{display:block;color:#647063;font-size:12px;line-height:1.3;margin-top:3px}body.has-map-shell .pv-orientation-scale{height:10px;border-radius:999px;background:rgba(15,23,42,.10);overflow:hidden}body.has-map-shell .pv-orientation-scale i{display:block;height:100%;min-width:8%;border-radius:inherit;background:linear-gradient(90deg,#f97316,#facc15,#22c55e)}body.has-map-shell .pv-orientation-panel p{margin:0;color:#415247;font-size:12px;line-height:1.45}body.has-map-shell .pv-orientation-panel--bad .pv-orientation-scale i{background:linear-gradient(90deg,#ef4444,#f97316)}body.has-map-shell .pv-orientation-panel--warn .pv-orientation-scale i{background:linear-gradient(90deg,#f97316,#facc15)}body.has-map-shell .pv-orientation-panel--ok .pv-orientation-scale i{background:linear-gradient(90deg,#facc15,#22c55e)}body.has-map-shell .pv-insight-card--v637 .pv-map-box small{font-size:11.5px;line-height:1.45}@media (max-width:640px){body.has-map-shell .summary-stack--v638{gap:12px}body.has-map-shell .pv-orientation-panel{min-height:0;padding:12px;border-radius:16px}body.has-map-shell .pv-orientation-main>span{width:42px;height:42px;font-size:23px}body.has-map-shell .pv-orientation-main b{font-size:15px}}body.has-map-shell .parcel-readable-title p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}body.has-map-shell .parcel-tech-details{opacity:.78}body.has-map-shell .parcel-readable-action{background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(240,253,244,.84))}body.has-map-shell .ig-parcel-c{display:grid;gap:12px;padding:0;background:transparent;border:0;box-shadow:none}body.has-map-shell .ig-hero{position:relative;border-radius:20px;overflow:hidden;min-height:220px;background:linear-gradient(135deg,#1f3a26 0%,#2d5a3e 50%,#1f3a26 100%);border:1px solid rgba(22,163,74,.25);box-shadow:0 8px 24px rgba(15,23,42,.12);display:flex;align-items:flex-end;padding:14px}body.has-map-shell .ig-hero .parcel-hero-canvas{position:absolute;inset:0;width:100%;height:100%;display:block}body.has-map-shell .ig-hero__empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:56px;opacity:.25}body.has-map-shell .ig-hero__score{position:absolute;top:12px;right:12px;padding:8px 13px;border-radius:999px;background:rgba(255,255,255,.96);box-shadow:0 6px 18px rgba(0,0,0,.22);font-weight:900;display:inline-flex;align-items:baseline;gap:2px;z-index:2}body.has-map-shell .ig-hero__score b{font-size:22px;line-height:1}body.has-map-shell .ig-hero__score span{font-size:11px;opacity:.65}body.has-map-shell .ig-hero__score--ok{color:#047857}body.has-map-shell .ig-hero__score--warn{color:#b45309}body.has-map-shell .ig-hero__score--bad{color:#b91c1c}body.has-map-shell .ig-hero__id{position:relative;z-index:1;background:rgba(8,32,18,.88);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:10px 14px;border-radius:12px;color:#fff;border:1px solid rgba(167,255,69,.3);max-width:100%}body.has-map-shell .ig-hero__id>span{font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#a7ff45}body.has-map-shell .ig-hero__id>strong{display:block;font-size:18px;margin-top:2px;word-break:break-word}body.has-map-shell .ig-hero__id>small{display:block;font-size:12px;color:rgba(255,255,255,.78);margin-top:2px;line-height:1.35}body.has-map-shell .ig-main-card{padding:14px;border-radius:20px;background:linear-gradient(135deg,rgba(248,255,250,.98),rgba(231,248,235,.94));border:1px solid rgba(22,163,74,.22);box-shadow:0 6px 16px rgba(15,23,42,.06);color:#10251a;display:grid;gap:12px}body.has-map-shell .ig-metric-list{display:grid;grid-template-columns:1fr;gap:8px}body.has-map-shell .ig-metric{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:14px;background:#fff;border:1px solid rgba(15,23,42,.08)}body.has-map-shell .ig-metric__icon{font-size:24px;flex:0 0 auto;line-height:1}body.has-map-shell .ig-metric__body{flex:1;min-width:0}body.has-map-shell .ig-metric__lbl{display:block;font-size:11px;font-weight:700;color:#557063;text-transform:uppercase;letter-spacing:.03em}body.has-map-shell .ig-metric__val{display:block;font-size:14.5px;color:#0f2419;font-weight:600;margin-top:1px;line-height:1.3;word-break:break-word}body.has-map-shell .ig-metric--ok{background:linear-gradient(135deg,rgba(236,253,245,.92),#fff);border-color:rgba(22,163,74,.3)}body.has-map-shell .ig-metric--warn{background:linear-gradient(135deg,rgba(255,251,235,.95),#fff);border-color:rgba(245,158,11,.35)}body.has-map-shell .ig-metric--bad{background:linear-gradient(135deg,rgba(254,242,242,.95),#fff);border-color:rgba(239,68,68,.35)}body.has-map-shell .ig-action-panel{padding:12px 14px;border-radius:14px;background:#fff;border:1px solid rgba(15,23,42,.10)}body.has-map-shell .ig-action-panel b{display:flex;align-items:center;gap:6px;margin-bottom:8px;color:#0f2419;font-size:14px}body.has-map-shell .ig-action-panel ul{margin:0;padding-left:20px;color:#334155}body.has-map-shell .ig-action-panel li{margin:5px 0;line-height:1.4;font-size:13.5px}body.has-map-shell .ig-tech-details{font-size:12px;color:#557063;border-radius:12px;padding:9px 12px;background:rgba(255,255,255,.55)}body.has-map-shell .ig-tech-details summary{cursor:pointer;font-weight:700;color:#15803d}body.has-map-shell .ig-tech-details code{background:rgba(15,23,42,.06);padding:1px 6px;border-radius:4px;font-size:11px;word-break:break-word}body.has-map-shell .ig-explore-section{padding:14px;border-radius:20px;background:#0f2419;color:#fff;border:1px solid rgba(167,255,69,.2);position:relative;margin-top:14px}body.has-map-shell .ig-explore-section::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:#a7ff45;border-radius:20px 20px 0 0}body.has-map-shell .ig-explore-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}body.has-map-shell .ig-explore-head h4{margin:0;font-size:14px;color:#a7ff45;font-weight:900;letter-spacing:.03em}body.has-map-shell .ig-explore-count{font-size:11px;color:rgba(255,255,255,.5)}body.has-map-shell .ig-explore-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}body.has-map-shell .ig-explore-tile{padding:14px 8px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.10);border-radius:14px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;cursor:pointer;color:#fff;font:inherit;transition:background .15s,border-color .15s,transform .12s;min-height:84px}body.has-map-shell .ig-explore-tile:hover,body.has-map-shell .ig-explore-tile:focus-visible{background:rgba(167,255,69,.08);border-color:rgba(167,255,69,.3);outline:none}body.has-map-shell .ig-explore-tile:active{transform:scale(.97)}body.has-map-shell .ig-explore-tile.active{background:rgba(167,255,69,.15);border-color:var(--accent,#a7ff45)}body.has-map-shell .ig-explore-em{font-size:26px;line-height:1}body.has-map-shell .ig-explore-ti{font-size:12px;font-weight:700;color:#fff;line-height:1.25}@media (min-width:600px){body.has-map-shell .ig-explore-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:900px){body.has-map-shell .ig-explore-grid{grid-template-columns:repeat(4,1fr)}body.has-map-shell .ig-hero{min-height:280px}body.has-map-shell .ig-hero__id strong{font-size:22px}}body.has-map-shell .ig-home-content{max-width:1180px;margin:0 auto;padding:40px 16px 60px;color:#103221;background:transparent}body.has-map-shell .ig-home-section{margin:0 0 56px;padding:0}body.has-map-shell .ig-home-section--alt{background:linear-gradient(135deg,rgba(248,255,250,.96),rgba(231,248,235,.92));border:1px solid rgba(22,163,74,.18);border-radius:24px;padding:32px 24px}body.has-map-shell .ig-home-section h2{font-size:clamp(22px,3.5vw,30px);margin:0 0 12px;color:#0f2419}body.has-map-shell .ig-home-lead{font-size:15.5px;line-height:1.55;color:#334155;margin:0 0 24px;max-width:70ch}body.has-map-shell .ig-feature-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}body.has-map-shell .ig-feature{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:16px;padding:16px;box-shadow:0 2px 8px rgba(15,23,42,.04)}body.has-map-shell .ig-feature__em{font-size:28px;display:block;margin-bottom:8px;line-height:1}body.has-map-shell .ig-feature strong{display:block;font-size:15px;color:#0f2419;margin-bottom:4px}body.has-map-shell .ig-feature p{margin:0;font-size:13.5px;line-height:1.45;color:#475569}body.has-map-shell .ig-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}body.has-map-shell .ig-step{position:relative;padding:20px 18px 18px 56px;background:#fff;border-radius:16px;border:1px solid rgba(15,23,42,.06)}body.has-map-shell .ig-step__num{position:absolute;left:14px;top:14px;width:32px;height:32px;border-radius:50%;background:#16a34a;color:#fff;font-weight:900;display:flex;align-items:center;justify-content:center;font-size:16px}body.has-map-shell .ig-step strong{display:block;font-size:15px;color:#0f2419;margin-bottom:4px}body.has-map-shell .ig-step p{margin:0;font-size:13.5px;line-height:1.45;color:#475569}body.has-map-shell .ig-posts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}body.has-map-shell .ig-post-card{display:block;background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:14px;padding:16px;text-decoration:none;color:inherit;transition:transform .15s,box-shadow .15s,border-color .15s}body.has-map-shell .ig-post-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(15,23,42,.08);border-color:rgba(22,163,74,.28)}body.has-map-shell .ig-post-em{font-size:22px;display:block;margin-bottom:6px;line-height:1}body.has-map-shell .ig-post-card strong{display:block;font-size:14.5px;color:#0f2419;margin-bottom:4px}body.has-map-shell .ig-post-card small{font-size:12.5px;line-height:1.4;color:#64748b}body.has-map-shell .ig-home-more{margin:18px 0 0;font-size:14px}body.has-map-shell .ig-home-more a{color:#15803d;font-weight:700;text-decoration:none}body.has-map-shell .ig-home-more a:hover{text-decoration:underline}body.has-map-shell .ig-faq{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:12px;padding:12px 16px;margin-bottom:8px}body.has-map-shell .ig-faq summary{cursor:pointer;font-weight:700;color:#0f2419;font-size:15px;list-style:none;position:relative;padding-right:24px}body.has-map-shell .ig-faq summary::-webkit-details-marker{display:none}body.has-map-shell .ig-faq summary::after{content:'▾';position:absolute;right:0;top:0;color:#16a34a;font-size:14px;transition:transform .2s}body.has-map-shell .ig-faq[open] summary::after{transform:rotate(180deg)}body.has-map-shell .ig-faq p{margin:10px 0 0;font-size:14px;line-height:1.55;color:#334155}body.has-map-shell .ig-cities-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px}body.has-map-shell .ig-cities-grid a{display:block;padding:10px 14px;background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:10px;text-decoration:none;color:#15803d;font-weight:600;font-size:14px;text-align:center;transition:background .15s,border-color .15s}body.has-map-shell .ig-cities-grid a:hover{background:rgba(22,163,74,.06);border-color:rgba(22,163,74,.28)}@media (max-width:600px){body.has-map-shell .ig-home-content{padding:24px 12px 40px}body.has-map-shell .ig-home-section{margin-bottom:36px}body.has-map-shell .ig-home-section--alt{padding:20px 16px}}@media (max-width:768px){}body.has-map-shell .topbar.ig-topbar{position:sticky !important;top:0;z-index:50}body.has-map-shell .right-panel.parcel-drawer{z-index:40}
/* v6.7.1 hotfix: czytelniejsza szukajka, raport i neutralne braki danych */
body.has-map-shell .search-wrap{position:relative!important;min-width:0!important;isolation:isolate!important}
body.has-map-shell .search-suggest{top:calc(100% + 10px)!important;left:0!important;right:0!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;overflow-x:hidden!important;overflow-y:auto!important;padding:8px!important;border-radius:18px!important;background:rgba(255,255,255,.98)!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;box-shadow:0 22px 50px rgba(7,31,18,.20)!important;z-index:9999!important}
body.has-map-shell .suggest-item{display:grid!important;grid-template-columns:28px minmax(0,1fr)!important;grid-template-areas:"ico main" "ico sub"!important;gap:2px 8px!important;width:100%!important;min-width:0!important;text-align:left!important;border:0!important;border-radius:14px!important;padding:10px 12px!important;background:transparent!important;color:#10251a!important;overflow:hidden!important}
body.has-map-shell .suggest-item+.suggest-item{margin-top:4px!important}
body.has-map-shell .suggest-item:hover,body.has-map-shell .suggest-item.highlighted{background:#eef8ef!important}
body.has-map-shell .suggest-icon{grid-area:ico!important;width:28px;height:28px;border-radius:10px;background:#e7f6e9;display:grid!important;place-items:center!important;margin:0!important}
body.has-map-shell .suggest-main{grid-area:main!important;display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-weight:950!important}
body.has-map-shell .suggest-sub{grid-area:sub!important;display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;color:#587064!important;font-size:12px!important}
body.has-map-shell .suggest-empty,body.has-map-shell .suggest-loading{padding:14px!important;border-radius:14px!important;background:#f4fbf5!important;color:#526457!important;font-weight:800!important}
body.has-map-shell .report-acc-section:not([open]) .report-acc-body{display:none!important}
body.has-map-shell .ig-metric--info,.comfort-mini-card.info{background:linear-gradient(135deg,rgba(239,246,255,.96),#fff)!important;border-color:rgba(59,130,246,.26)!important}
body.has-map-shell .ig-data-panel{padding:14px 15px;border-radius:16px;background:linear-gradient(135deg,#ffffff,#f5fbf6);border:1px solid rgba(22,92,52,.12);box-shadow:0 10px 24px rgba(12,43,24,.055)}
body.has-map-shell .ig-data-panel b{display:flex;align-items:center;gap:7px;margin-bottom:8px;color:#0f2419;font-size:14px;font-weight:1000}
body.has-map-shell .ig-data-panel ul{margin:0;padding-left:20px;color:#334155}
body.has-map-shell .ig-data-panel li{margin:6px 0;line-height:1.42;font-size:13.5px}
body.has-map-shell .ig-source-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
body.has-map-shell .ig-source-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 11px;border-radius:12px;background:#0f8a4f;color:#fff!important;text-decoration:none!important;font-weight:950;font-size:13px;box-shadow:0 8px 18px rgba(15,138,79,.18)}
body.has-map-shell .pv-method-box{margin-top:14px;padding:14px;border-radius:18px;background:rgba(255,255,255,.86);border:1px solid rgba(15,23,42,.08)}
body.has-map-shell .pv-method-box h4{margin:0 0 10px;color:#1f3d14;font-weight:1000}
body.has-map-shell .pv-method-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:10px}
body.has-map-shell .pv-method-grid div{padding:10px;border-radius:14px;background:#f7fbf6;border:1px solid rgba(22,92,52,.10)}
body.has-map-shell .pv-method-grid span{display:block;font-size:11px;color:#64748b;text-transform:uppercase;font-weight:1000;margin-bottom:3px}
body.has-map-shell .pv-method-grid strong{display:block;color:#0f2419;font-size:14px;line-height:1.25}
body.has-map-shell .pv-method-box p{margin:8px 0 0;color:#455a4e;line-height:1.45;font-weight:700}
body.has-map-shell .pv-blocker-note{padding:10px;border-radius:14px;background:#fff7ed;border:1px solid rgba(245,158,11,.24);color:#7c2d12!important}
.risk-card.info{background:#eff6ff!important;border-color:#bfdbfe!important}.risk-card.info .risk-card-head span{color:#1d4ed8!important}.risk-card.info small{color:#475569!important}
@media (max-width:820px){body.has-map-shell .pv-method-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){body.has-map-shell .pv-method-grid{grid-template-columns:1fr}body.has-map-shell .search-suggest{max-height:52vh!important}}
/* v6.8 — progresywny loader */
.progressive-loader{display:flex;align-items:center;gap:14px;padding:12px 16px;margin:0 0 12px;border-radius:14px;background:linear-gradient(135deg,rgba(247,255,242,.96),rgba(229,250,228,.92));border:1px solid rgba(23,173,82,.22);box-shadow:0 8px 18px rgba(8,28,18,.06)}
.progressive-loader .pl-spinner{width:24px;height:24px;border-radius:50%;border:3px solid rgba(23,173,82,.22);border-top-color:#17ad52;animation:plSpin 0.9s linear infinite;flex-shrink:0}
.progressive-loader .pl-text{flex:1;min-width:0}
.progressive-loader .pl-text b{display:block;color:#103221;font-size:14px;font-weight:900;line-height:1.2}
.progressive-loader .pl-text small{display:block;color:#5d7064;font-size:12px;font-weight:700;margin-top:2px;line-height:1.32}
@keyframes plSpin{to{transform:rotate(360deg)}}
@media (max-width:480px){.progressive-loader{padding:10px 12px;gap:10px}.progressive-loader .pl-spinner{width:20px;height:20px}.progressive-loader .pl-text b{font-size:13px}.progressive-loader .pl-text small{font-size:11px}}

/* BLOK E2 (2026-07-11, audyt ownera pkt 1): .bottom-ad-bar + body.bottom-ad-active USUNIĘTE —
   martwy placeholder (nigdy nie ładował realnej reklamy). Google Auto Ads anchor (z <head>) i
   baner kawy zostają; keyframes slideUpBar/slideDownBar bez konsumentów też usunięte. */


/* v6.8 — AdSense slot w karuzeli kafelków (3-ci kafelek) */
.cc-track .cc-slide.cc-ad-slide{background:linear-gradient(135deg,#f7faf5,#edf5ee);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;gap:14px;border-radius:18px}
.cc-track .cc-slide.cc-ad-slide .cc-ad-tag{padding:4px 11px;border-radius:999px;background:rgba(0,0,0,0.06);color:#5d7064;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:0.04em}
.cc-track .cc-slide.cc-ad-slide .cc-ad-content{flex:1;width:100%;min-height:160px;display:flex;align-items:center;justify-content:center}
.cc-track .cc-slide.cc-ad-slide .cc-ad-content ins.adsbygoogle{display:block;width:100%;min-height:160px}
.cc-track .cc-slide.cc-ad-slide .cc-ad-placeholder{font-size:13px;color:#5d7064;font-weight:700;max-width:280px;line-height:1.5}
.cc-track .cc-slide.cc-ad-slide .cc-ad-placeholder b{display:block;color:#103221;font-size:16px;font-weight:900;margin-bottom:6px}
.cc-track .cc-slide.cc-ad-slide .cc-ad-placeholder .ph-em{font-size:32px;display:block;margin-bottom:8px}

/* ===== INFOGRUNT READABILITY v1 (2026-05-24) — dopisane, usuwalne ===== */
/* Kafelek "W skrocie": wieksze/czytelniejsze etykiety i wartosci, wiecej oddechu */
body.has-map-shell .ig-metric-list{gap:11px}
body.has-map-shell .ig-metric{padding:13px 15px;align-items:center}
body.has-map-shell .ig-metric__icon{font-size:26px}
body.has-map-shell .ig-metric__lbl{font-size:12.5px;color:#3a584a;letter-spacing:.02em}
body.has-map-shell .ig-metric__val{font-size:16px;font-weight:700;line-height:1.35;color:#0c2014}
/* Ocena bardziej widoczna */
body.has-map-shell .ig-hero__score{padding:10px 16px}
body.has-map-shell .ig-hero__score b{font-size:30px}
body.has-map-shell .ig-hero__id strong{font-size:16px}
/* Naglowki sekcji wyrazistsze */
.report-acc-title{font-size:1.06rem}
.report-acc-summary{min-height:58px}
/* ===== /INFOGRUNT READABILITY v1 ===== */

/* ===== INFOGRUNT READABILITY v2 (2026-05-24) — wyjasnienie oceny ===== */
.score-explain{margin-top:12px}
.score-explain h3{margin:0 0 6px;font-size:1.02rem}
.score-explain-lead{font-size:13.5px;color:#3a584a;line-height:1.45;margin:0 0 10px}
/* ===== /INFOGRUNT READABILITY v2 ===== */

/* ===== INFOGRUNT READABILITY v3 (2026-05-24) — fix klikalnosci dolnych kafelkow ===== */
/* Panel raportu wpadal pod przyklejony dolny pasek (z-index:9000), przez co
   ostatni rzad "Sprawdz dalej" byl nieklikalny. Dodajemy zapas na dole, zeby
   dalo sie je przewinac nad pasek. */
.parcel-drawer .report-content{padding-bottom:120px !important}
.ig-explore-section{margin-bottom:16px}
/* ===== /INFOGRUNT READABILITY v3 ===== */

/* ===== INFOGRUNT READABILITY v4 (2026-05-24) — sekcja Ryzyka ===== */
/* Hierarchia: kolorowy pasek statusu z lewej + status jako pigulka.
   Zrodlo wyciszone (bylo pogrubione i konkurowalo z trescia). */
.risk-card{position:relative !important;padding-left:18px !important}
.risk-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;border-radius:18px 0 0 18px;background:#c4d0c5}
.risk-card.ok::before{background:#22a35a}
.risk-card.warn::before{background:#e0a800}
.risk-card.fail::before{background:#e0533a}
.risk-card.info::before{background:#3b82f6}
.risk-card-head{align-items:flex-start !important}
.risk-card-head strong{font-size:1.02rem !important;line-height:1.25}
.risk-card-head span{flex:0 0 auto;font-weight:800 !important;font-size:.76rem !important;padding:3px 10px;border-radius:999px;white-space:nowrap;text-align:center !important}
.risk-card.ok .risk-card-head span{background:#e3f6e9 !important;color:#0e6a39 !important}
.risk-card.warn .risk-card-head span{background:#fdf0c8 !important;color:#8a6300 !important}
.risk-card.fail .risk-card-head span{background:#fde0db !important;color:#a23420 !important}
.risk-card.info .risk-card-head span{background:#e4eeff !important;color:#1d4ed8 !important}
.risk-card p{font-weight:600 !important;color:#33433a !important;line-height:1.4}
.risk-card small{font-weight:600 !important;color:#8a968c !important;font-size:.76rem !important;opacity:.95}
/* ===== /INFOGRUNT READABILITY v4 ===== */

/* ===== INFOGRUNT STATUS PILL v1 (2026-05-24) — P1-5 =====
   Pigulka "raport OK" byla blada (jasna zielen na zielonym naglowku) — slabo
   czytelna. Bialy kontrast + ciemnozielony tekst. (P1-4 pasek przyciskow: na
   mobile juz kompaktowy ~42px przez mobile-report-hardfix; desktop ~73px OK.) */
.badge-ok{background:#ffffff !important;color:#0e6b3f !important;border:1px solid rgba(255,255,255,.7) !important;font-weight:800 !important;box-shadow:0 1px 4px rgba(0,0,0,.14) !important}
.badge-warn{background:#fff7e0 !important;color:#a15c00 !important;border:1px solid rgba(255,255,255,.7) !important;font-weight:800 !important}
/* ===== /INFOGRUNT STATUS PILL v1 ===== */

/* ===== INFOGRUNT PV HIERARCHY v1 (2026-05-24) — P1-1 =====
   Kluczowe liczby PV (uzyteczna powierzchnia, moc, dzierzawa) wyrozniamy na
   wierzchu; reszta techniczna (cala dzialka, panele, spadek, ekspozycja, gleba)
   trafia do zwijanego <details>. Mniej liczb na raz = czytelniejsza hierarchia. */
.pv-metrics--key{grid-template-columns:repeat(auto-fit,minmax(130px,1fr)) !important;gap:10px !important}
.pv-metrics--key>div{background:rgba(167,255,69,.12) !important;border:1px solid rgba(15,80,45,.16) !important;border-radius:12px !important;padding:10px 12px !important}
.pv-metrics--key>div strong{font-size:16px !important}
.pv-details{margin:12px 0 0;border:1px solid rgba(15,80,45,.12);border-radius:12px;background:rgba(255,255,255,.6)}
.pv-details>summary{cursor:pointer;padding:10px 14px;font-weight:700;color:#0e6b3f;list-style:none;font-size:.9rem}
.pv-details>summary::-webkit-details-marker{display:none}
.pv-details>summary::after{content:"⌄";float:right;transition:transform .2s}
.pv-details[open]>summary::after{transform:rotate(180deg)}
.pv-details .pv-metrics{padding:0 12px 12px}
/* ===== /INFOGRUNT PV HIERARCHY v1 ===== */

/* ===== INFOGRUNT MAP CONTROLS v1 (2026-05-24) =====
   Kontrolki mapy (zoom +/- i przelacznik mapa/dzialki) byly na top:78px, a
   plywajacy pasek gorny siega do ~92px -> przyciski czesciowo zakryte naglowkiem.
   Na desktopie spychamy je ponizej paska. Mobile zostaje bez zmian (kontrolki
   sa tam pozycjonowane na dole ekranu). */
@media (min-width:861px){
  
  
}
/* ===== /INFOGRUNT MAP CONTROLS v1 ===== */

/* ===== INFOGRUNT SCORE COMPONENTS v1 (2026-05-24) =====
   Ulamki punktowe (9/16, 8/12) byly nieczytelne ("nic nie mowia"). Zamieniamy
   prawy wskaznik na SLOWNA pigulke statusu z kolorem wg stanu. */
.score-explain .score-row strong.score-status-pill{
  font-size:11.5px !important; font-weight:800 !important; padding:3px 10px !important;
  border-radius:999px !important; white-space:nowrap !important; line-height:1.5 !important;
  background:#eef2ef !important; color:#46584d !important; align-self:start !important;
}
.score-explain .score-row.ok strong.score-status-pill{ background:#dff4e6 !important; color:#0e6b3f !important; }
.score-explain .score-row.warn strong.score-status-pill{ background:#fdf0d8 !important; color:#9a5b00 !important; }
.score-explain .score-row.bad strong.score-status-pill,
.score-explain .score-row.fail strong.score-status-pill{ background:#fde0e0 !important; color:#a31616 !important; }
.score-explain .score-row.info strong.score-status-pill{ background:#e4eeff !important; color:#1d4ed8 !important; }
/* ===== /INFOGRUNT SCORE COMPONENTS v1 ===== */

/* ===== INFOGRUNT PV REDESIGN v1 — mniej liczb na wierzchu, jeden disclaimer ===== */
body.has-map-shell .pv-insight-card .pv-blocker-note{
  display:flex; gap:8px; align-items:flex-start;
  margin:10px 0 0; padding:9px 12px;
  background:#fdf0d8; color:#8a5300;
  border:1px solid #f0d49a; border-left:4px solid #e0a73a;
  border-radius:12px; font-size:13px; line-height:1.45; font-weight:700;
}
body.has-map-shell .pv-insight-card .pv-details summary{ cursor:pointer; font-weight:800; color:#15803d; }
body.has-map-shell .pv-insight-card .pv-details .pv-method-note{
  margin:10px 0 0; padding-top:10px; border-top:1px solid rgba(15,23,42,.08);
  color:#7a8794; font-size:12px; line-height:1.5; font-weight:600;
}
body.has-map-shell .pv-insight-card .pv-confidence{
  margin-top:12px; padding:10px 12px;
  background:rgba(255,255,255,.6); color:#65727f;
  border:1px solid rgba(15,23,42,.07); border-radius:12px;
  font-size:12px; line-height:1.5;
}
/* ===== /INFOGRUNT PV REDESIGN v1 ===== */

/* ===== INFOGRUNT EXPLORE TILES v1 — „Sprawdź dalej" pod jasny raport ===== */
body.has-map-shell .ig-explore-section{
  background:linear-gradient(135deg,#f6fff4 0%,#ffffff 55%,#f1fbff 100%) !important;
  color:#10251a !important;
  border:1px solid rgba(22,163,74,.20) !important;
  box-shadow:0 12px 28px rgba(12,43,24,.07) !important;
}
body.has-map-shell .ig-explore-section::before{
  background:linear-gradient(90deg,#9cff32,#19b66a) !important;
}
body.has-map-shell .ig-explore-head h4{ color:#0f6c3f !important; }
body.has-map-shell .ig-explore-count{ color:#64748b !important; }
body.has-map-shell .ig-explore-tile{
  background:#ffffff !important;
  border:1px solid rgba(15,23,42,.10) !important;
  color:#10251a !important;
  box-shadow:0 6px 16px rgba(15,23,42,.05) !important;
}
body.has-map-shell .ig-explore-tile:hover,
body.has-map-shell .ig-explore-tile:focus-visible{
  background:rgba(22,163,74,.06) !important;
  border-color:rgba(22,163,74,.32) !important;
}
body.has-map-shell .ig-explore-tile.active{
  background:rgba(22,163,74,.12) !important;
  border-color:#19b66a !important;
}
body.has-map-shell .ig-explore-ti{ color:#10251a !important; }
/* ===== /INFOGRUNT EXPLORE TILES v1 ===== */

/* ===== INFOGRUNT FIX: kontrolki mapy w prawym gornym rogu nachodzily na siebie ===== */
/* Na desktopie przelacznik "mapa/dzialki" (top:104) i zoom (+/-) byly w tym samym
   miejscu — zoom "+" znikal pod przyciskiem "dzialki". Zsuwamy zoom ponizej przelacznika. */
@media (min-width: 861px){
  
  
}
/* ===== /INFOGRUNT FIX map controls ===== */

/* ===== INFOGRUNT PARTNER BOX v1 — afiliacja/lead (alternatywa dla AdSense) ===== */
.ig-partner-box{
  display:flex; align-items:center; gap:12px; margin-top:12px; padding:12px 14px;
  border-radius:14px; text-decoration:none;
  background:linear-gradient(135deg,#f0fdf4 0%,#ffffff 60%,#eff6ff 100%);
  border:1px solid rgba(22,163,74,.28); box-shadow:0 6px 16px rgba(15,23,42,.06);
  transition:transform .12s ease, box-shadow .12s ease, border-color .12s;
}
.ig-partner-box:hover{ transform:translateY(-1px); box-shadow:0 10px 22px rgba(15,23,42,.10); border-color:rgba(22,163,74,.5); }
.ig-partner-emoji{ font-size:26px; line-height:1; flex:0 0 auto; }
.ig-partner-txt{ flex:1; min-width:0; display:flex; flex-direction:column; gap:2px; }
.ig-partner-txt strong{ color:#0f2419; font-size:14.5px; line-height:1.25; }
.ig-partner-txt small{ color:#15803d; font-size:13px; font-weight:700; }
.ig-partner-tag{ flex:0 0 auto; font-size:10px; font-weight:900; text-transform:uppercase;
  letter-spacing:.04em; color:#64748b; background:#eef2f7; padding:4px 8px; border-radius:999px; }
/* ===== /INFOGRUNT PARTNER BOX v1 ===== */

/* ===== INFOGRUNT LAYOUT FIX v6.9.9 - OVERLAP & POINTER EVENTS ===== */
/* Cel: na index.php (mobile zwlaszcza) niewidoczne overlay-e (app-menu, lang-picker,
   parcel-drawer, search-suggest, modal-backdrop) lapaly kliki, bo plik bazowy ma
   tylko 1x pointer-events w calym CSS. Tworzylo to "dead zones" nad CTA wyszukiwarki
   i przyciskami w topbarze. Dodatkowo .map-help/.map-status/.attribution lezace nad
   <div id="map"> blokowaly klik w dzialki Leaflet/KIEG. Topbar mial sztywne wysokosci
   ktore wylewaly tabs+input poza ekran na waskich telefonach.

   Strategia (mobile-first, nie psuje desktopu):
   - ukryte overlay-e (aria-hidden=true / [hidden]) → pointer-events:none,
     widoczne → pointer-events:auto (zwrocenie pelnej interaktywnosci).
   - tekstowe podpisy na mapie → pointer-events:none (Leaflet lapie klik pod nimi).
   - topbar → flex+wrap+gap+min-height:auto zamiast hardcoded height.
   - <=860px: zoom i layer-toggle rozdzielone na rogi (zero zachodzenia).
   - przyciski/inputy zawsze pointer-events:auto (zabezpieczenie przed dziedziczeniem).
*/

/* 1) Ukryte overlay-e nie moga blokowac klikow ----------------------------- */
body.has-map-shell .app-menu[aria-hidden="true"],
body.has-map-shell .lang-picker[aria-hidden="true"],
body.has-map-shell #detailsPanel[aria-hidden="true"],
body.has-map-shell .right-panel[aria-hidden="true"],
body.has-map-shell .parcel-drawer[aria-hidden="true"]{
  pointer-events: none !important;
}
body.has-map-shell .app-menu[aria-hidden="true"] *,
body.has-map-shell .lang-picker[aria-hidden="true"] *,
body.has-map-shell #detailsPanel[aria-hidden="true"] *,
body.has-map-shell .right-panel[aria-hidden="true"] *,
body.has-map-shell .parcel-drawer[aria-hidden="true"] *{
  pointer-events: none !important;
}
body.has-map-shell .app-menu:not([aria-hidden="true"]),
body.has-map-shell .lang-picker:not([aria-hidden="true"]),
body.has-map-shell #detailsPanel:not([aria-hidden="true"]),
body.has-map-shell .right-panel:not([aria-hidden="true"]),
body.has-map-shell .parcel-drawer:not([aria-hidden="true"]){
  pointer-events: auto !important;
}

/* 2) [hidden] elementy (search-suggest, modal-backdrop) - twarda blokada --- */
body.has-map-shell .search-suggest[hidden],
body.has-map-shell #searchSuggest[hidden],
body.has-map-shell .modal-backdrop[hidden],
body.has-map-shell #modalBackdrop[hidden]{
  display: none !important;
  pointer-events: none !important;
}

/* 3) Tekstowe overlay-e na mapie nie lapia klikow ------------------------- */
body.has-map-shell .map-frame .map-help,
body.has-map-shell .map-frame .map-status,
body.has-map-shell .map-frame .attribution{
  pointer-events: none !important;
  user-select: none;
}

/* 3.4 (zgłoszenie mobile): atrybucja OpenStreetMap była na mobile UKRYTA (app.css `.attribution{display:none}`,
   bo bazowo siedzi w prawym-dolnym rogu i kolidowała z kontrolkami zoomu). Brak widocznego „© OpenStreetMap"
   łamie politykę kafli OSM + licencję ODbL (i warunki CARTO/Esri) → ryzyko blokady darmowych kafli. Przywracamy
   ją na mobile w WOLNYM lewym-dolnym rogu (zoom +/− i warstwy są w prawym), maleńką i przygaszoną, ale czytelną. */
@media (max-width: 860px){
  body.has-map-shell .map-frame .attribution{
    display: block !important;
    transform: none !important;   /* zabij centrowanie z mobile-fixes.css (right:50%+translateX(50%)) — inaczej zjeżdża w pół ekranu / za prawą krawędź */
    bottom: calc(env(safe-area-inset-bottom, 0px) + 8px) !important;
    z-index: 56 !important;
    max-width: calc(100vw - 132px) !important;   /* nie wchodź pod zoom +/− w prawym dolnym rogu */
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
    font-size: 9px !important; line-height: 1.3 !important; padding: 3px 8px !important;
    background: rgba(255,255,255,.82) !important; color: #5d7064 !important;
    border-radius: 999px !important;
  }
}

/* 4) Topbar: elastyczny flex zamiast sztywnej wysokosci ------------------- */
body.has-map-shell .topbar.ig-topbar,
body.has-map-shell .topbar.compact-topbar{
  min-height: auto !important;
  height: auto !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 8px !important;
}
body.has-map-shell .topbar .top-search.compact-search{
  display: flex !important;
  flex: 1 1 220px !important;
  min-width: 0 !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
}
body.has-map-shell .topbar .top-search .search-wrap{
  flex: 1 1 160px !important;
  min-width: 0 !important;
  position: relative !important;
}
body.has-map-shell .topbar .topbar-right{
  display: flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  gap: 6px !important;
}

/* 5) Mobile (<=860px) - kontrolki mapy bez zachodzenia -------------------- */
@media (max-width: 860px){
  
  
  
  /* Status/help nie zaslaniaja zoom controls ani toggle layer */
  body.has-map-shell .map-frame .map-help,
  body.has-map-shell .map-frame .map-status{
    max-width: calc(100% - 88px) !important;
  }
  /* Topbar oddech mobile + tabs w pierwszej linii */
  body.has-map-shell .topbar.ig-topbar{
    padding: 8px 10px !important;
    row-gap: 6px !important;
  }
}

/* 6) Interaktywne elementy ZAWSZE klikalne (gwarancja CTA) ---------------- */
body.has-map-shell .topbar button,
body.has-map-shell .topbar input,
body.has-map-shell .topbar a,
body.has-map-shell .topbar .tab,
body.has-map-shell .topbar .menu-toggle,
body.has-map-shell .topbar .lang-toggle,
body.has-map-shell .zoom-controls button,
body.has-map-shell .map-toggle-wrap button,
body.has-map-shell .site-footer a{
  pointer-events: auto !important;
}
/* ===== /INFOGRUNT LAYOUT FIX v6.9.9 ===== */

/* ===== INFOGRUNT NEW PARCEL REPORT UI v6.9.11 ===== */
/* Cel: redesign kontenera raportu dzialki wedlug screenu referencyjnego.
   - naglowek "$ Raport dzialki 384" + zielona pigulka "raport OK" + ×
   - sekcja "// W skrocie" + szary badge "NAJWAZNIEJSZE"
   - glowna karta wizualna z subtelnym gradientem i siatka radarowa,
     bialy badge ze score lewy gora, na dole ciemny pasek glassmorphism
     z pinezka i identyfikatorem dzialki
   - paski metryk: biale, zaokraglone wiersze z grubym obramowaniem
   - naglowki akordeonow z prawostronnymi pigulkami akcji per-sekcja
   Strategia: high-specificity overrides nie ruszajace bazowych klas,
   wlasne zmienne CSS dla spojnosci kolorow, mobile-first paddingi
   przeciw CLS przy renderze vanilla JS.
*/

:root{
  --ig-r-green:#15803d;
  --ig-r-green-dark:#0f6c3f;
  --ig-r-green-bg:#dcfce7;
  --ig-r-green-grid:rgba(22,163,74,.10);
  --ig-r-dark:#122620;
  --ig-r-text:#10251a;
  --ig-r-muted:#64748b;
  --ig-r-border:#e2e8f0;
  --ig-r-orange:#f59e0b;
  --ig-r-orange-bg:#fef3c7;
  --ig-r-radius:16px;
  --ig-r-radius-sm:12px;
}

/* === 1) NAGLOWEK RAPORTU (.report-head) ================================== */
body.has-map-shell .parcel-drawer .report-head{
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  padding: 14px 18px 10px !important;
  min-height: auto !important;
}
body.has-map-shell .parcel-drawer .report-head > div{
  flex: 1 1 auto !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
}
body.has-map-shell .parcel-drawer #reportTitle{
  position: relative;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-size: 19px !important;
  line-height: 1.25 !important;
  font-weight: 800 !important;
  color: var(--ig-r-green) !important;
  margin: 0 !important;
}
body.has-map-shell .parcel-drawer #reportSubtitle{
  font-size: 12.5px !important;
  line-height: 1.45 !important;
  color: var(--ig-r-muted) !important;
  margin: 0 !important;
  word-break: break-word;
}
body.has-map-shell .parcel-drawer #reportBadge{
  flex: 0 0 auto !important;
  align-self: center !important;
  display: inline-flex !important;
  align-items: center !important;
  padding: 6px 12px !important;
  border-radius: 999px !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: .01em;
  background: var(--ig-r-green) !important;
  color: #f0fdf4 !important;
  border: 0 !important;
  box-shadow: 0 4px 10px rgba(21,128,61,.22) !important;
}
body.has-map-shell .parcel-drawer #reportBadge.badge-warn,
body.has-map-shell .parcel-drawer #reportBadge.warn{
  background: var(--ig-r-orange) !important;
  box-shadow: 0 4px 10px rgba(245,158,11,.22) !important;
}
body.has-map-shell .parcel-drawer .drawer-close{
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  width: 28px !important; height: 28px !important;
  border-radius: 8px !important;
  background: #f1f5f9 !important;
  color: #475569 !important;
  border: 1px solid var(--ig-r-border) !important;
  font-size: 18px !important;
  line-height: 1 !important;
  z-index: 5 !important;
}

/* === 2) NAGLOWKI AKORDEONU "// W skrocie" + pigulki akcji ================ */
body.has-map-shell .report-accordion .report-acc-section{
  background: transparent !important;
  border: 0 !important;
  margin-bottom: 8px !important;
}
body.has-map-shell .report-accordion .report-acc-summary{
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding: 12px 14px !important;
  background: #ffffff !important;
  border: 1px solid var(--ig-r-border) !important;
  border-radius: var(--ig-r-radius-sm) !important;
  list-style: none !important;
  min-height: 48px;
  box-shadow: 0 1px 0 rgba(15,23,42,.02);
}
body.has-map-shell .report-accordion .report-acc-summary::-webkit-details-marker{ display:none !important; }
body.has-map-shell .report-accordion .report-acc-title{
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  color: var(--ig-r-text) !important;
  min-width: 0;
}
body.has-map-shell .report-accordion .report-acc-title b{
  font-size: 18px;
  line-height: 1;
}
body.has-map-shell .report-accordion .report-acc-section.is-main .report-acc-title > span:last-child::before{
  content: "// ";
  color: var(--ig-r-green);
  font-weight: 900;
  letter-spacing: -.02em;
}
body.has-map-shell .report-accordion .report-acc-hint{
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  padding: 5px 11px !important;
  border-radius: 999px !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
  background: #eef2f7 !important;
  color: #475569 !important;
  border: 1px solid #e2e8f0 !important;
}
/* per-section coloring via data-acc-id ----------------------------------- */
body.has-map-shell .report-accordion .report-acc-section.is-main .report-acc-hint{
  background: #eef2f7 !important;
  color: #475569 !important;
}
body.has-map-shell .report-accordion [data-acc-id="pv"] .report-acc-hint{
  background: var(--ig-r-green-bg) !important;
  color: var(--ig-r-green-dark) !important;
  border-color: rgba(22,163,74,.30) !important;
}
body.has-map-shell .report-accordion [data-acc-id="risks"] .report-acc-hint{
  background: var(--ig-r-orange-bg) !important;
  color: #92400e !important;
  border-color: rgba(245,158,11,.30) !important;
}
body.has-map-shell .report-accordion [data-acc-id="okolica"] .report-acc-hint,
body.has-map-shell .report-accordion [data-acc-id="zrodla"] .report-acc-hint,
body.has-map-shell .report-accordion [data-acc-id="extra"] .report-acc-hint{
  background: #f1f5f9 !important;
  color: #64748b !important;
}
/* gdy section [open] - lekko zmieniony stan summary */
body.has-map-shell .report-accordion .report-acc-section[open] > .report-acc-summary{
  border-color: rgba(22,163,74,.30) !important;
  box-shadow: 0 4px 12px rgba(15,23,42,.06);
}

/* === 3) MAIN VISUAL CARD - gradient + radar grid + score + dark footer === */
body.has-map-shell .ig-main-visual-card{
  position: relative !important;
  display: block !important;
  border-radius: var(--ig-r-radius) !important;
  overflow: hidden !important;
  padding: 0 !important;
  /* Zero CLS: stala wysokosc zanim canvas sie zaladuje */
  min-height: 320px !important;
  background-color: #f6fff4 !important;
  background-image:
    linear-gradient(135deg, rgba(220,252,231,.85) 0%, rgba(255,255,255,.65) 55%, rgba(220,252,231,.55) 100%),
    linear-gradient(0deg, transparent calc(100% - 1px), var(--ig-r-green-grid) calc(100% - 1px)),
    linear-gradient(90deg, transparent calc(100% - 1px), var(--ig-r-green-grid) calc(100% - 1px)) !important;
  background-size: 100% 100%, 28px 28px, 28px 28px !important;
  background-position: 0 0, 0 0, 0 0 !important;
  border: 1px solid rgba(22,163,74,.18) !important;
  box-shadow: 0 10px 26px rgba(12,43,24,.08) !important;
  margin-bottom: 12px !important;
}
body.has-map-shell .ig-main-visual-card .parcel-hero-canvas{
  display: block !important;
  width: 100% !important;
  height: 280px !important;
  background: transparent !important;
}
body.has-map-shell .ig-main-visual-card .ig-hero__empty{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 280px !important;
  font-size: 48px;
  opacity: .35;
}

/* Score badge (top-left) -------------------------------------------------- */
body.has-map-shell .ig-main-visual-card .ig-hero__score{
  position: absolute !important;
  top: 14px !important;
  left: 14px !important;
  display: inline-flex !important;
  align-items: baseline !important;
  gap: 4px !important;
  padding: 8px 16px !important;
  background: #ffffff !important;
  border-radius: 999px !important;
  box-shadow: 0 6px 14px rgba(15,23,42,.10) !important;
  border: 1px solid var(--ig-r-border) !important;
  z-index: 4;
}
body.has-map-shell .ig-main-visual-card .ig-hero__score b{
  font-size: 22px !important;
  font-weight: 900 !important;
  color: var(--ig-r-text) !important;
  line-height: 1 !important;
}
body.has-map-shell .ig-main-visual-card .ig-hero__score span{
  font-size: 12px !important;
  font-weight: 700 !important;
  color: var(--ig-r-muted) !important;
}
body.has-map-shell .ig-main-visual-card .ig-hero__score--ok b{ color: var(--ig-r-green-dark) !important; }
body.has-map-shell .ig-main-visual-card .ig-hero__score--bad b{ color: #b91c1c !important; }

/* Dark glassmorphism footer (DZIAŁKA + area + ID) ------------------------- */
body.has-map-shell .ig-main-visual-card .ig-visual-footer{
  position: absolute !important;
  left: 14px !important;
  right: 14px !important;
  bottom: 14px !important;
  display: grid !important;
  grid-template-columns: auto auto 1fr !important;
  grid-template-rows: auto auto !important;
  column-gap: 8px !important;
  row-gap: 2px !important;
  padding: 12px 14px !important;
  border-radius: 14px !important;
  background: rgba(18, 38, 32, 0.85) !important;
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px) !important;
  color: #f0fdf4 !important;
  box-shadow: 0 8px 18px rgba(12,43,24,.30) !important;
  z-index: 3;
}
body.has-map-shell .ig-main-visual-card .ig-visual-footer__pin{
  grid-column: 1; grid-row: 1;
  font-size: 14px;
  line-height: 1;
  align-self: center;
}
body.has-map-shell .ig-main-visual-card .ig-visual-footer__label{
  grid-column: 2; grid-row: 1;
  font-size: 10.5px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
  color: #a7f3d0 !important;
  align-self: center;
}
body.has-map-shell .ig-main-visual-card .ig-visual-footer__main{
  grid-column: 1 / -1; grid-row: 2;
  font-size: 15px !important;
  font-weight: 800 !important;
  color: #ffffff !important;
  letter-spacing: -.01em;
  line-height: 1.3 !important;
}
body.has-map-shell .ig-main-visual-card .ig-visual-footer__id{
  grid-column: 1 / -1; grid-row: 3;
  font-size: 11px !important;
  font-weight: 600 !important;
  color: rgba(240,253,244,.65) !important;
  letter-spacing: .02em;
  font-family: ui-monospace, "SFMono-Regular", Menlo, monospace;
  margin-top: 2px !important;
}

/* === 4) METRIC ROWS (.ig-metric) - pelnowymiarowe biale wiersze ========= */
body.has-map-shell .ig-main-card .ig-metric-list{
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  padding: 0 !important;
  margin: 0 0 12px !important;
}
body.has-map-shell .ig-main-card .ig-metric-list .ig-metric{
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  background: #ffffff !important;
  border: 1px solid var(--ig-r-border) !important;
  border-radius: var(--ig-r-radius-sm) !important;
  padding: 12px 16px !important;
  margin-bottom: 8px !important;
  min-height: 56px;
  box-shadow: 0 1px 0 rgba(15,23,42,.02);
}
body.has-map-shell .ig-main-card .ig-metric-list .ig-metric:last-child{ margin-bottom: 0 !important; }
body.has-map-shell .ig-main-card .ig-metric .ig-metric__icon{
  flex: 0 0 36px;
  width: 36px; height: 36px;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #f8fafc !important;
  border-radius: 10px !important;
  font-size: 18px;
  color: var(--ig-r-muted) !important;
}
body.has-map-shell .ig-main-card .ig-metric .ig-metric__body{
  flex: 1 1 auto !important;
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
}
body.has-map-shell .ig-main-card .ig-metric .ig-metric__lbl{
  font-size: 10.5px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: .06em !important;
  color: var(--ig-r-muted) !important;
  line-height: 1.15 !important;
}
body.has-map-shell .ig-main-card .ig-metric .ig-metric__val{
  font-size: 15px !important;
  font-weight: 800 !important;
  color: var(--ig-r-text) !important;
  line-height: 1.3 !important;
  word-break: break-word;
}
/* status colors - lekkie akcenty po lewej */
body.has-map-shell .ig-main-card .ig-metric.ig-metric--ok{ border-left: 4px solid var(--ig-r-green) !important; padding-left: 14px !important; }
body.has-map-shell .ig-main-card .ig-metric.ig-metric--warn{ border-left: 4px solid var(--ig-r-orange) !important; padding-left: 14px !important; }
body.has-map-shell .ig-main-card .ig-metric.ig-metric--bad{ border-left: 4px solid #b91c1c !important; padding-left: 14px !important; }
body.has-map-shell .ig-main-card .ig-metric.ig-metric--info{ border-left: 4px solid #64748b !important; padding-left: 14px !important; }

/* === 5) MOBILE TWEAKS + ZERO CLS ======================================== */
@media (max-width: 600px){
  body.has-map-shell .parcel-drawer .report-head{ padding: 12px 14px 8px !important; }
  body.has-map-shell .parcel-drawer #reportTitle{ font-size: 17px !important; }
  body.has-map-shell .ig-main-visual-card{ min-height: 280px !important; }
  body.has-map-shell .ig-main-visual-card .parcel-hero-canvas,
  body.has-map-shell .ig-main-visual-card .ig-hero__empty{ height: 240px !important; }
  body.has-map-shell .ig-main-visual-card .ig-visual-footer{ left: 10px !important; right: 10px !important; bottom: 10px !important; padding: 10px 12px !important; }
  body.has-map-shell .ig-main-card .ig-metric-list .ig-metric{ padding: 11px 12px !important; min-height: 52px; }
  body.has-map-shell .ig-main-card .ig-metric .ig-metric__icon{ flex-basis: 32px; width: 32px; height: 32px; font-size: 16px; }
  body.has-map-shell .report-accordion .report-acc-summary{ padding: 11px 12px !important; }
}
/* Reserve space before canvas/JS injects content - prevents layout shift */
body.has-map-shell .ig-parcel-c{ min-height: 320px; }
body.has-map-shell .ig-main-card{ min-height: 120px; }

/* ===== /INFOGRUNT NEW PARCEL REPORT UI v6.9.11 ===== */

/* ===== INFOGRUNT PDF & PRINT OVERRIDE v6.9.24 ===== */
/* Cel:
   (A) neobrutalist 5s ad-gate modal .ig-modal-gate-backdrop / .ig-modal-gate
       — uruchamiany TYLKO gdy window.__igAds.enabled === true i pub-id pasuje
       /^ca-pub-\d{16,}$/i. W trybie FREE_ONLY (obecnie) bramka jest no-op —
       pobranie idzie natychmiast. Te style są przygotowane na dzień, w którym
       AdSense zostanie aktywowany przez `python deploy.py adsense ca-pub-XXX`.
   (B) inline retention .ig-inline-details / .ig-inline-kv / .ig-verify-link
       w buildTabRyzyka — strukturalny dump bundle.mpzp/flood/score.components.
   (C) @media print: rozwiń wszystkie akordeony, ukryj UI chrome, zachowaj
       kolory i ramki, optymalizuj layout pod PDF (A4 portret).
*/

/* === (A) NEOBRUTALIST AD-GATE MODAL ===================================== */
.ig-modal-gate-backdrop{
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background: rgba(12, 38, 25, 0.72);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  animation: igGateFade .18s ease-out;
}
@keyframes igGateFade{ from{ opacity:0 } to{ opacity:1 } }

.ig-modal-gate{
  position: relative;
  width: min(440px, 100%);
  background: #fefefe;
  color: var(--ig-r-text, #10251a);
  border: 3px solid #0c2719;
  border-radius: 14px;
  /* neobrutalist hard offset shadow */
  box-shadow: 8px 8px 0 0 #0c2719;
  padding: 22px 22px 18px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  font-family: ui-sans-serif, system-ui, -apple-system, sans-serif;
}
.ig-modal-gate .ig-gate-close{
  position: absolute;
  top: 10px;
  right: 10px;
  width: 30px; height: 30px;
  border-radius: 8px;
  background: #fef2f2;
  color: #991b1b;
  border: 2px solid #0c2719;
  font-size: 18px;
  line-height: 1;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 2px 2px 0 0 #0c2719;
  transition: transform .08s ease;
}
.ig-modal-gate .ig-gate-close:hover{ transform: translate(-1px,-1px); box-shadow: 3px 3px 0 0 #0c2719; }
.ig-modal-gate .ig-gate-close:active{ transform: translate(2px,2px); box-shadow: 0 0 0 0 #0c2719; }

.ig-modal-gate .ig-gate-title{
  margin: 0;
  font-size: 17px;
  font-weight: 900;
  color: #0c2719;
  letter-spacing: -.01em;
  padding-right: 36px;
}
.ig-modal-gate .ig-gate-status{
  margin: 0;
  font-size: 13px;
  font-weight: 700;
  color: #15803d;
  min-height: 18px; /* zero CLS gdy tekst się zmienia */
  letter-spacing: .01em;
}

.ig-modal-gate .ig-gate-progress-bar{
  position: relative;
  width: 100%;
  height: 16px;
  background: #f1f5f9;
  border: 2px solid #0c2719;
  border-radius: 4px;
  overflow: hidden;
  box-shadow: 3px 3px 0 0 #0c2719;
}
.ig-modal-gate .ig-gate-progress-fill{
  position: absolute;
  inset: 0;
  width: 0%;
  background: repeating-linear-gradient(
    45deg,
    #19b66a 0px, #19b66a 10px,
    #0f6c3f 10px, #0f6c3f 20px
  );
  border-right: 2px solid #0c2719;
  transition: width 90ms linear; /* płynne klatki rAF */
  will-change: width;
}

.ig-modal-gate .ig-adsense-placeholder{
  background: #f8fafc;
  border: 2px dashed #94a3b8;
  border-radius: 8px;
  min-height: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
}
.ig-modal-gate .ig-adsense-placeholder::before{
  content: "Reklama";
  position: absolute;
  top: 6px; left: 8px;
  font-size: 9px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #94a3b8;
  pointer-events: none;
}
.ig-modal-gate .ig-adsense-placeholder ins.adsbygoogle{
  width: 100%;
  min-height: 120px;
}

.ig-modal-gate .ig-gate-btn{
  font-family: ui-monospace, "SFMono-Regular", Menlo, monospace;
  font-size: 13.5px;
  font-weight: 900;
  padding: 12px 14px;
  border: 3px solid #0c2719;
  border-radius: 8px;
  background: #f1f5f9;
  color: #64748b;
  box-shadow: 4px 4px 0 0 #0c2719;
  cursor: not-allowed;
  transition: transform .08s ease, box-shadow .08s ease;
  letter-spacing: .02em;
  text-align: center;
}
.ig-modal-gate .ig-gate-btn--ready{
  background: #19b66a;
  color: #ffffff;
  cursor: pointer;
  font-family: ui-sans-serif, system-ui, -apple-system, sans-serif;
  font-size: 15px;
  letter-spacing: 0;
}
.ig-modal-gate .ig-gate-btn--ready:hover{ transform: translate(-1px,-1px); box-shadow: 5px 5px 0 0 #0c2719; }
.ig-modal-gate .ig-gate-btn--ready:active{ transform: translate(3px,3px); box-shadow: 1px 1px 0 0 #0c2719; }

@media (max-width: 480px){
  .ig-modal-gate{ padding: 18px 16px 14px; box-shadow: 5px 5px 0 0 #0c2719; }
  .ig-modal-gate .ig-gate-title{ font-size: 16px; }
}

/* === (B) IN-HOUSE RETENTION inline details ============================== */
.report-acc-body .ig-inline-details{
  margin-top: 12px;
  background: #ffffff;
  border: 1px solid var(--ig-r-border, #e2e8f0);
  border-radius: var(--ig-r-radius-sm, 12px);
  padding: 12px 14px;
  box-shadow: 0 1px 0 rgba(15,23,42,.02);
}
.report-acc-body .ig-inline-details > summary{
  cursor: pointer;
  font-weight: 800;
  font-size: 13px;
  color: var(--ig-r-green-dark, #0f6c3f);
  letter-spacing: .01em;
  list-style: none;
  display: flex;
  align-items: center;
  gap: 6px;
}
.report-acc-body .ig-inline-details > summary::-webkit-details-marker{ display: none; }
.report-acc-body .ig-inline-details > summary::before{
  content: "▸";
  display: inline-block;
  transition: transform .15s ease;
  color: var(--ig-r-green, #15803d);
}
.report-acc-body .ig-inline-details[open] > summary::before{ transform: rotate(90deg); }

.report-acc-body .ig-inline-block{
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px dashed #e2e8f0;
}
.report-acc-body .ig-inline-block:first-of-type{ border-top: 0; padding-top: 0; }
.report-acc-body .ig-inline-block h5{
  margin: 0 0 6px;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--ig-r-muted, #64748b);
}
.report-acc-body .ig-inline-kv{
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  padding: 4px 0;
  border-bottom: 1px dotted #f1f5f9;
}
.report-acc-body .ig-inline-kv:last-child{ border-bottom: 0; }
.report-acc-body .ig-inline-kv__k{
  flex: 0 0 auto;
  font-size: 12.5px;
  color: var(--ig-r-muted, #64748b);
}
.report-acc-body .ig-inline-kv__v{
  flex: 1 1 auto;
  text-align: right;
  font-size: 13px;
  font-weight: 700;
  color: var(--ig-r-text, #10251a);
  word-break: break-word;
}
.report-acc-body .ig-verify-row{
  margin-top: 12px;
  padding-top: 10px;
  border-top: 1px solid #f1f5f9;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.report-acc-body .ig-verify-link{
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  font-weight: 700;
  color: var(--ig-r-green-dark, #0f6c3f);
  text-decoration: none;
  padding: 6px 10px;
  border-radius: 8px;
  background: var(--ig-r-green-bg, #dcfce7);
  border: 1px solid rgba(22,163,74,.30);
}
.report-acc-body .ig-verify-link:hover{ background: #bbf7d0; }

/* === BLOK F5 (2026-07-11): TYPOGRAFIA RAPORTU — liczby tabelaryczne, sieroty, spójność ===== */
/* Liczby w jednej szerokości (tabular-nums) — kwoty/ceny/odległości nie „skaczą" w kolumnach. */
.report-content .kv strong,
.report-content table td, .report-content table th,
.ig-rich-detail .kv strong,
.ig-metric__value, .ig-price-big__amount, .ig-rcn-samples__row,
.score-circle b { font-variant-numeric: tabular-nums; font-feature-settings: "tnum" 1; }
/* Sieroty/wdowy — nie zostawiaj pojedynczego słowa w ostatniej linii akapitu (nowoczesne przeglądarki). */
.report-content p, .ig-rich-detail p, .ig-detail-tip, .ig-nu-hero__txt p { text-wrap: pretty; }
/* „Prawe sieroty" w nagłówkach — nie łam ostatnich 2 słów tytułu sekcji. */
.report-content h3, .ig-metric__lbl { text-wrap: balance; }

/* === (C) @media print — PDF / drukowanie =============================== */
@media print{
  /* BLOK F5: druk — twarde reguły sierot + tabelaryczne liczby (niektóre silniki druku ignorują text-wrap). */
  .report-content p, .ig-rich-detail p { orphans: 2; widows: 2; }
  .report-content .kv strong, .report-content table td { font-variant-numeric: tabular-nums; }
  /* długie tabele nie urywają wiersza w poprzek strony */
  .report-content table tr, .ig-rcn-samples__row, .kv { break-inside: avoid; page-break-inside: avoid; }
  .card, .ig-metric, section.gm-sec { break-inside: avoid; }
  /* Print-color preservation across browsers */
  *, *::before, *::after{
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
  /* Ukryj UI chrome — modale, menu, footer, drawer-close, mapa, paski */
  .drawer-close,
  .ig-modal-gate,
  .ig-modal-gate-backdrop,
  #appMenu,
  .app-menu,
  .lang-picker,
  .site-footer,
  .topbar,
  .ig-topbar,
  .map-toggle-wrap,
  .zoom-controls,
  .map-help,
  .map-status,
  .attribution,
  #searchSuggest,
  .search-suggest,
  .modal-backdrop,
  .donate-widget,
  .ig-partner-box,
  .ig-explore-section,
  .progressive-loader,
  .report-share{
    display: none !important;
  }
  /* Wymuś rozwinięcie wszystkich akordeonów (details) — bezwzględnie */
  details,
  details[open],
  .report-acc-section,
  .report-acc-section[open],
  .ig-inline-details,
  .ig-tech-details{
    display: block !important;
  }
  details > summary,
  .report-acc-section > .report-acc-summary{
    display: flex !important;
  }
  /* Pokaż całą zawartość — przezwycięża display:none na hidden bodies */
  details > .report-acc-body,
  details > div,
  details > section,
  .report-acc-body,
  .ig-inline-block{
    display: block !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }
  /* Drawer raportu na pełną szerokość/wysokość strony */
  .parcel-drawer,
  .right-panel,
  #detailsPanel,
  .ig-parcel-c,
  body.has-map-shell main,
  body.has-map-shell .map-frame{
    position: static !important;
    width: 100% !important;
    height: auto !important;
    max-width: none !important;
    transform: none !important;
    overflow: visible !important;
    background: #ffffff !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
    pointer-events: auto !important;
  }
  /* Strona — kolory zachowane, marginesy fizyczne */
  @page{
    size: A4 portrait;
    margin: 14mm;
  }
  body, html{
    background: #ffffff !important;
    color: #0c2719 !important;
    font-size: 11pt !important;
    line-height: 1.4 !important;
  }
  /* Zachowaj neobrutalist ramki i kolory: główna karta + metric rows + kv */
  .ig-main-visual-card{
    border: 2px solid #0c2719 !important;
    box-shadow: none !important;
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }
  .ig-main-visual-card .ig-visual-footer{
    background: #0c2719 !important;
    color: #ffffff !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    box-shadow: none !important;
  }
  .ig-main-card .ig-metric-list .ig-metric{
    border: 1.5px solid #0c2719 !important;
    box-shadow: none !important;
    page-break-inside: avoid !important;
    break-inside: avoid !important;
    margin-bottom: 6px !important;
  }
  .report-accordion .report-acc-summary{
    border: 1.5px solid #0c2719 !important;
    box-shadow: none !important;
    background: #f6fff4 !important;
    page-break-after: avoid !important;
    break-after: avoid !important;
  }
  .report-accordion .report-acc-hint{
    border: 1px solid #0c2719 !important;
  }
  .ig-inline-details{
    border: 1.5px solid #0c2719 !important;
    box-shadow: none !important;
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }
  .ig-verify-link{
    border: 1px solid #0c2719 !important;
    color: #0c2719 !important;
    text-decoration: underline !important;
  }
  /* Linki — pokaż URL w nawiasie obok */
  a[href^="http"]::after{
    content: " (" attr(href) ")";
    font-size: 9pt;
    color: #6b7280;
    font-weight: 400;
    word-break: break-all;
  }
  /* Akordeony: kolejne sekcje na nowych stronach gdy potrzeba */
  .report-acc-section{
    page-break-inside: avoid;
    break-inside: avoid;
    margin-bottom: 8mm;
  }
  /* Headings nie zostają osierocone na końcu strony */
  h1, h2, h3, h4, h5{
    page-break-after: avoid !important;
    break-after: avoid !important;
  }
}
/* ===== /INFOGRUNT PDF & PRINT OVERRIDE v6.9.24 ===== */

/* ===== INFOGRUNT AUDIT PATCH v6.9.26 ===== */
/* Naprawa regresji wykrytej w live audycie wizualnym v6.9.26:
   .ig-hero__score mial position:absolute + display:flex z v6.9.11, ale baza
   zminifikowana ustawiala width na pelna szerokosc → pigulka score (84/100)
   renderowala sie jako 888px pasek zamiast ~80px znaczka top-left.
   Wymuszamy width:auto + height:auto + sensowny min-width zeby badge
   shrinkwrap'owal do tresci. */
body.has-map-shell .ig-main-visual-card .ig-hero__score,
body.has-map-shell .ig-hero.ig-main-visual-card > .ig-hero__score{
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  max-width: max-content !important;
  white-space: nowrap !important;
  inset: auto !important;
  top: 14px !important;
  left: 14px !important;
  right: auto !important;
  bottom: auto !important;
}
/* ===== /INFOGRUNT AUDIT PATCH v6.9.26 ===== */

/* ===== INFOGRUNT BLOG CONVERSION & TOC v6.9.27 ===== */
/* Towarzyszy filtrowi ig_generate_toc_and_cta() w api/_common.php.
   .ig-toc: ramka nad pierwszym <h2>, generowana gdy >=2 naglowki.
   .ig-article-footer-cta: neobrutalist boks konwersyjny doklejany na koncu
   kazdego artykulu w blog/single.php oraz w 3 standalone plikach /poradnik/.
   Style nie tykaja istniejacych .toc / .cta (legacy) — dziala niezaleznie.
*/

.ig-toc{
  border: 2px solid #122620;
  background: #f8fafc;
  padding: 16px;
  border-radius: 8px;
  margin: 20px 0 24px;
}
.ig-toc__title{
  font-weight: 700;
  margin-top: 0;
  margin-bottom: 10px;
  color: #122620;
  font-size: 14px;
  letter-spacing: .02em;
}
.ig-toc__list{
  list-style: none;
  padding-left: 0;
  margin: 0;
  display: grid;
  gap: 6px;
}
.ig-toc__list li{
  padding-left: 16px;
  position: relative;
  font-size: 14.5px;
  line-height: 1.45;
}
.ig-toc__list li::before{
  content: "▸";
  position: absolute;
  left: 0;
  top: 0;
  color: #15803d;
  font-weight: 800;
}
.ig-toc__list a{
  color: #122620;
  text-decoration: none;
  font-weight: 600;
  border-bottom: 1px dotted transparent;
  transition: color .12s, border-color .12s;
}
.ig-toc__list a:hover,
.ig-toc__list a:focus-visible{
  color: #15803d;
  border-bottom-color: #15803d;
}

.ig-article-footer-cta{
  border: 3px solid #122620;
  box-shadow: 6px 6px 0 0 #122620;
  padding: 24px;
  border-radius: 12px;
  background: #ffffff;
  margin-top: 40px;
  text-align: center;
}
.ig-article-footer-cta h3{
  margin: 0 0 12px;
  color: #122620;
  font-size: 20px;
  font-weight: 900;
  line-height: 1.3;
}
.ig-article-footer-cta p{
  margin: 0 0 18px;
  color: #283f33;
  font-size: 15px;
  line-height: 1.55;
  max-width: 560px;
  margin-left: auto;
  margin-right: auto;
}

.ig-cta-btn-main{
  display: inline-block;
  background: #15803d;
  color: #ffffff !important;
  padding: 12px 24px;
  border-radius: 8px;
  font-weight: 700;
  text-decoration: none;
  border: 2px solid #122620;
  box-shadow: 3px 3px 0 0 #122620;
  transition: transform 0.1s, box-shadow 0.1s;
  font-size: 15px;
  letter-spacing: .01em;
}
.ig-cta-btn-main:hover,
.ig-cta-btn-main:focus-visible{
  transform: translate(-2px, -2px);
  box-shadow: 5px 5px 0 0 #122620;
  background: #166e36;
}
.ig-cta-btn-main:active{
  transform: translate(1px, 1px);
  box-shadow: 1px 1px 0 0 #122620;
}

@media (max-width: 600px){
  .ig-article-footer-cta{
    padding: 18px 16px;
    box-shadow: 4px 4px 0 0 #122620;
  }
  .ig-article-footer-cta h3{ font-size: 17px; }
}

@media print{
  .ig-article-footer-cta,
  .ig-toc{
    border-color: #000 !important;
    box-shadow: none !important;
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }
  .ig-cta-btn-main{
    box-shadow: none !important;
    background: #ffffff !important;
    color: #122620 !important;
  }
}
/* ===== /INFOGRUNT BLOG CONVERSION & TOC v6.9.27 ===== */

/* ===== INFOGRUNT PV, ACCORDION & EXPLORE REDESIGN v6.11.0 ===== */

/* 1. Collapsible Metric Rows Styles (W skrócie) */
.ig-metric-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}

.ig-metric--collapsible {
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  overflow: hidden;
  border-radius: 16px !important;
}

.ig-metric--collapsible[open] {
  box-shadow: 0 8px 24px rgba(12, 43, 24, 0.08) !important;
  background: #ffffff !important;
}

.ig-metric__summary {
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  padding: 12px 16px !important;
  cursor: pointer !important;
  user-select: none !important;
  list-style: none !important;
  outline: none !important;
  box-sizing: border-box !important;
}

.ig-metric__summary::-webkit-details-marker {
  display: none !important;
}

.ig-metric__caret {
  font-size: 18px !important;
  color: #64748b !important;
  transition: transform 0.22s ease !important;
  margin-left: auto !important;
  font-weight: bold !important;
}

.ig-metric--collapsible[open] .ig-metric__caret {
  transform: rotate(180deg) !important;
  color: #10b981 !important;
}

.ig-metric__details {
  padding: 12px 16px 14px 50px !important;
  border-top: 1px dashed rgba(15, 23, 42, 0.08) !important;
  font-size: 13.5px !important;
  color: #334155 !important;
  line-height: 1.45 !important;
  background: rgba(247, 250, 245, 0.6) !important;
  border-radius: 0 0 16px 16px !important;
}

.ig-metric__details p {
  margin: 0 !important;
  font-weight: 500 !important;
}

/* 2. PV Section Redesign Overrides */
.pv-metrics--key-single {
  margin: 14px 0 6px 0 !important;
}

.pv-metric-highlight {
  padding: 16px !important;
  border-radius: 18px !important;
  border: 1px solid rgba(22, 163, 74, 0.18) !important;
  background: linear-gradient(135deg, rgba(236, 253, 245, 0.85) 0%, rgba(255, 255, 255, 0.95) 100%) !important;
  box-shadow: 0 6px 18px rgba(22, 163, 74, 0.04) !important;
  text-align: center !important;
}

.pv-metric-highlight span {
  display: block !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  color: #047857 !important;
}

.pv-metric-highlight strong {
  display: block !important;
  font-size: 24px !important;
  color: #064e3b !important;
  margin: 4px 0 !important;
  font-weight: 900 !important;
}

.pv-metric-highlight small {
  display: block !important;
  font-size: 12px !important;
  color: #475569 !important;
  font-weight: 500 !important;
}

.pv-details--v638 {
  border: 1px solid rgba(15, 80, 45, 0.08) !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, 0.55) !important;
  padding: 0 !important;
  margin-top: 10px !important;
  overflow: hidden !important;
}

.pv-details--v638 > summary {
  padding: 12px 16px !important;
  font-weight: 800 !important;
  color: #166534 !important;
  cursor: pointer !important;
  list-style: none !important;
  background: rgba(255, 255, 255, 0.8) !important;
  border-bottom: 1px solid rgba(15, 80, 45, 0.06) !important;
  transition: background 0.2s !important;
}

.pv-details--v638 > summary::-webkit-details-marker {
  display: none !important;
}

.pv-details--v638[open] > summary {
  background: #ffffff !important;
}

.pv-details--v638 > summary::after {
  content: "⌄";
  float: right !important;
  font-size: 18px !important;
  line-height: 1 !important;
  font-weight: bold !important;
  color: #166534 !important;
  transition: transform 0.2s !important;
}

.pv-details--v638[open] > summary::after {
  transform: rotate(180deg) !important;
}

.pv-details--v638 .pv-insight-grid {
  padding: 14px !important;
}

.pv-decision {
  position: relative !important;
  padding-left: 18px !important;
}

.pv-decision::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 5px !important;
  border-radius: 18px 0 0 18px !important;
}

.pv-decision.ok::before { background: #22a35a !important; }
.pv-decision.warn::before { background: #e0a800 !important; }
.pv-decision.bad::before { background: #e0533a !important; }

.pv-decision.ok {
  border-color: rgba(22, 163, 74, 0.2) !important;
  background: #f0fdf4 !important;
}
.pv-decision.ok b { color: #166534 !important; }

.pv-decision.warn {
  border-color: rgba(245, 158, 11, 0.2) !important;
  background: #fffbeb !important;
}
.pv-decision.warn b { color: #92400e !important; }

.pv-decision.bad {
  border-color: rgba(239, 68, 68, 0.2) !important;
  background: #fef2f2 !important;
}
.pv-decision.bad b { color: #991b1b !important; }

/* 3. Explore More Tiles (Siatka kafelków) - LIGHT MODE OVERRIDES */
body.has-map-shell .ig-explore-section {
  background: linear-gradient(135deg, rgba(248, 255, 250, 0.98) 0%, rgba(231, 248, 235, 0.94) 100%) !important;
  border: 1px solid rgba(22, 163, 74, 0.22) !important;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.05) !important;
  color: #10251a !important;
  margin-top: 16px !important;
}

body.has-map-shell .ig-explore-section::before {
  background: #16a34a !important;
}

body.has-map-shell .ig-explore-head h4 {
  color: #0f2419 !important;
}

body.has-map-shell .ig-explore-count {
  color: #475569 !important;
  font-weight: 700 !important;
}

body.has-map-shell .ig-explore-tile {
  background: #ffffff !important;
  border: 1px solid rgba(15, 23, 42, 0.08) !important;
  color: #0f2419 !important;
  box-shadow: 0 4px 10px rgba(15, 23, 42, 0.03) !important;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

body.has-map-shell .ig-explore-tile:hover,
body.has-map-shell .ig-explore-tile:focus-visible {
  background: rgba(22, 163, 74, 0.04) !important;
  border-color: rgba(22, 163, 74, 0.25) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 16px rgba(15, 23, 42, 0.06) !important;
}

body.has-map-shell .ig-explore-tile:active {
  transform: scale(0.97) !important;
}

body.has-map-shell .ig-explore-tile.active {
  background: rgba(22, 163, 74, 0.08) !important;
  border-color: var(--accent, #16a34a) !important;
  border-width: 2px !important;
  box-shadow: 0 6px 18px rgba(22, 163, 74, 0.12) !important;
}

body.has-map-shell .ig-explore-ti {
  color: #334155 !important;
}

/* ===== /INFOGRUNT PV, ACCORDION & EXPLORE REDESIGN v6.11.0 ===== */

/* ===== INFOGRUNT FLOATING CLOSE & RICH ACCORDION OVERRIDES v6.12.0 ===== */

/* Przesunięcie i stylizacja "X" zamknięcia w standardzie Premium iOS */
body.has-map-shell .parcel-drawer .drawer-close,
body.has-map-shell .drawer-close {
  position: absolute !important;
  top: 18px !important;
  right: 18px !important;
  width: 38px !important;
  height: 38px !important;
  border-radius: 50% !important;
  background: #ffffff !important;
  color: #0f172a !important;
  border: 1px solid rgba(15, 23, 42, 0.12) !important;
  box-shadow: 0 6px 20px rgba(15, 23, 42, 0.22) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  z-index: 99 !important;
  transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1) !important;
  cursor: pointer !important;
}

body.has-map-shell .parcel-drawer .drawer-close:hover,
body.has-map-shell .drawer-close:hover {
  background: #f8fafc !important;
  color: #b91c1c !important;
  transform: scale(1.08) !important;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.32) !important;
}

/* Bogate, strukturalne widoki wewnątrz rozwijanych harmonijek */
.ig-rich-detail {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  text-align: left !important;
  width: 100% !important;
}

.ig-rich-detail p {
  margin: 0 !important;
  color: #334155 !important;
  line-height: 1.5 !important;
  font-size: 13.5px !important;
  font-weight: 500 !important;
}

.ig-rich-detail .ig-detail-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
  margin: 4px 0 !important;
  width: 100% !important;
}

.ig-rich-detail .ig-detail-grid div {
  padding: 10px 12px !important;
  background: #ffffff !important;
  border: 1px solid rgba(15, 23, 42, 0.08) !important;
  border-radius: 12px !important;
  box-shadow: 0 2px 6px rgba(15, 23, 42, 0.02) !important;
}

.ig-rich-detail .ig-detail-grid span {
  display: block !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  color: #64748b !important;
  letter-spacing: 0.03em !important;
  margin-bottom: 2px !important;
}

.ig-rich-detail .ig-detail-grid strong {
  display: block !important;
  font-size: 13.5px !important;
  color: #0f172a !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  word-break: break-word !important;
}

.ig-rich-detail .ig-detail-grid strong small {
  display: block !important;
  font-size: 11px !important;
  color: #64748b !important;
  font-weight: 500 !important;
  margin-top: 1px !important;
}

.ig-detail-tip {
  font-size: 12px !important;
  color: #475569 !important;
  background: rgba(15, 23, 42, 0.03) !important;
  padding: 8px 12px !important;
  border-radius: 10px !important;
  border-left: 3px solid #64748b !important;
}

.clr-ok { color: #059669 !important; }
.clr-warn { color: #d97706 !important; }
.clr-bad { color: #dc2626 !important; }

/* Dostosowanie siatki POI dla 3 kolumn na desktopie */
@media (min-width: 580px) {
  .ig-rich-detail .ig-poi-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 480px) {
  .ig-rich-detail .ig-detail-grid {
    grid-template-columns: 1fr !important;
  }
}

/* ===== /INFOGRUNT FLOATING CLOSE & RICH ACCORDION OVERRIDES ===== */

/* ===== INFOGRUNT CONTROLS POSITIONING & VERIFY BUTTON v6.12.1 ===== */

/* Przeniesienie kontrolek zoom (+/-) i warstw do prawego dolnego rogu ekranu (side-by-side) */
@media (min-width: 768px) {
  
  
}

/* Wersja mobilna kontrolek na dole */
@media (max-width: 767px) {
  
  
}

/* Styl dla urzędowych przycisków weryfikacji wewnątrz harmonijek */
.ig-verify-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 10px 16px !important;
  margin: 6px 0 !important;
  border-radius: 12px !important;
  background: #166534 !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  box-shadow: 0 4px 10px rgba(22, 101, 52, 0.2) !important;
  transition: all 0.2s ease !important;
  cursor: pointer !important;
  width: fit-content !important;
}

.ig-verify-btn:hover {
  background: #14532d !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 14px rgba(22, 101, 52, 0.3) !important;
}

.ig-verify-btn:active {
  transform: translateY(1px) !important;
}

/* ===== /INFOGRUNT CONTROLS POSITIONING & VERIFY BUTTON ===== */

/* ===== INFOGRUNT RICH-DETAIL COMPACT + MOBILE v6.12.2 ===== */
/* Cel: rozwijane szczegoly w wierszach metryk byly za duze i mialy potezne
   paddingi/marginesy. Na telefonie rozsadzaly layout. Tutaj zaciskamy paskwiska,
   wymuszamy zwarty grid i w mobile schodzimy do JEDNEJ KOLUMNY bezwzglednie. */

.ig-metric__details {
  padding: 10px 12px 12px !important;
  font-size: 13px !important;
}

.ig-rich-detail {
  gap: 8px !important;
}

.ig-rich-detail p {
  font-size: 13px !important;
  line-height: 1.4 !important;
}

.ig-rich-detail .ig-detail-grid {
  gap: 6px !important;
  margin: 2px 0 !important;
}

.ig-rich-detail .ig-detail-grid > div {
  padding: 8px 10px !important;
  border-radius: 10px !important;
}

.ig-rich-detail .ig-detail-grid span {
  font-size: 10.5px !important;
  margin-bottom: 1px !important;
  letter-spacing: 0.02em !important;
}

.ig-rich-detail .ig-detail-grid strong {
  font-size: 13px !important;
  line-height: 1.25 !important;
}

.ig-rich-detail .ig-detail-grid strong small {
  font-size: 10.5px !important;
  margin-top: 0 !important;
}

.ig-detail-tip {
  font-size: 11.5px !important;
  padding: 7px 10px !important;
  border-radius: 8px !important;
  line-height: 1.4 !important;
}

.ig-verify-btn {
  padding: 8px 12px !important;
  font-size: 12px !important;
  border-radius: 10px !important;
}

/* MOBILE: bezwzglednie 1 kolumna w grid, mniejsze paddingi karty rozwinietej */
@media (max-width: 768px) {
  .ig-rich-detail .ig-detail-grid,
  .ig-rich-detail .ig-poi-grid {
    grid-template-columns: 1fr !important;
    gap: 5px !important;
  }
  .ig-rich-detail .ig-detail-grid > div {
    padding: 7px 9px !important;
  }
  .ig-metric__details {
    padding: 8px 10px 10px 12px !important;
    font-size: 12.5px !important;
  }
  .ig-rich-detail p {
    font-size: 12.5px !important;
  }
  .ig-rich-detail .ig-detail-grid strong {
    font-size: 12.5px !important;
  }
  .ig-detail-tip {
    font-size: 11px !important;
    padding: 6px 9px !important;
  }
}
/* ===== /INFOGRUNT RICH-DETAIL COMPACT + MOBILE v6.12.2 ===== */

/* ===== INFOGRUNT MINI-MAPS W HARMONIJKACH v6.13.0 ===== */
/* Killer-feature: interaktywne mini-mapy Leaflet wewnatrz <details>
   w wierszach Media na dzialce, Halas drogowy, Najblizsza okolica. */

.ig-mini-map {
  height: 240px !important;
  width: 100% !important;
  border-radius: 12px !important;
  margin-top: 12px !important;
  border: 1px solid rgba(15, 23, 42, 0.12) !important;
  background: #eef2f7 !important;
  z-index: 1 !important;
  position: relative !important;
  overflow: hidden !important;
}

.ig-mini-map__err {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 100% !important;
  font-size: 12px !important;
  color: #64748b !important;
  text-align: center !important;
  padding: 14px !important;
}

/* Leaflet pin dzialki (czerwony emoji w bialym kolku z cieniem) */
.ig-mini-pin-wrap {
  background: none !important;
  border: none !important;
}
.ig-mini-pin {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 30px !important;
  height: 30px !important;
  background: #ffffff !important;
  border-radius: 50% !important;
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.35) !important;
  border: 2px solid #dc2626 !important;
  font-size: 16px !important;
  line-height: 1 !important;
}

/* POI markery emoji (kategorie) */
.ig-mini-poi-wrap {
  background: none !important;
  border: none !important;
}
.ig-mini-poi {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  background: #ffffff !important;
  border-radius: 50% !important;
  box-shadow: 0 3px 8px rgba(15, 23, 42, 0.25) !important;
  border: 1.5px solid #16a34a !important;
  font-size: 14px !important;
  line-height: 1 !important;
  cursor: pointer !important;
  transition: transform 0.15s ease !important;
}
.ig-mini-poi:hover {
  transform: scale(1.15) !important;
  z-index: 200 !important;
  border-color: #16a34a !important;
  box-shadow: 0 5px 14px rgba(22, 163, 74, 0.35) !important;
}

/* Mobile: mini-mapa nieco nizsza */
@media (max-width: 768px) {
  .ig-mini-map {
    height: 200px !important;
    margin-top: 10px !important;
  }
}

/* Leaflet zoom controls - mniejsze i mniej krzykliwe wewnatrz mini-mapy */
.ig-mini-map .leaflet-control-zoom {
  border: 1px solid rgba(15, 23, 42, 0.15) !important;
  box-shadow: 0 2px 6px rgba(15, 23, 42, 0.1) !important;
}
.ig-mini-map .leaflet-control-zoom a {
  width: 26px !important;
  height: 26px !important;
  line-height: 26px !important;
  font-size: 16px !important;
}
/* ===== /INFOGRUNT MINI-MAPS W HARMONIJKACH v6.13.0 ===== */

/* ===== INFOGRUNT COLLAPSIBLE LAYOUT FIX v6.13.3 ===== */
/* Bug: linia 702 `body.has-map-shell .ig-main-card .ig-metric-list .ig-metric{display:flex!important}`
   ma specyficznosc 4 klasy + 1 element. Moj wczesniejszy fix mial tylko 1 klase → przegrywal.
   Bumpuje specyficznosc na 5 klas zeby wygrac kaskade dla wariantu COLLAPSIBLE. */

body.has-map-shell .ig-main-card .ig-metric-list .ig-metric.ig-metric--collapsible {
  display: block !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body.has-map-shell .ig-main-card .ig-metric-list .ig-metric.ig-metric--collapsible > summary.ig-metric__summary {
  width: 100% !important;
  box-sizing: border-box !important;
  margin: 0 !important;
}

body.has-map-shell .ig-main-card .ig-metric-list .ig-metric.ig-metric--collapsible[open] > .ig-metric__details {
  width: 100% !important;
  box-sizing: border-box !important;
  display: block !important;
}

/* Border-left status bar (ok/warn/bad/info) padding kompensacja */
body.has-map-shell .ig-main-card .ig-metric.ig-metric--collapsible.ig-metric--ok,
body.has-map-shell .ig-main-card .ig-metric.ig-metric--collapsible.ig-metric--warn,
body.has-map-shell .ig-main-card .ig-metric.ig-metric--collapsible.ig-metric--bad,
body.has-map-shell .ig-main-card .ig-metric.ig-metric--collapsible.ig-metric--info {
  padding-left: 0 !important;
}
body.has-map-shell .ig-main-card .ig-metric.ig-metric--collapsible > summary.ig-metric__summary {
  padding-left: 14px !important;
}

/* Mini-mapa: jako pelnoszerokie dziecko .ig-rich-detail (flex-column) */
.ig-rich-detail > .ig-mini-map {
  align-self: stretch !important;
  width: 100% !important;
  flex: 0 0 auto !important;
}
/* ===== /INFOGRUNT COLLAPSIBLE LAYOUT FIX v6.13.3 ===== */

/* ===== INFOGRUNT MAP CONTROLS DEFINITIVE FIX v6.13.4 ===== */
/* User feedback 2026-05-28: kontrolki +/- i mapa/dzialki MUSZA byc w prawym DOLNYM rogu.
   Poprzednie regulki v6.12.1 mialy za niska specyficznosc i przegrywaly z innymi pliki CSS.
   Tutaj: spec (0,0,4,1) chained classes + !important + cascade LAST. */

/* DESKTOP (>= 769px): kontrolki w prawym dolnym, side-by-side */
@media (min-width: 769px) {
  
  
  
}

/* MOBILE (<=768px): tez bottom-right, mniejszy odstep */
@media (max-width: 768px) {
  
  
  
}
/* ===== /INFOGRUNT MAP CONTROLS DEFINITIVE FIX v6.13.4 ===== */

/* ===== INFOGRUNT MINI-MAP LEGEND v6.13.4 ===== */
.ig-mini-map-legend {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px 14px !important;
  align-items: center !important;
  padding: 8px 12px !important;
  margin-top: 6px !important;
  background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%) !important;
  border: 1px solid rgba(15, 23, 42, 0.08) !important;
  border-radius: 10px !important;
  font-size: 11.5px !important;
  color: #1f2937 !important;
  line-height: 1.3 !important;
}
.ig-mini-map-legend span {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
}
.ig-legend-dot {
  display: inline-block !important;
  width: 12px !important;
  height: 12px !important;
  border-radius: 50% !important;
  flex-shrink: 0 !important;
}

@media (max-width: 768px) {
  .ig-mini-map-legend {
    font-size: 10.5px !important;
    gap: 6px 10px !important;
    padding: 6px 10px !important;
  }
}
/* ===== /INFOGRUNT MINI-MAP LEGEND v6.13.4 ===== */

/* ===== INFOGRUNT MOBILE POLISH v6.13.5 ===== */
/* User feedback 2026-05-28: na mobile pasek "InfoGrunt.pl jest darmowy" obcinal Udostepnij/Pobierz PDF.
   Tu: padding-bottom drawer'a + sticky bar z prawid widocznoscia + label wraps. */

@media (max-width: 768px) {
  /* BLOK E2 (2026-07-11): reguły body.bottom-ad-active / .bottom-ad-bar USUNIĘTE (martwy element). */
  .parcel-drawer .report-content {
    padding-bottom: 140px !important;
  }
  /* Skroc dlugi label paczkomatow */
  body.has-map-shell .ig-metric--collapsible .ig-metric__lbl {
    font-size: 11px !important;
    letter-spacing: 0.02em !important;
    line-height: 1.25 !important;
  }
}
/* ===== /INFOGRUNT MOBILE POLISH v6.13.5 ===== */

/* ===== INFOGRUNT MOBILE OVERFLOW FIX v6.13.18 ===== */
/* User bug 2026-05-29: na iPhone loader raportu wystawal poza viewport,
   trzeba bylo pinch-zoom-out. Powod: iOS Safari auto-zwieksza font (boost)
   gdy widzi dlugi tekst w waskim kontenerze, co rozpycha grid. Fix: zablokuj
   auto-resize (text-size-adjust) + dodaj min-width:0 + overflow-wrap na grid
   children, zeby dluga polska nazwa step'a nie rozsadzala drawer'a. */

html {
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

@media (max-width: 768px) {
  /* Loading panel mobile-safe — nic nie wystaje horizontally */
  body.has-map-shell .parcel-drawer #reportContent,
  .parcel-drawer #reportContent {
    overflow-x: hidden !important;
  }
  .loading-card.v34 {
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    padding: 14px !important;
  }
  .loading-card.v34 .loading-top {
    flex-wrap: wrap !important;
    gap: 6px !important;
    font-size: 14px !important;
  }
  .loading-card.v34 .loading-top b {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
  }
  .v34-steps li {
    grid-template-columns: 22px minmax(0, 1fr) auto !important;
    gap: 6px !important;
    padding: 7px 9px !important;
    min-width: 0 !important;
  }
  .v34-steps li > .step-body {
    min-width: 0 !important;
    overflow: hidden !important;
  }
  .v34-steps li .step-label,
  .v34-steps li .step-source,
  .v34-steps li .step-note {
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    max-width: 100% !important;
    display: block !important;
  }
  .v34-steps li .step-label { font-size: 13.5px !important; line-height: 1.25 !important; }
  .v34-steps li .step-source { font-size: 10.5px !important; }
  .v34-steps li .step-note { font-size: 10.5px !important; line-height: 1.3 !important; }
  .v34-steps li .step-time { font-size: 11px !important; white-space: nowrap !important; }
}
/* ===== /INFOGRUNT MOBILE OVERFLOW FIX v6.13.18 ===== */

/* INFOGRUNT poi-map v6.13.43 — kwadratowa mapa 5km (paczkomaty/usługi/transport) */
.ig-mini-map[data-mini-map="lockers"],
.ig-mini-map[data-mini-map="services"],
.ig-mini-map[data-mini-map="transport"]{
  aspect-ratio:1/1;height:auto!important;min-height:0!important;
  width:100%;max-width:440px;margin-left:auto;margin-right:auto;
}
/* legenda pod kwadratową mapą — wyśrodkowana, zawijana */
.ig-mini-map[data-mini-map="lockers"]+.ig-mini-map-legend,
.ig-mini-map[data-mini-map="services"]+.ig-mini-map-legend,
.ig-mini-map[data-mini-map="transport"]+.ig-mini-map-legend{
  justify-content:center;
}

/* INFOGRUNT loader-fill v6.21.2 — likwiduje pustkę pod indeksem,
   większe stepy + buttons dopasowane (problem #1 z mobile feedback) */
@media (max-width: 760px) {
  body.has-map-shell .report-content {
    display: flex !important;
    flex-direction: column !important;
    padding-bottom: 14px !important;
  }
  body.has-map-shell .report-content .loading-card.v34 {
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    min-height: 100% !important;
    padding: 16px 14px !important;
  }
  body.has-map-shell .report-content .loading-card.v34 .v34-steps {
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    margin-bottom: 4px !important;
  }
  body.has-map-shell .report-content .loading-card.v34 .v34-steps li {
    /* v6.32.11 FIX: flex:1 1 0 ŚCISKAŁO wiersze poniżej treści → napisy się NAKŁADAŁY.
       flex:0 0 auto = naturalna wysokość, nigdy nie kurczy się poniżej treści (zgodne z mobile-redesign). */
    flex: 0 0 auto !important;
    min-height: 64px !important;
    padding: 12px 14px !important;
    border-radius: 16px !important;
    background: rgba(255,255,255,0.92) !important;
    border: 1px solid rgba(16,50,33,0.08) !important;
    box-shadow: 0 2px 8px rgba(4,25,14,0.04) !important;
  }
  body.has-map-shell .report-content .loading-card.v34 .v34-steps li.active {
    background: linear-gradient(135deg, #e7f8ec 0%, #d4f0db 100%) !important;
    border-color: rgba(23,173,82,0.45) !important;
    box-shadow: 0 6px 16px rgba(23,173,82,0.18) !important;
  }
  body.has-map-shell .report-content .loading-card.v34 .v34-steps li.ok .step-icon {
    color: #17ad52 !important;
    font-size: 22px !important;
  }
  body.has-map-shell .report-content .loading-card.v34 .v34-steps li .step-label {
    font-size: 15px !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
    color: #103221 !important;
  }
  body.has-map-shell .report-content .loading-card.v34 .v34-steps li .step-source {
    font-size: 12px !important;
    color: #5d7064 !important;
    margin-top: 2px !important;
  }
  body.has-map-shell .report-content .loading-card.v34 .v34-steps li .step-time {
    color: #17ad52 !important;
    font-weight: 800 !important;
  }
  /* Buttons "Udostępnij" + "Pobierz PDF": większe, równe, mocniejszy hover */
  body.has-map-shell .parcel-drawer #reportShare {
    padding: 10px !important;
    gap: 10px !important;
    background: rgba(255,255,255,0.98) !important;
    border-top: 1px solid rgba(16,50,33,0.10) !important;
    box-shadow: 0 -4px 14px rgba(4,25,14,0.06) !important;
  }
  body.has-map-shell .parcel-drawer #reportShare .share-btn {
    min-height: 52px !important;
    height: 52px !important;
    font-size: 15px !important;
    border-radius: 16px !important;
    transition: transform 0.15s ease, box-shadow 0.15s ease !important;
  }
  body.has-map-shell .parcel-drawer #reportShare .share-btn--pdf {
    grid-column: auto !important;
    box-shadow: 0 8px 18px rgba(23,173,82,0.36) !important;
  }
  body.has-map-shell .parcel-drawer #reportShare .share-btn:active {
    transform: scale(0.97) !important;
  }
}

/* INFOGRUNT loader-smooth v6.21.3 — shimmer + smooth transition + spinner rotate
   (eliminuje wrażenie zacięcia gdy procenty skaczą co 17%) */
.loading-bar {
  background: rgba(16,50,33,0.10) !important;
  border-radius: 999px !important;
  overflow: hidden !important;
  position: relative !important;
}
.loading-bar i {
  display: block !important;
  height: 100% !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #17ad52 0%, #6fd984 35%, #a7ff45 50%, #6fd984 65%, #17ad52 100%) !important;
  background-size: 220% 100% !important;
  transition: width 0.55s cubic-bezier(0.4, 0, 0.2, 1) !important;
  animation: ig-loader-shimmer 1.4s linear infinite !important;
}
.loading-card.ig-loading-v2 .loading-bar i {
  transition-duration: .09s !important;
  transition-timing-function: cubic-bezier(.25, 1, .5, 1) !important;
}
@keyframes ig-loader-shimmer {
  0%   { background-position: 220% 0; }
  100% { background-position: -220% 0; }
}
/* Spinner rotacja na active step icon ⏳ */
.loading-card.v34 .v34-steps li.active .step-icon {
  display: inline-block !important;
  animation: ig-loader-spin 1.6s linear infinite !important;
  transform-origin: center !important;
}
@keyframes ig-loader-spin {
  0%   { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
/* Procenty: smooth transition i pulsujące "DZIAŁA" w aktywnej fazie */
.loading-pct {
  transition: color 0.3s ease !important;
}
/* v6.37: % ładowania NIE może chować się pod przyciskiem X (drawer-close: top12/right12,
   z-index 100). Rezerwujemy miejsce po prawej w pasku nagłówka loadera. */
.report-content .loading-card.v34 .loading-top {
  padding-right: 46px;
}
/* v6.37: „Zgłoś błąd w danych" — przycisk na końcu raportu (delegacja w report-bug.js). */
.ig-report-bug-row {
  margin-top: 14px;
  display: flex;
  justify-content: center;
}
.ig-report-bug-cta {
  appearance: none;
  border: 1px solid rgba(225, 29, 72, 0.28);
  background: rgba(225, 29, 72, 0.06);
  color: #b4123a;
  font: 600 13px/1.2 inherit;
  padding: 9px 16px;
  border-radius: 999px;
  cursor: pointer;
  transition: background 0.15s ease, transform 0.1s ease;
}
.ig-report-bug-cta:hover { background: rgba(225, 29, 72, 0.12); }
.ig-report-bug-cta:active { transform: translateY(1px); }
.loading-top b {
  position: relative;
}
.loading-top b::after {
  content: '';
  display: inline-block;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #17ad52;
  margin-left: 8px;
  vertical-align: middle;
  animation: ig-pulse-dot 1s ease-in-out infinite;
}
@keyframes ig-pulse-dot {
  0%, 100% { opacity: 0.3; transform: scale(0.7); }
  50%      { opacity: 1;   transform: scale(1.2); }
}

/* ============================================================
   v6.22.0 — PV REDESIGN (sekcja "Potencjał PV" po rozwinięciu)
   8 komponentów: hero+gauge, 4 KPI domu, wykres miesięczny,
   paski koszt vs dotacja, timeline ROI, kompas ekspozycji,
   <details> farma + założenia.
   ============================================================ */
.pv-detail-v2 { display: flex; flex-direction: column; gap: 18px; padding: 4px 0 8px; }

/* --- 1. HERO: gauge + verdict --- */
.pv-v2-hero {
  display: flex;
  gap: 18px;
  align-items: center;
  padding: 16px 18px;
  background: linear-gradient(135deg, #fffbeb 0%, #fef3c7 60%, #fde68a 100%);
  border: 1.5px solid #fbbf24;
  border-radius: 16px;
  box-shadow: 0 4px 14px -6px rgba(245,158,11,.28);
}
.pv-v2-gauge {
  flex: 0 0 auto;
  position: relative;
  width: 96px;
  height: 96px;
}
.pv-v2-gauge svg { width: 100%; height: 100%; display: block; }
.pv-v2-gauge--ok   { color: #15a34a; }
.pv-v2-gauge--warn { color: #f59e0b; }
.pv-v2-gauge--bad  { color: #e11d48; }
.pv-v2-gauge__txt {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  line-height: 1;
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
}
.pv-v2-gauge__txt strong { font-size: 26px; font-weight: 800; color: #0c1d14; letter-spacing: -.02em; }
.pv-v2-gauge__txt small  { font-size: 10px; color: #6b7d72; font-weight: 700; margin-top: 2px; }
.pv-v2-hero__txt { flex: 1 1 auto; min-width: 0; }
.pv-v2-hero__txt strong {
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; font-size: 17px; letter-spacing: -.02em;
  color: #0c1d14; display: block; margin-bottom: 4px;
}
.pv-v2-hero__txt p { font-size: 12.5px; color: #524a23; margin: 2px 0; line-height: 1.4; }
.pv-v2-hero__sub { font-weight: 600; color: #92400e !important; }

/* --- 2. KPI grid (4 wielkie kafelki) --- */
.pv-v2-kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}
.pv-v2-kpi {
  display: flex;
  gap: 9px;
  align-items: flex-start;
  background: #fff;
  border: 1.5px solid #e2ebe0;
  border-radius: 14px;
  padding: 12px 12px 11px;
  box-shadow: 0 2px 6px -3px rgba(12,29,20,.07);
  position: relative;
  overflow: hidden;
}
.pv-v2-kpi::before {
  content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 4px;
  background: linear-gradient(180deg, currentColor 0%, transparent 100%);
  opacity: .55;
}
.pv-v2-kpi--power   { color: #b9740a; }
.pv-v2-kpi--prod    { color: #f59e0b; }
.pv-v2-kpi--savings { color: #15a34a; }
.pv-v2-kpi--roi     { color: #0ea5e9; }
.pv-v2-kpi--roi.pv-v2-kpi--ok   { color: #15a34a; }
.pv-v2-kpi--roi.pv-v2-kpi--warn { color: #f59e0b; }
.pv-v2-kpi--roi.pv-v2-kpi--bad  { color: #e11d48; }
.pv-v2-kpi__ico { font-size: 22px; flex: 0 0 auto; line-height: 1; }
.pv-v2-kpi__body { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 1px; }
.pv-v2-kpi__body small {
  font-size: 10px; font-weight: 800; color: #6b7d72;
  text-transform: uppercase; letter-spacing: .07em;
}
.pv-v2-kpi__body strong {
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; font-size: 19px; letter-spacing: -.02em;
  color: #0c1d14; line-height: 1.05; margin-top: 1px;
}
.pv-v2-kpi__body strong span { font-size: 13px; font-weight: 700; color: #524a23; opacity: .75; }
.pv-v2-kpi--savings .pv-v2-kpi__body strong,
.pv-v2-kpi--roi.pv-v2-kpi--ok .pv-v2-kpi__body strong { color: #0f7a37; }
.pv-v2-kpi--roi.pv-v2-kpi--bad .pv-v2-kpi__body strong { color: #be123c; }
.pv-v2-kpi__body em {
  font-style: normal; font-size: 10.5px; color: #6b7d72;
  font-weight: 600; margin-top: 2px; line-height: 1.3;
}

/* --- 3. Wykres miesięczny --- */
.pv-v2-monthly {
  background: #fff; border: 1px solid #e2ebe0; border-radius: 14px;
  padding: 14px 16px 12px;
}
.pv-v2-monthly__head {
  display: flex; justify-content: space-between; align-items: baseline;
  gap: 10px; flex-wrap: wrap; margin-bottom: 8px;
}
.pv-v2-monthly__head strong {
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; font-size: 14px; color: #0c1d14;
}
.pv-v2-monthly__head span { font-size: 11px; color: #6b7d72; font-weight: 600; }
.pv-v2-monthly__head span b { color: #0c1d14; font-weight: 800; }
.pv-v2-monthly__chart { width: 100%; height: auto; display: block; }
.pv-v2-monthly__src   { display: block; font-size: 10.5px; color: #9aa9a0; font-weight: 500; margin-top: 6px; }

/* --- 4. Koszt vs dotacja --- */
.pv-v2-cost {
  background: #fff; border: 1px solid #e2ebe0; border-radius: 14px;
  padding: 14px 16px 14px;
  display: flex; flex-direction: column; gap: 8px;
}
.pv-v2-cost > strong {
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; font-size: 14px; color: #0c1d14;
  margin-bottom: 4px;
}
.pv-v2-cost__row { display: flex; align-items: center; gap: 10px; }
.pv-v2-cost__lbl {
  flex: 0 0 96px; font-size: 12px; font-weight: 700; color: #524a23;
  text-align: right;
}
.pv-v2-cost__bar {
  flex: 0 1 auto; min-width: 80px;
  height: 28px; border-radius: 8px; padding: 0 11px;
  display: flex; align-items: center;
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; font-size: 13px; color: #fff;
  transition: width .6s cubic-bezier(.22,1,.36,1);
  letter-spacing: -.01em;
}
.pv-v2-cost__row--gross .pv-v2-cost__bar { background: linear-gradient(135deg,#94a3b8,#64748b); }
.pv-v2-cost__row--grant .pv-v2-cost__bar { background: linear-gradient(135deg,#15a34a,#0f7a37); }
.pv-v2-cost__row--net   .pv-v2-cost__bar { background: linear-gradient(135deg,#0ea5e9,#0284c7); }

/* --- 5. ROI timeline --- */
.pv-v2-roi {
  background: linear-gradient(135deg,#f0fdf4 0%, #e7f7ec 100%);
  border: 1px solid #c4ead0; border-radius: 14px;
  padding: 14px 16px 14px;
}
.pv-v2-roi__head {
  display: flex; justify-content: space-between; align-items: baseline; gap: 10px;
  margin-bottom: 38px; flex-wrap: wrap;  /* v6.22.1: +24px na bubble "zwrot 3.5 lat" które wisi nad paskiem */
}
.pv-v2-roi__head strong {
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; font-size: 14px; color: #0f7a37;
}
.pv-v2-roi__head span { font-size: 11px; color: #6b7d72; font-weight: 600; }
.pv-v2-roi__track {
  position: relative; height: 12px;
  background: linear-gradient(90deg,#fbbf24 0%, #fde68a 25%, #d3efd9 25%, #86efac 100%);
  border-radius: 99px; margin: 12px 4px 6px;  /* v6.22.1: zmniejszone — bubble teraz mieści się dzięki margin-bottom na head */
}
.pv-v2-roi__fill {
  position: absolute; left: 0; top: 0; bottom: 0;
  background: linear-gradient(90deg,#15a34a,#0f7a37);
  border-radius: 99px;
  box-shadow: 0 0 0 1px rgba(15,122,55,.35) inset;
}
.pv-v2-roi__marker {
  position: absolute; top: -22px; transform: translateX(-50%);
  width: 2px; height: 28px; background: #0c1d14; pointer-events: none;
}
.pv-v2-roi__marker::after {
  content: ''; position: absolute; bottom: -6px; left: 50%; transform: translateX(-50%);
  width: 10px; height: 10px; border-radius: 50%;
  background: #0f7a37; border: 2px solid #fff; box-shadow: 0 0 0 2px #0f7a37;
}
.pv-v2-roi__bubble {
  position: absolute; bottom: 32px; left: 50%; transform: translateX(-50%);
  background: #0c1d14; color: #fff; font-size: 11px; font-weight: 800;
  padding: 4px 9px; border-radius: 8px; white-space: nowrap;
}
.pv-v2-roi__bubble::after {
  content: ''; position: absolute; top: 100%; left: 50%; transform: translateX(-50%);
  border: 4px solid transparent; border-top-color: #0c1d14;
}
.pv-v2-roi__scale {
  display: flex; justify-content: space-between; padding: 0 4px;
  font-size: 10px; font-weight: 700; color: #6b7d72;
  margin-top: 4px;
}
.pv-v2-roi__profit {
  margin: 10px 0 0; font-size: 12px; color: #0f7a37; font-weight: 600;
  line-height: 1.45;
}

/* --- 6. Kompas ekspozycji + teren --- */
.pv-v2-terrain {
  display: flex; gap: 14px; align-items: center;
  background: #fff; border: 1px solid #e2ebe0; border-radius: 14px;
  padding: 12px 16px;
}
.pv-v2-compass { flex: 0 0 auto; width: 72px; height: 72px; }
.pv-v2-compass svg { width: 100%; height: 100%; display: block; }
.pv-v2-terrain__txt { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 6px; }
.pv-v2-terrain__row {
  display: flex; align-items: baseline; gap: 8px;
  font-size: 12.5px; flex-wrap: wrap;
}
.pv-v2-terrain__row span { color: #6b7d72; font-weight: 600; min-width: 105px; }
.pv-v2-terrain__row b {
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; font-size: 14px; color: #0c1d14;
}
.pv-v2-terrain__row em {
  font-style: normal; font-size: 11px; color: #15a34a; font-weight: 700;
  background: #e7f7ec; padding: 2px 7px; border-radius: 99px;
}

/* --- 7+8. Details (farma, założenia) --- */
.pv-v2-fold {
  background: #fafcfb; border: 1px solid #e6ece8; border-radius: 12px;
  overflow: hidden;
}
.pv-v2-fold > summary {
  cursor: pointer; padding: 11px 14px; font-size: 13px; font-weight: 700;
  color: #524a23; user-select: none;
  list-style: none; display: flex; align-items: center; justify-content: space-between;
}
.pv-v2-fold > summary::-webkit-details-marker { display: none; }
.pv-v2-fold > summary::after {
  content: '▾'; font-size: 12px; color: #6b7d72; transition: transform .2s ease;
}
.pv-v2-fold[open] > summary::after { transform: rotate(180deg); }
.pv-v2-fold > summary:hover { background: rgba(21,163,74,.05); color: #0f7a37; }
.pv-v2-fold__body {
  padding: 0 14px 13px; font-size: 12.5px; color: #524a23; line-height: 1.55;
}
.pv-v2-fold__body p { margin: 6px 0; }
.pv-v2-fold__grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 8px;
}
.pv-v2-fold__grid > div {
  background: #fff; padding: 8px 11px; border-radius: 9px;
  border: 1px solid #e6ece8;
  display: flex; flex-direction: column; gap: 1px;
}
.pv-v2-fold__grid > div span {
  font-size: 10px; color: #6b7d72; font-weight: 700;
  text-transform: uppercase; letter-spacing: .04em;
}
.pv-v2-fold__grid > div b {
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; font-size: 14px; color: #0c1d14;
}
.pv-v2-fold__note { font-size: 11px !important; color: #9aa9a0 !important; font-style: italic; }

/* --- RESPONSIVE: mobile (≤640) --- */
@media (max-width: 640px) {
  .pv-v2-hero { gap: 14px; padding: 14px; }
  .pv-v2-gauge { width: 80px; height: 80px; }
  .pv-v2-gauge__txt strong { font-size: 22px; }
  .pv-v2-hero__txt strong { font-size: 15px; }

  .pv-v2-kpi-grid { grid-template-columns: 1fr 1fr; gap: 8px; }
  .pv-v2-kpi { padding: 10px 11px; }
  .pv-v2-kpi__body strong { font-size: 17px; }

  .pv-v2-monthly { padding: 12px 12px 10px; }
  .pv-v2-monthly__head { gap: 6px; }
  .pv-v2-monthly__head span { font-size: 10.5px; }

  .pv-v2-cost__lbl { flex: 0 0 78px; font-size: 11px; }
  .pv-v2-cost__bar { font-size: 12px; height: 24px; padding: 0 9px; }

  .pv-v2-roi__head { gap: 6px; margin-bottom: 40px; }  /* v6.22.1: na mobile też potrzebne miejsce na bubble */
  .pv-v2-roi__bubble { font-size: 10.5px; padding: 3px 7px; }

  .pv-v2-terrain { gap: 12px; padding: 11px 12px; }
  .pv-v2-compass { width: 60px; height: 60px; }
  .pv-v2-terrain__row span { min-width: 90px; }
  .pv-v2-terrain__row b { font-size: 13px; }

  .pv-v2-fold__grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 420px) {
  .pv-v2-kpi-grid { grid-template-columns: 1fr; }
  .pv-v2-fold__grid { grid-template-columns: 1fr; }
}

/* ============================================================
   v6.22.3 — CENY DZIAŁEK REDESIGN
   - duża karta z szacowaną wartością + widełki
   - paski porównawcze cen za m² (Warszawa / średnia / TWOJA / wieś)
   - linki do realnych ofert (Otodom / OLX / RCN)
   - details: czynniki wpływające + dyskleymer
   ============================================================ */
.ig-price-detail { display: flex; flex-direction: column; gap: 16px; padding: 4px 0 8px; }
.ig-price-big {
  background: linear-gradient(135deg, #ecfdf5 0%, #d1fae5 100%);
  border: 1.5px solid #15a34a;
  border-radius: 16px;
  padding: 16px 18px;
  position: relative;
  overflow: hidden;
}
.ig-price-big__head {
  display: flex; justify-content: space-between; align-items: baseline;
  gap: 10px; flex-wrap: wrap; margin-bottom: 4px;
}
.ig-price-big__lbl {
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; font-size: 13px; color: #0f7a37; text-transform: uppercase;
  letter-spacing: .04em;
}
.ig-price-big__sub { font-size: 11px; color: #524a23; font-weight: 600; }
.ig-price-big__amount {
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 900; font-size: 34px; letter-spacing: -.02em;
  color: #0f7a37; line-height: 1; margin: 6px 0 8px;
}
.ig-price-big__range {
  font-size: 13px; color: #103221; display: flex; gap: 6px; align-items: baseline;
}
.ig-price-big__range b {
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; color: #0c1d14; letter-spacing: -.01em;
}
.ig-price-big__formula {
  margin-top: 10px; padding-top: 10px; border-top: 1px dashed rgba(15,122,55,.3);
  font-size: 12.5px; color: #103221;
}
.ig-price-big__formula b {
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; color: #0c1d14;
}
.ig-price-big__alt {
  margin-top: 8px; padding: 9px 12px;
  background: rgba(245,158,11,.08); border: 1px solid rgba(245,158,11,.25);
  border-radius: 10px; font-size: 12.5px; color: #524a23;
}
.ig-price-big__alt b {
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; color: #b9740a;
}
.ig-price-big__alt small { color: #6b7d72; font-size: 11px; }

.ig-price-cmp {
  background: #fff; border: 1px solid #e2ebe0; border-radius: 14px;
  padding: 14px 16px;
  display: flex; flex-direction: column; gap: 7px;
}
.ig-price-cmp__title {
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; font-size: 14px; color: #0c1d14;
  margin-bottom: 6px;
}
.ig-price-cmp-row { display: flex; align-items: center; gap: 8px; }
.ig-price-cmp-lbl {
  flex: 0 0 130px; font-size: 11.5px; color: #524a23; font-weight: 600;
  text-align: right; line-height: 1.3;
}
.ig-price-cmp-bar {
  flex: 0 1 auto; min-width: 92px;
  height: 26px; border-radius: 7px; padding: 0 10px;
  white-space: nowrap;
  background: linear-gradient(135deg, #94a3b8 0%, #64748b 100%);
  display: flex; align-items: center;
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; font-size: 12px; color: #fff;
  letter-spacing: -.01em;
  transition: width .6s cubic-bezier(.22,1,.36,1);
}
.ig-price-cmp-row.is-yours .ig-price-cmp-bar {
  background: linear-gradient(135deg, #15a34a 0%, #0f7a37 100%);
  box-shadow: 0 3px 8px rgba(15,122,55,.3);
}
.ig-price-cmp-row.is-yours .ig-price-cmp-lbl {
  color: #0f7a37; font-weight: 800;
}
.ig-price-cmp__src {
  margin-top: 4px; font-size: 10.5px; color: #9aa9a0; font-weight: 500;
  line-height: 1.4;
}

.ig-price-real {
  background: #fafcfb; border: 1px solid #e6ece8; border-radius: 14px;
  padding: 14px 16px;
}
.ig-price-real > strong {
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; font-size: 14px; color: #0c1d14;
  display: block; margin-bottom: 4px;
}
.ig-price-real > p {
  font-size: 12px; color: #524a23; line-height: 1.5; margin: 0 0 10px;
}
.ig-price-links { display: flex; flex-direction: column; gap: 7px; }
.ig-price-link {
  display: flex; align-items: center; gap: 10px;
  padding: 10px 13px; border-radius: 10px;
  text-decoration: none; color: #fff;
  transition: filter .15s ease, transform .12s ease;
  font-family: 'Inter', sans-serif;
}
.ig-price-link:hover { filter: brightness(1.08); transform: translateY(-1px); }
.ig-price-link__name {
  font-weight: 800; font-size: 13.5px; flex: 0 0 auto;
}
.ig-price-link__hint {
  font-size: 11.5px; opacity: .85; flex: 1 1 auto; min-width: 0;
}
.ig-price-link__arrow { font-size: 14px; opacity: .85; flex: 0 0 auto; }
.ig-price-link--otodom    { background: linear-gradient(135deg,#ea580c,#c2410c); }
.ig-price-link--olx       { background: linear-gradient(135deg,#7c3aed,#5b21b6); }
.ig-price-link--geoportal { background: linear-gradient(135deg,#103221,#0a2017); }

.ig-price-fold {
  background: #fafcfb; border: 1px solid #e6ece8; border-radius: 12px;
  overflow: hidden;
}
.ig-price-fold > summary {
  cursor: pointer; padding: 11px 14px; font-size: 13px; font-weight: 700;
  color: #524a23; user-select: none; list-style: none;
  display: flex; align-items: center; justify-content: space-between;
}
.ig-price-fold > summary::-webkit-details-marker { display: none; }
.ig-price-fold > summary::after {
  content: '▾'; font-size: 12px; color: #6b7d72; transition: transform .2s ease;
}
.ig-price-fold[open] > summary::after { transform: rotate(180deg); }
.ig-price-fold > summary:hover { background: rgba(21,163,74,.05); color: #0f7a37; }
.ig-price-fold__body {
  padding: 0 14px 13px; font-size: 12.5px; color: #524a23; line-height: 1.55;
}
.ig-price-factors {
  list-style: none; padding: 0; margin: 8px 0;
  display: flex; flex-direction: column; gap: 7px;
}
.ig-price-factors li {
  padding: 8px 11px; background: #fff; border: 1px solid #e6ece8;
  border-radius: 9px; font-size: 12px; line-height: 1.45;
}
.ig-price-factors b {
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; color: #0c1d14;
}
.ig-price-disclaimer {
  margin-top: 8px; font-size: 11.5px; color: #b9740a; font-style: italic;
  line-height: 1.5;
  background: #fef3e2; padding: 9px 11px; border-radius: 9px;
  border: 1px solid #f3dcae;
}

@media (max-width: 640px) {
  .ig-price-big { padding: 14px; }
  .ig-price-big__amount { font-size: 28px; }
  .ig-price-big__head { gap: 4px; }
  .ig-price-cmp-lbl { flex: 0 0 100px; font-size: 11px; }
  .ig-price-cmp-bar { font-size: 11px; padding: 0 8px; height: 24px; }
  .ig-price-link__hint { font-size: 11px; }
}
@media (max-width: 420px) {
  .ig-price-cmp-lbl { flex: 0 0 85px; }
}

/* ============================================================
   v6.22.2 — POWÓDŹ I OPADY REDESIGN
   ============================================================ */
.ig-flood-v2 { display: flex; flex-direction: column; gap: 14px; padding: 4px 0 8px; }

.ig-flood-zones { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.ig-flood-zone {
  display: flex; align-items: center; gap: 10px;
  padding: 12px 14px;
  border-radius: 13px;
  border: 1.5px solid; background: #fff;
}
.ig-flood-zone.is-ok   { border-color: #15a34a; background: linear-gradient(135deg,#ecfdf5,#d1fae5); }
.ig-flood-zone.is-warn { border-color: #f59e0b; background: linear-gradient(135deg,#fef3e2,#fde4be); }
.ig-flood-zone.is-bad  { border-color: #e11d48; background: linear-gradient(135deg,#fde7ec,#fbd0d8); }
.ig-flood-zone__ico { font-size: 24px; line-height: 1; flex: 0 0 auto; }
.ig-flood-zone__body small {
  display: block; font-size: 10.5px; font-weight: 700; color: #524a23;
  text-transform: uppercase; letter-spacing: .04em;
}
.ig-flood-zone__body strong {
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; font-size: 15px; color: #0c1d14; letter-spacing: -.01em;
  margin-top: 2px; display: block;
}
.ig-flood-zone.is-ok   .ig-flood-zone__body strong { color: #0f7a37; }
.ig-flood-zone.is-warn .ig-flood-zone__body strong { color: #b9740a; }
.ig-flood-zone.is-bad  .ig-flood-zone__body strong { color: #be123c; }

.ig-flood-water {
  display: grid; grid-template-columns: 1fr 1.4fr; gap: 12px;
  background: #fff; border: 1px solid #e2ebe0; border-radius: 14px;
  padding: 12px; align-items: stretch;
}
.ig-flood-water__info { display: flex; flex-direction: column; gap: 7px; justify-content: center; }
.ig-flood-water__row {
  display: flex; flex-direction: column; gap: 1px;
}
.ig-flood-water__row span {
  font-size: 10.5px; font-weight: 700; color: #6b7d72;
  text-transform: uppercase; letter-spacing: .04em;
}
.ig-flood-water__row b {
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; font-size: 15px; color: #0c1d14;
}
.ig-mini-map--flood { height: 180px; border-radius: 10px; overflow: hidden; border: 1px solid rgba(12,29,20,.1); }

.ig-flood-precip {
  background: linear-gradient(135deg,#f0f9ff,#e0f2fe);
  border: 1px solid #7dd3fc; border-radius: 14px; padding: 14px 16px;
}
.ig-flood-precip__head {
  display: flex; justify-content: space-between; align-items: center;
  gap: 14px; flex-wrap: wrap; margin-bottom: 10px;
}
.ig-flood-precip__head strong {
  display: block;
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; font-size: 15px; color: #0c4a6e;
}
.ig-flood-precip__head small { display: block; font-size: 11px; color: #075985; margin-top: 2px; font-weight: 600; }
.ig-flood-precip__total {
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 900; font-size: 28px; line-height: 1;
  color: #0284c7; letter-spacing: -.02em;
}
.ig-flood-precip__total span { font-size: 13px; font-weight: 700; opacity: .7; }
.ig-flood-precip__volume {
  background: #fff; border: 1px solid rgba(2,132,199,.25); border-radius: 10px;
  padding: 10px 12px; font-size: 12.5px; color: #0c4a6e; line-height: 1.45;
  margin-bottom: 10px;
}
.ig-flood-precip__volume b {
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; color: #0284c7;
}
.ig-flood-precip__volume small { display: block; margin-top: 2px; font-size: 11px; opacity: .8; }
.ig-flood-precip__chartbox { background: #fff; border-radius: 10px; padding: 10px 12px 8px; }
.ig-flood-precip__hint {
  display: block; font-size: 11px; color: #075985; font-weight: 600;
  margin-bottom: 6px;
}
.ig-flood-precip__hint b { color: #0c1d14; font-family: 'Plus Jakarta Sans','Inter',sans-serif; font-weight: 800; }
.ig-flood-precip__chart { width: 100%; height: auto; display: block; }

@media (max-width: 640px) {
  .ig-flood-zones { grid-template-columns: 1fr; }
  .ig-flood-water { grid-template-columns: 1fr; }
  .ig-mini-map--flood { height: 160px; }
  .ig-flood-precip__total { font-size: 24px; }
}

/* ============================================================
   v6.22.4 — UCIĄŻLIWOŚCI REDESIGN
   ============================================================ */
.ig-nu-v2 { display: flex; flex-direction: column; gap: 14px; padding: 4px 0 8px; }

.ig-nu-hero {
  display: flex; gap: 16px; align-items: center;
  padding: 14px 16px; border-radius: 14px;
  border: 1.5px solid;
}
.ig-nu-hero--ok   { background: linear-gradient(135deg,#ecfdf5,#d1fae5); border-color: #15a34a; }
.ig-nu-hero--warn { background: linear-gradient(135deg,#fef3e2,#fde4be); border-color: #f59e0b; }
.ig-nu-hero--bad  { background: linear-gradient(135deg,#fde7ec,#fbd0d8); border-color: #e11d48; }
.ig-nu-gauge {
  flex: 0 0 auto; position: relative; width: 80px; height: 80px;
}
.ig-nu-gauge svg { width: 100%; height: 100%; display: block; }
.ig-nu-gauge__txt {
  position: absolute; inset: 0; display: flex; flex-direction: column;
  align-items: center; justify-content: center; line-height: 1;
}
.ig-nu-gauge__txt strong {
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; font-size: 22px; color: #0c1d14; letter-spacing: -.02em;
}
.ig-nu-gauge__txt small { font-size: 10px; color: #6b7d72; font-weight: 700; margin-top: 2px; }
.ig-nu-hero__txt { flex: 1 1 auto; min-width: 0; }
.ig-nu-hero__txt strong {
  display: block;
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; font-size: 16px; color: #0c1d14; letter-spacing: -.01em;
}
.ig-nu-hero__txt p { margin: 4px 0 2px; font-size: 12.5px; color: #524a23; line-height: 1.4; }
.ig-nu-hero__txt small { font-size: 11px; color: #6b7d72; }

.ig-nu-cats { display: flex; flex-direction: column; gap: 7px; }
.ig-nu-cat {
  display: flex; align-items: center; gap: 11px;
  padding: 10px 13px; background: #fff;
  border: 1px solid #e2ebe0; border-radius: 11px;
  border-left: 4px solid;
}
.ig-nu-cat.is-close { border-left-color: #e11d48; background: #fef2f3; }
.ig-nu-cat.is-mid   { border-left-color: #f59e0b; }
.ig-nu-cat.is-far   { border-left-color: #15a34a; }
.ig-nu-cat__ico { font-size: 22px; line-height: 1; flex: 0 0 auto; }
.ig-nu-cat__body { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 1px; }
.ig-nu-cat__body strong {
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 700; font-size: 13.5px; color: #0c1d14;
}
.ig-nu-cat__body strong em {
  font-style: normal; font-weight: 700; color: #f59e0b; font-size: 11.5px;
  margin-left: 2px;
}
.ig-nu-cat__body small { font-size: 11px; color: #6b7d72; }
.ig-nu-cat__dist {
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; font-size: 13px; color: #524a23;
  flex: 0 0 auto;
}
.ig-nu-cat.is-close .ig-nu-cat__dist { color: #e11d48; }
.ig-nu-cat.is-mid   .ig-nu-cat__dist { color: #b9740a; }
.ig-nu-cat.is-far   .ig-nu-cat__dist { color: #0f7a37; }

.ig-nu-map-card {
  background: #fff; border: 1px solid #e2ebe0; border-radius: 14px;
  padding: 14px 16px 12px;
}
.ig-nu-map-card > strong {
  display: block; margin-bottom: 8px;
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; font-size: 14px; color: #0c1d14;
}
.ig-mini-map--nuisance {
  width: 100%; height: 280px; border-radius: 10px; overflow: hidden;
  border: 1px solid rgba(12,29,20,.1);
}
.ig-nu-map__note { font-size: 11px; color: #6b7d72; margin: 8px 0 0; line-height: 1.5; }

@media (max-width: 640px) {
  .ig-nu-hero { gap: 12px; padding: 12px; }
  .ig-nu-gauge { width: 68px; height: 68px; }
  .ig-nu-gauge__txt strong { font-size: 18px; }
  .ig-mini-map--nuisance { height: 220px; }
}

/* ============================================================
   v6.22.5 — POWIETRZE REDESIGN (paski PM10/PM2.5 z normami)
   ============================================================ */
.ig-air-v2 { display: flex; flex-direction: column; gap: 14px; padding: 4px 0 8px; }

.ig-air-station {
  display: flex; gap: 14px; flex-wrap: wrap;
  background: #fafcfb; border: 1px solid #e2ebe0; border-radius: 11px;
  padding: 10px 14px;
}
.ig-air-station__row { display: flex; gap: 6px; align-items: baseline; font-size: 12.5px; }
.ig-air-station__row span { color: #6b7d72; font-weight: 600; }
.ig-air-station__row b {
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; color: #0c1d14;
}

.ig-air-bars { display: flex; flex-direction: column; gap: 14px; }
.ig-air-bar {
  background: #fff; border: 1px solid #e2ebe0; border-radius: 12px;
  padding: 12px 14px 14px;
}
.ig-air-bar--nodata { opacity: .7; }
.ig-air-bar__head {
  display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap;
  margin-bottom: 8px;
}
.ig-air-bar__head span {
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; font-size: 14px; color: #0c1d14;
  flex: 0 0 auto;
}
.ig-air-bar__head b {
  font-family: 'Plus Jakarta Sans','Inter',sans-serif;
  font-weight: 800; font-size: 20px; letter-spacing: -.01em;
}
.ig-air-bar__head b small { font-size: 12px; font-weight: 700; opacity: .65; }
.ig-air-bar.is-ok   .ig-air-bar__head b { color: #0f7a37; }
.ig-air-bar.is-warn .ig-air-bar__head b { color: #b9740a; }
.ig-air-bar.is-bad  .ig-air-bar__head b { color: #be123c; }
.ig-air-bar__head em {
  font-style: normal; font-size: 11.5px; font-weight: 700;
  padding: 3px 9px; border-radius: 99px; white-space: nowrap;
  margin-left: auto;
}
.ig-air-bar.is-ok   .ig-air-bar__head em { background: #d1fae5; color: #0f7a37; }
.ig-air-bar.is-warn .ig-air-bar__head em { background: #fde4be; color: #b9740a; }
.ig-air-bar.is-bad  .ig-air-bar__head em { background: #fbd0d8; color: #be123c; }

.ig-air-bar__track {
  position: relative; height: 14px; border-radius: 99px;
  background: #f3f6f1; overflow: hidden;
}
.ig-air-bar__zone-ok   { position: absolute; left: 0; top: 0; bottom: 0; background: rgba(21,163,74,.18); }
.ig-air-bar__zone-warn { position: absolute; top: 0; bottom: 0; background: rgba(245,158,11,.22); }
.ig-air-bar__zone-bad  { position: absolute; top: 0; bottom: 0; background: rgba(225,29,72,.22); }
.ig-air-bar__fill {
  position: absolute; left: 0; top: 0; bottom: 0;
  background: linear-gradient(90deg, #15a34a 0%, #f59e0b 50%, #e11d48 100%);
  border-radius: 99px;
  transition: width .6s cubic-bezier(.22,1,.36,1);
  z-index: 1;
}
.ig-air-bar__marker {
  position: absolute; top: -3px; width: 8px; height: 20px; transform: translateX(-50%);
  background: #0c1d14; border-radius: 4px; z-index: 2;
  box-shadow: 0 1px 4px rgba(0,0,0,.3);
}
.ig-air-bar__scale {
  position: relative; height: 12px; margin-top: 6px; font-size: 10px;
  color: #6b7d72; font-weight: 700;
}
.ig-air-bar__scale span {
  position: absolute; transform: translateX(-50%); white-space: nowrap;
}

/* ============================================================
   GEOMETRIA — CZARNO-BIAŁY RYSUNEK TECHNICZNY DZIAŁKI
   ============================================================ */
.ig-geom-v2{display:grid;gap:12px;padding:4px 0 2px}
.ig-geom-sketch{margin:0;padding:0;border:0;border-radius:10px;background:#fff;overflow:hidden}
.ig-parcel-svg{display:block;width:100%;max-width:420px;height:auto;margin:0 auto;color:#171b18;background:#fff}
.ig-parcel-svg__base{fill:#fff}
.ig-parcel-svg__map{opacity:.9}
.ig-parcel-svg__veil{fill:rgba(255,255,255,.025)}
.ig-parcel-svg__frame{fill:none;stroke:#c8cfca;stroke-width:1;vector-effect:non-scaling-stroke}
.ig-parcel-svg__shape{fill:#fff;fill-rule:evenodd;stroke:#0d100e;stroke-width:3.4;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;filter:drop-shadow(0 1px 1px rgba(255,255,255,.9))}
.ig-parcel-svg__side-labels line{stroke:#3d4741;stroke-width:.9;stroke-linecap:round;vector-effect:non-scaling-stroke}
.ig-parcel-svg__side-labels text{fill:#111512;stroke:rgba(255,255,255,.97);stroke-width:4px;stroke-linejoin:round;paint-order:stroke fill;font:800 15px/1 var(--ig-font,system-ui,-apple-system,"Segoe UI",sans-serif);letter-spacing:-.015em}
.ig-geom-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;border-top:1px solid #d9dfdb;border-bottom:1px solid #d9dfdb}
.ig-geom-stat{display:grid;gap:2px;min-width:0;padding:10px 12px;background:transparent}
.ig-geom-stat+.ig-geom-stat{border-left:1px solid #d9dfdb}
.ig-geom-stat dt{margin:0;color:#68736c;font-size:10.5px;font-weight:700;line-height:1.3}
.ig-geom-stat dd{margin:0;color:#151a17;font-size:14px;font-weight:850;line-height:1.3}
.ig-geom-fragments{margin:0!important;padding:9px 11px;border:1px solid #e6c978;border-radius:9px;color:#60450a;background:#fff9e7;font-size:12px;font-weight:700}
.ig-geom-meta{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:2px 8px;color:#66716b;font-size:8.75px;line-height:1.25}
.ig-geom-meta code{padding:0;border:0;background:transparent;color:#66716b;font:550 8.75px/1.25 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:nowrap}
.ig-geom-meta small{min-width:0;font-size:8.75px;line-height:1.25;text-align:right}
.ig-geom-meta a{color:#59675f!important;font-weight:600!important;text-decoration:underline;text-underline-offset:2px}
.ig-road-access{display:grid;gap:0;margin:0 0 10px;border:1px solid #dce4de;border-radius:10px;overflow:hidden}
.ig-road-access>div{display:grid;grid-template-columns:minmax(112px,.8fr) minmax(0,1.2fr);gap:10px;padding:9px 11px;background:#fff}
.ig-road-access>div+div{border-top:1px solid #e4e9e5}
.ig-road-access dt{margin:0;color:#68736c;font-size:11px;font-weight:700;line-height:1.35}
.ig-road-access dd{margin:0;color:#172019;font-size:11.5px;font-weight:750;line-height:1.35}
@media(max-width:600px){details.ig-truth-card[data-truth-section="road_context"]>.ig-truth-card__details{padding-left:14px!important}}
@media(max-width:380px){.ig-geom-stat{padding-inline:9px}.ig-geom-stat dd{font-size:13px}.ig-road-access>div{grid-template-columns:1fr;gap:2px}}

/* v6.22.11 audyt 1.1 — header search bar: wszystkie 4 elementy 44px, brak +5px offsetu na .primary (lupa) */
body.has-map-shell .top-search.compact-search .tabs,
body.has-map-shell .top-search.compact-search .search-wrap,
body.has-map-shell .top-search.compact-search .tab,
body.has-map-shell .top-search.compact-search #searchInput,
body.has-map-shell .top-search.compact-search button.primary {
  height: 44px !important;
  min-height: 44px !important;
  align-self: center !important;
  box-sizing: border-box !important;
}
body.has-map-shell .top-search.compact-search button.primary {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 !important;
  line-height: 1 !important;
}
body.has-map-shell .top-search.compact-search #searchInput {
  line-height: 44px !important;
}
body.has-map-shell .top-search.compact-search .tab {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* v6.22.14 audyt 3.1 — panel DZIAŁKA (.ig-hero + .ig-visual-footer): nie wychodzi poza lewą krawędź na mobile.
   Wymusza box-sizing:border-box, width:100%, overflow-wrap:anywhere dla długich TERYT (101710_2.0007.1361). */
body.has-map-shell .ig-hero,
body.has-map-shell .ig-main-card,
body.has-map-shell .ig-main-visual-card {
  max-width: 100% !important;
  width: 100% !important;
  box-sizing: border-box !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
body.has-map-shell .ig-visual-footer,
body.has-map-shell .ig-hero__id {
  max-width: 100% !important;
  box-sizing: border-box !important;
  overflow-wrap: anywhere !important;
}
body.has-map-shell .ig-visual-footer__id,
body.has-map-shell .ig-hero__id strong,
body.has-map-shell .ig-hero__id small {
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}
@media (max-width: 420px) {
  body.has-map-shell .ig-visual-footer__id { font-size: 10.5px !important; }
  body.has-map-shell .ig-visual-footer__main { font-size: 13.5px !important; }
}

/* v6.22.15 audyt 3.2 — „Zwrot w czasie": bubble „zwrot X lat" nachodzi na nagłówek.
   Track ma absolute marker z bubble nad nim (top:-28px) — domyślny margin 12px za mały.
   Bubble.height ~24px + caret + odstęp wymaga ~60px nad trackiem aby zmieścił się pod head bez kolizji. */
body.has-map-shell .pv-v2-roi__track {
  margin-top: 60px !important;
}
body.has-map-shell .pv-v2-roi__head {
  margin-bottom: 14px !important;
}

/* v6.22.16 audyt 3.3 — kafelki PV (Farma fotowoltaiczna + Założenia obliczeń):
   - Grid kolumny: sztywne 160px×3 nie skalowały na mobile → responsywne minmax(140px,1fr)
   - Każda komórka: label + wartość bez gap → flex-column + gap 4px
   - Paragrafy w Założeniach miały margin:0 → akapity zlewały się */
body.has-map-shell .pv-v2-fold__grid {
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)) !important;
  gap: 10px !important;
}
body.has-map-shell .pv-v2-fold__grid > div {
  display: flex !important;
  flex-direction: column !important;
  gap: 3px !important;
  padding: 10px 12px !important;
  background: rgba(255, 255, 255, 0.7) !important;
  border: 1px solid rgba(15, 23, 42, 0.06) !important;
  border-radius: 10px !important;
}
body.has-map-shell .pv-v2-fold__grid > div > span {
  font-size: 11px !important;
  font-weight: 700 !important;
  color: #557063 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.03em !important;
  line-height: 1.2 !important;
}
body.has-map-shell .pv-v2-fold__grid > div > b {
  font-size: 14px !important;
  font-weight: 800 !important;
  color: #0f2419 !important;
  line-height: 1.25 !important;
  word-break: break-word !important;
}
body.has-map-shell .pv-v2-fold > div:not(summary) > p + p {
  margin-top: 8px !important;
}
body.has-map-shell .pv-v2-fold > div:not(summary) > p {
  line-height: 1.5 !important;
}
body.has-map-shell .pv-v2-fold__note {
  margin-top: 10px !important;
  padding-top: 8px !important;
  border-top: 1px dashed rgba(15, 23, 42, 0.10) !important;
  color: #6b7d72 !important;
  font-style: italic !important;
}
body.has-map-shell .pv-v2-roi__bubble {
  z-index: 2 !important;
}

/* v6.22.x — RCN: realne ceny transakcyjne per typ (zwaloryzowane na dziś) */
.ig-rcn-prices{margin:10px 0 14px;padding:14px;border-radius:14px;background:linear-gradient(135deg,#f0f9f2,#eafaf0);border:1px solid #bfe6c9}
.ig-rcn-prices__title{display:block;color:#0b5f37;font-weight:900;font-size:14px;margin-bottom:10px}
.ig-rcn-row{display:grid;grid-template-columns:minmax(120px,1.2fr) auto;grid-template-areas:"type val" "meta meta";gap:2px 10px;padding:8px 0;border-bottom:1px dashed rgba(11,95,55,.15)}
.ig-rcn-row:last-of-type{border-bottom:0}
.ig-rcn-row__type{grid-area:type;font-weight:800;color:#10251a;font-size:13.5px}
.ig-rcn-row__val{grid-area:val;text-align:right;white-space:nowrap}
.ig-rcn-row__val b{color:#0b5f37;font-size:15px;font-weight:900}
.ig-rcn-row__val small{display:block;color:#5d7064;font-size:11px;font-weight:700}
.ig-rcn-row__ci{display:block;color:#8a5a00 !important;font-size:10.5px !important;font-weight:700 !important;margin-top:2px}
.ig-rcn-row__meta{grid-area:meta;color:#6b7d72;font-size:11px;font-weight:600}
.ig-rcn-prices__src{display:block;margin-top:10px;color:#5d7064;font-size:11px;line-height:1.45}
.ig-rcn-prices__src a{color:#0b5f37;text-decoration:underline;font-weight:700}

/* v6.24 — RCN meta (zakres dat + filtr wielkości) + tabela samples (ostatnie transakcje) */
.ig-rcn-meta{display:flex;flex-wrap:wrap;gap:6px 14px;margin:8px 0 10px;font-size:11.5px;color:#5d7064;font-weight:700}
.ig-rcn-meta span{display:inline-flex;align-items:center;gap:4px;background:#fff;border:1px solid #cbe5d3;border-radius:8px;padding:3px 8px}
.ig-rcn-samples{margin:10px 0 4px;padding:10px;border-radius:10px;background:#fff;border:1px solid #cbe5d3}
.ig-rcn-samples__title{display:block;color:#0b5f37;font-weight:800;font-size:12.5px;margin-bottom:8px}
.ig-rcn-samples__head{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;padding:4px 6px;font-size:11px;color:#5d7064;font-weight:700;text-transform:uppercase;letter-spacing:.3px;border-bottom:1px solid #d8eadd}
.ig-rcn-samples__row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;padding:6px;font-size:12.5px;color:#10251a;border-bottom:1px dashed #e2eee5}
.ig-rcn-samples__row:last-of-type{border-bottom:0}
.ig-rcn-samples__row b{color:#0b5f37}
.ig-rcn-samples__hint{display:block;margin-top:6px;color:#6b7d72;font-size:10.5px;font-style:italic;font-weight:600}

/* v6.24.1 — szerokie tabele w artykulach poradnika nie wyciekaja w prawo na mobile (~5px overflow) */
@media (max-width: 760px) {
  body.poradnik-article table,
  body.blog-article table {
    display: block;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

/* v6.22.27 — input wyszukiwarki min 16px: iOS Safari AUTO-ZOOMUJE pole <16px przy focusie
   (ekran "skacze", gubi się wpisywany tekst). 16px = brak zoomu, tekst wyraźnie widoczny. */
body.has-map-shell .top-search.compact-search #searchInput{
  font-size:16px !important;
  color:#142412 !important;            /* mocny kontrast wpisywanego tekstu */
  -webkit-text-fill-color:#142412 !important;
}
body.has-map-shell .top-search.compact-search #searchInput::placeholder{
  color:#8aa094 !important;            /* delikatna podpowiedź zamiast pustego pola */
  -webkit-text-fill-color:#8aa094 !important;
  opacity:1 !important;
}

/* INFOGRUNT „Co budują w okolicy" (GUNB RWDZ) v6.30 */
.ig-rwdz-warn{background:#fff4f3;border:1px solid #f6c6c0;border-radius:12px;padding:10px 12px;margin:0 0 12px}
.ig-rwdz-warn>b{display:block;color:#b3261e;font-size:13px;margin-bottom:6px;line-height:1.3}
.ig-rwdz-list>b{display:block;font-size:13px;color:#0c2719;margin:8px 0 4px}
.ig-rwdz-row{display:flex;gap:10px;align-items:flex-start;padding:7px 0;border-bottom:1px solid rgba(8,28,18,.07)}
.ig-rwdz-row:last-child{border-bottom:0}
.ig-rwdz-row__d{flex:0 0 54px;font-weight:800;color:#17ad52;font-size:13px;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.ig-rwdz-row--nuis .ig-rwdz-row__d{color:#b3261e}
.ig-rwdz-row__b{display:flex;flex-direction:column;gap:1px;min-width:0}
.ig-rwdz-row__b b{font-size:13px;font-weight:700;color:#0c2719;line-height:1.25}
.ig-rwdz-row__b small{font-size:11px;color:#5d7064;line-height:1.3}
.ig-rwdz-what{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ig-rwdz-row.is-open .ig-rwdz-what{-webkit-line-clamp:unset;overflow:visible}
.ig-rwdz-more{align-self:flex-start;background:none;border:0;padding:2px 0;color:#17ad52;font-size:11px;font-weight:800;cursor:pointer;line-height:1.2}
.ig-rwdz-row--nuis .ig-rwdz-more{color:#b3261e}

/* v6.37.7 (feedback usera): belka „uciekała" na pełnym ekranie. Była lewo-przypięta
   (body.has-map-shell .topbar.compact-topbar{left:20px;width:min(920px,100vw-240px)}), a PL/menu
   pływały osobno (position:fixed right) → duża pusta przestrzeń po prawej i rozjazd. Na szerokich
   ekranach (>=1181px) robimy SPÓJNĄ pełnoszerokościową belkę: logo trzyma stałą pozycję po lewej,
   search w środku (capowany), PL/menu w prawym KOŃCU już W BELCE (margin-left:auto). Specyficzność
   .ig-topbar (0,4,0) bije regułę has-map-shell (0,3,0). NIE rusza progów <=1180px (te są OK). */
@media (min-width:1181px){
  body.has-map-shell .topbar.compact-topbar.ig-topbar{
    left:16px !important; right:16px !important; width:auto !important; max-width:none !important;
    display:flex !important; align-items:center !important; flex-wrap:nowrap !important;
    gap:14px !important; padding-right:14px !important;
  }
  body.has-map-shell .topbar.compact-topbar.ig-topbar .brand{ flex:0 0 auto !important; }
  body.has-map-shell .topbar.compact-topbar.ig-topbar .top-search{
    flex:1 1 auto !important; max-width:780px !important; min-width:0 !important;
  }
  body.has-map-shell .topbar.compact-topbar.ig-topbar .topbar-right{
    position:static !important; inset:auto !important; right:auto !important; left:auto !important;
    flex:0 0 auto !important; margin-left:auto !important; display:flex !important; align-items:center !important;
  }
}

/* ===== INFOGRUNT loader-fit v6.37.8 — okno ładowania raportu bez zbędnego scrolla =====
   Życzenie ownera: 6 kroków (Obrys / OSM / Powódź / Powietrze / Plan / Indeks) + pasek %
   mają mieścić się w całości, bez pionowego scrollbara. Czysta kosmetyka loadera:
   zacieśniamy odstępy karty .loading-card.v34 tak, by zmieściła się w panelu raportu
   bez przewijania (na typowych ekranach, w tym 1080p i laptopach). NIE używamy
   overflow:hidden — na bardzo niskim oknie wolimy łagodny scroll niż UCIĘCIE treści.
   Dotyka WYŁĄCZNIE karty ładowania (.loading-card.v34), nie treści raportu ani logiki.
   Reguły mobilne (media max-width:768px) mają wyższą specyficzność i nadal wygrywają. */
.loading-card.v34{ padding:13px 16px !important; }
.loading-card.v34 .loading-top{ margin-bottom:8px !important; }
.loading-card.v34 .loading-bar{ margin-bottom:9px !important; }
.loading-card.v34 .v34-steps{ gap:5px !important; margin-bottom:7px !important; }
.loading-card.v34 .v34-steps li{ padding:6px 10px !important; }
.loading-card.v34 .step-label{ line-height:1.2 !important; }
.loading-card.v34 .loading-hint{ padding:6px 10px !important; font-size:11.5px !important; line-height:1.35 !important; margin:0 !important; }

/* v6.37.11 — przycisk X (zamknij raport) na desktopie odrobinę dalej od narożnika,
   żeby ładniej siedział w zaokrąglonym rogu karty. Tylko desktop (>=861px), mobile
   bez zmian (tam pozycję ustawia mobile-report-hardfix w @media <=860px).
   Wysoka specyficzność (body.has-map-shell #btnCloseReport.drawer-close) bije
   późniejsze pliki. Nie koliduje z „%” (rezerwa loading-top padding-right). */
@media (min-width:861px){
  body.has-map-shell .parcel-drawer #btnCloseReport.drawer-close{ top:20px !important; right:20px !important; }
}

/* INFOGRUNT — X (zamknij) wyrównany z nagłówkiem loadera „Pobieram…" v6.37.12.
   Tylko gdy w panelu jest karta ładowania (.loading-card) — wtedy report-head jest ukryty,
   więc X (domyślnie top:20 pod zielony nagłówek raportu) wisiał nad nagłówkiem loadera.
   :has() scope’uje to do stanu ładowania; normalny raport bez zmian. Desktop only. */
@media (min-width:861px){
  body.has-map-shell #detailsPanel:has(.loading-card.v34) #btnCloseReport.drawer-close{ top:52px !important; }
}

/* P1 mobile report — one truthful status and a compact point-analysis state.
   Keep this scoped to the semantic no-geometry branch; confirmed parcel cards
   retain their existing visual treatment. */
.ig-report-status{
  display:flex !important;
  flex:0 0 auto !important;
  align-items:flex-start !important;
  gap:10px !important;
  margin:0 0 12px !important;
  padding:11px 13px !important;
  border-radius:12px !important;
  font-size:13.5px !important;
  line-height:1.45 !important;
  min-height:0 !important;
  box-sizing:border-box !important;
  overflow-wrap:anywhere !important;
}
.ig-report-status__marker{
  flex:0 0 22px !important;
  width:22px !important;
  height:22px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:50% !important;
  font-size:14px !important;
  font-weight:900 !important;
  line-height:1 !important;
  background:rgba(255,255,255,.7) !important;
  color:currentColor !important;
}
.ig-report-status--ready{ background:#e9f7ed !important; border:1px solid #bfe3c8 !important; color:#145d31 !important; }
.ig-report-status--partial,.ig-report-status--boundary{ background:#fff7e6 !important; border:1px solid #f1d49a !important; color:#6e4a08 !important; }
.ig-report-status--loading{ background:#eef6fb !important; border:1px solid #c7deef !important; color:#214e6a !important; }
.ig-parcel-c--approximate{
  min-height:0 !important;
  height:auto !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
}
.ig-parcel-c--approximate .ig-parcel-approximate{
  display:flex !important;
  align-items:flex-start !important;
  gap:13px !important;
  width:100% !important;
  min-height:0 !important;
  height:auto !important;
  box-sizing:border-box !important;
  padding:16px !important;
  border:1px solid #e2d3a9 !important;
  border-left:4px solid #b77b18 !important;
  border-radius:14px !important;
  background:#fffdf7 !important;
  color:#24352c !important;
  box-shadow:0 5px 18px rgba(67,54,21,.08) !important;
}
.ig-parcel-approximate__icon{
  flex:0 0 38px !important;
  width:38px !important;
  height:38px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:12px !important;
  background:#f4e4b8 !important;
  color:#76520b !important;
}
.ig-parcel-approximate__icon svg{ width:23px !important; height:23px !important; }
.ig-parcel-approximate__body{ min-width:0 !important; flex:1 1 auto !important; }
.ig-parcel-approximate .ig-eyebrow{
  margin:0 0 4px !important;
  color:#76520b !important;
  font-size:11px !important;
  font-weight:800 !important;
  letter-spacing:.06em !important;
  text-transform:uppercase !important;
}
.ig-parcel-approximate h3{
  margin:0 0 6px !important;
  color:#1b2c22 !important;
  font-size:18px !important;
  line-height:1.2 !important;
}
.ig-parcel-approximate p{ margin:0 0 8px !important; line-height:1.48 !important; overflow-wrap:anywhere !important; }
.ig-parcel-approximate__coordinates{ font-size:13px !important; }
.ig-parcel-approximate__coordinates code{ word-break:break-word !important; }
.ig-parcel-approximate__provenance{ color:#53665a !important; font-size:12px !important; }
.ig-parcel-approximate__cta{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:44px !important;
  min-height:44px !important;
  margin-top:3px !important;
  padding:9px 14px !important;
  border:1px solid #1b7148 !important;
  border-radius:10px !important;
  background:#1c8553 !important;
  color:#fff !important;
  font-weight:800 !important;
  line-height:1.25 !important;
  white-space:normal !important;
  text-align:center !important;
  cursor:pointer !important;
}
.ig-parcel-approximate__cta:hover{ background:#126c42 !important; }
.ig-parcel-approximate__cta:focus-visible{ outline:3px solid #f0b429 !important; outline-offset:2px !important; }
.ig-parcel-c--approximate .ig-main-card--approximate{
  min-height:0 !important;
  height:auto !important;
  margin-top:12px !important;
  padding:15px !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.94) !important;
  box-shadow:0 5px 18px rgba(20,50,30,.08) !important;
}
.ig-main-card--approximate .ig-main-card__title{
  margin:0 0 10px !important;
  color:#1b2c22 !important;
  font-size:15px !important;
  line-height:1.3 !important;
}
.ig-parcel-c--approximate .ig-tech-details{ margin-top:12px !important; }
.ig-parcel-c--approximate .ig-source-row{ flex-wrap:wrap !important; }
@media (max-width:760px){
  .ig-report-status{ font-size:13px !important; }
  .ig-parcel-c--approximate .ig-parcel-approximate{ padding:14px !important; }
  .ig-parcel-approximate__icon{ flex-basis:34px !important; width:34px !important; height:34px !important; border-radius:10px !important; }
  .ig-parcel-approximate__icon svg{ width:21px !important; height:21px !important; }
  .ig-parcel-approximate h3{ font-size:17px !important; }
  .ig-parcel-c--approximate .ig-main-card--approximate{ padding:13px !important; }
}
@media (max-width:380px){
  .ig-parcel-c--approximate .ig-parcel-approximate{ gap:9px !important; padding:12px !important; }
  .ig-parcel-approximate__icon{ flex-basis:30px !important; width:30px !important; height:30px !important; }
  .ig-parcel-approximate__icon svg{ width:18px !important; height:18px !important; }
  .ig-parcel-approximate h3{ font-size:16px !important; }
}
@media (prefers-reduced-motion:reduce){
  .ig-parcel-approximate__cta{ transition:none !important; }
}

/* P2: empty parcel-search recovery stays in flow at every tested width. */
body.has-map-shell .ig-workspace-search #searchSuggest.search-suggest:has(> .suggest-empty){
  position:static !important;
  top:auto !important;
  right:auto !important;
  bottom:auto !important;
  left:auto !important;
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  margin:8px 0 0 !important;
}
