.analytics-metrics{grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem;display:grid}.analytics-metric-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.75rem;transition:all .2s}.analytics-metric-card:hover{border-color:var(--color-primary)}.analytics-metric-header{align-items:center;gap:.375rem;margin-bottom:.5rem;display:flex}.analytics-metric-icon{color:#3b82f6;border-radius:var(--radius-sm);width:20px;height:20px;font-size:var(--text-xs);background:#3b82f61a;flex-shrink:0;justify-content:center;align-items:center;display:flex}.analytics-metric-title{font-size:var(--text-sm);color:var(--color-text-primary);margin:0;font-weight:600;line-height:1.2}.analytics-metric-period{font-size:var(--text-xs);color:var(--color-text-secondary);font-weight:500}.analytics-metric-value{font-size:var(--text-xl);color:var(--color-text-primary);font-weight:600;line-height:1}.analytics-metric-date{color:var(--color-primary)}.analytics-metric-percentage{margin-bottom:.5rem;display:block}.success-bar{background:var(--color-border);border-radius:3px;width:100%;height:6px;overflow:hidden}.success-progress{background:var(--color-success);border-radius:3px;height:100%;transition:width .3s}.analytics-charts{grid-template-columns:1fr;gap:1.5rem;margin-bottom:1.5rem;display:grid}.chart-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.chart-header{border-bottom:1px solid var(--color-border);padding:.875rem 1rem .625rem}.chart-header-top{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.chart-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.period-select{font-size:var(--text-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text-primary);cursor:pointer;padding:.375rem .625rem}.period-select:focus{border-color:var(--color-primary);outline:none}.export-btn{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);width:28px;height:28px;color:var(--color-text-secondary);cursor:pointer;justify-content:center;align-items:center;padding:0;transition:all .2s;display:flex}.export-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.export-btn i{font-size:var(--text-sm)}.chart-title{font-size:var(--text-md);color:var(--color-text-primary);margin:0 0 .25rem;font-weight:600}.chart-period{color:var(--color-text-secondary);font-weight:400}.chart-description{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;line-height:1.4}.chart-content{padding:1rem}.chart-card-white,.chart-card-white .chart-header{background:var(--color-surface)}.chart-card-white .chart-content{background:#fff}[data-theme=dark] .chart-card-white .chart-content{background:var(--color-surface)}.chart-skeleton{justify-content:center;align-items:center;height:200px;display:flex}.top-apis-card.dashboard-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.top-apis-card .card-header{background:var(--color-surface)}.top-apis-card .card-content{background:#fff}[data-theme=dark] .top-apis-card .card-content{background:var(--color-surface)}.top-apis-card .suggestion-title{font-size:var(--text-sm)}.top-apis-card .suggestion-reason{font-size:var(--text-xs)}.chart-container{height:250px;position:relative}#engagementChart{width:100%!important;height:100%!important}.api-usage-list{flex-direction:column;gap:1rem;display:flex}.api-usage-item{justify-content:space-between;align-items:center;gap:1rem;display:flex}.api-usage-item .api-info{flex:1;min-width:0}.api-usage-item .api-name{color:var(--color-text-primary);margin-bottom:.125rem}.api-usage-item .api-calls{color:var(--color-text-secondary)}.usage-bar{background:var(--color-border);border-radius:3px;flex:1;max-width:120px;height:6px;overflow:hidden}.usage-progress{background:var(--color-primary);border-radius:3px;height:100%;transition:width .3s}[data-theme=dark] .analytics-metric-card,[data-theme=dark] .chart-card{background:var(--color-surface);border-color:var(--color-border)}[data-theme=dark] .chart-card:hover,[data-theme=dark] .analytics-metric-card:hover{box-shadow:0 4px 12px #0000004d}@media (max-width:1024px){.analytics-charts{grid-template-columns:1fr;gap:1.5rem}.analytics-metrics{grid-template-columns:repeat(2,1fr);gap:1rem}}@media (max-width:850px){.analytics-metrics{grid-template-columns:repeat(2,1fr);gap:.75rem}.analytics-metric-card{padding:1rem}.analytics-metric-period{display:block}.chart-header{padding:1.25rem 1.25rem .75rem}.chart-content{padding:1.25rem}.chart-container{height:250px}.chart-bars{gap:1px}.api-usage-item{flex-direction:column;align-items:stretch;gap:.5rem}.usage-bar{max-width:none;height:8px}}@media (max-width:1023px){.hide-below-1024{display:none!important}}@media (max-width:480px){.analytics-metric-header{gap:.5rem}.analytics-metric-icon{width:36px;height:36px;font-size:var(--text-lg)}}.call-history-card{margin-bottom:1.5rem}.call-history-card .card-content{padding:0}.call-history-header-extra{border-bottom:1px solid var(--color-border);flex-wrap:wrap;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.call-history-header-extra .beta-pill{margin-left:0}.call-history-description{font-size:var(--text-sm);color:var(--color-text-secondary);flex:1;margin:0}.call-history-body{min-height:280px;padding:0}.call-history-loading-shimmer{min-height:280px}.call-history-section{margin-bottom:1.5rem}.load-history-btn,.refresh-btn{font-size:var(--text-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text-primary);cursor:pointer;align-items:center;gap:.5rem;padding:.5rem 1rem;font-weight:500;transition:all .2s;display:flex}.load-history-btn:hover,.refresh-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.load-history-btn:disabled,.refresh-btn:disabled{opacity:.6;cursor:not-allowed}.refresh-btn{justify-content:center;width:32px;height:32px;padding:.5rem}.call-history-content{padding:1rem}.call-history-placeholder,.call-history-empty{text-align:center;color:var(--color-text-secondary);flex-direction:column;justify-content:center;align-items:center;padding:2rem 1rem;display:flex}.call-history-placeholder i,.call-history-empty i{opacity:.4;margin-bottom:.75rem;font-size:1.5rem}.call-history-placeholder p,.call-history-empty p{font-size:var(--text-sm);margin:0 0 .25rem;font-weight:500}.call-history-empty span{font-size:var(--text-xs);opacity:.7}.call-history-note{font-size:var(--text-xs);color:var(--color-text-tertiary);opacity:.7;margin-top:.5rem;display:block}.load-history-btn-locked{background:var(--color-primary)!important;color:#fff!important;border-color:var(--color-primary)!important;opacity:1!important}.load-history-btn-locked:hover{background:var(--color-primary-hover)!important;border-color:var(--color-primary-hover)!important}.call-history-loading-notice{font-size:var(--text-sm);color:var(--color-text-secondary);background:var(--color-background);border-radius:var(--radius-sm);justify-content:center;align-items:center;gap:.5rem;margin-bottom:.5rem;padding:.75rem 1rem;display:flex}.call-history-loading-notice i{color:var(--color-primary);opacity:.7}.beta-pill{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary);border-radius:var(--radius-full);vertical-align:middle;background:#3b82f61a;align-items:center;margin-left:.5rem;padding:.125rem .5rem;font-weight:600;display:inline-flex}.call-history-upgrade-prompt{border:1px dashed var(--color-border);border-radius:var(--radius-sm);background:linear-gradient(135deg,#3b82f60d 0%,#8b5cf60d 100%);margin-top:.5rem;padding:.75rem 1rem}.upgrade-prompt-content{font-size:var(--text-sm);color:var(--color-text-secondary);justify-content:center;align-items:center;gap:.5rem;display:flex}.upgrade-prompt-content i{color:var(--color-primary);opacity:.7}.upgrade-link{font-size:var(--text-sm);color:var(--color-primary);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;margin-left:.25rem;padding:0;font-weight:500;text-decoration:underline}.upgrade-link:hover{color:var(--color-primary-hover)}.call-history-load-more{border-top:1px solid var(--color-border);justify-content:center;padding:1rem;display:flex}.load-more-btn{font-size:var(--text-sm);color:var(--color-text-secondary);background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:.5rem;padding:.5rem 1.25rem;font-weight:500;transition:all .2s;display:flex}.load-more-btn:hover:not(:disabled){color:var(--color-primary);border-color:var(--color-primary);background:#3b82f60d}.load-more-btn:disabled{opacity:.6;cursor:not-allowed}.load-more-btn i{font-size:var(--text-xs)}.call-history-table-wrapper{overflow-x:auto}.call-history-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.call-history-table th,.call-history-table td{text-align:left;border-bottom:1px solid var(--color-border);padding:.75rem .5rem}.call-history-table th{color:var(--color-text-secondary);font-weight:600;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;background:var(--color-background)}.call-history-table tbody tr:hover{background:var(--color-background)}.call-history-table tbody tr:last-child td{border-bottom:none}.call-time{white-space:nowrap;color:var(--color-text-secondary)}.call-api{color:var(--color-text-primary);font-weight:500}.call-latency,.call-tokens{color:var(--color-text-secondary);text-align:center}.method-badge{font-size:var(--text-xs);border-radius:var(--radius-sm);text-transform:uppercase;padding:.125rem .5rem;font-weight:600;display:inline-block}.method-get{color:#22c55e;background:#22c55e1a}.method-post{color:#3b82f6;background:#3b82f61a}.method-put{color:#f97316;background:#f973161a}.method-delete{color:#ef4444;background:#ef44441a}.method-patch{color:#a855f7;background:#a855f71a}.status-badge{font-size:var(--text-xs);border-radius:var(--radius-sm);padding:.125rem .5rem;font-weight:600;display:inline-block}.status-success{color:#22c55e;background:#22c55e1a}.status-warning{color:#f97316;background:#f973161a}.status-error{color:#ef4444;background:#ef44441a}@media (max-width:768px){.call-history-table th:nth-child(3),.call-history-table td:nth-child(3),.call-history-table th:nth-child(5),.call-history-table td:nth-child(5){display:none}.call-history-table th,.call-history-table td{padding:.625rem .375rem}}@media (max-width:480px){.call-history-table th:nth-child(6),.call-history-table td:nth-child(6){display:none}.load-history-btn{justify-content:center;width:100%}.chart-header-top{flex-direction:column;gap:.75rem}}.analytics-tabs{border-bottom:1px solid var(--color-border);gap:.5rem;margin-bottom:1.5rem;padding-bottom:0;display:flex}.analytics-tab{color:var(--color-text-secondary);font-size:var(--text-sm);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:.5rem;margin-bottom:-1px;padding:.75rem 1rem;font-family:inherit;font-weight:500;transition:all .2s;display:inline-flex}.analytics-tab:hover{color:var(--color-text-primary)}.analytics-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.analytics-tab i{font-size:.875rem}.analytics-tab .tab-badge{color:#fff;text-transform:uppercase;border-radius:var(--radius-sm);letter-spacing:.025em;background:linear-gradient(135deg,#6366f1,#8b5cf6);align-items:center;padding:.125rem .375rem;font-size:.625rem;font-weight:600;display:inline-flex}.audit-history-section{animation:.2s fadeIn}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.audit-history-card{margin-bottom:1.5rem}.audit-history-header-extra{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:1rem;padding:0 1rem 1rem;display:flex}.audit-history-header-left{flex-direction:column;gap:.375rem;display:flex}.audit-history-description{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0}.audit-retention-badge{font-size:var(--text-xs);color:var(--color-text-secondary);align-items:center;gap:.375rem;display:inline-flex}.audit-retention-badge i{font-size:.625rem}.upgrade-retention-link{color:var(--color-primary);font-size:var(--text-xs);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;margin-left:.25rem;padding:0;font-family:inherit;text-decoration:underline}.upgrade-retention-link:hover{color:var(--color-primary-dark)}.audit-history-actions{align-items:center;gap:.5rem;display:flex}.audit-export-btn{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:var(--text-xs);cursor:pointer;align-items:center;gap:.375rem;padding:.375rem .75rem;font-family:inherit;transition:all .2s;display:inline-flex}.audit-export-btn:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.audit-export-btn:disabled{opacity:.5;cursor:not-allowed}.viewer-badge{border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:var(--text-xs);background:#6b72801a;align-items:center;gap:.375rem;padding:.25rem .625rem;font-weight:500;display:inline-flex}.viewer-badge i{font-size:.625rem}.audit-history-upgrade{text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding:2.5rem 1.5rem;display:flex}.audit-upgrade-icon{color:#6366f1;background:linear-gradient(135deg,#6366f11a,#8b5cf60d);border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:.25rem;font-size:1.5rem;display:flex}.audit-history-upgrade h3{font-size:var(--text-lg);color:var(--color-text-primary);margin:0;font-weight:600}.audit-history-upgrade>p{font-size:var(--text-sm);color:var(--color-text-secondary);max-width:360px;margin:0}.audit-upgrade-features{text-align:left;flex-direction:column;gap:.5rem;margin:.75rem 0;padding:0;list-style:none;display:flex}.audit-upgrade-features li{font-size:var(--text-sm);color:var(--color-text-secondary);align-items:center;gap:.5rem;display:flex}.audit-upgrade-features li i{color:#10b981;font-size:.75rem}.audit-upgrade-btn{color:#fff;border-radius:var(--radius-md);font-size:var(--text-sm);cursor:pointer;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;align-items:center;gap:.5rem;margin-top:.5rem;padding:.625rem 1.25rem;font-family:inherit;font-weight:500;transition:all .2s;display:inline-flex}.audit-upgrade-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.audit-upgrade-note{font-size:var(--text-xs);color:var(--color-text-secondary);margin-top:.25rem}.audit-history-controls{align-items:center;gap:.5rem;display:flex}.audit-filter-select{font-size:var(--text-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text-primary);cursor:pointer;min-width:120px;padding:.375rem .625rem;font-family:inherit}.audit-filter-select:focus{border-color:var(--color-primary);outline:none}.audit-history-body{min-height:300px;padding:0}.audit-history-loading{min-height:300px}.audit-table-wrapper{overflow-x:auto}.audit-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.audit-table th,.audit-table td{text-align:left;border-bottom:1px solid var(--color-border);padding:.75rem}.audit-table th{color:var(--color-text-secondary);font-weight:600;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;background:var(--color-background)}.audit-table tbody tr:hover{background:var(--color-background)}.audit-table tbody tr:last-child td{border-bottom:none}.audit-time{white-space:nowrap;color:var(--color-text-secondary);font-size:var(--text-xs)}.audit-event-badge{font-size:var(--text-xs);text-transform:capitalize;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--event-color)10%,transparent);color:var(--event-color);align-items:center;gap:.375rem;padding:.125rem .5rem;font-weight:500;display:inline-flex}.audit-event-badge i{font-size:.625rem}.action-badge{font-size:var(--text-xs);text-transform:capitalize;border-radius:var(--radius-sm);padding:.125rem .5rem;font-weight:600;display:inline-block}.action-create{color:#22c55e;background:#22c55e1a}.action-delete{color:#ef4444;background:#ef44441a}.action-update{color:#3b82f6;background:#3b82f61a}.action-rotate{color:#f97316;background:#f973161a}.action-default{color:#6b7280;background:#6b72801a}.audit-description{color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;max-width:300px;overflow:hidden}.audit-actor{color:var(--color-text-secondary);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;max-width:150px;overflow:hidden}.audit-ip{color:var(--color-text-tertiary);font-size:var(--text-xs);font-family:monospace}.audit-history-empty{text-align:center;color:var(--color-text-secondary);flex-direction:column;justify-content:center;align-items:center;padding:3rem 1.5rem;display:flex}.audit-history-empty i{opacity:.4;margin-bottom:1rem;font-size:2.5rem}.audit-history-empty p{font-size:var(--text-md);color:var(--color-text-primary);margin:0 0 .5rem;font-weight:600}.audit-history-empty span{font-size:var(--text-sm);max-width:400px;line-height:1.5}@media (max-width:768px){.audit-history-header-extra{flex-direction:column;align-items:flex-start;gap:.75rem}.audit-history-controls{justify-content:space-between;width:100%}.audit-filter-select{flex:1}.audit-table th:nth-child(6),.audit-table td:nth-child(6){display:none}}@media (max-width:600px){.analytics-tabs{-webkit-overflow-scrolling:touch;overflow-x:auto}.analytics-tab{white-space:nowrap;padding:.625rem .75rem}.audit-table th:nth-child(5),.audit-table td:nth-child(5){display:none}.audit-table th,.audit-table td{padding:.625rem .5rem}.audit-description{max-width:150px}}@media (max-width:480px){.audit-table th:nth-child(2),.audit-table td:nth-child(2){display:none}}
