/* PB+ light/dark mode. Tema terang memakai desain portal yang sudah ada. */
.theme-toggle{flex-shrink:0;min-height:38px;border:1px solid #d8e0ec;border-radius:999px;padding:10px 16px;background:#fff;color:#183a60;box-shadow:0 4px 24px #10274724;font:700 12px/1.4 Arial,sans-serif;cursor:pointer}
.theme-toggle:focus-visible{outline:3px solid #e6a049;outline-offset:3px}
.theme-toolbar{display:flex;justify-content:flex-end;width:100%;margin-bottom:16px}
.admin-top{flex-wrap:wrap;gap:14px}.admin-top>.theme-toggle{margin-left:auto}
.topbar:has(.theme-toggle){height:auto;min-height:86px;padding-top:14px;padding-bottom:14px}
.topbar nav{flex-wrap:wrap}
.login-form>.theme-toggle{align-self:flex-end;margin-bottom:16px}
@media(max-width:1100px){.topbar:has(.theme-toggle){flex-wrap:wrap}.topbar:has(.theme-toggle) nav{width:100%;justify-content:flex-start;gap:16px}}
:root[data-theme=dark]{--ink:#e8edf7;--muted:#a6b3c8;--line:#314059;--bg:#101827;--white:#182336;--dark:#0b1220;--red:#fb8792;--red2:#ff9aa4;--pb-navy:#d1e3ff;--pb-border:#34445d}
html[data-theme=dark] body{background:#101827;color:#e8edf7}
html[data-theme=dark] :is(.topbar,.service-card,.panel,.stat-box,.search,.login-shell,.docs-card,.docs-empty,.about-mark,.about-cta,.float-tag){background:#182336;border-color:#34445d;color:#e8edf7}
html[data-theme=dark] :is(.services-section,.admin-body,.login-body){background:#101827}
html[data-theme=dark] :is(.topbar nav,.brand span,.hero-copy>p,.hero-meta,.section-heading p,.about p,.service-content p,.login-form>p,.back-home,.stat-box>span,.stat-box small,.panel-head p,.row-info small,.admin-user small,.docs-heading p,.docs-card p,.docs-card small,.docs-subtle,.docs-note,.docs-empty,.password-help,.muted,.field-help,.access-help,.access-panel>p){color:#adbbcf}
html[data-theme=dark] :is(.brand strong,.hero-meta b,.service-link,.login-form h2,.admin-top h1,.panel-head h3,.stat-box strong,.row-info b,.docs-heading h1,.docs-card h2,.footer-brand){color:#e8edf7}
html[data-theme=dark] :is(.login-form label,.service-form label,.password-form label){color:#d9e3f3}
html[data-theme=dark] :is(input:not([type=hidden]),textarea,select){background:#111b2b;color:#edf3ff;border-color:#43536e;color-scheme:dark}
html[data-theme=dark] input::placeholder,html[data-theme=dark] textarea::placeholder{color:#99a9c0}
html[data-theme=dark] input:focus,html[data-theme=dark] textarea:focus,html[data-theme=dark] select:focus{border-color:#ff9aa4;outline-color:#ff9aa4}
html[data-theme=dark] :is(.row-actions a,.row-actions button,.password-toggle,.docs-btn.secondary){background:#283b57;border-color:#49607e;color:#dceaff!important}
html[data-theme=dark] :is(.service-row,.service-link,footer,.login-shell,.topbar){border-color:#34445d}
html[data-theme=dark] :is(.hero h1 em,.about h2 em,.section-heading h2 em,.eyebrow.dark,.docs-kicker,.row-info>a,footer>a){color:#ff9aa4}
html[data-theme=dark] .category,html[data-theme=dark] .service-badges .category{background:#2c3f5c;color:#d3e5ff}
html[data-theme=dark] :is(.docs-pill,.docs-icon,.form-icon,.panel-icon,.row-thumb){background:#432a3b;color:#ffbbc2;border-color:#785064}
html[data-theme=dark] .service-badges .status-running,html[data-theme=dark] .service-row .status-running{background:#173c32!important;color:#a1edc5!important;border-color:#386956!important}
html[data-theme=dark] .service-badges .status-development,html[data-theme=dark] .service-row .status-development{background:#49371f!important;color:#ffdb9c!important;border-color:#80623a!important}
html[data-theme=dark] .notice{background:#173c32;color:#b2f1d0;border-color:#386956}
html[data-theme=dark] .alert{background:#442535;color:#ffc1ca;border-color:#805063}
html[data-theme=dark] .art-glow{background:radial-gradient(circle,#442738,transparent 72%)}
html[data-theme=dark] .art-card-front{background:linear-gradient(145deg,#27374e,#182336);border-color:#43536e}
html[data-theme=dark] .art-card-front>span{color:#aebbd0}
html[data-theme=dark] .art-card-front img,html[data-theme=dark] .about-mark img{background:white;border-radius:8px}
html[data-theme=dark] .theme-toggle{background:#243650;color:#e2edff;border-color:#526684}
html[data-theme=dark] .docs-pdf{background:#172235;border-color:#43536e}
html[data-theme=dark] body.maintenance-body{background:linear-gradient(145deg,#101827,#1d263a)!important;color:#e8edf7!important}
html[data-theme=dark] .maintenance-body .maintenance-card{background:#182336!important;border-color:#43536e!important}
html[data-theme=dark] .maintenance-body :is(h1,h2,.maintenance-brand-text strong){color:#e8edf7!important}
html[data-theme=dark] .maintenance-body :is(p,small,.maintenance-brand-text span){color:#adbbcf!important}
html[data-theme=dark] .maintenance-body .maintenance-icon{background:#2c3f5c!important;color:#d3e5ff!important}
html[data-theme=dark] .access-lock-badge{background:#33415c;color:#dceaff}
html[data-theme=dark] .access-summary{background:#111b2b;border-color:#43536e;color:#adbbcf}
html[data-theme=dark] .access-check{color:#d9e3f3}
html[data-theme=dark] .access-panel .access-cancel,html[data-theme=dark] .cancel-btn{color:#c2d1e6}
html[data-theme=dark] .docs-thumb{background:#432a3b!important;color:#ffbbc2}
@media(max-width:650px){.theme-toggle{padding:9px 13px;font-size:11px}.topbar nav .theme-toggle{margin-left:auto}}
