
:root{--green:#198754;--green-dark:#146c43;--blue:#0d6efd;--ink:#1f2937;--muted:#6b7280;--soft:#f4f8f6}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;background:#f7f9fb;color:var(--ink);overflow-x:hidden}
.navbar-brand{font-weight:800}.hero-img{height:430px;object-fit:cover;filter:brightness(.68)}
.hero-caption{bottom:18%;text-shadow:0 2px 8px #000}
.section-title{font-weight:800}.section-subtitle{color:var(--muted)}
.card{border:0;border-radius:18px;box-shadow:0 7px 24px rgba(15,23,42,.07);height:100%}
.icon-box{width:54px;height:54px;border-radius:16px;background:#e9f7ef;display:flex;align-items:center;justify-content:center;font-size:25px;flex:0 0 auto}
.page-header{background:linear-gradient(135deg,#198754,#0d6efd);color:#fff;padding:68px 0}
.footer{background:#17212b;color:#dbe5ea}.footer a{color:#dbe5ea;text-decoration:none}.footer a:hover{text-decoration:underline}
.footer-links{border-top:1px solid rgba(255,255,255,.12);margin-top:24px;padding-top:24px}
.chart-card{overflow:visible}.chart-wrap{position:relative;width:100%;height:350px}
.chart-wrap canvas{display:block!important;width:100%!important;height:100%!important}
.statistik-singkat{margin-top:0}.kpi{padding:20px;border-radius:16px;background:linear-gradient(135deg,#fff,#eef8f3)}
.kpi-value{font-size:2rem;font-weight:850}.modern-item{border:1px solid #e7ece9;border-radius:15px;padding:16px;background:#fff}
.progress{height:9px;border-radius:20px}.service-card{min-height:210px}
.category-card{transition:transform .2s}.category-card:hover{transform:translateY(-3px)}
.table-responsive{border-radius:12px}
@media(max-width:991.98px){
 .chart-card{margin-bottom:28px}
 .statistik-singkat{margin-top:28px}
 .chart-wrap{margin-bottom:4px}
}
@media(max-width:767.98px){
 .hero-img{height:300px}.hero-caption{bottom:8%}.hero-caption h1{font-size:1.65rem}
 .page-header{padding:48px 0}
 .chart-wrap{height:285px}
 .chart-card{margin-bottom:34px}
 .statistik-singkat{margin-top:34px}
 .service-card{min-height:0}
 .footer .text-end{text-align:left!important}
}

.agenda-table th,.agenda-table td{white-space:nowrap}
@media(max-width:767.98px){
 #agenda .table{font-size:.82rem}
 #agenda .table th,#agenda .table td{padding:.65rem .55rem}
 #agenda .card{overflow:hidden}
}

#pencapaian>.container>.card{background:linear-gradient(145deg,#fff,#f7fbf9);border:1px solid rgba(25,135,84,.08)}
.chart-beautiful{height:390px;padding:12px;border-radius:18px;background:linear-gradient(180deg,#fbfdfc,#f3f9f6)}
@media(max-width:767.98px){.chart-beautiful{height:330px}.statistik-singkat{margin-top:20px!important}}
