/* Thin Digital Business adapter over real HUD core. */
body.theme-teal{--bs-theme:#249d79;--bs-theme-rgb:36,157,121}.db-hud .brand .brand-logo .brand-img .brand-img-text{font-size:.65rem;font-weight:700}.db-hud .brand .brand-logo .brand-text{letter-spacing:.18em;font-weight:600;white-space:nowrap}.db-hud .db-svg{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem}.db-hud .db-svg svg{width:1.25rem;height:1.25rem;fill:currentColor;display:block}.db-hud .menu-icon .db-svg svg{width:1.05rem;height:1.05rem;opacity:.9}.db-hud .app-header .menu .menu-icon .db-svg svg{width:1.35rem;height:1.35rem}.db-hud .db-grid-icon{font-size:1.55rem;line-height:1.1;margin:.15rem 0 .45rem}.db-hud .app-sidebar .menu .menu-item.active .db-svg{color:var(--bs-theme)}.db-hud .app-sidebar .menu .menu-item.active .menu-text{color:var(--bs-app-sidebar-menu-link-active-color)}.db-hud .app-content{overflow-x:hidden}.db-hud .btn{text-transform:uppercase;letter-spacing:.055em;font-weight:600}.db-hud .btn-theme{color:var(--bs-theme-color)}.db-hud .form-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:1rem}.db-hud .field{grid-column:span 6}.db-hud .field.full{grid-column:span 12}.db-hud .field label{display:block;margin-bottom:.45rem;font-size:.72rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:rgba(var(--bs-inverse-rgb),.6)}.db-hud .input,.db-hud select,.db-hud textarea{width:100%;min-height:2.35rem;border:1px solid rgba(var(--bs-inverse-rgb),.18);background:rgba(var(--bs-component-bg-rgb),.55);color:var(--bs-body-color);padding:.5rem .65rem;font:inherit}.db-hud .input:focus,.db-hud select:focus,.db-hud textarea:focus{outline:0;border-color:var(--bs-theme);box-shadow:0 0 0 .15rem rgba(var(--bs-theme-rgb),.12)}.db-hud textarea{min-height:7rem;resize:vertical}.db-hud .actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.db-hud .split{display:flex;align-items:center;justify-content:space-between;gap:1rem}.db-hud .muted{color:rgba(var(--bs-inverse-rgb),.55)}.db-hud .mt{margin-top:1rem}.db-hud .mb{margin-bottom:1rem}.db-hud .chip-grid{display:flex;flex-wrap:wrap;gap:.45rem}.db-hud .chip{border:1px solid rgba(var(--bs-inverse-rgb),.18);background:rgba(var(--bs-component-bg-rgb),.55);padding:.38rem .62rem;cursor:pointer;font-weight:600}.db-hud .chip input{display:none}.db-hud .chip:has(input:checked),.db-hud .chip.active{background:rgba(var(--bs-theme-rgb),.12);border-color:var(--bs-theme);color:var(--bs-theme)}.db-hud .zone-card{border:1px solid rgba(var(--bs-inverse-rgb),.18);background:rgba(var(--bs-component-bg-rgb),.42);padding:.85rem;cursor:pointer;position:relative}.db-hud .zone-card.active{border-color:var(--bs-theme);box-shadow:inset 3px 0 0 var(--bs-theme);background:rgba(var(--bs-theme-rgb),.08)}.db-hud .hud-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:1rem}.db-hud .span-3{grid-column:span 3}.db-hud .span-4{grid-column:span 4}.db-hud .span-5{grid-column:span 5}.db-hud .span-6{grid-column:span 6}.db-hud .span-7{grid-column:span 7}.db-hud .span-8{grid-column:span 8}.db-hud .span-12{grid-column:span 12}.db-hud .card-title{font-weight:700;text-transform:uppercase;letter-spacing:.07em;font-size:.85rem}.db-hud .metric-value{font-size:2rem;font-weight:700}.db-hud .metric-note{color:rgba(var(--bs-inverse-rgb),.55);line-height:1.5}.db-hud .page-kicker{font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:rgba(var(--bs-inverse-rgb),.55);font-size:.78rem}.db-hud .page-title{font-size:2rem;font-weight:700;margin:0 0 .25rem}.db-hud .page-subtitle{color:rgba(var(--bs-inverse-rgb),.55)}.db-hud .content-body{padding:0}@media(max-width:991.98px){.db-hud .field,.db-hud .span-3,.db-hud .span-4,.db-hud .span-5,.db-hud .span-6,.db-hud .span-7,.db-hud .span-8{grid-column:span 12}}.db-login-wrap{min-height:100vh;display:grid;place-items:center;padding:2rem}.db-login-card{width:min(460px,100%)}.db-login-brand{display:flex;align-items:center;gap:1rem;font-weight:700;letter-spacing:.18em;margin-bottom:1.5rem}.db-login-brand b{color:var(--bs-theme)}

.db-hud .db-user-icon{width:2.15rem;height:2.15rem;display:flex;align-items:center;justify-content:center;border:1px solid rgba(var(--bs-inverse-rgb),.22);border-radius:50%;color:var(--bs-theme);position:relative}
.db-hud .db-user-icon.online:after{content:"";position:absolute;right:.05rem;top:.05rem;width:.45rem;height:.45rem;border-radius:50%;background:var(--bs-theme);box-shadow:0 0 0 2px var(--bs-body-bg)}
.db-hud .db-user-icon .db-svg svg{width:1.15rem;height:1.15rem}
.db-theme-panel{position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:1030;display:flex;align-items:center}
.db-theme-toggle{width:2.4rem;height:2.4rem;border:1px solid rgba(var(--bs-inverse-rgb),.18);background:rgba(var(--bs-body-bg-rgb),.88);color:var(--bs-body-color);backdrop-filter:blur(14px)}
.db-theme-card{display:none;width:230px;padding:1rem;background:rgba(var(--bs-body-bg-rgb),.94);border:1px solid rgba(var(--bs-inverse-rgb),.15);box-shadow:0 1rem 2rem rgba(0,0,0,.08);backdrop-filter:blur(18px)}
.db-theme-panel.open .db-theme-card{display:block}
.db-theme-title{font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;margin-bottom:.8rem}
.db-theme-subtitle{font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(var(--bs-inverse-rgb),.55);font-weight:700;margin:.8rem 0 .45rem}
.db-theme-swatches{display:flex;flex-wrap:wrap;gap:.45rem}
.db-theme-swatches button{width:1.55rem;height:1.55rem;border:1px solid rgba(var(--bs-inverse-rgb),.18);background:var(--sw);border-radius:50%}
.db-theme-covers{display:grid;grid-template-columns:1fr 1fr;gap:.45rem}
.db-theme-covers button{border:1px solid rgba(var(--bs-inverse-rgb),.18);background:rgba(var(--bs-component-bg-rgb),.5);color:var(--bs-body-color);font-size:.7rem;padding:.35rem}
.db-bars{display:flex;align-items:end;height:42px;gap:3px}
.db-bars span{display:block;flex:1;background:var(--bs-theme);opacity:.78;min-width:3px}
.db-mini-line{height:42px;width:100%;position:relative}
.db-mini-line svg{width:100%;height:42px;overflow:visible}
.db-mini-line path{fill:none;stroke:var(--bs-theme);stroke-width:3;stroke-linejoin:round;stroke-linecap:round}
.db-status-pill{display:inline-flex;align-items:center;gap:.4rem;border:1px solid rgba(var(--bs-inverse-rgb),.16);border-radius:999px;padding:.35rem .65rem;background:rgba(var(--bs-component-bg-rgb),.45);font-weight:600}
.db-status-pill:before{content:"";width:.45rem;height:.45rem;border-radius:50%;background:var(--bs-theme)}
.db-dashboard-choice{min-height:260px;display:flex;flex-direction:column;justify-content:space-between}
.db-dashboard-choice .display-6{letter-spacing:.03em}
.db-topic-note{font-size:.78rem;color:rgba(var(--bs-inverse-rgb),.58);line-height:1.55}
.db-card-link{color:inherit;text-decoration:none;display:block}
.db-card-link:hover{color:inherit}
.db-empty-state{padding:2rem;text-align:center;color:rgba(var(--bs-inverse-rgb),.55);border:1px dashed rgba(var(--bs-inverse-rgb),.18)}
@media(max-width:767.98px){.db-theme-panel{display:none}.db-hud .brand .brand-logo .brand-text{letter-spacing:.1em}}

.db-hud .db-channel-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;margin-top:.9rem}
.db-hud .db-channel-mini{border:1px solid rgba(var(--bs-inverse-rgb),.12);background:rgba(var(--bs-component-bg-rgb),.38);padding:.5rem .55rem;min-width:0}
.db-hud .db-channel-mini b{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:rgba(var(--bs-inverse-rgb),.58);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.db-hud .db-channel-mini span{display:block;font-size:.88rem;font-weight:700;margin-top:.2rem;white-space:normal;overflow:visible;text-overflow:clip;line-height:1.25;word-break:keep-all}
.db-hud .db-sortable-head{cursor:pointer;user-select:none;white-space:nowrap}
.db-hud .db-sortable-head:after{content:'↕';opacity:.35;margin-left:.35rem;font-size:.72rem}
.db-hud .db-sortable-head[data-sort-dir='asc']:after{content:'↑';opacity:.9;color:var(--bs-theme)}
.db-hud .db-sortable-head[data-sort-dir='desc']:after{content:'↓';opacity:.9;color:var(--bs-theme)}
.db-hud .db-chart-box{min-height:320px}
.db-hud .db-chart-box-sm{min-height:260px}
.db-hud .db-toolbar{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;justify-content:flex-end}
.db-hud .db-metric-chip{display:inline-flex;align-items:center;gap:.35rem;border:1px solid rgba(var(--bs-inverse-rgb),.16);background:rgba(var(--bs-component-bg-rgb),.42);padding:.28rem .52rem;font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}
.db-hud .db-metric-chip:before{content:'';width:.45rem;height:.45rem;border-radius:50%;background:var(--bs-theme)}
.db-hud .db-row-actions{display:flex;gap:.35rem;align-items:center;justify-content:flex-end;flex-wrap:nowrap}
.db-hud .db-inline-status{display:flex;gap:.35rem;min-width:230px}
.db-hud .db-inline-status select{min-height:2rem;padding:.25rem .5rem;font-size:.75rem}
.db-hud .db-inline-status button{min-height:2rem;padding:.25rem .5rem;font-size:.7rem}
.db-hud .db-items-box{white-space:pre-wrap;line-height:1.55;border:1px solid rgba(var(--bs-inverse-rgb),.12);background:rgba(var(--bs-component-bg-rgb),.35);padding:.8rem;max-height:360px;overflow:auto}
@media(max-width:1399.98px){.db-hud .db-channel-breakdown{grid-template-columns:1fr}}
@media(max-width:1199.98px){.db-hud .db-channel-breakdown{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:575.98px){.db-hud .db-channel-breakdown{grid-template-columns:1fr}.db-hud .db-inline-status{min-width:180px}}

.db-upload-progress{height:10px;border:1px solid rgba(0,0,0,.18);background:rgba(255,255,255,.45);overflow:hidden}
.db-upload-progress-bar{height:100%;background:var(--bs-theme,#249d79);transition:width .25s ease}
.db-kpi-subline{font-size:11px;line-height:1.35;color:rgba(20,24,30,.62);margin-top:6px}
.db-money-break{display:block;white-space:normal;word-break:break-word;line-height:1.15}

/* E-commerce delivery map */
.db-delivery-map{height:620px;min-height:420px;background:rgba(var(--bs-component-bg-rgb),.25);border-top:1px solid rgba(var(--bs-inverse-rgb),.12)}
.db-map-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:14px 16px;border-bottom:1px solid rgba(var(--bs-inverse-rgb),.12);background:rgba(var(--bs-component-bg-rgb),.42)}
.db-map-toolbar b{display:block;text-transform:uppercase;letter-spacing:.07em;font-size:.78rem}.db-map-toolbar span{display:block;color:rgba(var(--bs-inverse-rgb),.58);font-size:.76rem;margin-top:2px}
.db-map-legend{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:flex-end}.db-map-legend span{display:inline-flex!important;align-items:center;gap:.35rem;border:1px solid rgba(var(--bs-inverse-rgb),.13);padding:.28rem .48rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:rgba(var(--bs-inverse-rgb),.7)}
.db-map-legend span:before{content:'';width:.48rem;height:.48rem;border-radius:50%;background:rgba(var(--bs-inverse-rgb),.35)}.db-map-legend .ok:before{background:var(--bs-theme)}.db-map-legend .low:before{background:#f59c1a}.db-map-legend .risk:before{background:#ff5b57}.db-map-legend .no-data:before{background:#8a8f98}
.db-map-marker{width:var(--size,32px);height:var(--size,32px);border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:800;font-size:10px;letter-spacing:.02em;border:2px solid rgba(255,255,255,.92);box-shadow:0 8px 22px rgba(0,0,0,.30),0 0 0 5px rgba(var(--bs-theme-rgb),.12);background:var(--bs-theme)}
.db-map-marker.low{background:#f59c1a;box-shadow:0 8px 22px rgba(0,0,0,.30),0 0 0 5px rgba(245,156,26,.14)}.db-map-marker.risk{background:#ff5b57;box-shadow:0 8px 22px rgba(0,0,0,.30),0 0 0 5px rgba(255,91,87,.14)}.db-map-marker.no-data{background:#8a8f98;box-shadow:0 8px 22px rgba(0,0,0,.22),0 0 0 5px rgba(138,143,152,.13)}
.db-map-popup{min-width:260px}.db-map-popup h6{margin:0 0 8px;font-weight:800;letter-spacing:.04em}.db-map-popup .line{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid rgba(0,0,0,.08);padding:4px 0}.db-map-popup .line b{font-weight:800}.db-map-popup .reco{margin-top:8px;font-size:12px;line-height:1.45;color:#4b5563}.db-map-popup .channels{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:8px}.db-map-popup .channels div{border:1px solid rgba(0,0,0,.08);padding:5px;border-radius:6px;background:#f8fafc}.db-map-popup .channels span{display:block;font-size:10px;text-transform:uppercase;color:#64748b}.db-map-popup .channels b{font-size:11px}.db-map-popup a{display:inline-flex;margin-top:8px;font-weight:700}
.db-map-candidate-list{display:flex;flex-direction:column;gap:.65rem}.db-map-candidate{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;border:1px solid rgba(var(--bs-inverse-rgb),.13);background:rgba(var(--bs-component-bg-rgb),.42);padding:.72rem}.db-map-candidate b{display:block}.db-map-candidate span,.db-map-candidate em{display:block;color:rgba(var(--bs-inverse-rgb),.58);font-size:.72rem;font-style:normal;margin-top:2px}.db-map-candidate strong{display:block;white-space:nowrap}.db-map-status{display:inline-flex;align-items:center;gap:.35rem;border:1px solid rgba(var(--bs-inverse-rgb),.14);padding:.22rem .44rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;font-weight:800;white-space:nowrap}.db-map-status:before{content:'';width:.44rem;height:.44rem;border-radius:50%;background:rgba(var(--bs-inverse-rgb),.35)}.db-map-status.ok:before{background:var(--bs-theme)}.db-map-status.low:before{background:#f59c1a}.db-map-status.risk:before{background:#ff5b57}.db-map-status.no-data:before{background:#8a8f98}.db-map-table-search{max-width:320px}.db-map-reco{min-width:260px;font-size:.75rem;line-height:1.45;color:rgba(var(--bs-inverse-rgb),.62)}
.db-hud .leaflet-container{font:inherit}.db-hud .leaflet-popup-content-wrapper{border-radius:10px}.db-hud .leaflet-control-attribution{font-size:9px}
@media(max-width:991.98px){.db-delivery-map{height:520px}.db-map-toolbar{align-items:flex-start;flex-direction:column}.db-map-legend{justify-content:flex-start}.db-map-table-search{max-width:100%}}

/* E-commerce delivery map v2: fixed full-width map layout and table readability */
.db-ecom-map-page{position:relative;z-index:0}
.db-ecom-map-page .card{position:relative;z-index:1}
.db-ecom-map-page .db-delivery-map-card{overflow:hidden;z-index:1}
.db-ecom-map-page .db-map-table-card{z-index:2}
.db-delivery-map{width:100%;height:560px;min-height:460px;position:relative!important;overflow:hidden!important;isolation:isolate;background:rgba(var(--bs-component-bg-rgb),.25);border-top:1px solid rgba(var(--bs-inverse-rgb),.12);z-index:0}
.db-delivery-map .leaflet-pane,.db-delivery-map .leaflet-tile,.db-delivery-map .leaflet-marker-icon,.db-delivery-map .leaflet-marker-shadow,.db-delivery-map .leaflet-tile-container,.db-delivery-map .leaflet-pane>svg,.db-delivery-map .leaflet-pane>canvas,.db-delivery-map .leaflet-zoom-box,.db-delivery-map .leaflet-image-layer,.db-delivery-map .leaflet-layer{position:absolute;left:0;top:0}
.db-delivery-map .leaflet-container{position:relative;overflow:hidden}
.db-delivery-map .leaflet-pane{z-index:1}.db-delivery-map .leaflet-tile-pane{z-index:1}.db-delivery-map .leaflet-overlay-pane{z-index:2}.db-delivery-map .leaflet-shadow-pane{z-index:3}.db-delivery-map .leaflet-marker-pane{z-index:4}.db-delivery-map .leaflet-tooltip-pane{z-index:5}.db-delivery-map .leaflet-popup-pane{z-index:6}.db-delivery-map .leaflet-top,.db-delivery-map .leaflet-bottom{position:absolute;z-index:7;pointer-events:none}.db-delivery-map .leaflet-control{position:relative;z-index:7;pointer-events:auto}
.db-map-toolbar{min-height:62px}.db-map-toolbar b{font-size:.82rem}.db-map-legend span{background:rgba(var(--bs-component-bg-rgb),.55)}
.db-map-marker{width:var(--size,28px);height:var(--size,28px);font-size:9px;box-shadow:0 6px 16px rgba(0,0,0,.26),0 0 0 3px rgba(var(--bs-theme-rgb),.13)}
.db-map-marker.low{box-shadow:0 6px 16px rgba(0,0,0,.24),0 0 0 3px rgba(245,156,26,.16)}.db-map-marker.risk{box-shadow:0 6px 16px rgba(0,0,0,.24),0 0 0 3px rgba(255,91,87,.16)}.db-map-marker.no-data{box-shadow:0 6px 16px rgba(0,0,0,.20),0 0 0 3px rgba(138,143,152,.14)}
.db-map-candidate-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.db-map-candidate{min-height:74px}.db-map-candidate strong{font-variant-numeric:tabular-nums}.db-map-candidate span{line-height:1.35}
.db-map-table-wrap{max-height:640px;overflow:auto;border:1px solid rgba(var(--bs-inverse-rgb),.10)}
.db-map-table{min-width:1420px;table-layout:fixed}.db-map-table thead th{position:sticky;top:0;z-index:3;background:rgba(var(--bs-body-bg-rgb),.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(var(--bs-inverse-rgb),.18);white-space:nowrap}.db-map-table th,.db-map-table td{vertical-align:middle}.db-map-table td{white-space:nowrap}.db-map-table .col-branch{width:190px;white-space:normal}.db-map-table .col-city{width:110px}.db-map-table .col-status{width:145px}.db-map-table .col-num{width:125px}.db-map-table .col-num-sm{width:90px}.db-map-table .col-channel{width:125px}.db-map-table .col-pct{width:95px}.db-map-table .col-reco{width:300px;white-space:normal}.db-map-table .db-num{font-variant-numeric:tabular-nums}.db-map-table .db-num span{display:block}.db-map-table .db-num small{display:block;margin-top:2px;font-size:10px;color:rgba(var(--bs-inverse-rgb),.52);line-height:1.1}.db-map-table .db-map-reco{min-width:0;width:300px;white-space:normal;font-size:.72rem;line-height:1.35;color:rgba(var(--bs-inverse-rgb),.66)}
@media(max-width:1199.98px){.db-delivery-map{height:520px}.db-map-candidate-grid{grid-template-columns:1fr 1fr}}
@media(max-width:767.98px){.db-delivery-map{height:460px;min-height:420px}.db-map-toolbar{align-items:flex-start;flex-direction:column}.db-map-legend{justify-content:flex-start}.db-map-candidate-grid{grid-template-columns:1fr}.db-map-table-search{max-width:100%}}

/* E-commerce delivery map: full-width + fullscreen mode */
.db-delivery-map-card{overflow:hidden;position:relative;z-index:2}
.db-delivery-map{width:100%;height:72vh;min-height:620px;position:relative!important;overflow:hidden!important;isolation:isolate;background:rgba(var(--bs-component-bg-rgb),.25);border-top:1px solid rgba(var(--bs-inverse-rgb),.12);z-index:0}
.db-map-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:64px;padding:14px 16px;border-bottom:1px solid rgba(var(--bs-inverse-rgb),.12);background:rgba(var(--bs-component-bg-rgb),.50)}
.db-map-toolbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;flex-wrap:wrap}
.db-map-fullscreen-btn{white-space:nowrap;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.db-delivery-map-card.is-map-fullscreen{position:fixed!important;inset:10px!important;width:auto!important;height:auto!important;margin:0!important;z-index:99999!important;background:rgba(var(--bs-body-bg-rgb),.98);box-shadow:0 24px 80px rgba(0,0,0,.45);border:1px solid rgba(var(--bs-theme-rgb),.45)}
.db-delivery-map-card.is-map-fullscreen .card-body{height:100%;display:flex;flex-direction:column}
.db-delivery-map-card.is-map-fullscreen .db-map-toolbar{flex:0 0 auto;background:rgba(var(--bs-body-bg-rgb),.96);backdrop-filter:blur(12px)}
.db-delivery-map-card.is-map-fullscreen .db-delivery-map{flex:1 1 auto;height:calc(100vh - 94px)!important;min-height:0!important;border-top:1px solid rgba(var(--bs-inverse-rgb),.14)}
body.db-map-fullscreen-open{overflow:hidden!important}
body.db-map-fullscreen-open .app-sidebar,
body.db-map-fullscreen-open .app-header{filter:blur(1px);pointer-events:none}
.db-delivery-map-card.is-map-fullscreen .card-arrow{display:none}
.db-delivery-map .leaflet-pane,.db-delivery-map .leaflet-tile,.db-delivery-map .leaflet-marker-icon,.db-delivery-map .leaflet-marker-shadow,.db-delivery-map .leaflet-tile-container,.db-delivery-map .leaflet-pane>svg,.db-delivery-map .leaflet-pane>canvas,.db-delivery-map .leaflet-zoom-box,.db-delivery-map .leaflet-image-layer,.db-delivery-map .leaflet-layer{position:absolute;left:0;top:0}
.db-delivery-map .leaflet-pane{z-index:1}.db-delivery-map .leaflet-tile-pane{z-index:1}.db-delivery-map .leaflet-overlay-pane{z-index:2}.db-delivery-map .leaflet-shadow-pane{z-index:3}.db-delivery-map .leaflet-marker-pane{z-index:4}.db-delivery-map .leaflet-tooltip-pane{z-index:5}.db-delivery-map .leaflet-popup-pane{z-index:6}.db-delivery-map .leaflet-top,.db-delivery-map .leaflet-bottom{position:absolute;z-index:7;pointer-events:none}.db-delivery-map .leaflet-control{position:relative;z-index:7;pointer-events:auto}
.db-map-candidate-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem}.db-map-candidate{min-height:74px}.db-map-candidate strong{font-variant-numeric:tabular-nums}.db-map-candidate span{line-height:1.35}
.db-map-table-wrap{max-height:640px;overflow:auto;border:1px solid rgba(var(--bs-inverse-rgb),.10)}
.db-map-table{min-width:1420px;table-layout:fixed}.db-map-table thead th{position:sticky;top:0;z-index:3;background:rgba(var(--bs-body-bg-rgb),.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(var(--bs-inverse-rgb),.18);white-space:nowrap}.db-map-table th,.db-map-table td{vertical-align:middle}.db-map-table td{white-space:nowrap}.db-map-table .col-branch{width:190px;white-space:normal}.db-map-table .col-city{width:110px}.db-map-table .col-status{width:145px}.db-map-table .col-num{width:125px}.db-map-table .col-num-sm{width:90px}.db-map-table .col-channel{width:125px}.db-map-table .col-pct{width:95px}.db-map-table .col-reco{width:300px;white-space:normal}.db-map-table .db-map-reco{min-width:0;width:300px;white-space:normal;font-size:.72rem;line-height:1.35;color:rgba(var(--bs-inverse-rgb),.66)}
@media(max-width:1199.98px){.db-delivery-map{height:64vh;min-height:540px}.db-map-candidate-grid{grid-template-columns:1fr 1fr}}
@media(max-width:767.98px){.db-delivery-map{height:62vh;min-height:460px}.db-map-toolbar{align-items:flex-start;flex-direction:column}.db-map-toolbar-actions{justify-content:flex-start}.db-map-legend{justify-content:flex-start}.db-map-candidate-grid{grid-template-columns:1fr}.db-map-table-search{max-width:100%}.db-delivery-map-card.is-map-fullscreen{inset:0!important}.db-delivery-map-card.is-map-fullscreen .db-delivery-map{height:calc(100vh - 126px)!important}}

/* Compact popup override */
.db-hud .leaflet-popup.db-map-leaflet-popup.compact .leaflet-popup-content-wrapper{background:rgba(255,255,255,.97)!important;border:1px solid rgba(var(--bs-inverse-rgb),.10)!important;border-radius:12px!important;box-shadow:0 12px 28px rgba(0,0,0,.22)!important}
.db-hud .leaflet-popup.db-map-leaflet-popup.compact .leaflet-popup-content{margin:0!important}
.db-hud .leaflet-popup.db-map-leaflet-popup.compact .leaflet-popup-tip{background:rgba(255,255,255,.97)!important}
.db-hud .leaflet-popup.db-map-leaflet-popup.compact .leaflet-popup-close-button{top:8px;right:8px;color:#6b7280!important;font-size:16px}
.db-map-popup.db-map-popup-compact{min-width:240px;max-width:300px;padding:10px 10px 8px;color:#111827;font-size:12px}
.db-map-popup-compact .db-map-popup-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding-right:16px;margin-bottom:8px}
.db-map-popup-compact .db-map-popup-title{font-size:14px;font-weight:800;line-height:1.2;color:#111827}
.db-map-popup-compact .db-map-popup-chip{display:inline-flex;align-items:center;padding:3px 7px;border-radius:999px;font-size:10px;line-height:1;font-weight:800;white-space:nowrap;border:1px solid transparent}
.db-map-popup-compact .db-map-popup-chip.ok{background:rgba(var(--bs-theme-rgb),.12);color:var(--bs-theme);border-color:rgba(var(--bs-theme-rgb),.22)}
.db-map-popup-compact .db-map-popup-chip.low{background:rgba(245,156,26,.12);color:#c57b11;border-color:rgba(245,156,26,.24)}
.db-map-popup-compact .db-map-popup-chip.risk{background:rgba(255,91,87,.12);color:#dd4e49;border-color:rgba(255,91,87,.24)}
.db-map-popup-compact .db-map-popup-chip.no-data{background:rgba(138,143,152,.12);color:#6b7280;border-color:rgba(138,143,152,.22)}
.db-map-popup-compact .db-map-popup-stats{display:grid;grid-template-columns:1fr;gap:4px;margin-bottom:8px}
.db-map-popup-compact .db-map-popup-stat{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:5px 0;border-bottom:1px solid rgba(17,24,39,.08)}
.db-map-popup-compact .db-map-popup-stat:last-child{border-bottom:none}
.db-map-popup-compact .db-map-popup-stat span{font-size:11px;color:#6b7280}
.db-map-popup-compact .db-map-popup-stat b{font-size:12px;font-weight:800;color:#111827;text-align:right;font-variant-numeric:tabular-nums}
.db-map-popup-compact .db-map-popup-channels{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:8px}
.db-map-popup-compact .db-map-popup-channels div{padding:6px;border-radius:8px;background:#f8fafc;border:1px solid rgba(17,24,39,.06)}
.db-map-popup-compact .db-map-popup-channels span{display:block;font-size:9px;letter-spacing:.04em;text-transform:uppercase;color:#6b7280;margin-bottom:3px}
.db-map-popup-compact .db-map-popup-channels b{display:block;font-size:11px;line-height:1.15;color:#111827;font-weight:800;font-variant-numeric:tabular-nums}
.db-map-popup-compact .db-map-popup-channels small{display:block;margin-top:2px;font-size:10px;color:#6b7280}
.db-map-popup-compact .db-map-popup-reco{font-size:11px;line-height:1.35;color:#374151;margin-bottom:8px}
.db-map-popup-compact .db-map-popup-link{display:inline-flex;align-items:center;justify-content:center;padding:6px 9px;border-radius:8px;border:1px solid rgba(var(--bs-theme-rgb),.22);background:rgba(var(--bs-theme-rgb),.07);color:var(--bs-theme)!important;font-size:11px;font-weight:800;text-decoration:none}
.db-map-popup-compact .db-map-popup-link:hover{text-decoration:none;background:rgba(var(--bs-theme-rgb),.12)}
@media(max-width:767.98px){.db-map-popup.db-map-popup-compact{min-width:220px;max-width:260px}}

/* Multi-brand selector */
.db-brand-selector{display:flex;align-items:center;gap:6px;margin-right:8px;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.55)}
.db-brand-selector select{height:30px;min-width:135px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:8px;color:#fff;padding:0 8px;font-size:11px;outline:none}
.db-brand-selector option{background:#161a1f;color:#fff}
@media(max-width:767px){.db-brand-selector{display:none}}
.db-admin-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.db-admin-card{display:block;text-decoration:none;color:inherit}.db-admin-card .card-body{min-height:130px}.db-brand-note{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.045);padding:10px 12px;border-radius:10px;font-size:12px;color:rgba(255,255,255,.72)}

/* TZ v1 stability: dropdowns/popup must not shift KPI/table layout */
.dropdown-menu,.app-header .dropdown-menu,.db-dropdown,.db-popup{position:absolute!important;z-index:1060!important;max-width:min(420px,95vw);white-space:normal;overflow:visible!important}
.card,.form-panel,.table-responsive{overflow:visible}.table-responsive{overflow-x:auto}.card-title,.page-title,.page-subtitle,.badge,.chip{overflow-wrap:anywhere}.table td,.table th{vertical-align:middle}.db-kpi,.metric-card,.card .stat{min-width:0}.db-kpi b,.metric-card b,.card .stat b{font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.db-upload-progress{height:10px;border:1px solid rgba(var(--bs-inverse-rgb),.18);background:rgba(var(--bs-component-bg-rgb),.45);overflow:hidden}.db-upload-progress-bar{height:100%;background:var(--bs-theme,#249d79);transition:width .25s ease}.badge.danger{background:rgba(255,91,87,.15);color:#ff5b57;border:1px solid rgba(255,91,87,.35)}

/* Support workflow UI fix: attachments, readable branch matrix, image preview */
.db-attachment-grid{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start}.db-attachment-thumb{width:124px;border:1px solid rgba(var(--bs-inverse-rgb),.18);background:rgba(var(--bs-component-bg-rgb),.55);padding:6px;cursor:pointer;text-align:left;color:inherit}.db-attachment-thumb img{width:100%;height:82px;object-fit:cover;display:block;border:1px solid rgba(var(--bs-inverse-rgb),.10);background:#fff}.db-attachment-thumb span{display:block;margin-top:6px;font-size:11px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.db-image-modal-open{overflow:hidden}.db-image-modal{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:24px}.db-image-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(2px)}.db-image-modal-card{position:relative;z-index:1;max-width:min(1100px,96vw);max-height:92vh;background:rgba(255,255,255,.96);border:1px solid rgba(0,0,0,.25);padding:16px}.db-image-modal-card img{display:block;max-width:100%;max-height:78vh;object-fit:contain}.db-image-modal-title{font-weight:800;margin:0 44px 10px 0;overflow-wrap:anywhere}.db-image-modal-close{position:absolute;right:10px;top:8px;width:34px;height:34px;border:1px solid rgba(0,0,0,.25);background:#fff;font-size:24px;line-height:1;cursor:pointer}.support-branch-matrix{width:100%;border-collapse:collapse}.support-branch-matrix th,.support-branch-matrix td{border-bottom:1px solid rgba(var(--bs-inverse-rgb),.12);padding:9px 10px;vertical-align:middle}.support-branch-matrix .num{font-variant-numeric:tabular-nums;text-align:right;font-weight:800}.support-branch-matrix .neg{color:#d93636}.support-branch-matrix .pos{color:#148922}.support-branch-matrix .neu{color:#0271ff}.support-branch-matrix .zero{opacity:.45}.db-hud .muted-inline{color:rgba(var(--bs-inverse-rgb),.55);font-weight:500;text-transform:none;letter-spacing:0}
.db-file-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.db-file-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid rgba(var(--bs-inverse-rgb),.18);background:rgba(255,255,255,.65);font-size:12px}.db-file-pill button{border:0;background:transparent;color:#b00020;font-weight:900;cursor:pointer}.db-ticket-modal{position:fixed;inset:0;z-index:99998;display:grid;place-items:center;padding:22px}.db-ticket-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.62);backdrop-filter:blur(2px)}.db-ticket-modal-card{position:relative;z-index:1;width:min(980px,96vw);max-height:92vh;overflow:auto;background:rgba(255,255,255,.98);border:1px solid rgba(0,0,0,.22);padding:22px;color:#111}.db-ticket-modal-close{position:absolute;right:10px;top:8px;width:34px;height:34px;border:1px solid rgba(0,0,0,.25);background:#fff;font-size:24px;line-height:1;cursor:pointer}.db-ticket-modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.db-ticket-modal-section{border:1px solid rgba(0,0,0,.12);padding:12px;background:rgba(255,255,255,.65)}.db-ticket-modal-section h4{font-size:13px;text-transform:uppercase;letter-spacing:.08em;margin:0 0 8px}.db-ticket-modal-files{display:flex;flex-wrap:wrap;gap:8px}.db-ticket-modal-files img{width:96px;height:72px;object-fit:cover;border:1px solid rgba(0,0,0,.18);cursor:pointer}@media(max-width:767.98px){.db-ticket-modal-grid{grid-template-columns:1fr}.db-ticket-modal-card{padding:16px}}

/* Support status / review clarity patch */
.db-ticket-status-badge,.support-status-badge,.table .badge{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:3px 8px;border:1px solid rgba(var(--bs-inverse-rgb),.22);background:rgba(255,255,255,.78);color:rgba(var(--bs-inverse-rgb),.88)!important;font-weight:800;letter-spacing:.03em;line-height:1.25;white-space:normal;text-shadow:none!important}
.db-ticket-status-badge.status-new,.table .badge.warn{background:rgba(2,113,255,.10);border-color:rgba(2,113,255,.28);color:#0b63ce!important}.db-ticket-status-badge.status-feedback_sent{background:rgba(37,157,121,.12);border-color:rgba(37,157,121,.34);color:#167b5f!important}.db-ticket-status-badge.status-revision{background:rgba(245,156,26,.15);border-color:rgba(245,156,26,.38);color:#9b5e00!important}.db-ticket-status-badge.status-completed,.db-ticket-status-badge.status-closed,.table .badge.ok{background:rgba(37,157,121,.14);border-color:rgba(37,157,121,.36);color:#167b5f!important}.db-ticket-status-badge.status-overdue,.table .badge.danger{background:rgba(255,91,87,.15);border-color:rgba(255,91,87,.36);color:#c82924!important}.db-operator-review-actions{border:1px solid rgba(var(--bs-inverse-rgb),.14);background:rgba(255,255,255,.56);padding:14px}.btn-outline-danger{border:1px solid rgba(255,91,87,.55)!important;color:#c82924!important;background:rgba(255,91,87,.06)!important}.btn-outline-danger:hover{background:rgba(255,91,87,.14)!important}

/* Support notification/status polish */
.db-notification-bell{position:relative}.db-notification-count{position:absolute;right:4px;top:4px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;font-size:10px;line-height:18px;text-align:center;color:#fff!important;font-weight:900}.db-notification-menu{max-height:420px;overflow:auto!important}.db-notification-unread{background:rgba(var(--bs-theme-rgb),.08)!important;border-left:3px solid var(--bs-theme)}
.db-ticket-status-badge.status-feedback_sent,.table .badge.status-feedback_sent,.table .badge.feedback_sent{background:rgba(92,37,255,.13)!important;border-color:rgba(92,37,255,.38)!important;color:#4d22c7!important}.db-ticket-status-badge.status-revision,.table .badge.status-revision,.table .badge.revision{background:rgba(255,159,12,.18)!important;border-color:rgba(255,159,12,.45)!important;color:#a15f00!important}.support-inbox-row .badge{min-width:86px;max-width:128px;white-space:normal;text-align:center}.db-operator-review-actions .btn-outline-danger{font-weight:900;text-transform:uppercase;letter-spacing:.04em}


/* Support imported review modal: must cover sidebar/menu too */
.db-review-modal{position:fixed;inset:0;display:none;z-index:200000;padding:22px;place-items:center}
.db-review-modal.open{display:grid}
.db-review-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.62);backdrop-filter:blur(2px)}
.db-review-modal-card{position:relative;z-index:1;width:min(1180px,96vw);max-height:92vh;overflow:auto;background:rgba(255,255,255,.985);border:1px solid rgba(0,0,0,.22);padding:22px;color:#111;box-shadow:0 24px 90px rgba(0,0,0,.42)}
.db-review-modal-close{position:absolute;right:10px;top:8px;width:34px;height:34px;border:1px solid rgba(0,0,0,.25);background:#fff;font-size:24px;line-height:1;cursor:pointer}
.db-import-review-text{border:1px solid rgba(0,0,0,.12);background:rgba(0,0,0,.025);padding:10px 12px;margin:10px 0;line-height:1.55}
.db-import-review-original{background:rgba(36,157,121,.06)}
.db-review-modal .chip{color:#333}
