/* Dense two-column coverage editor, modeled on the customer's spreadsheet. */
#bulkDialog[open]{
 width:min(1320px,calc(100vw - 32px));
 height:calc(100dvh - 28px);
 padding:16px 20px 14px;
}
#bulkDialog .dialog-head h2{margin:2px 0 3px}
#bulkDialog .eyebrow{margin-bottom:2px}
#bulkTitle{margin:0 0 6px}
#bulkDialog .bulk-settings{
 display:grid;grid-template-columns:minmax(250px,1fr) minmax(350px,1.5fr);
 gap:8px;margin:0 0 8px;
}
#bulkDialog .bulk-settings>.city-availability,
#bulkDialog .bulk-settings>.sheet-tools{
 display:flex;align-items:center;flex-wrap:wrap;gap:6px;
 min-height:40px;padding:5px 9px;
}
#bulkDialog .bulk-settings .hint{display:none}
#bulkDialog .bulk-settings .city-availability button{margin:0}
#bulkDialog .bulk-settings label{white-space:nowrap}
#bulkDialog .bulk-settings button,
#bulkDialog .bulk-settings .sheet-tools label{padding:5px 8px;font-size:12px}
#bulkDialog .bulk-filters{
 display:grid;grid-template-columns:auto minmax(145px,1fr) auto minmax(145px,1fr) minmax(190px,1.25fr);
 align-items:center;gap:7px;margin-bottom:8px;
}
#bulkDialog .bulk-filters label{font-size:12px;color:#526880;white-space:nowrap}
#bulkCity,#bulkDistrict,#bulkQuery{width:100%;height:32px;margin:0;padding:5px 9px}
#bulkDialog .bulk-tools{flex-wrap:nowrap;margin:0 0 5px;padding:6px 8px;min-height:40px}
#bulkDialog .bulk-tools label{white-space:nowrap}
#bulkDialog .bulk-tools button,#bulkDialog .bulk-tools select{padding:5px 8px}
#selectionCount{margin:0 0 5px}
#bulkDialog .table-wrap{min-height:100px;max-height:none;flex:1;overflow:auto}
#bulkRows.bulk-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start}
#bulkRows .bulk-column{table-layout:fixed;width:100%;font-size:13px;border:1px solid #dce5ef}
#bulkRows .bulk-column th{padding:5px 6px;font-size:12px;height:28px}
#bulkRows .bulk-column th:nth-child(1){width:31px}
#bulkRows .bulk-column th:nth-child(2){width:35px}
#bulkRows .bulk-column th:nth-child(4){width:205px}
#bulkRows .bulk-column td{padding:2px 5px;height:29px;line-height:1.15}
#bulkRows .bulk-index{color:#627a96;text-align:center;font-variant-numeric:tabular-nums}
#bulkRows .bulk-select{text-align:center}
#bulkRows .bulk-select input{margin:0;vertical-align:middle}
#bulkRows .bulk-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#bulkRows .bulk-name b{font-size:13px;font-weight:700}
#bulkRows .bulk-name small{display:inline;margin:0 0 0 6px;font-size:11px;color:#7187a0}
#bulkRows .bulk-status .choices{gap:2px;flex-direction:row}
#bulkRows .bulk-status .choices label{flex:1;min-width:0}
#bulkRows .bulk-status .choices span{
 padding:4px 1px;text-align:center;font-size:11px;line-height:1;
 white-space:nowrap;border-radius:4px;
}
#bulkDialog>.pager{padding:5px 0}
#bulkDialog>.hint{margin:2px 0 4px;line-height:1.25}
#bulkDialog .dialog-foot{margin-top:4px;padding:8px 0 0}

/* Keep the sidebar focused on address search and map controls. */
.china-workspace aside .list-heading,
.china-workspace aside #regions,
.china-workspace aside .pager,
.china-workspace aside footer{display:none}
.china-workspace aside #regionSearchResults:not([hidden]){margin-top:5px;border:1px solid #dce5ef;border-radius:6px;max-height:210px;overflow:auto}
.china-workspace aside #regionSearchResults button{display:block;width:100%;padding:7px 9px;text-align:left;border:0;border-bottom:1px solid #ecf0f5;border-radius:0}
.china-workspace aside #regionSearchResults small{display:block;color:#72859b;margin-top:2px}

@media(max-width:1000px){
 #bulkDialog .bulk-settings{grid-template-columns:1fr}
 #bulkDialog .bulk-filters{grid-template-columns:auto minmax(120px,1fr) auto minmax(120px,1fr)}
 #bulkQuery{grid-column:1/-1}
 #bulkRows.bulk-grid{grid-template-columns:1fr}
 #bulkRows .bulk-column th:nth-child(4){width:210px}
}
@media(max-width:680px){
 #bulkDialog[open]{width:calc(100vw - 16px);height:calc(100dvh - 16px);padding:12px}
 #bulkDialog .bulk-settings>.city-availability,#bulkDialog .bulk-settings>.sheet-tools{min-height:0}
 #bulkDialog .bulk-tools{flex-wrap:wrap}
 #bulkRows .bulk-column th:nth-child(4){width:175px}
 #bulkRows .bulk-name small{display:none}
}

/* Shared fifty-row layout for China, Korea, and Vietnam. */
#bulkDialog[open],#bulkdialog[open]{display:flex;flex-direction:column;width:min(1320px,calc(100vw - 32px));max-width:1320px;height:calc(100dvh - 28px);max-height:none;padding:14px 20px;overflow:hidden;border-radius:9px}
#bulkDialog .dialog-head,#bulkdialog .bulkheading{position:absolute;right:15px;top:14px;z-index:3;margin:0;padding:0;border:0;background:transparent}
#bulkDialog .dialog-head>div,#bulkdialog .bulkheading>div,#bulkTitle{display:none}
#bulkDialog .dialog-head button,#bulkdialog .bulkheading button{width:36px;height:36px;padding:0;display:grid;place-items:center;border:0;border-radius:6px;background:#eef4fa;font-size:25px;color:#31506e}
#bulkDialog .bulk-topbar,#bulkdialog .bulkfilters{border-top:3px solid #1263fa;padding-top:10px}
#bulkDialog .bulk-topbar{display:flex;align-items:center;gap:14px;padding-right:44px;margin-bottom:10px;min-height:51px}
#bulkDialog .bulk-filters{display:flex;align-items:center;gap:7px;min-width:0;flex:1;border:0;padding:0;margin:0}
#bulkDialog .bulk-filters label{font-size:12px;font-weight:700;color:#38516b;white-space:nowrap}
#bulkDialog .bulk-filters select,#bulkDialog .bulk-filters input{height:34px;min-width:0;margin:0;padding:5px 8px;font-size:12px}
#bulkCity{flex:1 1 160px}#bulkDistrict{flex:1 1 130px}#bulkQuery{flex:1 1 180px}
#bulkDialog .bulk-settings{display:flex;align-items:center;gap:8px;margin:0;padding:0;min-width:0}
#bulkDialog .bulk-settings>.city-availability,#bulkDialog .bulk-settings>.sheet-tools{display:flex;align-items:center;gap:7px;margin:0;padding:0;border:0;background:none;min-height:0;white-space:nowrap}
#bulkDialog .bulk-settings .hint,#bulkDialog .bulk-settings #sheetUpload,#bulkDialog>.hint{display:none}
#bulkDialog .bulk-settings .city-availability button{display:none}
#bulkDialog .bulk-settings .city-availability label{display:flex;align-items:center;gap:5px;padding:5px 8px;border:1px solid #d7e5f1;border-radius:5px;background:#f1f6fb;font-size:12px;white-space:nowrap}
#bulkDialog .bulk-settings .city-availability input{margin:0}
#bulkDialog .bulk-settings button,#bulkDialog .bulk-settings .sheet-tools label{padding:6px 8px;margin:0;font-size:12px;border-radius:5px;white-space:nowrap}
#bulkDialog .bulk-tools,#bulkdialog .bulkbar{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;min-height:42px;padding:5px 10px;margin:0 0 10px;border:0;border-radius:6px;background:#eaf4fc}
#bulkDialog .bulk-tools label,#bulkdialog .bulkbar label{white-space:nowrap;font-size:12px}
#bulkDialog .bulk-tools button,#bulkDialog .bulk-tools select,#bulkdialog .bulkbar button,#bulkdialog .bulkbar select{padding:5px 8px;margin:0;font-size:12px;border-radius:5px}
#selectionCount,#bsummary{margin:0 0 5px!important;color:#6a7f94;font-size:12px!important}
#bulkDialog .table-wrap,#bulkdialog .bulktable{flex:1;min-height:0;max-height:none;margin:0;overflow:auto}
#bulkRows.bulk-grid,#brows.bulk-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start}
#bulkRows .bulk-column,#brows .bulk-column{table-layout:fixed;border-collapse:collapse;width:100%;min-width:0;border:1px solid #d9e5f0;font-size:12px;color:#18314e}
#bulkRows .bulk-column th,#brows .bulk-column th{position:sticky;top:0;z-index:1;height:30px;padding:4px 5px;background:#ecf4fb;text-align:left;color:#244462;font-size:12px}
#bulkRows .bulk-column th:nth-child(1),#brows .bulk-column th:nth-child(1){width:35px;text-align:center}
#bulkRows .bulk-column th:nth-child(2),#brows .bulk-column th:nth-child(2){width:35px;text-align:center}
#bulkRows .bulk-column th:nth-child(4),#brows .bulk-column th:nth-child(4){width:220px}
#bulkRows .bulk-column td,#brows .bulk-column td{height:29px;padding:2px 5px;border-top:1px solid #e5edf4;line-height:1.15}
#bulkRows .bulk-index,#brows .bulk-index,#bulkRows .bulk-select,#brows .bulk-select{text-align:center;font-variant-numeric:tabular-nums}
#bulkRows .bulk-select input,#brows .bulk-select input{width:15px;height:15px;margin:0;vertical-align:middle}
#bulkRows .bulk-name,#brows .bulk-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#bulkRows .bulk-name b,#brows .bulk-name b{font-size:12px;font-weight:700}
#bulkRows .bulk-name small,#brows .bulk-name small{display:inline;margin:0 0 0 6px;font-size:11px;color:#667c94}
#bulkRows .bulk-status .choices,#brows .bulk-status .statuschoices{display:flex;gap:4px;flex-direction:row}
#bulkRows .bulk-status label,#brows .bulk-status label{flex:1;min-width:0}
#bulkRows .bulk-status span,#brows .bulk-status span{display:block;padding:4px 1px;text-align:center;font-size:11px;line-height:1;white-space:nowrap;border-radius:4px}
#bulkRows .draft,#brows .draftrow{background:#fff8e6}
#bulkDialog>.pager,#bulkdialog .bulkpager{display:flex;justify-content:center;align-items:center;gap:9px;flex:none;min-height:48px;padding:8px 0 0;margin:8px 0 0;border-top:1px solid #e1eaf3}
#bulkDialog .dialog-foot,#bulkdialog .bulkfooter{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex:none;margin:0;padding:4px 0 0;border:0;background:white}
#bulkDialog .dialog-foot button,#bulkdialog .bulkfooter button{padding:7px 12px;margin:0;font-size:12px}
#bulkdialog #bulkcontent{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}
#bulkdialog .bulkfilters{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:10px 44px 8px 0;margin:0 0 8px;min-height:51px}
#bulkdialog .bulkfilters label{display:flex;align-items:center;gap:5px;min-width:0;font-size:11px;white-space:nowrap}
#bulkdialog .bulkfilters select,#bulkdialog .bulkfilters input{width:auto;min-width:100px;max-width:180px;height:33px;padding:5px 7px;margin:0;font-size:11px}
#bulkdialog .bulkbar{margin:0 0 10px}
#bulkdialog .bulkpager{min-height:0;padding:8px 0 0;margin:7px 0 0}
#bulkdialog .bulkfooter{padding:4px 0 0}
body:not(.china-workspace) aside .listhead,body:not(.china-workspace) aside #list,body:not(.china-workspace) aside .asidefoot{display:none}
@media(max-width:1050px){#bulkDialog .bulk-topbar{flex-wrap:wrap}#bulkDialog .bulk-settings{width:100%;justify-content:flex-end}#bulkRows.bulk-grid,#brows.bulk-grid{grid-template-columns:1fr}}
@media(max-width:680px){#bulkDialog[open],#bulkdialog[open]{width:calc(100vw - 16px);height:calc(100dvh - 16px);padding:10px}#bulkDialog .bulk-filters,#bulkDialog .bulk-settings,#bulkDialog .bulk-tools,#bulkdialog .bulkbar{flex-wrap:wrap}#bulkRows .bulk-column th:nth-child(4),#brows .bulk-column th:nth-child(4){width:175px}#bulkRows .bulk-name small,#brows .bulk-name small{display:none}}
/* Country and city availability now live together in Settings. */
#bulkDialog .city-availability{display:none!important}
body:not(.china-workspace) aside:has(#search:not(:placeholder-shown)) .listhead,body:not(.china-workspace) aside:has(#search:not(:placeholder-shown)) #list{display:block}
.vietnam-workspace aside:has(#search:not(:placeholder-shown)) .list-heading,.vietnam-workspace aside:has(#search:not(:placeholder-shown)) #regions,.vietnam-workspace aside:has(#search:not(:placeholder-shown)) .pager{display:block}
.bulk-footer{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;flex:none;min-height:58px;margin-top:9px;border-top:1px solid #e1eaf3}
.bulk-footer-summary{color:#627994;font-size:12px;white-space:nowrap}
#bulkDialog .bulk-footer .pager,#bulkdialog .bulk-footer .bulkpager{border:0;margin:0;padding:0;min-height:0}
#bulkDialog .bulk-footer .dialog-foot,#bulkdialog .bulk-footer .bulkfooter{justify-self:end;padding:0}
#bulkDialog #apply,#bulkDialog #save,#bulkdialog #bset,#bulkdialog #bsave{background:#f97316!important;border-color:#f97316!important;color:#fff!important;font-weight:700}
#bulkDialog #apply:hover,#bulkDialog #save:hover,#bulkdialog #bset:hover,#bulkdialog #bsave:hover{background:#e85e0b!important;border-color:#e85e0b!important}
#brows .bulk-status .statuschoices{gap:3px}
#brows .bulk-status .statuschoices label span{min-height:0;padding:4px 1px;border:1px solid #d5e1ed;border-radius:4px;background:#fff;color:#344d69;font-size:11px;line-height:1}
#brows .bulk-status .statuschoices .yes input:checked+span{background:#e3f7e7;border-color:#8ed59b;color:#155b36}
#brows .bulk-status .statuschoices .no input:checked+span{background:#e8edf2;border-color:#aebdca;color:#344a60}
#brows .bulk-status .statuschoices .ask input:checked+span{background:#fff4d2;border-color:#eac264;color:#805600}
#bulkdialog .korea-sheet-tools{display:flex;align-items:center;gap:6px;min-width:0;white-space:nowrap}
#bulkdialog .korea-sheet-tools button,#bulkdialog .korea-sheet-tools label{display:inline-flex;align-items:center;justify-content:center;height:33px;padding:5px 8px;border:1px solid #b8cce0;border-radius:5px;background:#fff;color:#244462;font-size:11px;font-weight:600;cursor:pointer}
#bulkdialog .korea-sheet-tools button:hover,#bulkdialog .korea-sheet-tools label:hover{border-color:#f97316;color:#dd5b0d}
#bulkdialog #koreaSheetMessage:empty{display:none}
#bulkdialog #koreaSheetMessage{font-size:11px;color:#315d7a}
@media(max-width:800px){.bulk-footer{grid-template-columns:1fr auto;gap:5px}.bulk-footer-summary{grid-column:1/-1}.bulk-footer .pager,.bulk-footer .bulkpager{justify-content:flex-start!important}}

/* Fit the dialog to twenty-five visible rows instead of stretching to the viewport. */
#bulkDialog[open],#bulkdialog[open]{height:fit-content;max-height:calc(100dvh - 96px)}
#bulkDialog .table-wrap,#bulkdialog .bulktable{flex:0 1 auto;max-height:calc(100dvh - 215px)}
#bulkdialog #bulkcontent{flex:0 1 auto}
#bulkRows .bulk-column,#brows .bulk-column{font-size:13px}
#bulkRows .bulk-column th,#brows .bulk-column th{height:33px;font-size:13px}
#bulkRows .bulk-column th:nth-child(2){padding:3px 2px;font-size:12px;white-space:nowrap}
#bulkRows .bulk-column td,#brows .bulk-column td{height:34px;font-size:13px}
#bulkRows .bulk-name b,#brows .bulk-name b{font-size:13px}
#bulkRows .bulk-name small,#brows .bulk-name small{font-size:12px}
#bulkRows .bulk-status span,#brows .bulk-status span{font-size:12px}
#brows .bulk-status .statuschoices label span{font-size:12px;padding:5px 1px}
#bulkRows .bulk-select input,#brows .bulk-select input,#bulkDialog #selectAll,#bulkdialog #ball{width:16px;height:16px;margin:0;accent-color:#f97316}
#bulkDialog .bulk-tools>label:first-child,#bulkdialog .bulkbar>label:first-child{margin-left:35px}
#bulkRows .bulk-column tbody tr:hover,#brows .bulk-column tbody tr:hover{background:#f4f9ff}
#bulkRows .bulk-column tbody tr:has(.bulk-select input:checked),#brows .bulk-column tbody tr:has(.bulk-select input:checked){background:#fff0e2}
#bulkRows .bulk-column tbody td,#brows .bulk-column tbody td{cursor:pointer}
@media(max-width:680px){#bulkDialog[open],#bulkdialog[open]{height:fit-content;max-height:calc(100dvh - 32px)}#bulkDialog .table-wrap,#bulkdialog .bulktable{max-height:calc(100dvh - 260px)}}

/* Explicit bulk actions share the same placement and visual hierarchy in every map. */
#bulkDialog .bulk-actions,#bulkdialog .bulk-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
#bulkDialog .bulk-actions .bulk-action,#bulkdialog .bulk-actions .bulk-action{min-height:30px;padding:5px 10px;margin:0;border:1px solid #f97316;border-radius:5px;background:#f97316;color:#fff;font-size:12px;font-weight:700;white-space:nowrap;cursor:pointer}
#bulkDialog .bulk-actions .bulk-action:hover,#bulkdialog .bulk-actions .bulk-action:hover{background:#e85e0b;border-color:#e85e0b}
#bulkDialog .bulk-actions .bulk-action:disabled,#bulkdialog .bulk-actions .bulk-action:disabled{opacity:.5;cursor:not-allowed}
