.analytics-content { display: grid; gap: 1.5rem; }
.analytics-filters { display: grid; grid-template-columns: repeat(auto-fit,minmax(160px,1fr)); gap: 1rem; }
.analytics-filter-actions { grid-column: 1/-1; display:flex; flex-wrap:wrap; gap:.65rem; }
.analytics-coverage { padding:1rem; border:1px solid #bd9852; border-radius:12px; background:rgba(189,152,82,.08); }
.analytics-coverage p { margin:.4rem 0; }
.analytics-chart-panel { border:1px solid rgba(128,128,128,.3); padding:1rem; border-radius:12px; }
.analytics-chart-head { display:flex; justify-content:space-between; gap:1rem; flex-wrap:wrap; }
.analytics-chart { overflow:auto; }
.analytics-chart svg { width:100%; min-width:480px; height:240px; }
.analytics-chart rect { fill:#9abda8; cursor:pointer; }
.analytics-chart rect:hover,.analytics-chart rect:focus { fill:#d7bc80; outline:2px solid currentColor; }
.analytics-chart text { fill:currentColor; font-size:11px; }
.analytics-dialog { max-width:min(900px,95vw); }
.analytics-dialog pre { white-space:pre-wrap; overflow-wrap:anywhere; max-height:50vh; overflow:auto; padding:1rem; background:rgba(128,128,128,.1); }
.analytics-dialog form { display:grid; gap:1rem; }
.analytics-content h2 { font-size:1.2rem; }
.analytics-content td { vertical-align:top; white-space:normal; min-width:90px; }
.analytics-content td:first-child { max-width:360px; overflow-wrap:anywhere; }
@media(max-width:600px) { .analytics-filters { grid-template-columns:1fr 1fr; } .analytics-content { gap:1rem; } }
#analyticsPanel, .analytics-content, .analytics-content > *, #analyticsResults, #analyticsResults > * { min-width:0; }
.analytics-content { grid-template-columns:minmax(0,1fr); }
.analytics-filters .field, .analytics-chart-head .field { min-width:0; }
.analytics-content p { overflow-wrap:anywhere; }
@media(max-width:600px) { .analytics-filters { grid-template-columns:minmax(0,1fr); } #analyticsStats { grid-template-columns:repeat(2,minmax(0,1fr)); } .analytics-chart-head .field { width:100%; } }
/* Keep the existing support table's horizontal scrolling inside the admin grid. */
.admin-console { grid-template-columns:minmax(0,1fr); }
#supportTicketsPanel, #supportTicketsPanel .panel-content { min-width:0; }

.analytics-navigation{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;}
.analytics-context-event{border-top:1px solid rgba(128,128,128,.3);padding-top:1rem;}
.analytics-context-event pre{max-height:12rem;}
.analytics-chart svg{height:270px;}

.analytics-user-tools,.analytics-session-controls{display:flex;flex-wrap:wrap;gap:.8rem;align-items:end;}
.analytics-user-legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:.5rem;max-height:18rem;overflow:auto;padding:.4rem;}
.analytics-user-choice{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-width:0;}
.analytics-user-choice label{display:flex;align-items:center;gap:.5rem;overflow-wrap:anywhere;}
.analytics-user-swatch{display:inline-block;width:.8rem;height:.8rem;border:1px solid currentColor;border-radius:50%;flex:none;}
.analytics-chart-empty{border:1px dashed #bd9852;border-radius:10px;padding:1rem;margin:.8rem 0;}
.analytics-chart-empty h3{margin-top:0;}
.analytics-session-panel{border-top:1px solid rgba(128,128,128,.3);padding-top:1rem;}
.analytics-chart circle{cursor:pointer;}
.analytics-chart circle:hover,.analytics-chart circle:focus{stroke:currentColor;stroke-width:3;outline:none;}
.analytics-session-controls .field{min-width:0;flex:1 1 180px;}
#analyticsSessionDialog{max-width:min(900px,95vw);overflow:auto;max-height:90vh;}
#analyticsSessionDialog p{overflow-wrap:anywhere;}
@media(max-width:600px){.analytics-user-tools .field,.analytics-session-controls .field{width:100%;}.analytics-user-choice{align-items:flex-start;}}

.analytics-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:1rem;margin:1rem 0 2rem;}
.analytics-overview-card{border:1px solid rgba(128,128,128,.25);border-radius:12px;padding:1rem;min-width:0;}
.analytics-overview-card h3{margin:0 0 .5rem;}
.analytics-overview-card svg{display:block;width:100%;height:auto;overflow:visible;}
.analytics-overview-card svg text{fill:currentColor;font-size:12px;}
.analytics-overview-card rect{cursor:pointer;}
.analytics-overview-card rect:focus,.analytics-overview-card rect:hover{stroke:currentColor;stroke-width:2;}
.analytics-stale{border-left:4px solid #be665b;padding:.75rem;background:rgba(190,102,91,.12);}

.analytics-cohort-row{margin:.7rem 0;}.analytics-cohort-row button{display:block;text-align:left;max-width:100%;overflow-wrap:anywhere;}.analytics-cohort-bar{display:block;height:7px;background:#538fa3;border-radius:3px;margin-top:.35rem;}

.analytics-change-value{font-size:1.6rem;display:block;margin:.7rem 0;}.analytics-comparison-bars>div{margin:.7rem 0;}.analytics-comparison-bars>div:first-child .analytics-cohort-bar{background:#899b9e;}.analytics-behavior-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:1rem;margin:1rem 0;}.analytics-pattern-row{display:grid;gap:.4rem;border-top:1px solid rgba(128,128,128,.2);padding:.8rem 0;overflow-wrap:anywhere;}.analytics-pattern-row button{justify-self:start;text-align:left;}.analytics-inference{grid-column:1/-1;border-left:3px solid #bd9852;padding:.75rem;}@media(max-width:750px){.analytics-behavior-grid{grid-template-columns:1fr;}}
@media(max-width:450px){#analyticsStats .stat strong{font-size:1.25rem;overflow-wrap:anywhere;}}

.analytics-trajectory{display:grid;gap:.35rem;}.analytics-trajectory-day{display:grid;grid-template-columns:7rem 1fr;align-items:center;gap:.5rem;text-align:left;background:transparent;color:inherit;border:1px solid transparent;border-radius:4px;padding:.35rem;cursor:pointer;font:inherit;font-size:.85rem;}.analytics-trajectory-day:hover,.analytics-trajectory-day:focus-visible{border-color:#538fa3;outline:2px solid #538fa3;}.analytics-trajectory-track{position:relative;display:block;height:12px;background:rgba(128,128,128,.12);}.analytics-trajectory-bar{display:block;height:100%;background:#538fa3;}.analytics-trajectory-baseline{position:absolute;top:-3px;bottom:-3px;width:2px;background:#bd9852;transform:translateX(-1px);}

.analytics-build-map{grid-column:1/-1;}.analytics-build-map svg{display:block;max-width:900px;width:100%;height:auto;overflow:visible;}.analytics-build-map circle{cursor:pointer;}.analytics-build-map circle:hover,.analytics-build-map circle:focus-visible{stroke-width:3;outline:none;fill:#bd9852;}.analytics-build-detail{min-height:3rem;overflow-wrap:anywhere;border-left:3px solid #538fa3;padding:.6rem;}

.analytics-build-chart{overflow-x:auto;}.analytics-build-chart svg{min-width:540px;}.analytics-build-map .field{min-width:0;max-width:100%;}.analytics-build-map select{max-width:100%;}.analytics-build-map svg text{font-size:14px;}
.analytics-build-map{min-width:0;}.analytics-pattern-row button{max-width:100%;white-space:normal;overflow-wrap:anywhere;}
