/* CYBS v4.6.0 - UX/UI rearchitecture, mobile-first hardening and asset consistency */
:root{
  --ui-bg:#f5f8f7;
  --ui-surface:#ffffff;
  --ui-surface-2:#f8fbfa;
  --ui-border:#dce8e4;
  --ui-border-strong:#bdd2ca;
  --ui-text:#18332a;
  --ui-muted:#66776f;
  --ui-primary:#007a49;
  --ui-primary-dark:#005f38;
  --ui-primary-soft:#e7f5ef;
  --ui-accent:#36bfe2;
  --ui-warning:#fff5df;
  --ui-danger:#b42318;
  --ui-radius:18px;
  --ui-radius-sm:12px;
  --ui-shadow:0 18px 50px rgba(8, 52, 36, .10);
  --ui-shadow-soft:0 10px 30px rgba(8, 52, 36, .08);
  --safe-bottom: env(safe-area-inset-bottom, 0px);
}
html{height:100%;}
body{min-height:100%;background:linear-gradient(180deg,#eef8f5 0%,#f8fbfa 48%,#ffffff 100%);color:var(--ui-text);}
*{box-sizing:border-box;}
img{max-width:100%;height:auto;}
button,input,select,textarea{font:inherit;max-width:100%;}
button,.button{touch-action:manipulation;}
body.navOpen{overflow:hidden;}
body.navOpen::after{content:"";position:fixed;inset:0;background:rgba(6,35,25,.48);z-index:80;backdrop-filter:blur(2px);} 

/* Top bars */
.topbar,.modernTop,.panelTopbar{position:sticky;top:0;z-index:70;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px clamp(14px,3vw,28px);background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--ui-border);box-shadow:0 8px 24px rgba(13,60,42,.08);}
.brandHead{display:flex;align-items:center;gap:12px;min-width:0;}
.brandHead img{width:44px;height:44px;object-fit:contain;border-radius:12px;background:#fff;padding:4px;border:1px solid rgba(0,0,0,.06);}
.brandHead strong{display:block;line-height:1.1;font-size:clamp(1rem,2.5vw,1.2rem);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:52vw;}
.brandHead .badge,#topSub{margin-top:4px;display:inline-flex;}
.topActions,.topbarActions,.topbarUserArea{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;min-width:0;}
.mobileMenuBtn{display:none;align-items:center;gap:8px;border:1px solid var(--ui-border);background:var(--ui-surface);color:var(--ui-primary-dark);border-radius:999px;padding:10px 13px;font-weight:800;box-shadow:var(--ui-shadow-soft);}
.mobileMenuBtn .menuBars{font-size:1.2rem;line-height:1;}
.mobileNavClose{display:none;}
.contextChip,.badge,.neutralBadge,.statusPill{border-radius:999px;white-space:nowrap;}

/* Admin shell */
.adminShell{display:grid;grid-template-columns:280px minmax(0,1fr);gap:20px;align-items:start;max-width:1580px;margin:0 auto;padding:20px clamp(14px,3vw,30px) 36px;}
.adminNav{position:sticky;top:86px;max-height:calc(100vh - 106px);overflow:auto;border:1px solid var(--ui-border);background:rgba(255,255,255,.96);border-radius:var(--ui-radius);padding:14px;box-shadow:var(--ui-shadow-soft);}
.adminNav::-webkit-scrollbar{width:8px}.adminNav::-webkit-scrollbar-thumb{background:#c8dad4;border-radius:20px}
.adminNav button{width:100%;display:flex;align-items:center;gap:10px;text-align:left;border:1px solid transparent;background:transparent;color:var(--ui-text);padding:11px 12px;border-radius:12px;margin:2px 0;cursor:pointer;font-weight:750;transition:background .18s,border .18s,transform .18s,color .18s;}
.adminNav button:hover{background:var(--ui-primary-soft);border-color:#d2eadf;}
.adminNav button.active{background:linear-gradient(135deg,var(--ui-primary),var(--ui-primary-dark));color:#fff;border-color:var(--ui-primary-dark);box-shadow:0 8px 22px rgba(0,122,73,.22);}
.navGroupTitle{font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ui-muted);font-weight:900;margin:14px 8px 7px;}
.adminContent{min-width:0;display:block;}
.adminTab{background:rgba(255,255,255,.90);border:1px solid var(--ui-border);border-radius:24px;padding:clamp(16px,3vw,30px);box-shadow:var(--ui-shadow);min-width:0;}
.adminTab.hidden{display:none!important;}
.adminTab h1{font-size:clamp(1.65rem,4vw,2.55rem);line-height:1.08;margin:0 0 12px;color:#06573a;letter-spacing:-.03em;}
.adminTab h2{font-size:clamp(1.15rem,2.5vw,1.55rem);line-height:1.2;}
.muted{color:var(--ui-muted);line-height:1.55;}
.card,.cardForm,.previewCard,.heroPanel,.roleAccessMatrixCard,.diagBox,.resultBox,.specialTxPanel{border:1px solid var(--ui-border);border-radius:var(--ui-radius);background:var(--ui-surface);box-shadow:var(--ui-shadow-soft);padding:clamp(15px,2.5vw,22px);min-width:0;}
.heroPanel{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;background:linear-gradient(135deg,#ffffff 0%,#effaf5 100%);}
.heroBadge{border-radius:999px;background:var(--ui-primary-soft);color:var(--ui-primary-dark);font-weight:900;padding:10px 14px;white-space:nowrap;}
.kpiGrid,.dashboardGrid,.roleMatrixGrid,.landingFeatureGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;}
.kpi{background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:var(--ui-radius);padding:16px;min-width:0;box-shadow:var(--ui-shadow-soft);}
.kpi strong{font-size:clamp(1.5rem,4vw,2.1rem);color:var(--ui-primary-dark);display:block;}
.kpi span,.kpi small{display:block;color:var(--ui-muted);overflow-wrap:anywhere;}
.split,.consoleGrid,.mailGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start;}
.formGrid,.filterBar,.brandToolbar,.buttonRow,.compactBar{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;align-items:end;}
.formGrid.two{grid-template-columns:repeat(2,minmax(0,1fr));}
.filterBar{background:var(--ui-surface-2);border:1px solid var(--ui-border);border-radius:var(--ui-radius);padding:14px;margin:14px 0 18px;}
label{display:block;color:#314039;font-weight:760;line-height:1.3;}
input,select,textarea{width:100%;margin-top:6px;border:1px solid var(--ui-border-strong);border-radius:12px;background:#fff;color:var(--ui-text);padding:11px 12px;outline:none;transition:border .15s,box-shadow .15s;}
textarea{resize:vertical;min-height:90px;}
input:focus,select:focus,textarea:focus{border-color:var(--ui-primary);box-shadow:0 0 0 3px rgba(0,122,73,.14);}
.button,button.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--ui-primary);border-radius:999px;background:var(--ui-primary);color:#fff;font-weight:850;text-decoration:none;padding:11px 16px;min-height:42px;cursor:pointer;box-shadow:0 8px 18px rgba(0,122,73,.18);}
.button.secondary{background:#fff;color:var(--ui-primary-dark);border-color:var(--ui-border-strong);box-shadow:none;}
.button.danger{background:var(--ui-danger);border-color:var(--ui-danger);}
.smallBtn,.button.smallBtn{padding:8px 12px;min-height:34px;font-size:.9rem;}
.notice{background:#eef8ff;border:1px solid #c7e7f5;color:#1b5165;border-radius:var(--ui-radius-sm);padding:12px 14px;line-height:1.5;}
.message{min-height:22px;color:var(--ui-primary-dark);font-weight:700;}

/* Tables */
.tableScroll,.rolePermissionTableWrap,#reportsTable,#sandboxCardsTable,#sandboxMatrixTable,#cybsDictionaryTable,.matrixTable{width:100%;overflow:auto;-webkit-overflow-scrolling:touch;border-radius:var(--ui-radius-sm);}
table,.simpleTable,.rolePermissionTable{width:100%;border-collapse:separate;border-spacing:0;min-width:720px;background:#fff;border:1px solid var(--ui-border);border-radius:var(--ui-radius-sm);overflow:hidden;}
th{background:#f1f8f5;color:#214035;text-align:left;font-size:.84rem;text-transform:uppercase;letter-spacing:.04em;font-weight:900;}
th,td{padding:12px 13px;border-bottom:1px solid var(--ui-border);vertical-align:middle;}
tr:last-child td{border-bottom:0;}
td{overflow-wrap:anywhere;}
.codeArea,pre.diagBox{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.88rem;line-height:1.5;white-space:pre-wrap;overflow:auto;}

/* Special transactions */
.specialTxHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px;}
.specialTxHeader p{max-width:900px;margin:0;color:var(--ui-muted);}
.specialTxToolbar{display:grid;grid-template-columns:minmax(220px,1.2fr) minmax(150px,.8fr) minmax(150px,.7fr) auto;gap:12px;align-items:end;margin:14px 0;}
.specialTxTable{min-width:820px;}
.specialTxName{display:flex;flex-direction:column;gap:4px;}
.specialTxName strong{color:var(--ui-text);}
.specialTxName small{color:var(--ui-muted);}
.txBadge,.statusBadge,.codeBadge{display:inline-flex;align-items:center;width:max-content;max-width:100%;border-radius:999px;padding:5px 9px;font-weight:850;font-size:.82rem;white-space:nowrap;}
.txBadge{background:#eef4f2;color:#315146;border:1px solid #d8e7e1;}
.statusBadge.active{background:#e7f5ef;color:#00633b;border:1px solid #bfe4d1;}
.statusBadge.inactive{background:#fff2f2;color:#9d251f;border:1px solid #ffd1cd;}
.codeBadge{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:#101d17;color:#fff;border:1px solid #101d17;}
.codeBadge.empty{background:#f6f8f7;color:#677970;border-color:#e0e8e4;}
.specialTxEditorGrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.85fr);gap:18px;align-items:start;margin-top:18px;}
.specialTxActions{display:flex;justify-content:flex-end;gap:8px;}

/* Public / login / panel mobile hardening */
.landingShell,.loginShell,.layout{width:min(1180px,100%);margin-inline:auto;padding:clamp(16px,4vw,32px);display:grid;gap:20px;}
.loginShell{grid-template-columns:minmax(0,1fr) minmax(320px,420px);align-items:center;min-height:calc(100vh - 20px);}
.landingShell{grid-template-columns:1fr;}
.layout{grid-template-columns:repeat(2,minmax(0,1fr));}
.card.wide,.wide{grid-column:1/-1;}
.center-page{display:grid;place-items:center;padding:clamp(16px,4vw,32px);}
.center-page .card,.pay-card{width:min(760px,100%);}
.payBrand{display:flex;align-items:center;gap:14px;}
.payBrand img{width:68px;height:68px;object-fit:contain;}
.resultBox,.copyLinkBox{overflow-wrap:anywhere;}
.copyLinkBox{display:flex;gap:8px;align-items:center;}

/* Brand asset consistency */
.brandLivePreview img,#brandLogo{object-fit:contain;}
.brandLogoLarge{max-height:72px;object-fit:contain;}

/* Mobile */
@media (max-width: 980px){
  .topbar,.modernTop,.panelTopbar{align-items:flex-start;flex-wrap:wrap;padding:10px 12px;}
  .mobileMenuBtn{display:inline-flex;order:0;}
  .brandHead{flex:1;min-width:180px;}
  .topActions,.topbarActions,.topbarUserArea{width:100%;justify-content:flex-start;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .topActions .contextChip,.topbarActions #userInfo{grid-column:1/-1;white-space:normal;}
  .topActions .button,.topbarActions .button{width:100%;}
  .adminShell{display:block;padding:14px 12px 28px;}
  .adminNav{position:fixed;left:0;top:0;bottom:0;width:min(86vw,340px);max-height:none;border-radius:0 24px 24px 0;z-index:100;transform:translateX(-105%);transition:transform .24s ease;box-shadow:18px 0 50px rgba(0,0,0,.22);padding:16px 14px calc(18px + var(--safe-bottom));}
  body.navOpen .adminNav{transform:translateX(0);}
  .mobileNavClose{display:flex;width:100%;align-items:center;justify-content:space-between;border:1px solid var(--ui-border);background:#f7fbf9;border-radius:14px;margin-bottom:10px;padding:12px 14px;font-weight:900;color:var(--ui-primary-dark);}
  .adminContent{width:100%;}
  .adminTab{border-radius:18px;padding:16px;}
  .heroPanel,.specialTxHeader{display:block;}
  .heroBadge{margin-top:12px;display:inline-flex;}
  .split,.consoleGrid,.mailGrid,.specialTxEditorGrid,.loginShell,.layout{grid-template-columns:1fr;}
  .formGrid.two{grid-template-columns:1fr;}
  .specialTxToolbar{grid-template-columns:1fr;}
  .buttonRow{grid-template-columns:1fr;}
  .buttonRow .button,.filterBar .button,.brandToolbar .button{width:100%;}
  table,.simpleTable,.rolePermissionTable,.specialTxTable{min-width:680px;}
  .payBrand{align-items:flex-start;}
  .copyLinkBox{display:grid;grid-template-columns:1fr;}
  .codeArea{min-height:220px;}
}
@media (max-width: 560px){
  .brandHead img{width:38px;height:38px;}
  .brandHead strong{max-width:calc(100vw - 110px);font-size:1rem;}
  .topActions,.topbarActions,.topbarUserArea{grid-template-columns:1fr;}
  .adminTab h1{font-size:1.55rem;}
  .kpiGrid,.dashboardGrid,.roleMatrixGrid,.landingFeatureGrid{grid-template-columns:1fr;}
  .card,.cardForm,.previewCard,.heroPanel,.roleAccessMatrixCard,.diagBox,.resultBox,.specialTxPanel{padding:14px;border-radius:16px;}
  .filterBar{grid-template-columns:1fr;}
  .button,.button.secondary,.button.danger{width:100%;}
  .smallBtn,.button.smallBtn{width:auto;}
  input,select,textarea{font-size:16px;}
  .specialTxActions{justify-content:flex-start;}
  .payBrand img{width:56px;height:56px;}
}
@media (min-width: 981px){
  .mobileNavClose{display:none!important;}
}


/* v4.6.2 - navegación funcional por rol en Panel operativo */
.panelFunctionalNav{position:sticky;top:70px;z-index:60;display:flex;gap:8px;align-items:center;max-width:1180px;margin:10px auto 0;padding:8px clamp(12px,3vw,28px);overflow-x:auto;-webkit-overflow-scrolling:touch;background:rgba(255,255,255,.92);border:1px solid var(--ui-border);border-radius:999px;box-shadow:var(--ui-shadow-soft);}
.panelFunctionalNav::-webkit-scrollbar{height:6px}.panelFunctionalNav::-webkit-scrollbar-thumb{background:#c8dad4;border-radius:20px}
.panelNavItem{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:0 0 auto;min-height:40px;padding:9px 14px;border-radius:999px;border:1px solid transparent;color:var(--ui-primary-dark);text-decoration:none;font-weight:850;white-space:nowrap;}
.panelNavItem:hover{background:var(--ui-primary-soft);border-color:#d2eadf;}
.panelNavItem.active{background:linear-gradient(135deg,var(--ui-primary),var(--ui-primary-dark));color:#fff;box-shadow:0 8px 18px rgba(0,122,73,.18);}
.viewerPanelNotice{grid-column:1/-1;border-color:#c7e7f5;background:#f4fbff;}
.viewerHiddenOperation{display:none!important;}
@media (max-width:980px){.panelFunctionalNav{top:116px;margin:8px 12px 0;border-radius:18px;padding:8px;}.panelMenuBtn{display:inline-flex;}}
@media (max-width:560px){.panelFunctionalNav{top:146px;}.panelNavItem{min-height:38px;padding:8px 12px;font-size:.92rem;}}


/* Test Console UX/UI refinements */
#tab-testConsole{
  overflow:hidden;
}
#tab-testConsole .testConsoleFilters{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;
  align-items:end!important;
  gap:14px!important;
}
#tab-testConsole .testDryRunLine{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:46px;
  padding:10px 4px;
}
#tab-testConsole .testConsoleGrid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:18px!important;
  align-items:start!important;
}
#tab-testConsole .consolePane{
  min-width:0;
  width:100%;
  overflow:hidden;
}
#tab-testConsole .consolePane > .button,
#tab-testConsole .consolePane > button{
  margin:0 8px 10px 0;
}
#tab-testConsole .codeArea{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  resize:vertical;
  overflow:auto!important;
  white-space:pre!important;
  overflow-wrap:normal!important;
  min-height:320px;
}
#testSummary.previewCard{
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  overflow-wrap:anywhere;
}
#testSummary .diagSummary,
#testSummary .resultCard,
#testSummary .readableResult,
#testSummary [class*="result"]{
  max-width:100%;
  box-sizing:border-box;
}
.prodRunWarning{
  margin:14px 0 18px;
  padding:14px 16px;
  border-radius:18px;
  border:1px solid rgba(185,28,28,.24);
  background:rgba(254,242,242,.9);
  color:#7f1d1d;
  font-weight:750;
  line-height:1.45;
}
.prodRunWarning strong{
  display:block;
  margin-bottom:4px;
  color:#991b1b;
}
.prodRunWarning.hidden{
  display:none!important;
}
@media(max-width:1100px){
  #tab-testConsole .testConsoleGrid{
    grid-template-columns:1fr!important;
  }
  #tab-testConsole .codeArea{
    min-height:260px;
  }
}
@media(max-width:640px){
  #tab-testConsole .testConsoleFilters{
    grid-template-columns:1fr!important;
  }
  #tab-testConsole .consolePane > .button,
  #tab-testConsole .consolePane > button{
    width:100%;
    margin-right:0;
  }
  #tab-testConsole h1{
    font-size:clamp(1.75rem,9vw,2.4rem);
  }
}

/* Credenciales enmascaradas + Test Console legible */
.credentialLine{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;}
.credentialMaskHint{display:block;margin-top:6px;color:#5f746b;font-weight:800;font-size:.84rem;letter-spacing:.01em;overflow-wrap:anywhere;}
.credentialRevealBox{margin-top:16px;}
.credentialIdentityCard{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-top:14px;}
.credentialIdentityCard>div{border:1px solid var(--ui-border);background:#f8fcfa;border-radius:14px;padding:11px 12px;min-width:0;}
.credentialIdentityCard span{display:block;color:var(--ui-muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;font-weight:900;margin-bottom:4px;}
.credentialIdentityCard strong{display:block;color:var(--ui-text);font-size:.94rem;overflow-wrap:anywhere;}
.monoValue{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;}
.okText{color:#047857;}
.testReadableSummary{display:grid;gap:12px;}
.diagMiniGrid.compact{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));}

#tab-testConsole .testConsoleGrid{grid-template-columns:minmax(360px,.9fr) minmax(520px,1.35fr)!important;}
#tab-testConsole .consolePane{border:1px solid var(--ui-border);border-radius:20px;background:#fff;padding:16px;box-shadow:var(--ui-shadow-soft);}
#tab-testConsole .consolePane h3{margin:12px 0 8px;color:#0f3f2d;}
#tab-testConsole .codeArea{background:#0b1620!important;color:#eaf2ff!important;border:1px solid #24384d!important;border-radius:16px!important;padding:14px!important;line-height:1.45!important;font-size:.84rem!important;tab-size:2;}
#testResponse.codeArea{min-height:420px;}
#testRequest.codeArea{min-height:360px;}
#testSummary.previewCard{margin-bottom:14px;background:#fbfefd;}
#testSummary .diagResult{display:grid;gap:12px;max-width:100%;overflow:hidden;}
#testSummary .diagMiniGrid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))!important;gap:10px!important;}
#testSummary .diagMiniGrid>div{min-width:0;overflow:hidden;}
#testSummary .diagMiniGrid span{display:block;overflow-wrap:anywhere;word-break:break-word;}
#testSummary .diagFinding{overflow-wrap:anywhere;word-break:break-word;}
#cybsControlPanel{margin-top:16px;max-width:100%;overflow:hidden;}
.cybsControlDetails{border:1px solid var(--ui-border);border-radius:18px;background:#fff;box-shadow:var(--ui-shadow-soft);padding:0;overflow:hidden;margin-top:12px;}
.cybsControlDetails>summary{cursor:pointer;padding:14px 16px;font-weight:900;color:#0f3f2d;background:#f1f8f5;list-style:none;}
.cybsControlDetails>summary::-webkit-details-marker{display:none;}
.cybsControlDetails[open]>summary{border-bottom:1px solid var(--ui-border);}
.cybsControlDetails h4{margin:16px 16px 10px;color:#0f3f2d;}
.cybsMiniCols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0 14px 14px;align-items:start;}
.miniTableWrap,.tableWrap{width:100%;max-width:100%;overflow:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--ui-border);border-radius:14px;background:#fff;}
#cybsControlPanel table,#tab-sandboxData table{min-width:640px;table-layout:fixed;}
#cybsControlPanel th,#cybsControlPanel td,#tab-sandboxData th,#tab-sandboxData td{white-space:normal;overflow-wrap:anywhere;word-break:break-word;vertical-align:top;}
#cybsControlPanel code,#tab-sandboxData code{white-space:normal;overflow-wrap:anywhere;}
@media(max-width:1180px){
  #tab-testConsole .testConsoleGrid{grid-template-columns:1fr!important;}
  .cybsMiniCols{grid-template-columns:1fr;}
}
@media(max-width:640px){
  .credentialLine{grid-template-columns:1fr;}
  .credentialLine .button{width:100%;}
  #testResponse.codeArea,#testRequest.codeArea{min-height:300px;}
  #cybsControlPanel table,#tab-sandboxData table{min-width:560px;}
}

/* v4.7.30 integrated — white label neutral design, mobile-first fixes and support tooling */
:root{
  --ui-bg:#f7f8fa;--ui-surface:#ffffff;--ui-border:#dfe4ea;--ui-text:#17202a;--ui-muted:#5b6776;
  --ui-primary:#1f4fd8;--ui-primary-contrast:#ffffff;--ui-success:#16794f;--ui-danger:#b42318;--ui-warning:#a15c00;--ui-info:#175cd3;
}
body.modern{background:var(--ui-bg);color:var(--ui-text)}
.button{background:var(--ui-primary);color:var(--ui-primary-contrast);border:1px solid transparent;white-space:normal;line-height:1.2}
.button.secondary{background:var(--ui-surface);color:var(--ui-text);border-color:var(--ui-border)}
.button.danger{background:var(--ui-danger);color:#fff}
.notice{background:#f0f6ff;color:#13315f;border:1px solid #c8dafc}.warning{background:#fff7ed;color:#7c2d12;border:1px solid #fed7aa}
.adminShell,.split,.consoleGrid,.testConsoleGrid,.specialTxEditorGrid,.formGrid,.brandToolbar,.filterBar{min-width:0}.adminContent,.adminTab,.cardForm,.previewCard,.consolePane{min-width:0;max-width:100%;box-sizing:border-box}
input,select,textarea{max-width:100%;box-sizing:border-box}textarea.codeArea{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.35;white-space:pre;overflow:auto;resize:vertical}
.tableWrap,.tableScroll{width:100%;max-width:100%;overflow:auto}.tableWrap table,.tableScroll table{min-width:720px}.monoValue,.monoInput,code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;word-break:break-all}
.brandToolbar{display:grid;grid-template-columns:minmax(220px,1fr) auto auto auto;gap:12px;align-items:end}.brandToolbar label{min-width:0}.split{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(320px,1.1fr);gap:18px}.split>*{min-width:0}.brandLivePreview img,.previewCard img{max-width:100%;height:auto}
.testConsoleFilters{display:grid;grid-template-columns:repeat(6,minmax(150px,1fr));gap:12px;align-items:end}.testConsoleGrid{display:grid;grid-template-columns:minmax(320px,1fr) minmax(320px,1fr);gap:18px;align-items:start}.consolePane{overflow:hidden}.credentialIdentityCard{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-top:12px}.credentialIdentityCard>div{background:#f8fafc;border:1px solid var(--ui-border);border-radius:10px;padding:10px}.credentialIdentityCard span{display:block;color:var(--ui-muted);font-size:12px}.specialDataPanel{margin:12px 0}.specialDataBox{display:grid;grid-template-columns:minmax(220px,1fr) minmax(160px,220px) auto minmax(120px,180px);gap:12px;align-items:end;background:#f8fafc;border:1px solid var(--ui-border);border-radius:14px;padding:14px}.supportActionsWrap{display:inline-block;position:relative}.supportActionsMenu{position:absolute;z-index:40;top:calc(100% + 8px);left:0;background:#fff;border:1px solid var(--ui-border);box-shadow:0 16px 40px rgba(15,23,42,.16);border-radius:12px;min-width:230px;padding:8px}.supportActionsMenu button{display:block;width:100%;text-align:left;background:transparent;border:0;border-radius:8px;padding:10px;color:var(--ui-text);cursor:pointer}.supportActionsMenu button:hover{background:#f1f5f9}.hidden{display:none!important}
.checkoutShell{margin:16px 0;border:1px solid var(--ui-border);border-radius:16px;padding:14px;background:#fbfcfe}.paymentButtons,.paymentScreen{margin-top:12px}.paymentActions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.receipt-card{max-width:760px}.receiptGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0}.receiptRow{border:1px solid var(--ui-border);border-radius:12px;padding:12px;background:#f8fafc}.receiptRow span{display:block;color:var(--ui-muted);font-size:12px}.receiptStatus{border-radius:12px;padding:12px;margin:12px 0}.receiptStatus.sandbox{background:#fffbeb;color:#92400e;border:1px solid #fde68a}.receiptStatus.production{background:#ecfdf3;color:#027a48;border:1px solid #abefc6}
@media(max-width:980px){.testConsoleGrid,.split{grid-template-columns:1fr}.testConsoleFilters{grid-template-columns:repeat(2,minmax(0,1fr))}.brandToolbar{grid-template-columns:1fr 1fr}.specialDataBox{grid-template-columns:1fr}.topActions{flex-wrap:wrap}.adminContent{padding:14px}}
@media(max-width:640px){.testConsoleFilters,.brandToolbar,.filterBar,.formGrid,.receiptGrid{grid-template-columns:1fr!important}.button{width:100%;justify-content:center}.supportActionsWrap{width:100%}.supportActionsMenu{position:static;margin-top:8px;width:100%}.pay-card,.receipt-card{margin:10px;width:auto}.tableWrap table,.tableScroll table{min-width:640px}}
@media print{.receiptActions,.topbar,.adminNav,.button{display:none!important}.card{box-shadow:none;border:0}.center-page{background:white}}


/* v4.7.30 - Recuperación segura del flujo público de pago CYBS.
   Los contenedores se mantienen disponibles para que el SDK monte correctamente,
   pero los espacios vacíos se colapsan sin romper el checkout. */
.checkoutShell.hidden{display:none!important;}
.checkoutShell .paymentButtons,
.checkoutShell .paymentScreen{
  display:block!important;
  box-sizing:border-box;
  transition:min-height .18s ease, padding .18s ease, margin .18s ease, border-color .18s ease, opacity .18s ease;
}
.checkoutShell .paymentButtons.cybs-mount-target,
.checkoutShell .paymentScreen.cybs-mount-target{
  min-height:48px!important;
  padding:12px!important;
  margin-top:12px!important;
  opacity:1;
}
.checkoutShell .paymentButtons.cybs-active,
.checkoutShell .paymentScreen.cybs-active{
  min-height:auto!important;
  padding:14px!important;
  margin-top:12px!important;
  border-color:rgba(121,139,160,.35)!important;
  opacity:1;
}
.checkoutShell .paymentButtons.cybs-empty,
.checkoutShell .paymentScreen.cybs-empty{
  min-height:0!important;
  height:0!important;
  max-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  opacity:0!important;
  overflow:hidden!important;
}
body[data-pay-state="LOADING"] #payBtn,
body[data-pay-state="ACTIVE"] #payBtn,
body[data-pay-state="PROCESSING"] #payBtn,
body[data-pay-state="SUCCESS"] #payBtn{
  display:none!important;
}
body[data-pay-state="IDLE"] #checkoutShell,
body[data-pay-state="FAILED"] #checkoutShell,
body[data-pay-state="CANCELLED"] #checkoutShell,
body[data-pay-state="SUCCESS"] #checkoutShell{
  display:none!important;
}


/* v4.7.30 — Integración limpia: contraste, white label real, Test Console y pago público estable */
:root{
  --ui-bg:#f6f8fb;
  --ui-surface:#ffffff;
  --ui-surface-soft:#f8fafc;
  --ui-border:#d8e2ea;
  --ui-text:#17212b;
  --ui-muted:#64748b;
  --ui-primary:var(--brand-primary,#1E63C6);
  --ui-primary-contrast:#ffffff;
  --ui-danger:#b42318;
  --ui-success:#067647;
  --ui-info:#175cd3;
}
body.modern{background:linear-gradient(135deg,#f8fafc,#eef6f8);color:var(--ui-text);}
.modernTop,.adminNav,.adminContent .card,.previewCard,.consolePane,.filterBar,.checkoutShell,.receipt-card,.pay-card{background:var(--ui-surface)!important;color:var(--ui-text)!important;}
.button,button.button,a.button{background:var(--ui-primary)!important;color:var(--ui-primary-contrast)!important;border:1px solid color-mix(in srgb,var(--ui-primary) 72%,#000)!important;text-decoration:none;}
.button.secondary,a.button.secondary,button.button.secondary{background:#fff!important;color:#0f3b2f!important;border:1px solid #b7c7c1!important;}
.button.danger,button.button.danger{background:var(--ui-danger)!important;color:#fff!important;border-color:#7a271a!important;}
.button:disabled,button:disabled{opacity:.55;cursor:not-allowed;filter:grayscale(.2)}
.contextChip,.badge{background:#f5f8fb!important;color:#184e3f!important;border:1px solid #c8d8d1!important;}
.roleBadgeAdmin{background:#eff6ff!important;color:#1849a9!important;border-color:#b2ccff!important;}
.roleBadgeOps{background:#ecfdf3!important;color:#05603a!important;border-color:#abefc6!important;}
.roleBadgeViewer{background:#f8fafc!important;color:#344054!important;border-color:#d0d5dd!important;}
.notice{background:#eff8ff!important;color:#184e77!important;border-color:#b9e6fe!important;}
.warning{background:#fff7ed!important;color:#9a3412!important;border-color:#fed7aa!important;}
.adminShell,.adminContent,.adminTab,.card,.previewCard,.consolePane,.filterBar,.brandToolbar,.split,.testConsoleGrid,.testConsoleFilters{min-width:0!important;max-width:100%;box-sizing:border-box;}
.adminContent{overflow-x:hidden;}
.adminTab h1{font-size:clamp(1.7rem,4vw,3rem);line-height:1.08;word-break:normal;}
.testConsoleFilters{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;align-items:end;}
.testConsoleGrid{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)!important;}
.consolePane{padding:18px;border:1px solid var(--ui-border);border-radius:18px;}
.consolePane .buttonRow,.consolePane > .button,.consolePane > button{margin-right:8px;margin-bottom:10px;}
.codeArea{width:100%;max-width:100%;min-height:320px;overflow:auto;white-space:pre;font-size:12px;background:#101828!important;color:#f2f4f7!important;border-radius:14px!important;}
.credentialIdentityCard>div{background:#fbfcfe!important;min-width:0;overflow:hidden;}
.credentialIdentityCard strong{word-break:break-word;}
.specialDataBox{grid-template-columns:minmax(220px,1fr) minmax(180px,260px) auto!important;}
.supportActionsWrap{display:inline-block;vertical-align:top;margin:0 8px 10px 0;}
.supportActionsMenu{max-height:min(70vh,520px);overflow:auto;}
.tableWrap{overflow:auto;border-radius:14px;}
.tableWrap table{width:100%;}
.brandToolbar{grid-template-columns:minmax(180px,1fr) repeat(3,minmax(120px,auto))!important;}
.split{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;}
.split > *, .brandToolbar > *, .formGrid > *, .filterBar > *{min-width:0;}
input,select,textarea{max-width:100%!important;box-sizing:border-box!important;}
#payment-buttons.cybs-empty,#payment-screen.cybs-empty,.checkoutShell .paymentButtons.cybs-empty,.checkoutShell .paymentScreen.cybs-empty{
  min-height:0!important;height:0!important;max-height:0!important;padding:0!important;margin:0!important;border:0!important;opacity:0!important;overflow:hidden!important;
}
#payment-buttons.cybs-active,#payment-screen.cybs-active{min-height:auto!important;height:auto!important;max-height:none!important;opacity:1!important;}
#payment-buttons.cybs-mount-target,#payment-screen.cybs-mount-target{min-height:42px!important;height:auto!important;opacity:1!important;}
#checkoutLoader.hidden{display:none!important;}
.checkoutLoader{padding:14px;border:1px dashed var(--ui-border);border-radius:16px;background:#f8fafc;color:var(--ui-muted);font-weight:800;margin:12px 0;}
body[data-pay-state="LOADING"] #payBtn,body[data-pay-state="ACTIVE"] #payBtn,body[data-pay-state="PROCESSING"] #payBtn,body[data-pay-state="SUCCESS"] #payBtn{display:none!important;}
body[data-pay-state="SUCCESS"] #checkoutShell{visibility:hidden!important;height:0!important;overflow:hidden!important;}
body[data-pay-state="IDLE"] #checkoutShell,body[data-pay-state="FAILED"] #checkoutShell,body[data-pay-state="CANCELLED"] #checkoutShell{display:block!important;}
.receiptGrid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;}
.receiptActions{display:flex;gap:10px;flex-wrap:wrap;}
@media(max-width:980px){
  .testConsoleGrid,.split{grid-template-columns:1fr!important;}
  .brandToolbar{grid-template-columns:1fr 1fr!important;}
  .specialDataBox{grid-template-columns:1fr!important;}
}
@media(max-width:680px){
  .adminShell{display:block!important;}
  .adminContent{padding:12px!important;}
  .testConsoleFilters,.filterBar,.brandToolbar,.formGrid{grid-template-columns:1fr!important;}
  .button,button.button,a.button{width:100%;display:flex;justify-content:center;align-items:center;}
  .supportActionsWrap{width:100%;display:block;}
  .supportActionsMenu{position:static!important;width:100%;margin-top:8px;}
  .payBrand{align-items:flex-start!important;}
  .payBrand img{width:84px!important;max-height:84px!important;}
  .pay-card,.receipt-card{width:calc(100vw - 24px)!important;margin:12px auto!important;padding:18px!important;}
}
@media print{.receiptActions,.paymentActions,.topbar,.adminNav,.button{display:none!important}.receipt-card,.pay-card{box-shadow:none!important;border:0!important;max-width:none!important}.center-page{background:white!important;display:block!important}.receiptRow{break-inside:avoid}}

/* v4.7.30 integrated stability overrides */
:root{
  --g-base:#f7faf8; --g-surface:#ffffff; --g-border:#d9e5de; --g-text:#182620; --g-muted:#5f6f68;
  --g-primary:#0b5a3d; --g-primary-contrast:#ffffff; --g-success:#137a44; --g-danger:#b42318; --g-info:#166a9f; --g-warning:#9a5b00;
}
.adminShell,.adminMain,.adminTab,.card,.previewCard,.filterBar,.consolePane,.tableWrap{min-width:0;box-sizing:border-box;max-width:100%;}
.adminMain{overflow-x:hidden;}
.adminTab{max-width:100%;}
.filterBar{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;align-items:end;}
.filterBar label,.filterBar input,.filterBar select{min-width:0;max-width:100%;box-sizing:border-box;}
button,.button{color:var(--g-primary-contrast);background:var(--g-primary);border-color:var(--g-primary);}
.button.secondary{background:#fff;color:var(--g-primary);border-color:#b8cec2;}
.button.danger,.danger{background:var(--g-danger)!important;color:#fff!important;border-color:var(--g-danger)!important;}
.supportActionsWrap{position:relative;display:inline-block;z-index:20;margin:8px 0;}
.supportActionsMenu{position:absolute;top:calc(100% + 8px);left:0;min-width:230px;background:#fff;border:1px solid var(--g-border);border-radius:14px;box-shadow:0 18px 45px rgba(0,0,0,.15);padding:8px;z-index:50;}
.supportActionsMenu button{display:block;width:100%;text-align:left;background:#fff!important;color:var(--g-text)!important;border:0!important;border-radius:10px;padding:10px 12px;font-weight:600;box-shadow:none!important;}
.supportActionsMenu button:hover{background:#f0f6f3!important;}
.consoleGrid,.testConsoleGrid{display:grid;grid-template-columns:minmax(320px,1fr) minmax(320px,1fr);gap:18px;align-items:start;}
.codeArea,.diagBox{max-width:100%;box-sizing:border-box;overflow:auto;}
.credentialIdentityCard,.diagMiniGrid,.receiptGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;min-width:0;}
.credentialIdentityCard>div,.diagMiniGrid>div,.receiptRow{min-width:0;overflow-wrap:anywhere;}
.receiptTechDetails{margin-top:16px;border:1px solid var(--g-border);border-radius:12px;padding:12px;background:#fbfdfc;}
.receiptTechDetails summary{cursor:pointer;font-weight:800;color:var(--g-muted);}
.customerReceiptGrid .receiptRow{background:#f8fbf9;}
.compactTechGrid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));}
.massEmailsGrid,.emailCampaignGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px;align-items:start;max-width:100%;overflow:hidden;}
.massEmailsGrid input,.massEmailsGrid textarea,.massEmailsGrid select,.emailCampaignGrid input,.emailCampaignGrid textarea,.emailCampaignGrid select{width:100%;max-width:100%;box-sizing:border-box;}
.simpleTable,.tableWrap table{width:100%;border-collapse:collapse;}
.tableWrap{overflow-x:auto;}
.receipt-card{max-width:min(900px,calc(100vw - 32px));}
@media(max-width:900px){
  .consoleGrid,.testConsoleGrid{grid-template-columns:1fr;}
  h1{font-size:clamp(2rem,8vw,3rem)!important;}
  .supportActionsMenu{position:fixed;left:16px;right:16px;top:auto;bottom:16px;width:auto;max-height:70vh;overflow:auto;}
}
@media(max-width:640px){
  .filterBar{grid-template-columns:1fr;}
  .buttonRow,.receiptActions{display:grid;grid-template-columns:1fr;gap:10px;}
  .button,.button.secondary{width:100%;}
}
@media print{
  body{background:#fff!important;}
  .receiptActions,.receiptTechDetails summary{display:none!important;}
  .receiptTechDetails{display:none!important;}
  .receipt-card{box-shadow:none!important;border:0!important;max-width:100%!important;}
}
.emailGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px;align-items:start;max-width:100%;overflow:hidden;}
.emailGrid .card,.emailGrid .formGrid,.emailGrid table{min-width:0;max-width:100%;box-sizing:border-box;}
.emailGrid input,.emailGrid textarea,.emailGrid select{width:100%;max-width:100%;box-sizing:border-box;}
.formGrid.two{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;}


/* v4.7.30 integral stability and UX improvements */
.mobileMenuBtn{display:inline-flex!important;gap:8px;align-items:center;justify-content:center;min-width:auto!important;width:auto!important;padding:8px 12px!important}
body.navCollapsed .adminNav{width:76px!important;min-width:76px!important;overflow:hidden!important}
body.navCollapsed .adminNav button{font-size:0!important;justify-content:center!important;padding:12px!important}
body.navCollapsed .adminNav button::first-letter{font-size:16px!important}
body.navCollapsed .navGroupTitle{font-size:0!important;height:8px!important;margin:8px 0!important}
body.navCollapsed .adminContent{margin-left:0!important}
.logsTable th,.logsTable td{white-space:nowrap;vertical-align:middle}.logsTable td:nth-child(4){max-width:190px;overflow-wrap:anywhere;white-space:normal}.logsTable td:last-child,.logsTable th:last-child{position:sticky;right:0;background:#fff;z-index:2;box-shadow:-8px 0 14px rgba(15,23,42,.04)}
.supportModalOverlay{position:fixed!important;inset:0!important;z-index:9999!important;background:rgba(15,23,42,.55)!important;display:flex!important;align-items:flex-start!important;justify-content:center!important;padding:24px 18px!important;overflow:auto!important}.supportModalOverlay.hidden{display:none!important}.supportModal{width:min(980px,calc(100vw - 36px))!important;max-height:calc(100vh - 48px)!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;margin:0 auto!important;background:#fff!important;border-radius:22px!important}.supportModalHeader{position:sticky;top:0;background:#fff;z-index:4;border-bottom:1px solid var(--g-border);padding:18px 22px!important}.supportTabs{position:sticky;top:74px;background:#fff;z-index:3;border-bottom:1px solid var(--g-border);padding:10px 18px!important;display:flex;gap:8px;overflow-x:auto}.supportTabs button{background:#fff!important;color:var(--g-primary)!important;border:1px solid #cbded2!important;border-radius:999px!important;padding:9px 15px!important}.supportTabs button.active{background:var(--g-primary)!important;color:#fff!important}.supportModalBody{overflow:auto!important;padding:18px 22px!important}.diagOpsGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin-bottom:14px}.diagOpsGrid section{border:1px solid #dbe7df;background:#fbfdfc;border-radius:14px;padding:12px}.diagOpsGrid h3{margin:0 0 6px;font-size:13px;color:#0b5a3d;text-transform:uppercase;letter-spacing:.04em}.diagOpsGrid p{margin:0;line-height:1.45}.diagOpsGrid .diagFull{grid-column:1/-1}.supportActionGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin:14px 0}.cybsOpsConfigCard{margin:22px 0;padding:22px;border:1px solid var(--g-border);border-radius:22px;background:#fff;box-shadow:0 12px 30px rgba(15,23,42,.05)}.opsConfigGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;align-items:end;margin-top:12px}.productionBtn{background:#1e63c6!important;border-color:#1e63c6!important;color:#fff!important}.securityRedirectCard{max-width:920px}.compactSecurityForm{display:grid;grid-template-columns:minmax(220px,360px) auto;gap:14px;align-items:end}.receipt-card{break-inside:avoid;page-break-inside:avoid}.security-note{break-inside:avoid;page-break-inside:avoid}
@media(max-width:900px){body.navCollapsed .adminNav{width:0!important;min-width:0!important}.logsTable{min-width:900px}.supportModalOverlay{padding:12px!important}.supportModal{width:calc(100vw - 24px)!important;max-height:calc(100vh - 24px)!important}.compactSecurityForm{grid-template-columns:1fr}.opsConfigGrid{grid-template-columns:1fr}}
@media print{@page{size:A4;margin:10mm}body{margin:0!important}.receipt-card{max-width:100%!important;box-shadow:none!important}.topbar,.adminNav,.receiptActions,.button,.no-print{display:none!important}}

/* v4.7.30 — Visual QA: tablas, modal, credenciales, correos y admin responsive */
body.modalOpen{overflow:hidden!important;}
.adminContent{max-width:none!important;width:100%!important;}
.adminTab{padding:clamp(18px,2.1vw,28px)!important;}
.mobileMenuBtn{position:relative;z-index:20;}
body.navCollapsed .adminShell{grid-template-columns:92px 1fr!important;}
body.navCollapsed .adminNav{width:92px!important;min-width:92px!important;overflow-x:hidden!important;}
body.navCollapsed .adminNav .navGroupTitle,body.navCollapsed .adminNav button{font-size:0!important;text-align:center!important;padding:12px 8px!important;}
body.navCollapsed .adminNav button::first-letter{font-size:20px!important;}
.tableWrap,.tableScroll,.miniTableWrap{width:100%!important;max-width:100%!important;overflow-x:auto!important;overflow-y:visible!important;border-radius:18px!important;}
.opsTable table,.logsTable,.simpleTable{width:max-content!important;min-width:980px!important;table-layout:fixed!important;border-collapse:separate!important;border-spacing:0!important;}
.logsTable th,.logsTable td,.opsTable th,.opsTable td{white-space:normal!important;overflow-wrap:anywhere!important;word-break:normal!important;vertical-align:middle!important;line-height:1.18!important;}
.logsTable th:first-child,.logsTable td:first-child{position:sticky!important;left:0!important;background:#fff!important;z-index:5!important;box-shadow:8px 0 18px rgba(15,23,42,.06)!important;min-width:88px!important;width:88px!important;}
.logsTable .methodCell,.opsTable td:nth-child(4){max-width:150px!important;font-size:.86rem!important;}
.logsTable td:nth-child(2),.opsTable td:nth-child(1){min-width:170px!important;}
.logsTable td:nth-child(3){min-width:150px!important;}
.actionCell .button{margin:0!important;min-width:70px!important;padding:8px 11px!important;}
.supportModalOverlay{align-items:flex-start!important;padding-top:clamp(12px,2vw,26px)!important;}
.supportModal{margin-top:0!important;max-height:calc(100vh - 32px)!important;}
.supportModalHeader{padding:14px 20px!important;min-height:auto!important;}
.supportModalHeader h2{font-size:clamp(1.1rem,2.2vw,1.45rem)!important;line-height:1.15!important;margin:0 0 4px!important;}
.supportTabs{top:0!important;padding:9px 16px!important;gap:8px!important;}
.supportModalBody{padding:14px 18px!important;}
.diagOpsGrid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important;}
.diagOpsGrid section{padding:11px!important;}
.diagOpsGrid h3{font-size:12px!important;}
.modalCode{max-height:42vh!important;}
.opsConfigGrid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))!important;align-items:end!important;}
.cybsOpsConfigCard label{min-width:0!important;}
.cybsOpsConfigCard .button{width:auto!important;min-width:220px!important;justify-self:start!important;}
.productionBtn,.cardForm .button[type="submit"]{width:auto!important;min-width:170px!important;max-width:280px!important;margin-top:10px!important;}
.credentialLine{grid-template-columns:minmax(0,1fr) auto!important;}
.credentialLine input{min-width:0!important;}
.emailGrid{display:grid!important;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr)!important;gap:18px!important;align-items:start!important;}
#tab-emailCampaigns .card{max-width:none!important;min-width:0!important;overflow:hidden!important;}
#tab-emailCampaigns .formGrid.two{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;}
#tab-emailCampaigns input,#tab-emailCampaigns textarea,#tab-emailCampaigns select{min-width:0!important;}
#tab-emailCampaigns .simpleTable{min-width:540px!important;table-layout:auto!important;}
#tab-emailCampaigns .simpleTable th:nth-child(3),#tab-emailCampaigns .simpleTable td:nth-child(3){min-width:230px!important;white-space:normal!important;word-break:normal!important;}
.localeField small{display:block!important;max-width:210px!important;line-height:1.25!important;color:#64748b!important;font-size:12px!important;}
.localeField .infoSoft{display:inline!important;color:#64748b!important;}
.filterBar.logFilters{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;align-items:end!important;}
.filterBar.logFilters button{width:auto!important;min-width:150px!important;}
@media(max-width:1100px){
  .emailGrid{grid-template-columns:1fr!important;}
  .opsTable table,.logsTable{min-width:860px!important;}
  body.navCollapsed .adminShell,.adminShell{grid-template-columns:1fr!important;}
  .adminNav{position:relative!important;width:auto!important;min-width:0!important;height:auto!important;display:grid!important;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;}
}
@media(max-width:760px){
  .adminTab{padding:14px!important;border-radius:18px!important;}
  .logsTable,.opsTable table{min-width:760px!important;}
  .supportModalOverlay{padding:8px!important;}
  .supportModal{width:calc(100vw - 16px)!important;max-height:calc(100vh - 16px)!important;border-radius:18px!important;}
  .supportActionGrid{grid-template-columns:1fr!important;}
}


/* v4.7.30 Security QA: printable receipts/support and stable CyberSource mount */
@media print {
  @page { size: A4; margin: 8mm; }
  html, body { background: #fff !important; margin: 0 !important; }
  .receipt-card { max-width: 178mm !important; width: 100% !important; padding: 10mm !important; box-shadow: none !important; border: 0 !important; }
  .payBrand { margin-bottom: 6mm !important; }
  .receiptHeroCompact { break-inside: avoid; page-break-inside: avoid; }
  .receiptActions, .buttonRow, .topbar, .adminNav, .mobileMenuBtn { display: none !important; }
  .receiptGrid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 6px !important; margin: 8px 0 !important; }
  .receiptRow { padding: 8px !important; border-radius: 8px !important; }
  .receiptStatus { padding: 8px !important; margin: 8px 0 !important; }
}
.paymentScreen.cybs-mount-target, .paymentButtons.cybs-mount-target { display: block; min-height: 64px; }
body[data-pay-state="ACTIVE"] .paymentScreen.cybs-mount-target, body[data-pay-state="PROCESSING"] .paymentScreen.cybs-mount-target { min-height: 180px; }
