/* System font stack */
body {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

/* Active nav link */
.nav-link { color: rgb(209 213 219); padding: 0.25rem 0.5rem; border-radius: 0.25rem; transition: all 0.15s; }
.nav-link:hover { color: white; background: rgb(31 41 55); }
.nav-link.active { color: white; background: rgb(55 65 81); }

/* Filter pill (arbs, bets, trends) */
.pill { display: inline-block; padding: 0.25rem 0.75rem; border-radius: 0.25rem; font-size: 0.875rem; transition: all 0.15s; }
.pill:hover { opacity: 0.85; }
.pill-default { background: rgb(229 231 235); color: rgb(55 65 81); }
.pill-active { background: rgb(17 24 39); color: white; }
.pill-yellow { background: rgb(254 240 138); color: rgb(133 77 14); }
.pill-green { background: rgb(22 163 74); color: white; }
.pill-red { background: rgb(220 38 38); color: white; }
.pill-purple { background: rgb(147 51 234); color: white; }

/* Stat card */
.stat-card { background: white; border-radius: 0.5rem; box-shadow: 0 1px 3px rgb(0 0 0 / 0.1); padding: 1rem; }
.stat-card .stat-label { font-size: 0.6875rem; text-transform: uppercase; letter-spacing: 0.05em; color: rgb(107 114 128); margin-bottom: 0.125rem; }
.stat-card .stat-value { font-size: 1.5rem; font-weight: 700; line-height: 1.2; }
.stat-card .stat-sub { font-size: 0.6875rem; color: rgb(156 163 175); margin-top: 0.125rem; }

/* Report tab */
.report-tab { display: inline-block; padding: 0.375rem 0.75rem; border-radius: 0.375rem; font-size: 0.875rem; color: rgb(107 114 128); transition: all 0.15s; }
.report-tab:hover { background: rgb(243 244 246); color: rgb(17 24 39); }
.report-tab.active { background: rgb(17 24 39); color: white; }

/* Table standardization */
.data-table { width: 100%; font-size: 0.875rem; }
.data-table thead { background: rgb(249 250 251); }
.data-table th { text-align: left; padding: 0.5rem 1rem; font-weight: 500; font-size: 0.75rem; color: rgb(107 114 128); text-transform: uppercase; letter-spacing: 0.025em; }
.data-table td { padding: 0.5rem 1rem; }
.data-table tbody tr { border-top: 1px solid rgb(243 244 246); }
.data-table tbody tr:hover { background: rgb(249 250 251); }

/* Status badges */
.badge { display: inline-block; font-size: 0.6875rem; padding: 0.125rem 0.5rem; border-radius: 0.25rem; font-weight: 500; }
.badge-pending { background: rgb(254 249 195); color: rgb(133 77 14); }
.badge-won { background: rgb(220 252 231); color: rgb(22 101 52); }
.badge-lost { background: rgb(254 226 226); color: rgb(153 27 27); }
.badge-void { background: rgb(243 244 246); color: rgb(75 85 99); }
.badge-cashout { background: rgb(243 244 246); color: rgb(75 85 99); }

/* Card sections */
.card { background: white; border-radius: 0.5rem; box-shadow: 0 1px 3px rgb(0 0 0 / 0.1); overflow: hidden; }
.card-header { padding: 0.75rem 1rem; border-bottom: 1px solid rgb(243 244 246); display: flex; align-items: center; justify-content: space-between; }
.card-body { padding: 0.75rem 1rem; }

/* Monospace amounts */
.amount { font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace; }
.amount-positive { color: rgb(21 128 61); }
.amount-negative { color: rgb(220 38 38); }
