:root{--ews-primary:#1B5E8C;--ews-primary-light:#2D7AB8;--ews-primary-dark:#0F3D5C;--ews-accent:#F5A623;--ews-accent-light:#FFD166;--ews-bg-body:#1D2045;--ews-bg-card:#252B5B;--ews-bg-card-alt:#161A3D;--ews-bg-navbar:#213271;--ews-bg-tab:#1D2045;--ews-text-primary:#FFFFFF;--ews-text-secondary:#A0B4D0;--ews-text-muted:#718EBF;--ews-text-tab:#A7AAC1;--ews-border:rgba(255, 255, 255, 0.08);--ews-border-active:rgba(255, 255, 255, 0.15);--ews-border-card:#293067;--ews-rain-none:#475569;--ews-rain-ringan:#22C55E;--ews-rain-sedang:#F59E0B;--ews-rain-lebat:#EF4444;--ews-rain-ekstrem:#9333EA;--ct-primary:var(--ews-primary);--ct-body-bg:var(--ews-bg-body);--ct-body-color:var(--ews-text-primary)}body{background-color:var(--ews-bg-body);color:var(--ews-text-primary);font-family:Poppins,sans-serif}.navbar-custom{background-color:var(--ews-bg-navbar)!important;box-shadow:0 3px 8px rgba(0,0,0,.35)}.card{background-color:var(--ews-bg-card);border:1px solid var(--ews-border-card);border-radius:8px;color:var(--ews-text-primary)}.card-header{background-color:var(--ews-bg-card);border-bottom:1px solid var(--ews-border-card)}.col-left .card,.col-left .card-header{background-color:var(--ews-bg-card)}.col-right .card,.col-right .card-header{background-color:var(--ews-bg-card-alt)}.navtab-bg{background-color:var(--ews-bg-tab);border-radius:8px 8px 0 0}.nav-tabs .nav-link,.navtab-bg .nav-link{background-color:var(--ews-bg-tab);color:var(--ews-text-tab);font-size:.78rem;font-weight:500;border:none;border-radius:0;padding:.55rem .5rem;transition:background .2s,color .2s}.nav-tabs .nav-link:hover{color:var(--ews-text-primary);background-color:rgba(255,255,255,.05)}.nav-tabs .nav-link.active{color:var(--ews-text-primary);background-color:var(--ews-bg-card);border-color:transparent}.nav-link .badge{font-size:.65rem;font-weight:600}#input-search-sidebar,.form-control.bg-transparent{background-color:rgba(255,255,255,.05)!important;border:1px solid var(--ews-border);color:var(--ews-text-primary);border-radius:6px;font-size:.82rem}#input-search-sidebar::-moz-placeholder,.form-control.bg-transparent::-moz-placeholder{color:var(--ews-text-muted)}#input-search-sidebar::placeholder,.form-control.bg-transparent::placeholder{color:var(--ews-text-muted)}#input-search-sidebar:focus,.form-control.bg-transparent:focus{border-color:var(--ews-primary-light);box-shadow:0 0 0 2px rgba(45,122,184,.25);background-color:rgba(255,255,255,.08)!important}#input-tanggal{background-color:rgba(255,255,255,.07);border-color:var(--ews-border);color:var(--ews-text-primary);font-size:.82rem;border-radius:6px}.badge-rain-none{background-color:var(--ews-rain-none)!important;color:#fff!important}.badge-rain-ringan{background-color:var(--ews-rain-ringan)!important;color:#1a2860!important}.badge-rain-sedang{background-color:var(--ews-rain-sedang)!important;color:#1a2860!important}.badge-rain-lebat{background-color:var(--ews-rain-lebat)!important;color:#fff!important}.badge-rain-ekstrem{background-color:var(--ews-rain-ekstrem)!important;color:#fff!important}.badge-siaga-siaga3{background-color:#00c853!important;color:#052e16!important}.badge-siaga-siaga2{background-color:#f6eb05!important;color:#3f2d00!important}.badge-siaga-siaga1{background-color:#ff2626!important;color:#fff!important}.card-station-arr{background:linear-gradient(145deg,rgba(22,26,61,.9),rgba(37,43,91,.9));border:1px solid var(--ews-border);border-radius:8px;padding:10px 12px;margin-bottom:6px;cursor:pointer;transition:border-color .2s,transform .15s,box-shadow .2s;position:relative;overflow:hidden}.card-station-arr::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--ews-rain-none);border-radius:8px 0 0 8px;transition:background .2s}.card-station-arr[data-intensity=ringan]::before{background:var(--ews-rain-ringan)}.card-station-arr[data-intensity=sedang]::before{background:var(--ews-rain-sedang)}.card-station-arr[data-intensity=lebat]::before{background:var(--ews-rain-lebat)}.card-station-arr[data-intensity=ekstrem]::before{background:var(--ews-rain-ekstrem)}.card-station-arr[data-intensity=normal]::before{background:rgba(0,41,254,.85)}.card-station-arr[data-intensity=siaga3]::before{background:rgba(9,254,2,.85)}.card-station-arr[data-intensity=siaga2]::before{background:rgba(253,254,1,.85)}.card-station-arr[data-intensity=siaga1]::before{background:rgba(244,10,7,.85)}.card-station-arr:hover{border-color:var(--ews-border-active);transform:translateX(2px)}.card-station-arr.active{border-color:var(--ews-accent);box-shadow:0 0 0 1px var(--ews-accent),0 4px 12px rgba(245,166,35,.15)}.card-station-arr .station-name{font-size:.82rem;font-weight:600;color:var(--ews-text-primary);line-height:1.3}.card-station-arr .station-meta{font-size:.72rem;color:var(--ews-text-muted)}.card-station-arr .station-total{font-size:1.35rem;font-weight:700;color:var(--ews-accent);line-height:1}.card-station-arr .station-total sup{font-size:.55rem;font-weight:500;color:var(--ews-text-muted)}.card-station-arr .intensity-bar{height:3px;border-radius:2px;background:rgba(255,255,255,.08);margin-top:8px;overflow:hidden}.card-station-arr .intensity-bar-fill{height:100%;border-radius:2px;transition:width .4s}.stat-box{background:rgba(255,255,255,.04);border:1px solid var(--ews-border);border-radius:8px;padding:10px 8px;text-align:center;transition:border-color .2s}.stat-box:hover{border-color:var(--ews-border-active)}.stat-box .stat-value{font-size:1.4rem;font-weight:700;color:var(--ews-accent);line-height:1.2}.stat-box .stat-label{font-size:.65rem;color:var(--ews-text-muted);text-transform:uppercase;letter-spacing:.6px;margin-top:2px}.stat-box .stat-icon{font-size:.9rem;color:var(--ews-text-muted);margin-bottom:4px;display:block}.stat-box--online .stat-value{color:#10b981}.stat-box--offline .stat-value{color:#94a8d0}.stat-box--clickable{display:block;width:100%;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;font:inherit;color:inherit}.stat-box--clickable:hover{border-color:rgba(148,168,208,.45);background:rgba(148,168,208,.12)}.offline-pos-modal__content{background:var(--ews-bg-card,#3f4f8c);color:var(--ews-text-primary);border:1px solid var(--ews-border-card,#5262a0)}.offline-pos-modal__header{border-bottom-color:var(--ews-border);padding:.75rem 1rem}.offline-pos-modal__title{display:flex;align-items:center;gap:8px;font-size:.95rem;font-weight:600;margin:0}.offline-pos-modal__title .material-symbols-outlined{font-size:1.15rem;color:var(--ews-text-muted)}.offline-pos-modal__tipe{padding:1px 8px;border-radius:999px;font-size:.68rem;font-weight:600;color:var(--ews-accent);background:rgba(255,193,77,.12);border:1px solid rgba(255,193,77,.28)}.offline-pos-panel__count{padding:0 7px;border-radius:999px;font-size:.7rem;font-weight:600;background:rgba(148,168,208,.18);color:var(--ews-text-muted)}.offline-pos-modal__body{background:var(--ews-bg-card-alt,#354275)}.offline-pos-modal__footer{border-top-color:var(--ews-border);padding:.65rem 1rem}.offline-pos-table-wrap--modal{max-height:min(60vh,420px);overflow:auto}.offline-pos-table{width:100%;border-collapse:collapse;font-size:.8rem}.offline-pos-table td,.offline-pos-table th{padding:9px 12px;text-align:left;vertical-align:top;border-bottom:1px solid var(--ews-border)}.offline-pos-table th{position:sticky;top:0;z-index:1;background:rgba(30,40,72,.98);color:var(--ews-text-muted);font-weight:600;font-size:.68rem;text-transform:uppercase;letter-spacing:.35px;white-space:nowrap}.offline-pos-table td{color:var(--ews-text-secondary)}.offline-pos-table tr:last-child td{border-bottom:none}.offline-pos-table__name{color:var(--ews-text-primary);font-weight:500;line-height:1.3}.offline-pos-table__tipe{white-space:nowrap;color:var(--ews-accent);font-weight:600}.offline-pos-table__time{white-space:nowrap;color:var(--ews-text-muted)}.offline-pos-empty{text-align:center!important;color:var(--ews-text-muted);padding:28px 12px!important}.genangan-modal__hint{font-size:.72rem;color:var(--ews-text-muted);line-height:1.35}.genangan-table-wrap{max-height:min(65vh,480px)}.genangan-table td,.genangan-table th{white-space:nowrap;font-size:.75rem}.genangan-table__pos{color:var(--ews-text-primary);font-weight:500}.genangan-table__num{font-variant-numeric:tabular-nums}.genangan-table tr.is-active td{background:rgba(0,210,255,.08)}.genangan-apply-btn{font-size:.7rem;padding:.2rem .55rem;white-space:nowrap}.genangan-apply-btn.is-active{pointer-events:none;opacity:.75}.section-header--compact{font-size:.68rem;margin-bottom:6px;padding-bottom:4px}.stat-box--compact{padding:4px 3px;border-radius:6px}.stat-box--compact .stat-icon{font-size:.72rem;margin-bottom:1px}.stat-box--compact .stat-value{font-size:.95rem;line-height:1.05}.stat-box--compact .stat-label{font-size:.55rem;letter-spacing:.35px;margin-top:0}.right-section__tipe-label{display:inline-block;margin-left:4px;padding:0 6px;border-radius:999px;font-size:.58rem;font-weight:600;letter-spacing:.4px;text-transform:none;color:var(--ews-accent);background:rgba(255,193,77,.12);border:1px solid rgba(255,193,77,.28);vertical-align:middle}.right-station-hint{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.74rem;color:var(--ews-text-secondary);padding:4px 7px;border-radius:6px;background:rgba(255,255,255,.03);border:1px solid var(--ews-border)}.right-station-hint__left{display:flex;align-items:center;gap:6px;min-width:0}.right-station-hint__left #chart-hari-ini-station-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;color:var(--ews-text-primary)}.right-station-hint__date{flex-shrink:0;font-size:.68rem;color:var(--ews-text-muted);text-align:right;line-height:1.25;max-width:55%}.right-station-hint .material-symbols-outlined{font-size:1rem;color:var(--ews-primary-light);flex-shrink:0}.right-unavailable-banner{display:flex;align-items:center;gap:8px;font-size:.75rem;color:var(--ews-text-muted);padding:8px 10px;border-radius:6px;background:rgba(148,168,208,.08);border:1px dashed var(--ews-border)}.right-unavailable-banner .material-symbols-outlined{font-size:1.05rem;opacity:.7;flex-shrink:0}.chart-hari-ini-host{min-height:110px;width:100%}.chart-hari-ini-host .chart-empty-state{padding:12px 10px;min-height:110px;height:100%}.debit-forecast-host{min-height:130px;width:100%}.debit-forecast-host .chart-empty-state{height:100%;min-height:120px}.debit-forecast-slide{display:flex;flex-direction:column;min-height:0;flex:1 1 auto}.debit-forecast-head{min-width:0}.debit-forecast-location{margin:0;font-size:.78rem;font-weight:700;color:var(--ews-text-primary);line-height:1.25;letter-spacing:.1px}.debit-forecast-meta{margin-top:2px;font-size:.62rem;font-weight:500;color:var(--ews-text-muted);line-height:1.35;word-break:break-word}.debit-forecast-badge{display:inline-flex;align-items:center;font-size:.58rem;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--ews-accent);background:rgba(255,193,77,.12);border:1px solid rgba(255,193,77,.35);border-radius:4px;padding:2px 6px;line-height:1.2;vertical-align:middle}.debit-forecast-info{margin-top:6px;flex:0 0 auto}.debit-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px}.debit-info-card{background:rgba(255,255,255,.03);border:1px solid var(--ews-border);border-radius:6px;padding:6px;min-width:0}.debit-info-card__title{font-size:.62rem;font-weight:700;text-align:center;color:var(--ews-text-primary);margin-bottom:5px;line-height:1.25}.debit-info-table{width:100%;border-collapse:collapse;font-size:.62rem}.debit-info-table td,.debit-info-table th{border:1px solid var(--ews-border);padding:3px 4px;text-align:center;color:var(--ews-text-secondary);line-height:1.25}.debit-info-table th{background:rgba(148,168,208,.12);color:var(--ews-text-muted);font-weight:600}.debit-info-table td:last-child{font-variant-numeric:tabular-nums;font-weight:600;color:var(--ews-text-primary)}.debit-info-row--siaga td:first-child{color:#eab308;font-weight:600}.debit-info-row--waspada td:first-child{color:#f97316;font-weight:600}.debit-info-row--awas td:first-child{color:#ef4444;font-weight:600}.debit-info-card--status{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:4px}.debit-info-status-badge{display:flex;align-items:center;justify-content:center;width:100%;min-height:34px}.debit-info-status-badge .debit-status-badge{font-size:.85rem;padding:6px 14px;letter-spacing:.6px}.debit-info-status-hint{font-size:.58rem;color:var(--ews-text-muted);line-height:1.3}.debit-info-peak-value{font-size:.95rem;font-weight:700;color:var(--ews-text-primary);text-align:center;line-height:1.2}.debit-info-peak-time{margin-top:4px;font-size:.62rem;font-weight:600;color:var(--ews-text-muted);text-align:center;line-height:1.3}.debit-info-peak-split{display:grid;gap:3px;font-size:.78rem}.debit-info-peak-label{color:var(--ews-text-muted);font-size:.58rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.debit-stat-card__unit{font-size:.6rem;font-weight:500;color:var(--ews-text-muted)}.debit-status-badge{display:inline-flex;align-items:center;font-size:.7rem;font-weight:700;letter-spacing:.4px;padding:3px 8px;border-radius:4px;line-height:1.2}.debit-status-badge--normal{color:#6ee7b7;background:rgba(16,185,129,.16);border:1px solid rgba(52,211,153,.45)}.debit-status-badge--waspada{color:#fde68a;background:rgba(234,179,8,.16);border:1px solid rgba(250,204,21,.45)}.debit-status-badge--siaga-soft{color:#fde68a;background:rgba(234,179,8,.14);border:1px solid rgba(250,204,21,.4)}.debit-status-badge--siaga{color:#fca5a5;background:rgba(239,68,68,.16);border:1px solid rgba(248,113,113,.45)}.debit-status-badge--muted{color:var(--ews-text-muted);background:rgba(148,168,208,.1);border:1px solid var(--ews-border)}.selected-station-panel{background:rgba(255,255,255,.04);border:1px solid var(--ews-border);border-radius:8px;padding:10px 12px}.selected-station-panel .station-title{font-size:.85rem;font-weight:600;color:var(--ews-text-primary);margin-bottom:6px}.selected-station-panel .station-total-lg{font-size:2rem;font-weight:700;color:var(--ews-accent);line-height:1}.selected-station-panel .station-total-lg sup{font-size:.7rem;color:var(--ews-text-muted)}.section-header{font-size:.7rem;font-weight:600;color:var(--ews-text-muted);text-transform:uppercase;letter-spacing:.8px;text-align:center;margin-bottom:6px;padding-bottom:4px;border-bottom:1px solid var(--ews-border)}.monitoring-text-header{font-size:.72rem;font-weight:600;color:var(--ews-text-muted);text-transform:uppercase;letter-spacing:.6px}.chart-panel{background:rgba(255,255,255,.02);border:1px solid var(--ews-border);border-radius:8px;padding:6px 8px;margin-bottom:6px}#chart-debit-forecast,#chart-hari-ini,#chart-hourly,#chart-top-stations,#chart-wilayah{min-height:0}.chart-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px 16px;color:var(--ews-text-muted);font-size:.8rem;gap:8px}.chart-empty-state .material-symbols-outlined,.chart-empty-state i{font-size:1.8rem;opacity:.4}.highcharts-background{fill:transparent}.highcharts-title{fill:var(--ews-text-primary)!important}.highcharts-axis-labels text,.highcharts-subtitle{fill:var(--ews-text-muted)!important}.highcharts-yaxis-grid .highcharts-grid-line{stroke:rgba(255,255,255,.06)}.highcharts-tooltip-box{fill:rgba(22,26,61,.95);stroke:rgba(255,255,255,.12)}.running-text{color:var(--ews-text-secondary);font-size:.78rem;line-height:1.4}.ticker-item{display:inline-flex;align-items:center;gap:4px;margin-right:4px}.ticker-badge{font-size:.65rem!important;padding:2px 6px!important;border-radius:4px!important}.ticker-value{color:var(--ews-text-primary,#f2f5ff);font-size:.92rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.01em;line-height:1}.ticker-meta{color:var(--ews-text-muted);font-size:.72rem}.ticker-tipe{color:var(--ews-accent,#ffc14d);font-size:.72rem;font-weight:700;letter-spacing:.03em}.ticker-time{color:var(--ews-text-muted);font-size:.72rem;font-weight:500}.ticker-item .debit-status-badge{font-size:.65rem;padding:2px 6px}.ticker-sep{color:var(--ews-border-active);margin:0 8px;opacity:.5}#map{border-radius:8px;z-index:1}.ews-marker-wrap{background:0 0!important;border:none!important}.ews-marker-dot{border-radius:50%;border:2px solid rgba(255,255,255,.85);box-shadow:0 2px 6px rgba(0,0,0,.5);transition:transform .2s}.ews-marker-wrap:hover .ews-marker-dot{transform:scale(1.3)}.map-legend{background:rgba(22,26,61,.92);border:1px solid var(--ews-border);border-radius:8px;padding:8px 12px;font-size:.72rem;color:var(--ews-text-secondary);line-height:1.6;backdrop-filter:blur(4px)}.map-legend-title{font-weight:600;color:var(--ews-text-primary);margin-bottom:4px;font-size:.75rem}.map-legend-item{display:flex;align-items:center;gap:6px}.map-legend-dot{width:10px;height:10px;border-radius:50%;display:inline-block;flex-shrink:0}.map-legend--filter{min-width:180px}.map-legend--panel{min-width:150px}.map-legend-pair{display:flex;flex-direction:row;align-items:flex-end;gap:8px;background:0 0;border:none;padding:0;box-shadow:none;backdrop-filter:none}.map-legend-toggles{display:flex;flex-direction:column;align-items:stretch;gap:8px}.map-legend-toggle{display:flex;flex-direction:row;align-items:center;gap:8px;cursor:pointer;margin:0;font-weight:500;color:var(--ews-text-primary,#f2f5ff);-webkit-user-select:none;-moz-user-select:none;user-select:none}.map-legend-toggle input{margin:0;accent-color:var(--ews-primary-light,#4a9ee8);cursor:pointer;flex-shrink:0}.map-legend-toggle__icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:22px}.map-legend-toggle__label{display:block;flex:1 1 auto;font-size:.72rem;line-height:1.25;white-space:nowrap}.map-legend-divider{height:1px;margin:8px 0;background:var(--ews-border,rgba(255,255,255,.14))}.ews-popup .leaflet-popup-content-wrapper{background:rgba(22,26,61,.95);border:1px solid var(--ews-border-active);border-radius:8px;color:var(--ews-text-primary);box-shadow:0 4px 16px rgba(0,0,0,.4)}.ews-popup .leaflet-popup-tip{background:rgba(22,26,61,.95)}.map-popup-name{font-weight:600;font-size:.85rem;margin-bottom:4px}.map-popup-value{font-size:1.4rem;font-weight:700;color:var(--ews-accent)}.map-popup-value span{font-size:.7rem;color:var(--ews-text-muted)}.map-popup-badge{display:inline-block;margin-top:6px;font-size:.7rem;padding:2px 8px;border-radius:4px}.watershed-list .watershed-group{background:0 0;border:none;border-radius:0}.watershed-list .card-header-watershed{background-color:rgba(37,43,91,.95);border-bottom:1px solid var(--ews-border);padding:0}.watershed-list .custom-accordion-title{text-decoration:none;gap:.35rem;color:inherit;min-height:2.4rem}.watershed-list .custom-accordion-title:hover{background:rgba(255,255,255,.03)}.watershed-list .watershed-hash{color:var(--ews-primary-light);font-weight:600;font-size:.78rem;flex-shrink:0}.watershed-list .watershed-name{color:var(--ews-accent);font-weight:500;font-size:.78rem;letter-spacing:.02em;text-transform:uppercase}.watershed-list .watershed-count{font-size:.65rem;font-weight:600}.watershed-list .accordion-arrow{font-size:1.1rem;color:var(--ews-text-muted);transition:transform .2s;flex-shrink:0}.watershed-list .custom-accordion-title.collapsed .accordion-arrow{transform:rotate(-90deg)}.watershed-list .content-watershed{border-bottom:1px solid var(--ews-border);background:0 0}.watershed-list .watershed-group.is-empty-filter{display:none}.side-bar-home::-webkit-scrollbar{width:4px}.side-bar-home::-webkit-scrollbar-track{background:0 0}.side-bar-home::-webkit-scrollbar-thumb{background:var(--ews-border-active);border-radius:4px}.flatpickr-calendar{background:var(--ews-bg-card-alt);border-color:var(--ews-border);box-shadow:0 8px 24px rgba(0,0,0,.4)}.flatpickr-day{color:var(--ews-text-secondary)}.flatpickr-day.selected{background:var(--ews-primary-light);border-color:var(--ews-primary-light)}.flatpickr-months .flatpickr-month{color:var(--ews-text-primary)}.flatpickr-current-month .flatpickr-monthDropdown-months{background:var(--ews-bg-card-alt)}.flatpickr-weekday{color:var(--ews-text-muted)}@media (max-width:767.98px){.card-station-arr .station-total,.stat-box .stat-value{font-size:1.1rem}}