.audience-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
.audience-legend{display:flex;gap:22px;flex-wrap:wrap;margin:18px 0 12px}
.audience-legend span::before{content:"";display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:8px}
.audience-legend .account::before,.audience-track .account{background:#537ba7}
.audience-legend .visitor::before,.audience-track .visitor{background:#72a69b}
.audience-legend .software::before,.audience-track .software{background:#aa91bc}
.audience-chart-scroll{overflow-x:auto;padding:25px 0 10px}
.audience-chart{display:flex;gap:12px;min-width:100%;width:max-content}
.audience-day{flex:1 0 52px;min-width:52px;text-align:center;font-size:11px}
.audience-tracks{height:210px;display:flex;gap:4px;align-items:flex-end;justify-content:center;border-bottom:1px solid #dce2e9;background:repeating-linear-gradient(to top,transparent 0,transparent 51px,#eef1f5 52px,#eef1f5 53px)}
.audience-track{height:100%;width:13px;display:flex;align-items:flex-end;position:relative}
.audience-track>span{width:100%;position:relative;border-radius:3px 3px 0 0;min-height:0}
.audience-track small{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);padding-bottom:6px;font-size:10px}
.audience-day time{display:block;padding-top:10px;color:#64748b}
.audience-day.unrecorded .audience-tracks{align-items:center;background:#f6f7f9}
.audience-ranges{display:flex;gap:8px;flex-wrap:wrap}
.audience-ranges a{padding:5px 10px;border:1px solid #dce2e9;border-radius:5px}
.audience-ranges [aria-current]{background:#edf3fa;font-weight:600}
.audience-details{margin-top:24px}.audience-details summary{cursor:pointer;padding:4px 0 16px}
.online-card-content{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px;margin:14px 0}
.online-ring{width:106px;height:106px;border-radius:50%;background:#e7ecf1;display:grid;place-items:center;flex:0 0 106px}
.online-ring>div{width:82px;height:82px;border-radius:50%;background:var(--panel,#fff);display:flex;flex-direction:column;align-items:center;justify-content:center}
.online-card .online-ring strong{font-size:28px;line-height:1.15;margin:0}.online-card .online-ring small{font-size:10px;margin:4px 0 0}
.online-card-legend{flex:1 0 104px;min-width:0}.online-card-legend>div{display:flex;gap:7px;align-items:center;font-size:11px;margin:8px 0}.online-card-legend b{margin-left:auto}
.online-card-legend>div::before{content:"";width:7px;height:7px;border-radius:2px;flex:0 0 7px;background:#537ba7}
.online-card-legend>.visitor::before{background:#72a69b}.online-card-legend>.software::before{background:#aa91bc}.online-card-legend>.mobile::before{background:#c2a576}
.online-card-legend span{white-space:nowrap}
@media(max-width:700px){.audience-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.audience-chart{gap:8px}.audience-day{min-width:46px}}

/* Country distribution and region drill-down share one permission-scoped snapshot. */
.online-card-title{float:right;font-size:.8rem;font-weight:600}
.online-geography-card{grid-column:span 2;min-width:0}
.online-geography-card .online-card-content{margin:10px 0;justify-content:flex-start}
.online-geography-card .online-card-legend{display:flex;flex-wrap:wrap;gap:5px 18px}
.online-geography-card .online-card-legend>div{gap:6px;margin:3px 0;font-size:.78rem}
.online-geography{min-width:0;margin-top:14px}
.geography-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.geography-heading h3{margin:0;font-size:1rem}.geography-heading>span{font-size:.75rem}
.geography-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:12px 0;font-size:.82rem}
.geography-breadcrumb button{border:0;background:transparent;color:var(--accent,#42678d);padding:3px 0;font:inherit;cursor:pointer;border-radius:2px;box-shadow:none}
.geography-breadcrumb button[aria-current]{font-weight:700;color:var(--text,#192f40)}
.geography-layout{display:grid;grid-template-columns:minmax(150px,210px) minmax(150px,1fr);align-items:center;gap:20px}
.geography-visual{position:relative;width:100%;max-width:210px;aspect-ratio:1;justify-self:center}
.geography-donut{display:block;width:100%;height:100%;overflow:visible}
.geography-segment[role=button]{cursor:pointer}.geography-segment:focus-visible{outline:none;stroke-width:32;filter:brightness(.85)}
.geography-center{position:absolute;inset:26%;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;text-align:center}
.online-card .geography-center strong,.geography-center strong{font-size:2.3rem;line-height:1.15;margin:0;font-weight:700}
.geography-center span{font-size:.78rem;color:var(--muted,#69788b);margin-top:6px}
.geography-legend{display:grid;gap:6px;max-height:265px;overflow:auto;padding:3px}
.geography-row{display:grid;grid-template-columns:10px minmax(0,1fr) auto auto;gap:9px;align-items:center;width:100%;text-align:left;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text,#192f40);padding:9px 7px;font-size:.9rem;line-height:1.3;box-shadow:none}
button.geography-row{cursor:pointer;font-family:inherit}button.geography-row:hover,button.geography-row:focus-visible{background:var(--soft,#edf3f9);border-color:var(--line,#dce2e9)}
.geography-swatch{width:10px;height:10px;border-radius:3px}.geography-place{overflow-wrap:anywhere}
.geography-row b{font-size:.86rem}.geography-percent{min-width:48px;text-align:right;font-size:.8rem;color:var(--muted,#69788b);font-variant-numeric:tabular-nums}
.geography-note{font-size:.76rem!important;line-height:1.7;color:var(--muted,#69788b);margin:12px 0 0}
.geography-note:empty{display:none}.geography-empty{padding:15px;color:var(--muted,#69788b);font-size:.9rem}
@media(min-width:1100px){.online-panel .geography-layout{grid-template-columns:230px minmax(200px,1fr);max-width:850px;gap:40px}}
@media(max-width:700px){.online-geography-card{grid-column:1/-1}.geography-layout{gap:12px;grid-template-columns:150px minmax(125px,1fr)}}
@media(max-width:440px){.geography-layout{grid-template-columns:1fr}.geography-visual{max-width:180px}.geography-legend{max-height:225px}}

.online-geography-card .geography-heading span,.online-geography-card .geography-center span,.online-geography-card .geography-row span{display:initial}.geography-breadcrumb button:hover{background:transparent;text-decoration:underline}

.online-card-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.online-card-heading>span{font-size:.85rem;color:var(--muted)}.online-card-heading>.online-card-title{float:none;white-space:nowrap}

/* Dashboard: three aligned circles, followed by four compact totals. */
.dashboard-visuals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:20px;align-items:stretch}
.dashboard-visuals.without-presence{grid-template-columns:repeat(2,minmax(0,1fr))}
.dashboard-visuals>.panel{grid-column:auto;margin:0;padding:22px;min-width:0;display:flex;flex-direction:column}
.dashboard-visuals .dashboard-section-head{min-height:28px;margin-bottom:10px;gap:8px}
.dashboard-visuals .dashboard-section-head h2{font-size:17px}
.dashboard-chart-context,.dashboard-visuals .geography-breadcrumb{height:38px;min-height:38px;margin:0;display:flex;align-items:center;font-size:12px;color:var(--muted);overflow:auto}
.dashboard-visuals .storage-content,.dashboard-visuals .distribution-content{display:flex;flex-direction:column;align-items:stretch;gap:12px}
.dashboard-chart-slot{height:200px;min-height:200px;display:flex;align-items:center;justify-content:center}
.dashboard-visuals .dashboard-ring,.dashboard-visuals .online-ring{width:176px;height:176px;flex:0 0 176px}
.dashboard-visuals .dashboard-ring{padding:13px}.dashboard-visuals .dashboard-ring strong{font-size:28px}
.dashboard-visuals .online-ring>div{width:150px;height:150px}
.dashboard-visuals .online-ring strong{font-size:30px}
.dashboard-visuals .storage-details,.dashboard-visuals .distribution-legend{width:100%}
.dashboard-visuals .storage-details p{margin:0 0 10px}.dashboard-visuals .storage-details dl{margin-top:12px}
.dashboard-visuals .storage-details dt,.dashboard-visuals .storage-details dd{font-size:12px}
.dashboard-visuals .distribution-legend>div{padding:6px 0}
.dashboard-visuals .online-geography{margin-top:0}
.dashboard-visuals .geography-heading{display:none}
.dashboard-visuals .geography-layout{grid-template-columns:minmax(0,1fr);gap:12px}
.dashboard-visuals .geography-visual{width:200px;height:200px;max-width:200px}
.dashboard-visuals .geography-legend{max-height:150px;width:100%;gap:2px;padding:0}
.dashboard-visuals .geography-row{font-size:13px;padding:7px 5px;gap:7px}
.dashboard-visuals .online-card-content{margin:12px 0 6px;justify-content:flex-start}
.dashboard-visuals .online-card-legend{display:flex;flex-wrap:wrap;gap:4px 14px}
.dashboard-visuals .online-card-legend>div{font-size:11px;margin:2px 0}
.dashboard-visuals .online-card>small{display:block;font-size:11px;color:var(--muted);margin-top:5px}
.dashboard-visuals .dashboard-note{margin-top:16px}
.geography-help{margin-top:10px;font-size:11px;color:var(--muted)}.geography-help summary{cursor:pointer}
.dashboard-text-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-bottom:24px}
@media(max-width:1100px){.dashboard-visuals{grid-template-columns:1fr}.dashboard-visuals.without-presence{grid-template-columns:1fr}}
@media(max-width:900px){.dashboard-text-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}
@media(max-width:520px){.dashboard-visuals{gap:14px}.dashboard-visuals>.panel{padding:18px}.dashboard-text-stats{gap:12px}.dashboard-text-stats .stat-card{padding:16px}}
