/* Only the authenticated owner can open this panel; data access is enforced by the server. */
#owner-analytics { width:min(960px,calc(100vw - 28px)); max-width:960px; max-height:calc(100dvh - 28px); padding:28px; overflow:auto; box-sizing:border-box; background:#101f2cf5; color:#eaf5ff; border:1px solid #63859d88; border-radius:22px; text-align:left; box-shadow:0 22px 90px #0008; }
#owner-analytics::backdrop { background:#020a12b8; backdrop-filter:blur(6px); }
.owner-analytics-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; }
.owner-analytics-heading h2 { margin:0; font-size:26px; }
.owner-analytics-heading > button { margin:0; min-width:44px; min-height:44px; font-size:25px; padding:4px 12px; }
.owner-analytics-eyebrow { margin:0 0 7px; color:#94d9bd; font-size:11px; letter-spacing:1.1px; }
.owner-analytics-tools { display:flex; flex-wrap:wrap; align-items:flex-end; gap:10px; margin:24px 0 0; }
.owner-analytics-tools label { display:flex; flex-direction:column; gap:6px; color:#b6cadb; font-size:12px; }
.owner-analytics-tools select { min-height:44px; padding:8px 12px; background:#162d40; color:#eaf5ff; border:1px solid #7691a666; border-radius:9px; font:inherit; }
.owner-analytics-tools button { margin:0; min-height:44px; padding:9px 15px; font-size:12px; }
#owner-analytics-status { min-height:20px; font-size:12px; color:#a9c5d9; }
.owner-stats-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:18px 0 26px; }
.owner-stats-grid article { display:flex; flex-direction:column; gap:9px; background:#19324780; border:1px solid #83accf33; border-radius:13px; padding:18px; }
.owner-stats-grid article > span { font-size:12px; color:#bad3e6; }
.owner-stats-grid strong { font-size:30px; font-variant-numeric:tabular-nums; line-height:1.1; }
.owner-stats-grid article:first-child strong { color:#86e0b2; }
.owner-stats-grid small { font-size:10px; line-height:1.5; color:#8faec5; }
.owner-chart-section,.owner-breakdowns > section,.owner-collections,.owner-web-report { padding:18px; border:1px solid #83accf26; border-radius:13px; background:#11253688; margin-top:16px; }
#owner-analytics h3 { font-size:15px; margin:0 0 14px; }
.owner-chart-key { display:flex; flex-wrap:wrap; gap:18px; font-size:11px; margin:0 0 16px; }
.owner-chart-key span:first-child { color:#80dcb3; }
.owner-chart-key span:last-child { color:#a7a1f3; }
.owner-analytics-chart { display:flex; gap:8px; height:164px; overflow-x:auto; padding:0 0 5px; align-items:stretch; }
.owner-chart-day { display:flex; flex:1 0 30px; flex-direction:column; justify-content:flex-end; gap:6px; align-items:center; min-width:0; }
.owner-chart-bars { display:flex; align-items:flex-end; justify-content:center; gap:3px; height:140px; width:100%; }
.owner-chart-bar { display:block; width:min(12px,40%); height:var(--bar-size,2%); border-radius:4px 4px 1px 1px; background:#80dcb3; min-height:2px; }
.owner-chart-bar.packs { background:#a7a1f3; }
.owner-chart-day small { color:#9db7cc; font-size:9px; white-space:nowrap; }
.owner-chart-section .note { font-size:10px; line-height:1.6; margin-bottom:0; }
.owner-breakdowns { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.owner-breakdown-row { display:flex; justify-content:space-between; gap:16px; font-size:12px; line-height:1.6; padding:6px 0; }
.owner-breakdown-row strong { color:#bee5fa; }
.owner-table-scroll { overflow-x:auto; }
.owner-collections table { width:100%; border-collapse:collapse; font-size:12px; }
.owner-collections th,.owner-collections td { padding:10px 6px; border-bottom:1px solid #83accf22; }
.owner-collections th { color:#aac4da; font-weight:500; }
.owner-collections :is(td,th):not(:first-child) { text-align:right; }
.owner-web-report p,.owner-analytics-footnote { font-size:11px; line-height:1.7; color:#9eb9ce; }
.owner-web-report a { display:inline-block; color:#a8d8fb; padding:8px 0; font-size:12px; }
.owner-analytics-footnote { margin:20px 2px 0; }
@media(max-width:600px) {
 #owner-analytics { width:calc(100vw - 16px); max-height:calc(100dvh - 16px); padding:18px 14px; border-radius:17px; }
 .owner-analytics-heading h2 { font-size:22px; }
 .owner-stats-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
 .owner-stats-grid article { padding:13px 10px; }
 .owner-stats-grid strong { font-size:26px; }
 .owner-breakdowns { grid-template-columns:1fr; gap:0; }
}
