/* PNGTPA MSME Dashboard Pro */
.pngtpa-dashboard-shell {font-family: Arial, sans-serif; color:#1f2937;}
.pngtpa-section-title {margin:0 0 4px; font-size:28px; line-height:1.2;}
.pngtpa-current-filter {margin:0; color:#4b5563;}
.pngtpa-dashboard-topbar {display:flex; justify-content:space-between; align-items:center; margin-bottom:18px;}
.pngtpa-kpis {display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-bottom:18px;}
.pngtpa-kpi-card {background:#fff; border:1px solid #e5e7eb; border-radius:18px; padding:18px 20px; box-shadow:0 10px 24px rgba(0,0,0,.05);}
.pngtpa-kpi-card span {display:block; font-size:13px; color:#6b7280; margin-bottom:8px; text-transform:uppercase; letter-spacing:.04em;}
.pngtpa-kpi-card strong {font-size:30px; color:#111827;}
.pngtpa-grid-2 {display:grid; grid-template-columns:1.1fr .9fr; gap:18px; margin-bottom:18px;}
.pngtpa-panel, .pngtpa-map-card {background:#fff; border:1px solid #e5e7eb; border-radius:22px; padding:20px; box-shadow:0 10px 24px rgba(0,0,0,.05); margin-bottom:18px;}
.pngtpa-panel h3, .pngtpa-map-card h3 {margin-top:0; margin-bottom:12px; font-size:20px;}
.pngtpa-stats-table, .pngtpa-directory-table {width:100%; border-collapse:collapse;}
.pngtpa-stats-table th, .pngtpa-stats-table td, .pngtpa-directory-table th, .pngtpa-directory-table td {padding:10px 12px; border-bottom:1px solid #eef2f7; text-align:left; vertical-align:top;}
.pngtpa-stats-table th, .pngtpa-directory-table th {font-size:12px; text-transform:uppercase; letter-spacing:.05em; color:#6b7280;}
.pngtpa-table-wrap {overflow:auto;}
.pngtpa-province-summary-box p {margin:10px 0;}
.pngtpa-map-header {display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:14px;}
.pngtpa-map-header p {margin:4px 0 0; color:#4b5563;}
.pngtpa-map-wrap {overflow:auto;}
.pngtpa-svg-map {width:100%; min-width:980px; height:auto; display:block; background:linear-gradient(180deg,#f8fafc,#fff); border-radius:18px;}
.pngtpa-country-outline {fill:#f3f4f6; stroke:#d1d5db; stroke-width:2;}
.pngtpa-province-node {cursor:pointer; transition:transform .15s ease;}
.pngtpa-province-node:hover {transform:translateY(-2px);}
.pngtpa-province-node.is-active rect {stroke:#111827; stroke-width:2.2;}
.pngtpa-province-label {font-size:11px; font-weight:700; fill:#111827;}
.pngtpa-province-value {font-size:10px; fill:#374151;}
.pngtpa-map-legend {margin-top:12px;}
.legend-title {font-size:12px; color:#6b7280; margin-bottom:6px; text-transform:uppercase; letter-spacing:.05em;}
.legend-bar {height:16px; width:260px; border-radius:999px; background:linear-gradient(90deg, rgba(255,209,0,.18), rgba(255,209,0,.95)); border:1px solid #e5e7eb;}
.legend-scale {display:flex; justify-content:space-between; width:260px; font-size:12px; color:#6b7280; margin-top:4px;}
.pngtpa-form-grid {display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; max-width:1100px;}
.pngtpa-form-grid .full {grid-column:1/-1;}
.pngtpa-form-grid label {display:block; font-weight:600; margin-bottom:6px;}
.pngtpa-form-grid input, .pngtpa-form-grid select, .pngtpa-form-grid textarea {width:100%; padding:10px 12px; border:1px solid #d1d5db; border-radius:10px; background:#fff;}
.pngtpa-form-grid textarea {min-height:110px;}
@media (max-width:900px){
  .pngtpa-kpis, .pngtpa-grid-2, .pngtpa-form-grid {grid-template-columns:1fr;}
}
