:root{color:#16302d;font-synthesis:none;text-rendering:optimizelegibility;background:#f2f6f5}*{box-sizing:border-box}body{background:#f2f6f5;min-width:320px;min-height:100vh;margin:0}.full-width{width:100%}.loading-shell,.login-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.login-shell{background:radial-gradient(circle at 12% 18%,#176f652e,#0000 28%),radial-gradient(circle at 88% 78%,#e0933d29,#0000 25%),#eef4f2}.login-card{width:min(440px,100%);box-shadow:0 24px 64px #20433e1f}.brand-mark,.header-mark{color:#fff;background:linear-gradient(145deg,#176f65,#239789);border-radius:14px;place-items:center;width:44px;height:44px;font-size:20px;display:grid}.brand-mark{margin-bottom:22px}.app-layout{background:#f2f6f5;min-height:100vh}.app-header{z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;border-bottom:1px solid #dfe9e6;height:auto;padding:14px clamp(16px,4vw,56px);line-height:normal;position:sticky;top:0}.header-title.ant-typography{color:#173c37;margin:0}.header-subtitle{color:#6d827e;font-size:12px}.header-content{grid-template-columns:max-content minmax(560px,1fr) max-content;align-items:center;gap:24px;display:grid}.header-brand,.header-actions{white-space:nowrap}.header-sync-status{border-left:1px solid #e4ecea;grid-template-columns:repeat(4,minmax(120px,1fr));gap:12px 20px;min-width:0;padding-left:24px;display:grid}.header-status-item{min-width:0}.header-status-label{color:#7b8e8a;margin-bottom:3px;font-size:11px;line-height:1.2;display:block}.header-status-value{color:#294d48;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.35;display:block;overflow:hidden}.header-status-state .ant-tag{margin:0}.app-content{width:min(1520px,100%);margin:0 auto;padding:28px clamp(16px,4vw,56px) 48px}.filters-card,.panel-card,.app-content>.ant-space>.ant-row .ant-card{border:1px solid #dae6e3cc;box-shadow:0 6px 24px #294b460e}.global-filters{grid-template-columns:minmax(440px,1.5fr) minmax(280px,1fr);gap:20px 28px;display:grid}.filter-item{min-width:0}.filter-label{white-space:nowrap;margin-bottom:8px;display:block}.filter-item-platform .ant-select{width:100%}.filter-hint{margin-top:6px;font-size:12px;display:block}.panel-description,.chart-subtitle{margin-top:-6px}.metric-definition{margin-top:8px;line-height:1.5;display:block}.user-activity-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.user-activity-toolbar .ant-select{width:160px}.user-activity-definition{margin-bottom:12px!important}.user-activity-periods{flex-direction:column;gap:4px;margin-bottom:18px;display:flex}.user-activity-heading{cursor:help}.user-activity-email{overflow-wrap:anywhere}.user-activity-unavailable{white-space:normal;font-size:11px;display:block}.user-activity-tier-breakdown{margin-bottom:18px}.user-activity-tier-note{font-size:12px;margin:12px 0 0!important}.user-activity-sorting{margin-bottom:12px}.user-activity-sort-hint{font-size:12px;margin:8px 0 0!important}.user-activity-card .ant-alert{margin-bottom:16px}.platform-metrics{border-top:1px solid #edf2f1;margin-top:24px;padding-top:20px}.suspected-abuse-users{background:#fffaf0;border:1px solid #f1d6a9;border-radius:10px;margin-top:24px;padding:16px}.suspected-abuse-description{margin:4px 0 12px!important}.platform-metrics-description{margin:4px 0 16px!important}.platform-metric-ratio{margin-left:4px;font-size:13px}.feedback-summary-card{cursor:pointer;transition:transform .16s,box-shadow .16s,border-color .16s}.feedback-summary-card:hover{border-color:#176f6559;transform:translateY(-1px);box-shadow:0 10px 30px #294b461a}.feedback-summary-card:focus-visible{outline-offset:3px;outline:2px solid #176f65}.feedback-open-hint{margin-top:14px;display:block}.feedback-search{width:min(360px,80vw)}.feedback-info-icon{color:#176f65}.feedback-cell-text{overflow-wrap:anywhere;-webkit-line-clamp:3;-webkit-box-orient:vertical;line-height:1.45;display:-webkit-box;overflow:hidden}.feedback-raw-log summary{color:#176f65;cursor:pointer}.feedback-raw-log pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f3f6f5;border-radius:8px;max-width:520px;max-height:240px;margin:8px 0 0;padding:10px;font-size:11px;overflow:auto}.chart-card .ant-card-body{min-height:390px}.chart-card>.ant-card-body>.ant-empty{margin-top:84px}.retention-legend{background:#f6f9f8;border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px 18px;margin-top:12px;padding:14px 16px;display:grid}.retention-legend-item{appearance:none;width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;grid-template-columns:10px max-content 1fr;align-items:start;gap:6px;padding:5px 6px;font-size:12px;line-height:1.45;transition:opacity .16s,background-color .16s;display:grid}.retention-legend-item:hover{background:#176f6512}.retention-legend-item:focus-visible{outline-offset:2px;outline:2px solid #176f65}.retention-legend-item.is-hidden{opacity:.42}.retention-legend-item.is-hidden .ant-typography{text-decoration:line-through}.population-legend-item{appearance:none;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:flex-start;gap:6px;padding:4px 6px;transition:opacity .16s,background-color .16s;display:inline-flex}.population-legend-item:hover{background:#176f6512}.population-legend-item:focus-visible{outline-offset:2px;outline:2px solid #176f65}.population-legend-item.is-hidden{opacity:.42}.population-legend-item.is-hidden .ant-typography{text-decoration:line-through}.legend-swatch{border-radius:3px;width:10px;height:10px;margin-top:4px}.footer-note{text-align:center;margin-bottom:0!important}@media (width<=1180px){.header-content{grid-template-columns:minmax(0,1fr) max-content;gap:12px 20px}.header-sync-status{border-top:1px solid #e4ecea;border-left:0;grid-area:2/1/auto/-1;padding:10px 0 0}}@media (width<=680px){.header-subtitle,.app-header .ant-btn span:not(.ant-btn-icon){display:none}.header-sync-status{grid-template-columns:repeat(2,minmax(0,1fr))}.global-filters{grid-template-columns:1fr}.filter-item-time-range>.ant-flex,.filter-item-time-range .ant-picker{width:100%}.retention-legend-item{grid-template-columns:10px 1fr}.retention-legend-item .ant-typography:last-child{grid-column:2}}
