.store-analytics .page-header{padding:20px 0 16px;border-bottom:1px solid #f0f0f0;margin-bottom:24px}.store-analytics .page-header-content{display:flex;flex-direction:column;gap:4px}.store-analytics .page-title{margin:0;font-size:20px;font-weight:700;color:#111827;display:flex;align-items:center;gap:8px;font-family:Inter,system-ui,sans-serif}.store-analytics .page-subtitle{margin:0;font-size:13px;color:#6b7280;font-family:Inter,system-ui,sans-serif;display:flex;align-items:center;gap:6px;flex-wrap:nowrap}.store-analytics .section-icon{font-size:20px}.analytics-kpi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;margin-bottom:28px}.analytics-kpi-card{display:flex;flex-direction:column;gap:4px;padding:18px 20px;border-radius:12px;background:#fff;border:1.5px solid #e5e7eb;box-shadow:0 1px 4px #0000000d}.analytics-kpi-primary{border-left:4px solid var(--color-primary, #6366f1)}.analytics-kpi-success{border-left:4px solid #22c55e}.analytics-kpi-warning{border-left:4px solid #f59e0b}.analytics-kpi-info{border-left:4px solid #38bdf8}.analytics-kpi-neutral{border-left:4px solid #d1d5db}.analytics-kpi-icon{font-size:22px;line-height:1;margin-bottom:4px}.analytics-kpi-value{font-size:24px;font-weight:700;color:#111827;line-height:1.1;font-family:Inter,system-ui,sans-serif}.analytics-kpi-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#6b7280;font-family:Inter,system-ui,sans-serif}.analytics-kpi-sub{font-size:12px;color:#9ca3af;margin-top:2px;font-family:Inter,system-ui,sans-serif}.analytics-kpi-error{grid-column:1 / -1;padding:14px 18px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#b91c1c;font-size:13px;font-family:Inter,system-ui,sans-serif}.analytics-chart-section{background:#fff;border:1.5px solid #e5e7eb;border-radius:12px;padding:20px;margin-bottom:20px;box-shadow:0 1px 4px #0000000a}.analytics-section-header{margin-bottom:14px}.analytics-section-title{margin:0 0 2px;font-size:14px;font-weight:600;color:#111827;font-family:Inter,system-ui,sans-serif}.analytics-section-sub{margin:0;font-size:12px;color:#9ca3af;font-family:Inter,system-ui,sans-serif}.analytics-chart-area{min-height:140px}.analytics-chart-placeholder{display:flex;align-items:center;justify-content:center;gap:10px;min-height:140px;color:#9ca3af;font-size:13px;font-family:Inter,system-ui,sans-serif}.analytics-chart-error{color:#ef4444}@keyframes analytics-spin{to{transform:rotate(360deg)}}.analytics-spinner{width:18px;height:18px;border:2px solid #e5e7eb;border-top-color:var(--color-primary, #6366f1);border-radius:50%;animation:analytics-spin .7s linear infinite;flex-shrink:0}.analytics-two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.analytics-two-col>*{min-width:0}@media(max-width:768px){.analytics-two-col{grid-template-columns:1fr}.analytics-kpi-grid{grid-template-columns:1fr 1fr}}.analytics-funnel{display:flex;flex-direction:column;gap:4px;padding:8px 0}.analytics-funnel-row{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:8px;background:#f9fafb}.analytics-funnel-earned{background:#eff6ff}.analytics-funnel-redeemed{background:#f0fdf4}.analytics-funnel-expired{background:#fffbeb}.analytics-funnel-label{flex:1;font-size:13px;font-weight:500;color:#374151;font-family:Inter,system-ui,sans-serif}.analytics-funnel-value{font-size:18px;font-weight:700;color:#111827;font-family:Inter,system-ui,sans-serif;min-width:60px;text-align:right}.analytics-funnel-rate{font-size:12px;font-weight:600;padding:2px 8px;border-radius:999px;font-family:Inter,system-ui,sans-serif}.analytics-rate-good{background:#dcfce7;color:#15803d}.analytics-rate-ok{background:#e5e7eb;color:#374151}.analytics-rate-warn{background:#fef3c7;color:#92400e}.analytics-funnel-arrow{text-align:center;color:#d1d5db;font-size:16px;line-height:1}.analytics-table-wrap{overflow-x:auto}.analytics-table{width:100%;min-width:360px;border-collapse:collapse;font-size:13px;font-family:Inter,system-ui,sans-serif}.analytics-table thead tr{border-bottom:2px solid #f3f4f6}.analytics-table th{padding:8px 10px;text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#6b7280}.analytics-table td{padding:10px;border-bottom:1px solid #f9fafb;vertical-align:middle;color:#111827}.analytics-table tbody tr:last-child td{border-bottom:none}.analytics-table tbody tr:hover td{background:#fafafa}.analytics-col-rank{width:32px;color:#9ca3af;font-weight:600}.analytics-col-right{text-align:right!important}.analytics-type-badge{display:inline-block;padding:2px 8px;background:#f3f4f6;color:#4b5563;border-radius:999px;font-size:11px;font-weight:500}.analytics-empty{padding:32px;text-align:center;color:#9ca3af;font-size:13px;font-family:Inter,system-ui,sans-serif}.analytics-period-picker{flex:0 0 auto;width:auto;min-width:140px;max-width:180px}.analytics-period-picker .custom-dropdown-trigger{font-size:13px;padding:4px 8px;min-height:28px;white-space:nowrap}.analytics-period-picker .custom-dropdown-menu{min-width:160px}.analytics-plan-badge{display:inline-block;margin-left:8px;padding:1px 7px;border-radius:999px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;vertical-align:middle}.analytics-plan-basic{background:#f3f4f6;color:#6b7280}.analytics-plan-pro{background:#ede9fe;color:#7c3aed}.analytics-plan-enterprise{background:#fef3c7;color:#92400e}.analytics-section-divider{display:flex;align-items:center;gap:12px;margin:32px 0 20px}.analytics-section-divider:before,.analytics-section-divider:after{content:"";flex:1;height:1px;background:#e5e7eb}.analytics-section-divider-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#7c3aed;white-space:nowrap}.analytics-upsell{display:flex;align-items:center;gap:16px;margin:32px 0 8px;padding:20px 24px;background:linear-gradient(135deg,#faf5ff,#f0fdf4);border:1px solid #d8b4fe;border-radius:12px;font-family:Inter,system-ui,sans-serif}.analytics-upsell-icon{font-size:28px;flex-shrink:0}.analytics-upsell-content{flex:1;min-width:0}.analytics-upsell-title{margin:0 0 4px;font-size:14px;font-weight:700;color:#5b21b6}.analytics-upsell-sub{margin:0;font-size:13px;color:#7c3aed;line-height:1.5}.analytics-upsell-btn{flex-shrink:0;padding:8px 18px;background:#7c3aed;color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s}.analytics-upsell-btn:hover{background:#6d28d9}.analytics-lifecycle-list{display:flex;flex-direction:column;gap:10px;padding:8px 0}.analytics-lifecycle-row{display:grid;grid-template-columns:100px 60px 1fr 44px;align-items:center;gap:10px;padding:10px 12px;border-left:4px solid #d1d5db;border-radius:0 8px 8px 0;background:#fafafa;font-family:Inter,system-ui,sans-serif;font-size:13px}.analytics-lifecycle-label{font-weight:600;color:#111827}.analytics-lifecycle-count{text-align:right;font-weight:600;color:#374151}.analytics-lifecycle-bar-wrap{height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden}.analytics-lifecycle-bar{height:100%;border-radius:4px;transition:width .4s ease}.analytics-lifecycle-pct{text-align:right;font-size:11px;color:#6b7280;font-weight:500}.analytics-heatmap-wrap{overflow-x:auto}.analytics-heatmap{display:flex;flex-direction:column;gap:2px;min-width:600px;font-family:Inter,system-ui,sans-serif}.analytics-heatmap-row{display:flex;align-items:center;gap:2px}.analytics-heatmap-header{margin-bottom:2px}.analytics-heatmap-day-label{width:32px;min-width:32px;font-size:11px;font-weight:600;color:#6b7280;text-align:right;padding-right:6px}.analytics-heatmap-hour-label{flex:1;font-size:10px;color:#9ca3af;text-align:center}.analytics-heatmap-cell{flex:1;height:16px;border-radius:2px;background:#f3f4f6;cursor:default;transition:opacity .1s}.analytics-heatmap-cell:hover{opacity:.7}.analytics-heatmap-legend{display:flex;align-items:center;gap:4px;margin-top:10px;font-size:11px;color:#9ca3af;font-family:Inter,system-ui,sans-serif}.analytics-heatmap-legend-swatch{display:inline-block;width:14px;height:14px;border-radius:2px}.analytics-id-cell{font-family:JetBrains Mono,Fira Mono,monospace;font-size:11px;color:#4b5563;background:#f9fafb;padding:1px 5px;border-radius:4px}
