:root {
    --sadean-primary: #176bff;
    --sadean-navy: #0b1f3a;
    --sadean-cyan: #16c6d7;
    --sadean-radius: 1rem;
}

.receipt-card { max-width: 43rem; }
.receipt-details { display: grid; grid-template-columns: 1fr 1.7fr; gap: .75rem 1rem; }
.receipt-details dt { color: #667085; font-weight: 500; }
.receipt-details dd { text-align: right; overflow-wrap: anywhere; }
.receipt-serial { white-space: pre-wrap; overflow-wrap: anywhere; }
.status-reversed { background: #ede9fe; color: #6d28d9; }
@media print {
    .app-header, .app-sidebar, .app-footer, .app-content-header, .no-print { display: none !important; }
    .app-wrapper, .app-main, .app-content, .app-content > .container-fluid { display: block !important; margin: 0 !important; padding: 0 !important; width: 100% !important; }
    .receipt-card { box-shadow: none !important; border: 0 !important; max-width: 80mm; font-size: 11px; }
    .receipt-card .card-body { padding: 5mm !important; }
    .receipt-card .fs-4 { font-size: 16px !important; }
    .receipt-details { grid-template-columns: 1fr 1.5fr; gap: 2mm; }
    body { background: white !important; }
}

body { font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif; color: #172033; }
.app-sidebar { background: linear-gradient(180deg, #0b1f3a 0%, #071425 100%) !important; }
.sidebar-brand { border-bottom: 1px solid rgba(255,255,255,.1); }
.brand-link { display: flex; gap: .75rem; align-items: center; padding: 1rem; color: #fff; }
.brand-mark, .brand-logo-sm, .brand-logo-lg { display: inline-flex; align-items: center; justify-content: center; color: #fff; font-weight: 800; background: linear-gradient(135deg, var(--sadean-primary), var(--sadean-cyan)); box-shadow: 0 10px 24px rgba(23,107,255,.3); }
.brand-mark { width: 2rem; height: 2rem; border-radius: .65rem; }
.brand-logo-sm { width: 3rem; height: 3rem; border-radius: .9rem; }
.brand-logo-lg { width: 4rem; height: 4rem; border-radius: 1.15rem; font-size: 1.8rem; background: rgba(255,255,255,.18); border: 1px solid rgba(255,255,255,.25); box-shadow: none; }
.sidebar-menu .nav-link { border-radius: .7rem; margin: .12rem .7rem; }
.sidebar-menu .nav-link.active { background: linear-gradient(90deg, var(--sadean-primary), #3c88ff); box-shadow: 0 8px 20px rgba(23,107,255,.25); }
.avatar-circle { display: inline-flex; width: 2rem; height: 2rem; align-items: center; justify-content: center; border-radius: 50%; color: white; background: var(--sadean-primary); font-weight: 700; }
.status-dot { display: inline-block; width: .45rem; height: .45rem; margin-right: .35rem; border-radius: 50%; background: #18a957; box-shadow: 0 0 0 3px rgba(24,169,87,.15); }
.metric-card { display: flex; gap: 1rem; align-items: center; padding: 1.2rem; background: #fff; border: 1px solid rgba(15,32,56,.06); border-radius: var(--sadean-radius); box-shadow: 0 5px 22px rgba(15,32,56,.06); }
.metric-icon { display: flex; flex: 0 0 3rem; width: 3rem; height: 3rem; align-items: center; justify-content: center; border-radius: .9rem; font-size: 1.3rem; }
.metric-label, .metric-meta { display: block; color: #778197; font-size: .78rem; }
.metric-value { display: block; font-size: 1.65rem; line-height: 1.25; letter-spacing: -.03em; }
.balance-card { padding: 1.5rem; border-radius: var(--sadean-radius); color: #fff; background: radial-gradient(circle at 95% 5%, rgba(22,198,215,.55), transparent 36%), linear-gradient(135deg, #1057d7, #083577); box-shadow: 0 18px 40px rgba(16,87,215,.2); }
.card { border-radius: var(--sadean-radius); }
.table thead th { padding: .9rem 1rem; background: #f7f9fc; color: #667085; font-size: .75rem; letter-spacing: .035em; text-transform: uppercase; border-bottom-width: 1px; }
.table tbody td { padding: .95rem 1rem; }
.status-badge { display: inline-flex; padding: .34rem .65rem; border-radius: 999px; font-size: .72rem; font-weight: 700; }
.status-success,.status-completed,.status-paid,.status-done,.status-active { color: #067647; background: #ecfdf3; }.status-failed,.status-cancelled,.status-rejected,.status-blocked,.status-suspended { color: #b42318; background: #fef3f2; }.status-pending,.status-queued,.status-sent,.status-created,.status-processing { color: #b54708; background: #fffaeb; }
.chart-wrap { height: 235px; }
.filter-type { max-width: 10rem; }
.sn-cell { max-width: 12rem; }
.step-number { display: inline-flex; flex: 0 0 2rem; width: 2rem; height: 2rem; align-items: center; justify-content: center; color: #fff; background: var(--sadean-primary); border-radius: .65rem; font-weight: 800; }
.markup-form { min-width: 9rem; max-width: 11rem; }.margin-form { min-width: 9.5rem; max-width: 11rem; }
.permission-group { padding: 1rem; background: #f8fafc; border: 1px solid #e9eef5; border-radius: .8rem; }
.hash-cell { display: block; max-width: 12rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.user-agent-cell { display: block; max-width: 14rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.audit-json { min-width: min(720px, 76vw); }.audit-json pre { max-height: 18rem; margin: .3rem 0 0; padding: .8rem; overflow: auto; color: #d7e3f4; background: #0b1f3a; border-radius: .65rem; font-size: .72rem; }
.settings-row { display: flex; gap: 2rem; align-items: center; justify-content: space-between; padding: 1.25rem 0; border-bottom: 1px solid #edf0f5; }.settings-row:last-child { border-bottom: 0; }.setting-control { width: min(14rem, 45%); }
.report-chart-wrap { height: 320px; }.flow-stat { display: grid; grid-template-columns: 1fr auto; gap: .25rem 1rem; padding: 1rem 0; border-bottom: 1px solid #edf0f5; }.flow-stat:last-child { border-bottom: 0; }.flow-stat small { grid-column: 1 / -1; color: #778197; }
.auth-body { min-height: 100vh; background: radial-gradient(circle at 15% 15%, rgba(22,198,215,.18), transparent 30%), linear-gradient(145deg, #eef5ff, #f8fbff 55%, #eef2f8); }
.auth-customer-card { max-width: 620px; }
.auth-shell { width: min(1040px, 100%); border-radius: 1.5rem; background: #fff; }
.auth-brand-panel { min-height: 610px; color: #fff; background: radial-gradient(circle at 85% 12%, rgba(22,198,215,.55), transparent 30%), linear-gradient(145deg, #0e5bea, #092b64); }
.form-control, .form-select, .input-group-text, .btn { border-radius: .7rem; }
.input-group > :not(:first-child) { border-top-left-radius: 0; border-bottom-left-radius: 0; }.input-group > :not(:last-child) { border-top-right-radius: 0; border-bottom-right-radius: 0; }
@media (max-width: 576px) { .metric-card { align-items: flex-start; flex-direction: column; }.metric-value { font-size: 1.35rem; }.table { min-width: 760px; }.settings-row { align-items: flex-start; flex-direction: column; gap: .75rem; }.setting-control { width: 100%; }.report-chart-wrap { height: 260px; } }
