.ad-report-page main { min-height: 0 !important; overflow: hidden !important; }
#ad-usage-reports { height: 100%; min-height: 0; overflow-y: auto; overscroll-behavior: contain; }
.ad-report-shell { max-width: 1180px; min-height: 100%; margin: 0 auto; padding: 1.5rem 1.5rem 3rem; color: var(--ad-text, #0f172a); }
.ad-report-hidden { display: none !important; }
.ad-report-header { display: flex; gap: 1rem; align-items: flex-start; justify-content: space-between; margin-bottom: 1rem; }
.ad-report-header h1 { margin: 0; font-size: 1.45rem; font-weight: 650; }
.ad-report-header p { margin: .4rem 0 0; color: var(--ad-muted, #64748b); font-size: .9rem; }
.ad-report-refresh, .ad-report-period { border: 1px solid var(--ad-border, #dbe5ef); border-radius: 6px; padding: .45rem .7rem; background: rgba(255,255,255,.76); color: var(--ad-text, #0f172a); cursor: pointer; }
.ad-report-refresh { background: linear-gradient(135deg, #34d399, #059669); border-color: transparent; color: #04130d; font-weight: 600; }
.ad-report-controls { display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; margin-bottom: 1rem; color: var(--ad-muted, #64748b); font-size: .82rem; }
.ad-report-period.active { border-color: rgba(16,185,129,.52); background: rgba(16,185,129,.12); color: #047857; font-weight: 600; }
.ad-report-cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .8rem; margin-bottom: 1.1rem; }
.ad-report-card, .ad-report-section { border: 1px solid var(--ad-border-glow, #c9e9e4); border-radius: 8px; background: var(--ad-panel, rgba(255,255,255,.88)); box-shadow: var(--ad-shadow, 0 12px 30px rgba(15,23,42,.06)); }
.ad-report-card { min-width: 0; padding: 1rem; display: flex; flex-direction: column; gap: .3rem; }
.ad-report-card span, .ad-report-card small { color: var(--ad-muted, #64748b); font-size: .76rem; }
.ad-report-card strong { overflow: hidden; text-overflow: ellipsis; font-size: 1.22rem; white-space: nowrap; }
.ad-report-section { overflow: hidden; margin-top: 1rem; }
.ad-report-section h2 { margin: 0; padding: 1rem 1rem .65rem; font-size: 1rem; }
.ad-report-table-wrap { overflow-x: auto; }
.ad-report-section table { width: 100%; border-collapse: collapse; font-size: .84rem; }
.ad-report-section th, .ad-report-section td { padding: .72rem 1rem; border-top: 1px solid var(--ad-border, #e3edf5); text-align: left; vertical-align: top; white-space: nowrap; }
.ad-report-section th { color: var(--ad-muted, #64748b); font-weight: 500; font-size: .74rem; }
.ad-report-section td strong, .ad-report-section td small { display: block; }
.ad-report-section td small { margin-top: .2rem; color: var(--ad-muted, #64748b); font-size: .72rem; }
.ad-report-empty { padding: 2rem !important; color: var(--ad-muted, #64748b); text-align: center !important; }
.ad-report-loading { padding: 4rem 1rem; color: var(--ad-muted, #64748b); text-align: center; }
.ad-report-error { color: #b45309; }
@media (max-width: 900px) { .ad-report-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .ad-report-shell { padding: 1rem 1rem 2rem; } .ad-report-header { align-items: stretch; flex-direction: column; } .ad-report-refresh { align-self: flex-start; } .ad-report-cards { grid-template-columns: 1fr; } }
