/* Batch 1 v3.15.0 — hanya layar web. Muat sesudah stylesheet modul. */
@font-face{font-family:"BS Lemon";src:url("fonts/LemonMilk.woff") format("woff");font-weight:400 900;font-display:swap}
@font-face{font-family:"BS Futura";src:url("fonts/FuturaPTMedium.woff") format("woff");font-weight:400 500;font-display:swap}
@font-face{font-family:"BS Futura";src:url("fonts/FuturaPTDemi.woff") format("woff");font-weight:600 900;font-display:swap}
@media screen {
 :root {
  color-scheme:light;
  --font-headline:"BS Lemon","Lemon Milk",sans-serif;
  --font-body:"BS Futura","Futura PT",system-ui,sans-serif;--font-sans:var(--font-body);
  --paper:#FFFAF7;--bg:var(--paper);--surface:#FFFFFF;--surface-2:#F5EFEB;--surface-subtle:var(--surface-2);
  --text:#173947;--heading:#003041;--muted:#526875;--border:#D9E2E3;--input:var(--surface);
  --teal:#003041;--teal-soft:#0B5268;--brand:#003041;--brand-deep:#003041;--blue:#0B5268;
  --coral:#E4665C;--peach:#F9B189;--accent:#E4665C;--accent-warm:#F9B189;--rose:#CC7793;
  --soft:#EAF2F2;--row-alt:#F7F9F8;--ring-rest:#E7EFED;--hero-ink:#FFF7F2;
  --good:#176A59;--success:var(--good);--success-bg:#E1F2EB;
  --warning:#795021;--warning-bg:#FFF0DD;--danger:#9E3548;--danger-bg:#FCE7EA;
  --focus:#B74339;--shadow:0 8px 26px rgba(0,48,65,.055);--radius:18px;
  --bs-series-51:#0B5268;--bs-series-52:#C95147;--bs-series-53:#A26A3A;--bs-type-51-start:#003041;--bs-type-51-end:#0B5268;--bs-type-52-start:#E4665C;--bs-type-52-end:#CC7793;--bs-type-53-start:#F9B189;--bs-type-53-end:#E4665C;
  --bs-action:#003041;--bs-action-ink:#FFFFFF;--bs-focus:#B74339;
 }
 html[data-theme="dark"] {
  color-scheme:dark;
  --paper:#003041;--bg:var(--paper);--surface:#0B4050;--surface-2:#124B5A;--surface-subtle:var(--surface-2);
  --text:#F6F4EF;--heading:#FFF7F2;--muted:#BDCFD2;--border:#3A6B77;--input:#0A3847;
  --teal:#003041;--teal-soft:#81C9C5;--brand:#F9B189;--blue:#BDCFD2;--accent:#F9B189;
  --soft:#175361;--row-alt:#104655;--ring-rest:#255965;
  --good:#9EE0C6;--success:var(--good);--success-bg:#145347;
  --warning:#FFD2A2;--warning-bg:#5B402A;--danger:#FFB4BD;--danger-bg:#5A2B3C;
  --focus:#F9B189;--shadow:0 8px 26px rgba(0,16,23,.13);
  --bs-series-51:#81C9C5;--bs-series-52:#FF9C92;--bs-series-53:#F9B189;--bs-type-51-start:#81C9C5;--bs-type-51-end:#438E9F;
  --bs-action:#F9B189;--bs-action-ink:#003041;--bs-focus:#F9B189;
 }
 *{box-sizing:border-box}
 html{background:var(--paper)}
 body{color:var(--text);background:var(--paper);font-family:var(--font-body);font-size:17px;line-height:1.5;font-weight:400}
 button,input,select,textarea{font-family:var(--font-body);font-size:inherit}
 h1{font-family:var(--font-headline);font-weight:400;font-synthesis:none;color:var(--heading);font-size:clamp(25px,3.1vw,40px);line-height:1.3;letter-spacing:.015em;overflow-wrap:anywhere}
 h2,h3,.panel-header h2,.card h2{font-family:var(--font-body);font-weight:600;color:var(--heading);line-height:1.35}
 h2{font-size:23px}h3{font-size:19px}
 p,small,label,dt,dd{overflow-wrap:anywhere}
 .eyebrow{color:var(--muted);font-size:13px;letter-spacing:.11em}
 .page-shell,.header-inner{width:min(1320px,calc(100% - 48px));margin-inline:auto}
 .page-shell{padding:30px 0 48px}
 .site-header,.top{background:var(--surface);border-bottom:1px solid var(--border);box-shadow:none}
 .header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 0}
 .brand{display:flex;align-items:center;gap:12px;text-decoration:none;min-width:0;color:var(--heading)}
 .brand-mark,.brand .mark{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border-radius:15px;background:linear-gradient(135deg,#E4665C,#F9B189);color:#003041;font-family:var(--font-headline);font-size:17px;font-weight:400;box-shadow:0 4px 12px rgba(0,48,65,.1);letter-spacing:0}
 .brand-copy strong,.brand strong{font-family:var(--font-body);font-size:19px;font-weight:600}
 .brand-copy span,.brand small{display:block;color:var(--muted);font-size:14px}
 .header-actions,.bs-main-nav{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
 .nav-link{padding:10px 13px;border-radius:11px;color:var(--muted);font-size:16px;text-decoration:none;font-weight:500;white-space:nowrap}
 .nav-link:hover,.nav-link.active,.bs-switcher a:hover{color:var(--heading);background:var(--soft)}
 .nav-link.active{font-weight:600;box-shadow:inset 0 -2px var(--coral)}
 .hero{grid-template-columns:minmax(0,1fr) minmax(150px,.4fr);align-items:center;gap:24px}
 .bs-heading{display:flex;align-items:center;gap:17px;min-width:0}
 .bs-heading>div{min-width:0}
 .bs-heading h1{margin-bottom:0}
 .bs-menu-icon{display:block;flex:0 0 64px;width:64px;height:64px;object-fit:contain}
 .bs-icon-dark{display:none}
 html[data-theme="dark"] .bs-icon-dark{display:block}
 html[data-theme="dark"] .bs-icon-light{display:none}
 .hero-copy,.lead{color:var(--muted);font-size:17px}
 .updated{max-width:360px;margin:0;font-size:15px;white-space:normal;line-height:1.5}
 button,.button,.btn{min-height:44px;align-items:center;justify-content:center;border-radius:11px;font-weight:600;font-size:16px;line-height:1.35}
 button:not(.theme-option):not(.theme-toggle):not(.unit-bar-column):not(.release-unit-button):not(.secondary):not(.coral):not(.danger):not(.report-dialog__close):not([role="tab"]),.button:not(.secondary):not(.coral),.btn:not(.secondary):not(.danger){background:var(--bs-action);color:var(--bs-action-ink);box-shadow:none}
 button.coral,.button.coral{background:linear-gradient(110deg,#E4665C,#F9B189);color:#003041}
 button.secondary,.button.secondary,.btn.secondary{color:var(--heading);background:var(--surface-2);border:1px solid var(--border);box-shadow:none}
 button.danger,.btn.danger{background:var(--danger-bg);color:var(--danger);border:1px solid var(--danger)}
 button[aria-disabled="true"],.bs-pending{cursor:progress;opacity:.7}
 button:hover,.button:hover,.btn:hover{filter:none}
 button:disabled{cursor:wait}
 .theme-control{position:relative;z-index:40}
 .theme-toggle{display:inline-flex;gap:7px;min-height:44px;padding:9px 12px;background:var(--surface-2);border:1px solid var(--border);color:var(--heading);font-size:14px;white-space:nowrap}
 .theme-menu{position:absolute;top:calc(100% + 8px);right:0;width:228px;max-width:calc(100vw - 32px);padding:8px;border:1px solid var(--border);border-radius:13px;background:var(--surface);box-shadow:var(--shadow);color:var(--text)}
 .theme-menu__label{color:var(--muted);font-size:13px}
 .theme-option{display:grid;grid-template-columns:23px 1fr 15px;min-height:44px;width:100%;padding:8px;background:transparent;color:var(--text);border:1px solid transparent;font-size:16px;text-align:left}
 .theme-option.is-active,.theme-option:hover{background:var(--soft);border-color:var(--border)}
 .theme-option.is-active::after{color:var(--good)}
 .filters{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:20px}
 .filters .bs-form-legend{grid-column:1/-1;margin:0}
 .filters.compact{grid-template-columns:minmax(220px,320px) auto auto;justify-content:start}
 label.field,label{font-size:15px;line-height:1.4;color:var(--muted);font-weight:500}
 input,select,textarea{min-width:0;max-width:100%;min-height:44px;background:var(--input);color:var(--text);border-color:var(--border);font-size:17px}
 input[type="checkbox"],input[type="radio"]{min-height:0;width:auto}
 .form-grid>*,.filters>*,.grid>*,.kpi-grid>*,.release-one-split>*{min-width:0}
 .panel,.card{background:var(--surface);border-color:var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}
 .panel-header{padding:20px 22px 0}
 .panel-body{padding:18px 22px 22px}
 .panel-subtitle,.kpi-note{color:var(--muted);font-size:15px;line-height:1.5}
 .kpi-grid{align-items:stretch;gap:16px}
 .kpi{min-height:148px;overflow:visible;padding:20px;display:flex;flex-direction:column}
 .kpi::after{display:none}
 .kpi-label{font-size:14px;letter-spacing:.045em;margin-bottom:10px;color:var(--muted)}
 .kpi-value,.metric strong{font-family:var(--font-body);font-size:30px;font-weight:600;letter-spacing:-.015em;font-variant-numeric:tabular-nums;line-height:1.28;white-space:normal;overflow-wrap:anywhere;max-width:100%;position:relative}
 .kpi-note{margin-top:auto;padding-top:9px}
 .metric{overflow:visible}
 .mini-stat strong,.invoice-amount strong,.budget-dialog__figures strong{font-size:22px;font-family:var(--font-body);font-weight:600;overflow-wrap:anywhere}
 .mini-stat small,.ppn-section-head small{font-size:14px}
 .invoice-identity>*,.mini-stat{min-width:0}
 .bs-rekon-heading{margin-bottom:10px}.bs-rekon-heading .bs-menu-icon{width:50px;height:50px;flex-basis:50px}
 .metric strong{color:var(--heading)}
 .metric small{color:var(--muted);font-size:15px}
 .grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
 .grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
 .grid.two{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
 table{font-size:16px}
 th{font-size:13px;font-weight:600;letter-spacing:.025em;background:var(--surface-2);color:var(--heading);white-space:normal}
 html[data-theme="dark"] th{background:var(--surface-2);color:var(--heading)}
 th,td{padding:13px 12px;border-color:var(--border)}
 tbody tr:nth-child(even){background:var(--row-alt)}
 tbody tr:hover{background:var(--soft)}
 td.number,.right{font-variant-numeric:tabular-nums;font-weight:600}
 td .muted,.chip{font-size:14px}
 .chip{white-space:normal}
 .chip.ok,.status-good{background:var(--success-bg);color:var(--good)}
 .chip.warn{background:var(--warning-bg);color:var(--warning)}
 .chip.danger{background:var(--danger-bg);color:var(--danger)}
 .positive{color:var(--good)}.negative{color:var(--danger)}
 .chart-label,.chart-point-label{fill:var(--muted)}
 .chart-threshold-label{fill:var(--good)}
 html[data-theme="dark"] .chart-line.type-51{stroke:var(--teal-soft)}
 .section-tabs,.operator-tabs,.gup-type-tabs{gap:8px;flex-wrap:wrap}
 .section-tabs button,.gup-type-tabs button{font-size:16px;min-height:44px;color:var(--muted);background:var(--surface-2);border:1px solid var(--border)}
 .section-tabs button.active,.gup-type-tabs button.active{color:var(--heading);background:var(--soft);border-color:var(--coral)}
 .report-dialog,.bs-info-dialog{color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:20px;max-width:min(650px,calc(100vw - 32px));max-height:calc(100dvh - 48px);padding:24px;overflow:auto}
 dialog::backdrop{background:rgba(0,25,34,.55)}
 .bs-info-dialog__head{display:flex;justify-content:space-between;align-items:start;gap:16px;margin-bottom:16px}
 .bs-info-dialog__head button{flex-shrink:0}
 .bs-info-dialog h2{margin:0}
 .bs-info-dialog dl{display:grid;gap:12px}
 .bs-info-dialog dt{font-size:14px;color:var(--muted)}
 .bs-info-dialog dd{margin:2px 0 0;font-weight:600}
 .data-scope{display:flex;flex-direction:column;gap:13px;align-items:stretch;padding:18px 20px;background:var(--surface);box-shadow:none}
 .data-scope__heading{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
 .data-scope__overline{font-size:12px;color:var(--muted)}
 .data-scope__heading strong{font-size:18px;font-weight:600}
 .data-scope__details{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
 .data-scope__details dt{font-size:13px;letter-spacing:0;text-transform:none}
 .data-scope__details dd{font-size:16px;font-weight:600;white-space:normal;text-overflow:clip;overflow:visible}
 .data-scope__note{font-size:14px;margin:0}
 .data-scope__badge{background:var(--soft);color:var(--heading);font-size:14px;font-weight:600}
 .data-scope[data-status="BELUM_TERSEDIA"] .data-scope__badge{background:var(--surface-2);color:var(--muted)}
 .bs-context-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
 .bs-info-button{font-size:14px;min-height:36px;padding:6px 11px}
 .loading{opacity:1;pointer-events:auto}
 .bs-loading-status{display:flex;gap:10px;align-items:center;padding:12px 16px;margin:0 0 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--muted)}
 .bs-loading-status::before{content:"";width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--coral);border-radius:50%;animation:bs-spin .8s linear infinite;flex-shrink:0}
 @keyframes bs-spin{to{transform:rotate(360deg)}}
 [data-bs-state="loading"] .kpi-value{color:transparent;background:var(--soft);border-radius:6px;min-height:36px;max-width:90%;pointer-events:none}
 [data-bs-state="error"] .budget-analytics,[data-bs-state="error"] .release-attention-grid,[data-bs-state="error"] .release-detail-panel,[data-bs-state="error"] .release-coverage{display:none}
 .dashboard-error{background:var(--danger-bg);color:var(--danger);border-color:var(--border);font-size:16px}
 .bs-form-legend,.bs-field-helper{font-size:14px;color:var(--muted);margin:4px 0 12px}
 .bs-required{color:var(--danger);font-weight:600;margin-left:3px}
 .bs-field-error{display:block;color:var(--danger);font-size:14px;line-height:1.4;margin-top:5px}
 [aria-invalid="true"]{border-color:var(--danger)!important;box-shadow:0 0 0 1px var(--danger)}
 .bs-validation-summary{padding:13px 16px;border:1px solid var(--danger);border-radius:12px;background:var(--danger-bg);color:var(--danger);margin-bottom:14px;font-size:16px;grid-column:1/-1}
 .bs-site-footer{padding:23px 24px;border-top:1px solid var(--border);text-align:center;color:var(--muted);font-size:14px}
 .bs-site-footer span{margin:0 7px}
 .bs-switcher{display:flex;flex-wrap:wrap;gap:7px;padding:10px 28px;background:var(--surface);border-bottom:1px solid var(--border);font-size:15px}
 .bs-switcher a{padding:6px 10px;border-radius:8px;text-decoration:none;color:var(--muted)}
 .bs-switcher a[aria-current]{color:var(--heading);background:var(--soft);font-weight:600}
 .top{flex-wrap:wrap}
 .top-actions{flex-wrap:wrap}
 .shell{grid-template-columns:225px minmax(0,1fr)}
 .shell>main{min-width:0;padding:28px;max-width:1450px}
 aside{background:var(--surface);border-color:var(--border)}
 .menu{font-size:17px}
 .profile{background:var(--soft);color:var(--heading)}
 .login-hero{background:linear-gradient(145deg,#003041,#0B5268);color:#FFF7F2}
 html[data-theme="dark"] .login-hero{background:linear-gradient(145deg,#003041,#0B4050)}
 .login-hero h1{color:#FFF7F2;font-size:clamp(32px,4vw,60px);letter-spacing:0;line-height:1.25}
 .login-hero h1 em{color:#F9B189}
 .login-panel{background:var(--paper)}
 .login-card__heading h2{font-size:28px}
 .login-form label,.login-card__foot{font-size:16px}
 .login-page .login-brand{margin-bottom:24px}
 .login-hero__lead{font-size:18px}
 .skip-link:focus-visible{transform:none}
 a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role="tab"]:focus-visible{outline:3px solid var(--bs-focus);outline-offset:3px;box-shadow:none}
 [hidden]{display:none!important}
 /* Landing — empat menu; akses input operator tetap terpisah. */
 .bs-landing .page-shell{max-width:1120px}
 .bs-welcome{padding:15px 0 26px;max-width:820px}
 .bs-welcome h1{font-size:clamp(28px,4vw,47px);line-height:1.32;margin:10px 0 15px}
 .bs-welcome p{font-size:19px;color:var(--muted);margin:0}
 .bs-launch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
 .bs-launch-card{display:flex;flex-direction:column;align-items:start;position:relative;min-height:252px;padding:26px;border:1px solid var(--border);border-top:4px solid var(--bs-card-accent);border-radius:19px;background:var(--surface);text-decoration:none;color:var(--text);box-shadow:var(--shadow);transition:transform .16s ease,border-color .16s ease}
 .bs-launch-card:hover{transform:translateY(-3px);border-color:var(--bs-card-accent)}
 .bs-launch-card h2{font-family:var(--font-headline);font-weight:400;font-size:24px;margin:17px 0 8px}
 .bs-launch-card p{color:var(--muted);margin:0 0 18px;font-size:18px;max-width:430px}
 .bs-card-top{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%}
 .bs-card-top .bs-menu-icon{width:72px;height:72px;flex-basis:72px}
 .bs-access-badge{padding:5px 11px;border:1px solid var(--border);border-radius:99px;color:var(--muted);background:var(--surface-2);font-size:14px;font-weight:600}
 .bs-card-link{margin-top:auto;color:var(--heading);font-weight:600;font-size:17px;display:flex;justify-content:space-between;width:100%}
 @media(max-width:1120px){.header-inner{align-items:start}.header-actions{justify-content:end;max-width:65%}.bs-main-nav{justify-content:end}.filters{grid-template-columns:repeat(3,minmax(0,1fr))}.kpi-grid,.grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}}
 @media(max-width:800px){.header-inner{flex-direction:column;gap:14px}.header-actions{max-width:none;width:100%;justify-content:space-between}.bs-main-nav{justify-content:start}.hero{grid-template-columns:1fr;gap:12px}.updated{text-align:left;max-width:none}.filters,.filters.compact,.filters.kas-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.shell{grid-template-columns:1fr}.shell>aside{padding:14px;border-bottom:1px solid var(--border);border-right:0}.shell>aside .profile{margin-bottom:8px}.shell>aside .menu{display:inline-block;margin:3px}.shell>main{padding:22px}.grid.two{grid-template-columns:1fr}.login-shell{grid-template-columns:1fr}.login-hero{min-height:0;padding:30px}.login-hero__lead{margin:16px 0}.login-hero__footer{display:none}.login-panel{padding:32px 24px}.bs-switcher{padding-inline:20px}}
 @media(max-width:560px){.page-shell,.header-inner{width:calc(100% - 32px)}.page-shell{padding-top:24px}.brand-copy strong{font-size:18px}.header-actions{gap:12px}.nav-link{font-size:15px;padding:8px 9px}.theme-toggle{font-size:14px}.hero .bs-heading{gap:12px}.bs-heading .bs-menu-icon{width:49px;height:49px;flex-basis:49px}.filters,.filters.compact,.filters.kas-filters{grid-template-columns:1fr}.filters .bs-form-legend{grid-column:1}.kpi-grid,.grid.four,.grid.three{grid-template-columns:1fr}.kpi{min-height:138px}.kpi-value,.metric strong{font-size:31px}.panel-body,.panel-header{padding-inline:17px}.data-scope__details{grid-template-columns:1fr;gap:12px}.bs-launch-grid{grid-template-columns:1fr}.bs-launch-card{min-height:245px;padding:22px}.bs-launch-card h2{font-size:23px}.bs-launch-card p{font-size:17px}.bs-welcome p{font-size:18px}.bs-info-dialog{padding:20px}.report-dialog__grid{grid-template-columns:1fr}.section-tabs{display:flex}.section-tabs button{flex:1 1 110px}.table-wrap{max-width:100%;overscroll-behavior-x:contain}.bs-site-footer{font-size:13px}.bs-site-footer span{display:none}.bs-site-footer{line-height:1.6}}
 @media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.bs-launch-card:hover{transform:none}}
}
