/* ESG Index — tema Libra: latar krem hangat, kartu putih, aksen oranye, ikon/aksen navy; navigasi atas fullscreen. */
:root{
  --bg:#f4f2ec;--surface:#fff;--surface2:#f6f4ef;--ink:#1b2437;--ink2:#4b5568;--ink3:#7b8397;--line:#ece8df;
  --navy:#1f2a44;--accent:#8fd9b0;--accent2:#2f8f66;--accent-soft:#e6f6ed;--green:#1f8f5f;
  --brand:#1f2a44;--brand2:#141c30;--brand-soft:#e6f6ed;--pink:#8fd9b0;--pink-soft:#e6f6ed;--sky:#eef0f4;--sky-soft:#f1f2f6;
  --E:#1f8f5f;--S:#7c5cc4;--G:#2a6fa3;--Esoft:#e1f3ea;--Ssoft:#ece6f8;--Gsoft:#e1eef8;
  --a:#1f8f5f;--b:#6aa84f;--c:#d9a21d;--d:#e07a2f;--e:#d6455d;--neg:#d6455d;--pos:#1f8f5f;
  --r:14px;--shadow:0 1px 2px rgba(27,36,55,.04),0 4px 14px rgba(27,36,55,.04);
  --font:'Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;--serif:var(--font);--side:#fff;
}
:root[data-theme=dark]{--bg:#12141b;--surface:#1b1e28;--surface2:#222634;--ink:#eceef4;--ink2:#b4bacb;--ink3:#8b93a8;--line:#2b303e;--navy:#9db0e0;--brand:#9db0e0;--brand2:#c4d0f0;--accent:#8fd9b0;--accent2:#9be4bc;--accent-soft:#1d3a2c;--pink-soft:#1d3a2c;--sky:#252a38;--sky-soft:#222634;--Esoft:#143a2b;--Ssoft:#2b2547;--Gsoft:#17304a;--E:#5fcf9d;--S:#b69cf2;--G:#7cc0ee;--neg:#ff8fa3;--pos:#5fcf9d;--side:#1b1e28;--shadow:none}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#12141b;--surface:#1b1e28;--surface2:#222634;--ink:#eceef4;--ink2:#b4bacb;--ink3:#8b93a8;--line:#2b303e;--navy:#9db0e0;--brand:#9db0e0;--brand2:#c4d0f0;--accent:#8fd9b0;--accent2:#9be4bc;--accent-soft:#1d3a2c;--pink-soft:#1d3a2c;--sky:#252a38;--sky-soft:#222634;--Esoft:#143a2b;--Ssoft:#2b2547;--Gsoft:#17304a;--E:#5fcf9d;--S:#b69cf2;--G:#7cc0ee;--neg:#ff8fa3;--pos:#5fcf9d;--side:#1b1e28;--shadow:none}}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.55 var(--font);-webkit-font-smoothing:antialiased}
a{color:var(--navy);text-decoration:none;font-weight:600}a:hover{text-decoration:underline}
h1,h2,h3{line-height:1.25;margin:0;letter-spacing:-.01em}h1{font-size:clamp(24px,3.4vw,30px);font-weight:800}h2{font-size:18px;font-weight:800}h3{font-size:15px;font-weight:800}
/* ---- shell: navigasi atas ---- */
body{overflow-x:hidden}
.topnav{position:sticky;top:0;z-index:50;background:var(--surface);border-bottom:1px solid var(--line);box-shadow:0 1px 0 rgba(27,36,55,.02)}
.tn-row{display:flex;align-items:center;gap:14px;padding:0 clamp(16px,2.2vw,36px)}
.tn-util{min-height:68px;flex-wrap:nowrap}
.tn-brand{display:flex;align-items:center;flex:none}.tn-brand .logo-img{height:54px;width:auto;display:block}
:root[data-theme=dark] .logo-img{background:#fff;border-radius:10px;padding:4px 8px}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .logo-img{background:#fff;border-radius:10px;padding:4px 8px}}
.search{position:relative;display:flex;align-items:center;background:var(--surface2);border-radius:12px;padding:0 14px;width:min(430px,38vw);height:44px;margin-left:clamp(8px,2vw,28px);border:1px solid transparent}
.search:focus-within{border-color:var(--accent);background:var(--surface)}
.search svg{width:17px;height:17px;fill:none;stroke:var(--ink3);stroke-width:1.8;stroke-linecap:round;margin-right:8px;flex:none}
.search input{border:0!important;outline:0!important;background:transparent!important;width:100%;height:100%;padding:0!important;min-height:0!important;font-size:14px}
.sres{position:absolute;left:0;right:0;top:50px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 14px 34px rgba(27,36,55,.16);padding:6px;max-height:380px;overflow:auto;z-index:70}
.sres a{display:flex;justify-content:space-between;gap:8px;padding:9px 11px;border-radius:9px;color:var(--ink);font-weight:600}.sres a:hover{background:var(--accent-soft);text-decoration:none}.sres small{color:var(--ink3)}
.sp{flex:1}
.icon-circle{position:relative;width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;font-size:16px;display:grid;place-items:center;flex:none}.icon-circle:hover{background:var(--surface2);text-decoration:none}
.icon-circle svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.icon-circle i{position:absolute;top:9px;right:10px;width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 2px var(--surface)}
.yearpill{display:inline-flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:0 6px 0 14px;height:44px;font-weight:700;color:var(--ink3);font-size:13px;flex:none}.yearpill select{border:0;background:transparent;font-weight:800;color:var(--ink);padding:0 8px;min-height:0;height:100%}
.me{display:flex;align-items:center;gap:10px;background:none;border:0;cursor:pointer;text-align:left;padding:0;flex:none}.me b{display:block;font-size:14px;line-height:1.2}.me small{color:var(--ink3);font-size:12.5px}
.avatar{width:42px;height:42px;border-radius:50%;background:var(--navy);color:var(--surface);display:grid;place-items:center;font-weight:800;font-size:13px}
.menu{position:absolute;right:clamp(16px,2.2vw,36px);top:62px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 14px 34px rgba(27,36,55,.16);padding:6px;min-width:200px;z-index:80}
.menu a,.menu button{display:block;width:100%;text-align:left;border:0;background:none;padding:10px 12px;border-radius:9px;cursor:pointer;font-weight:700;color:var(--ink)}.menu a:hover,.menu button:hover{background:var(--accent-soft);text-decoration:none}
/* baris menu */
.tn-menu{gap:4px;min-height:52px;border-top:1px solid var(--line);overflow-x:auto;scrollbar-width:none}.tn-menu::-webkit-scrollbar{display:none}
.tn-item{position:relative;display:flex;align-items:center;gap:8px;padding:9px 14px;border-radius:11px;border:0;background:none;color:var(--ink2);font-size:14.5px;font-weight:700;cursor:pointer;white-space:nowrap}
.tn-item svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}
.tn-item .chev{width:13px;height:13px;stroke-width:2.2;opacity:.6;transition:transform .15s}
.tn-item:hover,.tn-item[aria-expanded=true]{background:var(--surface2);color:var(--ink);text-decoration:none}
.tn-item[aria-expanded=true] .chev{transform:rotate(180deg)}
.tn-item.on{background:var(--accent);color:#fff}.tn-item.on:hover{background:var(--accent2);color:#fff}.tn-item .badge{background:var(--accent-soft);color:var(--accent2);font-size:11px;padding:1px 7px;border-radius:99px;font-weight:800}
.tn-item.on .badge{background:rgba(255,255,255,.25);color:#fff}
.tn-gap{flex:1}
/* mega menu */
.mega{position:absolute;left:0;right:0;top:100%;background:var(--surface);border-bottom:1px solid var(--line);box-shadow:0 24px 50px rgba(27,36,55,.14);padding:22px clamp(16px,2.2vw,36px) 26px;animation:mg .14s ease-out}
@keyframes mg{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.mg-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:26px;max-width:1500px;margin:0 auto}
.mg-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px 14px;align-content:start}
.mg-h{grid-column:1/-1;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink3);margin:4px 2px 0}
.mg-link{display:flex;gap:13px;align-items:flex-start;padding:11px 12px;border-radius:13px;color:var(--ink);font-weight:400}.mg-link:hover{background:var(--surface2);text-decoration:none}
.mg-ic{width:40px;height:40px;border-radius:11px;background:var(--navy);color:#fff;display:grid;place-items:center;flex:none}.mg-link:nth-child(3n+2) .mg-ic{background:var(--accent)}:root[data-theme=dark] .mg-ic{color:#12141b}
.mg-ic svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.mg-link b{display:block;font-size:14.5px;font-weight:800;line-height:1.3}.mg-link b+span{display:block;font-size:13px;color:var(--ink3);line-height:1.4;margin-top:2px}
.mg-aside{background:var(--surface2);border-radius:16px;padding:16px 18px;min-height:150px;align-self:start}
.mg-aside h4{margin:0 0 10px;font-size:13px;font-weight:800;color:var(--ink3);letter-spacing:.06em;text-transform:uppercase}
.mg-aside .row2{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 0;border-bottom:1px dashed var(--line);color:var(--ink);font-weight:700;font-size:14px}.mg-aside .row2:last-of-type{border-bottom:0}.mg-aside .row2:hover{text-decoration:none;color:var(--accent2)}
.mg-aside .row2 small{font-weight:600;color:var(--ink3);display:block;font-size:12px}
.mg-aside .sc2{font-weight:800;color:var(--ink);font-variant-numeric:tabular-nums}
.mg-cta{display:inline-flex;margin-top:10px}
.scrim{position:fixed;inset:0;background:rgba(18,20,27,.4);z-index:40}
.tn-burger{display:none;width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:var(--surface);cursor:pointer;flex:none;position:relative}.tn-burger span{position:absolute;left:12px;right:12px;height:2px;background:var(--ink);border-radius:2px;transition:.2s}.tn-burger span:nth-child(1){top:14px}.tn-burger span:nth-child(2){top:21px}.tn-burger span:nth-child(3){top:28px}
.tn-burger[aria-expanded=true] span:nth-child(1){top:21px;transform:rotate(45deg)}.tn-burger[aria-expanded=true] span:nth-child(2){opacity:0}.tn-burger[aria-expanded=true] span:nth-child(3){top:21px;transform:rotate(-45deg)}
.wrap{width:100%;margin:0;padding:24px clamp(16px,2.2vw,36px) 0}.wrap.fluid{max-width:none}
main.page{min-height:calc(100vh - 124px)}
footer{border-top:1px solid var(--line);margin-top:34px;padding:28px 0 40px;color:var(--ink3);font-size:13.5px}
.ft-grid{display:grid;grid-template-columns:minmax(260px,2fr) 1fr 1fr 1.4fr;gap:28px}.ft-grid h4{margin:0 0 10px;color:var(--ink);font-size:13px;letter-spacing:.06em;text-transform:uppercase}.ft-grid a{display:block;color:var(--ink2);padding:3px 0;font-weight:600}.ft-grid p{margin:12px 0 0;max-width:62ch}.ft-grid .logo-img{height:48px;width:auto}
@media(max-width:1100px){.search{width:min(300px,30vw)}.me small,.me b{display:none}.mg-grid{grid-template-columns:1fr}.mg-aside{display:none}}
@media(max-width:900px){
  .tn-burger{display:block}.search{display:none}.yearpill{display:none}
  .tn-menu{display:none;position:fixed;inset:68px 0 0 0;flex-direction:column;align-items:stretch;gap:2px;padding:14px 16px 30px;background:var(--surface);overflow:auto;border:0;z-index:60}.tn-menu.open{display:flex}
  .tn-item{padding:13px 14px;font-size:16px;justify-content:flex-start}.tn-item .chev{margin-left:auto}.tn-gap{display:none}
  .mega{position:static;box-shadow:none;border:0;padding:4px 0 8px 10px;background:transparent;animation:none}.mg-grid{display:block}.mg-links{grid-template-columns:1fr}
  .tn-brand .logo-img{height:38px}.tn-util{min-height:64px}.ft-grid{grid-template-columns:1fr}
}

/* ---- komponen ---- */
select,input,textarea,button{font:inherit;color:inherit}
select,input[type=text],input[type=email],input[type=password],input[type=number],input[type=search],input[type=date],textarea{background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:8px 11px;min-height:38px;max-width:100%}
textarea{width:100%;min-height:90px}
:focus-visible{outline:2px solid var(--navy);outline-offset:2px}
.btn{display:inline-flex;align-items:center;gap:6px;border:0;background:var(--sky);color:#17375e;padding:8px 15px;border-radius:11px;font-weight:800;font-size:14px;cursor:pointer;min-height:38px}.btn:hover{filter:brightness(.97);text-decoration:none}
.btn.pri{background:var(--pink);color:#17375e}.btn.sm{padding:5px 12px;min-height:30px;font-size:13px;border-radius:9px}.btn.danger{background:var(--surface);color:var(--neg);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--neg) 45%,transparent)}
:root[data-theme=dark] .btn{color:#0c1626}
.btn[disabled]{opacity:.5;cursor:not-allowed}
.hero{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;flex-wrap:wrap;margin-bottom:20px}.hero p{margin:6px 0 0;color:var(--ink3);max-width:78ch}
.phase-tag{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#17375e;background:var(--sky);padding:3px 11px;border-radius:99px;margin-bottom:8px}
.seg{display:inline-flex;background:var(--surface);border-radius:99px;padding:4px;box-shadow:var(--shadow)}.seg a,.seg button{border:0;background:none;padding:7px 16px;border-radius:99px;font-weight:800;color:var(--ink3);cursor:pointer;font-size:14px}.seg .on{background:var(--pink);color:#17375e}.seg a:hover{text-decoration:none}
.card{background:var(--surface);border-radius:var(--r);padding:20px;box-shadow:var(--shadow)}
.card>h2,.card>.ch{margin-bottom:14px}.ch{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap}.ch small,.muted{color:var(--ink3)}small{font-size:13px}
.grid{display:grid;gap:16px}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}.g-main{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}.g-side{grid-template-columns:320px minmax(0,1fr)}
@media(max-width:1100px){.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.g3,.g-main,.g-side{grid-template-columns:1fr}}@media(max-width:640px){.g2,.g4{grid-template-columns:1fr}}
.notice{border-radius:12px;padding:11px 14px;font-size:14px;margin-bottom:16px;background:var(--pink-soft);color:var(--ink)}
.kpi{position:relative}.kpi .l{font-size:14px;font-weight:600;color:var(--ink3);padding-right:44px}.kpi .v{font-size:26px;font-weight:800;letter-spacing:-.02em;margin-top:4px;font-variant-numeric:tabular-nums;font-family:var(--font)}
.kpi-ic{position:absolute;right:16px;top:16px;width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:var(--sky-soft);color:var(--navy)}.grid>.kpi:nth-child(even) .kpi-ic{background:var(--pink-soft)}.kpi-ic svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.kpi .d{font-size:13px;font-weight:700}
.up{color:var(--pos)}.down{color:var(--neg)}
.pbar{height:8px;background:var(--surface2);border-radius:99px;position:relative}.pbar>i{display:block;height:100%;border-radius:99px;background:var(--navy)}.pbar>b{position:absolute;top:-3px;width:2px;height:14px;background:var(--ink);border-radius:2px}
.pill{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:800;padding:2px 10px;border-radius:99px;white-space:nowrap}
.band-a{background:#dcf1e5;color:#12633a}.band-b{background:#e8f3dc;color:#42702a}.band-c{background:#fbf0cf;color:#7b5a05}.band-d{background:#fce3d0;color:#8e4412}.band-e{background:#fadce6;color:#8e1f45}
:root[data-theme=dark] .band-a,:root[data-theme=dark] .band-b,:root[data-theme=dark] .band-c,:root[data-theme=dark] .band-d,:root[data-theme=dark] .band-e{filter:brightness(.82)}
.pE{background:var(--Esoft);color:var(--E)}.pS{background:var(--Ssoft);color:var(--S)}.pG{background:var(--Gsoft);color:var(--G)}.pESG{background:var(--surface2);color:var(--ink2)}
.tag{display:inline-block;font-size:12px;padding:1px 8px;border-radius:7px;background:var(--surface2);color:var(--ink2);margin:1px 2px 1px 0;font-weight:700}
.st-sample{background:var(--pink-soft);color:#8a2f86}.st-self{background:var(--Gsoft);color:var(--G)}.st-verified{background:var(--Esoft);color:var(--E)}.st-analyst{background:var(--surface2);color:var(--ink2)}.st-ai{background:var(--sky);color:#17375e}
:root[data-theme=dark] .st-sample{color:#f6b8f1}
.tools-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:14px}.tools-row input[type=search]{flex:1;min-width:160px}
.tablewrap{overflow-x:auto;border-radius:12px}table{width:100%;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}
th{font-size:13px;color:var(--ink3);text-align:left;padding:11px 12px;border-bottom:1px solid var(--line);white-space:nowrap;font-weight:800}td{padding:11px 12px;border-bottom:1px solid var(--line);vertical-align:middle}tr:last-child td{border-bottom:0}
tr.link{cursor:pointer}tr.link:hover td{background:var(--surface2)}td.n,th.n{text-align:right}
.sc{display:flex;align-items:center;gap:10px;min-width:150px}.sc .pbar{flex:1;min-width:60px}.sc b{font-variant-numeric:tabular-nums;min-width:38px;text-align:right}.rank{color:var(--ink3);font-variant-numeric:tabular-nums;width:34px}
.ptag{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:7px;font-size:11px;font-weight:800;color:#fff}.ptE{background:var(--E)}.ptS{background:var(--S)}.ptG{background:var(--G)}
:root[data-theme=dark] .ptag{color:#0c1626}
.detail-head{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:flex-start;margin-bottom:18px}.detail-head .meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px;align-items:center}
.gauge{display:grid;place-items:center;position:relative}.gauge .num{position:absolute;text-align:center}.gauge .num b{font-size:46px;line-height:1;display:block;font-weight:800;letter-spacing:-.02em}.gauge .num span{font-size:12px;color:var(--ink3);font-weight:700}
.prow{display:grid;grid-template-columns:22px 1fr 44px;gap:10px;align-items:center;margin:12px 0}.prow .pbar{height:10px}.prow b{text-align:right;font-variant-numeric:tabular-nums}
.sw{display:flex;gap:6px;align-items:center;font-size:12px;color:var(--ink3)}.sw i{width:10px;height:3px;background:var(--ink);display:inline-block}
.eq{display:grid;grid-template-columns:1fr auto;gap:2px 12px;padding:9px 0;border-bottom:1px dashed var(--line)}.eq b{font-weight:800}.eq small{grid-column:1/-1}
.ind-g{margin-top:6px}.ind-g h3{display:flex;gap:8px;align-items:center;padding:12px 0 6px}
.ind{border-top:1px solid var(--line)}.ind summary{display:grid;grid-template-columns:minmax(150px,1.4fr) minmax(150px,1fr) 56px 54px;gap:12px;align-items:center;padding:11px 0;cursor:pointer;list-style:none}.ind summary::-webkit-details-marker{display:none}
.ind summary:hover{background:color-mix(in srgb,var(--surface2) 60%,transparent)}.ind .body{padding:0 0 14px 4px;color:var(--ink2);font-size:14px}.ind .rub{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0}.ind .rub div{background:var(--surface2);border-radius:10px;padding:8px 10px;font-size:13px}.ind .rub b{display:block;font-size:11px;color:var(--ink3)}
@media(max-width:700px){.ind summary{grid-template-columns:1fr 1fr}.ind .rub{grid-template-columns:1fr}}
.news-i{display:block;padding:11px 0;border-bottom:1px solid var(--line);color:var(--ink);font-weight:400}.news-i:last-child{border-bottom:0}.news-i:hover{text-decoration:none}.news-i:hover .t{color:var(--navy);text-decoration:underline}.news-i .t{font-weight:700;line-height:1.35}.news-i .m{display:flex;gap:8px;flex-wrap:wrap;font-size:12.5px;color:var(--ink3);margin-top:5px;align-items:center}
.sen-positif{color:var(--pos)}.sen-negatif{color:var(--neg)}
.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{border:0;background:var(--surface2);border-radius:99px;padding:6px 14px;font-size:13.5px;font-weight:800;cursor:pointer;color:var(--ink2);display:inline-flex;align-items:center;gap:6px}.chip.on{background:var(--sky);color:#17375e}
.hbar{display:grid;grid-template-columns:150px 1fr 44px;gap:10px;align-items:center;margin:9px 0;font-size:14px}.hbar .bg{height:12px;background:var(--surface2);border-radius:99px;overflow:hidden;display:flex}.hbar .bg i{display:block;height:100%}
@media(max-width:620px){.hbar{grid-template-columns:100px 1fr 40px}}
.cov{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}.cov>div{border-radius:12px;padding:10px 12px;background:var(--surface2)}.cov .s-tercakup{border-left:4px solid var(--E)}.cov .s-perlu{border-left:4px solid var(--S)}.cov .s-belum{border-left:4px solid var(--line)}
dialog{border:0;border-radius:20px;background:var(--surface);color:var(--ink);padding:22px;max-width:640px;width:calc(100% - 32px);box-shadow:0 20px 60px rgba(0,0,0,.3)}dialog::backdrop{background:rgba(12,22,38,.5)}
.form{display:grid;gap:12px}.form label{display:grid;gap:5px;font-weight:700;font-size:14px}.form .row{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:560px){.form .row{grid-template-columns:1fr}}
.drow{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(180px,1fr) 70px;gap:12px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}.drow input[type=range]{width:100%;accent-color:var(--navy)}.drow input[type=number]{width:70px}
@media(max-width:700px){.drow{grid-template-columns:1fr 70px}.drow>:nth-child(2){grid-column:1/-1;order:3}}
.sticky{position:sticky;top:74px;align-self:start}
.init{border-radius:12px;padding:10px 12px;margin:8px 0;display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;background:var(--surface2)}
.eff i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--line);margin-right:2px}.eff i.on{background:var(--navy)}
.empty{padding:28px;text-align:center;color:var(--ink3)}
.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--navy);color:var(--surface);padding:10px 18px;border-radius:12px;font-weight:700;z-index:60;box-shadow:var(--shadow)}
footer{border-top:1px solid var(--line);padding:22px 0 40px;color:var(--ink3);font-size:13px;margin-top:10px}
.spin{display:inline-block;width:14px;height:14px;border:2px solid var(--line);border-top-color:var(--navy);border-radius:50%;animation:sp .7s linear infinite}@keyframes sp{to{transform:rotate(360deg)}}
.skeleton{height:200px;border-radius:16px;background:linear-gradient(90deg,var(--surface2),var(--surface),var(--surface2));background-size:200% 100%;animation:sk 1.2s infinite}@keyframes sk{to{background-position:-200% 0}}
.tabs{display:flex;gap:6px;margin-bottom:18px;overflow:auto;padding-bottom:2px;flex-wrap:wrap}.tabs button{border:0;background:var(--surface);padding:8px 15px;cursor:pointer;color:var(--ink3);font-weight:800;font-size:14.5px;border-radius:99px;white-space:nowrap;box-shadow:var(--shadow)}.tabs .on{background:var(--pink);color:#17375e}
.xw td,.xw th{text-align:center;padding:7px 6px}.xw td:first-child,.xw th:first-child{text-align:left}.xw .y{color:var(--E);font-weight:800}
.fw{border-radius:var(--r);padding:18px;background:var(--surface);box-shadow:var(--shadow)}.fw h3{margin-bottom:4px}.fw p{margin:8px 0;color:var(--ink2);font-size:14px}
.card+.card,.grid+.card,.card+.grid,.notice+.grid{margin-top:0}
@media print{.side,.apptop,.tools-row,footer,.noprint,.btn,.scrim{display:none!important}.app{display:block}body{background:#fff}.card{box-shadow:none;break-inside:avoid}.wrap{padding:0}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ---- override komponen: gaya Libra ---- */
.btn{background:var(--surface);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line);font-weight:700}.btn:hover{background:var(--surface2);filter:none}
.btn.pri{background:var(--accent);color:#fff;box-shadow:none}.btn.pri:hover{background:var(--accent2)}
.btn.danger{color:var(--neg)}:root[data-theme=dark] .btn{color:var(--ink)}:root[data-theme=dark] .btn.pri{color:#fff}
.phase-tag{background:var(--accent-soft);color:var(--accent2)}
.seg .on,.tabs .on{background:var(--accent);color:#fff}.tabs button{box-shadow:inset 0 0 0 1px var(--line);background:var(--surface)}.tabs .on{box-shadow:none}.seg{box-shadow:inset 0 0 0 1px var(--line)}
.chip.on{background:var(--accent);color:#fff}
.pbar>i{background:var(--accent)}.pbar{background:#ebe8e1}:root[data-theme=dark] .pbar{background:#2b303e}
.notice{background:var(--accent-soft);border:0;color:var(--ink)}
.card{border:1px solid var(--line);box-shadow:var(--shadow)}
.kpi{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;align-items:center;align-content:start}.kpi-ic{position:static;width:40px;height:40px;border-radius:11px;background:var(--navy);color:#fff;grid-row:span 1}.grid>.kpi:nth-child(even) .kpi-ic{background:var(--navy)}:root[data-theme=dark] .kpi-ic{color:#12141b}
.kpi .l{padding:0;font-size:14px;font-weight:600;grid-column:2}.kpi .v{grid-column:1/-1;font-size:32px;margin-top:6px;letter-spacing:-.02em}.kpi .d{grid-column:1/-1}
.pill{font-weight:700}.band-a{background:#e1f4ea;color:#17744b}.band-b{background:#ebf4df;color:#4a7a2d}.band-c{background:#fdf1d3;color:#8a6208}.band-d{background:#ffe6d6;color:#b24a0c}.band-e{background:#fde0e6;color:#b02342}
.st-sample{background:var(--accent-soft);color:var(--accent2)}.st-ai{background:#e7ebf6;color:#2c3e75}:root[data-theme=dark] .st-ai{background:#252a3d;color:#b8c6f2}
.nav a,.nav-h{display:none}
.news-i:hover .t{color:var(--accent2)}.sres a:hover{background:var(--accent-soft)}
a{color:var(--accent2)}.mg-link,.tn-item,.btn,.sres a,.menu a,.news-i,.tn-brand,.row2,.ft-grid a{color:inherit}a.btn.pri{color:#fff}.ft-grid a{color:var(--ink2)}
th{background:transparent}
.gauge .num b{font-weight:800}
.drow input[type=range]{accent-color:var(--accent)}
.skeleton{height:220px}

.lang-sw{display:inline-flex;background:var(--surface2);border-radius:11px;padding:3px;flex:none;border:1px solid var(--line)}.lang-sw button{border:0;background:none;padding:7px 11px;border-radius:8px;font-weight:800;font-size:12.5px;color:var(--ink3);cursor:pointer}.lang-sw button[aria-pressed=true]{background:var(--accent);color:#fff}
.tr-pending{opacity:0}#app{transition:opacity .18s}

/* ---- struktur visual: hero, subnav, seksi, podium, heatmap, SDG ---- */
:root{--ring-bg:#ebe8e1;--hh:122px}:root[data-theme=dark]{--ring-bg:#2b303e}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--ring-bg:#2b303e}}
.hero-band{position:relative;overflow:hidden;border-radius:22px;padding:30px 34px;color:#fff;background:radial-gradient(900px 340px at 92% -10%,rgba(143,217,176,.55),transparent 60%),radial-gradient(600px 300px at 0% 110%,rgba(31,143,95,.35),transparent 60%),linear-gradient(135deg,#17203a 0%,#22305a 100%);--ring-bg:rgba(255,255,255,.16);display:grid;grid-template-columns:minmax(0,1.5fr) auto;gap:28px;align-items:center;margin-bottom:6px}
.hero-band .eyebrow{display:inline-flex;gap:8px;align-items:center;font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#ffd0b8;background:rgba(255,255,255,.1);padding:4px 12px;border-radius:99px}
.hero-band h1{color:#fff;font-size:clamp(26px,3.2vw,38px);margin:12px 0 8px;letter-spacing:-.02em}.hero-band p{color:#c9d2ea;max-width:62ch;margin:0}
.hero-band .seg{background:rgba(255,255,255,.1);box-shadow:none;margin-top:18px}.hero-band .seg a{color:#c9d2ea}.hero-band .seg .on{background:var(--accent);color:#fff}
.hero-band .gauge .num b{color:#fff}.hero-band .gauge .num span{color:#aab6d6}
.hero-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;grid-column:1/-1;margin-top:4px}
.hstat{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:14px 16px}.hstat small{display:flex;gap:7px;align-items:center;color:#aab6d6;font-weight:700;font-size:12.5px}.hstat small svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.hstat b{display:block;font-size:26px;font-weight:800;letter-spacing:-.02em;margin-top:4px;line-height:1.1}.hstat span{font-size:12.5px;color:#c9d2ea}.hstat .up{color:#7be0ad}.hstat .down{color:#ff9db0}
@media(max-width:900px){.hero-band{grid-template-columns:1fr;padding:22px}.hero-stats{grid-template-columns:repeat(2,1fr)}.hero-band .gauge{justify-self:start}}
.subnav{position:sticky;top:var(--hh);z-index:20;display:flex;gap:6px;overflow-x:auto;padding:10px 0;margin:10px 0 0;background:linear-gradient(var(--bg) 78%,transparent);scrollbar-width:none}.subnav::-webkit-scrollbar{display:none}
.subnav a{flex:none;padding:7px 15px;border-radius:99px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line);color:var(--ink2);font-weight:700;font-size:13.5px}.subnav a:hover{text-decoration:none;color:var(--ink)}.subnav a.on{background:var(--ink);color:var(--surface);box-shadow:none}
.sec{scroll-margin-top:calc(var(--hh) + 56px);margin-top:26px}
.sec-h{display:flex;align-items:center;gap:12px;margin:0 0 14px}.sec-h .n{width:32px;height:32px;border-radius:10px;background:var(--accent-soft);color:var(--accent2);display:grid;place-items:center;font-weight:800;font-size:14px;flex:none}.sec-h h2{font-size:20px}.sec-h p{margin:2px 0 0;color:var(--ink3);font-size:13.5px}.sec-h .sp{flex:1}
.podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}@media(max-width:900px){.podium{grid-template-columns:1fr}}
.pod{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:var(--shadow);display:grid;grid-template-columns:auto 1fr;gap:6px 16px;align-items:center;color:var(--ink);font-weight:400;transition:transform .15s,box-shadow .15s}.pod:hover{text-decoration:none;transform:translateY(-3px);box-shadow:0 14px 30px rgba(27,36,55,.1)}
.pod .medal{position:absolute;top:-12px;left:18px;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-weight:800;color:#fff;font-size:15px;box-shadow:0 4px 10px rgba(0,0,0,.18)}.pod:nth-child(1) .medal{background:#f2b01e}.pod:nth-child(2) .medal{background:#9aa3b5}.pod:nth-child(3) .medal{background:#c47a3d}
.pod h3{font-size:17px;line-height:1.25}.pod .sub{color:var(--ink3);font-size:13px;margin-top:2px}.pod .mini{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:8px}.pod .mini div{font-size:12px;color:var(--ink3);font-weight:700}.pod .mini b{display:block;font-size:15px;color:var(--ink)}.pod .spk{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;border-top:1px dashed var(--line);padding-top:10px;margin-top:6px;font-size:12.5px;color:var(--ink3)}
.mring{position:relative;display:grid;place-items:center}.mring b{position:absolute;font-size:17px;font-weight:800}
.hm{text-align:center;font-weight:800;font-variant-numeric:tabular-nums;border-radius:0}.hm-n{color:var(--ink3)}
.hm-a{background:color-mix(in srgb,var(--a) 22%,var(--surface));color:#0f5e3c}.hm-b{background:color-mix(in srgb,var(--b) 24%,var(--surface));color:#3e6a26}.hm-c{background:color-mix(in srgb,var(--c) 26%,var(--surface));color:#7a5806}.hm-d{background:color-mix(in srgb,var(--d) 24%,var(--surface));color:#9c3f09}.hm-e{background:color-mix(in srgb,var(--e) 20%,var(--surface));color:#a01f3b}
:root[data-theme=dark] .hm{color:var(--ink)}
.hmt td,.hmt th{padding:9px 10px}.hmt td:first-child{font-weight:700}
.spark{display:block}
.mb{display:inline-flex;gap:3px;align-items:flex-end;height:22px}.mb i{display:block;width:7px;border-radius:2px 2px 0 0;min-height:3px}
.medalcell{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;font-weight:800;font-size:12px;color:#fff}
.sdg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:10px}
.sdg{border-radius:14px;padding:11px 12px;color:#fff;position:relative;min-height:92px;display:flex;flex-direction:column;justify-content:space-between}.sdg small{color:#fff;opacity:.92;font-weight:700;font-size:11.5px;line-height:1.25}.sdg b{font-size:24px;font-weight:800;line-height:1}.sdg .g{position:absolute;top:9px;right:11px;font-weight:800;opacity:.75;font-size:13px}.sdg.off{background:var(--surface2)!important;color:var(--ink3)}.sdg.off small{color:var(--ink3)}
.imx{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.imx a{border-radius:12px;padding:9px 11px;display:block;color:var(--ink);font-weight:600;font-size:12.5px;line-height:1.3;border:1px solid var(--line)}.imx a:hover{text-decoration:none;transform:translateY(-1px)}.imx b{display:block;font-size:19px;font-weight:800;margin-top:3px}.imx a.hm-a,.imx a.hm-b,.imx a.hm-c,.imx a.hm-d,.imx a.hm-e{border-color:transparent}
.ent-hero{--ring-bg:rgba(255,255,255,.16);position:relative;border-radius:22px;padding:26px 30px;color:#fff;overflow:hidden;background:radial-gradient(800px 320px at 95% -20%,rgba(143,217,176,.5),transparent 60%),linear-gradient(135deg,#17203a 0%,#22305a 100%);display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:26px;align-items:center}
.ent-hero h1{color:#fff;font-size:clamp(24px,3vw,34px);margin:6px 0 10px}.ent-hero .crumb a{color:#ffd0b8;font-size:13px}.ent-hero .meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.ent-hero .tag{background:rgba(255,255,255,.12);color:#e6ebf8}.ent-hero .muted{color:#aab6d6}
.ent-hero .gauge .num b{color:#fff}.ent-hero .gauge .num span{color:#aab6d6}
.ent-hero .chips2{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.ent-hero .chips2 div{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:9px 14px}.ent-hero .chips2 small{display:block;color:#aab6d6;font-weight:700;font-size:12px}.ent-hero .chips2 b{font-size:19px;font-weight:800}
.ent-hero .acts{display:flex;flex-direction:column;gap:8px;align-items:stretch}.ent-hero .btn{justify-content:center}.ent-hero .btn:not(.pri){background:rgba(255,255,255,.12);color:#fff;box-shadow:none}.ent-hero .btn:not(.pri):hover{background:rgba(255,255,255,.2)}
@media(max-width:1000px){.ent-hero{grid-template-columns:1fr;padding:22px}.ent-hero .acts{flex-direction:row;flex-wrap:wrap}}
.pillar-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}@media(max-width:800px){.pillar-cards{grid-template-columns:1fr}}
.pcard{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:var(--shadow);display:grid;grid-template-columns:auto 1fr;gap:4px 16px;align-items:center}.pcard h3{display:flex;gap:8px;align-items:center}.pcard .vs{font-size:12.5px;color:var(--ink3)}.pcard .vs b{color:var(--ink)}.pcard .top3{grid-column:1/-1;border-top:1px dashed var(--line);margin-top:8px;padding-top:8px;font-size:12.5px;color:var(--ink2)}
@media print{.subnav{display:none}}

/* ---- hero seragam untuk semua halaman ---- */
.hero{position:relative;overflow:hidden;border-radius:22px;padding:26px 32px;margin-bottom:6px;color:#fff;background:radial-gradient(760px 300px at 96% -30%,rgba(143,217,176,.5),transparent 60%),radial-gradient(520px 260px at 0% 120%,rgba(31,143,95,.28),transparent 60%),linear-gradient(135deg,#17203a 0%,#22305a 100%);align-items:center;--ring-bg:rgba(255,255,255,.16)}
.hero h1{color:#fff;margin:8px 0 6px;font-size:clamp(24px,3vw,34px);letter-spacing:-.02em}.hero p{color:#c9d2ea;margin:0;max-width:72ch}.hero .muted{color:#aab6d6}.hero a{color:#ffd0b8}
.hero .phase-tag{background:rgba(255,255,255,.12);color:#ffd0b8;margin:0}
.hero .btn:not(.pri),.hero .seg{background:rgba(255,255,255,.12);color:#fff;box-shadow:none}.hero .seg a,.hero .seg button{color:#c9d2ea}.hero .seg .on{background:var(--accent);color:#fff}.hero .btn:not(.pri):hover{background:rgba(255,255,255,.2)}
.hero .tools-row select,.hero select{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.22)}.hero select option{color:#15294b}
/* nav Feasibility menonjol */
.tn-item.feas{border:1.5px solid var(--accent);color:var(--accent2);background:var(--accent-soft)}.tn-item.feas:hover{background:var(--accent);color:#fff}.tn-item.feas .badge{background:var(--accent);color:#fff;letter-spacing:.04em}.tn-item.feas.on{background:var(--accent);color:#fff}.tn-item.feas.on .badge{background:#fff;color:var(--accent2)}
/* feasibility */
.fscn{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}@media(max-width:900px){.fscn{grid-template-columns:1fr}}
.fcard{position:relative;background:var(--surface);border:2px solid var(--line);border-radius:20px;padding:20px;cursor:pointer;box-shadow:var(--shadow);transition:transform .15s,border-color .15s}.fcard:hover{transform:translateY(-3px)}.fcard.on{border-color:var(--accent);box-shadow:0 14px 30px rgba(143,217,176,.16)}
.fcard .fh{display:flex;justify-content:space-between;align-items:center;gap:8px}.fcard h3{font-size:18px}.fcard p{margin:6px 0 0;color:var(--ink3);font-size:13.5px;min-height:38px}
.fcard .ribbon{position:absolute;top:-11px;right:16px;background:var(--accent);color:#fff;font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:3px 11px;border-radius:99px}
.fbig{font-size:40px;font-weight:800;letter-spacing:-.03em;margin:14px 0 8px}.fbig small{font-size:13px;color:var(--ink3);font-weight:700;letter-spacing:0}
.ftrack{position:relative;height:12px;background:var(--ring-bg);border-radius:99px;margin:6px 0 16px}.ftrack i{position:absolute;left:0;top:0;bottom:0;background:var(--ink3);opacity:.45;border-radius:99px}.ftrack b{position:absolute;top:-4px;width:20px;height:20px;margin-left:-10px;border-radius:50%;background:var(--accent);border:3px solid var(--surface);box-shadow:0 2px 6px rgba(0,0,0,.2)}.ftrack u{position:absolute;top:-6px;bottom:-6px;width:3px;background:var(--navy);border-radius:2px;text-decoration:none}
.fcard.ok .ftrack b{background:var(--a)}
.fstats{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;border-top:1px dashed var(--line);padding-top:12px}.fstats b{display:block;font-size:18px;font-weight:800}.fstats small{color:var(--ink3);font-size:12px;font-weight:700}
/* kerapian umum */
.card{border-radius:18px}.card>h2:first-child,.card>.ch:first-child{padding-bottom:10px;border-bottom:1px solid var(--line);margin-bottom:14px}
.empty{background:var(--surface2);border-radius:14px}
table tbody tr:nth-child(even) td{background:color-mix(in srgb,var(--surface2) 45%,transparent)}tr.link:hover td{background:var(--accent-soft)}
.tabs button{padding:9px 18px}
::selection{background:var(--accent-soft)}

/* ---- hero pastel: gradasi cerah & halus (mode gelap tetap navy) ---- */
:root{--hero-bg:radial-gradient(520px 260px at 96% 8%,rgba(222,214,250,.7),transparent 62%),radial-gradient(560px 300px at 52% 120%,rgba(190,236,214,.85),transparent 60%),radial-gradient(520px 280px at 0% -10%,rgba(214,244,226,.95),transparent 60%),linear-gradient(115deg,#e2f6ea 0%,#f0faf4 30%,#e7f7ef 58%,#e2effb 100%);--hero-ink:#1b2437;--hero-ink2:#4b5568;--hero-mute:#6b7488;--hero-card:rgba(255,255,255,.62);--hero-card-bd:rgba(255,255,255,.9);--hero-eyebrow:rgba(255,255,255,.75);--hero-ring:rgba(27,36,55,.09);--hero-shadow:0 10px 30px rgba(255,150,100,.12),0 2px 6px rgba(27,36,55,.04)}
:root[data-theme=dark]{--hero-bg:radial-gradient(520px 260px at 96% 0%,rgba(143,217,176,.35),transparent 62%),radial-gradient(520px 280px at 0% 120%,rgba(31,143,95,.28),transparent 60%),linear-gradient(135deg,#17203a 0%,#22305a 100%);--hero-ink:#fff;--hero-ink2:#c9d2ea;--hero-mute:#aab6d6;--hero-card:rgba(255,255,255,.08);--hero-card-bd:rgba(255,255,255,.14);--hero-eyebrow:rgba(255,255,255,.1);--hero-ring:rgba(255,255,255,.16);--hero-shadow:none}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--hero-bg:radial-gradient(520px 260px at 96% 0%,rgba(143,217,176,.35),transparent 62%),radial-gradient(520px 280px at 0% 120%,rgba(31,143,95,.28),transparent 60%),linear-gradient(135deg,#17203a 0%,#22305a 100%);--hero-ink:#fff;--hero-ink2:#c9d2ea;--hero-mute:#aab6d6;--hero-card:rgba(255,255,255,.08);--hero-card-bd:rgba(255,255,255,.14);--hero-eyebrow:rgba(255,255,255,.1);--hero-ring:rgba(255,255,255,.16);--hero-shadow:none}}
.hero-band,.hero,.ent-hero{background:var(--hero-bg);color:var(--hero-ink);--ring-bg:var(--hero-ring);box-shadow:var(--hero-shadow);border:1px solid var(--hero-card-bd)}
.hero-band h1,.hero h1,.ent-hero h1{color:var(--hero-ink)}
.hero-band p,.hero p{color:var(--hero-ink2)}
.hero-band .eyebrow,.hero .phase-tag,.ent-hero .eyebrow{background:var(--hero-eyebrow);color:var(--accent2);font-weight:800;border:1px solid var(--hero-card-bd)}
.hero .muted,.ent-hero .muted{color:var(--hero-mute)}.hero a,.ent-hero .crumb a{color:var(--accent2)}
.hero-band .seg,.hero .seg{background:var(--hero-card);border:1px solid var(--hero-card-bd);box-shadow:none;backdrop-filter:blur(6px)}.hero-band .seg a,.hero .seg a,.hero .seg button{color:var(--hero-ink2)}.hero-band .seg .on,.hero .seg .on{background:var(--accent);color:#fff;box-shadow:0 4px 10px rgba(143,217,176,.28)}
.hero-band .gauge .num b,.ent-hero .gauge .num b{color:var(--hero-ink)}.hero-band .gauge .num span,.ent-hero .gauge .num span{color:var(--hero-mute)}
.hstat,.ent-hero .chips2 div{background:var(--hero-card);border:1px solid var(--hero-card-bd);backdrop-filter:blur(8px);box-shadow:0 4px 14px rgba(27,36,55,.04)}
.hstat small,.ent-hero .chips2 small{color:var(--hero-mute)}.hstat b,.ent-hero .chips2 b{color:var(--hero-ink)}.hstat span{color:var(--hero-ink2)}
.hstat .up{color:var(--pos)}.hstat .down{color:var(--neg)}
.hstat small svg{color:var(--accent2)}
.ent-hero .tag{background:var(--hero-card);color:var(--hero-ink2);border:1px solid var(--hero-card-bd)}
.hero .btn:not(.pri),.ent-hero .btn:not(.pri){background:var(--hero-card);color:var(--hero-ink);border:1px solid var(--hero-card-bd);box-shadow:none}.hero .btn:not(.pri):hover,.ent-hero .btn:not(.pri):hover{background:#fff}
:root[data-theme=dark] .hero .btn:not(.pri):hover,:root[data-theme=dark] .ent-hero .btn:not(.pri):hover{background:rgba(255,255,255,.2)}
.hero select,.hero .tools-row select{background:var(--hero-card);color:var(--hero-ink);border-color:var(--hero-card-bd)}
.hero-band{padding:30px 34px;border-radius:24px}.hero-band h1{font-size:clamp(28px,3.4vw,40px)}
.hero-band .gauge svg circle:first-child{stroke:var(--hero-ring)}
.hero-stats{gap:14px}
.hstat{border-radius:18px;padding:15px 18px}.hstat b{font-size:28px}
/* halus: kartu dan latar */
body{background:linear-gradient(180deg,var(--bg) 0,var(--bg) 100%)}
.card{background:var(--surface)}

/* ---- perbaikan kerapian ---- */
.detail-head{position:relative;overflow:hidden;border-radius:22px;padding:24px 30px;margin-bottom:16px;background:var(--hero-bg);border:1px solid var(--hero-card-bd);box-shadow:var(--hero-shadow);align-items:center;--ring-bg:var(--hero-ring)}
.detail-head h1{color:var(--hero-ink)}.detail-head p,.detail-head .muted{color:var(--hero-ink2)}.detail-head a{color:var(--accent2)}.detail-head .phase-tag{background:var(--hero-eyebrow);color:var(--accent2);border:1px solid var(--hero-card-bd)}
.detail-head .btn:not(.pri),.detail-head .card{background:var(--hero-card);border:1px solid var(--hero-card-bd);box-shadow:none}
.detail-head .kpi .v{color:var(--hero-ink)}
.fbig{display:flex;align-items:baseline;gap:8px}.fbig span{font-size:42px;line-height:1}.fbig small{font-size:13px}
.flegend{display:flex;gap:14px;flex-wrap:wrap;font-size:11.5px;color:var(--ink3);font-weight:700;margin:-6px 0 12px}.flegend i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:5px;vertical-align:-1px}.flegend .d1{background:var(--ink3);opacity:.5}.flegend .d2{background:var(--accent)}.flegend .d3{background:var(--navy);border-radius:2px;width:3px;height:12px}
.gantt{min-width:640px}.g-row{display:grid;grid-template-columns:minmax(220px,1.1fr) 2.4fr;gap:16px;align-items:center;padding:7px 0;border-bottom:1px dashed var(--line)}.g-row:last-child{border-bottom:0}
.g-lab{display:flex;gap:9px;align-items:flex-start;min-width:0}.g-lab b{display:block;font-size:13.5px;line-height:1.3}.g-lab small{display:block;color:var(--ink3);font-size:12px;line-height:1.35;margin-top:1px}
.g-track{position:relative;height:30px;background-image:repeating-linear-gradient(90deg,var(--line) 0 1px,transparent 1px calc(100% / var(--cols)));border-radius:6px;display:flex;align-items:center;gap:10px}
.g-track i{display:flex;align-items:center;justify-content:flex-end;height:22px;border-radius:99px;padding:0 10px;font-style:normal;color:#fff;font-weight:800;font-size:11.5px;min-width:44px;box-shadow:0 2px 6px rgba(0,0,0,.12)}.gb-E{background:var(--E)}.gb-S{background:var(--S)}.gb-G{background:var(--G)}
.g-track em{font-style:normal;font-weight:800;font-size:13px;color:var(--ink);white-space:nowrap}
.g-head{border-bottom:1px solid var(--line)}.g-scale{position:relative;height:22px}.g-scale span{position:absolute;transform:translateX(-50%);font-size:11.5px;color:var(--ink3);font-weight:700}.g-scale small{position:absolute;right:0;top:-2px;color:var(--ink3);font-size:11px}
@media(max-width:900px){.g-row{grid-template-columns:1fr}}
.cmp-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-bottom:14px}.cmp-card{display:flex;gap:14px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:var(--shadow);color:var(--ink);font-weight:400}.cmp-card:hover{text-decoration:none;transform:translateY(-2px)}.cmp-card b{font-size:17px;display:block}.cmp-card small{display:block;color:var(--ink3);margin-bottom:6px}
.colgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:14px}.col-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:16px 18px;box-shadow:var(--shadow);display:flex;flex-direction:column;border-left:5px solid var(--line)}.col-card.ok{border-left-color:var(--a)}.col-card.err{border-left-color:var(--e)}.col-card.wait{border-left-color:var(--c)}
.col-h{display:flex;align-items:center;gap:9px}.col-h h3{flex:1;font-size:15px;line-height:1.3}.col-h .dot{width:10px;height:10px;border-radius:50%;background:var(--line);flex:none}.col-card.ok .dot{background:var(--a)}.col-card.err .dot{background:var(--e)}.col-card.wait .dot{background:var(--c)}
.col-card p{margin:8px 0;color:var(--ink2);font-size:13px;line-height:1.45}.kchips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.kchip{display:inline-flex;gap:6px;align-items:baseline;background:var(--surface2);border-radius:99px;padding:3px 11px;font-size:12px;color:var(--ink3);font-weight:700}.kchip b{color:var(--ink);font-size:13.5px}.kchip.warn{background:var(--accent-soft);color:var(--accent2)}.kchip.warn b{color:var(--accent2)}
.col-f{margin-top:auto;display:flex;justify-content:space-between;gap:10px;align-items:flex-end;border-top:1px dashed var(--line);padding-top:10px}
.run-row{display:flex;gap:10px;align-items:center;padding:8px 0;border-bottom:1px dashed var(--line);font-size:13.5px}.run-row:last-of-type{border-bottom:0}.run-row .dot{width:9px;height:9px;border-radius:50%;background:var(--line)}.run-row .dot.ok{background:var(--a)}.run-row .dot.error{background:var(--e)}
.savebar{position:sticky;bottom:14px;display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:12px 16px;box-shadow:0 10px 30px rgba(27,36,55,.14);margin-top:8px;z-index:15}

/* ---- aksen hijau pastel: teks di atas aksen memakai hijau tua ---- */
:root{--on-accent:#12402b}
:root[data-theme=dark]{--on-accent:#0d2a1d}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--on-accent:#0d2a1d}}
.btn.pri,a.btn.pri,.tn-item.on,.tn-item.on:hover,.seg .on,.tabs .on,.chip.on,.lang-sw button[aria-pressed=true],.fcard .ribbon,.hero .seg .on,.hero-band .seg .on,.tn-item.feas:hover,.tn-item.feas.on,.tn-item.feas .badge,.hero .btn.pri,.ent-hero .btn.pri{color:var(--on-accent)}
.tn-item.feas.on .badge{background:#fff;color:var(--accent2)}
.tn-item.on .badge{background:rgba(18,64,43,.14);color:var(--on-accent)}
.btn.pri{background:var(--accent);font-weight:800}.btn.pri:hover,.tn-item.on:hover{background:#7ccfa4}
.tn-item.on{background:var(--accent)}
.tn-item.feas{border-color:#6cc79a;color:#1f7a52;background:#e6f6ed}.tn-item.feas .badge{background:#6cc79a;color:#0d2a1d}.tn-item.feas:hover{background:var(--accent)}
:root[data-theme=dark] .tn-item.feas{color:#9be4bc;background:#1d3a2c}
.hero-band .seg .on,.hero .seg .on{box-shadow:0 4px 10px rgba(79,170,126,.28)}
.notice{background:#fff4d9;color:var(--ink)}:root[data-theme=dark] .notice{background:#3a3220}
.sec-h .n{background:var(--accent-soft);color:#1f7a52}
.pbar>i{background:var(--accent)}.ftrack b{background:#5fc592}.fcard.on{border-color:#6cc79a;box-shadow:0 14px 30px rgba(79,170,126,.18)}.ftrack b{border-color:var(--surface)}
.kpi-ic,.mg-ic{background:var(--navy)}.mg-link:nth-child(3n+2) .mg-ic{background:#6cc79a;color:#0d2a1d}
.icon-circle i{background:#5fc592}
.tn-burger[aria-expanded=true]{background:var(--accent-soft)}
a{color:#1f7a52}:root[data-theme=dark] a{color:#9be4bc}
.hstat small svg,.hero a,.detail-head a,.ent-hero .crumb a{color:#1f7a52}
.hero-band .eyebrow,.hero .phase-tag,.ent-hero .eyebrow,.phase-tag{color:#1f7a52}
.hm-a,.hm-b{color:#0f5e3c}
.search:focus-within{border-color:#6cc79a}

.g-scale small{display:none}

/* ---- running text berita ---- */
.ticker{display:flex;align-items:center;gap:0;border-top:1px solid var(--line);background:linear-gradient(90deg,var(--accent-soft),var(--surface) 28%,var(--surface));height:38px;overflow:hidden}
.tk-badge{flex:none;display:flex;align-items:center;gap:8px;height:100%;padding:0 18px 0 clamp(16px,2.2vw,36px);background:var(--accent);color:var(--on-accent);font-weight:800;font-size:12px;letter-spacing:.08em;text-transform:uppercase;clip-path:polygon(0 0,100% 0,calc(100% - 14px) 100%,0 100%);position:relative;z-index:2}
.tk-badge:hover{text-decoration:none;filter:brightness(.97)}.tk-badge span{letter-spacing:.02em;text-transform:none;font-weight:700}
.tk-badge i{width:8px;height:8px;border-radius:50%;background:#e5484d;box-shadow:0 0 0 0 rgba(229,72,77,.6);animation:tkp 1.6s infinite}@keyframes tkp{70%{box-shadow:0 0 0 7px rgba(229,72,77,0)}100%{box-shadow:0 0 0 0 rgba(229,72,77,0)}}
.tk-view{flex:1;min-width:0;overflow:hidden;position:relative;height:100%;-webkit-mask-image:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 40px),transparent);mask-image:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 40px),transparent)}
.tk-track{display:inline-flex;align-items:center;height:100%;white-space:nowrap;animation:tkmove var(--tk-dur,90s) linear infinite;will-change:transform}
.tk-view:hover .tk-track,.tk-view:focus-within .tk-track{animation-play-state:paused}
@keyframes tkmove{to{transform:translateX(-50%)}}
.tk-item{display:inline-flex;align-items:center;gap:8px;padding:0 26px 0 0;color:var(--ink);font-weight:600;font-size:13.5px}.tk-item:hover{text-decoration:none;color:var(--accent2)}
.tk-item .p{font-size:10.5px;font-weight:800;padding:1px 7px;border-radius:99px}.tk-item .s{color:var(--ink3);font-weight:600;font-size:12px}
.tk-item::after{content:"";width:5px;height:5px;border-radius:50%;background:var(--line);margin-left:18px}
.tk-item .sn{width:8px;height:8px;border-radius:50%;flex:none}.sn.positif{background:var(--pos)}.sn.negatif{background:var(--neg)}.sn.netral{background:var(--ink3);opacity:.5}
.tk-all{flex:none;padding:0 clamp(16px,2.2vw,36px) 0 14px;font-size:12.5px;font-weight:800;color:var(--accent2);white-space:nowrap}
@media(max-width:700px){.tk-badge span,.tk-all{display:none}.ticker{height:34px}}
@media(prefers-reduced-motion:reduce){.tk-track{animation:none}.tk-view{overflow-x:auto}}

/* ---- ikon Iconsax (Bulk) & menu hover ---- */
svg.vx{fill:currentColor!important;stroke:none!important;width:20px;height:20px;flex:none;display:block}
.icon-circle svg.vx{width:21px;height:21px}.kpi-ic svg.vx,.mg-ic svg.vx{width:22px;height:22px}.hstat small svg.vx{width:17px;height:17px}.search svg.vx{width:19px;height:19px;margin-right:8px;color:var(--ink3)}
.tn-menu{gap:2px;overflow:visible}.tn-wrap{display:inline-flex;align-items:center;flex:none}
.tn-item{padding:9px 12px;gap:8px;flex:none}.tn-item .vx{width:20px;height:20px;opacity:.95}.tn-item .chev{width:14px;height:14px;opacity:.55;transition:transform .15s}.tn-item.open .chev{transform:rotate(180deg)}
.tn-item.open{background:var(--surface2);color:var(--ink)}.tn-item.on.open{background:var(--accent)}
.tn-item .lb{white-space:nowrap}
.tn-exp{display:none}
.mega.mini{right:auto;border:1px solid var(--line);border-top:0;border-radius:0 0 22px 22px;padding:20px 22px 22px;box-shadow:0 24px 50px rgba(27,36,55,.16)}
.mega.mini .mg-grid{grid-template-columns:minmax(0,1fr) 290px;max-width:none}
.mega.mini .mg-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 10px}
.mega.mini .mg-link{padding:9px 10px}
.mega.mini .mg-ic{width:38px;height:38px;border-radius:11px}
.mg-ic{background:linear-gradient(135deg,#1f2a44,#34456f)}.mg-link:nth-child(3n+2) .mg-ic{background:linear-gradient(135deg,#6cc79a,#8fd9b0)}.mg-link:hover .mg-ic{transform:scale(1.06)}.mg-ic{transition:transform .15s}
.mg-link:hover b{color:var(--accent2)}
.bigstat{font-size:36px;font-weight:800;letter-spacing:-.02em;line-height:1.1;margin:2px 0 4px}
@media(max-width:900px){
  .tn-wrap{display:flex}.tn-wrap .tn-item{flex:1}.tn-exp{display:grid;place-items:center;width:46px;border:0;background:var(--surface2);border-radius:11px;margin-left:4px;cursor:pointer;color:var(--ink2)}.tn-exp .vx{width:16px;height:16px}
  .mega.mini{width:auto!important;left:auto!important}.mega.mini .mg-grid{grid-template-columns:1fr}.mega.mini .mg-links{grid-template-columns:1fr}
}

/* ---- halaman penjelasan feasibility ---- */
.stepgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}@media(max-width:1000px){.stepgrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.stepgrid{grid-template-columns:1fr}}
.stepcard{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:var(--shadow)}.stepcard h3{margin:12px 0 4px;font-size:16px}.stepcard p{margin:0;color:var(--ink2);font-size:13.5px}.stepno{position:absolute;top:14px;right:16px;font-size:34px;font-weight:800;color:var(--line);letter-spacing:-.04em}
.vgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}@media(max-width:1000px){.vgrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.vgrid{grid-template-columns:1fr}}
.vcard{background:var(--surface);border:1px solid var(--line);border-top:5px solid var(--vc);border-radius:16px;padding:16px 18px;box-shadow:var(--shadow)}.vcard h3{display:flex;gap:8px;align-items:center;font-size:16px}.vcard p{margin:6px 0 0;color:var(--ink2);font-size:13.5px}.vdot{width:10px;height:10px;border-radius:50%;background:var(--vc);flex:none}
.exgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}@media(max-width:900px){.exgrid{grid-template-columns:1fr}}
.excard{display:block;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:var(--shadow);color:var(--ink);font-weight:400;transition:transform .15s,box-shadow .15s}.excard:hover{text-decoration:none;transform:translateY(-3px);box-shadow:0 14px 30px rgba(27,36,55,.1)}
.exh{display:flex;gap:16px;align-items:center}.exh h3{font-size:17px;margin-bottom:6px}.exring{display:grid;justify-items:center;gap:2px}.exring small{font-size:11px;color:var(--ink3);font-weight:700}
.exstats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:16px 0 12px;border-top:1px dashed var(--line);padding-top:14px}.exstats small{display:block;color:var(--ink3);font-size:12px;font-weight:700}.exstats b{font-size:17px;font-weight:800}
.exfoot{display:flex;justify-content:space-between;gap:10px;font-size:12.5px;color:var(--ink3)}.exgo{color:var(--accent2);font-weight:800}
.excard.own{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;background:linear-gradient(120deg,var(--accent-soft),var(--surface))}

/* ---- grafik: gradasi & kerapian ---- */
.pbar{height:9px;background:var(--ring-bg,#ebe8e1)}.pbar>i{background:linear-gradient(90deg,#b9ecd0,#5fc592)}
.hbar .bg{height:12px;background:var(--surface2);box-shadow:inset 0 1px 2px rgba(27,36,55,.06)}.hbar .bg i{border-radius:99px;background-image:linear-gradient(90deg,rgba(255,255,255,.35),rgba(255,255,255,0))}
.g-track i{box-shadow:0 3px 8px rgba(27,36,55,.14)}.gb-E{background:linear-gradient(90deg,#6fd3a3,var(--E))}.gb-S{background:linear-gradient(90deg,#c9b8f3,var(--S))}.gb-G{background:linear-gradient(90deg,#93c8ee,var(--G))}
.ftrack i{background:linear-gradient(90deg,#d5dae4,#aab3c6);opacity:1}
.mring b{letter-spacing:-.02em}.gauge svg circle:last-child{filter:drop-shadow(0 4px 6px rgba(27,36,55,.12))}
svg text{font-family:var(--font)}
.card svg[role=img]{overflow:visible}

/* ---- command center & sumber ---- */
.cc-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center}
.cc-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.cc-actions .btn .vx{width:18px;height:18px}
.cc-real{display:flex;gap:16px;align-items:center;background:var(--hero-card);border:1px solid var(--hero-card-bd);border-radius:20px;padding:16px 22px;backdrop-filter:blur(8px)}.cc-real small{display:block;color:var(--hero-mute);font-weight:700}.cc-real b{font-size:34px;font-weight:800;letter-spacing:-.03em;line-height:1.1;display:block}.cc-real span{display:block;font-size:12.5px;color:var(--hero-ink2)}.cc-real a{font-size:12.5px;font-weight:800}
@media(max-width:900px){.cc-hero{grid-template-columns:1fr}}
.cc-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:16px 0}@media(max-width:1100px){.cc-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.cc-stats{grid-template-columns:1fr}}
.cc-stat{display:flex;gap:14px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:var(--shadow);color:var(--ink);font-weight:400}.cc-stat:hover{text-decoration:none;transform:translateY(-2px)}.cc-stat small{display:block;color:var(--ink3);font-weight:700;font-size:12.5px}.cc-stat b{display:block;font-size:24px;font-weight:800;letter-spacing:-.02em;line-height:1.15}.cc-stat span:not(.mg-ic){font-size:12.5px;color:var(--ink3)}
.cc-main{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(300px,1fr);gap:16px}@media(max-width:1100px){.cc-main{grid-template-columns:1fr}}
.cc-side{display:grid;gap:16px;align-content:start}
.trow{display:grid;grid-template-columns:22px minmax(0,1fr) auto 46px;gap:10px;align-items:center;padding:8px 0;border-bottom:1px dashed var(--line);color:var(--ink);font-weight:400}.trow:last-child{border-bottom:0}.trow:hover{text-decoration:none;background:var(--accent-soft);border-radius:10px}.trow .rk{color:var(--ink3);font-weight:800;text-align:center}.trow b{display:block;font-size:14px}.trow small{color:var(--ink3);font-size:12px}.trow .ts{font-weight:800;text-align:right}
.pilrow{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;text-align:center}.pilcol .duo{display:flex;justify-content:center;gap:6px;margin:8px 0 4px}.pilcol small{color:var(--ink3);font-weight:700}
.stackbar{display:flex;height:16px;border-radius:99px;overflow:hidden;background:var(--surface2)}.stackbar i{display:block;height:100%}
.legrow{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13.5px}.legrow i{width:10px;height:10px;border-radius:50%;flex:none}.legrow span{flex:1}
.aseanrow{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:9px 0;border-bottom:1px dashed var(--line)}.aseanrow b{display:block;font-size:13.5px}.aseanrow .ar{text-align:right}.aseanrow .ar b{font-size:18px;margin-bottom:2px}
.quake{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:baseline;padding:6px 0;font-size:13px}.quake small{color:var(--ink3)}
.qa{display:grid;gap:6px}.qa a{display:flex;gap:10px;align-items:center;padding:9px 12px;border-radius:12px;background:var(--surface2);color:var(--ink);font-weight:700;font-size:13.5px}.qa a:hover{background:var(--accent-soft);text-decoration:none}.qa .vx{width:20px;height:20px;color:var(--accent2)}
.srcgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}.srcgrid.compact{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}
.src{background:var(--surface);border:1px solid var(--line);border-left:5px solid var(--line);border-radius:16px;padding:14px 16px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:4px}.src.ok{border-left-color:var(--a)}.src.err{border-left-color:var(--e)}.src.wait{border-left-color:var(--c)}.src.off{border-left-color:var(--ink3)}.src.sam{border-left-color:#d9a21d;background:linear-gradient(120deg,#fff9e6,var(--surface))}
.src-h{display:flex;gap:8px;align-items:center}.src-h h3{flex:1;font-size:14.5px;line-height:1.3}.src-h .dot{width:9px;height:9px;border-radius:50%;background:var(--line);flex:none}.src.ok .dot{background:var(--a)}.src.err .dot{background:var(--e)}.src.wait .dot{background:var(--c)}.src.sam .dot{background:#d9a21d}
.kind{font-size:10.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:2px 8px;border-radius:99px;background:var(--surface2);color:var(--ink3)}.kind.k-api{background:#e6f1fb;color:#2a6fa3}.kind.k-rss{background:#fdeedd;color:#b3611a}.kind.k-ai{background:#ece6f8;color:#6a4fb0}.kind.k-manual{background:#e6f6ed;color:#1f7a52}.kind.k-sample{background:#fff1c9;color:#8a6208}
.src-p{font-size:12.5px;color:var(--ink2);font-weight:600}.src p{margin:2px 0;font-size:13px;color:var(--ink2);line-height:1.4}.src-f{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:var(--ink3);margin-top:auto;padding-top:6px;border-top:1px dashed var(--line)}.src-f a{font-weight:800;white-space:nowrap}
.switch{position:relative;display:inline-block;width:42px;height:24px}.switch input{opacity:0;width:0;height:0}.switch i{position:absolute;inset:0;background:var(--line);border-radius:99px;cursor:pointer;transition:.2s}.switch i:before{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;background:#fff;border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:.2s}.switch input:checked+i{background:#5fc592}.switch input:checked+i:before{transform:translateX(18px)}.switch input:focus-visible+i{outline:2px solid var(--navy);outline-offset:2px}
.cc-map{display:flex;flex-direction:column}.cc-map #hmap{flex:1;min-height:430px;height:auto!important}
