:root{--ink:#17313e;--muted:#71838c;--line:#dce5e3;--surface:#ffffff;--paper:#f4f6f3;--blue:#326681;--blue-dark:#204d65;--yellow:#e8ad31}*{box-sizing:border-box}body,html{width:100%;min-height:100%}body{margin:0;overflow:hidden;background:var(--paper);color:var(--ink);font-family:Segoe UI,Inter,Arial,sans-serif}button,input{font:inherit}button{color:inherit}.icon{width:18px;height:18px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.map-app{height:100vh;min-height:620px;display:flex;flex-direction:column;background:var(--paper);overflow:hidden}.map-header{position:relative;z-index:100;height:74px;flex:0 0 74px;justify-content:space-between;gap:20px;padding:0 24px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.97);box-shadow:0 2px 14px rgba(24,49,62,.04)}.map-header,.map-header-center{display:flex;align-items:center}.map-header-center{flex:1;max-width:580px}.map-brand{display:flex;align-items:center;gap:11px;width:max-content;padding:0;border:0;background:transparent;cursor:pointer;text-align:left;flex-shrink:0}.map-brand-mark{width:38px;height:38px;display:grid;place-items:center;border:1px solid #9fb2b9;border-radius:50%;color:var(--blue);font:600 19px Georgia,serif}.map-brand>span:last-child{display:grid;gap:2px}.map-brand strong{font-size:14px;letter-spacing:.01em}.map-brand small{color:var(--muted);font-size:10px}.map-search{position:relative;z-index:110;height:43px;width:100%;display:flex;align-items:center;gap:10px;padding:0 13px;border:1px solid #d5dfdf;border-radius:8px;background:#f8faf8}.map-search:focus-within{border-color:#86a7b5;box-shadow:0 0 0 3px rgba(50,102,129,.09)}.map-search>.icon{color:#738993}.map-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:13px}.map-search input::placeholder{color:#8c9ba1}.search-clear{width:26px;height:26px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:#84959c;cursor:pointer}.search-clear:hover{background:#eaf0ee}.search-clear .icon{width:14px}.map-search-results{position:absolute;left:0;right:0;top:49px;z-index:120;max-height:440px;overflow-y:auto;padding:8px;border:1px solid var(--line);border-radius:10px;background:white;box-shadow:0 18px 55px rgba(26,49,61,.24)}.map-search-results button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:10px 12px;border:0;border-radius:7px;background:transparent;cursor:pointer;text-align:left;transition:background .12s ease}.map-search-results button:hover{background:#eef5f2}.map-search-results button>span{min-width:0;display:grid;gap:2px}.map-search-results strong{font-size:14px;font-weight:700;color:var(--ink)}.map-search-results small,.map-search-results strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-search-results small{color:#5a7079;font-size:11.5px;font-weight:500}.map-search-results em{flex:0 0 auto;color:#1e5267;font-size:9px;font-weight:750;font-style:normal;text-transform:uppercase;letter-spacing:.06em;background:#eaf3f5;padding:3px 7px;border-radius:4px}.header-info{justify-self:end;flex-shrink:0;display:flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid var(--line);border-radius:7px;background:white;color:#6f838c;cursor:pointer;font-size:9px;font-weight:700;letter-spacing:.04em}.header-info:hover{background:#f2f6f4}.header-info .icon{width:15px}.map-workspace{min-height:0;flex:1;display:flex;flex-direction:column;position:relative;overflow:hidden;width:100%;height:calc(100vh - 74px)}.map-canvas-wrap.is-hidden{visibility:hidden;position:absolute;inset:0;pointer-events:none;opacity:0;z-index:-1}.projects-dashboard.is-hidden{display:none!important}.humanitarian-panel{position:absolute;top:0;left:0;bottom:0;width:480px;z-index:50;display:flex;flex-direction:column;padding:0;border-right:1px solid var(--line);border-radius:0;box-shadow:6px 0 32px rgba(22,45,57,.12);overflow:hidden;animation:slideInLeft .3s cubic-bezier(.16,1,.3,1)}.hp-header-sticky,.humanitarian-panel{background:rgba(255,255,255,.98);backdrop-filter:blur(16px)}.hp-header-sticky{flex:0 0 auto;padding:24px 26px 8px;z-index:2;border-bottom:1px solid #edf3f1}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}.hp-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.hp-badge{padding:5px 11px;border-radius:6px;background:#eef4f6;color:var(--blue);font-size:11px;font-weight:800;letter-spacing:.08em}.hp-badge.oblast{background:#edf5f8;color:#1a627a}.hp-close{width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:50%;background:#f0f4f2;color:#72848c;cursor:pointer;transition:background .15s ease}.hp-close:hover{background:#e2eae7;color:var(--ink)}.hp-title-group h2{margin:0 0 6px;font:600 28px/1.15 Georgia,serif;color:var(--ink)}.hp-title-group p{margin:0 0 4px;color:#5c7078;font-size:14px;line-height:1.35}.hp-content{flex:1 1 auto;overflow-y:auto;padding:18px 26px 26px;display:flex;flex-direction:column;gap:22px}.hp-metrics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.hp-metric-card{display:flex;flex-direction:column;padding:12px 14px;border:1px solid #e3ebe8;border-radius:9px;background:#f8faf8}.hp-metric-card.priority{grid-column:1/-1;background:#f1f6f8;border-color:#cbdbe1}.hp-metric-card small{color:#819299;font-size:10px;font-weight:750;letter-spacing:.06em}.hp-metric-card strong{margin:4px 0 2px;font:600 20px Georgia,serif;color:var(--ink)}.hp-sub{color:#7b8d94;font-size:11px}.hp-progress{height:5px;margin:6px 0 4px;border-radius:10px;background:#d3e0e4;overflow:hidden}.hp-progress span{display:block;height:100%;background:var(--blue);border-radius:10px}.hp-section-title{margin-bottom:12px;color:#4b626b;font-size:13px;font-weight:800;letter-spacing:.06em}.hp-clusters-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}.hp-clusters-list li{display:flex;gap:11px;align-items:flex-start;padding:10px;border:1px solid #e5eded;border-radius:8px;background:white}.cluster-icon{font-size:20px;line-height:1}.hp-clusters-list strong{display:block;font-size:13px;color:var(--ink);margin-bottom:2px}.hp-clusters-list p{margin:0;font-size:12px;color:#768890;line-height:1.4}.hp-partners-list{display:flex;flex-direction:column;gap:8px}.hp-partner-item{padding:12px 14px;border:1px solid #e4ece9;border-radius:8px;background:#f9fbf9;display:flex;flex-direction:column;gap:4px}.hp-partner-item strong{font-size:14px;color:var(--ink)}.hp-partner-item small{color:#576d77;font-size:12.5px}.hp-projects-list{display:flex;flex-direction:column;gap:12px}.hp-project-item{padding:14px 16px;border:1px solid #dbe4e1;border-radius:10px;background:#ffffff;display:flex;flex-direction:column;gap:10px;box-shadow:0 2px 8px rgba(0,0,0,.02)}.hp-project-name{margin-bottom:2px}.hp-project-name,.hp-project-top strong{display:block;font-size:17px;font-weight:750;color:var(--ink)}.hp-project-top strong{margin-bottom:3px}.hp-project-top small{display:block;font-size:14px;color:#5a7079}.hp-activities-block{display:flex;flex-direction:column;gap:7px;padding-top:10px;border-top:1px dashed #e2eae7}.hp-activities-label{font-size:11.5px;font-weight:750;color:#6a7d86;text-transform:uppercase;letter-spacing:.04em}.hp-activities-chips{display:flex;flex-direction:column;gap:7px}.hp-activity-chip{display:flex;align-items:center;gap:9px;padding:9px 13px;border-radius:7px;background:#f2f7f5;border:1px solid #d5e5df}.hp-activity-dot{color:#248a62;font-size:11px;flex:0 0 auto}.hp-activity-text{font-size:15px;font-weight:700;color:#173744;line-height:1.3}.hp-project-footer{display:flex;align-items:center;justify-content:space-between;padding-top:8px;border-top:1px dashed #e7efed}.hp-status-tag{padding:3px 9px;border-radius:5px;background:#e8f4ef;color:#247a54;font-size:11px;font-weight:700}.hp-project-footer b{font-size:12px;color:var(--blue)}.hp-activity-block{display:flex;flex-direction:column;gap:8px;margin-top:8px;padding-top:8px;border-top:1px dashed #e1ebe7}.hp-activity-title{color:#1e4b5c;font-size:14px;font-weight:750}.hp-settlements-chips{display:flex;flex-wrap:wrap;gap:7px}.hp-settlement-chip{padding:7px 12px;border:1px solid #d4dedc;border-radius:7px;background:white;color:var(--ink);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.hp-settlement-chip:hover{border-color:var(--blue);background:#edf5f8;color:var(--blue)}.map-canvas-wrap{flex:1;width:100%;height:100%;min-width:0;min-height:0;position:relative;overflow:hidden;background:#f1f4f1}.map-canvas{position:absolute;inset:0}.map-canvas .maplibregl-canvas{outline:none}.map-canvas .maplibregl-ctrl-bottom-right{right:16px;bottom:15px}.map-canvas .maplibregl-ctrl-group{overflow:hidden;border:1px solid #d5dfdd;border-radius:8px;box-shadow:0 8px 24px rgba(31,54,64,.11)}.map-canvas .maplibregl-ctrl-group button{width:36px;height:36px}.map-canvas .maplibregl-ctrl-attrib{border-radius:4px;color:#687c85;font-size:9px}.map-canvas .maplibregl-ctrl-attrib-button{width:24px;height:24px}.map-heading{position:absolute;z-index:4;top:28px;left:34px;max-width:390px;pointer-events:none;text-shadow:0 1px 10px rgba(244,247,244,.95)}.map-heading>span,.selection-level{color:#718892;font-size:8px;font-weight:800;letter-spacing:.16em}.map-heading h1{margin:7px 0 2px;font:500 clamp(34px,4vw,52px)/1 Georgia,Times New Roman,serif;letter-spacing:-.035em}.map-heading p{margin:8px 0 0;color:#71838c;font-size:11px}.map-breadcrumbs{position:absolute;z-index:5;top:24px;right:24px;max-width:60%;display:flex;align-items:center;gap:9px;padding:10px 18px;border:1px solid rgba(25,91,119,.18);border-radius:12px;background:rgba(255,255,255,.94);box-shadow:0 6px 24px rgba(22,45,57,.12);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#728790;font-size:14px;font-weight:500}.map-breadcrumbs button{max-width:220px;overflow:hidden;padding:0;border:0;background:transparent;color:#195b77;font-size:14px;font-weight:600;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;transition:color .15s ease}.map-breadcrumbs button:hover{color:#114257;text-decoration:underline}.map-breadcrumbs b{max-width:260px;overflow:hidden;font-size:14px;font-weight:700;color:#162d39;text-overflow:ellipsis;white-space:nowrap}.map-back-button{position:absolute;z-index:5;top:78px;right:24px;display:flex;align-items:center;gap:7px;padding:9px 18px;border:1px solid rgba(25,91,119,.18);border-radius:12px;background:rgba(255,255,255,.94);box-shadow:0 6px 24px rgba(22,45,57,.12);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#195b77;cursor:pointer;font-size:13.5px;font-weight:650;transition:all .2s ease}.map-back-button:hover{background:#ffffff;color:#114257;box-shadow:0 8px 28px rgba(22,45,57,.16);transform:translateY(-1px)}.map-back-button .icon{width:15px;height:15px}.map-status{position:absolute;z-index:10;left:50%;top:50%;display:flex;align-items:center;gap:9px;transform:translate(-50%,-50%);padding:11px 14px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.95);box-shadow:0 13px 40px rgba(30,52,62,.12);color:var(--muted);font-size:11px}.map-status span{width:15px;height:15px;border:2px solid #d4dfdc;border-top:2px solid var(--blue);border-radius:50%;animation:spin .8s linear infinite}.map-status.error{border-color:#ead9b1;background:#fff9e9;color:#765b20}@keyframes spin{to{transform:rotate(1turn)}}.selection-card{position:absolute;z-index:6;right:22px;top:50%;width:288px;transform:translateY(-42%);padding:23px;border:1px solid rgba(211,222,221,.94);border-radius:10px;background:rgba(255,255,255,.96);box-shadow:0 25px 70px rgba(25,48,59,.16);backdrop-filter:blur(14px)}.selection-close{position:absolute;top:13px;right:13px;width:28px;height:28px;display:grid;place-items:center;border:0;border-radius:50%;background:#f0f4f2;color:#758991;cursor:pointer}.selection-close .icon{width:13px}.selection-card h2{margin:8px 28px 5px 0;font:500 25px/1.12 Georgia,Times New Roman,serif}.selection-card>p{margin:0;color:#788991;font-size:10px}.selection-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:19px 0 14px}.selection-stats div{display:grid;gap:4px}.selection-stats div+div{padding-left:15px;border-left:1px solid var(--line)}.selection-stats strong{overflow:hidden;font:500 22px Georgia,serif;text-overflow:ellipsis}.selection-stats small{color:#89979d;font-size:8px}.selection-card code{display:block;overflow:hidden;padding:8px 9px;border-radius:5px;background:#f2f5f3;color:#6f8189;font:8px ui-monospace,monospace;text-overflow:ellipsis}.selection-action{width:100%;height:39px;display:flex;align-items:center;justify-content:space-between;margin-top:13px;padding:0 13px;border:0;border-radius:6px;background:var(--blue);color:white;cursor:pointer;font-size:9px;font-weight:650}.selection-action:hover{background:var(--blue-dark)}.selection-action span{font-size:16px}.info-card{position:absolute;z-index:8;top:18px;right:20px;width:290px;padding:19px;border:1px solid var(--line);border-radius:9px;background:rgba(255,255,255,.97);box-shadow:0 20px 60px rgba(28,51,62,.16)}.info-card button{position:absolute;top:10px;right:10px;display:grid;place-items:center;width:26px;height:26px;border:0;border-radius:50%;background:#f0f4f2;cursor:pointer}.info-card button .icon{width:13px}.info-card strong{font:500 20px Georgia,serif}.info-card p{margin:9px 0 0;color:#74878f;font-size:10px;line-height:1.55}.map-legend{position:absolute;z-index:4;left:27px;bottom:20px;gap:18px;padding:9px 16px;border-radius:9px;background:rgba(255,255,255,.92);color:#344850;font-size:12.5px;font-weight:550;box-shadow:0 4px 18px rgba(28,51,62,.08);border:1px solid rgba(219,228,225,.8);backdrop-filter:blur(8px)}.map-legend,.map-legend span{display:flex;align-items:center}.map-legend span{gap:7px}.map-legend i{display:inline-block;flex-shrink:0}.legend-active-hromada{width:16px;height:10px;border:1px solid #186646;background:#248a62;border-radius:2.5px}.legend-hromada{width:16px;height:10px;border:1px solid #99aaa4;background:#dfe8e3;border-radius:2.5px}.legend-district{width:16px;border-top:2px dashed #8e7445}.legend-oblast{width:18px;border-top:2.5px solid var(--blue)}.legend-city{width:9px;height:9px;border-radius:50%;background:var(--yellow)}.maplibregl-popup.map-tooltip .maplibregl-popup-content{min-width:120px;display:grid;gap:2px;padding:8px 10px;border:1px solid #dbe4e2;border-radius:6px;box-shadow:0 8px 24px rgba(29,52,62,.14)}.map-tooltip strong{display:block;color:var(--ink);font-size:10px}.map-tooltip small{display:block;color:#788a91;font-size:8px}.hp-drag-handle{display:none}@media (max-width:900px){.map-header{grid-template-columns:210px 1fr auto;gap:14px;padding:0 15px}.header-info span{display:none}.humanitarian-panel{width:400px}}@media (max-width:768px){body{overflow:hidden}.map-app{height:100vh;height:100dvh}.map-header{height:106px;flex:0 0 106px;grid-template-columns:1fr auto;grid-template-rows:38px 44px;gap:8px;padding:8px 13px;background:#ffffff;box-shadow:0 2px 10px rgba(0,0,0,.06)}.map-brand{gap:8px}.map-brand-mark{width:32px;height:32px;font-size:16px}.map-brand strong{font-size:13.5px}.map-brand small{display:block;color:var(--muted);font-size:10px}.map-search{grid-column:1/-1;grid-row:2;height:40px;background:#f2f6f5}.map-search-results{top:45px;max-height:calc(100vh - 120px);max-height:calc(100dvh - 120px);border-radius:12px;box-shadow:0 16px 45px rgba(18,38,48,.28);z-index:200}.humanitarian-panel{top:auto;left:0;right:0;bottom:0;width:100%;max-height:46vh;max-height:46dvh;border-right:0;border-top:1px solid var(--line);border-radius:20px 20px 0 0;box-shadow:0 -10px 40px rgba(18,38,48,.22);padding:0;animation:slideUpMobile .32s cubic-bezier(.16,1,.3,1);transition:transform .35s cubic-bezier(.16,1,.3,1),max-height .35s cubic-bezier(.16,1,.3,1);z-index:90;overflow:hidden}.hp-header-sticky{padding:8px 16px}.hp-content{padding:10px 16px 20px}.humanitarian-panel.is-collapsed{transform:translateY(calc(100% - 88px));box-shadow:0 -6px 24px rgba(18,38,48,.16);cursor:pointer;overflow:hidden}.humanitarian-panel.is-collapsed .hp-content{opacity:0;pointer-events:none;transition:opacity .15s ease}.hp-drag-handle-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4px 0 10px;margin:-6px -16px 6px;cursor:pointer;touch-action:pan-y}.hp-drag-handle{display:block;width:44px;height:5px;border-radius:3px;background:#b5c7c2;transition:background .2s ease,width .2s ease;flex:0 0 auto}.hp-drag-handle-container:active .hp-drag-handle,.hp-drag-handle-container:hover .hp-drag-handle{background:#879c96;width:52px}.hp-title-group h2{font-size:24px}.map-heading{top:10px;left:10px;max-width:220px}.map-heading h1{font-size:22px}.map-breadcrumbs,.map-heading p,.map-legend{display:none}.map-back-button{padding:8px 12px;font-size:11px;border-radius:8px}.map-back-button,.maplibregl-ctrl-top-right{top:10px;right:10px}}.hp-modal-overlay{position:fixed;inset:0;z-index:999;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(15,29,36,.58);backdrop-filter:blur(10px);animation:fadeInModal .22s ease-out}.hp-modal-card{width:100%;max-width:640px;max-height:85vh;display:flex;flex-direction:column;background:#ffffff;border-radius:20px;box-shadow:0 24px 64px rgba(16,35,45,.28);border:1px solid #e1e9e6;overflow:hidden;animation:scaleUpModal .25s cubic-bezier(.16,1,.3,1)}@keyframes fadeInModal{0%{opacity:0}to{opacity:1}}@keyframes scaleUpModal{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.hp-modal-header{display:flex;align-items:center;justify-content:space-between;padding:22px 28px 16px;border-bottom:1px solid #edf3f1;background:#f8faf9}.hp-modal-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:20px;background:#e6f2ee;color:#1a5b44;font-size:11px;font-weight:700;letter-spacing:.5px}.hp-modal-close{display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:50%;background:#eef3f1;color:#4a5c64;cursor:pointer;transition:all .2s ease}.hp-modal-close:hover{background:#186646;color:#ffffff}.hp-modal-body{flex:1 1 auto;overflow-y:auto;padding:24px 28px 30px;display:flex;flex-direction:column;gap:20px}.hp-modal-title{margin:0;font:600 22px/1.3 Georgia,serif;color:var(--ink)}.hp-modal-details{gap:14px}.hp-modal-details,.hp-modal-item{display:flex;flex-direction:column}.hp-modal-item{gap:6px;padding:16px 18px;border-radius:12px;background:#f8faf9;border:1px solid #e5ebe8}.hp-modal-item.is-disclaimer{background:#fffbf0;border-color:#f7e6b5}.hp-modal-item.is-goals{background:#f2f8f6;border-color:#d1e7e0}.hp-modal-item.is-period{background:#f0f6fa;border-color:#cce3f0}.hp-modal-item-label{font-size:12px;font-weight:700;color:#576d75;text-transform:uppercase;letter-spacing:.4px}.hp-modal-item.is-disclaimer .hp-modal-item-label{color:#92660a}.hp-modal-item.is-goals .hp-modal-item-label{color:#17654a}.hp-modal-item.is-period .hp-modal-item-label{color:#195b77}.hp-modal-item-value{font-size:14px;line-height:1.6;color:#273840;white-space:pre-line}.hp-project-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.hp-project-title-group{display:flex;align-items:center;gap:8px;flex:1}.hp-project-modal-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;border:1px solid #d4e2de;background:#ffffff;color:#2d6074;cursor:pointer;flex-shrink:0;transition:all .2s ease;box-shadow:0 2px 4px rgba(0,0,0,.04)}.hp-project-modal-btn:hover{background:var(--blue);color:#ffffff;border-color:var(--blue);transform:translateY(-1px);box-shadow:0 4px 10px rgba(26,91,120,.25)}.map-view-switcher{display:inline-flex}.map-view-switcher-slider{position:relative;display:inline-flex;align-items:center;background:rgba(235,243,240,.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(25,91,119,.16);border-radius:999px;padding:3px;box-shadow:inset 0 2px 4px rgba(0,0,0,.04),0 2px 10px rgba(0,0,0,.03);user-select:none;width:250px;box-sizing:border-box}.map-view-switcher-slider .slider-indicator{position:absolute;top:3px;left:3px;width:calc(50% - 3px);height:calc(100% - 6px);background:linear-gradient(135deg,#ffffff,#f4f9f7);border-radius:999px;box-shadow:0 4px 14px rgba(25,91,119,.18),0 1px 3px rgba(0,0,0,.06);border:1px solid rgba(25,91,119,.22);transition:transform .35s cubic-bezier(.34,1.56,.64,1);pointer-events:none;z-index:1;box-sizing:border-box}.map-view-switcher-slider .slider-tab{position:relative;z-index:2;flex:1;display:flex;align-items:center;justify-content:center;gap:5px;padding:6px 10px;border:none;background:transparent;color:#5c7078;font-size:13.5px;font-weight:600;cursor:pointer;border-radius:999px;transition:color .25s ease,transform .15s ease;white-space:nowrap}.map-view-switcher-slider .slider-tab:hover{color:#195b77}.map-view-switcher-slider .slider-tab:active{transform:scale(.96)}.map-view-switcher-slider .slider-tab.is-active{color:#195b77;font-weight:700}.map-view-switcher-slider .tab-icon{font-size:15px;line-height:1;transition:transform .25s ease}.map-view-switcher-slider .slider-tab:hover .tab-icon{transform:scale(1.15) rotate(-5deg)}.map-view-switcher-slider .tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:linear-gradient(135deg,#195b77,#165640);color:#ffffff;font-size:11.5px;font-weight:700;box-shadow:0 2px 6px rgba(25,91,119,.35);transition:all .25s ease}.map-view-switcher-slider .slider-tab.is-active .tab-badge{background:linear-gradient(135deg,#195b77,#0d4052);transform:scale(1.05)}.map-view-tab{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border:0;border-radius:7px;background:transparent;color:#526770;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.map-view-tab:hover{color:var(--ink);background:rgba(255,255,255,.7)}.map-view-tab.active{background:#ffffff;color:#195b77;box-shadow:0 2px 8px rgba(22,45,57,.1)}.map-view-tab-badge{display:inline-flex;align-items:center;justify-content:center;padding:2px 7px;border-radius:10px;background:#e1ede8;color:#165640;font-size:11px;font-weight:800}.map-view-tab.active .map-view-tab-badge{background:#195b77;color:#ffffff}.projects-dashboard{width:100%;height:100%;flex:1;overflow-y:auto;background:#f4f7f6;padding:32px 40px 48px;display:flex;flex-direction:column;gap:24px;box-sizing:border-box}.projects-dashboard-header{display:flex;flex-direction:column;gap:18px}.projects-dashboard-title-row{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.projects-dashboard-title-row h1{margin:0;font:600 26px/1.2 Georgia,serif;color:var(--ink);letter-spacing:-.3px}.projects-dashboard-stats{display:flex;align-items:center;gap:14px;flex-wrap:wrap;width:100%}.projects-stat-card{display:flex;align-items:center;gap:12px;padding:0 18px;height:52px;background:#ffffff;border-radius:12px;border:1px solid #e1e9e6;box-shadow:0 2px 8px rgba(22,45,57,.04);box-sizing:border-box;flex-shrink:0}.projects-stat-icon{font-size:20px}.projects-stat-info strong{display:block;font-size:18px;font-weight:700;color:var(--ink);line-height:1.1}.projects-stat-info small{color:#5c7078;font-size:11.5px;font-weight:500}.projects-search-input{flex:1;min-width:280px;height:52px;display:flex;align-items:center;gap:10px;padding:0 16px;background:#ffffff;border:1px solid #e1e9e6;border-radius:12px;box-shadow:0 2px 8px rgba(22,45,57,.04);box-sizing:border-box;transition:border-color .2s ease,box-shadow .2s ease}.projects-search-input:focus-within{border-color:#195b77;box-shadow:0 2px 12px rgba(25,91,119,.12)}.projects-search-input input{border:0;outline:0;background:transparent;width:100%;font-size:14px;color:var(--ink)}.projects-select-filter{height:52px;padding:0 16px;border-radius:12px;border:1px solid #e1e9e6;background:#ffffff;font-size:13.5px;font-weight:500;color:var(--ink);outline:0;cursor:pointer;box-shadow:0 2px 8px rgba(22,45,57,.04);box-sizing:border-box;flex-shrink:0}.projects-accordion-list{display:flex;flex-direction:column;gap:16px}.pt-accordion-card{background:#ffffff;border-radius:16px;border:1px solid #e1e9e6;box-shadow:0 4px 16px rgba(22,45,57,.05);overflow:hidden;transition:all .25s ease}.pt-accordion-card:hover{border-color:#cbded8;box-shadow:0 6px 24px rgba(22,45,57,.08)}.pt-accordion-card.is-expanded{border-color:#b5d5cb;box-shadow:0 8px 32px rgba(22,45,57,.1)}.pt-accordion-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;cursor:pointer;background:#ffffff;user-select:none;transition:background .2s ease}.pt-accordion-header:hover{background:#f8faf9}.pt-accordion-title-group{display:flex;align-items:center;gap:12px;flex:1;min-width:0;flex-wrap:wrap}.pt-accordion-arrow{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#eef5f2;color:#195b77;border:0;cursor:pointer;flex-shrink:0;transition:background .2s ease}.pt-accordion-arrow:hover{background:#195b77;color:#ffffff}.pt-accordion-name{font-size:17px;font-weight:700;color:var(--ink)}.pt-accordion-meta{gap:20px}.pt-accordion-badges,.pt-accordion-meta{display:flex;align-items:center;flex-wrap:wrap}.pt-accordion-badges{gap:8px}.pt-meta-badge{font-size:12px;font-weight:600;padding:4px 10px;border-radius:8px}.pt-meta-badge.activities{background:#eef6f3;color:#165640;border:1px solid #cce5dc}.pt-meta-badge.oblasts{background:#f0f6fa;color:#195b77;border:1px solid #cce3f0}.pt-meta-badge.hromadas{background:#fcf6e8;color:#8c620a;border:1px solid #f5e4bd}.pt-accordion-actions{display:flex;align-items:center;gap:10px}.pt-btn-toggle{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:8px;border:1px solid #d4e2de;background:#f8faf9;color:#3b5059;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.pt-btn-toggle:hover{background:#eef4f2;color:var(--ink)}.pt-accordion-body{padding:24px;border-top:1px solid #edf3f1;background:#fafcfb;display:flex;flex-direction:column;gap:22px;animation:fadeIn .25s ease-out}.pt-body-section{gap:10px}.pt-body-section,.pt-oblasts-list{display:flex;flex-direction:column}.pt-oblasts-list{gap:12px}.pt-oblast-card{background:#ffffff;border:1px solid #e1e9e6;border-radius:12px;overflow:hidden;transition:all .2s ease}.pt-oblast-card.is-expanded{border-color:#bad3cb;box-shadow:0 4px 14px rgba(22,45,57,.06)}.pt-oblast-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px;background:#ffffff;cursor:pointer;user-select:none;transition:background .15s ease}.pt-oblast-header:hover{background:#f6faf8}.pt-oblast-title-group{display:flex;align-items:center;gap:10px}.pt-oblast-arrow{font-size:11px;color:#195b77;display:inline-block}.pt-oblast-name{font-size:15px;font-weight:700;color:var(--ink)}.pt-oblast-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.pt-ob-badge{font-size:12px;font-weight:600;padding:3px 9px;border-radius:6px}.pt-ob-badge.act{background:#eef6f3;color:#165640;border:1px solid #cce5dc}.pt-ob-badge.hrom{background:#fcf6e8;color:#8c620a;border:1px solid #f5e4bd}.pt-btn-goto-map{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border-radius:6px;border:1px solid #cce3f0;background:#f0f6fa;color:#195b77;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease}.pt-btn-goto-map:hover{background:#195b77;color:#ffffff;border-color:#195b77}.pt-ob-toggle-btn{display:inline-flex;align-items:center;gap:4px;padding:5px 11px;border-radius:6px;border:1px solid #d4e2de;background:#f8faf9;color:#4a5e66;font-size:12px;font-weight:600;cursor:pointer}.pt-oblast-body{padding:18px;background:#fafcfb;border-top:1px solid #edf3f1}.pt-activities-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.pt-activity-card{padding:14px 16px;background:#ffffff;border-radius:10px;border:1px solid #e1e9e6;display:flex;flex-direction:column;gap:8px;box-shadow:0 2px 6px rgba(0,0,0,.02)}.pt-activity-title{font-size:13.5px;font-weight:600;color:#1f313a}.pt-chips-wrap{display:flex;flex-wrap:wrap;gap:6px}.pt-chip{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;border-radius:20px;background:#eef6f3;border:1px solid #cce5dc;color:#165640;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 2px rgba(0,0,0,.03)}.pt-chip:hover{background:#165640;color:#ffffff;border-color:#165640;transform:translateY(-1px);box-shadow:0 3px 8px rgba(22,86,64,.2)}.pt-chip.oblast{background:#eaf3f7;border-color:#c4dbe5;color:#195b77}.pt-chip.oblast:hover{background:#195b77;color:#ffffff;border-color:#195b77;box-shadow:0 3px 8px rgba(25,91,119,.2)}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}