/* CryptoPay lightweight admin UI refinement v3 - no framework, no external dependencies */
:root {
    --cp-bg: #f3f6fb;
    --cp-bg-soft: #f8fafc;
    --cp-surface: #ffffff;
    --cp-surface-2: #fbfdff;
    --cp-border: #d7e0ee;
    --cp-border-soft: #e6edf7;
    --cp-text: #162033;
    --cp-muted: #667085;
    --cp-primary: #1d4ed8;
    --cp-primary-dark: #1e3a8a;
    --cp-primary-soft: #eaf1ff;
    --cp-success: #15803d;
    --cp-success-soft: #eaf8ef;
    --cp-warning: #b45309;
    --cp-warning-soft: #fff7e6;
    --cp-danger: #b91c1c;
    --cp-danger-soft: #fff0f0;
    --cp-info: #2563eb;
    --cp-info-soft: #edf4ff;
    --cp-dark: #0f172a;
    --cp-dark-2: #111827;
    --cp-radius: 14px;
    --cp-radius-sm: 9px;
    --cp-shadow: 0 8px 24px rgba(15, 23, 42, 0.07);
    --cp-shadow-soft: 0 2px 10px rgba(15, 23, 42, 0.04);
}
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body.cp-admin-page {
    margin: 0;
    font-family: Arial, Helvetica, sans-serif;
    background:
        radial-gradient(circle at top left, rgba(29, 78, 216, 0.08), transparent 32rem),
        linear-gradient(180deg, #f8fbff 0%, var(--cp-bg) 260px, var(--cp-bg) 100%);
    color: var(--cp-text);
    font-size: 14px;
    line-height: 1.5;
}
.cp-shell {
    width: min(1600px, calc(100% - 28px));
    margin: 0 auto;
    padding: 18px 0 46px;
}
h2 {
    margin: -18px calc((100vw - min(1600px, calc(100vw - 28px))) / -2) 18px;
    padding: 20px max(18px, calc((100vw - min(1600px, calc(100vw - 28px))) / 2 + 18px));
    background: linear-gradient(135deg, #0f172a 0%, #111d35 62%, #172554 100%);
    color: #fff;
    font-size: 22px;
    letter-spacing: -0.03em;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.16);
}
h3 {
    margin: 26px 0 12px;
    font-size: 17px;
    color: var(--cp-text);
    letter-spacing: -0.01em;
}
p { margin: 10px 0; }
a {
    color: var(--cp-primary);
    text-decoration: none;
    font-weight: 700;
}
a:hover { text-decoration: underline; }
hr {
    border: 0;
    border-top: 1px solid var(--cp-border-soft);
    margin: 18px 0;
}
small { color: var(--cp-muted); }
.cp-nav,
.cp-shell > p:first-of-type {
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid var(--cp-border-soft);
    border-radius: var(--cp-radius);
    box-shadow: var(--cp-shadow-soft);
    padding: 12px 14px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 10px;
}
.cp-shell > p:first-of-type a,
.cp-nav a {
    background: var(--cp-primary-soft);
    border: 1px solid #cfe0ff;
    border-radius: 999px;
    padding: 6px 10px;
    color: var(--cp-primary-dark);
    font-size: 13px;
}
.cp-shell > p:first-of-type a:hover,
.cp-nav a:hover {
    background: #dbe8ff;
    text-decoration: none;
}
.cp-admin-card,
.cp-section,
.cp-shell > form,
.cp-shell > table,
.cp-table-scroll,
.cp-stat-grid {
    background: rgba(255, 255, 255, 0.96);
    border: 1px solid var(--cp-border-soft);
    border-radius: var(--cp-radius);
    box-shadow: var(--cp-shadow);
}
.cp-section { padding: 16px; margin: 14px 0 20px; }
.cp-section > h3:first-child { margin-top: 0; }
.cp-stat-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(140px, 1fr));
    gap: 12px;
    padding: 14px;
    margin: 14px 0 18px;
}
.cp-stat-card {
    border: 1px solid var(--cp-border-soft);
    border-radius: 12px;
    background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
    padding: 13px 14px;
    min-height: 92px;
}
.cp-stat-label {
    color: var(--cp-muted);
    font-size: 12px;
    margin-bottom: 7px;
}
.cp-stat-value {
    font-size: 24px;
    line-height: 1;
    font-weight: 800;
    letter-spacing: -0.04em;
}
.cp-stat-note {
    color: var(--cp-muted);
    font-size: 12px;
    margin-top: 8px;
}
.cp-stat-card.is-good .cp-stat-value { color: var(--cp-success); }
.cp-stat-card.is-warning .cp-stat-value { color: var(--cp-warning); }
.cp-stat-card.is-danger .cp-stat-value { color: var(--cp-danger); }
.cp-stat-card.is-info .cp-stat-value { color: var(--cp-primary); }
.cp-table-scroll {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin: 12px 0 20px;
}
.cp-table-scroll-wide { margin-left: -4px; margin-right: -4px; }
table,
.cp-data-table,
.cp-shell > table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    margin: 0;
}
.cp-table-scroll table {
    min-width: 1120px;
}
.cp-table-scroll-wide table {
    min-width: 1580px;
}
table[border] { border: 0 !important; }
th, td {
    border: 0 !important;
    border-right: 1px solid var(--cp-border-soft) !important;
    border-bottom: 1px solid var(--cp-border-soft) !important;
    padding: 10px 11px !important;
    vertical-align: top;
    overflow-wrap: anywhere;
}
th:last-child, td:last-child { border-right: 0 !important; }
tr:last-child td { border-bottom: 0 !important; }
th {
    position: sticky;
    top: 0;
    z-index: 2;
    background: #f1f5f9;
    color: #101827;
    font-size: 12px;
    font-weight: 800;
    text-align: left;
    white-space: nowrap;
}
td { background: #fff; }
tr:nth-child(even) td { background: #fbfdff; }
tr:hover td { background: #f6faff; }
.nowrap, .amount-cell, .crypto-cell { white-space: nowrap; }
.amount-cell { min-width: 92px; }
.crypto-cell { min-width: 118px; }
.callback-cell { min-width: 130px; }
textarea,
input[type="text"],
input[type="url"],
input[type="email"],
select {
    width: 100%;
    max-width: 100%;
    border: 1px solid #cbd5e1;
    border-radius: var(--cp-radius-sm);
    background: #fff;
    color: var(--cp-text);
    padding: 8px 10px;
    font-family: inherit;
    font-size: 13px;
    box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.03);
}
textarea {
    min-height: 42px;
    resize: vertical;
    font-family: Consolas, Monaco, monospace;
    font-size: 12px;
    line-height: 1.35;
}
td textarea { min-width: 300px; }
button,
input[type="submit"],
a[href*="payment_check_run"],
a[href*="invoice_mark_paid"],
a[href*="invoice_cancel"],
a[href*="invoice_resend_callback"] {
    display: inline-block;
    border: 1px solid #bcd0ff;
    border-radius: 999px;
    background: var(--cp-primary-soft);
    color: #173b8c;
    padding: 7px 11px;
    font-weight: 800;
    cursor: pointer;
    text-decoration: none;
    line-height: 1.2;
    box-shadow: 0 1px 2px rgba(29, 78, 216, 0.08);
}
button:hover,
input[type="submit"]:hover,
a[href*="payment_check_run"]:hover,
a[href*="invoice_mark_paid"]:hover,
a[href*="invoice_cancel"]:hover,
a[href*="invoice_resend_callback"]:hover {
    background: #dbe8ff;
    text-decoration: none;
}
strong[style*="green"], span[style*="green"] { color: var(--cp-success) !important; }
strong[style*="red"], span[style*="red"] { color: var(--cp-danger) !important; }
strong[style*="blue"], span[style*="blue"] { color: var(--cp-primary) !important; }
strong[style*="#b36b00"], span[style*="#b36b00"], strong[style*="#cc6600"], span[style*="#cc6600"] { color: var(--cp-warning) !important; }
.cp-status-pill,
strong[style*="green"], strong[style*="red"], strong[style*="blue"], strong[style*="#b36b00"], strong[style*="#cc6600"] {
    display: inline-block;
    border-radius: 999px;
    padding: 3px 8px;
    line-height: 1.25;
    font-size: 12px;
    font-weight: 800;
}
strong[style*="green"] { background: var(--cp-success-soft); }
strong[style*="red"] { background: var(--cp-danger-soft); }
strong[style*="blue"] { background: var(--cp-info-soft); }
strong[style*="#b36b00"], strong[style*="#cc6600"] { background: var(--cp-warning-soft); }
.cp-detail-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}
.cp-callout {
    border-left: 4px solid var(--cp-primary);
    background: var(--cp-primary-soft);
    border-radius: 12px;
    padding: 12px 14px;
}
img[alt*="QR"], img[alt*="Qr"], img[alt*="qr"] {
    border: 10px solid #fff;
    border-radius: 18px;
    box-shadow: var(--cp-shadow);
}
.cp-page-note { color: var(--cp-muted); }
@media (max-width: 1100px) {
    .cp-stat-grid { grid-template-columns: repeat(2, minmax(140px, 1fr)); }
    .cp-detail-grid { grid-template-columns: 1fr; }
}
@media (max-width: 700px) {
    body.cp-admin-page { font-size: 13px; }
    .cp-shell { width: min(100% - 16px, 1600px); padding-bottom: 28px; }
    h2 {
        margin-left: -8px;
        margin-right: -8px;
        padding-left: 14px;
        padding-right: 14px;
        font-size: 19px;
    }
    .cp-stat-grid { grid-template-columns: 1fr; padding: 10px; }
    th, td { padding: 8px !important; }
    .cp-table-scroll table { min-width: 900px; }
    .cp-table-scroll-wide table { min-width: 1450px; }
    td textarea { min-width: 260px; }
}


/* CryptoPay admin UI refinement v3: compact data pages */
.cp-table-scroll-compact {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
.cp-table-scroll-compact table {
    min-width: 1180px;
}
.cp-table-scroll-medium table {
    min-width: 980px;
}
.cp-compact-table th,
.cp-compact-table td {
    padding: 12px 14px !important;
}
.cp-id-cell {
    width: 58px;
    min-width: 58px;
    max-width: 58px;
    text-align: center;
    white-space: nowrap;
    font-weight: 800;
    color: var(--cp-muted);
}
.cp-code-cell { min-width: 190px; white-space: nowrap; }
.cp-person-cell { min-width: 230px; }
.cp-amounts-cell { min-width: 175px; white-space: nowrap; }
.cp-status-cell { min-width: 170px; }
.cp-ops-cell { min-width: 130px; white-space: nowrap; }
.cp-date-cell { min-width: 165px; white-space: nowrap; }
.cp-list-title {
    display: block;
    font-weight: 850;
    color: #0f2f75;
    line-height: 1.3;
}
.cp-list-subtitle {
    display: block;
    margin-top: 4px;
    color: var(--cp-muted);
    font-size: 12px;
    line-height: 1.35;
}
.cp-meta-line {
    display: block;
    margin-top: 4px;
    color: var(--cp-muted);
    font-size: 12px;
}
.cp-inline-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
}
.cp-inline-actions a,
.cp-link-pill {
    display: inline-block;
    border: 1px solid #cfe0ff;
    background: var(--cp-primary-soft);
    color: var(--cp-primary-dark);
    border-radius: 999px;
    padding: 5px 9px;
    font-size: 12px;
    font-weight: 800;
}
.cp-inline-actions a:hover,
.cp-link-pill:hover { background: #dbe8ff; text-decoration: none; }
.cp-closed-text { color: var(--cp-muted); font-size: 12px; font-weight: 700; }
.cp-code-box {
    width: 100%;
    min-width: 320px;
    min-height: 54px;
    max-height: 110px;
}
.cp-summary-box {
    width: 100%;
    min-width: 420px;
    min-height: 82px;
    max-height: 180px;
}
.cp-responsive-note {
    color: var(--cp-muted);
    font-size: 12px;
    margin-top: -8px;
    margin-bottom: 10px;
}
.cp-muted { color: var(--cp-muted); }
.cp-money-strong {
    display: block;
    font-weight: 850;
    color: #0f172a;
}
.cp-secondary-amount {
    display: block;
    margin-top: 5px;
    color: var(--cp-muted);
    font-size: 12px;
}
.cp-asset-pill {
    display: inline-block;
    padding: 4px 9px;
    border-radius: 999px;
    background: #f1f5f9;
    border: 1px solid var(--cp-border-soft);
    font-weight: 850;
    white-space: nowrap;
}
.cp-health-line { margin-bottom: 5px; }
@media (max-width: 700px) {
    .cp-table-scroll-compact table { min-width: 980px; }
    .cp-code-box { min-width: 250px; }
    .cp-summary-box { min-width: 300px; }
}

/* CryptoPay invoice board refinement v4 */
.cp-stat-grid-six {
    grid-template-columns: repeat(6, minmax(130px, 1fr));
}
.cp-invoice-board {
    display: grid;
    gap: 14px;
    margin: 18px 0 34px;
}
.cp-invoice-card {
    display: grid;
    grid-template-columns: minmax(300px, 1.45fr) minmax(210px, 0.85fr) minmax(230px, 0.95fr) minmax(230px, 0.9fr) minmax(150px, 0.65fr);
    gap: 0;
    background: rgba(255, 255, 255, 0.98);
    border: 1px solid var(--cp-border-soft);
    border-radius: 18px;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.07);
    overflow: hidden;
}
.cp-invoice-card > div {
    padding: 16px;
    border-right: 1px solid var(--cp-border-soft);
}
.cp-invoice-card > div:last-child {
    border-right: 0;
}
.cp-invoice-topline {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 14px;
}
.cp-kicker,
.cp-field-label {
    display: block;
    color: var(--cp-muted);
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-bottom: 4px;
}
.cp-invoice-code {
    color: #0f3a8c;
    font-size: 15px;
    font-weight: 900;
    word-break: break-word;
}
.cp-invoice-status {
    white-space: nowrap;
}
.cp-invoice-people {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}
.cp-invoice-people strong,
.cp-money-block strong,
.cp-invoice-meta strong {
    display: block;
    color: var(--cp-text);
    font-weight: 850;
}
.cp-invoice-people small,
.cp-invoice-meta small,
.cp-health-box small {
    display: block;
    margin-top: 3px;
    overflow-wrap: anywhere;
}
.cp-invoice-money,
.cp-invoice-health,
.cp-invoice-meta {
    display: grid;
    align-content: start;
    gap: 14px;
}
.cp-money-block {
    padding: 12px;
    border: 1px solid var(--cp-border-soft);
    background: #fbfdff;
    border-radius: 13px;
}
.cp-money-block strong {
    font-size: 15px;
}
.cp-money-block .cp-asset-pill {
    margin-top: 9px;
}
.cp-health-box {
    padding: 12px;
    border: 1px solid var(--cp-border-soft);
    background: #fbfdff;
    border-radius: 13px;
}
.cp-notification-row {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
    margin: 4px 0;
}
.cp-good { color: var(--cp-success); }
.cp-warn { color: var(--cp-warning); }
.cp-mini-status {
    font-weight: 700;
    line-height: 1.35;
}
.cp-mini-muted { color: var(--cp-muted); }
.cp-invoice-actions {
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: stretch;
    justify-content: center;
    background: linear-gradient(180deg, #fbfdff 0%, #f8fbff 100%);
}
.cp-action-btn {
    display: block;
    text-align: center;
    border: 1px solid #cfe0ff;
    border-radius: 999px;
    padding: 8px 10px;
    background: var(--cp-primary-soft);
    color: var(--cp-primary-dark);
    font-weight: 900;
    text-decoration: none;
}
.cp-action-btn:hover {
    background: #dbe8ff;
    text-decoration: none;
}
.cp-action-primary {
    background: #1d4ed8;
    color: #fff;
    border-color: #1d4ed8;
}
.cp-action-primary:hover {
    background: #1e40af;
}
.cp-badge {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: 5px 9px;
    font-size: 12px;
    font-weight: 900;
    line-height: 1;
    text-transform: lowercase;
}
.cp-badge-success { color: var(--cp-success); background: var(--cp-success-soft); }
.cp-badge-warning { color: var(--cp-warning); background: var(--cp-warning-soft); }
.cp-badge-danger { color: var(--cp-danger); background: var(--cp-danger-soft); }
.cp-badge-info { color: var(--cp-primary); background: var(--cp-info-soft); }
.cp-badge-muted { color: #475569; background: #eef2f7; }
.cp-closed-text {
    display: block;
    color: var(--cp-muted);
    font-size: 12px;
    font-weight: 800;
    text-align: center;
    padding: 7px 0;
}

@media (max-width: 1350px) {
    .cp-invoice-card {
        grid-template-columns: 1.35fr 0.8fr 0.9fr;
    }
    .cp-invoice-card > div:nth-child(3) {
        border-right: 0;
    }
    .cp-invoice-meta,
    .cp-invoice-actions {
        border-top: 1px solid var(--cp-border-soft);
    }
}

@media (max-width: 900px) {
    .cp-stat-grid-six {
        grid-template-columns: repeat(2, minmax(130px, 1fr));
    }
    .cp-invoice-card {
        grid-template-columns: 1fr;
    }
    .cp-invoice-card > div {
        border-right: 0;
        border-bottom: 1px solid var(--cp-border-soft);
    }
    .cp-invoice-card > div:last-child {
        border-bottom: 0;
    }
    .cp-invoice-people {
        grid-template-columns: 1fr;
    }
    .cp-invoice-actions {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: flex-start;
    }
    .cp-action-btn {
        width: auto;
    }
}

/* Phase 25C shared shell for legacy and refined admin pages */
body:not(.cp-login-page) {
    margin: 0;
    padding: 0 18px 48px;
    font-family: Arial, Helvetica, sans-serif;
    background: #f3f6fb;
    color: #162033;
    line-height: 1.5;
}
body:not(.cp-login-page) > h1,
body:not(.cp-login-page) > h2,
body:not(.cp-login-page) > h3,
body:not(.cp-login-page) > p,
body:not(.cp-login-page) > hr,
body:not(.cp-login-page) > form,
body:not(.cp-login-page) > table,
body:not(.cp-login-page) > div:not(.cp-topbar):not(.admin-shell):not(.cp-shell) {
    max-width: 1500px;
    margin-left: auto;
    margin-right: auto;
}
body.cp-admin-page { padding: 0 18px 48px; }
.cp-topbar {
    position: sticky;
    top: 0;
    z-index: 1000;
    margin: 0 -18px 24px;
    border-bottom: 1px solid rgba(255,255,255,.12);
    background: linear-gradient(135deg,#0f172a,#172554);
    box-shadow: 0 10px 28px rgba(15,23,42,.2);
}
.cp-topbar-inner {
    max-width: 1540px;
    min-height: 68px;
    margin: 0 auto;
    padding: 10px 18px;
    display: flex;
    align-items: center;
    gap: 18px;
}
.cp-brand { display:flex;align-items:center;gap:10px;color:#fff!important;text-decoration:none!important;white-space:nowrap; }
.cp-brand-mark { width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#fff;color:#173b8c;font-weight:900;box-shadow:0 4px 12px rgba(0,0,0,.18); }
.cp-brand strong { display:block;font-size:16px;line-height:1.1; }
.cp-brand small { display:block;color:#cbd5e1;font-size:10px;font-weight:normal; }
.cp-global-nav { display:flex;align-items:center;gap:4px;flex:1;flex-wrap:wrap; }
.cp-global-nav a { color:#dbeafe!important;padding:7px 9px;border-radius:8px;text-decoration:none!important;font-size:12px;font-weight:700; }
.cp-global-nav a:hover { background:rgba(255,255,255,.12);color:#fff!important; }
.cp-admin-identity { display:grid;grid-template-columns:auto auto;column-gap:9px;align-items:center;color:#fff;font-size:12px;white-space:nowrap; }
.cp-admin-identity span { font-weight:800; }
.cp-admin-identity small { color:#bfdbfe;text-transform:capitalize; }
.cp-admin-identity a { grid-column:1 / -1;color:#fca5a5!important;font-size:11px;text-decoration:none!important; }
.admin-shell,.cp-shell { max-width:1500px!important;margin:0 auto!important;padding:0 0 30px!important; }
.admin-main { min-width:0; }
body:not(.cp-login-page) h1,
body:not(.cp-login-page) h2 { color:#0f172a;font-size:26px;letter-spacing:-.035em;margin-top:20px; }
body:not(.cp-login-page) h2 { background:none;box-shadow:none;padding:0;margin-left:auto;margin-right:auto; }
body:not(.cp-login-page) form:not(.cp-inline-form) {
    background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:18px;box-shadow:0 8px 24px rgba(15,23,42,.06);margin-top:14px;margin-bottom:18px;
}
body:not(.cp-login-page) label { display:block;font-weight:800;font-size:12px;color:#334155;margin:13px 0 6px; }
body:not(.cp-login-page) input[type="text"],body:not(.cp-login-page) input[type="email"],body:not(.cp-login-page) input[type="url"],body:not(.cp-login-page) input[type="password"],body:not(.cp-login-page) input[type="number"],body:not(.cp-login-page) input[type="datetime-local"],body:not(.cp-login-page) select,body:not(.cp-login-page) textarea {
    width:100%;max-width:100%;padding:10px 12px;border:1px solid #cbd5e1;border-radius:9px;background:#fff;color:#0f172a;font:inherit;
}
body:not(.cp-login-page) input:focus,body:not(.cp-login-page) select:focus,body:not(.cp-login-page) textarea:focus { outline:3px solid rgba(37,99,235,.14);border-color:#2563eb; }
body:not(.cp-login-page) input[type="checkbox"],body:not(.cp-login-page) input[type="radio"] { width:auto;margin-right:6px; }
body:not(.cp-login-page) button,body:not(.cp-login-page) .btn,body:not(.cp-login-page) input[type="submit"] { border:0;border-radius:9px;background:#1d4ed8;color:#fff;padding:9px 14px;font-weight:800;cursor:pointer;text-decoration:none;display:inline-block; }
body:not(.cp-login-page) .btn-danger { background:#b91c1c; }
body:not(.cp-login-page) .btn-secondary { background:#475569; }
body:not(.cp-login-page) table { width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid #e2e8f0;border-radius:13px;overflow:hidden;box-shadow:0 6px 18px rgba(15,23,42,.045); }
body:not(.cp-login-page) th { position:static;background:#eef2f7;color:#334155;font-size:12px;text-transform:none; }
body:not(.cp-login-page) th,body:not(.cp-login-page) td { padding:10px 12px!important;border-right:1px solid #e2e8f0!important;border-bottom:1px solid #e2e8f0!important; }
.alert { border-radius:11px;padding:12px 14px;margin:13px 0;font-weight:700; }
.alert-success { background:#ecfdf3;color:#166534;border:1px solid #bbf7d0; }
.alert-danger { background:#fff1f2;color:#9f1239;border:1px solid #fecdd3; }
.alert-warning { background:#fffbeb;color:#92400e;border:1px solid #fde68a; }
.alert-info { background:#eff6ff;color:#1e40af;border:1px solid #bfdbfe; }
.badge { display:inline-flex;align-items:center;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:900; }
.badge-success { background:#dcfce7;color:#166534; }.badge-danger { background:#fee2e2;color:#991b1b; }.badge-warning { background:#fef3c7;color:#92400e; }.badge-info { background:#dbeafe;color:#1e40af; }.badge-neutral { background:#e2e8f0;color:#334155; }
.table-wrap { overflow-x:auto;margin:14px 0 20px;border-radius:13px; }
.muted { color:#64748b; }.grid-2 { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px; }.grid-3 { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px; }
.card { background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:17px;box-shadow:0 7px 20px rgba(15,23,42,.05); }
.secret-box { display:flex;gap:8px;align-items:flex-start; }.secret-box textarea { flex:1; }
@media(max-width:980px){.cp-topbar-inner{align-items:flex-start;flex-wrap:wrap}.cp-global-nav{order:3;width:100%}.cp-admin-identity{margin-left:auto}.grid-2,.grid-3{grid-template-columns:1fr}}
@media(max-width:620px){body:not(.cp-login-page),body.cp-admin-page{padding-left:10px;padding-right:10px}.cp-topbar{margin-left:-10px;margin-right:-10px}.cp-topbar-inner{padding:10px}.cp-admin-identity{display:none}.cp-global-nav{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}.cp-global-nav a{white-space:nowrap}}
body.cp-login-page {
    margin: 0;
    min-height: 100vh;
    font-family: Arial, Helvetica, sans-serif;
    background: radial-gradient(circle at top, #ffffff 0%, #eef4ff 38%, #dfe8f5 100%);
    color: var(--cp-text);
}
body.cp-login-page label { display:block; margin:14px 0 6px; font-size:12px; font-weight:900; color:#334155; }
body.cp-login-page input[type="text"], body.cp-login-page input[type="password"] { width:100%; }
body.cp-login-page button { border:0; border-radius:10px; background:var(--cp-primary); color:#fff; padding:11px 15px; font-weight:900; cursor:pointer; }

/* Phase 26K1 mobile administration navigation and table containment */
.cp-menu-toggle{display:none!important}.cp-mobile-identity,.cp-nav-overlay{display:none}
.cp-responsive-table{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:13px}
@media(max-width:980px){
    body.cp-admin-page.cp-nav-open{overflow:hidden}
    .cp-topbar-inner{min-height:68px;align-items:center;flex-wrap:nowrap}
    .cp-menu-toggle{display:inline-flex!important;align-items:center;gap:8px;margin-left:auto;border:1px solid rgba(255,255,255,.22)!important;background:rgba(255,255,255,.10)!important;color:#fff!important;padding:9px 12px!important;border-radius:10px!important;box-shadow:none!important}
    .cp-menu-icon{width:18px;height:14px;display:flex;flex-direction:column;justify-content:space-between}
    .cp-menu-icon i{display:block;height:2px;border-radius:2px;background:#fff}
    .cp-global-nav{position:fixed;z-index:1102;left:0;top:0;bottom:0;width:min(320px,86vw);padding:82px 16px 20px;background:linear-gradient(180deg,#0f172a 0%,#172554 100%);display:flex;flex-direction:column;align-items:stretch;gap:5px;overflow-y:auto;transform:translateX(-105%);transition:transform .2s ease;box-shadow:20px 0 50px rgba(15,23,42,.28)}
    .cp-nav-open .cp-global-nav{transform:translateX(0)}
    .cp-global-nav a{display:block;padding:11px 12px!important;border-radius:9px;font-size:14px!important;color:#e5efff!important}
    .cp-global-nav a:hover{background:rgba(255,255,255,.12)}
    .cp-admin-identity{display:none}
    .cp-mobile-identity{display:block;margin-top:14px;padding:14px 12px;border-top:1px solid rgba(255,255,255,.15);color:#fff}
    .cp-mobile-identity strong,.cp-mobile-identity span{display:block}
    .cp-mobile-identity span{margin-top:2px;color:#bfdbfe;font-size:12px;text-transform:capitalize}
    .cp-mobile-identity a{margin-top:8px;color:#fca5a5!important;padding-left:0!important}
    .cp-nav-overlay{display:block;position:fixed;z-index:999;inset:0;background:rgba(15,23,42,.52);opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}
    .cp-nav-open .cp-nav-overlay{opacity:1;visibility:visible}
}
@media(max-width:700px){
    body.cp-admin-page .cp-responsive-table table{min-width:720px}
    body.cp-admin-page .section,
    body.cp-admin-page .cp-section,
    body.cp-admin-page .cp-admin-card,
    body.cp-admin-page .card,
    body.cp-admin-page .cp-shell,
    body.cp-admin-page .admin-shell{min-width:0;max-width:100%}
    body.cp-admin-page .cards{align-items:stretch}
}
