/* SATU DATA Kepahiang – tema modern (kontras tinggi, responsif). Dimuat paling akhir. */
:root{--sd-brand:#127a4a;--sd-brand-d:#0b5a36;--sd-tint:#dcf3e6;--sd-navy:#0b2a4f;--sd-acc:#2b8fd0;
--sd-ink:#0f2a24;--sd-mute:#41564f;--sd-line:#dfe8e4;--sd-bg:#f3f6f4;--sd-card:#fff;--sd-warn:#8a5a00;--sd-warn-bg:#fdf3dc}
:focus-visible{outline:3px solid var(--sd-acc)!important;outline-offset:2px}

/* ===== Teks pucat -> kontras cukup (min. 4.5:1) ===== */:is(.sd-login,.dashboard) .muted,:is(.sd-login,.dashboard) .text-muted,:is(.sd-login,.dashboard) small,:is(.sd-login,.dashboard) .dataset-stats,:is(.sd-login,.dashboard) .dataset-item .dataset-meta,:is(.sd-login,.dashboard) .module-narrow .nav-item a,:is(.sd-login,.dashboard) .module-content dt,:is(.sd-login,.dashboard) .additional-info th,.account-masthead .account a,.account-masthead .account .username,:is(.sd-login,.dashboard) .breadcrumb a,:is(.sd-login,.dashboard) .dataset-heading+p,:is(.sd-login,.dashboard) .notes,:is(.sd-login,.dashboard) .module-content .empty{color:var(--sd-mute)!important;opacity:1!important}.account-masthead,.account-masthead .container{background:var(--sd-navy)!important}.account-masthead a,.account-masthead .account ul li a{color:#e7f0fb!important;opacity:1!important}.account-masthead a:hover{background:rgba(255,255,255,.14)!important;color:#fff!important}:is(.sd-login,.dashboard) .label,:is(.sd-login,.dashboard) .badge,:is(.sd-login,.dashboard) .tag{font-weight:700}:is(.sd-login,.dashboard) .label,:is(.sd-login,.dashboard) .tag{background:var(--sd-tint)!important;color:var(--sd-brand-d)!important;border:0!important}:is(.sd-login,.dashboard) .label-draft,:is(.sd-login,.dashboard) .label-private,:is(.sd-login,.dashboard) .dataset-private{background:var(--sd-warn-bg)!important;color:var(--sd-warn)!important}

/* ===== Tombol, form, kartu ===== */:is(.sd-login,.dashboard) .btn,:is(.sd-login,.dashboard) button.btn{border-radius:12px;font-weight:700;min-height:42px}:is(.sd-login,.dashboard) .btn-primary,:is(.sd-login,.dashboard) .btn-info{background:var(--sd-brand)!important;border-color:var(--sd-brand)!important;color:#fff!important}:is(.sd-login,.dashboard) .btn-primary:hover,:is(.sd-login,.dashboard) .btn-info:hover{background:var(--sd-brand-d)!important;border-color:var(--sd-brand-d)!important}:is(.sd-login,.dashboard) .btn-default{border:1.5px solid var(--sd-line);background:#fff;color:var(--sd-ink)}:is(.sd-login,.dashboard) .btn-default:hover{border-color:var(--sd-brand);color:var(--sd-brand-d)}:is(.sd-login,.dashboard) input[type=text],:is(.sd-login,.dashboard) input[type=password],:is(.sd-login,.dashboard) input[type=email],:is(.sd-login,.dashboard) input[type=search],:is(.sd-login,.dashboard) select,:is(.sd-login,.dashboard) textarea,:is(.sd-login,.dashboard) .form-control{
 min-height:46px;border:1.5px solid var(--sd-line)!important;border-radius:12px!important;box-shadow:none!important;background:#fff;color:var(--sd-ink)}:is(.sd-login,.dashboard) input:focus,:is(.sd-login,.dashboard) select:focus,:is(.sd-login,.dashboard) textarea:focus{border-color:var(--sd-brand)!important;box-shadow:0 0 0 4px rgba(18,122,74,.18)!important}:is(.sd-login,.dashboard) label,:is(.sd-login,.dashboard) .control-label{font-weight:600;color:var(--sd-ink)}:is(.sd-login,.dashboard) .resource-item{border:1px solid var(--sd-line);background:#fff;padding:12px 16px;margin-bottom:10px}:is(.sd-login,.dashboard) .additional-info th{background:#f6f9f7}

/* ===== Dashboard / Panel admin ===== */
.dashboard .nav-tabs,.dashboard .nav-pills{display:flex;gap:6px;border:0;padding:0 0 14px;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}
.dashboard .nav-tabs>li>a,.dashboard .nav-pills>li>a{border:0!important;border-radius:10px!important;color:var(--sd-mute)!important;font-weight:600;padding:10px 14px}
.dashboard .nav-tabs>li>a:hover{background:var(--sd-tint)!important;color:var(--sd-brand-d)!important}
.dashboard .nav-tabs>li.active>a,.dashboard .nav-tabs>li>a.active{background:var(--sd-brand)!important;color:#fff!important}
.dashboard .dataset-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.dashboard .dataset-item{background:#fff;border:1px solid var(--sd-line);border-left:4px solid var(--sd-brand);
 padding:16px 18px;margin:0;box-shadow:none}
.dashboard .dataset-item:has(.label-draft){border-left-color:#d59a1a}
.dashboard .dataset-heading{font-size:15.5px;line-height:1.35;margin:0 0 6px}
.dashboard .dataset-heading a{color:var(--sd-ink)}
.dashboard .dataset-heading a:hover{color:var(--sd-brand)}
.dashboard .dataset-item .btn,.dashboard .dataset-item .btn-primary{min-height:36px}

/* ===== Halaman Masuk ===== */
.sd-login{display:grid;grid-template-columns:1fr 1.1fr;max-width:980px;margin:28px auto;background:#fff;
 border-radius:20px;overflow:hidden;box-shadow:0 12px 40px rgba(11,42,79,.12)}
.sd-login__hero{background:linear-gradient(160deg,var(--sd-navy),#0d4a55 60%,var(--sd-brand-d));color:#fff;
 padding:40px 36px;display:flex;flex-direction:column;justify-content:space-between;gap:36px}
.sd-login__hero h1{font-size:clamp(24px,3vw,34px);line-height:1.2;margin:0 0 12px;color:#fff}
.sd-login__hero p{color:#d3e4de;margin:0}
.sd-login__brand{font-size:20px;letter-spacing:.3px;color:#fff}
.sd-login__brand small{display:block;font-size:11px;letter-spacing:1.5px;color:#a8e0c4}
.sd-login__form{padding:40px 36px}
.sd-login__form h2{margin:0 0 4px;font-size:28px}
.sd-login__sub{color:var(--sd-mute);margin:0 0 24px}
.sd-login__form .btn-primary{width:100%;min-height:48px}
.sd-login__forgot{text-align:center;margin:18px 0 0}
.sd-login__form .form-actions{background:none;border:0;padding:0}
.sd-login__form .form-group,.sd-login__form .control-group{margin-bottom:16px}
.sd-login__form input[type=text],.sd-login__form input[type=password]{width:100%}
.primary:has(.sd-login){float:none;width:100%!important;max-width:100%}

/* ===== Responsif ===== */
@media (max-width:860px){
 .sd-login{grid-template-columns:1fr;margin:12px;border-radius:16px}
 .sd-login__hero{padding:24px;gap:16px}.sd-login__hero p{display:none}
 .sd-login__form{padding:24px}
 .masthead .navigation,.masthead nav{overflow-x:auto}
 .dashboard .dataset-item .btn{width:100%;margin-top:8px}
 table{display:block;overflow-x:auto}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

/* Login: hilangkan kolom sidebar & pembatas bawaan */
.wrapper:has(.sd-login){background:none!important;border:0!important;box-shadow:none!important}
.wrapper:has(.sd-login)::before,.wrapper:has(.sd-login)::after{display:none!important}
.wrapper:has(.sd-login) .secondary{display:none!important}
.primary:has(.sd-login){float:none!important;width:100%!important;max-width:100%!important;flex:0 0 100%}
.sd-login__form .module,.sd-login__form .module-content,.sd-login__form .content{border:0;background:none;box-shadow:none;padding:0;margin:0}
.sd-login__form h1{font-size:28px;margin:0 0 20px}

/* Navbar: hover terbaca jelas, senada tema coklat (menu aktif tidak diubah) */
header.masthead .main-navbar ul li:not(.active):hover > a,
header.masthead .main-navbar ul li:not(.active) > a:hover,
header.masthead .navbar-nav li:not(.active):hover > a,
header.masthead .navbar-nav li:not(.active) > a:hover{
  background:#f3e3d3!important;color:#5a2d0c!important;opacity:1!important}

/* Login: tulisan kecil di panel hero */
.sd-login__brand small{color:#a8e0c4!important}
.sd-login__forgot a{color:var(--sd-brand)!important;font-weight:600}

/* Detail dataset: teks pucat -> kontras cukup */
.kph-detail__tracking,.kph-detail__tracking span{color:#5a3a1d!important;opacity:1!important}
.kph-detail__header,.kph-info-card,.kph-info-list{--kph-text-muted:#445366}

/* ===== Panel admin (hanya untuk halaman dashboard) ===== */
html body .account-masthead a,
html body .account-masthead a *,
html body .account-masthead .username{color:#e7f0fb!important;opacity:1!important}
html body .account-masthead a:hover{background:rgba(255,255,255,.14)!important;color:#fff!important}

.wrapper:has(.sd-dash){background:none!important;border:0!important;box-shadow:none!important}
.wrapper:has(.sd-dash)::before,.wrapper:has(.sd-dash)::after{display:none!important}

.sd-dash article.module{display:grid;grid-template-columns:250px minmax(0,1fr);gap:24px;align-items:start;background:none!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0!important}
.sd-dash header.page-header{position:sticky;top:16px;display:flex;flex-direction:column;gap:12px;background:#fff!important;border:1px solid #dfe8e4!important;border-radius:16px;padding:14px!important;margin:0!important}
.sd-dash .content_action{order:2;float:none!important;margin:0!important}
.sd-dash .content_action .btn{width:100%;justify-content:center}
.sd-dash ul.nav-tabs{display:flex;flex-direction:column;gap:4px;border:0!important;margin:0!important;padding:0!important}
.sd-dash ul.nav-tabs>li{float:none;margin:0!important}
.sd-dash ul.nav-tabs>li>a{display:flex;align-items:center;gap:10px;border:0!important;background:none!important;border-radius:10px!important;color:#41564f!important;font-weight:600;padding:11px 12px!important}
.sd-dash ul.nav-tabs>li>a:hover{background:#dcf3e6!important;color:#0b5a36!important}
.sd-dash ul.nav-tabs>li.active>a,.sd-dash ul.nav-tabs>li>a.active{background:#127a4a!important;color:#fff!important}
.sd-dash .module-content:not(.page-header){background:#fff;border:1px solid #dfe8e4;border-radius:16px;padding:22px 24px!important;margin:0!important}
.sd-dash .btn-primary{background:#127a4a!important;background-image:none!important;border-color:#127a4a!important;border-radius:12px;font-weight:700;color:#fff!important}
.sd-dash .btn-primary:hover{background:#0b5a36!important;border-color:#0b5a36!important}
.sd-dash .btn-default{border:1.5px solid #dfe8e4!important;border-radius:12px;font-weight:600;color:#0f2a24!important;background:#fff!important}
.sd-dash .btn-default:hover{border-color:#127a4a!important;color:#0b5a36!important}

.sd-dash .dataset-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.sd-dash .dataset-list .dataset-item,.sd-dash li.dataset-item{background:#fff;border:1px solid #dfe8e4!important;border-left:4px solid #127a4a!important;border-radius:14px;padding:16px 18px;margin:0!important;box-shadow:none!important}
.sd-dash .dataset-item:has(.badge-info,.label-draft){border-left-color:#d59a1a!important}
.sd-dash .dataset-item .dataset-heading{font-size:15.5px;line-height:1.35}
.sd-dash .dataset-item .dataset-heading a{color:#0f2a24}
.sd-dash .dataset-item .dataset-heading a:hover{color:#127a4a}
.sd-dash .dataset-item p,.sd-dash .dataset-item div,.sd-dash .muted{color:#41564f!important;opacity:1!important}
.sd-dash .dataset-item .badge{background:#dcf3e6!important;color:#0b5a36!important;font-weight:700}
.sd-dash .dataset-item .badge-info{background:#fdf3dc!important;color:#8a5a00!important}

@media (max-width:860px){
  .sd-dash article.module{grid-template-columns:1fr;gap:14px}
  .sd-dash header.page-header{position:static}
  .sd-dash ul.nav-tabs{flex-direction:row;overflow-x:auto;white-space:nowrap}
}

/* ===== Daftar organisasi di dashboard ===== */
.sd-org-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.sd-org-item{margin:0;padding:0}
.sd-org-item__link{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid #dfe8e4;border-left:4px solid #127a4a;border-radius:14px;padding:14px 16px;text-decoration:none!important}
.sd-org-item__link:hover{border-color:#127a4a;background:#f3faf6}
.sd-org-item__img{width:44px;height:44px;object-fit:contain;flex:0 0 44px}
.sd-org-item__body{display:flex;flex-direction:column;gap:2px;min-width:0}
.sd-org-item__body strong{color:#0f2a24;font-size:15px;line-height:1.3}
.sd-org-item__body small{color:#41564f;font-size:12.5px}

/* ===== Bar akun (masthead): tema kopi, teks kontras ===== */
html body .account-masthead:not(#sd){background:#4a2a14!important;background-image:none!important;border-bottom:1px solid #6b4423!important}
html body .account-masthead:not(#sd) a,
html body .account-masthead:not(#sd) a *,
html body .account-masthead:not(#sd) .username,
html body .account-masthead:not(#sd) .account *{color:#fff3e3!important;-webkit-text-fill-color:#fff3e3!important;opacity:1!important;text-shadow:none!important;filter:none!important;mix-blend-mode:normal!important}
html body .account-masthead:not(#sd) .username{font-weight:700}
html body .account-masthead:not(#sd) a:hover,
html body .account-masthead:not(#sd) li:hover>a{background:rgba(255,243,227,.16)!important}
html body .account-masthead:not(#sd) a:hover,
html body .account-masthead:not(#sd) a:hover *{color:#fff!important;-webkit-text-fill-color:#fff!important}
html body .account-masthead:not(#sd) .badge{background:#d98a3d!important;color:#2b1608!important;-webkit-text-fill-color:#2b1608!important;font-weight:700}

/* ===== Login & Logout: nuansa kopi ===== */
html body .sd-login__hero{background:linear-gradient(150deg,#3d2411 0%,#6f4423 55%,#a9642e 100%)!important}
html body .sd-login__hero,html body .sd-login__hero *{color:#fff8ee!important}
html body .sd-login__hero p{color:#f5e3cc!important}
html body .sd-login__brand small{color:#f0c896!important}

html body .sd-login__form h1{color:#3d2411!important}
html body .sd-login__form label{color:#3d2411!important}
html body .sd-login__form input[type=text],
html body .sd-login__form input[type=email],
html body .sd-login__form input[type=password]{border:1.5px solid #e6d3bd!important;background:#fffdfa!important;color:#2b1608!important}
html body .sd-login__form input[type=text]:focus,
html body .sd-login__form input[type=email]:focus,
html body .sd-login__form input[type=password]:focus{border-color:#a9642e!important;box-shadow:0 0 0 3px rgba(169,100,46,.18)!important;outline:0}
html body .sd-login__form input[type=checkbox]{accent-color:#a9642e}
html body .sd-login .btn-primary{background:#a9642e!important;background-image:none!important;border-color:#a9642e!important;color:#fff!important;border-radius:12px}
html body .sd-login .btn-primary:hover{background:#6f4423!important;border-color:#6f4423!important}
html body .sd-login__forgot a{color:#8a4f22!important;font-weight:600}
html body .sd-login__forgot a:hover{color:#3d2411!important}

/* Logout */
.sd-out__text{color:#5b4636;line-height:1.6;margin:0 0 20px}
.sd-out__btn{display:block;width:100%;text-align:center;padding:12px 16px;font-weight:700;text-decoration:none!important}
.sd-out__note{color:#7a6552;font-size:13.5px;text-align:center;margin:14px 0 4px}
.sd-out__note strong{color:#3d2411}

/* ===== Hero banner full-width (Organisasi, Grup, Tentang, Showcases, Jadwal, Publikasi) ===== */
html body:has(.kph-hero){overflow-x:hidden}
html body:has(.kph-hero) .toolbar{display:none!important}
html body:has(.kph-hero) .main{padding-top:0!important}
html body:has(.kph-hero) #content{margin-top:0!important;padding-top:0!important}
html body .wrapper:has(.kph-hero){background:none!important;border:0!important;box-shadow:none!important;margin-top:0!important;padding-top:0!important}
html body .wrapper:has(.kph-hero)::before,
html body .wrapper:has(.kph-hero)::after{display:none!important}
html body .kph-hero{box-sizing:border-box;width:100vw!important;max-width:100vw!important;margin-left:calc(50% - 50vw)!important;margin-right:0!important;border-radius:0!important}

/* ===== Hero: tinggi disamakan dengan halaman /dataset/ ===== */
:root{--sd-hero-h:253px;--sd-hero-pt:46px}
@media (min-width:861px){
  html body .kph-hero{min-height:var(--sd-hero-h)!important;padding-top:var(--sd-hero-pt)!important;padding-bottom:40px!important;box-sizing:border-box;display:flex!important;flex-direction:column;justify-content:flex-start}
  html body .kph-hero>*{width:100%;box-sizing:border-box}
}

/* ===== Hero bergambar: foto Kantor Bupati ===== */
html body .kph-hero,
html body .kph-search__hero{
  position:relative!important;isolation:isolate;overflow:hidden;
  background:
    linear-gradient(90deg,rgba(58,30,14,.94) 0%,rgba(58,30,14,.82) 35%,rgba(58,30,14,.35) 70%,rgba(58,30,14,.10) 100%),
    url('img/kantor-bupati.jpg') center 42%/cover no-repeat!important;
  border-bottom:0!important;
}
html body .kph-hero::after,
html body .kph-search__hero::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:4px;z-index:2;
  background:linear-gradient(90deg,#f2b632,#e8892b 50%,#f2b632);
}
html body .kph-hero>*,
html body .kph-search__hero>*{position:relative;z-index:1}
html body .kph-hero h1,
html body .kph-hero h2,
html body .kph-search__hero h1,
html body .kph-search__hero h2{
  color:#fff!important;text-shadow:0 2px 12px rgba(0,0,0,.45);letter-spacing:.2px;
}
html body .kph-hero p,
html body .kph-search__hero p{
  color:rgba(255,255,255,.92)!important;text-shadow:0 1px 8px rgba(0,0,0,.4);max-width:640px;
}
@keyframes sdHeroIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
html body .kph-hero>*,
html body .kph-search__hero>*{animation:sdHeroIn .6s ease both}
@media (prefers-reduced-motion:reduce){
  html body .kph-hero>*,html body .kph-search__hero>*{animation:none}
}
@media (max-width:860px){
  html body .kph-hero,
  html body .kph-search__hero{
    background:
      linear-gradient(180deg,rgba(58,30,14,.80),rgba(58,30,14,.72)),
      url('img/kantor-bupati.jpg') 60% center/cover no-repeat!important;
  }
}

/* ===== Hero: lebih tinggi, teks rata kiri sejajar konten ===== */
:root{--sd-hero-h:340px;--sd-hero-pt:76px;--sd-wrap:1200px}
@media (min-width:861px){
  html body .kph-hero{
    padding-left:max(24px,calc((100% - var(--sd-wrap))/2))!important;
    padding-right:max(24px,calc((100% - var(--sd-wrap))/2))!important;
    padding-bottom:56px!important;
    background-position:center 40%!important;
  }
  html body .kph-search__hero{min-height:var(--sd-hero-h)!important;background-position:center 40%!important}
  html body .kph-hero h1,
  html body .kph-hero h2,
  html body .kph-hero p{
    text-align:left!important;margin-left:0!important;margin-right:auto!important;
    padding-left:0!important;justify-content:flex-start!important;
  }
  html body .kph-hero h1,
  html body .kph-hero h2{font-size:clamp(2rem,3vw,2.8rem)!important;line-height:1.15!important;margin-bottom:12px!important}
  html body .kph-hero p{font-size:1.15rem!important;line-height:1.5!important;max-width:680px}
}

/* ===== /dataset/: turunkan daftar dataset agar tidak tertutup hero ===== */
:root{--sd-ds-gap:60px}
html body .kph-search__hero{margin-bottom:var(--sd-ds-gap)!important}
@media (max-width:860px){
  html body .kph-search__hero{margin-bottom:24px!important}
}

/* ===== Kepahiang Satu: carousel kartu peta ===== */
.ks-head{display:flex;justify-content:space-between;align-items:center;margin:30px 0 16px}
.ks-head h2{margin:0;font-size:1rem;font-weight:800;text-transform:uppercase;border-left:8px solid #e8892b;padding-left:12px;border-radius:3px}
.ks-head span{font-size:.85rem;color:#6f6259}
.ks-car{position:relative}
.ks-rail{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:2px 2px 6px}
.ks-rail::-webkit-scrollbar{display:none}
.ks-card{flex:0 0 220px;scroll-snap-align:start;border:1px solid #e6e1da;border-radius:10px;background:#fff;overflow:hidden;text-decoration:none!important;color:#2a1a10}
.ks-card:hover{border-color:#6b3f22}
.ks-thumb{height:150px;display:flex;align-items:center;justify-content:center;font-size:3rem;background:linear-gradient(135deg,#f6e3c8,#e4a95c)}
.ks-tags{display:flex;gap:6px;padding:8px 8px 0}
.ks-tags i{font-style:normal;font-size:.7rem;font-weight:700;padding:3px 9px;border-radius:5px}
.ks-tags i:first-child{background:#3a1e0e;color:#fff}
.ks-tags i:last-child{background:#f4b6a6;color:#7a2a14}
.ks-card h3{margin:8px 10px 14px;font-size:.95rem;line-height:1.3}
.ks-arrow{position:absolute;top:66px;width:34px;height:34px;border-radius:50%;border:1px solid #e6e1da;background:#fff;color:#6b3f22;font-size:1.1rem;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.15);z-index:3}
.ks-l{left:-14px}.ks-r{right:-14px}
@media (max-width:760px){.ks-arrow{display:none}}

/* ===== Hero: sejajarkan teks dengan konten (padding pakai lebar layar) ===== */
:root{--sd-wrap:1176px}
@media (min-width:861px){
  html body .kph-hero{
    padding-left:max(24px,calc((100vw - var(--sd-wrap))/2))!important;
    padding-right:max(24px,calc((100vw - var(--sd-wrap))/2))!important;
  }
}

/* ===== Form tambah/ubah dataset: tampilan baru ===== */
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit){background:none!important;border:0!important;box-shadow:none!important;padding-top:24px}
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit)::before,
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit)::after{display:none!important}
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) .secondary{display:none!important}
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) .primary{float:none!important;width:100%!important;max-width:920px;margin:0 auto!important;padding:0 16px}

html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) article.module{background:#fff;border:1px solid #e6e1da;border-radius:16px;box-shadow:0 8px 30px rgba(58,30,14,.08);overflow:hidden}
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) article.module:has(.stages)::before{display:block;padding:22px 34px;background:linear-gradient(100deg,#3a1e0e,#6b3f22);color:#fff;font-weight:800;font-size:1.35rem;border-bottom:4px solid #f2b632}
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) article.module:has(.stages.stage-1)::before{content:"Tambah Dataset Baru"}
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) article.module:has(.stages.stage-2)::before{content:"Tambahkan Data (File atau Tautan)"}
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) .module-content{padding:28px 34px 34px!important}

/* indikator langkah */
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) .stages{display:flex;gap:10px;background:none!important;box-shadow:none!important;margin:0 0 26px!important;padding:0!important;list-style:none}
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) .stages li{flex:1;border-radius:10px!important;background:#f1ece5!important}
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) .stages li::after{display:none!important}
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) .stages li .highlight{background:transparent!important}
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) .stages li.active{background:#6b3f22!important}
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) .stages li.active,
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) .stages li.active .highlight,
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) .stages li.active a{color:#fff!important}

/* kolom isian */
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) .control-group{margin-bottom:22px}
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) .control-label{display:block;font-weight:700;color:#3a1e0e;margin-bottom:6px}
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) :is(.form-control,input[type=text],input[type=url],input[type=email],input[type=number],textarea,select){border:1.5px solid #d8cfc4!important;border-radius:10px!important;padding:11px 14px;box-shadow:none!important;background:#fff;min-height:46px}
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) textarea{min-height:130px}
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) :is(.form-control,input,textarea,select):focus{border-color:#6b3f22!important;box-shadow:0 0 0 3px rgba(242,182,50,.35)!important;outline:0}
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) :is(.select2-container .select2-choice,.select2-container-multi .select2-choices){border:1.5px solid #d8cfc4!important;border-radius:10px!important;min-height:46px;padding:6px 10px;background:#fff!important;box-shadow:none!important}
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) .select2-search-choice{background:#f2b632!important;border:0!important;color:#3a1e0e!important;border-radius:6px!important;font-weight:700}
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) :is(.info-block,.form-text,.help-block){color:#6f6259;font-size:.82rem}

/* tombol */
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) .form-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;background:none!important;border-top:1px solid #eee!important;padding:22px 0 0!important;margin-top:10px}
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) .form-actions .btn{float:none!important;border-radius:10px!important;padding:12px 26px!important;font-weight:700}
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) .form-actions .btn-primary{background:#6b3f22!important;border-color:#6b3f22!important;color:#fff!important}
html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) .form-actions .btn-primary:hover{background:#3a1e0e!important}

@media (max-width:760px){
  html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) .module-content{padding:20px 16px 24px!important}
  html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) article.module:has(.stages)::before{padding:16px 18px;font-size:1.1rem}
  html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) .stages{flex-direction:column}
  html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) .form-actions{flex-direction:column-reverse}
  html body .wrapper:has(form.dataset-form,#dataset-edit,#resource-edit) .form-actions .btn{width:100%}
}

/* ===== Tombol Kelola/Hapus di halaman dataset ===== */
html body .kph-detail__admin{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 4px}
html body .kph-detail__admin .kph-btn{display:inline-block;text-decoration:none;padding:9px 20px;border-radius:9px;font-weight:700;font-size:.9rem}
html body .kph-btn--danger{background:#fff!important;color:#b3261e!important;border:1.5px solid #b3261e!important}
html body .kph-btn--danger:hover{background:#b3261e!important;color:#fff!important}

/* ===== Kelola Konten (panel admin) ===== */
html body .wrapper:has(.kl){background:none!important;border:0!important;box-shadow:none!important}
html body .wrapper:has(.kl)::before,html body .wrapper:has(.kl)::after{display:none!important}
.primary:has(.kl){float:none!important;width:100%!important;max-width:100%!important}
.kl{max-width:980px;margin:0 auto;padding:8px 0 48px;color:#0f2a24}
.kl__head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin:8px 0 22px}
.kl__head h1{margin:0 0 4px;font-size:26px}
.kl__head p{margin:0;color:#41564f}
.kl__sub{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#41564f;margin:26px 0 12px}
.kl__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.kl-card{display:block;background:#fff;border:1px solid #dfe8e4;border-left:4px solid #127a4a;border-radius:14px;padding:16px 18px;text-decoration:none!important;color:#0f2a24}
.kl-card:hover{background:#f3faf6;border-color:#127a4a}
.kl-card strong{display:block;font-size:15.5px;margin-bottom:4px}
.kl-card span{color:#41564f;font-size:13px}
.kl__ok{background:#dcf3e6;color:#0b5a36;border-radius:10px;padding:10px 14px;margin-bottom:16px;font-weight:600}
.kl-row{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid #dfe8e4;border-radius:14px;padding:14px 16px;margin-bottom:12px}
.kl-row__grid{flex:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}
.kl-f{display:flex;flex-direction:column;gap:4px;font-size:12.5px;font-weight:700;color:#41564f}
.kl-f--area{grid-column:1/-1}
.kl__form input[type=text],.kl__form textarea{width:100%;border:1.5px solid #dfe8e4;border-radius:10px;padding:9px 12px;font-size:14px;font-weight:400;color:#0f2a24;background:#fff}
.kl__form input[type=text]:focus,.kl__form textarea:focus{border-color:#127a4a;outline:0;box-shadow:0 0 0 3px rgba(18,122,74,.15)}
.kl-row__act{display:flex;flex-direction:column;gap:6px}
.kl-row__act button{border:1.5px solid #dfe8e4;background:#fff;border-radius:8px;padding:6px 10px;cursor:pointer;font-weight:600;color:#41564f}
.kl-row__act button:hover{border-color:#127a4a;color:#0b5a36}
.kl-row__act button[data-act=del]:hover{border-color:#b3261e;color:#b3261e}
.kl__bar{position:sticky;bottom:0;display:flex;gap:10px;justify-content:space-between;background:#fff;border-top:1px solid #dfe8e4;padding:14px 0;margin-top:16px}
.kl__save{background:#127a4a!important;border-color:#127a4a!important;color:#fff!important;border-radius:12px;font-weight:700;padding:10px 26px}
.kl-panel{background:#fff;border:1px solid #dfe8e4;border-radius:14px;padding:20px 22px;margin-bottom:20px}
.kl-panel .kl-f{margin-bottom:14px}
.kl-check{display:flex;gap:10px;align-items:center;font-weight:700;margin-bottom:16px}
.kl-table{width:100%;border-collapse:collapse;font-size:14px}
.kl-table th{text-align:left;font-size:12px;color:#41564f;text-transform:uppercase;padding:8px 10px;border-bottom:1px solid #dfe8e4}
.kl-table td{padding:10px;border-bottom:1px solid #eef3f0;vertical-align:middle}
.kl-b{display:inline-block;background:#fdf3dc;color:#8a5a00;border-radius:6px;padding:1px 8px;margin-left:6px;font-size:11.5px;font-weight:700}
@media (max-width:760px){.kl-row{flex-direction:column}.kl-row__grid{grid-template-columns:1fr}.kl-row__act{flex-direction:row}.kl__head{flex-direction:column}}

/* ===== Kelola Konten: tahap 2 ===== */
.kl__form select{width:100%;border:1.5px solid #dfe8e4;border-radius:10px;padding:9px 12px;font-size:14px;font-weight:400;color:#0f2a24;background:#fff}
.kl__reset{margin-top:14px;text-align:right}

/* ===== Kepatuhan SDI ===== */
.sdi-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}
.sdi-tabs a{border:1px solid #e6d3bd;background:#fff;color:#3d2411;padding:9px 18px;border-radius:22px;font-weight:600;font-size:14px;text-decoration:none}
.sdi-tabs a:hover{border-color:#a9642e}
.sdi-tabs a.on{background:#a9642e;border-color:#a9642e;color:#fff}
.sdi-kpi{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:16px}
.sdi-kpi div{background:#fff;border:1px solid #e6d3bd;border-radius:14px;padding:14px 16px;font-size:13px;color:#64748b}
.sdi-kpi b{display:block;font-size:1.8rem;color:#a9642e;line-height:1.1}
.sdi-filter{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}
.sdi-filter input,.sdi-filter select{border:1.5px solid #e6d3bd;border-radius:22px;padding:9px 16px;background:#fff;font-size:14px}
.sdi-filter input{flex:1;min-width:200px}
.sdi-filter button,.sdi-btn{background:#a9642e;color:#fff!important;border:0;border-radius:22px;padding:9px 20px;font-weight:600;font-size:13px;cursor:pointer;text-decoration:none!important;display:inline-block}
.sdi-tw{overflow-x:auto}
.sdi-table{width:100%;border-collapse:collapse;background:#fff;font-size:14px;min-width:760px}
.sdi-table th{background:#fbf1e4;color:#3d2411;text-align:left;padding:10px 12px}
.sdi-table td{padding:10px 12px;border-bottom:1px solid #f0e4d5;vertical-align:top}
.sdi-table a{color:#6f4423;font-weight:600}
.sdi-tag{display:inline-block;padding:2px 10px;border-radius:12px;font-size:12px;font-weight:700;white-space:nowrap}
.sdi-g{background:#dcf0e2;color:#1d5a37}.sdi-y{background:#fdf0cf;color:#7a5200}.sdi-r{background:#f7dad7;color:#8a1c15}
.sdi-note{color:#64748b;font-size:13px;margin-top:10px}
