[hidden]{display:none!important}
:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#17202a;background:#f4f6f8}*{box-sizing:border-box}body{margin:0}.center{min-height:100vh;display:grid;place-items:center}.card,.metric{background:#fff;border:1px solid #e4e8ec;border-radius:14px;padding:22px;box-shadow:0 3px 18px #17202a0b}.login{width:min(420px,92vw)}.brand{font-size:19px;font-weight:700;margin-bottom:20px}.brand b{color:#375bd2}h1,h2,h3{margin-top:0}p{color:#65717e;line-height:1.5}input,textarea{width:100%;border:1px solid #d5dce3;border-radius:9px;padding:11px 12px;font:inherit;background:#fff}textarea{height:130px;resize:vertical}button{border:0;border-radius:9px;padding:11px 16px;background:#17202a;color:#fff;font-weight:650;cursor:pointer}button:hover{opacity:.9}.error{color:#b42318;margin-top:12px}#app{min-height:100vh;display:grid;grid-template-columns:230px 1fr}#app>aside{background:#111820;color:#fff;padding:24px 18px;display:flex;flex-direction:column;gap:8px}#app>aside .brand{padding:0 10px}.nav,.ghost{background:transparent;text-align:left;color:#cbd2d9}.nav.active{background:#26313d;color:#fff}.mode{margin-top:auto;border:1px solid #35502d;background:#182a19;color:#9bd88d;border-radius:8px;padding:9px 11px;font-size:12px;font-weight:800}main{padding:0 30px 40px;min-width:0}header{height:78px;display:flex;align-items:center;justify-content:space-between}header h2{display:inline;margin-right:18px}.dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:7px;background:#2da44e}.dot.off{background:#d1242f}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:16px}.metric small{display:block;color:#74808d}.metric strong{display:block;font-size:25px;margin:8px 0}.metric span{color:#74808d;font-size:13px}.row{display:flex;gap:10px;margin:12px 0}.row input{flex:1}.out{white-space:pre-wrap;overflow:auto;background:#111820;color:#cce0ef;padding:14px;border-radius:10px;max-height:360px}.tableWrap{overflow:auto;margin-top:18px}table{border-collapse:collapse;width:100%;font-size:13px}th,td{padding:9px 10px;border-bottom:1px solid #e8edf1;text-align:left;white-space:nowrap}th{position:sticky;top:0;background:#f9fafb}.pill{display:inline-block;background:#edf2ff;color:#334fa8;border-radius:999px;padding:4px 8px;margin:2px;font-size:12px}@media(max-width:850px){#app{grid-template-columns:1fr}#app>aside{position:relative;flex-direction:row;flex-wrap:wrap}.mode{margin:0}main{padding:0 14px 30px}.grid3{grid-template-columns:1fr}.row{flex-direction:column}}

.cardRow{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #eef1f4}.revealBtn{padding:7px 10px;font-size:12px}.revealBtn:disabled{opacity:.4;cursor:not-allowed}.revealDialog{border:0;border-radius:14px;padding:0;width:min(460px,92vw);box-shadow:0 18px 70px #0004}.revealDialog::backdrop{background:#10182088}.revealDialog form{padding:22px}.dialogHead{display:flex;justify-content:space-between;align-items:center}.dialogHead h3{margin:0}.iconBtn{background:transparent;color:#65717e;font-size:24px;padding:0 6px}.ghostBtn{background:#eef1f4;color:#17202a}.sensitive{margin-top:12px;padding:14px;border:1px solid #d5dce3;border-radius:10px;background:#f8fafb;white-space:pre-wrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.revealDialog input{font-size:20px;letter-spacing:.3em;text-align:center}

.fixtureBadge{display:inline-block;background:#fff3cd;color:#7a4b00;border:1px solid #f3d58b;border-radius:999px;padding:4px 8px;font:700 11px/1.3 system-ui;margin-bottom:12px}.cardSecret small,.secretGrid small{display:block;color:#65717e;font:12px system-ui;letter-spacing:0}.cardSecret strong{display:block;font-size:21px;letter-spacing:.04em;margin-top:4px}.secretGrid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.secretGrid>div{padding:10px;border:1px solid #e4e8ec;border-radius:9px;background:#fff}.secretGrid strong{display:block;margin-top:4px;font-size:18px}.fixtureNote{margin-top:12px;color:#65717e;font:12px/1.45 system-ui}


/* V2 card detail */
.profileOut{white-space:normal;font-family:inherit}.profileGrid,.detailGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.profileGrid>div,.detailGrid>div{border:1px solid #e4e8ec;border-radius:10px;padding:12px;background:#fff}.profileGrid small,.detailGrid small,.cardHero small{display:block;color:#7b8794;font-size:11px;text-transform:uppercase;letter-spacing:.06em}.profileGrid strong,.detailGrid strong{display:block;margin-top:4px;font-size:14px;overflow-wrap:anywhere}.sectionHead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px}.sectionHead h3{margin:0}.sectionHead>span{color:#7b8794;font-size:13px}.cardList{display:grid;gap:8px}.cardListItem{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;border:1px solid #e4e8ec;border-radius:12px;padding:12px;background:#fbfcfd}.cardIcon{width:46px;height:32px;border-radius:7px;background:#17202a;color:white;display:grid;place-items:center;font-weight:700;font-size:11px}.cardMain strong{display:block}.cardMain span{display:block;color:#65717e;font-size:13px;margin-top:3px}.openCardBtn{padding:8px 12px}.detailPanel{margin-top:18px}.eyebrow{color:#375bd2;font-size:11px;font-weight:800;letter-spacing:.08em}.cardHero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px;border-radius:14px;background:linear-gradient(135deg,#161f29,#2a3949);color:white;margin-top:16px}.cardHero strong{display:block;font-size:28px;letter-spacing:.08em;margin:10px 0 5px}.cardHero span{color:#cbd4dd}.statusChip{background:#ffffff18;border:1px solid #ffffff2e;border-radius:999px;padding:6px 10px;font-size:12px;color:#fff!important}.safeNote{margin-top:12px;padding:10px 12px;border-radius:9px;background:#f4f7fb;color:#65717e;font-size:12px}.detailActions{display:flex;justify-content:flex-end;margin-top:14px}.loading{padding:16px;color:#65717e}@media(max-width:850px){.profileGrid,.detailGrid{grid-template-columns:1fr}.cardListItem{grid-template-columns:auto 1fr}.openCardBtn{grid-column:1/-1}.cardHero{flex-direction:column}}

.identityWarning{margin-top:14px;padding:12px 14px;border:1px solid #f2c94c;background:#fff8db;border-radius:10px;color:#6b4f00}.identityWarning strong{display:block;font-size:13px;margin-bottom:4px}.identityWarning span{display:block;font-size:12px;line-height:1.45}.cardTxActions{display:flex;align-items:center;gap:10px;margin-top:14px}.cardTxActions span{color:#65717e;font-size:12px}.cardTxActions .ghostBtn{padding:9px 12px}#selectedTxWrap{margin-top:8px}

.upBusinessBox{margin-top:18px;padding:18px;border:1px solid #d9dce3;border-radius:14px}.upBusinessBox h4{margin:0 0 8px}.upBusinessStatus{display:flex;align-items:center;gap:9px;margin:12px 0}.statusLamp{width:10px;height:10px;border-radius:50%;background:#999}.statusLamp.on{background:#2f9e44}.statusLamp.wait{background:#f08c00}.helpText{font-size:13px;opacity:.72;line-height:1.45}.stepList{margin:12px 0 0;padding-left:20px;font-size:14px;line-height:1.7}

/* Primary token connection field */
.tokenCard{margin-bottom:16px}
.tokenCard h3{margin-bottom:10px}
.tokenCard .row{align-items:stretch}
.tokenCard textarea{min-height:44px;max-height:90px;resize:vertical;flex:1;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.tokenInlineState{margin-top:8px;font-size:12px;opacity:.7;white-space:pre-wrap}

/* Compact transaction report */
.reportMeta{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:0;border:1px solid #dfe5ea;border-radius:10px;overflow:hidden;margin:14px 0}.reportMeta>div{padding:12px 14px;border-right:1px solid #e7ebef;background:#fff}.reportMeta>div:last-child{border-right:0}.reportMeta small{display:block;color:#687482;font-size:11px;margin-bottom:4px}.reportMeta strong{font-size:14px}.reportTableWrap{margin-top:8px}.reportTable{font-size:13px}.reportTable th{background:#eef2f5;position:static}.reportTable td,.reportTable th{border:1px solid #dfe5ea;padding:8px 10px}.reportDownload{display:flex;justify-content:flex-end;margin-top:12px}.reportDownload button{min-width:120px}.tokenCard textarea{height:90px}.tokenInlineState{margin-top:8px;color:#65717e;font-size:13px}
@media(max-width:850px){.reportMeta{grid-template-columns:1fr 1fr}}

.openingHub{margin-top:18px}.openingTabs{display:flex;gap:8px;margin:8px 0 18px}.openingTab{background:#eef2f5;color:#17212b}.openingTab.active{background:#17212b;color:#fff}.formGrid,.readinessGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0}.formGrid label{font-size:13px;color:#657386}.formGrid input,.formGrid select{display:block;width:100%;margin-top:6px}.batchToolbar,.batchActions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:12px 0}.fileBtn{display:inline-flex;align-items:center;padding:11px 16px;border-radius:10px;background:#17212b;color:#fff;font-weight:700;cursor:pointer}.batchTable{min-width:1100px}.dangerBtn{background:#cfd5db!important;color:#737d86!important;cursor:not-allowed!important}.readinessGrid>div{border:1px solid #dde3e8;border-radius:12px;padding:12px}.readinessGrid small{display:block;color:#748191;margin-bottom:6px}@media(max-width:900px){.formGrid,.readinessGrid{grid-template-columns:1fr}}

/* Single opening flow */
.openingFlowCard{max-width:1180px}.openingMode{background:#eef2f6;color:#1c2733}.openingMode.active{background:#17212b;color:#fff}.openingModePane{margin-top:18px}.stageCard{border:1px solid #d8e0e8;border-radius:16px;padding:18px;margin-top:14px;background:#fff;transition:.2s}.stageCard.lockedStage{opacity:.48;pointer-events:none;background:#f6f8fa}.stageCard.activeStage{opacity:1}.stageTitle{display:flex;gap:12px;align-items:center;margin-bottom:14px}.stageTitle>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#17212b;color:#fff;font-weight:800}.stageTitle strong,.stageTitle small{display:block}.stageTitle small{color:#778493;margin-top:2px}.wideField{grid-column:1/-1}.stageCard input[type=file]{padding:9px;background:#f7f9fb}.openingTabs{display:flex;gap:10px;flex-wrap:wrap}

.stageCard select{width:100%;border:1px solid #d5dce3;border-radius:9px;padding:11px 12px;font:inherit;background:#fff}.stageCard button:disabled{opacity:.38;cursor:not-allowed}.emptyWorkspace{border:1px dashed #cfd7df;border-radius:14px;padding:30px;color:#73808d;text-align:center;background:#fafbfc}.readinessGrid{grid-template-columns:repeat(5,minmax(0,1fr))}@media(max-width:1050px){.readinessGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Searchable country pickers */
.countryPicker{position:relative;margin-top:6px}
.countryPicker>input[type=text],.countryPicker>input:not([type]){margin-top:0!important}
.countryMenu{position:absolute;z-index:40;left:0;right:0;top:calc(100% + 4px);background:#fff;border:1px solid #d8e0e7;border-radius:12px;box-shadow:0 12px 30px #17212b22;padding:5px;max-height:250px;overflow:auto}
.countryOption{display:block;width:100%;text-align:left;background:#fff;color:#17212b;border:0;padding:10px 12px;border-radius:8px;font-weight:600}
.countryOption:hover,.countryOption:focus{background:#eef2f5;outline:none}
.readinessGrid{grid-template-columns:repeat(6,minmax(0,1fr))}
@media(max-width:1050px){.readinessGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Opening status polish */
.readinessCell{min-width:0;overflow:hidden}
.readinessCell strong{display:block;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.emailCell strong{font-size:clamp(12px,1.15vw,14px)}
.createdCustomerResult{background:#f7fafc;color:#17212b;border:1px solid #d8e0e8;border-radius:12px;padding:14px;overflow:visible}
.createdCustomerResult small{display:block;color:#748191;margin-bottom:6px}
.createdCustomerNo{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.createdCustomerNo strong{font-size:22px;letter-spacing:.02em;overflow-wrap:anywhere}
.createdCustomerNo button{padding:8px 12px}
.createdCustomerResult span{display:block;color:#657386;font-size:12px;margin-top:8px}

.customersDirectoryHead{align-items:flex-end}.directoryControls{display:flex;gap:8px;align-items:center}.directoryControls select{border:1px solid #d5dce3;border-radius:9px;padding:10px 34px 10px 12px;background:#fff;font:inherit}.directoryMeta{margin-top:14px;color:#65717e;font-size:13px}.customersTableWrap{max-height:none}.customersTable td{height:48px}.truncateCell{max-width:320px;overflow:hidden;text-overflow:ellipsis}.customerIdLink{padding:0;background:transparent;color:#17202a;border-radius:0;font-weight:700;text-decoration:none}.customerIdLink:hover{color:#375bd2;opacity:1}.kycBadge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 9px;background:#eef1f4;color:#54616e;font-size:12px;font-weight:700}.kycBadge.approved{background:#e8f7ed;color:#24733b}.kycBadge.pending{background:#fff6df;color:#8a6214}.kycBadge.rejected{background:#fdecec;color:#a12b2b}.pagination{display:flex;align-items:center;gap:8px;justify-content:flex-end;margin-top:18px;flex-wrap:wrap}.pagination .totalRecords{margin-right:auto;font-weight:650;color:#17202a}.pageBtn{min-width:40px;height:40px;padding:0 12px;background:#fff;color:#17202a;border:1px solid #d5dce3}.pageBtn.active{border-color:#16b88a;color:#0b8f6b;background:#f5fffb}.pageBtn:disabled{opacity:.35;cursor:default}@media(max-width:850px){.customersDirectoryHead{align-items:flex-start;flex-direction:column}.directoryControls{width:100%}.pagination{justify-content:flex-start}.pagination .totalRecords{width:100%;margin:0 0 4px}}
.customersTable .customerNoFull{white-space:nowrap;font-variant-numeric:tabular-nums;font-feature-settings:'tnum' 1;min-width:max-content}
.customersTable th:nth-child(1),.customersTable td:nth-child(1){min-width:190px}
.customersTable th:nth-child(2),.customersTable td:nth-child(2){min-width:190px}

/* Card opening step 5 */
.cardProductSections{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:12px 0 18px}.cardProductSection{border:1px solid #dbe2e8;border-radius:14px;padding:14px;background:#fafbfc}.cardProductSection h4{margin:0 0 10px}.productChoiceGrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.cardProductChoice{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:16px;border-radius:14px;border:2px solid transparent;text-align:left}.cardProductChoice strong{font-size:12px;opacity:.8}.cardProductChoice span{font-size:16px;font-weight:800}.cardProductChoice small{font-size:12px}.cardProductChoice.greenCard{background:#dff8ef;color:#0d614e}.cardProductChoice.blackCard{background:#18202a;color:#fff}.cardProductChoice.selected{border-color:#12c79a;box-shadow:0 0 0 3px rgba(18,199,154,.12)}.cardOpenForm input[readonly]{background:#f4f6f8;color:#596674}.inputSuffix{display:flex;margin-top:6px}.inputSuffix input{margin-top:0!important;border-radius:9px 0 0 9px}.inputSuffix span{display:flex;align-items:center;padding:0 12px;border:1px solid #d5dce3;border-left:0;border-radius:0 9px 9px 0;background:#fff}.modalOverlay{position:fixed;inset:0;background:rgba(15,23,32,.46);display:grid;place-items:center;z-index:1000}.modalOverlay[hidden]{display:none}.paymentModal{position:relative;width:min(620px,calc(100vw - 32px));background:#fff;border-radius:18px;padding:28px;box-shadow:0 28px 70px rgba(0,0,0,.24)}.paymentModal h3{margin:0 0 12px}.paymentModal p{font-size:18px}.modalClose{position:absolute;right:18px;top:14px;background:transparent;color:#78838c;font-size:30px;padding:4px 10px}.paymentPasswordInput{font-size:26px;letter-spacing:14px;text-align:center;max-width:360px}.paymentModal .row{margin-top:18px}@media(max-width:900px){.cardProductSections,.productChoiceGrid{grid-template-columns:1fr}}

/* Card sheet */
.cardStatusBadge{display:inline-block;padding:6px 10px;border-radius:8px;background:#edf1f4;font-weight:700}.cardStatusBadge.successful{background:#e5f8f2;color:#00a97b}.cardStatusBadge.review-failed{background:#fdeaea;color:#e34444}.cardStatusBadge.cancelled{background:#f1f3f5;color:#68717a}.cardStatusBadge.pending-activation,.cardStatusBadge.primarily-reviewing{background:#fff4d8;color:#b47a00}

/* Bulk upload workspace */
.bulkInputs{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:18px 0}.bulkInputs label{display:flex;flex-direction:column;gap:8px;font-weight:700}.bulkInputs input[type=file]{padding:14px;border:1px dashed #b8c3cc;border-radius:14px;background:#f7f9fb}.buttonLink{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;background:#16212c;color:white;padding:12px 16px;border-radius:12px;font-weight:800}.bulkTableWrap{margin-top:18px}.bulkTable th,.bulkTable td{vertical-align:top}.bulkStateBadge{display:inline-block;padding:5px 9px;border-radius:999px;background:#eef2f5;font-weight:700;font-size:12px}.bulkStateBadge.existing,.bulkStateBadge.ready{background:#e2f7eb;color:#237a42}.bulkStateBadge.new{background:#e8f0ff;color:#315ec8}.bulkStateBadge.processing,.bulkStateBadge.pending{background:#fff2d7;color:#9c6900}.bulkStateBadge.error,.bulkStateBadge.ambiguous,.bulkStateBadge.rejected{background:#fde7e7;color:#b83b3b}.warnText{font-size:11px;color:#a66b00}.miniBtn{padding:3px 7px;border-radius:8px;font-size:12px}.bulkResult{min-width:260px}@media(max-width:900px){.bulkInputs{grid-template-columns:1fr}}
.bulkReviewGrid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;align-items:start;margin-top:18px}.bulkReviewGrid .bulkTableWrap{margin-top:0}.phoneValidationPanel{position:sticky;top:18px;border:1px solid #dce4ea;border-radius:16px;background:#fff;padding:16px;max-height:72vh;overflow:auto}.phoneValidationHead{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.phoneValidationHead h4{margin:3px 0 0;font-size:18px}.phoneSummaryBadge{white-space:nowrap;background:#eef2f5;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:800}.phoneValidationList{display:flex;flex-direction:column;gap:9px;margin-top:12px}.phoneCheckRow{border:1px solid #e0e6eb;border-left-width:4px;border-radius:12px;padding:10px;background:#fafbfc}.phoneCheckRow.valid{border-left-color:#20a15b}.phoneCheckRow.possible{border-left-color:#d59400}.phoneCheckRow.invalid{border-left-color:#d84b4b}.phoneCheckRow.missing{border-left-color:#9aa5ae}.phoneCheckTop{display:flex;justify-content:space-between;gap:8px;align-items:center}.phoneCheckBadge{font-size:11px;font-weight:800;padding:4px 7px;border-radius:999px;background:#edf1f4}.phoneCheckBadge.valid{background:#e2f7eb;color:#237a42}.phoneCheckBadge.possible{background:#fff2d7;color:#9c6900}.phoneCheckBadge.invalid{background:#fde7e7;color:#b83b3b}.phoneCheckNumber{font-weight:800;margin-top:7px}.phoneCheckMeta,.phoneCheckReason{font-size:12px;color:#637282;margin-top:4px}.phoneEmpty{color:#7f8d99;font-size:13px;padding:10px 2px}@media(max-width:1200px){.bulkReviewGrid{grid-template-columns:1fr}.phoneValidationPanel{position:static;max-height:none}}

/* Bulk onboarding detail controls */
.bulkDataField,.bulkMiniInput{border:1px solid #d7e0e7;border-radius:8px;padding:7px 8px;min-width:110px;background:#fff}.bulkDataField.filled[readonly]{background:#eef7f1;color:#235b36;border-color:#cfe7d5;font-weight:700}.bulkDataField.empty{background:#fffbea;border-color:#ead8a3}.bulkNameEdit{display:flex;gap:6px;align-items:center}.bulkPhoneCell{display:grid;grid-template-columns:75px 120px;gap:6px;min-width:255px}.bulkPhoneCell .bulkUploadPhone,.bulkPhoneCell .bulkInlineStatus{grid-column:1/-1}.bulkAddressCell{min-width:260px;max-width:360px}.bulkAddressMeta{font-size:11px;color:#6a7782;margin:4px 0 6px}.bulkInlineStatus{font-size:11px;color:#62717d;margin-left:4px}.bulkTable{min-width:1900px}.bulkTable td{white-space:normal}

.kycLocked{display:inline-block;padding:4px 7px;border-radius:8px;background:#e8f7ed;color:#24733b;font-weight:700}.bulkUploadPhone:disabled{opacity:.45;cursor:not-allowed}

/* flow41: persistent connected states */
.bulkConnectedStatus{display:inline-flex;align-items:center;gap:5px;width:max-content;margin-top:5px;padding:4px 8px;border-radius:999px;background:#e1f7e9;color:#178443;font-size:12px;font-weight:800}.connectedBtn:disabled{opacity:1!important;background:#e6f7ec!important;color:#178443!important;border-color:#bfe8ce!important;cursor:default!important}.bulkPhoneCell.isConnected .bulkMiniInput{background:#f0f8f3;color:#245d39;border-color:#cce5d4}.bulkAddressCell.isConnected{background:linear-gradient(90deg,rgba(230,247,236,.55),transparent);border-radius:10px;padding:6px}

/* Flow 42: bulk card opening */
.bulkCardOpening{margin-top:22px;border:1px solid #dce4ea;border-radius:18px;padding:18px;background:#fbfcfd}.bulkCardOpeningHead{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.bulkCardOpeningHead>div:first-child{display:flex;gap:12px;align-items:flex-start}.stepBubble{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#17212b;color:#fff;font-weight:900;font-size:18px;flex:0 0 auto}.bulkCardOpeningHead h4{font-size:22px;margin:2px 0 4px}.bulkCardOpenSummary{background:#eef3f6;border-radius:999px;padding:8px 12px;font-weight:800;white-space:nowrap}.bulkGlobalProducts{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.bulkProductGroup{border:1px solid #e1e7ec;border-radius:14px;padding:12px;background:#fff}.bulkProductGroup>strong{display:block;margin-bottom:9px}.bulkProductChoices{display:grid;grid-template-columns:1fr 1fr;gap:8px}.bulkGlobalProduct{padding:11px 12px;border-radius:12px;border:2px solid transparent;display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left}.bulkGlobalProduct small{font-size:11px;font-weight:700;opacity:.8}.bulkGlobalProduct span{font-size:13px;font-weight:900}.bulkGlobalProduct.greenCard{background:#dff8ef;color:#0d614e}.bulkGlobalProduct.blackCard{background:#18202a;color:#fff}.bulkGlobalProduct.selected{border-color:#12c79a;box-shadow:0 0 0 3px rgba(18,199,154,.12)}.bulkCardOpenActions{margin-top:14px}.bulkCardSelect{min-width:175px;border:1px solid #d6dee5;border-radius:9px;padding:7px 8px;background:#fff;font-weight:700}.bulkCardReadyCell{min-width:180px;max-width:260px}.bulkCardWarn{font-size:11px;color:#9b6800;display:inline-block;max-width:240px}.bulkCardError{font-size:11px;color:#b83b3b;display:inline-block;max-width:240px}.bulkTable{min-width:2260px}@media(max-width:1000px){.bulkGlobalProducts{grid-template-columns:1fr}.bulkCardOpeningHead{flex-direction:column}.bulkProductChoices{grid-template-columns:1fr}}
.tenantBadge{margin:10px 8px 16px;padding:10px 12px;border-radius:12px;background:#1d2730;color:#dbe4ec;font-size:12px;line-height:1.4}.tenantBadge b{display:block;color:#fff;font-size:13px}.userCreateGrid{margin-top:16px}.userActions{display:flex;gap:8px;flex-wrap:wrap}.miniBtn{padding:7px 10px;border-radius:9px;font-size:12px}.statusActive{color:#087f5b;font-weight:700}.statusDisabled{color:#c92a2a;font-weight:700}
.serverBulkBox{border:1px solid #dbe3ea;border-radius:20px;padding:20px;margin:18px 0 24px;background:#f8fafc}.serverBulkBox .tableWrap{margin-top:14px}.serverBatchRow{cursor:pointer}.serverBatchRow:hover{background:#eef6ff}

/* V3 Step 9: operator-first bulk workspace */
.operatorBulkWorkspace{margin-top:18px;padding:22px;border:1px solid #dbe3ea;border-radius:20px;background:#fff}
.operatorBulkWorkspace .bulkInputs{margin-top:0}
.operatorBulkWorkspace .tableWrap{margin-top:18px}
.helpInline{font-weight:400;color:#7b8794;font-size:.86em}
.technicalPanel{margin-top:18px;border:1px solid #dbe3ea;border-radius:16px;background:#f8fafc;overflow:hidden}
.technicalPanel>summary{cursor:pointer;padding:16px 18px;font-weight:800;color:#52606d;user-select:none}
.technicalPanel[open]>summary{border-bottom:1px solid #e4e9ef;background:#f3f6f9}
.technicalPanel .serverBulkBox,.technicalPanel.legacyPanel>p,.technicalPanel.legacyPanel>.bulkInputs,.technicalPanel.legacyPanel>.bulkActions,.technicalPanel.legacyPanel>.out,.technicalPanel.legacyPanel>.bulkReviewGrid,.technicalPanel.legacyPanel>.bulkCardOpening{margin-left:16px;margin-right:16px}
.technicalPanel .serverBulkBox{margin-bottom:16px}
.legacyPanel{opacity:.94}

.singlePhoneCheck{
  margin:16px 0;
  border:1px solid #dce4ea;
  border-radius:16px;
  background:#fff;
  padding:16px;
}
.singlePhoneCheck .phoneCheckRow{
  margin-top:12px;
}


/* 2026-08 navigation and operator workspace polish */
.sidebar{padding:20px 14px 16px!important;gap:0!important;overflow:auto;position:sticky;top:0;height:100vh}
.sidebarBrand{padding:2px 10px 0!important;margin-bottom:12px!important;font-size:20px!important}
.sidebarNav{display:flex;flex-direction:column;gap:6px}
.navSection{padding:12px 0;border-top:1px solid rgba(255,255,255,.08)}
.navSection:first-child{border-top:0;padding-top:2px}
.navSectionLabel{padding:0 10px 7px;color:#718091;font-size:10px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.nav{width:100%;display:flex;align-items:center;gap:10px;padding:10px 11px!important;border-radius:10px!important;font-size:13px;transition:background .15s ease,color .15s ease,opacity .15s ease}
.nav .navIcon{width:20px;height:20px;display:grid;place-items:center;border-radius:6px;background:rgba(255,255,255,.055);color:#97a6b5;font-weight:800;flex:0 0 20px}
.nav.active{background:#26313d!important;color:#fff!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.04)}
.nav.active .navIcon{background:#375bd2;color:#fff}
.nav.upayLocked{opacity:.42;cursor:not-allowed}
.sidebarFooter{margin-top:auto;padding-top:12px;border-top:1px solid rgba(255,255,255,.08)}
.sidebarFooter .mode{margin:0 0 8px!important;background:#18252f!important;border-color:#2c3c49!important;color:#8ea1b2!important}
.sidebarFooter .ghost{width:100%;padding:10px 11px}
.topbar{height:auto!important;min-height:88px;padding:20px 0 18px;border-bottom:1px solid #e5e9ed;margin-bottom:20px;gap:24px}
.topbar h2{display:block!important;margin:0 0 5px!important;font-size:24px}
.sectionDescription{color:#74808d;font-size:13px;line-height:1.4;max-width:720px}
.connectionStatus{display:flex;align-items:center;gap:7px;white-space:nowrap;padding:8px 11px;border:1px solid #e0e5ea;border-radius:999px;background:#fff;color:#52606d;font-size:12px;font-weight:700}
.connectionStatus .dot{margin:0!important}
button:disabled{opacity:.42!important;cursor:not-allowed!important;filter:saturate(.75)}
.buttonLink:hover{opacity:.92}
.bulkActions{align-items:center;flex-wrap:wrap}
.bulkTable thead th{font-size:11px;text-transform:uppercase;letter-spacing:.035em;color:#65717e;background:#f5f7f9;border-bottom:1px solid #dfe5ea}
.bulkTable tbody tr:hover{background:#fafcfd}
.bulkTable td{border-bottom:1px solid #edf0f2}
.bulkStateBadge.approved,.bulkStateBadge.connected,.bulkStateBadge.success,.bulkStateBadge.submitted,.bulkStateBadge.reconciled{background:#e2f7eb;color:#237a42}
.bulkStateBadge.unverified,.bulkStateBadge.idle{background:#eef2f5;color:#65717e}
.bulkStateBadge.failed{background:#fde7e7;color:#b83b3b}
@media(max-width:850px){.sidebar{position:relative;height:auto}.sidebarNav{width:100%}.navSection{width:100%}.topbar{align-items:flex-start;flex-direction:column}.connectionStatus{white-space:normal}}

/* 2026-08-23 operator workflow polish */
.bulkWorkflowSummary{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:10px;margin:14px 0 12px}
.bulkSummaryMetric{border:1px solid #dfe6eb;border-radius:13px;background:#fff;padding:11px 12px;min-width:0}
.bulkSummaryMetric small{display:block;color:#718091;font-size:10px;font-weight:850;letter-spacing:.04em;text-transform:uppercase}
.bulkSummaryMetric strong{display:block;margin-top:5px;font-size:22px;line-height:1;color:#17202a}
.bulkSummaryMetric.success{background:#f3fbf6;border-color:#d4ebdc}.bulkSummaryMetric.success strong{color:#237a42}
.bulkSummaryMetric.ready{background:#eef5ff;border-color:#d8e5fb}.bulkSummaryMetric.ready strong{color:#315ec8}
.bulkStatusGuide{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:10px 0 4px;padding:9px 11px;border:1px solid #e3e8ed;border-radius:11px;background:#fafbfc;color:#64717d;font-size:11px;font-weight:700}
.bulkStatusGuide span{display:inline-flex;align-items:center;gap:6px}.statusDot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#9aa5ae}.statusDot.good{background:#35a15f}.statusDot.warn{background:#d59400}.statusDot.ready{background:#4b75d1}.statusDot.bad{background:#d84b4b}
.templateQuickGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0 20px}
.templateQuickCard{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:14px 15px;border:1px solid #dde5eb;border-radius:14px;background:#fbfcfd;color:#17202a;text-decoration:none;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}
.templateQuickCard:hover{border-color:#b8c9da;box-shadow:0 8px 24px rgba(23,32,42,.08);transform:translateY(-1px)}
.templateQuickCard div{min-width:0}.templateQuickCard strong{display:block;font-size:14px}.templateQuickCard small{display:block;margin-top:3px;color:#718091;line-height:1.35}.templateQuickCard>b{font-size:12px;color:#315ec8}
.templateIcon{display:grid;place-items:center;width:46px;height:38px;border-radius:9px;background:#eaf1ff;color:#315ec8;font-size:10px;font-weight:900;letter-spacing:.03em}
@media(max-width:1100px){.bulkWorkflowSummary{grid-template-columns:repeat(3,minmax(120px,1fr))}}
@media(max-width:760px){.bulkWorkflowSummary,.templateQuickGrid{grid-template-columns:1fr}.templateQuickCard{grid-template-columns:auto 1fr}.templateQuickCard>b{grid-column:2}}

/* Global quality pass */
button:disabled{opacity:.42;cursor:not-allowed;filter:saturate(.7)}
.nav.upayLocked{opacity:.48;cursor:not-allowed}
.bulkKycSourceCell{display:grid;gap:6px;min-width:170px}.bulkKycSourceCell select{width:100%;border:1px solid #d5dce3;border-radius:7px;padding:6px 8px;background:#fff;font:inherit}.bulkKycSourceCell .miniBtn{width:100%}
.connectionStatus{white-space:nowrap}.topbar{position:sticky;top:0;z-index:30;background:#f4f6f8ef;backdrop-filter:blur(8px)}

/* Group Transactions workspace */
.groupTransactionsCard{overflow:hidden}
.groupTransactionsHead{align-items:flex-start;gap:18px}
.groupTransactionsHead .helpText{margin:6px 0 0;max-width:760px}
.groupTransactionsLayout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:18px;align-items:start}
.groupTransactionsSidebar{position:sticky;top:18px;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc;padding:12px;max-height:calc(100vh - 155px);overflow:auto}
.groupTransactionsSidebarHead{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;color:#0f172a}
.groupTransactionsSidebarHead span{min-width:28px;text-align:center;padding:2px 7px;border-radius:999px;background:#e2e8f0;color:#475569;font-size:12px;font-weight:700}
.groupTransactionsSidebar input{width:100%;box-sizing:border-box;margin-bottom:10px}
.groupTransactionsGroupList{display:flex;flex-direction:column;gap:6px}
.groupTransactionsGroup{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:10px 11px;border:1px solid transparent;border-radius:10px;background:transparent;color:#0f172a;text-align:left;cursor:pointer}
.groupTransactionsGroup:hover{background:#fff;border-color:#dbe4ee}
.groupTransactionsGroup.active{background:#fff;border-color:#94a3b8;box-shadow:0 1px 2px rgba(15,23,42,.06)}
.groupTransactionsGroup strong{font-size:13px;line-height:1.25}
.groupTransactionsGroup small{font-size:11px;color:#64748b;word-break:break-all}
.groupTransactionsEmpty{padding:16px 8px;color:#64748b;font-size:13px;text-align:center}
.groupTransactionsContent{min-width:0}
.groupTransactionsTotals{margin:12px 0 18px}
.groupTransactionsSectionTitle{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:18px 0 8px}
.groupTransactionsSectionTitle strong{color:#0f172a}
.groupTransactionsSectionTitle span{font-size:12px;color:#64748b}
@media(max-width:980px){.groupTransactionsLayout{grid-template-columns:1fr}.groupTransactionsSidebar{position:static;max-height:280px}.groupTransactionsHead{flex-direction:column}}

/* Expandable group transaction totals */
.groupCustomerSummary{cursor:pointer}
.groupCustomerSummary:hover{background:#f8fafc}
.groupCustomerSummary.expanded{background:#f1f5f9}
.groupExpandBtn{width:28px;height:28px;padding:0;border:0;border-radius:7px;background:#eef2f7;color:#334155;font-size:20px;line-height:1}
.groupCustomerEmail{display:block;margin-top:3px;color:#64748b;font-size:11px}
.groupMoneyLine{white-space:nowrap;font-variant-numeric:tabular-nums}
.groupMoneyLine b{font-size:10px;color:#64748b;margin-right:4px}
.groupCustomerDetailRow>td{padding:0!important;background:#f8fafc}
.groupCustomerDetail{padding:14px 18px 18px;display:grid;gap:14px}
.groupCustomerDetail>div>strong{display:block;margin-bottom:8px;color:#0f172a}
.groupDetailCards{display:flex;flex-wrap:wrap;gap:8px}
.groupDetailCards span{padding:7px 10px;border:1px solid #dbe4ee;border-radius:9px;background:#fff;font-size:12px}
.groupDetailEmpty{padding:10px 0;color:#64748b;font-size:12px}
.groupNestedTx{background:#fff}
.groupTotalWide{grid-column:1/-1!important;align-items:flex-start!important}
.groupTotalCurrency{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.groupTotalCurrency span{padding:7px 10px;border:1px solid #dbe4ee;border-radius:9px;background:#fff;font-size:12px;font-variant-numeric:tabular-nums}
.groupCustomerTable td{vertical-align:top}

/* Group Transactions month filtering */
.groupMonthBar{display:flex;align-items:end;justify-content:space-between;gap:14px;margin:12px 0 14px;padding:12px 14px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc}
.groupMonthBar label{display:flex;flex-direction:column;gap:5px;min-width:220px}.groupMonthBar label span{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#64748b}.groupMonthBar select{min-width:220px;background:#fff}.groupMonthSummary{font-size:12px;color:#475569;padding-bottom:8px}.groupTransactionsCollapseBar{margin:18px 0 8px}.groupTransactionsToggle{width:100%;display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid #dbe4ee;border-radius:10px;background:#f8fafc;color:#0f172a;text-align:left;cursor:pointer}.groupTransactionsToggle:hover{background:#fff}.groupTransactionsToggleMeta{margin-left:auto}.groupTransactionsToggle #groupTransactionsToggleMeta{margin-left:auto;font-size:12px;font-weight:500;color:#64748b}.groupTransactionsArrow{width:16px;font-size:18px;line-height:1;color:#475569}.groupTransactionsToggle.expanded{background:#fff;border-color:#cbd5e1}@media(max-width:760px){.groupMonthBar{align-items:stretch;flex-direction:column}.groupMonthBar label,.groupMonthBar select{min-width:0;width:100%}.groupMonthSummary{padding-bottom:0}}

/* Owner-only contact pool */
#contactPool table td,#contactPool table th{white-space:nowrap}#contactPool .tableWrap{margin-top:18px}#openingPhoneGenerate:disabled,#openingAddressGenerate:disabled{opacity:.45;cursor:not-allowed}
