.vg-page{--vg-ink:#15384c;--vg-line:#dce6ed;color:var(--vg-ink)}.vg-heading,.vg-section-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem}.vg-heading h1{font-size:clamp(1.45rem,2.3vw,2.15rem);margin:.5rem 0;line-height:1.35}.vg-heading p,.vg-section-heading p{color:#567080;max-width:760px;font-size:.94rem;margin-bottom:0}.vg-heading-actions{display:flex;gap:.5rem;flex-wrap:wrap;flex-shrink:0}.vg-filters{display:flex;flex-wrap:wrap;gap:.8rem;padding:1.15rem;margin:1.4rem 0;background:#f1f6fa;border:1px solid var(--vg-line);border-radius:14px;align-items:end}.vg-filters>div{flex:1 1 175px;min-width:0}.vg-filters label{font-size:.82rem;font-weight:700;margin-bottom:.4rem}.vg-filters .form-select,.vg-filters .form-control{font-size:.87rem}.vg-access-note{display:flex;gap:.8rem;border-left:3px solid #138580;padding:1rem;background:#eef8f7;border-radius:0 10px 10px 0;font-size:.86rem}.vg-access-note>svg{width:22px;flex-shrink:0}.vg-access-note p{margin:.3rem 0;max-width:1100px}.vg-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:1.3rem 0}.vg-metrics>div{border:1px solid var(--vg-line);border-radius:12px;padding:1rem;background:white;box-shadow:0 4px 14px #163a5010}.vg-metrics span,.vg-metrics small{display:block;font-size:.78rem;color:#526f80}.vg-metrics strong{display:block;font-size:1.9rem;line-height:1.7;color:#0f6866}.vg-section-heading h2{font-size:1.25rem;margin:0 0 .4rem}.vg-legend{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem;font-size:.77rem;margin:1rem 0 .6rem}.vg-score{display:inline-block;padding:.35rem .5rem;min-width:48px;font-size:.8rem;font-weight:750;border-radius:6px;white-space:nowrap}.vg-strong{color:#116447;background:#e2f5eb}.vg-progress{color:#715500;background:#fff1c5}.vg-priority{color:#a23537;background:#fde8e7}.vg-unknown{color:#647a87;background:#eef2f5;font-size:.73rem}.vg-table-wrap{max-width:100%;overflow:auto;border:1px solid var(--vg-line);border-radius:10px;background:#fff;overscroll-behavior-x:contain}.vg-table-wrap:focus{outline:2px solid #16827f;outline-offset:3px}.vg-matrix{width:100%;border-collapse:separate;border-spacing:0;font-size:.83rem;white-space:nowrap}.vg-matrix th,.vg-matrix td{padding:.8rem .65rem;border-bottom:1px solid #e6edf2;text-align:center}.vg-matrix thead th{background:#eaf1f6;font-weight:700;font-size:.78rem}.vg-matrix th:first-child{text-align:left;position:sticky;left:0;z-index:2;background:white;min-width:180px;max-width:240px;white-space:normal;border-right:1px solid var(--vg-line)}.vg-matrix thead th:first-child{background:#eaf1f6;z-index:3}.vg-matrix th small,.vg-matrix td small{display:block;font-weight:400;color:#6a7c89;font-size:.69rem;margin-top:.3rem}.vg-matrix tbody tr:hover td,.vg-matrix tbody tr:hover th{background:#f7fafc}.vg-goal-link{text-decoration:none}.vg-scroll-hint{font-size:.78rem;color:#526c7d}.vg-pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin:1.2rem 0;font-size:.85rem}.vg-method{border-top:1px solid var(--vg-line);padding:1rem 0;font-size:.86rem}.vg-method summary{font-weight:700}.vg-method p{margin:1rem 0;color:#4b6372}.vg-detail{border:1px solid var(--vg-line);border-radius:14px;padding:1.2rem;margin-bottom:1.5rem;scroll-margin-top:90px}.vg-village-summary{display:flex;gap:1rem;flex-wrap:wrap;align-items:center;background:#f3f7fa;border-radius:8px;padding:.8rem;margin:1rem 0;font-size:.84rem}.vg-goal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem}.vg-goal-card{padding:.8rem;border:1px solid var(--vg-line);border-radius:10px;background:white;animation:vg-rise .35s ease-out}.vg-goal-card>div{display:flex;justify-content:space-between;gap:.5rem;align-items:center}.vg-goal-card a{font-size:.78rem;font-weight:750}.vg-goal-card h3{font-size:.85rem;line-height:1.5;margin:.6rem 0;min-height:2.5em}.vg-goal-card progress{width:100%;height:6px;accent-color:#16827f;display:block}.vg-goal-card small{font-size:.72rem;color:#617682;display:block;margin-top:.5rem}.vg-subheading{font-size:1.05rem;margin:1.5rem 0 .8rem}.vg-indicators{min-width:680px;font-size:.82rem;margin:0}.vg-indicators th{max-width:370px}.vg-indicators td,.vg-indicators th{padding:.8rem}.vg-projects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.vg-projects>a{display:flex;flex-direction:column;padding:1rem;border:1px solid var(--vg-line);border-radius:10px;text-decoration:none;gap:.65rem;transition:transform .2s,box-shadow .2s}.vg-projects>a:hover{transform:translateY(-2px);box-shadow:0 5px 18px #173f5215}.vg-projects span,.vg-projects b{font-size:.75rem}.vg-projects strong{font-size:.9rem;line-height:1.5}.vg-up{color:#116447;font-weight:700}.vg-down{color:#a23537;font-weight:700}@keyframes vg-rise{from{opacity:.4;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media(max-width:991px){.vg-heading{display:block}.vg-heading-actions{margin-top:1rem}.vg-goal-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:575px){.vg-metrics{grid-template-columns:repeat(2,1fr);gap:.6rem}.vg-metrics>div{padding:.75rem}.vg-metrics strong{font-size:1.5rem}.vg-filters{padding:.8rem;gap:.7rem}.vg-filters>div{flex:1 1 calc(50% - .7rem)}.vg-filters label{font-size:.76rem}.vg-filters .form-select,.vg-filters .form-control{font-size:.8rem}.vg-section-heading{display:block}.vg-section-heading>.btn{margin-top:.8rem}.vg-matrix th:first-child{min-width:125px;max-width:145px}.vg-detail{padding:.8rem}.vg-goal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vg-projects{grid-template-columns:1fr}.vg-access-note{padding:.8rem}.vg-access-note>svg{display:none}.vg-pagination .btn{padding:.45rem .65rem;font-size:.8rem}}@media(prefers-reduced-motion:reduce){.vg-goal-card{animation:none}.vg-projects>a{transition:none}}@media print{.vg-filters,.vg-heading-actions,.vg-pagination,.vg-scroll-hint,.vg-section-heading>.btn{display:none}.vg-table-wrap{overflow:visible}.vg-matrix{font-size:6pt}.vg-matrix td,.vg-matrix th{padding:3px}.vg-score{font-size:6pt;min-width:0;padding:2px}.vg-matrix th:first-child{min-width:60px;position:static}.vg-metrics{break-inside:avoid}}
